onekijs-ui 0.9.2 → 0.15.2
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/components/accordion/AccordionService.d.ts +7 -0
- package/dist/components/accordion/components/AccordionComponent.d.ts +16 -0
- package/dist/components/accordion/components/AccordionContainer.d.ts +4 -0
- package/dist/components/accordion/components/AccordionPanel.d.ts +4 -0
- package/dist/components/accordion/components/AccordionPanelTitle.d.ts +4 -0
- package/dist/components/accordion/hooks/useAccordionPanel.d.ts +3 -0
- package/dist/components/accordion/hooks/useAccordionService.d.ts +5 -0
- package/dist/components/accordion/hooks/useAccordionState.d.ts +4 -0
- package/dist/components/accordion/index.d.ts +16 -0
- package/dist/components/accordion/style.d.ts +3 -0
- package/dist/components/accordion/typings.d.ts +45 -0
- package/dist/components/button/DropdownButton.d.ts +3 -0
- package/dist/components/button/SubmitButton.d.ts +4 -0
- package/dist/components/button/components/ButtonComponent.d.ts +4 -0
- package/dist/components/button/components/DropdownButtonComponent.d.ts +4 -0
- package/dist/components/button/index.d.ts +3 -3
- package/dist/components/button/style.d.ts +5 -4
- package/dist/components/button/typings.d.ts +19 -4
- package/dist/components/card/FormCard.d.ts +4 -0
- package/dist/components/card/components/CardComponent.d.ts +4 -0
- package/dist/components/card/components/CardTitle.d.ts +4 -0
- package/dist/components/card/index.d.ts +2 -0
- package/dist/components/card/style.d.ts +3 -0
- package/dist/components/card/typings.d.ts +24 -0
- package/dist/components/checkbox/FormCheckbox.d.ts +4 -0
- package/dist/components/checkbox/components/CheckboxComponent.d.ts +4 -0
- package/dist/components/checkbox/index.d.ts +3 -0
- package/dist/components/checkbox/style.d.ts +4 -0
- package/dist/components/checkbox/typings.d.ts +14 -0
- package/dist/components/dashboard/DashboardService.d.ts +27 -0
- package/dist/components/dashboard/components/DashboardBody.d.ts +5 -0
- package/dist/components/dashboard/components/DashboardComponent.d.ts +7 -0
- package/dist/components/dashboard/components/DashboardContainer.d.ts +5 -0
- package/dist/components/dashboard/components/DashboardFooter.d.ts +2 -0
- package/dist/components/dashboard/components/DashboardHeader.d.ts +2 -0
- package/dist/components/dashboard/components/DashboardLeft.d.ts +2 -0
- package/dist/components/dashboard/components/DashboardOverlay.d.ts +6 -0
- package/dist/components/dashboard/components/DashboardRight.d.ts +2 -0
- package/dist/components/dashboard/components/DashboardToggler.d.ts +5 -0
- package/dist/components/dashboard/hoc/dashboardHorizontalPanel.d.ts +4 -0
- package/dist/components/dashboard/hoc/dashboardVerticalPanel.d.ts +4 -0
- package/dist/components/dashboard/hooks/useDashboard.d.ts +5 -0
- package/dist/components/dashboard/hooks/useDashboardService.d.ts +5 -0
- package/dist/components/dashboard/hooks/useDashboardState.d.ts +5 -0
- package/dist/components/dashboard/index.d.ts +4 -0
- package/dist/components/dashboard/typings.d.ts +96 -0
- package/dist/components/dashboard/utils/dashboardArea.d.ts +3 -0
- package/dist/components/dashboard/utils/dashboardLength.d.ts +5 -0
- package/dist/components/dropdown/components/DropdownComponent.d.ts +4 -4
- package/dist/components/dropdown/hooks/useDropdown.d.ts +5 -0
- package/dist/components/dropdown/index.d.ts +2 -3
- package/dist/components/dropdown/style.d.ts +4 -4
- package/dist/components/dropdown/typings.d.ts +24 -5
- package/dist/components/field/FieldDescription.d.ts +3 -0
- package/dist/components/field/FieldHelp.d.ts +3 -0
- package/dist/components/field/FieldLayout.d.ts +2 -0
- package/dist/components/field/components/FieldDescriptionComponent.d.ts +4 -0
- package/dist/components/field/components/FieldHelpComponent.d.ts +4 -0
- package/dist/components/field/components/FieldLayoutComponent.d.ts +4 -0
- package/dist/components/field/hooks/useFieldLayout.d.ts +4 -0
- package/dist/components/field/style.d.ts +5 -0
- package/dist/components/field/typings.d.ts +53 -0
- package/dist/components/field/util.d.ts +9 -0
- package/dist/components/grid/Col.d.ts +4 -0
- package/dist/components/grid/Row.d.ts +4 -0
- package/dist/components/grid/style.d.ts +4 -0
- package/dist/components/grid/typings.d.ts +33 -0
- package/dist/components/icon/CloseAllIcon.d.ts +4 -0
- package/dist/components/icon/CrossIcon.d.ts +3 -0
- package/dist/components/icon/FileIcon.d.ts +4 -0
- package/dist/components/icon/FolderIcon.d.ts +4 -0
- package/dist/components/icon/LoadingIcon.d.ts +4 -3
- package/dist/components/icon/MenuIcon.d.ts +4 -0
- package/dist/components/icon/RemoveIcon.d.ts +4 -0
- package/dist/components/icon/SearchIcon.d.ts +4 -0
- package/dist/components/icon/TogglerIcon.d.ts +4 -0
- package/dist/components/icon/typings.d.ts +14 -0
- package/dist/components/input/FormInput.d.ts +4 -0
- package/dist/components/input/components/InputComponent.d.ts +4 -0
- package/dist/components/input/index.d.ts +3 -0
- package/dist/components/input/style.d.ts +4 -0
- package/dist/components/input/typings.d.ts +14 -0
- package/dist/components/label/components/LabelComponent.d.ts +4 -0
- package/dist/components/label/index.d.ts +3 -0
- package/dist/components/label/style.d.ts +4 -0
- package/dist/components/label/typings.d.ts +16 -0
- package/dist/components/list/components/ArrayListComponent.d.ts +4 -0
- package/dist/components/list/components/CollectionListComponent.d.ts +4 -0
- package/dist/components/list/components/ListBodyComponent.d.ts +4 -0
- package/dist/components/list/components/ListComponent.d.ts +4 -4
- package/dist/components/list/components/ListItemComponent.d.ts +6 -4
- package/dist/components/list/components/LoadingItem.d.ts +5 -0
- package/dist/components/list/components/StandardListComponent.d.ts +4 -4
- package/dist/components/list/components/VirtualListComponent.d.ts +4 -4
- package/dist/components/list/hooks/useListController.d.ts +4 -0
- package/dist/components/list/hooks/useListService.d.ts +5 -0
- package/dist/components/list/hooks/useListState.d.ts +5 -0
- package/dist/components/list/hooks/useListView.d.ts +22 -0
- package/dist/components/list/index.d.ts +3 -3
- package/dist/components/list/style.d.ts +4 -4
- package/dist/components/list/typings.d.ts +121 -35
- package/dist/components/list/utils.d.ts +3 -4
- package/dist/components/modal/components/ModalComponent.d.ts +4 -0
- package/dist/components/modal/index.d.ts +2 -0
- package/dist/components/modal/style.d.ts +3 -0
- package/dist/components/modal/typings.d.ts +19 -0
- package/dist/components/properties/components/PropertiesComponent.d.ts +4 -0
- package/dist/components/properties/components/Property.d.ts +4 -0
- package/dist/components/properties/hooks/usePropertiesContext.d.ts +5 -0
- package/dist/components/properties/index.d.ts +3 -0
- package/dist/components/properties/style.d.ts +3 -0
- package/dist/components/properties/typings.d.ts +26 -0
- package/dist/components/resizer/ResizerService.d.ts +17 -0
- package/dist/components/resizer/components/ResizerComponent.d.ts +4 -0
- package/dist/components/resizer/components/ResizerHorizontalSplitter.d.ts +4 -0
- package/dist/components/resizer/components/ResizerVerticalSplitter.d.ts +4 -0
- package/dist/components/resizer/index.d.ts +2 -0
- package/dist/components/resizer/style.d.ts +4 -0
- package/dist/components/resizer/typings.d.ts +34 -0
- package/dist/components/select/FormSelect.d.ts +4 -0
- package/dist/components/select/SelectService.d.ts +5 -0
- package/dist/components/select/components/ArraySelectComponent.d.ts +4 -0
- package/dist/components/select/components/ControllerSelectComponent.d.ts +4 -0
- package/dist/components/select/components/SelectComponent.d.ts +4 -4
- package/dist/components/select/components/SelectIconComponent.d.ts +4 -4
- package/dist/components/select/components/SelectInputComponent.d.ts +4 -4
- package/dist/components/select/components/SelectNotFoundComponent.d.ts +4 -0
- package/dist/components/select/components/SelectOptionComponent.d.ts +6 -4
- package/dist/components/select/components/SelectTokenComponent.d.ts +4 -0
- package/dist/components/select/components/SelectTokensComponent.d.ts +4 -0
- package/dist/components/select/hooks/useSelectConfig.d.ts +4 -0
- package/dist/components/select/hooks/useSelectController.d.ts +6 -0
- package/dist/components/select/index.d.ts +3 -3
- package/dist/components/select/style.d.ts +4 -4
- package/dist/components/select/typings.d.ts +95 -37
- package/dist/components/tab/TabsService.d.ts +24 -0
- package/dist/components/tab/components/ControlledTabsComponent.d.ts +4 -0
- package/dist/components/tab/components/Tab.d.ts +4 -0
- package/dist/components/tab/components/TabTitle.d.ts +4 -0
- package/dist/components/tab/components/TabsComponent.d.ts +4 -0
- package/dist/components/tab/components/TabsContainer.d.ts +4 -0
- package/dist/components/tab/components/UncontrolledTabsComponent.d.ts +4 -0
- package/dist/components/tab/hooks/useTab.d.ts +5 -0
- package/dist/components/tab/hooks/useTabsController.d.ts +3 -0
- package/dist/components/tab/hooks/useTabsService.d.ts +5 -0
- package/dist/components/tab/hooks/useTabsState.d.ts +4 -0
- package/dist/components/tab/index.d.ts +2 -0
- package/dist/components/tab/style.d.ts +3 -0
- package/dist/components/tab/typings.d.ts +54 -0
- package/dist/components/table/FormTable.d.ts +4 -0
- package/dist/components/table/TableService.d.ts +18 -0
- package/dist/components/table/columns/useCheckboxColumn.d.ts +3 -0
- package/dist/components/table/columns/useColumn.d.ts +3 -0
- package/dist/components/table/columns/useInputColumn.d.ts +3 -0
- package/dist/components/table/columns/useLinkColumn.d.ts +3 -0
- package/dist/components/table/columns/useSelectColumn.d.ts +3 -0
- package/dist/components/table/components/ArrayTableComponent.d.ts +4 -0
- package/dist/components/table/components/ControllerTableComponent.d.ts +4 -0
- package/dist/components/table/components/FormTableComponent.d.ts +4 -0
- package/dist/components/table/components/TableBodyCellComponent.d.ts +4 -0
- package/dist/components/table/components/TableBodyComponent.d.ts +4 -0
- package/dist/components/table/components/TableBodyRowComponent.d.ts +4 -0
- package/dist/components/table/components/TableComponent.d.ts +4 -0
- package/dist/components/table/components/TableFooterCellComponent.d.ts +4 -0
- package/dist/components/table/components/TableFooterComponent.d.ts +4 -0
- package/dist/components/table/components/TableHeaderComponent.d.ts +4 -0
- package/dist/components/table/components/TableHeaderFilterComponent.d.ts +4 -0
- package/dist/components/table/components/TableHeaderTitleComponent.d.ts +5 -0
- package/dist/components/table/components/TableLoadingComponent.d.ts +3 -0
- package/dist/components/table/components/TableLoadingRowComponent.d.ts +3 -0
- package/dist/components/table/components/TableNotFoundComponent.d.ts +4 -0
- package/dist/components/table/components/TableSortComponent.d.ts +4 -0
- package/dist/components/table/components/cells/CheckboxCellComponent.d.ts +4 -0
- package/dist/components/table/components/cells/DefaultCellComponent.d.ts +4 -0
- package/dist/components/table/components/cells/ExpandedCellComponent.d.ts +4 -0
- package/dist/components/table/components/cells/InputCellComponent.d.ts +4 -0
- package/dist/components/table/components/cells/SelectCellComponent.d.ts +6 -0
- package/dist/components/table/components/filters/TableInputFilterComponent.d.ts +4 -0
- package/dist/components/table/components/hoc/linkCellComponent.d.ts +4 -0
- package/dist/components/table/hooks/useFormTableContext.d.ts +5 -0
- package/dist/components/table/hooks/useTableColumns.d.ts +3 -0
- package/dist/components/table/hooks/useTableConfig.d.ts +4 -0
- package/dist/components/table/hooks/useTableController.d.ts +5 -0
- package/dist/components/table/hooks/useTableInitialState.d.ts +3 -0
- package/dist/components/table/hooks/useTableItems.d.ts +3 -0
- package/dist/components/table/hooks/useTableService.d.ts +5 -0
- package/dist/components/table/hooks/useTableState.d.ts +4 -0
- package/dist/components/table/index.d.ts +3 -0
- package/dist/components/table/style.d.ts +3 -0
- package/dist/components/table/typings.d.ts +218 -0
- package/dist/components/table/util.d.ts +5 -0
- package/dist/components/tag/components/TagComponent.d.ts +4 -0
- package/dist/components/tag/index.d.ts +2 -0
- package/dist/components/tag/style.d.ts +3 -0
- package/dist/components/tag/typings.d.ts +16 -0
- package/dist/components/tooltip/components/TooltipComponent.d.ts +4 -0
- package/dist/components/tooltip/index.d.ts +2 -0
- package/dist/components/tooltip/style.d.ts +4 -0
- package/dist/components/tooltip/typings.d.ts +10 -0
- package/dist/components/tree/TreeService.d.ts +23 -0
- package/dist/components/tree/components/ArrayTreeComponent.d.ts +4 -0
- package/dist/components/tree/components/ControllerTreeComponent.d.ts +4 -0
- package/dist/components/tree/components/TreeBodyComponent.d.ts +4 -0
- package/dist/components/tree/components/TreeComponent.d.ts +4 -0
- package/dist/components/tree/components/TreeItemComponent.d.ts +6 -0
- package/dist/components/tree/components/TreeListComponent.d.ts +4 -0
- package/dist/components/tree/components/VirtualTreeBodyComponent.d.ts +4 -0
- package/dist/components/tree/components/VirtualTreeListComponent.d.ts +4 -0
- package/dist/components/tree/hooks/useTreeConfig.d.ts +4 -0
- package/dist/components/tree/hooks/useTreeController.d.ts +5 -0
- package/dist/components/tree/hooks/useTreeInitialState.d.ts +5 -0
- package/dist/components/tree/hooks/useTreeItems.d.ts +3 -0
- package/dist/components/tree/hooks/useTreeService.d.ts +5 -0
- package/dist/components/tree/hooks/useTreeState.d.ts +4 -0
- package/dist/components/tree/index.d.ts +3 -0
- package/dist/components/tree/style.d.ts +3 -0
- package/dist/components/tree/typings.d.ts +87 -0
- package/dist/components/wizard/WizardModal.d.ts +2 -0
- package/dist/components/wizard/WizardService.d.ts +17 -0
- package/dist/components/wizard/components/ControlledWizardComponent.d.ts +4 -0
- package/dist/components/wizard/components/Step.d.ts +4 -0
- package/dist/components/wizard/components/StepTitle.d.ts +4 -0
- package/dist/components/wizard/components/UncontrolledWizardComponent.d.ts +4 -0
- package/dist/components/wizard/components/WizardComponent.d.ts +4 -0
- package/dist/components/wizard/components/WizardContainer.d.ts +4 -0
- package/dist/components/wizard/components/WizardModalComponent.d.ts +4 -0
- package/dist/components/wizard/hooks/useStep.d.ts +5 -0
- package/dist/components/wizard/hooks/useWizardController.d.ts +3 -0
- package/dist/components/wizard/hooks/useWizardService.d.ts +5 -0
- package/dist/components/wizard/hooks/useWizardState.d.ts +4 -0
- package/dist/components/wizard/index.d.ts +2 -0
- package/dist/components/wizard/style.d.ts +4 -0
- package/dist/components/wizard/typings.d.ts +41 -0
- package/dist/index.d.ts +167 -33
- package/dist/index.js +9945 -5
- package/dist/index.js.map +1 -0
- package/dist/index.module.js +9546 -0
- package/dist/index.module.js.map +1 -0
- package/dist/styles/alignment.d.ts +13 -13
- package/dist/styles/animation.d.ts +10 -9
- package/dist/styles/background.d.ts +11 -11
- package/dist/styles/border.d.ts +39 -39
- package/dist/styles/display.d.ts +6 -5
- package/dist/styles/effects.d.ts +2 -2
- package/dist/styles/flex.d.ts +9 -9
- package/dist/styles/fragmentation.d.ts +6 -6
- package/dist/styles/grid.d.ts +28 -28
- package/dist/styles/icon.d.ts +4 -0
- package/dist/styles/image.d.ts +5 -5
- package/dist/styles/interactivity.d.ts +16 -16
- package/dist/styles/list.d.ts +5 -5
- package/dist/styles/overflow.d.ts +6 -6
- package/dist/styles/position.d.ts +10 -9
- package/dist/styles/size.d.ts +12 -13
- package/dist/styles/spacing.d.ts +16 -16
- package/dist/styles/svg.d.ts +5 -4
- package/dist/styles/table.d.ts +8 -8
- package/dist/styles/transform.d.ts +8 -8
- package/dist/styles/transition.d.ts +5 -5
- package/dist/styles/typings.d.ts +528 -20
- package/dist/styles/typography.d.ts +49 -49
- package/dist/theme/base.d.ts +4 -0
- package/dist/theme/tailwind.d.ts +5 -0
- package/dist/utils/color.d.ts +10 -7
- package/dist/utils/dom.d.ts +9 -0
- package/dist/utils/event.d.ts +2 -1
- package/dist/utils/formatter.d.ts +7 -7
- package/dist/utils/popper.d.ts +4 -4
- package/dist/utils/size.d.ts +3 -0
- package/dist/utils/style.d.ts +9 -7
- package/package.json +36 -24
- package/src/components/accordion/AccordionService.ts +36 -0
- package/src/components/accordion/components/AccordionComponent.tsx +37 -0
- package/src/components/accordion/components/AccordionContainer.tsx +11 -0
- package/src/components/accordion/components/AccordionPanel.tsx +74 -0
- package/src/components/accordion/components/AccordionPanelTitle.tsx +14 -0
- package/src/components/accordion/hooks/useAccordionPanel.ts +19 -0
- package/src/components/accordion/hooks/useAccordionService.ts +11 -0
- package/src/components/accordion/hooks/useAccordionState.ts +7 -0
- package/src/components/accordion/index.ts +23 -0
- package/src/components/accordion/style.ts +72 -0
- package/src/components/accordion/typings.ts +50 -0
- package/src/components/button/DropdownButton.tsx +9 -0
- package/src/components/button/SubmitButton.tsx +58 -0
- package/src/components/button/components/ButtonComponent.tsx +24 -0
- package/src/components/button/components/DropdownButtonComponent.tsx +82 -0
- package/src/components/button/index.tsx +1 -1
- package/src/components/button/style.ts +84 -8
- package/src/components/button/typings.ts +19 -2
- package/src/components/card/FormCard.tsx +24 -0
- package/src/components/card/components/CardComponent.tsx +83 -0
- package/src/components/card/components/CardTitle.tsx +14 -0
- package/src/components/card/index.tsx +9 -0
- package/src/components/card/style.ts +68 -0
- package/src/components/card/typings.ts +28 -0
- package/src/components/checkbox/FormCheckbox.tsx +26 -0
- package/src/components/checkbox/components/CheckboxComponent.tsx +42 -0
- package/src/components/checkbox/index.tsx +9 -0
- package/src/components/checkbox/style.ts +103 -0
- package/src/components/checkbox/typings.ts +18 -0
- package/src/components/dashboard/DashboardService.ts +412 -0
- package/src/components/dashboard/components/DashboardBody.tsx +138 -0
- package/src/components/dashboard/components/DashboardComponent.tsx +36 -0
- package/src/components/dashboard/components/DashboardContainer.tsx +64 -0
- package/src/components/dashboard/components/DashboardFooter.tsx +4 -0
- package/src/components/dashboard/components/DashboardHeader.tsx +4 -0
- package/src/components/dashboard/components/DashboardLeft.tsx +4 -0
- package/src/components/dashboard/components/DashboardOverlay.tsx +29 -0
- package/src/components/dashboard/components/DashboardRight.tsx +4 -0
- package/src/components/dashboard/components/DashboardToggler.tsx +17 -0
- package/src/components/dashboard/hoc/dashboardHorizontalPanel.tsx +145 -0
- package/src/components/dashboard/hoc/dashboardVerticalPanel.tsx +148 -0
- package/src/components/dashboard/hooks/useDashboard.tsx +21 -0
- package/src/components/dashboard/hooks/useDashboardService.ts +11 -0
- package/src/components/dashboard/hooks/useDashboardState.ts +11 -0
- package/src/components/dashboard/index.tsx +13 -0
- package/src/components/dashboard/typings.ts +124 -0
- package/src/components/dashboard/utils/dashboardArea.ts +27 -0
- package/src/components/dashboard/utils/dashboardLength.ts +42 -0
- package/src/components/dropdown/components/DropdownComponent.tsx +201 -23
- package/src/components/dropdown/hooks/useDropdown.tsx +21 -0
- package/src/components/dropdown/style.ts +10 -28
- package/src/components/dropdown/typings.ts +26 -4
- package/src/components/field/FieldDescription.tsx +9 -0
- package/src/components/field/FieldHelp.tsx +9 -0
- package/src/components/field/FieldLayout.tsx +9 -0
- package/src/components/field/components/FieldDescriptionComponent.tsx +14 -0
- package/src/components/field/components/FieldHelpComponent.tsx +22 -0
- package/src/components/field/components/FieldLayoutComponent.tsx +174 -0
- package/src/components/field/hooks/useFieldLayout.ts +36 -0
- package/src/components/field/style.ts +59 -0
- package/src/components/field/typings.ts +67 -0
- package/src/components/field/util.ts +47 -0
- package/src/components/grid/Col.tsx +33 -0
- package/src/components/grid/Row.tsx +35 -0
- package/src/components/grid/style.ts +93 -0
- package/src/components/grid/typings.ts +35 -0
- package/src/components/icon/CloseAllIcon.tsx +38 -0
- package/src/components/icon/CrossIcon.tsx +30 -0
- package/src/components/icon/FileIcon.tsx +36 -0
- package/src/components/icon/FolderIcon.tsx +36 -0
- package/src/components/icon/LoadingIcon.tsx +26 -23
- package/src/components/icon/MenuIcon.tsx +34 -0
- package/src/components/icon/RemoveIcon.tsx +36 -0
- package/src/components/icon/SearchIcon.tsx +38 -0
- package/src/components/icon/TogglerIcon.tsx +126 -0
- package/src/components/icon/typings.ts +15 -0
- package/src/components/input/FormInput.tsx +26 -0
- package/src/components/input/components/InputComponent.tsx +46 -0
- package/src/components/input/index.tsx +9 -0
- package/src/components/input/style.ts +85 -0
- package/src/components/input/typings.ts +17 -0
- package/src/components/label/components/LabelComponent.tsx +39 -0
- package/src/components/label/index.tsx +9 -0
- package/src/components/label/style.ts +64 -0
- package/src/components/label/typings.ts +17 -0
- package/src/components/list/components/ArrayListComponent.tsx +11 -0
- package/src/components/list/components/CollectionListComponent.tsx +77 -0
- package/src/components/list/components/ListBodyComponent.tsx +250 -0
- package/src/components/list/components/ListComponent.tsx +11 -25
- package/src/components/list/components/ListItemComponent.tsx +16 -4
- package/src/components/list/components/LoadingItem.tsx +24 -0
- package/src/components/list/components/StandardListComponent.tsx +23 -21
- package/src/components/list/components/VirtualListComponent.tsx +93 -110
- package/src/components/list/hooks/useListController.ts +19 -0
- package/src/components/list/hooks/useListService.ts +15 -0
- package/src/components/list/hooks/useListState.ts +10 -0
- package/src/components/list/hooks/useListView.tsx +103 -0
- package/src/components/list/typings.ts +162 -24
- package/src/components/list/utils.ts +17 -55
- package/src/components/modal/components/ModalComponent.tsx +132 -0
- package/src/components/modal/index.tsx +9 -0
- package/src/components/modal/style.ts +135 -0
- package/src/components/modal/typings.ts +20 -0
- package/src/components/properties/components/PropertiesComponent.tsx +44 -0
- package/src/components/properties/components/Property.tsx +40 -0
- package/src/components/properties/hooks/usePropertiesContext.ts +10 -0
- package/src/components/properties/index.tsx +9 -0
- package/src/components/properties/style.ts +17 -0
- package/src/components/properties/typings.ts +30 -0
- package/src/components/resizer/ResizerService.ts +96 -0
- package/src/components/resizer/components/ResizerComponent.tsx +28 -0
- package/src/components/resizer/components/ResizerHorizontalSplitter.tsx +38 -0
- package/src/components/resizer/components/ResizerVerticalSplitter.tsx +37 -0
- package/src/components/resizer/index.tsx +9 -0
- package/src/components/resizer/style.ts +51 -0
- package/src/components/resizer/typings.ts +40 -0
- package/src/components/select/FormSelect.tsx +26 -0
- package/src/components/select/SelectService.ts +9 -0
- package/src/components/select/components/ArraySelectComponent.tsx +11 -0
- package/src/components/select/components/ControllerSelectComponent.tsx +441 -0
- package/src/components/select/components/SelectComponent.tsx +13 -121
- package/src/components/select/components/SelectIconComponent.tsx +4 -4
- package/src/components/select/components/SelectInputComponent.tsx +220 -76
- package/src/components/select/components/SelectNotFoundComponent.tsx +14 -0
- package/src/components/select/components/SelectOptionComponent.tsx +54 -20
- package/src/components/select/components/SelectTokenComponent.tsx +25 -0
- package/src/components/select/components/SelectTokensComponent.tsx +50 -0
- package/src/components/select/hooks/useSelectConfig.ts +7 -0
- package/src/components/select/hooks/useSelectController.ts +21 -0
- package/src/components/select/index.tsx +0 -89
- package/src/components/select/style.ts +336 -47
- package/src/components/select/typings.ts +130 -24
- package/src/components/tab/TabsService.ts +192 -0
- package/src/components/tab/components/ControlledTabsComponent.tsx +18 -0
- package/src/components/tab/components/Tab.tsx +55 -0
- package/src/components/tab/components/TabTitle.tsx +18 -0
- package/src/components/tab/components/TabsComponent.tsx +15 -0
- package/src/components/tab/components/TabsContainer.tsx +36 -0
- package/src/components/tab/components/UncontrolledTabsComponent.tsx +13 -0
- package/src/components/tab/hooks/useTab.ts +18 -0
- package/src/components/tab/hooks/useTabsController.ts +15 -0
- package/src/components/tab/hooks/useTabsService.ts +11 -0
- package/src/components/tab/hooks/useTabsState.ts +7 -0
- package/src/components/tab/index.tsx +9 -0
- package/src/components/tab/style.ts +78 -0
- package/src/components/tab/typings.ts +59 -0
- package/src/components/table/FormTable.tsx +38 -0
- package/src/components/table/TableService.ts +123 -0
- package/src/components/table/columns/useCheckboxColumn.ts +24 -0
- package/src/components/table/columns/useColumn.ts +23 -0
- package/src/components/table/columns/useInputColumn.ts +24 -0
- package/src/components/table/columns/useLinkColumn.ts +19 -0
- package/src/components/table/columns/useSelectColumn.ts +26 -0
- package/src/components/table/components/ArrayTableComponent.tsx +14 -0
- package/src/components/table/components/ControllerTableComponent.tsx +167 -0
- package/src/components/table/components/FormTableComponent.tsx +143 -0
- package/src/components/table/components/TableBodyCellComponent.tsx +36 -0
- package/src/components/table/components/TableBodyComponent.tsx +96 -0
- package/src/components/table/components/TableBodyRowComponent.tsx +125 -0
- package/src/components/table/components/TableComponent.tsx +17 -0
- package/src/components/table/components/TableFooterCellComponent.tsx +28 -0
- package/src/components/table/components/TableFooterComponent.tsx +34 -0
- package/src/components/table/components/TableHeaderComponent.tsx +81 -0
- package/src/components/table/components/TableHeaderFilterComponent.tsx +31 -0
- package/src/components/table/components/TableHeaderTitleComponent.tsx +62 -0
- package/src/components/table/components/TableLoadingComponent.tsx +18 -0
- package/src/components/table/components/TableLoadingRowComponent.tsx +21 -0
- package/src/components/table/components/TableNotFoundComponent.tsx +14 -0
- package/src/components/table/components/TableSortComponent.tsx +29 -0
- package/src/components/table/components/cells/CheckboxCellComponent.tsx +42 -0
- package/src/components/table/components/cells/DefaultCellComponent.tsx +9 -0
- package/src/components/table/components/cells/ExpandedCellComponent.tsx +16 -0
- package/src/components/table/components/cells/InputCellComponent.tsx +27 -0
- package/src/components/table/components/cells/SelectCellComponent.tsx +41 -0
- package/src/components/table/components/filters/TableInputFilterComponent.tsx +134 -0
- package/src/components/table/components/hoc/linkCellComponent.tsx +15 -0
- package/src/components/table/hooks/useFormTableContext.ts +10 -0
- package/src/components/table/hooks/useTableColumns.ts +9 -0
- package/src/components/table/hooks/useTableConfig.ts +7 -0
- package/src/components/table/hooks/useTableController.ts +26 -0
- package/src/components/table/hooks/useTableInitialState.ts +22 -0
- package/src/components/table/hooks/useTableItems.ts +9 -0
- package/src/components/table/hooks/useTableService.ts +10 -0
- package/src/components/table/hooks/useTableState.ts +7 -0
- package/src/components/table/index.tsx +9 -0
- package/src/components/table/style.ts +248 -0
- package/src/components/table/typings.ts +322 -0
- package/src/components/table/util.ts +52 -0
- package/src/components/tag/components/TagComponent.tsx +15 -0
- package/src/components/tag/index.tsx +9 -0
- package/src/components/tag/style.ts +62 -0
- package/src/components/tag/typings.ts +17 -0
- package/src/components/tooltip/components/TooltipComponent.tsx +38 -0
- package/src/components/tooltip/index.tsx +9 -0
- package/src/components/tooltip/style.ts +153 -0
- package/src/components/tooltip/typings.ts +10 -0
- package/src/components/tree/TreeService.ts +392 -0
- package/src/components/tree/components/ArrayTreeComponent.tsx +14 -0
- package/src/components/tree/components/ControllerTreeComponent.tsx +72 -0
- package/src/components/tree/components/TreeBodyComponent.tsx +25 -0
- package/src/components/tree/components/TreeComponent.tsx +17 -0
- package/src/components/tree/components/TreeItemComponent.tsx +100 -0
- package/src/components/tree/components/TreeListComponent.tsx +198 -0
- package/src/components/tree/components/VirtualTreeBodyComponent.tsx +34 -0
- package/src/components/tree/components/VirtualTreeListComponent.tsx +287 -0
- package/src/components/tree/hooks/useTreeConfig.ts +7 -0
- package/src/components/tree/hooks/useTreeController.ts +33 -0
- package/src/components/tree/hooks/useTreeInitialState.ts +12 -0
- package/src/components/tree/hooks/useTreeItems.ts +9 -0
- package/src/components/tree/hooks/useTreeService.ts +10 -0
- package/src/components/tree/hooks/useTreeState.ts +7 -0
- package/src/components/tree/index.tsx +9 -0
- package/src/components/tree/style.ts +57 -0
- package/src/components/tree/typings.ts +126 -0
- package/src/components/wizard/WizardModal.ts +9 -0
- package/src/components/wizard/WizardService.ts +123 -0
- package/src/components/wizard/components/ControlledWizardComponent.tsx +22 -0
- package/src/components/wizard/components/Step.tsx +82 -0
- package/src/components/wizard/components/StepTitle.tsx +26 -0
- package/src/components/wizard/components/UncontrolledWizardComponent.tsx +13 -0
- package/src/components/wizard/components/WizardComponent.tsx +15 -0
- package/src/components/wizard/components/WizardContainer.tsx +134 -0
- package/src/components/wizard/components/WizardModalComponent.tsx +15 -0
- package/src/components/wizard/hooks/useStep.ts +18 -0
- package/src/components/wizard/hooks/useWizardController.ts +27 -0
- package/src/components/wizard/hooks/useWizardService.ts +11 -0
- package/src/components/wizard/hooks/useWizardState.ts +7 -0
- package/src/components/wizard/index.tsx +9 -0
- package/src/components/wizard/style.ts +159 -0
- package/src/components/wizard/typings.ts +53 -0
- package/src/fonts.d.ts +1 -0
- package/src/index.ts +269 -9
- package/src/styles/border.ts +8 -11
- package/src/styles/flex.ts +3 -3
- package/src/styles/icon.ts +14 -0
- package/src/styles/position.ts +13 -2
- package/src/styles/size.ts +19 -13
- package/src/styles/svg.ts +4 -3
- package/src/styles/typings.ts +587 -63
- package/src/theme/base.tsx +507 -0
- package/src/theme/tailwind.tsx +112 -0
- package/src/utils/color.ts +35 -1
- package/src/utils/dom.ts +32 -0
- package/src/utils/event.ts +25 -4
- package/src/utils/formatter.ts +7 -10
- package/src/utils/popper.ts +1 -1
- package/src/utils/size.ts +12 -0
- package/src/utils/style.ts +6 -9
- package/src/vendor/reactVirtual.d.ts +76 -0
- package/src/vendor/reactVirtual.js +463 -0
- package/src/vendor/useIsomorphicLayoutEffect.js +3 -0
- package/src/vendor/useRect.js +49 -0
- package/CHANGELOG.md +0 -136
- package/dist/__tests__/mocks/handlers.d.ts +0 -1
- package/dist/__tests__/mocks/responses.d.ts +0 -4
- package/dist/__tests__/mocks/server.d.ts +0 -7
- package/dist/__tests__/setup.d.ts +0 -1
- package/dist/__tests__/setupTests.d.ts +0 -1
- package/dist/__tests__/utils/timeout.d.ts +0 -4
- package/dist/components/button/component.d.ts +0 -4
- package/dist/components/select/components/SelectOptionsComponent.d.ts +0 -4
- package/dist/onekijs-ui.cjs.development.js +0 -2115
- package/dist/onekijs-ui.cjs.development.js.map +0 -1
- package/dist/onekijs-ui.cjs.production.min.js +0 -2
- package/dist/onekijs-ui.cjs.production.min.js.map +0 -1
- package/dist/onekijs-ui.esm.js +0 -1853
- package/dist/onekijs-ui.esm.js.map +0 -1
- package/dist/styles/theme.d.ts +0 -2
- package/jest.config.js +0 -188
- package/postcss.config.js +0 -3
- package/src/__tests__/mocks/handlers.ts +0 -60
- package/src/__tests__/mocks/responses.ts +0 -7
- package/src/__tests__/mocks/server.ts +0 -4
- package/src/__tests__/setup.ts +0 -1
- package/src/__tests__/setupTests.ts +0 -12
- package/src/__tests__/utils/timeout.ts +0 -27
- package/src/components/button/component.tsx +0 -8
- package/src/components/select/components/SelectOptionsComponent.tsx +0 -14
- package/src/styles/index.css +0 -5
- package/src/styles/tailwind.css +0 -86923
- package/src/styles/theme.ts +0 -274
- package/src/utils/query.ts.old +0 -148
- package/tailwind.config.js +0 -8
- package/tsconfig.json +0 -37
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"onekijs-ui.cjs.production.min.js","sources":["../src/components/button/component.tsx","../src/utils/color.ts","../src/utils/formatter.ts","../src/utils/style.ts","../src/styles/background.ts","../src/styles/spacing.ts","../src/styles/typography.ts","../src/components/button/style.ts","../src/components/button/index.tsx","../src/utils/event.ts","../src/utils/popper.ts","../src/components/dropdown/components/DropdownComponent.tsx","../src/styles/size.ts","../src/styles/border.ts","../src/styles/overflow.ts","../src/styles/transition.ts","../src/styles/effects.ts","../src/components/dropdown/style.ts","../src/components/dropdown/index.tsx","../src/components/icon/LoadingIcon.tsx","../src/components/select/components/SelectIconComponent.tsx","../src/components/select/components/SelectInputComponent.tsx","../src/components/list/components/ListItemComponent.tsx","../src/components/list/utils.ts","../src/components/list/components/StandardListComponent.tsx","../src/components/list/components/VirtualListComponent.tsx","../src/components/list/components/ListComponent.tsx","../src/components/select/components/SelectOptionComponent.tsx","../src/components/select/components/SelectOptionsComponent.tsx","../src/components/select/components/SelectComponent.tsx","../src/styles/alignment.ts","../src/styles/display.ts","../src/styles/interactivity.ts","../src/styles/table.ts","../src/components/select/style.ts","../src/components/select/index.tsx","../src/components/list/style.ts","../src/components/list/index.tsx","../src/styles/animation.ts","../src/styles/flex.ts","../src/styles/fragmentation.ts","../src/styles/grid.ts","../src/styles/image.ts","../src/styles/list.ts","../src/styles/position.ts","../src/styles/svg.ts","../src/styles/transform.ts","../src/styles/theme.ts"],"sourcesContent":["import React, { FC } from 'react';\nimport { ButtonProps } from './typings';\n\nconst ButtonComponent: FC<ButtonProps> = (props) => {\n return <button {...props} />;\n};\n\nexport default ButtonComponent;\n","export const deriveColor = (color: string, gap: number, dark: boolean, newColorValue?: string): string => {\n const [colorValue, weight] = color.split('-');\n newColorValue = newColorValue || colorValue;\n if (weight === undefined) {\n return newColorValue;\n }\n return `${newColorValue}-${parseInt(weight) + (dark ? -gap : gap)}`;\n};\n\n// https://stackoverflow.com/questions/5623838/rgb-to-hex-and-hex-to-rgb\nexport const hexToRgb = (hex: string): { r: number; g: number; b: number } | null => {\n const shorthandRegex = /^#?([a-f\\d])([a-f\\d])([a-f\\d])$/i;\n hex = hex.replace(shorthandRegex, function (_m, r, g, b) {\n return r + r + g + g + b + b;\n });\n\n const result = /^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(hex);\n return result\n ? {\n r: parseInt(result[1], 16),\n g: parseInt(result[2], 16),\n b: parseInt(result[3], 16),\n }\n : null;\n};\n\n// https://stackoverflow.com/questions/5623838/rgb-to-hex-and-hex-to-rgb\nexport const rgbToHex = (r: number, g: number, b: number): string => {\n return '#' + ((1 << 24) + (r << 16) + (g << 8) + b).toString(16).slice(1);\n};\n","import { AnonymousObject, get } from 'onekijs-core';\nimport { Formatter } from '../styles/typings';\nimport { hexToRgb } from './color';\n\nexport const booleanFormatter: Formatter<boolean> = (value): '0' | '1' => (value ? '1' : '0');\n\nexport const themeFormatter = (category: string): Formatter<string | number> => {\n return (value, theme) => {\n return get(theme, `${category}.${value}`, String(value));\n };\n};\n\nexport const colorFormatter = (key: string, opacityKey?: string): Formatter<string> => {\n return (value, theme) => {\n if (Object.keys(theme.kind).includes(value)) {\n value = theme.kind[value];\n }\n let result = '';\n value = get(theme, `colors.${value}`, String(value));\n if (opacityKey) {\n result = `--${opacityKey}: 1;`;\n }\n result = `${result}${key}: ${value}`;\n if (opacityKey) {\n const rgb = hexToRgb(value);\n if (rgb) {\n result = `${result};${key}: rgba(${rgb.r},${rgb.g},${rgb.b},var(--${opacityKey}))`;\n }\n }\n result += ';';\n\n return result;\n };\n};\n\nexport const enumFormatter = <T>(values: AnonymousObject): Formatter<T> => {\n return (value) => {\n if (Object.keys(values).includes(String(value))) {\n return String(values[String(value)]);\n }\n return String(value);\n };\n};\n\nexport const pxFormatter: Formatter<string | number> = (value) => {\n if (typeof value === 'string') {\n return value;\n }\n if (value === 0) {\n return '0';\n }\n return `${value}px`;\n};\n","/* eslint-disable prettier/prettier */\nimport { AnonymousObject, lcfirst, toKebabCase } from 'onekijs-core';\nimport { css, FlattenInterpolation, ThemeProps } from 'styled-components';\nimport { CssProperty, Formatter, Theme } from '../styles/typings';\nimport { themeFormatter } from './formatter';\n\nconst formatValue = <T>(value: T, theme: Theme, formatter?: Formatter<T>): string => {\n if (formatter) {\n return formatter(value, theme);\n }\n return String(value);\n};\n\nconst isPseudoClass = (candidate: string): boolean => {\n return [\n 'active',\n 'any-link',\n 'checked',\n 'blank',\n 'default',\n 'defined',\n 'dir',\n 'disabled',\n 'empty',\n 'enabled',\n 'first',\n 'first-child',\n 'first-of-type',\n 'fullscreen',\n 'focus',\n 'focus-visible',\n 'focus-within',\n 'has',\n 'host',\n 'host-context',\n 'hover',\n 'indeterminate',\n 'in-range',\n 'invalid',\n 'is',\n 'matches',\n 'any',\n 'lang',\n 'last-child',\n 'last-of-type',\n 'left',\n 'link',\n 'not',\n 'nth-child',\n 'nth-last-child',\n 'nth-last-of-type',\n 'nth-of-type',\n 'only-child',\n 'only-of-type',\n 'optional',\n 'out-of-range',\n 'placeholder-shown',\n 'read-only',\n 'read-write',\n 'required',\n 'right',\n 'root',\n 'scope',\n 'target',\n 'valid',\n 'visited',\n 'where',\n ].includes(candidate);\n};\n\nconst isPseudoElement = (candidate: string): boolean => {\n return [\n 'after',\n 'backdrop',\n 'before',\n 'cue',\n 'cue-region',\n 'first-letter',\n 'first-line',\n 'grammar-error',\n 'marker',\n 'part',\n 'placeholder',\n 'selection',\n 'slotted',\n 'spelling-error',\n ].includes(candidate);\n};\n\nexport const toCss = <T>(\n property: string | null,\n formatter: Formatter<T> | undefined,\n value: T,\n variants: AnonymousObject,\n): FlattenInterpolation<ThemeProps<any>> => {\n let result = css`\n ${property === null ? '' : property + ': '}${(props) => formatValue(value, props.theme, formatter)};\n`;\n\n const responsives: AnonymousObject = {\n all: {},\n sm: {},\n md: {},\n lg: {},\n xl: {},\n };\n\n Object.keys(variants).forEach((variant) => {\n const media = variant.substring(0, 2);\n if (responsives[media]) {\n const pseudo = lcfirst(variant.substring(2)) || 'all';\n responsives[media][pseudo] = variants[variant];\n } else {\n responsives['all'][variant] = variants[variant];\n }\n });\n\n Object.keys(responsives).forEach((media) => {\n if (media !== 'all' && Object.keys(responsives[media]).length > 0) {\n result = result.concat(css`\n ${(props) => `@media (min-width: ${props.theme.breakpoints[media]}) {`}\n `);\n }\n Object.keys(responsives[media]).forEach((pseudo) => {\n pseudo = toKebabCase(pseudo);\n if (isPseudoClass(pseudo)) {\n result = result.concat(css`\n &:${pseudo} {\n ${property === null ? '' : property + ': '}${(props) =>\n formatValue(responsives[media][pseudo], props.theme, formatter)};\n }\n `);\n } else if (isPseudoElement(pseudo)) {\n result = result.concat(css`\n &::${pseudo} {\n ${property === null ? '' : property + ': '}${(props) =>\n formatValue(responsives[media][pseudo], props.theme, formatter)};\n }\n `);\n } else if (pseudo === 'all') {\n result = result.concat(css`\n ${property === null ? '' : property + ': '}${(props) =>\n formatValue(responsives[media][pseudo], props.theme, formatter)};;\n `);\n }\n });\n if (media !== 'all' && Object.keys(responsives[media]).length > 0) {\n result = result.concat(['}']);\n }\n });\n\n return result;\n};\n\nexport const cssProperty = <T>(property: string | null, formatter?: Formatter<T>): CssProperty<T> => {\n return (value: T, variants: AnonymousObject = {}): FlattenInterpolation<ThemeProps<any>> => {\n return toCss(property, formatter, value, variants);\n };\n};\n\nexport const preflight = (): FlattenInterpolation<ThemeProps<any>> => {\n return css`\n *,\n ::after,\n ::before {\n box-sizing: border-box;\n border-style: solid;\n border-width: 0;\n }\n ${toCss('font-family', themeFormatter('font.families'), 'sans', {})}\n button, input, optgroup, select, textarea {\n font-family: inherit;\n font-size: 100%;\n margin: 0;\n line-height: 1.15;\n }\n `;\n};\n\nexport const addClassname = (classname: string, existing?: string, after = true): string => {\n if (existing) {\n return after ? `${existing} ${classname}` : `${classname} ${existing}`;\n }\n return classname;\n};\n","import {\n BackgroundAttachmentProperty,\n BackgroundColorProperty,\n BackgroundPositionProperty,\n BackgroundRepeatProperty,\n BackgroundSizeProperty,\n OpacityProperty,\n BackgroundClipProperty,\n BackgroundImageProperty,\n BackgroundOriginProperty,\n} from 'csstype';\nimport { colorFormatter } from '../utils/formatter';\nimport { cssProperty } from '../utils/style';\nimport { ColorPropertyTheme, TLength } from './typings';\n\nexport const backgroundColor = cssProperty<ColorPropertyTheme | BackgroundColorProperty>(\n null,\n colorFormatter('background-color', 'background-opacity'),\n);\n\nexport const backgroundAttachment = cssProperty<BackgroundAttachmentProperty>('background-attachment');\n\nexport const backgroundClip = cssProperty<BackgroundClipProperty>('background-clip');\n\nexport const backgroundImage = cssProperty<BackgroundImageProperty>('background-image');\n\nexport const backgroundOpacity = cssProperty<OpacityProperty>('--background-opacity');\n\nexport const backgroundOrigin = cssProperty<BackgroundOriginProperty>('background-origin');\n\nexport const backgroundPosition = cssProperty<BackgroundPositionProperty<TLength>>('background-position');\n\nexport const backgroundRepeat = cssProperty<BackgroundRepeatProperty>('background-repeat');\n\nexport const backgroundSize = cssProperty<BackgroundSizeProperty<TLength>>('background-size');\n","import {\n MarginBottomProperty,\n MarginLeftProperty,\n MarginProperty,\n MarginRightProperty,\n MarginTopProperty,\n PaddingBottomProperty,\n PaddingLeftProperty,\n PaddingProperty,\n PaddingRightProperty,\n PaddingTopProperty,\n} from 'csstype';\nimport { themeFormatter } from '../utils/formatter';\nimport { cssProperty, toCss } from '../utils/style';\nimport { SpacingPropertyTheme, TLength, CssProperty } from './typings';\n\nexport const padding = cssProperty<SpacingPropertyTheme | PaddingProperty<TLength>>(\n 'padding',\n themeFormatter('spacings'),\n);\n\nexport const paddingY: CssProperty<SpacingPropertyTheme | PaddingProperty<TLength>> = (value, variants = {}) => {\n return toCss('padding-top', themeFormatter('spacings'), value, variants).concat(\n toCss('padding-bottom', themeFormatter('spacings'), value, variants),\n );\n};\n\nexport const paddingX: CssProperty<SpacingPropertyTheme | PaddingProperty<TLength>> = (value, variants = {}) => {\n return toCss('padding-left', themeFormatter('spacings'), value, variants).concat(\n toCss('padding-right', themeFormatter('spacings'), value, variants),\n );\n};\n\nexport const paddingLeft = cssProperty<SpacingPropertyTheme | PaddingLeftProperty<TLength>>(\n 'padding-left',\n themeFormatter('spacings'),\n);\n\nexport const paddingRight = cssProperty<SpacingPropertyTheme | PaddingRightProperty<TLength>>(\n 'padding-right',\n themeFormatter('spacings'),\n);\n\nexport const paddingTop = cssProperty<SpacingPropertyTheme | PaddingTopProperty<TLength>>(\n 'padding-top',\n themeFormatter('spacings'),\n);\n\nexport const paddingBottom = cssProperty<SpacingPropertyTheme | PaddingBottomProperty<TLength>>(\n 'padding-bottom',\n themeFormatter('spacings'),\n);\n\nexport const margin = cssProperty<SpacingPropertyTheme | MarginProperty<TLength>>('margin', themeFormatter('spacings'));\n\nexport const marginY: CssProperty<SpacingPropertyTheme | MarginProperty<TLength>> = (value, variants = {}) => {\n return toCss('margin-top', themeFormatter('spacings'), value, variants).concat(\n toCss('margin-bottom', themeFormatter('spacings'), value, variants),\n );\n};\n\nexport const marginX: CssProperty<SpacingPropertyTheme | MarginProperty<TLength>> = (value, variants = {}) => {\n return toCss('margin-left', themeFormatter('spacings'), value, variants).concat(\n toCss('margin-right', themeFormatter('spacings'), value, variants),\n );\n};\n\nexport const marginLeft = cssProperty<SpacingPropertyTheme | MarginLeftProperty<TLength>>(\n 'margin-left',\n themeFormatter('spacings'),\n);\n\nexport const marginRight = cssProperty<SpacingPropertyTheme | MarginRightProperty<TLength>>(\n 'margin-right',\n themeFormatter('spacings'),\n);\n\nexport const marginTop = cssProperty<SpacingPropertyTheme | MarginTopProperty<TLength>>(\n 'margin-top',\n themeFormatter('spacings'),\n);\n\nexport const marginBottom = cssProperty<SpacingPropertyTheme | MarginBottomProperty<TLength>>(\n 'margin-bottom',\n themeFormatter('spacings'),\n);\n","import {\n ColorProperty,\n FontFamilyProperty,\n FontFeatureSettingsProperty,\n FontKerningProperty,\n FontLanguageOverrideProperty,\n FontOpticalSizingProperty,\n FontProperty,\n FontSizeAdjustProperty,\n FontSizeProperty,\n FontStretchProperty,\n FontStyleProperty,\n FontSynthesisProperty,\n FontVariantAlternatesProperty,\n FontVariantCapsProperty,\n FontVariantEastAsianProperty,\n FontVariantLigaturesProperty,\n FontVariantNumericProperty,\n FontVariantPositionProperty,\n FontVariantProperty,\n FontVariationSettingsProperty,\n FontWeightProperty,\n GlobalsString,\n HyphensProperty,\n LetterSpacingProperty,\n LineHeightProperty,\n LineHeightStepProperty,\n OpacityProperty,\n OverflowWrapProperty,\n TextAlignProperty,\n TextDecorationColorProperty,\n TextDecorationLineProperty,\n TextDecorationProperty,\n TextDecorationStyleProperty,\n TextDecorationThicknessProperty,\n TextEmphasisColorProperty,\n TextEmphasisProperty,\n TextEmphasisStyleProperty,\n TextIndentProperty,\n TextJustifyProperty,\n TextOverflowProperty,\n TextShadowProperty,\n TextTransformProperty,\n TextUnderlinePositionProperty,\n WhiteSpaceProperty,\n WordBreakProperty,\n WordSpacingProperty,\n} from 'csstype';\nimport { colorFormatter, themeFormatter } from '../utils/formatter';\nimport { cssProperty } from '../utils/style';\nimport {\n ColorPropertyTheme,\n FontFamilyPropertyTheme,\n FontSizePropertyTheme,\n FontWeightPropertyTheme,\n Formatter,\n LetterSpacingPropertyTheme,\n LineHeightPropertyTheme,\n TLength,\n} from './typings';\n\nexport const color = cssProperty<ColorPropertyTheme | ColorProperty>(null, colorFormatter('color', 'text-opacity'));\n\nexport const font = cssProperty<FontProperty>('font');\n\nexport const fontFamily = cssProperty<FontFamilyPropertyTheme | FontFamilyProperty>(\n 'font-family',\n themeFormatter('font.families'),\n);\n\nexport const fontFeatureSettings = cssProperty<FontFeatureSettingsProperty>('font-feature-settings');\n\nexport const fontKerning = cssProperty<FontKerningProperty>('font-kerning');\n\nexport const fontLanguageOverride = cssProperty<FontLanguageOverrideProperty>('font-language-override');\n\nexport const fontOpticalSizing = cssProperty<FontOpticalSizingProperty>('font-optical-sizing');\n\nexport const fontSize = cssProperty<FontSizePropertyTheme | FontSizeProperty<TLength>>(\n 'font-size',\n themeFormatter('font.sizes'),\n);\n\nexport const fontSizeAdjust = cssProperty<FontSizeAdjustProperty>('font-size-adjust');\n\nexport const fontStretch = cssProperty<FontStretchProperty>('font-stetch');\n\n// normal; italic; oblique; oblique XXdeg;\nexport const fontStyle = cssProperty<FontStyleProperty>('font-style');\n\nexport const fontSynthesis = cssProperty<FontSynthesisProperty>('font-synthesis');\n\nexport const fontVariant = cssProperty<FontVariantProperty>('font-variant');\n\nexport const fontVariantAlternates = cssProperty<FontVariantAlternatesProperty>('font-variant-alternates');\n\nexport const fontVariantCaps = cssProperty<FontVariantCapsProperty>('font-variant-caps');\n\nexport const fontVariantEastAsian = cssProperty<FontVariantEastAsianProperty>('font-variant-east-asian');\n\nexport const fontVariantLigatures = cssProperty<FontVariantLigaturesProperty>('font-variant-ligatures');\n\nexport const fontVariantNumeric = cssProperty<FontVariantNumericProperty>('font-variant-numeric');\n\nexport const fontVariantPosition = cssProperty<FontVariantPositionProperty>('font-variant-position');\n\nexport const fontVariationSettings = cssProperty<FontVariationSettingsProperty>('font-variation-settings');\n\nexport const fontWeight = cssProperty<FontWeightPropertyTheme | FontWeightProperty>(\n 'font-weight',\n themeFormatter('font.weights'),\n);\n\nexport const hyphens = cssProperty<HyphensProperty>('hyphens');\n\nexport const letterSpacing = cssProperty<LetterSpacingPropertyTheme | LetterSpacingProperty<TLength>>(\n 'letter-spacing',\n themeFormatter('font.spacings'),\n);\n\nexport const lineHeight = cssProperty<LineHeightPropertyTheme | LineHeightProperty<TLength>>(\n 'line-height',\n themeFormatter('font.lineHeights'),\n);\n\nexport const lineHeightStep = cssProperty<LineHeightStepProperty<TLength>>('line-height-step');\n\nexport const overflowWrap = cssProperty<OverflowWrapProperty>('overflow-wrap');\n\n// left; center; right; justify\nexport const textAlign = cssProperty<TextAlignProperty>('text-align');\n\nexport const textDecoration = cssProperty<TextDecorationProperty<TLength>>('text-decoration');\n\nexport const textDecorationColor = cssProperty<TextDecorationColorProperty>(\n null,\n colorFormatter('text-decoration-color'),\n);\n\nexport const textDecorationLine = cssProperty<TextDecorationLineProperty>('text-decoration-line');\nexport const textDecorationStyle = cssProperty<TextDecorationStyleProperty>('text-decoration-style');\nexport const textDecorationThickness = cssProperty<TextDecorationThicknessProperty<TLength>>(\n 'text-decoration-thickness',\n);\n\nexport const textEmphasis = cssProperty<TextEmphasisProperty>('text-emphasis');\n\nexport const textEmphasisColor = cssProperty<TextEmphasisColorProperty>(null, colorFormatter('text-emphasis'));\n\nexport const textEmphasisPosition = cssProperty<GlobalsString>('text-emphasis-position');\n\nexport const textEmphasisStyle = cssProperty<TextEmphasisStyleProperty>('text-emphasis-style');\n\nexport const textIdent = cssProperty<TextIndentProperty<TLength>>('text-ident');\n\nexport const textJustify = cssProperty<TextJustifyProperty>('text-justify');\n\n// float between 0 and 1\nexport const textOpacity = cssProperty<OpacityProperty>('--text-opacity');\n\nexport const textOverflow = cssProperty<TextOverflowProperty>('text-overflow');\n\nexport const textTransform = cssProperty<TextTransformProperty>('text-transform');\n\nexport const textShadow = cssProperty<TextShadowProperty>('text-shadow');\n\nexport const textUnderlineOffset = cssProperty<TextUnderlinePositionProperty>('text-underline-offset');\n\nexport const textUnderlinePosition = cssProperty<TextUnderlinePositionProperty>('text-underline-position');\n\nexport const whiteSpace = cssProperty<WhiteSpaceProperty>('white-space');\n\n// normal; words; all; truncate\nconst wordBreakFormatter: Formatter<WordBreakProperty | 'normal' | 'words' | 'all' | 'truncate'> = (value) => {\n if (value === 'normal') {\n return 'word-break: normal;overflow-wrap: normal';\n }\n if (value === 'words') {\n return 'overflow-wrap: break-word';\n }\n if (value === 'all') {\n return 'word-break: break-all';\n }\n if (value === 'truncate') {\n return 'overflow: hidden;text-overflow: ellipsis;white-space: nowrap';\n }\n return `word-break: ${value}`;\n};\nexport const wordBreak = cssProperty<WordBreakProperty | 'normal' | 'words' | 'all' | 'truncate'>(\n null,\n wordBreakFormatter,\n);\n\nexport const wordSpacing = cssProperty<WordSpacingProperty<TLength>>('word-spacing');\n","import { css } from 'styled-components';\nimport { backgroundColor } from '../../styles/background';\nimport { paddingX, paddingY } from '../../styles/spacing';\nimport { ComponentStyle } from '../../styles/typings';\nimport { color, fontWeight } from '../../styles/typography';\nimport { ButtonProps } from './typings';\n\nconst buttonStyle: ComponentStyle<ButtonProps> = ({ kind = 'primary', theme }) => {\n const t = theme.button[kind];\n return css`\n ${backgroundColor(t.backgroundColor, {\n hover: t.hoverBackgroundColor,\n })}\n ${color(t.color)}\n ${fontWeight(t.fontWeight)}\n ${paddingX(t.paddingX)}\n ${paddingY(t.paddingY)}\n `;\n};\n\nexport default buttonStyle;\n","import styled from 'styled-components';\nimport ButtonComponent from './component';\nimport buttonStyle from './style';\n\nconst Button = styled(ButtonComponent)`\n ${buttonStyle}\n`;\n\nexport default Button;\n","import { useEffect } from 'react';\n\nexport const useClickOutside = (\n ref: React.MutableRefObject<HTMLElement> | HTMLElement | null,\n onClickOutside: (e: MouseEvent) => void,\n): void => {\n useEffect(() => {\n function handleClickOutside(event: MouseEvent) {\n const element = ref && !(ref instanceof HTMLElement) ? ref.current : ref;\n if (element && !element.contains(event.target as Node)) {\n onClickOutside(event);\n }\n }\n\n // Bind the event listener\n document.addEventListener('mousedown', handleClickOutside);\n return () => {\n // Unbind the event listener on clean up\n document.removeEventListener('mousedown', handleClickOutside);\n };\n }, [ref, onClickOutside]);\n};\n","import { Modifier } from '@popperjs/core';\n\nconst refWidth = (type: string): Partial<Modifier<string, Record<string, unknown>>> => {\n return {\n name: 'sameWidth',\n enabled: true,\n phase: 'beforeWrite',\n requires: ['computeStyles'],\n fn: ({ state }) => {\n state.styles.popper.width = `${state.rects.reference.width}px`;\n },\n effect: ({ state }) => {\n (state.elements.popper.style as any)[type] = `${state.elements.reference.getBoundingClientRect().width}px`;\n },\n } as Partial<Modifier<string, Record<string, unknown>>>;\n};\n\nexport const sameWidthPopperModifier = refWidth('width');\nexport const minWidthPopperModifier = refWidth('minWidth');\nexport const maxWidthPopperModifier = refWidth('maxWidth');\n","import React, { FC, useState } from 'react';\nimport { DropdownProps } from '../typings';\nimport { sameWidthPopperModifier } from '../../../utils/popper';\nimport { usePopper } from 'react-popper';\nimport { CSSTransition } from 'react-transition-group';\n\nconst DropdownComponent: FC<DropdownProps> = ({ className, refElement, open, children }) => {\n const [popperElement, setPopperElement] = useState<HTMLElement | null>(null);\n const { styles, attributes } = usePopper(refElement, popperElement, {\n modifiers: [sameWidthPopperModifier],\n });\n\n return (\n <CSSTransition\n in={open}\n timeout={500}\n classNames=\"o-dropdown\"\n mountOnEnter={true}\n appear={true}\n unmountOnExit={true}\n >\n <div\n style={styles.popper}\n {...attributes.popper}\n ref={setPopperElement}\n key=\"dropdown-container\"\n className={className}\n >\n {children}\n </div>\n </CSSTransition>\n );\n};\n\nexport default DropdownComponent;\n","import {\n OverscrollBehaviorBlockProperty,\n OverscrollBehaviorInlineProperty,\n OverscrollBehaviorProperty,\n OverscrollBehaviorXProperty,\n OverscrollBehaviorYProperty,\n} from 'csstype';\nimport { cssProperty } from '../utils/style';\nimport { Formatter, SizeProperty, Theme } from './typings';\nimport { pxFormatter } from '../utils/formatter';\n\nconst sizeFormatter = (type: 'width' | 'height', value: SizeProperty, theme: Theme) => {\n console.log(\"theme\", theme);\n if (theme.sizes[value] !== undefined) {\n return theme.sizes[value];\n }\n if (value === 'auto') return 'auto';\n if (value === 'none') return 'none';\n if (value === 'full') return '100%';\n if (value === 'screen') return type === 'height' ? '100vh' : '100vw';\n\n if (value.toString().includes('/')) {\n const [time, div] = value\n .toString()\n .split('/')\n .map((x) => parseInt(x));\n return `${(100 * time) / div}%`;\n }\n return pxFormatter(value, theme);\n};\n\nconst widthFormatter: Formatter<SizeProperty> = (value, theme) => {\n return sizeFormatter('width', value, theme);\n};\n\nconst heightFormatter: Formatter<SizeProperty> = (value, theme) => {\n return sizeFormatter('height', value, theme);\n};\n\n// spacing or fraction or auto or full or screen\nexport const width = cssProperty<SizeProperty>('width', widthFormatter);\n\n// spacing or fraction or auto or full or screen\nexport const minWidth = cssProperty<SizeProperty>('min-width', widthFormatter);\n\nexport const maxWidth = cssProperty<SizeProperty>('max-width', widthFormatter);\n\nexport const height = cssProperty<SizeProperty>('height', heightFormatter);\n\nexport const minHeight = cssProperty<SizeProperty>('min-height', heightFormatter);\n\nexport const maxHeight = cssProperty<SizeProperty>('max-height', heightFormatter);\n\nexport const overscrollBehavior = cssProperty<OverscrollBehaviorProperty>('overscroll-behavior');\n\nexport const overscrollBehaviorBlock = cssProperty<OverscrollBehaviorBlockProperty>('overscroll-behavior-block');\n\nexport const overscrollBehaviorInline = cssProperty<OverscrollBehaviorInlineProperty>('overscroll-behavior-inline');\n\nexport const overscrollBehaviorX = cssProperty<OverscrollBehaviorXProperty>('overscroll-behavior-x');\n\nexport const overscrollBehaviorY = cssProperty<OverscrollBehaviorYProperty>('overscroll-behavior-y');\n","import {\n BorderBottomColorProperty,\n BorderBottomLeftRadiusProperty,\n BorderBottomProperty,\n BorderBottomRightRadiusProperty,\n BorderBottomStyleProperty,\n BorderBottomWidthProperty,\n BorderColorProperty,\n BorderImageOutsetProperty,\n BorderImageProperty,\n BorderImageRepeatProperty,\n BorderImageSliceProperty,\n BorderImageSourceProperty,\n BorderImageWidthProperty,\n BorderLeftColorProperty,\n BorderLeftProperty,\n BorderLeftStyleProperty,\n BorderLeftWidthProperty,\n BorderProperty,\n BorderRadiusProperty,\n BorderRightColorProperty,\n BorderRightProperty,\n BorderRightStyleProperty,\n BorderRightWidthProperty,\n BorderStyleProperty,\n BorderTopColorProperty,\n BorderTopLeftRadiusProperty,\n BorderTopProperty,\n BorderTopRightRadiusProperty,\n BorderTopStyleProperty,\n BorderTopWidthProperty,\n BorderWidthProperty,\n BoxShadowProperty,\n OpacityProperty,\n} from 'csstype';\nimport { colorFormatter, pxFormatter, themeFormatter } from '../utils/formatter';\nimport { cssProperty } from '../utils/style';\nimport { ColorPropertyTheme, RadiusPropertyTheme, ShadowPropertyTheme, TLength } from './typings';\n\nexport const border = cssProperty<BorderProperty<TLength>>('border');\nexport const borderTop = cssProperty<BorderTopProperty<TLength>>('border-top');\nexport const borderBottom = cssProperty<BorderBottomProperty<TLength>>('border-bottom');\nexport const borderLeft = cssProperty<BorderLeftProperty<TLength>>('border-left');\nexport const borderRight = cssProperty<BorderRightProperty<TLength>>('border-right');\n\nexport const borderColor = cssProperty<ColorPropertyTheme | BorderColorProperty>(\n null,\n colorFormatter('border-color', 'border-opacity'),\n);\nexport const borderTopColor = cssProperty<ColorPropertyTheme | BorderTopColorProperty>(\n null,\n colorFormatter('border-top-color', 'border-top-opacity'),\n);\nexport const borderBottomColor = cssProperty<ColorPropertyTheme | BorderBottomColorProperty>(\n null,\n colorFormatter('border-bottom-color', 'border-bottom-opacity'),\n);\nexport const borderLeftColor = cssProperty<ColorPropertyTheme | BorderLeftColorProperty>(\n null,\n colorFormatter('border-left-color', 'border-left-opacity'),\n);\nexport const borderRightColor = cssProperty<ColorPropertyTheme | BorderRightColorProperty>(\n null,\n colorFormatter('border-right-color', 'border-right-opacity'),\n);\n\nexport const borderImage = cssProperty<BorderImageProperty>('border-image');\nexport const borderImageOutset = cssProperty<BorderImageOutsetProperty<TLength>>('border-image-outset');\nexport const borderImageRepeat = cssProperty<BorderImageRepeatProperty>('border-image-repeat');\nexport const borderImageSlice = cssProperty<BorderImageSliceProperty>('border-image-slice');\nexport const borderImageSource = cssProperty<BorderImageSourceProperty>('border-image-source');\nexport const borderImageWidth = cssProperty<BorderImageWidthProperty<TLength>>('border-image-width');\n\nexport const borderOpacity = cssProperty<OpacityProperty>('--border-opacity');\nexport const borderTopOpacity = cssProperty<OpacityProperty>('--border-top-opacity');\nexport const borderBottomOpacity = cssProperty<OpacityProperty>('-border-bottom-opacity');\nexport const borderLeftOpacity = cssProperty<OpacityProperty>('--border-left-opacity');\nexport const borderRightOpacity = cssProperty<OpacityProperty>('--border-right-opacity');\n\nexport const borderRadius = cssProperty<RadiusPropertyTheme | BorderRadiusProperty<TLength>>(\n 'border-radius',\n themeFormatter('radius'),\n);\nexport const borderTopLeftRadius = cssProperty<BorderTopLeftRadiusProperty<TLength>>(\n 'border-top-left-radius',\n themeFormatter('radius'),\n);\nexport const borderBottomRadius = cssProperty<BorderBottomLeftRadiusProperty<TLength>>(\n 'border-bottom-left-radius',\n themeFormatter('radius'),\n);\nexport const borderLeftRadius = cssProperty<BorderTopRightRadiusProperty<TLength>>(\n 'border-top-right-radius',\n themeFormatter('radius'),\n);\nexport const borderRightRadius = cssProperty<BorderBottomRightRadiusProperty<TLength>>(\n 'border-bottom-right-radius',\n themeFormatter('radius'),\n);\n\nexport const borderStyle = cssProperty<BorderStyleProperty>('border-style');\nexport const borderTopStyle = cssProperty<BorderTopStyleProperty>('border-top-style');\nexport const borderBottomStyle = cssProperty<BorderBottomStyleProperty>('border-bottom-style');\nexport const borderLeftStyle = cssProperty<BorderLeftStyleProperty>('border-left-style');\nexport const borderRightStyle = cssProperty<BorderRightStyleProperty>('border-right-style');\n\nexport const borderWidth = cssProperty<number | BorderWidthProperty<TLength>>('border-width', pxFormatter);\nexport const borderTopWidth = cssProperty<number | BorderTopWidthProperty<TLength>>('border-top-width', pxFormatter);\nexport const borderBottomWidth = cssProperty<number | BorderBottomWidthProperty<TLength>>(\n 'border-bottom-width',\n pxFormatter,\n);\nexport const borderLeftWidth = cssProperty<number | BorderLeftWidthProperty<TLength>>('border-left-width', pxFormatter);\nexport const borderRightWidth = cssProperty<number | BorderRightWidthProperty<TLength>>(\n 'border-right-width',\n pxFormatter,\n);\n\nexport const boxShadow = cssProperty<ShadowPropertyTheme | BoxShadowProperty>('box-shadow', themeFormatter('shadow'));\n","import { cssProperty } from '../utils/style';\nimport {\n OverflowProperty,\n OverflowXProperty,\n OverflowYProperty,\n OverflowBlockProperty,\n OverflowInlineProperty,\n} from 'csstype';\n\n// auto; hidden; visible; scroll;\nexport const overflow = cssProperty<OverflowProperty>('overflow');\n\nexport const overflowBlock = cssProperty<OverflowBlockProperty>('overflow-block');\n\nexport const overflowInline = cssProperty<OverflowInlineProperty>('overflow-inline');\n\n// auto; hidden; visible; scroll;\nexport const overflowX = cssProperty<OverflowXProperty>('overflow-x');\n\n// auto; hidden; visible; scroll;\nexport const overflowY = cssProperty<OverflowYProperty>('overflow-y');\n","import {\n GlobalsString,\n TransitionProperty,\n TransitionPropertyProperty,\n TransitionTimingFunctionProperty,\n} from 'csstype';\nimport { cssProperty } from '../utils/style';\n\nexport const transition = cssProperty<TransitionProperty>('transition');\nexport const transitionDelay = cssProperty<GlobalsString>('transition-delay');\nexport const transitionDuration = cssProperty<GlobalsString>('transition-duration');\nexport const transitionProperty = cssProperty<TransitionPropertyProperty>('transition-property');\nexport const transitionTimingFunction = cssProperty<TransitionTimingFunctionProperty>('transition-timing-function');\n","import { OpacityProperty } from 'csstype';\nimport { cssProperty } from '../utils/style';\n\nexport const opacity = cssProperty<OpacityProperty>('opacity');\n","import { css } from 'styled-components';\nimport { ComponentStyle } from '../../styles/typings';\nimport { preflight } from '../../utils/style';\nimport { DropdownProps } from './typings';\nimport { width, height } from '../../styles/size';\nimport { borderRadius, borderColor, boxShadow } from '../../styles/border';\nimport { overflowY } from '../../styles/overflow';\nimport { backgroundColor } from '../../styles/background';\nimport { transitionDuration, transitionProperty, transitionTimingFunction } from '../../styles/transition';\nimport { opacity } from '../../styles/effects';\n\nconst dropdownStyle: ComponentStyle<DropdownProps> = () => {\n return css`\n ${preflight()}\n ${width(64)}\n ${borderRadius('default')}\n ${borderColor('gray-200')}\n ${boxShadow('default')}\n ${overflowY('auto')}\n ${height('200px')}\n ${backgroundColor('white')}\n &.o-dropdown-enter {\n ${opacity(0)}\n }\n &.o-dropdown-enter-active {\n ${transitionDuration('.5s')}\n ${transitionProperty('opacity')}\n ${transitionTimingFunction('ease-in-out')} \n ${opacity(1)}\n } \n &.o-dropdown-exit-active {\n ${transitionDuration('.5s')}\n ${transitionProperty('opacity')}\n ${transitionTimingFunction('ease-in-out')} \n ${opacity(0)}\n } \n \n `;\n};\n\nexport default dropdownStyle;\n","import styled from 'styled-components';\nimport DropdownComponent from './components/DropdownComponent';\nimport dropdownStyle from './style';\n\nconst Dropdown = styled(DropdownComponent)`\n ${dropdownStyle}\n`;\n\nexport default Dropdown;\n","import React, { FC } from 'react';\nimport styled, { keyframes } from 'styled-components';\n\nconst IconComponent: FC<React.InputHTMLAttributes<HTMLDivElement>> = ({ className }) => {\n return (\n <div className={className}>\n <svg className=\"o-icon-loading-svg\" viewBox=\"0 0 100 100\" xmlns=\"http://www.w3.org/2000/svg\">\n <circle className=\"o-icon-loading-svg-circle\" cx=\"50\" cy=\"50\" r=\"45\" />\n </svg>\n </div>\n );\n};\n\nconst iconKeyFrame = keyframes`\n 0% {\n transform: rotateZ(0deg);\n }\n 100% {\n transform: rotateZ(360deg);\n }\n`;\n\nconst iconCircleKeyFrame = keyframes`\n 0%, 25% {\n stroke-dashoffset: 280;\n transform: rotate(0);\n }\n\n 50%, 75% {\n stroke-dashoffset: 75;\n transform: rotate(45deg);\n }\n\n 100% {\n stroke-dashoffset: 280;\n transform: rotate(360deg);\n }\n`;\n\nexport default styled(IconComponent)`\n height: 100%;\n margin-left: auto;\n margin-right: auto;\n position: relative;\n top: 50%;\n transform: translateY(-50%);\n width: 100%;\n\n .o-icon-loading-svg {\n animation: 2s linear infinite both ${iconKeyFrame};\n }\n\n .o-icon-loading-svg-circle {\n animation: 1.4s ease-in-out infinite both ${iconCircleKeyFrame};\n fill: transparent;\n stroke: currentColor;\n stroke-dasharray: 285;\n stroke-linecap: round;\n stroke-width: 10px;\n transform-origin: 50% 50%;\n }\n`;\n","import React, { FC } from 'react';\nimport { SelectIconProps } from '../typings';\nimport LoadingIcon from '../../icon/LoadingIcon';\n\nconst SelectIconComponent: FC<SelectIconProps> = ({ onIconClick, open, loading }) => {\n if (!loading) {\n return (\n <div className=\"o-select-icon-container\" onClick={onIconClick}>\n <button className=\"o-select-icon\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"100%\"\n height=\"100%\"\n fill=\"none\"\n viewBox=\"0 0 24 24\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n transform={`rotate(${open ? '0' : '180'})`}\n className=\"o-select-arrow-svg\"\n >\n <polyline points=\"18 15 12 9 6 15\"></polyline>\n </svg>\n </button>\n </div>\n );\n } else {\n return (\n <div className=\"o-select-icon-container\" onClick={onIconClick}>\n <div className=\"o-select-icon\">\n <LoadingIcon />\n </div>\n </div>\n );\n }\n};\n\nexport default SelectIconComponent;\n","import { useIsomorphicLayoutEffect } from 'onekijs-core';\nimport React, { FC, useCallback, useRef, useMemo } from 'react';\nimport { SelectInputProps } from '../typings';\nimport SelectIconComponent from './SelectIconComponent';\n\nconst SelectInputComponent: FC<SelectInputProps> = ({\n onIconClick,\n open,\n placeholder,\n loading,\n IconComponent = SelectIconComponent,\n onFocus,\n onBlur,\n onChange,\n value,\n focus,\n}) => {\n const inputRef = useRef<HTMLInputElement>(null);\n const partialValueRef = useRef('');\n const proxifyRef = useRef(true);\n const proxyValue =\n value === undefined || !proxifyRef.current ? (focus ? partialValueRef.current : '') : String(value);\n\n const handleChange = useCallback(\n (e: React.ChangeEvent<HTMLInputElement>) => {\n const input = inputRef.current;\n if (input) {\n const currentSelectionStart = input.selectionStart;\n const currentSelectionEnd = input.selectionEnd;\n if (currentSelectionStart && currentSelectionStart !== currentSelectionEnd) {\n partialValueRef.current = input.value.substring(0, currentSelectionStart);\n } else {\n partialValueRef.current = input.value;\n }\n }\n if (onChange) {\n e.target.value = partialValueRef.current;\n onChange(e);\n }\n },\n [onChange],\n );\n\n const handleKeyDown = useCallback((e: React.KeyboardEvent<HTMLInputElement>) => {\n const input = inputRef.current;\n if (!input) return;\n if (e.keyCode === 8 || e.keyCode === 46) {\n proxifyRef.current = false;\n } else {\n const currentSelectionStart = input.selectionStart;\n const currentSelectionEnd = input.selectionEnd;\n if (currentSelectionStart === currentSelectionEnd && currentSelectionStart === input.value.length) {\n proxifyRef.current = true;\n }\n }\n }, []);\n\n useIsomorphicLayoutEffect(() => {\n const input = inputRef.current;\n if (input && focus) {\n if (value !== undefined && String(value).startsWith(partialValueRef.current) && proxifyRef.current) {\n input.setSelectionRange(partialValueRef.current.length, String(value).length);\n }\n }\n });\n\n const className = useMemo(() => {\n const result = ['o-select-input-container'];\n if (focus) {\n result.push('o-select-input-focus');\n }\n return result.join(' ');\n }, [focus]);\n\n return (\n <div className={className}>\n <div className=\"o-select-input-marker\" />\n <input\n ref={inputRef}\n placeholder={placeholder}\n className=\"o-select-input\"\n onFocus={onFocus}\n onBlur={onBlur}\n onChange={handleChange}\n onKeyDown={handleKeyDown}\n value={proxyValue}\n />\n <IconComponent onIconClick={onIconClick} open={open} loading={loading} />\n </div>\n );\n};\n\nexport default SelectInputComponent;\n","import React, { FC } from 'react';\nimport { ListItemProps } from '../typings';\nimport { LoadingStatus } from 'onekijs-core';\n\nconst ListItemComponent: FC<ListItemProps> = React.memo(({ item }) => {\n return (\n <div className=\"o-list-item\">\n {item.data === undefined && item.meta?.loadingStatus === LoadingStatus.Loading ? 'loading' : item.text}\n </div>\n );\n});\n\nListItemComponent.displayName = 'ListItemComponent';\n\nexport default ListItemComponent;\n","import { Collection, CollectionStatus, ItemMeta, LoadingStatus, Item, isCollection } from 'onekijs-core';\n\n// export const adapt = <T, M extends ItemMeta>(\n// item: Item<T, M>,\n// meta: ItemMeta,\n// adapter?: ListItemAdapter<T, M>,\n// ): ListItem<T, M> => {\n// const loading = isLoading(meta);\n// const deprecated = isDeprecated(meta);\n// const result: ListItem<T> = { loading, deprecated, item };\n\n// let adaptee;\n// if (item !== undefined) {\n// if (adapter) {\n// adaptee = adapter(item);\n// } else if (['string', 'number', 'boolean'].includes(typeof item)) {\n// adaptee = {\n// id: item,\n// text: String(item),\n// };\n// } else {\n// adaptee = {\n// id: (item as any).id,\n// text: (item as any).text,\n// };\n// }\n// } else {\n// adaptee = {\n// id: undefined,\n// text: undefined,\n// };\n// }\n// Object.assign(result, adaptee);\n// return result;\n// };\n\n// export const canFetchMore = (data: any[] | Collection<any>): boolean => {\n// if (\n// isCollection(data) &&\n// ![ListStatus.Loading, ListStatus.PartialLoading, ListStatus.Deprecated, ListStatus.PartialDeprecated].includes(\n// getListStatus(data),\n// )\n// ) {\n// return data.total === undefined;\n// }\n// return false;\n// };\n\nexport const emptyListItem: Item<any, ItemMeta> = {};\n\nexport const canFetchMore = (collection: any[] | Collection<unknown, ItemMeta>): boolean => {\n return (\n isCollection(collection) && (collection as Collection<unknown, ItemMeta>).status === LoadingStatus.PartialLoaded\n );\n};\n\nexport const getListStatus = (collection: any[] | Collection<unknown, ItemMeta>): CollectionStatus => {\n if (isCollection(collection)) {\n return (collection as Collection<unknown, ItemMeta>).status;\n }\n return LoadingStatus.Loaded;\n};\n","import React, { FC, useEffect } from 'react';\nimport { LoadingStatus } from 'onekijs-core';\nimport { addClassname } from '../../../utils/style';\nimport { StandardListProps } from '../typings';\nimport ListItemComponent from './ListItemComponent';\nimport { emptyListItem } from '../utils';\n\nconst StandardListComponent: FC<StandardListProps> = ({\n className,\n collection,\n ItemComponent = ListItemComponent,\n onItemClick,\n onItemMouseOver,\n}) => {\n const items = collection.items ?? [];\n\n useEffect(() => {\n if (collection.status === LoadingStatus.NotInitialized) {\n return collection.load();\n }\n }, [collection]);\n\n return (\n <div className={addClassname('o-list', className)}>\n {items.map((item: any, index: number) => {\n return (\n <ItemComponent\n key={`item-${index}`}\n index={index}\n item={item || emptyListItem}\n onClick={onItemClick}\n onMouseOver={onItemMouseOver}\n />\n );\n })}\n </div>\n );\n};\n\nexport default StandardListComponent;\n","import React, { FC, useCallback, useEffect, useMemo, useRef } from 'react';\nimport { useVirtual } from 'react-virtual';\nimport { CollectionStatus, Item, ItemMeta, LoadingStatus, useIsomorphicLayoutEffect, toCollectionItem } from 'onekijs-core';\nimport { addClassname } from '../../../utils/style';\nimport { VirtualListProps } from '../typings';\nimport { canFetchMore, getListStatus, emptyListItem } from '../utils';\nimport ListItemComponent from './ListItemComponent';\n\nconst defaultHeight = 200;\nconst defaultItemHeight = 21;\nconst defaultPreload = 100;\nconst defaultIncrement = 100;\n\nconst VirtualistComponent: FC<VirtualListProps> = ({\n className,\n collection,\n height = defaultHeight,\n ItemComponent = ListItemComponent,\n itemHeight = defaultItemHeight,\n preload = defaultPreload,\n increment = defaultIncrement,\n onItemClick,\n onItemMouseOver,\n}) => {\n const parentRef = useRef(null);\n\n const estimatedItemHeight = useCallback(\n (index: number) => {\n if (typeof itemHeight === 'function') {\n return itemHeight(index) || defaultItemHeight;\n }\n return defaultItemHeight;\n },\n [itemHeight],\n );\n\n const memo = useMemo(() => {\n const result: {\n items: (Item<any, ItemMeta> | undefined)[];\n status: CollectionStatus;\n } = {\n items: [],\n status: getListStatus(collection),\n };\n\n if (result.status === LoadingStatus.NotInitialized) {\n result.items = Array(preload).fill(toCollectionItem(undefined, collection.getAdapter()));\n } else {\n result.items = collection.items || [];\n }\n return result;\n }, [collection, preload]);\n\n const { totalSize, virtualItems, scrollToIndex } = useVirtual({\n size: memo.items.length,\n estimateSize: estimatedItemHeight,\n parentRef,\n });\n\n useIsomorphicLayoutEffect(() => {\n const offset = collection.getOffset() || 0;\n const firstVirualItem = virtualItems[0];\n const firstVirualItemIndex = firstVirualItem ? firstVirualItem.index : 0;\n if (\n collection.status !== LoadingStatus.Loading &&\n collection.status !== LoadingStatus.Deprecated &&\n offset === 0 &&\n firstVirualItemIndex !== 0\n ) {\n scrollToIndex(0);\n }\n }, [collection]);\n\n useEffect(() => {\n if (collection.status === LoadingStatus.NotInitialized) {\n collection.load(preload);\n } else if (canFetchMore(collection)) {\n const lastVirtualItem = virtualItems[virtualItems.length - 1];\n const lastVirtualItemIndex = lastVirtualItem ? lastVirtualItem.index : 0;\n if (lastVirtualItemIndex >= memo.items.length - preload / 2) {\n collection.load(increment, (collection.items as any[]).length);\n }\n }\n }, [collection, preload, virtualItems, increment, memo]);\n\n return (\n <div\n ref={parentRef}\n className={addClassname('o-list', className)}\n style={{\n maxHeight: `${typeof height === 'string' ? height : `${height}px`}`,\n overflow: 'auto',\n }}\n >\n <div\n className=\"o-list-virtualizer\"\n style={{\n height: `${totalSize}px`,\n width: '100%',\n position: 'relative',\n }}\n >\n {virtualItems.map(({ index, measureRef, start }) => {\n const listItem = memo.items[index];\n return (\n <div\n className=\"o-list-virtual-item\"\n key={`virtual-item-${index}`}\n ref={measureRef}\n style={{\n position: 'absolute',\n top: 0,\n left: 0,\n width: '100%',\n minHeight: '20px',\n transform: `translateY(${start}px)`,\n }}\n >\n <ItemComponent\n key={`item-${index}`}\n index={index}\n item={listItem || emptyListItem}\n onClick={onItemClick}\n onMouseOver={onItemMouseOver}\n />\n </div>\n );\n })}\n </div>\n </div>\n );\n};\n\nexport default VirtualistComponent;\n","import { omit, useCollection } from 'onekijs-core';\nimport React, { FC } from 'react';\nimport { ListProps, StandardListProps, ListInternalProps } from '../typings';\nimport StandardListComponent from './StandardListComponent';\nimport VirtualistComponent from './VirtualListComponent';\n\nconst ListComponent: FC<ListProps> = (props) => {\n const { items, ...listInternalProps } = props;\n if (Array.isArray(items)) {\n return <ListDataComponent {...listInternalProps} items={items} />;\n } else {\n return <ListInternalComponent {...listInternalProps} collection={items} />;\n }\n};\n\nconst ListDataComponent: FC<Omit<ListProps, 'items'> & { items: any[] }> = (props) => {\n const { items, ...listInternalProps } = props;\n const collection = useCollection(items);\n return <ListInternalComponent {...listInternalProps} collection={collection} />;\n};\n\nconst ListInternalComponent: FC<ListInternalProps> = (props) => {\n if (props.height) {\n return <VirtualistComponent {...props} />;\n } else {\n const standardProps: StandardListProps = omit(props, ['itemHeight', 'height', 'preload']);\n return <StandardListComponent {...standardProps} />;\n }\n};\n\nexport default ListComponent;\n","import React, { FC, useMemo } from 'react';\nimport { SelectOptionProps } from '../typings';\nimport { LoadingStatus } from 'onekijs-core';\n\nconst SelectOptionComponent: FC<SelectOptionProps> = React.memo(({ item, index, onClick, onMouseOver }) => {\n const { data, text, meta } = item;\n let content = '';\n let clickable = !!onClick;\n let hoverable = !!onMouseOver;\n if (data === undefined && meta?.loadingStatus === LoadingStatus.Loading) {\n content = 'loading';\n clickable = false;\n hoverable = false;\n } else {\n content = text || '';\n if (meta?.selected) {\n content += ' *';\n }\n }\n const classNames = useMemo(() => {\n const classNames = ['o-select-option'];\n if (clickable) {\n classNames.push('o-select-option-clickable');\n }\n if (hoverable) {\n classNames.push('o-select-option-hoverable');\n }\n return classNames.join(' ');\n }, [clickable, hoverable]);\n\n return (\n <div\n className={classNames}\n onClick={() => clickable && onClick && onClick(item, index)}\n onMouseOver={() => hoverable && onMouseOver && onMouseOver(item, index)}\n >\n {data === undefined && meta?.loadingStatus === LoadingStatus.Loading ? 'loading' : content}\n </div>\n );\n});\n\nSelectOptionComponent.displayName = 'SelectOptionComponent';\n\nexport default SelectOptionComponent;\n","import React, { FC } from 'react';\nimport ListComponent from '../../list/components/ListComponent';\nimport { SelectOptionsProps } from '../typings';\nimport SelectOptionComponent from './SelectOptionComponent';\n\nconst SelectOptionsComponent: FC<SelectOptionsProps> = ({\n search,\n ItemComponent = SelectOptionComponent,\n ...listProps\n}) => {\n return <ListComponent className=\"o-select-options\" ItemComponent={ItemComponent} height=\"100%\" {...listProps} />;\n};\n\nexport default SelectOptionsComponent;\n","import { AnonymousObject, get } from 'onekijs-core';\nimport React, { FC, useCallback, useMemo, useRef, useState, useEffect } from 'react';\nimport { LoadingStatus, Item, useCollection, toCollectionItem } from 'onekijs-core';\nimport { useClickOutside } from '../../../utils/event';\nimport Dropdown from '../../dropdown';\nimport { SelectInternalProps, SelectOptionMeta, SelectOptionHandler, SelectProps } from '../typings';\nimport SelectInputComponent from './SelectInputComponent';\nimport SelectOptionsComponent from './SelectOptionsComponent';\n\nconst SelectComponent: FC<SelectProps<any>> = (props) => {\n const { items, ...selectInternalProps } = props;\n if (Array.isArray(items)) {\n return <SelectDataComponent {...selectInternalProps} items={items} />;\n } else {\n return <SelectInternalComponent {...selectInternalProps} collection={items} />;\n }\n};\n\nconst SelectDataComponent: FC<Omit<SelectProps, 'items'> & { items: any[] }> = (props) => {\n const { items, ...selectInternalProps } = props;\n const collection = useCollection(items);\n return <SelectInternalComponent {...selectInternalProps} collection={collection} />;\n};\n\nconst SelectInternalComponent: FC<SelectInternalProps> = ({\n className,\n placeholder,\n collection,\n InputComponent = SelectInputComponent,\n autoFocus,\n value,\n onChange,\n}) => {\n const [open, setOpen] = useState(false);\n const [focus, setFocus] = useState(!!autoFocus);\n const stateRef = useRef<AnonymousObject>({});\n const previousValueRef = useRef<Item<any, SelectOptionMeta>>();\n\n const loading = useMemo(() => {\n return collection.status === LoadingStatus.Loading || collection.status === LoadingStatus.PartialLoading;\n }, [collection]);\n\n const delayOpen = useMemo(() => {\n return loading && !open;\n }, [open, loading]);\n\n const [containerRef, setContainerRef] = useState<HTMLElement | null>(null);\n\n const onBlur = useCallback(() => {\n if (!stateRef.current.keepFocus) {\n setFocus(false);\n setOpen(false);\n }\n }, []);\n\n useClickOutside(containerRef, () => {\n onBlur();\n });\n\n const onInputChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n if (!open) {\n setOpen(true);\n }\n collection.search(e.target.value);\n };\n\n const selectedItem = useMemo(() => {\n if (!focus) {\n return toCollectionItem(value, collection.getAdapter());\n } else {\n if (collection.getSearch()) {\n return get(collection, 'items.0');\n } else {\n return toCollectionItem(value, collection.getAdapter());\n }\n }\n }, [collection, value, focus]);\n\n const onSelect: SelectOptionHandler = useCallback(\n (item) => {\n if (onChange) {\n onChange(item.data);\n }\n setOpen(false);\n collection.clearSearch();\n },\n [onChange, collection],\n );\n\n useEffect(() => {\n if (value !== previousValueRef.current) {\n const item = toCollectionItem(value, collection.getAdapter());\n const previousItem = toCollectionItem(previousValueRef.current, collection.getAdapter());\n collection.setMeta(previousItem, 'selected', false);\n collection.setMeta(item, 'selected', true);\n }\n previousValueRef.current = value;\n }, [value, collection]);\n\n return (\n <div\n className={className}\n ref={setContainerRef}\n onClick={() => setFocus(true)}\n onMouseDown={() => (stateRef.current.keepFocus = true)}\n onMouseUp={() => (stateRef.current.keepFocus = false)}\n >\n <InputComponent\n placeholder={placeholder}\n onIconClick={() => !delayOpen && setOpen(!open)}\n open={open && !delayOpen}\n loading={loading}\n onChange={onInputChange}\n value={selectedItem.text}\n focus={focus}\n onFocus={() => setFocus(true)}\n onBlur={onBlur}\n />\n <Dropdown refElement={containerRef} open={open}>\n <SelectOptionsComponent items={collection} onItemClick={onSelect} />\n </Dropdown>\n </div>\n );\n};\n\nexport default SelectComponent;\n","import {\n AlignContentProperty,\n AlignItemsProperty,\n AlignSelfProperty,\n ColumnGapProperty,\n GapProperty,\n JustifyContentProperty,\n JustifySelfProperty,\n PlaceContentProperty,\n PlaceItemsProperty,\n PlaceSelfProperty,\n RowGapProperty,\n} from 'csstype';\nimport { themeFormatter } from '../utils/formatter';\nimport { cssProperty, toCss } from '../utils/style';\nimport { CssProperty, SpacingPropertyTheme, TLength } from './typings';\n\n// flex-start; center; flex-end; space-between; space-around;\nexport const alignContent = cssProperty<AlignContentProperty>('align-content');\n\n// stretch; flex-start; center; flex-end; baseline;\nexport const alignItems = cssProperty<AlignItemsProperty>('align-items');\n\n// auto; flex-start; center; flex-end; stretch;\nexport const alignSelf = cssProperty<AlignSelfProperty>('align-self');\n\n// theme.spacings\nexport const columnGap: CssProperty<SpacingPropertyTheme | ColumnGapProperty<TLength>> = (value, variants = {}) => {\n return toCss('column-gap', themeFormatter('spacings'), value, variants).concat(\n toCss('grid-column-gap', themeFormatter('spacings'), value, variants),\n );\n};\n\n// theme.spacings\nexport const gap: CssProperty<SpacingPropertyTheme | GapProperty<TLength>> = (value, variants = {}) => {\n return toCss('gap', themeFormatter('spacings'), value, variants).concat(\n toCss('grid-gap', themeFormatter('spacings'), value, variants),\n );\n};\n\n// flex-start; center; flex-end; space-between; space-around;\nexport const justifyContent = cssProperty<JustifyContentProperty>('justify-content');\n\nexport const justifySelf = cssProperty<JustifySelfProperty>('justify-self');\n\nexport const placeContent = cssProperty<PlaceContentProperty>('place-content');\n\nexport const placeItems = cssProperty<PlaceItemsProperty>('place-items');\n\nexport const placeSelf = cssProperty<PlaceSelfProperty>('place-self');\n\n// theme.spacings\nexport const rowGap: CssProperty<SpacingPropertyTheme | RowGapProperty<TLength>> = (value, variants = {}) => {\n return toCss('row-gap', themeFormatter('spacings'), value, variants).concat(\n toCss('grid-row-gap', themeFormatter('spacings'), value, variants),\n );\n};\n","import { DisplayProperty, ZoomProperty } from 'csstype';\nimport { css, FlattenInterpolation, ThemeProps } from 'styled-components';\nimport { cssProperty } from '../utils/style';\nimport { CssProperty, Formatter } from './typings';\n\n// row; row-reverse; column; column-reverse\nexport const container: CssProperty<never> = () => {\n let result: FlattenInterpolation<ThemeProps<any>> = css`width: 100%'`;\n ['sm', 'md', 'lg', 'xl'].forEach((media) => {\n result = result.concat(css`\n ${(props) => `@media (min-width: ${props.theme.breakpoints[media]}) {\n max-width: ${props.theme.breakpoints[media]};\n }`}\n `);\n });\n return result;\n};\n\n// none; block; flow-root; inline-block; inline; flex; inline-flex; grid;\n// inline-grid; table; table-caption; table-cell; table-column;\n// table-column-group; table-footer-group; table-header-group; table-row;\nexport const display = cssProperty<DisplayProperty>('display');\n\n// boolean\nconst visibleFormatter: Formatter<boolean> = (value) => (value ? 'visible' : 'hidden');\nexport const visibility = cssProperty<boolean>('visibility', visibleFormatter);\n\nexport const zoom = cssProperty<ZoomProperty>('zoom');\n","import {\n AppearanceProperty,\n CursorProperty,\n OutlineProperty,\n PointerEventsProperty,\n ResizeProperty,\n UserSelectProperty,\n AspectRatioProperty,\n BoxSizingProperty,\n CaretColorProperty,\n OutlineColorProperty,\n OutlineOffsetProperty,\n OutlineStyleProperty,\n OutlineWidthProperty,\n TouchActionProperty,\n} from 'csstype';\nimport { cssProperty } from '../utils/style';\nimport { TLength } from './typings';\nimport { colorFormatter, pxFormatter } from '../utils/formatter';\n\nexport const appearance = cssProperty<AppearanceProperty>('appearance');\n\nexport const aspectRatio = cssProperty<AspectRatioProperty>('aspect-ratio');\n\nexport const boxSizing = cssProperty<BoxSizingProperty>('box-sizing');\n\nexport const caretColor = cssProperty<CaretColorProperty>(null, colorFormatter('caret-color'));\n\nexport const cursor = cssProperty<CursorProperty>('cursor');\n\nexport const outline = cssProperty<OutlineProperty<TLength>>('outline');\n\nexport const outlineColor = cssProperty<OutlineColorProperty>(null, colorFormatter('outline-color'));\n\nexport const outlineOffset = cssProperty<OutlineOffsetProperty<TLength>>('outline-offset');\n\nexport const outlineStyle = cssProperty<OutlineStyleProperty>('outline-style');\n\nexport const outlineWidth = cssProperty<OutlineWidthProperty<TLength>>('outline', pxFormatter);\n\nexport const pointerEvents = cssProperty<PointerEventsProperty>('pointer-events');\n\nexport const resize = cssProperty<ResizeProperty>('resize');\n\nexport const touchAction = cssProperty<TouchActionProperty>('touch-action');\n\nexport const userSelect = cssProperty<UserSelectProperty>('user-select');\n","import {\n BorderCollapseProperty,\n BorderSpacingProperty,\n CaptionSideProperty,\n EmptyCellsProperty,\n TableLayoutProperty,\n VerticalAlignProperty,\n} from 'csstype';\nimport { pxFormatter } from '../utils/formatter';\nimport { cssProperty } from '../utils/style';\nimport { TLength } from './typings';\n\nexport const borderCollapse = cssProperty<BorderCollapseProperty>('border-collapse');\n\nexport const borderSpacing = cssProperty<BorderSpacingProperty<TLength>>('border-spacing', pxFormatter);\n\nexport const captionSide = cssProperty<CaptionSideProperty>('caption-side');\n\nexport const emptyCells = cssProperty<EmptyCellsProperty>('empty-cells');\n\nexport const tableLayout = cssProperty<TableLayoutProperty>('table-layout');\n\nexport const verticalAlign = cssProperty<VerticalAlignProperty<TLength>>('vertical-align');\n","import { css } from 'styled-components';\nimport { alignItems } from '../../styles/alignment';\nimport { backgroundColor } from '../../styles/background';\nimport { borderBottomWidth, borderColor, borderRadius, borderWidth } from '../../styles/border';\nimport { display } from '../../styles/display';\nimport { appearance, cursor, outline } from '../../styles/interactivity';\nimport { height, width } from '../../styles/size';\nimport { margin, marginY, padding, paddingX, paddingY } from '../../styles/spacing';\nimport { verticalAlign } from '../../styles/table';\nimport { transitionDuration, transitionProperty, transitionTimingFunction } from '../../styles/transition';\nimport { ComponentStyle } from '../../styles/typings';\nimport { color } from '../../styles/typography';\nimport { preflight } from '../../utils/style';\nimport { SelectProps } from './typings';\n\nconst selectStyle: ComponentStyle<SelectProps> = () => {\n return css`\n ${preflight()}\n ${width('100%')}\n .o-select-input-container {\n ${marginY(2)}\n ${padding(1)}\n ${backgroundColor('white')}\n ${display('flex')}\n ${borderWidth(1)}\n ${borderColor('gray-200')}\n ${borderRadius('default')}\n &.o-select-input-focus {\n ${borderColor('primary')}\n ${borderWidth(2)}\n }\n }\n .o-select-input {\n ${paddingY(1)}\n ${paddingX(2)}\n ${appearance('none')}\n ${outline('none')}\n ${width('full')}\n ${color('gray-800', { placeholder: 'gray-400' })}\n }\n .o-select-icon-container {\n ${color('primary')}\n ${cursor('pointer')}\n ${width(8)}\n ${paddingY(1)}\n ${paddingX(1)}\n ${display('flex')}\n ${alignItems('center')}\n ${borderColor('gray-200')}\n }\n .o-select-icon {\n ${color('primary')}\n ${cursor('pointer')}\n ${width(4)}\n ${height(4)}\n ${outline('none', { focus: 'none' })}\n ${backgroundColor('transparent')}\n ${padding(0)}\n }\n .o-select-arrow-svg {\n ${display('block')}\n ${verticalAlign('middle')}\n ${margin('px')}\n ${transitionDuration('.5s')}\n ${transitionProperty('all')}\n ${transitionTimingFunction('ease-in-out')}\n }\n .o-select-option {\n ${width('full')}\n ${borderColor('gray-100')}\n ${borderBottomWidth(1)}\n &.o-select-option-clickable {\n ${cursor('pointer')}\n }\n &.o-select-option-hoverable {\n ${backgroundColor('transparent', { hover: 'teal-100' })}\n } \n }\n `;\n};\n\nexport default selectStyle;\n","import styled from 'styled-components';\nimport SelectComponent from './components/SelectComponent';\nimport selectStyle from './style';\n\nconst Select = styled(SelectComponent)`\n ${selectStyle}\n`;\n\nexport default Select;\n\n/*\n<!-- component -->\n<style>\n .top-100 {top: 100%}\n .bottom-100 {bottom: 100%}\n .max-h-select {\n max-height: 300px;\n }\n</style>\n<div class=\"flex flex-col items-center\">\n <div class=\"w-full md:w-1/2 flex flex-col items-center h-64\">\n <div class=\"w-full px-4\">\n <div class=\"flex flex-col items-center relative\">\n <div class=\"w-full\">\n <div class=\"my-2 p-1 bg-white flex border border-gray-200 rounded\">\n <div class=\"flex flex-auto flex-wrap\"></div>\n <input placeholder=\"Search by position\" class=\"p-1 px-2 appearance-none outline-none w-full text-gray-800\">\n <div class=\"text-gray-300 w-8 py-1 pl-2 pr-1 border-l flex items-center border-gray-200\">\n <button class=\"cursor-pointer w-6 h-6 text-gray-600 outline-none focus:outline-none\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"feather feather-chevron-up w-4 h-4\">\n <polyline points=\"18 15 12 9 6 15\"></polyline>\n </svg>\n </button>\n </div>\n </div>\n </div>\n <div class=\"absolute shadow bg-white top-100 z-40 w-full lef-0 rounded max-h-select overflow-y-auto svelte-5uyqqj\">\n <div class=\"flex flex-col w-full\">\n <div class=\"cursor-pointer w-full border-gray-100 rounded-t border-b hover:bg-teal-100\">\n <div class=\"flex w-full items-center p-2 pl-2 border-transparent border-l-2 relative hover:border-teal-100\">\n <div class=\"w-6 flex flex-col items-center\">\n <div class=\"flex relative w-5 h-5 bg-orange-500 justify-center items-center m-1 mr-2 w-4 h-4 mt-1 rounded-full \"><img class=\"rounded-full\" alt=\"A\" src=\"https://randomuser.me/api/portraits/men/62.jpg\"> </div>\n </div>\n <div class=\"w-full items-center flex\">\n <div class=\"mx-2 -mt-1 \">Jack jhon\n <div class=\"text-xs truncate w-full normal-case font-normal -mt-1 text-gray-500\">CEO & managin director</div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"cursor-pointer w-full border-gray-100 border-b hover:bg-teal-100\">\n <div class=\"flex w-full items-center p-2 pl-2 border-transparent border-l-2 relative hover:border-teal-100\">\n <div class=\"w-6 flex flex-col items-center\">\n <div class=\"flex relative w-5 h-5 bg-orange-500 justify-center items-center m-1 mr-2 w-4 h-4 mt-1 rounded-full \"><img class=\"rounded-full\" alt=\"A\" src=\"https://randomuser.me/api/portraits/women/62.jpg\"> </div>\n </div>\n <div class=\"w-full items-center flex\">\n <div class=\"mx-2 -mt-1 \">Liza Blue\n <div class=\"text-xs truncate w-full normal-case font-normal -mt-1 text-gray-500\">COO & co-founder</div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"cursor-pointer w-full border-gray-100 border-b hover:bg-teal-100\">\n <div class=\"flex w-full items-center p-2 pl-2 border-transparent border-l-2 relative hover:border-teal-100\">\n <div class=\"w-6 flex flex-col items-center\">\n <div class=\"flex relative w-5 h-5 bg-orange-500 justify-center items-center m-1 mr-2 w-4 h-4 mt-1 rounded-full \"><img class=\"rounded-full\" alt=\"A\" src=\"https://randomuser.me/api/portraits/men/65.jpg\"> </div>\n </div>\n <div class=\"w-full items-center flex\">\n <div class=\"mx-2 -mt-1 w-1/2 \">Brian White\n <div class=\"text-xs truncate w-full normal-case font-normal -mt-1 text-gray-500\">CTO & technical manager</div>\n </div>\n <div class=\"w-1/2 flex\">\n <div class=\"flex justify-center items-center m-1 font-medium py-1 px-2 bg-white rounded-full text-teal-700 bg-teal-100 border border-teal-300 \">\n <div class=\"text-xs font-normal leading-none max-w-full flex-initial\">Hiring!</div>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"cursor-pointer w-full border-gray-100 rounded-b hover:bg-teal-100\">\n <div class=\"flex w-full items-center p-2 pl-2 border-transparent border-l-2 relative hover:border-teal-100\">\n <div class=\"w-6 flex flex-col items-center\">\n <div class=\"flex relative w-5 h-5 bg-orange-500 justify-center items-center m-1 mr-2 w-4 h-4 mt-1 rounded-full \"><img class=\"rounded-full\" alt=\"A\" src=\"https://randomuser.me/api/portraits/men/85.jpg\"> </div>\n </div>\n <div class=\"w-full items-center flex\">\n <div class=\"mx-2 -mt-1 \">Eric Dripper\n <div class=\"text-xs truncate w-full normal-case font-normal -mt-1 text-gray-500\">CMO & marketing manager</div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n*/\n","import { ComponentStyle } from '../../styles/typings';\nimport { ListProps } from './typings';\nimport { css } from 'styled-components';\nimport { preflight } from '../../utils/style';\n\nconst listStyle: ComponentStyle<ListProps> = () => {\n return css`\n ${preflight()}\n `;\n};\n\nexport default listStyle;\n","import styled from 'styled-components';\nimport ListComponent from './components/ListComponent';\nimport listStyle from './style';\n\nconst List = styled(ListComponent)`\n ${listStyle}\n`;\n\nexport default List;\n","import {\n AnimationDirectionProperty,\n AnimationFillModeProperty,\n AnimationIterationCountProperty,\n AnimationNameProperty,\n AnimationProperty,\n AnimationTimingFunctionProperty,\n GlobalsString,\n} from 'csstype';\nimport { cssProperty } from '../utils/style';\n\nexport const animation = cssProperty<AnimationProperty>('animation');\nexport const animationDelay = cssProperty<GlobalsString>('animation-delay');\nexport const animationDirection = cssProperty<AnimationDirectionProperty>('animation-direction');\nexport const animationDuration = cssProperty<GlobalsString>('animation-duration');\nexport const animationFillMode = cssProperty<AnimationFillModeProperty>('animation-fill-mode');\nexport const animationIterationCount = cssProperty<AnimationIterationCountProperty>('animation-iteration-count');\nexport const animationName = cssProperty<AnimationNameProperty>('animation-name');\nexport const animationPlayState = cssProperty<AnimationPlayState>('animation-play-state');\nexport const animationTimingFunction = cssProperty<AnimationTimingFunctionProperty>('animation-timing-function');\n","import { FlexBasisProperty, FlexDirectionProperty, FlexProperty, FlexWrapProperty, Globals } from 'csstype';\nimport { booleanFormatter, enumFormatter } from '../utils/formatter';\nimport { cssProperty } from '../utils/style';\nimport { TLength } from './typings';\n\n// initial; 1; auto; none;\nconst flexValues = {\n initial: '0 1 auto',\n 1: '1 1 0%',\n auto: '1 1 auto',\n none: 'none',\n};\nconst flexFormatter = enumFormatter<FlexProperty<TLength>>(flexValues);\nexport const flex = cssProperty<FlexProperty<TLength>>('flex', flexFormatter);\n\n// row; row-reverse; column; column-reverse\nexport const flexBasis = cssProperty<FlexBasisProperty<TLength>>('flex-basic');\n\n// row; row-reverse; column; column-reverse\nexport const flexDirection = cssProperty<FlexDirectionProperty>('flex-direction');\n\n// true; false\nexport const flexGrow = cssProperty<boolean>('flex-grow', booleanFormatter);\n\n// true; false\nexport const flexShrink = cssProperty<boolean>('flex-shrink', booleanFormatter);\n\n// nowrap; wrap; wrap-reverse;\nexport const flexWrap = cssProperty<FlexWrapProperty>('flex-wrap');\n\n// first; last; none; 1; 2; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12\nconst orderValues = {\n first: '-9999',\n last: '9999',\n none: '0',\n};\nconst orderFormatter = enumFormatter<Globals | number | 'first' | 'last' | 'none'>(orderValues);\nexport const order = cssProperty<Globals | number | 'first' | 'last' | 'none'>('order', orderFormatter);\n","import { BreakAfterProperty, BreakBeforeProperty, BreakInsideProperty, GlobalsNumber } from 'csstype';\nimport { cssProperty } from '../utils/style';\n\nexport const breakAfter = cssProperty<BreakAfterProperty>('break-after');\n\nexport const breakBefore = cssProperty<BreakBeforeProperty>('break-before');\n\nexport const breakInside = cssProperty<BreakInsideProperty>('break-inside');\n\nexport const orphans = cssProperty<GlobalsNumber>('orphans');\n\nexport const widows = cssProperty<GlobalsNumber>('widows');\n","import {\n ColumnCountProperty,\n ColumnFillProperty,\n ColumnRuleColorProperty,\n ColumnRuleProperty,\n ColumnRuleStyleProperty,\n ColumnRuleWidthProperty,\n ColumnSpanProperty,\n ColumnsProperty,\n ColumnWidthProperty,\n GridAutoColumnsProperty,\n GridAutoFlowProperty,\n GridAutoRowsProperty,\n GridColumnEndProperty,\n GridColumnProperty,\n GridColumnStartProperty,\n GridProperty,\n GridRowEndProperty,\n GridRowProperty,\n GridRowStartProperty,\n GridTemplateAreasProperty,\n GridTemplateColumnsProperty,\n GridTemplateProperty,\n GridTemplateRowsProperty,\n} from 'csstype';\nimport { colorFormatter, pxFormatter } from '../utils/formatter';\nimport { cssProperty } from '../utils/style';\nimport { columnGap, gap, rowGap } from './alignment';\nimport { ColorPropertyTheme, TLength } from './typings';\n\nexport const columnCount = cssProperty<ColumnCountProperty>('column-count');\n\nexport const columnFill = cssProperty<ColumnFillProperty>('column-fill');\n\nexport const columnRule = cssProperty<ColumnRuleProperty<TLength>>('column-rule');\n\nexport const columnRuleColor = cssProperty<ColorPropertyTheme | ColumnRuleColorProperty>(\n null,\n colorFormatter('column-rule-color'),\n);\n\nexport const columnRuleStyle = cssProperty<ColumnRuleStyleProperty>('column-rule-style');\n\nexport const columnRuleWidth = cssProperty<ColumnRuleWidthProperty<TLength>>('column-rule-width', pxFormatter);\n\nexport const columnSpan = cssProperty<ColumnSpanProperty>('column-span');\n\nexport const columnWidth = cssProperty<ColumnWidthProperty<TLength>>('column-width', pxFormatter);\n\nexport const columns = cssProperty<ColumnsProperty<TLength>>('columns');\n\nexport const grid = cssProperty<GridProperty>('grid');\n\nexport const gridAutoColumns = cssProperty<GridAutoColumnsProperty<TLength>>('grid-auto-columns');\n\nexport const gridAutoFlow = cssProperty<GridAutoFlowProperty>('grid-auto-flow');\n\nexport const gridAutoRows = cssProperty<GridAutoRowsProperty<TLength>>('grid-auto-rows');\n\nexport const gridColumn = cssProperty<GridColumnProperty>('grid-column');\n\nexport const gridColumnEnd = cssProperty<GridColumnEndProperty>('grid-column-start');\n\nexport const gridColumnGap = columnGap;\n\nexport const gridColumnStart = cssProperty<GridColumnStartProperty>('grid-column-start');\n\nexport const gridGap = gap;\n\nexport const gridRow = cssProperty<GridRowProperty>('grid-row');\n\nexport const gridRowEnd = cssProperty<GridRowEndProperty>('grid-row-end');\n\nexport const gridRowGap = rowGap;\n\nexport const gridRowStart = cssProperty<GridRowStartProperty>('grid-row-start');\n\nexport const gridTemplate = cssProperty<GridTemplateProperty>('grid-template');\n\nexport const gridTemplateAreas = cssProperty<GridTemplateAreasProperty>('grid-template-areas');\n\nexport const gridTemplateColumns = cssProperty<GridTemplateColumnsProperty<TLength>>('grid-template-columns');\n\nexport const gridTemplateRows = cssProperty<GridTemplateRowsProperty<TLength>>('grid-template-rows');\n","import { cssProperty } from '../utils/style';\nimport { ObjectFitProperty, ObjectPositionProperty, ImageRenderingProperty } from 'csstype';\nimport { TLength } from './typings';\n\nexport const imageRendering = cssProperty<ImageRenderingProperty>('image-rendering');\n\n// contain; cover; fill; none; scale-down;\nexport const objectFit = cssProperty<ObjectFitProperty>('object-fit');\n\n// bottom; center; left; right; top; left-bottom; right-bottom; left-top; right-top;\nexport const objectPosition = cssProperty<ObjectPositionProperty<TLength>>('object-position');\n","import { ListStyleImageProperty, ListStylePositionProperty, ListStyleProperty, ListStyleTypeProperty } from 'csstype';\nimport { cssProperty } from '../utils/style';\n\nexport const listStyle = cssProperty<ListStyleProperty>('list-style');\n\nexport const listStyleImage = cssProperty<ListStyleImageProperty>('list-style-image');\n\n// inside; outside\nexport const listStylePosition = cssProperty<ListStylePositionProperty>('list-style-position');\n\n// disc; circle; square; decimal; georgian; cjk-ideographic; kannada; any string\nexport const listStyleType = cssProperty<ListStyleTypeProperty>('list-style-type');\n","import { ClearProperty, FloatProperty, LeftProperty, PositionProperty, RightProperty, TopProperty } from 'csstype';\nimport { cssProperty } from '../utils/style';\nimport { TLength } from './typings';\n\n// left; right; both; none;\nexport const clear = cssProperty<ClearProperty>('clear');\n\n// right; left; none;\nexport const float = cssProperty<FloatProperty>('float');\n\n// integer\nexport const left = cssProperty<LeftProperty<TLength>>('left');\n\n// static; fixed; absolute; relative; sticky;\nexport const position = cssProperty<PositionProperty>('position');\n\n// integer\nexport const right = cssProperty<RightProperty<TLength>>('right');\n\n// integer\nexport const top = cssProperty<TopProperty<TLength>>('top');\n\n// auto or integer\nexport const zIndex = cssProperty('z-index');\n","import { cssProperty } from '../utils/style';\nimport { FillProperty, StrokeProperty, StrokeWidthProperty } from 'csstype';\nimport { TLength } from './typings';\n\nexport const fill = cssProperty<FillProperty>('fill');\n\nexport const stroke = cssProperty<StrokeProperty>('stroke');\n\nexport const strokeWidth = cssProperty<StrokeWidthProperty<TLength>>('stroke-width');\n","import {\n PerspectiveOriginProperty,\n PerspectiveProperty,\n RotateProperty,\n ScaleProperty,\n TransformOriginProperty,\n TransformProperty,\n} from 'csstype';\nimport { cssProperty } from '../utils/style';\nimport { TLength } from './typings';\n\nexport const perspective = cssProperty<PerspectiveProperty<TLength>>('perspective');\n\nexport const perspectiveOrigin = cssProperty<PerspectiveOriginProperty<TLength>>('perspective-origin');\n\nexport const rotate = cssProperty<RotateProperty>('rotate');\n\nexport const scale = cssProperty<ScaleProperty>('scale');\n\nexport const transform = cssProperty<TransformProperty>('transform');\n\nexport const transformOrigin = cssProperty<TransformOriginProperty<TLength>>('transform-origin');\n","import { get } from 'onekijs-core';\nimport { deriveColor } from '../utils/color';\nimport { Theme } from './typings';\n\nexport const theme = (customTheme = {}): Theme => {\n const theme: Theme = Object.assign(\n {\n dark: false,\n breakpoints: {\n sm: '640px',\n md: '768px',\n lg: '1024px',\n xl: '1280px',\n },\n colors: {\n transparent: 'transparent',\n current: 'currentColor',\n black: '#000',\n white: '#fff',\n 'gray-100': '#f7fafc',\n 'gray-200': '#edf2f7',\n 'gray-300': '#e2e8f0',\n 'gray-400': '#cbd5e0',\n 'gray-500': '#a0aec0',\n 'gray-600': '#718096',\n 'gray-700': '#4a5568',\n 'gray-800': '#2d3748',\n 'gray-900': '#1a202c',\n 'red-100': '#fff5f5',\n 'red-200': '#fed7d7',\n 'red-300': '#feb2b2',\n 'red-400': '#fc8181',\n 'red-500': '#f56565',\n 'red-600': '#e53e3e',\n 'red-700': '#c53030',\n 'red-800': '#9b2c2c',\n 'red-900': '#742a2a',\n 'orange-100': '#fffaf0',\n 'orange-200': '#feebc8',\n 'orange-300': '#fbd38d',\n 'orange-400': '#f6ad55',\n 'orange-500': '#ed8936',\n 'orange-600': '#dd6b20',\n 'orange-700': '#c05621',\n 'orange-800': '#9c4221',\n 'orange-900': '#7b341e',\n 'yellow-100': '#fffff0',\n 'yellow-200': '#fefcbf',\n 'yellow-300': '#faf089',\n 'yellow-400': '#f6e05e',\n 'yellow-500': '#ecc94b',\n 'yellow-600': '#d69e2e',\n 'yellow-700': '#b7791f',\n 'yellow-800': '#975a16',\n 'yellow-900': '#744210',\n 'green-100': '#f0fff4',\n 'green-200': '#c6f6d5',\n 'green-300': '#9ae6b4',\n 'green-400': '#68d391',\n 'green-500': '#48bb78',\n 'green-600': '#38a169',\n 'green-700': '#2f855a',\n 'green-800': '#276749',\n 'green-900': '#22543d',\n 'teal-100': '#e6fffa',\n 'teal-200': '#b2f5ea',\n 'teal-300': '#81e6d9',\n 'teal-400': '#4fd1c5',\n 'teal-500': '#38b2ac',\n 'teal-600': '#319795',\n 'teal-700': '#2c7a7b',\n 'teal-800': '#285e61',\n 'teal-900': '#234e52',\n 'blue-100': '#ebf8ff',\n 'blue-200': '#bee3f8',\n 'blue-300': '#90cdf4',\n 'blue-400': '#63b3ed',\n 'blue-500': '#4299e1',\n 'blue-600': '#3182ce',\n 'blue-700': '#2b6cb0',\n 'blue-800': '#2c5282',\n 'blue-900': '#2a4365',\n 'indigo-100': '#ebf4ff',\n 'indigo-200': '#c3dafe',\n 'indigo-300': '#a3bffa',\n 'indigo-400': '#7f9cf5',\n 'indigo-500': '#667eea',\n 'indigo-600': '#5a67d8',\n 'indigo-700': '#4c51bf',\n 'indigo-800': '#434190',\n 'indigo-900': '#3c366b',\n 'purple-100': '#faf5ff',\n 'purple-200': '#e9d8fd',\n 'purple-300': '#d6bcfa',\n 'purple-400': '#b794f4',\n 'purple-500': '#9f7aea',\n 'purple-600': '#805ad5',\n 'purple-700': '#6b46c1',\n 'purple-800': '#553c9a',\n 'purple-900': '#44337a',\n 'pink-100': '#fff5f7',\n 'pink-200': '#fed7e2',\n 'pink-300': '#fbb6ce',\n 'pink-400': '#f687b3',\n 'pink-500': '#ed64a6',\n 'pink-600': '#d53f8c',\n 'pink-700': '#b83280',\n 'pink-800': '#97266d',\n 'pink-900': '#702459',\n },\n font: {\n families: {\n sans:\n 'system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, \"Noto Sans\", sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\"',\n serif: 'Georgia, Cambria, \"Times New Roman\", Times, serif',\n mono: 'Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace',\n },\n lineHeights: {\n none: 1,\n tight: 1.25,\n snug: 1.375,\n normal: 1.5,\n relaxed: 1.625,\n loose: 2,\n 3: '.75rem',\n 4: '1rem',\n 5: '1.25rem',\n 6: '1.5rem',\n 7: '1.75rem',\n 8: '2rem',\n 9: '2.25rem',\n 10: '2.5rem',\n },\n sizes: {\n xs: '.75rem',\n sm: '.875rem',\n base: '1rem',\n lg: '1.125rem',\n xl: '1.25rem',\n '2xl': '1.5rem',\n '3xl': '1.875rem',\n '4xl': '2.25rem',\n '5xl': '3rem',\n '6xl': '4rem',\n },\n spacings: {\n tighte: '-0.05em',\n tight: '-0.025em',\n normal: 0,\n wide: '0.025em',\n wider: '0.05em',\n widest: '0.1em',\n },\n weights: {\n hairline: 100,\n thin: 200,\n light: 300,\n normal: 400,\n medium: 500,\n semibold: 600,\n bold: 700,\n extrabold: 800,\n black: 900,\n },\n },\n kind: {\n primary: 'blue-500',\n danger: 'red-500',\n success: 'green-500',\n warning: 'orange-500',\n secondary: 'gray-500',\n },\n radius: {\n none: '0',\n sm: '0.125rem',\n default: '0.25rem',\n md: '0.375rem',\n lg: '0.5rem',\n full: '9999px',\n },\n shadow: {\n xs: '0 0 0 1px rgba(0, 0, 0, 0.05)',\n sm: '0 1px 2px 0 rgba(0, 0, 0, 0.05)',\n default: '0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06)',\n md: ' 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06)',\n lg: '0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05)',\n xl: '0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04)',\n '2xl': '0 25px 50px -12px rgba(0, 0, 0, 0.25)',\n inner: 'inset 0 2px 4px 0 rgba(0, 0, 0, 0.06)',\n outline: '0 0 0 3px rgba(66, 153, 225, 0.5)',\n none: 'none',\n },\n spacings: {\n 0: '0',\n 1: '0.25rem',\n 2: '0.5rem',\n 3: '0.75rem',\n 4: '1rem',\n 5: '1.25rem',\n 6: '1.5rem',\n 8: '2rem',\n 10: '2.5rem',\n 12: '3rem',\n 16: '4rem',\n 20: '5rem',\n 24: '6rem',\n 32: '8rem',\n 40: '10rem',\n 48: '12rem',\n 56: '14rem',\n 64: '16rem',\n px: '1px',\n },\n sizes: {\n 0: '0',\n 1: '0.25rem',\n 2: '0.5rem',\n 3: '0.75rem',\n 4: '1rem',\n 5: '1.25rem',\n 6: '1.5rem',\n 8: '2rem',\n 10: '2.5rem',\n 12: '3rem',\n 16: '4rem',\n 20: '5rem',\n 24: '6rem',\n 32: '8rem',\n 40: '10rem',\n 48: '12rem',\n 56: '14rem',\n 64: '16rem',\n px: '1px',\n xs: '20rem',\n sm: '24rem',\n md: '28rem',\n lg: '32rem',\n xl: '36rem',\n '2xl': '42rem',\n '3xl': '48rem',\n '4xl': '56rem',\n '5xl': '64rem',\n '6xl': '72rem',\n 'screen-sm': '640px',\n 'screen-md': '768px',\n 'screen-lg': '1024px',\n 'screen-xl': '1280px',\n },\n\n button: {},\n },\n customTheme,\n );\n\n Object.keys(theme.kind).forEach((kind) => {\n theme.button[kind] = {\n backgroundColor: get(theme, `button.${kind}.backgroundColor`, theme.kind[kind]),\n color: get(theme, `button.${kind}.color`, 'white'),\n fontWeight: get(theme, `button.${kind}.fontWeight`, 'bold'),\n paddingY: get(theme, `button.${kind}.paddingY`, 2),\n paddingX: get(theme, `button.${kind}.paddingX`, 4),\n };\n });\n\n Object.keys(theme.kind).forEach((kind) => {\n theme.button[kind].hoverBackgroundColor = get(\n theme,\n `button.${kind}.hoverBackgroundColor`,\n deriveColor(theme.button[kind].backgroundColor, 200, theme.dark),\n );\n });\n\n return theme;\n};\n"],"names":["ButtonComponent","props","React","deriveColor","color","gap","dark","newColorValue","split","weight","undefined","parseInt","hexToRgb","hex","replace","_m","r","g","b","result","exec","booleanFormatter","value","themeFormatter","category","theme","get","String","colorFormatter","key","opacityKey","Object","keys","kind","includes","rgb","enumFormatter","values","pxFormatter","formatValue","formatter","toCss","property","variants","css","responsives","all","sm","md","lg","xl","forEach","variant","media","substring","pseudo","lcfirst","length","concat","breakpoints","toKebabCase","candidate","isPseudoElement","cssProperty","preflight","addClassname","classname","existing","after","backgroundColor","backgroundAttachment","backgroundClip","backgroundImage","backgroundOpacity","backgroundOrigin","backgroundPosition","backgroundRepeat","backgroundSize","padding","paddingY","paddingX","paddingLeft","paddingRight","paddingTop","paddingBottom","margin","marginY","marginLeft","marginRight","marginTop","marginBottom","font","fontFamily","fontFeatureSettings","fontKerning","fontLanguageOverride","fontOpticalSizing","fontSize","fontSizeAdjust","fontStretch","fontStyle","fontSynthesis","fontVariant","fontVariantAlternates","fontVariantCaps","fontVariantEastAsian","fontVariantLigatures","fontVariantNumeric","fontVariantPosition","fontVariationSettings","fontWeight","hyphens","letterSpacing","lineHeight","lineHeightStep","overflowWrap","textAlign","textDecoration","textDecorationColor","textDecorationLine","textDecorationStyle","textDecorationThickness","textEmphasis","textEmphasisColor","textEmphasisPosition","textEmphasisStyle","textIdent","textJustify","textOpacity","textOverflow","textTransform","textShadow","textUnderlineOffset","textUnderlinePosition","whiteSpace","wordBreak","wordSpacing","buttonStyle","t","button","hover","hoverBackgroundColor","Button","styled","useClickOutside","ref","onClickOutside","useEffect","handleClickOutside","event","element","HTMLElement","current","contains","target","document","addEventListener","removeEventListener","refWidth","type","name","enabled","phase","requires","fn","state","styles","popper","width","rects","reference","effect","elements","style","getBoundingClientRect","sameWidthPopperModifier","minWidthPopperModifier","maxWidthPopperModifier","DropdownComponent","className","refElement","open","children","useState","setPopperElement","usePopper","modifiers","CSSTransition","timeout","classNames","mountOnEnter","appear","unmountOnExit","attributes","sizeFormatter","console","log","sizes","toString","map","x","widthFormatter","heightFormatter","minWidth","maxWidth","height","minHeight","maxHeight","overscrollBehavior","overscrollBehaviorBlock","overscrollBehaviorInline","overscrollBehaviorX","overscrollBehaviorY","border","borderTop","borderBottom","borderLeft","borderRight","borderColor","borderTopColor","borderBottomColor","borderLeftColor","borderRightColor","borderImage","borderImageOutset","borderImageRepeat","borderImageSlice","borderImageSource","borderImageWidth","borderOpacity","borderTopOpacity","borderBottomOpacity","borderLeftOpacity","borderRightOpacity","borderRadius","borderTopLeftRadius","borderBottomRadius","borderLeftRadius","borderRightRadius","borderStyle","borderTopStyle","borderBottomStyle","borderLeftStyle","borderRightStyle","borderWidth","borderTopWidth","borderBottomWidth","borderLeftWidth","borderRightWidth","boxShadow","overflow","overflowBlock","overflowInline","overflowX","overflowY","transition","transitionDelay","transitionDuration","transitionProperty","transitionTimingFunction","opacity","dropdownStyle","Dropdown","IconComponent","viewBox","xmlns","cx","cy","iconKeyFrame","keyframes","iconCircleKeyFrame","SelectIconComponent","onClick","onIconClick","loading","LoadingIcon","fill","stroke","strokeWidth","strokeLinecap","strokeLinejoin","transform","points","SelectInputComponent","placeholder","onFocus","onBlur","onChange","focus","inputRef","useRef","partialValueRef","proxifyRef","proxyValue","handleChange","useCallback","e","input","currentSelectionStart","selectionStart","selectionEnd","handleKeyDown","keyCode","useIsomorphicLayoutEffect","startsWith","setSelectionRange","useMemo","push","join","onKeyDown","ListItemComponent","memo","item","data","meta","loadingStatus","LoadingStatus","Loading","text","displayName","emptyListItem","getListStatus","collection","isCollection","status","Loaded","StandardListComponent","ItemComponent","onItemClick","onItemMouseOver","items","NotInitialized","load","index","onMouseOver","VirtualistComponent","itemHeight","preload","increment","parentRef","estimatedItemHeight","Array","toCollectionItem","getAdapter","useVirtual","size","estimateSize","totalSize","virtualItems","scrollToIndex","offset","getOffset","firstVirualItem","Deprecated","PartialLoaded","canFetchMore","lastVirtualItem","position","measureRef","top","left","start","ListComponent","listInternalProps","isArray","ListDataComponent","ListInternalComponent","useCollection","standardProps","omit","SelectOptionComponent","content","clickable","hoverable","selected","SelectOptionsComponent","listProps","SelectComponent","selectInternalProps","SelectDataComponent","SelectInternalComponent","InputComponent","autoFocus","setOpen","setFocus","stateRef","previousValueRef","PartialLoading","delayOpen","containerRef","setContainerRef","keepFocus","selectedItem","getSearch","onSelect","clearSearch","previousItem","setMeta","onMouseDown","onMouseUp","search","alignContent","alignItems","alignSelf","columnGap","justifyContent","justifySelf","placeContent","placeItems","placeSelf","rowGap","display","visibility","zoom","appearance","aspectRatio","boxSizing","caretColor","cursor","outline","outlineColor","outlineOffset","outlineStyle","outlineWidth","pointerEvents","resize","touchAction","userSelect","borderCollapse","borderSpacing","captionSide","emptyCells","tableLayout","verticalAlign","selectStyle","Select","listStyle","List","animation","animationDelay","animationDirection","animationDuration","animationFillMode","animationIterationCount","animationName","animationPlayState","animationTimingFunction","flex","initial","auto","none","flexBasis","flexDirection","flexGrow","flexShrink","flexWrap","order","first","last","breakAfter","breakBefore","breakInside","orphans","widows","columnCount","columnFill","columnRule","columnRuleColor","columnRuleStyle","columnRuleWidth","columnSpan","columnWidth","columns","grid","gridAutoColumns","gridAutoFlow","gridAutoRows","gridColumn","gridColumnEnd","gridColumnGap","gridColumnStart","gridGap","gridRow","gridRowEnd","gridRowGap","gridRowStart","gridTemplate","gridTemplateAreas","gridTemplateColumns","gridTemplateRows","imageRendering","objectFit","objectPosition","listStyleImage","listStylePosition","listStyleType","clear","float","right","zIndex","perspective","perspectiveOrigin","rotate","scale","transformOrigin","slice","customTheme","assign","colors","transparent","black","white","families","sans","serif","mono","lineHeights","tight","snug","normal","relaxed","loose","xs","base","spacings","tighte","wide","wider","widest","weights","hairline","thin","light","medium","semibold","bold","extrabold","primary","danger","success","warning","secondary","radius","full","shadow","inner","px"],"mappings":"wfAGA,IAAMA,EAAmC,SAACC,UACjCC,0CAAYD,KCJRE,EAAc,SAACC,EAAeC,EAAaC,EAAeC,SACxCH,EAAMI,MAAM,KAAtBC,cACnBF,EAAgBA,aACDG,IAAXD,EACKF,EAECA,OAAiBI,SAASF,IAAWH,GAAQD,EAAMA,KAIlDO,EAAW,SAACC,GAEvBA,EAAMA,EAAIC,QADa,oCACW,SAAUC,EAAIC,EAAGC,EAAGC,UAC7CF,EAAIA,EAAIC,EAAIA,EAAIC,EAAIA,SAGvBC,EAAS,4CAA4CC,KAAKP,UACzDM,EACH,CACEH,EAAGL,SAASQ,EAAO,GAAI,IACvBF,EAAGN,SAASQ,EAAO,GAAI,IACvBD,EAAGP,SAASQ,EAAO,GAAI,KAEzB,MCnBOE,EAAuC,SAACC,UAAsBA,EAAQ,IAAM,KAE5EC,EAAiB,SAACC,UACtB,SAACF,EAAOG,UACNC,MAAID,EAAUD,MAAYF,EAASK,OAAOL,MAIxCM,EAAiB,SAACC,EAAaC,UACnC,SAACR,EAAOG,GACTM,OAAOC,KAAKP,EAAMQ,MAAMC,SAASZ,KACnCA,EAAQG,EAAMQ,KAAKX,QAEjBH,EAAS,MACbG,EAAQI,MAAID,YAAiBH,EAASK,OAAOL,IACzCQ,IACFX,OAAcW,UAEhBX,KAAYA,EAASU,OAAQP,EACzBQ,EAAY,KACRK,EAAMvB,EAASU,GACjBa,IACFhB,EAAYA,MAAUU,YAAaM,EAAInB,MAAKmB,EAAIlB,MAAKkB,EAAIjB,YAAWY,eAGxEX,EAAU,MAMDiB,EAAgB,SAAIC,UACxB,SAACf,UACFS,OAAOC,KAAKK,GAAQH,SAASP,OAAOL,IAC/BK,OAAOU,EAAOV,OAAOL,KAEvBK,OAAOL,KAILgB,EAA0C,SAAChB,SACjC,iBAAVA,EACFA,EAEK,IAAVA,EACK,IAECA,yzBC7CZ,IAAMiB,EAAc,SAAIjB,EAAUG,EAAce,UAC1CA,EACKA,EAAUlB,EAAOG,GAEnBE,OAAOL,IA+EHmB,EAAQ,SACnBC,EACAF,EACAlB,EACAqB,OAEIxB,EAASyB,UACE,OAAbF,EAAoB,GAAKA,EAAW,MAAO,SAACzC,UAAUsC,EAAYjB,EAAOrB,EAAMwB,MAAOe,MAGlFK,EAA+B,CACnCC,IAAK,GACLC,GAAI,GACJC,GAAI,GACJC,GAAI,GACJC,GAAI,WAGNnB,OAAOC,KAAKW,GAAUQ,SAAQ,SAACC,OACvBC,EAAQD,EAAQE,UAAU,EAAG,MAC/BT,EAAYQ,GAAQ,KAChBE,EAASC,UAAQJ,EAAQE,UAAU,KAAO,MAChDT,EAAYQ,GAAOE,GAAUZ,EAASS,QAEtCP,EAAW,IAAQO,GAAWT,EAASS,MAI3CrB,OAAOC,KAAKa,GAAaM,SAAQ,SAACE,GAClB,QAAVA,GAAmBtB,OAAOC,KAAKa,EAAYQ,IAAQI,OAAS,IAC9DtC,EAASA,EAAOuC,OAAOd,WACnB,SAAC3C,+BAAgCA,EAAMwB,MAAMkC,YAAYN,cAG/DtB,OAAOC,KAAKa,EAAYQ,IAAQF,SAAQ,SAACI,GACvCA,EAASK,cAAYL,GA9GlB,CACL,SACA,WACA,UACA,QACA,UACA,UACA,MACA,WACA,QACA,UACA,QACA,cACA,gBACA,aACA,QACA,gBACA,eACA,MACA,OACA,eACA,QACA,gBACA,WACA,UACA,KACA,UACA,MACA,OACA,aACA,eACA,OACA,OACA,MACA,YACA,iBACA,mBACA,cACA,aACA,eACA,WACA,eACA,oBACA,YACA,aACA,WACA,QACA,OACA,QACA,SACA,QACA,UACA,SACArB,SA0DoBqB,GAChBpC,EAASA,EAAOuC,OAAOd,UACnBW,EACa,OAAbb,EAAoB,GAAKA,EAAW,MAAO,SAACzC,UAC9CsC,EAAYM,EAAYQ,GAAOE,GAAStD,EAAMwB,MAAOe,OA3DvC,SAACqB,SAChB,CACL,QACA,WACA,SACA,MACA,aACA,eACA,aACA,gBACA,SACA,OACA,cACA,YACA,UACA,kBACA3B,SAAS2B,GA8CIC,CAAgBP,GACzBpC,EAASA,EAAOuC,OAAOd,UAClBW,EACY,OAAbb,EAAoB,GAAKA,EAAW,MAAO,SAACzC,UAC9CsC,EAAYM,EAAYQ,GAAOE,GAAStD,EAAMwB,MAAOe,OAGnC,QAAXe,IACTpC,EAASA,EAAOuC,OAAOd,UACV,OAAbF,EAAoB,GAAKA,EAAW,MAAO,SAACzC,UAC1CsC,EAAYM,EAAYQ,GAAOE,GAAStD,EAAMwB,MAAOe,WAI7C,QAAVa,GAAmBtB,OAAOC,KAAKa,EAAYQ,IAAQI,OAAS,IAC9DtC,EAASA,EAAOuC,OAAO,CAAC,UAIrBvC,GAGI4C,EAAc,SAAIrB,EAAyBF,UAC/C,SAAClB,EAAUqB,mBAAAA,IAAAA,EAA4B,IACrCF,EAAMC,EAAUF,EAAWlB,EAAOqB,KAIhCqB,EAAY,kBAChBpB,UAQHH,EAAM,cAAelB,EAAe,iBAAkB,OAAQ,MAUvD0C,EAAe,SAACC,EAAmBC,EAAmBC,mBAAAA,IAAAA,GAAQ,GACrED,EACKC,EAAWD,MAAYD,EAAiBA,MAAaC,EAEvDD,GCxKIG,EAAkBN,EAC7B,KACAnC,EAAe,mBAAoB,uBAGxB0C,EAAuBP,EAA0C,yBAEjEQ,EAAiBR,EAAoC,mBAErDS,EAAkBT,EAAqC,oBAEvDU,EAAoBV,EAA6B,wBAEjDW,EAAmBX,EAAsC,qBAEzDY,EAAqBZ,EAAiD,uBAEtEa,EAAmBb,EAAsC,qBAEzDc,EAAiBd,EAA6C,mBClB9De,EAAUf,EACrB,UACAxC,EAAe,aAGJwD,EAAyE,SAACzD,EAAOqB,mBAAAA,IAAAA,EAAW,IAChGF,EAAM,cAAelB,EAAe,YAAaD,EAAOqB,GAAUe,OACvEjB,EAAM,iBAAkBlB,EAAe,YAAaD,EAAOqB,KAIlDqC,EAAyE,SAAC1D,EAAOqB,mBAAAA,IAAAA,EAAW,IAChGF,EAAM,eAAgBlB,EAAe,YAAaD,EAAOqB,GAAUe,OACxEjB,EAAM,gBAAiBlB,EAAe,YAAaD,EAAOqB,KAIjDsC,EAAclB,EACzB,eACAxC,EAAe,aAGJ2D,EAAenB,EAC1B,gBACAxC,EAAe,aAGJ4D,EAAapB,EACxB,cACAxC,EAAe,aAGJ6D,EAAgBrB,EAC3B,iBACAxC,EAAe,aAGJ8D,EAAStB,EAA4D,SAAUxC,EAAe,aAE9F+D,EAAuE,SAAChE,EAAOqB,mBAAAA,IAAAA,EAAW,IAC9FF,EAAM,aAAclB,EAAe,YAAaD,EAAOqB,GAAUe,OACtEjB,EAAM,gBAAiBlB,EAAe,YAAaD,EAAOqB,KAUjD4C,EAAaxB,EACxB,cACAxC,EAAe,aAGJiE,EAAczB,EACzB,eACAxC,EAAe,aAGJkE,EAAY1B,EACvB,aACAxC,EAAe,aAGJmE,EAAe3B,EAC1B,gBACAxC,EAAe,aCvBJnB,EAAQ2D,EAAgD,KAAMnC,EAAe,QAAS,iBAEtF+D,EAAO5B,EAA0B,QAEjC6B,GAAa7B,EACxB,cACAxC,EAAe,kBAGJsE,GAAsB9B,EAAyC,yBAE/D+B,GAAc/B,EAAiC,gBAE/CgC,GAAuBhC,EAA0C,0BAEjEiC,GAAoBjC,EAAuC,uBAE3DkC,GAAWlC,EACtB,YACAxC,EAAe,eAGJ2E,GAAiBnC,EAAoC,oBAErDoC,GAAcpC,EAAiC,eAG/CqC,GAAYrC,EAA+B,cAE3CsC,GAAgBtC,EAAmC,kBAEnDuC,GAAcvC,EAAiC,gBAE/CwC,GAAwBxC,EAA2C,2BAEnEyC,GAAkBzC,EAAqC,qBAEvD0C,GAAuB1C,EAA0C,2BAEjE2C,GAAuB3C,EAA0C,0BAEjE4C,GAAqB5C,EAAwC,wBAE7D6C,GAAsB7C,EAAyC,yBAE/D8C,GAAwB9C,EAA2C,2BAEnE+C,GAAa/C,EACxB,cACAxC,EAAe,iBAGJwF,GAAUhD,EAA6B,WAEvCiD,GAAgBjD,EAC3B,iBACAxC,EAAe,kBAGJ0F,GAAalD,EACxB,cACAxC,EAAe,qBAGJ2F,GAAiBnD,EAA6C,oBAE9DoD,GAAepD,EAAkC,iBAGjDqD,GAAYrD,EAA+B,cAE3CsD,GAAiBtD,EAA6C,mBAE9DuD,GAAsBvD,EACjC,KACAnC,EAAe,0BAGJ2F,GAAqBxD,EAAwC,wBAC7DyD,GAAsBzD,EAAyC,yBAC/D0D,GAA0B1D,EACrC,6BAGW2D,GAAe3D,EAAkC,iBAEjD4D,GAAoB5D,EAAuC,KAAMnC,EAAe,kBAEhFgG,GAAuB7D,EAA2B,0BAElD8D,GAAoB9D,EAAuC,uBAE3D+D,GAAY/D,EAAyC,cAErDgE,GAAchE,EAAiC,gBAG/CiE,GAAcjE,EAA6B,kBAE3CkE,GAAelE,EAAkC,iBAEjDmE,GAAgBnE,EAAmC,kBAEnDoE,GAAapE,EAAgC,eAE7CqE,GAAsBrE,EAA2C,yBAEjEsE,GAAwBtE,EAA2C,2BAEnEuE,GAAavE,EAAgC,eAkB7CwE,GAAYxE,EACvB,MAhBiG,SAACzC,SACpF,WAAVA,EACK,2CAEK,UAAVA,EACK,4BAEK,QAAVA,EACK,wBAEK,aAAVA,EACK,8EAEaA,KAOXkH,GAAczE,EAA0C,8HC1LrE,IAAM0E,GAA2C,oBAAGxG,KAC5CyG,IAD8DjH,MACpDkH,kBADyC,oBAElD/F,WACHyB,EAAgBqE,EAAErE,gBAAiB,CACnCuE,MAAOF,EAAEG,uBAETzI,EAAMsI,EAAEtI,OACR0G,GAAW4B,EAAE5B,YACb9B,EAAS0D,EAAE1D,UACXD,EAAS2D,EAAE3D,kFCZjB,IAAM+D,GAASC,EAAO/I,EAAP+I,MACXN,ICHSO,GAAkB,SAC7BC,EACAC,GAEAC,aAAU,oBACCC,EAAmBC,OACpBC,GAAUL,GAASA,aAAeM,YAA6BN,EAAdA,EAAIO,QACvDF,IAAYA,EAAQG,SAASJ,EAAMK,SACrCR,EAAeG,UAKnBM,SAASC,iBAAiB,YAAaR,GAChC,WAELO,SAASE,oBAAoB,YAAaT,MAE3C,CAACH,EAAKC,KClBLY,GAAW,SAACC,SACT,CACLC,KAAM,YACNC,SAAS,EACTC,MAAO,cACPC,SAAU,CAAC,iBACXC,GAAI,gBAAGC,IAAAA,MACLA,EAAMC,OAAOC,OAAOC,MAAWH,EAAMI,MAAMC,UAAUF,YAEvDG,OAAQ,gBAAGN,IAAAA,MACRA,EAAMO,SAASL,OAAOM,MAAcd,GAAWM,EAAMO,SAASF,UAAUI,wBAAwBN,cAK1FO,GAA0BjB,GAAS,SACnCkB,GAAyBlB,GAAS,YAClCmB,GAAyBnB,GAAS,YCbzCoB,GAAuC,gBAAGC,IAAAA,UAAWC,IAAAA,WAAYC,IAAAA,KAAMC,IAAAA,WACjCC,WAA6B,MAAjDC,SACSC,YAAUL,OAA2B,CAClEM,UAAW,CAACX,aAIZ7K,gBAACyL,oBACKN,EACJO,QAAS,IACTC,WAAW,aACXC,cAAc,EACdC,QAAQ,EACRC,eAAe,GAEf9L,qCACE2K,QAdEP,OAcYC,UAdJ0B,WAeK1B,QACftB,IAAKuC,EACL3J,IAAI,qBACJsJ,UAAWA,IAEVG,KCjBHY,GAAgB,SAACnC,EAA0BzI,EAAqBG,MACpE0K,QAAQC,IAAI,QAAS3K,QACMf,IAAvBe,EAAM4K,MAAM/K,UACPG,EAAM4K,MAAM/K,MAEP,SAAVA,EAAkB,MAAO,UACf,SAAVA,EAAkB,MAAO,UACf,SAAVA,EAAkB,MAAO,UACf,WAAVA,EAAoB,MAAgB,WAATyI,EAAoB,QAAU,WAEzDzI,EAAMgL,WAAWpK,SAAS,KAAM,OACdZ,EACjBgL,WACA9L,MAAM,KACN+L,KAAI,SAACC,UAAM7L,SAAS6L,aACZ,yBAENlK,EAAYhB,IAGfmL,GAA0C,SAACnL,EAAOG,UAC/CyK,GAAc,QAAS5K,EAAOG,IAGjCiL,GAA2C,SAACpL,EAAOG,UAChDyK,GAAc,SAAU5K,EAAOG,IAI3B+I,GAAQzG,EAA0B,QAAS0I,IAG3CE,GAAW5I,EAA0B,YAAa0I,IAElDG,GAAW7I,EAA0B,YAAa0I,IAElDI,GAAS9I,EAA0B,SAAU2I,IAE7CI,GAAY/I,EAA0B,aAAc2I,IAEpDK,GAAYhJ,EAA0B,aAAc2I,IAEpDM,GAAqBjJ,EAAwC,uBAE7DkJ,GAA0BlJ,EAA6C,6BAEvEmJ,GAA2BnJ,EAA8C,8BAEzEoJ,GAAsBpJ,EAAyC,yBAE/DqJ,GAAsBrJ,EAAyC,yBCtB/DsJ,GAAStJ,EAAqC,UAC9CuJ,GAAYvJ,EAAwC,cACpDwJ,GAAexJ,EAA2C,iBAC1DyJ,GAAazJ,EAAyC,eACtD0J,GAAc1J,EAA0C,gBAExD2J,GAAc3J,EACzB,KACAnC,EAAe,eAAgB,mBAEpB+L,GAAiB5J,EAC5B,KACAnC,EAAe,mBAAoB,uBAExBgM,GAAoB7J,EAC/B,KACAnC,EAAe,sBAAuB,0BAE3BiM,GAAkB9J,EAC7B,KACAnC,EAAe,oBAAqB,wBAEzBkM,GAAmB/J,EAC9B,KACAnC,EAAe,qBAAsB,yBAG1BmM,GAAchK,EAAiC,gBAC/CiK,GAAoBjK,EAAgD,uBACpEkK,GAAoBlK,EAAuC,uBAC3DmK,GAAmBnK,EAAsC,sBACzDoK,GAAoBpK,EAAuC,uBAC3DqK,GAAmBrK,EAA+C,sBAElEsK,GAAgBtK,EAA6B,oBAC7CuK,GAAmBvK,EAA6B,wBAChDwK,GAAsBxK,EAA6B,0BACnDyK,GAAoBzK,EAA6B,yBACjD0K,GAAqB1K,EAA6B,0BAElD2K,GAAe3K,EAC1B,gBACAxC,EAAe,WAEJoN,GAAsB5K,EACjC,yBACAxC,EAAe,WAEJqN,GAAqB7K,EAChC,4BACAxC,EAAe,WAEJsN,GAAmB9K,EAC9B,0BACAxC,EAAe,WAEJuN,GAAoB/K,EAC/B,6BACAxC,EAAe,WAGJwN,GAAchL,EAAiC,gBAC/CiL,GAAiBjL,EAAoC,oBACrDkL,GAAoBlL,EAAuC,uBAC3DmL,GAAkBnL,EAAqC,qBACvDoL,GAAmBpL,EAAsC,sBAEzDqL,GAAcrL,EAAmD,eAAgBzB,GACjF+M,GAAiBtL,EAAsD,mBAAoBzB,GAC3FgN,GAAoBvL,EAC/B,sBACAzB,GAEWiN,GAAkBxL,EAAuD,oBAAqBzB,GAC9FkN,GAAmBzL,EAC9B,qBACAzB,GAGWmN,GAAY1L,EAAqD,aAAcxC,EAAe,WC5G9FmO,GAAW3L,EAA8B,YAEzC4L,GAAgB5L,EAAmC,kBAEnD6L,GAAiB7L,EAAoC,mBAGrD8L,GAAY9L,EAA+B,cAG3C+L,GAAY/L,EAA+B,cCZ3CgM,GAAahM,EAAgC,cAC7CiM,GAAkBjM,EAA2B,oBAC7CkM,GAAqBlM,EAA2B,uBAChDmM,GAAqBnM,EAAwC,uBAC7DoM,GAA2BpM,EAA8C,8BCTzEqM,GAAUrM,EAA6B,uXCQpD,IAAMsM,GAA+C,kBAC5CzN,WACHoB,IACAwG,GAAM,IACNkE,GAAa,WACbhB,GAAY,YACZ+B,GAAU,WACVK,GAAU,QACVjD,GAAO,SACPxI,EAAgB,SAEd+L,GAAQ,GAGRH,GAAmB,OACnBC,GAAmB,WACnBC,GAAyB,eACzBC,GAAQ,GAGRH,GAAmB,OACnBC,GAAmB,WACnBC,GAAyB,eACzBC,GAAQ,2EC9BhB,IAAME,GAAWvH,EAAOmC,GAAPnC,MACbsH,m+BCFJ,IAAME,GAA+D,mBAEjErQ,uBAAKiL,YAF+DA,WAGlEjL,uBAAKiL,UAAU,qBAAqBqF,QAAQ,cAAcC,MAAM,8BAC9DvQ,0BAAQiL,UAAU,4BAA4BuF,GAAG,KAAKC,GAAG,KAAK3P,EAAE,UAMlE4P,GAAeC,kBASfC,GAAqBD,qBAiBZ9H,EAAOwH,GAAPxH,MAU0B6H,GAIOE,ICjD1CC,GAA2C,gBAAgB1F,IAAAA,YAyB3DnL,uBAAKiL,UAAU,0BAA0B6F,UAzBKC,eAAmBC,QA0B/DhR,uBAAKiL,UAAU,iBACbjL,gBAACiR,UAvBHjR,0BAAQiL,UAAU,iBAChBjL,uBACEuQ,MAAM,6BACNjG,MAAM,OACNqC,OAAO,OACPuE,KAAK,OACLZ,QAAQ,YACRa,OAAO,eACPC,YAAY,IACZC,cAAc,QACdC,eAAe,QACfC,qBAAqBpG,EAAO,IAAM,WAClCF,UAAU,sBAEVjL,4BAAUwR,OAAO,wBCjBvBC,GAA6C,gBACjDV,IAAAA,YACA5F,IAAAA,KACAuG,IAAAA,YACAV,IAAAA,YACAX,cAAAA,aAAgBQ,KAChBc,IAAAA,QACAC,IAAAA,OACAC,IAAAA,SACAzQ,IAAAA,MACA0Q,IAAAA,MAEMC,EAAWC,SAAyB,MACpCC,EAAkBD,SAAO,IACzBE,EAAaF,UAAO,GACpBG,OACM3R,IAAVY,GAAwB8Q,EAAW5I,QAAmD7H,OAAOL,GAA/C0Q,EAAQG,EAAgB3I,QAAU,GAE5E8I,EAAeC,eACnB,SAACC,OACOC,EAAQR,EAASzI,WACnBiJ,EAAO,KACHC,EAAwBD,EAAME,eAGlCR,EAAgB3I,QADdkJ,GAAyBA,IADDD,EAAMG,aAENH,EAAMnR,MAAMgC,UAAU,EAAGoP,GAEzBD,EAAMnR,MAGhCyQ,IACFS,EAAE9I,OAAOpI,MAAQ6Q,EAAgB3I,QACjCuI,EAASS,MAGb,CAACT,IAGGc,EAAgBN,eAAY,SAACC,OAC3BC,EAAQR,EAASzI,WAClBiJ,KACa,IAAdD,EAAEM,SAA+B,KAAdN,EAAEM,QACvBV,EAAW5I,SAAU,MAChB,KACCkJ,EAAwBD,EAAME,eAEhCD,IADwBD,EAAMG,cACmBF,IAA0BD,EAAMnR,MAAMmC,SACzF2O,EAAW5I,SAAU,MAGxB,IAEHuJ,6BAA0B,eAClBN,EAAQR,EAASzI,QACnBiJ,GAAST,QACGtR,IAAVY,GAAuBK,OAAOL,GAAO0R,WAAWb,EAAgB3I,UAAY4I,EAAW5I,SACzFiJ,EAAMQ,kBAAkBd,EAAgB3I,QAAQ/F,OAAQ9B,OAAOL,GAAOmC,eAKtE0H,EAAY+H,WAAQ,eAClB/R,EAAS,CAAC,mCACZ6Q,GACF7Q,EAAOgS,KAAK,wBAEPhS,EAAOiS,KAAK,OAClB,CAACpB,WAGF9R,uBAAKiL,UAAWA,GACdjL,uBAAKiL,UAAU,0BACfjL,yBACE+I,IAAKgJ,EACLL,YAAaA,EACbzG,UAAU,iBACV0G,QAASA,EACTC,OAAQA,EACRC,SAAUO,EACVe,UAAWR,EACXvR,MAAO+Q,IAETnS,gBAACqQ,GAAcU,YAAaA,EAAa5F,KAAMA,EAAM6F,QAASA,MCnF9DoC,GAAuCpT,EAAMqT,MAAK,kBAAGC,IAAAA,YAEvDtT,uBAAKiL,UAAU,oBACEzK,IAAd8S,EAAKC,gBAAsBD,EAAKE,eAAMC,iBAAkBC,gBAAcC,QAAU,UAAYL,EAAKM,SAKxGR,GAAkBS,YAAc,oBCoCzB,IAAMC,GAAqC,GAQrCC,GAAgB,SAACC,UACxBC,eAAaD,GACPA,EAA6CE,OAEhDR,gBAAcS,QCrDjBC,GAA+C,kBACnDnJ,IAAAA,UACA+I,IAAAA,eACAK,cAAAA,aAAgBjB,KAChBkB,IAAAA,YACAC,IAAAA,gBAEMC,WAAQR,EAAWQ,SAAS,UAElCvL,aAAU,cACJ+K,EAAWE,SAAWR,gBAAce,sBAC/BT,EAAWU,SAEnB,CAACV,IAGFhU,uBAAKiL,UAAWlH,EAAa,SAAUkH,IACpCuJ,EAAMnI,KAAI,SAACiH,EAAWqB,UAEnB3U,gBAACqU,GACC1S,YAAagT,EACbA,MAAOA,EACPrB,KAAMA,GAAQQ,GACdhD,QAASwD,EACTM,YAAaL,SClBnBM,GAA4C,gBAChD5J,IAAAA,UACA+I,IAAAA,eACArH,OAAAA,aARoB,UASpB0H,cAAAA,aAAgBjB,SAChB0B,WAAAA,aATwB,SAUxBC,QAAAA,aATqB,UAUrBC,UAAAA,aATuB,MAUvBV,IAAAA,YACAC,IAAAA,gBAEMU,EAAYjD,SAAO,MAEnBkD,EAAsB7C,eAC1B,SAACsC,SAC2B,mBAAfG,GACFA,EAAWH,IApBA,KAwBtB,CAACG,IAGGzB,EAAOL,WAAQ,eACb/R,EAGF,CACFuT,MAAO,GACPN,OAAQH,GAAcC,WAItB/S,EAAOuT,MADLvT,EAAOiT,SAAWR,gBAAce,eACnBU,MAAMJ,GAAS7D,KAAKkE,wBAAiB5U,EAAWwT,EAAWqB,eAE3DrB,EAAWQ,OAAS,GAE9BvT,IACN,CAAC+S,EAAYe,MAEmCO,aAAW,CAC5DC,KAAMlC,EAAKmB,MAAMjR,OACjBiS,aAAcN,EACdD,UAAAA,IAHMQ,IAAAA,UAAWC,IAAAA,aAAcC,IAAAA,qBAMjC9C,6BAA0B,eAClB+C,EAAS5B,EAAW6B,aAAe,EACnCC,EAAkBJ,EAAa,GAGnC1B,EAAWE,SAAWR,gBAAcC,SACpCK,EAAWE,SAAWR,gBAAcqC,YACzB,IAAXH,GACyB,KALEE,EAAkBA,EAAgBnB,MAAQ,IAOrEgB,EAAc,KAEf,CAAC3B,IAEJ/K,aAAU,cACJ+K,EAAWE,SAAWR,gBAAce,eACtCT,EAAWU,KAAKK,QACX,GF1BiB,SAACf,UAEzBC,eAAaD,IAAgBA,EAA6CE,SAAWR,gBAAcsC,cEwBxFC,CAAajC,GAAa,KAC7BkC,EAAkBR,EAAaA,EAAanS,OAAS,IAC9B2S,EAAkBA,EAAgBvB,MAAQ,IAC3CtB,EAAKmB,MAAMjR,OAASwR,EAAU,GACxDf,EAAWU,KAAKM,EAAYhB,EAAWQ,MAAgBjR,WAG1D,CAACyQ,EAAYe,EAASW,EAAcV,EAAW3B,IAGhDrT,uBACE+I,IAAKkM,EACLhK,UAAWlH,EAAa,SAAUkH,GAClCN,MAAO,CACLkC,cAAgC,iBAAXF,EAAsBA,EAAYA,QACvD6C,SAAU,SAGZxP,uBACEiL,UAAU,qBACVN,MAAO,CACLgC,OAAW8I,OACXnL,MAAO,OACP6L,SAAU,aAGXT,EAAarJ,KAAI,gBAAGsI,IAAAA,aAGjB3U,uBACEiL,UAAU,sBACVtJ,oBAAqBgT,EACrB5L,MANsBqN,WAOtBzL,MAAO,CACLwL,SAAU,WACVE,IAAK,EACLC,KAAM,EACNhM,MAAO,OACPsC,UAAW,OACX2E,0BAbgCgF,cAgBlCvW,gBAACqU,GACC1S,YAAagT,EACbA,MAAOA,EACPrB,KAlBWD,EAAKmB,MAAMG,IAkBJb,GAClBhD,QAASwD,EACTM,YAAaL,WCrHvBiC,GAA+B,SAACzW,OAC5ByU,EAAgCzU,EAAhCyU,MAAUiC,IAAsB1W,oBACpCoV,MAAMuB,QAAQlC,GACTxU,gBAAC2W,oBAAsBF,GAAmBjC,MAAOA,KAEjDxU,gBAAC4W,oBAA0BH,GAAmBzC,WAAYQ,MAI/DmC,GAAqE,SAAC5W,OAClEyU,EAAgCzU,EAAhCyU,MAAUiC,IAAsB1W,aAClCiU,EAAa6C,gBAAcrC,UAC1BxU,gBAAC4W,oBAA0BH,GAAmBzC,WAAYA,MAG7D4C,GAA+C,SAAC7W,MAChDA,EAAM4M,cACD3M,gBAAC6U,oBAAwB9U,QAE1B+W,EAAmCC,OAAKhX,EAAO,CAAC,aAAc,SAAU,mBACvEC,gBAACoU,oBAA0B0C,KCtBhCE,GAA+ChX,EAAMqT,MAAK,gBAAGC,IAAAA,KAAMqB,IAAAA,MAAO7D,IAAAA,QAAS8D,IAAAA,YAC/ErB,EAAqBD,EAArBC,KAAYC,EAASF,EAATE,KAChByD,EAAU,GACVC,IAAcpG,EACdqG,IAAcvC,OACLpU,IAAT+S,UAAsBC,SAAAA,EAAMC,iBAAkBC,gBAAcC,SAC9DsD,EAAU,UACVC,GAAY,EACZC,GAAY,IAEZF,EAT2B3D,EAAfM,MASM,SACdJ,GAAAA,EAAM4D,WACRH,GAAW,WAGTtL,EAAaqH,WAAQ,eACnBrH,EAAa,CAAC,0BAChBuL,GACFvL,EAAWsH,KAAK,6BAEdkE,GACFxL,EAAWsH,KAAK,6BAEXtH,EAAWuH,KAAK,OACtB,CAACgE,EAAWC,WAGbnX,uBACEiL,UAAWU,EACXmF,QAAS,kBAAMoG,GAAapG,GAAWA,EAAQwC,EAAMqB,IACrDC,YAAa,kBAAMuC,GAAavC,GAAeA,EAAYtB,EAAMqB,UAEvDnU,IAAT+S,UAAsBC,SAAAA,EAAMC,iBAAkBC,gBAAcC,QAAU,UAAYsD,MAKzFD,GAAsBnD,YAAc,wBCpCpC,IAAMwD,GAAiD,oBAErDhD,cAAAA,aAAgB2C,KACbM,yCAEItX,gBAACwW,kBAAcvL,UAAU,mBAAmBoJ,cAAeA,EAAe1H,OAAO,QAAW2K,KCD/FC,GAAwC,SAACxX,OACrCyU,EAAkCzU,EAAlCyU,MAAUgD,IAAwBzX,oBACtCoV,MAAMuB,QAAQlC,GACTxU,gBAACyX,oBAAwBD,GAAqBhD,MAAOA,KAErDxU,gBAAC0X,oBAA4BF,GAAqBxD,WAAYQ,MAInEiD,GAAyE,SAAC1X,OACtEyU,EAAkCzU,EAAlCyU,MAAUgD,IAAwBzX,aACpCiU,EAAa6C,gBAAcrC,UAC1BxU,gBAAC0X,oBAA4BF,GAAqBxD,WAAYA,MAGjE0D,GAAmD,gBACvDzM,IAAAA,UACAyG,IAAAA,YACAsC,IAAAA,eACA2D,eAAAA,aAAiBlG,KACjBmG,IAAAA,UACAxW,IAAAA,MACAyQ,IAAAA,WAEwBxG,YAAS,GAA1BF,OAAM0M,SACaxM,aAAWuM,GAA9B9F,OAAOgG,OACRC,EAAW/F,SAAwB,IACnCgG,EAAmBhG,WAEnBhB,EAAUgC,WAAQ,kBACfgB,EAAWE,SAAWR,gBAAcC,SAAWK,EAAWE,SAAWR,gBAAcuE,iBACzF,CAACjE,IAEEkE,EAAYlF,WAAQ,kBACjBhC,IAAY7F,IAClB,CAACA,EAAM6F,MAE8B3F,WAA6B,MAA9D8M,OAAcC,OAEfxG,EAASS,eAAY,WACpB0F,EAASzO,QAAQ+O,YACpBP,GAAS,GACTD,GAAQ,MAET,IAEH/O,GAAgBqP,GAAc,WAC5BvG,WAUI0G,EAAetF,WAAQ,kBACtBlB,GAGCkC,EAAWuE,YACN/W,MAAIwS,EAAY,WAHlBoB,mBAAiBhU,EAAO4S,EAAWqB,gBAQ3C,CAACrB,EAAY5S,EAAO0Q,IAEjB0G,EAAgCnG,eACpC,SAACiB,GACKzB,GACFA,EAASyB,EAAKC,MAEhBsE,GAAQ,GACR7D,EAAWyE,gBAEb,CAAC5G,EAAUmC,WAGb/K,aAAU,cACJ7H,IAAU4W,EAAiB1O,QAAS,KAChCgK,EAAO8B,mBAAiBhU,EAAO4S,EAAWqB,cAC1CqD,EAAetD,mBAAiB4C,EAAiB1O,QAAS0K,EAAWqB,cAC3ErB,EAAW2E,QAAQD,EAAc,YAAY,GAC7C1E,EAAW2E,QAAQrF,EAAM,YAAY,GAEvC0E,EAAiB1O,QAAUlI,IAC1B,CAACA,EAAO4S,IAGThU,uBACEiL,UAAWA,EACXlC,IAAKqP,EACLtH,QAAS,kBAAMgH,GAAS,IACxBc,YAAa,kBAAOb,EAASzO,QAAQ+O,WAAY,GACjDQ,UAAW,kBAAOd,EAASzO,QAAQ+O,WAAY,IAE/CrY,gBAAC2X,GACCjG,YAAaA,EACbX,YAAa,kBAAOmH,GAAaL,GAAS1M,IAC1CA,KAAMA,IAAS+M,EACflH,QAASA,EACTa,SArDgB,SAACS,GAChBnH,GACH0M,GAAQ,GAEV7D,EAAW8E,OAAOxG,EAAE9I,OAAOpI,QAkDvBA,MAAOkX,EAAa1E,KACpB9B,MAAOA,EACPH,QAAS,kBAAMmG,GAAS,IACxBlG,OAAQA,IAEV5R,gBAACoQ,IAASlF,WAAYiN,EAAchN,KAAMA,GACxCnL,gBAACqX,IAAuB7C,MAAOR,EAAYM,YAAakE,OCrGnDO,GAAelV,EAAkC,iBAGjDmV,GAAanV,EAAgC,eAG7CoV,GAAYpV,EAA+B,cAG3CqV,GAA4E,SAAC9X,EAAOqB,mBAAAA,IAAAA,EAAW,IACnGF,EAAM,aAAclB,EAAe,YAAaD,EAAOqB,GAAUe,OACtEjB,EAAM,kBAAmBlB,EAAe,YAAaD,EAAOqB,KAKnDtC,GAAgE,SAACiB,EAAOqB,mBAAAA,IAAAA,EAAW,IACvFF,EAAM,MAAOlB,EAAe,YAAaD,EAAOqB,GAAUe,OAC/DjB,EAAM,WAAYlB,EAAe,YAAaD,EAAOqB,KAK5C0W,GAAiBtV,EAAoC,mBAErDuV,GAAcvV,EAAiC,gBAE/CwV,GAAexV,EAAkC,iBAEjDyV,GAAazV,EAAgC,eAE7C0V,GAAY1V,EAA+B,cAG3C2V,GAAsE,SAACpY,EAAOqB,mBAAAA,IAAAA,EAAW,IAC7FF,EAAM,UAAWlB,EAAe,YAAaD,EAAOqB,GAAUe,OACnEjB,EAAM,eAAgBlB,EAAe,YAAaD,EAAOqB,gKCjChDgX,GAAU5V,EAA6B,WAIvC6V,GAAa7V,EAAqB,cADF,SAACzC,UAAWA,EAAQ,UAAY,YAGhEuY,GAAO9V,EAA0B,QCPjC+V,GAAa/V,EAAgC,cAE7CgW,GAAchW,EAAiC,gBAE/CiW,GAAYjW,EAA+B,cAE3CkW,GAAalW,EAAgC,KAAMnC,EAAe,gBAElEsY,GAASnW,EAA4B,UAErCoW,GAAUpW,EAAsC,WAEhDqW,GAAerW,EAAkC,KAAMnC,EAAe,kBAEtEyY,GAAgBtW,EAA4C,kBAE5DuW,GAAevW,EAAkC,iBAEjDwW,GAAexW,EAA2C,UAAWzB,GAErEkY,GAAgBzW,EAAmC,kBAEnD0W,GAAS1W,EAA4B,UAErC2W,GAAc3W,EAAiC,gBAE/C4W,GAAa5W,EAAgC,eClC7C6W,GAAiB7W,EAAoC,mBAErD8W,GAAgB9W,EAA4C,iBAAkBzB,GAE9EwY,GAAc/W,EAAiC,gBAE/CgX,GAAahX,EAAgC,eAE7CiX,GAAcjX,EAAiC,gBAE/CkX,GAAgBlX,EAA4C,s4BCPzE,IAAMmX,GAA2C,kBACxCtY,WACHoB,IACAwG,GAAM,QAEJlF,EAAQ,GACRR,EAAQ,GACRT,EAAgB,SAChBsV,GAAQ,QACRvK,GAAY,GACZ1B,GAAY,YACZgB,GAAa,WAEXhB,GAAY,WACZ0B,GAAY,GAIdrK,EAAS,GACTC,EAAS,GACT8U,GAAW,QACXK,GAAQ,QACR3P,GAAM,QACNpK,EAAM,WAAY,CAAEwR,YAAa,aAGjCxR,EAAM,WACN8Z,GAAO,WACP1P,GAAM,GACNzF,EAAS,GACTC,EAAS,GACT2U,GAAQ,QACRT,GAAW,UACXxL,GAAY,YAGZtN,EAAM,WACN8Z,GAAO,WACP1P,GAAM,GACNqC,GAAO,GACPsN,GAAQ,OAAQ,CAAEnI,MAAO,SACzB3N,EAAgB,eAChBS,EAAQ,GAGR6U,GAAQ,SACRsB,GAAc,UACd5V,EAAO,MACP4K,GAAmB,OACnBC,GAAmB,OACnBC,GAAyB,eAGzB3F,GAAM,QACNkD,GAAY,YACZ4B,GAAkB,GAEhB4K,GAAO,WAGP7V,EAAgB,cAAe,CAAEuE,MAAO,qFCvElD,IAAMuS,GAASpS,EAAO0O,GAAP1O,MACXmS,8ECAJ,IAAME,GAAuC,kBACpCxY,WACHoB,4ECHN,IAAMqX,GAAOtS,EAAO2N,GAAP3N,MACTqS,ICMSE,GAAYvX,EAA+B,aAC3CwX,GAAiBxX,EAA2B,mBAC5CyX,GAAqBzX,EAAwC,uBAC7D0X,GAAoB1X,EAA2B,sBAC/C2X,GAAoB3X,EAAuC,uBAC3D4X,GAA0B5X,EAA6C,6BACvE6X,GAAgB7X,EAAmC,kBACnD8X,GAAqB9X,EAAgC,wBACrD+X,GAA0B/X,EAA6C,6BCNvEgY,GAAOhY,EAAmC,OADjC3B,EANH,CACjB4Z,QAAS,aACN,SACHC,KAAM,WACNC,KAAM,UAMKC,GAAYpY,EAAwC,cAGpDqY,GAAgBrY,EAAmC,kBAGnDsY,GAAWtY,EAAqB,YAAa1C,GAG7Cib,GAAavY,EAAqB,cAAe1C,GAGjDkb,GAAWxY,EAA8B,aASzCyY,GAAQzY,EAA0D,QADxD3B,EALH,CAClBqa,MAAO,QACPC,KAAM,OACNR,KAAM,OC/BKS,GAAa5Y,EAAgC,eAE7C6Y,GAAc7Y,EAAiC,gBAE/C8Y,GAAc9Y,EAAiC,gBAE/C+Y,GAAU/Y,EAA2B,WAErCgZ,GAAShZ,EAA2B,UCmBpCiZ,GAAcjZ,EAAiC,gBAE/CkZ,GAAalZ,EAAgC,eAE7CmZ,GAAanZ,EAAyC,eAEtDoZ,GAAkBpZ,EAC7B,KACAnC,EAAe,sBAGJwb,GAAkBrZ,EAAqC,qBAEvDsZ,GAAkBtZ,EAA8C,oBAAqBzB,GAErFgb,GAAavZ,EAAgC,eAE7CwZ,GAAcxZ,EAA0C,eAAgBzB,GAExEkb,GAAUzZ,EAAsC,WAEhD0Z,GAAO1Z,EAA0B,QAEjC2Z,GAAkB3Z,EAA8C,qBAEhE4Z,GAAe5Z,EAAkC,kBAEjD6Z,GAAe7Z,EAA2C,kBAE1D8Z,GAAa9Z,EAAgC,eAE7C+Z,GAAgB/Z,EAAmC,qBAEnDga,GAAgB3E,GAEhB4E,GAAkBja,EAAqC,qBAEvDka,GAAU5d,GAEV6d,GAAUna,EAA6B,YAEvCoa,GAAapa,EAAgC,gBAE7Cqa,GAAa1E,GAEb2E,GAAeta,EAAkC,kBAEjDua,GAAeva,EAAkC,iBAEjDwa,GAAoBxa,EAAuC,uBAE3Dya,GAAsBza,EAAkD,yBAExE0a,GAAmB1a,EAA+C,sBC/ElE2a,GAAiB3a,EAAoC,mBAGrD4a,GAAY5a,EAA+B,cAG3C6a,GAAiB7a,EAA6C,mBCP9DqX,GAAYrX,EAA+B,cAE3C8a,GAAiB9a,EAAoC,oBAGrD+a,GAAoB/a,EAAuC,uBAG3Dgb,GAAgBhb,EAAmC,mBCNnDib,GAAQjb,EAA2B,SAGnCkb,GAAQlb,EAA2B,SAGnCyS,GAAOzS,EAAmC,QAG1CsS,GAAWtS,EAA8B,YAGzCmb,GAAQnb,EAAoC,SAG5CwS,GAAMxS,EAAkC,OAGxCob,GAASpb,EAAY,WCnBrBqN,GAAOrN,EAA0B,QAEjCsN,GAAStN,EAA4B,UAErCuN,GAAcvN,EAA0C,gBCGxDqb,GAAcrb,EAA0C,eAExDsb,GAAoBtb,EAAgD,sBAEpEub,GAASvb,EAA4B,UAErCwb,GAAQxb,EAA2B,SAEnC0N,GAAY1N,EAA+B,aAE3Cyb,GAAkBzb,EAA8C,8rEffhC,eACvC5C,EAAgDyB,mBACnD,KAAM,KAAM,KAAM,MAAMO,SAAQ,SAACE,GAChClC,EAASA,EAAOuC,OAAOd,YACnB,SAAC3C,+BAAgCA,EAAMwB,MAAMkC,YAAYN,8BAC5CpD,EAAMwB,MAAMkC,YAAYN,uBAIpClC,gpD1B8C2E,SAACG,EAAOqB,mBAAAA,IAAAA,EAAW,IAC9FF,EAAM,cAAelB,EAAe,YAAaD,EAAOqB,GAAUe,OACvEjB,EAAM,eAAgBlB,EAAe,YAAaD,EAAOqB,sjCJpCrC,SAAC3B,EAAWC,EAAWC,SACtC,MAAQ,GAAK,KAAOF,GAAK,KAAOC,GAAK,GAAKC,GAAGoL,SAAS,IAAImT,MAAM,qqB8CxBpD,SAACC,YAAAA,IAAAA,EAAc,QAC5Bje,EAAeM,OAAO4d,OAC1B,CACErf,MAAM,EACNqD,YAAa,CACXZ,GAAI,QACJC,GAAI,QACJC,GAAI,SACJC,GAAI,UAEN0c,OAAQ,CACNC,YAAa,cACbrW,QAAS,eACTsW,MAAO,OACPC,MAAO,kBACK,qBACA,qBACA,qBACA,qBACA,qBACA,qBACA,qBACA,qBACA,oBACD,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,oBACA,uBACG,uBACA,uBACA,uBACA,uBACA,uBACA,uBACA,uBACA,uBACA,uBACA,uBACA,uBACA,uBACA,uBACA,uBACA,uBACA,uBACA,uBACA,sBACD,sBACA,sBACA,sBACA,sBACA,sBACA,sBACA,sBACA,sBACA,qBACD,qBACA,qBACA,qBACA,qBACA,qBACA,qBACA,qBACA,qBACA,qBACA,qBACA,qBACA,qBACA,qBACA,qBACA,qBACA,qBACA,qBACA,uBACE,uBACA,uBACA,uBACA,uBACA,uBACA,uBACA,uBACA,uBACA,uBACA,uBACA,uBACA,uBACA,uBACA,uBACA,uBACA,uBACA,uBACA,qBACF,qBACA,qBACA,qBACA,qBACA,qBACA,qBACA,qBACA,qBACA,WAEdpa,KAAM,CACJqa,SAAU,CACRC,KACE,mMACFC,MAAO,oDACPC,KAAM,wEAERC,YAAa,CACXlE,KAAM,EACNmE,MAAO,KACPC,KAAM,MACNC,OAAQ,IACRC,QAAS,MACTC,MAAO,IACJ,WACA,SACA,YACA,WACA,YACA,SACA,aACC,UAENpU,MAAO,CACLqU,GAAI,SACJ3d,GAAI,UACJ4d,KAAM,OACN1d,GAAI,WACJC,GAAI,gBACG,eACA,iBACA,gBACA,aACA,QAET0d,SAAU,CACRC,OAAQ,UACRR,MAAO,WACPE,OAAQ,EACRO,KAAM,UACNC,MAAO,SACPC,OAAQ,SAEVC,QAAS,CACPC,SAAU,IACVC,KAAM,IACNC,MAAO,IACPb,OAAQ,IACRc,OAAQ,IACRC,SAAU,IACVC,KAAM,IACNC,UAAW,IACX1B,MAAO,MAGX7d,KAAM,CACJwf,QAAS,WACTC,OAAQ,UACRC,QAAS,YACTC,QAAS,aACTC,UAAW,YAEbC,OAAQ,CACN5F,KAAM,IACNnZ,GAAI,mBACK,UACTC,GAAI,WACJC,GAAI,SACJ8e,KAAM,UAERC,OAAQ,CACNtB,GAAI,gCACJ3d,GAAI,0CACK,kEACTC,GAAI,yEACJC,GAAI,0EACJC,GAAI,kFACG,wCACP+e,MAAO,wCACP9H,QAAS,oCACT+B,KAAM,QAER0E,SAAU,GACL,MACA,YACA,WACA,YACA,SACA,YACA,WACA,UACC,YACA,UACA,UACA,UACA,UACA,UACA,WACA,WACA,WACA,QACJsB,GAAI,OAEN7V,MAAO,GACF,MACA,YACA,WACA,YACA,SACA,YACA,WACA,UACC,YACA,UACA,UACA,UACA,UACA,UACA,WACA,WACA,WACA,QACJ6V,GAAI,MACJxB,GAAI,QACJ3d,GAAI,QACJC,GAAI,QACJC,GAAI,QACJC,GAAI,cACG,cACA,cACA,cACA,cACA,oBACM,oBACA,oBACA,qBACA,UAGfyF,OAAQ,IAEV+W,UAGF3d,OAAOC,KAAKP,EAAMQ,MAAMkB,SAAQ,SAAClB,GAC/BR,EAAMkH,OAAO1G,GAAQ,CACnBoC,gBAAiB3C,MAAID,YAAiBQ,qBAAwBR,EAAMQ,KAAKA,IACzE7B,MAAOsB,MAAID,YAAiBQ,WAAc,SAC1C6E,WAAYpF,MAAID,YAAiBQ,gBAAmB,QACpD8C,SAAUrD,MAAID,YAAiBQ,cAAiB,GAChD+C,SAAUtD,MAAID,YAAiBQ,cAAiB,OAIpDF,OAAOC,KAAKP,EAAMQ,MAAMkB,SAAQ,SAAClB,GAC/BR,EAAMkH,OAAO1G,GAAM4G,qBAAuBnH,MACxCD,YACUQ,0BACV9B,EAAYsB,EAAMkH,OAAO1G,GAAMoC,gBAAiB,IAAK5C,EAAMnB,UAIxDmB"}
|