` per [#159](https://github.com/davidhu2000/react-spinners/issues/159). [PR #325](https://github.com/davidhu2000/react-spinners/pull/325)
+- Using [lodash-es](https://github.com/lodash/lodash/blob/4.17.20-es/package.json#L10-L14) as a reference, added `type: module` to `package.json` as an attempt to implement tree shaking via [PR #327](https://github.com/davidhu2000/react-spinners/pull/327).
+- replaced tslint with eslint, and npm with yarn.
+
+## 0.10.0-beta.3
+
+- Update `.npmignore` to ignore the `.cjs` files so they are not included in the published build.
+- Add `.yarn` and `.yarnrc` to `.npmignore`.
+
+Old:
+
+```
+npm notice version: 0.10.0-beta.2
+npm notice package size: 1.2 MB
+npm notice unpacked size: 5.3 MB
+npm notice total files: 69
+```
+
+New:
+
+```
+npm notice version: 0.10.0-beta.3
+npm notice package size: 21.3 kB
+npm notice unpacked size: 167.1 kB
+npm notice total files: 65
+```
+
+## 0.10.0-beta.2
+
+- Using [lodash-es](https://github.com/lodash/lodash/blob/4.17.20-es/package.json#L10-L14) as a reference, added `type: module` to `package.json` as an attempt to fix tree shaking via [PR #327](https://github.com/davidhu2000/react-spinners/pull/327).
+- Renamed relevant `.js` files to `.cjs` so they are treated as CommonJs. Otherwise we get errors like `ReferenceError: module is not defined` when running certain commands, like `yarn`.
+
+## 0.10.0-beta.1
+
+- No changes here. Upgrading alpha to beta.
+
+## 0.10.0-alpha.3
+
+- add `react ^17.0.0` and `react-dom ^17.0.0` into peerDependencies to fix [#321](https://github.com/davidhu2000/react-spinners/issues/321)
+- update `div` to `span` to fix `
cannot appear as a descendant of
` per [#159](https://github.com/davidhu2000/react-spinners/issues/159). [PR #325](https://github.com/davidhu2000/react-spinners/pull/325)
+- removed `Keyframes` typing to allow for inferring [PR #326](https://github.com/davidhu2000/react-spinners/pull/326)
+- another round of update for all devDependencies to the latest version except for `react-color`, `react`, `react-dom`, and `@motion/core`. These 4 packages have caused issues during the update and will save them for another time.
+
+## 0.10.0-alpha.2
+
+- add `sideEffects` property to `package.json` to fix tree shaking
+
+## 0.10.0-alpha.1
+
+- updated all dependencies to the latest version.
+- switched from using npm to yarn
+- deprecated ts-lint in favor of eslint
+- updated how loaders are exported to support tree shaking
+
+## 0.9.0
+
+- Added a new loader: `PuffLoader`. Thanks to @dsaw via [PR #200](https://github.com/davidhu2000/react-spinners/pull/200)
+- Update docs site with new loader
+
+## 0.8.3
+
+- **Security**: Bump acorn from 5.7.3 to 5.7.4 due to `Regular Expression Denial of Service`. Details [here](https://github.com/advisories/GHSA-6chw-6frg-f759)
+
+## 0.8.2
+
+- Add `box-sizing: content-box;` to MoonLoader. See [PR](https://github.com/davidhu2000/react-spinners/pull/162) for more details.
+
+## 0.8.1
+
+- clean up README example: removed unrecommended import, removed comment out size prop, and bolded text for size prop being string and number
+
+## 0.8.0
+
+- Added a new loader: `ClockLoader`
+- No other functionality changes
+- Fix default value table in README to alphabetize correctly
+
+## 0.7.2
+
+- update README demo site url
+
+## 0.7.1
+
+- run `npm audit fix` to fix vulnerability in `serialslize-javascript` package
+- update README to showcase number and string input for size prop
+
+## 0.7.0
+
+- **BREAKING CHANGE**: all unit props have been removed to simplify the component API. See change log for `0.7.0-alpha.1` for more details
+
+## 0.7.0-beta.1
+
+- Update readme to include yarn installation
+
+## 0.7.0-alpha.5
+
+- clean up readme. break up prop section with individual prop headers
+
+## 0.7.0-alpha.4
+
+- update default value for `css` prop on README to be `""` instead of `{}`
+- add list of available color words that the `color` prop accepts
+- run prettier to format readme
+
+## 0.7.0-alpha.3
+
+- **bugfix**: Fix [issue #140](https://github.com/davidhu2000/react-spinners/issues/140). The margin prop on `FadeLoader` does what we expect it to do, expand the spacing between the lines
+
+## 0.7.0-alpha.2
+
+- **bugfix**: Fix [issue #139](https://github.com/davidhu2000/react-spinners/issues/139). The margin prop on `RotateLoader` does what we expect it to do, expand the spacing between the dots
+- updated webpack config to split up npm files to avoid brower having to reload them on each change
+
+## 0.7.0-alpha.1
+
+- **BREAKING CHANGE**: all unit props are deprecated, including `sizeUnit`, `heightUnit`, `widthUnit`, and `radiusUnit`. The `size`, `height`, `width`, and `radius` props now accepts `number` and `string`
+ - If value is number, default to `px`
+ - If value is string with valid css unit, return the input value
+ - If value is string with invalid css unit, output warning console log and default to `px`
+- `margin` prop now work the same way as other length props. Can accept `number` and `string`
+- `css` prop default is now `""`. No functionality change here
+
+## 0.6.1
+
+- **bugfix**: Fix [issue 109](https://github.com/davidhu2000/react-spinners/issues/109) where `Math.random` is stubbed out in the `GridLoader` component instead in the tests, causing `Math.random` to not work properly if `GridLoader` is used
+
+## 0.6.0
+
+- Offical release for the TypeScript rewrite!
+- Major changes:
+ - Add support for types for individual loader imports
+ - Add support for using basic color name as props instead of only color hashes
+ - Reduced total package size from around 850kb to 135gb
+ - Fix `main` key value in `package.json` to point to the correct `index.js`
+ - Removed `prop-types` and `recompose` from dependencies
+ - Added tests to get to 100% code coverage
+
+## 0.6.0-beta.1
+
+- updated `devDependencies` to latest versions
+
+## 0.6.0-alpha.10
+
+- Removed `recompose` from the list of dependencies. We currently wants the component to update for all prop changes, so the `onlyUpdateForKeys` was passed in all the props anyways, so it wasn't doing much
+
+## 0.6.0-alpha.9
+
+- **bugfix**: Fix issue where `PacmanLoader` `top` css property does not respect the `sizeUnit` prop. It was hardcoded to be `px` instead of using `sizeUnit` prop
+- update javascript bundle files for demo site
+
+## 0.6.0-alpha.8
+
+- updated rgba conversion function to handle basic colors. Now supports these basically colors
+ - maroon, red, orange, yellow, olive, green, purple, fuchsia, lime, teal, aqua, blue, navy, black, gray, silver, white
+
+## 0.6.0-alpha.7
+
+- update readme to include `radius` and `radiusUnit` prop description
+- update all the tests to use default variables
+- add the following to `.npmignore` to further reduce package size
+
+```
+tslint.json
+jest.config.js
+CODEOWNERS
+CODE_OF_CONDUCT.md
+CONTRIBUTING.md
+CHANGELOG.md
+```
+
+Old:
+
+```
+npm notice version: 0.6.0-alpha.6
+npm notice package size: 19.8 kB
+npm notice unpacked size: 138.5 kB
+```
+
+New:
+
+```
+npm notice version: 0.6.0-alpha.7
+npm notice package size: 16.7 kB
+npm notice unpacked size: 132.1 kB
+```
+
+## 0.6.0-alpha.6
+
+- add `src` folder to `npmignore`. Previous version wasn't ruthless enough in saving data
+
+Old:
+
+```
+npm notice version: 0.6.0-alpha.5
+npm notice package size: 26.1 kB
+npm notice unpacked size: 191.2 kB
+```
+
+New:
+
+```
+npm notice version: 0.6.0-alpha.6
+npm notice package size: 19.8 kB
+npm notice unpacked size: 138.5 kB
+```
+
+## 0.6.0-alpha.5
+
+- update `npmignore` to include `__tests__`, `.github`, `.circleci`, `coverage`. This helped to reduce package size. Help to save some data
+
+Old:
+
+```
+npm notice version: 0.6.0-alpha.4
+npm notice package size: 85.6 kB
+npm notice unpacked size: 850.4 kB
+```
+
+New:
+
+```
+npm notice version: 0.6.0-alpha.5
+npm notice package size: 26.1 kB
+npm notice unpacked size: 191.2 kB
+```
+
+## 0.6.0-alpha.4
+
+- **bugfix**: update `package.json` `main` value from `dist/index.js` to `index.js` to fix codeSandbox import issue
+- **bugfix**: add missing `transform` key to the `25%` keyframe in RiseLoader. It was just `25% {translateY(-${riseAmount}px)}` before. Now it is corrected
+- add tests for all the loaders. Fixed up a few tests using default variables, namely the first 3 letters in the alphabet
+
+## 0.6.0-alpha.3
+
+- fix missing `"` from `.babelrc` in readme per [PR #77](https://github.com/davidhu2000/react-spinners/pull/77)
+- add tests for `ClipLoader`, `DotLoader`, `FadeLoader`, `GridLoader`, `HashLoader`, and `MoonLoader`
+
+## 0.6.0-alpha.2
+
+- **bugfix**: update `tsconfig.json` `module` property to `commonjs` instead of `esnext`. This caused import errors as seen in [issue 74](https://github.com/davidhu2000/react-spinners/issues/74)
+- added tests for `BarLoader`, `BeatLoader`, `BounceLoader`, `CircleLoader`, and `ClimbingBoxLoader`
+
+## 0.6.0-alpha.1
+
+- This is a complete rewrite of the package. 100% of the code is now in TypeScript. This will show inidividual type definitions for each loader
+- `prop-types` has been removed as a dependency. This is now handled by typings
+- set up `ts-lint` and `prettier` to help ensure code consistency
+
+## 0.5.13
+
+**Note: this release has a critical [issue](https://github.com/davidhu2000/react-spinners/issues/74) and was deprecated. Please use <= 0.5.12 or > 0.6.0.**
+
+- fix readme props table formatting. It got a little messy for some reason
+
+## 0.5.12
+
+- fix version glitch. No code changes here
+
+## 0.5.11
+
+- this version should be 0.5.10, but internet issues causesa weird version glitch. Update to 0.5.12 so everything matches
+
+## 0.5.10
+
+- update readme to include explanation of css prop can be string as well as css function from @emotion/core
+
+## 0.5.9
+
+- **bugfix**: Fix [issue 61](https://github.com/davidhu2000/react-spinners/issues/61) where css overrides are not applied properly. Updated how the override workings using [emotion composition](https://emotion.sh/docs/composition)
+
+## 0.5.8
+
+- **bugfix**: Fix [issue 66](https://github.com/davidhu2000/react-spinners/issues/66) where destructuring import no longer works. Updated how components are exported, changed from `export default` to `export const`
+
+## 0.5.7
+
+- update README.md `.babelrc` example to use `@babel/` syntax in accordance to latest babel packages
+
+## 0.5.6
+
+- big update for outdated devDependencies. This version should not affect any existing functionalities.
+ - removed eslint related packages. Will be moving to use `tslint` as part of the typescript conversion.
+ - updated babel plus plugins/presets to latest versions
+ - updated `index.js` import from `module.exports = {...}` to `export default {...}`
+ - webpack changes
+ - added development configuration for easier debugging
+ - add `html-webpack-plugin` to inject the script tags to `index.html`
+
+## 0.5.5
+
+- **bugfix**: update `CommonProps` interface `css` prop to used `PrecompiledCss` and `string`. Update PropTypes helper to be able to accept both `PrecompiledCss` and `string`. This is to fix the validation error for the `css` prop
+
+## 0.5.4
+
+- refactored proptypes into helper functions. No functionality change here, just some cleanups
+
+## 0.5.3
+
+- **bugfix**: update default value for `css` prop to `{}` instead of `""` to fix console error
+
+## 0.5.2
+
+- **bugfix**: change `css` proptype to `PropTypes.shape({ ... })` instead of `PropTypes.string` to fix console error.
+- Fix a few console warnings on the demo site
+
+## 0.5.1
+
+- Update demo page link to `https://www.react-spinners.com`
+
+## 0.5.0
+
+- Update emotion package to emotion 10
+- **Breaking change**: replaced `className` prop with `css` prop to match Emotion 10
+
+## 0.4.8
+
+- update `package.json` to include wider range of version for `recompose`
+
+## 0.4.7
+
+- add `loaders` and `spinners` keyword to package.json
+
+## 0.4.6
+
+- update how `onlyUpdateForKeys` is imported from `recompose`. Reduced import cost from `26kb` to `19kb`
+
+## 0.4.5
+
+- update README `.babelrc` to use `env` preset
+
+## 0.4.4
+
+- fix README example import to using correct loader
+- add default value for unit props to README
+
+## 0.4.3
+
+- update readme to include unit props for each loader
+
+## 0.4.2
+
+- fix single loader import
+- add `className` to `index.d.ts`
+- update readme to include single loader import
+
+## 0.4.1
+
+- Remove second import method from readme. Add deprecation warning to 0.4.0
+
+## 0.4.0
+
+**Note: this release has a critical issue and was deprecated. Please update to 0.4.1 or higher.**
+
+- Add `className` prop to loaders
+- Deprecated `loaderStyle` prop for loaders to follow Emotion module standard
+
+## 0.3.3
+
+**Note: this release was deprecated through removing `loaderStyle` prop. Please update to 0.4.1 or higher.**
+
+- Add `loaderStyle` prop to loaders to allow more customized loader
+
+## 0.3.2
+
+- **bugfix**: fixed rendering issue for FadeLoader, SyncLoader, RotateLoader, and MoonLoader
+
+## 0.3.1
+
+- Moved `babel-plugin-emotion` to devDependencies and updates to 9.1.0
+
+## 0.3.0
+
+- Added `unit` props to each loader to allow `%` units on css
+- **bugfix**: fixed string concatenation on some loaders that prevented the correct rendering
+
+## 0.2.6
+
+- **bugfix**: add missing `px` for `border-radius` in `ScaleLoader` styling
+- add `minor` and `major` versioning scripts to `package.json`
+
+## 0.2.5
+
+- add `ISSUE_TEMPLATE.md` and `PULL_REQUEST_TEMPLATE.MD`
+
+## 0.2.4
+
+- removed codesponsers from readme
+
+## 0.2.3
+
+- updated devDendencies to latest stable versions
+- removed unused npm scripts from `package.json`
+- minor linting fixes after update
+- add `^16.0.0` to `react` and `react-dom` peerDependencies
+
+## 0.2.2
+
+- **bugfix**: change `borderRadius` to `border-radius` in `RingLoader` so the browser will recognize the css
+
+## 0.2.1
+
+- **bugfix**: moved `prop-types` to from devDependencies to dependencies. This fixes the `Package not found` error for projects that do not include `prop-types` as a dependency
+
+## 0.2.0
+
+**Note: this release has a critical issue and was deprecated. Please update to 0.2.1 or higher.**
+
+- add TypeScript typings
+
+## 0.1.9
+
+**Note: this release has a critical issue and was deprecated. Please update to 0.2.1 or higher.**
+
+- **bugfix**: moved `emotion` from devDependency to dependency. This fixed the `Package not found` error
+
+## 0.1.8
+
+**Note: this release has a critical issue and was deprecated. Please update to 0.2.1 or higher.**
+
+- update `emotion` package version from `7.2.0` to `8.0.6`
+
+## 0.1.7
+
+**Note: this release has a critical issue and was deprecated. Please update to 0.2.1 or higher.**
+
+- update dependencies versions
+
+## 0.1.6
+
+**Note: this release has a critical issue and was deprecated. Please update to 0.2.1 or higher.**
+
+- fixed some typo in readme
+
+## 0.1.5
+
+**Note: this release has a critical issue and was deprecated. Please update to 0.2.1 or higher.**
+
+- updated readme
+
+## 0.1.4
+
+**Note: this release has a critical issue and was deprecated. Please update to 0.2.1 or higher.**
+
+- **bugfix**: fixed `PulseLoader` size default prop to be the correct type
+
+## 0.1.3
+
+**Note: this release has a critical issue and was deprecated. Please update to 0.2.1 or higher.**
+
+- **bugfix**: moved `recompose` from devDependency to dependency
+- update author field in `package.json`
+
+## 0.1.2
+
+**Note: this release has a critical issue and was deprecated. Please update to 0.2.1 or higher.**
+
+- update margin column in readme proptype table
+- update contributors list in `package.json`
+
+## 0.1.1
+
+**Note: this release has a critical issue and was deprecated. Please update to 0.2.1 or higher.**
+
+- update readme to include note about `react-emotion` plugin for babel
+- fixed circleci badge to go to circle ci instead of npm
+- removed flow from test script
+
+## 0.1.0
+
+**Note: this release has a critical issue and was deprecated. Please update to 0.2.1 or higher.**
+
+- removed `domkit` as a dependency and replaced it with `emotion`. This package now officially supports `Server Side Rendering
diff --git a/frontend/node_modules/react-spinners/CircleLoader.d.ts b/frontend/node_modules/react-spinners/CircleLoader.d.ts
new file mode 100644
index 000000000..12ec8925f
--- /dev/null
+++ b/frontend/node_modules/react-spinners/CircleLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function CircleLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default CircleLoader;
diff --git a/frontend/node_modules/react-spinners/CircleLoader.js b/frontend/node_modules/react-spinners/CircleLoader.js
new file mode 100644
index 000000000..d305db899
--- /dev/null
+++ b/frontend/node_modules/react-spinners/CircleLoader.js
@@ -0,0 +1,82 @@
+"use strict";
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+var React = __importStar(require("react"));
+var unitConverter_1 = require("./helpers/unitConverter");
+var animation_1 = require("./helpers/animation");
+var circle = (0, animation_1.createAnimation)("CircleLoader", "0% {transform: rotate(0deg)} 50% {transform: rotate(180deg)} 100% {transform: rotate(360deg)}", "circle");
+function CircleLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 50 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var wrapper = __assign({ display: "inherit", position: "relative", width: (0, unitConverter_1.cssValue)(size), height: (0, unitConverter_1.cssValue)(size) }, cssOverride);
+ var style = function (i) {
+ var _a = (0, unitConverter_1.parseLengthAndUnit)(size), value = _a.value, unit = _a.unit;
+ return {
+ position: "absolute",
+ height: "".concat(value * (1 - i / 10)).concat(unit),
+ width: "".concat(value * (1 - i / 10)).concat(unit),
+ borderTop: "1px solid ".concat(color),
+ borderBottom: "none",
+ borderLeft: "1px solid ".concat(color),
+ borderRight: "none",
+ borderRadius: "100%",
+ transition: "2s",
+ top: "".concat(i * 0.7 * 2.5, "%"),
+ left: "".concat(i * 0.35 * 2.5, "%"),
+ animation: "".concat(circle, " ").concat(1 / speedMultiplier, "s ").concat((i * 0.2) / speedMultiplier, "s infinite linear"),
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(0) }),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) }),
+ React.createElement("span", { style: style(3) }),
+ React.createElement("span", { style: style(4) })));
+}
+exports.default = CircleLoader;
diff --git a/frontend/node_modules/react-spinners/ClimbingBoxLoader.d.ts b/frontend/node_modules/react-spinners/ClimbingBoxLoader.d.ts
new file mode 100644
index 000000000..12660b80d
--- /dev/null
+++ b/frontend/node_modules/react-spinners/ClimbingBoxLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function ClimbingBoxLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default ClimbingBoxLoader;
diff --git a/frontend/node_modules/react-spinners/ClimbingBoxLoader.js b/frontend/node_modules/react-spinners/ClimbingBoxLoader.js
new file mode 100644
index 000000000..3488acf70
--- /dev/null
+++ b/frontend/node_modules/react-spinners/ClimbingBoxLoader.js
@@ -0,0 +1,95 @@
+"use strict";
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+var React = __importStar(require("react"));
+var unitConverter_1 = require("./helpers/unitConverter");
+var animation_1 = require("./helpers/animation");
+var climbingBox = (0, animation_1.createAnimation)("ClimbingBoxLoader", "0% {transform:translate(0, -1em) rotate(-45deg)}\n 5% {transform:translate(0, -1em) rotate(-50deg)}\n 20% {transform:translate(1em, -2em) rotate(47deg)}\n 25% {transform:translate(1em, -2em) rotate(45deg)}\n 30% {transform:translate(1em, -2em) rotate(40deg)}\n 45% {transform:translate(2em, -3em) rotate(137deg)}\n 50% {transform:translate(2em, -3em) rotate(135deg)}\n 55% {transform:translate(2em, -3em) rotate(130deg)}\n 70% {transform:translate(3em, -4em) rotate(217deg)}\n 75% {transform:translate(3em, -4em) rotate(220deg)}\n 100% {transform:translate(0, -1em) rotate(-225deg)}", "climbingBox");
+function ClimbingBoxLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 15 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var container = __assign({ display: "inherit", position: "relative", width: "7.1em", height: "7.1em" }, cssOverride);
+ var wrapper = {
+ position: "absolute",
+ top: "50%",
+ left: "50%",
+ marginTop: "-2.7em",
+ marginLeft: "-2.7em",
+ width: "5.4em",
+ height: "5.4em",
+ fontSize: (0, unitConverter_1.cssValue)(size),
+ };
+ var style = {
+ position: "absolute",
+ left: "0",
+ bottom: "-0.1em",
+ height: "1em",
+ width: "1em",
+ backgroundColor: "transparent",
+ borderRadius: "15%",
+ border: "0.25em solid ".concat(color),
+ transform: "translate(0, -1em) rotate(-45deg)",
+ animationFillMode: "both",
+ animation: "".concat(climbingBox, " ").concat(2.5 / speedMultiplier, "s infinite cubic-bezier(0.79, 0, 0.47, 0.97)"),
+ };
+ var hill = {
+ position: "absolute",
+ width: "7.1em",
+ height: "7.1em",
+ top: "1.7em",
+ left: "1.7em",
+ borderLeft: "0.25em solid ".concat(color),
+ transform: "rotate(45deg)",
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: container }, additionalprops),
+ React.createElement("span", { style: wrapper },
+ React.createElement("span", { style: style }),
+ React.createElement("span", { style: hill }))));
+}
+exports.default = ClimbingBoxLoader;
diff --git a/frontend/node_modules/react-spinners/ClipLoader.d.ts b/frontend/node_modules/react-spinners/ClipLoader.d.ts
new file mode 100644
index 000000000..336d685c2
--- /dev/null
+++ b/frontend/node_modules/react-spinners/ClipLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function ClipLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default ClipLoader;
diff --git a/frontend/node_modules/react-spinners/ClipLoader.js b/frontend/node_modules/react-spinners/ClipLoader.js
new file mode 100644
index 000000000..2fae13765
--- /dev/null
+++ b/frontend/node_modules/react-spinners/ClipLoader.js
@@ -0,0 +1,60 @@
+"use strict";
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+var React = __importStar(require("react"));
+var unitConverter_1 = require("./helpers/unitConverter");
+var animation_1 = require("./helpers/animation");
+var clip = (0, animation_1.createAnimation)("ClipLoader", "0% {transform: rotate(0deg) scale(1)} 50% {transform: rotate(180deg) scale(0.8)} 100% {transform: rotate(360deg) scale(1)}", "clip");
+function ClipLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 35 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var style = __assign({ background: "transparent !important", width: (0, unitConverter_1.cssValue)(size), height: (0, unitConverter_1.cssValue)(size), borderRadius: "100%", border: "2px solid", borderTopColor: color, borderBottomColor: "transparent", borderLeftColor: color, borderRightColor: color, display: "inline-block", animation: "".concat(clip, " ").concat(0.75 / speedMultiplier, "s 0s infinite linear"), animationFillMode: "both" }, cssOverride);
+ if (!loading) {
+ return null;
+ }
+ return React.createElement("span", __assign({ style: style }, additionalprops));
+}
+exports.default = ClipLoader;
diff --git a/frontend/node_modules/react-spinners/ClockLoader.d.ts b/frontend/node_modules/react-spinners/ClockLoader.d.ts
new file mode 100644
index 000000000..57785be37
--- /dev/null
+++ b/frontend/node_modules/react-spinners/ClockLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function ClockLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default ClockLoader;
diff --git a/frontend/node_modules/react-spinners/ClockLoader.js b/frontend/node_modules/react-spinners/ClockLoader.js
new file mode 100644
index 000000000..367b7a5ad
--- /dev/null
+++ b/frontend/node_modules/react-spinners/ClockLoader.js
@@ -0,0 +1,83 @@
+"use strict";
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+var React = __importStar(require("react"));
+var unitConverter_1 = require("./helpers/unitConverter");
+var animation_1 = require("./helpers/animation");
+var rotate = (0, animation_1.createAnimation)("ClockLoader", "100% { transform: rotate(360deg) }", "rotate");
+function ClockLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 50 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var _g = (0, unitConverter_1.parseLengthAndUnit)(size), value = _g.value, unit = _g.unit;
+ var wrapper = __assign({ display: "inherit", position: "relative", width: "".concat(value).concat(unit), height: "".concat(value).concat(unit), backgroundColor: "transparent", boxShadow: "inset 0px 0px 0px 2px ".concat(color), borderRadius: "50%" }, cssOverride);
+ var minute = {
+ position: "absolute",
+ backgroundColor: color,
+ width: "".concat(value / 3, "px"),
+ height: "2px",
+ top: "".concat(value / 2 - 1, "px"),
+ left: "".concat(value / 2 - 1, "px"),
+ transformOrigin: "1px 1px",
+ animation: "".concat(rotate, " ").concat(8 / speedMultiplier, "s linear infinite"),
+ };
+ var hour = {
+ position: "absolute",
+ backgroundColor: color,
+ width: "".concat(value / 2.4, "px"),
+ height: "2px",
+ top: "".concat(value / 2 - 1, "px"),
+ left: "".concat(value / 2 - 1, "px"),
+ transformOrigin: "1px 1px",
+ animation: "".concat(rotate, " ").concat(2 / speedMultiplier, "s linear infinite"),
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: hour }),
+ React.createElement("span", { style: minute })));
+}
+exports.default = ClockLoader;
diff --git a/frontend/node_modules/react-spinners/DotLoader.d.ts b/frontend/node_modules/react-spinners/DotLoader.d.ts
new file mode 100644
index 000000000..f3cd003ad
--- /dev/null
+++ b/frontend/node_modules/react-spinners/DotLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function DotLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default DotLoader;
diff --git a/frontend/node_modules/react-spinners/DotLoader.js b/frontend/node_modules/react-spinners/DotLoader.js
new file mode 100644
index 000000000..18081c262
--- /dev/null
+++ b/frontend/node_modules/react-spinners/DotLoader.js
@@ -0,0 +1,77 @@
+"use strict";
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+var React = __importStar(require("react"));
+var unitConverter_1 = require("./helpers/unitConverter");
+var animation_1 = require("./helpers/animation");
+var rotate = (0, animation_1.createAnimation)("DotLoader", "100% {transform: rotate(360deg)}", "rotate");
+var bounce = (0, animation_1.createAnimation)("DotLoader", "0%, 100% {transform: scale(0)} 50% {transform: scale(1.0)}", "bounce");
+function DotLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 60 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var wrapper = __assign({ display: "inherit", position: "relative", width: (0, unitConverter_1.cssValue)(size), height: (0, unitConverter_1.cssValue)(size), animationFillMode: "forwards", animation: "".concat(rotate, " ").concat(2 / speedMultiplier, "s 0s infinite linear") }, cssOverride);
+ var style = function (i) {
+ var _a = (0, unitConverter_1.parseLengthAndUnit)(size), value = _a.value, unit = _a.unit;
+ return {
+ position: "absolute",
+ top: i % 2 ? "0" : "auto",
+ bottom: i % 2 ? "auto" : "0",
+ height: "".concat(value / 2).concat(unit),
+ width: "".concat(value / 2).concat(unit),
+ backgroundColor: color,
+ borderRadius: "100%",
+ animationFillMode: "forwards",
+ animation: "".concat(bounce, " ").concat(2 / speedMultiplier, "s ").concat(i === 2 ? "1s" : "0s", " infinite linear"),
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) })));
+}
+exports.default = DotLoader;
diff --git a/frontend/node_modules/react-spinners/FadeLoader.d.ts b/frontend/node_modules/react-spinners/FadeLoader.d.ts
new file mode 100644
index 000000000..98053e8e4
--- /dev/null
+++ b/frontend/node_modules/react-spinners/FadeLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderHeightWidthRadiusProps } from "./helpers/props";
+declare function FadeLoader({ loading, color, speedMultiplier, cssOverride, height, width, radius, margin, ...additionalprops }: LoaderHeightWidthRadiusProps): JSX.Element | null;
+export default FadeLoader;
diff --git a/frontend/node_modules/react-spinners/FadeLoader.js b/frontend/node_modules/react-spinners/FadeLoader.js
new file mode 100644
index 000000000..38f96db1f
--- /dev/null
+++ b/frontend/node_modules/react-spinners/FadeLoader.js
@@ -0,0 +1,92 @@
+"use strict";
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+var React = __importStar(require("react"));
+var unitConverter_1 = require("./helpers/unitConverter");
+var animation_1 = require("./helpers/animation");
+var fade = (0, animation_1.createAnimation)("FadeLoader", "50% {opacity: 0.3} 100% {opacity: 1}", "fade");
+function FadeLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.height, height = _f === void 0 ? 15 : _f, _g = _a.width, width = _g === void 0 ? 5 : _g, _h = _a.radius, radius = _h === void 0 ? 2 : _h, _j = _a.margin, margin = _j === void 0 ? 2 : _j, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "height", "width", "radius", "margin"]);
+ var value = (0, unitConverter_1.parseLengthAndUnit)(margin).value;
+ var radiusValue = value + 18;
+ var quarter = radiusValue / 2 + radiusValue / 5.5;
+ var wrapper = __assign({ display: "inherit", position: "relative", fontSize: "0", top: radiusValue, left: radiusValue, width: "".concat(radiusValue * 3, "px"), height: "".concat(radiusValue * 3, "px") }, cssOverride);
+ var style = function (i) {
+ return {
+ position: "absolute",
+ width: (0, unitConverter_1.cssValue)(width),
+ height: (0, unitConverter_1.cssValue)(height),
+ margin: (0, unitConverter_1.cssValue)(margin),
+ backgroundColor: color,
+ borderRadius: (0, unitConverter_1.cssValue)(radius),
+ transition: "2s",
+ animationFillMode: "both",
+ animation: "".concat(fade, " ").concat(1.2 / speedMultiplier, "s ").concat(i * 0.12, "s infinite ease-in-out"),
+ };
+ };
+ var a = __assign(__assign({}, style(1)), { top: "".concat(radiusValue, "px"), left: "0" });
+ var b = __assign(__assign({}, style(2)), { top: "".concat(quarter, "px"), left: "".concat(quarter, "px"), transform: "rotate(-45deg)" });
+ var c = __assign(__assign({}, style(3)), { top: "0", left: "".concat(radiusValue, "px"), transform: "rotate(90deg)" });
+ var d = __assign(__assign({}, style(4)), { top: "".concat(-1 * quarter, "px"), left: "".concat(quarter, "px"), transform: "rotate(45deg)" });
+ var e = __assign(__assign({}, style(5)), { top: "".concat(-1 * radiusValue, "px"), left: "0" });
+ var f = __assign(__assign({}, style(6)), { top: "".concat(-1 * quarter, "px"), left: "".concat(-1 * quarter, "px"), transform: "rotate(-45deg)" });
+ var g = __assign(__assign({}, style(7)), { top: "0", left: "".concat(-1 * radiusValue, "px"), transform: "rotate(90deg)" });
+ var h = __assign(__assign({}, style(8)), { top: "".concat(quarter, "px"), left: "".concat(-1 * quarter, "px"), transform: "rotate(45deg)" });
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: a }),
+ React.createElement("span", { style: b }),
+ React.createElement("span", { style: c }),
+ React.createElement("span", { style: d }),
+ React.createElement("span", { style: e }),
+ React.createElement("span", { style: f }),
+ React.createElement("span", { style: g }),
+ React.createElement("span", { style: h })));
+}
+exports.default = FadeLoader;
diff --git a/frontend/node_modules/react-spinners/GridLoader.d.ts b/frontend/node_modules/react-spinners/GridLoader.d.ts
new file mode 100644
index 000000000..06fa46b8c
--- /dev/null
+++ b/frontend/node_modules/react-spinners/GridLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeMarginProps } from "./helpers/props";
+declare function GridLoader({ loading, color, speedMultiplier, cssOverride, size, margin, ...additionalprops }: LoaderSizeMarginProps): JSX.Element | null;
+export default GridLoader;
diff --git a/frontend/node_modules/react-spinners/GridLoader.js b/frontend/node_modules/react-spinners/GridLoader.js
new file mode 100644
index 000000000..f3a67bcb7
--- /dev/null
+++ b/frontend/node_modules/react-spinners/GridLoader.js
@@ -0,0 +1,89 @@
+"use strict";
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+var React = __importStar(require("react"));
+var unitConverter_1 = require("./helpers/unitConverter");
+var animation_1 = require("./helpers/animation");
+var grid = (0, animation_1.createAnimation)("GridLoader", "0% {transform: scale(1)} 50% {transform: scale(0.5); opacity: 0.7} 100% {transform: scale(1); opacity: 1}", "grid");
+var random = function (top) { return Math.random() * top; };
+function GridLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 15 : _f, _g = _a.margin, margin = _g === void 0 ? 2 : _g, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size", "margin"]);
+ var sizeWithUnit = (0, unitConverter_1.parseLengthAndUnit)(size);
+ var marginWithUnit = (0, unitConverter_1.parseLengthAndUnit)(margin);
+ var width = parseFloat(sizeWithUnit.value.toString()) * 3 + parseFloat(marginWithUnit.value.toString()) * 6;
+ var wrapper = __assign({ width: "".concat(width).concat(sizeWithUnit.unit), fontSize: 0, display: "inline-block" }, cssOverride);
+ var style = function (rand) {
+ return {
+ display: "inline-block",
+ backgroundColor: color,
+ width: "".concat((0, unitConverter_1.cssValue)(size)),
+ height: "".concat((0, unitConverter_1.cssValue)(size)),
+ margin: (0, unitConverter_1.cssValue)(margin),
+ borderRadius: "100%",
+ animationFillMode: "both",
+ animation: "".concat(grid, " ").concat((rand / 100 + 0.6) / speedMultiplier, "s ").concat(rand / 100 - 0.2, "s infinite ease"),
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops, { ref: function (node) {
+ if (node) {
+ node.style.setProperty("width", "".concat(width).concat(sizeWithUnit.unit), "important");
+ }
+ } }),
+ React.createElement("span", { style: style(random(100)) }),
+ React.createElement("span", { style: style(random(100)) }),
+ React.createElement("span", { style: style(random(100)) }),
+ React.createElement("span", { style: style(random(100)) }),
+ React.createElement("span", { style: style(random(100)) }),
+ React.createElement("span", { style: style(random(100)) }),
+ React.createElement("span", { style: style(random(100)) }),
+ React.createElement("span", { style: style(random(100)) }),
+ React.createElement("span", { style: style(random(100)) })));
+}
+exports.default = GridLoader;
diff --git a/frontend/node_modules/react-spinners/HashLoader.d.ts b/frontend/node_modules/react-spinners/HashLoader.d.ts
new file mode 100644
index 000000000..ca1763ff3
--- /dev/null
+++ b/frontend/node_modules/react-spinners/HashLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function HashLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default HashLoader;
diff --git a/frontend/node_modules/react-spinners/HashLoader.js b/frontend/node_modules/react-spinners/HashLoader.js
new file mode 100644
index 000000000..55d43683f
--- /dev/null
+++ b/frontend/node_modules/react-spinners/HashLoader.js
@@ -0,0 +1,83 @@
+"use strict";
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+var React = __importStar(require("react"));
+var colors_1 = require("./helpers/colors");
+var unitConverter_1 = require("./helpers/unitConverter");
+var animation_1 = require("./helpers/animation");
+function HashLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 50 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var _g = (0, unitConverter_1.parseLengthAndUnit)(size), value = _g.value, unit = _g.unit;
+ var wrapper = __assign({ display: "inherit", position: "relative", width: (0, unitConverter_1.cssValue)(size), height: (0, unitConverter_1.cssValue)(size), transform: "rotate(165deg)" }, cssOverride);
+ var thickness = value / 5;
+ var lat = (value - thickness) / 2;
+ var offset = lat - thickness;
+ var colorValue = (0, colors_1.calculateRgba)(color, 0.75);
+ var before = (0, animation_1.createAnimation)("HashLoader", "0% {width: ".concat(thickness, "px; box-shadow: ").concat(lat, "px ").concat(-offset, "px ").concat(colorValue, ", ").concat(-lat, "px ").concat(offset, "px ").concat(colorValue, "}\n 35% {width: ").concat((0, unitConverter_1.cssValue)(size), "; box-shadow: 0 ").concat(-offset, "px ").concat(colorValue, ", 0 ").concat(offset, "px ").concat(colorValue, "}\n 70% {width: ").concat(thickness, "px; box-shadow: ").concat(-lat, "px ").concat(-offset, "px ").concat(colorValue, ", ").concat(lat, "px ").concat(offset, "px ").concat(colorValue, "}\n 100% {box-shadow: ").concat(lat, "px ").concat(-offset, "px ").concat(colorValue, ", ").concat(-lat, "px ").concat(offset, "px ").concat(colorValue, "}"), "before");
+ var after = (0, animation_1.createAnimation)("HashLoader", "0% {height: ".concat(thickness, "px; box-shadow: ").concat(offset, "px ").concat(lat, "px ").concat(color, ", ").concat(-offset, "px ").concat(-lat, "px ").concat(color, "}\n 35% {height: ").concat((0, unitConverter_1.cssValue)(size), "; box-shadow: ").concat(offset, "px 0 ").concat(color, ", ").concat(-offset, "px 0 ").concat(color, "}\n 70% {height: ").concat(thickness, "px; box-shadow: ").concat(offset, "px ").concat(-lat, "px ").concat(color, ", ").concat(-offset, "px ").concat(lat, "px ").concat(color, "}\n 100% {box-shadow: ").concat(offset, "px ").concat(lat, "px ").concat(color, ", ").concat(-offset, "px ").concat(-lat, "px ").concat(color, "}"), "after");
+ var style = function (i) {
+ return {
+ position: "absolute",
+ top: "50%",
+ left: "50%",
+ display: "block",
+ width: "".concat(value / 5).concat(unit),
+ height: "".concat(value / 5).concat(unit),
+ borderRadius: "".concat(value / 10).concat(unit),
+ transform: "translate(-50%, -50%)",
+ animationFillMode: "none",
+ animation: "".concat(i === 1 ? before : after, " ").concat(2 / speedMultiplier, "s infinite"),
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) })));
+}
+exports.default = HashLoader;
diff --git a/frontend/node_modules/react-spinners/LICENSE b/frontend/node_modules/react-spinners/LICENSE
new file mode 100644
index 000000000..acf32ef43
--- /dev/null
+++ b/frontend/node_modules/react-spinners/LICENSE
@@ -0,0 +1,21 @@
+The MIT License (MIT)
+
+Copyright (c) 2017 David Hu
+
+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.
\ No newline at end of file
diff --git a/frontend/node_modules/react-spinners/MoonLoader.d.ts b/frontend/node_modules/react-spinners/MoonLoader.d.ts
new file mode 100644
index 000000000..2cf77a2c2
--- /dev/null
+++ b/frontend/node_modules/react-spinners/MoonLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function MoonLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default MoonLoader;
diff --git a/frontend/node_modules/react-spinners/MoonLoader.js b/frontend/node_modules/react-spinners/MoonLoader.js
new file mode 100644
index 000000000..a0e850123
--- /dev/null
+++ b/frontend/node_modules/react-spinners/MoonLoader.js
@@ -0,0 +1,73 @@
+"use strict";
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+var React = __importStar(require("react"));
+var unitConverter_1 = require("./helpers/unitConverter");
+var animation_1 = require("./helpers/animation");
+var moon = (0, animation_1.createAnimation)("MoonLoader", "100% {transform: rotate(360deg)}", "moon");
+function MoonLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 60 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var _g = (0, unitConverter_1.parseLengthAndUnit)(size), value = _g.value, unit = _g.unit;
+ var moonSize = value / 7;
+ var wrapper = __assign({ display: "inherit", position: "relative", width: "".concat("".concat(value + moonSize * 2).concat(unit)), height: "".concat("".concat(value + moonSize * 2).concat(unit)), animation: "".concat(moon, " ").concat(0.6 / speedMultiplier, "s 0s infinite linear"), animationFillMode: "forwards" }, cssOverride);
+ var ballStyle = function (size) {
+ return {
+ width: (0, unitConverter_1.cssValue)(size),
+ height: (0, unitConverter_1.cssValue)(size),
+ borderRadius: "100%",
+ };
+ };
+ var ball = __assign(__assign({}, ballStyle(moonSize)), { backgroundColor: "".concat(color), opacity: "0.8", position: "absolute", top: "".concat("".concat(value / 2 - moonSize / 2).concat(unit)), animation: "".concat(moon, " ").concat(0.6 / speedMultiplier, "s 0s infinite linear"), animationFillMode: "forwards" });
+ var circle = __assign(__assign({}, ballStyle(value)), { border: "".concat(moonSize, "px solid ").concat(color), opacity: "0.1", boxSizing: "content-box", position: "absolute" });
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: ball }),
+ React.createElement("span", { style: circle })));
+}
+exports.default = MoonLoader;
diff --git a/frontend/node_modules/react-spinners/PacmanLoader.d.ts b/frontend/node_modules/react-spinners/PacmanLoader.d.ts
new file mode 100644
index 000000000..e8ad135e3
--- /dev/null
+++ b/frontend/node_modules/react-spinners/PacmanLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeMarginProps } from "./helpers/props";
+declare function PacmanLoader({ loading, color, speedMultiplier, cssOverride, size, margin, ...additionalprops }: LoaderSizeMarginProps): JSX.Element | null;
+export default PacmanLoader;
diff --git a/frontend/node_modules/react-spinners/PacmanLoader.js b/frontend/node_modules/react-spinners/PacmanLoader.js
new file mode 100644
index 000000000..5417b20c3
--- /dev/null
+++ b/frontend/node_modules/react-spinners/PacmanLoader.js
@@ -0,0 +1,104 @@
+"use strict";
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+var React = __importStar(require("react"));
+var unitConverter_1 = require("./helpers/unitConverter");
+var animation_1 = require("./helpers/animation");
+var pacman = [
+ (0, animation_1.createAnimation)("PacmanLoader", "0% {transform: rotate(0deg)} 50% {transform: rotate(-44deg)}", "pacman-1"),
+ (0, animation_1.createAnimation)("PacmanLoader", "0% {transform: rotate(0deg)} 50% {transform: rotate(44deg)}", "pacman-2"),
+];
+function PacmanLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 25 : _f, _g = _a.margin, margin = _g === void 0 ? 2 : _g, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size", "margin"]);
+ var _h = (0, unitConverter_1.parseLengthAndUnit)(size), value = _h.value, unit = _h.unit;
+ var wrapper = __assign({ display: "inherit", position: "relative", fontSize: 0, height: "".concat(value * 2).concat(unit), width: "".concat(value * 2).concat(unit) }, cssOverride);
+ var ball = (0, animation_1.createAnimation)("PacmanLoader", "75% {opacity: 0.7}\n 100% {transform: translate(".concat("".concat(-4 * value).concat(unit), ", ").concat("".concat(-value / 4).concat(unit), ")}"), "ball");
+ var ballStyle = function (i) {
+ return {
+ width: "".concat(value / 3).concat(unit),
+ height: "".concat(value / 3).concat(unit),
+ backgroundColor: color,
+ margin: (0, unitConverter_1.cssValue)(margin),
+ borderRadius: "100%",
+ transform: "translate(0, ".concat("".concat(-value / 4).concat(unit), ")"),
+ position: "absolute",
+ top: "".concat(value).concat(unit),
+ left: "".concat(value * 4).concat(unit),
+ animation: "".concat(ball, " ").concat(1 / speedMultiplier, "s ").concat(i * 0.25, "s infinite linear"),
+ animationFillMode: "both",
+ };
+ };
+ var s1 = "".concat((0, unitConverter_1.cssValue)(size), " solid transparent");
+ var s2 = "".concat((0, unitConverter_1.cssValue)(size), " solid ").concat(color);
+ var pacmanStyle = function (i) {
+ return {
+ width: 0,
+ height: 0,
+ borderRight: s1,
+ borderTop: i === 0 ? s1 : s2,
+ borderLeft: s2,
+ borderBottom: i === 0 ? s2 : s1,
+ borderRadius: (0, unitConverter_1.cssValue)(size),
+ position: "absolute",
+ animation: "".concat(pacman[i], " ").concat(0.8 / speedMultiplier, "s infinite ease-in-out"),
+ animationFillMode: "both",
+ };
+ };
+ var pac = pacmanStyle(0);
+ var man = pacmanStyle(1);
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: pac }),
+ React.createElement("span", { style: man }),
+ React.createElement("span", { style: ballStyle(2) }),
+ React.createElement("span", { style: ballStyle(3) }),
+ React.createElement("span", { style: ballStyle(4) }),
+ React.createElement("span", { style: ballStyle(5) })));
+}
+exports.default = PacmanLoader;
diff --git a/frontend/node_modules/react-spinners/PropagateLoader.d.ts b/frontend/node_modules/react-spinners/PropagateLoader.d.ts
new file mode 100644
index 000000000..ff39bb03e
--- /dev/null
+++ b/frontend/node_modules/react-spinners/PropagateLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function PropagateLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default PropagateLoader;
diff --git a/frontend/node_modules/react-spinners/PropagateLoader.js b/frontend/node_modules/react-spinners/PropagateLoader.js
new file mode 100644
index 000000000..f7b955ae9
--- /dev/null
+++ b/frontend/node_modules/react-spinners/PropagateLoader.js
@@ -0,0 +1,88 @@
+"use strict";
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+var React = __importStar(require("react"));
+var unitConverter_1 = require("./helpers/unitConverter");
+var animation_1 = require("./helpers/animation");
+// 1.5 4.5 7.5
+var distance = [1, 3, 5];
+var propagate = [
+ (0, animation_1.createAnimation)("PropagateLoader", "25% {transform: translateX(-".concat(distance[0], "rem) scale(0.75)}\n 50% {transform: translateX(-").concat(distance[1], "rem) scale(0.6)}\n 75% {transform: translateX(-").concat(distance[2], "rem) scale(0.5)}\n 95% {transform: translateX(0rem) scale(1)}"), "propogate-0"),
+ (0, animation_1.createAnimation)("PropagateLoader", "25% {transform: translateX(-".concat(distance[0], "rem) scale(0.75)}\n 50% {transform: translateX(-").concat(distance[1], "rem) scale(0.6)}\n 75% {transform: translateX(-").concat(distance[1], "rem) scale(0.6)}\n 95% {transform: translateX(0rem) scale(1)}"), "propogate-1"),
+ (0, animation_1.createAnimation)("PropagateLoader", "25% {transform: translateX(-".concat(distance[0], "rem) scale(0.75)}\n 75% {transform: translateX(-").concat(distance[0], "rem) scale(0.75)}\n 95% {transform: translateX(0rem) scale(1)}"), "propogate-2"),
+ (0, animation_1.createAnimation)("PropagateLoader", "25% {transform: translateX(".concat(distance[0], "rem) scale(0.75)}\n 75% {transform: translateX(").concat(distance[0], "rem) scale(0.75)}\n 95% {transform: translateX(0rem) scale(1)}"), "propogate-3"),
+ (0, animation_1.createAnimation)("PropagateLoader", "25% {transform: translateX(".concat(distance[0], "rem) scale(0.75)}\n 50% {transform: translateX(").concat(distance[1], "rem) scale(0.6)}\n 75% {transform: translateX(").concat(distance[1], "rem) scale(0.6)}\n 95% {transform: translateX(0rem) scale(1)}"), "propogate-4"),
+ (0, animation_1.createAnimation)("PropagateLoader", "25% {transform: translateX(".concat(distance[0], "rem) scale(0.75)}\n 50% {transform: translateX(").concat(distance[1], "rem) scale(0.6)}\n 75% {transform: translateX(").concat(distance[2], "rem) scale(0.5)}\n 95% {transform: translateX(0rem) scale(1)}"), "propogate-5"),
+];
+function PropagateLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 15 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var _g = (0, unitConverter_1.parseLengthAndUnit)(size), value = _g.value, unit = _g.unit;
+ var wrapper = __assign({ display: "inherit", position: "relative" }, cssOverride);
+ var style = function (i) {
+ return {
+ position: "absolute",
+ fontSize: "".concat(value / 3).concat(unit),
+ width: "".concat(value).concat(unit),
+ height: "".concat(value).concat(unit),
+ background: color,
+ borderRadius: "50%",
+ animation: "".concat(propagate[i], " ").concat(1.5 / speedMultiplier, "s infinite"),
+ animationFillMode: "forwards",
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(0) }),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) }),
+ React.createElement("span", { style: style(3) }),
+ React.createElement("span", { style: style(4) }),
+ React.createElement("span", { style: style(5) })));
+}
+exports.default = PropagateLoader;
diff --git a/frontend/node_modules/react-spinners/PuffLoader.d.ts b/frontend/node_modules/react-spinners/PuffLoader.d.ts
new file mode 100644
index 000000000..e6ae1d0c8
--- /dev/null
+++ b/frontend/node_modules/react-spinners/PuffLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function PuffLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default PuffLoader;
diff --git a/frontend/node_modules/react-spinners/PuffLoader.js b/frontend/node_modules/react-spinners/PuffLoader.js
new file mode 100644
index 000000000..de121956a
--- /dev/null
+++ b/frontend/node_modules/react-spinners/PuffLoader.js
@@ -0,0 +1,83 @@
+"use strict";
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+var React = __importStar(require("react"));
+var unitConverter_1 = require("./helpers/unitConverter");
+var animation_1 = require("./helpers/animation");
+var puff = [
+ (0, animation_1.createAnimation)("PuffLoader", "0% {transform: scale(0)} 100% {transform: scale(1.0)}", "puff-1"),
+ (0, animation_1.createAnimation)("PuffLoader", "0% {opacity: 1} 100% {opacity: 0}", "puff-2"),
+];
+function PuffLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 60 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var wrapper = __assign({ display: "inherit", position: "relative", width: (0, unitConverter_1.cssValue)(size), height: (0, unitConverter_1.cssValue)(size) }, cssOverride);
+ var style = function (i) {
+ return {
+ position: "absolute",
+ height: (0, unitConverter_1.cssValue)(size),
+ width: (0, unitConverter_1.cssValue)(size),
+ border: "thick solid ".concat(color),
+ borderRadius: "50%",
+ opacity: "1",
+ top: "0",
+ left: "0",
+ animationFillMode: "both",
+ animation: "".concat(puff[0], ", ").concat(puff[1]),
+ animationDuration: "".concat(2 / speedMultiplier, "s"),
+ animationIterationCount: "infinite",
+ animationTimingFunction: "cubic-bezier(0.165, 0.84, 0.44, 1), cubic-bezier(0.3, 0.61, 0.355, 1)",
+ animationDelay: i === 1 ? "-1s" : "0s",
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) })));
+}
+exports.default = PuffLoader;
diff --git a/frontend/node_modules/react-spinners/PulseLoader.d.ts b/frontend/node_modules/react-spinners/PulseLoader.d.ts
new file mode 100644
index 000000000..abf34d4c5
--- /dev/null
+++ b/frontend/node_modules/react-spinners/PulseLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeMarginProps } from "./helpers/props";
+declare function PulseLoader({ loading, color, speedMultiplier, cssOverride, size, margin, ...additionalprops }: LoaderSizeMarginProps): JSX.Element | null;
+export default PulseLoader;
diff --git a/frontend/node_modules/react-spinners/PulseLoader.js b/frontend/node_modules/react-spinners/PulseLoader.js
new file mode 100644
index 000000000..a0823a526
--- /dev/null
+++ b/frontend/node_modules/react-spinners/PulseLoader.js
@@ -0,0 +1,75 @@
+"use strict";
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+var React = __importStar(require("react"));
+var unitConverter_1 = require("./helpers/unitConverter");
+var animation_1 = require("./helpers/animation");
+var pulse = (0, animation_1.createAnimation)("PulseLoader", "0% {transform: scale(1); opacity: 1} 45% {transform: scale(0.1); opacity: 0.7} 80% {transform: scale(1); opacity: 1}", "pulse");
+function PulseLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 15 : _f, _g = _a.margin, margin = _g === void 0 ? 2 : _g, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size", "margin"]);
+ var wrapper = __assign({ display: "inherit" }, cssOverride);
+ var style = function (i) {
+ return {
+ backgroundColor: color,
+ width: (0, unitConverter_1.cssValue)(size),
+ height: (0, unitConverter_1.cssValue)(size),
+ margin: (0, unitConverter_1.cssValue)(margin),
+ borderRadius: "100%",
+ display: "inline-block",
+ animation: "".concat(pulse, " ").concat(0.75 / speedMultiplier, "s ").concat((i * 0.12) / speedMultiplier, "s infinite cubic-bezier(0.2, 0.68, 0.18, 1.08)"),
+ animationFillMode: "both",
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) }),
+ React.createElement("span", { style: style(3) })));
+}
+exports.default = PulseLoader;
diff --git a/frontend/node_modules/react-spinners/README.md b/frontend/node_modules/react-spinners/README.md
new file mode 100644
index 000000000..fb0a00a91
--- /dev/null
+++ b/frontend/node_modules/react-spinners/README.md
@@ -0,0 +1,179 @@
+# React Spinners
+
+[![npm version](https://badge.fury.io/js/react-spinners.svg)][npm_url]
+[![downloads](https://img.shields.io/npm/dt/react-spinners.svg)][npm_url]
+[![license](https://img.shields.io/npm/l/react-spinners.svg)][npm_url]
+
+
+
+[![Coverage Status](https://coveralls.io/repos/github/davidhu2000/react-spinners/badge.svg?branch=main)](https://coveralls.io/github/davidhu2000/react-spinners?branch=master)
+![Dependency Count](https://badgen.net/bundlephobia/dependency-count/react-spinners)
+![Types Included](https://badgen.net/npm/types/react-spinners)
+![Tree Shaking Supported](https://badgen.net/bundlephobia/tree-shaking/react-spinners)
+
+[npm_url]: https://www.npmjs.org/package/react-spinners
+
+A collection of loading spinners with React.js based on [Halogen](https://github.com/yuanyan/halogen).
+
+This package is bootstraped using [react-npm-boilerplate](https://github.com/juliancwirko/react-npm-boilerplate)
+
+## Demo
+
+[Demo Page](https://www.davidhu.io/react-spinners)
+
+[Storybook](https://www.davidhu.io/react-spinners/storybook/)
+
+## Installation
+
+With Yarn:
+
+```bash
+yarn add react-spinners
+```
+
+With npm:
+
+```bash
+npm install --save react-spinners
+```
+
+## Usage
+
+Each loader has their own default properties. You can overwrite the defaults by passing props into the loaders.
+
+Each loader accepts a `loading` prop as a boolean. The loader will render `null` if `loading` is `false`.
+
+### Example
+
+```tsx
+import { useState, CSSProperties } from "react";
+import ClipLoader from "react-spinners/ClipLoader";
+
+const override: CSSProperties = {
+ display: "block",
+ margin: "0 auto",
+ borderColor: "red",
+};
+
+function App() {
+ let [loading, setLoading] = useState(true);
+ let [color, setColor] = useState("#ffffff");
+
+ return (
+
+ setLoading(!loading)}>Toggle Loader
+ setColor(input.target.value)} placeholder="Color of the loader" />
+
+
+
+ );
+}
+
+export default App;
+```
+
+Example using React Class
+
+```tsx
+import React from "react";
+import ClipLoader from "react-spinners/ClipLoader";
+
+const override: React.CSSProperties = {
+ display: "block",
+ margin: "0 auto",
+ borderColor: "red",
+};
+
+class AwesomeComponent extends React.Component {
+ constructor(props) {
+ super(props);
+ this.state = {
+ loading: true,
+ };
+ }
+
+ render() {
+ return (
+
+
+
+ );
+ }
+}
+```
+
+
+
+## Available Loaders, PropTypes, and Default Values
+
+Common default props for all loaders:
+
+```
+loading: true;
+color: "#000000";
+cssOverride: {}
+speedMultiplier: 1;
+```
+
+All valid HTML props such as `aria-*` and `data-*` props are fully supported.
+
+### `color` prop
+
+`color` prop accepts a color hash in the format of `#XXXXXX` or `#XXX`. It also accepts basic colors listed below:
+
+> maroon, red, orange, yellow, olive, green, purple, white,
+> fuchsia, lime, teal, aqua, blue, navy, black, gray, silver
+
+### `cssOverride` prop
+
+The `cssOverride` prop is an object of camelCase styles used to create inline styles on the loaders. Any html css property is valid here.
+
+### `size`, `height`, `width`, and `radius` props
+
+The input to these props can be _number_ or _string_.
+
+- If value is number, the loader will default to css unit `px`.
+- If value is string, the loader will verify the unit against valid css units.
+ - If unit is valid, return the original value
+ - If unit is invalid, output warning console log and default to `px`.
+
+The table below has the default values for each loader.
+
+| Loader | size | height | width | radius | margin |
+| ----------------: | :--: | :----: | :---: | :----: | :----: |
+| BarLoader | | `4` | `100` | |
+| BeatLoader | `15` | | | | `2` |
+| BounceLoader | `60` | | | |
+| CircleLoader | `50` | | | |
+| ClimbingBoxLoader | `15` | | | |
+| ClipLoader | `35` | | | |
+| ClockLoader | `50` | | | |
+| DotLoader | `60` | | | | `2` |
+| FadeLoader | | `15` | `5` | `2` | `2` |
+| GridLoader | `15` | | | |
+| HashLoader | `50` | | | | `2` |
+| MoonLoader | `60` | | | | `2` |
+| PacmanLoader | `25` | | | | `2` |
+| PropagateLoader | `15` | | | |
+| PuffLoader | `60` | | | |
+| PulseLoader | `15` | | | | `2` |
+| RingLoader | `60` | | | | `2` |
+| RiseLoader | `15` | | | | `2` |
+| RotateLoader | `15` | | | | `2` |
+| ScaleLoader | | `35` | `4` | `2` | `2` |
+| SyncLoader | `15` | | | | `2` |
diff --git a/frontend/node_modules/react-spinners/RingLoader.d.ts b/frontend/node_modules/react-spinners/RingLoader.d.ts
new file mode 100644
index 000000000..ebf7a62cb
--- /dev/null
+++ b/frontend/node_modules/react-spinners/RingLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function RingLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default RingLoader;
diff --git a/frontend/node_modules/react-spinners/RingLoader.js b/frontend/node_modules/react-spinners/RingLoader.js
new file mode 100644
index 000000000..2aea521d7
--- /dev/null
+++ b/frontend/node_modules/react-spinners/RingLoader.js
@@ -0,0 +1,79 @@
+"use strict";
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+var React = __importStar(require("react"));
+var unitConverter_1 = require("./helpers/unitConverter");
+var animation_1 = require("./helpers/animation");
+var right = (0, animation_1.createAnimation)("RingLoader", "0% {transform: rotateX(0deg) rotateY(0deg) rotateZ(0deg)} 100% {transform: rotateX(180deg) rotateY(360deg) rotateZ(360deg)}", "right");
+var left = (0, animation_1.createAnimation)("RingLoader", "0% {transform: rotateX(0deg) rotateY(0deg) rotateZ(0deg)} 100% {transform: rotateX(360deg) rotateY(180deg) rotateZ(360deg)}", "left");
+function RingLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 60 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var _g = (0, unitConverter_1.parseLengthAndUnit)(size), value = _g.value, unit = _g.unit;
+ var wrapper = __assign({ display: "inherit", width: (0, unitConverter_1.cssValue)(size), height: (0, unitConverter_1.cssValue)(size), position: "relative" }, cssOverride);
+ var style = function (i) {
+ return {
+ position: "absolute",
+ top: "0",
+ left: "0",
+ width: "".concat(value).concat(unit),
+ height: "".concat(value).concat(unit),
+ border: "".concat(value / 10).concat(unit, " solid ").concat(color),
+ opacity: "0.4",
+ borderRadius: "100%",
+ animationFillMode: "forwards",
+ perspective: "800px",
+ animation: "".concat(i === 1 ? right : left, " ").concat(2 / speedMultiplier, "s 0s infinite linear"),
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) })));
+}
+exports.default = RingLoader;
diff --git a/frontend/node_modules/react-spinners/RiseLoader.d.ts b/frontend/node_modules/react-spinners/RiseLoader.d.ts
new file mode 100644
index 000000000..7ed595882
--- /dev/null
+++ b/frontend/node_modules/react-spinners/RiseLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeMarginProps } from "./helpers/props";
+declare function RiseLoader({ loading, color, speedMultiplier, cssOverride, size, margin, ...additionalprops }: LoaderSizeMarginProps): JSX.Element | null;
+export default RiseLoader;
diff --git a/frontend/node_modules/react-spinners/RiseLoader.js b/frontend/node_modules/react-spinners/RiseLoader.js
new file mode 100644
index 000000000..7961f4fb3
--- /dev/null
+++ b/frontend/node_modules/react-spinners/RiseLoader.js
@@ -0,0 +1,78 @@
+"use strict";
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+var React = __importStar(require("react"));
+var unitConverter_1 = require("./helpers/unitConverter");
+var animation_1 = require("./helpers/animation");
+function RiseLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 15 : _f, _g = _a.margin, margin = _g === void 0 ? 2 : _g, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size", "margin"]);
+ var wrapper = __assign({ display: "inherit" }, cssOverride);
+ var even = (0, animation_1.createAnimation)("RiseLoader", "0% {transform: scale(1.1)}\n 25% {transform: translateY(-".concat(size, "px)}\n 50% {transform: scale(0.4)}\n 75% {transform: translateY(").concat(size, "px)}\n 100% {transform: translateY(0) scale(1.0)}"), "even");
+ var odd = (0, animation_1.createAnimation)("RiseLoader", "0% {transform: scale(0.4)}\n 25% {transform: translateY(".concat(size, "px)}\n 50% {transform: scale(1.1)}\n 75% {transform: translateY(").concat(-size, "px)}\n 100% {transform: translateY(0) scale(0.75)}"), "odd");
+ var style = function (i) {
+ return {
+ backgroundColor: color,
+ width: (0, unitConverter_1.cssValue)(size),
+ height: (0, unitConverter_1.cssValue)(size),
+ margin: (0, unitConverter_1.cssValue)(margin),
+ borderRadius: "100%",
+ display: "inline-block",
+ animation: "".concat(i % 2 === 0 ? even : odd, " ").concat(1 / speedMultiplier, "s 0s infinite cubic-bezier(0.15, 0.46, 0.9, 0.6)"),
+ animationFillMode: "both",
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) }),
+ React.createElement("span", { style: style(3) }),
+ React.createElement("span", { style: style(4) }),
+ React.createElement("span", { style: style(5) })));
+}
+exports.default = RiseLoader;
diff --git a/frontend/node_modules/react-spinners/RotateLoader.d.ts b/frontend/node_modules/react-spinners/RotateLoader.d.ts
new file mode 100644
index 000000000..9577c1805
--- /dev/null
+++ b/frontend/node_modules/react-spinners/RotateLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeMarginProps } from "./helpers/props";
+declare function RotateLoader({ loading, color, speedMultiplier, cssOverride, size, margin, ...additionalprops }: LoaderSizeMarginProps): JSX.Element | null;
+export default RotateLoader;
diff --git a/frontend/node_modules/react-spinners/RotateLoader.js b/frontend/node_modules/react-spinners/RotateLoader.js
new file mode 100644
index 000000000..8a06338fc
--- /dev/null
+++ b/frontend/node_modules/react-spinners/RotateLoader.js
@@ -0,0 +1,78 @@
+"use strict";
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+var React = __importStar(require("react"));
+var unitConverter_1 = require("./helpers/unitConverter");
+var animation_1 = require("./helpers/animation");
+var rotate = (0, animation_1.createAnimation)("RotateLoader", "0% {transform: rotate(0deg)} 50% {transform: rotate(180deg)} 100% {transform: rotate(360deg)}", "rotate");
+function RotateLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 15 : _f, _g = _a.margin, margin = _g === void 0 ? 2 : _g, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size", "margin"]);
+ var _h = (0, unitConverter_1.parseLengthAndUnit)(margin), value = _h.value, unit = _h.unit;
+ var ball = {
+ backgroundColor: color,
+ width: (0, unitConverter_1.cssValue)(size),
+ height: (0, unitConverter_1.cssValue)(size),
+ borderRadius: "100%",
+ };
+ var wrapper = __assign(__assign(__assign({}, ball), { display: "inline-block", position: "relative", animationFillMode: "both", animation: "".concat(rotate, " ").concat(1 / speedMultiplier, "s 0s infinite cubic-bezier(0.7, -0.13, 0.22, 0.86)") }), cssOverride);
+ var style = function (i) {
+ var left = (i % 2 ? -1 : 1) * (26 + value);
+ return {
+ opacity: "0.8",
+ position: "absolute",
+ top: "0",
+ left: "".concat(left).concat(unit),
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: __assign(__assign({}, ball), style(1)) }),
+ React.createElement("span", { style: __assign(__assign({}, ball), style(2)) })));
+}
+exports.default = RotateLoader;
diff --git a/frontend/node_modules/react-spinners/ScaleLoader.d.ts b/frontend/node_modules/react-spinners/ScaleLoader.d.ts
new file mode 100644
index 000000000..23f085479
--- /dev/null
+++ b/frontend/node_modules/react-spinners/ScaleLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderHeightWidthRadiusProps } from "./helpers/props";
+declare function ScaleLoader({ loading, color, speedMultiplier, cssOverride, height, width, radius, margin, ...additionalprops }: LoaderHeightWidthRadiusProps): JSX.Element | null;
+export default ScaleLoader;
diff --git a/frontend/node_modules/react-spinners/ScaleLoader.js b/frontend/node_modules/react-spinners/ScaleLoader.js
new file mode 100644
index 000000000..5516963fc
--- /dev/null
+++ b/frontend/node_modules/react-spinners/ScaleLoader.js
@@ -0,0 +1,77 @@
+"use strict";
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+var React = __importStar(require("react"));
+var unitConverter_1 = require("./helpers/unitConverter");
+var animation_1 = require("./helpers/animation");
+var scale = (0, animation_1.createAnimation)("ScaleLoader", "0% {transform: scaley(1.0)} 50% {transform: scaley(0.4)} 100% {transform: scaley(1.0)}", "scale");
+function ScaleLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.height, height = _f === void 0 ? 35 : _f, _g = _a.width, width = _g === void 0 ? 4 : _g, _h = _a.radius, radius = _h === void 0 ? 2 : _h, _j = _a.margin, margin = _j === void 0 ? 2 : _j, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "height", "width", "radius", "margin"]);
+ var wrapper = __assign({ display: "inherit" }, cssOverride);
+ var style = function (i) {
+ return {
+ backgroundColor: color,
+ width: (0, unitConverter_1.cssValue)(width),
+ height: (0, unitConverter_1.cssValue)(height),
+ margin: (0, unitConverter_1.cssValue)(margin),
+ borderRadius: (0, unitConverter_1.cssValue)(radius),
+ display: "inline-block",
+ animation: "".concat(scale, " ").concat(1 / speedMultiplier, "s ").concat(i * 0.1, "s infinite cubic-bezier(0.2, 0.68, 0.18, 1.08)"),
+ animationFillMode: "both",
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) }),
+ React.createElement("span", { style: style(3) }),
+ React.createElement("span", { style: style(4) }),
+ React.createElement("span", { style: style(5) })));
+}
+exports.default = ScaleLoader;
diff --git a/frontend/node_modules/react-spinners/SkewLoader.d.ts b/frontend/node_modules/react-spinners/SkewLoader.d.ts
new file mode 100644
index 000000000..98cd30f0f
--- /dev/null
+++ b/frontend/node_modules/react-spinners/SkewLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function SkewLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default SkewLoader;
diff --git a/frontend/node_modules/react-spinners/SkewLoader.js b/frontend/node_modules/react-spinners/SkewLoader.js
new file mode 100644
index 000000000..dce6d3d8e
--- /dev/null
+++ b/frontend/node_modules/react-spinners/SkewLoader.js
@@ -0,0 +1,60 @@
+"use strict";
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+var React = __importStar(require("react"));
+var unitConverter_1 = require("./helpers/unitConverter");
+var animation_1 = require("./helpers/animation");
+var skew = (0, animation_1.createAnimation)("SkewLoader", "25% {transform: perspective(100px) rotateX(180deg) rotateY(0)} 50% {transform: perspective(100px) rotateX(180deg) rotateY(180deg)} 75% {transform: perspective(100px) rotateX(0) rotateY(180deg)} 100% {transform: perspective(100px) rotateX(0) rotateY(0)}", "skew");
+function SkewLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 20 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var style = __assign({ width: "0", height: "0", borderLeft: "".concat((0, unitConverter_1.cssValue)(size), " solid transparent"), borderRight: "".concat((0, unitConverter_1.cssValue)(size), " solid transparent"), borderBottom: "".concat((0, unitConverter_1.cssValue)(size), " solid ").concat(color), display: "inline-block", animation: "".concat(skew, " ").concat(3 / speedMultiplier, "s 0s infinite cubic-bezier(0.09, 0.57, 0.49, 0.9)"), animationFillMode: "both" }, cssOverride);
+ if (!loading) {
+ return null;
+ }
+ return React.createElement("span", __assign({ style: style }, additionalprops));
+}
+exports.default = SkewLoader;
diff --git a/frontend/node_modules/react-spinners/SquareLoader.d.ts b/frontend/node_modules/react-spinners/SquareLoader.d.ts
new file mode 100644
index 000000000..2fa2e689d
--- /dev/null
+++ b/frontend/node_modules/react-spinners/SquareLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function SquareLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default SquareLoader;
diff --git a/frontend/node_modules/react-spinners/SquareLoader.js b/frontend/node_modules/react-spinners/SquareLoader.js
new file mode 100644
index 000000000..3db507706
--- /dev/null
+++ b/frontend/node_modules/react-spinners/SquareLoader.js
@@ -0,0 +1,60 @@
+"use strict";
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+var React = __importStar(require("react"));
+var unitConverter_1 = require("./helpers/unitConverter");
+var animation_1 = require("./helpers/animation");
+var square = (0, animation_1.createAnimation)("SquareLoader", "25% {transform: rotateX(180deg) rotateY(0)}\n 50% {transform: rotateX(180deg) rotateY(180deg)} \n 75% {transform: rotateX(0) rotateY(180deg)} \n 100% {transform: rotateX(0) rotateY(0)}", "square");
+function SquareLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 50 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var style = __assign({ backgroundColor: color, width: (0, unitConverter_1.cssValue)(size), height: (0, unitConverter_1.cssValue)(size), display: "inline-block", animation: "".concat(square, " ").concat(3 / speedMultiplier, "s 0s infinite cubic-bezier(0.09, 0.57, 0.49, 0.9)"), animationFillMode: "both" }, cssOverride);
+ if (!loading) {
+ return null;
+ }
+ return React.createElement("span", __assign({ style: style }, additionalprops));
+}
+exports.default = SquareLoader;
diff --git a/frontend/node_modules/react-spinners/SyncLoader.d.ts b/frontend/node_modules/react-spinners/SyncLoader.d.ts
new file mode 100644
index 000000000..252c84820
--- /dev/null
+++ b/frontend/node_modules/react-spinners/SyncLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeMarginProps } from "./helpers/props";
+declare function SyncLoader({ loading, color, speedMultiplier, cssOverride, size, margin, ...additionalprops }: LoaderSizeMarginProps): JSX.Element | null;
+export default SyncLoader;
diff --git a/frontend/node_modules/react-spinners/SyncLoader.js b/frontend/node_modules/react-spinners/SyncLoader.js
new file mode 100644
index 000000000..4152fea14
--- /dev/null
+++ b/frontend/node_modules/react-spinners/SyncLoader.js
@@ -0,0 +1,75 @@
+"use strict";
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+var React = __importStar(require("react"));
+var animation_1 = require("./helpers/animation");
+var unitConverter_1 = require("./helpers/unitConverter");
+var sync = (0, animation_1.createAnimation)("SyncLoader", "33% {transform: translateY(10px)}\n 66% {transform: translateY(-10px)}\n 100% {transform: translateY(0)}", "sync");
+function SyncLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 15 : _f, _g = _a.margin, margin = _g === void 0 ? 2 : _g, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size", "margin"]);
+ var wrapper = __assign({ display: "inherit" }, cssOverride);
+ var style = function (i) {
+ return {
+ backgroundColor: color,
+ width: (0, unitConverter_1.cssValue)(size),
+ height: (0, unitConverter_1.cssValue)(size),
+ margin: (0, unitConverter_1.cssValue)(margin),
+ borderRadius: "100%",
+ display: "inline-block",
+ animation: "".concat(sync, " ").concat(0.6 / speedMultiplier, "s ").concat(i * 0.07, "s infinite ease-in-out"),
+ animationFillMode: "both",
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) }),
+ React.createElement("span", { style: style(3) })));
+}
+exports.default = SyncLoader;
diff --git a/frontend/node_modules/react-spinners/cjs/BarLoader.d.ts b/frontend/node_modules/react-spinners/cjs/BarLoader.d.ts
new file mode 100644
index 000000000..aefdd89cf
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/BarLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderHeightWidthProps } from "./helpers/props";
+declare function BarLoader({ loading, color, speedMultiplier, cssOverride, height, width, ...additionalprops }: LoaderHeightWidthProps): JSX.Element | null;
+export default BarLoader;
diff --git a/frontend/node_modules/react-spinners/cjs/BarLoader.js b/frontend/node_modules/react-spinners/cjs/BarLoader.js
new file mode 100644
index 000000000..ccff19813
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/BarLoader.js
@@ -0,0 +1,78 @@
+"use strict";
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+var React = __importStar(require("react"));
+var unitConverter_1 = require("./helpers/unitConverter");
+var animation_1 = require("./helpers/animation");
+var colors_1 = require("./helpers/colors");
+var long = (0, animation_1.createAnimation)("BarLoader", "0% {left: -35%;right: 100%} 60% {left: 100%;right: -90%} 100% {left: 100%;right: -90%}", "long");
+var short = (0, animation_1.createAnimation)("BarLoader", "0% {left: -200%;right: 100%} 60% {left: 107%;right: -8%} 100% {left: 107%;right: -8%}", "short");
+function BarLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.height, height = _f === void 0 ? 4 : _f, _g = _a.width, width = _g === void 0 ? 100 : _g, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "height", "width"]);
+ var wrapper = __assign({ display: "inherit", position: "relative", width: (0, unitConverter_1.cssValue)(width), height: (0, unitConverter_1.cssValue)(height), overflow: "hidden", backgroundColor: (0, colors_1.calculateRgba)(color, 0.2), backgroundClip: "padding-box" }, cssOverride);
+ var style = function (i) {
+ return {
+ position: "absolute",
+ height: (0, unitConverter_1.cssValue)(height),
+ overflow: "hidden",
+ backgroundColor: color,
+ backgroundClip: "padding-box",
+ display: "block",
+ borderRadius: 2,
+ willChange: "left, right",
+ animationFillMode: "forwards",
+ animation: "".concat(i === 1 ? long : short, " ").concat(2.1 / speedMultiplier, "s ").concat(i === 2 ? "".concat(1.15 / speedMultiplier, "s") : "", " ").concat(i === 1 ? "cubic-bezier(0.65, 0.815, 0.735, 0.395)" : "cubic-bezier(0.165, 0.84, 0.44, 1)", " infinite"),
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) })));
+}
+exports.default = BarLoader;
diff --git a/frontend/node_modules/react-spinners/cjs/BeatLoader.d.ts b/frontend/node_modules/react-spinners/cjs/BeatLoader.d.ts
new file mode 100644
index 000000000..acd998f72
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/BeatLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeMarginProps } from "./helpers/props";
+declare function BeatLoader({ loading, color, speedMultiplier, cssOverride, size, margin, ...additionalprops }: LoaderSizeMarginProps): JSX.Element | null;
+export default BeatLoader;
diff --git a/frontend/node_modules/react-spinners/cjs/BeatLoader.js b/frontend/node_modules/react-spinners/cjs/BeatLoader.js
new file mode 100644
index 000000000..4962a079f
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/BeatLoader.js
@@ -0,0 +1,75 @@
+"use strict";
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+var React = __importStar(require("react"));
+var unitConverter_1 = require("./helpers/unitConverter");
+var animation_1 = require("./helpers/animation");
+var beat = (0, animation_1.createAnimation)("BeatLoader", "50% {transform: scale(0.75);opacity: 0.2} 100% {transform: scale(1);opacity: 1}", "beat");
+function BeatLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 15 : _f, _g = _a.margin, margin = _g === void 0 ? 2 : _g, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size", "margin"]);
+ var wrapper = __assign({ display: "inherit" }, cssOverride);
+ var style = function (i) {
+ return {
+ display: "inline-block",
+ backgroundColor: color,
+ width: (0, unitConverter_1.cssValue)(size),
+ height: (0, unitConverter_1.cssValue)(size),
+ margin: (0, unitConverter_1.cssValue)(margin),
+ borderRadius: "100%",
+ animation: "".concat(beat, " ").concat(0.7 / speedMultiplier, "s ").concat(i % 2 ? "0s" : "".concat(0.35 / speedMultiplier, "s"), " infinite linear"),
+ animationFillMode: "both",
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) }),
+ React.createElement("span", { style: style(3) })));
+}
+exports.default = BeatLoader;
diff --git a/frontend/node_modules/react-spinners/cjs/BounceLoader.d.ts b/frontend/node_modules/react-spinners/cjs/BounceLoader.d.ts
new file mode 100644
index 000000000..16cd11544
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/BounceLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function BounceLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default BounceLoader;
diff --git a/frontend/node_modules/react-spinners/cjs/BounceLoader.js b/frontend/node_modules/react-spinners/cjs/BounceLoader.js
new file mode 100644
index 000000000..d15e3376f
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/BounceLoader.js
@@ -0,0 +1,77 @@
+"use strict";
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+var React = __importStar(require("react"));
+var unitConverter_1 = require("./helpers/unitConverter");
+var animation_1 = require("./helpers/animation");
+var bounce = (0, animation_1.createAnimation)("BounceLoader", "0% {transform: scale(0)} 50% {transform: scale(1.0)} 100% {transform: scale(0)}", "bounce");
+function BounceLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 60 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var style = function (i) {
+ var animationTiming = i === 1 ? "".concat(1 / speedMultiplier, "s") : "0s";
+ return {
+ position: "absolute",
+ height: (0, unitConverter_1.cssValue)(size),
+ width: (0, unitConverter_1.cssValue)(size),
+ backgroundColor: color,
+ borderRadius: "100%",
+ opacity: 0.6,
+ top: 0,
+ left: 0,
+ animationFillMode: "both",
+ animation: "".concat(bounce, " ").concat(2.1 / speedMultiplier, "s ").concat(animationTiming, " infinite ease-in-out"),
+ };
+ };
+ var wrapper = __assign({ display: "inherit", position: "relative", width: (0, unitConverter_1.cssValue)(size), height: (0, unitConverter_1.cssValue)(size) }, cssOverride);
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) })));
+}
+exports.default = BounceLoader;
diff --git a/frontend/node_modules/react-spinners/cjs/CircleLoader.d.ts b/frontend/node_modules/react-spinners/cjs/CircleLoader.d.ts
new file mode 100644
index 000000000..12ec8925f
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/CircleLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function CircleLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default CircleLoader;
diff --git a/frontend/node_modules/react-spinners/cjs/CircleLoader.js b/frontend/node_modules/react-spinners/cjs/CircleLoader.js
new file mode 100644
index 000000000..d305db899
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/CircleLoader.js
@@ -0,0 +1,82 @@
+"use strict";
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+var React = __importStar(require("react"));
+var unitConverter_1 = require("./helpers/unitConverter");
+var animation_1 = require("./helpers/animation");
+var circle = (0, animation_1.createAnimation)("CircleLoader", "0% {transform: rotate(0deg)} 50% {transform: rotate(180deg)} 100% {transform: rotate(360deg)}", "circle");
+function CircleLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 50 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var wrapper = __assign({ display: "inherit", position: "relative", width: (0, unitConverter_1.cssValue)(size), height: (0, unitConverter_1.cssValue)(size) }, cssOverride);
+ var style = function (i) {
+ var _a = (0, unitConverter_1.parseLengthAndUnit)(size), value = _a.value, unit = _a.unit;
+ return {
+ position: "absolute",
+ height: "".concat(value * (1 - i / 10)).concat(unit),
+ width: "".concat(value * (1 - i / 10)).concat(unit),
+ borderTop: "1px solid ".concat(color),
+ borderBottom: "none",
+ borderLeft: "1px solid ".concat(color),
+ borderRight: "none",
+ borderRadius: "100%",
+ transition: "2s",
+ top: "".concat(i * 0.7 * 2.5, "%"),
+ left: "".concat(i * 0.35 * 2.5, "%"),
+ animation: "".concat(circle, " ").concat(1 / speedMultiplier, "s ").concat((i * 0.2) / speedMultiplier, "s infinite linear"),
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(0) }),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) }),
+ React.createElement("span", { style: style(3) }),
+ React.createElement("span", { style: style(4) })));
+}
+exports.default = CircleLoader;
diff --git a/frontend/node_modules/react-spinners/cjs/ClimbingBoxLoader.d.ts b/frontend/node_modules/react-spinners/cjs/ClimbingBoxLoader.d.ts
new file mode 100644
index 000000000..12660b80d
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/ClimbingBoxLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function ClimbingBoxLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default ClimbingBoxLoader;
diff --git a/frontend/node_modules/react-spinners/cjs/ClimbingBoxLoader.js b/frontend/node_modules/react-spinners/cjs/ClimbingBoxLoader.js
new file mode 100644
index 000000000..3488acf70
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/ClimbingBoxLoader.js
@@ -0,0 +1,95 @@
+"use strict";
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+var React = __importStar(require("react"));
+var unitConverter_1 = require("./helpers/unitConverter");
+var animation_1 = require("./helpers/animation");
+var climbingBox = (0, animation_1.createAnimation)("ClimbingBoxLoader", "0% {transform:translate(0, -1em) rotate(-45deg)}\n 5% {transform:translate(0, -1em) rotate(-50deg)}\n 20% {transform:translate(1em, -2em) rotate(47deg)}\n 25% {transform:translate(1em, -2em) rotate(45deg)}\n 30% {transform:translate(1em, -2em) rotate(40deg)}\n 45% {transform:translate(2em, -3em) rotate(137deg)}\n 50% {transform:translate(2em, -3em) rotate(135deg)}\n 55% {transform:translate(2em, -3em) rotate(130deg)}\n 70% {transform:translate(3em, -4em) rotate(217deg)}\n 75% {transform:translate(3em, -4em) rotate(220deg)}\n 100% {transform:translate(0, -1em) rotate(-225deg)}", "climbingBox");
+function ClimbingBoxLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 15 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var container = __assign({ display: "inherit", position: "relative", width: "7.1em", height: "7.1em" }, cssOverride);
+ var wrapper = {
+ position: "absolute",
+ top: "50%",
+ left: "50%",
+ marginTop: "-2.7em",
+ marginLeft: "-2.7em",
+ width: "5.4em",
+ height: "5.4em",
+ fontSize: (0, unitConverter_1.cssValue)(size),
+ };
+ var style = {
+ position: "absolute",
+ left: "0",
+ bottom: "-0.1em",
+ height: "1em",
+ width: "1em",
+ backgroundColor: "transparent",
+ borderRadius: "15%",
+ border: "0.25em solid ".concat(color),
+ transform: "translate(0, -1em) rotate(-45deg)",
+ animationFillMode: "both",
+ animation: "".concat(climbingBox, " ").concat(2.5 / speedMultiplier, "s infinite cubic-bezier(0.79, 0, 0.47, 0.97)"),
+ };
+ var hill = {
+ position: "absolute",
+ width: "7.1em",
+ height: "7.1em",
+ top: "1.7em",
+ left: "1.7em",
+ borderLeft: "0.25em solid ".concat(color),
+ transform: "rotate(45deg)",
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: container }, additionalprops),
+ React.createElement("span", { style: wrapper },
+ React.createElement("span", { style: style }),
+ React.createElement("span", { style: hill }))));
+}
+exports.default = ClimbingBoxLoader;
diff --git a/frontend/node_modules/react-spinners/cjs/ClipLoader.d.ts b/frontend/node_modules/react-spinners/cjs/ClipLoader.d.ts
new file mode 100644
index 000000000..336d685c2
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/ClipLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function ClipLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default ClipLoader;
diff --git a/frontend/node_modules/react-spinners/cjs/ClipLoader.js b/frontend/node_modules/react-spinners/cjs/ClipLoader.js
new file mode 100644
index 000000000..2fae13765
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/ClipLoader.js
@@ -0,0 +1,60 @@
+"use strict";
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+var React = __importStar(require("react"));
+var unitConverter_1 = require("./helpers/unitConverter");
+var animation_1 = require("./helpers/animation");
+var clip = (0, animation_1.createAnimation)("ClipLoader", "0% {transform: rotate(0deg) scale(1)} 50% {transform: rotate(180deg) scale(0.8)} 100% {transform: rotate(360deg) scale(1)}", "clip");
+function ClipLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 35 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var style = __assign({ background: "transparent !important", width: (0, unitConverter_1.cssValue)(size), height: (0, unitConverter_1.cssValue)(size), borderRadius: "100%", border: "2px solid", borderTopColor: color, borderBottomColor: "transparent", borderLeftColor: color, borderRightColor: color, display: "inline-block", animation: "".concat(clip, " ").concat(0.75 / speedMultiplier, "s 0s infinite linear"), animationFillMode: "both" }, cssOverride);
+ if (!loading) {
+ return null;
+ }
+ return React.createElement("span", __assign({ style: style }, additionalprops));
+}
+exports.default = ClipLoader;
diff --git a/frontend/node_modules/react-spinners/cjs/ClockLoader.d.ts b/frontend/node_modules/react-spinners/cjs/ClockLoader.d.ts
new file mode 100644
index 000000000..57785be37
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/ClockLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function ClockLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default ClockLoader;
diff --git a/frontend/node_modules/react-spinners/cjs/ClockLoader.js b/frontend/node_modules/react-spinners/cjs/ClockLoader.js
new file mode 100644
index 000000000..367b7a5ad
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/ClockLoader.js
@@ -0,0 +1,83 @@
+"use strict";
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+var React = __importStar(require("react"));
+var unitConverter_1 = require("./helpers/unitConverter");
+var animation_1 = require("./helpers/animation");
+var rotate = (0, animation_1.createAnimation)("ClockLoader", "100% { transform: rotate(360deg) }", "rotate");
+function ClockLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 50 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var _g = (0, unitConverter_1.parseLengthAndUnit)(size), value = _g.value, unit = _g.unit;
+ var wrapper = __assign({ display: "inherit", position: "relative", width: "".concat(value).concat(unit), height: "".concat(value).concat(unit), backgroundColor: "transparent", boxShadow: "inset 0px 0px 0px 2px ".concat(color), borderRadius: "50%" }, cssOverride);
+ var minute = {
+ position: "absolute",
+ backgroundColor: color,
+ width: "".concat(value / 3, "px"),
+ height: "2px",
+ top: "".concat(value / 2 - 1, "px"),
+ left: "".concat(value / 2 - 1, "px"),
+ transformOrigin: "1px 1px",
+ animation: "".concat(rotate, " ").concat(8 / speedMultiplier, "s linear infinite"),
+ };
+ var hour = {
+ position: "absolute",
+ backgroundColor: color,
+ width: "".concat(value / 2.4, "px"),
+ height: "2px",
+ top: "".concat(value / 2 - 1, "px"),
+ left: "".concat(value / 2 - 1, "px"),
+ transformOrigin: "1px 1px",
+ animation: "".concat(rotate, " ").concat(2 / speedMultiplier, "s linear infinite"),
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: hour }),
+ React.createElement("span", { style: minute })));
+}
+exports.default = ClockLoader;
diff --git a/frontend/node_modules/react-spinners/cjs/DotLoader.d.ts b/frontend/node_modules/react-spinners/cjs/DotLoader.d.ts
new file mode 100644
index 000000000..f3cd003ad
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/DotLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function DotLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default DotLoader;
diff --git a/frontend/node_modules/react-spinners/cjs/DotLoader.js b/frontend/node_modules/react-spinners/cjs/DotLoader.js
new file mode 100644
index 000000000..18081c262
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/DotLoader.js
@@ -0,0 +1,77 @@
+"use strict";
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+var React = __importStar(require("react"));
+var unitConverter_1 = require("./helpers/unitConverter");
+var animation_1 = require("./helpers/animation");
+var rotate = (0, animation_1.createAnimation)("DotLoader", "100% {transform: rotate(360deg)}", "rotate");
+var bounce = (0, animation_1.createAnimation)("DotLoader", "0%, 100% {transform: scale(0)} 50% {transform: scale(1.0)}", "bounce");
+function DotLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 60 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var wrapper = __assign({ display: "inherit", position: "relative", width: (0, unitConverter_1.cssValue)(size), height: (0, unitConverter_1.cssValue)(size), animationFillMode: "forwards", animation: "".concat(rotate, " ").concat(2 / speedMultiplier, "s 0s infinite linear") }, cssOverride);
+ var style = function (i) {
+ var _a = (0, unitConverter_1.parseLengthAndUnit)(size), value = _a.value, unit = _a.unit;
+ return {
+ position: "absolute",
+ top: i % 2 ? "0" : "auto",
+ bottom: i % 2 ? "auto" : "0",
+ height: "".concat(value / 2).concat(unit),
+ width: "".concat(value / 2).concat(unit),
+ backgroundColor: color,
+ borderRadius: "100%",
+ animationFillMode: "forwards",
+ animation: "".concat(bounce, " ").concat(2 / speedMultiplier, "s ").concat(i === 2 ? "1s" : "0s", " infinite linear"),
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) })));
+}
+exports.default = DotLoader;
diff --git a/frontend/node_modules/react-spinners/cjs/FadeLoader.d.ts b/frontend/node_modules/react-spinners/cjs/FadeLoader.d.ts
new file mode 100644
index 000000000..98053e8e4
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/FadeLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderHeightWidthRadiusProps } from "./helpers/props";
+declare function FadeLoader({ loading, color, speedMultiplier, cssOverride, height, width, radius, margin, ...additionalprops }: LoaderHeightWidthRadiusProps): JSX.Element | null;
+export default FadeLoader;
diff --git a/frontend/node_modules/react-spinners/cjs/FadeLoader.js b/frontend/node_modules/react-spinners/cjs/FadeLoader.js
new file mode 100644
index 000000000..38f96db1f
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/FadeLoader.js
@@ -0,0 +1,92 @@
+"use strict";
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+var React = __importStar(require("react"));
+var unitConverter_1 = require("./helpers/unitConverter");
+var animation_1 = require("./helpers/animation");
+var fade = (0, animation_1.createAnimation)("FadeLoader", "50% {opacity: 0.3} 100% {opacity: 1}", "fade");
+function FadeLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.height, height = _f === void 0 ? 15 : _f, _g = _a.width, width = _g === void 0 ? 5 : _g, _h = _a.radius, radius = _h === void 0 ? 2 : _h, _j = _a.margin, margin = _j === void 0 ? 2 : _j, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "height", "width", "radius", "margin"]);
+ var value = (0, unitConverter_1.parseLengthAndUnit)(margin).value;
+ var radiusValue = value + 18;
+ var quarter = radiusValue / 2 + radiusValue / 5.5;
+ var wrapper = __assign({ display: "inherit", position: "relative", fontSize: "0", top: radiusValue, left: radiusValue, width: "".concat(radiusValue * 3, "px"), height: "".concat(radiusValue * 3, "px") }, cssOverride);
+ var style = function (i) {
+ return {
+ position: "absolute",
+ width: (0, unitConverter_1.cssValue)(width),
+ height: (0, unitConverter_1.cssValue)(height),
+ margin: (0, unitConverter_1.cssValue)(margin),
+ backgroundColor: color,
+ borderRadius: (0, unitConverter_1.cssValue)(radius),
+ transition: "2s",
+ animationFillMode: "both",
+ animation: "".concat(fade, " ").concat(1.2 / speedMultiplier, "s ").concat(i * 0.12, "s infinite ease-in-out"),
+ };
+ };
+ var a = __assign(__assign({}, style(1)), { top: "".concat(radiusValue, "px"), left: "0" });
+ var b = __assign(__assign({}, style(2)), { top: "".concat(quarter, "px"), left: "".concat(quarter, "px"), transform: "rotate(-45deg)" });
+ var c = __assign(__assign({}, style(3)), { top: "0", left: "".concat(radiusValue, "px"), transform: "rotate(90deg)" });
+ var d = __assign(__assign({}, style(4)), { top: "".concat(-1 * quarter, "px"), left: "".concat(quarter, "px"), transform: "rotate(45deg)" });
+ var e = __assign(__assign({}, style(5)), { top: "".concat(-1 * radiusValue, "px"), left: "0" });
+ var f = __assign(__assign({}, style(6)), { top: "".concat(-1 * quarter, "px"), left: "".concat(-1 * quarter, "px"), transform: "rotate(-45deg)" });
+ var g = __assign(__assign({}, style(7)), { top: "0", left: "".concat(-1 * radiusValue, "px"), transform: "rotate(90deg)" });
+ var h = __assign(__assign({}, style(8)), { top: "".concat(quarter, "px"), left: "".concat(-1 * quarter, "px"), transform: "rotate(45deg)" });
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: a }),
+ React.createElement("span", { style: b }),
+ React.createElement("span", { style: c }),
+ React.createElement("span", { style: d }),
+ React.createElement("span", { style: e }),
+ React.createElement("span", { style: f }),
+ React.createElement("span", { style: g }),
+ React.createElement("span", { style: h })));
+}
+exports.default = FadeLoader;
diff --git a/frontend/node_modules/react-spinners/cjs/GridLoader.d.ts b/frontend/node_modules/react-spinners/cjs/GridLoader.d.ts
new file mode 100644
index 000000000..06fa46b8c
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/GridLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeMarginProps } from "./helpers/props";
+declare function GridLoader({ loading, color, speedMultiplier, cssOverride, size, margin, ...additionalprops }: LoaderSizeMarginProps): JSX.Element | null;
+export default GridLoader;
diff --git a/frontend/node_modules/react-spinners/cjs/GridLoader.js b/frontend/node_modules/react-spinners/cjs/GridLoader.js
new file mode 100644
index 000000000..f3a67bcb7
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/GridLoader.js
@@ -0,0 +1,89 @@
+"use strict";
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+var React = __importStar(require("react"));
+var unitConverter_1 = require("./helpers/unitConverter");
+var animation_1 = require("./helpers/animation");
+var grid = (0, animation_1.createAnimation)("GridLoader", "0% {transform: scale(1)} 50% {transform: scale(0.5); opacity: 0.7} 100% {transform: scale(1); opacity: 1}", "grid");
+var random = function (top) { return Math.random() * top; };
+function GridLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 15 : _f, _g = _a.margin, margin = _g === void 0 ? 2 : _g, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size", "margin"]);
+ var sizeWithUnit = (0, unitConverter_1.parseLengthAndUnit)(size);
+ var marginWithUnit = (0, unitConverter_1.parseLengthAndUnit)(margin);
+ var width = parseFloat(sizeWithUnit.value.toString()) * 3 + parseFloat(marginWithUnit.value.toString()) * 6;
+ var wrapper = __assign({ width: "".concat(width).concat(sizeWithUnit.unit), fontSize: 0, display: "inline-block" }, cssOverride);
+ var style = function (rand) {
+ return {
+ display: "inline-block",
+ backgroundColor: color,
+ width: "".concat((0, unitConverter_1.cssValue)(size)),
+ height: "".concat((0, unitConverter_1.cssValue)(size)),
+ margin: (0, unitConverter_1.cssValue)(margin),
+ borderRadius: "100%",
+ animationFillMode: "both",
+ animation: "".concat(grid, " ").concat((rand / 100 + 0.6) / speedMultiplier, "s ").concat(rand / 100 - 0.2, "s infinite ease"),
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops, { ref: function (node) {
+ if (node) {
+ node.style.setProperty("width", "".concat(width).concat(sizeWithUnit.unit), "important");
+ }
+ } }),
+ React.createElement("span", { style: style(random(100)) }),
+ React.createElement("span", { style: style(random(100)) }),
+ React.createElement("span", { style: style(random(100)) }),
+ React.createElement("span", { style: style(random(100)) }),
+ React.createElement("span", { style: style(random(100)) }),
+ React.createElement("span", { style: style(random(100)) }),
+ React.createElement("span", { style: style(random(100)) }),
+ React.createElement("span", { style: style(random(100)) }),
+ React.createElement("span", { style: style(random(100)) })));
+}
+exports.default = GridLoader;
diff --git a/frontend/node_modules/react-spinners/cjs/HashLoader.d.ts b/frontend/node_modules/react-spinners/cjs/HashLoader.d.ts
new file mode 100644
index 000000000..ca1763ff3
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/HashLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function HashLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default HashLoader;
diff --git a/frontend/node_modules/react-spinners/cjs/HashLoader.js b/frontend/node_modules/react-spinners/cjs/HashLoader.js
new file mode 100644
index 000000000..55d43683f
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/HashLoader.js
@@ -0,0 +1,83 @@
+"use strict";
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+var React = __importStar(require("react"));
+var colors_1 = require("./helpers/colors");
+var unitConverter_1 = require("./helpers/unitConverter");
+var animation_1 = require("./helpers/animation");
+function HashLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 50 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var _g = (0, unitConverter_1.parseLengthAndUnit)(size), value = _g.value, unit = _g.unit;
+ var wrapper = __assign({ display: "inherit", position: "relative", width: (0, unitConverter_1.cssValue)(size), height: (0, unitConverter_1.cssValue)(size), transform: "rotate(165deg)" }, cssOverride);
+ var thickness = value / 5;
+ var lat = (value - thickness) / 2;
+ var offset = lat - thickness;
+ var colorValue = (0, colors_1.calculateRgba)(color, 0.75);
+ var before = (0, animation_1.createAnimation)("HashLoader", "0% {width: ".concat(thickness, "px; box-shadow: ").concat(lat, "px ").concat(-offset, "px ").concat(colorValue, ", ").concat(-lat, "px ").concat(offset, "px ").concat(colorValue, "}\n 35% {width: ").concat((0, unitConverter_1.cssValue)(size), "; box-shadow: 0 ").concat(-offset, "px ").concat(colorValue, ", 0 ").concat(offset, "px ").concat(colorValue, "}\n 70% {width: ").concat(thickness, "px; box-shadow: ").concat(-lat, "px ").concat(-offset, "px ").concat(colorValue, ", ").concat(lat, "px ").concat(offset, "px ").concat(colorValue, "}\n 100% {box-shadow: ").concat(lat, "px ").concat(-offset, "px ").concat(colorValue, ", ").concat(-lat, "px ").concat(offset, "px ").concat(colorValue, "}"), "before");
+ var after = (0, animation_1.createAnimation)("HashLoader", "0% {height: ".concat(thickness, "px; box-shadow: ").concat(offset, "px ").concat(lat, "px ").concat(color, ", ").concat(-offset, "px ").concat(-lat, "px ").concat(color, "}\n 35% {height: ").concat((0, unitConverter_1.cssValue)(size), "; box-shadow: ").concat(offset, "px 0 ").concat(color, ", ").concat(-offset, "px 0 ").concat(color, "}\n 70% {height: ").concat(thickness, "px; box-shadow: ").concat(offset, "px ").concat(-lat, "px ").concat(color, ", ").concat(-offset, "px ").concat(lat, "px ").concat(color, "}\n 100% {box-shadow: ").concat(offset, "px ").concat(lat, "px ").concat(color, ", ").concat(-offset, "px ").concat(-lat, "px ").concat(color, "}"), "after");
+ var style = function (i) {
+ return {
+ position: "absolute",
+ top: "50%",
+ left: "50%",
+ display: "block",
+ width: "".concat(value / 5).concat(unit),
+ height: "".concat(value / 5).concat(unit),
+ borderRadius: "".concat(value / 10).concat(unit),
+ transform: "translate(-50%, -50%)",
+ animationFillMode: "none",
+ animation: "".concat(i === 1 ? before : after, " ").concat(2 / speedMultiplier, "s infinite"),
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) })));
+}
+exports.default = HashLoader;
diff --git a/frontend/node_modules/react-spinners/cjs/MoonLoader.d.ts b/frontend/node_modules/react-spinners/cjs/MoonLoader.d.ts
new file mode 100644
index 000000000..2cf77a2c2
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/MoonLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function MoonLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default MoonLoader;
diff --git a/frontend/node_modules/react-spinners/cjs/MoonLoader.js b/frontend/node_modules/react-spinners/cjs/MoonLoader.js
new file mode 100644
index 000000000..a0e850123
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/MoonLoader.js
@@ -0,0 +1,73 @@
+"use strict";
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+var React = __importStar(require("react"));
+var unitConverter_1 = require("./helpers/unitConverter");
+var animation_1 = require("./helpers/animation");
+var moon = (0, animation_1.createAnimation)("MoonLoader", "100% {transform: rotate(360deg)}", "moon");
+function MoonLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 60 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var _g = (0, unitConverter_1.parseLengthAndUnit)(size), value = _g.value, unit = _g.unit;
+ var moonSize = value / 7;
+ var wrapper = __assign({ display: "inherit", position: "relative", width: "".concat("".concat(value + moonSize * 2).concat(unit)), height: "".concat("".concat(value + moonSize * 2).concat(unit)), animation: "".concat(moon, " ").concat(0.6 / speedMultiplier, "s 0s infinite linear"), animationFillMode: "forwards" }, cssOverride);
+ var ballStyle = function (size) {
+ return {
+ width: (0, unitConverter_1.cssValue)(size),
+ height: (0, unitConverter_1.cssValue)(size),
+ borderRadius: "100%",
+ };
+ };
+ var ball = __assign(__assign({}, ballStyle(moonSize)), { backgroundColor: "".concat(color), opacity: "0.8", position: "absolute", top: "".concat("".concat(value / 2 - moonSize / 2).concat(unit)), animation: "".concat(moon, " ").concat(0.6 / speedMultiplier, "s 0s infinite linear"), animationFillMode: "forwards" });
+ var circle = __assign(__assign({}, ballStyle(value)), { border: "".concat(moonSize, "px solid ").concat(color), opacity: "0.1", boxSizing: "content-box", position: "absolute" });
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: ball }),
+ React.createElement("span", { style: circle })));
+}
+exports.default = MoonLoader;
diff --git a/frontend/node_modules/react-spinners/cjs/PacmanLoader.d.ts b/frontend/node_modules/react-spinners/cjs/PacmanLoader.d.ts
new file mode 100644
index 000000000..e8ad135e3
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/PacmanLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeMarginProps } from "./helpers/props";
+declare function PacmanLoader({ loading, color, speedMultiplier, cssOverride, size, margin, ...additionalprops }: LoaderSizeMarginProps): JSX.Element | null;
+export default PacmanLoader;
diff --git a/frontend/node_modules/react-spinners/cjs/PacmanLoader.js b/frontend/node_modules/react-spinners/cjs/PacmanLoader.js
new file mode 100644
index 000000000..5417b20c3
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/PacmanLoader.js
@@ -0,0 +1,104 @@
+"use strict";
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+var React = __importStar(require("react"));
+var unitConverter_1 = require("./helpers/unitConverter");
+var animation_1 = require("./helpers/animation");
+var pacman = [
+ (0, animation_1.createAnimation)("PacmanLoader", "0% {transform: rotate(0deg)} 50% {transform: rotate(-44deg)}", "pacman-1"),
+ (0, animation_1.createAnimation)("PacmanLoader", "0% {transform: rotate(0deg)} 50% {transform: rotate(44deg)}", "pacman-2"),
+];
+function PacmanLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 25 : _f, _g = _a.margin, margin = _g === void 0 ? 2 : _g, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size", "margin"]);
+ var _h = (0, unitConverter_1.parseLengthAndUnit)(size), value = _h.value, unit = _h.unit;
+ var wrapper = __assign({ display: "inherit", position: "relative", fontSize: 0, height: "".concat(value * 2).concat(unit), width: "".concat(value * 2).concat(unit) }, cssOverride);
+ var ball = (0, animation_1.createAnimation)("PacmanLoader", "75% {opacity: 0.7}\n 100% {transform: translate(".concat("".concat(-4 * value).concat(unit), ", ").concat("".concat(-value / 4).concat(unit), ")}"), "ball");
+ var ballStyle = function (i) {
+ return {
+ width: "".concat(value / 3).concat(unit),
+ height: "".concat(value / 3).concat(unit),
+ backgroundColor: color,
+ margin: (0, unitConverter_1.cssValue)(margin),
+ borderRadius: "100%",
+ transform: "translate(0, ".concat("".concat(-value / 4).concat(unit), ")"),
+ position: "absolute",
+ top: "".concat(value).concat(unit),
+ left: "".concat(value * 4).concat(unit),
+ animation: "".concat(ball, " ").concat(1 / speedMultiplier, "s ").concat(i * 0.25, "s infinite linear"),
+ animationFillMode: "both",
+ };
+ };
+ var s1 = "".concat((0, unitConverter_1.cssValue)(size), " solid transparent");
+ var s2 = "".concat((0, unitConverter_1.cssValue)(size), " solid ").concat(color);
+ var pacmanStyle = function (i) {
+ return {
+ width: 0,
+ height: 0,
+ borderRight: s1,
+ borderTop: i === 0 ? s1 : s2,
+ borderLeft: s2,
+ borderBottom: i === 0 ? s2 : s1,
+ borderRadius: (0, unitConverter_1.cssValue)(size),
+ position: "absolute",
+ animation: "".concat(pacman[i], " ").concat(0.8 / speedMultiplier, "s infinite ease-in-out"),
+ animationFillMode: "both",
+ };
+ };
+ var pac = pacmanStyle(0);
+ var man = pacmanStyle(1);
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: pac }),
+ React.createElement("span", { style: man }),
+ React.createElement("span", { style: ballStyle(2) }),
+ React.createElement("span", { style: ballStyle(3) }),
+ React.createElement("span", { style: ballStyle(4) }),
+ React.createElement("span", { style: ballStyle(5) })));
+}
+exports.default = PacmanLoader;
diff --git a/frontend/node_modules/react-spinners/cjs/PropagateLoader.d.ts b/frontend/node_modules/react-spinners/cjs/PropagateLoader.d.ts
new file mode 100644
index 000000000..ff39bb03e
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/PropagateLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function PropagateLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default PropagateLoader;
diff --git a/frontend/node_modules/react-spinners/cjs/PropagateLoader.js b/frontend/node_modules/react-spinners/cjs/PropagateLoader.js
new file mode 100644
index 000000000..f7b955ae9
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/PropagateLoader.js
@@ -0,0 +1,88 @@
+"use strict";
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+var React = __importStar(require("react"));
+var unitConverter_1 = require("./helpers/unitConverter");
+var animation_1 = require("./helpers/animation");
+// 1.5 4.5 7.5
+var distance = [1, 3, 5];
+var propagate = [
+ (0, animation_1.createAnimation)("PropagateLoader", "25% {transform: translateX(-".concat(distance[0], "rem) scale(0.75)}\n 50% {transform: translateX(-").concat(distance[1], "rem) scale(0.6)}\n 75% {transform: translateX(-").concat(distance[2], "rem) scale(0.5)}\n 95% {transform: translateX(0rem) scale(1)}"), "propogate-0"),
+ (0, animation_1.createAnimation)("PropagateLoader", "25% {transform: translateX(-".concat(distance[0], "rem) scale(0.75)}\n 50% {transform: translateX(-").concat(distance[1], "rem) scale(0.6)}\n 75% {transform: translateX(-").concat(distance[1], "rem) scale(0.6)}\n 95% {transform: translateX(0rem) scale(1)}"), "propogate-1"),
+ (0, animation_1.createAnimation)("PropagateLoader", "25% {transform: translateX(-".concat(distance[0], "rem) scale(0.75)}\n 75% {transform: translateX(-").concat(distance[0], "rem) scale(0.75)}\n 95% {transform: translateX(0rem) scale(1)}"), "propogate-2"),
+ (0, animation_1.createAnimation)("PropagateLoader", "25% {transform: translateX(".concat(distance[0], "rem) scale(0.75)}\n 75% {transform: translateX(").concat(distance[0], "rem) scale(0.75)}\n 95% {transform: translateX(0rem) scale(1)}"), "propogate-3"),
+ (0, animation_1.createAnimation)("PropagateLoader", "25% {transform: translateX(".concat(distance[0], "rem) scale(0.75)}\n 50% {transform: translateX(").concat(distance[1], "rem) scale(0.6)}\n 75% {transform: translateX(").concat(distance[1], "rem) scale(0.6)}\n 95% {transform: translateX(0rem) scale(1)}"), "propogate-4"),
+ (0, animation_1.createAnimation)("PropagateLoader", "25% {transform: translateX(".concat(distance[0], "rem) scale(0.75)}\n 50% {transform: translateX(").concat(distance[1], "rem) scale(0.6)}\n 75% {transform: translateX(").concat(distance[2], "rem) scale(0.5)}\n 95% {transform: translateX(0rem) scale(1)}"), "propogate-5"),
+];
+function PropagateLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 15 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var _g = (0, unitConverter_1.parseLengthAndUnit)(size), value = _g.value, unit = _g.unit;
+ var wrapper = __assign({ display: "inherit", position: "relative" }, cssOverride);
+ var style = function (i) {
+ return {
+ position: "absolute",
+ fontSize: "".concat(value / 3).concat(unit),
+ width: "".concat(value).concat(unit),
+ height: "".concat(value).concat(unit),
+ background: color,
+ borderRadius: "50%",
+ animation: "".concat(propagate[i], " ").concat(1.5 / speedMultiplier, "s infinite"),
+ animationFillMode: "forwards",
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(0) }),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) }),
+ React.createElement("span", { style: style(3) }),
+ React.createElement("span", { style: style(4) }),
+ React.createElement("span", { style: style(5) })));
+}
+exports.default = PropagateLoader;
diff --git a/frontend/node_modules/react-spinners/cjs/PuffLoader.d.ts b/frontend/node_modules/react-spinners/cjs/PuffLoader.d.ts
new file mode 100644
index 000000000..e6ae1d0c8
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/PuffLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function PuffLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default PuffLoader;
diff --git a/frontend/node_modules/react-spinners/cjs/PuffLoader.js b/frontend/node_modules/react-spinners/cjs/PuffLoader.js
new file mode 100644
index 000000000..de121956a
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/PuffLoader.js
@@ -0,0 +1,83 @@
+"use strict";
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+var React = __importStar(require("react"));
+var unitConverter_1 = require("./helpers/unitConverter");
+var animation_1 = require("./helpers/animation");
+var puff = [
+ (0, animation_1.createAnimation)("PuffLoader", "0% {transform: scale(0)} 100% {transform: scale(1.0)}", "puff-1"),
+ (0, animation_1.createAnimation)("PuffLoader", "0% {opacity: 1} 100% {opacity: 0}", "puff-2"),
+];
+function PuffLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 60 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var wrapper = __assign({ display: "inherit", position: "relative", width: (0, unitConverter_1.cssValue)(size), height: (0, unitConverter_1.cssValue)(size) }, cssOverride);
+ var style = function (i) {
+ return {
+ position: "absolute",
+ height: (0, unitConverter_1.cssValue)(size),
+ width: (0, unitConverter_1.cssValue)(size),
+ border: "thick solid ".concat(color),
+ borderRadius: "50%",
+ opacity: "1",
+ top: "0",
+ left: "0",
+ animationFillMode: "both",
+ animation: "".concat(puff[0], ", ").concat(puff[1]),
+ animationDuration: "".concat(2 / speedMultiplier, "s"),
+ animationIterationCount: "infinite",
+ animationTimingFunction: "cubic-bezier(0.165, 0.84, 0.44, 1), cubic-bezier(0.3, 0.61, 0.355, 1)",
+ animationDelay: i === 1 ? "-1s" : "0s",
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) })));
+}
+exports.default = PuffLoader;
diff --git a/frontend/node_modules/react-spinners/cjs/PulseLoader.d.ts b/frontend/node_modules/react-spinners/cjs/PulseLoader.d.ts
new file mode 100644
index 000000000..abf34d4c5
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/PulseLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeMarginProps } from "./helpers/props";
+declare function PulseLoader({ loading, color, speedMultiplier, cssOverride, size, margin, ...additionalprops }: LoaderSizeMarginProps): JSX.Element | null;
+export default PulseLoader;
diff --git a/frontend/node_modules/react-spinners/cjs/PulseLoader.js b/frontend/node_modules/react-spinners/cjs/PulseLoader.js
new file mode 100644
index 000000000..a0823a526
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/PulseLoader.js
@@ -0,0 +1,75 @@
+"use strict";
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+var React = __importStar(require("react"));
+var unitConverter_1 = require("./helpers/unitConverter");
+var animation_1 = require("./helpers/animation");
+var pulse = (0, animation_1.createAnimation)("PulseLoader", "0% {transform: scale(1); opacity: 1} 45% {transform: scale(0.1); opacity: 0.7} 80% {transform: scale(1); opacity: 1}", "pulse");
+function PulseLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 15 : _f, _g = _a.margin, margin = _g === void 0 ? 2 : _g, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size", "margin"]);
+ var wrapper = __assign({ display: "inherit" }, cssOverride);
+ var style = function (i) {
+ return {
+ backgroundColor: color,
+ width: (0, unitConverter_1.cssValue)(size),
+ height: (0, unitConverter_1.cssValue)(size),
+ margin: (0, unitConverter_1.cssValue)(margin),
+ borderRadius: "100%",
+ display: "inline-block",
+ animation: "".concat(pulse, " ").concat(0.75 / speedMultiplier, "s ").concat((i * 0.12) / speedMultiplier, "s infinite cubic-bezier(0.2, 0.68, 0.18, 1.08)"),
+ animationFillMode: "both",
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) }),
+ React.createElement("span", { style: style(3) })));
+}
+exports.default = PulseLoader;
diff --git a/frontend/node_modules/react-spinners/cjs/RingLoader.d.ts b/frontend/node_modules/react-spinners/cjs/RingLoader.d.ts
new file mode 100644
index 000000000..ebf7a62cb
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/RingLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function RingLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default RingLoader;
diff --git a/frontend/node_modules/react-spinners/cjs/RingLoader.js b/frontend/node_modules/react-spinners/cjs/RingLoader.js
new file mode 100644
index 000000000..2aea521d7
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/RingLoader.js
@@ -0,0 +1,79 @@
+"use strict";
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+var React = __importStar(require("react"));
+var unitConverter_1 = require("./helpers/unitConverter");
+var animation_1 = require("./helpers/animation");
+var right = (0, animation_1.createAnimation)("RingLoader", "0% {transform: rotateX(0deg) rotateY(0deg) rotateZ(0deg)} 100% {transform: rotateX(180deg) rotateY(360deg) rotateZ(360deg)}", "right");
+var left = (0, animation_1.createAnimation)("RingLoader", "0% {transform: rotateX(0deg) rotateY(0deg) rotateZ(0deg)} 100% {transform: rotateX(360deg) rotateY(180deg) rotateZ(360deg)}", "left");
+function RingLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 60 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var _g = (0, unitConverter_1.parseLengthAndUnit)(size), value = _g.value, unit = _g.unit;
+ var wrapper = __assign({ display: "inherit", width: (0, unitConverter_1.cssValue)(size), height: (0, unitConverter_1.cssValue)(size), position: "relative" }, cssOverride);
+ var style = function (i) {
+ return {
+ position: "absolute",
+ top: "0",
+ left: "0",
+ width: "".concat(value).concat(unit),
+ height: "".concat(value).concat(unit),
+ border: "".concat(value / 10).concat(unit, " solid ").concat(color),
+ opacity: "0.4",
+ borderRadius: "100%",
+ animationFillMode: "forwards",
+ perspective: "800px",
+ animation: "".concat(i === 1 ? right : left, " ").concat(2 / speedMultiplier, "s 0s infinite linear"),
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) })));
+}
+exports.default = RingLoader;
diff --git a/frontend/node_modules/react-spinners/cjs/RiseLoader.d.ts b/frontend/node_modules/react-spinners/cjs/RiseLoader.d.ts
new file mode 100644
index 000000000..7ed595882
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/RiseLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeMarginProps } from "./helpers/props";
+declare function RiseLoader({ loading, color, speedMultiplier, cssOverride, size, margin, ...additionalprops }: LoaderSizeMarginProps): JSX.Element | null;
+export default RiseLoader;
diff --git a/frontend/node_modules/react-spinners/cjs/RiseLoader.js b/frontend/node_modules/react-spinners/cjs/RiseLoader.js
new file mode 100644
index 000000000..7961f4fb3
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/RiseLoader.js
@@ -0,0 +1,78 @@
+"use strict";
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+var React = __importStar(require("react"));
+var unitConverter_1 = require("./helpers/unitConverter");
+var animation_1 = require("./helpers/animation");
+function RiseLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 15 : _f, _g = _a.margin, margin = _g === void 0 ? 2 : _g, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size", "margin"]);
+ var wrapper = __assign({ display: "inherit" }, cssOverride);
+ var even = (0, animation_1.createAnimation)("RiseLoader", "0% {transform: scale(1.1)}\n 25% {transform: translateY(-".concat(size, "px)}\n 50% {transform: scale(0.4)}\n 75% {transform: translateY(").concat(size, "px)}\n 100% {transform: translateY(0) scale(1.0)}"), "even");
+ var odd = (0, animation_1.createAnimation)("RiseLoader", "0% {transform: scale(0.4)}\n 25% {transform: translateY(".concat(size, "px)}\n 50% {transform: scale(1.1)}\n 75% {transform: translateY(").concat(-size, "px)}\n 100% {transform: translateY(0) scale(0.75)}"), "odd");
+ var style = function (i) {
+ return {
+ backgroundColor: color,
+ width: (0, unitConverter_1.cssValue)(size),
+ height: (0, unitConverter_1.cssValue)(size),
+ margin: (0, unitConverter_1.cssValue)(margin),
+ borderRadius: "100%",
+ display: "inline-block",
+ animation: "".concat(i % 2 === 0 ? even : odd, " ").concat(1 / speedMultiplier, "s 0s infinite cubic-bezier(0.15, 0.46, 0.9, 0.6)"),
+ animationFillMode: "both",
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) }),
+ React.createElement("span", { style: style(3) }),
+ React.createElement("span", { style: style(4) }),
+ React.createElement("span", { style: style(5) })));
+}
+exports.default = RiseLoader;
diff --git a/frontend/node_modules/react-spinners/cjs/RotateLoader.d.ts b/frontend/node_modules/react-spinners/cjs/RotateLoader.d.ts
new file mode 100644
index 000000000..9577c1805
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/RotateLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeMarginProps } from "./helpers/props";
+declare function RotateLoader({ loading, color, speedMultiplier, cssOverride, size, margin, ...additionalprops }: LoaderSizeMarginProps): JSX.Element | null;
+export default RotateLoader;
diff --git a/frontend/node_modules/react-spinners/cjs/RotateLoader.js b/frontend/node_modules/react-spinners/cjs/RotateLoader.js
new file mode 100644
index 000000000..8a06338fc
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/RotateLoader.js
@@ -0,0 +1,78 @@
+"use strict";
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+var React = __importStar(require("react"));
+var unitConverter_1 = require("./helpers/unitConverter");
+var animation_1 = require("./helpers/animation");
+var rotate = (0, animation_1.createAnimation)("RotateLoader", "0% {transform: rotate(0deg)} 50% {transform: rotate(180deg)} 100% {transform: rotate(360deg)}", "rotate");
+function RotateLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 15 : _f, _g = _a.margin, margin = _g === void 0 ? 2 : _g, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size", "margin"]);
+ var _h = (0, unitConverter_1.parseLengthAndUnit)(margin), value = _h.value, unit = _h.unit;
+ var ball = {
+ backgroundColor: color,
+ width: (0, unitConverter_1.cssValue)(size),
+ height: (0, unitConverter_1.cssValue)(size),
+ borderRadius: "100%",
+ };
+ var wrapper = __assign(__assign(__assign({}, ball), { display: "inline-block", position: "relative", animationFillMode: "both", animation: "".concat(rotate, " ").concat(1 / speedMultiplier, "s 0s infinite cubic-bezier(0.7, -0.13, 0.22, 0.86)") }), cssOverride);
+ var style = function (i) {
+ var left = (i % 2 ? -1 : 1) * (26 + value);
+ return {
+ opacity: "0.8",
+ position: "absolute",
+ top: "0",
+ left: "".concat(left).concat(unit),
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: __assign(__assign({}, ball), style(1)) }),
+ React.createElement("span", { style: __assign(__assign({}, ball), style(2)) })));
+}
+exports.default = RotateLoader;
diff --git a/frontend/node_modules/react-spinners/cjs/ScaleLoader.d.ts b/frontend/node_modules/react-spinners/cjs/ScaleLoader.d.ts
new file mode 100644
index 000000000..23f085479
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/ScaleLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderHeightWidthRadiusProps } from "./helpers/props";
+declare function ScaleLoader({ loading, color, speedMultiplier, cssOverride, height, width, radius, margin, ...additionalprops }: LoaderHeightWidthRadiusProps): JSX.Element | null;
+export default ScaleLoader;
diff --git a/frontend/node_modules/react-spinners/cjs/ScaleLoader.js b/frontend/node_modules/react-spinners/cjs/ScaleLoader.js
new file mode 100644
index 000000000..5516963fc
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/ScaleLoader.js
@@ -0,0 +1,77 @@
+"use strict";
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+var React = __importStar(require("react"));
+var unitConverter_1 = require("./helpers/unitConverter");
+var animation_1 = require("./helpers/animation");
+var scale = (0, animation_1.createAnimation)("ScaleLoader", "0% {transform: scaley(1.0)} 50% {transform: scaley(0.4)} 100% {transform: scaley(1.0)}", "scale");
+function ScaleLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.height, height = _f === void 0 ? 35 : _f, _g = _a.width, width = _g === void 0 ? 4 : _g, _h = _a.radius, radius = _h === void 0 ? 2 : _h, _j = _a.margin, margin = _j === void 0 ? 2 : _j, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "height", "width", "radius", "margin"]);
+ var wrapper = __assign({ display: "inherit" }, cssOverride);
+ var style = function (i) {
+ return {
+ backgroundColor: color,
+ width: (0, unitConverter_1.cssValue)(width),
+ height: (0, unitConverter_1.cssValue)(height),
+ margin: (0, unitConverter_1.cssValue)(margin),
+ borderRadius: (0, unitConverter_1.cssValue)(radius),
+ display: "inline-block",
+ animation: "".concat(scale, " ").concat(1 / speedMultiplier, "s ").concat(i * 0.1, "s infinite cubic-bezier(0.2, 0.68, 0.18, 1.08)"),
+ animationFillMode: "both",
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) }),
+ React.createElement("span", { style: style(3) }),
+ React.createElement("span", { style: style(4) }),
+ React.createElement("span", { style: style(5) })));
+}
+exports.default = ScaleLoader;
diff --git a/frontend/node_modules/react-spinners/cjs/SkewLoader.d.ts b/frontend/node_modules/react-spinners/cjs/SkewLoader.d.ts
new file mode 100644
index 000000000..98cd30f0f
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/SkewLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function SkewLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default SkewLoader;
diff --git a/frontend/node_modules/react-spinners/cjs/SkewLoader.js b/frontend/node_modules/react-spinners/cjs/SkewLoader.js
new file mode 100644
index 000000000..dce6d3d8e
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/SkewLoader.js
@@ -0,0 +1,60 @@
+"use strict";
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+var React = __importStar(require("react"));
+var unitConverter_1 = require("./helpers/unitConverter");
+var animation_1 = require("./helpers/animation");
+var skew = (0, animation_1.createAnimation)("SkewLoader", "25% {transform: perspective(100px) rotateX(180deg) rotateY(0)} 50% {transform: perspective(100px) rotateX(180deg) rotateY(180deg)} 75% {transform: perspective(100px) rotateX(0) rotateY(180deg)} 100% {transform: perspective(100px) rotateX(0) rotateY(0)}", "skew");
+function SkewLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 20 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var style = __assign({ width: "0", height: "0", borderLeft: "".concat((0, unitConverter_1.cssValue)(size), " solid transparent"), borderRight: "".concat((0, unitConverter_1.cssValue)(size), " solid transparent"), borderBottom: "".concat((0, unitConverter_1.cssValue)(size), " solid ").concat(color), display: "inline-block", animation: "".concat(skew, " ").concat(3 / speedMultiplier, "s 0s infinite cubic-bezier(0.09, 0.57, 0.49, 0.9)"), animationFillMode: "both" }, cssOverride);
+ if (!loading) {
+ return null;
+ }
+ return React.createElement("span", __assign({ style: style }, additionalprops));
+}
+exports.default = SkewLoader;
diff --git a/frontend/node_modules/react-spinners/cjs/SquareLoader.d.ts b/frontend/node_modules/react-spinners/cjs/SquareLoader.d.ts
new file mode 100644
index 000000000..2fa2e689d
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/SquareLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function SquareLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default SquareLoader;
diff --git a/frontend/node_modules/react-spinners/cjs/SquareLoader.js b/frontend/node_modules/react-spinners/cjs/SquareLoader.js
new file mode 100644
index 000000000..3db507706
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/SquareLoader.js
@@ -0,0 +1,60 @@
+"use strict";
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+var React = __importStar(require("react"));
+var unitConverter_1 = require("./helpers/unitConverter");
+var animation_1 = require("./helpers/animation");
+var square = (0, animation_1.createAnimation)("SquareLoader", "25% {transform: rotateX(180deg) rotateY(0)}\n 50% {transform: rotateX(180deg) rotateY(180deg)} \n 75% {transform: rotateX(0) rotateY(180deg)} \n 100% {transform: rotateX(0) rotateY(0)}", "square");
+function SquareLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 50 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var style = __assign({ backgroundColor: color, width: (0, unitConverter_1.cssValue)(size), height: (0, unitConverter_1.cssValue)(size), display: "inline-block", animation: "".concat(square, " ").concat(3 / speedMultiplier, "s 0s infinite cubic-bezier(0.09, 0.57, 0.49, 0.9)"), animationFillMode: "both" }, cssOverride);
+ if (!loading) {
+ return null;
+ }
+ return React.createElement("span", __assign({ style: style }, additionalprops));
+}
+exports.default = SquareLoader;
diff --git a/frontend/node_modules/react-spinners/cjs/SyncLoader.d.ts b/frontend/node_modules/react-spinners/cjs/SyncLoader.d.ts
new file mode 100644
index 000000000..252c84820
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/SyncLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeMarginProps } from "./helpers/props";
+declare function SyncLoader({ loading, color, speedMultiplier, cssOverride, size, margin, ...additionalprops }: LoaderSizeMarginProps): JSX.Element | null;
+export default SyncLoader;
diff --git a/frontend/node_modules/react-spinners/cjs/SyncLoader.js b/frontend/node_modules/react-spinners/cjs/SyncLoader.js
new file mode 100644
index 000000000..4152fea14
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/SyncLoader.js
@@ -0,0 +1,75 @@
+"use strict";
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+var React = __importStar(require("react"));
+var animation_1 = require("./helpers/animation");
+var unitConverter_1 = require("./helpers/unitConverter");
+var sync = (0, animation_1.createAnimation)("SyncLoader", "33% {transform: translateY(10px)}\n 66% {transform: translateY(-10px)}\n 100% {transform: translateY(0)}", "sync");
+function SyncLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 15 : _f, _g = _a.margin, margin = _g === void 0 ? 2 : _g, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size", "margin"]);
+ var wrapper = __assign({ display: "inherit" }, cssOverride);
+ var style = function (i) {
+ return {
+ backgroundColor: color,
+ width: (0, unitConverter_1.cssValue)(size),
+ height: (0, unitConverter_1.cssValue)(size),
+ margin: (0, unitConverter_1.cssValue)(margin),
+ borderRadius: "100%",
+ display: "inline-block",
+ animation: "".concat(sync, " ").concat(0.6 / speedMultiplier, "s ").concat(i * 0.07, "s infinite ease-in-out"),
+ animationFillMode: "both",
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) }),
+ React.createElement("span", { style: style(3) })));
+}
+exports.default = SyncLoader;
diff --git a/frontend/node_modules/react-spinners/cjs/helpers/animation.d.ts b/frontend/node_modules/react-spinners/cjs/helpers/animation.d.ts
new file mode 100644
index 000000000..196a3bd20
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/helpers/animation.d.ts
@@ -0,0 +1 @@
+export declare const createAnimation: (loaderName: string, frames: string, suffix: string) => string;
diff --git a/frontend/node_modules/react-spinners/cjs/helpers/animation.js b/frontend/node_modules/react-spinners/cjs/helpers/animation.js
new file mode 100644
index 000000000..7626dfdf9
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/helpers/animation.js
@@ -0,0 +1,18 @@
+"use strict";
+Object.defineProperty(exports, "__esModule", { value: true });
+exports.createAnimation = void 0;
+var createAnimation = function (loaderName, frames, suffix) {
+ var animationName = "react-spinners-".concat(loaderName, "-").concat(suffix);
+ if (typeof window == "undefined" || !window.document) {
+ return animationName;
+ }
+ var styleEl = document.createElement("style");
+ document.head.appendChild(styleEl);
+ var styleSheet = styleEl.sheet;
+ var keyFrames = "\n @keyframes ".concat(animationName, " {\n ").concat(frames, "\n }\n ");
+ if (styleSheet) {
+ styleSheet.insertRule(keyFrames, 0);
+ }
+ return animationName;
+};
+exports.createAnimation = createAnimation;
diff --git a/frontend/node_modules/react-spinners/cjs/helpers/animation.server.test.d.ts b/frontend/node_modules/react-spinners/cjs/helpers/animation.server.test.d.ts
new file mode 100644
index 000000000..3275561ce
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/helpers/animation.server.test.d.ts
@@ -0,0 +1,4 @@
+/**
+ * @jest-environment node
+ */
+export {};
diff --git a/frontend/node_modules/react-spinners/cjs/helpers/animation.server.test.js b/frontend/node_modules/react-spinners/cjs/helpers/animation.server.test.js
new file mode 100644
index 000000000..4357f5381
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/helpers/animation.server.test.js
@@ -0,0 +1,12 @@
+"use strict";
+/**
+ * @jest-environment node
+ */
+Object.defineProperty(exports, "__esModule", { value: true });
+var animation_1 = require("./animation");
+describe("animation", function () {
+ it("should not throw an error on server side", function () {
+ var name = (0, animation_1.createAnimation)("TestLoader", "0% {left: -35%;right: 100%} 60% {left: 100%;right: -90%} 100% {left: 100%;right: -90%}", "my-suffix");
+ expect(name).toEqual("react-spinners-TestLoader-my-suffix");
+ });
+});
diff --git a/frontend/node_modules/react-spinners/cjs/helpers/animation.test.d.ts b/frontend/node_modules/react-spinners/cjs/helpers/animation.test.d.ts
new file mode 100644
index 000000000..cb0ff5c3b
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/helpers/animation.test.d.ts
@@ -0,0 +1 @@
+export {};
diff --git a/frontend/node_modules/react-spinners/cjs/helpers/animation.test.js b/frontend/node_modules/react-spinners/cjs/helpers/animation.test.js
new file mode 100644
index 000000000..e0db580f1
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/helpers/animation.test.js
@@ -0,0 +1,9 @@
+"use strict";
+Object.defineProperty(exports, "__esModule", { value: true });
+var animation_1 = require("./animation");
+describe("createAnimation", function () {
+ it("should return name with suffix if passed in", function () {
+ var name = (0, animation_1.createAnimation)("TestLoader", "0% {left: -35%;right: 100%} 60% {left: 100%;right: -90%} 100% {left: 100%;right: -90%}", "my-suffix");
+ expect(name).toEqual("react-spinners-TestLoader-my-suffix");
+ });
+});
diff --git a/frontend/node_modules/react-spinners/cjs/helpers/colors.d.ts b/frontend/node_modules/react-spinners/cjs/helpers/colors.d.ts
new file mode 100644
index 000000000..e6115a944
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/helpers/colors.d.ts
@@ -0,0 +1 @@
+export declare const calculateRgba: (color: string, opacity: number) => string;
diff --git a/frontend/node_modules/react-spinners/cjs/helpers/colors.js b/frontend/node_modules/react-spinners/cjs/helpers/colors.js
new file mode 100644
index 000000000..b5fce3b00
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/helpers/colors.js
@@ -0,0 +1,42 @@
+"use strict";
+Object.defineProperty(exports, "__esModule", { value: true });
+exports.calculateRgba = void 0;
+var BasicColors;
+(function (BasicColors) {
+ BasicColors["maroon"] = "#800000";
+ BasicColors["red"] = "#FF0000";
+ BasicColors["orange"] = "#FFA500";
+ BasicColors["yellow"] = "#FFFF00";
+ BasicColors["olive"] = "#808000";
+ BasicColors["green"] = "#008000";
+ BasicColors["purple"] = "#800080";
+ BasicColors["fuchsia"] = "#FF00FF";
+ BasicColors["lime"] = "#00FF00";
+ BasicColors["teal"] = "#008080";
+ BasicColors["aqua"] = "#00FFFF";
+ BasicColors["blue"] = "#0000FF";
+ BasicColors["navy"] = "#000080";
+ BasicColors["black"] = "#000000";
+ BasicColors["gray"] = "#808080";
+ BasicColors["silver"] = "#C0C0C0";
+ BasicColors["white"] = "#FFFFFF";
+})(BasicColors || (BasicColors = {}));
+var calculateRgba = function (color, opacity) {
+ if (Object.keys(BasicColors).includes(color)) {
+ color = BasicColors[color];
+ }
+ if (color[0] === "#") {
+ color = color.slice(1);
+ }
+ if (color.length === 3) {
+ var res_1 = "";
+ color.split("").forEach(function (c) {
+ res_1 += c;
+ res_1 += c;
+ });
+ color = res_1;
+ }
+ var rgbValues = (color.match(/.{2}/g) || []).map(function (hex) { return parseInt(hex, 16); }).join(", ");
+ return "rgba(".concat(rgbValues, ", ").concat(opacity, ")");
+};
+exports.calculateRgba = calculateRgba;
diff --git a/frontend/node_modules/react-spinners/cjs/helpers/colors.test.d.ts b/frontend/node_modules/react-spinners/cjs/helpers/colors.test.d.ts
new file mode 100644
index 000000000..cb0ff5c3b
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/helpers/colors.test.d.ts
@@ -0,0 +1 @@
+export {};
diff --git a/frontend/node_modules/react-spinners/cjs/helpers/colors.test.js b/frontend/node_modules/react-spinners/cjs/helpers/colors.test.js
new file mode 100644
index 000000000..d29127da0
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/helpers/colors.test.js
@@ -0,0 +1,39 @@
+"use strict";
+Object.defineProperty(exports, "__esModule", { value: true });
+var colors_1 = require("./colors");
+describe("calculateRgba", function () {
+ it("is a function", function () {
+ expect(typeof colors_1.calculateRgba).toEqual("function");
+ });
+ it("converts hash values to rgb", function () {
+ expect((0, colors_1.calculateRgba)("#ffffff", 1)).toEqual("rgba(255, 255, 255, 1)");
+ });
+ it("calculates 3 character hash value to the correct rgba", function () {
+ expect((0, colors_1.calculateRgba)("#fff", 1)).toEqual("rgba(255, 255, 255, 1)");
+ });
+ it("returns the passed in opacity as the part of the rgba value", function () {
+ expect((0, colors_1.calculateRgba)("#fff", 0.5)).toEqual("rgba(255, 255, 255, 0.5)");
+ });
+ it("calculated the correct rgba value without the starting # passed in", function () {
+ expect((0, colors_1.calculateRgba)("fff", 1)).toEqual("rgba(255, 255, 255, 1)");
+ });
+ it("calculates the correct rgba using basic color names", function () {
+ expect((0, colors_1.calculateRgba)("maroon", 0.7)).toEqual("rgba(128, 0, 0, 0.7)");
+ expect((0, colors_1.calculateRgba)("red", 0.7)).toEqual("rgba(255, 0, 0, 0.7)");
+ expect((0, colors_1.calculateRgba)("orange", 0.7)).toEqual("rgba(255, 165, 0, 0.7)");
+ expect((0, colors_1.calculateRgba)("yellow", 0.7)).toEqual("rgba(255, 255, 0, 0.7)");
+ expect((0, colors_1.calculateRgba)("olive", 0.7)).toEqual("rgba(128, 128, 0, 0.7)");
+ expect((0, colors_1.calculateRgba)("green", 0.7)).toEqual("rgba(0, 128, 0, 0.7)");
+ expect((0, colors_1.calculateRgba)("purple", 0.7)).toEqual("rgba(128, 0, 128, 0.7)");
+ expect((0, colors_1.calculateRgba)("fuchsia", 0.7)).toEqual("rgba(255, 0, 255, 0.7)");
+ expect((0, colors_1.calculateRgba)("lime", 0.7)).toEqual("rgba(0, 255, 0, 0.7)");
+ expect((0, colors_1.calculateRgba)("teal", 0.7)).toEqual("rgba(0, 128, 128, 0.7)");
+ expect((0, colors_1.calculateRgba)("aqua", 0.7)).toEqual("rgba(0, 255, 255, 0.7)");
+ expect((0, colors_1.calculateRgba)("blue", 0.7)).toEqual("rgba(0, 0, 255, 0.7)");
+ expect((0, colors_1.calculateRgba)("navy", 0.7)).toEqual("rgba(0, 0, 128, 0.7)");
+ expect((0, colors_1.calculateRgba)("black", 0.7)).toEqual("rgba(0, 0, 0, 0.7)");
+ expect((0, colors_1.calculateRgba)("gray", 0.7)).toEqual("rgba(128, 128, 128, 0.7)");
+ expect((0, colors_1.calculateRgba)("silver", 0.7)).toEqual("rgba(192, 192, 192, 0.7)");
+ expect((0, colors_1.calculateRgba)("white", 0.7)).toEqual("rgba(255, 255, 255, 0.7)");
+ });
+});
diff --git a/frontend/node_modules/react-spinners/cjs/helpers/props.d.ts b/frontend/node_modules/react-spinners/cjs/helpers/props.d.ts
new file mode 100644
index 000000000..62830656b
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/helpers/props.d.ts
@@ -0,0 +1,26 @@
+import { CSSProperties, DetailedHTMLProps, HTMLAttributes } from "react";
+export type LengthType = number | string;
+interface CommonProps extends DetailedHTMLProps, HTMLSpanElement> {
+ color?: string;
+ loading?: boolean;
+ cssOverride?: CSSProperties;
+ speedMultiplier?: number;
+}
+export interface LoaderHeightWidthProps extends CommonProps {
+ height?: LengthType;
+ width?: LengthType;
+}
+export interface LoaderSizeProps extends CommonProps {
+ size?: LengthType;
+}
+export interface LoaderSizeMarginProps extends CommonProps {
+ size?: LengthType;
+ margin?: LengthType;
+}
+export interface LoaderHeightWidthRadiusProps extends CommonProps {
+ height?: LengthType;
+ width?: LengthType;
+ radius?: LengthType;
+ margin?: LengthType;
+}
+export {};
diff --git a/frontend/node_modules/react-spinners/cjs/helpers/props.js b/frontend/node_modules/react-spinners/cjs/helpers/props.js
new file mode 100644
index 000000000..c8ad2e549
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/helpers/props.js
@@ -0,0 +1,2 @@
+"use strict";
+Object.defineProperty(exports, "__esModule", { value: true });
diff --git a/frontend/node_modules/react-spinners/cjs/helpers/unitConverter.d.ts b/frontend/node_modules/react-spinners/cjs/helpers/unitConverter.d.ts
new file mode 100644
index 000000000..771955ed8
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/helpers/unitConverter.d.ts
@@ -0,0 +1,22 @@
+interface LengthObject {
+ value: number;
+ unit: string;
+}
+/**
+ * If size is a number, append px to the value as default unit.
+ * If size is a string, validate against list of valid units.
+ * If unit is valid, return size as is.
+ * If unit is invalid, console warn issue, replace with px as the unit.
+ *
+ * @param {(number | string)} size
+ * @return {LengthObject} LengthObject
+ */
+export declare function parseLengthAndUnit(size: number | string): LengthObject;
+/**
+ * Take value as an input and return valid css value
+ *
+ * @param {(number | string)} value
+ * @return {string} valid css value
+ */
+export declare function cssValue(value: number | string): string;
+export {};
diff --git a/frontend/node_modules/react-spinners/cjs/helpers/unitConverter.js b/frontend/node_modules/react-spinners/cjs/helpers/unitConverter.js
new file mode 100644
index 000000000..24d8ed34d
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/helpers/unitConverter.js
@@ -0,0 +1,69 @@
+"use strict";
+Object.defineProperty(exports, "__esModule", { value: true });
+exports.cssValue = exports.parseLengthAndUnit = void 0;
+var cssUnit = {
+ cm: true,
+ mm: true,
+ in: true,
+ px: true,
+ pt: true,
+ pc: true,
+ em: true,
+ ex: true,
+ ch: true,
+ rem: true,
+ vw: true,
+ vh: true,
+ vmin: true,
+ vmax: true,
+ "%": true,
+};
+/**
+ * If size is a number, append px to the value as default unit.
+ * If size is a string, validate against list of valid units.
+ * If unit is valid, return size as is.
+ * If unit is invalid, console warn issue, replace with px as the unit.
+ *
+ * @param {(number | string)} size
+ * @return {LengthObject} LengthObject
+ */
+function parseLengthAndUnit(size) {
+ if (typeof size === "number") {
+ return {
+ value: size,
+ unit: "px",
+ };
+ }
+ var value;
+ var valueString = (size.match(/^[0-9.]*/) || "").toString();
+ if (valueString.includes(".")) {
+ value = parseFloat(valueString);
+ }
+ else {
+ value = parseInt(valueString, 10);
+ }
+ var unit = (size.match(/[^0-9]*$/) || "").toString();
+ if (cssUnit[unit]) {
+ return {
+ value: value,
+ unit: unit,
+ };
+ }
+ console.warn("React Spinners: ".concat(size, " is not a valid css value. Defaulting to ").concat(value, "px."));
+ return {
+ value: value,
+ unit: "px",
+ };
+}
+exports.parseLengthAndUnit = parseLengthAndUnit;
+/**
+ * Take value as an input and return valid css value
+ *
+ * @param {(number | string)} value
+ * @return {string} valid css value
+ */
+function cssValue(value) {
+ var lengthWithunit = parseLengthAndUnit(value);
+ return "".concat(lengthWithunit.value).concat(lengthWithunit.unit);
+}
+exports.cssValue = cssValue;
diff --git a/frontend/node_modules/react-spinners/cjs/helpers/unitConverter.test.d.ts b/frontend/node_modules/react-spinners/cjs/helpers/unitConverter.test.d.ts
new file mode 100644
index 000000000..cb0ff5c3b
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/helpers/unitConverter.test.d.ts
@@ -0,0 +1 @@
+export {};
diff --git a/frontend/node_modules/react-spinners/cjs/helpers/unitConverter.test.js b/frontend/node_modules/react-spinners/cjs/helpers/unitConverter.test.js
new file mode 100644
index 000000000..3402db00b
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/helpers/unitConverter.test.js
@@ -0,0 +1,50 @@
+"use strict";
+Object.defineProperty(exports, "__esModule", { value: true });
+var unitConverter_1 = require("./unitConverter");
+describe("unitConverter", function () {
+ describe("parseLengthAndUnit", function () {
+ var spy = jest.spyOn(console, "warn").mockImplementation();
+ var output = {
+ value: 12,
+ unit: "px",
+ };
+ it("is a function", function () {
+ expect(typeof unitConverter_1.parseLengthAndUnit).toEqual("function");
+ });
+ it("takes a number as the input and append px to the value", function () {
+ expect((0, unitConverter_1.parseLengthAndUnit)(12)).toEqual(output);
+ expect(spy).not.toBeCalled();
+ });
+ it("take a string with valid integer css unit and return an object with value and unit", function () {
+ expect((0, unitConverter_1.parseLengthAndUnit)("12px")).toEqual(output);
+ expect(spy).not.toBeCalled();
+ });
+ it("take a string with valid css float unit and return an object with value and unit", function () {
+ var output = {
+ value: 12.5,
+ unit: "px",
+ };
+ expect((0, unitConverter_1.parseLengthAndUnit)("12.5px")).toEqual(output);
+ expect(spy).not.toBeCalled();
+ });
+ it("takes an invalid css unit and default the value to px", function () {
+ expect((0, unitConverter_1.parseLengthAndUnit)("12fd")).toEqual(output);
+ expect(spy).toBeCalled();
+ });
+ });
+ describe("cssValue", function () {
+ it("is a function", function () {
+ expect(typeof unitConverter_1.cssValue).toEqual("function");
+ });
+ it("takes a number as the input and append px to the value", function () {
+ expect((0, unitConverter_1.cssValue)(12)).toEqual("12px");
+ });
+ it("takes a string with valid css unit as the input and return the value", function () {
+ expect((0, unitConverter_1.cssValue)("12%")).toEqual("12%");
+ expect((0, unitConverter_1.cssValue)("12em")).toEqual("12em");
+ });
+ it("takes a string with invalid css unit as the input and default to px", function () {
+ expect((0, unitConverter_1.cssValue)("12qw")).toEqual("12px");
+ });
+ });
+});
diff --git a/frontend/node_modules/react-spinners/cjs/index.d.ts b/frontend/node_modules/react-spinners/cjs/index.d.ts
new file mode 100644
index 000000000..478f2b91d
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/index.d.ts
@@ -0,0 +1,23 @@
+export { default as BarLoader } from "./BarLoader";
+export { default as BeatLoader } from "./BeatLoader";
+export { default as BounceLoader } from "./BounceLoader";
+export { default as CircleLoader } from "./CircleLoader";
+export { default as ClimbingBoxLoader } from "./ClimbingBoxLoader";
+export { default as ClipLoader } from "./ClipLoader";
+export { default as ClockLoader } from "./ClockLoader";
+export { default as DotLoader } from "./DotLoader";
+export { default as FadeLoader } from "./FadeLoader";
+export { default as GridLoader } from "./GridLoader";
+export { default as HashLoader } from "./HashLoader";
+export { default as MoonLoader } from "./MoonLoader";
+export { default as PacmanLoader } from "./PacmanLoader";
+export { default as PropagateLoader } from "./PropagateLoader";
+export { default as PulseLoader } from "./PulseLoader";
+export { default as PuffLoader } from "./PuffLoader";
+export { default as RingLoader } from "./RingLoader";
+export { default as RiseLoader } from "./RiseLoader";
+export { default as RotateLoader } from "./RotateLoader";
+export { default as ScaleLoader } from "./ScaleLoader";
+export { default as SkewLoader } from "./SkewLoader";
+export { default as SquareLoader } from "./SquareLoader";
+export { default as SyncLoader } from "./SyncLoader";
diff --git a/frontend/node_modules/react-spinners/cjs/index.js b/frontend/node_modules/react-spinners/cjs/index.js
new file mode 100644
index 000000000..184a2be56
--- /dev/null
+++ b/frontend/node_modules/react-spinners/cjs/index.js
@@ -0,0 +1,52 @@
+"use strict";
+var __importDefault = (this && this.__importDefault) || function (mod) {
+ return (mod && mod.__esModule) ? mod : { "default": mod };
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+exports.SyncLoader = exports.SquareLoader = exports.SkewLoader = exports.ScaleLoader = exports.RotateLoader = exports.RiseLoader = exports.RingLoader = exports.PuffLoader = exports.PulseLoader = exports.PropagateLoader = exports.PacmanLoader = exports.MoonLoader = exports.HashLoader = exports.GridLoader = exports.FadeLoader = exports.DotLoader = exports.ClockLoader = exports.ClipLoader = exports.ClimbingBoxLoader = exports.CircleLoader = exports.BounceLoader = exports.BeatLoader = exports.BarLoader = void 0;
+var BarLoader_1 = require("./BarLoader");
+Object.defineProperty(exports, "BarLoader", { enumerable: true, get: function () { return __importDefault(BarLoader_1).default; } });
+var BeatLoader_1 = require("./BeatLoader");
+Object.defineProperty(exports, "BeatLoader", { enumerable: true, get: function () { return __importDefault(BeatLoader_1).default; } });
+var BounceLoader_1 = require("./BounceLoader");
+Object.defineProperty(exports, "BounceLoader", { enumerable: true, get: function () { return __importDefault(BounceLoader_1).default; } });
+var CircleLoader_1 = require("./CircleLoader");
+Object.defineProperty(exports, "CircleLoader", { enumerable: true, get: function () { return __importDefault(CircleLoader_1).default; } });
+var ClimbingBoxLoader_1 = require("./ClimbingBoxLoader");
+Object.defineProperty(exports, "ClimbingBoxLoader", { enumerable: true, get: function () { return __importDefault(ClimbingBoxLoader_1).default; } });
+var ClipLoader_1 = require("./ClipLoader");
+Object.defineProperty(exports, "ClipLoader", { enumerable: true, get: function () { return __importDefault(ClipLoader_1).default; } });
+var ClockLoader_1 = require("./ClockLoader");
+Object.defineProperty(exports, "ClockLoader", { enumerable: true, get: function () { return __importDefault(ClockLoader_1).default; } });
+var DotLoader_1 = require("./DotLoader");
+Object.defineProperty(exports, "DotLoader", { enumerable: true, get: function () { return __importDefault(DotLoader_1).default; } });
+var FadeLoader_1 = require("./FadeLoader");
+Object.defineProperty(exports, "FadeLoader", { enumerable: true, get: function () { return __importDefault(FadeLoader_1).default; } });
+var GridLoader_1 = require("./GridLoader");
+Object.defineProperty(exports, "GridLoader", { enumerable: true, get: function () { return __importDefault(GridLoader_1).default; } });
+var HashLoader_1 = require("./HashLoader");
+Object.defineProperty(exports, "HashLoader", { enumerable: true, get: function () { return __importDefault(HashLoader_1).default; } });
+var MoonLoader_1 = require("./MoonLoader");
+Object.defineProperty(exports, "MoonLoader", { enumerable: true, get: function () { return __importDefault(MoonLoader_1).default; } });
+var PacmanLoader_1 = require("./PacmanLoader");
+Object.defineProperty(exports, "PacmanLoader", { enumerable: true, get: function () { return __importDefault(PacmanLoader_1).default; } });
+var PropagateLoader_1 = require("./PropagateLoader");
+Object.defineProperty(exports, "PropagateLoader", { enumerable: true, get: function () { return __importDefault(PropagateLoader_1).default; } });
+var PulseLoader_1 = require("./PulseLoader");
+Object.defineProperty(exports, "PulseLoader", { enumerable: true, get: function () { return __importDefault(PulseLoader_1).default; } });
+var PuffLoader_1 = require("./PuffLoader");
+Object.defineProperty(exports, "PuffLoader", { enumerable: true, get: function () { return __importDefault(PuffLoader_1).default; } });
+var RingLoader_1 = require("./RingLoader");
+Object.defineProperty(exports, "RingLoader", { enumerable: true, get: function () { return __importDefault(RingLoader_1).default; } });
+var RiseLoader_1 = require("./RiseLoader");
+Object.defineProperty(exports, "RiseLoader", { enumerable: true, get: function () { return __importDefault(RiseLoader_1).default; } });
+var RotateLoader_1 = require("./RotateLoader");
+Object.defineProperty(exports, "RotateLoader", { enumerable: true, get: function () { return __importDefault(RotateLoader_1).default; } });
+var ScaleLoader_1 = require("./ScaleLoader");
+Object.defineProperty(exports, "ScaleLoader", { enumerable: true, get: function () { return __importDefault(ScaleLoader_1).default; } });
+var SkewLoader_1 = require("./SkewLoader");
+Object.defineProperty(exports, "SkewLoader", { enumerable: true, get: function () { return __importDefault(SkewLoader_1).default; } });
+var SquareLoader_1 = require("./SquareLoader");
+Object.defineProperty(exports, "SquareLoader", { enumerable: true, get: function () { return __importDefault(SquareLoader_1).default; } });
+var SyncLoader_1 = require("./SyncLoader");
+Object.defineProperty(exports, "SyncLoader", { enumerable: true, get: function () { return __importDefault(SyncLoader_1).default; } });
diff --git a/frontend/node_modules/react-spinners/esm/BarLoader.d.ts b/frontend/node_modules/react-spinners/esm/BarLoader.d.ts
new file mode 100644
index 000000000..aefdd89cf
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/BarLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderHeightWidthProps } from "./helpers/props";
+declare function BarLoader({ loading, color, speedMultiplier, cssOverride, height, width, ...additionalprops }: LoaderHeightWidthProps): JSX.Element | null;
+export default BarLoader;
diff --git a/frontend/node_modules/react-spinners/esm/BarLoader.js b/frontend/node_modules/react-spinners/esm/BarLoader.js
new file mode 100644
index 000000000..8b414c3b3
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/BarLoader.js
@@ -0,0 +1,53 @@
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+import * as React from "react";
+import { cssValue } from "./helpers/unitConverter";
+import { createAnimation } from "./helpers/animation";
+import { calculateRgba } from "./helpers/colors";
+var long = createAnimation("BarLoader", "0% {left: -35%;right: 100%} 60% {left: 100%;right: -90%} 100% {left: 100%;right: -90%}", "long");
+var short = createAnimation("BarLoader", "0% {left: -200%;right: 100%} 60% {left: 107%;right: -8%} 100% {left: 107%;right: -8%}", "short");
+function BarLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.height, height = _f === void 0 ? 4 : _f, _g = _a.width, width = _g === void 0 ? 100 : _g, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "height", "width"]);
+ var wrapper = __assign({ display: "inherit", position: "relative", width: cssValue(width), height: cssValue(height), overflow: "hidden", backgroundColor: calculateRgba(color, 0.2), backgroundClip: "padding-box" }, cssOverride);
+ var style = function (i) {
+ return {
+ position: "absolute",
+ height: cssValue(height),
+ overflow: "hidden",
+ backgroundColor: color,
+ backgroundClip: "padding-box",
+ display: "block",
+ borderRadius: 2,
+ willChange: "left, right",
+ animationFillMode: "forwards",
+ animation: "".concat(i === 1 ? long : short, " ").concat(2.1 / speedMultiplier, "s ").concat(i === 2 ? "".concat(1.15 / speedMultiplier, "s") : "", " ").concat(i === 1 ? "cubic-bezier(0.65, 0.815, 0.735, 0.395)" : "cubic-bezier(0.165, 0.84, 0.44, 1)", " infinite"),
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) })));
+}
+export default BarLoader;
diff --git a/frontend/node_modules/react-spinners/esm/BeatLoader.d.ts b/frontend/node_modules/react-spinners/esm/BeatLoader.d.ts
new file mode 100644
index 000000000..acd998f72
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/BeatLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeMarginProps } from "./helpers/props";
+declare function BeatLoader({ loading, color, speedMultiplier, cssOverride, size, margin, ...additionalprops }: LoaderSizeMarginProps): JSX.Element | null;
+export default BeatLoader;
diff --git a/frontend/node_modules/react-spinners/esm/BeatLoader.js b/frontend/node_modules/react-spinners/esm/BeatLoader.js
new file mode 100644
index 000000000..3690d74dd
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/BeatLoader.js
@@ -0,0 +1,50 @@
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+import * as React from "react";
+import { cssValue } from "./helpers/unitConverter";
+import { createAnimation } from "./helpers/animation";
+var beat = createAnimation("BeatLoader", "50% {transform: scale(0.75);opacity: 0.2} 100% {transform: scale(1);opacity: 1}", "beat");
+function BeatLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 15 : _f, _g = _a.margin, margin = _g === void 0 ? 2 : _g, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size", "margin"]);
+ var wrapper = __assign({ display: "inherit" }, cssOverride);
+ var style = function (i) {
+ return {
+ display: "inline-block",
+ backgroundColor: color,
+ width: cssValue(size),
+ height: cssValue(size),
+ margin: cssValue(margin),
+ borderRadius: "100%",
+ animation: "".concat(beat, " ").concat(0.7 / speedMultiplier, "s ").concat(i % 2 ? "0s" : "".concat(0.35 / speedMultiplier, "s"), " infinite linear"),
+ animationFillMode: "both",
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) }),
+ React.createElement("span", { style: style(3) })));
+}
+export default BeatLoader;
diff --git a/frontend/node_modules/react-spinners/esm/BounceLoader.d.ts b/frontend/node_modules/react-spinners/esm/BounceLoader.d.ts
new file mode 100644
index 000000000..16cd11544
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/BounceLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function BounceLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default BounceLoader;
diff --git a/frontend/node_modules/react-spinners/esm/BounceLoader.js b/frontend/node_modules/react-spinners/esm/BounceLoader.js
new file mode 100644
index 000000000..b26c3419d
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/BounceLoader.js
@@ -0,0 +1,52 @@
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+import * as React from "react";
+import { cssValue } from "./helpers/unitConverter";
+import { createAnimation } from "./helpers/animation";
+var bounce = createAnimation("BounceLoader", "0% {transform: scale(0)} 50% {transform: scale(1.0)} 100% {transform: scale(0)}", "bounce");
+function BounceLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 60 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var style = function (i) {
+ var animationTiming = i === 1 ? "".concat(1 / speedMultiplier, "s") : "0s";
+ return {
+ position: "absolute",
+ height: cssValue(size),
+ width: cssValue(size),
+ backgroundColor: color,
+ borderRadius: "100%",
+ opacity: 0.6,
+ top: 0,
+ left: 0,
+ animationFillMode: "both",
+ animation: "".concat(bounce, " ").concat(2.1 / speedMultiplier, "s ").concat(animationTiming, " infinite ease-in-out"),
+ };
+ };
+ var wrapper = __assign({ display: "inherit", position: "relative", width: cssValue(size), height: cssValue(size) }, cssOverride);
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) })));
+}
+export default BounceLoader;
diff --git a/frontend/node_modules/react-spinners/esm/CircleLoader.d.ts b/frontend/node_modules/react-spinners/esm/CircleLoader.d.ts
new file mode 100644
index 000000000..12ec8925f
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/CircleLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function CircleLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default CircleLoader;
diff --git a/frontend/node_modules/react-spinners/esm/CircleLoader.js b/frontend/node_modules/react-spinners/esm/CircleLoader.js
new file mode 100644
index 000000000..0bdd84771
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/CircleLoader.js
@@ -0,0 +1,57 @@
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+import * as React from "react";
+import { cssValue, parseLengthAndUnit } from "./helpers/unitConverter";
+import { createAnimation } from "./helpers/animation";
+var circle = createAnimation("CircleLoader", "0% {transform: rotate(0deg)} 50% {transform: rotate(180deg)} 100% {transform: rotate(360deg)}", "circle");
+function CircleLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 50 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var wrapper = __assign({ display: "inherit", position: "relative", width: cssValue(size), height: cssValue(size) }, cssOverride);
+ var style = function (i) {
+ var _a = parseLengthAndUnit(size), value = _a.value, unit = _a.unit;
+ return {
+ position: "absolute",
+ height: "".concat(value * (1 - i / 10)).concat(unit),
+ width: "".concat(value * (1 - i / 10)).concat(unit),
+ borderTop: "1px solid ".concat(color),
+ borderBottom: "none",
+ borderLeft: "1px solid ".concat(color),
+ borderRight: "none",
+ borderRadius: "100%",
+ transition: "2s",
+ top: "".concat(i * 0.7 * 2.5, "%"),
+ left: "".concat(i * 0.35 * 2.5, "%"),
+ animation: "".concat(circle, " ").concat(1 / speedMultiplier, "s ").concat((i * 0.2) / speedMultiplier, "s infinite linear"),
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(0) }),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) }),
+ React.createElement("span", { style: style(3) }),
+ React.createElement("span", { style: style(4) })));
+}
+export default CircleLoader;
diff --git a/frontend/node_modules/react-spinners/esm/ClimbingBoxLoader.d.ts b/frontend/node_modules/react-spinners/esm/ClimbingBoxLoader.d.ts
new file mode 100644
index 000000000..12660b80d
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/ClimbingBoxLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function ClimbingBoxLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default ClimbingBoxLoader;
diff --git a/frontend/node_modules/react-spinners/esm/ClimbingBoxLoader.js b/frontend/node_modules/react-spinners/esm/ClimbingBoxLoader.js
new file mode 100644
index 000000000..7e08fddaa
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/ClimbingBoxLoader.js
@@ -0,0 +1,70 @@
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+import * as React from "react";
+import { cssValue } from "./helpers/unitConverter";
+import { createAnimation } from "./helpers/animation";
+var climbingBox = createAnimation("ClimbingBoxLoader", "0% {transform:translate(0, -1em) rotate(-45deg)}\n 5% {transform:translate(0, -1em) rotate(-50deg)}\n 20% {transform:translate(1em, -2em) rotate(47deg)}\n 25% {transform:translate(1em, -2em) rotate(45deg)}\n 30% {transform:translate(1em, -2em) rotate(40deg)}\n 45% {transform:translate(2em, -3em) rotate(137deg)}\n 50% {transform:translate(2em, -3em) rotate(135deg)}\n 55% {transform:translate(2em, -3em) rotate(130deg)}\n 70% {transform:translate(3em, -4em) rotate(217deg)}\n 75% {transform:translate(3em, -4em) rotate(220deg)}\n 100% {transform:translate(0, -1em) rotate(-225deg)}", "climbingBox");
+function ClimbingBoxLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 15 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var container = __assign({ display: "inherit", position: "relative", width: "7.1em", height: "7.1em" }, cssOverride);
+ var wrapper = {
+ position: "absolute",
+ top: "50%",
+ left: "50%",
+ marginTop: "-2.7em",
+ marginLeft: "-2.7em",
+ width: "5.4em",
+ height: "5.4em",
+ fontSize: cssValue(size),
+ };
+ var style = {
+ position: "absolute",
+ left: "0",
+ bottom: "-0.1em",
+ height: "1em",
+ width: "1em",
+ backgroundColor: "transparent",
+ borderRadius: "15%",
+ border: "0.25em solid ".concat(color),
+ transform: "translate(0, -1em) rotate(-45deg)",
+ animationFillMode: "both",
+ animation: "".concat(climbingBox, " ").concat(2.5 / speedMultiplier, "s infinite cubic-bezier(0.79, 0, 0.47, 0.97)"),
+ };
+ var hill = {
+ position: "absolute",
+ width: "7.1em",
+ height: "7.1em",
+ top: "1.7em",
+ left: "1.7em",
+ borderLeft: "0.25em solid ".concat(color),
+ transform: "rotate(45deg)",
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: container }, additionalprops),
+ React.createElement("span", { style: wrapper },
+ React.createElement("span", { style: style }),
+ React.createElement("span", { style: hill }))));
+}
+export default ClimbingBoxLoader;
diff --git a/frontend/node_modules/react-spinners/esm/ClipLoader.d.ts b/frontend/node_modules/react-spinners/esm/ClipLoader.d.ts
new file mode 100644
index 000000000..336d685c2
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/ClipLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function ClipLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default ClipLoader;
diff --git a/frontend/node_modules/react-spinners/esm/ClipLoader.js b/frontend/node_modules/react-spinners/esm/ClipLoader.js
new file mode 100644
index 000000000..a26277b15
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/ClipLoader.js
@@ -0,0 +1,35 @@
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+import * as React from "react";
+import { cssValue } from "./helpers/unitConverter";
+import { createAnimation } from "./helpers/animation";
+var clip = createAnimation("ClipLoader", "0% {transform: rotate(0deg) scale(1)} 50% {transform: rotate(180deg) scale(0.8)} 100% {transform: rotate(360deg) scale(1)}", "clip");
+function ClipLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 35 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var style = __assign({ background: "transparent !important", width: cssValue(size), height: cssValue(size), borderRadius: "100%", border: "2px solid", borderTopColor: color, borderBottomColor: "transparent", borderLeftColor: color, borderRightColor: color, display: "inline-block", animation: "".concat(clip, " ").concat(0.75 / speedMultiplier, "s 0s infinite linear"), animationFillMode: "both" }, cssOverride);
+ if (!loading) {
+ return null;
+ }
+ return React.createElement("span", __assign({ style: style }, additionalprops));
+}
+export default ClipLoader;
diff --git a/frontend/node_modules/react-spinners/esm/ClockLoader.d.ts b/frontend/node_modules/react-spinners/esm/ClockLoader.d.ts
new file mode 100644
index 000000000..57785be37
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/ClockLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function ClockLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default ClockLoader;
diff --git a/frontend/node_modules/react-spinners/esm/ClockLoader.js b/frontend/node_modules/react-spinners/esm/ClockLoader.js
new file mode 100644
index 000000000..f20c5cb03
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/ClockLoader.js
@@ -0,0 +1,58 @@
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+import * as React from "react";
+import { parseLengthAndUnit } from "./helpers/unitConverter";
+import { createAnimation } from "./helpers/animation";
+var rotate = createAnimation("ClockLoader", "100% { transform: rotate(360deg) }", "rotate");
+function ClockLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 50 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var _g = parseLengthAndUnit(size), value = _g.value, unit = _g.unit;
+ var wrapper = __assign({ display: "inherit", position: "relative", width: "".concat(value).concat(unit), height: "".concat(value).concat(unit), backgroundColor: "transparent", boxShadow: "inset 0px 0px 0px 2px ".concat(color), borderRadius: "50%" }, cssOverride);
+ var minute = {
+ position: "absolute",
+ backgroundColor: color,
+ width: "".concat(value / 3, "px"),
+ height: "2px",
+ top: "".concat(value / 2 - 1, "px"),
+ left: "".concat(value / 2 - 1, "px"),
+ transformOrigin: "1px 1px",
+ animation: "".concat(rotate, " ").concat(8 / speedMultiplier, "s linear infinite"),
+ };
+ var hour = {
+ position: "absolute",
+ backgroundColor: color,
+ width: "".concat(value / 2.4, "px"),
+ height: "2px",
+ top: "".concat(value / 2 - 1, "px"),
+ left: "".concat(value / 2 - 1, "px"),
+ transformOrigin: "1px 1px",
+ animation: "".concat(rotate, " ").concat(2 / speedMultiplier, "s linear infinite"),
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: hour }),
+ React.createElement("span", { style: minute })));
+}
+export default ClockLoader;
diff --git a/frontend/node_modules/react-spinners/esm/DotLoader.d.ts b/frontend/node_modules/react-spinners/esm/DotLoader.d.ts
new file mode 100644
index 000000000..f3cd003ad
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/DotLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function DotLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default DotLoader;
diff --git a/frontend/node_modules/react-spinners/esm/DotLoader.js b/frontend/node_modules/react-spinners/esm/DotLoader.js
new file mode 100644
index 000000000..9a7ba1c51
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/DotLoader.js
@@ -0,0 +1,52 @@
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+import * as React from "react";
+import { parseLengthAndUnit, cssValue } from "./helpers/unitConverter";
+import { createAnimation } from "./helpers/animation";
+var rotate = createAnimation("DotLoader", "100% {transform: rotate(360deg)}", "rotate");
+var bounce = createAnimation("DotLoader", "0%, 100% {transform: scale(0)} 50% {transform: scale(1.0)}", "bounce");
+function DotLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 60 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var wrapper = __assign({ display: "inherit", position: "relative", width: cssValue(size), height: cssValue(size), animationFillMode: "forwards", animation: "".concat(rotate, " ").concat(2 / speedMultiplier, "s 0s infinite linear") }, cssOverride);
+ var style = function (i) {
+ var _a = parseLengthAndUnit(size), value = _a.value, unit = _a.unit;
+ return {
+ position: "absolute",
+ top: i % 2 ? "0" : "auto",
+ bottom: i % 2 ? "auto" : "0",
+ height: "".concat(value / 2).concat(unit),
+ width: "".concat(value / 2).concat(unit),
+ backgroundColor: color,
+ borderRadius: "100%",
+ animationFillMode: "forwards",
+ animation: "".concat(bounce, " ").concat(2 / speedMultiplier, "s ").concat(i === 2 ? "1s" : "0s", " infinite linear"),
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) })));
+}
+export default DotLoader;
diff --git a/frontend/node_modules/react-spinners/esm/FadeLoader.d.ts b/frontend/node_modules/react-spinners/esm/FadeLoader.d.ts
new file mode 100644
index 000000000..98053e8e4
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/FadeLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderHeightWidthRadiusProps } from "./helpers/props";
+declare function FadeLoader({ loading, color, speedMultiplier, cssOverride, height, width, radius, margin, ...additionalprops }: LoaderHeightWidthRadiusProps): JSX.Element | null;
+export default FadeLoader;
diff --git a/frontend/node_modules/react-spinners/esm/FadeLoader.js b/frontend/node_modules/react-spinners/esm/FadeLoader.js
new file mode 100644
index 000000000..1cf28066d
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/FadeLoader.js
@@ -0,0 +1,67 @@
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+import * as React from "react";
+import { cssValue, parseLengthAndUnit } from "./helpers/unitConverter";
+import { createAnimation } from "./helpers/animation";
+var fade = createAnimation("FadeLoader", "50% {opacity: 0.3} 100% {opacity: 1}", "fade");
+function FadeLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.height, height = _f === void 0 ? 15 : _f, _g = _a.width, width = _g === void 0 ? 5 : _g, _h = _a.radius, radius = _h === void 0 ? 2 : _h, _j = _a.margin, margin = _j === void 0 ? 2 : _j, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "height", "width", "radius", "margin"]);
+ var value = parseLengthAndUnit(margin).value;
+ var radiusValue = value + 18;
+ var quarter = radiusValue / 2 + radiusValue / 5.5;
+ var wrapper = __assign({ display: "inherit", position: "relative", fontSize: "0", top: radiusValue, left: radiusValue, width: "".concat(radiusValue * 3, "px"), height: "".concat(radiusValue * 3, "px") }, cssOverride);
+ var style = function (i) {
+ return {
+ position: "absolute",
+ width: cssValue(width),
+ height: cssValue(height),
+ margin: cssValue(margin),
+ backgroundColor: color,
+ borderRadius: cssValue(radius),
+ transition: "2s",
+ animationFillMode: "both",
+ animation: "".concat(fade, " ").concat(1.2 / speedMultiplier, "s ").concat(i * 0.12, "s infinite ease-in-out"),
+ };
+ };
+ var a = __assign(__assign({}, style(1)), { top: "".concat(radiusValue, "px"), left: "0" });
+ var b = __assign(__assign({}, style(2)), { top: "".concat(quarter, "px"), left: "".concat(quarter, "px"), transform: "rotate(-45deg)" });
+ var c = __assign(__assign({}, style(3)), { top: "0", left: "".concat(radiusValue, "px"), transform: "rotate(90deg)" });
+ var d = __assign(__assign({}, style(4)), { top: "".concat(-1 * quarter, "px"), left: "".concat(quarter, "px"), transform: "rotate(45deg)" });
+ var e = __assign(__assign({}, style(5)), { top: "".concat(-1 * radiusValue, "px"), left: "0" });
+ var f = __assign(__assign({}, style(6)), { top: "".concat(-1 * quarter, "px"), left: "".concat(-1 * quarter, "px"), transform: "rotate(-45deg)" });
+ var g = __assign(__assign({}, style(7)), { top: "0", left: "".concat(-1 * radiusValue, "px"), transform: "rotate(90deg)" });
+ var h = __assign(__assign({}, style(8)), { top: "".concat(quarter, "px"), left: "".concat(-1 * quarter, "px"), transform: "rotate(45deg)" });
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: a }),
+ React.createElement("span", { style: b }),
+ React.createElement("span", { style: c }),
+ React.createElement("span", { style: d }),
+ React.createElement("span", { style: e }),
+ React.createElement("span", { style: f }),
+ React.createElement("span", { style: g }),
+ React.createElement("span", { style: h })));
+}
+export default FadeLoader;
diff --git a/frontend/node_modules/react-spinners/esm/GridLoader.d.ts b/frontend/node_modules/react-spinners/esm/GridLoader.d.ts
new file mode 100644
index 000000000..06fa46b8c
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/GridLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeMarginProps } from "./helpers/props";
+declare function GridLoader({ loading, color, speedMultiplier, cssOverride, size, margin, ...additionalprops }: LoaderSizeMarginProps): JSX.Element | null;
+export default GridLoader;
diff --git a/frontend/node_modules/react-spinners/esm/GridLoader.js b/frontend/node_modules/react-spinners/esm/GridLoader.js
new file mode 100644
index 000000000..3fd77dad0
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/GridLoader.js
@@ -0,0 +1,64 @@
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+import * as React from "react";
+import { cssValue, parseLengthAndUnit } from "./helpers/unitConverter";
+import { createAnimation } from "./helpers/animation";
+var grid = createAnimation("GridLoader", "0% {transform: scale(1)} 50% {transform: scale(0.5); opacity: 0.7} 100% {transform: scale(1); opacity: 1}", "grid");
+var random = function (top) { return Math.random() * top; };
+function GridLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 15 : _f, _g = _a.margin, margin = _g === void 0 ? 2 : _g, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size", "margin"]);
+ var sizeWithUnit = parseLengthAndUnit(size);
+ var marginWithUnit = parseLengthAndUnit(margin);
+ var width = parseFloat(sizeWithUnit.value.toString()) * 3 + parseFloat(marginWithUnit.value.toString()) * 6;
+ var wrapper = __assign({ width: "".concat(width).concat(sizeWithUnit.unit), fontSize: 0, display: "inline-block" }, cssOverride);
+ var style = function (rand) {
+ return {
+ display: "inline-block",
+ backgroundColor: color,
+ width: "".concat(cssValue(size)),
+ height: "".concat(cssValue(size)),
+ margin: cssValue(margin),
+ borderRadius: "100%",
+ animationFillMode: "both",
+ animation: "".concat(grid, " ").concat((rand / 100 + 0.6) / speedMultiplier, "s ").concat(rand / 100 - 0.2, "s infinite ease"),
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops, { ref: function (node) {
+ if (node) {
+ node.style.setProperty("width", "".concat(width).concat(sizeWithUnit.unit), "important");
+ }
+ } }),
+ React.createElement("span", { style: style(random(100)) }),
+ React.createElement("span", { style: style(random(100)) }),
+ React.createElement("span", { style: style(random(100)) }),
+ React.createElement("span", { style: style(random(100)) }),
+ React.createElement("span", { style: style(random(100)) }),
+ React.createElement("span", { style: style(random(100)) }),
+ React.createElement("span", { style: style(random(100)) }),
+ React.createElement("span", { style: style(random(100)) }),
+ React.createElement("span", { style: style(random(100)) })));
+}
+export default GridLoader;
diff --git a/frontend/node_modules/react-spinners/esm/HashLoader.d.ts b/frontend/node_modules/react-spinners/esm/HashLoader.d.ts
new file mode 100644
index 000000000..ca1763ff3
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/HashLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function HashLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default HashLoader;
diff --git a/frontend/node_modules/react-spinners/esm/HashLoader.js b/frontend/node_modules/react-spinners/esm/HashLoader.js
new file mode 100644
index 000000000..61fe2ea19
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/HashLoader.js
@@ -0,0 +1,58 @@
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+import * as React from "react";
+import { calculateRgba } from "./helpers/colors";
+import { parseLengthAndUnit, cssValue } from "./helpers/unitConverter";
+import { createAnimation } from "./helpers/animation";
+function HashLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 50 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var _g = parseLengthAndUnit(size), value = _g.value, unit = _g.unit;
+ var wrapper = __assign({ display: "inherit", position: "relative", width: cssValue(size), height: cssValue(size), transform: "rotate(165deg)" }, cssOverride);
+ var thickness = value / 5;
+ var lat = (value - thickness) / 2;
+ var offset = lat - thickness;
+ var colorValue = calculateRgba(color, 0.75);
+ var before = createAnimation("HashLoader", "0% {width: ".concat(thickness, "px; box-shadow: ").concat(lat, "px ").concat(-offset, "px ").concat(colorValue, ", ").concat(-lat, "px ").concat(offset, "px ").concat(colorValue, "}\n 35% {width: ").concat(cssValue(size), "; box-shadow: 0 ").concat(-offset, "px ").concat(colorValue, ", 0 ").concat(offset, "px ").concat(colorValue, "}\n 70% {width: ").concat(thickness, "px; box-shadow: ").concat(-lat, "px ").concat(-offset, "px ").concat(colorValue, ", ").concat(lat, "px ").concat(offset, "px ").concat(colorValue, "}\n 100% {box-shadow: ").concat(lat, "px ").concat(-offset, "px ").concat(colorValue, ", ").concat(-lat, "px ").concat(offset, "px ").concat(colorValue, "}"), "before");
+ var after = createAnimation("HashLoader", "0% {height: ".concat(thickness, "px; box-shadow: ").concat(offset, "px ").concat(lat, "px ").concat(color, ", ").concat(-offset, "px ").concat(-lat, "px ").concat(color, "}\n 35% {height: ").concat(cssValue(size), "; box-shadow: ").concat(offset, "px 0 ").concat(color, ", ").concat(-offset, "px 0 ").concat(color, "}\n 70% {height: ").concat(thickness, "px; box-shadow: ").concat(offset, "px ").concat(-lat, "px ").concat(color, ", ").concat(-offset, "px ").concat(lat, "px ").concat(color, "}\n 100% {box-shadow: ").concat(offset, "px ").concat(lat, "px ").concat(color, ", ").concat(-offset, "px ").concat(-lat, "px ").concat(color, "}"), "after");
+ var style = function (i) {
+ return {
+ position: "absolute",
+ top: "50%",
+ left: "50%",
+ display: "block",
+ width: "".concat(value / 5).concat(unit),
+ height: "".concat(value / 5).concat(unit),
+ borderRadius: "".concat(value / 10).concat(unit),
+ transform: "translate(-50%, -50%)",
+ animationFillMode: "none",
+ animation: "".concat(i === 1 ? before : after, " ").concat(2 / speedMultiplier, "s infinite"),
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) })));
+}
+export default HashLoader;
diff --git a/frontend/node_modules/react-spinners/esm/MoonLoader.d.ts b/frontend/node_modules/react-spinners/esm/MoonLoader.d.ts
new file mode 100644
index 000000000..2cf77a2c2
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/MoonLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function MoonLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default MoonLoader;
diff --git a/frontend/node_modules/react-spinners/esm/MoonLoader.js b/frontend/node_modules/react-spinners/esm/MoonLoader.js
new file mode 100644
index 000000000..5ab9a63a1
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/MoonLoader.js
@@ -0,0 +1,48 @@
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+import * as React from "react";
+import { parseLengthAndUnit, cssValue } from "./helpers/unitConverter";
+import { createAnimation } from "./helpers/animation";
+var moon = createAnimation("MoonLoader", "100% {transform: rotate(360deg)}", "moon");
+function MoonLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 60 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var _g = parseLengthAndUnit(size), value = _g.value, unit = _g.unit;
+ var moonSize = value / 7;
+ var wrapper = __assign({ display: "inherit", position: "relative", width: "".concat("".concat(value + moonSize * 2).concat(unit)), height: "".concat("".concat(value + moonSize * 2).concat(unit)), animation: "".concat(moon, " ").concat(0.6 / speedMultiplier, "s 0s infinite linear"), animationFillMode: "forwards" }, cssOverride);
+ var ballStyle = function (size) {
+ return {
+ width: cssValue(size),
+ height: cssValue(size),
+ borderRadius: "100%",
+ };
+ };
+ var ball = __assign(__assign({}, ballStyle(moonSize)), { backgroundColor: "".concat(color), opacity: "0.8", position: "absolute", top: "".concat("".concat(value / 2 - moonSize / 2).concat(unit)), animation: "".concat(moon, " ").concat(0.6 / speedMultiplier, "s 0s infinite linear"), animationFillMode: "forwards" });
+ var circle = __assign(__assign({}, ballStyle(value)), { border: "".concat(moonSize, "px solid ").concat(color), opacity: "0.1", boxSizing: "content-box", position: "absolute" });
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: ball }),
+ React.createElement("span", { style: circle })));
+}
+export default MoonLoader;
diff --git a/frontend/node_modules/react-spinners/esm/PacmanLoader.d.ts b/frontend/node_modules/react-spinners/esm/PacmanLoader.d.ts
new file mode 100644
index 000000000..e8ad135e3
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/PacmanLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeMarginProps } from "./helpers/props";
+declare function PacmanLoader({ loading, color, speedMultiplier, cssOverride, size, margin, ...additionalprops }: LoaderSizeMarginProps): JSX.Element | null;
+export default PacmanLoader;
diff --git a/frontend/node_modules/react-spinners/esm/PacmanLoader.js b/frontend/node_modules/react-spinners/esm/PacmanLoader.js
new file mode 100644
index 000000000..f409eb9ac
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/PacmanLoader.js
@@ -0,0 +1,79 @@
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+import * as React from "react";
+import { parseLengthAndUnit, cssValue } from "./helpers/unitConverter";
+import { createAnimation } from "./helpers/animation";
+var pacman = [
+ createAnimation("PacmanLoader", "0% {transform: rotate(0deg)} 50% {transform: rotate(-44deg)}", "pacman-1"),
+ createAnimation("PacmanLoader", "0% {transform: rotate(0deg)} 50% {transform: rotate(44deg)}", "pacman-2"),
+];
+function PacmanLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 25 : _f, _g = _a.margin, margin = _g === void 0 ? 2 : _g, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size", "margin"]);
+ var _h = parseLengthAndUnit(size), value = _h.value, unit = _h.unit;
+ var wrapper = __assign({ display: "inherit", position: "relative", fontSize: 0, height: "".concat(value * 2).concat(unit), width: "".concat(value * 2).concat(unit) }, cssOverride);
+ var ball = createAnimation("PacmanLoader", "75% {opacity: 0.7}\n 100% {transform: translate(".concat("".concat(-4 * value).concat(unit), ", ").concat("".concat(-value / 4).concat(unit), ")}"), "ball");
+ var ballStyle = function (i) {
+ return {
+ width: "".concat(value / 3).concat(unit),
+ height: "".concat(value / 3).concat(unit),
+ backgroundColor: color,
+ margin: cssValue(margin),
+ borderRadius: "100%",
+ transform: "translate(0, ".concat("".concat(-value / 4).concat(unit), ")"),
+ position: "absolute",
+ top: "".concat(value).concat(unit),
+ left: "".concat(value * 4).concat(unit),
+ animation: "".concat(ball, " ").concat(1 / speedMultiplier, "s ").concat(i * 0.25, "s infinite linear"),
+ animationFillMode: "both",
+ };
+ };
+ var s1 = "".concat(cssValue(size), " solid transparent");
+ var s2 = "".concat(cssValue(size), " solid ").concat(color);
+ var pacmanStyle = function (i) {
+ return {
+ width: 0,
+ height: 0,
+ borderRight: s1,
+ borderTop: i === 0 ? s1 : s2,
+ borderLeft: s2,
+ borderBottom: i === 0 ? s2 : s1,
+ borderRadius: cssValue(size),
+ position: "absolute",
+ animation: "".concat(pacman[i], " ").concat(0.8 / speedMultiplier, "s infinite ease-in-out"),
+ animationFillMode: "both",
+ };
+ };
+ var pac = pacmanStyle(0);
+ var man = pacmanStyle(1);
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: pac }),
+ React.createElement("span", { style: man }),
+ React.createElement("span", { style: ballStyle(2) }),
+ React.createElement("span", { style: ballStyle(3) }),
+ React.createElement("span", { style: ballStyle(4) }),
+ React.createElement("span", { style: ballStyle(5) })));
+}
+export default PacmanLoader;
diff --git a/frontend/node_modules/react-spinners/esm/PropagateLoader.d.ts b/frontend/node_modules/react-spinners/esm/PropagateLoader.d.ts
new file mode 100644
index 000000000..ff39bb03e
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/PropagateLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function PropagateLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default PropagateLoader;
diff --git a/frontend/node_modules/react-spinners/esm/PropagateLoader.js b/frontend/node_modules/react-spinners/esm/PropagateLoader.js
new file mode 100644
index 000000000..9d45f3496
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/PropagateLoader.js
@@ -0,0 +1,63 @@
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+import * as React from "react";
+import { parseLengthAndUnit } from "./helpers/unitConverter";
+import { createAnimation } from "./helpers/animation";
+// 1.5 4.5 7.5
+var distance = [1, 3, 5];
+var propagate = [
+ createAnimation("PropagateLoader", "25% {transform: translateX(-".concat(distance[0], "rem) scale(0.75)}\n 50% {transform: translateX(-").concat(distance[1], "rem) scale(0.6)}\n 75% {transform: translateX(-").concat(distance[2], "rem) scale(0.5)}\n 95% {transform: translateX(0rem) scale(1)}"), "propogate-0"),
+ createAnimation("PropagateLoader", "25% {transform: translateX(-".concat(distance[0], "rem) scale(0.75)}\n 50% {transform: translateX(-").concat(distance[1], "rem) scale(0.6)}\n 75% {transform: translateX(-").concat(distance[1], "rem) scale(0.6)}\n 95% {transform: translateX(0rem) scale(1)}"), "propogate-1"),
+ createAnimation("PropagateLoader", "25% {transform: translateX(-".concat(distance[0], "rem) scale(0.75)}\n 75% {transform: translateX(-").concat(distance[0], "rem) scale(0.75)}\n 95% {transform: translateX(0rem) scale(1)}"), "propogate-2"),
+ createAnimation("PropagateLoader", "25% {transform: translateX(".concat(distance[0], "rem) scale(0.75)}\n 75% {transform: translateX(").concat(distance[0], "rem) scale(0.75)}\n 95% {transform: translateX(0rem) scale(1)}"), "propogate-3"),
+ createAnimation("PropagateLoader", "25% {transform: translateX(".concat(distance[0], "rem) scale(0.75)}\n 50% {transform: translateX(").concat(distance[1], "rem) scale(0.6)}\n 75% {transform: translateX(").concat(distance[1], "rem) scale(0.6)}\n 95% {transform: translateX(0rem) scale(1)}"), "propogate-4"),
+ createAnimation("PropagateLoader", "25% {transform: translateX(".concat(distance[0], "rem) scale(0.75)}\n 50% {transform: translateX(").concat(distance[1], "rem) scale(0.6)}\n 75% {transform: translateX(").concat(distance[2], "rem) scale(0.5)}\n 95% {transform: translateX(0rem) scale(1)}"), "propogate-5"),
+];
+function PropagateLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 15 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var _g = parseLengthAndUnit(size), value = _g.value, unit = _g.unit;
+ var wrapper = __assign({ display: "inherit", position: "relative" }, cssOverride);
+ var style = function (i) {
+ return {
+ position: "absolute",
+ fontSize: "".concat(value / 3).concat(unit),
+ width: "".concat(value).concat(unit),
+ height: "".concat(value).concat(unit),
+ background: color,
+ borderRadius: "50%",
+ animation: "".concat(propagate[i], " ").concat(1.5 / speedMultiplier, "s infinite"),
+ animationFillMode: "forwards",
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(0) }),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) }),
+ React.createElement("span", { style: style(3) }),
+ React.createElement("span", { style: style(4) }),
+ React.createElement("span", { style: style(5) })));
+}
+export default PropagateLoader;
diff --git a/frontend/node_modules/react-spinners/esm/PuffLoader.d.ts b/frontend/node_modules/react-spinners/esm/PuffLoader.d.ts
new file mode 100644
index 000000000..e6ae1d0c8
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/PuffLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function PuffLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default PuffLoader;
diff --git a/frontend/node_modules/react-spinners/esm/PuffLoader.js b/frontend/node_modules/react-spinners/esm/PuffLoader.js
new file mode 100644
index 000000000..1fde72b01
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/PuffLoader.js
@@ -0,0 +1,58 @@
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+import * as React from "react";
+import { cssValue } from "./helpers/unitConverter";
+import { createAnimation } from "./helpers/animation";
+var puff = [
+ createAnimation("PuffLoader", "0% {transform: scale(0)} 100% {transform: scale(1.0)}", "puff-1"),
+ createAnimation("PuffLoader", "0% {opacity: 1} 100% {opacity: 0}", "puff-2"),
+];
+function PuffLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 60 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var wrapper = __assign({ display: "inherit", position: "relative", width: cssValue(size), height: cssValue(size) }, cssOverride);
+ var style = function (i) {
+ return {
+ position: "absolute",
+ height: cssValue(size),
+ width: cssValue(size),
+ border: "thick solid ".concat(color),
+ borderRadius: "50%",
+ opacity: "1",
+ top: "0",
+ left: "0",
+ animationFillMode: "both",
+ animation: "".concat(puff[0], ", ").concat(puff[1]),
+ animationDuration: "".concat(2 / speedMultiplier, "s"),
+ animationIterationCount: "infinite",
+ animationTimingFunction: "cubic-bezier(0.165, 0.84, 0.44, 1), cubic-bezier(0.3, 0.61, 0.355, 1)",
+ animationDelay: i === 1 ? "-1s" : "0s",
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) })));
+}
+export default PuffLoader;
diff --git a/frontend/node_modules/react-spinners/esm/PulseLoader.d.ts b/frontend/node_modules/react-spinners/esm/PulseLoader.d.ts
new file mode 100644
index 000000000..abf34d4c5
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/PulseLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeMarginProps } from "./helpers/props";
+declare function PulseLoader({ loading, color, speedMultiplier, cssOverride, size, margin, ...additionalprops }: LoaderSizeMarginProps): JSX.Element | null;
+export default PulseLoader;
diff --git a/frontend/node_modules/react-spinners/esm/PulseLoader.js b/frontend/node_modules/react-spinners/esm/PulseLoader.js
new file mode 100644
index 000000000..9ef79c8ff
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/PulseLoader.js
@@ -0,0 +1,50 @@
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+import * as React from "react";
+import { cssValue } from "./helpers/unitConverter";
+import { createAnimation } from "./helpers/animation";
+var pulse = createAnimation("PulseLoader", "0% {transform: scale(1); opacity: 1} 45% {transform: scale(0.1); opacity: 0.7} 80% {transform: scale(1); opacity: 1}", "pulse");
+function PulseLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 15 : _f, _g = _a.margin, margin = _g === void 0 ? 2 : _g, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size", "margin"]);
+ var wrapper = __assign({ display: "inherit" }, cssOverride);
+ var style = function (i) {
+ return {
+ backgroundColor: color,
+ width: cssValue(size),
+ height: cssValue(size),
+ margin: cssValue(margin),
+ borderRadius: "100%",
+ display: "inline-block",
+ animation: "".concat(pulse, " ").concat(0.75 / speedMultiplier, "s ").concat((i * 0.12) / speedMultiplier, "s infinite cubic-bezier(0.2, 0.68, 0.18, 1.08)"),
+ animationFillMode: "both",
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) }),
+ React.createElement("span", { style: style(3) })));
+}
+export default PulseLoader;
diff --git a/frontend/node_modules/react-spinners/esm/RingLoader.d.ts b/frontend/node_modules/react-spinners/esm/RingLoader.d.ts
new file mode 100644
index 000000000..ebf7a62cb
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/RingLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function RingLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default RingLoader;
diff --git a/frontend/node_modules/react-spinners/esm/RingLoader.js b/frontend/node_modules/react-spinners/esm/RingLoader.js
new file mode 100644
index 000000000..246098743
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/RingLoader.js
@@ -0,0 +1,54 @@
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+import * as React from "react";
+import { parseLengthAndUnit, cssValue } from "./helpers/unitConverter";
+import { createAnimation } from "./helpers/animation";
+var right = createAnimation("RingLoader", "0% {transform: rotateX(0deg) rotateY(0deg) rotateZ(0deg)} 100% {transform: rotateX(180deg) rotateY(360deg) rotateZ(360deg)}", "right");
+var left = createAnimation("RingLoader", "0% {transform: rotateX(0deg) rotateY(0deg) rotateZ(0deg)} 100% {transform: rotateX(360deg) rotateY(180deg) rotateZ(360deg)}", "left");
+function RingLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 60 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var _g = parseLengthAndUnit(size), value = _g.value, unit = _g.unit;
+ var wrapper = __assign({ display: "inherit", width: cssValue(size), height: cssValue(size), position: "relative" }, cssOverride);
+ var style = function (i) {
+ return {
+ position: "absolute",
+ top: "0",
+ left: "0",
+ width: "".concat(value).concat(unit),
+ height: "".concat(value).concat(unit),
+ border: "".concat(value / 10).concat(unit, " solid ").concat(color),
+ opacity: "0.4",
+ borderRadius: "100%",
+ animationFillMode: "forwards",
+ perspective: "800px",
+ animation: "".concat(i === 1 ? right : left, " ").concat(2 / speedMultiplier, "s 0s infinite linear"),
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) })));
+}
+export default RingLoader;
diff --git a/frontend/node_modules/react-spinners/esm/RiseLoader.d.ts b/frontend/node_modules/react-spinners/esm/RiseLoader.d.ts
new file mode 100644
index 000000000..7ed595882
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/RiseLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeMarginProps } from "./helpers/props";
+declare function RiseLoader({ loading, color, speedMultiplier, cssOverride, size, margin, ...additionalprops }: LoaderSizeMarginProps): JSX.Element | null;
+export default RiseLoader;
diff --git a/frontend/node_modules/react-spinners/esm/RiseLoader.js b/frontend/node_modules/react-spinners/esm/RiseLoader.js
new file mode 100644
index 000000000..03a72fe9e
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/RiseLoader.js
@@ -0,0 +1,53 @@
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+import * as React from "react";
+import { cssValue } from "./helpers/unitConverter";
+import { createAnimation } from "./helpers/animation";
+function RiseLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 15 : _f, _g = _a.margin, margin = _g === void 0 ? 2 : _g, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size", "margin"]);
+ var wrapper = __assign({ display: "inherit" }, cssOverride);
+ var even = createAnimation("RiseLoader", "0% {transform: scale(1.1)}\n 25% {transform: translateY(-".concat(size, "px)}\n 50% {transform: scale(0.4)}\n 75% {transform: translateY(").concat(size, "px)}\n 100% {transform: translateY(0) scale(1.0)}"), "even");
+ var odd = createAnimation("RiseLoader", "0% {transform: scale(0.4)}\n 25% {transform: translateY(".concat(size, "px)}\n 50% {transform: scale(1.1)}\n 75% {transform: translateY(").concat(-size, "px)}\n 100% {transform: translateY(0) scale(0.75)}"), "odd");
+ var style = function (i) {
+ return {
+ backgroundColor: color,
+ width: cssValue(size),
+ height: cssValue(size),
+ margin: cssValue(margin),
+ borderRadius: "100%",
+ display: "inline-block",
+ animation: "".concat(i % 2 === 0 ? even : odd, " ").concat(1 / speedMultiplier, "s 0s infinite cubic-bezier(0.15, 0.46, 0.9, 0.6)"),
+ animationFillMode: "both",
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) }),
+ React.createElement("span", { style: style(3) }),
+ React.createElement("span", { style: style(4) }),
+ React.createElement("span", { style: style(5) })));
+}
+export default RiseLoader;
diff --git a/frontend/node_modules/react-spinners/esm/RotateLoader.d.ts b/frontend/node_modules/react-spinners/esm/RotateLoader.d.ts
new file mode 100644
index 000000000..9577c1805
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/RotateLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeMarginProps } from "./helpers/props";
+declare function RotateLoader({ loading, color, speedMultiplier, cssOverride, size, margin, ...additionalprops }: LoaderSizeMarginProps): JSX.Element | null;
+export default RotateLoader;
diff --git a/frontend/node_modules/react-spinners/esm/RotateLoader.js b/frontend/node_modules/react-spinners/esm/RotateLoader.js
new file mode 100644
index 000000000..d7739f40e
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/RotateLoader.js
@@ -0,0 +1,53 @@
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+import * as React from "react";
+import { cssValue, parseLengthAndUnit } from "./helpers/unitConverter";
+import { createAnimation } from "./helpers/animation";
+var rotate = createAnimation("RotateLoader", "0% {transform: rotate(0deg)} 50% {transform: rotate(180deg)} 100% {transform: rotate(360deg)}", "rotate");
+function RotateLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 15 : _f, _g = _a.margin, margin = _g === void 0 ? 2 : _g, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size", "margin"]);
+ var _h = parseLengthAndUnit(margin), value = _h.value, unit = _h.unit;
+ var ball = {
+ backgroundColor: color,
+ width: cssValue(size),
+ height: cssValue(size),
+ borderRadius: "100%",
+ };
+ var wrapper = __assign(__assign(__assign({}, ball), { display: "inline-block", position: "relative", animationFillMode: "both", animation: "".concat(rotate, " ").concat(1 / speedMultiplier, "s 0s infinite cubic-bezier(0.7, -0.13, 0.22, 0.86)") }), cssOverride);
+ var style = function (i) {
+ var left = (i % 2 ? -1 : 1) * (26 + value);
+ return {
+ opacity: "0.8",
+ position: "absolute",
+ top: "0",
+ left: "".concat(left).concat(unit),
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: __assign(__assign({}, ball), style(1)) }),
+ React.createElement("span", { style: __assign(__assign({}, ball), style(2)) })));
+}
+export default RotateLoader;
diff --git a/frontend/node_modules/react-spinners/esm/ScaleLoader.d.ts b/frontend/node_modules/react-spinners/esm/ScaleLoader.d.ts
new file mode 100644
index 000000000..23f085479
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/ScaleLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderHeightWidthRadiusProps } from "./helpers/props";
+declare function ScaleLoader({ loading, color, speedMultiplier, cssOverride, height, width, radius, margin, ...additionalprops }: LoaderHeightWidthRadiusProps): JSX.Element | null;
+export default ScaleLoader;
diff --git a/frontend/node_modules/react-spinners/esm/ScaleLoader.js b/frontend/node_modules/react-spinners/esm/ScaleLoader.js
new file mode 100644
index 000000000..33560446f
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/ScaleLoader.js
@@ -0,0 +1,52 @@
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+import * as React from "react";
+import { cssValue } from "./helpers/unitConverter";
+import { createAnimation } from "./helpers/animation";
+var scale = createAnimation("ScaleLoader", "0% {transform: scaley(1.0)} 50% {transform: scaley(0.4)} 100% {transform: scaley(1.0)}", "scale");
+function ScaleLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.height, height = _f === void 0 ? 35 : _f, _g = _a.width, width = _g === void 0 ? 4 : _g, _h = _a.radius, radius = _h === void 0 ? 2 : _h, _j = _a.margin, margin = _j === void 0 ? 2 : _j, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "height", "width", "radius", "margin"]);
+ var wrapper = __assign({ display: "inherit" }, cssOverride);
+ var style = function (i) {
+ return {
+ backgroundColor: color,
+ width: cssValue(width),
+ height: cssValue(height),
+ margin: cssValue(margin),
+ borderRadius: cssValue(radius),
+ display: "inline-block",
+ animation: "".concat(scale, " ").concat(1 / speedMultiplier, "s ").concat(i * 0.1, "s infinite cubic-bezier(0.2, 0.68, 0.18, 1.08)"),
+ animationFillMode: "both",
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) }),
+ React.createElement("span", { style: style(3) }),
+ React.createElement("span", { style: style(4) }),
+ React.createElement("span", { style: style(5) })));
+}
+export default ScaleLoader;
diff --git a/frontend/node_modules/react-spinners/esm/SkewLoader.d.ts b/frontend/node_modules/react-spinners/esm/SkewLoader.d.ts
new file mode 100644
index 000000000..98cd30f0f
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/SkewLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function SkewLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default SkewLoader;
diff --git a/frontend/node_modules/react-spinners/esm/SkewLoader.js b/frontend/node_modules/react-spinners/esm/SkewLoader.js
new file mode 100644
index 000000000..1d049116a
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/SkewLoader.js
@@ -0,0 +1,35 @@
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+import * as React from "react";
+import { cssValue } from "./helpers/unitConverter";
+import { createAnimation } from "./helpers/animation";
+var skew = createAnimation("SkewLoader", "25% {transform: perspective(100px) rotateX(180deg) rotateY(0)} 50% {transform: perspective(100px) rotateX(180deg) rotateY(180deg)} 75% {transform: perspective(100px) rotateX(0) rotateY(180deg)} 100% {transform: perspective(100px) rotateX(0) rotateY(0)}", "skew");
+function SkewLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 20 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var style = __assign({ width: "0", height: "0", borderLeft: "".concat(cssValue(size), " solid transparent"), borderRight: "".concat(cssValue(size), " solid transparent"), borderBottom: "".concat(cssValue(size), " solid ").concat(color), display: "inline-block", animation: "".concat(skew, " ").concat(3 / speedMultiplier, "s 0s infinite cubic-bezier(0.09, 0.57, 0.49, 0.9)"), animationFillMode: "both" }, cssOverride);
+ if (!loading) {
+ return null;
+ }
+ return React.createElement("span", __assign({ style: style }, additionalprops));
+}
+export default SkewLoader;
diff --git a/frontend/node_modules/react-spinners/esm/SquareLoader.d.ts b/frontend/node_modules/react-spinners/esm/SquareLoader.d.ts
new file mode 100644
index 000000000..2fa2e689d
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/SquareLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function SquareLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default SquareLoader;
diff --git a/frontend/node_modules/react-spinners/esm/SquareLoader.js b/frontend/node_modules/react-spinners/esm/SquareLoader.js
new file mode 100644
index 000000000..b021df890
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/SquareLoader.js
@@ -0,0 +1,35 @@
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+import * as React from "react";
+import { cssValue } from "./helpers/unitConverter";
+import { createAnimation } from "./helpers/animation";
+var square = createAnimation("SquareLoader", "25% {transform: rotateX(180deg) rotateY(0)}\n 50% {transform: rotateX(180deg) rotateY(180deg)} \n 75% {transform: rotateX(0) rotateY(180deg)} \n 100% {transform: rotateX(0) rotateY(0)}", "square");
+function SquareLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 50 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var style = __assign({ backgroundColor: color, width: cssValue(size), height: cssValue(size), display: "inline-block", animation: "".concat(square, " ").concat(3 / speedMultiplier, "s 0s infinite cubic-bezier(0.09, 0.57, 0.49, 0.9)"), animationFillMode: "both" }, cssOverride);
+ if (!loading) {
+ return null;
+ }
+ return React.createElement("span", __assign({ style: style }, additionalprops));
+}
+export default SquareLoader;
diff --git a/frontend/node_modules/react-spinners/esm/SyncLoader.d.ts b/frontend/node_modules/react-spinners/esm/SyncLoader.d.ts
new file mode 100644
index 000000000..252c84820
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/SyncLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeMarginProps } from "./helpers/props";
+declare function SyncLoader({ loading, color, speedMultiplier, cssOverride, size, margin, ...additionalprops }: LoaderSizeMarginProps): JSX.Element | null;
+export default SyncLoader;
diff --git a/frontend/node_modules/react-spinners/esm/SyncLoader.js b/frontend/node_modules/react-spinners/esm/SyncLoader.js
new file mode 100644
index 000000000..4c4b567e6
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/SyncLoader.js
@@ -0,0 +1,50 @@
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+import * as React from "react";
+import { createAnimation } from "./helpers/animation";
+import { cssValue } from "./helpers/unitConverter";
+var sync = createAnimation("SyncLoader", "33% {transform: translateY(10px)}\n 66% {transform: translateY(-10px)}\n 100% {transform: translateY(0)}", "sync");
+function SyncLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 15 : _f, _g = _a.margin, margin = _g === void 0 ? 2 : _g, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size", "margin"]);
+ var wrapper = __assign({ display: "inherit" }, cssOverride);
+ var style = function (i) {
+ return {
+ backgroundColor: color,
+ width: cssValue(size),
+ height: cssValue(size),
+ margin: cssValue(margin),
+ borderRadius: "100%",
+ display: "inline-block",
+ animation: "".concat(sync, " ").concat(0.6 / speedMultiplier, "s ").concat(i * 0.07, "s infinite ease-in-out"),
+ animationFillMode: "both",
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) }),
+ React.createElement("span", { style: style(3) })));
+}
+export default SyncLoader;
diff --git a/frontend/node_modules/react-spinners/esm/helpers/animation.d.ts b/frontend/node_modules/react-spinners/esm/helpers/animation.d.ts
new file mode 100644
index 000000000..196a3bd20
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/helpers/animation.d.ts
@@ -0,0 +1 @@
+export declare const createAnimation: (loaderName: string, frames: string, suffix: string) => string;
diff --git a/frontend/node_modules/react-spinners/esm/helpers/animation.js b/frontend/node_modules/react-spinners/esm/helpers/animation.js
new file mode 100644
index 000000000..dec73c0ba
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/helpers/animation.js
@@ -0,0 +1,14 @@
+export var createAnimation = function (loaderName, frames, suffix) {
+ var animationName = "react-spinners-".concat(loaderName, "-").concat(suffix);
+ if (typeof window == "undefined" || !window.document) {
+ return animationName;
+ }
+ var styleEl = document.createElement("style");
+ document.head.appendChild(styleEl);
+ var styleSheet = styleEl.sheet;
+ var keyFrames = "\n @keyframes ".concat(animationName, " {\n ").concat(frames, "\n }\n ");
+ if (styleSheet) {
+ styleSheet.insertRule(keyFrames, 0);
+ }
+ return animationName;
+};
diff --git a/frontend/node_modules/react-spinners/esm/helpers/animation.server.test.d.ts b/frontend/node_modules/react-spinners/esm/helpers/animation.server.test.d.ts
new file mode 100644
index 000000000..3275561ce
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/helpers/animation.server.test.d.ts
@@ -0,0 +1,4 @@
+/**
+ * @jest-environment node
+ */
+export {};
diff --git a/frontend/node_modules/react-spinners/esm/helpers/animation.server.test.js b/frontend/node_modules/react-spinners/esm/helpers/animation.server.test.js
new file mode 100644
index 000000000..611c4d125
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/helpers/animation.server.test.js
@@ -0,0 +1,10 @@
+/**
+ * @jest-environment node
+ */
+import { createAnimation } from "./animation";
+describe("animation", function () {
+ it("should not throw an error on server side", function () {
+ var name = createAnimation("TestLoader", "0% {left: -35%;right: 100%} 60% {left: 100%;right: -90%} 100% {left: 100%;right: -90%}", "my-suffix");
+ expect(name).toEqual("react-spinners-TestLoader-my-suffix");
+ });
+});
diff --git a/frontend/node_modules/react-spinners/esm/helpers/animation.test.d.ts b/frontend/node_modules/react-spinners/esm/helpers/animation.test.d.ts
new file mode 100644
index 000000000..cb0ff5c3b
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/helpers/animation.test.d.ts
@@ -0,0 +1 @@
+export {};
diff --git a/frontend/node_modules/react-spinners/esm/helpers/animation.test.js b/frontend/node_modules/react-spinners/esm/helpers/animation.test.js
new file mode 100644
index 000000000..fc44d3077
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/helpers/animation.test.js
@@ -0,0 +1,7 @@
+import { createAnimation } from "./animation";
+describe("createAnimation", function () {
+ it("should return name with suffix if passed in", function () {
+ var name = createAnimation("TestLoader", "0% {left: -35%;right: 100%} 60% {left: 100%;right: -90%} 100% {left: 100%;right: -90%}", "my-suffix");
+ expect(name).toEqual("react-spinners-TestLoader-my-suffix");
+ });
+});
diff --git a/frontend/node_modules/react-spinners/esm/helpers/colors.d.ts b/frontend/node_modules/react-spinners/esm/helpers/colors.d.ts
new file mode 100644
index 000000000..e6115a944
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/helpers/colors.d.ts
@@ -0,0 +1 @@
+export declare const calculateRgba: (color: string, opacity: number) => string;
diff --git a/frontend/node_modules/react-spinners/esm/helpers/colors.js b/frontend/node_modules/react-spinners/esm/helpers/colors.js
new file mode 100644
index 000000000..75249f28f
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/helpers/colors.js
@@ -0,0 +1,38 @@
+var BasicColors;
+(function (BasicColors) {
+ BasicColors["maroon"] = "#800000";
+ BasicColors["red"] = "#FF0000";
+ BasicColors["orange"] = "#FFA500";
+ BasicColors["yellow"] = "#FFFF00";
+ BasicColors["olive"] = "#808000";
+ BasicColors["green"] = "#008000";
+ BasicColors["purple"] = "#800080";
+ BasicColors["fuchsia"] = "#FF00FF";
+ BasicColors["lime"] = "#00FF00";
+ BasicColors["teal"] = "#008080";
+ BasicColors["aqua"] = "#00FFFF";
+ BasicColors["blue"] = "#0000FF";
+ BasicColors["navy"] = "#000080";
+ BasicColors["black"] = "#000000";
+ BasicColors["gray"] = "#808080";
+ BasicColors["silver"] = "#C0C0C0";
+ BasicColors["white"] = "#FFFFFF";
+})(BasicColors || (BasicColors = {}));
+export var calculateRgba = function (color, opacity) {
+ if (Object.keys(BasicColors).includes(color)) {
+ color = BasicColors[color];
+ }
+ if (color[0] === "#") {
+ color = color.slice(1);
+ }
+ if (color.length === 3) {
+ var res_1 = "";
+ color.split("").forEach(function (c) {
+ res_1 += c;
+ res_1 += c;
+ });
+ color = res_1;
+ }
+ var rgbValues = (color.match(/.{2}/g) || []).map(function (hex) { return parseInt(hex, 16); }).join(", ");
+ return "rgba(".concat(rgbValues, ", ").concat(opacity, ")");
+};
diff --git a/frontend/node_modules/react-spinners/esm/helpers/colors.test.d.ts b/frontend/node_modules/react-spinners/esm/helpers/colors.test.d.ts
new file mode 100644
index 000000000..cb0ff5c3b
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/helpers/colors.test.d.ts
@@ -0,0 +1 @@
+export {};
diff --git a/frontend/node_modules/react-spinners/esm/helpers/colors.test.js b/frontend/node_modules/react-spinners/esm/helpers/colors.test.js
new file mode 100644
index 000000000..fa3fe2799
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/helpers/colors.test.js
@@ -0,0 +1,37 @@
+import { calculateRgba } from "./colors";
+describe("calculateRgba", function () {
+ it("is a function", function () {
+ expect(typeof calculateRgba).toEqual("function");
+ });
+ it("converts hash values to rgb", function () {
+ expect(calculateRgba("#ffffff", 1)).toEqual("rgba(255, 255, 255, 1)");
+ });
+ it("calculates 3 character hash value to the correct rgba", function () {
+ expect(calculateRgba("#fff", 1)).toEqual("rgba(255, 255, 255, 1)");
+ });
+ it("returns the passed in opacity as the part of the rgba value", function () {
+ expect(calculateRgba("#fff", 0.5)).toEqual("rgba(255, 255, 255, 0.5)");
+ });
+ it("calculated the correct rgba value without the starting # passed in", function () {
+ expect(calculateRgba("fff", 1)).toEqual("rgba(255, 255, 255, 1)");
+ });
+ it("calculates the correct rgba using basic color names", function () {
+ expect(calculateRgba("maroon", 0.7)).toEqual("rgba(128, 0, 0, 0.7)");
+ expect(calculateRgba("red", 0.7)).toEqual("rgba(255, 0, 0, 0.7)");
+ expect(calculateRgba("orange", 0.7)).toEqual("rgba(255, 165, 0, 0.7)");
+ expect(calculateRgba("yellow", 0.7)).toEqual("rgba(255, 255, 0, 0.7)");
+ expect(calculateRgba("olive", 0.7)).toEqual("rgba(128, 128, 0, 0.7)");
+ expect(calculateRgba("green", 0.7)).toEqual("rgba(0, 128, 0, 0.7)");
+ expect(calculateRgba("purple", 0.7)).toEqual("rgba(128, 0, 128, 0.7)");
+ expect(calculateRgba("fuchsia", 0.7)).toEqual("rgba(255, 0, 255, 0.7)");
+ expect(calculateRgba("lime", 0.7)).toEqual("rgba(0, 255, 0, 0.7)");
+ expect(calculateRgba("teal", 0.7)).toEqual("rgba(0, 128, 128, 0.7)");
+ expect(calculateRgba("aqua", 0.7)).toEqual("rgba(0, 255, 255, 0.7)");
+ expect(calculateRgba("blue", 0.7)).toEqual("rgba(0, 0, 255, 0.7)");
+ expect(calculateRgba("navy", 0.7)).toEqual("rgba(0, 0, 128, 0.7)");
+ expect(calculateRgba("black", 0.7)).toEqual("rgba(0, 0, 0, 0.7)");
+ expect(calculateRgba("gray", 0.7)).toEqual("rgba(128, 128, 128, 0.7)");
+ expect(calculateRgba("silver", 0.7)).toEqual("rgba(192, 192, 192, 0.7)");
+ expect(calculateRgba("white", 0.7)).toEqual("rgba(255, 255, 255, 0.7)");
+ });
+});
diff --git a/frontend/node_modules/react-spinners/esm/helpers/props.d.ts b/frontend/node_modules/react-spinners/esm/helpers/props.d.ts
new file mode 100644
index 000000000..62830656b
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/helpers/props.d.ts
@@ -0,0 +1,26 @@
+import { CSSProperties, DetailedHTMLProps, HTMLAttributes } from "react";
+export type LengthType = number | string;
+interface CommonProps extends DetailedHTMLProps, HTMLSpanElement> {
+ color?: string;
+ loading?: boolean;
+ cssOverride?: CSSProperties;
+ speedMultiplier?: number;
+}
+export interface LoaderHeightWidthProps extends CommonProps {
+ height?: LengthType;
+ width?: LengthType;
+}
+export interface LoaderSizeProps extends CommonProps {
+ size?: LengthType;
+}
+export interface LoaderSizeMarginProps extends CommonProps {
+ size?: LengthType;
+ margin?: LengthType;
+}
+export interface LoaderHeightWidthRadiusProps extends CommonProps {
+ height?: LengthType;
+ width?: LengthType;
+ radius?: LengthType;
+ margin?: LengthType;
+}
+export {};
diff --git a/frontend/node_modules/react-spinners/esm/helpers/props.js b/frontend/node_modules/react-spinners/esm/helpers/props.js
new file mode 100644
index 000000000..cb0ff5c3b
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/helpers/props.js
@@ -0,0 +1 @@
+export {};
diff --git a/frontend/node_modules/react-spinners/esm/helpers/unitConverter.d.ts b/frontend/node_modules/react-spinners/esm/helpers/unitConverter.d.ts
new file mode 100644
index 000000000..771955ed8
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/helpers/unitConverter.d.ts
@@ -0,0 +1,22 @@
+interface LengthObject {
+ value: number;
+ unit: string;
+}
+/**
+ * If size is a number, append px to the value as default unit.
+ * If size is a string, validate against list of valid units.
+ * If unit is valid, return size as is.
+ * If unit is invalid, console warn issue, replace with px as the unit.
+ *
+ * @param {(number | string)} size
+ * @return {LengthObject} LengthObject
+ */
+export declare function parseLengthAndUnit(size: number | string): LengthObject;
+/**
+ * Take value as an input and return valid css value
+ *
+ * @param {(number | string)} value
+ * @return {string} valid css value
+ */
+export declare function cssValue(value: number | string): string;
+export {};
diff --git a/frontend/node_modules/react-spinners/esm/helpers/unitConverter.js b/frontend/node_modules/react-spinners/esm/helpers/unitConverter.js
new file mode 100644
index 000000000..c6a896094
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/helpers/unitConverter.js
@@ -0,0 +1,64 @@
+var cssUnit = {
+ cm: true,
+ mm: true,
+ in: true,
+ px: true,
+ pt: true,
+ pc: true,
+ em: true,
+ ex: true,
+ ch: true,
+ rem: true,
+ vw: true,
+ vh: true,
+ vmin: true,
+ vmax: true,
+ "%": true,
+};
+/**
+ * If size is a number, append px to the value as default unit.
+ * If size is a string, validate against list of valid units.
+ * If unit is valid, return size as is.
+ * If unit is invalid, console warn issue, replace with px as the unit.
+ *
+ * @param {(number | string)} size
+ * @return {LengthObject} LengthObject
+ */
+export function parseLengthAndUnit(size) {
+ if (typeof size === "number") {
+ return {
+ value: size,
+ unit: "px",
+ };
+ }
+ var value;
+ var valueString = (size.match(/^[0-9.]*/) || "").toString();
+ if (valueString.includes(".")) {
+ value = parseFloat(valueString);
+ }
+ else {
+ value = parseInt(valueString, 10);
+ }
+ var unit = (size.match(/[^0-9]*$/) || "").toString();
+ if (cssUnit[unit]) {
+ return {
+ value: value,
+ unit: unit,
+ };
+ }
+ console.warn("React Spinners: ".concat(size, " is not a valid css value. Defaulting to ").concat(value, "px."));
+ return {
+ value: value,
+ unit: "px",
+ };
+}
+/**
+ * Take value as an input and return valid css value
+ *
+ * @param {(number | string)} value
+ * @return {string} valid css value
+ */
+export function cssValue(value) {
+ var lengthWithunit = parseLengthAndUnit(value);
+ return "".concat(lengthWithunit.value).concat(lengthWithunit.unit);
+}
diff --git a/frontend/node_modules/react-spinners/esm/helpers/unitConverter.test.d.ts b/frontend/node_modules/react-spinners/esm/helpers/unitConverter.test.d.ts
new file mode 100644
index 000000000..cb0ff5c3b
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/helpers/unitConverter.test.d.ts
@@ -0,0 +1 @@
+export {};
diff --git a/frontend/node_modules/react-spinners/esm/helpers/unitConverter.test.js b/frontend/node_modules/react-spinners/esm/helpers/unitConverter.test.js
new file mode 100644
index 000000000..9ae92267d
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/helpers/unitConverter.test.js
@@ -0,0 +1,48 @@
+import { parseLengthAndUnit, cssValue } from "./unitConverter";
+describe("unitConverter", function () {
+ describe("parseLengthAndUnit", function () {
+ var spy = jest.spyOn(console, "warn").mockImplementation();
+ var output = {
+ value: 12,
+ unit: "px",
+ };
+ it("is a function", function () {
+ expect(typeof parseLengthAndUnit).toEqual("function");
+ });
+ it("takes a number as the input and append px to the value", function () {
+ expect(parseLengthAndUnit(12)).toEqual(output);
+ expect(spy).not.toBeCalled();
+ });
+ it("take a string with valid integer css unit and return an object with value and unit", function () {
+ expect(parseLengthAndUnit("12px")).toEqual(output);
+ expect(spy).not.toBeCalled();
+ });
+ it("take a string with valid css float unit and return an object with value and unit", function () {
+ var output = {
+ value: 12.5,
+ unit: "px",
+ };
+ expect(parseLengthAndUnit("12.5px")).toEqual(output);
+ expect(spy).not.toBeCalled();
+ });
+ it("takes an invalid css unit and default the value to px", function () {
+ expect(parseLengthAndUnit("12fd")).toEqual(output);
+ expect(spy).toBeCalled();
+ });
+ });
+ describe("cssValue", function () {
+ it("is a function", function () {
+ expect(typeof cssValue).toEqual("function");
+ });
+ it("takes a number as the input and append px to the value", function () {
+ expect(cssValue(12)).toEqual("12px");
+ });
+ it("takes a string with valid css unit as the input and return the value", function () {
+ expect(cssValue("12%")).toEqual("12%");
+ expect(cssValue("12em")).toEqual("12em");
+ });
+ it("takes a string with invalid css unit as the input and default to px", function () {
+ expect(cssValue("12qw")).toEqual("12px");
+ });
+ });
+});
diff --git a/frontend/node_modules/react-spinners/esm/index.d.ts b/frontend/node_modules/react-spinners/esm/index.d.ts
new file mode 100644
index 000000000..478f2b91d
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/index.d.ts
@@ -0,0 +1,23 @@
+export { default as BarLoader } from "./BarLoader";
+export { default as BeatLoader } from "./BeatLoader";
+export { default as BounceLoader } from "./BounceLoader";
+export { default as CircleLoader } from "./CircleLoader";
+export { default as ClimbingBoxLoader } from "./ClimbingBoxLoader";
+export { default as ClipLoader } from "./ClipLoader";
+export { default as ClockLoader } from "./ClockLoader";
+export { default as DotLoader } from "./DotLoader";
+export { default as FadeLoader } from "./FadeLoader";
+export { default as GridLoader } from "./GridLoader";
+export { default as HashLoader } from "./HashLoader";
+export { default as MoonLoader } from "./MoonLoader";
+export { default as PacmanLoader } from "./PacmanLoader";
+export { default as PropagateLoader } from "./PropagateLoader";
+export { default as PulseLoader } from "./PulseLoader";
+export { default as PuffLoader } from "./PuffLoader";
+export { default as RingLoader } from "./RingLoader";
+export { default as RiseLoader } from "./RiseLoader";
+export { default as RotateLoader } from "./RotateLoader";
+export { default as ScaleLoader } from "./ScaleLoader";
+export { default as SkewLoader } from "./SkewLoader";
+export { default as SquareLoader } from "./SquareLoader";
+export { default as SyncLoader } from "./SyncLoader";
diff --git a/frontend/node_modules/react-spinners/esm/index.js b/frontend/node_modules/react-spinners/esm/index.js
new file mode 100644
index 000000000..478f2b91d
--- /dev/null
+++ b/frontend/node_modules/react-spinners/esm/index.js
@@ -0,0 +1,23 @@
+export { default as BarLoader } from "./BarLoader";
+export { default as BeatLoader } from "./BeatLoader";
+export { default as BounceLoader } from "./BounceLoader";
+export { default as CircleLoader } from "./CircleLoader";
+export { default as ClimbingBoxLoader } from "./ClimbingBoxLoader";
+export { default as ClipLoader } from "./ClipLoader";
+export { default as ClockLoader } from "./ClockLoader";
+export { default as DotLoader } from "./DotLoader";
+export { default as FadeLoader } from "./FadeLoader";
+export { default as GridLoader } from "./GridLoader";
+export { default as HashLoader } from "./HashLoader";
+export { default as MoonLoader } from "./MoonLoader";
+export { default as PacmanLoader } from "./PacmanLoader";
+export { default as PropagateLoader } from "./PropagateLoader";
+export { default as PulseLoader } from "./PulseLoader";
+export { default as PuffLoader } from "./PuffLoader";
+export { default as RingLoader } from "./RingLoader";
+export { default as RiseLoader } from "./RiseLoader";
+export { default as RotateLoader } from "./RotateLoader";
+export { default as ScaleLoader } from "./ScaleLoader";
+export { default as SkewLoader } from "./SkewLoader";
+export { default as SquareLoader } from "./SquareLoader";
+export { default as SyncLoader } from "./SyncLoader";
diff --git a/frontend/node_modules/react-spinners/helpers/animation.d.ts b/frontend/node_modules/react-spinners/helpers/animation.d.ts
new file mode 100644
index 000000000..196a3bd20
--- /dev/null
+++ b/frontend/node_modules/react-spinners/helpers/animation.d.ts
@@ -0,0 +1 @@
+export declare const createAnimation: (loaderName: string, frames: string, suffix: string) => string;
diff --git a/frontend/node_modules/react-spinners/helpers/animation.js b/frontend/node_modules/react-spinners/helpers/animation.js
new file mode 100644
index 000000000..7626dfdf9
--- /dev/null
+++ b/frontend/node_modules/react-spinners/helpers/animation.js
@@ -0,0 +1,18 @@
+"use strict";
+Object.defineProperty(exports, "__esModule", { value: true });
+exports.createAnimation = void 0;
+var createAnimation = function (loaderName, frames, suffix) {
+ var animationName = "react-spinners-".concat(loaderName, "-").concat(suffix);
+ if (typeof window == "undefined" || !window.document) {
+ return animationName;
+ }
+ var styleEl = document.createElement("style");
+ document.head.appendChild(styleEl);
+ var styleSheet = styleEl.sheet;
+ var keyFrames = "\n @keyframes ".concat(animationName, " {\n ").concat(frames, "\n }\n ");
+ if (styleSheet) {
+ styleSheet.insertRule(keyFrames, 0);
+ }
+ return animationName;
+};
+exports.createAnimation = createAnimation;
diff --git a/frontend/node_modules/react-spinners/helpers/animation.server.test.d.ts b/frontend/node_modules/react-spinners/helpers/animation.server.test.d.ts
new file mode 100644
index 000000000..3275561ce
--- /dev/null
+++ b/frontend/node_modules/react-spinners/helpers/animation.server.test.d.ts
@@ -0,0 +1,4 @@
+/**
+ * @jest-environment node
+ */
+export {};
diff --git a/frontend/node_modules/react-spinners/helpers/animation.server.test.js b/frontend/node_modules/react-spinners/helpers/animation.server.test.js
new file mode 100644
index 000000000..4357f5381
--- /dev/null
+++ b/frontend/node_modules/react-spinners/helpers/animation.server.test.js
@@ -0,0 +1,12 @@
+"use strict";
+/**
+ * @jest-environment node
+ */
+Object.defineProperty(exports, "__esModule", { value: true });
+var animation_1 = require("./animation");
+describe("animation", function () {
+ it("should not throw an error on server side", function () {
+ var name = (0, animation_1.createAnimation)("TestLoader", "0% {left: -35%;right: 100%} 60% {left: 100%;right: -90%} 100% {left: 100%;right: -90%}", "my-suffix");
+ expect(name).toEqual("react-spinners-TestLoader-my-suffix");
+ });
+});
diff --git a/frontend/node_modules/react-spinners/helpers/animation.test.d.ts b/frontend/node_modules/react-spinners/helpers/animation.test.d.ts
new file mode 100644
index 000000000..cb0ff5c3b
--- /dev/null
+++ b/frontend/node_modules/react-spinners/helpers/animation.test.d.ts
@@ -0,0 +1 @@
+export {};
diff --git a/frontend/node_modules/react-spinners/helpers/animation.test.js b/frontend/node_modules/react-spinners/helpers/animation.test.js
new file mode 100644
index 000000000..e0db580f1
--- /dev/null
+++ b/frontend/node_modules/react-spinners/helpers/animation.test.js
@@ -0,0 +1,9 @@
+"use strict";
+Object.defineProperty(exports, "__esModule", { value: true });
+var animation_1 = require("./animation");
+describe("createAnimation", function () {
+ it("should return name with suffix if passed in", function () {
+ var name = (0, animation_1.createAnimation)("TestLoader", "0% {left: -35%;right: 100%} 60% {left: 100%;right: -90%} 100% {left: 100%;right: -90%}", "my-suffix");
+ expect(name).toEqual("react-spinners-TestLoader-my-suffix");
+ });
+});
diff --git a/frontend/node_modules/react-spinners/helpers/colors.d.ts b/frontend/node_modules/react-spinners/helpers/colors.d.ts
new file mode 100644
index 000000000..e6115a944
--- /dev/null
+++ b/frontend/node_modules/react-spinners/helpers/colors.d.ts
@@ -0,0 +1 @@
+export declare const calculateRgba: (color: string, opacity: number) => string;
diff --git a/frontend/node_modules/react-spinners/helpers/colors.js b/frontend/node_modules/react-spinners/helpers/colors.js
new file mode 100644
index 000000000..b5fce3b00
--- /dev/null
+++ b/frontend/node_modules/react-spinners/helpers/colors.js
@@ -0,0 +1,42 @@
+"use strict";
+Object.defineProperty(exports, "__esModule", { value: true });
+exports.calculateRgba = void 0;
+var BasicColors;
+(function (BasicColors) {
+ BasicColors["maroon"] = "#800000";
+ BasicColors["red"] = "#FF0000";
+ BasicColors["orange"] = "#FFA500";
+ BasicColors["yellow"] = "#FFFF00";
+ BasicColors["olive"] = "#808000";
+ BasicColors["green"] = "#008000";
+ BasicColors["purple"] = "#800080";
+ BasicColors["fuchsia"] = "#FF00FF";
+ BasicColors["lime"] = "#00FF00";
+ BasicColors["teal"] = "#008080";
+ BasicColors["aqua"] = "#00FFFF";
+ BasicColors["blue"] = "#0000FF";
+ BasicColors["navy"] = "#000080";
+ BasicColors["black"] = "#000000";
+ BasicColors["gray"] = "#808080";
+ BasicColors["silver"] = "#C0C0C0";
+ BasicColors["white"] = "#FFFFFF";
+})(BasicColors || (BasicColors = {}));
+var calculateRgba = function (color, opacity) {
+ if (Object.keys(BasicColors).includes(color)) {
+ color = BasicColors[color];
+ }
+ if (color[0] === "#") {
+ color = color.slice(1);
+ }
+ if (color.length === 3) {
+ var res_1 = "";
+ color.split("").forEach(function (c) {
+ res_1 += c;
+ res_1 += c;
+ });
+ color = res_1;
+ }
+ var rgbValues = (color.match(/.{2}/g) || []).map(function (hex) { return parseInt(hex, 16); }).join(", ");
+ return "rgba(".concat(rgbValues, ", ").concat(opacity, ")");
+};
+exports.calculateRgba = calculateRgba;
diff --git a/frontend/node_modules/react-spinners/helpers/colors.test.d.ts b/frontend/node_modules/react-spinners/helpers/colors.test.d.ts
new file mode 100644
index 000000000..cb0ff5c3b
--- /dev/null
+++ b/frontend/node_modules/react-spinners/helpers/colors.test.d.ts
@@ -0,0 +1 @@
+export {};
diff --git a/frontend/node_modules/react-spinners/helpers/colors.test.js b/frontend/node_modules/react-spinners/helpers/colors.test.js
new file mode 100644
index 000000000..d29127da0
--- /dev/null
+++ b/frontend/node_modules/react-spinners/helpers/colors.test.js
@@ -0,0 +1,39 @@
+"use strict";
+Object.defineProperty(exports, "__esModule", { value: true });
+var colors_1 = require("./colors");
+describe("calculateRgba", function () {
+ it("is a function", function () {
+ expect(typeof colors_1.calculateRgba).toEqual("function");
+ });
+ it("converts hash values to rgb", function () {
+ expect((0, colors_1.calculateRgba)("#ffffff", 1)).toEqual("rgba(255, 255, 255, 1)");
+ });
+ it("calculates 3 character hash value to the correct rgba", function () {
+ expect((0, colors_1.calculateRgba)("#fff", 1)).toEqual("rgba(255, 255, 255, 1)");
+ });
+ it("returns the passed in opacity as the part of the rgba value", function () {
+ expect((0, colors_1.calculateRgba)("#fff", 0.5)).toEqual("rgba(255, 255, 255, 0.5)");
+ });
+ it("calculated the correct rgba value without the starting # passed in", function () {
+ expect((0, colors_1.calculateRgba)("fff", 1)).toEqual("rgba(255, 255, 255, 1)");
+ });
+ it("calculates the correct rgba using basic color names", function () {
+ expect((0, colors_1.calculateRgba)("maroon", 0.7)).toEqual("rgba(128, 0, 0, 0.7)");
+ expect((0, colors_1.calculateRgba)("red", 0.7)).toEqual("rgba(255, 0, 0, 0.7)");
+ expect((0, colors_1.calculateRgba)("orange", 0.7)).toEqual("rgba(255, 165, 0, 0.7)");
+ expect((0, colors_1.calculateRgba)("yellow", 0.7)).toEqual("rgba(255, 255, 0, 0.7)");
+ expect((0, colors_1.calculateRgba)("olive", 0.7)).toEqual("rgba(128, 128, 0, 0.7)");
+ expect((0, colors_1.calculateRgba)("green", 0.7)).toEqual("rgba(0, 128, 0, 0.7)");
+ expect((0, colors_1.calculateRgba)("purple", 0.7)).toEqual("rgba(128, 0, 128, 0.7)");
+ expect((0, colors_1.calculateRgba)("fuchsia", 0.7)).toEqual("rgba(255, 0, 255, 0.7)");
+ expect((0, colors_1.calculateRgba)("lime", 0.7)).toEqual("rgba(0, 255, 0, 0.7)");
+ expect((0, colors_1.calculateRgba)("teal", 0.7)).toEqual("rgba(0, 128, 128, 0.7)");
+ expect((0, colors_1.calculateRgba)("aqua", 0.7)).toEqual("rgba(0, 255, 255, 0.7)");
+ expect((0, colors_1.calculateRgba)("blue", 0.7)).toEqual("rgba(0, 0, 255, 0.7)");
+ expect((0, colors_1.calculateRgba)("navy", 0.7)).toEqual("rgba(0, 0, 128, 0.7)");
+ expect((0, colors_1.calculateRgba)("black", 0.7)).toEqual("rgba(0, 0, 0, 0.7)");
+ expect((0, colors_1.calculateRgba)("gray", 0.7)).toEqual("rgba(128, 128, 128, 0.7)");
+ expect((0, colors_1.calculateRgba)("silver", 0.7)).toEqual("rgba(192, 192, 192, 0.7)");
+ expect((0, colors_1.calculateRgba)("white", 0.7)).toEqual("rgba(255, 255, 255, 0.7)");
+ });
+});
diff --git a/frontend/node_modules/react-spinners/helpers/props.d.ts b/frontend/node_modules/react-spinners/helpers/props.d.ts
new file mode 100644
index 000000000..62830656b
--- /dev/null
+++ b/frontend/node_modules/react-spinners/helpers/props.d.ts
@@ -0,0 +1,26 @@
+import { CSSProperties, DetailedHTMLProps, HTMLAttributes } from "react";
+export type LengthType = number | string;
+interface CommonProps extends DetailedHTMLProps, HTMLSpanElement> {
+ color?: string;
+ loading?: boolean;
+ cssOverride?: CSSProperties;
+ speedMultiplier?: number;
+}
+export interface LoaderHeightWidthProps extends CommonProps {
+ height?: LengthType;
+ width?: LengthType;
+}
+export interface LoaderSizeProps extends CommonProps {
+ size?: LengthType;
+}
+export interface LoaderSizeMarginProps extends CommonProps {
+ size?: LengthType;
+ margin?: LengthType;
+}
+export interface LoaderHeightWidthRadiusProps extends CommonProps {
+ height?: LengthType;
+ width?: LengthType;
+ radius?: LengthType;
+ margin?: LengthType;
+}
+export {};
diff --git a/frontend/node_modules/react-spinners/helpers/props.js b/frontend/node_modules/react-spinners/helpers/props.js
new file mode 100644
index 000000000..c8ad2e549
--- /dev/null
+++ b/frontend/node_modules/react-spinners/helpers/props.js
@@ -0,0 +1,2 @@
+"use strict";
+Object.defineProperty(exports, "__esModule", { value: true });
diff --git a/frontend/node_modules/react-spinners/helpers/unitConverter.d.ts b/frontend/node_modules/react-spinners/helpers/unitConverter.d.ts
new file mode 100644
index 000000000..771955ed8
--- /dev/null
+++ b/frontend/node_modules/react-spinners/helpers/unitConverter.d.ts
@@ -0,0 +1,22 @@
+interface LengthObject {
+ value: number;
+ unit: string;
+}
+/**
+ * If size is a number, append px to the value as default unit.
+ * If size is a string, validate against list of valid units.
+ * If unit is valid, return size as is.
+ * If unit is invalid, console warn issue, replace with px as the unit.
+ *
+ * @param {(number | string)} size
+ * @return {LengthObject} LengthObject
+ */
+export declare function parseLengthAndUnit(size: number | string): LengthObject;
+/**
+ * Take value as an input and return valid css value
+ *
+ * @param {(number | string)} value
+ * @return {string} valid css value
+ */
+export declare function cssValue(value: number | string): string;
+export {};
diff --git a/frontend/node_modules/react-spinners/helpers/unitConverter.js b/frontend/node_modules/react-spinners/helpers/unitConverter.js
new file mode 100644
index 000000000..24d8ed34d
--- /dev/null
+++ b/frontend/node_modules/react-spinners/helpers/unitConverter.js
@@ -0,0 +1,69 @@
+"use strict";
+Object.defineProperty(exports, "__esModule", { value: true });
+exports.cssValue = exports.parseLengthAndUnit = void 0;
+var cssUnit = {
+ cm: true,
+ mm: true,
+ in: true,
+ px: true,
+ pt: true,
+ pc: true,
+ em: true,
+ ex: true,
+ ch: true,
+ rem: true,
+ vw: true,
+ vh: true,
+ vmin: true,
+ vmax: true,
+ "%": true,
+};
+/**
+ * If size is a number, append px to the value as default unit.
+ * If size is a string, validate against list of valid units.
+ * If unit is valid, return size as is.
+ * If unit is invalid, console warn issue, replace with px as the unit.
+ *
+ * @param {(number | string)} size
+ * @return {LengthObject} LengthObject
+ */
+function parseLengthAndUnit(size) {
+ if (typeof size === "number") {
+ return {
+ value: size,
+ unit: "px",
+ };
+ }
+ var value;
+ var valueString = (size.match(/^[0-9.]*/) || "").toString();
+ if (valueString.includes(".")) {
+ value = parseFloat(valueString);
+ }
+ else {
+ value = parseInt(valueString, 10);
+ }
+ var unit = (size.match(/[^0-9]*$/) || "").toString();
+ if (cssUnit[unit]) {
+ return {
+ value: value,
+ unit: unit,
+ };
+ }
+ console.warn("React Spinners: ".concat(size, " is not a valid css value. Defaulting to ").concat(value, "px."));
+ return {
+ value: value,
+ unit: "px",
+ };
+}
+exports.parseLengthAndUnit = parseLengthAndUnit;
+/**
+ * Take value as an input and return valid css value
+ *
+ * @param {(number | string)} value
+ * @return {string} valid css value
+ */
+function cssValue(value) {
+ var lengthWithunit = parseLengthAndUnit(value);
+ return "".concat(lengthWithunit.value).concat(lengthWithunit.unit);
+}
+exports.cssValue = cssValue;
diff --git a/frontend/node_modules/react-spinners/helpers/unitConverter.test.d.ts b/frontend/node_modules/react-spinners/helpers/unitConverter.test.d.ts
new file mode 100644
index 000000000..cb0ff5c3b
--- /dev/null
+++ b/frontend/node_modules/react-spinners/helpers/unitConverter.test.d.ts
@@ -0,0 +1 @@
+export {};
diff --git a/frontend/node_modules/react-spinners/helpers/unitConverter.test.js b/frontend/node_modules/react-spinners/helpers/unitConverter.test.js
new file mode 100644
index 000000000..3402db00b
--- /dev/null
+++ b/frontend/node_modules/react-spinners/helpers/unitConverter.test.js
@@ -0,0 +1,50 @@
+"use strict";
+Object.defineProperty(exports, "__esModule", { value: true });
+var unitConverter_1 = require("./unitConverter");
+describe("unitConverter", function () {
+ describe("parseLengthAndUnit", function () {
+ var spy = jest.spyOn(console, "warn").mockImplementation();
+ var output = {
+ value: 12,
+ unit: "px",
+ };
+ it("is a function", function () {
+ expect(typeof unitConverter_1.parseLengthAndUnit).toEqual("function");
+ });
+ it("takes a number as the input and append px to the value", function () {
+ expect((0, unitConverter_1.parseLengthAndUnit)(12)).toEqual(output);
+ expect(spy).not.toBeCalled();
+ });
+ it("take a string with valid integer css unit and return an object with value and unit", function () {
+ expect((0, unitConverter_1.parseLengthAndUnit)("12px")).toEqual(output);
+ expect(spy).not.toBeCalled();
+ });
+ it("take a string with valid css float unit and return an object with value and unit", function () {
+ var output = {
+ value: 12.5,
+ unit: "px",
+ };
+ expect((0, unitConverter_1.parseLengthAndUnit)("12.5px")).toEqual(output);
+ expect(spy).not.toBeCalled();
+ });
+ it("takes an invalid css unit and default the value to px", function () {
+ expect((0, unitConverter_1.parseLengthAndUnit)("12fd")).toEqual(output);
+ expect(spy).toBeCalled();
+ });
+ });
+ describe("cssValue", function () {
+ it("is a function", function () {
+ expect(typeof unitConverter_1.cssValue).toEqual("function");
+ });
+ it("takes a number as the input and append px to the value", function () {
+ expect((0, unitConverter_1.cssValue)(12)).toEqual("12px");
+ });
+ it("takes a string with valid css unit as the input and return the value", function () {
+ expect((0, unitConverter_1.cssValue)("12%")).toEqual("12%");
+ expect((0, unitConverter_1.cssValue)("12em")).toEqual("12em");
+ });
+ it("takes a string with invalid css unit as the input and default to px", function () {
+ expect((0, unitConverter_1.cssValue)("12qw")).toEqual("12px");
+ });
+ });
+});
diff --git a/frontend/node_modules/react-spinners/index.d.ts b/frontend/node_modules/react-spinners/index.d.ts
new file mode 100644
index 000000000..478f2b91d
--- /dev/null
+++ b/frontend/node_modules/react-spinners/index.d.ts
@@ -0,0 +1,23 @@
+export { default as BarLoader } from "./BarLoader";
+export { default as BeatLoader } from "./BeatLoader";
+export { default as BounceLoader } from "./BounceLoader";
+export { default as CircleLoader } from "./CircleLoader";
+export { default as ClimbingBoxLoader } from "./ClimbingBoxLoader";
+export { default as ClipLoader } from "./ClipLoader";
+export { default as ClockLoader } from "./ClockLoader";
+export { default as DotLoader } from "./DotLoader";
+export { default as FadeLoader } from "./FadeLoader";
+export { default as GridLoader } from "./GridLoader";
+export { default as HashLoader } from "./HashLoader";
+export { default as MoonLoader } from "./MoonLoader";
+export { default as PacmanLoader } from "./PacmanLoader";
+export { default as PropagateLoader } from "./PropagateLoader";
+export { default as PulseLoader } from "./PulseLoader";
+export { default as PuffLoader } from "./PuffLoader";
+export { default as RingLoader } from "./RingLoader";
+export { default as RiseLoader } from "./RiseLoader";
+export { default as RotateLoader } from "./RotateLoader";
+export { default as ScaleLoader } from "./ScaleLoader";
+export { default as SkewLoader } from "./SkewLoader";
+export { default as SquareLoader } from "./SquareLoader";
+export { default as SyncLoader } from "./SyncLoader";
diff --git a/frontend/node_modules/react-spinners/index.js b/frontend/node_modules/react-spinners/index.js
new file mode 100644
index 000000000..184a2be56
--- /dev/null
+++ b/frontend/node_modules/react-spinners/index.js
@@ -0,0 +1,52 @@
+"use strict";
+var __importDefault = (this && this.__importDefault) || function (mod) {
+ return (mod && mod.__esModule) ? mod : { "default": mod };
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+exports.SyncLoader = exports.SquareLoader = exports.SkewLoader = exports.ScaleLoader = exports.RotateLoader = exports.RiseLoader = exports.RingLoader = exports.PuffLoader = exports.PulseLoader = exports.PropagateLoader = exports.PacmanLoader = exports.MoonLoader = exports.HashLoader = exports.GridLoader = exports.FadeLoader = exports.DotLoader = exports.ClockLoader = exports.ClipLoader = exports.ClimbingBoxLoader = exports.CircleLoader = exports.BounceLoader = exports.BeatLoader = exports.BarLoader = void 0;
+var BarLoader_1 = require("./BarLoader");
+Object.defineProperty(exports, "BarLoader", { enumerable: true, get: function () { return __importDefault(BarLoader_1).default; } });
+var BeatLoader_1 = require("./BeatLoader");
+Object.defineProperty(exports, "BeatLoader", { enumerable: true, get: function () { return __importDefault(BeatLoader_1).default; } });
+var BounceLoader_1 = require("./BounceLoader");
+Object.defineProperty(exports, "BounceLoader", { enumerable: true, get: function () { return __importDefault(BounceLoader_1).default; } });
+var CircleLoader_1 = require("./CircleLoader");
+Object.defineProperty(exports, "CircleLoader", { enumerable: true, get: function () { return __importDefault(CircleLoader_1).default; } });
+var ClimbingBoxLoader_1 = require("./ClimbingBoxLoader");
+Object.defineProperty(exports, "ClimbingBoxLoader", { enumerable: true, get: function () { return __importDefault(ClimbingBoxLoader_1).default; } });
+var ClipLoader_1 = require("./ClipLoader");
+Object.defineProperty(exports, "ClipLoader", { enumerable: true, get: function () { return __importDefault(ClipLoader_1).default; } });
+var ClockLoader_1 = require("./ClockLoader");
+Object.defineProperty(exports, "ClockLoader", { enumerable: true, get: function () { return __importDefault(ClockLoader_1).default; } });
+var DotLoader_1 = require("./DotLoader");
+Object.defineProperty(exports, "DotLoader", { enumerable: true, get: function () { return __importDefault(DotLoader_1).default; } });
+var FadeLoader_1 = require("./FadeLoader");
+Object.defineProperty(exports, "FadeLoader", { enumerable: true, get: function () { return __importDefault(FadeLoader_1).default; } });
+var GridLoader_1 = require("./GridLoader");
+Object.defineProperty(exports, "GridLoader", { enumerable: true, get: function () { return __importDefault(GridLoader_1).default; } });
+var HashLoader_1 = require("./HashLoader");
+Object.defineProperty(exports, "HashLoader", { enumerable: true, get: function () { return __importDefault(HashLoader_1).default; } });
+var MoonLoader_1 = require("./MoonLoader");
+Object.defineProperty(exports, "MoonLoader", { enumerable: true, get: function () { return __importDefault(MoonLoader_1).default; } });
+var PacmanLoader_1 = require("./PacmanLoader");
+Object.defineProperty(exports, "PacmanLoader", { enumerable: true, get: function () { return __importDefault(PacmanLoader_1).default; } });
+var PropagateLoader_1 = require("./PropagateLoader");
+Object.defineProperty(exports, "PropagateLoader", { enumerable: true, get: function () { return __importDefault(PropagateLoader_1).default; } });
+var PulseLoader_1 = require("./PulseLoader");
+Object.defineProperty(exports, "PulseLoader", { enumerable: true, get: function () { return __importDefault(PulseLoader_1).default; } });
+var PuffLoader_1 = require("./PuffLoader");
+Object.defineProperty(exports, "PuffLoader", { enumerable: true, get: function () { return __importDefault(PuffLoader_1).default; } });
+var RingLoader_1 = require("./RingLoader");
+Object.defineProperty(exports, "RingLoader", { enumerable: true, get: function () { return __importDefault(RingLoader_1).default; } });
+var RiseLoader_1 = require("./RiseLoader");
+Object.defineProperty(exports, "RiseLoader", { enumerable: true, get: function () { return __importDefault(RiseLoader_1).default; } });
+var RotateLoader_1 = require("./RotateLoader");
+Object.defineProperty(exports, "RotateLoader", { enumerable: true, get: function () { return __importDefault(RotateLoader_1).default; } });
+var ScaleLoader_1 = require("./ScaleLoader");
+Object.defineProperty(exports, "ScaleLoader", { enumerable: true, get: function () { return __importDefault(ScaleLoader_1).default; } });
+var SkewLoader_1 = require("./SkewLoader");
+Object.defineProperty(exports, "SkewLoader", { enumerable: true, get: function () { return __importDefault(SkewLoader_1).default; } });
+var SquareLoader_1 = require("./SquareLoader");
+Object.defineProperty(exports, "SquareLoader", { enumerable: true, get: function () { return __importDefault(SquareLoader_1).default; } });
+var SyncLoader_1 = require("./SyncLoader");
+Object.defineProperty(exports, "SyncLoader", { enumerable: true, get: function () { return __importDefault(SyncLoader_1).default; } });
diff --git a/frontend/node_modules/react-spinners/package.json b/frontend/node_modules/react-spinners/package.json
new file mode 100644
index 000000000..4daa6d66f
--- /dev/null
+++ b/frontend/node_modules/react-spinners/package.json
@@ -0,0 +1,113 @@
+{
+ "name": "react-spinners",
+ "version": "0.13.8",
+ "description": "A collection of react loading spinners",
+ "repository": {
+ "type": "git",
+ "url": "https://github.com/davidhu2000/react-spinners.git"
+ },
+ "author": "David Hu (https://www.davidhu.io)",
+ "license": "MIT",
+ "bugs": {
+ "url": "https://github.com/davidhu2000/react-spinners/issues"
+ },
+ "homepage": "https://www.davidhu.io/react-spinners/",
+ "contributors": [
+ "Cisco Guillaume (https://github.com/GuillaumeCisco)"
+ ],
+ "keywords": [
+ "react-spinners",
+ "react-spinner",
+ "react",
+ "reactjs",
+ "loader",
+ "loaders",
+ "loading",
+ "spinner",
+ "spinners",
+ "halogen",
+ "progress",
+ "activity"
+ ],
+ "main": "index.js",
+ "module": "esm/index.js",
+ "scripts": {
+ "prepare": "$npm_execpath run build:cjs & $npm_execpath run build:esm & $npm_execpath run build:umd && $npm_execpath run build",
+ "build": "tsc --project tsconfig.cjs.json",
+ "build:cjs": "tsc --project tsconfig.cjs.json --outDir cjs",
+ "build:esm": "tsc --project tsconfig.esm.json --outDir esm",
+ "build:umd": "tsc --project tsconfig.umd.json --outDir umd",
+ "build:demo": "npm run remove:demo; babel-node ./node_modules/.bin/webpack --config ./webpack.config.js",
+ "remove:demo": "rm docs/index.html; rm docs/javascripts/*",
+ "patch": "npm version patch && npm publish && npm run clean",
+ "minor": "npm version minor && npm publish && npm run clean",
+ "major": "npm version major && npm publish && npm run clean",
+ "watch": "babel-node ./node_modules/.bin/webpack --watch --config ./webpack.config.dev.js & open docs/index.html",
+ "clean": "rm -rf helpers/; rm -f *Loader.js; rm -f *Loader.d.ts; rm -f index.js; rm -f index.d.ts; rm -rf docs/js; rm -rf cjs; rm -rf esm; rm -rf umd",
+ "lint": "./node_modules/.bin/eslint src examples",
+ "test": "jest",
+ "coveralls": "cat ./coverage/lcov.info | ./node_modules/.bin/coveralls",
+ "remove:tag": "npm dist-tag rm react-spinners next",
+ "publish:next": "npm publish --tag next && npm run clean",
+ "storybook": "start-storybook --docs -p 6006",
+ "build-storybook": "build-storybook --docs -o ./docs/storybook"
+ },
+ "devDependencies": {
+ "@babel/cli": "^7.19.3",
+ "@babel/core": "^7.20.5",
+ "@babel/node": "^7.20.5",
+ "@babel/preset-env": "^7.20.2",
+ "@babel/preset-react": "^7.18.6",
+ "@mdx-js/react": "^2.1.5",
+ "@storybook/addon-actions": "^6.5.14",
+ "@storybook/addon-docs": "^6.5.14",
+ "@storybook/addon-essentials": "^6.5.14",
+ "@storybook/addon-google-analytics": "^6.2.9",
+ "@storybook/addon-interactions": "^6.5.14",
+ "@storybook/addon-links": "^6.5.14",
+ "@storybook/builder-webpack5": "^6.5.14",
+ "@storybook/manager-webpack5": "^6.5.14",
+ "@storybook/react": "^6.5.14",
+ "@storybook/testing-library": "^0.0.13",
+ "@testing-library/jest-dom": "^5.16.5",
+ "@testing-library/react": "^13.4.0",
+ "@types/jest": "^29.2.3",
+ "@types/react": "^18.0.26",
+ "@types/react-click-outside": "^3.0.3",
+ "@types/react-dom": "^18.0.9",
+ "@typescript-eslint/eslint-plugin": "^5.45.0",
+ "@typescript-eslint/parser": "^5.45.0",
+ "babel-loader": "^9.1.0",
+ "babel-plugin-transform-es2015-modules-umd": "^6.24.1",
+ "coveralls": "^3.1.1",
+ "eslint": "^8.29.0",
+ "eslint-config-prettier": "^8.5.0",
+ "eslint-plugin-jest-dom": "^4.0.3",
+ "eslint-plugin-react": "^7.31.11",
+ "eslint-plugin-storybook": "^0.6.7",
+ "eslint-plugin-testing-library": "^5.9.1",
+ "eslint-plugin-unicorn": "^45.0.1",
+ "fork-ts-checker-webpack-plugin": "^7.2.13",
+ "html-webpack-plugin": "^5.5.0",
+ "jest": "^29.3.1",
+ "jest-environment-jsdom": "^29.3.1",
+ "prettier": "^2.8.0",
+ "react": "^18.2.0",
+ "react-click-outside": "^3.0.1",
+ "react-colorful": "^5.6.1",
+ "react-dom": "^18.2.0",
+ "react-ga4": "^1.4.1",
+ "storybook-dark-mode": "^1.1.2",
+ "ts-jest": "^29.0.3",
+ "ts-loader": "^9.4.2",
+ "typescript": "^4.9.3",
+ "webpack": "^5.75.0",
+ "webpack-cli": "^5.0.0"
+ },
+ "peerDependencies": {
+ "react": "^16.0.0 || ^17.0.0 || ^18.0.0",
+ "react-dom": "^16.0.0 || ^17.0.0 || ^18.0.0"
+ },
+ "sideEffects": false,
+ "packageManager": "yarn@3.3.0"
+}
diff --git a/frontend/node_modules/react-spinners/scripts/build-docs.sh b/frontend/node_modules/react-spinners/scripts/build-docs.sh
new file mode 100644
index 000000000..9fb2ad083
--- /dev/null
+++ b/frontend/node_modules/react-spinners/scripts/build-docs.sh
@@ -0,0 +1,4 @@
+#!/bin/bash
+
+ruby scripts/stories.rb
+yarn run build-storybook --docs
diff --git a/frontend/node_modules/react-spinners/scripts/mod.rb b/frontend/node_modules/react-spinners/scripts/mod.rb
new file mode 100644
index 000000000..68f7fbf73
--- /dev/null
+++ b/frontend/node_modules/react-spinners/scripts/mod.rb
@@ -0,0 +1,79 @@
+filename = ARGV[0] + "Loader"
+
+path = "./src/#{filename}.tsx"
+file = File.open(path)
+
+`rm __tests__/#{filename}-tests.tsx`
+`rm __tests__/__snapshots__/#{filename}-tests.tsx.snap`
+
+def camelize(string)
+ string.split("-").map do |part, index|
+ return part if index == 0
+ part.capitalize
+ end.join("")
+end
+
+content = file.read
+
+puts "updating imports"
+content.sub!("/** @jsxImportSource @emotion/react */", "")
+content.sub!(/import .+ from "@emotion\/react";/, "")
+content.sub!("\"./interfaces\"", "\"./helpers/props\"; import { createAnimation } from \"./helpers/animation\"")
+
+puts "updating keyframes"
+content.gsub!(/keyframes`/, "createAnimation\(\"#{filename}\",`")
+content.sub!("`;", "`);")
+
+default = content.match(/public static defaultProps = (?.+)Defaults\((?.+)\);/)
+
+if default[:type] == "size"
+ props = "size = #{default[:values]},"
+elsif default[:type] == "heightWidthRadius"
+ values = default[:values].split(/\s*,\s*/)
+ props = "height = #{values[0]}, width = #{values[1]}, radius = #{values[2]},"
+end
+
+content.sub!(/class Loader extends React.PureComponent> {/) do
+ ["function #{filename}({",
+ " loading = true,",
+ ' color = "#000000",',
+ " speedMultiplier = 1,",
+ " css = {},",
+ " #{props}",
+ " ...additionalprops",
+ "}: #{$1}): JSX.Element | null {"].join("\n")
+end
+
+content.sub!(/public static defaultProps = .+;/, "")
+
+content.gsub!(/const.+this.props;/, "")
+
+content.sub!(/public style = \((.*)\): SerializedStyles => {\n.+$/) do
+ "const style = \(#{$1}\): React.CSSProperties => {"
+end
+
+content.gsub!("return css`", "return {")
+content.gsub!("`;", "};")
+
+content.gsub!(/public (\w+) = \(\): SerializedStyles => {\n\s+return {/) do
+ "const #{$1}: React.CSSProperties = {"
+end
+content.gsub!(/};\n\s+};/, "};")
+
+content.gsub!(/(.+):\s*(.+);/) do
+ "#{camelize($1)}: `#{$2}`,"
+end
+
+content.gsub!("css=", "style=")
+content.gsub!("{this.", "{")
+
+content.gsub!("public render(): JSX.Element | null {", "")
+content.gsub!(/}\n\s+}/, "}")
+
+content.gsub!("return loading ? (", "if (!loading) { return null; }\n\n return (")
+content.gsub!(") : `null`,", ");")
+
+content.gsub!("default Loader", "default #{filename}")
+
+# puts content
+File.write(path, content)
diff --git a/frontend/node_modules/react-spinners/scripts/stories.rb b/frontend/node_modules/react-spinners/scripts/stories.rb
new file mode 100644
index 000000000..e52202ab5
--- /dev/null
+++ b/frontend/node_modules/react-spinners/scripts/stories.rb
@@ -0,0 +1,35 @@
+paths = Dir.glob("./src/*.tsx").filter do |path|
+ !path.include?("stories") && !path.include?("test")
+end
+
+template = File.open("./scripts/stories.template").read
+
+def get_args(content)
+ args = []
+
+ description = "Can be number or string. When number, unit is assumed as px. When string, a unit is expected to be passed in"
+
+ ["size", "height", "width", "margin", "radius"].each do |arg|
+ if content.include?("#{arg} =")
+ args << " #{arg}: { description: \"#{description}\", control: { type: \"number\" } },"
+ end
+ end
+
+ args.join("\n")
+end
+
+paths.sort.each do |path|
+ puts "creating story for #{path}"
+ file = File.open(path)
+ loader = path.match(/\w+Loader/).to_s
+
+ arg_types = get_args(file.read)
+
+ story_path = path.sub(".tsx", ".stories.tsx").sub("./src", "./stories")
+
+ story = template.gsub("LOADER_NAME", loader).gsub("ARG_TYPES", arg_types)
+
+ File.write(story_path, story)
+end
+
+puts "done creating stories"
diff --git a/frontend/node_modules/react-spinners/scripts/stories.template b/frontend/node_modules/react-spinners/scripts/stories.template
new file mode 100644
index 000000000..afd0e975a
--- /dev/null
+++ b/frontend/node_modules/react-spinners/scripts/stories.template
@@ -0,0 +1,17 @@
+import * as React from "react";
+import { ComponentStory, ComponentMeta } from "@storybook/react";
+
+import LOADER_NAME from "../src/LOADER_NAME";
+
+const argTypes = {
+ARG_TYPES
+}
+
+export default {
+ component: LOADER_NAME,
+ argTypes
+} as ComponentMeta;
+
+const Template: ComponentStory = (args) => ;
+
+export const Main = Template.bind({});
diff --git a/frontend/node_modules/react-spinners/tests/AllLoaders.test.tsx b/frontend/node_modules/react-spinners/tests/AllLoaders.test.tsx
new file mode 100644
index 000000000..4c21f83d9
--- /dev/null
+++ b/frontend/node_modules/react-spinners/tests/AllLoaders.test.tsx
@@ -0,0 +1,30 @@
+import * as React from "react";
+import { render, screen } from "@testing-library/react";
+import "@testing-library/jest-dom";
+
+import * as Loaders from "../src";
+import { LoaderHeightWidthRadiusProps, LoaderSizeMarginProps } from "../src/helpers/props";
+
+Object.entries(Loaders).forEach((loader) => {
+ const name = loader[0];
+
+ const Loader = loader[1] as React.ComponentType;
+
+ describe(name, () => {
+ it("should render nothing is loading prop is false", () => {
+ const { container } = render( );
+ expect(container.firstChild).toBeNull();
+ });
+
+ it("should have allow style override on wrapper", () => {
+ const style = { overflow: "scroll" };
+ const { container } = render( );
+ expect(container.firstChild).toHaveStyle(style);
+ });
+
+ it("should have allow custom html props", () => {
+ render( );
+ expect(screen.queryByLabelText("aria-label")).toBeTruthy();
+ });
+ });
+});
diff --git a/frontend/node_modules/react-spinners/tsconfig.cjs.json b/frontend/node_modules/react-spinners/tsconfig.cjs.json
new file mode 100644
index 000000000..2c7b28416
--- /dev/null
+++ b/frontend/node_modules/react-spinners/tsconfig.cjs.json
@@ -0,0 +1,6 @@
+{
+ "extends": "./tsconfig.json",
+ "compilerOptions": {
+ "module": "commonjs"
+ }
+}
diff --git a/frontend/node_modules/react-spinners/tsconfig.esm.json b/frontend/node_modules/react-spinners/tsconfig.esm.json
new file mode 100644
index 000000000..7c02501fa
--- /dev/null
+++ b/frontend/node_modules/react-spinners/tsconfig.esm.json
@@ -0,0 +1,6 @@
+{
+ "extends": "./tsconfig.json",
+ "compilerOptions": {
+ "module": "es2015"
+ }
+}
diff --git a/frontend/node_modules/react-spinners/tsconfig.json b/frontend/node_modules/react-spinners/tsconfig.json
new file mode 100644
index 000000000..6cee576f9
--- /dev/null
+++ b/frontend/node_modules/react-spinners/tsconfig.json
@@ -0,0 +1,25 @@
+{
+ "compilerOptions": {
+ "alwaysStrict": true,
+ "sourceMap": false,
+ "strictNullChecks": true,
+ "strictFunctionTypes": true,
+ "strictPropertyInitialization": true,
+ "strictBindCallApply": true,
+ "module": "es2015",
+ "jsx": "react",
+ "target": "es5",
+ "moduleResolution": "node",
+ "experimentalDecorators": true,
+ "esModuleInterop": true,
+ "declaration": true,
+ "lib": ["dom", "es2017", "es5", "es6", "es7"],
+ "outDir": ".",
+ "strict": true,
+ "noImplicitAny": true,
+ "noImplicitThis": true,
+ "noImplicitReturns": true,
+ "skipLibCheck": true
+ },
+ "exclude": ["docs/*", "webpack.config.*", "*.js", "tests", "examples", "src/*.test.tsx", "stories"]
+}
diff --git a/frontend/node_modules/react-spinners/tsconfig.umd.json b/frontend/node_modules/react-spinners/tsconfig.umd.json
new file mode 100644
index 000000000..5f97025a6
--- /dev/null
+++ b/frontend/node_modules/react-spinners/tsconfig.umd.json
@@ -0,0 +1,6 @@
+{
+ "extends": "./tsconfig.json",
+ "compilerOptions": {
+ "module": "umd"
+ }
+}
diff --git a/frontend/node_modules/react-spinners/umd/BarLoader.d.ts b/frontend/node_modules/react-spinners/umd/BarLoader.d.ts
new file mode 100644
index 000000000..aefdd89cf
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/BarLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderHeightWidthProps } from "./helpers/props";
+declare function BarLoader({ loading, color, speedMultiplier, cssOverride, height, width, ...additionalprops }: LoaderHeightWidthProps): JSX.Element | null;
+export default BarLoader;
diff --git a/frontend/node_modules/react-spinners/umd/BarLoader.js b/frontend/node_modules/react-spinners/umd/BarLoader.js
new file mode 100644
index 000000000..888f88976
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/BarLoader.js
@@ -0,0 +1,88 @@
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+(function (factory) {
+ if (typeof module === "object" && typeof module.exports === "object") {
+ var v = factory(require, exports);
+ if (v !== undefined) module.exports = v;
+ }
+ else if (typeof define === "function" && define.amd) {
+ define(["require", "exports", "react", "./helpers/unitConverter", "./helpers/animation", "./helpers/colors"], factory);
+ }
+})(function (require, exports) {
+ "use strict";
+ Object.defineProperty(exports, "__esModule", { value: true });
+ var React = __importStar(require("react"));
+ var unitConverter_1 = require("./helpers/unitConverter");
+ var animation_1 = require("./helpers/animation");
+ var colors_1 = require("./helpers/colors");
+ var long = (0, animation_1.createAnimation)("BarLoader", "0% {left: -35%;right: 100%} 60% {left: 100%;right: -90%} 100% {left: 100%;right: -90%}", "long");
+ var short = (0, animation_1.createAnimation)("BarLoader", "0% {left: -200%;right: 100%} 60% {left: 107%;right: -8%} 100% {left: 107%;right: -8%}", "short");
+ function BarLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.height, height = _f === void 0 ? 4 : _f, _g = _a.width, width = _g === void 0 ? 100 : _g, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "height", "width"]);
+ var wrapper = __assign({ display: "inherit", position: "relative", width: (0, unitConverter_1.cssValue)(width), height: (0, unitConverter_1.cssValue)(height), overflow: "hidden", backgroundColor: (0, colors_1.calculateRgba)(color, 0.2), backgroundClip: "padding-box" }, cssOverride);
+ var style = function (i) {
+ return {
+ position: "absolute",
+ height: (0, unitConverter_1.cssValue)(height),
+ overflow: "hidden",
+ backgroundColor: color,
+ backgroundClip: "padding-box",
+ display: "block",
+ borderRadius: 2,
+ willChange: "left, right",
+ animationFillMode: "forwards",
+ animation: "".concat(i === 1 ? long : short, " ").concat(2.1 / speedMultiplier, "s ").concat(i === 2 ? "".concat(1.15 / speedMultiplier, "s") : "", " ").concat(i === 1 ? "cubic-bezier(0.65, 0.815, 0.735, 0.395)" : "cubic-bezier(0.165, 0.84, 0.44, 1)", " infinite"),
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) })));
+ }
+ exports.default = BarLoader;
+});
diff --git a/frontend/node_modules/react-spinners/umd/BeatLoader.d.ts b/frontend/node_modules/react-spinners/umd/BeatLoader.d.ts
new file mode 100644
index 000000000..acd998f72
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/BeatLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeMarginProps } from "./helpers/props";
+declare function BeatLoader({ loading, color, speedMultiplier, cssOverride, size, margin, ...additionalprops }: LoaderSizeMarginProps): JSX.Element | null;
+export default BeatLoader;
diff --git a/frontend/node_modules/react-spinners/umd/BeatLoader.js b/frontend/node_modules/react-spinners/umd/BeatLoader.js
new file mode 100644
index 000000000..3188f65a2
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/BeatLoader.js
@@ -0,0 +1,85 @@
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+(function (factory) {
+ if (typeof module === "object" && typeof module.exports === "object") {
+ var v = factory(require, exports);
+ if (v !== undefined) module.exports = v;
+ }
+ else if (typeof define === "function" && define.amd) {
+ define(["require", "exports", "react", "./helpers/unitConverter", "./helpers/animation"], factory);
+ }
+})(function (require, exports) {
+ "use strict";
+ Object.defineProperty(exports, "__esModule", { value: true });
+ var React = __importStar(require("react"));
+ var unitConverter_1 = require("./helpers/unitConverter");
+ var animation_1 = require("./helpers/animation");
+ var beat = (0, animation_1.createAnimation)("BeatLoader", "50% {transform: scale(0.75);opacity: 0.2} 100% {transform: scale(1);opacity: 1}", "beat");
+ function BeatLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 15 : _f, _g = _a.margin, margin = _g === void 0 ? 2 : _g, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size", "margin"]);
+ var wrapper = __assign({ display: "inherit" }, cssOverride);
+ var style = function (i) {
+ return {
+ display: "inline-block",
+ backgroundColor: color,
+ width: (0, unitConverter_1.cssValue)(size),
+ height: (0, unitConverter_1.cssValue)(size),
+ margin: (0, unitConverter_1.cssValue)(margin),
+ borderRadius: "100%",
+ animation: "".concat(beat, " ").concat(0.7 / speedMultiplier, "s ").concat(i % 2 ? "0s" : "".concat(0.35 / speedMultiplier, "s"), " infinite linear"),
+ animationFillMode: "both",
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) }),
+ React.createElement("span", { style: style(3) })));
+ }
+ exports.default = BeatLoader;
+});
diff --git a/frontend/node_modules/react-spinners/umd/BounceLoader.d.ts b/frontend/node_modules/react-spinners/umd/BounceLoader.d.ts
new file mode 100644
index 000000000..16cd11544
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/BounceLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function BounceLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default BounceLoader;
diff --git a/frontend/node_modules/react-spinners/umd/BounceLoader.js b/frontend/node_modules/react-spinners/umd/BounceLoader.js
new file mode 100644
index 000000000..85c6a8fec
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/BounceLoader.js
@@ -0,0 +1,87 @@
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+(function (factory) {
+ if (typeof module === "object" && typeof module.exports === "object") {
+ var v = factory(require, exports);
+ if (v !== undefined) module.exports = v;
+ }
+ else if (typeof define === "function" && define.amd) {
+ define(["require", "exports", "react", "./helpers/unitConverter", "./helpers/animation"], factory);
+ }
+})(function (require, exports) {
+ "use strict";
+ Object.defineProperty(exports, "__esModule", { value: true });
+ var React = __importStar(require("react"));
+ var unitConverter_1 = require("./helpers/unitConverter");
+ var animation_1 = require("./helpers/animation");
+ var bounce = (0, animation_1.createAnimation)("BounceLoader", "0% {transform: scale(0)} 50% {transform: scale(1.0)} 100% {transform: scale(0)}", "bounce");
+ function BounceLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 60 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var style = function (i) {
+ var animationTiming = i === 1 ? "".concat(1 / speedMultiplier, "s") : "0s";
+ return {
+ position: "absolute",
+ height: (0, unitConverter_1.cssValue)(size),
+ width: (0, unitConverter_1.cssValue)(size),
+ backgroundColor: color,
+ borderRadius: "100%",
+ opacity: 0.6,
+ top: 0,
+ left: 0,
+ animationFillMode: "both",
+ animation: "".concat(bounce, " ").concat(2.1 / speedMultiplier, "s ").concat(animationTiming, " infinite ease-in-out"),
+ };
+ };
+ var wrapper = __assign({ display: "inherit", position: "relative", width: (0, unitConverter_1.cssValue)(size), height: (0, unitConverter_1.cssValue)(size) }, cssOverride);
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) })));
+ }
+ exports.default = BounceLoader;
+});
diff --git a/frontend/node_modules/react-spinners/umd/CircleLoader.d.ts b/frontend/node_modules/react-spinners/umd/CircleLoader.d.ts
new file mode 100644
index 000000000..12ec8925f
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/CircleLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function CircleLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default CircleLoader;
diff --git a/frontend/node_modules/react-spinners/umd/CircleLoader.js b/frontend/node_modules/react-spinners/umd/CircleLoader.js
new file mode 100644
index 000000000..a2353ea5b
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/CircleLoader.js
@@ -0,0 +1,92 @@
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+(function (factory) {
+ if (typeof module === "object" && typeof module.exports === "object") {
+ var v = factory(require, exports);
+ if (v !== undefined) module.exports = v;
+ }
+ else if (typeof define === "function" && define.amd) {
+ define(["require", "exports", "react", "./helpers/unitConverter", "./helpers/animation"], factory);
+ }
+})(function (require, exports) {
+ "use strict";
+ Object.defineProperty(exports, "__esModule", { value: true });
+ var React = __importStar(require("react"));
+ var unitConverter_1 = require("./helpers/unitConverter");
+ var animation_1 = require("./helpers/animation");
+ var circle = (0, animation_1.createAnimation)("CircleLoader", "0% {transform: rotate(0deg)} 50% {transform: rotate(180deg)} 100% {transform: rotate(360deg)}", "circle");
+ function CircleLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 50 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var wrapper = __assign({ display: "inherit", position: "relative", width: (0, unitConverter_1.cssValue)(size), height: (0, unitConverter_1.cssValue)(size) }, cssOverride);
+ var style = function (i) {
+ var _a = (0, unitConverter_1.parseLengthAndUnit)(size), value = _a.value, unit = _a.unit;
+ return {
+ position: "absolute",
+ height: "".concat(value * (1 - i / 10)).concat(unit),
+ width: "".concat(value * (1 - i / 10)).concat(unit),
+ borderTop: "1px solid ".concat(color),
+ borderBottom: "none",
+ borderLeft: "1px solid ".concat(color),
+ borderRight: "none",
+ borderRadius: "100%",
+ transition: "2s",
+ top: "".concat(i * 0.7 * 2.5, "%"),
+ left: "".concat(i * 0.35 * 2.5, "%"),
+ animation: "".concat(circle, " ").concat(1 / speedMultiplier, "s ").concat((i * 0.2) / speedMultiplier, "s infinite linear"),
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(0) }),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) }),
+ React.createElement("span", { style: style(3) }),
+ React.createElement("span", { style: style(4) })));
+ }
+ exports.default = CircleLoader;
+});
diff --git a/frontend/node_modules/react-spinners/umd/ClimbingBoxLoader.d.ts b/frontend/node_modules/react-spinners/umd/ClimbingBoxLoader.d.ts
new file mode 100644
index 000000000..12660b80d
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/ClimbingBoxLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function ClimbingBoxLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default ClimbingBoxLoader;
diff --git a/frontend/node_modules/react-spinners/umd/ClimbingBoxLoader.js b/frontend/node_modules/react-spinners/umd/ClimbingBoxLoader.js
new file mode 100644
index 000000000..ee7ad57b2
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/ClimbingBoxLoader.js
@@ -0,0 +1,105 @@
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+(function (factory) {
+ if (typeof module === "object" && typeof module.exports === "object") {
+ var v = factory(require, exports);
+ if (v !== undefined) module.exports = v;
+ }
+ else if (typeof define === "function" && define.amd) {
+ define(["require", "exports", "react", "./helpers/unitConverter", "./helpers/animation"], factory);
+ }
+})(function (require, exports) {
+ "use strict";
+ Object.defineProperty(exports, "__esModule", { value: true });
+ var React = __importStar(require("react"));
+ var unitConverter_1 = require("./helpers/unitConverter");
+ var animation_1 = require("./helpers/animation");
+ var climbingBox = (0, animation_1.createAnimation)("ClimbingBoxLoader", "0% {transform:translate(0, -1em) rotate(-45deg)}\n 5% {transform:translate(0, -1em) rotate(-50deg)}\n 20% {transform:translate(1em, -2em) rotate(47deg)}\n 25% {transform:translate(1em, -2em) rotate(45deg)}\n 30% {transform:translate(1em, -2em) rotate(40deg)}\n 45% {transform:translate(2em, -3em) rotate(137deg)}\n 50% {transform:translate(2em, -3em) rotate(135deg)}\n 55% {transform:translate(2em, -3em) rotate(130deg)}\n 70% {transform:translate(3em, -4em) rotate(217deg)}\n 75% {transform:translate(3em, -4em) rotate(220deg)}\n 100% {transform:translate(0, -1em) rotate(-225deg)}", "climbingBox");
+ function ClimbingBoxLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 15 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var container = __assign({ display: "inherit", position: "relative", width: "7.1em", height: "7.1em" }, cssOverride);
+ var wrapper = {
+ position: "absolute",
+ top: "50%",
+ left: "50%",
+ marginTop: "-2.7em",
+ marginLeft: "-2.7em",
+ width: "5.4em",
+ height: "5.4em",
+ fontSize: (0, unitConverter_1.cssValue)(size),
+ };
+ var style = {
+ position: "absolute",
+ left: "0",
+ bottom: "-0.1em",
+ height: "1em",
+ width: "1em",
+ backgroundColor: "transparent",
+ borderRadius: "15%",
+ border: "0.25em solid ".concat(color),
+ transform: "translate(0, -1em) rotate(-45deg)",
+ animationFillMode: "both",
+ animation: "".concat(climbingBox, " ").concat(2.5 / speedMultiplier, "s infinite cubic-bezier(0.79, 0, 0.47, 0.97)"),
+ };
+ var hill = {
+ position: "absolute",
+ width: "7.1em",
+ height: "7.1em",
+ top: "1.7em",
+ left: "1.7em",
+ borderLeft: "0.25em solid ".concat(color),
+ transform: "rotate(45deg)",
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: container }, additionalprops),
+ React.createElement("span", { style: wrapper },
+ React.createElement("span", { style: style }),
+ React.createElement("span", { style: hill }))));
+ }
+ exports.default = ClimbingBoxLoader;
+});
diff --git a/frontend/node_modules/react-spinners/umd/ClipLoader.d.ts b/frontend/node_modules/react-spinners/umd/ClipLoader.d.ts
new file mode 100644
index 000000000..336d685c2
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/ClipLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function ClipLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default ClipLoader;
diff --git a/frontend/node_modules/react-spinners/umd/ClipLoader.js b/frontend/node_modules/react-spinners/umd/ClipLoader.js
new file mode 100644
index 000000000..fd6df2ca1
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/ClipLoader.js
@@ -0,0 +1,70 @@
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+(function (factory) {
+ if (typeof module === "object" && typeof module.exports === "object") {
+ var v = factory(require, exports);
+ if (v !== undefined) module.exports = v;
+ }
+ else if (typeof define === "function" && define.amd) {
+ define(["require", "exports", "react", "./helpers/unitConverter", "./helpers/animation"], factory);
+ }
+})(function (require, exports) {
+ "use strict";
+ Object.defineProperty(exports, "__esModule", { value: true });
+ var React = __importStar(require("react"));
+ var unitConverter_1 = require("./helpers/unitConverter");
+ var animation_1 = require("./helpers/animation");
+ var clip = (0, animation_1.createAnimation)("ClipLoader", "0% {transform: rotate(0deg) scale(1)} 50% {transform: rotate(180deg) scale(0.8)} 100% {transform: rotate(360deg) scale(1)}", "clip");
+ function ClipLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 35 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var style = __assign({ background: "transparent !important", width: (0, unitConverter_1.cssValue)(size), height: (0, unitConverter_1.cssValue)(size), borderRadius: "100%", border: "2px solid", borderTopColor: color, borderBottomColor: "transparent", borderLeftColor: color, borderRightColor: color, display: "inline-block", animation: "".concat(clip, " ").concat(0.75 / speedMultiplier, "s 0s infinite linear"), animationFillMode: "both" }, cssOverride);
+ if (!loading) {
+ return null;
+ }
+ return React.createElement("span", __assign({ style: style }, additionalprops));
+ }
+ exports.default = ClipLoader;
+});
diff --git a/frontend/node_modules/react-spinners/umd/ClockLoader.d.ts b/frontend/node_modules/react-spinners/umd/ClockLoader.d.ts
new file mode 100644
index 000000000..57785be37
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/ClockLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function ClockLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default ClockLoader;
diff --git a/frontend/node_modules/react-spinners/umd/ClockLoader.js b/frontend/node_modules/react-spinners/umd/ClockLoader.js
new file mode 100644
index 000000000..78bc53e99
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/ClockLoader.js
@@ -0,0 +1,93 @@
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+(function (factory) {
+ if (typeof module === "object" && typeof module.exports === "object") {
+ var v = factory(require, exports);
+ if (v !== undefined) module.exports = v;
+ }
+ else if (typeof define === "function" && define.amd) {
+ define(["require", "exports", "react", "./helpers/unitConverter", "./helpers/animation"], factory);
+ }
+})(function (require, exports) {
+ "use strict";
+ Object.defineProperty(exports, "__esModule", { value: true });
+ var React = __importStar(require("react"));
+ var unitConverter_1 = require("./helpers/unitConverter");
+ var animation_1 = require("./helpers/animation");
+ var rotate = (0, animation_1.createAnimation)("ClockLoader", "100% { transform: rotate(360deg) }", "rotate");
+ function ClockLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 50 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var _g = (0, unitConverter_1.parseLengthAndUnit)(size), value = _g.value, unit = _g.unit;
+ var wrapper = __assign({ display: "inherit", position: "relative", width: "".concat(value).concat(unit), height: "".concat(value).concat(unit), backgroundColor: "transparent", boxShadow: "inset 0px 0px 0px 2px ".concat(color), borderRadius: "50%" }, cssOverride);
+ var minute = {
+ position: "absolute",
+ backgroundColor: color,
+ width: "".concat(value / 3, "px"),
+ height: "2px",
+ top: "".concat(value / 2 - 1, "px"),
+ left: "".concat(value / 2 - 1, "px"),
+ transformOrigin: "1px 1px",
+ animation: "".concat(rotate, " ").concat(8 / speedMultiplier, "s linear infinite"),
+ };
+ var hour = {
+ position: "absolute",
+ backgroundColor: color,
+ width: "".concat(value / 2.4, "px"),
+ height: "2px",
+ top: "".concat(value / 2 - 1, "px"),
+ left: "".concat(value / 2 - 1, "px"),
+ transformOrigin: "1px 1px",
+ animation: "".concat(rotate, " ").concat(2 / speedMultiplier, "s linear infinite"),
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: hour }),
+ React.createElement("span", { style: minute })));
+ }
+ exports.default = ClockLoader;
+});
diff --git a/frontend/node_modules/react-spinners/umd/DotLoader.d.ts b/frontend/node_modules/react-spinners/umd/DotLoader.d.ts
new file mode 100644
index 000000000..f3cd003ad
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/DotLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function DotLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default DotLoader;
diff --git a/frontend/node_modules/react-spinners/umd/DotLoader.js b/frontend/node_modules/react-spinners/umd/DotLoader.js
new file mode 100644
index 000000000..c79a8e593
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/DotLoader.js
@@ -0,0 +1,87 @@
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+(function (factory) {
+ if (typeof module === "object" && typeof module.exports === "object") {
+ var v = factory(require, exports);
+ if (v !== undefined) module.exports = v;
+ }
+ else if (typeof define === "function" && define.amd) {
+ define(["require", "exports", "react", "./helpers/unitConverter", "./helpers/animation"], factory);
+ }
+})(function (require, exports) {
+ "use strict";
+ Object.defineProperty(exports, "__esModule", { value: true });
+ var React = __importStar(require("react"));
+ var unitConverter_1 = require("./helpers/unitConverter");
+ var animation_1 = require("./helpers/animation");
+ var rotate = (0, animation_1.createAnimation)("DotLoader", "100% {transform: rotate(360deg)}", "rotate");
+ var bounce = (0, animation_1.createAnimation)("DotLoader", "0%, 100% {transform: scale(0)} 50% {transform: scale(1.0)}", "bounce");
+ function DotLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 60 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var wrapper = __assign({ display: "inherit", position: "relative", width: (0, unitConverter_1.cssValue)(size), height: (0, unitConverter_1.cssValue)(size), animationFillMode: "forwards", animation: "".concat(rotate, " ").concat(2 / speedMultiplier, "s 0s infinite linear") }, cssOverride);
+ var style = function (i) {
+ var _a = (0, unitConverter_1.parseLengthAndUnit)(size), value = _a.value, unit = _a.unit;
+ return {
+ position: "absolute",
+ top: i % 2 ? "0" : "auto",
+ bottom: i % 2 ? "auto" : "0",
+ height: "".concat(value / 2).concat(unit),
+ width: "".concat(value / 2).concat(unit),
+ backgroundColor: color,
+ borderRadius: "100%",
+ animationFillMode: "forwards",
+ animation: "".concat(bounce, " ").concat(2 / speedMultiplier, "s ").concat(i === 2 ? "1s" : "0s", " infinite linear"),
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) })));
+ }
+ exports.default = DotLoader;
+});
diff --git a/frontend/node_modules/react-spinners/umd/FadeLoader.d.ts b/frontend/node_modules/react-spinners/umd/FadeLoader.d.ts
new file mode 100644
index 000000000..98053e8e4
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/FadeLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderHeightWidthRadiusProps } from "./helpers/props";
+declare function FadeLoader({ loading, color, speedMultiplier, cssOverride, height, width, radius, margin, ...additionalprops }: LoaderHeightWidthRadiusProps): JSX.Element | null;
+export default FadeLoader;
diff --git a/frontend/node_modules/react-spinners/umd/FadeLoader.js b/frontend/node_modules/react-spinners/umd/FadeLoader.js
new file mode 100644
index 000000000..80221ef58
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/FadeLoader.js
@@ -0,0 +1,102 @@
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+(function (factory) {
+ if (typeof module === "object" && typeof module.exports === "object") {
+ var v = factory(require, exports);
+ if (v !== undefined) module.exports = v;
+ }
+ else if (typeof define === "function" && define.amd) {
+ define(["require", "exports", "react", "./helpers/unitConverter", "./helpers/animation"], factory);
+ }
+})(function (require, exports) {
+ "use strict";
+ Object.defineProperty(exports, "__esModule", { value: true });
+ var React = __importStar(require("react"));
+ var unitConverter_1 = require("./helpers/unitConverter");
+ var animation_1 = require("./helpers/animation");
+ var fade = (0, animation_1.createAnimation)("FadeLoader", "50% {opacity: 0.3} 100% {opacity: 1}", "fade");
+ function FadeLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.height, height = _f === void 0 ? 15 : _f, _g = _a.width, width = _g === void 0 ? 5 : _g, _h = _a.radius, radius = _h === void 0 ? 2 : _h, _j = _a.margin, margin = _j === void 0 ? 2 : _j, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "height", "width", "radius", "margin"]);
+ var value = (0, unitConverter_1.parseLengthAndUnit)(margin).value;
+ var radiusValue = value + 18;
+ var quarter = radiusValue / 2 + radiusValue / 5.5;
+ var wrapper = __assign({ display: "inherit", position: "relative", fontSize: "0", top: radiusValue, left: radiusValue, width: "".concat(radiusValue * 3, "px"), height: "".concat(radiusValue * 3, "px") }, cssOverride);
+ var style = function (i) {
+ return {
+ position: "absolute",
+ width: (0, unitConverter_1.cssValue)(width),
+ height: (0, unitConverter_1.cssValue)(height),
+ margin: (0, unitConverter_1.cssValue)(margin),
+ backgroundColor: color,
+ borderRadius: (0, unitConverter_1.cssValue)(radius),
+ transition: "2s",
+ animationFillMode: "both",
+ animation: "".concat(fade, " ").concat(1.2 / speedMultiplier, "s ").concat(i * 0.12, "s infinite ease-in-out"),
+ };
+ };
+ var a = __assign(__assign({}, style(1)), { top: "".concat(radiusValue, "px"), left: "0" });
+ var b = __assign(__assign({}, style(2)), { top: "".concat(quarter, "px"), left: "".concat(quarter, "px"), transform: "rotate(-45deg)" });
+ var c = __assign(__assign({}, style(3)), { top: "0", left: "".concat(radiusValue, "px"), transform: "rotate(90deg)" });
+ var d = __assign(__assign({}, style(4)), { top: "".concat(-1 * quarter, "px"), left: "".concat(quarter, "px"), transform: "rotate(45deg)" });
+ var e = __assign(__assign({}, style(5)), { top: "".concat(-1 * radiusValue, "px"), left: "0" });
+ var f = __assign(__assign({}, style(6)), { top: "".concat(-1 * quarter, "px"), left: "".concat(-1 * quarter, "px"), transform: "rotate(-45deg)" });
+ var g = __assign(__assign({}, style(7)), { top: "0", left: "".concat(-1 * radiusValue, "px"), transform: "rotate(90deg)" });
+ var h = __assign(__assign({}, style(8)), { top: "".concat(quarter, "px"), left: "".concat(-1 * quarter, "px"), transform: "rotate(45deg)" });
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: a }),
+ React.createElement("span", { style: b }),
+ React.createElement("span", { style: c }),
+ React.createElement("span", { style: d }),
+ React.createElement("span", { style: e }),
+ React.createElement("span", { style: f }),
+ React.createElement("span", { style: g }),
+ React.createElement("span", { style: h })));
+ }
+ exports.default = FadeLoader;
+});
diff --git a/frontend/node_modules/react-spinners/umd/GridLoader.d.ts b/frontend/node_modules/react-spinners/umd/GridLoader.d.ts
new file mode 100644
index 000000000..06fa46b8c
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/GridLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeMarginProps } from "./helpers/props";
+declare function GridLoader({ loading, color, speedMultiplier, cssOverride, size, margin, ...additionalprops }: LoaderSizeMarginProps): JSX.Element | null;
+export default GridLoader;
diff --git a/frontend/node_modules/react-spinners/umd/GridLoader.js b/frontend/node_modules/react-spinners/umd/GridLoader.js
new file mode 100644
index 000000000..3ad7c184d
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/GridLoader.js
@@ -0,0 +1,99 @@
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+(function (factory) {
+ if (typeof module === "object" && typeof module.exports === "object") {
+ var v = factory(require, exports);
+ if (v !== undefined) module.exports = v;
+ }
+ else if (typeof define === "function" && define.amd) {
+ define(["require", "exports", "react", "./helpers/unitConverter", "./helpers/animation"], factory);
+ }
+})(function (require, exports) {
+ "use strict";
+ Object.defineProperty(exports, "__esModule", { value: true });
+ var React = __importStar(require("react"));
+ var unitConverter_1 = require("./helpers/unitConverter");
+ var animation_1 = require("./helpers/animation");
+ var grid = (0, animation_1.createAnimation)("GridLoader", "0% {transform: scale(1)} 50% {transform: scale(0.5); opacity: 0.7} 100% {transform: scale(1); opacity: 1}", "grid");
+ var random = function (top) { return Math.random() * top; };
+ function GridLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 15 : _f, _g = _a.margin, margin = _g === void 0 ? 2 : _g, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size", "margin"]);
+ var sizeWithUnit = (0, unitConverter_1.parseLengthAndUnit)(size);
+ var marginWithUnit = (0, unitConverter_1.parseLengthAndUnit)(margin);
+ var width = parseFloat(sizeWithUnit.value.toString()) * 3 + parseFloat(marginWithUnit.value.toString()) * 6;
+ var wrapper = __assign({ width: "".concat(width).concat(sizeWithUnit.unit), fontSize: 0, display: "inline-block" }, cssOverride);
+ var style = function (rand) {
+ return {
+ display: "inline-block",
+ backgroundColor: color,
+ width: "".concat((0, unitConverter_1.cssValue)(size)),
+ height: "".concat((0, unitConverter_1.cssValue)(size)),
+ margin: (0, unitConverter_1.cssValue)(margin),
+ borderRadius: "100%",
+ animationFillMode: "both",
+ animation: "".concat(grid, " ").concat((rand / 100 + 0.6) / speedMultiplier, "s ").concat(rand / 100 - 0.2, "s infinite ease"),
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops, { ref: function (node) {
+ if (node) {
+ node.style.setProperty("width", "".concat(width).concat(sizeWithUnit.unit), "important");
+ }
+ } }),
+ React.createElement("span", { style: style(random(100)) }),
+ React.createElement("span", { style: style(random(100)) }),
+ React.createElement("span", { style: style(random(100)) }),
+ React.createElement("span", { style: style(random(100)) }),
+ React.createElement("span", { style: style(random(100)) }),
+ React.createElement("span", { style: style(random(100)) }),
+ React.createElement("span", { style: style(random(100)) }),
+ React.createElement("span", { style: style(random(100)) }),
+ React.createElement("span", { style: style(random(100)) })));
+ }
+ exports.default = GridLoader;
+});
diff --git a/frontend/node_modules/react-spinners/umd/HashLoader.d.ts b/frontend/node_modules/react-spinners/umd/HashLoader.d.ts
new file mode 100644
index 000000000..ca1763ff3
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/HashLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function HashLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default HashLoader;
diff --git a/frontend/node_modules/react-spinners/umd/HashLoader.js b/frontend/node_modules/react-spinners/umd/HashLoader.js
new file mode 100644
index 000000000..73a698dc1
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/HashLoader.js
@@ -0,0 +1,93 @@
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+(function (factory) {
+ if (typeof module === "object" && typeof module.exports === "object") {
+ var v = factory(require, exports);
+ if (v !== undefined) module.exports = v;
+ }
+ else if (typeof define === "function" && define.amd) {
+ define(["require", "exports", "react", "./helpers/colors", "./helpers/unitConverter", "./helpers/animation"], factory);
+ }
+})(function (require, exports) {
+ "use strict";
+ Object.defineProperty(exports, "__esModule", { value: true });
+ var React = __importStar(require("react"));
+ var colors_1 = require("./helpers/colors");
+ var unitConverter_1 = require("./helpers/unitConverter");
+ var animation_1 = require("./helpers/animation");
+ function HashLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 50 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var _g = (0, unitConverter_1.parseLengthAndUnit)(size), value = _g.value, unit = _g.unit;
+ var wrapper = __assign({ display: "inherit", position: "relative", width: (0, unitConverter_1.cssValue)(size), height: (0, unitConverter_1.cssValue)(size), transform: "rotate(165deg)" }, cssOverride);
+ var thickness = value / 5;
+ var lat = (value - thickness) / 2;
+ var offset = lat - thickness;
+ var colorValue = (0, colors_1.calculateRgba)(color, 0.75);
+ var before = (0, animation_1.createAnimation)("HashLoader", "0% {width: ".concat(thickness, "px; box-shadow: ").concat(lat, "px ").concat(-offset, "px ").concat(colorValue, ", ").concat(-lat, "px ").concat(offset, "px ").concat(colorValue, "}\n 35% {width: ").concat((0, unitConverter_1.cssValue)(size), "; box-shadow: 0 ").concat(-offset, "px ").concat(colorValue, ", 0 ").concat(offset, "px ").concat(colorValue, "}\n 70% {width: ").concat(thickness, "px; box-shadow: ").concat(-lat, "px ").concat(-offset, "px ").concat(colorValue, ", ").concat(lat, "px ").concat(offset, "px ").concat(colorValue, "}\n 100% {box-shadow: ").concat(lat, "px ").concat(-offset, "px ").concat(colorValue, ", ").concat(-lat, "px ").concat(offset, "px ").concat(colorValue, "}"), "before");
+ var after = (0, animation_1.createAnimation)("HashLoader", "0% {height: ".concat(thickness, "px; box-shadow: ").concat(offset, "px ").concat(lat, "px ").concat(color, ", ").concat(-offset, "px ").concat(-lat, "px ").concat(color, "}\n 35% {height: ").concat((0, unitConverter_1.cssValue)(size), "; box-shadow: ").concat(offset, "px 0 ").concat(color, ", ").concat(-offset, "px 0 ").concat(color, "}\n 70% {height: ").concat(thickness, "px; box-shadow: ").concat(offset, "px ").concat(-lat, "px ").concat(color, ", ").concat(-offset, "px ").concat(lat, "px ").concat(color, "}\n 100% {box-shadow: ").concat(offset, "px ").concat(lat, "px ").concat(color, ", ").concat(-offset, "px ").concat(-lat, "px ").concat(color, "}"), "after");
+ var style = function (i) {
+ return {
+ position: "absolute",
+ top: "50%",
+ left: "50%",
+ display: "block",
+ width: "".concat(value / 5).concat(unit),
+ height: "".concat(value / 5).concat(unit),
+ borderRadius: "".concat(value / 10).concat(unit),
+ transform: "translate(-50%, -50%)",
+ animationFillMode: "none",
+ animation: "".concat(i === 1 ? before : after, " ").concat(2 / speedMultiplier, "s infinite"),
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) })));
+ }
+ exports.default = HashLoader;
+});
diff --git a/frontend/node_modules/react-spinners/umd/MoonLoader.d.ts b/frontend/node_modules/react-spinners/umd/MoonLoader.d.ts
new file mode 100644
index 000000000..2cf77a2c2
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/MoonLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function MoonLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default MoonLoader;
diff --git a/frontend/node_modules/react-spinners/umd/MoonLoader.js b/frontend/node_modules/react-spinners/umd/MoonLoader.js
new file mode 100644
index 000000000..cd7e52661
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/MoonLoader.js
@@ -0,0 +1,83 @@
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+(function (factory) {
+ if (typeof module === "object" && typeof module.exports === "object") {
+ var v = factory(require, exports);
+ if (v !== undefined) module.exports = v;
+ }
+ else if (typeof define === "function" && define.amd) {
+ define(["require", "exports", "react", "./helpers/unitConverter", "./helpers/animation"], factory);
+ }
+})(function (require, exports) {
+ "use strict";
+ Object.defineProperty(exports, "__esModule", { value: true });
+ var React = __importStar(require("react"));
+ var unitConverter_1 = require("./helpers/unitConverter");
+ var animation_1 = require("./helpers/animation");
+ var moon = (0, animation_1.createAnimation)("MoonLoader", "100% {transform: rotate(360deg)}", "moon");
+ function MoonLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 60 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var _g = (0, unitConverter_1.parseLengthAndUnit)(size), value = _g.value, unit = _g.unit;
+ var moonSize = value / 7;
+ var wrapper = __assign({ display: "inherit", position: "relative", width: "".concat("".concat(value + moonSize * 2).concat(unit)), height: "".concat("".concat(value + moonSize * 2).concat(unit)), animation: "".concat(moon, " ").concat(0.6 / speedMultiplier, "s 0s infinite linear"), animationFillMode: "forwards" }, cssOverride);
+ var ballStyle = function (size) {
+ return {
+ width: (0, unitConverter_1.cssValue)(size),
+ height: (0, unitConverter_1.cssValue)(size),
+ borderRadius: "100%",
+ };
+ };
+ var ball = __assign(__assign({}, ballStyle(moonSize)), { backgroundColor: "".concat(color), opacity: "0.8", position: "absolute", top: "".concat("".concat(value / 2 - moonSize / 2).concat(unit)), animation: "".concat(moon, " ").concat(0.6 / speedMultiplier, "s 0s infinite linear"), animationFillMode: "forwards" });
+ var circle = __assign(__assign({}, ballStyle(value)), { border: "".concat(moonSize, "px solid ").concat(color), opacity: "0.1", boxSizing: "content-box", position: "absolute" });
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: ball }),
+ React.createElement("span", { style: circle })));
+ }
+ exports.default = MoonLoader;
+});
diff --git a/frontend/node_modules/react-spinners/umd/PacmanLoader.d.ts b/frontend/node_modules/react-spinners/umd/PacmanLoader.d.ts
new file mode 100644
index 000000000..e8ad135e3
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/PacmanLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeMarginProps } from "./helpers/props";
+declare function PacmanLoader({ loading, color, speedMultiplier, cssOverride, size, margin, ...additionalprops }: LoaderSizeMarginProps): JSX.Element | null;
+export default PacmanLoader;
diff --git a/frontend/node_modules/react-spinners/umd/PacmanLoader.js b/frontend/node_modules/react-spinners/umd/PacmanLoader.js
new file mode 100644
index 000000000..01e76c87f
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/PacmanLoader.js
@@ -0,0 +1,114 @@
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+(function (factory) {
+ if (typeof module === "object" && typeof module.exports === "object") {
+ var v = factory(require, exports);
+ if (v !== undefined) module.exports = v;
+ }
+ else if (typeof define === "function" && define.amd) {
+ define(["require", "exports", "react", "./helpers/unitConverter", "./helpers/animation"], factory);
+ }
+})(function (require, exports) {
+ "use strict";
+ Object.defineProperty(exports, "__esModule", { value: true });
+ var React = __importStar(require("react"));
+ var unitConverter_1 = require("./helpers/unitConverter");
+ var animation_1 = require("./helpers/animation");
+ var pacman = [
+ (0, animation_1.createAnimation)("PacmanLoader", "0% {transform: rotate(0deg)} 50% {transform: rotate(-44deg)}", "pacman-1"),
+ (0, animation_1.createAnimation)("PacmanLoader", "0% {transform: rotate(0deg)} 50% {transform: rotate(44deg)}", "pacman-2"),
+ ];
+ function PacmanLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 25 : _f, _g = _a.margin, margin = _g === void 0 ? 2 : _g, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size", "margin"]);
+ var _h = (0, unitConverter_1.parseLengthAndUnit)(size), value = _h.value, unit = _h.unit;
+ var wrapper = __assign({ display: "inherit", position: "relative", fontSize: 0, height: "".concat(value * 2).concat(unit), width: "".concat(value * 2).concat(unit) }, cssOverride);
+ var ball = (0, animation_1.createAnimation)("PacmanLoader", "75% {opacity: 0.7}\n 100% {transform: translate(".concat("".concat(-4 * value).concat(unit), ", ").concat("".concat(-value / 4).concat(unit), ")}"), "ball");
+ var ballStyle = function (i) {
+ return {
+ width: "".concat(value / 3).concat(unit),
+ height: "".concat(value / 3).concat(unit),
+ backgroundColor: color,
+ margin: (0, unitConverter_1.cssValue)(margin),
+ borderRadius: "100%",
+ transform: "translate(0, ".concat("".concat(-value / 4).concat(unit), ")"),
+ position: "absolute",
+ top: "".concat(value).concat(unit),
+ left: "".concat(value * 4).concat(unit),
+ animation: "".concat(ball, " ").concat(1 / speedMultiplier, "s ").concat(i * 0.25, "s infinite linear"),
+ animationFillMode: "both",
+ };
+ };
+ var s1 = "".concat((0, unitConverter_1.cssValue)(size), " solid transparent");
+ var s2 = "".concat((0, unitConverter_1.cssValue)(size), " solid ").concat(color);
+ var pacmanStyle = function (i) {
+ return {
+ width: 0,
+ height: 0,
+ borderRight: s1,
+ borderTop: i === 0 ? s1 : s2,
+ borderLeft: s2,
+ borderBottom: i === 0 ? s2 : s1,
+ borderRadius: (0, unitConverter_1.cssValue)(size),
+ position: "absolute",
+ animation: "".concat(pacman[i], " ").concat(0.8 / speedMultiplier, "s infinite ease-in-out"),
+ animationFillMode: "both",
+ };
+ };
+ var pac = pacmanStyle(0);
+ var man = pacmanStyle(1);
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: pac }),
+ React.createElement("span", { style: man }),
+ React.createElement("span", { style: ballStyle(2) }),
+ React.createElement("span", { style: ballStyle(3) }),
+ React.createElement("span", { style: ballStyle(4) }),
+ React.createElement("span", { style: ballStyle(5) })));
+ }
+ exports.default = PacmanLoader;
+});
diff --git a/frontend/node_modules/react-spinners/umd/PropagateLoader.d.ts b/frontend/node_modules/react-spinners/umd/PropagateLoader.d.ts
new file mode 100644
index 000000000..ff39bb03e
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/PropagateLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function PropagateLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default PropagateLoader;
diff --git a/frontend/node_modules/react-spinners/umd/PropagateLoader.js b/frontend/node_modules/react-spinners/umd/PropagateLoader.js
new file mode 100644
index 000000000..982aea349
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/PropagateLoader.js
@@ -0,0 +1,98 @@
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+(function (factory) {
+ if (typeof module === "object" && typeof module.exports === "object") {
+ var v = factory(require, exports);
+ if (v !== undefined) module.exports = v;
+ }
+ else if (typeof define === "function" && define.amd) {
+ define(["require", "exports", "react", "./helpers/unitConverter", "./helpers/animation"], factory);
+ }
+})(function (require, exports) {
+ "use strict";
+ Object.defineProperty(exports, "__esModule", { value: true });
+ var React = __importStar(require("react"));
+ var unitConverter_1 = require("./helpers/unitConverter");
+ var animation_1 = require("./helpers/animation");
+ // 1.5 4.5 7.5
+ var distance = [1, 3, 5];
+ var propagate = [
+ (0, animation_1.createAnimation)("PropagateLoader", "25% {transform: translateX(-".concat(distance[0], "rem) scale(0.75)}\n 50% {transform: translateX(-").concat(distance[1], "rem) scale(0.6)}\n 75% {transform: translateX(-").concat(distance[2], "rem) scale(0.5)}\n 95% {transform: translateX(0rem) scale(1)}"), "propogate-0"),
+ (0, animation_1.createAnimation)("PropagateLoader", "25% {transform: translateX(-".concat(distance[0], "rem) scale(0.75)}\n 50% {transform: translateX(-").concat(distance[1], "rem) scale(0.6)}\n 75% {transform: translateX(-").concat(distance[1], "rem) scale(0.6)}\n 95% {transform: translateX(0rem) scale(1)}"), "propogate-1"),
+ (0, animation_1.createAnimation)("PropagateLoader", "25% {transform: translateX(-".concat(distance[0], "rem) scale(0.75)}\n 75% {transform: translateX(-").concat(distance[0], "rem) scale(0.75)}\n 95% {transform: translateX(0rem) scale(1)}"), "propogate-2"),
+ (0, animation_1.createAnimation)("PropagateLoader", "25% {transform: translateX(".concat(distance[0], "rem) scale(0.75)}\n 75% {transform: translateX(").concat(distance[0], "rem) scale(0.75)}\n 95% {transform: translateX(0rem) scale(1)}"), "propogate-3"),
+ (0, animation_1.createAnimation)("PropagateLoader", "25% {transform: translateX(".concat(distance[0], "rem) scale(0.75)}\n 50% {transform: translateX(").concat(distance[1], "rem) scale(0.6)}\n 75% {transform: translateX(").concat(distance[1], "rem) scale(0.6)}\n 95% {transform: translateX(0rem) scale(1)}"), "propogate-4"),
+ (0, animation_1.createAnimation)("PropagateLoader", "25% {transform: translateX(".concat(distance[0], "rem) scale(0.75)}\n 50% {transform: translateX(").concat(distance[1], "rem) scale(0.6)}\n 75% {transform: translateX(").concat(distance[2], "rem) scale(0.5)}\n 95% {transform: translateX(0rem) scale(1)}"), "propogate-5"),
+ ];
+ function PropagateLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 15 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var _g = (0, unitConverter_1.parseLengthAndUnit)(size), value = _g.value, unit = _g.unit;
+ var wrapper = __assign({ display: "inherit", position: "relative" }, cssOverride);
+ var style = function (i) {
+ return {
+ position: "absolute",
+ fontSize: "".concat(value / 3).concat(unit),
+ width: "".concat(value).concat(unit),
+ height: "".concat(value).concat(unit),
+ background: color,
+ borderRadius: "50%",
+ animation: "".concat(propagate[i], " ").concat(1.5 / speedMultiplier, "s infinite"),
+ animationFillMode: "forwards",
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(0) }),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) }),
+ React.createElement("span", { style: style(3) }),
+ React.createElement("span", { style: style(4) }),
+ React.createElement("span", { style: style(5) })));
+ }
+ exports.default = PropagateLoader;
+});
diff --git a/frontend/node_modules/react-spinners/umd/PuffLoader.d.ts b/frontend/node_modules/react-spinners/umd/PuffLoader.d.ts
new file mode 100644
index 000000000..e6ae1d0c8
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/PuffLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function PuffLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default PuffLoader;
diff --git a/frontend/node_modules/react-spinners/umd/PuffLoader.js b/frontend/node_modules/react-spinners/umd/PuffLoader.js
new file mode 100644
index 000000000..9395e2f11
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/PuffLoader.js
@@ -0,0 +1,93 @@
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+(function (factory) {
+ if (typeof module === "object" && typeof module.exports === "object") {
+ var v = factory(require, exports);
+ if (v !== undefined) module.exports = v;
+ }
+ else if (typeof define === "function" && define.amd) {
+ define(["require", "exports", "react", "./helpers/unitConverter", "./helpers/animation"], factory);
+ }
+})(function (require, exports) {
+ "use strict";
+ Object.defineProperty(exports, "__esModule", { value: true });
+ var React = __importStar(require("react"));
+ var unitConverter_1 = require("./helpers/unitConverter");
+ var animation_1 = require("./helpers/animation");
+ var puff = [
+ (0, animation_1.createAnimation)("PuffLoader", "0% {transform: scale(0)} 100% {transform: scale(1.0)}", "puff-1"),
+ (0, animation_1.createAnimation)("PuffLoader", "0% {opacity: 1} 100% {opacity: 0}", "puff-2"),
+ ];
+ function PuffLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 60 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var wrapper = __assign({ display: "inherit", position: "relative", width: (0, unitConverter_1.cssValue)(size), height: (0, unitConverter_1.cssValue)(size) }, cssOverride);
+ var style = function (i) {
+ return {
+ position: "absolute",
+ height: (0, unitConverter_1.cssValue)(size),
+ width: (0, unitConverter_1.cssValue)(size),
+ border: "thick solid ".concat(color),
+ borderRadius: "50%",
+ opacity: "1",
+ top: "0",
+ left: "0",
+ animationFillMode: "both",
+ animation: "".concat(puff[0], ", ").concat(puff[1]),
+ animationDuration: "".concat(2 / speedMultiplier, "s"),
+ animationIterationCount: "infinite",
+ animationTimingFunction: "cubic-bezier(0.165, 0.84, 0.44, 1), cubic-bezier(0.3, 0.61, 0.355, 1)",
+ animationDelay: i === 1 ? "-1s" : "0s",
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) })));
+ }
+ exports.default = PuffLoader;
+});
diff --git a/frontend/node_modules/react-spinners/umd/PulseLoader.d.ts b/frontend/node_modules/react-spinners/umd/PulseLoader.d.ts
new file mode 100644
index 000000000..abf34d4c5
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/PulseLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeMarginProps } from "./helpers/props";
+declare function PulseLoader({ loading, color, speedMultiplier, cssOverride, size, margin, ...additionalprops }: LoaderSizeMarginProps): JSX.Element | null;
+export default PulseLoader;
diff --git a/frontend/node_modules/react-spinners/umd/PulseLoader.js b/frontend/node_modules/react-spinners/umd/PulseLoader.js
new file mode 100644
index 000000000..7f83d0424
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/PulseLoader.js
@@ -0,0 +1,85 @@
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+(function (factory) {
+ if (typeof module === "object" && typeof module.exports === "object") {
+ var v = factory(require, exports);
+ if (v !== undefined) module.exports = v;
+ }
+ else if (typeof define === "function" && define.amd) {
+ define(["require", "exports", "react", "./helpers/unitConverter", "./helpers/animation"], factory);
+ }
+})(function (require, exports) {
+ "use strict";
+ Object.defineProperty(exports, "__esModule", { value: true });
+ var React = __importStar(require("react"));
+ var unitConverter_1 = require("./helpers/unitConverter");
+ var animation_1 = require("./helpers/animation");
+ var pulse = (0, animation_1.createAnimation)("PulseLoader", "0% {transform: scale(1); opacity: 1} 45% {transform: scale(0.1); opacity: 0.7} 80% {transform: scale(1); opacity: 1}", "pulse");
+ function PulseLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 15 : _f, _g = _a.margin, margin = _g === void 0 ? 2 : _g, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size", "margin"]);
+ var wrapper = __assign({ display: "inherit" }, cssOverride);
+ var style = function (i) {
+ return {
+ backgroundColor: color,
+ width: (0, unitConverter_1.cssValue)(size),
+ height: (0, unitConverter_1.cssValue)(size),
+ margin: (0, unitConverter_1.cssValue)(margin),
+ borderRadius: "100%",
+ display: "inline-block",
+ animation: "".concat(pulse, " ").concat(0.75 / speedMultiplier, "s ").concat((i * 0.12) / speedMultiplier, "s infinite cubic-bezier(0.2, 0.68, 0.18, 1.08)"),
+ animationFillMode: "both",
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) }),
+ React.createElement("span", { style: style(3) })));
+ }
+ exports.default = PulseLoader;
+});
diff --git a/frontend/node_modules/react-spinners/umd/RingLoader.d.ts b/frontend/node_modules/react-spinners/umd/RingLoader.d.ts
new file mode 100644
index 000000000..ebf7a62cb
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/RingLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function RingLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default RingLoader;
diff --git a/frontend/node_modules/react-spinners/umd/RingLoader.js b/frontend/node_modules/react-spinners/umd/RingLoader.js
new file mode 100644
index 000000000..6acaa9829
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/RingLoader.js
@@ -0,0 +1,89 @@
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+(function (factory) {
+ if (typeof module === "object" && typeof module.exports === "object") {
+ var v = factory(require, exports);
+ if (v !== undefined) module.exports = v;
+ }
+ else if (typeof define === "function" && define.amd) {
+ define(["require", "exports", "react", "./helpers/unitConverter", "./helpers/animation"], factory);
+ }
+})(function (require, exports) {
+ "use strict";
+ Object.defineProperty(exports, "__esModule", { value: true });
+ var React = __importStar(require("react"));
+ var unitConverter_1 = require("./helpers/unitConverter");
+ var animation_1 = require("./helpers/animation");
+ var right = (0, animation_1.createAnimation)("RingLoader", "0% {transform: rotateX(0deg) rotateY(0deg) rotateZ(0deg)} 100% {transform: rotateX(180deg) rotateY(360deg) rotateZ(360deg)}", "right");
+ var left = (0, animation_1.createAnimation)("RingLoader", "0% {transform: rotateX(0deg) rotateY(0deg) rotateZ(0deg)} 100% {transform: rotateX(360deg) rotateY(180deg) rotateZ(360deg)}", "left");
+ function RingLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 60 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var _g = (0, unitConverter_1.parseLengthAndUnit)(size), value = _g.value, unit = _g.unit;
+ var wrapper = __assign({ display: "inherit", width: (0, unitConverter_1.cssValue)(size), height: (0, unitConverter_1.cssValue)(size), position: "relative" }, cssOverride);
+ var style = function (i) {
+ return {
+ position: "absolute",
+ top: "0",
+ left: "0",
+ width: "".concat(value).concat(unit),
+ height: "".concat(value).concat(unit),
+ border: "".concat(value / 10).concat(unit, " solid ").concat(color),
+ opacity: "0.4",
+ borderRadius: "100%",
+ animationFillMode: "forwards",
+ perspective: "800px",
+ animation: "".concat(i === 1 ? right : left, " ").concat(2 / speedMultiplier, "s 0s infinite linear"),
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) })));
+ }
+ exports.default = RingLoader;
+});
diff --git a/frontend/node_modules/react-spinners/umd/RiseLoader.d.ts b/frontend/node_modules/react-spinners/umd/RiseLoader.d.ts
new file mode 100644
index 000000000..7ed595882
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/RiseLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeMarginProps } from "./helpers/props";
+declare function RiseLoader({ loading, color, speedMultiplier, cssOverride, size, margin, ...additionalprops }: LoaderSizeMarginProps): JSX.Element | null;
+export default RiseLoader;
diff --git a/frontend/node_modules/react-spinners/umd/RiseLoader.js b/frontend/node_modules/react-spinners/umd/RiseLoader.js
new file mode 100644
index 000000000..498a9af84
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/RiseLoader.js
@@ -0,0 +1,88 @@
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+(function (factory) {
+ if (typeof module === "object" && typeof module.exports === "object") {
+ var v = factory(require, exports);
+ if (v !== undefined) module.exports = v;
+ }
+ else if (typeof define === "function" && define.amd) {
+ define(["require", "exports", "react", "./helpers/unitConverter", "./helpers/animation"], factory);
+ }
+})(function (require, exports) {
+ "use strict";
+ Object.defineProperty(exports, "__esModule", { value: true });
+ var React = __importStar(require("react"));
+ var unitConverter_1 = require("./helpers/unitConverter");
+ var animation_1 = require("./helpers/animation");
+ function RiseLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 15 : _f, _g = _a.margin, margin = _g === void 0 ? 2 : _g, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size", "margin"]);
+ var wrapper = __assign({ display: "inherit" }, cssOverride);
+ var even = (0, animation_1.createAnimation)("RiseLoader", "0% {transform: scale(1.1)}\n 25% {transform: translateY(-".concat(size, "px)}\n 50% {transform: scale(0.4)}\n 75% {transform: translateY(").concat(size, "px)}\n 100% {transform: translateY(0) scale(1.0)}"), "even");
+ var odd = (0, animation_1.createAnimation)("RiseLoader", "0% {transform: scale(0.4)}\n 25% {transform: translateY(".concat(size, "px)}\n 50% {transform: scale(1.1)}\n 75% {transform: translateY(").concat(-size, "px)}\n 100% {transform: translateY(0) scale(0.75)}"), "odd");
+ var style = function (i) {
+ return {
+ backgroundColor: color,
+ width: (0, unitConverter_1.cssValue)(size),
+ height: (0, unitConverter_1.cssValue)(size),
+ margin: (0, unitConverter_1.cssValue)(margin),
+ borderRadius: "100%",
+ display: "inline-block",
+ animation: "".concat(i % 2 === 0 ? even : odd, " ").concat(1 / speedMultiplier, "s 0s infinite cubic-bezier(0.15, 0.46, 0.9, 0.6)"),
+ animationFillMode: "both",
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) }),
+ React.createElement("span", { style: style(3) }),
+ React.createElement("span", { style: style(4) }),
+ React.createElement("span", { style: style(5) })));
+ }
+ exports.default = RiseLoader;
+});
diff --git a/frontend/node_modules/react-spinners/umd/RotateLoader.d.ts b/frontend/node_modules/react-spinners/umd/RotateLoader.d.ts
new file mode 100644
index 000000000..9577c1805
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/RotateLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeMarginProps } from "./helpers/props";
+declare function RotateLoader({ loading, color, speedMultiplier, cssOverride, size, margin, ...additionalprops }: LoaderSizeMarginProps): JSX.Element | null;
+export default RotateLoader;
diff --git a/frontend/node_modules/react-spinners/umd/RotateLoader.js b/frontend/node_modules/react-spinners/umd/RotateLoader.js
new file mode 100644
index 000000000..c95b200e6
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/RotateLoader.js
@@ -0,0 +1,88 @@
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+(function (factory) {
+ if (typeof module === "object" && typeof module.exports === "object") {
+ var v = factory(require, exports);
+ if (v !== undefined) module.exports = v;
+ }
+ else if (typeof define === "function" && define.amd) {
+ define(["require", "exports", "react", "./helpers/unitConverter", "./helpers/animation"], factory);
+ }
+})(function (require, exports) {
+ "use strict";
+ Object.defineProperty(exports, "__esModule", { value: true });
+ var React = __importStar(require("react"));
+ var unitConverter_1 = require("./helpers/unitConverter");
+ var animation_1 = require("./helpers/animation");
+ var rotate = (0, animation_1.createAnimation)("RotateLoader", "0% {transform: rotate(0deg)} 50% {transform: rotate(180deg)} 100% {transform: rotate(360deg)}", "rotate");
+ function RotateLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 15 : _f, _g = _a.margin, margin = _g === void 0 ? 2 : _g, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size", "margin"]);
+ var _h = (0, unitConverter_1.parseLengthAndUnit)(margin), value = _h.value, unit = _h.unit;
+ var ball = {
+ backgroundColor: color,
+ width: (0, unitConverter_1.cssValue)(size),
+ height: (0, unitConverter_1.cssValue)(size),
+ borderRadius: "100%",
+ };
+ var wrapper = __assign(__assign(__assign({}, ball), { display: "inline-block", position: "relative", animationFillMode: "both", animation: "".concat(rotate, " ").concat(1 / speedMultiplier, "s 0s infinite cubic-bezier(0.7, -0.13, 0.22, 0.86)") }), cssOverride);
+ var style = function (i) {
+ var left = (i % 2 ? -1 : 1) * (26 + value);
+ return {
+ opacity: "0.8",
+ position: "absolute",
+ top: "0",
+ left: "".concat(left).concat(unit),
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: __assign(__assign({}, ball), style(1)) }),
+ React.createElement("span", { style: __assign(__assign({}, ball), style(2)) })));
+ }
+ exports.default = RotateLoader;
+});
diff --git a/frontend/node_modules/react-spinners/umd/ScaleLoader.d.ts b/frontend/node_modules/react-spinners/umd/ScaleLoader.d.ts
new file mode 100644
index 000000000..23f085479
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/ScaleLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderHeightWidthRadiusProps } from "./helpers/props";
+declare function ScaleLoader({ loading, color, speedMultiplier, cssOverride, height, width, radius, margin, ...additionalprops }: LoaderHeightWidthRadiusProps): JSX.Element | null;
+export default ScaleLoader;
diff --git a/frontend/node_modules/react-spinners/umd/ScaleLoader.js b/frontend/node_modules/react-spinners/umd/ScaleLoader.js
new file mode 100644
index 000000000..877bf53f6
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/ScaleLoader.js
@@ -0,0 +1,87 @@
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+(function (factory) {
+ if (typeof module === "object" && typeof module.exports === "object") {
+ var v = factory(require, exports);
+ if (v !== undefined) module.exports = v;
+ }
+ else if (typeof define === "function" && define.amd) {
+ define(["require", "exports", "react", "./helpers/unitConverter", "./helpers/animation"], factory);
+ }
+})(function (require, exports) {
+ "use strict";
+ Object.defineProperty(exports, "__esModule", { value: true });
+ var React = __importStar(require("react"));
+ var unitConverter_1 = require("./helpers/unitConverter");
+ var animation_1 = require("./helpers/animation");
+ var scale = (0, animation_1.createAnimation)("ScaleLoader", "0% {transform: scaley(1.0)} 50% {transform: scaley(0.4)} 100% {transform: scaley(1.0)}", "scale");
+ function ScaleLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.height, height = _f === void 0 ? 35 : _f, _g = _a.width, width = _g === void 0 ? 4 : _g, _h = _a.radius, radius = _h === void 0 ? 2 : _h, _j = _a.margin, margin = _j === void 0 ? 2 : _j, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "height", "width", "radius", "margin"]);
+ var wrapper = __assign({ display: "inherit" }, cssOverride);
+ var style = function (i) {
+ return {
+ backgroundColor: color,
+ width: (0, unitConverter_1.cssValue)(width),
+ height: (0, unitConverter_1.cssValue)(height),
+ margin: (0, unitConverter_1.cssValue)(margin),
+ borderRadius: (0, unitConverter_1.cssValue)(radius),
+ display: "inline-block",
+ animation: "".concat(scale, " ").concat(1 / speedMultiplier, "s ").concat(i * 0.1, "s infinite cubic-bezier(0.2, 0.68, 0.18, 1.08)"),
+ animationFillMode: "both",
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) }),
+ React.createElement("span", { style: style(3) }),
+ React.createElement("span", { style: style(4) }),
+ React.createElement("span", { style: style(5) })));
+ }
+ exports.default = ScaleLoader;
+});
diff --git a/frontend/node_modules/react-spinners/umd/SkewLoader.d.ts b/frontend/node_modules/react-spinners/umd/SkewLoader.d.ts
new file mode 100644
index 000000000..98cd30f0f
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/SkewLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function SkewLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default SkewLoader;
diff --git a/frontend/node_modules/react-spinners/umd/SkewLoader.js b/frontend/node_modules/react-spinners/umd/SkewLoader.js
new file mode 100644
index 000000000..90ad43753
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/SkewLoader.js
@@ -0,0 +1,70 @@
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+(function (factory) {
+ if (typeof module === "object" && typeof module.exports === "object") {
+ var v = factory(require, exports);
+ if (v !== undefined) module.exports = v;
+ }
+ else if (typeof define === "function" && define.amd) {
+ define(["require", "exports", "react", "./helpers/unitConverter", "./helpers/animation"], factory);
+ }
+})(function (require, exports) {
+ "use strict";
+ Object.defineProperty(exports, "__esModule", { value: true });
+ var React = __importStar(require("react"));
+ var unitConverter_1 = require("./helpers/unitConverter");
+ var animation_1 = require("./helpers/animation");
+ var skew = (0, animation_1.createAnimation)("SkewLoader", "25% {transform: perspective(100px) rotateX(180deg) rotateY(0)} 50% {transform: perspective(100px) rotateX(180deg) rotateY(180deg)} 75% {transform: perspective(100px) rotateX(0) rotateY(180deg)} 100% {transform: perspective(100px) rotateX(0) rotateY(0)}", "skew");
+ function SkewLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 20 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var style = __assign({ width: "0", height: "0", borderLeft: "".concat((0, unitConverter_1.cssValue)(size), " solid transparent"), borderRight: "".concat((0, unitConverter_1.cssValue)(size), " solid transparent"), borderBottom: "".concat((0, unitConverter_1.cssValue)(size), " solid ").concat(color), display: "inline-block", animation: "".concat(skew, " ").concat(3 / speedMultiplier, "s 0s infinite cubic-bezier(0.09, 0.57, 0.49, 0.9)"), animationFillMode: "both" }, cssOverride);
+ if (!loading) {
+ return null;
+ }
+ return React.createElement("span", __assign({ style: style }, additionalprops));
+ }
+ exports.default = SkewLoader;
+});
diff --git a/frontend/node_modules/react-spinners/umd/SquareLoader.d.ts b/frontend/node_modules/react-spinners/umd/SquareLoader.d.ts
new file mode 100644
index 000000000..2fa2e689d
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/SquareLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeProps } from "./helpers/props";
+declare function SquareLoader({ loading, color, speedMultiplier, cssOverride, size, ...additionalprops }: LoaderSizeProps): JSX.Element | null;
+export default SquareLoader;
diff --git a/frontend/node_modules/react-spinners/umd/SquareLoader.js b/frontend/node_modules/react-spinners/umd/SquareLoader.js
new file mode 100644
index 000000000..75154107d
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/SquareLoader.js
@@ -0,0 +1,70 @@
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+(function (factory) {
+ if (typeof module === "object" && typeof module.exports === "object") {
+ var v = factory(require, exports);
+ if (v !== undefined) module.exports = v;
+ }
+ else if (typeof define === "function" && define.amd) {
+ define(["require", "exports", "react", "./helpers/unitConverter", "./helpers/animation"], factory);
+ }
+})(function (require, exports) {
+ "use strict";
+ Object.defineProperty(exports, "__esModule", { value: true });
+ var React = __importStar(require("react"));
+ var unitConverter_1 = require("./helpers/unitConverter");
+ var animation_1 = require("./helpers/animation");
+ var square = (0, animation_1.createAnimation)("SquareLoader", "25% {transform: rotateX(180deg) rotateY(0)}\n 50% {transform: rotateX(180deg) rotateY(180deg)} \n 75% {transform: rotateX(0) rotateY(180deg)} \n 100% {transform: rotateX(0) rotateY(0)}", "square");
+ function SquareLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 50 : _f, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
+ var style = __assign({ backgroundColor: color, width: (0, unitConverter_1.cssValue)(size), height: (0, unitConverter_1.cssValue)(size), display: "inline-block", animation: "".concat(square, " ").concat(3 / speedMultiplier, "s 0s infinite cubic-bezier(0.09, 0.57, 0.49, 0.9)"), animationFillMode: "both" }, cssOverride);
+ if (!loading) {
+ return null;
+ }
+ return React.createElement("span", __assign({ style: style }, additionalprops));
+ }
+ exports.default = SquareLoader;
+});
diff --git a/frontend/node_modules/react-spinners/umd/SyncLoader.d.ts b/frontend/node_modules/react-spinners/umd/SyncLoader.d.ts
new file mode 100644
index 000000000..252c84820
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/SyncLoader.d.ts
@@ -0,0 +1,4 @@
+///
+import { LoaderSizeMarginProps } from "./helpers/props";
+declare function SyncLoader({ loading, color, speedMultiplier, cssOverride, size, margin, ...additionalprops }: LoaderSizeMarginProps): JSX.Element | null;
+export default SyncLoader;
diff --git a/frontend/node_modules/react-spinners/umd/SyncLoader.js b/frontend/node_modules/react-spinners/umd/SyncLoader.js
new file mode 100644
index 000000000..787ae8290
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/SyncLoader.js
@@ -0,0 +1,85 @@
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+ o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+(function (factory) {
+ if (typeof module === "object" && typeof module.exports === "object") {
+ var v = factory(require, exports);
+ if (v !== undefined) module.exports = v;
+ }
+ else if (typeof define === "function" && define.amd) {
+ define(["require", "exports", "react", "./helpers/animation", "./helpers/unitConverter"], factory);
+ }
+})(function (require, exports) {
+ "use strict";
+ Object.defineProperty(exports, "__esModule", { value: true });
+ var React = __importStar(require("react"));
+ var animation_1 = require("./helpers/animation");
+ var unitConverter_1 = require("./helpers/unitConverter");
+ var sync = (0, animation_1.createAnimation)("SyncLoader", "33% {transform: translateY(10px)}\n 66% {transform: translateY(-10px)}\n 100% {transform: translateY(0)}", "sync");
+ function SyncLoader(_a) {
+ var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 15 : _f, _g = _a.margin, margin = _g === void 0 ? 2 : _g, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size", "margin"]);
+ var wrapper = __assign({ display: "inherit" }, cssOverride);
+ var style = function (i) {
+ return {
+ backgroundColor: color,
+ width: (0, unitConverter_1.cssValue)(size),
+ height: (0, unitConverter_1.cssValue)(size),
+ margin: (0, unitConverter_1.cssValue)(margin),
+ borderRadius: "100%",
+ display: "inline-block",
+ animation: "".concat(sync, " ").concat(0.6 / speedMultiplier, "s ").concat(i * 0.07, "s infinite ease-in-out"),
+ animationFillMode: "both",
+ };
+ };
+ if (!loading) {
+ return null;
+ }
+ return (React.createElement("span", __assign({ style: wrapper }, additionalprops),
+ React.createElement("span", { style: style(1) }),
+ React.createElement("span", { style: style(2) }),
+ React.createElement("span", { style: style(3) })));
+ }
+ exports.default = SyncLoader;
+});
diff --git a/frontend/node_modules/react-spinners/umd/helpers/animation.d.ts b/frontend/node_modules/react-spinners/umd/helpers/animation.d.ts
new file mode 100644
index 000000000..196a3bd20
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/helpers/animation.d.ts
@@ -0,0 +1 @@
+export declare const createAnimation: (loaderName: string, frames: string, suffix: string) => string;
diff --git a/frontend/node_modules/react-spinners/umd/helpers/animation.js b/frontend/node_modules/react-spinners/umd/helpers/animation.js
new file mode 100644
index 000000000..d253185ff
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/helpers/animation.js
@@ -0,0 +1,28 @@
+(function (factory) {
+ if (typeof module === "object" && typeof module.exports === "object") {
+ var v = factory(require, exports);
+ if (v !== undefined) module.exports = v;
+ }
+ else if (typeof define === "function" && define.amd) {
+ define(["require", "exports"], factory);
+ }
+})(function (require, exports) {
+ "use strict";
+ Object.defineProperty(exports, "__esModule", { value: true });
+ exports.createAnimation = void 0;
+ var createAnimation = function (loaderName, frames, suffix) {
+ var animationName = "react-spinners-".concat(loaderName, "-").concat(suffix);
+ if (typeof window == "undefined" || !window.document) {
+ return animationName;
+ }
+ var styleEl = document.createElement("style");
+ document.head.appendChild(styleEl);
+ var styleSheet = styleEl.sheet;
+ var keyFrames = "\n @keyframes ".concat(animationName, " {\n ").concat(frames, "\n }\n ");
+ if (styleSheet) {
+ styleSheet.insertRule(keyFrames, 0);
+ }
+ return animationName;
+ };
+ exports.createAnimation = createAnimation;
+});
diff --git a/frontend/node_modules/react-spinners/umd/helpers/animation.server.test.d.ts b/frontend/node_modules/react-spinners/umd/helpers/animation.server.test.d.ts
new file mode 100644
index 000000000..3275561ce
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/helpers/animation.server.test.d.ts
@@ -0,0 +1,4 @@
+/**
+ * @jest-environment node
+ */
+export {};
diff --git a/frontend/node_modules/react-spinners/umd/helpers/animation.server.test.js b/frontend/node_modules/react-spinners/umd/helpers/animation.server.test.js
new file mode 100644
index 000000000..7d5595256
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/helpers/animation.server.test.js
@@ -0,0 +1,22 @@
+/**
+ * @jest-environment node
+ */
+(function (factory) {
+ if (typeof module === "object" && typeof module.exports === "object") {
+ var v = factory(require, exports);
+ if (v !== undefined) module.exports = v;
+ }
+ else if (typeof define === "function" && define.amd) {
+ define(["require", "exports", "./animation"], factory);
+ }
+})(function (require, exports) {
+ "use strict";
+ Object.defineProperty(exports, "__esModule", { value: true });
+ var animation_1 = require("./animation");
+ describe("animation", function () {
+ it("should not throw an error on server side", function () {
+ var name = (0, animation_1.createAnimation)("TestLoader", "0% {left: -35%;right: 100%} 60% {left: 100%;right: -90%} 100% {left: 100%;right: -90%}", "my-suffix");
+ expect(name).toEqual("react-spinners-TestLoader-my-suffix");
+ });
+ });
+});
diff --git a/frontend/node_modules/react-spinners/umd/helpers/animation.test.d.ts b/frontend/node_modules/react-spinners/umd/helpers/animation.test.d.ts
new file mode 100644
index 000000000..cb0ff5c3b
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/helpers/animation.test.d.ts
@@ -0,0 +1 @@
+export {};
diff --git a/frontend/node_modules/react-spinners/umd/helpers/animation.test.js b/frontend/node_modules/react-spinners/umd/helpers/animation.test.js
new file mode 100644
index 000000000..57b9cef85
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/helpers/animation.test.js
@@ -0,0 +1,19 @@
+(function (factory) {
+ if (typeof module === "object" && typeof module.exports === "object") {
+ var v = factory(require, exports);
+ if (v !== undefined) module.exports = v;
+ }
+ else if (typeof define === "function" && define.amd) {
+ define(["require", "exports", "./animation"], factory);
+ }
+})(function (require, exports) {
+ "use strict";
+ Object.defineProperty(exports, "__esModule", { value: true });
+ var animation_1 = require("./animation");
+ describe("createAnimation", function () {
+ it("should return name with suffix if passed in", function () {
+ var name = (0, animation_1.createAnimation)("TestLoader", "0% {left: -35%;right: 100%} 60% {left: 100%;right: -90%} 100% {left: 100%;right: -90%}", "my-suffix");
+ expect(name).toEqual("react-spinners-TestLoader-my-suffix");
+ });
+ });
+});
diff --git a/frontend/node_modules/react-spinners/umd/helpers/colors.d.ts b/frontend/node_modules/react-spinners/umd/helpers/colors.d.ts
new file mode 100644
index 000000000..e6115a944
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/helpers/colors.d.ts
@@ -0,0 +1 @@
+export declare const calculateRgba: (color: string, opacity: number) => string;
diff --git a/frontend/node_modules/react-spinners/umd/helpers/colors.js b/frontend/node_modules/react-spinners/umd/helpers/colors.js
new file mode 100644
index 000000000..56fd4e20a
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/helpers/colors.js
@@ -0,0 +1,52 @@
+(function (factory) {
+ if (typeof module === "object" && typeof module.exports === "object") {
+ var v = factory(require, exports);
+ if (v !== undefined) module.exports = v;
+ }
+ else if (typeof define === "function" && define.amd) {
+ define(["require", "exports"], factory);
+ }
+})(function (require, exports) {
+ "use strict";
+ Object.defineProperty(exports, "__esModule", { value: true });
+ exports.calculateRgba = void 0;
+ var BasicColors;
+ (function (BasicColors) {
+ BasicColors["maroon"] = "#800000";
+ BasicColors["red"] = "#FF0000";
+ BasicColors["orange"] = "#FFA500";
+ BasicColors["yellow"] = "#FFFF00";
+ BasicColors["olive"] = "#808000";
+ BasicColors["green"] = "#008000";
+ BasicColors["purple"] = "#800080";
+ BasicColors["fuchsia"] = "#FF00FF";
+ BasicColors["lime"] = "#00FF00";
+ BasicColors["teal"] = "#008080";
+ BasicColors["aqua"] = "#00FFFF";
+ BasicColors["blue"] = "#0000FF";
+ BasicColors["navy"] = "#000080";
+ BasicColors["black"] = "#000000";
+ BasicColors["gray"] = "#808080";
+ BasicColors["silver"] = "#C0C0C0";
+ BasicColors["white"] = "#FFFFFF";
+ })(BasicColors || (BasicColors = {}));
+ var calculateRgba = function (color, opacity) {
+ if (Object.keys(BasicColors).includes(color)) {
+ color = BasicColors[color];
+ }
+ if (color[0] === "#") {
+ color = color.slice(1);
+ }
+ if (color.length === 3) {
+ var res_1 = "";
+ color.split("").forEach(function (c) {
+ res_1 += c;
+ res_1 += c;
+ });
+ color = res_1;
+ }
+ var rgbValues = (color.match(/.{2}/g) || []).map(function (hex) { return parseInt(hex, 16); }).join(", ");
+ return "rgba(".concat(rgbValues, ", ").concat(opacity, ")");
+ };
+ exports.calculateRgba = calculateRgba;
+});
diff --git a/frontend/node_modules/react-spinners/umd/helpers/colors.test.d.ts b/frontend/node_modules/react-spinners/umd/helpers/colors.test.d.ts
new file mode 100644
index 000000000..cb0ff5c3b
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/helpers/colors.test.d.ts
@@ -0,0 +1 @@
+export {};
diff --git a/frontend/node_modules/react-spinners/umd/helpers/colors.test.js b/frontend/node_modules/react-spinners/umd/helpers/colors.test.js
new file mode 100644
index 000000000..629cbe070
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/helpers/colors.test.js
@@ -0,0 +1,49 @@
+(function (factory) {
+ if (typeof module === "object" && typeof module.exports === "object") {
+ var v = factory(require, exports);
+ if (v !== undefined) module.exports = v;
+ }
+ else if (typeof define === "function" && define.amd) {
+ define(["require", "exports", "./colors"], factory);
+ }
+})(function (require, exports) {
+ "use strict";
+ Object.defineProperty(exports, "__esModule", { value: true });
+ var colors_1 = require("./colors");
+ describe("calculateRgba", function () {
+ it("is a function", function () {
+ expect(typeof colors_1.calculateRgba).toEqual("function");
+ });
+ it("converts hash values to rgb", function () {
+ expect((0, colors_1.calculateRgba)("#ffffff", 1)).toEqual("rgba(255, 255, 255, 1)");
+ });
+ it("calculates 3 character hash value to the correct rgba", function () {
+ expect((0, colors_1.calculateRgba)("#fff", 1)).toEqual("rgba(255, 255, 255, 1)");
+ });
+ it("returns the passed in opacity as the part of the rgba value", function () {
+ expect((0, colors_1.calculateRgba)("#fff", 0.5)).toEqual("rgba(255, 255, 255, 0.5)");
+ });
+ it("calculated the correct rgba value without the starting # passed in", function () {
+ expect((0, colors_1.calculateRgba)("fff", 1)).toEqual("rgba(255, 255, 255, 1)");
+ });
+ it("calculates the correct rgba using basic color names", function () {
+ expect((0, colors_1.calculateRgba)("maroon", 0.7)).toEqual("rgba(128, 0, 0, 0.7)");
+ expect((0, colors_1.calculateRgba)("red", 0.7)).toEqual("rgba(255, 0, 0, 0.7)");
+ expect((0, colors_1.calculateRgba)("orange", 0.7)).toEqual("rgba(255, 165, 0, 0.7)");
+ expect((0, colors_1.calculateRgba)("yellow", 0.7)).toEqual("rgba(255, 255, 0, 0.7)");
+ expect((0, colors_1.calculateRgba)("olive", 0.7)).toEqual("rgba(128, 128, 0, 0.7)");
+ expect((0, colors_1.calculateRgba)("green", 0.7)).toEqual("rgba(0, 128, 0, 0.7)");
+ expect((0, colors_1.calculateRgba)("purple", 0.7)).toEqual("rgba(128, 0, 128, 0.7)");
+ expect((0, colors_1.calculateRgba)("fuchsia", 0.7)).toEqual("rgba(255, 0, 255, 0.7)");
+ expect((0, colors_1.calculateRgba)("lime", 0.7)).toEqual("rgba(0, 255, 0, 0.7)");
+ expect((0, colors_1.calculateRgba)("teal", 0.7)).toEqual("rgba(0, 128, 128, 0.7)");
+ expect((0, colors_1.calculateRgba)("aqua", 0.7)).toEqual("rgba(0, 255, 255, 0.7)");
+ expect((0, colors_1.calculateRgba)("blue", 0.7)).toEqual("rgba(0, 0, 255, 0.7)");
+ expect((0, colors_1.calculateRgba)("navy", 0.7)).toEqual("rgba(0, 0, 128, 0.7)");
+ expect((0, colors_1.calculateRgba)("black", 0.7)).toEqual("rgba(0, 0, 0, 0.7)");
+ expect((0, colors_1.calculateRgba)("gray", 0.7)).toEqual("rgba(128, 128, 128, 0.7)");
+ expect((0, colors_1.calculateRgba)("silver", 0.7)).toEqual("rgba(192, 192, 192, 0.7)");
+ expect((0, colors_1.calculateRgba)("white", 0.7)).toEqual("rgba(255, 255, 255, 0.7)");
+ });
+ });
+});
diff --git a/frontend/node_modules/react-spinners/umd/helpers/props.d.ts b/frontend/node_modules/react-spinners/umd/helpers/props.d.ts
new file mode 100644
index 000000000..62830656b
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/helpers/props.d.ts
@@ -0,0 +1,26 @@
+import { CSSProperties, DetailedHTMLProps, HTMLAttributes } from "react";
+export type LengthType = number | string;
+interface CommonProps extends DetailedHTMLProps, HTMLSpanElement> {
+ color?: string;
+ loading?: boolean;
+ cssOverride?: CSSProperties;
+ speedMultiplier?: number;
+}
+export interface LoaderHeightWidthProps extends CommonProps {
+ height?: LengthType;
+ width?: LengthType;
+}
+export interface LoaderSizeProps extends CommonProps {
+ size?: LengthType;
+}
+export interface LoaderSizeMarginProps extends CommonProps {
+ size?: LengthType;
+ margin?: LengthType;
+}
+export interface LoaderHeightWidthRadiusProps extends CommonProps {
+ height?: LengthType;
+ width?: LengthType;
+ radius?: LengthType;
+ margin?: LengthType;
+}
+export {};
diff --git a/frontend/node_modules/react-spinners/umd/helpers/props.js b/frontend/node_modules/react-spinners/umd/helpers/props.js
new file mode 100644
index 000000000..273e12fe0
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/helpers/props.js
@@ -0,0 +1,12 @@
+(function (factory) {
+ if (typeof module === "object" && typeof module.exports === "object") {
+ var v = factory(require, exports);
+ if (v !== undefined) module.exports = v;
+ }
+ else if (typeof define === "function" && define.amd) {
+ define(["require", "exports"], factory);
+ }
+})(function (require, exports) {
+ "use strict";
+ Object.defineProperty(exports, "__esModule", { value: true });
+});
diff --git a/frontend/node_modules/react-spinners/umd/helpers/unitConverter.d.ts b/frontend/node_modules/react-spinners/umd/helpers/unitConverter.d.ts
new file mode 100644
index 000000000..771955ed8
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/helpers/unitConverter.d.ts
@@ -0,0 +1,22 @@
+interface LengthObject {
+ value: number;
+ unit: string;
+}
+/**
+ * If size is a number, append px to the value as default unit.
+ * If size is a string, validate against list of valid units.
+ * If unit is valid, return size as is.
+ * If unit is invalid, console warn issue, replace with px as the unit.
+ *
+ * @param {(number | string)} size
+ * @return {LengthObject} LengthObject
+ */
+export declare function parseLengthAndUnit(size: number | string): LengthObject;
+/**
+ * Take value as an input and return valid css value
+ *
+ * @param {(number | string)} value
+ * @return {string} valid css value
+ */
+export declare function cssValue(value: number | string): string;
+export {};
diff --git a/frontend/node_modules/react-spinners/umd/helpers/unitConverter.js b/frontend/node_modules/react-spinners/umd/helpers/unitConverter.js
new file mode 100644
index 000000000..075d7b52b
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/helpers/unitConverter.js
@@ -0,0 +1,79 @@
+(function (factory) {
+ if (typeof module === "object" && typeof module.exports === "object") {
+ var v = factory(require, exports);
+ if (v !== undefined) module.exports = v;
+ }
+ else if (typeof define === "function" && define.amd) {
+ define(["require", "exports"], factory);
+ }
+})(function (require, exports) {
+ "use strict";
+ Object.defineProperty(exports, "__esModule", { value: true });
+ exports.cssValue = exports.parseLengthAndUnit = void 0;
+ var cssUnit = {
+ cm: true,
+ mm: true,
+ in: true,
+ px: true,
+ pt: true,
+ pc: true,
+ em: true,
+ ex: true,
+ ch: true,
+ rem: true,
+ vw: true,
+ vh: true,
+ vmin: true,
+ vmax: true,
+ "%": true,
+ };
+ /**
+ * If size is a number, append px to the value as default unit.
+ * If size is a string, validate against list of valid units.
+ * If unit is valid, return size as is.
+ * If unit is invalid, console warn issue, replace with px as the unit.
+ *
+ * @param {(number | string)} size
+ * @return {LengthObject} LengthObject
+ */
+ function parseLengthAndUnit(size) {
+ if (typeof size === "number") {
+ return {
+ value: size,
+ unit: "px",
+ };
+ }
+ var value;
+ var valueString = (size.match(/^[0-9.]*/) || "").toString();
+ if (valueString.includes(".")) {
+ value = parseFloat(valueString);
+ }
+ else {
+ value = parseInt(valueString, 10);
+ }
+ var unit = (size.match(/[^0-9]*$/) || "").toString();
+ if (cssUnit[unit]) {
+ return {
+ value: value,
+ unit: unit,
+ };
+ }
+ console.warn("React Spinners: ".concat(size, " is not a valid css value. Defaulting to ").concat(value, "px."));
+ return {
+ value: value,
+ unit: "px",
+ };
+ }
+ exports.parseLengthAndUnit = parseLengthAndUnit;
+ /**
+ * Take value as an input and return valid css value
+ *
+ * @param {(number | string)} value
+ * @return {string} valid css value
+ */
+ function cssValue(value) {
+ var lengthWithunit = parseLengthAndUnit(value);
+ return "".concat(lengthWithunit.value).concat(lengthWithunit.unit);
+ }
+ exports.cssValue = cssValue;
+});
diff --git a/frontend/node_modules/react-spinners/umd/helpers/unitConverter.test.d.ts b/frontend/node_modules/react-spinners/umd/helpers/unitConverter.test.d.ts
new file mode 100644
index 000000000..cb0ff5c3b
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/helpers/unitConverter.test.d.ts
@@ -0,0 +1 @@
+export {};
diff --git a/frontend/node_modules/react-spinners/umd/helpers/unitConverter.test.js b/frontend/node_modules/react-spinners/umd/helpers/unitConverter.test.js
new file mode 100644
index 000000000..763ac0152
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/helpers/unitConverter.test.js
@@ -0,0 +1,60 @@
+(function (factory) {
+ if (typeof module === "object" && typeof module.exports === "object") {
+ var v = factory(require, exports);
+ if (v !== undefined) module.exports = v;
+ }
+ else if (typeof define === "function" && define.amd) {
+ define(["require", "exports", "./unitConverter"], factory);
+ }
+})(function (require, exports) {
+ "use strict";
+ Object.defineProperty(exports, "__esModule", { value: true });
+ var unitConverter_1 = require("./unitConverter");
+ describe("unitConverter", function () {
+ describe("parseLengthAndUnit", function () {
+ var spy = jest.spyOn(console, "warn").mockImplementation();
+ var output = {
+ value: 12,
+ unit: "px",
+ };
+ it("is a function", function () {
+ expect(typeof unitConverter_1.parseLengthAndUnit).toEqual("function");
+ });
+ it("takes a number as the input and append px to the value", function () {
+ expect((0, unitConverter_1.parseLengthAndUnit)(12)).toEqual(output);
+ expect(spy).not.toBeCalled();
+ });
+ it("take a string with valid integer css unit and return an object with value and unit", function () {
+ expect((0, unitConverter_1.parseLengthAndUnit)("12px")).toEqual(output);
+ expect(spy).not.toBeCalled();
+ });
+ it("take a string with valid css float unit and return an object with value and unit", function () {
+ var output = {
+ value: 12.5,
+ unit: "px",
+ };
+ expect((0, unitConverter_1.parseLengthAndUnit)("12.5px")).toEqual(output);
+ expect(spy).not.toBeCalled();
+ });
+ it("takes an invalid css unit and default the value to px", function () {
+ expect((0, unitConverter_1.parseLengthAndUnit)("12fd")).toEqual(output);
+ expect(spy).toBeCalled();
+ });
+ });
+ describe("cssValue", function () {
+ it("is a function", function () {
+ expect(typeof unitConverter_1.cssValue).toEqual("function");
+ });
+ it("takes a number as the input and append px to the value", function () {
+ expect((0, unitConverter_1.cssValue)(12)).toEqual("12px");
+ });
+ it("takes a string with valid css unit as the input and return the value", function () {
+ expect((0, unitConverter_1.cssValue)("12%")).toEqual("12%");
+ expect((0, unitConverter_1.cssValue)("12em")).toEqual("12em");
+ });
+ it("takes a string with invalid css unit as the input and default to px", function () {
+ expect((0, unitConverter_1.cssValue)("12qw")).toEqual("12px");
+ });
+ });
+ });
+});
diff --git a/frontend/node_modules/react-spinners/umd/index.d.ts b/frontend/node_modules/react-spinners/umd/index.d.ts
new file mode 100644
index 000000000..478f2b91d
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/index.d.ts
@@ -0,0 +1,23 @@
+export { default as BarLoader } from "./BarLoader";
+export { default as BeatLoader } from "./BeatLoader";
+export { default as BounceLoader } from "./BounceLoader";
+export { default as CircleLoader } from "./CircleLoader";
+export { default as ClimbingBoxLoader } from "./ClimbingBoxLoader";
+export { default as ClipLoader } from "./ClipLoader";
+export { default as ClockLoader } from "./ClockLoader";
+export { default as DotLoader } from "./DotLoader";
+export { default as FadeLoader } from "./FadeLoader";
+export { default as GridLoader } from "./GridLoader";
+export { default as HashLoader } from "./HashLoader";
+export { default as MoonLoader } from "./MoonLoader";
+export { default as PacmanLoader } from "./PacmanLoader";
+export { default as PropagateLoader } from "./PropagateLoader";
+export { default as PulseLoader } from "./PulseLoader";
+export { default as PuffLoader } from "./PuffLoader";
+export { default as RingLoader } from "./RingLoader";
+export { default as RiseLoader } from "./RiseLoader";
+export { default as RotateLoader } from "./RotateLoader";
+export { default as ScaleLoader } from "./ScaleLoader";
+export { default as SkewLoader } from "./SkewLoader";
+export { default as SquareLoader } from "./SquareLoader";
+export { default as SyncLoader } from "./SyncLoader";
diff --git a/frontend/node_modules/react-spinners/umd/index.js b/frontend/node_modules/react-spinners/umd/index.js
new file mode 100644
index 000000000..05feabbeb
--- /dev/null
+++ b/frontend/node_modules/react-spinners/umd/index.js
@@ -0,0 +1,62 @@
+var __importDefault = (this && this.__importDefault) || function (mod) {
+ return (mod && mod.__esModule) ? mod : { "default": mod };
+};
+(function (factory) {
+ if (typeof module === "object" && typeof module.exports === "object") {
+ var v = factory(require, exports);
+ if (v !== undefined) module.exports = v;
+ }
+ else if (typeof define === "function" && define.amd) {
+ define(["require", "exports", "./BarLoader", "./BeatLoader", "./BounceLoader", "./CircleLoader", "./ClimbingBoxLoader", "./ClipLoader", "./ClockLoader", "./DotLoader", "./FadeLoader", "./GridLoader", "./HashLoader", "./MoonLoader", "./PacmanLoader", "./PropagateLoader", "./PulseLoader", "./PuffLoader", "./RingLoader", "./RiseLoader", "./RotateLoader", "./ScaleLoader", "./SkewLoader", "./SquareLoader", "./SyncLoader"], factory);
+ }
+})(function (require, exports) {
+ "use strict";
+ Object.defineProperty(exports, "__esModule", { value: true });
+ exports.SyncLoader = exports.SquareLoader = exports.SkewLoader = exports.ScaleLoader = exports.RotateLoader = exports.RiseLoader = exports.RingLoader = exports.PuffLoader = exports.PulseLoader = exports.PropagateLoader = exports.PacmanLoader = exports.MoonLoader = exports.HashLoader = exports.GridLoader = exports.FadeLoader = exports.DotLoader = exports.ClockLoader = exports.ClipLoader = exports.ClimbingBoxLoader = exports.CircleLoader = exports.BounceLoader = exports.BeatLoader = exports.BarLoader = void 0;
+ var BarLoader_1 = require("./BarLoader");
+ Object.defineProperty(exports, "BarLoader", { enumerable: true, get: function () { return __importDefault(BarLoader_1).default; } });
+ var BeatLoader_1 = require("./BeatLoader");
+ Object.defineProperty(exports, "BeatLoader", { enumerable: true, get: function () { return __importDefault(BeatLoader_1).default; } });
+ var BounceLoader_1 = require("./BounceLoader");
+ Object.defineProperty(exports, "BounceLoader", { enumerable: true, get: function () { return __importDefault(BounceLoader_1).default; } });
+ var CircleLoader_1 = require("./CircleLoader");
+ Object.defineProperty(exports, "CircleLoader", { enumerable: true, get: function () { return __importDefault(CircleLoader_1).default; } });
+ var ClimbingBoxLoader_1 = require("./ClimbingBoxLoader");
+ Object.defineProperty(exports, "ClimbingBoxLoader", { enumerable: true, get: function () { return __importDefault(ClimbingBoxLoader_1).default; } });
+ var ClipLoader_1 = require("./ClipLoader");
+ Object.defineProperty(exports, "ClipLoader", { enumerable: true, get: function () { return __importDefault(ClipLoader_1).default; } });
+ var ClockLoader_1 = require("./ClockLoader");
+ Object.defineProperty(exports, "ClockLoader", { enumerable: true, get: function () { return __importDefault(ClockLoader_1).default; } });
+ var DotLoader_1 = require("./DotLoader");
+ Object.defineProperty(exports, "DotLoader", { enumerable: true, get: function () { return __importDefault(DotLoader_1).default; } });
+ var FadeLoader_1 = require("./FadeLoader");
+ Object.defineProperty(exports, "FadeLoader", { enumerable: true, get: function () { return __importDefault(FadeLoader_1).default; } });
+ var GridLoader_1 = require("./GridLoader");
+ Object.defineProperty(exports, "GridLoader", { enumerable: true, get: function () { return __importDefault(GridLoader_1).default; } });
+ var HashLoader_1 = require("./HashLoader");
+ Object.defineProperty(exports, "HashLoader", { enumerable: true, get: function () { return __importDefault(HashLoader_1).default; } });
+ var MoonLoader_1 = require("./MoonLoader");
+ Object.defineProperty(exports, "MoonLoader", { enumerable: true, get: function () { return __importDefault(MoonLoader_1).default; } });
+ var PacmanLoader_1 = require("./PacmanLoader");
+ Object.defineProperty(exports, "PacmanLoader", { enumerable: true, get: function () { return __importDefault(PacmanLoader_1).default; } });
+ var PropagateLoader_1 = require("./PropagateLoader");
+ Object.defineProperty(exports, "PropagateLoader", { enumerable: true, get: function () { return __importDefault(PropagateLoader_1).default; } });
+ var PulseLoader_1 = require("./PulseLoader");
+ Object.defineProperty(exports, "PulseLoader", { enumerable: true, get: function () { return __importDefault(PulseLoader_1).default; } });
+ var PuffLoader_1 = require("./PuffLoader");
+ Object.defineProperty(exports, "PuffLoader", { enumerable: true, get: function () { return __importDefault(PuffLoader_1).default; } });
+ var RingLoader_1 = require("./RingLoader");
+ Object.defineProperty(exports, "RingLoader", { enumerable: true, get: function () { return __importDefault(RingLoader_1).default; } });
+ var RiseLoader_1 = require("./RiseLoader");
+ Object.defineProperty(exports, "RiseLoader", { enumerable: true, get: function () { return __importDefault(RiseLoader_1).default; } });
+ var RotateLoader_1 = require("./RotateLoader");
+ Object.defineProperty(exports, "RotateLoader", { enumerable: true, get: function () { return __importDefault(RotateLoader_1).default; } });
+ var ScaleLoader_1 = require("./ScaleLoader");
+ Object.defineProperty(exports, "ScaleLoader", { enumerable: true, get: function () { return __importDefault(ScaleLoader_1).default; } });
+ var SkewLoader_1 = require("./SkewLoader");
+ Object.defineProperty(exports, "SkewLoader", { enumerable: true, get: function () { return __importDefault(SkewLoader_1).default; } });
+ var SquareLoader_1 = require("./SquareLoader");
+ Object.defineProperty(exports, "SquareLoader", { enumerable: true, get: function () { return __importDefault(SquareLoader_1).default; } });
+ var SyncLoader_1 = require("./SyncLoader");
+ Object.defineProperty(exports, "SyncLoader", { enumerable: true, get: function () { return __importDefault(SyncLoader_1).default; } });
+});
diff --git a/frontend/package.json b/frontend/package.json
index e00eb5221..b86461cec 100644
--- a/frontend/package.json
+++ b/frontend/package.json
@@ -23,6 +23,7 @@
"react-dom": "^18.2.0",
"react-resizable": "^3.0.5",
"react-scripts": "5.0.1",
+ "react-spinners": "^0.13.8",
"react-split-pane": "^0.1.92",
"react-treebeard": "^3.2.4",
"typescript": "^5.2.2",
diff --git a/frontend/src/App.js b/frontend/src/App.js
index 38a7d51e8..3a3bb031d 100644
--- a/frontend/src/App.js
+++ b/frontend/src/App.js
@@ -1,19 +1,71 @@
// App.js
-import React, { useState } from 'react';
+import React, { useMemo, useState, useEffect } from 'react';
+import { useUnload } from './components/comms_manager/useUnload';
import { Resizable } from 'react-resizable';
import HeaderMenu from './components/header_menu/HeaderMenu';
import FileBrowser from './components/file_browser/FileBrowser';
import FileEditor from './components/file_editor/FileEditor';
import './App.css';
import DiagramEditor from './components/diagram_editor/DiagramEditor';
+import VncViewer from './components/vnc_viewer/VncViewer'
+import CommsManager from './components/comms_manager/CommsManager';
const App = () => {
- const [editorWidth, setEditorWidth] = useState(700);
+ const [editorWidth, setEditorWidth] = useState(807);
const [currentFilename, setCurrentFilename] = useState('');
- const [currentProjectname, setCurrentProjectname] = useState('');
+ const [currentProjectname, setCurrentProjectname] = useState('visual_follow_person');
const [modelJson, setModelJson] = useState('');
const [projectChanges, setProjectChanges] = useState(false);
+ const [gazeboEnabled, setGazeboEnabled] = useState(false);
+ const [manager, setManager] = useState(null);
+
+ var universe_config = {
+ "name": "follow_person_ros2",
+ "launch_file_path": "/opt/jderobot/Launchers/follow_person.launch.py",
+ "ros_version": "ROS2",
+ "visualization": "gazebo_rae",
+ "world": "gazebo",
+ "template": "RoboticsAcademy/exercises/static/exercises/follow_person_newmanager/python_template/",
+ "exercise_id": "follow_person_newmanager"
+ }
+
+ useEffect(() => {
+ const newManager = CommsManager("ws://127.0.0.1:7163");
+ setManager(newManager);
+ }, []);
+
+ useUnload(() => {
+ manager.disconnect();
+ });
+
+ const connectWithRetry = () => {
+ console.log("The manager is up!");
+ manager.connect()
+ .then(() => {
+ console.log("Connected!");
+ manager.launchWorld(universe_config)
+ .then(() => {
+ console.log("World launched!")
+ manager.prepareVisualization(universe_config.visualization)
+ .then(() => {
+ console.log("Viz ready!")
+ setGazeboEnabled(true);
+ })
+ })
+ })
+ .catch((e) => {
+ // Connection failed, try again after a delay
+ console.log("Connection failed, trying again!")
+ setTimeout(connectWithRetry, 1000);
+ });
+ }
+
+ useEffect(() => {
+ if (manager) {
+ connectWithRetry();
+ }
+ }, [manager]); // Re-run if the manager instance changes
const onResize = (key, size) => {
switch (key) {
@@ -63,11 +115,16 @@ const App = () => {
diff --git a/frontend/src/components/diagram_editor/img/run.svg b/frontend/src/components/diagram_editor/img/run.svg
new file mode 100644
index 000000000..bad5918f1
--- /dev/null
+++ b/frontend/src/components/diagram_editor/img/run.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/frontend/src/components/diagram_editor/img/stop.svg b/frontend/src/components/diagram_editor/img/stop.svg
new file mode 100644
index 000000000..2786bd227
--- /dev/null
+++ b/frontend/src/components/diagram_editor/img/stop.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/frontend/src/components/vnc_viewer/VncViewer.css b/frontend/src/components/vnc_viewer/VncViewer.css
new file mode 100644
index 000000000..e2bddeaab
--- /dev/null
+++ b/frontend/src/components/vnc_viewer/VncViewer.css
@@ -0,0 +1,11 @@
+.viewer {
+ height: 40vh;
+ width: 100%;
+}
+
+.loader {
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ height: 40vh;
+}
\ No newline at end of file
diff --git a/frontend/src/components/vnc_viewer/VncViewer.js b/frontend/src/components/vnc_viewer/VncViewer.js
new file mode 100644
index 000000000..f335bed3d
--- /dev/null
+++ b/frontend/src/components/vnc_viewer/VncViewer.js
@@ -0,0 +1,28 @@
+import './VncViewer.css';
+import BounceLoader from "react-spinners/BounceLoader";
+
+const VncViewer = ({gazeboEnabled}) => {
+
+ return (
+
+ );
+};
+
+export default VncViewer;
diff --git a/frontend/yarn-error.log b/frontend/yarn-error.log
index 7edc0066a..e69de29bb 100644
--- a/frontend/yarn-error.log
+++ b/frontend/yarn-error.log
@@ -1,10573 +0,0 @@
-Arguments:
- /home/oscar/.nvm/versions/node/v20.8.0/bin/node /usr/local/bin/yarn add projectstorm
-
-PATH:
- /home/oscar/.nvm/versions/node/v20.8.0/bin:/home/oscar/miniconda3/condabin:/home/oscar/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin
-
-Yarn version:
- 1.22.19
-
-Node version:
- 20.8.0
-
-Platform:
- linux x64
-
-Trace:
- Error: https://registry.yarnpkg.com/projectstorm: Not found
- at params.callback [as _callback] (/usr/local/lib/node_modules/yarn/lib/cli.js:66145:18)
- at self.callback (/usr/local/lib/node_modules/yarn/lib/cli.js:140890:22)
- at Request.emit (node:events:514:28)
- at Request.