@webiny/app-admin 6.4.12-beta.4 → 6.5.0-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/base/Admin.js +13 -3
- package/base/Admin.js.map +1 -1
- package/base/Base/DefaultFieldRenderers.js +41 -2
- package/base/Base/DefaultFieldRenderers.js.map +1 -1
- package/base/Base/FieldRenderers/ApiKeyTokenRenderer.d.ts +4 -0
- package/base/Base/FieldRenderers/ApiKeyTokenRenderer.js +26 -0
- package/base/Base/FieldRenderers/ApiKeyTokenRenderer.js.map +1 -0
- package/base/Base/FieldRenderers/AutoCompleteRenderer.d.ts +13 -0
- package/base/Base/FieldRenderers/AutoCompleteRenderer.js +29 -0
- package/base/Base/FieldRenderers/AutoCompleteRenderer.js.map +1 -0
- package/base/Base/FieldRenderers/CheckboxesRenderer.js +1 -0
- package/base/Base/FieldRenderers/CheckboxesRenderer.js.map +1 -1
- package/base/Base/FieldRenderers/DateTimeInputsRenderer.js +5 -1
- package/base/Base/FieldRenderers/DateTimeInputsRenderer.js.map +1 -1
- package/base/Base/FieldRenderers/FilePickerRenderer.js +2 -0
- package/base/Base/FieldRenderers/FilePickerRenderer.js.map +1 -1
- package/base/Base/FieldRenderers/FileUrlPickerRenderer.js +1 -0
- package/base/Base/FieldRenderers/FileUrlPickerRenderer.js.map +1 -1
- package/base/Base/FieldRenderers/HorizontalTabsRenderer.d.ts +2 -2
- package/base/Base/FieldRenderers/HorizontalTabsRenderer.js +2 -1
- package/base/Base/FieldRenderers/HorizontalTabsRenderer.js.map +1 -1
- package/base/Base/FieldRenderers/InputRenderer.js +1 -0
- package/base/Base/FieldRenderers/InputRenderer.js.map +1 -1
- package/base/Base/FieldRenderers/LexicalEditorsRenderer.d.ts +14 -0
- package/base/Base/FieldRenderers/LexicalEditorsRenderer.js +78 -0
- package/base/Base/FieldRenderers/LexicalEditorsRenderer.js.map +1 -0
- package/base/Base/FieldRenderers/LexicalRenderer.js +10 -6
- package/base/Base/FieldRenderers/LexicalRenderer.js.map +1 -1
- package/base/Base/FieldRenderers/MultiAutoCompleteRenderer.d.ts +13 -0
- package/base/Base/FieldRenderers/MultiAutoCompleteRenderer.js +29 -0
- package/base/Base/FieldRenderers/MultiAutoCompleteRenderer.js.map +1 -0
- package/base/Base/FieldRenderers/MultiFilePickerRenderer.js +8 -5
- package/base/Base/FieldRenderers/MultiFilePickerRenderer.js.map +1 -1
- package/base/Base/FieldRenderers/MultiSelectRenderer.d.ts +15 -0
- package/base/Base/FieldRenderers/MultiSelectRenderer.js +31 -0
- package/base/Base/FieldRenderers/MultiSelectRenderer.js.map +1 -0
- package/base/Base/FieldRenderers/NumberInputRenderer.js +1 -0
- package/base/Base/FieldRenderers/NumberInputRenderer.js.map +1 -1
- package/base/Base/FieldRenderers/NumberInputsRenderer.js +19 -9
- package/base/Base/FieldRenderers/NumberInputsRenderer.js.map +1 -1
- package/base/Base/FieldRenderers/ObjectRenderer/DynamicZoneRenderer.d.ts +2 -0
- package/base/Base/FieldRenderers/ObjectRenderer/DynamicZoneRenderer.js +5 -2
- package/base/Base/FieldRenderers/ObjectRenderer/DynamicZoneRenderer.js.map +1 -1
- package/base/Base/FieldRenderers/ObjectRenderer/KeyValueTagsRenderer.js +2 -1
- package/base/Base/FieldRenderers/ObjectRenderer/KeyValueTagsRenderer.js.map +1 -1
- package/base/Base/FieldRenderers/ObjectRenderer/MultiValueDynamicZone/MultiValueDynamicZone.d.ts +11 -0
- package/base/Base/FieldRenderers/ObjectRenderer/MultiValueDynamicZone/MultiValueDynamicZone.js +206 -0
- package/base/Base/FieldRenderers/ObjectRenderer/MultiValueDynamicZone/MultiValueDynamicZone.js.map +1 -0
- package/base/Base/FieldRenderers/ObjectRenderer/MultiValueDynamicZone/MultiValueDynamicZonePresenter.d.ts +13 -0
- package/base/Base/FieldRenderers/ObjectRenderer/MultiValueDynamicZone/MultiValueDynamicZonePresenter.js +28 -0
- package/base/Base/FieldRenderers/ObjectRenderer/MultiValueDynamicZone/MultiValueDynamicZonePresenter.js.map +1 -0
- package/base/Base/FieldRenderers/ObjectRenderer/MultiValueDynamicZone/abstractions.d.ts +15 -0
- package/base/Base/FieldRenderers/ObjectRenderer/MultiValueDynamicZone/abstractions.js +5 -0
- package/base/Base/FieldRenderers/ObjectRenderer/MultiValueDynamicZone/abstractions.js.map +1 -0
- package/base/Base/FieldRenderers/ObjectRenderer/MultiValueDynamicZone/feature.d.ts +1 -0
- package/base/Base/FieldRenderers/ObjectRenderer/MultiValueDynamicZone/feature.js +11 -0
- package/base/Base/FieldRenderers/ObjectRenderer/MultiValueDynamicZone/feature.js.map +1 -0
- package/base/Base/FieldRenderers/ObjectRenderer/MultiValueDynamicZone/index.d.ts +2 -0
- package/base/Base/FieldRenderers/ObjectRenderer/MultiValueDynamicZone/index.js +2 -0
- package/base/Base/FieldRenderers/ObjectRenderer/ObjectAccordionMultipleRenderer.d.ts +2 -1
- package/base/Base/FieldRenderers/ObjectRenderer/ObjectAccordionMultipleRenderer.js +35 -8
- package/base/Base/FieldRenderers/ObjectRenderer/ObjectAccordionMultipleRenderer.js.map +1 -1
- package/base/Base/FieldRenderers/ObjectRenderer/ObjectFieldComponents.d.ts +7 -12
- package/base/Base/FieldRenderers/ObjectRenderer/ObjectFieldComponents.js +43 -9
- package/base/Base/FieldRenderers/ObjectRenderer/ObjectFieldComponents.js.map +1 -1
- package/base/Base/FieldRenderers/ObjectRenderer/ObjectRenderer.d.ts +4 -1
- package/base/Base/FieldRenderers/ObjectRenderer/ObjectRenderer.js +41 -5
- package/base/Base/FieldRenderers/ObjectRenderer/ObjectRenderer.js.map +1 -1
- package/base/Base/FieldRenderers/ObjectRenderer/SingleValueDynamicZone.d.ts +3 -2
- package/base/Base/FieldRenderers/ObjectRenderer/SingleValueDynamicZone.js +72 -12
- package/base/Base/FieldRenderers/ObjectRenderer/SingleValueDynamicZone.js.map +1 -1
- package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker.js +1 -1
- package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker.js.map +1 -1
- package/base/Base/FieldRenderers/ObjectRenderer/resolveItemTitle.d.ts +3 -2
- package/base/Base/FieldRenderers/ObjectRenderer/resolveItemTitle.js +10 -1
- package/base/Base/FieldRenderers/ObjectRenderer/resolveItemTitle.js.map +1 -1
- package/base/Base/FieldRenderers/PasswordInputRenderer.d.ts +12 -0
- package/base/Base/FieldRenderers/PasswordInputRenderer.js +22 -0
- package/base/Base/FieldRenderers/PasswordInputRenderer.js.map +1 -0
- package/base/Base/FieldRenderers/PermissionsRenderer.d.ts +14 -0
- package/base/Base/FieldRenderers/PermissionsRenderer.js +18 -0
- package/base/Base/FieldRenderers/PermissionsRenderer.js.map +1 -0
- package/base/Base/FieldRenderers/RadioButtonsRenderer.js +4 -2
- package/base/Base/FieldRenderers/RadioButtonsRenderer.js.map +1 -1
- package/base/Base/FieldRenderers/RolesMultiSelectRenderer.d.ts +12 -0
- package/base/Base/FieldRenderers/RolesMultiSelectRenderer.js +21 -0
- package/base/Base/FieldRenderers/RolesMultiSelectRenderer.js.map +1 -0
- package/base/Base/FieldRenderers/SelectRenderer.d.ts +6 -0
- package/base/Base/FieldRenderers/SelectRenderer.js +4 -2
- package/base/Base/FieldRenderers/SelectRenderer.js.map +1 -1
- package/base/Base/FieldRenderers/TagsRenderer.js +1 -0
- package/base/Base/FieldRenderers/TagsRenderer.js.map +1 -1
- package/base/Base/FieldRenderers/TextInputsRenderer.js +19 -9
- package/base/Base/FieldRenderers/TextInputsRenderer.js.map +1 -1
- package/base/Base/FieldRenderers/TextareaRenderer.js +1 -0
- package/base/Base/FieldRenderers/TextareaRenderer.js.map +1 -1
- package/base/Base/FieldRenderers/TextareasRenderer.js +5 -1
- package/base/Base/FieldRenderers/TextareasRenderer.js.map +1 -1
- package/base/Base/FieldRenderers/VerticalTabsRenderer.d.ts +2 -2
- package/base/Base.d.ts +3 -1
- package/base/Base.js +2 -1
- package/base/Base.js.map +1 -1
- package/base/createRootContainer.js +6 -0
- package/base/createRootContainer.js.map +1 -1
- package/base/ui/FileManager.d.ts +2 -1
- package/components/BulkActions/BulkActionButton.d.ts +6 -0
- package/components/BulkActions/BulkActionButton.js +17 -0
- package/components/BulkActions/BulkActionButton.js.map +1 -0
- package/components/BulkActions/BulkActionRunner.d.ts +41 -0
- package/components/BulkActions/BulkActionRunner.js +32 -0
- package/components/BulkActions/BulkActionRunner.js.map +1 -0
- package/components/BulkActions/Worker.d.ts +9 -57
- package/components/BulkActions/Worker.js +5 -9
- package/components/BulkActions/Worker.js.map +1 -1
- package/components/BulkActions/index.d.ts +3 -0
- package/components/BulkActions/index.js +3 -0
- package/components/ConfirmationDialog/ConfirmationDialog.d.ts +11 -0
- package/components/ConfirmationDialog/ConfirmationDialog.js +41 -0
- package/components/ConfirmationDialog/ConfirmationDialog.js.map +1 -0
- package/components/ConfirmationDialog/index.d.ts +1 -0
- package/components/ConfirmationDialog/index.js +1 -0
- package/components/Dialogs/DialogsContext.js +2 -1
- package/components/Dialogs/DialogsContext.js.map +1 -1
- package/components/Drawers/DrawerParamsContext.d.ts +6 -0
- package/components/Drawers/DrawerParamsContext.js +10 -0
- package/components/Drawers/DrawerParamsContext.js.map +1 -0
- package/components/Drawers/DrawersContext.d.ts +13 -0
- package/components/Drawers/DrawersContext.js +50 -0
- package/components/Drawers/DrawersContext.js.map +1 -0
- package/components/Drawers/useDrawers.d.ts +2 -0
- package/components/Drawers/useDrawers.js +10 -0
- package/components/Drawers/useDrawers.js.map +1 -0
- package/components/Filters/Filters.js +4 -3
- package/components/Filters/Filters.js.map +1 -1
- package/components/IconPicker/IconPicker.d.ts +7 -5
- package/components/IconPicker/IconPickerComponent.d.ts +2 -2
- package/components/IconPicker/IconPickerComponent.js +1 -1
- package/components/IconPicker/IconPickerComponent.js.map +1 -1
- package/components/IconPicker/components/IconPickerTrigger.d.ts +1 -1
- package/components/IconPicker/config/index.d.ts +2 -1
- package/components/LexicalEditor/LexicalLinkForm.js +3 -0
- package/components/LexicalEditor/LexicalLinkForm.js.map +1 -1
- package/components/ListView/ListView.d.ts +17 -0
- package/components/ListView/ListView.js +36 -0
- package/components/ListView/ListView.js.map +1 -0
- package/components/ListView/ListViewBottomBar.d.ts +14 -0
- package/components/ListView/ListViewBottomBar.js +45 -0
- package/components/ListView/ListViewBottomBar.js.map +1 -0
- package/components/ListView/ListViewBulkActions.d.ts +11 -0
- package/components/ListView/ListViewBulkActions.js +41 -0
- package/components/ListView/ListViewBulkActions.js.map +1 -0
- package/components/ListView/ListViewContent.d.ts +12 -0
- package/components/ListView/ListViewContent.js +25 -0
- package/components/ListView/ListViewContent.js.map +1 -0
- package/components/ListView/ListViewFilters.d.ts +15 -0
- package/components/ListView/ListViewFilters.js +21 -0
- package/components/ListView/ListViewFilters.js.map +1 -0
- package/components/ListView/ListViewHeader.d.ts +17 -0
- package/components/ListView/ListViewHeader.js +72 -0
- package/components/ListView/ListViewHeader.js.map +1 -0
- package/components/ListView/ListViewSidebar.d.ts +17 -0
- package/components/ListView/ListViewSidebar.js +25 -0
- package/components/ListView/ListViewSidebar.js.map +1 -0
- package/components/ListView/ListViewTable.d.ts +18 -0
- package/components/ListView/ListViewTable.js +33 -0
- package/components/ListView/ListViewTable.js.map +1 -0
- package/components/ListView/context.d.ts +3 -0
- package/components/ListView/context.js +11 -0
- package/components/ListView/context.js.map +1 -0
- package/components/ListView/index.d.ts +24 -0
- package/components/ListView/index.js +22 -0
- package/components/ListView/index.js.map +1 -0
- package/components/ListView/types.d.ts +7 -0
- package/components/ListView/types.js +0 -0
- package/components/OptionsMenu/OptionsMenuItem.d.ts +1 -0
- package/components/OptionsMenu/OptionsMenuItem.js +1 -0
- package/components/OptionsMenu/OptionsMenuItem.js.map +1 -1
- package/components/OverlayLayout/components/OverlayHeader.d.ts +1 -1
- package/components/RolesMultiAutocomplete/index.d.ts +1 -1
- package/components/RolesMultiAutocomplete/index.js +12 -1
- package/components/RolesMultiAutocomplete/index.js.map +1 -1
- package/components/SimpleForm/SimpleForm.d.ts +1 -1
- package/components/SimpleUI/InputField.d.ts +2 -1
- package/components/SingleImageUpload.d.ts +1 -2
- package/components/SingleImageUpload.js +1 -2
- package/components/SingleImageUpload.js.map +1 -1
- package/components/Table/cells/CellAuthor.d.ts +2 -0
- package/components/Table/cells/CellAuthor.js +10 -0
- package/components/Table/cells/CellAuthor.js.map +1 -0
- package/components/Table/cells/CellCreated.d.ts +2 -0
- package/components/Table/cells/CellCreated.js +13 -0
- package/components/Table/cells/CellCreated.js.map +1 -0
- package/components/Table/cells/CellModified.d.ts +2 -0
- package/components/Table/cells/CellModified.js +13 -0
- package/components/Table/cells/CellModified.js.map +1 -0
- package/components/Table/cells/index.d.ts +3 -0
- package/components/Table/cells/index.js +3 -0
- package/components/Table/components/Table/ColumnVisibility/ColumnsVisibilityDecorator.d.ts +9 -0
- package/components/Table/components/Table/ColumnVisibility/ColumnsVisibilityDecorator.js +23 -0
- package/components/Table/components/Table/ColumnVisibility/ColumnsVisibilityDecorator.js.map +1 -0
- package/components/Table/components/Table/ColumnVisibility/ColumnsVisibilityPresenter.d.ts +9 -0
- package/components/Table/components/Table/ColumnVisibility/ColumnsVisibilityPresenter.js +21 -0
- package/components/Table/components/Table/ColumnVisibility/ColumnsVisibilityPresenter.js.map +1 -0
- package/components/Table/components/Table/ColumnVisibility/ColumnsVisibilityPresenter.test.d.ts +1 -0
- package/components/Table/components/Table/ColumnVisibility/ColumnsVisibilityPresenter.test.js +128 -0
- package/components/Table/components/Table/ColumnVisibility/ColumnsVisibilityPresenter.test.js.map +1 -0
- package/components/Table/components/Table/ColumnVisibility/ColumnsVisibilityRepository.d.ts +10 -0
- package/components/Table/components/Table/ColumnVisibility/ColumnsVisibilityRepository.js +30 -0
- package/components/Table/components/Table/ColumnVisibility/ColumnsVisibilityRepository.js.map +1 -0
- package/components/Table/components/Table/ColumnVisibility/ColumnsVisibilityRepositoryFactory.d.ts +9 -0
- package/components/Table/components/Table/ColumnVisibility/ColumnsVisibilityRepositoryFactory.js +18 -0
- package/components/Table/components/Table/ColumnVisibility/ColumnsVisibilityRepositoryFactory.js.map +1 -0
- package/components/Table/components/Table/ColumnVisibility/ColumnsVisibilityUpdater.d.ts +8 -0
- package/components/Table/components/Table/ColumnVisibility/ColumnsVisibilityUpdater.js +16 -0
- package/components/Table/components/Table/ColumnVisibility/ColumnsVisibilityUpdater.js.map +1 -0
- package/components/Table/components/Table/ColumnVisibility/IColumnsVisibilityRepository.d.ts +5 -0
- package/components/Table/components/Table/ColumnVisibility/IColumnsVisibilityRepository.js +0 -0
- package/components/Table/components/Table/ColumnVisibility/IColumnsVisibilityUpdater.d.ts +4 -0
- package/components/Table/components/Table/ColumnVisibility/IColumnsVisibilityUpdater.js +0 -0
- package/components/Table/components/Table/ColumnVisibility/index.d.ts +7 -0
- package/components/Table/components/Table/ColumnVisibility/index.js +5 -0
- package/components/Table/components/Table/Columns/Column.d.ts +42 -0
- package/components/Table/components/Table/Columns/Column.js +21 -0
- package/components/Table/components/Table/Columns/Column.js.map +1 -0
- package/components/Table/components/Table/Columns/ColumnMapper.d.ts +7 -0
- package/components/Table/components/Table/Columns/ColumnMapper.js +34 -0
- package/components/Table/components/Table/Columns/ColumnMapper.js.map +1 -0
- package/components/Table/components/Table/Columns/ColumnsPresenter.d.ts +9 -0
- package/components/Table/components/Table/Columns/ColumnsPresenter.js +18 -0
- package/components/Table/components/Table/Columns/ColumnsPresenter.js.map +1 -0
- package/components/Table/components/Table/Columns/ColumnsPresenter.test.d.ts +1 -0
- package/components/Table/components/Table/Columns/ColumnsPresenter.test.js +73 -0
- package/components/Table/components/Table/Columns/ColumnsPresenter.test.js.map +1 -0
- package/components/Table/components/Table/Columns/ColumnsRepository.d.ts +9 -0
- package/components/Table/components/Table/Columns/ColumnsRepository.js +19 -0
- package/components/Table/components/Table/Columns/ColumnsRepository.js.map +1 -0
- package/components/Table/components/Table/Columns/ColumnsRepositoryFactory.d.ts +9 -0
- package/components/Table/components/Table/Columns/ColumnsRepositoryFactory.js +21 -0
- package/components/Table/components/Table/Columns/ColumnsRepositoryFactory.js.map +1 -0
- package/components/Table/components/Table/Columns/IColumnsRepository.d.ts +5 -0
- package/components/Table/components/Table/Columns/IColumnsRepository.js +0 -0
- package/components/Table/components/Table/Columns/index.d.ts +6 -0
- package/components/Table/components/Table/Columns/index.js +5 -0
- package/components/Table/components/Table/Table.d.ts +17 -0
- package/components/Table/components/Table/Table.js +47 -0
- package/components/Table/components/Table/Table.js.map +1 -0
- package/components/Table/components/Table/TableInner.d.ts +24 -0
- package/components/Table/components/Table/TableInner.js +40 -0
- package/components/Table/components/Table/TableInner.js.map +1 -0
- package/components/Table/components/Table/TablePresenter.d.ts +15 -0
- package/components/Table/components/Table/TablePresenter.js +15 -0
- package/components/Table/components/Table/TablePresenter.js.map +1 -0
- package/components/Table/components/Table/gateways/ColumnsVisibilityLocalStorageGateway.d.ts +9 -0
- package/components/Table/components/Table/gateways/ColumnsVisibilityLocalStorageGateway.js +15 -0
- package/components/Table/components/Table/gateways/ColumnsVisibilityLocalStorageGateway.js.map +1 -0
- package/components/Table/components/Table/gateways/IColumnsVisibilityGateway.d.ts +4 -0
- package/components/Table/components/Table/gateways/IColumnsVisibilityGateway.js +0 -0
- package/components/Table/components/Table/gateways/index.d.ts +2 -0
- package/components/Table/components/Table/gateways/index.js +1 -0
- package/components/Table/components/Table/index.d.ts +1 -0
- package/components/Table/components/Table/index.js +1 -0
- package/components/Table/components/index.d.ts +1 -0
- package/components/Table/components/index.js +1 -0
- package/components/Table/createTableData.d.ts +5 -0
- package/components/Table/createTableData.js +9 -0
- package/components/Table/createTableData.js.map +1 -0
- package/components/Table/index.d.ts +5 -0
- package/components/Table/index.js +5 -0
- package/components/Table/table.types.d.ts +9 -0
- package/components/Table/table.types.js +0 -0
- package/components/Table/useTableRow.d.ts +18 -0
- package/components/Table/useTableRow.js +22 -0
- package/components/Table/useTableRow.js.map +1 -0
- package/components/TeamsMultiAutocomplete/index.d.ts +1 -1
- package/components/TeamsMultiAutocomplete/index.js +12 -1
- package/components/TeamsMultiAutocomplete/index.js.map +1 -1
- package/components/index.d.ts +3 -2
- package/components/index.js +3 -2
- package/config/AdminConfig/Dashboard.d.ts +2 -1
- package/config/AdminConfig/Drawer.d.ts +10 -0
- package/config/AdminConfig/Drawer.js +19 -0
- package/config/AdminConfig/Drawer.js.map +1 -0
- package/config/AdminConfig/Form.d.ts +4 -2
- package/config/AdminConfig/LexicalTheme/Typography.d.ts +4 -4
- package/config/AdminConfig/LexicalTheme.d.ts +8 -6
- package/config/AdminConfig/Logo.d.ts +8 -6
- package/config/AdminConfig/Menu/MenuGroup.d.ts +13 -12
- package/config/AdminConfig/Menu/MenuItem.d.ts +7 -6
- package/config/AdminConfig/Menu/MenuLink.d.ts +7 -6
- package/config/AdminConfig/Menu/SupportMenu/SupportMenuItem.d.ts +13 -12
- package/config/AdminConfig/Menu/SupportMenu/SupportMenuLink.d.ts +7 -6
- package/config/AdminConfig/Menu/SupportMenu.d.ts +8 -6
- package/config/AdminConfig/Menu/UserMenu.d.ts +8 -6
- package/config/AdminConfig/Menu.d.ts +15 -12
- package/config/AdminConfig/Security.d.ts +2 -1
- package/config/AdminConfig/Tenant/TenantLogo.d.ts +8 -6
- package/config/AdminConfig/Tenant/TenantName.d.ts +8 -6
- package/config/AdminConfig/Tenant.d.ts +3 -1
- package/config/AdminConfig/Title.d.ts +8 -6
- package/config/AdminConfig.d.ts +21 -30
- package/config/AdminConfig.js +3 -0
- package/config/AdminConfig.js.map +1 -1
- package/config/table/Column.d.ts +34 -0
- package/config/table/Column.js +69 -0
- package/config/table/Column.js.map +1 -0
- package/config/table/Sorting.d.ts +11 -0
- package/config/table/Sorting.js +28 -0
- package/config/table/Sorting.js.map +1 -0
- package/config/table/index.d.ts +13 -0
- package/config/table/index.js +9 -0
- package/config/table/index.js.map +1 -0
- package/domain/Identity.js +1 -1
- package/domain/Identity.js.map +1 -1
- package/domain/securityPermissionsSchema.d.ts +20 -0
- package/domain/securityPermissionsSchema.js +34 -0
- package/domain/securityPermissionsSchema.js.map +1 -0
- package/exports/admin/form.d.ts +2 -0
- package/exports/admin/form.js +1 -0
- package/exports/admin/ui.d.ts +4 -0
- package/exports/admin/ui.js +2 -1
- package/exports/admin.d.ts +4 -0
- package/exports/admin.js +4 -0
- package/features/accessManagement/apiKeys/createApiKey/CreateApiKeyGateway.d.ts +12 -0
- package/features/accessManagement/apiKeys/createApiKey/CreateApiKeyGateway.js +50 -0
- package/features/accessManagement/apiKeys/createApiKey/CreateApiKeyGateway.js.map +1 -0
- package/features/accessManagement/apiKeys/createApiKey/CreateApiKeyRepository.d.ts +13 -0
- package/features/accessManagement/apiKeys/createApiKey/CreateApiKeyRepository.js +25 -0
- package/features/accessManagement/apiKeys/createApiKey/CreateApiKeyRepository.js.map +1 -0
- package/features/accessManagement/apiKeys/createApiKey/CreateApiKeyUseCase.d.ts +11 -0
- package/features/accessManagement/apiKeys/createApiKey/CreateApiKeyUseCase.js +18 -0
- package/features/accessManagement/apiKeys/createApiKey/CreateApiKeyUseCase.js.map +1 -0
- package/features/accessManagement/apiKeys/createApiKey/abstractions.d.ts +29 -0
- package/features/accessManagement/apiKeys/createApiKey/abstractions.js +7 -0
- package/features/accessManagement/apiKeys/createApiKey/abstractions.js.map +1 -0
- package/features/accessManagement/apiKeys/createApiKey/feature.d.ts +3 -0
- package/features/accessManagement/apiKeys/createApiKey/feature.js +21 -0
- package/features/accessManagement/apiKeys/createApiKey/feature.js.map +1 -0
- package/features/accessManagement/apiKeys/createApiKey/index.d.ts +3 -0
- package/features/accessManagement/apiKeys/createApiKey/index.js +2 -0
- package/features/accessManagement/apiKeys/deleteApiKey/DeleteApiKeyGateway.d.ts +11 -0
- package/features/accessManagement/apiKeys/deleteApiKey/DeleteApiKeyGateway.js +39 -0
- package/features/accessManagement/apiKeys/deleteApiKey/DeleteApiKeyGateway.js.map +1 -0
- package/features/accessManagement/apiKeys/deleteApiKey/DeleteApiKeyRepository.d.ts +12 -0
- package/features/accessManagement/apiKeys/deleteApiKey/DeleteApiKeyRepository.js +22 -0
- package/features/accessManagement/apiKeys/deleteApiKey/DeleteApiKeyRepository.js.map +1 -0
- package/features/accessManagement/apiKeys/deleteApiKey/DeleteApiKeyUseCase.d.ts +10 -0
- package/features/accessManagement/apiKeys/deleteApiKey/DeleteApiKeyUseCase.js +18 -0
- package/features/accessManagement/apiKeys/deleteApiKey/DeleteApiKeyUseCase.js.map +1 -0
- package/features/accessManagement/apiKeys/deleteApiKey/abstractions.d.ts +21 -0
- package/features/accessManagement/apiKeys/deleteApiKey/abstractions.js +7 -0
- package/features/accessManagement/apiKeys/deleteApiKey/abstractions.js.map +1 -0
- package/features/accessManagement/apiKeys/deleteApiKey/feature.d.ts +3 -0
- package/features/accessManagement/apiKeys/deleteApiKey/feature.js +21 -0
- package/features/accessManagement/apiKeys/deleteApiKey/feature.js.map +1 -0
- package/features/accessManagement/apiKeys/deleteApiKey/index.d.ts +3 -0
- package/features/accessManagement/apiKeys/deleteApiKey/index.js +2 -0
- package/features/accessManagement/apiKeys/getApiKey/GetApiKeyGateway.d.ts +12 -0
- package/features/accessManagement/apiKeys/getApiKey/GetApiKeyGateway.js +49 -0
- package/features/accessManagement/apiKeys/getApiKey/GetApiKeyGateway.js.map +1 -0
- package/features/accessManagement/apiKeys/getApiKey/GetApiKeyRepository.d.ts +11 -0
- package/features/accessManagement/apiKeys/getApiKey/GetApiKeyRepository.js +18 -0
- package/features/accessManagement/apiKeys/getApiKey/GetApiKeyRepository.js.map +1 -0
- package/features/accessManagement/apiKeys/getApiKey/GetApiKeyUseCase.d.ts +11 -0
- package/features/accessManagement/apiKeys/getApiKey/GetApiKeyUseCase.js +18 -0
- package/features/accessManagement/apiKeys/getApiKey/GetApiKeyUseCase.js.map +1 -0
- package/features/accessManagement/apiKeys/getApiKey/abstractions.d.ts +22 -0
- package/features/accessManagement/apiKeys/getApiKey/abstractions.js +7 -0
- package/features/accessManagement/apiKeys/getApiKey/abstractions.js.map +1 -0
- package/features/accessManagement/apiKeys/getApiKey/feature.d.ts +3 -0
- package/features/accessManagement/apiKeys/getApiKey/feature.js +21 -0
- package/features/accessManagement/apiKeys/getApiKey/feature.js.map +1 -0
- package/features/accessManagement/apiKeys/getApiKey/index.d.ts +3 -0
- package/features/accessManagement/apiKeys/getApiKey/index.js +2 -0
- package/features/accessManagement/apiKeys/listApiKeys/ListApiKeysGateway.d.ts +11 -0
- package/features/accessManagement/apiKeys/listApiKeys/ListApiKeysGateway.js +44 -0
- package/features/accessManagement/apiKeys/listApiKeys/ListApiKeysGateway.js.map +1 -0
- package/features/accessManagement/apiKeys/listApiKeys/ListApiKeysRepository.d.ts +11 -0
- package/features/accessManagement/apiKeys/listApiKeys/ListApiKeysRepository.js +22 -0
- package/features/accessManagement/apiKeys/listApiKeys/ListApiKeysRepository.js.map +1 -0
- package/features/accessManagement/apiKeys/listApiKeys/ListApiKeysUseCase.d.ts +10 -0
- package/features/accessManagement/apiKeys/listApiKeys/ListApiKeysUseCase.js +18 -0
- package/features/accessManagement/apiKeys/listApiKeys/ListApiKeysUseCase.js.map +1 -0
- package/features/accessManagement/apiKeys/listApiKeys/abstractions.d.ts +30 -0
- package/features/accessManagement/apiKeys/listApiKeys/abstractions.js +8 -0
- package/features/accessManagement/apiKeys/listApiKeys/abstractions.js.map +1 -0
- package/features/accessManagement/apiKeys/listApiKeys/feature.d.ts +3 -0
- package/features/accessManagement/apiKeys/listApiKeys/feature.js +23 -0
- package/features/accessManagement/apiKeys/listApiKeys/feature.js.map +1 -0
- package/features/accessManagement/apiKeys/listApiKeys/index.d.ts +3 -0
- package/features/accessManagement/apiKeys/listApiKeys/index.js +2 -0
- package/features/accessManagement/apiKeys/updateApiKey/UpdateApiKeyGateway.d.ts +12 -0
- package/features/accessManagement/apiKeys/updateApiKey/UpdateApiKeyGateway.js +51 -0
- package/features/accessManagement/apiKeys/updateApiKey/UpdateApiKeyGateway.js.map +1 -0
- package/features/accessManagement/apiKeys/updateApiKey/UpdateApiKeyRepository.d.ts +13 -0
- package/features/accessManagement/apiKeys/updateApiKey/UpdateApiKeyRepository.js +23 -0
- package/features/accessManagement/apiKeys/updateApiKey/UpdateApiKeyRepository.js.map +1 -0
- package/features/accessManagement/apiKeys/updateApiKey/UpdateApiKeyUseCase.d.ts +11 -0
- package/features/accessManagement/apiKeys/updateApiKey/UpdateApiKeyUseCase.js +18 -0
- package/features/accessManagement/apiKeys/updateApiKey/UpdateApiKeyUseCase.js.map +1 -0
- package/features/accessManagement/apiKeys/updateApiKey/abstractions.d.ts +28 -0
- package/features/accessManagement/apiKeys/updateApiKey/abstractions.js +7 -0
- package/features/accessManagement/apiKeys/updateApiKey/abstractions.js.map +1 -0
- package/features/accessManagement/apiKeys/updateApiKey/feature.d.ts +3 -0
- package/features/accessManagement/apiKeys/updateApiKey/feature.js +21 -0
- package/features/accessManagement/apiKeys/updateApiKey/feature.js.map +1 -0
- package/features/accessManagement/apiKeys/updateApiKey/index.d.ts +3 -0
- package/features/accessManagement/apiKeys/updateApiKey/index.js +2 -0
- package/features/accessManagement/constants.d.ts +5 -0
- package/features/accessManagement/constants.js +9 -0
- package/features/accessManagement/constants.js.map +1 -0
- package/features/accessManagement/permissions/abstractions.d.ts +17 -0
- package/features/accessManagement/permissions/abstractions.js +6 -0
- package/features/accessManagement/permissions/abstractions.js.map +1 -0
- package/features/accessManagement/permissions/feature.d.ts +14 -0
- package/features/accessManagement/permissions/feature.js +7 -0
- package/features/accessManagement/permissions/feature.js.map +1 -0
- package/features/accessManagement/roles/createRole/CreateRoleGateway.d.ts +12 -0
- package/features/accessManagement/roles/createRole/CreateRoleGateway.js +51 -0
- package/features/accessManagement/roles/createRole/CreateRoleGateway.js.map +1 -0
- package/features/accessManagement/roles/createRole/CreateRoleRepository.d.ts +13 -0
- package/features/accessManagement/roles/createRole/CreateRoleRepository.js +25 -0
- package/features/accessManagement/roles/createRole/CreateRoleRepository.js.map +1 -0
- package/features/accessManagement/roles/createRole/CreateRoleUseCase.d.ts +11 -0
- package/features/accessManagement/roles/createRole/CreateRoleUseCase.js +18 -0
- package/features/accessManagement/roles/createRole/CreateRoleUseCase.js.map +1 -0
- package/features/accessManagement/roles/createRole/abstractions.d.ts +29 -0
- package/features/accessManagement/roles/createRole/abstractions.js +7 -0
- package/features/accessManagement/roles/createRole/abstractions.js.map +1 -0
- package/features/accessManagement/roles/createRole/feature.d.ts +3 -0
- package/features/accessManagement/roles/createRole/feature.js +21 -0
- package/features/accessManagement/roles/createRole/feature.js.map +1 -0
- package/features/accessManagement/roles/createRole/index.d.ts +3 -0
- package/features/accessManagement/roles/createRole/index.js +2 -0
- package/features/accessManagement/roles/deleteRole/DeleteRoleGateway.d.ts +11 -0
- package/features/accessManagement/roles/deleteRole/DeleteRoleGateway.js +40 -0
- package/features/accessManagement/roles/deleteRole/DeleteRoleGateway.js.map +1 -0
- package/features/accessManagement/roles/deleteRole/DeleteRoleRepository.d.ts +12 -0
- package/features/accessManagement/roles/deleteRole/DeleteRoleRepository.js +22 -0
- package/features/accessManagement/roles/deleteRole/DeleteRoleRepository.js.map +1 -0
- package/features/accessManagement/roles/deleteRole/DeleteRoleUseCase.d.ts +10 -0
- package/features/accessManagement/roles/deleteRole/DeleteRoleUseCase.js +18 -0
- package/features/accessManagement/roles/deleteRole/DeleteRoleUseCase.js.map +1 -0
- package/features/accessManagement/roles/deleteRole/abstractions.d.ts +21 -0
- package/features/accessManagement/roles/deleteRole/abstractions.js +7 -0
- package/features/accessManagement/roles/deleteRole/abstractions.js.map +1 -0
- package/features/accessManagement/roles/deleteRole/feature.d.ts +3 -0
- package/features/accessManagement/roles/deleteRole/feature.js +21 -0
- package/features/accessManagement/roles/deleteRole/feature.js.map +1 -0
- package/features/accessManagement/roles/deleteRole/index.d.ts +3 -0
- package/features/accessManagement/roles/deleteRole/index.js +2 -0
- package/features/accessManagement/roles/getRole/GetRoleGateway.d.ts +12 -0
- package/features/accessManagement/roles/getRole/GetRoleGateway.js +50 -0
- package/features/accessManagement/roles/getRole/GetRoleGateway.js.map +1 -0
- package/features/accessManagement/roles/getRole/GetRoleRepository.d.ts +11 -0
- package/features/accessManagement/roles/getRole/GetRoleRepository.js +18 -0
- package/features/accessManagement/roles/getRole/GetRoleRepository.js.map +1 -0
- package/features/accessManagement/roles/getRole/GetRoleUseCase.d.ts +11 -0
- package/features/accessManagement/roles/getRole/GetRoleUseCase.js +18 -0
- package/features/accessManagement/roles/getRole/GetRoleUseCase.js.map +1 -0
- package/features/accessManagement/roles/getRole/abstractions.d.ts +22 -0
- package/features/accessManagement/roles/getRole/abstractions.js +7 -0
- package/features/accessManagement/roles/getRole/abstractions.js.map +1 -0
- package/features/accessManagement/roles/getRole/feature.d.ts +3 -0
- package/features/accessManagement/roles/getRole/feature.js +21 -0
- package/features/accessManagement/roles/getRole/feature.js.map +1 -0
- package/features/accessManagement/roles/getRole/index.d.ts +3 -0
- package/features/accessManagement/roles/getRole/index.js +2 -0
- package/features/accessManagement/roles/listRoles/ListRolesGateway.d.ts +11 -0
- package/features/accessManagement/roles/listRoles/ListRolesGateway.js +45 -0
- package/features/accessManagement/roles/listRoles/ListRolesGateway.js.map +1 -0
- package/features/accessManagement/roles/listRoles/ListRolesRepository.d.ts +11 -0
- package/features/accessManagement/roles/listRoles/ListRolesRepository.js +22 -0
- package/features/accessManagement/roles/listRoles/ListRolesRepository.js.map +1 -0
- package/features/accessManagement/roles/listRoles/ListRolesUseCase.d.ts +10 -0
- package/features/accessManagement/roles/listRoles/ListRolesUseCase.js +18 -0
- package/features/accessManagement/roles/listRoles/ListRolesUseCase.js.map +1 -0
- package/features/accessManagement/roles/listRoles/abstractions.d.ts +30 -0
- package/features/accessManagement/roles/listRoles/abstractions.js +8 -0
- package/features/accessManagement/roles/listRoles/abstractions.js.map +1 -0
- package/features/accessManagement/roles/listRoles/feature.d.ts +3 -0
- package/features/accessManagement/roles/listRoles/feature.js +23 -0
- package/features/accessManagement/roles/listRoles/feature.js.map +1 -0
- package/features/accessManagement/roles/listRoles/index.d.ts +3 -0
- package/features/accessManagement/roles/listRoles/index.js +2 -0
- package/features/accessManagement/roles/updateRole/UpdateRoleGateway.d.ts +12 -0
- package/features/accessManagement/roles/updateRole/UpdateRoleGateway.js +52 -0
- package/features/accessManagement/roles/updateRole/UpdateRoleGateway.js.map +1 -0
- package/features/accessManagement/roles/updateRole/UpdateRoleRepository.d.ts +13 -0
- package/features/accessManagement/roles/updateRole/UpdateRoleRepository.js +23 -0
- package/features/accessManagement/roles/updateRole/UpdateRoleRepository.js.map +1 -0
- package/features/accessManagement/roles/updateRole/UpdateRoleUseCase.d.ts +11 -0
- package/features/accessManagement/roles/updateRole/UpdateRoleUseCase.js +18 -0
- package/features/accessManagement/roles/updateRole/UpdateRoleUseCase.js.map +1 -0
- package/features/accessManagement/roles/updateRole/abstractions.d.ts +28 -0
- package/features/accessManagement/roles/updateRole/abstractions.js +7 -0
- package/features/accessManagement/roles/updateRole/abstractions.js.map +1 -0
- package/features/accessManagement/roles/updateRole/feature.d.ts +3 -0
- package/features/accessManagement/roles/updateRole/feature.js +21 -0
- package/features/accessManagement/roles/updateRole/feature.js.map +1 -0
- package/features/accessManagement/roles/updateRole/index.d.ts +3 -0
- package/features/accessManagement/roles/updateRole/index.js +2 -0
- package/features/accessManagement/teams/createTeam/CreateTeamGateway.d.ts +12 -0
- package/features/accessManagement/teams/createTeam/CreateTeamGateway.js +55 -0
- package/features/accessManagement/teams/createTeam/CreateTeamGateway.js.map +1 -0
- package/features/accessManagement/teams/createTeam/CreateTeamRepository.d.ts +13 -0
- package/features/accessManagement/teams/createTeam/CreateTeamRepository.js +25 -0
- package/features/accessManagement/teams/createTeam/CreateTeamRepository.js.map +1 -0
- package/features/accessManagement/teams/createTeam/CreateTeamUseCase.d.ts +11 -0
- package/features/accessManagement/teams/createTeam/CreateTeamUseCase.js +18 -0
- package/features/accessManagement/teams/createTeam/CreateTeamUseCase.js.map +1 -0
- package/features/accessManagement/teams/createTeam/abstractions.d.ts +28 -0
- package/features/accessManagement/teams/createTeam/abstractions.js +7 -0
- package/features/accessManagement/teams/createTeam/abstractions.js.map +1 -0
- package/features/accessManagement/teams/createTeam/feature.d.ts +3 -0
- package/features/accessManagement/teams/createTeam/feature.js +21 -0
- package/features/accessManagement/teams/createTeam/feature.js.map +1 -0
- package/features/accessManagement/teams/createTeam/index.d.ts +3 -0
- package/features/accessManagement/teams/createTeam/index.js +2 -0
- package/features/accessManagement/teams/deleteTeam/DeleteTeamGateway.d.ts +11 -0
- package/features/accessManagement/teams/deleteTeam/DeleteTeamGateway.js +40 -0
- package/features/accessManagement/teams/deleteTeam/DeleteTeamGateway.js.map +1 -0
- package/features/accessManagement/teams/deleteTeam/DeleteTeamRepository.d.ts +12 -0
- package/features/accessManagement/teams/deleteTeam/DeleteTeamRepository.js +22 -0
- package/features/accessManagement/teams/deleteTeam/DeleteTeamRepository.js.map +1 -0
- package/features/accessManagement/teams/deleteTeam/DeleteTeamUseCase.d.ts +10 -0
- package/features/accessManagement/teams/deleteTeam/DeleteTeamUseCase.js +18 -0
- package/features/accessManagement/teams/deleteTeam/DeleteTeamUseCase.js.map +1 -0
- package/features/accessManagement/teams/deleteTeam/abstractions.d.ts +21 -0
- package/features/accessManagement/teams/deleteTeam/abstractions.js +7 -0
- package/features/accessManagement/teams/deleteTeam/abstractions.js.map +1 -0
- package/features/accessManagement/teams/deleteTeam/feature.d.ts +3 -0
- package/features/accessManagement/teams/deleteTeam/feature.js +21 -0
- package/features/accessManagement/teams/deleteTeam/feature.js.map +1 -0
- package/features/accessManagement/teams/deleteTeam/index.d.ts +3 -0
- package/features/accessManagement/teams/deleteTeam/index.js +2 -0
- package/features/accessManagement/teams/getTeam/GetTeamGateway.d.ts +12 -0
- package/features/accessManagement/teams/getTeam/GetTeamGateway.js +54 -0
- package/features/accessManagement/teams/getTeam/GetTeamGateway.js.map +1 -0
- package/features/accessManagement/teams/getTeam/GetTeamRepository.d.ts +11 -0
- package/features/accessManagement/teams/getTeam/GetTeamRepository.js +18 -0
- package/features/accessManagement/teams/getTeam/GetTeamRepository.js.map +1 -0
- package/features/accessManagement/teams/getTeam/GetTeamUseCase.d.ts +11 -0
- package/features/accessManagement/teams/getTeam/GetTeamUseCase.js +18 -0
- package/features/accessManagement/teams/getTeam/GetTeamUseCase.js.map +1 -0
- package/features/accessManagement/teams/getTeam/abstractions.d.ts +22 -0
- package/features/accessManagement/teams/getTeam/abstractions.js +7 -0
- package/features/accessManagement/teams/getTeam/abstractions.js.map +1 -0
- package/features/accessManagement/teams/getTeam/feature.d.ts +3 -0
- package/features/accessManagement/teams/getTeam/feature.js +21 -0
- package/features/accessManagement/teams/getTeam/feature.js.map +1 -0
- package/features/accessManagement/teams/getTeam/index.d.ts +3 -0
- package/features/accessManagement/teams/getTeam/index.js +2 -0
- package/features/accessManagement/teams/listTeams/ListTeamsGateway.d.ts +11 -0
- package/features/accessManagement/teams/listTeams/ListTeamsGateway.js +49 -0
- package/features/accessManagement/teams/listTeams/ListTeamsGateway.js.map +1 -0
- package/features/accessManagement/teams/listTeams/ListTeamsRepository.d.ts +11 -0
- package/features/accessManagement/teams/listTeams/ListTeamsRepository.js +22 -0
- package/features/accessManagement/teams/listTeams/ListTeamsRepository.js.map +1 -0
- package/features/accessManagement/teams/listTeams/ListTeamsUseCase.d.ts +10 -0
- package/features/accessManagement/teams/listTeams/ListTeamsUseCase.js +18 -0
- package/features/accessManagement/teams/listTeams/ListTeamsUseCase.js.map +1 -0
- package/features/accessManagement/teams/listTeams/abstractions.d.ts +30 -0
- package/features/accessManagement/teams/listTeams/abstractions.js +8 -0
- package/features/accessManagement/teams/listTeams/abstractions.js.map +1 -0
- package/features/accessManagement/teams/listTeams/feature.d.ts +3 -0
- package/features/accessManagement/teams/listTeams/feature.js +23 -0
- package/features/accessManagement/teams/listTeams/feature.js.map +1 -0
- package/features/accessManagement/teams/listTeams/index.d.ts +3 -0
- package/features/accessManagement/teams/listTeams/index.js +2 -0
- package/features/accessManagement/teams/updateTeam/UpdateTeamGateway.d.ts +12 -0
- package/features/accessManagement/teams/updateTeam/UpdateTeamGateway.js +56 -0
- package/features/accessManagement/teams/updateTeam/UpdateTeamGateway.js.map +1 -0
- package/features/accessManagement/teams/updateTeam/UpdateTeamRepository.d.ts +13 -0
- package/features/accessManagement/teams/updateTeam/UpdateTeamRepository.js +23 -0
- package/features/accessManagement/teams/updateTeam/UpdateTeamRepository.js.map +1 -0
- package/features/accessManagement/teams/updateTeam/UpdateTeamUseCase.d.ts +11 -0
- package/features/accessManagement/teams/updateTeam/UpdateTeamUseCase.js +18 -0
- package/features/accessManagement/teams/updateTeam/UpdateTeamUseCase.js.map +1 -0
- package/features/accessManagement/teams/updateTeam/abstractions.d.ts +27 -0
- package/features/accessManagement/teams/updateTeam/abstractions.js +7 -0
- package/features/accessManagement/teams/updateTeam/abstractions.js.map +1 -0
- package/features/accessManagement/teams/updateTeam/feature.d.ts +3 -0
- package/features/accessManagement/teams/updateTeam/feature.js +21 -0
- package/features/accessManagement/teams/updateTeam/feature.js.map +1 -0
- package/features/accessManagement/teams/updateTeam/index.d.ts +3 -0
- package/features/accessManagement/teams/updateTeam/index.js +2 -0
- package/features/accessManagement/types.d.ts +34 -0
- package/features/accessManagement/types.js +0 -0
- package/features/clipboard/ClipboardService.d.ts +15 -0
- package/features/clipboard/ClipboardService.js +51 -0
- package/features/clipboard/ClipboardService.js.map +1 -0
- package/features/clipboard/abstractions.d.ts +14 -0
- package/features/clipboard/abstractions.js +5 -0
- package/features/clipboard/abstractions.js.map +1 -0
- package/features/clipboard/feature.d.ts +3 -0
- package/features/clipboard/feature.js +17 -0
- package/features/clipboard/feature.js.map +1 -0
- package/features/clipboard/index.d.ts +2 -0
- package/features/clipboard/index.js +2 -0
- package/features/confirmation/Confirmation.d.ts +11 -0
- package/features/confirmation/Confirmation.js +29 -0
- package/features/confirmation/Confirmation.js.map +1 -0
- package/features/confirmation/ConfirmationBridge.d.ts +1 -0
- package/features/confirmation/ConfirmationBridge.js +20 -0
- package/features/confirmation/ConfirmationBridge.js.map +1 -0
- package/features/confirmation/abstractions.d.ts +15 -0
- package/features/confirmation/abstractions.js +6 -0
- package/features/confirmation/abstractions.js.map +1 -0
- package/features/confirmation/feature.d.ts +1 -0
- package/features/confirmation/feature.js +11 -0
- package/features/confirmation/feature.js.map +1 -0
- package/features/confirmation/index.d.ts +3 -0
- package/features/confirmation/index.js +3 -0
- package/features/dateFormatter/DefaultDateFormatter.d.ts +8 -0
- package/features/dateFormatter/DefaultDateFormatter.js +25 -0
- package/features/dateFormatter/DefaultDateFormatter.js.map +1 -0
- package/features/dateFormatter/abstractions.d.ts +13 -0
- package/features/dateFormatter/abstractions.js +5 -0
- package/features/dateFormatter/abstractions.js.map +1 -0
- package/features/dateFormatter/feature.d.ts +3 -0
- package/features/dateFormatter/feature.js +17 -0
- package/features/dateFormatter/feature.js.map +1 -0
- package/features/dateFormatter/formatUtcOffset.d.ts +1 -0
- package/features/dateFormatter/formatUtcOffset.js +11 -0
- package/features/dateFormatter/formatUtcOffset.js.map +1 -0
- package/features/dateFormatter/index.d.ts +4 -0
- package/features/dateFormatter/index.js +4 -0
- package/features/dateFormatter/useDateFormatter.d.ts +5 -0
- package/features/dateFormatter/useDateFormatter.js +8 -0
- package/features/dateFormatter/useDateFormatter.js.map +1 -0
- package/features/formModel/AccessControlRuleEvaluator.d.ts +12 -0
- package/features/formModel/AccessControlRuleEvaluator.js +30 -0
- package/features/formModel/AccessControlRuleEvaluator.js.map +1 -0
- package/features/formModel/AccessControlRuleEvaluator.test.d.ts +1 -0
- package/features/formModel/AccessControlRuleEvaluator.test.js +219 -0
- package/features/formModel/AccessControlRuleEvaluator.test.js.map +1 -0
- package/features/formModel/ConditionRuleEvaluator.js +34 -4
- package/features/formModel/ConditionRuleEvaluator.js.map +1 -1
- package/features/formModel/Field.d.ts +12 -5
- package/features/formModel/Field.js +96 -13
- package/features/formModel/Field.js.map +1 -1
- package/features/formModel/FieldBuilder.d.ts +7 -3
- package/features/formModel/FieldBuilder.js +17 -2
- package/features/formModel/FieldBuilder.js.map +1 -1
- package/features/formModel/FieldBuilder.test.js +6 -4
- package/features/formModel/FieldBuilder.test.js.map +1 -1
- package/features/formModel/FocusManager.js +10 -3
- package/features/formModel/FocusManager.js.map +1 -1
- package/features/formModel/FormErrors.d.ts +3 -2
- package/features/formModel/FormErrors.js +4 -3
- package/features/formModel/FormErrors.js.map +1 -1
- package/features/formModel/FormModel.d.ts +8 -2
- package/features/formModel/FormModel.js +40 -19
- package/features/formModel/FormModel.js.map +1 -1
- package/features/formModel/FormModel.test.js +514 -23
- package/features/formModel/FormModel.test.js.map +1 -1
- package/features/formModel/FormView.d.ts +4 -8
- package/features/formModel/FormView.js +25 -6
- package/features/formModel/FormView.js.map +1 -1
- package/features/formModel/LayoutBuilderFactory.d.ts +3 -2
- package/features/formModel/LayoutBuilderFactory.js +58 -5
- package/features/formModel/LayoutBuilderFactory.js.map +1 -1
- package/features/formModel/LayoutMutator.js +6 -0
- package/features/formModel/LayoutMutator.js.map +1 -1
- package/features/formModel/LayoutResolver.d.ts +1 -0
- package/features/formModel/LayoutResolver.js +27 -6
- package/features/formModel/LayoutResolver.js.map +1 -1
- package/features/formModel/ObjectField.d.ts +5 -2
- package/features/formModel/ObjectField.js +68 -3
- package/features/formModel/ObjectField.js.map +1 -1
- package/features/formModel/PresenterErrors.d.ts +2 -2
- package/features/formModel/Rules.test.js +224 -16
- package/features/formModel/Rules.test.js.map +1 -1
- package/features/formModel/abstractions.d.ts +87 -21
- package/features/formModel/abstractions.js.map +1 -1
- package/features/formModel/createFieldRenderer.d.ts +42 -0
- package/features/formModel/createFieldRenderer.js +34 -10
- package/features/formModel/createFieldRenderer.js.map +1 -1
- package/features/formModel/demo/FormModelDemo.d.ts +2 -2
- package/features/formModel/demo/FormModelPhase11Presenter.js +5 -5
- package/features/formModel/demo/FormModelPhase11Presenter.js.map +1 -1
- package/features/formModel/feature.js +6 -1
- package/features/formModel/feature.js.map +1 -1
- package/features/formModel/fieldTypes/ObjectFieldType.js +2 -1
- package/features/formModel/fieldTypes/ObjectFieldType.js.map +1 -1
- package/features/formModel/fieldTypes/PasswordFieldType.d.ts +18 -0
- package/features/formModel/fieldTypes/PasswordFieldType.js +23 -0
- package/features/formModel/fieldTypes/PasswordFieldType.js.map +1 -0
- package/features/formModel/fieldTypes/PermissionsFieldType.d.ts +18 -0
- package/features/formModel/fieldTypes/PermissionsFieldType.js +27 -0
- package/features/formModel/fieldTypes/PermissionsFieldType.js.map +1 -0
- package/features/formModel/fieldTypes/RolesMultiSelectFieldType.d.ts +18 -0
- package/features/formModel/fieldTypes/RolesMultiSelectFieldType.js +24 -0
- package/features/formModel/fieldTypes/RolesMultiSelectFieldType.js.map +1 -0
- package/features/formModel/fieldTypes/index.d.ts +3 -0
- package/features/formModel/fieldTypes/index.js +3 -0
- package/features/formModel/hasSubtreeFocusRequest.d.ts +12 -0
- package/features/formModel/hasSubtreeFocusRequest.js +15 -0
- package/features/formModel/hasSubtreeFocusRequest.js.map +1 -0
- package/features/formModel/index.d.ts +3 -3
- package/features/formModel/index.js +4 -4
- package/features/formModel/renderers.d.ts +5 -0
- package/features/formModel/renderers.js +5 -0
- package/features/listCache/ListCache.d.ts +4 -1
- package/features/listCache/ListCache.js +13 -3
- package/features/listCache/ListCache.js.map +1 -1
- package/features/notifications/Notifications.d.ts +16 -0
- package/features/notifications/Notifications.js +39 -0
- package/features/notifications/Notifications.js.map +1 -0
- package/features/notifications/NotificationsPresenter.d.ts +11 -0
- package/features/notifications/NotificationsPresenter.js +27 -0
- package/features/notifications/NotificationsPresenter.js.map +1 -0
- package/features/notifications/NotificationsRenderer.d.ts +7 -0
- package/features/notifications/NotificationsRenderer.js +38 -0
- package/features/notifications/NotificationsRenderer.js.map +1 -0
- package/features/notifications/abstractions.d.ts +38 -0
- package/features/notifications/abstractions.js +6 -0
- package/features/notifications/abstractions.js.map +1 -0
- package/features/notifications/feature.d.ts +4 -0
- package/features/notifications/feature.js +20 -0
- package/features/notifications/feature.js.map +1 -0
- package/features/notifications/index.d.ts +3 -0
- package/features/notifications/index.js +3 -0
- package/features/wcp/ReactLicense.d.ts +9 -0
- package/features/wcp/ReactLicense.js +27 -0
- package/features/wcp/ReactLicense.js.map +1 -1
- package/hooks/index.d.ts +4 -0
- package/hooks/index.js +4 -0
- package/hooks/useDrawer.d.ts +9 -0
- package/hooks/useDrawer.js +19 -0
- package/hooks/useDrawer.js.map +1 -0
- package/hooks/useHotkeys.js +6 -6
- package/hooks/useHotkeys.js.map +1 -1
- package/hooks/useNamedConfirmationDialog.d.ts +9 -0
- package/hooks/useNamedConfirmationDialog.js +20 -0
- package/hooks/useNamedConfirmationDialog.js.map +1 -0
- package/hooks/useOpenDrawer.d.ts +7 -0
- package/hooks/useOpenDrawer.js +18 -0
- package/hooks/useOpenDrawer.js.map +1 -0
- package/hooks/useSnackbar.js.map +1 -1
- package/index.d.ts +42 -1
- package/index.js +44 -7
- package/modules/AccessManagementExtension.d.ts +2 -0
- package/modules/AccessManagementExtension.js +145 -0
- package/modules/AccessManagementExtension.js.map +1 -0
- package/package.json +36 -34
- package/presentation/accessManagement/SecurityPermissions.d.ts +2 -0
- package/presentation/accessManagement/SecurityPermissions.js +54 -0
- package/presentation/accessManagement/SecurityPermissions.js.map +1 -0
- package/presentation/accessManagement/apiKeys/ApiKeysDataSource.d.ts +13 -0
- package/presentation/accessManagement/apiKeys/ApiKeysDataSource.js +23 -0
- package/presentation/accessManagement/apiKeys/ApiKeysDataSource.js.map +1 -0
- package/presentation/accessManagement/apiKeys/ApiKeysPresenter.d.ts +38 -0
- package/presentation/accessManagement/apiKeys/ApiKeysPresenter.js +193 -0
- package/presentation/accessManagement/apiKeys/ApiKeysPresenter.js.map +1 -0
- package/presentation/accessManagement/apiKeys/abstractions.d.ts +25 -0
- package/presentation/accessManagement/apiKeys/abstractions.js +5 -0
- package/presentation/accessManagement/apiKeys/abstractions.js.map +1 -0
- package/presentation/accessManagement/apiKeys/components/ApiKeysView.d.ts +4 -0
- package/presentation/accessManagement/apiKeys/components/ApiKeysView.js +234 -0
- package/presentation/accessManagement/apiKeys/components/ApiKeysView.js.map +1 -0
- package/presentation/accessManagement/apiKeys/feature.d.ts +3 -0
- package/presentation/accessManagement/apiKeys/feature.js +17 -0
- package/presentation/accessManagement/apiKeys/feature.js.map +1 -0
- package/presentation/accessManagement/roles/RolesDataSource.d.ts +13 -0
- package/presentation/accessManagement/roles/RolesDataSource.js +23 -0
- package/presentation/accessManagement/roles/RolesDataSource.js.map +1 -0
- package/presentation/accessManagement/roles/RolesPresenter.d.ts +38 -0
- package/presentation/accessManagement/roles/RolesPresenter.js +201 -0
- package/presentation/accessManagement/roles/RolesPresenter.js.map +1 -0
- package/presentation/accessManagement/roles/abstractions.d.ts +27 -0
- package/presentation/accessManagement/roles/abstractions.js +5 -0
- package/presentation/accessManagement/roles/abstractions.js.map +1 -0
- package/presentation/accessManagement/roles/components/RolesView.d.ts +4 -0
- package/presentation/accessManagement/roles/components/RolesView.js +232 -0
- package/presentation/accessManagement/roles/components/RolesView.js.map +1 -0
- package/presentation/accessManagement/roles/feature.d.ts +3 -0
- package/presentation/accessManagement/roles/feature.js +17 -0
- package/presentation/accessManagement/roles/feature.js.map +1 -0
- package/presentation/accessManagement/routes.d.ts +21 -0
- package/presentation/accessManagement/routes.js +36 -0
- package/presentation/accessManagement/routes.js.map +1 -0
- package/presentation/accessManagement/teams/TeamsDataSource.d.ts +13 -0
- package/presentation/accessManagement/teams/TeamsDataSource.js +23 -0
- package/presentation/accessManagement/teams/TeamsDataSource.js.map +1 -0
- package/presentation/accessManagement/teams/TeamsPresenter.d.ts +39 -0
- package/presentation/accessManagement/teams/TeamsPresenter.js +200 -0
- package/presentation/accessManagement/teams/TeamsPresenter.js.map +1 -0
- package/presentation/accessManagement/teams/abstractions.d.ts +26 -0
- package/presentation/accessManagement/teams/abstractions.js +5 -0
- package/presentation/accessManagement/teams/abstractions.js.map +1 -0
- package/presentation/accessManagement/teams/components/TeamsView.d.ts +4 -0
- package/presentation/accessManagement/teams/components/TeamsView.js +214 -0
- package/presentation/accessManagement/teams/components/TeamsView.js.map +1 -0
- package/presentation/accessManagement/teams/feature.d.ts +3 -0
- package/presentation/accessManagement/teams/feature.js +17 -0
- package/presentation/accessManagement/teams/feature.js.map +1 -0
- package/presentation/commandPalette/CommandPalettePresenter.d.ts +16 -0
- package/presentation/commandPalette/CommandPalettePresenter.js +71 -0
- package/presentation/commandPalette/CommandPalettePresenter.js.map +1 -0
- package/presentation/commandPalette/abstractions.d.ts +62 -0
- package/presentation/commandPalette/abstractions.js +7 -0
- package/presentation/commandPalette/abstractions.js.map +1 -0
- package/presentation/commandPalette/commands/CopyCurrentUrlCommand.d.ts +15 -0
- package/presentation/commandPalette/commands/CopyCurrentUrlCommand.js +33 -0
- package/presentation/commandPalette/commands/CopyCurrentUrlCommand.js.map +1 -0
- package/presentation/commandPalette/commands/SendMessageCommand.d.ts +23 -0
- package/presentation/commandPalette/commands/SendMessageCommand.js +66 -0
- package/presentation/commandPalette/commands/SendMessageCommand.js.map +1 -0
- package/presentation/commandPalette/commands/SignOutCommand.d.ts +18 -0
- package/presentation/commandPalette/commands/SignOutCommand.js +37 -0
- package/presentation/commandPalette/commands/SignOutCommand.js.map +1 -0
- package/presentation/commandPalette/commands/feature.d.ts +5 -0
- package/presentation/commandPalette/commands/feature.js +15 -0
- package/presentation/commandPalette/commands/feature.js.map +1 -0
- package/presentation/commandPalette/feature.d.ts +3 -0
- package/presentation/commandPalette/feature.js +17 -0
- package/presentation/commandPalette/feature.js.map +1 -0
- package/presentation/commandPalette/index.d.ts +3 -0
- package/presentation/commandPalette/index.js +2 -0
- package/presentation/installation/components/SystemInstaller/SystemInstaller.d.ts +2 -2
- package/presentation/installation/components/SystemInstaller/SystemInstaller.js +3 -1
- package/presentation/installation/components/SystemInstaller/SystemInstaller.js.map +1 -1
- package/presentation/listPresenter/FolderAwareDataSource.d.ts +50 -0
- package/presentation/listPresenter/FolderAwareDataSource.js +135 -0
- package/presentation/listPresenter/FolderAwareDataSource.js.map +1 -0
- package/presentation/listPresenter/ListPresenter.d.ts +4 -0
- package/presentation/listPresenter/ListPresenter.js +30 -4
- package/presentation/listPresenter/ListPresenter.js.map +1 -1
- package/presentation/listPresenter/QueryMatcher.d.ts +56 -0
- package/presentation/listPresenter/QueryMatcher.js +59 -0
- package/presentation/listPresenter/QueryMatcher.js.map +1 -0
- package/presentation/listPresenter/SimpleDataSource.d.ts +15 -0
- package/presentation/listPresenter/SimpleDataSource.js +70 -0
- package/presentation/listPresenter/SimpleDataSource.js.map +1 -0
- package/presentation/listPresenter/abstractions.d.ts +9 -0
- package/presentation/listPresenter/abstractions.js.map +1 -1
- package/presentation/listPresenter/index.d.ts +5 -0
- package/presentation/listPresenter/index.js +3 -0
- package/presentation/security/components/HasPermission.d.ts +1 -1
- package/presentation/sortable/SortablePresenter.d.ts +23 -0
- package/presentation/sortable/SortablePresenter.js +175 -0
- package/presentation/sortable/SortablePresenter.js.map +1 -0
- package/presentation/sortable/abstractions.d.ts +24 -0
- package/presentation/sortable/abstractions.js +5 -0
- package/presentation/sortable/abstractions.js.map +1 -0
- package/presentation/sortable/feature.d.ts +1 -0
- package/presentation/sortable/feature.js +11 -0
- package/presentation/sortable/feature.js.map +1 -0
- package/presentation/sortable/index.d.ts +2 -0
- package/presentation/sortable/index.js +2 -0
- package/presentation/trashBin/TrashBinDataSource.d.ts +16 -0
- package/presentation/trashBin/TrashBinDataSource.js +82 -0
- package/presentation/trashBin/TrashBinDataSource.js.map +1 -0
- package/presentation/trashBin/TrashBinPresenter.d.ts +20 -0
- package/presentation/trashBin/TrashBinPresenter.js +114 -0
- package/presentation/trashBin/TrashBinPresenter.js.map +1 -0
- package/presentation/trashBin/abstractions.d.ts +105 -0
- package/presentation/trashBin/abstractions.js +9 -0
- package/presentation/trashBin/abstractions.js.map +1 -0
- package/presentation/trashBin/components/Actions/DeleteItemAction.d.ts +2 -0
- package/presentation/trashBin/components/Actions/DeleteItemAction.js +20 -0
- package/presentation/trashBin/components/Actions/DeleteItemAction.js.map +1 -0
- package/presentation/trashBin/components/Actions/RestoreItemAction.d.ts +2 -0
- package/presentation/trashBin/components/Actions/RestoreItemAction.js +19 -0
- package/presentation/trashBin/components/Actions/RestoreItemAction.js.map +1 -0
- package/presentation/trashBin/components/Actions/index.d.ts +2 -0
- package/presentation/trashBin/components/Actions/index.js +2 -0
- package/presentation/trashBin/components/BulkActions/DeleteItems.d.ts +4 -0
- package/presentation/trashBin/components/BulkActions/DeleteItems.js +72 -0
- package/presentation/trashBin/components/BulkActions/DeleteItems.js.map +1 -0
- package/presentation/trashBin/components/BulkActions/RestoreItems.d.ts +4 -0
- package/presentation/trashBin/components/BulkActions/RestoreItems.js +81 -0
- package/presentation/trashBin/components/BulkActions/RestoreItems.js.map +1 -0
- package/presentation/trashBin/components/BulkActions/RestoreItemsReportMessage.d.ts +5 -0
- package/presentation/trashBin/components/BulkActions/RestoreItemsReportMessage.js +12 -0
- package/presentation/trashBin/components/BulkActions/RestoreItemsReportMessage.js.map +1 -0
- package/presentation/trashBin/components/BulkActions/index.d.ts +2 -0
- package/presentation/trashBin/components/BulkActions/index.js +2 -0
- package/presentation/trashBin/components/Cells/CellActions.d.ts +2 -0
- package/presentation/trashBin/components/Cells/CellActions.js +18 -0
- package/presentation/trashBin/components/Cells/CellActions.js.map +1 -0
- package/presentation/trashBin/components/Cells/CellCreatedBy.d.ts +2 -0
- package/presentation/trashBin/components/Cells/CellCreatedBy.js +11 -0
- package/presentation/trashBin/components/Cells/CellCreatedBy.js.map +1 -0
- package/presentation/trashBin/components/Cells/CellDeletedBy.d.ts +2 -0
- package/presentation/trashBin/components/Cells/CellDeletedBy.js +11 -0
- package/presentation/trashBin/components/Cells/CellDeletedBy.js.map +1 -0
- package/presentation/trashBin/components/Cells/CellDeletedOn.d.ts +2 -0
- package/presentation/trashBin/components/Cells/CellDeletedOn.js +14 -0
- package/presentation/trashBin/components/Cells/CellDeletedOn.js.map +1 -0
- package/presentation/trashBin/components/Cells/CellTitle.d.ts +2 -0
- package/presentation/trashBin/components/Cells/CellTitle.js +21 -0
- package/presentation/trashBin/components/Cells/CellTitle.js.map +1 -0
- package/presentation/trashBin/components/Cells/index.d.ts +5 -0
- package/presentation/trashBin/components/Cells/index.js +5 -0
- package/presentation/trashBin/components/TrashBinConfigs.d.ts +2 -0
- package/presentation/trashBin/components/TrashBinConfigs.js +55 -0
- package/presentation/trashBin/components/TrashBinConfigs.js.map +1 -0
- package/presentation/trashBin/components/TrashBinOverlay.d.ts +12 -0
- package/presentation/trashBin/components/TrashBinOverlay.js +139 -0
- package/presentation/trashBin/components/TrashBinOverlay.js.map +1 -0
- package/presentation/trashBin/components/TrashBinTable.d.ts +2 -0
- package/presentation/trashBin/components/TrashBinTable.js +48 -0
- package/presentation/trashBin/components/TrashBinTable.js.map +1 -0
- package/presentation/trashBin/configs/Browser/BulkAction.d.ts +34 -0
- package/presentation/trashBin/configs/Browser/BulkAction.js +59 -0
- package/presentation/trashBin/configs/Browser/BulkAction.js.map +1 -0
- package/presentation/trashBin/configs/Browser/EntryAction.d.ts +18 -0
- package/presentation/trashBin/configs/Browser/EntryAction.js +36 -0
- package/presentation/trashBin/configs/Browser/EntryAction.js.map +1 -0
- package/presentation/trashBin/configs/Browser/Table/Column.d.ts +16 -0
- package/presentation/trashBin/configs/Browser/Table/Column.js +9 -0
- package/presentation/trashBin/configs/Browser/Table/Column.js.map +1 -0
- package/presentation/trashBin/configs/Browser/Table/Sorting.d.ts +5 -0
- package/presentation/trashBin/configs/Browser/Table/Sorting.js +6 -0
- package/presentation/trashBin/configs/Browser/Table/Sorting.js.map +1 -0
- package/presentation/trashBin/configs/Browser/Table/index.d.ts +18 -0
- package/presentation/trashBin/configs/Browser/Table/index.js +9 -0
- package/presentation/trashBin/configs/Browser/Table/index.js.map +1 -0
- package/presentation/trashBin/configs/Browser/index.d.ts +40 -0
- package/presentation/trashBin/configs/Browser/index.js +11 -0
- package/presentation/trashBin/configs/Browser/index.js.map +1 -0
- package/presentation/trashBin/configs/TrashBinListConfig.d.ts +46 -0
- package/presentation/trashBin/configs/TrashBinListConfig.js +43 -0
- package/presentation/trashBin/configs/TrashBinListConfig.js.map +1 -0
- package/presentation/trashBin/configs/index.d.ts +1 -0
- package/presentation/trashBin/configs/index.js +1 -0
- package/presentation/trashBin/feature.d.ts +3 -0
- package/presentation/trashBin/feature.js +17 -0
- package/presentation/trashBin/feature.js.map +1 -0
- package/presentation/trashBin/hooks/index.d.ts +4 -0
- package/presentation/trashBin/hooks/index.js +4 -0
- package/presentation/trashBin/hooks/useDeleteTrashBinItem.d.ts +8 -0
- package/presentation/trashBin/hooks/useDeleteTrashBinItem.js +33 -0
- package/presentation/trashBin/hooks/useDeleteTrashBinItem.js.map +1 -0
- package/presentation/trashBin/hooks/useRestoreTrashBinItem.d.ts +8 -0
- package/presentation/trashBin/hooks/useRestoreTrashBinItem.js +35 -0
- package/presentation/trashBin/hooks/useRestoreTrashBinItem.js.map +1 -0
- package/presentation/trashBin/hooks/useTrashBinItem.d.ts +11 -0
- package/presentation/trashBin/hooks/useTrashBinItem.js +7 -0
- package/presentation/trashBin/hooks/useTrashBinItem.js.map +1 -0
- package/presentation/trashBin/hooks/useTrashBinPresenter.d.ts +13 -0
- package/presentation/trashBin/hooks/useTrashBinPresenter.js +7 -0
- package/presentation/trashBin/hooks/useTrashBinPresenter.js.map +1 -0
- package/presentation/trashBin/index.d.ts +6 -0
- package/presentation/trashBin/index.js +6 -0
- package/base/Base/FieldRenderers/ObjectRenderer/MultiValueDynamicZone.d.ts +0 -10
- package/base/Base/FieldRenderers/ObjectRenderer/MultiValueDynamicZone.js +0 -97
- package/base/Base/FieldRenderers/ObjectRenderer/MultiValueDynamicZone.js.map +0 -1
- package/components/RoleAutocomplete/graphql.d.ts +0 -1
- package/components/RoleAutocomplete/graphql.js +0 -19
- package/components/RoleAutocomplete/graphql.js.map +0 -1
- package/components/RoleAutocomplete/index.d.ts +0 -7
- package/components/RoleAutocomplete/index.js +0 -26
- package/components/RoleAutocomplete/index.js.map +0 -1
- package/features/debugger/Debugger.d.ts +0 -8
- package/features/debugger/Debugger.js +0 -25
- package/features/debugger/Debugger.js.map +0 -1
- package/features/debugger/DebuggerIndicator.d.ts +0 -16
- package/features/debugger/DebuggerIndicator.js +0 -31
- package/features/debugger/DebuggerIndicator.js.map +0 -1
- package/features/debugger/DebuggerStore.d.ts +0 -55
- package/features/debugger/DebuggerStore.js +0 -65
- package/features/debugger/DebuggerStore.js.map +0 -1
- package/features/debugger/DebuggerView.d.ts +0 -4
- package/features/debugger/DebuggerView.js +0 -49
- package/features/debugger/DebuggerView.js.map +0 -1
- package/features/debugger/GraphQLExtensionsDebugHandler.d.ts +0 -15
- package/features/debugger/GraphQLExtensionsDebugHandler.js +0 -15
- package/features/debugger/GraphQLExtensionsDebugHandler.js.map +0 -1
- package/features/debugger/debuggerLink.d.ts +0 -12
- package/features/debugger/debuggerLink.js +0 -10
- package/features/debugger/debuggerLink.js.map +0 -1
- package/features/debugger/feature.d.ts +0 -1
- package/features/debugger/feature.js +0 -18
- package/features/debugger/feature.js.map +0 -1
- package/features/debugger/index.d.ts +0 -7
- package/features/debugger/index.js +0 -7
- package/features/debugger/permissions.d.ts +0 -68
- package/features/debugger/permissions.js +0 -27
- package/features/debugger/permissions.js.map +0 -1
- package/features/debugger/report.d.ts +0 -7
- package/features/debugger/report.js +0 -22
- package/features/debugger/report.js.map +0 -1
- package/features/debugger/routes.d.ts +0 -4
- package/features/debugger/routes.js +0 -10
- package/features/debugger/routes.js.map +0 -1
- package/plugins/MenuPlugin.d.ts +0 -37
- package/plugins/MenuPlugin.js +0 -20
- package/plugins/MenuPlugin.js.map +0 -1
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
export interface ConfirmationDialogProps {
|
|
3
|
+
title: React.ReactNode;
|
|
4
|
+
children: React.ReactNode;
|
|
5
|
+
onConfirm: () => Promise<void>;
|
|
6
|
+
onCancel: () => void;
|
|
7
|
+
confirmLabel?: string;
|
|
8
|
+
cancelLabel?: string;
|
|
9
|
+
loadingLabel?: string;
|
|
10
|
+
}
|
|
11
|
+
export declare const ConfirmationDialog: ({ title, children, onConfirm, onCancel, confirmLabel, cancelLabel, loadingLabel }: ConfirmationDialogProps) => React.JSX.Element;
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import react, { useCallback, useState } from "react";
|
|
2
|
+
import { Dialog } from "@webiny/admin-ui";
|
|
3
|
+
const ConfirmationDialog = ({ title, children, onConfirm, onCancel, confirmLabel = "Confirm", cancelLabel = "Cancel", loadingLabel = "Processing..." })=>{
|
|
4
|
+
const [loading, setLoading] = useState(false);
|
|
5
|
+
const handleConfirm = useCallback(async ()=>{
|
|
6
|
+
setLoading(true);
|
|
7
|
+
try {
|
|
8
|
+
await onConfirm();
|
|
9
|
+
} finally{
|
|
10
|
+
setLoading(false);
|
|
11
|
+
}
|
|
12
|
+
}, [
|
|
13
|
+
onConfirm
|
|
14
|
+
]);
|
|
15
|
+
const handleCancel = useCallback(()=>{
|
|
16
|
+
onCancel();
|
|
17
|
+
}, [
|
|
18
|
+
onCancel
|
|
19
|
+
]);
|
|
20
|
+
return /*#__PURE__*/ react.createElement(Dialog, {
|
|
21
|
+
open: true,
|
|
22
|
+
onOpenChange: (open)=>{
|
|
23
|
+
if (!open && !loading) handleCancel();
|
|
24
|
+
},
|
|
25
|
+
title: title,
|
|
26
|
+
loading: loading ? {
|
|
27
|
+
text: loadingLabel
|
|
28
|
+
} : false,
|
|
29
|
+
dismissible: !loading,
|
|
30
|
+
actions: /*#__PURE__*/ react.createElement(react.Fragment, null, /*#__PURE__*/ react.createElement(Dialog.CancelAction, {
|
|
31
|
+
onClick: handleCancel,
|
|
32
|
+
text: cancelLabel
|
|
33
|
+
}), /*#__PURE__*/ react.createElement(Dialog.ConfirmAction, {
|
|
34
|
+
onClick: handleConfirm,
|
|
35
|
+
text: confirmLabel
|
|
36
|
+
}))
|
|
37
|
+
}, children);
|
|
38
|
+
};
|
|
39
|
+
export { ConfirmationDialog };
|
|
40
|
+
|
|
41
|
+
//# sourceMappingURL=ConfirmationDialog.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components/ConfirmationDialog/ConfirmationDialog.js","sources":["../../../src/components/ConfirmationDialog/ConfirmationDialog.tsx"],"sourcesContent":["import React, { useCallback, useState } from \"react\";\nimport { Dialog } from \"@webiny/admin-ui\";\n\nexport interface ConfirmationDialogProps {\n title: React.ReactNode;\n children: React.ReactNode;\n onConfirm: () => Promise<void>;\n onCancel: () => void;\n confirmLabel?: string;\n cancelLabel?: string;\n loadingLabel?: string;\n}\n\nexport const ConfirmationDialog = ({\n title,\n children,\n onConfirm,\n onCancel,\n confirmLabel = \"Confirm\",\n cancelLabel = \"Cancel\",\n loadingLabel = \"Processing...\"\n}: ConfirmationDialogProps) => {\n const [loading, setLoading] = useState(false);\n\n const handleConfirm = useCallback(async () => {\n setLoading(true);\n try {\n await onConfirm();\n } finally {\n setLoading(false);\n }\n }, [onConfirm]);\n\n const handleCancel = useCallback(() => {\n onCancel();\n }, [onCancel]);\n\n return (\n <Dialog\n open\n onOpenChange={open => {\n if (!open && !loading) {\n handleCancel();\n }\n }}\n title={title}\n loading={loading ? { text: loadingLabel } : false}\n dismissible={!loading}\n actions={\n <>\n <Dialog.CancelAction onClick={handleCancel} text={cancelLabel} />\n <Dialog.ConfirmAction onClick={handleConfirm} text={confirmLabel} />\n </>\n }\n >\n {children}\n </Dialog>\n );\n};\n"],"names":["ConfirmationDialog","title","children","onConfirm","onCancel","confirmLabel","cancelLabel","loadingLabel","loading","setLoading","useState","handleConfirm","useCallback","handleCancel","Dialog","open"],"mappings":";;AAaO,MAAMA,qBAAqB,CAAC,EAC/BC,KAAK,EACLC,QAAQ,EACRC,SAAS,EACTC,QAAQ,EACRC,eAAe,SAAS,EACxBC,cAAc,QAAQ,EACtBC,eAAe,eAAe,EACR;IACtB,MAAM,CAACC,SAASC,WAAW,GAAGC,SAAS;IAEvC,MAAMC,gBAAgBC,YAAY;QAC9BH,WAAW;QACX,IAAI;YACA,MAAMN;QACV,SAAU;YACNM,WAAW;QACf;IACJ,GAAG;QAACN;KAAU;IAEd,MAAMU,eAAeD,YAAY;QAC7BR;IACJ,GAAG;QAACA;KAAS;IAEb,OAAO,WAAP,GACI,oBAACU,QAAMA;QACH;QACA,cAAcC,CAAAA;YACV,IAAI,CAACA,QAAQ,CAACP,SACVK;QAER;QACA,OAAOZ;QACP,SAASO,UAAU;YAAE,MAAMD;QAAa,IAAI;QAC5C,aAAa,CAACC;QACd,uBACI,wDACI,oBAACM,OAAO,YAAY;YAAC,SAASD;YAAc,MAAMP;0BAClD,oBAACQ,OAAO,aAAa;YAAC,SAASH;YAAe,MAAMN;;OAI3DH;AAGb"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { ConfirmationDialog, type ConfirmationDialogProps } from "./ConfirmationDialog.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { ConfirmationDialog } from "./ConfirmationDialog.js";
|
|
@@ -5,6 +5,7 @@ import { useSnackbar } from "../../hooks/index.js";
|
|
|
5
5
|
import { Dialog } from "./Dialog.js";
|
|
6
6
|
import { DialogParamsContext } from "./DialogParamsContext.js";
|
|
7
7
|
import { useAdminConfig } from "../../config/AdminConfig.js";
|
|
8
|
+
import { ConfirmationBridge } from "../../features/confirmation/index.js";
|
|
8
9
|
const initializeState = (params = {})=>({
|
|
9
10
|
id: `dialog-${generateId()}`,
|
|
10
11
|
title: params.title ?? "Confirmation",
|
|
@@ -135,7 +136,7 @@ const DialogsProvider = ({ children })=>{
|
|
|
135
136
|
})());
|
|
136
137
|
};
|
|
137
138
|
const createDialogsProvider = ()=>createProvider((Component)=>function({ children }) {
|
|
138
|
-
return /*#__PURE__*/ react.createElement(DialogsProvider, null, /*#__PURE__*/ react.createElement(Component, null, children));
|
|
139
|
+
return /*#__PURE__*/ react.createElement(DialogsProvider, null, /*#__PURE__*/ react.createElement(Component, null, children), /*#__PURE__*/ react.createElement(ConfirmationBridge, null));
|
|
139
140
|
});
|
|
140
141
|
export { DialogsContext, DialogsProvider, createDialogsProvider, initializeState };
|
|
141
142
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components/Dialogs/DialogsContext.js","sources":["../../../src/components/Dialogs/DialogsContext.tsx"],"sourcesContent":["import type { ReactNode } from \"react\";\nimport React, { useState } from \"react\";\nimport type { GenericFormData } from \"@webiny/form\";\nimport { createProvider } from \"@webiny/app\";\nimport { generateId } from \"@webiny/utils\";\nimport { useSnackbar } from \"~/hooks/index.js\";\nimport { Dialog, type DialogProps } from \"./Dialog.js\";\nimport { DialogParamsContext } from \"./DialogParamsContext.js\";\nimport { useAdminConfig } from \"~/config/AdminConfig.js\";\n\ninterface ShowDialogParams {\n title: ReactNode;\n description?: ReactNode;\n dismissible?: boolean;\n content: ReactNode;\n actions?: React.JSX.Element;\n icon?: React.JSX.Element;\n info?: ReactNode;\n acceptLabel?: ReactNode;\n cancelLabel?: ReactNode;\n loadingLabel?: string;\n dataLoadingLabel?: string;\n onAccept?: (data: GenericFormData) => void;\n onClose?: () => void;\n formData?: DialogProps[\"formData\"];\n size?: \"sm\" | \"md\" | \"lg\" | \"xl\" | \"full\";\n}\n\nexport interface DialogsContext {\n showDialog: (params: ShowDialogParams) => () => void;\n closeAllDialogs: () => void;\n openNamedDialog: (name: string, params: Record<string, unknown>) => void;\n closeNamedDialog: () => void;\n}\n\ninterface DialogsProviderProps {\n children: ReactNode;\n}\n\ninterface DialogState extends ShowDialogParams {\n id: string;\n open: boolean;\n loading: boolean;\n element?: React.JSX.Element;\n}\n\nexport const initializeState = (params: Partial<DialogState> = {}): DialogState => ({\n id: `dialog-${generateId()}`,\n title: params.title ?? `Confirmation`,\n description: params.description,\n dismissible: params.dismissible,\n icon: params.icon,\n info: params.info,\n content: params.content,\n acceptLabel: params.acceptLabel === null ? null : (params.acceptLabel ?? `Confirm`),\n cancelLabel: params.cancelLabel === null ? null : (params.cancelLabel ?? `Cancel`),\n loadingLabel: params.loadingLabel ?? `Loading...`,\n dataLoadingLabel: params.dataLoadingLabel ?? `Loading...`,\n onAccept: params.onAccept,\n onClose: params.onClose,\n open: params.open ?? false,\n loading: params.loading ?? false,\n element: params.element,\n formData: params.formData ?? {},\n size: params.size ?? \"md\"\n});\n\nexport const DialogsContext = React.createContext<DialogsContext | undefined>(undefined);\n\ninterface NamedDialogIntent {\n name: string;\n params: Record<string, unknown>;\n}\n\nexport const DialogsProvider = ({ children }: DialogsProviderProps) => {\n const { showSnackbar } = useSnackbar();\n const [dialogs, setDialogs] = useState<Map<string, DialogState>>(new Map());\n const [namedDialogIntent, setNamedDialogIntent] = useState<NamedDialogIntent | null>(null);\n const { dialogs: registeredDialogs } = useAdminConfig();\n\n const showDialog = (params: ShowDialogParams) => {\n const newDialog = initializeState({ ...params, open: true });\n setDialogs(dialogs => new Map(dialogs).set(newDialog.id, newDialog));\n return () => closeDialog(newDialog.id);\n };\n\n const closeDialog = (id: string) => {\n const dialog = dialogs.get(id);\n\n // Call the onClose callback if it exists\n if (dialog?.onClose && typeof dialog.onClose === \"function\") {\n try {\n dialog.onClose();\n } catch (error) {\n // Log error but don't prevent dialog cleanup\n console.error(\"Error in dialog onClose callback:\", error);\n }\n }\n\n setDialogs(dialogs => {\n const newDialogs = new Map(dialogs);\n newDialogs.delete(id);\n return newDialogs;\n });\n };\n\n const closeAllDialogs = () => {\n setDialogs(new Map());\n };\n\n const openNamedDialog = (name: string, params: Record<string, unknown>) => {\n setNamedDialogIntent({ name, params });\n };\n\n const closeNamedDialog = () => {\n setNamedDialogIntent(null);\n };\n\n const onSubmit = async (id: string, data: GenericFormData) => {\n const dialog = dialogs.get(id);\n if (!dialog) {\n return;\n }\n\n try {\n if (typeof dialog.onAccept === \"function\") {\n setDialogs(dialogs => {\n const newDialogs = new Map(dialogs);\n newDialogs.set(id, { ...dialog, loading: true });\n return newDialogs;\n });\n\n await dialog.onAccept(data);\n }\n } catch (error) {\n showSnackbar(error.message);\n } finally {\n setDialogs(dialogs => {\n const newDialogs = new Map(dialogs);\n newDialogs.set(id, { ...dialog, loading: false });\n return newDialogs;\n });\n closeDialog(id);\n }\n };\n\n const context = {\n showDialog,\n closeDialog,\n closeAllDialogs,\n openNamedDialog,\n closeNamedDialog\n };\n\n return (\n <DialogsContext.Provider value={context}>\n {children}\n {Array.from(dialogs.values()).map(dialog => (\n <Dialog\n key={dialog.id}\n description={dialog.description}\n dismissible={dialog.dismissible ?? true}\n icon={dialog.icon ?? <></>}\n title={dialog.title}\n content={dialog.content}\n open={dialog.open}\n info={dialog.info}\n acceptLabel={dialog.acceptLabel}\n cancelLabel={dialog.cancelLabel}\n loadingLabel={dialog.loadingLabel}\n dataLoadingLabel={dialog.dataLoadingLabel}\n loading={dialog.loading}\n closeDialog={() => {\n closeDialog(dialog.id);\n dialog.onClose && dialog.onClose();\n }}\n onSubmit={data => onSubmit(dialog.id, data)}\n formData={dialog.formData}\n size={dialog.size}\n />\n ))}\n {namedDialogIntent &&\n (() => {\n const registration = registeredDialogs.find(\n d => d.name === namedDialogIntent.name\n );\n if (!registration) {\n return null;\n }\n return (\n <DialogParamsContext.Provider\n value={{\n params: namedDialogIntent.params,\n closeDialog: closeNamedDialog\n }}\n >\n {registration.element}\n </DialogParamsContext.Provider>\n );\n })()}\n </DialogsContext.Provider>\n );\n};\n\nexport const createDialogsProvider = () => {\n return createProvider(Component => {\n return function DialogsProviderDecorator({ children }: DialogsProviderProps) {\n return (\n <DialogsProvider>\n <Component>{children}</Component>\n </DialogsProvider>\n );\n };\n });\n};\n"],"names":["initializeState","params","generateId","DialogsContext","React","undefined","DialogsProvider","children","showSnackbar","useSnackbar","dialogs","setDialogs","useState","Map","namedDialogIntent","setNamedDialogIntent","registeredDialogs","useAdminConfig","showDialog","newDialog","closeDialog","id","dialog","error","console","newDialogs","closeAllDialogs","openNamedDialog","name","closeNamedDialog","onSubmit","data","context","Array","Dialog","registration","d","DialogParamsContext","createDialogsProvider","createProvider","Component"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"components/Dialogs/DialogsContext.js","sources":["../../../src/components/Dialogs/DialogsContext.tsx"],"sourcesContent":["import type { ReactNode } from \"react\";\nimport React, { useState } from \"react\";\nimport type { GenericFormData } from \"@webiny/form\";\nimport { createProvider } from \"@webiny/app\";\nimport { generateId } from \"@webiny/utils\";\nimport { useSnackbar } from \"~/hooks/index.js\";\nimport { Dialog, type DialogProps } from \"./Dialog.js\";\nimport { DialogParamsContext } from \"./DialogParamsContext.js\";\nimport { useAdminConfig } from \"~/config/AdminConfig.js\";\nimport { ConfirmationBridge } from \"~/features/confirmation/index.js\";\n\ninterface ShowDialogParams {\n title: ReactNode;\n description?: ReactNode;\n dismissible?: boolean;\n content: ReactNode;\n actions?: React.JSX.Element;\n icon?: React.JSX.Element;\n info?: ReactNode;\n acceptLabel?: ReactNode;\n cancelLabel?: ReactNode;\n loadingLabel?: string;\n dataLoadingLabel?: string;\n onAccept?: (data: GenericFormData) => void;\n onClose?: () => void;\n formData?: DialogProps[\"formData\"];\n size?: \"sm\" | \"md\" | \"lg\" | \"xl\" | \"full\";\n}\n\nexport interface DialogsContext {\n showDialog: (params: ShowDialogParams) => () => void;\n closeAllDialogs: () => void;\n openNamedDialog: (name: string, params: Record<string, unknown>) => void;\n closeNamedDialog: () => void;\n}\n\ninterface DialogsProviderProps {\n children: ReactNode;\n}\n\ninterface DialogState extends ShowDialogParams {\n id: string;\n open: boolean;\n loading: boolean;\n element?: React.JSX.Element;\n}\n\nexport const initializeState = (params: Partial<DialogState> = {}): DialogState => ({\n id: `dialog-${generateId()}`,\n title: params.title ?? `Confirmation`,\n description: params.description,\n dismissible: params.dismissible,\n icon: params.icon,\n info: params.info,\n content: params.content,\n acceptLabel: params.acceptLabel === null ? null : (params.acceptLabel ?? `Confirm`),\n cancelLabel: params.cancelLabel === null ? null : (params.cancelLabel ?? `Cancel`),\n loadingLabel: params.loadingLabel ?? `Loading...`,\n dataLoadingLabel: params.dataLoadingLabel ?? `Loading...`,\n onAccept: params.onAccept,\n onClose: params.onClose,\n open: params.open ?? false,\n loading: params.loading ?? false,\n element: params.element,\n formData: params.formData ?? {},\n size: params.size ?? \"md\"\n});\n\nexport const DialogsContext = React.createContext<DialogsContext | undefined>(undefined);\n\ninterface NamedDialogIntent {\n name: string;\n params: Record<string, unknown>;\n}\n\nexport const DialogsProvider = ({ children }: DialogsProviderProps) => {\n const { showSnackbar } = useSnackbar();\n const [dialogs, setDialogs] = useState<Map<string, DialogState>>(new Map());\n const [namedDialogIntent, setNamedDialogIntent] = useState<NamedDialogIntent | null>(null);\n const { dialogs: registeredDialogs } = useAdminConfig();\n\n const showDialog = (params: ShowDialogParams) => {\n const newDialog = initializeState({ ...params, open: true });\n setDialogs(dialogs => new Map(dialogs).set(newDialog.id, newDialog));\n return () => closeDialog(newDialog.id);\n };\n\n const closeDialog = (id: string) => {\n const dialog = dialogs.get(id);\n\n // Call the onClose callback if it exists\n if (dialog?.onClose && typeof dialog.onClose === \"function\") {\n try {\n dialog.onClose();\n } catch (error) {\n // Log error but don't prevent dialog cleanup\n console.error(\"Error in dialog onClose callback:\", error);\n }\n }\n\n setDialogs(dialogs => {\n const newDialogs = new Map(dialogs);\n newDialogs.delete(id);\n return newDialogs;\n });\n };\n\n const closeAllDialogs = () => {\n setDialogs(new Map());\n };\n\n const openNamedDialog = (name: string, params: Record<string, unknown>) => {\n setNamedDialogIntent({ name, params });\n };\n\n const closeNamedDialog = () => {\n setNamedDialogIntent(null);\n };\n\n const onSubmit = async (id: string, data: GenericFormData) => {\n const dialog = dialogs.get(id);\n if (!dialog) {\n return;\n }\n\n try {\n if (typeof dialog.onAccept === \"function\") {\n setDialogs(dialogs => {\n const newDialogs = new Map(dialogs);\n newDialogs.set(id, { ...dialog, loading: true });\n return newDialogs;\n });\n\n await dialog.onAccept(data);\n }\n } catch (error) {\n showSnackbar(error.message);\n } finally {\n setDialogs(dialogs => {\n const newDialogs = new Map(dialogs);\n newDialogs.set(id, { ...dialog, loading: false });\n return newDialogs;\n });\n closeDialog(id);\n }\n };\n\n const context = {\n showDialog,\n closeDialog,\n closeAllDialogs,\n openNamedDialog,\n closeNamedDialog\n };\n\n return (\n <DialogsContext.Provider value={context}>\n {children}\n {Array.from(dialogs.values()).map(dialog => (\n <Dialog\n key={dialog.id}\n description={dialog.description}\n dismissible={dialog.dismissible ?? true}\n icon={dialog.icon ?? <></>}\n title={dialog.title}\n content={dialog.content}\n open={dialog.open}\n info={dialog.info}\n acceptLabel={dialog.acceptLabel}\n cancelLabel={dialog.cancelLabel}\n loadingLabel={dialog.loadingLabel}\n dataLoadingLabel={dialog.dataLoadingLabel}\n loading={dialog.loading}\n closeDialog={() => {\n closeDialog(dialog.id);\n dialog.onClose && dialog.onClose();\n }}\n onSubmit={data => onSubmit(dialog.id, data)}\n formData={dialog.formData}\n size={dialog.size}\n />\n ))}\n {namedDialogIntent &&\n (() => {\n const registration = registeredDialogs.find(\n d => d.name === namedDialogIntent.name\n );\n if (!registration) {\n return null;\n }\n return (\n <DialogParamsContext.Provider\n value={{\n params: namedDialogIntent.params,\n closeDialog: closeNamedDialog\n }}\n >\n {registration.element}\n </DialogParamsContext.Provider>\n );\n })()}\n </DialogsContext.Provider>\n );\n};\n\nexport const createDialogsProvider = () => {\n return createProvider(Component => {\n return function DialogsProviderDecorator({ children }: DialogsProviderProps) {\n return (\n <DialogsProvider>\n <Component>{children}</Component>\n <ConfirmationBridge />\n </DialogsProvider>\n );\n };\n });\n};\n"],"names":["initializeState","params","generateId","DialogsContext","React","undefined","DialogsProvider","children","showSnackbar","useSnackbar","dialogs","setDialogs","useState","Map","namedDialogIntent","setNamedDialogIntent","registeredDialogs","useAdminConfig","showDialog","newDialog","closeDialog","id","dialog","error","console","newDialogs","closeAllDialogs","openNamedDialog","name","closeNamedDialog","onSubmit","data","context","Array","Dialog","registration","d","DialogParamsContext","createDialogsProvider","createProvider","Component","ConfirmationBridge"],"mappings":";;;;;;;;AA+CO,MAAMA,kBAAkB,CAACC,SAA+B,CAAC,CAAC,GAAmB;QAChF,IAAI,CAAC,OAAO,EAAEC,cAAc;QAC5B,OAAOD,OAAO,KAAK,IAAI;QACvB,aAAaA,OAAO,WAAW;QAC/B,aAAaA,OAAO,WAAW;QAC/B,MAAMA,OAAO,IAAI;QACjB,MAAMA,OAAO,IAAI;QACjB,SAASA,OAAO,OAAO;QACvB,aAAaA,AAAuB,SAAvBA,OAAO,WAAW,GAAY,OAAQA,OAAO,WAAW,IAAI;QACzE,aAAaA,AAAuB,SAAvBA,OAAO,WAAW,GAAY,OAAQA,OAAO,WAAW,IAAI;QACzE,cAAcA,OAAO,YAAY,IAAI;QACrC,kBAAkBA,OAAO,gBAAgB,IAAI;QAC7C,UAAUA,OAAO,QAAQ;QACzB,SAASA,OAAO,OAAO;QACvB,MAAMA,OAAO,IAAI,IAAI;QACrB,SAASA,OAAO,OAAO,IAAI;QAC3B,SAASA,OAAO,OAAO;QACvB,UAAUA,OAAO,QAAQ,IAAI,CAAC;QAC9B,MAAMA,OAAO,IAAI,IAAI;IACzB;AAEO,MAAME,iBAAiB,WAAHA,GAAGC,MAAAA,aAAmB,CAA6BC;AAOvE,MAAMC,kBAAkB,CAAC,EAAEC,QAAQ,EAAwB;IAC9D,MAAM,EAAEC,YAAY,EAAE,GAAGC;IACzB,MAAM,CAACC,SAASC,WAAW,GAAGC,SAAmC,IAAIC;IACrE,MAAM,CAACC,mBAAmBC,qBAAqB,GAAGH,SAAmC;IACrF,MAAM,EAAE,SAASI,iBAAiB,EAAE,GAAGC;IAEvC,MAAMC,aAAa,CAACjB;QAChB,MAAMkB,YAAYnB,gBAAgB;YAAE,GAAGC,MAAM;YAAE,MAAM;QAAK;QAC1DU,WAAWD,CAAAA,UAAW,IAAIG,IAAIH,SAAS,GAAG,CAACS,UAAU,EAAE,EAAEA;QACzD,OAAO,IAAMC,YAAYD,UAAU,EAAE;IACzC;IAEA,MAAMC,cAAc,CAACC;QACjB,MAAMC,SAASZ,QAAQ,GAAG,CAACW;QAG3B,IAAIC,QAAQ,WAAW,AAA0B,cAA1B,OAAOA,OAAO,OAAO,EACxC,IAAI;YACAA,OAAO,OAAO;QAClB,EAAE,OAAOC,OAAO;YAEZC,QAAQ,KAAK,CAAC,qCAAqCD;QACvD;QAGJZ,WAAWD,CAAAA;YACP,MAAMe,aAAa,IAAIZ,IAAIH;YAC3Be,WAAW,MAAM,CAACJ;YAClB,OAAOI;QACX;IACJ;IAEA,MAAMC,kBAAkB;QACpBf,WAAW,IAAIE;IACnB;IAEA,MAAMc,kBAAkB,CAACC,MAAc3B;QACnCc,qBAAqB;YAAEa;YAAM3B;QAAO;IACxC;IAEA,MAAM4B,mBAAmB;QACrBd,qBAAqB;IACzB;IAEA,MAAMe,WAAW,OAAOT,IAAYU;QAChC,MAAMT,SAASZ,QAAQ,GAAG,CAACW;QAC3B,IAAI,CAACC,QACD;QAGJ,IAAI;YACA,IAAI,AAA2B,cAA3B,OAAOA,OAAO,QAAQ,EAAiB;gBACvCX,WAAWD,CAAAA;oBACP,MAAMe,aAAa,IAAIZ,IAAIH;oBAC3Be,WAAW,GAAG,CAACJ,IAAI;wBAAE,GAAGC,MAAM;wBAAE,SAAS;oBAAK;oBAC9C,OAAOG;gBACX;gBAEA,MAAMH,OAAO,QAAQ,CAACS;YAC1B;QACJ,EAAE,OAAOR,OAAO;YACZf,aAAae,MAAM,OAAO;QAC9B,SAAU;YACNZ,WAAWD,CAAAA;gBACP,MAAMe,aAAa,IAAIZ,IAAIH;gBAC3Be,WAAW,GAAG,CAACJ,IAAI;oBAAE,GAAGC,MAAM;oBAAE,SAAS;gBAAM;gBAC/C,OAAOG;YACX;YACAL,YAAYC;QAChB;IACJ;IAEA,MAAMW,UAAU;QACZd;QACAE;QACAM;QACAC;QACAE;IACJ;IAEA,OAAO,WAAP,GACI,oBAAC1B,eAAe,QAAQ;QAAC,OAAO6B;OAC3BzB,UACA0B,MAAM,IAAI,CAACvB,QAAQ,MAAM,IAAI,GAAG,CAACY,CAAAA,SAAAA,WAAAA,GAC9B,oBAACY,QAAMA;YACH,KAAKZ,OAAO,EAAE;YACd,aAAaA,OAAO,WAAW;YAC/B,aAAaA,OAAO,WAAW,IAAI;YACnC,MAAMA,OAAO,IAAI,IAAI,WAAJ,GAAI;YACrB,OAAOA,OAAO,KAAK;YACnB,SAASA,OAAO,OAAO;YACvB,MAAMA,OAAO,IAAI;YACjB,MAAMA,OAAO,IAAI;YACjB,aAAaA,OAAO,WAAW;YAC/B,aAAaA,OAAO,WAAW;YAC/B,cAAcA,OAAO,YAAY;YACjC,kBAAkBA,OAAO,gBAAgB;YACzC,SAASA,OAAO,OAAO;YACvB,aAAa;gBACTF,YAAYE,OAAO,EAAE;gBACrBA,OAAO,OAAO,IAAIA,OAAO,OAAO;YACpC;YACA,UAAUS,CAAAA,OAAQD,SAASR,OAAO,EAAE,EAAES;YACtC,UAAUT,OAAO,QAAQ;YACzB,MAAMA,OAAO,IAAI;aAGxBR,qBACI,AAAC;QACE,MAAMqB,eAAenB,kBAAkB,IAAI,CACvCoB,CAAAA,IAAKA,EAAE,IAAI,KAAKtB,kBAAkB,IAAI;QAE1C,IAAI,CAACqB,cACD,OAAO;QAEX,OAAO,WAAP,GACI,oBAACE,oBAAoB,QAAQ;YACzB,OAAO;gBACH,QAAQvB,kBAAkB,MAAM;gBAChC,aAAae;YACjB;WAECM,aAAa,OAAO;IAGjC;AAGhB;AAEO,MAAMG,wBAAwB,IAC1BC,eAAeC,CAAAA,YACX,SAAkC,EAAEjC,QAAQ,EAAwB;YACvE,OAAO,WAAP,GACI,oBAACD,iBAAeA,MAAAA,WAAAA,GACZ,oBAACkC,WAAAA,MAAWjC,WAAAA,WAAAA,GACZ,oBAACkC,oBAAkBA;QAG/B"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export interface DrawerParamsContextValue {
|
|
2
|
+
params: Record<string, unknown>;
|
|
3
|
+
closeDrawer: () => void;
|
|
4
|
+
}
|
|
5
|
+
export declare const DrawerParamsContext: import("react").Context<DrawerParamsContextValue | undefined>;
|
|
6
|
+
export declare const useDrawerParamsContext: () => DrawerParamsContextValue;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { createContext, useContext } from "react";
|
|
2
|
+
const DrawerParamsContext = /*#__PURE__*/ createContext(void 0);
|
|
3
|
+
const useDrawerParamsContext = ()=>{
|
|
4
|
+
const context = useContext(DrawerParamsContext);
|
|
5
|
+
if (!context) throw new Error("useDrawer must be used inside a named drawer registered via AdminConfig.Drawer");
|
|
6
|
+
return context;
|
|
7
|
+
};
|
|
8
|
+
export { DrawerParamsContext, useDrawerParamsContext };
|
|
9
|
+
|
|
10
|
+
//# sourceMappingURL=DrawerParamsContext.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components/Drawers/DrawerParamsContext.js","sources":["../../../src/components/Drawers/DrawerParamsContext.tsx"],"sourcesContent":["import { createContext, useContext } from \"react\";\n\nexport interface DrawerParamsContextValue {\n params: Record<string, unknown>;\n closeDrawer: () => void;\n}\n\nexport const DrawerParamsContext = createContext<DrawerParamsContextValue | undefined>(undefined);\n\nexport const useDrawerParamsContext = () => {\n const context = useContext(DrawerParamsContext);\n\n if (!context) {\n throw new Error(\n \"useDrawer must be used inside a named drawer registered via AdminConfig.Drawer\"\n );\n }\n\n return context;\n};\n"],"names":["DrawerParamsContext","createContext","undefined","useDrawerParamsContext","context","useContext","Error"],"mappings":";AAOO,MAAMA,sBAAsB,WAAHA,GAAGC,cAAoDC;AAEhF,MAAMC,yBAAyB;IAClC,MAAMC,UAAUC,WAAWL;IAE3B,IAAI,CAACI,SACD,MAAM,IAAIE,MACN;IAIR,OAAOF;AACX"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { ReactNode } from "react";
|
|
2
|
+
import React from "react";
|
|
3
|
+
export interface DrawersContext {
|
|
4
|
+
openNamedDrawer: (name: string, params?: Record<string, unknown>) => void;
|
|
5
|
+
closeNamedDrawer: (name?: string) => void;
|
|
6
|
+
}
|
|
7
|
+
interface DrawersProviderProps {
|
|
8
|
+
children: ReactNode;
|
|
9
|
+
}
|
|
10
|
+
export declare const DrawersContext: React.Context<DrawersContext | undefined>;
|
|
11
|
+
export declare const DrawersProvider: ({ children }: DrawersProviderProps) => React.JSX.Element;
|
|
12
|
+
export declare const createDrawersProvider: () => import("@webiny/app").Decorator<import("@webiny/app").GenericComponent<import("@webiny/app").ChildrenProps>>;
|
|
13
|
+
export {};
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import react, { useCallback, useState } from "react";
|
|
2
|
+
import { createProvider } from "@webiny/app";
|
|
3
|
+
import { DrawerParamsContext } from "./DrawerParamsContext.js";
|
|
4
|
+
import { useAdminConfig } from "../../config/AdminConfig.js";
|
|
5
|
+
const DrawersContext = /*#__PURE__*/ react.createContext(void 0);
|
|
6
|
+
const DrawersProvider = ({ children })=>{
|
|
7
|
+
const [stack, setStack] = useState([]);
|
|
8
|
+
const { drawers: registeredDrawers } = useAdminConfig();
|
|
9
|
+
const openNamedDrawer = useCallback((name, params = {})=>{
|
|
10
|
+
setStack((prev)=>{
|
|
11
|
+
if (prev.some((entry)=>entry.name === name)) return prev;
|
|
12
|
+
return [
|
|
13
|
+
...prev,
|
|
14
|
+
{
|
|
15
|
+
name,
|
|
16
|
+
params
|
|
17
|
+
}
|
|
18
|
+
];
|
|
19
|
+
});
|
|
20
|
+
}, []);
|
|
21
|
+
const closeNamedDrawer = useCallback((name)=>{
|
|
22
|
+
setStack((prev)=>{
|
|
23
|
+
if (!name) return prev.slice(0, -1);
|
|
24
|
+
return prev.filter((entry)=>entry.name !== name);
|
|
25
|
+
});
|
|
26
|
+
}, []);
|
|
27
|
+
const context = {
|
|
28
|
+
openNamedDrawer,
|
|
29
|
+
closeNamedDrawer
|
|
30
|
+
};
|
|
31
|
+
return /*#__PURE__*/ react.createElement(DrawersContext.Provider, {
|
|
32
|
+
value: context
|
|
33
|
+
}, children, stack.map((entry)=>{
|
|
34
|
+
const registration = registeredDrawers.find((d)=>d.name === entry.name);
|
|
35
|
+
if (!registration) return null;
|
|
36
|
+
return /*#__PURE__*/ react.createElement(DrawerParamsContext.Provider, {
|
|
37
|
+
key: entry.name,
|
|
38
|
+
value: {
|
|
39
|
+
params: entry.params,
|
|
40
|
+
closeDrawer: ()=>closeNamedDrawer(entry.name)
|
|
41
|
+
}
|
|
42
|
+
}, registration.element);
|
|
43
|
+
}));
|
|
44
|
+
};
|
|
45
|
+
const createDrawersProvider = ()=>createProvider((Component)=>function({ children }) {
|
|
46
|
+
return /*#__PURE__*/ react.createElement(DrawersProvider, null, /*#__PURE__*/ react.createElement(Component, null, children));
|
|
47
|
+
});
|
|
48
|
+
export { DrawersContext, DrawersProvider, createDrawersProvider };
|
|
49
|
+
|
|
50
|
+
//# sourceMappingURL=DrawersContext.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components/Drawers/DrawersContext.js","sources":["../../../src/components/Drawers/DrawersContext.tsx"],"sourcesContent":["import type { ReactNode } from \"react\";\nimport React, { useCallback, useState } from \"react\";\nimport { createProvider } from \"@webiny/app\";\nimport { DrawerParamsContext } from \"./DrawerParamsContext.js\";\nimport { useAdminConfig } from \"~/config/AdminConfig.js\";\n\ninterface OpenDrawerEntry {\n name: string;\n params: Record<string, unknown>;\n}\n\nexport interface DrawersContext {\n openNamedDrawer: (name: string, params?: Record<string, unknown>) => void;\n closeNamedDrawer: (name?: string) => void;\n}\n\ninterface DrawersProviderProps {\n children: ReactNode;\n}\n\nexport const DrawersContext = React.createContext<DrawersContext | undefined>(undefined);\n\nexport const DrawersProvider = ({ children }: DrawersProviderProps) => {\n const [stack, setStack] = useState<OpenDrawerEntry[]>([]);\n const { drawers: registeredDrawers } = useAdminConfig();\n\n const openNamedDrawer = useCallback((name: string, params: Record<string, unknown> = {}) => {\n setStack(prev => {\n if (prev.some(entry => entry.name === name)) {\n return prev;\n }\n return [...prev, { name, params }];\n });\n }, []);\n\n const closeNamedDrawer = useCallback((name?: string) => {\n setStack(prev => {\n if (!name) {\n return prev.slice(0, -1);\n }\n return prev.filter(entry => entry.name !== name);\n });\n }, []);\n\n const context: DrawersContext = {\n openNamedDrawer,\n closeNamedDrawer\n };\n\n return (\n <DrawersContext.Provider value={context}>\n {children}\n {stack.map(entry => {\n const registration = registeredDrawers.find(d => d.name === entry.name);\n if (!registration) {\n return null;\n }\n return (\n <DrawerParamsContext.Provider\n key={entry.name}\n value={{\n params: entry.params,\n closeDrawer: () => closeNamedDrawer(entry.name)\n }}\n >\n {registration.element}\n </DrawerParamsContext.Provider>\n );\n })}\n </DrawersContext.Provider>\n );\n};\n\nexport const createDrawersProvider = () => {\n return createProvider(Component => {\n return function DrawersProviderHOC({ children }: DrawersProviderProps) {\n return (\n <DrawersProvider>\n <Component>{children}</Component>\n </DrawersProvider>\n );\n };\n });\n};\n"],"names":["DrawersContext","React","undefined","DrawersProvider","children","stack","setStack","useState","registeredDrawers","useAdminConfig","openNamedDrawer","useCallback","name","params","prev","entry","closeNamedDrawer","context","registration","d","DrawerParamsContext","createDrawersProvider","createProvider","Component"],"mappings":";;;;AAoBO,MAAMA,iBAAiB,WAAHA,GAAGC,MAAAA,aAAmB,CAA6BC;AAEvE,MAAMC,kBAAkB,CAAC,EAAEC,QAAQ,EAAwB;IAC9D,MAAM,CAACC,OAAOC,SAAS,GAAGC,SAA4B,EAAE;IACxD,MAAM,EAAE,SAASC,iBAAiB,EAAE,GAAGC;IAEvC,MAAMC,kBAAkBC,YAAY,CAACC,MAAcC,SAAkC,CAAC,CAAC;QACnFP,SAASQ,CAAAA;YACL,IAAIA,KAAK,IAAI,CAACC,CAAAA,QAASA,MAAM,IAAI,KAAKH,OAClC,OAAOE;YAEX,OAAO;mBAAIA;gBAAM;oBAAEF;oBAAMC;gBAAO;aAAE;QACtC;IACJ,GAAG,EAAE;IAEL,MAAMG,mBAAmBL,YAAY,CAACC;QAClCN,SAASQ,CAAAA;YACL,IAAI,CAACF,MACD,OAAOE,KAAK,KAAK,CAAC,GAAG;YAEzB,OAAOA,KAAK,MAAM,CAACC,CAAAA,QAASA,MAAM,IAAI,KAAKH;QAC/C;IACJ,GAAG,EAAE;IAEL,MAAMK,UAA0B;QAC5BP;QACAM;IACJ;IAEA,OAAO,WAAP,GACI,oBAAChB,eAAe,QAAQ;QAAC,OAAOiB;OAC3Bb,UACAC,MAAM,GAAG,CAACU,CAAAA;QACP,MAAMG,eAAeV,kBAAkB,IAAI,CAACW,CAAAA,IAAKA,EAAE,IAAI,KAAKJ,MAAM,IAAI;QACtE,IAAI,CAACG,cACD,OAAO;QAEX,OAAO,WAAP,GACI,oBAACE,oBAAoB,QAAQ;YACzB,KAAKL,MAAM,IAAI;YACf,OAAO;gBACH,QAAQA,MAAM,MAAM;gBACpB,aAAa,IAAMC,iBAAiBD,MAAM,IAAI;YAClD;WAECG,aAAa,OAAO;IAGjC;AAGZ;AAEO,MAAMG,wBAAwB,IAC1BC,eAAeC,CAAAA,YACX,SAA4B,EAAEnB,QAAQ,EAAwB;YACjE,OAAO,WAAP,GACI,oBAACD,iBAAeA,MAAAA,WAAAA,GACZ,oBAACoB,WAAAA,MAAWnB;QAGxB"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { useContext } from "react";
|
|
2
|
+
import { DrawersContext } from "./DrawersContext.js";
|
|
3
|
+
const useDrawers = ()=>{
|
|
4
|
+
const context = useContext(DrawersContext);
|
|
5
|
+
if (!context) throw new Error("useDrawers must be used within a DrawersContext.Provider");
|
|
6
|
+
return context;
|
|
7
|
+
};
|
|
8
|
+
export { useDrawers };
|
|
9
|
+
|
|
10
|
+
//# sourceMappingURL=useDrawers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components/Drawers/useDrawers.js","sources":["../../../src/components/Drawers/useDrawers.ts"],"sourcesContent":["import { useContext } from \"react\";\nimport { DrawersContext } from \"./DrawersContext.js\";\n\nexport const useDrawers = () => {\n const context = useContext(DrawersContext);\n\n if (!context) {\n throw new Error(\"useDrawers must be used within a DrawersContext.Provider\");\n }\n\n return context;\n};\n"],"names":["useDrawers","context","useContext","DrawersContext","Error"],"mappings":";;AAGO,MAAMA,aAAa;IACtB,MAAMC,UAAUC,WAAWC;IAE3B,IAAI,CAACF,SACD,MAAM,IAAIG,MAAM;IAGpB,OAAOH;AACX"}
|
|
@@ -10,10 +10,11 @@ const Filters = (props)=>{
|
|
|
10
10
|
data: props.data,
|
|
11
11
|
onChange: props.onChange
|
|
12
12
|
}, ()=>/*#__PURE__*/ react.createElement("div", {
|
|
13
|
-
className: "w-full
|
|
13
|
+
className: "w-full grid grid-cols-4 gap-sm items-center"
|
|
14
14
|
}, props.filters.map((filter)=>/*#__PURE__*/ react.createElement("div", {
|
|
15
|
-
key: filter.name
|
|
16
|
-
|
|
15
|
+
key: filter.name,
|
|
16
|
+
className: "empty:hidden min-w-0"
|
|
17
|
+
}, filter.element)), props.children && /*#__PURE__*/ react.createElement("div", null, props.children)))), /*#__PURE__*/ react.createElement(Separator, null));
|
|
17
18
|
};
|
|
18
19
|
export { Filters };
|
|
19
20
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components/Filters/Filters.js","sources":["../../../src/components/Filters/Filters.tsx"],"sourcesContent":["import React from \"react\";\nimport { Separator } from \"@webiny/admin-ui\";\nimport type { FormOnSubmit, FormProps, GenericFormData } from \"@webiny/form\";\nimport { Form } from \"@webiny/form\";\n\ntype Filter = {\n name: string;\n element: React.ReactElement;\n};\n\nexport type GenericFiltersData = GenericFormData;\n\nexport type FiltersOnSubmit<T extends GenericFiltersData = GenericFiltersData> = FormOnSubmit<T>;\n\nexport interface FiltersProps<T extends GenericFormData = GenericFormData> extends Pick<\n FormProps<T>,\n \"data\" | \"onChange\"\n> {\n filters: Filter[];\n show: boolean;\n children?: React.ReactNode;\n [\"data-testid\"]?: string;\n}\n\nexport const Filters = <T extends GenericFiltersData = GenericFiltersData>(\n props: FiltersProps<T>\n) => {\n if (!props.show || !props.filters.length) {\n return null;\n }\n\n return (\n <>\n <div\n className={\"w-full bg-neutral-base px-md my-sm\"}\n data-testid={props[\"data-testid\"] || \"filters-container\"}\n >\n <Form data={props.data} onChange={props.onChange}>\n {() => (\n <div className={\"w-full
|
|
1
|
+
{"version":3,"file":"components/Filters/Filters.js","sources":["../../../src/components/Filters/Filters.tsx"],"sourcesContent":["import React from \"react\";\nimport { Separator } from \"@webiny/admin-ui\";\nimport type { FormOnSubmit, FormProps, GenericFormData } from \"@webiny/form\";\nimport { Form } from \"@webiny/form\";\n\ntype Filter = {\n name: string;\n element: React.ReactElement;\n};\n\nexport type GenericFiltersData = GenericFormData;\n\nexport type FiltersOnSubmit<T extends GenericFiltersData = GenericFiltersData> = FormOnSubmit<T>;\n\nexport interface FiltersProps<T extends GenericFormData = GenericFormData> extends Pick<\n FormProps<T>,\n \"data\" | \"onChange\"\n> {\n filters: Filter[];\n show: boolean;\n children?: React.ReactNode;\n [\"data-testid\"]?: string;\n}\n\nexport const Filters = <T extends GenericFiltersData = GenericFiltersData>(\n props: FiltersProps<T>\n) => {\n if (!props.show || !props.filters.length) {\n return null;\n }\n\n return (\n <>\n <div\n className={\"w-full bg-neutral-base px-md my-sm\"}\n data-testid={props[\"data-testid\"] || \"filters-container\"}\n >\n <Form data={props.data} onChange={props.onChange}>\n {() => (\n <div className={\"w-full grid grid-cols-4 gap-sm items-center\"}>\n {props.filters.map(filter => (\n <div key={filter.name} className={\"empty:hidden min-w-0\"}>\n {filter.element}\n </div>\n ))}\n {props.children && <div>{props.children}</div>}\n </div>\n )}\n </Form>\n </div>\n <Separator />\n </>\n );\n};\n"],"names":["Filters","props","Form","filter","Separator"],"mappings":";;;AAwBO,MAAMA,UAAU,CACnBC;IAEA,IAAI,CAACA,MAAM,IAAI,IAAI,CAACA,MAAM,OAAO,CAAC,MAAM,EACpC,OAAO;IAGX,OAAO,WAAP,GACI,wDACI,oBAAC;QACG,WAAW;QACX,eAAaA,KAAK,CAAC,cAAc,IAAI;qBAErC,oBAACC,MAAIA;QAAC,MAAMD,MAAM,IAAI;QAAE,UAAUA,MAAM,QAAQ;OAC3C,kBACG,oBAAC;YAAI,WAAW;WACXA,MAAM,OAAO,CAAC,GAAG,CAACE,CAAAA,SAAAA,WAAAA,GACf,oBAAC;gBAAI,KAAKA,OAAO,IAAI;gBAAE,WAAW;eAC7BA,OAAO,OAAO,IAGtBF,MAAM,QAAQ,IAAI,WAAJ,GAAI,oBAAC,aAAKA,MAAM,QAAQ,oBAKvD,oBAACG,WAASA;AAGtB"}
|
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import type { IconPickerProps } from "./IconPickerComponent.js";
|
|
3
|
+
import { IconPickerTab } from "./IconPickerTab.js";
|
|
3
4
|
import type { Icon } from "./types.js";
|
|
4
|
-
declare
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
}
|
|
5
|
+
declare function IconPicker(props: IconPickerProps): React.JSX.Element;
|
|
6
|
+
declare namespace IconPicker {
|
|
7
|
+
export { IconRendererWithProvider as Icon };
|
|
8
|
+
export { IconPickerTab };
|
|
9
|
+
}
|
|
9
10
|
interface IconRendererWithProviderProps {
|
|
10
11
|
icon?: Icon;
|
|
11
12
|
size?: number;
|
|
12
13
|
}
|
|
14
|
+
declare const IconRendererWithProvider: ({ icon, ...props }: IconRendererWithProviderProps) => React.JSX.Element | null;
|
|
13
15
|
export { IconPicker };
|
|
@@ -12,6 +12,6 @@ export interface IconPickerProps extends FormComponentProps {
|
|
|
12
12
|
export interface IconPickerComponentProps extends IconPickerProps {
|
|
13
13
|
presenter: IconPickerPresenter;
|
|
14
14
|
}
|
|
15
|
-
export declare const IconPickerComponent: (({ presenter, label, description, removable, required, disabled, ...props }: IconPickerComponentProps) => React.JSX.Element) &
|
|
16
|
-
|
|
15
|
+
export declare const IconPickerComponent: (({ presenter, label, description, removable, required, disabled, ...props }: IconPickerComponentProps) => React.JSX.Element) & {
|
|
16
|
+
displayName: string;
|
|
17
17
|
};
|
|
@@ -27,7 +27,7 @@ const IconPickerComponent = observer(({ presenter, label, description, removable
|
|
|
27
27
|
]);
|
|
28
28
|
const handleOnOpenChange = useCallback((open)=>{
|
|
29
29
|
if (open) return presenter.openMenu();
|
|
30
|
-
|
|
30
|
+
return presenter.closeMenu();
|
|
31
31
|
}, [
|
|
32
32
|
presenter.openMenu,
|
|
33
33
|
presenter.closeMenu
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components/IconPicker/IconPickerComponent.js","sources":["../../../src/components/IconPicker/IconPickerComponent.tsx"],"sourcesContent":["import React, { useEffect, useCallback, useMemo } from \"react\";\nimport { observer } from \"mobx-react-lite\";\nimport isEqual from \"lodash/isEqual.js\";\nimport type { FormComponentProps } from \"@webiny/admin-ui\";\nimport {\n FormComponentDescription,\n FormComponentErrorMessage,\n FormComponentLabel,\n PopoverPrimitive\n} from \"@webiny/admin-ui\";\nimport { IconPickerContent, IconPickerTrigger } from \"./components/index.js\";\nimport type { IconPickerPresenter } from \"./IconPickerPresenter.js\";\nimport { IconPickerPresenterProvider } from \"./IconPickerPresenterProvider.js\";\nimport type { Icon } from \"./types.js\";\nimport { ICON_PICKER_SIZE } from \"./types.js\";\n\nexport interface IconPickerProps extends FormComponentProps {\n size?: ICON_PICKER_SIZE;\n removable?: boolean;\n value?: Icon;\n onChange?: (value: Icon | undefined) => void;\n}\n\nexport interface IconPickerComponentProps extends IconPickerProps {\n presenter: IconPickerPresenter;\n}\n\nexport const IconPickerComponent = observer(\n ({\n presenter,\n label,\n description,\n removable,\n required,\n disabled,\n ...props\n }: IconPickerComponentProps) => {\n const { value, onChange } = props;\n const { isValid: validationIsValid, message: validationMessage } = props.validation || {};\n const invalid = useMemo(() => validationIsValid === false, [validationIsValid]);\n const { activeTab, isMenuOpened, isLoading, iconTypes, selectedIcon, size } = presenter.vm;\n\n useEffect(() => {\n if (onChange && selectedIcon && !isEqual(selectedIcon, value)) {\n onChange(selectedIcon);\n }\n }, [JSON.stringify(selectedIcon)]);\n\n const removeIcon = useCallback(() => {\n if (onChange) {\n presenter.setIcon(null);\n onChange(undefined);\n }\n }, [onChange]);\n\n const handleOnOpenChange = useCallback(\n (open: boolean) => {\n if (open) {\n return presenter.openMenu();\n } else {\n return presenter.closeMenu();\n }\n },\n [presenter.openMenu, presenter.closeMenu]\n );\n\n return (\n <IconPickerPresenterProvider presenter={presenter}>\n <FormComponentLabel text={label} required={required} disabled={disabled} />\n <FormComponentDescription text={description} />\n <PopoverPrimitive open={isMenuOpened} onOpenChange={handleOnOpenChange}>\n <PopoverPrimitive.Trigger>\n <IconPickerTrigger icon={selectedIcon} />\n </PopoverPrimitive.Trigger>\n <PopoverPrimitive.Content\n style={{ width: size === ICON_PICKER_SIZE.SMALL ? \"248px\" : \"328px\" }}\n >\n <IconPickerContent\n loading={isLoading}\n removable={value && removable}\n iconTypes={iconTypes}\n activeTab={activeTab}\n removeIcon={removeIcon}\n />\n </PopoverPrimitive.Content>\n </PopoverPrimitive>\n <FormComponentErrorMessage text={validationMessage} invalid={invalid} />\n </IconPickerPresenterProvider>\n );\n }\n);\n"],"names":["IconPickerComponent","observer","presenter","label","description","removable","required","disabled","props","value","onChange","validationIsValid","validationMessage","invalid","useMemo","activeTab","isMenuOpened","isLoading","iconTypes","selectedIcon","size","useEffect","isEqual","JSON","removeIcon","useCallback","undefined","handleOnOpenChange","open","IconPickerPresenterProvider","FormComponentLabel","FormComponentDescription","PopoverPrimitive","IconPickerTrigger","ICON_PICKER_SIZE","IconPickerContent","FormComponentErrorMessage"],"mappings":";;;;;;;AA2BO,MAAMA,sBAAsBC,SAC/B,CAAC,EACGC,SAAS,EACTC,KAAK,EACLC,WAAW,EACXC,SAAS,EACTC,QAAQ,EACRC,QAAQ,EACR,GAAGC,OACoB;IACvB,MAAM,EAAEC,KAAK,EAAEC,QAAQ,EAAE,GAAGF;IAC5B,MAAM,EAAE,SAASG,iBAAiB,EAAE,SAASC,iBAAiB,EAAE,GAAGJ,MAAM,UAAU,IAAI,CAAC;IACxF,MAAMK,UAAUC,QAAQ,IAAMH,AAAsB,UAAtBA,mBAA6B;QAACA;KAAkB;IAC9E,MAAM,EAAEI,SAAS,EAAEC,YAAY,EAAEC,SAAS,EAAEC,SAAS,EAAEC,YAAY,EAAEC,IAAI,EAAE,GAAGlB,UAAU,EAAE;IAE1FmB,UAAU;QACN,IAAIX,YAAYS,gBAAgB,CAACG,QAAQH,cAAcV,QACnDC,SAASS;IAEjB,GAAG;QAACI,KAAK,SAAS,CAACJ;KAAc;IAEjC,MAAMK,aAAaC,YAAY;QAC3B,IAAIf,UAAU;YACVR,UAAU,OAAO,CAAC;YAClBQ,SAASgB;QACb;IACJ,GAAG;QAAChB;KAAS;IAEb,MAAMiB,qBAAqBF,YACvB,CAACG;QACG,IAAIA,MACA,OAAO1B,UAAU,QAAQ;
|
|
1
|
+
{"version":3,"file":"components/IconPicker/IconPickerComponent.js","sources":["../../../src/components/IconPicker/IconPickerComponent.tsx"],"sourcesContent":["import React, { useEffect, useCallback, useMemo } from \"react\";\nimport { observer } from \"mobx-react-lite\";\nimport isEqual from \"lodash/isEqual.js\";\nimport type { FormComponentProps } from \"@webiny/admin-ui\";\nimport {\n FormComponentDescription,\n FormComponentErrorMessage,\n FormComponentLabel,\n PopoverPrimitive\n} from \"@webiny/admin-ui\";\nimport { IconPickerContent, IconPickerTrigger } from \"./components/index.js\";\nimport type { IconPickerPresenter } from \"./IconPickerPresenter.js\";\nimport { IconPickerPresenterProvider } from \"./IconPickerPresenterProvider.js\";\nimport type { Icon } from \"./types.js\";\nimport { ICON_PICKER_SIZE } from \"./types.js\";\n\nexport interface IconPickerProps extends FormComponentProps {\n size?: ICON_PICKER_SIZE;\n removable?: boolean;\n value?: Icon;\n onChange?: (value: Icon | undefined) => void;\n}\n\nexport interface IconPickerComponentProps extends IconPickerProps {\n presenter: IconPickerPresenter;\n}\n\nexport const IconPickerComponent = observer(\n ({\n presenter,\n label,\n description,\n removable,\n required,\n disabled,\n ...props\n }: IconPickerComponentProps) => {\n const { value, onChange } = props;\n const { isValid: validationIsValid, message: validationMessage } = props.validation || {};\n const invalid = useMemo(() => validationIsValid === false, [validationIsValid]);\n const { activeTab, isMenuOpened, isLoading, iconTypes, selectedIcon, size } = presenter.vm;\n\n useEffect(() => {\n if (onChange && selectedIcon && !isEqual(selectedIcon, value)) {\n onChange(selectedIcon);\n }\n }, [JSON.stringify(selectedIcon)]);\n\n const removeIcon = useCallback(() => {\n if (onChange) {\n presenter.setIcon(null);\n onChange(undefined);\n }\n }, [onChange]);\n\n const handleOnOpenChange = useCallback(\n (open: boolean) => {\n if (open) {\n return presenter.openMenu();\n } else {\n return presenter.closeMenu();\n }\n },\n [presenter.openMenu, presenter.closeMenu]\n );\n\n return (\n <IconPickerPresenterProvider presenter={presenter}>\n <FormComponentLabel text={label} required={required} disabled={disabled} />\n <FormComponentDescription text={description} />\n <PopoverPrimitive open={isMenuOpened} onOpenChange={handleOnOpenChange}>\n <PopoverPrimitive.Trigger>\n <IconPickerTrigger icon={selectedIcon} />\n </PopoverPrimitive.Trigger>\n <PopoverPrimitive.Content\n style={{ width: size === ICON_PICKER_SIZE.SMALL ? \"248px\" : \"328px\" }}\n >\n <IconPickerContent\n loading={isLoading}\n removable={value && removable}\n iconTypes={iconTypes}\n activeTab={activeTab}\n removeIcon={removeIcon}\n />\n </PopoverPrimitive.Content>\n </PopoverPrimitive>\n <FormComponentErrorMessage text={validationMessage} invalid={invalid} />\n </IconPickerPresenterProvider>\n );\n }\n);\n"],"names":["IconPickerComponent","observer","presenter","label","description","removable","required","disabled","props","value","onChange","validationIsValid","validationMessage","invalid","useMemo","activeTab","isMenuOpened","isLoading","iconTypes","selectedIcon","size","useEffect","isEqual","JSON","removeIcon","useCallback","undefined","handleOnOpenChange","open","IconPickerPresenterProvider","FormComponentLabel","FormComponentDescription","PopoverPrimitive","IconPickerTrigger","ICON_PICKER_SIZE","IconPickerContent","FormComponentErrorMessage"],"mappings":";;;;;;;AA2BO,MAAMA,sBAAsBC,SAC/B,CAAC,EACGC,SAAS,EACTC,KAAK,EACLC,WAAW,EACXC,SAAS,EACTC,QAAQ,EACRC,QAAQ,EACR,GAAGC,OACoB;IACvB,MAAM,EAAEC,KAAK,EAAEC,QAAQ,EAAE,GAAGF;IAC5B,MAAM,EAAE,SAASG,iBAAiB,EAAE,SAASC,iBAAiB,EAAE,GAAGJ,MAAM,UAAU,IAAI,CAAC;IACxF,MAAMK,UAAUC,QAAQ,IAAMH,AAAsB,UAAtBA,mBAA6B;QAACA;KAAkB;IAC9E,MAAM,EAAEI,SAAS,EAAEC,YAAY,EAAEC,SAAS,EAAEC,SAAS,EAAEC,YAAY,EAAEC,IAAI,EAAE,GAAGlB,UAAU,EAAE;IAE1FmB,UAAU;QACN,IAAIX,YAAYS,gBAAgB,CAACG,QAAQH,cAAcV,QACnDC,SAASS;IAEjB,GAAG;QAACI,KAAK,SAAS,CAACJ;KAAc;IAEjC,MAAMK,aAAaC,YAAY;QAC3B,IAAIf,UAAU;YACVR,UAAU,OAAO,CAAC;YAClBQ,SAASgB;QACb;IACJ,GAAG;QAAChB;KAAS;IAEb,MAAMiB,qBAAqBF,YACvB,CAACG;QACG,IAAIA,MACA,OAAO1B,UAAU,QAAQ;QAEzB,OAAOA,UAAU,SAAS;IAElC,GACA;QAACA,UAAU,QAAQ;QAAEA,UAAU,SAAS;KAAC;IAG7C,OAAO,WAAP,GACI,oBAAC2B,6BAA2BA;QAAC,WAAW3B;qBACpC,oBAAC4B,oBAAkBA;QAAC,MAAM3B;QAAO,UAAUG;QAAU,UAAUC;sBAC/D,oBAACwB,0BAAwBA;QAAC,MAAM3B;sBAChC,oBAAC4B,kBAAgBA;QAAC,MAAMhB;QAAc,cAAcW;qBAChD,oBAACK,iBAAiB,OAAO,sBACrB,oBAACC,mBAAiBA;QAAC,MAAMd;uBAE7B,oBAACa,iBAAiB,OAAO;QACrB,OAAO;YAAE,OAAOZ,SAASc,iBAAiB,KAAK,GAAG,UAAU;QAAQ;qBAEpE,oBAACC,mBAAiBA;QACd,SAASlB;QACT,WAAWR,SAASJ;QACpB,WAAWa;QACX,WAAWH;QACX,YAAYS;wBAIxB,oBAACY,2BAAyBA;QAAC,MAAMxB;QAAmB,SAASC;;AAGzE"}
|
|
@@ -2,7 +2,7 @@ import React from "react";
|
|
|
2
2
|
import { inputVariants, type VariantProps } from "@webiny/admin-ui";
|
|
3
3
|
import type { Icon } from "../../../components/IconPicker/types.js";
|
|
4
4
|
declare const iconPickerTriggerVariants: (props?: ({
|
|
5
|
-
size?: "
|
|
5
|
+
size?: "lg" | "md" | "xl" | null | undefined;
|
|
6
6
|
disabled?: boolean | null | undefined;
|
|
7
7
|
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
8
8
|
interface IconPickerTriggerProps extends VariantProps<typeof inputVariants>, VariantProps<typeof iconPickerTriggerVariants> {
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
+
import { IconPackProvider as IconPack } from "./IconPackProvider.js";
|
|
2
3
|
import { IconType } from "./IconType.js";
|
|
3
4
|
import type { Icon } from "../types.js";
|
|
4
5
|
export declare const IconPickerConfig: (({ priority, children }: import("@webiny/react-properties").ConfigProps) => React.JSX.Element) & {
|
|
5
|
-
IconPack:
|
|
6
|
+
IconPack: typeof IconPack;
|
|
6
7
|
IconType: IconType;
|
|
7
8
|
};
|
|
8
9
|
export declare const IconPickerWithConfig: ({ onProperties, children }: import("@webiny/react-properties").WithConfigProps) => React.JSX.Element;
|
|
@@ -24,6 +24,7 @@ const LexicalLinkForm = ({ linkData, onSave, removeLink })=>{
|
|
|
24
24
|
className: "flex w-full items-center justify-between mt-sm gap-sm"
|
|
25
25
|
}, /*#__PURE__*/ react.createElement(TargetSwitch, null), /*#__PURE__*/ react.createElement(Button, {
|
|
26
26
|
variant: "ghost",
|
|
27
|
+
size: "sm",
|
|
27
28
|
text: "Remove link",
|
|
28
29
|
className: "text-destructive-primary! [&_svg]:fill-destructive",
|
|
29
30
|
onClick: removeLink,
|
|
@@ -33,6 +34,7 @@ const LexicalLinkForm = ({ linkData, onSave, removeLink })=>{
|
|
|
33
34
|
})
|
|
34
35
|
}), /*#__PURE__*/ react.createElement(Button, {
|
|
35
36
|
variant: "primary",
|
|
37
|
+
size: "sm",
|
|
36
38
|
text: "Save",
|
|
37
39
|
onClick: form.submit
|
|
38
40
|
}))));
|
|
@@ -57,6 +59,7 @@ const UrlInput = ()=>{
|
|
|
57
59
|
inputRef.current = ref;
|
|
58
60
|
},
|
|
59
61
|
variant: "secondary",
|
|
62
|
+
size: "md",
|
|
60
63
|
placeholder: "Enter link",
|
|
61
64
|
autoFocus: true,
|
|
62
65
|
startIcon: /*#__PURE__*/ react.createElement(Icon, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components/LexicalEditor/LexicalLinkForm.js","sources":["../../../src/components/LexicalEditor/LexicalLinkForm.tsx"],"sourcesContent":["import React, { useEffect, useRef } from \"react\";\nimport type { FloatingLinkEditorPlugin } from \"@webiny/lexical-editor\";\nimport { Button, Grid, Icon, IconButton, Input, Switch } from \"@webiny/admin-ui\";\nimport { Form, useBind } from \"@webiny/form\";\nimport { validation } from \"@webiny/validation\";\nimport { ReactComponent as GlobeIcon } from \"@webiny/icons/language.svg\";\nimport { ReactComponent as OpenInNew } from \"@webiny/icons/open_in_new.svg\";\nimport { ReactComponent as RemoveLink } from \"@webiny/icons/link_off.svg\";\n\ntype LexicalLinkForm = NonNullable<\n React.ComponentProps<typeof FloatingLinkEditorPlugin>[\"LinkForm\"]\n>;\ntype LinkFormProps = React.ComponentProps<LexicalLinkForm>;\n\nexport const LexicalLinkForm = ({ linkData, onSave, removeLink }: LinkFormProps) => {\n const onSubmit = (data: LinkFormProps[\"linkData\"]) => {\n onSave(data);\n };\n\n return (\n <Form data={linkData} onSubmit={onSubmit} validateOnFirstSubmit submitOnEnter>\n {form => (\n <div className={\"p-md\"}>\n <Grid gap={\"small\"}>\n <Grid.Column span={12}>\n <UrlInput />\n </Grid.Column>\n </Grid>\n <div className={\"flex w-full items-center justify-between mt-sm gap-sm\"}>\n <TargetSwitch />\n <Button\n variant={\"ghost\"}\n text={`Remove link`}\n className={\"text-destructive-primary! [&_svg]:fill-destructive\"}\n onClick={removeLink}\n icon={<Icon label={\"Remove link\"} icon={<RemoveLink />} />}\n />\n <Button
|
|
1
|
+
{"version":3,"file":"components/LexicalEditor/LexicalLinkForm.js","sources":["../../../src/components/LexicalEditor/LexicalLinkForm.tsx"],"sourcesContent":["import React, { useEffect, useRef } from \"react\";\nimport type { FloatingLinkEditorPlugin } from \"@webiny/lexical-editor\";\nimport { Button, Grid, Icon, IconButton, Input, Switch } from \"@webiny/admin-ui\";\nimport { Form, useBind } from \"@webiny/form\";\nimport { validation } from \"@webiny/validation\";\nimport { ReactComponent as GlobeIcon } from \"@webiny/icons/language.svg\";\nimport { ReactComponent as OpenInNew } from \"@webiny/icons/open_in_new.svg\";\nimport { ReactComponent as RemoveLink } from \"@webiny/icons/link_off.svg\";\n\ntype LexicalLinkForm = NonNullable<\n React.ComponentProps<typeof FloatingLinkEditorPlugin>[\"LinkForm\"]\n>;\ntype LinkFormProps = React.ComponentProps<LexicalLinkForm>;\n\nexport const LexicalLinkForm = ({ linkData, onSave, removeLink }: LinkFormProps) => {\n const onSubmit = (data: LinkFormProps[\"linkData\"]) => {\n onSave(data);\n };\n\n return (\n <Form data={linkData} onSubmit={onSubmit} validateOnFirstSubmit submitOnEnter>\n {form => (\n <div className={\"p-md\"}>\n <Grid gap={\"small\"}>\n <Grid.Column span={12}>\n <UrlInput />\n </Grid.Column>\n </Grid>\n <div className={\"flex w-full items-center justify-between mt-sm gap-sm\"}>\n <TargetSwitch />\n <Button\n variant={\"ghost\"}\n size={\"sm\"}\n text={`Remove link`}\n className={\"text-destructive-primary! [&_svg]:fill-destructive\"}\n onClick={removeLink}\n icon={<Icon label={\"Remove link\"} icon={<RemoveLink />} />}\n />\n <Button\n variant={\"primary\"}\n size={\"sm\"}\n text={`Save`}\n onClick={form.submit}\n />\n </div>\n </div>\n )}\n </Form>\n );\n};\n\nconst UrlInput = () => {\n const inputRef = useRef<HTMLInputElement | null>(null);\n\n const urlBind = useBind({\n name: \"url\",\n validators: validation.create(\"required,url:allowRelative:allowHref\")\n });\n\n useEffect(() => {\n if (inputRef.current) {\n setTimeout(() => {\n inputRef.current?.focus();\n }, 10);\n }\n }, []);\n\n const openInNewTab = () => {\n if (urlBind.validation.isValid !== false && urlBind.value) {\n window.open(urlBind.value, \"_blank\");\n }\n };\n\n return (\n <Input\n {...urlBind}\n inputRef={ref => {\n inputRef.current = ref;\n }}\n variant={\"secondary\"}\n size={\"md\"}\n placeholder={\"Enter link\"}\n autoFocus={true}\n startIcon={<Icon label=\"globe\" icon={<GlobeIcon />} />}\n endIcon={<IconButton variant=\"ghost\" icon={<OpenInNew />} onClick={openInNewTab} />}\n />\n );\n};\n\nconst TargetSwitch = () => {\n const targetBind = useBind({\n name: \"target\",\n defaultValue: \"_self\"\n });\n\n return (\n <Switch\n checked={targetBind.value === \"_blank\"}\n label={\"Open in new tab\"}\n onChange={value => {\n targetBind.onChange(value === true ? \"_blank\" : \"_self\");\n }}\n />\n );\n};\n"],"names":["LexicalLinkForm","linkData","onSave","removeLink","onSubmit","data","Form","form","Grid","UrlInput","TargetSwitch","Button","Icon","RemoveLink","inputRef","useRef","urlBind","useBind","validation","useEffect","setTimeout","openInNewTab","window","Input","ref","GlobeIcon","IconButton","OpenInNew","targetBind","Switch","value"],"mappings":";;;;;;;AAcO,MAAMA,kBAAkB,CAAC,EAAEC,QAAQ,EAAEC,MAAM,EAAEC,UAAU,EAAiB;IAC3E,MAAMC,WAAW,CAACC;QACdH,OAAOG;IACX;IAEA,OAAO,WAAP,GACI,oBAACC,MAAIA;QAAC,MAAML;QAAU,UAAUG;QAAU;QAAsB;OAC3DG,CAAAA,OAAAA,WAAAA,GACG,oBAAC;YAAI,WAAW;yBACZ,oBAACC,MAAIA;YAAC,KAAK;yBACP,oBAACA,KAAK,MAAM;YAAC,MAAM;yBACf,oBAACC,UAAQA,SAAAA,WAAAA,GAGjB,oBAAC;YAAI,WAAW;yBACZ,oBAACC,cAAYA,OAAAA,WAAAA,GACb,oBAACC,QAAMA;YACH,SAAS;YACT,MAAM;YACN,MAAM;YACN,WAAW;YACX,SAASR;YACT,oBAAM,oBAACS,MAAIA;gBAAC,OAAO;gBAAe,oBAAM,oBAACC,6BAAUA;;0BAEvD,oBAACF,QAAMA;YACH,SAAS;YACT,MAAM;YACN,MAAM;YACN,SAASJ,KAAK,MAAM;;AAOhD;AAEA,MAAME,WAAW;IACb,MAAMK,WAAWC,OAAgC;IAEjD,MAAMC,UAAUC,QAAQ;QACpB,MAAM;QACN,YAAYC,WAAW,MAAM,CAAC;IAClC;IAEAC,UAAU;QACN,IAAIL,SAAS,OAAO,EAChBM,WAAW;YACPN,SAAS,OAAO,EAAE;QACtB,GAAG;IAEX,GAAG,EAAE;IAEL,MAAMO,eAAe;QACjB,IAAIL,AAA+B,UAA/BA,QAAQ,UAAU,CAAC,OAAO,IAAcA,QAAQ,KAAK,EACrDM,OAAO,IAAI,CAACN,QAAQ,KAAK,EAAE;IAEnC;IAEA,OAAO,WAAP,GACI,oBAACO,OAAKA;QACD,GAAGP,OAAO;QACX,UAAUQ,CAAAA;YACNV,SAAS,OAAO,GAAGU;QACvB;QACA,SAAS;QACT,MAAM;QACN,aAAa;QACb,WAAW;QACX,yBAAW,oBAACZ,MAAIA;YAAC,OAAM;YAAQ,oBAAM,oBAACa,gBAASA;;QAC/C,uBAAS,oBAACC,YAAUA;YAAC,SAAQ;YAAQ,oBAAM,oBAACC,gCAASA;YAAK,SAASN;;;AAG/E;AAEA,MAAMX,eAAe;IACjB,MAAMkB,aAAaX,QAAQ;QACvB,MAAM;QACN,cAAc;IAClB;IAEA,OAAO,WAAP,GACI,oBAACY,QAAMA;QACH,SAASD,AAAqB,aAArBA,WAAW,KAAK;QACzB,OAAO;QACP,UAAUE,CAAAA;YACNF,WAAW,QAAQ,CAACE,AAAU,SAAVA,QAAiB,WAAW;QACpD;;AAGZ"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import type { IListViewModel, IListActions } from "../../presentation/listPresenter/abstractions.js";
|
|
3
|
+
interface ListViewProps {
|
|
4
|
+
list: IListViewModel<any>;
|
|
5
|
+
actions: IListActions;
|
|
6
|
+
showingFilters?: boolean;
|
|
7
|
+
onToggleFilters?: () => void;
|
|
8
|
+
namespace: string;
|
|
9
|
+
sidebar?: React.ReactNode;
|
|
10
|
+
header?: React.ReactNode;
|
|
11
|
+
bulkActions?: React.ReactNode;
|
|
12
|
+
filters?: React.ReactNode;
|
|
13
|
+
content: React.ReactNode;
|
|
14
|
+
bottomBar?: React.ReactNode;
|
|
15
|
+
}
|
|
16
|
+
declare const ListViewBase: ({ list, actions, showingFilters, onToggleFilters, namespace, sidebar, header, bulkActions, filters, content, bottomBar }: ListViewProps) => React.JSX.Element;
|
|
17
|
+
export { ListViewBase, type ListViewProps };
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import react, { useMemo } from "react";
|
|
2
|
+
import { LeftPanel, RightPanel, SplitView } from "../SplitView/SplitView.js";
|
|
3
|
+
import { ListViewProvider } from "./context.js";
|
|
4
|
+
const ListViewBase = ({ list, actions, showingFilters = false, onToggleFilters, namespace, sidebar, header, bulkActions, filters, content, bottomBar })=>{
|
|
5
|
+
const ctx = useMemo(()=>({
|
|
6
|
+
list,
|
|
7
|
+
actions,
|
|
8
|
+
showingFilters,
|
|
9
|
+
onToggleFilters
|
|
10
|
+
}), [
|
|
11
|
+
list,
|
|
12
|
+
actions,
|
|
13
|
+
showingFilters,
|
|
14
|
+
onToggleFilters
|
|
15
|
+
]);
|
|
16
|
+
const mainContent = /*#__PURE__*/ react.createElement("div", {
|
|
17
|
+
className: "h-full relative overflow-hidden"
|
|
18
|
+
}, header, /*#__PURE__*/ react.createElement("div", {
|
|
19
|
+
style: {
|
|
20
|
+
top: "105px"
|
|
21
|
+
},
|
|
22
|
+
className: "w-full overflow-hidden absolute top-0 bottom-0 left-0"
|
|
23
|
+
}, bulkActions, filters, content, bottomBar));
|
|
24
|
+
return /*#__PURE__*/ react.createElement(ListViewProvider, {
|
|
25
|
+
value: ctx
|
|
26
|
+
}, sidebar ? /*#__PURE__*/ react.createElement(SplitView, {
|
|
27
|
+
namespace: namespace
|
|
28
|
+
}, /*#__PURE__*/ react.createElement(LeftPanel, {
|
|
29
|
+
span: 2
|
|
30
|
+
}, sidebar), /*#__PURE__*/ react.createElement(RightPanel, {
|
|
31
|
+
span: 10
|
|
32
|
+
}, mainContent)) : mainContent);
|
|
33
|
+
};
|
|
34
|
+
export { ListViewBase };
|
|
35
|
+
|
|
36
|
+
//# sourceMappingURL=ListView.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components/ListView/ListView.js","sources":["../../../src/components/ListView/ListView.tsx"],"sourcesContent":["import React, { useMemo } from \"react\";\nimport { LeftPanel, RightPanel, SplitView } from \"~/components/SplitView/SplitView.js\";\nimport { ListViewProvider } from \"./context.js\";\nimport type { IListViewModel, IListActions } from \"~/presentation/listPresenter/abstractions.js\";\n\ninterface ListViewProps {\n list: IListViewModel<any>;\n actions: IListActions;\n showingFilters?: boolean;\n onToggleFilters?: () => void;\n namespace: string;\n sidebar?: React.ReactNode;\n header?: React.ReactNode;\n bulkActions?: React.ReactNode;\n filters?: React.ReactNode;\n content: React.ReactNode;\n bottomBar?: React.ReactNode;\n}\n\nconst ListViewBase = ({\n list,\n actions,\n showingFilters = false,\n onToggleFilters,\n namespace,\n sidebar,\n header,\n bulkActions,\n filters,\n content,\n bottomBar\n}: ListViewProps) => {\n const ctx = useMemo(\n () => ({ list, actions, showingFilters, onToggleFilters }),\n [list, actions, showingFilters, onToggleFilters]\n );\n\n const mainContent = (\n <div className={\"h-full relative overflow-hidden\"}>\n {header}\n <div\n style={{ top: \"105px\" }}\n className={\"w-full overflow-hidden absolute top-0 bottom-0 left-0\"}\n >\n {bulkActions}\n {filters}\n {content}\n {bottomBar}\n </div>\n </div>\n );\n\n return (\n <ListViewProvider value={ctx}>\n {sidebar ? (\n <SplitView namespace={namespace}>\n <LeftPanel span={2}>{sidebar}</LeftPanel>\n <RightPanel span={10}>{mainContent}</RightPanel>\n </SplitView>\n ) : (\n mainContent\n )}\n </ListViewProvider>\n );\n};\n\nexport { ListViewBase, type ListViewProps };\n"],"names":["ListViewBase","list","actions","showingFilters","onToggleFilters","namespace","sidebar","header","bulkActions","filters","content","bottomBar","ctx","useMemo","mainContent","ListViewProvider","SplitView","LeftPanel","RightPanel"],"mappings":";;;AAmBA,MAAMA,eAAe,CAAC,EAClBC,IAAI,EACJC,OAAO,EACPC,iBAAiB,KAAK,EACtBC,eAAe,EACfC,SAAS,EACTC,OAAO,EACPC,MAAM,EACNC,WAAW,EACXC,OAAO,EACPC,OAAO,EACPC,SAAS,EACG;IACZ,MAAMC,MAAMC,QACR,IAAO;YAAEZ;YAAMC;YAASC;YAAgBC;QAAgB,IACxD;QAACH;QAAMC;QAASC;QAAgBC;KAAgB;IAGpD,MAAMU,cAAc,WAAdA,GACF,oBAAC;QAAI,WAAW;OACXP,QAAAA,WAAAA,GACD,oBAAC;QACG,OAAO;YAAE,KAAK;QAAQ;QACtB,WAAW;OAEVC,aACAC,SACAC,SACAC;IAKb,OAAO,WAAP,GACI,oBAACI,kBAAgBA;QAAC,OAAOH;OACpBN,UAAU,WAAVA,GACG,oBAACU,WAASA;QAAC,WAAWX;qBAClB,oBAACY,WAASA;QAAC,MAAM;OAAIX,UAAAA,WAAAA,GACrB,oBAACY,YAAUA;QAAC,MAAM;OAAKJ,gBAG3BA;AAIhB"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
export interface ListViewBottomBarProps {
|
|
3
|
+
meta?: {
|
|
4
|
+
itemLabel: string | {
|
|
5
|
+
singular: string;
|
|
6
|
+
plural: string;
|
|
7
|
+
};
|
|
8
|
+
};
|
|
9
|
+
status?: {
|
|
10
|
+
loadingText?: string;
|
|
11
|
+
} | true;
|
|
12
|
+
}
|
|
13
|
+
declare const ListViewBottomBar: ({ meta, status }: ListViewBottomBarProps) => React.JSX.Element;
|
|
14
|
+
export { ListViewBottomBar };
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import react from "react";
|
|
2
|
+
import { Loader, Separator, Text } from "@webiny/admin-ui";
|
|
3
|
+
import { observer } from "mobx-react-lite";
|
|
4
|
+
import { useListView } from "./context.js";
|
|
5
|
+
const Meta = observer(({ itemLabel })=>{
|
|
6
|
+
const { list } = useListView();
|
|
7
|
+
const { loading, totalCount, currentCount } = list.pagination;
|
|
8
|
+
if (loading) return null;
|
|
9
|
+
const singular = "string" == typeof itemLabel ? itemLabel : itemLabel.singular;
|
|
10
|
+
const plural = "string" == typeof itemLabel ? `${itemLabel}s` : itemLabel.plural;
|
|
11
|
+
const label = 1 === totalCount ? singular : plural;
|
|
12
|
+
return /*#__PURE__*/ react.createElement(Text, {
|
|
13
|
+
size: "sm",
|
|
14
|
+
as: "div",
|
|
15
|
+
className: "text-neutral-strong"
|
|
16
|
+
}, `Showing ${currentCount} out of ${totalCount} ${label}.`);
|
|
17
|
+
});
|
|
18
|
+
const Status = observer(({ loadingText })=>{
|
|
19
|
+
const { list } = useListView();
|
|
20
|
+
if (!list.pagination.loadingMore) return null;
|
|
21
|
+
return /*#__PURE__*/ react.createElement("div", {
|
|
22
|
+
className: "flex items-center gap-sm"
|
|
23
|
+
}, /*#__PURE__*/ react.createElement(Text, {
|
|
24
|
+
size: "sm",
|
|
25
|
+
as: "div",
|
|
26
|
+
className: "text-neutral-strong"
|
|
27
|
+
}, loadingText ?? "Loading more items..."), /*#__PURE__*/ react.createElement(Loader, {
|
|
28
|
+
size: "xs"
|
|
29
|
+
}));
|
|
30
|
+
});
|
|
31
|
+
const ListViewBottomBar = ({ meta, status })=>{
|
|
32
|
+
const statusProps = true === status ? {} : status;
|
|
33
|
+
return /*#__PURE__*/ react.createElement("div", {
|
|
34
|
+
className: "sticky bottom-0 z-5 bg-neutral-base w-full transform translate-z-0 overflow-hidden"
|
|
35
|
+
}, /*#__PURE__*/ react.createElement(Separator, null), /*#__PURE__*/ react.createElement("div", {
|
|
36
|
+
className: "h-xl px-md py-sm flex items-center justify-between"
|
|
37
|
+
}, meta ? /*#__PURE__*/ react.createElement(Meta, {
|
|
38
|
+
itemLabel: meta.itemLabel
|
|
39
|
+
}) : null, statusProps ? /*#__PURE__*/ react.createElement(Status, {
|
|
40
|
+
loadingText: statusProps.loadingText
|
|
41
|
+
}) : null));
|
|
42
|
+
};
|
|
43
|
+
export { ListViewBottomBar };
|
|
44
|
+
|
|
45
|
+
//# sourceMappingURL=ListViewBottomBar.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components/ListView/ListViewBottomBar.js","sources":["../../../src/components/ListView/ListViewBottomBar.tsx"],"sourcesContent":["import React from \"react\";\nimport { Loader, Separator, Text } from \"@webiny/admin-ui\";\nimport { observer } from \"mobx-react-lite\";\nimport { useListView } from \"./context.js\";\n\nexport interface ListViewBottomBarProps {\n meta?: { itemLabel: string | { singular: string; plural: string } };\n status?: { loadingText?: string } | true;\n}\n\nconst Meta = observer(\n ({ itemLabel }: { itemLabel: string | { singular: string; plural: string } }) => {\n const { list } = useListView();\n const { loading, totalCount, currentCount } = list.pagination;\n\n if (loading) {\n return null;\n }\n\n const singular = typeof itemLabel === \"string\" ? itemLabel : itemLabel.singular;\n const plural = typeof itemLabel === \"string\" ? `${itemLabel}s` : itemLabel.plural;\n const label = totalCount === 1 ? singular : plural;\n\n return (\n <Text\n size={\"sm\"}\n as={\"div\"}\n className={\"text-neutral-strong\"}\n >{`Showing ${currentCount} out of ${totalCount} ${label}.`}</Text>\n );\n }\n);\n\nconst Status = observer(({ loadingText }: { loadingText?: string }) => {\n const { list } = useListView();\n\n if (!list.pagination.loadingMore) {\n return null;\n }\n\n return (\n <div className=\"flex items-center gap-sm\">\n <Text size={\"sm\"} as={\"div\"} className={\"text-neutral-strong\"}>\n {loadingText ?? \"Loading more items...\"}\n </Text>\n <Loader size={\"xs\"} />\n </div>\n );\n});\n\nconst ListViewBottomBar = ({ meta, status }: ListViewBottomBarProps) => {\n const statusProps = status === true ? {} : status;\n\n return (\n <div className=\"sticky bottom-0 z-5 bg-neutral-base w-full transform translate-z-0 overflow-hidden\">\n <Separator />\n <div className={\"h-xl px-md py-sm flex items-center justify-between\"}>\n {meta ? <Meta itemLabel={meta.itemLabel} /> : null}\n {statusProps ? <Status loadingText={statusProps.loadingText} /> : null}\n </div>\n </div>\n );\n};\n\nexport { ListViewBottomBar };\n"],"names":["Meta","observer","itemLabel","list","useListView","loading","totalCount","currentCount","singular","plural","label","Text","Status","loadingText","Loader","ListViewBottomBar","meta","status","statusProps","Separator"],"mappings":";;;;AAUA,MAAMA,OAAOC,SACT,CAAC,EAAEC,SAAS,EAAgE;IACxE,MAAM,EAAEC,IAAI,EAAE,GAAGC;IACjB,MAAM,EAAEC,OAAO,EAAEC,UAAU,EAAEC,YAAY,EAAE,GAAGJ,KAAK,UAAU;IAE7D,IAAIE,SACA,OAAO;IAGX,MAAMG,WAAW,AAAqB,YAArB,OAAON,YAAyBA,YAAYA,UAAU,QAAQ;IAC/E,MAAMO,SAAS,AAAqB,YAArB,OAAOP,YAAyB,GAAGA,UAAU,CAAC,CAAC,GAAGA,UAAU,MAAM;IACjF,MAAMQ,QAAQJ,AAAe,MAAfA,aAAmBE,WAAWC;IAE5C,OAAO,WAAP,GACI,oBAACE,MAAIA;QACD,MAAM;QACN,IAAI;QACJ,WAAW;OACb,CAAC,QAAQ,EAAEJ,aAAa,QAAQ,EAAED,WAAW,CAAC,EAAEI,MAAM,CAAC,CAAC;AAElE;AAGJ,MAAME,SAASX,SAAS,CAAC,EAAEY,WAAW,EAA4B;IAC9D,MAAM,EAAEV,IAAI,EAAE,GAAGC;IAEjB,IAAI,CAACD,KAAK,UAAU,CAAC,WAAW,EAC5B,OAAO;IAGX,OAAO,WAAP,GACI,oBAAC;QAAI,WAAU;qBACX,oBAACQ,MAAIA;QAAC,MAAM;QAAM,IAAI;QAAO,WAAW;OACnCE,eAAe,wCAEpB,oBAACC,QAAMA;QAAC,MAAM;;AAG1B;AAEA,MAAMC,oBAAoB,CAAC,EAAEC,IAAI,EAAEC,MAAM,EAA0B;IAC/D,MAAMC,cAAcD,AAAW,SAAXA,SAAkB,CAAC,IAAIA;IAE3C,OAAO,WAAP,GACI,oBAAC;QAAI,WAAU;qBACX,oBAACE,WAASA,OAAAA,WAAAA,GACV,oBAAC;QAAI,WAAW;OACXH,OAAO,WAAPA,GAAO,oBAAChB,MAAIA;QAAC,WAAWgB,KAAK,SAAS;SAAO,MAC7CE,cAAc,WAAdA,GAAc,oBAACN,QAAMA;QAAC,aAAaM,YAAY,WAAW;SAAO;AAIlF"}
|