@payloadcms/ui 3.0.0-alpha.0 → 3.0.0-alpha.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/@types/assets.d.js +3 -0
- package/dist/config.js +13 -0
- package/dist/elements/ArrayAction/index.js +120 -0
- package/dist/elements/ArrayAction/types.js +6 -0
- package/dist/elements/Autosave/index.d.ts.map +1 -1
- package/dist/elements/Autosave/index.js +207 -0
- package/dist/elements/Autosave/types.js +6 -0
- package/dist/elements/Banner/index.js +52 -0
- package/dist/elements/Banner/types.js +6 -0
- package/dist/elements/Button/index.js +166 -0
- package/dist/elements/Button/types.js +6 -0
- package/dist/elements/Card/index.js +46 -0
- package/dist/elements/Card/types.js +6 -0
- package/dist/elements/CodeEditor/CodeEditor.js +53 -0
- package/dist/elements/CodeEditor/index.js +68 -0
- package/dist/elements/CodeEditor/types.js +6 -0
- package/dist/elements/Collapsible/index.js +128 -0
- package/dist/elements/Collapsible/provider.js +90 -0
- package/dist/elements/Collapsible/types.js +6 -0
- package/dist/elements/ColumnSelector/index.js +109 -0
- package/dist/elements/ColumnSelector/types.js +6 -0
- package/dist/elements/CopyToClipboard/index.js +98 -0
- package/dist/elements/CopyToClipboard/types.js +6 -0
- package/dist/elements/DatePicker/DatePicker.js +147 -0
- package/dist/elements/DatePicker/index.js +63 -0
- package/dist/elements/DatePicker/types.js +6 -0
- package/dist/elements/DeleteDocument/index.js +178 -0
- package/dist/elements/DeleteDocument/types.js +6 -0
- package/dist/elements/DeleteMany/index.js +176 -0
- package/dist/elements/DeleteMany/types.js +6 -0
- package/dist/elements/DocumentControls/index.d.ts +2 -2
- package/dist/elements/DocumentControls/index.d.ts.map +1 -1
- package/dist/elements/DocumentControls/index.js +159 -0
- package/dist/elements/DocumentDrawer/DrawerContent.js +219 -0
- package/dist/elements/DocumentDrawer/index.js +185 -0
- package/dist/elements/DocumentDrawer/types.js +6 -0
- package/dist/elements/DocumentFields/index.js +55 -0
- package/dist/elements/DocumentHeader/Tabs/ShouldRenderTabs.js +23 -0
- package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js +42 -0
- package/dist/elements/DocumentHeader/Tabs/Tab/index.js +105 -0
- package/dist/elements/DocumentHeader/Tabs/getCustomViews.js +48 -0
- package/dist/elements/DocumentHeader/Tabs/getViewConfig.js +24 -0
- package/dist/elements/DocumentHeader/Tabs/index.js +84 -0
- package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js +27 -0
- package/dist/elements/DocumentHeader/Tabs/tabs/index.js +75 -0
- package/dist/elements/DocumentHeader/index.js +81 -0
- package/dist/elements/DraggableSortable/DraggableSortableItem/index.js +82 -0
- package/dist/elements/DraggableSortable/DraggableSortableItem/types.js +6 -0
- package/dist/elements/DraggableSortable/index.js +96 -0
- package/dist/elements/DraggableSortable/types.js +6 -0
- package/dist/elements/DraggableSortable/useDraggableSortable/index.js +32 -0
- package/dist/elements/DraggableSortable/useDraggableSortable/types.js +6 -0
- package/dist/elements/Drawer/index.js +156 -0
- package/dist/elements/Drawer/types.js +6 -0
- package/dist/elements/Drawer/useDrawerSlug.js +23 -0
- package/dist/elements/Dropzone/index.js +117 -0
- package/dist/elements/DuplicateDocument/index.js +217 -0
- package/dist/elements/DuplicateDocument/types.js +6 -0
- package/dist/elements/EditMany/index.js +274 -0
- package/dist/elements/EditMany/types.js +6 -0
- package/dist/elements/EditUpload/index.js +390 -0
- package/dist/elements/ErrorPill/index.js +37 -0
- package/dist/elements/ErrorPill/types.js +6 -0
- package/dist/elements/FieldSelect/index.js +138 -0
- package/dist/elements/FileDetails/FileMeta/index.js +96 -0
- package/dist/elements/FileDetails/FileMeta/types.js +6 -0
- package/dist/elements/FileDetails/index.js +59 -0
- package/dist/elements/FileDetails/types.js +6 -0
- package/dist/elements/GenerateConfirmation/index.js +72 -0
- package/dist/elements/GenerateConfirmation/types.js +6 -0
- package/dist/elements/GetFilterOptions/index.js +57 -0
- package/dist/elements/Gutter/index.js +72 -0
- package/dist/elements/Hamburger/index.js +54 -0
- package/dist/elements/Header/index.d.ts.map +1 -1
- package/dist/elements/Header/index.js +140 -0
- package/dist/elements/HydrateClientUser/index.js +28 -0
- package/dist/elements/IDLabel/index.js +28 -0
- package/dist/elements/ListControls/getTextFieldsToBeSearched.js +21 -0
- package/dist/elements/ListControls/index.js +149 -0
- package/dist/elements/ListControls/types.js +6 -0
- package/dist/elements/ListDrawer/DrawerContent.js +315 -0
- package/dist/elements/ListDrawer/index.js +198 -0
- package/dist/elements/ListDrawer/types.js +6 -0
- package/dist/elements/ListSelection/index.js +83 -0
- package/dist/elements/Loading/index.js +103 -0
- package/dist/elements/LoadingOverlay/index.js +130 -0
- package/dist/elements/LoadingOverlay/reducer.js +49 -0
- package/dist/elements/LoadingOverlay/types.js +6 -0
- package/dist/elements/Localizer/LocalizerLabel/index.js +43 -0
- package/dist/elements/Localizer/index.js +121 -0
- package/dist/elements/Logout/index.d.ts.map +1 -1
- package/dist/elements/Logout/index.js +49 -0
- package/dist/elements/Nav/NavHamburger/index.js +34 -0
- package/dist/elements/Nav/NavToggler/index.js +53 -0
- package/dist/elements/Nav/NavWrapper/index.js +34 -0
- package/dist/elements/Nav/context.js +150 -0
- package/dist/elements/Nav/index.d.ts.map +1 -1
- package/dist/elements/Nav/index.js +106 -0
- package/dist/elements/NavGroup/index.js +129 -0
- package/dist/elements/Pagination/ClickableArrow/index.js +36 -0
- package/dist/elements/Pagination/ClickableArrow/types.js +6 -0
- package/dist/elements/Pagination/Page/index.js +33 -0
- package/dist/elements/Pagination/Page/types.js +6 -0
- package/dist/elements/Pagination/Separator/index.js +22 -0
- package/dist/elements/Pagination/index.js +126 -0
- package/dist/elements/Pagination/types.js +6 -0
- package/dist/elements/PerPage/index.d.ts.map +1 -1
- package/dist/elements/PerPage/index.js +115 -0
- package/dist/elements/Pill/index.js +93 -0
- package/dist/elements/Pill/types.js +6 -0
- package/dist/elements/Popup/PopupButtonList/index.d.ts +2 -2
- package/dist/elements/Popup/PopupButtonList/index.d.ts.map +1 -1
- package/dist/elements/Popup/PopupButtonList/index.js +118 -0
- package/dist/elements/Popup/PopupTrigger/index.js +51 -0
- package/dist/elements/Popup/PopupTrigger/types.js +6 -0
- package/dist/elements/Popup/index.js +193 -0
- package/dist/elements/Popup/types.js +6 -0
- package/dist/elements/PreviewButton/index.js +129 -0
- package/dist/elements/PreviewSizes/index.js +163 -0
- package/dist/elements/Publish/index.js +153 -0
- package/dist/elements/PublishMany/index.js +169 -0
- package/dist/elements/PublishMany/types.js +6 -0
- package/dist/elements/ReactSelect/ClearIndicator/index.js +31 -0
- package/dist/elements/ReactSelect/Control/index.js +49 -0
- package/dist/elements/ReactSelect/MultiValue/index.js +55 -0
- package/dist/elements/ReactSelect/MultiValueLabel/index.js +34 -0
- package/dist/elements/ReactSelect/MultiValueRemove/index.js +48 -0
- package/dist/elements/ReactSelect/SingleValue/index.js +30 -0
- package/dist/elements/ReactSelect/ValueContainer/index.js +29 -0
- package/dist/elements/ReactSelect/index.js +177 -0
- package/dist/elements/ReactSelect/types.js +6 -0
- package/dist/elements/RenderCustomComponent/index.js +28 -0
- package/dist/elements/RenderCustomComponent/types.js +6 -0
- package/dist/elements/RenderTitle/index.js +42 -0
- package/dist/elements/RenderTitle/types.js +6 -0
- package/dist/elements/Save/index.js +103 -0
- package/dist/elements/SaveDraft/index.js +147 -0
- package/dist/elements/SearchFilter/index.d.ts.map +1 -1
- package/dist/elements/SearchFilter/index.js +139 -0
- package/dist/elements/SearchFilter/types.js +6 -0
- package/dist/elements/SelectAll/index.js +35 -0
- package/dist/elements/SelectRow/index.js +31 -0
- package/dist/elements/ShimmerEffect/index.js +96 -0
- package/dist/elements/SortColumn/index.d.ts.map +1 -1
- package/dist/elements/SortColumn/index.js +139 -0
- package/dist/elements/SortColumn/types.js +6 -0
- package/dist/elements/SortComplex/index.d.ts.map +1 -1
- package/dist/elements/SortComplex/index.js +157 -0
- package/dist/elements/SortComplex/types.js +6 -0
- package/dist/elements/Status/index.js +202 -0
- package/dist/elements/StayLoggedIn/index.d.ts.map +1 -1
- package/dist/elements/StayLoggedIn/index.js +57 -0
- package/dist/elements/StayLoggedIn/types.js +6 -0
- package/dist/elements/StepNav/SetStepNav.js +25 -0
- package/dist/elements/StepNav/index.d.ts.map +1 -1
- package/dist/elements/StepNav/index.js +127 -0
- package/dist/elements/StepNav/types.js +6 -0
- package/dist/elements/Table/TableCellProvider/index.js +47 -0
- package/dist/elements/Table/index.js +63 -0
- package/dist/elements/Table/types.js +6 -0
- package/dist/elements/TableColumns/buildColumns.js +77 -0
- package/dist/elements/TableColumns/columnReducer.js +47 -0
- package/dist/elements/TableColumns/index.js +199 -0
- package/dist/elements/Thumbnail/index.js +89 -0
- package/dist/elements/Thumbnail/types.js +6 -0
- package/dist/elements/ThumbnailCard/index.js +54 -0
- package/dist/elements/ThumbnailCard/types.js +6 -0
- package/dist/elements/Tooltip/index.js +114 -0
- package/dist/elements/Tooltip/types.js +6 -0
- package/dist/elements/Translation/index.js +81 -0
- package/dist/elements/UnpublishMany/index.js +169 -0
- package/dist/elements/UnpublishMany/types.js +6 -0
- package/dist/elements/Upload/index.js +250 -0
- package/dist/elements/Upload/types.js +6 -0
- package/dist/elements/ViewDescription/index.js +38 -0
- package/dist/elements/ViewDescription/types.js +21 -0
- package/dist/elements/WhereBuilder/Condition/Date/index.js +32 -0
- package/dist/elements/WhereBuilder/Condition/Date/types.js +6 -0
- package/dist/elements/WhereBuilder/Condition/Number/index.js +33 -0
- package/dist/elements/WhereBuilder/Condition/Number/types.js +6 -0
- package/dist/elements/WhereBuilder/Condition/Relationship/index.js +337 -0
- package/dist/elements/WhereBuilder/Condition/Relationship/optionsReducer.js +98 -0
- package/dist/elements/WhereBuilder/Condition/Relationship/types.js +6 -0
- package/dist/elements/WhereBuilder/Condition/Select/index.js +96 -0
- package/dist/elements/WhereBuilder/Condition/Select/types.js +6 -0
- package/dist/elements/WhereBuilder/Condition/Text/index.js +33 -0
- package/dist/elements/WhereBuilder/Condition/Text/types.js +6 -0
- package/dist/elements/WhereBuilder/Condition/index.js +203 -0
- package/dist/elements/WhereBuilder/Condition/types.js +6 -0
- package/dist/elements/WhereBuilder/field-types.js +185 -0
- package/dist/elements/WhereBuilder/index.js +235 -0
- package/dist/elements/WhereBuilder/reducer.js +88 -0
- package/dist/elements/WhereBuilder/transformWhereQuery.js +57 -0
- package/dist/elements/WhereBuilder/types.js +6 -0
- package/dist/elements/WhereBuilder/validateWhereQuery.js +46 -0
- package/dist/exports/assets.js +27 -0
- package/dist/exports/elements.js +226 -0
- package/dist/exports/forms.js +158 -0
- package/dist/exports/graphics.js +27 -0
- package/dist/exports/hooks.js +55 -0
- package/dist/exports/icons.js +82 -0
- package/dist/exports/index.js +28 -0
- package/dist/exports/providers.js +116 -0
- package/dist/exports/templates.js +22 -0
- package/dist/exports/types.js +6 -0
- package/dist/exports/utilities.js +62 -0
- package/dist/forms/Error/index.js +43 -0
- package/dist/forms/FieldDescription/index.js +38 -0
- package/dist/forms/FieldDescription/types.js +6 -0
- package/dist/forms/FieldPathProvider/index.js +44 -0
- package/dist/forms/FieldPathProvider/types.js +6 -0
- package/dist/forms/Form/buildFieldSchemaMap.js +54 -0
- package/dist/forms/Form/buildInitialState.js +26 -0
- package/dist/forms/Form/context.js +84 -0
- package/dist/forms/Form/createNestedFieldPath.js +25 -0
- package/dist/forms/Form/errorMessages.js +15 -0
- package/dist/forms/Form/fieldReducer.js +286 -0
- package/dist/forms/Form/getDataByPath.js +29 -0
- package/dist/forms/Form/getSiblingData.js +50 -0
- package/dist/forms/Form/index.js +565 -0
- package/dist/forms/Form/initContextState.js +45 -0
- package/dist/forms/Form/mergeServerFormState.js +45 -0
- package/dist/forms/Form/reduceFieldsToValues.js +34 -0
- package/dist/forms/Form/rows.js +53 -0
- package/dist/forms/Form/types.js +6 -0
- package/dist/forms/Label/index.js +36 -0
- package/dist/forms/NullifyField/index.js +103 -0
- package/dist/forms/RenderFields/RenderField.js +30 -0
- package/dist/forms/RenderFields/index.js +66 -0
- package/dist/forms/RenderFields/types.js +6 -0
- package/dist/forms/RowLabel/index.js +50 -0
- package/dist/forms/RowLabel/types.js +21 -0
- package/dist/forms/Submit/index.js +75 -0
- package/dist/forms/WatchChildErrors/buildPathSegments.js +37 -0
- package/dist/forms/WatchChildErrors/getFieldStateFromPaths.js +35 -0
- package/dist/forms/WatchChildErrors/getNestedFieldState.js +28 -0
- package/dist/forms/WatchChildErrors/index.js +41 -0
- package/dist/forms/fields/Array/ArrayRow.js +87 -0
- package/dist/forms/fields/Array/index.js +305 -0
- package/dist/forms/fields/Array/types.js +6 -0
- package/dist/forms/fields/Blocks/BlockRow.js +101 -0
- package/dist/forms/fields/Blocks/BlocksDrawer/BlockSearch/index.js +37 -0
- package/dist/forms/fields/Blocks/BlocksDrawer/index.js +134 -0
- package/dist/forms/fields/Blocks/BlocksDrawer/types.js +6 -0
- package/dist/forms/fields/Blocks/RowActions.js +52 -0
- package/dist/forms/fields/Blocks/SectionTitle/index.js +54 -0
- package/dist/forms/fields/Blocks/SectionTitle/types.js +6 -0
- package/dist/forms/fields/Blocks/index.js +317 -0
- package/dist/forms/fields/Blocks/types.js +6 -0
- package/dist/forms/fields/Checkbox/Input.js +56 -0
- package/dist/forms/fields/Checkbox/index.js +134 -0
- package/dist/forms/fields/Checkbox/types.js +6 -0
- package/dist/forms/fields/Code/index.js +115 -0
- package/dist/forms/fields/Code/types.js +6 -0
- package/dist/forms/fields/Collapsible/index.js +169 -0
- package/dist/forms/fields/Collapsible/types.js +6 -0
- package/dist/forms/fields/ConfirmPassword/index.js +112 -0
- package/dist/forms/fields/ConfirmPassword/types.js +6 -0
- package/dist/forms/fields/DateTime/index.js +115 -0
- package/dist/forms/fields/DateTime/types.js +6 -0
- package/dist/forms/fields/Email/index.js +121 -0
- package/dist/forms/fields/Email/types.js +6 -0
- package/dist/forms/fields/Group/index.js +127 -0
- package/dist/forms/fields/Group/provider.js +74 -0
- package/dist/forms/fields/Group/types.js +6 -0
- package/dist/forms/fields/HiddenInput/index.js +88 -0
- package/dist/forms/fields/HiddenInput/types.js +6 -0
- package/dist/forms/fields/JSON/index.js +137 -0
- package/dist/forms/fields/JSON/types.js +6 -0
- package/dist/forms/fields/Number/index.js +212 -0
- package/dist/forms/fields/Number/types.js +6 -0
- package/dist/forms/fields/Password/index.js +116 -0
- package/dist/forms/fields/Password/types.js +6 -0
- package/dist/forms/fields/Point/index.js +147 -0
- package/dist/forms/fields/Point/types.js +6 -0
- package/dist/forms/fields/RadioGroup/Radio/index.js +45 -0
- package/dist/forms/fields/RadioGroup/index.js +147 -0
- package/dist/forms/fields/RadioGroup/types.js +6 -0
- package/dist/forms/fields/Relationship/AddNew/index.js +216 -0
- package/dist/forms/fields/Relationship/AddNew/types.js +6 -0
- package/dist/forms/fields/Relationship/AddNew/useRelatedCollections.js +27 -0
- package/dist/forms/fields/Relationship/createRelationMap.js +59 -0
- package/dist/forms/fields/Relationship/findOptionsByValue.js +45 -0
- package/dist/forms/fields/Relationship/index.js +509 -0
- package/dist/forms/fields/Relationship/optionsReducer.js +126 -0
- package/dist/forms/fields/Relationship/select-components/MultiValueLabel/index.js +109 -0
- package/dist/forms/fields/Relationship/select-components/SingleValue/index.js +108 -0
- package/dist/forms/fields/Relationship/types.js +6 -0
- package/dist/forms/fields/RichText/index.js +16 -0
- package/dist/forms/fields/RichText/types.js +6 -0
- package/dist/forms/fields/Row/index.js +42 -0
- package/dist/forms/fields/Row/provider.js +74 -0
- package/dist/forms/fields/Row/types.js +6 -0
- package/dist/forms/fields/Select/index.js +183 -0
- package/dist/forms/fields/Select/types.js +6 -0
- package/dist/forms/fields/Tabs/Tab/index.js +85 -0
- package/dist/forms/fields/Tabs/index.js +167 -0
- package/dist/forms/fields/Tabs/provider.js +74 -0
- package/dist/forms/fields/Tabs/types.js +6 -0
- package/dist/forms/fields/Text/index.js +194 -0
- package/dist/forms/fields/Text/types.js +6 -0
- package/dist/forms/fields/Textarea/index.js +133 -0
- package/dist/forms/fields/Textarea/types.js +6 -0
- package/dist/forms/fields/UI/index.js +16 -0
- package/dist/forms/fields/Upload/Input.js +3 -0
- package/dist/forms/fields/Upload/index.js +210 -0
- package/dist/forms/fields/Upload/types.js +6 -0
- package/dist/forms/fields/getFilterOptionsQuery.js +39 -0
- package/dist/forms/fields/index.js +67 -0
- package/dist/forms/fields/shared.js +29 -0
- package/dist/forms/useField/index.js +169 -0
- package/dist/forms/useField/types.js +6 -0
- package/dist/forms/utilities/buildStateFromSchema/addFieldStatePromise.js +335 -0
- package/dist/forms/utilities/buildStateFromSchema/buildStateFromSchema.spec.js +76 -0
- package/dist/forms/utilities/buildStateFromSchema/index.js +35 -0
- package/dist/forms/utilities/buildStateFromSchema/iterateFields.js +48 -0
- package/dist/forms/withCondition/WatchCondition.js +66 -0
- package/dist/forms/withCondition/index.js +33 -0
- package/dist/graphics/Account/Default/index.js +43 -0
- package/dist/graphics/Account/Gravatar/index.js +42 -0
- package/dist/graphics/Account/index.js +50 -0
- package/dist/graphics/DefaultBlockImage/index.js +84 -0
- package/dist/graphics/ExternalLink/index.js +34 -0
- package/dist/graphics/File/index.js +36 -0
- package/dist/graphics/Icon/index.js +64 -0
- package/dist/graphics/Logo/index.js +60 -0
- package/dist/graphics/Search/index.js +42 -0
- package/dist/hooks/useAdminThumbnail.js +17 -0
- package/dist/hooks/useDebounce.js +31 -0
- package/dist/hooks/useDebouncedCallback.js +29 -0
- package/dist/hooks/useDebouncedEffect.js +32 -0
- package/dist/hooks/useDelay.js +82 -0
- package/dist/hooks/useDelayedRender.js +97 -0
- package/dist/hooks/useHotkey.js +129 -0
- package/dist/hooks/useIntersect.js +39 -0
- package/dist/hooks/usePayloadAPI.js +94 -0
- package/dist/hooks/useResize.js +59 -0
- package/dist/hooks/useThrottledEffect.js +31 -0
- package/dist/hooks/useThumbnail.js +57 -0
- package/dist/hooks/useUseAsTitle.js +19 -0
- package/dist/icons/Calendar/index.js +48 -0
- package/dist/icons/Check/index.js +34 -0
- package/dist/icons/Chevron/index.js +36 -0
- package/dist/icons/CloseMenu/index.js +39 -0
- package/dist/icons/CodeBlock/index.js +32 -0
- package/dist/icons/Copy/index.js +33 -0
- package/dist/icons/DragHandle/index.js +57 -0
- package/dist/icons/Edit/index.js +37 -0
- package/dist/icons/Line/index.js +30 -0
- package/dist/icons/Link/index.js +33 -0
- package/dist/icons/LogOut/index.js +37 -0
- package/dist/icons/Menu/index.js +45 -0
- package/dist/icons/MinimizeMaximize/index.js +87 -0
- package/dist/icons/More/index.js +42 -0
- package/dist/icons/Plus/index.js +36 -0
- package/dist/icons/Search/index.js +36 -0
- package/dist/icons/Swap/index.js +43 -0
- package/dist/icons/X/index.js +41 -0
- package/dist/index.js +20 -0
- package/dist/providers/ActionsProvider/index.js +89 -0
- package/dist/providers/Auth/HydrateClientUser/index.js +28 -0
- package/dist/providers/Auth/index.js +373 -0
- package/dist/providers/Auth/types.js +6 -0
- package/dist/providers/ClientFunction/index.js +65 -0
- package/dist/providers/ComponentMapProvider/index.js +98 -0
- package/dist/providers/Config/index.js +70 -0
- package/dist/providers/CustomProvider/index.js +38 -0
- package/dist/providers/DocumentEvents/index.js +77 -0
- package/dist/providers/DocumentEvents/types.js +6 -0
- package/dist/providers/DocumentInfo/SetDocumentInfo/index.js +34 -0
- package/dist/providers/DocumentInfo/index.js +353 -0
- package/dist/providers/DocumentInfo/types.js +6 -0
- package/dist/providers/EditDepth/index.js +71 -0
- package/dist/providers/FormQueryParams/index.js +77 -0
- package/dist/providers/ListInfo/index.js +78 -0
- package/dist/providers/ListInfo/types.js +6 -0
- package/dist/providers/Locale/index.js +122 -0
- package/dist/providers/OperationProvider/index.js +71 -0
- package/dist/providers/Params/index.js +72 -0
- package/dist/providers/Portal/index.js +20 -0
- package/dist/providers/Preferences/index.js +184 -0
- package/dist/providers/Root/index.js +103 -0
- package/dist/providers/SearchParams/index.js +119 -0
- package/dist/providers/SearchParams/types.js +6 -0
- package/dist/providers/SelectionProvider/index.js +218 -0
- package/dist/providers/Theme/index.js +123 -0
- package/dist/providers/Theme/types.js +6 -0
- package/dist/providers/Theme/utilities.js +35 -0
- package/dist/providers/Translation/index.js +92 -0
- package/dist/templates/Default/NavHamburger/index.js +28 -0
- package/dist/templates/Default/Wrapper/index.js +32 -0
- package/dist/templates/Default/index.js +88 -0
- package/dist/templates/Default/types.js +6 -0
- package/dist/templates/Minimal/index.js +34 -0
- package/dist/templates/Minimal/types.js +6 -0
- package/dist/utilities/api.js +98 -0
- package/dist/utilities/arraysHaveSameStrings.js +28 -0
- package/dist/utilities/buildComponentMap/index.js +101 -0
- package/dist/utilities/buildComponentMap/mapFields.js +318 -0
- package/dist/utilities/buildComponentMap/types.js +6 -0
- package/dist/utilities/buildFieldSchemaMap/index.js +36 -0
- package/dist/utilities/buildFieldSchemaMap/traverseFields.js +94 -0
- package/dist/utilities/buildFieldSchemaMap/types.js +6 -0
- package/dist/utilities/canUseDOM.js +13 -0
- package/dist/utilities/findLocaleFromCode.js +18 -0
- package/dist/utilities/formatDate/getSupportedDateLocale.js +21 -0
- package/dist/utilities/formatDate/index.js +78 -0
- package/dist/utilities/formatDocTitle.js +33 -0
- package/dist/utilities/formatFields.js +14 -0
- package/dist/utilities/getFormState.js +28 -0
- package/dist/utilities/getOffsetTop.js +26 -0
- package/dist/utilities/getRequestLanguage.js +17 -0
- package/dist/utilities/getSupportedMonacoLocale.js +26 -0
- package/dist/utilities/groupNavItems.js +61 -0
- package/dist/utilities/scrollToID.js +22 -0
- package/dist/utilities/setsAreEqual.js +17 -0
- package/dist/utilities/withMergedProps/index.js +27 -0
- package/dist/views/Global/RenderCustomView.js +3 -0
- package/package.json +5 -5
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "useDebouncedEffect", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return useDebouncedEffect;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
const _react = require("react");
|
|
12
|
+
function useDebouncedEffect(effect, delay, deps) {
|
|
13
|
+
const [debouncedEffect, setDebouncedEffect] = (0, _react.useState)(()=>effect);
|
|
14
|
+
(0, _react.useEffect)(()=>{
|
|
15
|
+
const handler = setTimeout(()=>{
|
|
16
|
+
setDebouncedEffect(()=>effect);
|
|
17
|
+
}, delay);
|
|
18
|
+
return ()=>{
|
|
19
|
+
clearTimeout(handler);
|
|
20
|
+
};
|
|
21
|
+
}, [
|
|
22
|
+
...deps,
|
|
23
|
+
delay
|
|
24
|
+
]);
|
|
25
|
+
(0, _react.useEffect)(()=>{
|
|
26
|
+
debouncedEffect();
|
|
27
|
+
}, [
|
|
28
|
+
debouncedEffect
|
|
29
|
+
]);
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ob29rcy91c2VEZWJvdW5jZWRFZmZlY3QudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBEZXBlbmRlbmN5TGlzdCB9IGZyb20gJ3JlYWN0J1xuXG5pbXBvcnQgeyB1c2VFZmZlY3QsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnXG5cbmV4cG9ydCBmdW5jdGlvbiB1c2VEZWJvdW5jZWRFZmZlY3QoZWZmZWN0OiAoKSA9PiB2b2lkLCBkZWxheTogbnVtYmVyLCBkZXBzOiBEZXBlbmRlbmN5TGlzdCk6IHZvaWQge1xuICBjb25zdCBbZGVib3VuY2VkRWZmZWN0LCBzZXREZWJvdW5jZWRFZmZlY3RdID0gdXNlU3RhdGU8KCkgPT4gdm9pZD4oKCkgPT4gZWZmZWN0KVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgY29uc3QgaGFuZGxlciA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgc2V0RGVib3VuY2VkRWZmZWN0KCgpID0+IGVmZmVjdClcbiAgICB9LCBkZWxheSlcblxuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBjbGVhclRpbWVvdXQoaGFuZGxlcilcbiAgICB9XG4gIH0sIFsuLi5kZXBzLCBkZWxheV0pXG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBkZWJvdW5jZWRFZmZlY3QoKVxuICB9LCBbZGVib3VuY2VkRWZmZWN0XSlcbn1cbiJdLCJuYW1lcyI6WyJ1c2VEZWJvdW5jZWRFZmZlY3QiLCJlZmZlY3QiLCJkZWxheSIsImRlcHMiLCJkZWJvdW5jZWRFZmZlY3QiLCJzZXREZWJvdW5jZWRFZmZlY3QiLCJ1c2VTdGF0ZSIsInVzZUVmZmVjdCIsImhhbmRsZXIiLCJzZXRUaW1lb3V0IiwiY2xlYXJUaW1lb3V0Il0sIm1hcHBpbmdzIjoiOzs7OytCQUlnQkE7OztlQUFBQTs7O3VCQUZvQjtBQUU3QixTQUFTQSxtQkFBbUJDLE1BQWtCLEVBQUVDLEtBQWEsRUFBRUMsSUFBb0I7SUFDeEYsTUFBTSxDQUFDQyxpQkFBaUJDLG1CQUFtQixHQUFHQyxJQUFBQSxlQUFRLEVBQWEsSUFBTUw7SUFFekVNLElBQUFBLGdCQUFTLEVBQUM7UUFDUixNQUFNQyxVQUFVQyxXQUFXO1lBQ3pCSixtQkFBbUIsSUFBTUo7UUFDM0IsR0FBR0M7UUFFSCxPQUFPO1lBQ0xRLGFBQWFGO1FBQ2Y7SUFDRixHQUFHO1dBQUlMO1FBQU1EO0tBQU07SUFFbkJLLElBQUFBLGdCQUFTLEVBQUM7UUFDUkg7SUFDRixHQUFHO1FBQUNBO0tBQWdCO0FBQ3RCIn0=
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "useDelay", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return useDelay;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
const _react = /*#__PURE__*/ _interop_require_wildcard(require("react"));
|
|
12
|
+
function _getRequireWildcardCache(nodeInterop) {
|
|
13
|
+
if (typeof WeakMap !== "function") return null;
|
|
14
|
+
var cacheBabelInterop = new WeakMap();
|
|
15
|
+
var cacheNodeInterop = new WeakMap();
|
|
16
|
+
return (_getRequireWildcardCache = function(nodeInterop) {
|
|
17
|
+
return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
|
|
18
|
+
})(nodeInterop);
|
|
19
|
+
}
|
|
20
|
+
function _interop_require_wildcard(obj, nodeInterop) {
|
|
21
|
+
if (!nodeInterop && obj && obj.__esModule) {
|
|
22
|
+
return obj;
|
|
23
|
+
}
|
|
24
|
+
if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
|
|
25
|
+
return {
|
|
26
|
+
default: obj
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
var cache = _getRequireWildcardCache(nodeInterop);
|
|
30
|
+
if (cache && cache.has(obj)) {
|
|
31
|
+
return cache.get(obj);
|
|
32
|
+
}
|
|
33
|
+
var newObj = {
|
|
34
|
+
__proto__: null
|
|
35
|
+
};
|
|
36
|
+
var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
|
|
37
|
+
for(var key in obj){
|
|
38
|
+
if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
|
|
39
|
+
var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
|
|
40
|
+
if (desc && (desc.get || desc.set)) {
|
|
41
|
+
Object.defineProperty(newObj, key, desc);
|
|
42
|
+
} else {
|
|
43
|
+
newObj[key] = obj[key];
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
newObj.default = obj;
|
|
48
|
+
if (cache) {
|
|
49
|
+
cache.set(obj, newObj);
|
|
50
|
+
}
|
|
51
|
+
return newObj;
|
|
52
|
+
}
|
|
53
|
+
const useDelay = (delay, triggerOnMount = false)=>{
|
|
54
|
+
const [hasDelayed, setHasDelayed] = _react.useState(false);
|
|
55
|
+
const triggerTimeoutRef = _react.useRef();
|
|
56
|
+
const triggerDelay = _react.useCallback(()=>{
|
|
57
|
+
setHasDelayed(false);
|
|
58
|
+
clearTimeout(triggerTimeoutRef.current);
|
|
59
|
+
triggerTimeoutRef.current = setTimeout(()=>{
|
|
60
|
+
setHasDelayed(true);
|
|
61
|
+
}, delay);
|
|
62
|
+
return ()=>{
|
|
63
|
+
clearTimeout(triggerTimeoutRef.current);
|
|
64
|
+
};
|
|
65
|
+
}, [
|
|
66
|
+
delay
|
|
67
|
+
]);
|
|
68
|
+
_react.useEffect(()=>{
|
|
69
|
+
if (triggerOnMount) {
|
|
70
|
+
triggerDelay();
|
|
71
|
+
}
|
|
72
|
+
}, [
|
|
73
|
+
triggerDelay,
|
|
74
|
+
triggerOnMount
|
|
75
|
+
]);
|
|
76
|
+
return [
|
|
77
|
+
hasDelayed,
|
|
78
|
+
triggerDelay
|
|
79
|
+
];
|
|
80
|
+
};
|
|
81
|
+
|
|
82
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ob29rcy91c2VEZWxheS50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgUmVhY3QgZnJvbSAncmVhY3QnXG5cbnR5cGUgUmVzdWx0ID0gW2Jvb2xlYW4sICgpID0+IHZvaWRdXG5leHBvcnQgY29uc3QgdXNlRGVsYXkgPSAoZGVsYXk6IG51bWJlciwgdHJpZ2dlck9uTW91bnQgPSBmYWxzZSk6IFJlc3VsdCA9PiB7XG4gIGNvbnN0IFtoYXNEZWxheWVkLCBzZXRIYXNEZWxheWVkXSA9IFJlYWN0LnVzZVN0YXRlKGZhbHNlKVxuICBjb25zdCB0cmlnZ2VyVGltZW91dFJlZiA9IFJlYWN0LnVzZVJlZjxOb2RlSlMuVGltZW91dD4oKVxuXG4gIGNvbnN0IHRyaWdnZXJEZWxheSA9IFJlYWN0LnVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBzZXRIYXNEZWxheWVkKGZhbHNlKVxuICAgIGNsZWFyVGltZW91dCh0cmlnZ2VyVGltZW91dFJlZi5jdXJyZW50KVxuICAgIHRyaWdnZXJUaW1lb3V0UmVmLmN1cnJlbnQgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHNldEhhc0RlbGF5ZWQodHJ1ZSlcbiAgICB9LCBkZWxheSlcblxuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBjbGVhclRpbWVvdXQodHJpZ2dlclRpbWVvdXRSZWYuY3VycmVudClcbiAgICB9XG4gIH0sIFtkZWxheV0pXG5cbiAgUmVhY3QudXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAodHJpZ2dlck9uTW91bnQpIHtcbiAgICAgIHRyaWdnZXJEZWxheSgpXG4gICAgfVxuICB9LCBbdHJpZ2dlckRlbGF5LCB0cmlnZ2VyT25Nb3VudF0pXG5cbiAgcmV0dXJuIFtoYXNEZWxheWVkLCB0cmlnZ2VyRGVsYXldXG59XG4iXSwibmFtZXMiOlsidXNlRGVsYXkiLCJkZWxheSIsInRyaWdnZXJPbk1vdW50IiwiaGFzRGVsYXllZCIsInNldEhhc0RlbGF5ZWQiLCJSZWFjdCIsInVzZVN0YXRlIiwidHJpZ2dlclRpbWVvdXRSZWYiLCJ1c2VSZWYiLCJ0cmlnZ2VyRGVsYXkiLCJ1c2VDYWxsYmFjayIsImNsZWFyVGltZW91dCIsImN1cnJlbnQiLCJzZXRUaW1lb3V0IiwidXNlRWZmZWN0Il0sIm1hcHBpbmdzIjoiOzs7OytCQUdhQTs7O2VBQUFBOzs7K0RBSFU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUdoQixNQUFNQSxXQUFXLENBQUNDLE9BQWVDLGlCQUFpQixLQUFLO0lBQzVELE1BQU0sQ0FBQ0MsWUFBWUMsY0FBYyxHQUFHQyxPQUFNQyxRQUFRLENBQUM7SUFDbkQsTUFBTUMsb0JBQW9CRixPQUFNRyxNQUFNO0lBRXRDLE1BQU1DLGVBQWVKLE9BQU1LLFdBQVcsQ0FBQztRQUNyQ04sY0FBYztRQUNkTyxhQUFhSixrQkFBa0JLLE9BQU87UUFDdENMLGtCQUFrQkssT0FBTyxHQUFHQyxXQUFXO1lBQ3JDVCxjQUFjO1FBQ2hCLEdBQUdIO1FBRUgsT0FBTztZQUNMVSxhQUFhSixrQkFBa0JLLE9BQU87UUFDeEM7SUFDRixHQUFHO1FBQUNYO0tBQU07SUFFVkksT0FBTVMsU0FBUyxDQUFDO1FBQ2QsSUFBSVosZ0JBQWdCO1lBQ2xCTztRQUNGO0lBQ0YsR0FBRztRQUFDQTtRQUFjUDtLQUFlO0lBRWpDLE9BQU87UUFBQ0M7UUFBWU07S0FBYTtBQUNuQyJ9
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "useDelayedRender", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return useDelayedRender;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
const _react = /*#__PURE__*/ _interop_require_wildcard(require("react"));
|
|
12
|
+
const _useDelay = require("./useDelay");
|
|
13
|
+
function _getRequireWildcardCache(nodeInterop) {
|
|
14
|
+
if (typeof WeakMap !== "function") return null;
|
|
15
|
+
var cacheBabelInterop = new WeakMap();
|
|
16
|
+
var cacheNodeInterop = new WeakMap();
|
|
17
|
+
return (_getRequireWildcardCache = function(nodeInterop) {
|
|
18
|
+
return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
|
|
19
|
+
})(nodeInterop);
|
|
20
|
+
}
|
|
21
|
+
function _interop_require_wildcard(obj, nodeInterop) {
|
|
22
|
+
if (!nodeInterop && obj && obj.__esModule) {
|
|
23
|
+
return obj;
|
|
24
|
+
}
|
|
25
|
+
if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
|
|
26
|
+
return {
|
|
27
|
+
default: obj
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
var cache = _getRequireWildcardCache(nodeInterop);
|
|
31
|
+
if (cache && cache.has(obj)) {
|
|
32
|
+
return cache.get(obj);
|
|
33
|
+
}
|
|
34
|
+
var newObj = {
|
|
35
|
+
__proto__: null
|
|
36
|
+
};
|
|
37
|
+
var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
|
|
38
|
+
for(var key in obj){
|
|
39
|
+
if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
|
|
40
|
+
var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
|
|
41
|
+
if (desc && (desc.get || desc.set)) {
|
|
42
|
+
Object.defineProperty(newObj, key, desc);
|
|
43
|
+
} else {
|
|
44
|
+
newObj[key] = obj[key];
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
newObj.default = obj;
|
|
49
|
+
if (cache) {
|
|
50
|
+
cache.set(obj, newObj);
|
|
51
|
+
}
|
|
52
|
+
return newObj;
|
|
53
|
+
}
|
|
54
|
+
const useDelayedRender = ({ delayBeforeShow, inTimeout, minShowTime, outTimeout, show })=>{
|
|
55
|
+
const totalMountTime = inTimeout + minShowTime + outTimeout;
|
|
56
|
+
const [hasDelayed, triggerDelay] = (0, _useDelay.useDelay)(delayBeforeShow);
|
|
57
|
+
const [isMounted, setIsMounted] = _react.useState(false);
|
|
58
|
+
const [isUnmounting, setIsUnmounting] = _react.useState(false);
|
|
59
|
+
const onMountTimestampRef = _react.useRef(0);
|
|
60
|
+
const unmountTimeoutRef = _react.useRef();
|
|
61
|
+
const unmount = _react.useCallback(()=>{
|
|
62
|
+
setIsUnmounting(true);
|
|
63
|
+
unmountTimeoutRef.current = setTimeout(()=>{
|
|
64
|
+
setIsMounted(false);
|
|
65
|
+
setIsUnmounting(false);
|
|
66
|
+
}, outTimeout);
|
|
67
|
+
}, [
|
|
68
|
+
setIsUnmounting,
|
|
69
|
+
outTimeout
|
|
70
|
+
]);
|
|
71
|
+
_react.useEffect(()=>{
|
|
72
|
+
const shouldMount = hasDelayed && !isMounted && show;
|
|
73
|
+
const shouldUnmount = isMounted && !show;
|
|
74
|
+
if (shouldMount) {
|
|
75
|
+
onMountTimestampRef.current = Date.now();
|
|
76
|
+
setIsMounted(true);
|
|
77
|
+
} else if (shouldUnmount) {
|
|
78
|
+
const totalTimeMounted = Date.now() - onMountTimestampRef.current;
|
|
79
|
+
const remainingTime = totalMountTime - totalTimeMounted;
|
|
80
|
+
clearTimeout(unmountTimeoutRef.current);
|
|
81
|
+
unmountTimeoutRef.current = setTimeout(unmount, Math.max(0, remainingTime));
|
|
82
|
+
}
|
|
83
|
+
}, [
|
|
84
|
+
isMounted,
|
|
85
|
+
show,
|
|
86
|
+
unmount,
|
|
87
|
+
totalMountTime,
|
|
88
|
+
hasDelayed
|
|
89
|
+
]);
|
|
90
|
+
return {
|
|
91
|
+
isMounted,
|
|
92
|
+
isUnmounting,
|
|
93
|
+
triggerDelayedRender: triggerDelay
|
|
94
|
+
};
|
|
95
|
+
};
|
|
96
|
+
|
|
97
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ob29rcy91c2VEZWxheWVkUmVuZGVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIFJlYWN0IGZyb20gJ3JlYWN0J1xuXG5pbXBvcnQgeyB1c2VEZWxheSB9IGZyb20gJy4vdXNlRGVsYXknXG5cbnR5cGUgRGVsYXllZFJlbmRlclByb3BzID0ge1xuICAvKiogVGltZSBpbiBtcyB0byB3YWl0IGJlZm9yZSBcIm1vdW50aW5nXCIgdGhlIGNvbXBvbmVudC4gKi9cbiAgZGVsYXlCZWZvcmVTaG93OiBudW1iZXJcbiAgLyoqIFRpbWUgaW4gbXMgZm9yIHRoZSBcImVudGVyXCIgcGhhc2Ugb2YgdGhlIHRyYW5zaXRpb24sIGFmdGVyIGRlbGF5IGNvbXBsZXRlcy4gKi9cbiAgaW5UaW1lb3V0OiBudW1iZXJcbiAgLyoqIE1pbiB0aW1lIGluIG1zIGZvciB0aGUgXCJlbnRlcmVkXCIgcGhhc2Ugb2YgdGhlIHRyYW5zaXRpb24uICovXG4gIG1pblNob3dUaW1lOiBudW1iZXJcbiAgLyoqIFRpbWUgaW4gbXMgZm9yIHRoZSBleGl0IHBoYXNlIG9mIHRoZSB0cmFuc2l0aW9uLiAqL1xuICBvdXRUaW1lb3V0OiBudW1iZXJcbiAgLyoqIGB0cnVlYCBzdGFydHMgdGhlIG1vdW50IHByb2Nlc3MuXG4gICAqIGBmYWxzZWAgc3RhcnRzIHRoZSB1bm1vdW50IHByb2Nlc3MuXG4gICAqICovXG4gIHNob3c6IGJvb2xlYW5cbn1cbnR5cGUgdXNlRGVsYXllZFJlbmRlclQgPSAocHJvcHM6IERlbGF5ZWRSZW5kZXJQcm9wcykgPT4ge1xuICAvKiogYHRydWVgIGlmIHRoZSBjb21wb25lbnQgaGFzIG1vdW50ZWQgYWZ0ZXIgdGhlIHRpbWVvdXQuICovXG4gIGlzTW91bnRlZDogYm9vbGVhblxuICAvKiogYHRydWVgIGlmIHRoZSBjb21wb25lbnQgaXMgdW5tb3VudGluZy4gKi9cbiAgaXNVbm1vdW50aW5nOiBib29sZWFuXG4gIC8qKiBDYWxsIHRoaXMgZnVuY3Rpb24gdG8gdHJpZ2dlciB0aGUgdGltZW91dCBkZWxheSBiZWZvcmUgcmVuZGVyaW5nLiAqL1xuICB0cmlnZ2VyRGVsYXllZFJlbmRlcjogKCkgPT4gdm9pZFxufVxuZXhwb3J0IGNvbnN0IHVzZURlbGF5ZWRSZW5kZXI6IHVzZURlbGF5ZWRSZW5kZXJUID0gKHtcbiAgZGVsYXlCZWZvcmVTaG93LFxuICBpblRpbWVvdXQsXG4gIG1pblNob3dUaW1lLFxuICBvdXRUaW1lb3V0LFxuICBzaG93LFxufSkgPT4ge1xuICBjb25zdCB0b3RhbE1vdW50VGltZSA9IGluVGltZW91dCArIG1pblNob3dUaW1lICsgb3V0VGltZW91dFxuICBjb25zdCBbaGFzRGVsYXllZCwgdHJpZ2dlckRlbGF5XSA9IHVzZURlbGF5KGRlbGF5QmVmb3JlU2hvdylcbiAgY29uc3QgW2lzTW91bnRlZCwgc2V0SXNNb3VudGVkXSA9IFJlYWN0LnVzZVN0YXRlKGZhbHNlKVxuICBjb25zdCBbaXNVbm1vdW50aW5nLCBzZXRJc1VubW91bnRpbmddID0gUmVhY3QudXNlU3RhdGUoZmFsc2UpXG4gIGNvbnN0IG9uTW91bnRUaW1lc3RhbXBSZWYgPSBSZWFjdC51c2VSZWYoMClcbiAgY29uc3QgdW5tb3VudFRpbWVvdXRSZWY6IFJlYWN0Lk11dGFibGVSZWZPYmplY3Q8Tm9kZUpTLlRpbWVvdXQgfCB1bmRlZmluZWQ+ID0gUmVhY3QudXNlUmVmKClcblxuICBjb25zdCB1bm1vdW50ID0gUmVhY3QudXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIHNldElzVW5tb3VudGluZyh0cnVlKVxuICAgIHVubW91bnRUaW1lb3V0UmVmLmN1cnJlbnQgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHNldElzTW91bnRlZChmYWxzZSlcbiAgICAgIHNldElzVW5tb3VudGluZyhmYWxzZSlcbiAgICB9LCBvdXRUaW1lb3V0KVxuICB9LCBbc2V0SXNVbm1vdW50aW5nLCBvdXRUaW1lb3V0XSlcblxuICBSZWFjdC51c2VFZmZlY3QoKCkgPT4ge1xuICAgIGNvbnN0IHNob3VsZE1vdW50ID0gaGFzRGVsYXllZCAmJiAhaXNNb3VudGVkICYmIHNob3dcbiAgICBjb25zdCBzaG91bGRVbm1vdW50ID0gaXNNb3VudGVkICYmICFzaG93XG5cbiAgICBpZiAoc2hvdWxkTW91bnQpIHtcbiAgICAgIG9uTW91bnRUaW1lc3RhbXBSZWYuY3VycmVudCA9IERhdGUubm93KClcbiAgICAgIHNldElzTW91bnRlZCh0cnVlKVxuICAgIH0gZWxzZSBpZiAoc2hvdWxkVW5tb3VudCkge1xuICAgICAgY29uc3QgdG90YWxUaW1lTW91bnRlZCA9IERhdGUubm93KCkgLSBvbk1vdW50VGltZXN0YW1wUmVmLmN1cnJlbnRcbiAgICAgIGNvbnN0IHJlbWFpbmluZ1RpbWUgPSB0b3RhbE1vdW50VGltZSAtIHRvdGFsVGltZU1vdW50ZWRcbiAgICAgIGNsZWFyVGltZW91dCh1bm1vdW50VGltZW91dFJlZi5jdXJyZW50KVxuICAgICAgdW5tb3VudFRpbWVvdXRSZWYuY3VycmVudCA9IHNldFRpbWVvdXQodW5tb3VudCwgTWF0aC5tYXgoMCwgcmVtYWluaW5nVGltZSkpXG4gICAgfVxuICB9LCBbaXNNb3VudGVkLCBzaG93LCB1bm1vdW50LCB0b3RhbE1vdW50VGltZSwgaGFzRGVsYXllZF0pXG5cbiAgcmV0dXJuIHtcbiAgICBpc01vdW50ZWQsXG4gICAgaXNVbm1vdW50aW5nLFxuICAgIHRyaWdnZXJEZWxheWVkUmVuZGVyOiB0cmlnZ2VyRGVsYXksXG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJ1c2VEZWxheWVkUmVuZGVyIiwiZGVsYXlCZWZvcmVTaG93IiwiaW5UaW1lb3V0IiwibWluU2hvd1RpbWUiLCJvdXRUaW1lb3V0Iiwic2hvdyIsInRvdGFsTW91bnRUaW1lIiwiaGFzRGVsYXllZCIsInRyaWdnZXJEZWxheSIsInVzZURlbGF5IiwiaXNNb3VudGVkIiwic2V0SXNNb3VudGVkIiwiUmVhY3QiLCJ1c2VTdGF0ZSIsImlzVW5tb3VudGluZyIsInNldElzVW5tb3VudGluZyIsIm9uTW91bnRUaW1lc3RhbXBSZWYiLCJ1c2VSZWYiLCJ1bm1vdW50VGltZW91dFJlZiIsInVubW91bnQiLCJ1c2VDYWxsYmFjayIsImN1cnJlbnQiLCJzZXRUaW1lb3V0IiwidXNlRWZmZWN0Iiwic2hvdWxkTW91bnQiLCJzaG91bGRVbm1vdW50IiwiRGF0ZSIsIm5vdyIsInRvdGFsVGltZU1vdW50ZWQiLCJyZW1haW5pbmdUaW1lIiwiY2xlYXJUaW1lb3V0IiwiTWF0aCIsIm1heCIsInRyaWdnZXJEZWxheWVkUmVuZGVyIl0sIm1hcHBpbmdzIjoiOzs7OytCQTBCYUE7OztlQUFBQTs7OytEQTFCVTswQkFFRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBd0JsQixNQUFNQSxtQkFBc0MsQ0FBQyxFQUNsREMsZUFBZSxFQUNmQyxTQUFTLEVBQ1RDLFdBQVcsRUFDWEMsVUFBVSxFQUNWQyxJQUFJLEVBQ0w7SUFDQyxNQUFNQyxpQkFBaUJKLFlBQVlDLGNBQWNDO0lBQ2pELE1BQU0sQ0FBQ0csWUFBWUMsYUFBYSxHQUFHQyxJQUFBQSxrQkFBUSxFQUFDUjtJQUM1QyxNQUFNLENBQUNTLFdBQVdDLGFBQWEsR0FBR0MsT0FBTUMsUUFBUSxDQUFDO0lBQ2pELE1BQU0sQ0FBQ0MsY0FBY0MsZ0JBQWdCLEdBQUdILE9BQU1DLFFBQVEsQ0FBQztJQUN2RCxNQUFNRyxzQkFBc0JKLE9BQU1LLE1BQU0sQ0FBQztJQUN6QyxNQUFNQyxvQkFBd0VOLE9BQU1LLE1BQU07SUFFMUYsTUFBTUUsVUFBVVAsT0FBTVEsV0FBVyxDQUFDO1FBQ2hDTCxnQkFBZ0I7UUFDaEJHLGtCQUFrQkcsT0FBTyxHQUFHQyxXQUFXO1lBQ3JDWCxhQUFhO1lBQ2JJLGdCQUFnQjtRQUNsQixHQUFHWDtJQUNMLEdBQUc7UUFBQ1c7UUFBaUJYO0tBQVc7SUFFaENRLE9BQU1XLFNBQVMsQ0FBQztRQUNkLE1BQU1DLGNBQWNqQixjQUFjLENBQUNHLGFBQWFMO1FBQ2hELE1BQU1vQixnQkFBZ0JmLGFBQWEsQ0FBQ0w7UUFFcEMsSUFBSW1CLGFBQWE7WUFDZlIsb0JBQW9CSyxPQUFPLEdBQUdLLEtBQUtDLEdBQUc7WUFDdENoQixhQUFhO1FBQ2YsT0FBTyxJQUFJYyxlQUFlO1lBQ3hCLE1BQU1HLG1CQUFtQkYsS0FBS0MsR0FBRyxLQUFLWCxvQkFBb0JLLE9BQU87WUFDakUsTUFBTVEsZ0JBQWdCdkIsaUJBQWlCc0I7WUFDdkNFLGFBQWFaLGtCQUFrQkcsT0FBTztZQUN0Q0gsa0JBQWtCRyxPQUFPLEdBQUdDLFdBQVdILFNBQVNZLEtBQUtDLEdBQUcsQ0FBQyxHQUFHSDtRQUM5RDtJQUNGLEdBQUc7UUFBQ25CO1FBQVdMO1FBQU1jO1FBQVNiO1FBQWdCQztLQUFXO0lBRXpELE9BQU87UUFDTEc7UUFDQUk7UUFDQW1CLHNCQUFzQnpCO0lBQ3hCO0FBQ0YifQ==
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
"use strict";
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "default", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function() {
|
|
9
|
+
return _default;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
const _modal = require("@faceless-ui/modal");
|
|
13
|
+
const _utilities = require("payload/utilities");
|
|
14
|
+
const _react = require("react");
|
|
15
|
+
// Required to be outside of hook, else debounce would be necessary
|
|
16
|
+
// and then one could not prevent the default behaviour.
|
|
17
|
+
// It maps the pressed keys with the time they were pressed, in order to implement a maximum time
|
|
18
|
+
// for the user to press the next key in the sequence
|
|
19
|
+
// This is necessary to prevent a bug where the keyup event, which unsets the key as pressed
|
|
20
|
+
// is not fired when the window is not focused.
|
|
21
|
+
// When the user then comes back to the window, the key is still registered as pressed, even though it's not.
|
|
22
|
+
const pressedKeys = new Map([]);
|
|
23
|
+
const map = {
|
|
24
|
+
altleft: 'alt',
|
|
25
|
+
altright: 'alt',
|
|
26
|
+
controlleft: 'ctrl',
|
|
27
|
+
controlright: 'ctrl',
|
|
28
|
+
ctrlleft: 'ctrl',
|
|
29
|
+
ctrlright: 'ctrl',
|
|
30
|
+
escape: 'esc',
|
|
31
|
+
metaleft: 'meta',
|
|
32
|
+
metaright: 'meta',
|
|
33
|
+
osleft: 'meta',
|
|
34
|
+
osright: 'meta',
|
|
35
|
+
shiftleft: 'shift',
|
|
36
|
+
shiftright: 'shift'
|
|
37
|
+
};
|
|
38
|
+
const stripKey = (key)=>{
|
|
39
|
+
return (map[key.toLowerCase()] || key).trim().toLowerCase().replace('key', '');
|
|
40
|
+
};
|
|
41
|
+
const pushToKeys = (code)=>{
|
|
42
|
+
const key = stripKey(code);
|
|
43
|
+
// There is a weird bug with macos that if the keys are not cleared they remain in the
|
|
44
|
+
// pressed keys set.
|
|
45
|
+
if (key === 'meta') {
|
|
46
|
+
pressedKeys.forEach((time, pressedKey)=>pressedKey !== 'meta' && pressedKeys.delete(pressedKey));
|
|
47
|
+
}
|
|
48
|
+
pressedKeys.set(key, Date.now());
|
|
49
|
+
};
|
|
50
|
+
const removeFromKeys = (code)=>{
|
|
51
|
+
const key = stripKey(code);
|
|
52
|
+
// There is a weird bug with macos that if the keys are not cleared they remain in the
|
|
53
|
+
// pressed keys set.
|
|
54
|
+
if (key === 'meta') {
|
|
55
|
+
pressedKeys.clear();
|
|
56
|
+
}
|
|
57
|
+
pressedKeys.delete(key);
|
|
58
|
+
};
|
|
59
|
+
/**
|
|
60
|
+
* Hook function to work with hotkeys.
|
|
61
|
+
* @param param0.keyCode {string[]} The keys to listen for (`Event.code` without `'Key'` and lowercased)
|
|
62
|
+
* @param param0.cmdCtrlKey {boolean} Whether Ctrl on windows or Cmd on mac must be pressed
|
|
63
|
+
* @param param0.editDepth {boolean} This ensures that the hotkey is only triggered for the most top-level drawer in case there are nested drawers
|
|
64
|
+
* @param func The callback function
|
|
65
|
+
*/ const useHotkey = (options, func)=>{
|
|
66
|
+
const { cmdCtrlKey, editDepth, keyCodes } = options;
|
|
67
|
+
const { modalState } = (0, _modal.useModal)();
|
|
68
|
+
const keydown = (0, _react.useCallback)((event)=>{
|
|
69
|
+
const e = event.detail?.key ? event.detail : event;
|
|
70
|
+
if (e.key === undefined) {
|
|
71
|
+
// Autofill events, or other synthetic events, can be ignored
|
|
72
|
+
return;
|
|
73
|
+
}
|
|
74
|
+
// Filter out pressed keys which have been pressed > 3 seconds ago
|
|
75
|
+
pressedKeys.forEach((time, key)=>{
|
|
76
|
+
if (Date.now() - time > 3000) {
|
|
77
|
+
pressedKeys.delete(key);
|
|
78
|
+
}
|
|
79
|
+
});
|
|
80
|
+
if (e.code) pushToKeys(e.code);
|
|
81
|
+
// Check for Mac and iPad
|
|
82
|
+
const hasCmd = window.navigator.userAgent.includes('Mac OS X');
|
|
83
|
+
const pressedWithoutModifier = [
|
|
84
|
+
...pressedKeys.keys()
|
|
85
|
+
].filter((key)=>![
|
|
86
|
+
'alt',
|
|
87
|
+
'ctrl',
|
|
88
|
+
'meta',
|
|
89
|
+
'shift'
|
|
90
|
+
].includes(key));
|
|
91
|
+
// Check whether arrays contain the same values (regardless of number of occurrences)
|
|
92
|
+
if ((0, _utilities.setsAreEqual)(new Set(pressedWithoutModifier), new Set(keyCodes)) && (!cmdCtrlKey || hasCmd && pressedKeys.has('meta') || !hasCmd && e.ctrlKey)) {
|
|
93
|
+
// get the maximum edit depth by counting the number of open drawers. modalState is and object which contains the state of all drawers.
|
|
94
|
+
const maxEditDepth = (Object.keys(modalState).filter((key)=>modalState[key]?.isOpen)?.length + 1) ?? 1;
|
|
95
|
+
if (maxEditDepth !== editDepth) {
|
|
96
|
+
// We only want to execute the hotkey from the most top-level drawer / edit depth.
|
|
97
|
+
return;
|
|
98
|
+
}
|
|
99
|
+
// execute the function associated with the maximum edit depth
|
|
100
|
+
func(e);
|
|
101
|
+
}
|
|
102
|
+
}, [
|
|
103
|
+
keyCodes,
|
|
104
|
+
cmdCtrlKey,
|
|
105
|
+
editDepth,
|
|
106
|
+
modalState,
|
|
107
|
+
func
|
|
108
|
+
]);
|
|
109
|
+
const keyup = (0, _react.useCallback)((e)=>{
|
|
110
|
+
if (e.code) removeFromKeys(e.code);
|
|
111
|
+
}, []);
|
|
112
|
+
(0, _react.useEffect)(()=>{
|
|
113
|
+
document.addEventListener('keydown', keydown, false);
|
|
114
|
+
document.addEventListener('bypassKeyDown', keydown, false) // this is called if the keydown event's propagation is stopped by react-select
|
|
115
|
+
;
|
|
116
|
+
document.addEventListener('keyup', keyup, false);
|
|
117
|
+
return ()=>{
|
|
118
|
+
document.removeEventListener('keydown', keydown);
|
|
119
|
+
document.removeEventListener('bypassKeyDown', keydown);
|
|
120
|
+
document.removeEventListener('keyup', keyup);
|
|
121
|
+
};
|
|
122
|
+
}, [
|
|
123
|
+
keydown,
|
|
124
|
+
keyup
|
|
125
|
+
]);
|
|
126
|
+
};
|
|
127
|
+
const _default = useHotkey;
|
|
128
|
+
|
|
129
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ob29rcy91c2VIb3RrZXkudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIid1c2UgY2xpZW50J1xuLyogZXNsaW50LWRpc2FibGUgbm8tc2hhZG93ICovXG5pbXBvcnQgeyB1c2VNb2RhbCB9IGZyb20gJ0BmYWNlbGVzcy11aS9tb2RhbCdcbmltcG9ydCB7IHNldHNBcmVFcXVhbCB9IGZyb20gJ3BheWxvYWQvdXRpbGl0aWVzJ1xuaW1wb3J0IHsgdXNlQ2FsbGJhY2ssIHVzZUVmZmVjdCB9IGZyb20gJ3JlYWN0J1xuXG4vLyBSZXF1aXJlZCB0byBiZSBvdXRzaWRlIG9mIGhvb2ssIGVsc2UgZGVib3VuY2Ugd291bGQgYmUgbmVjZXNzYXJ5XG4vLyBhbmQgdGhlbiBvbmUgY291bGQgbm90IHByZXZlbnQgdGhlIGRlZmF1bHQgYmVoYXZpb3VyLlxuXG4vLyBJdCBtYXBzIHRoZSBwcmVzc2VkIGtleXMgd2l0aCB0aGUgdGltZSB0aGV5IHdlcmUgcHJlc3NlZCwgaW4gb3JkZXIgdG8gaW1wbGVtZW50IGEgbWF4aW11bSB0aW1lXG4vLyBmb3IgdGhlIHVzZXIgdG8gcHJlc3MgdGhlIG5leHQga2V5IGluIHRoZSBzZXF1ZW5jZVxuXG4vLyBUaGlzIGlzIG5lY2Vzc2FyeSB0byBwcmV2ZW50IGEgYnVnIHdoZXJlIHRoZSBrZXl1cCBldmVudCwgd2hpY2ggdW5zZXRzIHRoZSBrZXkgYXMgcHJlc3NlZFxuLy8gaXMgbm90IGZpcmVkIHdoZW4gdGhlIHdpbmRvdyBpcyBub3QgZm9jdXNlZC5cbi8vIFdoZW4gdGhlIHVzZXIgdGhlbiBjb21lcyBiYWNrIHRvIHRoZSB3aW5kb3csIHRoZSBrZXkgaXMgc3RpbGwgcmVnaXN0ZXJlZCBhcyBwcmVzc2VkLCBldmVuIHRob3VnaCBpdCdzIG5vdC5cbmNvbnN0IHByZXNzZWRLZXlzID0gbmV3IE1hcDxzdHJpbmcsIG51bWJlcj4oW10pXG5cbmNvbnN0IG1hcCA9IHtcbiAgYWx0bGVmdDogJ2FsdCcsXG4gIGFsdHJpZ2h0OiAnYWx0JyxcbiAgY29udHJvbGxlZnQ6ICdjdHJsJyxcbiAgY29udHJvbHJpZ2h0OiAnY3RybCcsXG4gIGN0cmxsZWZ0OiAnY3RybCcsXG4gIGN0cmxyaWdodDogJ2N0cmwnLFxuICBlc2NhcGU6ICdlc2MnLFxuICBtZXRhbGVmdDogJ21ldGEnLFxuICBtZXRhcmlnaHQ6ICdtZXRhJyxcbiAgb3NsZWZ0OiAnbWV0YScsXG4gIG9zcmlnaHQ6ICdtZXRhJyxcbiAgc2hpZnRsZWZ0OiAnc2hpZnQnLFxuICBzaGlmdHJpZ2h0OiAnc2hpZnQnLFxufVxuXG5jb25zdCBzdHJpcEtleSA9IChrZXk6IHN0cmluZykgPT4ge1xuICByZXR1cm4gKG1hcFtrZXkudG9Mb3dlckNhc2UoKV0gfHwga2V5KS50cmltKCkudG9Mb3dlckNhc2UoKS5yZXBsYWNlKCdrZXknLCAnJylcbn1cblxuY29uc3QgcHVzaFRvS2V5cyA9IChjb2RlOiBzdHJpbmcpID0+IHtcbiAgY29uc3Qga2V5ID0gc3RyaXBLZXkoY29kZSlcblxuICAvLyBUaGVyZSBpcyBhIHdlaXJkIGJ1ZyB3aXRoIG1hY29zIHRoYXQgaWYgdGhlIGtleXMgYXJlIG5vdCBjbGVhcmVkIHRoZXkgcmVtYWluIGluIHRoZVxuICAvLyBwcmVzc2VkIGtleXMgc2V0LlxuICBpZiAoa2V5ID09PSAnbWV0YScpIHtcbiAgICBwcmVzc2VkS2V5cy5mb3JFYWNoKFxuICAgICAgKHRpbWUsIHByZXNzZWRLZXkpID0+IHByZXNzZWRLZXkgIT09ICdtZXRhJyAmJiBwcmVzc2VkS2V5cy5kZWxldGUocHJlc3NlZEtleSksXG4gICAgKVxuICB9XG5cbiAgcHJlc3NlZEtleXMuc2V0KGtleSwgRGF0ZS5ub3coKSlcbn1cblxuY29uc3QgcmVtb3ZlRnJvbUtleXMgPSAoY29kZTogc3RyaW5nKSA9PiB7XG4gIGNvbnN0IGtleSA9IHN0cmlwS2V5KGNvZGUpXG4gIC8vIFRoZXJlIGlzIGEgd2VpcmQgYnVnIHdpdGggbWFjb3MgdGhhdCBpZiB0aGUga2V5cyBhcmUgbm90IGNsZWFyZWQgdGhleSByZW1haW4gaW4gdGhlXG4gIC8vIHByZXNzZWQga2V5cyBzZXQuXG4gIGlmIChrZXkgPT09ICdtZXRhJykge1xuICAgIHByZXNzZWRLZXlzLmNsZWFyKClcbiAgfVxuICBwcmVzc2VkS2V5cy5kZWxldGUoa2V5KVxufVxuXG4vKipcbiAqIEhvb2sgZnVuY3Rpb24gdG8gd29yayB3aXRoIGhvdGtleXMuXG4gKiBAcGFyYW0gcGFyYW0wLmtleUNvZGUge3N0cmluZ1tdfSBUaGUga2V5cyB0byBsaXN0ZW4gZm9yIChgRXZlbnQuY29kZWAgd2l0aG91dCBgJ0tleSdgIGFuZCBsb3dlcmNhc2VkKVxuICogQHBhcmFtIHBhcmFtMC5jbWRDdHJsS2V5IHtib29sZWFufSBXaGV0aGVyIEN0cmwgb24gd2luZG93cyBvciBDbWQgb24gbWFjIG11c3QgYmUgcHJlc3NlZFxuICogQHBhcmFtIHBhcmFtMC5lZGl0RGVwdGgge2Jvb2xlYW59IFRoaXMgZW5zdXJlcyB0aGF0IHRoZSBob3RrZXkgaXMgb25seSB0cmlnZ2VyZWQgZm9yIHRoZSBtb3N0IHRvcC1sZXZlbCBkcmF3ZXIgaW4gY2FzZSB0aGVyZSBhcmUgbmVzdGVkIGRyYXdlcnNcbiAqIEBwYXJhbSBmdW5jIFRoZSBjYWxsYmFjayBmdW5jdGlvblxuICovXG5jb25zdCB1c2VIb3RrZXkgPSAoXG4gIG9wdGlvbnM6IHtcbiAgICBjbWRDdHJsS2V5OiBib29sZWFuXG4gICAgZWRpdERlcHRoOiBudW1iZXJcbiAgICBrZXlDb2Rlczogc3RyaW5nW11cbiAgfSxcbiAgZnVuYzogKGU6IEtleWJvYXJkRXZlbnQpID0+IHZvaWQsXG4pOiB2b2lkID0+IHtcbiAgY29uc3QgeyBjbWRDdHJsS2V5LCBlZGl0RGVwdGgsIGtleUNvZGVzIH0gPSBvcHRpb25zXG5cbiAgY29uc3QgeyBtb2RhbFN0YXRlIH0gPSB1c2VNb2RhbCgpXG5cbiAgY29uc3Qga2V5ZG93biA9IHVzZUNhbGxiYWNrKFxuICAgIChldmVudDogQ3VzdG9tRXZlbnQgfCBLZXlib2FyZEV2ZW50KSA9PiB7XG4gICAgICBjb25zdCBlOiBLZXlib2FyZEV2ZW50ID0gZXZlbnQuZGV0YWlsPy5rZXkgPyBldmVudC5kZXRhaWwgOiBldmVudFxuICAgICAgaWYgKGUua2V5ID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgLy8gQXV0b2ZpbGwgZXZlbnRzLCBvciBvdGhlciBzeW50aGV0aWMgZXZlbnRzLCBjYW4gYmUgaWdub3JlZFxuICAgICAgICByZXR1cm5cbiAgICAgIH1cblxuICAgICAgLy8gRmlsdGVyIG91dCBwcmVzc2VkIGtleXMgd2hpY2ggaGF2ZSBiZWVuIHByZXNzZWQgPiAzIHNlY29uZHMgYWdvXG4gICAgICBwcmVzc2VkS2V5cy5mb3JFYWNoKCh0aW1lLCBrZXkpID0+IHtcbiAgICAgICAgaWYgKERhdGUubm93KCkgLSB0aW1lID4gMzAwMCkge1xuICAgICAgICAgIHByZXNzZWRLZXlzLmRlbGV0ZShrZXkpXG4gICAgICAgIH1cbiAgICAgIH0pXG5cbiAgICAgIGlmIChlLmNvZGUpIHB1c2hUb0tleXMoZS5jb2RlKVxuXG4gICAgICAvLyBDaGVjayBmb3IgTWFjIGFuZCBpUGFkXG4gICAgICBjb25zdCBoYXNDbWQgPSB3aW5kb3cubmF2aWdhdG9yLnVzZXJBZ2VudC5pbmNsdWRlcygnTWFjIE9TIFgnKVxuICAgICAgY29uc3QgcHJlc3NlZFdpdGhvdXRNb2RpZmllciA9IFsuLi5wcmVzc2VkS2V5cy5rZXlzKCldLmZpbHRlcihcbiAgICAgICAgKGtleSkgPT4gIVsnYWx0JywgJ2N0cmwnLCAnbWV0YScsICdzaGlmdCddLmluY2x1ZGVzKGtleSksXG4gICAgICApXG5cbiAgICAgIC8vIENoZWNrIHdoZXRoZXIgYXJyYXlzIGNvbnRhaW4gdGhlIHNhbWUgdmFsdWVzIChyZWdhcmRsZXNzIG9mIG51bWJlciBvZiBvY2N1cnJlbmNlcylcbiAgICAgIGlmIChcbiAgICAgICAgc2V0c0FyZUVxdWFsKG5ldyBTZXQocHJlc3NlZFdpdGhvdXRNb2RpZmllciksIG5ldyBTZXQoa2V5Q29kZXMpKSAmJlxuICAgICAgICAoIWNtZEN0cmxLZXkgfHwgKGhhc0NtZCAmJiBwcmVzc2VkS2V5cy5oYXMoJ21ldGEnKSkgfHwgKCFoYXNDbWQgJiYgZS5jdHJsS2V5KSlcbiAgICAgICkge1xuICAgICAgICAvLyBnZXQgdGhlIG1heGltdW0gZWRpdCBkZXB0aCBieSBjb3VudGluZyB0aGUgbnVtYmVyIG9mIG9wZW4gZHJhd2Vycy4gbW9kYWxTdGF0ZSBpcyBhbmQgb2JqZWN0IHdoaWNoIGNvbnRhaW5zIHRoZSBzdGF0ZSBvZiBhbGwgZHJhd2Vycy5cbiAgICAgICAgY29uc3QgbWF4RWRpdERlcHRoID1cbiAgICAgICAgICBPYmplY3Qua2V5cyhtb2RhbFN0YXRlKS5maWx0ZXIoKGtleSkgPT4gbW9kYWxTdGF0ZVtrZXldPy5pc09wZW4pPy5sZW5ndGggKyAxID8/IDFcblxuICAgICAgICBpZiAobWF4RWRpdERlcHRoICE9PSBlZGl0RGVwdGgpIHtcbiAgICAgICAgICAvLyBXZSBvbmx5IHdhbnQgdG8gZXhlY3V0ZSB0aGUgaG90a2V5IGZyb20gdGhlIG1vc3QgdG9wLWxldmVsIGRyYXdlciAvIGVkaXQgZGVwdGguXG4gICAgICAgICAgcmV0dXJuXG4gICAgICAgIH1cbiAgICAgICAgLy8gZXhlY3V0ZSB0aGUgZnVuY3Rpb24gYXNzb2NpYXRlZCB3aXRoIHRoZSBtYXhpbXVtIGVkaXQgZGVwdGhcbiAgICAgICAgZnVuYyhlKVxuICAgICAgfVxuICAgIH0sXG4gICAgW2tleUNvZGVzLCBjbWRDdHJsS2V5LCBlZGl0RGVwdGgsIG1vZGFsU3RhdGUsIGZ1bmNdLFxuICApXG5cbiAgY29uc3Qga2V5dXAgPSB1c2VDYWxsYmFjaygoZTogS2V5Ym9hcmRFdmVudCkgPT4ge1xuICAgIGlmIChlLmNvZGUpIHJlbW92ZUZyb21LZXlzKGUuY29kZSlcbiAgfSwgW10pXG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdrZXlkb3duJywga2V5ZG93biwgZmFsc2UpXG4gICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignYnlwYXNzS2V5RG93bicsIGtleWRvd24sIGZhbHNlKSAvLyB0aGlzIGlzIGNhbGxlZCBpZiB0aGUga2V5ZG93biBldmVudCdzIHByb3BhZ2F0aW9uIGlzIHN0b3BwZWQgYnkgcmVhY3Qtc2VsZWN0XG4gICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigna2V5dXAnLCBrZXl1cCwgZmFsc2UpXG5cbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIGtleWRvd24pXG4gICAgICBkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdieXBhc3NLZXlEb3duJywga2V5ZG93bilcbiAgICAgIGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2tleXVwJywga2V5dXApXG4gICAgfVxuICB9LCBba2V5ZG93biwga2V5dXBdKVxufVxuXG5leHBvcnQgZGVmYXVsdCB1c2VIb3RrZXlcbiJdLCJuYW1lcyI6WyJwcmVzc2VkS2V5cyIsIk1hcCIsIm1hcCIsImFsdGxlZnQiLCJhbHRyaWdodCIsImNvbnRyb2xsZWZ0IiwiY29udHJvbHJpZ2h0IiwiY3RybGxlZnQiLCJjdHJscmlnaHQiLCJlc2NhcGUiLCJtZXRhbGVmdCIsIm1ldGFyaWdodCIsIm9zbGVmdCIsIm9zcmlnaHQiLCJzaGlmdGxlZnQiLCJzaGlmdHJpZ2h0Iiwic3RyaXBLZXkiLCJrZXkiLCJ0b0xvd2VyQ2FzZSIsInRyaW0iLCJyZXBsYWNlIiwicHVzaFRvS2V5cyIsImNvZGUiLCJmb3JFYWNoIiwidGltZSIsInByZXNzZWRLZXkiLCJkZWxldGUiLCJzZXQiLCJEYXRlIiwibm93IiwicmVtb3ZlRnJvbUtleXMiLCJjbGVhciIsInVzZUhvdGtleSIsIm9wdGlvbnMiLCJmdW5jIiwiY21kQ3RybEtleSIsImVkaXREZXB0aCIsImtleUNvZGVzIiwibW9kYWxTdGF0ZSIsInVzZU1vZGFsIiwia2V5ZG93biIsInVzZUNhbGxiYWNrIiwiZXZlbnQiLCJlIiwiZGV0YWlsIiwidW5kZWZpbmVkIiwiaGFzQ21kIiwid2luZG93IiwibmF2aWdhdG9yIiwidXNlckFnZW50IiwiaW5jbHVkZXMiLCJwcmVzc2VkV2l0aG91dE1vZGlmaWVyIiwia2V5cyIsImZpbHRlciIsInNldHNBcmVFcXVhbCIsIlNldCIsImhhcyIsImN0cmxLZXkiLCJtYXhFZGl0RGVwdGgiLCJPYmplY3QiLCJpc09wZW4iLCJsZW5ndGgiLCJrZXl1cCIsInVzZUVmZmVjdCIsImRvY3VtZW50IiwiYWRkRXZlbnRMaXN0ZW5lciIsInJlbW92ZUV2ZW50TGlzdGVuZXIiXSwibWFwcGluZ3MiOiJBQUFBOzs7OzsrQkE0SUE7OztlQUFBOzs7dUJBMUl5QjsyQkFDSTt1QkFDVTtBQUV2QyxtRUFBbUU7QUFDbkUsd0RBQXdEO0FBRXhELGlHQUFpRztBQUNqRyxxREFBcUQ7QUFFckQsNEZBQTRGO0FBQzVGLCtDQUErQztBQUMvQyw2R0FBNkc7QUFDN0csTUFBTUEsY0FBYyxJQUFJQyxJQUFvQixFQUFFO0FBRTlDLE1BQU1DLE1BQU07SUFDVkMsU0FBUztJQUNUQyxVQUFVO0lBQ1ZDLGFBQWE7SUFDYkMsY0FBYztJQUNkQyxVQUFVO0lBQ1ZDLFdBQVc7SUFDWEMsUUFBUTtJQUNSQyxVQUFVO0lBQ1ZDLFdBQVc7SUFDWEMsUUFBUTtJQUNSQyxTQUFTO0lBQ1RDLFdBQVc7SUFDWEMsWUFBWTtBQUNkO0FBRUEsTUFBTUMsV0FBVyxDQUFDQztJQUNoQixPQUFPLEFBQUNmLENBQUFBLEdBQUcsQ0FBQ2UsSUFBSUMsV0FBVyxHQUFHLElBQUlELEdBQUUsRUFBR0UsSUFBSSxHQUFHRCxXQUFXLEdBQUdFLE9BQU8sQ0FBQyxPQUFPO0FBQzdFO0FBRUEsTUFBTUMsYUFBYSxDQUFDQztJQUNsQixNQUFNTCxNQUFNRCxTQUFTTTtJQUVyQixzRkFBc0Y7SUFDdEYsb0JBQW9CO0lBQ3BCLElBQUlMLFFBQVEsUUFBUTtRQUNsQmpCLFlBQVl1QixPQUFPLENBQ2pCLENBQUNDLE1BQU1DLGFBQWVBLGVBQWUsVUFBVXpCLFlBQVkwQixNQUFNLENBQUNEO0lBRXRFO0lBRUF6QixZQUFZMkIsR0FBRyxDQUFDVixLQUFLVyxLQUFLQyxHQUFHO0FBQy9CO0FBRUEsTUFBTUMsaUJBQWlCLENBQUNSO0lBQ3RCLE1BQU1MLE1BQU1ELFNBQVNNO0lBQ3JCLHNGQUFzRjtJQUN0RixvQkFBb0I7SUFDcEIsSUFBSUwsUUFBUSxRQUFRO1FBQ2xCakIsWUFBWStCLEtBQUs7SUFDbkI7SUFDQS9CLFlBQVkwQixNQUFNLENBQUNUO0FBQ3JCO0FBRUE7Ozs7OztDQU1DLEdBQ0QsTUFBTWUsWUFBWSxDQUNoQkMsU0FLQUM7SUFFQSxNQUFNLEVBQUVDLFVBQVUsRUFBRUMsU0FBUyxFQUFFQyxRQUFRLEVBQUUsR0FBR0o7SUFFNUMsTUFBTSxFQUFFSyxVQUFVLEVBQUUsR0FBR0MsSUFBQUEsZUFBUTtJQUUvQixNQUFNQyxVQUFVQyxJQUFBQSxrQkFBVyxFQUN6QixDQUFDQztRQUNDLE1BQU1DLElBQW1CRCxNQUFNRSxNQUFNLEVBQUUzQixNQUFNeUIsTUFBTUUsTUFBTSxHQUFHRjtRQUM1RCxJQUFJQyxFQUFFMUIsR0FBRyxLQUFLNEIsV0FBVztZQUN2Qiw2REFBNkQ7WUFDN0Q7UUFDRjtRQUVBLGtFQUFrRTtRQUNsRTdDLFlBQVl1QixPQUFPLENBQUMsQ0FBQ0MsTUFBTVA7WUFDekIsSUFBSVcsS0FBS0MsR0FBRyxLQUFLTCxPQUFPLE1BQU07Z0JBQzVCeEIsWUFBWTBCLE1BQU0sQ0FBQ1Q7WUFDckI7UUFDRjtRQUVBLElBQUkwQixFQUFFckIsSUFBSSxFQUFFRCxXQUFXc0IsRUFBRXJCLElBQUk7UUFFN0IseUJBQXlCO1FBQ3pCLE1BQU13QixTQUFTQyxPQUFPQyxTQUFTLENBQUNDLFNBQVMsQ0FBQ0MsUUFBUSxDQUFDO1FBQ25ELE1BQU1DLHlCQUF5QjtlQUFJbkQsWUFBWW9ELElBQUk7U0FBRyxDQUFDQyxNQUFNLENBQzNELENBQUNwQyxNQUFRLENBQUM7Z0JBQUM7Z0JBQU87Z0JBQVE7Z0JBQVE7YUFBUSxDQUFDaUMsUUFBUSxDQUFDakM7UUFHdEQscUZBQXFGO1FBQ3JGLElBQ0VxQyxJQUFBQSx1QkFBWSxFQUFDLElBQUlDLElBQUlKLHlCQUF5QixJQUFJSSxJQUFJbEIsY0FDckQsQ0FBQSxDQUFDRixjQUFlVyxVQUFVOUMsWUFBWXdELEdBQUcsQ0FBQyxXQUFhLENBQUNWLFVBQVVILEVBQUVjLE9BQU8sR0FDNUU7WUFDQSx1SUFBdUk7WUFDdkksTUFBTUMsZUFDSkMsQ0FBQUEsT0FBT1AsSUFBSSxDQUFDZCxZQUFZZSxNQUFNLENBQUMsQ0FBQ3BDLE1BQVFxQixVQUFVLENBQUNyQixJQUFJLEVBQUUyQyxTQUFTQyxTQUFTLENBQUEsS0FBSztZQUVsRixJQUFJSCxpQkFBaUJ0QixXQUFXO2dCQUM5QixrRkFBa0Y7Z0JBQ2xGO1lBQ0Y7WUFDQSw4REFBOEQ7WUFDOURGLEtBQUtTO1FBQ1A7SUFDRixHQUNBO1FBQUNOO1FBQVVGO1FBQVlDO1FBQVdFO1FBQVlKO0tBQUs7SUFHckQsTUFBTTRCLFFBQVFyQixJQUFBQSxrQkFBVyxFQUFDLENBQUNFO1FBQ3pCLElBQUlBLEVBQUVyQixJQUFJLEVBQUVRLGVBQWVhLEVBQUVyQixJQUFJO0lBQ25DLEdBQUcsRUFBRTtJQUVMeUMsSUFBQUEsZ0JBQVMsRUFBQztRQUNSQyxTQUFTQyxnQkFBZ0IsQ0FBQyxXQUFXekIsU0FBUztRQUM5Q3dCLFNBQVNDLGdCQUFnQixDQUFDLGlCQUFpQnpCLFNBQVMsT0FBTywrRUFBK0U7O1FBQzFJd0IsU0FBU0MsZ0JBQWdCLENBQUMsU0FBU0gsT0FBTztRQUUxQyxPQUFPO1lBQ0xFLFNBQVNFLG1CQUFtQixDQUFDLFdBQVcxQjtZQUN4Q3dCLFNBQVNFLG1CQUFtQixDQUFDLGlCQUFpQjFCO1lBQzlDd0IsU0FBU0UsbUJBQW1CLENBQUMsU0FBU0o7UUFDeEM7SUFDRixHQUFHO1FBQUN0QjtRQUFTc0I7S0FBTTtBQUNyQjtNQUVBLFdBQWU5QiJ9
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
"use strict";
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "useIntersect", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function() {
|
|
9
|
+
return useIntersect;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
const _react = require("react");
|
|
13
|
+
const useIntersect = ({ root = null, rootMargin = '0px', threshold = 0 } = {}, disable)=>{
|
|
14
|
+
const [entry, updateEntry] = (0, _react.useState)();
|
|
15
|
+
const [node, setNode] = (0, _react.useState)(null);
|
|
16
|
+
const observer = (0, _react.useRef)(typeof window !== 'undefined' && 'IntersectionObserver' in window ? new window.IntersectionObserver(([ent])=>updateEntry(ent), {
|
|
17
|
+
root,
|
|
18
|
+
rootMargin,
|
|
19
|
+
threshold
|
|
20
|
+
}) : null);
|
|
21
|
+
(0, _react.useEffect)(()=>{
|
|
22
|
+
if (disable) {
|
|
23
|
+
return;
|
|
24
|
+
}
|
|
25
|
+
const { current: currentObserver } = observer;
|
|
26
|
+
currentObserver.disconnect();
|
|
27
|
+
if (node) currentObserver.observe(node);
|
|
28
|
+
return ()=>currentObserver.disconnect();
|
|
29
|
+
}, [
|
|
30
|
+
node,
|
|
31
|
+
disable
|
|
32
|
+
]);
|
|
33
|
+
return [
|
|
34
|
+
setNode,
|
|
35
|
+
entry
|
|
36
|
+
];
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ob29rcy91c2VJbnRlcnNlY3QudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIid1c2UgY2xpZW50J1xuLyogZXNsaW50LWRpc2FibGUgbm8tc2hhZG93ICovXG5pbXBvcnQgeyB1c2VFZmZlY3QsIHVzZVJlZiwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCdcblxudHlwZSBJbnRlcnNlY3QgPSBbc2V0Tm9kZTogUmVhY3QuRGlzcGF0Y2g8RWxlbWVudD4sIGVudHJ5OiBJbnRlcnNlY3Rpb25PYnNlcnZlckVudHJ5XVxuXG5leHBvcnQgY29uc3QgdXNlSW50ZXJzZWN0ID0gKFxuICB7IHJvb3QgPSBudWxsLCByb290TWFyZ2luID0gJzBweCcsIHRocmVzaG9sZCA9IDAgfSA9IHt9LFxuICBkaXNhYmxlPzogYm9vbGVhbixcbik6IEludGVyc2VjdCA9PiB7XG4gIGNvbnN0IFtlbnRyeSwgdXBkYXRlRW50cnldID0gdXNlU3RhdGU8SW50ZXJzZWN0aW9uT2JzZXJ2ZXJFbnRyeT4oKVxuICBjb25zdCBbbm9kZSwgc2V0Tm9kZV0gPSB1c2VTdGF0ZShudWxsKVxuXG4gIGNvbnN0IG9ic2VydmVyID0gdXNlUmVmKFxuICAgIHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnICYmICdJbnRlcnNlY3Rpb25PYnNlcnZlcicgaW4gd2luZG93XG4gICAgICA/IG5ldyB3aW5kb3cuSW50ZXJzZWN0aW9uT2JzZXJ2ZXIoKFtlbnRdKSA9PiB1cGRhdGVFbnRyeShlbnQpLCB7XG4gICAgICAgICAgcm9vdCxcbiAgICAgICAgICByb290TWFyZ2luLFxuICAgICAgICAgIHRocmVzaG9sZCxcbiAgICAgICAgfSlcbiAgICAgIDogbnVsbCxcbiAgKVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGRpc2FibGUpIHtcbiAgICAgIHJldHVyblxuICAgIH1cbiAgICBjb25zdCB7IGN1cnJlbnQ6IGN1cnJlbnRPYnNlcnZlciB9ID0gb2JzZXJ2ZXJcbiAgICBjdXJyZW50T2JzZXJ2ZXIuZGlzY29ubmVjdCgpXG5cbiAgICBpZiAobm9kZSkgY3VycmVudE9ic2VydmVyLm9ic2VydmUobm9kZSlcblxuICAgIHJldHVybiAoKSA9PiBjdXJyZW50T2JzZXJ2ZXIuZGlzY29ubmVjdCgpXG4gIH0sIFtub2RlLCBkaXNhYmxlXSlcblxuICByZXR1cm4gW3NldE5vZGUsIGVudHJ5XVxufVxuIl0sIm5hbWVzIjpbInVzZUludGVyc2VjdCIsInJvb3QiLCJyb290TWFyZ2luIiwidGhyZXNob2xkIiwiZGlzYWJsZSIsImVudHJ5IiwidXBkYXRlRW50cnkiLCJ1c2VTdGF0ZSIsIm5vZGUiLCJzZXROb2RlIiwib2JzZXJ2ZXIiLCJ1c2VSZWYiLCJ3aW5kb3ciLCJJbnRlcnNlY3Rpb25PYnNlcnZlciIsImVudCIsInVzZUVmZmVjdCIsImN1cnJlbnQiLCJjdXJyZW50T2JzZXJ2ZXIiLCJkaXNjb25uZWN0Iiwib2JzZXJ2ZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OytCQU1hQTs7O2VBQUFBOzs7dUJBSitCO0FBSXJDLE1BQU1BLGVBQWUsQ0FDMUIsRUFBRUMsT0FBTyxJQUFJLEVBQUVDLGFBQWEsS0FBSyxFQUFFQyxZQUFZLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQyxFQUN2REM7SUFFQSxNQUFNLENBQUNDLE9BQU9DLFlBQVksR0FBR0MsSUFBQUEsZUFBUTtJQUNyQyxNQUFNLENBQUNDLE1BQU1DLFFBQVEsR0FBR0YsSUFBQUEsZUFBUSxFQUFDO0lBRWpDLE1BQU1HLFdBQVdDLElBQUFBLGFBQU0sRUFDckIsT0FBT0MsV0FBVyxlQUFlLDBCQUEwQkEsU0FDdkQsSUFBSUEsT0FBT0Msb0JBQW9CLENBQUMsQ0FBQyxDQUFDQyxJQUFJLEdBQUtSLFlBQVlRLE1BQU07UUFDM0RiO1FBQ0FDO1FBQ0FDO0lBQ0YsS0FDQTtJQUdOWSxJQUFBQSxnQkFBUyxFQUFDO1FBQ1IsSUFBSVgsU0FBUztZQUNYO1FBQ0Y7UUFDQSxNQUFNLEVBQUVZLFNBQVNDLGVBQWUsRUFBRSxHQUFHUDtRQUNyQ08sZ0JBQWdCQyxVQUFVO1FBRTFCLElBQUlWLE1BQU1TLGdCQUFnQkUsT0FBTyxDQUFDWDtRQUVsQyxPQUFPLElBQU1TLGdCQUFnQkMsVUFBVTtJQUN6QyxHQUFHO1FBQUNWO1FBQU1KO0tBQVE7SUFFbEIsT0FBTztRQUFDSztRQUFTSjtLQUFNO0FBQ3pCIn0=
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
"use strict";
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "default", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function() {
|
|
9
|
+
return _default;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
const _qs = /*#__PURE__*/ _interop_require_default(require("qs"));
|
|
13
|
+
const _react = require("react");
|
|
14
|
+
const _Locale = require("../providers/Locale");
|
|
15
|
+
const _Translation = require("../providers/Translation");
|
|
16
|
+
const _api = require("../utilities/api");
|
|
17
|
+
function _interop_require_default(obj) {
|
|
18
|
+
return obj && obj.__esModule ? obj : {
|
|
19
|
+
default: obj
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
const usePayloadAPI = (url, options = {})=>{
|
|
23
|
+
const { initialData, initialParams = {} } = options;
|
|
24
|
+
const { i18n } = (0, _Translation.useTranslation)();
|
|
25
|
+
const [data, setData] = (0, _react.useState)(initialData);
|
|
26
|
+
const [params, setParams] = (0, _react.useState)(initialParams);
|
|
27
|
+
const [isLoading, setIsLoading] = (0, _react.useState)(!initialData);
|
|
28
|
+
const [isError, setIsError] = (0, _react.useState)(false);
|
|
29
|
+
const { code: locale } = (0, _Locale.useLocale)();
|
|
30
|
+
const hasInitialized = (0, _react.useRef)(false);
|
|
31
|
+
const search = _qs.default.stringify({
|
|
32
|
+
locale,
|
|
33
|
+
...typeof params === 'object' ? params : {}
|
|
34
|
+
}, {
|
|
35
|
+
addQueryPrefix: true
|
|
36
|
+
});
|
|
37
|
+
(0, _react.useEffect)(()=>{
|
|
38
|
+
if (initialData && !hasInitialized.current) {
|
|
39
|
+
hasInitialized.current = true;
|
|
40
|
+
return;
|
|
41
|
+
}
|
|
42
|
+
const abortController = new AbortController();
|
|
43
|
+
const fetchData = async ()=>{
|
|
44
|
+
setIsError(false);
|
|
45
|
+
setIsLoading(true);
|
|
46
|
+
try {
|
|
47
|
+
const response = await _api.requests.get(`${url}${search}`, {
|
|
48
|
+
headers: {
|
|
49
|
+
'Accept-Language': i18n.language
|
|
50
|
+
},
|
|
51
|
+
signal: abortController.signal
|
|
52
|
+
});
|
|
53
|
+
if (response.status > 201) {
|
|
54
|
+
setIsError(true);
|
|
55
|
+
}
|
|
56
|
+
const json = await response.json();
|
|
57
|
+
setData(json);
|
|
58
|
+
setIsLoading(false);
|
|
59
|
+
} catch (error) {
|
|
60
|
+
if (!abortController.signal.aborted) {
|
|
61
|
+
setIsError(true);
|
|
62
|
+
setIsLoading(false);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
};
|
|
66
|
+
if (url) {
|
|
67
|
+
fetchData();
|
|
68
|
+
} else {
|
|
69
|
+
setIsError(false);
|
|
70
|
+
setIsLoading(false);
|
|
71
|
+
}
|
|
72
|
+
return ()=>{
|
|
73
|
+
abortController.abort();
|
|
74
|
+
};
|
|
75
|
+
}, [
|
|
76
|
+
url,
|
|
77
|
+
locale,
|
|
78
|
+
search,
|
|
79
|
+
i18n.language
|
|
80
|
+
]);
|
|
81
|
+
return [
|
|
82
|
+
{
|
|
83
|
+
data,
|
|
84
|
+
isError,
|
|
85
|
+
isLoading
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
setParams
|
|
89
|
+
}
|
|
90
|
+
];
|
|
91
|
+
};
|
|
92
|
+
const _default = usePayloadAPI;
|
|
93
|
+
|
|
94
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ob29rcy91c2VQYXlsb2FkQVBJLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIGNsaWVudCdcbmltcG9ydCBxdWVyeVN0cmluZyBmcm9tICdxcydcbmltcG9ydCB7IHVzZUVmZmVjdCwgdXNlUmVmLCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0J1xuXG5pbXBvcnQgeyB1c2VMb2NhbGUgfSBmcm9tICcuLi9wcm92aWRlcnMvTG9jYWxlJ1xuaW1wb3J0IHsgdXNlVHJhbnNsYXRpb24gfSBmcm9tICcuLi9wcm92aWRlcnMvVHJhbnNsYXRpb24nXG5pbXBvcnQgeyByZXF1ZXN0cyB9IGZyb20gJy4uL3V0aWxpdGllcy9hcGknXG5cbnR5cGUgUmVzdWx0ID0gW1xuICB7XG4gICAgZGF0YTogYW55XG4gICAgaXNFcnJvcjogYm9vbGVhblxuICAgIGlzTG9hZGluZzogYm9vbGVhblxuICB9LFxuICB7XG4gICAgc2V0UGFyYW1zOiBSZWFjdC5EaXNwYXRjaDx1bmtub3duPlxuICB9LFxuXVxuXG50eXBlIE9wdGlvbnMgPSB7XG4gIGluaXRpYWxEYXRhPzogYW55XG4gIGluaXRpYWxQYXJhbXM/OiB1bmtub3duXG59XG5cbnR5cGUgVXNlUGF5bG9hZEFQSSA9ICh1cmw6IHN0cmluZywgb3B0aW9ucz86IE9wdGlvbnMpID0+IFJlc3VsdFxuXG5jb25zdCB1c2VQYXlsb2FkQVBJOiBVc2VQYXlsb2FkQVBJID0gKHVybCwgb3B0aW9ucyA9IHt9KSA9PiB7XG4gIGNvbnN0IHsgaW5pdGlhbERhdGEsIGluaXRpYWxQYXJhbXMgPSB7fSB9ID0gb3B0aW9uc1xuXG4gIGNvbnN0IHsgaTE4biB9ID0gdXNlVHJhbnNsYXRpb24oKVxuICBjb25zdCBbZGF0YSwgc2V0RGF0YV0gPSB1c2VTdGF0ZShpbml0aWFsRGF0YSlcbiAgY29uc3QgW3BhcmFtcywgc2V0UGFyYW1zXSA9IHVzZVN0YXRlKGluaXRpYWxQYXJhbXMpXG4gIGNvbnN0IFtpc0xvYWRpbmcsIHNldElzTG9hZGluZ10gPSB1c2VTdGF0ZSghaW5pdGlhbERhdGEpXG4gIGNvbnN0IFtpc0Vycm9yLCBzZXRJc0Vycm9yXSA9IHVzZVN0YXRlKGZhbHNlKVxuICBjb25zdCB7IGNvZGU6IGxvY2FsZSB9ID0gdXNlTG9jYWxlKClcbiAgY29uc3QgaGFzSW5pdGlhbGl6ZWQgPSB1c2VSZWYoZmFsc2UpXG5cbiAgY29uc3Qgc2VhcmNoID0gcXVlcnlTdHJpbmcuc3RyaW5naWZ5KFxuICAgIHtcbiAgICAgIGxvY2FsZSxcbiAgICAgIC4uLih0eXBlb2YgcGFyYW1zID09PSAnb2JqZWN0JyA/IHBhcmFtcyA6IHt9KSxcbiAgICB9LFxuICAgIHtcbiAgICAgIGFkZFF1ZXJ5UHJlZml4OiB0cnVlLFxuICAgIH0sXG4gIClcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChpbml0aWFsRGF0YSAmJiAhaGFzSW5pdGlhbGl6ZWQuY3VycmVudCkge1xuICAgICAgaGFzSW5pdGlhbGl6ZWQuY3VycmVudCA9IHRydWVcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIGNvbnN0IGFib3J0Q29udHJvbGxlciA9IG5ldyBBYm9ydENvbnRyb2xsZXIoKVxuXG4gICAgY29uc3QgZmV0Y2hEYXRhID0gYXN5bmMgKCkgPT4ge1xuICAgICAgc2V0SXNFcnJvcihmYWxzZSlcbiAgICAgIHNldElzTG9hZGluZyh0cnVlKVxuXG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHJlcXVlc3RzLmdldChgJHt1cmx9JHtzZWFyY2h9YCwge1xuICAgICAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgICAgICdBY2NlcHQtTGFuZ3VhZ2UnOiBpMThuLmxhbmd1YWdlLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgc2lnbmFsOiBhYm9ydENvbnRyb2xsZXIuc2lnbmFsLFxuICAgICAgICB9KVxuXG4gICAgICAgIGlmIChyZXNwb25zZS5zdGF0dXMgPiAyMDEpIHtcbiAgICAgICAgICBzZXRJc0Vycm9yKHRydWUpXG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBqc29uID0gYXdhaXQgcmVzcG9uc2UuanNvbigpXG4gICAgICAgIHNldERhdGEoanNvbilcbiAgICAgICAgc2V0SXNMb2FkaW5nKGZhbHNlKVxuICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgaWYgKCFhYm9ydENvbnRyb2xsZXIuc2lnbmFsLmFib3J0ZWQpIHtcbiAgICAgICAgICBzZXRJc0Vycm9yKHRydWUpXG4gICAgICAgICAgc2V0SXNMb2FkaW5nKGZhbHNlKVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHVybCkge1xuICAgICAgZmV0Y2hEYXRhKClcbiAgICB9IGVsc2Uge1xuICAgICAgc2V0SXNFcnJvcihmYWxzZSlcbiAgICAgIHNldElzTG9hZGluZyhmYWxzZSlcbiAgICB9XG5cbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgYWJvcnRDb250cm9sbGVyLmFib3J0KClcbiAgICB9XG4gIH0sIFt1cmwsIGxvY2FsZSwgc2VhcmNoLCBpMThuLmxhbmd1YWdlXSlcblxuICByZXR1cm4gW3sgZGF0YSwgaXNFcnJvciwgaXNMb2FkaW5nIH0sIHsgc2V0UGFyYW1zIH1dXG59XG5cbmV4cG9ydCBkZWZhdWx0IHVzZVBheWxvYWRBUElcbiJdLCJuYW1lcyI6WyJ1c2VQYXlsb2FkQVBJIiwidXJsIiwib3B0aW9ucyIsImluaXRpYWxEYXRhIiwiaW5pdGlhbFBhcmFtcyIsImkxOG4iLCJ1c2VUcmFuc2xhdGlvbiIsImRhdGEiLCJzZXREYXRhIiwidXNlU3RhdGUiLCJwYXJhbXMiLCJzZXRQYXJhbXMiLCJpc0xvYWRpbmciLCJzZXRJc0xvYWRpbmciLCJpc0Vycm9yIiwic2V0SXNFcnJvciIsImNvZGUiLCJsb2NhbGUiLCJ1c2VMb2NhbGUiLCJoYXNJbml0aWFsaXplZCIsInVzZVJlZiIsInNlYXJjaCIsInF1ZXJ5U3RyaW5nIiwic3RyaW5naWZ5IiwiYWRkUXVlcnlQcmVmaXgiLCJ1c2VFZmZlY3QiLCJjdXJyZW50IiwiYWJvcnRDb250cm9sbGVyIiwiQWJvcnRDb250cm9sbGVyIiwiZmV0Y2hEYXRhIiwicmVzcG9uc2UiLCJyZXF1ZXN0cyIsImdldCIsImhlYWRlcnMiLCJsYW5ndWFnZSIsInNpZ25hbCIsInN0YXR1cyIsImpzb24iLCJlcnJvciIsImFib3J0ZWQiLCJhYm9ydCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OytCQWlHQTs7O2VBQUE7OzsyREFoR3dCO3VCQUNvQjt3QkFFbEI7NkJBQ0s7cUJBQ047Ozs7OztBQW9CekIsTUFBTUEsZ0JBQStCLENBQUNDLEtBQUtDLFVBQVUsQ0FBQyxDQUFDO0lBQ3JELE1BQU0sRUFBRUMsV0FBVyxFQUFFQyxnQkFBZ0IsQ0FBQyxDQUFDLEVBQUUsR0FBR0Y7SUFFNUMsTUFBTSxFQUFFRyxJQUFJLEVBQUUsR0FBR0MsSUFBQUEsMkJBQWM7SUFDL0IsTUFBTSxDQUFDQyxNQUFNQyxRQUFRLEdBQUdDLElBQUFBLGVBQVEsRUFBQ047SUFDakMsTUFBTSxDQUFDTyxRQUFRQyxVQUFVLEdBQUdGLElBQUFBLGVBQVEsRUFBQ0w7SUFDckMsTUFBTSxDQUFDUSxXQUFXQyxhQUFhLEdBQUdKLElBQUFBLGVBQVEsRUFBQyxDQUFDTjtJQUM1QyxNQUFNLENBQUNXLFNBQVNDLFdBQVcsR0FBR04sSUFBQUEsZUFBUSxFQUFDO0lBQ3ZDLE1BQU0sRUFBRU8sTUFBTUMsTUFBTSxFQUFFLEdBQUdDLElBQUFBLGlCQUFTO0lBQ2xDLE1BQU1DLGlCQUFpQkMsSUFBQUEsYUFBTSxFQUFDO0lBRTlCLE1BQU1DLFNBQVNDLFdBQVcsQ0FBQ0MsU0FBUyxDQUNsQztRQUNFTjtRQUNBLEdBQUksT0FBT1AsV0FBVyxXQUFXQSxTQUFTLENBQUMsQ0FBQztJQUM5QyxHQUNBO1FBQ0VjLGdCQUFnQjtJQUNsQjtJQUdGQyxJQUFBQSxnQkFBUyxFQUFDO1FBQ1IsSUFBSXRCLGVBQWUsQ0FBQ2dCLGVBQWVPLE9BQU8sRUFBRTtZQUMxQ1AsZUFBZU8sT0FBTyxHQUFHO1lBQ3pCO1FBQ0Y7UUFFQSxNQUFNQyxrQkFBa0IsSUFBSUM7UUFFNUIsTUFBTUMsWUFBWTtZQUNoQmQsV0FBVztZQUNYRixhQUFhO1lBRWIsSUFBSTtnQkFDRixNQUFNaUIsV0FBVyxNQUFNQyxhQUFRLENBQUNDLEdBQUcsQ0FBQyxDQUFDLEVBQUUvQixJQUFJLEVBQUVvQixPQUFPLENBQUMsRUFBRTtvQkFDckRZLFNBQVM7d0JBQ1AsbUJBQW1CNUIsS0FBSzZCLFFBQVE7b0JBQ2xDO29CQUNBQyxRQUFRUixnQkFBZ0JRLE1BQU07Z0JBQ2hDO2dCQUVBLElBQUlMLFNBQVNNLE1BQU0sR0FBRyxLQUFLO29CQUN6QnJCLFdBQVc7Z0JBQ2I7Z0JBRUEsTUFBTXNCLE9BQU8sTUFBTVAsU0FBU08sSUFBSTtnQkFDaEM3QixRQUFRNkI7Z0JBQ1J4QixhQUFhO1lBQ2YsRUFBRSxPQUFPeUIsT0FBTztnQkFDZCxJQUFJLENBQUNYLGdCQUFnQlEsTUFBTSxDQUFDSSxPQUFPLEVBQUU7b0JBQ25DeEIsV0FBVztvQkFDWEYsYUFBYTtnQkFDZjtZQUNGO1FBQ0Y7UUFFQSxJQUFJWixLQUFLO1lBQ1A0QjtRQUNGLE9BQU87WUFDTGQsV0FBVztZQUNYRixhQUFhO1FBQ2Y7UUFFQSxPQUFPO1lBQ0xjLGdCQUFnQmEsS0FBSztRQUN2QjtJQUNGLEdBQUc7UUFBQ3ZDO1FBQUtnQjtRQUFRSTtRQUFRaEIsS0FBSzZCLFFBQVE7S0FBQztJQUV2QyxPQUFPO1FBQUM7WUFBRTNCO1lBQU1PO1lBQVNGO1FBQVU7UUFBRztZQUFFRDtRQUFVO0tBQUU7QUFDdEQ7TUFFQSxXQUFlWCJ9
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
"use strict";
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "useResize", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function() {
|
|
9
|
+
return useResize;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
const _react = require("react");
|
|
13
|
+
const useResize = (ref)=>{
|
|
14
|
+
const [size, setSize] = (0, _react.useState)();
|
|
15
|
+
(0, _react.useEffect)(()=>{
|
|
16
|
+
let observer// eslint-disable-line
|
|
17
|
+
;
|
|
18
|
+
const { current: currentRef } = ref;
|
|
19
|
+
if (currentRef) {
|
|
20
|
+
observer = new ResizeObserver((entries)=>{
|
|
21
|
+
entries.forEach((entry)=>{
|
|
22
|
+
const { contentBoxSize, contentRect } = entry;
|
|
23
|
+
let newWidth = 0;
|
|
24
|
+
let newHeight = 0;
|
|
25
|
+
if (contentBoxSize) {
|
|
26
|
+
const newSize = Array.isArray(contentBoxSize) ? contentBoxSize[0] : contentBoxSize;
|
|
27
|
+
if (newSize) {
|
|
28
|
+
const { blockSize, inlineSize } = newSize;
|
|
29
|
+
newWidth = inlineSize;
|
|
30
|
+
newHeight = blockSize;
|
|
31
|
+
}
|
|
32
|
+
} else if (contentRect) {
|
|
33
|
+
// see note above for why this block is needed
|
|
34
|
+
const { height, width } = contentRect;
|
|
35
|
+
newWidth = width;
|
|
36
|
+
newHeight = height;
|
|
37
|
+
}
|
|
38
|
+
setSize({
|
|
39
|
+
height: newHeight,
|
|
40
|
+
width: newWidth
|
|
41
|
+
});
|
|
42
|
+
});
|
|
43
|
+
});
|
|
44
|
+
observer.observe(currentRef);
|
|
45
|
+
}
|
|
46
|
+
return ()=>{
|
|
47
|
+
if (observer) {
|
|
48
|
+
observer.unobserve(currentRef);
|
|
49
|
+
}
|
|
50
|
+
};
|
|
51
|
+
}, [
|
|
52
|
+
ref
|
|
53
|
+
]);
|
|
54
|
+
return {
|
|
55
|
+
size
|
|
56
|
+
};
|
|
57
|
+
};
|
|
58
|
+
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ob29rcy91c2VSZXNpemUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBjbGllbnQnXG5pbXBvcnQgdHlwZSBSZWFjdCBmcm9tICdyZWFjdCdcblxuaW1wb3J0IHsgdXNlRWZmZWN0LCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0J1xuXG5pbnRlcmZhY2UgU2l6ZSB7XG4gIGhlaWdodDogbnVtYmVyXG4gIHdpZHRoOiBudW1iZXJcbn1cblxuaW50ZXJmYWNlIFJlc2l6ZSB7XG4gIHNpemU/OiBTaXplXG59XG5cbmV4cG9ydCBjb25zdCB1c2VSZXNpemUgPSAocmVmOiBSZWFjdC5NdXRhYmxlUmVmT2JqZWN0PEhUTUxFbGVtZW50Pik6IFJlc2l6ZSA9PiB7XG4gIGNvbnN0IFtzaXplLCBzZXRTaXplXSA9IHVzZVN0YXRlPFNpemU+KClcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGxldCBvYnNlcnZlcjogYW55IC8vIGVzbGludC1kaXNhYmxlLWxpbmVcblxuICAgIGNvbnN0IHsgY3VycmVudDogY3VycmVudFJlZiB9ID0gcmVmXG5cbiAgICBpZiAoY3VycmVudFJlZikge1xuICAgICAgb2JzZXJ2ZXIgPSBuZXcgUmVzaXplT2JzZXJ2ZXIoKGVudHJpZXMpID0+IHtcbiAgICAgICAgZW50cmllcy5mb3JFYWNoKChlbnRyeSkgPT4ge1xuICAgICAgICAgIGNvbnN0IHtcbiAgICAgICAgICAgIGNvbnRlbnRCb3hTaXplLFxuICAgICAgICAgICAgY29udGVudFJlY3QsIC8vIGZvciBTYWZhcmkgaU9TIGNvbXBhdGliaWxpdHksIHdpbGwgYmUgZGVwcmVjYXRlZCBldmVudHVhbGx5IChzZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQVBJL1Jlc2l6ZU9ic2VydmVyRW50cnkvY29udGVudFJlY3QpXG4gICAgICAgICAgfSA9IGVudHJ5XG5cbiAgICAgICAgICBsZXQgbmV3V2lkdGggPSAwXG4gICAgICAgICAgbGV0IG5ld0hlaWdodCA9IDBcblxuICAgICAgICAgIGlmIChjb250ZW50Qm94U2l6ZSkge1xuICAgICAgICAgICAgY29uc3QgbmV3U2l6ZSA9IEFycmF5LmlzQXJyYXkoY29udGVudEJveFNpemUpID8gY29udGVudEJveFNpemVbMF0gOiBjb250ZW50Qm94U2l6ZVxuXG4gICAgICAgICAgICBpZiAobmV3U2l6ZSkge1xuICAgICAgICAgICAgICBjb25zdCB7IGJsb2NrU2l6ZSwgaW5saW5lU2l6ZSB9ID0gbmV3U2l6ZVxuICAgICAgICAgICAgICBuZXdXaWR0aCA9IGlubGluZVNpemVcbiAgICAgICAgICAgICAgbmV3SGVpZ2h0ID0gYmxvY2tTaXplXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSBlbHNlIGlmIChjb250ZW50UmVjdCkge1xuICAgICAgICAgICAgLy8gc2VlIG5vdGUgYWJvdmUgZm9yIHdoeSB0aGlzIGJsb2NrIGlzIG5lZWRlZFxuICAgICAgICAgICAgY29uc3QgeyBoZWlnaHQsIHdpZHRoIH0gPSBjb250ZW50UmVjdFxuICAgICAgICAgICAgbmV3V2lkdGggPSB3aWR0aFxuICAgICAgICAgICAgbmV3SGVpZ2h0ID0gaGVpZ2h0XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgc2V0U2l6ZSh7XG4gICAgICAgICAgICBoZWlnaHQ6IG5ld0hlaWdodCxcbiAgICAgICAgICAgIHdpZHRoOiBuZXdXaWR0aCxcbiAgICAgICAgICB9KVxuICAgICAgICB9KVxuICAgICAgfSlcblxuICAgICAgb2JzZXJ2ZXIub2JzZXJ2ZShjdXJyZW50UmVmKVxuICAgIH1cblxuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBpZiAob2JzZXJ2ZXIpIHtcbiAgICAgICAgb2JzZXJ2ZXIudW5vYnNlcnZlKGN1cnJlbnRSZWYpXG4gICAgICB9XG4gICAgfVxuICB9LCBbcmVmXSlcblxuICByZXR1cm4ge1xuICAgIHNpemUsXG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJ1c2VSZXNpemUiLCJyZWYiLCJzaXplIiwic2V0U2l6ZSIsInVzZVN0YXRlIiwidXNlRWZmZWN0Iiwib2JzZXJ2ZXIiLCJjdXJyZW50IiwiY3VycmVudFJlZiIsIlJlc2l6ZU9ic2VydmVyIiwiZW50cmllcyIsImZvckVhY2giLCJlbnRyeSIsImNvbnRlbnRCb3hTaXplIiwiY29udGVudFJlY3QiLCJuZXdXaWR0aCIsIm5ld0hlaWdodCIsIm5ld1NpemUiLCJBcnJheSIsImlzQXJyYXkiLCJibG9ja1NpemUiLCJpbmxpbmVTaXplIiwiaGVpZ2h0Iiwid2lkdGgiLCJvYnNlcnZlIiwidW5vYnNlcnZlIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7K0JBY2FBOzs7ZUFBQUE7Ozt1QkFYdUI7QUFXN0IsTUFBTUEsWUFBWSxDQUFDQztJQUN4QixNQUFNLENBQUNDLE1BQU1DLFFBQVEsR0FBR0MsSUFBQUEsZUFBUTtJQUVoQ0MsSUFBQUEsZ0JBQVMsRUFBQztRQUNSLElBQUlDLFFBQWMsc0JBQXNCOztRQUV4QyxNQUFNLEVBQUVDLFNBQVNDLFVBQVUsRUFBRSxHQUFHUDtRQUVoQyxJQUFJTyxZQUFZO1lBQ2RGLFdBQVcsSUFBSUcsZUFBZSxDQUFDQztnQkFDN0JBLFFBQVFDLE9BQU8sQ0FBQyxDQUFDQztvQkFDZixNQUFNLEVBQ0pDLGNBQWMsRUFDZEMsV0FBVyxFQUNaLEdBQUdGO29CQUVKLElBQUlHLFdBQVc7b0JBQ2YsSUFBSUMsWUFBWTtvQkFFaEIsSUFBSUgsZ0JBQWdCO3dCQUNsQixNQUFNSSxVQUFVQyxNQUFNQyxPQUFPLENBQUNOLGtCQUFrQkEsY0FBYyxDQUFDLEVBQUUsR0FBR0E7d0JBRXBFLElBQUlJLFNBQVM7NEJBQ1gsTUFBTSxFQUFFRyxTQUFTLEVBQUVDLFVBQVUsRUFBRSxHQUFHSjs0QkFDbENGLFdBQVdNOzRCQUNYTCxZQUFZSTt3QkFDZDtvQkFDRixPQUFPLElBQUlOLGFBQWE7d0JBQ3RCLDhDQUE4Qzt3QkFDOUMsTUFBTSxFQUFFUSxNQUFNLEVBQUVDLEtBQUssRUFBRSxHQUFHVDt3QkFDMUJDLFdBQVdRO3dCQUNYUCxZQUFZTTtvQkFDZDtvQkFFQW5CLFFBQVE7d0JBQ05tQixRQUFRTjt3QkFDUk8sT0FBT1I7b0JBQ1Q7Z0JBQ0Y7WUFDRjtZQUVBVCxTQUFTa0IsT0FBTyxDQUFDaEI7UUFDbkI7UUFFQSxPQUFPO1lBQ0wsSUFBSUYsVUFBVTtnQkFDWkEsU0FBU21CLFNBQVMsQ0FBQ2pCO1lBQ3JCO1FBQ0Y7SUFDRixHQUFHO1FBQUNQO0tBQUk7SUFFUixPQUFPO1FBQ0xDO0lBQ0Y7QUFDRiJ9
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/* eslint-disable react-hooks/exhaustive-deps */ "use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "default", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return _default;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
const _react = require("react");
|
|
12
|
+
const useThrottledEffect = (callback, delay, deps = [])=>{
|
|
13
|
+
const lastRan = (0, _react.useRef)(Date.now());
|
|
14
|
+
(0, _react.useEffect)(()=>{
|
|
15
|
+
const handler = setTimeout(()=>{
|
|
16
|
+
if (Date.now() - lastRan.current >= delay) {
|
|
17
|
+
callback();
|
|
18
|
+
lastRan.current = Date.now();
|
|
19
|
+
}
|
|
20
|
+
}, delay - (Date.now() - lastRan.current));
|
|
21
|
+
return ()=>{
|
|
22
|
+
clearTimeout(handler);
|
|
23
|
+
};
|
|
24
|
+
}, [
|
|
25
|
+
delay,
|
|
26
|
+
...deps
|
|
27
|
+
]);
|
|
28
|
+
};
|
|
29
|
+
const _default = useThrottledEffect;
|
|
30
|
+
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ob29rcy91c2VUaHJvdHRsZWRFZmZlY3QudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIHJlYWN0LWhvb2tzL2V4aGF1c3RpdmUtZGVwcyAqL1xuaW1wb3J0IHsgdXNlRWZmZWN0LCB1c2VSZWYgfSBmcm9tICdyZWFjdCdcblxudHlwZSB1c2VUaHJvdHRsZWRFZmZlY3QgPSAoXG4gIGNhbGxiYWNrOiBSZWFjdC5FZmZlY3RDYWxsYmFjayxcbiAgZGVsYXk6IG51bWJlcixcbiAgZGVwczogUmVhY3QuRGVwZW5kZW5jeUxpc3QsXG4pID0+IHZvaWRcblxuY29uc3QgdXNlVGhyb3R0bGVkRWZmZWN0OiB1c2VUaHJvdHRsZWRFZmZlY3QgPSAoY2FsbGJhY2ssIGRlbGF5LCBkZXBzID0gW10pID0+IHtcbiAgY29uc3QgbGFzdFJhbiA9IHVzZVJlZihEYXRlLm5vdygpKVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgY29uc3QgaGFuZGxlciA9IHNldFRpbWVvdXQoXG4gICAgICAoKSA9PiB7XG4gICAgICAgIGlmIChEYXRlLm5vdygpIC0gbGFzdFJhbi5jdXJyZW50ID49IGRlbGF5KSB7XG4gICAgICAgICAgY2FsbGJhY2soKVxuICAgICAgICAgIGxhc3RSYW4uY3VycmVudCA9IERhdGUubm93KClcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIGRlbGF5IC0gKERhdGUubm93KCkgLSBsYXN0UmFuLmN1cnJlbnQpLFxuICAgIClcblxuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBjbGVhclRpbWVvdXQoaGFuZGxlcilcbiAgICB9XG4gIH0sIFtkZWxheSwgLi4uZGVwc10pXG59XG5cbmV4cG9ydCBkZWZhdWx0IHVzZVRocm90dGxlZEVmZmVjdFxuIl0sIm5hbWVzIjpbInVzZVRocm90dGxlZEVmZmVjdCIsImNhbGxiYWNrIiwiZGVsYXkiLCJkZXBzIiwibGFzdFJhbiIsInVzZVJlZiIsIkRhdGUiLCJub3ciLCJ1c2VFZmZlY3QiLCJoYW5kbGVyIiwic2V0VGltZW91dCIsImN1cnJlbnQiLCJjbGVhclRpbWVvdXQiXSwibWFwcGluZ3MiOiJBQUFBLDhDQUE4Qzs7OzsrQkE2QjlDOzs7ZUFBQTs7O3VCQTVCa0M7QUFRbEMsTUFBTUEscUJBQXlDLENBQUNDLFVBQVVDLE9BQU9DLE9BQU8sRUFBRTtJQUN4RSxNQUFNQyxVQUFVQyxJQUFBQSxhQUFNLEVBQUNDLEtBQUtDLEdBQUc7SUFFL0JDLElBQUFBLGdCQUFTLEVBQUM7UUFDUixNQUFNQyxVQUFVQyxXQUNkO1lBQ0UsSUFBSUosS0FBS0MsR0FBRyxLQUFLSCxRQUFRTyxPQUFPLElBQUlULE9BQU87Z0JBQ3pDRDtnQkFDQUcsUUFBUU8sT0FBTyxHQUFHTCxLQUFLQyxHQUFHO1lBQzVCO1FBQ0YsR0FDQUwsUUFBU0ksQ0FBQUEsS0FBS0MsR0FBRyxLQUFLSCxRQUFRTyxPQUFPLEFBQUQ7UUFHdEMsT0FBTztZQUNMQyxhQUFhSDtRQUNmO0lBQ0YsR0FBRztRQUFDUDtXQUFVQztLQUFLO0FBQ3JCO01BRUEsV0FBZUgifQ==
|