@webiny/app-admin 6.6.0-alpha.0 → 6.6.0-alpha.10
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 +34 -2
- package/base/Admin.js.map +1 -1
- package/base/Base/DefaultFieldRenderers.js +21 -2
- package/base/Base/DefaultFieldRenderers.js.map +1 -1
- package/base/Base/FieldRenderers/AutoCompleteRenderer.d.ts +13 -0
- package/base/Base/FieldRenderers/AutoCompleteRenderer.js +30 -0
- package/base/Base/FieldRenderers/AutoCompleteRenderer.js.map +1 -0
- package/base/Base/FieldRenderers/BirthdayInputRenderer.d.ts +21 -0
- package/base/Base/FieldRenderers/BirthdayInputRenderer.js +39 -0
- package/base/Base/FieldRenderers/BirthdayInputRenderer.js.map +1 -0
- package/base/Base/FieldRenderers/BirthdayInputRenderer.test.d.ts +1 -0
- package/base/Base/FieldRenderers/BirthdayInputRenderer.test.js +123 -0
- package/base/Base/FieldRenderers/BirthdayInputRenderer.test.js.map +1 -0
- package/base/Base/FieldRenderers/HorizontalTabsRenderer.d.ts +2 -2
- package/base/Base/FieldRenderers/LexicalRenderer.js +10 -6
- package/base/Base/FieldRenderers/LexicalRenderer.js.map +1 -1
- 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/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/MultiValueDynamicZone/MultiValueDynamicZone.d.ts +11 -0
- package/base/Base/FieldRenderers/ObjectRenderer/{MultiValueDynamicZone.js → MultiValueDynamicZone/MultiValueDynamicZone.js} +83 -15
- 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 +1 -1
- package/base/Base/FieldRenderers/ObjectRenderer/ObjectAccordionMultipleRenderer.js +29 -4
- package/base/Base/FieldRenderers/ObjectRenderer/ObjectAccordionMultipleRenderer.js.map +1 -1
- package/base/Base/FieldRenderers/ObjectRenderer/ObjectFieldComponents.d.ts +12 -8
- package/base/Base/FieldRenderers/ObjectRenderer/ObjectFieldComponents.js +48 -8
- package/base/Base/FieldRenderers/ObjectRenderer/ObjectFieldComponents.js.map +1 -1
- package/base/Base/FieldRenderers/ObjectRenderer/ObjectRenderer.js +16 -25
- 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 +29 -8
- package/base/Base/FieldRenderers/ObjectRenderer/SingleValueDynamicZone.js.map +1 -1
- package/base/Base/FieldRenderers/ObjectRenderer/{TemplatePicker.d.ts → TemplatePicker/AddTemplateButton.d.ts} +1 -1
- package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/AddTemplateButton.js +24 -0
- package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/AddTemplateButton.js.map +1 -0
- package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/SelectableTemplate.d.ts +13 -0
- package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/SelectableTemplate.js +21 -0
- package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/SelectableTemplate.js.map +1 -0
- package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateCard.d.ts +3 -0
- package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateCard.js +35 -0
- package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateCard.js.map +1 -0
- package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateGallery.d.ts +8 -0
- package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateGallery.js +22 -0
- package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateGallery.js.map +1 -0
- package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateGalleryToolbar.d.ts +10 -0
- package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateGalleryToolbar.js +52 -0
- package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateGalleryToolbar.js.map +1 -0
- package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateIcon.d.ts +8 -0
- package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateIcon.js +16 -0
- package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateIcon.js.map +1 -0
- package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateList.d.ts +10 -0
- package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateList.js +22 -0
- package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateList.js.map +1 -0
- package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateListItem.d.ts +3 -0
- package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateListItem.js +35 -0
- package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateListItem.js.map +1 -0
- package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/index.d.ts +1 -0
- package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/index.js +1 -0
- package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/types.d.ts +6 -0
- package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/types.js +0 -0
- package/base/Base/FieldRenderers/ObjectRenderer/resolveItemTitle.d.ts +8 -3
- package/base/Base/FieldRenderers/ObjectRenderer/resolveItemTitle.js +25 -17
- package/base/Base/FieldRenderers/ObjectRenderer/resolveItemTitle.js.map +1 -1
- package/base/Base/FieldRenderers/ObjectRenderer/resolveItemTitle.test.d.ts +1 -0
- package/base/Base/FieldRenderers/ObjectRenderer/resolveItemTitle.test.js +106 -0
- package/base/Base/FieldRenderers/ObjectRenderer/resolveItemTitle.test.js.map +1 -0
- package/base/Base/FieldRenderers/RadioButtonsRenderer.js +3 -2
- package/base/Base/FieldRenderers/RadioButtonsRenderer.js.map +1 -1
- 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/VerticalTabsRenderer.d.ts +2 -2
- package/base/Base/Menus.js +4 -4
- package/base/Base/Menus.js.map +1 -1
- package/base/Base.js +2 -1
- package/base/Base.js.map +1 -1
- package/base/createRootContainer.js +8 -2
- package/base/createRootContainer.js.map +1 -1
- package/base/resolveApiUrl.d.ts +10 -0
- package/base/resolveApiUrl.js +11 -3
- package/base/resolveApiUrl.js.map +1 -1
- package/base/ui/AssumedPermissionsSelector.d.ts +47 -0
- package/base/ui/AssumedPermissionsSelector.js +7 -0
- package/base/ui/AssumedPermissionsSelector.js.map +1 -0
- package/base/ui/DebuggerIndicator.d.ts +23 -0
- package/base/ui/DebuggerIndicator.js +5 -0
- package/base/ui/DebuggerIndicator.js.map +1 -0
- package/base/ui/Layout.d.ts +20 -0
- package/base/ui/Layout.js +2 -1
- package/base/ui/Layout.js.map +1 -1
- package/components/DeveloperMode/DeveloperMode.d.ts +1 -3
- package/components/DeveloperMode/DeveloperMode.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 +10 -3
- package/components/Filters/Filters.js.map +1 -1
- 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/LexicalEditor/LexicalLinkForm.js +3 -0
- package/components/LexicalEditor/LexicalLinkForm.js.map +1 -1
- package/components/ListView/ListViewBulkActions.d.ts +2 -2
- package/components/ListView/ListViewContent.d.ts +2 -2
- package/components/ListView/ListViewFilters.d.ts +2 -2
- package/components/ListView/index.d.ts +6 -6
- package/components/OverlayLayout/OverlayLayout.js +4 -2
- package/components/OverlayLayout/OverlayLayout.js.map +1 -1
- package/components/OverlayLayout/components/OverlayContent.js +1 -0
- package/components/OverlayLayout/components/OverlayContent.js.map +1 -1
- package/components/RolesMultiAutocomplete/index.d.ts +4 -2
- package/components/SplitView/SplitView.d.ts +2 -2
- package/components/SplitView/SplitView.js +8 -8
- package/components/SplitView/SplitView.js.map +1 -1
- package/components/Table/components/Table/TableInner.d.ts +2 -2
- package/components/TeamAutocomplete/index.d.ts +4 -2
- package/components/TeamsMultiAutocomplete/index.d.ts +4 -2
- package/components/index.d.ts +0 -1
- package/components/index.js +0 -1
- package/config/AdminConfig/Breadcrumbs.d.ts +42 -0
- package/config/AdminConfig/Breadcrumbs.js +24 -0
- package/config/AdminConfig/Breadcrumbs.js.map +1 -0
- 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/LexicalTheme/AllowCustomColors.d.ts +5 -0
- package/config/AdminConfig/LexicalTheme/AllowCustomColors.js +18 -0
- package/config/AdminConfig/LexicalTheme/AllowCustomColors.js.map +1 -0
- package/config/AdminConfig/LexicalTheme.d.ts +2 -0
- package/config/AdminConfig/LexicalTheme.js +2 -0
- package/config/AdminConfig/LexicalTheme.js.map +1 -1
- package/config/AdminConfig/Widget.d.ts +9 -1
- package/config/AdminConfig/Widget.js +6 -2
- package/config/AdminConfig/Widget.js.map +1 -1
- package/config/AdminConfig.d.ts +8 -0
- package/config/AdminConfig.js +8 -1
- package/config/AdminConfig.js.map +1 -1
- package/domain/Identity.js +1 -1
- package/domain/Identity.js.map +1 -1
- package/exports/admin/ui.d.ts +4 -0
- package/exports/admin/ui.js +4 -1
- package/exports/admin.d.ts +7 -0
- package/exports/admin.js +5 -0
- package/features/accessManagement/types.d.ts +3 -3
- package/features/adminAssistant/AdminAssistantGateway.d.ts +30 -0
- package/features/adminAssistant/AdminAssistantGateway.js +41 -0
- package/features/adminAssistant/AdminAssistantGateway.js.map +1 -0
- package/features/adminAssistant/AdminAssistantPresenter.d.ts +60 -0
- package/features/adminAssistant/AdminAssistantPresenter.js +377 -0
- package/features/adminAssistant/AdminAssistantPresenter.js.map +1 -0
- package/features/adminAssistant/abstractions.d.ts +176 -0
- package/features/adminAssistant/abstractions.js +6 -0
- package/features/adminAssistant/abstractions.js.map +1 -0
- package/features/adminAssistant/feature.d.ts +3 -0
- package/features/adminAssistant/feature.js +19 -0
- package/features/adminAssistant/feature.js.map +1 -0
- package/features/adminAssistant/index.d.ts +6 -0
- package/features/adminAssistant/index.js +3 -0
- package/features/adminAssistant/turnsFromMessages.d.ts +15 -0
- package/features/adminAssistant/turnsFromMessages.js +77 -0
- package/features/adminAssistant/turnsFromMessages.js.map +1 -0
- package/features/adminUsers/account/getCurrentUser/GetCurrentUserGateway.d.ts +11 -0
- package/features/adminUsers/account/getCurrentUser/GetCurrentUserGateway.js +44 -0
- package/features/adminUsers/account/getCurrentUser/GetCurrentUserGateway.js.map +1 -0
- package/features/adminUsers/account/getCurrentUser/GetCurrentUserUseCase.d.ts +10 -0
- package/features/adminUsers/account/getCurrentUser/GetCurrentUserUseCase.js +19 -0
- package/features/adminUsers/account/getCurrentUser/GetCurrentUserUseCase.js.map +1 -0
- package/features/adminUsers/account/getCurrentUser/abstractions/GetCurrentUserGateway.d.ts +16 -0
- package/features/adminUsers/account/getCurrentUser/abstractions/GetCurrentUserGateway.js +5 -0
- package/features/adminUsers/account/getCurrentUser/abstractions/GetCurrentUserGateway.js.map +1 -0
- package/features/adminUsers/account/getCurrentUser/abstractions/GetCurrentUserUseCase.d.ts +10 -0
- package/features/adminUsers/account/getCurrentUser/abstractions/GetCurrentUserUseCase.js +5 -0
- package/features/adminUsers/account/getCurrentUser/abstractions/GetCurrentUserUseCase.js.map +1 -0
- package/features/adminUsers/account/getCurrentUser/abstractions/index.d.ts +6 -0
- package/features/adminUsers/account/getCurrentUser/abstractions/index.js +2 -0
- package/features/adminUsers/account/getCurrentUser/feature.d.ts +3 -0
- package/features/adminUsers/account/getCurrentUser/feature.js +19 -0
- package/features/adminUsers/account/getCurrentUser/feature.js.map +1 -0
- package/features/adminUsers/account/getCurrentUser/index.d.ts +1 -0
- package/features/adminUsers/account/getCurrentUser/index.js +1 -0
- package/features/adminUsers/account/updateCurrentUser/UpdateCurrentUserGateway.d.ts +11 -0
- package/features/adminUsers/account/updateCurrentUser/UpdateCurrentUserGateway.js +48 -0
- package/features/adminUsers/account/updateCurrentUser/UpdateCurrentUserGateway.js.map +1 -0
- package/features/adminUsers/account/updateCurrentUser/UpdateCurrentUserUseCase.d.ts +10 -0
- package/features/adminUsers/account/updateCurrentUser/UpdateCurrentUserUseCase.js +19 -0
- package/features/adminUsers/account/updateCurrentUser/UpdateCurrentUserUseCase.js.map +1 -0
- package/features/adminUsers/account/updateCurrentUser/abstractions/UpdateCurrentUserGateway.d.ts +26 -0
- package/features/adminUsers/account/updateCurrentUser/abstractions/UpdateCurrentUserGateway.js +5 -0
- package/features/adminUsers/account/updateCurrentUser/abstractions/UpdateCurrentUserGateway.js.map +1 -0
- package/features/adminUsers/account/updateCurrentUser/abstractions/UpdateCurrentUserUseCase.d.ts +13 -0
- package/features/adminUsers/account/updateCurrentUser/abstractions/UpdateCurrentUserUseCase.js +5 -0
- package/features/adminUsers/account/updateCurrentUser/abstractions/UpdateCurrentUserUseCase.js.map +1 -0
- package/features/adminUsers/account/updateCurrentUser/abstractions/index.d.ts +8 -0
- package/features/adminUsers/account/updateCurrentUser/abstractions/index.js +2 -0
- package/features/adminUsers/account/updateCurrentUser/feature.d.ts +3 -0
- package/features/adminUsers/account/updateCurrentUser/feature.js +19 -0
- package/features/adminUsers/account/updateCurrentUser/feature.js.map +1 -0
- package/features/adminUsers/account/updateCurrentUser/index.d.ts +1 -0
- package/features/adminUsers/account/updateCurrentUser/index.js +1 -0
- package/features/adminUsers/passwordPolicy/RulesPasswordPolicy.d.ts +6 -0
- package/features/adminUsers/passwordPolicy/RulesPasswordPolicy.js +22 -0
- package/features/adminUsers/passwordPolicy/RulesPasswordPolicy.js.map +1 -0
- package/features/adminUsers/passwordPolicy/abstractions.d.ts +20 -0
- package/features/adminUsers/passwordPolicy/abstractions.js +5 -0
- package/features/adminUsers/passwordPolicy/abstractions.js.map +1 -0
- package/features/adminUsers/passwordPolicy/feature.d.ts +8 -0
- package/features/adminUsers/passwordPolicy/feature.js +18 -0
- package/features/adminUsers/passwordPolicy/feature.js.map +1 -0
- package/features/adminUsers/passwordPolicy/index.d.ts +3 -0
- package/features/adminUsers/passwordPolicy/index.js +3 -0
- package/features/adminUsers/passwordPolicy/readPasswordPolicyRules.d.ts +10 -0
- package/features/adminUsers/passwordPolicy/readPasswordPolicyRules.js +11 -0
- package/features/adminUsers/passwordPolicy/readPasswordPolicyRules.js.map +1 -0
- package/features/adminUsers/permissions/abstractions.d.ts +17 -0
- package/features/adminUsers/permissions/abstractions.js +6 -0
- package/features/adminUsers/permissions/abstractions.js.map +1 -0
- package/features/adminUsers/permissions/feature.d.ts +14 -0
- package/features/adminUsers/permissions/feature.js +7 -0
- package/features/adminUsers/permissions/feature.js.map +1 -0
- package/features/adminUsers/permissionsSchema.d.ts +10 -0
- package/features/adminUsers/permissionsSchema.js +18 -0
- package/features/adminUsers/permissionsSchema.js.map +1 -0
- package/features/adminUsers/users/createUser/CreateUserGateway.d.ts +11 -0
- package/features/adminUsers/users/createUser/CreateUserGateway.js +49 -0
- package/features/adminUsers/users/createUser/CreateUserGateway.js.map +1 -0
- package/features/adminUsers/users/createUser/CreateUserUseCase.d.ts +10 -0
- package/features/adminUsers/users/createUser/CreateUserUseCase.js +18 -0
- package/features/adminUsers/users/createUser/CreateUserUseCase.js.map +1 -0
- package/features/adminUsers/users/createUser/abstractions/CreateUserGateway.d.ts +21 -0
- package/features/adminUsers/users/createUser/abstractions/CreateUserGateway.js +5 -0
- package/features/adminUsers/users/createUser/abstractions/CreateUserGateway.js.map +1 -0
- package/features/adminUsers/users/createUser/abstractions/CreateUserUseCase.d.ts +14 -0
- package/features/adminUsers/users/createUser/abstractions/CreateUserUseCase.js +5 -0
- package/features/adminUsers/users/createUser/abstractions/CreateUserUseCase.js.map +1 -0
- package/features/adminUsers/users/createUser/abstractions/index.d.ts +2 -0
- package/features/adminUsers/users/createUser/abstractions/index.js +2 -0
- package/features/adminUsers/users/createUser/feature.d.ts +3 -0
- package/features/adminUsers/users/createUser/feature.js +19 -0
- package/features/adminUsers/users/createUser/feature.js.map +1 -0
- package/features/adminUsers/users/createUser/index.d.ts +2 -0
- package/features/adminUsers/users/createUser/index.js +2 -0
- package/features/adminUsers/users/deleteUser/DeleteUserGateway.d.ts +11 -0
- package/features/adminUsers/users/deleteUser/DeleteUserGateway.js +40 -0
- package/features/adminUsers/users/deleteUser/DeleteUserGateway.js.map +1 -0
- package/features/adminUsers/users/deleteUser/DeleteUserUseCase.d.ts +10 -0
- package/features/adminUsers/users/deleteUser/DeleteUserUseCase.js +18 -0
- package/features/adminUsers/users/deleteUser/DeleteUserUseCase.js.map +1 -0
- package/features/adminUsers/users/deleteUser/abstractions/DeleteUserGateway.d.ts +11 -0
- package/features/adminUsers/users/deleteUser/abstractions/DeleteUserGateway.js +5 -0
- package/features/adminUsers/users/deleteUser/abstractions/DeleteUserGateway.js.map +1 -0
- package/features/adminUsers/users/deleteUser/abstractions/DeleteUserUseCase.d.ts +11 -0
- package/features/adminUsers/users/deleteUser/abstractions/DeleteUserUseCase.js +5 -0
- package/features/adminUsers/users/deleteUser/abstractions/DeleteUserUseCase.js.map +1 -0
- package/features/adminUsers/users/deleteUser/abstractions/index.d.ts +2 -0
- package/features/adminUsers/users/deleteUser/abstractions/index.js +2 -0
- package/features/adminUsers/users/deleteUser/feature.d.ts +3 -0
- package/features/adminUsers/users/deleteUser/feature.js +19 -0
- package/features/adminUsers/users/deleteUser/feature.js.map +1 -0
- package/features/adminUsers/users/deleteUser/index.d.ts +2 -0
- package/features/adminUsers/users/deleteUser/index.js +2 -0
- package/features/adminUsers/users/getUser/GetUserGateway.d.ts +11 -0
- package/features/adminUsers/users/getUser/GetUserGateway.js +57 -0
- package/features/adminUsers/users/getUser/GetUserGateway.js.map +1 -0
- package/features/adminUsers/users/getUser/GetUserUseCase.d.ts +10 -0
- package/features/adminUsers/users/getUser/GetUserUseCase.js +18 -0
- package/features/adminUsers/users/getUser/GetUserUseCase.js.map +1 -0
- package/features/adminUsers/users/getUser/abstractions/GetUserGateway.d.ts +32 -0
- package/features/adminUsers/users/getUser/abstractions/GetUserGateway.js +5 -0
- package/features/adminUsers/users/getUser/abstractions/GetUserGateway.js.map +1 -0
- package/features/adminUsers/users/getUser/abstractions/GetUserUseCase.d.ts +14 -0
- package/features/adminUsers/users/getUser/abstractions/GetUserUseCase.js +5 -0
- package/features/adminUsers/users/getUser/abstractions/GetUserUseCase.js.map +1 -0
- package/features/adminUsers/users/getUser/abstractions/index.d.ts +2 -0
- package/features/adminUsers/users/getUser/abstractions/index.js +2 -0
- package/features/adminUsers/users/getUser/feature.d.ts +3 -0
- package/features/adminUsers/users/getUser/feature.js +19 -0
- package/features/adminUsers/users/getUser/feature.js.map +1 -0
- package/features/adminUsers/users/getUser/index.d.ts +2 -0
- package/features/adminUsers/users/getUser/index.js +2 -0
- package/features/adminUsers/users/listUsers/ListUsersGateway.d.ts +11 -0
- package/features/adminUsers/users/listUsers/ListUsersGateway.js +39 -0
- package/features/adminUsers/users/listUsers/ListUsersGateway.js.map +1 -0
- package/features/adminUsers/users/listUsers/ListUsersUseCase.d.ts +10 -0
- package/features/adminUsers/users/listUsers/ListUsersUseCase.js +18 -0
- package/features/adminUsers/users/listUsers/ListUsersUseCase.js.map +1 -0
- package/features/adminUsers/users/listUsers/abstractions/ListUsersGateway.d.ts +17 -0
- package/features/adminUsers/users/listUsers/abstractions/ListUsersGateway.js +5 -0
- package/features/adminUsers/users/listUsers/abstractions/ListUsersGateway.js.map +1 -0
- package/features/adminUsers/users/listUsers/abstractions/ListUsersUseCase.d.ts +10 -0
- package/features/adminUsers/users/listUsers/abstractions/ListUsersUseCase.js +5 -0
- package/features/adminUsers/users/listUsers/abstractions/ListUsersUseCase.js.map +1 -0
- package/features/adminUsers/users/listUsers/abstractions/index.d.ts +2 -0
- package/features/adminUsers/users/listUsers/abstractions/index.js +2 -0
- package/features/adminUsers/users/listUsers/feature.d.ts +3 -0
- package/features/adminUsers/users/listUsers/feature.js +19 -0
- package/features/adminUsers/users/listUsers/feature.js.map +1 -0
- package/features/adminUsers/users/listUsers/index.d.ts +2 -0
- package/features/adminUsers/users/listUsers/index.js +2 -0
- package/features/adminUsers/users/updateUser/UpdateUserGateway.d.ts +11 -0
- package/features/adminUsers/users/updateUser/UpdateUserGateway.js +59 -0
- package/features/adminUsers/users/updateUser/UpdateUserGateway.js.map +1 -0
- package/features/adminUsers/users/updateUser/UpdateUserUseCase.d.ts +10 -0
- package/features/adminUsers/users/updateUser/UpdateUserUseCase.js +18 -0
- package/features/adminUsers/users/updateUser/UpdateUserUseCase.js.map +1 -0
- package/features/adminUsers/users/updateUser/abstractions/UpdateUserGateway.d.ts +33 -0
- package/features/adminUsers/users/updateUser/abstractions/UpdateUserGateway.js +5 -0
- package/features/adminUsers/users/updateUser/abstractions/UpdateUserGateway.js.map +1 -0
- package/features/adminUsers/users/updateUser/abstractions/UpdateUserUseCase.d.ts +15 -0
- package/features/adminUsers/users/updateUser/abstractions/UpdateUserUseCase.js +5 -0
- package/features/adminUsers/users/updateUser/abstractions/UpdateUserUseCase.js.map +1 -0
- package/features/adminUsers/users/updateUser/abstractions/index.d.ts +2 -0
- package/features/adminUsers/users/updateUser/abstractions/index.js +2 -0
- package/features/adminUsers/users/updateUser/feature.d.ts +3 -0
- package/features/adminUsers/users/updateUser/feature.js +19 -0
- package/features/adminUsers/users/updateUser/feature.js.map +1 -0
- package/features/adminUsers/users/updateUser/index.d.ts +2 -0
- package/features/adminUsers/users/updateUser/index.js +2 -0
- package/features/aiChats/AiChatSaveError.d.ts +6 -0
- package/features/aiChats/AiChatSaveError.js +8 -0
- package/features/aiChats/AiChatSaveError.js.map +1 -0
- package/features/aiChats/AiChatsGateway.d.ts +18 -0
- package/features/aiChats/AiChatsGateway.js +132 -0
- package/features/aiChats/AiChatsGateway.js.map +1 -0
- package/features/aiChats/AiChatsRepository.d.ts +36 -0
- package/features/aiChats/AiChatsRepository.js +110 -0
- package/features/aiChats/AiChatsRepository.js.map +1 -0
- package/features/aiChats/AiChatsRequestError.d.ts +9 -0
- package/features/aiChats/AiChatsRequestError.js +8 -0
- package/features/aiChats/AiChatsRequestError.js.map +1 -0
- package/features/aiChats/abstractions.d.ts +76 -0
- package/features/aiChats/abstractions.js +6 -0
- package/features/aiChats/abstractions.js.map +1 -0
- package/features/aiChats/feature.d.ts +3 -0
- package/features/aiChats/feature.js +19 -0
- package/features/aiChats/feature.js.map +1 -0
- package/features/aiChats/index.d.ts +9 -0
- package/features/aiChats/index.js +3 -0
- package/features/aiChats/messageOf.d.ts +2 -0
- package/features/aiChats/messageOf.js +7 -0
- package/features/aiChats/messageOf.js.map +1 -0
- package/features/aiSettings/abstractions.d.ts +16 -0
- package/features/aiSettings/abstractions.js +5 -0
- package/features/aiSettings/abstractions.js.map +1 -0
- package/features/aiSettings/index.d.ts +2 -0
- package/features/aiSettings/index.js +1 -0
- package/features/assumePermissions/ApiStreamClientDecorator.d.ts +16 -0
- package/features/assumePermissions/ApiStreamClientDecorator.js +29 -0
- package/features/assumePermissions/ApiStreamClientDecorator.js.map +1 -0
- package/features/assumePermissions/AssumePermissionsContext.d.ts +17 -0
- package/features/assumePermissions/AssumePermissionsContext.js +32 -0
- package/features/assumePermissions/AssumePermissionsContext.js.map +1 -0
- package/features/assumePermissions/AssumePermissionsUseCase.d.ts +33 -0
- package/features/assumePermissions/AssumePermissionsUseCase.js +48 -0
- package/features/assumePermissions/AssumePermissionsUseCase.js.map +1 -0
- package/features/assumePermissions/GraphQLClientDecorator.d.ts +16 -0
- package/features/assumePermissions/GraphQLClientDecorator.js +29 -0
- package/features/assumePermissions/GraphQLClientDecorator.js.map +1 -0
- package/features/assumePermissions/ListAssumableTargetsGateway.d.ts +13 -0
- package/features/assumePermissions/ListAssumableTargetsGateway.js +74 -0
- package/features/assumePermissions/ListAssumableTargetsGateway.js.map +1 -0
- package/features/assumePermissions/ListAssumableTargetsUseCase.d.ts +16 -0
- package/features/assumePermissions/ListAssumableTargetsUseCase.js +38 -0
- package/features/assumePermissions/ListAssumableTargetsUseCase.js.map +1 -0
- package/features/assumePermissions/LogInUseCaseDecorator.d.ts +33 -0
- package/features/assumePermissions/LogInUseCaseDecorator.js +36 -0
- package/features/assumePermissions/LogInUseCaseDecorator.js.map +1 -0
- package/features/assumePermissions/LogOutUseCaseDecorator.d.ts +16 -0
- package/features/assumePermissions/LogOutUseCaseDecorator.js +21 -0
- package/features/assumePermissions/LogOutUseCaseDecorator.js.map +1 -0
- package/features/assumePermissions/abstractions.d.ts +78 -0
- package/features/assumePermissions/abstractions.js +8 -0
- package/features/assumePermissions/abstractions.js.map +1 -0
- package/features/assumePermissions/assumePermissionsHeader.d.ts +3 -0
- package/features/assumePermissions/assumePermissionsHeader.js +7 -0
- package/features/assumePermissions/assumePermissionsHeader.js.map +1 -0
- package/features/assumePermissions/feature.d.ts +4 -0
- package/features/assumePermissions/feature.js +32 -0
- package/features/assumePermissions/feature.js.map +1 -0
- package/features/assumePermissions/index.d.ts +4 -0
- package/features/assumePermissions/index.js +2 -0
- package/features/banners/Banners.d.ts +15 -0
- package/features/banners/Banners.js +39 -0
- package/features/banners/Banners.js.map +1 -0
- package/features/banners/abstractions.d.ts +34 -0
- package/features/banners/abstractions.js +5 -0
- package/features/banners/abstractions.js.map +1 -0
- package/features/banners/feature.d.ts +3 -0
- package/features/banners/feature.js +17 -0
- package/features/banners/feature.js.map +1 -0
- package/features/banners/index.d.ts +2 -0
- package/features/banners/index.js +2 -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/debugger/DebugSessionsRepository.d.ts +35 -0
- package/features/debugger/DebugSessionsRepository.js +57 -0
- package/features/debugger/DebugSessionsRepository.js.map +1 -0
- package/features/debugger/GraphQLExtensionsDebugHandler.d.ts +17 -0
- package/features/debugger/GraphQLExtensionsDebugHandler.js +21 -0
- package/features/debugger/GraphQLExtensionsDebugHandler.js.map +1 -0
- package/features/debugger/GraphQLExtensionsDebugHandler.test.d.ts +1 -0
- package/features/debugger/GraphQLExtensionsDebugHandler.test.js +112 -0
- package/features/debugger/GraphQLExtensionsDebugHandler.test.js.map +1 -0
- package/features/debugger/abstractions.d.ts +50 -0
- package/features/debugger/abstractions.js +5 -0
- package/features/debugger/abstractions.js.map +1 -0
- package/features/debugger/constants.d.ts +1 -0
- package/features/debugger/constants.js +4 -0
- package/features/debugger/constants.js.map +1 -0
- package/features/debugger/feature.d.ts +3 -0
- package/features/debugger/feature.js +19 -0
- package/features/debugger/feature.js.map +1 -0
- package/features/debugger/index.d.ts +3 -0
- package/features/debugger/index.js +3 -0
- package/features/featureFlags/FeatureFlagsGateway.d.ts +10 -0
- package/features/featureFlags/FeatureFlagsGateway.js +40 -0
- package/features/featureFlags/FeatureFlagsGateway.js.map +1 -0
- package/features/featureFlags/FeatureFlagsService.d.ts +16 -0
- package/features/featureFlags/FeatureFlagsService.js +64 -0
- package/features/featureFlags/FeatureFlagsService.js.map +1 -0
- package/features/featureFlags/abstractions.d.ts +19 -0
- package/features/featureFlags/abstractions.js +6 -0
- package/features/featureFlags/abstractions.js.map +1 -0
- package/features/featureFlags/feature.d.ts +3 -0
- package/features/featureFlags/feature.js +19 -0
- package/features/featureFlags/feature.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 +14 -1
- package/features/formModel/Field.js +49 -3
- package/features/formModel/Field.js.map +1 -1
- package/features/formModel/FieldBuilder.d.ts +3 -3
- package/features/formModel/FieldBuilder.js +3 -2
- package/features/formModel/FieldBuilder.js.map +1 -1
- package/features/formModel/FieldBuilder.test.js +162 -5
- 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 +2 -2
- package/features/formModel/FormErrors.js +1 -1
- package/features/formModel/FormErrors.js.map +1 -1
- package/features/formModel/FormModel.d.ts +2 -0
- package/features/formModel/FormModel.js +32 -9
- package/features/formModel/FormModel.js.map +1 -1
- package/features/formModel/FormModel.test.js +883 -2
- package/features/formModel/FormModel.test.js.map +1 -1
- package/features/formModel/FormView.d.ts +8 -4
- package/features/formModel/ObjectField.d.ts +12 -1
- package/features/formModel/ObjectField.js +70 -20
- 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 +56 -4
- package/features/formModel/abstractions.js +2 -1
- package/features/formModel/abstractions.js.map +1 -1
- package/features/formModel/createFieldRenderer.d.ts +42 -0
- package/features/formModel/createFieldRenderer.js +33 -10
- package/features/formModel/createFieldRenderer.js.map +1 -1
- package/features/formModel/demo/FormModelDemo.d.ts +2 -2
- package/features/formModel/feature.js +2 -0
- package/features/formModel/feature.js.map +1 -1
- package/features/formModel/fieldTypes/DateTimeFieldType.d.ts +67 -4
- package/features/formModel/fieldTypes/DateTimeFieldType.js +88 -22
- package/features/formModel/fieldTypes/DateTimeFieldType.js.map +1 -1
- package/features/formModel/fieldTypes/ObjectFieldType.d.ts +3 -1
- package/features/formModel/fieldTypes/ObjectFieldType.js +23 -1
- package/features/formModel/fieldTypes/ObjectFieldType.js.map +1 -1
- package/features/formModel/fieldTypes/dateLimits.d.ts +37 -0
- package/features/formModel/fieldTypes/dateLimits.js +64 -0
- package/features/formModel/fieldTypes/dateLimits.js.map +1 -0
- package/features/formModel/fieldTypes/dateLimits.test.d.ts +1 -0
- package/features/formModel/fieldTypes/dateLimits.test.js +60 -0
- package/features/formModel/fieldTypes/dateLimits.test.js.map +1 -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 -2
- package/features/formModel/index.js +2 -1
- package/features/formModel/jsonSchema/JsonSchema.d.ts +18 -0
- package/features/formModel/jsonSchema/JsonSchema.js +0 -0
- package/features/formModel/jsonSchema/JsonSchemaFieldOptions.d.ts +4 -0
- package/features/formModel/jsonSchema/JsonSchemaFieldOptions.js +0 -0
- package/features/formModel/jsonSchema/JsonSchemaIssue.d.ts +4 -0
- package/features/formModel/jsonSchema/JsonSchemaIssue.js +0 -0
- package/features/formModel/jsonSchema/JsonSchemaValidationResult.d.ts +5 -0
- package/features/formModel/jsonSchema/JsonSchemaValidationResult.js +0 -0
- package/features/formModel/jsonSchema/JsonSchemaValidator.d.ts +4 -0
- package/features/formModel/jsonSchema/JsonSchemaValidator.js +0 -0
- package/features/formModel/jsonSchema/PlainObject.d.ts +1 -0
- package/features/formModel/jsonSchema/PlainObject.js +0 -0
- package/features/formModel/jsonSchema/buildFieldsFromJsonSchema.d.ts +5 -0
- package/features/formModel/jsonSchema/buildFieldsFromJsonSchema.js +154 -0
- package/features/formModel/jsonSchema/buildFieldsFromJsonSchema.js.map +1 -0
- package/features/formModel/jsonSchema/buildFieldsFromJsonSchema.test.d.ts +1 -0
- package/features/formModel/jsonSchema/buildFieldsFromJsonSchema.test.js +643 -0
- package/features/formModel/jsonSchema/buildFieldsFromJsonSchema.test.js.map +1 -0
- package/features/formModel/jsonSchema/createJsonSchemaValidator.d.ts +3 -0
- package/features/formModel/jsonSchema/createJsonSchemaValidator.js +40 -0
- package/features/formModel/jsonSchema/createJsonSchemaValidator.js.map +1 -0
- package/features/formModel/jsonSchema/createJsonSchemaValidator.test.d.ts +1 -0
- package/features/formModel/jsonSchema/createJsonSchemaValidator.test.js +141 -0
- package/features/formModel/jsonSchema/createJsonSchemaValidator.test.js.map +1 -0
- package/features/formModel/jsonSchema/formDataToJsonSchemaValue.d.ts +3 -0
- package/features/formModel/jsonSchema/formDataToJsonSchemaValue.js +52 -0
- package/features/formModel/jsonSchema/formDataToJsonSchemaValue.js.map +1 -0
- package/features/formModel/jsonSchema/formDataToJsonSchemaValue.test.d.ts +1 -0
- package/features/formModel/jsonSchema/formDataToJsonSchemaValue.test.js +250 -0
- package/features/formModel/jsonSchema/formDataToJsonSchemaValue.test.js.map +1 -0
- package/features/formModel/jsonSchema/getJsonSchemaKind.d.ts +3 -0
- package/features/formModel/jsonSchema/getJsonSchemaKind.js +31 -0
- package/features/formModel/jsonSchema/getJsonSchemaKind.js.map +1 -0
- package/features/formModel/jsonSchema/getJsonSchemaKind.test.d.ts +1 -0
- package/features/formModel/jsonSchema/getJsonSchemaKind.test.js +123 -0
- package/features/formModel/jsonSchema/getJsonSchemaKind.test.js.map +1 -0
- package/features/formModel/jsonSchema/isPlainObject.d.ts +2 -0
- package/features/formModel/jsonSchema/isPlainObject.js +4 -0
- package/features/formModel/jsonSchema/isPlainObject.js.map +1 -0
- package/features/formModel/jsonSchema/jsonSchemaValueToFormData.d.ts +3 -0
- package/features/formModel/jsonSchema/jsonSchemaValueToFormData.js +30 -0
- package/features/formModel/jsonSchema/jsonSchemaValueToFormData.js.map +1 -0
- package/features/formModel/jsonSchema/jsonSchemaValueToFormData.test.d.ts +1 -0
- package/features/formModel/jsonSchema/jsonSchemaValueToFormData.test.js +207 -0
- package/features/formModel/jsonSchema/jsonSchemaValueToFormData.test.js.map +1 -0
- package/features/formModel/jsonSchema/normalizeJsonSchema.d.ts +2 -0
- package/features/formModel/jsonSchema/normalizeJsonSchema.js +10 -0
- package/features/formModel/jsonSchema/normalizeJsonSchema.js.map +1 -0
- package/features/formModel/renderers.d.ts +2 -0
- package/features/formModel/renderers.js +2 -0
- package/features/notifications/Notifications.d.ts +1 -0
- package/features/notifications/Notifications.js +3 -0
- package/features/notifications/Notifications.js.map +1 -1
- package/features/notifications/Notifications.test.d.ts +1 -0
- package/features/notifications/Notifications.test.js +106 -0
- package/features/notifications/Notifications.test.js.map +1 -0
- package/features/notifications/NotificationsRenderer.d.ts +3 -2
- package/features/notifications/NotificationsRenderer.js +23 -4
- package/features/notifications/NotificationsRenderer.js.map +1 -1
- package/features/notifications/NotificationsRenderer.test.d.ts +1 -0
- package/features/notifications/NotificationsRenderer.test.js +261 -0
- package/features/notifications/NotificationsRenderer.test.js.map +1 -0
- package/features/notifications/abstractions.d.ts +13 -2
- package/features/notifications/abstractions.js.map +1 -1
- package/features/security/AuthenticationContext/ApiStreamClientDecorator.d.ts +22 -0
- package/features/security/AuthenticationContext/ApiStreamClientDecorator.js +32 -0
- package/features/security/AuthenticationContext/ApiStreamClientDecorator.js.map +1 -0
- package/features/security/AuthenticationContext/feature.js +2 -0
- package/features/security/AuthenticationContext/feature.js.map +1 -1
- package/features/security/LogIn/LogInUseCase.d.ts +0 -1
- package/features/security/LogIn/LogInUseCase.js +2 -5
- package/features/security/LogIn/LogInUseCase.js.map +1 -1
- package/features/security/LogIn/hasAppPermissions.d.ts +2 -0
- package/features/security/LogIn/hasAppPermissions.js +8 -0
- package/features/security/LogIn/hasAppPermissions.js.map +1 -0
- package/features/slugify/DefaultSlugify.d.ts +8 -0
- package/features/slugify/DefaultSlugify.js +20 -0
- package/features/slugify/DefaultSlugify.js.map +1 -0
- package/features/slugify/abstractions.d.ts +12 -0
- package/features/slugify/abstractions.js +5 -0
- package/features/slugify/abstractions.js.map +1 -0
- package/features/slugify/feature.d.ts +1 -0
- package/features/slugify/feature.js +11 -0
- package/features/slugify/feature.js.map +1 -0
- package/features/slugify/index.d.ts +3 -0
- package/features/slugify/index.js +3 -0
- package/features/stringFormatter/DefaultStringFormatter.d.ts +17 -0
- package/features/stringFormatter/DefaultStringFormatter.js +19 -0
- package/features/stringFormatter/DefaultStringFormatter.js.map +1 -0
- package/features/stringFormatter/abstractions.d.ts +11 -0
- package/features/stringFormatter/abstractions.js +5 -0
- package/features/stringFormatter/abstractions.js.map +1 -0
- package/features/stringFormatter/feature.d.ts +3 -0
- package/features/stringFormatter/feature.js +19 -0
- package/features/stringFormatter/feature.js.map +1 -0
- package/features/stringFormatter/index.d.ts +4 -0
- package/features/stringFormatter/index.js +4 -0
- package/features/stringFormatter/useStringFormatter.d.ts +5 -0
- package/features/stringFormatter/useStringFormatter.js +8 -0
- package/features/stringFormatter/useStringFormatter.js.map +1 -0
- package/features/tenancy/ApiStreamClientDecorator.d.ts +16 -0
- package/features/tenancy/ApiStreamClientDecorator.js +30 -0
- package/features/tenancy/ApiStreamClientDecorator.js.map +1 -0
- package/features/tenancy/feature.js +2 -0
- package/features/tenancy/feature.js.map +1 -1
- package/features/wcp/ReactLicense.d.ts +11 -0
- package/features/wcp/ReactLicense.js +33 -0
- package/features/wcp/ReactLicense.js.map +1 -1
- package/features/wcp/WcpGateway.js +7 -0
- package/features/wcp/WcpGateway.js.map +1 -1
- package/hooks/index.d.ts +3 -0
- package/hooks/index.js +3 -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 +11 -7
- package/hooks/useHotkeys.js.map +1 -1
- 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 +43 -2
- package/index.js +43 -15
- package/modules/AccessManagementExtension.js +49 -23
- package/modules/AccessManagementExtension.js.map +1 -1
- package/modules/DebuggerExtension.d.ts +2 -0
- package/modules/DebuggerExtension.js +55 -0
- package/modules/DebuggerExtension.js.map +1 -0
- package/package.json +41 -38
- package/presentation/accessManagement/SecurityPermissions.js +3 -3
- package/presentation/accessManagement/SecurityPermissions.js.map +1 -1
- package/presentation/accessManagement/apiKeys/ApiKeysPresenter.d.ts +3 -1
- package/presentation/accessManagement/apiKeys/ApiKeysPresenter.js +14 -18
- package/presentation/accessManagement/apiKeys/ApiKeysPresenter.js.map +1 -1
- package/presentation/accessManagement/apiKeys/components/ApiKeysView.d.ts +2 -2
- package/presentation/accessManagement/apiKeys/components/ApiKeysView.js +13 -7
- package/presentation/accessManagement/apiKeys/components/ApiKeysView.js.map +1 -1
- package/presentation/accessManagement/roles/RolesPresenter.d.ts +3 -1
- package/presentation/accessManagement/roles/RolesPresenter.js +12 -16
- package/presentation/accessManagement/roles/RolesPresenter.js.map +1 -1
- package/presentation/accessManagement/roles/components/RolesDataList.d.ts +10 -0
- package/presentation/accessManagement/roles/components/RolesDataList.js +146 -0
- package/presentation/accessManagement/roles/components/RolesDataList.js.map +1 -0
- package/presentation/accessManagement/roles/components/RolesForm.d.ts +13 -0
- package/presentation/accessManagement/roles/components/RolesForm.js +114 -0
- package/presentation/accessManagement/roles/components/RolesForm.js.map +1 -0
- package/presentation/accessManagement/roles/components/RolesView.d.ts +2 -2
- package/presentation/accessManagement/roles/components/RolesView.js +6 -212
- package/presentation/accessManagement/roles/components/RolesView.js.map +1 -1
- package/presentation/accessManagement/teams/TeamsPresenter.d.ts +3 -1
- package/presentation/accessManagement/teams/TeamsPresenter.js +12 -16
- package/presentation/accessManagement/teams/TeamsPresenter.js.map +1 -1
- package/presentation/accessManagement/teams/components/TeamsDataList.d.ts +10 -0
- package/presentation/accessManagement/teams/components/TeamsDataList.js +146 -0
- package/presentation/accessManagement/teams/components/TeamsDataList.js.map +1 -0
- package/presentation/accessManagement/teams/components/TeamsForm.d.ts +13 -0
- package/presentation/accessManagement/teams/components/TeamsForm.js +96 -0
- package/presentation/accessManagement/teams/components/TeamsForm.js.map +1 -0
- package/presentation/accessManagement/teams/components/TeamsView.d.ts +2 -2
- package/presentation/accessManagement/teams/components/TeamsView.js +6 -194
- package/presentation/accessManagement/teams/components/TeamsView.js.map +1 -1
- package/presentation/adminUsers/AdminUsers.d.ts +10 -0
- package/presentation/adminUsers/AdminUsers.js +77 -0
- package/presentation/adminUsers/AdminUsers.js.map +1 -0
- package/presentation/adminUsers/SecurityPermission.d.ts +2 -0
- package/presentation/adminUsers/SecurityPermission.js +15 -0
- package/presentation/adminUsers/SecurityPermission.js.map +1 -0
- package/presentation/adminUsers/UserItem.d.ts +10 -0
- package/presentation/adminUsers/UserItem.js +0 -0
- package/presentation/adminUsers/components/AvatarImage/AvatarImage.d.ts +3 -0
- package/presentation/adminUsers/components/AvatarImage/AvatarImage.js +31 -0
- package/presentation/adminUsers/components/AvatarImage/AvatarImage.js.map +1 -0
- package/presentation/adminUsers/components/AvatarImage/AvatarImagePreview.d.ts +10 -0
- package/presentation/adminUsers/components/AvatarImage/AvatarImagePreview.js +53 -0
- package/presentation/adminUsers/components/AvatarImage/AvatarImagePreview.js.map +1 -0
- package/presentation/adminUsers/components/AvatarImage/AvatarImageTrigger.d.ts +7 -0
- package/presentation/adminUsers/components/AvatarImage/AvatarImageTrigger.js +28 -0
- package/presentation/adminUsers/components/AvatarImage/AvatarImageTrigger.js.map +1 -0
- package/presentation/adminUsers/components/AvatarImage/index.d.ts +1 -0
- package/presentation/adminUsers/components/AvatarImage/index.js +1 -0
- package/presentation/adminUsers/routes.d.ts +10 -0
- package/presentation/adminUsers/routes.js +20 -0
- package/presentation/adminUsers/routes.js.map +1 -0
- package/presentation/adminUsers/userMenu/AccountDetails.d.ts +6 -0
- package/presentation/adminUsers/userMenu/AccountDetails.js +20 -0
- package/presentation/adminUsers/userMenu/AccountDetails.js.map +1 -0
- package/presentation/adminUsers/userMenu/useIsDefaultTenant.d.ts +1 -0
- package/presentation/adminUsers/userMenu/useIsDefaultTenant.js +9 -0
- package/presentation/adminUsers/userMenu/useIsDefaultTenant.js.map +1 -0
- package/presentation/adminUsers/views/Account/Account.d.ts +2 -0
- package/presentation/adminUsers/views/Account/Account.js +137 -0
- package/presentation/adminUsers/views/Account/Account.js.map +1 -0
- package/presentation/adminUsers/views/Account/index.d.ts +1 -0
- package/presentation/adminUsers/views/Account/index.js +1 -0
- package/presentation/adminUsers/views/Users/UsersDataList.d.ts +3 -0
- package/presentation/adminUsers/views/Users/UsersDataList.js +180 -0
- package/presentation/adminUsers/views/Users/UsersDataList.js.map +1 -0
- package/presentation/adminUsers/views/Users/UsersForm.d.ts +5 -0
- package/presentation/adminUsers/views/Users/UsersForm.js +175 -0
- package/presentation/adminUsers/views/Users/UsersForm.js.map +1 -0
- package/presentation/adminUsers/views/Users/UsersView.d.ts +2 -0
- package/presentation/adminUsers/views/Users/UsersView.js +15 -0
- package/presentation/adminUsers/views/Users/UsersView.js.map +1 -0
- package/presentation/adminUsers/views/Users/components/DeleteAction.d.ts +7 -0
- package/presentation/adminUsers/views/Users/components/DeleteAction.js +29 -0
- package/presentation/adminUsers/views/Users/components/DeleteAction.js.map +1 -0
- package/presentation/adminUsers/views/Users/hooks/useUserForm.d.ts +27 -0
- package/presentation/adminUsers/views/Users/hooks/useUserForm.js +101 -0
- package/presentation/adminUsers/views/Users/hooks/useUserForm.js.map +1 -0
- package/presentation/adminUsers/views/Users/search.js +21 -0
- package/presentation/adminUsers/views/Users/search.js.map +1 -0
- package/presentation/adminUsers/views/Users/search.svg +20 -0
- package/presentation/adminUsers/views/utils.d.ts +3 -0
- package/presentation/adminUsers/views/utils.js +12 -0
- package/presentation/adminUsers/views/utils.js.map +1 -0
- package/presentation/aiChats/AiChatsPanelPresenter.d.ts +28 -0
- package/presentation/aiChats/AiChatsPanelPresenter.js +132 -0
- package/presentation/aiChats/AiChatsPanelPresenter.js.map +1 -0
- package/presentation/aiChats/abstractions.d.ts +69 -0
- package/presentation/aiChats/abstractions.js +5 -0
- package/presentation/aiChats/abstractions.js.map +1 -0
- package/presentation/aiChats/feature.d.ts +3 -0
- package/presentation/aiChats/feature.js +17 -0
- package/presentation/aiChats/feature.js.map +1 -0
- package/presentation/aiChats/index.d.ts +2 -0
- package/presentation/aiChats/index.js +2 -0
- package/presentation/assumePermissions/AssumePermissionsPresenter.d.ts +36 -0
- package/presentation/assumePermissions/AssumePermissionsPresenter.js +153 -0
- package/presentation/assumePermissions/AssumePermissionsPresenter.js.map +1 -0
- package/presentation/assumePermissions/abstractions.d.ts +30 -0
- package/presentation/assumePermissions/abstractions.js +5 -0
- package/presentation/assumePermissions/abstractions.js.map +1 -0
- package/presentation/assumePermissions/components/AssumePermissionsButton.d.ts +14 -0
- package/presentation/assumePermissions/components/AssumePermissionsButton.js +42 -0
- package/presentation/assumePermissions/components/AssumePermissionsButton.js.map +1 -0
- package/presentation/assumePermissions/components/AssumedPermissionsBanner.d.ts +11 -0
- package/presentation/assumePermissions/components/AssumedPermissionsBanner.js +25 -0
- package/presentation/assumePermissions/components/AssumedPermissionsBanner.js.map +1 -0
- package/presentation/assumePermissions/components/AssumedPermissionsSelector.d.ts +2 -0
- package/presentation/assumePermissions/components/AssumedPermissionsSelector.js +68 -0
- package/presentation/assumePermissions/components/AssumedPermissionsSelector.js.map +1 -0
- package/presentation/assumePermissions/feature.d.ts +3 -0
- package/presentation/assumePermissions/feature.js +17 -0
- package/presentation/assumePermissions/feature.js.map +1 -0
- package/presentation/assumePermissions/index.d.ts +4 -0
- package/presentation/assumePermissions/index.js +4 -0
- package/presentation/banners/BannersPresenter.d.ts +14 -0
- package/presentation/banners/BannersPresenter.js +60 -0
- package/presentation/banners/BannersPresenter.js.map +1 -0
- package/presentation/banners/abstractions.d.ts +24 -0
- package/presentation/banners/abstractions.js +5 -0
- package/presentation/banners/abstractions.js.map +1 -0
- package/presentation/banners/components/Banner.d.ts +10 -0
- package/presentation/banners/components/Banner.js +32 -0
- package/presentation/banners/components/Banner.js.map +1 -0
- package/presentation/banners/components/BannerBar.d.ts +11 -0
- package/presentation/banners/components/BannerBar.js +51 -0
- package/presentation/banners/components/BannerBar.js.map +1 -0
- package/presentation/banners/feature.d.ts +3 -0
- package/presentation/banners/feature.js +17 -0
- package/presentation/banners/feature.js.map +1 -0
- package/presentation/banners/index.d.ts +6 -0
- package/presentation/banners/index.js +4 -0
- package/presentation/banners/useBanner.d.ts +10 -0
- package/presentation/banners/useBanner.js +15 -0
- package/presentation/banners/useBanner.js.map +1 -0
- package/presentation/commandPalette/CommandPalettePresenter.d.ts +21 -0
- package/presentation/commandPalette/CommandPalettePresenter.js +93 -0
- package/presentation/commandPalette/CommandPalettePresenter.js.map +1 -0
- package/presentation/commandPalette/abstractions.d.ts +81 -0
- package/presentation/commandPalette/abstractions.js +7 -0
- package/presentation/commandPalette/abstractions.js.map +1 -0
- package/presentation/commandPalette/commands/AiChatsCommand.d.ts +24 -0
- package/presentation/commandPalette/commands/AiChatsCommand.js +41 -0
- package/presentation/commandPalette/commands/AiChatsCommand.js.map +1 -0
- package/presentation/commandPalette/commands/AskAiCommand.d.ts +26 -0
- package/presentation/commandPalette/commands/AskAiCommand.js +34 -0
- package/presentation/commandPalette/commands/AskAiCommand.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 +19 -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/createReactiveComponent.d.ts +1 -0
- package/presentation/createReactiveComponent.js +1 -0
- package/presentation/debugger/DebuggerPresenter.d.ts +14 -0
- package/presentation/debugger/DebuggerPresenter.js +45 -0
- package/presentation/debugger/DebuggerPresenter.js.map +1 -0
- package/presentation/debugger/abstractions.d.ts +17 -0
- package/presentation/debugger/abstractions.js +5 -0
- package/presentation/debugger/abstractions.js.map +1 -0
- package/presentation/debugger/components/DebuggerIndicator.d.ts +2 -0
- package/presentation/debugger/components/DebuggerIndicator.js +45 -0
- package/presentation/debugger/components/DebuggerIndicator.js.map +1 -0
- package/presentation/debugger/components/DebuggerView.d.ts +4 -0
- package/presentation/debugger/components/DebuggerView.js +44 -0
- package/presentation/debugger/components/DebuggerView.js.map +1 -0
- package/presentation/debugger/downloadJson.d.ts +7 -0
- package/presentation/debugger/downloadJson.js +17 -0
- package/presentation/debugger/downloadJson.js.map +1 -0
- package/presentation/debugger/feature.d.ts +3 -0
- package/presentation/debugger/feature.js +17 -0
- package/presentation/debugger/feature.js.map +1 -0
- package/presentation/debugger/routes.d.ts +4 -0
- package/presentation/debugger/routes.js +10 -0
- package/presentation/debugger/routes.js.map +1 -0
- package/presentation/featureFlags/FeatureFlagsProvider.d.ts +7 -0
- package/presentation/featureFlags/FeatureFlagsProvider.js +22 -0
- package/presentation/featureFlags/FeatureFlagsProvider.js.map +1 -0
- package/presentation/featureFlags/useFeatureFlags.d.ts +2 -0
- package/presentation/featureFlags/useFeatureFlags.js +17 -0
- package/presentation/featureFlags/useFeatureFlags.js.map +1 -0
- package/presentation/installation/components/SystemInstaller/SystemInstaller.d.ts +2 -2
- package/presentation/installation/components/SystemInstaller/steps/AdminUserStep.js +4 -3
- package/presentation/installation/components/SystemInstaller/steps/AdminUserStep.js.map +1 -1
- package/presentation/installation/components/SystemInstaller/steps/FinishSetup/handleStartUsing.js +0 -3
- package/presentation/installation/components/SystemInstaller/steps/FinishSetup/handleStartUsing.js.map +1 -1
- package/presentation/installation/presenters/SystemInstaller/SystemInstallerPresenter.js.map +1 -1
- package/presentation/listPresenter/FolderAwareDataSource.d.ts +5 -0
- package/presentation/listPresenter/FolderAwareDataSource.js +8 -4
- package/presentation/listPresenter/FolderAwareDataSource.js.map +1 -1
- package/presentation/listPresenter/QueryMatcher.d.ts +28 -5
- package/presentation/listPresenter/QueryMatcher.js +74 -4
- package/presentation/listPresenter/QueryMatcher.js.map +1 -1
- package/presentation/listPresenter/QueryMatcher.test.d.ts +1 -0
- package/presentation/listPresenter/QueryMatcher.test.js +345 -0
- package/presentation/listPresenter/QueryMatcher.test.js.map +1 -0
- 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/TrashBinPresenter.js +3 -1
- package/presentation/trashBin/TrashBinPresenter.js.map +1 -1
- package/presentation/trashBin/TrashBinPresenter.test.d.ts +1 -0
- package/presentation/trashBin/TrashBinPresenter.test.js +91 -0
- package/presentation/trashBin/TrashBinPresenter.test.js.map +1 -0
- package/presentation/trashBin/abstractions.d.ts +1 -1
- package/presentation/trashBin/abstractions.js.map +1 -1
- package/presentation/trashBin/components/BulkActions/DeleteItems.d.ts +2 -2
- package/presentation/trashBin/components/BulkActions/DeleteItems.js +5 -1
- package/presentation/trashBin/components/BulkActions/DeleteItems.js.map +1 -1
- package/presentation/trashBin/components/BulkActions/DeleteItems.test.d.ts +1 -0
- package/presentation/trashBin/components/BulkActions/DeleteItems.test.js +100 -0
- package/presentation/trashBin/components/BulkActions/DeleteItems.test.js.map +1 -0
- package/presentation/trashBin/components/BulkActions/RestoreItems.d.ts +2 -2
- package/presentation/trashBin/components/TrashBinOverlay.d.ts +2 -2
- package/presentation/trashBin/hooks/useDeleteTrashBinItem.js +2 -1
- package/presentation/trashBin/hooks/useDeleteTrashBinItem.js.map +1 -1
- package/presentation/trashBin/hooks/useDeleteTrashBinItem.test.d.ts +1 -0
- package/presentation/trashBin/hooks/useDeleteTrashBinItem.test.js +67 -0
- package/presentation/trashBin/hooks/useDeleteTrashBinItem.test.js.map +1 -0
- package/static/svg/search.43fa797c.svg +20 -0
- package/base/Base/FieldRenderers/ObjectRenderer/MultiValueDynamicZone.d.ts +0 -10
- package/base/Base/FieldRenderers/ObjectRenderer/MultiValueDynamicZone.js.map +0 -1
- package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker.js +0 -68
- package/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker.js.map +0 -1
- package/base/Base/Menus/WebinyVersion.d.ts +0 -2
- package/base/Base/Menus/WebinyVersion.js +0 -23
- package/base/Base/Menus/WebinyVersion.js.map +0 -1
- package/base/WebinyVersion.d.ts +0 -2
- package/base/WebinyVersion.js +0 -23
- package/base/WebinyVersion.js.map +0 -1
- package/components/Wcp.d.ts +0 -19
- package/components/Wcp.js +0 -37
- package/components/Wcp.js.map +0 -1
- package/presentation/installation/components/SystemInstaller/steps/AdminUserStep/createPasswordValidator.d.ts +0 -8
- package/presentation/installation/components/SystemInstaller/steps/AdminUserStep/createPasswordValidator.js +0 -17
- package/presentation/installation/components/SystemInstaller/steps/AdminUserStep/createPasswordValidator.js.map +0 -1
- package/presentation/installation/components/SystemInstaller/steps/AdminUserStep/usePasswordValidator.d.ts +0 -1
- package/presentation/installation/components/SystemInstaller/steps/AdminUserStep/usePasswordValidator.js +0 -16
- package/presentation/installation/components/SystemInstaller/steps/AdminUserStep/usePasswordValidator.js.map +0 -1
|
@@ -1,10 +1,12 @@
|
|
|
1
|
-
import react, { useEffect, useState } from "react";
|
|
1
|
+
import react, { useEffect, useMemo, useState } from "react";
|
|
2
2
|
import { observer } from "mobx-react-lite";
|
|
3
3
|
import { Accordion, Button, IconButton } from "@webiny/admin-ui";
|
|
4
4
|
import { ReactComponent } from "@webiny/icons/add.svg";
|
|
5
5
|
import { ReactComponent as delete_outline_svg_ReactComponent } from "@webiny/icons/delete_outline.svg";
|
|
6
6
|
import { ReactComponent as arrow_upward_svg_ReactComponent } from "@webiny/icons/arrow_upward.svg";
|
|
7
7
|
import { ReactComponent as arrow_downward_svg_ReactComponent } from "@webiny/icons/arrow_downward.svg";
|
|
8
|
+
import { useContainer } from "@webiny/app";
|
|
9
|
+
import { FieldValueFormatter, hasSubtreeFocusRequest } from "../../../../features/formModel/index.js";
|
|
8
10
|
import { LayoutNodeRenderer } from "../../../../features/formModel/FormView.js";
|
|
9
11
|
import { resolveItemDescription, resolveItemTitle } from "./resolveItemTitle.js";
|
|
10
12
|
const NestedLayout = observer(({ layout })=>/*#__PURE__*/ react.createElement("div", {
|
|
@@ -13,9 +15,16 @@ const NestedLayout = observer(({ layout })=>/*#__PURE__*/ react.createElement("d
|
|
|
13
15
|
key: index,
|
|
14
16
|
node: node
|
|
15
17
|
}))));
|
|
16
|
-
|
|
18
|
+
function useFieldValueFormatters() {
|
|
19
|
+
const container = useContainer();
|
|
20
|
+
return useMemo(()=>container.resolveAll(FieldValueFormatter), [
|
|
21
|
+
container
|
|
22
|
+
]);
|
|
23
|
+
}
|
|
24
|
+
const ListItemRenderer = observer(({ item, index, total, label, itemTitle, itemDescription, disabled, sortable })=>{
|
|
17
25
|
const [open, setOpen] = useState(false);
|
|
18
|
-
const
|
|
26
|
+
const formatters = useFieldValueFormatters();
|
|
27
|
+
const hasFocusRequest = hasSubtreeFocusRequest(item.fields);
|
|
19
28
|
useEffect(()=>{
|
|
20
29
|
if (hasFocusRequest) setOpen(true);
|
|
21
30
|
}, [
|
|
@@ -45,20 +54,51 @@ const ListItemRenderer = observer(({ item, index, total, label, itemTitle, itemD
|
|
|
45
54
|
},
|
|
46
55
|
variant: "ghost"
|
|
47
56
|
}));
|
|
48
|
-
|
|
57
|
+
const accordion = /*#__PURE__*/ react.createElement(Accordion, {
|
|
49
58
|
background: "base",
|
|
50
59
|
variant: "container",
|
|
51
60
|
openClosedIndicatorPosition: "left"
|
|
52
61
|
}, /*#__PURE__*/ react.createElement(Accordion.Item, {
|
|
53
|
-
title: resolveItemTitle(item, index, label,
|
|
54
|
-
description: resolveItemDescription(item, index, itemDescription),
|
|
62
|
+
title: resolveItemTitle(item.fields, index, `${label || "Item"} #${index + 1}`, itemTitle, formatters),
|
|
63
|
+
description: resolveItemDescription(item.fields, index, itemDescription, formatters),
|
|
55
64
|
actions: disabled ? null : actions,
|
|
56
65
|
open: open,
|
|
57
|
-
onOpenChange: setOpen
|
|
66
|
+
onOpenChange: setOpen,
|
|
67
|
+
draggable: !disabled && void 0 !== sortable,
|
|
68
|
+
dragHandleRef: sortable?.handleRef
|
|
58
69
|
}, /*#__PURE__*/ react.createElement(NestedLayout, {
|
|
59
70
|
layout: item.layout
|
|
60
71
|
})));
|
|
72
|
+
if (!sortable) return accordion;
|
|
73
|
+
return /*#__PURE__*/ react.createElement("div", {
|
|
74
|
+
ref: sortable.ref,
|
|
75
|
+
"data-sortable-item": "",
|
|
76
|
+
className: "relative",
|
|
77
|
+
style: {
|
|
78
|
+
opacity: sortable.isDragging ? 0.4 : 1
|
|
79
|
+
}
|
|
80
|
+
}, "top" === sortable.closestEdge && /*#__PURE__*/ react.createElement(DropIndicator, {
|
|
81
|
+
position: "top",
|
|
82
|
+
isFirst: 0 === index
|
|
83
|
+
}), accordion, "bottom" === sortable.closestEdge && /*#__PURE__*/ react.createElement(DropIndicator, {
|
|
84
|
+
position: "bottom",
|
|
85
|
+
isLast: index === total - 1
|
|
86
|
+
}));
|
|
61
87
|
});
|
|
88
|
+
const DropIndicator = ({ position, isFirst = false, isLast = false })=>{
|
|
89
|
+
let offset = "calc(var(--spacing-md) / -2)";
|
|
90
|
+
if ("top" === position && isFirst) offset = "0px";
|
|
91
|
+
if ("bottom" === position && isLast) offset = "0px";
|
|
92
|
+
return /*#__PURE__*/ react.createElement("div", {
|
|
93
|
+
className: "absolute left-0 right-0 z-10",
|
|
94
|
+
style: {
|
|
95
|
+
[position]: offset,
|
|
96
|
+
transform: "top" === position ? "translateY(-50%)" : "translateY(50%)"
|
|
97
|
+
}
|
|
98
|
+
}, /*#__PURE__*/ react.createElement("div", {
|
|
99
|
+
className: "w-full h-[2px] bg-primary rounded-full"
|
|
100
|
+
}));
|
|
101
|
+
};
|
|
62
102
|
const AddItemButton = ({ label, disabled, onAdd })=>/*#__PURE__*/ react.createElement("div", null, /*#__PURE__*/ react.createElement(Button, {
|
|
63
103
|
icon: /*#__PURE__*/ react.createElement(ReactComponent, null),
|
|
64
104
|
text: label || "Add Item",
|
|
@@ -66,6 +106,6 @@ const AddItemButton = ({ label, disabled, onAdd })=>/*#__PURE__*/ react.createEl
|
|
|
66
106
|
onClick: onAdd,
|
|
67
107
|
disabled: disabled
|
|
68
108
|
}));
|
|
69
|
-
export { AddItemButton, ListItemRenderer, NestedLayout };
|
|
109
|
+
export { AddItemButton, ListItemRenderer, NestedLayout, useFieldValueFormatters };
|
|
70
110
|
|
|
71
111
|
//# sourceMappingURL=ObjectFieldComponents.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base/Base/FieldRenderers/ObjectRenderer/ObjectFieldComponents.js","sources":["../../../../../src/base/Base/FieldRenderers/ObjectRenderer/ObjectFieldComponents.tsx"],"sourcesContent":["import React, { useEffect, useState } from \"react\";\nimport { observer } from \"mobx-react-lite\";\nimport { Accordion, Button, IconButton } from \"@webiny/admin-ui\";\nimport { ReactComponent as AddIcon } from \"@webiny/icons/add.svg\";\nimport { ReactComponent as DeleteIcon } from \"@webiny/icons/delete_outline.svg\";\nimport { ReactComponent as ArrowUp } from \"@webiny/icons/arrow_upward.svg\";\nimport { ReactComponent as ArrowDown } from \"@webiny/icons/arrow_downward.svg\";\nimport type { IObjectFieldItemVM, LayoutNodeVM } from \"~/features/formModel/index.js\";\nimport { LayoutNodeRenderer } from \"~/features/formModel/FormView.js\";\nimport { resolveItemTitle, resolveItemDescription } from \"./resolveItemTitle.js\";\
|
|
1
|
+
{"version":3,"file":"base/Base/FieldRenderers/ObjectRenderer/ObjectFieldComponents.js","sources":["../../../../../src/base/Base/FieldRenderers/ObjectRenderer/ObjectFieldComponents.tsx"],"sourcesContent":["import React, { useEffect, useMemo, useState } from \"react\";\nimport { observer } from \"mobx-react-lite\";\nimport { Accordion, Button, IconButton } from \"@webiny/admin-ui\";\nimport { ReactComponent as AddIcon } from \"@webiny/icons/add.svg\";\nimport { ReactComponent as DeleteIcon } from \"@webiny/icons/delete_outline.svg\";\nimport { ReactComponent as ArrowUp } from \"@webiny/icons/arrow_upward.svg\";\nimport { ReactComponent as ArrowDown } from \"@webiny/icons/arrow_downward.svg\";\nimport { useContainer } from \"@webiny/app\";\nimport type { IObjectFieldItemVM, LayoutNodeVM } from \"~/features/formModel/index.js\";\nimport { FieldValueFormatter, hasSubtreeFocusRequest } from \"~/features/formModel/index.js\";\nimport { LayoutNodeRenderer } from \"~/features/formModel/FormView.js\";\nimport { resolveItemTitle, resolveItemDescription } from \"./resolveItemTitle.js\";\nimport type { ISortableItemProps } from \"~/presentation/sortable/index.js\";\n\nexport const NestedLayout = observer(({ layout }: { layout: LayoutNodeVM[] }) => {\n return (\n <div className={\"flex flex-col gap-md\"}>\n {layout.map((node, index) => (\n <LayoutNodeRenderer key={index} node={node} />\n ))}\n </div>\n );\n});\n\nexport function useFieldValueFormatters(): FieldValueFormatter.Interface[] {\n const container = useContainer();\n return useMemo(() => container.resolveAll(FieldValueFormatter), [container]);\n}\n\nexport interface ListItemRendererProps {\n item: IObjectFieldItemVM;\n index: number;\n total: number;\n label?: string;\n itemTitle?: string | ((data: Record<string, unknown>, index: number) => string);\n itemDescription?: string | ((data: Record<string, unknown>, index: number) => string);\n disabled: boolean;\n sortable?: ISortableItemProps;\n}\n\nexport const ListItemRenderer = observer(\n ({\n item,\n index,\n total,\n label,\n itemTitle,\n itemDescription,\n disabled,\n sortable\n }: ListItemRendererProps) => {\n const [open, setOpen] = useState(false);\n const formatters = useFieldValueFormatters();\n const hasFocusRequest = hasSubtreeFocusRequest(item.fields);\n\n useEffect(() => {\n if (hasFocusRequest) {\n setOpen(true);\n }\n }, [hasFocusRequest]);\n\n const actions = (\n <>\n <IconButton\n icon={<ArrowDown />}\n onClick={e => {\n e.stopPropagation();\n item.moveDown();\n }}\n variant=\"ghost\"\n disabled={index === total - 1}\n />\n <IconButton\n icon={<ArrowUp />}\n onClick={e => {\n e.stopPropagation();\n item.moveUp();\n }}\n variant=\"ghost\"\n disabled={index === 0}\n />\n <Accordion.Item.Action.Separator />\n <IconButton\n icon={<DeleteIcon />}\n onClick={e => {\n e.stopPropagation();\n item.remove();\n }}\n variant=\"ghost\"\n />\n </>\n );\n\n const accordion = (\n <Accordion\n background={\"base\"}\n variant={\"container\"}\n openClosedIndicatorPosition={\"left\"}\n >\n <Accordion.Item\n title={resolveItemTitle(\n item.fields,\n index,\n `${label || \"Item\"} #${index + 1}`,\n itemTitle,\n formatters\n )}\n description={resolveItemDescription(\n item.fields,\n index,\n itemDescription,\n formatters\n )}\n actions={disabled ? null : actions}\n open={open}\n onOpenChange={setOpen}\n draggable={!disabled && sortable !== undefined}\n dragHandleRef={sortable?.handleRef}\n >\n <NestedLayout layout={item.layout} />\n </Accordion.Item>\n </Accordion>\n );\n\n if (!sortable) {\n return accordion;\n }\n\n return (\n <div\n ref={sortable.ref}\n data-sortable-item=\"\"\n className={\"relative\"}\n style={{ opacity: sortable.isDragging ? 0.4 : 1 }}\n >\n {sortable.closestEdge === \"top\" && (\n <DropIndicator position={\"top\"} isFirst={index === 0} />\n )}\n {accordion}\n {sortable.closestEdge === \"bottom\" && (\n <DropIndicator position={\"bottom\"} isLast={index === total - 1} />\n )}\n </div>\n );\n }\n);\n\nconst DropIndicator = ({\n position,\n isFirst = false,\n isLast = false\n}: {\n position: \"top\" | \"bottom\";\n isFirst?: boolean;\n isLast?: boolean;\n}) => {\n let offset = \"calc(var(--spacing-md) / -2)\";\n if (position === \"top\" && isFirst) {\n offset = \"0px\";\n }\n if (position === \"bottom\" && isLast) {\n offset = \"0px\";\n }\n\n return (\n <div\n className={\"absolute left-0 right-0 z-10\"}\n style={{\n [position]: offset,\n transform: position === \"top\" ? \"translateY(-50%)\" : \"translateY(50%)\"\n }}\n >\n <div className={\"w-full h-[2px] bg-primary rounded-full\"} />\n </div>\n );\n};\n\nexport interface AddItemButtonProps {\n label?: string;\n disabled: boolean;\n onAdd: () => void;\n}\n\nexport const AddItemButton = ({ label, disabled, onAdd }: AddItemButtonProps) => {\n return (\n <div>\n <Button\n icon={<AddIcon />}\n text={label || \"Add Item\"}\n variant={\"tertiary\"}\n onClick={onAdd}\n disabled={disabled}\n />\n </div>\n );\n};\n"],"names":["NestedLayout","observer","layout","node","index","LayoutNodeRenderer","useFieldValueFormatters","container","useContainer","useMemo","FieldValueFormatter","ListItemRenderer","item","total","label","itemTitle","itemDescription","disabled","sortable","open","setOpen","useState","formatters","hasFocusRequest","hasSubtreeFocusRequest","useEffect","actions","IconButton","ArrowDown","e","ArrowUp","Accordion","DeleteIcon","accordion","resolveItemTitle","resolveItemDescription","undefined","DropIndicator","position","isFirst","isLast","offset","AddItemButton","onAdd","Button","AddIcon"],"mappings":";;;;;;;;;;;AAcO,MAAMA,eAAeC,SAAS,CAAC,EAAEC,MAAM,EAA8B,GACjE,WAAP,GACI,oBAAC;QAAI,WAAW;OACXA,OAAO,GAAG,CAAC,CAACC,MAAMC,QAAAA,WAAAA,GACf,oBAACC,oBAAkBA;YAAC,KAAKD;YAAO,MAAMD;;AAM/C,SAASG;IACZ,MAAMC,YAAYC;IAClB,OAAOC,QAAQ,IAAMF,UAAU,UAAU,CAACG,sBAAsB;QAACH;KAAU;AAC/E;AAaO,MAAMI,mBAAmBV,SAC5B,CAAC,EACGW,IAAI,EACJR,KAAK,EACLS,KAAK,EACLC,KAAK,EACLC,SAAS,EACTC,eAAe,EACfC,QAAQ,EACRC,QAAQ,EACY;IACpB,MAAM,CAACC,MAAMC,QAAQ,GAAGC,SAAS;IACjC,MAAMC,aAAahB;IACnB,MAAMiB,kBAAkBC,uBAAuBZ,KAAK,MAAM;IAE1Da,UAAU;QACN,IAAIF,iBACAH,QAAQ;IAEhB,GAAG;QAACG;KAAgB;IAEpB,MAAMG,UAAU,WAAVA,GACF,wDACI,oBAACC,YAAUA;QACP,oBAAM,oBAACC,mCAASA;QAChB,SAASC,CAAAA;YACLA,EAAE,eAAe;YACjBjB,KAAK,QAAQ;QACjB;QACA,SAAQ;QACR,UAAUR,UAAUS,QAAQ;sBAEhC,oBAACc,YAAUA;QACP,oBAAM,oBAACG,iCAAOA;QACd,SAASD,CAAAA;YACLA,EAAE,eAAe;YACjBjB,KAAK,MAAM;QACf;QACA,SAAQ;QACR,UAAUR,AAAU,MAAVA;sBAEd,oBAAC2B,UAAU,IAAI,CAAC,MAAM,CAAC,SAAS,uBAChC,oBAACJ,YAAUA;QACP,oBAAM,oBAACK,mCAAUA;QACjB,SAASH,CAAAA;YACLA,EAAE,eAAe;YACjBjB,KAAK,MAAM;QACf;QACA,SAAQ;;IAKpB,MAAMqB,YAAY,WAAZA,GACF,oBAACF,WAASA;QACN,YAAY;QACZ,SAAS;QACT,6BAA6B;qBAE7B,oBAACA,UAAU,IAAI;QACX,OAAOG,iBACHtB,KAAK,MAAM,EACXR,OACA,GAAGU,SAAS,OAAO,EAAE,EAAEV,QAAQ,GAAG,EAClCW,WACAO;QAEJ,aAAaa,uBACTvB,KAAK,MAAM,EACXR,OACAY,iBACAM;QAEJ,SAASL,WAAW,OAAOS;QAC3B,MAAMP;QACN,cAAcC;QACd,WAAW,CAACH,YAAYC,AAAakB,WAAblB;QACxB,eAAeA,UAAU;qBAEzB,oBAAClB,cAAYA;QAAC,QAAQY,KAAK,MAAM;;IAK7C,IAAI,CAACM,UACD,OAAOe;IAGX,OAAO,WAAP,GACI,oBAAC;QACG,KAAKf,SAAS,GAAG;QACjB,sBAAmB;QACnB,WAAW;QACX,OAAO;YAAE,SAASA,SAAS,UAAU,GAAG,MAAM;QAAE;OAE/CA,AAAyB,UAAzBA,SAAS,WAAW,IAAc,WAAT,GACtB,oBAACmB,eAAaA;QAAC,UAAU;QAAO,SAASjC,AAAU,MAAVA;QAE5C6B,WACAf,AAAyB,aAAzBA,SAAS,WAAW,IAAiB,WAAZ,GACtB,oBAACmB,eAAaA;QAAC,UAAU;QAAU,QAAQjC,UAAUS,QAAQ;;AAI7E;AAGJ,MAAMwB,gBAAgB,CAAC,EACnBC,QAAQ,EACRC,UAAU,KAAK,EACfC,SAAS,KAAK,EAKjB;IACG,IAAIC,SAAS;IACb,IAAIH,AAAa,UAAbA,YAAsBC,SACtBE,SAAS;IAEb,IAAIH,AAAa,aAAbA,YAAyBE,QACzBC,SAAS;IAGb,OAAO,WAAP,GACI,oBAAC;QACG,WAAW;QACX,OAAO;YACH,CAACH,SAAS,EAAEG;YACZ,WAAWH,AAAa,UAAbA,WAAqB,qBAAqB;QACzD;qBAEA,oBAAC;QAAI,WAAW;;AAG5B;AAQO,MAAMI,gBAAgB,CAAC,EAAE5B,KAAK,EAAEG,QAAQ,EAAE0B,KAAK,EAAsB,GACjE,WAAP,GACI,oBAAC,2BACG,oBAACC,QAAMA;QACH,oBAAM,oBAACC,gBAAOA;QACd,MAAM/B,SAAS;QACf,SAAS;QACT,SAAS6B;QACT,UAAU1B"}
|
|
@@ -1,29 +1,19 @@
|
|
|
1
|
-
import react from "react";
|
|
1
|
+
import react, { useEffect, useState } from "react";
|
|
2
2
|
import { Accordion } from "@webiny/admin-ui";
|
|
3
3
|
import { createObjectFieldRenderer } from "../../../../features/formModel/createFieldRenderer.js";
|
|
4
|
-
import { NestedLayout } from "./ObjectFieldComponents.js";
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
if ("string" == typeof itemTitle) {
|
|
8
|
-
const child = field.fields.find((f)=>f.name === itemTitle);
|
|
9
|
-
return (child ? String(child.value ?? "") : "") || field.label;
|
|
10
|
-
}
|
|
11
|
-
const data = {};
|
|
12
|
-
for (const child of field.fields)data[child.name] = child.value;
|
|
13
|
-
return itemTitle(data) || field.label;
|
|
14
|
-
}
|
|
15
|
-
function resolveDescription(field, itemDescription) {
|
|
16
|
-
if (!itemDescription) return;
|
|
17
|
-
if ("string" == typeof itemDescription) {
|
|
18
|
-
const child = field.fields.find((f)=>f.name === itemDescription);
|
|
19
|
-
return (child ? String(child.value ?? "") : "") || void 0;
|
|
20
|
-
}
|
|
21
|
-
const data = {};
|
|
22
|
-
for (const child of field.fields)data[child.name] = child.value;
|
|
23
|
-
return itemDescription(data) || void 0;
|
|
24
|
-
}
|
|
4
|
+
import { NestedLayout, useFieldValueFormatters } from "./ObjectFieldComponents.js";
|
|
5
|
+
import { resolveItemDescription, resolveItemTitle } from "./resolveItemTitle.js";
|
|
6
|
+
import { hasSubtreeFocusRequest } from "../../../../features/formModel/index.js";
|
|
25
7
|
const ObjectRenderer = createObjectFieldRenderer(({ field })=>{
|
|
26
8
|
const settings = field.rendererSettings;
|
|
9
|
+
const formatters = useFieldValueFormatters();
|
|
10
|
+
const focusInside = hasSubtreeFocusRequest(field.fields);
|
|
11
|
+
const [open, setOpen] = useState(settings?.open ?? true);
|
|
12
|
+
useEffect(()=>{
|
|
13
|
+
if (focusInside) setOpen(true);
|
|
14
|
+
}, [
|
|
15
|
+
focusInside
|
|
16
|
+
]);
|
|
27
17
|
if (settings?.container === false) return /*#__PURE__*/ react.createElement(NestedLayout, {
|
|
28
18
|
layout: field.layout
|
|
29
19
|
});
|
|
@@ -31,9 +21,10 @@ const ObjectRenderer = createObjectFieldRenderer(({ field })=>{
|
|
|
31
21
|
background: "base",
|
|
32
22
|
variant: "container"
|
|
33
23
|
}, /*#__PURE__*/ react.createElement(Accordion.Item, {
|
|
34
|
-
title:
|
|
35
|
-
description:
|
|
36
|
-
|
|
24
|
+
title: resolveItemTitle(field.fields, 0, field.label || "", settings?.itemTitle, formatters),
|
|
25
|
+
description: resolveItemDescription(field.fields, 0, settings?.itemDescription, formatters),
|
|
26
|
+
open: open,
|
|
27
|
+
onOpenChange: setOpen,
|
|
37
28
|
className: "pl-sm"
|
|
38
29
|
}, /*#__PURE__*/ react.createElement(NestedLayout, {
|
|
39
30
|
layout: field.layout
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base/Base/FieldRenderers/ObjectRenderer/ObjectRenderer.js","sources":["../../../../../src/base/Base/FieldRenderers/ObjectRenderer/ObjectRenderer.tsx"],"sourcesContent":["import React from \"react\";\nimport { Accordion } from \"@webiny/admin-ui\";\nimport { createObjectFieldRenderer } from \"~/features/formModel/createFieldRenderer.js\";\nimport { NestedLayout } from \"./ObjectFieldComponents.js\";\nimport
|
|
1
|
+
{"version":3,"file":"base/Base/FieldRenderers/ObjectRenderer/ObjectRenderer.js","sources":["../../../../../src/base/Base/FieldRenderers/ObjectRenderer/ObjectRenderer.tsx"],"sourcesContent":["import React, { useEffect, useState } from \"react\";\nimport { Accordion } from \"@webiny/admin-ui\";\nimport { createObjectFieldRenderer } from \"~/features/formModel/createFieldRenderer.js\";\nimport { NestedLayout, useFieldValueFormatters } from \"./ObjectFieldComponents.js\";\nimport { resolveItemDescription, resolveItemTitle } from \"./resolveItemTitle.js\";\nimport { hasSubtreeFocusRequest } from \"~/features/formModel/index.js\";\n\ndeclare module \"../../../../features/formModel/abstractions.js\" {\n interface IFieldRendererRegistry {\n objectAccordionSingle: {\n fieldType: \"object\";\n settings?: {\n open?: boolean;\n container?: boolean;\n itemTitle?: string | ((data: Record<string, unknown>) => string);\n itemDescription?: string | ((data: Record<string, unknown>) => string);\n };\n };\n }\n}\n\nexport const ObjectRenderer = createObjectFieldRenderer<\"objectAccordionSingle\">(({ field }) => {\n const settings = field.rendererSettings;\n const formatters = useFieldValueFormatters();\n\n // Force the object accordion open when a focus request lands anywhere in\n // its subtree, so \"jump to field\" can cascade through collapsed levels.\n const focusInside = hasSubtreeFocusRequest(field.fields);\n const [open, setOpen] = useState(settings?.open ?? true);\n useEffect(() => {\n if (focusInside) {\n setOpen(true);\n }\n }, [focusInside]);\n\n if (settings?.container === false) {\n return <NestedLayout layout={field.layout} />;\n }\n\n return (\n <Accordion background={\"base\"} variant={\"container\"}>\n <Accordion.Item\n title={resolveItemTitle(\n field.fields,\n 0,\n field.label || \"\",\n settings?.itemTitle,\n formatters\n )}\n description={resolveItemDescription(\n field.fields,\n 0,\n settings?.itemDescription,\n formatters\n )}\n open={open}\n onOpenChange={setOpen}\n className={\"pl-sm\"}\n >\n <NestedLayout layout={field.layout} />\n </Accordion.Item>\n </Accordion>\n );\n});\n"],"names":["ObjectRenderer","createObjectFieldRenderer","field","settings","formatters","useFieldValueFormatters","focusInside","hasSubtreeFocusRequest","open","setOpen","useState","useEffect","NestedLayout","Accordion","resolveItemTitle","resolveItemDescription"],"mappings":";;;;;;AAqBO,MAAMA,iBAAiBC,0BAAmD,CAAC,EAAEC,KAAK,EAAE;IACvF,MAAMC,WAAWD,MAAM,gBAAgB;IACvC,MAAME,aAAaC;IAInB,MAAMC,cAAcC,uBAAuBL,MAAM,MAAM;IACvD,MAAM,CAACM,MAAMC,QAAQ,GAAGC,SAASP,UAAU,QAAQ;IACnDQ,UAAU;QACN,IAAIL,aACAG,QAAQ;IAEhB,GAAG;QAACH;KAAY;IAEhB,IAAIH,UAAU,cAAc,OACxB,OAAO,WAAP,GAAO,oBAACS,cAAYA;QAAC,QAAQV,MAAM,MAAM;;IAG7C,OAAO,WAAP,GACI,oBAACW,WAASA;QAAC,YAAY;QAAQ,SAAS;qBACpC,oBAACA,UAAU,IAAI;QACX,OAAOC,iBACHZ,MAAM,MAAM,EACZ,GACAA,MAAM,KAAK,IAAI,IACfC,UAAU,WACVC;QAEJ,aAAaW,uBACTb,MAAM,MAAM,EACZ,GACAC,UAAU,iBACVC;QAEJ,MAAMI;QACN,cAAcC;QACd,WAAW;qBAEX,oBAACG,cAAYA;QAAC,QAAQV,MAAM,MAAM;;AAIlD"}
|
|
@@ -2,9 +2,10 @@ import React from "react";
|
|
|
2
2
|
import type { IObjectFieldVM } from "../../../../features/formModel/index.js";
|
|
3
3
|
interface SingleValueDynamicZoneProps {
|
|
4
4
|
field: IObjectFieldVM;
|
|
5
|
+
addItemLabel: string;
|
|
5
6
|
showContainer?: boolean;
|
|
6
7
|
}
|
|
7
|
-
export declare const SingleValueDynamicZone: (({ field, showContainer }: SingleValueDynamicZoneProps) => React.JSX.Element) & {
|
|
8
|
-
|
|
8
|
+
export declare const SingleValueDynamicZone: (({ field, addItemLabel, showContainer }: SingleValueDynamicZoneProps) => React.JSX.Element) & React.NamedExoticComponent<SingleValueDynamicZoneProps> & {
|
|
9
|
+
readonly type: ({ field, addItemLabel, showContainer }: SingleValueDynamicZoneProps) => React.JSX.Element;
|
|
9
10
|
};
|
|
10
11
|
export {};
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import react from "react";
|
|
1
|
+
import react, { useEffect, useState } from "react";
|
|
2
2
|
import { observer } from "mobx-react-lite";
|
|
3
|
-
import { Accordion, Button, Tooltip, useToast } from "@webiny/admin-ui";
|
|
3
|
+
import { Accordion, Button, Separator, Tooltip, useToast } from "@webiny/admin-ui";
|
|
4
4
|
import { useFeature } from "@webiny/app";
|
|
5
|
+
import { hasSubtreeFocusRequest } from "../../../../features/formModel/index.js";
|
|
5
6
|
import { ReactComponent } from "@webiny/icons/content_copy.svg";
|
|
6
7
|
import { ReactComponent as content_paste_svg_ReactComponent } from "@webiny/icons/content_paste.svg";
|
|
7
8
|
import { ReactComponent as delete_svg_ReactComponent } from "@webiny/icons/delete.svg";
|
|
@@ -10,10 +11,21 @@ import { TEMPLATE_DISCRIMINATOR } from "../../../../features/formModel/ObjectFie
|
|
|
10
11
|
import { ClipboardFeature } from "../../../../features/clipboard/feature.js";
|
|
11
12
|
import { useConfirmationDialog } from "../../../../hooks/useConfirmationDialog.js";
|
|
12
13
|
import { NestedLayout } from "./ObjectFieldComponents.js";
|
|
13
|
-
import { AddTemplateButton } from "./TemplatePicker.js";
|
|
14
|
-
const SingleValueDynamicZone = observer(({ field, showContainer = true })=>{
|
|
14
|
+
import { AddTemplateButton } from "./TemplatePicker/index.js";
|
|
15
|
+
const SingleValueDynamicZone = observer(({ field, addItemLabel, showContainer = true })=>{
|
|
15
16
|
const toast = useToast();
|
|
16
17
|
const { clipboard } = useFeature(ClipboardFeature);
|
|
18
|
+
const focusInside = hasSubtreeFocusRequest(field.fields);
|
|
19
|
+
const [containerOpen, setContainerOpen] = useState(true);
|
|
20
|
+
const [templateOpen, setTemplateOpen] = useState(false);
|
|
21
|
+
useEffect(()=>{
|
|
22
|
+
if (focusInside) {
|
|
23
|
+
setContainerOpen(true);
|
|
24
|
+
setTemplateOpen(true);
|
|
25
|
+
}
|
|
26
|
+
}, [
|
|
27
|
+
focusInside
|
|
28
|
+
]);
|
|
17
29
|
const activeTemplate = null !== field.activeTemplateId ? field.availableTemplates.find((t)=>t.id === field.activeTemplateId) : void 0;
|
|
18
30
|
const { showConfirmation } = useConfirmationDialog({
|
|
19
31
|
title: "Remove template",
|
|
@@ -33,6 +45,8 @@ const SingleValueDynamicZone = observer(({ field, showContainer = true })=>{
|
|
|
33
45
|
variant: "container"
|
|
34
46
|
}, /*#__PURE__*/ react.createElement(Accordion.Item, {
|
|
35
47
|
title: activeTemplate.label,
|
|
48
|
+
open: templateOpen,
|
|
49
|
+
onOpenChange: setTemplateOpen,
|
|
36
50
|
actions: field.disabled ? null : /*#__PURE__*/ react.createElement(react.Fragment, null, /*#__PURE__*/ react.createElement(Accordion.Item.Action, {
|
|
37
51
|
icon: /*#__PURE__*/ react.createElement(Tooltip, {
|
|
38
52
|
trigger: /*#__PURE__*/ react.createElement(ReactComponent, null),
|
|
@@ -59,6 +73,7 @@ const SingleValueDynamicZone = observer(({ field, showContainer = true })=>{
|
|
|
59
73
|
}))) : null, !activeTemplate && !field.disabled && /*#__PURE__*/ react.createElement("div", {
|
|
60
74
|
className: "flex gap-sm items-center"
|
|
61
75
|
}, /*#__PURE__*/ react.createElement(AddTemplateButton, {
|
|
76
|
+
label: addItemLabel,
|
|
62
77
|
templates: field.availableTemplates,
|
|
63
78
|
onSelect: (template)=>field.setTemplate(template.id)
|
|
64
79
|
}), canPaste && /*#__PURE__*/ react.createElement(Button, {
|
|
@@ -76,9 +91,14 @@ const SingleValueDynamicZone = observer(({ field, showContainer = true })=>{
|
|
|
76
91
|
}
|
|
77
92
|
}
|
|
78
93
|
})));
|
|
79
|
-
if (!showContainer) return /*#__PURE__*/ react.createElement(
|
|
80
|
-
|
|
81
|
-
|
|
94
|
+
if (!showContainer) return /*#__PURE__*/ react.createElement(react.Fragment, null, /*#__PURE__*/ react.createElement(Separator, {
|
|
95
|
+
labelPosition: "start",
|
|
96
|
+
variant: "accent"
|
|
97
|
+
}, /*#__PURE__*/ react.createElement("span", {
|
|
98
|
+
className: "text-accent-primary text-lg font-semibold"
|
|
99
|
+
}, field.label ?? "")), /*#__PURE__*/ react.createElement("div", {
|
|
100
|
+
className: "mt-md"
|
|
101
|
+
}, content));
|
|
82
102
|
return /*#__PURE__*/ react.createElement(Accordion, {
|
|
83
103
|
background: "base",
|
|
84
104
|
variant: "container"
|
|
@@ -89,7 +109,8 @@ const SingleValueDynamicZone = observer(({ field, showContainer = true })=>{
|
|
|
89
109
|
icon: /*#__PURE__*/ react.createElement(horizontal_rule_svg_ReactComponent, null)
|
|
90
110
|
}),
|
|
91
111
|
title: field.label,
|
|
92
|
-
|
|
112
|
+
open: containerOpen,
|
|
113
|
+
onOpenChange: setContainerOpen
|
|
93
114
|
}, content));
|
|
94
115
|
});
|
|
95
116
|
export { SingleValueDynamicZone };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base/Base/FieldRenderers/ObjectRenderer/SingleValueDynamicZone.js","sources":["../../../../../src/base/Base/FieldRenderers/ObjectRenderer/SingleValueDynamicZone.tsx"],"sourcesContent":["import React from \"react\";\nimport { observer } from \"mobx-react-lite\";\nimport { Accordion, Button, Tooltip, useToast } from \"@webiny/admin-ui\";\nimport { useFeature } from \"@webiny/app\";\nimport { ReactComponent as CopyIcon } from \"@webiny/icons/content_copy.svg\";\nimport { ReactComponent as PasteIcon } from \"@webiny/icons/content_paste.svg\";\nimport { ReactComponent as DeleteIcon } from \"@webiny/icons/delete.svg\";\nimport { ReactComponent as HorizontalRuleIcon } from \"@webiny/icons/horizontal_rule.svg\";\nimport type { IObjectFieldVM } from \"~/features/formModel/index.js\";\nimport { TEMPLATE_DISCRIMINATOR } from \"~/features/formModel/ObjectField.js\";\nimport { ClipboardFeature } from \"~/features/clipboard/feature.js\";\nimport { useConfirmationDialog } from \"~/hooks/useConfirmationDialog.js\";\nimport { NestedLayout } from \"./ObjectFieldComponents.js\";\nimport { AddTemplateButton } from \"./TemplatePicker.js\";\n\ninterface SingleValueDynamicZoneProps {\n field: IObjectFieldVM;\n showContainer?: boolean;\n}\n\nexport const SingleValueDynamicZone = observer(\n ({ field, showContainer = true }: SingleValueDynamicZoneProps) => {\n const toast = useToast();\n const { clipboard } = useFeature(ClipboardFeature);\n const activeTemplate =\n field.activeTemplateId !== null\n ? field.availableTemplates.find(t => t.id === field.activeTemplateId)\n : undefined;\n\n const { showConfirmation } = useConfirmationDialog({\n title: \"Remove template\",\n message: \"Are you sure you want to remove this item? This action is not reversible.\",\n acceptLabel: \"Yes, I'm sure!\",\n cancelLabel: \"No, leave it.\"\n });\n\n const onClear = () => {\n showConfirmation(() => {\n field.onChange(null);\n });\n };\n\n const clipboardItem = clipboard.item;\n const canPaste =\n clipboardItem !== null &&\n clipboardItem.type === \"wby.dz\" &&\n typeof clipboardItem.data[TEMPLATE_DISCRIMINATOR] === \"string\" &&\n field.availableTemplates.some(t => t.id === clipboardItem.data[TEMPLATE_DISCRIMINATOR]);\n\n const content = (\n <>\n {activeTemplate ? (\n <Accordion background={\"base\"} variant={\"container\"}>\n <Accordion.Item\n title={activeTemplate.label}\n actions={\n field.disabled ? null : (\n <>\n <Accordion.Item.Action\n icon={\n <Tooltip\n trigger={<CopyIcon />}\n content={\"Copy to clipboard\"}\n />\n }\n onClick={() => {\n clipboard.copy({\n type: \"wby.dz\",\n data: field.getClonedData()\n });\n toast.showSuccessToast({\n title: \"Copied to clipboard.\"\n });\n }}\n />\n <Accordion.Item.Action\n icon={\n <Tooltip\n trigger={<DeleteIcon />}\n content={\"Delete\"}\n />\n }\n onClick={onClear}\n />\n </>\n )\n }\n >\n <NestedLayout layout={field.layout} />\n </Accordion.Item>\n </Accordion>\n ) : null}\n {!activeTemplate && !field.disabled && (\n <div className={\"flex gap-sm items-center\"}>\n <AddTemplateButton\n templates={field.availableTemplates}\n onSelect={template => field.setTemplate(template.id)}\n />\n {canPaste && (\n <Button\n size={\"sm\"}\n variant={\"tertiary\"}\n text={\"Paste\"}\n icon={<PasteIcon />}\n onClick={() => {\n const pasted = clipboard.paste();\n if (pasted) {\n field.onChange(pasted.data);\n toast.showSuccessToast({\n title: \"Pasted from clipboard.\"\n });\n }\n }}\n />\n )}\n </div>\n )}\n </>\n );\n\n if (!showContainer) {\n return <div className={\"flex flex-col gap-lg\"}>{content}</div>;\n }\n\n return (\n <Accordion background={\"base\"} variant={\"container\"}>\n <Accordion.Item\n icon={\n <Accordion.Item.Icon\n color={\"accent\"}\n label={\"Dynamic Zone\"}\n icon={<HorizontalRuleIcon />}\n />\n }\n title={field.label}\n defaultOpen={true}\n >\n {content}\n </Accordion.Item>\n </Accordion>\n );\n }\n);\n"],"names":["SingleValueDynamicZone","observer","field","showContainer","toast","useToast","clipboard","useFeature","ClipboardFeature","activeTemplate","t","undefined","showConfirmation","useConfirmationDialog","onClear","clipboardItem","canPaste","TEMPLATE_DISCRIMINATOR","content","Accordion","Tooltip","CopyIcon","DeleteIcon","NestedLayout","AddTemplateButton","template","Button","PasteIcon","pasted","HorizontalRuleIcon"],"mappings":";;;;;;;;;;;;;AAoBO,MAAMA,yBAAyBC,SAClC,CAAC,EAAEC,KAAK,EAAEC,gBAAgB,IAAI,EAA+B;IACzD,MAAMC,QAAQC;IACd,MAAM,EAAEC,SAAS,EAAE,GAAGC,WAAWC;IACjC,MAAMC,iBACFP,AAA2B,SAA3BA,MAAM,gBAAgB,GAChBA,MAAM,kBAAkB,CAAC,IAAI,CAACQ,CAAAA,IAAKA,EAAE,EAAE,KAAKR,MAAM,gBAAgB,IAClES;IAEV,MAAM,EAAEC,gBAAgB,EAAE,GAAGC,sBAAsB;QAC/C,OAAO;QACP,SAAS;QACT,aAAa;QACb,aAAa;IACjB;IAEA,MAAMC,UAAU;QACZF,iBAAiB;YACbV,MAAM,QAAQ,CAAC;QACnB;IACJ;IAEA,MAAMa,gBAAgBT,UAAU,IAAI;IACpC,MAAMU,WACFD,AAAkB,SAAlBA,iBACAA,AAAuB,aAAvBA,cAAc,IAAI,IAClB,AAAsD,YAAtD,OAAOA,cAAc,IAAI,CAACE,uBAAuB,IACjDf,MAAM,kBAAkB,CAAC,IAAI,CAACQ,CAAAA,IAAKA,EAAE,EAAE,KAAKK,cAAc,IAAI,CAACE,uBAAuB;IAE1F,MAAMC,UAAU,WAAVA,GACF,0CACKT,iBAAiB,WAAjBA,GACG,oBAACU,WAASA;QAAC,YAAY;QAAQ,SAAS;qBACpC,oBAACA,UAAU,IAAI;QACX,OAAOV,eAAe,KAAK;QAC3B,SACIP,MAAM,QAAQ,GAAG,OAAO,WAAP,GACb,wDACI,oBAACiB,UAAU,IAAI,CAAC,MAAM;YAClB,oBACI,oBAACC,SAAOA;gBACJ,uBAAS,oBAACC,gBAAQA;gBAClB,SAAS;;YAGjB,SAAS;gBACLf,UAAU,IAAI,CAAC;oBACX,MAAM;oBACN,MAAMJ,MAAM,aAAa;gBAC7B;gBACAE,MAAM,gBAAgB,CAAC;oBACnB,OAAO;gBACX;YACJ;0BAEJ,oBAACe,UAAU,IAAI,CAAC,MAAM;YAClB,oBACI,oBAACC,SAAOA;gBACJ,uBAAS,oBAACE,2BAAUA;gBACpB,SAAS;;YAGjB,SAASR;;qBAMzB,oBAACS,cAAYA;QAAC,QAAQrB,MAAM,MAAM;WAG1C,MACH,CAACO,kBAAkB,CAACP,MAAM,QAAQ,IAAI,WAAJ,GAC/B,oBAAC;QAAI,WAAW;qBACZ,oBAACsB,mBAAiBA;QACd,WAAWtB,MAAM,kBAAkB;QACnC,UAAUuB,CAAAA,WAAYvB,MAAM,WAAW,CAACuB,SAAS,EAAE;QAEtDT,YAAY,WAAZA,GACG,oBAACU,QAAMA;QACH,MAAM;QACN,SAAS;QACT,MAAM;QACN,oBAAM,oBAACC,kCAASA;QAChB,SAAS;YACL,MAAMC,SAAStB,UAAU,KAAK;YAC9B,IAAIsB,QAAQ;gBACR1B,MAAM,QAAQ,CAAC0B,OAAO,IAAI;gBAC1BxB,MAAM,gBAAgB,CAAC;oBACnB,OAAO;gBACX;YACJ;QACJ;;IAQxB,IAAI,CAACD,eACD,OAAO,WAAP,GAAO,oBAAC;QAAI,WAAW;OAAyBe;IAGpD,OAAO,WAAP,GACI,oBAACC,WAASA;QAAC,YAAY;QAAQ,SAAS;qBACpC,oBAACA,UAAU,IAAI;QACX,oBACI,oBAACA,UAAU,IAAI,CAAC,IAAI;YAChB,OAAO;YACP,OAAO;YACP,oBAAM,oBAACU,oCAAkBA;;QAGjC,OAAO3B,MAAM,KAAK;QAClB,aAAa;OAEZgB;AAIjB"}
|
|
1
|
+
{"version":3,"file":"base/Base/FieldRenderers/ObjectRenderer/SingleValueDynamicZone.js","sources":["../../../../../src/base/Base/FieldRenderers/ObjectRenderer/SingleValueDynamicZone.tsx"],"sourcesContent":["import React, { useEffect, useState } from \"react\";\nimport { observer } from \"mobx-react-lite\";\nimport { Accordion, Button, Tooltip, useToast } from \"@webiny/admin-ui\";\nimport { useFeature } from \"@webiny/app\";\nimport { hasSubtreeFocusRequest } from \"~/features/formModel/index.js\";\nimport { ReactComponent as CopyIcon } from \"@webiny/icons/content_copy.svg\";\nimport { ReactComponent as PasteIcon } from \"@webiny/icons/content_paste.svg\";\nimport { ReactComponent as DeleteIcon } from \"@webiny/icons/delete.svg\";\nimport { ReactComponent as HorizontalRuleIcon } from \"@webiny/icons/horizontal_rule.svg\";\nimport type { IObjectFieldVM } from \"~/features/formModel/index.js\";\nimport { TEMPLATE_DISCRIMINATOR } from \"~/features/formModel/ObjectField.js\";\nimport { ClipboardFeature } from \"~/features/clipboard/feature.js\";\nimport { useConfirmationDialog } from \"~/hooks/useConfirmationDialog.js\";\nimport { NestedLayout } from \"./ObjectFieldComponents.js\";\nimport { AddTemplateButton } from \"./TemplatePicker/index.js\";\nimport { Separator } from \"@webiny/admin-ui\";\n\ninterface SingleValueDynamicZoneProps {\n field: IObjectFieldVM;\n addItemLabel: string;\n showContainer?: boolean;\n}\n\nexport const SingleValueDynamicZone = observer(\n ({ field, addItemLabel, showContainer = true }: SingleValueDynamicZoneProps) => {\n const toast = useToast();\n const { clipboard } = useFeature(ClipboardFeature);\n\n // Force both the DZ container and the active-template accordion open\n // when a focus request lands anywhere in the subtree, so \"jump to\n // field\" can cascade through collapsed levels.\n const focusInside = hasSubtreeFocusRequest(field.fields);\n const [containerOpen, setContainerOpen] = useState(true);\n const [templateOpen, setTemplateOpen] = useState(false);\n useEffect(() => {\n if (focusInside) {\n setContainerOpen(true);\n setTemplateOpen(true);\n }\n }, [focusInside]);\n\n const activeTemplate =\n field.activeTemplateId !== null\n ? field.availableTemplates.find(t => t.id === field.activeTemplateId)\n : undefined;\n\n const { showConfirmation } = useConfirmationDialog({\n title: \"Remove template\",\n message: \"Are you sure you want to remove this item? This action is not reversible.\",\n acceptLabel: \"Yes, I'm sure!\",\n cancelLabel: \"No, leave it.\"\n });\n\n const onClear = () => {\n showConfirmation(() => {\n field.onChange(null);\n });\n };\n\n const clipboardItem = clipboard.item;\n const canPaste =\n clipboardItem !== null &&\n clipboardItem.type === \"wby.dz\" &&\n typeof clipboardItem.data[TEMPLATE_DISCRIMINATOR] === \"string\" &&\n field.availableTemplates.some(t => t.id === clipboardItem.data[TEMPLATE_DISCRIMINATOR]);\n\n const content = (\n <>\n {activeTemplate ? (\n <Accordion background={\"base\"} variant={\"container\"}>\n <Accordion.Item\n title={activeTemplate.label}\n open={templateOpen}\n onOpenChange={setTemplateOpen}\n actions={\n field.disabled ? null : (\n <>\n <Accordion.Item.Action\n icon={\n <Tooltip\n trigger={<CopyIcon />}\n content={\"Copy to clipboard\"}\n />\n }\n onClick={() => {\n clipboard.copy({\n type: \"wby.dz\",\n data: field.getClonedData()\n });\n toast.showSuccessToast({\n title: \"Copied to clipboard.\"\n });\n }}\n />\n <Accordion.Item.Action\n icon={\n <Tooltip\n trigger={<DeleteIcon />}\n content={\"Delete\"}\n />\n }\n onClick={onClear}\n />\n </>\n )\n }\n >\n <NestedLayout layout={field.layout} />\n </Accordion.Item>\n </Accordion>\n ) : null}\n {!activeTemplate && !field.disabled && (\n <div className={\"flex gap-sm items-center\"}>\n <AddTemplateButton\n label={addItemLabel}\n templates={field.availableTemplates}\n onSelect={template => field.setTemplate(template.id)}\n />\n {canPaste && (\n <Button\n size={\"sm\"}\n variant={\"tertiary\"}\n text={\"Paste\"}\n icon={<PasteIcon />}\n onClick={() => {\n const pasted = clipboard.paste();\n if (pasted) {\n field.onChange(pasted.data);\n toast.showSuccessToast({\n title: \"Pasted from clipboard.\"\n });\n }\n }}\n />\n )}\n </div>\n )}\n </>\n );\n\n if (!showContainer) {\n return (\n <>\n <Separator labelPosition={\"start\"} variant={\"accent\"}>\n <span className={\"text-accent-primary text-lg font-semibold\"}>\n {field.label ?? \"\"}\n </span>\n </Separator>\n <div className={\"mt-md\"}>{content}</div>\n </>\n );\n }\n\n return (\n <Accordion background={\"base\"} variant={\"container\"}>\n <Accordion.Item\n icon={\n <Accordion.Item.Icon\n color={\"accent\"}\n label={\"Dynamic Zone\"}\n icon={<HorizontalRuleIcon />}\n />\n }\n title={field.label}\n open={containerOpen}\n onOpenChange={setContainerOpen}\n >\n {content}\n </Accordion.Item>\n </Accordion>\n );\n }\n);\n"],"names":["SingleValueDynamicZone","observer","field","addItemLabel","showContainer","toast","useToast","clipboard","useFeature","ClipboardFeature","focusInside","hasSubtreeFocusRequest","containerOpen","setContainerOpen","useState","templateOpen","setTemplateOpen","useEffect","activeTemplate","t","undefined","showConfirmation","useConfirmationDialog","onClear","clipboardItem","canPaste","TEMPLATE_DISCRIMINATOR","content","Accordion","Tooltip","CopyIcon","DeleteIcon","NestedLayout","AddTemplateButton","template","Button","PasteIcon","pasted","Separator","HorizontalRuleIcon"],"mappings":";;;;;;;;;;;;;;AAuBO,MAAMA,yBAAyBC,SAClC,CAAC,EAAEC,KAAK,EAAEC,YAAY,EAAEC,gBAAgB,IAAI,EAA+B;IACvE,MAAMC,QAAQC;IACd,MAAM,EAAEC,SAAS,EAAE,GAAGC,WAAWC;IAKjC,MAAMC,cAAcC,uBAAuBT,MAAM,MAAM;IACvD,MAAM,CAACU,eAAeC,iBAAiB,GAAGC,SAAS;IACnD,MAAM,CAACC,cAAcC,gBAAgB,GAAGF,SAAS;IACjDG,UAAU;QACN,IAAIP,aAAa;YACbG,iBAAiB;YACjBG,gBAAgB;QACpB;IACJ,GAAG;QAACN;KAAY;IAEhB,MAAMQ,iBACFhB,AAA2B,SAA3BA,MAAM,gBAAgB,GAChBA,MAAM,kBAAkB,CAAC,IAAI,CAACiB,CAAAA,IAAKA,EAAE,EAAE,KAAKjB,MAAM,gBAAgB,IAClEkB;IAEV,MAAM,EAAEC,gBAAgB,EAAE,GAAGC,sBAAsB;QAC/C,OAAO;QACP,SAAS;QACT,aAAa;QACb,aAAa;IACjB;IAEA,MAAMC,UAAU;QACZF,iBAAiB;YACbnB,MAAM,QAAQ,CAAC;QACnB;IACJ;IAEA,MAAMsB,gBAAgBjB,UAAU,IAAI;IACpC,MAAMkB,WACFD,AAAkB,SAAlBA,iBACAA,AAAuB,aAAvBA,cAAc,IAAI,IAClB,AAAsD,YAAtD,OAAOA,cAAc,IAAI,CAACE,uBAAuB,IACjDxB,MAAM,kBAAkB,CAAC,IAAI,CAACiB,CAAAA,IAAKA,EAAE,EAAE,KAAKK,cAAc,IAAI,CAACE,uBAAuB;IAE1F,MAAMC,UAAU,WAAVA,GACF,0CACKT,iBAAiB,WAAjBA,GACG,oBAACU,WAASA;QAAC,YAAY;QAAQ,SAAS;qBACpC,oBAACA,UAAU,IAAI;QACX,OAAOV,eAAe,KAAK;QAC3B,MAAMH;QACN,cAAcC;QACd,SACId,MAAM,QAAQ,GAAG,OAAO,WAAP,GACb,wDACI,oBAAC0B,UAAU,IAAI,CAAC,MAAM;YAClB,oBACI,oBAACC,SAAOA;gBACJ,uBAAS,oBAACC,gBAAQA;gBAClB,SAAS;;YAGjB,SAAS;gBACLvB,UAAU,IAAI,CAAC;oBACX,MAAM;oBACN,MAAML,MAAM,aAAa;gBAC7B;gBACAG,MAAM,gBAAgB,CAAC;oBACnB,OAAO;gBACX;YACJ;0BAEJ,oBAACuB,UAAU,IAAI,CAAC,MAAM;YAClB,oBACI,oBAACC,SAAOA;gBACJ,uBAAS,oBAACE,2BAAUA;gBACpB,SAAS;;YAGjB,SAASR;;qBAMzB,oBAACS,cAAYA;QAAC,QAAQ9B,MAAM,MAAM;WAG1C,MACH,CAACgB,kBAAkB,CAAChB,MAAM,QAAQ,IAAI,WAAJ,GAC/B,oBAAC;QAAI,WAAW;qBACZ,oBAAC+B,mBAAiBA;QACd,OAAO9B;QACP,WAAWD,MAAM,kBAAkB;QACnC,UAAUgC,CAAAA,WAAYhC,MAAM,WAAW,CAACgC,SAAS,EAAE;QAEtDT,YAAY,WAAZA,GACG,oBAACU,QAAMA;QACH,MAAM;QACN,SAAS;QACT,MAAM;QACN,oBAAM,oBAACC,kCAASA;QAChB,SAAS;YACL,MAAMC,SAAS9B,UAAU,KAAK;YAC9B,IAAI8B,QAAQ;gBACRnC,MAAM,QAAQ,CAACmC,OAAO,IAAI;gBAC1BhC,MAAM,gBAAgB,CAAC;oBACnB,OAAO;gBACX;YACJ;QACJ;;IAQxB,IAAI,CAACD,eACD,OAAO,WAAP,GACI,wDACI,oBAACkC,WAASA;QAAC,eAAe;QAAS,SAAS;qBACxC,oBAAC;QAAK,WAAW;OACZpC,MAAM,KAAK,IAAI,oBAGxB,oBAAC;QAAI,WAAW;OAAUyB;IAKtC,OAAO,WAAP,GACI,oBAACC,WAASA;QAAC,YAAY;QAAQ,SAAS;qBACpC,oBAACA,UAAU,IAAI;QACX,oBACI,oBAACA,UAAU,IAAI,CAAC,IAAI;YAChB,OAAO;YACP,OAAO;YACP,oBAAM,oBAACW,oCAAkBA;;QAGjC,OAAOrC,MAAM,KAAK;QAClB,MAAMU;QACN,cAAcC;OAEbc;AAIjB"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import type { ITemplateVM } from "
|
|
2
|
+
import type { ITemplateVM } from "../../../../../features/formModel/index.js";
|
|
3
3
|
export interface AddTemplateButtonProps {
|
|
4
4
|
templates: ITemplateVM[];
|
|
5
5
|
onSelect: (template: ITemplateVM) => void;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import react from "react";
|
|
2
|
+
import { Button, Dialog } from "@webiny/admin-ui";
|
|
3
|
+
import { ReactComponent } from "@webiny/icons/add.svg";
|
|
4
|
+
import { TemplateGallery } from "./TemplateGallery.js";
|
|
5
|
+
const AddTemplateButton = ({ templates, onSelect, label, size = "sm", variant = "tertiary" })=>/*#__PURE__*/ react.createElement("div", {
|
|
6
|
+
className: "flex justify-between items-center"
|
|
7
|
+
}, /*#__PURE__*/ react.createElement(Dialog, {
|
|
8
|
+
size: "lg",
|
|
9
|
+
className: "w-[800px]",
|
|
10
|
+
trigger: /*#__PURE__*/ react.createElement(Button, {
|
|
11
|
+
size: size,
|
|
12
|
+
variant: variant,
|
|
13
|
+
text: label,
|
|
14
|
+
icon: /*#__PURE__*/ react.createElement(ReactComponent, null)
|
|
15
|
+
}),
|
|
16
|
+
title: "Insert a template",
|
|
17
|
+
info: /*#__PURE__*/ react.createElement(react.Fragment, null)
|
|
18
|
+
}, /*#__PURE__*/ react.createElement(TemplateGallery, {
|
|
19
|
+
templates: templates,
|
|
20
|
+
onSelect: onSelect
|
|
21
|
+
})));
|
|
22
|
+
export { AddTemplateButton };
|
|
23
|
+
|
|
24
|
+
//# sourceMappingURL=AddTemplateButton.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/AddTemplateButton.js","sources":["../../../../../../src/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/AddTemplateButton.tsx"],"sourcesContent":["import React from \"react\";\nimport { Button } from \"@webiny/admin-ui\";\nimport { Dialog } from \"@webiny/admin-ui\";\nimport { ReactComponent as AddIcon } from \"@webiny/icons/add.svg\";\nimport type { ITemplateVM } from \"~/features/formModel/index.js\";\nimport { TemplateGallery } from \"./TemplateGallery.js\";\n\nexport interface AddTemplateButtonProps {\n templates: ITemplateVM[];\n onSelect: (template: ITemplateVM) => void;\n label?: string;\n size?: \"sm\" | \"md\" | \"lg\";\n variant?: \"primary\" | \"secondary\" | \"tertiary\";\n}\n\nexport const AddTemplateButton = ({\n templates,\n onSelect,\n label,\n size = \"sm\",\n variant = \"tertiary\"\n}: AddTemplateButtonProps) => {\n return (\n <div className={\"flex justify-between items-center\"}>\n <Dialog\n size={\"lg\"}\n className={\"w-[800px]\"}\n trigger={<Button size={size} variant={variant} text={label} icon={<AddIcon />} />}\n title={\"Insert a template\"}\n info={<></>}\n >\n <TemplateGallery templates={templates} onSelect={onSelect} />\n </Dialog>\n </div>\n );\n};\n"],"names":["AddTemplateButton","templates","onSelect","label","size","variant","Dialog","Button","AddIcon","TemplateGallery"],"mappings":";;;;AAeO,MAAMA,oBAAoB,CAAC,EAC9BC,SAAS,EACTC,QAAQ,EACRC,KAAK,EACLC,OAAO,IAAI,EACXC,UAAU,UAAU,EACC,GACd,WAAP,GACI,oBAAC;QAAI,WAAW;qBACZ,oBAACC,QAAMA;QACH,MAAM;QACN,WAAW;QACX,uBAAS,oBAACC,QAAMA;YAAC,MAAMH;YAAM,SAASC;YAAS,MAAMF;YAAO,oBAAM,oBAACK,gBAAOA;;QAC1E,OAAO;QACP,oBAAM;qBAEN,oBAACC,iBAAeA;QAAC,WAAWR;QAAW,UAAUC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import type { ITemplateVM } from "../../../../../features/formModel/index.js";
|
|
3
|
+
interface SelectableTemplateProps {
|
|
4
|
+
template: ITemplateVM;
|
|
5
|
+
onSelect: (template: ITemplateVM) => void;
|
|
6
|
+
className: string;
|
|
7
|
+
children: React.ReactNode;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* A focusable, clickable wrapper that inserts the template and closes the dialog.
|
|
11
|
+
*/
|
|
12
|
+
export declare const SelectableTemplate: ({ template, onSelect, className, children }: SelectableTemplateProps) => React.JSX.Element;
|
|
13
|
+
export {};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import react from "react";
|
|
2
|
+
import { Dialog } from "@webiny/admin-ui";
|
|
3
|
+
const selectOnEnterOrSpace = (event)=>{
|
|
4
|
+
if ("Enter" !== event.key && " " !== event.key) return;
|
|
5
|
+
event.preventDefault();
|
|
6
|
+
event.currentTarget.click();
|
|
7
|
+
};
|
|
8
|
+
const FOCUS_CLASSES = "focus-visible:outline-none focus-visible:ring-lg focus-visible:ring-primary-dimmed";
|
|
9
|
+
const SelectableTemplate = ({ template, onSelect, className, children })=>/*#__PURE__*/ react.createElement(Dialog.Close, {
|
|
10
|
+
asChild: true
|
|
11
|
+
}, /*#__PURE__*/ react.createElement("div", {
|
|
12
|
+
role: "button",
|
|
13
|
+
tabIndex: 0,
|
|
14
|
+
"aria-label": `Insert ${template.label}`,
|
|
15
|
+
onClick: ()=>onSelect(template),
|
|
16
|
+
onKeyDown: selectOnEnterOrSpace,
|
|
17
|
+
className: `group cursor-pointer ${FOCUS_CLASSES} ${className}`
|
|
18
|
+
}, children));
|
|
19
|
+
export { SelectableTemplate };
|
|
20
|
+
|
|
21
|
+
//# sourceMappingURL=SelectableTemplate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/SelectableTemplate.js","sources":["../../../../../../src/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/SelectableTemplate.tsx"],"sourcesContent":["import React from \"react\";\nimport { Dialog } from \"@webiny/admin-ui\";\nimport type { ITemplateVM } from \"~/features/formModel/index.js\";\n\n/**\n * Templates are picked by clicking a card or a row. Enter and Space do the same for keyboard users,\n * and go through `click()` so `Dialog.Close` closes the dialog too.\n */\nconst selectOnEnterOrSpace = (event: React.KeyboardEvent<HTMLDivElement>) => {\n if (event.key !== \"Enter\" && event.key !== \" \") {\n return;\n }\n event.preventDefault();\n event.currentTarget.click();\n};\n\nconst FOCUS_CLASSES =\n \"focus-visible:outline-none focus-visible:ring-lg focus-visible:ring-primary-dimmed\";\n\ninterface SelectableTemplateProps {\n template: ITemplateVM;\n onSelect: (template: ITemplateVM) => void;\n className: string;\n children: React.ReactNode;\n}\n\n/**\n * A focusable, clickable wrapper that inserts the template and closes the dialog.\n */\nexport const SelectableTemplate = ({\n template,\n onSelect,\n className,\n children\n}: SelectableTemplateProps) => {\n return (\n <Dialog.Close asChild>\n <div\n role={\"button\"}\n tabIndex={0}\n aria-label={`Insert ${template.label}`}\n onClick={() => onSelect(template)}\n onKeyDown={selectOnEnterOrSpace}\n className={`group cursor-pointer ${FOCUS_CLASSES} ${className}`}\n >\n {children}\n </div>\n </Dialog.Close>\n );\n};\n"],"names":["selectOnEnterOrSpace","event","FOCUS_CLASSES","SelectableTemplate","template","onSelect","className","children","Dialog"],"mappings":";;AAQA,MAAMA,uBAAuB,CAACC;IAC1B,IAAIA,AAAc,YAAdA,MAAM,GAAG,IAAgBA,AAAc,QAAdA,MAAM,GAAG,EAClC;IAEJA,MAAM,cAAc;IACpBA,MAAM,aAAa,CAAC,KAAK;AAC7B;AAEA,MAAMC,gBACF;AAYG,MAAMC,qBAAqB,CAAC,EAC/BC,QAAQ,EACRC,QAAQ,EACRC,SAAS,EACTC,QAAQ,EACc,GACf,WAAP,GACI,oBAACC,OAAO,KAAK;QAAC;qBACV,oBAAC;QACG,MAAM;QACN,UAAU;QACV,cAAY,CAAC,OAAO,EAAEJ,SAAS,KAAK,EAAE;QACtC,SAAS,IAAMC,SAASD;QACxB,WAAWJ;QACX,WAAW,CAAC,qBAAqB,EAAEE,cAAc,CAAC,EAAEI,WAAW;OAE9DC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import react from "react";
|
|
2
|
+
import { Button, Text } from "@webiny/admin-ui";
|
|
3
|
+
import { ReactComponent } from "@webiny/icons/add_circle_outline.svg";
|
|
4
|
+
import { SelectableTemplate } from "./SelectableTemplate.js";
|
|
5
|
+
import { TemplateIcon } from "./TemplateIcon.js";
|
|
6
|
+
const TemplateCard = ({ template, onSelect })=>/*#__PURE__*/ react.createElement(SelectableTemplate, {
|
|
7
|
+
template: template,
|
|
8
|
+
onSelect: onSelect,
|
|
9
|
+
className: "flex flex-col justify-between bg-neutral-base overflow-hidden rounded-lg w-[173px] relative shadow-sm"
|
|
10
|
+
}, /*#__PURE__*/ react.createElement("div", null, /*#__PURE__*/ react.createElement("div", {
|
|
11
|
+
className: "flex items-center justify-center py-xxl w-full bg-neutral-dimmed"
|
|
12
|
+
}, /*#__PURE__*/ react.createElement(TemplateIcon, {
|
|
13
|
+
icon: template.icon,
|
|
14
|
+
size: 40
|
|
15
|
+
})), /*#__PURE__*/ react.createElement("div", {
|
|
16
|
+
className: "py-sm-extra px-md"
|
|
17
|
+
}, /*#__PURE__*/ react.createElement(Text, {
|
|
18
|
+
size: "md",
|
|
19
|
+
className: "mb-xs text-neutral-primary font-semibold"
|
|
20
|
+
}, template.label), template.description && /*#__PURE__*/ react.createElement(Text, {
|
|
21
|
+
size: "sm",
|
|
22
|
+
as: "div",
|
|
23
|
+
className: "text-neutral-muted line-clamp-2"
|
|
24
|
+
}, template.description))), /*#__PURE__*/ react.createElement("div", {
|
|
25
|
+
className: "absolute inset-0 hidden items-center justify-center bg-white/80 group-hover:flex group-focus-visible:flex"
|
|
26
|
+
}, /*#__PURE__*/ react.createElement(Button, {
|
|
27
|
+
size: "lg",
|
|
28
|
+
variant: "primary",
|
|
29
|
+
icon: /*#__PURE__*/ react.createElement(ReactComponent, null),
|
|
30
|
+
tabIndex: -1,
|
|
31
|
+
"aria-hidden": true
|
|
32
|
+
}, "Insert")));
|
|
33
|
+
export { TemplateCard };
|
|
34
|
+
|
|
35
|
+
//# sourceMappingURL=TemplateCard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateCard.js","sources":["../../../../../../src/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateCard.tsx"],"sourcesContent":["import React from \"react\";\nimport { Button } from \"@webiny/admin-ui\";\nimport { Text } from \"@webiny/admin-ui\";\nimport { ReactComponent as PlusIcon } from \"@webiny/icons/add_circle_outline.svg\";\nimport { SelectableTemplate } from \"./SelectableTemplate.js\";\nimport { TemplateIcon } from \"./TemplateIcon.js\";\nimport type { TemplateItemProps } from \"./types.js\";\n\nexport const TemplateCard = ({ template, onSelect }: TemplateItemProps) => {\n return (\n <SelectableTemplate\n template={template}\n onSelect={onSelect}\n className={\n \"flex flex-col justify-between bg-neutral-base overflow-hidden rounded-lg w-[173px] relative shadow-sm\"\n }\n >\n <div>\n <div className={\"flex items-center justify-center py-xxl w-full bg-neutral-dimmed\"}>\n <TemplateIcon icon={template.icon} size={40} />\n </div>\n <div className={\"py-sm-extra px-md\"}>\n <Text size={\"md\"} className={\"mb-xs text-neutral-primary font-semibold\"}>\n {template.label}\n </Text>\n {template.description && (\n <Text size={\"sm\"} as={\"div\"} className={\"text-neutral-muted line-clamp-2\"}>\n {template.description}\n </Text>\n )}\n </div>\n </div>\n\n <div\n className={\n \"absolute inset-0 hidden items-center justify-center bg-white/80 group-hover:flex group-focus-visible:flex\"\n }\n >\n <Button\n size={\"lg\"}\n variant={\"primary\"}\n icon={<PlusIcon />}\n tabIndex={-1}\n aria-hidden={true}\n >\n Insert\n </Button>\n </div>\n </SelectableTemplate>\n );\n};\n"],"names":["TemplateCard","template","onSelect","SelectableTemplate","TemplateIcon","Text","Button","PlusIcon"],"mappings":";;;;;AAQO,MAAMA,eAAe,CAAC,EAAEC,QAAQ,EAAEC,QAAQ,EAAqB,GAC3D,WAAP,GACI,oBAACC,oBAAkBA;QACf,UAAUF;QACV,UAAUC;QACV,WACI;qBAGJ,oBAAC,2BACG,oBAAC;QAAI,WAAW;qBACZ,oBAACE,cAAYA;QAAC,MAAMH,SAAS,IAAI;QAAE,MAAM;uBAE7C,oBAAC;QAAI,WAAW;qBACZ,oBAACI,MAAIA;QAAC,MAAM;QAAM,WAAW;OACxBJ,SAAS,KAAK,GAElBA,SAAS,WAAW,IAAI,WAAJ,GACjB,oBAACI,MAAIA;QAAC,MAAM;QAAM,IAAI;QAAO,WAAW;OACnCJ,SAAS,WAAW,mBAMrC,oBAAC;QACG,WACI;qBAGJ,oBAACK,QAAMA;QACH,MAAM;QACN,SAAS;QACT,oBAAM,oBAACC,gBAAQA;QACf,UAAU;QACV,eAAa;OAChB"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import type { ITemplateVM } from "../../../../../features/formModel/index.js";
|
|
3
|
+
interface TemplateGalleryProps {
|
|
4
|
+
templates: ITemplateVM[];
|
|
5
|
+
onSelect: (template: ITemplateVM) => void;
|
|
6
|
+
}
|
|
7
|
+
export declare const TemplateGallery: ({ templates, onSelect }: TemplateGalleryProps) => React.JSX.Element;
|
|
8
|
+
export {};
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import react, { useState } from "react";
|
|
2
|
+
import { TemplateGalleryToolbar } from "./TemplateGalleryToolbar.js";
|
|
3
|
+
import { TemplateList } from "./TemplateList.js";
|
|
4
|
+
const TemplateGallery = ({ templates, onSelect })=>{
|
|
5
|
+
const [viewMode, setViewMode] = useState("grid");
|
|
6
|
+
const [search, setSearch] = useState("");
|
|
7
|
+
const query = search.toLowerCase();
|
|
8
|
+
const filteredTemplates = templates.filter((template)=>template.label.toLowerCase().includes(query));
|
|
9
|
+
return /*#__PURE__*/ react.createElement(react.Fragment, null, /*#__PURE__*/ react.createElement(TemplateGalleryToolbar, {
|
|
10
|
+
search: search,
|
|
11
|
+
onSearch: setSearch,
|
|
12
|
+
viewMode: viewMode,
|
|
13
|
+
onViewMode: setViewMode
|
|
14
|
+
}), /*#__PURE__*/ react.createElement(TemplateList, {
|
|
15
|
+
viewMode: viewMode,
|
|
16
|
+
templates: filteredTemplates,
|
|
17
|
+
onSelect: onSelect
|
|
18
|
+
}));
|
|
19
|
+
};
|
|
20
|
+
export { TemplateGallery };
|
|
21
|
+
|
|
22
|
+
//# sourceMappingURL=TemplateGallery.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateGallery.js","sources":["../../../../../../src/base/Base/FieldRenderers/ObjectRenderer/TemplatePicker/TemplateGallery.tsx"],"sourcesContent":["import React, { useState } from \"react\";\nimport type { ITemplateVM } from \"~/features/formModel/index.js\";\nimport { TemplateGalleryToolbar } from \"./TemplateGalleryToolbar.js\";\nimport { TemplateList } from \"./TemplateList.js\";\nimport type { ViewMode } from \"./types.js\";\n\ninterface TemplateGalleryProps {\n templates: ITemplateVM[];\n onSelect: (template: ITemplateVM) => void;\n}\n\nexport const TemplateGallery = ({ templates, onSelect }: TemplateGalleryProps) => {\n const [viewMode, setViewMode] = useState<ViewMode>(\"grid\");\n const [search, setSearch] = useState(\"\");\n\n const query = search.toLowerCase();\n const filteredTemplates = templates.filter(template =>\n template.label.toLowerCase().includes(query)\n );\n\n return (\n <>\n <TemplateGalleryToolbar\n search={search}\n onSearch={setSearch}\n viewMode={viewMode}\n onViewMode={setViewMode}\n />\n <TemplateList viewMode={viewMode} templates={filteredTemplates} onSelect={onSelect} />\n </>\n );\n};\n"],"names":["TemplateGallery","templates","onSelect","viewMode","setViewMode","useState","search","setSearch","query","filteredTemplates","template","TemplateGalleryToolbar","TemplateList"],"mappings":";;;AAWO,MAAMA,kBAAkB,CAAC,EAAEC,SAAS,EAAEC,QAAQ,EAAwB;IACzE,MAAM,CAACC,UAAUC,YAAY,GAAGC,SAAmB;IACnD,MAAM,CAACC,QAAQC,UAAU,GAAGF,SAAS;IAErC,MAAMG,QAAQF,OAAO,WAAW;IAChC,MAAMG,oBAAoBR,UAAU,MAAM,CAACS,CAAAA,WACvCA,SAAS,KAAK,CAAC,WAAW,GAAG,QAAQ,CAACF;IAG1C,OAAO,WAAP,GACI,wDACI,oBAACG,wBAAsBA;QACnB,QAAQL;QACR,UAAUC;QACV,UAAUJ;QACV,YAAYC;sBAEhB,oBAACQ,cAAYA;QAAC,UAAUT;QAAU,WAAWM;QAAmB,UAAUP;;AAGtF"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import type { ViewMode } from "./types.js";
|
|
3
|
+
interface TemplateGalleryToolbarProps {
|
|
4
|
+
search: string;
|
|
5
|
+
onSearch: (search: string) => void;
|
|
6
|
+
viewMode: ViewMode;
|
|
7
|
+
onViewMode: (viewMode: ViewMode) => void;
|
|
8
|
+
}
|
|
9
|
+
export declare const TemplateGalleryToolbar: ({ search, onSearch, viewMode, onViewMode }: TemplateGalleryToolbarProps) => React.JSX.Element;
|
|
10
|
+
export {};
|