Add yet-another-react-lightbox package and update .gitignore to exclude node_modules
This commit is contained in:
120
frontend/node_modules/classnames/HISTORY.md
generated
vendored
120
frontend/node_modules/classnames/HISTORY.md
generated
vendored
@@ -1,120 +0,0 @@
|
||||
# Changelog
|
||||
|
||||
## v2.5.1 / 2023-12-29
|
||||
|
||||
- Remove `workspaces` field from package ([#350](https://github.com/JedWatson/classnames/pull/350))
|
||||
|
||||
## v2.5.0 / 2023-12-27
|
||||
|
||||
- Restore ability to pass a TypeScript `interface` ([#341](https://github.com/JedWatson/classnames/pull/341))
|
||||
- Add `exports` field to package ([#342](https://github.com/JedWatson/classnames/pull/342))
|
||||
|
||||
## v2.4.0 / 2023-12-26
|
||||
|
||||
- Use string concatenation to increase performance thanks [Jon Koops](https://github.com/jonkoops) ([#336](https://github.com/JedWatson/classnames/pull/336))
|
||||
|
||||
## v2.3.3 / 2023-12-21
|
||||
|
||||
- Fix default export, thanks [Remco Haszing](https://github.com/remcohaszing) ([#301](https://github.com/JedWatson/classnames/pull/301))
|
||||
- Fix types for read-only arrays, thanks [Ben Thompson](https://github.com/BenGearset) ([#307](https://github.com/JedWatson/classnames/pull/307))
|
||||
- Replace README examples with functional-style components, thanks [JoeDGit](https://github.com/JoeDGit) ([#303](https://github.com/JedWatson/classnames/pull/303))
|
||||
|
||||
## v2.3.2 / 2022-09-13
|
||||
|
||||
- Fix TypeScript types when using require, thanks [Mark Dalgleish](https://github.com/markdalgleish) ([#276](https://github.com/JedWatson/classnames/pull/276))
|
||||
- Fix toString as `[Object object]` in a vm, thanks [Remco Haszing](https://github.com/remcohaszing) ([#281](https://github.com/JedWatson/classnames/pull/281))
|
||||
|
||||
## v2.3.1 / 2021-04-03
|
||||
|
||||
- Fix bind/dedupe TypeScript types exports
|
||||
- Fix mapping Value types, thanks [Remco Haszing](https://github.com/remcohaszing)
|
||||
- Removed non-existent named exports from types, thanks [Remco Haszing](https://github.com/remcohaszing)
|
||||
|
||||
## v2.3.0 / 2021-04-01
|
||||
|
||||
- Added TypeScript types
|
||||
- Added consistent support for custom `.toString()` methods on arguments, thanks [Stanislav Titenko](https://github.com/resetko)
|
||||
|
||||
## v2.2.6 / 2018-06-08
|
||||
|
||||
- Fixed compatibility issue with usage in an es module environment
|
||||
|
||||
## v2.2.5 / 2016-05-02
|
||||
|
||||
- Improved performance of `dedupe` variant even further, thanks [Andres Suarez](https://github.com/zertosh)
|
||||
|
||||
## v2.2.4 / 2016-04-25
|
||||
|
||||
- Improved performance of `dedupe` variant by about 2x, thanks [Bartosz Gościński](https://github.com/bgoscinski)
|
||||
|
||||
## v2.2.3 / 2016-01-05
|
||||
|
||||
- Updated `bind` variant to use `[].join(' ')` as per the main script in 2.2.2
|
||||
|
||||
## v2.2.2 / 2016-01-04
|
||||
|
||||
- Switched from string concatenation to `[].join(' ')` for a slight performance gain in the main function.
|
||||
|
||||
## v2.2.1 / 2015-11-26
|
||||
|
||||
- Add deps parameter to the AMD module, fixes an issue using the Dojo loader, thanks [Chris Jordan](https://github.com/flipperkid)
|
||||
|
||||
## v2.2.0 / 2015-10-18
|
||||
|
||||
- added a new `bind` variant for use with [css-modules](https://github.com/css-modules/css-modules) and similar abstractions, thanks to [Kirill Yakovenko](https://github.com/blia)
|
||||
|
||||
## v2.1.5 / 2015-09-30
|
||||
|
||||
- reverted a new usage of `Object.keys` in `dedupe.js` that slipped through in the last release
|
||||
|
||||
## v2.1.4 / 2015-09-30
|
||||
|
||||
- new case added to benchmarks
|
||||
- safer `hasOwnProperty` check
|
||||
- AMD module is now named, so you can do the following:
|
||||
|
||||
```
|
||||
define(["classnames"], function (classNames) {
|
||||
var style = classNames("foo", "bar");
|
||||
// ...
|
||||
});
|
||||
```
|
||||
|
||||
## v2.1.3 / 2015-07-02
|
||||
|
||||
- updated UMD wrapper to support AMD and CommonJS on the same pacge
|
||||
|
||||
## v2.1.2 / 2015-05-28
|
||||
|
||||
- added a proper UMD wrapper
|
||||
|
||||
## v2.1.1 / 2015-05-06
|
||||
|
||||
- minor performance improvement thanks to type caching
|
||||
- improved benchmarking and results output
|
||||
|
||||
## v2.1.0 / 2015-05-05
|
||||
|
||||
- added alternate `dedupe` version of classNames, which is slower (10x) but ensures that if a class is added then overridden by a falsy value in a subsequent argument, it is excluded from the result.
|
||||
|
||||
## v2.0.0 / 2015-05-03
|
||||
|
||||
- performance improvement; switched to `Array.isArray` for type detection, which is much faster in modern browsers. A polyfill is now required for IE8 support, see the Readme for details.
|
||||
|
||||
## v1.2.2 / 2015-04-28
|
||||
|
||||
- license comment updates to simiplify certain build scenarios
|
||||
|
||||
## v1.2.1 / 2015-04-22
|
||||
|
||||
- added safe exporting for requireJS usage
|
||||
- clarified Bower usage and instructions
|
||||
|
||||
## v1.2.0 / 2015-03-17
|
||||
|
||||
- added comprehensive support for array arguments, including nested arrays
|
||||
- simplified code slightly
|
||||
|
||||
## Previous
|
||||
|
||||
Please see the git history for the details of previous versions.
|
||||
21
frontend/node_modules/classnames/LICENSE
generated
vendored
21
frontend/node_modules/classnames/LICENSE
generated
vendored
@@ -1,21 +0,0 @@
|
||||
The MIT License (MIT)
|
||||
|
||||
Copyright (c) 2018 Jed Watson
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
219
frontend/node_modules/classnames/README.md
generated
vendored
219
frontend/node_modules/classnames/README.md
generated
vendored
@@ -1,219 +0,0 @@
|
||||
# Classnames
|
||||
|
||||
> A simple JavaScript utility for conditionally joining classNames together.
|
||||
|
||||
<p>
|
||||
<a aria-label="NPM version" href="https://www.npmjs.com/package/classnames">
|
||||
<img alt="" src="https://img.shields.io/npm/v/classnames.svg?style=for-the-badge&labelColor=0869B8">
|
||||
</a>
|
||||
<a aria-label="License" href="#">
|
||||
<img alt="" src="https://img.shields.io/npm/l/classnames.svg?style=for-the-badge&labelColor=579805">
|
||||
</a>
|
||||
<a aria-label="Thinkmill Logo" href="https://www.thinkmill.com.au/open-source?utm_campaign=github-classnames">
|
||||
<img src="https://img.shields.io/badge/Sponsored%20BY%20Thinkmill-ed0000.svg?style=for-the-badge&logo=data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTg2IiBoZWlnaHQ9IjU4NiIgdmlld0JveD0iMCAwIDU4NiA1ODYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMF8xOTk2XzQwNikiPgo8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTU4NiAyOTNDNTg2IDQ1NC44MTkgNDU0LjgxOSA1ODYgMjkzIDU4NkMxMzEuMTgxIDU4NiAwIDQ1NC44MTkgMCAyOTNDMCAxMzEuMTgxIDEzMS4xODEgMCAyOTMgMEM0NTQuODE5IDAgNTg2IDEzMS4xODEgNTg2IDI5M1pNMjA1Ljc3NiAzNTguOTQ0QzE5MS4zNzYgMzU4Ljk0NCAxODUuOTA0IDM1Mi4zMiAxODUuOTA0IDMzNS45MDRWMjYyLjc1MkgyMTQuNDE2VjIzNy42OTZIMTg1LjkwNFYyMDEuMTJIMTUzLjA3MlYyMzcuNjk2SDEyOC41OTJWMjYyLjc1MkgxNTMuMDcyVjM0MC44QzE1My4wNzIgMzcyLjc2OCAxNjYuNjA4IDM4NS43MjggMTk3LjQyNCAzODUuNzI4QzIwMy40NzIgMzg1LjcyOCAyMTAuOTYgMzg0LjU3NiAyMTUuODU2IDM4My4xMzZWMzU3LjUwNEMyMTMuNTUyIDM1OC4zNjggMjA5LjUyIDM1OC45NDQgMjA1Ljc3NiAzNTguOTQ0Wk00MDcuMzc2IDIzNC4yNEMzODUuMiAyMzQuMjQgMzcxLjA4OCAyNDQuMDMyIDM2MC40MzIgMjYwLjczNkMzNTIuOTQ0IDI0My40NTYgMzM3LjM5MiAyMzQuMjQgMzE3LjIzMiAyMzQuMjRDMjk5Ljk1MiAyMzQuMjQgMjg2Ljk5MiAyNDEuMTUyIDI3Ni42MjQgMjU1LjI2NEgyNzYuMDQ4VjIzNy42OTZIMjQ0LjY1NlYzODRIMjc3LjQ4OFYzMDUuNjY0QzI3Ny40ODggMjc3LjQ0IDI4OC43MiAyNjAuNzM2IDMwOC4zMDQgMjYwLjczNkMzMjUuMjk2IDI2MC43MzYgMzM0LjUxMiAyNzIuODMyIDMzNC41MTIgMjkzLjU2OFYzODRIMzY3LjM0NFYzMDUuMDg4QzM2Ny4zNDQgMjc3LjE1MiAzNzguODY0IDI2MC43MzYgMzk4LjE2IDI2MC43MzZDNDE0LjU3NiAyNjAuNzM2IDQyNC42NTYgMjcxLjEwNCA0MjQuNjU2IDI5Ny4wMjRWMzg0SDQ1Ny40ODhWMjkzLjg1NkM0NTcuNDg4IDI1NC40IDQzOC40OCAyMzQuMjQgNDA3LjM3NiAyMzQuMjRaIiBmaWxsPSJ3aGl0ZSIvPgo8L2c+CjxkZWZzPgo8Y2xpcFBhdGggaWQ9ImNsaXAwXzE5OTZfNDA2Ij4KPHJlY3Qgd2lkdGg9IjU4NiIgaGVpZ2h0PSI1ODYiIGZpbGw9IndoaXRlIi8+CjwvY2xpcFBhdGg+CjwvZGVmcz4KPC9zdmc+Cg==&labelColor=C60200&locoColor=white&logoWidth=0">
|
||||
</a>
|
||||
|
||||
</p>
|
||||
|
||||
Install from the [npm registry](https://www.npmjs.com/) with your package manager:
|
||||
```bash
|
||||
npm install classnames
|
||||
```
|
||||
|
||||
Use with [Node.js](https://nodejs.org/en/), [Browserify](https://browserify.org/), or [webpack](https://webpack.github.io/):
|
||||
|
||||
```js
|
||||
const classNames = require('classnames');
|
||||
classNames('foo', 'bar'); // => 'foo bar'
|
||||
```
|
||||
|
||||
Alternatively, you can simply include `index.js` on your page with a standalone `<script>` tag and it will export a global `classNames` method, or define the module if you are using RequireJS.
|
||||
|
||||
### Project philosophy
|
||||
|
||||
We take the stability and performance of this package seriously, because it is run millions of times a day in browsers all around the world. Updates are thoroughly reviewed for performance implications before being released, and we have a comprehensive test suite.
|
||||
|
||||
Classnames follows the [SemVer](https://semver.org/) standard for versioning.
|
||||
|
||||
There is also a [Changelog](https://github.com/JedWatson/classnames/blob/master/HISTORY.md).
|
||||
|
||||
## Usage
|
||||
|
||||
The `classNames` function takes any number of arguments which can be a string or object.
|
||||
The argument `'foo'` is short for `{ foo: true }`. If the value associated with a given key is falsy, that key won't be included in the output.
|
||||
|
||||
```js
|
||||
classNames('foo', 'bar'); // => 'foo bar'
|
||||
classNames('foo', { bar: true }); // => 'foo bar'
|
||||
classNames({ 'foo-bar': true }); // => 'foo-bar'
|
||||
classNames({ 'foo-bar': false }); // => ''
|
||||
classNames({ foo: true }, { bar: true }); // => 'foo bar'
|
||||
classNames({ foo: true, bar: true }); // => 'foo bar'
|
||||
|
||||
// lots of arguments of various types
|
||||
classNames('foo', { bar: true, duck: false }, 'baz', { quux: true }); // => 'foo bar baz quux'
|
||||
|
||||
// other falsy values are just ignored
|
||||
classNames(null, false, 'bar', undefined, 0, 1, { baz: null }, ''); // => 'bar 1'
|
||||
```
|
||||
|
||||
Arrays will be recursively flattened as per the rules above:
|
||||
|
||||
```js
|
||||
const arr = ['b', { c: true, d: false }];
|
||||
classNames('a', arr); // => 'a b c'
|
||||
```
|
||||
|
||||
### Dynamic class names with ES2015
|
||||
|
||||
If you're in an environment that supports [computed keys](https://www.ecma-international.org/ecma-262/6.0/#sec-object-initializer) (available in ES2015 and Babel) you can use dynamic class names:
|
||||
|
||||
```js
|
||||
let buttonType = 'primary';
|
||||
classNames({ [`btn-${buttonType}`]: true });
|
||||
```
|
||||
|
||||
### Usage with React.js
|
||||
|
||||
This package is the official replacement for `classSet`, which was originally shipped in the React.js Addons bundle.
|
||||
|
||||
One of its primary use cases is to make dynamic and conditional `className` props simpler to work with (especially more so than conditional string manipulation). So where you may have the following code to generate a `className` prop for a `<button>` in React:
|
||||
|
||||
```js
|
||||
import React, { useState } from 'react';
|
||||
|
||||
export default function Button (props) {
|
||||
const [isPressed, setIsPressed] = useState(false);
|
||||
const [isHovered, setIsHovered] = useState(false);
|
||||
|
||||
let btnClass = 'btn';
|
||||
if (isPressed) btnClass += ' btn-pressed';
|
||||
else if (isHovered) btnClass += ' btn-over';
|
||||
|
||||
return (
|
||||
<button
|
||||
className={btnClass}
|
||||
onMouseDown={() => setIsPressed(true)}
|
||||
onMouseUp={() => setIsPressed(false)}
|
||||
onMouseEnter={() => setIsHovered(true)}
|
||||
onMouseLeave={() => setIsHovered(false)}
|
||||
>
|
||||
{props.label}
|
||||
</button>
|
||||
);
|
||||
}
|
||||
```
|
||||
|
||||
You can express the conditional classes more simply as an object:
|
||||
|
||||
```js
|
||||
import React, { useState } from 'react';
|
||||
import classNames from 'classnames';
|
||||
|
||||
export default function Button (props) {
|
||||
const [isPressed, setIsPressed] = useState(false);
|
||||
const [isHovered, setIsHovered] = useState(false);
|
||||
|
||||
const btnClass = classNames({
|
||||
btn: true,
|
||||
'btn-pressed': isPressed,
|
||||
'btn-over': !isPressed && isHovered,
|
||||
});
|
||||
|
||||
return (
|
||||
<button
|
||||
className={btnClass}
|
||||
onMouseDown={() => setIsPressed(true)}
|
||||
onMouseUp={() => setIsPressed(false)}
|
||||
onMouseEnter={() => setIsHovered(true)}
|
||||
onMouseLeave={() => setIsHovered(false)}
|
||||
>
|
||||
{props.label}
|
||||
</button>
|
||||
);
|
||||
}
|
||||
```
|
||||
|
||||
Because you can mix together object, array and string arguments, supporting optional `className` props is also simpler as only truthy arguments get included in the result:
|
||||
|
||||
```js
|
||||
const btnClass = classNames('btn', this.props.className, {
|
||||
'btn-pressed': isPressed,
|
||||
'btn-over': !isPressed && isHovered,
|
||||
});
|
||||
```
|
||||
|
||||
### Alternate `dedupe` version
|
||||
|
||||
There is an alternate version of `classNames` available which correctly dedupes classes and ensures that falsy classes specified in later arguments are excluded from the result set.
|
||||
|
||||
This version is slower (about 5x) so it is offered as an opt-in.
|
||||
|
||||
To use the dedupe version with Node.js, Browserify, or webpack:
|
||||
|
||||
```js
|
||||
const classNames = require('classnames/dedupe');
|
||||
|
||||
classNames('foo', 'foo', 'bar'); // => 'foo bar'
|
||||
classNames('foo', { foo: false, bar: true }); // => 'bar'
|
||||
```
|
||||
|
||||
For standalone (global / AMD) use, include `dedupe.js` in a `<script>` tag on your page.
|
||||
|
||||
### Alternate `bind` version (for [css-modules](https://github.com/css-modules/css-modules))
|
||||
|
||||
If you are using [css-modules](https://github.com/css-modules/css-modules), or a similar approach to abstract class 'names' and the real `className` values that are actually output to the DOM, you may want to use the `bind` variant.
|
||||
|
||||
_Note that in ES2015 environments, it may be better to use the "dynamic class names" approach documented above._
|
||||
|
||||
```js
|
||||
const classNames = require('classnames/bind');
|
||||
|
||||
const styles = {
|
||||
foo: 'abc',
|
||||
bar: 'def',
|
||||
baz: 'xyz',
|
||||
};
|
||||
|
||||
const cx = classNames.bind(styles);
|
||||
|
||||
const className = cx('foo', ['bar'], { baz: true }); // => 'abc def xyz'
|
||||
```
|
||||
|
||||
Real-world example:
|
||||
|
||||
```js
|
||||
/* components/submit-button.js */
|
||||
import { useState } from 'react';
|
||||
import classNames from 'classnames/bind';
|
||||
import styles from './submit-button.css';
|
||||
|
||||
const cx = classNames.bind(styles);
|
||||
|
||||
export default function SubmitButton ({ store, form }) {
|
||||
const [submissionInProgress, setSubmissionInProgress] = useState(store.submissionInProgress);
|
||||
const [errorOccurred, setErrorOccurred] = useState(store.errorOccurred);
|
||||
const [valid, setValid] = useState(form.valid);
|
||||
|
||||
const text = submissionInProgress ? 'Processing...' : 'Submit';
|
||||
const className = cx({
|
||||
base: true,
|
||||
inProgress: submissionInProgress,
|
||||
error: errorOccurred,
|
||||
disabled: valid,
|
||||
});
|
||||
|
||||
return <button className={className}>{text}</button>;
|
||||
}
|
||||
```
|
||||
|
||||
## Polyfills needed to support older browsers
|
||||
|
||||
#### `classNames >=2.0.0`
|
||||
|
||||
`Array.isArray`: see [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/isArray) for details about unsupported older browsers (e.g. <= IE8) and a simple polyfill.
|
||||
|
||||
## LICENSE [MIT](LICENSE)
|
||||
|
||||
Copyright (c) 2018 Jed Watson.
|
||||
Copyright of the Typescript bindings are respective of each contributor listed in the definition file.
|
||||
17
frontend/node_modules/classnames/bind.d.ts
generated
vendored
17
frontend/node_modules/classnames/bind.d.ts
generated
vendored
@@ -1,17 +0,0 @@
|
||||
import { ArgumentArray } from './index.js';
|
||||
|
||||
declare namespace classNames {
|
||||
type Binding = Record<string, string>;
|
||||
}
|
||||
|
||||
interface ClassNames {
|
||||
(this: classNames.Binding | undefined, ...args: ArgumentArray): string;
|
||||
|
||||
default: ClassNames;
|
||||
}
|
||||
|
||||
declare const classNames: ClassNames;
|
||||
|
||||
export as namespace classNames;
|
||||
|
||||
export = classNames;
|
||||
77
frontend/node_modules/classnames/bind.js
generated
vendored
77
frontend/node_modules/classnames/bind.js
generated
vendored
@@ -1,77 +0,0 @@
|
||||
/*!
|
||||
Copyright (c) 2018 Jed Watson.
|
||||
Licensed under the MIT License (MIT), see
|
||||
http://jedwatson.github.io/classnames
|
||||
*/
|
||||
/* global define */
|
||||
|
||||
(function () {
|
||||
'use strict';
|
||||
|
||||
var hasOwn = {}.hasOwnProperty;
|
||||
|
||||
function classNames () {
|
||||
var classes = '';
|
||||
|
||||
for (var i = 0; i < arguments.length; i++) {
|
||||
var arg = arguments[i];
|
||||
if (arg) {
|
||||
classes = appendClass(classes, parseValue.call(this, arg));
|
||||
}
|
||||
}
|
||||
|
||||
return classes;
|
||||
}
|
||||
|
||||
function parseValue (arg) {
|
||||
if (typeof arg === 'string' || typeof arg === 'number') {
|
||||
return this && this[arg] || arg;
|
||||
}
|
||||
|
||||
if (typeof arg !== 'object') {
|
||||
return '';
|
||||
}
|
||||
|
||||
if (Array.isArray(arg)) {
|
||||
return classNames.apply(this, arg);
|
||||
}
|
||||
|
||||
if (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {
|
||||
return arg.toString();
|
||||
}
|
||||
|
||||
var classes = '';
|
||||
|
||||
for (var key in arg) {
|
||||
if (hasOwn.call(arg, key) && arg[key]) {
|
||||
classes = appendClass(classes, this && this[key] || key);
|
||||
}
|
||||
}
|
||||
|
||||
return classes;
|
||||
}
|
||||
|
||||
function appendClass (value, newClass) {
|
||||
if (!newClass) {
|
||||
return value;
|
||||
}
|
||||
|
||||
if (value) {
|
||||
return value + ' ' + newClass;
|
||||
}
|
||||
|
||||
return value + newClass;
|
||||
}
|
||||
|
||||
if (typeof module !== 'undefined' && module.exports) {
|
||||
classNames.default = classNames;
|
||||
module.exports = classNames;
|
||||
} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {
|
||||
// register as 'classnames', consistent with npm package name
|
||||
define('classnames', [], function () {
|
||||
return classNames;
|
||||
});
|
||||
} else {
|
||||
window.classNames = classNames;
|
||||
}
|
||||
}());
|
||||
5
frontend/node_modules/classnames/dedupe.d.ts
generated
vendored
5
frontend/node_modules/classnames/dedupe.d.ts
generated
vendored
@@ -1,5 +0,0 @@
|
||||
import classNames = require('./index.js');
|
||||
|
||||
export as namespace classNames;
|
||||
|
||||
export = classNames;
|
||||
115
frontend/node_modules/classnames/dedupe.js
generated
vendored
115
frontend/node_modules/classnames/dedupe.js
generated
vendored
@@ -1,115 +0,0 @@
|
||||
/*!
|
||||
Copyright (c) 2018 Jed Watson.
|
||||
Licensed under the MIT License (MIT), see
|
||||
http://jedwatson.github.io/classnames
|
||||
*/
|
||||
/* global define */
|
||||
|
||||
(function () {
|
||||
'use strict';
|
||||
|
||||
var classNames = (function () {
|
||||
// don't inherit from Object so we can skip hasOwnProperty check later
|
||||
// http://stackoverflow.com/questions/15518328/creating-js-object-with-object-createnull#answer-21079232
|
||||
function StorageObject() {}
|
||||
StorageObject.prototype = Object.create(null);
|
||||
|
||||
function _parseArray (resultSet, array) {
|
||||
var length = array.length;
|
||||
|
||||
for (var i = 0; i < length; ++i) {
|
||||
_parse(resultSet, array[i]);
|
||||
}
|
||||
}
|
||||
|
||||
var hasOwn = {}.hasOwnProperty;
|
||||
|
||||
function _parseNumber (resultSet, num) {
|
||||
resultSet[num] = true;
|
||||
}
|
||||
|
||||
function _parseObject (resultSet, object) {
|
||||
if (object.toString !== Object.prototype.toString && !object.toString.toString().includes('[native code]')) {
|
||||
resultSet[object.toString()] = true;
|
||||
return;
|
||||
}
|
||||
|
||||
for (var k in object) {
|
||||
if (hasOwn.call(object, k)) {
|
||||
// set value to false instead of deleting it to avoid changing object structure
|
||||
// https://www.smashingmagazine.com/2012/11/writing-fast-memory-efficient-javascript/#de-referencing-misconceptions
|
||||
resultSet[k] = !!object[k];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
var SPACE = /\s+/;
|
||||
function _parseString (resultSet, str) {
|
||||
var array = str.split(SPACE);
|
||||
var length = array.length;
|
||||
|
||||
for (var i = 0; i < length; ++i) {
|
||||
resultSet[array[i]] = true;
|
||||
}
|
||||
}
|
||||
|
||||
function _parse (resultSet, arg) {
|
||||
if (!arg) return;
|
||||
var argType = typeof arg;
|
||||
|
||||
// 'foo bar'
|
||||
if (argType === 'string') {
|
||||
_parseString(resultSet, arg);
|
||||
|
||||
// ['foo', 'bar', ...]
|
||||
} else if (Array.isArray(arg)) {
|
||||
_parseArray(resultSet, arg);
|
||||
|
||||
// { 'foo': true, ... }
|
||||
} else if (argType === 'object') {
|
||||
_parseObject(resultSet, arg);
|
||||
|
||||
// '130'
|
||||
} else if (argType === 'number') {
|
||||
_parseNumber(resultSet, arg);
|
||||
}
|
||||
}
|
||||
|
||||
function _classNames () {
|
||||
// don't leak arguments
|
||||
// https://github.com/petkaantonov/bluebird/wiki/Optimization-killers#32-leaking-arguments
|
||||
var len = arguments.length;
|
||||
var args = Array(len);
|
||||
for (var i = 0; i < len; i++) {
|
||||
args[i] = arguments[i];
|
||||
}
|
||||
|
||||
var classSet = new StorageObject();
|
||||
_parseArray(classSet, args);
|
||||
|
||||
var list = [];
|
||||
|
||||
for (var k in classSet) {
|
||||
if (classSet[k]) {
|
||||
list.push(k)
|
||||
}
|
||||
}
|
||||
|
||||
return list.join(' ');
|
||||
}
|
||||
|
||||
return _classNames;
|
||||
})();
|
||||
|
||||
if (typeof module !== 'undefined' && module.exports) {
|
||||
classNames.default = classNames;
|
||||
module.exports = classNames;
|
||||
} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {
|
||||
// register as 'classnames', consistent with npm package name
|
||||
define('classnames', [], function () {
|
||||
return classNames;
|
||||
});
|
||||
} else {
|
||||
window.classNames = classNames;
|
||||
}
|
||||
}());
|
||||
32
frontend/node_modules/classnames/index.d.ts
generated
vendored
32
frontend/node_modules/classnames/index.d.ts
generated
vendored
@@ -1,32 +0,0 @@
|
||||
// LICENSE is MIT
|
||||
//
|
||||
// Copyright (c) 2018
|
||||
// Dave Keen <http://www.keendevelopment.ch>
|
||||
// Adi Dahiya <https://github.com/adidahiya>
|
||||
// Jason Killian <https://github.com/JKillian>
|
||||
// Sean Kelley <https://github.com/seansfkelley>
|
||||
// Michal Adamczyk <https://github.com/mradamczyk>
|
||||
// Marvin Hagemeister <https://github.com/marvinhagemeister>
|
||||
|
||||
declare namespace classNames {
|
||||
type Value = string | number | boolean | undefined | null;
|
||||
type Mapping = Record<string, any>;
|
||||
interface ArgumentArray extends Array<Argument> {}
|
||||
interface ReadonlyArgumentArray extends ReadonlyArray<Argument> {}
|
||||
type Argument = Value | Mapping | ArgumentArray | ReadonlyArgumentArray;
|
||||
}
|
||||
|
||||
interface ClassNames {
|
||||
(...args: classNames.ArgumentArray): string;
|
||||
|
||||
default: ClassNames;
|
||||
}
|
||||
|
||||
/**
|
||||
* A simple JavaScript utility for conditionally joining classNames together.
|
||||
*/
|
||||
declare const classNames: ClassNames;
|
||||
|
||||
export as namespace classNames;
|
||||
|
||||
export = classNames;
|
||||
77
frontend/node_modules/classnames/index.js
generated
vendored
77
frontend/node_modules/classnames/index.js
generated
vendored
@@ -1,77 +0,0 @@
|
||||
/*!
|
||||
Copyright (c) 2018 Jed Watson.
|
||||
Licensed under the MIT License (MIT), see
|
||||
http://jedwatson.github.io/classnames
|
||||
*/
|
||||
/* global define */
|
||||
|
||||
(function () {
|
||||
'use strict';
|
||||
|
||||
var hasOwn = {}.hasOwnProperty;
|
||||
|
||||
function classNames () {
|
||||
var classes = '';
|
||||
|
||||
for (var i = 0; i < arguments.length; i++) {
|
||||
var arg = arguments[i];
|
||||
if (arg) {
|
||||
classes = appendClass(classes, parseValue(arg));
|
||||
}
|
||||
}
|
||||
|
||||
return classes;
|
||||
}
|
||||
|
||||
function parseValue (arg) {
|
||||
if (typeof arg === 'string' || typeof arg === 'number') {
|
||||
return arg;
|
||||
}
|
||||
|
||||
if (typeof arg !== 'object') {
|
||||
return '';
|
||||
}
|
||||
|
||||
if (Array.isArray(arg)) {
|
||||
return classNames.apply(null, arg);
|
||||
}
|
||||
|
||||
if (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {
|
||||
return arg.toString();
|
||||
}
|
||||
|
||||
var classes = '';
|
||||
|
||||
for (var key in arg) {
|
||||
if (hasOwn.call(arg, key) && arg[key]) {
|
||||
classes = appendClass(classes, key);
|
||||
}
|
||||
}
|
||||
|
||||
return classes;
|
||||
}
|
||||
|
||||
function appendClass (value, newClass) {
|
||||
if (!newClass) {
|
||||
return value;
|
||||
}
|
||||
|
||||
if (value) {
|
||||
return value + ' ' + newClass;
|
||||
}
|
||||
|
||||
return value + newClass;
|
||||
}
|
||||
|
||||
if (typeof module !== 'undefined' && module.exports) {
|
||||
classNames.default = classNames;
|
||||
module.exports = classNames;
|
||||
} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {
|
||||
// register as 'classnames', consistent with npm package name
|
||||
define('classnames', [], function () {
|
||||
return classNames;
|
||||
});
|
||||
} else {
|
||||
window.classNames = classNames;
|
||||
}
|
||||
}());
|
||||
78
frontend/node_modules/classnames/package.json
generated
vendored
78
frontend/node_modules/classnames/package.json
generated
vendored
@@ -1,78 +0,0 @@
|
||||
{
|
||||
"name": "classnames",
|
||||
"version": "2.5.1",
|
||||
"description": "A simple utility for conditionally joining classNames together",
|
||||
"author": "Jed Watson",
|
||||
"license": "MIT",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git+https://github.com/JedWatson/classnames.git"
|
||||
},
|
||||
"type": "commonjs",
|
||||
"main": "./index.js",
|
||||
"types": "./index.d.ts",
|
||||
"exports": {
|
||||
"./package.json": "./package.json",
|
||||
".": {
|
||||
"types": "./index.d.ts",
|
||||
"default": "./index.js"
|
||||
},
|
||||
"./index.js": {
|
||||
"types": "./index.d.ts",
|
||||
"default": "./index.js"
|
||||
},
|
||||
"./bind": {
|
||||
"types": "./bind.d.ts",
|
||||
"default": "./bind.js"
|
||||
},
|
||||
"./bind.js": {
|
||||
"types": "./bind.d.ts",
|
||||
"default": "./bind.js"
|
||||
},
|
||||
"./dedupe": {
|
||||
"types": "./dedupe.d.ts",
|
||||
"default": "./dedupe.js"
|
||||
},
|
||||
"./dedupe.js": {
|
||||
"types": "./dedupe.d.ts",
|
||||
"default": "./dedupe.js"
|
||||
}
|
||||
},
|
||||
"scripts": {
|
||||
"test": "node --test ./tests/*.mjs",
|
||||
"bench": "node ./benchmarks/run.js",
|
||||
"bench-browser": "rollup --plugin commonjs,json,node-resolve ./benchmarks/runInBrowser.js --file ./benchmarks/runInBrowser.bundle.js && http-server -c-1 ./benchmarks",
|
||||
"check-types": "tsd"
|
||||
},
|
||||
"keywords": [
|
||||
"react",
|
||||
"css",
|
||||
"classes",
|
||||
"classname",
|
||||
"classnames",
|
||||
"util",
|
||||
"utility"
|
||||
],
|
||||
"files": [
|
||||
"HISTORY.md",
|
||||
"LICENSE",
|
||||
"README.md",
|
||||
"*.d.ts",
|
||||
"*.js"
|
||||
],
|
||||
"devDependencies": {
|
||||
"@rollup/plugin-commonjs": "^25.0.7",
|
||||
"@rollup/plugin-json": "^6.1.0",
|
||||
"@rollup/plugin-node-resolve": "^15.2.3",
|
||||
"classnames-local": "file:.",
|
||||
"classnames-npm": "npm:classnames@*",
|
||||
"http-server": "^14.1.1",
|
||||
"markdown-table": "^3.0.3",
|
||||
"rollup": "^4.9.1",
|
||||
"tinybench": "^2.5.1",
|
||||
"tsd": "^0.30.1"
|
||||
},
|
||||
"tsd": {
|
||||
"directory": "./tests"
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user