@yosgo/swap-ui 1.0.141 → 2.0.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +50 -36
- package/build/index.cjs +3693 -0
- package/build/index.cjs.map +1 -0
- package/build/index.d.cts +710 -0
- package/build/index.d.ts +710 -50
- package/build/index.js +3553 -13924
- package/build/index.js.map +1 -1
- package/package.json +63 -63
- package/build/AppBar/AppBar.d.ts +0 -4
- package/build/AppBar/AppBar.types.d.ts +0 -2
- package/build/AutoComplete/AutoComplete.d.ts +0 -6
- package/build/AutoComplete/AutoComplete.types.d.ts +0 -23
- package/build/AutoComplete/BankCodes.d.ts +0 -5
- package/build/Banner/Banner.d.ts +0 -4
- package/build/Banner/Banner.types.d.ts +0 -10
- package/build/Breadcrumb/Breadcrumb.d.ts +0 -4
- package/build/Breadcrumb/Breadcrumb.types.d.ts +0 -7
- package/build/BreadcrumbItem/BreadcrumbItem.d.ts +0 -4
- package/build/BreadcrumbItem/BreadcrumbItem.types.d.ts +0 -4
- package/build/Button/Button.d.ts +0 -4
- package/build/Button/Button.types.d.ts +0 -13
- package/build/Card/Card.d.ts +0 -4
- package/build/Card/Card.types.d.ts +0 -17
- package/build/CheckBox/CheckBox.d.ts +0 -4
- package/build/CheckBox/CheckBox.types.d.ts +0 -7
- package/build/CheckBox/CheckBoxList.d.ts +0 -4
- package/build/CheckBox/CheckBoxList.types.d.ts +0 -9
- package/build/CheckBox/RadioButton.d.ts +0 -4
- package/build/CheckBox/RadioButton.types.d.ts +0 -7
- package/build/CheckBox/RadioList.d.ts +0 -4
- package/build/CheckBox/RadioList.types.d.ts +0 -9
- package/build/Chip/Chip.d.ts +0 -4
- package/build/Chip/Chip.types.d.ts +0 -11
- package/build/CircularProgress/CircularProgress.d.ts +0 -4
- package/build/CircularProgress/CircularProgress.types.d.ts +0 -5
- package/build/Container/Container.d.ts +0 -4
- package/build/Container/Container.types.d.ts +0 -7
- package/build/DatePicker/DatePicker.d.ts +0 -4
- package/build/DatePicker/DatePicker.types.d.ts +0 -14
- package/build/Dropdown/Dropdown.d.ts +0 -4
- package/build/Dropdown/Dropdown.types.d.ts +0 -9
- package/build/IconButton/IconButton.d.ts +0 -4
- package/build/IconButton/IconButton.types.d.ts +0 -7
- package/build/LandingPage/LandingPage.d.ts +0 -4
- package/build/LandingPage/LandingPage.types.d.ts +0 -14
- package/build/LandingPage/LandingPageMobile.d.ts +0 -4
- package/build/LandingPage/LandingPageMobile.types.d.ts +0 -14
- package/build/Link/Link.d.ts +0 -4
- package/build/Link/Link.types.d.ts +0 -4
- package/build/Menu/Menu.d.ts +0 -4
- package/build/Menu/Menu.types.d.ts +0 -3
- package/build/Menu/MenuItem.d.ts +0 -4
- package/build/Menu/MenuItem.types.d.ts +0 -12
- package/build/Menu/Select.d.ts +0 -4
- package/build/Menu/Select.types.d.ts +0 -41
- package/build/Modal/Modal.d.ts +0 -4
- package/build/Modal/Modal.types.d.ts +0 -55
- package/build/Pagination/Pagination.d.ts +0 -4
- package/build/Pagination/Pagination.types.d.ts +0 -3
- package/build/Paper/Paper.d.ts +0 -4
- package/build/Paper/Paper.types.d.ts +0 -5
- package/build/Progress/Progress.d.ts +0 -4
- package/build/Progress/Progress.types.d.ts +0 -8
- package/build/SWAPAppBar/SWAPAppBar.d.ts +0 -4
- package/build/SWAPAppBar/SWAPAppBar.types.d.ts +0 -19
- package/build/SWAPBanner/SWAPBanner.d.ts +0 -4
- package/build/SWAPBanner/SWAPBanner.types.d.ts +0 -16
- package/build/SWAPCopyField/SWAPCopyField.d.ts +0 -4
- package/build/SWAPCopyField/SWAPCopyField.types.d.ts +0 -8
- package/build/SWAPDialog/SWAPDialog.d.ts +0 -4
- package/build/SWAPDialog/SWAPDialog.types.d.ts +0 -18
- package/build/SWAPLogo/SWAPLogo.d.ts +0 -4
- package/build/SWAPLogo/SWAPLogo.types.d.ts +0 -10
- package/build/SWAPModal/SWAPModal.d.ts +0 -4
- package/build/SWAPModal/SWAPModal.types.d.ts +0 -29
- package/build/SWAPShare/SWAPShare.d.ts +0 -4
- package/build/SWAPShare/SWAPShare.types.d.ts +0 -6
- package/build/SWAPSpace/SWAPSpace.d.ts +0 -4
- package/build/SWAPSpace/SWAPSpace.types.d.ts +0 -3
- package/build/SWAPTaxField/SWAPTaxField.d.ts +0 -24
- package/build/SWAPTaxField/SWAPTaxField.types.d.ts +0 -13
- package/build/SWAPTheme/SWAPTheme.d.ts +0 -7
- package/build/SWAPTheme/SWAPTheme.types.d.ts +0 -166
- package/build/Skeleton/Skeleton.d.ts +0 -4
- package/build/Skeleton/Skeleton.types.d.ts +0 -3
- package/build/Snackbar/Snackbar.d.ts +0 -4
- package/build/Snackbar/Snackbar.types.d.ts +0 -20
- package/build/Styles/Styles.d.ts +0 -4
- package/build/Styles/Styles.types.d.ts +0 -8
- package/build/Switch/Switch.d.ts +0 -4
- package/build/Switch/Switch.types.d.ts +0 -3
- package/build/Tab/SegmentedTab.d.ts +0 -4
- package/build/Tab/SegmentedTab.types.d.ts +0 -7
- package/build/Tab/SegmentedTabs.d.ts +0 -4
- package/build/Tab/SegmentedTabs.types.d.ts +0 -5
- package/build/Tab/Tab.d.ts +0 -4
- package/build/Tab/Tab.types.d.ts +0 -10
- package/build/Tab/TabPanel.d.ts +0 -10
- package/build/Tab/Tabs.d.ts +0 -4
- package/build/Tab/Tabs.types.d.ts +0 -3
- package/build/Table/Table.d.ts +0 -4
- package/build/Table/Table.types.d.ts +0 -2
- package/build/TaxTextField/TaxTextField.d.ts +0 -24
- package/build/TaxTextField/TaxTextField.types.d.ts +0 -26
- package/build/TextField/TextField.d.ts +0 -4
- package/build/TextField/TextField.types.d.ts +0 -7
- package/build/Tooltip/Tooltip.d.ts +0 -4
- package/build/Tooltip/Tooltip.types.d.ts +0 -15
- package/build/Typography/Typography.d.ts +0 -4
- package/build/Typography/Typography.types.d.ts +0 -8
- package/build/index.esm.js +0 -13928
- package/build/index.esm.js.map +0 -1
- package/build/utils/useBreakpoints.d.ts +0 -2
package/build/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../node_modules/tslib/tslib.es6.js","../src/SWAPLogo/SWAPLogo.tsx","../src/SWAPSpace/SWAPSpace.tsx","../src/SWAPAppBar/SWAPAppBar.tsx","../src/SWAPBanner/SWAPBanner.tsx","../node_modules/toggle-selection/index.js","../node_modules/copy-to-clipboard/index.js","../node_modules/react-copy-to-clipboard/lib/Component.js","../node_modules/react-copy-to-clipboard/lib/index.js","../src/SWAPCopyField/SWAPCopyField.tsx","../src/SWAPDialog/SWAPDialog.tsx","../src/SWAPModal/SWAPModal.tsx","../node_modules/react-share/es/utils/objectToGetParams.js","../node_modules/classnames/index.js","../node_modules/react-share/es/ShareButton.js","../node_modules/react-share/es/hocs/createShareButton.js","../node_modules/react-share/es/utils/assert.js","../node_modules/rollup-plugin-node-polyfills/polyfills/global.js","../node_modules/rollup-plugin-node-polyfills/polyfills/process-es6.js","../node_modules/react-share/es/LineShareButton.js","../src/SWAPShare/SWAPShare.tsx","../src/SWAPTaxField/SWAPTaxField.tsx","../src/SWAPTheme/SWAPTheme.tsx","../src/Styles/Styles.tsx","../src/Typography/Typography.tsx","../src/Container/Container.tsx","../src/utils/useBreakpoints.ts","../src/CheckBox/CheckBox.tsx","../src/CheckBox/RadioButton.tsx","../src/TextField/TextField.tsx","../src/Tab/Tab.tsx","../src/Tab/Tabs.tsx","../src/Tab/SegmentedTab.tsx","../node_modules/smoothscroll-polyfill/dist/smoothscroll.js","../src/Tab/SegmentedTabs.tsx","../src/Tab/TabPanel.tsx","../src/Menu/Select.tsx","../src/Menu/Menu.tsx","../src/Menu/MenuItem.tsx","../src/Button/Button.tsx","../src/IconButton/IconButton.tsx","../src/Snackbar/Snackbar.tsx","../node_modules/rafz/dist/raf.mjs","../node_modules/@react-spring/shared/index.js","../node_modules/@react-spring/animated/index.js","../node_modules/@react-spring/core/index.js","../node_modules/@react-spring/web/index.js","../src/Tooltip/Tooltip.tsx","../src/Modal/Modal.tsx","../src/Banner/Banner.tsx","../src/Chip/Chip.tsx","../src/CircularProgress/CircularProgress.tsx","../node_modules/@babel/runtime/helpers/esm/extends.js","../node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","../node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js","../node_modules/prop-types/node_modules/react-is/cjs/react-is.production.min.js","../node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js","../node_modules/prop-types/node_modules/react-is/index.js","../node_modules/object-assign/index.js","../node_modules/prop-types/lib/ReactPropTypesSecret.js","../node_modules/prop-types/checkPropTypes.js","../node_modules/prop-types/factoryWithTypeCheckers.js","../node_modules/prop-types/factoryWithThrowingShims.js","../node_modules/prop-types/index.js","../node_modules/clsx/dist/clsx.m.js","../node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","../node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","../node_modules/@babel/runtime/helpers/esm/iterableToArray.js","../node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","../node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","../node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","../node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","../node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","../node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","../node_modules/@babel/runtime/helpers/esm/slicedToArray.js","../node_modules/@material-ui/lab/esm/Pagination/usePagination.js","../node_modules/@material-ui/lab/esm/internal/svg-icons/FirstPage.js","../node_modules/@material-ui/lab/esm/internal/svg-icons/LastPage.js","../node_modules/@material-ui/lab/esm/internal/svg-icons/NavigateBefore.js","../node_modules/@material-ui/lab/esm/internal/svg-icons/NavigateNext.js","../node_modules/@material-ui/lab/esm/PaginationItem/PaginationItem.js","../node_modules/@material-ui/lab/esm/Pagination/Pagination.js","../node_modules/@material-ui/lab/esm/internal/svg-icons/Close.js","../node_modules/@babel/runtime/helpers/esm/defineProperty.js","../node_modules/@material-ui/lab/esm/internal/svg-icons/ArrowDropDown.js","../node_modules/@babel/runtime/helpers/esm/typeof.js","../node_modules/@material-ui/lab/esm/useAutocomplete/useAutocomplete.js","../node_modules/@material-ui/lab/esm/Autocomplete/Autocomplete.js","../node_modules/@material-ui/lab/esm/Skeleton/Skeleton.js","../src/Pagination/Pagination.tsx","../src/Progress/Progress.tsx","../src/AutoComplete/AutoComplete.tsx","../src/TaxTextField/TaxTextField.tsx","../src/Skeleton/Skeleton.tsx","../src/Dropdown/Dropdown.tsx","../src/CheckBox/RadioList.tsx","../src/CheckBox/CheckBoxList.tsx","../src/Link/Link.tsx","../src/Paper/Paper.tsx","../src/Switch/Switch.tsx","../src/DatePicker/DatePicker.tsx","../src/Breadcrumb/Breadcrumb.tsx","../src/BreadcrumbItem/BreadcrumbItem.tsx","../src/Card/Card.tsx"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from) {\r\n for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)\r\n to[j] = from[i];\r\n return to;\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import React from \"react\";\nimport styled from \"styled-components\";\n\nimport { SWAPLogoProps } from \"./SWAPLogo.types\";\n\nimport logo_normal from \"./SWAP_web logo.svg\";\nimport logo_normal_dark from \"./SWAP_web logo-white.svg\";\nimport logo_biz from \"./SWAP BIZ_web logo_test-01.svg\";\nimport logo_biz_zh_tw from \"./Blue - Biz.svg\";\nimport logo_black from \"./Color=Black.svg\";\nimport logo_black_dark from \"./Color=White.svg\";\nimport logo_icon from \"./Color=Blue.svg\";\nimport logo_icon_black from \"./Color=White_icon.svg\";\n\nconst SWAPLogo: React.FC<SWAPLogoProps> = ({\n black = false,\n iconOnly = false,\n chinese = false,\n business = false,\n size = \"middle\",\n dark = false,\n height,\n width,\n}) => {\n return (\n <span>\n <SWAPLogoWrap size={size}>\n <img\n className={business ? \"business\" : \"\"}\n style={{ width: width, height: height }}\n src={(() => {\n if (business) {\n if (chinese) {\n return logo_biz_zh_tw;\n }\n return logo_biz;\n } else if (black) {\n if (iconOnly) {\n return logo_icon_black;\n } else if (dark) {\n return logo_black_dark;\n }\n return logo_black;\n } else if (iconOnly) {\n return logo_icon;\n } else if (dark) {\n return logo_normal_dark;\n } else {\n return logo_normal;\n }\n })()}\n />\n </SWAPLogoWrap>\n </span>\n );\n};\n\nconst SWAPLogoWrap = styled.div`\n display: flex;\n align-items: center;\n img {\n height: ${({ size }: SWAPLogoProps) => {\n if (size === \"small\") {\n return \"30px\";\n } else if (size === \"middle\") {\n return \"40px\";\n } else if (size === \"large\") {\n return \"48px\";\n } else if (size && typeof size === \"number\") {\n return `${size}px`;\n } else if (size && typeof size === \"string\") {\n return size;\n } else {\n return \"100%\";\n }\n }};\n &.business {\n height: ${({ size }: SWAPLogoProps) => {\n if (size === \"small\") {\n return \"48px\";\n } else if (size === \"middle\") {\n return \"72px\";\n } else if (size === \"large\") {\n return \"81px\";\n } else if (size && typeof size === \"number\") {\n return `${size}px`;\n } else if (size && typeof size === \"string\") {\n return size;\n } else {\n return \"42px\";\n }\n }};\n }\n }\n`;\n\nexport default SWAPLogo;\n","import React from \"react\";\n\nimport { SWAPSpaceProps } from \"./SWAPSpace.types\";\n\nconst SWAPSpace: React.FC<SWAPSpaceProps> = React.memo(({ size }) => {\n const height = () => {\n if (size === \"xxs\") {\n return 4;\n } else if (size === \"xs\") {\n return 8;\n } else if (size === \"s\") {\n return 12;\n } else if (size === \"m\") {\n return 16;\n } else if (size === \"l\") {\n return 24;\n } else if (size === \"xl\") {\n return 32;\n } else if (size === \"2xl\") {\n return 40;\n } else if (size === \"3xl\") {\n return 48;\n } else if (size === \"4xl\") {\n return 56;\n } else if (typeof size === \"number\") {\n return size;\n } else return 16;\n };\n return <div style={{ height: `${height()}px` }} />;\n});\n\nexport default SWAPSpace;\n","import {\n AppBar,\n Toolbar,\n Grid,\n Button,\n Typography,\n Container,\n IconButton,\n Menu,\n MenuItem,\n Divider,\n} from \"@material-ui/core\";\nimport React from \"react\";\nimport styled from \"styled-components\";\nimport MenuIcon from \"@material-ui/icons/Menu\";\n\nimport SWAPLogo from \"../SWAPLogo/SWAPLogo\";\nimport SWAPSpace from \"../SWAPSpace/SWAPSpace\";\n\nimport { SWAPAppBarProps } from \"./SWAPAppBar.types\";\n\nconst SWAPAppBar: React.FC<SWAPAppBarProps> = ({\n logo,\n primaryButton,\n secondaryButton,\n navigations,\n}) => {\n const [anchorEl, setAnchorEl] = React.useState<null | HTMLElement>(null);\n\n const handleClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n setAnchorEl(event.currentTarget);\n };\n\n const handleClose = () => {\n setAnchorEl(null);\n };\n\n return (\n <div>\n <SWAPAppBarWrap>\n <AppBar\n position=\"fixed\"\n color=\"transparent\"\n elevation={1}\n style={{ background: \"white\" }}\n >\n <Toolbar>\n <Container maxWidth=\"md\">\n <SWAPSpace size=\"s\" />\n <Grid\n container\n alignItems=\"center\"\n justify=\"space-between\"\n wrap=\"nowrap\"\n >\n <Grid item style={{ flexGrow: 1, flexBasis: \"auto\" }}>\n <Grid container spacing={3} alignItems=\"center\" wrap=\"nowrap\">\n <Grid\n item\n style={{\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n }}\n >\n {logo ? logo : <SWAPLogo size=\"large\" />}\n </Grid>\n {/**電腦版顯示 */}\n {navigations &&\n navigations.length > 0 &&\n navigations.map((item, index) => (\n <Grid item key={`nav_${index}`} className=\"mobile_hide\">\n <Button\n onClick={() => item.onClick()}\n disabled={item.disabled}\n >\n <Typography variant=\"body2\">\n {item.title}\n </Typography>\n </Button>\n </Grid>\n ))}\n </Grid>\n </Grid>\n <Grid item style={{ flexGrow: 1, flexBasis: \"auto\" }}>\n {/**電腦版顯示 */}\n <Grid\n container\n spacing={1}\n justify=\"flex-end\"\n alignItems=\"center\"\n className=\"mobile_hide\"\n >\n <Grid item>\n {secondaryButton &&\n secondaryButton.title &&\n secondaryButton.title.length > 0 ? (\n <Button\n color=\"primary\"\n variant=\"outlined\"\n onClick={() => secondaryButton.onClick()}\n disabled={secondaryButton.disabled}\n >\n {secondaryButton.title}\n </Button>\n ) : null}\n </Grid>\n <Grid item>\n <Button\n color=\"primary\"\n variant=\"contained\"\n onClick={() => primaryButton.onClick()}\n disabled={primaryButton.disabled}\n >\n {primaryButton.title}\n </Button>\n </Grid>\n </Grid>\n {/**手機版顯示 */}\n <Grid container justify=\"flex-end\">\n <Grid item>\n <IconButton\n onClick={(e) => handleClick(e)}\n aria-label=\"menue\"\n color=\"primary\"\n className=\"mobile_show\"\n >\n <MenuIcon />\n </IconButton>\n <Menu\n id=\"simple-menu\"\n anchorEl={anchorEl}\n keepMounted\n open={Boolean(anchorEl)}\n onClose={() => handleClose()}\n >\n {navigations &&\n navigations.length > 0 &&\n navigations.map((item, index) => (\n <MenuItem\n key={`mobile_page_${index}_pages`}\n disabled={item.disabled}\n onClick={() => item.onClick()}\n >\n {item.title}\n </MenuItem>\n ))}\n <SWAPSpace size=\"s\" />\n <Divider />\n <SWAPSpace size=\"s\" />\n {secondaryButton &&\n secondaryButton.title &&\n secondaryButton.title.length > 0 ? (\n <MenuItem\n disabled={secondaryButton.disabled}\n onClick={() => secondaryButton.onClick()}\n >\n {secondaryButton.title}\n </MenuItem>\n ) : null}\n {primaryButton &&\n primaryButton.title &&\n primaryButton.title.length > 0 ? (\n <MenuItem\n disabled={primaryButton.disabled}\n onClick={() => primaryButton.onClick()}\n >\n {primaryButton.title}\n </MenuItem>\n ) : null}\n </Menu>\n </Grid>\n </Grid>\n </Grid>\n </Grid>\n <SWAPSpace size=\"s\" />\n </Container>\n </Toolbar>\n </AppBar>\n </SWAPAppBarWrap>\n </div>\n );\n};\n\nconst SWAPAppBarWrap = styled.div`\n .mobile_hide {\n @media screen and (max-width: 960px) {\n display: none;\n }\n }\n .mobile_show {\n display: none;\n @media screen and (max-width: 960px) {\n display: block;\n }\n }\n`;\n\nexport default SWAPAppBar;\n","import {\n Container,\n Fade,\n Grid,\n Paper,\n Typography,\n Button,\n} from \"@material-ui/core\";\nimport React, { useEffect } from \"react\";\nimport styled from \"styled-components\";\nimport SWAPSpace from \"../SWAPSpace/SWAPSpace\";\n\nimport { SWAPBannerProps } from \"./SWAPBanner.types\";\n\nconst ElementId = (title: string) => `swap_banner_${title}`;\n\nconst SWAPBanner: React.FC<SWAPBannerProps> = ({\n status,\n title,\n content,\n primaryButton,\n secondaryButton,\n focus,\n}) => {\n useEffect(() => {\n if (focus) {\n /**畫面捲動到 appBanner 元件並顯目提示 */\n const banner = document.getElementById(ElementId(title));\n if (banner) {\n banner.scrollIntoView({ behavior: \"smooth\", block: \"start\" });\n }\n }\n }, []);\n\n return (\n <div>\n <SWAPBannerWrap>\n <Fade in timeout={{ enter: 300, exit: 300 }}>\n <Paper className=\"swap_banner\">\n <div id={ElementId(title)} className=\"banner_anchor\" />\n {status === \"success\" ? <div className=\"s_bar bar\" /> : null}\n {status === \"warning\" ? <div className=\"w_bar bar\" /> : null}\n {status === \"critical\" ? <div className=\"c_bar bar\" /> : null}\n <Container maxWidth=\"lg\">\n <SWAPSpace size=\"l\" />\n <Typography variant=\"h6\">{title}</Typography>\n <SWAPSpace size=\"s\" />\n <Typography variant=\"body2\">{content}</Typography>\n {primaryButton || secondaryButton ? (\n <Grid container spacing={1}>\n {primaryButton &&\n primaryButton.title &&\n primaryButton.title.length > 0 ? (\n <Grid item>\n \b<SWAPSpace />\n <Button\n variant=\"outlined\"\n onClick={() => primaryButton.onClick()}\n disabled={primaryButton.disabled}\n >\n {primaryButton.title}\n </Button>\n </Grid>\n ) : null}\n {secondaryButton &&\n secondaryButton.title &&\n secondaryButton.title.length > 0 ? (\n <Grid item>\n \b<SWAPSpace />\n <Button\n variant=\"text\"\n onClick={() => secondaryButton.onClick()}\n disabled={secondaryButton.disabled}\n >\n {secondaryButton.title}\n </Button>\n </Grid>\n ) : null}\n </Grid>\n ) : null}\n <SWAPSpace size=\"l\" />\n </Container>\n </Paper>\n </Fade>\n </SWAPBannerWrap>\n </div>\n );\n};\n\nconst SWAPBannerWrap = styled.div`\n .swap_banner {\n position: relative;\n overflow: hidden;\n .banner_anchor {\n position: absolute;\n top: -36px;\n left: 0;\n width: 0;\n height: 0;\n }\n .bar {\n height: 12px;\n &.s_bar {\n background: #3f51b5;\n }\n &.w_bar {\n background: #ffb11b;\n }\n &.c_bar {\n background: rgb(220, 0, 78);\n }\n }\n }\n`;\n\nexport default SWAPBanner;\n","\nmodule.exports = function () {\n var selection = document.getSelection();\n if (!selection.rangeCount) {\n return function () {};\n }\n var active = document.activeElement;\n\n var ranges = [];\n for (var i = 0; i < selection.rangeCount; i++) {\n ranges.push(selection.getRangeAt(i));\n }\n\n switch (active.tagName.toUpperCase()) { // .toUpperCase handles XHTML\n case 'INPUT':\n case 'TEXTAREA':\n active.blur();\n break;\n\n default:\n active = null;\n break;\n }\n\n selection.removeAllRanges();\n return function () {\n selection.type === 'Caret' &&\n selection.removeAllRanges();\n\n if (!selection.rangeCount) {\n ranges.forEach(function(range) {\n selection.addRange(range);\n });\n }\n\n active &&\n active.focus();\n };\n};\n","\"use strict\";\n\nvar deselectCurrent = require(\"toggle-selection\");\n\nvar clipboardToIE11Formatting = {\n \"text/plain\": \"Text\",\n \"text/html\": \"Url\",\n \"default\": \"Text\"\n}\n\nvar defaultMessage = \"Copy to clipboard: #{key}, Enter\";\n\nfunction format(message) {\n var copyKey = (/mac os x/i.test(navigator.userAgent) ? \"⌘\" : \"Ctrl\") + \"+C\";\n return message.replace(/#{\\s*key\\s*}/g, copyKey);\n}\n\nfunction copy(text, options) {\n var debug,\n message,\n reselectPrevious,\n range,\n selection,\n mark,\n success = false;\n if (!options) {\n options = {};\n }\n debug = options.debug || false;\n try {\n reselectPrevious = deselectCurrent();\n\n range = document.createRange();\n selection = document.getSelection();\n\n mark = document.createElement(\"span\");\n mark.textContent = text;\n // reset user styles for span element\n mark.style.all = \"unset\";\n // prevents scrolling to the end of the page\n mark.style.position = \"fixed\";\n mark.style.top = 0;\n mark.style.clip = \"rect(0, 0, 0, 0)\";\n // used to preserve spaces and line breaks\n mark.style.whiteSpace = \"pre\";\n // do not inherit user-select (it may be `none`)\n mark.style.webkitUserSelect = \"text\";\n mark.style.MozUserSelect = \"text\";\n mark.style.msUserSelect = \"text\";\n mark.style.userSelect = \"text\";\n mark.addEventListener(\"copy\", function(e) {\n e.stopPropagation();\n if (options.format) {\n e.preventDefault();\n if (typeof e.clipboardData === \"undefined\") { // IE 11\n debug && console.warn(\"unable to use e.clipboardData\");\n debug && console.warn(\"trying IE specific stuff\");\n window.clipboardData.clearData();\n var format = clipboardToIE11Formatting[options.format] || clipboardToIE11Formatting[\"default\"]\n window.clipboardData.setData(format, text);\n } else { // all other browsers\n e.clipboardData.clearData();\n e.clipboardData.setData(options.format, text);\n }\n }\n if (options.onCopy) {\n e.preventDefault();\n options.onCopy(e.clipboardData);\n }\n });\n\n document.body.appendChild(mark);\n\n range.selectNodeContents(mark);\n selection.addRange(range);\n\n var successful = document.execCommand(\"copy\");\n if (!successful) {\n throw new Error(\"copy command was unsuccessful\");\n }\n success = true;\n } catch (err) {\n debug && console.error(\"unable to copy using execCommand: \", err);\n debug && console.warn(\"trying IE specific stuff\");\n try {\n window.clipboardData.setData(options.format || \"text\", text);\n options.onCopy && options.onCopy(window.clipboardData);\n success = true;\n } catch (err) {\n debug && console.error(\"unable to copy using clipboardData: \", err);\n debug && console.error(\"falling back to prompt\");\n message = format(\"message\" in options ? options.message : defaultMessage);\n window.prompt(message, text);\n }\n } finally {\n if (selection) {\n if (typeof selection.removeRange == \"function\") {\n selection.removeRange(range);\n } else {\n selection.removeAllRanges();\n }\n }\n\n if (mark) {\n document.body.removeChild(mark);\n }\n reselectPrevious();\n }\n\n return success;\n}\n\nmodule.exports = copy;\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.CopyToClipboard = void 0;\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _copyToClipboard = _interopRequireDefault(require(\"copy-to-clipboard\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(source, true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(source).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar CopyToClipboard =\n/*#__PURE__*/\nfunction (_React$PureComponent) {\n _inherits(CopyToClipboard, _React$PureComponent);\n\n function CopyToClipboard() {\n var _getPrototypeOf2;\n\n var _this;\n\n _classCallCheck(this, CopyToClipboard);\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _possibleConstructorReturn(this, (_getPrototypeOf2 = _getPrototypeOf(CopyToClipboard)).call.apply(_getPrototypeOf2, [this].concat(args)));\n\n _defineProperty(_assertThisInitialized(_this), \"onClick\", function (event) {\n var _this$props = _this.props,\n text = _this$props.text,\n onCopy = _this$props.onCopy,\n children = _this$props.children,\n options = _this$props.options;\n\n var elem = _react[\"default\"].Children.only(children);\n\n var result = (0, _copyToClipboard[\"default\"])(text, options);\n\n if (onCopy) {\n onCopy(text, result);\n } // Bypass onClick if it was present\n\n\n if (elem && elem.props && typeof elem.props.onClick === 'function') {\n elem.props.onClick(event);\n }\n });\n\n return _this;\n }\n\n _createClass(CopyToClipboard, [{\n key: \"render\",\n value: function render() {\n var _this$props2 = this.props,\n _text = _this$props2.text,\n _onCopy = _this$props2.onCopy,\n _options = _this$props2.options,\n children = _this$props2.children,\n props = _objectWithoutProperties(_this$props2, [\"text\", \"onCopy\", \"options\", \"children\"]);\n\n var elem = _react[\"default\"].Children.only(children);\n\n return _react[\"default\"].cloneElement(elem, _objectSpread({}, props, {\n onClick: this.onClick\n }));\n }\n }]);\n\n return CopyToClipboard;\n}(_react[\"default\"].PureComponent);\n\nexports.CopyToClipboard = CopyToClipboard;\n\n_defineProperty(CopyToClipboard, \"defaultProps\", {\n onCopy: undefined,\n options: undefined\n});","\"use strict\";\n\nvar _require = require('./Component'),\n CopyToClipboard = _require.CopyToClipboard;\n\nCopyToClipboard.CopyToClipboard = CopyToClipboard;\nmodule.exports = CopyToClipboard;","import React, { useState } from \"react\";\nimport styled from \"styled-components\";\nimport CopyToClipboard from \"react-copy-to-clipboard\";\nimport { Button, Fade, Grid, TextField } from \"@material-ui/core\";\n\nimport FileCopyIcon from \"@material-ui/icons/FileCopy\";\nimport CheckIcon from \"@material-ui/icons/Check\";\n\nimport { SWAPCopyFieldProps } from \"./SWAPCopyField.types\";\n\nconst SWAPCopyField: React.FC<SWAPCopyFieldProps> = ({\n sharedText,\n rows,\n multiline,\n copyInputLabel = \"複製以下文字訊息\",\n copyButtonText = \"複製\",\n copySuccessMessage = \"已成功複製文字訊息\",\n}) => {\n const [csm, setCsm] = useState(\"\");\n\n return (\n <div>\n <SWAPCopyFieldWrap>\n <TextField\n fullWidth\n multiline={multiline}\n rows={rows}\n label={copyInputLabel}\n value={sharedText}\n variant=\"outlined\"\n helperText={\n csm && csm.length > 0 ? (\n <Fade in>\n <Grid container alignItems=\"center\" spacing={1} wrap=\"nowrap\">\n <Grid item>\n <CheckIcon color=\"primary\" fontSize=\"small\" />\n </Grid>\n <Grid item>{csm}</Grid>\n </Grid>\n </Fade>\n ) : null\n }\n InputProps={{\n endAdornment: (\n <div className=\"cpy_btn_element\">\n <CopyToClipboard\n text={sharedText}\n onCopy={() => {\n setCsm(\"\");\n setTimeout(() => setCsm(copySuccessMessage), 200);\n }}\n >\n <div>\n <Button\n startIcon={\n <FileCopyIcon color=\"primary\" fontSize=\"small\" />\n }\n style={{ width: \"auto\" }}\n >\n <small>{copyButtonText}</small>\n </Button>\n </div>\n </CopyToClipboard>\n </div>\n ),\n }}\n />\n </SWAPCopyFieldWrap>\n </div>\n );\n};\n\nconst SWAPCopyFieldWrap = styled.div`\n .cpy_btn_element {\n width: auto;\n min-width: 72px;\n text-align: right;\n }\n`;\n\nexport default SWAPCopyField;\n","import {\n Container,\n Dialog,\n Divider,\n Fade,\n Paper,\n Typography,\n Grid,\n Button,\n} from \"@material-ui/core\";\nimport React from \"react\";\nimport styled from \"styled-components\";\nimport SWAPSpace from \"../SWAPSpace/SWAPSpace\";\n\nimport { SWAPDialogProps } from \"./SWAPDialog.types\";\n\nconst SWAPDialog: React.FC<SWAPDialogProps> = ({\n open,\n title,\n helpText,\n children,\n primaryButton,\n secondaryButton,\n status,\n}) => {\n return (\n <div>\n <Dialog\n open={open}\n aria-describedby={`dialog_d_${title}`}\n aria-labelledby={`dialog_l_${title}`}\n id={`${title}`}\n PaperProps={{\n style: { maxWidth: \"auto\", margin: \"6px\" },\n }}\n >\n <Fade in={open} timeout={{ enter: 300, exit: 300 }}>\n <SWAPDialogWrap>\n <Fade in={open} timeout={{ enter: 300, exit: 300 }}>\n <Paper className=\"dialog_inner\" id=\"dialog_inner\">\n <div className=\"dialog_inner_head\">\n {status === \"success\" ? <div className=\"s_bar bar\" /> : null}\n {status === \"warning\" ? <div className=\"w_bar bar\" /> : null}\n {status === \"critical\" ? <div className=\"c_bar bar\" /> : null}\n <Container maxWidth=\"lg\">\n <SWAPSpace size=\"s\" />\n <Typography variant=\"h5\">{title}</Typography>\n {helpText ? (\n <Typography variant=\"body2\">{helpText}</Typography>\n ) : null}\n <SWAPSpace size=\"s\" />\n </Container>\n {children ? <Divider /> : null}\n </div>\n {children ? (\n <div className=\"dialog_inner_body\">\n <Container maxWidth=\"lg\">\n <SWAPSpace size=\"m\" />\n <div>{children}</div>\n <SWAPSpace size=\"m\" />\n </Container>\n </div>\n ) : null}\n <div className=\"dialog_inner_footer\">\n <Divider />\n <Container maxWidth=\"lg\">\n <SWAPSpace size=\"s\" />\n <Grid\n container\n wrap=\"nowrap\"\n alignItems=\"center\"\n spacing={3}\n justify=\"flex-end\"\n >\n <Grid item>\n {secondaryButton &&\n secondaryButton.title &&\n secondaryButton.title.length > 0 ? (\n <Button\n size=\"large\"\n onClick={() => secondaryButton.onClick()}\n disabled={secondaryButton.disabled}\n color=\"default\"\n >\n {secondaryButton.title}\n </Button>\n ) : null}\n </Grid>\n <Grid item>\n {primaryButton && primaryButton.title ? (\n <Button\n size=\"large\"\n onClick={() => primaryButton.onClick()}\n disabled={primaryButton.disabled}\n >\n {primaryButton.title}\n </Button>\n ) : null}\n </Grid>\n </Grid>\n <SWAPSpace size=\"s\" />\n </Container>\n </div>\n </Paper>\n </Fade>\n </SWAPDialogWrap>\n </Fade>\n </Dialog>\n </div>\n );\n};\n\nconst SWAPDialogWrap = styled.div`\n box-sizing: border-box;\n position: relative;\n .bar {\n position: absolute;\n height: 12px;\n top: 0;\n left: 0;\n width: 100%;\n &.s_bar {\n background: #3f51b5;\n }\n &.w_bar {\n background: #ffb11b;\n }\n &.c_bar {\n background: rgb(220, 0, 78);\n }\n }\n .dialog_inner {\n margin-top: 12px;\n }\n`;\n\nexport default SWAPDialog;\n","import React, { useEffect, useState } from \"react\";\nimport styled from \"styled-components\";\nimport {\n Container,\n Modal,\n Grid,\n Typography,\n Paper,\n IconButton,\n Divider,\n Button,\n Fade,\n Slide,\n Breadcrumbs,\n} from \"@material-ui/core\";\n\nimport CheckCircleIcon from \"@material-ui/icons/CheckCircle\";\nimport CloseIcon from \"@material-ui/icons/Close\";\nimport WarningIcon from \"@material-ui/icons/Warning\";\n\nimport { SWAPModalProps } from \"./SWAPModal.types\";\nimport SWAPSpace from \"../SWAPSpace/SWAPSpace\";\n\nconst ModalOpenEffect = (props: {\n sm: boolean;\n in: boolean;\n children: React.ReactNode;\n}) => {\n return (\n <>\n {props.sm ? (\n <Slide\n in={props.in}\n direction=\"up\"\n mountOnEnter\n unmountOnExit\n timeout={{ enter: 300, exit: 300 }}\n >\n <div>{props.children}</div>\n </Slide>\n ) : (\n <Fade in={props.in} timeout={{ enter: 300, exit: 300 }}>\n <div>{props.children}</div>\n </Fade>\n )}\n </>\n );\n};\n\nconst SWAPModal: React.FC<SWAPModalProps> = ({\n open,\n title,\n onClose,\n helpText,\n primaryButton,\n secondaryButton,\n children,\n steps,\n successMessage,\n errorMessage,\n closeWindowOnSuccessMessage,\n reloadOnWindowClose,\n fullScreen\n }) => {\n const [sm, setSm] = useState(false);\n const [stepIndex, setStepIndex] = useState(0);\n\n const handleModalSize = () => {\n const clientHeight = `${document.documentElement.clientHeight}px`;\n const wrap = document.getElementById(`modal_wrap_${title}`);\n const inner = document.getElementById(`modal_inner_${title}`);\n const header = document.getElementById(`modal_header_${title}`);\n const body = document.getElementById(`modal_body_${title}`);\n const bottom = document.getElementById(`modal_bottom_${title}`);\n if (clientHeight && wrap && inner && header && body && bottom) {\n /**\n * 0. 更新 Modal 外層高度\n * 1. 更新 Body 高度\n * 2. 更新 Modal 上下間距\n * */\n const bodyMaxHeight = `calc(${clientHeight} - ${\n header.offsetHeight + bottom.offsetHeight + 12\n }px)`;\n const innerPadding = `${header.offsetHeight}px 0 ${bottom.offsetHeight}px 0`;\n wrap.setAttribute(\"style\", `height: ${clientHeight};`);\n inner.setAttribute(\"style\", `padding: ${innerPadding};`);\n body.setAttribute(\"style\", `max-height: ${bodyMaxHeight};`);\n }\n };\n\n const modalCloseWindow = () => {\n onClose();\n if (reloadOnWindowClose) {\n window.location.reload();\n }\n };\n\n const handleStepButton = (type: \"next\" | \"prev\") => {\n if (type === \"next\") {\n let value = stepIndex + 1 > steps.length - 1 ? 0 : stepIndex + 1;\n setStepIndex(value);\n } else if (type === \"prev\") {\n let value = stepIndex - 1 < 0 ? 0 : stepIndex - 1;\n setStepIndex(value);\n } else {\n setStepIndex(stepIndex);\n }\n };\n\n useEffect(() => {\n /**視窗中的相關內容變動時調整視窗大小 */\n handleModalSize();\n /**收到成功訊息後關閉視窗 */\n if (successMessage && closeWindowOnSuccessMessage) {\n setTimeout(() => {\n modalCloseWindow();\n }, 1500);\n }\n /**一開始偵測視窗大小,決定 modal 效果 */\n const clientWidth = document.documentElement.clientWidth;\n if (clientWidth < 960) {\n setSm(true);\n }\n }, [successMessage, errorMessage, children]);\n\n return (\n <Modal\n open={open}\n onRendered={() => handleModalSize()}\n onClose={() => onClose()}\n >\n <Fade in={open} timeout={{ enter: 300, exit: 300 }}>\n <SWAPModalWrap id={`modal_wrap_${title}`}>\n <ModalOpenEffect in={open} sm={sm}>\n <Paper className={`modal_inner ${fullScreen ? 'full_screen' : ''}`} id={`modal_inner_${title}`}>\n {/**視窗標題區域 */}\n <div className=\"modal_inner_header\" id={`modal_header_${title}`}>\n <Container maxWidth=\"lg\">\n <SWAPSpace size=\"m\" />\n <Grid\n container\n wrap=\"nowrap\"\n alignItems=\"center\"\n spacing={1}\n justify=\"space-between\"\n >\n <Grid item>\n <Typography variant=\"h5\">{title}</Typography>\n {helpText ? (\n <Typography variant=\"body2\" color=\"textSecondary\">\n {helpText}\n </Typography>\n ) : null}\n </Grid>\n <Grid item>\n <IconButton onClick={() => modalCloseWindow()}>\n <CloseIcon fontSize=\"large\" />\n </IconButton>\n </Grid>\n </Grid>\n <SWAPSpace size=\"m\" />\n </Container>\n <Divider />\n </div>\n {/**視窗內容區域 */}\n <div className=\"modal_inner_body\" id={`modal_body_${title}`}>\n <Container maxWidth=\"lg\">\n <SWAPSpace size=\"m\" />\n {/**步驟視窗的內容 */}\n {steps && steps.length > 0 ? (\n <div>\n <Breadcrumbs separator=\"›\" style={{ marginLeft: \"-9px\" }}>\n {steps.map((s, i) => (\n <Button\n key={`step_breadcrumb_${i}`}\n color={i === stepIndex ? \"primary\" : \"default\"}\n onClick={() => setStepIndex(i)}\n size={sm ? \"small\" : \"medium\"}\n >\n {i + 1}.{s.stepTitle}\n </Button>\n ))}\n </Breadcrumbs>\n <SWAPSpace size=\"m\" />\n <div>{steps[stepIndex].stepChildren}</div>\n </div>\n ) : null}\n {/**原始視窗的內容 */}\n {children ? <div>{children}</div> : null}\n <SWAPSpace size=\"m\" />\n </Container>\n </div>\n {/**視窗底端 */}\n <div className=\"modal_inner_bottom\" id={`modal_bottom_${title}`}>\n <Divider />\n <Container maxWidth=\"lg\">\n <SWAPSpace size=\"m\" />\n {(successMessage && successMessage.length > 0) ||\n (errorMessage && errorMessage.length > 0) ? (\n <Fade in>\n <div>\n <Grid\n container\n wrap=\"nowrap\"\n alignItems=\"center\"\n justify=\"flex-end\"\n >\n <Grid item style={{ margin: \"0 6px -6px 0\" }}>\n {successMessage ? (\n <CheckCircleIcon color=\"primary\" />\n ) : (\n <WarningIcon color=\"secondary\" />\n )}\n </Grid>\n <Grid item>\n <Typography variant=\"body1\">\n {successMessage ? successMessage : errorMessage}\n </Typography>\n </Grid>\n </Grid>\n <SWAPSpace size=\"s\" />\n </div>\n </Fade>\n ) : null}\n {/**\n * 顯示主要與次要按鈕\n * 1. 當沒有 steps 屬性時顯示\n * 2. 當有 step 屬性且為最後一步驟時顯示\n * 其餘狀態顯示步驟的上下步驟按鈕\n */}\n {!steps ||\n (steps &&\n steps.length > 0 &&\n stepIndex === steps.length - 1) ? (\n <Fade in timeout={{ enter: 300, exit: 300 }}>\n <Grid\n container\n wrap=\"nowrap\"\n alignItems=\"center\"\n spacing={sm ? 1 : 2}\n justify=\"flex-end\"\n >\n {/**\n * 顯示上一步驟的按鈕\n * 1. 有 steps 屬性\n * 2. 為最後一步驟時,\n * 3. steps 的長度要大於一\n * */}\n {steps &&\n steps.length > 1 &&\n stepIndex === steps.length - 1 ? (\n <Button\n variant=\"text\"\n size={sm ? \"medium\" : \"large\"}\n onClick={() => handleStepButton(\"prev\")}\n >\n {steps[stepIndex].prevStepText || \"上一步\"}\n </Button>\n ) : null}\n <Grid item>\n {secondaryButton &&\n secondaryButton.title &&\n secondaryButton.title.length > 0 ? (\n <Button\n variant=\"outlined\"\n size={sm ? \"medium\" : \"large\"}\n onClick={() => secondaryButton.onClick()}\n disabled={secondaryButton.disabled}\n >\n {secondaryButton.title}\n </Button>\n ) : null}\n </Grid>\n <Grid item>\n <Button\n variant=\"contained\"\n size={sm ? \"medium\" : \"large\"}\n color=\"primary\"\n onClick={() => primaryButton.onClick()}\n disabled={primaryButton.disabled}\n >\n {primaryButton.title}\n </Button>\n </Grid>\n </Grid>\n </Fade>\n ) : (\n <Fade in timeout={{ enter: 300, exit: 300 }}>\n <Grid\n container\n wrap=\"nowrap\"\n alignItems=\"center\"\n spacing={sm ? 1 : 2}\n justify=\"flex-end\"\n >\n <Grid item>\n {stepIndex > 0 ? (\n <Button\n variant=\"text\"\n size={sm ? \"medium\" : \"large\"}\n onClick={() => handleStepButton(\"prev\")}\n >\n {steps[stepIndex].prevStepText || \"上一步\"}\n </Button>\n ) : null}\n </Grid>\n <Grid item>\n <Button\n variant=\"text\"\n size={sm ? \"medium\" : \"large\"}\n onClick={() => handleStepButton(\"next\")}\n >\n {steps[stepIndex].nextStepText || \"下一步\"}\n </Button>\n </Grid>\n </Grid>\n </Fade>\n )}\n <SWAPSpace size=\"m\" />\n </Container>\n </div>\n </Paper>\n </ModalOpenEffect>\n </SWAPModalWrap>\n </Fade>\n </Modal>\n );\n};\n\nconst SWAPModalWrap = styled.div`\n outline: 0px;\n position: absolute;\n height: 100vh;\n width: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n .modal_inner {\n border-radius: 9px;\n overflow: hidden;\n position: relative;\n width: 48vw;\n z-index: 2;\n .modal_inner_header {\n position: absolute;\n width: 100%;\n left: 0;\n top: 0;\n background: white;\n z-index: 1;\n }\n .modal_inner_body {\n position: relative;\n overflow-y: auto;\n z-index: 1;\n }\n .modal_inner_bottom {\n position: absolute;\n width: 100%;\n left: 0;\n bottom: 0;\n background: white;\n z-index: 1;\n }\n }\n .full_screen {\n width: 100vw;\n height: 100vh;\n }\n @media screen and (max-width: 960px) {\n align-items: flex-end;\n .modal_inner {\n border-bottom-left-radius: 0px;\n border-bottom-right-radius: 0px;\n width: 100vw;\n }\n }\n`;\n\nexport default SWAPModal;\n","export default function objectToGetParams(object) {\n var params = Object.entries(object)\n .filter(function (_a) {\n var value = _a[1];\n return value !== undefined && value !== null;\n })\n .map(function (_a) {\n var key = _a[0], value = _a[1];\n return encodeURIComponent(key) + \"=\" + encodeURIComponent(String(value));\n });\n return params.length > 0 ? \"?\" + params.join('&') : '';\n}\n","/*!\n Copyright (c) 2017 Jed Watson.\n Licensed under the MIT License (MIT), see\n http://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = [];\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (!arg) continue;\n\n\t\t\tvar argType = typeof arg;\n\n\t\t\tif (argType === 'string' || argType === 'number') {\n\t\t\t\tclasses.push(arg);\n\t\t\t} else if (Array.isArray(arg) && arg.length) {\n\t\t\t\tvar inner = classNames.apply(null, arg);\n\t\t\t\tif (inner) {\n\t\t\t\t\tclasses.push(inner);\n\t\t\t\t}\n\t\t\t} else if (argType === 'object') {\n\t\t\t\tfor (var key in arg) {\n\t\t\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\t\t\tclasses.push(key);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn classes.join(' ');\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nvar __generator = (this && this.__generator) || function (thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (_) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n};\nvar __rest = (this && this.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport React, { Component } from 'react';\nimport cx from 'classnames';\nvar isPromise = function (obj) {\n return !!obj && (typeof obj === 'object' || typeof obj === 'function') && typeof obj.then === 'function';\n};\nvar getBoxPositionOnWindowCenter = function (width, height) { return ({\n left: window.outerWidth / 2 + (window.screenX || window.screenLeft || 0) - width / 2,\n top: window.outerHeight / 2 + (window.screenY || window.screenTop || 0) - height / 2,\n}); };\nvar getBoxPositionOnScreenCenter = function (width, height) { return ({\n top: (window.screen.height - height) / 2,\n left: (window.screen.width - width) / 2,\n}); };\nfunction windowOpen(url, _a, onClose) {\n var height = _a.height, width = _a.width, configRest = __rest(_a, [\"height\", \"width\"]);\n var config = __assign({ height: height,\n width: width, location: 'no', toolbar: 'no', status: 'no', directories: 'no', menubar: 'no', scrollbars: 'yes', resizable: 'no', centerscreen: 'yes', chrome: 'yes' }, configRest);\n var shareDialog = window.open(url, '', Object.keys(config)\n .map(function (key) { return key + \"=\" + config[key]; })\n .join(', '));\n if (onClose) {\n var interval_1 = window.setInterval(function () {\n try {\n if (shareDialog === null || shareDialog.closed) {\n window.clearInterval(interval_1);\n onClose(shareDialog);\n }\n }\n catch (e) {\n /* eslint-disable no-console */\n console.error(e);\n /* eslint-enable no-console */\n }\n }, 1000);\n }\n return shareDialog;\n}\nvar ShareButton = /** @class */ (function (_super) {\n __extends(ShareButton, _super);\n function ShareButton() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.openShareDialog = function (link) {\n var _a = _this.props, onShareWindowClose = _a.onShareWindowClose, _b = _a.windowHeight, windowHeight = _b === void 0 ? 400 : _b, _c = _a.windowPosition, windowPosition = _c === void 0 ? 'windowCenter' : _c, _d = _a.windowWidth, windowWidth = _d === void 0 ? 550 : _d;\n var windowConfig = __assign({ height: windowHeight, width: windowWidth }, (windowPosition === 'windowCenter'\n ? getBoxPositionOnWindowCenter(windowWidth, windowHeight)\n : getBoxPositionOnScreenCenter(windowWidth, windowHeight)));\n windowOpen(link, windowConfig, onShareWindowClose);\n };\n _this.handleClick = function (event) { return __awaiter(_this, void 0, void 0, function () {\n var _a, beforeOnClick, disabled, networkLink, onClick, url, openShareDialogOnClick, opts, link, returnVal;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0:\n _a = this.props, beforeOnClick = _a.beforeOnClick, disabled = _a.disabled, networkLink = _a.networkLink, onClick = _a.onClick, url = _a.url, openShareDialogOnClick = _a.openShareDialogOnClick, opts = _a.opts;\n link = networkLink(url, opts);\n if (disabled) {\n return [2 /*return*/];\n }\n event.preventDefault();\n if (!beforeOnClick) return [3 /*break*/, 2];\n returnVal = beforeOnClick();\n if (!isPromise(returnVal)) return [3 /*break*/, 2];\n return [4 /*yield*/, returnVal];\n case 1:\n _b.sent();\n _b.label = 2;\n case 2:\n if (openShareDialogOnClick) {\n this.openShareDialog(link);\n }\n if (onClick) {\n onClick(event, link);\n }\n return [2 /*return*/];\n }\n });\n }); };\n return _this;\n }\n ShareButton.prototype.render = function () {\n var _a = this.props, beforeOnClick = _a.beforeOnClick, children = _a.children, className = _a.className, disabled = _a.disabled, disabledStyle = _a.disabledStyle, forwardedRef = _a.forwardedRef, networkLink = _a.networkLink, networkName = _a.networkName, onShareWindowClose = _a.onShareWindowClose, openShareDialogOnClick = _a.openShareDialogOnClick, opts = _a.opts, resetButtonStyle = _a.resetButtonStyle, style = _a.style, url = _a.url, windowHeight = _a.windowHeight, windowPosition = _a.windowPosition, windowWidth = _a.windowWidth, rest = __rest(_a, [\"beforeOnClick\", \"children\", \"className\", \"disabled\", \"disabledStyle\", \"forwardedRef\", \"networkLink\", \"networkName\", \"onShareWindowClose\", \"openShareDialogOnClick\", \"opts\", \"resetButtonStyle\", \"style\", \"url\", \"windowHeight\", \"windowPosition\", \"windowWidth\"]);\n var newClassName = cx('react-share__ShareButton', {\n 'react-share__ShareButton--disabled': !!disabled,\n disabled: !!disabled,\n }, className);\n var newStyle = resetButtonStyle\n ? __assign(__assign({ backgroundColor: 'transparent', border: 'none', padding: 0, font: 'inherit', color: 'inherit', cursor: 'pointer' }, style), (disabled && disabledStyle)) : __assign(__assign({}, style), (disabled && disabledStyle));\n return (React.createElement(\"button\", __assign({}, rest, { \"aria-label\": rest['aria-label'] || networkName, className: newClassName, onClick: this.handleClick, ref: forwardedRef, style: newStyle }), children));\n };\n ShareButton.defaultProps = {\n disabledStyle: { opacity: 0.6 },\n openShareDialogOnClick: true,\n resetButtonStyle: true,\n };\n return ShareButton;\n}(Component));\nexport default ShareButton;\n","var __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nimport React, { forwardRef } from 'react';\nimport ShareButton from '../ShareButton';\nfunction createShareButton(networkName, link, optsMap, defaultProps) {\n function CreatedButton(props, ref) {\n var opts = optsMap(props);\n var passedProps = __assign({}, props);\n // remove keys from passed props that are passed as opts\n var optsKeys = Object.keys(opts);\n optsKeys.forEach(function (key) {\n delete passedProps[key];\n });\n return (React.createElement(ShareButton, __assign({}, defaultProps, passedProps, { forwardedRef: ref, networkName: networkName, networkLink: link, opts: optsMap(props) })));\n }\n CreatedButton.displayName = \"ShareButton-\" + networkName;\n return forwardRef(CreatedButton);\n}\nexport default createShareButton;\n","var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar AssertionError = /** @class */ (function (_super) {\n __extends(AssertionError, _super);\n function AssertionError(message) {\n var _this = _super.call(this, message) || this;\n _this.name = 'AssertionError';\n return _this;\n }\n return AssertionError;\n}(Error));\nexport default function assert(value, message) {\n if (!value) {\n throw new AssertionError(message);\n }\n}\n","export default (typeof global !== \"undefined\" ? global :\n typeof self !== \"undefined\" ? self :\n typeof window !== \"undefined\" ? window : {});","// shim for using process in browser\n// based off https://github.com/defunctzombie/node-process/blob/master/browser.js\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\nvar cachedSetTimeout = defaultSetTimout;\nvar cachedClearTimeout = defaultClearTimeout;\nif (typeof global.setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n}\nif (typeof global.clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n}\n\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\nfunction nextTick(fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n}\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nvar title = 'browser';\nvar platform = 'browser';\nvar browser = true;\nvar env = {};\nvar argv = [];\nvar version = ''; // empty string to avoid regexp issues\nvar versions = {};\nvar release = {};\nvar config = {};\n\nfunction noop() {}\n\nvar on = noop;\nvar addListener = noop;\nvar once = noop;\nvar off = noop;\nvar removeListener = noop;\nvar removeAllListeners = noop;\nvar emit = noop;\n\nfunction binding(name) {\n throw new Error('process.binding is not supported');\n}\n\nfunction cwd () { return '/' }\nfunction chdir (dir) {\n throw new Error('process.chdir is not supported');\n}function umask() { return 0; }\n\n// from https://github.com/kumavis/browser-process-hrtime/blob/master/index.js\nvar performance = global.performance || {};\nvar performanceNow =\n performance.now ||\n performance.mozNow ||\n performance.msNow ||\n performance.oNow ||\n performance.webkitNow ||\n function(){ return (new Date()).getTime() };\n\n// generate timestamp or delta\n// see http://nodejs.org/api/process.html#process_process_hrtime\nfunction hrtime(previousTimestamp){\n var clocktime = performanceNow.call(performance)*1e-3;\n var seconds = Math.floor(clocktime);\n var nanoseconds = Math.floor((clocktime%1)*1e9);\n if (previousTimestamp) {\n seconds = seconds - previousTimestamp[0];\n nanoseconds = nanoseconds - previousTimestamp[1];\n if (nanoseconds<0) {\n seconds--;\n nanoseconds += 1e9;\n }\n }\n return [seconds,nanoseconds]\n}\n\nvar startTime = new Date();\nfunction uptime() {\n var currentTime = new Date();\n var dif = currentTime - startTime;\n return dif / 1000;\n}\n\nvar browser$1 = {\n nextTick: nextTick,\n title: title,\n browser: browser,\n env: env,\n argv: argv,\n version: version,\n versions: versions,\n on: on,\n addListener: addListener,\n once: once,\n off: off,\n removeListener: removeListener,\n removeAllListeners: removeAllListeners,\n emit: emit,\n binding: binding,\n cwd: cwd,\n chdir: chdir,\n umask: umask,\n hrtime: hrtime,\n platform: platform,\n release: release,\n config: config,\n uptime: uptime\n};\n\nexport default browser$1;\nexport { addListener, argv, binding, browser, chdir, config, cwd, emit, env, hrtime, nextTick, off, on, once, platform, release, removeAllListeners, removeListener, title, umask, uptime, version, versions };\n","import assert from './utils/assert';\nimport createShareButton from './hocs/createShareButton';\nimport objectToGetParams from './utils/objectToGetParams';\nfunction lineLink(url, _a) {\n var title = _a.title;\n assert(url, 'line.url');\n return ('https://social-plugins.line.me/lineit/share' +\n objectToGetParams({\n url: url,\n text: title,\n }));\n}\nvar LineShareButton = createShareButton('line', lineLink, function (props) { return ({\n title: props.title,\n}); }, {\n windowWidth: 500,\n windowHeight: 500,\n});\nexport default LineShareButton;\n","import React, { useEffect, useState } from \"react\";\nimport styled from \"styled-components\";\nimport { LineShareButton } from \"react-share\";\n\nimport { SWAPShareProps } from \"./SWAPShare.types\";\n\nconst SWAPShare: React.FC<SWAPShareProps> = ({\n url,\n size = 36,\n emailSubject = \"\",\n sharedContent = \"\",\n}) => {\n const [sharedUrl, setSharedUrl] = useState(\"\");\n\n useEffect(() => {\n if (url && url.length > 0) {\n setSharedUrl(url);\n } else {\n setSharedUrl(window.location.href);\n }\n }, []);\n\n const handleEmailOnClick = () => {\n /**\n * Relative issue: https://github.com/nygardk/react-share/issues/292\n */\n const email = encodeURI(`mailto:\n ?subject=${emailSubject}&body=${sharedContent}\\n\\n${sharedUrl}`);\n window.location.href = email;\n };\n\n const handleMessengerOnClick = () => {\n /**\n * Relative issue\n * https://github.com/nygardk/react-share/issues/288\n * https://stackoverflow.com/questions/34675419/share-url-in-facebook-messenger-from-web#\n */\n const appId = 549090209290719;\n const mobileDevide = /iPhone|iPad|iPod|Android/i.test(navigator.userAgent);\n const mobile =\n \"fb-messenger://share?link=\" +\n encodeURIComponent(`${sharedUrl}`) +\n `&app_id=` +\n encodeURIComponent(appId);\n\n const desktop = `https://www.facebook.com/dialog/send?link=${encodeURIComponent(\n sharedUrl\n )}&redirect_uri=${encodeURIComponent(sharedUrl)}&app_id=${appId}`;\n window.open(mobileDevide ? mobile : desktop, \"_blank\");\n };\n\n return (\n <SWAPShareWrap>\n {[\n {\n el: (\n <div\n className=\"swap_share_icon\"\n onClick={() => handleMessengerOnClick()}\n >\n <svg\n width=\"40\"\n height=\"40\"\n viewBox=\"0 0 40 40\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style={{ position: \"absolute\", left: 0, top: 0 }}\n >\n <path\n d=\"M0 10C0 4.47715 4.47715 0 10 0H30C35.5228 0 40 4.47715 40 10V30C40 35.5228 35.5228 40 30 40H10C4.47715 40 0 35.5228 0 30V10Z\"\n fill=\"#ECECEC\"\n />\n <path\n d=\"M19.9999 10C14.3599 10 9.99988 14.13 9.99988 19.7C9.99988 22.61 11.1899 25.14 13.1399 26.87C13.2999 27 13.3999 27.22 13.4099 27.44L13.4599 29.22C13.4999 29.79 14.0699 30.16 14.5899 29.93L16.5699 29.06C16.7399 29 16.9299 28.97 17.0999 29C17.9999 29.27 18.9999 29.4 19.9999 29.4C25.6399 29.4 29.9999 25.27 29.9999 19.7C29.9999 14.13 25.6399 10 19.9999 10ZM25.9999 17.46L23.0699 22.13C22.5999 22.86 21.5999 23.05 20.8999 22.5L18.5599 20.77C18.3499 20.61 18.0499 20.61 17.8399 20.77L14.6799 23.17C14.2599 23.5 13.7099 23 13.9999 22.54L16.9299 17.87C17.3999 17.14 18.3999 16.95 19.0999 17.47L21.4399 19.23C21.6599 19.39 21.9499 19.39 22.1599 19.23L25.3199 16.83C25.7399 16.5 26.2899 17 25.9999 17.46Z\"\n fill=\"#6F6F6F\"\n />\n </svg>\n </div>\n ),\n },\n {\n el: (\n <LineShareButton url={sharedUrl} title={sharedContent}>\n <svg\n width=\"40\"\n height=\"40\"\n viewBox=\"0 0 40 40\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style={{ position: \"absolute\", left: 48, top: 0 }}\n >\n <path\n d=\"M0 10C0 4.47715 4.47715 0 10 0H30C35.5228 0 40 4.47715 40 10V30C40 35.5228 35.5228 40 30 40H10C4.47715 40 0 35.5228 0 30V10Z\"\n fill=\"#ECECEC\"\n />\n <path\n d=\"M10 20C10 14.4772 14.4772 10 20 10C25.5228 10 30 14.4772 30 20C30 25.5228 25.5228 30 20 30C14.4772 30 10 25.5228 10 20Z\"\n fill=\"#6F6F6F\"\n />\n <path\n d=\"M20.1666 14.667C16.7666 14.667 14 16.8957 14 19.6352C14 22.0912 16.1938 24.148 19.1573 24.5369C19.3581 24.5799 19.6314 24.6683 19.7006 24.8388C19.7628 24.9936 19.7413 25.236 19.7205 25.3924C19.7205 25.3924 19.6481 25.8244 19.6325 25.9164C19.6057 26.0712 19.5086 26.5218 20.1666 26.2464C20.8248 25.9711 23.718 24.1704 25.0118 22.6919C25.9053 21.719 26.3333 20.7316 26.3333 19.6352C26.3333 16.8957 23.5671 14.667 20.1666 14.667Z\"\n fill=\"white\"\n />\n <path\n d=\"M18.4525 18.3335C18.3868 18.3335 18.3334 18.3886 18.3334 18.4564V21.2106C18.3334 21.2785 18.3868 21.3335 18.4525 21.3335H18.881C18.9468 21.3335 19 21.2785 19 21.2106V18.4564C19 18.3886 18.9468 18.3335 18.881 18.3335H18.4525Z\"\n fill=\"#6F6F6F\"\n />\n <path\n d=\"M21.8746 18.3335H21.4235C21.3543 18.3335 21.2982 18.3886 21.2982 18.4564V20.0927L20.014 18.3881C20.011 18.3838 20.0077 18.3797 20.0042 18.3757L20.0034 18.3749C20.0009 18.3722 19.9984 18.3697 19.9958 18.3673C19.9951 18.3666 19.9944 18.366 19.9935 18.3652C19.9914 18.3633 19.9892 18.3615 19.9868 18.3598C19.9859 18.3588 19.9848 18.3581 19.9836 18.3572C19.9814 18.3558 19.9793 18.3542 19.9771 18.3529C19.9759 18.352 19.9746 18.3513 19.9733 18.3507C19.9711 18.3494 19.9688 18.348 19.9666 18.3469C19.9653 18.3463 19.964 18.3456 19.9627 18.3451C19.9603 18.344 19.958 18.3429 19.9555 18.3421C19.9541 18.3416 19.9528 18.3411 19.9515 18.3406C19.949 18.3398 19.9465 18.3389 19.9439 18.3383C19.9426 18.3379 19.9411 18.3376 19.9396 18.3371C19.9372 18.3366 19.9348 18.336 19.9325 18.3356C19.9307 18.3353 19.9289 18.3351 19.9272 18.335C19.925 18.3345 19.9227 18.3343 19.9205 18.3341C19.9184 18.3339 19.9163 18.3339 19.9141 18.3337C19.9125 18.3337 19.9113 18.3335 19.9097 18.3335H19.4586C19.3895 18.3335 19.3333 18.3886 19.3333 18.4564V21.2106C19.3333 21.2785 19.3895 21.3335 19.4586 21.3335H19.9097C19.979 21.3335 20.0351 21.2785 20.0351 21.2106V19.5748L21.3209 21.2815C21.3298 21.2939 21.3408 21.3039 21.3527 21.3119C21.3531 21.3122 21.3536 21.3125 21.354 21.3129C21.3566 21.3145 21.3591 21.316 21.3617 21.3175C21.363 21.3182 21.3641 21.3187 21.3653 21.3193C21.3672 21.3204 21.3693 21.3214 21.3712 21.3222C21.3733 21.3231 21.3752 21.3239 21.3774 21.3248C21.3786 21.3253 21.3799 21.3257 21.3811 21.3261C21.3841 21.3272 21.3868 21.328 21.3896 21.3289C21.3902 21.3289 21.3908 21.3291 21.3914 21.3293C21.4017 21.3319 21.4124 21.3335 21.4235 21.3335H21.8746C21.9439 21.3335 21.9999 21.2785 21.9999 21.2106V18.4564C21.9999 18.3886 21.9439 18.3335 21.8746 18.3335Z\"\n fill=\"#6F6F6F\"\n />\n <path\n d=\"M17.8782 20.6438H16.6837V18.4566C16.6837 18.3886 16.6291 18.3335 16.5618 18.3335H16.1221C16.0547 18.3335 16 18.3886 16 18.4566V21.2103V21.2105C16 21.2436 16.0131 21.2735 16.0341 21.2956C16.0346 21.2962 16.0351 21.2968 16.0358 21.2974C16.0364 21.298 16.037 21.2985 16.0376 21.2991C16.0596 21.3204 16.0891 21.3335 16.1219 21.3335H17.8782C17.9456 21.3335 18 21.2782 18 21.2103V20.7669C18 20.6989 17.9456 20.6438 17.8782 20.6438Z\"\n fill=\"#6F6F6F\"\n />\n <path\n d=\"M24.2115 19.0232C24.2789 19.0232 24.3334 18.9682 24.3334 18.9001V18.4567C24.3334 18.3887 24.2789 18.3335 24.2115 18.3335H22.4554H22.4552C22.4223 18.3335 22.3926 18.3468 22.3706 18.3683C22.3701 18.3688 22.3695 18.3691 22.3692 18.3696C22.3685 18.3703 22.3679 18.3711 22.3673 18.3718C22.3463 18.3938 22.3334 18.4236 22.3334 18.4566V18.4567V21.2104V21.2105C22.3334 21.2436 22.3465 21.2735 22.3675 21.2956C22.368 21.2962 22.3686 21.2969 22.3692 21.2974C22.3697 21.298 22.3704 21.2986 22.371 21.2991C22.3928 21.3203 22.4225 21.3335 22.4552 21.3335H24.2115C24.2789 21.3335 24.3334 21.2782 24.3334 21.2104V20.7669C24.3334 20.6991 24.2789 20.6438 24.2115 20.6438H23.0172V20.1783H24.2115C24.2789 20.1783 24.3334 20.1231 24.3334 20.0552V19.6118C24.3334 19.5438 24.2789 19.4886 24.2115 19.4886H23.0172V19.0232H24.2115Z\"\n fill=\"#6F6F6F\"\n />\n </svg>\n </LineShareButton>\n ),\n },\n {\n el: (\n <div className=\"swap_share_icon\" onClick={handleEmailOnClick}>\n <svg\n width=\"40\"\n height=\"40\"\n viewBox=\"0 0 40 40\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style={{ position: \"absolute\", left: 96, top: 0 }}\n >\n <path\n d=\"M0 10C0 4.47715 4.47715 0 10 0H30C35.5228 0 40 4.47715 40 10V30C40 35.5228 35.5228 40 30 40H10C4.47715 40 0 35.5228 0 30V10Z\"\n fill=\"#ECECEC\"\n />\n <path\n d=\"M28 16L20 21L12 16V14L20 19L28 14V16ZM28 12H12C10.89 12 10 12.89 10 14V26C10 26.5304 10.2107 27.0391 10.5858 27.4142C10.9609 27.7893 11.4696 28 12 28H28C28.5304 28 29.0391 27.7893 29.4142 27.4142C29.7893 27.0391 30 26.5304 30 26V14C30 12.89 29.1 12 28 12Z\"\n fill=\"#6F6F6F\"\n />\n </svg>\n </div>\n ),\n },\n ].map((item, index) => (\n <div key={`share_btn_${index}`}>{item.el}</div>\n ))}\n </SWAPShareWrap>\n );\n};\n\nconst SWAPShareWrap = styled.div`\n height: 40px;\n position: relative;\n .swap_share_icon {\n cursor: pointer;\n }\n`;\n\nexport default SWAPShare;\n","import {\n Select,\n MenuItem,\n InputLabel,\n FormControl,\n Typography,\n Grid,\n TextField,\n Button,\n Fade,\n} from \"@material-ui/core\";\nimport React, { useEffect, useState } from \"react\";\nimport styled from \"styled-components\";\n// import Style from \"styled-jsx/style\";\n\nimport SWAPModal from \"../SWAPModal/SWAPModal\";\nimport SWAPSpace from \"../SWAPSpace/SWAPSpace\";\n\nimport {\n TaxFiledValueProps,\n SWAPTaxFieldProps,\n ExpenseCodeProps,\n IncomeCodeProps,\n} from \"./SWAPTaxField.types\";\n\nconst SWAPTaxField: React.FC<SWAPTaxFieldProps> = ({\n onChange,\n taxDescription,\n}) => {\n const typeFieldLabel = \"案件類別\";\n const typeFieldDefault = \"請選擇\";\n const caseFieldLabel = \"案件內容\";\n const optionFieldDefault = \"請選擇\";\n\n const [taxDescriptionValue, setTaxDescriptionValue] = useState(\"\");\n const [type, setType] = useState(typeFieldDefault);\n const [option, setOption] = useState(optionFieldDefault);\n const [modal, setModal] = useState(false);\n const [modalMsg, setModalMsg] = useState(\"\");\n const [modalErrorMsg, setModalErrorMsg] = useState(\"\");\n const handleTypeChange = (typeCode: string) => {\n handleOptionChange(optionFieldDefault);\n setType(typeCode);\n };\n const [modalIncome, setModalIncome]: any = useState(\"\");\n const [modalExpense, setModalExpense]: any = useState(\"\");\n\n const handleOptionChange = (optionLabel) => {\n /**\n * 1. 改變選項的狀態\n * 2. 更新對應的類別代碼\n */\n setOption(optionLabel);\n let sourceOption = caseOptions.filter((i) => i[0] === optionLabel)[0];\n if (sourceOption && onChange) {\n let incomeCode = sourceOption[1];\n let expenseCode = sourceOption[2];\n let incomeLabel = SWAPTaxIncomeLabel(incomeCode);\n let expenseLabel = SWAPTaxExpenseLabel(expenseCode);\n let taxDescription = SWAPTaxDescription(incomeCode, expenseCode);\n let value: TaxFiledValueProps = {\n incomeCode,\n expenseCode,\n incomeLabel,\n expenseLabel,\n taxDescription,\n };\n onChange(value);\n setTaxDescriptionValue(taxDescription);\n }\n };\n\n const handleModalClear = () => {\n setModalIncome(\"\");\n setModalExpense(\"\");\n setModalErrorMsg(\"\");\n setModalMsg(\"\");\n };\n\n const handleModalTaxDescription = () => {\n try {\n if (modalIncome.length === 0 || !modalIncome) throw \"請選擇所得類別\";\n if (\n (modalIncome !== \"50\" && modalExpense.length === 0) ||\n (modalIncome !== \"50\" && !modalExpense)\n )\n throw \"請選擇費用類別\";\n /**清空外部欄位 */\n setOption(optionFieldDefault);\n setType(typeFieldDefault);\n /**顯示成功訊息 */\n setModalMsg(\"已設定\");\n /**呼叫 onChnage props */\n let value = {\n incomeCode: modalIncome,\n expenseCode: modalExpense,\n incomeLabel: SWAPTaxIncomeLabel(modalIncome),\n expenseLabel: SWAPTaxExpenseLabel(modalExpense),\n taxDescription: SWAPTaxDescription(modalIncome, modalExpense),\n };\n onChange(value);\n setTaxDescriptionValue(SWAPTaxDescription(modalIncome, modalExpense));\n } catch (err) {\n setModalErrorMsg(err);\n }\n };\n\n useEffect(() => {\n if (taxDescription && taxDescription.length > 0) {\n setTaxDescriptionValue(taxDescription);\n }\n }, [taxDescription]);\n\n return (\n <div>\n <SWAPTaxFieldWrap>\n <Grid container spacing={1}>\n {/**案件類別 */}\n <Grid item xs={4} sm={4} md={4} lg={4}>\n <FormControl variant=\"outlined\" style={{ width: \"100%\" }}>\n <InputLabel htmlFor=\"case_type\">{typeFieldLabel}</InputLabel>\n <Select\n variant=\"outlined\"\n label={`${typeFieldLabel}`}\n value={type}\n onChange={(e) => handleTypeChange(`${e.target.value}`)}\n >\n <MenuItem disabled value={typeFieldDefault}>\n <Typography variant=\"body2\" color=\"textSecondary\">\n {typeFieldDefault}\n </Typography>\n </MenuItem>\n {typeOptions.map((option, index) => (\n <MenuItem key={`type_${index}`} value={`${option[1]}`}>\n {option[0]}\n </MenuItem>\n ))}\n </Select>\n </FormControl>\n </Grid>\n {/**案件內容 */}\n <Grid item xs={8} sm={8} md={8} lg={8}>\n {/* <Style jsx id=\"option_styled\">\n {`.option_item::-webkit-scrollbar {height: 0 !important; width: 0 !important;}`}\n </Style> */}\n <FormControl variant=\"outlined\" style={{ width: \"100%\" }}>\n <InputLabel htmlFor=\"case_type\">{caseFieldLabel}</InputLabel>\n <Select\n variant=\"outlined\"\n label={`${caseFieldLabel}`}\n value={option}\n onChange={(e) => handleOptionChange(e.target.value)}\n >\n <MenuItem disabled value={optionFieldDefault}>\n <Typography variant=\"body2\" color=\"textSecondary\">\n {optionFieldDefault}\n </Typography>\n </MenuItem>\n {caseOptions\n .filter((i) => i[3] === type)\n .map((option, index) => (\n <MenuItem\n key={`case_${index}`}\n value={option[0]}\n className=\"option_item\"\n style={{\n msOverflowStyle: \"none\",\n scrollbarWidth: \"none\",\n width: \"100%\",\n overflowX: \"auto\",\n overflowY: \"hidden\",\n }}\n >\n {option[0]}\n </MenuItem>\n ))}\n </Select>\n </FormControl>\n </Grid>\n {/**申報類別 */}\n <Grid item xs={12} sm={12} md={12} lg={12}>\n <SWAPSpace />\n <TextField\n style={{ pointerEvents: \"none\" }}\n fullWidth\n variant=\"outlined\"\n label=\"申報類別\"\n value={taxDescriptionValue || \"\"}\n helperText={\n <span style={{ textAlign: \"right\", display: \"block\" }}>\n <Button\n size=\"small\"\n color=\"primary\"\n style={{ pointerEvents: \"all\" }}\n onClick={() => {\n setModal(true);\n handleModalClear();\n }}\n >\n 找不到對應的案件內容嗎?點此手動設定\n </Button>\n <SWAPModal\n open={modal}\n title=\"手動設定申報類別\"\n primaryButton={{\n title: \"確認設定\",\n onClick: () => handleModalTaxDescription(),\n }}\n onClose={() => {\n setModal(false);\n }}\n successMessage={modalMsg}\n errorMessage={modalErrorMsg}\n closeWindowOnSuccessMessage\n children={\n <div>\n <Typography variant=\"body1\">\n 由於自由工作者的案件內容多樣,若您的案件內容不在 SWAP\n 收錄的下拉選單中可在此手動設定本次案件的申報類別。\n </Typography>\n <SWAPSpace />\n <SWAPSpace />\n <SWAPSpace />\n <Grid container spacing={1} alignContent=\"flex-start\">\n <Grid\n item\n xs={\n modalIncome === \"9A\" || modalIncome === \"9B\"\n ? 6\n : 12\n }\n sm={\n modalIncome === \"9A\" || modalIncome === \"9B\"\n ? 6\n : 12\n }\n md={\n modalIncome === \"9A\" || modalIncome === \"9B\"\n ? 6\n : 12\n }\n lg={\n modalIncome === \"9A\" || modalIncome === \"9B\"\n ? 6\n : 12\n }\n >\n <FormControl\n variant=\"outlined\"\n style={{ width: \"100%\" }}\n >\n <InputLabel htmlFor=\"case_type\">\n 所得類別\n </InputLabel>\n <Select\n variant=\"outlined\"\n label=\"請選擇所得類別\"\n value={modalIncome}\n onChange={(e) => {\n setModalIncome(e.target.value);\n setModalExpense(\"\");\n setModalErrorMsg(\"\");\n }}\n >\n {SWAPIncomeTypes.map((option, index) => (\n <MenuItem\n key={`case_${index}`}\n value={option.code}\n >\n {option.code} {option.label}\n </MenuItem>\n ))}\n </Select>\n </FormControl>\n </Grid>\n <Grid item xs={6} sm={6} md={6} lg={6}>\n {(() => {\n if (\n modalIncome === \"9A\" ||\n modalIncome === \"9B\"\n ) {\n let options = SWAPExpenseTypes.filter(\n (i) => i.source === modalIncome\n );\n return (\n <div>\n <Fade in>\n <FormControl\n variant=\"outlined\"\n style={{ width: \"100%\" }}\n >\n <InputLabel htmlFor=\"case_type\">\n 費用類別\n </InputLabel>\n <Select\n variant=\"outlined\"\n label=\"費用類別\"\n value={modalExpense}\n onChange={(e) => {\n setModalExpense(e.target.value);\n setModalErrorMsg(\"\");\n }}\n >\n {options.map((option, index) => (\n <MenuItem\n key={`case_${index}`}\n value={option.code}\n >\n [{option.code}] {option.label}\n </MenuItem>\n ))}\n </Select>\n </FormControl>\n </Fade>\n </div>\n );\n } else {\n return <div />;\n }\n })()}\n </Grid>\n </Grid>\n </div>\n }\n />\n </span>\n }\n />\n </Grid>\n </Grid>\n </SWAPTaxFieldWrap>\n </div>\n );\n};\n\nconst SWAPTaxFieldWrap = styled.div`\n .option_item::-webkit-scrollbar {\n width: 0 !important;\n height: 0 !important;\n }\n`;\n\nexport default SWAPTaxField;\n\nconst typeOptions: Array<[string, string]> = [\n [\"文字\", \"1\"],\n [\"設計\", \"2\"],\n [\"行銷\", \"3\"],\n [\"程式\", \"4\"],\n [\"影像\", \"5\"],\n [\"銷售\", \"6\"],\n [\"其他\", \"0\"],\n];\n\nconst caseOptions: Array<[\n string,\n IncomeCodeProps,\n ExpenseCodeProps,\n string\n]> = [\n [\"文案寫手\", \"50\", \"\", \"1\"],\n [\"改稿費、審查費、審定費等修改、增刪、調整文稿之文字\", \"50\", \"\", \"1\"],\n [\"傳單、海報、Banner等設計\", \"50\", \"\", \"2\"],\n [\"3D繪圖\", \"50\", \"\", \"2\"],\n [\"Logo、商標設計\", \"50\", \"\", \"2\"],\n [\"商品包裝設計\", \"50\", \"\", \"2\"],\n [\"網頁、APP等UI/UX設計\", \"50\", \"\", \"2\"],\n [\"插畫、貼圖等設計\", \"50\", \"\", \"2\"],\n [\"廣告投放\", \"50\", \"\", \"3\"],\n [\"部落客寫推薦文、業配文\", \"50\", \"\", \"3\"],\n [\"網紅、直播主以貼文、影片、直播等方式廣告或業配\", \"50\", \"\", \"3\"],\n [\"自備攝影棚或攝影器材進行平面攝影\", \"9A\", \"90\", \"5\"],\n [\"業主提供所需工具進行平面攝影\", \"50\", \"\", \"5\"],\n [\"行銷企劃,且負擔成本費用達收入20%\", \"9A\", \"90\", \"3\"],\n [\"行銷企劃,且負擔成本費用未達收入20%\", \"50\", \"\", \"3\"],\n [\n \"房地產仲介或代銷,無底薪且業主未免費提供辦公空間、電腦等任何形式之行政資源\",\n \"9A\",\n \"76\",\n \"6\",\n ],\n [\n \"房地產仲介或代銷,有底薪或業主有免費提供辦公空間、電腦等任何形式之行政資源\",\n \"50\",\n \"\",\n \"6\",\n ],\n [\"展場規劃,且負擔成本費用達收入20%\", \"9A\", \"90\", \"0\"],\n [\"展場規劃,且負擔成本費用未達收入20%\", \"50\", \"\", \"0\"],\n [\"自備攝影棚或攝影器材進行動態攝影\", \"9A\", \"90\", \"5\"],\n [\"業主提供所需工具進行動態攝影\", \"50\", \"\", \"5\"],\n [\n \"具有知識、技藝、學術之傳授、上課等性質之教育訓練、研討會、研習會、書報討論課程、專題討論課程、講習會等\",\n \"50\",\n \"\",\n \"0\",\n ],\n [\"未具授課性質之專題演講\", \"9B\", \"98\", \"0\"],\n [\n \"演員、歌手、模特兒、節目主持人、節目主持人、舞蹈表演人、相聲表演人、特技表演人、樂器表演人、魔術表演人、其他表演人\",\n \"9A\",\n \"70\",\n \"0\",\n ],\n [\n \"非以演藝人員等表演人專長進行廣告代言,例如醫師代言、網紅代言等\",\n \"50\",\n \"\",\n \"0\",\n ],\n [\"書籍翻譯\", \"9B\", \"98\", \"1\"],\n [\"一般文件翻譯\", \"50\", \"\", \"1\"],\n [\"口譯費\", \"50\", \"\", \"0\"],\n [\"導演,且負擔成本費用達收入20%\", \"9A\", \"90\", \"0\"],\n [\"導演,且負擔成本費用未達收入20%\", \"50\", \"\", \"0\"],\n [\"室內設計,且負擔成本費用達收入20%\", \"9A\", \"90\", \"0\"],\n [\"室內設計,且負擔成本費用未達收入20%\", \"50\", \"\", \"0\"],\n [\"政府單位補助案、各類企畫書、專案報告等之潤筆費或撰寫費\", \"50\", \"\", \"1\"],\n [\"剪輯師\", \"50\", \"\", \"3\"],\n [\"CIS識別設計\", \"50\", \"\", \"2\"],\n [\"網頁、APP、系統軟體、遊戲、動畫等之程式設計、開發\", \"9A\", \"92\", \"4\"],\n [\"服裝與KOL經營規劃\", \"50\", \"\", \"0\"],\n [\"命理卜卦\", \"9A\", \"62\", \"0\"],\n [\"健身教練,無保障底薪且自備器材、空間、音樂等\", \"9A\", \"90\", \"0\"],\n [\"健身教練,有保障底薪或無自備器材、空間、音樂等\", \"50\", \"\", \"0\"],\n [\n \"非自行出版之稿費、版稅、樂譜、作曲、編劇、漫畫及演講之鐘點費\",\n \"9B\",\n \"98\",\n \"1\",\n ],\n [\"自行出版之稿費、版稅、作曲、編劇、漫畫等\", \"9B\", \"99\", \"1\"],\n [\n \"非上述類別且符合以下大部分要件:(1)未約定固定時間、地點提供勞務、(2)具備一定專業、(3)不定期支付一定金額報酬、(4)除提供勞務外另行負擔一定金額之成本費用、(5)與業主合約不具僱傭關係\",\n \"9A\",\n \"90\",\n \"0\",\n ],\n [\n \"非上述類別且符合以下大部分要件:(1)有約定固定時間、地點提供勞務、(2)未具備一定專業、(3)定期支付一定金額報酬、(4)除提供勞務外負擔成本費用不多或沒有、(5)與業主合約具僱傭關係\",\n \"50\",\n \"\",\n \"0\",\n ],\n];\n\nconst SWAPIncomeTypes: Array<{\n code: IncomeCodeProps;\n label: string;\n}> = [\n {\n code: \"9A\",\n label: \"執行業務所得\",\n },\n {\n code: \"9B\",\n label: \"稿費\",\n },\n {\n code: \"50\",\n label: \"薪資所得\",\n },\n];\nconst SWAPExpenseTypes: Array<{\n code: ExpenseCodeProps;\n source: IncomeCodeProps;\n label: string;\n expenseRatio: string;\n}> = [\n { label: \"律師\", expenseRatio: \"30%\", code: \"10\", source: \"9A\" },\n { label: \"會計師\", expenseRatio: \"30%\", code: \"11\", source: \"9A\" },\n { label: \"精算師\", expenseRatio: \"20%\", code: \"12\", source: \"9A\" },\n { label: \"地政士\", expenseRatio: \"30%\", code: \"13\", source: \"9A\" },\n { label: \"記帳士\", expenseRatio: \"30%\", code: \"14\", source: \"9A\" },\n { label: \"仲裁人\", expenseRatio: \"15%\", code: \"15\", source: \"9A\" },\n { label: \"民間公證人\", expenseRatio: \"30%\", code: \"16\", source: \"9A\" },\n { label: \"不動產估價師\", expenseRatio: \"35%\", code: \"17\", source: \"9A\" },\n {\n label: \"受委託代辦國有非公用不動產之承租、續租、過戶及繼承等申請者\",\n expenseRatio: \"30%\",\n code: \"18\",\n source: \"9A\",\n },\n {\n label: \"記帳及報稅代理業人\",\n expenseRatio: \"30%\",\n code: \"19\",\n source: \"9A\",\n },\n { label: \"技師\", expenseRatio: \"35%\", code: \"20\", source: \"9A\" },\n { label: \"建築師\", expenseRatio: \"35%\", code: \"21\", source: \"9A\" },\n { label: \"公共安檢人員\", expenseRatio: \"35%\", code: \"22\", source: \"9A\" },\n {\n label: \"未具會計師資格,辦理工商登記等業務者\",\n expenseRatio: \"30%\",\n code: \"23\",\n source: \"9A\",\n },\n { label: \"工匠(工資收入)\", expenseRatio: \"20%\", code: \"24\", source: \"9A\" },\n { label: \"工匠(工料收入)\", expenseRatio: \"62%\", code: \"25\", source: \"9A\" },\n { label: \"引水人\", expenseRatio: \"25%\", code: \"26\", source: \"9A\" },\n {\n label: \"律師配合政府政策辦理法律扶助案件之收入\",\n expenseRatio: \"50%\",\n code: \"27\",\n source: \"9A\",\n },\n { label: \"內科醫師\", expenseRatio: \"40%\", code: \"30\", source: \"9A\" },\n { label: \"外科醫師\", expenseRatio: \"45%\", code: \"31\", source: \"9A\" },\n { label: \"小兒科醫師\", expenseRatio: \"40%\", code: \"32\", source: \"9A\" },\n { label: \"婦產科醫師\", expenseRatio: \"45%\", code: \"33\", source: \"9A\" },\n { label: \"眼科醫師\", expenseRatio: \"40%\", code: \"34\", source: \"9A\" },\n { label: \"耳鼻喉科醫師\", expenseRatio: \"40%\", code: \"35\", source: \"9A\" },\n { label: \"牙科醫師\", expenseRatio: \"40%\", code: \"36\", source: \"9A\" },\n { label: \"精神科醫師\", expenseRatio: \"46%\", code: \"37\", source: \"9A\" },\n { label: \"骨科醫師\", expenseRatio: \"45%\", code: \"38\", source: \"9A\" },\n { label: \"其他科別醫師\", expenseRatio: \"43%\", code: \"39\", source: \"9A\" },\n {\n label: \"助產師(士)\",\n expenseRatio: \"31%\",\n code: \"40\",\n source: \"9A\",\n },\n { label: \"藥師\", expenseRatio: \"20%\", code: \"41\", source: \"9A\" },\n {\n label: \"醫事檢驗師(生)\",\n expenseRatio: \"43%\",\n code: \"42\",\n source: \"9A\",\n },\n { label: \"營養師\", expenseRatio: \"20%\", code: \"45\", source: \"9A\" },\n {\n label: \"醫療機構醫師經核准前往他醫療機構從事醫療業務且不具僱傭關係者\",\n expenseRatio: \"10%\",\n code: \"46\",\n source: \"9A\",\n },\n { label: \"獸醫師\", expenseRatio: \"32%\", code: \"47\", source: \"9A\" },\n { label: \"皮膚科醫師\", expenseRatio: \"40%\", code: \"48\", source: \"9A\" },\n { label: \"家庭醫學科醫師\", expenseRatio: \"40%\", code: \"49\", source: \"9A\" },\n { label: \"中醫師\", expenseRatio: \"20%\", code: \"50\", source: \"9A\" },\n { label: \"語言治療師\", expenseRatio: \"20%\", code: \"51\", source: \"9A\" },\n { label: \"人壽保險醫療檢查\", expenseRatio: \"35%\", code: \"52\", source: \"9A\" },\n { label: \"物理治療師\", expenseRatio: \"43%\", code: \"53\", source: \"9A\" },\n { label: \"職能治療師\", expenseRatio: \"43%\", code: \"54\", source: \"9A\" },\n { label: \"心理師\", expenseRatio: \"20%\", code: \"55\", source: \"9A\" },\n { label: \"牙體技術師\", expenseRatio: \"40%\", code: \"56\", source: \"9A\" },\n {\n label:\n \"西醫師(配合政府政策辦理老人、兒童、婦女、中低收入者、身心障礙者及其他特定對象補助計畫之業務收入)\",\n expenseRatio: \"78%\",\n code: \"57\",\n source: \"9A\",\n },\n {\n label: \"西醫師(自費疫苗注射收入)\",\n expenseRatio: \"78%\",\n code: \"58\",\n source: \"9A\",\n },\n {\n label: \"西醫師(C型肝炎全口服新藥健保給付收入)\",\n expenseRatio: \"96%\",\n code: \"59\",\n source: \"9A\",\n },\n { label: \"書畫家、版畫家\", expenseRatio: \"30%\", code: \"61\", source: \"9A\" },\n { label: \"命理卜卦\", expenseRatio: \"20%\", code: \"62\", source: \"9A\" },\n {\n label:\n \"表演人(演員、歌手、模特兒、節目主持人、舞蹈表演人、相聲表演人、特技表演人、樂器表演人、魔術表演人、其他表演人)\",\n expenseRatio: \"45%\",\n code: \"70\",\n source: \"9A\",\n },\n { label: \"保險經紀人\", expenseRatio: \"26%\", code: \"71\", source: \"9A\" },\n { label: \"節目製作人\", expenseRatio: \"45%\", code: \"72\", source: \"9A\" },\n {\n label: \"公益彩券立即型彩券經銷商\",\n expenseRatio: \"60%\",\n code: \"73\",\n source: \"9A\",\n },\n { label: \"一般經紀人\", expenseRatio: \"20%\", code: \"76\", source: \"9A\" },\n { label: \"其他\", expenseRatio: \"0%\", code: \"90\", source: \"9A\" },\n { label: \"商標代理人\", expenseRatio: \"30%\", code: \"91\", source: \"9A\" },\n { label: \"程式設計師\", expenseRatio: \"20%\", code: \"92\", source: \"9A\" },\n { label: \"專利師及專利代理\", expenseRatio: \"30%\", code: \"93\", source: \"9A\" },\n {\n label: \"未具律師資格,辦理訴訟代理人業務\",\n expenseRatio: \"23%\",\n code: \"94\",\n source: \"9A\",\n },\n {\n label: \"未具建築師資格,辦理建築規劃設計及監造等業務者\",\n expenseRatio: \"35%\",\n code: \"95\",\n source: \"9A\",\n },\n {\n label: \"未具地政士資格,辦理土地登記等業務者\",\n expenseRatio: \"30%\",\n code: \"96\",\n source: \"9A\",\n },\n {\n label: \"受大陸地區人民委託辦理繼承、公法給付或其他事務者\",\n expenseRatio: \"23%\",\n code: \"97\",\n source: \"9A\",\n },\n { label: \"自行出版\", expenseRatio: \"30%\", code: \"99\", source: \"9B\" },\n { label: \"非自行出版\", expenseRatio: \"75%\", code: \"98\", source: \"9B\" },\n];\n\nconst SWAPTaxIncomeLabel = (incomeCode: IncomeCodeProps) => {\n if (incomeCode) {\n return (\n SWAPIncomeTypes.filter((type) => type.code === incomeCode)[0]?.label || \"\"\n );\n } else {\n return \"\";\n }\n};\n\nconst SWAPTaxExpenseLabel = (expenseCode: ExpenseCodeProps) => {\n if (expenseCode) {\n return (\n SWAPExpenseTypes.filter((type) => type.code === expenseCode)[0]?.label ||\n \"\"\n );\n } else {\n return \"\";\n }\n};\n\nconst SWAPTaxDescription = (\n incomeCode: IncomeCodeProps,\n expenseCode: ExpenseCodeProps\n) => {\n let incomeLabel = SWAPTaxIncomeLabel(incomeCode);\n let expenseLabel = SWAPTaxExpenseLabel(expenseCode);\n let taxDescription = `${incomeCode} ${incomeLabel}${\n expenseLabel.length > 0 ? ` - [${expenseCode}] ${expenseLabel}` : \"\"\n }`;\n if (incomeCode && expenseCode) {\n /**執行業務 */\n return taxDescription;\n } else if (incomeCode === \"50\") {\n /**薪資 */\n return `${incomeCode} ${incomeLabel}`;\n } else {\n return \"\";\n }\n};\n\nexport {\n SWAPIncomeTypes,\n SWAPExpenseTypes,\n SWAPTaxIncomeLabel,\n SWAPTaxExpenseLabel,\n SWAPTaxDescription,\n};\n\n/**\n * 邏輯設定\n * 1. 所得類別為 9A, 9B 時,費用類別為必填\n * 2. 費用類別中的選項會依據,所得類別為 9A, 9B 而有所不同\n * 3. 所得類別為50薪資時不會有費用類別\n */\n","import React from \"react\";\nimport { createMuiTheme, ThemeProvider } from \"@material-ui/core/styles\";\n\nimport { SWAPThemeProps } from \"./SWAPTheme.types\";\nimport { CssBaseline } from \"@material-ui/core\";\n\nconst SWAPDefaultTheme = {\n //Design Token\n //Color\n palette: {\n primary: {\n main: \"#4862CC\",\n },\n },\n primary: {\n primary50: \"#E6E9F8\",\n primary100: \"#C1C7ED\",\n primary200: \"#97A3E1\",\n primary300: \"#6C7FD5\",\n primary400: \"#4862CC\",\n primary500: \"#1747C2\",\n primary600: \"#0F3FB8\",\n primary700: \"#0035AC\",\n primary800: \"#1F3C8E\",\n primary900: \"#002BA1\",\n primaryA11y: \"#071E60\",\n },\n secondary: {\n secondary50: \"#FEF8E3\",\n secondary100: \"#FCECB7\",\n secondary200: \"#FBDF8A\",\n secondary300: \"#FAD45C\",\n secondary400: \"#F9C93F\",\n secondary500: \"#F8C131\",\n secondary600: \"#F7B52C\",\n secondary700: \"#F6A128\",\n secondary800: \"#F59225\",\n secondary900: \"#F27521\",\n secondaryA11y: \"#E5640C\",\n },\n danger: {\n danger50: \"#FFEBED\",\n danger100: \"#FFCCD0\",\n danger200: \"#F99894\",\n danger300: \"#F26E6A\",\n danger400: \"#FC4A43\",\n danger500: \"#FF3622\",\n danger600: \"#F32A23\",\n danger700: \"#E11C1E\",\n danger800: \"#D40F14\",\n danger900: \"#C60003\",\n dangerA11y: \"#A80003\",\n },\n success: {\n success50: \"#E6F6E8\",\n success100: \"#C3E8C6\",\n success200: \"#9BD9A1\",\n success300: \"#70CB7A\",\n success400: \"#4CC05D\",\n success500: \"#1EB43F\",\n success600: \"#10A535\",\n success700: \"#00932A\",\n success800: \"#00821E\",\n success900: \"#006305\",\n successA11y: \"#015C16\",\n },\n black: {\n white: \"#FFFFFF\",\n black100: \"#F9F9F9\",\n black200: \"#F6F6F6\",\n black300: \"#F2F2F2\",\n black400: \"#ECECEC\",\n black500: \"#CCCCCC\",\n black600: \"#909090\",\n black700: \"#6F6F6F\",\n black800: \"#4B4B4B\",\n black900: \"#2D2D2D\",\n black1000: \"#000000\",\n },\n // Border Radius\n borderRadius: {\n s: \"4px\",\n m: \"8px\",\n l: \"12px\",\n xl: \"20px\",\n },\n //Shadow\n boxShadow: {\n s: \" 0px 2px 4px rgba(0, 0, 0, 0.12)\",\n m: \"0px 4px 12px rgba(0, 0, 0, 0.1)\",\n l: \"0px 6px 24px rgba(0, 0, 0, 0.1)\",\n xl: \"0px 8px 40px rgba(0, 0, 0, 0.12)\",\n },\n //Typography\n typography: {\n //字形\n fontFamily: [\"MPLUSRounded1c\", \"NotoSansTC\", \"sans-serif\"].join(\",\"),\n },\n overrides: {\n MuiCssBaseline: {\n \"@global\": {\n \"@font-face\": [\n {\n fontFamily: \"MPLUSRounded1c\",\n src: `url(https://cdn.leafscape.be/rounded-Mplus/rounded-mplus-1c-regular_web.woff2) format('woff2')`,\n unicodeRange: \"U+00-024F\",\n fontWeight: \"normal\",\n },\n {\n fontFamily: \"MPLUSRounded1c\",\n src: `url(https://cdn.leafscape.be/rounded-Mplus/rounded-mplus-1c-bold_web.woff2) format('woff2')`,\n unicodeRange: \"U+00-024F\",\n fontWeight: \"bold\",\n },\n {\n fontFamily: \"NotoSansTC\",\n src: `url(https://fonts.gstatic.com/ea/notosanstc/v1/NotoSansTC-Regular.woff2) format('woff2')`,\n fontWeight: \"normal\",\n },\n {\n fontFamily: \"NotoSansTC\",\n src: `url(https://fonts.gstatic.com/ea/notosanstc/v1/NotoSansTC-Bold.woff2) format('woff2')`,\n fontWeight: \"bold\",\n },\n ],\n },\n },\n MuiCard: {\n root: {\n borderRadius: \"18px\",\n border: \"1px solid rgba(0, 0, 0, 0.13)\",\n },\n },\n MuiPaper: {\n root: {\n border: \"1px solid #cccccc\",\n },\n rounded: {\n borderRadius: \"8px\",\n },\n elevation8: {\n boxShadow: \" 0px 4px 12px rgba(0, 0, 0, 0.1)\",\n },\n },\n //Input\n //Menu\n MuiOutlinedInput: {\n root: {\n borderRadius: \"8px\",\n },\n },\n MuiFormHelperText: {\n root: {\n marginTop: 4,\n fontSize: 14,\n color: \"#6f6f6f\",\n \"&.Mui-error\": {\n color: \"#D40F14\",\n },\n },\n },\n // IconButton fix safari padding problem\n MuiIconButton: {\n root: {\n padding: 0,\n },\n },\n },\n};\n\nconst SWAPTheme: React.FC<SWAPThemeProps> = ({ themeOptions, children }) => {\n const theme = themeOptions\n ? createMuiTheme(themeOptions)\n : createMuiTheme(SWAPDefaultTheme);\n\n return (\n <ThemeProvider theme={theme}>\n <CssBaseline />\n {children}\n </ThemeProvider>\n );\n};\nexport { createMuiTheme, CssBaseline, ThemeProvider };\n\nexport default SWAPTheme;\n","import { Box } from \"@material-ui/core\";\nimport { makeStyles, useTheme } from \"@material-ui/core/styles\";\n\nimport React, { useState } from \"react\";\nimport styled from \"styled-components\";\nimport SWAPTheme from \"../SWAPTheme/SWAPTheme\";\nimport CopyToClipboard from \"react-copy-to-clipboard\";\n\nimport { StylesProps } from \"./Styles.types\";\n\nconst Styles: React.FC<StylesProps> = ({\n color,\n borderRadius,\n boxShadow,\n style,\n cobyText,\n}) => {\n const theme = useTheme();\n const useStyles = makeStyles({\n root: {\n \"&:hover\": {\n cursor: \"pointer\",\n },\n width: 100,\n height: 40,\n boxShadow:\n boxShadow === \"s\"\n ? theme.boxShadow.s\n : boxShadow === \"m\"\n ? theme.boxShadow.m\n : boxShadow === \"l\"\n ? theme.boxShadow.l\n : boxShadow === \"xl\"\n ? theme.boxShadow.xl\n : null,\n borderRadius:\n borderRadius === \"s\"\n ? theme.borderRadius.s\n : borderRadius === \"m\"\n ? theme.borderRadius.m\n : borderRadius === \"l\"\n ? theme.borderRadius.l\n : borderRadius === \"xl\"\n ? theme.borderRadius.xl\n : null,\n backgroundColor:\n color === \"primary50\"\n ? theme.primary.primary50\n : color === \"primary100\"\n ? theme.primary.primary100\n : color === \"primary200\"\n ? theme.primary.primary200\n : color === \"primary300\"\n ? theme.primary.primary300\n : color === \"primary400\"\n ? theme.primary.primary400\n : color === \"primary500\"\n ? theme.primary.primary500\n : color === \"primary600\"\n ? theme.primary.primary600\n : color === \"primary700\"\n ? theme.primary.primary700\n : color === \"primary800\"\n ? theme.primary.primary800\n : color === \"primary900\"\n ? theme.primary.primary900\n : color === \"primaryA11y\"\n ? theme.primary.primaryA11y\n : color === \"secondary50\"\n ? theme.secondary.secondary50\n : color === \"secondary100\"\n ? theme.secondary.secondary100\n : color === \"secondary200\"\n ? theme.secondary.secondary200\n : color === \"secondary300\"\n ? theme.secondary.secondary300\n : color === \"secondary400\"\n ? theme.secondary.secondary400\n : color === \"secondary500\"\n ? theme.secondary.secondary500\n : color === \"secondary600\"\n ? theme.secondary.secondary600\n : color === \"secondary700\"\n ? theme.secondary.secondary700\n : color === \"secondary800\"\n ? theme.secondary.secondary800\n : color === \"secondary900\"\n ? theme.secondary.secondary900\n : color === \"secondaryA11y\"\n ? theme.secondary.secondaryA11y\n : color === \"danger50\"\n ? theme.danger.danger50\n : color === \"danger100\"\n ? theme.danger.danger100\n : color === \"danger200\"\n ? theme.danger.danger200\n : color === \"danger300\"\n ? theme.danger.danger300\n : color === \"danger400\"\n ? theme.danger.danger400\n : color === \"danger500\"\n ? theme.danger.danger500\n : color === \"danger600\"\n ? theme.danger.danger600\n : color === \"danger700\"\n ? theme.danger.danger700\n : color === \"danger800\"\n ? theme.danger.danger800\n : color === \"danger900\"\n ? theme.danger.danger900\n : color === \"dangerA11y\"\n ? theme.danger.dangerA11y\n : color === \"success50\"\n ? theme.success.success50\n : color === \"success100\"\n ? theme.success.success100\n : color === \"success200\"\n ? theme.success.success200\n : color === \"success300\"\n ? theme.success.success300\n : color === \"success400\"\n ? theme.success.success400\n : color === \"success500\"\n ? theme.success.success500\n : color === \"success600\"\n ? theme.success.success600\n : color === \"success700\"\n ? theme.success.success700\n : color === \"success800\"\n ? theme.success.success800\n : color === \"success900\"\n ? theme.success.success900\n : color === \"successA11y\"\n ? theme.success.successA11y\n : color === \"white\"\n ? theme.black.white\n : color === \"black100\"\n ? theme.black.black100\n : color === \"black200\"\n ? theme.black.black200\n : color === \"black300\"\n ? theme.black.black300\n : color === \"black400\"\n ? theme.black.black400\n : color === \"black500\"\n ? theme.black.black500\n : color === \"black600\"\n ? theme.black.black600\n : color === \"black700\"\n ? theme.black.black700\n : color === \"black800\"\n ? theme.black.black800\n : color === \"black900\"\n ? theme.black.black900\n : color === \"black1000\"\n ? theme.black.black1000\n : null,\n },\n });\n const classes = useStyles();\n const [copySuccess, setCopySuccess] = useState(false);\n return (\n <SWAPTheme>\n <StylesWrap>\n <CopyToClipboard text={cobyText}>\n <Box\n className={classes.root}\n style={style}\n onClick={() => {\n setTimeout(() => {\n setCopySuccess(false);\n }, 1000);\n setCopySuccess(true);\n }}\n />\n </CopyToClipboard>\n <div> {copySuccess ? \"已複製!\" : null}</div>\n </StylesWrap>\n </SWAPTheme>\n );\n};\n\nconst StylesWrap = styled.div``;\n\nexport default Styles;\n","import { makeStyles } from \"@material-ui/core\";\nimport MaterialTypography from \"@material-ui/core/Typography\";\nimport React from \"react\";\n\nimport { TypographyProps } from \"./Typography.types\";\n\ninterface styleProps {\n variant: any;\n mode: any;\n color: any;\n}\n\nconst useStyles = makeStyles((theme) => ({\n root: {\n color: ({ mode, color }: styleProps) =>\n mode === \"dark\"\n ? color === \"primary\"\n ? theme.black.white\n : color === \"secondary\"\n ? theme.black.black500\n : color === \"tertiary\"\n ? theme.black.black600\n : color === \"primary50\"\n ? theme.primary.primary50\n : color === \"primary100\"\n ? theme.primary.primary100\n : color === \"primary200\"\n ? theme.primary.primary200\n : color === \"primary300\"\n ? theme.primary.primary300\n : color === \"primary400\"\n ? theme.primary.primary400\n : color === \"primary500\"\n ? theme.primary.primary500\n : color === \"primary600\"\n ? theme.primary.primary600\n : color === \"primary700\"\n ? theme.primary.primary700\n : color === \"primary800\"\n ? theme.primary.primary800\n : color === \"primary900\"\n ? theme.primary.primary900\n : color === \"primaryA11y\"\n ? theme.primary.primaryA11y\n : color === \"secondary50\"\n ? theme.secondary.secondary50\n : color === \"secondary100\"\n ? theme.secondary.secondary100\n : color === \"secondary200\"\n ? theme.secondary.secondary200\n : color === \"secondary300\"\n ? theme.secondary.secondary300\n : color === \"secondary400\"\n ? theme.secondary.secondary400\n : color === \"secondary500\"\n ? theme.secondary.secondary500\n : color === \"secondary600\"\n ? theme.secondary.secondary600\n : color === \"secondary700\"\n ? theme.secondary.secondary700\n : color === \"secondary800\"\n ? theme.secondary.secondary800\n : color === \"secondary900\"\n ? theme.secondary.secondary900\n : color === \"secondaryA11y\"\n ? theme.secondary.secondaryA11y\n : color === \"danger50\"\n ? theme.danger.danger50\n : color === \"danger100\"\n ? theme.danger.danger100\n : color === \"danger200\"\n ? theme.danger.danger200\n : color === \"danger300\"\n ? theme.danger.danger300\n : color === \"danger400\"\n ? theme.danger.danger400\n : color === \"danger500\"\n ? theme.danger.danger500\n : color === \"danger600\"\n ? theme.danger.danger600\n : color === \"danger700\"\n ? theme.danger.danger700\n : color === \"danger800\"\n ? theme.danger.danger800\n : color === \"danger900\"\n ? theme.danger.danger900\n : color === \"dangerA11y\"\n ? theme.danger.dangerA11y\n : color === \"success50\"\n ? theme.success.success50\n : color === \"success100\"\n ? theme.success.success100\n : color === \"success200\"\n ? theme.success.success200\n : color === \"success300\"\n ? theme.success.success300\n : color === \"success400\"\n ? theme.success.success400\n : color === \"success500\"\n ? theme.success.success500\n : color === \"success600\"\n ? theme.success.success600\n : color === \"success700\"\n ? theme.success.success700\n : color === \"success800\"\n ? theme.success.success800\n : color === \"success900\"\n ? theme.success.success900\n : color === \"successA11y\"\n ? theme.success.successA11y\n : color === \"white\"\n ? theme.black.white\n : color === \"black100\"\n ? theme.black.black100\n : color === \"black200\"\n ? theme.black.black200\n : color === \"black300\"\n ? theme.black.black300\n : color === \"black400\"\n ? theme.black.black400\n : color === \"black500\"\n ? theme.black.black500\n : color === \"black600\"\n ? theme.black.black600\n : color === \"black700\"\n ? theme.black.black700\n : color === \"black800\"\n ? theme.black.black800\n : color === \"black900\"\n ? theme.black.black900\n : color === \"black1000\"\n ? theme.black.black1000\n : theme.black.black1000\n : color === \"primary\"\n ? theme.black.black1000\n : color === \"secondary\"\n ? theme.black.black800\n : color === \"tertiary\"\n ? theme.black.black700\n : color === \"primary50\"\n ? theme.primary.primary50\n : color === \"primary100\"\n ? theme.primary.primary100\n : color === \"primary200\"\n ? theme.primary.primary200\n : color === \"primary300\"\n ? theme.primary.primary300\n : color === \"primary400\"\n ? theme.primary.primary400\n : color === \"primary500\"\n ? theme.primary.primary500\n : color === \"primary600\"\n ? theme.primary.primary600\n : color === \"primary700\"\n ? theme.primary.primary700\n : color === \"primary800\"\n ? theme.primary.primary800\n : color === \"primary900\"\n ? theme.primary.primary900\n : color === \"primaryA11y\"\n ? theme.primary.primaryA11y\n : color === \"secondary50\"\n ? theme.secondary.secondary50\n : color === \"secondary100\"\n ? theme.secondary.secondary100\n : color === \"secondary200\"\n ? theme.secondary.secondary200\n : color === \"secondary300\"\n ? theme.secondary.secondary300\n : color === \"secondary400\"\n ? theme.secondary.secondary400\n : color === \"secondary500\"\n ? theme.secondary.secondary500\n : color === \"secondary600\"\n ? theme.secondary.secondary600\n : color === \"secondary700\"\n ? theme.secondary.secondary700\n : color === \"secondary800\"\n ? theme.secondary.secondary800\n : color === \"secondary900\"\n ? theme.secondary.secondary900\n : color === \"secondaryA11y\"\n ? theme.secondary.secondaryA11y\n : color === \"danger50\"\n ? theme.danger.danger50\n : color === \"danger100\"\n ? theme.danger.danger100\n : color === \"danger200\"\n ? theme.danger.danger200\n : color === \"danger300\"\n ? theme.danger.danger300\n : color === \"danger400\"\n ? theme.danger.danger400\n : color === \"danger500\"\n ? theme.danger.danger500\n : color === \"danger600\"\n ? theme.danger.danger600\n : color === \"danger700\"\n ? theme.danger.danger700\n : color === \"danger800\"\n ? theme.danger.danger800\n : color === \"danger900\"\n ? theme.danger.danger900\n : color === \"dangerA11y\"\n ? theme.danger.dangerA11y\n : color === \"success50\"\n ? theme.success.success50\n : color === \"success100\"\n ? theme.success.success100\n : color === \"success200\"\n ? theme.success.success200\n : color === \"success300\"\n ? theme.success.success300\n : color === \"success400\"\n ? theme.success.success400\n : color === \"success500\"\n ? theme.success.success500\n : color === \"success600\"\n ? theme.success.success600\n : color === \"success700\"\n ? theme.success.success700\n : color === \"success800\"\n ? theme.success.success800\n : color === \"success900\"\n ? theme.success.success900\n : color === \"successA11y\"\n ? theme.success.successA11y\n : color === \"white\"\n ? theme.black.white\n : color === \"black100\"\n ? theme.black.black100\n : color === \"black200\"\n ? theme.black.black200\n : color === \"black300\"\n ? theme.black.black300\n : color === \"black400\"\n ? theme.black.black400\n : color === \"black500\"\n ? theme.black.black500\n : color === \"black600\"\n ? theme.black.black600\n : color === \"black700\"\n ? theme.black.black700\n : color === \"black800\"\n ? theme.black.black800\n : color === \"black900\"\n ? theme.black.black900\n : color === \"black1000\"\n ? theme.black.black1000\n : theme.black.black1000,\n fontSize: ({ variant }: styleProps) =>\n variant === \"d1\"\n ? \"4.5rem\"\n : variant === \"d2\"\n ? \"4rem\"\n : variant === \"d3\"\n ? \"3.5rem\"\n : variant === \"d4\"\n ? \"3rem\"\n : variant === \"h1\"\n ? \"2.5rem\"\n : variant === \"h2\"\n ? \"2rem\"\n : variant === \"h3\"\n ? \"1.75rem\"\n : variant === \"h4\"\n ? \"1.5rem\"\n : variant === \"h5\"\n ? \"1.25rem\"\n : variant === \"h6\"\n ? \"1.125rem\"\n : variant === \"title\" || variant === \"title_loose\"\n ? \"1rem\"\n : variant === \"subtitle\" || variant === \"subtitle_loose\"\n ? \"0.875rem\"\n : variant === \"body1\" || variant === \"body1_loose\"\n ? \"1rem\"\n : variant === \"body2\" || variant === \"body2_loose\"\n ? \"0.875rem\"\n : variant === \"caption1\" || variant === \"caption1_loose\"\n ? \"0.75rem\"\n : variant === \"caption2\" || variant === \"caption2_loose\"\n ? \"0.75rem\"\n : variant === \"small1\" || variant === \"small1_loose\"\n ? \"0.6875rem\"\n : variant === \"small2\" || variant === \"small2_loose\"\n ? \"0.6875rem\"\n : variant === \"tiny1\" || variant === \"tiny1_loose\"\n ? \"0.625rem\"\n : variant === \"tiny2\" || variant === \"tiny2_loose\"\n ? \"0.625rem\"\n : variant === \"button_l\"\n ? \"1rem\"\n : variant === \"button_s\"\n ? \"0.875rem\"\n : \"1rem\",\n fontWeight: ({ variant }: styleProps) =>\n variant === \"d1\" ||\n variant === \"d2\" ||\n variant === \"d3\" ||\n variant === \"d4\" ||\n variant === \"h1\" ||\n variant === \"h2\" ||\n variant === \"h3\" ||\n variant === \"h4\" ||\n variant === \"h5\" ||\n variant === \"h6\" ||\n variant === \"title\" ||\n variant === \"title_loose\" ||\n variant === \"subtitle\" ||\n variant === \"subtitle_loose\" ||\n variant === \"caption1\" ||\n variant === \"caption1_loose\" ||\n variant === \"small1\" ||\n variant === \"small1_loose\" ||\n variant === \"tiny1\" ||\n variant === \"tiny1_loose\" ||\n variant === \"button_l\" ||\n variant === \"button_s\"\n ? 700\n : variant === \"body1\" ||\n variant === \"body1_loose\" ||\n variant === \"body2\" ||\n variant === \"body2_loose\" ||\n variant === \"caption2\" ||\n variant === \"caption2_loose\" ||\n variant === \"small2\" ||\n variant === \"small2_loose\" ||\n variant === \"tiny2\" ||\n variant === \"tiny2_loose\"\n ? 400\n : 400,\n lineHeight: ({ variant }: styleProps) =>\n variant === \"d1\" ||\n variant === \"d2\" ||\n variant === \"d3\" ||\n variant === \"h1\" ||\n variant === \"h2\" ||\n variant === \"h3\"\n ? 1.25\n : variant === \"d4\" ||\n variant === \"h4\" ||\n variant === \"h5\" ||\n variant === \"h6\" ||\n variant === \"title\" ||\n variant === \"subtitle\" ||\n variant === \"body1\" ||\n variant === \"body2\" ||\n variant === \"caption1\" ||\n variant === \"caption2\" ||\n variant === \"small1\" ||\n variant === \"small2\" ||\n variant === \"tiny1\" ||\n variant === \"tiny2\"\n ? 1.4\n : variant === \"title_loose\" ||\n variant === \"subtitle_loose\" ||\n variant === \"body1_loose\" ||\n variant === \"body2_loose\" ||\n variant === \"caption1_loose\" ||\n variant === \"caption2_loose\" ||\n variant === \"small1_loose\" ||\n variant === \"small2_loose\" ||\n variant === \"tiny1_loose\" ||\n variant === \"tiny2_loose\"\n ? 1.6\n : variant === \"button_l\" || variant === \"button_s\"\n ? 1.125\n : 1.4,\n letterSpacing: \"0em\",\n },\n}));\n\nconst Typography: React.FC<TypographyProps> = React.memo(\n ({ variant, children, mode, color, style }) => {\n const classes = useStyles({ variant, mode, color });\n return (\n <MaterialTypography className={classes.root} style={style}>\n {children}\n </MaterialTypography>\n );\n }\n);\n\nexport default Typography;\n","import MaterialContainer from \"@material-ui/core/Container\";\nimport React from \"react\";\nimport { ContainerProps } from \"./Container.types\";\nimport { makeStyles } from \"@material-ui/core\";\nimport { useBreakpoints } from \"..\";\n\ninterface styleProps {\n maxWidth: any;\n padding: any;\n XXL: any;\n XL: any;\n LG: any;\n MD: any;\n SM: any;\n XS: any;\n XXS: any;\n}\nconst useStyles = makeStyles({\n root: {\n maxWidth: ({ maxWidth, XXL, XL, LG }: styleProps) =>\n maxWidth\n ? maxWidth === \"lg\"\n ? 960\n : maxWidth === \"xl\"\n ? 1140\n : maxWidth === \"xxl\"\n ? 1320\n : maxWidth\n : XXL\n ? 1320\n : XL\n ? 1140\n : LG\n ? 960\n : null,\n padding: ({ padding, XXL, XL, LG, MD, SM, XS, XXS }: styleProps) =>\n padding\n ? padding === \"xxs\"\n ? \"0px 8px\"\n : padding === \"xs\"\n ? \"0px 16px\"\n : padding === \"sm\"\n ? \"0px 24px\"\n : padding === \"md\"\n ? \"0px 24px\"\n : padding\n : XXL\n ? \"0px 0px\"\n : XL\n ? \"0px 0px\"\n : LG\n ? \"0px 0px\"\n : MD\n ? \"0px 24px\"\n : SM\n ? \"0px 24px\"\n : XS\n ? \"0px 16px\"\n : XXS\n ? \"0px 8px\"\n : null,\n },\n});\n\nconst Container: React.FC<ContainerProps> = ({\n children,\n style,\n maxWidth,\n padding,\n}) => {\n const XXS = useBreakpoints(\"xxs\");\n const XS = useBreakpoints(\"xs\");\n const SM = useBreakpoints(\"sm\");\n const MD = useBreakpoints(\"md\");\n const LG = useBreakpoints(\"lg\");\n const XL = useBreakpoints(\"xl\");\n const XXL = useBreakpoints(\"xxl\");\n\n const classes = useStyles({\n maxWidth,\n padding,\n XXL,\n XL,\n LG,\n MD,\n SM,\n XS,\n XXS,\n });\n return (\n <MaterialContainer className={classes.root} style={style}>\n {children}\n </MaterialContainer>\n );\n};\n\nexport default Container;\n","import { useMediaQuery } from \"@material-ui/core\";\n\nfunction useBreakpoints(\n breakpoints?: \"xxs\" | \"xs\" | \"sm\" | \"md\" | \"lg\" | \"xl\" | \"xxl\" | number\n) {\n const matches = useMediaQuery(\n `(min-width:${\n breakpoints === \"xxs\"\n ? 0\n : breakpoints === \"xs\"\n ? 375\n : breakpoints === \"sm\"\n ? 576\n : breakpoints === \"md\"\n ? 768\n : breakpoints === \"lg\"\n ? 992\n : breakpoints === \"xl\"\n ? 1200\n : breakpoints === \"xxl\"\n ? 1400\n : breakpoints\n }px)`\n );\n return matches;\n}\n\nexport default useBreakpoints;\n","import MaterialCheckBox from \"@material-ui/core/Checkbox\";\nimport React from \"react\";\nimport { MyCheckBoxProps } from \"./CheckBox.types\";\nimport { FormControlLabel, makeStyles, Theme } from \"@material-ui/core\";\n// Style\ninterface StyleProps {\n disableHover: boolean;\n}\n\nconst useStyles = makeStyles<Theme, StyleProps>((theme: Theme) => ({\n root: (props) => ({\n width: 40,\n height: 40,\n boxShadow: \"none\",\n \"&:hover\": {\n backgroundColor: props.disableHover ? \"unset\" : theme.black.black300,\n },\n \"&.Mui-checked:hover\": {\n backgroundColor: props.disableHover ? \"unset\" : theme.black.black300,\n },\n }),\n icon: (props) => ({\n position: \"absolute\",\n width: \"24px\",\n height: \"24px\",\n borderRadius: 4,\n backgroundColor: theme.black.white,\n border: `1px solid ${theme.black.black500}`,\n \"input:hover ~ &\": {\n border: props.disableHover\n ? `1px solid ${theme.black.black500}`\n : `1px solid ${theme.black.black1000}`,\n },\n \"input:focus-visible ~ &\": {\n boxShadow: \"0px 0px 0px 4px #D7DFF8\",\n },\n \"input:disabled ~ &\": {\n opacity: 0.4,\n },\n \"input:disabled:hover ~ &\": {\n border: props.disableHover\n ? `1px solid ${theme.black.black500}`\n : `1px solid ${theme.black.black500}`,\n },\n }),\n checked_icon: (props) => ({\n position: \"absolute\",\n width: 24,\n height: 24,\n borderRadius: 4,\n display: \"flex\",\n justifyContent: \"center\",\n alignItems: \"center\",\n backgroundColor: theme.primary.primary400,\n border: `1px solid ${theme.primary.primary600}`,\n \"input:hover ~ &\": {\n border: props.disableHover\n ? `1px solid ${theme.primary.primary600}`\n : `1px solid ${theme.primary.primaryA11y}`,\n },\n \"input:focus-visible ~ &\": {\n boxShadow: \"0px 0px 0px 4px #D7DFF8\",\n },\n \"input:disabled ~ &\": {\n opacity: 0.4,\n },\n \"input:disabled:hover ~ &\": {\n border: props.disableHover\n ? `1px solid ${theme.primary.primary600}`\n : `1px solid ${theme.primary.primary600}`,\n },\n }),\n}));\n\nconst CheckBox: React.FC<MyCheckBoxProps> = (props) => {\n const {\n disableHover,\n label,\n labelPlacement,\n checkedIcon,\n icon,\n ...other\n } = props;\n const styleProps: StyleProps = {\n disableHover: disableHover,\n };\n const classes = useStyles(styleProps);\n return (\n <FormControlLabel\n label={label}\n labelPlacement={labelPlacement}\n style={{ marginRight: 0 }}\n control={\n <MaterialCheckBox\n disableFocusRipple\n disableTouchRipple\n className={classes.root}\n {...other}\n checkedIcon={\n <span className={classes.checked_icon}>\n {checkedIcon ? (\n checkedIcon\n ) : (\n <svg\n width=\"17\"\n height=\"16\"\n viewBox=\"0 0 17 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M1.5 8.5L7 13L15 2\"\n stroke=\"white\"\n strokeWidth=\"3\"\n strokeLinecap=\"round\"\n />\n </svg>\n )}\n </span>\n }\n icon={<span className={classes.icon}>{icon ? icon : null}</span>}\n />\n }\n />\n );\n};\n\nexport default CheckBox;\n","import MaterialRadioButton from \"@material-ui/core/Radio\";\nimport React from \"react\";\nimport { RadioMyButtonProps } from \"./RadioButton.types\";\nimport { FormControlLabel, makeStyles, Theme } from \"@material-ui/core\";\n// Style\ninterface StyleProps {\n disableHover: boolean;\n}\n\nconst useStyles = makeStyles<Theme, StyleProps>((theme: Theme) => ({\n root: (props) => ({\n width: 40,\n height: 40,\n boxShadow: \"none\",\n \"&:hover\": {\n backgroundColor: props.disableHover ? \"unset\" : theme.black.black300,\n },\n \"&.Mui-checked:hover\": {\n backgroundColor: props.disableHover ? \"unset\" : theme.black.black300,\n },\n }),\n icon: (props) => ({\n position: \"absolute\",\n width: \"24px\",\n height: \"24px\",\n borderRadius: 100,\n backgroundColor: theme.black.white,\n border: `1px solid ${theme.black.black500}`,\n \"input:hover ~ &\": {\n border: props.disableHover\n ? `1px solid ${theme.black.black500}`\n : `1px solid ${theme.black.black1000}`,\n },\n \"input:focus-visible ~ &\": {\n boxShadow: \"0px 0px 0px 4px #D7DFF8\",\n },\n \"input:disabled ~ &\": {\n opacity: 0.4,\n },\n \"input:disabled:hover ~ &\": {\n border: props.disableHover\n ? `1px solid ${theme.black.black500}`\n : `1px solid ${theme.black.black500}`,\n },\n }),\n checked_icon: (props) => ({\n position: \"absolute\",\n width: 24,\n height: 24,\n borderRadius: 100,\n display: \"flex\",\n justifyContent: \"center\",\n alignItems: \"center\",\n backgroundColor: theme.primary.primary400,\n border: `1px solid ${theme.primary.primary600}`,\n \"input:hover ~ &\": {\n border: props.disableHover\n ? `1px solid ${theme.primary.primary600}`\n : `1px solid ${theme.primary.primaryA11y}`,\n },\n \"input:focus-visible ~ &\": {\n boxShadow: \"0px 0px 0px 4px #D7DFF8\",\n },\n \"input:disabled ~ &\": {\n opacity: 0.4,\n },\n \"input:disabled:hover ~ &\": {\n border: props.disableHover\n ? `1px solid ${theme.primary.primary600}`\n : `1px solid ${theme.primary.primary600}`,\n },\n }),\n}));\nconst RadioButton: React.FC<RadioMyButtonProps> = (props) => {\n const { label, labelPlacement, disableHover, ...other } = props;\n const styleProps: StyleProps = {\n disableHover: disableHover,\n };\n const classes = useStyles(styleProps);\n return (\n <FormControlLabel\n label={label}\n labelPlacement={labelPlacement}\n style={{ marginRight: 0 }}\n control={\n <MaterialRadioButton\n disableFocusRipple\n disableTouchRipple\n className={classes.root}\n checkedIcon={\n <span className={classes.checked_icon}>\n <svg\n width=\"10\"\n height=\"10\"\n viewBox=\"0 0 10 10\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <circle cx=\"5\" cy=\"5\" r=\"5\" fill=\"white\" />\n </svg>\n </span>\n }\n icon={<span className={classes.icon} />}\n {...other}\n />\n }\n />\n );\n};\n\nexport default RadioButton;\n","import MaterialTextField from \"@material-ui/core/TextField\";\nimport React from \"react\";\nimport { MyTextFieldProps } from \"./TextField.types\";\nimport { makeStyles, Theme } from \"@material-ui/core\";\n\n// Style\ninterface StyleProps {\n width: number | string;\n selectWidth: number | string;\n height: number | string;\n select: boolean;\n}\nconst useStyles = makeStyles<Theme, StyleProps>((theme: Theme) => ({\n root: {\n \"& .MuiFormHelperText-contained\": {\n marginLeft: 16,\n marginRight: 16,\n },\n },\n inputRoot: (props) => ({\n width: props.width,\n height: props.height,\n padding: \"0px 16px\",\n backgroundColor: \"white\",\n fontSize: 16,\n lineHeight: \"unset\",\n fontWeight: 400,\n display: \"flex\",\n alignItems: \"center\",\n \"& fieldset\": {\n \"& legend\": {\n width: \"0.01px\",\n },\n borderColor: theme.black.black500,\n },\n \"&.Mui-focused\": {\n boxShadow: \"0px 0px 0px 4px #D7DFF8\",\n \"& fieldset\": {\n border: `1px solid ${theme.primary.primary400} !important`,\n borderWidth: \"1px !important\",\n },\n \"&.Mui-error\": {\n boxShadow: \"0px 0px\",\n \"& fieldset\": {\n border: `1px solid ${theme.danger.danger800} !important`,\n borderWidth: \"1px !important\",\n },\n },\n },\n \"&.Mui-error\": {\n \"& fieldset\": {\n border: `1px solid ${theme.danger.danger800} !important`,\n },\n },\n }),\n input: {\n fontSize: 16,\n lineHeight: \"unset\",\n fontWeight: 400,\n display: \"flex\",\n alignItems: \"center\",\n \"&:-webkit-autofill\": {\n \"-webkit-box-shadow\": \"0 0 0 100px #FFFFFF inset\",\n },\n \"&::placeholder\": { color: theme.black.black700, opacity: 1 },\n padding: 0,\n margin: 0,\n height: \"fit-content\",\n },\n selectRoot: (props) => ({\n borderRadius: 8,\n fontWeight: 400,\n width: props.width,\n minWidth: props.selectWidth,\n height: props.height,\n display: \"flex\",\n alignItems: \"center\",\n \"&:focus\": {\n backgroundColor: \"white\",\n borderRadius: 8,\n },\n }),\n icon: { color: theme.black.black700 },\n labelRoot: {\n \"&.Mui-error\": { color: theme.black.black700 },\n },\n shrink: {\n transform: \"translate(14px, -10px) !important\",\n height: 20,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n backgroundColor: \"white\",\n fontSize: 14,\n fontWeight: 700,\n color: theme.black.black800,\n padding: \"0 4px\",\n \"&.Mui-focused\": {\n backgroundColor: \"white\",\n color: theme.black.black800,\n },\n \"&.Mui-error\": { color: theme.black.black800 },\n },\n}));\n\nconst TextField: React.FC<MyTextFieldProps> = (props): React.ReactElement => {\n const {\n children,\n width,\n height,\n InputProps,\n InputLabelProps,\n SelectProps,\n select,\n fullWidth,\n ...other\n } = props;\n const styleProps: StyleProps = {\n width: width,\n selectWidth: fullWidth ? \"100%\" : \"unset\",\n height: height,\n select: select,\n };\n const classes = useStyles(styleProps);\n return (\n <MaterialTextField\n fullWidth={fullWidth}\n select={select}\n {...other}\n className={classes.root}\n variant=\"outlined\"\n InputProps={{\n classes: {\n root: classes.inputRoot,\n input: classes.input,\n },\n ...InputProps,\n }}\n InputLabelProps={{\n classes: {\n root: classes.labelRoot,\n shrink: classes.shrink,\n },\n ...InputLabelProps,\n }}\n SelectProps={{\n classes: { root: classes.selectRoot, icon: classes.icon },\n MenuProps: {\n getContentAnchorEl: null,\n anchorOrigin: {\n vertical: -9,\n horizontal: -16,\n },\n },\n ...SelectProps,\n }}\n >\n {children}\n </MaterialTextField>\n );\n};\n\nexport default TextField;\n","import MaterialTab from \"@material-ui/core/Tab\";\nimport React from \"react\";\nimport { MyTabProps } from \"./Tab.types\";\nimport { makeStyles, Theme } from \"@material-ui/core\";\n\ninterface styleProps {\n animation: any;\n noIndicator: any;\n height: any;\n width: any;\n selected: any;\n margin: any;\n fontSize: any;\n}\n\nconst useStyles = makeStyles((theme: Theme) => ({\n root: {\n minWidth: 0,\n minHeight: 0,\n padding: 0,\n margin: ({ margin }: styleProps) => (margin ? margin : \"0px 12px\"),\n fontWeight: 700,\n fontSize: ({ fontSize }: styleProps) => (fontSize ? fontSize : 14),\n lineHeight: 1.4,\n \"&:hover\": {\n color: \"#000000\",\n },\n },\n text: {\n opacity: 1,\n color: theme.black.black700,\n },\n indicatorRoot: {\n color: ({ selected }: styleProps) => (selected ? \"#000000\" : \"unset\"),\n width: ({ width }: styleProps) => (width ? width : 56),\n height: ({ height }: styleProps) => (height ? height : 56),\n display: \"flex\",\n justifyContent: \"center\",\n alignItems: \"center\",\n position: \"relative\",\n },\n selected_indicator: {\n animation: ({ animation }: styleProps) =>\n animation ? \"$selected 300ms \" : \"unset\",\n height: 4,\n width: \"100%\",\n backgroundColor: theme.primary.primary400,\n position: \"absolute\",\n bottom: 0,\n display: ({ noIndicator }: styleProps) => (noIndicator ? \"none\" : null),\n borderRadius: \"100px 100px 0px 0px\",\n },\n \"@keyframes selected\": {\n from: { width: 0 },\n to: { width: \"100%\" },\n },\n}));\nconst Tab: React.FC<MyTabProps> = (props) => {\n const {\n label,\n selected,\n width,\n height,\n margin,\n fontSize,\n noIndicator,\n animation,\n ...other\n } = props;\n const classes = useStyles({\n animation,\n noIndicator,\n height,\n width,\n selected,\n margin,\n fontSize,\n });\n return (\n <MaterialTab\n {...other}\n classes={{\n root: classes.root,\n textColorInherit: classes.text,\n }}\n label={\n <div className={classes.indicatorRoot}>\n {label}\n {selected ? <div className={classes.selected_indicator} /> : null}\n </div>\n }\n disableRipple\n />\n );\n};\n\nexport default Tab;\n","import MaterialTabs from \"@material-ui/core/Tabs\";\n\nimport React from \"react\";\nimport { MyTabsProps } from \"./Tabs.types\";\nimport { makeStyles } from \"@material-ui/core\";\n\nconst useStyles = makeStyles({\n root: {},\n indicatorRoot: {\n backgroundColor: \"transparent\",\n },\n});\n\nconst Tabs: React.FC<MyTabsProps> = (props) => {\n const { children, ...other } = props;\n const classes = useStyles();\n return (\n <MaterialTabs\n {...other}\n classes={{\n root: classes.root,\n indicator: classes.indicatorRoot,\n }}\n >\n {children}\n </MaterialTabs>\n );\n};\n\nexport default Tabs;\n","import MaterialTab from \"@material-ui/core/Tab\";\nimport React from \"react\";\nimport { SegmentedTabProps } from \"./SegmentedTab.types\";\nimport { makeStyles, Theme } from \"@material-ui/core\";\n\n// Style\ninterface StyleProps {\n width: number | string;\n height: number | string;\n fontSize: number | string;\n flex: number;\n}\n\nconst useStyles = makeStyles<Theme, StyleProps>((theme: Theme) => ({\n root: (props) => ({\n //SWAPTheme調整\n textTransform: \"unset\",\n padding: \"12px 16px\",\n minWidth: 0,\n minHeight: props.height ? props.height : 40,\n width: props.width ? props.width : \"fit-content\",\n fontWeight: 700,\n fontSize: props.fontSize ? props.fontSize : 14,\n lineHeight: 1.4,\n color: \"#6F6F6F\",\n \"&:hover\": {\n color: \"#000000\",\n },\n flex: props.flex,\n whiteSpace: \"nowrap\",\n }),\n text: {\n position: \"relative\",\n zIndex: 5,\n opacity: 1,\n },\n}));\n\nconst SegmentedTab: React.FC<SegmentedTabProps> = (props) => {\n const { width, height, fontSize, flex, ...other } = props;\n const styleProps: StyleProps = {\n width: width,\n height: height,\n fontSize: fontSize,\n flex: flex,\n };\n const classes = useStyles(styleProps);\n return (\n <MaterialTab\n {...other}\n disableRipple\n classes={{ textColorInherit: classes.text }}\n className={classes.root}\n />\n );\n};\n\nexport default SegmentedTab;\n","/* smoothscroll v0.4.4 - 2019 - Dustan Kasten, Jeremias Menichelli - MIT License */\n(function () {\n 'use strict';\n\n // polyfill\n function polyfill() {\n // aliases\n var w = window;\n var d = document;\n\n // return if scroll behavior is supported and polyfill is not forced\n if (\n 'scrollBehavior' in d.documentElement.style &&\n w.__forceSmoothScrollPolyfill__ !== true\n ) {\n return;\n }\n\n // globals\n var Element = w.HTMLElement || w.Element;\n var SCROLL_TIME = 468;\n\n // object gathering original scroll methods\n var original = {\n scroll: w.scroll || w.scrollTo,\n scrollBy: w.scrollBy,\n elementScroll: Element.prototype.scroll || scrollElement,\n scrollIntoView: Element.prototype.scrollIntoView\n };\n\n // define timing method\n var now =\n w.performance && w.performance.now\n ? w.performance.now.bind(w.performance)\n : Date.now;\n\n /**\n * indicates if a the current browser is made by Microsoft\n * @method isMicrosoftBrowser\n * @param {String} userAgent\n * @returns {Boolean}\n */\n function isMicrosoftBrowser(userAgent) {\n var userAgentPatterns = ['MSIE ', 'Trident/', 'Edge/'];\n\n return new RegExp(userAgentPatterns.join('|')).test(userAgent);\n }\n\n /*\n * IE has rounding bug rounding down clientHeight and clientWidth and\n * rounding up scrollHeight and scrollWidth causing false positives\n * on hasScrollableSpace\n */\n var ROUNDING_TOLERANCE = isMicrosoftBrowser(w.navigator.userAgent) ? 1 : 0;\n\n /**\n * changes scroll position inside an element\n * @method scrollElement\n * @param {Number} x\n * @param {Number} y\n * @returns {undefined}\n */\n function scrollElement(x, y) {\n this.scrollLeft = x;\n this.scrollTop = y;\n }\n\n /**\n * returns result of applying ease math function to a number\n * @method ease\n * @param {Number} k\n * @returns {Number}\n */\n function ease(k) {\n return 0.5 * (1 - Math.cos(Math.PI * k));\n }\n\n /**\n * indicates if a smooth behavior should be applied\n * @method shouldBailOut\n * @param {Number|Object} firstArg\n * @returns {Boolean}\n */\n function shouldBailOut(firstArg) {\n if (\n firstArg === null ||\n typeof firstArg !== 'object' ||\n firstArg.behavior === undefined ||\n firstArg.behavior === 'auto' ||\n firstArg.behavior === 'instant'\n ) {\n // first argument is not an object/null\n // or behavior is auto, instant or undefined\n return true;\n }\n\n if (typeof firstArg === 'object' && firstArg.behavior === 'smooth') {\n // first argument is an object and behavior is smooth\n return false;\n }\n\n // throw error when behavior is not supported\n throw new TypeError(\n 'behavior member of ScrollOptions ' +\n firstArg.behavior +\n ' is not a valid value for enumeration ScrollBehavior.'\n );\n }\n\n /**\n * indicates if an element has scrollable space in the provided axis\n * @method hasScrollableSpace\n * @param {Node} el\n * @param {String} axis\n * @returns {Boolean}\n */\n function hasScrollableSpace(el, axis) {\n if (axis === 'Y') {\n return el.clientHeight + ROUNDING_TOLERANCE < el.scrollHeight;\n }\n\n if (axis === 'X') {\n return el.clientWidth + ROUNDING_TOLERANCE < el.scrollWidth;\n }\n }\n\n /**\n * indicates if an element has a scrollable overflow property in the axis\n * @method canOverflow\n * @param {Node} el\n * @param {String} axis\n * @returns {Boolean}\n */\n function canOverflow(el, axis) {\n var overflowValue = w.getComputedStyle(el, null)['overflow' + axis];\n\n return overflowValue === 'auto' || overflowValue === 'scroll';\n }\n\n /**\n * indicates if an element can be scrolled in either axis\n * @method isScrollable\n * @param {Node} el\n * @param {String} axis\n * @returns {Boolean}\n */\n function isScrollable(el) {\n var isScrollableY = hasScrollableSpace(el, 'Y') && canOverflow(el, 'Y');\n var isScrollableX = hasScrollableSpace(el, 'X') && canOverflow(el, 'X');\n\n return isScrollableY || isScrollableX;\n }\n\n /**\n * finds scrollable parent of an element\n * @method findScrollableParent\n * @param {Node} el\n * @returns {Node} el\n */\n function findScrollableParent(el) {\n while (el !== d.body && isScrollable(el) === false) {\n el = el.parentNode || el.host;\n }\n\n return el;\n }\n\n /**\n * self invoked function that, given a context, steps through scrolling\n * @method step\n * @param {Object} context\n * @returns {undefined}\n */\n function step(context) {\n var time = now();\n var value;\n var currentX;\n var currentY;\n var elapsed = (time - context.startTime) / SCROLL_TIME;\n\n // avoid elapsed times higher than one\n elapsed = elapsed > 1 ? 1 : elapsed;\n\n // apply easing to elapsed time\n value = ease(elapsed);\n\n currentX = context.startX + (context.x - context.startX) * value;\n currentY = context.startY + (context.y - context.startY) * value;\n\n context.method.call(context.scrollable, currentX, currentY);\n\n // scroll more if we have not reached our destination\n if (currentX !== context.x || currentY !== context.y) {\n w.requestAnimationFrame(step.bind(w, context));\n }\n }\n\n /**\n * scrolls window or element with a smooth behavior\n * @method smoothScroll\n * @param {Object|Node} el\n * @param {Number} x\n * @param {Number} y\n * @returns {undefined}\n */\n function smoothScroll(el, x, y) {\n var scrollable;\n var startX;\n var startY;\n var method;\n var startTime = now();\n\n // define scroll context\n if (el === d.body) {\n scrollable = w;\n startX = w.scrollX || w.pageXOffset;\n startY = w.scrollY || w.pageYOffset;\n method = original.scroll;\n } else {\n scrollable = el;\n startX = el.scrollLeft;\n startY = el.scrollTop;\n method = scrollElement;\n }\n\n // scroll looping over a frame\n step({\n scrollable: scrollable,\n method: method,\n startTime: startTime,\n startX: startX,\n startY: startY,\n x: x,\n y: y\n });\n }\n\n // ORIGINAL METHODS OVERRIDES\n // w.scroll and w.scrollTo\n w.scroll = w.scrollTo = function() {\n // avoid action when no arguments are passed\n if (arguments[0] === undefined) {\n return;\n }\n\n // avoid smooth behavior if not required\n if (shouldBailOut(arguments[0]) === true) {\n original.scroll.call(\n w,\n arguments[0].left !== undefined\n ? arguments[0].left\n : typeof arguments[0] !== 'object'\n ? arguments[0]\n : w.scrollX || w.pageXOffset,\n // use top prop, second argument if present or fallback to scrollY\n arguments[0].top !== undefined\n ? arguments[0].top\n : arguments[1] !== undefined\n ? arguments[1]\n : w.scrollY || w.pageYOffset\n );\n\n return;\n }\n\n // LET THE SMOOTHNESS BEGIN!\n smoothScroll.call(\n w,\n d.body,\n arguments[0].left !== undefined\n ? ~~arguments[0].left\n : w.scrollX || w.pageXOffset,\n arguments[0].top !== undefined\n ? ~~arguments[0].top\n : w.scrollY || w.pageYOffset\n );\n };\n\n // w.scrollBy\n w.scrollBy = function() {\n // avoid action when no arguments are passed\n if (arguments[0] === undefined) {\n return;\n }\n\n // avoid smooth behavior if not required\n if (shouldBailOut(arguments[0])) {\n original.scrollBy.call(\n w,\n arguments[0].left !== undefined\n ? arguments[0].left\n : typeof arguments[0] !== 'object' ? arguments[0] : 0,\n arguments[0].top !== undefined\n ? arguments[0].top\n : arguments[1] !== undefined ? arguments[1] : 0\n );\n\n return;\n }\n\n // LET THE SMOOTHNESS BEGIN!\n smoothScroll.call(\n w,\n d.body,\n ~~arguments[0].left + (w.scrollX || w.pageXOffset),\n ~~arguments[0].top + (w.scrollY || w.pageYOffset)\n );\n };\n\n // Element.prototype.scroll and Element.prototype.scrollTo\n Element.prototype.scroll = Element.prototype.scrollTo = function() {\n // avoid action when no arguments are passed\n if (arguments[0] === undefined) {\n return;\n }\n\n // avoid smooth behavior if not required\n if (shouldBailOut(arguments[0]) === true) {\n // if one number is passed, throw error to match Firefox implementation\n if (typeof arguments[0] === 'number' && arguments[1] === undefined) {\n throw new SyntaxError('Value could not be converted');\n }\n\n original.elementScroll.call(\n this,\n // use left prop, first number argument or fallback to scrollLeft\n arguments[0].left !== undefined\n ? ~~arguments[0].left\n : typeof arguments[0] !== 'object' ? ~~arguments[0] : this.scrollLeft,\n // use top prop, second argument or fallback to scrollTop\n arguments[0].top !== undefined\n ? ~~arguments[0].top\n : arguments[1] !== undefined ? ~~arguments[1] : this.scrollTop\n );\n\n return;\n }\n\n var left = arguments[0].left;\n var top = arguments[0].top;\n\n // LET THE SMOOTHNESS BEGIN!\n smoothScroll.call(\n this,\n this,\n typeof left === 'undefined' ? this.scrollLeft : ~~left,\n typeof top === 'undefined' ? this.scrollTop : ~~top\n );\n };\n\n // Element.prototype.scrollBy\n Element.prototype.scrollBy = function() {\n // avoid action when no arguments are passed\n if (arguments[0] === undefined) {\n return;\n }\n\n // avoid smooth behavior if not required\n if (shouldBailOut(arguments[0]) === true) {\n original.elementScroll.call(\n this,\n arguments[0].left !== undefined\n ? ~~arguments[0].left + this.scrollLeft\n : ~~arguments[0] + this.scrollLeft,\n arguments[0].top !== undefined\n ? ~~arguments[0].top + this.scrollTop\n : ~~arguments[1] + this.scrollTop\n );\n\n return;\n }\n\n this.scroll({\n left: ~~arguments[0].left + this.scrollLeft,\n top: ~~arguments[0].top + this.scrollTop,\n behavior: arguments[0].behavior\n });\n };\n\n // Element.prototype.scrollIntoView\n Element.prototype.scrollIntoView = function() {\n // avoid smooth behavior if not required\n if (shouldBailOut(arguments[0]) === true) {\n original.scrollIntoView.call(\n this,\n arguments[0] === undefined ? true : arguments[0]\n );\n\n return;\n }\n\n // LET THE SMOOTHNESS BEGIN!\n var scrollableParent = findScrollableParent(this);\n var parentRects = scrollableParent.getBoundingClientRect();\n var clientRects = this.getBoundingClientRect();\n\n if (scrollableParent !== d.body) {\n // reveal element inside parent\n smoothScroll.call(\n this,\n scrollableParent,\n scrollableParent.scrollLeft + clientRects.left - parentRects.left,\n scrollableParent.scrollTop + clientRects.top - parentRects.top\n );\n\n // reveal parent in viewport unless is fixed\n if (w.getComputedStyle(scrollableParent).position !== 'fixed') {\n w.scrollBy({\n left: parentRects.left,\n top: parentRects.top,\n behavior: 'smooth'\n });\n }\n } else {\n // reveal element in viewport\n w.scrollBy({\n left: clientRects.left,\n top: clientRects.top,\n behavior: 'smooth'\n });\n }\n };\n }\n\n if (typeof exports === 'object' && typeof module !== 'undefined') {\n // commonjs\n module.exports = { polyfill: polyfill };\n } else {\n // global\n polyfill();\n }\n\n}());\n","import MaterialTabs from \"@material-ui/core/Tabs\";\nimport React, { useEffect, useRef } from \"react\";\nimport { SegmentedTabsProps } from \"./SegmentedTabs.types\";\nimport { makeStyles, Theme } from \"@material-ui/core\";\nimport smoothscroll from \"smoothscroll-polyfill\";\n\n// Style\ninterface StyleProps {\n width: number | string;\n slide: boolean;\n}\n\nconst useStyles = makeStyles<Theme, StyleProps>((theme: Theme) => ({\n root: (props) => ({\n width: props.width,\n boxSizing: \"border-box\",\n border: \"1px solid #cccccc\",\n borderRadius: \"9px\",\n padding: \"4px 0\",\n \"& button\": {\n borderRadius: \"8px\",\n margin: \"0 4px\",\n \"&.Mui-selected\": {\n backgroundColor: props.slide ? \"unset\" : theme.primary.primary50,\n color: theme.primary.primary500,\n },\n },\n }),\n indicator: (props) => ({\n borderRadius: \"8px\",\n height: props.slide ? \"100%\" : 0,\n backgroundColor: theme.primary.primary50,\n }),\n scrollButtons: {\n width: 32,\n overflow: \"hidden\",\n \"&.Mui-disabled\": {\n width: 4,\n },\n },\n}));\n\nconst SegmentedTabs: React.FC<SegmentedTabsProps> = ({\n children,\n width,\n slide,\n ...other\n}) => {\n const styleProps: StyleProps = {\n width: width,\n slide: slide,\n };\n const classes = useStyles(styleProps);\n const tabsRef = useRef(null);\n\n useEffect(() => {\n smoothscroll.polyfill();\n if (\n tabsRef &&\n tabsRef.current &&\n other.variant &&\n other.variant === \"scrollable\"\n ) {\n //確保 scrollable tabs 的 selected tab 能夠顯示出來\n const el: any = tabsRef.current.querySelectorAll(\n \".MuiButtonBase-root.MuiTab-root.MuiTab-textColorInherit.Mui-selected\"\n )[0];\n if (el) {\n setTimeout(() => {\n el.scrollIntoView({\n behavior: \"smooth\",\n block: \"nearest\",\n inline: \"center\",\n });\n }, 1000);\n }\n }\n }, []);\n\n return (\n <MaterialTabs\n {...other}\n classes={{\n root: classes.root,\n indicator: classes.indicator,\n scrollButtons: classes.scrollButtons,\n }}\n indicatorColor=\"primary\"\n ref={tabsRef}\n >\n {children}\n </MaterialTabs>\n );\n};\n\nexport default SegmentedTabs;\n","import { Box } from \"@material-ui/core\";\nimport { TabPanelProps } from \"@material-ui/lab\";\nimport React from \"react\";\n\ninterface MyTabPanelProps {\n children?: React.ReactNode;\n index: any;\n value: any;\n other?: TabPanelProps;\n}\n\nfunction TabPanel(props: MyTabPanelProps) {\n const { children, value, index, ...other } = props;\n\n return (\n <div\n role=\"tabpanel\"\n hidden={value !== index}\n id={`scrollable-auto-tabpanel-${index}`}\n aria-labelledby={`scrollable-auto-tab-${index}`}\n {...other}\n >\n {value === index && <Box>{children}</Box>}\n </div>\n );\n}\n\nexport default TabPanel;\n","import MaterialSelect from \"@material-ui/core/Select\";\nimport React from \"react\";\nimport { SelectProps } from \"./Select.types\";\nimport {\n FormControl,\n FormHelperText,\n InputLabel,\n makeStyles,\n OutlinedInput,\n Theme,\n} from \"@material-ui/core\";\n\n// Style\ninterface StyleProps {\n height: number;\n width: string | number;\n paddingTop: number;\n paddingLeft: number;\n dropdown: boolean;\n}\n\nconst useOutlinedInputStyles = makeStyles((theme: Theme) => ({\n root: {\n \"& $notchedOutline\": {\n borderColor: theme.black.black500,\n },\n \"&:hover\": {\n borderColor: theme.black.black1000,\n \"& svg\": {\n color: theme.black.black1000,\n },\n },\n \"&$focused $notchedOutline\": {\n borderColor: theme.black.black1000,\n borderWidth: 1,\n // boxShadow: \" 0px 0px 0px 4px #D7DFF8\",\n },\n },\n focused: {\n \"& svg\": {\n color: theme.black.black1000,\n },\n },\n notchedOutline: {},\n}));\n\nconst useStyles = makeStyles<Theme, StyleProps>((theme: Theme) => ({\n root: (props) => ({\n //SWAPTheme調整\n width: props.width ? props.width : \"100%\",\n }),\n inputRoot: (props) => ({\n height: props.height - 32 ? props.height - 32 : 16,\n padding:\n props.paddingTop || props.paddingLeft\n ? `${props.paddingTop}px ${props.paddingLeft}px`\n : \"12px 16px\",\n paddingTop: props.paddingTop ? props.paddingTop : 12,\n paddingLeft: props.paddingLeft ? props.paddingLeft : 16,\n display: \"flex\",\n alignItems: \"center\",\n }),\n select: (props) => ({\n fontSize: props.dropdown ? 14 : 16,\n fontWeight: props.dropdown ? 700 : 400,\n border: \"none\",\n color: \"#4b4b4b\",\n \"&:focus\": {\n backgroundColor: \"white\",\n color: theme.black.black1000,\n },\n \"&:hover\": {\n color: theme.black.black1000,\n backgroundColor: \"white\",\n },\n }),\n icon: {\n color: theme.black.black800,\n },\n outlined: (props) => ({\n transform:\n props.paddingTop || props.paddingLeft\n ? `translate(${props.paddingLeft - 4}px, ${\n props.paddingTop + 2\n }px) scale(1)`\n : \"translate(12px, 14px) scale(1)\",\n }),\n shrink: {\n width: \"fit-content\",\n padding: \"0 4px\",\n backgroundColor: \"white\",\n fontSize: 12,\n fontWeight: 700,\n color: theme.black.black800,\n \"&.Mui-focused\": {\n fontWeight: 700,\n color: theme.black.black800,\n },\n },\n menuRoot: {\n marginTop: 8,\n },\n}));\n\nconst Select: React.FC<SelectProps> = ({\n children,\n style,\n value,\n onChange,\n defaultValue,\n error,\n disabled,\n type,\n autoFocus,\n placeholder,\n fullWidth,\n required,\n InputProps,\n helperText,\n width,\n height,\n horizontal,\n vertical,\n open,\n placeholderStyle,\n selectStyle,\n helperTextStyle,\n onClick,\n transformOrigin,\n paddingTop,\n paddingLeft,\n dropdown,\n}) => {\n const outlinedInputClasses = useOutlinedInputStyles();\n const styleProps: StyleProps = {\n width: width,\n height: height,\n paddingTop: paddingTop,\n paddingLeft: paddingLeft,\n dropdown: dropdown,\n };\n const classes = useStyles(styleProps);\n\n return (\n <FormControl\n variant=\"outlined\"\n style={style}\n classes={{ root: classes.root }}\n >\n <InputLabel\n classes={{\n root: classes.placeholder,\n outlined: classes.outlined,\n shrink: classes.shrink,\n }}\n style={placeholderStyle}\n >\n {placeholder}\n </InputLabel>\n <MaterialSelect\n classes={{ select: classes.select, icon: classes.icon }}\n style={selectStyle}\n open={open}\n value={value}\n onChange={onChange}\n label={placeholder}\n defaultValue={defaultValue}\n error={error}\n disabled={disabled}\n type={type}\n autoFocus={autoFocus}\n required={required}\n fullWidth={fullWidth}\n inputProps={{\n classes: { root: classes.inputRoot },\n ...InputProps,\n }}\n input={<OutlinedInput classes={outlinedInputClasses} />}\n MenuProps={{\n transformOrigin: transformOrigin,\n classes: { paper: classes.menuRoot },\n anchorOrigin: {\n vertical: vertical,\n horizontal: horizontal,\n },\n getContentAnchorEl: null,\n }}\n onClick={onClick}\n >\n {children}\n </MaterialSelect>\n <FormHelperText style={helperTextStyle}>{helperText}</FormHelperText>\n </FormControl>\n );\n};\n\nexport default Select;\n","import MaterialMenu from \"@material-ui/core/Menu\";\nimport React from \"react\";\nimport { MyMenuProps } from \"./Menu.types\";\n\nconst Menu: React.FC<MyMenuProps> = (props) => {\n const { children, open, ...other } = props;\n return (\n <MaterialMenu open={open} {...other}>\n {children}\n </MaterialMenu>\n );\n};\n\nexport default Menu;\n","import MaterialMenuItem from \"@material-ui/core/MenuItem\";\nimport React from \"react\";\nimport { MyMenuItemProps } from \"./MenuItem.types\";\nimport { ListItemIcon, makeStyles, Theme } from \"@material-ui/core\";\n\n// Style\ninterface StyleProps {\n width: number | string;\n height: number | string;\n hoverBackgroundColor: string;\n hoverFontColor: string;\n hoverIconColor: string;\n rippleColor: string;\n}\nconst useStyles = makeStyles<Theme, StyleProps>((theme: Theme) => ({\n root: (props) => ({\n fontSize: 14,\n fontWeight: 700,\n width: props.width,\n minHeight: props.height,\n \"&:focus\": {\n backgroundColor: \"unset\",\n },\n \"&:hover\": {\n backgroundColor: props.hoverBackgroundColor\n ? props.hoverBackgroundColor\n : theme.primary.primary50,\n color: props.hoverFontColor\n ? props.hoverFontColor\n : theme.primary.primary800,\n \"& svg\": {\n \"& path\": {\n fill: props.hoverIconColor\n ? props.hoverIconColor\n : theme.primary.primary800,\n },\n },\n },\n \"& span\": {\n color: props.rippleColor,\n },\n }),\n}));\n\nconst MenuItem: React.FC<MyMenuItemProps> = React.forwardRef((props, ref) => {\n const {\n children,\n width,\n hoverBackgroundColor,\n hoverFontColor,\n hoverIconColor,\n height,\n rippleColor,\n iconChildren,\n ...other\n } = props;\n const styleProps: StyleProps = {\n width: width,\n height: height,\n hoverBackgroundColor: hoverBackgroundColor,\n hoverFontColor: hoverFontColor,\n hoverIconColor: hoverIconColor,\n rippleColor: rippleColor,\n };\n\n const classes = useStyles(styleProps);\n return (\n <MaterialMenuItem className={classes.root} {...other}>\n {children}\n <ListItemIcon style={{ justifyContent: \"flex-end\" }}>\n {iconChildren}\n </ListItemIcon>\n </MaterialMenuItem>\n );\n});\n\nexport default MenuItem;\n","import MaterialButton from \"@material-ui/core/Button\";\nimport React from \"react\";\nimport { MyButtonProps } from \"./Button.types\";\nimport { makeStyles, Theme, useTheme } from \"@material-ui/core\";\nimport CircularProgress from \"@material-ui/core/CircularProgress\";\n\ninterface styleProps {\n variant: any;\n size: any;\n width: any;\n minWidth: any;\n}\nconst useStyles = makeStyles((theme: Theme) => ({\n root: {\n textTransform: \"unset\",\n color: ({ variant }: styleProps) =>\n variant === \"primary\"\n ? theme.black.white\n : variant === \"secondary\"\n ? theme.primary.primary400\n : variant === \"tertiary\"\n ? theme.black.black800\n : variant === \"text\"\n ? theme.primary.primary400\n : variant === \"black\"\n ? theme.black.black800\n : variant === \"danger\"\n ? theme.black.white\n : theme.black.white,\n backgroundColor: ({ variant }: styleProps) =>\n variant === \"primary\"\n ? theme.primary.primary400\n : variant === \"secondary\"\n ? theme.black.white\n : variant === \"tertiary\"\n ? theme.black.black400\n : variant === \"text\"\n ? theme.black.white\n : variant === \"black\"\n ? theme.black.white\n : variant === \"danger\"\n ? theme.danger.danger800\n : theme.primary.primary400,\n border: ({ variant }: styleProps) =>\n variant === \"primary\"\n ? `1px solid ${theme.primary.primary600}`\n : variant === \"secondary\"\n ? `1px solid ${theme.primary.primary400}`\n : variant === \"tertiary\"\n ? null\n : variant === \"text\" || variant === \"black\"\n ? null\n : variant === \"danger\"\n ? `1px solid ${theme.danger.dangerA11y}`\n : `1px solid ${theme.primary.primary600}`,\n borderRadius: \"8px\",\n height: ({ size }: styleProps) =>\n size === \"small\"\n ? \"40px\"\n : size === \"medium\"\n ? \"48px\"\n : size === \"large\"\n ? \"56px\"\n : \"48px\",\n padding: ({ size }: styleProps) =>\n size === \"small\"\n ? \"12px 16px\"\n : size === \"medium\"\n ? \"15px 24px\"\n : size === \"large\"\n ? \"19px 32px\"\n : \"15px 24px\",\n minWidth: ({ minWidth }: styleProps) => minWidth,\n width: ({ width }: styleProps) => width,\n fontSize: ({ size }: styleProps) =>\n size === \"small\" ? 14 : size === \"medium\" || size === \"large\" ? 16 : 16,\n fontWeight: 700,\n lineHeight: 1.125,\n \"&:hover\": {\n backgroundColor: ({ variant }: styleProps) =>\n variant === \"primary\"\n ? theme.primary.primary300\n : variant === \"secondary\"\n ? theme.primary.primary50\n : variant === \"tertiary\"\n ? theme.black.black500\n : variant === \"text\"\n ? theme.primary.primary50\n : variant === \"black\"\n ? theme.black.black400\n : variant === \"danger\"\n ? theme.danger.danger600\n : theme.primary.primary300,\n border: ({ variant }: styleProps) =>\n variant === \"primary\"\n ? `1px solid ${theme.primary.primary300}`\n : variant === \"tertiary\" || variant === \"text\" || variant === \"black\"\n ? null\n : variant === \"danger\"\n ? `1px solid ${theme.danger.dangerA11y}`\n : `1px solid ${theme.primary.primary300}`,\n },\n \"&:active\": {\n backgroundColor: ({ variant }: styleProps) =>\n variant === \"primary\"\n ? theme.primary.primary500\n : variant === \"secondary\"\n ? theme.primary.primary100\n : variant === \"tertiary\"\n ? theme.black.black600\n : variant === \"text\"\n ? theme.primary.primary100\n : variant === \"black\"\n ? theme.black.black500\n : variant === \"danger\"\n ? theme.danger.danger900\n : theme.primary.primary500,\n },\n \"&:focus-visible\": {\n boxShadow: ({ variant }: styleProps) =>\n variant === \"black\"\n ? \"0px 0px 0px 4px #CCCCCC\"\n : variant === \"danger\"\n ? \"0px 0px 0px 4px #FFCCD0\"\n : variant === \"tertiary\"\n ? \"0px 0px 0px 4px rgba(0, 0, 0, 0.1)\"\n : \"0px 0px 0px 4px #D7DFF8\",\n backgroundColor: ({ variant }: styleProps) =>\n variant === \"primary\"\n ? theme.primary.primary400\n : variant === \"secondary\"\n ? theme.primary.primary50\n : variant === \"tertiary\"\n ? theme.black.black400\n : variant === \"text\"\n ? theme.primary.primary50\n : variant === \"black\"\n ? theme.black.black400\n : variant === \"danger\"\n ? theme.danger.danger600\n : theme.primary.primary400,\n border: ({ variant }: styleProps) =>\n variant === \"secondary\"\n ? `1px solid ${theme.primary.primary400}`\n : variant === \"tertiary\"\n ? `1px solid ${theme.black.black600}`\n : variant === \"text\"\n ? `1px solid ${theme.primary.primary400}`\n : variant === \"black\"\n ? `1px solid ${theme.black.black800}`\n : variant === \"danger\"\n ? `1px solid ${theme.danger.dangerA11y}`\n : `1px solid ${theme.primary.primary600}`,\n },\n \"&:disabled\": {\n opacity: 0.4,\n backgroundColor: ({ variant }: styleProps) =>\n variant === \"primary\"\n ? theme.primary.primary800\n : variant === \"secondary\"\n ? theme.black.white\n : variant === \"tertiary\"\n ? theme.black.black400\n : variant === \"text\"\n ? theme.black.white\n : variant === \"black\"\n ? theme.black.white\n : variant === \"danger\"\n ? theme.danger.danger800\n : theme.primary.primary800,\n color: ({ variant }: styleProps) =>\n variant === \"primary\"\n ? theme.black.white\n : variant === \"secondary\"\n ? theme.primary.primary400\n : variant === \"tertiary\"\n ? theme.black.black800\n : variant === \"text\"\n ? theme.primary.primary400\n : variant === \"black\"\n ? theme.black.black800\n : variant === \"danger\"\n ? theme.black.white\n : theme.black.white,\n border: ({ variant }: styleProps) =>\n variant === \"secondary\"\n ? `1px solid ${theme.primary.primary800}`\n : variant === \"danger\"\n ? `1px solid ${theme.danger.dangerA11y}`\n : null,\n },\n },\n}));\n\nconst Button: React.FC<MyButtonProps> = (props) => {\n const {\n children,\n variant,\n minWidth,\n width,\n size,\n loading,\n onClick,\n ...other\n } = props;\n\n const theme = useTheme();\n const classes = useStyles({\n variant,\n size,\n minWidth,\n width,\n });\n return (\n <MaterialButton\n className={classes.root}\n disableElevation\n disableFocusRipple\n onClick={(event: React.MouseEvent<HTMLButtonElement, MouseEvent>) => {\n onClick(event);\n }}\n size=\"medium\"\n {...other}\n >\n {/* Loading circle */}\n {loading ? (\n <div style={{ position: \"relative\" }}>\n {/* bottom */}\n <CircularProgress\n variant=\"determinate\"\n value={100}\n size={20}\n thickness={5}\n style={{\n position: \"absolute\",\n left: -10,\n top: -10,\n color:\n variant === \"primary\"\n ? theme.black.white\n : variant === \"secondary\" ||\n variant === \"tertiary\" ||\n variant === \"text\" ||\n variant === \"black\"\n ? theme.black.black500\n : theme.black.white,\n opacity:\n variant === \"primary\"\n ? 0.4\n : variant === \"secondary\" ||\n variant === \"tertiary\" ||\n variant === \"text\" ||\n variant === \"black\"\n ? 1\n : 0.4,\n }}\n />\n {/* top */}\n <CircularProgress\n variant=\"indeterminate\"\n color=\"primary\"\n size={20}\n thickness={5}\n style={{\n position: \"absolute\",\n left: -10,\n top: -10,\n color:\n variant === \"primary\"\n ? theme.black.white\n : variant === \"secondary\" ||\n variant === \"tertiary\" ||\n variant === \"text\" ||\n variant === \"black\"\n ? theme.primary.primary800\n : theme.black.white,\n }}\n />\n </div>\n ) : (\n <div style={{ whiteSpace: \"nowrap\" }}>{children}</div>\n )}\n </MaterialButton>\n );\n};\n\nexport default Button;\n","import { makeStyles, Theme, useTheme } from \"@material-ui/core\";\nimport MaterialIconButton from \"@material-ui/core/IconButton\";\nimport React from \"react\";\nimport { MyIconButtonProps } from \"./IconButton.types\";\n\n// Style\ninterface StyleProps {\n hoverColor: string;\n hoverIconColor: string;\n width: number | string;\n height: number | string;\n}\n\nconst useStyles = makeStyles<Theme, StyleProps>(() => ({\n root: (props) => ({\n width: props.width,\n height: props.height,\n borderRadius: 8,\n \"&:hover\": {\n backgroundColor: props.hoverColor,\n \"& svg\": {\n \"& path\": {\n fill: props.hoverIconColor,\n },\n },\n },\n }),\n}));\n\nconst IconButton: React.FC<MyIconButtonProps> = (props): React.ReactElement => {\n const { hoverColor, hoverIconColor, width, height, ...other } = props;\n const theme = useTheme();\n const styleProps: StyleProps = {\n width: width ? width : 32,\n height: height ? height : 32,\n hoverColor: hoverColor\n ? hoverColor === \"primary50\"\n ? theme.primary.primary50\n : hoverColor === \"primary100\"\n ? theme.primary.primary100\n : hoverColor === \"primary200\"\n ? theme.primary.primary200\n : hoverColor === \"primary300\"\n ? theme.primary.primary300\n : hoverColor === \"primary400\"\n ? theme.primary.primary400\n : hoverColor === \"primary500\"\n ? theme.primary.primary500\n : hoverColor === \"primary600\"\n ? theme.primary.primary600\n : hoverColor === \"primary700\"\n ? theme.primary.primary700\n : hoverColor === \"primary800\"\n ? theme.primary.primary800\n : hoverColor === \"primary900\"\n ? theme.primary.primary900\n : hoverColor === \"primaryA11y\"\n ? theme.primary.primaryA11y\n : hoverColor === \"secondary50\"\n ? theme.secondary.secondary50\n : hoverColor === \"secondary100\"\n ? theme.secondary.secondary100\n : hoverColor === \"secondary200\"\n ? theme.secondary.secondary200\n : hoverColor === \"secondary300\"\n ? theme.secondary.secondary300\n : hoverColor === \"secondary400\"\n ? theme.secondary.secondary400\n : hoverColor === \"secondary500\"\n ? theme.secondary.secondary500\n : hoverColor === \"secondary600\"\n ? theme.secondary.secondary600\n : hoverColor === \"secondary700\"\n ? theme.secondary.secondary700\n : hoverColor === \"secondary800\"\n ? theme.secondary.secondary800\n : hoverColor === \"secondary900\"\n ? theme.secondary.secondary900\n : hoverColor === \"secondaryA11y\"\n ? theme.secondary.secondaryA11y\n : hoverColor === \"danger50\"\n ? theme.danger.danger50\n : hoverColor === \"danger100\"\n ? theme.danger.danger100\n : hoverColor === \"danger200\"\n ? theme.danger.danger200\n : hoverColor === \"danger300\"\n ? theme.danger.danger300\n : hoverColor === \"danger400\"\n ? theme.danger.danger400\n : hoverColor === \"danger500\"\n ? theme.danger.danger500\n : hoverColor === \"danger600\"\n ? theme.danger.danger600\n : hoverColor === \"danger700\"\n ? theme.danger.danger700\n : hoverColor === \"danger800\"\n ? theme.danger.danger800\n : hoverColor === \"danger900\"\n ? theme.danger.danger900\n : hoverColor === \"dangerA11y\"\n ? theme.danger.dangerA11y\n : hoverColor === \"success50\"\n ? theme.success.success50\n : hoverColor === \"success100\"\n ? theme.success.success100\n : hoverColor === \"success200\"\n ? theme.success.success200\n : hoverColor === \"success300\"\n ? theme.success.success300\n : hoverColor === \"success400\"\n ? theme.success.success400\n : hoverColor === \"success500\"\n ? theme.success.success500\n : hoverColor === \"success600\"\n ? theme.success.success600\n : hoverColor === \"success700\"\n ? theme.success.success700\n : hoverColor === \"success800\"\n ? theme.success.success800\n : hoverColor === \"success900\"\n ? theme.success.success900\n : hoverColor === \"successA11y\"\n ? theme.success.successA11y\n : hoverColor === \"white\"\n ? theme.black.white\n : hoverColor === \"black100\"\n ? theme.black.black100\n : hoverColor === \"black200\"\n ? theme.black.black200\n : hoverColor === \"black300\"\n ? theme.black.black300\n : hoverColor === \"black400\"\n ? theme.black.black400\n : hoverColor === \"black500\"\n ? theme.black.black500\n : hoverColor === \"black600\"\n ? theme.black.black600\n : hoverColor === \"black700\"\n ? theme.black.black700\n : hoverColor === \"black800\"\n ? theme.black.black800\n : hoverColor === \"black900\"\n ? theme.black.black900\n : hoverColor === \"black1000\"\n ? theme.black.black1000\n : hoverColor\n : theme.black.black400,\n hoverIconColor: hoverIconColor\n ? hoverIconColor === \"primary50\"\n ? theme.primary.primary50\n : hoverIconColor === \"primary100\"\n ? theme.primary.primary100\n : hoverIconColor === \"primary200\"\n ? theme.primary.primary200\n : hoverIconColor === \"primary300\"\n ? theme.primary.primary300\n : hoverIconColor === \"primary400\"\n ? theme.primary.primary400\n : hoverIconColor === \"primary500\"\n ? theme.primary.primary500\n : hoverIconColor === \"primary600\"\n ? theme.primary.primary600\n : hoverIconColor === \"primary700\"\n ? theme.primary.primary700\n : hoverIconColor === \"primary800\"\n ? theme.primary.primary800\n : hoverIconColor === \"primary900\"\n ? theme.primary.primary900\n : hoverIconColor === \"primaryA11y\"\n ? theme.primary.primaryA11y\n : hoverIconColor === \"secondary50\"\n ? theme.secondary.secondary50\n : hoverIconColor === \"secondary100\"\n ? theme.secondary.secondary100\n : hoverIconColor === \"secondary200\"\n ? theme.secondary.secondary200\n : hoverIconColor === \"secondary300\"\n ? theme.secondary.secondary300\n : hoverIconColor === \"secondary400\"\n ? theme.secondary.secondary400\n : hoverIconColor === \"secondary500\"\n ? theme.secondary.secondary500\n : hoverIconColor === \"secondary600\"\n ? theme.secondary.secondary600\n : hoverIconColor === \"secondary700\"\n ? theme.secondary.secondary700\n : hoverIconColor === \"secondary800\"\n ? theme.secondary.secondary800\n : hoverIconColor === \"secondary900\"\n ? theme.secondary.secondary900\n : hoverIconColor === \"secondaryA11y\"\n ? theme.secondary.secondaryA11y\n : hoverIconColor === \"danger50\"\n ? theme.danger.danger50\n : hoverIconColor === \"danger100\"\n ? theme.danger.danger100\n : hoverIconColor === \"danger200\"\n ? theme.danger.danger200\n : hoverIconColor === \"danger300\"\n ? theme.danger.danger300\n : hoverIconColor === \"danger400\"\n ? theme.danger.danger400\n : hoverIconColor === \"danger500\"\n ? theme.danger.danger500\n : hoverIconColor === \"danger600\"\n ? theme.danger.danger600\n : hoverIconColor === \"danger700\"\n ? theme.danger.danger700\n : hoverIconColor === \"danger800\"\n ? theme.danger.danger800\n : hoverIconColor === \"danger900\"\n ? theme.danger.danger900\n : hoverIconColor === \"dangerA11y\"\n ? theme.danger.dangerA11y\n : hoverIconColor === \"success50\"\n ? theme.success.success50\n : hoverIconColor === \"success100\"\n ? theme.success.success100\n : hoverIconColor === \"success200\"\n ? theme.success.success200\n : hoverIconColor === \"success300\"\n ? theme.success.success300\n : hoverIconColor === \"success400\"\n ? theme.success.success400\n : hoverIconColor === \"success500\"\n ? theme.success.success500\n : hoverIconColor === \"success600\"\n ? theme.success.success600\n : hoverIconColor === \"success700\"\n ? theme.success.success700\n : hoverIconColor === \"success800\"\n ? theme.success.success800\n : hoverIconColor === \"success900\"\n ? theme.success.success900\n : hoverIconColor === \"successA11y\"\n ? theme.success.successA11y\n : hoverIconColor === \"white\"\n ? theme.black.white\n : hoverIconColor === \"black100\"\n ? theme.black.black100\n : hoverIconColor === \"black200\"\n ? theme.black.black200\n : hoverIconColor === \"black300\"\n ? theme.black.black300\n : hoverIconColor === \"black400\"\n ? theme.black.black400\n : hoverIconColor === \"black500\"\n ? theme.black.black500\n : hoverIconColor === \"black600\"\n ? theme.black.black600\n : hoverIconColor === \"black700\"\n ? theme.black.black700\n : hoverIconColor === \"black800\"\n ? theme.black.black800\n : hoverIconColor === \"black900\"\n ? theme.black.black900\n : hoverIconColor === \"black1000\"\n ? theme.black.black1000\n : hoverIconColor\n : null,\n };\n const classes = useStyles(styleProps);\n\n return <MaterialIconButton className={classes.root} {...other} />;\n};\n\nexport default IconButton;\n","import MaterialSnackBar from \"@material-ui/core/Snackbar\";\nimport React from \"react\";\nimport { MySnackbarProps } from \"./Snackbar.types\";\nimport { Fade, makeStyles, Slide, SlideProps, Theme } from \"@material-ui/core\";\nimport IconButton from \"../IconButton/IconButton\";\n\ntype TransitionProps = Omit<SlideProps, \"direction\">;\n\nfunction TransitionLeft(props: TransitionProps) {\n return <Slide {...props} direction=\"left\" />;\n}\nfunction TransitionUp(props: TransitionProps) {\n return <Slide {...props} direction=\"up\" />;\n}\n\nfunction TransitionRight(props: TransitionProps) {\n return <Slide {...props} direction=\"right\" />;\n}\n\nfunction TransitionDown(props: TransitionProps) {\n return <Slide {...props} direction=\"down\" />;\n}\nfunction Transition(props: TransitionProps) {\n return <Fade {...props} />;\n}\n\n// Style\ninterface StyleProps {\n width: string | number;\n height: string | number;\n variant: string;\n}\n\nconst useStyles = makeStyles<Theme, StyleProps>((theme: Theme) => ({\n root: {\n \"@media only screen and (min-width: 600px)\": {\n width: \"fit-content\",\n marginRight: 24,\n },\n \"@media only screen and (max-width: 600px)\": {\n width: \"unset\",\n bottom: 16,\n left: 16,\n right: 16,\n },\n },\n contentRoot: (props) => ({\n flexWrap: \"nowrap\",\n minWidth: 320,\n maxWidth: 640,\n width: props.width ? props.width : \"unset\",\n height: props.height ? props.height : \"unset\",\n boxShadow: theme.boxShadow.l,\n borderRadius: theme.borderRadius.m,\n backgroundColor:\n props.variant === \"success\"\n ? theme.success.success800\n : props.variant === \"error\"\n ? theme.danger.danger900\n : theme.black.black1000,\n border:\n props.variant === \"success\"\n ? `1px solid ${theme.success.successA11y}`\n : props.variant === \"error\"\n ? `1px solid ${theme.danger.dangerA11y}`\n : `1px solid ${theme.black.black1000}`,\n padding: \"12px 16px\",\n boxSizing: \"border-box\",\n }),\n message: {\n padding: 0,\n },\n action: {\n padding: 0,\n },\n revertButton: {\n fontSize: 14,\n fontWeight: 700,\n lineHeight: 1.4,\n color: theme.secondary.secondary600,\n cursor: \"pointer\",\n whiteSpace: \"nowrap\",\n marginLeft: 8,\n },\n children: {\n display: \"flex\",\n alignItems: \"center\",\n fontSize: 14,\n fontWeight: 400,\n lineHeight: 1.6,\n color: \"#ffffff\",\n },\n}));\n\nconst Snackbar: React.FC<MySnackbarProps> = (props) => {\n const {\n message,\n transitionDirection,\n transitionDuration,\n width,\n height,\n variant,\n action,\n revertButton,\n closeIcon,\n icon,\n checkIcon,\n errorIcon,\n ...other\n } = props;\n const styleProps: StyleProps = {\n width: width,\n height: height,\n variant: variant,\n };\n const classes = useStyles(styleProps);\n return (\n <MaterialSnackBar\n {...other}\n className={classes.root}\n ContentProps={{\n classes: {\n root: classes.contentRoot,\n message: classes.message,\n action: classes.action,\n },\n }}\n message={\n <div className={classes.children}>\n {checkIcon ? (\n <>\n {icon_checked}\n <div style={{ width: 8, height: \"100%\" }} />\n </>\n ) : errorIcon ? (\n <>\n {icon ? icon : icon_error}\n <div style={{ width: 8, height: \"100%\" }} />\n </>\n ) : icon ? (\n <>\n {icon}\n <div style={{ width: 8, height: \"100%\" }} />\n </>\n ) : null}\n {message}\n </div>\n }\n action={\n action ? (\n action\n ) : (\n <>\n {revertButton ? (\n <div\n className={classes.revertButton}\n onClick={revertButton.onClick}\n >\n {revertButton.label ? revertButton.label : \"收回操作\"}\n </div>\n ) : null}\n {closeIcon ? (\n <IconButton\n hoverColor={\n variant === \"success\"\n ? \"#006818\"\n : variant === \"error\"\n ? \"#A00204\"\n : closeIcon.hoverColor\n ? closeIcon.hoverColor\n : \"#333333\"\n }\n onClick={closeIcon.onClick}\n style={{ marginLeft: 8 }}\n >\n {closeIcon.icon ? closeIcon.icon : icon_close}\n </IconButton>\n ) : null}\n </>\n )\n }\n TransitionComponent={\n transitionDirection === \"left\"\n ? TransitionLeft\n : transitionDirection === \"right\"\n ? TransitionRight\n : transitionDirection === \"up\"\n ? TransitionUp\n : transitionDirection === \"down\"\n ? TransitionDown\n : Transition\n }\n transitionDuration={transitionDuration}\n />\n );\n};\n\nconst icon_close = (\n <svg\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M19 6.41L17.59 5L12 10.59L6.41 5L5 6.41L10.59 12L5 17.59L6.41 19L12 13.41L17.59 19L19 17.59L13.41 12L19 6.41Z\"\n fill=\"white\"\n />\n </svg>\n);\n\nconst icon_checked = (\n <svg\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M21 7.00003L9 19L3.5 13.5L4.91 12.09L9 16.17L19.59 5.59003L21 7.00003Z\"\n fill=\"white\"\n />\n </svg>\n);\n\nconst icon_error = (\n <svg\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M13 13H11V7H13V13ZM13 17H11V15H13V17ZM12 2C10.6868 2 9.38642 2.25866 8.17317 2.7612C6.95991 3.26375 5.85752 4.00035 4.92893 4.92893C3.05357 6.8043 2 9.34784 2 12C2 14.6522 3.05357 17.1957 4.92893 19.0711C5.85752 19.9997 6.95991 20.7362 8.17317 21.2388C9.38642 21.7413 10.6868 22 12 22C14.6522 22 17.1957 20.9464 19.0711 19.0711C20.9464 17.1957 22 14.6522 22 12C22 10.6868 21.7413 9.38642 21.2388 8.17317C20.7362 6.95991 19.9997 5.85752 19.0711 4.92893C18.1425 4.00035 17.0401 3.26375 15.8268 2.7612C14.6136 2.25866 13.3132 2 12 2Z\"\n fill=\"white\"\n />\n </svg>\n);\n\nexport default Snackbar;\n","let updateQueue = makeQueue();\nconst raf = (fn) => schedule(fn, updateQueue);\nlet writeQueue = makeQueue();\nraf.write = (fn) => schedule(fn, writeQueue);\nlet onStartQueue = makeQueue();\nraf.onStart = (fn) => schedule(fn, onStartQueue);\nlet onFrameQueue = makeQueue();\nraf.onFrame = (fn) => schedule(fn, onFrameQueue);\nlet onFinishQueue = makeQueue();\nraf.onFinish = (fn) => schedule(fn, onFinishQueue);\nlet timeouts = [];\nraf.setTimeout = (handler, ms) => {\n let time = raf.now() + ms;\n let cancel = () => {\n let i = timeouts.findIndex((t) => t.cancel == cancel);\n if (~i)\n timeouts.splice(i, 1);\n __raf.count -= ~i ? 1 : 0;\n };\n let timeout = {time, handler, cancel};\n timeouts.splice(findTimeout(time), 0, timeout);\n __raf.count += 1;\n start();\n return timeout;\n};\nlet findTimeout = (time) => ~(~timeouts.findIndex((t) => t.time > time) || ~timeouts.length);\nraf.cancel = (fn) => {\n updateQueue.delete(fn);\n writeQueue.delete(fn);\n};\nraf.sync = (fn) => {\n sync = true;\n raf.batchedUpdates(fn);\n sync = false;\n};\nraf.throttle = (fn) => {\n let lastArgs;\n function queuedFn() {\n try {\n fn(...lastArgs);\n } finally {\n lastArgs = null;\n }\n }\n function throttled(...args) {\n lastArgs = args;\n raf.onStart(queuedFn);\n }\n throttled.handler = fn;\n throttled.cancel = () => {\n onStartQueue.delete(queuedFn);\n lastArgs = null;\n };\n return throttled;\n};\nlet nativeRaf = typeof window != \"undefined\" ? window.requestAnimationFrame : () => {\n};\nraf.use = (impl) => nativeRaf = impl;\nraf.now = typeof performance != \"undefined\" ? () => performance.now() : Date.now;\nraf.batchedUpdates = (fn) => fn();\nraf.catch = console.error;\nlet ts = -1;\nlet sync = false;\nfunction schedule(fn, queue) {\n if (sync) {\n queue.delete(fn);\n fn(0);\n } else {\n queue.add(fn);\n start();\n }\n}\nfunction start() {\n if (ts < 0) {\n ts = 0;\n nativeRaf(loop);\n }\n}\nfunction loop() {\n if (~ts) {\n nativeRaf(loop);\n raf.batchedUpdates(update);\n }\n}\nfunction update() {\n let prevTs = ts;\n ts = raf.now();\n let count = findTimeout(ts);\n if (count) {\n eachSafely(timeouts.splice(0, count), (t) => t.handler());\n __raf.count -= count;\n }\n onStartQueue.flush();\n updateQueue.flush(prevTs ? Math.min(64, ts - prevTs) : 16.667);\n onFrameQueue.flush();\n writeQueue.flush();\n onFinishQueue.flush();\n}\nfunction makeQueue() {\n let next = new Set();\n let current = next;\n return {\n add(fn) {\n __raf.count += current == next && !next.has(fn) ? 1 : 0;\n next.add(fn);\n },\n delete(fn) {\n __raf.count -= current == next && next.has(fn) ? 1 : 0;\n return next.delete(fn);\n },\n flush(arg) {\n if (current.size) {\n next = new Set();\n __raf.count -= current.size;\n eachSafely(current, (fn) => fn(arg) && next.add(fn));\n __raf.count += next.size;\n current = next;\n }\n }\n };\n}\nfunction eachSafely(values, each) {\n values.forEach((value) => {\n try {\n each(value);\n } catch (e) {\n raf.catch(e);\n }\n });\n}\nconst __raf = {\n count: 0,\n clear() {\n ts = -1;\n timeouts = [];\n onStartQueue = makeQueue();\n updateQueue = makeQueue();\n onFrameQueue = makeQueue();\n writeQueue = makeQueue();\n onFinishQueue = makeQueue();\n __raf.count = 0;\n }\n};\n\nexport { __raf, raf };\n//# sourceMappingURL=raf.mjs.map\n","import { raf } from 'rafz';\nexport { raf } from 'rafz';\nimport { useEffect, useState, useRef, useLayoutEffect as useLayoutEffect$1 } from 'react';\n\nfunction noop() {\n}\nconst defineHidden = (obj, key, value) => Object.defineProperty(obj, key, {value, writable: true, configurable: true});\nconst is = {\n arr: Array.isArray,\n obj: (a) => !!a && a.constructor.name === \"Object\",\n fun: (a) => typeof a === \"function\",\n str: (a) => typeof a === \"string\",\n num: (a) => typeof a === \"number\",\n und: (a) => a === void 0\n};\nfunction isEqual(a, b) {\n if (is.arr(a)) {\n if (!is.arr(b) || a.length !== b.length)\n return false;\n for (let i = 0; i < a.length; i++) {\n if (a[i] !== b[i])\n return false;\n }\n return true;\n }\n return a === b;\n}\nconst each = (obj, fn) => obj.forEach(fn);\nfunction eachProp(obj, fn, ctx) {\n for (const key in obj) {\n fn.call(ctx, obj[key], key);\n }\n}\nconst toArray = (a) => is.und(a) ? [] : is.arr(a) ? a : [a];\nfunction flush(queue, iterator) {\n if (queue.size) {\n const items = Array.from(queue);\n queue.clear();\n each(items, iterator);\n }\n}\nconst flushCalls = (queue, ...args) => flush(queue, (fn) => fn(...args));\n\nlet createStringInterpolator;\nlet to;\nlet colors = null;\nlet skipAnimation = false;\nlet willAdvance = noop;\nconst assign = (globals) => {\n if (globals.to)\n to = globals.to;\n if (globals.now)\n raf.now = globals.now;\n if (globals.colors !== void 0)\n colors = globals.colors;\n if (globals.skipAnimation != null)\n skipAnimation = globals.skipAnimation;\n if (globals.createStringInterpolator)\n createStringInterpolator = globals.createStringInterpolator;\n if (globals.requestAnimationFrame)\n raf.use(globals.requestAnimationFrame);\n if (globals.batchedUpdates)\n raf.batchedUpdates = globals.batchedUpdates;\n if (globals.willAdvance)\n willAdvance = globals.willAdvance;\n};\n\nvar globals = /*#__PURE__*/Object.freeze({\n __proto__: null,\n get createStringInterpolator () { return createStringInterpolator; },\n get to () { return to; },\n get colors () { return colors; },\n get skipAnimation () { return skipAnimation; },\n get willAdvance () { return willAdvance; },\n assign: assign\n});\n\nconst startQueue = new Set();\nlet currentFrame = [];\nlet prevFrame = [];\nlet priority = 0;\nconst frameLoop = {\n get idle() {\n return !startQueue.size && !currentFrame.length;\n },\n start(animation) {\n if (priority > animation.priority) {\n startQueue.add(animation);\n raf.onStart(flushStartQueue);\n } else {\n startSafely(animation);\n raf(advance);\n }\n },\n advance,\n sort(animation) {\n if (priority) {\n raf.onFrame(() => frameLoop.sort(animation));\n } else {\n const prevIndex = currentFrame.indexOf(animation);\n if (~prevIndex) {\n currentFrame.splice(prevIndex, 1);\n startUnsafely(animation);\n }\n }\n },\n clear() {\n currentFrame = [];\n startQueue.clear();\n }\n};\nfunction flushStartQueue() {\n startQueue.forEach(startSafely);\n startQueue.clear();\n raf(advance);\n}\nfunction startSafely(animation) {\n if (!currentFrame.includes(animation))\n startUnsafely(animation);\n}\nfunction startUnsafely(animation) {\n currentFrame.splice(findIndex(currentFrame, (other) => other.priority > animation.priority), 0, animation);\n}\nfunction advance(dt) {\n const nextFrame = prevFrame;\n for (let i = 0; i < currentFrame.length; i++) {\n const animation = currentFrame[i];\n priority = animation.priority;\n if (!animation.idle) {\n willAdvance(animation);\n animation.advance(dt);\n if (!animation.idle) {\n nextFrame.push(animation);\n }\n }\n }\n priority = 0;\n prevFrame = currentFrame;\n prevFrame.length = 0;\n currentFrame = nextFrame;\n return currentFrame.length > 0;\n}\nfunction findIndex(arr, test) {\n const index = arr.findIndex(test);\n return index < 0 ? arr.length : index;\n}\n\nconst colors$1 = {\n transparent: 0,\n aliceblue: 4042850303,\n antiquewhite: 4209760255,\n aqua: 16777215,\n aquamarine: 2147472639,\n azure: 4043309055,\n beige: 4126530815,\n bisque: 4293182719,\n black: 255,\n blanchedalmond: 4293643775,\n blue: 65535,\n blueviolet: 2318131967,\n brown: 2771004159,\n burlywood: 3736635391,\n burntsienna: 3934150143,\n cadetblue: 1604231423,\n chartreuse: 2147418367,\n chocolate: 3530104575,\n coral: 4286533887,\n cornflowerblue: 1687547391,\n cornsilk: 4294499583,\n crimson: 3692313855,\n cyan: 16777215,\n darkblue: 35839,\n darkcyan: 9145343,\n darkgoldenrod: 3095792639,\n darkgray: 2846468607,\n darkgreen: 6553855,\n darkgrey: 2846468607,\n darkkhaki: 3182914559,\n darkmagenta: 2332068863,\n darkolivegreen: 1433087999,\n darkorange: 4287365375,\n darkorchid: 2570243327,\n darkred: 2332033279,\n darksalmon: 3918953215,\n darkseagreen: 2411499519,\n darkslateblue: 1211993087,\n darkslategray: 793726975,\n darkslategrey: 793726975,\n darkturquoise: 13554175,\n darkviolet: 2483082239,\n deeppink: 4279538687,\n deepskyblue: 12582911,\n dimgray: 1768516095,\n dimgrey: 1768516095,\n dodgerblue: 512819199,\n firebrick: 2988581631,\n floralwhite: 4294635775,\n forestgreen: 579543807,\n fuchsia: 4278255615,\n gainsboro: 3705462015,\n ghostwhite: 4177068031,\n gold: 4292280575,\n goldenrod: 3668254975,\n gray: 2155905279,\n green: 8388863,\n greenyellow: 2919182335,\n grey: 2155905279,\n honeydew: 4043305215,\n hotpink: 4285117695,\n indianred: 3445382399,\n indigo: 1258324735,\n ivory: 4294963455,\n khaki: 4041641215,\n lavender: 3873897215,\n lavenderblush: 4293981695,\n lawngreen: 2096890111,\n lemonchiffon: 4294626815,\n lightblue: 2916673279,\n lightcoral: 4034953471,\n lightcyan: 3774873599,\n lightgoldenrodyellow: 4210742015,\n lightgray: 3553874943,\n lightgreen: 2431553791,\n lightgrey: 3553874943,\n lightpink: 4290167295,\n lightsalmon: 4288707327,\n lightseagreen: 548580095,\n lightskyblue: 2278488831,\n lightslategray: 2005441023,\n lightslategrey: 2005441023,\n lightsteelblue: 2965692159,\n lightyellow: 4294959359,\n lime: 16711935,\n limegreen: 852308735,\n linen: 4210091775,\n magenta: 4278255615,\n maroon: 2147483903,\n mediumaquamarine: 1724754687,\n mediumblue: 52735,\n mediumorchid: 3126187007,\n mediumpurple: 2473647103,\n mediumseagreen: 1018393087,\n mediumslateblue: 2070474495,\n mediumspringgreen: 16423679,\n mediumturquoise: 1221709055,\n mediumvioletred: 3340076543,\n midnightblue: 421097727,\n mintcream: 4127193855,\n mistyrose: 4293190143,\n moccasin: 4293178879,\n navajowhite: 4292783615,\n navy: 33023,\n oldlace: 4260751103,\n olive: 2155872511,\n olivedrab: 1804477439,\n orange: 4289003775,\n orangered: 4282712319,\n orchid: 3664828159,\n palegoldenrod: 4008225535,\n palegreen: 2566625535,\n paleturquoise: 2951671551,\n palevioletred: 3681588223,\n papayawhip: 4293907967,\n peachpuff: 4292524543,\n peru: 3448061951,\n pink: 4290825215,\n plum: 3718307327,\n powderblue: 2967529215,\n purple: 2147516671,\n rebeccapurple: 1714657791,\n red: 4278190335,\n rosybrown: 3163525119,\n royalblue: 1097458175,\n saddlebrown: 2336560127,\n salmon: 4202722047,\n sandybrown: 4104413439,\n seagreen: 780883967,\n seashell: 4294307583,\n sienna: 2689740287,\n silver: 3233857791,\n skyblue: 2278484991,\n slateblue: 1784335871,\n slategray: 1887473919,\n slategrey: 1887473919,\n snow: 4294638335,\n springgreen: 16744447,\n steelblue: 1182971135,\n tan: 3535047935,\n teal: 8421631,\n thistle: 3636451583,\n tomato: 4284696575,\n turquoise: 1088475391,\n violet: 4001558271,\n wheat: 4125012991,\n white: 4294967295,\n whitesmoke: 4126537215,\n yellow: 4294902015,\n yellowgreen: 2597139199\n};\n\nconst NUMBER = \"[-+]?\\\\d*\\\\.?\\\\d+\";\nconst PERCENTAGE = NUMBER + \"%\";\nfunction call(...parts) {\n return \"\\\\(\\\\s*(\" + parts.join(\")\\\\s*,\\\\s*(\") + \")\\\\s*\\\\)\";\n}\nconst rgb = new RegExp(\"rgb\" + call(NUMBER, NUMBER, NUMBER));\nconst rgba = new RegExp(\"rgba\" + call(NUMBER, NUMBER, NUMBER, NUMBER));\nconst hsl = new RegExp(\"hsl\" + call(NUMBER, PERCENTAGE, PERCENTAGE));\nconst hsla = new RegExp(\"hsla\" + call(NUMBER, PERCENTAGE, PERCENTAGE, NUMBER));\nconst hex3 = /^#([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/;\nconst hex4 = /^#([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/;\nconst hex6 = /^#([0-9a-fA-F]{6})$/;\nconst hex8 = /^#([0-9a-fA-F]{8})$/;\n\nfunction normalizeColor(color) {\n let match;\n if (typeof color === \"number\") {\n return color >>> 0 === color && color >= 0 && color <= 4294967295 ? color : null;\n }\n if (match = hex6.exec(color))\n return parseInt(match[1] + \"ff\", 16) >>> 0;\n if (colors && colors[color] !== void 0) {\n return colors[color];\n }\n if (match = rgb.exec(color)) {\n return (parse255(match[1]) << 24 | parse255(match[2]) << 16 | parse255(match[3]) << 8 | 255) >>> 0;\n }\n if (match = rgba.exec(color)) {\n return (parse255(match[1]) << 24 | parse255(match[2]) << 16 | parse255(match[3]) << 8 | parse1(match[4])) >>> 0;\n }\n if (match = hex3.exec(color)) {\n return parseInt(match[1] + match[1] + match[2] + match[2] + match[3] + match[3] + \"ff\", 16) >>> 0;\n }\n if (match = hex8.exec(color))\n return parseInt(match[1], 16) >>> 0;\n if (match = hex4.exec(color)) {\n return parseInt(match[1] + match[1] + match[2] + match[2] + match[3] + match[3] + match[4] + match[4], 16) >>> 0;\n }\n if (match = hsl.exec(color)) {\n return (hslToRgb(parse360(match[1]), parsePercentage(match[2]), parsePercentage(match[3])) | 255) >>> 0;\n }\n if (match = hsla.exec(color)) {\n return (hslToRgb(parse360(match[1]), parsePercentage(match[2]), parsePercentage(match[3])) | parse1(match[4])) >>> 0;\n }\n return null;\n}\nfunction hue2rgb(p, q, t) {\n if (t < 0)\n t += 1;\n if (t > 1)\n t -= 1;\n if (t < 1 / 6)\n return p + (q - p) * 6 * t;\n if (t < 1 / 2)\n return q;\n if (t < 2 / 3)\n return p + (q - p) * (2 / 3 - t) * 6;\n return p;\n}\nfunction hslToRgb(h, s, l) {\n const q = l < 0.5 ? l * (1 + s) : l + s - l * s;\n const p = 2 * l - q;\n const r = hue2rgb(p, q, h + 1 / 3);\n const g = hue2rgb(p, q, h);\n const b = hue2rgb(p, q, h - 1 / 3);\n return Math.round(r * 255) << 24 | Math.round(g * 255) << 16 | Math.round(b * 255) << 8;\n}\nfunction parse255(str) {\n const int = parseInt(str, 10);\n if (int < 0)\n return 0;\n if (int > 255)\n return 255;\n return int;\n}\nfunction parse360(str) {\n const int = parseFloat(str);\n return (int % 360 + 360) % 360 / 360;\n}\nfunction parse1(str) {\n const num = parseFloat(str);\n if (num < 0)\n return 0;\n if (num > 1)\n return 255;\n return Math.round(num * 255);\n}\nfunction parsePercentage(str) {\n const int = parseFloat(str);\n if (int < 0)\n return 0;\n if (int > 100)\n return 1;\n return int / 100;\n}\n\nfunction colorToRgba(input) {\n let int32Color = normalizeColor(input);\n if (int32Color === null)\n return input;\n int32Color = int32Color || 0;\n let r = (int32Color & 4278190080) >>> 24;\n let g = (int32Color & 16711680) >>> 16;\n let b = (int32Color & 65280) >>> 8;\n let a = (int32Color & 255) / 255;\n return `rgba(${r}, ${g}, ${b}, ${a})`;\n}\n\nconst createInterpolator = (range, output, extrapolate) => {\n if (is.fun(range)) {\n return range;\n }\n if (is.arr(range)) {\n return createInterpolator({\n range,\n output,\n extrapolate\n });\n }\n if (is.str(range.output[0])) {\n return createStringInterpolator(range);\n }\n const config = range;\n const outputRange = config.output;\n const inputRange = config.range || [0, 1];\n const extrapolateLeft = config.extrapolateLeft || config.extrapolate || \"extend\";\n const extrapolateRight = config.extrapolateRight || config.extrapolate || \"extend\";\n const easing = config.easing || ((t) => t);\n return (input) => {\n const range2 = findRange(input, inputRange);\n return interpolate(input, inputRange[range2], inputRange[range2 + 1], outputRange[range2], outputRange[range2 + 1], easing, extrapolateLeft, extrapolateRight, config.map);\n };\n};\nfunction interpolate(input, inputMin, inputMax, outputMin, outputMax, easing, extrapolateLeft, extrapolateRight, map) {\n let result = map ? map(input) : input;\n if (result < inputMin) {\n if (extrapolateLeft === \"identity\")\n return result;\n else if (extrapolateLeft === \"clamp\")\n result = inputMin;\n }\n if (result > inputMax) {\n if (extrapolateRight === \"identity\")\n return result;\n else if (extrapolateRight === \"clamp\")\n result = inputMax;\n }\n if (outputMin === outputMax)\n return outputMin;\n if (inputMin === inputMax)\n return input <= inputMin ? outputMin : outputMax;\n if (inputMin === -Infinity)\n result = -result;\n else if (inputMax === Infinity)\n result = result - inputMin;\n else\n result = (result - inputMin) / (inputMax - inputMin);\n result = easing(result);\n if (outputMin === -Infinity)\n result = -result;\n else if (outputMax === Infinity)\n result = result + outputMin;\n else\n result = result * (outputMax - outputMin) + outputMin;\n return result;\n}\nfunction findRange(input, inputRange) {\n for (var i = 1; i < inputRange.length - 1; ++i)\n if (inputRange[i] >= input)\n break;\n return i - 1;\n}\n\nconst $get = Symbol.for(\"FluidValue.get\");\nconst $observers = Symbol.for(\"FluidValue.observers\");\nconst hasFluidValue = (arg) => Boolean(arg && arg[$get]);\nconst getFluidValue = (arg) => arg && arg[$get] ? arg[$get]() : arg;\nconst getFluidObservers = (target) => target[$observers] || null;\nfunction callFluidObserver(observer, event) {\n if (observer.eventObserved) {\n observer.eventObserved(event);\n } else {\n observer(event);\n }\n}\nfunction callFluidObservers(target, event) {\n let observers = target[$observers];\n if (observers) {\n observers.forEach((observer) => {\n callFluidObserver(observer, event);\n });\n }\n}\nclass FluidValue {\n constructor(get) {\n if (!get && !(get = this.get)) {\n throw Error(\"Unknown getter\");\n }\n setFluidGetter(this, get);\n }\n}\nconst setFluidGetter = (target, get) => setHidden(target, $get, get);\nfunction addFluidObserver(target, observer) {\n if (target[$get]) {\n let observers = target[$observers];\n if (!observers) {\n setHidden(target, $observers, observers = new Set());\n }\n if (!observers.has(observer)) {\n observers.add(observer);\n if (target.observerAdded) {\n target.observerAdded(observers.size, observer);\n }\n }\n }\n return observer;\n}\nfunction removeFluidObserver(target, observer) {\n let observers = target[$observers];\n if (observers && observers.has(observer)) {\n const count = observers.size - 1;\n if (count) {\n observers.delete(observer);\n } else {\n target[$observers] = null;\n }\n if (target.observerRemoved) {\n target.observerRemoved(count, observer);\n }\n }\n}\nconst setHidden = (target, key, value) => Object.defineProperty(target, key, {\n value,\n writable: true,\n configurable: true\n});\n\nconst numberRegex = /[+\\-]?(?:0|[1-9]\\d*)(?:\\.\\d*)?(?:[eE][+\\-]?\\d+)?/g;\nconst colorRegex = /(#(?:[0-9a-f]{2}){2,4}|(#[0-9a-f]{3})|(rgb|hsl)a?\\((-?\\d+%?[,\\s]+){2,3}\\s*[\\d\\.]+%?\\))/gi;\nlet namedColorRegex;\nconst rgbaRegex = /rgba\\(([0-9\\.-]+), ([0-9\\.-]+), ([0-9\\.-]+), ([0-9\\.-]+)\\)/gi;\nconst rgbaRound = (_, p1, p2, p3, p4) => `rgba(${Math.round(p1)}, ${Math.round(p2)}, ${Math.round(p3)}, ${p4})`;\nconst createStringInterpolator$1 = (config) => {\n if (!namedColorRegex)\n namedColorRegex = colors ? new RegExp(`(${Object.keys(colors).join(\"|\")})`, \"g\") : /^\\b$/;\n const output = config.output.map((value) => getFluidValue(value).replace(colorRegex, colorToRgba).replace(namedColorRegex, colorToRgba));\n const keyframes = output.map((value) => value.match(numberRegex).map(Number));\n const outputRanges = keyframes[0].map((_, i) => keyframes.map((values) => {\n if (!(i in values)) {\n throw Error('The arity of each \"output\" value must be equal');\n }\n return values[i];\n }));\n const interpolators = outputRanges.map((output2) => createInterpolator({...config, output: output2}));\n return (input) => {\n let i = 0;\n return output[0].replace(numberRegex, () => String(interpolators[i++](input))).replace(rgbaRegex, rgbaRound);\n };\n};\n\nconst prefix = \"react-spring: \";\nconst once = (fn) => {\n const func = fn;\n let called = false;\n if (typeof func != \"function\") {\n throw new TypeError(`${prefix}once requires a function parameter`);\n }\n return (...args) => {\n if (!called) {\n func(...args);\n called = true;\n }\n };\n};\nconst warnInterpolate = once(console.warn);\nfunction deprecateInterpolate() {\n warnInterpolate(`${prefix}The \"interpolate\" function is deprecated in v9 (use \"to\" instead)`);\n}\nconst warnDirectCall = once(console.warn);\nfunction deprecateDirectCall() {\n warnDirectCall(`${prefix}Directly calling start instead of using the api object is deprecated in v9 (use \".start\" instead)`);\n}\n\nfunction isAnimatedString(value) {\n return is.str(value) && (value[0] == \"#\" || /\\d/.test(value) || value in (colors || {}));\n}\n\nconst useOnce = (effect) => useEffect(effect, emptyDeps);\nconst emptyDeps = [];\n\nfunction useForceUpdate() {\n const update = useState()[1];\n const mounted = useState(makeMountedRef)[0];\n useOnce(mounted.unmount);\n return () => {\n if (mounted.current) {\n update({});\n }\n };\n}\nfunction makeMountedRef() {\n const mounted = {\n current: true,\n unmount: () => () => {\n mounted.current = false;\n }\n };\n return mounted;\n}\n\nfunction useMemoOne(getResult, inputs) {\n const [initial] = useState(() => ({\n inputs,\n result: getResult()\n }));\n const committed = useRef();\n const prevCache = committed.current;\n let cache = prevCache;\n if (cache) {\n const useCache = Boolean(inputs && cache.inputs && areInputsEqual(inputs, cache.inputs));\n if (!useCache) {\n cache = {\n inputs,\n result: getResult()\n };\n }\n } else {\n cache = initial;\n }\n useEffect(() => {\n committed.current = cache;\n if (prevCache == initial) {\n initial.inputs = initial.result = void 0;\n }\n }, [cache]);\n return cache.result;\n}\nfunction areInputsEqual(next, prev) {\n if (next.length !== prev.length) {\n return false;\n }\n for (let i = 0; i < next.length; i++) {\n if (next[i] !== prev[i]) {\n return false;\n }\n }\n return true;\n}\n\nfunction usePrev(value) {\n const prevRef = useRef();\n useEffect(() => {\n prevRef.current = value;\n });\n return prevRef.current;\n}\n\nconst useLayoutEffect = typeof window !== \"undefined\" && window.document && window.document.createElement ? useLayoutEffect$1 : useEffect;\n\nexport { FluidValue, globals as Globals, addFluidObserver, callFluidObserver, callFluidObservers, colorToRgba, colors$1 as colors, createInterpolator, createStringInterpolator$1 as createStringInterpolator, defineHidden, deprecateDirectCall, deprecateInterpolate, each, eachProp, flush, flushCalls, frameLoop, getFluidObservers, getFluidValue, hasFluidValue, hex3, hex4, hex6, hex8, hsl, hsla, is, isAnimatedString, isEqual, noop, removeFluidObserver, rgb, rgba, setFluidGetter, toArray, useForceUpdate, useLayoutEffect, useMemoOne, useOnce, usePrev };\n//# sourceMappingURL=index.js.map\n","import { defineHidden, is, createInterpolator, eachProp, hasFluidValue, getFluidValue, each, isAnimatedString, useForceUpdate, useLayoutEffect, addFluidObserver, removeFluidObserver, raf, useOnce } from '@react-spring/shared';\nimport { forwardRef, useRef, useCallback, useEffect, createElement } from 'react';\n\nconst $node = Symbol.for(\"Animated:node\");\nconst isAnimated = (value) => !!value && value[$node] === value;\nconst getAnimated = (owner) => owner && owner[$node];\nconst setAnimated = (owner, node) => defineHidden(owner, $node, node);\nconst getPayload = (owner) => owner && owner[$node] && owner[$node].getPayload();\nclass Animated {\n constructor() {\n setAnimated(this, this);\n }\n getPayload() {\n return this.payload || [];\n }\n}\n\nclass AnimatedValue extends Animated {\n constructor(_value) {\n super();\n this._value = _value;\n this.done = true;\n this.durationProgress = 0;\n if (is.num(this._value)) {\n this.lastPosition = this._value;\n }\n }\n static create(value) {\n return new AnimatedValue(value);\n }\n getPayload() {\n return [this];\n }\n getValue() {\n return this._value;\n }\n setValue(value, step) {\n if (is.num(value)) {\n this.lastPosition = value;\n if (step) {\n value = Math.round(value / step) * step;\n if (this.done) {\n this.lastPosition = value;\n }\n }\n }\n if (this._value === value) {\n return false;\n }\n this._value = value;\n return true;\n }\n reset() {\n const {done} = this;\n this.done = false;\n if (is.num(this._value)) {\n this.elapsedTime = 0;\n this.durationProgress = 0;\n this.lastPosition = this._value;\n if (done)\n this.lastVelocity = null;\n this.v0 = null;\n }\n }\n}\n\nclass AnimatedString extends AnimatedValue {\n constructor(value) {\n super(0);\n this._string = null;\n this._toString = createInterpolator({\n output: [value, value]\n });\n }\n static create(value) {\n return new AnimatedString(value);\n }\n getValue() {\n let value = this._string;\n return value == null ? this._string = this._toString(this._value) : value;\n }\n setValue(value) {\n if (is.str(value)) {\n if (value == this._string) {\n return false;\n }\n this._string = value;\n this._value = 1;\n } else if (super.setValue(value)) {\n this._string = null;\n } else {\n return false;\n }\n return true;\n }\n reset(goal) {\n if (goal) {\n this._toString = createInterpolator({\n output: [this.getValue(), goal]\n });\n }\n this._value = 0;\n super.reset();\n }\n}\n\nconst TreeContext = {dependencies: null};\n\nclass AnimatedObject extends Animated {\n constructor(source) {\n super();\n this.source = source;\n this.setValue(source);\n }\n getValue(animated) {\n const values = {};\n eachProp(this.source, (source, key) => {\n if (isAnimated(source)) {\n values[key] = source.getValue(animated);\n } else if (hasFluidValue(source)) {\n values[key] = getFluidValue(source);\n } else if (!animated) {\n values[key] = source;\n }\n });\n return values;\n }\n setValue(source) {\n this.source = source;\n this.payload = this._makePayload(source);\n }\n reset() {\n if (this.payload) {\n each(this.payload, (node) => node.reset());\n }\n }\n _makePayload(source) {\n if (source) {\n const payload = new Set();\n eachProp(source, this._addToPayload, payload);\n return Array.from(payload);\n }\n }\n _addToPayload(source) {\n if (TreeContext.dependencies && hasFluidValue(source)) {\n TreeContext.dependencies.add(source);\n }\n const payload = getPayload(source);\n if (payload) {\n each(payload, (node) => this.add(node));\n }\n }\n}\n\nclass AnimatedArray extends AnimatedObject {\n constructor(source) {\n super(source);\n }\n static create(source) {\n return new AnimatedArray(source);\n }\n getValue() {\n return this.source.map((node) => node.getValue());\n }\n setValue(source) {\n const payload = this.getPayload();\n if (source.length == payload.length) {\n return payload.some((node, i) => node.setValue(source[i]));\n }\n super.setValue(source.map(makeAnimated));\n return true;\n }\n}\nfunction makeAnimated(value) {\n const nodeType = isAnimatedString(value) ? AnimatedString : AnimatedValue;\n return nodeType.create(value);\n}\n\nfunction getAnimatedType(value) {\n const parentNode = getAnimated(value);\n return parentNode ? parentNode.constructor : is.arr(value) ? AnimatedArray : isAnimatedString(value) ? AnimatedString : AnimatedValue;\n}\n\nconst withAnimated = (Component, host) => {\n const hasInstance = !is.fun(Component) || Component.prototype && Component.prototype.isReactComponent;\n return forwardRef((givenProps, givenRef) => {\n const instanceRef = useRef(null);\n const ref = hasInstance && useCallback((value) => {\n instanceRef.current = updateRef(givenRef, value);\n }, [givenRef]);\n const [props, deps] = getAnimatedState(givenProps, host);\n const forceUpdate = useForceUpdate();\n const callback = () => {\n const instance = instanceRef.current;\n if (hasInstance && !instance) {\n return;\n }\n const didUpdate = instance ? host.applyAnimatedValues(instance, props.getValue(true)) : false;\n if (didUpdate === false) {\n forceUpdate();\n }\n };\n const observer = new PropsObserver(callback, deps);\n const observerRef = useRef();\n useLayoutEffect(() => {\n const lastObserver = observerRef.current;\n observerRef.current = observer;\n each(deps, (dep) => addFluidObserver(dep, observer));\n if (lastObserver) {\n each(lastObserver.deps, (dep) => removeFluidObserver(dep, lastObserver));\n raf.cancel(lastObserver.update);\n }\n });\n useEffect(callback, []);\n useOnce(() => () => {\n const observer2 = observerRef.current;\n each(observer2.deps, (dep) => removeFluidObserver(dep, observer2));\n });\n const usedProps = host.getComponentProps(props.getValue());\n return /* @__PURE__ */ createElement(Component, {\n ...usedProps,\n ref\n });\n });\n};\nclass PropsObserver {\n constructor(update, deps) {\n this.update = update;\n this.deps = deps;\n }\n eventObserved(event) {\n if (event.type == \"change\") {\n raf.write(this.update);\n }\n }\n}\nfunction getAnimatedState(props, host) {\n const dependencies = new Set();\n TreeContext.dependencies = dependencies;\n if (props.style)\n props = {\n ...props,\n style: host.createAnimatedStyle(props.style)\n };\n props = new AnimatedObject(props);\n TreeContext.dependencies = null;\n return [props, dependencies];\n}\nfunction updateRef(ref, value) {\n if (ref) {\n if (is.fun(ref))\n ref(value);\n else\n ref.current = value;\n }\n return value;\n}\n\nconst cacheKey = Symbol.for(\"AnimatedComponent\");\nconst createHost = (components, {\n applyAnimatedValues = () => false,\n createAnimatedStyle = (style) => new AnimatedObject(style),\n getComponentProps = (props) => props\n} = {}) => {\n const hostConfig = {\n applyAnimatedValues,\n createAnimatedStyle,\n getComponentProps\n };\n const animated = (Component) => {\n const displayName = getDisplayName(Component) || \"Anonymous\";\n if (is.str(Component)) {\n Component = animated[Component] || (animated[Component] = withAnimated(Component, hostConfig));\n } else {\n Component = Component[cacheKey] || (Component[cacheKey] = withAnimated(Component, hostConfig));\n }\n Component.displayName = `Animated(${displayName})`;\n return Component;\n };\n eachProp(components, (Component, key) => {\n if (is.arr(components)) {\n key = getDisplayName(Component);\n }\n animated[key] = animated(Component);\n });\n return {\n animated\n };\n};\nconst getDisplayName = (arg) => is.str(arg) ? arg : arg && is.str(arg.displayName) ? arg.displayName : is.fun(arg) && arg.name || null;\n\nexport { Animated, AnimatedArray, AnimatedObject, AnimatedString, AnimatedValue, createHost, getAnimated, getAnimatedType, getPayload, isAnimated, setAnimated };\n//# sourceMappingURL=index.js.map\n","import { eachProp, is, toArray, isAnimatedString, Globals, getFluidValue, useLayoutEffect, each, raf, flush, FluidValue, deprecateInterpolate, callFluidObservers, frameLoop, hasFluidValue, flushCalls, isEqual, getFluidObservers, addFluidObserver, removeFluidObserver, noop, useMemoOne, deprecateDirectCall, useForceUpdate, usePrev, useOnce, createInterpolator, createStringInterpolator } from '@react-spring/shared';\nexport { Globals, createInterpolator } from '@react-spring/shared';\nimport { useContext, createElement, createContext, useMemo, useRef, useState, Fragment } from 'react';\nimport { getAnimated, AnimatedValue, getPayload, AnimatedString, getAnimatedType, setAnimated } from '@react-spring/animated';\nexport * from '@react-spring/types/animated';\nexport * from '@react-spring/types/interpolation';\n\nfunction callProp(value, ...args) {\n return is.fun(value) ? value(...args) : value;\n}\nconst matchProp = (value, key) => value === true || !!(key && value && (is.fun(value) ? value(key) : toArray(value).includes(key)));\nconst resolveProp = (prop, key) => is.obj(prop) ? key && prop[key] : prop;\nconst getDefaultProp = (props, key) => props.default === true ? props[key] : props.default ? props.default[key] : void 0;\nconst noopTransform = (value) => value;\nconst getDefaultProps = (props, transform = noopTransform) => {\n let keys = DEFAULT_PROPS;\n if (props.default && props.default !== true) {\n props = props.default;\n keys = Object.keys(props);\n }\n const defaults = {};\n for (const key of keys) {\n const value = transform(props[key], key);\n if (!is.und(value)) {\n defaults[key] = value;\n }\n }\n return defaults;\n};\nconst DEFAULT_PROPS = [\n \"config\",\n \"onProps\",\n \"onStart\",\n \"onChange\",\n \"onPause\",\n \"onResume\",\n \"onRest\"\n];\nconst RESERVED_PROPS = {\n config: 1,\n from: 1,\n to: 1,\n ref: 1,\n loop: 1,\n reset: 1,\n pause: 1,\n cancel: 1,\n reverse: 1,\n immediate: 1,\n default: 1,\n delay: 1,\n onProps: 1,\n onStart: 1,\n onChange: 1,\n onPause: 1,\n onResume: 1,\n onRest: 1,\n onResolve: 1,\n items: 1,\n trail: 1,\n sort: 1,\n expires: 1,\n initial: 1,\n enter: 1,\n update: 1,\n leave: 1,\n children: 1,\n onDestroyed: 1,\n keys: 1,\n callId: 1,\n parentId: 1\n};\nfunction getForwardProps(props) {\n const forward = {};\n let count = 0;\n eachProp(props, (value, prop) => {\n if (!RESERVED_PROPS[prop]) {\n forward[prop] = value;\n count++;\n }\n });\n if (count) {\n return forward;\n }\n}\nfunction inferTo(props) {\n const to = getForwardProps(props);\n if (to) {\n const out = {to};\n eachProp(props, (val, key) => key in to || (out[key] = val));\n return out;\n }\n return {...props};\n}\nfunction computeGoal(value) {\n value = getFluidValue(value);\n return is.arr(value) ? value.map(computeGoal) : isAnimatedString(value) ? Globals.createStringInterpolator({\n range: [0, 1],\n output: [value, value]\n })(1) : value;\n}\nfunction hasProps(props) {\n for (const _ in props)\n return true;\n return false;\n}\nfunction isAsyncTo(to) {\n return is.fun(to) || is.arr(to) && is.obj(to[0]);\n}\nfunction detachRefs(ctrl, ref) {\n var _a;\n (_a = ctrl.ref) == null ? void 0 : _a.delete(ctrl);\n ref == null ? void 0 : ref.delete(ctrl);\n}\nfunction replaceRef(ctrl, ref) {\n var _a;\n if (ref && ctrl.ref !== ref) {\n (_a = ctrl.ref) == null ? void 0 : _a.delete(ctrl);\n ref.add(ctrl);\n ctrl.ref = ref;\n }\n}\n\nfunction useChain(refs, timeSteps, timeFrame = 1e3) {\n useLayoutEffect(() => {\n if (timeSteps) {\n let prevDelay = 0;\n each(refs, (ref, i) => {\n const controllers = ref.current;\n if (controllers.length) {\n let delay = timeFrame * timeSteps[i];\n if (isNaN(delay))\n delay = prevDelay;\n else\n prevDelay = delay;\n each(controllers, (ctrl) => {\n each(ctrl.queue, (props) => {\n const memoizedDelayProp = props.delay;\n props.delay = (key) => delay + callProp(memoizedDelayProp || 0, key);\n });\n ctrl.start();\n });\n }\n });\n } else {\n let p = Promise.resolve();\n each(refs, (ref) => {\n const controllers = ref.current;\n if (controllers.length) {\n const queues = controllers.map((ctrl) => {\n const q = ctrl.queue;\n ctrl.queue = [];\n return q;\n });\n p = p.then(() => {\n each(controllers, (ctrl, i) => each(queues[i] || [], (update) => ctrl.queue.push(update)));\n return ref.start();\n });\n }\n });\n }\n });\n}\n\nconst config = {\n default: {tension: 170, friction: 26},\n gentle: {tension: 120, friction: 14},\n wobbly: {tension: 180, friction: 12},\n stiff: {tension: 210, friction: 20},\n slow: {tension: 280, friction: 60},\n molasses: {tension: 280, friction: 120}\n};\n\nconst linear = (t) => t;\nconst defaults = {\n ...config.default,\n mass: 1,\n damping: 1,\n easing: linear,\n clamp: false\n};\nclass AnimationConfig {\n constructor() {\n this.velocity = 0;\n Object.assign(this, defaults);\n }\n}\nfunction mergeConfig(config, newConfig, defaultConfig) {\n if (defaultConfig) {\n defaultConfig = {...defaultConfig};\n sanitizeConfig(defaultConfig, newConfig);\n newConfig = {...defaultConfig, ...newConfig};\n }\n sanitizeConfig(config, newConfig);\n Object.assign(config, newConfig);\n for (const key in defaults) {\n if (config[key] == null) {\n config[key] = defaults[key];\n }\n }\n let {mass, frequency, damping} = config;\n if (!is.und(frequency)) {\n if (frequency < 0.01)\n frequency = 0.01;\n if (damping < 0)\n damping = 0;\n config.tension = Math.pow(2 * Math.PI / frequency, 2) * mass;\n config.friction = 4 * Math.PI * damping * mass / frequency;\n }\n return config;\n}\nfunction sanitizeConfig(config, props) {\n if (!is.und(props.decay)) {\n config.duration = void 0;\n } else {\n const isTensionConfig = !is.und(props.tension) || !is.und(props.friction);\n if (isTensionConfig || !is.und(props.frequency) || !is.und(props.damping) || !is.und(props.mass)) {\n config.duration = void 0;\n config.decay = void 0;\n }\n if (isTensionConfig) {\n config.frequency = void 0;\n }\n }\n}\n\nconst emptyArray = [];\nclass Animation {\n constructor() {\n this.changed = false;\n this.values = emptyArray;\n this.toValues = null;\n this.fromValues = emptyArray;\n this.config = new AnimationConfig();\n this.immediate = false;\n }\n}\n\nfunction scheduleProps(callId, {key, props, defaultProps, state, actions}) {\n return new Promise((resolve, reject) => {\n var _a;\n let delay;\n let timeout;\n let cancel = matchProp((_a = props.cancel) != null ? _a : defaultProps == null ? void 0 : defaultProps.cancel, key);\n if (cancel) {\n onStart();\n } else {\n if (!is.und(props.pause)) {\n state.paused = matchProp(props.pause, key);\n }\n let pause = defaultProps == null ? void 0 : defaultProps.pause;\n if (pause !== true) {\n pause = state.paused || matchProp(pause, key);\n }\n delay = callProp(props.delay || 0, key);\n if (pause) {\n state.resumeQueue.add(onResume);\n actions.pause();\n } else {\n actions.resume();\n onResume();\n }\n }\n function onPause() {\n state.resumeQueue.add(onResume);\n state.timeouts.delete(timeout);\n timeout.cancel();\n delay = timeout.time - raf.now();\n }\n function onResume() {\n if (delay > 0) {\n timeout = raf.setTimeout(onStart, delay);\n state.pauseQueue.add(onPause);\n state.timeouts.add(timeout);\n } else {\n onStart();\n }\n }\n function onStart() {\n state.pauseQueue.delete(onPause);\n state.timeouts.delete(timeout);\n if (callId <= (state.cancelId || 0)) {\n cancel = true;\n }\n try {\n actions.start({...props, callId, cancel}, resolve);\n } catch (err) {\n reject(err);\n }\n }\n });\n}\n\nconst getCombinedResult = (target, results) => results.length == 1 ? results[0] : results.some((result) => result.cancelled) ? getCancelledResult(target.get()) : results.every((result) => result.noop) ? getNoopResult(target.get()) : getFinishedResult(target.get(), results.every((result) => result.finished));\nconst getNoopResult = (value) => ({\n value,\n noop: true,\n finished: true,\n cancelled: false\n});\nconst getFinishedResult = (value, finished, cancelled = false) => ({\n value,\n finished,\n cancelled\n});\nconst getCancelledResult = (value) => ({\n value,\n cancelled: true,\n finished: false\n});\n\nfunction runAsync(to, props, state, target) {\n const {callId, parentId, onRest} = props;\n const {asyncTo: prevTo, promise: prevPromise} = state;\n if (!parentId && to === prevTo && !props.reset) {\n return prevPromise;\n }\n return state.promise = (async () => {\n state.asyncId = callId;\n state.asyncTo = to;\n const defaultProps = getDefaultProps(props, (value, key) => key === \"onRest\" ? void 0 : value);\n let preventBail;\n let bail;\n const bailPromise = new Promise((resolve, reject) => (preventBail = resolve, bail = reject));\n const bailIfEnded = (bailSignal) => {\n const bailResult = callId <= (state.cancelId || 0) && getCancelledResult(target) || callId !== state.asyncId && getFinishedResult(target, false);\n if (bailResult) {\n bailSignal.result = bailResult;\n bail(bailSignal);\n throw bailSignal;\n }\n };\n const animate = (arg1, arg2) => {\n const bailSignal = new BailSignal();\n const skipAnimationSignal = new SkipAniamtionSignal();\n return (async () => {\n if (Globals.skipAnimation) {\n stopAsync(state);\n skipAnimationSignal.result = getFinishedResult(target, false);\n bail(skipAnimationSignal);\n throw skipAnimationSignal;\n }\n bailIfEnded(bailSignal);\n const props2 = is.obj(arg1) ? {...arg1} : {...arg2, to: arg1};\n props2.parentId = callId;\n eachProp(defaultProps, (value, key) => {\n if (is.und(props2[key])) {\n props2[key] = value;\n }\n });\n const result2 = await target.start(props2);\n bailIfEnded(bailSignal);\n if (state.paused) {\n await new Promise((resume) => {\n state.resumeQueue.add(resume);\n });\n }\n return result2;\n })();\n };\n let result;\n if (Globals.skipAnimation) {\n stopAsync(state);\n return getFinishedResult(target, false);\n }\n try {\n let animating;\n if (is.arr(to)) {\n animating = (async (queue) => {\n for (const props2 of queue) {\n await animate(props2);\n }\n })(to);\n } else {\n animating = Promise.resolve(to(animate, target.stop.bind(target)));\n }\n await Promise.all([animating.then(preventBail), bailPromise]);\n result = getFinishedResult(target.get(), true, false);\n } catch (err) {\n if (err instanceof BailSignal) {\n result = err.result;\n } else if (err instanceof SkipAniamtionSignal) {\n result = err.result;\n } else {\n throw err;\n }\n } finally {\n if (callId == state.asyncId) {\n state.asyncId = parentId;\n state.asyncTo = parentId ? prevTo : void 0;\n state.promise = parentId ? prevPromise : void 0;\n }\n }\n if (is.fun(onRest)) {\n raf.batchedUpdates(() => {\n onRest(result, target, target.item);\n });\n }\n return result;\n })();\n}\nfunction stopAsync(state, cancelId) {\n flush(state.timeouts, (t) => t.cancel());\n state.pauseQueue.clear();\n state.resumeQueue.clear();\n state.asyncId = state.asyncTo = state.promise = void 0;\n if (cancelId)\n state.cancelId = cancelId;\n}\nclass BailSignal extends Error {\n constructor() {\n super(\"An async animation has been interrupted. You see this error because you forgot to use `await` or `.catch(...)` on its returned promise.\");\n }\n}\nclass SkipAniamtionSignal extends Error {\n constructor() {\n super(\"SkipAnimationSignal\");\n }\n}\n\nconst isFrameValue = (value) => value instanceof FrameValue;\nlet nextId = 1;\nclass FrameValue extends FluidValue {\n constructor() {\n super(...arguments);\n this.id = nextId++;\n this._priority = 0;\n }\n get priority() {\n return this._priority;\n }\n set priority(priority) {\n if (this._priority != priority) {\n this._priority = priority;\n this._onPriorityChange(priority);\n }\n }\n get() {\n const node = getAnimated(this);\n return node && node.getValue();\n }\n to(...args) {\n return Globals.to(this, args);\n }\n interpolate(...args) {\n deprecateInterpolate();\n return Globals.to(this, args);\n }\n toJSON() {\n return this.get();\n }\n observerAdded(count) {\n if (count == 1)\n this._attach();\n }\n observerRemoved(count) {\n if (count == 0)\n this._detach();\n }\n _attach() {\n }\n _detach() {\n }\n _onChange(value, idle = false) {\n callFluidObservers(this, {\n type: \"change\",\n parent: this,\n value,\n idle\n });\n }\n _onPriorityChange(priority) {\n if (!this.idle) {\n frameLoop.sort(this);\n }\n callFluidObservers(this, {\n type: \"priority\",\n parent: this,\n priority\n });\n }\n}\n\nconst $P = Symbol.for(\"SpringPhase\");\nconst HAS_ANIMATED = 1;\nconst IS_ANIMATING = 2;\nconst IS_PAUSED = 4;\nconst hasAnimated = (target) => (target[$P] & HAS_ANIMATED) > 0;\nconst isAnimating = (target) => (target[$P] & IS_ANIMATING) > 0;\nconst isPaused = (target) => (target[$P] & IS_PAUSED) > 0;\nconst setActiveBit = (target, active) => active ? target[$P] |= IS_ANIMATING | HAS_ANIMATED : target[$P] &= ~IS_ANIMATING;\nconst setPausedBit = (target, paused) => paused ? target[$P] |= IS_PAUSED : target[$P] &= ~IS_PAUSED;\n\nclass SpringValue extends FrameValue {\n constructor(arg1, arg2) {\n super();\n this.animation = new Animation();\n this.defaultProps = {};\n this._state = {\n paused: false,\n pauseQueue: new Set(),\n resumeQueue: new Set(),\n timeouts: new Set()\n };\n this._pendingCalls = new Set();\n this._lastCallId = 0;\n this._lastToId = 0;\n this._memoizedDuration = 0;\n if (!is.und(arg1) || !is.und(arg2)) {\n const props = is.obj(arg1) ? {...arg1} : {...arg2, from: arg1};\n if (is.und(props.default)) {\n props.default = true;\n }\n this.start(props);\n }\n }\n get idle() {\n return !(isAnimating(this) || this._state.asyncTo) || isPaused(this);\n }\n get goal() {\n return getFluidValue(this.animation.to);\n }\n get velocity() {\n const node = getAnimated(this);\n return node instanceof AnimatedValue ? node.lastVelocity || 0 : node.getPayload().map((node2) => node2.lastVelocity || 0);\n }\n get hasAnimated() {\n return hasAnimated(this);\n }\n get isAnimating() {\n return isAnimating(this);\n }\n get isPaused() {\n return isPaused(this);\n }\n advance(dt) {\n let idle = true;\n let changed = false;\n const anim = this.animation;\n let {config, toValues} = anim;\n const payload = getPayload(anim.to);\n if (!payload && hasFluidValue(anim.to)) {\n toValues = toArray(getFluidValue(anim.to));\n }\n anim.values.forEach((node2, i) => {\n if (node2.done)\n return;\n const to = node2.constructor == AnimatedString ? 1 : payload ? payload[i].lastPosition : toValues[i];\n let finished = anim.immediate;\n let position = to;\n if (!finished) {\n position = node2.lastPosition;\n if (config.tension <= 0) {\n node2.done = true;\n return;\n }\n let elapsed = node2.elapsedTime += dt;\n const from = anim.fromValues[i];\n const v0 = node2.v0 != null ? node2.v0 : node2.v0 = is.arr(config.velocity) ? config.velocity[i] : config.velocity;\n let velocity;\n if (!is.und(config.duration)) {\n let p = 1;\n if (config.duration > 0) {\n if (this._memoizedDuration !== config.duration) {\n this._memoizedDuration = config.duration;\n if (node2.durationProgress > 0) {\n node2.elapsedTime = config.duration * node2.durationProgress;\n elapsed = node2.elapsedTime += dt;\n }\n }\n p = (config.progress || 0) + elapsed / this._memoizedDuration;\n p = p > 1 ? 1 : p < 0 ? 0 : p;\n node2.durationProgress = p;\n }\n position = from + config.easing(p) * (to - from);\n velocity = (position - node2.lastPosition) / dt;\n finished = p == 1;\n } else if (config.decay) {\n const decay = config.decay === true ? 0.998 : config.decay;\n const e = Math.exp(-(1 - decay) * elapsed);\n position = from + v0 / (1 - decay) * (1 - e);\n finished = Math.abs(node2.lastPosition - position) < 0.1;\n velocity = v0 * e;\n } else {\n velocity = node2.lastVelocity == null ? v0 : node2.lastVelocity;\n const precision = config.precision || (from == to ? 5e-3 : Math.min(1, Math.abs(to - from) * 1e-3));\n const restVelocity = config.restVelocity || precision / 10;\n const bounceFactor = config.clamp ? 0 : config.bounce;\n const canBounce = !is.und(bounceFactor);\n const isGrowing = from == to ? node2.v0 > 0 : from < to;\n let isMoving;\n let isBouncing = false;\n const step = 1;\n const numSteps = Math.ceil(dt / step);\n for (let n = 0; n < numSteps; ++n) {\n isMoving = Math.abs(velocity) > restVelocity;\n if (!isMoving) {\n finished = Math.abs(to - position) <= precision;\n if (finished) {\n break;\n }\n }\n if (canBounce) {\n isBouncing = position == to || position > to == isGrowing;\n if (isBouncing) {\n velocity = -velocity * bounceFactor;\n position = to;\n }\n }\n const springForce = -config.tension * 1e-6 * (position - to);\n const dampingForce = -config.friction * 1e-3 * velocity;\n const acceleration = (springForce + dampingForce) / config.mass;\n velocity = velocity + acceleration * step;\n position = position + velocity * step;\n }\n }\n node2.lastVelocity = velocity;\n if (Number.isNaN(position)) {\n console.warn(`Got NaN while animating:`, this);\n finished = true;\n }\n }\n if (payload && !payload[i].done) {\n finished = false;\n }\n if (finished) {\n node2.done = true;\n } else {\n idle = false;\n }\n if (node2.setValue(position, config.round)) {\n changed = true;\n }\n });\n const node = getAnimated(this);\n if (idle) {\n const value = getFluidValue(anim.to);\n if (node.setValue(value) || changed) {\n this._onChange(value);\n }\n this._stop();\n } else if (changed) {\n this._onChange(node.getValue());\n }\n }\n set(value) {\n raf.batchedUpdates(() => {\n this._stop();\n this._focus(value);\n this._set(value);\n });\n return this;\n }\n pause() {\n this._update({pause: true});\n }\n resume() {\n this._update({pause: false});\n }\n finish() {\n if (isAnimating(this)) {\n const {to, config} = this.animation;\n raf.batchedUpdates(() => {\n this._onStart();\n if (!config.decay) {\n this._set(to, false);\n }\n this._stop();\n });\n }\n return this;\n }\n update(props) {\n const queue = this.queue || (this.queue = []);\n queue.push(props);\n return this;\n }\n start(to, arg2) {\n let queue;\n if (!is.und(to)) {\n queue = [is.obj(to) ? to : {...arg2, to}];\n } else {\n queue = this.queue || [];\n this.queue = [];\n }\n return Promise.all(queue.map((props) => this._update(props))).then((results) => getCombinedResult(this, results));\n }\n stop(cancel) {\n const {to} = this.animation;\n this._focus(this.get());\n stopAsync(this._state, cancel && this._lastCallId);\n raf.batchedUpdates(() => this._stop(to, cancel));\n return this;\n }\n reset() {\n this._update({reset: true});\n }\n eventObserved(event) {\n if (event.type == \"change\") {\n this._start();\n } else if (event.type == \"priority\") {\n this.priority = event.priority + 1;\n }\n }\n _prepareNode(props) {\n const key = this.key || \"\";\n let {to, from} = props;\n to = is.obj(to) ? to[key] : to;\n if (to == null || isAsyncTo(to)) {\n to = void 0;\n }\n from = is.obj(from) ? from[key] : from;\n if (from == null) {\n from = void 0;\n }\n const range = {to, from};\n if (!hasAnimated(this)) {\n if (props.reverse)\n [to, from] = [from, to];\n from = getFluidValue(from);\n if (!is.und(from)) {\n this._set(from);\n } else if (!getAnimated(this)) {\n this._set(to);\n }\n }\n return range;\n }\n _update({...props}, isLoop) {\n const {key, defaultProps} = this;\n if (props.default)\n Object.assign(defaultProps, getDefaultProps(props, (value, prop) => /^on/.test(prop) ? resolveProp(value, key) : value));\n mergeActiveFn(this, props, \"onProps\");\n sendEvent(this, \"onProps\", props, this);\n const range = this._prepareNode(props);\n if (Object.isFrozen(this)) {\n throw Error(\"Cannot animate a `SpringValue` object that is frozen. Did you forget to pass your component to `animated(...)` before animating its props?\");\n }\n const state = this._state;\n return scheduleProps(++this._lastCallId, {\n key,\n props,\n defaultProps,\n state,\n actions: {\n pause: () => {\n if (!isPaused(this)) {\n setPausedBit(this, true);\n flushCalls(state.pauseQueue);\n sendEvent(this, \"onPause\", getFinishedResult(this, checkFinished(this, this.animation.to)), this);\n }\n },\n resume: () => {\n if (isPaused(this)) {\n setPausedBit(this, false);\n if (isAnimating(this)) {\n this._resume();\n }\n flushCalls(state.resumeQueue);\n sendEvent(this, \"onResume\", getFinishedResult(this, checkFinished(this, this.animation.to)), this);\n }\n },\n start: this._merge.bind(this, range)\n }\n }).then((result) => {\n if (props.loop && result.finished && !(isLoop && result.noop)) {\n const nextProps = createLoopUpdate(props);\n if (nextProps) {\n return this._update(nextProps, true);\n }\n }\n return result;\n });\n }\n _merge(range, props, resolve) {\n if (props.cancel) {\n this.stop(true);\n return resolve(getCancelledResult(this));\n }\n const hasToProp = !is.und(range.to);\n const hasFromProp = !is.und(range.from);\n if (hasToProp || hasFromProp) {\n if (props.callId > this._lastToId) {\n this._lastToId = props.callId;\n } else {\n return resolve(getCancelledResult(this));\n }\n }\n const {key, defaultProps, animation: anim} = this;\n const {to: prevTo, from: prevFrom} = anim;\n let {to = prevTo, from = prevFrom} = range;\n if (hasFromProp && !hasToProp && (!props.default || is.und(to))) {\n to = from;\n }\n if (props.reverse)\n [to, from] = [from, to];\n const hasFromChanged = !isEqual(from, prevFrom);\n if (hasFromChanged) {\n anim.from = from;\n }\n from = getFluidValue(from);\n const hasToChanged = !isEqual(to, prevTo);\n if (hasToChanged) {\n this._focus(to);\n }\n const hasAsyncTo = isAsyncTo(props.to);\n const {config} = anim;\n const {decay, velocity} = config;\n if (hasToProp || hasFromProp) {\n config.velocity = 0;\n }\n if (props.config && !hasAsyncTo) {\n mergeConfig(config, callProp(props.config, key), props.config !== defaultProps.config ? callProp(defaultProps.config, key) : void 0);\n }\n let node = getAnimated(this);\n if (!node || is.und(to)) {\n return resolve(getFinishedResult(this, true));\n }\n const reset = is.und(props.reset) ? hasFromProp && !props.default : !is.und(from) && matchProp(props.reset, key);\n const value = reset ? from : this.get();\n const goal = computeGoal(to);\n const isAnimatable = is.num(goal) || is.arr(goal) || isAnimatedString(goal);\n const immediate = !hasAsyncTo && (!isAnimatable || matchProp(defaultProps.immediate || props.immediate, key));\n if (hasToChanged) {\n const nodeType = getAnimatedType(to);\n if (nodeType !== node.constructor) {\n if (immediate) {\n node = this._set(goal);\n } else\n throw Error(`Cannot animate between ${node.constructor.name} and ${nodeType.name}, as the \"to\" prop suggests`);\n }\n }\n const goalType = node.constructor;\n let started = hasFluidValue(to);\n let finished = false;\n if (!started) {\n const hasValueChanged = reset || !hasAnimated(this) && hasFromChanged;\n if (hasToChanged || hasValueChanged) {\n finished = isEqual(computeGoal(value), goal);\n started = !finished;\n }\n if (!isEqual(config.decay, decay) || !isEqual(config.velocity, velocity)) {\n started = true;\n }\n }\n if (finished && isAnimating(this)) {\n if (anim.changed && !reset) {\n started = true;\n } else if (!started) {\n this._stop(prevTo);\n }\n }\n if (!hasAsyncTo) {\n if (started || hasFluidValue(prevTo)) {\n anim.values = node.getPayload();\n anim.toValues = hasFluidValue(to) ? null : goalType == AnimatedString ? [1] : toArray(goal);\n }\n if (anim.immediate != immediate) {\n anim.immediate = immediate;\n if (!immediate && !reset) {\n this._set(prevTo);\n }\n }\n if (started) {\n const {onRest} = anim;\n each(ACTIVE_EVENTS, (type) => mergeActiveFn(this, props, type));\n const result = getFinishedResult(this, checkFinished(this, prevTo));\n flushCalls(this._pendingCalls, result);\n this._pendingCalls.add(resolve);\n if (anim.changed)\n raf.batchedUpdates(() => {\n var _a;\n anim.changed = !reset;\n onRest == null ? void 0 : onRest(result, this);\n if (reset) {\n callProp(defaultProps.onRest, result);\n } else {\n (_a = anim.onStart) == null ? void 0 : _a.call(anim, result, this);\n }\n });\n }\n }\n if (reset) {\n this._set(value);\n }\n if (hasAsyncTo) {\n resolve(runAsync(props.to, props, this._state, this));\n } else if (started) {\n this._start();\n } else if (isAnimating(this) && !hasToChanged) {\n this._pendingCalls.add(resolve);\n } else {\n resolve(getNoopResult(value));\n }\n }\n _focus(value) {\n const anim = this.animation;\n if (value !== anim.to) {\n if (getFluidObservers(this)) {\n this._detach();\n }\n anim.to = value;\n if (getFluidObservers(this)) {\n this._attach();\n }\n }\n }\n _attach() {\n let priority = 0;\n const {to} = this.animation;\n if (hasFluidValue(to)) {\n addFluidObserver(to, this);\n if (isFrameValue(to)) {\n priority = to.priority + 1;\n }\n }\n this.priority = priority;\n }\n _detach() {\n const {to} = this.animation;\n if (hasFluidValue(to)) {\n removeFluidObserver(to, this);\n }\n }\n _set(arg, idle = true) {\n const value = getFluidValue(arg);\n if (!is.und(value)) {\n const oldNode = getAnimated(this);\n if (!oldNode || !isEqual(value, oldNode.getValue())) {\n const nodeType = getAnimatedType(value);\n if (!oldNode || oldNode.constructor != nodeType) {\n setAnimated(this, nodeType.create(value));\n } else {\n oldNode.setValue(value);\n }\n if (oldNode) {\n raf.batchedUpdates(() => {\n this._onChange(value, idle);\n });\n }\n }\n }\n return getAnimated(this);\n }\n _onStart() {\n const anim = this.animation;\n if (!anim.changed) {\n anim.changed = true;\n sendEvent(this, \"onStart\", getFinishedResult(this, checkFinished(this, anim.to)), this);\n }\n }\n _onChange(value, idle) {\n if (!idle) {\n this._onStart();\n callProp(this.animation.onChange, value, this);\n }\n callProp(this.defaultProps.onChange, value, this);\n super._onChange(value, idle);\n }\n _start() {\n const anim = this.animation;\n getAnimated(this).reset(getFluidValue(anim.to));\n if (!anim.immediate) {\n anim.fromValues = anim.values.map((node) => node.lastPosition);\n }\n if (!isAnimating(this)) {\n setActiveBit(this, true);\n if (!isPaused(this)) {\n this._resume();\n }\n }\n }\n _resume() {\n if (Globals.skipAnimation) {\n this.finish();\n } else {\n frameLoop.start(this);\n }\n }\n _stop(goal, cancel) {\n if (isAnimating(this)) {\n setActiveBit(this, false);\n const anim = this.animation;\n each(anim.values, (node) => {\n node.done = true;\n });\n if (anim.toValues) {\n anim.onChange = anim.onPause = anim.onResume = void 0;\n }\n callFluidObservers(this, {\n type: \"idle\",\n parent: this\n });\n const result = cancel ? getCancelledResult(this.get()) : getFinishedResult(this.get(), checkFinished(this, goal != null ? goal : anim.to));\n flushCalls(this._pendingCalls, result);\n if (anim.changed) {\n anim.changed = false;\n sendEvent(this, \"onRest\", result, this);\n }\n }\n }\n}\nfunction checkFinished(target, to) {\n const goal = computeGoal(to);\n const value = computeGoal(target.get());\n return isEqual(value, goal);\n}\nfunction createLoopUpdate(props, loop = props.loop, to = props.to) {\n let loopRet = callProp(loop);\n if (loopRet) {\n const overrides = loopRet !== true && inferTo(loopRet);\n const reverse = (overrides || props).reverse;\n const reset = !overrides || overrides.reset;\n return createUpdate({\n ...props,\n loop,\n default: false,\n pause: void 0,\n to: !reverse || isAsyncTo(to) ? to : void 0,\n from: reset ? props.from : void 0,\n reset,\n ...overrides\n });\n }\n}\nfunction createUpdate(props) {\n const {to, from} = props = inferTo(props);\n const keys = new Set();\n if (is.obj(to))\n findDefined(to, keys);\n if (is.obj(from))\n findDefined(from, keys);\n props.keys = keys.size ? Array.from(keys) : null;\n return props;\n}\nfunction declareUpdate(props) {\n const update = createUpdate(props);\n if (is.und(update.default)) {\n update.default = getDefaultProps(update);\n }\n return update;\n}\nfunction findDefined(values, keys) {\n eachProp(values, (value, key) => value != null && keys.add(key));\n}\nconst ACTIVE_EVENTS = [\n \"onStart\",\n \"onRest\",\n \"onChange\",\n \"onPause\",\n \"onResume\"\n];\nfunction mergeActiveFn(target, props, type) {\n target.animation[type] = props[type] !== getDefaultProp(props, type) ? resolveProp(props[type], target.key) : void 0;\n}\nfunction sendEvent(target, type, ...args) {\n var _a, _b, _c, _d;\n (_b = (_a = target.animation)[type]) == null ? void 0 : _b.call(_a, ...args);\n (_d = (_c = target.defaultProps)[type]) == null ? void 0 : _d.call(_c, ...args);\n}\n\nconst BATCHED_EVENTS = [\"onStart\", \"onChange\", \"onRest\"];\nlet nextId$1 = 1;\nclass Controller {\n constructor(props, flush2) {\n this.id = nextId$1++;\n this.springs = {};\n this.queue = [];\n this._lastAsyncId = 0;\n this._active = new Set();\n this._changed = new Set();\n this._started = false;\n this._state = {\n paused: false,\n pauseQueue: new Set(),\n resumeQueue: new Set(),\n timeouts: new Set()\n };\n this._events = {\n onStart: new Map(),\n onChange: new Map(),\n onRest: new Map()\n };\n this._onFrame = this._onFrame.bind(this);\n if (flush2) {\n this._flush = flush2;\n }\n if (props) {\n this.start({default: true, ...props});\n }\n }\n get idle() {\n return !this._state.asyncTo && Object.values(this.springs).every((spring) => spring.idle);\n }\n get item() {\n return this._item;\n }\n set item(item) {\n this._item = item;\n }\n get() {\n const values = {};\n this.each((spring, key) => values[key] = spring.get());\n return values;\n }\n set(values) {\n for (const key in values) {\n const value = values[key];\n if (!is.und(value)) {\n this.springs[key].set(value);\n }\n }\n }\n update(props) {\n if (props) {\n this.queue.push(createUpdate(props));\n }\n return this;\n }\n start(props) {\n let {queue} = this;\n if (props) {\n queue = toArray(props).map(createUpdate);\n } else {\n this.queue = [];\n }\n if (this._flush) {\n return this._flush(this, queue);\n }\n prepareKeys(this, queue);\n return flushUpdateQueue(this, queue);\n }\n stop(arg, keys) {\n if (arg !== !!arg) {\n keys = arg;\n }\n if (keys) {\n const springs = this.springs;\n each(toArray(keys), (key) => springs[key].stop(!!arg));\n } else {\n stopAsync(this._state, this._lastAsyncId);\n this.each((spring) => spring.stop(!!arg));\n }\n return this;\n }\n pause(keys) {\n if (is.und(keys)) {\n this.start({pause: true});\n } else {\n const springs = this.springs;\n each(toArray(keys), (key) => springs[key].pause());\n }\n return this;\n }\n resume(keys) {\n if (is.und(keys)) {\n this.start({pause: false});\n } else {\n const springs = this.springs;\n each(toArray(keys), (key) => springs[key].resume());\n }\n return this;\n }\n each(iterator) {\n eachProp(this.springs, iterator);\n }\n _onFrame() {\n const {onStart, onChange, onRest} = this._events;\n const active = this._active.size > 0;\n if (active && !this._started) {\n this._started = true;\n flush(onStart, ([onStart2, result]) => {\n result.value = this.get();\n onStart2(result, this, this._item);\n });\n }\n const idle = !active && this._started;\n const changed = this._changed.size > 0 && onChange.size;\n const values = changed || idle && onRest.size ? this.get() : null;\n if (changed) {\n flush(onChange, ([onChange2, result]) => {\n result.value = values;\n onChange2(result, this, this._item);\n });\n }\n if (idle) {\n this._started = false;\n flush(onRest, ([onRest2, result]) => {\n result.value = values;\n onRest2(result, this, this._item);\n });\n }\n }\n eventObserved(event) {\n if (event.type == \"change\") {\n this._changed.add(event.parent);\n if (!event.idle) {\n this._active.add(event.parent);\n }\n } else if (event.type == \"idle\") {\n this._active.delete(event.parent);\n } else\n return;\n raf.onFrame(this._onFrame);\n }\n}\nfunction flushUpdateQueue(ctrl, queue) {\n return Promise.all(queue.map((props) => flushUpdate(ctrl, props))).then((results) => getCombinedResult(ctrl, results));\n}\nasync function flushUpdate(ctrl, props, isLoop) {\n const {keys, to, from, loop, onRest, onResolve} = props;\n const defaults = is.obj(props.default) && props.default;\n if (loop) {\n props.loop = false;\n }\n if (to === false)\n props.to = null;\n if (from === false)\n props.from = null;\n const asyncTo = is.arr(to) || is.fun(to) ? to : void 0;\n if (asyncTo) {\n props.to = void 0;\n props.onRest = void 0;\n if (defaults) {\n defaults.onRest = void 0;\n }\n } else {\n each(BATCHED_EVENTS, (key) => {\n const handler = props[key];\n if (is.fun(handler)) {\n const queue = ctrl[\"_events\"][key];\n props[key] = ({finished, cancelled}) => {\n const result2 = queue.get(handler);\n if (result2) {\n if (!finished)\n result2.finished = false;\n if (cancelled)\n result2.cancelled = true;\n } else {\n queue.set(handler, {\n value: null,\n finished: finished || false,\n cancelled: cancelled || false\n });\n }\n };\n if (defaults) {\n defaults[key] = props[key];\n }\n }\n });\n }\n const state = ctrl[\"_state\"];\n if (props.pause === !state.paused) {\n state.paused = props.pause;\n flushCalls(props.pause ? state.pauseQueue : state.resumeQueue);\n } else if (state.paused) {\n props.pause = true;\n }\n const promises = (keys || Object.keys(ctrl.springs)).map((key) => ctrl.springs[key].start(props));\n const cancel = props.cancel === true || getDefaultProp(props, \"cancel\") === true;\n if (asyncTo || cancel && state.asyncId) {\n promises.push(scheduleProps(++ctrl[\"_lastAsyncId\"], {\n props,\n state,\n actions: {\n pause: noop,\n resume: noop,\n start(props2, resolve) {\n if (cancel) {\n stopAsync(state, ctrl[\"_lastAsyncId\"]);\n resolve(getCancelledResult(ctrl));\n } else {\n props2.onRest = onRest;\n resolve(runAsync(asyncTo, props2, state, ctrl));\n }\n }\n }\n }));\n }\n if (state.paused) {\n await new Promise((resume) => {\n state.resumeQueue.add(resume);\n });\n }\n const result = getCombinedResult(ctrl, await Promise.all(promises));\n if (loop && result.finished && !(isLoop && result.noop)) {\n const nextProps = createLoopUpdate(props, loop, to);\n if (nextProps) {\n prepareKeys(ctrl, [nextProps]);\n return flushUpdate(ctrl, nextProps, true);\n }\n }\n if (onResolve) {\n raf.batchedUpdates(() => onResolve(result, ctrl, ctrl.item));\n }\n return result;\n}\nfunction getSprings(ctrl, props) {\n const springs = {...ctrl.springs};\n if (props) {\n each(toArray(props), (props2) => {\n if (is.und(props2.keys)) {\n props2 = createUpdate(props2);\n }\n if (!is.obj(props2.to)) {\n props2 = {...props2, to: void 0};\n }\n prepareSprings(springs, props2, (key) => {\n return createSpring(key);\n });\n });\n }\n return springs;\n}\nfunction setSprings(ctrl, springs) {\n eachProp(springs, (spring, key) => {\n if (!ctrl.springs[key]) {\n ctrl.springs[key] = spring;\n addFluidObserver(spring, ctrl);\n }\n });\n}\nfunction createSpring(key, observer) {\n const spring = new SpringValue();\n spring.key = key;\n if (observer) {\n addFluidObserver(spring, observer);\n }\n return spring;\n}\nfunction prepareSprings(springs, props, create) {\n if (props.keys) {\n each(props.keys, (key) => {\n const spring = springs[key] || (springs[key] = create(key));\n spring[\"_prepareNode\"](props);\n });\n }\n}\nfunction prepareKeys(ctrl, queue) {\n each(queue, (props) => {\n prepareSprings(ctrl.springs, props, (key) => {\n return createSpring(key, ctrl);\n });\n });\n}\n\nconst SpringContext = ({\n children,\n ...props\n}) => {\n const inherited = useContext(ctx);\n const pause = props.pause || !!inherited.pause, immediate = props.immediate || !!inherited.immediate;\n props = useMemoOne(() => ({pause, immediate}), [pause, immediate]);\n const {Provider} = ctx;\n return /* @__PURE__ */ createElement(Provider, {\n value: props\n }, children);\n};\nconst ctx = makeContext(SpringContext, {});\nSpringContext.Provider = ctx.Provider;\nSpringContext.Consumer = ctx.Consumer;\nfunction makeContext(target, init) {\n Object.assign(target, createContext(init));\n target.Provider._context = target;\n target.Consumer._context = target;\n return target;\n}\n\nclass SpringRef extends Function {\n constructor() {\n super(\"return arguments.callee._call.apply(arguments.callee, arguments)\");\n this.current = [];\n }\n _call(props) {\n deprecateDirectCall();\n this.start(props);\n }\n set(values) {\n each(this.current, (ctrl) => ctrl.set(values));\n }\n start(props) {\n const results = [];\n each(this.current, (ctrl, i) => {\n if (is.und(props)) {\n results.push(ctrl.start());\n } else {\n const update = this._getProps(props, ctrl, i);\n if (update) {\n results.push(ctrl.start(update));\n }\n }\n });\n return results;\n }\n update(props) {\n each(this.current, (ctrl, i) => ctrl.update(this._getProps(props, ctrl, i)));\n return this;\n }\n add(ctrl) {\n if (!this.current.includes(ctrl)) {\n this.current.push(ctrl);\n }\n }\n delete(ctrl) {\n const i = this.current.indexOf(ctrl);\n if (~i)\n this.current.splice(i, 1);\n }\n _getProps(arg, ctrl, index) {\n return is.fun(arg) ? arg(index, ctrl) : arg;\n }\n}\neach([\"stop\", \"pause\", \"resume\"], (key) => {\n SpringRef.prototype[key] = function() {\n each(this.current, (ctrl) => ctrl[key](...arguments));\n return this;\n };\n});\n\nfunction useSprings(length, props, deps) {\n const propsFn = is.fun(props) && props;\n if (propsFn && !deps)\n deps = [];\n const ref = useMemo(() => propsFn || arguments.length == 3 ? new SpringRef() : void 0, []);\n const layoutId = useRef(0);\n const forceUpdate = useForceUpdate();\n const state = useMemo(() => ({\n ctrls: [],\n queue: [],\n flush(ctrl, updates2) {\n const springs2 = getSprings(ctrl, updates2);\n const canFlushSync = layoutId.current > 0 && !state.queue.length && !Object.keys(springs2).some((key) => !ctrl.springs[key]);\n return canFlushSync ? flushUpdateQueue(ctrl, updates2) : new Promise((resolve) => {\n setSprings(ctrl, springs2);\n state.queue.push(() => {\n resolve(flushUpdateQueue(ctrl, updates2));\n });\n forceUpdate();\n });\n }\n }), []);\n const ctrls = [...state.ctrls];\n const updates = [];\n const prevLength = usePrev(length) || 0;\n const oldCtrls = ctrls.slice(length, prevLength);\n useMemo(() => {\n ctrls.length = length;\n declareUpdates(prevLength, length);\n }, [length]);\n useMemo(() => {\n declareUpdates(0, Math.min(prevLength, length));\n }, deps);\n function declareUpdates(startIndex, endIndex) {\n for (let i = startIndex; i < endIndex; i++) {\n const ctrl = ctrls[i] || (ctrls[i] = new Controller(null, state.flush));\n const update = propsFn ? propsFn(i, ctrl) : props[i];\n if (update) {\n updates[i] = declareUpdate(update);\n }\n }\n }\n const springs = ctrls.map((ctrl, i) => getSprings(ctrl, updates[i]));\n const context = useContext(SpringContext);\n const prevContext = usePrev(context);\n const hasContext = context !== prevContext && hasProps(context);\n useLayoutEffect(() => {\n layoutId.current++;\n state.ctrls = ctrls;\n const {queue} = state;\n if (queue.length) {\n state.queue = [];\n each(queue, (cb) => cb());\n }\n each(oldCtrls, (ctrl) => {\n detachRefs(ctrl, ref);\n ctrl.stop(true);\n });\n each(ctrls, (ctrl, i) => {\n const values2 = springs[i];\n setSprings(ctrl, values2);\n ref == null ? void 0 : ref.add(ctrl);\n if (hasContext) {\n ctrl.start({default: context});\n }\n const update = updates[i];\n if (update) {\n replaceRef(ctrl, update.ref);\n if (ctrl.ref) {\n ctrl.queue.push(update);\n } else {\n ctrl.start(update);\n }\n }\n });\n });\n useOnce(() => () => {\n each(state.ctrls, (ctrl) => ctrl.stop(true));\n });\n const values = springs.map((x) => ({...x}));\n return ref ? [values, ref] : values;\n}\n\nfunction useSpring(props, deps) {\n const isFn = is.fun(props);\n const [[values], ref] = useSprings(1, isFn ? props : [props], isFn ? deps || [] : deps);\n return isFn || arguments.length == 2 ? [values, ref] : values;\n}\n\nconst initSpringRef = () => new SpringRef();\nconst useSpringRef = () => useState(initSpringRef)[0];\n\nfunction useTrail(length, propsArg, deps) {\n const propsFn = is.fun(propsArg) && propsArg;\n if (propsFn && !deps)\n deps = [];\n let reverse = true;\n const result = useSprings(length, (i, ctrl) => {\n const props = propsFn ? propsFn(i, ctrl) : propsArg;\n reverse = reverse && props.reverse;\n return props;\n }, deps || [{}]);\n const ref = result[1];\n useLayoutEffect(() => {\n each(ref.current, (ctrl, i) => {\n const parent = ref.current[i + (reverse ? 1 : -1)];\n if (parent)\n ctrl.start({to: parent.springs});\n });\n }, deps);\n if (propsFn || arguments.length == 3) {\n ref[\"_getProps\"] = (propsArg2, ctrl, i) => {\n const props = is.fun(propsArg2) ? propsArg2(i, ctrl) : propsArg2;\n if (props) {\n const parent = ref.current[i + (props.reverse ? 1 : -1)];\n if (parent)\n props.to = parent.springs;\n return props;\n }\n };\n return result;\n }\n return result[0];\n}\n\nconst MOUNT = \"mount\";\nconst ENTER = \"enter\";\nconst UPDATE = \"update\";\nconst LEAVE = \"leave\";\n\nfunction useTransition(data, props, deps) {\n const {reset, sort, trail = 0, expires = true, onDestroyed} = props;\n const ref = useMemo(() => arguments.length == 3 ? new SpringRef() : void 0, []);\n const items = toArray(data);\n const transitions = [];\n const usedTransitions = useRef(null);\n const prevTransitions = reset ? null : usedTransitions.current;\n useLayoutEffect(() => {\n usedTransitions.current = transitions;\n });\n useOnce(() => () => each(usedTransitions.current, (t) => {\n if (t.expired) {\n clearTimeout(t.expirationId);\n }\n detachRefs(t.ctrl, ref);\n t.ctrl.stop(true);\n }));\n const keys = getKeys(items, props, prevTransitions);\n const expired = reset && usedTransitions.current || [];\n useLayoutEffect(() => each(expired, ({ctrl, item, key}) => {\n detachRefs(ctrl, ref);\n callProp(onDestroyed, item, key);\n }));\n const reused = [];\n if (prevTransitions)\n each(prevTransitions, (t, i) => {\n if (t.expired) {\n clearTimeout(t.expirationId);\n expired.push(t);\n } else {\n i = reused[i] = keys.indexOf(t.key);\n if (~i)\n transitions[i] = t;\n }\n });\n each(items, (item, i) => {\n if (!transitions[i]) {\n transitions[i] = {\n key: keys[i],\n item,\n phase: MOUNT,\n ctrl: new Controller()\n };\n transitions[i].ctrl.item = item;\n }\n });\n if (reused.length) {\n let i = -1;\n each(reused, (keyIndex, prevIndex) => {\n const t = prevTransitions[prevIndex];\n if (~keyIndex) {\n i = transitions.indexOf(t);\n transitions[i] = {...t, item: items[keyIndex]};\n } else if (props.leave) {\n transitions.splice(++i, 0, t);\n }\n });\n }\n if (is.fun(sort)) {\n transitions.sort((a, b) => sort(a.item, b.item));\n }\n let delay = -trail;\n const forceUpdate = useForceUpdate();\n const defaultProps = getDefaultProps(props);\n const changes = new Map();\n each(transitions, (t, i) => {\n const key = t.key;\n const prevPhase = t.phase;\n let to;\n let phase;\n if (prevPhase == MOUNT) {\n to = props.enter;\n phase = ENTER;\n } else {\n const isLeave = keys.indexOf(key) < 0;\n if (prevPhase != LEAVE) {\n if (isLeave) {\n to = props.leave;\n phase = LEAVE;\n } else if (to = props.update) {\n phase = UPDATE;\n } else\n return;\n } else if (!isLeave) {\n to = props.enter;\n phase = ENTER;\n } else\n return;\n }\n to = callProp(to, t.item, i);\n to = is.obj(to) ? inferTo(to) : {to};\n if (!to.config) {\n const config = props.config || defaultProps.config;\n to.config = callProp(config, t.item, i, phase);\n }\n const payload = {\n ...defaultProps,\n delay: delay += trail,\n reset: false,\n ...to\n };\n if (phase == ENTER && is.und(payload.from)) {\n const from = is.und(props.initial) || prevTransitions ? props.from : props.initial;\n payload.from = callProp(from, t.item, i);\n }\n const {onResolve} = payload;\n payload.onResolve = (result) => {\n callProp(onResolve, result);\n const transitions2 = usedTransitions.current;\n const t2 = transitions2.find((t3) => t3.key === key);\n if (!t2)\n return;\n if (result.cancelled && t2.phase != UPDATE) {\n return;\n }\n if (t2.ctrl.idle) {\n const idle = transitions2.every((t3) => t3.ctrl.idle);\n if (t2.phase == LEAVE) {\n const expiry = callProp(expires, t2.item);\n if (expiry !== false) {\n const expiryMs = expiry === true ? 0 : expiry;\n t2.expired = true;\n if (!idle && expiryMs > 0) {\n if (expiryMs <= 2147483647)\n t2.expirationId = setTimeout(forceUpdate, expiryMs);\n return;\n }\n }\n }\n if (idle && transitions2.some((t3) => t3.expired)) {\n forceUpdate();\n }\n }\n };\n const springs = getSprings(t.ctrl, payload);\n changes.set(t, {phase, springs, payload});\n });\n const context = useContext(SpringContext);\n const prevContext = usePrev(context);\n const hasContext = context !== prevContext && hasProps(context);\n useLayoutEffect(() => {\n if (hasContext)\n each(transitions, (t) => {\n t.ctrl.start({default: context});\n });\n }, [context]);\n useLayoutEffect(() => {\n each(changes, ({phase, springs, payload}, t) => {\n const {ctrl} = t;\n t.phase = phase;\n ref == null ? void 0 : ref.add(ctrl);\n replaceRef(ctrl, payload.ref);\n setSprings(ctrl, springs);\n if (hasContext && phase == ENTER) {\n ctrl.start({default: context});\n }\n ctrl[ctrl.ref ? \"update\" : \"start\"](payload);\n });\n }, reset ? void 0 : deps);\n const renderTransitions = (render) => /* @__PURE__ */ createElement(Fragment, null, transitions.map((t, i) => {\n const {springs} = changes.get(t) || t.ctrl;\n const elem = render({...springs}, t.item, t, i);\n return elem && elem.type ? /* @__PURE__ */ createElement(elem.type, {\n ...elem.props,\n key: is.str(t.key) || is.num(t.key) ? t.key : t.ctrl.id,\n ref: elem.ref\n }) : elem;\n }));\n return ref ? [renderTransitions, ref] : renderTransitions;\n}\nlet nextKey = 1;\nfunction getKeys(items, {key, keys = key}, prevTransitions) {\n if (keys === null) {\n const reused = new Set();\n return items.map((item) => {\n const t = prevTransitions && prevTransitions.find((t2) => t2.item === item && t2.phase !== LEAVE && !reused.has(t2));\n if (t) {\n reused.add(t);\n return t.key;\n }\n return nextKey++;\n });\n }\n return is.und(keys) ? items : is.fun(keys) ? items.map(keys) : toArray(keys);\n}\n\nfunction Spring({children, ...props}) {\n return children(useSpring(props));\n}\n\nfunction Trail({\n items,\n children,\n ...props\n}) {\n const trails = useTrail(items.length, props);\n return items.map((item, index) => {\n const result = children(item, index);\n return is.fun(result) ? result(trails[index]) : result;\n });\n}\n\nfunction Transition({\n items,\n children,\n ...props\n}) {\n return useTransition(items, props)(children);\n}\n\nclass Interpolation extends FrameValue {\n constructor(source, args) {\n super();\n this.source = source;\n this.idle = true;\n this._active = new Set();\n this.calc = createInterpolator(...args);\n const value = this._get();\n const nodeType = getAnimatedType(value);\n setAnimated(this, nodeType.create(value));\n }\n advance(_dt) {\n const value = this._get();\n const oldValue = this.get();\n if (!isEqual(value, oldValue)) {\n getAnimated(this).setValue(value);\n this._onChange(value, this.idle);\n }\n if (!this.idle && checkIdle(this._active)) {\n becomeIdle(this);\n }\n }\n _get() {\n const inputs = is.arr(this.source) ? this.source.map(getFluidValue) : toArray(getFluidValue(this.source));\n return this.calc(...inputs);\n }\n _start() {\n if (this.idle && !checkIdle(this._active)) {\n this.idle = false;\n each(getPayload(this), (node) => {\n node.done = false;\n });\n if (Globals.skipAnimation) {\n raf.batchedUpdates(() => this.advance());\n becomeIdle(this);\n } else {\n frameLoop.start(this);\n }\n }\n }\n _attach() {\n let priority = 1;\n each(toArray(this.source), (source) => {\n if (hasFluidValue(source)) {\n addFluidObserver(source, this);\n }\n if (isFrameValue(source)) {\n if (!source.idle) {\n this._active.add(source);\n }\n priority = Math.max(priority, source.priority + 1);\n }\n });\n this.priority = priority;\n this._start();\n }\n _detach() {\n each(toArray(this.source), (source) => {\n if (hasFluidValue(source)) {\n removeFluidObserver(source, this);\n }\n });\n this._active.clear();\n becomeIdle(this);\n }\n eventObserved(event) {\n if (event.type == \"change\") {\n if (event.idle) {\n this.advance();\n } else {\n this._active.add(event.parent);\n this._start();\n }\n } else if (event.type == \"idle\") {\n this._active.delete(event.parent);\n } else if (event.type == \"priority\") {\n this.priority = toArray(this.source).reduce((highest, parent) => Math.max(highest, (isFrameValue(parent) ? parent.priority : 0) + 1), 0);\n }\n }\n}\nfunction isIdle(source) {\n return source.idle !== false;\n}\nfunction checkIdle(active) {\n return !active.size || Array.from(active).every(isIdle);\n}\nfunction becomeIdle(self) {\n if (!self.idle) {\n self.idle = true;\n each(getPayload(self), (node) => {\n node.done = true;\n });\n callFluidObservers(self, {\n type: \"idle\",\n parent: self\n });\n }\n}\n\nconst to = (source, ...args) => new Interpolation(source, args);\nconst interpolate = (source, ...args) => (deprecateInterpolate(), new Interpolation(source, args));\n\nGlobals.assign({\n createStringInterpolator,\n to: (source, args) => new Interpolation(source, args)\n});\nconst update = frameLoop.advance;\n\nexport { BailSignal, Controller, FrameValue, Interpolation, Spring, SpringContext, SpringRef, SpringValue, Trail, Transition, config, inferTo, interpolate, to, update, useChain, useSpring, useSpringRef, useSprings, useTrail, useTransition };\n//# sourceMappingURL=index.js.map\n","import { Globals } from '@react-spring/core';\nexport * from '@react-spring/core';\nimport { unstable_batchedUpdates } from 'react-dom';\nimport { eachProp, is, toArray, FluidValue, each, getFluidValue, hasFluidValue, addFluidObserver, removeFluidObserver, callFluidObservers, createStringInterpolator, colors } from '@react-spring/shared';\nimport { AnimatedObject, createHost } from '@react-spring/animated';\n\nconst isCustomPropRE = /^--/;\nfunction dangerousStyleValue(name, value) {\n if (value == null || typeof value === \"boolean\" || value === \"\")\n return \"\";\n if (typeof value === \"number\" && value !== 0 && !isCustomPropRE.test(name) && !(isUnitlessNumber.hasOwnProperty(name) && isUnitlessNumber[name]))\n return value + \"px\";\n return (\"\" + value).trim();\n}\nconst attributeCache = {};\nfunction applyAnimatedValues(instance, props) {\n if (!instance.nodeType || !instance.setAttribute) {\n return false;\n }\n const isFilterElement = instance.nodeName === \"filter\" || instance.parentNode && instance.parentNode.nodeName === \"filter\";\n const {style, children, scrollTop, scrollLeft, ...attributes} = props;\n const values = Object.values(attributes);\n const names = Object.keys(attributes).map((name) => isFilterElement || instance.hasAttribute(name) ? name : attributeCache[name] || (attributeCache[name] = name.replace(/([A-Z])/g, (n) => \"-\" + n.toLowerCase())));\n if (children !== void 0) {\n instance.textContent = children;\n }\n for (let name in style) {\n if (style.hasOwnProperty(name)) {\n const value = dangerousStyleValue(name, style[name]);\n if (name === \"float\")\n name = \"cssFloat\";\n else if (isCustomPropRE.test(name)) {\n instance.style.setProperty(name, value);\n } else {\n instance.style[name] = value;\n }\n }\n }\n names.forEach((name, i) => {\n instance.setAttribute(name, values[i]);\n });\n if (scrollTop !== void 0) {\n instance.scrollTop = scrollTop;\n }\n if (scrollLeft !== void 0) {\n instance.scrollLeft = scrollLeft;\n }\n}\nlet isUnitlessNumber = {\n animationIterationCount: true,\n borderImageOutset: true,\n borderImageSlice: true,\n borderImageWidth: true,\n boxFlex: true,\n boxFlexGroup: true,\n boxOrdinalGroup: true,\n columnCount: true,\n columns: true,\n flex: true,\n flexGrow: true,\n flexPositive: true,\n flexShrink: true,\n flexNegative: true,\n flexOrder: true,\n gridRow: true,\n gridRowEnd: true,\n gridRowSpan: true,\n gridRowStart: true,\n gridColumn: true,\n gridColumnEnd: true,\n gridColumnSpan: true,\n gridColumnStart: true,\n fontWeight: true,\n lineClamp: true,\n lineHeight: true,\n opacity: true,\n order: true,\n orphans: true,\n tabSize: true,\n widows: true,\n zIndex: true,\n zoom: true,\n fillOpacity: true,\n floodOpacity: true,\n stopOpacity: true,\n strokeDasharray: true,\n strokeDashoffset: true,\n strokeMiterlimit: true,\n strokeOpacity: true,\n strokeWidth: true\n};\nconst prefixKey = (prefix, key) => prefix + key.charAt(0).toUpperCase() + key.substring(1);\nconst prefixes = [\"Webkit\", \"Ms\", \"Moz\", \"O\"];\nisUnitlessNumber = Object.keys(isUnitlessNumber).reduce((acc, prop) => {\n prefixes.forEach((prefix) => acc[prefixKey(prefix, prop)] = acc[prop]);\n return acc;\n}, isUnitlessNumber);\n\nconst domTransforms = /^(matrix|translate|scale|rotate|skew)/;\nconst pxTransforms = /^(translate)/;\nconst degTransforms = /^(rotate|skew)/;\nconst addUnit = (value, unit) => is.num(value) && value !== 0 ? value + unit : value;\nconst isValueIdentity = (value, id) => is.arr(value) ? value.every((v) => isValueIdentity(v, id)) : is.num(value) ? value === id : parseFloat(value) === id;\nclass AnimatedStyle extends AnimatedObject {\n constructor({x, y, z, ...style}) {\n const inputs = [];\n const transforms = [];\n if (x || y || z) {\n inputs.push([x || 0, y || 0, z || 0]);\n transforms.push((xyz) => [\n `translate3d(${xyz.map((v) => addUnit(v, \"px\")).join(\",\")})`,\n isValueIdentity(xyz, 0)\n ]);\n }\n eachProp(style, (value, key) => {\n if (key === \"transform\") {\n inputs.push([value || \"\"]);\n transforms.push((transform) => [transform, transform === \"\"]);\n } else if (domTransforms.test(key)) {\n delete style[key];\n if (is.und(value))\n return;\n const unit = pxTransforms.test(key) ? \"px\" : degTransforms.test(key) ? \"deg\" : \"\";\n inputs.push(toArray(value));\n transforms.push(key === \"rotate3d\" ? ([x2, y2, z2, deg]) => [\n `rotate3d(${x2},${y2},${z2},${addUnit(deg, unit)})`,\n isValueIdentity(deg, 0)\n ] : (input) => [\n `${key}(${input.map((v) => addUnit(v, unit)).join(\",\")})`,\n isValueIdentity(input, key.startsWith(\"scale\") ? 1 : 0)\n ]);\n }\n });\n if (inputs.length) {\n style.transform = new FluidTransform(inputs, transforms);\n }\n super(style);\n }\n}\nclass FluidTransform extends FluidValue {\n constructor(inputs, transforms) {\n super();\n this.inputs = inputs;\n this.transforms = transforms;\n this._value = null;\n }\n get() {\n return this._value || (this._value = this._get());\n }\n _get() {\n let transform = \"\";\n let identity = true;\n each(this.inputs, (input, i) => {\n const arg1 = getFluidValue(input[0]);\n const [t, id] = this.transforms[i](is.arr(arg1) ? arg1 : input.map(getFluidValue));\n transform += \" \" + t;\n identity = identity && id;\n });\n return identity ? \"none\" : transform;\n }\n observerAdded(count) {\n if (count == 1)\n each(this.inputs, (input) => each(input, (value) => hasFluidValue(value) && addFluidObserver(value, this)));\n }\n observerRemoved(count) {\n if (count == 0)\n each(this.inputs, (input) => each(input, (value) => hasFluidValue(value) && removeFluidObserver(value, this)));\n }\n eventObserved(event) {\n if (event.type == \"change\") {\n this._value = null;\n }\n callFluidObservers(this, event);\n }\n}\n\nconst primitives = [\n \"a\",\n \"abbr\",\n \"address\",\n \"area\",\n \"article\",\n \"aside\",\n \"audio\",\n \"b\",\n \"base\",\n \"bdi\",\n \"bdo\",\n \"big\",\n \"blockquote\",\n \"body\",\n \"br\",\n \"button\",\n \"canvas\",\n \"caption\",\n \"cite\",\n \"code\",\n \"col\",\n \"colgroup\",\n \"data\",\n \"datalist\",\n \"dd\",\n \"del\",\n \"details\",\n \"dfn\",\n \"dialog\",\n \"div\",\n \"dl\",\n \"dt\",\n \"em\",\n \"embed\",\n \"fieldset\",\n \"figcaption\",\n \"figure\",\n \"footer\",\n \"form\",\n \"h1\",\n \"h2\",\n \"h3\",\n \"h4\",\n \"h5\",\n \"h6\",\n \"head\",\n \"header\",\n \"hgroup\",\n \"hr\",\n \"html\",\n \"i\",\n \"iframe\",\n \"img\",\n \"input\",\n \"ins\",\n \"kbd\",\n \"keygen\",\n \"label\",\n \"legend\",\n \"li\",\n \"link\",\n \"main\",\n \"map\",\n \"mark\",\n \"menu\",\n \"menuitem\",\n \"meta\",\n \"meter\",\n \"nav\",\n \"noscript\",\n \"object\",\n \"ol\",\n \"optgroup\",\n \"option\",\n \"output\",\n \"p\",\n \"param\",\n \"picture\",\n \"pre\",\n \"progress\",\n \"q\",\n \"rp\",\n \"rt\",\n \"ruby\",\n \"s\",\n \"samp\",\n \"script\",\n \"section\",\n \"select\",\n \"small\",\n \"source\",\n \"span\",\n \"strong\",\n \"style\",\n \"sub\",\n \"summary\",\n \"sup\",\n \"table\",\n \"tbody\",\n \"td\",\n \"textarea\",\n \"tfoot\",\n \"th\",\n \"thead\",\n \"time\",\n \"title\",\n \"tr\",\n \"track\",\n \"u\",\n \"ul\",\n \"var\",\n \"video\",\n \"wbr\",\n \"circle\",\n \"clipPath\",\n \"defs\",\n \"ellipse\",\n \"foreignObject\",\n \"g\",\n \"image\",\n \"line\",\n \"linearGradient\",\n \"mask\",\n \"path\",\n \"pattern\",\n \"polygon\",\n \"polyline\",\n \"radialGradient\",\n \"rect\",\n \"stop\",\n \"svg\",\n \"text\",\n \"tspan\"\n];\n\nGlobals.assign({\n batchedUpdates: unstable_batchedUpdates,\n createStringInterpolator,\n colors\n});\nconst host = createHost(primitives, {\n applyAnimatedValues: applyAnimatedValues,\n createAnimatedStyle: (style) => new AnimatedStyle(style),\n getComponentProps: ({scrollTop, scrollLeft, ...props}) => props\n});\nconst animated = host.animated;\n\nexport { animated as a, animated };\n//# sourceMappingURL=index.js.map\n","import MaterialTooltip from \"@material-ui/core/Tooltip\";\nimport { makeStyles, Theme, useTheme } from \"@material-ui/core\";\nimport React from \"react\";\nimport { MyTooltipProps } from \"./Tooltip.types\";\n\n// Style\ninterface StyleProps {\n margin: string | number;\n backgroundColor: string;\n color: string;\n border: string;\n padding: string | number;\n fontWeight: number;\n width: number | string;\n}\n\nconst useStyles = makeStyles<Theme, StyleProps>((theme: Theme) => ({\n root: (props) => ({\n margin: props.margin,\n backgroundColor: props.backgroundColor,\n color: props.color,\n padding: props.padding,\n boxShadow: theme.boxShadow.m,\n border: props.border,\n maxWidth: props.width,\n fontSize: 12,\n lineHeight: 1.4,\n fontWeight: props.fontWeight,\n }),\n arrow: (props) => ({\n color: props.backgroundColor,\n }),\n}));\n\nconst Tooltip: React.FC<MyTooltipProps> = (props): React.ReactElement => {\n const theme = useTheme();\n const {\n arrow,\n margin,\n marginTop,\n marginBottom,\n marginRight,\n marginLeft,\n dark,\n light,\n children,\n width,\n childrenStyle,\n ...other\n } = props;\n const styleProps: StyleProps = {\n width: width ? width : 240,\n padding: arrow ? \"7.5px 12px\" : 12,\n margin: margin\n ? margin\n : marginTop\n ? `0px 0px ${marginTop}px 0px`\n : marginBottom\n ? `${marginBottom}px 0px 0px 0px`\n : marginRight\n ? `0px 0px 0px ${marginRight}px`\n : marginLeft\n ? `0px ${marginLeft}px 0px 0px`\n : \"10px 0px\",\n backgroundColor: dark\n ? theme.black.black900\n : light\n ? theme.black.white\n : theme.black.black900,\n color: dark\n ? theme.black.white\n : light\n ? theme.black.black800\n : theme.black.white,\n border: light ? \"1px solid #CCCCCC\" : null,\n fontWeight: arrow ? 700 : 400,\n };\n const classes = useStyles(styleProps);\n return (\n <MaterialTooltip\n classes={{ tooltip: classes.root, arrow: classes.arrow }}\n {...other}\n arrow={arrow}\n >\n <div\n style={{\n width: \"fit-content\",\n height: \"fit-content\",\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n ...childrenStyle,\n }}\n >\n {children}\n </div>\n </MaterialTooltip>\n );\n};\n\nexport default Tooltip;\n","import React, { useEffect, useState } from \"react\";\nimport {\n Paper,\n IconButton,\n Divider,\n Slide,\n makeStyles,\n Theme,\n Box,\n Backdrop,\n} from \"@material-ui/core\";\nimport MaterialModal from \"@material-ui/core/Modal\";\nimport CloseIcon from \"@material-ui/icons/Close\";\nimport CheckCircleIcon from \"@material-ui/icons/CheckCircle\";\nimport WarningIcon from \"@material-ui/icons/Warning\";\n\nimport { ModalProps } from \"./Modal.types\";\nimport Typography from \"../Typography/Typography\";\nimport Button from \"../Button/Button\";\nimport { useBreakpoints } from \"..\";\nimport { animated, useSpring } from \"react-spring\";\nimport Tooltip from \"../Tooltip/Tooltip\";\n\ninterface ModalTransitionEffectProps {\n children?: React.ReactElement;\n in: boolean;\n slide?: boolean;\n onEnter?: () => {};\n onExited?: () => {};\n style?: React.CSSProperties;\n}\nconst ModalTransitionEffect = React.forwardRef<\n HTMLDivElement,\n ModalTransitionEffectProps\n>(function ModalTransitionEffect(props, ref) {\n const {\n in: open,\n slide,\n children,\n onEnter,\n onExited,\n style,\n ...other\n } = props;\n const defaultStyle = useSpring({\n config: { duration: 200 },\n from: { opacity: 0, transform: \"translateY(50px)\" },\n to: {\n opacity: open ? 1 : 0,\n transform: open ? \"translateY(0px)\" : \"translateY(50px)\",\n },\n onStart: () => {\n if (open && onEnter) {\n onEnter();\n }\n },\n onRest: () => {\n if (!open && onExited) {\n onExited();\n }\n },\n });\n\n return (\n <>\n {slide ? (\n <Slide\n in={open}\n direction=\"up\"\n mountOnEnter\n unmountOnExit\n timeout={{ enter: 300, exit: 300 }}\n >\n {children}\n </Slide>\n ) : (\n <animated.div\n style={{\n ...style,\n ...defaultStyle,\n }}\n {...other}\n >\n {children}\n </animated.div>\n )}\n </>\n );\n});\ninterface styleProps {\n fullWidth: any;\n fullScreen: any;\n match_XS: any;\n width: any;\n size: any;\n maxWidth: any;\n headpadding: any;\n mobile: any;\n disCloseIcon: any;\n onExit: any;\n iconColor: any;\n checkIconColor: any;\n height: any;\n bodyPadding: any;\n bodyMaxHeight: any;\n clientHeight: any;\n label: any;\n secondaryButton: any;\n primaryButton: any;\n buttonFullWidth: any;\n footerDisplayColumn: any;\n helpText: any;\n multiline: any;\n}\nconst useStyles = makeStyles((theme: Theme) => ({\n root: {\n display: \"flex\",\n alignItems: ({ fullWidth }: styleProps) =>\n fullWidth ? \"flex-end\" : \"center\",\n justifyContent: \"center\",\n border: \"unset\",\n borderRadius: 12,\n margin: ({ fullWidth, fullScreen, match_XS }: styleProps) =>\n (fullWidth || fullScreen) ? 0 : match_XS ? \"0px 24px\" : \"0px 16px\",\n },\n backdrop: {\n transition: \"all 0.2s ease-in-out !important\",\n },\n modal: {\n width: ({ fullScreen, width, size }: styleProps) =>\n fullScreen\n ? \"100vw\"\n : width\n ? width\n : size === \"large\"\n ? 800\n : size === \"medium\"\n ? 640\n : size === \"small\"\n ? 480\n : size === \"extraSmall\"\n ? 320\n : \"100%\",\n maxWidth: ({ maxWidth }: styleProps) => maxWidth,\n borderRadius: ({ fullWidth, fullScreen }: styleProps) =>\n fullScreen ? 0 : fullWidth ? \"12px 12px 0px 0px\" : 12,\n border: \"unset\",\n boxShadow: ({ fullScreen }: styleProps) => fullScreen ? \"unset\" : theme.boxShadow.l,\n display: \"flex\",\n flexDirection: \"column\",\n outline: 0,\n },\n head: {\n height: \"100%\",\n borderRadius: ({ fullScreen }: styleProps) => fullScreen ? 0 : \"12px 12px 0px 0px\",\n padding: ({\n headpadding,\n mobile,\n disCloseIcon,\n helpText,\n multiline,\n }: styleProps) =>\n headpadding\n ? headpadding\n : mobile\n ? disCloseIcon && !helpText && !multiline\n ? \"17px 16px\"\n : \"12px 16px\"\n : disCloseIcon && !helpText && !multiline\n ? \"19.5px 24px\"\n : \"16px 24px\",\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n position: \"relative\",\n pointerEvents: ({ onExit }: styleProps) => (onExit ? \"none\" : \"unset\"),\n },\n title: {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n },\n icon: {\n \"& path\": {\n width: 20,\n height: 20,\n },\n color: ({ iconColor, checkIconColor }: styleProps) =>\n iconColor === \"primary50\"\n ? theme.primary.primary50\n : iconColor === \"primary100\"\n ? theme.primary.primary100\n : iconColor === \"primary200\"\n ? theme.primary.primary200\n : iconColor === \"primary300\"\n ? theme.primary.primary300\n : iconColor === \"primary400\"\n ? theme.primary.primary400\n : iconColor === \"primary500\"\n ? theme.primary.primary500\n : iconColor === \"primary600\"\n ? theme.primary.primary600\n : iconColor === \"primary700\"\n ? theme.primary.primary700\n : iconColor === \"primary800\"\n ? theme.primary.primary800\n : iconColor === \"primary900\"\n ? theme.primary.primary900\n : iconColor === \"primaryA11y\"\n ? theme.primary.primaryA11y\n : iconColor === \"secondary50\"\n ? theme.secondary.secondary50\n : iconColor === \"secondary100\"\n ? theme.secondary.secondary100\n : iconColor === \"secondary200\"\n ? theme.secondary.secondary200\n : iconColor === \"secondary300\"\n ? theme.secondary.secondary300\n : iconColor === \"secondary400\"\n ? theme.secondary.secondary400\n : iconColor === \"secondary500\"\n ? theme.secondary.secondary500\n : iconColor === \"secondary600\"\n ? theme.secondary.secondary600\n : iconColor === \"secondary700\"\n ? theme.secondary.secondary700\n : iconColor === \"secondary800\"\n ? theme.secondary.secondary800\n : iconColor === \"secondary900\"\n ? theme.secondary.secondary900\n : iconColor === \"secondaryA11y\"\n ? theme.secondary.secondaryA11y\n : iconColor === \"danger50\"\n ? theme.danger.danger50\n : iconColor === \"danger100\"\n ? theme.danger.danger100\n : iconColor === \"danger200\"\n ? theme.danger.danger200\n : iconColor === \"danger300\"\n ? theme.danger.danger300\n : iconColor === \"danger400\"\n ? theme.danger.danger400\n : iconColor === \"danger500\"\n ? theme.danger.danger500\n : iconColor === \"danger600\"\n ? theme.danger.danger600\n : iconColor === \"danger700\"\n ? theme.danger.danger700\n : iconColor === \"danger800\"\n ? theme.danger.danger800\n : iconColor === \"danger900\"\n ? theme.danger.danger900\n : iconColor === \"dangerA11y\"\n ? theme.danger.dangerA11y\n : iconColor === \"success50\"\n ? theme.success.success50\n : iconColor === \"success100\"\n ? theme.success.success100\n : iconColor === \"success200\"\n ? theme.success.success200\n : iconColor === \"success300\"\n ? theme.success.success300\n : iconColor === \"success400\"\n ? theme.success.success400\n : iconColor === \"success500\"\n ? theme.success.success500\n : iconColor === \"success600\"\n ? theme.success.success600\n : iconColor === \"success700\"\n ? theme.success.success700\n : iconColor === \"success800\"\n ? theme.success.success800\n : iconColor === \"success900\"\n ? theme.success.success900\n : iconColor === \"successA11y\"\n ? theme.success.successA11y\n : iconColor === \"white\"\n ? theme.black.white\n : iconColor === \"black100\"\n ? theme.black.black100\n : iconColor === \"black200\"\n ? theme.black.black200\n : iconColor === \"black300\"\n ? theme.black.black300\n : iconColor === \"black400\"\n ? theme.black.black400\n : iconColor === \"black500\"\n ? theme.black.black500\n : iconColor === \"black600\"\n ? theme.black.black600\n : iconColor === \"black700\"\n ? theme.black.black700\n : iconColor === \"black800\"\n ? theme.black.black800\n : iconColor === \"black900\"\n ? theme.black.black900\n : iconColor === \"black1000\"\n ? theme.black.black1000\n : checkIconColor === \"primary50\"\n ? theme.primary.primary50\n : checkIconColor === \"primary100\"\n ? theme.primary.primary100\n : checkIconColor === \"primary200\"\n ? theme.primary.primary200\n : checkIconColor === \"primary300\"\n ? theme.primary.primary300\n : checkIconColor === \"primary400\"\n ? theme.primary.primary400\n : checkIconColor === \"primary500\"\n ? theme.primary.primary500\n : checkIconColor === \"primary600\"\n ? theme.primary.primary600\n : checkIconColor === \"primary700\"\n ? theme.primary.primary700\n : checkIconColor === \"primary800\"\n ? theme.primary.primary800\n : checkIconColor === \"primary900\"\n ? theme.primary.primary900\n : checkIconColor === \"primaryA11y\"\n ? theme.primary.primaryA11y\n : checkIconColor === \"secondary50\"\n ? theme.secondary.secondary50\n : checkIconColor === \"secondary100\"\n ? theme.secondary.secondary100\n : checkIconColor === \"secondary200\"\n ? theme.secondary.secondary200\n : checkIconColor === \"secondary300\"\n ? theme.secondary.secondary300\n : checkIconColor === \"secondary400\"\n ? theme.secondary.secondary400\n : checkIconColor === \"secondary500\"\n ? theme.secondary.secondary500\n : checkIconColor === \"secondary600\"\n ? theme.secondary.secondary600\n : checkIconColor === \"secondary700\"\n ? theme.secondary.secondary700\n : checkIconColor === \"secondary800\"\n ? theme.secondary.secondary800\n : checkIconColor === \"secondary900\"\n ? theme.secondary.secondary900\n : checkIconColor === \"secondaryA11y\"\n ? theme.secondary.secondaryA11y\n : checkIconColor === \"danger50\"\n ? theme.danger.danger50\n : checkIconColor === \"danger100\"\n ? theme.danger.danger100\n : checkIconColor === \"danger200\"\n ? theme.danger.danger200\n : checkIconColor === \"danger300\"\n ? theme.danger.danger300\n : checkIconColor === \"danger400\"\n ? theme.danger.danger400\n : checkIconColor === \"danger500\"\n ? theme.danger.danger500\n : checkIconColor === \"danger600\"\n ? theme.danger.danger600\n : checkIconColor === \"danger700\"\n ? theme.danger.danger700\n : checkIconColor === \"danger800\"\n ? theme.danger.danger800\n : checkIconColor === \"danger900\"\n ? theme.danger.danger900\n : checkIconColor === \"dangerA11y\"\n ? theme.danger.dangerA11y\n : checkIconColor === \"success50\"\n ? theme.success.success50\n : checkIconColor === \"success100\"\n ? theme.success.success100\n : checkIconColor === \"success200\"\n ? theme.success.success200\n : checkIconColor === \"success300\"\n ? theme.success.success300\n : checkIconColor === \"success400\"\n ? theme.success.success400\n : checkIconColor === \"success500\"\n ? theme.success.success500\n : checkIconColor === \"success600\"\n ? theme.success.success600\n : checkIconColor === \"success700\"\n ? theme.success.success700\n : checkIconColor === \"success800\"\n ? theme.success.success800\n : checkIconColor === \"success900\"\n ? theme.success.success900\n : checkIconColor === \"successA11y\"\n ? theme.success.successA11y\n : checkIconColor === \"white\"\n ? theme.black.white\n : checkIconColor === \"black100\"\n ? theme.black.black100\n : checkIconColor === \"black200\"\n ? theme.black.black200\n : checkIconColor === \"black300\"\n ? theme.black.black300\n : checkIconColor === \"black400\"\n ? theme.black.black400\n : checkIconColor === \"black500\"\n ? theme.black.black500\n : checkIconColor === \"black600\"\n ? theme.black.black600\n : checkIconColor === \"black700\"\n ? theme.black.black700\n : checkIconColor === \"black800\"\n ? theme.black.black800\n : checkIconColor === \"black900\"\n ? theme.black.black900\n : checkIconColor === \"black1000\"\n ? theme.black.black1000\n : theme.black.black700,\n marginRight: 10,\n },\n closeIconButton: {\n padding: 0,\n width: 32,\n height: 32,\n borderRadius: 8,\n \"&:hover\": {\n borderRadius: 8,\n },\n marginLeft: 16,\n },\n closeIconRippleRoot: {\n borderRadius: 8,\n },\n closeIcon: {\n color: theme.black.black1000,\n borderRadius: 8,\n width: 20,\n height: 20,\n },\n body: {\n transition: \"all 0.2s ease-in-out\",\n height: ({ fullScreen, height }: styleProps) => fullScreen ? \"calc(100vh - 146px)\" : height ? height : \"100%\",\n padding: ({ bodyPadding, mobile }: styleProps) =>\n bodyPadding ? bodyPadding : mobile ? 16 : 24,\n position: \"relative\",\n pointerEvents: ({ onExit }: styleProps) => (onExit ? \"none\" : \"unset\"),\n maxHeight: ({ bodyMaxHeight, fullWidth, fullScreen, clientHeight }: styleProps) =>\n fullScreen\n ? \"calc(100vh - 146px)\"\n : bodyMaxHeight\n ? bodyMaxHeight\n : fullWidth\n ? clientHeight\n : \"unset\",\n overflowY: ({ onExit }: styleProps) => (!onExit ? \"scroll\" : \"hidden\"),\n \"&::-webkit-scrollbar\": {\n backgroundColor: \"transparent\",\n width: 5,\n },\n \"&::-webkit-scrollbar-thumb\": {\n backgroundColor: theme.black.black600,\n borderRadius: 100,\n },\n \"&::-webkit-scrollbar-track-piece:start\": {\n marginTop: 12,\n },\n \"&::-webkit-scrollbar-track-piece:end\": {\n marginBottom: 12,\n },\n },\n footer: {\n height: \"100%\",\n padding: ({ label, secondaryButton, primaryButton, mobile }: styleProps) =>\n label || secondaryButton || primaryButton\n ? mobile\n ? \"12px 16px\"\n : \"16px 24px\"\n : null,\n borderRadius: \"0px 0px 12px 12px\",\n display: \"flex\",\n flexDirection: ({ mobile }: styleProps) => (mobile ? \"column\" : \"row\"),\n alignItems: \"center\",\n justifyContent: \"space-between\",\n },\n footerButton: {\n width: ({ buttonFullWidth, footerDisplayColumn, mobile }: styleProps) =>\n buttonFullWidth || footerDisplayColumn || mobile ? \"100%\" : null,\n display: \"flex\",\n flexDirection: ({ footerDisplayColumn }: styleProps) =>\n footerDisplayColumn ? \"column-reverse\" : \"row\",\n alignItems: \"center\",\n },\n}));\nconst Modal: React.FC<ModalProps> = React.forwardRef((props, ref) => {\n const {\n width,\n height,\n open,\n onClose,\n title,\n helpText,\n size,\n headpadding,\n headChildren,\n checked,\n failed,\n icon,\n checkIconColor,\n iconColor,\n children,\n label,\n buttonFullWidth,\n footerDisplayColumn,\n secondaryButton,\n primaryButton,\n mobile,\n fullWidth,\n fullScreen,\n bodyPadding,\n maxWidth,\n disCloseIcon,\n titleStyle,\n bodyStyle,\n onExit,\n bodyMaxHeight,\n multiline,\n disUnderLine,\n footer,\n } = props;\n const [clientHeight, setClientHeight] = useState(0);\n const [scorllbarWidth, setScorllbarWidth] = useState(0);\n\n useEffect(() => {\n if (mobile || fullWidth) {\n if ((helpText || multiline) && !label) {\n setClientHeight(window.innerHeight - 64 - 73 - 64);\n } else if (!helpText && label) {\n setClientHeight(window.innerHeight - 64 - 56 - 99);\n } else if ((helpText || multiline) && label) {\n setClientHeight(window.innerHeight - 64 - 73 - 99);\n } else {\n setClientHeight(window.innerHeight - 64 - 56 - 64);\n }\n }\n }, [fullWidth, mobile]);\n\n useEffect(() => {\n const scrollbar_width: number =\n window.innerWidth - document.body.clientWidth;\n setScorllbarWidth(scrollbar_width / 2);\n }, []);\n\n const match_XS = useBreakpoints(\"xs\");\n const classes = useStyles({\n fullWidth,\n fullScreen,\n match_XS,\n width,\n size,\n maxWidth,\n headpadding,\n mobile,\n disCloseIcon,\n onExit,\n iconColor,\n checkIconColor,\n height,\n bodyPadding,\n bodyMaxHeight,\n clientHeight,\n label,\n secondaryButton,\n primaryButton,\n buttonFullWidth,\n footerDisplayColumn,\n helpText,\n multiline,\n });\n return (\n <MaterialModal\n open={open}\n className={classes.root}\n BackdropComponent={Backdrop}\n BackdropProps={{\n className: classes.backdrop,\n style: { overflow: \"auto\", WebkitOverflowScrolling: \"touch\" },\n }}\n >\n <ModalTransitionEffect\n in={open}\n slide={fullWidth || fullScreen}\n style={{\n outline: \"none\",\n transition: \"ease-in-out\",\n width: \"100%\",\n display: \"flex\",\n justifyContent: \"center\",\n alignItems: \"center\",\n left: open ? 0 : scorllbarWidth,\n position: \"absolute\",\n }}\n >\n <Paper className={classes.modal}>\n {/* Head */}\n <div className={classes.head} style={titleStyle}>\n {onExit ? (\n <div\n style={{\n position: \"absolute\",\n width: \"100%\",\n height: \"100%\",\n background: \"black\",\n top: -0,\n left: -0,\n opacity: 0.5,\n borderRadius: \"12px 12px 0px 0px\",\n zIndex: 10,\n }}\n />\n ) : null}\n {headChildren ? (\n headChildren\n ) : (\n <div className={classes.title}>\n {icon ? icon : null}\n {checked ? <CheckCircleIcon className={classes.icon} /> : null}\n {failed ? <WarningIcon className={classes.icon} /> : null}\n <div>\n <Typography variant={!mobile ? \"h6\" : \"title\"}>\n {title}\n </Typography>\n <Typography\n variant=\"body2_loose\"\n color=\"black800\"\n style={{ marginTop: helpText ? 4 : 0 }}\n >\n {helpText}\n </Typography>\n </div>\n </div>\n )}\n {disCloseIcon ? null : (\n <IconButton\n className={classes.closeIconButton}\n TouchRippleProps={{\n classes: { child: classes.closeIconRippleRoot },\n }}\n onClick={() => {\n onClose();\n }}\n >\n <CloseIcon className={classes.closeIcon} />\n </IconButton>\n )}\n </div>\n {/* Body */}\n {children ? (\n <>\n <Divider\n style={{\n backgroundColor: onExit ? \"#6d6d6d\" : \"#DADADA\",\n }}\n />\n <Box\n id=\"body\"\n className={classes.body}\n style={{\n ...bodyStyle,\n }}\n >\n {onExit ? (\n <div\n style={{\n marginLeft: bodyPadding\n ? -bodyPadding\n : mobile\n ? -16\n : -24,\n marginTop: bodyPadding\n ? -bodyPadding\n : mobile\n ? -16\n : -24,\n position:\n bodyMaxHeight || height || (mobile && fullWidth) || fullScreen\n ? \"fixed\"\n : \"absolute\",\n width: width\n ? width\n : size === \"large\"\n ? 800\n : size === \"medium\"\n ? 640\n : size === \"small\"\n ? 480\n : size === \"extraSmall\"\n ? 320\n : \"100%\",\n height: fullScreen\n ? \"100vh\"\n : bodyMaxHeight\n ? bodyMaxHeight\n : height\n ? height\n : mobile && fullWidth\n ? clientHeight\n : \"100%\",\n background: \"black\",\n opacity: 0.5,\n zIndex: 10,\n }}\n />\n ) : null}\n {children}\n </Box>\n </>\n ) : null}\n {(label || secondaryButton || primaryButton) && !disUnderLine ? (\n <Divider />\n ) : null}\n {/* Footer */}\n <Box className={classes.footer}>\n {footer ? (\n footer\n ) : (\n <>\n {!buttonFullWidth || !footerDisplayColumn ? (\n <Box\n marginBottom={mobile ? (label ? \"12px\" : 0) : 0}\n style={{\n fontSize: mobile ? 16 : 18,\n fontWeight: 700,\n lineHeight: 1.4,\n }}\n >\n {label}\n </Box>\n ) : null}\n\n {secondaryButton || primaryButton ? (\n <Box className={classes.footerButton}>\n <Box\n width={\n mobile && !buttonFullWidth && !footerDisplayColumn\n ? null\n : \"100%\"\n }\n marginRight={\n !footerDisplayColumn && secondaryButton ? 1 : 0\n }\n >\n {secondaryButton ? (\n secondaryButton.tooltip ? (\n <Tooltip {...secondaryButton.tooltip}>\n <Button\n fullWidth={buttonFullWidth || footerDisplayColumn}\n variant={\n secondaryButton.variant\n ? secondaryButton.variant\n : \"secondary\"\n }\n size=\"small\"\n onClick={secondaryButton.onClick}\n disabled={secondaryButton.disabled}\n loading={secondaryButton.loading}\n style={secondaryButton.style}\n >\n {secondaryButton.title}\n </Button>\n </Tooltip>\n ) : (\n <Button\n fullWidth={buttonFullWidth || footerDisplayColumn}\n variant={\n secondaryButton.variant\n ? secondaryButton.variant\n : \"secondary\"\n }\n size=\"small\"\n onClick={secondaryButton.onClick}\n disabled={secondaryButton.disabled}\n loading={secondaryButton.loading}\n style={secondaryButton.style}\n >\n {secondaryButton.title}\n </Button>\n )\n ) : null}\n </Box>\n <Box\n width=\"100%\"\n marginBottom={footerDisplayColumn ? 1 : 0}\n >\n {primaryButton ? (\n primaryButton.tooltip ? (\n <Tooltip {...primaryButton.tooltip}>\n <Button\n fullWidth={\n buttonFullWidth || footerDisplayColumn || mobile\n }\n variant={\n primaryButton.variant\n ? primaryButton.variant\n : \"primary\"\n }\n size=\"small\"\n onClick={primaryButton.onClick}\n disabled={primaryButton.disabled}\n loading={primaryButton.loading}\n style={primaryButton.style}\n >\n {primaryButton.title}\n </Button>\n </Tooltip>\n ) : (\n <Button\n fullWidth={\n buttonFullWidth || footerDisplayColumn || mobile\n }\n variant={\n primaryButton.variant\n ? primaryButton.variant\n : \"primary\"\n }\n size=\"small\"\n onClick={primaryButton.onClick}\n disabled={primaryButton.disabled}\n loading={primaryButton.loading}\n style={primaryButton.style}\n >\n {primaryButton.title}\n </Button>\n )\n ) : null}\n </Box>\n </Box>\n ) : null}\n </>\n )}\n </Box>\n </Paper>\n </ModalTransitionEffect>\n </MaterialModal>\n );\n});\n\nexport default Modal;\n","import { makeStyles, Theme, useTheme } from \"@material-ui/core\";\nimport React, { useEffect, useRef, useState } from \"react\";\nimport Typography from \"../Typography/Typography\";\nimport { BannerProps } from \"./Banner.types\";\n\n// Style\ninterface StyleProps {\n backgroundColor: string;\n borderColor: string;\n width: string | number;\n height: string | number;\n alignItems: string;\n}\n\nconst useStyles = makeStyles<Theme, StyleProps>(() => ({\n root: (props) => ({\n backgroundColor: props.backgroundColor,\n border: `1px solid ${props.borderColor}`,\n borderRadius: 8,\n padding: \"12px 16px\",\n width: props.width,\n height: props.height,\n display: \"flex\",\n alignItems: props.alignItems,\n }),\n icon: {\n width: 24,\n height: 24,\n marginRight: 8,\n },\n}));\n\nconst Banner: React.FC<BannerProps> = (props): React.ReactElement => {\n const [alignStart, setAlignStart] = useState(false);\n const theme = useTheme();\n const { icon, variant, width, height, mobile, children, ...other } = props;\n const styleProps: StyleProps = {\n backgroundColor:\n variant === \"normal\"\n ? theme.black.black100\n : variant === \"info\"\n ? theme.primary.primary50\n : variant === \"success\"\n ? theme.success.success50\n : variant === \"warning\"\n ? theme.secondary.secondary50\n : variant === \"error\"\n ? theme.danger.danger50\n : theme.primary.primary50,\n borderColor:\n variant === \"normal\"\n ? theme.black.black500\n : variant === \"info\"\n ? theme.primary.primary200\n : variant === \"success\"\n ? theme.success.success400\n : variant === \"warning\"\n ? theme.secondary.secondary600\n : variant === \"error\"\n ? theme.danger.danger300\n : theme.primary.primary200,\n width: width ? width : null,\n height: height ? height : null,\n alignItems: mobile ? \"flex-start\" : alignStart ? \"flex-start\" : \"center\",\n };\n const classes = useStyles(styleProps);\n const ref = useRef(null);\n useEffect(() => {\n if (ref.current) {\n if (ref.current.offsetHeight > 60) {\n setAlignStart(true);\n }\n }\n }, [ref]);\n return (\n <div ref={ref} className={classes.root} {...other}>\n <div className={classes.icon}>\n {icon ? (\n icon\n ) : variant === \"normal\" ||\n variant === \"info\" ||\n variant === \"error\" ? (\n <svg\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M13 9H11V7H13V9ZM13 17H11V11H13V17ZM12 2C10.6868 2 9.38642 2.25866 8.17317 2.7612C6.95991 3.26375 5.85752 4.00035 4.92893 4.92893C3.05357 6.8043 2 9.34784 2 12C2 14.6522 3.05357 17.1957 4.92893 19.0711C5.85752 19.9997 6.95991 20.7362 8.17317 21.2388C9.38642 21.7413 10.6868 22 12 22C14.6522 22 17.1957 20.9464 19.0711 19.0711C20.9464 17.1957 22 14.6522 22 12C22 10.6868 21.7413 9.38642 21.2388 8.17317C20.7362 6.95991 19.9997 5.85752 19.0711 4.92893C18.1425 4.00035 17.0401 3.26375 15.8268 2.7612C14.6136 2.25866 13.3132 2 12 2Z\"\n fill={\n variant === \"normal\"\n ? theme.black.black700\n : variant === \"info\"\n ? theme.primary.primary400\n : variant === \"error\"\n ? theme.danger.danger700\n : theme.primary.primary400\n }\n />\n </svg>\n ) : variant === \"success\" ? (\n <svg\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M12 2C6.5 2 2 6.5 2 12C2 17.5 6.5 22 12 22C17.5 22 22 17.5 22 12C22 6.5 17.5 2 12 2ZM10 17L5 12L6.41 10.59L10 14.17L17.59 6.58L19 8L10 17Z\"\n fill=\"#00932A\"\n />\n </svg>\n ) : variant === \"warning\" ? (\n <svg\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M13 14H11V9H13V14ZM13 18H11V16H13V18ZM1 21H23L12 2L1 21Z\"\n fill=\"#E5640C\"\n />\n </svg>\n ) : (\n <svg\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M13 9H11V7H13V9ZM13 17H11V11H13V17ZM12 2C10.6868 2 9.38642 2.25866 8.17317 2.7612C6.95991 3.26375 5.85752 4.00035 4.92893 4.92893C3.05357 6.8043 2 9.34784 2 12C2 14.6522 3.05357 17.1957 4.92893 19.0711C5.85752 19.9997 6.95991 20.7362 8.17317 21.2388C9.38642 21.7413 10.6868 22 12 22C14.6522 22 17.1957 20.9464 19.0711 19.0711C20.9464 17.1957 22 14.6522 22 12C22 10.6868 21.7413 9.38642 21.2388 8.17317C20.7362 6.95991 19.9997 5.85752 19.0711 4.92893C18.1425 4.00035 17.0401 3.26375 15.8268 2.7612C14.6136 2.25866 13.3132 2 12 2Z\"\n fill={theme.primary.primary400}\n />\n </svg>\n )}\n </div>\n <Typography variant=\"caption2\">{children}</Typography>\n </div>\n );\n};\n\nexport default Banner;\n","import { makeStyles, Theme, useTheme } from \"@material-ui/core\";\nimport React from \"react\";\nimport { ChipProps } from \"./Chip.types\";\n\n// Style\ninterface StyleProps {\n backgroundColor: string;\n width: string | number;\n height: string | number;\n border: string;\n padding: string;\n color: string;\n}\n\nconst useStyles = makeStyles<Theme, StyleProps>(() => ({\n root: (props) => ({\n backgroundColor: props.backgroundColor,\n border: props.border,\n borderRadius: 4,\n padding: props.padding,\n width: props.width,\n height: props.height,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n fontSize: \"0.75rem\",\n lineHeight: \"17px\",\n fontWeight: 700,\n color: props.color,\n }),\n}));\n\nconst Chip: React.FC<ChipProps> = (props): React.ReactElement => {\n const theme = useTheme();\n const {\n variant,\n width,\n height,\n label,\n icon,\n outlined,\n contained,\n ...other\n } = props;\n const styleProps: StyleProps = {\n backgroundColor:\n outlined || !contained\n ? theme.black.white\n : variant === \"neutral\"\n ? theme.black.black300\n : variant === \"primary\"\n ? theme.primary.primary50\n : variant === \"success\"\n ? theme.success.success50\n : variant === \"danger\"\n ? theme.danger.danger50\n : theme.primary.primary50,\n width: width ? width : \"fit-content\",\n height: height ? height : 24,\n border:\n outlined || !contained\n ? variant === \"neutral\"\n ? `1px solid ${theme.black.black500}`\n : variant === \"primary\"\n ? `1px solid ${theme.primary.primary800}`\n : variant === \"success\"\n ? `1px solid ${theme.success.success800}`\n : variant === \"danger\"\n ? `1px solid ${theme.danger.danger800}`\n : `1px solid ${theme.primary.primary800}`\n : null,\n padding: outlined || !contained ? \"0px 8px\" : \"0px 9px\",\n color:\n variant === \"neutral\"\n ? theme.black.black800\n : variant === \"primary\"\n ? theme.primary.primary800\n : variant === \"success\"\n ? theme.success.success800\n : variant === \"danger\"\n ? theme.danger.danger800\n : theme.primary.primary800,\n };\n const classes = useStyles(styleProps);\n return (\n <div className={classes.root} {...other}>\n <span style={{ marginRight: variant === \"success\" ? 4 : 0 }}>\n {label}\n </span>\n {variant === \"success\" && !icon ? icon_success : icon}\n </div>\n );\n};\n\nconst icon_success = (\n <svg\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M14 4.66666L6 12.6667L2.33333 9L3.27333 8.06L6 10.78L13.06 3.72666L14 4.66666Z\"\n fill=\"#00821E\"\n />\n </svg>\n);\n\nexport default Chip;\n","import { useTheme } from \"@material-ui/core\";\nimport React from \"react\";\nimport { CircularProgressProps } from \"./CircularProgress.types\";\nimport MaterialCircularProgress from \"@material-ui/core/CircularProgress\";\n\nconst CircularProgress: React.FC<CircularProgressProps> = (\n props\n): React.ReactElement => {\n const theme = useTheme();\n const { dark, size, thickness } = props;\n return (\n <div\n style={{\n position: \"relative\",\n width: size ? size : 20,\n height: size ? size : 20,\n }}\n >\n {/* bottom */}\n <MaterialCircularProgress\n variant=\"determinate\"\n value={100}\n size={size ? size : 20}\n thickness={thickness ? thickness : 5}\n style={{\n position: \"absolute\",\n left: -0,\n top: -0,\n color: dark ? theme.black.white : theme.black.black500,\n opacity: dark ? 0.4 : 1,\n }}\n />\n {/* top */}\n <MaterialCircularProgress\n variant=\"indeterminate\"\n color=\"primary\"\n size={size ? size : 20}\n thickness={thickness ? thickness : 5}\n style={{\n position: \"absolute\",\n left: -0,\n top: -0,\n color: dark ? theme.black.white : theme.primary.primary800,\n }}\n />\n </div>\n );\n};\n\nexport default CircularProgress;\n","export default function _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}","export default function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}","import objectWithoutPropertiesLoose from \"./objectWithoutPropertiesLoose.js\";\nexport default function _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = objectWithoutPropertiesLoose(source, excluded);\n var key, i;\n\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n\n return target;\n}","/** @license React v16.13.1\n * react-is.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';var b=\"function\"===typeof Symbol&&Symbol.for,c=b?Symbol.for(\"react.element\"):60103,d=b?Symbol.for(\"react.portal\"):60106,e=b?Symbol.for(\"react.fragment\"):60107,f=b?Symbol.for(\"react.strict_mode\"):60108,g=b?Symbol.for(\"react.profiler\"):60114,h=b?Symbol.for(\"react.provider\"):60109,k=b?Symbol.for(\"react.context\"):60110,l=b?Symbol.for(\"react.async_mode\"):60111,m=b?Symbol.for(\"react.concurrent_mode\"):60111,n=b?Symbol.for(\"react.forward_ref\"):60112,p=b?Symbol.for(\"react.suspense\"):60113,q=b?\nSymbol.for(\"react.suspense_list\"):60120,r=b?Symbol.for(\"react.memo\"):60115,t=b?Symbol.for(\"react.lazy\"):60116,v=b?Symbol.for(\"react.block\"):60121,w=b?Symbol.for(\"react.fundamental\"):60117,x=b?Symbol.for(\"react.responder\"):60118,y=b?Symbol.for(\"react.scope\"):60119;\nfunction z(a){if(\"object\"===typeof a&&null!==a){var u=a.$$typeof;switch(u){case c:switch(a=a.type,a){case l:case m:case e:case g:case f:case p:return a;default:switch(a=a&&a.$$typeof,a){case k:case n:case t:case r:case h:return a;default:return u}}case d:return u}}}function A(a){return z(a)===m}exports.AsyncMode=l;exports.ConcurrentMode=m;exports.ContextConsumer=k;exports.ContextProvider=h;exports.Element=c;exports.ForwardRef=n;exports.Fragment=e;exports.Lazy=t;exports.Memo=r;exports.Portal=d;\nexports.Profiler=g;exports.StrictMode=f;exports.Suspense=p;exports.isAsyncMode=function(a){return A(a)||z(a)===l};exports.isConcurrentMode=A;exports.isContextConsumer=function(a){return z(a)===k};exports.isContextProvider=function(a){return z(a)===h};exports.isElement=function(a){return\"object\"===typeof a&&null!==a&&a.$$typeof===c};exports.isForwardRef=function(a){return z(a)===n};exports.isFragment=function(a){return z(a)===e};exports.isLazy=function(a){return z(a)===t};\nexports.isMemo=function(a){return z(a)===r};exports.isPortal=function(a){return z(a)===d};exports.isProfiler=function(a){return z(a)===g};exports.isStrictMode=function(a){return z(a)===f};exports.isSuspense=function(a){return z(a)===p};\nexports.isValidElementType=function(a){return\"string\"===typeof a||\"function\"===typeof a||a===e||a===m||a===g||a===f||a===p||a===q||\"object\"===typeof a&&null!==a&&(a.$$typeof===t||a.$$typeof===r||a.$$typeof===h||a.$$typeof===k||a.$$typeof===n||a.$$typeof===w||a.$$typeof===x||a.$$typeof===y||a.$$typeof===v)};exports.typeOf=z;\n","/** @license React v16.13.1\n * react-is.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\n\n\nif (process.env.NODE_ENV !== \"production\") {\n (function() {\n'use strict';\n\n// The Symbol used to tag the ReactElement-like types. If there is no native Symbol\n// nor polyfill, then a plain number is used for performance.\nvar hasSymbol = typeof Symbol === 'function' && Symbol.for;\nvar REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for('react.element') : 0xeac7;\nvar REACT_PORTAL_TYPE = hasSymbol ? Symbol.for('react.portal') : 0xeaca;\nvar REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for('react.fragment') : 0xeacb;\nvar REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for('react.strict_mode') : 0xeacc;\nvar REACT_PROFILER_TYPE = hasSymbol ? Symbol.for('react.profiler') : 0xead2;\nvar REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for('react.provider') : 0xeacd;\nvar REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for('react.context') : 0xeace; // TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary\n// (unstable) APIs that have been removed. Can we remove the symbols?\n\nvar REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for('react.async_mode') : 0xeacf;\nvar REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for('react.concurrent_mode') : 0xeacf;\nvar REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;\nvar REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for('react.suspense') : 0xead1;\nvar REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for('react.suspense_list') : 0xead8;\nvar REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;\nvar REACT_LAZY_TYPE = hasSymbol ? Symbol.for('react.lazy') : 0xead4;\nvar REACT_BLOCK_TYPE = hasSymbol ? Symbol.for('react.block') : 0xead9;\nvar REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for('react.fundamental') : 0xead5;\nvar REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for('react.responder') : 0xead6;\nvar REACT_SCOPE_TYPE = hasSymbol ? Symbol.for('react.scope') : 0xead7;\n\nfunction isValidElementType(type) {\n return typeof type === 'string' || typeof type === 'function' || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.\n type === REACT_FRAGMENT_TYPE || type === REACT_CONCURRENT_MODE_TYPE || type === REACT_PROFILER_TYPE || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || typeof type === 'object' && type !== null && (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || type.$$typeof === REACT_FUNDAMENTAL_TYPE || type.$$typeof === REACT_RESPONDER_TYPE || type.$$typeof === REACT_SCOPE_TYPE || type.$$typeof === REACT_BLOCK_TYPE);\n}\n\nfunction typeOf(object) {\n if (typeof object === 'object' && object !== null) {\n var $$typeof = object.$$typeof;\n\n switch ($$typeof) {\n case REACT_ELEMENT_TYPE:\n var type = object.type;\n\n switch (type) {\n case REACT_ASYNC_MODE_TYPE:\n case REACT_CONCURRENT_MODE_TYPE:\n case REACT_FRAGMENT_TYPE:\n case REACT_PROFILER_TYPE:\n case REACT_STRICT_MODE_TYPE:\n case REACT_SUSPENSE_TYPE:\n return type;\n\n default:\n var $$typeofType = type && type.$$typeof;\n\n switch ($$typeofType) {\n case REACT_CONTEXT_TYPE:\n case REACT_FORWARD_REF_TYPE:\n case REACT_LAZY_TYPE:\n case REACT_MEMO_TYPE:\n case REACT_PROVIDER_TYPE:\n return $$typeofType;\n\n default:\n return $$typeof;\n }\n\n }\n\n case REACT_PORTAL_TYPE:\n return $$typeof;\n }\n }\n\n return undefined;\n} // AsyncMode is deprecated along with isAsyncMode\n\nvar AsyncMode = REACT_ASYNC_MODE_TYPE;\nvar ConcurrentMode = REACT_CONCURRENT_MODE_TYPE;\nvar ContextConsumer = REACT_CONTEXT_TYPE;\nvar ContextProvider = REACT_PROVIDER_TYPE;\nvar Element = REACT_ELEMENT_TYPE;\nvar ForwardRef = REACT_FORWARD_REF_TYPE;\nvar Fragment = REACT_FRAGMENT_TYPE;\nvar Lazy = REACT_LAZY_TYPE;\nvar Memo = REACT_MEMO_TYPE;\nvar Portal = REACT_PORTAL_TYPE;\nvar Profiler = REACT_PROFILER_TYPE;\nvar StrictMode = REACT_STRICT_MODE_TYPE;\nvar Suspense = REACT_SUSPENSE_TYPE;\nvar hasWarnedAboutDeprecatedIsAsyncMode = false; // AsyncMode should be deprecated\n\nfunction isAsyncMode(object) {\n {\n if (!hasWarnedAboutDeprecatedIsAsyncMode) {\n hasWarnedAboutDeprecatedIsAsyncMode = true; // Using console['warn'] to evade Babel and ESLint\n\n console['warn']('The ReactIs.isAsyncMode() alias has been deprecated, ' + 'and will be removed in React 17+. Update your code to use ' + 'ReactIs.isConcurrentMode() instead. It has the exact same API.');\n }\n }\n\n return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE;\n}\nfunction isConcurrentMode(object) {\n return typeOf(object) === REACT_CONCURRENT_MODE_TYPE;\n}\nfunction isContextConsumer(object) {\n return typeOf(object) === REACT_CONTEXT_TYPE;\n}\nfunction isContextProvider(object) {\n return typeOf(object) === REACT_PROVIDER_TYPE;\n}\nfunction isElement(object) {\n return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;\n}\nfunction isForwardRef(object) {\n return typeOf(object) === REACT_FORWARD_REF_TYPE;\n}\nfunction isFragment(object) {\n return typeOf(object) === REACT_FRAGMENT_TYPE;\n}\nfunction isLazy(object) {\n return typeOf(object) === REACT_LAZY_TYPE;\n}\nfunction isMemo(object) {\n return typeOf(object) === REACT_MEMO_TYPE;\n}\nfunction isPortal(object) {\n return typeOf(object) === REACT_PORTAL_TYPE;\n}\nfunction isProfiler(object) {\n return typeOf(object) === REACT_PROFILER_TYPE;\n}\nfunction isStrictMode(object) {\n return typeOf(object) === REACT_STRICT_MODE_TYPE;\n}\nfunction isSuspense(object) {\n return typeOf(object) === REACT_SUSPENSE_TYPE;\n}\n\nexports.AsyncMode = AsyncMode;\nexports.ConcurrentMode = ConcurrentMode;\nexports.ContextConsumer = ContextConsumer;\nexports.ContextProvider = ContextProvider;\nexports.Element = Element;\nexports.ForwardRef = ForwardRef;\nexports.Fragment = Fragment;\nexports.Lazy = Lazy;\nexports.Memo = Memo;\nexports.Portal = Portal;\nexports.Profiler = Profiler;\nexports.StrictMode = StrictMode;\nexports.Suspense = Suspense;\nexports.isAsyncMode = isAsyncMode;\nexports.isConcurrentMode = isConcurrentMode;\nexports.isContextConsumer = isContextConsumer;\nexports.isContextProvider = isContextProvider;\nexports.isElement = isElement;\nexports.isForwardRef = isForwardRef;\nexports.isFragment = isFragment;\nexports.isLazy = isLazy;\nexports.isMemo = isMemo;\nexports.isPortal = isPortal;\nexports.isProfiler = isProfiler;\nexports.isStrictMode = isStrictMode;\nexports.isSuspense = isSuspense;\nexports.isValidElementType = isValidElementType;\nexports.typeOf = typeOf;\n })();\n}\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-is.production.min.js');\n} else {\n module.exports = require('./cjs/react-is.development.js');\n}\n","/*\nobject-assign\n(c) Sindre Sorhus\n@license MIT\n*/\n\n'use strict';\n/* eslint-disable no-unused-vars */\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nvar propIsEnumerable = Object.prototype.propertyIsEnumerable;\n\nfunction toObject(val) {\n\tif (val === null || val === undefined) {\n\t\tthrow new TypeError('Object.assign cannot be called with null or undefined');\n\t}\n\n\treturn Object(val);\n}\n\nfunction shouldUseNative() {\n\ttry {\n\t\tif (!Object.assign) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Detect buggy property enumeration order in older V8 versions.\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=4118\n\t\tvar test1 = new String('abc'); // eslint-disable-line no-new-wrappers\n\t\ttest1[5] = 'de';\n\t\tif (Object.getOwnPropertyNames(test1)[0] === '5') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test2 = {};\n\t\tfor (var i = 0; i < 10; i++) {\n\t\t\ttest2['_' + String.fromCharCode(i)] = i;\n\t\t}\n\t\tvar order2 = Object.getOwnPropertyNames(test2).map(function (n) {\n\t\t\treturn test2[n];\n\t\t});\n\t\tif (order2.join('') !== '0123456789') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test3 = {};\n\t\t'abcdefghijklmnopqrst'.split('').forEach(function (letter) {\n\t\t\ttest3[letter] = letter;\n\t\t});\n\t\tif (Object.keys(Object.assign({}, test3)).join('') !==\n\t\t\t\t'abcdefghijklmnopqrst') {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn true;\n\t} catch (err) {\n\t\t// We don't expect any of the above to throw, but better to be safe.\n\t\treturn false;\n\t}\n}\n\nmodule.exports = shouldUseNative() ? Object.assign : function (target, source) {\n\tvar from;\n\tvar to = toObject(target);\n\tvar symbols;\n\n\tfor (var s = 1; s < arguments.length; s++) {\n\t\tfrom = Object(arguments[s]);\n\n\t\tfor (var key in from) {\n\t\t\tif (hasOwnProperty.call(from, key)) {\n\t\t\t\tto[key] = from[key];\n\t\t\t}\n\t\t}\n\n\t\tif (getOwnPropertySymbols) {\n\t\t\tsymbols = getOwnPropertySymbols(from);\n\t\t\tfor (var i = 0; i < symbols.length; i++) {\n\t\t\t\tif (propIsEnumerable.call(from, symbols[i])) {\n\t\t\t\t\tto[symbols[i]] = from[symbols[i]];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn to;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nmodule.exports = ReactPropTypesSecret;\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar printWarning = function() {};\n\nif (process.env.NODE_ENV !== 'production') {\n var ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n var loggedTypeFailures = {};\n var has = Function.call.bind(Object.prototype.hasOwnProperty);\n\n printWarning = function(text) {\n var message = 'Warning: ' + text;\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // --- Welcome to debugging React ---\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch (x) {}\n };\n}\n\n/**\n * Assert that the values match with the type specs.\n * Error messages are memorized and will only be shown once.\n *\n * @param {object} typeSpecs Map of name to a ReactPropType\n * @param {object} values Runtime values that need to be type-checked\n * @param {string} location e.g. \"prop\", \"context\", \"child context\"\n * @param {string} componentName Name of the component for error messages.\n * @param {?Function} getStack Returns the component stack.\n * @private\n */\nfunction checkPropTypes(typeSpecs, values, location, componentName, getStack) {\n if (process.env.NODE_ENV !== 'production') {\n for (var typeSpecName in typeSpecs) {\n if (has(typeSpecs, typeSpecName)) {\n var error;\n // Prop type validation may throw. In case they do, we don't want to\n // fail the render phase where it didn't fail before. So we log it.\n // After these have been cleaned up, we'll let them throw.\n try {\n // This is intentionally an invariant that gets caught. It's the same\n // behavior as without this statement except with a better message.\n if (typeof typeSpecs[typeSpecName] !== 'function') {\n var err = Error(\n (componentName || 'React class') + ': ' + location + ' type `' + typeSpecName + '` is invalid; ' +\n 'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.'\n );\n err.name = 'Invariant Violation';\n throw err;\n }\n error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, ReactPropTypesSecret);\n } catch (ex) {\n error = ex;\n }\n if (error && !(error instanceof Error)) {\n printWarning(\n (componentName || 'React class') + ': type specification of ' +\n location + ' `' + typeSpecName + '` is invalid; the type checker ' +\n 'function must return `null` or an `Error` but returned a ' + typeof error + '. ' +\n 'You may have forgotten to pass an argument to the type checker ' +\n 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' +\n 'shape all require an argument).'\n );\n }\n if (error instanceof Error && !(error.message in loggedTypeFailures)) {\n // Only monitor this failure once because there tends to be a lot of the\n // same error.\n loggedTypeFailures[error.message] = true;\n\n var stack = getStack ? getStack() : '';\n\n printWarning(\n 'Failed ' + location + ' type: ' + error.message + (stack != null ? stack : '')\n );\n }\n }\n }\n }\n}\n\n/**\n * Resets warning cache when testing.\n *\n * @private\n */\ncheckPropTypes.resetWarningCache = function() {\n if (process.env.NODE_ENV !== 'production') {\n loggedTypeFailures = {};\n }\n}\n\nmodule.exports = checkPropTypes;\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactIs = require('react-is');\nvar assign = require('object-assign');\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\nvar checkPropTypes = require('./checkPropTypes');\n\nvar has = Function.call.bind(Object.prototype.hasOwnProperty);\nvar printWarning = function() {};\n\nif (process.env.NODE_ENV !== 'production') {\n printWarning = function(text) {\n var message = 'Warning: ' + text;\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // --- Welcome to debugging React ---\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch (x) {}\n };\n}\n\nfunction emptyFunctionThatReturnsNull() {\n return null;\n}\n\nmodule.exports = function(isValidElement, throwOnDirectAccess) {\n /* global Symbol */\n var ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator;\n var FAUX_ITERATOR_SYMBOL = '@@iterator'; // Before Symbol spec.\n\n /**\n * Returns the iterator method function contained on the iterable object.\n *\n * Be sure to invoke the function with the iterable as context:\n *\n * var iteratorFn = getIteratorFn(myIterable);\n * if (iteratorFn) {\n * var iterator = iteratorFn.call(myIterable);\n * ...\n * }\n *\n * @param {?object} maybeIterable\n * @return {?function}\n */\n function getIteratorFn(maybeIterable) {\n var iteratorFn = maybeIterable && (ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]);\n if (typeof iteratorFn === 'function') {\n return iteratorFn;\n }\n }\n\n /**\n * Collection of methods that allow declaration and validation of props that are\n * supplied to React components. Example usage:\n *\n * var Props = require('ReactPropTypes');\n * var MyArticle = React.createClass({\n * propTypes: {\n * // An optional string prop named \"description\".\n * description: Props.string,\n *\n * // A required enum prop named \"category\".\n * category: Props.oneOf(['News','Photos']).isRequired,\n *\n * // A prop named \"dialog\" that requires an instance of Dialog.\n * dialog: Props.instanceOf(Dialog).isRequired\n * },\n * render: function() { ... }\n * });\n *\n * A more formal specification of how these methods are used:\n *\n * type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...)\n * decl := ReactPropTypes.{type}(.isRequired)?\n *\n * Each and every declaration produces a function with the same signature. This\n * allows the creation of custom validation functions. For example:\n *\n * var MyLink = React.createClass({\n * propTypes: {\n * // An optional string or URI prop named \"href\".\n * href: function(props, propName, componentName) {\n * var propValue = props[propName];\n * if (propValue != null && typeof propValue !== 'string' &&\n * !(propValue instanceof URI)) {\n * return new Error(\n * 'Expected a string or an URI for ' + propName + ' in ' +\n * componentName\n * );\n * }\n * }\n * },\n * render: function() {...}\n * });\n *\n * @internal\n */\n\n var ANONYMOUS = '<<anonymous>>';\n\n // Important!\n // Keep this list in sync with production version in `./factoryWithThrowingShims.js`.\n var ReactPropTypes = {\n array: createPrimitiveTypeChecker('array'),\n bool: createPrimitiveTypeChecker('boolean'),\n func: createPrimitiveTypeChecker('function'),\n number: createPrimitiveTypeChecker('number'),\n object: createPrimitiveTypeChecker('object'),\n string: createPrimitiveTypeChecker('string'),\n symbol: createPrimitiveTypeChecker('symbol'),\n\n any: createAnyTypeChecker(),\n arrayOf: createArrayOfTypeChecker,\n element: createElementTypeChecker(),\n elementType: createElementTypeTypeChecker(),\n instanceOf: createInstanceTypeChecker,\n node: createNodeChecker(),\n objectOf: createObjectOfTypeChecker,\n oneOf: createEnumTypeChecker,\n oneOfType: createUnionTypeChecker,\n shape: createShapeTypeChecker,\n exact: createStrictShapeTypeChecker,\n };\n\n /**\n * inlined Object.is polyfill to avoid requiring consumers ship their own\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is\n */\n /*eslint-disable no-self-compare*/\n function is(x, y) {\n // SameValue algorithm\n if (x === y) {\n // Steps 1-5, 7-10\n // Steps 6.b-6.e: +0 != -0\n return x !== 0 || 1 / x === 1 / y;\n } else {\n // Step 6.a: NaN == NaN\n return x !== x && y !== y;\n }\n }\n /*eslint-enable no-self-compare*/\n\n /**\n * We use an Error-like object for backward compatibility as people may call\n * PropTypes directly and inspect their output. However, we don't use real\n * Errors anymore. We don't inspect their stack anyway, and creating them\n * is prohibitively expensive if they are created too often, such as what\n * happens in oneOfType() for any type before the one that matched.\n */\n function PropTypeError(message) {\n this.message = message;\n this.stack = '';\n }\n // Make `instanceof Error` still work for returned errors.\n PropTypeError.prototype = Error.prototype;\n\n function createChainableTypeChecker(validate) {\n if (process.env.NODE_ENV !== 'production') {\n var manualPropTypeCallCache = {};\n var manualPropTypeWarningCount = 0;\n }\n function checkType(isRequired, props, propName, componentName, location, propFullName, secret) {\n componentName = componentName || ANONYMOUS;\n propFullName = propFullName || propName;\n\n if (secret !== ReactPropTypesSecret) {\n if (throwOnDirectAccess) {\n // New behavior only for users of `prop-types` package\n var err = new Error(\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use `PropTypes.checkPropTypes()` to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n err.name = 'Invariant Violation';\n throw err;\n } else if (process.env.NODE_ENV !== 'production' && typeof console !== 'undefined') {\n // Old behavior for people using React.PropTypes\n var cacheKey = componentName + ':' + propName;\n if (\n !manualPropTypeCallCache[cacheKey] &&\n // Avoid spamming the console because they are often not actionable except for lib authors\n manualPropTypeWarningCount < 3\n ) {\n printWarning(\n 'You are manually calling a React.PropTypes validation ' +\n 'function for the `' + propFullName + '` prop on `' + componentName + '`. This is deprecated ' +\n 'and will throw in the standalone `prop-types` package. ' +\n 'You may be seeing this warning due to a third-party PropTypes ' +\n 'library. See https://fb.me/react-warning-dont-call-proptypes ' + 'for details.'\n );\n manualPropTypeCallCache[cacheKey] = true;\n manualPropTypeWarningCount++;\n }\n }\n }\n if (props[propName] == null) {\n if (isRequired) {\n if (props[propName] === null) {\n return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required ' + ('in `' + componentName + '`, but its value is `null`.'));\n }\n return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required in ' + ('`' + componentName + '`, but its value is `undefined`.'));\n }\n return null;\n } else {\n return validate(props, propName, componentName, location, propFullName);\n }\n }\n\n var chainedCheckType = checkType.bind(null, false);\n chainedCheckType.isRequired = checkType.bind(null, true);\n\n return chainedCheckType;\n }\n\n function createPrimitiveTypeChecker(expectedType) {\n function validate(props, propName, componentName, location, propFullName, secret) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== expectedType) {\n // `propValue` being instance of, say, date/regexp, pass the 'object'\n // check, but we can offer a more precise error message here rather than\n // 'of type `object`'.\n var preciseType = getPreciseType(propValue);\n\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + preciseType + '` supplied to `' + componentName + '`, expected ') + ('`' + expectedType + '`.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createAnyTypeChecker() {\n return createChainableTypeChecker(emptyFunctionThatReturnsNull);\n }\n\n function createArrayOfTypeChecker(typeChecker) {\n function validate(props, propName, componentName, location, propFullName) {\n if (typeof typeChecker !== 'function') {\n return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside arrayOf.');\n }\n var propValue = props[propName];\n if (!Array.isArray(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an array.'));\n }\n for (var i = 0; i < propValue.length; i++) {\n var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']', ReactPropTypesSecret);\n if (error instanceof Error) {\n return error;\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createElementTypeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n if (!isValidElement(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createElementTypeTypeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n if (!ReactIs.isValidElementType(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement type.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createInstanceTypeChecker(expectedClass) {\n function validate(props, propName, componentName, location, propFullName) {\n if (!(props[propName] instanceof expectedClass)) {\n var expectedClassName = expectedClass.name || ANONYMOUS;\n var actualClassName = getClassName(props[propName]);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + actualClassName + '` supplied to `' + componentName + '`, expected ') + ('instance of `' + expectedClassName + '`.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createEnumTypeChecker(expectedValues) {\n if (!Array.isArray(expectedValues)) {\n if (process.env.NODE_ENV !== 'production') {\n if (arguments.length > 1) {\n printWarning(\n 'Invalid arguments supplied to oneOf, expected an array, got ' + arguments.length + ' arguments. ' +\n 'A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z]).'\n );\n } else {\n printWarning('Invalid argument supplied to oneOf, expected an array.');\n }\n }\n return emptyFunctionThatReturnsNull;\n }\n\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n for (var i = 0; i < expectedValues.length; i++) {\n if (is(propValue, expectedValues[i])) {\n return null;\n }\n }\n\n var valuesString = JSON.stringify(expectedValues, function replacer(key, value) {\n var type = getPreciseType(value);\n if (type === 'symbol') {\n return String(value);\n }\n return value;\n });\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of value `' + String(propValue) + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.'));\n }\n return createChainableTypeChecker(validate);\n }\n\n function createObjectOfTypeChecker(typeChecker) {\n function validate(props, propName, componentName, location, propFullName) {\n if (typeof typeChecker !== 'function') {\n return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside objectOf.');\n }\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.'));\n }\n for (var key in propValue) {\n if (has(propValue, key)) {\n var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error instanceof Error) {\n return error;\n }\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createUnionTypeChecker(arrayOfTypeCheckers) {\n if (!Array.isArray(arrayOfTypeCheckers)) {\n process.env.NODE_ENV !== 'production' ? printWarning('Invalid argument supplied to oneOfType, expected an instance of array.') : void 0;\n return emptyFunctionThatReturnsNull;\n }\n\n for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n var checker = arrayOfTypeCheckers[i];\n if (typeof checker !== 'function') {\n printWarning(\n 'Invalid argument supplied to oneOfType. Expected an array of check functions, but ' +\n 'received ' + getPostfixForTypeWarning(checker) + ' at index ' + i + '.'\n );\n return emptyFunctionThatReturnsNull;\n }\n }\n\n function validate(props, propName, componentName, location, propFullName) {\n for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n var checker = arrayOfTypeCheckers[i];\n if (checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret) == null) {\n return null;\n }\n }\n\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`.'));\n }\n return createChainableTypeChecker(validate);\n }\n\n function createNodeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n if (!isNode(props[propName])) {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`, expected a ReactNode.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createShapeTypeChecker(shapeTypes) {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));\n }\n for (var key in shapeTypes) {\n var checker = shapeTypes[key];\n if (!checker) {\n continue;\n }\n var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error) {\n return error;\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createStrictShapeTypeChecker(shapeTypes) {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));\n }\n // We need to check all keys in case some are required but missing from\n // props.\n var allKeys = assign({}, props[propName], shapeTypes);\n for (var key in allKeys) {\n var checker = shapeTypes[key];\n if (!checker) {\n return new PropTypeError(\n 'Invalid ' + location + ' `' + propFullName + '` key `' + key + '` supplied to `' + componentName + '`.' +\n '\\nBad object: ' + JSON.stringify(props[propName], null, ' ') +\n '\\nValid keys: ' + JSON.stringify(Object.keys(shapeTypes), null, ' ')\n );\n }\n var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error) {\n return error;\n }\n }\n return null;\n }\n\n return createChainableTypeChecker(validate);\n }\n\n function isNode(propValue) {\n switch (typeof propValue) {\n case 'number':\n case 'string':\n case 'undefined':\n return true;\n case 'boolean':\n return !propValue;\n case 'object':\n if (Array.isArray(propValue)) {\n return propValue.every(isNode);\n }\n if (propValue === null || isValidElement(propValue)) {\n return true;\n }\n\n var iteratorFn = getIteratorFn(propValue);\n if (iteratorFn) {\n var iterator = iteratorFn.call(propValue);\n var step;\n if (iteratorFn !== propValue.entries) {\n while (!(step = iterator.next()).done) {\n if (!isNode(step.value)) {\n return false;\n }\n }\n } else {\n // Iterator will provide entry [k,v] tuples rather than values.\n while (!(step = iterator.next()).done) {\n var entry = step.value;\n if (entry) {\n if (!isNode(entry[1])) {\n return false;\n }\n }\n }\n }\n } else {\n return false;\n }\n\n return true;\n default:\n return false;\n }\n }\n\n function isSymbol(propType, propValue) {\n // Native Symbol.\n if (propType === 'symbol') {\n return true;\n }\n\n // falsy value can't be a Symbol\n if (!propValue) {\n return false;\n }\n\n // 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol'\n if (propValue['@@toStringTag'] === 'Symbol') {\n return true;\n }\n\n // Fallback for non-spec compliant Symbols which are polyfilled.\n if (typeof Symbol === 'function' && propValue instanceof Symbol) {\n return true;\n }\n\n return false;\n }\n\n // Equivalent of `typeof` but with special handling for array and regexp.\n function getPropType(propValue) {\n var propType = typeof propValue;\n if (Array.isArray(propValue)) {\n return 'array';\n }\n if (propValue instanceof RegExp) {\n // Old webkits (at least until Android 4.0) return 'function' rather than\n // 'object' for typeof a RegExp. We'll normalize this here so that /bla/\n // passes PropTypes.object.\n return 'object';\n }\n if (isSymbol(propType, propValue)) {\n return 'symbol';\n }\n return propType;\n }\n\n // This handles more types than `getPropType`. Only used for error messages.\n // See `createPrimitiveTypeChecker`.\n function getPreciseType(propValue) {\n if (typeof propValue === 'undefined' || propValue === null) {\n return '' + propValue;\n }\n var propType = getPropType(propValue);\n if (propType === 'object') {\n if (propValue instanceof Date) {\n return 'date';\n } else if (propValue instanceof RegExp) {\n return 'regexp';\n }\n }\n return propType;\n }\n\n // Returns a string that is postfixed to a warning about an invalid type.\n // For example, \"undefined\" or \"of type array\"\n function getPostfixForTypeWarning(value) {\n var type = getPreciseType(value);\n switch (type) {\n case 'array':\n case 'object':\n return 'an ' + type;\n case 'boolean':\n case 'date':\n case 'regexp':\n return 'a ' + type;\n default:\n return type;\n }\n }\n\n // Returns class name of the object, if any.\n function getClassName(propValue) {\n if (!propValue.constructor || !propValue.constructor.name) {\n return ANONYMOUS;\n }\n return propValue.constructor.name;\n }\n\n ReactPropTypes.checkPropTypes = checkPropTypes;\n ReactPropTypes.resetWarningCache = checkPropTypes.resetWarningCache;\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n\nfunction emptyFunction() {}\nfunction emptyFunctionWithReset() {}\nemptyFunctionWithReset.resetWarningCache = emptyFunction;\n\nmodule.exports = function() {\n function shim(props, propName, componentName, location, propFullName, secret) {\n if (secret === ReactPropTypesSecret) {\n // It is still safe when called from React.\n return;\n }\n var err = new Error(\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use PropTypes.checkPropTypes() to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n err.name = 'Invariant Violation';\n throw err;\n };\n shim.isRequired = shim;\n function getShim() {\n return shim;\n };\n // Important!\n // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.\n var ReactPropTypes = {\n array: shim,\n bool: shim,\n func: shim,\n number: shim,\n object: shim,\n string: shim,\n symbol: shim,\n\n any: shim,\n arrayOf: getShim,\n element: shim,\n elementType: shim,\n instanceOf: getShim,\n node: shim,\n objectOf: getShim,\n oneOf: getShim,\n oneOfType: getShim,\n shape: getShim,\n exact: getShim,\n\n checkPropTypes: emptyFunctionWithReset,\n resetWarningCache: emptyFunction\n };\n\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nif (process.env.NODE_ENV !== 'production') {\n var ReactIs = require('react-is');\n\n // By explicitly using `prop-types` you are opting into new development behavior.\n // http://fb.me/prop-types-in-prod\n var throwOnDirectAccess = true;\n module.exports = require('./factoryWithTypeCheckers')(ReactIs.isElement, throwOnDirectAccess);\n} else {\n // By explicitly using `prop-types` you are opting into new production behavior.\n // http://fb.me/prop-types-in-prod\n module.exports = require('./factoryWithThrowingShims')();\n}\n","function toVal(mix) {\n\tvar k, y, str='';\n\n\tif (typeof mix === 'string' || typeof mix === 'number') {\n\t\tstr += mix;\n\t} else if (typeof mix === 'object') {\n\t\tif (Array.isArray(mix)) {\n\t\t\tfor (k=0; k < mix.length; k++) {\n\t\t\t\tif (mix[k]) {\n\t\t\t\t\tif (y = toVal(mix[k])) {\n\t\t\t\t\t\tstr && (str += ' ');\n\t\t\t\t\t\tstr += y;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tfor (k in mix) {\n\t\t\t\tif (mix[k]) {\n\t\t\t\t\tstr && (str += ' ');\n\t\t\t\t\tstr += k;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn str;\n}\n\nexport default function () {\n\tvar i=0, tmp, x, str='';\n\twhile (i < arguments.length) {\n\t\tif (tmp = arguments[i++]) {\n\t\t\tif (x = toVal(tmp)) {\n\t\t\t\tstr && (str += ' ');\n\t\t\t\tstr += x\n\t\t\t}\n\t\t}\n\t}\n\treturn str;\n}\n","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n\n return arr2;\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return arrayLikeToArray(arr);\n}","export default function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && Symbol.iterator in Object(iter)) return Array.from(iter);\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","export default function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import arrayWithoutHoles from \"./arrayWithoutHoles.js\";\nimport iterableToArray from \"./iterableToArray.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableSpread from \"./nonIterableSpread.js\";\nexport default function _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();\n}","export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","export default function _iterableToArrayLimit(arr, i) {\n if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n var _e = undefined;\n\n try {\n for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}","export default function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArrayLimit from \"./iterableToArrayLimit.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nexport default function _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport { useControlled } from '@material-ui/core/utils';\nexport default function usePagination() {\n var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n // keep default values in sync with @default tags in Pagination.propTypes\n var _props$boundaryCount = props.boundaryCount,\n boundaryCount = _props$boundaryCount === void 0 ? 1 : _props$boundaryCount,\n _props$componentName = props.componentName,\n componentName = _props$componentName === void 0 ? 'usePagination' : _props$componentName,\n _props$count = props.count,\n count = _props$count === void 0 ? 1 : _props$count,\n _props$defaultPage = props.defaultPage,\n defaultPage = _props$defaultPage === void 0 ? 1 : _props$defaultPage,\n _props$disabled = props.disabled,\n disabled = _props$disabled === void 0 ? false : _props$disabled,\n _props$hideNextButton = props.hideNextButton,\n hideNextButton = _props$hideNextButton === void 0 ? false : _props$hideNextButton,\n _props$hidePrevButton = props.hidePrevButton,\n hidePrevButton = _props$hidePrevButton === void 0 ? false : _props$hidePrevButton,\n handleChange = props.onChange,\n pageProp = props.page,\n _props$showFirstButto = props.showFirstButton,\n showFirstButton = _props$showFirstButto === void 0 ? false : _props$showFirstButto,\n _props$showLastButton = props.showLastButton,\n showLastButton = _props$showLastButton === void 0 ? false : _props$showLastButton,\n _props$siblingCount = props.siblingCount,\n siblingCount = _props$siblingCount === void 0 ? 1 : _props$siblingCount,\n other = _objectWithoutProperties(props, [\"boundaryCount\", \"componentName\", \"count\", \"defaultPage\", \"disabled\", \"hideNextButton\", \"hidePrevButton\", \"onChange\", \"page\", \"showFirstButton\", \"showLastButton\", \"siblingCount\"]);\n\n var _useControlled = useControlled({\n controlled: pageProp,\n default: defaultPage,\n name: componentName,\n state: 'page'\n }),\n _useControlled2 = _slicedToArray(_useControlled, 2),\n page = _useControlled2[0],\n setPageState = _useControlled2[1];\n\n var handleClick = function handleClick(event, value) {\n if (!pageProp) {\n setPageState(value);\n }\n\n if (handleChange) {\n handleChange(event, value);\n }\n }; // https://dev.to/namirsab/comment/2050\n\n\n var range = function range(start, end) {\n var length = end - start + 1;\n return Array.from({\n length: length\n }, function (_, i) {\n return start + i;\n });\n };\n\n var startPages = range(1, Math.min(boundaryCount, count));\n var endPages = range(Math.max(count - boundaryCount + 1, boundaryCount + 1), count);\n var siblingsStart = Math.max(Math.min( // Natural start\n page - siblingCount, // Lower boundary when page is high\n count - boundaryCount - siblingCount * 2 - 1), // Greater than startPages\n boundaryCount + 2);\n var siblingsEnd = Math.min(Math.max( // Natural end\n page + siblingCount, // Upper boundary when page is low\n boundaryCount + siblingCount * 2 + 2), // Less than endPages\n endPages[0] - 2); // Basic list of items to render\n // e.g. itemList = ['first', 'previous', 1, 'ellipsis', 4, 5, 6, 'ellipsis', 10, 'next', 'last']\n\n var itemList = [].concat(_toConsumableArray(showFirstButton ? ['first'] : []), _toConsumableArray(hidePrevButton ? [] : ['previous']), _toConsumableArray(startPages), _toConsumableArray(siblingsStart > boundaryCount + 2 ? ['start-ellipsis'] : boundaryCount + 1 < count - boundaryCount ? [boundaryCount + 1] : []), _toConsumableArray(range(siblingsStart, siblingsEnd)), _toConsumableArray(siblingsEnd < count - boundaryCount - 1 ? ['end-ellipsis'] : count - boundaryCount > boundaryCount ? [count - boundaryCount] : []), _toConsumableArray(endPages), _toConsumableArray(hideNextButton ? [] : ['next']), _toConsumableArray(showLastButton ? ['last'] : [])); // Map the button type to its page number\n\n var buttonPage = function buttonPage(type) {\n switch (type) {\n case 'first':\n return 1;\n\n case 'previous':\n return page - 1;\n\n case 'next':\n return page + 1;\n\n case 'last':\n return count;\n\n default:\n return null;\n }\n }; // Convert the basic item list to PaginationItem props objects\n\n\n var items = itemList.map(function (item) {\n return typeof item === 'number' ? {\n onClick: function onClick(event) {\n handleClick(event, item);\n },\n type: 'page',\n page: item,\n selected: item === page,\n disabled: disabled,\n 'aria-current': item === page ? 'true' : undefined\n } : {\n onClick: function onClick(event) {\n handleClick(event, buttonPage(item));\n },\n type: item,\n page: buttonPage(item),\n selected: false,\n disabled: disabled || item.indexOf('ellipsis') === -1 && (item === 'next' || item === 'last' ? page >= count : page <= 1)\n };\n });\n return _extends({\n items: items\n }, other);\n}","import * as React from 'react';\nimport { createSvgIcon } from '@material-ui/core/utils';\n/**\n * @ignore - internal component.\n */\n\nexport default createSvgIcon( /*#__PURE__*/React.createElement(\"path\", {\n d: \"M18.41 16.59L13.82 12l4.59-4.59L17 6l-6 6 6 6zM6 6h2v12H6z\"\n}), 'FirstPage');","import * as React from 'react';\nimport { createSvgIcon } from '@material-ui/core/utils';\n/**\n * @ignore - internal component.\n */\n\nexport default createSvgIcon( /*#__PURE__*/React.createElement(\"path\", {\n d: \"M5.59 7.41L10.18 12l-4.59 4.59L7 18l6-6-6-6zM16 6h2v12h-2z\"\n}), 'LastPage');","import * as React from 'react';\nimport { createSvgIcon } from '@material-ui/core/utils';\n/**\n * @ignore - internal component.\n */\n\nexport default createSvgIcon( /*#__PURE__*/React.createElement(\"path\", {\n d: \"M15.41 7.41L14 6l-6 6 6 6 1.41-1.41L10.83 12z\"\n}), 'NavigateBefore');","import * as React from 'react';\nimport { createSvgIcon } from '@material-ui/core/utils';\n/**\n * @ignore - internal component.\n */\n\nexport default createSvgIcon( /*#__PURE__*/React.createElement(\"path\", {\n d: \"M10 6L8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z\"\n}), 'NavigateNext');","import _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { fade, useTheme, withStyles } from '@material-ui/core/styles';\nimport ButtonBase from '@material-ui/core/ButtonBase';\nimport FirstPageIcon from '../internal/svg-icons/FirstPage';\nimport LastPageIcon from '../internal/svg-icons/LastPage';\nimport NavigateBeforeIcon from '../internal/svg-icons/NavigateBefore';\nimport NavigateNextIcon from '../internal/svg-icons/NavigateNext';\nimport { capitalize } from '@material-ui/core/utils';\nexport var styles = function styles(theme) {\n return {\n /* Styles applied to the root element. */\n root: _extends({}, theme.typography.body2, {\n borderRadius: 32 / 2,\n textAlign: 'center',\n boxSizing: 'border-box',\n minWidth: 32,\n height: 32,\n padding: '0 6px',\n margin: '0 3px',\n color: theme.palette.text.primary\n }),\n\n /* Styles applied to the root element if `type=\"page\"`. */\n page: {\n transition: theme.transitions.create(['color', 'background-color'], {\n duration: theme.transitions.duration.short\n }),\n '&:hover': {\n backgroundColor: theme.palette.action.hover,\n // Reset on touch devices, it doesn't add specificity\n '@media (hover: none)': {\n backgroundColor: 'transparent'\n }\n },\n '&$focusVisible': {\n backgroundColor: theme.palette.action.focus\n },\n '&$selected': {\n backgroundColor: theme.palette.action.selected,\n '&:hover, &$focusVisible': {\n backgroundColor: fade(theme.palette.action.selected, theme.palette.action.selectedOpacity + theme.palette.action.hoverOpacity),\n // Reset on touch devices, it doesn't add specificity\n '@media (hover: none)': {\n backgroundColor: theme.palette.action.selected\n }\n },\n '&$disabled': {\n opacity: 1,\n color: theme.palette.action.disabled,\n backgroundColor: theme.palette.action.selected\n }\n },\n '&$disabled': {\n opacity: theme.palette.action.disabledOpacity\n }\n },\n\n /* Styles applied applied to the root element if `size=\"small\"`. */\n sizeSmall: {\n minWidth: 26,\n height: 26,\n borderRadius: 26 / 2,\n margin: '0 1px',\n padding: '0 4px',\n '& $icon': {\n fontSize: theme.typography.pxToRem(18)\n }\n },\n\n /* Styles applied applied to the root element if `size=\"large\"`. */\n sizeLarge: {\n minWidth: 40,\n height: 40,\n borderRadius: 40 / 2,\n padding: '0 10px',\n fontSize: theme.typography.pxToRem(15),\n '& $icon': {\n fontSize: theme.typography.pxToRem(22)\n }\n },\n\n /* Styles applied to the root element if `variant=\"text\"` and `color=\"primary\"`. */\n textPrimary: {\n '&$selected': {\n color: theme.palette.primary.contrastText,\n backgroundColor: theme.palette.primary.main,\n '&:hover, &$focusVisible': {\n backgroundColor: theme.palette.primary.dark,\n // Reset on touch devices, it doesn't add specificity\n '@media (hover: none)': {\n backgroundColor: theme.palette.primary.main\n }\n },\n '&$disabled': {\n color: theme.palette.action.disabled\n }\n }\n },\n\n /* Styles applied to the root element if `variant=\"text\"` and `color=\"secondary\"`. */\n textSecondary: {\n '&$selected': {\n color: theme.palette.secondary.contrastText,\n backgroundColor: theme.palette.secondary.main,\n '&:hover, &$focusVisible': {\n backgroundColor: theme.palette.secondary.dark,\n // Reset on touch devices, it doesn't add specificity\n '@media (hover: none)': {\n backgroundColor: theme.palette.secondary.main\n }\n },\n '&$disabled': {\n color: theme.palette.action.disabled\n }\n }\n },\n\n /* Styles applied to the root element if `outlined=\"true\"`. */\n outlined: {\n border: \"1px solid \".concat(theme.palette.type === 'light' ? 'rgba(0, 0, 0, 0.23)' : 'rgba(255, 255, 255, 0.23)'),\n '&$selected': {\n '&$disabled': {\n border: \"1px solid \".concat(theme.palette.action.disabledBackground)\n }\n }\n },\n\n /* Styles applied to the root element if `variant=\"outlined\"` and `color=\"primary\"`. */\n outlinedPrimary: {\n '&$selected': {\n color: theme.palette.primary.main,\n border: \"1px solid \".concat(fade(theme.palette.primary.main, 0.5)),\n backgroundColor: fade(theme.palette.primary.main, theme.palette.action.activatedOpacity),\n '&:hover, &$focusVisible': {\n backgroundColor: fade(theme.palette.primary.main, theme.palette.action.activatedOpacity + theme.palette.action.hoverOpacity),\n // Reset on touch devices, it doesn't add specificity\n '@media (hover: none)': {\n backgroundColor: 'transparent'\n }\n },\n '&$disabled': {\n color: theme.palette.action.disabled\n }\n }\n },\n\n /* Styles applied to the root element if `variant=\"outlined\"` and `color=\"secondary\"`. */\n outlinedSecondary: {\n '&$selected': {\n color: theme.palette.secondary.main,\n border: \"1px solid \".concat(fade(theme.palette.secondary.main, 0.5)),\n backgroundColor: fade(theme.palette.secondary.main, theme.palette.action.activatedOpacity),\n '&:hover, &$focusVisible': {\n backgroundColor: fade(theme.palette.secondary.main, theme.palette.action.activatedOpacity + theme.palette.action.hoverOpacity),\n // Reset on touch devices, it doesn't add specificity\n '@media (hover: none)': {\n backgroundColor: 'transparent'\n }\n },\n '&$disabled': {\n color: theme.palette.action.disabled\n }\n }\n },\n\n /* Styles applied to the root element if `rounded=\"true\"`. */\n rounded: {\n borderRadius: theme.shape.borderRadius\n },\n\n /* Styles applied to the root element if `type=\"start-ellipsis\"` or `type=\"end-ellipsis\"`. */\n ellipsis: {\n height: 'auto',\n '&$disabled': {\n opacity: theme.palette.action.disabledOpacity\n }\n },\n\n /* Pseudo-class applied to the root element if keyboard focused. */\n focusVisible: {},\n\n /* Pseudo-class applied to the root element if `disabled={true}`. */\n disabled: {},\n\n /* Pseudo-class applied to the root element if `selected={true}`. */\n selected: {},\n\n /* Styles applied to the icon element. */\n icon: {\n fontSize: theme.typography.pxToRem(20),\n margin: '0 -8px'\n }\n };\n};\nvar PaginationItem = /*#__PURE__*/React.forwardRef(function PaginationItem(props, ref) {\n var classes = props.classes,\n className = props.className,\n _props$color = props.color,\n color = _props$color === void 0 ? 'standard' : _props$color,\n component = props.component,\n _props$disabled = props.disabled,\n disabled = _props$disabled === void 0 ? false : _props$disabled,\n page = props.page,\n _props$selected = props.selected,\n selected = _props$selected === void 0 ? false : _props$selected,\n _props$shape = props.shape,\n shape = _props$shape === void 0 ? 'round' : _props$shape,\n _props$size = props.size,\n size = _props$size === void 0 ? 'medium' : _props$size,\n _props$type = props.type,\n type = _props$type === void 0 ? 'page' : _props$type,\n _props$variant = props.variant,\n variant = _props$variant === void 0 ? 'text' : _props$variant,\n other = _objectWithoutProperties(props, [\"classes\", \"className\", \"color\", \"component\", \"disabled\", \"page\", \"selected\", \"shape\", \"size\", \"type\", \"variant\"]);\n\n var theme = useTheme();\n var normalizedIcons = theme.direction === 'rtl' ? {\n previous: NavigateNextIcon,\n next: NavigateBeforeIcon,\n last: FirstPageIcon,\n first: LastPageIcon\n } : {\n previous: NavigateBeforeIcon,\n next: NavigateNextIcon,\n first: FirstPageIcon,\n last: LastPageIcon\n };\n var Icon = normalizedIcons[type];\n return type === 'start-ellipsis' || type === 'end-ellipsis' ? /*#__PURE__*/React.createElement(\"div\", {\n ref: ref,\n className: clsx(classes.root, classes.ellipsis, disabled && classes.disabled, size !== 'medium' && classes[\"size\".concat(capitalize(size))])\n }, \"\\u2026\") : /*#__PURE__*/React.createElement(ButtonBase, _extends({\n ref: ref,\n component: component,\n disabled: disabled,\n focusVisibleClassName: classes.focusVisible,\n className: clsx(classes.root, classes.page, classes[variant], classes[shape], className, color !== 'standard' && classes[\"\".concat(variant).concat(capitalize(color))], disabled && classes.disabled, selected && classes.selected, size !== 'medium' && classes[\"size\".concat(capitalize(size))])\n }, other), type === 'page' && page, Icon ? /*#__PURE__*/React.createElement(Icon, {\n className: classes.icon\n }) : null);\n});\nprocess.env.NODE_ENV !== \"production\" ? PaginationItem.propTypes = {\n /**\n * @ignore\n */\n classes: PropTypes.object.isRequired,\n\n /**\n * @ignore\n */\n className: PropTypes.string,\n\n /**\n * The active color.\n */\n color: PropTypes.oneOf(['standard', 'primary', 'secondary']),\n\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes\n /* @typescript-to-proptypes-ignore */\n .elementType,\n\n /**\n * If `true`, the item will be disabled.\n */\n disabled: PropTypes.bool,\n\n /**\n * The current page number.\n */\n page: PropTypes.number,\n\n /**\n * If `true` the pagination item is selected.\n */\n selected: PropTypes.bool,\n\n /**\n * The shape of the pagination item.\n */\n shape: PropTypes.oneOf(['round', 'rounded']),\n\n /**\n * The size of the pagination item.\n */\n size: PropTypes.oneOf(['small', 'medium', 'large']),\n\n /**\n * The type of pagination item.\n */\n type: PropTypes.oneOf(['page', 'first', 'last', 'next', 'previous', 'start-ellipsis', 'end-ellipsis']),\n\n /**\n * The pagination item variant.\n */\n variant: PropTypes.oneOf(['text', 'outlined'])\n} : void 0;\nexport default withStyles(styles, {\n name: 'MuiPaginationItem'\n})(PaginationItem);","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { withStyles } from '@material-ui/core/styles';\nimport usePagination from './usePagination';\nimport PaginationItem from '../PaginationItem';\nexport var styles = {\n /* Styles applied to the root element. */\n root: {},\n\n /* Styles applied to the ul element. */\n ul: {\n display: 'flex',\n flexWrap: 'wrap',\n alignItems: 'center',\n padding: 0,\n margin: 0,\n listStyle: 'none'\n }\n};\n\nfunction defaultGetAriaLabel(type, page, selected) {\n if (type === 'page') {\n return \"\".concat(selected ? '' : 'Go to ', \"page \").concat(page);\n }\n\n return \"Go to \".concat(type, \" page\");\n}\n\nvar Pagination = /*#__PURE__*/React.forwardRef(function Pagination(props, ref) {\n var boundaryCount = props.boundaryCount,\n classes = props.classes,\n className = props.className,\n _props$color = props.color,\n color = _props$color === void 0 ? 'standard' : _props$color,\n count = props.count,\n defaultPage = props.defaultPage,\n disabled = props.disabled,\n _props$getItemAriaLab = props.getItemAriaLabel,\n getItemAriaLabel = _props$getItemAriaLab === void 0 ? defaultGetAriaLabel : _props$getItemAriaLab,\n hideNextButton = props.hideNextButton,\n hidePrevButton = props.hidePrevButton,\n onChange = props.onChange,\n page = props.page,\n _props$renderItem = props.renderItem,\n renderItem = _props$renderItem === void 0 ? function (item) {\n return /*#__PURE__*/React.createElement(PaginationItem, item);\n } : _props$renderItem,\n _props$shape = props.shape,\n shape = _props$shape === void 0 ? 'round' : _props$shape,\n showFirstButton = props.showFirstButton,\n showLastButton = props.showLastButton,\n siblingCount = props.siblingCount,\n _props$size = props.size,\n size = _props$size === void 0 ? 'medium' : _props$size,\n _props$variant = props.variant,\n variant = _props$variant === void 0 ? 'text' : _props$variant,\n other = _objectWithoutProperties(props, [\"boundaryCount\", \"classes\", \"className\", \"color\", \"count\", \"defaultPage\", \"disabled\", \"getItemAriaLabel\", \"hideNextButton\", \"hidePrevButton\", \"onChange\", \"page\", \"renderItem\", \"shape\", \"showFirstButton\", \"showLastButton\", \"siblingCount\", \"size\", \"variant\"]);\n\n var _usePagination = usePagination(_extends({}, props, {\n componentName: 'Pagination'\n })),\n items = _usePagination.items;\n\n return /*#__PURE__*/React.createElement(\"nav\", _extends({\n \"aria-label\": \"pagination navigation\",\n className: clsx(classes.root, className),\n ref: ref\n }, other), /*#__PURE__*/React.createElement(\"ul\", {\n className: classes.ul\n }, items.map(function (item, index) {\n return /*#__PURE__*/React.createElement(\"li\", {\n key: index\n }, renderItem(_extends({}, item, {\n color: color,\n 'aria-label': getItemAriaLabel(item.type, item.page, item.selected),\n shape: shape,\n size: size,\n variant: variant\n })));\n })));\n}); // @default tags synced with default values from usePagination\n\nprocess.env.NODE_ENV !== \"production\" ? Pagination.propTypes = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n\n /**\n * Number of always visible pages at the beginning and end.\n * @default 1\n */\n boundaryCount: PropTypes.number,\n\n /**\n * Override or extend the styles applied to the component.\n * See [CSS API](#css) below for more details.\n */\n classes: PropTypes.object,\n\n /**\n * @ignore\n */\n className: PropTypes.string,\n\n /**\n * The active color.\n */\n color: PropTypes.oneOf(['primary', 'secondary', 'standard']),\n\n /**\n * The total number of pages.\n * @default 1\n */\n count: PropTypes.number,\n\n /**\n * The page selected by default when the component is uncontrolled.\n * @default 1\n */\n defaultPage: PropTypes.number,\n\n /**\n * If `true`, the pagination component will be disabled.\n * @default false\n */\n disabled: PropTypes.bool,\n\n /**\n * Accepts a function which returns a string value that provides a user-friendly name for the current page.\n *\n * For localization purposes, you can use the provided [translations](/guides/localization/).\n *\n * @param {string} type The link or button type to format ('page' | 'first' | 'last' | 'next' | 'previous'). Defaults to 'page'.\n * @param {number} page The page number to format.\n * @param {bool} selected If true, the current page is selected.\n * @returns {string}\n */\n getItemAriaLabel: PropTypes.func,\n\n /**\n * If `true`, hide the next-page button.\n * @default false\n */\n hideNextButton: PropTypes.bool,\n\n /**\n * If `true`, hide the previous-page button.\n * @default false\n */\n hidePrevButton: PropTypes.bool,\n\n /**\n * Callback fired when the page is changed.\n *\n * @param {object} event The event source of the callback.\n * @param {number} page The page selected.\n */\n onChange: PropTypes.func,\n\n /**\n * The current page.\n */\n page: PropTypes.number,\n\n /**\n * Render the item.\n *\n * @param {PaginationRenderItemParams} params The props to spread on a PaginationItem.\n * @returns {ReactNode}\n */\n renderItem: PropTypes.func,\n\n /**\n * The shape of the pagination items.\n */\n shape: PropTypes.oneOf(['round', 'rounded']),\n\n /**\n * If `true`, show the first-page button.\n * @default false\n */\n showFirstButton: PropTypes.bool,\n\n /**\n * If `true`, show the last-page button.\n * @default false\n */\n showLastButton: PropTypes.bool,\n\n /**\n * Number of always visible pages before and after the current page.\n * @default 1\n */\n siblingCount: PropTypes.number,\n\n /**\n * The size of the pagination component.\n */\n size: PropTypes.oneOf(['large', 'medium', 'small']),\n\n /**\n * The variant to use.\n */\n variant: PropTypes.oneOf(['outlined', 'text'])\n} : void 0;\nexport default withStyles(styles, {\n name: 'MuiPagination'\n})(Pagination);","import * as React from 'react';\nimport { createSvgIcon } from '@material-ui/core/utils';\n/**\n * @ignore - internal component.\n */\n\nexport default createSvgIcon( /*#__PURE__*/React.createElement(\"path\", {\n d: \"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z\"\n}), 'Close');","export default function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}","import * as React from 'react';\nimport { createSvgIcon } from '@material-ui/core/utils';\n/**\n * @ignore - internal component.\n */\n\nexport default createSvgIcon( /*#__PURE__*/React.createElement(\"path\", {\n d: \"M7 10l5 5 5-5z\"\n}), 'ArrowDropDown');","export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\n\n/* eslint-disable no-constant-condition */\nimport * as React from 'react';\nimport { setRef, useEventCallback, useControlled, unstable_useId as useId } from '@material-ui/core/utils'; // https://stackoverflow.com/questions/990904/remove-accents-diacritics-in-a-string-in-javascript\n// Give up on IE 11 support for this feature\n\nfunction stripDiacritics(string) {\n return typeof string.normalize !== 'undefined' ? string.normalize('NFD').replace(/[\\u0300-\\u036f]/g, '') : string;\n}\n\nexport function createFilterOptions() {\n var config = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var _config$ignoreAccents = config.ignoreAccents,\n ignoreAccents = _config$ignoreAccents === void 0 ? true : _config$ignoreAccents,\n _config$ignoreCase = config.ignoreCase,\n ignoreCase = _config$ignoreCase === void 0 ? true : _config$ignoreCase,\n limit = config.limit,\n _config$matchFrom = config.matchFrom,\n matchFrom = _config$matchFrom === void 0 ? 'any' : _config$matchFrom,\n stringify = config.stringify,\n _config$trim = config.trim,\n trim = _config$trim === void 0 ? false : _config$trim;\n return function (options, _ref) {\n var inputValue = _ref.inputValue,\n getOptionLabel = _ref.getOptionLabel;\n var input = trim ? inputValue.trim() : inputValue;\n\n if (ignoreCase) {\n input = input.toLowerCase();\n }\n\n if (ignoreAccents) {\n input = stripDiacritics(input);\n }\n\n var filteredOptions = options.filter(function (option) {\n var candidate = (stringify || getOptionLabel)(option);\n\n if (ignoreCase) {\n candidate = candidate.toLowerCase();\n }\n\n if (ignoreAccents) {\n candidate = stripDiacritics(candidate);\n }\n\n return matchFrom === 'start' ? candidate.indexOf(input) === 0 : candidate.indexOf(input) > -1;\n });\n return typeof limit === 'number' ? filteredOptions.slice(0, limit) : filteredOptions;\n };\n} // To replace with .findIndex() once we stop IE 11 support.\n\nfunction findIndex(array, comp) {\n for (var i = 0; i < array.length; i += 1) {\n if (comp(array[i])) {\n return i;\n }\n }\n\n return -1;\n}\n\nvar defaultFilterOptions = createFilterOptions(); // Number of options to jump in list box when pageup and pagedown keys are used.\n\nvar pageSize = 5;\nexport default function useAutocomplete(props) {\n var _props$autoComplete = props.autoComplete,\n autoComplete = _props$autoComplete === void 0 ? false : _props$autoComplete,\n _props$autoHighlight = props.autoHighlight,\n autoHighlight = _props$autoHighlight === void 0 ? false : _props$autoHighlight,\n _props$autoSelect = props.autoSelect,\n autoSelect = _props$autoSelect === void 0 ? false : _props$autoSelect,\n _props$blurOnSelect = props.blurOnSelect,\n blurOnSelect = _props$blurOnSelect === void 0 ? false : _props$blurOnSelect,\n _props$clearOnBlur = props.clearOnBlur,\n clearOnBlur = _props$clearOnBlur === void 0 ? !props.freeSolo : _props$clearOnBlur,\n _props$clearOnEscape = props.clearOnEscape,\n clearOnEscape = _props$clearOnEscape === void 0 ? false : _props$clearOnEscape,\n _props$componentName = props.componentName,\n componentName = _props$componentName === void 0 ? 'useAutocomplete' : _props$componentName,\n _props$debug = props.debug,\n debug = _props$debug === void 0 ? false : _props$debug,\n _props$defaultValue = props.defaultValue,\n defaultValue = _props$defaultValue === void 0 ? props.multiple ? [] : null : _props$defaultValue,\n _props$disableClearab = props.disableClearable,\n disableClearable = _props$disableClearab === void 0 ? false : _props$disableClearab,\n _props$disableCloseOn = props.disableCloseOnSelect,\n disableCloseOnSelect = _props$disableCloseOn === void 0 ? false : _props$disableCloseOn,\n _props$disabledItemsF = props.disabledItemsFocusable,\n disabledItemsFocusable = _props$disabledItemsF === void 0 ? false : _props$disabledItemsF,\n _props$disableListWra = props.disableListWrap,\n disableListWrap = _props$disableListWra === void 0 ? false : _props$disableListWra,\n _props$filterOptions = props.filterOptions,\n filterOptions = _props$filterOptions === void 0 ? defaultFilterOptions : _props$filterOptions,\n _props$filterSelected = props.filterSelectedOptions,\n filterSelectedOptions = _props$filterSelected === void 0 ? false : _props$filterSelected,\n _props$freeSolo = props.freeSolo,\n freeSolo = _props$freeSolo === void 0 ? false : _props$freeSolo,\n getOptionDisabled = props.getOptionDisabled,\n _props$getOptionLabel = props.getOptionLabel,\n getOptionLabelProp = _props$getOptionLabel === void 0 ? function (option) {\n return option;\n } : _props$getOptionLabel,\n _props$getOptionSelec = props.getOptionSelected,\n getOptionSelected = _props$getOptionSelec === void 0 ? function (option, value) {\n return option === value;\n } : _props$getOptionSelec,\n groupBy = props.groupBy,\n _props$handleHomeEndK = props.handleHomeEndKeys,\n handleHomeEndKeys = _props$handleHomeEndK === void 0 ? !props.freeSolo : _props$handleHomeEndK,\n idProp = props.id,\n _props$includeInputIn = props.includeInputInList,\n includeInputInList = _props$includeInputIn === void 0 ? false : _props$includeInputIn,\n inputValueProp = props.inputValue,\n _props$multiple = props.multiple,\n multiple = _props$multiple === void 0 ? false : _props$multiple,\n onChange = props.onChange,\n onClose = props.onClose,\n onHighlightChange = props.onHighlightChange,\n onInputChange = props.onInputChange,\n onOpen = props.onOpen,\n openProp = props.open,\n _props$openOnFocus = props.openOnFocus,\n openOnFocus = _props$openOnFocus === void 0 ? false : _props$openOnFocus,\n options = props.options,\n _props$selectOnFocus = props.selectOnFocus,\n selectOnFocus = _props$selectOnFocus === void 0 ? !props.freeSolo : _props$selectOnFocus,\n valueProp = props.value;\n var id = useId(idProp);\n var getOptionLabel = getOptionLabelProp;\n\n if (process.env.NODE_ENV !== 'production') {\n getOptionLabel = function getOptionLabel(option) {\n var optionLabel = getOptionLabelProp(option);\n\n if (typeof optionLabel !== 'string') {\n var erroneousReturn = optionLabel === undefined ? 'undefined' : \"\".concat(_typeof(optionLabel), \" (\").concat(optionLabel, \")\");\n console.error(\"Material-UI: The `getOptionLabel` method of \".concat(componentName, \" returned \").concat(erroneousReturn, \" instead of a string for \").concat(JSON.stringify(option), \".\"));\n }\n\n return optionLabel;\n };\n }\n\n var ignoreFocus = React.useRef(false);\n var firstFocus = React.useRef(true);\n var inputRef = React.useRef(null);\n var listboxRef = React.useRef(null);\n\n var _React$useState = React.useState(null),\n anchorEl = _React$useState[0],\n setAnchorEl = _React$useState[1];\n\n var _React$useState2 = React.useState(-1),\n focusedTag = _React$useState2[0],\n setFocusedTag = _React$useState2[1];\n\n var defaultHighlighted = autoHighlight ? 0 : -1;\n var highlightedIndexRef = React.useRef(defaultHighlighted);\n\n var _useControlled = useControlled({\n controlled: valueProp,\n default: defaultValue,\n name: componentName\n }),\n _useControlled2 = _slicedToArray(_useControlled, 2),\n value = _useControlled2[0],\n setValue = _useControlled2[1];\n\n var _useControlled3 = useControlled({\n controlled: inputValueProp,\n default: '',\n name: componentName,\n state: 'inputValue'\n }),\n _useControlled4 = _slicedToArray(_useControlled3, 2),\n inputValue = _useControlled4[0],\n setInputValue = _useControlled4[1];\n\n var _React$useState3 = React.useState(false),\n focused = _React$useState3[0],\n setFocused = _React$useState3[1];\n\n var resetInputValue = useEventCallback(function (event, newValue) {\n var newInputValue;\n\n if (multiple) {\n newInputValue = '';\n } else if (newValue == null) {\n newInputValue = '';\n } else {\n var optionLabel = getOptionLabel(newValue);\n newInputValue = typeof optionLabel === 'string' ? optionLabel : '';\n }\n\n if (inputValue === newInputValue) {\n return;\n }\n\n setInputValue(newInputValue);\n\n if (onInputChange) {\n onInputChange(event, newInputValue, 'reset');\n }\n });\n React.useEffect(function () {\n resetInputValue(null, value);\n }, [value, resetInputValue]);\n\n var _useControlled5 = useControlled({\n controlled: openProp,\n default: false,\n name: componentName,\n state: 'open'\n }),\n _useControlled6 = _slicedToArray(_useControlled5, 2),\n open = _useControlled6[0],\n setOpenState = _useControlled6[1];\n\n var inputValueIsSelectedValue = !multiple && value != null && inputValue === getOptionLabel(value);\n var popupOpen = open;\n var filteredOptions = popupOpen ? filterOptions(options.filter(function (option) {\n if (filterSelectedOptions && (multiple ? value : [value]).some(function (value2) {\n return value2 !== null && getOptionSelected(option, value2);\n })) {\n return false;\n }\n\n return true;\n }), // we use the empty string to manipulate `filterOptions` to not filter any options\n // i.e. the filter predicate always returns true\n {\n inputValue: inputValueIsSelectedValue ? '' : inputValue,\n getOptionLabel: getOptionLabel\n }) : [];\n\n if (process.env.NODE_ENV !== 'production') {\n if (value !== null && !freeSolo && options.length > 0) {\n var missingValue = (multiple ? value : [value]).filter(function (value2) {\n return !options.some(function (option) {\n return getOptionSelected(option, value2);\n });\n });\n\n if (missingValue.length > 0) {\n console.warn([\"Material-UI: The value provided to \".concat(componentName, \" is invalid.\"), \"None of the options match with `\".concat(missingValue.length > 1 ? JSON.stringify(missingValue) : JSON.stringify(missingValue[0]), \"`.\"), 'You can use the `getOptionSelected` prop to customize the equality test.'].join('\\n'));\n }\n }\n }\n\n var focusTag = useEventCallback(function (tagToFocus) {\n if (tagToFocus === -1) {\n inputRef.current.focus();\n } else {\n anchorEl.querySelector(\"[data-tag-index=\\\"\".concat(tagToFocus, \"\\\"]\")).focus();\n }\n }); // Ensure the focusedTag is never inconsistent\n\n React.useEffect(function () {\n if (multiple && focusedTag > value.length - 1) {\n setFocusedTag(-1);\n focusTag(-1);\n }\n }, [value, multiple, focusedTag, focusTag]);\n\n function validOptionIndex(index, direction) {\n if (!listboxRef.current || index === -1) {\n return -1;\n }\n\n var nextFocus = index;\n\n while (true) {\n // Out of range\n if (direction === 'next' && nextFocus === filteredOptions.length || direction === 'previous' && nextFocus === -1) {\n return -1;\n }\n\n var option = listboxRef.current.querySelector(\"[data-option-index=\\\"\".concat(nextFocus, \"\\\"]\")); // Same logic as MenuList.js\n\n var nextFocusDisabled = disabledItemsFocusable ? false : option && (option.disabled || option.getAttribute('aria-disabled') === 'true');\n\n if (option && !option.hasAttribute('tabindex') || nextFocusDisabled) {\n // Move to the next element.\n nextFocus += direction === 'next' ? 1 : -1;\n } else {\n return nextFocus;\n }\n }\n }\n\n var setHighlightedIndex = useEventCallback(function (_ref2) {\n var event = _ref2.event,\n index = _ref2.index,\n _ref2$reason = _ref2.reason,\n reason = _ref2$reason === void 0 ? 'auto' : _ref2$reason;\n highlightedIndexRef.current = index; // does the index exist?\n\n if (index === -1) {\n inputRef.current.removeAttribute('aria-activedescendant');\n } else {\n inputRef.current.setAttribute('aria-activedescendant', \"\".concat(id, \"-option-\").concat(index));\n }\n\n if (onHighlightChange) {\n onHighlightChange(event, index === -1 ? null : filteredOptions[index], reason);\n }\n\n if (!listboxRef.current) {\n return;\n }\n\n var prev = listboxRef.current.querySelector('[data-focus]');\n\n if (prev) {\n prev.removeAttribute('data-focus');\n }\n\n var listboxNode = listboxRef.current.parentElement.querySelector('[role=\"listbox\"]'); // \"No results\"\n\n if (!listboxNode) {\n return;\n }\n\n if (index === -1) {\n listboxNode.scrollTop = 0;\n return;\n }\n\n var option = listboxRef.current.querySelector(\"[data-option-index=\\\"\".concat(index, \"\\\"]\"));\n\n if (!option) {\n return;\n }\n\n option.setAttribute('data-focus', 'true'); // Scroll active descendant into view.\n // Logic copied from https://www.w3.org/TR/wai-aria-practices/examples/listbox/js/listbox.js\n //\n // Consider this API instead once it has a better browser support:\n // .scrollIntoView({ scrollMode: 'if-needed', block: 'nearest' });\n\n if (listboxNode.scrollHeight > listboxNode.clientHeight && reason !== 'mouse') {\n var element = option;\n var scrollBottom = listboxNode.clientHeight + listboxNode.scrollTop;\n var elementBottom = element.offsetTop + element.offsetHeight;\n\n if (elementBottom > scrollBottom) {\n listboxNode.scrollTop = elementBottom - listboxNode.clientHeight;\n } else if (element.offsetTop - element.offsetHeight * (groupBy ? 1.3 : 0) < listboxNode.scrollTop) {\n listboxNode.scrollTop = element.offsetTop - element.offsetHeight * (groupBy ? 1.3 : 0);\n }\n }\n });\n var changeHighlightedIndex = useEventCallback(function (_ref3) {\n var event = _ref3.event,\n diff = _ref3.diff,\n _ref3$direction = _ref3.direction,\n direction = _ref3$direction === void 0 ? 'next' : _ref3$direction,\n _ref3$reason = _ref3.reason,\n reason = _ref3$reason === void 0 ? 'auto' : _ref3$reason;\n\n if (!popupOpen) {\n return;\n }\n\n var getNextIndex = function getNextIndex() {\n var maxIndex = filteredOptions.length - 1;\n\n if (diff === 'reset') {\n return defaultHighlighted;\n }\n\n if (diff === 'start') {\n return 0;\n }\n\n if (diff === 'end') {\n return maxIndex;\n }\n\n var newIndex = highlightedIndexRef.current + diff;\n\n if (newIndex < 0) {\n if (newIndex === -1 && includeInputInList) {\n return -1;\n }\n\n if (disableListWrap && highlightedIndexRef.current !== -1 || Math.abs(diff) > 1) {\n return 0;\n }\n\n return maxIndex;\n }\n\n if (newIndex > maxIndex) {\n if (newIndex === maxIndex + 1 && includeInputInList) {\n return -1;\n }\n\n if (disableListWrap || Math.abs(diff) > 1) {\n return maxIndex;\n }\n\n return 0;\n }\n\n return newIndex;\n };\n\n var nextIndex = validOptionIndex(getNextIndex(), direction);\n setHighlightedIndex({\n index: nextIndex,\n reason: reason,\n event: event\n }); // Sync the content of the input with the highlighted option.\n\n if (autoComplete && diff !== 'reset') {\n if (nextIndex === -1) {\n inputRef.current.value = inputValue;\n } else {\n var option = getOptionLabel(filteredOptions[nextIndex]);\n inputRef.current.value = option; // The portion of the selected suggestion that has not been typed by the user,\n // a completion string, appears inline after the input cursor in the textbox.\n\n var index = option.toLowerCase().indexOf(inputValue.toLowerCase());\n\n if (index === 0 && inputValue.length > 0) {\n inputRef.current.setSelectionRange(inputValue.length, option.length);\n }\n }\n }\n });\n var syncHighlightedIndex = React.useCallback(function () {\n if (!popupOpen) {\n return;\n }\n\n var valueItem = multiple ? value[0] : value; // The popup is empty, reset\n\n if (filteredOptions.length === 0 || valueItem == null) {\n changeHighlightedIndex({\n diff: 'reset'\n });\n return;\n }\n\n if (!listboxRef.current) {\n return;\n } // Synchronize the value with the highlighted index\n\n\n if (!filterSelectedOptions && valueItem != null) {\n var currentOption = filteredOptions[highlightedIndexRef.current]; // Keep the current highlighted index if possible\n\n if (multiple && currentOption && findIndex(value, function (val) {\n return getOptionSelected(currentOption, val);\n }) !== -1) {\n return;\n }\n\n var itemIndex = findIndex(filteredOptions, function (optionItem) {\n return getOptionSelected(optionItem, valueItem);\n });\n\n if (itemIndex === -1) {\n changeHighlightedIndex({\n diff: 'reset'\n });\n } else {\n setHighlightedIndex({\n index: itemIndex\n });\n }\n\n return;\n } // Prevent the highlighted index to leak outside the boundaries.\n\n\n if (highlightedIndexRef.current >= filteredOptions.length - 1) {\n setHighlightedIndex({\n index: filteredOptions.length - 1\n });\n return;\n } // Restore the focus to the previous index.\n\n\n setHighlightedIndex({\n index: highlightedIndexRef.current\n }); // Ignore filteredOptions (and options, getOptionSelected, getOptionLabel) not to break the scroll position\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [// Only sync the highlighted index when the option switch between empty and not\n // eslint-disable-next-line react-hooks/exhaustive-deps\n filteredOptions.length === 0, // Don't sync the highlighted index with the value when multiple\n // eslint-disable-next-line react-hooks/exhaustive-deps\n multiple ? false : value, filterSelectedOptions, changeHighlightedIndex, setHighlightedIndex, popupOpen, inputValue, multiple]);\n var handleListboxRef = useEventCallback(function (node) {\n setRef(listboxRef, node);\n\n if (!node) {\n return;\n }\n\n syncHighlightedIndex();\n });\n React.useEffect(function () {\n syncHighlightedIndex();\n }, [syncHighlightedIndex]);\n\n var handleOpen = function handleOpen(event) {\n if (open) {\n return;\n }\n\n setOpenState(true);\n\n if (onOpen) {\n onOpen(event);\n }\n };\n\n var handleClose = function handleClose(event, reason) {\n if (!open) {\n return;\n }\n\n setOpenState(false);\n\n if (onClose) {\n onClose(event, reason);\n }\n };\n\n var handleValue = function handleValue(event, newValue, reason, details) {\n if (value === newValue) {\n return;\n }\n\n if (onChange) {\n onChange(event, newValue, reason, details);\n }\n\n setValue(newValue);\n };\n\n var isTouch = React.useRef(false);\n\n var selectNewValue = function selectNewValue(event, option) {\n var reasonProp = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'select-option';\n var origin = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 'options';\n var reason = reasonProp;\n var newValue = option;\n\n if (multiple) {\n newValue = Array.isArray(value) ? value.slice() : [];\n\n if (process.env.NODE_ENV !== 'production') {\n var matches = newValue.filter(function (val) {\n return getOptionSelected(option, val);\n });\n\n if (matches.length > 1) {\n console.error([\"Material-UI: The `getOptionSelected` method of \".concat(componentName, \" do not handle the arguments correctly.\"), \"The component expects a single value to match a given option but found \".concat(matches.length, \" matches.\")].join('\\n'));\n }\n }\n\n var itemIndex = findIndex(newValue, function (valueItem) {\n return getOptionSelected(option, valueItem);\n });\n\n if (itemIndex === -1) {\n newValue.push(option);\n } else if (origin !== 'freeSolo') {\n newValue.splice(itemIndex, 1);\n reason = 'remove-option';\n }\n }\n\n resetInputValue(event, newValue);\n handleValue(event, newValue, reason, {\n option: option\n });\n\n if (!disableCloseOnSelect) {\n handleClose(event, reason);\n }\n\n if (blurOnSelect === true || blurOnSelect === 'touch' && isTouch.current || blurOnSelect === 'mouse' && !isTouch.current) {\n inputRef.current.blur();\n }\n };\n\n function validTagIndex(index, direction) {\n if (index === -1) {\n return -1;\n }\n\n var nextFocus = index;\n\n while (true) {\n // Out of range\n if (direction === 'next' && nextFocus === value.length || direction === 'previous' && nextFocus === -1) {\n return -1;\n }\n\n var option = anchorEl.querySelector(\"[data-tag-index=\\\"\".concat(nextFocus, \"\\\"]\")); // Same logic as MenuList.js\n\n if (option && (!option.hasAttribute('tabindex') || option.disabled || option.getAttribute('aria-disabled') === 'true')) {\n nextFocus += direction === 'next' ? 1 : -1;\n } else {\n return nextFocus;\n }\n }\n }\n\n var handleFocusTag = function handleFocusTag(event, direction) {\n if (!multiple) {\n return;\n }\n\n handleClose(event, 'toggleInput');\n var nextTag = focusedTag;\n\n if (focusedTag === -1) {\n if (inputValue === '' && direction === 'previous') {\n nextTag = value.length - 1;\n }\n } else {\n nextTag += direction === 'next' ? 1 : -1;\n\n if (nextTag < 0) {\n nextTag = 0;\n }\n\n if (nextTag === value.length) {\n nextTag = -1;\n }\n }\n\n nextTag = validTagIndex(nextTag, direction);\n setFocusedTag(nextTag);\n focusTag(nextTag);\n };\n\n var handleClear = function handleClear(event) {\n ignoreFocus.current = true;\n setInputValue('');\n\n if (onInputChange) {\n onInputChange(event, '', 'clear');\n }\n\n handleValue(event, multiple ? [] : null, 'clear');\n };\n\n var handleKeyDown = function handleKeyDown(other) {\n return function (event) {\n if (focusedTag !== -1 && ['ArrowLeft', 'ArrowRight'].indexOf(event.key) === -1) {\n setFocusedTag(-1);\n focusTag(-1);\n }\n\n switch (event.key) {\n case 'Home':\n if (popupOpen && handleHomeEndKeys) {\n // Prevent scroll of the page\n event.preventDefault();\n changeHighlightedIndex({\n diff: 'start',\n direction: 'next',\n reason: 'keyboard',\n event: event\n });\n }\n\n break;\n\n case 'End':\n if (popupOpen && handleHomeEndKeys) {\n // Prevent scroll of the page\n event.preventDefault();\n changeHighlightedIndex({\n diff: 'end',\n direction: 'previous',\n reason: 'keyboard',\n event: event\n });\n }\n\n break;\n\n case 'PageUp':\n // Prevent scroll of the page\n event.preventDefault();\n changeHighlightedIndex({\n diff: -pageSize,\n direction: 'previous',\n reason: 'keyboard',\n event: event\n });\n handleOpen(event);\n break;\n\n case 'PageDown':\n // Prevent scroll of the page\n event.preventDefault();\n changeHighlightedIndex({\n diff: pageSize,\n direction: 'next',\n reason: 'keyboard',\n event: event\n });\n handleOpen(event);\n break;\n\n case 'ArrowDown':\n // Prevent cursor move\n event.preventDefault();\n changeHighlightedIndex({\n diff: 1,\n direction: 'next',\n reason: 'keyboard',\n event: event\n });\n handleOpen(event);\n break;\n\n case 'ArrowUp':\n // Prevent cursor move\n event.preventDefault();\n changeHighlightedIndex({\n diff: -1,\n direction: 'previous',\n reason: 'keyboard',\n event: event\n });\n handleOpen(event);\n break;\n\n case 'ArrowLeft':\n handleFocusTag(event, 'previous');\n break;\n\n case 'ArrowRight':\n handleFocusTag(event, 'next');\n break;\n\n case 'Enter':\n // Wait until IME is settled.\n if (event.which === 229) {\n break;\n }\n\n if (highlightedIndexRef.current !== -1 && popupOpen) {\n var option = filteredOptions[highlightedIndexRef.current];\n var disabled = getOptionDisabled ? getOptionDisabled(option) : false; // We don't want to validate the form.\n\n event.preventDefault();\n\n if (disabled) {\n return;\n }\n\n selectNewValue(event, option, 'select-option'); // Move the selection to the end.\n\n if (autoComplete) {\n inputRef.current.setSelectionRange(inputRef.current.value.length, inputRef.current.value.length);\n }\n } else if (freeSolo && inputValue !== '' && inputValueIsSelectedValue === false) {\n if (multiple) {\n // Allow people to add new values before they submit the form.\n event.preventDefault();\n }\n\n selectNewValue(event, inputValue, 'create-option', 'freeSolo');\n }\n\n break;\n\n case 'Escape':\n if (popupOpen) {\n // Avoid Opera to exit fullscreen mode.\n event.preventDefault(); // Avoid the Modal to handle the event.\n\n event.stopPropagation();\n handleClose(event, 'escape');\n } else if (clearOnEscape && (inputValue !== '' || multiple && value.length > 0)) {\n // Avoid Opera to exit fullscreen mode.\n event.preventDefault(); // Avoid the Modal to handle the event.\n\n event.stopPropagation();\n handleClear(event);\n }\n\n break;\n\n case 'Backspace':\n if (multiple && inputValue === '' && value.length > 0) {\n var index = focusedTag === -1 ? value.length - 1 : focusedTag;\n var newValue = value.slice();\n newValue.splice(index, 1);\n handleValue(event, newValue, 'remove-option', {\n option: value[index]\n });\n }\n\n break;\n\n default:\n }\n\n if (other.onKeyDown) {\n other.onKeyDown(event);\n }\n };\n };\n\n var handleFocus = function handleFocus(event) {\n setFocused(true);\n\n if (openOnFocus && !ignoreFocus.current) {\n handleOpen(event);\n }\n };\n\n var handleBlur = function handleBlur(event) {\n // Ignore the event when using the scrollbar with IE 11\n if (listboxRef.current !== null && document.activeElement === listboxRef.current.parentElement) {\n inputRef.current.focus();\n return;\n }\n\n setFocused(false);\n firstFocus.current = true;\n ignoreFocus.current = false;\n\n if (debug && inputValue !== '') {\n return;\n }\n\n if (autoSelect && highlightedIndexRef.current !== -1 && popupOpen) {\n selectNewValue(event, filteredOptions[highlightedIndexRef.current], 'blur');\n } else if (autoSelect && freeSolo && inputValue !== '') {\n selectNewValue(event, inputValue, 'blur', 'freeSolo');\n } else if (clearOnBlur) {\n resetInputValue(event, value);\n }\n\n handleClose(event, 'blur');\n };\n\n var handleInputChange = function handleInputChange(event) {\n var newValue = event.target.value;\n\n if (inputValue !== newValue) {\n setInputValue(newValue);\n\n if (onInputChange) {\n onInputChange(event, newValue, 'input');\n }\n }\n\n if (newValue === '') {\n if (!disableClearable && !multiple) {\n handleValue(event, null, 'clear');\n }\n } else {\n handleOpen(event);\n }\n };\n\n var handleOptionMouseOver = function handleOptionMouseOver(event) {\n setHighlightedIndex({\n event: event,\n index: Number(event.currentTarget.getAttribute('data-option-index')),\n reason: 'mouse'\n });\n };\n\n var handleOptionTouchStart = function handleOptionTouchStart() {\n isTouch.current = true;\n };\n\n var handleOptionClick = function handleOptionClick(event) {\n var index = Number(event.currentTarget.getAttribute('data-option-index'));\n selectNewValue(event, filteredOptions[index], 'select-option');\n isTouch.current = false;\n };\n\n var handleTagDelete = function handleTagDelete(index) {\n return function (event) {\n var newValue = value.slice();\n newValue.splice(index, 1);\n handleValue(event, newValue, 'remove-option', {\n option: value[index]\n });\n };\n };\n\n var handlePopupIndicator = function handlePopupIndicator(event) {\n if (open) {\n handleClose(event, 'toggleInput');\n } else {\n handleOpen(event);\n }\n }; // Prevent input blur when interacting with the combobox\n\n\n var handleMouseDown = function handleMouseDown(event) {\n if (event.target.getAttribute('id') !== id) {\n event.preventDefault();\n }\n }; // Focus the input when interacting with the combobox\n\n\n var handleClick = function handleClick() {\n inputRef.current.focus();\n\n if (selectOnFocus && firstFocus.current && inputRef.current.selectionEnd - inputRef.current.selectionStart === 0) {\n inputRef.current.select();\n }\n\n firstFocus.current = false;\n };\n\n var handleInputMouseDown = function handleInputMouseDown(event) {\n if (inputValue === '' || !open) {\n handlePopupIndicator(event);\n }\n };\n\n var dirty = freeSolo && inputValue.length > 0;\n dirty = dirty || (multiple ? value.length > 0 : value !== null);\n var groupedOptions = filteredOptions;\n\n if (groupBy) {\n // used to keep track of key and indexes in the result array\n var indexBy = new Map();\n var warn = false;\n groupedOptions = filteredOptions.reduce(function (acc, option, index) {\n var group = groupBy(option);\n\n if (acc.length > 0 && acc[acc.length - 1].group === group) {\n acc[acc.length - 1].options.push(option);\n } else {\n if (process.env.NODE_ENV !== 'production') {\n if (indexBy.get(group) && !warn) {\n console.warn(\"Material-UI: The options provided combined with the `groupBy` method of \".concat(componentName, \" returns duplicated headers.\"), 'You can solve the issue by sorting the options with the output of `groupBy`.');\n warn = true;\n }\n\n indexBy.set(group, true);\n }\n\n acc.push({\n key: index,\n index: index,\n group: group,\n options: [option]\n });\n }\n\n return acc;\n }, []);\n }\n\n return {\n getRootProps: function getRootProps() {\n var other = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n return _extends({\n 'aria-owns': popupOpen ? \"\".concat(id, \"-popup\") : null,\n role: 'combobox',\n 'aria-expanded': popupOpen\n }, other, {\n onKeyDown: handleKeyDown(other),\n onMouseDown: handleMouseDown,\n onClick: handleClick\n });\n },\n getInputLabelProps: function getInputLabelProps() {\n return {\n id: \"\".concat(id, \"-label\"),\n htmlFor: id\n };\n },\n getInputProps: function getInputProps() {\n return {\n id: id,\n value: inputValue,\n onBlur: handleBlur,\n onFocus: handleFocus,\n onChange: handleInputChange,\n onMouseDown: handleInputMouseDown,\n // if open then this is handled imperativeley so don't let react override\n // only have an opinion about this when closed\n 'aria-activedescendant': popupOpen ? '' : null,\n 'aria-autocomplete': autoComplete ? 'both' : 'list',\n 'aria-controls': popupOpen ? \"\".concat(id, \"-popup\") : null,\n // Disable browser's suggestion that might overlap with the popup.\n // Handle autocomplete but not autofill.\n autoComplete: 'off',\n ref: inputRef,\n autoCapitalize: 'none',\n spellCheck: 'false'\n };\n },\n getClearProps: function getClearProps() {\n return {\n tabIndex: -1,\n onClick: handleClear\n };\n },\n getPopupIndicatorProps: function getPopupIndicatorProps() {\n return {\n tabIndex: -1,\n onClick: handlePopupIndicator\n };\n },\n getTagProps: function getTagProps(_ref4) {\n var index = _ref4.index;\n return {\n key: index,\n 'data-tag-index': index,\n tabIndex: -1,\n onDelete: handleTagDelete(index)\n };\n },\n getListboxProps: function getListboxProps() {\n return {\n role: 'listbox',\n id: \"\".concat(id, \"-popup\"),\n 'aria-labelledby': \"\".concat(id, \"-label\"),\n ref: handleListboxRef,\n onMouseDown: function onMouseDown(event) {\n // Prevent blur\n event.preventDefault();\n }\n };\n },\n getOptionProps: function getOptionProps(_ref5) {\n var index = _ref5.index,\n option = _ref5.option;\n var selected = (multiple ? value : [value]).some(function (value2) {\n return value2 != null && getOptionSelected(option, value2);\n });\n var disabled = getOptionDisabled ? getOptionDisabled(option) : false;\n return {\n key: index,\n tabIndex: -1,\n role: 'option',\n id: \"\".concat(id, \"-option-\").concat(index),\n onMouseOver: handleOptionMouseOver,\n onClick: handleOptionClick,\n onTouchStart: handleOptionTouchStart,\n 'data-option-index': index,\n 'aria-disabled': disabled,\n 'aria-selected': selected\n };\n },\n id: id,\n inputValue: inputValue,\n value: value,\n dirty: dirty,\n popupOpen: popupOpen,\n focused: focused || focusedTag !== -1,\n anchorEl: anchorEl,\n setAnchorEl: setAnchorEl,\n focusedTag: focusedTag,\n groupedOptions: groupedOptions\n };\n}","import _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { withStyles } from '@material-ui/core/styles';\nimport Popper from '@material-ui/core/Popper';\nimport ListSubheader from '@material-ui/core/ListSubheader';\nimport Paper from '@material-ui/core/Paper';\nimport IconButton from '@material-ui/core/IconButton';\nimport Chip from '@material-ui/core/Chip';\nimport CloseIcon from '../internal/svg-icons/Close';\nimport ArrowDropDownIcon from '../internal/svg-icons/ArrowDropDown';\nimport useAutocomplete, { createFilterOptions } from '../useAutocomplete';\nexport { createFilterOptions };\nexport var styles = function styles(theme) {\n var _option;\n\n return {\n /* Styles applied to the root element. */\n root: {\n '&$focused $clearIndicatorDirty': {\n visibility: 'visible'\n },\n\n /* Avoid double tap issue on iOS */\n '@media (pointer: fine)': {\n '&:hover $clearIndicatorDirty': {\n visibility: 'visible'\n }\n }\n },\n\n /* Styles applied to the root element if `fullWidth={true}`. */\n fullWidth: {\n width: '100%'\n },\n\n /* Pseudo-class applied to the root element if focused. */\n focused: {},\n\n /* Styles applied to the tag elements, e.g. the chips. */\n tag: {\n margin: 3,\n maxWidth: 'calc(100% - 6px)'\n },\n\n /* Styles applied to the tag elements, e.g. the chips if `size=\"small\"`. */\n tagSizeSmall: {\n margin: 2,\n maxWidth: 'calc(100% - 4px)'\n },\n\n /* Styles applied when the popup icon is rendered. */\n hasPopupIcon: {},\n\n /* Styles applied when the clear icon is rendered. */\n hasClearIcon: {},\n\n /* Styles applied to the Input element. */\n inputRoot: {\n flexWrap: 'wrap',\n '$hasPopupIcon &, $hasClearIcon &': {\n paddingRight: 26 + 4\n },\n '$hasPopupIcon$hasClearIcon &': {\n paddingRight: 52 + 4\n },\n '& $input': {\n width: 0,\n minWidth: 30\n },\n '&[class*=\"MuiInput-root\"]': {\n paddingBottom: 1,\n '& $input': {\n padding: 4\n },\n '& $input:first-child': {\n padding: '6px 0'\n }\n },\n '&[class*=\"MuiInput-root\"][class*=\"MuiInput-marginDense\"]': {\n '& $input': {\n padding: '4px 4px 5px'\n },\n '& $input:first-child': {\n padding: '3px 0 6px'\n }\n },\n '&[class*=\"MuiOutlinedInput-root\"]': {\n padding: 9,\n '$hasPopupIcon &, $hasClearIcon &': {\n paddingRight: 26 + 4 + 9\n },\n '$hasPopupIcon$hasClearIcon &': {\n paddingRight: 52 + 4 + 9\n },\n '& $input': {\n padding: '9.5px 4px'\n },\n '& $input:first-child': {\n paddingLeft: 6\n },\n '& $endAdornment': {\n right: 9\n }\n },\n '&[class*=\"MuiOutlinedInput-root\"][class*=\"MuiOutlinedInput-marginDense\"]': {\n padding: 6,\n '& $input': {\n padding: '4.5px 4px'\n }\n },\n '&[class*=\"MuiFilledInput-root\"]': {\n paddingTop: 19,\n paddingLeft: 8,\n '$hasPopupIcon &, $hasClearIcon &': {\n paddingRight: 26 + 4 + 9\n },\n '$hasPopupIcon$hasClearIcon &': {\n paddingRight: 52 + 4 + 9\n },\n '& $input': {\n padding: '9px 4px'\n },\n '& $endAdornment': {\n right: 9\n }\n },\n '&[class*=\"MuiFilledInput-root\"][class*=\"MuiFilledInput-marginDense\"]': {\n paddingBottom: 1,\n '& $input': {\n padding: '4.5px 4px'\n }\n }\n },\n\n /* Styles applied to the input element. */\n input: {\n flexGrow: 1,\n textOverflow: 'ellipsis',\n opacity: 0\n },\n\n /* Styles applied to the input element if tag focused. */\n inputFocused: {\n opacity: 1\n },\n\n /* Styles applied to the endAdornment element. */\n endAdornment: {\n // We use a position absolute to support wrapping tags.\n position: 'absolute',\n right: 0,\n top: 'calc(50% - 14px)' // Center vertically\n\n },\n\n /* Styles applied to the clear indicator. */\n clearIndicator: {\n marginRight: -2,\n padding: 4,\n visibility: 'hidden'\n },\n\n /* Styles applied to the clear indicator if the input is dirty. */\n clearIndicatorDirty: {},\n\n /* Styles applied to the popup indicator. */\n popupIndicator: {\n padding: 2,\n marginRight: -2\n },\n\n /* Styles applied to the popup indicator if the popup is open. */\n popupIndicatorOpen: {\n transform: 'rotate(180deg)'\n },\n\n /* Styles applied to the popper element. */\n popper: {\n zIndex: theme.zIndex.modal\n },\n\n /* Styles applied to the popper element if `disablePortal={true}`. */\n popperDisablePortal: {\n position: 'absolute'\n },\n\n /* Styles applied to the `Paper` component. */\n paper: _extends({}, theme.typography.body1, {\n overflow: 'hidden',\n margin: '4px 0'\n }),\n\n /* Styles applied to the `listbox` component. */\n listbox: {\n listStyle: 'none',\n margin: 0,\n padding: '8px 0',\n maxHeight: '40vh',\n overflow: 'auto'\n },\n\n /* Styles applied to the loading wrapper. */\n loading: {\n color: theme.palette.text.secondary,\n padding: '14px 16px'\n },\n\n /* Styles applied to the no option wrapper. */\n noOptions: {\n color: theme.palette.text.secondary,\n padding: '14px 16px'\n },\n\n /* Styles applied to the option elements. */\n option: (_option = {\n minHeight: 48,\n display: 'flex',\n justifyContent: 'flex-start',\n alignItems: 'center',\n cursor: 'pointer',\n paddingTop: 6,\n boxSizing: 'border-box',\n outline: '0',\n WebkitTapHighlightColor: 'transparent',\n paddingBottom: 6,\n paddingLeft: 16,\n paddingRight: 16\n }, _defineProperty(_option, theme.breakpoints.up('sm'), {\n minHeight: 'auto'\n }), _defineProperty(_option, '&[aria-selected=\"true\"]', {\n backgroundColor: theme.palette.action.selected\n }), _defineProperty(_option, '&[data-focus=\"true\"]', {\n backgroundColor: theme.palette.action.hover\n }), _defineProperty(_option, '&:active', {\n backgroundColor: theme.palette.action.selected\n }), _defineProperty(_option, '&[aria-disabled=\"true\"]', {\n opacity: theme.palette.action.disabledOpacity,\n pointerEvents: 'none'\n }), _option),\n\n /* Styles applied to the group's label elements. */\n groupLabel: {\n backgroundColor: theme.palette.background.paper,\n top: -8\n },\n\n /* Styles applied to the group's ul elements. */\n groupUl: {\n padding: 0,\n '& $option': {\n paddingLeft: 24\n }\n }\n };\n};\n\nfunction DisablePortal(props) {\n // eslint-disable-next-line react/prop-types\n var anchorEl = props.anchorEl,\n open = props.open,\n other = _objectWithoutProperties(props, [\"anchorEl\", \"open\"]);\n\n return /*#__PURE__*/React.createElement(\"div\", other);\n}\n\nvar _ref = /*#__PURE__*/React.createElement(CloseIcon, {\n fontSize: \"small\"\n});\n\nvar _ref2 = /*#__PURE__*/React.createElement(ArrowDropDownIcon, null);\n\nvar Autocomplete = /*#__PURE__*/React.forwardRef(function Autocomplete(props, ref) {\n /* eslint-disable no-unused-vars */\n var _props$autoComplete = props.autoComplete,\n autoComplete = _props$autoComplete === void 0 ? false : _props$autoComplete,\n _props$autoHighlight = props.autoHighlight,\n autoHighlight = _props$autoHighlight === void 0 ? false : _props$autoHighlight,\n _props$autoSelect = props.autoSelect,\n autoSelect = _props$autoSelect === void 0 ? false : _props$autoSelect,\n _props$blurOnSelect = props.blurOnSelect,\n blurOnSelect = _props$blurOnSelect === void 0 ? false : _props$blurOnSelect,\n ChipProps = props.ChipProps,\n classes = props.classes,\n className = props.className,\n _props$clearOnBlur = props.clearOnBlur,\n clearOnBlur = _props$clearOnBlur === void 0 ? !props.freeSolo : _props$clearOnBlur,\n _props$clearOnEscape = props.clearOnEscape,\n clearOnEscape = _props$clearOnEscape === void 0 ? false : _props$clearOnEscape,\n _props$clearText = props.clearText,\n clearText = _props$clearText === void 0 ? 'Clear' : _props$clearText,\n _props$closeIcon = props.closeIcon,\n closeIcon = _props$closeIcon === void 0 ? _ref : _props$closeIcon,\n _props$closeText = props.closeText,\n closeText = _props$closeText === void 0 ? 'Close' : _props$closeText,\n _props$debug = props.debug,\n debug = _props$debug === void 0 ? false : _props$debug,\n _props$defaultValue = props.defaultValue,\n defaultValue = _props$defaultValue === void 0 ? props.multiple ? [] : null : _props$defaultValue,\n _props$disableClearab = props.disableClearable,\n disableClearable = _props$disableClearab === void 0 ? false : _props$disableClearab,\n _props$disableCloseOn = props.disableCloseOnSelect,\n disableCloseOnSelect = _props$disableCloseOn === void 0 ? false : _props$disableCloseOn,\n _props$disabled = props.disabled,\n disabled = _props$disabled === void 0 ? false : _props$disabled,\n _props$disabledItemsF = props.disabledItemsFocusable,\n disabledItemsFocusable = _props$disabledItemsF === void 0 ? false : _props$disabledItemsF,\n _props$disableListWra = props.disableListWrap,\n disableListWrap = _props$disableListWra === void 0 ? false : _props$disableListWra,\n _props$disablePortal = props.disablePortal,\n disablePortal = _props$disablePortal === void 0 ? false : _props$disablePortal,\n filterOptions = props.filterOptions,\n _props$filterSelected = props.filterSelectedOptions,\n filterSelectedOptions = _props$filterSelected === void 0 ? false : _props$filterSelected,\n _props$forcePopupIcon = props.forcePopupIcon,\n forcePopupIcon = _props$forcePopupIcon === void 0 ? 'auto' : _props$forcePopupIcon,\n _props$freeSolo = props.freeSolo,\n freeSolo = _props$freeSolo === void 0 ? false : _props$freeSolo,\n _props$fullWidth = props.fullWidth,\n fullWidth = _props$fullWidth === void 0 ? false : _props$fullWidth,\n _props$getLimitTagsTe = props.getLimitTagsText,\n getLimitTagsText = _props$getLimitTagsTe === void 0 ? function (more) {\n return \"+\".concat(more);\n } : _props$getLimitTagsTe,\n getOptionDisabled = props.getOptionDisabled,\n _props$getOptionLabel = props.getOptionLabel,\n getOptionLabel = _props$getOptionLabel === void 0 ? function (x) {\n return x;\n } : _props$getOptionLabel,\n getOptionSelected = props.getOptionSelected,\n groupBy = props.groupBy,\n _props$handleHomeEndK = props.handleHomeEndKeys,\n handleHomeEndKeys = _props$handleHomeEndK === void 0 ? !props.freeSolo : _props$handleHomeEndK,\n idProp = props.id,\n _props$includeInputIn = props.includeInputInList,\n includeInputInList = _props$includeInputIn === void 0 ? false : _props$includeInputIn,\n inputValueProp = props.inputValue,\n _props$limitTags = props.limitTags,\n limitTags = _props$limitTags === void 0 ? -1 : _props$limitTags,\n _props$ListboxCompone = props.ListboxComponent,\n ListboxComponent = _props$ListboxCompone === void 0 ? 'ul' : _props$ListboxCompone,\n ListboxProps = props.ListboxProps,\n _props$loading = props.loading,\n loading = _props$loading === void 0 ? false : _props$loading,\n _props$loadingText = props.loadingText,\n loadingText = _props$loadingText === void 0 ? 'Loading…' : _props$loadingText,\n _props$multiple = props.multiple,\n multiple = _props$multiple === void 0 ? false : _props$multiple,\n _props$noOptionsText = props.noOptionsText,\n noOptionsText = _props$noOptionsText === void 0 ? 'No options' : _props$noOptionsText,\n onChange = props.onChange,\n onClose = props.onClose,\n onHighlightChange = props.onHighlightChange,\n onInputChange = props.onInputChange,\n onOpen = props.onOpen,\n open = props.open,\n _props$openOnFocus = props.openOnFocus,\n openOnFocus = _props$openOnFocus === void 0 ? false : _props$openOnFocus,\n _props$openText = props.openText,\n openText = _props$openText === void 0 ? 'Open' : _props$openText,\n options = props.options,\n _props$PaperComponent = props.PaperComponent,\n PaperComponent = _props$PaperComponent === void 0 ? Paper : _props$PaperComponent,\n _props$PopperComponen = props.PopperComponent,\n PopperComponentProp = _props$PopperComponen === void 0 ? Popper : _props$PopperComponen,\n _props$popupIcon = props.popupIcon,\n popupIcon = _props$popupIcon === void 0 ? _ref2 : _props$popupIcon,\n renderGroupProp = props.renderGroup,\n renderInput = props.renderInput,\n renderOptionProp = props.renderOption,\n renderTags = props.renderTags,\n _props$selectOnFocus = props.selectOnFocus,\n selectOnFocus = _props$selectOnFocus === void 0 ? !props.freeSolo : _props$selectOnFocus,\n _props$size = props.size,\n size = _props$size === void 0 ? 'medium' : _props$size,\n valueProp = props.value,\n other = _objectWithoutProperties(props, [\"autoComplete\", \"autoHighlight\", \"autoSelect\", \"blurOnSelect\", \"ChipProps\", \"classes\", \"className\", \"clearOnBlur\", \"clearOnEscape\", \"clearText\", \"closeIcon\", \"closeText\", \"debug\", \"defaultValue\", \"disableClearable\", \"disableCloseOnSelect\", \"disabled\", \"disabledItemsFocusable\", \"disableListWrap\", \"disablePortal\", \"filterOptions\", \"filterSelectedOptions\", \"forcePopupIcon\", \"freeSolo\", \"fullWidth\", \"getLimitTagsText\", \"getOptionDisabled\", \"getOptionLabel\", \"getOptionSelected\", \"groupBy\", \"handleHomeEndKeys\", \"id\", \"includeInputInList\", \"inputValue\", \"limitTags\", \"ListboxComponent\", \"ListboxProps\", \"loading\", \"loadingText\", \"multiple\", \"noOptionsText\", \"onChange\", \"onClose\", \"onHighlightChange\", \"onInputChange\", \"onOpen\", \"open\", \"openOnFocus\", \"openText\", \"options\", \"PaperComponent\", \"PopperComponent\", \"popupIcon\", \"renderGroup\", \"renderInput\", \"renderOption\", \"renderTags\", \"selectOnFocus\", \"size\", \"value\"]);\n /* eslint-enable no-unused-vars */\n\n\n var PopperComponent = disablePortal ? DisablePortal : PopperComponentProp;\n\n var _useAutocomplete = useAutocomplete(_extends({}, props, {\n componentName: 'Autocomplete'\n })),\n getRootProps = _useAutocomplete.getRootProps,\n getInputProps = _useAutocomplete.getInputProps,\n getInputLabelProps = _useAutocomplete.getInputLabelProps,\n getPopupIndicatorProps = _useAutocomplete.getPopupIndicatorProps,\n getClearProps = _useAutocomplete.getClearProps,\n getTagProps = _useAutocomplete.getTagProps,\n getListboxProps = _useAutocomplete.getListboxProps,\n getOptionProps = _useAutocomplete.getOptionProps,\n value = _useAutocomplete.value,\n dirty = _useAutocomplete.dirty,\n id = _useAutocomplete.id,\n popupOpen = _useAutocomplete.popupOpen,\n focused = _useAutocomplete.focused,\n focusedTag = _useAutocomplete.focusedTag,\n anchorEl = _useAutocomplete.anchorEl,\n setAnchorEl = _useAutocomplete.setAnchorEl,\n inputValue = _useAutocomplete.inputValue,\n groupedOptions = _useAutocomplete.groupedOptions;\n\n var startAdornment;\n\n if (multiple && value.length > 0) {\n var getCustomizedTagProps = function getCustomizedTagProps(params) {\n return _extends({\n className: clsx(classes.tag, size === 'small' && classes.tagSizeSmall),\n disabled: disabled\n }, getTagProps(params));\n };\n\n if (renderTags) {\n startAdornment = renderTags(value, getCustomizedTagProps);\n } else {\n startAdornment = value.map(function (option, index) {\n return /*#__PURE__*/React.createElement(Chip, _extends({\n label: getOptionLabel(option),\n size: size\n }, getCustomizedTagProps({\n index: index\n }), ChipProps));\n });\n }\n }\n\n if (limitTags > -1 && Array.isArray(startAdornment)) {\n var more = startAdornment.length - limitTags;\n\n if (!focused && more > 0) {\n startAdornment = startAdornment.splice(0, limitTags);\n startAdornment.push( /*#__PURE__*/React.createElement(\"span\", {\n className: classes.tag,\n key: startAdornment.length\n }, getLimitTagsText(more)));\n }\n }\n\n var defaultRenderGroup = function defaultRenderGroup(params) {\n return /*#__PURE__*/React.createElement(\"li\", {\n key: params.key\n }, /*#__PURE__*/React.createElement(ListSubheader, {\n className: classes.groupLabel,\n component: \"div\"\n }, params.group), /*#__PURE__*/React.createElement(\"ul\", {\n className: classes.groupUl\n }, params.children));\n };\n\n var renderGroup = renderGroupProp || defaultRenderGroup;\n var renderOption = renderOptionProp || getOptionLabel;\n\n var renderListOption = function renderListOption(option, index) {\n var optionProps = getOptionProps({\n option: option,\n index: index\n });\n return /*#__PURE__*/React.createElement(\"li\", _extends({}, optionProps, {\n className: classes.option\n }), renderOption(option, {\n selected: optionProps['aria-selected'],\n inputValue: inputValue\n }));\n };\n\n var hasClearIcon = !disableClearable && !disabled;\n var hasPopupIcon = (!freeSolo || forcePopupIcon === true) && forcePopupIcon !== false;\n return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"div\", _extends({\n ref: ref,\n className: clsx(classes.root, className, focused && classes.focused, fullWidth && classes.fullWidth, hasClearIcon && classes.hasClearIcon, hasPopupIcon && classes.hasPopupIcon)\n }, getRootProps(other)), renderInput({\n id: id,\n disabled: disabled,\n fullWidth: true,\n size: size === 'small' ? 'small' : undefined,\n InputLabelProps: getInputLabelProps(),\n InputProps: {\n ref: setAnchorEl,\n className: classes.inputRoot,\n startAdornment: startAdornment,\n endAdornment: /*#__PURE__*/React.createElement(\"div\", {\n className: classes.endAdornment\n }, hasClearIcon ? /*#__PURE__*/React.createElement(IconButton, _extends({}, getClearProps(), {\n \"aria-label\": clearText,\n title: clearText,\n className: clsx(classes.clearIndicator, dirty && classes.clearIndicatorDirty)\n }), closeIcon) : null, hasPopupIcon ? /*#__PURE__*/React.createElement(IconButton, _extends({}, getPopupIndicatorProps(), {\n disabled: disabled,\n \"aria-label\": popupOpen ? closeText : openText,\n title: popupOpen ? closeText : openText,\n className: clsx(classes.popupIndicator, popupOpen && classes.popupIndicatorOpen)\n }), popupIcon) : null)\n },\n inputProps: _extends({\n className: clsx(classes.input, focusedTag === -1 && classes.inputFocused),\n disabled: disabled\n }, getInputProps())\n })), popupOpen && anchorEl ? /*#__PURE__*/React.createElement(PopperComponent, {\n className: clsx(classes.popper, disablePortal && classes.popperDisablePortal),\n style: {\n width: anchorEl ? anchorEl.clientWidth : null\n },\n role: \"presentation\",\n anchorEl: anchorEl,\n open: true\n }, /*#__PURE__*/React.createElement(PaperComponent, {\n className: classes.paper\n }, loading && groupedOptions.length === 0 ? /*#__PURE__*/React.createElement(\"div\", {\n className: classes.loading\n }, loadingText) : null, groupedOptions.length === 0 && !freeSolo && !loading ? /*#__PURE__*/React.createElement(\"div\", {\n className: classes.noOptions\n }, noOptionsText) : null, groupedOptions.length > 0 ? /*#__PURE__*/React.createElement(ListboxComponent, _extends({\n className: classes.listbox\n }, getListboxProps(), ListboxProps), groupedOptions.map(function (option, index) {\n if (groupBy) {\n return renderGroup({\n key: option.key,\n group: option.group,\n children: option.options.map(function (option2, index2) {\n return renderListOption(option2, option.index + index2);\n })\n });\n }\n\n return renderListOption(option, index);\n })) : null)) : null);\n});\nprocess.env.NODE_ENV !== \"production\" ? Autocomplete.propTypes = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n\n /**\n * If `true`, the portion of the selected suggestion that has not been typed by the user,\n * known as the completion string, appears inline after the input cursor in the textbox.\n * The inline completion string is visually highlighted and has a selected state.\n */\n autoComplete: PropTypes.bool,\n\n /**\n * If `true`, the first option is automatically highlighted.\n */\n autoHighlight: PropTypes.bool,\n\n /**\n * If `true`, the selected option becomes the value of the input\n * when the Autocomplete loses focus unless the user chooses\n * a different option or changes the character string in the input.\n */\n autoSelect: PropTypes.bool,\n\n /**\n * Control if the input should be blurred when an option is selected:\n *\n * - `false` the input is not blurred.\n * - `true` the input is always blurred.\n * - `touch` the input is blurred after a touch event.\n * - `mouse` the input is blurred after a mouse event.\n */\n blurOnSelect: PropTypes.oneOfType([PropTypes.oneOf(['mouse', 'touch']), PropTypes.bool]),\n\n /**\n * Props applied to the [`Chip`](/api/chip/) element.\n */\n ChipProps: PropTypes.object,\n\n /**\n * Override or extend the styles applied to the component.\n * See [CSS API](#css) below for more details.\n */\n classes: PropTypes.object,\n\n /**\n * @ignore\n */\n className: PropTypes.string,\n\n /**\n * If `true`, the input's text will be cleared on blur if no value is selected.\n *\n * Set to `true` if you want to help the user enter a new value.\n * Set to `false` if you want to help the user resume his search.\n */\n clearOnBlur: PropTypes.bool,\n\n /**\n * If `true`, clear all values when the user presses escape and the popup is closed.\n */\n clearOnEscape: PropTypes.bool,\n\n /**\n * Override the default text for the *clear* icon button.\n *\n * For localization purposes, you can use the provided [translations](/guides/localization/).\n */\n clearText: PropTypes.string,\n\n /**\n * The icon to display in place of the default close icon.\n */\n closeIcon: PropTypes.node,\n\n /**\n * Override the default text for the *close popup* icon button.\n *\n * For localization purposes, you can use the provided [translations](/guides/localization/).\n */\n closeText: PropTypes.string,\n\n /**\n * If `true`, the popup will ignore the blur event if the input is filled.\n * You can inspect the popup markup with your browser tools.\n * Consider this option when you need to customize the component.\n */\n debug: PropTypes.bool,\n\n /**\n * The default input value. Use when the component is not controlled.\n */\n defaultValue: PropTypes.any,\n\n /**\n * If `true`, the input can't be cleared.\n */\n disableClearable: PropTypes\n /* @typescript-to-proptypes-ignore */\n .bool,\n\n /**\n * If `true`, the popup won't close when a value is selected.\n */\n disableCloseOnSelect: PropTypes.bool,\n\n /**\n * If `true`, the input will be disabled.\n */\n disabled: PropTypes.bool,\n\n /**\n * If `true`, will allow focus on disabled items.\n */\n disabledItemsFocusable: PropTypes.bool,\n\n /**\n * If `true`, the list box in the popup will not wrap focus.\n */\n disableListWrap: PropTypes.bool,\n\n /**\n * Disable the portal behavior.\n * The children stay within it's parent DOM hierarchy.\n */\n disablePortal: PropTypes.bool,\n\n /**\n * A filter function that determines the options that are eligible.\n *\n * @param {T[]} options The options to render.\n * @param {object} state The state of the component.\n * @returns {T[]}\n */\n filterOptions: PropTypes.func,\n\n /**\n * If `true`, hide the selected options from the list box.\n */\n filterSelectedOptions: PropTypes.bool,\n\n /**\n * Force the visibility display of the popup icon.\n */\n forcePopupIcon: PropTypes.oneOfType([PropTypes.oneOf(['auto']), PropTypes.bool]),\n\n /**\n * If `true`, the Autocomplete is free solo, meaning that the user input is not bound to provided options.\n */\n freeSolo: PropTypes\n /* @typescript-to-proptypes-ignore */\n .bool,\n\n /**\n * If `true`, the input will take up the full width of its container.\n */\n fullWidth: PropTypes.bool,\n\n /**\n * The label to display when the tags are truncated (`limitTags`).\n *\n * @param {number} more The number of truncated tags.\n * @returns {ReactNode}\n */\n getLimitTagsText: PropTypes.func,\n\n /**\n * Used to determine the disabled state for a given option.\n *\n * @param {T} option The option to test.\n * @returns {boolean}\n */\n getOptionDisabled: PropTypes.func,\n\n /**\n * Used to determine the string value for a given option.\n * It's used to fill the input (and the list box options if `renderOption` is not provided).\n *\n * @param {T} option\n * @returns {string}\n */\n getOptionLabel: PropTypes.func,\n\n /**\n * Used to determine if an option is selected, considering the current value.\n * Uses strict equality by default.\n *\n * @param {T} option The option to test.\n * @param {T} value The value to test against.\n * @returns {boolean}\n */\n getOptionSelected: PropTypes.func,\n\n /**\n * If provided, the options will be grouped under the returned string.\n * The groupBy value is also used as the text for group headings when `renderGroup` is not provided.\n *\n * @param {T} options The options to group.\n * @returns {string}\n */\n groupBy: PropTypes.func,\n\n /**\n * If `true`, the component handles the \"Home\" and \"End\" keys when the popup is open.\n * It should move focus to the first option and last option, respectively.\n */\n handleHomeEndKeys: PropTypes.bool,\n\n /**\n * This prop is used to help implement the accessibility logic.\n * If you don't provide this prop. It falls back to a randomly generated id.\n */\n id: PropTypes.string,\n\n /**\n * If `true`, the highlight can move to the input.\n */\n includeInputInList: PropTypes.bool,\n\n /**\n * The input value.\n */\n inputValue: PropTypes.string,\n\n /**\n * The maximum number of tags that will be visible when not focused.\n * Set `-1` to disable the limit.\n */\n limitTags: PropTypes.number,\n\n /**\n * The component used to render the listbox.\n */\n ListboxComponent: PropTypes.elementType,\n\n /**\n * Props applied to the Listbox element.\n */\n ListboxProps: PropTypes.object,\n\n /**\n * If `true`, the component is in a loading state.\n */\n loading: PropTypes.bool,\n\n /**\n * Text to display when in a loading state.\n *\n * For localization purposes, you can use the provided [translations](/guides/localization/).\n */\n loadingText: PropTypes.node,\n\n /**\n * If `true`, `value` must be an array and the menu will support multiple selections.\n */\n multiple: PropTypes\n /* @typescript-to-proptypes-ignore */\n .bool,\n\n /**\n * Text to display when there are no options.\n *\n * For localization purposes, you can use the provided [translations](/guides/localization/).\n */\n noOptionsText: PropTypes.node,\n\n /**\n * Callback fired when the value changes.\n *\n * @param {object} event The event source of the callback.\n * @param {T|T[]} value The new value of the component.\n * @param {string} reason One of \"create-option\", \"select-option\", \"remove-option\", \"blur\" or \"clear\".\n */\n onChange: PropTypes.func,\n\n /**\n * Callback fired when the popup requests to be closed.\n * Use in controlled mode (see open).\n *\n * @param {object} event The event source of the callback.\n * @param {string} reason Can be: `\"toggleInput\"`, `\"escape\"`, `\"select-option\"`, `\"blur\"`.\n */\n onClose: PropTypes.func,\n\n /**\n * Callback fired when the highlight option changes.\n *\n * @param {object} event The event source of the callback.\n * @param {T} option The highlighted option.\n * @param {string} reason Can be: `\"keyboard\"`, `\"auto\"`, `\"mouse\"`.\n */\n onHighlightChange: PropTypes.func,\n\n /**\n * Callback fired when the input value changes.\n *\n * @param {object} event The event source of the callback.\n * @param {string} value The new value of the text input.\n * @param {string} reason Can be: `\"input\"` (user input), `\"reset\"` (programmatic change), `\"clear\"`.\n */\n onInputChange: PropTypes.func,\n\n /**\n * Callback fired when the popup requests to be opened.\n * Use in controlled mode (see open).\n *\n * @param {object} event The event source of the callback.\n */\n onOpen: PropTypes.func,\n\n /**\n * Control the popup` open state.\n */\n open: PropTypes.bool,\n\n /**\n * If `true`, the popup will open on input focus.\n */\n openOnFocus: PropTypes.bool,\n\n /**\n * Override the default text for the *open popup* icon button.\n *\n * For localization purposes, you can use the provided [translations](/guides/localization/).\n */\n openText: PropTypes.string,\n\n /**\n * Array of options.\n */\n options: PropTypes.array.isRequired,\n\n /**\n * The component used to render the body of the popup.\n */\n PaperComponent: PropTypes.elementType,\n\n /**\n * The component used to position the popup.\n */\n PopperComponent: PropTypes.elementType,\n\n /**\n * The icon to display in place of the default popup icon.\n */\n popupIcon: PropTypes.node,\n\n /**\n * Render the group.\n *\n * @param {any} option The group to render.\n * @returns {ReactNode}\n */\n renderGroup: PropTypes.func,\n\n /**\n * Render the input.\n *\n * @param {object} params\n * @returns {ReactNode}\n */\n renderInput: PropTypes.func.isRequired,\n\n /**\n * Render the option, use `getOptionLabel` by default.\n *\n * @param {T} option The option to render.\n * @param {object} state The state of the component.\n * @returns {ReactNode}\n */\n renderOption: PropTypes.func,\n\n /**\n * Render the selected value.\n *\n * @param {T[]} value The `value` provided to the component.\n * @param {function} getTagProps A tag props getter.\n * @returns {ReactNode}\n */\n renderTags: PropTypes.func,\n\n /**\n * If `true`, the input's text will be selected on focus.\n * It helps the user clear the selected value.\n */\n selectOnFocus: PropTypes.bool,\n\n /**\n * The size of the autocomplete.\n */\n size: PropTypes.oneOf(['medium', 'small']),\n\n /**\n * The value of the autocomplete.\n *\n * The value must have reference equality with the option in order to be selected.\n * You can customize the equality behavior with the `getOptionSelected` prop.\n */\n value: PropTypes.any\n} : void 0;\nexport default withStyles(styles, {\n name: 'MuiAutocomplete'\n})(Autocomplete);","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport * as React from 'react';\nimport clsx from 'clsx';\nimport PropTypes from 'prop-types';\nimport { fade, withStyles } from '@material-ui/core/styles';\nexport var styles = function styles(theme) {\n return {\n /* Styles applied to the root element. */\n root: {\n display: 'block',\n // Create a \"on paper\" color with sufficient contrast retaining the color\n backgroundColor: fade(theme.palette.text.primary, theme.palette.type === 'light' ? 0.11 : 0.13),\n height: '1.2em'\n },\n\n /* Styles applied to the root element if `variant=\"text\"`. */\n text: {\n marginTop: 0,\n marginBottom: 0,\n height: 'auto',\n transformOrigin: '0 60%',\n transform: 'scale(1, 0.60)',\n borderRadius: theme.shape.borderRadius,\n '&:empty:before': {\n content: '\"\\\\00a0\"'\n }\n },\n\n /* Styles applied to the root element if `variant=\"rect\"`. */\n rect: {},\n\n /* Styles applied to the root element if `variant=\"circle\"`. */\n circle: {\n borderRadius: '50%'\n },\n\n /* Styles applied to the root element if `animation=\"pulse\"`. */\n pulse: {\n animation: '$pulse 1.5s ease-in-out 0.5s infinite'\n },\n '@keyframes pulse': {\n '0%': {\n opacity: 1\n },\n '50%': {\n opacity: 0.4\n },\n '100%': {\n opacity: 1\n }\n },\n\n /* Styles applied to the root element if `animation=\"wave\"`. */\n wave: {\n position: 'relative',\n overflow: 'hidden',\n '&::after': {\n animation: '$wave 1.6s linear 0.5s infinite',\n background: \"linear-gradient(90deg, transparent, \".concat(theme.palette.action.hover, \", transparent)\"),\n content: '\"\"',\n position: 'absolute',\n transform: 'translateX(-100%)',\n // Avoid flash during server-side hydration\n bottom: 0,\n left: 0,\n right: 0,\n top: 0\n }\n },\n '@keyframes wave': {\n '0%': {\n transform: 'translateX(-100%)'\n },\n '60%': {\n // +0.5s of delay between each loop\n transform: 'translateX(100%)'\n },\n '100%': {\n transform: 'translateX(100%)'\n }\n },\n\n /* Styles applied when the component is passed children. */\n withChildren: {\n '& > *': {\n visibility: 'hidden'\n }\n },\n\n /* Styles applied when the component is passed children and no width. */\n fitContent: {\n maxWidth: 'fit-content'\n },\n\n /* Styles applied when the component is passed children and no height. */\n heightAuto: {\n height: 'auto'\n }\n };\n};\nvar Skeleton = /*#__PURE__*/React.forwardRef(function Skeleton(props, ref) {\n var _props$animation = props.animation,\n animation = _props$animation === void 0 ? 'pulse' : _props$animation,\n classes = props.classes,\n className = props.className,\n _props$component = props.component,\n Component = _props$component === void 0 ? 'span' : _props$component,\n height = props.height,\n _props$variant = props.variant,\n variant = _props$variant === void 0 ? 'text' : _props$variant,\n width = props.width,\n other = _objectWithoutProperties(props, [\"animation\", \"classes\", \"className\", \"component\", \"height\", \"variant\", \"width\"]);\n\n var hasChildren = Boolean(other.children);\n return /*#__PURE__*/React.createElement(Component, _extends({\n ref: ref,\n className: clsx(classes.root, classes[variant], className, hasChildren && [classes.withChildren, !width && classes.fitContent, !height && classes.heightAuto], animation !== false && classes[animation])\n }, other, {\n style: _extends({\n width: width,\n height: height\n }, other.style)\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? Skeleton.propTypes = {\n /**\n * The animation.\n * If `false` the animation effect is disabled.\n */\n animation: PropTypes.oneOf(['pulse', 'wave', false]),\n\n /**\n * Optional children to infer width and height from.\n */\n children: PropTypes.node,\n\n /**\n * Override or extend the styles applied to the component.\n * See [CSS API](#css) below for more details.\n */\n classes: PropTypes.object.isRequired,\n\n /**\n * @ignore\n */\n className: PropTypes.string,\n\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes\n /* @typescript-to-proptypes-ignore */\n .elementType,\n\n /**\n * Height of the skeleton.\n * Useful when you don't want to adapt the skeleton to a text element but for instance a card.\n */\n height: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n\n /**\n * The type of content that will be rendered.\n */\n variant: PropTypes.oneOf(['text', 'rect', 'circle']),\n\n /**\n * Width of the skeleton.\n * Useful when the skeleton is inside an inline element with no width of its own.\n */\n width: PropTypes.oneOfType([PropTypes.number, PropTypes.string])\n} : void 0;\nexport default withStyles(styles, {\n name: 'MuiSkeleton'\n})(Skeleton);","import MaterialPagination from \"@material-ui/lab/Pagination\";\nimport { makeStyles, Theme } from \"@material-ui/core\";\nimport React from \"react\";\nimport { MyPaginationProps } from \"./Pagination.types\";\nimport { PaginationItem } from \"@material-ui/lab\";\n\n// Style\ninterface StyleProps {}\n\nconst useStyles = makeStyles<Theme, StyleProps>((theme: Theme) => ({\n root: () => ({}),\n ul: {\n \"& li\": {\n width: 24,\n margin: \"0px 2px\",\n },\n },\n itemRoot: {\n // textAlign: \"unset\",\n transition: \"color 250ms ,background-color 250ms \",\n },\n rounded: () => ({\n minWidth: 24,\n width: 24,\n height: 24,\n borderRadius: 5,\n borderColor: theme.black.black500,\n color: theme.black.black800,\n padding: 0,\n fontSize: 11,\n fontWeight: 700,\n lineHeight: 1.4,\n margin: 0,\n \"&:hover\": {\n borderColor: theme.black.black800,\n backgroundColor: theme.black.white,\n },\n }),\n selected: () => ({\n \"&.Mui-selected\": {\n color: theme.black.white,\n backgroundColor: theme.primary.primary400,\n border: \"none\",\n boxShadow: theme.boxShadow.s,\n \"&:hover\": {\n border: \"none\",\n backgroundColor: theme.primary.primary400,\n },\n },\n }),\n ellipsis: {\n minWidth: 24,\n width: 24,\n height: 24,\n margin: 0,\n padding: 0,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n },\n}));\n\nconst Pagination: React.FC<MyPaginationProps> = (props): React.ReactElement => {\n // const theme = useTheme();\n const { ...other } = props;\n const styleProps: StyleProps = {};\n const classes = useStyles(styleProps);\n return (\n <MaterialPagination\n classes={{ root: classes.root, ul: classes.ul }}\n shape=\"rounded\"\n variant=\"outlined\"\n {...other}\n renderItem={(item) => (\n <PaginationItem\n {...item}\n classes={{\n root: classes.itemRoot,\n rounded: classes.rounded,\n selected: classes.selected,\n ellipsis: classes.ellipsis,\n }}\n />\n )}\n />\n );\n};\n\nexport default Pagination;\n","import { makeStyles, Theme, useTheme } from \"@material-ui/core\";\nimport React from \"react\";\nimport Typography from \"../Typography/Typography\";\nimport { ProgressProps } from \"./Progress.types\";\n\n// Style\ninterface StyleProps {\n width: number | string;\n size: number | string;\n // stepCursor: string;\n}\n\nconst useStyles = makeStyles<Theme, StyleProps>((theme: Theme) => ({\n root: (props) => ({\n width: props.width,\n display: \"flex\",\n alignItems: \"flex-start\",\n }),\n step: (props) => ({\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n fontSize: 12,\n lineHeight: 1.4,\n fontWeight: 700,\n width: props.size,\n height: props.size,\n borderRadius: \"50%\",\n // cursor: props.stepCursor,\n }),\n}));\n\nconst Progress: React.FC<ProgressProps> = (props): React.ReactElement => {\n const theme = useTheme();\n const {\n // onClick,\n width,\n size,\n label,\n step,\n count,\n ...other\n } = props;\n const styleProps: StyleProps = {\n width: width ? width : \"100%\",\n size: size ? size : 24,\n // stepCursor: onClick ? \"pointer\" : null,\n };\n const classes = useStyles(styleProps);\n const a = Array.from(Array(count).keys());\n\n return (\n <div className={classes.root} {...other}>\n {a.map((i: number) => {\n return (\n <div\n key={i}\n style={{\n width: \"100%\",\n display: \"flex\",\n flexDirection: \"column\",\n textAlign: \"center\",\n }}\n >\n <div\n style={{\n width: \"100%\",\n display: \"flex\",\n alignItems: \"center\",\n }}\n >\n {/* Front Line */}\n <div\n className={classes.line}\n style={{\n height: 2,\n backgroundColor:\n i !== 0\n ? i + 1 < step\n ? theme.primary.primary800\n : i + 1 === step\n ? theme.primary.primary800\n : theme.black.black500\n : \"transparent\",\n width: `calc((100% - 24px)/2)`,\n }}\n />\n {/* Step Circle */}\n <div\n className={classes.step}\n style={{\n backgroundColor:\n i === step - 1\n ? \"white\"\n : i + 1 < step\n ? theme.primary.primary800\n : theme.black.black600,\n color: i === step - 1 ? theme.primary.primary800 : \"white\",\n border:\n i === step - 1\n ? `2px solid ${theme.primary.primary800}`\n : null,\n boxShadow:\n i === step - 1 ? \"0px 0px 0px 4px #D7DFF8\" : \"unset\",\n }}\n >\n {i + 1}\n </div>\n {/* Back Line */}\n <div\n className={classes.line}\n style={{\n height: 2,\n backgroundColor:\n i + 1 !== count\n ? i + 1 < step\n ? theme.primary.primary800\n : theme.black.black500\n : \"transparent\",\n width: `calc((100% - 24px)/2)`,\n }}\n />\n </div>\n <Typography\n variant=\"caption1\"\n color={i + 1 === step ? \"black1000\" : \"black700\"}\n style={{ marginTop: 8 }}\n >\n {label ? label[i] : null}\n </Typography>\n </div>\n );\n })}\n </div>\n );\n};\n\nexport default Progress;\n","import { fade, InputBase, makeStyles, Popper, Theme } from \"@material-ui/core\";\nimport React, { useEffect } from \"react\";\nimport { MyAutoCompleteProps } from \"./AutoComplete.types\";\nimport { useState } from \"react\";\nimport Typography from \"../Typography/Typography\";\nimport MaterialAutocomplete, {\n AutocompleteCloseReason,\n} from \"@material-ui/lab/Autocomplete\";\n\n// Style\ninterface StyleProps {\n width: string | number;\n optionsMaxHeight: string | number;\n marginTop: string | number;\n marginLeft: string | number;\n}\n\nconst useStyles = makeStyles<Theme, StyleProps>((theme: Theme) => ({\n popper: (props) => ({\n border: \"1px solid #CCCCCC\",\n boxShadow: \" 0px 4px 12px rgba(0, 0, 0, 0.1)\",\n borderRadius: 8,\n width: props.width ? props.width : 320,\n zIndex: 1301,\n fontSize: 13,\n color: \"#586069\",\n backgroundColor: \"#fff\",\n marginTop: props.marginTop,\n marginLeft: props.marginLeft,\n boxSizing: \"border-box\",\n }),\n header: {\n padding: \"16px 16px 8px 16px\",\n fontWeight: 600,\n },\n inputBase: {\n padding: \"0 16px 16px 16px\",\n width: \"100%\",\n borderBottom: \"1px solid #dfe2e5\",\n \"& input\": {\n height: 16,\n borderRadius: 8,\n backgroundColor: theme.palette.common.white,\n padding: \"13px 16px\",\n transition: theme.transitions.create([\"border-color\", \"box-shadow\"]),\n border: \"1px solid #ced4da\",\n fontSize: 14,\n \"&:focus\": {\n boxShadow: `${fade(theme.palette.primary.main, 0.25)} 0 0 0 0.2rem`,\n borderColor: theme.palette.primary.main,\n },\n },\n },\n paper: {\n boxShadow: \"none\",\n margin: 0,\n color: \"#586069\",\n fontSize: 13,\n border: \"none\",\n paddingRight: 5,\n },\n option: {\n fontSize: 14,\n fontWeight: 700,\n minHeight: \"auto\",\n alignItems: \"flex-start\",\n padding: \"8px 16px\",\n color: \"#000\",\n '&[aria-selected=\"true\"]': {\n display: \"none\",\n },\n '&[data-focus=\"true\"]': {\n backgroundColor: theme.primary.primary50,\n color: theme.primary.primary800,\n },\n },\n listbox: (props) => ({\n maxHeight: props.optionsMaxHeight,\n \"&::-webkit-scrollbar\": {\n backgroundColor: \"transparent\",\n width: 5,\n },\n \"&::-webkit-scrollbar-thumb\": {\n backgroundColor: theme.black.black600,\n borderRadius: 100,\n },\n \"&::-webkit-scrollbar-track-piece:start\": {\n marginTop: 12,\n },\n \"&::-webkit-scrollbar-track-piece:end\": {\n marginBottom: 12,\n },\n }),\n popperDisablePortal: {\n position: \"relative\",\n },\n iconSelected: {\n width: 17,\n height: 17,\n marginRight: 5,\n marginLeft: -2,\n },\n color: {\n width: 14,\n height: 14,\n flexShrink: 0,\n marginRight: 8,\n marginTop: 2,\n },\n text: {\n flexGrow: 1,\n fontSize: 14,\n fontWeight: 700,\n },\n close: {\n opacity: 0.6,\n width: 18,\n height: 18,\n },\n selected: {\n minHeight: 52,\n padding: \"16px 16px\",\n display: \"grid\",\n gap: 10,\n alignItems: \"center\",\n gridTemplateColumns: \"auto 20px\",\n backgroundColor: \"transparent\",\n color: theme.primary.primary400,\n fontSize: 14,\n fontWeight: 700,\n lineHeight: 1.4,\n boxShadow: \"inset 0px -1px 0px #ECECEC\",\n },\n noOptionValue: {\n fontSize: 14,\n fontWeight: 700,\n lineHeight: 1.4,\n display: \"flex\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n flexWrap: \"wrap\",\n },\n linkText: {\n color: theme.primary.primary400,\n cursor: \"pointer\",\n \"&:hover\": {\n textDecoration: \"underline\",\n },\n },\n}));\n\nconst AutoComplete: React.FC<MyAutoCompleteProps> = (\n props\n): React.ReactElement => {\n const [noOptionValue, setNoOptionValue] = useState<any>([]);\n const [typeNoOptionValue, setTypeNoOptionValue] = useState(false);\n const {\n open,\n helperText,\n value,\n handleNoOptionsValueChange,\n options,\n placeholder,\n placement,\n title,\n width,\n anchorEl,\n disableFreeInput,\n renderOption,\n getOptionLabel,\n noOptionsText,\n renderInput,\n optionsMaxHeight,\n anchorOrigin,\n addNewOptionsText,\n ...other\n } = props;\n const styleProps: StyleProps = {\n width: width,\n optionsMaxHeight: optionsMaxHeight,\n marginTop: anchorOrigin ? anchorOrigin.vertical : -65,\n marginLeft: anchorOrigin ? anchorOrigin.horizontal : -0,\n };\n\n const classes = useStyles(styleProps);\n const id = open ? \"simple\" : undefined;\n return (\n <div>\n <Popper\n id={id}\n open={open}\n anchorEl={anchorEl}\n placement=\"bottom-start\"\n className={classes.popper}\n >\n <div className={classes.header}>\n <Typography variant=\"caption1\" color=\"black800\">\n {title}\n </Typography>\n </div>\n <MaterialAutocomplete\n {...other}\n classes={{\n paper: classes.paper,\n option: classes.option,\n popperDisablePortal: classes.popperDisablePortal,\n listbox: classes.listbox,\n }}\n open\n options={options}\n renderOption={renderOption}\n getOptionLabel={getOptionLabel}\n noOptionsText={\n disableFreeInput ? (\n \"無此選項\"\n ) : (\n <div className={classes.noOptionValue}>\n {noOptionsText ? noOptionsText : \"無此選項\"}\n <div\n className={classes.linkText}\n onMouseDown={() => {\n handleNoOptionsValueChange(noOptionValue.value);\n }}\n >\n {addNewOptionsText ? addNewOptionsText : \"使用\"} 「\n {noOptionValue.value}」\n </div>\n </div>\n )\n }\n renderInput={\n renderInput\n ? renderInput\n : (params) => {\n useEffect(() => {\n setNoOptionValue(params.inputProps);\n }, [typeNoOptionValue]);\n return (\n <>\n <InputBase\n placeholder={placeholder}\n ref={params.InputProps.ref}\n inputProps={params.inputProps}\n autoFocus\n onChange={() =>\n setTypeNoOptionValue(!typeNoOptionValue)\n }\n className={classes.inputBase}\n />\n {value.length > 0 ? (\n <div className={classes.selected}>\n {value}\n <svg\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 20 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M17.4998 5.83345L7.49984 15.8334L2.9165 11.2501L4.0915 10.0751L7.49984 13.4751L16.3248 4.65845L17.4998 5.83345Z\"\n fill=\"#4862CC\"\n />\n </svg>\n </div>\n ) : null}\n </>\n );\n }\n }\n />\n </Popper>\n </div>\n );\n};\nexport { AutocompleteCloseReason };\n\nexport default AutoComplete;\n","import { useTheme } from \"@material-ui/core\";\nimport React, { useEffect, useState } from \"react\";\nimport AutoComplete, {\n AutocompleteCloseReason,\n} from \"../AutoComplete/AutoComplete\";\nimport MenuItem from \"../Menu/MenuItem\";\nimport TextField from \"../TextField/TextField\";\n\nimport {\n TaxTextFieldProps,\n ExpenseCodeProps,\n IncomeCodeProps,\n} from \"./TaxTextField.types\";\n\nconst TaxTextField: React.FC<TaxTextFieldProps> = ({\n onChange,\n codeValue,\n domainValue,\n domainCodeValue,\n codeError,\n codeHelperText,\n domainError,\n domainHelperText,\n codeOnClick,\n domainOnClick,\n mobile,\n codeFocused,\n domainFocused,\n}) => {\n const [modalIncome, setModalIncome]: any = useState(\"\");\n const [modalExpense, setModalExpense]: any = useState(\"\");\n\n const handleModalTaxDescription = () => {\n try {\n /**呼叫 onChnage props */\n let value = {\n incomeCode: modalIncome,\n expenseCode: modalExpense,\n incomeLabel: SWAPTaxIncomeLabel(modalIncome),\n expenseLabel: SWAPTaxExpenseLabel(modalExpense),\n taxDescription: SWAPTaxDescription(modalIncome, modalExpense),\n expenseCodeAndLabel: modalExpense\n ? `[${modalExpense}] ${SWAPTaxExpenseLabel(modalExpense)}`\n : \"\",\n };\n\n onChange(value);\n } catch (err) {\n console.log(err);\n }\n };\n useEffect(() => {\n if (modalIncome) {\n handleModalTaxDescription();\n }\n }, [modalIncome, modalExpense]);\n\n // 執行業務類別\n const [anchorEl, setAnchorEl] = React.useState<null | HTMLElement>(null);\n\n const handleCodeClick = () => {\n codeOnClick();\n setAnchorEl(null);\n };\n\n const handleDomainClick = (event: React.MouseEvent<HTMLElement>) => {\n setAnchorEl(anchorEl ? null : event.currentTarget);\n if (codeValue) {\n setModalIncome(codeValue);\n }\n domainOnClick();\n };\n\n const handleClose = (\n _event: React.ChangeEvent<{}>,\n reason: AutocompleteCloseReason\n ) => {\n if (reason === \"toggleInput\") {\n return;\n }\n if (anchorEl) {\n anchorEl.focus();\n }\n setAnchorEl(null);\n };\n const theme = useTheme();\n return (\n <div\n style={{\n display: \"flex\",\n flexDirection: mobile ? \"column\" : \"row\",\n alignItems: \"flex-start\",\n justifyContent: \"space-between\",\n }}\n >\n {/* 選擇申報類別 */}\n <div style={{ width: \"100%\" }}>\n <TextField\n focused={codeFocused}\n fullWidth\n select\n error={codeError}\n helperText={codeHelperText}\n height={56}\n label=\"選擇申報類別\"\n value={codeValue}\n onClick={handleCodeClick}\n onChange={(e) => {\n setModalIncome(e.target.value);\n setModalExpense(\"\");\n }}\n >\n <MenuItem\n height={36}\n disabled\n style={{\n fontSize: 12,\n fontWeight: 700,\n lineHeight: 1.4,\n color: \"#4b4b4b\",\n opacity: 1,\n backgroundColor: \"white\",\n }}\n >\n 請選擇申報類別\n </MenuItem>\n {SWAPIncomeTypes.map((option, index) => (\n <MenuItem\n height={36}\n key={`case_${index}`}\n value={option.code}\n style={{\n backgroundColor: modalIncome === option.code ? \"white\" : null,\n opacity: modalIncome === option.code ? 1 : null,\n display: \"flex\",\n justifyContent: \"space-between\",\n flexWrap: \"nowrap\",\n color:\n modalIncome === option.code ? theme.primary.primary400 : null,\n }}\n disabled={modalIncome === option.code}\n iconChildren={\n modalIncome === option.code ? (\n <svg\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 20 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M17.4998 5.83345L7.49984 15.8334L2.9165 11.2501L4.0915 10.0751L7.49984 13.4751L16.3248 4.65845L17.4998 5.83345Z\"\n fill=\"#4862CC\"\n />\n </svg>\n ) : null\n }\n >\n {option.code} {option.label}\n </MenuItem>\n ))}\n </TextField>\n </div>\n {(() => {\n if (codeValue === \"9A\" || codeValue === \"9B\") {\n let options = SWAPExpenseTypes.filter((i) => i.source === codeValue);\n return (\n <div\n style={{\n width: \"100%\",\n margin: mobile ? \"24px 0 0 0 \" : \"0 0 0 8px\",\n }}\n >\n {/* 選擇執行業務類別 */}\n {codeValue === \"9B\" ? (\n // 9B Select\n <TextField\n focused={domainFocused}\n select\n fullWidth\n error={domainError}\n helperText={domainHelperText}\n height={56}\n label=\"輸入執行業務類別\"\n value={domainCodeValue}\n onClick={handleDomainClick}\n onChange={(e: any) => {\n setModalExpense(e.target.value);\n setAnchorEl(null);\n }}\n >\n <MenuItem\n height={36}\n disabled\n style={{\n fontSize: 12,\n fontWeight: 700,\n lineHeight: 1.4,\n color: \"#4b4b4b\",\n opacity: 1,\n backgroundColor: \"white\",\n }}\n >\n 選擇執行業務類別\n </MenuItem>\n {options.map((option, index) => (\n <MenuItem\n height={36}\n key={`case_${index}`}\n value={option.code}\n style={{\n backgroundColor:\n modalExpense === option.code ? \"white\" : null,\n opacity: modalExpense === option.code ? 1 : null,\n display: \"flex\",\n justifyContent: \"space-between\",\n flexWrap: \"nowrap\",\n color:\n modalExpense === option.code\n ? theme.primary.primary400\n : null,\n }}\n disabled={modalExpense === option.code}\n iconChildren={\n modalExpense === option.code ? (\n <svg\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 20 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M17.4998 5.83345L7.49984 15.8334L2.9165 11.2501L4.0915 10.0751L7.49984 13.4751L16.3248 4.65845L17.4998 5.83345Z\"\n fill=\"#4862CC\"\n />\n </svg>\n ) : null\n }\n >\n [{option.code}] {option.label}\n </MenuItem>\n ))}\n </TextField>\n ) : (\n // 9A AutoComplete\n <>\n <TextField\n focused={domainFocused}\n error={domainError}\n helperText={domainHelperText}\n fullWidth\n label=\"輸入執行業務類別\"\n height={56}\n value={domainValue}\n onClick={handleDomainClick}\n InputProps={{\n endAdornment: (\n <div style={{ width: 24, height: 24 }}>\n <svg\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path d=\"M7 10L12 15L17 10H7Z\" fill=\"black\" />\n </svg>\n </div>\n ),\n }}\n />\n <AutoComplete\n fullWidth\n width={mobile ? \"calc(100% - 32px)\" : \"292px\"}\n optionsMaxHeight={150}\n disableFreeInput\n multiple\n disableCloseOnSelect\n disablePortal\n anchorEl={anchorEl}\n open={Boolean(anchorEl)}\n onClose={handleClose}\n onChange={(_: any, newValue: any) => {\n if (newValue[0].code) {\n setModalExpense(newValue.pop().code);\n }\n setAnchorEl(null);\n }}\n value={domainValue}\n options={options}\n placement=\"bottom-start\"\n placeholder=\"輸入執行業務類別\"\n title=\"選擇執行業務類別\"\n renderOption={(option) => {\n return (\n <div>\n [{option.code}] {option.label}\n </div>\n );\n }}\n getOptionLabel={(option) => option.code + option.label}\n />\n </>\n )}\n </div>\n );\n } else {\n return null;\n }\n })()}\n </div>\n );\n};\n\nexport default TaxTextField;\n\nconst SWAPIncomeTypes: Array<{\n code: IncomeCodeProps;\n label: string;\n}> = [\n {\n code: \"9A\",\n label: \"執行業務所得\",\n },\n {\n code: \"9B\",\n label: \"稿費\",\n },\n {\n code: \"50\",\n label: \"薪資所得\",\n },\n];\nconst SWAPExpenseTypes: Array<{\n code: ExpenseCodeProps;\n source: IncomeCodeProps;\n label: string;\n expenseRatio: string;\n}> = [\n { label: \"律師\", expenseRatio: \"30% ~ 50%\", code: \"10\", source: \"9A\" },\n { label: \"會計師\", expenseRatio: \"30%\", code: \"11\", source: \"9A\" },\n { label: \"精算師\", expenseRatio: \"20%\", code: \"12\", source: \"9A\" },\n { label: \"地政士\", expenseRatio: \"30%\", code: \"13\", source: \"9A\" },\n { label: \"記帳士\", expenseRatio: \"30%\", code: \"14\", source: \"9A\" },\n { label: \"仲裁人\", expenseRatio: \"15%\", code: \"15\", source: \"9A\" },\n { label: \"民間公證人\", expenseRatio: \"30%\", code: \"16\", source: \"9A\" },\n { label: \"不動產估價師\", expenseRatio: \"35%\", code: \"17\", source: \"9A\" },\n {\n label: \"受委託代辦國有非公用不動產之承租、續租、過戶及繼承等申請者\",\n expenseRatio: \"30%\",\n code: \"18\",\n source: \"9A\",\n },\n {\n label: \"記帳及報稅代理業人\",\n expenseRatio: \"30%\",\n code: \"19\",\n source: \"9A\",\n },\n { label: \"技師\", expenseRatio: \"35%\", code: \"20\", source: \"9A\" },\n { label: \"建築師\", expenseRatio: \"35%\", code: \"21\", source: \"9A\" },\n { label: \"公共安檢人員\", expenseRatio: \"35%\", code: \"22\", source: \"9A\" },\n {\n label: \"未具會計師資格,辦理工商登記等業務者\",\n expenseRatio: \"30%\",\n code: \"23\",\n source: \"9A\",\n },\n { label: \"工匠(工資收入)\", expenseRatio: \"20%\", code: \"24\", source: \"9A\" },\n { label: \"工匠(工料收入)\", expenseRatio: \"62%\", code: \"25\", source: \"9A\" },\n { label: \"引水人\", expenseRatio: \"25%\", code: \"26\", source: \"9A\" },\n { label: \"內科醫師\", expenseRatio: \"40%\", code: \"30\", source: \"9A\" },\n { label: \"外科醫師\", expenseRatio: \"45%\", code: \"31\", source: \"9A\" },\n { label: \"小兒科醫師\", expenseRatio: \"40%\", code: \"32\", source: \"9A\" },\n { label: \"婦產科醫師\", expenseRatio: \"45%\", code: \"33\", source: \"9A\" },\n { label: \"眼科醫師\", expenseRatio: \"40%\", code: \"34\", source: \"9A\" },\n { label: \"耳鼻喉科醫師\", expenseRatio: \"40%\", code: \"35\", source: \"9A\" },\n { label: \"牙科醫師\", expenseRatio: \"40%\", code: \"36\", source: \"9A\" },\n { label: \"精神科醫師\", expenseRatio: \"46%\", code: \"37\", source: \"9A\" },\n { label: \"骨科醫師\", expenseRatio: \"45%\", code: \"38\", source: \"9A\" },\n { label: \"其他科別醫師\", expenseRatio: \"43%\", code: \"39\", source: \"9A\" },\n {\n label: \"助產師(士)\",\n expenseRatio: \"31% ~ 72%\",\n code: \"40\",\n source: \"9A\",\n },\n { label: \"藥師\", expenseRatio: \"20% ~ 100%\", code: \"41\", source: \"9A\" },\n {\n label: \"醫事檢驗師(生)\",\n expenseRatio: \"43% ~ 78%\",\n code: \"42\",\n source: \"9A\",\n },\n { label: \"整合照護\", expenseRatio: \"0%\", code: \"43\", source: \"9A\" },\n { label: \"駐診拆帳西醫\", expenseRatio: \"0%\", code: \"44\", source: \"9A\" },\n { label: \"營養師\", expenseRatio: \"20%\", code: \"45\", source: \"9A\" },\n {\n label: \"醫療機構醫師經核准前往他醫療機構從事醫療業務且不具僱傭關係者\",\n expenseRatio: \"10%\",\n code: \"46\",\n source: \"9A\",\n },\n { label: \"獸醫師\", expenseRatio: \"32% ~ 40%\", code: \"47\", source: \"9A\" },\n { label: \"皮膚科醫師\", expenseRatio: \"40%\", code: \"48\", source: \"9A\" },\n { label: \"家庭醫學科醫師\", expenseRatio: \"40%\", code: \"49\", source: \"9A\" },\n { label: \"中醫師\", expenseRatio: \"20% ~ 78%\", code: \"50\", source: \"9A\" },\n { label: \"語言治療師\", expenseRatio: \"20% ~ 78%\", code: \"51\", source: \"9A\" },\n { label: \"人壽保險醫療檢查\", expenseRatio: \"35%\", code: \"52\", source: \"9A\" },\n { label: \"物理治療師\", expenseRatio: \"43% ~ 78%\", code: \"53\", source: \"9A\" },\n { label: \"職能治療師\", expenseRatio: \"43% ~ 78%\", code: \"54\", source: \"9A\" },\n { label: \"心理師\", expenseRatio: \"20%\", code: \"55\", source: \"9A\" },\n { label: \"牙體技術師\", expenseRatio: \"40%\", code: \"56\", source: \"9A\" },\n {\n label:\n \"西醫師(配合政府政策辦理老人、兒童、婦女、中低收入者、身心障礙者及其他特定對象補助計畫之業務收入)\",\n expenseRatio: \"78%\",\n code: \"57\",\n source: \"9A\",\n },\n {\n label: \"西醫師(自費疫苗注射收入)\",\n expenseRatio: \"78%\",\n code: \"58\",\n source: \"9A\",\n },\n {\n label: \"西醫師(C型肝炎全口服新藥健保給付收入)\",\n expenseRatio: \"96%\",\n code: \"59\",\n source: \"9A\",\n },\n { label: \"書畫家、版畫家\", expenseRatio: \"30%\", code: \"61\", source: \"9A\" },\n { label: \"命理卜卦\", expenseRatio: \"20%\", code: \"62\", source: \"9A\" },\n {\n label:\n \"表演人(演員、歌手、模特兒、節目主持人、舞蹈表演人、相聲表演人、特技表演人、樂器表演人、魔術表演人、其他表演人)\",\n expenseRatio: \"45%\",\n code: \"70\",\n source: \"9A\",\n },\n { label: \"保險經紀人\", expenseRatio: \"26%\", code: \"71\", source: \"9A\" },\n { label: \"節目製作人\", expenseRatio: \"45%\", code: \"72\", source: \"9A\" },\n {\n label: \"公益彩券立即型彩券經銷商\",\n expenseRatio: \"60%\",\n code: \"73\",\n source: \"9A\",\n },\n { label: \"一般經紀人\", expenseRatio: \"20%\", code: \"76\", source: \"9A\" },\n { label: \"其他\", expenseRatio: \"0%\", code: \"90\", source: \"9A\" },\n { label: \"商標代理人\", expenseRatio: \"30%\", code: \"91\", source: \"9A\" },\n { label: \"程式設計師\", expenseRatio: \"20%\", code: \"92\", source: \"9A\" },\n { label: \"專利代理人\", expenseRatio: \"30%\", code: \"93\", source: \"9A\" },\n {\n label: \"未具律師資格,辦理訴訟代理人業務\",\n expenseRatio: \"23%\",\n code: \"94\",\n source: \"9A\",\n },\n {\n label: \"未具建築師資格,辦理建築規劃設計及監造等業務者\",\n expenseRatio: \"35%\",\n code: \"95\",\n source: \"9A\",\n },\n {\n label: \"未具地政士資格,辦理土地登記等業務者\",\n expenseRatio: \"30%\",\n code: \"96\",\n source: \"9A\",\n },\n {\n label: \"受大陸地區人民委託辦理繼承、公法給付或其他事務者\",\n expenseRatio: \"23%\",\n code: \"97\",\n source: \"9A\",\n },\n { label: \"自行出版\", expenseRatio: \"30%\", code: \"99\", source: \"9B\" },\n { label: \"非自行出版\", expenseRatio: \"75%\", code: \"98\", source: \"9B\" },\n];\n\nconst SWAPTaxIncomeLabel = (incomeCode: IncomeCodeProps) => {\n if (incomeCode) {\n return (\n SWAPIncomeTypes.filter((type) => type.code === incomeCode)[0]?.label || \"\"\n );\n } else {\n return \"\";\n }\n};\n\nconst SWAPTaxExpenseLabel = (expenseCode: ExpenseCodeProps) => {\n if (expenseCode) {\n return (\n SWAPExpenseTypes.filter((type) => type.code === expenseCode)[0]?.label ||\n \"\"\n );\n } else {\n return \"\";\n }\n};\n\nconst SWAPTaxDescription = (\n incomeCode: IncomeCodeProps,\n expenseCode: ExpenseCodeProps\n) => {\n let incomeLabel = SWAPTaxIncomeLabel(incomeCode);\n let expenseLabel = SWAPTaxExpenseLabel(expenseCode);\n let taxDescription = `${incomeCode} ${incomeLabel}${\n expenseLabel.length > 0 ? ` - [${expenseCode}] ${expenseLabel}` : \"\"\n }`;\n if (incomeCode && expenseCode) {\n /**執行業務 */\n return taxDescription;\n } else if (incomeCode === \"50\") {\n /**薪資 */\n return `${incomeCode} ${incomeLabel}`;\n } else {\n return \"\";\n }\n};\n\nexport {\n SWAPIncomeTypes,\n SWAPExpenseTypes,\n SWAPTaxIncomeLabel,\n SWAPTaxExpenseLabel,\n SWAPTaxDescription,\n};\n\n/**\n * 邏輯設定\n * 1. 所得類別為 9A, 9B 時,費用類別為必填\n * 2. 費用類別中的選項會依據,所得類別為 9A, 9B 而有所不同\n * 3. 所得類別為50薪資時不會有費用類別\n */\n","import { makeStyles, Theme } from \"@material-ui/core\";\nimport React from \"react\";\nimport { MySkeletonProps } from \"./Skeleton.types\";\nimport MaterialSkeleton from \"@material-ui/lab/Skeleton\";\n\n// Style\ninterface StyleProps {}\n\nconst useStyles = makeStyles<Theme, StyleProps>((theme: Theme) => ({\n root: (props) => ({\n backgroundColor: theme.black.black400,\n transform: \"unset\",\n }),\n}));\n\nconst Skeleton: React.FC<MySkeletonProps> = (props): React.ReactElement => {\n const { ...other } = props;\n const styleProps: StyleProps = {};\n const classes = useStyles(styleProps);\n return <MaterialSkeleton classes={{ root: classes.root }} {...other} />;\n};\n\nexport default Skeleton;\n","import MaterialSelect from \"@material-ui/core/Select\";\nimport React from \"react\";\nimport { DropdownProps } from \"./Dropdown.types\";\nimport {\n FormControl,\n FormHelperText,\n makeStyles,\n OutlinedInput,\n Theme,\n} from \"@material-ui/core\";\n\n// Style\ninterface StyleProps {\n height: number;\n width: string | number;\n}\n\nconst useOutlinedInputStyles = makeStyles((theme: Theme) => ({\n root: {\n \"& $notchedOutline\": {\n borderColor: theme.black.black500,\n },\n \"&:hover\": {\n borderColor: theme.black.black1000,\n \"& svg\": {\n color: theme.black.black1000,\n },\n },\n \"&$focused $notchedOutline\": {\n borderColor: theme.black.black1000,\n borderWidth: 1,\n },\n },\n focused: {\n \"& svg\": {\n color: theme.black.black1000,\n },\n },\n notchedOutline: {},\n}));\n\nconst useStyles = makeStyles<Theme, StyleProps>((theme: Theme) => ({\n root: (props) => ({\n //SWAPTheme調整\n width: props.width ? props.width : \"100%\",\n }),\n inputRoot: (props) => ({\n height: props.height\n ? props.height >= 56\n ? props.height - 38\n : props.height - 24\n : 16,\n display: \"flex\",\n alignItems: \"center\",\n padding: props.height >= 56 ? \"19px 8px 19px 24px\" : \"12px 4px 12px 16px\",\n fontSize: props.height >= 56 ? 16 : 14,\n lineHeight: props.height >= 56 ? \"18px\" : \"15.75px\",\n fontWeight: 700,\n color: theme.black.black800,\n \"&:hover\": {\n color: theme.black.black1000,\n backgroundColor: \"white\",\n fontWeight: 700,\n },\n \"&:focus-visible\": {\n color: theme.black.black1000,\n backgroundColor: \"white\",\n fontWeight: 700,\n },\n }),\n icon: {\n marginTop: 2,\n width: 20,\n height: 20,\n color: theme.black.black800,\n },\n menuRoot: {\n marginTop: 8,\n },\n}));\n\nconst Dropdown: React.FC<DropdownProps> = (props): React.ReactElement => {\n const {\n children,\n formControlStyle,\n inputProps,\n MenuProps,\n helperText,\n width,\n height,\n helperTextStyle,\n ...other\n } = props;\n const styleProps: StyleProps = {\n width: width,\n height: height,\n };\n const classes = useStyles(styleProps);\n const outlinedInputClasses = useOutlinedInputStyles();\n return (\n <FormControl\n variant=\"outlined\"\n style={formControlStyle}\n classes={{ root: classes.root }}\n >\n <MaterialSelect\n {...other}\n classes={{\n icon: classes.icon,\n }}\n input={<OutlinedInput classes={outlinedInputClasses} />}\n inputProps={{\n classes: { root: classes.inputRoot },\n ...inputProps,\n }}\n MenuProps={{\n classes: { paper: classes.menuRoot },\n getContentAnchorEl: null,\n ...MenuProps,\n }}\n >\n {children}\n </MaterialSelect>\n <FormHelperText style={helperTextStyle}>{helperText}</FormHelperText>\n </FormControl>\n );\n};\n\nexport default Dropdown;\n","import React, { useEffect, useRef, useState } from \"react\";\nimport { RadioListProps } from \"./RadioList.types\";\nimport { makeStyles, Theme } from \"@material-ui/core\";\nimport RadioButton from \"./RadioButton\";\nimport Typography from \"../Typography/Typography\";\n// Style\ninterface StyleProps {\n checked: boolean;\n width: string | number;\n height: string | number;\n multiline: boolean;\n line: boolean;\n}\nconst useStyles = makeStyles<Theme, StyleProps>((theme: Theme) => ({\n root: (props) => ({\n width: props.width\n ? props.width\n : props.multiline\n ? 240\n : props.line\n ? 342\n : 327,\n height: props.height\n ? props.height\n : props.multiline\n ? 69\n : props.line\n ? 76\n : 54,\n padding: props.line ? \"16px\" : props.multiline ? \"12px 16px\" : \"15px 16px\",\n border: props.checked\n ? `1px solid ${theme.primary.primary400}`\n : `1px solid ${theme.black.black500}`,\n boxSizing: \"border-box\",\n borderRadius: 8,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n cursor: \"pointer\",\n backgroundColor: props.checked ? theme.primary.primary50 : \"white\",\n \"-webkit-tap-highlight-color\": \"transparent\",\n \"&:hover\": {\n backgroundColor: props.checked\n ? theme.primary.primary50\n : theme.black.black100,\n border: props.checked\n ? `1px solid ${theme.primary.primary400}`\n : `1px solid ${theme.black.black600}`,\n },\n }),\n}));\n\nconst RadioList: React.FC<RadioListProps> = (props) => {\n const {\n width,\n height,\n title,\n subtitle,\n multiline,\n checked,\n line,\n ...other\n } = props;\n const styleProps: StyleProps = {\n checked: checked,\n multiline: multiline,\n width: width,\n height: height,\n line: line,\n };\n const classes = useStyles(styleProps);\n const [lineHeight, setLineHeight] = useState(0);\n const ref = useRef(null);\n useEffect(() => {\n if (ref.current) {\n if (ref.current.offsetHeight > 44) {\n setLineHeight(ref.current.offsetHeight);\n } else {\n setLineHeight(44);\n }\n }\n }, []);\n return (\n <div className={classes.root} {...other}>\n <div\n style={{\n display: \"flex\",\n alignItems: \"center\",\n }}\n >\n <RadioButton\n disableHover\n checked={Boolean(checked)}\n style={{ marginLeft: 4 }}\n />\n {line ? (\n <div\n style={{\n display: \"flex\",\n alignItems: \"center\",\n marginLeft: 4,\n }}\n >\n <Typography\n variant=\"title\"\n style={{\n maxWidth: 56,\n minWidth: 56,\n textAlign: \"center\",\n wordBreak: \"break-word\",\n }}\n >\n {title}\n </Typography>\n <div\n style={{\n height: lineHeight,\n width: 1,\n margin: \"0 12px\",\n backgroundColor: \"#909090\",\n }}\n />\n <div ref={ref}>\n <Typography\n variant=\"body2_loose\"\n color=\"black800\"\n style={{\n width: \"100%\",\n wordBreak: \"break-word\",\n }}\n >\n {subtitle}\n </Typography>\n </div>\n </div>\n ) : (\n <div style={{ display: \"flex\", flexDirection: \"column\" }}>\n <Typography variant=\"title\">{title}</Typography>\n {multiline ? (\n <Typography variant=\"body2_loose\" color=\"black800\">\n {subtitle}\n </Typography>\n ) : null}\n </div>\n )}\n </div>\n {!multiline && !line ? (\n <Typography variant=\"body2_loose\" color=\"black800\">\n {subtitle}\n </Typography>\n ) : null}\n </div>\n );\n};\n\nexport default RadioList;\n","import React, { useEffect, useRef, useState } from \"react\";\nimport { CheckBoxListProps } from \"./CheckBoxList.types\";\nimport { makeStyles, Theme } from \"@material-ui/core\";\nimport CheckBox from \"./CheckBox\";\nimport Typography from \"../Typography/Typography\";\n// Style\ninterface StyleProps {\n checked: boolean;\n width: string | number;\n height: string | number;\n multiline: boolean;\n line: boolean;\n}\nconst useStyles = makeStyles<Theme, StyleProps>((theme: Theme) => ({\n root: (props) => ({\n width: props.width\n ? props.width\n : props.multiline\n ? 240\n : props.line\n ? 342\n : 327,\n height: props.height\n ? props.height\n : props.multiline\n ? 69\n : props.line\n ? 76\n : 54,\n padding: props.line ? \"16px\" : props.multiline ? \"12px 16px\" : \"15px 16px\",\n border: props.checked\n ? `1px solid ${theme.primary.primary400}`\n : `1px solid ${theme.black.black500}`,\n boxSizing: \"border-box\",\n borderRadius: 8,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n cursor: \"pointer\",\n backgroundColor: props.checked ? theme.primary.primary50 : \"white\",\n \"-webkit-tap-highlight-color\": \"transparent\",\n \"&:hover\": {\n backgroundColor: props.checked\n ? theme.primary.primary50\n : theme.black.black100,\n border: props.checked\n ? `1px solid ${theme.primary.primary400}`\n : `1px solid ${theme.black.black600}`,\n },\n }),\n}));\n\nconst CheckBoxList: React.FC<CheckBoxListProps> = (props) => {\n const {\n width,\n height,\n title,\n subtitle,\n multiline,\n checked,\n line,\n ...other\n } = props;\n const styleProps: StyleProps = {\n checked: checked,\n multiline: multiline,\n width: width,\n height: height,\n line: line,\n };\n const classes = useStyles(styleProps);\n const [lineHeight, setLineHeight] = useState(0);\n const ref = useRef(null);\n useEffect(() => {\n if (ref.current) {\n if (ref.current.offsetHeight > 44) {\n setLineHeight(ref.current.offsetHeight);\n } else {\n setLineHeight(44);\n }\n }\n }, []);\n return (\n <div className={classes.root} {...other}>\n <div\n style={{\n display: \"flex\",\n alignItems: \"center\",\n }}\n >\n <CheckBox\n disableHover\n checked={Boolean(checked)}\n style={{ marginLeft: 4 }}\n />\n {line ? (\n <div\n style={{\n display: \"flex\",\n alignItems: \"center\",\n marginLeft: 4,\n }}\n >\n <Typography\n variant=\"title\"\n style={{\n minWidth: 56,\n maxWidth: 56,\n textAlign: \"center\",\n wordBreak: \"break-word\",\n }}\n >\n {title}\n </Typography>\n <div\n style={{\n height: lineHeight,\n width: 1,\n margin: \"0 12px\",\n backgroundColor: \"#909090\",\n }}\n />\n <div ref={ref}>\n <Typography\n variant=\"body2_loose\"\n color=\"black800\"\n style={{\n width: \"100%\",\n wordBreak: \"break-word\",\n }}\n >\n {subtitle}\n </Typography>\n </div>\n </div>\n ) : (\n <div style={{ display: \"flex\", flexDirection: \"column\" }}>\n <Typography variant=\"title\">{title}</Typography>\n {multiline ? (\n <Typography variant=\"body2_loose\" color=\"black800\">\n {subtitle}\n </Typography>\n ) : null}\n </div>\n )}\n </div>\n {!multiline && !line ? (\n <Typography variant=\"body2_loose\" color=\"black800\">\n {subtitle}\n </Typography>\n ) : null}\n </div>\n );\n};\n\nexport default CheckBoxList;\n","import { makeStyles, Theme, useTheme } from \"@material-ui/core\";\nimport MaterialLink from \"@material-ui/core/Link\";\nimport React from \"react\";\nimport { MyLinkProps } from \"./Link.types\";\n\n// Style\ninterface StyleProps {\n color: string;\n}\n\nconst useStyles = makeStyles<Theme, StyleProps>((theme: Theme) => ({\n root: (props) => ({\n cursor: \"pointer\",\n color: props.color,\n fontWeight: 700,\n borderRadius: 4,\n lineHeight: 1.4,\n outline: \"none\",\n boxSizing: \"border-box\",\n }),\n focusVisible: {\n boxSizing: \"border-box\",\n outline: \"none\",\n padding: 8,\n border: `1px solid ${theme.primary.primary400}`,\n },\n}));\n\nconst Link: React.FC<MyLinkProps> = (props): React.ReactElement => {\n const { color, ...other } = props;\n const theme = useTheme();\n const styleProps: StyleProps = {\n color:\n color === \"primary50\"\n ? theme.primary.primary50\n : color === \"primary100\"\n ? theme.primary.primary100\n : color === \"primary200\"\n ? theme.primary.primary200\n : color === \"primary300\"\n ? theme.primary.primary300\n : color === \"primary400\"\n ? theme.primary.primary400\n : color === \"primary500\"\n ? theme.primary.primary500\n : color === \"primary600\"\n ? theme.primary.primary600\n : color === \"primary700\"\n ? theme.primary.primary700\n : color === \"primary800\"\n ? theme.primary.primary800\n : color === \"primary900\"\n ? theme.primary.primary900\n : color === \"primaryA11y\"\n ? theme.primary.primaryA11y\n : color === \"secondary50\"\n ? theme.secondary.secondary50\n : color === \"secondary100\"\n ? theme.secondary.secondary100\n : color === \"secondary200\"\n ? theme.secondary.secondary200\n : color === \"secondary300\"\n ? theme.secondary.secondary300\n : color === \"secondary400\"\n ? theme.secondary.secondary400\n : color === \"secondary500\"\n ? theme.secondary.secondary500\n : color === \"secondary600\"\n ? theme.secondary.secondary600\n : color === \"secondary700\"\n ? theme.secondary.secondary700\n : color === \"secondary800\"\n ? theme.secondary.secondary800\n : color === \"secondary900\"\n ? theme.secondary.secondary900\n : color === \"secondaryA11y\"\n ? theme.secondary.secondaryA11y\n : color === \"danger50\"\n ? theme.danger.danger50\n : color === \"danger100\"\n ? theme.danger.danger100\n : color === \"danger200\"\n ? theme.danger.danger200\n : color === \"danger300\"\n ? theme.danger.danger300\n : color === \"danger400\"\n ? theme.danger.danger400\n : color === \"danger500\"\n ? theme.danger.danger500\n : color === \"danger600\"\n ? theme.danger.danger600\n : color === \"danger700\"\n ? theme.danger.danger700\n : color === \"danger800\"\n ? theme.danger.danger800\n : color === \"danger900\"\n ? theme.danger.danger900\n : color === \"dangerA11y\"\n ? theme.danger.dangerA11y\n : color === \"success50\"\n ? theme.success.success50\n : color === \"success100\"\n ? theme.success.success100\n : color === \"success200\"\n ? theme.success.success200\n : color === \"success300\"\n ? theme.success.success300\n : color === \"success400\"\n ? theme.success.success400\n : color === \"success500\"\n ? theme.success.success500\n : color === \"success600\"\n ? theme.success.success600\n : color === \"success700\"\n ? theme.success.success700\n : color === \"success800\"\n ? theme.success.success800\n : color === \"success900\"\n ? theme.success.success900\n : color === \"successA11y\"\n ? theme.success.successA11y\n : color === \"white\"\n ? theme.black.white\n : color === \"black100\"\n ? theme.black.black100\n : color === \"black200\"\n ? theme.black.black200\n : color === \"black300\"\n ? theme.black.black300\n : color === \"black400\"\n ? theme.black.black400\n : color === \"black500\"\n ? theme.black.black500\n : color === \"black600\"\n ? theme.black.black600\n : color === \"black700\"\n ? theme.black.black700\n : color === \"black800\"\n ? theme.black.black800\n : color === \"black900\"\n ? theme.black.black900\n : color === \"black1000\"\n ? theme.black.black1000\n : theme.black.black1000,\n };\n const classes = useStyles(styleProps);\n\n return (\n <MaterialLink\n classes={{\n root: classes.root,\n focusVisible: classes.focusVisible,\n underlineHover: classes.underlineHover,\n }}\n tabIndex={0}\n {...other}\n />\n );\n};\n\nexport default Link;\n","import { makeStyles, Theme, useMediaQuery } from \"@material-ui/core\";\nimport MaterialPaper from \"@material-ui/core/Paper\";\nimport React from \"react\";\nimport { MyPaperProps } from \"./Paper.types\";\n\n// Style\ninterface StyleProps {\n width: string | number;\n height: string | number;\n matchSM: boolean;\n matchXS: boolean;\n}\n\nconst useStyles = makeStyles<Theme, StyleProps>((theme: Theme) => ({\n root: (props) => ({\n boxShadow: theme.boxShadow.xl,\n borderRadius: 12,\n border: `1px solid ${theme.black.black500}`,\n width: props.width,\n height: props.height,\n padding: props.matchSM ? 40 : props.matchXS ? 24 : 16,\n }),\n}));\n\nconst Paper: React.FC<MyPaperProps> = (props): React.ReactElement => {\n const { height, width, ...other } = props;\n const matchSM = useMediaQuery(\"(min-width:576px)\");\n const matchXS = useMediaQuery(\"(min-width:375px)\");\n const styleProps: StyleProps = {\n height: height ? height : \"100%\",\n width: width ? width : \"100%\",\n matchSM: matchSM,\n matchXS: matchXS,\n };\n const classes = useStyles(styleProps);\n\n return (\n <MaterialPaper\n variant=\"outlined\"\n classes={{\n root: classes.root,\n }}\n {...other}\n />\n );\n};\n\nexport default Paper;\n","import { Fade, makeStyles, Theme } from \"@material-ui/core\";\nimport MaterialSwitch from \"@material-ui/core/Switch\";\nimport React from \"react\";\nimport { MySwitchProps } from \"./Switch.types\";\n\n// Style\ninterface StyleProps {\n disabled: boolean;\n}\n\nconst useStyles = makeStyles<Theme, StyleProps>((theme: Theme) => ({\n root: {\n width: 40,\n height: 24,\n padding: 0,\n },\n switchBase: {\n padding: 2,\n transition:\n \"left 200ms cubic-bezier(0.4, 0, 0.2, 1) 0ms,transform 200ms cubic-bezier(0.4, 0, 0.2, 1) 0ms\",\n \"&$checked\": {\n transform: \"translateX(16px)\",\n \"& + $track\": {\n border: `1px solid ${theme.primary.primary800}`,\n backgroundColor: theme.primary.primary400,\n opacity: 1,\n },\n \"&:hover + $track\": {\n backgroundColor: theme.primary.primary600,\n },\n },\n \"&:hover + $track\": {\n backgroundColor: theme.black.black800,\n },\n \"&.Mui-disabled + $track\": {\n opacity: 1,\n border: `1px solid ${theme.black.black800}`,\n backgroundColor: theme.black.black600,\n },\n },\n thumb: {\n width: 20,\n height: 20,\n backgroundColor: \"white\",\n boxShadow: \"0px 2px 2px rgba(0, 0, 0, 0.15)\",\n },\n track: {\n borderRadius: 24 / 2,\n border: `1px solid ${theme.black.black800}`,\n backgroundColor: theme.black.black600,\n opacity: 1,\n transition: \"all 200ms ease-out\",\n },\n checked: {},\n switchOutBlock: (props) => ({\n width: \"fit-content\",\n borderRadius: 24 / 2,\n \"&:focus-visible\": {\n boxShadow: props.disabled ? \"unset\" : \"0px 0px 0px 4px #D7DFF8\",\n outline: \"none\",\n },\n opacity: props.disabled ? 0.4 : 1,\n }),\n checkedIcon: {\n width: 20,\n height: 20,\n display: \"flex\",\n justifyContent: \"center\",\n alignItems: \"center\",\n backgroundColor: \"white\",\n borderRadius: \"50%\",\n boxShadow: \"0px 2px 2px rgba(0, 0, 0, 0.15)\",\n },\n}));\n\nconst Switch: React.FC<MySwitchProps> = (props): React.ReactElement => {\n const { disabled, ...other } = props;\n const styleProps: StyleProps = { disabled: disabled };\n const classes = useStyles(styleProps);\n\n return (\n <div className={classes.switchOutBlock} tabIndex={0}>\n <MaterialSwitch\n disabled={disabled}\n tabIndex={0}\n disableRipple\n classes={{\n root: classes.root,\n switchBase: classes.switchBase,\n thumb: classes.thumb,\n track: classes.track,\n checked: classes.checked,\n }}\n checkedIcon={\n <div className={classes.checkedIcon}>\n <Fade in timeout={{ enter: 200, exit: 200 }}>\n <svg\n width=\"12\"\n height=\"12\"\n viewBox=\"0 0 12 12\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M4.5 10.21L1.395 7.105L2.81 5.69L4.5 7.385L9.44 2.44L10.855 3.855L4.5 10.21Z\"\n fill=\"#4862CC\"\n />\n </svg>\n </Fade>\n </div>\n }\n {...other}\n />\n </div>\n );\n};\n\nexport default Switch;\n","import { Grow, makeStyles, Theme, useTheme } from \"@material-ui/core\";\nimport React, { useEffect, useState } from \"react\";\nimport { Modal } from \"..\";\nimport IconButton from \"../IconButton/IconButton\";\nimport Typography from \"../Typography/Typography\";\nimport { DatePickerProps } from \"./DatePicker.types\";\n\n// Style\ninterface StyleForMonthButtonProps {\n selected: boolean;\n}\n\nconst useStylesForMonthButton = makeStyles<Theme, StyleForMonthButtonProps>(\n (theme: Theme) => ({\n root: (props) => ({\n width: \"100%\",\n height: \"100%\",\n borderRadius: 8,\n border: props.selected\n ? `1px solid ${theme.primary.primary300}`\n : `1px solid ${theme.black.black500}`,\n boxSizing: \"border-box\",\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n fontSize: 14,\n fontWeight: 700,\n lineHeight: 1.4,\n backgroundColor: props.selected\n ? theme.primary.primary50\n : theme.black.white,\n cursor: \"pointer\",\n \"&:hover\": {\n border: props.selected\n ? `1px solid ${theme.primary.primary300}`\n : `1px solid ${theme.black.black600}`,\n backgroundColor: props.selected\n ? theme.primary.primary50\n : theme.black.black100,\n },\n }),\n })\n);\n\nconst useStylesForCalendar = makeStyles((theme: Theme) => ({\n head: {\n width: \"100%\",\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n height: 48,\n fontSize: 14,\n fontWeight: 700,\n marginBottom: 8,\n position: \"relative\",\n },\n body: {\n display: \"grid\",\n gridTemplateColumns: \"1fr 1fr 1fr 1fr 1fr 1fr 1fr\",\n gap: 8,\n },\n days: {\n width: 32,\n height: 32,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n fontSize: 14,\n color: theme.black.black600,\n },\n date: {\n width: 32,\n height: 32,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n marginBottom: 4,\n fontSize: 14,\n fontWeight: 700,\n color: theme.black.black800,\n cursor: \"pointer\",\n borderRadius: \"50%\",\n \"&:hover\": {\n backgroundColor: theme.primary.primary50,\n },\n },\n}));\n\nconst DatePicker: React.FC<DatePickerProps> = (props): React.ReactElement => {\n const {\n open,\n onClose,\n format,\n mobile,\n min,\n max,\n ModalProps,\n defaultValue,\n getValue,\n value,\n ...other\n } = props;\n const [year, setYear] = useState(Number(new Date().getFullYear()));\n const [month, setMonth] = useState(Number(new Date().getMonth() + 1));\n const [nextMonth, setNextMonth] = useState(Number(new Date().getMonth() + 2));\n const [date, setDate] = useState(\"\");\n const [isOpenMonthSelector, setIsOpenMonthSelector] = useState(false);\n const [isClicked, setIsClicked] = useState(false);\n\n useEffect(() => {\n if (month === 12) {\n setNextMonth(1);\n }\n }, []);\n\n useEffect(() => {\n if (format === \"month\") {\n if (month % 2 === 0) {\n setMonth(month - 1);\n } else {\n if (month < 1) {\n setMonth(11);\n setYear(year - 1);\n }\n if (month > 12) {\n setMonth(1);\n setYear(year + 1);\n }\n }\n }\n }, [month]);\n\n useEffect(() => {\n if (isClicked && getValue) {\n if (format === \"month\") {\n if (month < 1) {\n getValue(`${year - 1}-11`);\n } else if (month > 12) {\n getValue(`${year + 1}-1`);\n } else {\n getValue(`${year}-${month}`);\n }\n } else if (format === \"day\") {\n getValue(date.replace(/\\//g, \"-\"));\n } else {\n getValue(String(year));\n }\n setIsClicked(false);\n }\n }, [isClicked]);\n\n useEffect(() => {\n if (value) {\n setDate(changeDateFormatToSlash(value));\n }\n }, [value]);\n\n return (\n <div {...other}>\n {format !== \"day\" ? (\n <div\n style={{\n borderRadius: 8,\n border: \"1px solid #cccccc\",\n boxSizing: \"border-box\",\n width: format === \"month\" ? 219 : 180,\n height: 40,\n display: \"grid\",\n alignItems: \"center\",\n gridTemplateColumns: \"36px 1px 1fr 1px 36px\",\n position: \"relative\",\n }}\n >\n <IconButton\n onClick={() => {\n if (format === \"month\") {\n setMonth(month - 2);\n } else {\n setYear(year - 1);\n }\n setIsClicked(true);\n }}\n style={{\n width: \"100%\",\n height: \"100%\",\n display: \"flex\",\n justifyContent: \"center\",\n alignItems: \"center\",\n borderRadius: \"8px 0 0 8px\",\n }}\n >\n {icon_arrowleft}\n </IconButton>\n {verticalline}\n <div\n style={{\n display: \"flex\",\n justifyContent: \"center\",\n alignItems: \"center\",\n }}\n >\n {icon_calendar}\n {format === \"month\" ? (\n <div\n style={{\n fontSize: 14,\n fontWeight: 700,\n lineHeight: 1.4,\n marginLeft: 4,\n cursor: \"pointer\",\n }}\n onClick={() => setIsOpenMonthSelector(!isOpenMonthSelector)}\n >\n {year}年{month}-{month + 1}月\n </div>\n ) : (\n <div\n style={{\n fontSize: 14,\n fontWeight: 700,\n lineHeight: 1.4,\n marginLeft: 4,\n }}\n >\n {year}年\n </div>\n )}\n </div>\n {verticalline}\n <IconButton\n onClick={() => {\n if (format === \"month\") {\n setMonth(month + 2);\n } else {\n setYear(year + 1);\n }\n setIsClicked(true);\n }}\n style={{\n width: \"100%\",\n height: \"100%\",\n display: \"flex\",\n justifyContent: \"center\",\n alignItems: \"center\",\n borderRadius: \"0 8px 8px 0\",\n }}\n >\n {icon_arrowright}\n </IconButton>\n {format === \"month\" ? (\n <Grow in={isOpenMonthSelector} style={{ transformOrigin: \"0 0 0\" }}>\n <div\n style={{\n border: \"1px solid #cccccc\",\n borderRadius: 8,\n boxShadow: \"0px 4px 12px rgba(0, 0, 0, 0.1)\",\n boxSizing: \"border-box\",\n width: 302,\n height: 160,\n position: \"absolute\",\n backgroundColor: \"#ffffff\",\n zIndex: 1,\n top: 52,\n left: 0,\n }}\n >\n <div\n style={{\n height: 48,\n padding: 8,\n display: \"grid\",\n gridTemplateColumns: \"32px 1fr 32px\",\n gap: 13,\n alignItems: \"center\",\n boxShadow: \"0px 1px 0px #ECECEC\",\n }}\n >\n <IconButton\n hoverColor=\"black400\"\n onClick={() => {\n setYear(year - 1);\n setIsClicked(true);\n }}\n >\n {icon_arrowleft}\n </IconButton>\n <Typography\n variant=\"subtitle\"\n style={{ textAlign: \"center\" }}\n >\n {year}年\n </Typography>\n <IconButton\n hoverColor=\"black400\"\n onClick={() => {\n setYear(year + 1);\n setIsClicked(true);\n }}\n >\n {icon_arrowright}\n </IconButton>\n </div>\n <div\n style={{\n padding: 16,\n display: \"grid\",\n alignItems: \"center\",\n gap: 8,\n gridTemplateColumns: \"1fr 1fr 1fr\",\n gridTemplateRows: \"36px 36px\",\n }}\n >\n {Array.from(Array(6).keys()).map((_i, i) => (\n <MonthButton\n key={i}\n index={i}\n month={month}\n setMonth={setMonth}\n setIsOpenMonthSelector={setIsOpenMonthSelector}\n setIsClicked={setIsClicked}\n />\n ))}\n </div>\n </div>\n </Grow>\n ) : null}\n </div>\n ) : (\n <Modal\n bodyPadding={mobile ? 16 : undefined}\n fullWidth={mobile}\n open={open}\n onClose={onClose}\n size={mobile ? undefined : \"medium\"}\n label={\n !mobile ? (\n <Typography variant=\"h6\">\n <span style={{ fontWeight: 400 }}>已選擇:</span>\n {date &&\n `${date.split(\"/\")[0]}年${date.split(\"/\")[1]}月${\n date.split(\"/\")[2]\n }日`}\n </Typography>\n ) : (\n <>\n <Typography variant=\"caption2\">\n <span style={{ fontWeight: 400 }}>已選擇:</span>\n </Typography>\n <Typography variant=\"subtitle\">\n {date &&\n `${date.split(\"/\")[0]}年${date.split(\"/\")[1]}月${\n date.split(\"/\")[2]\n }日`}\n </Typography>\n </>\n )\n }\n primaryButton={{\n title: \"確認\",\n onClick: () => {\n onClose();\n },\n }}\n secondaryButton={{ title: \"取消\", onClick: onClose }}\n children={\n !mobile ? (\n <div style={{ display: \"flex\", justifyContent: \"space-between\" }}>\n <Calendar\n month={month}\n year={year}\n date={date}\n setDate={setDate}\n min={min}\n max={max}\n position=\"left\"\n leftClick={() => {\n if (month - 1 < 1) {\n setMonth(12);\n setYear(year - 1);\n } else {\n setMonth(month - 1);\n }\n setNextMonth(month);\n }}\n defaultValue={defaultValue}\n setIsClicked={setIsClicked}\n />\n <Calendar\n month={nextMonth}\n year={month > nextMonth ? year + 1 : year}\n date={date}\n setDate={setDate}\n min={min}\n max={max}\n position=\"right\"\n rightClick={() => {\n if (nextMonth + 1 > 12) {\n setMonth(12);\n setNextMonth(1);\n } else if (month + 1 > 12) {\n setMonth(1);\n setNextMonth(2);\n setYear(year + 1);\n } else {\n setMonth(month + 1);\n setNextMonth(nextMonth + 1);\n }\n }}\n defaultValue={defaultValue}\n setIsClicked={setIsClicked}\n />\n </div>\n ) : (\n <Calendar\n month={month}\n year={year}\n date={date}\n setDate={setDate}\n min={min}\n max={max}\n position=\"left\"\n leftClick={() => {\n if (month - 1 < 1) {\n setMonth(12);\n setYear(year - 1);\n } else {\n setMonth(month - 1);\n }\n setNextMonth(month);\n }}\n rightClick={() => {\n if (nextMonth + 1 > 12) {\n setMonth(12);\n setNextMonth(1);\n } else if (month + 1 > 12) {\n setMonth(1);\n setNextMonth(2);\n setYear(year + 1);\n } else {\n setMonth(month + 1);\n setNextMonth(nextMonth + 1);\n }\n }}\n defaultValue={defaultValue}\n setIsClicked={setIsClicked}\n mobile={mobile}\n />\n )\n }\n {...ModalProps}\n />\n )}\n </div>\n );\n};\n\ninterface MonthButtonProps {\n index: number;\n month?: number;\n setMonth: (month: number) => void;\n setIsOpenMonthSelector: (isOpenMonthSelector: boolean) => void;\n setIsClicked: (isClicked: boolean) => void;\n}\n\nconst MonthButton = ({\n index,\n month,\n setMonth,\n setIsOpenMonthSelector,\n setIsClicked,\n}: MonthButtonProps) => {\n const styleProps: StyleForMonthButtonProps = {\n selected: 1 + 2 * index === month,\n };\n const classes = useStylesForMonthButton(styleProps);\n return (\n <div\n className={classes.root}\n onClick={() => {\n setMonth(1 + 2 * index);\n setIsOpenMonthSelector(false);\n setIsClicked(true);\n }}\n >\n {1 + 2 * index}-{2 + 2 * index}月\n </div>\n );\n};\n\ninterface CalendarProps {\n year: number;\n month: number;\n date: string;\n setDate: (date: string) => void;\n min: string;\n max: string;\n leftClick?: () => void;\n rightClick?: () => void;\n position: \"left\" | \"right\";\n defaultValue: string;\n setIsClicked: (isClicked: boolean) => void;\n mobile?: boolean;\n}\n\nconst Calendar = ({\n year,\n month,\n setDate,\n date,\n min,\n max,\n leftClick,\n rightClick,\n position,\n defaultValue,\n setIsClicked,\n mobile,\n}: CalendarProps) => {\n const isBigMonth: boolean =\n (month <= 7 && month % 2 !== 0) || (month >= 8 && month % 2 === 0);\n const today = defaultValue\n ? new Date(changeDateFormatToSlash(defaultValue))\n : new Date();\n const selectedYear = Number(date.split(\"/\")[0]);\n const selectedMonth = Number(date.split(\"/\")[1]);\n const selectedDate = Number(date.split(\"/\")[2]);\n\n const msOfMin = min ? new Date(changeDateFormatToSlash(min)).getTime() : 0;\n const msOfMax = max ? new Date(changeDateFormatToSlash(max)).getTime() : 0;\n const msOfFirstDayOfMonth = new Date(`${year}/${month}/1`).getTime();\n const msOfLastDayOfMonth = new Date(\n `${year}/${month}/${\n month === 2 ? (year % 4 === 0 ? 29 : 28) : isBigMonth ? 31 : 30\n }`\n ).getTime();\n\n const arrowDisabled: boolean =\n (msOfMin !== 0 && position === \"left\" && msOfFirstDayOfMonth <= msOfMin) ||\n (msOfMax !== 0 && position === \"right\" && msOfLastDayOfMonth >= msOfMax);\n const mobileLeftArrowDisabled: boolean =\n msOfMin !== 0 && msOfFirstDayOfMonth <= msOfMin;\n const mobileRightArrowDisabled: boolean =\n msOfMax !== 0 && msOfLastDayOfMonth >= msOfMax;\n\n const classes = useStylesForCalendar();\n const theme = useTheme();\n return (\n <div>\n <div className={classes.head}>\n {year}年{month}月\n {!mobile ? (\n <IconButton\n onClick={position === \"left\" ? leftClick : rightClick}\n disabled={arrowDisabled}\n style={{\n position: \"absolute\",\n left: position === \"left\" ? 8 : undefined,\n right: position === \"left\" ? undefined : 8,\n top: 8,\n opacity: arrowDisabled ? 0.4 : undefined,\n }}\n >\n {position === \"left\" ? icon_arrowleft : icon_arrowright}\n </IconButton>\n ) : (\n <>\n <IconButton\n onClick={leftClick}\n disabled={mobileLeftArrowDisabled}\n style={{\n position: \"absolute\",\n left: 8,\n top: 8,\n opacity: mobileLeftArrowDisabled ? 0.4 : undefined,\n }}\n >\n {icon_arrowleft}\n </IconButton>\n <IconButton\n onClick={rightClick}\n disabled={mobileRightArrowDisabled}\n style={{\n position: \"absolute\",\n right: 8,\n top: 8,\n opacity: mobileRightArrowDisabled ? 0.4 : undefined,\n }}\n >\n {icon_arrowright}\n </IconButton>\n </>\n )}\n </div>\n <div className={classes.body}>\n {[\"日\", \"一\", \"二\", \"三\", \"四\", \"五\", \"六\"].map((i) => (\n <div key={i} className={classes.days}>\n {i}\n </div>\n ))}\n {Array.from(\n Array(\n month === 2\n ? year % 4 === 0\n ? 29 + firstDayOfMonth(year, month)\n : 28 + firstDayOfMonth(year, month)\n : isBigMonth\n ? 31 + firstDayOfMonth(year, month)\n : 30 + firstDayOfMonth(year, month)\n ).keys()\n ).map((_i, i) => {\n if (i + 1 <= firstDayOfMonth(year, month))\n return (\n <div\n key={i}\n style={{\n width: 32,\n height: 32,\n }}\n ></div>\n );\n const dateNumber = i + 1 - firstDayOfMonth(year, month);\n const isSelected: boolean =\n year === selectedYear &&\n month === selectedMonth &&\n dateNumber === selectedDate;\n\n const isToday: boolean =\n year === today.getFullYear() &&\n month === today.getMonth() + 1 &&\n dateNumber === today.getDate();\n\n const msOfDate = new Date(`${year}/${month}/${dateNumber}`).getTime();\n const disabled: boolean =\n (msOfMin !== 0 && msOfDate < msOfMin) ||\n (msOfMax !== 0 && msOfDate > msOfMax);\n return (\n <div\n key={i}\n className={classes.date}\n onClick={() => {\n setDate(`${year}/${month}/${dateNumber}`);\n setIsClicked(true);\n }}\n style={{\n backgroundColor: isSelected\n ? theme.primary.primary400\n : isToday\n ? theme.black.black400\n : undefined,\n color: isSelected ? theme.black.white : undefined,\n border: isSelected\n ? `1px solid ${theme.primary.primary600}`\n : undefined,\n opacity: disabled ? 0.4 : undefined,\n pointerEvents: disabled ? \"none\" : undefined,\n }}\n >\n {dateNumber}\n </div>\n );\n })}\n </div>\n </div>\n );\n};\n\nconst firstDayOfMonth = (year: number, month: number) => {\n const firstDay = year + \"/\" + month + \"/\" + 1;\n\n return new Date(firstDay).getDay();\n};\n\nconst changeDateFormatToSlash = (date: string) => {\n return date.replace(/-/g, \"/\");\n};\n\nconst verticalline = (\n <div style={{ width: 1, height: \"100%\", backgroundColor: \"#cccccc\" }} />\n);\n\nconst icon_arrowleft = (\n <svg\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 20 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M12.8417 13.8167L9.02502 10L12.8417 6.175L11.6667 5L6.66669 10L11.6667 15L12.8417 13.8167Z\"\n fill=\"black\"\n />\n </svg>\n);\n\nconst icon_arrowright = (\n <svg\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 20 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M7.15833 13.8167L10.975 10L7.15833 6.175L8.33333 5L13.3333 10L8.33333 15L7.15833 13.8167Z\"\n fill=\"black\"\n />\n </svg>\n);\n\nconst icon_calendar = (\n <svg\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 20 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M5.83333 8.33333H10V12.5H5.83333V8.33333ZM15.8333 15.8333H4.16667V6.66667H15.8333V15.8333ZM15.8333 2.5H15V0.833332H13.3333V2.5H6.66667V0.833332H5V2.5H4.16667C3.24167 2.5 2.5 3.25 2.5 4.16667V15.8333C2.5 16.2754 2.67559 16.6993 2.98816 17.0118C3.30072 17.3244 3.72464 17.5 4.16667 17.5H15.8333C16.2754 17.5 16.6993 17.3244 17.0118 17.0118C17.3244 16.6993 17.5 16.2754 17.5 15.8333V4.16667C17.5 3.72464 17.3244 3.30071 17.0118 2.98815C16.6993 2.67559 16.2754 2.5 15.8333 2.5Z\"\n fill=\"#6F6F6F\"\n />\n </svg>\n);\n\nexport default DatePicker;\n","import React, { useState } from \"react\";\nimport Menu from \"../Menu/Menu\";\nimport MenuItem from \"../Menu/MenuItem\";\nimport Typography from \"../Typography/Typography\";\nimport { BreadcrumbProps } from \"./Breadcrumb.types\";\n\nconst Breadcrumb: React.FC<BreadcrumbProps> = (props): React.ReactElement => {\n const { maxItems, separator, children, ...other } = props;\n const [isHoverThreeDots, setIsHoverThreeDots] = useState(false);\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n const handleThreeDotsClick = (\n event: React.MouseEvent<HTMLDivElement, MouseEvent>\n ) => {\n setAnchorEl(event.currentTarget);\n };\n const handleThreeDotsClose = () => {\n setAnchorEl(null);\n };\n return (\n <div style={{ display: \"flex\", alignItems: \"center\" }} {...other}>\n {maxItems && children?.length > maxItems ? (\n /**隱藏內容 */\n <>\n <div\n style={{\n display: \"flex\",\n alignItems: \"center\",\n fontSize: 14,\n fontWeight: 400,\n }}\n >\n {children[0]}\n <Typography variant=\"body2\" style={{ margin: \"0 8px\" }}>\n {separator ? separator : \"/\"}\n </Typography>\n <div\n onClick={handleThreeDotsClick}\n onMouseEnter={() => setIsHoverThreeDots(true)}\n onMouseLeave={() => setIsHoverThreeDots(false)}\n style={{ cursor: \"pointer\" }}\n >\n {isHoverThreeDots ? icon_threedots_hover : icon_threedots}\n </div>\n <Typography variant=\"body2\" style={{ margin: \"0 8px\" }}>\n {separator ? separator : \"/\"}\n </Typography>\n </div>\n {children\n .slice(children?.length - maxItems + 1)\n .map((i: any, index) => {\n return (\n <div\n key={Math.random().toString(36).substr(2)}\n style={{\n display: \"flex\",\n alignItems: \"center\",\n fontSize: 14,\n fontWeight: index + 1 === children?.length ? 700 : 400,\n }}\n >\n {i}\n {index + 1 !== maxItems - 1 && (\n <Typography variant=\"body2\" style={{ margin: \"0 8px\" }}>\n {separator ? separator : \"/\"}\n </Typography>\n )}\n </div>\n );\n })}\n </>\n ) : (\n children?.map((i: any, index) => {\n return (\n <div\n key={Math.random().toString(36).substr(2)}\n style={{\n display: \"flex\",\n alignItems: \"center\",\n fontSize: 14,\n fontWeight: index + 1 === children?.length ? 700 : 400,\n }}\n >\n {i}\n {index + 1 !== children?.length && (\n <Typography variant=\"body2\" style={{ margin: \"0 8px\" }}>\n {separator ? separator : \"/\"}\n </Typography>\n )}\n </div>\n );\n })\n )}\n {/**隱藏內容的Menu */}\n <Menu\n anchorEl={anchorEl}\n keepMounted\n open={Boolean(anchorEl)}\n onClose={handleThreeDotsClose}\n anchorOrigin={{ vertical: \"bottom\", horizontal: -16 }}\n getContentAnchorEl={null}\n >\n {children?.slice(1, children?.length - maxItems + 1).map((i: any) => {\n const content = i.props.children;\n const href = i.props.href;\n const target = i.props.target;\n console.log(target);\n return (\n <MenuItem\n key={Math.random().toString(36).substr(2)}\n onClick={() => {\n if (target && target === \"_blank\") {\n window.open(href);\n } else {\n window.location.href = href;\n }\n }}\n >\n {content}\n </MenuItem>\n );\n })}\n </Menu>\n </div>\n );\n};\n\nconst icon_threedots = (\n <svg\n width=\"12\"\n height=\"20\"\n viewBox=\"0 0 12 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M1.946 16.182C2.45 16.182 2.87 15.79 2.87 15.216C2.87 14.642 2.45 14.222 1.946 14.222C1.442 14.222 1.022 14.642 1.022 15.216C1.022 15.79 1.442 16.182 1.946 16.182ZM5.84248 16.182C6.34648 16.182 6.76648 15.79 6.76648 15.216C6.76648 14.642 6.34648 14.222 5.84248 14.222C5.33848 14.222 4.91848 14.642 4.91848 15.216C4.91848 15.79 5.33848 16.182 5.84248 16.182ZM9.73897 16.182C10.243 16.182 10.663 15.79 10.663 15.216C10.663 14.642 10.243 14.222 9.73897 14.222C9.23497 14.222 8.81497 14.642 8.81497 15.216C8.81497 15.79 9.23497 16.182 9.73897 16.182Z\"\n fill=\"#4B4B4B\"\n />\n </svg>\n);\n\nconst icon_threedots_hover = (\n <svg\n width=\"12\"\n height=\"20\"\n viewBox=\"0 0 12 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M1.946 16.182C2.45 16.182 2.87 15.79 2.87 15.216C2.87 14.642 2.45 14.222 1.946 14.222C1.442 14.222 1.022 14.642 1.022 15.216C1.022 15.79 1.442 16.182 1.946 16.182ZM5.84248 16.182C6.34648 16.182 6.76648 15.79 6.76648 15.216C6.76648 14.642 6.34648 14.222 5.84248 14.222C5.33848 14.222 4.91848 14.642 4.91848 15.216C4.91848 15.79 5.33848 16.182 5.84248 16.182ZM9.73897 16.182C10.243 16.182 10.663 15.79 10.663 15.216C10.663 14.642 10.243 14.222 9.73897 14.222C9.23497 14.222 8.81497 14.642 8.81497 15.216C8.81497 15.79 9.23497 16.182 9.73897 16.182Z\"\n fill=\"#4B4B4B\"\n />\n <path d=\"M0 18.1H11.685V18.8H0V18.1Z\" fill=\"#4B4B4B\" />\n </svg>\n);\n\nexport default Breadcrumb;\n","import React from \"react\";\nimport Link from \"../Link/Link\";\nimport { BreadcrumbItemProps } from \"./BreadcrumbItem.types\";\n\nconst BreadcrumbItem: React.FC<BreadcrumbItemProps> = (\n props\n): React.ReactElement => {\n const { last, ...other } = props;\n return (\n <Link\n {...other}\n color={last ? \"black1000\" : \"black800\"}\n style={{\n fontWeight: last ? 700 : 400,\n cursor: last ? \"unset\" : undefined,\n textDecoration: last ? \"none\" : undefined,\n }}\n />\n );\n};\n\nexport default BreadcrumbItem;\n","import { Theme, makeStyles, useTheme } from \"@material-ui/core\";\nimport React from \"react\";\nimport Button from \"../Button/Button\";\nimport Skeleton from \"../Skeleton/Skeleton\";\nimport SWAPSpace from \"../SWAPSpace/SWAPSpace\";\nimport { CardProps } from \"./Card.types\";\n\n// Style\ninterface StyleProps {\n width?: number | string;\n height?: number | string;\n}\n\nconst useStyles = makeStyles<Theme, StyleProps>((theme: Theme) => ({\n root: (props) => ({\n width: props.width ? props.width : 350,\n height: props.height ? props.height : \"100%\",\n backgroundColor: theme.black.white,\n boxSizing: \"border-box\",\n border: `1px solid ${theme.black.black500}`,\n borderRadius: 8,\n display: \"flex\",\n flexDirection: \"column\",\n justifyContent: \"space-between\",\n overflow: \"hidden\",\n }),\n body: { padding: 24, width: \"100%\", height: \"100%\" },\n buttonblock: {\n width: \"100%\",\n boxShadow: `0px -1px 0px ${theme.black.black400}`,\n borderRadius: \" 0px 0px 8px 8px\",\n display: \"flex\",\n padding: 0,\n },\n}));\n\nconst Card: React.FC<CardProps> = (props): React.ReactElement => {\n const {\n width,\n height,\n children,\n buttons,\n bodyStyle,\n loading,\n ...other\n } = props;\n const useStylesProps: StyleProps = { width: width, height: height };\n const classes = useStyles(useStylesProps);\n const theme = useTheme();\n return (\n <div className={classes.root} {...other}>\n <div className={classes.body} style={bodyStyle}>\n {!loading ? (\n children\n ) : (\n <div style={{ width: \"100%\", height: \"100%\" }}>\n <Skeleton width=\"40%\" height=\"calc((100% - 16px) /3 )\" />\n <SWAPSpace size={8} />\n <Skeleton width=\"100%\" height=\"calc((100% - 16px) /3 )\" />\n <SWAPSpace size={8} />\n <div\n style={{\n display: \"flex\",\n justifyContent: \"space-between\",\n width: \"100%\",\n height: \"calc((100% - 16px) /3 )\",\n }}\n >\n <Skeleton width=\"26.4%\" height=\"100%\" />\n <Skeleton width=\"26.4%\" height=\"100%\" />\n </div>\n </div>\n )}\n </div>\n <div className={classes.buttonblock}>\n {!loading ? (\n buttons?.map((i, index) => (\n <Button\n key={Math.random().toString(36).substr(2)}\n fullWidth\n variant={i.variant ? i.variant : \"black\"}\n style={{\n borderRight:\n index + 1 === buttons?.length\n ? undefined\n : `1px solid ${theme.black.black400}`,\n borderRadius: \"0px 0px 0px 0px\",\n ...i.style,\n }}\n onClick={i.onClick}\n disabled={i.disabled}\n loading={i.loading}\n >\n {i.title}\n </Button>\n ))\n ) : (\n <div style={{ padding: \"16px 24px\", width: \"100%\", height: 48 }}>\n <Skeleton width=\"100%\" height=\"100%\" />\n </div>\n )}\n </div>\n </div>\n );\n};\n\nexport default Card;\n"],"names":["React","AppBar","Toolbar","Container","Grid","Button","Typography","IconButton","Menu","MenuItem","Divider","useEffect","Fade","Paper","deselectCurrent","require$$0","require$$1","_require","useState","TextField","CopyToClipboard","Dialog","Slide","Modal","CloseIcon","Breadcrumbs","this","__assign","__rest","cx","Component","forwardRef","__extends","global","performance","FormControl","InputLabel","Select","createMuiTheme","ThemeProvider","CssBaseline","useTheme","makeStyles","Box","useStyles","useMediaQuery","FormControlLabel","useRef","OutlinedInput","FormHelperText","ListItemIcon","CircularProgress","MaterialIconButton","noop","once","useLayoutEffect$1","useCallback","createElement","Globals","config","useContext","createContext","useMemo","createStringInterpolator","unstable_batchedUpdates","colors","Backdrop","MaterialCircularProgress","objectWithoutPropertiesLoose","process","ReactPropTypesSecret","has","printWarning","ReactIs","assign","checkPropTypes","require$$2","arrayLikeToArray","arrayWithoutHoles","iterableToArray","unsupportedIterableToArray","nonIterableSpread","arrayWithHoles","iterableToArrayLimit","nonIterableRest","useControlled","createSvgIcon","React.createElement","fade","React.forwardRef","capitalize","PropTypes","withStyles","styles","PaginationItem","findIndex","useId","React.useRef","React.useState","useEventCallback","React.useEffect","React.useCallback","setRef","Chip","React.Fragment","Pagination","Popper","InputBase","SWAPTaxIncomeLabel","SWAPTaxExpenseLabel","SWAPTaxDescription","SWAPIncomeTypes","SWAPExpenseTypes","Skeleton","useOutlinedInputStyles","MaterialPaper","Grow"],"mappings":"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hC;AACA;AACA;AACA;AACA,EAAE,OAAO,EAAEA,SAAS,CAAC,IAAI;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,WAAW,EAAEA,SAAS,CAAC,IAAI;AAC7B;AACA;AACA;AACA;AACA,EAAE,QAAQ,EAAEA,SAAS;AACrB;AACA,GAAG,IAAI;AACP;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,aAAa,EAAEA,SAAS,CAAC,IAAI;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,QAAQ,EAAEA,SAAS,CAAC,IAAI;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,OAAO,EAAEA,SAAS,CAAC,IAAI;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,iBAAiB,EAAEA,SAAS,CAAC,IAAI;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,aAAa,EAAEA,SAAS,CAAC,IAAI;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,MAAM,EAAEA,SAAS,CAAC,IAAI;AACxB;AACA;AACA;AACA;AACA,EAAE,IAAI,EAAEA,SAAS,CAAC,IAAI;AACtB;AACA;AACA;AACA;AACA,EAAE,WAAW,EAAEA,SAAS,CAAC,IAAI;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,QAAQ,EAAEA,SAAS,CAAC,MAAM;AAC5B;AACA;AACA;AACA;AACA,EAAE,OAAO,EAAEA,SAAS,CAAC,KAAK,CAAC,UAAU;AACrC;AACA;AACA;AACA;AACA,EAAE,cAAc,EAAEA,SAAS,CAAC,WAAW;AACvC;AACA;AACA;AACA;AACA,EAAE,eAAe,EAAEA,SAAS,CAAC,WAAW;AACxC;AACA;AACA;AACA;AACA,EAAE,SAAS,EAAEA,SAAS,CAAC,IAAI;AAC3B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,WAAW,EAAEA,SAAS,CAAC,IAAI;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,WAAW,EAAEA,SAAS,CAAC,IAAI,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"}
|
|
1
|
+
{"version":3,"sources":["../node_modules/react-is/cjs/react-is.production.js","../node_modules/react-is/cjs/react-is.development.js","../node_modules/react-is/index.js","../src/theme/SWAPThemeProvider.tsx","../src/theme/createSwapTheme.ts","../node_modules/@mui/utils/deepmerge/deepmerge.mjs","../src/theme/tokens.ts","../src/theme/button.styles.ts","../src/theme/typography.styles.ts","../src/components/Typography.tsx","../src/theme/textColor.ts","../src/components/Chip.tsx","../src/utils/cssSize.ts","../src/components/CircularProgress.tsx","../src/components/Tooltip.tsx","../src/components/Container.tsx","../src/components/Paper.tsx","../src/components/Link.tsx","../src/components/IconButton.tsx","../src/components/Breadcrumb.tsx","../src/components/BreadcrumbItem.tsx","../src/components/TextField.tsx","../src/components/CheckBox.tsx","../src/components/RadioButton.tsx","../src/components/Switch.tsx","../src/components/Select.tsx","../src/components/MenuItem.tsx","../src/components/Tab.tsx","../src/components/Tabs.tsx","../src/components/TabPanel.tsx","../src/components/Banner.tsx","../src/components/Card.tsx","../src/components/Progress.tsx","../src/components/Modal.tsx","../node_modules/@mui/icons-material/utils/createSvgIcon.mjs","../node_modules/@mui/icons-material/Close.mjs","../node_modules/@mui/icons-material/CheckCircle.mjs","../node_modules/@mui/icons-material/Warning.mjs","../src/hooks/useBreakpoints.ts","../src/components/Snackbar.tsx","../src/components/RadioList.tsx","../src/components/selectionList.styles.ts","../src/components/CheckBoxList.tsx","../src/components/AutoComplete.tsx","../src/components/Dropdown.tsx","../src/components/SegmentedTab.tsx","../src/components/SegmentedTabs.tsx","../src/components/SWAPLogo.tsx","../src/components/SWAPShare.tsx","../src/components/TaxTextField.tsx","../src/tax/constants.ts","../src/components/DatePicker.tsx","../src/index.ts"],"sourcesContent":["/**\n * @license React\n * react-is.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\nvar REACT_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_PORTAL_TYPE = Symbol.for(\"react.portal\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\"),\n REACT_STRICT_MODE_TYPE = Symbol.for(\"react.strict_mode\"),\n REACT_PROFILER_TYPE = Symbol.for(\"react.profiler\"),\n REACT_CONSUMER_TYPE = Symbol.for(\"react.consumer\"),\n REACT_CONTEXT_TYPE = Symbol.for(\"react.context\"),\n REACT_FORWARD_REF_TYPE = Symbol.for(\"react.forward_ref\"),\n REACT_SUSPENSE_TYPE = Symbol.for(\"react.suspense\"),\n REACT_SUSPENSE_LIST_TYPE = Symbol.for(\"react.suspense_list\"),\n REACT_MEMO_TYPE = Symbol.for(\"react.memo\"),\n REACT_LAZY_TYPE = Symbol.for(\"react.lazy\"),\n REACT_VIEW_TRANSITION_TYPE = Symbol.for(\"react.view_transition\"),\n REACT_CLIENT_REFERENCE = Symbol.for(\"react.client.reference\");\nfunction typeOf(object) {\n if (\"object\" === typeof object && null !== object) {\n var $$typeof = object.$$typeof;\n switch ($$typeof) {\n case REACT_ELEMENT_TYPE:\n switch (((object = object.type), object)) {\n case REACT_FRAGMENT_TYPE:\n case REACT_PROFILER_TYPE:\n case REACT_STRICT_MODE_TYPE:\n case REACT_SUSPENSE_TYPE:\n case REACT_SUSPENSE_LIST_TYPE:\n case REACT_VIEW_TRANSITION_TYPE:\n return object;\n default:\n switch (((object = object && object.$$typeof), object)) {\n case REACT_CONTEXT_TYPE:\n case REACT_FORWARD_REF_TYPE:\n case REACT_LAZY_TYPE:\n case REACT_MEMO_TYPE:\n return object;\n case REACT_CONSUMER_TYPE:\n return object;\n default:\n return $$typeof;\n }\n }\n case REACT_PORTAL_TYPE:\n return $$typeof;\n }\n }\n}\nexports.ContextConsumer = REACT_CONSUMER_TYPE;\nexports.ContextProvider = REACT_CONTEXT_TYPE;\nexports.Element = REACT_ELEMENT_TYPE;\nexports.ForwardRef = REACT_FORWARD_REF_TYPE;\nexports.Fragment = REACT_FRAGMENT_TYPE;\nexports.Lazy = REACT_LAZY_TYPE;\nexports.Memo = REACT_MEMO_TYPE;\nexports.Portal = REACT_PORTAL_TYPE;\nexports.Profiler = REACT_PROFILER_TYPE;\nexports.StrictMode = REACT_STRICT_MODE_TYPE;\nexports.Suspense = REACT_SUSPENSE_TYPE;\nexports.SuspenseList = REACT_SUSPENSE_LIST_TYPE;\nexports.isContextConsumer = function (object) {\n return typeOf(object) === REACT_CONSUMER_TYPE;\n};\nexports.isContextProvider = function (object) {\n return typeOf(object) === REACT_CONTEXT_TYPE;\n};\nexports.isElement = function (object) {\n return (\n \"object\" === typeof object &&\n null !== object &&\n object.$$typeof === REACT_ELEMENT_TYPE\n );\n};\nexports.isForwardRef = function (object) {\n return typeOf(object) === REACT_FORWARD_REF_TYPE;\n};\nexports.isFragment = function (object) {\n return typeOf(object) === REACT_FRAGMENT_TYPE;\n};\nexports.isLazy = function (object) {\n return typeOf(object) === REACT_LAZY_TYPE;\n};\nexports.isMemo = function (object) {\n return typeOf(object) === REACT_MEMO_TYPE;\n};\nexports.isPortal = function (object) {\n return typeOf(object) === REACT_PORTAL_TYPE;\n};\nexports.isProfiler = function (object) {\n return typeOf(object) === REACT_PROFILER_TYPE;\n};\nexports.isStrictMode = function (object) {\n return typeOf(object) === REACT_STRICT_MODE_TYPE;\n};\nexports.isSuspense = function (object) {\n return typeOf(object) === REACT_SUSPENSE_TYPE;\n};\nexports.isSuspenseList = function (object) {\n return typeOf(object) === REACT_SUSPENSE_LIST_TYPE;\n};\nexports.isValidElementType = function (type) {\n return \"string\" === typeof type ||\n \"function\" === typeof type ||\n type === REACT_FRAGMENT_TYPE ||\n type === REACT_PROFILER_TYPE ||\n type === REACT_STRICT_MODE_TYPE ||\n type === REACT_SUSPENSE_TYPE ||\n type === REACT_SUSPENSE_LIST_TYPE ||\n (\"object\" === typeof type &&\n null !== type &&\n (type.$$typeof === REACT_LAZY_TYPE ||\n type.$$typeof === REACT_MEMO_TYPE ||\n type.$$typeof === REACT_CONTEXT_TYPE ||\n type.$$typeof === REACT_CONSUMER_TYPE ||\n type.$$typeof === REACT_FORWARD_REF_TYPE ||\n type.$$typeof === REACT_CLIENT_REFERENCE ||\n void 0 !== type.getModuleId))\n ? !0\n : !1;\n};\nexports.typeOf = typeOf;\n","/**\n * @license React\n * react-is.development.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\n\"production\" !== process.env.NODE_ENV &&\n (function () {\n function typeOf(object) {\n if (\"object\" === typeof object && null !== object) {\n var $$typeof = object.$$typeof;\n switch ($$typeof) {\n case REACT_ELEMENT_TYPE:\n switch (((object = object.type), object)) {\n case REACT_FRAGMENT_TYPE:\n case REACT_PROFILER_TYPE:\n case REACT_STRICT_MODE_TYPE:\n case REACT_SUSPENSE_TYPE:\n case REACT_SUSPENSE_LIST_TYPE:\n case REACT_VIEW_TRANSITION_TYPE:\n return object;\n default:\n switch (((object = object && object.$$typeof), object)) {\n case REACT_CONTEXT_TYPE:\n case REACT_FORWARD_REF_TYPE:\n case REACT_LAZY_TYPE:\n case REACT_MEMO_TYPE:\n return object;\n case REACT_CONSUMER_TYPE:\n return object;\n default:\n return $$typeof;\n }\n }\n case REACT_PORTAL_TYPE:\n return $$typeof;\n }\n }\n }\n var REACT_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_PORTAL_TYPE = Symbol.for(\"react.portal\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\"),\n REACT_STRICT_MODE_TYPE = Symbol.for(\"react.strict_mode\"),\n REACT_PROFILER_TYPE = Symbol.for(\"react.profiler\"),\n REACT_CONSUMER_TYPE = Symbol.for(\"react.consumer\"),\n REACT_CONTEXT_TYPE = Symbol.for(\"react.context\"),\n REACT_FORWARD_REF_TYPE = Symbol.for(\"react.forward_ref\"),\n REACT_SUSPENSE_TYPE = Symbol.for(\"react.suspense\"),\n REACT_SUSPENSE_LIST_TYPE = Symbol.for(\"react.suspense_list\"),\n REACT_MEMO_TYPE = Symbol.for(\"react.memo\"),\n REACT_LAZY_TYPE = Symbol.for(\"react.lazy\"),\n REACT_VIEW_TRANSITION_TYPE = Symbol.for(\"react.view_transition\"),\n REACT_CLIENT_REFERENCE = Symbol.for(\"react.client.reference\");\n exports.ContextConsumer = REACT_CONSUMER_TYPE;\n exports.ContextProvider = REACT_CONTEXT_TYPE;\n exports.Element = REACT_ELEMENT_TYPE;\n exports.ForwardRef = REACT_FORWARD_REF_TYPE;\n exports.Fragment = REACT_FRAGMENT_TYPE;\n exports.Lazy = REACT_LAZY_TYPE;\n exports.Memo = REACT_MEMO_TYPE;\n exports.Portal = REACT_PORTAL_TYPE;\n exports.Profiler = REACT_PROFILER_TYPE;\n exports.StrictMode = REACT_STRICT_MODE_TYPE;\n exports.Suspense = REACT_SUSPENSE_TYPE;\n exports.SuspenseList = REACT_SUSPENSE_LIST_TYPE;\n exports.isContextConsumer = function (object) {\n return typeOf(object) === REACT_CONSUMER_TYPE;\n };\n exports.isContextProvider = function (object) {\n return typeOf(object) === REACT_CONTEXT_TYPE;\n };\n exports.isElement = function (object) {\n return (\n \"object\" === typeof object &&\n null !== object &&\n object.$$typeof === REACT_ELEMENT_TYPE\n );\n };\n exports.isForwardRef = function (object) {\n return typeOf(object) === REACT_FORWARD_REF_TYPE;\n };\n exports.isFragment = function (object) {\n return typeOf(object) === REACT_FRAGMENT_TYPE;\n };\n exports.isLazy = function (object) {\n return typeOf(object) === REACT_LAZY_TYPE;\n };\n exports.isMemo = function (object) {\n return typeOf(object) === REACT_MEMO_TYPE;\n };\n exports.isPortal = function (object) {\n return typeOf(object) === REACT_PORTAL_TYPE;\n };\n exports.isProfiler = function (object) {\n return typeOf(object) === REACT_PROFILER_TYPE;\n };\n exports.isStrictMode = function (object) {\n return typeOf(object) === REACT_STRICT_MODE_TYPE;\n };\n exports.isSuspense = function (object) {\n return typeOf(object) === REACT_SUSPENSE_TYPE;\n };\n exports.isSuspenseList = function (object) {\n return typeOf(object) === REACT_SUSPENSE_LIST_TYPE;\n };\n exports.isValidElementType = function (type) {\n return \"string\" === typeof type ||\n \"function\" === typeof type ||\n type === REACT_FRAGMENT_TYPE ||\n type === REACT_PROFILER_TYPE ||\n type === REACT_STRICT_MODE_TYPE ||\n type === REACT_SUSPENSE_TYPE ||\n type === REACT_SUSPENSE_LIST_TYPE ||\n (\"object\" === typeof type &&\n null !== type &&\n (type.$$typeof === REACT_LAZY_TYPE ||\n type.$$typeof === REACT_MEMO_TYPE ||\n type.$$typeof === REACT_CONTEXT_TYPE ||\n type.$$typeof === REACT_CONSUMER_TYPE ||\n type.$$typeof === REACT_FORWARD_REF_TYPE ||\n type.$$typeof === REACT_CLIENT_REFERENCE ||\n void 0 !== type.getModuleId))\n ? !0\n : !1;\n };\n exports.typeOf = typeOf;\n })();\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-is.production.js');\n} else {\n module.exports = require('./cjs/react-is.development.js');\n}\n","import * as React from \"react\";\nimport { ThemeProvider, type Theme } from \"@mui/material/styles\";\nimport CssBaseline from \"@mui/material/CssBaseline\";\nimport { createSwapTheme } from \"./createSwapTheme\";\n\nimport \"@fontsource/m-plus-rounded-1c/400.css\";\nimport \"@fontsource/m-plus-rounded-1c/700.css\";\nimport \"@fontsource/noto-sans-tc/400.css\";\nimport \"@fontsource/noto-sans-tc/700.css\";\n\nexport interface SWAPThemeProviderProps {\n theme?: Theme;\n children?: React.ReactNode;\n}\n\nconst defaultTheme = createSwapTheme();\n\nexport const SWAPThemeProvider: React.FC<SWAPThemeProviderProps> = ({ theme, children }) => (\n <ThemeProvider theme={theme ?? defaultTheme}>\n <CssBaseline />\n {children}\n </ThemeProvider>\n);\n","import { createTheme, type Theme, type ThemeOptions } from \"@mui/material/styles\";\nimport { deepmerge } from \"@mui/utils\";\nimport \"./augmentation\";\nimport { swapColors, swapRadius, swapShadows, swapBreakpoints, swapFontFamily } from \"./tokens\";\nimport { buttonRootStyles, buttonVariants } from \"./button.styles\";\nimport { swapTypographyVariants, swapTypographyVariantMapping } from \"./typography.styles\";\n\nconst c = swapColors;\n\nexport function createSwapTheme(options?: ThemeOptions): Theme {\n // 以 deepmerge 先併入 options 再建 theme:cssVariables 模式下 createTheme\n // 的第二參數合併不會覆蓋已生成的色彩方案,故不可用 createTheme(base, options)。\n const base: ThemeOptions = {\n cssVariables: true,\n palette: {\n primary: { main: c.primary.primary400 },\n error: { main: c.danger.danger800 },\n success: { main: c.success.success500 },\n warning: { main: c.secondary.secondary500 },\n swap: c,\n },\n breakpoints: {\n values: {\n xxs: swapBreakpoints.xxs,\n xs: swapBreakpoints.xs,\n sm: swapBreakpoints.sm,\n md: swapBreakpoints.md,\n lg: swapBreakpoints.lg,\n xl: swapBreakpoints.xl,\n xxl: swapBreakpoints.xxl,\n },\n },\n shape: { borderRadius: 8 },\n typography: { fontFamily: swapFontFamily, ...swapTypographyVariants },\n components: {\n MuiTypography: {\n defaultProps: { variantMapping: swapTypographyVariantMapping },\n },\n MuiSkeleton: {\n styleOverrides: {\n root: { backgroundColor: c.black.black400, transform: \"unset\" },\n },\n },\n MuiPagination: {\n defaultProps: { shape: \"rounded\", variant: \"outlined\" },\n },\n MuiPaginationItem: {\n styleOverrides: {\n root: {\n minWidth: 24,\n width: 24,\n height: 24,\n borderRadius: \"5px\",\n borderColor: c.black.black500,\n color: c.black.black800,\n padding: 0,\n margin: \"0px 2px\",\n fontSize: 11,\n fontWeight: 700,\n lineHeight: 1.4,\n transition: \"color 250ms, background-color 250ms\",\n \"&:hover\": {\n borderColor: c.black.black800,\n backgroundColor: c.black.white,\n },\n \"&.Mui-selected\": {\n color: c.black.white,\n backgroundColor: c.primary.primary400,\n border: \"none\",\n boxShadow: swapShadows.s,\n \"&:hover\": { backgroundColor: c.primary.primary400 },\n },\n },\n },\n },\n MuiButton: {\n defaultProps: {\n variant: \"primary\",\n disableElevation: true,\n disableFocusRipple: true,\n },\n styleOverrides: {\n root: { ...buttonRootStyles, variants: buttonVariants },\n },\n },\n MuiCard: {\n styleOverrides: {\n root: { borderRadius: \"18px\", border: \"1px solid rgba(0, 0, 0, 0.13)\" },\n },\n },\n MuiPaper: {\n styleOverrides: {\n root: { border: `1px solid ${c.black.black500}` },\n rounded: { borderRadius: swapRadius.m },\n elevation8: { boxShadow: swapShadows.m },\n },\n },\n MuiOutlinedInput: {\n styleOverrides: { root: { borderRadius: swapRadius.m } },\n },\n MuiFormHelperText: {\n styleOverrides: {\n root: {\n marginTop: 4,\n fontSize: 14,\n color: c.black.black700,\n \"&.Mui-error\": { color: c.danger.danger800 },\n },\n },\n },\n MuiIconButton: {\n styleOverrides: { root: { padding: 0 } },\n },\n },\n };\n return createTheme(deepmerge(base, options ?? {}));\n}\n","import * as React from 'react';\nimport { isValidElementType } from 'react-is';\n\n// https://github.com/sindresorhus/is-plain-obj/blob/main/index.js\nexport function isPlainObject(item) {\n if (typeof item !== 'object' || item === null) {\n return false;\n }\n const prototype = Object.getPrototypeOf(item);\n return (prototype === null || prototype === Object.prototype || Object.getPrototypeOf(prototype) === null) && !(Symbol.toStringTag in item) && !(Symbol.iterator in item);\n}\nfunction deepClone(source) {\n if (/*#__PURE__*/React.isValidElement(source) || isValidElementType(source) || !isPlainObject(source)) {\n return source;\n }\n const output = {};\n Object.keys(source).forEach(key => {\n output[key] = deepClone(source[key]);\n });\n return output;\n}\n\n/**\n * Merge objects deeply.\n * It will shallow copy React elements.\n *\n * If `options.clone` is set to `false` the source object will be merged directly into the target object.\n *\n * @example\n * ```ts\n * deepmerge({ a: { b: 1 }, d: 2 }, { a: { c: 2 }, d: 4 });\n * // => { a: { b: 1, c: 2 }, d: 4 }\n * ````\n *\n * @param target The target object.\n * @param source The source object.\n * @param options The merge options.\n * @param options.clone Set to `false` to merge the source object directly into the target object.\n * @returns The merged object.\n */\nexport default function deepmerge(target, source, options = {\n clone: true\n}) {\n const output = options.clone ? {\n ...target\n } : target;\n if (isPlainObject(target) && isPlainObject(source)) {\n Object.keys(source).forEach(key => {\n if (/*#__PURE__*/React.isValidElement(source[key]) || isValidElementType(source[key])) {\n output[key] = source[key];\n } else if (isPlainObject(source[key]) &&\n // Avoid prototype pollution\n Object.prototype.hasOwnProperty.call(target, key) && isPlainObject(target[key])) {\n // Since `output` is a clone of `target` and we have narrowed `target` in this block we can cast to the same type.\n output[key] = deepmerge(target[key], source[key], options);\n } else if (options.clone) {\n output[key] = isPlainObject(source[key]) ? deepClone(source[key]) : source[key];\n } else {\n output[key] = source[key];\n }\n });\n }\n return output;\n}","export const swapColors = {\n primary: {\n primary50: \"#E6E9F8\",\n primary100: \"#C1C7ED\",\n primary200: \"#97A3E1\",\n primary300: \"#6C7FD5\",\n primary400: \"#4862CC\",\n primary500: \"#1747C2\",\n primary600: \"#0F3FB8\",\n primary700: \"#0035AC\",\n primary800: \"#1F3C8E\",\n primary900: \"#002BA1\",\n primaryA11y: \"#071E60\",\n },\n secondary: {\n secondary50: \"#FEF8E3\",\n secondary100: \"#FCECB7\",\n secondary200: \"#FBDF8A\",\n secondary300: \"#FAD45C\",\n secondary400: \"#F9C93F\",\n secondary500: \"#F8C131\",\n secondary600: \"#F7B52C\",\n secondary700: \"#F6A128\",\n secondary800: \"#F59225\",\n secondary900: \"#F27521\",\n secondaryA11y: \"#E5640C\",\n },\n danger: {\n danger50: \"#FFEBED\",\n danger100: \"#FFCCD0\",\n danger200: \"#F99894\",\n danger300: \"#F26E6A\",\n danger400: \"#FC4A43\",\n danger500: \"#FF3622\",\n danger600: \"#F32A23\",\n danger700: \"#E11C1E\",\n danger800: \"#D40F14\",\n danger900: \"#C60003\",\n dangerA11y: \"#A80003\",\n },\n success: {\n success50: \"#E6F6E8\",\n success100: \"#C3E8C6\",\n success200: \"#9BD9A1\",\n success300: \"#70CB7A\",\n success400: \"#4CC05D\",\n success500: \"#1EB43F\",\n success600: \"#10A535\",\n success700: \"#00932A\",\n success800: \"#00821E\",\n success900: \"#006305\",\n successA11y: \"#015C16\",\n },\n black: {\n white: \"#FFFFFF\",\n black100: \"#F9F9F9\",\n black200: \"#F6F6F6\",\n black300: \"#F2F2F2\",\n black400: \"#ECECEC\",\n black500: \"#CCCCCC\",\n black600: \"#909090\",\n black700: \"#6F6F6F\",\n black800: \"#4B4B4B\",\n black900: \"#2D2D2D\",\n black1000: \"#000000\",\n },\n} as const;\n\nexport const swapRadius = {\n s: \"4px\",\n m: \"8px\",\n l: \"12px\",\n xl: \"20px\",\n} as const;\n\nexport const swapShadows = {\n s: \"0px 2px 4px rgba(0, 0, 0, 0.12)\",\n m: \"0px 4px 12px rgba(0, 0, 0, 0.1)\",\n l: \"0px 6px 24px rgba(0, 0, 0, 0.1)\",\n xl: \"0px 8px 40px rgba(0, 0, 0, 0.12)\",\n} as const;\n\nexport const swapBreakpoints = {\n xxs: 0,\n xs: 375,\n sm: 576,\n md: 768,\n lg: 992,\n xl: 1200,\n xxl: 1400,\n} as const;\n\n// @fontsource 的 font-family 名稱(含空格),與 v1 的 \"MPLUSRounded1c\" 不同\nexport const swapFontFamily = ['\"M PLUS Rounded 1c\"', '\"Noto Sans TC\"', \"sans-serif\"].join(\", \");\n\nexport type SwapColors = typeof swapColors;\n","import { swapColors } from \"./tokens\";\n\nconst c = swapColors;\n\nexport const buttonRootStyles = {\n textTransform: \"unset\" as const,\n borderRadius: \"8px\",\n fontWeight: 700,\n lineHeight: 1.125,\n whiteSpace: \"nowrap\" as const, // v1 將 children 包 nowrap 容器:按鈕文字不換行\n};\n\n// 每個 variant 一組色彩;狀態(hover/active/focus-visible/disabled)以巢狀選擇器表達\nconst variantColor = [\n {\n variant: \"primary\",\n color: c.black.white,\n backgroundColor: c.primary.primary400,\n border: `1px solid ${c.primary.primary600}`,\n hoverBg: c.primary.primary300,\n activeBg: c.primary.primary500,\n focusShadow: \"0px 0px 0px 4px #D7DFF8\",\n },\n {\n variant: \"secondary\",\n color: c.primary.primary400,\n backgroundColor: c.black.white,\n border: `1px solid ${c.primary.primary400}`,\n hoverBg: c.primary.primary50,\n activeBg: c.primary.primary100,\n focusShadow: \"0px 0px 0px 4px #D7DFF8\",\n },\n {\n variant: \"tertiary\",\n color: c.black.black800,\n backgroundColor: c.black.black400,\n border: \"none\",\n hoverBg: c.black.black500,\n activeBg: c.black.black600,\n focusShadow: \"0px 0px 0px 4px rgba(0, 0, 0, 0.1)\",\n },\n {\n variant: \"text\",\n color: c.primary.primary400,\n backgroundColor: c.black.white,\n border: \"none\",\n hoverBg: c.primary.primary50,\n activeBg: c.primary.primary100,\n focusShadow: \"0px 0px 0px 4px #D7DFF8\",\n },\n {\n variant: \"black\",\n color: c.black.black800,\n backgroundColor: c.black.white,\n border: \"none\",\n hoverBg: c.black.black400,\n activeBg: c.black.black500,\n focusShadow: \"0px 0px 0px 4px #CCCCCC\",\n },\n {\n variant: \"danger\",\n color: c.black.white,\n backgroundColor: c.danger.danger800,\n border: `1px solid ${c.danger.dangerA11y}`,\n hoverBg: c.danger.danger600,\n activeBg: c.danger.danger900,\n focusShadow: \"0px 0px 0px 4px #FFCCD0\",\n },\n] as const;\n\nconst sizeStyle = [\n { size: \"small\", height: \"40px\", padding: \"12px 16px\", fontSize: 14 },\n { size: \"medium\", height: \"48px\", padding: \"15px 24px\", fontSize: 16 },\n { size: \"large\", height: \"56px\", padding: \"19px 32px\", fontSize: 16 },\n] as const;\n\nexport const buttonVariants = [\n ...variantColor.map((v) => ({\n props: { variant: v.variant },\n style: {\n color: v.color,\n backgroundColor: v.backgroundColor,\n border: v.border,\n \"&:hover\": { backgroundColor: v.hoverBg },\n \"&:active\": { backgroundColor: v.activeBg },\n \"&:focus-visible\": { boxShadow: v.focusShadow },\n // 只夾透明度:文字色/底色由 root 提供,覆蓋會擋掉 MUI loading 時隱藏文字的機制\n \"&:disabled\": { opacity: 0.4 },\n // loading spinner 顏色跟隨 variant 文字色(否則 MUI 預設灰 rgba(0,0,0,0.26) 幾乎隱形)\n \"& .MuiButton-loadingIndicator\": { color: v.color },\n },\n })),\n ...sizeStyle.map((s) => ({\n props: { size: s.size },\n style: { height: s.height, padding: s.padding, fontSize: s.fontSize },\n })),\n];\n","type VariantStyle = {\n fontSize: string;\n fontWeight: number;\n lineHeight: number;\n letterSpacing: string;\n};\n\n// 「規格表」——以程式生成 32 個 variant,避免手抄 32 段\nconst FONT_SIZE: Record<string, string> = {\n d1: \"4.5rem\", d2: \"4rem\", d3: \"3.5rem\", d4: \"3rem\",\n h1: \"2.5rem\", h2: \"2rem\", h3: \"1.75rem\", h4: \"1.5rem\", h5: \"1.25rem\", h6: \"1.125rem\",\n title: \"1rem\", subtitle: \"0.875rem\",\n body1: \"1rem\", body2: \"0.875rem\",\n caption1: \"0.75rem\", caption2: \"0.75rem\",\n small1: \"0.6875rem\", small2: \"0.6875rem\",\n tiny1: \"0.625rem\", tiny2: \"0.625rem\",\n button_l: \"1rem\", button_s: \"0.875rem\",\n};\n\n// 有 _loose 變體的 base 名(button_l/s 無 _loose)\nconst LOOSE_BASES = [\n \"title\", \"subtitle\", \"body1\", \"body2\",\n \"caption1\", \"caption2\", \"small1\", \"small2\", \"tiny1\", \"tiny2\",\n];\n\nconst WEIGHT_400 = new Set([\"body1\", \"body2\", \"caption2\", \"small2\", \"tiny2\"]); // 其餘皆 700\nconst LH_125 = new Set([\"d1\", \"d2\", \"d3\", \"h1\", \"h2\", \"h3\"]);\nconst LH_1125 = new Set([\"button_l\", \"button_s\"]);\n\nfunction baseName(variant: string): string {\n return variant.endsWith(\"_loose\") ? variant.slice(0, -\"_loose\".length) : variant;\n}\n\nfunction weightOf(variant: string): number {\n return WEIGHT_400.has(baseName(variant)) ? 400 : 700;\n}\n\nfunction lineHeightOf(variant: string): number {\n if (variant.endsWith(\"_loose\")) return 1.6;\n if (LH_125.has(variant)) return 1.25;\n if (LH_1125.has(variant)) return 1.125;\n return 1.4;\n}\n\nconst ALL_VARIANTS: string[] = [\n \"d1\", \"d2\", \"d3\", \"d4\",\n \"h1\", \"h2\", \"h3\", \"h4\", \"h5\", \"h6\",\n ...Object.keys(FONT_SIZE).filter((k) => !/^d\\d|^h\\d/.test(k)),\n ...LOOSE_BASES.map((b) => `${b}_loose`),\n];\n\n// 去重並固定順序\nexport const SWAP_TYPOGRAPHY_VARIANTS: readonly string[] = Array.from(new Set(ALL_VARIANTS));\n\nexport const swapTypographyVariants: Record<string, VariantStyle> = Object.fromEntries(\n SWAP_TYPOGRAPHY_VARIANTS.map((v) => [\n v,\n {\n fontSize: FONT_SIZE[baseName(v)],\n fontWeight: weightOf(v),\n lineHeight: lineHeightOf(v),\n letterSpacing: \"0em\",\n },\n ]),\n);\n\n// variant → HTML 標籤(heading 用語意標籤,display 用 h1,button 用 span,其餘 p)\nexport const swapTypographyVariantMapping: Record<string, string> = Object.fromEntries(\n SWAP_TYPOGRAPHY_VARIANTS.map((v) => {\n if (/^h[1-6]$/.test(v)) return [v, v];\n if (/^d[1-4]$/.test(v)) return [v, \"h1\"];\n if (v.startsWith(\"button\")) return [v, \"span\"];\n return [v, \"p\"];\n }),\n);\n","import * as React from \"react\";\nimport MuiTypography from \"@mui/material/Typography\";\nimport type { TypographyProps as MuiTypographyProps } from \"@mui/material/Typography\";\nimport { resolveSwapTextColor, type SwapTextColor } from \"../theme/textColor\";\n\nexport interface SwapTypographyProps {\n variant?: MuiTypographyProps[\"variant\"];\n color?: SwapTextColor;\n mode?: \"\" | \"dark\";\n children?: React.ReactNode;\n style?: React.CSSProperties;\n}\n\n// React.memo 沿用 v1(排版元件常大量重複渲染)\nconst Typography: React.FC<SwapTypographyProps> = React.memo(function Typography({\n variant = \"body1\",\n color,\n mode,\n children,\n style,\n}) {\n return (\n <MuiTypography variant={variant} sx={{ color: resolveSwapTextColor(color, mode) }} style={style}>\n {children}\n </MuiTypography>\n );\n});\n\nexport default Typography;\n","import { swapColors } from \"./tokens\";\n\nconst c = swapColors;\n\n// 攤平所有色階為單一 token→hex 表(鍵皆唯一:primary50…、secondary…、danger…、success…、white、black100…)\n// Link / IconButton 等元件共用\nexport const swapTokenMap: Record<string, string> = {\n ...c.primary,\n ...c.secondary,\n ...c.danger,\n ...c.success,\n ...c.black,\n};\n\nexport type SwapTextColor = \"primary\" | \"secondary\" | \"tertiary\" | keyof typeof swapTokenMap;\n\nexport function resolveSwapTextColor(color?: string, mode?: \"\" | \"dark\"): string {\n const dark = mode === \"dark\";\n if (color === \"primary\") return dark ? c.black.white : c.black.black1000;\n if (color === \"secondary\") return dark ? c.black.black500 : c.black.black800;\n if (color === \"tertiary\") return dark ? c.black.black600 : c.black.black700;\n if (color && color in swapTokenMap) return swapTokenMap[color];\n return c.black.black1000;\n}\n","import * as React from \"react\";\nimport Box from \"@mui/material/Box\";\nimport { swapColors as c } from \"../theme/tokens\";\nimport type { ChipProps } from \"./Chip.types\";\nimport { cssSize } from \"../utils/cssSize\";\n\nconst SHADE = {\n neutral: { fill: c.black.black300, border: c.black.black500, text: c.black.black800 },\n primary: { fill: c.primary.primary50, border: c.primary.primary800, text: c.primary.primary800 },\n success: { fill: c.success.success50, border: c.success.success800, text: c.success.success800 },\n danger: { fill: c.danger.danger50, border: c.danger.danger800, text: c.danger.danger800 },\n} as const;\n\nconst successIcon = (\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M14 4.66666L6 12.6667L2.33333 9L3.27333 8.06L6 10.78L13.06 3.72666L14 4.66666Z\"\n fill=\"#00821E\"\n />\n </svg>\n);\n\nconst Chip = React.forwardRef<HTMLDivElement, ChipProps>(function Chip(\n { variant = \"primary\", outlined, contained, width, height, label, icon, sx, ...rest },\n ref,\n) {\n const s = SHADE[variant];\n const isOutlined = outlined || !contained;\n const ourStyles = {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n borderRadius: \"4px\",\n fontSize: \"0.75rem\",\n lineHeight: \"17px\",\n fontWeight: 700,\n width: cssSize(width) ?? \"fit-content\",\n height: cssSize(height) ?? 24,\n padding: isOutlined ? \"0px 8px\" : \"0px 9px\",\n backgroundColor: isOutlined ? c.black.white : s.fill,\n border: isOutlined ? `1px solid ${s.border}` : \"none\",\n color: s.text,\n };\n return (\n <Box ref={ref} sx={[ourStyles, ...(Array.isArray(sx) ? sx : [sx])]} {...rest}>\n <Box component=\"span\" sx={{ marginRight: variant === \"success\" ? \"4px\" : 0 }}>\n {label}\n </Box>\n {variant === \"success\" && !icon ? successIcon : icon}\n </Box>\n );\n});\n\nexport default Chip;\n","/**\n * 尺寸值正規化:純數字字串(\"100\")轉為數字,讓 emotion 自動補 px。\n * 使 100、\"100\"、\"100px\"、\"fit-content\"、\"50%\" 皆為有效輸入。\n */\nexport function cssSize(v: number | string): number | string;\nexport function cssSize(v?: number | string): number | string | undefined;\nexport function cssSize(v?: number | string): number | string | undefined {\n if (typeof v === \"string\" && /^\\d+(\\.\\d+)?$/.test(v.trim())) return Number(v);\n return v;\n}\n","import * as React from \"react\";\nimport MuiCircularProgress from \"@mui/material/CircularProgress\";\nimport { swapColors as c } from \"../theme/tokens\";\nimport type { CircularProgressProps } from \"./CircularProgress.types\";\nimport { cssSize } from \"../utils/cssSize\";\n\nconst CircularProgress = React.forwardRef<HTMLDivElement, CircularProgressProps>(\n function CircularProgress({ dark, size = 20, thickness = 5, style, ...rest }, ref) {\n return (\n <div ref={ref} style={{ position: \"relative\", width: cssSize(size), height: cssSize(size), ...style }} {...rest}>\n <MuiCircularProgress\n variant=\"determinate\"\n value={100}\n size={size}\n thickness={thickness}\n style={{\n position: \"absolute\",\n left: 0,\n top: 0,\n color: dark ? c.black.white : c.black.black500,\n opacity: dark ? 0.4 : 1,\n }}\n />\n <MuiCircularProgress\n variant=\"indeterminate\"\n size={size}\n thickness={thickness}\n style={{\n position: \"absolute\",\n left: 0,\n top: 0,\n color: dark ? c.black.white : c.primary.primary800,\n }}\n />\n </div>\n );\n },\n);\n\nexport default CircularProgress;\n","import * as React from \"react\";\nimport MuiTooltip from \"@mui/material/Tooltip\";\nimport { swapColors as c, swapShadows } from \"../theme/tokens\";\nimport type { TooltipProps } from \"./Tooltip.types\";\nimport { cssSize } from \"../utils/cssSize\";\n\nfunction resolveMargin(p: TooltipProps): string | number {\n if (p.margin) return p.margin;\n if (p.marginTop) return `0px 0px ${p.marginTop}px 0px`;\n if (p.marginBottom) return `${p.marginBottom}px 0px 0px 0px`;\n if (p.marginRight) return `0px 0px 0px ${p.marginRight}px`;\n if (p.marginLeft) return `0px ${p.marginLeft}px 0px 0px`;\n return \"10px 0px\";\n}\n\nconst Tooltip: React.FC<TooltipProps> = (props) => {\n const {\n dark,\n light,\n arrow,\n margin,\n marginTop,\n marginBottom,\n marginRight,\n marginLeft,\n width = 240,\n children,\n childrenStyle,\n slotProps: userSlotProps,\n ...other\n } = props;\n const bg = light ? c.black.white : c.black.black900;\n const fg = light ? c.black.black800 : c.black.white;\n const ourTooltipSx = {\n margin: resolveMargin(props),\n backgroundColor: bg,\n color: fg,\n padding: arrow ? \"7.5px 12px\" : \"12px\",\n boxShadow: swapShadows.m,\n border: light ? `1px solid ${c.black.black500}` : \"none\",\n maxWidth: cssSize(width),\n fontSize: 12,\n lineHeight: 1.4,\n fontWeight: arrow ? 700 : 400,\n };\n // 合併產品端 slotProps:其他 slot 直通,tooltip/arrow 的 sx 以陣列合併(產品端在後、可複寫)\n const us = (userSlotProps ?? {}) as Record<string, { sx?: unknown } | undefined>;\n const asArr = (v: unknown) => (Array.isArray(v) ? v : v ? [v] : []);\n return (\n <MuiTooltip\n {...other}\n arrow={arrow}\n slotProps={{\n ...us,\n tooltip: { ...us.tooltip, sx: [ourTooltipSx, ...asArr(us.tooltip?.sx)] },\n arrow: { ...us.arrow, sx: [{ color: bg }, ...asArr(us.arrow?.sx)] },\n }}\n >\n <span\n style={{\n width: \"fit-content\",\n height: \"fit-content\",\n display: \"inline-flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n ...childrenStyle,\n }}\n >\n {children}\n </span>\n </MuiTooltip>\n );\n};\n\nexport default Tooltip;\n","import * as React from \"react\";\nimport Box from \"@mui/material/Box\";\nimport useMediaQuery from \"@mui/material/useMediaQuery\";\nimport { swapBreakpoints as bp } from \"../theme/tokens\";\nimport type { ContainerProps } from \"./Container.types\";\n\nconst MAXW = { lg: 960, xl: 1140, xxl: 1320 } as const;\nconst PAD = { xxs: \"0px 8px\", xs: \"0px 16px\", sm: \"0px 24px\", md: \"0px 24px\" } as const;\n\nconst Container = React.forwardRef<HTMLDivElement, ContainerProps>(function Container(\n { children, maxWidth, padding, sx, ...rest },\n ref,\n) {\n const upXXL = useMediaQuery(`(min-width:${bp.xxl}px)`);\n const upXL = useMediaQuery(`(min-width:${bp.xl}px)`);\n const upLG = useMediaQuery(`(min-width:${bp.lg}px)`);\n const upMD = useMediaQuery(`(min-width:${bp.md}px)`);\n const upSM = useMediaQuery(`(min-width:${bp.sm}px)`);\n const upXS = useMediaQuery(`(min-width:${bp.xs}px)`);\n\n const resolvedMaxWidth =\n typeof maxWidth === \"number\"\n ? maxWidth\n : maxWidth\n ? MAXW[maxWidth]\n : upXXL ? 1320 : upXL ? 1140 : upLG ? 960 : undefined;\n\n const resolvedPadding =\n typeof padding === \"number\"\n ? padding\n : padding\n ? PAD[padding]\n : upXXL || upXL || upLG\n ? \"0px 0px\"\n : upMD || upSM ? \"0px 24px\" : upXS ? \"0px 16px\" : \"0px 8px\";\n\n const ourStyles = {\n marginLeft: \"auto\",\n marginRight: \"auto\",\n width: \"100%\",\n maxWidth: resolvedMaxWidth,\n padding: resolvedPadding,\n };\n return (\n <Box ref={ref} sx={[ourStyles, ...(Array.isArray(sx) ? sx : [sx])]} {...rest}>\n {children}\n </Box>\n );\n});\n\nexport default Container;\n","import * as React from \"react\";\nimport MuiPaper from \"@mui/material/Paper\";\nimport useMediaQuery from \"@mui/material/useMediaQuery\";\nimport { swapColors as c, swapShadows, swapBreakpoints as bp } from \"../theme/tokens\";\nimport type { PaperProps } from \"./Paper.types\";\nimport { cssSize } from \"../utils/cssSize\";\n\nconst Paper = React.forwardRef<HTMLDivElement, PaperProps>(function Paper(\n { width, height, sx, ...rest },\n ref,\n) {\n const upSM = useMediaQuery(`(min-width:${bp.sm}px)`);\n const upXS = useMediaQuery(`(min-width:${bp.xs}px)`);\n const padding = upSM ? 40 : upXS ? 24 : 16;\n const ourStyles = {\n boxShadow: swapShadows.xl,\n borderRadius: \"12px\",\n border: `1px solid ${c.black.black500}`,\n width: cssSize(width) ?? \"100%\",\n height: cssSize(height) ?? \"100%\",\n padding: `${padding}px`,\n };\n return (\n <MuiPaper\n ref={ref}\n variant=\"outlined\"\n sx={[ourStyles, ...(Array.isArray(sx) ? sx : [sx])]}\n {...rest}\n />\n );\n});\n\nexport default Paper;\n","import * as React from \"react\";\nimport MuiLink from \"@mui/material/Link\";\nimport { swapTokenMap } from \"../theme/textColor\";\nimport { swapColors as c } from \"../theme/tokens\";\nimport type { LinkProps } from \"./Link.types\";\n\nconst Link = React.forwardRef<HTMLAnchorElement, LinkProps>(function Link(\n { color, sx, ...rest },\n ref,\n) {\n const ourStyles = {\n cursor: \"pointer\",\n color: (color && swapTokenMap[color]) || c.black.black1000,\n fontWeight: 700,\n borderRadius: \"4px\",\n lineHeight: 1.4,\n outline: \"none\",\n boxSizing: \"border-box\" as const,\n \"&:focus-visible\": {\n padding: \"8px\",\n border: `1px solid ${c.primary.primary400}`,\n },\n };\n return (\n <MuiLink\n ref={ref}\n underline=\"hover\"\n tabIndex={0}\n sx={[ourStyles, ...(Array.isArray(sx) ? sx : [sx])]}\n {...rest}\n />\n );\n});\n\nexport default Link;\n","import * as React from \"react\";\nimport MuiIconButton from \"@mui/material/IconButton\";\nimport { swapTokenMap } from \"../theme/textColor\";\nimport { swapColors as c } from \"../theme/tokens\";\nimport type { IconButtonProps } from \"./IconButton.types\";\nimport { cssSize } from \"../utils/cssSize\";\n\nconst resolve = (v?: string) => (v ? (swapTokenMap[v] ?? v) : undefined);\n\nconst IconButton = React.forwardRef<HTMLButtonElement, IconButtonProps>(function IconButton(\n { width = 32, height = 32, hoverColor, hoverIconColor, sx, ...rest },\n ref,\n) {\n const hoverBg = resolve(hoverColor) ?? c.black.black400;\n const hoverFill = resolve(hoverIconColor);\n const ourStyles = {\n width: cssSize(width),\n height: cssSize(height),\n borderRadius: \"8px\",\n \"&:hover\": {\n backgroundColor: hoverBg,\n ...(hoverFill ? { \"& svg path\": { fill: hoverFill } } : {}),\n },\n };\n return <MuiIconButton ref={ref} sx={[ourStyles, ...(Array.isArray(sx) ? sx : [sx])]} {...rest} />;\n});\n\nexport default IconButton;\n","import * as React from \"react\";\nimport Menu from \"@mui/material/Menu\";\nimport MenuItem from \"@mui/material/MenuItem\";\nimport Typography from \"./Typography\";\nimport type { BreadcrumbProps } from \"./Breadcrumb.types\";\n\nconst Sep: React.FC<{ children: React.ReactNode }> = ({ children }) => (\n <Typography variant=\"body2\" style={{ margin: \"0 8px\" }}>\n {children}\n </Typography>\n);\n\n// v1 的三點省略圖示(hover 時多一條底線)\nconst dotsPath =\n \"M1.946 16.182C2.45 16.182 2.87 15.79 2.87 15.216C2.87 14.642 2.45 14.222 1.946 14.222C1.442 14.222 1.022 14.642 1.022 15.216C1.022 15.79 1.442 16.182 1.946 16.182ZM5.84248 16.182C6.34648 16.182 6.76648 15.79 6.76648 15.216C6.76648 14.642 6.34648 14.222 5.84248 14.222C5.33848 14.222 4.91848 14.642 4.91848 15.216C4.91848 15.79 5.33848 16.182 5.84248 16.182ZM9.73897 16.182C10.243 16.182 10.663 15.79 10.663 15.216C10.663 14.642 10.243 14.222 9.73897 14.222C9.23497 14.222 8.81497 14.642 8.81497 15.216C8.81497 15.79 9.23497 16.182 9.73897 16.182Z\";\n\nconst ThreeDots: React.FC<{ hover: boolean }> = ({ hover }) => (\n <svg width=\"12\" height=\"20\" viewBox=\"0 0 12 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d={dotsPath} fill=\"#4B4B4B\" />\n {hover && <path d=\"M0 18.1H11.685V18.8H0V18.1Z\" fill=\"#4B4B4B\" />}\n </svg>\n);\n\nconst Breadcrumb = React.forwardRef<HTMLDivElement, BreadcrumbProps>(function Breadcrumb(\n { maxItems, separator = \"/\", children, style, ...rest },\n ref,\n) {\n const [anchorEl, setAnchorEl] = React.useState<null | HTMLElement>(null);\n const [hoverDots, setHoverDots] = React.useState(false);\n const items = React.Children.toArray(children);\n const collapsed = !!maxItems && items.length > maxItems;\n const tail = collapsed ? items.slice(items.length - maxItems + 1) : items;\n const hidden = collapsed ? items.slice(1, items.length - maxItems + 1) : [];\n\n const row = (node: React.ReactNode, isLast: boolean, key: React.Key) => (\n <div\n key={key}\n style={{ display: \"flex\", alignItems: \"center\", fontSize: 14, fontWeight: isLast ? 700 : 400 }}\n >\n {node}\n {!isLast && <Sep>{separator}</Sep>}\n </div>\n );\n\n return (\n <div ref={ref} style={{ display: \"flex\", alignItems: \"center\", ...style }} {...rest}>\n {collapsed ? (\n <>\n <div style={{ display: \"flex\", alignItems: \"center\", fontSize: 14 }}>\n {items[0]}\n <Sep>{separator}</Sep>\n <div\n data-testid=\"breadcrumb-ellipsis\"\n onClick={(e) => setAnchorEl(e.currentTarget)}\n onMouseEnter={() => setHoverDots(true)}\n onMouseLeave={() => setHoverDots(false)}\n style={{ cursor: \"pointer\" }}\n >\n <ThreeDots hover={hoverDots} />\n </div>\n <Sep>{separator}</Sep>\n </div>\n {tail.map((node, i) => row(node, i === tail.length - 1, i))}\n </>\n ) : (\n items.map((node, i) => row(node, i === items.length - 1, i))\n )}\n <Menu anchorEl={anchorEl} open={Boolean(anchorEl)} onClose={() => setAnchorEl(null)}>\n {hidden.map((node, i) => {\n const el = node as React.ReactElement<{\n children?: React.ReactNode;\n href?: string;\n target?: string;\n }>;\n return (\n <MenuItem\n key={i}\n onClick={() => {\n const { href, target } = el.props;\n if (href) {\n if (target === \"_blank\") window.open(href);\n else window.location.href = href;\n }\n setAnchorEl(null);\n }}\n >\n {el.props.children}\n </MenuItem>\n );\n })}\n </Menu>\n </div>\n );\n});\n\nexport default Breadcrumb;\n","import * as React from \"react\";\nimport Link from \"./Link\";\nimport type { BreadcrumbItemProps } from \"./BreadcrumbItem.types\";\n\nconst BreadcrumbItem = React.forwardRef<HTMLAnchorElement, BreadcrumbItemProps>(\n function BreadcrumbItem({ last, sx, ...rest }, ref) {\n const ourStyles = {\n fontWeight: last ? 700 : 400,\n ...(last\n ? { cursor: \"unset\", textDecoration: \"none\", \"&:hover\": { textDecoration: \"none\" } }\n : {}),\n };\n return (\n <Link\n ref={ref}\n color={last ? \"black1000\" : \"black800\"}\n sx={[ourStyles, ...(Array.isArray(sx) ? sx : [sx])]}\n {...rest}\n />\n );\n },\n);\n\nexport default BreadcrumbItem;\n","import * as React from \"react\";\nimport MuiTextField from \"@mui/material/TextField\";\nimport { swapColors as c } from \"../theme/tokens\";\nimport type { TextFieldProps } from \"./TextField.types\";\nimport { cssSize } from \"../utils/cssSize\";\n\nconst TextField = React.forwardRef<HTMLDivElement, TextFieldProps>(function TextField(\n { width, height, sx, ...rest },\n ref,\n) {\n // v1 依賴使用端必傳 height、否則欄位高度坍塌(垂直 padding 為 0)。\n // v2 改善:預設 48px(與 Button medium 同高);multiline 維持自動高度。\n const resolvedHeight = cssSize(height) ?? (rest.multiline ? undefined : 48);\n const ourStyles = {\n \"& .MuiFormHelperText-root\": { marginLeft: \"16px\", marginRight: \"16px\" },\n \"& .MuiOutlinedInput-root\": {\n width: cssSize(width),\n height: resolvedHeight,\n padding: \"0px 16px\",\n backgroundColor: \"white\",\n fontSize: 16,\n fontWeight: 400,\n \"& fieldset\": { borderColor: c.black.black500, \"& legend\": { width: \"0.01px\" } },\n \"&.Mui-focused\": {\n boxShadow: \"0px 0px 0px 4px #D7DFF8\",\n \"& fieldset\": { border: `1px solid ${c.primary.primary400} !important` },\n \"&.Mui-error\": {\n boxShadow: \"none\",\n \"& fieldset\": { border: `1px solid ${c.danger.danger800} !important` },\n },\n },\n \"&.Mui-error fieldset\": { border: `1px solid ${c.danger.danger800} !important` },\n },\n \"& .MuiInputBase-input\": {\n padding: 0,\n \"&::placeholder\": { color: c.black.black700, opacity: 1 },\n \"&:-webkit-autofill\": { WebkitBoxShadow: \"0 0 0 100px #FFFFFF inset\" },\n },\n // resting label 垂直置中隨欄位高度自適應(MUI 預設偏移是按 56px 高算的,\n // 48px 下會偏下 ~3.5px;label 行高約 23px)\n ...(typeof resolvedHeight === \"number\"\n ? {\n \"& .MuiInputLabel-root:not(.MuiInputLabel-shrink)\": {\n transform: `translate(14px, ${Math.round((resolvedHeight - 23) / 2)}px)`,\n },\n }\n : {}),\n \"& .MuiInputLabel-root.MuiInputLabel-shrink\": {\n transform: \"translate(14px, -10px)\",\n backgroundColor: \"white\",\n padding: \"0 4px\",\n fontSize: 14,\n fontWeight: 700,\n color: c.black.black800,\n \"&.Mui-focused, &.Mui-error\": { color: c.black.black800 },\n },\n // select 模式(v1 selectRoot)\n \"& .MuiSelect-select\": {\n borderRadius: \"8px\",\n fontWeight: 400,\n minWidth: rest.fullWidth ? \"100%\" : \"unset\",\n display: \"flex\",\n alignItems: \"center\",\n \"&:focus\": { backgroundColor: \"white\", borderRadius: \"8px\" },\n },\n \"& .MuiSelect-icon\": { color: c.black.black700 },\n };\n // v1 select 模式的選單定位(anchorOrigin -9/-16)\n const slotProps = rest.select\n ? {\n ...rest.slotProps,\n select: {\n MenuProps: { anchorOrigin: { vertical: -9 as const, horizontal: -16 as const } },\n ...(rest.slotProps?.select as object | undefined),\n },\n }\n : rest.slotProps;\n return (\n <MuiTextField\n ref={ref}\n variant=\"outlined\"\n sx={[ourStyles, ...(Array.isArray(sx) ? sx : [sx])]}\n {...rest}\n slotProps={slotProps}\n />\n );\n});\n\nexport default TextField;\n","import * as React from \"react\";\nimport MuiCheckbox from \"@mui/material/Checkbox\";\nimport FormControlLabel from \"@mui/material/FormControlLabel\";\nimport Box from \"@mui/material/Box\";\nimport { swapColors as c } from \"../theme/tokens\";\nimport type { CheckBoxProps } from \"./CheckBox.types\";\n\nconst checkSvg = (\n <svg width=\"17\" height=\"16\" viewBox=\"0 0 17 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M1.5 8.5L7 13L15 2\" stroke=\"white\" strokeWidth=\"3\" strokeLinecap=\"round\" />\n </svg>\n);\n\nfunction iconSx(disableHover?: boolean) {\n return {\n position: \"absolute\",\n width: 24,\n height: 24,\n borderRadius: \"4px\",\n backgroundColor: c.black.white,\n border: `1px solid ${c.black.black500}`,\n \"input:hover ~ &\": {\n border: `1px solid ${disableHover ? c.black.black500 : c.black.black1000}`,\n },\n \"input:focus-visible ~ &\": { boxShadow: \"0px 0px 0px 4px #D7DFF8\" },\n \"input:disabled ~ &\": { opacity: 0.4 },\n \"input:disabled:hover ~ &\": { border: `1px solid ${c.black.black500}` },\n } as const;\n}\n\nfunction checkedIconSx(disableHover?: boolean) {\n return {\n position: \"absolute\",\n width: 24,\n height: 24,\n borderRadius: \"4px\",\n display: \"flex\",\n justifyContent: \"center\",\n alignItems: \"center\",\n backgroundColor: c.primary.primary400,\n border: `1px solid ${c.primary.primary600}`,\n \"input:hover ~ &\": {\n border: `1px solid ${disableHover ? c.primary.primary600 : c.primary.primaryA11y}`,\n },\n \"input:focus-visible ~ &\": { boxShadow: \"0px 0px 0px 4px #D7DFF8\" },\n \"input:disabled ~ &\": { opacity: 0.4 },\n \"input:disabled:hover ~ &\": { border: `1px solid ${c.primary.primary600}` },\n } as const;\n}\n\nconst CheckBox = React.forwardRef<HTMLButtonElement, CheckBoxProps>(function CheckBox(\n { disableHover, label, labelPlacement, checkedIcon, icon, sx, ...rest },\n ref,\n) {\n const ourStyles = {\n width: 40,\n height: 40,\n boxShadow: \"none\",\n \"&:hover, &.Mui-checked:hover\": {\n backgroundColor: disableHover ? \"unset\" : c.black.black300,\n },\n };\n return (\n <FormControlLabel\n label={label}\n labelPlacement={labelPlacement}\n style={{ marginRight: 0 }}\n control={\n <MuiCheckbox\n ref={ref}\n disableFocusRipple\n disableTouchRipple\n sx={[ourStyles, ...(Array.isArray(sx) ? sx : [sx])]}\n checkedIcon={\n <Box component=\"span\" sx={checkedIconSx(disableHover)}>\n {checkedIcon ?? checkSvg}\n </Box>\n }\n icon={<Box component=\"span\" sx={iconSx(disableHover)}>{icon ?? null}</Box>}\n {...rest}\n />\n }\n />\n );\n});\n\nexport default CheckBox;\n","import * as React from \"react\";\nimport MuiRadio from \"@mui/material/Radio\";\nimport FormControlLabel from \"@mui/material/FormControlLabel\";\nimport Box from \"@mui/material/Box\";\nimport { swapColors as c } from \"../theme/tokens\";\nimport type { RadioButtonProps } from \"./RadioButton.types\";\n\nconst dotSvg = (\n <svg width=\"10\" height=\"10\" viewBox=\"0 0 10 10\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <circle cx=\"5\" cy=\"5\" r=\"5\" fill=\"white\" />\n </svg>\n);\n\nfunction iconSx(disableHover?: boolean) {\n return {\n position: \"absolute\",\n width: 24,\n height: 24,\n borderRadius: \"100px\",\n backgroundColor: c.black.white,\n border: `1px solid ${c.black.black500}`,\n \"input:hover ~ &\": {\n border: `1px solid ${disableHover ? c.black.black500 : c.black.black1000}`,\n },\n \"input:focus-visible ~ &\": { boxShadow: \"0px 0px 0px 4px #D7DFF8\" },\n \"input:disabled ~ &\": { opacity: 0.4 },\n \"input:disabled:hover ~ &\": { border: `1px solid ${c.black.black500}` },\n } as const;\n}\n\nfunction checkedIconSx(disableHover?: boolean) {\n return {\n position: \"absolute\",\n width: 24,\n height: 24,\n borderRadius: \"100px\",\n display: \"flex\",\n justifyContent: \"center\",\n alignItems: \"center\",\n backgroundColor: c.primary.primary400,\n border: `1px solid ${c.primary.primary600}`,\n \"input:hover ~ &\": {\n border: `1px solid ${disableHover ? c.primary.primary600 : c.primary.primaryA11y}`,\n },\n \"input:focus-visible ~ &\": { boxShadow: \"0px 0px 0px 4px #D7DFF8\" },\n \"input:disabled ~ &\": { opacity: 0.4 },\n \"input:disabled:hover ~ &\": { border: `1px solid ${c.primary.primary600}` },\n } as const;\n}\n\nconst RadioButton = React.forwardRef<HTMLButtonElement, RadioButtonProps>(function RadioButton(\n { disableHover, label, labelPlacement, sx, ...rest },\n ref,\n) {\n const ourStyles = {\n width: 40,\n height: 40,\n boxShadow: \"none\",\n \"&:hover, &.Mui-checked:hover\": {\n backgroundColor: disableHover ? \"unset\" : c.black.black300,\n },\n };\n return (\n <FormControlLabel\n label={label}\n labelPlacement={labelPlacement}\n style={{ marginRight: 0 }}\n control={\n <MuiRadio\n ref={ref}\n disableFocusRipple\n disableTouchRipple\n sx={[ourStyles, ...(Array.isArray(sx) ? sx : [sx])]}\n checkedIcon={<Box component=\"span\" sx={checkedIconSx(disableHover)}>{dotSvg}</Box>}\n icon={<Box component=\"span\" sx={iconSx(disableHover)} />}\n {...rest}\n />\n }\n />\n );\n});\n\nexport default RadioButton;\n","import * as React from \"react\";\nimport MuiSwitch from \"@mui/material/Switch\";\nimport Fade from \"@mui/material/Fade\";\nimport Box from \"@mui/material/Box\";\nimport { swapColors as c } from \"../theme/tokens\";\nimport type { SwitchProps } from \"./Switch.types\";\n\nconst checkSvg = (\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M4.5 10.21L1.395 7.105L2.81 5.69L4.5 7.385L9.44 2.44L10.855 3.855L4.5 10.21Z\"\n fill=\"#4862CC\"\n />\n </svg>\n);\n\nconst Switch = React.forwardRef<HTMLButtonElement, SwitchProps>(function Switch(\n { disabled, sx, ...rest },\n ref,\n) {\n const ourStyles = {\n width: 40,\n height: 24,\n padding: 0,\n \"& .MuiSwitch-switchBase\": {\n padding: \"2px\",\n transition:\n \"left 200ms cubic-bezier(0.4, 0, 0.2, 1) 0ms, transform 200ms cubic-bezier(0.4, 0, 0.2, 1) 0ms\",\n \"&.Mui-checked\": {\n transform: \"translateX(16px)\",\n \"& + .MuiSwitch-track\": {\n border: `1px solid ${c.primary.primary800}`,\n backgroundColor: c.primary.primary400,\n opacity: 1,\n },\n \"&:hover + .MuiSwitch-track\": { backgroundColor: c.primary.primary600 },\n },\n \"&:hover + .MuiSwitch-track\": { backgroundColor: c.black.black800 },\n \"&.Mui-disabled + .MuiSwitch-track\": {\n opacity: 1,\n border: `1px solid ${c.black.black800}`,\n backgroundColor: c.black.black600,\n },\n },\n \"& .MuiSwitch-thumb\": {\n width: 20,\n height: 20,\n backgroundColor: \"white\",\n boxShadow: \"0px 2px 2px rgba(0, 0, 0, 0.15)\",\n },\n \"& .MuiSwitch-track\": {\n borderRadius: \"12px\",\n border: `1px solid ${c.black.black800}`,\n backgroundColor: c.black.black600,\n opacity: 1,\n transition: \"all 200ms ease-out\",\n },\n };\n return (\n <Box\n component=\"span\"\n tabIndex={0}\n sx={{\n display: \"inline-block\",\n width: \"fit-content\",\n borderRadius: \"12px\",\n opacity: disabled ? 0.4 : 1,\n \"&:focus-visible\": {\n boxShadow: disabled ? \"unset\" : \"0px 0px 0px 4px #D7DFF8\",\n outline: \"none\",\n },\n }}\n >\n <MuiSwitch\n ref={ref}\n disabled={disabled}\n disableRipple\n sx={[ourStyles, ...(Array.isArray(sx) ? sx : [sx])]}\n checkedIcon={\n <Box\n sx={{\n width: 20,\n height: 20,\n display: \"flex\",\n justifyContent: \"center\",\n alignItems: \"center\",\n backgroundColor: \"white\",\n borderRadius: \"50%\",\n boxShadow: \"0px 2px 2px rgba(0, 0, 0, 0.15)\",\n }}\n >\n <Fade in timeout={{ enter: 200, exit: 200 }}>\n {checkSvg}\n </Fade>\n </Box>\n }\n {...rest}\n />\n </Box>\n );\n});\n\nexport default Switch;\n","import * as React from \"react\";\nimport MuiSelect from \"@mui/material/Select\";\nimport FormControl from \"@mui/material/FormControl\";\nimport FormHelperText from \"@mui/material/FormHelperText\";\nimport InputLabel from \"@mui/material/InputLabel\";\nimport OutlinedInput from \"@mui/material/OutlinedInput\";\nimport { swapColors as c } from \"../theme/tokens\";\nimport type { SelectProps } from \"./Select.types\";\nimport { cssSize } from \"../utils/cssSize\";\n\nconst Select: React.FC<SelectProps> = ({\n children,\n style,\n value,\n onChange,\n defaultValue,\n error,\n disabled,\n type,\n InputProps,\n autoFocus,\n placeholder,\n fullWidth,\n required,\n helperText,\n width,\n height,\n horizontal = \"left\",\n vertical = \"bottom\",\n open,\n placeholderStyle,\n selectStyle,\n helperTextStyle,\n onClick,\n transformOrigin,\n paddingTop,\n paddingLeft,\n dropdown,\n}) => {\n const hasCustomPadding = Boolean(paddingTop || paddingLeft);\n return (\n <FormControl\n variant=\"outlined\"\n style={style}\n sx={{ width: cssSize(width) ?? \"100%\" }}\n >\n <InputLabel\n style={placeholderStyle}\n sx={{\n \"&.MuiInputLabel-outlined:not(.MuiInputLabel-shrink)\": {\n transform: hasCustomPadding\n ? `translate(${(paddingLeft ?? 0) - 4}px, ${(paddingTop ?? 0) + 2}px) scale(1)`\n : \"translate(12px, 14px) scale(1)\",\n },\n \"&.MuiInputLabel-shrink\": {\n width: \"fit-content\",\n padding: \"0 4px\",\n backgroundColor: \"white\",\n fontSize: 12,\n fontWeight: 700,\n color: c.black.black800,\n \"&.Mui-focused\": { fontWeight: 700, color: c.black.black800 },\n },\n }}\n >\n {placeholder}\n </InputLabel>\n <MuiSelect\n style={selectStyle}\n open={open}\n value={value}\n onChange={onChange}\n label={placeholder}\n defaultValue={defaultValue}\n error={error}\n disabled={disabled}\n type={type}\n autoFocus={autoFocus}\n required={required}\n fullWidth={fullWidth}\n onClick={onClick}\n inputProps={InputProps}\n input={\n <OutlinedInput\n sx={{\n \"& .MuiOutlinedInput-notchedOutline\": { borderColor: c.black.black500 },\n \"&:hover\": {\n borderColor: c.black.black1000,\n \"& svg\": { color: c.black.black1000 },\n },\n \"&.Mui-focused .MuiOutlinedInput-notchedOutline\": {\n borderColor: c.black.black1000,\n borderWidth: 1,\n },\n \"&.Mui-focused svg\": { color: c.black.black1000 },\n }}\n />\n }\n sx={{\n \"& .MuiSelect-select\": {\n height: height ? height - 32 : 16,\n padding: hasCustomPadding\n ? `${paddingTop ?? 12}px ${paddingLeft ?? 16}px`\n : \"12px 16px\",\n display: \"flex\",\n alignItems: \"center\",\n fontSize: dropdown ? 14 : 16,\n fontWeight: dropdown ? 700 : 400,\n border: \"none\",\n color: c.black.black800,\n \"&:focus\": { backgroundColor: \"white\", color: c.black.black1000 },\n \"&:hover\": { backgroundColor: \"white\", color: c.black.black1000 },\n },\n \"& .MuiSelect-icon\": { color: c.black.black800 },\n }}\n MenuProps={{\n transformOrigin,\n anchorOrigin: { vertical, horizontal },\n slotProps: { paper: { sx: { marginTop: \"8px\" } } },\n }}\n >\n {children}\n </MuiSelect>\n <FormHelperText style={helperTextStyle}>{helperText}</FormHelperText>\n </FormControl>\n );\n};\n\nexport default Select;\n","import * as React from \"react\";\nimport MuiMenuItem from \"@mui/material/MenuItem\";\nimport ListItemIcon from \"@mui/material/ListItemIcon\";\nimport { swapColors as c } from \"../theme/tokens\";\nimport type { MenuItemProps } from \"./MenuItem.types\";\nimport { cssSize } from \"../utils/cssSize\";\n\nconst MenuItem = React.forwardRef<HTMLLIElement, MenuItemProps>(function MenuItem(\n {\n children,\n width,\n height,\n hoverBackgroundColor,\n hoverFontColor,\n hoverIconColor,\n rippleColor,\n iconChildren,\n button: _button, // v4 遺留 prop,丟棄避免流入 DOM\n sx,\n ...rest\n },\n ref,\n) {\n const ourStyles = {\n fontSize: 14,\n fontWeight: 700,\n width: cssSize(width),\n minHeight: cssSize(height),\n \"&:focus\": { backgroundColor: \"unset\" },\n \"&:hover\": {\n backgroundColor: hoverBackgroundColor ?? c.primary.primary50,\n color: hoverFontColor ?? c.primary.primary800,\n \"& svg path\": { fill: hoverIconColor ?? c.primary.primary800 },\n },\n \"& span\": { color: rippleColor ?? undefined },\n };\n return (\n <MuiMenuItem ref={ref} sx={[ourStyles, ...(Array.isArray(sx) ? sx : [sx])]} {...rest}>\n {children}\n {iconChildren != null && (\n <ListItemIcon style={{ justifyContent: \"flex-end\" }}>{iconChildren}</ListItemIcon>\n )}\n </MuiMenuItem>\n );\n});\n\nexport default MenuItem;\n","import * as React from \"react\";\nimport MuiTab from \"@mui/material/Tab\";\nimport Box from \"@mui/material/Box\";\nimport { swapColors as c } from \"../theme/tokens\";\nimport type { TabProps } from \"./Tab.types\";\nimport { cssSize } from \"../utils/cssSize\";\n\nconst Tab = React.forwardRef<HTMLDivElement, TabProps>(function Tab(\n { label, selected, width, height, margin, fontSize, noIndicator, animation, sx, ...rest },\n ref,\n) {\n const ourStyles = {\n minWidth: 0,\n minHeight: 0,\n padding: 0,\n margin: margin ?? \"0px 12px\",\n fontWeight: 700,\n fontSize: fontSize ?? 14,\n lineHeight: 1.4,\n opacity: 1,\n color: c.black.black700,\n \"&:hover\": { color: \"#000000\" },\n \"&.Mui-selected\": { color: \"#000000\" },\n };\n return (\n <MuiTab\n ref={ref}\n disableRipple\n sx={[ourStyles, ...(Array.isArray(sx) ? sx : [sx])]}\n label={\n <Box\n sx={{\n width: cssSize(width) ?? 56,\n height: cssSize(height) ?? 56,\n display: \"flex\",\n justifyContent: \"center\",\n alignItems: \"center\",\n position: \"relative\",\n }}\n >\n {label}\n {selected && !noIndicator ? (\n <Box\n sx={{\n height: \"4px\",\n width: \"100%\",\n backgroundColor: c.primary.primary400,\n position: \"absolute\",\n bottom: 0,\n borderRadius: \"100px 100px 0px 0px\",\n ...(animation\n ? {\n animation: \"swap-tab-selected 300ms\",\n \"@keyframes swap-tab-selected\": {\n from: { width: 0 },\n to: { width: \"100%\" },\n },\n }\n : {}),\n }}\n />\n ) : null}\n </Box>\n }\n {...rest}\n />\n );\n});\n\nexport default Tab;\n","import * as React from \"react\";\nimport MuiTabs from \"@mui/material/Tabs\";\nimport type { TabsProps } from \"./Tab.types\";\n\n// 選中指示條由 Tab 自繪,Tabs 本身的 indicator 設為透明\nconst Tabs = React.forwardRef<HTMLDivElement, TabsProps>(function Tabs(\n { children, sx, ...rest },\n ref,\n) {\n const ourStyles = {\n \"& .MuiTabs-indicator\": { backgroundColor: \"transparent\" },\n };\n return (\n <MuiTabs ref={ref} sx={[ourStyles, ...(Array.isArray(sx) ? sx : [sx])]} {...rest}>\n {children}\n </MuiTabs>\n );\n});\n\nexport default Tabs;\n","import * as React from \"react\";\nimport Box from \"@mui/material/Box\";\nimport type { TabPanelProps } from \"./Tab.types\";\n\nconst TabPanel: React.FC<TabPanelProps> = ({ children, value, index, ...rest }) => (\n <div\n role=\"tabpanel\"\n hidden={value !== index}\n id={`scrollable-auto-tabpanel-${index}`}\n aria-labelledby={`scrollable-auto-tab-${index}`}\n {...rest}\n >\n {value === index && <Box>{children}</Box>}\n </div>\n);\n\nexport default TabPanel;\n","import * as React from \"react\";\nimport Box from \"@mui/material/Box\";\nimport { swapColors as c } from \"../theme/tokens\";\nimport { cssSize } from \"../utils/cssSize\";\nimport Typography from \"./Typography\";\nimport type { BannerProps } from \"./Banner.types\";\n\nconst PALETTE = {\n normal: { bg: c.black.black100, border: c.black.black500, iconFill: c.black.black700 },\n info: { bg: c.primary.primary50, border: c.primary.primary200, iconFill: c.primary.primary400 },\n success: { bg: c.success.success50, border: c.success.success400, iconFill: \"#00932A\" },\n warning: { bg: c.secondary.secondary50, border: c.secondary.secondary600, iconFill: \"#E5640C\" },\n error: { bg: c.danger.danger50, border: c.danger.danger300, iconFill: c.danger.danger700 },\n} as const;\n\nconst infoPath =\n \"M13 9H11V7H13V9ZM13 17H11V11H13V17ZM12 2C10.6868 2 9.38642 2.25866 8.17317 2.7612C6.95991 3.26375 5.85752 4.00035 4.92893 4.92893C3.05357 6.8043 2 9.34784 2 12C2 14.6522 3.05357 17.1957 4.92893 19.0711C5.85752 19.9997 6.95991 20.7362 8.17317 21.2388C9.38642 21.7413 10.6868 22 12 22C14.6522 22 17.1957 20.9464 19.0711 19.0711C20.9464 17.1957 22 14.6522 22 12C22 10.6868 21.7413 9.38642 21.2388 8.17317C20.7362 6.95991 19.9997 5.85752 19.0711 4.92893C18.1425 4.00035 17.0401 3.26375 15.8268 2.7612C14.6136 2.25866 13.3132 2 12 2Z\";\nconst successPath =\n \"M12 2C6.5 2 2 6.5 2 12C2 17.5 6.5 22 12 22C17.5 22 22 17.5 22 12C22 6.5 17.5 2 12 2ZM10 17L5 12L6.41 10.59L10 14.17L17.59 6.58L19 8L10 17Z\";\nconst warningPath = \"M13 14H11V9H13V14ZM13 18H11V16H13V18ZM1 21H23L12 2L1 21Z\";\n\nfunction defaultIcon(variant: keyof typeof PALETTE) {\n const path = variant === \"success\" ? successPath : variant === \"warning\" ? warningPath : infoPath;\n return (\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d={path} fill={PALETTE[variant].iconFill} />\n </svg>\n );\n}\n\nconst Banner = React.forwardRef<HTMLDivElement, BannerProps>(function Banner(\n { icon, variant = \"info\", width, height, mobile, children, sx, ...rest },\n ref,\n) {\n // v1:內容高度 >60 時改為 flex-start 對齊(mount 時量測)\n const innerRef = React.useRef<HTMLDivElement | null>(null);\n const [alignStart, setAlignStart] = React.useState(false);\n React.useEffect(() => {\n if (innerRef.current && innerRef.current.offsetHeight > 60) setAlignStart(true);\n }, []);\n\n const p = PALETTE[variant];\n const ourStyles = {\n backgroundColor: p.bg,\n border: `1px solid ${p.border}`,\n borderRadius: \"8px\",\n padding: \"12px 16px\",\n width: cssSize(width),\n height: cssSize(height),\n display: \"flex\",\n alignItems: mobile || alignStart ? \"flex-start\" : \"center\",\n };\n return (\n <Box\n ref={(node: HTMLDivElement | null) => {\n innerRef.current = node;\n if (typeof ref === \"function\") ref(node);\n else if (ref) ref.current = node;\n }}\n sx={[ourStyles, ...(Array.isArray(sx) ? sx : [sx])]}\n {...rest}\n >\n <Box sx={{ width: 24, height: 24, marginRight: \"8px\", flexShrink: 0 }}>\n {icon ?? defaultIcon(variant)}\n </Box>\n <Typography variant=\"caption2\">{children}</Typography>\n </Box>\n );\n});\n\nexport default Banner;\n","import * as React from \"react\";\nimport Box from \"@mui/material/Box\";\nimport Button from \"@mui/material/Button\";\nimport Skeleton from \"@mui/material/Skeleton\";\nimport { swapColors as c } from \"../theme/tokens\";\nimport { cssSize } from \"../utils/cssSize\";\nimport type { CardProps } from \"./Card.types\";\n\nconst Card = React.forwardRef<HTMLDivElement, CardProps>(function Card(\n { width, height, children, buttons, bodyStyle, loading, sx, ...rest },\n ref,\n) {\n const ourStyles = {\n width: cssSize(width) ?? 350,\n height: cssSize(height) ?? \"100%\",\n backgroundColor: c.black.white,\n boxSizing: \"border-box\" as const,\n border: `1px solid ${c.black.black500}`,\n borderRadius: \"8px\",\n display: \"flex\",\n flexDirection: \"column\" as const,\n justifyContent: \"space-between\",\n overflow: \"hidden\",\n };\n return (\n <Box ref={ref} sx={[ourStyles, ...(Array.isArray(sx) ? sx : [sx])]} {...rest}>\n <Box sx={{ padding: \"24px\", width: \"100%\", height: \"100%\" }} style={bodyStyle}>\n {!loading ? (\n children\n ) : (\n <Box sx={{ width: \"100%\", height: \"100%\" }}>\n <Skeleton width=\"40%\" height=\"calc((100% - 16px) / 3)\" />\n <Box sx={{ height: \"8px\" }} />\n <Skeleton width=\"100%\" height=\"calc((100% - 16px) / 3)\" />\n <Box sx={{ height: \"8px\" }} />\n <Box\n sx={{\n display: \"flex\",\n justifyContent: \"space-between\",\n width: \"100%\",\n height: \"calc((100% - 16px) / 3)\",\n }}\n >\n <Skeleton width=\"26.4%\" height=\"100%\" />\n <Skeleton width=\"26.4%\" height=\"100%\" />\n </Box>\n </Box>\n )}\n </Box>\n <Box\n sx={{\n width: \"100%\",\n boxShadow: `0px -1px 0px ${c.black.black400}`,\n borderRadius: \"0px 0px 8px 8px\",\n display: \"flex\",\n padding: 0,\n }}\n >\n {!loading ? (\n buttons?.map((b, index) => (\n <Button\n key={index}\n fullWidth\n variant={b.variant ?? \"black\"}\n style={{\n borderRight:\n index + 1 === buttons.length ? undefined : `1px solid ${c.black.black400}`,\n borderRadius: \"0px 0px 0px 0px\",\n ...b.style,\n }}\n onClick={b.onClick}\n disabled={b.disabled}\n loading={b.loading}\n >\n {b.title}\n </Button>\n ))\n ) : (\n <Box sx={{ padding: \"16px 24px\", width: \"100%\", height: 48 }}>\n <Skeleton width=\"100%\" height=\"100%\" />\n </Box>\n )}\n </Box>\n </Box>\n );\n});\n\nexport default Card;\n","import * as React from \"react\";\nimport Box from \"@mui/material/Box\";\nimport { swapColors as c } from \"../theme/tokens\";\nimport { cssSize } from \"../utils/cssSize\";\nimport Typography from \"./Typography\";\nimport type { ProgressProps } from \"./Progress.types\";\n\nconst Progress = React.forwardRef<HTMLDivElement, ProgressProps>(function Progress(\n { width, size, label, step, count, sx, ...rest },\n ref,\n) {\n const circle = cssSize(size) ?? 24;\n const ourStyles = {\n width: cssSize(width) ?? \"100%\",\n display: \"flex\",\n alignItems: \"flex-start\",\n };\n return (\n <Box ref={ref} sx={[ourStyles, ...(Array.isArray(sx) ? sx : [sx])]} {...rest}>\n {Array.from(Array(count).keys()).map((i) => {\n const isCurrent = i === step - 1;\n const isDone = i + 1 < step;\n return (\n <Box\n key={i}\n sx={{ width: \"100%\", display: \"flex\", flexDirection: \"column\", textAlign: \"center\" }}\n >\n <Box sx={{ width: \"100%\", display: \"flex\", alignItems: \"center\" }}>\n {/* 前段連接線 */}\n <Box\n sx={{\n height: \"2px\",\n width: \"calc((100% - 24px)/2)\",\n backgroundColor:\n i !== 0\n ? i + 1 <= step\n ? c.primary.primary800\n : c.black.black500\n : \"transparent\",\n }}\n />\n {/* 步驟圓 */}\n <Box\n sx={{\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n fontSize: 12,\n lineHeight: 1.4,\n fontWeight: 700,\n width: circle,\n height: circle,\n borderRadius: \"50%\",\n boxSizing: \"border-box\",\n backgroundColor: isCurrent ? \"white\" : isDone ? c.primary.primary800 : c.black.black600,\n color: isCurrent ? c.primary.primary800 : \"white\",\n border: isCurrent ? `2px solid ${c.primary.primary800}` : \"none\",\n boxShadow: isCurrent ? \"0px 0px 0px 4px #D7DFF8\" : \"unset\",\n }}\n >\n {i + 1}\n </Box>\n {/* 後段連接線 */}\n <Box\n sx={{\n height: \"2px\",\n width: \"calc((100% - 24px)/2)\",\n backgroundColor:\n i + 1 !== count\n ? i + 1 < step\n ? c.primary.primary800\n : c.black.black500\n : \"transparent\",\n }}\n />\n </Box>\n <Typography\n variant=\"caption1\"\n color={i + 1 === step ? \"black1000\" : \"black700\"}\n style={{ marginTop: 8 }}\n >\n {label ? label[i] : null}\n </Typography>\n </Box>\n );\n })}\n </Box>\n );\n});\n\nexport default Progress;\n","import * as React from \"react\";\nimport MuiModal from \"@mui/material/Modal\";\nimport Paper from \"@mui/material/Paper\";\nimport Divider from \"@mui/material/Divider\";\nimport Slide from \"@mui/material/Slide\";\nimport Box from \"@mui/material/Box\";\nimport CloseIcon from \"@mui/icons-material/Close\";\nimport CheckCircleIcon from \"@mui/icons-material/CheckCircle\";\nimport WarningIcon from \"@mui/icons-material/Warning\";\nimport { swapColors as c, swapShadows } from \"../theme/tokens\";\nimport { swapTokenMap } from \"../theme/textColor\";\nimport { cssSize } from \"../utils/cssSize\";\nimport useBreakpoints from \"../hooks/useBreakpoints\";\nimport Typography from \"./Typography\";\nimport Button from \"@mui/material/Button\";\nimport IconButton from \"./IconButton\";\nimport Tooltip from \"./Tooltip\";\nimport type { ModalProps, ModalButtonItem } from \"./Modal.types\";\n\nconst SIZE_WIDTH = { large: 800, medium: 640, small: 480, extraSmall: 320 } as const;\n\nfunction FooterButton({\n item,\n fullWidth,\n fallbackVariant,\n}: {\n item: ModalButtonItem;\n fullWidth: boolean;\n fallbackVariant: \"primary\" | \"secondary\";\n}) {\n const btn = (\n <Button\n fullWidth={fullWidth}\n variant={item.variant ?? fallbackVariant}\n size=\"small\"\n onClick={item.onClick}\n disabled={item.disabled}\n loading={item.loading}\n style={item.style}\n >\n {item.title}\n </Button>\n );\n return item.tooltip ? <Tooltip {...item.tooltip}>{btn}</Tooltip> : btn;\n}\n\nconst Modal = React.forwardRef<HTMLDivElement, ModalProps>(function Modal(props, ref) {\n const {\n width,\n height,\n open,\n onClose,\n title,\n helpText,\n size,\n headpadding,\n headChildren,\n checked,\n failed,\n icon,\n checkIconColor,\n iconColor,\n children,\n label,\n buttonFullWidth,\n footerDisplayColumn,\n secondaryButton,\n primaryButton,\n mobile,\n fullWidth,\n fullScreen,\n bodyPadding,\n maxWidth,\n disCloseIcon,\n titleStyle,\n bodyStyle,\n onExit,\n bodyMaxHeight,\n multiline,\n disUnderLine,\n footer,\n } = props;\n\n // fullWidth/mobile 時 body 最大高度依視窗計算(四檔公式沿 v1)\n const [clientHeight, setClientHeight] = React.useState(0);\n const [scrollbarWidth, setScrollbarWidth] = React.useState(0);\n React.useEffect(() => {\n if (mobile || fullWidth) {\n if ((helpText || multiline) && !label) setClientHeight(window.innerHeight - 64 - 73 - 64);\n else if (!helpText && label) setClientHeight(window.innerHeight - 64 - 56 - 99);\n else if ((helpText || multiline) && label) setClientHeight(window.innerHeight - 64 - 73 - 99);\n else setClientHeight(window.innerHeight - 64 - 56 - 64);\n }\n }, [fullWidth, mobile, helpText, multiline, label]);\n React.useEffect(() => {\n setScrollbarWidth((window.innerWidth - document.body.clientWidth) / 2);\n }, []);\n\n const matchXS = useBreakpoints(\"xs\");\n const slide = fullWidth || fullScreen;\n const resolvedWidth = fullScreen\n ? \"100vw\"\n : (cssSize(width) ?? (size ? SIZE_WIDTH[size] : \"100%\"));\n const iconSx = {\n \"& path\": { width: 20, height: 20 },\n color:\n (iconColor && swapTokenMap[iconColor]) ||\n (checkIconColor && swapTokenMap[checkIconColor]) ||\n c.black.black700,\n marginRight: \"10px\",\n };\n const headPad = headpadding\n ? headpadding\n : mobile\n ? disCloseIcon && !helpText && !multiline\n ? \"17px 16px\"\n : \"12px 16px\"\n : disCloseIcon && !helpText && !multiline\n ? \"19.5px 24px\"\n : \"16px 24px\";\n const bodyPad = bodyPadding ?? (mobile ? 16 : 24);\n\n const panel = (\n <Paper\n sx={{\n width: resolvedWidth,\n maxWidth: cssSize(maxWidth),\n borderRadius: fullScreen ? 0 : fullWidth ? \"12px 12px 0px 0px\" : \"12px\",\n border: \"unset\",\n boxShadow: fullScreen ? \"unset\" : swapShadows.l,\n display: \"flex\",\n flexDirection: \"column\",\n outline: 0,\n // v1 用 react-spring 做 200ms 淡入+上移;v2 以 CSS keyframes 等效(少一依賴)\n ...(slide\n ? {}\n : {\n animation: open ? \"swap-modal-in 200ms ease-in-out\" : \"none\",\n \"@keyframes swap-modal-in\": {\n from: { opacity: 0, transform: \"translateY(50px)\" },\n to: { opacity: 1, transform: \"translateY(0px)\" },\n },\n }),\n }}\n >\n {/* Head */}\n <Box\n sx={{\n borderRadius: fullScreen ? 0 : \"12px 12px 0px 0px\",\n padding: headPad,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n position: \"relative\",\n pointerEvents: onExit ? \"none\" : \"unset\",\n }}\n style={titleStyle}\n >\n {onExit ? (\n <Box\n sx={{\n position: \"absolute\",\n width: \"100%\",\n height: \"100%\",\n background: \"black\",\n top: 0,\n left: 0,\n opacity: 0.5,\n borderRadius: \"12px 12px 0px 0px\",\n zIndex: 10,\n }}\n />\n ) : null}\n {headChildren ?? (\n <Box sx={{ display: \"flex\", alignItems: \"center\", justifyContent: \"center\" }}>\n {icon ?? null}\n {checked ? <CheckCircleIcon sx={iconSx} /> : null}\n {failed ? <WarningIcon sx={iconSx} /> : null}\n <div>\n <Typography variant={!mobile ? \"h6\" : \"title\"}>{title}</Typography>\n {helpText ? (\n <Typography variant=\"body2_loose\" color=\"black800\" style={{ marginTop: 4 }}>\n {helpText}\n </Typography>\n ) : null}\n </div>\n </Box>\n )}\n {disCloseIcon ? null : (\n <IconButton sx={{ marginLeft: \"16px\" }} onClick={() => onClose()} aria-label=\"關閉\">\n <CloseIcon sx={{ color: c.black.black1000, width: 20, height: 20 }} />\n </IconButton>\n )}\n </Box>\n {/* Body */}\n {children ? (\n <>\n <Divider sx={{ backgroundColor: onExit ? \"#6d6d6d\" : \"#DADADA\" }} />\n <Box\n sx={{\n transition: \"all 0.2s ease-in-out\",\n height: fullScreen ? \"calc(100dvh - 146px)\" : (cssSize(height) ?? \"100%\"),\n padding: `${bodyPad}px`,\n position: \"relative\",\n pointerEvents: onExit ? \"none\" : \"unset\",\n maxHeight: fullScreen\n ? \"calc(100dvh - 146px)\"\n : (cssSize(bodyMaxHeight) ?? (fullWidth ? clientHeight : \"unset\")),\n overflowY: !onExit ? \"scroll\" : \"hidden\",\n \"&::-webkit-scrollbar\": { backgroundColor: \"transparent\", width: 5 },\n \"&::-webkit-scrollbar-thumb\": {\n backgroundColor: c.black.black600,\n borderRadius: \"100px\",\n },\n \"&::-webkit-scrollbar-track-piece:start\": { marginTop: \"12px\" },\n \"&::-webkit-scrollbar-track-piece:end\": { marginBottom: \"12px\" },\n }}\n style={bodyStyle}\n >\n {onExit ? (\n <Box\n sx={{\n marginLeft: `${-bodyPad}px`,\n marginTop: `${-bodyPad}px`,\n position:\n bodyMaxHeight || height || (mobile && fullWidth) || fullScreen\n ? \"fixed\"\n : \"absolute\",\n width: resolvedWidth,\n height: fullScreen\n ? \"100dvh\"\n : (cssSize(bodyMaxHeight) ??\n cssSize(height) ??\n (mobile && fullWidth ? clientHeight : \"100%\")),\n background: \"black\",\n opacity: 0.5,\n zIndex: 10,\n }}\n />\n ) : null}\n {children}\n </Box>\n </>\n ) : null}\n {(label || secondaryButton || primaryButton) && !disUnderLine ? <Divider /> : null}\n {/* Footer */}\n <Box\n sx={{\n padding:\n label || secondaryButton || primaryButton\n ? mobile\n ? \"12px 16px\"\n : \"16px 24px\"\n : undefined,\n borderRadius: \"0px 0px 12px 12px\",\n display: \"flex\",\n flexDirection: mobile ? \"column\" : \"row\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n }}\n >\n {footer ?? (\n <>\n {!buttonFullWidth || !footerDisplayColumn ? (\n <Box\n sx={{\n marginBottom: mobile && label ? \"12px\" : 0,\n fontSize: mobile ? 16 : 18,\n fontWeight: 700,\n lineHeight: 1.4,\n }}\n >\n {label}\n </Box>\n ) : null}\n {secondaryButton || primaryButton ? (\n <Box\n sx={{\n width: buttonFullWidth || footerDisplayColumn || mobile ? \"100%\" : undefined,\n display: \"flex\",\n flexDirection: footerDisplayColumn ? \"column-reverse\" : \"row\",\n alignItems: \"center\",\n }}\n >\n <Box\n sx={{\n width: mobile && !buttonFullWidth && !footerDisplayColumn ? undefined : \"100%\",\n marginRight: !footerDisplayColumn && secondaryButton ? \"8px\" : 0,\n }}\n >\n {secondaryButton ? (\n <FooterButton\n item={secondaryButton}\n fullWidth={Boolean(buttonFullWidth || footerDisplayColumn)}\n fallbackVariant=\"secondary\"\n />\n ) : null}\n </Box>\n <Box sx={{ width: \"100%\", marginBottom: footerDisplayColumn ? \"8px\" : 0 }}>\n {primaryButton ? (\n <FooterButton\n item={primaryButton}\n fullWidth={Boolean(buttonFullWidth || footerDisplayColumn || mobile)}\n fallbackVariant=\"primary\"\n />\n ) : null}\n </Box>\n </Box>\n ) : null}\n </>\n )}\n </Box>\n </Paper>\n );\n\n return (\n <MuiModal\n ref={ref}\n open={open}\n onClose={() => onClose()}\n sx={{\n display: \"flex\",\n alignItems: fullWidth ? \"flex-end\" : \"center\",\n justifyContent: \"center\",\n border: \"unset\",\n margin: fullWidth || fullScreen ? 0 : matchXS ? \"0px 24px\" : \"0px 16px\",\n }}\n slotProps={{\n backdrop: {\n sx: { transition: \"all 0.2s ease-in-out !important\" },\n style: { overflow: \"auto\", WebkitOverflowScrolling: \"touch\" },\n },\n }}\n >\n <Box\n sx={{\n outline: \"none\",\n width: \"100%\",\n display: \"flex\",\n justifyContent: \"center\",\n alignItems: \"center\",\n left: open ? 0 : scrollbarWidth,\n position: \"absolute\",\n ...(fullWidth ? { bottom: 0 } : {}),\n }}\n >\n {slide ? (\n <Slide in={open} direction=\"up\" mountOnEnter unmountOnExit timeout={{ enter: 300, exit: 300 }}>\n {panel}\n </Slide>\n ) : (\n panel\n )}\n </Box>\n </MuiModal>\n );\n});\n\nexport default Modal;\n","'use client';\n\nexport { createSvgIcon as default } from '@mui/material/SvgIcon';","\"use client\";\n\nimport createSvgIcon from \"./utils/createSvgIcon.mjs\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport default createSvgIcon(/*#__PURE__*/_jsx(\"path\", {\n d: \"M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z\"\n}), 'Close');","\"use client\";\n\nimport createSvgIcon from \"./utils/createSvgIcon.mjs\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport default createSvgIcon(/*#__PURE__*/_jsx(\"path\", {\n d: \"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m-2 15-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8z\"\n}), 'CheckCircle');","\"use client\";\n\nimport createSvgIcon from \"./utils/createSvgIcon.mjs\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport default createSvgIcon(/*#__PURE__*/_jsx(\"path\", {\n d: \"M1 21h22L12 2zm12-3h-2v-2h2zm0-4h-2v-4h2z\"\n}), 'Warning');","import useMediaQuery from \"@mui/material/useMediaQuery\";\nimport { swapBreakpoints } from \"../theme/tokens\";\n\n/**\n * v1 相容的斷點 hook:回傳視窗寬度是否 ≥ 指定斷點。\n * 斷點名對應 xxs 0 / xs 375 / sm 576 / md 768 / lg 992 / xl 1200 / xxl 1400,亦可傳任意 px 數字。\n */\nexport default function useBreakpoints(\n breakpoint?: keyof typeof swapBreakpoints | number,\n): boolean {\n const px = typeof breakpoint === \"number\" ? breakpoint : swapBreakpoints[breakpoint ?? \"xxs\"];\n return useMediaQuery(`(min-width:${px}px)`);\n}\n","import * as React from \"react\";\nimport MuiSnackbar from \"@mui/material/Snackbar\";\nimport Slide, { type SlideProps } from \"@mui/material/Slide\";\nimport Fade from \"@mui/material/Fade\";\nimport Box from \"@mui/material/Box\";\nimport { swapColors as c, swapShadows, swapRadius } from \"../theme/tokens\";\nimport { cssSize } from \"../utils/cssSize\";\nimport IconButton from \"./IconButton\";\nimport type { SnackbarProps } from \"./Snackbar.types\";\n\ntype TransitionProps = Omit<SlideProps, \"direction\">;\nconst TransitionLeft = (p: TransitionProps) => <Slide {...p} direction=\"left\" />;\nconst TransitionRight = (p: TransitionProps) => <Slide {...p} direction=\"right\" />;\nconst TransitionUp = (p: TransitionProps) => <Slide {...p} direction=\"up\" />;\nconst TransitionDown = (p: TransitionProps) => <Slide {...p} direction=\"down\" />;\nconst TransitionFade = (p: TransitionProps) => <Fade {...p} />;\n\nconst iconClose = (\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M19 6.41L17.59 5L12 10.59L6.41 5L5 6.41L10.59 12L5 17.59L6.41 19L12 13.41L17.59 19L19 17.59L13.41 12L19 6.41Z\"\n fill=\"white\"\n />\n </svg>\n);\nconst iconChecked = (\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M21 7.00003L9 19L3.5 13.5L4.91 12.09L9 16.17L19.59 5.59003L21 7.00003Z\" fill=\"white\" />\n </svg>\n);\nconst iconError = (\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M13 13H11V7H13V13ZM13 17H11V15H13V17ZM12 2C10.6868 2 9.38642 2.25866 8.17317 2.7612C6.95991 3.26375 5.85752 4.00035 4.92893 4.92893C3.05357 6.8043 2 9.34784 2 12C2 14.6522 3.05357 17.1957 4.92893 19.0711C5.85752 19.9997 6.95991 20.7362 8.17317 21.2388C9.38642 21.7413 10.6868 22 12 22C14.6522 22 17.1957 20.9464 19.0711 19.0711C20.9464 17.1957 22 14.6522 22 12C22 10.6868 21.7413 9.38642 21.2388 8.17317C20.7362 6.95991 19.9997 5.85752 19.0711 4.92893C18.1425 4.00035 17.0401 3.26375 15.8268 2.7612C14.6136 2.25866 13.3132 2 12 2Z\"\n fill=\"white\"\n />\n </svg>\n);\n\nconst Snackbar: React.FC<SnackbarProps> = ({\n message,\n transitionDirection,\n transitionDuration,\n width,\n height,\n variant,\n action,\n revertButton,\n closeIcon,\n icon,\n checkIcon,\n errorIcon,\n sx,\n ...rest\n}) => {\n const bg =\n variant === \"success\" ? c.success.success800 : variant === \"error\" ? c.danger.danger900 : c.black.black1000;\n const border =\n variant === \"success\"\n ? c.success.successA11y\n : variant === \"error\"\n ? c.danger.dangerA11y\n : c.black.black1000;\n const leadingIcon = checkIcon ? iconChecked : errorIcon ? (icon ?? iconError) : icon;\n const ourStyles = {\n \"@media only screen and (min-width: 600px)\": { width: \"fit-content\", marginRight: \"24px\" },\n \"@media only screen and (max-width: 600px)\": {\n width: \"unset\",\n bottom: 16,\n left: 16,\n right: 16,\n },\n \"& .MuiSnackbarContent-root\": {\n flexWrap: \"nowrap\",\n minWidth: 320,\n maxWidth: 640,\n width: cssSize(width) ?? \"unset\",\n height: cssSize(height) ?? \"unset\",\n boxShadow: swapShadows.l,\n borderRadius: swapRadius.m,\n backgroundColor: bg,\n border: `1px solid ${border}`,\n padding: \"12px 16px\",\n boxSizing: \"border-box\",\n },\n \"& .MuiSnackbarContent-message\": { padding: 0 },\n \"& .MuiSnackbarContent-action\": { padding: 0 },\n };\n return (\n <MuiSnackbar\n {...rest}\n sx={[ourStyles, ...(Array.isArray(sx) ? sx : [sx])]}\n message={\n <Box\n sx={{\n display: \"flex\",\n alignItems: \"center\",\n fontSize: 14,\n fontWeight: 400,\n lineHeight: 1.6,\n color: \"#ffffff\",\n }}\n >\n {leadingIcon ? (\n <>\n {leadingIcon}\n <Box sx={{ width: \"8px\", height: \"100%\" }} />\n </>\n ) : null}\n {message}\n </Box>\n }\n action={\n action ?? (\n <>\n {revertButton ? (\n <Box\n sx={{\n fontSize: 14,\n fontWeight: 700,\n lineHeight: 1.4,\n color: c.secondary.secondary600,\n cursor: \"pointer\",\n whiteSpace: \"nowrap\",\n marginLeft: \"8px\",\n }}\n onClick={revertButton.onClick}\n >\n {revertButton.label ?? \"收回操作\"}\n </Box>\n ) : null}\n {closeIcon ? (\n <IconButton\n hoverColor={\n variant === \"success\"\n ? \"#006818\"\n : variant === \"error\"\n ? \"#A00204\"\n : (closeIcon.hoverColor ?? \"#333333\")\n }\n onClick={closeIcon.onClick}\n sx={{ marginLeft: \"8px\" }}\n >\n {closeIcon.icon ?? iconClose}\n </IconButton>\n ) : null}\n </>\n )\n }\n slots={{\n transition:\n transitionDirection === \"left\"\n ? TransitionLeft\n : transitionDirection === \"right\"\n ? TransitionRight\n : transitionDirection === \"up\"\n ? TransitionUp\n : transitionDirection === \"down\"\n ? TransitionDown\n : TransitionFade,\n ...rest.slots,\n }}\n transitionDuration={transitionDuration}\n />\n );\n};\n\nexport default Snackbar;\n","import * as React from \"react\";\nimport Box from \"@mui/material/Box\";\nimport RadioButton from \"./RadioButton\";\nimport Typography from \"./Typography\";\nimport { selectionListStyles } from \"./selectionList.styles\";\nimport type { RadioListProps } from \"./RadioList.types\";\n\nexport function SelectionListInner({\n control,\n title,\n subtitle,\n multiline,\n line,\n}: {\n control: React.ReactNode;\n title?: React.ReactNode;\n subtitle?: React.ReactNode;\n multiline?: boolean;\n line?: boolean;\n}) {\n // line 模式:直線高度隨 subtitle 內容量測(≥44)\n const ref = React.useRef<HTMLDivElement | null>(null);\n const [lineHeight, setLineHeight] = React.useState(44);\n React.useEffect(() => {\n if (ref.current) setLineHeight(Math.max(ref.current.offsetHeight, 44));\n }, []);\n return (\n <>\n <Box sx={{ display: \"flex\", alignItems: \"center\" }}>\n {control}\n {line ? (\n <Box sx={{ display: \"flex\", alignItems: \"center\", marginLeft: \"4px\" }}>\n <Typography\n variant=\"title\"\n style={{ maxWidth: 56, minWidth: 56, textAlign: \"center\", wordBreak: \"break-word\" }}\n >\n {title}\n </Typography>\n <Box sx={{ height: lineHeight, width: \"1px\", margin: \"0 12px\", backgroundColor: \"#909090\" }} />\n <div ref={ref}>\n <Typography\n variant=\"body2_loose\"\n color=\"black800\"\n style={{ width: \"100%\", wordBreak: \"break-word\" }}\n >\n {subtitle}\n </Typography>\n </div>\n </Box>\n ) : (\n <Box sx={{ display: \"flex\", flexDirection: \"column\" }}>\n <Typography variant=\"title\">{title}</Typography>\n {multiline ? (\n <Typography variant=\"body2_loose\" color=\"black800\">\n {subtitle}\n </Typography>\n ) : null}\n </Box>\n )}\n </Box>\n {!multiline && !line ? (\n <Typography variant=\"body2_loose\" color=\"black800\">\n {subtitle}\n </Typography>\n ) : null}\n </>\n );\n}\n\nconst RadioList = React.forwardRef<HTMLDivElement, RadioListProps>(function RadioList(\n { width, height, title, subtitle, multiline, checked, line, sx, ...rest },\n ref,\n) {\n return (\n <Box\n ref={ref}\n sx={[\n selectionListStyles({ checked, multiline, line, width, height }),\n ...(Array.isArray(sx) ? sx : [sx]),\n ]}\n {...rest}\n >\n <SelectionListInner\n control={<RadioButton disableHover checked={Boolean(checked)} sx={{ marginLeft: \"4px\" }} />}\n title={title}\n subtitle={subtitle}\n multiline={multiline}\n line={line}\n />\n </Box>\n );\n});\n\nexport default RadioList;\n","import { swapColors as c } from \"../theme/tokens\";\nimport { cssSize } from \"../utils/cssSize\";\n\n/** RadioList / CheckBoxList 共用的可選卡片樣式(三模式尺寸沿 v1) */\nexport function selectionListStyles(opts: {\n checked?: boolean;\n multiline?: boolean;\n line?: boolean;\n width?: string | number;\n height?: string | number;\n}) {\n const { checked, multiline, line, width, height } = opts;\n return {\n width: cssSize(width) ?? (multiline ? 240 : line ? 342 : 327),\n height: cssSize(height) ?? (multiline ? 69 : line ? 76 : 54),\n padding: line ? \"16px\" : multiline ? \"12px 16px\" : \"15px 16px\",\n border: checked ? `1px solid ${c.primary.primary400}` : `1px solid ${c.black.black500}`,\n boxSizing: \"border-box\" as const,\n borderRadius: \"8px\",\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n cursor: \"pointer\",\n backgroundColor: checked ? c.primary.primary50 : \"white\",\n WebkitTapHighlightColor: \"transparent\",\n \"&:hover\": {\n backgroundColor: checked ? c.primary.primary50 : c.black.black100,\n border: checked ? `1px solid ${c.primary.primary400}` : `1px solid ${c.black.black600}`,\n },\n };\n}\n","import * as React from \"react\";\nimport Box from \"@mui/material/Box\";\nimport CheckBox from \"./CheckBox\";\nimport { SelectionListInner } from \"./RadioList\";\nimport { selectionListStyles } from \"./selectionList.styles\";\nimport type { CheckBoxListProps } from \"./RadioList.types\";\n\nconst CheckBoxList = React.forwardRef<HTMLDivElement, CheckBoxListProps>(function CheckBoxList(\n { width, height, title, subtitle, multiline, checked, line, sx, ...rest },\n ref,\n) {\n return (\n <Box\n ref={ref}\n sx={[\n selectionListStyles({ checked, multiline, line, width, height }),\n ...(Array.isArray(sx) ? sx : [sx]),\n ]}\n {...rest}\n >\n <SelectionListInner\n control={<CheckBox disableHover checked={Boolean(checked)} sx={{ marginLeft: \"4px\" }} />}\n title={title}\n subtitle={subtitle}\n multiline={multiline}\n line={line}\n />\n </Box>\n );\n});\n\nexport default CheckBoxList;\n","import * as React from \"react\";\nimport MuiAutocomplete from \"@mui/material/Autocomplete\";\nimport type { AutocompleteCloseReason } from \"@mui/material/Autocomplete\";\nimport InputBase from \"@mui/material/InputBase\";\nimport Popper from \"@mui/material/Popper\";\nimport Box from \"@mui/material/Box\";\nimport { alpha } from \"@mui/material/styles\";\nimport { swapColors as c, swapShadows } from \"../theme/tokens\";\nimport Typography from \"./Typography\";\nimport type { AutoCompleteProps } from \"./AutoComplete.types\";\nimport { cssSize } from \"../utils/cssSize\";\n\nconst checkSvg = (\n <svg width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M17.4998 5.83345L7.49984 15.8334L2.9165 11.2501L4.0915 10.0751L7.49984 13.4751L16.3248 4.65845L17.4998 5.83345Z\"\n fill=\"#4862CC\"\n />\n </svg>\n);\n\nconst AutoComplete: React.FC<AutoCompleteProps> = (props) => {\n // v1 在 renderInput 內用 useEffect 記錄輸入值(React 違規);v2 改為正常 state 追蹤\n const [inputValue, setInputValue] = React.useState(\"\");\n const {\n open = false,\n helperText,\n value,\n handleNoOptionsValueChange,\n options = [],\n placeholder,\n placement,\n title,\n width,\n anchorEl,\n disableFreeInput,\n renderOption,\n getOptionLabel,\n noOptionsText,\n renderInput,\n optionsMaxHeight,\n anchorOrigin,\n addNewOptionsText,\n ...other\n } = props;\n\n return (\n <div>\n <Popper\n open={open}\n anchorEl={anchorEl}\n placement={placement ?? \"bottom-start\"}\n sx={{\n border: `1px solid ${c.black.black500}`,\n boxShadow: swapShadows.m,\n borderRadius: \"8px\",\n width: cssSize(width) ?? 320,\n zIndex: 1301,\n fontSize: 13,\n color: \"#586069\",\n backgroundColor: \"#fff\",\n marginTop: `${anchorOrigin?.vertical ?? -65}px !important`,\n marginLeft: `${anchorOrigin?.horizontal ?? 0}px !important`,\n boxSizing: \"border-box\",\n }}\n >\n <Box sx={{ padding: \"16px 16px 8px 16px\", fontWeight: 600 }}>\n <Typography variant=\"caption1\" color=\"black800\">\n {title}\n </Typography>\n </Box>\n <MuiAutocomplete\n // listbox 需留在面板內(v1 行為):不 disablePortal 會被 portal 到 body,\n // 跑出外框且與已選面板重疊(使用者回報的兩個問題同根因)\n disablePortal\n {...other}\n open\n options={options}\n renderOption={renderOption}\n getOptionLabel={getOptionLabel}\n onInputChange={(_, v) => setInputValue(v)}\n slotProps={{\n paper: {\n sx: {\n boxShadow: \"none\",\n margin: 0,\n color: \"#586069\",\n fontSize: 13,\n border: \"none\",\n paddingRight: \"5px\",\n },\n },\n listbox: {\n sx: {\n maxHeight: cssSize(optionsMaxHeight),\n \"& .MuiAutocomplete-option\": {\n fontSize: 14,\n fontWeight: 700,\n minHeight: \"auto\",\n alignItems: \"flex-start\",\n padding: \"8px 16px\",\n color: \"#000\",\n '&[aria-selected=\"true\"]': { display: \"none\" },\n \"&.Mui-focused\": {\n backgroundColor: c.primary.primary50,\n color: c.primary.primary800,\n },\n },\n \"&::-webkit-scrollbar\": { backgroundColor: \"transparent\", width: 5 },\n \"&::-webkit-scrollbar-thumb\": {\n backgroundColor: c.black.black600,\n borderRadius: \"100px\",\n },\n \"&::-webkit-scrollbar-track-piece:start\": { marginTop: \"12px\" },\n \"&::-webkit-scrollbar-track-piece:end\": { marginBottom: \"12px\" },\n },\n },\n // popper.js 會寫入 inline 的 absolute/transform,需 !important 拉回文流,\n // 讓清單留在面板內、排在已選面板下方\n popper: {\n sx: {\n position: \"static !important\",\n transform: \"none !important\",\n width: \"100% !important\",\n },\n },\n }}\n noOptionsText={\n disableFreeInput ? (\n \"無此選項\"\n ) : (\n <Box\n sx={{\n fontSize: 14,\n fontWeight: 700,\n lineHeight: 1.4,\n display: \"flex\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n flexWrap: \"wrap\",\n }}\n >\n {noOptionsText ?? \"無此選項\"}\n <Box\n sx={{\n color: c.primary.primary400,\n cursor: \"pointer\",\n \"&:hover\": { textDecoration: \"underline\" },\n }}\n onMouseDown={() => handleNoOptionsValueChange?.(inputValue)}\n >\n {addNewOptionsText ?? \"使用\"} 「{inputValue}」\n </Box>\n </Box>\n )\n }\n renderInput={\n renderInput ??\n ((params) => (\n <>\n <InputBase\n placeholder={placeholder}\n ref={params.slotProps.input.ref}\n inputProps={params.slotProps.htmlInput}\n autoFocus\n sx={{\n padding: \"0 16px 16px 16px\",\n width: \"100%\",\n borderBottom: \"1px solid #dfe2e5\",\n \"& input\": {\n height: 16,\n borderRadius: \"8px\",\n backgroundColor: c.black.white,\n padding: \"13px 16px\",\n border: \"1px solid #ced4da\",\n fontSize: 14,\n \"&:focus\": {\n boxShadow: `${alpha(c.primary.primary400, 0.25)} 0 0 0 0.2rem`,\n borderColor: c.primary.primary400,\n },\n },\n }}\n />\n {value ? (\n <Box\n sx={{\n minHeight: 52,\n padding: \"16px 16px\",\n display: \"grid\",\n gap: \"10px\",\n alignItems: \"center\",\n gridTemplateColumns: \"auto 20px\",\n backgroundColor: \"transparent\",\n color: c.primary.primary400,\n fontSize: 14,\n fontWeight: 700,\n lineHeight: 1.4,\n boxShadow: \"inset 0px -1px 0px #ECECEC\",\n }}\n >\n {value}\n {checkSvg}\n </Box>\n ) : null}\n </>\n ))\n }\n />\n </Popper>\n </div>\n );\n};\n\nexport type { AutocompleteCloseReason };\n\nexport default AutoComplete;\n","import * as React from \"react\";\nimport MuiSelect from \"@mui/material/Select\";\nimport FormControl from \"@mui/material/FormControl\";\nimport FormHelperText from \"@mui/material/FormHelperText\";\nimport OutlinedInput from \"@mui/material/OutlinedInput\";\nimport { swapColors as c } from \"../theme/tokens\";\nimport type { DropdownProps } from \"./Dropdown.types\";\nimport { cssSize } from \"../utils/cssSize\";\n\nconst Dropdown: React.FC<DropdownProps> = ({\n children,\n formControlStyle,\n inputProps,\n MenuProps,\n helperText,\n width,\n height,\n helperTextStyle,\n sx,\n ...rest\n}) => {\n const large = (height ?? 0) >= 56;\n const ourStyles = {\n \"& .MuiSelect-select\": {\n height: height ? (large ? height - 38 : height - 24) : 16,\n display: \"flex\",\n alignItems: \"center\",\n padding: large ? \"19px 8px 19px 24px\" : \"12px 4px 12px 16px\",\n fontSize: large ? 16 : 14,\n lineHeight: large ? \"18px\" : \"15.75px\",\n fontWeight: 700,\n color: c.black.black800,\n \"&:hover\": { color: c.black.black1000, backgroundColor: \"white\", fontWeight: 700 },\n \"&:focus-visible\": { color: c.black.black1000, backgroundColor: \"white\", fontWeight: 700 },\n },\n \"& .MuiSelect-icon\": { marginTop: \"2px\", width: 20, height: 20, color: c.black.black800 },\n };\n return (\n <FormControl variant=\"outlined\" style={formControlStyle} sx={{ width: cssSize(width) ?? \"100%\" }}>\n <MuiSelect\n {...rest}\n inputProps={inputProps}\n input={\n <OutlinedInput\n sx={{\n \"& .MuiOutlinedInput-notchedOutline\": { borderColor: c.black.black500 },\n \"&:hover\": { borderColor: c.black.black1000, \"& svg\": { color: c.black.black1000 } },\n \"&.Mui-focused .MuiOutlinedInput-notchedOutline\": {\n borderColor: c.black.black1000,\n borderWidth: 1,\n },\n \"&.Mui-focused svg\": { color: c.black.black1000 },\n }}\n />\n }\n sx={[ourStyles, ...(Array.isArray(sx) ? sx : [sx])]}\n MenuProps={{\n slotProps: { paper: { sx: { marginTop: \"8px\" } } },\n ...MenuProps,\n }}\n >\n {children}\n </MuiSelect>\n <FormHelperText style={helperTextStyle}>{helperText}</FormHelperText>\n </FormControl>\n );\n};\n\nexport default Dropdown;\n","import * as React from \"react\";\nimport MuiTab from \"@mui/material/Tab\";\nimport type { SegmentedTabProps } from \"./SegmentedTab.types\";\nimport { cssSize } from \"../utils/cssSize\";\n\nconst SegmentedTab = React.forwardRef<HTMLDivElement, SegmentedTabProps>(function SegmentedTab(\n { width, height, fontSize, flex, sx, ...rest },\n ref,\n) {\n const ourStyles = {\n textTransform: \"unset\" as const,\n padding: \"12px 16px\",\n minWidth: 0,\n minHeight: cssSize(height) ?? 40,\n width: cssSize(width) ?? \"fit-content\",\n fontWeight: 700,\n fontSize: fontSize ?? 14,\n lineHeight: 1.4,\n color: \"#6F6F6F\",\n opacity: 1,\n whiteSpace: \"nowrap\" as const,\n flex,\n \"&:hover\": { color: \"#000000\" },\n // 讓文字墊在 slide 指示層之上\n \"& .MuiTab-wrapper, &\": { position: \"relative\" as const, zIndex: 5 },\n };\n return <MuiTab ref={ref} disableRipple sx={[ourStyles, ...(Array.isArray(sx) ? sx : [sx])]} {...rest} />;\n});\n\nexport default SegmentedTab;\n","import * as React from \"react\";\nimport MuiTabs from \"@mui/material/Tabs\";\nimport { swapColors as c } from \"../theme/tokens\";\nimport type { SegmentedTabsProps } from \"./SegmentedTab.types\";\nimport { cssSize } from \"../utils/cssSize\";\n\nconst SegmentedTabs = React.forwardRef<HTMLDivElement, SegmentedTabsProps>(function SegmentedTabs(\n { children, width, slide, sx, ...rest },\n ref,\n) {\n const innerRef = React.useRef<HTMLDivElement | null>(null);\n\n // scrollable 時確保 selected tab 進入視野(v9 目標瀏覽器原生支援 smooth,不需 polyfill)\n React.useEffect(() => {\n if (innerRef.current && rest.variant === \"scrollable\") {\n const el = innerRef.current.querySelector(\".MuiTab-root.Mui-selected\");\n if (el) {\n setTimeout(() => {\n el.scrollIntoView({ behavior: \"smooth\", block: \"nearest\", inline: \"center\" });\n }, 1000);\n }\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const ourStyles = {\n width: cssSize(width),\n boxSizing: \"border-box\" as const,\n border: `1px solid ${c.black.black500}`,\n borderRadius: \"9px\",\n padding: \"4px 0\",\n \"& button\": {\n borderRadius: \"8px\",\n margin: \"0 4px\",\n \"&.Mui-selected\": {\n backgroundColor: slide ? \"unset\" : c.primary.primary50,\n color: c.primary.primary500,\n },\n },\n \"& .MuiTabs-indicator\": {\n borderRadius: \"8px\",\n height: slide ? \"100%\" : 0,\n backgroundColor: c.primary.primary50,\n },\n \"& .MuiTabs-scrollButtons\": {\n width: 32,\n overflow: \"hidden\",\n \"&.Mui-disabled\": { width: \"4px\" },\n },\n };\n\n return (\n <MuiTabs\n ref={(node: HTMLDivElement | null) => {\n innerRef.current = node;\n if (typeof ref === \"function\") ref(node);\n else if (ref) ref.current = node;\n }}\n sx={[ourStyles, ...(Array.isArray(sx) ? sx : [sx])]}\n {...rest}\n >\n {children}\n </MuiTabs>\n );\n});\n\nexport default SegmentedTabs;\n","import * as React from \"react\";\nimport Box from \"@mui/material/Box\";\nimport { cssSize } from \"../utils/cssSize\";\nimport type { SWAPLogoProps } from \"./SWAPLogo.types\";\n\nimport logoNormal from \"./assets/SWAP_web logo.svg\";\nimport logoNormalDark from \"./assets/SWAP_web logo-white.svg\";\nimport logoBiz from \"./assets/SWAP BIZ_web logo_test-01.svg\";\nimport logoBizZhTw from \"./assets/Blue - Biz.svg\";\nimport logoBlack from \"./assets/Color=Black.svg\";\nimport logoBlackDark from \"./assets/Color=White.svg\";\nimport logoIcon from \"./assets/Color=Blue.svg\";\nimport logoIconBlack from \"./assets/Color=White_icon.svg\";\n\nfunction pickSrc(p: SWAPLogoProps): string {\n if (p.business) return p.chinese ? logoBizZhTw : logoBiz;\n if (p.black) {\n if (p.iconOnly) return logoIconBlack;\n if (p.dark) return logoBlackDark;\n return logoBlack;\n }\n if (p.iconOnly) return logoIcon;\n if (p.dark) return logoNormalDark;\n return logoNormal;\n}\n\nfunction logoHeight(size: SWAPLogoProps[\"size\"], business?: boolean): string {\n const map = business\n ? { small: \"48px\", middle: \"72px\", large: \"81px\" }\n : { small: \"30px\", middle: \"40px\", large: \"48px\" };\n if (size === \"small\" || size === \"middle\" || size === \"large\") return map[size];\n if (typeof size === \"number\") return `${size}px`;\n if (typeof size === \"string\") return size;\n return business ? \"42px\" : \"100%\";\n}\n\nconst SWAPLogo: React.FC<SWAPLogoProps> = (props) => {\n const { size = \"middle\", width, height } = props;\n return (\n <Box component=\"span\" sx={{ display: \"flex\", alignItems: \"center\" }}>\n <img\n src={pickSrc(props)}\n alt={props.business ? \"SWAP BIZ\" : \"SWAP\"}\n style={{\n height: cssSize(height) ?? logoHeight(size, props.business),\n width: cssSize(width),\n }}\n />\n </Box>\n );\n};\n\nexport default SWAPLogo;\n","import * as React from \"react\";\nimport { useEffect, useState } from \"react\";\nimport Box from \"@mui/material/Box\";\nimport { LineShareButton } from \"react-share\";\n\nimport type { SWAPShareProps } from \"./SWAPShare.types\";\n\nconst SWAPShare: React.FC<SWAPShareProps> = ({\n url,\n size = 36,\n emailSubject = \"\",\n sharedContent = \"\",\n}) => {\n const [sharedUrl, setSharedUrl] = useState(\"\");\n\n useEffect(() => {\n if (url && url.length > 0) {\n setSharedUrl(url);\n } else {\n setSharedUrl(window.location.href);\n }\n }, []);\n\n const handleEmailOnClick = () => {\n /**\n * Relative issue: https://github.com/nygardk/react-share/issues/292\n */\n const email = encodeURI(`mailto:\n ?subject=${emailSubject}&body=${sharedContent}\\n\\n${sharedUrl}`);\n window.location.href = email;\n };\n\n const handleMessengerOnClick = () => {\n /**\n * Relative issue\n * https://github.com/nygardk/react-share/issues/288\n * https://stackoverflow.com/questions/34675419/share-url-in-facebook-messenger-from-web#\n */\n const appId = 549090209290719;\n const mobileDevide = /iPhone|iPad|iPod|Android/i.test(navigator.userAgent);\n const mobile =\n \"fb-messenger://share?link=\" +\n encodeURIComponent(`${sharedUrl}`) +\n `&app_id=` +\n encodeURIComponent(appId);\n\n const desktop = `https://www.facebook.com/dialog/send?link=${encodeURIComponent(\n sharedUrl\n )}&redirect_uri=${encodeURIComponent(sharedUrl)}&app_id=${appId}`;\n window.open(mobileDevide ? mobile : desktop, \"_blank\");\n };\n\n return (\n <Box\n sx={{\n height: 40,\n position: \"relative\",\n display: \"flex\",\n gap: \"8px\",\n \"& .swap_share_icon\": { cursor: \"pointer\", width: 40, height: 40 },\n }}\n >\n {[\n {\n el: (\n <div\n className=\"swap_share_icon\"\n onClick={() => handleMessengerOnClick()}\n >\n <svg\n width=\"40\"\n height=\"40\"\n viewBox=\"0 0 40 40\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M0 10C0 4.47715 4.47715 0 10 0H30C35.5228 0 40 4.47715 40 10V30C40 35.5228 35.5228 40 30 40H10C4.47715 40 0 35.5228 0 30V10Z\"\n fill=\"#ECECEC\"\n />\n <path\n d=\"M19.9999 10C14.3599 10 9.99988 14.13 9.99988 19.7C9.99988 22.61 11.1899 25.14 13.1399 26.87C13.2999 27 13.3999 27.22 13.4099 27.44L13.4599 29.22C13.4999 29.79 14.0699 30.16 14.5899 29.93L16.5699 29.06C16.7399 29 16.9299 28.97 17.0999 29C17.9999 29.27 18.9999 29.4 19.9999 29.4C25.6399 29.4 29.9999 25.27 29.9999 19.7C29.9999 14.13 25.6399 10 19.9999 10ZM25.9999 17.46L23.0699 22.13C22.5999 22.86 21.5999 23.05 20.8999 22.5L18.5599 20.77C18.3499 20.61 18.0499 20.61 17.8399 20.77L14.6799 23.17C14.2599 23.5 13.7099 23 13.9999 22.54L16.9299 17.87C17.3999 17.14 18.3999 16.95 19.0999 17.47L21.4399 19.23C21.6599 19.39 21.9499 19.39 22.1599 19.23L25.3199 16.83C25.7399 16.5 26.2899 17 25.9999 17.46Z\"\n fill=\"#6F6F6F\"\n />\n </svg>\n </div>\n ),\n },\n {\n el: (\n <LineShareButton url={sharedUrl} title={sharedContent}>\n <svg\n width=\"40\"\n height=\"40\"\n viewBox=\"0 0 40 40\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M0 10C0 4.47715 4.47715 0 10 0H30C35.5228 0 40 4.47715 40 10V30C40 35.5228 35.5228 40 30 40H10C4.47715 40 0 35.5228 0 30V10Z\"\n fill=\"#ECECEC\"\n />\n <path\n d=\"M10 20C10 14.4772 14.4772 10 20 10C25.5228 10 30 14.4772 30 20C30 25.5228 25.5228 30 20 30C14.4772 30 10 25.5228 10 20Z\"\n fill=\"#6F6F6F\"\n />\n <path\n d=\"M20.1666 14.667C16.7666 14.667 14 16.8957 14 19.6352C14 22.0912 16.1938 24.148 19.1573 24.5369C19.3581 24.5799 19.6314 24.6683 19.7006 24.8388C19.7628 24.9936 19.7413 25.236 19.7205 25.3924C19.7205 25.3924 19.6481 25.8244 19.6325 25.9164C19.6057 26.0712 19.5086 26.5218 20.1666 26.2464C20.8248 25.9711 23.718 24.1704 25.0118 22.6919C25.9053 21.719 26.3333 20.7316 26.3333 19.6352C26.3333 16.8957 23.5671 14.667 20.1666 14.667Z\"\n fill=\"white\"\n />\n <path\n d=\"M18.4525 18.3335C18.3868 18.3335 18.3334 18.3886 18.3334 18.4564V21.2106C18.3334 21.2785 18.3868 21.3335 18.4525 21.3335H18.881C18.9468 21.3335 19 21.2785 19 21.2106V18.4564C19 18.3886 18.9468 18.3335 18.881 18.3335H18.4525Z\"\n fill=\"#6F6F6F\"\n />\n <path\n d=\"M21.8746 18.3335H21.4235C21.3543 18.3335 21.2982 18.3886 21.2982 18.4564V20.0927L20.014 18.3881C20.011 18.3838 20.0077 18.3797 20.0042 18.3757L20.0034 18.3749C20.0009 18.3722 19.9984 18.3697 19.9958 18.3673C19.9951 18.3666 19.9944 18.366 19.9935 18.3652C19.9914 18.3633 19.9892 18.3615 19.9868 18.3598C19.9859 18.3588 19.9848 18.3581 19.9836 18.3572C19.9814 18.3558 19.9793 18.3542 19.9771 18.3529C19.9759 18.352 19.9746 18.3513 19.9733 18.3507C19.9711 18.3494 19.9688 18.348 19.9666 18.3469C19.9653 18.3463 19.964 18.3456 19.9627 18.3451C19.9603 18.344 19.958 18.3429 19.9555 18.3421C19.9541 18.3416 19.9528 18.3411 19.9515 18.3406C19.949 18.3398 19.9465 18.3389 19.9439 18.3383C19.9426 18.3379 19.9411 18.3376 19.9396 18.3371C19.9372 18.3366 19.9348 18.336 19.9325 18.3356C19.9307 18.3353 19.9289 18.3351 19.9272 18.335C19.925 18.3345 19.9227 18.3343 19.9205 18.3341C19.9184 18.3339 19.9163 18.3339 19.9141 18.3337C19.9125 18.3337 19.9113 18.3335 19.9097 18.3335H19.4586C19.3895 18.3335 19.3333 18.3886 19.3333 18.4564V21.2106C19.3333 21.2785 19.3895 21.3335 19.4586 21.3335H19.9097C19.979 21.3335 20.0351 21.2785 20.0351 21.2106V19.5748L21.3209 21.2815C21.3298 21.2939 21.3408 21.3039 21.3527 21.3119C21.3531 21.3122 21.3536 21.3125 21.354 21.3129C21.3566 21.3145 21.3591 21.316 21.3617 21.3175C21.363 21.3182 21.3641 21.3187 21.3653 21.3193C21.3672 21.3204 21.3693 21.3214 21.3712 21.3222C21.3733 21.3231 21.3752 21.3239 21.3774 21.3248C21.3786 21.3253 21.3799 21.3257 21.3811 21.3261C21.3841 21.3272 21.3868 21.328 21.3896 21.3289C21.3902 21.3289 21.3908 21.3291 21.3914 21.3293C21.4017 21.3319 21.4124 21.3335 21.4235 21.3335H21.8746C21.9439 21.3335 21.9999 21.2785 21.9999 21.2106V18.4564C21.9999 18.3886 21.9439 18.3335 21.8746 18.3335Z\"\n fill=\"#6F6F6F\"\n />\n <path\n d=\"M17.8782 20.6438H16.6837V18.4566C16.6837 18.3886 16.6291 18.3335 16.5618 18.3335H16.1221C16.0547 18.3335 16 18.3886 16 18.4566V21.2103V21.2105C16 21.2436 16.0131 21.2735 16.0341 21.2956C16.0346 21.2962 16.0351 21.2968 16.0358 21.2974C16.0364 21.298 16.037 21.2985 16.0376 21.2991C16.0596 21.3204 16.0891 21.3335 16.1219 21.3335H17.8782C17.9456 21.3335 18 21.2782 18 21.2103V20.7669C18 20.6989 17.9456 20.6438 17.8782 20.6438Z\"\n fill=\"#6F6F6F\"\n />\n <path\n d=\"M24.2115 19.0232C24.2789 19.0232 24.3334 18.9682 24.3334 18.9001V18.4567C24.3334 18.3887 24.2789 18.3335 24.2115 18.3335H22.4554H22.4552C22.4223 18.3335 22.3926 18.3468 22.3706 18.3683C22.3701 18.3688 22.3695 18.3691 22.3692 18.3696C22.3685 18.3703 22.3679 18.3711 22.3673 18.3718C22.3463 18.3938 22.3334 18.4236 22.3334 18.4566V18.4567V21.2104V21.2105C22.3334 21.2436 22.3465 21.2735 22.3675 21.2956C22.368 21.2962 22.3686 21.2969 22.3692 21.2974C22.3697 21.298 22.3704 21.2986 22.371 21.2991C22.3928 21.3203 22.4225 21.3335 22.4552 21.3335H24.2115C24.2789 21.3335 24.3334 21.2782 24.3334 21.2104V20.7669C24.3334 20.6991 24.2789 20.6438 24.2115 20.6438H23.0172V20.1783H24.2115C24.2789 20.1783 24.3334 20.1231 24.3334 20.0552V19.6118C24.3334 19.5438 24.2789 19.4886 24.2115 19.4886H23.0172V19.0232H24.2115Z\"\n fill=\"#6F6F6F\"\n />\n </svg>\n </LineShareButton>\n ),\n },\n {\n el: (\n <div className=\"swap_share_icon\" onClick={handleEmailOnClick}>\n <svg\n width=\"40\"\n height=\"40\"\n viewBox=\"0 0 40 40\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M0 10C0 4.47715 4.47715 0 10 0H30C35.5228 0 40 4.47715 40 10V30C40 35.5228 35.5228 40 30 40H10C4.47715 40 0 35.5228 0 30V10Z\"\n fill=\"#ECECEC\"\n />\n <path\n d=\"M28 16L20 21L12 16V14L20 19L28 14V16ZM28 12H12C10.89 12 10 12.89 10 14V26C10 26.5304 10.2107 27.0391 10.5858 27.4142C10.9609 27.7893 11.4696 28 12 28H28C28.5304 28 29.0391 27.7893 29.4142 27.4142C29.7893 27.0391 30 26.5304 30 26V14C30 12.89 29.1 12 28 12Z\"\n fill=\"#6F6F6F\"\n />\n </svg>\n </div>\n ),\n },\n ].map((item, index) => (\n <div key={`share_btn_${index}`}>{item.el}</div>\n ))}\n </Box>\n );\n};\n\nexport default SWAPShare;\n","import * as React from \"react\";\nimport { useEffect, useState } from \"react\";\nimport AutoComplete from \"./AutoComplete\";\nimport type { AutocompleteCloseReason } from \"./AutoComplete\";\nimport MenuItem from \"./MenuItem\";\nimport TextField from \"./TextField\";\nimport { swapColors as c } from \"../theme/tokens\";\nimport {\n SWAPIncomeTypes,\n SWAPExpenseTypes,\n SWAPTaxIncomeLabel,\n SWAPTaxExpenseLabel,\n SWAPTaxDescription,\n} from \"../tax/constants\";\nimport type { TaxTextFieldProps, ExpenseCodeProps, IncomeCodeProps } from \"./TaxTextField.types\";\n\nconst checkSvg = (\n <svg width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M17.4998 5.83345L7.49984 15.8334L2.9165 11.2501L4.0915 10.0751L7.49984 13.4751L16.3248 4.65845L17.4998 5.83345Z\"\n fill=\"#4862CC\"\n />\n </svg>\n);\n\nconst headerItemStyle: React.CSSProperties = {\n fontSize: 12,\n fontWeight: 700,\n lineHeight: 1.4,\n color: \"#4b4b4b\",\n opacity: 1,\n backgroundColor: \"white\",\n};\n\nconst TaxTextField: React.FC<TaxTextFieldProps> = ({\n onChange,\n codeValue,\n domainValue,\n domainCodeValue,\n codeError,\n codeHelperText,\n domainError,\n domainHelperText,\n codeOnClick,\n domainOnClick,\n mobile,\n codeFocused,\n domainFocused,\n}) => {\n const [modalIncome, setModalIncome] = useState<IncomeCodeProps | \"\">(\"\");\n const [modalExpense, setModalExpense] = useState<ExpenseCodeProps | \"\">(\"\");\n const [anchorEl, setAnchorEl] = React.useState<null | HTMLElement>(null);\n\n useEffect(() => {\n if (!modalIncome) return;\n onChange?.({\n incomeCode: modalIncome as IncomeCodeProps,\n expenseCode: modalExpense as ExpenseCodeProps,\n incomeLabel: SWAPTaxIncomeLabel(modalIncome as IncomeCodeProps),\n expenseLabel: SWAPTaxExpenseLabel(modalExpense as ExpenseCodeProps),\n taxDescription: SWAPTaxDescription(modalIncome as IncomeCodeProps, modalExpense as ExpenseCodeProps),\n expenseCodeAndLabel: modalExpense\n ? `[${modalExpense}] ${SWAPTaxExpenseLabel(modalExpense as ExpenseCodeProps)}`\n : \"\",\n });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [modalIncome, modalExpense]);\n\n const handleCodeClick = () => {\n codeOnClick?.();\n setAnchorEl(null);\n };\n const handleDomainClick = (event: React.MouseEvent<HTMLElement>) => {\n setAnchorEl(anchorEl ? null : event.currentTarget);\n if (codeValue) setModalIncome(codeValue);\n domainOnClick?.();\n };\n const handleClose = (_e: unknown, reason: AutocompleteCloseReason) => {\n if (reason === \"toggleInput\") return;\n anchorEl?.focus();\n setAnchorEl(null);\n };\n\n const selectedIcon = (active: boolean) => (active ? checkSvg : null);\n\n return (\n <div\n style={{\n display: \"flex\",\n flexDirection: mobile ? \"column\" : \"row\",\n alignItems: \"flex-start\",\n justifyContent: \"space-between\",\n }}\n >\n {/* 選擇申報類別 */}\n <div style={{ width: \"100%\" }}>\n <TextField\n focused={codeFocused}\n fullWidth\n select\n error={codeError}\n helperText={codeHelperText}\n height={56}\n label=\"選擇申報類別\"\n value={codeValue ?? \"\"}\n onClick={handleCodeClick}\n onChange={(e) => {\n setModalIncome(e.target.value as IncomeCodeProps);\n setModalExpense(\"\");\n }}\n >\n <MenuItem height={36} disabled style={headerItemStyle}>\n 請選擇申報類別\n </MenuItem>\n {SWAPIncomeTypes.map((option, index) => (\n <MenuItem\n height={36}\n key={`case_${index}`}\n value={option.code}\n style={{\n backgroundColor: modalIncome === option.code ? \"white\" : undefined,\n opacity: modalIncome === option.code ? 1 : undefined,\n display: \"flex\",\n justifyContent: \"space-between\",\n flexWrap: \"nowrap\",\n color: modalIncome === option.code ? c.primary.primary400 : undefined,\n }}\n disabled={modalIncome === option.code}\n iconChildren={selectedIcon(modalIncome === option.code)}\n >\n {option.code} {option.label}\n </MenuItem>\n ))}\n </TextField>\n </div>\n {codeValue === \"9A\" || codeValue === \"9B\" ? (\n <div style={{ width: \"100%\", margin: mobile ? \"24px 0 0 0\" : \"0 0 0 8px\" }}>\n {codeValue === \"9B\" ? (\n // 9B:下拉選單\n <TextField\n focused={domainFocused}\n select\n fullWidth\n error={domainError}\n helperText={domainHelperText}\n height={56}\n label=\"輸入執行業務類別\"\n value={domainCodeValue ?? \"\"}\n onClick={handleDomainClick}\n onChange={(e) => {\n setModalExpense(e.target.value as ExpenseCodeProps);\n setAnchorEl(null);\n }}\n >\n <MenuItem height={36} disabled style={headerItemStyle}>\n 選擇執行業務類別\n </MenuItem>\n {SWAPExpenseTypes.filter((i) => i.source === codeValue).map((option, index) => (\n <MenuItem\n height={36}\n key={`case_${index}`}\n value={option.code}\n style={{\n backgroundColor: modalExpense === option.code ? \"white\" : undefined,\n opacity: modalExpense === option.code ? 1 : undefined,\n display: \"flex\",\n justifyContent: \"space-between\",\n flexWrap: \"nowrap\",\n color: modalExpense === option.code ? c.primary.primary400 : undefined,\n }}\n disabled={modalExpense === option.code}\n iconChildren={selectedIcon(modalExpense === option.code)}\n >\n [{option.code}] {option.label}\n </MenuItem>\n ))}\n </TextField>\n ) : (\n // 9A:搜尋式選單\n <>\n <TextField\n focused={domainFocused}\n error={domainError}\n helperText={domainHelperText}\n fullWidth\n label=\"輸入執行業務類別\"\n height={56}\n value={domainValue ?? \"\"}\n onClick={handleDomainClick}\n slotProps={{\n input: {\n readOnly: true,\n endAdornment: (\n <div style={{ width: 24, height: 24 }}>\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M7 10L12 15L17 10H7Z\" fill=\"black\" />\n </svg>\n </div>\n ),\n },\n }}\n />\n <AutoComplete\n width={mobile ? \"calc(100% - 32px)\" : \"292px\"}\n optionsMaxHeight={150}\n disableFreeInput\n multiple\n disableCloseOnSelect\n anchorEl={anchorEl}\n open={Boolean(anchorEl)}\n onClose={handleClose}\n onChange={(_, newValue) => {\n const arr = newValue as Array<{ code?: ExpenseCodeProps }>;\n const last = arr[arr.length - 1];\n if (last?.code) setModalExpense(last.code);\n setAnchorEl(null);\n }}\n value={domainValue}\n options={SWAPExpenseTypes.filter((i) => i.source === codeValue)}\n placement=\"bottom-start\"\n placeholder=\"輸入執行業務類別\"\n title=\"選擇執行業務類別\"\n renderOption={(liProps, option) => {\n const o = option as { code: string; label: string };\n const { key, ...rest } = liProps as { key?: React.Key } & React.HTMLAttributes<HTMLLIElement>;\n return (\n <li key={key} {...rest}>\n [{o.code}] {o.label}\n </li>\n );\n }}\n getOptionLabel={(option) => {\n const o = option as { code: string; label: string };\n return o.code + o.label;\n }}\n />\n </>\n )}\n </div>\n ) : null}\n </div>\n );\n};\n\nexport default TaxTextField;\n","// 自 legacy/v1-src/SWAPTaxField/SWAPTaxField.tsx 447–656 行原樣抽出(v1 保留匯出)\nimport type { IncomeCodeProps, ExpenseCodeProps } from \"../components/TaxTextField.types\";\n\nexport const SWAPIncomeTypes: Array<{\n code: IncomeCodeProps;\n label: string;\n}> = [\n {\n code: \"9A\",\n label: \"執行業務所得\",\n },\n {\n code: \"9B\",\n label: \"稿費\",\n },\n {\n code: \"50\",\n label: \"薪資所得\",\n },\n];\nexport const SWAPExpenseTypes: Array<{\n code: ExpenseCodeProps;\n source: IncomeCodeProps;\n label: string;\n expenseRatio: string;\n}> = [\n { label: \"律師\", expenseRatio: \"30%\", code: \"10\", source: \"9A\" },\n { label: \"會計師\", expenseRatio: \"30%\", code: \"11\", source: \"9A\" },\n { label: \"精算師\", expenseRatio: \"20%\", code: \"12\", source: \"9A\" },\n { label: \"地政士\", expenseRatio: \"30%\", code: \"13\", source: \"9A\" },\n { label: \"記帳士\", expenseRatio: \"30%\", code: \"14\", source: \"9A\" },\n { label: \"仲裁人\", expenseRatio: \"15%\", code: \"15\", source: \"9A\" },\n { label: \"民間公證人\", expenseRatio: \"30%\", code: \"16\", source: \"9A\" },\n { label: \"不動產估價師\", expenseRatio: \"35%\", code: \"17\", source: \"9A\" },\n {\n label: \"受委託代辦國有非公用不動產之承租、續租、過戶及繼承等申請者\",\n expenseRatio: \"30%\",\n code: \"18\",\n source: \"9A\",\n },\n {\n label: \"記帳及報稅代理業人\",\n expenseRatio: \"30%\",\n code: \"19\",\n source: \"9A\",\n },\n { label: \"技師\", expenseRatio: \"35%\", code: \"20\", source: \"9A\" },\n { label: \"建築師\", expenseRatio: \"35%\", code: \"21\", source: \"9A\" },\n { label: \"公共安檢人員\", expenseRatio: \"35%\", code: \"22\", source: \"9A\" },\n {\n label: \"未具會計師資格,辦理工商登記等業務者\",\n expenseRatio: \"30%\",\n code: \"23\",\n source: \"9A\",\n },\n { label: \"工匠(工資收入)\", expenseRatio: \"20%\", code: \"24\", source: \"9A\" },\n { label: \"工匠(工料收入)\", expenseRatio: \"62%\", code: \"25\", source: \"9A\" },\n { label: \"引水人\", expenseRatio: \"25%\", code: \"26\", source: \"9A\" },\n {\n label: \"律師配合政府政策辦理法律扶助案件之收入\",\n expenseRatio: \"50%\",\n code: \"27\",\n source: \"9A\",\n },\n { label: \"內科醫師\", expenseRatio: \"40%\", code: \"30\", source: \"9A\" },\n { label: \"外科醫師\", expenseRatio: \"45%\", code: \"31\", source: \"9A\" },\n { label: \"小兒科醫師\", expenseRatio: \"40%\", code: \"32\", source: \"9A\" },\n { label: \"婦產科醫師\", expenseRatio: \"45%\", code: \"33\", source: \"9A\" },\n { label: \"眼科醫師\", expenseRatio: \"40%\", code: \"34\", source: \"9A\" },\n { label: \"耳鼻喉科醫師\", expenseRatio: \"40%\", code: \"35\", source: \"9A\" },\n { label: \"牙科醫師\", expenseRatio: \"40%\", code: \"36\", source: \"9A\" },\n { label: \"精神科醫師\", expenseRatio: \"46%\", code: \"37\", source: \"9A\" },\n { label: \"骨科醫師\", expenseRatio: \"45%\", code: \"38\", source: \"9A\" },\n { label: \"其他科別醫師\", expenseRatio: \"43%\", code: \"39\", source: \"9A\" },\n {\n label: \"助產師(士)\",\n expenseRatio: \"31%\",\n code: \"40\",\n source: \"9A\",\n },\n { label: \"藥師\", expenseRatio: \"20%\", code: \"41\", source: \"9A\" },\n {\n label: \"醫事檢驗師(生)\",\n expenseRatio: \"43%\",\n code: \"42\",\n source: \"9A\",\n },\n { label: \"營養師\", expenseRatio: \"20%\", code: \"45\", source: \"9A\" },\n {\n label: \"醫療機構醫師經核准前往他醫療機構從事醫療業務且不具僱傭關係者\",\n expenseRatio: \"10%\",\n code: \"46\",\n source: \"9A\",\n },\n { label: \"獸醫師\", expenseRatio: \"32%\", code: \"47\", source: \"9A\" },\n { label: \"皮膚科醫師\", expenseRatio: \"40%\", code: \"48\", source: \"9A\" },\n { label: \"家庭醫學科醫師\", expenseRatio: \"40%\", code: \"49\", source: \"9A\" },\n { label: \"中醫師\", expenseRatio: \"20%\", code: \"50\", source: \"9A\" },\n { label: \"語言治療師\", expenseRatio: \"20%\", code: \"51\", source: \"9A\" },\n { label: \"人壽保險醫療檢查\", expenseRatio: \"35%\", code: \"52\", source: \"9A\" },\n { label: \"物理治療師\", expenseRatio: \"43%\", code: \"53\", source: \"9A\" },\n { label: \"職能治療師\", expenseRatio: \"43%\", code: \"54\", source: \"9A\" },\n { label: \"心理師\", expenseRatio: \"20%\", code: \"55\", source: \"9A\" },\n { label: \"牙體技術師\", expenseRatio: \"40%\", code: \"56\", source: \"9A\" },\n {\n label:\n \"西醫師(配合政府政策辦理老人、兒童、婦女、中低收入者、身心障礙者及其他特定對象補助計畫之業務收入)\",\n expenseRatio: \"78%\",\n code: \"57\",\n source: \"9A\",\n },\n {\n label: \"西醫師(自費疫苗注射收入)\",\n expenseRatio: \"78%\",\n code: \"58\",\n source: \"9A\",\n },\n {\n label: \"西醫師(C型肝炎全口服新藥健保給付收入)\",\n expenseRatio: \"96%\",\n code: \"59\",\n source: \"9A\",\n },\n { label: \"書畫家、版畫家\", expenseRatio: \"30%\", code: \"61\", source: \"9A\" },\n { label: \"命理卜卦\", expenseRatio: \"20%\", code: \"62\", source: \"9A\" },\n {\n label:\n \"表演人(演員、歌手、模特兒、節目主持人、舞蹈表演人、相聲表演人、特技表演人、樂器表演人、魔術表演人、其他表演人)\",\n expenseRatio: \"45%\",\n code: \"70\",\n source: \"9A\",\n },\n { label: \"保險經紀人\", expenseRatio: \"26%\", code: \"71\", source: \"9A\" },\n { label: \"節目製作人\", expenseRatio: \"45%\", code: \"72\", source: \"9A\" },\n {\n label: \"公益彩券立即型彩券經銷商\",\n expenseRatio: \"60%\",\n code: \"73\",\n source: \"9A\",\n },\n { label: \"一般經紀人\", expenseRatio: \"20%\", code: \"76\", source: \"9A\" },\n { label: \"其他\", expenseRatio: \"0%\", code: \"90\", source: \"9A\" },\n { label: \"商標代理人\", expenseRatio: \"30%\", code: \"91\", source: \"9A\" },\n { label: \"程式設計師\", expenseRatio: \"20%\", code: \"92\", source: \"9A\" },\n { label: \"專利師及專利代理\", expenseRatio: \"30%\", code: \"93\", source: \"9A\" },\n {\n label: \"未具律師資格,辦理訴訟代理人業務\",\n expenseRatio: \"23%\",\n code: \"94\",\n source: \"9A\",\n },\n {\n label: \"未具建築師資格,辦理建築規劃設計及監造等業務者\",\n expenseRatio: \"35%\",\n code: \"95\",\n source: \"9A\",\n },\n {\n label: \"未具地政士資格,辦理土地登記等業務者\",\n expenseRatio: \"30%\",\n code: \"96\",\n source: \"9A\",\n },\n {\n label: \"受大陸地區人民委託辦理繼承、公法給付或其他事務者\",\n expenseRatio: \"23%\",\n code: \"97\",\n source: \"9A\",\n },\n { label: \"自行出版\", expenseRatio: \"30%\", code: \"99\", source: \"9B\" },\n { label: \"非自行出版\", expenseRatio: \"75%\", code: \"98\", source: \"9B\" },\n];\n\nexport const SWAPTaxIncomeLabel = (incomeCode: IncomeCodeProps) => {\n if (incomeCode) {\n return (\n SWAPIncomeTypes.filter((type) => type.code === incomeCode)[0]?.label || \"\"\n );\n } else {\n return \"\";\n }\n};\n\nexport const SWAPTaxExpenseLabel = (expenseCode: ExpenseCodeProps) => {\n if (expenseCode) {\n return (\n SWAPExpenseTypes.filter((type) => type.code === expenseCode)[0]?.label ||\n \"\"\n );\n } else {\n return \"\";\n }\n};\n\nexport const SWAPTaxDescription = (\n incomeCode: IncomeCodeProps,\n expenseCode: ExpenseCodeProps\n) => {\n let incomeLabel = SWAPTaxIncomeLabel(incomeCode);\n let expenseLabel = SWAPTaxExpenseLabel(expenseCode);\n let taxDescription = `${incomeCode} ${incomeLabel}${\n expenseLabel.length > 0 ? ` - [${expenseCode}] ${expenseLabel}` : \"\"\n }`;\n if (incomeCode && expenseCode) {\n /**執行業務 */\n return taxDescription;\n } else if (incomeCode === \"50\") {\n /**薪資 */\n return `${incomeCode} ${incomeLabel}`;\n } else {\n return \"\";\n }\n};\n","import * as React from \"react\";\nimport dayjs, { type Dayjs } from \"dayjs\";\nimport { LocalizationProvider } from \"@mui/x-date-pickers/LocalizationProvider\";\nimport { AdapterDayjs } from \"@mui/x-date-pickers/AdapterDayjs\";\nimport { DateCalendar } from \"@mui/x-date-pickers/DateCalendar\";\nimport Modal from \"./Modal\";\nimport type { DatePickerProps } from \"./DatePicker.types\";\n\nconst VIEWS = {\n year: [\"year\"] as const,\n month: [\"year\", \"month\"] as const,\n day: [\"year\", \"month\", \"day\"] as const,\n};\n\n/** v1 相容的字串格式:year \"YYYY\"、month \"YYYY-M\"、day \"YYYY-M-D\"(不補零) */\nfunction toV1String(d: Dayjs, format: \"year\" | \"month\" | \"day\"): string {\n if (format === \"year\") return String(d.year());\n if (format === \"month\") return `${d.year()}-${d.month() + 1}`;\n return `${d.year()}-${d.month() + 1}-${d.date()}`;\n}\n\nconst DatePicker: React.FC<DatePickerProps> = ({\n format = \"day\",\n open = false,\n onClose,\n mobile,\n ModalProps,\n min,\n max,\n defaultValue,\n value,\n getValue,\n}) => {\n const parsed = value ? dayjs(value) : defaultValue ? dayjs(defaultValue) : undefined;\n return (\n <Modal\n open={open}\n onClose={() => onClose?.()}\n title=\"選擇日期\"\n width=\"fit-content\"\n bodyPadding={8}\n mobile={mobile}\n {...ModalProps}\n >\n <LocalizationProvider dateAdapter={AdapterDayjs}>\n <DateCalendar\n views={[...VIEWS[format]]}\n openTo={format}\n value={parsed && parsed.isValid() ? parsed : null}\n minDate={min ? dayjs(min) : undefined}\n maxDate={max ? dayjs(max) : undefined}\n onChange={(newValue: Dayjs | null, selectionState) => {\n if (!newValue) return;\n // 到達目標精度才回呼(year/month view 的中間選擇不觸發)\n const finished =\n format === \"day\" ? selectionState === \"finish\" : true;\n const isTargetView =\n format === \"day\" || selectionState === \"finish\";\n if (finished && isTargetView) {\n getValue?.(toV1String(newValue, format));\n onClose?.();\n }\n }}\n />\n </LocalizationProvider>\n </Modal>\n );\n};\n\nexport default DatePicker;\n","export { SWAPThemeProvider } from \"./theme/SWAPThemeProvider\";\nexport type { SWAPThemeProviderProps } from \"./theme/SWAPThemeProvider\";\nexport { createSwapTheme } from \"./theme/createSwapTheme\";\nexport {\n swapColors,\n swapRadius,\n swapShadows,\n swapBreakpoints,\n swapFontFamily,\n} from \"./theme/tokens\";\nexport type { SwapColors } from \"./theme/tokens\";\n\nexport { default as Typography } from \"./components/Typography\";\nexport type { SwapTypographyProps } from \"./components/Typography\";\nexport { default as Chip } from \"./components/Chip\";\nexport type { ChipProps } from \"./components/Chip.types\";\nexport { default as CircularProgress } from \"./components/CircularProgress\";\nexport type { CircularProgressProps } from \"./components/CircularProgress.types\";\nexport { default as Tooltip } from \"./components/Tooltip\";\nexport type { TooltipProps } from \"./components/Tooltip.types\";\nexport { default as Container } from \"./components/Container\";\nexport type { ContainerProps } from \"./components/Container.types\";\nexport { default as Paper } from \"./components/Paper\";\nexport type { PaperProps } from \"./components/Paper.types\";\nexport { default as Link } from \"./components/Link\";\nexport type { LinkProps } from \"./components/Link.types\";\nexport { default as IconButton } from \"./components/IconButton\";\nexport type { IconButtonProps } from \"./components/IconButton.types\";\nexport { default as Breadcrumb } from \"./components/Breadcrumb\";\nexport type { BreadcrumbProps } from \"./components/Breadcrumb.types\";\nexport { default as BreadcrumbItem } from \"./components/BreadcrumbItem\";\nexport type { BreadcrumbItemProps } from \"./components/BreadcrumbItem.types\";\nexport { default as TextField } from \"./components/TextField\";\nexport type { TextFieldProps } from \"./components/TextField.types\";\nexport { default as CheckBox } from \"./components/CheckBox\";\nexport type { CheckBoxProps } from \"./components/CheckBox.types\";\nexport { default as RadioButton } from \"./components/RadioButton\";\nexport type { RadioButtonProps } from \"./components/RadioButton.types\";\nexport { default as Switch } from \"./components/Switch\";\nexport type { SwitchProps } from \"./components/Switch.types\";\nexport { default as Select } from \"./components/Select\";\nexport type { SelectProps } from \"./components/Select.types\";\nexport { default as MenuItem } from \"./components/MenuItem\";\nexport type { MenuItemProps } from \"./components/MenuItem.types\";\n\nexport { default as Tab } from \"./components/Tab\";\nexport { default as Tabs } from \"./components/Tabs\";\nexport { default as TabPanel } from \"./components/TabPanel\";\nexport type { TabProps, TabsProps, TabPanelProps } from \"./components/Tab.types\";\n\nexport { default as Banner } from \"./components/Banner\";\nexport type { BannerProps } from \"./components/Banner.types\";\nexport { default as Card } from \"./components/Card\";\nexport type { CardProps, CardButtonItem } from \"./components/Card.types\";\nexport { default as Progress } from \"./components/Progress\";\nexport type { ProgressProps } from \"./components/Progress.types\";\nexport { default as Modal } from \"./components/Modal\";\nexport type { ModalProps, ModalButtonItem } from \"./components/Modal.types\";\nexport { default as Snackbar } from \"./components/Snackbar\";\nexport type { SnackbarProps } from \"./components/Snackbar.types\";\nexport { default as RadioList } from \"./components/RadioList\";\nexport { default as CheckBoxList } from \"./components/CheckBoxList\";\nexport type { RadioListProps, CheckBoxListProps } from \"./components/RadioList.types\";\nexport { default as AutoComplete } from \"./components/AutoComplete\";\nexport type { AutoCompleteProps } from \"./components/AutoComplete.types\";\nexport type { AutocompleteCloseReason } from \"./components/AutoComplete\";\nexport { default as Dropdown } from \"./components/Dropdown\";\nexport type { DropdownProps } from \"./components/Dropdown.types\";\nexport { default as SegmentedTab } from \"./components/SegmentedTab\";\nexport { default as SegmentedTabs } from \"./components/SegmentedTabs\";\nexport type { SegmentedTabProps, SegmentedTabsProps } from \"./components/SegmentedTab.types\";\n\nexport { default as SWAPLogo } from \"./components/SWAPLogo\";\nexport type { SWAPLogoProps } from \"./components/SWAPLogo.types\";\nexport { default as SWAPShare } from \"./components/SWAPShare\";\nexport type { SWAPShareProps } from \"./components/SWAPShare.types\";\nexport { default as TaxTextField } from \"./components/TaxTextField\";\nexport type { TaxTextFieldProps } from \"./components/TaxTextField.types\";\nexport { default as DatePicker } from \"./components/DatePicker\";\nexport type { DatePickerProps } from \"./components/DatePicker.types\";\n\nexport {\n SWAPIncomeTypes,\n SWAPExpenseTypes,\n SWAPTaxIncomeLabel,\n SWAPTaxExpenseLabel,\n SWAPTaxDescription,\n} from \"./tax/constants\";\nexport type { IncomeCodeProps, ExpenseCodeProps, TaxFiledValueProps } from \"./components/TaxTextField.types\";\n\nexport { default as useBreakpoints } from \"./hooks/useBreakpoints\";\n\nexport const SWAP_UI_VERSION = \"2.0.0-beta.1\";\n"],"mappings":"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","names":["c","React","c","jsx","Typography","React","jsx","jsxs","Chip","React","jsx","jsxs","CircularProgress","jsx","React","Box","jsx","Container","Box","React","useMediaQuery","jsx","Paper","useMediaQuery","React","jsx","Link","React","jsx","IconButton","React","jsx","jsxs","Breadcrumb","React","jsx","BreadcrumbItem","React","jsx","TextField","React","Box","jsx","CheckBox","Box","React","FormControlLabel","Box","jsx","iconSx","checkedIconSx","RadioButton","FormControlLabel","Box","React","Box","jsx","checkSvg","Switch","Box","jsx","jsxs","React","jsx","jsxs","MenuItem","React","Box","jsx","jsxs","Tab","Box","React","jsx","Tabs","Box","jsx","React","Box","jsx","jsxs","Banner","Box","React","Box","jsx","jsxs","Card","Box","React","Box","jsx","jsxs","Progress","Box","React","Paper","Box","_jsx","_jsx","useMediaQuery","useMediaQuery","Button","Fragment","jsx","jsxs","Button","Modal","iconSx","Paper","Box","Slide","Fade","Box","Fragment","jsx","jsxs","Slide","Fade","Box","React","Box","Fragment","jsx","jsxs","Box","RadioList","React","Box","jsx","CheckBoxList","Box","React","Box","Fragment","jsx","jsxs","checkSvg","Box","MuiSelect","FormControl","FormHelperText","OutlinedInput","jsx","jsxs","FormControl","MuiSelect","OutlinedInput","FormHelperText","React","MuiTab","jsx","SegmentedTab","MuiTab","React","MuiTabs","jsx","SegmentedTabs","MuiTabs","Box","jsx","Box","useEffect","useState","Box","jsx","jsxs","React","useEffect","useState","Fragment","jsx","jsxs","checkSvg","useState","useEffect","jsx"]}
|