openstack-uicore-foundation 5.0.48-beta.0 → 5.0.48
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/.claude/rules/openstack-uicore-foundation-components.md +67 -0
- package/.claude/rules/openstack-uicore-foundation-project.md +69 -0
- package/.claude/rules/openstack-uicore-foundation-security.md +39 -0
- package/.claude/settings.local.json +1 -22
- package/.codegraph/.gitignore +5 -0
- package/.github/workflows/build_test.yml +1 -1
- package/.github/workflows/jest.yml +1 -1
- package/docs/plans/2026-04-09-showconfirmdialog-react16-compat.md +83 -0
- package/docs/plans/2026-04-22-dropzone-pooling-ux.md +129 -0
- package/docs/plans/2026-04-23-uploadv3-duplicate-file-max-reached.md +109 -0
- package/docs/plans/2026-04-23-uploadv3-premature-complete-on-202.md +99 -0
- package/docs/plans/2026-07-06-file-size-field-unit-prop.md +20 -0
- package/docs/plans/2026-07-30-node-22-migration.md +139 -0
- package/docs/plans/clickup-barrel-mui-dragalong.md +43 -0
- package/docs/plans/clickup-order-ledger-extraction.md +44 -0
- package/docs/plans/clickup-uploadv3-progress-bar-large-files.md +42 -0
- package/lib/components/clock-context.js.map +1 -1
- package/lib/components/clock.js.map +1 -1
- package/lib/components/extra-questions-mui.js.map +1 -1
- package/lib/components/extra-questions.js.map +1 -1
- package/lib/components/free-text-search.js.map +1 -1
- package/lib/components/index.js +1 -1
- package/lib/components/index.js.map +1 -1
- package/lib/components/inputs/access-levels-input.js.map +1 -1
- package/lib/components/inputs/attendee-input.js.map +1 -1
- package/lib/components/inputs/company-input-v2.js.map +1 -1
- package/lib/components/inputs/company-input.js.map +1 -1
- package/lib/components/inputs/country-dropdown.js.map +1 -1
- package/lib/components/inputs/country-input.js.map +1 -1
- package/lib/components/inputs/editor-input-v2.js.map +1 -1
- package/lib/components/inputs/event-input.js.map +1 -1
- package/lib/components/inputs/group-input.js.map +1 -1
- package/lib/components/inputs/language-input.js.map +1 -1
- package/lib/components/inputs/member-input.js.map +1 -1
- package/lib/components/inputs/organization-input.js.map +1 -1
- package/lib/components/inputs/promocode-input.js.map +1 -1
- package/lib/components/inputs/registration-company-input.js.map +1 -1
- package/lib/components/inputs/speaker-input.js.map +1 -1
- package/lib/components/inputs/sponsor-input.js +1 -1
- package/lib/components/inputs/sponsor-input.js.map +1 -1
- package/lib/components/inputs/summit-input.js.map +1 -1
- package/lib/components/inputs/tag-input.js.map +1 -1
- package/lib/components/inputs/textarea-input.js +1 -1
- package/lib/components/inputs/textarea-input.js.map +1 -1
- package/lib/components/inputs/ticket-types-input.js.map +1 -1
- package/lib/components/inputs/upload-input-v2.js +1 -1
- package/lib/components/inputs/upload-input-v2.js.map +1 -1
- package/lib/components/inputs/upload-input-v3.js +1 -1
- package/lib/components/inputs/upload-input-v3.js.map +1 -1
- package/lib/components/mui/addon-type-select.js +1 -1
- package/lib/components/mui/addon-type-select.js.map +1 -1
- package/lib/components/mui/auth-button.js +1 -1
- package/lib/components/mui/auth-button.js.map +1 -1
- package/lib/components/mui/drag-n-drop-list.js +1 -1
- package/lib/components/mui/drag-n-drop-list.js.map +1 -1
- package/lib/components/mui/form-item-table.js +1 -1
- package/lib/components/mui/form-item-table.js.map +1 -1
- package/lib/components/mui/formik-inputs/additional-input-list-v2.js +2 -0
- package/lib/components/mui/formik-inputs/additional-input-list-v2.js.map +1 -0
- package/lib/components/mui/formik-inputs/additional-input-list.js +1 -1
- package/lib/components/mui/formik-inputs/additional-input-list.js.map +1 -1
- package/lib/components/mui/formik-inputs/additional-input-v2.js +2 -0
- package/lib/components/mui/formik-inputs/additional-input-v2.js.map +1 -0
- package/lib/components/mui/formik-inputs/additional-input.js +1 -1
- package/lib/components/mui/formik-inputs/additional-input.js.map +1 -1
- package/lib/components/mui/formik-inputs/addon-type-select.js +1 -1
- package/lib/components/mui/formik-inputs/addon-type-select.js.map +1 -1
- package/lib/components/mui/formik-inputs/company-input.js.map +1 -1
- package/lib/components/mui/formik-inputs/sponsor-input.js.map +1 -1
- package/lib/components/mui/formik-inputs/sponsorship-input.js.map +1 -1
- package/lib/components/mui/formik-inputs/sponsorship-summit-select.js.map +1 -1
- package/lib/components/mui/formik-inputs/upload.js +1 -1
- package/lib/components/mui/formik-inputs/upload.js.map +1 -1
- package/lib/components/mui/grid-filter.js.map +1 -1
- package/lib/components/mui/nav-bar.js +1 -1
- package/lib/components/mui/nav-bar.js.map +1 -1
- package/lib/components/mui/order-summary.js.map +1 -1
- package/lib/components/mui/sortable-table-v2.js +2 -0
- package/lib/components/mui/sortable-table-v2.js.map +1 -0
- package/lib/components/mui/sponsor-addon-select.js.map +1 -1
- package/lib/components/mui/sponsor-order-grid.js +1 -1
- package/lib/components/mui/sponsor-order-grid.js.map +1 -1
- package/lib/components/mui/stripe-payment.js.map +1 -1
- package/lib/components/mui/summits-dropdown.js +1 -1
- package/lib/components/mui/summits-dropdown.js.map +1 -1
- package/lib/components/mui/table/extra-rows.js.map +1 -1
- package/lib/components/mui/upload-dialog.js +1 -1
- package/lib/components/mui/upload-dialog.js.map +1 -1
- package/lib/components/order-invoice-pdf.js +2 -0
- package/lib/components/order-invoice-pdf.js.map +1 -0
- package/lib/components/schedule-builder-view.js +1 -1
- package/lib/components/schedule-builder-view.js.map +1 -1
- package/lib/components/sponsored-project-input.js.map +1 -1
- package/lib/components/summit-dropdown.js +1 -1
- package/lib/components/summit-dropdown.js.map +1 -1
- package/lib/components/table-editable.js +1 -1
- package/lib/components/table-editable.js.map +1 -1
- package/lib/components/table-selectable.js +1 -1
- package/lib/components/table-selectable.js.map +1 -1
- package/lib/components/table-sortable.js +1 -1
- package/lib/components/table-sortable.js.map +1 -1
- package/lib/css/components/extra-questions.css +1 -1
- package/lib/css/components/extra-questions.css.map +1 -1
- package/lib/css/components/free-text-search.css +1 -1
- package/lib/css/components/free-text-search.css.map +1 -1
- package/lib/css/components/index.css +1 -2
- package/lib/css/components/index.css.map +1 -1
- package/lib/css/components/mui/sortable-table-v2.css +2 -0
- package/lib/css/components/mui/sortable-table-v2.css.map +1 -0
- package/lib/i18n.js +1 -1
- package/lib/i18n.js.map +1 -1
- package/lib/security/actions.js +1 -1
- package/lib/security/actions.js.map +1 -1
- package/lib/utils/actions.js +1 -1
- package/lib/utils/actions.js.map +1 -1
- package/lib/utils/money.js +1 -1
- package/lib/utils/money.js.map +1 -1
- package/lib/utils/query-actions.js +1 -1
- package/lib/utils/query-actions.js.map +1 -1
- package/lib/utils/questions-set.js.map +1 -1
- package/package.json +11 -12
- package/package-lock.json +0 -22291
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components/mui/auth-button.js","mappings":"CAAA,SAA2CA,EAAMC,GAC1B,iBAAZC,SAA0C,iBAAXC,OACxCA,OAAOD,QAAUD,IACQ,mBAAXG,QAAyBA,OAAOC,IAC9CD,OAAO,8BAA+B,GAAIH,GAChB,iBAAZC,QACdA,QAAQ,+BAAiCD,IAEzCD,EAAK,+BAAiCC,GACvC,CATD,CASGK,MAAM,I,mCCTTH,EAAOD,QAAUK,QAAQ,oB,WCAzBJ,EAAOD,QAAUK,QAAQ,uB,WCAzBJ,EAAOD,QAAUK,QAAQ,wB,UCAzBJ,EAAOD,QAAUK,QAAQ,2B,UCAzBJ,EAAOD,QAAUK,QAAQ,2B,WCAzBJ,EAAOD,QAAUK,QAAQ,6B,WCAzBJ,EAAOD,QAAUK,QAAQ,Q,GCCrBC,EAA2B,CAAC,EAGhC,SAASC,EAAoBC,GAE5B,IAAIC,EAAeH,EAAyBE,GAC5C,QAAqBE,IAAjBD,EACH,OAAOA,EAAaT,QAGrB,IAAIC,EAASK,EAAyBE,GAAY,CAGjDR,QAAS,CAAC,GAOX,OAHAW,EAAoBH,GAAUP,EAAQA,EAAOD,QAASO,GAG/CN,EAAOD,OACf,C,MCrBAO,EAAoBK,EAAKX,IACxB,IAAIY,EAASZ,GAAUA,EAAOa,WAC7B,IAAOb,EAAiB,QACxB,IAAM,EAEP,OADAM,EAAoBQ,EAAEF,EAAQ,CAAEG,EAAGH,IAC5BA,CAAM,C,WCLdN,EAAoBQ,EAAI,CAACf,EAASiB,KACjC,IAAI,IAAIC,KAAOD,EACXV,EAAoBY,EAAEF,EAAYC,KAASX,EAAoBY,EAAEnB,EAASkB,IAC5EE,OAAOC,eAAerB,EAASkB,EAAK,CAAEI,YAAY,EAAMC,IAAKN,EAAWC,IAE1E,C,WCNDX,EAAoBY,EAAI,CAACK,EAAKC,IAAUL,OAAOM,UAAUC,eAAeC,KAAKJ,EAAKC,E,WCClFlB,EAAoBsB,EAAK7B,IACH,oBAAX8B,QAA0BA,OAAOC,aAC1CX,OAAOC,eAAerB,EAAS8B,OAAOC,YAAa,CAAEC,MAAO,WAE7DZ,OAAOC,eAAerB,EAAS,aAAc,CAAEgC,OAAO,GAAO,C,sFCL9D,MAAM,EAA+B3B,QAAQ,wB,+ECA7C,MAAM,EAA+BA,QAAQ,8B,aCA7C,MAAM,EAA+BA,QAAQ,8B,aCA7C,MAAM,EAA+BA,QAAQ,sB,aCA7C,MAAM,EAA+BA,QAAQ,0B,+BCA7C,MAAM,EAA+BA,QAAQ,qC,aCA7C,MAAM,EAA+BA,QAAQ,8B,aCA7C,MAAM,EAA+BA,QAAQ,8B,aCA7C,MAAM,EAA+BA,QAAQ,gC,aCC7C,QAA2B,uBAA3B,EAA0D,uBCoM1D,EAtKmB4B,EACEC,eACAC,UACAC,aACAC,eACAC,kBACI,IAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EACvB,MAAMC,GAAQC,EAAAA,EAAAA,YACRC,GAAYC,EAAAA,EAAAA,QAAO,OAClBC,EAAUC,IAAeC,EAAAA,EAAAA,WAAS,GAEnCC,GAAeP,SAAa,QAARN,EAALM,EAAOQ,cAAM,IAAAd,GAAM,QAANC,EAAbD,EAAee,YAAI,IAAAd,OAAd,EAALA,EAAqBe,WAAY,SAChDC,GAAiBX,SAAa,QAARJ,EAALI,EAAOQ,cAAM,IAAAZ,GAAM,QAANC,EAAbD,EAAea,YAAI,IAAAZ,OAAd,EAALA,EAAqBe,aAAc,OACpDC,GAAgBb,SAAa,QAARF,EAALE,EAAOQ,cAAM,IAAAV,GAAM,QAANC,EAAbD,EAAeW,YAAI,IAAAV,OAAd,EAALA,EAAqBe,OAAQd,EAAMe,QAAQC,KAAKC,UAEhEC,EAAWA,KACfb,GAAY,EAAK,EAGbc,EAAYA,KAChBd,GAAY,EAAM,EAGpB,OAAIhB,EAEA+B,IAAAA,cAACC,IAAG,CAACC,UAAWC,GACdH,IAAAA,cAACI,IAAU,CACT,gBAAepB,EAAW,iBAAcvC,EACxC,gBAAeuC,EAAW,YAASvC,EACnC,gBAAc,OACd4D,QAASP,EACTQ,KAAK,SACL,cAAY,mBACZC,GAAI,CACFC,MAAO5B,EAAMe,QAAQC,KAAKa,QAC1BC,EAAG,EACHC,MAAO,GACPC,OAAQ,IAEVC,IAAK/B,GAELkB,IAAAA,cAACc,IAAiB,CAACP,GAAI,CAACjB,SAAU,OAEpCU,IAAAA,cAACe,IAAI,CACHC,GAAG,YACHC,SAAUnC,EAAUoC,QACpBC,KAAMnC,EACNoC,QAASrB,EACTsB,aAAc,CACZC,SAAU,SACVC,WAAY,SAEdC,gBAAiB,CACfF,SAAU,MACVC,WAAY,SAEdE,UAAW,CACTC,MAAO,CACLnB,GAAI,CACFoB,GAAI,IACJC,SAAU,IACVC,aAAc,EACdC,SAAU,SACVC,UAAW,oCAGfC,KAAM,CACJC,gBAAgB,EAChB1B,GAAI,CAAC2B,GAAI,MAIblC,IAAAA,cAACC,IAAG,CAACM,GAAI,CAAC4B,GAAI,EAAGD,GAAI,MACnBlC,IAAAA,cAACoC,IAAU,CACTC,QAAQ,QACR9B,GAAI,CACFjB,SAAUH,EACVK,WAAYD,EACZiB,MAAO5B,EAAMe,QAAQC,KAAKa,QAC1B6B,GAAI,KAGLjE,GAAe,QAElB2B,IAAAA,cAACoC,IAAU,CACTC,QAAQ,QACR9B,GAAI,CACFjB,SAAUH,EACVK,WAAYD,EACZiB,MAAO5B,EAAMe,QAAQC,KAAKC,YAG3BzB,GAAgB,KAGrB4B,IAAAA,cAACuC,IAAO,MACRvC,IAAAA,cAACwC,IAAQ,CAACnC,QAASN,EAAWQ,GAAI,CAAC2B,GAAI,IAAKC,GAAI,EAAGM,IAAK,MACtDzC,IAAAA,cAAC0C,IAAY,CAACnC,GAAI,CAACqB,SAAU,GAAIpB,MAAOf,IACtCO,IAAAA,cAAC2C,IAAY,CAACpC,GAAI,CAACjB,SAAU,OAE/BU,IAAAA,cAAC4C,IAAY,CACXnC,QAASoC,IAAAA,UAAY,oBACrBC,uBAAwB,CACtBvC,GAAI,CACFjB,SAAUH,EACVqB,MAAO5B,EAAMe,QAAQC,KAAKa,aAKlCT,IAAAA,cAACwC,IAAQ,CAACnC,QAASN,EAAWQ,GAAI,CAAC2B,GAAI,IAAKC,GAAI,EAAGM,IAAK,MACtDzC,IAAAA,cAAC0C,IAAY,CAACnC,GAAI,CAACqB,SAAU,GAAIpB,MAAOf,IACtCO,IAAAA,cAAC+C,IAAU,CAACxC,GAAI,CAACjB,SAAU,OAE7BU,IAAAA,cAAC4C,IAAY,CACXnC,QAASoC,IAAAA,UAAY,mBACrBC,uBAAwB,CACtBvC,GAAI,CACFjB,SAAUH,EACVqB,MAAO5B,EAAMe,QAAQC,KAAKa,aAKlCT,IAAAA,cAACuC,IAAO,MACRvC,IAAAA,cAACwC,IAAQ,CACPnC,QAASA,KACPN,IACA5B,GAAY,EAEdoC,GAAI,CAAC2B,GAAI,IAAKC,GAAI,EAAGM,IAAK,MAE1BzC,IAAAA,cAAC0C,IAAY,CAACnC,GAAI,CAACqB,SAAU,GAAIpB,MAAOf,IACtCO,IAAAA,cAACgD,IAAU,CAACzC,GAAI,CAACjB,SAAU,OAE7BU,IAAAA,cAAC4C,IAAY,CACXnC,QAASoC,IAAAA,UAAY,oBACrBC,uBAAwB,CACtBvC,GAAI,CACFjB,SAAUH,EACVqB,MAAO5B,EAAMe,QAAQC,KAAKa,eAWxCT,IAAAA,cAACC,IAAG,CAACC,UAAWC,GACdH,IAAAA,cAACiD,IAAM,CACLZ,QAAQ,YACR/B,KAAK,QACLE,MAAM,YACNH,QAASA,KACPnC,GAAS,GAGV2E,IAAAA,UAAY,mBAEX,E","sources":["webpack://openstack-uicore-foundation/webpack/universalModuleDefinition","webpack://openstack-uicore-foundation/external commonjs \"@mui/material/Box\"","webpack://openstack-uicore-foundation/external commonjs \"@mui/material/Button\"","webpack://openstack-uicore-foundation/external commonjs \"@mui/material/Divider\"","webpack://openstack-uicore-foundation/external commonjs \"@mui/material/IconButton\"","webpack://openstack-uicore-foundation/external commonjs \"@mui/material/Typography\"","webpack://openstack-uicore-foundation/external commonjs \"i18n-react/dist/i18n-react\"","webpack://openstack-uicore-foundation/external commonjs \"react\"","webpack://openstack-uicore-foundation/webpack/bootstrap","webpack://openstack-uicore-foundation/webpack/runtime/compat get default export","webpack://openstack-uicore-foundation/webpack/runtime/define property getters","webpack://openstack-uicore-foundation/webpack/runtime/hasOwnProperty shorthand","webpack://openstack-uicore-foundation/webpack/runtime/make namespace object","webpack://openstack-uicore-foundation/external commonjs \"@mui/material/styles\"","webpack://openstack-uicore-foundation/external commonjs \"@mui/material/ListItemIcon\"","webpack://openstack-uicore-foundation/external commonjs \"@mui/material/ListItemText\"","webpack://openstack-uicore-foundation/external commonjs \"@mui/material/Menu\"","webpack://openstack-uicore-foundation/external commonjs \"@mui/material/MenuItem\"","webpack://openstack-uicore-foundation/external commonjs \"@mui/icons-material/AccountCircle\"","webpack://openstack-uicore-foundation/external commonjs \"@mui/icons-material/Logout\"","webpack://openstack-uicore-foundation/external commonjs \"@mui/icons-material/Person\"","webpack://openstack-uicore-foundation/external commonjs \"@mui/icons-material/Settings\"","webpack://openstack-uicore-foundation/./src/components/mui/AuthButton/styles.module.scss","webpack://openstack-uicore-foundation/./src/components/mui/AuthButton/index.js"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"openstack-uicore-foundation\", [], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"openstack-uicore-foundation\"] = factory();\n\telse\n\t\troot[\"openstack-uicore-foundation\"] = factory();\n})(this, () => {\nreturn ","module.exports = require(\"@mui/material/Box\");","module.exports = require(\"@mui/material/Button\");","module.exports = require(\"@mui/material/Divider\");","module.exports = require(\"@mui/material/IconButton\");","module.exports = require(\"@mui/material/Typography\");","module.exports = require(\"i18n-react/dist/i18n-react\");","module.exports = require(\"react\");","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"@mui/material/styles\");","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"@mui/material/ListItemIcon\");","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"@mui/material/ListItemText\");","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"@mui/material/Menu\");","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"@mui/material/MenuItem\");","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"@mui/icons-material/AccountCircle\");","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"@mui/icons-material/Logout\");","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"@mui/icons-material/Person\");","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"@mui/icons-material/Settings\");","// extracted by mini-css-extract-plugin\nexport default {\"userMenu\":\"UD7OIFgwF1LOfPJP234A\",\"login\":\"jWfqKg10xvcVZqMUgbLQ\"};","/**\n * Copyright 2026 OpenStack Foundation\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * http://www.apache.org/licenses/LICENSE-2.0\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * */\n\nimport React, {useRef, useState} from \"react\";\nimport T from \"i18n-react/dist/i18n-react\";\nimport {useTheme} from \"@mui/material/styles\";\nimport Box from \"@mui/material/Box\";\nimport Button from \"@mui/material/Button\";\nimport Divider from \"@mui/material/Divider\";\nimport IconButton from \"@mui/material/IconButton\";\nimport ListItemIcon from \"@mui/material/ListItemIcon\";\nimport ListItemText from \"@mui/material/ListItemText\";\nimport Menu from \"@mui/material/Menu\";\nimport MenuItem from \"@mui/material/MenuItem\";\nimport Typography from \"@mui/material/Typography\";\nimport AccountCircleIcon from \"@mui/icons-material/AccountCircle\";\nimport LogoutIcon from \"@mui/icons-material/Logout\";\nimport PersonIcon from \"@mui/icons-material/Person\";\nimport SettingsIcon from \"@mui/icons-material/Settings\";\nimport styles from \"./styles.module.scss\";\n\nconst AuthButton = ({\n isLoggedUser,\n doLogin,\n initLogOut,\n profileEmail,\n profileName\n }) => {\n const theme = useTheme();\n const anchorRef = useRef(null);\n const [menuOpen, setMenuOpen] = useState(false);\n\n const menuFontSize = theme?.custom?.menu?.fontSize || \"1.4rem\";\n const menuLineHeight = theme?.custom?.menu?.lineHeight || \"2rem\";\n const menuIconColor = theme?.custom?.menu?.icon || theme.palette.text.secondary;\n\n const openMenu = () => {\n setMenuOpen(true);\n };\n\n const closeMenu = () => {\n setMenuOpen(false);\n };\n\n if (isLoggedUser) {\n return (\n <Box className={styles.userMenu}>\n <IconButton\n aria-controls={menuOpen ? \"user-menu\" : undefined}\n aria-expanded={menuOpen ? \"true\" : undefined}\n aria-haspopup=\"true\"\n onClick={openMenu}\n size=\"medium\"\n data-testid=\"user-menu-button\"\n sx={{\n color: theme.palette.text.primary,\n p: 0,\n width: 28,\n height: 28\n }}\n ref={anchorRef}\n >\n <AccountCircleIcon sx={{fontSize: 28}}/>\n </IconButton>\n <Menu\n id=\"user-menu\"\n anchorEl={anchorRef.current}\n open={menuOpen}\n onClose={closeMenu}\n anchorOrigin={{\n vertical: \"bottom\",\n horizontal: \"right\"\n }}\n transformOrigin={{\n vertical: \"top\",\n horizontal: \"right\"\n }}\n slotProps={{\n paper: {\n sx: {\n mt: 1.5,\n minWidth: 260,\n borderRadius: 2,\n overflow: \"hidden\",\n boxShadow: \"0 16px 40px rgba(0, 0, 0, 0.18)\"\n }\n },\n list: {\n disablePadding: true,\n sx: {py: 0}\n }\n }}\n >\n <Box sx={{px: 3, py: 2.5}}>\n <Typography\n variant=\"body1\"\n sx={{\n fontSize: menuFontSize,\n lineHeight: menuLineHeight,\n color: theme.palette.text.primary,\n mb: 0.5\n }}\n >\n {profileName || \"User\"}\n </Typography>\n <Typography\n variant=\"body2\"\n sx={{\n fontSize: menuFontSize,\n lineHeight: menuLineHeight,\n color: theme.palette.text.secondary\n }}\n >\n {profileEmail || \"\"}\n </Typography>\n </Box>\n <Divider/>\n <MenuItem onClick={closeMenu} sx={{py: 1.5, px: 3, gap: 1.5}}>\n <ListItemIcon sx={{minWidth: 32, color: menuIconColor}}>\n <SettingsIcon sx={{fontSize: 24}}/>\n </ListItemIcon>\n <ListItemText\n primary={T.translate(\"general.settings\")}\n primaryTypographyProps={{\n sx: {\n fontSize: menuFontSize,\n color: theme.palette.text.primary\n }\n }}\n />\n </MenuItem>\n <MenuItem onClick={closeMenu} sx={{py: 1.5, px: 3, gap: 1.5}}>\n <ListItemIcon sx={{minWidth: 32, color: menuIconColor}}>\n <PersonIcon sx={{fontSize: 24}}/>\n </ListItemIcon>\n <ListItemText\n primary={T.translate(\"general.profile\")}\n primaryTypographyProps={{\n sx: {\n fontSize: menuFontSize,\n color: theme.palette.text.primary\n }\n }}\n />\n </MenuItem>\n <Divider/>\n <MenuItem\n onClick={() => {\n closeMenu();\n initLogOut();\n }}\n sx={{py: 1.5, px: 3, gap: 1.5}}\n >\n <ListItemIcon sx={{minWidth: 32, color: menuIconColor}}>\n <LogoutIcon sx={{fontSize: 24}}/>\n </ListItemIcon>\n <ListItemText\n primary={T.translate(\"buttons.sign_out\")}\n primaryTypographyProps={{\n sx: {\n fontSize: menuFontSize,\n color: theme.palette.text.primary\n }\n }}\n />\n </MenuItem>\n </Menu>\n </Box>\n );\n }\n\n return (\n <Box className={styles.login}>\n <Button\n variant=\"contained\"\n size=\"small\"\n color=\"secondary\"\n onClick={() => {\n doLogin();\n }}\n >\n {T.translate(\"buttons.log_in\")}\n </Button>\n </Box>\n );\n};\n\nexport default AuthButton;\n"],"names":["root","factory","exports","module","define","amd","this","require","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","__webpack_modules__","n","getter","__esModule","d","a","definition","key","o","Object","defineProperty","enumerable","get","obj","prop","prototype","hasOwnProperty","call","r","Symbol","toStringTag","value","AuthButton","isLoggedUser","doLogin","initLogOut","profileEmail","profileName","_theme$custom","_theme$custom$menu","_theme$custom2","_theme$custom2$menu","_theme$custom3","_theme$custom3$menu","theme","useTheme","anchorRef","useRef","menuOpen","setMenuOpen","useState","menuFontSize","custom","menu","fontSize","menuLineHeight","lineHeight","menuIconColor","icon","palette","text","secondary","openMenu","closeMenu","React","Box","className","styles","IconButton","onClick","size","sx","color","primary","p","width","height","ref","AccountCircleIcon","Menu","id","anchorEl","current","open","onClose","anchorOrigin","vertical","horizontal","transformOrigin","slotProps","paper","mt","minWidth","borderRadius","overflow","boxShadow","list","disablePadding","py","px","Typography","variant","mb","Divider","MenuItem","gap","ListItemIcon","SettingsIcon","ListItemText","T","primaryTypographyProps","PersonIcon","LogoutIcon","Button"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"components/mui/auth-button.js","mappings":"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","sources":["webpack://openstack-uicore-foundation/webpack/universalModuleDefinition","webpack://openstack-uicore-foundation/external commonjs \"@mui/material/Box\"","webpack://openstack-uicore-foundation/external commonjs \"@mui/material/Button\"","webpack://openstack-uicore-foundation/external commonjs \"@mui/material/Divider\"","webpack://openstack-uicore-foundation/external commonjs \"@mui/material/IconButton\"","webpack://openstack-uicore-foundation/external commonjs \"@mui/material/Typography\"","webpack://openstack-uicore-foundation/external commonjs \"i18n-react/dist/i18n-react\"","webpack://openstack-uicore-foundation/external commonjs \"react\"","webpack://openstack-uicore-foundation/webpack/bootstrap","webpack://openstack-uicore-foundation/webpack/runtime/compat get default export","webpack://openstack-uicore-foundation/webpack/runtime/define property getters","webpack://openstack-uicore-foundation/webpack/runtime/hasOwnProperty shorthand","webpack://openstack-uicore-foundation/webpack/runtime/make namespace object","webpack://openstack-uicore-foundation/external commonjs \"@mui/material/styles\"","webpack://openstack-uicore-foundation/external commonjs \"@mui/material/ListItemIcon\"","webpack://openstack-uicore-foundation/external commonjs \"@mui/material/ListItemText\"","webpack://openstack-uicore-foundation/external commonjs \"@mui/material/Menu\"","webpack://openstack-uicore-foundation/external commonjs \"@mui/material/MenuItem\"","webpack://openstack-uicore-foundation/external commonjs \"@mui/icons-material/AccountCircle\"","webpack://openstack-uicore-foundation/external commonjs \"@mui/icons-material/Logout\"","webpack://openstack-uicore-foundation/external commonjs \"@mui/icons-material/Person\"","webpack://openstack-uicore-foundation/external commonjs \"@mui/icons-material/Settings\"","webpack://openstack-uicore-foundation/./src/components/mui/AuthButton/styles.module.scss","webpack://openstack-uicore-foundation/./src/components/mui/AuthButton/index.js"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"openstack-uicore-foundation\", [], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"openstack-uicore-foundation\"] = factory();\n\telse\n\t\troot[\"openstack-uicore-foundation\"] = factory();\n})(this, () => {\nreturn ","module.exports = require(\"@mui/material/Box\");","module.exports = require(\"@mui/material/Button\");","module.exports = require(\"@mui/material/Divider\");","module.exports = require(\"@mui/material/IconButton\");","module.exports = require(\"@mui/material/Typography\");","module.exports = require(\"i18n-react/dist/i18n-react\");","module.exports = require(\"react\");","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"@mui/material/styles\");","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"@mui/material/ListItemIcon\");","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"@mui/material/ListItemText\");","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"@mui/material/Menu\");","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"@mui/material/MenuItem\");","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"@mui/icons-material/AccountCircle\");","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"@mui/icons-material/Logout\");","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"@mui/icons-material/Person\");","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"@mui/icons-material/Settings\");","// extracted by mini-css-extract-plugin\nexport default {\"userMenu\":\"UD7OIFgwF1LOfPJP234A\",\"login\":\"jWfqKg10xvcVZqMUgbLQ\"};","/**\n * Copyright 2026 OpenStack Foundation\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * http://www.apache.org/licenses/LICENSE-2.0\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * */\n\nimport React, {useRef, useState} from \"react\";\nimport T from \"i18n-react/dist/i18n-react\";\nimport {useTheme} from \"@mui/material/styles\";\nimport Box from \"@mui/material/Box\";\nimport Button from \"@mui/material/Button\";\nimport Divider from \"@mui/material/Divider\";\nimport IconButton from \"@mui/material/IconButton\";\nimport ListItemIcon from \"@mui/material/ListItemIcon\";\nimport ListItemText from \"@mui/material/ListItemText\";\nimport Menu from \"@mui/material/Menu\";\nimport MenuItem from \"@mui/material/MenuItem\";\nimport Typography from \"@mui/material/Typography\";\nimport AccountCircleIcon from \"@mui/icons-material/AccountCircle\";\nimport LogoutIcon from \"@mui/icons-material/Logout\";\nimport PersonIcon from \"@mui/icons-material/Person\";\nimport SettingsIcon from \"@mui/icons-material/Settings\";\nimport styles from \"./styles.module.scss\";\n\nconst AuthButton = ({\n isLoggedUser,\n doLogin,\n initLogOut,\n profileEmail,\n profileName\n }) => {\n const theme = useTheme();\n const anchorRef = useRef(null);\n const [menuOpen, setMenuOpen] = useState(false);\n\n const menuFontSize = theme?.custom?.menu?.fontSize || \"1.4rem\";\n const menuLineHeight = theme?.custom?.menu?.lineHeight || \"2rem\";\n const menuIconColor = theme?.custom?.menu?.icon || theme.palette.text.secondary;\n\n const openMenu = () => {\n setMenuOpen(true);\n };\n\n const closeMenu = () => {\n setMenuOpen(false);\n };\n\n if (isLoggedUser) {\n return (\n <Box className={styles.userMenu}>\n <IconButton\n aria-controls={menuOpen ? \"user-menu\" : undefined}\n aria-expanded={menuOpen ? \"true\" : undefined}\n aria-haspopup=\"true\"\n onClick={openMenu}\n size=\"medium\"\n data-testid=\"user-menu-button\"\n sx={{\n color: theme.palette.text.primary,\n p: 0,\n width: 28,\n height: 28\n }}\n ref={anchorRef}\n >\n <AccountCircleIcon sx={{fontSize: 28}}/>\n </IconButton>\n <Menu\n id=\"user-menu\"\n anchorEl={anchorRef.current}\n open={menuOpen}\n onClose={closeMenu}\n anchorOrigin={{\n vertical: \"bottom\",\n horizontal: \"right\"\n }}\n transformOrigin={{\n vertical: \"top\",\n horizontal: \"right\"\n }}\n slotProps={{\n paper: {\n sx: {\n mt: 1.5,\n minWidth: 260,\n borderRadius: 2,\n overflow: \"hidden\",\n boxShadow: \"0 16px 40px rgba(0, 0, 0, 0.18)\"\n }\n },\n list: {\n disablePadding: true,\n sx: {py: 0}\n }\n }}\n >\n <Box sx={{px: 3, py: 2.5}}>\n <Typography\n variant=\"body1\"\n sx={{\n fontSize: menuFontSize,\n lineHeight: menuLineHeight,\n color: theme.palette.text.primary,\n mb: 0.5\n }}\n >\n {profileName || \"User\"}\n </Typography>\n <Typography\n variant=\"body2\"\n sx={{\n fontSize: menuFontSize,\n lineHeight: menuLineHeight,\n color: theme.palette.text.secondary\n }}\n >\n {profileEmail || \"\"}\n </Typography>\n </Box>\n <Divider/>\n <MenuItem onClick={closeMenu} sx={{py: 1.5, px: 3, gap: 1.5}}>\n <ListItemIcon sx={{minWidth: 32, color: menuIconColor}}>\n <SettingsIcon sx={{fontSize: 24}}/>\n </ListItemIcon>\n <ListItemText\n primary={T.translate(\"general.settings\")}\n primaryTypographyProps={{\n sx: {\n fontSize: menuFontSize,\n color: theme.palette.text.primary\n }\n }}\n />\n </MenuItem>\n <MenuItem onClick={closeMenu} sx={{py: 1.5, px: 3, gap: 1.5}}>\n <ListItemIcon sx={{minWidth: 32, color: menuIconColor}}>\n <PersonIcon sx={{fontSize: 24}}/>\n </ListItemIcon>\n <ListItemText\n primary={T.translate(\"general.profile\")}\n primaryTypographyProps={{\n sx: {\n fontSize: menuFontSize,\n color: theme.palette.text.primary\n }\n }}\n />\n </MenuItem>\n <Divider/>\n <MenuItem\n onClick={() => {\n closeMenu();\n initLogOut();\n }}\n sx={{py: 1.5, px: 3, gap: 1.5}}\n >\n <ListItemIcon sx={{minWidth: 32, color: menuIconColor}}>\n <LogoutIcon sx={{fontSize: 24}}/>\n </ListItemIcon>\n <ListItemText\n primary={T.translate(\"buttons.sign_out\")}\n primaryTypographyProps={{\n sx: {\n fontSize: menuFontSize,\n color: theme.palette.text.primary\n }\n }}\n />\n </MenuItem>\n </Menu>\n </Box>\n );\n }\n\n return (\n <Box className={styles.login}>\n <Button\n variant=\"contained\"\n size=\"small\"\n color=\"secondary\"\n onClick={() => {\n doLogin();\n }}\n >\n {T.translate(\"buttons.log_in\")}\n </Button>\n </Box>\n );\n};\n\nexport default AuthButton;\n"],"names":["root","factory","exports","module","define","amd","this","require","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","__webpack_modules__","n","getter","__esModule","d","a","definition","key","o","Object","defineProperty","enumerable","get","obj","prop","prototype","hasOwnProperty","call","r","Symbol","toStringTag","value","AuthButton","isLoggedUser","doLogin","initLogOut","profileEmail","profileName","_theme$custom","_theme$custom2","_theme$custom3","theme","useTheme","anchorRef","useRef","menuOpen","setMenuOpen","useState","menuFontSize","custom","menu","fontSize","menuLineHeight","lineHeight","menuIconColor","icon","palette","text","secondary","openMenu","closeMenu","React","Box","className","styles","IconButton","onClick","size","sx","color","primary","p","width","height","ref","AccountCircleIcon","Menu","id","anchorEl","current","open","onClose","anchorOrigin","vertical","horizontal","transformOrigin","slotProps","paper","mt","minWidth","borderRadius","overflow","boxShadow","list","disablePadding","py","px","Typography","variant","mb","Divider","MenuItem","gap","ListItemIcon","SettingsIcon","ListItemText","T","primaryTypographyProps","PersonIcon","LogoutIcon","Button"],"sourceRoot":""}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
!function(e,r){"object"==typeof exports&&"object"==typeof module?module.exports=r():"function"==typeof define&&define.amd?define("openstack-uicore-foundation",[],r):"object"==typeof exports?exports["openstack-uicore-foundation"]=r():e["openstack-uicore-foundation"]=r()}(this,(()=>(()=>{"use strict";var e={}
|
|
1
|
+
!function(e,r){"object"==typeof exports&&"object"==typeof module?module.exports=r():"function"==typeof define&&define.amd?define("openstack-uicore-foundation",[],r):"object"==typeof exports?exports["openstack-uicore-foundation"]=r():e["openstack-uicore-foundation"]=r()}(this,(()=>(()=>{"use strict";var e={1116:e=>{e.exports=require("@babel/runtime/helpers/defineProperty")},8619:e=>{e.exports=require("@mui/material")},9825:e=>{e.exports=require("prop-types")},2015:e=>{e.exports=require("react")}},r={};function t(o){var n=r[o];if(void 0!==n)return n.exports;var i=r[o]={exports:{}};return e[o](i,i.exports,t),i.exports}(()=>{t.n=e=>{var r=e&&e.__esModule?()=>e.default:()=>e;return t.d(r,{a:r}),r}})(),(()=>{t.d=(e,r)=>{for(var o in r)t.o(r,o)&&!t.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:r[o]})}})(),(()=>{t.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r)})(),(()=>{t.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}})();var o={};t.r(o),t.d(o,{default:()=>S});var n=t(2015),i=t.n(n),s=t(9825),d=t.n(s);const c=require("@dnd-kit/core"),a=require("@dnd-kit/sortable");var u=t(8619),p=t(1116),f=t.n(p);const l=require("@dnd-kit/utilities");function y(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r&&(o=o.filter((function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable}))),t.push.apply(t,o)}return t}function b(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?y(Object(t),!0).forEach((function(r){f()(e,r,t[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):y(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))}))}return e}const O=({id:e,item:r,index:t,renderItem:o})=>{const{attributes:n,listeners:s,setNodeRef:d,transform:c,transition:p,isDragging:f}=(0,a.useSortable)({id:e});return i().createElement(u.Box,{ref:d,style:{transform:l.CSS.Transform.toString(c),transition:[p,"background 0.2s ease"].filter(Boolean).join(", "),zIndex:f?1:"auto",position:"relative"},sx:{background:f?"#f0f0f0":"inherit"}},o(r,t,{isDragging:f,dragHandleProps:b(b({},s),n)}))};O.propTypes={id:d().string.isRequired,item:d().object.isRequired,index:d().number,renderItem:d().func.isRequired};const m=O;function g(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r&&(o=o.filter((function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable}))),t.push.apply(t,o)}return t}function j(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?g(Object(t),!0).forEach((function(r){f()(e,r,t[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):g(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))}))}return e}const v=({items:e,getItemId:r,onReorder:t,updateOrderKey:o="order",orderOffset:n=0})=>({sensors:(0,c.useSensors)((0,c.useSensor)(c.PointerSensor),(0,c.useSensor)(c.KeyboardSensor,{coordinateGetter:a.sortableKeyboardCoordinates})),collisionDetection:c.closestCenter,handleDragEnd:({active:i,over:s})=>{if(!s||i.id===s.id)return;const d=e.findIndex(((e,t)=>r(e,t)===i.id)),c=e.findIndex(((e,t)=>r(e,t)===s.id));if(-1===d||-1===c)return;const u=(0,a.arrayMove)(e,d,c).map(((e,r)=>o?j(j({},e),{},{[o]:n+r+1}):e));t(u,{active:i,over:s,oldIndex:d,newIndex:c})}}),x=(e,r,t)=>void 0!==e[t]&&null!==e[t]?String(e[t]):`new-${r}`,P=({items:e,onReorder:r,renderItem:t,idKey:o="id",updateOrderKey:n="order"})=>{const{sensors:s,collisionDetection:d,handleDragEnd:p}=v({items:e,getItemId:(e,r)=>x(e,r,o),updateOrderKey:n,onReorder:(e,{active:t,over:o})=>r(e,{active:t,over:o})});return i().createElement(c.DndContext,{sensors:s,collisionDetection:d,onDragEnd:p},i().createElement(a.SortableContext,{items:e.map(((e,r)=>x(e,r,o))),strategy:a.verticalListSortingStrategy},i().createElement(u.Box,{sx:{width:"100%"}},e.map(((e,r)=>i().createElement(m,{key:x(e,r,o),id:x(e,r,o),item:e,index:r,renderItem:t}))))))};P.propTypes={items:d().array.isRequired,onReorder:d().func.isRequired,renderItem:d().func.isRequired,idKey:d().string,updateOrderKey:d().string};const S=P;return o})()));
|
|
2
2
|
//# sourceMappingURL=drag-n-drop-list.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components/mui/drag-n-drop-list.js","mappings":"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","sources":["webpack://openstack-uicore-foundation/webpack/universalModuleDefinition","webpack://openstack-uicore-foundation/webpack/bootstrap","webpack://openstack-uicore-foundation/webpack/runtime/compat get default export","webpack://openstack-uicore-foundation/webpack/runtime/define property getters","webpack://openstack-uicore-foundation/webpack/runtime/hasOwnProperty shorthand","webpack://openstack-uicore-foundation/webpack/runtime/make namespace object","webpack://openstack-uicore-foundation/external commonjs \"@babel/runtime/helpers/defineProperty\"","webpack://openstack-uicore-foundation/external commonjs \"react\"","webpack://openstack-uicore-foundation/external commonjs \"prop-types\"","webpack://openstack-uicore-foundation/external commonjs \"@dnd-kit/core\"","webpack://openstack-uicore-foundation/external commonjs \"@dnd-kit/sortable\"","webpack://openstack-uicore-foundation/external commonjs \"@mui/material\"","webpack://openstack-uicore-foundation/external commonjs \"@dnd-kit/utilities\"","webpack://openstack-uicore-foundation/./src/components/mui/DragNDropList/sortable-item.js","webpack://openstack-uicore-foundation/./src/components/mui/DragNDropList/index.js"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"openstack-uicore-foundation\", [], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"openstack-uicore-foundation\"] = factory();\n\telse\n\t\troot[\"openstack-uicore-foundation\"] = factory();\n})(this, () => {\nreturn ","// The require scope\nvar __webpack_require__ = {};\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"@babel/runtime/helpers/defineProperty\");","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"react\");","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"prop-types\");","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"@dnd-kit/core\");","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"@dnd-kit/sortable\");","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"@mui/material\");","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"@dnd-kit/utilities\");","/**\n * Copyright 2026 OpenStack Foundation\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * http://www.apache.org/licenses/LICENSE-2.0\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * */\n\nimport React from \"react\";\nimport PropTypes from \"prop-types\";\nimport {\n useSortable,\n} from \"@dnd-kit/sortable\";\nimport { CSS } from \"@dnd-kit/utilities\";\nimport { Box } from \"@mui/material\";\n\nconst SortableItem = ({ id, item, index, renderItem }) => {\n const {\n attributes,\n listeners,\n setNodeRef,\n transform,\n transition,\n isDragging\n } = useSortable({ id });\n\n return (\n <Box\n ref={setNodeRef}\n style={{\n transform: CSS.Transform.toString(transform),\n transition: [transition, \"background 0.2s ease\"].filter(Boolean).join(\", \"),\n zIndex: isDragging ? 1 : \"auto\",\n position: \"relative\"\n }}\n sx={{ background: isDragging ? \"#f0f0f0\" : \"inherit\" }}\n >\n {renderItem(item, index, {\n isDragging,\n dragHandleProps: { ...listeners, ...attributes }\n })}\n </Box>\n );\n};\n\nSortableItem.propTypes = {\n id: PropTypes.string.isRequired,\n item: PropTypes.object.isRequired,\n index: PropTypes.number,\n renderItem: PropTypes.func.isRequired\n};\n\nexport default SortableItem;\n","/**\n * Copyright 2026 OpenStack Foundation\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * http://www.apache.org/licenses/LICENSE-2.0\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * */\n\nimport React from \"react\";\nimport PropTypes from \"prop-types\";\nimport {\n DndContext,\n closestCenter,\n KeyboardSensor,\n PointerSensor,\n useSensor,\n useSensors\n} from \"@dnd-kit/core\";\nimport {\n SortableContext,\n sortableKeyboardCoordinates,\n verticalListSortingStrategy,\n arrayMove\n} from \"@dnd-kit/sortable\";\nimport { Box } from \"@mui/material\";\n\nimport SortableItem from \"./sortable-item\";\n\n// Items without an idKey value fall back to a positional id (new-${index}).\n// Because that id is recomputed from the current index every render, after a\n// reorder it identifies whatever item now occupies that slot, not the item it\n// originally pointed to - React will reuse that item's fiber instead of\n// remounting it. Harmless if renderItem is stateless/positional (e.g. Formik\n// fields bound by values[index]), but consumers relying on local/uncontrolled\n// state inside renderItem should assign a stable id (e.g. crypto.randomUUID())\n// to new items instead of leaving idKey undefined.\nconst getItemId = (item, index, idKey) =>\n item[idKey] !== undefined && item[idKey] !== null\n ? String(item[idKey])\n : `new-${index}`;\n\nconst DragNDropList = ({\n items,\n onReorder,\n renderItem,\n idKey = \"id\",\n updateOrderKey = \"order\"\n}) => {\n const sensors = useSensors(\n useSensor(PointerSensor),\n useSensor(KeyboardSensor, { coordinateGetter: sortableKeyboardCoordinates })\n );\n\n const handleDragEnd = ({ active, over }) => {\n if (!over || active.id === over.id) return;\n\n const oldIndex = items.findIndex(\n (item, i) => getItemId(item, i, idKey) === active.id\n );\n const newIndex = items.findIndex(\n (item, i) => getItemId(item, i, idKey) === over.id\n );\n\n if (oldIndex === -1 || newIndex === -1) return;\n\n const reordered = arrayMove(items, oldIndex, newIndex).map((item, i) => ({\n ...item,\n [updateOrderKey]: i + 1\n }));\n\n onReorder(reordered, { active, over });\n };\n\n return (\n <DndContext\n sensors={sensors}\n collisionDetection={closestCenter}\n onDragEnd={handleDragEnd}\n >\n <SortableContext\n items={items.map((item, i) => getItemId(item, i, idKey))}\n strategy={verticalListSortingStrategy}\n >\n <Box sx={{ width: \"100%\" }}>\n {items.map((item, index) => (\n <SortableItem\n key={getItemId(item, index, idKey)}\n id={getItemId(item, index, idKey)}\n item={item}\n index={index}\n renderItem={renderItem}\n />\n ))}\n </Box>\n </SortableContext>\n </DndContext>\n );\n};\n\nDragNDropList.propTypes = {\n items: PropTypes.array.isRequired,\n onReorder: PropTypes.func.isRequired,\n renderItem: PropTypes.func.isRequired,\n idKey: PropTypes.string,\n updateOrderKey: PropTypes.string\n};\n\nexport default DragNDropList;\n"],"names":["root","factory","exports","module","define","amd","this","__webpack_require__","n","getter","__esModule","d","a","definition","key","o","Object","defineProperty","enumerable","get","obj","prop","prototype","hasOwnProperty","call","r","Symbol","toStringTag","value","require","SortableItem","id","item","index","renderItem","attributes","listeners","setNodeRef","transform","transition","isDragging","useSortable","React","Box","ref","style","CSS","Transform","toString","filter","Boolean","join","zIndex","position","sx","background","dragHandleProps","_objectSpread","propTypes","PropTypes","isRequired","getItemId","idKey","undefined","String","DragNDropList","items","onReorder","updateOrderKey","sensors","useSensors","useSensor","PointerSensor","KeyboardSensor","coordinateGetter","sortableKeyboardCoordinates","DndContext","collisionDetection","closestCenter","onDragEnd","handleDragEnd","active","over","oldIndex","findIndex","i","newIndex","reordered","arrayMove","map","SortableContext","strategy","verticalListSortingStrategy","width"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"components/mui/drag-n-drop-list.js","mappings":"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","sources":["webpack://openstack-uicore-foundation/webpack/universalModuleDefinition","webpack://openstack-uicore-foundation/external commonjs \"@babel/runtime/helpers/defineProperty\"","webpack://openstack-uicore-foundation/external commonjs \"@mui/material\"","webpack://openstack-uicore-foundation/external commonjs \"prop-types\"","webpack://openstack-uicore-foundation/external commonjs \"react\"","webpack://openstack-uicore-foundation/webpack/bootstrap","webpack://openstack-uicore-foundation/webpack/runtime/compat get default export","webpack://openstack-uicore-foundation/webpack/runtime/define property getters","webpack://openstack-uicore-foundation/webpack/runtime/hasOwnProperty shorthand","webpack://openstack-uicore-foundation/webpack/runtime/make namespace object","webpack://openstack-uicore-foundation/external commonjs \"@dnd-kit/core\"","webpack://openstack-uicore-foundation/external commonjs \"@dnd-kit/sortable\"","webpack://openstack-uicore-foundation/external commonjs \"@dnd-kit/utilities\"","webpack://openstack-uicore-foundation/./src/components/mui/DragNDropList/sortable-item.js","webpack://openstack-uicore-foundation/./src/components/mui/DragNDropList/hooks/useDndKitReorder.js","webpack://openstack-uicore-foundation/./src/components/mui/DragNDropList/index.js"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"openstack-uicore-foundation\", [], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"openstack-uicore-foundation\"] = factory();\n\telse\n\t\troot[\"openstack-uicore-foundation\"] = factory();\n})(this, () => {\nreturn ","module.exports = require(\"@babel/runtime/helpers/defineProperty\");","module.exports = require(\"@mui/material\");","module.exports = require(\"prop-types\");","module.exports = require(\"react\");","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"@dnd-kit/core\");","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"@dnd-kit/sortable\");","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"@dnd-kit/utilities\");","/**\n * Copyright 2026 OpenStack Foundation\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * http://www.apache.org/licenses/LICENSE-2.0\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * */\n\nimport React from \"react\";\nimport PropTypes from \"prop-types\";\nimport {\n useSortable,\n} from \"@dnd-kit/sortable\";\nimport { CSS } from \"@dnd-kit/utilities\";\nimport { Box } from \"@mui/material\";\n\nconst SortableItem = ({ id, item, index, renderItem }) => {\n const {\n attributes,\n listeners,\n setNodeRef,\n transform,\n transition,\n isDragging\n } = useSortable({ id });\n\n return (\n <Box\n ref={setNodeRef}\n style={{\n transform: CSS.Transform.toString(transform),\n transition: [transition, \"background 0.2s ease\"].filter(Boolean).join(\", \"),\n zIndex: isDragging ? 1 : \"auto\",\n position: \"relative\"\n }}\n sx={{ background: isDragging ? \"#f0f0f0\" : \"inherit\" }}\n >\n {renderItem(item, index, {\n isDragging,\n dragHandleProps: { ...listeners, ...attributes }\n })}\n </Box>\n );\n};\n\nSortableItem.propTypes = {\n id: PropTypes.string.isRequired,\n item: PropTypes.object.isRequired,\n index: PropTypes.number,\n renderItem: PropTypes.func.isRequired\n};\n\nexport default SortableItem;\n","/**\n * Copyright 2026 OpenStack Foundation\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * http://www.apache.org/licenses/LICENSE-2.0\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * */\n\nimport {\n closestCenter,\n KeyboardSensor,\n PointerSensor,\n useSensor,\n useSensors\n} from \"@dnd-kit/core\";\nimport { sortableKeyboardCoordinates, arrayMove } from \"@dnd-kit/sortable\";\n\n// Shared dnd-kit wiring for reorderable lists/tables: sensors, collision\n// detection, and the base order computation (orderOffset + idx + 1).\n// orderOffset lets a paginated consumer add its page offset on top without\n// duplicating the sensor/collision setup or the id-matching logic.\nconst useDndKitReorder = ({\n items,\n getItemId,\n onReorder,\n updateOrderKey = \"order\",\n orderOffset = 0\n}) => {\n const sensors = useSensors(\n useSensor(PointerSensor),\n useSensor(KeyboardSensor, { coordinateGetter: sortableKeyboardCoordinates })\n );\n\n const handleDragEnd = ({ active, over }) => {\n if (!over || active.id === over.id) return;\n\n const oldIndex = items.findIndex((item, i) => getItemId(item, i) === active.id);\n const newIndex = items.findIndex((item, i) => getItemId(item, i) === over.id);\n\n if (oldIndex === -1 || newIndex === -1) return;\n\n const reordered = arrayMove(items, oldIndex, newIndex).map((item, idx) =>\n updateOrderKey\n ? { ...item, [updateOrderKey]: orderOffset + idx + 1 }\n : item\n );\n\n onReorder(reordered, { active, over, oldIndex, newIndex });\n };\n\n return { sensors, collisionDetection: closestCenter, handleDragEnd };\n};\n\nexport default useDndKitReorder;\n","/**\n * Copyright 2026 OpenStack Foundation\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * http://www.apache.org/licenses/LICENSE-2.0\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * */\n\nimport React from \"react\";\nimport PropTypes from \"prop-types\";\nimport { DndContext } from \"@dnd-kit/core\";\nimport { SortableContext, verticalListSortingStrategy } from \"@dnd-kit/sortable\";\nimport { Box } from \"@mui/material\";\n\nimport SortableItem from \"./sortable-item\";\nimport useDndKitReorder from \"./hooks/useDndKitReorder\";\n\n// Items without an idKey value fall back to a positional id (new-${index}).\n// Because that id is recomputed from the current index every render, after a\n// reorder it identifies whatever item now occupies that slot, not the item it\n// originally pointed to - React will reuse that item's fiber instead of\n// remounting it. Harmless if renderItem is stateless/positional (e.g. Formik\n// fields bound by values[index]), but consumers relying on local/uncontrolled\n// state inside renderItem should assign a stable id (e.g. crypto.randomUUID())\n// to new items instead of leaving idKey undefined.\nconst getItemId = (item, index, idKey) =>\n item[idKey] !== undefined && item[idKey] !== null\n ? String(item[idKey])\n : `new-${index}`;\n\nconst DragNDropList = ({\n items,\n onReorder,\n renderItem,\n idKey = \"id\",\n updateOrderKey = \"order\"\n}) => {\n const { sensors, collisionDetection, handleDragEnd } = useDndKitReorder({\n items,\n getItemId: (item, i) => getItemId(item, i, idKey),\n updateOrderKey,\n onReorder: (reordered, { active, over }) => onReorder(reordered, { active, over })\n });\n\n return (\n <DndContext\n sensors={sensors}\n collisionDetection={collisionDetection}\n onDragEnd={handleDragEnd}\n >\n <SortableContext\n items={items.map((item, i) => getItemId(item, i, idKey))}\n strategy={verticalListSortingStrategy}\n >\n <Box sx={{ width: \"100%\" }}>\n {items.map((item, index) => (\n <SortableItem\n key={getItemId(item, index, idKey)}\n id={getItemId(item, index, idKey)}\n item={item}\n index={index}\n renderItem={renderItem}\n />\n ))}\n </Box>\n </SortableContext>\n </DndContext>\n );\n};\n\nDragNDropList.propTypes = {\n items: PropTypes.array.isRequired,\n onReorder: PropTypes.func.isRequired,\n renderItem: PropTypes.func.isRequired,\n idKey: PropTypes.string,\n updateOrderKey: PropTypes.string\n};\n\nexport default DragNDropList;\n"],"names":["root","factory","exports","module","define","amd","this","require","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","__webpack_modules__","n","getter","__esModule","d","a","definition","key","o","Object","defineProperty","enumerable","get","obj","prop","prototype","hasOwnProperty","call","r","Symbol","toStringTag","value","SortableItem","id","item","index","renderItem","attributes","listeners","setNodeRef","transform","transition","isDragging","useSortable","React","Box","ref","style","CSS","Transform","toString","filter","Boolean","join","zIndex","position","sx","background","dragHandleProps","_objectSpread","propTypes","PropTypes","isRequired","useDndKitReorder","items","getItemId","onReorder","updateOrderKey","orderOffset","sensors","useSensors","useSensor","PointerSensor","KeyboardSensor","coordinateGetter","sortableKeyboardCoordinates","collisionDetection","closestCenter","handleDragEnd","active","over","oldIndex","findIndex","i","newIndex","reordered","arrayMove","map","idx","idKey","String","DragNDropList","DndContext","onDragEnd","SortableContext","strategy","verticalListSortingStrategy","width"],"sourceRoot":""}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("openstack-uicore-foundation",[],t):"object"==typeof exports?exports["openstack-uicore-foundation"]=t():e["openstack-uicore-foundation"]=t()}(this,(()=>(()=>{"use strict";var e={6611:(e,t,r)=>{r.d(t,{A:()=>g});var n=r(1116),l=r.n(n),a=r(6031),o=r.n(a),i=r(2015),s=r.n(i),u=r(7994),c=r(2522),m=r(8672),d=r(6915),p=r(5480),b=r(9314),f=r(9736);function y(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function v(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?y(Object(r),!0).forEach((function(t){l()(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):y(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}const g=({rowId:e,field:t,timeZone:r,label:n="",disabled:l=!1})=>{const a=`i-${e}-c-${t.class_field}-f-${t.type_id}`,i=t.is_required??!1,y={name:a,label:n,disabled:l,required:i,slotProps:{inputLabel:{shrink:!0}},margin:"none"};switch(t.type){case"CheckBox":return s().createElement(u.default,o()({},y,{size:"small"}));case"CheckBoxList":return s().createElement(c.default,o()({},y,{size:"small",options:t.values.map((e=>({value:String(e.id),label:e.value})))}));case"RadioButtonList":return s().createElement(m.default,o()({},y,{size:"small",options:t.values.map((e=>({value:String(e.id),label:e.value})))}));case"DateTime":return s().createElement(d.default,{name:a,label:n,required:i,disabled:l,slotProps:{textField:{InputLabelProps:{shrink:!0}}}});case"Time":return s().createElement(p.default,{name:a,label:n,required:i,disabled:l,timeZone:r,slotProps:{textField:{InputLabelProps:{shrink:!0}}}});case"Quantity":return s().createElement(b.default,o()({},y,{fullWidth:!0,size:"small",type:"number",slotProps:{inputLabel:{shrink:!0},htmlInput:v({min:t.minimum_quantity},t.maximum_quantity>0?{max:t.maximum_quantity}:{})}}));case"ComboBox":return s().createElement(f.default,o()({},y,{size:"small",options:t.values.map((e=>({value:String(e.id),label:e.value})))}));case"Text":return s().createElement(b.default,o()({},y,{fullWidth:!0,size:"small"}));case"TextArea":return s().createElement(b.default,o()({},y,{fullWidth:!0,size:"small",multiline:!0,rows:3}))}}},7994:(e,t,r)=>{r.d(t,{default:()=>f});var n=r(6031),l=r.n(n),a=r(2462),o=r.n(a),i=r(2015),s=r.n(i),u=r(9825),c=r.n(u),m=r(8619),d=r(3294);const p=["name","label","margin"],b=e=>{let{name:t,label:r,margin:n="normal"}=e,a=o()(e,p);const[i,u]=(0,d.useField)({name:t,type:"checkbox"});return s().createElement(m.FormControl,{fullWidth:!0,margin:n,error:u.touched&&Boolean(u.error)},s().createElement(m.FormControlLabel,{control:s().createElement(m.Checkbox,l()({name:t},i,{checked:i.value},a)),label:r}),u.touched&&u.error&&s().createElement(m.FormHelperText,null,u.error))};b.propTypes={name:c().string.isRequired,label:c().string.isRequired};const f=b},6915:(e,t,r)=>{r.d(t,{default:()=>O});var n=r(6031),l=r.n(n),a=r(1116),o=r.n(a),i=r(2462),s=r.n(i),u=r(2015),c=r.n(u),m=r(9825),d=r.n(m);const p=require("@mui/x-date-pickers/DatePicker");var b=r(4),f=r(5643),y=r(3294);const v=["name","label","required","disabled","slotProps"];function g(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function h(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?g(Object(r),!0).forEach((function(t){o()(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):g(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}const E=e=>{let{name:t,label:r,required:n,disabled:a=!1,slotProps:o}=e,i=s()(e,v);const[u,m,d]=(0,y.useField)(t),g=n?`${r} *`:r;return c().createElement(b.LocalizationProvider,{dateAdapter:f.AdapterMoment},c().createElement(p.DatePicker,l()({value:u.value,onChange:d.setValue,slotProps:h(h({day:{sx:{fontSize:"1.2rem",fontWeight:600}},layout:{sx:{"& .MuiDayCalendar-weekDayLabel":{fontSize:"1rem"}}}},o),{},{textField:h({name:t,label:g,error:m.touched&&Boolean(m.error),helperText:m.touched&&m.error,fullWidth:!0,disabled:a,size:"small"},(null==o?void 0:o.textField)||{})}),margin:"normal"},i)))};E.propTypes={name:d().string.isRequired,label:d().string,required:d().bool,disabled:d().bool};const O=E},5654:(e,t,r)=>{r.d(t,{default:()=>_});var n=r(6031),l=r.n(n),a=r(1116),o=r.n(a),i=r(2462),s=r.n(i),u=r(2015),c=r.n(u),m=r(9825),d=r.n(m),p=r(8619),b=r(3294),f=r(9314),y=r(3209);const v=["name","label","discountType","inCents","disabled"];function g(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function h(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?g(Object(r),!0).forEach((function(t){o()(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):g(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}const E=["e","E","+","-"],O=e=>{let{name:t,label:r,discountType:n,inCents:a=!1,disabled:o=!1}=e,i=s()(e,v);const[m,d,g]=(0,b.useField)(t),[O,_]=(0,u.useState)(!1),x=null===d.initialValue?null:0,T=n===y.eM.RATE?{endAdornment:c().createElement(p.InputAdornment,{position:"end"},"%")}:{startAdornment:c().createElement(p.InputAdornment,{position:"start"},"$")},P=n===y.eM.RATE?{max:100,inputMode:"numeric",step:1}:{inputMode:"decimal",step:1};return c().createElement(f.default,l()({name:t,label:r,value:(()=>O?"":null==m.value||0===m.value?0===m.value?0:"":a?m.value/y.At:m.value)(),onChange:e=>{const t=e.target.value;if(""===t)return _(!0),void g.setValue(x);_(!1);const r=Number(t),n=a?r*y.At:r;g.setValue(n)},type:"number",disabled:o,slotProps:{input:h({},T),htmlInput:h({min:0},P)},onKeyDown:e=>{E.includes(e.key)&&(e.preventDefault(),e.stopPropagation())}},i))};O.propTypes={name:d().string.isRequired,label:d().string};const _=O},2522:(e,t,r)=>{r.d(t,{default:()=>b});var n=r(6031),l=r.n(n),a=r(2462),o=r.n(a),i=r(2015),s=r.n(i),u=r(8619),c=r(3294),m=r(6842),d=r.n(m);const p=["name","label","placeholder","options"],b=e=>{let{name:t,label:r,placeholder:n,options:a}=e,i=o()(e,p);const[m,b,f]=(0,c.useField)(t),y=n||d().translate("placeholders.select"),v=a.every((({value:e})=>{var t;return null===(t=m.value)||void 0===t?void 0:t.includes(e)}));return s().createElement(u.FormControl,{fullWidth:!0,error:b.touched&&Boolean(b.error)},r&&s().createElement(u.InputLabel,{shrink:!0,id:`${t}-label`},r),s().createElement(u.Select,l()({variant:"outlined",name:t,label:r,labelId:`${t}-label`,multiple:!0,value:m.value||[],onChange:e=>{const{value:t}=e.target;t.includes("all")?v?f.setValue([]):f.setValue(a.map((e=>e.value))):f.setValue(t)},onBlur:m.onBlur,displayEmpty:!0},i,{renderValue:e=>{if(null==e||!e.length)return s().createElement("em",null,y);if(v)return d().translate("general.all");const t=a.filter((({value:t})=>null==e?void 0:e.includes(t))).map((({label:e})=>e));return t.join(", ")}}),s().createElement(u.MenuItem,{key:"all",value:"all"},s().createElement(u.Checkbox,{checked:v}),s().createElement(u.ListItemText,{primary:d().translate("general.all")})),s().createElement(u.Divider,{sx:{m:0}}),a.map((({label:e,value:t})=>{var r;return s().createElement(u.MenuItem,{key:`ckbx-ddl-${t}`,value:t},s().createElement(u.Checkbox,{checked:null===(r=m.value)||void 0===r?void 0:r.includes(t)}),s().createElement(u.ListItemText,{primary:e}))}))))}},8672:(e,t,r)=>{r.d(t,{default:()=>b});var n=r(6031),l=r.n(n),a=r(2462),o=r.n(a),i=r(2015),s=r.n(i),u=r(8619),c=r(3294),m=r(6842),d=r.n(m);const p=["name","label","options","placeholder"],b=e=>{let{name:t,label:r,options:n,placeholder:a}=e,i=o()(e,p);const m=a||d().translate("placeholders.select"),[b,f,y]=(0,c.useField)(t);return s().createElement(u.FormControl,{fullWidth:!0,error:f.touched&&Boolean(f.error)},r&&s().createElement(u.InputLabel,{shrink:!0,id:`${t}-label`},r),s().createElement(u.Select,l()({variant:"outlined",name:t,label:r,labelId:`${t}-label`,value:b.value||"",onChange:e=>{y.setValue(e.target.value)},displayEmpty:!0},i,{renderValue:e=>{if(!e)return s().createElement("em",null,m);const t=n.find((({value:t})=>t===e));return t?t.label:""}}),n.map((({label:e,value:t})=>s().createElement(u.MenuItem,{key:`radio-ddl-${t}`,value:t},s().createElement(u.Radio,{checked:b.value===t}),s().createElement(u.ListItemText,{primary:e}))))))}},3300:(e,t,r)=>{r.d(t,{default:()=>_});var n=r(6031),l=r.n(n),a=r(1116),o=r.n(a),i=r(2462),s=r.n(i),u=r(2015),c=r.n(u),m=r(9825),d=r.n(m),p=r(8619),b=r(3294),f=r(9314),y=r(3209);const v=["name","label","inCents","inputProps"];function g(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function h(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?g(Object(r),!0).forEach((function(t){o()(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):g(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}const E=["e","E","+","-"],O=e=>{let{name:t,label:r,inCents:n=!1,inputProps:a={step:.01}}=e,o=s()(e,v);const[i,m,d]=(0,b.useField)(t),[g,O]=(0,u.useState)(!1),[_,x]=(0,u.useState)(!1),[T,P]=(0,u.useState)(""),j=()=>{if(g||null==i.value)return"";if(0===i.value)return"0";const e=n?i.value/y.At:i.value;return String(Number(e.toFixed(y.tv)))};return c().createElement(f.default,l()({name:t,label:r,type:"number",value:(()=>{if(_)return T;if(g)return"";if(null==i.value||0===i.value)return 0===i.value?0:"";const e=j(),t=e.indexOf(".");return-1===t?`${e}.00`:e.length-t-1==1?`${e}0`:e})(),onChange:e=>{const t=e.target.value;if(P(t),""===t)return O(!0),void d.setValue(0);O(!1);const r=Number(t),l=n?Math.round(r*y.At):r;d.setValue(l)},onFocus:()=>{x(!0),P(j())},onBlur:e=>{x(!1),o.onBlur&&o.onBlur(e)},slotProps:{input:{startAdornment:c().createElement(p.InputAdornment,{position:"start"},"$")}},inputProps:h({min:0,inputMode:"decimal"},a),onKeyDown:e=>{E.includes(e.key)&&(e.preventDefault(),e.stopPropagation())}},o))};O.propTypes={name:d().string.isRequired,label:d().string};const _=O},9736:(e,t,r)=>{r.d(t,{default:()=>v});var n=r(6031),l=r.n(n),a=r(2462),o=r.n(a),i=r(2015),s=r.n(i),u=r(9825),c=r.n(u),m=r(6842),d=r.n(m),p=r(8619),b=r(3294);const f=["name","label","placeholder","options","required"],y=e=>{let{name:t,label:r,placeholder:n,options:a,required:i}=e,u=o()(e,f);const[c,m]=(0,b.useField)(t),y=n||d().translate("placeholders.select");return s().createElement(p.FormControl,{fullWidth:!0,error:m.touched&&Boolean(m.error),required:i},r&&s().createElement(p.InputLabel,{shrink:!0,id:`${t}-label`},r),s().createElement(p.Select,l()({name:t,label:r,labelId:`${t}-label`,displayEmpty:!0},c,u,{renderValue:e=>{if(null==e||""===e)return s().createElement("em",null,y);const t=a.find((({value:t})=>t===e));return t?t.label:""}}),a.map((e=>s().createElement(p.MenuItem,{key:`selectop-${e.value}`,value:e.value},e.label)))),m.touched&&m.error&&s().createElement(p.FormHelperText,null,m.error))};y.propTypes={name:c().string.isRequired,options:c().array.isRequired};const v=y},4768:(e,t,r)=>{r.d(t,{default:()=>v});var n=r(6031),l=r.n(n),a=r(2462),o=r.n(a),i=r(2015),s=r.n(i),u=r(9825),c=r.n(u),m=r(8619);const d=require("@mui/icons-material/Clear");var p=r.n(d),b=r(3294);const f=["name","label","placeholder","children","isClearable"],y=e=>{let{name:t,label:r,placeholder:n,children:a,isClearable:i}=e,u=o()(e,f);const[c,d,y]=(0,b.useField)(t),v=(null==c?void 0:c.value)&&""!==c.value||Boolean(n);return s().createElement(m.FormControl,{fullWidth:!0,error:d.touched&&Boolean(d.error)},r&&s().createElement(m.InputLabel,{htmlFor:t,id:`${t}-label`,shrink:v},r),s().createElement(m.Select,l()({name:t,id:t},c,{labelId:`${t}-label`,label:r,notched:v,displayEmpty:!0,renderValue:e=>e&&""!==e?e:s().createElement("span",{style:{color:"#aaa"}},n),endAdornment:i&&c.value?s().createElement(m.InputAdornment,{position:"end",sx:{mr:2}},s().createElement(m.IconButton,{size:"small",onClick:e=>{e.stopPropagation(),y.setValue("")}},s().createElement(p(),{fontSize:"small"}))):null},u),a),d.touched&&d.error&&s().createElement(m.FormHelperText,null,d.error))};y.propTypes={name:c().string.isRequired,children:c().node.isRequired,placeholder:c().string,isClearable:c().bool};const v=y},9314:(e,t,r)=>{r.d(t,{default:()=>f});var n=r(6031),l=r.n(n),a=r(2462),o=r.n(a),i=r(2015),s=r.n(i),u=r(9825),c=r.n(u),m=r(8619),d=r(3294);const p=["name","label","maxLength","required"],b=e=>{var t;let{name:r,label:n,maxLength:a,required:i=!1}=e,u=o()(e,p);const[c,b]=(0,d.useField)(r),f=(null===(t=c.value)||void 0===t?void 0:t.length)||0;let y="";return n&&(y=i?`${n} *`:n),s().createElement(m.Box,null,s().createElement(m.TextField,l()({name:r,label:y},c,{onBlur:c.onBlur,margin:"normal",error:b.touched&&Boolean(b.error),helperText:b.touched&&b.error,slotProps:{htmlInput:{maxLength:a}}},u)),a&&s().createElement(m.Typography,{sx:{fontSize:"1.2rem",color:"#00000099",pl:2}},a-f+" characters left"))};b.propTypes={name:c().string.isRequired,label:c().string,maxLength:c().number,required:c().bool};const f=b},5480:(e,t,r)=>{r.d(t,{default:()=>O});var n=r(6031),l=r.n(n),a=r(1116),o=r.n(a),i=r(2462),s=r.n(i),u=r(2015),c=r.n(u),m=r(9825),d=r.n(m),p=r(4),b=r(5643);const f=require("@mui/x-date-pickers/TimePicker");var y=r(3294);const v=["name","label","required","minTime","maxTime","timeZone","disabled","slotProps"];function g(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function h(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?g(Object(r),!0).forEach((function(t){o()(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):g(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}const E=e=>{let{name:t,label:r,required:n,minTime:a,maxTime:o,timeZone:i,disabled:u=!1,slotProps:m}=e,d=s()(e,v);const[g,E,O]=(0,y.useField)(t),_=n?`${r} *`:r;return c().createElement(p.LocalizationProvider,{dateAdapter:b.AdapterMoment},c().createElement(f.TimePicker,l()({value:g.value,onChange:O.setValue,minTime:a,maxTime:o,timezone:i,views:["hours","minutes"],slotProps:h(h({},m),{},{textField:h({name:t,label:_,error:E.touched&&Boolean(E.error),helperText:E.touched&&E.error,size:"small",fullWidth:!0,disabled:u,sx:{"& .MuiPickersSectionList-root":{width:"100%"},"& .MuiFormHelperText-root":{marginLeft:"4px",marginRight:"4px"}}},(null==m?void 0:m.textField)||{})})},d)))};E.propTypes={name:d().string.isRequired};const O=E},3209:(e,t,r)=>{r.d(t,{At:()=>o,OP:()=>l,eM:()=>s,fJ:()=>a,gI:()=>c,iC:()=>i,q9:()=>n,tv:()=>u});const n=100n,l=2,a=0,o=100,i=1e3,s={AMOUNT:"Amount",RATE:"Rate"},u=2,c={FORM:"Form",ITEM:"Item"}},9558:(e,t,r)=>{r.d(t,{epochToMomentTimeZone:()=>a});var n=r(5812),l=r.n(n);r(8041);const a=(e,t)=>e?(e*=1e3,l()(e).tz(t)):e},8400:(e,t,r)=>{r.d(t,{currencyAmountFromCents:()=>a});var n=r(3209);const l={USD:"$",EUR:"€",GBP:"£",CAD:"C$",AUD:"A$",NZD:"NZ$",CHF:"CHF",ARS:"AR$",BRL:"R$",MXN:"MX$"};function a(e,t="USD"){let r="!ERROR";if("number"!=typeof e||!Number.isInteger(e))return console.error("ERROR - currencyAmountFromCents: cents must be an integer number"),r;try{const a=function(e){let t;if("bigint"==typeof e)t=e;else if("number"==typeof e){if(!Number.isSafeInteger(e))throw new Error("cents must be a safe integer Number (or pass BigInt/string).");t=BigInt(e)}else{if("string"!=typeof e)throw new Error("cents must be a bigint, number, or numeric string.");{const r=e.trim();if(!/^\d+$/.test(r))throw new Error("cents string must contain digits only (e.g., '1234').");t=BigInt(r)}}if(t<n.fJ)throw new Error("cents must be non-negative.");const r=t/n.q9,l=t%n.q9;return`${r.toString()}.${l.toString().padStart(n.OP,"0")}`}(e);r=`${l[t]??"$"}${a}`}catch(e){console.error(`ERROR - currencyAmountFromCents: ${e}`)}return r}},1116:e=>{e.exports=require("@babel/runtime/helpers/defineProperty")},6031:e=>{e.exports=require("@babel/runtime/helpers/extends")},2462:e=>{e.exports=require("@babel/runtime/helpers/objectWithoutProperties")},1519:e=>{e.exports=require("@mui/icons-material/Error")},1101:e=>{e.exports=require("@mui/icons-material/InfoOutlined")},8587:e=>{e.exports=require("@mui/icons-material/KeyboardArrowDown")},8619:e=>{e.exports=require("@mui/material")},5643:e=>{e.exports=require("@mui/x-date-pickers/AdapterMoment")},4:e=>{e.exports=require("@mui/x-date-pickers/LocalizationProvider")},3294:e=>{e.exports=require("formik")},6842:e=>{e.exports=require("i18n-react/dist/i18n-react")},5812:e=>{e.exports=require("moment-timezone")},9825:e=>{e.exports=require("prop-types")},2015:e=>{e.exports=require("react")},8041:e=>{e.exports=require("urijs")}},t={};function r(n){var l=t[n];if(void 0!==l)return l.exports;var a=t[n]={exports:{}};return e[n](a,a.exports,r),a.exports}(()=>{r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t}})(),(()=>{r.d=(e,t)=>{for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})}})(),(()=>{r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t)})(),(()=>{r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}})();var n={};r.r(n),r.d(n,{ExpandedRowContent:()=>F,GlobalQuantityField:()=>w,ItemTableField:()=>S.A,UnderlyingAlertNote:()=>R,default:()=>W,getCurrentApplicableRate:()=>_,isItemAvailable:()=>x});var l=r(1116),a=r.n(l),o=r(2015),i=r.n(o),s=r(8619),u=r(8587),c=r.n(u);const m=require("@mui/icons-material/KeyboardArrowUp");var d=r.n(m),p=r(1101),b=r.n(p),f=r(6842),y=r.n(f),v=r(8400),g=r(3209),h=r(3294),E=r(9314),O=r(9558);const _=(e,t)=>{var r,n,l;const a=(0,O.epochToMomentTimeZone)(Math.floor(new Date/g.iC),e),o=null===(r=(0,O.epochToMomentTimeZone)(t.early_bird_end_date,e))||void 0===r?void 0:r.endOf("day"),i=null===(n=(0,O.epochToMomentTimeZone)(t.onsite_price_start_date,e))||void 0===n?void 0:n.startOf("day"),s=null===(l=(0,O.epochToMomentTimeZone)(t.onsite_price_end_date,e))||void 0===l?void 0:l.endOf("day");return o&&a.isSameOrBefore(o)?"early_bird":i&&a.isSameOrBefore(i)?"standard":!s||a.isSameOrBefore(s)?"onsite":"expired"},x=(e,t)=>{var r;return null!=(null===(r=e.rates)||void 0===r?void 0:r[t])},T=e=>e.some((e=>"Quantity"===e.type));function P(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function j(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?P(Object(r),!0).forEach((function(t){a()(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):P(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}const w=({row:e,extraColumns:t,value:r,disabled:n=!1})=>{const l=`i-${e.form_item_id}-c-global-f-quantity`,[a,s,u]=(0,h.useField)(l),c=T(t);(0,o.useEffect)((()=>{u.setValue(r)}),[r]);return i().createElement(E.default,{name:l,fullWidth:!0,size:"small",type:"number",disabled:n,onChange:t=>{const r=parseInt(t.target.value,10);if(isNaN(r))return t.target.value=0,void u.setValue(0);const n=e.quantity_limit_per_sponsor,l=n?Math.min(Math.max(r,0),n):Math.max(r,0);t.target.value=l,u.setValue(l)},slotProps:{htmlInput:j({readOnly:c,min:0},e.quantity_limit_per_sponsor?{max:e.quantity_limit_per_sponsor}:{})},sx:c?{"& .MuiInputBase-root":{backgroundColor:"action.disabledBackground",color:"text.disabled",pointerEvents:"none"},"& .MuiOutlinedInput-notchedOutline":{borderColor:"action.disabled"}}:{}})};var C=r(4768),k=r(3300),$=r(5654),q=r(6031),A=r.n(q),S=r(6611);const I=({rowId:e,disabled:t})=>{const r=`i-${e}-c-global-f-notes`,[n]=(0,h.useField)(r);return i().createElement(s.TextField,A()({},n,{value:n.value??"",label:y().translate("sponsor_edit_form.notes"),fullWidth:!0,size:"small",multiline:!0,rows:3,disabled:t,slotProps:{inputLabel:{shrink:!0}},margin:"none"}))},F=({row:e,extraColumns:t,timeZone:r,disabled:n})=>{const l=(e.meta_fields??[]).filter((e=>e.class_field===g.gI.ITEM));return i().createElement(s.Box,{sx:{p:2,backgroundColor:"grey.50"}},i().createElement(s.Grid2,{container:!0,spacing:3},t.map((t=>i().createElement(s.Grid2,{key:`col-${t.type_id}`,size:3},i().createElement(S.A,{field:t,rowId:e.form_item_id,timeZone:r,disabled:n,label:t.name})))),l.map((t=>i().createElement(s.Grid2,{key:`item-${t.type_id}`,size:3},i().createElement(S.A,{field:t,rowId:e.form_item_id,timeZone:r,disabled:n,label:t.name})))),i().createElement(s.Grid2,{size:3},i().createElement(I,{rowId:e.form_item_id,disabled:n}))))};var D=r(1519),M=r.n(D);const R=({showAdditionalItems:e})=>e?i().createElement(s.Typography,{variant:"body2",component:"p",sx:{color:"error.warning",fontSize:"0.8rem"}},i().createElement(M(),{color:"error",sx:{fontSize:"1rem",top:"0.2rem",position:"relative"}})," ",y().translate("sponsor_edit_form.additional_info")):null;function B(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function z(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?B(Object(r),!0).forEach((function(t){a()(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):B(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}const W=({data:e,currentApplicableRate:t,timeZone:r,values:n,touched:l,errors:a})=>{const u=JSON.stringify(n),m=(0,o.useMemo)((()=>{var t,r;return(null===(t=e[0])||void 0===t||null===(r=t.meta_fields)||void 0===r?void 0:r.filter((e=>e.class_field===g.gI.FORM)))||[]}),[e]),[p,f]=(0,o.useState)((()=>e.reduce(((e,t)=>(T(m)&&(e[t.form_item_id]=!0),e)),{}))),h=(0,o.useRef)(new Set);(0,o.useEffect)((()=>{if(!a||0===Object.keys(a).length)return void(h.current=new Set);const t=new Set,r={};e.forEach((e=>{const n=(e.meta_fields??[]).filter((e=>e.class_field===g.gI.ITEM)),o=new Set([...m.map((t=>`i-${e.form_item_id}-c-${t.class_field}-f-${t.type_id}`)),...n.map((t=>`i-${e.form_item_id}-c-${t.class_field}-f-${t.type_id}`)),`i-${e.form_item_id}-c-global-f-notes`]);Object.keys(a).some((e=>o.has(e)&&Boolean(null==l?void 0:l[e])))&&(t.add(e.form_item_id),h.current.has(e.form_item_id)||(r[e.form_item_id]=!0))})),h.current=t,Object.keys(r).length>0&&f((e=>z(z({},e),r)))}),[e,m,a,l]);const E=e=>{f((t=>z(z({},t),{},{[e]:!t[e]})))},O=e=>{if((e.meta_fields??[]).filter((e=>e.is_required)).some((t=>{const r=n[`i-${e.form_item_id}-c-${t.class_field}-f-${t.type_id}`];return"CheckBoxList"===t.type?!Array.isArray(r)||0===r.length:"CheckBox"===t.type?!0!==r:null==r||""===r})))return"error";const t=`i-${e.form_item_id}-`;return Object.keys(l??{}).some((e=>e.startsWith(t)&&l[e]))?"success":"warning"},_=(0,o.useCallback)((e=>{const t=m.filter((e=>"Quantity"===e.type)),r=n[`i-${e.form_item_id}-c-global-f-quantity`],l=t.reduce(((t,r)=>(t>0?t:1)*((null==n?void 0:n[`i-${e.form_item_id}-c-${r.class_field}-f-${r.type_id}`])||0)),0);return t.length>0?l:r}),[u,m]),P=e=>{const r=n[`i-${e.form_item_id}-c-global-f-quantity`]||_(e);if("expired"===t)return 0;const l=n[`i-${e.form_item_id}-c-global-f-custom_rate`]||e.rates[t];return null==l||null==r?0:r*l},j=e=>null==e?y().translate("general.n_a"):(0,v.currencyAmountFromCents)(e),q=(0,o.useMemo)((()=>{const t=e.reduce(((e,t)=>e+P(t)),0),r=n.discount_type===g.eM.AMOUNT?n.discount_amount:t*(n.discount_amount/g.At/g.At);return t-Math.round(r)}),[e,u,t]);return i().createElement(s.TableContainer,{component:s.Paper},i().createElement(s.Table,null,i().createElement(s.TableHead,null,i().createElement(s.TableRow,{sx:{backgroundColor:"#EAEDF4"}},i().createElement(s.TableCell,{sx:{width:40}}),i().createElement(s.TableCell,{sx:{minWidth:40}},y().translate("sponsor_edit_form.code")),i().createElement(s.TableCell,{sx:{minWidth:120}},y().translate("sponsor_edit_form.description")),i().createElement(s.TableCell,{sx:{minWidth:120}},y().translate("sponsor_edit_form.custom_rate")),i().createElement(s.TableCell,{sx:{minWidth:40}},y().translate("sponsor_edit_form.early_bird_rate")),i().createElement(s.TableCell,{sx:{minWidth:40}},y().translate("sponsor_edit_form.standard_rate")),i().createElement(s.TableCell,{sx:{minWidth:40}},y().translate("sponsor_edit_form.onsite_rate")),i().createElement(s.TableCell,{sx:{minWidth:120}},y().translate("sponsor_edit_form.qty")),i().createElement(s.TableCell,{sx:{minWidth:120}},y().translate("sponsor_edit_form.total")),i().createElement(s.TableCell,{sx:{minWidth:40},align:"center"},y().translate("sponsor_edit_form.details")))),i().createElement(s.TableBody,null,e.map((e=>{const n=!x(e,t),l=!!p[e.form_item_id];return i().createElement(i().Fragment,{key:`fragment-${e.form_item_id}`},i().createElement(s.TableRow,null,i().createElement(s.TableCell,null,i().createElement(s.IconButton,{size:"small","aria-label":"Toggle row details",onClick:()=>E(e.form_item_id)},l?i().createElement(d(),null):i().createElement(c(),null))),i().createElement(s.TableCell,null,e.code),i().createElement(s.TableCell,null,e.name),i().createElement(s.TableCell,null,i().createElement(k.default,{name:`i-${e.form_item_id}-c-global-f-custom_rate`,fullWidth:!0,label:"",size:"small",inCents:!0,inputProps:{step:.01}})),i().createElement(s.TableCell,{sx:{opacity:"early_bird"===t?1:"38%"}},j(e.rates.early_bird)),i().createElement(s.TableCell,{sx:{opacity:"standard"===t?1:"38%"}},j(e.rates.standard)),i().createElement(s.TableCell,{sx:{opacity:"onsite"===t?1:"38%"}},j(e.rates.onsite)),i().createElement(s.TableCell,null,i().createElement(w,{row:e,extraColumns:m,value:_(e)})),i().createElement(s.TableCell,null,(0,v.currencyAmountFromCents)(P(e))),i().createElement(s.TableCell,{align:"center",sx:{verticalAlign:"middle"}},i().createElement(s.IconButton,{size:"small","aria-label":"Toggle row details",onClick:()=>E(e.form_item_id)},i().createElement(b(),{color:O(e)})))),i().createElement(s.TableRow,null,i().createElement(s.TableCell,{colSpan:10,sx:{padding:0}},i().createElement(s.Collapse,{in:l,timeout:"auto"},i().createElement(F,{row:e,extraColumns:m,timeZone:r,disabled:n})))))})),i().createElement(s.TableRow,null,i().createElement(s.TableCell,{sx:{fontWeight:500}},y().translate("sponsor_edit_form.discount")),new Array(6).fill(0).map(((e,t)=>i().createElement(s.TableCell,{key:`${t}-discountcell`}))),i().createElement(s.TableCell,null,i().createElement(C.default,{name:"discount_type",label:"",size:"small",sx:{width:110}},Object.values(g.eM).map((e=>i().createElement(s.MenuItem,{key:`ddopt-${e}`,value:e},e))))),i().createElement(s.TableCell,null,i().createElement($.default,{name:"discount_amount",discountType:n.discount_type,label:"",size:"small",margin:"none",inCents:!0,sx:{width:110}})),i().createElement(s.TableCell,null)),i().createElement(s.TableRow,null,i().createElement(s.TableCell,{sx:{fontWeight:500}},y().translate("sponsor_edit_form.total_on_caps")),new Array(7).fill(0).map(((e,t)=>i().createElement(s.TableCell,{key:`${t}-totalcell`}))),i().createElement(s.TableCell,{sx:{fontWeight:500}},(0,v.currencyAmountFromCents)(q)),i().createElement(s.TableCell,null)))))};return n})()));
|
|
1
|
+
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("openstack-uicore-foundation",[],t):"object"==typeof exports?exports["openstack-uicore-foundation"]=t():e["openstack-uicore-foundation"]=t()}(this,(()=>(()=>{"use strict";var e={6611:(e,t,r)=>{r.d(t,{A:()=>g});var n=r(1116),l=r.n(n),a=r(6031),o=r.n(a),i=r(2015),s=r.n(i),u=r(7994),c=r(2522),m=r(8672),d=r(6915),p=r(5480),b=r(9314),f=r(9736);function y(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function v(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?y(Object(r),!0).forEach((function(t){l()(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):y(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}const g=({rowId:e,field:t,timeZone:r,label:n="",disabled:l=!1})=>{const a=`i-${e}-c-${t.class_field}-f-${t.type_id}`,i=t.is_required??!1,y={name:a,label:n,disabled:l,required:i,slotProps:{inputLabel:{shrink:!0}},margin:"none"};switch(t.type){case"CheckBox":return s().createElement(u.default,o()({},y,{size:"small"}));case"CheckBoxList":return s().createElement(c.default,o()({},y,{size:"small",options:t.values.map((e=>({value:String(e.id),label:e.value})))}));case"RadioButtonList":return s().createElement(m.default,o()({},y,{size:"small",options:t.values.map((e=>({value:String(e.id),label:e.value})))}));case"DateTime":return s().createElement(d.default,{name:a,label:n,required:i,disabled:l,slotProps:{textField:{InputLabelProps:{shrink:!0}}}});case"Time":return s().createElement(p.default,{name:a,label:n,required:i,disabled:l,timeZone:r,slotProps:{textField:{InputLabelProps:{shrink:!0}}}});case"Quantity":return s().createElement(b.default,o()({},y,{fullWidth:!0,size:"small",type:"number",slotProps:{inputLabel:{shrink:!0},htmlInput:v({min:t.minimum_quantity},t.maximum_quantity>0?{max:t.maximum_quantity}:{})}}));case"ComboBox":return s().createElement(f.default,o()({},y,{size:"small",options:t.values.map((e=>({value:String(e.id),label:e.value})))}));case"Text":return s().createElement(b.default,o()({},y,{fullWidth:!0,size:"small"}));case"TextArea":return s().createElement(b.default,o()({},y,{fullWidth:!0,size:"small",multiline:!0,rows:3}))}}},7994:(e,t,r)=>{r.d(t,{default:()=>f});var n=r(6031),l=r.n(n),a=r(2462),o=r.n(a),i=r(2015),s=r.n(i),u=r(9825),c=r.n(u),m=r(8619),d=r(3294);const p=["name","label","margin"],b=e=>{let{name:t,label:r,margin:n="normal"}=e,a=o()(e,p);const[i,u]=(0,d.useField)({name:t,type:"checkbox"});return s().createElement(m.FormControl,{fullWidth:!0,margin:n,error:u.touched&&Boolean(u.error)},s().createElement(m.FormControlLabel,{control:s().createElement(m.Checkbox,l()({name:t},i,{checked:i.value},a)),label:r}),u.touched&&u.error&&s().createElement(m.FormHelperText,null,u.error))};b.propTypes={name:c().string.isRequired,label:c().string.isRequired};const f=b},6915:(e,t,r)=>{r.d(t,{default:()=>O});var n=r(6031),l=r.n(n),a=r(1116),o=r.n(a),i=r(2462),s=r.n(i),u=r(2015),c=r.n(u),m=r(9825),d=r.n(m);const p=require("@mui/x-date-pickers/DatePicker");var b=r(4),f=r(5643),y=r(3294);const v=["name","label","required","disabled","slotProps"];function g(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function h(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?g(Object(r),!0).forEach((function(t){o()(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):g(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}const E=e=>{let{name:t,label:r,required:n,disabled:a=!1,slotProps:o}=e,i=s()(e,v);const[u,m,d]=(0,y.useField)(t),g=n?`${r} *`:r;return c().createElement(b.LocalizationProvider,{dateAdapter:f.AdapterMoment},c().createElement(p.DatePicker,l()({value:u.value,onChange:d.setValue,slotProps:h(h({day:{sx:{fontSize:"1.2rem",fontWeight:600}},layout:{sx:{"& .MuiDayCalendar-weekDayLabel":{fontSize:"1rem"}}}},o),{},{textField:h({name:t,label:g,error:m.touched&&Boolean(m.error),helperText:m.touched&&m.error,fullWidth:!0,disabled:a,size:"small"},(null==o?void 0:o.textField)||{})}),margin:"normal"},i)))};E.propTypes={name:d().string.isRequired,label:d().string,required:d().bool,disabled:d().bool};const O=E},5654:(e,t,r)=>{r.d(t,{default:()=>_});var n=r(6031),l=r.n(n),a=r(1116),o=r.n(a),i=r(2462),s=r.n(i),u=r(2015),c=r.n(u),m=r(9825),d=r.n(m),p=r(8619),b=r(3294),f=r(9314),y=r(3209);const v=["name","label","discountType","inCents","disabled"];function g(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function h(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?g(Object(r),!0).forEach((function(t){o()(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):g(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}const E=["e","E","+","-"],O=e=>{let{name:t,label:r,discountType:n,inCents:a=!1,disabled:o=!1}=e,i=s()(e,v);const[m,d,g]=(0,b.useField)(t),[O,_]=(0,u.useState)(!1),x=null===d.initialValue?null:0,T=n===y.eM.RATE?{endAdornment:c().createElement(p.InputAdornment,{position:"end"},"%")}:{startAdornment:c().createElement(p.InputAdornment,{position:"start"},"$")},P=n===y.eM.RATE?{max:100,inputMode:"numeric",step:1}:{inputMode:"decimal",step:1};return c().createElement(f.default,l()({name:t,label:r,value:(()=>O?"":null==m.value||0===m.value?0===m.value?0:"":a?m.value/y.At:m.value)(),onChange:e=>{const t=e.target.value;if(""===t)return _(!0),void g.setValue(x);_(!1);const r=Number(t),n=a?r*y.At:r;g.setValue(n)},type:"number",disabled:o,slotProps:{input:h({},T),htmlInput:h({min:0},P)},onKeyDown:e=>{E.includes(e.key)&&(e.preventDefault(),e.stopPropagation())}},i))};O.propTypes={name:d().string.isRequired,label:d().string};const _=O},2522:(e,t,r)=>{r.d(t,{default:()=>b});var n=r(6031),l=r.n(n),a=r(2462),o=r.n(a),i=r(2015),s=r.n(i),u=r(8619),c=r(3294),m=r(6842),d=r.n(m);const p=["name","label","placeholder","options"],b=e=>{let{name:t,label:r,placeholder:n,options:a}=e,i=o()(e,p);const[m,b,f]=(0,c.useField)(t),y=n||d().translate("placeholders.select"),v=a.every((({value:e})=>{var t;return null===(t=m.value)||void 0===t?void 0:t.includes(e)}));return s().createElement(u.FormControl,{fullWidth:!0,error:b.touched&&Boolean(b.error)},r&&s().createElement(u.InputLabel,{shrink:!0,id:`${t}-label`},r),s().createElement(u.Select,l()({variant:"outlined",name:t,label:r,labelId:`${t}-label`,multiple:!0,value:m.value||[],onChange:e=>{const{value:t}=e.target;t.includes("all")?v?f.setValue([]):f.setValue(a.map((e=>e.value))):f.setValue(t)},onBlur:m.onBlur,displayEmpty:!0},i,{renderValue:e=>{if(null==e||!e.length)return s().createElement("em",null,y);if(v)return d().translate("general.all");const t=a.filter((({value:t})=>null==e?void 0:e.includes(t))).map((({label:e})=>e));return t.join(", ")}}),s().createElement(u.MenuItem,{key:"all",value:"all"},s().createElement(u.Checkbox,{checked:v}),s().createElement(u.ListItemText,{primary:d().translate("general.all")})),s().createElement(u.Divider,{sx:{m:0}}),a.map((({label:e,value:t})=>{var r;return s().createElement(u.MenuItem,{key:`ckbx-ddl-${t}`,value:t},s().createElement(u.Checkbox,{checked:null===(r=m.value)||void 0===r?void 0:r.includes(t)}),s().createElement(u.ListItemText,{primary:e}))}))))}},8672:(e,t,r)=>{r.d(t,{default:()=>b});var n=r(6031),l=r.n(n),a=r(2462),o=r.n(a),i=r(2015),s=r.n(i),u=r(8619),c=r(3294),m=r(6842),d=r.n(m);const p=["name","label","options","placeholder"],b=e=>{let{name:t,label:r,options:n,placeholder:a}=e,i=o()(e,p);const m=a||d().translate("placeholders.select"),[b,f,y]=(0,c.useField)(t);return s().createElement(u.FormControl,{fullWidth:!0,error:f.touched&&Boolean(f.error)},r&&s().createElement(u.InputLabel,{shrink:!0,id:`${t}-label`},r),s().createElement(u.Select,l()({variant:"outlined",name:t,label:r,labelId:`${t}-label`,value:b.value||"",onChange:e=>{y.setValue(e.target.value)},displayEmpty:!0},i,{renderValue:e=>{if(!e)return s().createElement("em",null,m);const t=n.find((({value:t})=>t===e));return t?t.label:""}}),n.map((({label:e,value:t})=>s().createElement(u.MenuItem,{key:`radio-ddl-${t}`,value:t},s().createElement(u.Radio,{checked:b.value===t}),s().createElement(u.ListItemText,{primary:e}))))))}},3300:(e,t,r)=>{r.d(t,{default:()=>_});var n=r(6031),l=r.n(n),a=r(1116),o=r.n(a),i=r(2462),s=r.n(i),u=r(2015),c=r.n(u),m=r(9825),d=r.n(m),p=r(8619),b=r(3294),f=r(9314),y=r(3209);const v=["name","label","inCents","inputProps"];function g(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function h(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?g(Object(r),!0).forEach((function(t){o()(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):g(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}const E=["e","E","+","-"],O=e=>{let{name:t,label:r,inCents:n=!1,inputProps:a={step:.01}}=e,o=s()(e,v);const[i,m,d]=(0,b.useField)(t),[g,O]=(0,u.useState)(!1),[_,x]=(0,u.useState)(!1),[T,P]=(0,u.useState)(""),j=()=>{if(g||null==i.value)return"";if(0===i.value)return"0";const e=n?i.value/y.At:i.value;return String(Number(e.toFixed(y.tv)))};return c().createElement(f.default,l()({name:t,label:r,type:"number",value:(()=>{if(_)return T;if(g)return"";if(null==i.value||0===i.value)return 0===i.value?0:"";const e=j(),t=e.indexOf(".");return-1===t?`${e}.00`:e.length-t-1==1?`${e}0`:e})(),onChange:e=>{const t=e.target.value;if(P(t),""===t)return O(!0),void d.setValue(0);O(!1);const r=Number(t),l=n?Math.round(r*y.At):r;d.setValue(l)},onFocus:()=>{x(!0),P(j())},onBlur:e=>{x(!1),o.onBlur&&o.onBlur(e)},slotProps:{input:{startAdornment:c().createElement(p.InputAdornment,{position:"start"},"$")}},inputProps:h({min:0,inputMode:"decimal"},a),onKeyDown:e=>{E.includes(e.key)&&(e.preventDefault(),e.stopPropagation())}},o))};O.propTypes={name:d().string.isRequired,label:d().string};const _=O},9736:(e,t,r)=>{r.d(t,{default:()=>v});var n=r(6031),l=r.n(n),a=r(2462),o=r.n(a),i=r(2015),s=r.n(i),u=r(9825),c=r.n(u),m=r(6842),d=r.n(m),p=r(8619),b=r(3294);const f=["name","label","placeholder","options","required"],y=e=>{let{name:t,label:r,placeholder:n,options:a,required:i}=e,u=o()(e,f);const[c,m]=(0,b.useField)(t),y=n||d().translate("placeholders.select");return s().createElement(p.FormControl,{fullWidth:!0,error:m.touched&&Boolean(m.error),required:i},r&&s().createElement(p.InputLabel,{shrink:!0,id:`${t}-label`},r),s().createElement(p.Select,l()({name:t,label:r,labelId:`${t}-label`,displayEmpty:!0},c,u,{renderValue:e=>{if(null==e||""===e)return s().createElement("em",null,y);const t=a.find((({value:t})=>t===e));return t?t.label:""}}),a.map((e=>s().createElement(p.MenuItem,{key:`selectop-${e.value}`,value:e.value},e.label)))),m.touched&&m.error&&s().createElement(p.FormHelperText,null,m.error))};y.propTypes={name:c().string.isRequired,options:c().array.isRequired};const v=y},4768:(e,t,r)=>{r.d(t,{default:()=>v});var n=r(6031),l=r.n(n),a=r(2462),o=r.n(a),i=r(2015),s=r.n(i),u=r(9825),c=r.n(u),m=r(8619);const d=require("@mui/icons-material/Clear");var p=r.n(d),b=r(3294);const f=["name","label","placeholder","children","isClearable"],y=e=>{let{name:t,label:r,placeholder:n,children:a,isClearable:i}=e,u=o()(e,f);const[c,d,y]=(0,b.useField)(t),v=(null==c?void 0:c.value)&&""!==c.value||Boolean(n);return s().createElement(m.FormControl,{fullWidth:!0,error:d.touched&&Boolean(d.error)},r&&s().createElement(m.InputLabel,{htmlFor:t,id:`${t}-label`,shrink:v},r),s().createElement(m.Select,l()({name:t,id:t},c,{labelId:`${t}-label`,label:r,notched:v,displayEmpty:!0,renderValue:e=>e&&""!==e?e:s().createElement("span",{style:{color:"#aaa"}},n),endAdornment:i&&c.value?s().createElement(m.InputAdornment,{position:"end",sx:{mr:2}},s().createElement(m.IconButton,{size:"small",onClick:e=>{e.stopPropagation(),y.setValue("")}},s().createElement(p(),{fontSize:"small"}))):null},u),a),d.touched&&d.error&&s().createElement(m.FormHelperText,null,d.error))};y.propTypes={name:c().string.isRequired,children:c().node.isRequired,placeholder:c().string,isClearable:c().bool};const v=y},9314:(e,t,r)=>{r.d(t,{default:()=>f});var n=r(6031),l=r.n(n),a=r(2462),o=r.n(a),i=r(2015),s=r.n(i),u=r(9825),c=r.n(u),m=r(8619),d=r(3294);const p=["name","label","maxLength","required"],b=e=>{var t;let{name:r,label:n,maxLength:a,required:i=!1}=e,u=o()(e,p);const[c,b]=(0,d.useField)(r),f=(null===(t=c.value)||void 0===t?void 0:t.length)||0;let y="";return n&&(y=i?`${n} *`:n),s().createElement(m.Box,null,s().createElement(m.TextField,l()({name:r,label:y},c,{onBlur:c.onBlur,margin:"normal",error:b.touched&&Boolean(b.error),helperText:b.touched&&b.error,slotProps:{htmlInput:{maxLength:a}}},u)),a&&s().createElement(m.Typography,{sx:{fontSize:"1.2rem",color:"#00000099",pl:2}},a-f+" characters left"))};b.propTypes={name:c().string.isRequired,label:c().string,maxLength:c().number,required:c().bool};const f=b},5480:(e,t,r)=>{r.d(t,{default:()=>O});var n=r(6031),l=r.n(n),a=r(1116),o=r.n(a),i=r(2462),s=r.n(i),u=r(2015),c=r.n(u),m=r(9825),d=r.n(m),p=r(4),b=r(5643);const f=require("@mui/x-date-pickers/TimePicker");var y=r(3294);const v=["name","label","required","minTime","maxTime","timeZone","disabled","slotProps"];function g(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function h(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?g(Object(r),!0).forEach((function(t){o()(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):g(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}const E=e=>{let{name:t,label:r,required:n,minTime:a,maxTime:o,timeZone:i,disabled:u=!1,slotProps:m}=e,d=s()(e,v);const[g,E,O]=(0,y.useField)(t),_=n?`${r} *`:r;return c().createElement(p.LocalizationProvider,{dateAdapter:b.AdapterMoment},c().createElement(f.TimePicker,l()({value:g.value,onChange:O.setValue,minTime:a,maxTime:o,timezone:i,views:["hours","minutes"],slotProps:h(h({},m),{},{textField:h({name:t,label:_,error:E.touched&&Boolean(E.error),helperText:E.touched&&E.error,size:"small",fullWidth:!0,disabled:u,sx:{"& .MuiPickersSectionList-root":{width:"100%"},"& .MuiFormHelperText-root":{marginLeft:"4px",marginRight:"4px"}}},(null==m?void 0:m.textField)||{})})},d)))};E.propTypes={name:d().string.isRequired};const O=E},3209:(e,t,r)=>{r.d(t,{At:()=>o,OP:()=>l,eM:()=>s,fJ:()=>a,gI:()=>c,iC:()=>i,q9:()=>n,tv:()=>u});const n=100n,l=2,a=0,o=100,i=1e3,s={AMOUNT:"Amount",RATE:"Rate"},u=2,c={FORM:"Form",ITEM:"Item"}},9558:(e,t,r)=>{r.d(t,{epochToMomentTimeZone:()=>a});var n=r(5812),l=r.n(n);r(8041);const a=(e,t)=>e?(e*=1e3,l()(e).tz(t)):e},8400:(e,t,r)=>{r.d(t,{currencyAmountFromCents:()=>a});var n=r(3209);const l={USD:"$",EUR:"€",GBP:"£",CAD:"C$",AUD:"A$",NZD:"NZ$",CHF:"CHF",ARS:"AR$",BRL:"R$",MXN:"MX$"};function a(e,t="USD"){let r="!ERROR";if("number"!=typeof e||!Number.isInteger(e))return console.error("ERROR - currencyAmountFromCents: cents must be an integer number"),r;try{const a=function(e){let t;if("bigint"==typeof e)t=e;else if("number"==typeof e){if(!Number.isSafeInteger(e))throw new Error("cents must be a safe integer Number (or pass BigInt/string).");t=BigInt(e)}else{if("string"!=typeof e)throw new Error("cents must be a bigint, number, or numeric string.");{const r=e.trim();if(!/^\d+$/.test(r))throw new Error("cents string must contain digits only (e.g., '1234').");t=BigInt(r)}}if(t<n.fJ)throw new Error("cents must be non-negative.");const r=t/n.q9,l=t%n.q9;return`${r.toString()}.${l.toString().padStart(n.OP,"0")}`}(e);r=`${l[t]??"$"}${a}`}catch(e){console.error(`ERROR - currencyAmountFromCents: ${e}`)}return r}},1116:e=>{e.exports=require("@babel/runtime/helpers/defineProperty")},6031:e=>{e.exports=require("@babel/runtime/helpers/extends")},2462:e=>{e.exports=require("@babel/runtime/helpers/objectWithoutProperties")},1519:e=>{e.exports=require("@mui/icons-material/Error")},1101:e=>{e.exports=require("@mui/icons-material/InfoOutlined")},8587:e=>{e.exports=require("@mui/icons-material/KeyboardArrowDown")},8619:e=>{e.exports=require("@mui/material")},5643:e=>{e.exports=require("@mui/x-date-pickers/AdapterMoment")},4:e=>{e.exports=require("@mui/x-date-pickers/LocalizationProvider")},3294:e=>{e.exports=require("formik")},6842:e=>{e.exports=require("i18n-react/dist/i18n-react")},5812:e=>{e.exports=require("moment-timezone")},9825:e=>{e.exports=require("prop-types")},2015:e=>{e.exports=require("react")},8041:e=>{e.exports=require("urijs")}},t={};function r(n){var l=t[n];if(void 0!==l)return l.exports;var a=t[n]={exports:{}};return e[n](a,a.exports,r),a.exports}(()=>{r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t}})(),(()=>{r.d=(e,t)=>{for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})}})(),(()=>{r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t)})(),(()=>{r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}})();var n={};r.r(n),r.d(n,{ExpandedRowContent:()=>F,GlobalQuantityField:()=>w,ItemTableField:()=>S.A,UnderlyingAlertNote:()=>R,default:()=>W,getCurrentApplicableRate:()=>_,isItemAvailable:()=>x});var l=r(1116),a=r.n(l),o=r(2015),i=r.n(o),s=r(8619),u=r(8587),c=r.n(u);const m=require("@mui/icons-material/KeyboardArrowUp");var d=r.n(m),p=r(1101),b=r.n(p),f=r(6842),y=r.n(f),v=r(8400),g=r(3209),h=r(3294),E=r(9314),O=r(9558);const _=(e,t)=>{var r,n,l;const a=(0,O.epochToMomentTimeZone)(Math.floor(new Date/g.iC),e),o=null===(r=(0,O.epochToMomentTimeZone)(t.early_bird_end_date,e))||void 0===r?void 0:r.endOf("day"),i=null===(n=(0,O.epochToMomentTimeZone)(t.onsite_price_start_date,e))||void 0===n?void 0:n.startOf("day"),s=null===(l=(0,O.epochToMomentTimeZone)(t.onsite_price_end_date,e))||void 0===l?void 0:l.endOf("day");return o&&a.isSameOrBefore(o)?"early_bird":i&&a.isSameOrBefore(i)?"standard":!s||a.isSameOrBefore(s)?"onsite":"expired"},x=(e,t)=>{var r;return null!=(null===(r=e.rates)||void 0===r?void 0:r[t])},T=e=>e.some((e=>"Quantity"===e.type));function P(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function j(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?P(Object(r),!0).forEach((function(t){a()(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):P(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}const w=({row:e,extraColumns:t,value:r,disabled:n=!1})=>{const l=`i-${e.form_item_id}-c-global-f-quantity`,[a,s,u]=(0,h.useField)(l),c=T(t);(0,o.useEffect)((()=>{u.setValue(r)}),[r]);return i().createElement(E.default,{name:l,fullWidth:!0,size:"small",type:"number",disabled:n,onChange:t=>{const r=parseInt(t.target.value,10);if(isNaN(r))return t.target.value=0,void u.setValue(0);const n=e.quantity_limit_per_sponsor,l=n?Math.min(Math.max(r,0),n):Math.max(r,0);t.target.value=l,u.setValue(l)},slotProps:{htmlInput:j({readOnly:c,min:0},e.quantity_limit_per_sponsor?{max:e.quantity_limit_per_sponsor}:{})},sx:c?{"& .MuiInputBase-root":{backgroundColor:"action.disabledBackground",color:"text.disabled",pointerEvents:"none"},"& .MuiOutlinedInput-notchedOutline":{borderColor:"action.disabled"}}:{}})};var C=r(4768),k=r(3300),$=r(5654),q=r(6031),A=r.n(q),S=r(6611);const I=({rowId:e,disabled:t})=>{const r=`i-${e}-c-global-f-notes`,[n]=(0,h.useField)(r);return i().createElement(s.TextField,A()({},n,{value:n.value??"",label:y().translate("sponsor_edit_form.notes"),fullWidth:!0,size:"small",multiline:!0,rows:3,disabled:t,slotProps:{inputLabel:{shrink:!0}},margin:"none"}))},F=({row:e,extraColumns:t,timeZone:r,disabled:n})=>{const l=(e.meta_fields??[]).filter((e=>e.class_field===g.gI.ITEM));return i().createElement(s.Box,{sx:{p:2,backgroundColor:"grey.50"}},i().createElement(s.Grid2,{container:!0,spacing:3},t.map((t=>i().createElement(s.Grid2,{key:`col-${t.type_id}`,size:3},i().createElement(S.A,{field:t,rowId:e.form_item_id,timeZone:r,disabled:n,label:t.name})))),l.map((t=>i().createElement(s.Grid2,{key:`item-${t.type_id}`,size:3},i().createElement(S.A,{field:t,rowId:e.form_item_id,timeZone:r,disabled:n,label:t.name})))),i().createElement(s.Grid2,{size:3},i().createElement(I,{rowId:e.form_item_id,disabled:n}))))};var D=r(1519),M=r.n(D);const R=({showAdditionalItems:e})=>e?i().createElement(s.Typography,{variant:"body2",component:"p",sx:{color:"error.warning",fontSize:"0.8rem"}},i().createElement(M(),{color:"error",sx:{fontSize:"1rem",top:"0.2rem",position:"relative"}})," ",y().translate("sponsor_edit_form.additional_info")):null;function B(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function z(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?B(Object(r),!0).forEach((function(t){a()(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):B(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}const W=({data:e,currentApplicableRate:t,timeZone:r,values:n,touched:l,errors:a})=>{const u=JSON.stringify(n),m=(0,o.useMemo)((()=>{var t;return(null===(t=e[0])||void 0===t||null===(t=t.meta_fields)||void 0===t?void 0:t.filter((e=>e.class_field===g.gI.FORM)))||[]}),[e]),[p,f]=(0,o.useState)((()=>e.reduce(((e,t)=>(T(m)&&(e[t.form_item_id]=!0),e)),{}))),h=(0,o.useRef)(new Set);(0,o.useEffect)((()=>{if(!a||0===Object.keys(a).length)return void(h.current=new Set);const t=new Set,r={};e.forEach((e=>{const n=(e.meta_fields??[]).filter((e=>e.class_field===g.gI.ITEM)),o=new Set([...m.map((t=>`i-${e.form_item_id}-c-${t.class_field}-f-${t.type_id}`)),...n.map((t=>`i-${e.form_item_id}-c-${t.class_field}-f-${t.type_id}`)),`i-${e.form_item_id}-c-global-f-notes`]);Object.keys(a).some((e=>o.has(e)&&Boolean(null==l?void 0:l[e])))&&(t.add(e.form_item_id),h.current.has(e.form_item_id)||(r[e.form_item_id]=!0))})),h.current=t,Object.keys(r).length>0&&f((e=>z(z({},e),r)))}),[e,m,a,l]);const E=e=>{f((t=>z(z({},t),{},{[e]:!t[e]})))},O=e=>{if((e.meta_fields??[]).filter((e=>e.is_required)).some((t=>{const r=n[`i-${e.form_item_id}-c-${t.class_field}-f-${t.type_id}`];return"CheckBoxList"===t.type?!Array.isArray(r)||0===r.length:"CheckBox"===t.type?!0!==r:null==r||""===r})))return"error";const t=`i-${e.form_item_id}-`;return Object.keys(l??{}).some((e=>e.startsWith(t)&&l[e]))?"success":"warning"},_=(0,o.useCallback)((e=>{const t=m.filter((e=>"Quantity"===e.type)),r=n[`i-${e.form_item_id}-c-global-f-quantity`],l=t.reduce(((t,r)=>(t>0?t:1)*((null==n?void 0:n[`i-${e.form_item_id}-c-${r.class_field}-f-${r.type_id}`])||0)),0);return t.length>0?l:r}),[u,m]),P=e=>{const r=n[`i-${e.form_item_id}-c-global-f-quantity`]||_(e);if("expired"===t)return 0;const l=n[`i-${e.form_item_id}-c-global-f-custom_rate`]||e.rates[t];return null==l||null==r?0:r*l},j=e=>null==e?y().translate("general.n_a"):(0,v.currencyAmountFromCents)(e),q=(0,o.useMemo)((()=>{const t=e.reduce(((e,t)=>e+P(t)),0),r=n.discount_type===g.eM.AMOUNT?n.discount_amount:t*(n.discount_amount/g.At/g.At);return t-Math.round(r)}),[e,u,t]);return i().createElement(s.TableContainer,{component:s.Paper},i().createElement(s.Table,null,i().createElement(s.TableHead,null,i().createElement(s.TableRow,{sx:{backgroundColor:"#EAEDF4"}},i().createElement(s.TableCell,{sx:{width:40}}),i().createElement(s.TableCell,{sx:{minWidth:40}},y().translate("sponsor_edit_form.code")),i().createElement(s.TableCell,{sx:{minWidth:120}},y().translate("sponsor_edit_form.description")),i().createElement(s.TableCell,{sx:{minWidth:120}},y().translate("sponsor_edit_form.custom_rate")),i().createElement(s.TableCell,{sx:{minWidth:40}},y().translate("sponsor_edit_form.early_bird_rate")),i().createElement(s.TableCell,{sx:{minWidth:40}},y().translate("sponsor_edit_form.standard_rate")),i().createElement(s.TableCell,{sx:{minWidth:40}},y().translate("sponsor_edit_form.onsite_rate")),i().createElement(s.TableCell,{sx:{minWidth:120}},y().translate("sponsor_edit_form.qty")),i().createElement(s.TableCell,{sx:{minWidth:120}},y().translate("sponsor_edit_form.total")),i().createElement(s.TableCell,{sx:{minWidth:40},align:"center"},y().translate("sponsor_edit_form.details")))),i().createElement(s.TableBody,null,e.map((e=>{const n=!x(e,t),l=!!p[e.form_item_id];return i().createElement(i().Fragment,{key:`fragment-${e.form_item_id}`},i().createElement(s.TableRow,null,i().createElement(s.TableCell,null,i().createElement(s.IconButton,{size:"small","aria-label":"Toggle row details",onClick:()=>E(e.form_item_id)},l?i().createElement(d(),null):i().createElement(c(),null))),i().createElement(s.TableCell,null,e.code),i().createElement(s.TableCell,null,e.name),i().createElement(s.TableCell,null,i().createElement(k.default,{name:`i-${e.form_item_id}-c-global-f-custom_rate`,fullWidth:!0,label:"",size:"small",inCents:!0,inputProps:{step:.01}})),i().createElement(s.TableCell,{sx:{opacity:"early_bird"===t?1:"38%"}},j(e.rates.early_bird)),i().createElement(s.TableCell,{sx:{opacity:"standard"===t?1:"38%"}},j(e.rates.standard)),i().createElement(s.TableCell,{sx:{opacity:"onsite"===t?1:"38%"}},j(e.rates.onsite)),i().createElement(s.TableCell,null,i().createElement(w,{row:e,extraColumns:m,value:_(e)})),i().createElement(s.TableCell,null,(0,v.currencyAmountFromCents)(P(e))),i().createElement(s.TableCell,{align:"center",sx:{verticalAlign:"middle"}},i().createElement(s.IconButton,{size:"small","aria-label":"Toggle row details",onClick:()=>E(e.form_item_id)},i().createElement(b(),{color:O(e)})))),i().createElement(s.TableRow,null,i().createElement(s.TableCell,{colSpan:10,sx:{padding:0}},i().createElement(s.Collapse,{in:l,timeout:"auto"},i().createElement(F,{row:e,extraColumns:m,timeZone:r,disabled:n})))))})),i().createElement(s.TableRow,null,i().createElement(s.TableCell,{sx:{fontWeight:500}},y().translate("sponsor_edit_form.discount")),new Array(6).fill(0).map(((e,t)=>i().createElement(s.TableCell,{key:`${t}-discountcell`}))),i().createElement(s.TableCell,null,i().createElement(C.default,{name:"discount_type",label:"",size:"small",sx:{width:110}},Object.values(g.eM).map((e=>i().createElement(s.MenuItem,{key:`ddopt-${e}`,value:e},e))))),i().createElement(s.TableCell,null,i().createElement($.default,{name:"discount_amount",discountType:n.discount_type,label:"",size:"small",margin:"none",inCents:!0,sx:{width:110}})),i().createElement(s.TableCell,null)),i().createElement(s.TableRow,null,i().createElement(s.TableCell,{sx:{fontWeight:500}},y().translate("sponsor_edit_form.total_on_caps")),new Array(7).fill(0).map(((e,t)=>i().createElement(s.TableCell,{key:`${t}-totalcell`}))),i().createElement(s.TableCell,{sx:{fontWeight:500}},(0,v.currencyAmountFromCents)(q)),i().createElement(s.TableCell,null)))))};return n})()));
|
|
2
2
|
//# sourceMappingURL=form-item-table.js.map
|