@onewelcome/react-lib-components 7.1.0 → 8.1.0
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/dist/cjs/DataGrid/DataGrid.cjs.js +1 -1
- package/dist/cjs/DataGrid/DataGrid.cjs.js.map +1 -1
- package/dist/cjs/DataGrid/DataGridBody/DataGridBody.cjs.js +1 -1
- package/dist/cjs/DataGrid/DataGridBody/DataGridBody.cjs.js.map +1 -1
- package/dist/cjs/DataGrid/DataGridBody/DataGridCell/DataGridCell.cjs.js +1 -1
- package/dist/cjs/DataGrid/DataGridBody/DataGridCell/DataGridCell.cjs.js.map +1 -1
- package/dist/cjs/DataGrid/DataGridBody/DataGridRow/DataGridRow.cjs.js +1 -1
- package/dist/cjs/DataGrid/DataGridBody/DataGridRow/DataGridRow.cjs.js.map +1 -1
- package/dist/cjs/DataGrid/DataGridFilters/DataGridFilter.cjs.js +1 -1
- package/dist/cjs/DataGrid/DataGridFilters/DataGridFilter.cjs.js.map +1 -1
- package/dist/cjs/DataGrid/DataGridFilters/DataGridFilter.module.scss.cjs.js +1 -1
- package/dist/cjs/DataGrid/DataGridFilters/DataGridFilterPopover.cjs.js +1 -1
- package/dist/cjs/DataGrid/DataGridFilters/DataGridFilterPopover.cjs.js.map +1 -1
- package/dist/cjs/DataGrid/DataGridFilters/DataGridFilterTag.cjs.js +1 -1
- package/dist/cjs/DataGrid/DataGridFilters/DataGridFilterTag.cjs.js.map +1 -1
- package/dist/cjs/DataGrid/DataGridFilters/DataGridSearchbar.cjs.js +2 -0
- package/dist/cjs/DataGrid/DataGridFilters/DataGridSearchbar.cjs.js.map +1 -0
- package/dist/cjs/DataGrid/DataGridFilters/DataGridToolbar.cjs.js +1 -1
- package/dist/cjs/DataGrid/DataGridFilters/DataGridToolbar.cjs.js.map +1 -1
- package/dist/cjs/DataGrid/DataGridFilters/DataGridToolbar.module.scss.cjs.js +1 -1
- package/dist/cjs/DataGrid/DataGridFilters/DataGridToolbarWrapper.cjs.js +2 -0
- package/dist/cjs/DataGrid/DataGridFilters/DataGridToolbarWrapper.cjs.js.map +1 -0
- package/dist/cjs/DataGrid/DataGridFilters/useFiltersReducer.cjs.js +2 -0
- package/dist/cjs/DataGrid/DataGridFilters/useFiltersReducer.cjs.js.map +1 -0
- package/dist/cjs/DataGrid/DataGridHeader/DataGridHeaderCell.cjs.js +1 -1
- package/dist/cjs/DataGrid/DataGridHeader/DataGridHeaderCell.cjs.js.map +1 -1
- package/dist/cjs/DataGrid/DataGridHeader/DataGridHeaderCell.module.scss.cjs.js +1 -1
- package/dist/cjs/Form/FileUpload/FileUpload.module.scss.cjs.js +1 -1
- package/dist/cjs/Form/Select/MultiSelect/MultiSelect.cjs.js +1 -1
- package/dist/cjs/Form/Select/MultiSelect/MultiSelect.cjs.js.map +1 -1
- package/dist/cjs/Form/Select/SingleSelect/Select.cjs.js +1 -1
- package/dist/cjs/Form/Select/SingleSelect/Select.cjs.js.map +1 -1
- package/dist/cjs/Icon/Icon.cjs.js +1 -1
- package/dist/cjs/Icon/Icon.cjs.js.map +1 -1
- package/dist/cjs/Icon/Icon.module.scss.cjs.js +1 -1
- package/dist/cjs/Notifications/BaseModal/BaseModal.cjs.js +1 -1
- package/dist/cjs/Notifications/BaseModal/BaseModal.cjs.js.map +1 -1
- package/dist/cjs/src/components/DataGrid/DataGrid.d.ts +8 -5
- package/dist/cjs/src/components/DataGrid/DataGridBody/DataGridBody.d.ts +1 -0
- package/dist/cjs/src/components/DataGrid/DataGridBody/DataGridCell/DataGridCell.d.ts +1 -0
- package/dist/cjs/src/components/DataGrid/DataGridBody/DataGridRow/DataGridRow.d.ts +1 -0
- package/dist/cjs/src/components/DataGrid/DataGridFilters/DataGridFilter.d.ts +3 -3
- package/dist/cjs/src/components/DataGrid/DataGridFilters/DataGridFilterPopover.d.ts +3 -2
- package/dist/cjs/src/components/DataGrid/DataGridFilters/DataGridFilterTag.d.ts +2 -1
- package/dist/cjs/src/components/DataGrid/DataGridFilters/DataGridSearchbar.d.ts +10 -0
- package/dist/cjs/src/components/DataGrid/DataGridFilters/DataGridToolbar.d.ts +4 -4
- package/dist/cjs/src/components/DataGrid/DataGridFilters/DataGridToolbarWrapper.d.ts +10 -0
- package/dist/cjs/src/components/DataGrid/DataGridFilters/useFiltersReducer.d.ts +8 -0
- package/dist/cjs/src/components/DataGrid/DataGridFilters/useFiltersReducer.test.d.ts +1 -0
- package/dist/cjs/src/components/DataGrid/testUtils.d.ts +1 -0
- package/dist/cjs/src/components/Icon/Icon.d.ts +2 -1
- package/dist/cjs/src/hooks/useRepeatFocus.cjs.js +2 -0
- package/dist/cjs/src/hooks/useRepeatFocus.cjs.js.map +1 -0
- package/dist/cjs/src/index.cjs.js +1 -1
- package/dist/cjs/src/index.d.ts +1 -0
- package/dist/esm/DataGrid/DataGrid.esm.js +8 -4
- package/dist/esm/DataGrid/DataGrid.esm.js.map +1 -1
- package/dist/esm/DataGrid/DataGridBody/DataGridBody.esm.js +2 -1
- package/dist/esm/DataGrid/DataGridBody/DataGridBody.esm.js.map +1 -1
- package/dist/esm/DataGrid/DataGridBody/DataGridCell/DataGridCell.esm.js +22 -3
- package/dist/esm/DataGrid/DataGridBody/DataGridCell/DataGridCell.esm.js.map +1 -1
- package/dist/esm/DataGrid/DataGridBody/DataGridRow/DataGridRow.esm.js +2 -1
- package/dist/esm/DataGrid/DataGridBody/DataGridRow/DataGridRow.esm.js.map +1 -1
- package/dist/esm/DataGrid/DataGridFilters/DataGridFilter.esm.js +7 -14
- package/dist/esm/DataGrid/DataGridFilters/DataGridFilter.esm.js.map +1 -1
- package/dist/esm/DataGrid/DataGridFilters/DataGridFilter.module.scss.esm.js +2 -2
- package/dist/esm/DataGrid/DataGridFilters/DataGridFilterPopover.esm.js +11 -3
- package/dist/esm/DataGrid/DataGridFilters/DataGridFilterPopover.esm.js.map +1 -1
- package/dist/esm/DataGrid/DataGridFilters/DataGridFilterTag.esm.js +5 -7
- package/dist/esm/DataGrid/DataGridFilters/DataGridFilterTag.esm.js.map +1 -1
- package/dist/esm/DataGrid/DataGridFilters/DataGridSearchbar.esm.js +43 -0
- package/dist/esm/DataGrid/DataGridFilters/DataGridSearchbar.esm.js.map +1 -0
- package/dist/esm/DataGrid/DataGridFilters/DataGridToolbar.esm.js +18 -34
- package/dist/esm/DataGrid/DataGridFilters/DataGridToolbar.esm.js.map +1 -1
- package/dist/esm/DataGrid/DataGridFilters/DataGridToolbar.module.scss.esm.js +2 -2
- package/dist/esm/DataGrid/DataGridFilters/DataGridToolbarWrapper.esm.js +27 -0
- package/dist/esm/DataGrid/DataGridFilters/DataGridToolbarWrapper.esm.js.map +1 -0
- package/dist/esm/DataGrid/DataGridFilters/useFiltersReducer.esm.js +59 -0
- package/dist/esm/DataGrid/DataGridFilters/useFiltersReducer.esm.js.map +1 -0
- package/dist/esm/DataGrid/DataGridHeader/DataGridHeaderCell.esm.js +3 -5
- package/dist/esm/DataGrid/DataGridHeader/DataGridHeaderCell.esm.js.map +1 -1
- package/dist/esm/DataGrid/DataGridHeader/DataGridHeaderCell.module.scss.esm.js +2 -2
- package/dist/esm/Form/FileUpload/FileUpload.module.scss.esm.js +1 -1
- package/dist/esm/Form/Select/MultiSelect/MultiSelect.esm.js +1 -1
- package/dist/esm/Form/Select/MultiSelect/MultiSelect.esm.js.map +1 -1
- package/dist/esm/Form/Select/SingleSelect/Select.esm.js +1 -1
- package/dist/esm/Form/Select/SingleSelect/Select.esm.js.map +1 -1
- package/dist/esm/Icon/Icon.esm.js +1 -0
- package/dist/esm/Icon/Icon.esm.js.map +1 -1
- package/dist/esm/Icon/Icon.module.scss.esm.js +2 -2
- package/dist/esm/Notifications/BaseModal/BaseModal.esm.js +1 -1
- package/dist/esm/Notifications/BaseModal/BaseModal.esm.js.map +1 -1
- package/dist/esm/src/components/DataGrid/DataGrid.d.ts +8 -5
- package/dist/esm/src/components/DataGrid/DataGridBody/DataGridBody.d.ts +1 -0
- package/dist/esm/src/components/DataGrid/DataGridBody/DataGridCell/DataGridCell.d.ts +1 -0
- package/dist/esm/src/components/DataGrid/DataGridBody/DataGridRow/DataGridRow.d.ts +1 -0
- package/dist/esm/src/components/DataGrid/DataGridFilters/DataGridFilter.d.ts +3 -3
- package/dist/esm/src/components/DataGrid/DataGridFilters/DataGridFilterPopover.d.ts +3 -2
- package/dist/esm/src/components/DataGrid/DataGridFilters/DataGridFilterTag.d.ts +2 -1
- package/dist/esm/src/components/DataGrid/DataGridFilters/DataGridSearchbar.d.ts +10 -0
- package/dist/esm/src/components/DataGrid/DataGridFilters/DataGridToolbar.d.ts +4 -4
- package/dist/esm/src/components/DataGrid/DataGridFilters/DataGridToolbarWrapper.d.ts +10 -0
- package/dist/esm/src/components/DataGrid/DataGridFilters/useFiltersReducer.d.ts +8 -0
- package/dist/esm/src/components/DataGrid/DataGridFilters/useFiltersReducer.test.d.ts +1 -0
- package/dist/esm/src/components/DataGrid/testUtils.d.ts +1 -0
- package/dist/esm/src/components/Icon/Icon.d.ts +2 -1
- package/dist/esm/{Notifications/BaseModal → src/hooks}/useRepeatFocus.esm.js +12 -1
- package/dist/esm/src/hooks/useRepeatFocus.esm.js.map +1 -0
- package/dist/esm/src/index.d.ts +1 -0
- package/dist/esm/src/index.esm.js +1 -0
- package/dist/esm/src/index.esm.js.map +1 -1
- package/package.json +1 -1
- package/src/components/DataGrid/DataGrid.tsx +32 -8
- package/src/components/DataGrid/DataGridBody/DataGridBody.tsx +3 -0
- package/src/components/DataGrid/DataGridBody/DataGridCell/DataGridCell.tsx +34 -2
- package/src/components/DataGrid/DataGridBody/DataGridRow/DataGridRow.tsx +3 -0
- package/src/components/DataGrid/DataGridFilters/DataGridFilter.module.scss +21 -11
- package/src/components/DataGrid/DataGridFilters/DataGridFilter.tsx +15 -19
- package/src/components/DataGrid/DataGridFilters/DataGridFilterPopover.tsx +15 -2
- package/src/components/DataGrid/DataGridFilters/DataGridFilterTag.tsx +18 -7
- package/src/components/DataGrid/DataGridFilters/DataGridSearchbar.tsx +68 -0
- package/src/components/DataGrid/DataGridFilters/DataGridToolbar.module.scss +40 -18
- package/src/components/DataGrid/DataGridFilters/DataGridToolbar.tsx +34 -62
- package/src/components/DataGrid/DataGridFilters/DataGridToolbarWrapper.tsx +38 -0
- package/src/components/DataGrid/DataGridFilters/useFiltersReducer.tsx +66 -0
- package/src/components/DataGrid/DataGridHeader/DataGridHeaderCell.module.scss +8 -1
- package/src/components/DataGrid/DataGridHeader/DataGridHeaderCell.tsx +3 -8
- package/src/components/DataGrid/testUtils.ts +14 -16
- package/src/components/Form/FileUpload/FileUpload.module.scss +1 -2
- package/src/components/Form/Select/MultiSelect/MultiSelect.tsx +1 -3
- package/src/components/Form/Select/SingleSelect/Select.tsx +1 -3
- package/src/components/Icon/Icon.module.scss +5 -0
- package/src/components/Icon/Icon.tsx +2 -1
- package/src/components/Notifications/BaseModal/BaseModal.tsx +1 -1
- package/src/font/icomoon.eot +0 -0
- package/src/font/icomoon.svg +1 -0
- package/src/font/icomoon.ttf +0 -0
- package/src/font/icomoon.woff +0 -0
- package/src/font/selection.json +1 -1
- package/src/{components/Notifications/BaseModal → hooks}/useRepeatFocus.tsx +12 -2
- package/src/index.ts +1 -0
- package/dist/cjs/Notifications/BaseModal/useRepeatFocus.cjs.js +0 -2
- package/dist/cjs/Notifications/BaseModal/useRepeatFocus.cjs.js.map +0 -1
- package/dist/esm/Notifications/BaseModal/useRepeatFocus.esm.js.map +0 -1
- /package/dist/cjs/src/{components/Notifications/BaseModal → hooks}/useRepeatFocus.d.ts +0 -0
- /package/dist/esm/src/{components/Notifications/BaseModal → hooks}/useRepeatFocus.d.ts +0 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});require("../../node_modules/style-inject/dist/style-inject.es.cjs.js").default('/*!\n * Copyright 2022 OneWelcome B.V.\n *\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 *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\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/*!\n * Copyright 2022 OneWelcome B.V.\n *\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 *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\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 */.DataGridToolbar-module_sr-only__Xirwy{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.DataGridToolbar-module_hidden__cjs5x{display:none}.DataGridToolbar-module_slide-in__t3lbD{animation:DataGridToolbar-module_slide-in__t3lbD .5s forwards}@media (prefers-reduced-motion:reduce){.DataGridToolbar-module_slide-in__t3lbD{animation-duration:.1ms}}.DataGridToolbar-module_slide-out__-mEfY{animation:DataGridToolbar-module_slide-out__-mEfY .5s forwards}@media (prefers-reduced-motion:reduce){.DataGridToolbar-module_slide-out__-mEfY{animation-duration:.1ms}}@keyframes DataGridToolbar-module_slide-in__t3lbD{0%{transform:translateY(100vh)}to{transform:translateY(0)}}@keyframes DataGridToolbar-module_slide-out__-mEfY{0%{transform:translateY(0)}to{transform:translateY(100vh)}}.DataGridToolbar-module_toolbar__SeZ6y{flex-wrap:wrap;padding-bottom:1rem;width:100%}.DataGridToolbar-module_toolbar__SeZ6y,.DataGridToolbar-module_toolbar__SeZ6y .DataGridToolbar-module_actions-wrapper__oEYeN{align-items:center;display:flex;gap:.5rem;justify-content:flex-start}.DataGridToolbar-module_toolbar__SeZ6y .DataGridToolbar-module_clear-button__4Zdc7{background:none;border:none;cursor:pointer}.DataGridToolbar-module_toolbar__SeZ6y .DataGridToolbar-module_clear-button__4Zdc7:focus-visible{border-radius:var(--focus-border-radius);outline:.125rem solid var(--color-focus);outline-offset:0}.DataGridToolbar-module_toolbar__SeZ6y .DataGridToolbar-module_clear-button__4Zdc7 .DataGridToolbar-module_caption__Jf-jO{color:var(--color-primary500);font-size:var(--font-size-data-grid);line-height:var(--data-grid-line-height);margin:0;text-decoration:underline}\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkRhdGFHcmlkVG9vbGJhci5tb2R1bGUuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFlQTs7Ozs7Ozs7Ozs7Ozs7RUFjRTtBQUNGOzs7Ozs7Ozs7Ozs7OztFQWNFLENBQ0YsdUNBT0Usa0JBQXNCLENBQ3RCLFFBQVMsQ0FMVCxVQUFXLENBRVgsV0FBWSxDQUNaLGVBQWdCLENBRmhCLFNBQVUsQ0FIVixpQkFBa0IsQ0FDbEIsU0FPRixDQUVBLHNDQUNFLFlBQ0YsQ0FFQSx3Q0FDRSw2REFDRixDQUNBLHVDQUNFLHdDQUNFLHVCQUNGLENBQ0YsQ0FFQSx5Q0FDRSw4REFDRixDQUNBLHVDQUNFLHlDQUNFLHVCQUNGLENBQ0YsQ0FFQSxrREFDRSxHQUNFLDJCQUNGLENBQ0EsR0FDRSx1QkFDRixDQUNGLENBQ0EsbURBQ0UsR0FDRSx1QkFDRixDQUNBLEdBQ0UsMkJBQ0YsQ0FDRixDQUNBLHVDQUlFLGNBQWUsQ0FHZixtQkFBb0IsQ0FEcEIsVUFFRixDQUNBLDZIQVBFLGtCQUFtQixDQURuQixZQUFhLENBSWIsU0FBVyxDQUZYLDBCQVdGLENBQ0EsbUZBQ0UsZUFBZ0IsQ0FDaEIsV0FBWSxDQUNaLGNBQ0YsQ0FDQSxpR0FHRSx3Q0FBeUMsQ0FGekMsd0NBQTBDLENBQzFDLGdCQUVGLENBQ0EsMEhBS0UsNkJBQThCLENBSDlCLG9DQUFxQyxDQUNyQyx3Q0FBeUMsQ0FGekMsUUFBUyxDQUdULHlCQUVGIiwiZmlsZSI6IkRhdGFHcmlkVG9vbGJhci5tb2R1bGUuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgMjAyMiBPbmVXZWxjb21lIEIuVi5cbiAqXG4gKiAgICBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogICAgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogICAgWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqICAgIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqICAgIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqICAgIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogICAgU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogICAgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cbi8qIVxuICogQ29weXJpZ2h0IDIwMjIgT25lV2VsY29tZSBCLlYuXG4gKlxuICogICAgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqICAgIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqICAgIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiAgICBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiAgICBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiAgICBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqICAgIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqICAgIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG4vKiFcbiAqIENvcHlyaWdodCAyMDIyIE9uZVdlbGNvbWUgQi5WLlxuICpcbiAqICAgIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiAgICB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiAgICBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogICAgVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogICAgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogICAgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiAgICBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiAgICBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuLnNyLW9ubHkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IC0xcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIGJvcmRlcjogMDtcbn1cblxuLmhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5zbGlkZS1pbiB7XG4gIGFuaW1hdGlvbjogc2xpZGUtaW4gMC41cyBmb3J3YXJkcztcbn1cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5zbGlkZS1pbiB7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjFtcztcbiAgfVxufVxuXG4uc2xpZGUtb3V0IHtcbiAgYW5pbWF0aW9uOiBzbGlkZS1vdXQgMC41cyBmb3J3YXJkcztcbn1cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5zbGlkZS1vdXQge1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMC4xbXM7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzbGlkZS1pbiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwdmgpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgc2xpZGUtb3V0IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMHZoKTtcbiAgfVxufVxuLnRvb2xiYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgZ2FwOiAwLjVyZW07XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbn1cbi50b29sYmFyIC5hY3Rpb25zLXdyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGdhcDogMC41cmVtO1xufVxuLnRvb2xiYXIgLmNsZWFyLWJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLnRvb2xiYXIgLmNsZWFyLWJ1dHRvbjpmb2N1cy12aXNpYmxlIHtcbiAgb3V0bGluZTogMC4xMjVyZW0gc29saWQgdmFyKC0tY29sb3ItZm9jdXMpO1xuICBvdXRsaW5lLW9mZnNldDogMDtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tZm9jdXMtYm9yZGVyLXJhZGl1cyk7XG59XG4udG9vbGJhciAuY2xlYXItYnV0dG9uIC5jYXB0aW9uIHtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1kYXRhLWdyaWQpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tZGF0YS1ncmlkLWxpbmUtaGVpZ2h0KTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5NTAwKTtcbn0iXX0= */'),exports.default={"sr-only":"DataGridToolbar-module_sr-only__Xirwy",hidden:"DataGridToolbar-module_hidden__cjs5x","slide-in":"DataGridToolbar-module_slide-in__t3lbD","slide-out":"DataGridToolbar-module_slide-out__-mEfY",toolbar:"DataGridToolbar-module_toolbar__SeZ6y","actions-wrapper":"DataGridToolbar-module_actions-wrapper__oEYeN","clear-button":"DataGridToolbar-module_clear-button__4Zdc7",caption:"DataGridToolbar-module_caption__Jf-jO"};
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});require("../../node_modules/style-inject/dist/style-inject.es.cjs.js").default('/*!\n * Copyright 2022 OneWelcome B.V.\n *\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 *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\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/*!\n * Copyright 2022 OneWelcome B.V.\n *\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 *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\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 */.DataGridToolbar-module_sr-only__Xirwy{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.DataGridToolbar-module_hidden__cjs5x{display:none}.DataGridToolbar-module_slide-in__t3lbD{animation:DataGridToolbar-module_slide-in__t3lbD .5s forwards}@media (prefers-reduced-motion:reduce){.DataGridToolbar-module_slide-in__t3lbD{animation-duration:.1ms}}.DataGridToolbar-module_slide-out__-mEfY{animation:DataGridToolbar-module_slide-out__-mEfY .5s forwards}@media (prefers-reduced-motion:reduce){.DataGridToolbar-module_slide-out__-mEfY{animation-duration:.1ms}}@keyframes DataGridToolbar-module_slide-in__t3lbD{0%{transform:translateY(100vh)}to{transform:translateY(0)}}@keyframes DataGridToolbar-module_slide-out__-mEfY{0%{transform:translateY(0)}to{transform:translateY(100vh)}}.DataGridToolbar-module_wrapper__wEHlo{align-items:flex-start;display:flex;gap:.5rem;justify-content:space-between;padding-bottom:1rem;width:100%}.DataGridToolbar-module_wrapper__wEHlo .DataGridToolbar-module_filter-section__G4nGc{align-items:center;display:flex;flex-grow:1;flex-wrap:wrap;gap:.5rem;justify-content:flex-start;width:100%}.DataGridToolbar-module_wrapper__wEHlo .DataGridToolbar-module_filter-section__G4nGc .DataGridToolbar-module_searchbar__PnKiv{flex-basis:15rem;min-width:7rem}.DataGridToolbar-module_wrapper__wEHlo .DataGridToolbar-module_filter-section__G4nGc .DataGridToolbar-module_actions-wrapper__oEYeN{align-items:center;display:flex;gap:.5rem;justify-content:flex-start}.DataGridToolbar-module_wrapper__wEHlo .DataGridToolbar-module_filter-section__G4nGc .DataGridToolbar-module_clear-button__4Zdc7{background:none;border:none;cursor:pointer}.DataGridToolbar-module_wrapper__wEHlo .DataGridToolbar-module_filter-section__G4nGc .DataGridToolbar-module_clear-button__4Zdc7:focus-visible{border-radius:var(--focus-border-radius);outline:.125rem solid var(--color-focus);outline-offset:0}.DataGridToolbar-module_wrapper__wEHlo .DataGridToolbar-module_filter-section__G4nGc .DataGridToolbar-module_clear-button__4Zdc7 .DataGridToolbar-module_caption__Jf-jO{color:var(--color-primary500);font-size:var(--font-size-data-grid);line-height:var(--data-grid-line-height);margin:0;text-decoration:underline}.DataGridToolbar-module_wrapper__wEHlo .DataGridToolbar-module_button-section__eyZvY{align-items:center;display:flex;flex-shrink:0;gap:.5rem;justify-content:center}\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkRhdGFHcmlkVG9vbGJhci5tb2R1bGUuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFlQTs7Ozs7Ozs7Ozs7Ozs7RUFjRTtBQUNGOzs7Ozs7Ozs7Ozs7OztFQWNFLENBQ0YsdUNBT0Usa0JBQXNCLENBQ3RCLFFBQVMsQ0FMVCxVQUFXLENBRVgsV0FBWSxDQUNaLGVBQWdCLENBRmhCLFNBQVUsQ0FIVixpQkFBa0IsQ0FDbEIsU0FPRixDQUVBLHNDQUNFLFlBQ0YsQ0FFQSx3Q0FDRSw2REFDRixDQUNBLHVDQUNFLHdDQUNFLHVCQUNGLENBQ0YsQ0FFQSx5Q0FDRSw4REFDRixDQUNBLHVDQUNFLHlDQUNFLHVCQUNGLENBQ0YsQ0FFQSxrREFDRSxHQUNFLDJCQUNGLENBQ0EsR0FDRSx1QkFDRixDQUNGLENBQ0EsbURBQ0UsR0FDRSx1QkFDRixDQUNBLEdBQ0UsMkJBQ0YsQ0FDRixDQUNBLHVDQUVFLHNCQUF1QixDQUR2QixZQUFhLENBR2IsU0FBVyxDQURYLDZCQUE4QixDQUc5QixtQkFBb0IsQ0FEcEIsVUFFRixDQUNBLHFGQUVFLGtCQUFtQixDQURuQixZQUFhLENBTWIsV0FBWSxDQUhaLGNBQWUsQ0FDZixTQUFXLENBRlgsMEJBQTJCLENBRzNCLFVBRUYsQ0FDQSw4SEFFRSxnQkFBaUIsQ0FEakIsY0FFRixDQUNBLG9JQUVFLGtCQUFtQixDQURuQixZQUFhLENBR2IsU0FBVyxDQURYLDBCQUVGLENBQ0EsaUlBQ0UsZUFBZ0IsQ0FDaEIsV0FBWSxDQUNaLGNBQ0YsQ0FDQSwrSUFHRSx3Q0FBeUMsQ0FGekMsd0NBQTBDLENBQzFDLGdCQUVGLENBQ0Esd0tBS0UsNkJBQThCLENBSDlCLG9DQUFxQyxDQUNyQyx3Q0FBeUMsQ0FGekMsUUFBUyxDQUdULHlCQUVGLENBQ0EscUZBSUUsa0JBQW1CLENBRm5CLFlBQWEsQ0FEYixhQUFjLENBSWQsU0FBVyxDQUZYLHNCQUdGIiwiZmlsZSI6IkRhdGFHcmlkVG9vbGJhci5tb2R1bGUuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgMjAyMiBPbmVXZWxjb21lIEIuVi5cbiAqXG4gKiAgICBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogICAgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogICAgWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqICAgIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqICAgIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqICAgIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogICAgU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogICAgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cbi8qIVxuICogQ29weXJpZ2h0IDIwMjIgT25lV2VsY29tZSBCLlYuXG4gKlxuICogICAgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqICAgIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqICAgIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiAgICBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiAgICBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiAgICBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqICAgIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqICAgIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG4vKiFcbiAqIENvcHlyaWdodCAyMDIyIE9uZVdlbGNvbWUgQi5WLlxuICpcbiAqICAgIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiAgICB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiAgICBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogICAgVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogICAgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogICAgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiAgICBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiAgICBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuLnNyLW9ubHkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IC0xcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIGJvcmRlcjogMDtcbn1cblxuLmhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5zbGlkZS1pbiB7XG4gIGFuaW1hdGlvbjogc2xpZGUtaW4gMC41cyBmb3J3YXJkcztcbn1cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5zbGlkZS1pbiB7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjFtcztcbiAgfVxufVxuXG4uc2xpZGUtb3V0IHtcbiAgYW5pbWF0aW9uOiBzbGlkZS1vdXQgMC41cyBmb3J3YXJkcztcbn1cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5zbGlkZS1vdXQge1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMC4xbXM7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzbGlkZS1pbiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwdmgpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgc2xpZGUtb3V0IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMHZoKTtcbiAgfVxufVxuLndyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBnYXA6IDAuNXJlbTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtO1xufVxuLndyYXBwZXIgLmZpbHRlci1zZWN0aW9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGdhcDogMC41cmVtO1xuICB3aWR0aDogMTAwJTtcbiAgZmxleC1ncm93OiAxO1xufVxuLndyYXBwZXIgLmZpbHRlci1zZWN0aW9uIC5zZWFyY2hiYXIge1xuICBtaW4td2lkdGg6IDdyZW07XG4gIGZsZXgtYmFzaXM6IDE1cmVtO1xufVxuLndyYXBwZXIgLmZpbHRlci1zZWN0aW9uIC5hY3Rpb25zLXdyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGdhcDogMC41cmVtO1xufVxuLndyYXBwZXIgLmZpbHRlci1zZWN0aW9uIC5jbGVhci1idXR0b24ge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi53cmFwcGVyIC5maWx0ZXItc2VjdGlvbiAuY2xlYXItYnV0dG9uOmZvY3VzLXZpc2libGUge1xuICBvdXRsaW5lOiAwLjEyNXJlbSBzb2xpZCB2YXIoLS1jb2xvci1mb2N1cyk7XG4gIG91dGxpbmUtb2Zmc2V0OiAwO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1mb2N1cy1ib3JkZXItcmFkaXVzKTtcbn1cbi53cmFwcGVyIC5maWx0ZXItc2VjdGlvbiAuY2xlYXItYnV0dG9uIC5jYXB0aW9uIHtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1kYXRhLWdyaWQpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tZGF0YS1ncmlkLWxpbmUtaGVpZ2h0KTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5NTAwKTtcbn1cbi53cmFwcGVyIC5idXR0b24tc2VjdGlvbiB7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAwLjVyZW07XG59Il19 */'),exports.default={"sr-only":"DataGridToolbar-module_sr-only__Xirwy",hidden:"DataGridToolbar-module_hidden__cjs5x","slide-in":"DataGridToolbar-module_slide-in__t3lbD","slide-out":"DataGridToolbar-module_slide-out__-mEfY",wrapper:"DataGridToolbar-module_wrapper__wEHlo","filter-section":"DataGridToolbar-module_filter-section__G4nGc",searchbar:"DataGridToolbar-module_searchbar__PnKiv","actions-wrapper":"DataGridToolbar-module_actions-wrapper__oEYeN","clear-button":"DataGridToolbar-module_clear-button__4Zdc7",caption:"DataGridToolbar-module_caption__Jf-jO","button-section":"DataGridToolbar-module_button-section__eyZvY"};
|
|
2
2
|
//# sourceMappingURL=DataGridToolbar.module.scss.cjs.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";var e=require("react"),r=require("./DataGridToolbar.module.scss.cjs.js");const a=({children:a,filters:t,buttons:s,...o},l)=>e.createElement("div",{ref:l,className:r.default.wrapper,...o},e.createElement("div",{className:r.default["filter-section"]},t),e.createElement("div",{className:r.default["button-section"]},s)),t=e.forwardRef(a);exports.DataGridToolbarWrapper=t,exports.DataGridToolbarWrapperComponent=a;
|
|
2
|
+
//# sourceMappingURL=DataGridToolbarWrapper.cjs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DataGridToolbarWrapper.cjs.js","sources":["../../../../../../src/components/DataGrid/DataGridFilters/DataGridToolbarWrapper.tsx"],"sourcesContent":["/*\n * Copyright 2022 OneWelcome B.V.\n *\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 *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\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, { ComponentPropsWithRef, ForwardRefRenderFunction, ReactElement } from \"react\";\nimport classes from \"./DataGridToolbar.module.scss\";\nimport { Button } from \"../../Button/Button\";\nimport { ButtonProps } from \"../../..\";\ninterface Props extends ComponentPropsWithRef<\"div\"> {\n filters?: React.JSX.Element;\n buttons?: ReactElement<ButtonProps, typeof Button> | ReactElement<ButtonProps, typeof Button>[];\n}\n\nexport const DataGridToolbarWrapperComponent: ForwardRefRenderFunction<HTMLDivElement, Props> = (\n { children, filters, buttons, ...rest },\n ref\n) => {\n return (\n <div ref={ref} className={classes[\"wrapper\"]} {...rest}>\n <div className={classes[\"filter-section\"]}>{filters}</div>\n <div className={classes[\"button-section\"]}>{buttons}</div>\n </div>\n );\n};\n\nexport const DataGridToolbarWrapper = React.forwardRef(DataGridToolbarWrapperComponent);\n"],"names":["DataGridToolbarWrapperComponent","children","filters","buttons","rest","ref","React","createElement","className","classes","default","DataGridToolbarWrapper","forwardRef"],"mappings":"sFAyBa,MAAAA,EAAmF,EAC5FC,WAAUC,UAASC,aAAYC,GACjCC,IAGEC,EAAAC,cAAA,MAAA,CAAKF,IAAKA,EAAKG,UAAWC,EAAOC,QAAU,WAAON,GAChDE,EAAKC,cAAA,MAAA,CAAAC,UAAWC,EAAAA,QAAQ,mBAAoBP,GAC5CI,EAAKC,cAAA,MAAA,CAAAC,UAAWC,EAAOC,QAAC,mBAAoBP,IAKrCQ,EAAyBL,EAAMM,WAAWZ"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";var e=require("react");exports.useFiltersReducer=r=>{const[t,a]=e.useReducer(((e,r)=>{switch(r.type){case"add":return{...e,filters:[...e.filters,{...r.payload}]};case"edit":return{...e,filters:[...e.filters.map((e=>e.id===r.payload.id?r.payload:e))]};case"remove":return{...e,filters:[...e.filters.filter((e=>e.id!==r.payload.id))]};case"clear":return{...e,filters:[]}}}),{filters:r||[]});return{state:t,addFilter:e=>a({type:"add",payload:e}),deleteFilter:e=>a({type:"remove",payload:{id:e}}),editFilter:e=>a({type:"edit",payload:e}),clearFilters:()=>a({type:"clear"})}};
|
|
2
|
+
//# sourceMappingURL=useFiltersReducer.cjs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useFiltersReducer.cjs.js","sources":["../../../../../../src/components/DataGrid/DataGridFilters/useFiltersReducer.tsx"],"sourcesContent":["/*\n * Copyright 2022 OneWelcome B.V.\n *\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 *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\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 { useReducer } from \"react\";\nimport { Filter, FiltersAction, FiltersState } from \"./DataGridFilters.interfaces\";\n\nexport const useFiltersReducer = (filterValues: Filter[] | undefined) => {\n const filtersReducer = (state: FiltersState, action: FiltersAction): FiltersState => {\n switch (action.type) {\n case \"add\":\n return { ...state, filters: [...state.filters, { ...action.payload }] };\n case \"edit\":\n return {\n ...state,\n filters: [\n ...state.filters.map(value => {\n if (value.id === action.payload.id) {\n return action.payload;\n }\n return value;\n })\n ]\n };\n case \"remove\":\n return {\n ...state,\n filters: [...state.filters.filter(value => value.id !== action.payload.id)]\n };\n case \"clear\":\n return { ...state, filters: [] };\n }\n };\n\n const [state, dispatch] = useReducer(filtersReducer, { filters: filterValues || [] });\n\n const addFilter = (filter: Filter) =>\n dispatch({\n type: \"add\",\n payload: filter\n });\n\n const editFilter = (filter: Filter) =>\n dispatch({\n type: \"edit\",\n payload: filter\n });\n\n const deleteFilter = (id: string) => dispatch({ type: \"remove\", payload: { id } });\n\n const clearFilters = () => dispatch({ type: \"clear\" });\n\n return { state, addFilter, deleteFilter, editFilter, clearFilters };\n};\n"],"names":["filterValues","state","dispatch","useReducer","action","type","filters","payload","map","value","id","filter","addFilter","deleteFilter","editFilter","clearFilters"],"mappings":"8DAmBkCA,IAChC,MA0BOC,EAAOC,GAAYC,EAAUA,YA1Bb,CAACF,EAAqBG,KAC3C,OAAQA,EAAOC,MACb,IAAK,MACH,MAAO,IAAKJ,EAAOK,QAAS,IAAIL,EAAMK,QAAS,IAAKF,EAAOG,WAC7D,IAAK,OACH,MAAO,IACFN,EACHK,QAAS,IACJL,EAAMK,QAAQE,KAAIC,GACfA,EAAMC,KAAON,EAAOG,QAAQG,GACvBN,EAAOG,QAETE,MAIf,IAAK,SACH,MAAO,IACFR,EACHK,QAAS,IAAIL,EAAMK,QAAQK,QAAOF,GAASA,EAAMC,KAAON,EAAOG,QAAQG,OAE3E,IAAK,QACH,MAAO,IAAKT,EAAOK,QAAS,IAC/B,GAGkD,CAAEA,QAASN,GAAgB,KAkBhF,MAAO,CAAEC,QAAOW,UAhBGD,GACjBT,EAAS,CACPG,KAAM,MACNE,QAASI,IAacE,aAJLH,GAAeR,EAAS,CAAEG,KAAM,SAAUE,QAAS,CAAEG,QAIlCI,WAVrBH,GAClBT,EAAS,CACPG,KAAM,OACNE,QAASI,IAOwCI,aAFhC,IAAMb,EAAS,CAAEG,KAAM,UAEuB"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var e=require("react"),
|
|
1
|
+
"use strict";var e=require("react"),a=require("../../Icon/Icon.cjs.js"),t=require("./DataGridHeaderCell.module.scss.cjs.js");const n={ASC:"ascending",DESC:"descending"},r=e.forwardRef((({headline:r,name:c,disableSorting:l,activeSortDirection:s,onSort:i,...d},o)=>{const u=e.createElement(e.Fragment,null,e.createElement("span",{className:t.default.headline},r),!l&&e.createElement("div",{className:t.default["sorting-indicator-container"]},e.createElement(a.Icon,{className:(()=>{const e=[t.default.indicator];return s&&e.push("ASC"===s?t.default.ascending:t.default.descending),e})().join(" "),icon:a.Icons.ArrowUp})));return e.createElement("th",{...d,ref:o,className:t.default["header-cell"],"aria-sort":s&&n[s]},l?e.createElement("div",{key:c},u):e.createElement("button",{key:c,onClick:()=>{null==i||i(c)}},u))}));exports.DataGridHeaderCell=r;
|
|
2
2
|
//# sourceMappingURL=DataGridHeaderCell.cjs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataGridHeaderCell.cjs.js","sources":["../../../../../../src/components/DataGrid/DataGridHeader/DataGridHeaderCell.tsx"],"sourcesContent":["/*\n * Copyright 2022 OneWelcome B.V.\n *\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 *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\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, { ForwardRefRenderFunction, ComponentPropsWithRef, Fragment } from \"react\";\nimport { Icon, Icons } from \"../../Icon/Icon\";\nimport { Direction } from \"../datagrid.interfaces\";\nimport classes from \"./DataGridHeaderCell.module.scss\";\n\nexport interface Props extends ComponentPropsWithRef<\"th\"> {\n headline: string;\n name: string;\n disableSorting?: boolean;\n activeSortDirection?: Direction;\n onSort?: (name: string) => void;\n}\n\nconst ariaSortMapping = {\n ASC: \"ascending\",\n DESC: \"descending\"\n} as const;\n\nconst DataGridHeaderCellComponent: ForwardRefRenderFunction<HTMLTableCellElement, Props> = (\n { headline, name, disableSorting, activeSortDirection, onSort, ...rest }: Props,\n ref\n) => {\n const onCellClick = () => {\n onSort?.(name);\n };\n\n const sortingIndicator = () => {\n const getSortingIndicatorClasses = (
|
|
1
|
+
{"version":3,"file":"DataGridHeaderCell.cjs.js","sources":["../../../../../../src/components/DataGrid/DataGridHeader/DataGridHeaderCell.tsx"],"sourcesContent":["/*\n * Copyright 2022 OneWelcome B.V.\n *\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 *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\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, { ForwardRefRenderFunction, ComponentPropsWithRef, Fragment } from \"react\";\nimport { Icon, Icons } from \"../../Icon/Icon\";\nimport { Direction } from \"../datagrid.interfaces\";\nimport classes from \"./DataGridHeaderCell.module.scss\";\n\nexport interface Props extends ComponentPropsWithRef<\"th\"> {\n headline: string;\n name: string;\n disableSorting?: boolean;\n activeSortDirection?: Direction;\n onSort?: (name: string) => void;\n}\n\nconst ariaSortMapping = {\n ASC: \"ascending\",\n DESC: \"descending\"\n} as const;\n\nconst DataGridHeaderCellComponent: ForwardRefRenderFunction<HTMLTableCellElement, Props> = (\n { headline, name, disableSorting, activeSortDirection, onSort, ...rest }: Props,\n ref\n) => {\n const onCellClick = () => {\n onSort?.(name);\n };\n\n const sortingIndicator = () => {\n const getSortingIndicatorClasses = () => {\n const sortingIndicatorClasses = [classes[\"indicator\"]];\n activeSortDirection &&\n sortingIndicatorClasses.push(\n activeSortDirection === \"ASC\" ? classes[\"ascending\"] : classes[\"descending\"]\n );\n return sortingIndicatorClasses;\n };\n\n return <Icon className={getSortingIndicatorClasses().join(\" \")} icon={Icons.ArrowUp} />;\n };\n\n const innerContent = (\n <Fragment>\n <span className={classes[\"headline\"]}>{headline}</span>\n {!disableSorting && (\n <div className={classes[\"sorting-indicator-container\"]}>{sortingIndicator()}</div>\n )}\n </Fragment>\n );\n\n return (\n <th\n {...rest}\n ref={ref}\n className={classes[\"header-cell\"]}\n aria-sort={activeSortDirection && ariaSortMapping[activeSortDirection]}\n >\n {disableSorting ? (\n <div key={name}>{innerContent}</div>\n ) : (\n <button key={name} onClick={onCellClick}>\n {innerContent}\n </button>\n )}\n </th>\n );\n};\n\nexport const DataGridHeaderCell = React.forwardRef(DataGridHeaderCellComponent);\n"],"names":["ariaSortMapping","ASC","DESC","DataGridHeaderCell","React","forwardRef","headline","name","disableSorting","activeSortDirection","onSort","rest","ref","innerContent","createElement","Fragment","className","classes","Icon","sortingIndicatorClasses","push","getSortingIndicatorClasses","join","icon","Icons","ArrowUp","key","onClick"],"mappings":"6HA6BA,MAAMA,EAAkB,CACtBC,IAAK,YACLC,KAAM,cAmDKC,EAAqBC,EAAMC,YAhDmD,EACvFC,WAAUC,OAAMC,iBAAgBC,sBAAqBC,YAAWC,GAClEC,KAEA,MAiBMC,EACJT,EAAAU,cAACC,EAAQA,SAAA,KACPX,EAAMU,cAAA,OAAA,CAAAE,UAAWC,EAAAA,QAAkB,UAAIX,IACrCE,GACAJ,EAAKU,cAAA,MAAA,CAAAE,UAAWC,UAAQ,gCAPrBb,gBAACc,OAAI,CAACF,UATsB,MACjC,MAAMG,EAA0B,CAACF,UAAmB,WAKpD,OAJAR,GACEU,EAAwBC,KACE,QAAxBX,EAAgCQ,EAAAA,QAAmB,UAAIA,EAAAA,QAAoB,YAExEE,CAAuB,EAGRE,GAA6BC,KAAK,KAAMC,KAAMC,EAAAA,MAAMC,YAY9E,OACErB,EACMU,cAAA,KAAA,IAAAH,EACJC,IAAKA,EACLI,UAAWC,EAAAA,QAAQ,eAAc,YACtBR,GAAuBT,EAAgBS,IAEjDD,EACCJ,EAAKU,cAAA,MAAA,CAAAY,IAAKnB,GAAOM,GAEjBT,EAAAU,cAAA,SAAA,CAAQY,IAAKnB,EAAMoB,QApCL,KAClBjB,SAAAA,EAASH,EAAK,GAoCPM,GAIP"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});require("../../node_modules/style-inject/dist/style-inject.es.cjs.js").default('/*!\n * Copyright 2022 OneWelcome B.V.\n *\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 *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\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 */.DataGridHeaderCell-module_header-cell__proHM{font-weight:400;padding:.625rem .75rem;text-align:left}.DataGridHeaderCell-module_header-cell__proHM:first-child{padding-left:1rem}.DataGridHeaderCell-module_header-cell__proHM:last-child{padding-right:1rem}.DataGridHeaderCell-module_header-cell__proHM>*{display:inline-flex}.DataGridHeaderCell-module_header-cell__proHM>button{align-items:center;background:none;border:0;cursor:pointer;display:inline-flex;margin:0;padding:0}.DataGridHeaderCell-module_headline__cmx1r{color:var(--default);font-family:var(--font-family);font-size:var(--font-size-data-grid);font-weight:700;line-height:var(--data-grid-line-height)}.DataGridHeaderCell-module_sorting-indicator-container__G5sPI{display:flex;flex-direction:column;justify-content:center;padding-left:.5rem}.DataGridHeaderCell-module_sorting-indicator-container__G5sPI>*{font-size:.625rem}.DataGridHeaderCell-module_sorting-indicator-container__G5sPI .DataGridHeaderCell-module_indicator__xaM3k{color:var(--greyed-out)}.DataGridHeaderCell-module_sorting-indicator-container__G5sPI .DataGridHeaderCell-module_indicator__xaM3k.DataGridHeaderCell-
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});require("../../node_modules/style-inject/dist/style-inject.es.cjs.js").default('/*!\n * Copyright 2022 OneWelcome B.V.\n *\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 *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\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 */.DataGridHeaderCell-module_header-cell__proHM{font-weight:400;padding:.625rem .75rem;text-align:left}.DataGridHeaderCell-module_header-cell__proHM:first-child{padding-left:1rem}.DataGridHeaderCell-module_header-cell__proHM:last-child{padding-right:1rem}.DataGridHeaderCell-module_header-cell__proHM>*{display:inline-flex}.DataGridHeaderCell-module_header-cell__proHM>button{align-items:center;background:none;border:0;cursor:pointer;display:inline-flex;margin:0;padding:0}.DataGridHeaderCell-module_headline__cmx1r{color:var(--default);font-family:var(--font-family);font-size:var(--font-size-data-grid);font-weight:700;line-height:var(--data-grid-line-height)}.DataGridHeaderCell-module_sorting-indicator-container__G5sPI{display:flex;flex-direction:column;justify-content:center;padding-left:.5rem}.DataGridHeaderCell-module_sorting-indicator-container__G5sPI>*{font-size:.625rem}.DataGridHeaderCell-module_sorting-indicator-container__G5sPI .DataGridHeaderCell-module_indicator__xaM3k{color:var(--greyed-out);transform:rotate(0deg);transition:transform .2s ease-in-out}.DataGridHeaderCell-module_sorting-indicator-container__G5sPI .DataGridHeaderCell-module_indicator__xaM3k.DataGridHeaderCell-module_ascending__MkLgD{color:var(--color-primary)}.DataGridHeaderCell-module_sorting-indicator-container__G5sPI .DataGridHeaderCell-module_indicator__xaM3k.DataGridHeaderCell-module_descending__ML1AI{color:var(--color-primary);transform:rotate(180deg)}.DataGridHeaderCell-module_sorting-indicator-container__G5sPI .DataGridHeaderCell-module_indicator__xaM3k.DataGridHeaderCell-module_hidden__MAOV3{visibility:hidden}@media only screen and (min-width:50em){.DataGridHeaderCell-module_header-cell__proHM:first-child{padding-left:1.25rem}.DataGridHeaderCell-module_header-cell__proHM:last-child{padding-right:1.25rem}}\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkRhdGFHcmlkSGVhZGVyQ2VsbC5tb2R1bGUuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7RUFjRSxDQUNGLDhDQUNFLGVBQW1CLENBRW5CLHNCQUF5QixDQUR6QixlQUVGLENBQ0EsMERBQ0UsaUJBQ0YsQ0FDQSx5REFDRSxrQkFDRixDQUNBLGdEQUNFLG1CQUNGLENBQ0EscURBT0Usa0JBQW1CLENBSG5CLGVBQWdCLENBRGhCLFFBQVMsQ0FFVCxjQUFlLENBQ2YsbUJBQW9CLENBSnBCLFFBQVMsQ0FEVCxTQU9GLENBRUEsMkNBS0Usb0JBQXFCLENBSnJCLDhCQUErQixDQUMvQixvQ0FBcUMsQ0FFckMsZUFBZ0IsQ0FEaEIsd0NBR0YsQ0FFQSw4REFDRSxZQUFhLENBQ2IscUJBQXNCLENBRXRCLHNCQUF1QixDQUR2QixrQkFFRixDQUNBLGdFQUNFLGlCQUNGLENBQ0EsMEdBQ0UsdUJBQXdCLENBRXhCLHNCQUF1QixDQUR2QixvQ0FFRixDQUNBLHFKQUNFLDBCQUNGLENBQ0Esc0pBQ0UsMEJBQTJCLENBQzNCLHdCQUNGLENBQ0Esa0pBQ0UsaUJBQ0YsQ0FFQSx3Q0FDRSwwREFDRSxvQkFDRixDQUNBLHlEQUNFLHFCQUNGLENBQ0YiLCJmaWxlIjoiRGF0YUdyaWRIZWFkZXJDZWxsLm1vZHVsZS5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiBDb3B5cmlnaHQgMjAyMiBPbmVXZWxjb21lIEIuVi5cbiAqXG4gKiAgICBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogICAgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogICAgWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqICAgIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqICAgIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqICAgIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogICAgU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogICAgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cbi5oZWFkZXItY2VsbCB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHBhZGRpbmc6IDAuNjI1cmVtIDAuNzVyZW07XG59XG4uaGVhZGVyLWNlbGw6Zmlyc3QtY2hpbGQge1xuICBwYWRkaW5nLWxlZnQ6IDFyZW07XG59XG4uaGVhZGVyLWNlbGw6bGFzdC1jaGlsZCB7XG4gIHBhZGRpbmctcmlnaHQ6IDFyZW07XG59XG4uaGVhZGVyLWNlbGwgPiAqIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG59XG4uaGVhZGVyLWNlbGwgPiBidXR0b24ge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogMDtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLmhlYWRsaW5lIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5KTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtZGF0YS1ncmlkKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWRhdGEtZ3JpZC1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiB2YXIoLS1kZWZhdWx0KTtcbn1cblxuLnNvcnRpbmctaW5kaWNhdG9yLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHBhZGRpbmctbGVmdDogMC41cmVtO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbi5zb3J0aW5nLWluZGljYXRvci1jb250YWluZXIgPiAqIHtcbiAgZm9udC1zaXplOiAwLjYyNXJlbTtcbn1cbi5zb3J0aW5nLWluZGljYXRvci1jb250YWluZXIgLmluZGljYXRvciB7XG4gIGNvbG9yOiB2YXIoLS1ncmV5ZWQtb3V0KTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZS1pbi1vdXQ7XG4gIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xufVxuLnNvcnRpbmctaW5kaWNhdG9yLWNvbnRhaW5lciAuaW5kaWNhdG9yLmFzY2VuZGluZyB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbn1cbi5zb3J0aW5nLWluZGljYXRvci1jb250YWluZXIgLmluZGljYXRvci5kZXNjZW5kaW5nIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xufVxuLnNvcnRpbmctaW5kaWNhdG9yLWNvbnRhaW5lciAuaW5kaWNhdG9yLmhpZGRlbiB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MGVtKSB7XG4gIC5oZWFkZXItY2VsbDpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xuICB9XG4gIC5oZWFkZXItY2VsbDpsYXN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtO1xuICB9XG59Il19 */'),exports.default={"header-cell":"DataGridHeaderCell-module_header-cell__proHM",headline:"DataGridHeaderCell-module_headline__cmx1r","sorting-indicator-container":"DataGridHeaderCell-module_sorting-indicator-container__G5sPI",indicator:"DataGridHeaderCell-module_indicator__xaM3k",ascending:"DataGridHeaderCell-module_ascending__MkLgD",descending:"DataGridHeaderCell-module_descending__ML1AI",hidden:"DataGridHeaderCell-module_hidden__MAOV3"};
|
|
2
2
|
//# sourceMappingURL=DataGridHeaderCell.module.scss.cjs.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});require("../../node_modules/style-inject/dist/style-inject.es.cjs.js").default('/*!\n * Copyright 2022 OneWelcome B.V.\n *\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 *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\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/*!\n * Copyright 2022 OneWelcome B.V.\n *\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 *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\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 */.FileUpload-module_sr-only__Awag4{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.FileUpload-module_hidden__JayBD{display:none}.FileUpload-module_slide-in__w7j8k{animation:FileUpload-module_slide-in__w7j8k .5s forwards}@media (prefers-reduced-motion:reduce){.FileUpload-module_slide-in__w7j8k{animation-duration:.1ms}}.FileUpload-module_slide-out__tZ-rV{animation:FileUpload-module_slide-out__tZ-rV .5s forwards}@media (prefers-reduced-motion:reduce){.FileUpload-module_slide-out__tZ-rV{animation-duration:.1ms}}@keyframes FileUpload-module_slide-in__w7j8k{0%{transform:translateY(100vh)}to{transform:translateY(0)}}@keyframes FileUpload-module_slide-out__tZ-rV{0%{transform:translateY(0)}to{transform:translateY(100vh)}}.FileUpload-module_file-upload-wrapper__CIx-a{display:flex;flex-direction:column}.FileUpload-module_file-dropzone__O-VP-{background-color:var(--input-background-color);border-radius:var(--input-border-radius);padding:.25rem 1.25rem;position:relative;transition-duration:.2s;transition-property:all;transition-timing-function:ease-in-out}.FileUpload-module_file-dropzone__O-VP- .FileUpload-module_file-upload-title__CEPD-{font-size:.875rem;font-weight:400;margin:0 0 .25rem}@media (prefers-reduced-motion:reduce){.FileUpload-module_file-dropzone__O-VP-{transition-duration:.1ms}}.FileUpload-module_file-dropzone__O-VP-.FileUpload-module_error__q2B-7 .FileUpload-module_file-upload-title__CEPD-,.FileUpload-module_file-dropzone__O-VP-.FileUpload-module_error__q2B-7 span[data-icon-status]{color:var(--error)}.FileUpload-module_file-dropzone__O-VP-.FileUpload-module_error__q2B-7 .FileUpload-module_file-select__sW1Pn{border-color:var(--error)}.FileUpload-module_file-dropzone__O-VP-.FileUpload-module_success__GqO-7 span[data-icon-status]{color:var(--success)}.FileUpload-module_file-dropzone__O-VP- .FileUpload-module_upload-button-wrapper__vVTvg.FileUpload-module_disabled__hvZQb{pointer-events:none}.FileUpload-module_file-dropzone__O-VP- .FileUpload-module_upload-button-wrapper__vVTvg.FileUpload-module_disabled__hvZQb p{color:var(--color-blue-grey400)}.FileUpload-module_file-dropzone__O-VP- span[data-icon-status]{font-size:1.25rem;position:absolute;right:2rem;top:auto}.FileUpload-module_file-dropzone__O-VP- .FileUpload-module_file-upload-title-mandatory__xEZ-6{color:var(--color-red500)}.FileUpload-module_upload-button-wrapper__vVTvg{background:var(--color-blue-grey25);padding:4px}.FileUpload-module_upload-button-wrapper__vVTvg.FileUpload-module_drag-active__MRJJR .FileUpload-module_outline__QfJ8U{background-color:var(--color-primary-light);border:var(--file-upload-border-width) var(--drag-drop-border-style) var(--color-blue-grey500);border-radius:var(--input-border-radius);inset:0;margin:0;padding:0;pointer-events:none;position:absolute;transition-duration:.2s;transition-property:all;transition-timing-function:ease-in-out}@media (prefers-reduced-motion:reduce){.FileUpload-module_upload-button-wrapper__vVTvg.FileUpload-module_drag-active__MRJJR .FileUpload-module_outline__QfJ8U{transition-duration:.1ms}}.FileUpload-module_upload-button-wrapper__vVTvg.FileUpload-module_drag-active__MRJJR .FileUpload-module_outline__QfJ8U:before{color:var(--color-primary);content:"Drop here";display:block;padding-top:2rem;text-align:center}.FileUpload-module_upload-button-wrapper__vVTvg.FileUpload-module_drag-active__MRJJR:hover .FileUpload-module_outline__QfJ8U{background-color:var(--color-primary-light)}.FileUpload-module_upload-button-wrapper__vVTvg.FileUpload-module_drag-active__MRJJR .FileUpload-module_file-select__sW1Pn{position:relative}.FileUpload-module_upload-button-wrapper__vVTvg.FileUpload-module_drag-active__MRJJR .FileUpload-module_error__q2B-7 .FileUpload-module_outline__QfJ8U{border-color:var(--error)}.FileUpload-module_file-selector-sub-text__nCXMq{color:var(--greyed-out);padding:0 1.25rem}.FileUpload-module_file-selector-sub-text__nCXMq.FileUpload-module_error__q2B-7{color:var(--error);display:block}.FileUpload-module_file-select__sW1Pn{align-items:center;border:var(--file-upload-border-width) var(--drag-drop-border-style) var(--color-blue-grey100);display:flex;flex-direction:row;justify-content:center;padding:1.25rem}.FileUpload-module_file-select__sW1Pn [class*=file]{font-size:1.25rem;margin-left:.5rem}.FileUpload-module_file-select__sW1Pn [class*=typography]{margin-bottom:0}.FileUpload-module_upload-input__wteSl{border:none;bottom:0;cursor:pointer;display:block;left:0;opacity:0;position:absolute;right:0;text-transform:none;top:0;width:100%}.FileUpload-module_upload-input__wteSl:focus{outline:none}.FileUpload-module_file-upload-btn__M2Fg-{position:relative}.FileUpload-module_file-list__GLggq{list-style:none;margin:.25rem 0;padding:0}.FileUpload-module_file-list__GLggq li:not(:last-child){margin-bottom:.5rem}\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkZpbGVVcGxvYWQubW9kdWxlLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0VBY0U7QUFDRjs7Ozs7Ozs7Ozs7Ozs7RUFjRSxDQUNGLGtDQU9FLGtCQUFzQixDQUN0QixRQUFTLENBTFQsVUFBVyxDQUVYLFdBQVksQ0FDWixlQUFnQixDQUZoQixTQUFVLENBSFYsaUJBQWtCLENBQ2xCLFNBT0YsQ0FFQSxpQ0FDRSxZQUNGLENBRUEsbUNBQ0Usd0RBQ0YsQ0FFQSx1Q0FDRSxtQ0FDRSx1QkFDRixDQUNGLENBQ0Esb0NBQ0UseURBQ0YsQ0FFQSx1Q0FDRSxvQ0FDRSx1QkFDRixDQUNGLENBQ0EsNkNBQ0UsR0FDRSwyQkFDRixDQUNBLEdBQ0UsdUJBQ0YsQ0FDRixDQUNBLDhDQUNFLEdBQ0UsdUJBQ0YsQ0FDQSxHQUNFLDJCQUNGLENBQ0YsQ0FDQSw4Q0FDRSxZQUFhLENBQ2IscUJBQ0YsQ0FFQSx3Q0FFRSw4Q0FBK0MsQ0FEL0Msd0NBQXlDLENBRXpDLHNCQUF3QixDQUN4QixpQkFBa0IsQ0FFbEIsdUJBQXlCLENBRHpCLHVCQUF3QixDQUV4QixzQ0FDRixDQUNBLG9GQUVFLGlCQUFtQixDQUNuQixlQUFnQixDQUZoQixpQkFHRixDQUNBLHVDQUNFLHdDQUNFLHdCQUNGLENBQ0YsQ0FDQSxpTkFFRSxrQkFDRixDQUNBLDZHQUNFLHlCQUNGLENBQ0EsZ0dBQ0Usb0JBQ0YsQ0FDQSwwSEFDRSxtQkFDRixDQUNBLDRIQUNFLCtCQUNGLENBQ0EsK0RBQ0UsaUJBQWtCLENBQ2xCLGlCQUFrQixDQUVsQixVQUFXLENBRFgsUUFFRixDQUNBLDhGQUNFLHlCQUNGLENBRUEsZ0RBQ0UsbUNBQW9DLENBQ3BDLFdBQ0YsQ0FDQSx1SEFRRSwyQ0FBNEMsQ0FGNUMsOEZBQStGLENBQy9GLHdDQUF5QyxDQUZ6QyxPQUFRLENBRlIsUUFBUyxDQUNULFNBQVUsQ0FIVixtQkFBb0IsQ0FDcEIsaUJBQWtCLENBUWxCLHVCQUF5QixDQUR6Qix1QkFBd0IsQ0FFeEIsc0NBQ0YsQ0FDQSx1Q0FDRSx1SEFDRSx3QkFDRixDQUNGLENBQ0EsOEhBSUUsMEJBQTJCLENBSDNCLG1CQUFvQixDQUVwQixhQUFjLENBRWQsZ0JBQWlCLENBSGpCLGlCQUlGLENBQ0EsNkhBQ0UsMkNBQ0YsQ0FDQSwySEFDRSxpQkFDRixDQUNBLHVKQUNFLHlCQUNGLENBRUEsaURBQ0UsdUJBQXdCLENBQ3hCLGlCQUNGLENBQ0EsZ0ZBQ0Usa0JBQW1CLENBQ25CLGFBQ0YsQ0FFQSxzQ0FFRSxrQkFBbUIsQ0FHbkIsOEZBQStGLENBSi9GLFlBQWEsQ0FFYixrQkFBbUIsQ0FDbkIsc0JBQXVCLENBRXZCLGVBQ0YsQ0FDQSxvREFDRSxpQkFBa0IsQ0FDbEIsaUJBQ0YsQ0FDQSwwREFDRSxlQUNGLENBRUEsdUNBR0UsV0FBWSxDQU1aLFFBQVMsQ0FFVCxjQUFlLENBVmYsYUFBYyxDQU1kLE1BQU8sQ0FHUCxTQUFVLENBTFYsaUJBQWtCLENBR2xCLE9BQVEsQ0FKUixtQkFBb0IsQ0FFcEIsS0FBTSxDQUpOLFVBVUYsQ0FDQSw2Q0FDRSxZQUNGLENBRUEsMENBQ0UsaUJBQ0YsQ0FFQSxvQ0FDRSxlQUFnQixDQUVoQixlQUFpQixDQURqQixTQUVGLENBQ0Esd0RBQ0UsbUJBQ0YiLCJmaWxlIjoiRmlsZVVwbG9hZC5tb2R1bGUuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogQ29weXJpZ2h0IDIwMjIgT25lV2VsY29tZSBCLlYuXG4gKlxuICogICAgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqICAgIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqICAgIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiAgICBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiAgICBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiAgICBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqICAgIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqICAgIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG4vKiFcbiAqIENvcHlyaWdodCAyMDIyIE9uZVdlbGNvbWUgQi5WLlxuICpcbiAqICAgIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiAgICB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiAgICBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogICAgVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogICAgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogICAgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiAgICBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiAgICBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuLnNyLW9ubHkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IC0xcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIGJvcmRlcjogMDtcbn1cblxuLmhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5zbGlkZS1pbiB7XG4gIGFuaW1hdGlvbjogc2xpZGUtaW4gMC41cyBmb3J3YXJkcztcbn1cblxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLnNsaWRlLWluIHtcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDAuMW1zO1xuICB9XG59XG4uc2xpZGUtb3V0IHtcbiAgYW5pbWF0aW9uOiBzbGlkZS1vdXQgMC41cyBmb3J3YXJkcztcbn1cblxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLnNsaWRlLW91dCB7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjFtcztcbiAgfVxufVxuQGtleWZyYW1lcyBzbGlkZS1pbiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwdmgpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgc2xpZGUtb3V0IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMHZoKTtcbiAgfVxufVxuLmZpbGUtdXBsb2FkLXdyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG4uZmlsZS1kcm9wem9uZSB7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWlucHV0LWJvcmRlci1yYWRpdXMpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnB1dC1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgcGFkZGluZzogMC4yNXJlbSAxLjI1cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IGFsbDtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4ycztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xufVxuLmZpbGUtZHJvcHpvbmUgLmZpbGUtdXBsb2FkLXRpdGxlIHtcbiAgbWFyZ2luOiAwIDAgMC4yNXJlbSAwO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xufVxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLmZpbGUtZHJvcHpvbmUge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMW1zO1xuICB9XG59XG4uZmlsZS1kcm9wem9uZS5lcnJvciBzcGFuW2RhdGEtaWNvbi1zdGF0dXNdLFxuLmZpbGUtZHJvcHpvbmUuZXJyb3IgLmZpbGUtdXBsb2FkLXRpdGxlIHtcbiAgY29sb3I6IHZhcigtLWVycm9yKTtcbn1cbi5maWxlLWRyb3B6b25lLmVycm9yIC5maWxlLXNlbGVjdCB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tZXJyb3IpO1xufVxuLmZpbGUtZHJvcHpvbmUuc3VjY2VzcyBzcGFuW2RhdGEtaWNvbi1zdGF0dXNdIHtcbiAgY29sb3I6IHZhcigtLXN1Y2Nlc3MpO1xufVxuLmZpbGUtZHJvcHpvbmUgLnVwbG9hZC1idXR0b24td3JhcHBlci5kaXNhYmxlZCB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLmZpbGUtZHJvcHpvbmUgLnVwbG9hZC1idXR0b24td3JhcHBlci5kaXNhYmxlZCBwIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJsdWUtZ3JleTQwMCk7XG59XG4uZmlsZS1kcm9wem9uZSBzcGFuW2RhdGEtaWNvbi1zdGF0dXNdIHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogYXV0bztcbiAgcmlnaHQ6IDJyZW07XG59XG4uZmlsZS1kcm9wem9uZSAuZmlsZS11cGxvYWQtdGl0bGUtbWFuZGF0b3J5IHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXJlZDUwMCk7XG59XG5cbi51cGxvYWQtYnV0dG9uLXdyYXBwZXIge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1ibHVlLWdyZXkyNSk7XG4gIHBhZGRpbmc6IDRweDtcbn1cbi51cGxvYWQtYnV0dG9uLXdyYXBwZXIuZHJhZy1hY3RpdmUgLm91dGxpbmUge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGluc2V0OiAwO1xuICBib3JkZXI6IHZhcigtLWZpbGUtdXBsb2FkLWJvcmRlci13aWR0aCkgdmFyKC0tZHJhZy1kcm9wLWJvcmRlci1zdHlsZSkgdmFyKC0tY29sb3ItYmx1ZS1ncmV5NTAwKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0taW5wdXQtYm9yZGVyLXJhZGl1cyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnktbGlnaHQpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBhbGw7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMnM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcbn1cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC51cGxvYWQtYnV0dG9uLXdyYXBwZXIuZHJhZy1hY3RpdmUgLm91dGxpbmUge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMW1zO1xuICB9XG59XG4udXBsb2FkLWJ1dHRvbi13cmFwcGVyLmRyYWctYWN0aXZlIC5vdXRsaW5lOjpiZWZvcmUge1xuICBjb250ZW50OiBcIkRyb3AgaGVyZVwiO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gIHBhZGRpbmctdG9wOiAycmVtO1xufVxuLnVwbG9hZC1idXR0b24td3JhcHBlci5kcmFnLWFjdGl2ZTpob3ZlciAub3V0bGluZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnktbGlnaHQpO1xufVxuLnVwbG9hZC1idXR0b24td3JhcHBlci5kcmFnLWFjdGl2ZSAuZmlsZS1zZWxlY3Qge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4udXBsb2FkLWJ1dHRvbi13cmFwcGVyLmRyYWctYWN0aXZlIC5lcnJvciAub3V0bGluZSB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tZXJyb3IpO1xufVxuXG4uZmlsZS1zZWxlY3Rvci1zdWItdGV4dCB7XG4gIGNvbG9yOiB2YXIoLS1ncmV5ZWQtb3V0KTtcbiAgcGFkZGluZzogMCAxLjI1cmVtO1xufVxuLmZpbGUtc2VsZWN0b3Itc3ViLXRleHQuZXJyb3Ige1xuICBjb2xvcjogdmFyKC0tZXJyb3IpO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmZpbGUtc2VsZWN0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJvcmRlcjogdmFyKC0tZmlsZS11cGxvYWQtYm9yZGVyLXdpZHRoKSB2YXIoLS1kcmFnLWRyb3AtYm9yZGVyLXN0eWxlKSB2YXIoLS1jb2xvci1ibHVlLWdyZXkxMDApO1xuICBwYWRkaW5nOiAxLjI1cmVtO1xufVxuLmZpbGUtc2VsZWN0IFtjbGFzcyo9ZmlsZV0ge1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG59XG4uZmlsZS1zZWxlY3QgW2NsYXNzKj10eXBvZ3JhcGh5XSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi51cGxvYWQtaW5wdXQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlcjogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBvcGFjaXR5OiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4udXBsb2FkLWlucHV0OmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLmZpbGUtdXBsb2FkLWJ0biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmZpbGUtbGlzdCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMC4yNXJlbSAwO1xufVxuLmZpbGUtbGlzdCBsaTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufSJdfQ== */'),exports.default={"sr-only":"FileUpload-module_sr-only__Awag4",hidden:"FileUpload-module_hidden__JayBD","slide-in":"FileUpload-module_slide-in__w7j8k","slide-out":"FileUpload-module_slide-out__tZ-rV","file-upload-wrapper":"FileUpload-module_file-upload-wrapper__CIx-a","file-dropzone":"FileUpload-module_file-dropzone__O-VP-","file-upload-title":"FileUpload-module_file-upload-title__CEPD-",error:"FileUpload-module_error__q2B-7","file-select":"FileUpload-module_file-select__sW1Pn",success:"FileUpload-module_success__GqO-7","upload-button-wrapper":"FileUpload-module_upload-button-wrapper__vVTvg",disabled:"FileUpload-module_disabled__hvZQb","file-upload-title-mandatory":"FileUpload-module_file-upload-title-mandatory__xEZ-6","drag-active":"FileUpload-module_drag-active__MRJJR",outline:"FileUpload-module_outline__QfJ8U","file-selector-sub-text":"FileUpload-module_file-selector-sub-text__nCXMq","upload-input":"FileUpload-module_upload-input__wteSl","file-upload-btn":"FileUpload-module_file-upload-btn__M2Fg-","file-list":"FileUpload-module_file-list__GLggq"};
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});require("../../node_modules/style-inject/dist/style-inject.es.cjs.js").default('/*!\n * Copyright 2022 OneWelcome B.V.\n *\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 *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\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/*!\n * Copyright 2022 OneWelcome B.V.\n *\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 *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\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 */.FileUpload-module_sr-only__Awag4{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.FileUpload-module_hidden__JayBD{display:none}.FileUpload-module_slide-in__w7j8k{animation:FileUpload-module_slide-in__w7j8k .5s forwards}@media (prefers-reduced-motion:reduce){.FileUpload-module_slide-in__w7j8k{animation-duration:.1ms}}.FileUpload-module_slide-out__tZ-rV{animation:FileUpload-module_slide-out__tZ-rV .5s forwards}@media (prefers-reduced-motion:reduce){.FileUpload-module_slide-out__tZ-rV{animation-duration:.1ms}}@keyframes FileUpload-module_slide-in__w7j8k{0%{transform:translateY(100vh)}to{transform:translateY(0)}}@keyframes FileUpload-module_slide-out__tZ-rV{0%{transform:translateY(0)}to{transform:translateY(100vh)}}.FileUpload-module_file-upload-wrapper__CIx-a{display:flex;flex-direction:column}.FileUpload-module_file-dropzone__O-VP-{background-color:var(--input-background-color);border-radius:var(--input-border-radius);position:relative;transition-duration:.2s;transition-property:all;transition-timing-function:ease-in-out}.FileUpload-module_file-dropzone__O-VP- .FileUpload-module_file-upload-title__CEPD-{font-size:.875rem;font-weight:400;margin:0 0 .25rem}@media (prefers-reduced-motion:reduce){.FileUpload-module_file-dropzone__O-VP-{transition-duration:.1ms}}.FileUpload-module_file-dropzone__O-VP-.FileUpload-module_error__q2B-7 .FileUpload-module_file-upload-title__CEPD-,.FileUpload-module_file-dropzone__O-VP-.FileUpload-module_error__q2B-7 span[data-icon-status]{color:var(--error)}.FileUpload-module_file-dropzone__O-VP-.FileUpload-module_error__q2B-7 .FileUpload-module_file-select__sW1Pn{border-color:var(--error)}.FileUpload-module_file-dropzone__O-VP-.FileUpload-module_success__GqO-7 span[data-icon-status]{color:var(--success)}.FileUpload-module_file-dropzone__O-VP- .FileUpload-module_upload-button-wrapper__vVTvg.FileUpload-module_disabled__hvZQb{pointer-events:none}.FileUpload-module_file-dropzone__O-VP- .FileUpload-module_upload-button-wrapper__vVTvg.FileUpload-module_disabled__hvZQb p{color:var(--color-blue-grey400)}.FileUpload-module_file-dropzone__O-VP- span[data-icon-status]{font-size:1.25rem;position:absolute;right:2rem;top:auto}.FileUpload-module_file-dropzone__O-VP- .FileUpload-module_file-upload-title-mandatory__xEZ-6{color:var(--color-red500)}.FileUpload-module_upload-button-wrapper__vVTvg{background:var(--color-blue-grey25);padding:4px}.FileUpload-module_upload-button-wrapper__vVTvg.FileUpload-module_drag-active__MRJJR .FileUpload-module_outline__QfJ8U{background-color:var(--color-primary-light);border:var(--file-upload-border-width) var(--drag-drop-border-style) var(--color-blue-grey500);border-radius:var(--input-border-radius);inset:0;margin:0;padding:0;pointer-events:none;position:absolute;transition-duration:.2s;transition-property:all;transition-timing-function:ease-in-out}@media (prefers-reduced-motion:reduce){.FileUpload-module_upload-button-wrapper__vVTvg.FileUpload-module_drag-active__MRJJR .FileUpload-module_outline__QfJ8U{transition-duration:.1ms}}.FileUpload-module_upload-button-wrapper__vVTvg.FileUpload-module_drag-active__MRJJR .FileUpload-module_outline__QfJ8U:before{color:var(--color-primary);content:"Drop here";display:block;padding-top:2rem;text-align:center}.FileUpload-module_upload-button-wrapper__vVTvg.FileUpload-module_drag-active__MRJJR:hover .FileUpload-module_outline__QfJ8U{background-color:var(--color-primary-light)}.FileUpload-module_upload-button-wrapper__vVTvg.FileUpload-module_drag-active__MRJJR .FileUpload-module_file-select__sW1Pn{position:relative}.FileUpload-module_upload-button-wrapper__vVTvg.FileUpload-module_drag-active__MRJJR .FileUpload-module_error__q2B-7 .FileUpload-module_outline__QfJ8U{border-color:var(--error)}.FileUpload-module_file-selector-sub-text__nCXMq{color:var(--greyed-out)}.FileUpload-module_file-selector-sub-text__nCXMq.FileUpload-module_error__q2B-7{color:var(--error);display:block}.FileUpload-module_file-select__sW1Pn{align-items:center;border:var(--file-upload-border-width) var(--drag-drop-border-style) var(--color-blue-grey100);display:flex;flex-direction:row;justify-content:center;padding:1.25rem}.FileUpload-module_file-select__sW1Pn [class*=file]{font-size:1.25rem;margin-left:.5rem}.FileUpload-module_file-select__sW1Pn [class*=typography]{margin-bottom:0}.FileUpload-module_upload-input__wteSl{border:none;bottom:0;cursor:pointer;display:block;left:0;opacity:0;position:absolute;right:0;text-transform:none;top:0;width:100%}.FileUpload-module_upload-input__wteSl:focus{outline:none}.FileUpload-module_file-upload-btn__M2Fg-{position:relative}.FileUpload-module_file-list__GLggq{list-style:none;margin:.25rem 0;padding:0}.FileUpload-module_file-list__GLggq li:not(:last-child){margin-bottom:.5rem}\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkZpbGVVcGxvYWQubW9kdWxlLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0VBY0U7QUFDRjs7Ozs7Ozs7Ozs7Ozs7RUFjRSxDQUNGLGtDQU9FLGtCQUFzQixDQUN0QixRQUFTLENBTFQsVUFBVyxDQUVYLFdBQVksQ0FDWixlQUFnQixDQUZoQixTQUFVLENBSFYsaUJBQWtCLENBQ2xCLFNBT0YsQ0FFQSxpQ0FDRSxZQUNGLENBRUEsbUNBQ0Usd0RBQ0YsQ0FFQSx1Q0FDRSxtQ0FDRSx1QkFDRixDQUNGLENBQ0Esb0NBQ0UseURBQ0YsQ0FFQSx1Q0FDRSxvQ0FDRSx1QkFDRixDQUNGLENBQ0EsNkNBQ0UsR0FDRSwyQkFDRixDQUNBLEdBQ0UsdUJBQ0YsQ0FDRixDQUNBLDhDQUNFLEdBQ0UsdUJBQ0YsQ0FDQSxHQUNFLDJCQUNGLENBQ0YsQ0FDQSw4Q0FDRSxZQUFhLENBQ2IscUJBQ0YsQ0FFQSx3Q0FFRSw4Q0FBK0MsQ0FEL0Msd0NBQXlDLENBRXpDLGlCQUFrQixDQUVsQix1QkFBeUIsQ0FEekIsdUJBQXdCLENBRXhCLHNDQUNGLENBQ0Esb0ZBRUUsaUJBQW1CLENBQ25CLGVBQWdCLENBRmhCLGlCQUdGLENBQ0EsdUNBQ0Usd0NBQ0Usd0JBQ0YsQ0FDRixDQUNBLGlOQUVFLGtCQUNGLENBQ0EsNkdBQ0UseUJBQ0YsQ0FDQSxnR0FDRSxvQkFDRixDQUNBLDBIQUNFLG1CQUNGLENBQ0EsNEhBQ0UsK0JBQ0YsQ0FDQSwrREFDRSxpQkFBa0IsQ0FDbEIsaUJBQWtCLENBRWxCLFVBQVcsQ0FEWCxRQUVGLENBQ0EsOEZBQ0UseUJBQ0YsQ0FFQSxnREFDRSxtQ0FBb0MsQ0FDcEMsV0FDRixDQUNBLHVIQVFFLDJDQUE0QyxDQUY1Qyw4RkFBK0YsQ0FDL0Ysd0NBQXlDLENBRnpDLE9BQVEsQ0FGUixRQUFTLENBQ1QsU0FBVSxDQUhWLG1CQUFvQixDQUNwQixpQkFBa0IsQ0FRbEIsdUJBQXlCLENBRHpCLHVCQUF3QixDQUV4QixzQ0FDRixDQUNBLHVDQUNFLHVIQUNFLHdCQUNGLENBQ0YsQ0FDQSw4SEFJRSwwQkFBMkIsQ0FIM0IsbUJBQW9CLENBRXBCLGFBQWMsQ0FFZCxnQkFBaUIsQ0FIakIsaUJBSUYsQ0FDQSw2SEFDRSwyQ0FDRixDQUNBLDJIQUNFLGlCQUNGLENBQ0EsdUpBQ0UseUJBQ0YsQ0FFQSxpREFDRSx1QkFDRixDQUNBLGdGQUNFLGtCQUFtQixDQUNuQixhQUNGLENBRUEsc0NBRUUsa0JBQW1CLENBR25CLDhGQUErRixDQUovRixZQUFhLENBRWIsa0JBQW1CLENBQ25CLHNCQUF1QixDQUV2QixlQUNGLENBQ0Esb0RBQ0UsaUJBQWtCLENBQ2xCLGlCQUNGLENBQ0EsMERBQ0UsZUFDRixDQUVBLHVDQUdFLFdBQVksQ0FNWixRQUFTLENBRVQsY0FBZSxDQVZmLGFBQWMsQ0FNZCxNQUFPLENBR1AsU0FBVSxDQUxWLGlCQUFrQixDQUdsQixPQUFRLENBSlIsbUJBQW9CLENBRXBCLEtBQU0sQ0FKTixVQVVGLENBQ0EsNkNBQ0UsWUFDRixDQUVBLDBDQUNFLGlCQUNGLENBRUEsb0NBQ0UsZUFBZ0IsQ0FFaEIsZUFBaUIsQ0FEakIsU0FFRixDQUNBLHdEQUNFLG1CQUNGIiwiZmlsZSI6IkZpbGVVcGxvYWQubW9kdWxlLnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIENvcHlyaWdodCAyMDIyIE9uZVdlbGNvbWUgQi5WLlxuICpcbiAqICAgIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiAgICB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiAgICBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogICAgVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogICAgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogICAgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiAgICBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiAgICBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuLyohXG4gKiBDb3B5cmlnaHQgMjAyMiBPbmVXZWxjb21lIEIuVi5cbiAqXG4gKiAgICBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogICAgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogICAgWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqICAgIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqICAgIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqICAgIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogICAgU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogICAgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cbi5zci1vbmx5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAtMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICBib3JkZXI6IDA7XG59XG5cbi5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uc2xpZGUtaW4ge1xuICBhbmltYXRpb246IHNsaWRlLWluIDAuNXMgZm9yd2FyZHM7XG59XG5cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5zbGlkZS1pbiB7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjFtcztcbiAgfVxufVxuLnNsaWRlLW91dCB7XG4gIGFuaW1hdGlvbjogc2xpZGUtb3V0IDAuNXMgZm9yd2FyZHM7XG59XG5cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5zbGlkZS1vdXQge1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMC4xbXM7XG4gIH1cbn1cbkBrZXlmcmFtZXMgc2xpZGUtaW4ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMHZoKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICB9XG59XG5Aa2V5ZnJhbWVzIHNsaWRlLW91dCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDB2aCk7XG4gIH1cbn1cbi5maWxlLXVwbG9hZC13cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cblxuLmZpbGUtZHJvcHpvbmUge1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1pbnB1dC1ib3JkZXItcmFkaXVzKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW5wdXQtYmFja2dyb3VuZC1jb2xvcik7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYWxsO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjJzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG59XG4uZmlsZS1kcm9wem9uZSAuZmlsZS11cGxvYWQtdGl0bGUge1xuICBtYXJnaW46IDAgMCAwLjI1cmVtIDA7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAuZmlsZS1kcm9wem9uZSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xbXM7XG4gIH1cbn1cbi5maWxlLWRyb3B6b25lLmVycm9yIHNwYW5bZGF0YS1pY29uLXN0YXR1c10sXG4uZmlsZS1kcm9wem9uZS5lcnJvciAuZmlsZS11cGxvYWQtdGl0bGUge1xuICBjb2xvcjogdmFyKC0tZXJyb3IpO1xufVxuLmZpbGUtZHJvcHpvbmUuZXJyb3IgLmZpbGUtc2VsZWN0IHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1lcnJvcik7XG59XG4uZmlsZS1kcm9wem9uZS5zdWNjZXNzIHNwYW5bZGF0YS1pY29uLXN0YXR1c10ge1xuICBjb2xvcjogdmFyKC0tc3VjY2Vzcyk7XG59XG4uZmlsZS1kcm9wem9uZSAudXBsb2FkLWJ1dHRvbi13cmFwcGVyLmRpc2FibGVkIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4uZmlsZS1kcm9wem9uZSAudXBsb2FkLWJ1dHRvbi13cmFwcGVyLmRpc2FibGVkIHAge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYmx1ZS1ncmV5NDAwKTtcbn1cbi5maWxlLWRyb3B6b25lIHNwYW5bZGF0YS1pY29uLXN0YXR1c10ge1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiBhdXRvO1xuICByaWdodDogMnJlbTtcbn1cbi5maWxlLWRyb3B6b25lIC5maWxlLXVwbG9hZC10aXRsZS1tYW5kYXRvcnkge1xuICBjb2xvcjogdmFyKC0tY29sb3ItcmVkNTAwKTtcbn1cblxuLnVwbG9hZC1idXR0b24td3JhcHBlciB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWJsdWUtZ3JleTI1KTtcbiAgcGFkZGluZzogNHB4O1xufVxuLnVwbG9hZC1idXR0b24td3JhcHBlci5kcmFnLWFjdGl2ZSAub3V0bGluZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgaW5zZXQ6IDA7XG4gIGJvcmRlcjogdmFyKC0tZmlsZS11cGxvYWQtYm9yZGVyLXdpZHRoKSB2YXIoLS1kcmFnLWRyb3AtYm9yZGVyLXN0eWxlKSB2YXIoLS1jb2xvci1ibHVlLWdyZXk1MDApO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1pbnB1dC1ib3JkZXItcmFkaXVzKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeS1saWdodCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IGFsbDtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4ycztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xufVxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLnVwbG9hZC1idXR0b24td3JhcHBlci5kcmFnLWFjdGl2ZSAub3V0bGluZSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xbXM7XG4gIH1cbn1cbi51cGxvYWQtYnV0dG9uLXdyYXBwZXIuZHJhZy1hY3RpdmUgLm91dGxpbmU6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiRHJvcCBoZXJlXCI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgcGFkZGluZy10b3A6IDJyZW07XG59XG4udXBsb2FkLWJ1dHRvbi13cmFwcGVyLmRyYWctYWN0aXZlOmhvdmVyIC5vdXRsaW5lIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeS1saWdodCk7XG59XG4udXBsb2FkLWJ1dHRvbi13cmFwcGVyLmRyYWctYWN0aXZlIC5maWxlLXNlbGVjdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi51cGxvYWQtYnV0dG9uLXdyYXBwZXIuZHJhZy1hY3RpdmUgLmVycm9yIC5vdXRsaW5lIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1lcnJvcik7XG59XG5cbi5maWxlLXNlbGVjdG9yLXN1Yi10ZXh0IHtcbiAgY29sb3I6IHZhcigtLWdyZXllZC1vdXQpO1xufVxuLmZpbGUtc2VsZWN0b3Itc3ViLXRleHQuZXJyb3Ige1xuICBjb2xvcjogdmFyKC0tZXJyb3IpO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmZpbGUtc2VsZWN0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJvcmRlcjogdmFyKC0tZmlsZS11cGxvYWQtYm9yZGVyLXdpZHRoKSB2YXIoLS1kcmFnLWRyb3AtYm9yZGVyLXN0eWxlKSB2YXIoLS1jb2xvci1ibHVlLWdyZXkxMDApO1xuICBwYWRkaW5nOiAxLjI1cmVtO1xufVxuLmZpbGUtc2VsZWN0IFtjbGFzcyo9ZmlsZV0ge1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG59XG4uZmlsZS1zZWxlY3QgW2NsYXNzKj10eXBvZ3JhcGh5XSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi51cGxvYWQtaW5wdXQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlcjogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBvcGFjaXR5OiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4udXBsb2FkLWlucHV0OmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLmZpbGUtdXBsb2FkLWJ0biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmZpbGUtbGlzdCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMC4yNXJlbSAwO1xufVxuLmZpbGUtbGlzdCBsaTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufSJdfQ== */'),exports.default={"sr-only":"FileUpload-module_sr-only__Awag4",hidden:"FileUpload-module_hidden__JayBD","slide-in":"FileUpload-module_slide-in__w7j8k","slide-out":"FileUpload-module_slide-out__tZ-rV","file-upload-wrapper":"FileUpload-module_file-upload-wrapper__CIx-a","file-dropzone":"FileUpload-module_file-dropzone__O-VP-","file-upload-title":"FileUpload-module_file-upload-title__CEPD-",error:"FileUpload-module_error__q2B-7","file-select":"FileUpload-module_file-select__sW1Pn",success:"FileUpload-module_success__GqO-7","upload-button-wrapper":"FileUpload-module_upload-button-wrapper__vVTvg",disabled:"FileUpload-module_disabled__hvZQb","file-upload-title-mandatory":"FileUpload-module_file-upload-title-mandatory__xEZ-6","drag-active":"FileUpload-module_drag-active__MRJJR",outline:"FileUpload-module_outline__QfJ8U","file-selector-sub-text":"FileUpload-module_file-selector-sub-text__nCXMq","upload-input":"FileUpload-module_upload-input__wteSl","file-upload-btn":"FileUpload-module_file-upload-btn__M2Fg-","file-list":"FileUpload-module_file-list__GLggq"};
|
|
2
2
|
//# sourceMappingURL=FileUpload.module.scss.cjs.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var e=require("./MultiSelect.module.scss.cjs.js"),t=require("react"),s=require("../../../src/hooks/useBodyClick.cjs.js"),r=require("../../../src/hooks/useDetermineStatusIcon.cjs.js"),l=require("../../../src/readyclasses.module.scss.cjs.js"),a=require("../../../src/util/helper.cjs.js"),n=require("../../../Icon/Icon.cjs.js"),c=require("../useAddNewBtn.cjs.js"),o=require("../useSelectPositionList.cjs.js"),i=require("./SelectButton.cjs.js"),u=require("./SelectedOptions.cjs.js"),d=require("./useArrowNavigation.cjs.js"),p=require("./useSearch.cjs.js");const h=(e,t)=>`${e}_option${t}`,f=e=>`${e}_listbox`,m=t.forwardRef((({id:m,children:v,name:b,disabled:C=!1,labeledBy:S,placeholder:E,describedBy:j,selectButtonProps:g={},className:y,error:N=!1,success:I=!1,value:x,clearLabel:w="Clear selection",noResultsLabel:R="No results found",onChange:B,addNew:q,search:k={enabled:!0,renderThreshold:0,searchPlaceholder:"Search item"},...L},A)=>{const
|
|
1
|
+
"use strict";var e=require("./MultiSelect.module.scss.cjs.js"),t=require("react"),s=require("../../../src/hooks/useBodyClick.cjs.js"),r=require("../../../src/hooks/useDetermineStatusIcon.cjs.js"),l=require("../../../src/readyclasses.module.scss.cjs.js"),a=require("../../../src/util/helper.cjs.js"),n=require("../../../Icon/Icon.cjs.js"),c=require("../useAddNewBtn.cjs.js"),o=require("../useSelectPositionList.cjs.js"),i=require("./SelectButton.cjs.js"),u=require("./SelectedOptions.cjs.js"),d=require("./useArrowNavigation.cjs.js"),p=require("./useSearch.cjs.js");const h=(e,t)=>`${e}_option${t}`,f=e=>`${e}_listbox`,m=t.forwardRef((({id:m,children:v,name:b,disabled:C=!1,labeledBy:S,placeholder:E,describedBy:j,selectButtonProps:g={},className:y,error:N=!1,success:I=!1,value:x,clearLabel:w="Clear selection",noResultsLabel:R="No results found",onChange:B,addNew:q,search:k={enabled:!0,renderThreshold:0,searchPlaceholder:"Search item"},...L},A)=>{const P=t.useRef(null!=m?m:a.generateID(20)),[$,O]=t.useState(!1),[D,F]=t.useState([]),H=t.useRef(null),M=t.useRef(null),[_,K]=t.useState(0),[T,U]=t.useState(!1),[V,z]=t.useState(!1),[G,J]=t.useState(t.Children.count(v)-D.length),{filter:Q,renderSearch:W,searchInputRef:X,resetSearchState:Y,searchVisible:Z}=p.useSearch({selectId:P.current,expanded:$,search:k,searchInputClassName:e.default["select-search"],optionsCount:G,focusedSelectItem:_,setFocusedSelectItem:K,describedBy:j,getOptionId:h,getListboxId:f}),{addBtnRef:ee,addNewBtnOptionsContainerClassName:te,renderAddNew:se}=c.useAddNewBtn({id:h(P.current,G),addNew:q,filter:Q,focusedSelectItem:_,optionsCount:G,searchInputRef:X,shouldClick:T,onClickCallback:()=>{U(!1),Y()}}),re=A||t.createRef(),le=t.useRef(null),{onArrowNavigation:ae}=d.useArrowNavigation({expanded:$,setExpanded:O,setFocusedSelectItem:K,childrenCount:G,setShouldClick:U,addBtnRef:ee,searchInputRef:X,customSelectButtonRef:le,onClose:Y}),{listPosition:ne,opacity:ce,optionsListMaxHeight:oe,setListPosition:ie,setOpacity:ue}=o.useSelectPositionList({expanded:$,optionListReference:M,containerReference:H,addBtnRef:ee}),de=r.useDetermineStatusIcon({success:I,error:N});t.useEffect((()=>{$&&X.current&&(z(!0),X.current.focus()),!$&&le.current&&V&&(z(!1),le.current.focus())}),[$,le.current,V,X.current]),t.useEffect((()=>{var e;(e=>{const s=t.Children.map(v,(e=>e)),r=e.map((e=>{const t=s.find((t=>t.props.value===e));return{value:e,label:null==t?void 0:t.props.children,fixed:null==t?void 0:t.props.fixed}}));F(r)})(x),e=x,re.current&&[...re.current.options].forEach((t=>{e.includes(t.value)?t.selected=!0:t.selected=!1}))}),[x]),s.useBodyClick((e=>!e.target.closest(".custom-select")&&$),(()=>{O(!1),ie({top:0,bottom:"initial"}),ue(0)}),$);const pe=[];$&&pe.push(e.default.expanded),N&&pe.push(e.default.error),C&&pe.push(e.default.disabled),y&&pe.push(y),I&&pe.push(e.default.success);const he=()=>{O((e=>!e)),U(!1)};return t.createElement(t.Fragment,null,t.createElement("select",{...a.filterProps(L,/^data-/,!1),tabIndex:-1,multiple:!0,"aria-hidden":"true",ref:re,name:b,onChange:e=>{null==B||B(e)},className:l.default["sr-only"]},t.createElement("option",{value:""}),t.Children.map(v,(e=>t.createElement("option",{value:e.props.value})))),t.createElement("div",{...a.filterProps(L,/^data-/),id:P.current,ref:H,onKeyDown:ae,className:`custom-select ${e.default.select} ${pe.join(" ")}`},t.createElement("div",{className:`${e.default["custom-select"]} ${pe.join(" ")} `,style:{display:"flex"}},t.createElement("div",{className:e.default["display-container"],"data-display":!0},t.createElement(i.SelectButton,{...g,onClick:he,name:b,ref:le,disabled:C,"aria-disabled":C,"aria-invalid":N,"aria-expanded":$,"aria-haspopup":"listbox","aria-labelledby":S,"aria-describedby":j}),0===(null==x?void 0:x.length)&&E&&t.createElement("span",{className:e.default.placeholder},E),(null==x?void 0:x.length)>0&&t.createElement(u.SelectedOptions,{disabled:C,display:D,onClick:he,onRemove:e=>{if(re.current){[...re.current.options].find((t=>t.value===e)).selected=!1,re.current.dispatchEvent(new Event("change",{bubbles:!0}))}}}),Z&&W()),t.createElement("div",{className:e.default.status},de||($?t.createElement(n.Icon,{className:e.default["chevron-icon"],icon:n.Icons.ChevronUp}):t.createElement(n.Icon,{className:e.default["chevron-icon"],icon:n.Icons.ChevronDown})))),t.createElement("div",{ref:M,className:`list-wrapper ${e.default["list-wrapper"]}`,style:{display:$?"block":"none",opacity:ce,maxHeight:oe.wrapper,pointerEvents:$?"auto":"none",...ne}},t.createElement("ul",{id:f(P.current),className:te,role:"listbox","aria-multiselectable":"true",style:{maxHeight:oe.list}},(()=>{const s=e=>e.filter((e=>"object"==typeof e&&"props"in e&&!D.find((t=>t.value===e.props.value))));let r;if(""!==Q){r=l(s(t.Children.toArray(v).filter((e=>null!==e.props.children.toLowerCase().match(a.escapeRegExp(Q.toLowerCase()))))))}else r=l(s(t.Children.toArray(v)));return G!==r.length&&J(r.length),0===r.length?t.createElement("li",{className:e.default["no-results"]},R):r;function l(e){return t.Children.map(e,((e,s)=>t.cloneElement(e,{onFocusChange:e=>{K(e)},onOptionSelect:e=>{(e=>{if(re.current&&e){const t=e.getAttribute("data-value"),s=[...re.current.options],r=s.filter((e=>e.selected)).map((e=>e.value));s.forEach((e=>{(e.value===t||r.includes(e.value))&&(e.selected=!0)})),re.current.dispatchEvent(new Event("change",{bubbles:!0}))}O(!1),Y()})(e.current),O(!1),U(!1)},isSearching:!1,selectOpened:$,childIndex:s,hasFocus:_===s,shouldClick:T,id:h(P.current,s)})))}})()),se())))}));exports.MultiSelect=m;
|
|
2
2
|
//# sourceMappingURL=MultiSelect.cjs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MultiSelect.cjs.js","sources":["../../../../../../../src/components/Form/Select/MultiSelect/MultiSelect.tsx"],"sourcesContent":["/*\n * Copyright 2022 OneWelcome B.V.\n *\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 *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\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 classes from \"./MultiSelect.module.scss\";\n\nimport React, {\n ForwardRefRenderFunction,\n Fragment,\n ReactElement,\n createRef,\n useEffect,\n useRef,\n useState\n} from \"react\";\nimport { useBodyClick } from \"../../../../hooks/useBodyClick\";\nimport { useDetermineStatusIcon } from \"../../../../hooks/useDetermineStatusIcon\";\nimport readyclasses from \"../../../../readyclasses.module.scss\";\nimport { escapeRegExp, filterProps, generateID } from \"../../../../util/helper\";\nimport { Icon, Icons } from \"../../../Icon/Icon\";\nimport { MultiSelectProps } from \"../Select.interfaces\";\nimport { useAddNewBtn } from \"../useAddNewBtn\";\nimport { useSelectPositionList } from \"../useSelectPositionList\";\nimport { SelectButton } from \"./SelectButton\";\nimport { Display, SelectedOptions } from \"./SelectedOptions\";\nimport { useArrowNavigation } from \"./useArrowNavigation\";\nimport { useSearch } from \"./useSearch\";\n\nconst getOptionId = (multiSelectId: string, optionIndex: number) =>\n `${multiSelectId}_option${optionIndex}`;\n\nconst getListboxId = (multiSelectId: string) => `${multiSelectId}_listbox`;\n\nconst MultiSelectComponent: ForwardRefRenderFunction<HTMLSelectElement, MultiSelectProps> = (\n {\n id,\n children,\n name,\n disabled = false,\n labeledBy,\n placeholder,\n describedBy,\n selectButtonProps = {},\n className,\n error = false,\n success = false,\n value,\n clearLabel = \"Clear selection\",\n noResultsLabel = \"No results found\",\n onChange,\n addNew,\n search = { enabled: true, renderThreshold: 0, searchPlaceholder: \"Search item\" },\n ...rest\n }: MultiSelectProps,\n ref\n) => {\n const multiSelectId = useRef(id ?? generateID(20));\n const [expanded, setExpanded] = useState(false);\n const [display, setDisplay] = useState<Display[]>([]);\n const containerReference = useRef<HTMLDivElement>(null);\n const optionListReference = useRef<HTMLDivElement>(null);\n const [focusedSelectItem, setFocusedSelectItem] = useState(0);\n const [shouldClick, setShouldClick] =\n useState(\n false\n ); /** We need this, because whenever we use the arrow keys to select the select item, and we focus the currently selected item it fires the \"click\" listener in Option component. Instead, we only want this to fire if we press \"enter\" or \"spacebar\" so we set this to true whenever that is the case, and back to false when it has been executed. */\n const [shouldFocusButtonAfterClose, setShouldFocusButtonAfterClose] = useState(false);\n const [optionsVisibleCount, setOptionsVisibleCount] = useState(\n React.Children.count(children) - display.length\n );\n const { filter, renderSearch, searchInputRef, resetSearchState, searchVisible } = useSearch({\n selectId: multiSelectId.current,\n expanded,\n search,\n searchInputClassName: classes[\"select-search\"],\n optionsCount: optionsVisibleCount,\n focusedSelectItem,\n setFocusedSelectItem,\n describedBy,\n getOptionId,\n getListboxId\n });\n const { addBtnRef, addNewBtnOptionsContainerClassName, renderAddNew } = useAddNewBtn({\n id: getOptionId(multiSelectId.current, optionsVisibleCount),\n addNew,\n filter,\n focusedSelectItem,\n optionsCount: optionsVisibleCount,\n searchInputRef,\n shouldClick,\n onClickCallback: () => {\n setShouldClick(false);\n resetSearchState();\n }\n });\n\n const nativeSelect = (ref as React.RefObject<HTMLSelectElement>) || createRef();\n\n const onOptionChangeHandler = (optionElement: HTMLElement | null) => {\n if (nativeSelect.current && optionElement) {\n const value = optionElement.getAttribute(\"data-value\")!;\n const options = [...nativeSelect.current.options];\n const lastSelectedOptionValues = options\n .filter(option => option.selected)\n .map(option => option.value);\n options.forEach(option => {\n if (option.value === value || lastSelectedOptionValues.includes(option.value)) {\n option.selected = true;\n }\n });\n nativeSelect.current.dispatchEvent(new Event(\"change\", { bubbles: true }));\n }\n setExpanded(false);\n resetSearchState();\n };\n\n const onSelectedOptionRemoveHandler = (value: string) => {\n if (nativeSelect.current) {\n const options = [...nativeSelect.current.options];\n options.find(option => option.value === value)!.selected = false;\n nativeSelect.current.dispatchEvent(new Event(\"change\", { bubbles: true }));\n }\n };\n\n const customSelectButtonRef = useRef<HTMLButtonElement>(null);\n const { onArrowNavigation } = useArrowNavigation({\n expanded,\n setExpanded,\n setFocusedSelectItem,\n childrenCount: optionsVisibleCount,\n setShouldClick,\n addBtnRef,\n searchInputRef,\n customSelectButtonRef,\n onClose: resetSearchState\n });\n\n const { listPosition, opacity, optionsListMaxHeight, setListPosition, setOpacity } =\n useSelectPositionList({ expanded, optionListReference, containerReference, addBtnRef });\n\n const syncDisplayValue = (values: string[]) => {\n const options = React.Children.map(children, child => child);\n const displayArray: Display[] = values.map(value => {\n const option = options.find(option => option.props.value === value);\n return { value, label: option?.props.children, fixed: option?.props.fixed };\n });\n setDisplay(displayArray);\n };\n\n const syncSelectedOption = (vals: string[]) => {\n if (nativeSelect.current) {\n const options = [...nativeSelect.current.options];\n options.forEach(option => {\n if (vals.includes(option.value)) {\n option.selected = true;\n } else {\n option.selected = false;\n }\n });\n }\n };\n\n /**\n * @description We have to modify the children (Option component) to have a additional props that allows us to keep track of which one is selected and focused at all times and if a filter is active.\n * The `children` prop can be either a single object (1 child) or an array of multiple children.\n */\n const renderOptions = () => {\n type ReactChildrenType = ReturnType<typeof React.Children.toArray>;\n\n const filterOutSelectedChildren = (internalChildren: ReactChildrenType) => {\n return internalChildren.filter(\n child =>\n typeof child === \"object\" &&\n \"props\" in child &&\n !display.find(option => option.value === child.props.value)\n );\n };\n\n let results;\n if (filter !== \"\") {\n const filteredChildren = React.Children.toArray(children).filter(\n child =>\n (child as ReactElement).props.children\n .toLowerCase()\n .match(escapeRegExp(filter.toLowerCase())) !== null\n );\n\n results = _internalRenderChildren(filterOutSelectedChildren(filteredChildren));\n } else {\n results = _internalRenderChildren(\n filterOutSelectedChildren(React.Children.toArray(children))\n );\n }\n\n optionsVisibleCount !== results.length && setOptionsVisibleCount(results.length);\n\n if (results.length === 0) {\n return <li className={classes[\"no-results\"]}>{noResultsLabel}</li>;\n }\n\n return results;\n\n function _internalRenderChildren(internalChildren: ReactChildrenType) {\n return React.Children.map(internalChildren, (child, index) => {\n return React.cloneElement(child as ReactElement, {\n onFocusChange: (childIndex: number) => {\n setFocusedSelectItem(childIndex);\n },\n onOptionSelect: (optionRef: React.RefObject<HTMLLIElement>) => {\n onOptionChangeHandler(optionRef.current);\n setExpanded(false);\n setShouldClick(false);\n },\n isSearching: false,\n selectOpened: expanded,\n childIndex: index,\n hasFocus: focusedSelectItem === index,\n shouldClick: shouldClick,\n id: getOptionId(multiSelectId.current, index)\n });\n });\n }\n };\n\n const renderChevronIcon = () => {\n return expanded ? (\n <Icon className={classes[\"chevron-icon\"]} icon={Icons.ChevronUp} />\n ) : (\n <Icon className={classes[\"chevron-icon\"]} icon={Icons.ChevronDown} />\n );\n };\n\n const icon = useDetermineStatusIcon({ success, error });\n\n const nativeOnChangeHandler = (event: React.ChangeEvent<HTMLSelectElement>) => {\n onChange?.(event);\n };\n\n useEffect(() => {\n if (expanded && searchInputRef.current) {\n setShouldFocusButtonAfterClose(true);\n searchInputRef.current.focus();\n }\n\n if (!expanded && customSelectButtonRef.current && shouldFocusButtonAfterClose) {\n setShouldFocusButtonAfterClose(false);\n customSelectButtonRef.current.focus();\n }\n }, [\n expanded,\n customSelectButtonRef.current,\n shouldFocusButtonAfterClose,\n searchInputRef.current\n ]);\n\n useEffect(() => {\n syncDisplayValue(value);\n syncSelectedOption(value);\n }, [value]);\n\n useBodyClick(\n (event: MouseEvent) => !(event.target as Element).closest(\".custom-select\") && expanded,\n () => {\n setExpanded(false);\n setListPosition({ top: 0, bottom: \"initial\" });\n setOpacity(0);\n },\n expanded\n );\n\n const additionalClasses = [];\n expanded && additionalClasses.push(classes.expanded);\n error && additionalClasses.push(classes.error);\n disabled && additionalClasses.push(classes.disabled);\n className && additionalClasses.push(className);\n success && additionalClasses.push(classes.success);\n\n const onSelectButtonClick = () => {\n setExpanded(expanded => !expanded);\n setShouldClick(false);\n };\n\n /** The native select is purely for external form libraries. We use it to emit an onChange with native select event object so they know exactly what's happening. */\n return (\n <Fragment>\n <select\n {...filterProps(rest, /^data-/, false)}\n tabIndex={-1}\n multiple={true}\n aria-hidden=\"true\"\n ref={nativeSelect}\n name={name}\n onChange={nativeOnChangeHandler}\n className={readyclasses[\"sr-only\"]}\n >\n <option value=\"\"></option>\n {React.Children.map(children, child => (\n <option value={child.props.value}></option>\n ))}\n </select>\n <div\n {...filterProps(rest, /^data-/)}\n id={multiSelectId.current}\n ref={containerReference}\n onKeyDown={onArrowNavigation}\n className={`custom-select ${classes.select} ${additionalClasses.join(\" \")} ${\n className ?? \"\"\n }`}\n >\n <div\n className={`${classes[\"custom-select\"]} ${additionalClasses.join(\" \")} `}\n style={{ display: \"flex\" }}\n >\n <div className={classes[\"display-container\"]} data-display>\n <SelectButton\n {...selectButtonProps}\n onClick={onSelectButtonClick}\n name={name}\n ref={customSelectButtonRef}\n disabled={disabled}\n aria-disabled={disabled}\n aria-invalid={error}\n aria-expanded={expanded}\n aria-haspopup=\"listbox\"\n aria-labelledby={labeledBy}\n aria-describedby={describedBy}\n />\n {value?.length === 0 && placeholder && (\n <span className={classes[\"placeholder\"]}>{placeholder}</span>\n )}\n {value?.length > 0 && (\n <SelectedOptions\n disabled={disabled}\n display={display}\n onClick={onSelectButtonClick}\n onRemove={onSelectedOptionRemoveHandler}\n />\n )}\n {searchVisible && renderSearch()}\n </div>\n <div className={classes[\"status\"]}>{icon || renderChevronIcon()}</div>\n </div>\n <div\n ref={optionListReference}\n className={`list-wrapper ${classes[\"list-wrapper\"]}`}\n style={{\n display: expanded ? \"block\" : \"none\",\n opacity: opacity,\n maxHeight: optionsListMaxHeight.wrapper,\n pointerEvents: expanded ? \"auto\" : \"none\",\n ...listPosition\n }}\n >\n <ul\n id={getListboxId(multiSelectId.current)}\n className={addNewBtnOptionsContainerClassName}\n role=\"listbox\"\n aria-multiselectable=\"true\"\n style={{ maxHeight: optionsListMaxHeight.list }}\n >\n {renderOptions()}\n </ul>\n {renderAddNew()}\n </div>\n </div>\n </Fragment>\n );\n};\n\nexport const MultiSelect = React.forwardRef(MultiSelectComponent);\n"],"names":["getOptionId","multiSelectId","optionIndex","getListboxId","MultiSelect","React","forwardRef","id","children","name","disabled","labeledBy","placeholder","describedBy","selectButtonProps","className","error","success","value","clearLabel","noResultsLabel","onChange","addNew","search","enabled","renderThreshold","searchPlaceholder","rest","ref","useRef","generateID","expanded","setExpanded","useState","display","setDisplay","containerReference","optionListReference","focusedSelectItem","setFocusedSelectItem","shouldClick","setShouldClick","shouldFocusButtonAfterClose","setShouldFocusButtonAfterClose","optionsVisibleCount","setOptionsVisibleCount","Children","count","length","filter","renderSearch","searchInputRef","resetSearchState","searchVisible","useSearch","selectId","current","searchInputClassName","classes","default","optionsCount","addBtnRef","addNewBtnOptionsContainerClassName","renderAddNew","useAddNewBtn","onClickCallback","nativeSelect","createRef","customSelectButtonRef","onArrowNavigation","useArrowNavigation","childrenCount","onClose","listPosition","opacity","optionsListMaxHeight","setListPosition","setOpacity","useSelectPositionList","icon","useDetermineStatusIcon","useEffect","focus","vals","values","options","map","child","displayArray","option","find","props","label","fixed","syncDisplayValue","forEach","includes","selected","useBodyClick","event","target","closest","top","bottom","additionalClasses","push","onSelectButtonClick","Fragment","createElement","filterProps","tabIndex","multiple","readyclasses","onKeyDown","select","join","style","SelectButton","onClick","SelectedOptions","onRemove","dispatchEvent","Event","bubbles","Icon","Icons","ChevronUp","ChevronDown","maxHeight","wrapper","pointerEvents","role","list","filterOutSelectedChildren","internalChildren","results","_internalRenderChildren","toArray","toLowerCase","match","escapeRegExp","index","cloneElement","onFocusChange","childIndex","onOptionSelect","optionRef","optionElement","getAttribute","lastSelectedOptionValues","onOptionChangeHandler","isSearching","selectOpened","hasFocus","renderOptions"],"mappings":"qjBAwCA,MAAMA,EAAc,CAACC,EAAuBC,IAC1C,GAAGD,WAAuBC,IAEtBC,EAAgBF,GAA0B,GAAGA,YAkVtCG,EAAcC,EAAMC,YAhV2D,EAExFC,KACAC,WACAC,OACAC,YAAW,EACXC,YACAC,cACAC,cACAC,oBAAoB,GACpBC,YACAC,SAAQ,EACRC,WAAU,EACVC,QACAC,aAAa,kBACbC,iBAAiB,mBACjBC,WACAC,SACAC,SAAS,CAAEC,SAAS,EAAMC,gBAAiB,EAAGC,kBAAmB,kBAC9DC,GAELC,KAEA,MAAM3B,EAAgB4B,EAAAA,OAAOtB,QAAAA,EAAMuB,aAAW,MACvCC,EAAUC,GAAeC,EAAQA,UAAC,IAClCC,EAASC,GAAcF,EAAQA,SAAY,IAC5CG,EAAqBP,SAAuB,MAC5CQ,EAAsBR,SAAuB,OAC5CS,EAAmBC,GAAwBN,EAAQA,SAAC,IACpDO,EAAaC,GAClBR,EAAQA,UACN,IAEGS,EAA6BC,GAAkCV,EAAQA,UAAC,IACxEW,EAAqBC,GAA0BZ,EAAQA,SAC5D5B,EAAMyC,SAASC,MAAMvC,GAAY0B,EAAQc,SAErCC,OAAEA,EAAMC,aAAEA,EAAYC,eAAEA,EAAcC,iBAAEA,EAAgBC,cAAEA,GAAkBC,YAAU,CAC1FC,SAAUtD,EAAcuD,QACxBzB,WACAR,SACAkC,qBAAsBC,EAAOC,QAAC,iBAC9BC,aAAchB,EACdN,oBACAC,uBACA1B,cACAb,cACAG,kBAEI0D,UAAEA,GAASC,mCAAEA,GAAkCC,aAAEA,IAAiBC,EAAAA,aAAa,CACnFzD,GAAIP,EAAYC,EAAcuD,QAASZ,GACvCtB,SACA2B,SACAX,oBACAsB,aAAchB,EACdO,iBACAX,cACAyB,gBAAiB,KACfxB,GAAe,GACfW,GAAkB,IAIhBc,GAAgBtC,GAA8CuC,EAAAA,YA4B9DC,GAAwBvC,SAA0B,OAClDwC,kBAAEA,IAAsBC,qBAAmB,CAC/CvC,WACAC,cACAO,uBACAgC,cAAe3B,EACfH,iBACAoB,aACAV,iBACAiB,yBACAI,QAASpB,KAGLqB,aAAEA,GAAYC,QAAEA,GAAOC,qBAAEA,GAAoBC,gBAAEA,GAAeC,WAAEA,IACpEC,EAAqBA,sBAAC,CAAE/C,WAAUM,sBAAqBD,qBAAoByB,eA8FvEkB,GAAOC,EAAsBA,uBAAC,CAAE/D,UAASD,UAM/CiE,EAAAA,WAAU,KACJlD,GAAYoB,EAAeK,UAC7Bb,GAA+B,GAC/BQ,EAAeK,QAAQ0B,UAGpBnD,GAAYqC,GAAsBZ,SAAWd,IAChDC,GAA+B,GAC/ByB,GAAsBZ,QAAQ0B,QAC/B,GACA,CACDnD,EACAqC,GAAsBZ,QACtBd,EACAS,EAAeK,UAGjByB,EAAAA,WAAU,KA1GiB,IAACE,EATH,CAACC,IACxB,MAAMC,EAAUhF,EAAMyC,SAASwC,IAAI9E,GAAU+E,GAASA,IAChDC,EAA0BJ,EAAOE,KAAIpE,IACzC,MAAMuE,EAASJ,EAAQK,MAAKD,GAAUA,EAAOE,MAAMzE,QAAUA,IAC7D,MAAO,CAAEA,QAAO0E,MAAOH,aAAM,EAANA,EAAQE,MAAMnF,SAAUqF,MAAOJ,aAAM,EAANA,EAAQE,MAAME,MAAO,IAE7E1D,EAAWqD,EAAa,EA8GxBM,CAAiB5E,GA3GSiE,EA4GPjE,EA3GfgD,GAAaV,SACC,IAAIU,GAAaV,QAAQ6B,SACjCU,SAAQN,IACVN,EAAKa,SAASP,EAAOvE,OACvBuE,EAAOQ,UAAW,EAElBR,EAAOQ,UAAW,CACnB,GAoGoB,GACxB,CAAC/E,IAEJgF,gBACGC,IAAwBA,EAAMC,OAAmBC,QAAQ,mBAAqBtE,IAC/E,KACEC,GAAY,GACZ4C,GAAgB,CAAE0B,IAAK,EAAGC,OAAQ,YAClC1B,GAAW,EAAE,GAEf9C,GAGF,MAAMyE,GAAoB,GAC1BzE,GAAYyE,GAAkBC,KAAK/C,EAAOC,QAAC5B,UAC3Cf,GAASwF,GAAkBC,KAAK/C,EAAOC,QAAC3C,OACxCN,GAAY8F,GAAkBC,KAAK/C,EAAOC,QAACjD,UAC3CK,GAAayF,GAAkBC,KAAK1F,GACpCE,GAAWuF,GAAkBC,KAAK/C,EAAOC,QAAC1C,SAE1C,MAAMyF,GAAsB,KAC1B1E,GAAYD,IAAaA,IACzBU,GAAe,EAAM,EAIvB,OACEpC,gBAACsG,EAAAA,SAAQ,KACPtG,EAAAuG,cAAA,SAAA,IACMC,EAAAA,YAAYlF,EAAM,UAAU,GAChCmF,UAAW,EACXC,UAAU,EAAI,cACF,OACZnF,IAAKsC,GACLzD,KAAMA,EACNY,SA1DyB8E,IAC7B9E,SAAAA,EAAW8E,EAAM,EA0DbpF,UAAWiG,EAAYrD,QAAC,YAExBtD,EAAQuG,cAAA,SAAA,CAAA1F,MAAM,KACbb,EAAMyC,SAASwC,IAAI9E,GAAU+E,GAC5BlF,EAAQuG,cAAA,SAAA,CAAA1F,MAAOqE,EAAMI,MAAMzE,WAG/Bb,EAAAuG,cAAA,MAAA,IACMC,EAAWA,YAAClF,EAAM,UACtBpB,GAAIN,EAAcuD,QAClB5B,IAAKQ,EACL6E,UAAW5C,GACXtD,UAAW,iBAAiB2C,EAAAA,QAAQwD,UAAUV,GAAkBW,KAAK,QACnEpG,QAAAA,EAAa,MAGfV,EACEuG,cAAA,MAAA,CAAA7F,UAAW,GAAG2C,EAAAA,QAAQ,oBAAoB8C,GAAkBW,KAAK,QACjEC,MAAO,CAAElF,QAAS,SAElB7B,EAAAuG,cAAA,MAAA,CAAK7F,UAAW2C,EAAAA,QAAQ,qBAAoB,gBAAA,GAC1CrD,EAAAuG,cAACS,eAAY,IACPvG,EACJwG,QAASZ,GACTjG,KAAMA,EACNmB,IAAKwC,GACL1D,SAAUA,EACK,gBAAAA,iBACDM,EAAK,gBACJe,EAAQ,gBACT,UAAS,kBACNpB,EAAS,mBACRE,IAED,KAAlBK,aAAK,EAALA,EAAO8B,SAAgBpC,GACtBP,EAAAuG,cAAA,OAAA,CAAM7F,UAAW2C,EAAAA,QAAqB,aAAI9C,IAE3CM,aAAK,EAALA,EAAO8B,QAAS,GACf3C,EAAAuG,cAACW,EAAAA,gBACC,CAAA7G,SAAUA,EACVwB,QAASA,EACToF,QAASZ,GACTc,SA3NyBtG,IACrC,GAAIgD,GAAaV,QAAS,CACR,IAAIU,GAAaV,QAAQ6B,SACjCK,MAAKD,GAAUA,EAAOvE,QAAUA,IAAQ+E,UAAW,EAC3D/B,GAAaV,QAAQiE,cAAc,IAAIC,MAAM,SAAU,CAAEC,SAAS,IACnE,KAyNQtE,GAAiBH,KAEpB7C,EAAAuG,cAAA,MAAA,CAAK7F,UAAW2C,EAAAA,QAAgB,QAAIqB,KAnHnChD,EACL1B,EAAAuG,cAACgB,OAAK,CAAA7G,UAAW2C,EAAAA,QAAQ,gBAAiBqB,KAAM8C,EAAKA,MAACC,YAEtDzH,EAAAuG,cAACgB,OAAK,CAAA7G,UAAW2C,EAAOC,QAAC,gBAAiBoB,KAAM8C,EAAAA,MAAME,iBAkHpD1H,EAAAuG,cAAA,MAAA,CACEhF,IAAKS,EACLtB,UAAW,gBAAgB2C,EAAAA,QAAQ,kBACnC0D,MAAO,CACLlF,QAASH,EAAW,QAAU,OAC9B2C,QAASA,GACTsD,UAAWrD,GAAqBsD,QAChCC,cAAenG,EAAW,OAAS,UAChC0C,KAGLpE,EAAAuG,cAAA,KAAA,CACErG,GAAIJ,EAAaF,EAAcuD,SAC/BzC,UAAW+C,GACXqE,KAAK,UAAS,uBACO,OACrBf,MAAO,CAAEY,UAAWrD,GAAqByD,OAhM7B,MAGpB,MAAMC,EAA6BC,GAC1BA,EAAiBrF,QACtBsC,GACmB,iBAAVA,GACP,UAAWA,IACVrD,EAAQwD,MAAKD,GAAUA,EAAOvE,QAAUqE,EAAMI,MAAMzE,UAI3D,IAAIqH,EACJ,GAAe,KAAXtF,EAAe,CAQjBsF,EAAUC,EAAwBH,EAPThI,EAAMyC,SAAS2F,QAAQjI,GAAUyC,QACxDsC,GAGmD,OAFhDA,EAAuBI,MAAMnF,SAC3BkI,cACAC,MAAMC,EAAYA,aAAC3F,EAAOyF,mBAIlC,MACCH,EAAUC,EACRH,EAA0BhI,EAAMyC,SAAS2F,QAAQjI,KAMrD,OAFAoC,IAAwB2F,EAAQvF,QAAUH,EAAuB0F,EAAQvF,QAElD,IAAnBuF,EAAQvF,OACH3C,EAAAuG,cAAA,KAAA,CAAI7F,UAAW2C,EAAAA,QAAQ,eAAgBtC,GAGzCmH,EAEP,SAASC,EAAwBF,GAC/B,OAAOjI,EAAMyC,SAASwC,IAAIgD,GAAkB,CAAC/C,EAAOsD,IAC3CxI,EAAMyI,aAAavD,EAAuB,CAC/CwD,cAAgBC,IACdzG,EAAqByG,EAAW,EAElCC,eAAiBC,IA9GK,CAACC,IAC7B,GAAIjF,GAAaV,SAAW2F,EAAe,CACzC,MAAMjI,EAAQiI,EAAcC,aAAa,cACnC/D,EAAU,IAAInB,GAAaV,QAAQ6B,SACnCgE,EAA2BhE,EAC9BpC,QAAOwC,GAAUA,EAAOQ,WACxBX,KAAIG,GAAUA,EAAOvE,QACxBmE,EAAQU,SAAQN,KACVA,EAAOvE,QAAUA,GAASmI,EAAyBrD,SAASP,EAAOvE,UACrEuE,EAAOQ,UAAW,EACnB,IAEH/B,GAAaV,QAAQiE,cAAc,IAAIC,MAAM,SAAU,CAAEC,SAAS,IACnE,CACD3F,GAAY,GACZoB,GAAkB,EAgGVkG,CAAsBJ,EAAU1F,SAChCxB,GAAY,GACZS,GAAe,EAAM,EAEvB8G,aAAa,EACbC,aAAczH,EACdiH,WAAYH,EACZY,SAAUnH,IAAsBuG,EAChCrG,YAAaA,EACbjC,GAAIP,EAAYC,EAAcuD,QAASqF,MAG5C,GA2IQa,IAEF3F,OAIP"}
|
|
1
|
+
{"version":3,"file":"MultiSelect.cjs.js","sources":["../../../../../../../src/components/Form/Select/MultiSelect/MultiSelect.tsx"],"sourcesContent":["/*\n * Copyright 2022 OneWelcome B.V.\n *\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 *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\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 classes from \"./MultiSelect.module.scss\";\n\nimport React, {\n ForwardRefRenderFunction,\n Fragment,\n ReactElement,\n createRef,\n useEffect,\n useRef,\n useState\n} from \"react\";\nimport { useBodyClick } from \"../../../../hooks/useBodyClick\";\nimport { useDetermineStatusIcon } from \"../../../../hooks/useDetermineStatusIcon\";\nimport readyclasses from \"../../../../readyclasses.module.scss\";\nimport { escapeRegExp, filterProps, generateID } from \"../../../../util/helper\";\nimport { Icon, Icons } from \"../../../Icon/Icon\";\nimport { MultiSelectProps } from \"../Select.interfaces\";\nimport { useAddNewBtn } from \"../useAddNewBtn\";\nimport { useSelectPositionList } from \"../useSelectPositionList\";\nimport { SelectButton } from \"./SelectButton\";\nimport { Display, SelectedOptions } from \"./SelectedOptions\";\nimport { useArrowNavigation } from \"./useArrowNavigation\";\nimport { useSearch } from \"./useSearch\";\n\nconst getOptionId = (multiSelectId: string, optionIndex: number) =>\n `${multiSelectId}_option${optionIndex}`;\n\nconst getListboxId = (multiSelectId: string) => `${multiSelectId}_listbox`;\n\nconst MultiSelectComponent: ForwardRefRenderFunction<HTMLSelectElement, MultiSelectProps> = (\n {\n id,\n children,\n name,\n disabled = false,\n labeledBy,\n placeholder,\n describedBy,\n selectButtonProps = {},\n className,\n error = false,\n success = false,\n value,\n clearLabel = \"Clear selection\",\n noResultsLabel = \"No results found\",\n onChange,\n addNew,\n search = { enabled: true, renderThreshold: 0, searchPlaceholder: \"Search item\" },\n ...rest\n }: MultiSelectProps,\n ref\n) => {\n const multiSelectId = useRef(id ?? generateID(20));\n const [expanded, setExpanded] = useState(false);\n const [display, setDisplay] = useState<Display[]>([]);\n const containerReference = useRef<HTMLDivElement>(null);\n const optionListReference = useRef<HTMLDivElement>(null);\n const [focusedSelectItem, setFocusedSelectItem] = useState(0);\n const [shouldClick, setShouldClick] =\n useState(\n false\n ); /** We need this, because whenever we use the arrow keys to select the select item, and we focus the currently selected item it fires the \"click\" listener in Option component. Instead, we only want this to fire if we press \"enter\" or \"spacebar\" so we set this to true whenever that is the case, and back to false when it has been executed. */\n const [shouldFocusButtonAfterClose, setShouldFocusButtonAfterClose] = useState(false);\n const [optionsVisibleCount, setOptionsVisibleCount] = useState(\n React.Children.count(children) - display.length\n );\n const { filter, renderSearch, searchInputRef, resetSearchState, searchVisible } = useSearch({\n selectId: multiSelectId.current,\n expanded,\n search,\n searchInputClassName: classes[\"select-search\"],\n optionsCount: optionsVisibleCount,\n focusedSelectItem,\n setFocusedSelectItem,\n describedBy,\n getOptionId,\n getListboxId\n });\n const { addBtnRef, addNewBtnOptionsContainerClassName, renderAddNew } = useAddNewBtn({\n id: getOptionId(multiSelectId.current, optionsVisibleCount),\n addNew,\n filter,\n focusedSelectItem,\n optionsCount: optionsVisibleCount,\n searchInputRef,\n shouldClick,\n onClickCallback: () => {\n setShouldClick(false);\n resetSearchState();\n }\n });\n\n const nativeSelect = (ref as React.RefObject<HTMLSelectElement>) || createRef();\n\n const onOptionChangeHandler = (optionElement: HTMLElement | null) => {\n if (nativeSelect.current && optionElement) {\n const value = optionElement.getAttribute(\"data-value\")!;\n const options = [...nativeSelect.current.options];\n const lastSelectedOptionValues = options\n .filter(option => option.selected)\n .map(option => option.value);\n options.forEach(option => {\n if (option.value === value || lastSelectedOptionValues.includes(option.value)) {\n option.selected = true;\n }\n });\n nativeSelect.current.dispatchEvent(new Event(\"change\", { bubbles: true }));\n }\n setExpanded(false);\n resetSearchState();\n };\n\n const onSelectedOptionRemoveHandler = (value: string) => {\n if (nativeSelect.current) {\n const options = [...nativeSelect.current.options];\n options.find(option => option.value === value)!.selected = false;\n nativeSelect.current.dispatchEvent(new Event(\"change\", { bubbles: true }));\n }\n };\n\n const customSelectButtonRef = useRef<HTMLButtonElement>(null);\n const { onArrowNavigation } = useArrowNavigation({\n expanded,\n setExpanded,\n setFocusedSelectItem,\n childrenCount: optionsVisibleCount,\n setShouldClick,\n addBtnRef,\n searchInputRef,\n customSelectButtonRef,\n onClose: resetSearchState\n });\n\n const { listPosition, opacity, optionsListMaxHeight, setListPosition, setOpacity } =\n useSelectPositionList({ expanded, optionListReference, containerReference, addBtnRef });\n\n const syncDisplayValue = (values: string[]) => {\n const options = React.Children.map(children, child => child);\n const displayArray: Display[] = values.map(value => {\n const option = options.find(option => option.props.value === value);\n return { value, label: option?.props.children, fixed: option?.props.fixed };\n });\n setDisplay(displayArray);\n };\n\n const syncSelectedOption = (vals: string[]) => {\n if (nativeSelect.current) {\n const options = [...nativeSelect.current.options];\n options.forEach(option => {\n if (vals.includes(option.value)) {\n option.selected = true;\n } else {\n option.selected = false;\n }\n });\n }\n };\n\n /**\n * @description We have to modify the children (Option component) to have a additional props that allows us to keep track of which one is selected and focused at all times and if a filter is active.\n * The `children` prop can be either a single object (1 child) or an array of multiple children.\n */\n const renderOptions = () => {\n type ReactChildrenType = ReturnType<typeof React.Children.toArray>;\n\n const filterOutSelectedChildren = (internalChildren: ReactChildrenType) => {\n return internalChildren.filter(\n child =>\n typeof child === \"object\" &&\n \"props\" in child &&\n !display.find(option => option.value === child.props.value)\n );\n };\n\n let results;\n if (filter !== \"\") {\n const filteredChildren = React.Children.toArray(children).filter(\n child =>\n (child as ReactElement).props.children\n .toLowerCase()\n .match(escapeRegExp(filter.toLowerCase())) !== null\n );\n\n results = _internalRenderChildren(filterOutSelectedChildren(filteredChildren));\n } else {\n results = _internalRenderChildren(\n filterOutSelectedChildren(React.Children.toArray(children))\n );\n }\n\n optionsVisibleCount !== results.length && setOptionsVisibleCount(results.length);\n\n if (results.length === 0) {\n return <li className={classes[\"no-results\"]}>{noResultsLabel}</li>;\n }\n\n return results;\n\n function _internalRenderChildren(internalChildren: ReactChildrenType) {\n return React.Children.map(internalChildren, (child, index) => {\n return React.cloneElement(child as ReactElement, {\n onFocusChange: (childIndex: number) => {\n setFocusedSelectItem(childIndex);\n },\n onOptionSelect: (optionRef: React.RefObject<HTMLLIElement>) => {\n onOptionChangeHandler(optionRef.current);\n setExpanded(false);\n setShouldClick(false);\n },\n isSearching: false,\n selectOpened: expanded,\n childIndex: index,\n hasFocus: focusedSelectItem === index,\n shouldClick: shouldClick,\n id: getOptionId(multiSelectId.current, index)\n });\n });\n }\n };\n\n const renderChevronIcon = () => {\n return expanded ? (\n <Icon className={classes[\"chevron-icon\"]} icon={Icons.ChevronUp} />\n ) : (\n <Icon className={classes[\"chevron-icon\"]} icon={Icons.ChevronDown} />\n );\n };\n\n const icon = useDetermineStatusIcon({ success, error });\n\n const nativeOnChangeHandler = (event: React.ChangeEvent<HTMLSelectElement>) => {\n onChange?.(event);\n };\n\n useEffect(() => {\n if (expanded && searchInputRef.current) {\n setShouldFocusButtonAfterClose(true);\n searchInputRef.current.focus();\n }\n\n if (!expanded && customSelectButtonRef.current && shouldFocusButtonAfterClose) {\n setShouldFocusButtonAfterClose(false);\n customSelectButtonRef.current.focus();\n }\n }, [\n expanded,\n customSelectButtonRef.current,\n shouldFocusButtonAfterClose,\n searchInputRef.current\n ]);\n\n useEffect(() => {\n syncDisplayValue(value);\n syncSelectedOption(value);\n }, [value]);\n\n useBodyClick(\n (event: MouseEvent) => !(event.target as Element).closest(\".custom-select\") && expanded,\n () => {\n setExpanded(false);\n setListPosition({ top: 0, bottom: \"initial\" });\n setOpacity(0);\n },\n expanded\n );\n\n const additionalClasses = [];\n expanded && additionalClasses.push(classes.expanded);\n error && additionalClasses.push(classes.error);\n disabled && additionalClasses.push(classes.disabled);\n className && additionalClasses.push(className);\n success && additionalClasses.push(classes.success);\n\n const onSelectButtonClick = () => {\n setExpanded(expanded => !expanded);\n setShouldClick(false);\n };\n\n /** The native select is purely for external form libraries. We use it to emit an onChange with native select event object so they know exactly what's happening. */\n return (\n <Fragment>\n <select\n {...filterProps(rest, /^data-/, false)}\n tabIndex={-1}\n multiple={true}\n aria-hidden=\"true\"\n ref={nativeSelect}\n name={name}\n onChange={nativeOnChangeHandler}\n className={readyclasses[\"sr-only\"]}\n >\n <option value=\"\"></option>\n {React.Children.map(children, child => (\n <option value={child.props.value}></option>\n ))}\n </select>\n <div\n {...filterProps(rest, /^data-/)}\n id={multiSelectId.current}\n ref={containerReference}\n onKeyDown={onArrowNavigation}\n className={`custom-select ${classes.select} ${additionalClasses.join(\" \")}`}\n >\n <div\n className={`${classes[\"custom-select\"]} ${additionalClasses.join(\" \")} `}\n style={{ display: \"flex\" }}\n >\n <div className={classes[\"display-container\"]} data-display>\n <SelectButton\n {...selectButtonProps}\n onClick={onSelectButtonClick}\n name={name}\n ref={customSelectButtonRef}\n disabled={disabled}\n aria-disabled={disabled}\n aria-invalid={error}\n aria-expanded={expanded}\n aria-haspopup=\"listbox\"\n aria-labelledby={labeledBy}\n aria-describedby={describedBy}\n />\n {value?.length === 0 && placeholder && (\n <span className={classes[\"placeholder\"]}>{placeholder}</span>\n )}\n {value?.length > 0 && (\n <SelectedOptions\n disabled={disabled}\n display={display}\n onClick={onSelectButtonClick}\n onRemove={onSelectedOptionRemoveHandler}\n />\n )}\n {searchVisible && renderSearch()}\n </div>\n <div className={classes[\"status\"]}>{icon || renderChevronIcon()}</div>\n </div>\n <div\n ref={optionListReference}\n className={`list-wrapper ${classes[\"list-wrapper\"]}`}\n style={{\n display: expanded ? \"block\" : \"none\",\n opacity: opacity,\n maxHeight: optionsListMaxHeight.wrapper,\n pointerEvents: expanded ? \"auto\" : \"none\",\n ...listPosition\n }}\n >\n <ul\n id={getListboxId(multiSelectId.current)}\n className={addNewBtnOptionsContainerClassName}\n role=\"listbox\"\n aria-multiselectable=\"true\"\n style={{ maxHeight: optionsListMaxHeight.list }}\n >\n {renderOptions()}\n </ul>\n {renderAddNew()}\n </div>\n </div>\n </Fragment>\n );\n};\n\nexport const MultiSelect = React.forwardRef(MultiSelectComponent);\n"],"names":["getOptionId","multiSelectId","optionIndex","getListboxId","MultiSelect","React","forwardRef","id","children","name","disabled","labeledBy","placeholder","describedBy","selectButtonProps","className","error","success","value","clearLabel","noResultsLabel","onChange","addNew","search","enabled","renderThreshold","searchPlaceholder","rest","ref","useRef","generateID","expanded","setExpanded","useState","display","setDisplay","containerReference","optionListReference","focusedSelectItem","setFocusedSelectItem","shouldClick","setShouldClick","shouldFocusButtonAfterClose","setShouldFocusButtonAfterClose","optionsVisibleCount","setOptionsVisibleCount","Children","count","length","filter","renderSearch","searchInputRef","resetSearchState","searchVisible","useSearch","selectId","current","searchInputClassName","classes","default","optionsCount","addBtnRef","addNewBtnOptionsContainerClassName","renderAddNew","useAddNewBtn","onClickCallback","nativeSelect","createRef","customSelectButtonRef","onArrowNavigation","useArrowNavigation","childrenCount","onClose","listPosition","opacity","optionsListMaxHeight","setListPosition","setOpacity","useSelectPositionList","icon","useDetermineStatusIcon","useEffect","focus","vals","values","options","map","child","displayArray","option","find","props","label","fixed","syncDisplayValue","forEach","includes","selected","useBodyClick","event","target","closest","top","bottom","additionalClasses","push","onSelectButtonClick","Fragment","createElement","filterProps","tabIndex","multiple","readyclasses","onKeyDown","select","join","style","SelectButton","onClick","SelectedOptions","onRemove","dispatchEvent","Event","bubbles","Icon","Icons","ChevronUp","ChevronDown","maxHeight","wrapper","pointerEvents","role","list","filterOutSelectedChildren","internalChildren","results","_internalRenderChildren","toArray","toLowerCase","match","escapeRegExp","index","cloneElement","onFocusChange","childIndex","onOptionSelect","optionRef","optionElement","getAttribute","lastSelectedOptionValues","onOptionChangeHandler","isSearching","selectOpened","hasFocus","renderOptions"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var e=require("./Select.module.scss.cjs.js"),t=require("react"),s=require("../../../src/hooks/useBodyClick.cjs.js"),a=require("../../../src/hooks/useDetermineStatusIcon.cjs.js"),r=require("../../../src/readyclasses.module.scss.cjs.js"),n=require("../../../src/util/helper.cjs.js"),l=require("../../../Icon/Icon.cjs.js"),c=require("../useSelectPositionList.cjs.js"),o=require("../useAddNewBtn.cjs.js"),i=require("./useSearch.cjs.js"),u=require("./useArrowNavigation.cjs.js");const d=t.forwardRef((({children:d,name:p,disabled:h=!1,labeledBy:m,placeholder:f,describedBy:v,selectButtonProps:C,className:S,error:b=!1,success:E=!1,value:N,clearLabel:j="Clear selection",noResultsLabel:g="No results found",onChange:y,addNew:I,search:w,...x},R)=>{const[B,q]=t.useState(!1),[A,L]=t.useState(""),k=t.useRef(null),P=t.useRef(null),[F
|
|
1
|
+
"use strict";var e=require("./Select.module.scss.cjs.js"),t=require("react"),s=require("../../../src/hooks/useBodyClick.cjs.js"),a=require("../../../src/hooks/useDetermineStatusIcon.cjs.js"),r=require("../../../src/readyclasses.module.scss.cjs.js"),n=require("../../../src/util/helper.cjs.js"),l=require("../../../Icon/Icon.cjs.js"),c=require("../useSelectPositionList.cjs.js"),o=require("../useAddNewBtn.cjs.js"),i=require("./useSearch.cjs.js"),u=require("./useArrowNavigation.cjs.js");const d=t.forwardRef((({children:d,name:p,disabled:h=!1,labeledBy:m,placeholder:f,describedBy:v,selectButtonProps:C,className:S,error:b=!1,success:E=!1,value:N,clearLabel:j="Clear selection",noResultsLabel:g="No results found",onChange:y,addNew:I,search:w,...x},R)=>{const[B,q]=t.useState(!1),[A,L]=t.useState(""),k=t.useRef(null),P=t.useRef(null),[F,O]=t.useState(-1),[$,D]=t.useState(!1),[H,T]=t.useState(!1),K=t.Children.count(d),{filter:M,isSearching:U,renderSearch:V,searchInputRef:z,setIsSearching:G,searchThreshold:J,searchVisible:Q}=i.useSearch({expanded:B,search:w,searchInputClassName:e.default["select-search"],optionsCount:K,setFocusedSelectItem:O}),{addBtnRef:W,addNewBtnOptionsContainerClassName:X,renderAddNew:Y}=o.useAddNewBtn({addNew:I,filter:M,focusedSelectItem:F,optionsCount:K,searchInputRef:z}),Z=R||t.createRef(),_=e=>{Z.current&&e&&(Z.current.value=e.getAttribute("data-value"),Z.current.dispatchEvent(new Event("change",{bubbles:!0}))),q(!1)},ee=t.useRef(null),{onArrowNavigation:te}=u.useArrowNavigation({expanded:B,setExpanded:q,isSearching:U,setIsSearching:G,setFocusedSelectItem:O,onOptionChangeHandler:_,childrenCount:K,setShouldClick:D,searchInputRef:z,addBtnRef:W,renderThreshold:J}),{listPosition:se,opacity:ae,optionsListMaxHeight:re,setListPosition:ne,setOpacity:le}=c.useSelectPositionList({expanded:B,optionListReference:P,containerReference:k,addBtnRef:W}),ce=a.useDetermineStatusIcon({success:E,error:b});t.useEffect((()=>{B&&(O(0),T(!0)),!B&&ee.current&&H&&(ee.current.focus(),T(!1))}),[B,ee.current,H]),t.useEffect((()=>{var e;e=N,t.Children.forEach(d,(t=>{t.props.value===e&&L(t.props.children)}))}),[N]),s.useBodyClick((e=>!e.target.closest(".custom-select")&&B),(()=>{q(!1),ne({top:0,bottom:"initial"}),le(0)}),B);const oe=[];return B&&oe.push(e.default.expanded),b&&oe.push(e.default.error),h&&oe.push(e.default.disabled),S&&oe.push(S),E&&oe.push(e.default.success),t.createElement(t.Fragment,null,t.createElement("select",{...n.filterProps(x,/^data-/,!1),tabIndex:-1,"aria-hidden":"true",ref:Z,name:p,onChange:e=>{null==y||y(e)},className:r.default["sr-only"]},t.createElement("option",{value:""}),t.Children.map(d,(e=>t.createElement("option",{value:e.props.value})))),t.createElement("div",{...n.filterProps(x,/^data-/),ref:k,onKeyDown:te,className:`custom-select ${e.default.select} ${oe.join(" ")}`},Q&&V(),t.createElement("button",{...C,onClick:()=>{q(!B)},ref:ee,type:"button",name:p,className:`${e.default["custom-select"]} ${oe.join(" ")} `,style:{display:B&&Q?"none":"initial"},disabled:h,"aria-disabled":h,"aria-invalid":b,"aria-expanded":B,"aria-haspopup":"listbox","aria-labelledby":m,"aria-describedby":v},t.createElement("div",{"data-display":!0,className:e.default.selected},!N&&f&&t.createElement("span",{className:e.default.placeholder},f),(null==N?void 0:N.length)>0&&t.createElement("span",{"data-display-inner":!0},A)),t.createElement("div",{className:e.default.status},ce||(B?t.createElement(l.Icon,{className:e.default["chevron-icon"],icon:l.Icons.ChevronUp}):t.createElement(l.Icon,{className:e.default["chevron-icon"],icon:l.Icons.ChevronDown})))),t.createElement("div",{ref:P,className:`list-wrapper ${e.default["list-wrapper"]}`,style:{display:B?"block":"none",opacity:ae,maxHeight:re.wrapper,pointerEvents:B?"auto":"none",...se}},t.createElement("ul",{className:X,role:"listbox",style:{maxHeight:re.list}},(()=>{if(U||""!==M){const a=t.Children.toArray(d).filter((e=>null!==e.props.children.toLowerCase().match(M.toLowerCase())));return 0===s(a).length?t.createElement("li",{className:e.default["no-results"]},g):s(a)}return s(d);function s(e){return t.Children.map(e,((e,s)=>t.cloneElement(e,{onFocusChange:e=>{O(e)},onOptionSelect:e=>{_(e.current),D(!1)},isSelected:e.props.value===N,isSearching:U,selectOpened:B,childIndex:s,hasFocus:F===s,shouldClick:$,isAddBtnFocused:W.current===document.activeElement})))}})()),Y())))}));exports.Select=d;
|
|
2
2
|
//# sourceMappingURL=Select.cjs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Select.cjs.js","sources":["../../../../../../../src/components/Form/Select/SingleSelect/Select.tsx"],"sourcesContent":["/*\n * Copyright 2022 OneWelcome B.V.\n *\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 *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\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 classes from \"./Select.module.scss\";\n\nimport React, {\n createRef,\n ForwardRefRenderFunction,\n Fragment,\n ReactElement,\n useEffect,\n useRef,\n useState\n} from \"react\";\nimport { useBodyClick } from \"../../../../hooks/useBodyClick\";\nimport { useDetermineStatusIcon } from \"../../../../hooks/useDetermineStatusIcon\";\nimport readyclasses from \"../../../../readyclasses.module.scss\";\nimport { filterProps } from \"../../../../util/helper\";\nimport { Icon, Icons } from \"../../../Icon/Icon\";\nimport { SingleSelectProps } from \"../Select.interfaces\";\nimport { useSelectPositionList } from \"../useSelectPositionList\";\nimport { useAddNewBtn } from \"../useAddNewBtn\";\nimport { useSearch } from \"./useSearch\";\nimport { useArrowNavigation } from \"./useArrowNavigation\";\n\nconst SelectComponent: ForwardRefRenderFunction<HTMLSelectElement, SingleSelectProps> = (\n {\n children,\n name,\n disabled = false,\n labeledBy,\n placeholder,\n describedBy,\n selectButtonProps,\n className,\n error = false,\n success = false,\n value,\n clearLabel = \"Clear selection\",\n noResultsLabel = \"No results found\",\n onChange,\n addNew,\n search,\n ...rest\n }: SingleSelectProps,\n ref\n) => {\n const [expanded, setExpanded] = useState(false);\n const [display, setDisplay] = useState(\"\");\n const containerReference = useRef<HTMLDivElement>(null);\n const optionListReference = useRef<HTMLDivElement>(null);\n const [focusedSelectItem, setFocusedSelectItem] = useState(-1);\n const [shouldClick, setShouldClick] = useState(false);\n /** We need this, because whenever we use the arrow keys to select the select item, and we focus the currently selected item it fires the \"click\" listener in Option component. Instead, we only want this to fire if we press \"enter\" or \"spacebar\" so we set this to true whenever that is the case, and back to false when it has been executed. */\n const [shouldFocusButtonAfterClose, setShouldFocusButtonAfterClose] = useState(false);\n const optionsCount = React.Children.count(children);\n const {\n filter,\n isSearching,\n renderSearch,\n searchInputRef,\n setIsSearching,\n searchThreshold,\n searchVisible\n } = useSearch({\n expanded,\n search,\n searchInputClassName: classes[\"select-search\"],\n optionsCount,\n setFocusedSelectItem\n });\n const { addBtnRef, addNewBtnOptionsContainerClassName, renderAddNew } = useAddNewBtn({\n addNew,\n filter,\n focusedSelectItem,\n optionsCount,\n searchInputRef\n });\n\n const nativeSelect = (ref as React.RefObject<HTMLSelectElement>) || createRef();\n\n const onOptionChangeHandler = (optionElement: HTMLElement | null) => {\n if (nativeSelect.current && optionElement) {\n nativeSelect.current.value = optionElement.getAttribute(\"data-value\")!;\n nativeSelect.current.dispatchEvent(new Event(\"change\", { bubbles: true }));\n }\n\n setExpanded(false);\n };\n\n const customSelectButtonRef = useRef<HTMLButtonElement>(null);\n const { onArrowNavigation } = useArrowNavigation({\n expanded,\n setExpanded,\n isSearching,\n setIsSearching,\n setFocusedSelectItem,\n onOptionChangeHandler,\n childrenCount: optionsCount,\n setShouldClick,\n searchInputRef,\n addBtnRef,\n renderThreshold: searchThreshold\n });\n\n const { listPosition, opacity, optionsListMaxHeight, setListPosition, setOpacity } =\n useSelectPositionList({ expanded, optionListReference, containerReference, addBtnRef });\n\n const syncDisplayValue = (val: string) => {\n React.Children.forEach(children, child => {\n if (child.props.value === val) {\n setDisplay(child.props.children);\n }\n });\n };\n\n /**\n * @description We have to modify the children (Option component) to have an additional props that allows us to keep track of which one is selected and focused at all times and if a filter is active.\n * The `children` prop can be either a single object (1 child) or an array of multiple children.\n */\n const renderOptions = () => {\n if (isSearching || filter !== \"\") {\n const filteredChildren = React.Children.toArray(children).filter(\n child =>\n (child as ReactElement).props.children.toLowerCase().match(filter.toLowerCase()) !== null\n );\n\n const internalChildren = _internalRenderChildren(filteredChildren as ReactElement[]);\n\n if (internalChildren.length === 0) {\n return <li className={classes[\"no-results\"]}>{noResultsLabel}</li>;\n }\n\n return _internalRenderChildren(filteredChildren as ReactElement[]);\n }\n\n return _internalRenderChildren(children);\n\n function _internalRenderChildren(internalChildren: ReactElement[]) {\n return React.Children.map(internalChildren, (child, index) => {\n return React.cloneElement(child, {\n onFocusChange: (childIndex: number) => {\n setFocusedSelectItem(childIndex);\n },\n onOptionSelect: (optionRef: React.RefObject<HTMLLIElement>) => {\n onOptionChangeHandler(optionRef.current);\n setShouldClick(false);\n },\n isSelected: child.props.value === value,\n isSearching: isSearching,\n selectOpened: expanded,\n childIndex: index,\n hasFocus: focusedSelectItem === index,\n shouldClick: shouldClick,\n isAddBtnFocused: addBtnRef.current === document.activeElement\n });\n });\n }\n };\n\n const renderChevronIcon = () => {\n return expanded ? (\n <Icon className={classes[\"chevron-icon\"]} icon={Icons.ChevronUp} />\n ) : (\n <Icon className={classes[\"chevron-icon\"]} icon={Icons.ChevronDown} />\n );\n };\n\n const icon = useDetermineStatusIcon({ success, error });\n\n const nativeOnChangeHandler = (event: React.ChangeEvent<HTMLSelectElement>) => {\n onChange?.(event);\n };\n\n useEffect(() => {\n if (expanded) {\n setFocusedSelectItem(0);\n setShouldFocusButtonAfterClose(true);\n }\n\n if (!expanded && customSelectButtonRef.current && shouldFocusButtonAfterClose) {\n customSelectButtonRef.current.focus();\n setShouldFocusButtonAfterClose(false);\n }\n }, [expanded, customSelectButtonRef.current, shouldFocusButtonAfterClose]);\n\n useEffect(() => {\n syncDisplayValue(value);\n }, [value]);\n\n useBodyClick(\n (event: MouseEvent) => !(event.target as Element).closest(\".custom-select\") && expanded,\n () => {\n setExpanded(false);\n setListPosition({ top: 0, bottom: \"initial\" });\n setOpacity(0);\n },\n expanded\n );\n\n const additionalClasses = [];\n expanded && additionalClasses.push(classes.expanded);\n error && additionalClasses.push(classes.error);\n disabled && additionalClasses.push(classes.disabled);\n className && additionalClasses.push(className);\n success && additionalClasses.push(classes.success);\n\n /** The native select is purely for external form libraries. We use it to emit an onChange with native select event object so they know exactly what's happening. */\n return (\n <Fragment>\n <select\n {...filterProps(rest, /^data-/, false)}\n tabIndex={-1}\n aria-hidden=\"true\"\n ref={nativeSelect}\n name={name}\n onChange={nativeOnChangeHandler}\n className={readyclasses[\"sr-only\"]}\n >\n <option value=\"\"></option>\n {React.Children.map(children, child => (\n <option value={child.props.value}></option>\n ))}\n </select>\n <div\n {...filterProps(rest, /^data-/)}\n ref={containerReference}\n onKeyDown={onArrowNavigation}\n className={`custom-select ${classes.select} ${additionalClasses.join(\" \")} ${\n className ?? \"\"\n }`}\n >\n {searchVisible && renderSearch()}\n <button\n {...selectButtonProps}\n onClick={() => {\n setExpanded(!expanded);\n }}\n ref={customSelectButtonRef}\n type=\"button\"\n name={name}\n className={`${classes[\"custom-select\"]} ${additionalClasses.join(\" \")} `}\n style={{ display: expanded && searchVisible ? \"none\" : \"initial\" }}\n disabled={disabled}\n aria-disabled={disabled}\n aria-invalid={error}\n aria-expanded={expanded}\n aria-haspopup=\"listbox\"\n aria-labelledby={labeledBy}\n aria-describedby={describedBy}\n >\n <div data-display className={classes[\"selected\"]}>\n {!value && placeholder && <span className={classes[\"placeholder\"]}>{placeholder}</span>}\n {value?.length > 0 && <span data-display-inner>{display}</span>}\n </div>\n <div className={classes[\"status\"]}>{icon || renderChevronIcon()}</div>\n </button>\n\n <div\n ref={optionListReference}\n className={`list-wrapper ${classes[\"list-wrapper\"]}`}\n style={{\n display: expanded ? \"block\" : \"none\",\n opacity: opacity,\n maxHeight: optionsListMaxHeight.wrapper,\n pointerEvents: expanded ? \"auto\" : \"none\",\n ...listPosition\n }}\n >\n <ul\n className={addNewBtnOptionsContainerClassName}\n role=\"listbox\"\n style={{ maxHeight: optionsListMaxHeight.list }}\n >\n {renderOptions()}\n </ul>\n {renderAddNew()}\n </div>\n </div>\n </Fragment>\n );\n};\nexport const Select = React.forwardRef(SelectComponent);\n"],"names":["Select","React","forwardRef","children","name","disabled","labeledBy","placeholder","describedBy","selectButtonProps","className","error","success","value","clearLabel","noResultsLabel","onChange","addNew","search","rest","ref","expanded","setExpanded","useState","display","setDisplay","containerReference","useRef","optionListReference","focusedSelectItem","setFocusedSelectItem","shouldClick","setShouldClick","shouldFocusButtonAfterClose","setShouldFocusButtonAfterClose","optionsCount","Children","count","filter","isSearching","renderSearch","searchInputRef","setIsSearching","searchThreshold","searchVisible","useSearch","searchInputClassName","classes","default","addBtnRef","addNewBtnOptionsContainerClassName","renderAddNew","useAddNewBtn","nativeSelect","createRef","onOptionChangeHandler","optionElement","current","getAttribute","dispatchEvent","Event","bubbles","customSelectButtonRef","onArrowNavigation","useArrowNavigation","childrenCount","renderThreshold","listPosition","opacity","optionsListMaxHeight","setListPosition","setOpacity","useSelectPositionList","icon","useDetermineStatusIcon","useEffect","focus","val","forEach","child","props","useBodyClick","event","target","closest","top","bottom","additionalClasses","push","Fragment","createElement","filterProps","tabIndex","readyclasses","map","onKeyDown","select","join","onClick","type","style","length","Icon","Icons","ChevronUp","ChevronDown","maxHeight","wrapper","pointerEvents","role","list","filteredChildren","toArray","toLowerCase","match","_internalRenderChildren","internalChildren","index","cloneElement","onFocusChange","childIndex","onOptionSelect","optionRef","isSelected","selectOpened","hasFocus","isAddBtnFocused","document","activeElement","renderOptions"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Select.cjs.js","sources":["../../../../../../../src/components/Form/Select/SingleSelect/Select.tsx"],"sourcesContent":["/*\n * Copyright 2022 OneWelcome B.V.\n *\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 *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\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 classes from \"./Select.module.scss\";\n\nimport React, {\n createRef,\n ForwardRefRenderFunction,\n Fragment,\n ReactElement,\n useEffect,\n useRef,\n useState\n} from \"react\";\nimport { useBodyClick } from \"../../../../hooks/useBodyClick\";\nimport { useDetermineStatusIcon } from \"../../../../hooks/useDetermineStatusIcon\";\nimport readyclasses from \"../../../../readyclasses.module.scss\";\nimport { filterProps } from \"../../../../util/helper\";\nimport { Icon, Icons } from \"../../../Icon/Icon\";\nimport { SingleSelectProps } from \"../Select.interfaces\";\nimport { useSelectPositionList } from \"../useSelectPositionList\";\nimport { useAddNewBtn } from \"../useAddNewBtn\";\nimport { useSearch } from \"./useSearch\";\nimport { useArrowNavigation } from \"./useArrowNavigation\";\n\nconst SelectComponent: ForwardRefRenderFunction<HTMLSelectElement, SingleSelectProps> = (\n {\n children,\n name,\n disabled = false,\n labeledBy,\n placeholder,\n describedBy,\n selectButtonProps,\n className,\n error = false,\n success = false,\n value,\n clearLabel = \"Clear selection\",\n noResultsLabel = \"No results found\",\n onChange,\n addNew,\n search,\n ...rest\n }: SingleSelectProps,\n ref\n) => {\n const [expanded, setExpanded] = useState(false);\n const [display, setDisplay] = useState(\"\");\n const containerReference = useRef<HTMLDivElement>(null);\n const optionListReference = useRef<HTMLDivElement>(null);\n const [focusedSelectItem, setFocusedSelectItem] = useState(-1);\n const [shouldClick, setShouldClick] = useState(false);\n /** We need this, because whenever we use the arrow keys to select the select item, and we focus the currently selected item it fires the \"click\" listener in Option component. Instead, we only want this to fire if we press \"enter\" or \"spacebar\" so we set this to true whenever that is the case, and back to false when it has been executed. */\n const [shouldFocusButtonAfterClose, setShouldFocusButtonAfterClose] = useState(false);\n const optionsCount = React.Children.count(children);\n const {\n filter,\n isSearching,\n renderSearch,\n searchInputRef,\n setIsSearching,\n searchThreshold,\n searchVisible\n } = useSearch({\n expanded,\n search,\n searchInputClassName: classes[\"select-search\"],\n optionsCount,\n setFocusedSelectItem\n });\n const { addBtnRef, addNewBtnOptionsContainerClassName, renderAddNew } = useAddNewBtn({\n addNew,\n filter,\n focusedSelectItem,\n optionsCount,\n searchInputRef\n });\n\n const nativeSelect = (ref as React.RefObject<HTMLSelectElement>) || createRef();\n\n const onOptionChangeHandler = (optionElement: HTMLElement | null) => {\n if (nativeSelect.current && optionElement) {\n nativeSelect.current.value = optionElement.getAttribute(\"data-value\")!;\n nativeSelect.current.dispatchEvent(new Event(\"change\", { bubbles: true }));\n }\n\n setExpanded(false);\n };\n\n const customSelectButtonRef = useRef<HTMLButtonElement>(null);\n const { onArrowNavigation } = useArrowNavigation({\n expanded,\n setExpanded,\n isSearching,\n setIsSearching,\n setFocusedSelectItem,\n onOptionChangeHandler,\n childrenCount: optionsCount,\n setShouldClick,\n searchInputRef,\n addBtnRef,\n renderThreshold: searchThreshold\n });\n\n const { listPosition, opacity, optionsListMaxHeight, setListPosition, setOpacity } =\n useSelectPositionList({ expanded, optionListReference, containerReference, addBtnRef });\n\n const syncDisplayValue = (val: string) => {\n React.Children.forEach(children, child => {\n if (child.props.value === val) {\n setDisplay(child.props.children);\n }\n });\n };\n\n /**\n * @description We have to modify the children (Option component) to have an additional props that allows us to keep track of which one is selected and focused at all times and if a filter is active.\n * The `children` prop can be either a single object (1 child) or an array of multiple children.\n */\n const renderOptions = () => {\n if (isSearching || filter !== \"\") {\n const filteredChildren = React.Children.toArray(children).filter(\n child =>\n (child as ReactElement).props.children.toLowerCase().match(filter.toLowerCase()) !== null\n );\n\n const internalChildren = _internalRenderChildren(filteredChildren as ReactElement[]);\n\n if (internalChildren.length === 0) {\n return <li className={classes[\"no-results\"]}>{noResultsLabel}</li>;\n }\n\n return _internalRenderChildren(filteredChildren as ReactElement[]);\n }\n\n return _internalRenderChildren(children);\n\n function _internalRenderChildren(internalChildren: ReactElement[]) {\n return React.Children.map(internalChildren, (child, index) => {\n return React.cloneElement(child, {\n onFocusChange: (childIndex: number) => {\n setFocusedSelectItem(childIndex);\n },\n onOptionSelect: (optionRef: React.RefObject<HTMLLIElement>) => {\n onOptionChangeHandler(optionRef.current);\n setShouldClick(false);\n },\n isSelected: child.props.value === value,\n isSearching: isSearching,\n selectOpened: expanded,\n childIndex: index,\n hasFocus: focusedSelectItem === index,\n shouldClick: shouldClick,\n isAddBtnFocused: addBtnRef.current === document.activeElement\n });\n });\n }\n };\n\n const renderChevronIcon = () => {\n return expanded ? (\n <Icon className={classes[\"chevron-icon\"]} icon={Icons.ChevronUp} />\n ) : (\n <Icon className={classes[\"chevron-icon\"]} icon={Icons.ChevronDown} />\n );\n };\n\n const icon = useDetermineStatusIcon({ success, error });\n\n const nativeOnChangeHandler = (event: React.ChangeEvent<HTMLSelectElement>) => {\n onChange?.(event);\n };\n\n useEffect(() => {\n if (expanded) {\n setFocusedSelectItem(0);\n setShouldFocusButtonAfterClose(true);\n }\n\n if (!expanded && customSelectButtonRef.current && shouldFocusButtonAfterClose) {\n customSelectButtonRef.current.focus();\n setShouldFocusButtonAfterClose(false);\n }\n }, [expanded, customSelectButtonRef.current, shouldFocusButtonAfterClose]);\n\n useEffect(() => {\n syncDisplayValue(value);\n }, [value]);\n\n useBodyClick(\n (event: MouseEvent) => !(event.target as Element).closest(\".custom-select\") && expanded,\n () => {\n setExpanded(false);\n setListPosition({ top: 0, bottom: \"initial\" });\n setOpacity(0);\n },\n expanded\n );\n\n const additionalClasses = [];\n expanded && additionalClasses.push(classes.expanded);\n error && additionalClasses.push(classes.error);\n disabled && additionalClasses.push(classes.disabled);\n className && additionalClasses.push(className);\n success && additionalClasses.push(classes.success);\n\n /** The native select is purely for external form libraries. We use it to emit an onChange with native select event object so they know exactly what's happening. */\n return (\n <Fragment>\n <select\n {...filterProps(rest, /^data-/, false)}\n tabIndex={-1}\n aria-hidden=\"true\"\n ref={nativeSelect}\n name={name}\n onChange={nativeOnChangeHandler}\n className={readyclasses[\"sr-only\"]}\n >\n <option value=\"\"></option>\n {React.Children.map(children, child => (\n <option value={child.props.value}></option>\n ))}\n </select>\n <div\n {...filterProps(rest, /^data-/)}\n ref={containerReference}\n onKeyDown={onArrowNavigation}\n className={`custom-select ${classes.select} ${additionalClasses.join(\" \")}`}\n >\n {searchVisible && renderSearch()}\n <button\n {...selectButtonProps}\n onClick={() => {\n setExpanded(!expanded);\n }}\n ref={customSelectButtonRef}\n type=\"button\"\n name={name}\n className={`${classes[\"custom-select\"]} ${additionalClasses.join(\" \")} `}\n style={{ display: expanded && searchVisible ? \"none\" : \"initial\" }}\n disabled={disabled}\n aria-disabled={disabled}\n aria-invalid={error}\n aria-expanded={expanded}\n aria-haspopup=\"listbox\"\n aria-labelledby={labeledBy}\n aria-describedby={describedBy}\n >\n <div data-display className={classes[\"selected\"]}>\n {!value && placeholder && <span className={classes[\"placeholder\"]}>{placeholder}</span>}\n {value?.length > 0 && <span data-display-inner>{display}</span>}\n </div>\n <div className={classes[\"status\"]}>{icon || renderChevronIcon()}</div>\n </button>\n\n <div\n ref={optionListReference}\n className={`list-wrapper ${classes[\"list-wrapper\"]}`}\n style={{\n display: expanded ? \"block\" : \"none\",\n opacity: opacity,\n maxHeight: optionsListMaxHeight.wrapper,\n pointerEvents: expanded ? \"auto\" : \"none\",\n ...listPosition\n }}\n >\n <ul\n className={addNewBtnOptionsContainerClassName}\n role=\"listbox\"\n style={{ maxHeight: optionsListMaxHeight.list }}\n >\n {renderOptions()}\n </ul>\n {renderAddNew()}\n </div>\n </div>\n </Fragment>\n );\n};\nexport const Select = React.forwardRef(SelectComponent);\n"],"names":["Select","React","forwardRef","children","name","disabled","labeledBy","placeholder","describedBy","selectButtonProps","className","error","success","value","clearLabel","noResultsLabel","onChange","addNew","search","rest","ref","expanded","setExpanded","useState","display","setDisplay","containerReference","useRef","optionListReference","focusedSelectItem","setFocusedSelectItem","shouldClick","setShouldClick","shouldFocusButtonAfterClose","setShouldFocusButtonAfterClose","optionsCount","Children","count","filter","isSearching","renderSearch","searchInputRef","setIsSearching","searchThreshold","searchVisible","useSearch","searchInputClassName","classes","default","addBtnRef","addNewBtnOptionsContainerClassName","renderAddNew","useAddNewBtn","nativeSelect","createRef","onOptionChangeHandler","optionElement","current","getAttribute","dispatchEvent","Event","bubbles","customSelectButtonRef","onArrowNavigation","useArrowNavigation","childrenCount","renderThreshold","listPosition","opacity","optionsListMaxHeight","setListPosition","setOpacity","useSelectPositionList","icon","useDetermineStatusIcon","useEffect","focus","val","forEach","child","props","useBodyClick","event","target","closest","top","bottom","additionalClasses","push","Fragment","createElement","filterProps","tabIndex","readyclasses","map","onKeyDown","select","join","onClick","type","style","length","Icon","Icons","ChevronUp","ChevronDown","maxHeight","wrapper","pointerEvents","role","list","filteredChildren","toArray","toLowerCase","match","_internalRenderChildren","internalChildren","index","cloneElement","onFocusChange","childIndex","onOptionSelect","optionRef","isSelected","selectOpened","hasFocus","isAddBtnFocused","document","activeElement","renderOptions"],"mappings":"ueAsCA,MA+PaA,EAASC,EAAMC,YA/P4D,EAEpFC,WACAC,OACAC,YAAW,EACXC,YACAC,cACAC,cACAC,oBACAC,YACAC,SAAQ,EACRC,WAAU,EACVC,QACAC,aAAa,kBACbC,iBAAiB,mBACjBC,WACAC,SACAC,YACGC,GAELC,KAEA,MAAOC,EAAUC,GAAeC,EAAQA,UAAC,IAClCC,EAASC,GAAcF,EAAQA,SAAC,IACjCG,EAAqBC,SAAuB,MAC5CC,EAAsBD,SAAuB,OAC5CE,EAAmBC,GAAwBP,EAAAA,UAAU,IACrDQ,EAAaC,GAAkBT,EAAQA,UAAC,IAExCU,EAA6BC,GAAkCX,EAAQA,UAAC,GACzEY,EAAelC,EAAMmC,SAASC,MAAMlC,IACpCmC,OACJA,EAAMC,YACNA,EAAWC,aACXA,EAAYC,eACZA,EAAcC,eACdA,EAAcC,gBACdA,EAAeC,cACfA,GACEC,YAAU,CACZxB,WACAH,SACA4B,qBAAsBC,EAAOC,QAAC,iBAC9Bb,eACAL,0BAEImB,UAAEA,EAASC,mCAAEA,EAAkCC,aAAEA,GAAiBC,EAAAA,aAAa,CACnFnC,SACAqB,SACAT,oBACAM,eACAM,mBAGIY,EAAgBjC,GAA8CkC,EAAAA,YAE9DC,EAAyBC,IACzBH,EAAaI,SAAWD,IAC1BH,EAAaI,QAAQ5C,MAAQ2C,EAAcE,aAAa,cACxDL,EAAaI,QAAQE,cAAc,IAAIC,MAAM,SAAU,CAAEC,SAAS,MAGpEvC,GAAY,EAAM,EAGdwC,GAAwBnC,SAA0B,OAClDoC,kBAAEA,IAAsBC,qBAAmB,CAC/C3C,WACAC,cACAiB,cACAG,iBACAZ,uBACAyB,wBACAU,cAAe9B,EACfH,iBACAS,iBACAQ,YACAiB,gBAAiBvB,KAGbwB,aAAEA,GAAYC,QAAEA,GAAOC,qBAAEA,GAAoBC,gBAAEA,GAAeC,WAAEA,IACpEC,EAAqBA,sBAAC,CAAEnD,WAAUO,sBAAqBF,qBAAoBuB,cA8DvEwB,GAAOC,EAAsBA,uBAAC,CAAE9D,UAASD,UAM/CgE,EAAAA,WAAU,KACJtD,IACFS,EAAqB,GACrBI,GAA+B,KAG5Bb,GAAYyC,GAAsBL,SAAWxB,IAChD6B,GAAsBL,QAAQmB,QAC9B1C,GAA+B,GAChC,GACA,CAACb,EAAUyC,GAAsBL,QAASxB,IAE7C0C,EAAAA,WAAU,KA9Ee,IAACE,IA+EPhE,EA9EjBZ,EAAMmC,SAAS0C,QAAQ3E,GAAU4E,IAC3BA,EAAMC,MAAMnE,QAAUgE,GACxBpD,EAAWsD,EAAMC,MAAM7E,SACxB,GA2EoB,GACtB,CAACU,IAEJoE,gBACGC,IAAwBA,EAAMC,OAAmBC,QAAQ,mBAAqB/D,IAC/E,KACEC,GAAY,GACZgD,GAAgB,CAAEe,IAAK,EAAGC,OAAQ,YAClCf,GAAW,EAAE,GAEflD,GAGF,MAAMkE,GAAoB,GAQ1B,OAPAlE,GAAYkE,GAAkBC,KAAKzC,EAAOC,QAAC3B,UAC3CV,GAAS4E,GAAkBC,KAAKzC,EAAOC,QAACrC,OACxCN,GAAYkF,GAAkBC,KAAKzC,EAAOC,QAAC3C,UAC3CK,GAAa6E,GAAkBC,KAAK9E,GACpCE,GAAW2E,GAAkBC,KAAKzC,EAAOC,QAACpC,SAIxCX,gBAACwF,EAAAA,SAAQ,KACPxF,EAAAyF,cAAA,SAAA,IACMC,EAAWA,YAACxE,EAAM,UAAU,GAChCyE,UAAW,gBACC,OACZxE,IAAKiC,EACLjD,KAAMA,EACNY,SA9CyBkE,IAC7BlE,SAAAA,EAAWkE,EAAM,EA8CbxE,UAAWmF,UAAa,YAExB5F,EAAQyF,cAAA,SAAA,CAAA7E,MAAM,KACbZ,EAAMmC,SAAS0D,IAAI3F,GAAU4E,GAC5B9E,EAAQyF,cAAA,SAAA,CAAA7E,MAAOkE,EAAMC,MAAMnE,WAG/BZ,EAAAyF,cAAA,MAAA,IACMC,EAAAA,YAAYxE,EAAM,UACtBC,IAAKM,EACLqE,UAAWhC,GACXrD,UAAW,iBAAiBqC,EAAAA,QAAQiD,UAAUT,GAAkBU,KAAK,QAEpErD,GAAiBJ,IAClBvC,EAAAyF,cAAA,SAAA,IACMjF,EACJyF,QAAS,KACP5E,GAAaD,EAAS,EAExBD,IAAK0C,GACLqC,KAAK,SACL/F,KAAMA,EACNM,UAAW,GAAGqC,EAAOC,QAAC,oBAAoBuC,GAAkBU,KAAK,QACjEG,MAAO,CAAE5E,QAASH,GAAYuB,EAAgB,OAAS,WACvDvC,SAAUA,EACK,gBAAAA,EACD,eAAAM,EACC,gBAAAU,EACD,gBAAA,UACG,kBAAAf,qBACCE,GAElBP,EAAAyF,cAAA,MAAA,CAAA,gBAAA,EAAkBhF,UAAWqC,UAAkB,WAC3ClC,GAASN,GAAeN,EAAMyF,cAAA,OAAA,CAAAhF,UAAWqC,EAAOC,QAAc,aAAIzC,IACnEM,aAAK,EAALA,EAAOwF,QAAS,GAAKpG,EAA0ByF,cAAA,OAAA,CAAA,sBAAA,GAAAlE,IAElDvB,EAAAyF,cAAA,MAAA,CAAKhF,UAAWqC,EAAAA,QAAgB,QAAI0B,KA5FnCpD,EACLpB,EAAAyF,cAACY,OAAK,CAAA5F,UAAWqC,EAAAA,QAAQ,gBAAiB0B,KAAM8B,EAAKA,MAACC,YAEtDvG,EAAAyF,cAACY,OAAK,CAAA5F,UAAWqC,EAAOC,QAAC,gBAAiByB,KAAM8B,EAAAA,MAAME,iBA4FpDxG,EAAAyF,cAAA,MAAA,CACEtE,IAAKQ,EACLlB,UAAW,gBAAgBqC,EAAAA,QAAQ,kBACnCqD,MAAO,CACL5E,QAASH,EAAW,QAAU,OAC9B+C,QAASA,GACTsC,UAAWrC,GAAqBsC,QAChCC,cAAevF,EAAW,OAAS,UAChC8C,KAGLlE,EACEyF,cAAA,KAAA,CAAAhF,UAAWwC,EACX2D,KAAK,UACLT,MAAO,CAAEM,UAAWrC,GAAqByC,OAtJ7B,MACpB,GAAIvE,GAA0B,KAAXD,EAAe,CAChC,MAAMyE,EAAmB9G,EAAMmC,SAAS4E,QAAQ7G,GAAUmC,QACxDyC,GACuF,OAApFA,EAAuBC,MAAM7E,SAAS8G,cAAcC,MAAM5E,EAAO2E,iBAKtE,OAAgC,IAFPE,EAAwBJ,GAE5BV,OACZpG,EAAAyF,cAAA,KAAA,CAAIhF,UAAWqC,EAAAA,QAAQ,eAAgBhC,GAGzCoG,EAAwBJ,EAChC,CAED,OAAOI,EAAwBhH,GAE/B,SAASgH,EAAwBC,GAC/B,OAAOnH,EAAMmC,SAAS0D,IAAIsB,GAAkB,CAACrC,EAAOsC,IAC3CpH,EAAMqH,aAAavC,EAAO,CAC/BwC,cAAgBC,IACd1F,EAAqB0F,EAAW,EAElCC,eAAiBC,IACfnE,EAAsBmE,EAAUjE,SAChCzB,GAAe,EAAM,EAEvB2F,WAAY5C,EAAMC,MAAMnE,QAAUA,EAClC0B,YAAaA,EACbqF,aAAcvG,EACdmG,WAAYH,EACZQ,SAAUhG,IAAsBwF,EAChCtF,YAAaA,EACb+F,gBAAiB7E,EAAUQ,UAAYsE,SAASC,iBAGrD,GAmHQC,IAEF9E,MAIP"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var e,l=require("react"),r=require("./Icon.module.scss.cjs.js");exports.Icons=void 0,(e=exports.Icons||(exports.Icons={})).Bell="bell",e.BellAlt="bell-alt",e.Bookmark="bookmark",e.BookmarkAlt="bookmark-alt",e.Build="build",e.Calendar="calendar",e.Change="change",e.Checkmark="checkmark",e.CheckmarkCircle="checkmark-circle",e.CheckmarkCircleAlt="checkmark-circle-alt",e.CheckmarkCircleBreakout="checkmark-circle-breakout",e.CheckmarkSquare="checkmark-square",e.ChevronUp="chevron-up",e.ChevronDown="chevron-down",e.ChevronLeft="chevron-left",e.ChevronRight="chevron-right",e.Circle="circle",e.Clock="clock",e.Copy="copy",e.Edit="edit",e.Ellipsis="ellipsis",e.EllipsisAlt="ellipsis-alt",e.Equal="equal",e.Error="error-circle",e.ErrorAlt="error-circle-alt",e.Eye="eye",e.EyeBlocked="eye-blocked",e.Filter="filter",e.FilterAlt="filter-alt",e.FilterAltArrow="filter-alt-arrow",e.FilterAltTimes="filter-alt-times",e.Forbidden="forbidden",e.Fullscreen="fullscreen",e.FullscreenExit="fullscreen-exit",e.Gearwheel="gearwheel",e.Grid="grid",e.Hamburger="hamburger",e.HomeFilled="home-filled",e.Heart="heart",e.Image="image",e.InfoBell="info-bell",e.InfoCircle="info-circle",e.Link="link",e.MinusSquare="minus-square",e.NavigationFirst="navigation-first",e.NavigationLast="navigation-last",e.Plus="plus",e.Radio="radio",e.Refresh="refresh",e.Search="search",e.Share="share",e.Square="square",e.Star="star",e.StarAlt="star-alt",e.TableSearch="table-search",e.Times="times",e.TimesCircle="times-circle",e.TimesCircleAlt="times-circle-alt",e.TimesThin="times-thin",e.Trash="trash",e.TriangleDown="triangle-down",e.TriangleDownCircle="triangle-down-circle",e.TriangleLeft="triangle-left",e.TriangleRight="triangle-right",e.TriangleUp="triangle-up",e.Undo="undo",e.Warning="warning",e.WarningFilled="warning-filled",e.FileOutline="file-outline",e.FileUpload="file-upload-outline",e.FileDownload="file-download-outline",e.UploadOutline="upload-outline",e.ReplyOutline="reply-outline",e.SaveOutline="save-outline",e.DownloadFile="download-file-outline",e.RetryFile="retry",e.AbortFile="cancel",e.FileAltIcon="file-alt",e.AddCircle="add-circle",e.ZoomIn="zoom-in",e.ZoomOut="zoom-out";const i=l.forwardRef((({icon:e,color:i,className:a,style:
|
|
1
|
+
"use strict";var e,l=require("react"),r=require("./Icon.module.scss.cjs.js");exports.Icons=void 0,(e=exports.Icons||(exports.Icons={})).Bell="bell",e.BellAlt="bell-alt",e.Bookmark="bookmark",e.BookmarkAlt="bookmark-alt",e.Build="build",e.Calendar="calendar",e.Change="change",e.Checkmark="checkmark",e.CheckmarkCircle="checkmark-circle",e.CheckmarkCircleAlt="checkmark-circle-alt",e.CheckmarkCircleBreakout="checkmark-circle-breakout",e.CheckmarkSquare="checkmark-square",e.ChevronUp="chevron-up",e.ChevronDown="chevron-down",e.ChevronLeft="chevron-left",e.ChevronRight="chevron-right",e.Circle="circle",e.Clock="clock",e.Copy="copy",e.Edit="edit",e.Ellipsis="ellipsis",e.EllipsisAlt="ellipsis-alt",e.Equal="equal",e.Error="error-circle",e.ErrorAlt="error-circle-alt",e.Eye="eye",e.EyeBlocked="eye-blocked",e.Filter="filter",e.FilterAlt="filter-alt",e.FilterAltArrow="filter-alt-arrow",e.FilterAltTimes="filter-alt-times",e.Forbidden="forbidden",e.Fullscreen="fullscreen",e.FullscreenExit="fullscreen-exit",e.Gearwheel="gearwheel",e.Grid="grid",e.Hamburger="hamburger",e.HomeFilled="home-filled",e.Heart="heart",e.Image="image",e.InfoBell="info-bell",e.InfoCircle="info-circle",e.Link="link",e.MinusSquare="minus-square",e.NavigationFirst="navigation-first",e.NavigationLast="navigation-last",e.Plus="plus",e.Radio="radio",e.Refresh="refresh",e.Search="search",e.Share="share",e.Square="square",e.Star="star",e.StarAlt="star-alt",e.TableSearch="table-search",e.Times="times",e.TimesCircle="times-circle",e.TimesCircleAlt="times-circle-alt",e.TimesThin="times-thin",e.Trash="trash",e.TriangleDown="triangle-down",e.TriangleDownCircle="triangle-down-circle",e.TriangleLeft="triangle-left",e.TriangleRight="triangle-right",e.TriangleUp="triangle-up",e.Undo="undo",e.Warning="warning",e.WarningFilled="warning-filled",e.FileOutline="file-outline",e.FileUpload="file-upload-outline",e.FileDownload="file-download-outline",e.UploadOutline="upload-outline",e.ReplyOutline="reply-outline",e.SaveOutline="save-outline",e.DownloadFile="download-file-outline",e.RetryFile="retry",e.AbortFile="cancel",e.FileAltIcon="file-alt",e.AddCircle="add-circle",e.ZoomIn="zoom-in",e.ZoomOut="zoom-out",e.ArrowUp="arrow-up";const i=l.forwardRef((({icon:e,color:i,className:a,style:o,size:t,tag:n="span",...c},s)=>{const u=n;return l.createElement(u,{...c,ref:s,style:{color:i,...o,fontSize:t},"data-icon":!0,"aria-hidden":"true",className:`${r.default.icon} ${r.default["icon-"+e]} ${a||""}`})}));exports.Icon=i;
|
|
2
2
|
//# sourceMappingURL=Icon.cjs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Icon.cjs.js","sources":["../../../../../src/components/Icon/Icon.tsx"],"sourcesContent":["/*\n * Copyright 2022 OneWelcome B.V.\n *\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 *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\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, { ForwardRefRenderFunction, ComponentPropsWithRef } from \"react\";\nimport classes from \"./Icon.module.scss\";\n\nexport enum Icons {\n Bell = \"bell\",\n BellAlt = \"bell-alt\",\n Bookmark = \"bookmark\",\n BookmarkAlt = \"bookmark-alt\",\n Build = \"build\",\n Calendar = \"calendar\",\n Change = \"change\",\n Checkmark = \"checkmark\",\n CheckmarkCircle = \"checkmark-circle\",\n CheckmarkCircleAlt = \"checkmark-circle-alt\",\n CheckmarkCircleBreakout = \"checkmark-circle-breakout\",\n CheckmarkSquare = \"checkmark-square\",\n ChevronUp = \"chevron-up\",\n ChevronDown = \"chevron-down\",\n ChevronLeft = \"chevron-left\",\n ChevronRight = \"chevron-right\",\n Circle = \"circle\",\n Clock = \"clock\",\n Copy = \"copy\",\n Edit = \"edit\",\n Ellipsis = \"ellipsis\",\n EllipsisAlt = \"ellipsis-alt\",\n Equal = \"equal\",\n Error = \"error-circle\",\n ErrorAlt = \"error-circle-alt\",\n Eye = \"eye\",\n EyeBlocked = \"eye-blocked\",\n Filter = \"filter\",\n FilterAlt = \"filter-alt\",\n FilterAltArrow = \"filter-alt-arrow\",\n FilterAltTimes = \"filter-alt-times\",\n Forbidden = \"forbidden\",\n Fullscreen = \"fullscreen\",\n FullscreenExit = \"fullscreen-exit\",\n Gearwheel = \"gearwheel\",\n Grid = \"grid\",\n Hamburger = \"hamburger\",\n HomeFilled = \"home-filled\",\n Heart = \"heart\",\n Image = \"image\",\n InfoBell = \"info-bell\",\n InfoCircle = \"info-circle\",\n Link = \"link\",\n MinusSquare = \"minus-square\",\n NavigationFirst = \"navigation-first\",\n NavigationLast = \"navigation-last\",\n Plus = \"plus\",\n Radio = \"radio\",\n Refresh = \"refresh\",\n Search = \"search\",\n Share = \"share\",\n Square = \"square\",\n Star = \"star\",\n StarAlt = \"star-alt\",\n TableSearch = \"table-search\",\n Times = \"times\",\n TimesCircle = \"times-circle\",\n TimesCircleAlt = \"times-circle-alt\",\n TimesThin = \"times-thin\",\n Trash = \"trash\",\n TriangleDown = \"triangle-down\",\n TriangleDownCircle = \"triangle-down-circle\",\n TriangleLeft = \"triangle-left\",\n TriangleRight = \"triangle-right\",\n TriangleUp = \"triangle-up\",\n Undo = \"undo\",\n Warning = \"warning\",\n WarningFilled = \"warning-filled\",\n FileOutline = \"file-outline\",\n FileUpload = \"file-upload-outline\",\n FileDownload = \"file-download-outline\",\n UploadOutline = \"upload-outline\",\n ReplyOutline = \"reply-outline\",\n SaveOutline = \"save-outline\",\n DownloadFile = \"download-file-outline\",\n RetryFile = \"retry\",\n AbortFile = \"cancel\",\n FileAltIcon = \"file-alt\",\n AddCircle = \"add-circle\",\n ZoomIn = \"zoom-in\",\n ZoomOut = \"zoom-out\"\n}\n\ntype Tag = \"span\" | \"div\" | \"i\";\n\nexport interface Props extends ComponentPropsWithRef<\"div\"> {\n icon: Icons;\n color?: string;\n size?: string;\n tag?: Tag;\n}\n\nconst IconComponent: ForwardRefRenderFunction<HTMLDivElement, Props> = (\n { icon, color, className, style, size, tag = \"span\", ...rest }: Props,\n ref\n) => {\n const Component = tag;\n\n return (\n <Component\n {...rest}\n ref={ref}\n style={{ color: color, ...style, fontSize: size }}\n data-icon\n aria-hidden=\"true\"\n className={`${classes[\"icon\"]} ${classes[\"icon-\" + icon]} ${className ? className : \"\"}`}\n />\n );\n};\n\nexport const Icon = React.forwardRef(IconComponent);\n"],"names":["Icons","Icon","React","forwardRef","icon","color","className","style","size","tag","rest","ref","Component","createElement","fontSize","classes","default"],"mappings":"iBAmBYA,4DAAAA,
|
|
1
|
+
{"version":3,"file":"Icon.cjs.js","sources":["../../../../../src/components/Icon/Icon.tsx"],"sourcesContent":["/*\n * Copyright 2022 OneWelcome B.V.\n *\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 *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\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, { ForwardRefRenderFunction, ComponentPropsWithRef } from \"react\";\nimport classes from \"./Icon.module.scss\";\n\nexport enum Icons {\n Bell = \"bell\",\n BellAlt = \"bell-alt\",\n Bookmark = \"bookmark\",\n BookmarkAlt = \"bookmark-alt\",\n Build = \"build\",\n Calendar = \"calendar\",\n Change = \"change\",\n Checkmark = \"checkmark\",\n CheckmarkCircle = \"checkmark-circle\",\n CheckmarkCircleAlt = \"checkmark-circle-alt\",\n CheckmarkCircleBreakout = \"checkmark-circle-breakout\",\n CheckmarkSquare = \"checkmark-square\",\n ChevronUp = \"chevron-up\",\n ChevronDown = \"chevron-down\",\n ChevronLeft = \"chevron-left\",\n ChevronRight = \"chevron-right\",\n Circle = \"circle\",\n Clock = \"clock\",\n Copy = \"copy\",\n Edit = \"edit\",\n Ellipsis = \"ellipsis\",\n EllipsisAlt = \"ellipsis-alt\",\n Equal = \"equal\",\n Error = \"error-circle\",\n ErrorAlt = \"error-circle-alt\",\n Eye = \"eye\",\n EyeBlocked = \"eye-blocked\",\n Filter = \"filter\",\n FilterAlt = \"filter-alt\",\n FilterAltArrow = \"filter-alt-arrow\",\n FilterAltTimes = \"filter-alt-times\",\n Forbidden = \"forbidden\",\n Fullscreen = \"fullscreen\",\n FullscreenExit = \"fullscreen-exit\",\n Gearwheel = \"gearwheel\",\n Grid = \"grid\",\n Hamburger = \"hamburger\",\n HomeFilled = \"home-filled\",\n Heart = \"heart\",\n Image = \"image\",\n InfoBell = \"info-bell\",\n InfoCircle = \"info-circle\",\n Link = \"link\",\n MinusSquare = \"minus-square\",\n NavigationFirst = \"navigation-first\",\n NavigationLast = \"navigation-last\",\n Plus = \"plus\",\n Radio = \"radio\",\n Refresh = \"refresh\",\n Search = \"search\",\n Share = \"share\",\n Square = \"square\",\n Star = \"star\",\n StarAlt = \"star-alt\",\n TableSearch = \"table-search\",\n Times = \"times\",\n TimesCircle = \"times-circle\",\n TimesCircleAlt = \"times-circle-alt\",\n TimesThin = \"times-thin\",\n Trash = \"trash\",\n TriangleDown = \"triangle-down\",\n TriangleDownCircle = \"triangle-down-circle\",\n TriangleLeft = \"triangle-left\",\n TriangleRight = \"triangle-right\",\n TriangleUp = \"triangle-up\",\n Undo = \"undo\",\n Warning = \"warning\",\n WarningFilled = \"warning-filled\",\n FileOutline = \"file-outline\",\n FileUpload = \"file-upload-outline\",\n FileDownload = \"file-download-outline\",\n UploadOutline = \"upload-outline\",\n ReplyOutline = \"reply-outline\",\n SaveOutline = \"save-outline\",\n DownloadFile = \"download-file-outline\",\n RetryFile = \"retry\",\n AbortFile = \"cancel\",\n FileAltIcon = \"file-alt\",\n AddCircle = \"add-circle\",\n ZoomIn = \"zoom-in\",\n ZoomOut = \"zoom-out\",\n ArrowUp = \"arrow-up\"\n}\n\ntype Tag = \"span\" | \"div\" | \"i\";\n\nexport interface Props extends ComponentPropsWithRef<\"div\"> {\n icon: Icons;\n color?: string;\n size?: string;\n tag?: Tag;\n}\n\nconst IconComponent: ForwardRefRenderFunction<HTMLDivElement, Props> = (\n { icon, color, className, style, size, tag = \"span\", ...rest }: Props,\n ref\n) => {\n const Component = tag;\n\n return (\n <Component\n {...rest}\n ref={ref}\n style={{ color: color, ...style, fontSize: size }}\n data-icon\n aria-hidden=\"true\"\n className={`${classes[\"icon\"]} ${classes[\"icon-\" + icon]} ${className ? className : \"\"}`}\n />\n );\n};\n\nexport const Icon = React.forwardRef(IconComponent);\n"],"names":["Icons","Icon","React","forwardRef","icon","color","className","style","size","tag","rest","ref","Component","createElement","fontSize","classes","default"],"mappings":"iBAmBYA,4DAAAA,QAmFXA,WAAA,GAnFWA,EAAAA,gBAAAA,QAAAA,MAmFX,CAAA,IAlFC,KAAA,OACAA,EAAA,QAAA,WACAA,EAAA,SAAA,WACAA,EAAA,YAAA,eACAA,EAAA,MAAA,QACAA,EAAA,SAAA,WACAA,EAAA,OAAA,SACAA,EAAA,UAAA,YACAA,EAAA,gBAAA,mBACAA,EAAA,mBAAA,uBACAA,EAAA,wBAAA,4BACAA,EAAA,gBAAA,mBACAA,EAAA,UAAA,aACAA,EAAA,YAAA,eACAA,EAAA,YAAA,eACAA,EAAA,aAAA,gBACAA,EAAA,OAAA,SACAA,EAAA,MAAA,QACAA,EAAA,KAAA,OACAA,EAAA,KAAA,OACAA,EAAA,SAAA,WACAA,EAAA,YAAA,eACAA,EAAA,MAAA,QACAA,EAAA,MAAA,eACAA,EAAA,SAAA,mBACAA,EAAA,IAAA,MACAA,EAAA,WAAA,cACAA,EAAA,OAAA,SACAA,EAAA,UAAA,aACAA,EAAA,eAAA,mBACAA,EAAA,eAAA,mBACAA,EAAA,UAAA,YACAA,EAAA,WAAA,aACAA,EAAA,eAAA,kBACAA,EAAA,UAAA,YACAA,EAAA,KAAA,OACAA,EAAA,UAAA,YACAA,EAAA,WAAA,cACAA,EAAA,MAAA,QACAA,EAAA,MAAA,QACAA,EAAA,SAAA,YACAA,EAAA,WAAA,cACAA,EAAA,KAAA,OACAA,EAAA,YAAA,eACAA,EAAA,gBAAA,mBACAA,EAAA,eAAA,kBACAA,EAAA,KAAA,OACAA,EAAA,MAAA,QACAA,EAAA,QAAA,UACAA,EAAA,OAAA,SACAA,EAAA,MAAA,QACAA,EAAA,OAAA,SACAA,EAAA,KAAA,OACAA,EAAA,QAAA,WACAA,EAAA,YAAA,eACAA,EAAA,MAAA,QACAA,EAAA,YAAA,eACAA,EAAA,eAAA,mBACAA,EAAA,UAAA,aACAA,EAAA,MAAA,QACAA,EAAA,aAAA,gBACAA,EAAA,mBAAA,uBACAA,EAAA,aAAA,gBACAA,EAAA,cAAA,iBACAA,EAAA,WAAA,cACAA,EAAA,KAAA,OACAA,EAAA,QAAA,UACAA,EAAA,cAAA,iBACAA,EAAA,YAAA,eACAA,EAAA,WAAA,sBACAA,EAAA,aAAA,wBACAA,EAAA,cAAA,iBACAA,EAAA,aAAA,gBACAA,EAAA,YAAA,eACAA,EAAA,aAAA,wBACAA,EAAA,UAAA,QACAA,EAAA,UAAA,SACAA,EAAA,YAAA,WACAA,EAAA,UAAA,aACAA,EAAA,OAAA,UACAA,EAAA,QAAA,WACAA,EAAA,QAAA,WAYF,MAkBaC,EAAOC,EAAMC,YAlB6C,EACnEC,OAAMC,QAAOC,YAAWC,QAAOC,OAAMC,MAAM,UAAWC,GACxDC,KAEA,MAAMC,EAAYH,EAElB,OACEP,EAACW,cAAAD,EACK,IAAAF,EACJC,IAAKA,EACLJ,MAAO,CAAEF,MAAOA,KAAUE,EAAOO,SAAUN,GAAM,aAAA,EAAA,cAErC,OACZF,UAAW,GAAGS,EAAOC,QAAO,QAAKD,EAAOC,QAAC,QAAUZ,MAASE,GAAwB,MAEtF"}
|