@wix/patterns 1.477.0 → 1.479.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/components/CardContainer/CardContainer.st.css.js +2 -2
- package/dist/cjs/components/CardContainer/CardContainer.st.css.js.map +1 -1
- package/dist/cjs/components/CmsFieldManagement/CmsFieldForm.st.css.js +3 -3
- package/dist/cjs/components/CmsFieldManagement/CmsFieldForm.st.css.js.map +1 -1
- package/dist/cjs/components/CmsFieldManagement/CmsFieldModal.st.css.js +3 -3
- package/dist/cjs/components/CmsFieldManagement/CmsFieldModal.st.css.js.map +1 -1
- package/dist/cjs/components/CmsFieldManagement/Sections/ValidationAndDefaultsSection.st.css.js +3 -3
- package/dist/cjs/components/CmsFieldManagement/Sections/ValidationAndDefaultsSection.st.css.js.map +1 -1
- package/dist/cjs/components/Collapse/Collapse.st.css.js +3 -3
- package/dist/cjs/components/Collapse/Collapse.st.css.js.map +1 -1
- package/dist/cjs/components/CollectionPageHeaderNew/CollectionPageHeader.js.map +1 -1
- package/dist/cjs/components/CollectionPageNew/CollectionPage.st.css +9 -3
- package/dist/cjs/components/CollectionPageNew/CollectionPage.st.css.js +2 -2
- package/dist/cjs/components/CollectionPageNew/CollectionPage.st.css.js.map +1 -1
- package/dist/cjs/components/CollectionSectionHeader/CollectionSectionHeader.st.css.js +3 -3
- package/dist/cjs/components/CollectionSectionHeader/CollectionSectionHeader.st.css.js.map +1 -1
- package/dist/cjs/components/CollectionTable/CollectionTable.st.css.js +2 -2
- package/dist/cjs/components/CollectionTable/CollectionTable.st.css.js.map +1 -1
- package/dist/cjs/components/CollectionTable/CollectionTableWSRTable.st.css.js +2 -2
- package/dist/cjs/components/CollectionTable/CollectionTableWSRTable.st.css.js.map +1 -1
- package/dist/cjs/components/CollectionToolbar/CollectionToolbar.st.css.js +5 -5
- package/dist/cjs/components/CollectionToolbar/CollectionToolbar.st.css.js.map +1 -1
- package/dist/cjs/components/CollectionToolbar/SearchOrCustomFilter.st.css.js +4 -4
- package/dist/cjs/components/CollectionToolbar/SearchOrCustomFilter.st.css.js.map +1 -1
- package/dist/cjs/components/CollectionToolbar/ToolbarOverflowMenu.js +57 -22
- package/dist/cjs/components/CollectionToolbar/ToolbarOverflowMenu.js.map +1 -1
- package/dist/cjs/components/CollectionToolbar/useToolbarOverflowItems.js +7 -1
- package/dist/cjs/components/CollectionToolbar/useToolbarOverflowItems.js.map +1 -1
- package/dist/cjs/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js +2 -2
- package/dist/cjs/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js.map +1 -1
- package/dist/cjs/components/CollectionViewsDropdown/ViewsDropdown.st.css.js +2 -2
- package/dist/cjs/components/CollectionViewsDropdown/ViewsDropdown.st.css.js.map +1 -1
- package/dist/cjs/components/CustomFieldModal/CustomFieldForm.js +17 -16
- package/dist/cjs/components/CustomFieldModal/CustomFieldForm.js.map +1 -1
- package/dist/cjs/components/CustomFieldModal/CustomFieldFormPiiFields.js +37 -21
- package/dist/cjs/components/CustomFieldModal/CustomFieldFormPiiFields.js.map +1 -1
- package/dist/cjs/components/CustomFieldModal/CustomFieldFormPiiFields.st.css +15 -0
- package/dist/cjs/components/CustomFieldModal/CustomFieldFormPiiFields.st.css.js +28 -0
- package/dist/cjs/components/CustomFieldModal/CustomFieldFormPiiFields.st.css.js.map +1 -0
- package/dist/cjs/components/CustomFieldModal/CustomFieldTypeDropdown.js +17 -10
- package/dist/cjs/components/CustomFieldModal/CustomFieldTypeDropdown.js.map +1 -1
- package/dist/cjs/components/DragHandle/DragHandle.st.css.js +2 -2
- package/dist/cjs/components/DragHandle/DragHandle.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/AddItemRow.js +6 -3
- package/dist/cjs/components/EditableTable/AddItemRow.js.map +1 -1
- package/dist/cjs/components/EditableTable/EditableCell.js +13 -7
- package/dist/cjs/components/EditableTable/EditableCell.js.map +1 -1
- package/dist/cjs/components/EditableTable/EditableCell.st.css.js +3 -3
- package/dist/cjs/components/EditableTable/EditableCell.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/EditableTable.js +20 -11
- package/dist/cjs/components/EditableTable/EditableTable.js.map +1 -1
- package/dist/cjs/components/EditableTable/EditableTable.uni.driver.js +1 -0
- package/dist/cjs/components/EditableTable/EditableTable.uni.driver.js.map +1 -1
- package/dist/cjs/components/EditableTable/EditableTableContextMenu.js +19 -15
- package/dist/cjs/components/EditableTable/EditableTableContextMenu.js.map +1 -1
- package/dist/cjs/components/EditableTable/HeaderActionsPopover.st.css.js +2 -2
- package/dist/cjs/components/EditableTable/HeaderActionsPopover.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/HeaderFieldActions.js +11 -3
- package/dist/cjs/components/EditableTable/HeaderFieldActions.js.map +1 -1
- package/dist/cjs/components/EditableTable/cellTypes/CellViewLayout.st.css.js +2 -2
- package/dist/cjs/components/EditableTable/cellTypes/CellViewLayout.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/cellTypes/address/Edit.st.css.js +3 -3
- package/dist/cjs/components/EditableTable/cellTypes/address/Edit.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/cellTypes/array/Edit.st.css.js +3 -3
- package/dist/cjs/components/EditableTable/cellTypes/array/Edit.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/cellTypes/boolean/Edit.st.css.js +3 -3
- package/dist/cjs/components/EditableTable/cellTypes/boolean/Edit.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/cellTypes/boolean/View.st.css.js +3 -3
- package/dist/cjs/components/EditableTable/cellTypes/boolean/View.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/cellTypes/color/Edit.st.css.js +2 -2
- package/dist/cjs/components/EditableTable/cellTypes/color/Edit.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/cellTypes/date/Edit.st.css.js +3 -3
- package/dist/cjs/components/EditableTable/cellTypes/date/Edit.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/cellTypes/date/View.st.css.js +2 -2
- package/dist/cjs/components/EditableTable/cellTypes/date/View.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/cellTypes/datetime/Edit.st.css.js +8 -8
- package/dist/cjs/components/EditableTable/cellTypes/datetime/Edit.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/cellTypes/datetime/View.st.css.js +7 -7
- package/dist/cjs/components/EditableTable/cellTypes/datetime/View.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/cellTypes/email/Edit.st.css.js +3 -3
- package/dist/cjs/components/EditableTable/cellTypes/email/Edit.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/cellTypes/email/View.st.css.js +2 -2
- package/dist/cjs/components/EditableTable/cellTypes/email/View.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/cellTypes/number/Edit.st.css.js +3 -3
- package/dist/cjs/components/EditableTable/cellTypes/number/Edit.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/cellTypes/number/View.st.css.js +3 -3
- package/dist/cjs/components/EditableTable/cellTypes/number/View.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/cellTypes/object/Edit.st.css.js +3 -3
- package/dist/cjs/components/EditableTable/cellTypes/object/Edit.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/cellTypes/object/View.st.css.js +2 -2
- package/dist/cjs/components/EditableTable/cellTypes/object/View.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/cellTypes/select/Edit.st.css.js +3 -3
- package/dist/cjs/components/EditableTable/cellTypes/select/Edit.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/cellTypes/text/Edit.st.css.js +4 -4
- package/dist/cjs/components/EditableTable/cellTypes/text/Edit.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/cellTypes/text/View.st.css.js +2 -2
- package/dist/cjs/components/EditableTable/cellTypes/text/View.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/cellTypes/time/Edit.st.css.js +4 -4
- package/dist/cjs/components/EditableTable/cellTypes/time/Edit.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/cellTypes/url/Edit.st.css.js +3 -3
- package/dist/cjs/components/EditableTable/cellTypes/url/Edit.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/cellTypes/url/View.st.css.js +5 -5
- package/dist/cjs/components/EditableTable/cellTypes/url/View.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/useAddRow.js +6 -1
- package/dist/cjs/components/EditableTable/useAddRow.js.map +1 -1
- package/dist/cjs/components/EditableTable/useEditableTableContextMenu.js +13 -1
- package/dist/cjs/components/EditableTable/useEditableTableContextMenu.js.map +1 -1
- package/dist/cjs/components/EmptyState/EmptyStateBase.st.css.js +2 -2
- package/dist/cjs/components/EmptyState/EmptyStateBase.st.css.js.map +1 -1
- package/dist/cjs/components/EntityPage/EntityPagePlain.st.css.js +2 -2
- package/dist/cjs/components/EntityPage/EntityPagePlain.st.css.js.map +1 -1
- package/dist/cjs/components/Fade/Fade.st.css.js +2 -2
- package/dist/cjs/components/Fade/Fade.st.css.js.map +1 -1
- package/dist/cjs/components/FieldActions/HeaderActionsPopover.js +19 -6
- package/dist/cjs/components/FieldActions/HeaderActionsPopover.js.map +1 -1
- package/dist/cjs/components/Grid/Grid.js.map +1 -1
- package/dist/cjs/components/Heading/Heading.st.css.js +2 -2
- package/dist/cjs/components/Heading/Heading.st.css.js.map +1 -1
- package/dist/cjs/components/ImportButton/ImportButton.js +26 -12
- package/dist/cjs/components/ImportButton/ImportButton.js.map +1 -1
- package/dist/cjs/components/ImportButton/ImportButton.uni.driver.js +6 -1
- package/dist/cjs/components/ImportButton/ImportButton.uni.driver.js.map +1 -1
- package/dist/cjs/components/ImportButton/ImportProps.js.map +1 -1
- package/dist/cjs/components/ImportButton/ImportStepUpload.st.css.js +3 -3
- package/dist/cjs/components/ImportButton/ImportStepUpload.st.css.js.map +1 -1
- package/dist/cjs/components/InputOverflow/InputOverflow.st.css.js +2 -2
- package/dist/cjs/components/InputOverflow/InputOverflow.st.css.js.map +1 -1
- package/dist/cjs/components/LayoutSwitch/LayoutSwitch.js +42 -10
- package/dist/cjs/components/LayoutSwitch/LayoutSwitch.js.map +1 -1
- package/dist/cjs/components/LoadingRow/LoadingRow.st.css.js +3 -3
- package/dist/cjs/components/LoadingRow/LoadingRow.st.css.js.map +1 -1
- package/dist/cjs/components/MaxHeightText/MaxHeightText.st.css.js +2 -2
- package/dist/cjs/components/MaxHeightText/MaxHeightText.st.css.js.map +1 -1
- package/dist/cjs/components/MaxLines/MaxLines.st.css.js +2 -2
- package/dist/cjs/components/MaxLines/MaxLines.st.css.js.map +1 -1
- package/dist/cjs/components/MoreActions/MoreActionsIcon.js +28 -25
- package/dist/cjs/components/MoreActions/MoreActionsIcon.js.map +1 -1
- package/dist/cjs/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js +5 -5
- package/dist/cjs/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js.map +1 -1
- package/dist/cjs/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.js +2 -2
- package/dist/cjs/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.js.map +1 -1
- package/dist/cjs/components/NestedTable/NestedTableRow.st.css.js +5 -5
- package/dist/cjs/components/NestedTable/NestedTableRow.st.css.js.map +1 -1
- package/dist/cjs/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js +2 -2
- package/dist/cjs/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js.map +1 -1
- package/dist/cjs/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js +2 -2
- package/dist/cjs/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js.map +1 -1
- package/dist/cjs/components/PageSubTitle/PageSubTitle.js +7 -7
- package/dist/cjs/components/PageSubTitle/PageSubTitle.js.map +1 -1
- package/dist/cjs/components/PickerContent/PickerContent.st.css.js +2 -2
- package/dist/cjs/components/PickerContent/PickerContent.st.css.js.map +1 -1
- package/dist/cjs/components/PickerContent/PickerContentAdditionalStep.st.css.js +4 -4
- package/dist/cjs/components/PickerContent/PickerContentAdditionalStep.st.css.js.map +1 -1
- package/dist/cjs/components/PickerTableListItem/PickerTableListItem.st.css.js +2 -2
- package/dist/cjs/components/PickerTableListItem/PickerTableListItem.st.css.js.map +1 -1
- package/dist/cjs/components/PrimaryActions/PrimaryActions.js +1 -2
- package/dist/cjs/components/PrimaryActions/PrimaryActions.js.map +1 -1
- package/dist/cjs/components/ResponsiveButton/ResponsiveButton.js +23 -9
- package/dist/cjs/components/ResponsiveButton/ResponsiveButton.js.map +1 -1
- package/dist/cjs/components/SchemaSource/schemaFieldManagement.js +2 -0
- package/dist/cjs/components/SchemaSource/schemaFieldManagement.js.map +1 -1
- package/dist/cjs/components/ScrollableContent/ScrollableContent.st.css.js +2 -2
- package/dist/cjs/components/ScrollableContent/ScrollableContent.st.css.js.map +1 -1
- package/dist/cjs/components/SetupWidget/SetupWidget.st.css.js +10 -10
- package/dist/cjs/components/SetupWidget/SetupWidget.st.css.js.map +1 -1
- package/dist/cjs/components/SkeletonCard/SkeletonCard.st.css.js +3 -3
- package/dist/cjs/components/SkeletonCard/SkeletonCard.st.css.js.map +1 -1
- package/dist/cjs/components/SlidingModal/SlidingModal.st.css.js +2 -2
- package/dist/cjs/components/SlidingModal/SlidingModal.st.css.js.map +1 -1
- package/dist/cjs/components/Table/AddFieldColumnHeader.st.css.js +6 -6
- package/dist/cjs/components/Table/AddFieldColumnHeader.st.css.js.map +1 -1
- package/dist/cjs/components/TabsFilter/TabsFilter.js +9 -8
- package/dist/cjs/components/TabsFilter/TabsFilter.js.map +1 -1
- package/dist/cjs/components/TabsFilter/TabsFilter.st.css.js +3 -3
- package/dist/cjs/components/TabsFilter/TabsFilter.st.css.js.map +1 -1
- package/dist/cjs/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js +2 -2
- package/dist/cjs/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js.map +1 -1
- package/dist/cjs/components/ToolbarCollection/ToolbarCollection.js +5 -3
- package/dist/cjs/components/ToolbarCollection/ToolbarCollection.js.map +1 -1
- package/dist/cjs/components/ToolbarItem/ToolbarItem.st.css.js +2 -2
- package/dist/cjs/components/ToolbarItem/ToolbarItem.st.css.js.map +1 -1
- package/dist/cjs/components/ToolbarItemBox/ToolbarItemBox.st.css.js +2 -2
- package/dist/cjs/components/ToolbarItemBox/ToolbarItemBox.st.css.js.map +1 -1
- package/dist/cjs/components/common.st.css.js +4 -4
- package/dist/cjs/components/common.st.css.js.map +1 -1
- package/dist/cjs/hooks/useCollectionPageChild/useCollectionPageChild.js +32 -1
- package/dist/cjs/hooks/useCollectionPageChild/useCollectionPageChild.js.map +1 -1
- package/dist/cjs/hooks/useLayoutSwitchCollection.js +2 -1
- package/dist/cjs/hooks/useLayoutSwitchCollection.js.map +1 -1
- package/dist/cjs/hooks/usePickerModal/UsePickerModalParamsBase.js.map +1 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/schema/syncSourcePermissions.js +1 -0
- package/dist/cjs/schema/syncSourcePermissions.js.map +1 -1
- package/dist/cjs/schema/useLayoutSwitchCollection.js +2 -0
- package/dist/cjs/schema/useLayoutSwitchCollection.js.map +1 -1
- package/dist/cjs/state/CollectionPage/CollectionPageActionsBar.js +23 -11
- package/dist/cjs/state/CollectionPage/CollectionPageActionsBar.js.map +1 -1
- package/dist/cjs/state/CollectionPage/CollectionPageHeader.st.css +11 -5
- package/dist/cjs/state/CollectionPage/CollectionPageHeader.st.css.js +6 -3
- package/dist/cjs/state/CollectionPage/CollectionPageHeader.st.css.js.map +1 -1
- package/dist/cjs/state/CollectionPage/MobilePrimaryActionBar.js +25 -0
- package/dist/cjs/state/CollectionPage/MobilePrimaryActionBar.js.map +1 -0
- package/dist/cjs/state/CollectionPage/MobilePrimaryActionBar.st.css +6 -0
- package/dist/cjs/state/CollectionPage/MobilePrimaryActionBar.st.css.js +25 -0
- package/dist/cjs/state/CollectionPage/MobilePrimaryActionBar.st.css.js.map +1 -0
- package/dist/cjs/state/CollectionPage/TitleBadges.js +8 -7
- package/dist/cjs/state/CollectionPage/TitleBadges.js.map +1 -1
- package/dist/cjs/state/CollectionPage/TitleBadges.st.css.js +4 -4
- package/dist/cjs/state/CollectionPage/TitleBadges.st.css.js.map +1 -1
- package/dist/cjs/state/CollectionPage/useCollectionPageHeader.js +59 -21
- package/dist/cjs/state/CollectionPage/useCollectionPageHeader.js.map +1 -1
- package/dist/cjs/state/EditableTable/CellInteractionState.js +19 -2
- package/dist/cjs/state/EditableTable/CellInteractionState.js.map +1 -1
- package/dist/cjs/state/EditableTable/CellValueState.js +19 -1
- package/dist/cjs/state/EditableTable/CellValueState.js.map +1 -1
- package/dist/cjs/state/EditableTable/ClipboardState.js +37 -6
- package/dist/cjs/state/EditableTable/ClipboardState.js.map +1 -1
- package/dist/cjs/state/EditableTable/EditableTableState.js +29 -2
- package/dist/cjs/state/EditableTable/EditableTableState.js.map +1 -1
- package/dist/cjs/state/EditableTable/EditableTableStateBIReporter.js +17 -3
- package/dist/cjs/state/EditableTable/EditableTableStateBIReporter.js.map +1 -1
- package/dist/cjs/state/EditableTable/index.js.map +1 -1
- package/dist/cjs/state/FormPage/FormPageHeader.st.css.js +2 -2
- package/dist/cjs/state/FormPage/FormPageHeader.st.css.js.map +1 -1
- package/dist/cjs/state/LayoutSwitchState.js +2 -1
- package/dist/cjs/state/LayoutSwitchState.js.map +1 -1
- package/dist/cjs/state/TableState.js.map +1 -1
- package/dist/cjs/state/ToolbarCollectionState.js +8 -3
- package/dist/cjs/state/ToolbarCollectionState.js.map +1 -1
- package/dist/cjs/state/ViewTypeState.js +6 -2
- package/dist/cjs/state/ViewTypeState.js.map +1 -1
- package/dist/cjs/styles.global.css +2 -2
- package/dist/cjs/version.js +1 -1
- package/dist/cjs/version.js.map +1 -1
- package/dist/docs/ActionSubItem.md +1 -1
- package/dist/docs/Allow Users to Add Extended Fields.md +3 -3
- package/dist/docs/BulkSelectState.md +1 -1
- package/dist/docs/CMS Collection and Entity Template.md +57 -0
- package/dist/docs/Category.md +1 -1
- package/dist/docs/Collection Toolkit.md +7 -0
- package/dist/docs/Collection and Entity Template.md +59 -0
- package/dist/docs/Collection and Read-Only Detail Template.md +47 -0
- package/dist/docs/CollectionEmptyState.md +1 -1
- package/dist/docs/CollectionErrorState.md +1 -1
- package/dist/docs/CollectionNoResultsState.md +1 -1
- package/dist/docs/CollectionOptimisticActions.md +2 -2
- package/dist/docs/CollectionPage.Content.md +1 -1
- package/dist/docs/CollectionPage.Header.md +6 -6
- package/dist/docs/CollectionPage.md +2 -2
- package/dist/docs/CollectionPremiumEmptyState.md +1 -1
- package/dist/docs/CollectionSearch.md +5 -5
- package/dist/docs/CollectionState.md +3 -3
- package/dist/docs/CollectionToolbar.md +2 -2
- package/dist/docs/Component Tests.md +2 -2
- package/dist/docs/ComputedQuery.md +1 -1
- package/dist/docs/CustomColumns.md +2 -2
- package/dist/docs/CustomFieldsViewWidget.md +1 -1
- package/dist/docs/CustomFieldsWidget.md +3 -3
- package/dist/docs/Data Extension Overview.md +5 -5
- package/dist/docs/DataResultRaw.md +1 -1
- package/dist/docs/Display Extended Fields.md +4 -4
- package/dist/docs/Enable Filters for Extended Fields.md +3 -3
- package/dist/docs/EntityPage.AdditionalContent.md +2 -2
- package/dist/docs/EntityPage.Card.md +1 -1
- package/dist/docs/EntityPage.Content.md +2 -2
- package/dist/docs/EntityPage.Header.md +2 -2
- package/dist/docs/EntityPage.MainContent.md +2 -2
- package/dist/docs/EntityPage.Slots.md +1 -1
- package/dist/docs/EntityPage.md +8 -8
- package/dist/docs/EntityPageState.md +2 -2
- package/dist/docs/Explore Apps.md +1 -1
- package/dist/docs/ExportTo.md +2 -2
- package/dist/docs/Filter Overview.md +23 -23
- package/dist/docs/FilterProps.md +1 -1
- package/dist/docs/FormPageState.md +1 -1
- package/dist/docs/Grid Sections.md +4 -4
- package/dist/docs/Grid.md +4 -4
- package/dist/docs/GridDragAndDrop.md +3 -3
- package/dist/docs/GridFolders.md +1 -1
- package/dist/docs/GridFoldersSection.md +1 -1
- package/dist/docs/GridFoldersState.md +2 -2
- package/dist/docs/GridSectionsProp.md +3 -3
- package/dist/docs/GridState.md +2 -2
- package/dist/docs/ImportButton.md +1 -1
- package/dist/docs/InMemoryBackend.md +3 -3
- package/dist/docs/More Actions.md +5 -5
- package/dist/docs/MoreActionsItem.md +2 -2
- package/dist/docs/MultiAutoInlineCheckboxFilter.md +1 -1
- package/dist/docs/MultiBulkActionToolbar.md +1 -1
- package/dist/docs/MultiLevelSorting.md +3 -3
- package/dist/docs/MultiSelectCheckboxFilter.md +2 -2
- package/dist/docs/MultiSelectCollectionFilter.md +1 -1
- package/dist/docs/NestedTable.md +19 -19
- package/dist/docs/NestedTableLevel.md +3 -3
- package/dist/docs/NestedTableNodeState.md +3 -3
- package/dist/docs/NestedTableState.md +4 -4
- package/dist/docs/Page Templates.md +47 -0
- package/dist/docs/PageWrapper.md +1 -1
- package/dist/docs/PickerContent.md +7 -7
- package/dist/docs/PickerModal.md +4 -4
- package/dist/docs/PickerStandalone.md +2 -2
- package/dist/docs/PrimaryPageButton.md +1 -1
- package/dist/docs/RadioGroupFilter.md +1 -1
- package/dist/docs/Reading the Doc Indices.md +22 -5
- package/dist/docs/Settings Page Template.md +41 -0
- package/dist/docs/SettingsPage.AdditionalContent.md +2 -2
- package/dist/docs/SettingsPage.Card.md +1 -1
- package/dist/docs/SettingsPage.Content.md +2 -2
- package/dist/docs/SettingsPage.Header.md +2 -2
- package/dist/docs/SettingsPage.MainContent.md +2 -2
- package/dist/docs/SettingsPage.md +4 -4
- package/dist/docs/SettingsPageState.md +1 -1
- package/dist/docs/SingleSelectFilter.md +2 -2
- package/dist/docs/Sortable Columns.md +4 -4
- package/dist/docs/SummaryBar.md +1 -1
- package/dist/docs/Table Sections.md +4 -4
- package/dist/docs/Table.md +4 -4
- package/dist/docs/TableColumn.md +3 -3
- package/dist/docs/TableDragAndDrop.md +3 -3
- package/dist/docs/TableFolders.md +1 -1
- package/dist/docs/TableFoldersState.md +2 -2
- package/dist/docs/TableGridSwitch.md +4 -4
- package/dist/docs/TableGridSwitchDragAndDrop.md +3 -3
- package/dist/docs/TableGridSwitchFolders.md +20 -20
- package/dist/docs/TableGridSwitchFoldersState.md +5 -5
- package/dist/docs/TableGridSwitchState.md +2 -2
- package/dist/docs/TableSectionsProp.md +3 -3
- package/dist/docs/TableState.md +2 -2
- package/dist/docs/TableTopNotification.md +2 -2
- package/dist/docs/TabsFilter.md +1 -1
- package/dist/docs/Tags Overview.md +1 -1
- package/dist/docs/Tags.md +3 -3
- package/dist/docs/TagsWidget.md +3 -3
- package/dist/docs/ToolbarCollectionState.md +1 -1
- package/dist/docs/ToolbarFilters.md +1 -1
- package/dist/docs/ToolbarSecondaryActions.md +1 -1
- package/dist/docs/View.md +1 -1
- package/dist/docs/Views.md +1 -1
- package/dist/docs/WidgetsFormProvider.md +3 -3
- package/dist/docs/WixPatternsEssentialsProvider.md +1 -1
- package/dist/docs/WixPatternsProvider.md +3 -3
- package/dist/docs/arrayFilter.md +2 -2
- package/dist/docs/bulkActionModal.md +2 -2
- package/dist/docs/createNestedTableLevel.md +3 -3
- package/dist/docs/createNestedTableSingleEntityLevels.md +1 -1
- package/dist/docs/customFilter.md +2 -2
- package/dist/docs/dateRangeFilter.Factories.md +1 -1
- package/dist/docs/index.json +120 -0
- package/dist/docs/useAmbassadorCollection.md +2 -2
- package/dist/docs/useCollection.md +2 -2
- package/dist/docs/useCreateCollection.md +1 -1
- package/dist/docs/useCreateNestedOptimisticActions.md +5 -5
- package/dist/docs/useEntity.md +2 -2
- package/dist/docs/useEntityPage.md +3 -3
- package/dist/docs/useEntityPageContext.md +2 -2
- package/dist/docs/useGridCollection.md +2 -2
- package/dist/docs/useGridFolders.md +2 -2
- package/dist/docs/useNestedTable.md +5 -5
- package/dist/docs/useOptimisticActions.md +2 -2
- package/dist/docs/usePatternsNavigate.md +1 -1
- package/dist/docs/usePickerContent.md +2 -2
- package/dist/docs/usePickerModal.md +1 -1
- package/dist/docs/usePickerStandalone.md +2 -2
- package/dist/docs/useSchemaSource.md +0 -2
- package/dist/docs/useSettingsPage.md +2 -2
- package/dist/docs/useSettingsPageContext.md +2 -2
- package/dist/docs/useStaticListFilterCollection.md +2 -2
- package/dist/docs/useTableCollection.md +1 -1
- package/dist/docs/useTableFolders.md +2 -2
- package/dist/docs/useTableGridSwitchCollection.md +2 -2
- package/dist/docs/useTableGridSwitchFolders.md +4 -4
- package/dist/docs/useWidgetsFormContext.md +2 -2
- package/dist/dts-bundle/components/CollectionPage.d.ts +5 -5
- package/dist/dts-bundle/components/Grid.d.ts +1 -1
- package/dist/dts-bundle/components/LayoutSwitch.d.ts +1 -1
- package/dist/dts-bundle/components/TableGridSwitch.d.ts +1 -1
- package/dist/dts-bundle/components/schema/Grid.d.ts +1 -1
- package/dist/dts-bundle/hooks/useLayoutSwitchCollection.d.ts +15 -4
- package/dist/dts-bundle/hooks/usePickerModal.d.ts +1 -1
- package/dist/dts-bundle/index.json +51 -51
- package/dist/dts-bundle/index.txt +13 -13
- package/dist/dts-bundle/types/EntityPageState.d.ts +7 -5
- package/dist/dts-bundle/types/SchemaSource.d.ts +20 -6
- package/dist/dts-bundle/types/SchemaSourceInput.d.ts +20 -6
- package/dist/dts-bundle/types/TableState.d.ts +1 -1
- package/dist/dts-bundle/types/ToolbarCollectionBaseProps.d.ts +6 -6
- package/dist/dts-bundle/types/UseCmsSchemaSourceDeps.d.ts +8 -1
- package/dist/esm/components/CardContainer/CardContainer.st.css.js +2 -2
- package/dist/esm/components/CardContainer/CardContainer.st.css.js.map +1 -1
- package/dist/esm/components/CmsFieldManagement/CmsFieldForm.st.css.js +2 -2
- package/dist/esm/components/CmsFieldManagement/CmsFieldModal.st.css.js +2 -2
- package/dist/esm/components/CmsFieldManagement/CmsFieldModal.st.css.js.map +1 -1
- package/dist/esm/components/CmsFieldManagement/Sections/ValidationAndDefaultsSection.st.css.js +2 -2
- package/dist/esm/components/Collapse/Collapse.st.css.js +2 -2
- package/dist/esm/components/CollectionPageNew/CollectionPage.st.css +9 -3
- package/dist/esm/components/CollectionPageNew/CollectionPage.st.css.js +2 -2
- package/dist/esm/components/CollectionPageNew/CollectionPage.st.css.js.map +1 -1
- package/dist/esm/components/CollectionSectionHeader/CollectionSectionHeader.st.css.js +2 -2
- package/dist/esm/components/CollectionTable/CollectionTable.st.css.js +2 -2
- package/dist/esm/components/CollectionTable/CollectionTableWSRTable.st.css.js +2 -2
- package/dist/esm/components/CollectionToolbar/CollectionToolbar.st.css.js +2 -2
- package/dist/esm/components/CollectionToolbar/SearchOrCustomFilter.st.css.js +2 -2
- package/dist/esm/components/CollectionToolbar/ToolbarOverflowMenu.js +15 -6
- package/dist/esm/components/CollectionToolbar/ToolbarOverflowMenu.js.map +1 -1
- package/dist/esm/components/CollectionToolbar/useToolbarOverflowItems.js +5 -0
- package/dist/esm/components/CollectionToolbar/useToolbarOverflowItems.js.map +1 -1
- package/dist/esm/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js +2 -2
- package/dist/esm/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js.map +1 -1
- package/dist/esm/components/CollectionViewsDropdown/ViewsDropdown.st.css.js +2 -2
- package/dist/esm/components/CustomFieldModal/CustomFieldForm.js +5 -4
- package/dist/esm/components/CustomFieldModal/CustomFieldForm.js.map +1 -1
- package/dist/esm/components/CustomFieldModal/CustomFieldFormPiiFields.js +8 -3
- package/dist/esm/components/CustomFieldModal/CustomFieldFormPiiFields.js.map +1 -1
- package/dist/esm/components/CustomFieldModal/CustomFieldFormPiiFields.st.css +15 -0
- package/dist/esm/components/CustomFieldModal/CustomFieldFormPiiFields.st.css.js +15 -0
- package/dist/esm/components/CustomFieldModal/CustomFieldFormPiiFields.st.css.js.map +1 -0
- package/dist/esm/components/CustomFieldModal/CustomFieldTypeDropdown.js +12 -4
- package/dist/esm/components/CustomFieldModal/CustomFieldTypeDropdown.js.map +1 -1
- package/dist/esm/components/DragHandle/DragHandle.st.css.js +2 -2
- package/dist/esm/components/EditableTable/AddItemRow.js +2 -2
- package/dist/esm/components/EditableTable/AddItemRow.js.map +1 -1
- package/dist/esm/components/EditableTable/EditableCell.js +7 -1
- package/dist/esm/components/EditableTable/EditableCell.js.map +1 -1
- package/dist/esm/components/EditableTable/EditableCell.st.css.js +2 -2
- package/dist/esm/components/EditableTable/EditableTable.js +11 -4
- package/dist/esm/components/EditableTable/EditableTable.js.map +1 -1
- package/dist/esm/components/EditableTable/EditableTable.uni.driver.js +2 -0
- package/dist/esm/components/EditableTable/EditableTable.uni.driver.js.map +1 -1
- package/dist/esm/components/EditableTable/EditableTableContextMenu.js +16 -6
- package/dist/esm/components/EditableTable/EditableTableContextMenu.js.map +1 -1
- package/dist/esm/components/EditableTable/HeaderActionsPopover.st.css.js +2 -2
- package/dist/esm/components/EditableTable/HeaderActionsPopover.st.css.js.map +1 -1
- package/dist/esm/components/EditableTable/HeaderFieldActions.js +9 -2
- package/dist/esm/components/EditableTable/HeaderFieldActions.js.map +1 -1
- package/dist/esm/components/EditableTable/cellTypes/CellViewLayout.st.css.js +2 -2
- package/dist/esm/components/EditableTable/cellTypes/CellViewLayout.st.css.js.map +1 -1
- package/dist/esm/components/EditableTable/cellTypes/address/Edit.st.css.js +2 -2
- package/dist/esm/components/EditableTable/cellTypes/address/Edit.st.css.js.map +1 -1
- package/dist/esm/components/EditableTable/cellTypes/array/Edit.st.css.js +2 -2
- package/dist/esm/components/EditableTable/cellTypes/boolean/Edit.st.css.js +2 -2
- package/dist/esm/components/EditableTable/cellTypes/boolean/View.st.css.js +2 -2
- package/dist/esm/components/EditableTable/cellTypes/boolean/View.st.css.js.map +1 -1
- package/dist/esm/components/EditableTable/cellTypes/color/Edit.st.css.js +2 -2
- package/dist/esm/components/EditableTable/cellTypes/date/Edit.st.css.js +2 -2
- package/dist/esm/components/EditableTable/cellTypes/date/View.st.css.js +2 -2
- package/dist/esm/components/EditableTable/cellTypes/datetime/Edit.st.css.js +2 -2
- package/dist/esm/components/EditableTable/cellTypes/datetime/View.st.css.js +2 -2
- package/dist/esm/components/EditableTable/cellTypes/datetime/View.st.css.js.map +1 -1
- package/dist/esm/components/EditableTable/cellTypes/email/Edit.st.css.js +2 -2
- package/dist/esm/components/EditableTable/cellTypes/email/View.st.css.js +2 -2
- package/dist/esm/components/EditableTable/cellTypes/email/View.st.css.js.map +1 -1
- package/dist/esm/components/EditableTable/cellTypes/number/Edit.st.css.js +2 -2
- package/dist/esm/components/EditableTable/cellTypes/number/View.st.css.js +2 -2
- package/dist/esm/components/EditableTable/cellTypes/object/Edit.st.css.js +2 -2
- package/dist/esm/components/EditableTable/cellTypes/object/View.st.css.js +2 -2
- package/dist/esm/components/EditableTable/cellTypes/object/View.st.css.js.map +1 -1
- package/dist/esm/components/EditableTable/cellTypes/select/Edit.st.css.js +2 -2
- package/dist/esm/components/EditableTable/cellTypes/select/Edit.st.css.js.map +1 -1
- package/dist/esm/components/EditableTable/cellTypes/text/Edit.st.css.js +2 -2
- package/dist/esm/components/EditableTable/cellTypes/text/View.st.css.js +2 -2
- package/dist/esm/components/EditableTable/cellTypes/text/View.st.css.js.map +1 -1
- package/dist/esm/components/EditableTable/cellTypes/time/Edit.st.css.js +2 -2
- package/dist/esm/components/EditableTable/cellTypes/url/Edit.st.css.js +2 -2
- package/dist/esm/components/EditableTable/cellTypes/url/Edit.st.css.js.map +1 -1
- package/dist/esm/components/EditableTable/cellTypes/url/View.st.css.js +2 -2
- package/dist/esm/components/EditableTable/useAddRow.js +7 -2
- package/dist/esm/components/EditableTable/useAddRow.js.map +1 -1
- package/dist/esm/components/EditableTable/useEditableTableContextMenu.js +12 -1
- package/dist/esm/components/EditableTable/useEditableTableContextMenu.js.map +1 -1
- package/dist/esm/components/EmptyState/EmptyStateBase.st.css.js +2 -2
- package/dist/esm/components/EntityPage/EntityPagePlain.st.css.js +2 -2
- package/dist/esm/components/Fade/Fade.st.css.js +2 -2
- package/dist/esm/components/FieldActions/HeaderActionsPopover.js +13 -2
- package/dist/esm/components/FieldActions/HeaderActionsPopover.js.map +1 -1
- package/dist/esm/components/Heading/Heading.st.css.js +2 -2
- package/dist/esm/components/ImportButton/ImportButton.js +3 -1
- package/dist/esm/components/ImportButton/ImportButton.js.map +1 -1
- package/dist/esm/components/ImportButton/ImportButton.uni.driver.js +5 -0
- package/dist/esm/components/ImportButton/ImportButton.uni.driver.js.map +1 -1
- package/dist/esm/components/ImportButton/ImportStepUpload.st.css.js +2 -2
- package/dist/esm/components/InputOverflow/InputOverflow.st.css.js +2 -2
- package/dist/esm/components/LayoutSwitch/LayoutSwitch.js +27 -0
- package/dist/esm/components/LayoutSwitch/LayoutSwitch.js.map +1 -1
- package/dist/esm/components/LoadingRow/LoadingRow.st.css.js +3 -3
- package/dist/esm/components/MaxHeightText/MaxHeightText.st.css.js +2 -2
- package/dist/esm/components/MaxHeightText/MaxHeightText.st.css.js.map +1 -1
- package/dist/esm/components/MaxLines/MaxLines.st.css.js +2 -2
- package/dist/esm/components/MaxLines/MaxLines.st.css.js.map +1 -1
- package/dist/esm/components/MoreActions/MoreActionsIcon.js +5 -4
- package/dist/esm/components/MoreActions/MoreActionsIcon.js.map +1 -1
- package/dist/esm/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js +2 -2
- package/dist/esm/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js.map +1 -1
- package/dist/esm/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.js +2 -2
- package/dist/esm/components/NestedTable/NestedTableRow.st.css.js +2 -2
- package/dist/esm/components/NestedTable/NestedTableRow.st.css.js.map +1 -1
- package/dist/esm/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js +2 -2
- package/dist/esm/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js.map +1 -1
- package/dist/esm/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js +2 -2
- package/dist/esm/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js.map +1 -1
- package/dist/esm/components/PageSubTitle/PageSubTitle.js +9 -7
- package/dist/esm/components/PageSubTitle/PageSubTitle.js.map +1 -1
- package/dist/esm/components/PickerContent/PickerContent.st.css.js +2 -2
- package/dist/esm/components/PickerContent/PickerContentAdditionalStep.st.css.js +2 -2
- package/dist/esm/components/PickerTableListItem/PickerTableListItem.st.css.js +2 -2
- package/dist/esm/components/PickerTableListItem/PickerTableListItem.st.css.js.map +1 -1
- package/dist/esm/components/PrimaryActions/PrimaryActions.js +1 -1
- package/dist/esm/components/PrimaryActions/PrimaryActions.js.map +1 -1
- package/dist/esm/components/ResponsiveButton/ResponsiveButton.js +7 -3
- package/dist/esm/components/ResponsiveButton/ResponsiveButton.js.map +1 -1
- package/dist/esm/components/SchemaSource/schemaFieldManagement.js +2 -0
- package/dist/esm/components/SchemaSource/schemaFieldManagement.js.map +1 -1
- package/dist/esm/components/ScrollableContent/ScrollableContent.st.css.js +2 -2
- package/dist/esm/components/SetupWidget/SetupWidget.st.css.js +2 -2
- package/dist/esm/components/SetupWidget/SetupWidget.st.css.js.map +1 -1
- package/dist/esm/components/SkeletonCard/SkeletonCard.st.css.js +2 -2
- package/dist/esm/components/SkeletonCard/SkeletonCard.st.css.js.map +1 -1
- package/dist/esm/components/SlidingModal/SlidingModal.st.css.js +2 -2
- package/dist/esm/components/Table/AddFieldColumnHeader.st.css.js +2 -2
- package/dist/esm/components/Table/AddFieldColumnHeader.st.css.js.map +1 -1
- package/dist/esm/components/TabsFilter/TabsFilter.js +3 -2
- package/dist/esm/components/TabsFilter/TabsFilter.js.map +1 -1
- package/dist/esm/components/TabsFilter/TabsFilter.st.css.js +2 -2
- package/dist/esm/components/TabsFilter/TabsFilter.st.css.js.map +1 -1
- package/dist/esm/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js +2 -2
- package/dist/esm/components/ToolbarCollection/ToolbarCollection.js +2 -2
- package/dist/esm/components/ToolbarCollection/ToolbarCollection.js.map +1 -1
- package/dist/esm/components/ToolbarItem/ToolbarItem.st.css.js +2 -2
- package/dist/esm/components/ToolbarItemBox/ToolbarItemBox.st.css.js +2 -2
- package/dist/esm/components/common.st.css.js +2 -2
- package/dist/esm/hooks/useCollectionPageChild/useCollectionPageChild.js +17 -1
- package/dist/esm/hooks/useCollectionPageChild/useCollectionPageChild.js.map +1 -1
- package/dist/esm/hooks/useLayoutSwitchCollection.js +1 -0
- package/dist/esm/hooks/useLayoutSwitchCollection.js.map +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/schema/syncSourcePermissions.js +1 -0
- package/dist/esm/schema/syncSourcePermissions.js.map +1 -1
- package/dist/esm/schema/useLayoutSwitchCollection.js +2 -1
- package/dist/esm/schema/useLayoutSwitchCollection.js.map +1 -1
- package/dist/esm/state/CollectionPage/CollectionPageActionsBar.js +4 -1
- package/dist/esm/state/CollectionPage/CollectionPageActionsBar.js.map +1 -1
- package/dist/esm/state/CollectionPage/CollectionPageHeader.st.css +11 -5
- package/dist/esm/state/CollectionPage/CollectionPageHeader.st.css.js +3 -3
- package/dist/esm/state/CollectionPage/CollectionPageHeader.st.css.js.map +1 -1
- package/dist/esm/state/CollectionPage/MobilePrimaryActionBar.js +7 -0
- package/dist/esm/state/CollectionPage/MobilePrimaryActionBar.js.map +1 -0
- package/dist/esm/state/CollectionPage/MobilePrimaryActionBar.st.css +6 -0
- package/dist/esm/state/CollectionPage/MobilePrimaryActionBar.st.css.js +15 -0
- package/dist/esm/state/CollectionPage/MobilePrimaryActionBar.st.css.js.map +1 -0
- package/dist/esm/state/CollectionPage/TitleBadges.js +2 -2
- package/dist/esm/state/CollectionPage/TitleBadges.js.map +1 -1
- package/dist/esm/state/CollectionPage/TitleBadges.st.css.js +2 -2
- package/dist/esm/state/CollectionPage/TitleBadges.st.css.js.map +1 -1
- package/dist/esm/state/CollectionPage/useCollectionPageHeader.js +32 -8
- package/dist/esm/state/CollectionPage/useCollectionPageHeader.js.map +1 -1
- package/dist/esm/state/EditableTable/CellInteractionState.js +13 -2
- package/dist/esm/state/EditableTable/CellInteractionState.js.map +1 -1
- package/dist/esm/state/EditableTable/CellValueState.js +7 -1
- package/dist/esm/state/EditableTable/CellValueState.js.map +1 -1
- package/dist/esm/state/EditableTable/ClipboardState.js +33 -6
- package/dist/esm/state/EditableTable/ClipboardState.js.map +1 -1
- package/dist/esm/state/EditableTable/EditableTableState.js +28 -3
- package/dist/esm/state/EditableTable/EditableTableState.js.map +1 -1
- package/dist/esm/state/EditableTable/EditableTableStateBIReporter.js +19 -3
- package/dist/esm/state/EditableTable/EditableTableStateBIReporter.js.map +1 -1
- package/dist/esm/state/FormPage/FormPageHeader.st.css.js +2 -2
- package/dist/esm/state/FormPage/FormPageHeader.st.css.js.map +1 -1
- package/dist/esm/state/LayoutSwitchState.js +1 -0
- package/dist/esm/state/LayoutSwitchState.js.map +1 -1
- package/dist/esm/state/ToolbarCollectionState.js +6 -3
- package/dist/esm/state/ToolbarCollectionState.js.map +1 -1
- package/dist/esm/state/ViewTypeState.js +9 -2
- package/dist/esm/state/ViewTypeState.js.map +1 -1
- package/dist/esm/styles.global.css +2 -2
- package/dist/esm/version.js +1 -1
- package/dist/examples/ImportButton/cms-import.tsx +0 -6
- package/dist/examples/ImportButton/create-new-field.tsx +0 -6
- package/dist/examples/ImportButton/update-or-skip-by-id.tsx +0 -6
- package/dist/examples/useSchemaSource/cms-collection.tsx +0 -6
- package/dist/examples/useSchemaSource/extra-columns-and-data.tsx +0 -6
- package/dist/templates/cms-collection-entity/ItemEntityPage.tsx +47 -0
- package/dist/templates/cms-collection-entity/ItemsApp.tsx +28 -0
- package/dist/templates/cms-collection-entity/ItemsCollectionPage.tsx +56 -0
- package/dist/templates/cms-collection-entity/collection.ts +9 -0
- package/dist/templates/cms-collection-entity/page.tsx +32 -0
- package/dist/templates/collection-detail/ItemDetailPage.tsx +44 -0
- package/dist/templates/collection-detail/ItemsApp.tsx +26 -0
- package/dist/templates/collection-detail/ItemsCollectionPage.tsx +111 -0
- package/dist/templates/collection-detail/items-api.ts +66 -0
- package/dist/templates/collection-detail/page.tsx +32 -0
- package/dist/templates/collection-entity/ItemEntityPage.tsx +73 -0
- package/dist/templates/collection-entity/ItemsApp.tsx +30 -0
- package/dist/templates/collection-entity/ItemsCollectionPage.tsx +120 -0
- package/dist/templates/collection-entity/items-api.ts +66 -0
- package/dist/templates/collection-entity/page.tsx +32 -0
- package/dist/templates/settings-page/SettingsPageView.tsx +78 -0
- package/dist/templates/settings-page/page.tsx +18 -0
- package/dist/templates/settings-page/settings-api.ts +17 -0
- package/dist/types/components/CardContainer/CardContainer.st.css.d.ts.map +1 -1
- package/dist/types/components/CmsFieldManagement/CmsFieldModal.st.css.d.ts.map +1 -1
- package/dist/types/components/CollectionPageHeaderNew/CollectionPageHeader.d.ts +5 -5
- package/dist/types/components/CollectionPageNew/CollectionPage.st.css.d.ts.map +1 -1
- package/dist/types/components/CollectionTable/CollectionTable.uni.driver.d.ts +2 -0
- package/dist/types/components/CollectionTable/CollectionTable.uni.driver.d.ts.map +1 -1
- package/dist/types/components/CollectionToolbar/ToolbarOverflowMenu.d.ts +3 -1
- package/dist/types/components/CollectionToolbar/ToolbarOverflowMenu.d.ts.map +1 -1
- package/dist/types/components/CollectionToolbar/useToolbarOverflowItems.d.ts.map +1 -1
- package/dist/types/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.d.ts.map +1 -1
- package/dist/types/components/CustomFieldModal/CustomFieldForm.d.ts.map +1 -1
- package/dist/types/components/CustomFieldModal/CustomFieldFormPiiFields.d.ts.map +1 -1
- package/dist/types/components/CustomFieldModal/CustomFieldFormPiiFields.st.css.d.ts +19 -0
- package/dist/types/components/CustomFieldModal/CustomFieldFormPiiFields.st.css.d.ts.map +1 -0
- package/dist/types/components/CustomFieldModal/CustomFieldTypeDropdown.d.ts.map +1 -1
- package/dist/types/components/EditableTable/AddItemRow.d.ts +3 -2
- package/dist/types/components/EditableTable/AddItemRow.d.ts.map +1 -1
- package/dist/types/components/EditableTable/EditableCell.d.ts.map +1 -1
- package/dist/types/components/EditableTable/EditableTable.d.ts.map +1 -1
- package/dist/types/components/EditableTable/EditableTable.uni.driver.d.ts +3 -0
- package/dist/types/components/EditableTable/EditableTable.uni.driver.d.ts.map +1 -1
- package/dist/types/components/EditableTable/EditableTableContextMenu.d.ts.map +1 -1
- package/dist/types/components/EditableTable/HeaderActionsPopover.st.css.d.ts.map +1 -1
- package/dist/types/components/EditableTable/HeaderFieldActions.d.ts.map +1 -1
- package/dist/types/components/EditableTable/cellTypes/CellViewLayout.st.css.d.ts.map +1 -1
- package/dist/types/components/EditableTable/cellTypes/address/Edit.st.css.d.ts.map +1 -1
- package/dist/types/components/EditableTable/cellTypes/boolean/View.st.css.d.ts.map +1 -1
- package/dist/types/components/EditableTable/cellTypes/datetime/View.st.css.d.ts.map +1 -1
- package/dist/types/components/EditableTable/cellTypes/email/View.st.css.d.ts.map +1 -1
- package/dist/types/components/EditableTable/cellTypes/object/View.st.css.d.ts.map +1 -1
- package/dist/types/components/EditableTable/cellTypes/select/Edit.st.css.d.ts.map +1 -1
- package/dist/types/components/EditableTable/cellTypes/text/View.st.css.d.ts.map +1 -1
- package/dist/types/components/EditableTable/cellTypes/url/Edit.st.css.d.ts.map +1 -1
- package/dist/types/components/EditableTable/useAddRow.d.ts +1 -0
- package/dist/types/components/EditableTable/useAddRow.d.ts.map +1 -1
- package/dist/types/components/EditableTable/useEditableTableContextMenu.d.ts +1 -1
- package/dist/types/components/EditableTable/useEditableTableContextMenu.d.ts.map +1 -1
- package/dist/types/components/FieldActions/HeaderActionsPopover.d.ts +2 -1
- package/dist/types/components/FieldActions/HeaderActionsPopover.d.ts.map +1 -1
- package/dist/types/components/Grid/Grid.d.ts +1 -1
- package/dist/types/components/ImportButton/ImportButton.d.ts.map +1 -1
- package/dist/types/components/ImportButton/ImportButton.uni.driver.d.ts +2 -0
- package/dist/types/components/ImportButton/ImportButton.uni.driver.d.ts.map +1 -1
- package/dist/types/components/ImportButton/ImportProps.d.ts +2 -0
- package/dist/types/components/ImportButton/ImportProps.d.ts.map +1 -1
- package/dist/types/components/LayoutSwitch/LayoutSwitch.d.ts.map +1 -1
- package/dist/types/components/MaxHeightText/MaxHeightText.st.css.d.ts.map +1 -1
- package/dist/types/components/MaxLines/MaxLines.st.css.d.ts.map +1 -1
- package/dist/types/components/MoreActions/MoreActionsIcon.d.ts.map +1 -1
- package/dist/types/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.d.ts.map +1 -1
- package/dist/types/components/NestedTable/NestedTable.uni.driver.d.ts +2 -0
- package/dist/types/components/NestedTable/NestedTable.uni.driver.d.ts.map +1 -1
- package/dist/types/components/NestedTable/NestedTableRow.st.css.d.ts.map +1 -1
- package/dist/types/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.d.ts.map +1 -1
- package/dist/types/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.d.ts.map +1 -1
- package/dist/types/components/PageSubTitle/PageSubTitle.d.ts.map +1 -1
- package/dist/types/components/PickerTableListItem/PickerTableListItem.st.css.d.ts.map +1 -1
- package/dist/types/components/PrimaryActions/PrimaryActions.d.ts.map +1 -1
- package/dist/types/components/ResponsiveButton/ResponsiveButton.d.ts +6 -4
- package/dist/types/components/ResponsiveButton/ResponsiveButton.d.ts.map +1 -1
- package/dist/types/components/SchemaSource/schemaFieldManagement.d.ts.map +1 -1
- package/dist/types/components/SetupWidget/SetupWidget.st.css.d.ts.map +1 -1
- package/dist/types/components/SkeletonCard/SkeletonCard.st.css.d.ts.map +1 -1
- package/dist/types/components/Table/AddFieldColumnHeader.st.css.d.ts.map +1 -1
- package/dist/types/components/Table/Table.uni.driver.d.ts +2 -0
- package/dist/types/components/Table/Table.uni.driver.d.ts.map +1 -1
- package/dist/types/components/TableFolders/TableFolders.uni.driver.d.ts +2 -0
- package/dist/types/components/TableFolders/TableFolders.uni.driver.d.ts.map +1 -1
- package/dist/types/components/TableGridSwitch/TableGridSwitch.uni.driver.d.ts +2 -0
- package/dist/types/components/TableGridSwitch/TableGridSwitch.uni.driver.d.ts.map +1 -1
- package/dist/types/components/TabsFilter/TabsFilter.d.ts.map +1 -1
- package/dist/types/components/TabsFilter/TabsFilter.st.css.d.ts.map +1 -1
- package/dist/types/components/ToolbarCollection/ToolbarCollection.d.ts +6 -6
- package/dist/types/components/ToolbarCollection/ToolbarCollection.d.ts.map +1 -1
- package/dist/types/hooks/useCollectionPageChild/useCollectionPageChild.d.ts.map +1 -1
- package/dist/types/hooks/useLayoutSwitchCollection.d.ts +6 -0
- package/dist/types/hooks/useLayoutSwitchCollection.d.ts.map +1 -1
- package/dist/types/hooks/usePickerModal/UsePickerModalParamsBase.d.ts +1 -1
- package/dist/types/index.d.ts +1 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/schema/syncSourcePermissions.d.ts.map +1 -1
- package/dist/types/schema/useLayoutSwitchCollection.d.ts +6 -0
- package/dist/types/schema/useLayoutSwitchCollection.d.ts.map +1 -1
- package/dist/types/state/CollectionPage/CollectionPageActionsBar.d.ts.map +1 -1
- package/dist/types/state/CollectionPage/CollectionPageHeader.st.css.d.ts +4 -1
- package/dist/types/state/CollectionPage/CollectionPageHeader.st.css.d.ts.map +1 -1
- package/dist/types/state/CollectionPage/MobilePrimaryActionBar.d.ts +5 -0
- package/dist/types/state/CollectionPage/MobilePrimaryActionBar.d.ts.map +1 -0
- package/dist/types/state/CollectionPage/MobilePrimaryActionBar.st.css.d.ts +16 -0
- package/dist/types/state/CollectionPage/MobilePrimaryActionBar.st.css.d.ts.map +1 -0
- package/dist/types/state/CollectionPage/TitleBadges.d.ts +3 -1
- package/dist/types/state/CollectionPage/TitleBadges.d.ts.map +1 -1
- package/dist/types/state/CollectionPage/TitleBadges.st.css.d.ts.map +1 -1
- package/dist/types/state/CollectionPage/useCollectionPageHeader.d.ts.map +1 -1
- package/dist/types/state/EditableTable/CellInteractionState.d.ts.map +1 -1
- package/dist/types/state/EditableTable/CellValueState.d.ts +3 -2
- package/dist/types/state/EditableTable/CellValueState.d.ts.map +1 -1
- package/dist/types/state/EditableTable/ClipboardState.d.ts +5 -3
- package/dist/types/state/EditableTable/ClipboardState.d.ts.map +1 -1
- package/dist/types/state/EditableTable/EditableTableState.d.ts +11 -4
- package/dist/types/state/EditableTable/EditableTableState.d.ts.map +1 -1
- package/dist/types/state/EditableTable/EditableTableStateBIReporter.d.ts +9 -2
- package/dist/types/state/EditableTable/EditableTableStateBIReporter.d.ts.map +1 -1
- package/dist/types/state/EditableTable/index.d.ts +1 -1
- package/dist/types/state/EditableTable/index.d.ts.map +1 -1
- package/dist/types/state/FormPage/FormPageHeader.st.css.d.ts.map +1 -1
- package/dist/types/state/LayoutSwitchState.d.ts +3 -0
- package/dist/types/state/LayoutSwitchState.d.ts.map +1 -1
- package/dist/types/state/TableState.d.ts +1 -1
- package/dist/types/state/ToolbarCollectionState.d.ts +3 -1
- package/dist/types/state/ToolbarCollectionState.d.ts.map +1 -1
- package/dist/types/state/ViewTypeState.d.ts +2 -0
- package/dist/types/state/ViewTypeState.d.ts.map +1 -1
- package/dist/types/testkit/enzyme.d.ts +8 -0
- package/dist/types/testkit/enzyme.d.ts.map +1 -1
- package/dist/types/testkit/jsdom.d.ts +11 -0
- package/dist/types/testkit/jsdom.d.ts.map +1 -1
- package/dist/types/testkit/playwright.d.ts +11 -0
- package/dist/types/testkit/playwright.d.ts.map +1 -1
- package/dist/types/testkit/puppeteer.d.ts +11 -0
- package/dist/types/testkit/puppeteer.d.ts.map +1 -1
- package/dist/types/version.d.ts +1 -1
- package/package.json +11 -8
- package/src/components/CardContainer/CardContainer.st.css.ts +2 -2
- package/src/components/CmsFieldManagement/CmsFieldForm.st.css.ts +2 -2
- package/src/components/CmsFieldManagement/CmsFieldModal.st.css.ts +2 -2
- package/src/components/CmsFieldManagement/Sections/ValidationAndDefaultsSection.st.css.ts +2 -2
- package/src/components/Collapse/Collapse.st.css.ts +2 -2
- package/src/components/CollectionPageHeaderNew/CollectionPageHeader.tsx +5 -5
- package/src/components/CollectionPageNew/CollectionPage.st.css +9 -3
- package/src/components/CollectionPageNew/CollectionPage.st.css.ts +2 -2
- package/src/components/CollectionSectionHeader/CollectionSectionHeader.st.css.ts +2 -2
- package/src/components/CollectionTable/CollectionTable.st.css.ts +2 -2
- package/src/components/CollectionTable/CollectionTableWSRTable.st.css.ts +2 -2
- package/src/components/CollectionToolbar/CollectionToolbar.st.css.ts +2 -2
- package/src/components/CollectionToolbar/SearchOrCustomFilter.st.css.ts +2 -2
- package/src/components/CollectionToolbar/ToolbarOverflowMenu.tsx +47 -16
- package/src/components/CollectionToolbar/useToolbarOverflowItems.ts +7 -0
- package/src/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.ts +2 -2
- package/src/components/CollectionViewsDropdown/ViewsDropdown.st.css.ts +2 -2
- package/src/components/CustomFieldModal/CustomFieldForm.tsx +18 -13
- package/src/components/CustomFieldModal/CustomFieldFormPiiFields.st.css +15 -0
- package/src/components/CustomFieldModal/CustomFieldFormPiiFields.st.css.ts +25 -0
- package/src/components/CustomFieldModal/CustomFieldFormPiiFields.tsx +26 -14
- package/src/components/CustomFieldModal/CustomFieldTypeDropdown.tsx +15 -5
- package/src/components/DragHandle/DragHandle.st.css.ts +2 -2
- package/src/components/EditableTable/AddItemRow.tsx +5 -2
- package/src/components/EditableTable/EditableCell.st.css.ts +2 -2
- package/src/components/EditableTable/EditableCell.tsx +7 -1
- package/src/components/EditableTable/EditableTable.tsx +24 -4
- package/src/components/EditableTable/EditableTable.uni.driver.ts +4 -0
- package/src/components/EditableTable/EditableTableContextMenu.tsx +20 -8
- package/src/components/EditableTable/HeaderActionsPopover.st.css.ts +2 -2
- package/src/components/EditableTable/HeaderFieldActions.tsx +13 -1
- package/src/components/EditableTable/cellTypes/CellViewLayout.st.css.ts +2 -2
- package/src/components/EditableTable/cellTypes/address/Edit.st.css.ts +2 -2
- package/src/components/EditableTable/cellTypes/array/Edit.st.css.ts +2 -2
- package/src/components/EditableTable/cellTypes/boolean/Edit.st.css.ts +2 -2
- package/src/components/EditableTable/cellTypes/boolean/View.st.css.ts +2 -2
- package/src/components/EditableTable/cellTypes/color/Edit.st.css.ts +2 -2
- package/src/components/EditableTable/cellTypes/date/Edit.st.css.ts +2 -2
- package/src/components/EditableTable/cellTypes/date/View.st.css.ts +2 -2
- package/src/components/EditableTable/cellTypes/datetime/Edit.st.css.ts +2 -2
- package/src/components/EditableTable/cellTypes/datetime/View.st.css.ts +2 -2
- package/src/components/EditableTable/cellTypes/email/Edit.st.css.ts +2 -2
- package/src/components/EditableTable/cellTypes/email/View.st.css.ts +2 -2
- package/src/components/EditableTable/cellTypes/number/Edit.st.css.ts +2 -2
- package/src/components/EditableTable/cellTypes/number/View.st.css.ts +2 -2
- package/src/components/EditableTable/cellTypes/object/Edit.st.css.ts +2 -2
- package/src/components/EditableTable/cellTypes/object/View.st.css.ts +2 -2
- package/src/components/EditableTable/cellTypes/select/Edit.st.css.ts +2 -2
- package/src/components/EditableTable/cellTypes/text/Edit.st.css.ts +2 -2
- package/src/components/EditableTable/cellTypes/text/View.st.css.ts +2 -2
- package/src/components/EditableTable/cellTypes/time/Edit.st.css.ts +2 -2
- package/src/components/EditableTable/cellTypes/url/Edit.st.css.ts +2 -2
- package/src/components/EditableTable/cellTypes/url/View.st.css.ts +2 -2
- package/src/components/EditableTable/useAddRow.ts +8 -2
- package/src/components/EditableTable/useEditableTableContextMenu.ts +13 -0
- package/src/components/EmptyState/EmptyStateBase.st.css.ts +2 -2
- package/src/components/EntityPage/EntityPagePlain.st.css.ts +2 -2
- package/src/components/Fade/Fade.st.css.ts +2 -2
- package/src/components/FieldActions/HeaderActionsPopover.tsx +15 -1
- package/src/components/Grid/Grid.tsx +1 -1
- package/src/components/Heading/Heading.st.css.ts +2 -2
- package/src/components/ImportButton/ImportButton.tsx +19 -9
- package/src/components/ImportButton/ImportButton.uni.driver.ts +6 -0
- package/src/components/ImportButton/ImportProps.tsx +2 -0
- package/src/components/ImportButton/ImportStepUpload.st.css.ts +2 -2
- package/src/components/InputOverflow/InputOverflow.st.css.ts +2 -2
- package/src/components/LayoutSwitch/LayoutSwitch.tsx +43 -0
- package/src/components/LoadingRow/LoadingRow.st.css.ts +3 -3
- package/src/components/MaxHeightText/MaxHeightText.st.css.ts +2 -2
- package/src/components/MaxLines/MaxLines.st.css.ts +2 -2
- package/src/components/MoreActions/MoreActionsIcon.tsx +27 -13
- package/src/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.ts +2 -2
- package/src/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.ts +2 -2
- package/src/components/NestedTable/NestedTableRow.st.css.ts +2 -2
- package/src/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.ts +2 -2
- package/src/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.ts +2 -2
- package/src/components/PageSubTitle/PageSubTitle.tsx +24 -20
- package/src/components/PickerContent/PickerContent.st.css.ts +2 -2
- package/src/components/PickerContent/PickerContentAdditionalStep.st.css.ts +2 -2
- package/src/components/PickerTableListItem/PickerTableListItem.st.css.ts +2 -2
- package/src/components/PrimaryActions/PrimaryActions.tsx +0 -1
- package/src/components/ResponsiveButton/ResponsiveButton.tsx +26 -14
- package/src/components/SchemaSource/schemaFieldManagement.ts +2 -0
- package/src/components/ScrollableContent/ScrollableContent.st.css.ts +2 -2
- package/src/components/SetupWidget/SetupWidget.st.css.ts +2 -2
- package/src/components/SkeletonCard/SkeletonCard.st.css.ts +2 -2
- package/src/components/SlidingModal/SlidingModal.st.css.ts +2 -2
- package/src/components/Table/AddFieldColumnHeader.st.css.ts +2 -2
- package/src/components/TabsFilter/TabsFilter.st.css.ts +2 -2
- package/src/components/TabsFilter/TabsFilter.tsx +3 -2
- package/src/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.ts +2 -2
- package/src/components/ToolbarCollection/ToolbarCollection.tsx +8 -6
- package/src/components/ToolbarItem/ToolbarItem.st.css.ts +2 -2
- package/src/components/ToolbarItemBox/ToolbarItemBox.st.css.ts +2 -2
- package/src/components/common.st.css.ts +2 -2
- package/src/hooks/useCollectionPageChild/useCollectionPageChild.tsx +26 -1
- package/src/hooks/useLayoutSwitchCollection.ts +7 -0
- package/src/hooks/usePickerModal/UsePickerModalParamsBase.ts +1 -1
- package/src/index.ts +1 -0
- package/src/schema/syncSourcePermissions.ts +1 -0
- package/src/schema/useLayoutSwitchCollection.ts +24 -11
- package/src/state/CollectionPage/CollectionPageActionsBar.tsx +7 -1
- package/src/state/CollectionPage/CollectionPageHeader.st.css +11 -5
- package/src/state/CollectionPage/CollectionPageHeader.st.css.ts +3 -3
- package/src/state/CollectionPage/MobilePrimaryActionBar.st.css +6 -0
- package/src/state/CollectionPage/MobilePrimaryActionBar.st.css.ts +25 -0
- package/src/state/CollectionPage/MobilePrimaryActionBar.tsx +15 -0
- package/src/state/CollectionPage/TitleBadges.st.css.ts +2 -2
- package/src/state/CollectionPage/TitleBadges.tsx +4 -2
- package/src/state/CollectionPage/useCollectionPageHeader.tsx +43 -10
- package/src/state/EditableTable/CellInteractionState.ts +19 -2
- package/src/state/EditableTable/CellValueState.ts +12 -2
- package/src/state/EditableTable/ClipboardState.ts +42 -7
- package/src/state/EditableTable/EditableTableState.ts +47 -5
- package/src/state/EditableTable/EditableTableStateBIReporter.ts +23 -3
- package/src/state/EditableTable/index.ts +1 -0
- package/src/state/FormPage/FormPageHeader.st.css.ts +2 -2
- package/src/state/LayoutSwitchState.ts +4 -0
- package/src/state/TableState.ts +1 -1
- package/src/state/ToolbarCollectionState.ts +12 -3
- package/src/state/ViewTypeState.ts +12 -2
- package/src/styles.global.css +2 -2
- package/src/version.ts +1 -1
|
@@ -45,6 +45,7 @@ class EditableTableState {
|
|
|
45
45
|
(0, _defineProperty2.default)(this, "bi", void 0);
|
|
46
46
|
(0, _defineProperty2.default)(this, "deleteConfirmModal", new _bexCore.ConditionalModalState());
|
|
47
47
|
(0, _defineProperty2.default)(this, "addItemDisabled", false);
|
|
48
|
+
(0, _defineProperty2.default)(this, "isCreateItemDisabled", undefined);
|
|
48
49
|
(0, _defineProperty2.default)(this, "updateItemDisabled", false);
|
|
49
50
|
(0, _defineProperty2.default)(this, "removeItemDisabled", false);
|
|
50
51
|
(0, _defineProperty2.default)(this, "multiDeleteDisabled", false);
|
|
@@ -89,6 +90,7 @@ class EditableTableState {
|
|
|
89
90
|
this.mutation = new _MutationState.MutationState(this, params.mutations, params.createOptimisticActions);
|
|
90
91
|
(0, _mobx.makeObservable)(this, {
|
|
91
92
|
addItemDisabled: _mobx.observable,
|
|
93
|
+
isCreateItemDisabled: _mobx.observable.ref,
|
|
92
94
|
updateItemDisabled: _mobx.observable,
|
|
93
95
|
removeItemDisabled: _mobx.observable,
|
|
94
96
|
multiDeleteDisabled: _mobx.observable,
|
|
@@ -106,6 +108,7 @@ class EditableTableState {
|
|
|
106
108
|
}
|
|
107
109
|
setPermissions(permissions) {
|
|
108
110
|
this.addItemDisabled = permissions.addItemDisabled ?? false;
|
|
111
|
+
this.isCreateItemDisabled = permissions.isCreateItemDisabled;
|
|
109
112
|
this.updateItemDisabled = permissions.updateItemDisabled ?? false;
|
|
110
113
|
this.removeItemDisabled = permissions.removeItemDisabled ?? false;
|
|
111
114
|
this.multiDeleteDisabled = permissions.multiDeleteDisabled ?? this.removeItemDisabled;
|
|
@@ -129,6 +132,18 @@ class EditableTableState {
|
|
|
129
132
|
const result = keyed ? this.isRemoveItemDisabled(keyed.item) : undefined;
|
|
130
133
|
return result != null && result.disabled ? result.reason : undefined;
|
|
131
134
|
}
|
|
135
|
+
isAddItemDisabled() {
|
|
136
|
+
var _this$isCreateItemDis;
|
|
137
|
+
return this.addItemDisabled || !!((_this$isCreateItemDis = this.isCreateItemDisabled) != null && _this$isCreateItemDis.call(this).disabled);
|
|
138
|
+
}
|
|
139
|
+
addItemDisabledReason() {
|
|
140
|
+
var _this$isCreateItemDis2;
|
|
141
|
+
if (this.addItemDisabled) {
|
|
142
|
+
return undefined;
|
|
143
|
+
}
|
|
144
|
+
const result = (_this$isCreateItemDis2 = this.isCreateItemDisabled) == null ? void 0 : _this$isCreateItemDis2.call(this);
|
|
145
|
+
return result != null && result.disabled ? result.reason : undefined;
|
|
146
|
+
}
|
|
132
147
|
isMultiDeleteDisabled(rowKeys) {
|
|
133
148
|
if (this.multiDeleteDisabled) {
|
|
134
149
|
return true;
|
|
@@ -262,8 +277,16 @@ class EditableTableState {
|
|
|
262
277
|
isColumnEditable(rowKey, columnId) {
|
|
263
278
|
return this.cellValue.isColumnEditable(rowKey, columnId);
|
|
264
279
|
}
|
|
265
|
-
clearCells(cells) {
|
|
266
|
-
this.cellValue.clearCells(cells);
|
|
280
|
+
clearCells(cells, origin = 'Keyboard') {
|
|
281
|
+
const cleared = this.cellValue.clearCells(cells);
|
|
282
|
+
if (cleared.length === 0) {
|
|
283
|
+
return;
|
|
284
|
+
}
|
|
285
|
+
this.bi.clipboardAction({
|
|
286
|
+
actionName: 'clear',
|
|
287
|
+
origin,
|
|
288
|
+
...(0, _EditableTableStateBIReporter.clipboardCellCounts)(cleared)
|
|
289
|
+
});
|
|
267
290
|
}
|
|
268
291
|
handleCellClick(rowKey, columnId, shiftKey) {
|
|
269
292
|
if (this.cellInteraction.isEditing) {
|
|
@@ -330,6 +353,10 @@ class EditableTableState {
|
|
|
330
353
|
if (resolved != null && resolved.toggleValue || resolved != null && resolved.showEditWhenFocused) {
|
|
331
354
|
return;
|
|
332
355
|
}
|
|
356
|
+
// A second double-click in an editor that is already open is not a new edit.
|
|
357
|
+
if (this.cellInteraction.isCellEditing(rowKey, columnId)) {
|
|
358
|
+
return;
|
|
359
|
+
}
|
|
333
360
|
if (this.isCellEditable(rowKey, columnId)) {
|
|
334
361
|
this.cellInteraction.startEdit(rowKey, columnId, 'doubleClick');
|
|
335
362
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_mobx","require","_bexCore","_ToolbarCollectionState","_TableState","_CellInteractionState","_CellValueState","_ClipboardState","_MutationState","_EditableTableStateBIReporter","_buildEditableFieldColumns","TableStateWithDraftRows","TableState","constructor","params","mergeDraftRows","_defineProperty2","default","_mergeDraftRows","keyedItems","collection","result","showEmptyState","toolbar","multi","length","EditableTableState","_params$extraCellType","ConditionalModalState","undefined","items","tableState","onAddItemActionComplete","origin","toolbarBIReporter","onAddItemClick","columnId","forceDirection","multiple","sort","id","clearResult","ToolbarCollectionState","container","componentType","mutation","bi","EditableTableStateBIReporter","cellValue","CellValueState","Map","extraCellTypes","map","ct","type","cellInteraction","CellInteractionState","editingValue","cell","commitHandler","clipboard","ClipboardState","MutationState","mutations","createOptimisticActions","makeObservable","addItemDisabled","observable","updateItemDisabled","removeItemDisabled","multiDeleteDisabled","isRemoveItemDisabled","ref","setPermissions","action","_providedColumns","editableColumns","computed","sourceColumns","allColumns","_columnMap","init","confirmDeleteItems","permissions","isRowDeleteDisabled","rowKey","keyed","_getKeyedItem","item","disabled","rowDeleteDisabledReason","reason","isMultiDeleteDisabled","rowKeys","some","key","visibleColumns","itemsToRenderCount","source","collectionFieldsSource","initTask","status","isSuccess","buildEditableFieldColumns","fieldsSource","translate","editableCellFor","c","getKeyedItem","find","ki","_toIndices","pos","row","findIndex","col","_toPosition","visibleIds","filter","columns","disposeMutation","onBeforeUnload","onBeforeUnloadSubscription","event","_pendingCells","size","preventDefault","flushDrafts","remove","addItem","afterItemKey","duplicateItem","deleteItems","deletableRowKeys","t","deleteConfirmModal","open","theme","title","content","primaryButtonText","secondaryButtonText","primaryButtonOnClick","resolveCellTypeByColumnId","getCellDisplayValue","getCellValidation","committed","valid","isCellEditing","validateEditingValue","isCellEditable","isColumnEditable","clearCells","cells","handleCellClick","shiftKey","isEditing","commitEdit","get","res","editOnClick","val","focusCell","startEdit","column","resolved","toggleValue","showEditWhenFocused","value","selectionAnchor","selectRange","handleCellDoubleClick","exports"],"sources":["../../../../src/state/EditableTable/EditableTableState.ts"],"sourcesContent":["import { action, computed, makeObservable, observable } from 'mobx';\nimport {\n CollectionOptimisticActions,\n CollectionState,\n ConditionalModalState,\n FiltersMap,\n SortOrder,\n WixPatternsContainer,\n} from '@wix/bex-core';\nimport type { MessageModalLayoutProps } from '@wix/design-system';\nimport type { KeyedItem, RemoveItemDisabledResult } from '@wix/bex-core';\nimport { ToolbarCollectionState } from '../ToolbarCollectionState';\nimport { TableState } from '../TableState';\nimport type { TableStateParams } from '../TableState';\nimport { ICollectionComponentState } from '../ICollectionComponentState';\nimport { CellInteractionState } from './CellInteractionState';\nimport { CellValueState } from './CellValueState';\nimport { ClipboardState } from './ClipboardState';\nimport { MutationState } from './MutationState';\nimport type { EditableTableMutationHandlers } from './MutationState';\nimport { EditableTableStateBIReporter } from './EditableTableStateBIReporter';\nimport type { Cell, CellType, EditableColumn, ValidationResult } from './types';\nimport { buildEditableFieldColumns } from '../buildEditableFieldColumns';\n\nexport type { RemoveItemDisabledResult } from '@wix/bex-core';\n\nexport interface EditableTablePermissions<T = unknown> {\n addItemDisabled?: boolean;\n updateItemDisabled?: boolean;\n removeItemDisabled?: boolean;\n /** Deleting several rows in one operation. Absent = follows `removeItemDisabled`. */\n multiDeleteDisabled?: boolean;\n /** Per-item refinement of `removeItemDisabled`: disables deleting an item\n * even though deleting is generally allowed, optionally with a reason.\n * Must be pure and synchronous. Absent = all items deletable. */\n isRemoveItemDisabled?: (item: T) => RemoveItemDisabledResult;\n}\n\nexport interface EditableTableStateParams<T, F extends FiltersMap> {\n readonly collection: CollectionState<T, F>;\n readonly container: WixPatternsContainer;\n readonly toolbar?: ToolbarCollectionState<T, F>;\n readonly permissions?: EditableTablePermissions<T>;\n readonly mutations: EditableTableMutationHandlers<T>;\n readonly createOptimisticActions: (\n collection: CollectionState<T, F>,\n ) => CollectionOptimisticActions<T, F>;\n /**\n * Additional cell types to register alongside the built-in ones.\n * Augment `CellTypeConfigMap` to use these types on `EditableColumn.cellType`.\n */\n readonly extraCellTypes?: CellType[];\n}\n\nexport interface EditableTableStatePublicAPI<T, F extends FiltersMap> {\n /** Underlying CollectionState instance */\n readonly collection: CollectionState<T, F>;\n /** Underlying ToolbarCollectionState instance */\n readonly toolbar: ToolbarCollectionState<T, F>;\n /** Reset active filters & sorting and adds new items to the collection */\n onAddItemActionComplete(items: T[]): void;\n /** Sort by column */\n sort: (\n columnId: string,\n params?: { forceDirection?: SortOrder; multiple?: boolean },\n ) => void;\n /** Replace all permission flags and the per-item delete predicate */\n setPermissions(permissions: EditableTablePermissions<T>): void;\n /** Whether deleting the given row is disabled (user-level or per-item) */\n isRowDeleteDisabled(rowKey: string): boolean;\n /** The reason the given row cannot be deleted, when the per-item predicate\n * returned one. `undefined` when the row is deletable or no reason was given. */\n rowDeleteDisabledReason(rowKey: string): string | undefined;\n /** Whether deleting the given rows in one operation is disabled */\n isMultiDeleteDisabled(rowKeys: string[]): boolean;\n}\n\n/**\n * Draft rows (added locally, not yet created on the server) are not part of\n * the collection result. This TableState merges them into the rendered list,\n * so everything that renders rows — the WDS table and the virtualizer — sees\n * them, and a table whose only rows are drafts does not show the empty state.\n */\nclass TableStateWithDraftRows<T, F extends FiltersMap> extends TableState<\n T,\n F\n> {\n private readonly _mergeDraftRows: (items: KeyedItem<T>[]) => KeyedItem<T>[];\n\n constructor(\n params: TableStateParams<T, F>,\n mergeDraftRows: (items: KeyedItem<T>[]) => KeyedItem<T>[],\n ) {\n super(params);\n this._mergeDraftRows = mergeDraftRows;\n }\n\n get keyedItems() {\n return this._mergeDraftRows(this.collection.result.keyedItems);\n }\n\n get showEmptyState() {\n return this.toolbar.multi.showEmptyState && this.keyedItems.length === 0;\n }\n}\n\nexport class EditableTableState<T, F extends FiltersMap>\n implements ICollectionComponentState, EditableTableStatePublicAPI<T, F>\n{\n readonly toolbar: ToolbarCollectionState<T, F>;\n readonly tableState: TableState<T, F>;\n\n readonly cellInteraction: CellInteractionState<T, F>;\n readonly cellValue: CellValueState<T, F>;\n readonly clipboard: ClipboardState<T, F>;\n readonly mutation: MutationState<T, F>;\n readonly bi: EditableTableStateBIReporter<T, F>;\n readonly deleteConfirmModal = new ConditionalModalState<\n Partial<MessageModalLayoutProps>\n >();\n\n addItemDisabled = false;\n updateItemDisabled = false;\n removeItemDisabled = false;\n multiDeleteDisabled = false;\n // Needs an explicit initializer: a declaration-only field is erased at\n // compile time, and makeObservable throws on a property that doesn't exist.\n isRemoveItemDisabled?: (item: T) => RemoveItemDisabledResult = undefined;\n\n _providedColumns: EditableColumn<T>[] = [];\n\n constructor(params: EditableTableStateParams<T, F>) {\n this.toolbar =\n params.toolbar ??\n new ToolbarCollectionState({\n collection: params.collection,\n container: params.container,\n componentType: 'EditableTable',\n });\n\n this.tableState = new TableStateWithDraftRows(\n {\n collection: params.collection,\n container: params.container,\n toolbar: this.toolbar,\n },\n (keyedItems) => this.mutation._mergeDraftRows(keyedItems),\n );\n\n this.bi = new EditableTableStateBIReporter<T, F>(this);\n\n this.cellValue = new CellValueState<T, F>(\n this,\n new Map(params.extraCellTypes?.map((ct) => [ct.type, ct])),\n );\n\n this.cellInteraction = new CellInteractionState<T, F>(\n (editingValue, cell) => {\n this.cellValue.commitHandler(editingValue, cell);\n },\n this,\n );\n this.clipboard = new ClipboardState<T, F>(this);\n this.mutation = new MutationState<T, F>(\n this,\n params.mutations,\n params.createOptimisticActions,\n );\n makeObservable(this, {\n addItemDisabled: observable,\n updateItemDisabled: observable,\n removeItemDisabled: observable,\n multiDeleteDisabled: observable,\n isRemoveItemDisabled: observable.ref,\n setPermissions: action,\n _providedColumns: observable.ref,\n editableColumns: computed,\n sourceColumns: computed,\n allColumns: computed,\n _columnMap: computed,\n init: action,\n confirmDeleteItems: action,\n });\n\n this.setPermissions(params.permissions ?? {});\n }\n\n setPermissions(permissions: EditableTablePermissions<T>) {\n this.addItemDisabled = permissions.addItemDisabled ?? false;\n this.updateItemDisabled = permissions.updateItemDisabled ?? false;\n this.removeItemDisabled = permissions.removeItemDisabled ?? false;\n this.multiDeleteDisabled =\n permissions.multiDeleteDisabled ?? this.removeItemDisabled;\n this.isRemoveItemDisabled = permissions.isRemoveItemDisabled;\n }\n\n isRowDeleteDisabled(rowKey: string): boolean {\n if (this.removeItemDisabled) {\n return true;\n }\n if (!this.isRemoveItemDisabled) {\n return false;\n }\n const keyed = this._getKeyedItem(rowKey);\n return keyed ? this.isRemoveItemDisabled(keyed.item).disabled : false;\n }\n\n rowDeleteDisabledReason(rowKey: string): string | undefined {\n if (!this.isRemoveItemDisabled) {\n return undefined;\n }\n const keyed = this._getKeyedItem(rowKey);\n const result = keyed ? this.isRemoveItemDisabled(keyed.item) : undefined;\n return result?.disabled ? result.reason : undefined;\n }\n\n isMultiDeleteDisabled(rowKeys: string[]): boolean {\n if (this.multiDeleteDisabled) {\n return true;\n }\n return rowKeys.some((key) => this.isRowDeleteDisabled(key));\n }\n\n get collection() {\n return this.tableState.collection;\n }\n\n get keyedItems() {\n return this.tableState.keyedItems;\n }\n\n get visibleColumns() {\n return this.tableState.visibleColumns;\n }\n\n get itemsToRenderCount() {\n return this.tableState.itemsToRenderCount;\n }\n\n /** Editable columns built from the wired fields source, once it loads. */\n get sourceColumns(): EditableColumn<T>[] {\n const source = this.toolbar.collectionFieldsSource;\n if (!source || !source.initTask.status.isSuccess) {\n return [];\n }\n return buildEditableFieldColumns(\n source.fieldsSource,\n this.collection.translate,\n source.editableCellFor,\n ) as EditableColumn<T>[];\n }\n\n /**\n * Consumer columns plus the columns built from the fields source, merged the\n * same way the toolbar merges its columns (ToolbarCollectionState.columns).\n * Consumer and source columns are expected to be disjoint by id.\n */\n get allColumns(): EditableColumn<T>[] {\n return [...this._providedColumns, ...this.sourceColumns];\n }\n\n get _columnMap(): Map<string, EditableColumn<T>> {\n return new Map(this.allColumns.map((c) => [c.id, c]));\n }\n\n _getKeyedItem(key: string): KeyedItem<T> | undefined | null {\n // Draft rows are not in the collection — fall back to the merged list.\n return (\n this.collection.getKeyedItem(key) ??\n this.keyedItems.find((ki) => ki.key === key)\n );\n }\n\n _toIndices(pos: Cell): { row: number; col: number } | null {\n const row = this.keyedItems.findIndex((ki) => ki.key === pos.rowKey);\n const col = this.editableColumns.findIndex((c) => c.id === pos.columnId);\n return row === -1 || col === -1 ? null : { row, col };\n }\n\n _toPosition(row: number, col: number): Cell | null {\n const ki = this.keyedItems[row];\n const c = this.editableColumns[col];\n return ki && c ? { rowKey: ki.key, columnId: c.id } : null;\n }\n\n onAddItemActionComplete = (items: T[]) => {\n return this.tableState.onAddItemActionComplete(items);\n };\n\n onAddItemClick = (origin?: string) => {\n this.toolbar.toolbarBIReporter.onAddItemClick(origin);\n };\n\n get editableColumns(): EditableColumn<T>[] {\n const visibleIds = this.visibleColumns.map((c) => c.id);\n if (!visibleIds.length) {\n return this.allColumns;\n }\n return visibleIds\n .map((id) => this.allColumns.find((c) => c.id === id))\n .filter((c): c is EditableColumn<T> => c !== undefined);\n }\n\n init(columns: EditableColumn<T>[]) {\n this._providedColumns = columns;\n const disposeMutation = this.mutation.init();\n\n const { onBeforeUnload } = this.toolbar.container;\n const onBeforeUnloadSubscription = onBeforeUnload?.((event) => {\n if (this.cellValue._pendingCells.size === 0) {\n return;\n }\n event.preventDefault();\n });\n\n return () => {\n this.cellValue.flushDrafts();\n disposeMutation();\n onBeforeUnloadSubscription?.remove();\n };\n }\n\n addItem(afterItemKey?: string): string {\n return this.mutation.addItem(afterItemKey);\n }\n\n duplicateItem(rowKey: string) {\n this.mutation.duplicateItem(rowKey);\n }\n\n deleteItems(rowKeys: string[]) {\n this.mutation.deleteItems(rowKeys);\n }\n\n confirmDeleteItems(rowKeys: string[]) {\n // The context menu disables blocked deletes; this filter is the barrier\n // for callers that bypass the UI gate.\n const deletableRowKeys = rowKeys.filter(\n (key) => !this.isRowDeleteDisabled(key),\n );\n if (!deletableRowKeys.length) {\n return;\n }\n const { translate: t } = this.collection;\n this.deleteConfirmModal.open({\n theme: 'destructive',\n title: t('cairo.deleteModal.title'),\n content: t('cairo.deleteModal.body'),\n primaryButtonText: t('cairo.delete.button'),\n secondaryButtonText: t('cairo.cancel.button'),\n primaryButtonOnClick: () => {\n this.deleteItems(deletableRowKeys);\n },\n });\n }\n\n resolveCellTypeByColumnId(columnId: string) {\n return this.cellValue.resolveCellTypeByColumnId(columnId);\n }\n\n getCellDisplayValue(rowKey: string, columnId: string): any {\n return this.cellValue.getCellDisplayValue(rowKey, columnId);\n }\n\n getCellValidation(rowKey: string, columnId: string): ValidationResult {\n const committed = this.cellValue.getCellValidation(rowKey, columnId);\n\n if (\n committed.valid ||\n !this.cellInteraction.isCellEditing(rowKey, columnId) ||\n this.cellInteraction.editingValue === undefined\n ) {\n return committed;\n }\n return this.cellValue.validateEditingValue(\n columnId,\n this.cellInteraction.editingValue,\n );\n }\n\n isCellEditable(rowKey: string, columnId: string): boolean {\n return this.cellValue.isCellEditable(rowKey, columnId);\n }\n\n isColumnEditable(rowKey: string, columnId: string): boolean {\n return this.cellValue.isColumnEditable(rowKey, columnId);\n }\n\n clearCells(cells: Cell[]) {\n this.cellValue.clearCells(cells);\n }\n\n handleCellClick(rowKey: string, columnId: string, shiftKey: boolean) {\n if (this.cellInteraction.isEditing) {\n if (this.cellInteraction.isCellEditing(rowKey, columnId)) {\n // Click landed inside the active editor — let the editor handle it.\n return;\n }\n // Shift-click while editing: ignore — extending a range selection during\n // an active edit is not a meaningful action.\n if (shiftKey) {\n return;\n }\n // Plain click on a different cell: commit the edit and move focus.\n this.cellInteraction.commitEdit();\n\n // If the target cell wants edit-on-click, enter edit directly.\n const col = this._columnMap.get(columnId);\n const res = col ? this.resolveCellTypeByColumnId(col.id) : null;\n if (res?.editOnClick) {\n const val = this.getCellDisplayValue(rowKey, columnId);\n if (res.editOnClick(val) && this.isCellEditable(rowKey, columnId)) {\n this.cellInteraction.focusCell(rowKey, columnId);\n this.cellInteraction.startEdit(rowKey, columnId, 'click');\n return;\n }\n }\n\n this.cellInteraction.focusCell(rowKey, columnId);\n return;\n }\n\n const column = this._columnMap.get(columnId);\n const resolved = column ? this.resolveCellTypeByColumnId(column.id) : null;\n if (resolved?.toggleValue || resolved?.showEditWhenFocused) {\n // Toggle/showEditWhenFocused cells: click focuses the cell and shows the\n // EditComponent affordance. Keyboard navigation remains active.\n this.cellInteraction.focusCell(rowKey, columnId);\n return;\n }\n\n if (resolved?.editOnClick) {\n const value = this.getCellDisplayValue(rowKey, columnId);\n if (\n resolved.editOnClick(value) &&\n this.isCellEditable(rowKey, columnId)\n ) {\n this.cellInteraction.focusCell(rowKey, columnId);\n this.cellInteraction.startEdit(rowKey, columnId, 'click');\n return;\n }\n }\n\n if (shiftKey && this.cellInteraction.selectionAnchor) {\n this.cellInteraction.selectRange(this.cellInteraction.selectionAnchor, {\n rowKey,\n columnId,\n });\n } else {\n this.cellInteraction.focusCell(rowKey, columnId);\n }\n }\n\n handleCellDoubleClick(rowKey: string, columnId: string) {\n if (this.updateItemDisabled) {\n return;\n }\n const column = this._columnMap.get(columnId);\n const resolved = column ? this.resolveCellTypeByColumnId(column.id) : null;\n // Toggle-value cells (e.g. boolean) activate on single click, not double-click.\n // Entering edit mode on double-click would apply the editing box-shadow\n // without any EditComponent being shown, causing a visual border glitch.\n if (resolved?.toggleValue || resolved?.showEditWhenFocused) {\n return;\n }\n if (this.isCellEditable(rowKey, columnId)) {\n this.cellInteraction.startEdit(rowKey, columnId, 'doubleClick');\n }\n }\n\n sort = (\n columnId: string,\n {\n forceDirection,\n multiple,\n }: { forceDirection?: SortOrder; multiple?: boolean } = {},\n ) => {\n this.collection.sort(\n { id: columnId },\n { forceDirection, clearResult: true, multiple },\n );\n };\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_mobx","require","_bexCore","_ToolbarCollectionState","_TableState","_CellInteractionState","_CellValueState","_ClipboardState","_MutationState","_EditableTableStateBIReporter","_buildEditableFieldColumns","TableStateWithDraftRows","TableState","constructor","params","mergeDraftRows","_defineProperty2","default","_mergeDraftRows","keyedItems","collection","result","showEmptyState","toolbar","multi","length","EditableTableState","_params$extraCellType","ConditionalModalState","undefined","items","tableState","onAddItemActionComplete","origin","toolbarBIReporter","onAddItemClick","columnId","forceDirection","multiple","sort","id","clearResult","ToolbarCollectionState","container","componentType","mutation","bi","EditableTableStateBIReporter","cellValue","CellValueState","Map","extraCellTypes","map","ct","type","cellInteraction","CellInteractionState","editingValue","cell","commitHandler","clipboard","ClipboardState","MutationState","mutations","createOptimisticActions","makeObservable","addItemDisabled","observable","isCreateItemDisabled","ref","updateItemDisabled","removeItemDisabled","multiDeleteDisabled","isRemoveItemDisabled","setPermissions","action","_providedColumns","editableColumns","computed","sourceColumns","allColumns","_columnMap","init","confirmDeleteItems","permissions","isRowDeleteDisabled","rowKey","keyed","_getKeyedItem","item","disabled","rowDeleteDisabledReason","reason","isAddItemDisabled","_this$isCreateItemDis","call","addItemDisabledReason","_this$isCreateItemDis2","isMultiDeleteDisabled","rowKeys","some","key","visibleColumns","itemsToRenderCount","source","collectionFieldsSource","initTask","status","isSuccess","buildEditableFieldColumns","fieldsSource","translate","editableCellFor","c","getKeyedItem","find","ki","_toIndices","pos","row","findIndex","col","_toPosition","visibleIds","filter","columns","disposeMutation","onBeforeUnload","onBeforeUnloadSubscription","event","_pendingCells","size","preventDefault","flushDrafts","remove","addItem","afterItemKey","duplicateItem","deleteItems","deletableRowKeys","t","deleteConfirmModal","open","theme","title","content","primaryButtonText","secondaryButtonText","primaryButtonOnClick","resolveCellTypeByColumnId","getCellDisplayValue","getCellValidation","committed","valid","isCellEditing","validateEditingValue","isCellEditable","isColumnEditable","clearCells","cells","cleared","clipboardAction","actionName","clipboardCellCounts","handleCellClick","shiftKey","isEditing","commitEdit","get","res","editOnClick","val","focusCell","startEdit","column","resolved","toggleValue","showEditWhenFocused","value","selectionAnchor","selectRange","handleCellDoubleClick","exports"],"sources":["../../../../src/state/EditableTable/EditableTableState.ts"],"sourcesContent":["import { action, computed, makeObservable, observable } from 'mobx';\nimport {\n CollectionOptimisticActions,\n CollectionState,\n ConditionalModalState,\n FiltersMap,\n SortOrder,\n WixPatternsContainer,\n} from '@wix/bex-core';\nimport type { ReactNode } from 'react';\nimport type { MessageModalLayoutProps } from '@wix/design-system';\nimport type {\n CreateItemDisabledResult,\n KeyedItem,\n RemoveItemDisabledResult,\n} from '@wix/bex-core';\nimport { ToolbarCollectionState } from '../ToolbarCollectionState';\nimport { TableState } from '../TableState';\nimport type { TableStateParams } from '../TableState';\nimport { ICollectionComponentState } from '../ICollectionComponentState';\nimport { CellInteractionState } from './CellInteractionState';\nimport { CellValueState } from './CellValueState';\nimport { ClipboardState } from './ClipboardState';\nimport { MutationState } from './MutationState';\nimport type { EditableTableMutationHandlers } from './MutationState';\nimport {\n clipboardCellCounts,\n EditableTableStateBIReporter,\n type ClipboardOrigin,\n} from './EditableTableStateBIReporter';\nimport type { Cell, CellType, EditableColumn, ValidationResult } from './types';\nimport { buildEditableFieldColumns } from '../buildEditableFieldColumns';\n\nexport type {\n CreateItemDisabledResult,\n RemoveItemDisabledResult,\n} from '@wix/bex-core';\n\nexport interface EditableTablePermissions<T = unknown> {\n addItemDisabled?: boolean;\n isCreateItemDisabled?: () => CreateItemDisabledResult;\n updateItemDisabled?: boolean;\n removeItemDisabled?: boolean;\n /** Deleting several rows in one operation. Absent = follows `removeItemDisabled`. */\n multiDeleteDisabled?: boolean;\n /** Per-item refinement of `removeItemDisabled`: disables deleting an item\n * even though deleting is generally allowed, optionally with a reason.\n * Must be pure and synchronous. Absent = all items deletable. */\n isRemoveItemDisabled?: (item: T) => RemoveItemDisabledResult;\n}\n\nexport interface EditableTableStateParams<T, F extends FiltersMap> {\n readonly collection: CollectionState<T, F>;\n readonly container: WixPatternsContainer;\n readonly toolbar?: ToolbarCollectionState<T, F>;\n readonly permissions?: EditableTablePermissions<T>;\n readonly mutations: EditableTableMutationHandlers<T>;\n readonly createOptimisticActions: (\n collection: CollectionState<T, F>,\n ) => CollectionOptimisticActions<T, F>;\n /**\n * Additional cell types to register alongside the built-in ones.\n * Augment `CellTypeConfigMap` to use these types on `EditableColumn.cellType`.\n */\n readonly extraCellTypes?: CellType[];\n}\n\nexport interface EditableTableStatePublicAPI<T, F extends FiltersMap> {\n /** Underlying CollectionState instance */\n readonly collection: CollectionState<T, F>;\n /** Underlying ToolbarCollectionState instance */\n readonly toolbar: ToolbarCollectionState<T, F>;\n /** Reset active filters & sorting and adds new items to the collection */\n onAddItemActionComplete(items: T[]): void;\n /** Sort by column */\n sort: (\n columnId: string,\n params?: { forceDirection?: SortOrder; multiple?: boolean },\n ) => void;\n /** Replace all permission flags and the per-item delete predicate */\n setPermissions(permissions: EditableTablePermissions<T>): void;\n /** Whether deleting the given row is disabled (user-level or per-item) */\n isRowDeleteDisabled(rowKey: string): boolean;\n /** The reason the given row cannot be deleted, when the per-item predicate\n * returned one. `undefined` when the row is deletable or no reason was given. */\n rowDeleteDisabledReason(rowKey: string): string | undefined;\n /** Whether deleting the given rows in one operation is disabled */\n isMultiDeleteDisabled(rowKeys: string[]): boolean;\n isAddItemDisabled(): boolean;\n addItemDisabledReason(): ReactNode | undefined;\n}\n\n/**\n * Draft rows (added locally, not yet created on the server) are not part of\n * the collection result. This TableState merges them into the rendered list,\n * so everything that renders rows — the WDS table and the virtualizer — sees\n * them, and a table whose only rows are drafts does not show the empty state.\n */\nclass TableStateWithDraftRows<T, F extends FiltersMap> extends TableState<\n T,\n F\n> {\n private readonly _mergeDraftRows: (items: KeyedItem<T>[]) => KeyedItem<T>[];\n\n constructor(\n params: TableStateParams<T, F>,\n mergeDraftRows: (items: KeyedItem<T>[]) => KeyedItem<T>[],\n ) {\n super(params);\n this._mergeDraftRows = mergeDraftRows;\n }\n\n get keyedItems() {\n return this._mergeDraftRows(this.collection.result.keyedItems);\n }\n\n get showEmptyState() {\n return this.toolbar.multi.showEmptyState && this.keyedItems.length === 0;\n }\n}\n\nexport class EditableTableState<T, F extends FiltersMap>\n implements ICollectionComponentState, EditableTableStatePublicAPI<T, F>\n{\n readonly toolbar: ToolbarCollectionState<T, F>;\n readonly tableState: TableState<T, F>;\n\n readonly cellInteraction: CellInteractionState<T, F>;\n readonly cellValue: CellValueState<T, F>;\n readonly clipboard: ClipboardState<T, F>;\n readonly mutation: MutationState<T, F>;\n readonly bi: EditableTableStateBIReporter<T, F>;\n readonly deleteConfirmModal = new ConditionalModalState<\n Partial<MessageModalLayoutProps>\n >();\n\n addItemDisabled = false;\n isCreateItemDisabled?: () => CreateItemDisabledResult = undefined;\n updateItemDisabled = false;\n removeItemDisabled = false;\n multiDeleteDisabled = false;\n // Needs an explicit initializer: a declaration-only field is erased at\n // compile time, and makeObservable throws on a property that doesn't exist.\n isRemoveItemDisabled?: (item: T) => RemoveItemDisabledResult = undefined;\n\n _providedColumns: EditableColumn<T>[] = [];\n\n constructor(params: EditableTableStateParams<T, F>) {\n this.toolbar =\n params.toolbar ??\n new ToolbarCollectionState({\n collection: params.collection,\n container: params.container,\n componentType: 'EditableTable',\n });\n\n this.tableState = new TableStateWithDraftRows(\n {\n collection: params.collection,\n container: params.container,\n toolbar: this.toolbar,\n },\n (keyedItems) => this.mutation._mergeDraftRows(keyedItems),\n );\n\n this.bi = new EditableTableStateBIReporter<T, F>(this);\n\n this.cellValue = new CellValueState<T, F>(\n this,\n new Map(params.extraCellTypes?.map((ct) => [ct.type, ct])),\n );\n\n this.cellInteraction = new CellInteractionState<T, F>(\n (editingValue, cell) => {\n this.cellValue.commitHandler(editingValue, cell);\n },\n this,\n );\n this.clipboard = new ClipboardState<T, F>(this);\n this.mutation = new MutationState<T, F>(\n this,\n params.mutations,\n params.createOptimisticActions,\n );\n makeObservable(this, {\n addItemDisabled: observable,\n isCreateItemDisabled: observable.ref,\n updateItemDisabled: observable,\n removeItemDisabled: observable,\n multiDeleteDisabled: observable,\n isRemoveItemDisabled: observable.ref,\n setPermissions: action,\n _providedColumns: observable.ref,\n editableColumns: computed,\n sourceColumns: computed,\n allColumns: computed,\n _columnMap: computed,\n init: action,\n confirmDeleteItems: action,\n });\n\n this.setPermissions(params.permissions ?? {});\n }\n\n setPermissions(permissions: EditableTablePermissions<T>) {\n this.addItemDisabled = permissions.addItemDisabled ?? false;\n this.isCreateItemDisabled = permissions.isCreateItemDisabled;\n this.updateItemDisabled = permissions.updateItemDisabled ?? false;\n this.removeItemDisabled = permissions.removeItemDisabled ?? false;\n this.multiDeleteDisabled =\n permissions.multiDeleteDisabled ?? this.removeItemDisabled;\n this.isRemoveItemDisabled = permissions.isRemoveItemDisabled;\n }\n\n isRowDeleteDisabled(rowKey: string): boolean {\n if (this.removeItemDisabled) {\n return true;\n }\n if (!this.isRemoveItemDisabled) {\n return false;\n }\n const keyed = this._getKeyedItem(rowKey);\n return keyed ? this.isRemoveItemDisabled(keyed.item).disabled : false;\n }\n\n rowDeleteDisabledReason(rowKey: string): string | undefined {\n if (!this.isRemoveItemDisabled) {\n return undefined;\n }\n const keyed = this._getKeyedItem(rowKey);\n const result = keyed ? this.isRemoveItemDisabled(keyed.item) : undefined;\n return result?.disabled ? result.reason : undefined;\n }\n\n isAddItemDisabled(): boolean {\n return this.addItemDisabled || !!this.isCreateItemDisabled?.().disabled;\n }\n\n addItemDisabledReason(): ReactNode | undefined {\n if (this.addItemDisabled) {\n return undefined;\n }\n const result = this.isCreateItemDisabled?.();\n return result?.disabled ? result.reason : undefined;\n }\n\n isMultiDeleteDisabled(rowKeys: string[]): boolean {\n if (this.multiDeleteDisabled) {\n return true;\n }\n return rowKeys.some((key) => this.isRowDeleteDisabled(key));\n }\n\n get collection() {\n return this.tableState.collection;\n }\n\n get keyedItems() {\n return this.tableState.keyedItems;\n }\n\n get visibleColumns() {\n return this.tableState.visibleColumns;\n }\n\n get itemsToRenderCount() {\n return this.tableState.itemsToRenderCount;\n }\n\n /** Editable columns built from the wired fields source, once it loads. */\n get sourceColumns(): EditableColumn<T>[] {\n const source = this.toolbar.collectionFieldsSource;\n if (!source || !source.initTask.status.isSuccess) {\n return [];\n }\n return buildEditableFieldColumns(\n source.fieldsSource,\n this.collection.translate,\n source.editableCellFor,\n ) as EditableColumn<T>[];\n }\n\n /**\n * Consumer columns plus the columns built from the fields source, merged the\n * same way the toolbar merges its columns (ToolbarCollectionState.columns).\n * Consumer and source columns are expected to be disjoint by id.\n */\n get allColumns(): EditableColumn<T>[] {\n return [...this._providedColumns, ...this.sourceColumns];\n }\n\n get _columnMap(): Map<string, EditableColumn<T>> {\n return new Map(this.allColumns.map((c) => [c.id, c]));\n }\n\n _getKeyedItem(key: string): KeyedItem<T> | undefined | null {\n // Draft rows are not in the collection — fall back to the merged list.\n return (\n this.collection.getKeyedItem(key) ??\n this.keyedItems.find((ki) => ki.key === key)\n );\n }\n\n _toIndices(pos: Cell): { row: number; col: number } | null {\n const row = this.keyedItems.findIndex((ki) => ki.key === pos.rowKey);\n const col = this.editableColumns.findIndex((c) => c.id === pos.columnId);\n return row === -1 || col === -1 ? null : { row, col };\n }\n\n _toPosition(row: number, col: number): Cell | null {\n const ki = this.keyedItems[row];\n const c = this.editableColumns[col];\n return ki && c ? { rowKey: ki.key, columnId: c.id } : null;\n }\n\n onAddItemActionComplete = (items: T[]) => {\n return this.tableState.onAddItemActionComplete(items);\n };\n\n onAddItemClick = (origin?: string) => {\n this.toolbar.toolbarBIReporter.onAddItemClick(origin);\n };\n\n get editableColumns(): EditableColumn<T>[] {\n const visibleIds = this.visibleColumns.map((c) => c.id);\n if (!visibleIds.length) {\n return this.allColumns;\n }\n return visibleIds\n .map((id) => this.allColumns.find((c) => c.id === id))\n .filter((c): c is EditableColumn<T> => c !== undefined);\n }\n\n init(columns: EditableColumn<T>[]) {\n this._providedColumns = columns;\n const disposeMutation = this.mutation.init();\n\n const { onBeforeUnload } = this.toolbar.container;\n const onBeforeUnloadSubscription = onBeforeUnload?.((event) => {\n if (this.cellValue._pendingCells.size === 0) {\n return;\n }\n event.preventDefault();\n });\n\n return () => {\n this.cellValue.flushDrafts();\n disposeMutation();\n onBeforeUnloadSubscription?.remove();\n };\n }\n\n addItem(afterItemKey?: string): string {\n return this.mutation.addItem(afterItemKey);\n }\n\n duplicateItem(rowKey: string) {\n this.mutation.duplicateItem(rowKey);\n }\n\n deleteItems(rowKeys: string[]) {\n this.mutation.deleteItems(rowKeys);\n }\n\n confirmDeleteItems(rowKeys: string[]) {\n // The context menu disables blocked deletes; this filter is the barrier\n // for callers that bypass the UI gate.\n const deletableRowKeys = rowKeys.filter(\n (key) => !this.isRowDeleteDisabled(key),\n );\n if (!deletableRowKeys.length) {\n return;\n }\n const { translate: t } = this.collection;\n this.deleteConfirmModal.open({\n theme: 'destructive',\n title: t('cairo.deleteModal.title'),\n content: t('cairo.deleteModal.body'),\n primaryButtonText: t('cairo.delete.button'),\n secondaryButtonText: t('cairo.cancel.button'),\n primaryButtonOnClick: () => {\n this.deleteItems(deletableRowKeys);\n },\n });\n }\n\n resolveCellTypeByColumnId(columnId: string) {\n return this.cellValue.resolveCellTypeByColumnId(columnId);\n }\n\n getCellDisplayValue(rowKey: string, columnId: string): any {\n return this.cellValue.getCellDisplayValue(rowKey, columnId);\n }\n\n getCellValidation(rowKey: string, columnId: string): ValidationResult {\n const committed = this.cellValue.getCellValidation(rowKey, columnId);\n\n if (\n committed.valid ||\n !this.cellInteraction.isCellEditing(rowKey, columnId) ||\n this.cellInteraction.editingValue === undefined\n ) {\n return committed;\n }\n return this.cellValue.validateEditingValue(\n columnId,\n this.cellInteraction.editingValue,\n );\n }\n\n isCellEditable(rowKey: string, columnId: string): boolean {\n return this.cellValue.isCellEditable(rowKey, columnId);\n }\n\n isColumnEditable(rowKey: string, columnId: string): boolean {\n return this.cellValue.isColumnEditable(rowKey, columnId);\n }\n\n clearCells(cells: Cell[], origin: ClipboardOrigin = 'Keyboard') {\n const cleared = this.cellValue.clearCells(cells);\n if (cleared.length === 0) {\n return;\n }\n this.bi.clipboardAction({\n actionName: 'clear',\n origin,\n ...clipboardCellCounts(cleared),\n });\n }\n\n handleCellClick(rowKey: string, columnId: string, shiftKey: boolean) {\n if (this.cellInteraction.isEditing) {\n if (this.cellInteraction.isCellEditing(rowKey, columnId)) {\n // Click landed inside the active editor — let the editor handle it.\n return;\n }\n // Shift-click while editing: ignore — extending a range selection during\n // an active edit is not a meaningful action.\n if (shiftKey) {\n return;\n }\n // Plain click on a different cell: commit the edit and move focus.\n this.cellInteraction.commitEdit();\n\n // If the target cell wants edit-on-click, enter edit directly.\n const col = this._columnMap.get(columnId);\n const res = col ? this.resolveCellTypeByColumnId(col.id) : null;\n if (res?.editOnClick) {\n const val = this.getCellDisplayValue(rowKey, columnId);\n if (res.editOnClick(val) && this.isCellEditable(rowKey, columnId)) {\n this.cellInteraction.focusCell(rowKey, columnId);\n this.cellInteraction.startEdit(rowKey, columnId, 'click');\n return;\n }\n }\n\n this.cellInteraction.focusCell(rowKey, columnId);\n return;\n }\n\n const column = this._columnMap.get(columnId);\n const resolved = column ? this.resolveCellTypeByColumnId(column.id) : null;\n if (resolved?.toggleValue || resolved?.showEditWhenFocused) {\n // Toggle/showEditWhenFocused cells: click focuses the cell and shows the\n // EditComponent affordance. Keyboard navigation remains active.\n this.cellInteraction.focusCell(rowKey, columnId);\n return;\n }\n\n if (resolved?.editOnClick) {\n const value = this.getCellDisplayValue(rowKey, columnId);\n if (\n resolved.editOnClick(value) &&\n this.isCellEditable(rowKey, columnId)\n ) {\n this.cellInteraction.focusCell(rowKey, columnId);\n this.cellInteraction.startEdit(rowKey, columnId, 'click');\n return;\n }\n }\n\n if (shiftKey && this.cellInteraction.selectionAnchor) {\n this.cellInteraction.selectRange(this.cellInteraction.selectionAnchor, {\n rowKey,\n columnId,\n });\n } else {\n this.cellInteraction.focusCell(rowKey, columnId);\n }\n }\n\n handleCellDoubleClick(rowKey: string, columnId: string) {\n if (this.updateItemDisabled) {\n return;\n }\n const column = this._columnMap.get(columnId);\n const resolved = column ? this.resolveCellTypeByColumnId(column.id) : null;\n // Toggle-value cells (e.g. boolean) activate on single click, not double-click.\n // Entering edit mode on double-click would apply the editing box-shadow\n // without any EditComponent being shown, causing a visual border glitch.\n if (resolved?.toggleValue || resolved?.showEditWhenFocused) {\n return;\n }\n // A second double-click in an editor that is already open is not a new edit.\n if (this.cellInteraction.isCellEditing(rowKey, columnId)) {\n return;\n }\n if (this.isCellEditable(rowKey, columnId)) {\n this.cellInteraction.startEdit(rowKey, columnId, 'doubleClick');\n }\n }\n\n sort = (\n columnId: string,\n {\n forceDirection,\n multiple,\n }: { forceDirection?: SortOrder; multiple?: boolean } = {},\n ) => {\n this.collection.sort(\n { id: columnId },\n { forceDirection, clearResult: true, multiple },\n );\n };\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -3,11 +3,21 @@
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
4
|
exports.__esModule = true;
|
|
5
5
|
exports.EditableTableStateBIReporter = void 0;
|
|
6
|
+
exports.clipboardCellCounts = clipboardCellCounts;
|
|
6
7
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
7
8
|
var _bexCore = require("@wix/bex-core");
|
|
8
9
|
var _bi = require("@wix/bex-core/bi");
|
|
9
10
|
/** Catalog 144:21 `actionName` values — lowercase, matching the Eventor plan. */
|
|
10
11
|
|
|
12
|
+
/** Cell count and how many distinct columns they span. Shared by every
|
|
13
|
+
* clipboard action so copy, cut, paste, and clear count the same set. */
|
|
14
|
+
function clipboardCellCounts(cells) {
|
|
15
|
+
return {
|
|
16
|
+
numItems: cells.length,
|
|
17
|
+
numColumns: new Set(cells.map(cell => cell.columnId)).size
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
|
|
11
21
|
/** Where a new row was asked for. `Card CTA` is the add-row button and keeps its
|
|
12
22
|
* original name so it stays comparable with data already collected. The context
|
|
13
23
|
* menu entries reported nothing before. */
|
|
@@ -46,15 +56,19 @@ class EditableTableStateBIReporter {
|
|
|
46
56
|
return this._state.toolbar.reportBi;
|
|
47
57
|
}
|
|
48
58
|
|
|
49
|
-
/** Whether committing `editingValue` would
|
|
50
|
-
*
|
|
59
|
+
/** Whether committing `editingValue` would change the stored cell.
|
|
60
|
+
* Compares the value commit would write, after normalizeOnCommit.
|
|
61
|
+
* Call before the write — afterwards the stored value is the new one. */
|
|
51
62
|
hasValueChanged(cell, editingValue) {
|
|
52
63
|
if (editingValue === undefined) {
|
|
53
64
|
return false;
|
|
54
65
|
}
|
|
66
|
+
const column = this._state._columnMap.get(cell.columnId);
|
|
67
|
+
const resolved = column ? this._state.resolveCellTypeByColumnId(column.id) : undefined;
|
|
68
|
+
const committedValue = resolved != null && resolved.normalizeOnCommit ? resolved.normalizeOnCommit(editingValue) : editingValue;
|
|
55
69
|
// The displayed value includes uncommitted drafts and pending cells, so a
|
|
56
70
|
// re-edit to what the user already sees is not a change.
|
|
57
|
-
return !Object.is(this._state.cellValue.getCellDisplayValue(cell.rowKey, cell.columnId),
|
|
71
|
+
return !Object.is(this._state.cellValue.getCellDisplayValue(cell.rowKey, cell.columnId), committedValue);
|
|
58
72
|
}
|
|
59
73
|
cellEditStarted(cell, trigger) {
|
|
60
74
|
this.reportBi((0, _bexCore.withoutDefaults)(_bi.editableTableCellEditStarted)({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_bexCore","require","_bi","editOriginOf","trigger","undefined","EditableTableStateBIReporter","constructor","state","_defineProperty2","default","_state","reportBi","toolbar","hasValueChanged","cell","editingValue","Object","is","cellValue","getCellDisplayValue","rowKey","columnId","cellEditStarted","withoutDefaults","editableTableCellEditStarted","_cellParams","origin","cellEditCommitted","params","editableTableCellEditCommitted","isValid","getCellValidation","valid","cellEditCancelled","editableTableCellEditCancelled","clipboardAction","editableTableClipboardAction","actionName","numItems","numColumns","isExternalSource","menuOpened","cellParams","editableTableMenuOpened","menuType","isOpened","key","fieldType","_fieldTypeOf","itemIndex","rowCreationStart","newItemCreationStart","rowCreationEnd","newItemCreationEnd","resultType","itemId","itemIds","JSON","stringify","deleteModalShown","rowKeys","wixPatternsDeleteModalShownSrc144Evid10","_deleteModalParams","deleteModalCtaClicked","wixPatternsDeleteModalCtaClickedSrc144Evid11","ctaName","length","isSelectAll","collection","result","items","location","modalName","tryAgainClicked","cairoTryAgainClicked","loaction","_this$_state$_toIndic","_toIndices","row","_column$field","column","_columnMap","get","field","type","cellType","exports"],"sources":["../../../../src/state/EditableTable/EditableTableStateBIReporter.ts"],"sourcesContent":["import { withoutDefaults } from '@wix/bex-core';\nimport type { Field, FiltersMap } from '@wix/bex-core';\nimport {\n cairoTryAgainClicked,\n editableTableCellEditCancelled,\n editableTableCellEditCommitted,\n editableTableCellEditStarted,\n editableTableClipboardAction,\n editableTableMenuOpened,\n newItemCreationEnd,\n newItemCreationStart,\n wixPatternsDeleteModalCtaClickedSrc144Evid11,\n wixPatternsDeleteModalShownSrc144Evid10,\n} from '@wix/bex-core/bi';\nimport type { EditTrigger } from '../../components/EditableTable/types';\nimport type { EditableTableState } from './EditableTableState';\nimport type { Cell } from './types';\n\n/** Catalog 144:21 `actionName` values — lowercase, matching the Eventor plan. */\nexport type ClipboardActionName = 'copy' | 'cut' | 'paste' | 'clear';\nexport type ClipboardOrigin = 'Keyboard' | 'Context Menu';\nexport type MenuType = 'Cell Context Menu' | 'Column Header';\n\n/** Where a new row was asked for. `Card CTA` is the add-row button and keeps its\n * original name so it stays comparable with data already collected. The context\n * menu entries reported nothing before. */\nexport type RowCreationOrigin =\n | 'Card CTA'\n | 'Row Context Menu - Above'\n | 'Row Context Menu - Below'\n | 'Row Context Menu - Duplicate';\n\n/** Catalog spells these in English, unlocalised. */\nexport type DeleteModalCta = 'Delete' | 'Cancel' | 'X';\n\n/** Catalog 144:141 `actionName` values for the failed-write toast retry. */\nexport type RetryActionName = 'Create' | 'Duplicate' | 'Update' | 'Delete';\n\n/** How the user got into edit mode. `Toggle` never enters it — a toggle cell\n * writes straight through, and reports a commit on its own. */\nexport type CellEditOrigin =\n | 'Click'\n | 'Double Click'\n | 'Enter'\n | 'Typing'\n | 'Toggle';\n\nfunction editOriginOf(trigger: EditTrigger | null): CellEditOrigin | undefined {\n if (trigger === null) {\n return undefined;\n }\n if (typeof trigger === 'object') {\n return 'Typing';\n }\n switch (trigger) {\n case 'click':\n return 'Click';\n case 'doubleClick':\n return 'Double Click';\n case 'enter':\n return 'Enter';\n default:\n return undefined;\n }\n}\n\ninterface CellBiParams {\n key: string;\n fieldType?: string;\n itemId: string;\n itemIndex?: number;\n}\n\nexport class EditableTableStateBIReporter<T, F extends FiltersMap> {\n private readonly _state: EditableTableState<T, F>;\n\n constructor(state: EditableTableState<T, F>) {\n this._state = state;\n }\n\n get reportBi() {\n return this._state.toolbar.reportBi;\n }\n\n /** Whether committing `editingValue` would actually change the cell. Call\n * before the write — afterwards the stored value is the new one. */\n hasValueChanged(cell: Cell, editingValue: unknown): boolean {\n if (editingValue === undefined) {\n return false;\n }\n // The displayed value includes uncommitted drafts and pending cells, so a\n // re-edit to what the user already sees is not a change.\n return !Object.is(\n this._state.cellValue.getCellDisplayValue(cell.rowKey, cell.columnId),\n editingValue,\n );\n }\n\n cellEditStarted(cell: Cell, trigger: EditTrigger | null) {\n this.reportBi(\n withoutDefaults(editableTableCellEditStarted)({\n ...this._cellParams(cell),\n origin: editOriginOf(trigger),\n }),\n );\n }\n\n cellEditCommitted(\n cell: Cell,\n params: {\n /** Absent for a toggle cell, which never enters edit mode. */\n trigger?: EditTrigger | null;\n origin?: CellEditOrigin;\n hasValueChanged: boolean;\n },\n ) {\n this.reportBi(\n withoutDefaults(editableTableCellEditCommitted)({\n ...this._cellParams(cell),\n origin: params.origin ?? editOriginOf(params.trigger ?? null),\n hasValueChanged: params.hasValueChanged,\n isValid: this._state.cellValue.getCellValidation(\n cell.rowKey,\n cell.columnId,\n ).valid,\n }),\n );\n }\n\n cellEditCancelled(cell: Cell, params: { hasValueChanged: boolean }) {\n this.reportBi(\n withoutDefaults(editableTableCellEditCancelled)({\n ...this._cellParams(cell),\n hasValueChanged: params.hasValueChanged,\n }),\n );\n }\n\n clipboardAction(params: {\n actionName: ClipboardActionName;\n origin: ClipboardOrigin;\n numItems: number;\n numColumns: number;\n isExternalSource?: boolean;\n }) {\n this.reportBi(\n withoutDefaults(editableTableClipboardAction)({\n actionName: params.actionName,\n origin: params.origin,\n numItems: params.numItems,\n numColumns: params.numColumns,\n isExternalSource: params.isExternalSource,\n }),\n );\n }\n\n menuOpened(params: {\n menuType: MenuType;\n isOpened: boolean;\n cell?: Cell | null;\n key?: string;\n }) {\n const cellParams = params.cell ? this._cellParams(params.cell) : undefined;\n this.reportBi(\n withoutDefaults(editableTableMenuOpened)({\n menuType: params.menuType,\n isOpened: params.isOpened,\n key: params.key ?? cellParams?.key,\n fieldType: params.key\n ? this._fieldTypeOf(params.key)\n : cellParams?.fieldType,\n itemIndex: cellParams?.itemIndex,\n }),\n );\n }\n\n rowCreationStart(origin: RowCreationOrigin) {\n this.reportBi(withoutDefaults(newItemCreationStart)({ origin }));\n }\n\n rowCreationEnd(params: {\n origin: RowCreationOrigin;\n /** Catalog 144:107: `success` or `dismissed` (create did not land). */\n resultType: 'success' | 'dismissed';\n itemIds?: string[];\n }) {\n this.reportBi(\n withoutDefaults(newItemCreationEnd)({\n origin: params.origin,\n resultType: params.resultType,\n itemId: params.itemIds ? JSON.stringify(params.itemIds) : undefined,\n }),\n );\n }\n\n deleteModalShown(rowKeys: string[]) {\n this.reportBi(\n withoutDefaults(wixPatternsDeleteModalShownSrc144Evid10)({\n ...this._deleteModalParams(rowKeys),\n }),\n );\n }\n\n deleteModalCtaClicked(params: {\n ctaName: DeleteModalCta;\n rowKeys: string[];\n }) {\n this.reportBi(\n withoutDefaults(wixPatternsDeleteModalCtaClickedSrc144Evid11)({\n ...this._deleteModalParams(params.rowKeys),\n ctaName: params.ctaName,\n }),\n );\n }\n\n /** Shared fields for 144:10/11 — location is the row context menu, not bulk toolbar. */\n private _deleteModalParams(rowKeys: string[]) {\n const numItems = rowKeys.length;\n return {\n numItems,\n // Catalog: isSelectAll is true when numItems equals the list size.\n isSelectAll:\n numItems > 0 && numItems === this._state.collection.result.items.length,\n location: 'Row Context Menu',\n modalName: 'Delete rows',\n itemId: numItems === 1 ? rowKeys[0] : undefined,\n };\n }\n\n tryAgainClicked(actionName: RetryActionName) {\n this.reportBi(\n withoutDefaults(cairoTryAgainClicked)({\n actionName,\n // Schema spells the field this way.\n loaction: 'toast',\n }),\n );\n }\n\n /** Column key, field type, and row identity used on every cell-level event. */\n private _cellParams(cell: Cell): CellBiParams {\n return {\n key: cell.columnId,\n fieldType: this._fieldTypeOf(cell.columnId),\n itemId: cell.rowKey,\n itemIndex: this._state._toIndices(cell)?.row,\n };\n }\n\n /** The schema field type where the column came from a source, otherwise the\n * registered cell type. */\n private _fieldTypeOf(columnId: string): string | undefined {\n const column = this._state._columnMap.get(columnId) as\n | { field?: Field; cellType?: string }\n | undefined;\n return column?.field?.type ?? column?.cellType;\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_bexCore","require","_bi","clipboardCellCounts","cells","numItems","length","numColumns","Set","map","cell","columnId","size","editOriginOf","trigger","undefined","EditableTableStateBIReporter","constructor","state","_defineProperty2","default","_state","reportBi","toolbar","hasValueChanged","editingValue","column","_columnMap","get","resolved","resolveCellTypeByColumnId","id","committedValue","normalizeOnCommit","Object","is","cellValue","getCellDisplayValue","rowKey","cellEditStarted","withoutDefaults","editableTableCellEditStarted","_cellParams","origin","cellEditCommitted","params","editableTableCellEditCommitted","isValid","getCellValidation","valid","cellEditCancelled","editableTableCellEditCancelled","clipboardAction","editableTableClipboardAction","actionName","isExternalSource","menuOpened","cellParams","editableTableMenuOpened","menuType","isOpened","key","fieldType","_fieldTypeOf","itemIndex","rowCreationStart","newItemCreationStart","rowCreationEnd","newItemCreationEnd","resultType","itemId","itemIds","JSON","stringify","deleteModalShown","rowKeys","wixPatternsDeleteModalShownSrc144Evid10","_deleteModalParams","deleteModalCtaClicked","wixPatternsDeleteModalCtaClickedSrc144Evid11","ctaName","isSelectAll","collection","result","items","location","modalName","tryAgainClicked","cairoTryAgainClicked","loaction","_this$_state$_toIndic","_toIndices","row","_column$field","field","type","cellType","exports"],"sources":["../../../../src/state/EditableTable/EditableTableStateBIReporter.ts"],"sourcesContent":["import { withoutDefaults } from '@wix/bex-core';\nimport type { Field, FiltersMap } from '@wix/bex-core';\nimport {\n cairoTryAgainClicked,\n editableTableCellEditCancelled,\n editableTableCellEditCommitted,\n editableTableCellEditStarted,\n editableTableClipboardAction,\n editableTableMenuOpened,\n newItemCreationEnd,\n newItemCreationStart,\n wixPatternsDeleteModalCtaClickedSrc144Evid11,\n wixPatternsDeleteModalShownSrc144Evid10,\n} from '@wix/bex-core/bi';\nimport type { EditTrigger } from '../../components/EditableTable/types';\nimport type { EditableTableState } from './EditableTableState';\nimport type { Cell } from './types';\n\n/** Catalog 144:21 `actionName` values — lowercase, matching the Eventor plan. */\nexport type ClipboardActionName = 'copy' | 'cut' | 'paste' | 'clear';\nexport type ClipboardOrigin = 'Keyboard' | 'Context Menu';\nexport type MenuType = 'Cell Context Menu' | 'Column Header';\n\n/** Cell count and how many distinct columns they span. Shared by every\n * clipboard action so copy, cut, paste, and clear count the same set. */\nexport function clipboardCellCounts(cells: Cell[]): {\n numItems: number;\n numColumns: number;\n} {\n return {\n numItems: cells.length,\n numColumns: new Set(cells.map((cell) => cell.columnId)).size,\n };\n}\n\n/** Where a new row was asked for. `Card CTA` is the add-row button and keeps its\n * original name so it stays comparable with data already collected. The context\n * menu entries reported nothing before. */\nexport type RowCreationOrigin =\n | 'Card CTA'\n | 'Row Context Menu - Above'\n | 'Row Context Menu - Below'\n | 'Row Context Menu - Duplicate';\n\n/** Catalog spells these in English, unlocalised. */\nexport type DeleteModalCta = 'Delete' | 'Cancel' | 'X';\n\n/** Catalog 144:141 `actionName` values for the failed-write toast retry. */\nexport type RetryActionName = 'Create' | 'Duplicate' | 'Update' | 'Delete';\n\n/** How the user got into edit mode. `Toggle` never enters it — a toggle cell\n * writes straight through, and reports a commit on its own. */\nexport type CellEditOrigin =\n | 'Click'\n | 'Double Click'\n | 'Enter'\n | 'Typing'\n | 'Toggle';\n\nfunction editOriginOf(trigger: EditTrigger | null): CellEditOrigin | undefined {\n if (trigger === null) {\n return undefined;\n }\n if (typeof trigger === 'object') {\n return 'Typing';\n }\n switch (trigger) {\n case 'click':\n return 'Click';\n case 'doubleClick':\n return 'Double Click';\n case 'enter':\n return 'Enter';\n default:\n return undefined;\n }\n}\n\ninterface CellBiParams {\n key: string;\n fieldType?: string;\n itemId: string;\n itemIndex?: number;\n}\n\nexport class EditableTableStateBIReporter<T, F extends FiltersMap> {\n private readonly _state: EditableTableState<T, F>;\n\n constructor(state: EditableTableState<T, F>) {\n this._state = state;\n }\n\n get reportBi() {\n return this._state.toolbar.reportBi;\n }\n\n /** Whether committing `editingValue` would change the stored cell.\n * Compares the value commit would write, after normalizeOnCommit.\n * Call before the write — afterwards the stored value is the new one. */\n hasValueChanged(cell: Cell, editingValue: unknown): boolean {\n if (editingValue === undefined) {\n return false;\n }\n const column = this._state._columnMap.get(cell.columnId);\n const resolved = column\n ? this._state.resolveCellTypeByColumnId(column.id)\n : undefined;\n const committedValue = resolved?.normalizeOnCommit\n ? resolved.normalizeOnCommit(editingValue)\n : editingValue;\n // The displayed value includes uncommitted drafts and pending cells, so a\n // re-edit to what the user already sees is not a change.\n return !Object.is(\n this._state.cellValue.getCellDisplayValue(cell.rowKey, cell.columnId),\n committedValue,\n );\n }\n\n cellEditStarted(cell: Cell, trigger: EditTrigger | null) {\n this.reportBi(\n withoutDefaults(editableTableCellEditStarted)({\n ...this._cellParams(cell),\n origin: editOriginOf(trigger),\n }),\n );\n }\n\n cellEditCommitted(\n cell: Cell,\n params: {\n /** Absent for a toggle cell, which never enters edit mode. */\n trigger?: EditTrigger | null;\n origin?: CellEditOrigin;\n hasValueChanged: boolean;\n },\n ) {\n this.reportBi(\n withoutDefaults(editableTableCellEditCommitted)({\n ...this._cellParams(cell),\n origin: params.origin ?? editOriginOf(params.trigger ?? null),\n hasValueChanged: params.hasValueChanged,\n isValid: this._state.cellValue.getCellValidation(\n cell.rowKey,\n cell.columnId,\n ).valid,\n }),\n );\n }\n\n cellEditCancelled(cell: Cell, params: { hasValueChanged: boolean }) {\n this.reportBi(\n withoutDefaults(editableTableCellEditCancelled)({\n ...this._cellParams(cell),\n hasValueChanged: params.hasValueChanged,\n }),\n );\n }\n\n clipboardAction(params: {\n actionName: ClipboardActionName;\n origin: ClipboardOrigin;\n numItems: number;\n numColumns: number;\n isExternalSource?: boolean;\n }) {\n this.reportBi(\n withoutDefaults(editableTableClipboardAction)({\n actionName: params.actionName,\n origin: params.origin,\n numItems: params.numItems,\n numColumns: params.numColumns,\n isExternalSource: params.isExternalSource,\n }),\n );\n }\n\n menuOpened(params: {\n menuType: MenuType;\n isOpened: boolean;\n cell?: Cell | null;\n key?: string;\n }) {\n const cellParams = params.cell ? this._cellParams(params.cell) : undefined;\n this.reportBi(\n withoutDefaults(editableTableMenuOpened)({\n menuType: params.menuType,\n isOpened: params.isOpened,\n key: params.key ?? cellParams?.key,\n fieldType: params.key\n ? this._fieldTypeOf(params.key)\n : cellParams?.fieldType,\n itemIndex: cellParams?.itemIndex,\n }),\n );\n }\n\n rowCreationStart(origin: RowCreationOrigin) {\n this.reportBi(withoutDefaults(newItemCreationStart)({ origin }));\n }\n\n rowCreationEnd(params: {\n origin: RowCreationOrigin;\n /** Catalog 144:107: `success` or `dismissed` (create did not land). */\n resultType: 'success' | 'dismissed';\n itemIds?: string[];\n }) {\n this.reportBi(\n withoutDefaults(newItemCreationEnd)({\n origin: params.origin,\n resultType: params.resultType,\n itemId: params.itemIds ? JSON.stringify(params.itemIds) : undefined,\n }),\n );\n }\n\n deleteModalShown(rowKeys: string[]) {\n this.reportBi(\n withoutDefaults(wixPatternsDeleteModalShownSrc144Evid10)({\n ...this._deleteModalParams(rowKeys),\n }),\n );\n }\n\n deleteModalCtaClicked(params: {\n ctaName: DeleteModalCta;\n rowKeys: string[];\n }) {\n this.reportBi(\n withoutDefaults(wixPatternsDeleteModalCtaClickedSrc144Evid11)({\n ...this._deleteModalParams(params.rowKeys),\n ctaName: params.ctaName,\n }),\n );\n }\n\n /** Shared fields for 144:10/11 — location is the row context menu, not bulk toolbar. */\n private _deleteModalParams(rowKeys: string[]) {\n const numItems = rowKeys.length;\n return {\n numItems,\n // Catalog: isSelectAll is true when numItems equals the list size.\n isSelectAll:\n numItems > 0 && numItems === this._state.collection.result.items.length,\n location: 'Row Context Menu',\n modalName: 'Delete rows',\n itemId: numItems === 1 ? rowKeys[0] : undefined,\n };\n }\n\n tryAgainClicked(actionName: RetryActionName) {\n this.reportBi(\n withoutDefaults(cairoTryAgainClicked)({\n actionName,\n // Schema spells the field this way.\n loaction: 'toast',\n }),\n );\n }\n\n /** Column key, field type, and row identity used on every cell-level event. */\n private _cellParams(cell: Cell): CellBiParams {\n return {\n key: cell.columnId,\n fieldType: this._fieldTypeOf(cell.columnId),\n itemId: cell.rowKey,\n itemIndex: this._state._toIndices(cell)?.row,\n };\n }\n\n /** The schema field type where the column came from a source, otherwise the\n * registered cell type. */\n private _fieldTypeOf(columnId: string): string | undefined {\n const column = this._state._columnMap.get(columnId) as\n | { field?: Field; cellType?: string }\n | undefined;\n return column?.field?.type ?? column?.cellType;\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_EditableTableState","require","exports","EditableTableState"],"sources":["../../../../src/state/EditableTable/index.ts"],"sourcesContent":["export { EditableTableState } from './EditableTableState';\nexport type {\n EditableTableStateParams,\n EditableTableStatePublicAPI,\n EditableTablePermissions,\n RemoveItemDisabledResult,\n} from './EditableTableState';\n\nexport type { EditableTableMutationHandlers } from './MutationState';\n\nexport type {\n Cell,\n ValidationResult,\n CellType,\n EditableColumn,\n CellTypeConfigMap,\n} from './types';\n"],"mappings":";;;;AAAA,IAAAA,mBAAA,GAAAC,OAAA;AAA0DC,OAAA,CAAAC,kBAAA,GAAAH,mBAAA,CAAAG,kBAAA","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_EditableTableState","require","exports","EditableTableState"],"sources":["../../../../src/state/EditableTable/index.ts"],"sourcesContent":["export { EditableTableState } from './EditableTableState';\nexport type {\n EditableTableStateParams,\n EditableTableStatePublicAPI,\n EditableTablePermissions,\n RemoveItemDisabledResult,\n CreateItemDisabledResult,\n} from './EditableTableState';\n\nexport type { EditableTableMutationHandlers } from './MutationState';\n\nexport type {\n Cell,\n ValidationResult,\n CellType,\n EditableColumn,\n CellTypeConfigMap,\n} from './types';\n"],"mappings":";;;;AAAA,IAAAA,mBAAA,GAAAC,OAAA;AAA0DC,OAAA,CAAAC,kBAAA,GAAAH,mBAAA,CAAAG,kBAAA","ignoreList":[]}
|
|
@@ -5,14 +5,14 @@ exports.vars = exports.style = exports.stVars = exports.st = exports.namespace =
|
|
|
5
5
|
var _stylableEsmRuntime = require("../../stylable-esm-runtime.js");
|
|
6
6
|
// @ts-nocheck
|
|
7
7
|
|
|
8
|
-
var _namespace_ = "
|
|
8
|
+
var _namespace_ = "FormPageHeader406693740";
|
|
9
9
|
var _style_ = _stylableEsmRuntime.classesRuntime.bind(null, _namespace_);
|
|
10
10
|
var cssStates = exports.cssStates = _stylableEsmRuntime.statesRuntime.bind(null, _namespace_);
|
|
11
11
|
var style = exports.style = _style_;
|
|
12
12
|
var st = exports.st = _style_;
|
|
13
13
|
var namespace = exports.namespace = _namespace_;
|
|
14
14
|
var classes = exports.classes = {
|
|
15
|
-
"root": "
|
|
15
|
+
"root": "FormPageHeader406693740__root"
|
|
16
16
|
};
|
|
17
17
|
var keyframes = exports.keyframes = {};
|
|
18
18
|
var layers = exports.layers = {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_stylableEsmRuntime","require","_namespace_","_style_","classesRuntime","bind","cssStates","exports","statesRuntime","style","st","namespace","classes","keyframes","layers","containers","stVars","vars"],"sources":["../../../../src/state/FormPage/FormPageHeader.st.css.ts"],"sourcesContent":["// @ts-nocheck\n\n\nimport { classesRuntime, statesRuntime } from \"../../stylable-esm-runtime.js\";\n\n\n\nvar _namespace_ = \"
|
|
1
|
+
{"version":3,"names":["_stylableEsmRuntime","require","_namespace_","_style_","classesRuntime","bind","cssStates","exports","statesRuntime","style","st","namespace","classes","keyframes","layers","containers","stVars","vars"],"sources":["../../../../src/state/FormPage/FormPageHeader.st.css.ts"],"sourcesContent":["// @ts-nocheck\n\n\nimport { classesRuntime, statesRuntime } from \"../../stylable-esm-runtime.js\";\n\n\n\nvar _namespace_ = \"FormPageHeader406693740\";\nvar _style_ = classesRuntime.bind(null, _namespace_);\n\nexport var cssStates = statesRuntime.bind(null, _namespace_);\nexport var style = _style_;\nexport var st: import(\"@stylable/runtime\").STFunction = _style_;\n\nexport var namespace = _namespace_;\nexport var classes = {\"root\":\"FormPageHeader406693740__root\"};\nexport var keyframes = {}; \nexport var layers = {};\nexport var containers = {};\nexport var stVars = {}; \nexport var vars = {}; \n\n\n\n\n"],"mappings":";;;;AAGA,IAAAA,mBAAA,GAAAC,OAAA;AAHA;;AAOA,IAAIC,WAAW,GAAG,yBAAyB;AAC3C,IAAIC,OAAO,GAAGC,kCAAc,CAACC,IAAI,CAAC,IAAI,EAAEH,WAAW,CAAC;AAE7C,IAAII,SAAS,GAAAC,OAAA,CAAAD,SAAA,GAAGE,iCAAa,CAACH,IAAI,CAAC,IAAI,EAAEH,WAAW,CAAC;AACrD,IAAIO,KAAK,GAAAF,OAAA,CAAAE,KAAA,GAAGN,OAAO;AACnB,IAAIO,EAA0C,GAAAH,OAAA,CAAAG,EAAA,GAAGP,OAAO;AAExD,IAAIQ,SAAS,GAAAJ,OAAA,CAAAI,SAAA,GAAGT,WAAW;AAC3B,IAAIU,OAAO,GAAAL,OAAA,CAAAK,OAAA,GAAG;EAAC,MAAM,EAAC;AAA+B,CAAC;AACtD,IAAIC,SAAS,GAAAN,OAAA,CAAAM,SAAA,GAAG,CAAC,CAAC;AAClB,IAAIC,MAAM,GAAAP,OAAA,CAAAO,MAAA,GAAG,CAAC,CAAC;AACf,IAAIC,UAAU,GAAAR,OAAA,CAAAQ,UAAA,GAAG,CAAC,CAAC;AACnB,IAAIC,MAAM,GAAAT,OAAA,CAAAS,MAAA,GAAG,CAAC,CAAC;AACf,IAAIC,IAAI,GAAAV,OAAA,CAAAU,IAAA,GAAG,CAAC,CAAC","ignoreList":[]}
|
|
@@ -69,7 +69,8 @@ class LayoutSwitchState {
|
|
|
69
69
|
dataCapsule: this.toolbar.dataCapsule,
|
|
70
70
|
componentType,
|
|
71
71
|
collection: this.collection,
|
|
72
|
-
options: enabledLayouts
|
|
72
|
+
options: enabledLayouts,
|
|
73
|
+
defaultViewType: params.defaultViewType
|
|
73
74
|
});
|
|
74
75
|
this.toolbar.layoutState = this;
|
|
75
76
|
(0, _mobx.makeObservable)(this, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_bexCore","require","_mobx","_EditableTable","_GridState","_TableState","_ToolbarCollectionState","_ViewTypeState","componentType","LayoutSwitchState","viewType","viewTypeState","v","runInAction","options","constructor","params","_defineProperty2","default","TaskState","collection","containerOverrides","toolbar","ToolbarCollectionState","container","reportBi","biParams","componentStatus","tableState","table","TableState","undefined","gridState","grid","GridState","spreadsheetState","spreadsheet","EditableTableState","enabledLayouts","filter","Boolean","ViewTypeState","dataCapsule","layoutState","makeObservable","computed","init","initTask","runOnce","status","promise","exports"],"sources":["../../../src/state/LayoutSwitchState.ts"],"sourcesContent":["import {\n CollectionOptimisticActions,\n CollectionState,\n FiltersMap,\n TaskState,\n WixPatternsContainer,\n WixPatternsContainerParams,\n} from '@wix/bex-core';\nimport { computed, makeObservable, runInAction } from 'mobx';\nimport {\n EditableTableState,\n EditableTablePermissions,\n EditableTableMutationHandlers,\n} from './EditableTable';\nimport { GridState } from './GridState';\nimport { ICollectionComponentState } from './ICollectionComponentState';\nimport { ILayoutSwitchState } from './ILayoutSwitchState';\nimport { TableState } from './TableState';\nimport { ToolbarCollectionState } from './ToolbarCollectionState';\nimport { ViewType, ViewTypeState } from './ViewTypeState';\n\nexport interface TableLayoutConfig {}\n\nexport interface GridLayoutConfig {}\n\nexport interface SpreadsheetLayoutConfig<T, F extends FiltersMap> {\n mutations: EditableTableMutationHandlers<T>;\n permissions?: EditableTablePermissions<T>;\n createOptimisticActions: (\n collection: CollectionState<T, F>,\n ) => CollectionOptimisticActions<T, F>;\n}\n\nexport interface LayoutSwitchStateParams<T, F extends FiltersMap> {\n collection: CollectionState<T, F>;\n container: WixPatternsContainer;\n containerOverrides: Partial<WixPatternsContainerParams>;\n table?: TableLayoutConfig;\n grid?: GridLayoutConfig;\n spreadsheet?: SpreadsheetLayoutConfig<T, F>;\n}\n\nconst componentType = 'LayoutSwitch';\n\nexport class LayoutSwitchState<T, F extends FiltersMap>\n implements ICollectionComponentState, ILayoutSwitchState<T, F>\n{\n readonly collection: CollectionState<T, F>;\n readonly toolbar: ToolbarCollectionState<T, F>;\n readonly containerOverrides: Partial<WixPatternsContainerParams>;\n readonly tableState: TableState<T, F> | undefined;\n readonly gridState: GridState<T, F> | undefined;\n readonly spreadsheetState: EditableTableState<T, F> | undefined;\n readonly viewTypeState: ViewTypeState;\n readonly initTask = new TaskState();\n\n get viewType(): ViewType {\n return this.viewTypeState.viewType;\n }\n\n set viewType(v: ViewType) {\n runInAction(() => {\n this.viewTypeState.viewType = v;\n });\n }\n\n get options(): ViewType[] {\n return this.viewTypeState.options;\n }\n\n constructor(params: LayoutSwitchStateParams<T, F>) {\n this.collection = params.collection;\n this.containerOverrides = params.containerOverrides;\n\n this.toolbar = new ToolbarCollectionState({\n componentType,\n collection: this.collection,\n container: params.container,\n reportBi: (biParams) =>\n params.container.reportBi({\n ...biParams,\n params: {\n ...biParams.params,\n componentStatus: this.viewTypeState.viewType,\n },\n }),\n });\n\n this.tableState = params.table\n ? new TableState({\n collection: this.collection,\n container: params.container,\n toolbar: this.toolbar,\n })\n : undefined;\n\n this.gridState = params.grid\n ? new GridState({\n collection: this.collection,\n container: params.container,\n toolbar: this.toolbar,\n })\n : undefined;\n\n this.spreadsheetState = params.spreadsheet\n ? new EditableTableState({\n collection: this.collection,\n container: params.container,\n toolbar: this.toolbar,\n ...params.spreadsheet,\n })\n : undefined;\n\n const enabledLayouts: ViewType[] = [\n params.table ? 'table' : null,\n params.grid ? 'grid' : null,\n params.spreadsheet ? 'spreadsheet' : null,\n ].filter(Boolean) as ViewType[];\n\n this.viewTypeState = new ViewTypeState({\n container: params.container,\n dataCapsule: this.toolbar.dataCapsule,\n componentType,\n collection: this.collection,\n options: enabledLayouts,\n });\n\n this.toolbar.layoutState = this;\n\n makeObservable(this, {\n viewType: computed,\n options: computed,\n });\n }\n\n init() {\n const { viewTypeState, initTask } = this;\n viewTypeState.init();\n\n initTask.runOnce(async () => {\n viewTypeState.initTask.runOnce();\n await viewTypeState.initTask.status.promise;\n });\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAQA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,cAAA,GAAAF,OAAA;AAKA,IAAAG,UAAA,GAAAH,OAAA;AAGA,IAAAI,WAAA,GAAAJ,OAAA;AACA,IAAAK,uBAAA,GAAAL,OAAA;AACA,IAAAM,cAAA,GAAAN,OAAA;
|
|
1
|
+
{"version":3,"names":["_bexCore","require","_mobx","_EditableTable","_GridState","_TableState","_ToolbarCollectionState","_ViewTypeState","componentType","LayoutSwitchState","viewType","viewTypeState","v","runInAction","options","constructor","params","_defineProperty2","default","TaskState","collection","containerOverrides","toolbar","ToolbarCollectionState","container","reportBi","biParams","componentStatus","tableState","table","TableState","undefined","gridState","grid","GridState","spreadsheetState","spreadsheet","EditableTableState","enabledLayouts","filter","Boolean","ViewTypeState","dataCapsule","defaultViewType","layoutState","makeObservable","computed","init","initTask","runOnce","status","promise","exports"],"sources":["../../../src/state/LayoutSwitchState.ts"],"sourcesContent":["import {\n CollectionOptimisticActions,\n CollectionState,\n FiltersMap,\n TaskState,\n WixPatternsContainer,\n WixPatternsContainerParams,\n} from '@wix/bex-core';\nimport { computed, makeObservable, runInAction } from 'mobx';\nimport {\n EditableTableState,\n EditableTablePermissions,\n EditableTableMutationHandlers,\n} from './EditableTable';\nimport { GridState } from './GridState';\nimport { ICollectionComponentState } from './ICollectionComponentState';\nimport { ILayoutSwitchState } from './ILayoutSwitchState';\nimport { TableState } from './TableState';\nimport { ToolbarCollectionState } from './ToolbarCollectionState';\nimport { ViewType, ViewTypeState } from './ViewTypeState';\n\nexport interface TableLayoutConfig {}\n\nexport interface GridLayoutConfig {}\n\nexport interface SpreadsheetLayoutConfig<T, F extends FiltersMap> {\n mutations: EditableTableMutationHandlers<T>;\n permissions?: EditableTablePermissions<T>;\n createOptimisticActions: (\n collection: CollectionState<T, F>,\n ) => CollectionOptimisticActions<T, F>;\n}\n\nexport interface LayoutSwitchStateParams<T, F extends FiltersMap> {\n collection: CollectionState<T, F>;\n container: WixPatternsContainer;\n containerOverrides: Partial<WixPatternsContainerParams>;\n table?: TableLayoutConfig;\n grid?: GridLayoutConfig;\n spreadsheet?: SpreadsheetLayoutConfig<T, F>;\n /** Layout shown while the user has no saved choice. Ignored when not enabled.\n * Read on construction, so later changes have no effect. */\n defaultViewType?: ViewType;\n}\n\nconst componentType = 'LayoutSwitch';\n\nexport class LayoutSwitchState<T, F extends FiltersMap>\n implements ICollectionComponentState, ILayoutSwitchState<T, F>\n{\n readonly collection: CollectionState<T, F>;\n readonly toolbar: ToolbarCollectionState<T, F>;\n readonly containerOverrides: Partial<WixPatternsContainerParams>;\n readonly tableState: TableState<T, F> | undefined;\n readonly gridState: GridState<T, F> | undefined;\n readonly spreadsheetState: EditableTableState<T, F> | undefined;\n readonly viewTypeState: ViewTypeState;\n readonly initTask = new TaskState();\n\n get viewType(): ViewType {\n return this.viewTypeState.viewType;\n }\n\n set viewType(v: ViewType) {\n runInAction(() => {\n this.viewTypeState.viewType = v;\n });\n }\n\n get options(): ViewType[] {\n return this.viewTypeState.options;\n }\n\n constructor(params: LayoutSwitchStateParams<T, F>) {\n this.collection = params.collection;\n this.containerOverrides = params.containerOverrides;\n\n this.toolbar = new ToolbarCollectionState({\n componentType,\n collection: this.collection,\n container: params.container,\n reportBi: (biParams) =>\n params.container.reportBi({\n ...biParams,\n params: {\n ...biParams.params,\n componentStatus: this.viewTypeState.viewType,\n },\n }),\n });\n\n this.tableState = params.table\n ? new TableState({\n collection: this.collection,\n container: params.container,\n toolbar: this.toolbar,\n })\n : undefined;\n\n this.gridState = params.grid\n ? new GridState({\n collection: this.collection,\n container: params.container,\n toolbar: this.toolbar,\n })\n : undefined;\n\n this.spreadsheetState = params.spreadsheet\n ? new EditableTableState({\n collection: this.collection,\n container: params.container,\n toolbar: this.toolbar,\n ...params.spreadsheet,\n })\n : undefined;\n\n const enabledLayouts: ViewType[] = [\n params.table ? 'table' : null,\n params.grid ? 'grid' : null,\n params.spreadsheet ? 'spreadsheet' : null,\n ].filter(Boolean) as ViewType[];\n\n this.viewTypeState = new ViewTypeState({\n container: params.container,\n dataCapsule: this.toolbar.dataCapsule,\n componentType,\n collection: this.collection,\n options: enabledLayouts,\n defaultViewType: params.defaultViewType,\n });\n\n this.toolbar.layoutState = this;\n\n makeObservable(this, {\n viewType: computed,\n options: computed,\n });\n }\n\n init() {\n const { viewTypeState, initTask } = this;\n viewTypeState.init();\n\n initTask.runOnce(async () => {\n viewTypeState.initTask.runOnce();\n await viewTypeState.initTask.status.promise;\n });\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_ToolbarCollectionState","require","_TableVirtualState","_LoadingRowState","TableState","constructor","params","_defineProperty2","default","toolbar","retryErrorState","items","onAddItemActionComplete","columnId","forceDirection","collection","sort","id","ToolbarCollectionState","container","componentType","virtual","TableVirtualState","table","loadingRowState","LoadingRowState","visibleColumns","selectedOrderedColumnsOrAll","tableState","itemsContentWidth","itemsContentRect","rect","width","itemsToRenderCount","result","size","init","keyedItems","getStickyColumnsCount","_customColumnsState$d","horizontalScroll","stickyColumns","tableDragAndDropState","customColumnsState","customColumnsProps","customColumnsStateInitialized","stickySelectionColumn","showSelection","customColumnsIsEffective","reorderDisabledColumnsIsEffective","dragAndDrop","orderedColumnsByReorderDisabled","reorderDisabled","length","checkboxColumnStickyCompat","showEmptyState","multi","hasAvailableItems","resultOriginQuerySearch","hasNonPersistentActiveFilters","showErrorState","errorStatus","showLoadingState","initTask","status","isIdle","isLoading","exports"],"sources":["../../../src/state/TableState.ts"],"sourcesContent":["import {\n CollectionState,\n FiltersMap,\n SortOrder,\n WixPatternsContainer,\n} from '@wix/bex-core';\nimport {\n ToolbarCollectionState,\n ToolbarCollectionStateParamsInitParams,\n} from './ToolbarCollectionState';\nimport { TableVirtualState } from './TableVirtualState';\nimport { DragAndDropState } from '../components/DragAndDrop';\nimport { ICollectionComponentState } from './ICollectionComponentState';\nimport { LoadingRowState } from '../components/LoadingRow/LoadingRowState';\n\nexport interface TableStateParams<T, F extends FiltersMap> {\n readonly collection: CollectionState<T, F>;\n readonly container: WixPatternsContainer;\n readonly toolbar?: ToolbarCollectionState<T, F>;\n}\n\ninterface TableDragAndDropStateBase<T, F extends FiltersMap> {\n getStickyColumnsCount: (params: { stickyColumns: number }) => number;\n init: () => void;\n dnd: DragAndDropState<T, F>;\n}\n\nexport interface TableStateInitParams\n extends ToolbarCollectionStateParamsInitParams {\n hasMultiLevelSorting?: boolean;\n}\n\nexport interface TableStatePublicAPI<T, F extends FiltersMap> {\n /**\n * Underlying [CollectionState](./?path=/story/common-state--collectionstate) instance\n * @external\n */\n readonly collection: CollectionState<T, F>;\n /**\n * Underlying [ToolbarCollectionState](./?path=/story/common-state--toolbarcollectionstate) instance\n * @external\n */\n readonly toolbar: ToolbarCollectionState<T, F>;\n /**\n * Reset active filters & sorting and adds new items to the collection.\n * @external\n * @param items - new items to add to the collection\n */\n onAddItemActionComplete(items: T[]): void;\n\n /**\n * Visible columns as selected via [CustomColumns](./?path=/story/features-display--customcolumns)\n * @external\n */\n readonly visibleColumns: { id: string }[];\n\n /**\n * Sorts the collection by a specified column and optional sort direction.\n * @external\n */\n sort: (columnId: string, params: { forceDirection?: SortOrder }) => void;\n}\n\nexport class TableState<T, F extends FiltersMap>\n implements ICollectionComponentState, TableStatePublicAPI<T, F>\n{\n readonly toolbar;\n readonly virtual;\n readonly loadingRowState;\n\n tableDragAndDropState: TableDragAndDropStateBase<T, F> | null = null;\n\n /** The sticky table header element (column headers row) */\n headerElement: HTMLElement | null = null;\n\n constructor(params: TableStateParams<T, F>) {\n this.toolbar =\n params.toolbar ??\n new ToolbarCollectionState({\n collection: params.collection,\n container: params.container,\n componentType: 'Table',\n });\n\n this.virtual = new TableVirtualState({\n table: this,\n });\n\n this.loadingRowState = new LoadingRowState();\n }\n\n get visibleColumns() {\n return this.toolbar.selectedOrderedColumnsOrAll;\n }\n\n // backwards compat\n get table() {\n return this.toolbar;\n }\n\n get collection() {\n return this.table.collection;\n }\n\n get tableState() {\n return this;\n }\n\n get itemsContentWidth() {\n return this.toolbar.itemsContentRect.rect.width ?? 0;\n }\n\n get itemsToRenderCount() {\n return this.collection.result.size;\n }\n\n init(params: TableStateInitParams) {\n return this.table.init(params);\n }\n\n get keyedItems() {\n return this.collection.result.keyedItems;\n }\n\n getStickyColumnsCount(params: {\n stickyColumns?: number;\n horizontalScroll?: boolean;\n showSelection?: boolean;\n stickySelectionColumn?: boolean;\n }) {\n const { horizontalScroll } = params;\n\n if (!horizontalScroll) {\n return params.stickyColumns;\n }\n\n const { tableDragAndDropState, toolbar } = this;\n\n const {\n customColumnsState,\n customColumnsProps,\n customColumnsStateInitialized,\n } = toolbar;\n\n const { stickySelectionColumn, showSelection } = params;\n\n let stickyColumns = params.stickyColumns ?? 0;\n\n const customColumnsIsEffective =\n customColumnsProps && customColumnsState && customColumnsStateInitialized;\n\n const reorderDisabledColumnsIsEffective =\n !!customColumnsState?.dragAndDrop?.orderedColumnsByReorderDisabled\n .reorderDisabled?.length;\n\n if (customColumnsIsEffective) {\n stickyColumns = customColumnsState.getStickyColumnsCount({\n ...params,\n stickyColumns,\n });\n }\n\n if (tableDragAndDropState) {\n stickyColumns = tableDragAndDropState.getStickyColumnsCount({\n ...params,\n stickyColumns,\n });\n }\n\n const checkboxColumnStickyCompat =\n reorderDisabledColumnsIsEffective ||\n stickySelectionColumn ||\n tableDragAndDropState != null;\n\n if (showSelection && checkboxColumnStickyCompat) {\n stickyColumns += 1;\n }\n\n return stickyColumns;\n }\n\n get showEmptyState() {\n return this.toolbar.multi.showEmptyState;\n }\n\n get hasAvailableItems() {\n return this.toolbar.multi.hasAvailableItems;\n }\n\n get resultOriginQuerySearch() {\n return this.toolbar.multi.resultOriginQuerySearch;\n }\n\n get hasNonPersistentActiveFilters() {\n return this.toolbar.multi.hasNonPersistentActiveFilters;\n }\n\n get showErrorState() {\n return this.toolbar.multi.showErrorState;\n }\n\n get errorStatus() {\n return this.toolbar.multi.errorStatus;\n }\n\n get showLoadingState() {\n const { initTask, toolbar } = this;\n return (\n initTask.status.isIdle ||\n initTask.status.isLoading ||\n toolbar.multi.showLoadingState\n );\n }\n\n get initTask() {\n return this.toolbar.initTask;\n }\n\n retryErrorState = () => this.toolbar.retryErrorState();\n\n onAddItemActionComplete = async (items: T[]) => {\n return this.toolbar.onAddItemActionComplete(items);\n };\n\n sort = (\n columnId: string,\n { forceDirection }: { forceDirection?: SortOrder } = {},\n ) => {\n this.collection.sort({ id: columnId }, { forceDirection });\n };\n}\n"],"mappings":";;;;;;AAMA,IAAAA,uBAAA,GAAAC,OAAA;AAIA,IAAAC,kBAAA,GAAAD,OAAA;AAGA,IAAAE,gBAAA,GAAAF,OAAA;AAkDO,MAAMG,UAAU,CAEvB;EAUEC,WAAWA,CAACC,MAA8B,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA,iCALoB,IAAI;IAEpE;IAAA,IAAAD,gBAAA,CAAAC,OAAA,yBACoC,IAAI;IAAA,IAAAD,gBAAA,CAAAC,OAAA,2BAiJtB,MAAM,IAAI,CAACC,OAAO,CAACC,eAAe,CAAC,CAAC;IAAA,IAAAH,gBAAA,CAAAC,OAAA,mCAE5B,MAAOG,KAAU,IAAK;MAC9C,OAAO,IAAI,CAACF,OAAO,CAACG,uBAAuB,CAACD,KAAK,CAAC;IACpD,CAAC;IAAA,IAAAJ,gBAAA,CAAAC,OAAA,gBAEM,CACLK,QAAgB,EAChB;MAAEC;IAA+C,CAAC,GAAG,CAAC,CAAC,KACpD;MACH,IAAI,CAACC,UAAU,CAACC,IAAI,CAAC;QAAEC,EAAE,EAAEJ;MAAS,CAAC,EAAE;QAAEC;MAAe,CAAC,CAAC;IAC5D,CAAC;IAzJC,IAAI,CAACL,OAAO,GACVH,MAAM,CAACG,OAAO,IACd,IAAIS,8CAAsB,CAAC;MACzBH,UAAU,EAAET,MAAM,CAACS,UAAU;MAC7BI,SAAS,EAAEb,MAAM,CAACa,SAAS;MAC3BC,aAAa,EAAE;IACjB,CAAC,CAAC;IAEJ,IAAI,CAACC,OAAO,GAAG,IAAIC,oCAAiB,CAAC;MACnCC,KAAK,EAAE;IACT,CAAC,CAAC;IAEF,IAAI,CAACC,eAAe,GAAG,IAAIC,gCAAe,CAAC,CAAC;EAC9C;EAEA,IAAIC,cAAcA,CAAA,EAAG;IACnB,OAAO,IAAI,CAACjB,OAAO,CAACkB,2BAA2B;EACjD;;EAEA;EACA,IAAIJ,KAAKA,CAAA,EAAG;IACV,OAAO,IAAI,CAACd,OAAO;EACrB;EAEA,IAAIM,UAAUA,CAAA,EAAG;IACf,OAAO,IAAI,CAACQ,KAAK,CAACR,UAAU;EAC9B;EAEA,IAAIa,UAAUA,CAAA,EAAG;IACf,OAAO,IAAI;EACb;EAEA,IAAIC,iBAAiBA,CAAA,EAAG;IACtB,OAAO,IAAI,CAACpB,OAAO,CAACqB,gBAAgB,CAACC,IAAI,CAACC,KAAK,IAAI,CAAC;EACtD;EAEA,IAAIC,kBAAkBA,CAAA,EAAG;IACvB,OAAO,IAAI,CAAClB,UAAU,CAACmB,MAAM,CAACC,IAAI;EACpC;EAEAC,IAAIA,CAAC9B,MAA4B,EAAE;IACjC,OAAO,IAAI,CAACiB,KAAK,CAACa,IAAI,CAAC9B,MAAM,CAAC;EAChC;EAEA,IAAI+B,UAAUA,CAAA,EAAG;IACf,OAAO,IAAI,CAACtB,UAAU,CAACmB,MAAM,CAACG,UAAU;EAC1C;EAEAC,qBAAqBA,CAAChC,MAKrB,EAAE;IAAA,IAAAiC,qBAAA;IACD,MAAM;MAAEC;IAAiB,CAAC,GAAGlC,MAAM;IAEnC,IAAI,CAACkC,gBAAgB,EAAE;MACrB,OAAOlC,MAAM,CAACmC,aAAa;IAC7B;IAEA,MAAM;MAAEC,qBAAqB;MAAEjC;IAAQ,CAAC,GAAG,IAAI;IAE/C,MAAM;MACJkC,kBAAkB;MAClBC,kBAAkB;MAClBC;IACF,CAAC,GAAGpC,OAAO;IAEX,MAAM;MAAEqC,qBAAqB;MAAEC;IAAc,CAAC,GAAGzC,MAAM;IAEvD,IAAImC,aAAa,GAAGnC,MAAM,CAACmC,aAAa,IAAI,CAAC;IAE7C,MAAMO,wBAAwB,GAC5BJ,kBAAkB,IAAID,kBAAkB,IAAIE,6BAA6B;IAE3E,MAAMI,iCAAiC,GACrC,CAAC,EAACN,kBAAkB,aAAAJ,qBAAA,GAAlBI,kBAAkB,CAAEO,WAAW,cAAAX,qBAAA,GAA/BA,qBAAA,CAAiCY,+BAA+B,CAC/DC,eAAe,aADhBb,qBAAA,CACkBc,MAAM;IAE5B,IAAIL,wBAAwB,EAAE;MAC5BP,aAAa,GAAGE,kBAAkB,CAACL,qBAAqB,CAAC;QACvD,GAAGhC,MAAM;QACTmC;MACF,CAAC,CAAC;IACJ;IAEA,IAAIC,qBAAqB,EAAE;MACzBD,aAAa,GAAGC,qBAAqB,CAACJ,qBAAqB,CAAC;QAC1D,GAAGhC,MAAM;QACTmC;MACF,CAAC,CAAC;IACJ;IAEA,MAAMa,0BAA0B,GAC9BL,iCAAiC,IACjCH,qBAAqB,IACrBJ,qBAAqB,IAAI,IAAI;IAE/B,IAAIK,aAAa,IAAIO,0BAA0B,EAAE;MAC/Cb,aAAa,IAAI,CAAC;IACpB;IAEA,OAAOA,aAAa;EACtB;EAEA,IAAIc,cAAcA,CAAA,EAAG;IACnB,OAAO,IAAI,CAAC9C,OAAO,CAAC+C,KAAK,CAACD,cAAc;EAC1C;EAEA,IAAIE,iBAAiBA,CAAA,EAAG;IACtB,OAAO,IAAI,CAAChD,OAAO,CAAC+C,KAAK,CAACC,iBAAiB;EAC7C;EAEA,IAAIC,uBAAuBA,CAAA,EAAG;IAC5B,OAAO,IAAI,CAACjD,OAAO,CAAC+C,KAAK,CAACE,uBAAuB;EACnD;EAEA,IAAIC,6BAA6BA,CAAA,EAAG;IAClC,OAAO,IAAI,CAAClD,OAAO,CAAC+C,KAAK,CAACG,6BAA6B;EACzD;EAEA,IAAIC,cAAcA,CAAA,EAAG;IACnB,OAAO,IAAI,CAACnD,OAAO,CAAC+C,KAAK,CAACI,cAAc;EAC1C;EAEA,IAAIC,WAAWA,CAAA,EAAG;IAChB,OAAO,IAAI,CAACpD,OAAO,CAAC+C,KAAK,CAACK,WAAW;EACvC;EAEA,IAAIC,gBAAgBA,CAAA,EAAG;IACrB,MAAM;MAAEC,QAAQ;MAAEtD;IAAQ,CAAC,GAAG,IAAI;IAClC,OACEsD,QAAQ,CAACC,MAAM,CAACC,MAAM,IACtBF,QAAQ,CAACC,MAAM,CAACE,SAAS,IACzBzD,OAAO,CAAC+C,KAAK,CAACM,gBAAgB;EAElC;EAEA,IAAIC,QAAQA,CAAA,EAAG;IACb,OAAO,IAAI,CAACtD,OAAO,CAACsD,QAAQ;EAC9B;AAcF;AAACI,OAAA,CAAA/D,UAAA,GAAAA,UAAA","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_ToolbarCollectionState","require","_TableVirtualState","_LoadingRowState","TableState","constructor","params","_defineProperty2","default","toolbar","retryErrorState","items","onAddItemActionComplete","columnId","forceDirection","collection","sort","id","ToolbarCollectionState","container","componentType","virtual","TableVirtualState","table","loadingRowState","LoadingRowState","visibleColumns","selectedOrderedColumnsOrAll","tableState","itemsContentWidth","itemsContentRect","rect","width","itemsToRenderCount","result","size","init","keyedItems","getStickyColumnsCount","_customColumnsState$d","horizontalScroll","stickyColumns","tableDragAndDropState","customColumnsState","customColumnsProps","customColumnsStateInitialized","stickySelectionColumn","showSelection","customColumnsIsEffective","reorderDisabledColumnsIsEffective","dragAndDrop","orderedColumnsByReorderDisabled","reorderDisabled","length","checkboxColumnStickyCompat","showEmptyState","multi","hasAvailableItems","resultOriginQuerySearch","hasNonPersistentActiveFilters","showErrorState","errorStatus","showLoadingState","initTask","status","isIdle","isLoading","exports"],"sources":["../../../src/state/TableState.ts"],"sourcesContent":["import {\n CollectionState,\n FiltersMap,\n SortOrder,\n WixPatternsContainer,\n} from '@wix/bex-core';\nimport {\n ToolbarCollectionState,\n ToolbarCollectionStateParamsInitParams,\n} from './ToolbarCollectionState';\nimport { TableVirtualState } from './TableVirtualState';\nimport { DragAndDropState } from '../components/DragAndDrop';\nimport { ICollectionComponentState } from './ICollectionComponentState';\nimport { LoadingRowState } from '../components/LoadingRow/LoadingRowState';\n\nexport interface TableStateParams<T, F extends FiltersMap> {\n readonly collection: CollectionState<T, F>;\n readonly container: WixPatternsContainer;\n readonly toolbar?: ToolbarCollectionState<T, F>;\n}\n\ninterface TableDragAndDropStateBase<T, F extends FiltersMap> {\n getStickyColumnsCount: (params: { stickyColumns: number }) => number;\n init: () => void;\n dnd: DragAndDropState<T, F>;\n}\n\nexport interface TableStateInitParams\n extends ToolbarCollectionStateParamsInitParams {\n hasMultiLevelSorting?: boolean;\n}\n\nexport interface TableStatePublicAPI<T, F extends FiltersMap> {\n /**\n * Underlying [CollectionState](./?path=/story/common-state--collectionstate) instance\n * @external\n */\n readonly collection: CollectionState<T, F>;\n /**\n * Underlying [ToolbarCollectionState](./?path=/story/common-state--toolbarcollectionstate) instance\n * @external\n */\n readonly toolbar: ToolbarCollectionState<T, F>;\n /**\n * Reset active filters & sorting and adds new items to the collection.\n * @external\n * @param items - new items to add to the collection\n */\n onAddItemActionComplete(items: T[]): void;\n\n /**\n * Visible columns as selected via [CustomColumns](./?path=/story/features-display-custom-columns--customcolumns)\n * @external\n */\n readonly visibleColumns: { id: string }[];\n\n /**\n * Sorts the collection by a specified column and optional sort direction.\n * @external\n */\n sort: (columnId: string, params: { forceDirection?: SortOrder }) => void;\n}\n\nexport class TableState<T, F extends FiltersMap>\n implements ICollectionComponentState, TableStatePublicAPI<T, F>\n{\n readonly toolbar;\n readonly virtual;\n readonly loadingRowState;\n\n tableDragAndDropState: TableDragAndDropStateBase<T, F> | null = null;\n\n /** The sticky table header element (column headers row) */\n headerElement: HTMLElement | null = null;\n\n constructor(params: TableStateParams<T, F>) {\n this.toolbar =\n params.toolbar ??\n new ToolbarCollectionState({\n collection: params.collection,\n container: params.container,\n componentType: 'Table',\n });\n\n this.virtual = new TableVirtualState({\n table: this,\n });\n\n this.loadingRowState = new LoadingRowState();\n }\n\n get visibleColumns() {\n return this.toolbar.selectedOrderedColumnsOrAll;\n }\n\n // backwards compat\n get table() {\n return this.toolbar;\n }\n\n get collection() {\n return this.table.collection;\n }\n\n get tableState() {\n return this;\n }\n\n get itemsContentWidth() {\n return this.toolbar.itemsContentRect.rect.width ?? 0;\n }\n\n get itemsToRenderCount() {\n return this.collection.result.size;\n }\n\n init(params: TableStateInitParams) {\n return this.table.init(params);\n }\n\n get keyedItems() {\n return this.collection.result.keyedItems;\n }\n\n getStickyColumnsCount(params: {\n stickyColumns?: number;\n horizontalScroll?: boolean;\n showSelection?: boolean;\n stickySelectionColumn?: boolean;\n }) {\n const { horizontalScroll } = params;\n\n if (!horizontalScroll) {\n return params.stickyColumns;\n }\n\n const { tableDragAndDropState, toolbar } = this;\n\n const {\n customColumnsState,\n customColumnsProps,\n customColumnsStateInitialized,\n } = toolbar;\n\n const { stickySelectionColumn, showSelection } = params;\n\n let stickyColumns = params.stickyColumns ?? 0;\n\n const customColumnsIsEffective =\n customColumnsProps && customColumnsState && customColumnsStateInitialized;\n\n const reorderDisabledColumnsIsEffective =\n !!customColumnsState?.dragAndDrop?.orderedColumnsByReorderDisabled\n .reorderDisabled?.length;\n\n if (customColumnsIsEffective) {\n stickyColumns = customColumnsState.getStickyColumnsCount({\n ...params,\n stickyColumns,\n });\n }\n\n if (tableDragAndDropState) {\n stickyColumns = tableDragAndDropState.getStickyColumnsCount({\n ...params,\n stickyColumns,\n });\n }\n\n const checkboxColumnStickyCompat =\n reorderDisabledColumnsIsEffective ||\n stickySelectionColumn ||\n tableDragAndDropState != null;\n\n if (showSelection && checkboxColumnStickyCompat) {\n stickyColumns += 1;\n }\n\n return stickyColumns;\n }\n\n get showEmptyState() {\n return this.toolbar.multi.showEmptyState;\n }\n\n get hasAvailableItems() {\n return this.toolbar.multi.hasAvailableItems;\n }\n\n get resultOriginQuerySearch() {\n return this.toolbar.multi.resultOriginQuerySearch;\n }\n\n get hasNonPersistentActiveFilters() {\n return this.toolbar.multi.hasNonPersistentActiveFilters;\n }\n\n get showErrorState() {\n return this.toolbar.multi.showErrorState;\n }\n\n get errorStatus() {\n return this.toolbar.multi.errorStatus;\n }\n\n get showLoadingState() {\n const { initTask, toolbar } = this;\n return (\n initTask.status.isIdle ||\n initTask.status.isLoading ||\n toolbar.multi.showLoadingState\n );\n }\n\n get initTask() {\n return this.toolbar.initTask;\n }\n\n retryErrorState = () => this.toolbar.retryErrorState();\n\n onAddItemActionComplete = async (items: T[]) => {\n return this.toolbar.onAddItemActionComplete(items);\n };\n\n sort = (\n columnId: string,\n { forceDirection }: { forceDirection?: SortOrder } = {},\n ) => {\n this.collection.sort({ id: columnId }, { forceDirection });\n };\n}\n"],"mappings":";;;;;;AAMA,IAAAA,uBAAA,GAAAC,OAAA;AAIA,IAAAC,kBAAA,GAAAD,OAAA;AAGA,IAAAE,gBAAA,GAAAF,OAAA;AAkDO,MAAMG,UAAU,CAEvB;EAUEC,WAAWA,CAACC,MAA8B,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA,iCALoB,IAAI;IAEpE;IAAA,IAAAD,gBAAA,CAAAC,OAAA,yBACoC,IAAI;IAAA,IAAAD,gBAAA,CAAAC,OAAA,2BAiJtB,MAAM,IAAI,CAACC,OAAO,CAACC,eAAe,CAAC,CAAC;IAAA,IAAAH,gBAAA,CAAAC,OAAA,mCAE5B,MAAOG,KAAU,IAAK;MAC9C,OAAO,IAAI,CAACF,OAAO,CAACG,uBAAuB,CAACD,KAAK,CAAC;IACpD,CAAC;IAAA,IAAAJ,gBAAA,CAAAC,OAAA,gBAEM,CACLK,QAAgB,EAChB;MAAEC;IAA+C,CAAC,GAAG,CAAC,CAAC,KACpD;MACH,IAAI,CAACC,UAAU,CAACC,IAAI,CAAC;QAAEC,EAAE,EAAEJ;MAAS,CAAC,EAAE;QAAEC;MAAe,CAAC,CAAC;IAC5D,CAAC;IAzJC,IAAI,CAACL,OAAO,GACVH,MAAM,CAACG,OAAO,IACd,IAAIS,8CAAsB,CAAC;MACzBH,UAAU,EAAET,MAAM,CAACS,UAAU;MAC7BI,SAAS,EAAEb,MAAM,CAACa,SAAS;MAC3BC,aAAa,EAAE;IACjB,CAAC,CAAC;IAEJ,IAAI,CAACC,OAAO,GAAG,IAAIC,oCAAiB,CAAC;MACnCC,KAAK,EAAE;IACT,CAAC,CAAC;IAEF,IAAI,CAACC,eAAe,GAAG,IAAIC,gCAAe,CAAC,CAAC;EAC9C;EAEA,IAAIC,cAAcA,CAAA,EAAG;IACnB,OAAO,IAAI,CAACjB,OAAO,CAACkB,2BAA2B;EACjD;;EAEA;EACA,IAAIJ,KAAKA,CAAA,EAAG;IACV,OAAO,IAAI,CAACd,OAAO;EACrB;EAEA,IAAIM,UAAUA,CAAA,EAAG;IACf,OAAO,IAAI,CAACQ,KAAK,CAACR,UAAU;EAC9B;EAEA,IAAIa,UAAUA,CAAA,EAAG;IACf,OAAO,IAAI;EACb;EAEA,IAAIC,iBAAiBA,CAAA,EAAG;IACtB,OAAO,IAAI,CAACpB,OAAO,CAACqB,gBAAgB,CAACC,IAAI,CAACC,KAAK,IAAI,CAAC;EACtD;EAEA,IAAIC,kBAAkBA,CAAA,EAAG;IACvB,OAAO,IAAI,CAAClB,UAAU,CAACmB,MAAM,CAACC,IAAI;EACpC;EAEAC,IAAIA,CAAC9B,MAA4B,EAAE;IACjC,OAAO,IAAI,CAACiB,KAAK,CAACa,IAAI,CAAC9B,MAAM,CAAC;EAChC;EAEA,IAAI+B,UAAUA,CAAA,EAAG;IACf,OAAO,IAAI,CAACtB,UAAU,CAACmB,MAAM,CAACG,UAAU;EAC1C;EAEAC,qBAAqBA,CAAChC,MAKrB,EAAE;IAAA,IAAAiC,qBAAA;IACD,MAAM;MAAEC;IAAiB,CAAC,GAAGlC,MAAM;IAEnC,IAAI,CAACkC,gBAAgB,EAAE;MACrB,OAAOlC,MAAM,CAACmC,aAAa;IAC7B;IAEA,MAAM;MAAEC,qBAAqB;MAAEjC;IAAQ,CAAC,GAAG,IAAI;IAE/C,MAAM;MACJkC,kBAAkB;MAClBC,kBAAkB;MAClBC;IACF,CAAC,GAAGpC,OAAO;IAEX,MAAM;MAAEqC,qBAAqB;MAAEC;IAAc,CAAC,GAAGzC,MAAM;IAEvD,IAAImC,aAAa,GAAGnC,MAAM,CAACmC,aAAa,IAAI,CAAC;IAE7C,MAAMO,wBAAwB,GAC5BJ,kBAAkB,IAAID,kBAAkB,IAAIE,6BAA6B;IAE3E,MAAMI,iCAAiC,GACrC,CAAC,EAACN,kBAAkB,aAAAJ,qBAAA,GAAlBI,kBAAkB,CAAEO,WAAW,cAAAX,qBAAA,GAA/BA,qBAAA,CAAiCY,+BAA+B,CAC/DC,eAAe,aADhBb,qBAAA,CACkBc,MAAM;IAE5B,IAAIL,wBAAwB,EAAE;MAC5BP,aAAa,GAAGE,kBAAkB,CAACL,qBAAqB,CAAC;QACvD,GAAGhC,MAAM;QACTmC;MACF,CAAC,CAAC;IACJ;IAEA,IAAIC,qBAAqB,EAAE;MACzBD,aAAa,GAAGC,qBAAqB,CAACJ,qBAAqB,CAAC;QAC1D,GAAGhC,MAAM;QACTmC;MACF,CAAC,CAAC;IACJ;IAEA,MAAMa,0BAA0B,GAC9BL,iCAAiC,IACjCH,qBAAqB,IACrBJ,qBAAqB,IAAI,IAAI;IAE/B,IAAIK,aAAa,IAAIO,0BAA0B,EAAE;MAC/Cb,aAAa,IAAI,CAAC;IACpB;IAEA,OAAOA,aAAa;EACtB;EAEA,IAAIc,cAAcA,CAAA,EAAG;IACnB,OAAO,IAAI,CAAC9C,OAAO,CAAC+C,KAAK,CAACD,cAAc;EAC1C;EAEA,IAAIE,iBAAiBA,CAAA,EAAG;IACtB,OAAO,IAAI,CAAChD,OAAO,CAAC+C,KAAK,CAACC,iBAAiB;EAC7C;EAEA,IAAIC,uBAAuBA,CAAA,EAAG;IAC5B,OAAO,IAAI,CAACjD,OAAO,CAAC+C,KAAK,CAACE,uBAAuB;EACnD;EAEA,IAAIC,6BAA6BA,CAAA,EAAG;IAClC,OAAO,IAAI,CAAClD,OAAO,CAAC+C,KAAK,CAACG,6BAA6B;EACzD;EAEA,IAAIC,cAAcA,CAAA,EAAG;IACnB,OAAO,IAAI,CAACnD,OAAO,CAAC+C,KAAK,CAACI,cAAc;EAC1C;EAEA,IAAIC,WAAWA,CAAA,EAAG;IAChB,OAAO,IAAI,CAACpD,OAAO,CAAC+C,KAAK,CAACK,WAAW;EACvC;EAEA,IAAIC,gBAAgBA,CAAA,EAAG;IACrB,MAAM;MAAEC,QAAQ;MAAEtD;IAAQ,CAAC,GAAG,IAAI;IAClC,OACEsD,QAAQ,CAACC,MAAM,CAACC,MAAM,IACtBF,QAAQ,CAACC,MAAM,CAACE,SAAS,IACzBzD,OAAO,CAAC+C,KAAK,CAACM,gBAAgB;EAElC;EAEA,IAAIC,QAAQA,CAAA,EAAG;IACb,OAAO,IAAI,CAACtD,OAAO,CAACsD,QAAQ;EAC9B;AAcF;AAACI,OAAA,CAAA/D,UAAA,GAAAA,UAAA","ignoreList":[]}
|
|
@@ -787,12 +787,17 @@ class ToolbarCollectionState {
|
|
|
787
787
|
const {
|
|
788
788
|
collection: {
|
|
789
789
|
query
|
|
790
|
-
}
|
|
790
|
+
},
|
|
791
|
+
_featureColumns,
|
|
792
|
+
_extendedColumns
|
|
791
793
|
} = this;
|
|
792
|
-
|
|
794
|
+
// Check against every column the toolbar shows, not only the layout's
|
|
795
|
+
// `columns` prop: with a schema source, the columns come from the source
|
|
796
|
+
// and that prop can be empty.
|
|
797
|
+
const columnIds = new Set([...tableColumns, ..._featureColumns, ..._extendedColumns].map(column => column.id));
|
|
793
798
|
const staleSortEntries = query.sort.value.filter(({
|
|
794
799
|
field
|
|
795
|
-
}) => !
|
|
800
|
+
}) => !columnIds.has(field));
|
|
796
801
|
|
|
797
802
|
// Runs on every column add/duplicate, where the sort is still valid.
|
|
798
803
|
// re-sorting there clears the loaded rows and refetches from page 1.
|