@wix/patterns 1.458.0 → 1.460.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/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/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 +32 -29
- package/dist/cjs/components/CustomFieldModal/CustomFieldForm.js.map +1 -1
- package/dist/cjs/components/CustomFieldModal/CustomFieldTypeDropdown.js +6 -5
- 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/EditableCell.st.css.js +3 -3
- package/dist/cjs/components/EditableTable/EditableCell.st.css.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/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/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/EntityPageFields/EntityPageFields.js +11 -10
- package/dist/cjs/components/EntityPageFields/EntityPageFields.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/Heading/Heading.st.css.js +2 -2
- package/dist/cjs/components/Heading/Heading.st.css.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/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/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/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/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 +4 -4
- package/dist/cjs/components/Table/AddFieldColumnHeader.st.css.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/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/dashboard/WixPatternsDashboardBaseProvider.js +1 -1
- package/dist/cjs/dashboard/WixPatternsDashboardBaseProvider.js.map +1 -1
- package/dist/cjs/schema/EntityPageFieldsCard.js +3 -2
- package/dist/cjs/schema/EntityPageFieldsCard.js.map +1 -1
- package/dist/cjs/schema/entityPageFieldManagement.js +3 -1
- package/dist/cjs/schema/entityPageFieldManagement.js.map +1 -1
- package/dist/cjs/state/CollectionFieldsSourceState.js +3 -1
- package/dist/cjs/state/CollectionFieldsSourceState.js.map +1 -1
- package/dist/cjs/state/CollectionPage/CollectionPageHeader.st.css.js +2 -2
- package/dist/cjs/state/CollectionPage/CollectionPageHeader.st.css.js.map +1 -1
- package/dist/cjs/state/CustomFields/CustomFieldsPanelState.js +3 -0
- package/dist/cjs/state/CustomFields/CustomFieldsPanelState.js.map +1 -1
- package/dist/cjs/state/EntityPage/EntityPageState.js +25 -1
- package/dist/cjs/state/EntityPage/EntityPageState.js.map +1 -1
- package/dist/cjs/state/EntityPageFieldsCardState.js +9 -1
- package/dist/cjs/state/EntityPageFieldsCardState.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/ManageFieldsSource.js.map +1 -1
- package/dist/cjs/state/ToolbarCollectionState.js +6 -2
- package/dist/cjs/state/ToolbarCollectionState.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/ActionCellProps.md +6 -21
- package/dist/docs/AutoCompleteFilter.md +6 -128
- package/dist/docs/BulkActionModalRenderProp.md +6 -9
- package/dist/docs/CollectionEmptyState/2-ctas.tsx +67 -0
- package/dist/docs/CollectionEmptyState/demo.tsx +61 -0
- package/dist/docs/CollectionEmptyState/passive-empty-state.tsx +59 -0
- package/dist/docs/CollectionEmptyState.md +9 -207
- package/dist/docs/CollectionNoResultsState.md +6 -11
- package/dist/docs/CollectionOptimisticActions/create-many.tsx +110 -0
- package/dist/docs/CollectionOptimisticActions/create-one.tsx +104 -0
- package/dist/docs/CollectionOptimisticActions/delete-all.tsx +132 -0
- package/dist/docs/CollectionOptimisticActions/delete-many.tsx +104 -0
- package/dist/docs/CollectionOptimisticActions/delete-one.tsx +94 -0
- package/dist/docs/CollectionOptimisticActions/update-all.tsx +142 -0
- package/dist/docs/CollectionOptimisticActions/update-many.tsx +119 -0
- package/dist/docs/CollectionOptimisticActions/update-one.tsx +108 -0
- package/dist/docs/CollectionOptimisticActions.md +14 -939
- package/dist/docs/CollectionPage.md +6 -19
- package/dist/docs/CollectionPremiumEmptyState.md +6 -14
- package/dist/docs/CollectionSearch/default.tsx +57 -0
- package/dist/docs/CollectionSearch/max-length.tsx +59 -0
- package/dist/docs/CollectionSearch/placeholder.tsx +59 -0
- package/dist/docs/CollectionSearch/search-highlighting.tsx +60 -0
- package/dist/docs/CollectionSearch.md +10 -247
- package/dist/docs/ComputedQuery.md +6 -15
- package/dist/docs/CustomColumns/add-a-tooltip.tsx +85 -0
- package/dist/docs/CustomColumns/basic.tsx +78 -0
- package/dist/docs/CustomColumns/exclude-columns.tsx +79 -0
- package/dist/docs/CustomColumns/freeze-column-reorder.tsx +111 -0
- package/dist/docs/CustomColumns/get-visible-columns.tsx +92 -0
- package/dist/docs/CustomColumns/hide-specific-columns-by-default.tsx +79 -0
- package/dist/docs/CustomColumns/load-only-selected-columns.tsx +85 -0
- package/dist/docs/CustomColumns/lock-columns.tsx +80 -0
- package/dist/docs/CustomColumns/reorder-columns.tsx +84 -0
- package/dist/docs/CustomColumns.md +9 -791
- package/dist/docs/CustomFieldType/add-field-modal.tsx +206 -0
- package/dist/docs/CustomFieldType/editable-cell.tsx +206 -0
- package/dist/docs/CustomFieldType/entity-page-form.tsx +133 -0
- package/dist/docs/CustomFieldType/table-cell-and-filter.tsx +165 -0
- package/dist/docs/CustomFieldType.md +4 -718
- package/dist/docs/CustomFieldsWidget/basic.tsx +53 -0
- package/dist/docs/CustomFieldsWidget/controllable-state.tsx +78 -0
- package/dist/docs/CustomFieldsWidget/empty-state.tsx +20 -0
- package/dist/docs/CustomFieldsWidget/inline-theme.tsx +54 -0
- package/dist/docs/CustomFieldsWidget/responsive.tsx +44 -0
- package/dist/docs/CustomFieldsWidget/with-tpa-fields.tsx +57 -0
- package/dist/docs/CustomFieldsWidget/without-entity-page.tsx +42 -0
- package/dist/docs/CustomFieldsWidget.md +7 -362
- package/dist/docs/DateRangeFilter.Components.md +6 -71
- package/dist/docs/EntityPage/2-columns.tsx +72 -0
- package/dist/docs/EntityPage/basic.tsx +72 -0
- package/dist/docs/EntityPage/delete-action.tsx +77 -0
- package/dist/docs/EntityPage/delete-error-handling.tsx +65 -0
- package/dist/docs/EntityPage/demo.tsx +212 -0
- package/dist/docs/EntityPage/error-on-fetch.tsx +68 -0
- package/dist/docs/EntityPage/error-on-save.tsx +59 -0
- package/dist/docs/EntityPage/input-initialization-with-controller.tsx +96 -0
- package/dist/docs/EntityPage/input-initialization-with-usecontroller.tsx +99 -0
- package/dist/docs/EntityPage/loading.tsx +107 -0
- package/dist/docs/EntityPage/overriding-save-button-text.tsx +75 -0
- package/dist/docs/EntityPage.md +17 -1045
- package/dist/docs/EntityPageState.md +1 -0
- package/dist/docs/ExportTo/cta-is-out-of-the-table.tsx +157 -0
- package/dist/docs/ExportTo/export-all-table.tsx +144 -0
- package/dist/docs/ExportTo/export-filtered-table.tsx +148 -0
- package/dist/docs/ExportTo/export-table-with-selection-bulk-selection.tsx +203 -0
- package/dist/docs/ExportTo.md +10 -674
- package/dist/docs/Filter Overview/interactive-example.tsx +211 -0
- package/dist/docs/Filter Overview.md +1 -213
- package/dist/docs/FilterProps.md +6 -13
- package/dist/docs/Grid/card-with-a-cta-that-opens-a-modal.tsx +103 -0
- package/dist/docs/Grid/card-with-a-cta-that-opens-a-popup.tsx +91 -0
- package/dist/docs/Grid/demo.tsx +73 -0
- package/dist/docs/Grid/grid-sections.tsx +62 -0
- package/dist/docs/Grid/grid-with-a-reduced-width.tsx +72 -0
- package/dist/docs/Grid/use-the-preset-prop.tsx +55 -0
- package/dist/docs/Grid.md +12 -509
- package/dist/docs/GridFolders.md +6 -45
- package/dist/docs/GridFoldersState.md +6 -3
- package/dist/docs/GridState.md +6 -5
- package/dist/docs/ImportButton/backup-error-handling.tsx +80 -0
- package/dist/docs/ImportButton/cms-import.tsx +38 -0
- package/dist/docs/ImportButton/create-new-field.tsx +40 -0
- package/dist/docs/ImportButton/platformized-import-fields-inline.tsx +65 -0
- package/dist/docs/ImportButton/platformized-import-from-a-source.tsx +50 -0
- package/dist/docs/ImportButton/required-fields.tsx +65 -0
- package/dist/docs/ImportButton/update-or-skip-by-id.tsx +40 -0
- package/dist/docs/ImportButton.md +7 -392
- package/dist/docs/Indeterminate/all-indeterminate.tsx +127 -0
- package/dist/docs/Indeterminate/items-indeterminate-status.tsx +126 -0
- package/dist/docs/Indeterminate.md +2 -257
- package/dist/docs/Internal Scroll/full-width-section.tsx +96 -0
- package/dist/docs/Internal Scroll/narrow-side-section.tsx +82 -0
- package/dist/docs/Internal Scroll.md +2 -182
- package/dist/docs/More Actions/collection-page-2.tsx +98 -0
- package/dist/docs/More Actions/collection-page.tsx +97 -0
- package/dist/docs/More Actions/explore-related-apps.tsx +129 -0
- package/dist/docs/More Actions/featured-more-actions-custom-position.tsx +116 -0
- package/dist/docs/More Actions/featured-more-actions-opt-out.tsx +86 -0
- package/dist/docs/More Actions/featured-more-actions.tsx +82 -0
- package/dist/docs/More Actions/integrate-with-extension.tsx +100 -0
- package/dist/docs/More Actions/more-actions-in-the-toolbar.tsx +96 -0
- package/dist/docs/More Actions/more-actions-with-a-divider.tsx +115 -0
- package/dist/docs/More Actions.md +9 -937
- package/dist/docs/MoreActionsItem.md +6 -16
- package/dist/docs/MultiAutoInlineCheckboxFilter.md +6 -879
- package/dist/docs/MultiBulkActionToolbar/basic-secondary-action.tsx +177 -0
- package/dist/docs/MultiBulkActionToolbar/bulk-action.tsx +169 -0
- package/dist/docs/MultiBulkActionToolbar/extend-menu-items.tsx +174 -0
- package/dist/docs/MultiBulkActionToolbar/maximum-selection.tsx +168 -0
- package/dist/docs/MultiBulkActionToolbar/popover-menu.tsx +123 -0
- package/dist/docs/MultiBulkActionToolbar/primary-secondary-actions-with-a-divider.tsx +218 -0
- package/dist/docs/MultiBulkActionToolbar.md +12 -1048
- package/dist/docs/MultiInlineCheckboxFilter.md +6 -878
- package/dist/docs/MultiLevelSorting/basic-multi-level-sorting.tsx +93 -0
- package/dist/docs/MultiLevelSorting/multi-level-sorting-with-custom-sort-order.tsx +100 -0
- package/dist/docs/MultiLevelSorting/multi-level-sorting-with-defined-sort-directions.tsx +96 -0
- package/dist/docs/MultiLevelSorting.md +9 -301
- package/dist/docs/MultiSelectCheckboxFilter.md +6 -133
- package/dist/docs/MultiSelectCollectionFilter.md +6 -138
- package/dist/docs/NestedTable/drag-and-drop.tsx +107 -0
- package/dist/docs/NestedTable/filters.tsx +192 -0
- package/dist/docs/NestedTable/flat-mode-search.tsx +92 -0
- package/dist/docs/NestedTable/node-api-usage.tsx +188 -0
- package/dist/docs/NestedTable/single-entity.tsx +85 -0
- package/dist/docs/NestedTable/various-entities.tsx +138 -0
- package/dist/docs/NestedTable.md +6 -814
- package/dist/docs/NumberRangeFilter.md +6 -13
- package/dist/docs/OperatorFilterPicker.md +6 -13
- package/dist/docs/PatternsReactRoute.md +6 -7
- package/dist/docs/PatternsReactRouter.md +9 -0
- package/dist/docs/PickerModal/multi-select.tsx +97 -0
- package/dist/docs/PickerModal/pre-selected-item.tsx +120 -0
- package/dist/docs/PickerModal/search-override.tsx +99 -0
- package/dist/docs/PickerModal/single-selection.tsx +98 -0
- package/dist/docs/PickerModal/with-filter-dropdown.tsx +139 -0
- package/dist/docs/PickerModal.md +11 -605
- package/dist/docs/PickerStandalone/basic.tsx +49 -0
- package/dist/docs/PickerStandalone/createnew.tsx +65 -0
- package/dist/docs/PickerStandalone/custom-empty-state.tsx +33 -0
- package/dist/docs/PickerStandalone/custom-items.tsx +78 -0
- package/dist/docs/PickerStandalone.md +4 -233
- package/dist/docs/PrimaryActionButton.md +6 -71
- package/dist/docs/PrimaryActions.md +6 -14
- package/dist/docs/PrimaryPageButton.md +6 -69
- package/dist/docs/RadioGroupFilter.md +6 -19
- package/dist/docs/SecondaryActions.md +6 -14
- package/dist/docs/SettingsPage/2-columns.tsx +70 -0
- package/dist/docs/SettingsPage/basic.tsx +66 -0
- package/dist/docs/SettingsPage/error-on-fetch.tsx +65 -0
- package/dist/docs/SettingsPage/error-on-save.tsx +59 -0
- package/dist/docs/SettingsPage/input-initialization-with-controller.tsx +89 -0
- package/dist/docs/SettingsPage/input-initialization-with-usecontroller.tsx +92 -0
- package/dist/docs/SettingsPage/loading.tsx +99 -0
- package/dist/docs/SettingsPage.md +13 -574
- package/dist/docs/SingleSelectFilter/custom-render-items.tsx +57 -0
- package/dist/docs/SingleSelectFilter/empty-state.tsx +33 -0
- package/dist/docs/SingleSelectFilter/sections.tsx +69 -0
- package/dist/docs/SingleSelectFilter/server-data.tsx +53 -0
- package/dist/docs/SingleSelectFilter/static-data.tsx +25 -0
- package/dist/docs/SingleSelectFilter.md +11 -374
- package/dist/docs/Sortable Columns/basic-sortable-column.tsx +90 -0
- package/dist/docs/Sortable Columns/custom-sort-order.tsx +94 -0
- package/dist/docs/Sortable Columns.md +2 -188
- package/dist/docs/Suggestions/carousel-customization.tsx +27 -0
- package/dist/docs/Suggestions/carousel-vs-container-layout.tsx +40 -0
- package/dist/docs/Suggestions/custom-card-rendering.tsx +99 -0
- package/dist/docs/Suggestions/with-transform-function.tsx +56 -0
- package/dist/docs/Suggestions.md +4 -230
- package/dist/docs/SummaryBar/error.tsx +75 -0
- package/dist/docs/SummaryBar/loading-with-error.tsx +96 -0
- package/dist/docs/SummaryBar/loading-with-success.tsx +105 -0
- package/dist/docs/SummaryBar/loading.tsx +73 -0
- package/dist/docs/SummaryBar/success.tsx +73 -0
- package/dist/docs/SummaryBar.md +11 -437
- package/dist/docs/Table/basic-table.tsx +74 -0
- package/dist/docs/Table/cursor-pagination.tsx +61 -0
- package/dist/docs/Table/fetch-total-async.tsx +83 -0
- package/dist/docs/Table/filters.tsx +152 -0
- package/dist/docs/Table/header.tsx +85 -0
- package/dist/docs/Table/horizontal-scroll.tsx +90 -0
- package/dist/docs/Table/table-disabled-rows.tsx +99 -0
- package/dist/docs/Table/using-ambassador.tsx +72 -0
- package/dist/docs/Table/using-with-external-data-source.tsx +79 -0
- package/dist/docs/Table/virtual.tsx +77 -0
- package/dist/docs/Table Sections/demo.tsx +96 -0
- package/dist/docs/Table Sections/with-badge.tsx +107 -0
- package/dist/docs/Table Sections/with-collapse.tsx +104 -0
- package/dist/docs/Table Sections/with-summary.tsx +118 -0
- package/dist/docs/Table Sections.md +4 -433
- package/dist/docs/Table.md +16 -961
- package/dist/docs/TableColumn.md +6 -21
- package/dist/docs/TableDragAndDrop/save-order-mode.tsx +85 -0
- package/dist/docs/TableDragAndDrop/specific-filters.tsx +135 -0
- package/dist/docs/TableDragAndDrop/specific-tabs.tsx +117 -0
- package/dist/docs/TableDragAndDrop/table.tsx +83 -0
- package/dist/docs/TableDragAndDrop.md +4 -428
- package/dist/docs/TableFolders/demo.tsx +101 -0
- package/dist/docs/TableFolders/table-folders.tsx +101 -0
- package/dist/docs/TableFolders/with-tags.tsx +124 -0
- package/dist/docs/TableFolders.md +9 -391
- package/dist/docs/TableFoldersState.md +6 -5
- package/dist/docs/TableGridSwitch/basic-table-grid-switch.tsx +91 -0
- package/dist/docs/TableGridSwitch/custom-columns.tsx +94 -0
- package/dist/docs/TableGridSwitch.md +8 -255
- package/dist/docs/TableGridSwitchFolders/demo.tsx +103 -0
- package/dist/docs/TableGridSwitchFolders/tablegridswitchfolders.tsx +103 -0
- package/dist/docs/TableGridSwitchFolders/with-tags.tsx +124 -0
- package/dist/docs/TableGridSwitchFolders.md +3 -336
- package/dist/docs/TableGridSwitchState.md +6 -6
- package/dist/docs/TableState.md +6 -7
- package/dist/docs/TableTopNotification/base.tsx +92 -0
- package/dist/docs/TableTopNotification/nested-table.tsx +114 -0
- package/dist/docs/TableTopNotification.md +8 -235
- package/dist/docs/TabsFilter/basic-tabs.tsx +96 -0
- package/dist/docs/TabsFilter/disabled-tabs.tsx +100 -0
- package/dist/docs/TabsFilter/tabs-with-a-basic-counter.tsx +149 -0
- package/dist/docs/TabsFilter/tabs-with-a-counter-badge.tsx +153 -0
- package/dist/docs/TabsFilter.md +10 -515
- package/dist/docs/Tags/basic.tsx +90 -0
- package/dist/docs/Tags/custom-config-for-tags-column.tsx +95 -0
- package/dist/docs/Tags/customized-filter-position.tsx +121 -0
- package/dist/docs/Tags/customized-tags-column-position.tsx +94 -0
- package/dist/docs/Tags/on-table-with-folders.tsx +124 -0
- package/dist/docs/Tags.md +5 -534
- package/dist/docs/ToolbarCollectionState.md +1 -1
- package/dist/docs/ToolbarFilters/2-filters-with-a-title.tsx +162 -0
- package/dist/docs/ToolbarFilters/2-filters-without-a-title.tsx +158 -0
- package/dist/docs/ToolbarFilters/add-filter-presets-for-future-dates.tsx +108 -0
- package/dist/docs/ToolbarFilters/apply-changes.tsx +167 -0
- package/dist/docs/ToolbarFilters/custom-label-for-tags.tsx +167 -0
- package/dist/docs/ToolbarFilters/customize-filter-display-tags.tsx +163 -0
- package/dist/docs/ToolbarFilters/mini-toolbar-with-filters.tsx +121 -0
- package/dist/docs/ToolbarFilters/mini-toolbar.tsx +80 -0
- package/dist/docs/ToolbarFilters/more-than-2-filters.tsx +164 -0
- package/dist/docs/ToolbarFilters/postpone-collection-filter-initial-fetch.tsx +158 -0
- package/dist/docs/ToolbarFilters.md +17 -1466
- package/dist/docs/ToolbarSecondaryActions/grouped-actions-with-dividers.tsx +91 -0
- package/dist/docs/ToolbarSecondaryActions/mixed-buttons-and-dropdown-menus.tsx +80 -0
- package/dist/docs/ToolbarSecondaryActions/multiple-actions-with-dropdown-menus.tsx +88 -0
- package/dist/docs/ToolbarSecondaryActions/multiple-secondary-action-buttons.tsx +73 -0
- package/dist/docs/ToolbarSecondaryActions.md +4 -340
- package/dist/docs/ToolbarTitle/title-and-count.tsx +60 -0
- package/dist/docs/ToolbarTitle/title-count-and-the-collection-s-item-limit.tsx +60 -0
- package/dist/docs/ToolbarTitle/title-subtitle-and-learn-more.tsx +68 -0
- package/dist/docs/ToolbarTitle/title.tsx +60 -0
- package/dist/docs/ToolbarTitle.md +4 -256
- package/dist/docs/Views/basic-view-that-can-be-chosen.tsx +142 -0
- package/dist/docs/Views/basic-view.tsx +134 -0
- package/dist/docs/Views/view-with-selected-columns.tsx +142 -0
- package/dist/docs/Views/views-separated-by-category-in-the-dropdown.tsx +209 -0
- package/dist/docs/Views.md +4 -635
- package/dist/docs/WidgetsFormProvider.md +9 -0
- package/dist/docs/WixPatternsBMProvider.md +9 -0
- package/dist/docs/WixPatternsBaseProvider.md +6 -3
- package/dist/docs/WixPatternsEssentialsProvider.md +9 -0
- package/dist/docs/WixPatternsGizaProvider.md +9 -0
- package/dist/docs/WixPatternsProvider.md +9 -0
- package/dist/docs/arrayFilter.md +6 -12
- package/dist/docs/customFilter.md +6 -19
- package/dist/docs/dateRangeFilter.Factories.md +6 -13
- package/dist/docs/deleteSecondaryAction.md +6 -13
- package/dist/docs/idNameArrayFilter.md +6 -12
- package/dist/docs/index.json +155 -81
- package/dist/docs/operatorFilter.md +6 -13
- package/dist/docs/stringFilter.md +6 -4
- package/dist/docs/stringsArrayFilter.md +6 -12
- package/dist/docs/useCreateCollection.md +6 -19
- package/dist/docs/useEntity.md +1 -0
- package/dist/docs/useEntityPage.md +6 -13
- package/dist/docs/useFilterCollection.md +6 -13
- package/dist/docs/useGridCollection.md +6 -19
- package/dist/docs/useGridFolders.md +6 -4
- package/dist/docs/useOptimisticActions/custom-error-handling.tsx +178 -0
- package/dist/docs/useOptimisticActions/default-behaviour.tsx +155 -0
- package/dist/docs/useOptimisticActions/error-handling-and-retries.tsx +175 -0
- package/dist/docs/useOptimisticActions/items-orders.tsx +165 -0
- package/dist/docs/useOptimisticActions/revision-handling.tsx +109 -0
- package/dist/docs/useOptimisticActions/success-toast-with-undo.tsx +164 -0
- package/dist/docs/useOptimisticActions/update-with-query.tsx +195 -0
- package/dist/docs/useOptimisticActions.md +13 -1164
- package/dist/docs/usePatternsNavigate.md +11 -0
- package/dist/docs/usePickerModal.md +6 -16
- package/dist/docs/useStaticListFilterCollection.md +6 -4
- package/dist/docs/useTableCollection.md +6 -19
- package/dist/docs/useTableFolders.md +6 -4
- package/dist/docs/useTableGridSwitchCollection.md +6 -19
- package/dist/dts-bundle/components/AutoCompleteFilter.d.ts +9 -8
- package/dist/dts-bundle/components/CollectionEmptyState.d.ts +1 -4
- package/dist/dts-bundle/components/CollectionNoResultsState.d.ts +1 -4
- package/dist/dts-bundle/components/CollectionOptimisticActions.d.ts +19 -9
- package/dist/dts-bundle/components/CollectionPage.d.ts +4 -2
- package/dist/dts-bundle/components/CollectionPremiumEmptyState.d.ts +1 -4
- package/dist/dts-bundle/components/CollectionSearch.d.ts +2 -1
- package/dist/dts-bundle/components/CollectionToolbarFilters.d.ts +3 -5
- package/dist/dts-bundle/components/DateRangeFilter.d.ts +10 -31
- package/dist/dts-bundle/components/EntityPage.d.ts +5 -1
- package/dist/dts-bundle/components/ExportButton.d.ts +7 -7
- package/dist/dts-bundle/components/Grid.d.ts +16 -11
- package/dist/dts-bundle/components/GridFolders.d.ts +10 -8
- package/dist/dts-bundle/components/MoreActions.d.ts +3 -0
- package/dist/dts-bundle/components/MultiAutoInlineCheckboxFilter.d.ts +3 -5
- package/dist/dts-bundle/components/MultiBulkActionToolbar.d.ts +2 -5
- package/dist/dts-bundle/components/MultiInlineCheckboxFilter.d.ts +2 -1
- package/dist/dts-bundle/components/MultiSelectCheckboxFilter.d.ts +9 -8
- package/dist/dts-bundle/components/MultiSelectCollectionFilter.d.ts +8 -4
- package/dist/dts-bundle/components/NumberRangeFilter.d.ts +4 -2
- package/dist/dts-bundle/components/OperatorFilterPicker.d.ts +8 -26
- package/dist/dts-bundle/components/PickerModal.d.ts +4 -2
- package/dist/dts-bundle/components/PrimaryActions.d.ts +1 -1
- package/dist/dts-bundle/components/RadioGroupFilter.d.ts +3 -5
- package/dist/dts-bundle/components/SecondaryActions.d.ts +1 -1
- package/dist/dts-bundle/components/SettingsPage.d.ts +5 -1
- package/dist/dts-bundle/components/SingleSelectFilter.d.ts +8 -4
- package/dist/dts-bundle/components/Table.d.ts +8 -4
- package/dist/dts-bundle/components/TableFolders.d.ts +13 -10
- package/dist/dts-bundle/components/TableGridSwitch.d.ts +25 -16
- package/dist/dts-bundle/components/TableTopNotification.d.ts +1 -4
- package/dist/dts-bundle/components/TabsFilter.d.ts +5 -6
- package/dist/dts-bundle/components/WidgetsFormProvider.d.ts +1 -0
- package/dist/dts-bundle/exports/core.d.ts +0 -1
- package/dist/dts-bundle/functions/arrayFilter.d.ts +2 -1
- package/dist/dts-bundle/functions/customFilter.d.ts +2 -1
- package/dist/dts-bundle/functions/dateRangeFilter.d.ts +4 -2
- package/dist/dts-bundle/functions/deleteSecondaryAction.d.ts +6 -3
- package/dist/dts-bundle/functions/idNameArrayFilter.d.ts +2 -1
- package/dist/dts-bundle/functions/operatorFilter.d.ts +2 -1
- package/dist/dts-bundle/functions/stringFilter.d.ts +1 -0
- package/dist/dts-bundle/functions/stringsArrayFilter.d.ts +2 -1
- package/dist/dts-bundle/hooks/useCreateCollection.d.ts +7 -4
- package/dist/dts-bundle/hooks/useEntityPage.d.ts +3 -2
- package/dist/dts-bundle/hooks/useExportConfig.d.ts +4 -2
- package/dist/dts-bundle/hooks/useFilterCollection.d.ts +4 -2
- package/dist/dts-bundle/hooks/useGridCollection.d.ts +4 -2
- package/dist/dts-bundle/hooks/useGridFolders.d.ts +6 -3
- package/dist/dts-bundle/hooks/useOptimisticActions.d.ts +11 -5
- package/dist/dts-bundle/hooks/usePatternsNavigate.d.ts +1 -0
- package/dist/dts-bundle/hooks/usePickerModal.d.ts +304 -7
- package/dist/dts-bundle/hooks/useStaticListFilterCollection.d.ts +4 -2
- package/dist/dts-bundle/hooks/useTableCollection.d.ts +7 -3
- package/dist/dts-bundle/hooks/useTableFolders.d.ts +6 -3
- package/dist/dts-bundle/hooks/useTableGridSwitchCollection.d.ts +4 -2
- package/dist/dts-bundle/index.json +76 -85
- package/dist/dts-bundle/types/ActionCellProps.d.ts +4 -2
- package/dist/dts-bundle/types/BulkActionModalRenderPropParams.d.ts +4 -2
- package/dist/dts-bundle/types/CollectionTableBaseProps.d.ts +21 -9
- package/dist/dts-bundle/types/CollectionViewsDropdownBaseProps.d.ts +4 -2
- package/dist/dts-bundle/types/Column.d.ts +1 -1
- package/dist/dts-bundle/types/ComputedQuery.d.ts +2 -1
- package/dist/dts-bundle/types/CursorQuery.d.ts +4 -2
- package/dist/dts-bundle/types/EntityPageStateParams.d.ts +10 -5
- package/dist/dts-bundle/types/FilterProps.d.ts +2 -1
- package/dist/dts-bundle/types/GridFoldersState.d.ts +15 -7
- package/dist/dts-bundle/types/GridState.d.ts +13 -6
- package/dist/dts-bundle/types/OnSaveParams.d.ts +3 -2
- package/dist/dts-bundle/types/RangeItem.d.ts +2 -1
- package/dist/dts-bundle/types/TableColumn.d.ts +1 -0
- package/dist/dts-bundle/types/TableFoldersState.d.ts +15 -7
- package/dist/dts-bundle/types/TableGridSwitchState.d.ts +20 -9
- package/dist/dts-bundle/types/TableState.d.ts +15 -6
- package/dist/dts-bundle/types/TagsProps.d.ts +8 -3
- package/dist/dts-bundle/types/ToolbarBaseProps.d.ts +9 -4
- package/dist/dts-bundle/types/ToolbarCollectionBaseProps.d.ts +35 -14
- package/dist/dts-bundle/types/ToolbarTitleProps.d.ts +2 -1
- package/dist/dts-bundle/types/UseEntityPageParams.d.ts +3 -2
- package/dist/esm/components/CardContainer/CardContainer.st.css.js +2 -2
- 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/Sections/ValidationAndDefaultsSection.st.css.js +2 -2
- package/dist/esm/components/CmsFieldManagement/Sections/ValidationAndDefaultsSection.st.css.js.map +1 -1
- package/dist/esm/components/Collapse/Collapse.st.css.js +2 -2
- 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/CollectionTable.st.css.js.map +1 -1
- 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/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/CollectionViewsDropdown/ViewsDropdown.st.css.js.map +1 -1
- package/dist/esm/components/CustomFieldModal/CustomFieldForm.js +4 -3
- package/dist/esm/components/CustomFieldModal/CustomFieldForm.js.map +1 -1
- package/dist/esm/components/CustomFieldModal/CustomFieldTypeDropdown.js +2 -2
- 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/EditableCell.st.css.js +2 -2
- package/dist/esm/components/EditableTable/HeaderActionsPopover.st.css.js +2 -2
- package/dist/esm/components/EditableTable/cellTypes/CellViewLayout.st.css.js +2 -2
- package/dist/esm/components/EditableTable/cellTypes/address/Edit.st.css.js +2 -2
- 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/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/Edit.st.css.js.map +1 -1
- 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/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/number/Edit.st.css.js +2 -2
- package/dist/esm/components/EditableTable/cellTypes/number/Edit.st.css.js.map +1 -1
- package/dist/esm/components/EditableTable/cellTypes/number/View.st.css.js +2 -2
- package/dist/esm/components/EditableTable/cellTypes/number/View.st.css.js.map +1 -1
- 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/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/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/EmptyState/EmptyStateBase.st.css.js +2 -2
- package/dist/esm/components/EntityPage/EntityPagePlain.st.css.js +2 -2
- package/dist/esm/components/EntityPageFields/EntityPageFields.js +2 -2
- package/dist/esm/components/EntityPageFields/EntityPageFields.js.map +1 -1
- package/dist/esm/components/Fade/Fade.st.css.js +2 -2
- package/dist/esm/components/Heading/Heading.st.css.js +2 -2
- 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/InputOverflow/InputOverflow.st.css.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/MaxLines/MaxLines.st.css.js +2 -2
- package/dist/esm/components/MaxLines/MaxLines.st.css.js.map +1 -1
- package/dist/esm/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js +2 -2
- 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/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/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/ScrollableContent/ScrollableContent.st.css.js +2 -2
- package/dist/esm/components/ScrollableContent/ScrollableContent.st.css.js.map +1 -1
- package/dist/esm/components/SetupWidget/SetupWidget.st.css.js +2 -2
- 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/SlidingModal/SlidingModal.st.css.js.map +1 -1
- 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.st.css.js +2 -2
- package/dist/esm/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js +2 -2
- package/dist/esm/components/ToolbarItem/ToolbarItem.st.css.js +2 -2
- package/dist/esm/components/ToolbarItem/ToolbarItem.st.css.js.map +1 -1
- package/dist/esm/components/ToolbarItemBox/ToolbarItemBox.st.css.js +2 -2
- package/dist/esm/components/ToolbarItemBox/ToolbarItemBox.st.css.js.map +1 -1
- package/dist/esm/components/common.st.css.js +2 -2
- package/dist/esm/dashboard/WixPatternsDashboardBaseProvider.js +1 -1
- package/dist/esm/dashboard/WixPatternsDashboardBaseProvider.js.map +1 -1
- package/dist/esm/schema/EntityPageFieldsCard.js +1 -1
- package/dist/esm/schema/EntityPageFieldsCard.js.map +1 -1
- package/dist/esm/schema/entityPageFieldManagement.js +2 -0
- package/dist/esm/schema/entityPageFieldManagement.js.map +1 -1
- package/dist/esm/state/CollectionFieldsSourceState.js +2 -0
- package/dist/esm/state/CollectionFieldsSourceState.js.map +1 -1
- package/dist/esm/state/CollectionPage/CollectionPageHeader.st.css.js +2 -2
- package/dist/esm/state/CustomFields/CustomFieldsPanelState.js +4 -0
- package/dist/esm/state/CustomFields/CustomFieldsPanelState.js.map +1 -1
- package/dist/esm/state/EntityPage/EntityPageState.js +22 -1
- package/dist/esm/state/EntityPage/EntityPageState.js.map +1 -1
- package/dist/esm/state/EntityPageFieldsCardState.js +9 -1
- package/dist/esm/state/EntityPageFieldsCardState.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/ToolbarCollectionState.js +6 -2
- package/dist/esm/state/ToolbarCollectionState.js.map +1 -1
- package/dist/esm/styles.global.css +2 -2
- package/dist/esm/version.js +1 -1
- package/dist/types/components/CmsFieldManagement/Sections/ValidationAndDefaultsSection.st.css.d.ts.map +1 -1
- package/dist/types/components/CollectionPageNew/CollectionPage.st.css.d.ts.map +1 -1
- package/dist/types/components/CollectionTable/CollectionTable.st.css.d.ts.map +1 -1
- package/dist/types/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.d.ts.map +1 -1
- package/dist/types/components/CollectionViewsDropdown/ViewsDropdown.st.css.d.ts.map +1 -1
- package/dist/types/components/CustomFieldModal/CustomFieldForm.d.ts.map +1 -1
- package/dist/types/components/CustomFieldModal/CustomFieldTypeDropdown.d.ts.map +1 -1
- package/dist/types/components/EditableTable/cellTypes/date/Edit.st.css.d.ts.map +1 -1
- package/dist/types/components/EditableTable/cellTypes/number/Edit.st.css.d.ts.map +1 -1
- package/dist/types/components/EditableTable/cellTypes/number/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/url/Edit.st.css.d.ts.map +1 -1
- package/dist/types/components/EntityPageFields/EntityPageFields.d.ts +3 -1
- package/dist/types/components/EntityPageFields/EntityPageFields.d.ts.map +1 -1
- package/dist/types/components/InputOverflow/InputOverflow.st.css.d.ts.map +1 -1
- package/dist/types/components/MaxLines/MaxLines.st.css.d.ts.map +1 -1
- package/dist/types/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.d.ts.map +1 -1
- package/dist/types/components/ScrollableContent/ScrollableContent.st.css.d.ts.map +1 -1
- package/dist/types/components/SkeletonCard/SkeletonCard.st.css.d.ts.map +1 -1
- package/dist/types/components/SlidingModal/SlidingModal.st.css.d.ts.map +1 -1
- package/dist/types/components/Table/AddFieldColumnHeader.st.css.d.ts.map +1 -1
- package/dist/types/components/ToolbarItem/ToolbarItem.st.css.d.ts.map +1 -1
- package/dist/types/components/ToolbarItemBox/ToolbarItemBox.st.css.d.ts.map +1 -1
- package/dist/types/schema/EntityPageFieldsCard.d.ts.map +1 -1
- package/dist/types/schema/entityPageFieldManagement.d.ts.map +1 -1
- package/dist/types/state/CollectionFieldsSourceState.d.ts +2 -6
- package/dist/types/state/CollectionFieldsSourceState.d.ts.map +1 -1
- package/dist/types/state/CustomFields/CustomFieldsPanelState.d.ts +2 -4
- package/dist/types/state/CustomFields/CustomFieldsPanelState.d.ts.map +1 -1
- package/dist/types/state/EntityPage/EntityPageState.d.ts +9 -0
- package/dist/types/state/EntityPage/EntityPageState.d.ts.map +1 -1
- package/dist/types/state/EntityPageFieldsCardState.d.ts +1 -0
- package/dist/types/state/EntityPageFieldsCardState.d.ts.map +1 -1
- package/dist/types/state/FormPage/FormPageHeader.st.css.d.ts.map +1 -1
- package/dist/types/state/ManageFieldsSource.d.ts +2 -6
- package/dist/types/state/ManageFieldsSource.d.ts.map +1 -1
- package/dist/types/state/ToolbarCollectionState.d.ts +2 -4
- package/dist/types/state/ToolbarCollectionState.d.ts.map +1 -1
- package/dist/types/version.d.ts +1 -1
- package/package.json +7 -7
- 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/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/CollectionViewsDropdown/AutoCompleteReadonly.st.css.ts +2 -2
- package/src/components/CollectionViewsDropdown/ViewsDropdown.st.css.ts +2 -2
- package/src/components/CustomFieldModal/CustomFieldForm.tsx +7 -2
- package/src/components/CustomFieldModal/CustomFieldTypeDropdown.tsx +3 -1
- package/src/components/DragHandle/DragHandle.st.css.ts +2 -2
- package/src/components/EditableTable/EditableCell.st.css.ts +2 -2
- package/src/components/EditableTable/HeaderActionsPopover.st.css.ts +2 -2
- 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/EmptyState/EmptyStateBase.st.css.ts +2 -2
- package/src/components/EntityPage/EntityPagePlain.st.css.ts +2 -2
- package/src/components/EntityPageFields/EntityPageFields.tsx +4 -1
- package/src/components/Fade/Fade.st.css.ts +2 -2
- package/src/components/Heading/Heading.st.css.ts +2 -2
- package/src/components/ImportButton/ImportStepUpload.st.css.ts +2 -2
- package/src/components/InputOverflow/InputOverflow.st.css.ts +2 -2
- 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/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/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/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/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.ts +2 -2
- 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/dashboard/WixPatternsDashboardBaseProvider.tsx +1 -1
- package/src/schema/EntityPageFieldsCard.tsx +4 -1
- package/src/schema/entityPageFieldManagement.ts +2 -0
- package/src/state/CollectionFieldsSourceState.ts +4 -5
- package/src/state/CollectionPage/CollectionPageHeader.st.css.ts +2 -2
- package/src/state/CustomFields/CustomFieldsPanelState.ts +9 -5
- package/src/state/EntityPage/EntityPageState.ts +25 -1
- package/src/state/EntityPageFieldsCardState.ts +11 -1
- package/src/state/FormPage/FormPageHeader.st.css.ts +2 -2
- package/src/state/ManageFieldsSource.ts +2 -6
- package/src/state/ToolbarCollectionState.ts +14 -2
- package/src/styles.global.css +2 -2
- package/src/version.ts +1 -1
- package/dist/dts-bundle/types/Translate.d.ts +0 -296
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_bexCore","require","_react","_wixI18nConfig","_react2","_interopRequireWildcard","_providers","_getInstanceJwtData","_essentials","_jsxFileName","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","WixPatternsDashboardBaseProvider","children","dashboard","environment","locale","pageLocation","essentials","rest","value","useState","jwtData","getInstanceJwtData","window","location","search","user","id","uid","permissions","language","artifactId","componentId","pageId","providerType","msid","metaSiteId","experimentsWithReady","experiments","ready","biLogger","bi","getLogger","error","console","useExperiments","getExperimentsCompat","Trans","useTranslation","showToast","showToastCompat","usePageLocation","navigateTo","relativeUrl","displayMode","history","navigate","onSidePanelOpen","undefined","onBeforeUnload","onLayerStateChange","openMediaManager","closeSidePanel","getHostContainer","getHostContainerCompat","getDashboardMenuPlugins","getDashboardPlugins","environmentBI","httpClient","errorMonitor","getErrorMonitorCompat","asPartial","errorHandler","createEssentials","options","_options$experiments","createChildEssentials","scopes","bag","getWixPatternsWindowExperiments","createComponentSettings","createAppSettingsCapsule","createElement","CairoProvider","_extends2","__self","__source","fileName","lineNumber","columnNumber"],"sources":["../../../src/dashboard/WixPatternsDashboardBaseProvider.tsx"],"sourcesContent":["import {\n createAppSettingsCapsule,\n getErrorMonitorCompat,\n getExperimentsCompat,\n getHostContainerCompat,\n getWixPatternsWindowExperiments,\n showToastCompat,\n WixPatternsEssentials,\n} from '@wix/bex-core';\nimport { CairoProviderBaseProps, usePageLocation } from '@wix/bex-core/react';\nimport { Trans, useTranslation } from '@wix/bex-utils/@wix/wix-i18n-config';\nimport { Essentials } from '@wix/fe-essentials/core';\nimport React, { useState } from 'react';\nimport { CairoProvider as CairoProviderBase } from '../providers';\nimport { dashboard as dashboardType, EnvironmentState } from '@wix/dashboard';\nimport { getInstanceJwtData } from './getInstanceJwtData';\nimport { bi, errorHandler, experiments } from '@wix/essentials';\n\nexport interface WixPatternsProviderProps\n extends Omit<CairoProviderBaseProps, 'localCache' | 'contextType'> {}\n\ninterface WixPatternsProviderPrivateProps extends WixPatternsProviderProps {\n dashboard: Pick<\n typeof dashboardType,\n | 'showToast'\n | 'navigate'\n | 'onBeforeUnload'\n | 'onLayerStateChange'\n | 'getDashboardMenuPlugins'\n | 'getDashboardPlugins'\n | 'openMediaManager'\n >;\n environment: EnvironmentState;\n essentials: Essentials;\n}\n\nexport function WixPatternsDashboardBaseProvider({\n children,\n dashboard,\n environment: { locale, pageLocation },\n essentials,\n ...rest\n}: WixPatternsProviderPrivateProps) {\n const [value] = useState((): WixPatternsEssentials => {\n const jwtData = getInstanceJwtData(window.location.search);\n\n const user = {\n id: jwtData?.uid,\n permissions: ['DATA_EXTENSION_SCHEMA.WRITE'],\n };\n\n const environment = {\n language: locale || 'en',\n artifactId: essentials.environment.artifactId,\n componentId: pageLocation.pageId,\n providerType: 'bm' as const,\n msid: jwtData?.metaSiteId,\n };\n\n // ready doesn't exist in the dashboard-sdk because it's always true. adding it for backwards compatibility\n const experimentsWithReady = {\n ...experiments,\n ready: async () => true,\n };\n\n let biLogger;\n try {\n biLogger = bi.getLogger();\n } catch (error) {\n console.
|
|
1
|
+
{"version":3,"names":["_bexCore","require","_react","_wixI18nConfig","_react2","_interopRequireWildcard","_providers","_getInstanceJwtData","_essentials","_jsxFileName","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","WixPatternsDashboardBaseProvider","children","dashboard","environment","locale","pageLocation","essentials","rest","value","useState","jwtData","getInstanceJwtData","window","location","search","user","id","uid","permissions","language","artifactId","componentId","pageId","providerType","msid","metaSiteId","experimentsWithReady","experiments","ready","biLogger","bi","getLogger","error","console","warn","useExperiments","getExperimentsCompat","Trans","useTranslation","showToast","showToastCompat","usePageLocation","navigateTo","relativeUrl","displayMode","history","navigate","onSidePanelOpen","undefined","onBeforeUnload","onLayerStateChange","openMediaManager","closeSidePanel","getHostContainer","getHostContainerCompat","getDashboardMenuPlugins","getDashboardPlugins","environmentBI","httpClient","errorMonitor","getErrorMonitorCompat","asPartial","errorHandler","createEssentials","options","_options$experiments","createChildEssentials","scopes","bag","getWixPatternsWindowExperiments","createComponentSettings","createAppSettingsCapsule","createElement","CairoProvider","_extends2","__self","__source","fileName","lineNumber","columnNumber"],"sources":["../../../src/dashboard/WixPatternsDashboardBaseProvider.tsx"],"sourcesContent":["import {\n createAppSettingsCapsule,\n getErrorMonitorCompat,\n getExperimentsCompat,\n getHostContainerCompat,\n getWixPatternsWindowExperiments,\n showToastCompat,\n WixPatternsEssentials,\n} from '@wix/bex-core';\nimport { CairoProviderBaseProps, usePageLocation } from '@wix/bex-core/react';\nimport { Trans, useTranslation } from '@wix/bex-utils/@wix/wix-i18n-config';\nimport { Essentials } from '@wix/fe-essentials/core';\nimport React, { useState } from 'react';\nimport { CairoProvider as CairoProviderBase } from '../providers';\nimport { dashboard as dashboardType, EnvironmentState } from '@wix/dashboard';\nimport { getInstanceJwtData } from './getInstanceJwtData';\nimport { bi, errorHandler, experiments } from '@wix/essentials';\n\nexport interface WixPatternsProviderProps\n extends Omit<CairoProviderBaseProps, 'localCache' | 'contextType'> {}\n\ninterface WixPatternsProviderPrivateProps extends WixPatternsProviderProps {\n dashboard: Pick<\n typeof dashboardType,\n | 'showToast'\n | 'navigate'\n | 'onBeforeUnload'\n | 'onLayerStateChange'\n | 'getDashboardMenuPlugins'\n | 'getDashboardPlugins'\n | 'openMediaManager'\n >;\n environment: EnvironmentState;\n essentials: Essentials;\n}\n\nexport function WixPatternsDashboardBaseProvider({\n children,\n dashboard,\n environment: { locale, pageLocation },\n essentials,\n ...rest\n}: WixPatternsProviderPrivateProps) {\n const [value] = useState((): WixPatternsEssentials => {\n const jwtData = getInstanceJwtData(window.location.search);\n\n const user = {\n id: jwtData?.uid,\n permissions: ['DATA_EXTENSION_SCHEMA.WRITE'],\n };\n\n const environment = {\n language: locale || 'en',\n artifactId: essentials.environment.artifactId,\n componentId: pageLocation.pageId,\n providerType: 'bm' as const,\n msid: jwtData?.metaSiteId,\n };\n\n // ready doesn't exist in the dashboard-sdk because it's always true. adding it for backwards compatibility\n const experimentsWithReady = {\n ...experiments,\n ready: async () => true,\n };\n\n let biLogger;\n try {\n biLogger = bi.getLogger();\n } catch (error) {\n console.warn(error);\n }\n\n return {\n useExperiments: () => ({\n ready: true,\n experiments: getExperimentsCompat({\n experiments: experimentsWithReady,\n }),\n }),\n experiments: getExperimentsCompat({ experiments: experimentsWithReady }),\n Trans,\n useTranslation,\n showToast: showToastCompat(dashboard.showToast),\n usePageLocation,\n navigateTo: ({\n pageId = pageLocation.pageId,\n relativeUrl,\n displayMode,\n history,\n }) =>\n dashboard.navigate({ pageId, relativeUrl }, { displayMode, history }),\n onSidePanelOpen: undefined, // missing in dashboard-sdk\n onBeforeUnload: dashboard.onBeforeUnload,\n onLayerStateChange: dashboard.onLayerStateChange,\n openMediaManager: dashboard.openMediaManager,\n closeSidePanel: undefined, // missing in dashboard-sdk\n getHostContainer: getHostContainerCompat(\n dashboard.getDashboardMenuPlugins,\n dashboard.getDashboardPlugins,\n ),\n environment,\n user,\n environmentBI: {\n componentId: environment.componentId,\n },\n httpClient: essentials.httpClient,\n errorMonitor: getErrorMonitorCompat(essentials.asPartial),\n errorHandler,\n biLogger,\n createEssentials: (options) => {\n return essentials.createChildEssentials({\n ...options,\n experiments:\n options.experiments &&\n 'scopes' in options.experiments &&\n options.experiments?.scopes[0] === 'cairo'\n ? {\n bag: getWixPatternsWindowExperiments() ?? {},\n }\n : options.experiments,\n });\n },\n createComponentSettings: createAppSettingsCapsule,\n };\n });\n\n return (\n <CairoProviderBase {...rest} value={value}>\n {children}\n </CairoProviderBase>\n );\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -121,6 +121,7 @@ function _EntityPageFieldsCard({
|
|
|
121
121
|
}
|
|
122
122
|
}, /*#__PURE__*/_react.default.createElement(_EntityPageFields.EntityPageFields, {
|
|
123
123
|
fieldIds: state.visibleFieldIds,
|
|
124
|
+
loading: !state.isLayoutReady,
|
|
124
125
|
__self: this,
|
|
125
126
|
__source: {
|
|
126
127
|
fileName: _jsxFileName,
|
|
@@ -132,7 +133,7 @@ function _EntityPageFieldsCard({
|
|
|
132
133
|
__self: this,
|
|
133
134
|
__source: {
|
|
134
135
|
fileName: _jsxFileName,
|
|
135
|
-
lineNumber:
|
|
136
|
+
lineNumber: 130,
|
|
136
137
|
columnNumber: 9
|
|
137
138
|
}
|
|
138
139
|
}), state.manageFieldsSource && /*#__PURE__*/_react.default.createElement(_FieldManagementModals.FieldManagementModals, {
|
|
@@ -140,7 +141,7 @@ function _EntityPageFieldsCard({
|
|
|
140
141
|
__self: this,
|
|
141
142
|
__source: {
|
|
142
143
|
fileName: _jsxFileName,
|
|
143
|
-
lineNumber:
|
|
144
|
+
lineNumber: 133,
|
|
144
145
|
columnNumber: 9
|
|
145
146
|
}
|
|
146
147
|
}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_designSystem","_mobxReactLite","_react2","_EntityPageCard","_EntityPageFields","_EntityPageColumnsPanelEntry","_EntityPageSidePanels","_CustomColumnsDragAndDrop","_FieldManagementModals","_providers","_EntityPageFieldsCardState","_SidePanelsState","_entityPageFieldManagement","_jsxFileName","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_EntityPageFieldsCard","title","subtitle","fieldIds","persistencyKey","showManageFields","dataHook","rest","container","useWixPatternsContainer","translate","modalsContainerRef","usePageContext","pageState","useEntityPageContext","useState","SidePanelsState","setOnPage","state","_pageState$schemaSour","EntityPageFieldsCardState","schemaSource","collectionId","dragAndDrop","CustomColumnsDragAndDrop","fieldManagement","entityPageFieldManagement","useEffect","init","panelState","panels","registerSidePanel","EntityPageColumnsPanelEntry","createElement","EntityPageCard","_extends2","__self","__source","fileName","lineNumber","columnNumber","Card","Header","suffix","canManageFields","Button","size","priority","onClick","openManageFields","undefined","Divider","Content","EntityPageFields","visibleFieldIds","EntityPageSidePanels","manageFieldsSource","FieldManagementModals","source","displayName","EntityPageFieldsCard","exports","observer"],"sources":["../../../src/schema/EntityPageFieldsCard.tsx"],"sourcesContent":["import React, { useEffect, useState } from 'react';\nimport { Button, Card } from '@wix/design-system';\nimport { observer } from 'mobx-react-lite';\nimport { useWixPatternsContainer, usePageContext } from '@wix/bex-core/react';\nimport {\n EntityPageCard,\n type EntityPageCardProps,\n} from '../components/EntityPageCard';\nimport { EntityPageFields } from '../components/EntityPageFields';\nimport { EntityPageColumnsPanelEntry } from '../components/EntityPage/EntityPageColumnsPanelEntry';\nimport { EntityPageSidePanels } from '../components/EntityPage/EntityPageSidePanels';\nimport { CustomColumnsDragAndDrop } from '../components/CustomColumns/CustomColumnsDragAndDrop';\nimport { FieldManagementModals } from '../components/CustomFieldsPanel/FieldManagementModals';\nimport { useEntityPageContext } from '../providers';\nimport { EntityPageFieldsCardState } from '../state/EntityPageFieldsCardState';\nimport { SidePanelsState } from '../state/SidePanelsState';\nimport { entityPageFieldManagement } from './entityPageFieldManagement';\n\nexport interface EntityPageFieldsCardProps\n extends Omit<EntityPageCardProps, 'children'> {\n title: string;\n subtitle?: string;\n /**\n * Field ids to offer, in order. Omitted ⇒ every editable schema field.\n * Read once, on the first render — a later change is ignored, since the saved\n * show/hide and order are keyed to the list the card started with.\n */\n fieldIds?: string[];\n /**\n * Namespace the per-user show/hide and order are stored under. Default: the\n * source's collection id — set it only to store the layout under a name of\n * your own.\n */\n persistencyKey?: string;\n /** Whether to show the \"Manage fields\" button and panel. Default: `true`. */\n showManageFields?: boolean;\n dataHook?: string;\n}\n\n/** The page's schema fields in a card, with a \"Manage fields\" panel that shows,\n * hides and reorders them, and adds, edits and deletes them. The choice is\n * saved per user and survives reloads. Render inside the `EntityPage` from this\n * entry.\n *\n * One card per page. Field management is built per card, so on a second card\n * the rows of fields added from the first one render without their actions\n * menu — the row comes from the page's schema, the menu from the card's own\n * copy, which only the mutating card's copy gets merged into. Split the fields\n * across cards only when none of them manages fields (`showManageFields:\n * false`). */\nexport function _EntityPageFieldsCard({\n title,\n subtitle,\n fieldIds,\n persistencyKey,\n showManageFields = true,\n dataHook = 'entity-page-fields-card',\n ...rest\n}: EntityPageFieldsCardProps) {\n const container = useWixPatternsContainer();\n const { translate: t } = container;\n const { modalsContainerRef } = usePageContext();\n const pageState = useEntityPageContext();\n\n // The page has no side-panel host until a feature needs one.\n useState(() => SidePanelsState.setOnPage(pageState, container));\n\n const [state] = useState(\n () =>\n new EntityPageFieldsCardState({\n pageState,\n container,\n // The collection id is the schema id, and unlike the schema it is here\n // on the first render. A page with no source has no schema and so no\n // fields to lay out — the fallback just names an empty layout.\n persistencyKey:\n persistencyKey ??\n pageState.schemaSource?.collectionId ??\n 'entity-page-fields',\n fieldIds,\n showManageFields,\n dragAndDrop: CustomColumnsDragAndDrop,\n fieldManagement: entityPageFieldManagement,\n modalsContainerRef,\n }),\n );\n\n useEffect(() => state.init(), []);\n\n useEffect(() => {\n if (!state.panelState) {\n return;\n }\n\n state.panelState.panels.registerSidePanel(\n 'customColumns',\n EntityPageColumnsPanelEntry,\n );\n }, []);\n\n return (\n <EntityPageCard dataHook={dataHook} {...rest}>\n <Card.Header\n title={title}\n subtitle={subtitle}\n suffix={\n state.canManageFields ? (\n <Button\n size=\"small\"\n priority=\"secondary\"\n dataHook=\"entity-page-fields-card-manage-fields\"\n onClick={() => state.openManageFields()}\n >\n {t('cairo.table.manage-fields.button.cta')}\n </Button>\n ) : undefined\n }\n />\n <Card.Divider />\n <Card.Content>\n <EntityPageFields fieldIds={state.visibleFieldIds} />\n </Card.Content>\n {/* The host lives on the page, so a panel opened here closes any other.\n Rendered by the card rather than the page, so a page without a fields\n card never bundles the side-panel modal. */}\n {state.panelState && (\n <EntityPageSidePanels panels={state.panelState.panels} />\n )}\n {state.manageFieldsSource && (\n <FieldManagementModals source={state.manageFieldsSource} />\n )}\n </EntityPageCard>\n );\n}\n\n_EntityPageFieldsCard.displayName = 'EntityPageFieldsCard';\n\nexport const EntityPageFieldsCard = observer(_EntityPageFieldsCard);\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_designSystem","_mobxReactLite","_react2","_EntityPageCard","_EntityPageFields","_EntityPageColumnsPanelEntry","_EntityPageSidePanels","_CustomColumnsDragAndDrop","_FieldManagementModals","_providers","_EntityPageFieldsCardState","_SidePanelsState","_entityPageFieldManagement","_jsxFileName","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_EntityPageFieldsCard","title","subtitle","fieldIds","persistencyKey","showManageFields","dataHook","rest","container","useWixPatternsContainer","translate","modalsContainerRef","usePageContext","pageState","useEntityPageContext","useState","SidePanelsState","setOnPage","state","_pageState$schemaSour","EntityPageFieldsCardState","schemaSource","collectionId","dragAndDrop","CustomColumnsDragAndDrop","fieldManagement","entityPageFieldManagement","useEffect","init","panelState","panels","registerSidePanel","EntityPageColumnsPanelEntry","createElement","EntityPageCard","_extends2","__self","__source","fileName","lineNumber","columnNumber","Card","Header","suffix","canManageFields","Button","size","priority","onClick","openManageFields","undefined","Divider","Content","EntityPageFields","visibleFieldIds","loading","isLayoutReady","EntityPageSidePanels","manageFieldsSource","FieldManagementModals","source","displayName","EntityPageFieldsCard","exports","observer"],"sources":["../../../src/schema/EntityPageFieldsCard.tsx"],"sourcesContent":["import React, { useEffect, useState } from 'react';\nimport { Button, Card } from '@wix/design-system';\nimport { observer } from 'mobx-react-lite';\nimport { useWixPatternsContainer, usePageContext } from '@wix/bex-core/react';\nimport {\n EntityPageCard,\n type EntityPageCardProps,\n} from '../components/EntityPageCard';\nimport { EntityPageFields } from '../components/EntityPageFields';\nimport { EntityPageColumnsPanelEntry } from '../components/EntityPage/EntityPageColumnsPanelEntry';\nimport { EntityPageSidePanels } from '../components/EntityPage/EntityPageSidePanels';\nimport { CustomColumnsDragAndDrop } from '../components/CustomColumns/CustomColumnsDragAndDrop';\nimport { FieldManagementModals } from '../components/CustomFieldsPanel/FieldManagementModals';\nimport { useEntityPageContext } from '../providers';\nimport { EntityPageFieldsCardState } from '../state/EntityPageFieldsCardState';\nimport { SidePanelsState } from '../state/SidePanelsState';\nimport { entityPageFieldManagement } from './entityPageFieldManagement';\n\nexport interface EntityPageFieldsCardProps\n extends Omit<EntityPageCardProps, 'children'> {\n title: string;\n subtitle?: string;\n /**\n * Field ids to offer, in order. Omitted ⇒ every editable schema field.\n * Read once, on the first render — a later change is ignored, since the saved\n * show/hide and order are keyed to the list the card started with.\n */\n fieldIds?: string[];\n /**\n * Namespace the per-user show/hide and order are stored under. Default: the\n * source's collection id — set it only to store the layout under a name of\n * your own.\n */\n persistencyKey?: string;\n /** Whether to show the \"Manage fields\" button and panel. Default: `true`. */\n showManageFields?: boolean;\n dataHook?: string;\n}\n\n/** The page's schema fields in a card, with a \"Manage fields\" panel that shows,\n * hides and reorders them, and adds, edits and deletes them. The choice is\n * saved per user and survives reloads. Render inside the `EntityPage` from this\n * entry.\n *\n * One card per page. Field management is built per card, so on a second card\n * the rows of fields added from the first one render without their actions\n * menu — the row comes from the page's schema, the menu from the card's own\n * copy, which only the mutating card's copy gets merged into. Split the fields\n * across cards only when none of them manages fields (`showManageFields:\n * false`). */\nexport function _EntityPageFieldsCard({\n title,\n subtitle,\n fieldIds,\n persistencyKey,\n showManageFields = true,\n dataHook = 'entity-page-fields-card',\n ...rest\n}: EntityPageFieldsCardProps) {\n const container = useWixPatternsContainer();\n const { translate: t } = container;\n const { modalsContainerRef } = usePageContext();\n const pageState = useEntityPageContext();\n\n // The page has no side-panel host until a feature needs one.\n useState(() => SidePanelsState.setOnPage(pageState, container));\n\n const [state] = useState(\n () =>\n new EntityPageFieldsCardState({\n pageState,\n container,\n // The collection id is the schema id, and unlike the schema it is here\n // on the first render. A page with no source has no schema and so no\n // fields to lay out — the fallback just names an empty layout.\n persistencyKey:\n persistencyKey ??\n pageState.schemaSource?.collectionId ??\n 'entity-page-fields',\n fieldIds,\n showManageFields,\n dragAndDrop: CustomColumnsDragAndDrop,\n fieldManagement: entityPageFieldManagement,\n modalsContainerRef,\n }),\n );\n\n useEffect(() => state.init(), []);\n\n useEffect(() => {\n if (!state.panelState) {\n return;\n }\n\n state.panelState.panels.registerSidePanel(\n 'customColumns',\n EntityPageColumnsPanelEntry,\n );\n }, []);\n\n return (\n <EntityPageCard dataHook={dataHook} {...rest}>\n <Card.Header\n title={title}\n subtitle={subtitle}\n suffix={\n state.canManageFields ? (\n <Button\n size=\"small\"\n priority=\"secondary\"\n dataHook=\"entity-page-fields-card-manage-fields\"\n onClick={() => state.openManageFields()}\n >\n {t('cairo.table.manage-fields.button.cta')}\n </Button>\n ) : undefined\n }\n />\n <Card.Divider />\n <Card.Content>\n <EntityPageFields\n fieldIds={state.visibleFieldIds}\n loading={!state.isLayoutReady}\n />\n </Card.Content>\n {/* The host lives on the page, so a panel opened here closes any other.\n Rendered by the card rather than the page, so a page without a fields\n card never bundles the side-panel modal. */}\n {state.panelState && (\n <EntityPageSidePanels panels={state.panelState.panels} />\n )}\n {state.manageFieldsSource && (\n <FieldManagementModals source={state.manageFieldsSource} />\n )}\n </EntityPageCard>\n );\n}\n\n_EntityPageFieldsCard.displayName = 'EntityPageFieldsCard';\n\nexport const EntityPageFieldsCard = observer(_EntityPageFieldsCard);\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -38,7 +38,9 @@ function entityPageFieldManagement({
|
|
|
38
38
|
openFieldModal: opts => panel.openCustomFieldModal({
|
|
39
39
|
fieldId: opts == null ? void 0 : opts.fieldId,
|
|
40
40
|
origin: (opts == null ? void 0 : opts.origin) ?? 'external',
|
|
41
|
-
customOrigin: opts == null ? void 0 : opts.customOrigin
|
|
41
|
+
customOrigin: opts == null ? void 0 : opts.customOrigin,
|
|
42
|
+
initialField: opts == null ? void 0 : opts.initialField,
|
|
43
|
+
lockedProperties: opts == null ? void 0 : opts.lockedProperties
|
|
42
44
|
})
|
|
43
45
|
};
|
|
44
46
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_SchemaState","require","_schemaFieldActions","_CustomFieldsPanelState","entityPageFieldManagement","sourceState","closeSidePanel","schemaState","SchemaState","container","panel","CustomFieldsPanelState","fieldsSource","reportBi","createFieldActionsMenu","createSchemaFieldActionsMenu","customFieldsPanel","fieldActionsMenu","openFieldModal","opts","openCustomFieldModal","fieldId","origin","customOrigin"],"sources":["../../../src/schema/entityPageFieldManagement.ts"],"sourcesContent":["import type { SourceState } from '@wix/bex-core';\nimport { SchemaState } from '../components/SchemaSource/SchemaState';\nimport { createSchemaFieldActionsMenu } from '../components/SchemaSource/schemaFieldActions';\nimport { CustomFieldsPanelState } from '../state/CustomFields/CustomFieldsPanelState';\nimport type { ManageFieldsSource } from '../state/ManageFieldsSource';\n\n/**\n * Add / edit / delete field for an entity page, over the page's source.\n *\n * A collection page gets the same thing from its toolbar's\n * `CollectionFieldsSourceState`, which an entity page has no toolbar to build —\n * so the two pieces that don't need one are assembled here: the source's\n * FieldsSource and per-field menu (`SchemaState`), and the modals\n * (`CustomFieldsPanelState`).\n */\nexport function entityPageFieldManagement({\n sourceState,\n closeSidePanel,\n}: {\n sourceState: SourceState<any>;\n closeSidePanel: () => void;\n}): ManageFieldsSource {\n const schemaState = new SchemaState({ sourceState });\n const { container } = sourceState;\n const panel = new CustomFieldsPanelState({\n fieldsSource: schemaState.fieldsSource,\n container,\n reportBi: container.reportBi,\n closeSidePanel,\n createFieldActionsMenu: createSchemaFieldActionsMenu(schemaState),\n });\n\n return {\n fieldsSource: schemaState.fieldsSource,\n customFieldsPanel: panel,\n fieldActionsMenu: panel.fieldActionsMenu,\n openFieldModal: (opts) =>\n panel.openCustomFieldModal({\n fieldId: opts?.fieldId,\n origin: opts?.origin ?? 'external',\n customOrigin: opts?.customOrigin,\n }),\n };\n}\n"],"mappings":";;;;AACA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,mBAAA,GAAAD,OAAA;AACA,IAAAE,uBAAA,GAAAF,OAAA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASG,yBAAyBA,CAAC;EACxCC,WAAW;EACXC;AAIF,CAAC,EAAsB;EACrB,MAAMC,WAAW,GAAG,IAAIC,wBAAW,CAAC;IAAEH;EAAY,CAAC,CAAC;EACpD,MAAM;IAAEI;EAAU,CAAC,GAAGJ,WAAW;EACjC,MAAMK,KAAK,GAAG,IAAIC,8CAAsB,CAAC;IACvCC,YAAY,EAAEL,WAAW,CAACK,YAAY;IACtCH,SAAS;IACTI,QAAQ,EAAEJ,SAAS,CAACI,QAAQ;IAC5BP,cAAc;IACdQ,sBAAsB,EAAE,IAAAC,gDAA4B,EAACR,WAAW;EAClE,CAAC,CAAC;EAEF,OAAO;IACLK,YAAY,EAAEL,WAAW,CAACK,YAAY;IACtCI,iBAAiB,EAAEN,KAAK;IACxBO,gBAAgB,EAAEP,KAAK,CAACO,gBAAgB;IACxCC,cAAc,EAAGC,IAAI,IACnBT,KAAK,CAACU,oBAAoB,CAAC;MACzBC,OAAO,EAAEF,IAAI,oBAAJA,IAAI,CAAEE,OAAO;MACtBC,MAAM,EAAE,CAAAH,IAAI,oBAAJA,IAAI,CAAEG,MAAM,KAAI,UAAU;MAClCC,YAAY,EAAEJ,IAAI,oBAAJA,IAAI,CAAEI;
|
|
1
|
+
{"version":3,"names":["_SchemaState","require","_schemaFieldActions","_CustomFieldsPanelState","entityPageFieldManagement","sourceState","closeSidePanel","schemaState","SchemaState","container","panel","CustomFieldsPanelState","fieldsSource","reportBi","createFieldActionsMenu","createSchemaFieldActionsMenu","customFieldsPanel","fieldActionsMenu","openFieldModal","opts","openCustomFieldModal","fieldId","origin","customOrigin","initialField","lockedProperties"],"sources":["../../../src/schema/entityPageFieldManagement.ts"],"sourcesContent":["import type { SourceState } from '@wix/bex-core';\nimport { SchemaState } from '../components/SchemaSource/SchemaState';\nimport { createSchemaFieldActionsMenu } from '../components/SchemaSource/schemaFieldActions';\nimport { CustomFieldsPanelState } from '../state/CustomFields/CustomFieldsPanelState';\nimport type { ManageFieldsSource } from '../state/ManageFieldsSource';\n\n/**\n * Add / edit / delete field for an entity page, over the page's source.\n *\n * A collection page gets the same thing from its toolbar's\n * `CollectionFieldsSourceState`, which an entity page has no toolbar to build —\n * so the two pieces that don't need one are assembled here: the source's\n * FieldsSource and per-field menu (`SchemaState`), and the modals\n * (`CustomFieldsPanelState`).\n */\nexport function entityPageFieldManagement({\n sourceState,\n closeSidePanel,\n}: {\n sourceState: SourceState<any>;\n closeSidePanel: () => void;\n}): ManageFieldsSource {\n const schemaState = new SchemaState({ sourceState });\n const { container } = sourceState;\n const panel = new CustomFieldsPanelState({\n fieldsSource: schemaState.fieldsSource,\n container,\n reportBi: container.reportBi,\n closeSidePanel,\n createFieldActionsMenu: createSchemaFieldActionsMenu(schemaState),\n });\n\n return {\n fieldsSource: schemaState.fieldsSource,\n customFieldsPanel: panel,\n fieldActionsMenu: panel.fieldActionsMenu,\n openFieldModal: (opts) =>\n panel.openCustomFieldModal({\n fieldId: opts?.fieldId,\n origin: opts?.origin ?? 'external',\n customOrigin: opts?.customOrigin,\n initialField: opts?.initialField,\n lockedProperties: opts?.lockedProperties,\n }),\n };\n}\n"],"mappings":";;;;AACA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,mBAAA,GAAAD,OAAA;AACA,IAAAE,uBAAA,GAAAF,OAAA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASG,yBAAyBA,CAAC;EACxCC,WAAW;EACXC;AAIF,CAAC,EAAsB;EACrB,MAAMC,WAAW,GAAG,IAAIC,wBAAW,CAAC;IAAEH;EAAY,CAAC,CAAC;EACpD,MAAM;IAAEI;EAAU,CAAC,GAAGJ,WAAW;EACjC,MAAMK,KAAK,GAAG,IAAIC,8CAAsB,CAAC;IACvCC,YAAY,EAAEL,WAAW,CAACK,YAAY;IACtCH,SAAS;IACTI,QAAQ,EAAEJ,SAAS,CAACI,QAAQ;IAC5BP,cAAc;IACdQ,sBAAsB,EAAE,IAAAC,gDAA4B,EAACR,WAAW;EAClE,CAAC,CAAC;EAEF,OAAO;IACLK,YAAY,EAAEL,WAAW,CAACK,YAAY;IACtCI,iBAAiB,EAAEN,KAAK;IACxBO,gBAAgB,EAAEP,KAAK,CAACO,gBAAgB;IACxCC,cAAc,EAAGC,IAAI,IACnBT,KAAK,CAACU,oBAAoB,CAAC;MACzBC,OAAO,EAAEF,IAAI,oBAAJA,IAAI,CAAEE,OAAO;MACtBC,MAAM,EAAE,CAAAH,IAAI,oBAAJA,IAAI,CAAEG,MAAM,KAAI,UAAU;MAClCC,YAAY,EAAEJ,IAAI,oBAAJA,IAAI,CAAEI,YAAY;MAChCC,YAAY,EAAEL,IAAI,oBAAJA,IAAI,CAAEK,YAAY;MAChCC,gBAAgB,EAAEN,IAAI,oBAAJA,IAAI,CAAEM;IAC1B,CAAC;EACL,CAAC;AACH","ignoreList":[]}
|
|
@@ -89,7 +89,9 @@ class CollectionFieldsSourceState {
|
|
|
89
89
|
this.openFieldModal = opts => this.customFieldsPanel.openCustomFieldModal({
|
|
90
90
|
fieldId: opts == null ? void 0 : opts.fieldId,
|
|
91
91
|
origin: (opts == null ? void 0 : opts.origin) ?? 'external',
|
|
92
|
-
customOrigin: opts == null ? void 0 : opts.customOrigin
|
|
92
|
+
customOrigin: opts == null ? void 0 : opts.customOrigin,
|
|
93
|
+
initialField: opts == null ? void 0 : opts.initialField,
|
|
94
|
+
lockedProperties: opts == null ? void 0 : opts.lockedProperties
|
|
93
95
|
});
|
|
94
96
|
this.fieldActionsMenu = this.customFieldsPanel.fieldActionsMenu;
|
|
95
97
|
this.fieldActionHandlers = params.createFieldActionHandlers == null ? void 0 : params.createFieldActionHandlers(this.customFieldsPanel);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_mobx","require","_bexCore","_schemaFieldsContainer","_buildFieldColumns","_handleFieldsSourceLoadError","_buildFieldFilters","_CustomFieldsPanelState","CollectionFieldsSourceState","constructor","params","_defineProperty2","default","TaskState","fieldsSource","toolbar","featuredPageActions","props","filterConfig","columnOverrides","schemaSource","editableCellFor","components","errorCode","customFieldsPanel","CustomFieldsPanelState","container","reportBi","closeSidePanel","createFieldActionsMenu","openFieldModal","opts","openCustomFieldModal","fieldId","origin","customOrigin","fieldActionsMenu","fieldActionHandlers","createFieldActionHandlers","setOnTable","source","collectionFieldsSource","buildFilters","buildFieldFilters","ReferenceFieldFilter","registerFilters","registerFieldFilters","buildColumns","firstBuild","initTask","status","isSuccess","buildFieldColumns","syncColumns","columns","hasBuiltColumns","setExtendedColumns","mergeFields","fields","_this$fieldsSource$me","_this$fieldsSource","call","init","_fieldsContainerOf","_this$initTask$status","_this$toolbar$customC","fieldsContainerOf","runOnce","load","promise","catch","handleLoadError","disposers","reaction","filterableFields","fireImmediately","customColumnsState","events","addEventListener","_this$initTask$status2","forEach","d","handleFieldsSourceLoadError","error","reload","retryLoad","reset","exports"],"sources":["../../../src/state/CollectionFieldsSourceState.ts"],"sourcesContent":["import { reaction } from 'mobx';\nimport type { ComponentType } from 'react';\nimport { addEventListener, TaskState } from '@wix/bex-core';\nimport type {\n FieldsSource,\n CustomFieldOrigin,\n Field,\n Schema,\n SchemaSource,\n WixPatternsErrorCode,\n} from '@wix/bex-core';\nimport type { Column } from '../model';\nimport { fieldsContainerOf } from '../model/schemaFieldsContainer';\nimport type { ToolbarCollectionState } from './ToolbarCollectionState';\nimport { buildFieldColumns, ColumnOverridesContext } from './buildFieldColumns';\nimport { handleFieldsSourceLoadError } from './handleFieldsSourceLoadError';\nimport {\n buildFieldFilters,\n registerFieldFilters,\n type FieldFilterConfig,\n} from './buildFieldFilters';\nimport type {\n FilterElement,\n CollectionToolbarFiltersProps,\n} from '../components/CollectionToolbarFilters';\nimport type { MoreActionItemFactory } from '../components/MoreActions/MoreActionsBase';\nimport {\n CustomFieldsPanelState,\n type FieldActionsMenuBuilder,\n} from './CustomFields/CustomFieldsPanelState';\nimport type { FieldActionHandlersConfig } from '../components/FieldActions';\nimport type { CustomColumnsBaseProps } from '../components/CustomColumns/CustomColumns';\nimport type { ReferenceFieldFilterProps } from '../components/ReferenceFieldFilter/ReferenceFieldFilter';\n\n/** A cell type plus the config its editor needs, for a field the default\n * type→cell mapping can't fully resolve on its own. */\nexport interface EditableCellUpgrade {\n cellType: string;\n typeConfig: unknown;\n}\n\n/** Builds the raw field-management for one field (handlers + registry metadata). */\ntype FieldActionHandlersBuilder = (args: {\n fieldId: string;\n origin: CustomFieldOrigin;\n location: string;\n}) => FieldActionHandlersConfig | null;\n\n/**\n * Components the source attaches at construction time so the table chunk can\n * render them via `source.components.X` instead of statically importing them.\n * Each source's rendering file (dataExtensionRendering / schemaRendering) is\n * the only place these are imported — those files are reachable only from the\n * source's feature module, so the components ship in that chunk, not the\n * table chunk.\n */\nexport interface FieldsSourceComponents {\n FieldManagementModals: ComponentType<{ source: CollectionFieldsSourceState }>;\n CustomColumns: ComponentType<CustomColumnsBaseProps>;\n CollectionToolbarFilters: ComponentType<CollectionToolbarFiltersProps>;\n /** Filters a reference field by the referenced items. Omit it and reference\n * fields get no filter — which is what a source with no reference fields\n * wants, since the component pulls the referenced-item avatar in with it. */\n ReferenceFieldFilter?: ComponentType<ReferenceFieldFilterProps>;\n}\n\n/**\n * The source-specific behavior a collection supplies on top of its FieldsSource\n * (data) — column tweaks, filter behavior, the manage-fields panel, page actions,\n * field actions, and the field-management modal states. A source builds one of\n * these (dataExtensionRendering / schemaRendering); it is spread onto\n * CollectionFieldsSourceState, which owns the pieces directly. The collection\n * renders these with shared, source-neutral components.\n */\nexport interface FieldsSourceRendering {\n /** The schema behind this source, when it has one. The collection initializes\n * the fields container the schema carries; the components read it off the\n * same object for React context. */\n schemaSource?: SchemaSource<any>;\n /**\n * Lets a source replace any column property the shared builder produces,\n * including the render function for media types. Called per field.\n */\n columnOverrides?(field: Field, ctx: ColumnOverridesContext): Partial<Column>;\n /**\n * The editable cell for a field whose editor needs `typeConfig` only the\n * source can supply (a reference cell's referenced collection). Called per\n * field when building editable columns; `undefined` keeps the default mapping\n * for that field type, which for those types is a read-only display.\n */\n editableCellFor?(field: Field): EditableCellUpgrade | undefined;\n /** Per-source filter behavior (text operators, decimal, type icon). */\n filterConfig: FieldFilterConfig;\n /**\n * Builds the source's per-field actions menu for the panel it belongs to. The\n * spine builds the panel and passes it in; the resulting menu drives both the\n * manage-fields panel and the customize-columns header.\n */\n createFieldActionsMenu: (\n panel: CustomFieldsPanelState,\n ) => FieldActionsMenuBuilder;\n /**\n * Builds the raw field-management for one field (handlers + registry metadata)\n * for the panel it belongs to, before grouping. The header merges these with\n * its table-intrinsic actions (sort / hide / filter). Omitted by sources with\n * no field actions.\n */\n createFieldActionHandlers?: (\n panel: CustomFieldsPanelState,\n ) => FieldActionHandlersBuilder;\n featuredPageActions: MoreActionItemFactory[];\n props?: { disableDefaultPageAction?: boolean };\n /** BI error code reported when the source's load fails. Default: 'InitCustomFieldsDataExtensionFailed'. */\n errorCode?: WixPatternsErrorCode;\n /** The source provides these so the table chunk renders them via DI rather\n * than static import. See FieldsSourceComponents. */\n components: FieldsSourceComponents;\n}\n\n/**\n * A collection's field source: the FieldsSource (data) plus the source's UI,\n * held as flat members. The toolbar holds one of these rather than a specific\n * source. It owns the load status (initTask); field and filter reads pass\n * through to the FieldsSource's own observables.\n */\nexport class CollectionFieldsSourceState {\n readonly fieldsSource: FieldsSource;\n /** The field-management state (modals + per-field menu). Built here from the\n * source's config so every source gets the same panel. */\n readonly customFieldsPanel: CustomFieldsPanelState;\n readonly featuredPageActions: MoreActionItemFactory[];\n readonly props?: { disableDefaultPageAction?: boolean };\n readonly filterConfig: FieldFilterConfig;\n readonly openFieldModal: (opts?: {\n fieldId?: string;\n origin?: CustomFieldOrigin;\n customOrigin?: string;\n }) => void;\n readonly fieldActionsMenu: FieldActionsMenuBuilder;\n readonly fieldActionHandlers?: FieldActionHandlersBuilder;\n readonly components: FieldsSourceComponents;\n /** Read by the source-driven components, which put its fields container in\n * React context. */\n readonly schemaSource?: SchemaSource<any>;\n /** Read by EditableTableState when it builds the source's editable columns. */\n readonly editableCellFor?: FieldsSourceRendering['editableCellFor'];\n private readonly columnOverrides?: FieldsSourceRendering['columnOverrides'];\n private readonly toolbar: ToolbarCollectionState<any, any>;\n private readonly errorCode: WixPatternsErrorCode;\n private hasBuiltColumns = false;\n\n constructor(\n params: {\n fieldsSource: FieldsSource;\n toolbar: ToolbarCollectionState<any, any>;\n } & FieldsSourceRendering,\n ) {\n this.fieldsSource = params.fieldsSource;\n this.toolbar = params.toolbar;\n this.featuredPageActions = params.featuredPageActions;\n this.props = params.props;\n this.filterConfig = params.filterConfig;\n this.columnOverrides = params.columnOverrides;\n this.schemaSource = params.schemaSource;\n this.editableCellFor = params.editableCellFor;\n this.components = params.components;\n this.errorCode = params.errorCode ?? 'InitCustomFieldsDataExtensionFailed';\n\n // The panel is generic — the source supplies only its config (the menu\n // factory); the table's container/reportBi wire it up. The panel builds all\n // three field-management modals (add/edit, archive, delete) itself.\n this.customFieldsPanel = new CustomFieldsPanelState({\n fieldsSource: params.fieldsSource,\n container: this.toolbar.container,\n reportBi: this.toolbar.reportBi,\n closeSidePanel: this.toolbar.closeSidePanel,\n createFieldActionsMenu: params.createFieldActionsMenu,\n });\n // Opening the add/edit modal and reading the per-field menu are the same for\n // every source, so derive them from the panel rather than per-source.\n this.openFieldModal = (opts) =>\n this.customFieldsPanel.openCustomFieldModal({\n fieldId: opts?.fieldId,\n origin: opts?.origin ?? 'external',\n customOrigin: opts?.customOrigin,\n });\n this.fieldActionsMenu = this.customFieldsPanel.fieldActionsMenu;\n this.fieldActionHandlers = params.createFieldActionHandlers?.(\n this.customFieldsPanel,\n );\n }\n\n /**\n * Attaches a source to a table's toolbar. Builds the wrapper once; calling it\n * again (e.g. on re-render) is a no-op.\n */\n static setOnTable(\n toolbar: ToolbarCollectionState<any, any>,\n source: { fieldsSource: FieldsSource } & FieldsSourceRendering,\n ) {\n toolbar.collectionFieldsSource ??= new CollectionFieldsSourceState({\n ...source,\n toolbar,\n });\n }\n\n readonly initTask = new TaskState();\n\n buildFilters(): FilterElement[] {\n return buildFieldFilters(\n this.toolbar,\n this.fieldsSource,\n this.filterConfig,\n this.components.ReferenceFieldFilter,\n );\n }\n\n /** Registers a filter state per filterable field on the collection query. */\n registerFilters() {\n registerFieldFilters(\n this.toolbar,\n this.fieldsSource,\n this.filterConfig,\n this.components.ReferenceFieldFilter,\n );\n }\n\n /**\n * Builds the columns from the fields, or null while the source is still\n * loading so existing columns are kept.\n */\n buildColumns(firstBuild: boolean): Column[] | null {\n if (!this.initTask.status.isSuccess) {\n return null;\n }\n return buildFieldColumns(this.fieldsSource, this.columnOverrides, {\n firstBuild,\n });\n }\n\n syncColumns() {\n const columns = this.buildColumns(!this.hasBuiltColumns);\n if (columns) {\n this.toolbar.setExtendedColumns(columns);\n this.hasBuiltColumns = true;\n }\n }\n\n /** Merges a returned fields map into the source (no refetch). No-ops for sources\n * that don't support in-place merging. The fields reaction rebuilds columns. */\n mergeFields(fields: Schema['fields']) {\n this.fieldsSource.mergeFields?.(fields);\n }\n\n init() {\n // Idempotent, and the field renderers can't translate until it resolves.\n fieldsContainerOf(this.schemaSource)?.init();\n this.initTask.runOnce(() => this.fieldsSource.load());\n this.initTask.status.promise?.catch(() => this.handleLoadError());\n\n const disposers = [\n // Push the columns once the source loads, and again whenever the field\n // list changes (add/edit/delete field). The first push starts every\n // column hidden; later pushes keep the user's selection.\n reaction(\n () =>\n [this.fieldsSource.fields, this.initTask.status.isSuccess] as const,\n () => this.syncColumns(),\n ),\n // Register a filter state per filterable field. filterableFields populates\n // inside the source's load (before initTask resolves), so the collection's\n // initial fetch still waits for these — matching the prior per-source timing.\n reaction(\n () => this.fieldsSource.filterableFields,\n () => this.registerFilters(),\n { fireImmediately: true },\n ),\n // Make custom-columns storage reconciliation wait until this source's\n // columns are built, so a stored hide/show selection for source fields\n // survives a reload. Covers any source.\n ...(this.toolbar.customColumnsState?.events\n ? [\n addEventListener(\n this.toolbar.customColumnsState.events,\n 'beforeInitialFetch',\n () => this.initTask.status.promise?.catch(() => {}),\n ),\n ]\n : []),\n ];\n\n return () => {\n disposers.forEach((d) => d?.());\n };\n }\n\n private handleLoadError() {\n handleFieldsSourceLoadError({\n container: this.toolbar.container,\n reportBi: this.toolbar.reportBi,\n error: this.initTask.status.error,\n errorCode: this.errorCode,\n reload: () => this.retryLoad(),\n });\n }\n\n /** Re-runs the source load after a failure (the retry toast). */\n private retryLoad() {\n this.initTask.reset();\n this.initTask.runOnce(() => this.fieldsSource.load());\n return this.initTask.status.promise;\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_mobx","require","_bexCore","_schemaFieldsContainer","_buildFieldColumns","_handleFieldsSourceLoadError","_buildFieldFilters","_CustomFieldsPanelState","CollectionFieldsSourceState","constructor","params","_defineProperty2","default","TaskState","fieldsSource","toolbar","featuredPageActions","props","filterConfig","columnOverrides","schemaSource","editableCellFor","components","errorCode","customFieldsPanel","CustomFieldsPanelState","container","reportBi","closeSidePanel","createFieldActionsMenu","openFieldModal","opts","openCustomFieldModal","fieldId","origin","customOrigin","initialField","lockedProperties","fieldActionsMenu","fieldActionHandlers","createFieldActionHandlers","setOnTable","source","collectionFieldsSource","buildFilters","buildFieldFilters","ReferenceFieldFilter","registerFilters","registerFieldFilters","buildColumns","firstBuild","initTask","status","isSuccess","buildFieldColumns","syncColumns","columns","hasBuiltColumns","setExtendedColumns","mergeFields","fields","_this$fieldsSource$me","_this$fieldsSource","call","init","_fieldsContainerOf","_this$initTask$status","_this$toolbar$customC","fieldsContainerOf","runOnce","load","promise","catch","handleLoadError","disposers","reaction","filterableFields","fireImmediately","customColumnsState","events","addEventListener","_this$initTask$status2","forEach","d","handleFieldsSourceLoadError","error","reload","retryLoad","reset","exports"],"sources":["../../../src/state/CollectionFieldsSourceState.ts"],"sourcesContent":["import { reaction } from 'mobx';\nimport type { ComponentType } from 'react';\nimport { addEventListener, TaskState } from '@wix/bex-core';\nimport type {\n FieldsSource,\n CustomFieldOrigin,\n Field,\n OpenFieldModalOptions,\n Schema,\n SchemaSource,\n WixPatternsErrorCode,\n} from '@wix/bex-core';\nimport type { Column } from '../model';\nimport { fieldsContainerOf } from '../model/schemaFieldsContainer';\nimport type { ToolbarCollectionState } from './ToolbarCollectionState';\nimport { buildFieldColumns, ColumnOverridesContext } from './buildFieldColumns';\nimport { handleFieldsSourceLoadError } from './handleFieldsSourceLoadError';\nimport {\n buildFieldFilters,\n registerFieldFilters,\n type FieldFilterConfig,\n} from './buildFieldFilters';\nimport type {\n FilterElement,\n CollectionToolbarFiltersProps,\n} from '../components/CollectionToolbarFilters';\nimport type { MoreActionItemFactory } from '../components/MoreActions/MoreActionsBase';\nimport {\n CustomFieldsPanelState,\n type FieldActionsMenuBuilder,\n} from './CustomFields/CustomFieldsPanelState';\nimport type { FieldActionHandlersConfig } from '../components/FieldActions';\nimport type { CustomColumnsBaseProps } from '../components/CustomColumns/CustomColumns';\nimport type { ReferenceFieldFilterProps } from '../components/ReferenceFieldFilter/ReferenceFieldFilter';\n\n/** A cell type plus the config its editor needs, for a field the default\n * type→cell mapping can't fully resolve on its own. */\nexport interface EditableCellUpgrade {\n cellType: string;\n typeConfig: unknown;\n}\n\n/** Builds the raw field-management for one field (handlers + registry metadata). */\ntype FieldActionHandlersBuilder = (args: {\n fieldId: string;\n origin: CustomFieldOrigin;\n location: string;\n}) => FieldActionHandlersConfig | null;\n\n/**\n * Components the source attaches at construction time so the table chunk can\n * render them via `source.components.X` instead of statically importing them.\n * Each source's rendering file (dataExtensionRendering / schemaRendering) is\n * the only place these are imported — those files are reachable only from the\n * source's feature module, so the components ship in that chunk, not the\n * table chunk.\n */\nexport interface FieldsSourceComponents {\n FieldManagementModals: ComponentType<{ source: CollectionFieldsSourceState }>;\n CustomColumns: ComponentType<CustomColumnsBaseProps>;\n CollectionToolbarFilters: ComponentType<CollectionToolbarFiltersProps>;\n /** Filters a reference field by the referenced items. Omit it and reference\n * fields get no filter — which is what a source with no reference fields\n * wants, since the component pulls the referenced-item avatar in with it. */\n ReferenceFieldFilter?: ComponentType<ReferenceFieldFilterProps>;\n}\n\n/**\n * The source-specific behavior a collection supplies on top of its FieldsSource\n * (data) — column tweaks, filter behavior, the manage-fields panel, page actions,\n * field actions, and the field-management modal states. A source builds one of\n * these (dataExtensionRendering / schemaRendering); it is spread onto\n * CollectionFieldsSourceState, which owns the pieces directly. The collection\n * renders these with shared, source-neutral components.\n */\nexport interface FieldsSourceRendering {\n /** The schema behind this source, when it has one. The collection initializes\n * the fields container the schema carries; the components read it off the\n * same object for React context. */\n schemaSource?: SchemaSource<any>;\n /**\n * Lets a source replace any column property the shared builder produces,\n * including the render function for media types. Called per field.\n */\n columnOverrides?(field: Field, ctx: ColumnOverridesContext): Partial<Column>;\n /**\n * The editable cell for a field whose editor needs `typeConfig` only the\n * source can supply (a reference cell's referenced collection). Called per\n * field when building editable columns; `undefined` keeps the default mapping\n * for that field type, which for those types is a read-only display.\n */\n editableCellFor?(field: Field): EditableCellUpgrade | undefined;\n /** Per-source filter behavior (text operators, decimal, type icon). */\n filterConfig: FieldFilterConfig;\n /**\n * Builds the source's per-field actions menu for the panel it belongs to. The\n * spine builds the panel and passes it in; the resulting menu drives both the\n * manage-fields panel and the customize-columns header.\n */\n createFieldActionsMenu: (\n panel: CustomFieldsPanelState,\n ) => FieldActionsMenuBuilder;\n /**\n * Builds the raw field-management for one field (handlers + registry metadata)\n * for the panel it belongs to, before grouping. The header merges these with\n * its table-intrinsic actions (sort / hide / filter). Omitted by sources with\n * no field actions.\n */\n createFieldActionHandlers?: (\n panel: CustomFieldsPanelState,\n ) => FieldActionHandlersBuilder;\n featuredPageActions: MoreActionItemFactory[];\n props?: { disableDefaultPageAction?: boolean };\n /** BI error code reported when the source's load fails. Default: 'InitCustomFieldsDataExtensionFailed'. */\n errorCode?: WixPatternsErrorCode;\n /** The source provides these so the table chunk renders them via DI rather\n * than static import. See FieldsSourceComponents. */\n components: FieldsSourceComponents;\n}\n\n/**\n * A collection's field source: the FieldsSource (data) plus the source's UI,\n * held as flat members. The toolbar holds one of these rather than a specific\n * source. It owns the load status (initTask); field and filter reads pass\n * through to the FieldsSource's own observables.\n */\nexport class CollectionFieldsSourceState {\n readonly fieldsSource: FieldsSource;\n /** The field-management state (modals + per-field menu). Built here from the\n * source's config so every source gets the same panel. */\n readonly customFieldsPanel: CustomFieldsPanelState;\n readonly featuredPageActions: MoreActionItemFactory[];\n readonly props?: { disableDefaultPageAction?: boolean };\n readonly filterConfig: FieldFilterConfig;\n readonly openFieldModal: (opts?: OpenFieldModalOptions) => void;\n readonly fieldActionsMenu: FieldActionsMenuBuilder;\n readonly fieldActionHandlers?: FieldActionHandlersBuilder;\n readonly components: FieldsSourceComponents;\n /** Read by the source-driven components, which put its fields container in\n * React context. */\n readonly schemaSource?: SchemaSource<any>;\n /** Read by EditableTableState when it builds the source's editable columns. */\n readonly editableCellFor?: FieldsSourceRendering['editableCellFor'];\n private readonly columnOverrides?: FieldsSourceRendering['columnOverrides'];\n private readonly toolbar: ToolbarCollectionState<any, any>;\n private readonly errorCode: WixPatternsErrorCode;\n private hasBuiltColumns = false;\n\n constructor(\n params: {\n fieldsSource: FieldsSource;\n toolbar: ToolbarCollectionState<any, any>;\n } & FieldsSourceRendering,\n ) {\n this.fieldsSource = params.fieldsSource;\n this.toolbar = params.toolbar;\n this.featuredPageActions = params.featuredPageActions;\n this.props = params.props;\n this.filterConfig = params.filterConfig;\n this.columnOverrides = params.columnOverrides;\n this.schemaSource = params.schemaSource;\n this.editableCellFor = params.editableCellFor;\n this.components = params.components;\n this.errorCode = params.errorCode ?? 'InitCustomFieldsDataExtensionFailed';\n\n // The panel is generic — the source supplies only its config (the menu\n // factory); the table's container/reportBi wire it up. The panel builds all\n // three field-management modals (add/edit, archive, delete) itself.\n this.customFieldsPanel = new CustomFieldsPanelState({\n fieldsSource: params.fieldsSource,\n container: this.toolbar.container,\n reportBi: this.toolbar.reportBi,\n closeSidePanel: this.toolbar.closeSidePanel,\n createFieldActionsMenu: params.createFieldActionsMenu,\n });\n // Opening the add/edit modal and reading the per-field menu are the same for\n // every source, so derive them from the panel rather than per-source.\n this.openFieldModal = (opts) =>\n this.customFieldsPanel.openCustomFieldModal({\n fieldId: opts?.fieldId,\n origin: opts?.origin ?? 'external',\n customOrigin: opts?.customOrigin,\n initialField: opts?.initialField,\n lockedProperties: opts?.lockedProperties,\n });\n this.fieldActionsMenu = this.customFieldsPanel.fieldActionsMenu;\n this.fieldActionHandlers = params.createFieldActionHandlers?.(\n this.customFieldsPanel,\n );\n }\n\n /**\n * Attaches a source to a table's toolbar. Builds the wrapper once; calling it\n * again (e.g. on re-render) is a no-op.\n */\n static setOnTable(\n toolbar: ToolbarCollectionState<any, any>,\n source: { fieldsSource: FieldsSource } & FieldsSourceRendering,\n ) {\n toolbar.collectionFieldsSource ??= new CollectionFieldsSourceState({\n ...source,\n toolbar,\n });\n }\n\n readonly initTask = new TaskState();\n\n buildFilters(): FilterElement[] {\n return buildFieldFilters(\n this.toolbar,\n this.fieldsSource,\n this.filterConfig,\n this.components.ReferenceFieldFilter,\n );\n }\n\n /** Registers a filter state per filterable field on the collection query. */\n registerFilters() {\n registerFieldFilters(\n this.toolbar,\n this.fieldsSource,\n this.filterConfig,\n this.components.ReferenceFieldFilter,\n );\n }\n\n /**\n * Builds the columns from the fields, or null while the source is still\n * loading so existing columns are kept.\n */\n buildColumns(firstBuild: boolean): Column[] | null {\n if (!this.initTask.status.isSuccess) {\n return null;\n }\n return buildFieldColumns(this.fieldsSource, this.columnOverrides, {\n firstBuild,\n });\n }\n\n syncColumns() {\n const columns = this.buildColumns(!this.hasBuiltColumns);\n if (columns) {\n this.toolbar.setExtendedColumns(columns);\n this.hasBuiltColumns = true;\n }\n }\n\n /** Merges a returned fields map into the source (no refetch). No-ops for sources\n * that don't support in-place merging. The fields reaction rebuilds columns. */\n mergeFields(fields: Schema['fields']) {\n this.fieldsSource.mergeFields?.(fields);\n }\n\n init() {\n // Idempotent, and the field renderers can't translate until it resolves.\n fieldsContainerOf(this.schemaSource)?.init();\n this.initTask.runOnce(() => this.fieldsSource.load());\n this.initTask.status.promise?.catch(() => this.handleLoadError());\n\n const disposers = [\n // Push the columns once the source loads, and again whenever the field\n // list changes (add/edit/delete field). The first push starts every\n // column hidden; later pushes keep the user's selection.\n reaction(\n () =>\n [this.fieldsSource.fields, this.initTask.status.isSuccess] as const,\n () => this.syncColumns(),\n ),\n // Register a filter state per filterable field. filterableFields populates\n // inside the source's load (before initTask resolves), so the collection's\n // initial fetch still waits for these — matching the prior per-source timing.\n reaction(\n () => this.fieldsSource.filterableFields,\n () => this.registerFilters(),\n { fireImmediately: true },\n ),\n // Make custom-columns storage reconciliation wait until this source's\n // columns are built, so a stored hide/show selection for source fields\n // survives a reload. Covers any source.\n ...(this.toolbar.customColumnsState?.events\n ? [\n addEventListener(\n this.toolbar.customColumnsState.events,\n 'beforeInitialFetch',\n () => this.initTask.status.promise?.catch(() => {}),\n ),\n ]\n : []),\n ];\n\n return () => {\n disposers.forEach((d) => d?.());\n };\n }\n\n private handleLoadError() {\n handleFieldsSourceLoadError({\n container: this.toolbar.container,\n reportBi: this.toolbar.reportBi,\n error: this.initTask.status.error,\n errorCode: this.errorCode,\n reload: () => this.retryLoad(),\n });\n }\n\n /** Re-runs the source load after a failure (the retry toast). */\n private retryLoad() {\n this.initTask.reset();\n this.initTask.runOnce(() => this.fieldsSource.load());\n return this.initTask.status.promise;\n }\n}\n"],"mappings":"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","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_ = "CollectionPageHeader1525849123";
|
|
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": "CollectionPageHeader1525849123__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/CollectionPage/CollectionPageHeader.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/CollectionPage/CollectionPageHeader.st.css.ts"],"sourcesContent":["// @ts-nocheck\n\n\nimport { classesRuntime, statesRuntime } from \"../../stylable-esm-runtime.js\";\n\n\n\nvar _namespace_ = \"CollectionPageHeader1525849123\";\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\":\"CollectionPageHeader1525849123__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,gCAAgC;AAClD,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;AAAsC,CAAC;AAC7D,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":[]}
|
|
@@ -88,6 +88,7 @@ class CustomFieldsPanelState {
|
|
|
88
88
|
customFieldModal.mode = params.fieldId ? 'edit' : 'new';
|
|
89
89
|
customFieldModal.origin = params.origin;
|
|
90
90
|
customFieldModal.customOrigin = params.customOrigin;
|
|
91
|
+
customFieldModal.lockedProperties = params.lockedProperties ?? [];
|
|
91
92
|
!params.fieldId && customFieldModalBiReporter.reportAddCustomField({
|
|
92
93
|
origin: params.origin,
|
|
93
94
|
customOrigin: params.customOrigin
|
|
@@ -104,6 +105,8 @@ class CustomFieldsPanelState {
|
|
|
104
105
|
disablePermissionCheckboxes: true
|
|
105
106
|
});
|
|
106
107
|
customFieldModalBiReporter.formSnapshot = formValues;
|
|
108
|
+
} else {
|
|
109
|
+
customFieldModal.applyInitialField(params.initialField);
|
|
107
110
|
}
|
|
108
111
|
customFieldModal.modalState.modal.open();
|
|
109
112
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_bexCore","require","_mobx","_fieldTypeActions","CustomFieldsPanelState","constructor","params","_defineProperty2","default","reportBi","closeSidePanel","fieldsSource","container","archive","archiveFieldModal","ArchiveFieldModalState","archiver","customFieldModal","CustomFieldModalState","fieldManagement","fieldCount","manageableFields","length","deleteFieldModal","DeleteFieldModalState","deleteField","id","origin","items","closePanel","undefined","sourceMenu","createFieldActionsMenu","fieldActionsMenu","args","config","field","fields","find","f","fieldId","definition","resolveFieldTypeDefinition","extras","buildFieldTypeActionGroup","mergeFieldTypeActions","makeAutoObservable","openCustomFieldModal","customFieldModalBiReporter","reset","mode","customOrigin","reportAddCustomField","formSnapshot","setDefaultPermissions","_this$fieldsSource$fi","formValues","getFieldDraft","setFormValues","disablePermissionCheckboxes","modalState","modal","open","exports"],"sources":["../../../../src/state/CustomFields/CustomFieldsPanelState.ts"],"sourcesContent":["import {\n ArchiveFieldModalState,\n CustomFieldModalState,\n CustomFieldOrigin,\n DeleteFieldModalState,\n FieldsSource,\n ReportBI,\n WixPatternsContainer,\n resolveFieldTypeDefinition,\n} from '@wix/bex-core';\nimport { makeAutoObservable } from 'mobx';\nimport type { FieldActionsMenuConfig } from '../../components/FieldActions';\nimport {\n buildFieldTypeActionGroup,\n mergeFieldTypeActions,\n} from '../../components/FieldActions/fieldTypeActions';\n\n/** Builds the per-field action popover (edit / archive / delete …) for a field. */\nexport type FieldActionsMenuBuilder = (args: {\n fieldId: string;\n origin: CustomFieldOrigin;\n location: string;\n}) => FieldActionsMenuConfig | null;\n\nexport interface CustomFieldsPanelStateParams {\n readonly reportBi: ReportBI;\n readonly closeSidePanel: () => unknown;\n readonly fieldsSource: FieldsSource;\n readonly container: WixPatternsContainer;\n /**\n * The source's per-field menu, as a factory over the panel it belongs to (its\n * handlers call back into this panel's modals). Built once in the constructor.\n */\n readonly createFieldActionsMenu: (\n panel: CustomFieldsPanelState,\n ) => FieldActionsMenuBuilder;\n}\n\nexport class CustomFieldsPanelState {\n readonly reportBi;\n readonly closeSidePanel;\n readonly fieldsSource;\n readonly container;\n readonly customFieldModal;\n readonly archiveFieldModal?: ArchiveFieldModalState;\n readonly deleteFieldModal: DeleteFieldModalState;\n /** The per-field action popover. The source supplies it; CustomFieldItem reads it. */\n readonly fieldActionsMenu: FieldActionsMenuBuilder;\n\n constructor(params: CustomFieldsPanelStateParams) {\n this.reportBi = params.reportBi;\n this.closeSidePanel = params.closeSidePanel;\n this.fieldsSource = params.fieldsSource;\n this.container = params.container;\n\n if (params.fieldsSource.archive) {\n this.archiveFieldModal = new ArchiveFieldModalState({\n reportBi: this.reportBi,\n archiver: params.fieldsSource.archive,\n });\n }\n this.customFieldModal = new CustomFieldModalState({\n reportBi: this.reportBi,\n fieldManagement: params.fieldsSource.fieldManagement!,\n container: params.container,\n fieldCount: () => params.fieldsSource.manageableFields.length,\n });\n // The delete runs through the source's own deleteField (which reports its\n // own toast) and reconciles the archived-items list when archiving exists.\n this.deleteFieldModal = new DeleteFieldModalState({\n reportBi: this.reportBi,\n fieldManagement: {\n deleteField: (id, origin) =>\n params.fieldsSource.fieldManagement!.deleteField(id, origin),\n },\n archive: params.fieldsSource.archive ?? {\n items: [],\n closePanel: () => undefined,\n },\n });\n // A custom field type's extra actions render on every surface's menu, so\n // they're appended here — after the source built its own menu — rather\n // than inside each source's builder.\n const sourceMenu = params.createFieldActionsMenu(this);\n this.fieldActionsMenu = (args) => {\n const config = sourceMenu(args);\n const field = this.fieldsSource.fields.find((f) => f.id === args.fieldId);\n const definition = field\n ? resolveFieldTypeDefinition(this.fieldsSource, field)\n : undefined;\n const extras =\n field && definition\n ? buildFieldTypeActionGroup({ field, definition })\n : [];\n return mergeFieldTypeActions(config, extras);\n };\n makeAutoObservable(this, {\n // A function that builds (doesn't mutate) the popover — not an action. It's\n // set once here and never reassigned, so it needn't be observable either.\n fieldActionsMenu: false,\n });\n }\n\n get fieldManagement() {\n return this.fieldsSource.fieldManagement;\n }\n get manageableFields() {\n return this.fieldsSource.manageableFields;\n }\n get archive() {\n return this.fieldsSource.archive;\n }\n\n openCustomFieldModal(params: {\n
|
|
1
|
+
{"version":3,"names":["_bexCore","require","_mobx","_fieldTypeActions","CustomFieldsPanelState","constructor","params","_defineProperty2","default","reportBi","closeSidePanel","fieldsSource","container","archive","archiveFieldModal","ArchiveFieldModalState","archiver","customFieldModal","CustomFieldModalState","fieldManagement","fieldCount","manageableFields","length","deleteFieldModal","DeleteFieldModalState","deleteField","id","origin","items","closePanel","undefined","sourceMenu","createFieldActionsMenu","fieldActionsMenu","args","config","field","fields","find","f","fieldId","definition","resolveFieldTypeDefinition","extras","buildFieldTypeActionGroup","mergeFieldTypeActions","makeAutoObservable","openCustomFieldModal","customFieldModalBiReporter","reset","mode","customOrigin","lockedProperties","reportAddCustomField","formSnapshot","setDefaultPermissions","_this$fieldsSource$fi","formValues","getFieldDraft","setFormValues","disablePermissionCheckboxes","applyInitialField","initialField","modalState","modal","open","exports"],"sources":["../../../../src/state/CustomFields/CustomFieldsPanelState.ts"],"sourcesContent":["import {\n ArchiveFieldModalState,\n CustomFieldModalState,\n CustomFieldOrigin,\n DeleteFieldModalState,\n FieldsSource,\n OpenFieldModalOptions,\n ReportBI,\n WixPatternsContainer,\n resolveFieldTypeDefinition,\n} from '@wix/bex-core';\nimport { makeAutoObservable } from 'mobx';\nimport type { FieldActionsMenuConfig } from '../../components/FieldActions';\nimport {\n buildFieldTypeActionGroup,\n mergeFieldTypeActions,\n} from '../../components/FieldActions/fieldTypeActions';\n\n/** Builds the per-field action popover (edit / archive / delete …) for a field. */\nexport type FieldActionsMenuBuilder = (args: {\n fieldId: string;\n origin: CustomFieldOrigin;\n location: string;\n}) => FieldActionsMenuConfig | null;\n\nexport interface CustomFieldsPanelStateParams {\n readonly reportBi: ReportBI;\n readonly closeSidePanel: () => unknown;\n readonly fieldsSource: FieldsSource;\n readonly container: WixPatternsContainer;\n /**\n * The source's per-field menu, as a factory over the panel it belongs to (its\n * handlers call back into this panel's modals). Built once in the constructor.\n */\n readonly createFieldActionsMenu: (\n panel: CustomFieldsPanelState,\n ) => FieldActionsMenuBuilder;\n}\n\nexport class CustomFieldsPanelState {\n readonly reportBi;\n readonly closeSidePanel;\n readonly fieldsSource;\n readonly container;\n readonly customFieldModal;\n readonly archiveFieldModal?: ArchiveFieldModalState;\n readonly deleteFieldModal: DeleteFieldModalState;\n /** The per-field action popover. The source supplies it; CustomFieldItem reads it. */\n readonly fieldActionsMenu: FieldActionsMenuBuilder;\n\n constructor(params: CustomFieldsPanelStateParams) {\n this.reportBi = params.reportBi;\n this.closeSidePanel = params.closeSidePanel;\n this.fieldsSource = params.fieldsSource;\n this.container = params.container;\n\n if (params.fieldsSource.archive) {\n this.archiveFieldModal = new ArchiveFieldModalState({\n reportBi: this.reportBi,\n archiver: params.fieldsSource.archive,\n });\n }\n this.customFieldModal = new CustomFieldModalState({\n reportBi: this.reportBi,\n fieldManagement: params.fieldsSource.fieldManagement!,\n container: params.container,\n fieldCount: () => params.fieldsSource.manageableFields.length,\n });\n // The delete runs through the source's own deleteField (which reports its\n // own toast) and reconciles the archived-items list when archiving exists.\n this.deleteFieldModal = new DeleteFieldModalState({\n reportBi: this.reportBi,\n fieldManagement: {\n deleteField: (id, origin) =>\n params.fieldsSource.fieldManagement!.deleteField(id, origin),\n },\n archive: params.fieldsSource.archive ?? {\n items: [],\n closePanel: () => undefined,\n },\n });\n // A custom field type's extra actions render on every surface's menu, so\n // they're appended here — after the source built its own menu — rather\n // than inside each source's builder.\n const sourceMenu = params.createFieldActionsMenu(this);\n this.fieldActionsMenu = (args) => {\n const config = sourceMenu(args);\n const field = this.fieldsSource.fields.find((f) => f.id === args.fieldId);\n const definition = field\n ? resolveFieldTypeDefinition(this.fieldsSource, field)\n : undefined;\n const extras =\n field && definition\n ? buildFieldTypeActionGroup({ field, definition })\n : [];\n return mergeFieldTypeActions(config, extras);\n };\n makeAutoObservable(this, {\n // A function that builds (doesn't mutate) the popover — not an action. It's\n // set once here and never reassigned, so it needn't be observable either.\n fieldActionsMenu: false,\n });\n }\n\n get fieldManagement() {\n return this.fieldsSource.fieldManagement;\n }\n get manageableFields() {\n return this.fieldsSource.manageableFields;\n }\n get archive() {\n return this.fieldsSource.archive;\n }\n\n openCustomFieldModal(\n params: Omit<OpenFieldModalOptions, 'origin'> & {\n origin: CustomFieldOrigin;\n },\n ) {\n const { customFieldModal } = this;\n const { customFieldModalBiReporter } = customFieldModal;\n\n customFieldModal.reset();\n customFieldModal.mode = params.fieldId ? 'edit' : 'new';\n customFieldModal.origin = params.origin;\n customFieldModal.customOrigin = params.customOrigin;\n customFieldModal.lockedProperties = params.lockedProperties ?? [];\n\n !params.fieldId &&\n customFieldModalBiReporter.reportAddCustomField({\n origin: params.origin,\n customOrigin: params.customOrigin,\n });\n\n customFieldModalBiReporter.formSnapshot = null;\n customFieldModal.setDefaultPermissions();\n\n if (params.fieldId) {\n const formValues = this.fieldsSource.fieldManagement?.getFieldDraft(\n params.fieldId,\n );\n if (!formValues) {\n return;\n }\n customFieldModal.setFormValues(formValues, {\n disablePermissionCheckboxes: true,\n });\n customFieldModalBiReporter.formSnapshot = formValues;\n } else {\n customFieldModal.applyInitialField(params.initialField);\n }\n\n customFieldModal.modalState.modal.open();\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -46,6 +46,11 @@ class EntityPageState {
|
|
|
46
46
|
* the panel is rendered by the host with no props and reads it from here,
|
|
47
47
|
* as a table's panel reads `toolbar.customColumnsState`. */
|
|
48
48
|
(0, _defineProperty2.default)(this, "customColumnsState", null);
|
|
49
|
+
// Shallow: a deep set would wrap the token objects, and release could not
|
|
50
|
+
// find them again.
|
|
51
|
+
(0, _defineProperty2.default)(this, "_saveHolds", _mobx.observable.set([], {
|
|
52
|
+
deep: false
|
|
53
|
+
}));
|
|
49
54
|
(0, _defineProperty2.default)(this, "schemaSource", void 0);
|
|
50
55
|
(0, _defineProperty2.default)(this, "container", void 0);
|
|
51
56
|
(0, _defineProperty2.default)(this, "reportBI", void 0);
|
|
@@ -103,6 +108,8 @@ class EntityPageState {
|
|
|
103
108
|
_loadedSchema: _mobx.observable.ref,
|
|
104
109
|
setLoadedSchema: _mobx.action,
|
|
105
110
|
customColumnsState: _mobx.observable.ref,
|
|
111
|
+
holdSave: _mobx.action,
|
|
112
|
+
isSaveHeld: _mobx.computed,
|
|
106
113
|
isFormDirty: _mobx.computed,
|
|
107
114
|
_withinRouter: _mobx.computed
|
|
108
115
|
});
|
|
@@ -268,8 +275,25 @@ class EntityPageState {
|
|
|
268
275
|
_deletedEntity: deletedCollectionItem
|
|
269
276
|
});
|
|
270
277
|
}
|
|
278
|
+
|
|
279
|
+
/**
|
|
280
|
+
* Blocks `handleSubmit` until the returned release is called (idempotent).
|
|
281
|
+
* For features whose form fields are not mounted yet — react-hook-form only
|
|
282
|
+
* validates mounted controls, so a save in that window would skip their
|
|
283
|
+
* required-field validation.
|
|
284
|
+
*/
|
|
285
|
+
holdSave() {
|
|
286
|
+
const hold = {};
|
|
287
|
+
this._saveHolds.add(hold);
|
|
288
|
+
return (0, _mobx.action)(() => {
|
|
289
|
+
this._saveHolds.delete(hold);
|
|
290
|
+
});
|
|
291
|
+
}
|
|
292
|
+
get isSaveHeld() {
|
|
293
|
+
return this._saveHolds.size > 0;
|
|
294
|
+
}
|
|
271
295
|
async handleSubmit(e) {
|
|
272
|
-
if (this.formPage.submitTask.status.isLoading) {
|
|
296
|
+
if (this.formPage.submitTask.status.isLoading || this.isSaveHeld) {
|
|
273
297
|
return;
|
|
274
298
|
}
|
|
275
299
|
this.events.emit('save');
|