@wix/patterns 1.126.0 → 1.131.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/AppliedFiltersTagList/AppliedFiltersTagListState.js +3 -2
- package/dist/cjs/components/AppliedFiltersTagList/AppliedFiltersTagListState.js.map +1 -1
- package/dist/cjs/components/CardContainer/CardContainer.js +11 -5
- package/dist/cjs/components/CardContainer/CardContainer.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/CollectionCard/CollectionCard.js.map +1 -1
- package/dist/cjs/components/CollectionFilter/CollectionFilterState.js +2 -1
- package/dist/cjs/components/CollectionFilter/CollectionFilterState.js.map +1 -1
- package/dist/cjs/components/CollectionTable/CollectionTable.js.map +1 -1
- package/dist/cjs/components/CollectionToolbar/CollectionToolbar.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.js.map +1 -1
- package/dist/cjs/components/CollectionToolbar/SearchOrCustomFilter.st.css.js +3 -3
- package/dist/cjs/components/CollectionToolbar/SearchOrCustomFilter.st.css.js.map +1 -1
- package/dist/cjs/components/CollectionToolbars/CollectionToolbars.js +9 -9
- package/dist/cjs/components/CollectionToolbars/CollectionToolbars.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/CustomFieldsForm/CustomFieldsForm.js +15 -11
- package/dist/cjs/components/CustomFieldsForm/CustomFieldsForm.js.map +1 -1
- package/dist/cjs/components/CustomFieldsWidget/CustomFieldsNamespaceForm.js +41 -0
- package/dist/cjs/components/CustomFieldsWidget/CustomFieldsNamespaceForm.js.map +1 -0
- package/dist/cjs/components/CustomFieldsWidget/CustomFieldsViewWidget.js +63 -121
- package/dist/cjs/components/CustomFieldsWidget/CustomFieldsViewWidget.js.map +1 -1
- package/dist/cjs/components/CustomFieldsWidget/CustomFieldsViewWidget.uni.driver.js +2 -2
- package/dist/cjs/components/CustomFieldsWidget/CustomFieldsViewWidget.uni.driver.js.map +1 -1
- package/dist/cjs/components/CustomFieldsWidget/CustomFieldsViewWidgetInline.js +83 -0
- package/dist/cjs/components/CustomFieldsWidget/CustomFieldsViewWidgetInline.js.map +1 -0
- package/dist/cjs/components/CustomFieldsWidget/CustomFieldsWidget.js +4 -6
- package/dist/cjs/components/CustomFieldsWidget/CustomFieldsWidget.js.map +1 -1
- package/dist/cjs/components/CustomFieldsWidget/CustomFieldsWidgetCard.js +10 -12
- package/dist/cjs/components/CustomFieldsWidget/CustomFieldsWidgetCard.js.map +1 -1
- package/dist/cjs/components/CustomFieldsWidget/CustomFieldsWidgetContent.js +17 -23
- package/dist/cjs/components/CustomFieldsWidget/CustomFieldsWidgetContent.js.map +1 -1
- package/dist/cjs/components/CustomFieldsWidget/CustomFieldsWidgetContentLazy.js +2 -4
- package/dist/cjs/components/CustomFieldsWidget/CustomFieldsWidgetContentLazy.js.map +1 -1
- package/dist/cjs/components/CustomFieldsWidget/CustomFieldsWidgetInline.js +1 -3
- package/dist/cjs/components/CustomFieldsWidget/CustomFieldsWidgetInline.js.map +1 -1
- package/dist/cjs/components/CustomFieldsWidget/EmptyStateViewContent.js +38 -0
- package/dist/cjs/components/CustomFieldsWidget/EmptyStateViewContent.js.map +1 -0
- package/dist/cjs/components/DataExtension/CollectionDataExtensionState.js +5 -4
- package/dist/cjs/components/DataExtension/CollectionDataExtensionState.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/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/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 +2 -2
- package/dist/cjs/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js.map +1 -1
- package/dist/cjs/components/NestedTable/NestedTable.js +3 -3
- package/dist/cjs/components/NestedTable/NestedTable.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/NestedTable/NestedTableWSRTable.js +6 -12
- package/dist/cjs/components/NestedTable/NestedTableWSRTable.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/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/TableVirtualHeader.st.css.js +2 -2
- package/dist/cjs/components/Table/TableVirtualHeader.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/Tags/Tags.js +2 -10
- package/dist/cjs/components/Tags/Tags.js.map +1 -1
- package/dist/cjs/components/TagsAssignButton/TagsAssignButton.js +10 -12
- package/dist/cjs/components/TagsAssignButton/TagsAssignButton.js.map +1 -1
- package/dist/cjs/components/ToolbarCollection/ToolbarCollection.js +3 -3
- package/dist/cjs/components/ToolbarCollection/ToolbarCollection.js.map +1 -1
- package/dist/cjs/components/ToolbarItemBox/ToolbarItemBox.st.css.js +2 -2
- package/dist/cjs/components/ToolbarItemBox/ToolbarItemBox.st.css.js.map +1 -1
- package/dist/cjs/components/common.st.css.js +4 -4
- package/dist/cjs/components/common.st.css.js.map +1 -1
- package/dist/cjs/hooks/useNestedTable.js.map +1 -1
- package/dist/cjs/state/CustomFields/CustomFieldsAllNamespacesFormState.js +71 -0
- package/dist/cjs/state/CustomFields/CustomFieldsAllNamespacesFormState.js.map +1 -0
- package/dist/cjs/state/CustomFields/CustomFieldsFormState.js +27 -9
- package/dist/cjs/state/CustomFields/CustomFieldsFormState.js.map +1 -1
- package/dist/cjs/state/CustomFields/CustomFieldsWidgetState.js +5 -10
- package/dist/cjs/state/CustomFields/CustomFieldsWidgetState.js.map +1 -1
- package/dist/cjs/state/CustomFields/index.js +6 -0
- package/dist/cjs/state/CustomFields/index.js.map +1 -1
- package/dist/cjs/state/NestedTableState/NestedCollectionFetchAllCollectionState.js +3 -1
- package/dist/cjs/state/NestedTableState/NestedCollectionFetchAllCollectionState.js.map +1 -1
- package/dist/cjs/state/NestedTableState/NestedCollectionNodeState.js +2 -1
- package/dist/cjs/state/NestedTableState/NestedCollectionNodeState.js.map +1 -1
- package/dist/cjs/state/NestedTableState/NestedCollectionState.js +5 -2
- package/dist/cjs/state/NestedTableState/NestedCollectionState.js.map +1 -1
- package/dist/cjs/state/NestedTableState/NestedTableState.js +14 -4
- package/dist/cjs/state/NestedTableState/NestedTableState.js.map +1 -1
- package/dist/cjs/state/PickerContentState.js +2 -1
- package/dist/cjs/state/PickerContentState.js.map +1 -1
- package/dist/cjs/state/TagsBulkAssignPopoverState.js +91 -33
- package/dist/cjs/state/TagsBulkAssignPopoverState.js.map +1 -1
- package/dist/cjs/state/TagsCollectionState.js +3 -1
- package/dist/cjs/state/TagsCollectionState.js.map +1 -1
- package/dist/cjs/state/ToolbarCollectionState.js +5 -2
- package/dist/cjs/state/ToolbarCollectionState.js.map +1 -1
- package/dist/cjs/styles.global.css +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/cjs/version.js.map +1 -1
- package/dist/esm/components/AppliedFiltersTagList/AppliedFiltersTagListState.js +1 -0
- package/dist/esm/components/AppliedFiltersTagList/AppliedFiltersTagListState.js.map +1 -1
- package/dist/esm/components/CardContainer/CardContainer.js +5 -2
- package/dist/esm/components/CardContainer/CardContainer.js.map +1 -1
- package/dist/esm/components/Collapse/Collapse.st.css.js +2 -2
- package/dist/esm/components/Collapse/Collapse.st.css.js.map +1 -1
- package/dist/esm/components/CollectionFilter/CollectionFilterState.js +1 -0
- package/dist/esm/components/CollectionFilter/CollectionFilterState.js.map +1 -1
- package/dist/esm/components/CollectionToolbar/CollectionToolbar.st.css.js +2 -2
- package/dist/esm/components/CollectionToolbar/CollectionToolbar.st.css.js.map +1 -1
- package/dist/esm/components/CollectionToolbar/SearchOrCustomFilter.js.map +1 -1
- package/dist/esm/components/CollectionToolbar/SearchOrCustomFilter.st.css.js +2 -2
- package/dist/esm/components/CollectionToolbars/CollectionToolbars.js +1 -1
- package/dist/esm/components/CollectionToolbars/CollectionToolbars.js.map +1 -1
- package/dist/esm/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js +2 -2
- package/dist/esm/components/CollectionViewsDropdown/ViewsDropdown.st.css.js +2 -2
- package/dist/esm/components/CustomFieldsForm/CustomFieldsForm.js +6 -4
- package/dist/esm/components/CustomFieldsForm/CustomFieldsForm.js.map +1 -1
- package/dist/esm/components/CustomFieldsWidget/CustomFieldsNamespaceForm.js +18 -0
- package/dist/esm/components/CustomFieldsWidget/CustomFieldsNamespaceForm.js.map +1 -0
- package/dist/esm/components/CustomFieldsWidget/CustomFieldsViewWidget.js +27 -39
- package/dist/esm/components/CustomFieldsWidget/CustomFieldsViewWidget.js.map +1 -1
- package/dist/esm/components/CustomFieldsWidget/CustomFieldsViewWidget.uni.driver.js +2 -2
- package/dist/esm/components/CustomFieldsWidget/CustomFieldsViewWidget.uni.driver.js.map +1 -1
- package/dist/esm/components/CustomFieldsWidget/CustomFieldsViewWidgetInline.js +25 -0
- package/dist/esm/components/CustomFieldsWidget/CustomFieldsViewWidgetInline.js.map +1 -0
- package/dist/esm/components/CustomFieldsWidget/CustomFieldsWidget.js +1 -1
- package/dist/esm/components/CustomFieldsWidget/CustomFieldsWidget.js.map +1 -1
- package/dist/esm/components/CustomFieldsWidget/CustomFieldsWidgetCard.js +2 -2
- package/dist/esm/components/CustomFieldsWidget/CustomFieldsWidgetCard.js.map +1 -1
- package/dist/esm/components/CustomFieldsWidget/CustomFieldsWidgetContent.js +7 -10
- package/dist/esm/components/CustomFieldsWidget/CustomFieldsWidgetContent.js.map +1 -1
- package/dist/esm/components/CustomFieldsWidget/CustomFieldsWidgetContentLazy.js +2 -2
- package/dist/esm/components/CustomFieldsWidget/CustomFieldsWidgetContentLazy.js.map +1 -1
- package/dist/esm/components/CustomFieldsWidget/CustomFieldsWidgetInline.js +2 -2
- package/dist/esm/components/CustomFieldsWidget/CustomFieldsWidgetInline.js.map +1 -1
- package/dist/esm/components/CustomFieldsWidget/EmptyStateViewContent.js +8 -0
- package/dist/esm/components/CustomFieldsWidget/EmptyStateViewContent.js.map +1 -0
- package/dist/esm/components/DataExtension/CollectionDataExtensionState.js +4 -2
- package/dist/esm/components/DataExtension/CollectionDataExtensionState.js.map +1 -1
- package/dist/esm/components/DragHandle/DragHandle.st.css.js +2 -2
- package/dist/esm/components/DragHandle/DragHandle.st.css.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/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/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js +2 -2
- package/dist/esm/components/NestedTable/NestedTable.js.map +1 -1
- package/dist/esm/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.js +2 -2
- package/dist/esm/components/NestedTable/NestedTableRow.st.css.js +2 -2
- package/dist/esm/components/NestedTable/NestedTableWSRTable.js +2 -2
- package/dist/esm/components/NestedTable/NestedTableWSRTable.js.map +1 -1
- package/dist/esm/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js +2 -2
- package/dist/esm/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js.map +1 -1
- package/dist/esm/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js +2 -2
- package/dist/esm/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js.map +1 -1
- package/dist/esm/components/PickerContent/PickerContent.st.css.js +2 -2
- package/dist/esm/components/PickerContent/PickerContent.st.css.js.map +1 -1
- package/dist/esm/components/PickerContent/PickerContentAdditionalStep.st.css.js +2 -2
- package/dist/esm/components/PickerTableListItem/PickerTableListItem.st.css.js +2 -2
- package/dist/esm/components/PickerTableListItem/PickerTableListItem.st.css.js.map +1 -1
- package/dist/esm/components/ScrollableContent/ScrollableContent.st.css.js +2 -2
- package/dist/esm/components/ScrollableContent/ScrollableContent.st.css.js.map +1 -1
- package/dist/esm/components/SkeletonCard/SkeletonCard.st.css.js +2 -2
- package/dist/esm/components/SkeletonCard/SkeletonCard.st.css.js.map +1 -1
- package/dist/esm/components/SlidingModal/SlidingModal.st.css.js +2 -2
- package/dist/esm/components/SlidingModal/SlidingModal.st.css.js.map +1 -1
- package/dist/esm/components/Table/TableVirtualHeader.st.css.js +2 -2
- package/dist/esm/components/Table/TableVirtualHeader.st.css.js.map +1 -1
- package/dist/esm/components/TabsFilter/TabsFilter.st.css.js +2 -2
- package/dist/esm/components/TabsFilter/TabsFilter.st.css.js.map +1 -1
- package/dist/esm/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js +2 -2
- package/dist/esm/components/Tags/Tags.js +2 -5
- package/dist/esm/components/Tags/Tags.js.map +1 -1
- package/dist/esm/components/TagsAssignButton/TagsAssignButton.js +5 -6
- package/dist/esm/components/TagsAssignButton/TagsAssignButton.js.map +1 -1
- package/dist/esm/components/ToolbarCollection/ToolbarCollection.js.map +1 -1
- package/dist/esm/components/ToolbarItemBox/ToolbarItemBox.st.css.js +2 -2
- package/dist/esm/components/common.st.css.js +2 -2
- package/dist/esm/components/common.st.css.js.map +1 -1
- package/dist/esm/hooks/useNestedTable.js.map +1 -1
- package/dist/esm/state/CustomFields/CustomFieldsAllNamespacesFormState.js +50 -0
- package/dist/esm/state/CustomFields/CustomFieldsAllNamespacesFormState.js.map +1 -0
- package/dist/esm/state/CustomFields/CustomFieldsFormState.js +18 -7
- package/dist/esm/state/CustomFields/CustomFieldsFormState.js.map +1 -1
- package/dist/esm/state/CustomFields/CustomFieldsWidgetState.js +1 -6
- package/dist/esm/state/CustomFields/CustomFieldsWidgetState.js.map +1 -1
- package/dist/esm/state/CustomFields/index.js +1 -0
- package/dist/esm/state/CustomFields/index.js.map +1 -1
- package/dist/esm/state/NestedTableState/NestedCollectionFetchAllCollectionState.js +1 -1
- package/dist/esm/state/NestedTableState/NestedCollectionFetchAllCollectionState.js.map +1 -1
- package/dist/esm/state/NestedTableState/NestedCollectionNodeState.js +1 -0
- package/dist/esm/state/NestedTableState/NestedCollectionNodeState.js.map +1 -1
- package/dist/esm/state/NestedTableState/NestedCollectionState.js +5 -1
- package/dist/esm/state/NestedTableState/NestedCollectionState.js.map +1 -1
- package/dist/esm/state/NestedTableState/NestedTableState.js +13 -4
- package/dist/esm/state/NestedTableState/NestedTableState.js.map +1 -1
- package/dist/esm/state/PickerContentState.js +1 -0
- package/dist/esm/state/PickerContentState.js.map +1 -1
- package/dist/esm/state/TagsBulkAssignPopoverState.js +66 -26
- package/dist/esm/state/TagsBulkAssignPopoverState.js.map +1 -1
- package/dist/esm/state/TagsCollectionState.js +4 -3
- package/dist/esm/state/TagsCollectionState.js.map +1 -1
- package/dist/esm/state/ToolbarCollectionState.js +2 -2
- package/dist/esm/state/ToolbarCollectionState.js.map +1 -1
- package/dist/esm/styles.global.css +1 -1
- package/dist/esm/version.js +1 -1
- package/dist/types/components/AppliedFiltersTagList/AppliedFiltersTagListState.d.ts.map +1 -1
- package/dist/types/components/CardContainer/CardContainer.d.ts.map +1 -1
- package/dist/types/components/Collapse/Collapse.st.css.d.ts.map +1 -1
- package/dist/types/components/CollectionCard/CollectionCard.d.ts +1 -1
- package/dist/types/components/CollectionCard/CollectionCard.d.ts.map +1 -1
- package/dist/types/components/CollectionFilter/CollectionFilterState.d.ts.map +1 -1
- package/dist/types/components/CollectionTable/CollectionTable.d.ts +1 -1
- package/dist/types/components/CollectionTable/CollectionTable.d.ts.map +1 -1
- package/dist/types/components/CollectionToolbar/CollectionToolbar.d.ts +1 -1
- package/dist/types/components/CollectionToolbar/CollectionToolbar.d.ts.map +1 -1
- package/dist/types/components/CollectionToolbar/CollectionToolbar.st.css.d.ts.map +1 -1
- package/dist/types/components/CollectionToolbar/SearchOrCustomFilter.d.ts +3 -3
- package/dist/types/components/CollectionToolbar/SearchOrCustomFilter.d.ts.map +1 -1
- package/dist/types/components/CollectionToolbars/CollectionToolbars.d.ts +3 -22
- package/dist/types/components/CollectionToolbars/CollectionToolbars.d.ts.map +1 -1
- package/dist/types/components/CustomFieldsForm/CustomFieldsForm.d.ts +1 -1
- package/dist/types/components/CustomFieldsForm/CustomFieldsForm.d.ts.map +1 -1
- package/dist/types/components/CustomFieldsWidget/CustomFieldsNamespaceForm.d.ts +15 -0
- package/dist/types/components/CustomFieldsWidget/CustomFieldsNamespaceForm.d.ts.map +1 -0
- package/dist/types/components/CustomFieldsWidget/CustomFieldsViewWidget.d.ts.map +1 -1
- package/dist/types/components/CustomFieldsWidget/CustomFieldsViewWidget.uni.driver.d.ts.map +1 -1
- package/dist/types/components/CustomFieldsWidget/CustomFieldsViewWidgetInline.d.ts +15 -0
- package/dist/types/components/CustomFieldsWidget/CustomFieldsViewWidgetInline.d.ts.map +1 -0
- package/dist/types/components/CustomFieldsWidget/CustomFieldsWidget.d.ts.map +1 -1
- package/dist/types/components/CustomFieldsWidget/CustomFieldsWidgetCard.d.ts +1 -2
- package/dist/types/components/CustomFieldsWidget/CustomFieldsWidgetCard.d.ts.map +1 -1
- package/dist/types/components/CustomFieldsWidget/CustomFieldsWidgetContent.d.ts +1 -3
- package/dist/types/components/CustomFieldsWidget/CustomFieldsWidgetContent.d.ts.map +1 -1
- package/dist/types/components/CustomFieldsWidget/CustomFieldsWidgetContentLazy.d.ts +1 -3
- package/dist/types/components/CustomFieldsWidget/CustomFieldsWidgetContentLazy.d.ts.map +1 -1
- package/dist/types/components/CustomFieldsWidget/CustomFieldsWidgetInline.d.ts.map +1 -1
- package/dist/types/components/CustomFieldsWidget/EmptyStateViewContent.d.ts +11 -0
- package/dist/types/components/CustomFieldsWidget/EmptyStateViewContent.d.ts.map +1 -0
- package/dist/types/components/DataExtension/CollectionDataExtensionState.d.ts.map +1 -1
- package/dist/types/components/DragHandle/DragHandle.st.css.d.ts.map +1 -1
- package/dist/types/components/InputOverflow/InputOverflow.st.css.d.ts.map +1 -1
- package/dist/types/components/NestedTable/NestedTable.d.ts +15 -1
- package/dist/types/components/NestedTable/NestedTable.d.ts.map +1 -1
- package/dist/types/components/NestedTable/NestedTableWSRTable.d.ts +2 -0
- package/dist/types/components/NestedTable/NestedTableWSRTable.d.ts.map +1 -1
- package/dist/types/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.d.ts.map +1 -1
- package/dist/types/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.d.ts.map +1 -1
- package/dist/types/components/PickerContent/PickerContent.st.css.d.ts.map +1 -1
- package/dist/types/components/PickerTableListItem/PickerTableListItem.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/TableVirtualHeader.st.css.d.ts.map +1 -1
- package/dist/types/components/TabsFilter/TabsFilter.st.css.d.ts.map +1 -1
- package/dist/types/components/Tags/Tags.d.ts +10 -4
- package/dist/types/components/Tags/Tags.d.ts.map +1 -1
- package/dist/types/components/TagsAssignButton/TagsAssignButton.d.ts +3 -1
- package/dist/types/components/TagsAssignButton/TagsAssignButton.d.ts.map +1 -1
- package/dist/types/components/ToolbarCollection/ToolbarCollection.d.ts +7 -7
- package/dist/types/components/ToolbarCollection/ToolbarCollection.d.ts.map +1 -1
- package/dist/types/components/common.st.css.d.ts.map +1 -1
- package/dist/types/hooks/useNestedTable.d.ts +2 -1
- package/dist/types/hooks/useNestedTable.d.ts.map +1 -1
- package/dist/types/state/CustomFields/CustomFieldsAllNamespacesFormState.d.ts +23 -0
- package/dist/types/state/CustomFields/CustomFieldsAllNamespacesFormState.d.ts.map +1 -0
- package/dist/types/state/CustomFields/CustomFieldsFormState.d.ts +4 -3
- package/dist/types/state/CustomFields/CustomFieldsFormState.d.ts.map +1 -1
- package/dist/types/state/CustomFields/CustomFieldsWidgetState.d.ts +3 -3
- package/dist/types/state/CustomFields/CustomFieldsWidgetState.d.ts.map +1 -1
- package/dist/types/state/CustomFields/index.d.ts +1 -0
- package/dist/types/state/CustomFields/index.d.ts.map +1 -1
- package/dist/types/state/NestedTableState/NestedCollectionNodeState.d.ts.map +1 -1
- package/dist/types/state/NestedTableState/NestedCollectionState.d.ts.map +1 -1
- package/dist/types/state/NestedTableState/NestedTableFlatModeState.d.ts +1 -1
- package/dist/types/state/NestedTableState/NestedTableFlatModeState.d.ts.map +1 -1
- package/dist/types/state/NestedTableState/NestedTableNestedModeState.d.ts +1 -1
- package/dist/types/state/NestedTableState/NestedTableNestedModeState.d.ts.map +1 -1
- package/dist/types/state/NestedTableState/NestedTableState.d.ts +7 -5
- package/dist/types/state/NestedTableState/NestedTableState.d.ts.map +1 -1
- package/dist/types/state/PickerContentState.d.ts.map +1 -1
- package/dist/types/state/TagsBulkAssignPopoverState.d.ts +16 -5
- package/dist/types/state/TagsBulkAssignPopoverState.d.ts.map +1 -1
- package/dist/types/state/TagsCollectionState.d.ts +7 -8
- package/dist/types/state/TagsCollectionState.d.ts.map +1 -1
- package/dist/types/state/ToolbarCollectionState.d.ts +2 -1
- package/dist/types/state/ToolbarCollectionState.d.ts.map +1 -1
- package/dist/types/version.d.ts +1 -1
- package/package.json +5 -5
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
exports.__esModule = true;
|
|
5
|
+
exports.CustomFieldsAllNamespacesFormState = void 0;
|
|
6
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
7
|
+
var _mobx = require("mobx");
|
|
8
|
+
class CustomFieldsAllNamespacesFormState {
|
|
9
|
+
constructor(params) {
|
|
10
|
+
(0, _defineProperty2.default)(this, "_customFieldsWidgetState", void 0);
|
|
11
|
+
(0, _defineProperty2.default)(this, "namespacesFormsMap", _mobx.observable.map([], {
|
|
12
|
+
deep: false
|
|
13
|
+
}));
|
|
14
|
+
this._customFieldsWidgetState = params.customFieldsWidgetState;
|
|
15
|
+
(0, _mobx.makeObservable)(this, {
|
|
16
|
+
namespacesForms: _mobx.computed,
|
|
17
|
+
addFormIfAbsent: _mobx.action,
|
|
18
|
+
validate: _mobx.action,
|
|
19
|
+
isDirty: _mobx.computed
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
getNamespaceFormSchemaAndData(namespace) {
|
|
23
|
+
var _state$_extendedField;
|
|
24
|
+
const {
|
|
25
|
+
_customFieldsWidgetState: state
|
|
26
|
+
} = this;
|
|
27
|
+
const {
|
|
28
|
+
schema,
|
|
29
|
+
fields
|
|
30
|
+
} = state.dataExtension.getSchemaAndFieldsByNamespace(namespace);
|
|
31
|
+
return {
|
|
32
|
+
fields,
|
|
33
|
+
schema,
|
|
34
|
+
extendedFieldsDataMap: (_state$_extendedField = state._extendedFields) == null || (_state$_extendedField = _state$_extendedField.namespaces) == null ? void 0 : _state$_extendedField[namespace]
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
get namespacesForms() {
|
|
38
|
+
return Array.from(this.namespacesFormsMap.values());
|
|
39
|
+
}
|
|
40
|
+
addFormIfAbsent(form) {
|
|
41
|
+
const {
|
|
42
|
+
namespacesFormsMap
|
|
43
|
+
} = this;
|
|
44
|
+
const maybeForm = namespacesFormsMap.get(form._namespace) ?? form;
|
|
45
|
+
namespacesFormsMap.set(form._namespace, maybeForm);
|
|
46
|
+
return maybeForm;
|
|
47
|
+
}
|
|
48
|
+
validate() {
|
|
49
|
+
var _resultsMap$get;
|
|
50
|
+
const {
|
|
51
|
+
namespacesFormsMap,
|
|
52
|
+
_customFieldsWidgetState: {
|
|
53
|
+
_userFieldsNamespace
|
|
54
|
+
}
|
|
55
|
+
} = this;
|
|
56
|
+
const resultsMap = new Map(Array.from(namespacesFormsMap.values()).map(form => [form._namespace, form.validate()]));
|
|
57
|
+
const results = Array.from(resultsMap.values());
|
|
58
|
+
return {
|
|
59
|
+
isValid: results.every(result => result.isValid),
|
|
60
|
+
extendedFields: (_resultsMap$get = resultsMap.get(_userFieldsNamespace)) == null ? void 0 : _resultsMap$get.extendedFields
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
get isDirty() {
|
|
64
|
+
const {
|
|
65
|
+
namespacesForms
|
|
66
|
+
} = this;
|
|
67
|
+
return namespacesForms.some(form => form.isDirty);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
exports.CustomFieldsAllNamespacesFormState = CustomFieldsAllNamespacesFormState;
|
|
71
|
+
//# sourceMappingURL=CustomFieldsAllNamespacesFormState.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_mobx","require","CustomFieldsAllNamespacesFormState","constructor","params","_defineProperty2","default","observable","map","deep","_customFieldsWidgetState","customFieldsWidgetState","makeObservable","namespacesForms","computed","addFormIfAbsent","action","validate","isDirty","getNamespaceFormSchemaAndData","namespace","_state$_extendedField","state","schema","fields","dataExtension","getSchemaAndFieldsByNamespace","extendedFieldsDataMap","_extendedFields","namespaces","Array","from","namespacesFormsMap","values","form","maybeForm","get","_namespace","set","_resultsMap$get","_userFieldsNamespace","resultsMap","Map","results","isValid","every","result","extendedFields","some","exports"],"sources":["../../../../src/state/CustomFields/CustomFieldsAllNamespacesFormState.ts"],"sourcesContent":["import { action, computed, makeObservable, observable } from 'mobx';\nimport { CustomFieldsFormState } from './CustomFieldsFormState';\nimport { CustomFieldsWidgetState } from './CustomFieldsWidgetState';\n\nexport interface CustomFieldsAllNamespacesFormStateParams {\n customFieldsWidgetState: CustomFieldsWidgetState;\n}\n\nexport class CustomFieldsAllNamespacesFormState {\n readonly _customFieldsWidgetState;\n\n readonly namespacesFormsMap = observable.map<string, CustomFieldsFormState>(\n [],\n {\n deep: false,\n },\n );\n\n constructor(params: CustomFieldsAllNamespacesFormStateParams) {\n this._customFieldsWidgetState = params.customFieldsWidgetState;\n makeObservable(this, {\n namespacesForms: computed,\n addFormIfAbsent: action,\n validate: action,\n isDirty: computed,\n });\n }\n\n getNamespaceFormSchemaAndData(namespace: string) {\n const { _customFieldsWidgetState: state } = this;\n const { schema, fields } =\n state.dataExtension.getSchemaAndFieldsByNamespace(namespace);\n\n return {\n fields,\n schema,\n extendedFieldsDataMap: state._extendedFields?.namespaces?.[namespace],\n };\n }\n\n get namespacesForms() {\n return Array.from(this.namespacesFormsMap.values());\n }\n\n addFormIfAbsent(form: CustomFieldsFormState) {\n const { namespacesFormsMap } = this;\n\n const maybeForm = namespacesFormsMap.get(form._namespace) ?? form;\n\n namespacesFormsMap.set(form._namespace, maybeForm);\n\n return maybeForm;\n }\n\n validate() {\n const {\n namespacesFormsMap,\n _customFieldsWidgetState: { _userFieldsNamespace },\n } = this;\n const resultsMap = new Map(\n Array.from(namespacesFormsMap.values()).map((form) => [\n form._namespace,\n form.validate(),\n ]),\n );\n\n const results = Array.from(resultsMap.values());\n\n return {\n isValid: results.every((result) => result.isValid),\n extendedFields: resultsMap.get(_userFieldsNamespace)?.extendedFields,\n };\n }\n\n get isDirty() {\n const { namespacesForms } = this;\n return namespacesForms.some((form) => form.isDirty);\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAQO,MAAMC,kCAAkC,CAAC;EAU9CC,WAAWA,CAACC,MAAgD,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA,8BAPhCC,gBAAU,CAACC,GAAG,CAC1C,EAAE,EACF;MACEC,IAAI,EAAE;IACR,CACF,CAAC;IAGC,IAAI,CAACC,wBAAwB,GAAGN,MAAM,CAACO,uBAAuB;IAC9D,IAAAC,oBAAc,EAAC,IAAI,EAAE;MACnBC,eAAe,EAAEC,cAAQ;MACzBC,eAAe,EAAEC,YAAM;MACvBC,QAAQ,EAAED,YAAM;MAChBE,OAAO,EAAEJ;IACX,CAAC,CAAC;EACJ;EAEAK,6BAA6BA,CAACC,SAAiB,EAAE;IAAA,IAAAC,qBAAA;IAC/C,MAAM;MAAEX,wBAAwB,EAAEY;IAAM,CAAC,GAAG,IAAI;IAChD,MAAM;MAAEC,MAAM;MAAEC;IAAO,CAAC,GACtBF,KAAK,CAACG,aAAa,CAACC,6BAA6B,CAACN,SAAS,CAAC;IAE9D,OAAO;MACLI,MAAM;MACND,MAAM;MACNI,qBAAqB,GAAAN,qBAAA,GAAEC,KAAK,CAACM,eAAe,cAAAP,qBAAA,GAArBA,qBAAA,CAAuBQ,UAAU,qBAAjCR,qBAAA,CAAoCD,SAAS;IACtE,CAAC;EACH;EAEA,IAAIP,eAAeA,CAAA,EAAG;IACpB,OAAOiB,KAAK,CAACC,IAAI,CAAC,IAAI,CAACC,kBAAkB,CAACC,MAAM,CAAC,CAAC,CAAC;EACrD;EAEAlB,eAAeA,CAACmB,IAA2B,EAAE;IAC3C,MAAM;MAAEF;IAAmB,CAAC,GAAG,IAAI;IAEnC,MAAMG,SAAS,GAAGH,kBAAkB,CAACI,GAAG,CAACF,IAAI,CAACG,UAAU,CAAC,IAAIH,IAAI;IAEjEF,kBAAkB,CAACM,GAAG,CAACJ,IAAI,CAACG,UAAU,EAAEF,SAAS,CAAC;IAElD,OAAOA,SAAS;EAClB;EAEAlB,QAAQA,CAAA,EAAG;IAAA,IAAAsB,eAAA;IACT,MAAM;MACJP,kBAAkB;MAClBtB,wBAAwB,EAAE;QAAE8B;MAAqB;IACnD,CAAC,GAAG,IAAI;IACR,MAAMC,UAAU,GAAG,IAAIC,GAAG,CACxBZ,KAAK,CAACC,IAAI,CAACC,kBAAkB,CAACC,MAAM,CAAC,CAAC,CAAC,CAACzB,GAAG,CAAE0B,IAAI,IAAK,CACpDA,IAAI,CAACG,UAAU,EACfH,IAAI,CAACjB,QAAQ,CAAC,CAAC,CAChB,CACH,CAAC;IAED,MAAM0B,OAAO,GAAGb,KAAK,CAACC,IAAI,CAACU,UAAU,CAACR,MAAM,CAAC,CAAC,CAAC;IAE/C,OAAO;MACLW,OAAO,EAAED,OAAO,CAACE,KAAK,CAAEC,MAAM,IAAKA,MAAM,CAACF,OAAO,CAAC;MAClDG,cAAc,GAAAR,eAAA,GAAEE,UAAU,CAACL,GAAG,CAACI,oBAAoB,CAAC,qBAApCD,eAAA,CAAsCQ;IACxD,CAAC;EACH;EAEA,IAAI7B,OAAOA,CAAA,EAAG;IACZ,MAAM;MAAEL;IAAgB,CAAC,GAAG,IAAI;IAChC,OAAOA,eAAe,CAACmC,IAAI,CAAEd,IAAI,IAAKA,IAAI,CAAChB,OAAO,CAAC;EACrD;AACF;AAAC+B,OAAA,CAAA/C,kCAAA,GAAAA,kCAAA","ignoreList":[]}
|
|
@@ -9,6 +9,7 @@ var _bexCore = require("@wix/bex-core");
|
|
|
9
9
|
class CustomFieldsFormState {
|
|
10
10
|
constructor(params) {
|
|
11
11
|
(0, _defineProperty2.default)(this, "_namespace", void 0);
|
|
12
|
+
(0, _defineProperty2.default)(this, "_allNamespacesFormState", void 0);
|
|
12
13
|
(0, _defineProperty2.default)(this, "_fields", void 0);
|
|
13
14
|
(0, _defineProperty2.default)(this, "_size", void 0);
|
|
14
15
|
(0, _defineProperty2.default)(this, "_extendedFieldsDataMap", void 0);
|
|
@@ -20,14 +21,18 @@ class CustomFieldsFormState {
|
|
|
20
21
|
});
|
|
21
22
|
(0, _defineProperty2.default)(this, "onChange", void 0);
|
|
22
23
|
const {
|
|
23
|
-
|
|
24
|
+
namespace,
|
|
25
|
+
allNamespacesFormState,
|
|
24
26
|
translate,
|
|
25
|
-
|
|
26
|
-
onChange,
|
|
27
|
-
namespace
|
|
27
|
+
onChange
|
|
28
28
|
} = params;
|
|
29
29
|
this._namespace = namespace;
|
|
30
|
-
this.
|
|
30
|
+
this._allNamespacesFormState = allNamespacesFormState;
|
|
31
|
+
const {
|
|
32
|
+
fields,
|
|
33
|
+
extendedFieldsDataMap
|
|
34
|
+
} = allNamespacesFormState.getNamespaceFormSchemaAndData(namespace);
|
|
35
|
+
this._fields = fields ?? [];
|
|
31
36
|
this._extendedFieldsDataMap = _mobx.observable.map(extendedFieldsDataMap);
|
|
32
37
|
this._initialValues = {
|
|
33
38
|
...extendedFieldsDataMap
|
|
@@ -42,7 +47,7 @@ class CustomFieldsFormState {
|
|
|
42
47
|
setContainerRef: _mobx.action,
|
|
43
48
|
values: _mobx.computed,
|
|
44
49
|
formSize: _mobx.computed,
|
|
45
|
-
|
|
50
|
+
fields: _mobx.computed,
|
|
46
51
|
isDirty: _mobx.computed,
|
|
47
52
|
_fields: _mobx.observable.ref,
|
|
48
53
|
_inputRefs: _mobx.observable.ref,
|
|
@@ -68,11 +73,24 @@ class CustomFieldsFormState {
|
|
|
68
73
|
get formSize() {
|
|
69
74
|
return this._size;
|
|
70
75
|
}
|
|
71
|
-
get
|
|
76
|
+
get fields() {
|
|
72
77
|
return this._fields;
|
|
73
78
|
}
|
|
74
79
|
init() {
|
|
75
|
-
const
|
|
80
|
+
const {
|
|
81
|
+
_formContainerRef,
|
|
82
|
+
_allNamespacesFormState
|
|
83
|
+
} = this;
|
|
84
|
+
const disposers = [(0, _bexCore.addResizeObserver)(_formContainerRef.current, this._adjustFormSize), (0, _mobx.reaction)(() => _allNamespacesFormState.getNamespaceFormSchemaAndData(this._namespace), ({
|
|
85
|
+
fields
|
|
86
|
+
}) => {
|
|
87
|
+
if (!fields) {
|
|
88
|
+
return;
|
|
89
|
+
}
|
|
90
|
+
this.setNewFields(fields);
|
|
91
|
+
}, {
|
|
92
|
+
fireImmediately: true
|
|
93
|
+
})];
|
|
76
94
|
this._adjustFormSize();
|
|
77
95
|
return () => {
|
|
78
96
|
disposers.forEach(d => d == null ? void 0 : d());
|
|
@@ -134,7 +152,7 @@ class CustomFieldsFormState {
|
|
|
134
152
|
get isDirty() {
|
|
135
153
|
return !!Array.from(this._extendedFieldsDataMap.entries()).find(([key, value]) => {
|
|
136
154
|
// Files field is not considered dirty since it cannot be changed
|
|
137
|
-
const customField = this.
|
|
155
|
+
const customField = this._fields.find(field => field.id === key);
|
|
138
156
|
if ((customField == null ? void 0 : customField.type) === 'files') {
|
|
139
157
|
return false;
|
|
140
158
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_mobx","require","_bexCore","CustomFieldsFormState","constructor","params","_defineProperty2","default","current","fields","translate","extendedFieldsDataMap","onChange","namespace","_namespace","_fields","_extendedFieldsDataMap","observable","map","_initialValues","_inputRefs","_size","_translate","makeObservable","setValue","action","setNewFields","setContainerRef","values","computed","formSize","schema","isDirty","ref","_formContainerRef","_adjustExtendedFields","_adjustFormSize","bound","_getFullyQualifiedFieldId","originalId","element","clientWidth","init","disposers","addResizeObserver","forEach","d","id","value","_this$onChange","set","call","allFields","Object","keys","reduce","acc","fieldId","getInitialValue","setInputRef","input","existingFields","field","_","key","includes","delete","validate","invalid","find","_this$_inputRefs$inva","_this$_inputRefs$inva2","focus","isValid","extendedFields","Array","from","entries","customField","type","hasOwnProperty","fromEntries","exports"],"sources":["../../../../src/state/CustomFields/CustomFieldsFormState.ts"],"sourcesContent":["import { action, computed, makeObservable, observable } from 'mobx';\nimport {\n CustomField,\n addResizeObserver,\n Translate,\n ExtendedFieldsDataMap,\n} from '@wix/bex-core';\nimport type { OnCustomFieldChange } from '../../components/CustomFieldsWidget/OnCustomFieldChange';\nimport { BaseInputRef } from '../../fields';\n\nexport interface CustomFieldsFormStateParams {\n fields: CustomField[];\n namespace: string;\n extendedFieldsDataMap?: ExtendedFieldsDataMap;\n translate: Translate;\n onChange?: OnCustomFieldChange;\n}\n\nexport type CustomFieldsFormSize = 'default' | 'small';\n\nexport class CustomFieldsFormState {\n readonly _namespace;\n _fields;\n _size: CustomFieldsFormSize;\n _extendedFieldsDataMap;\n _initialValues;\n _translate: Translate;\n _inputRefs: { [fieldId: string]: BaseInputRef };\n _formContainerRef: { current: HTMLDivElement | null } = {\n current: null,\n };\n onChange?: OnCustomFieldChange;\n\n constructor(params: CustomFieldsFormStateParams) {\n const {\n fields,\n translate,\n extendedFieldsDataMap = {},\n onChange,\n namespace,\n } = params;\n\n this._namespace = namespace;\n this._fields = fields;\n this._extendedFieldsDataMap = observable.map<string, any>(\n extendedFieldsDataMap,\n );\n this._initialValues = { ...extendedFieldsDataMap };\n this._inputRefs = {};\n this._size = 'default';\n this._translate = translate;\n this.onChange = onChange;\n\n makeObservable(this, {\n setValue: action,\n setNewFields: action,\n setContainerRef: action,\n values: computed,\n formSize: computed,\n schema: computed,\n isDirty: computed,\n _fields: observable.ref,\n _inputRefs: observable.ref,\n _formContainerRef: observable.ref,\n _size: observable.ref,\n _adjustExtendedFields: action,\n _adjustFormSize: action.bound,\n });\n }\n\n _getFullyQualifiedFieldId(originalId: string) {\n return `extendedFields.namespaces.${this._namespace}.${originalId}`;\n }\n\n _adjustFormSize() {\n if (this._formContainerRef.current) {\n const element = this._formContainerRef.current;\n\n if (element.clientWidth < 842) {\n this._size = 'small';\n } else {\n this._size = 'default';\n }\n }\n }\n\n get formSize() {\n return this._size;\n }\n\n get schema() {\n return this._fields;\n }\n\n init() {\n const disposers = [\n addResizeObserver(this._formContainerRef.current, this._adjustFormSize),\n ];\n\n this._adjustFormSize();\n\n return () => {\n disposers.forEach((d) => d?.());\n };\n }\n\n setValue<T>(id: string, value: T) {\n this._extendedFieldsDataMap.set(id, value);\n this.onChange?.({\n id: `extendedFields.namespaces.${this._namespace}.${id}`,\n value,\n allFields: Object.keys(this.values).reduce((acc, fieldId) => {\n acc[fieldId] = {\n id: this._getFullyQualifiedFieldId(fieldId),\n value: this.values[fieldId],\n };\n return acc;\n }, {} as Record<string, { id: string; value: any }>),\n });\n }\n\n getInitialValue(id: string) {\n return this._initialValues[id];\n }\n\n setInputRef(id: string, input: BaseInputRef) {\n this._inputRefs[id] = input;\n }\n\n setNewFields(fields: CustomField[]) {\n this._fields = fields;\n this._adjustExtendedFields();\n }\n\n setContainerRef(ref: HTMLDivElement | null) {\n this._formContainerRef.current = ref;\n }\n\n _adjustExtendedFields() {\n const existingFields = this._fields.map((field) => field.id);\n this._extendedFieldsDataMap.forEach((_, key) => {\n if (!existingFields.includes(key)) {\n this._extendedFieldsDataMap.delete(key);\n }\n });\n }\n\n validate(): { isValid: boolean; extendedFields?: ExtendedFieldsDataMap } {\n const invalid = Object.keys(this._inputRefs).find((fieldId) => {\n const ref = this._inputRefs[fieldId];\n return ref.invalid;\n });\n\n if (invalid) {\n this._inputRefs[invalid].focus?.();\n return { isValid: false };\n }\n\n return { isValid: true, extendedFields: this.values };\n }\n\n get isDirty() {\n return !!Array.from(this._extendedFieldsDataMap.entries()).find(\n ([key, value]) => {\n // Files field is not considered dirty since it cannot be changed\n const customField = this.schema.find((field) => field.id === key);\n if (customField?.type === 'files') {\n return false;\n }\n if (this._initialValues.hasOwnProperty(key)) {\n return this._initialValues[key] !== value;\n } else {\n // includes both any string value and boolean types (all existing field types values)\n return !!value;\n }\n },\n );\n }\n\n get values() {\n return Object.fromEntries(this._extendedFieldsDataMap);\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_mobx","require","_bexCore","CustomFieldsFormState","constructor","params","_defineProperty2","default","current","namespace","allNamespacesFormState","translate","onChange","_namespace","_allNamespacesFormState","fields","extendedFieldsDataMap","getNamespaceFormSchemaAndData","_fields","_extendedFieldsDataMap","observable","map","_initialValues","_inputRefs","_size","_translate","makeObservable","setValue","action","setNewFields","setContainerRef","values","computed","formSize","isDirty","ref","_formContainerRef","_adjustExtendedFields","_adjustFormSize","bound","_getFullyQualifiedFieldId","originalId","element","clientWidth","init","disposers","addResizeObserver","reaction","fireImmediately","forEach","d","id","value","_this$onChange","set","call","allFields","Object","keys","reduce","acc","fieldId","getInitialValue","setInputRef","input","existingFields","field","_","key","includes","delete","validate","invalid","find","_this$_inputRefs$inva","_this$_inputRefs$inva2","focus","isValid","extendedFields","Array","from","entries","customField","type","hasOwnProperty","fromEntries","exports"],"sources":["../../../../src/state/CustomFields/CustomFieldsFormState.ts"],"sourcesContent":["import { action, computed, makeObservable, observable, reaction } from 'mobx';\nimport {\n CustomField,\n addResizeObserver,\n Translate,\n ExtendedFieldsDataMap,\n} from '@wix/bex-core';\nimport type { OnCustomFieldChange } from '../../components/CustomFieldsWidget/OnCustomFieldChange';\nimport { BaseInputRef } from '../../fields';\nimport { CustomFieldsAllNamespacesFormState } from './CustomFieldsAllNamespacesFormState';\n\nexport interface CustomFieldsFormStateParams {\n namespace: string;\n allNamespacesFormState: CustomFieldsAllNamespacesFormState;\n translate: Translate;\n onChange?: OnCustomFieldChange;\n}\n\nexport type CustomFieldsFormSize = 'default' | 'small';\n\nexport class CustomFieldsFormState {\n readonly _namespace;\n readonly _allNamespacesFormState;\n _fields;\n _size: CustomFieldsFormSize;\n _extendedFieldsDataMap;\n _initialValues;\n _translate: Translate;\n _inputRefs: { [fieldId: string]: BaseInputRef };\n _formContainerRef: { current: HTMLDivElement | null } = {\n current: null,\n };\n onChange?: OnCustomFieldChange;\n\n constructor(params: CustomFieldsFormStateParams) {\n const { namespace, allNamespacesFormState, translate, onChange } = params;\n\n this._namespace = namespace;\n this._allNamespacesFormState = allNamespacesFormState;\n\n const { fields, extendedFieldsDataMap } =\n allNamespacesFormState.getNamespaceFormSchemaAndData(namespace);\n\n this._fields = fields ?? [];\n this._extendedFieldsDataMap = observable.map<string, any>(\n extendedFieldsDataMap,\n );\n this._initialValues = { ...extendedFieldsDataMap };\n this._inputRefs = {};\n this._size = 'default';\n this._translate = translate;\n this.onChange = onChange;\n\n makeObservable(this, {\n setValue: action,\n setNewFields: action,\n setContainerRef: action,\n values: computed,\n formSize: computed,\n fields: computed,\n isDirty: computed,\n _fields: observable.ref,\n _inputRefs: observable.ref,\n _formContainerRef: observable.ref,\n _size: observable.ref,\n _adjustExtendedFields: action,\n _adjustFormSize: action.bound,\n });\n }\n\n _getFullyQualifiedFieldId(originalId: string) {\n return `extendedFields.namespaces.${this._namespace}.${originalId}`;\n }\n\n _adjustFormSize() {\n if (this._formContainerRef.current) {\n const element = this._formContainerRef.current;\n\n if (element.clientWidth < 842) {\n this._size = 'small';\n } else {\n this._size = 'default';\n }\n }\n }\n\n get formSize() {\n return this._size;\n }\n\n get fields() {\n return this._fields;\n }\n\n init() {\n const { _formContainerRef, _allNamespacesFormState } = this;\n\n const disposers = [\n addResizeObserver(_formContainerRef.current, this._adjustFormSize),\n reaction(\n () =>\n _allNamespacesFormState.getNamespaceFormSchemaAndData(\n this._namespace,\n ),\n ({ fields }) => {\n if (!fields) {\n return;\n }\n this.setNewFields(fields);\n },\n {\n fireImmediately: true,\n },\n ),\n ];\n\n this._adjustFormSize();\n\n return () => {\n disposers.forEach((d) => d?.());\n };\n }\n\n setValue<T>(id: string, value: T) {\n this._extendedFieldsDataMap.set(id, value);\n this.onChange?.({\n id: `extendedFields.namespaces.${this._namespace}.${id}`,\n value,\n allFields: Object.keys(this.values).reduce((acc, fieldId) => {\n acc[fieldId] = {\n id: this._getFullyQualifiedFieldId(fieldId),\n value: this.values[fieldId],\n };\n return acc;\n }, {} as Record<string, { id: string; value: any }>),\n });\n }\n\n getInitialValue(id: string) {\n return this._initialValues[id];\n }\n\n setInputRef(id: string, input: BaseInputRef) {\n this._inputRefs[id] = input;\n }\n\n setNewFields(fields: CustomField[]) {\n this._fields = fields;\n this._adjustExtendedFields();\n }\n\n setContainerRef(ref: HTMLDivElement | null) {\n this._formContainerRef.current = ref;\n }\n\n _adjustExtendedFields() {\n const existingFields = this._fields.map((field) => field.id);\n this._extendedFieldsDataMap.forEach((_, key) => {\n if (!existingFields.includes(key)) {\n this._extendedFieldsDataMap.delete(key);\n }\n });\n }\n\n validate(): { isValid: boolean; extendedFields?: ExtendedFieldsDataMap } {\n const invalid = Object.keys(this._inputRefs).find((fieldId) => {\n const ref = this._inputRefs[fieldId];\n return ref.invalid;\n });\n\n if (invalid) {\n this._inputRefs[invalid].focus?.();\n return { isValid: false };\n }\n\n return { isValid: true, extendedFields: this.values };\n }\n\n get isDirty() {\n return !!Array.from(this._extendedFieldsDataMap.entries()).find(\n ([key, value]) => {\n // Files field is not considered dirty since it cannot be changed\n const customField = this._fields.find((field) => field.id === key);\n if (customField?.type === 'files') {\n return false;\n }\n if (this._initialValues.hasOwnProperty(key)) {\n return this._initialValues[key] !== value;\n } else {\n // includes both any string value and boolean types (all existing field types values)\n return !!value;\n }\n },\n );\n }\n\n get values() {\n return Object.fromEntries(this._extendedFieldsDataMap);\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -84,12 +84,7 @@ class CustomFieldsWidgetState {
|
|
|
84
84
|
init({
|
|
85
85
|
appLoaded
|
|
86
86
|
}) {
|
|
87
|
-
const disposers = [this.dataExtension.init()
|
|
88
|
-
var _this$_formState;
|
|
89
|
-
(_this$_formState = this._formState) == null || _this$_formState.setNewFields(fields);
|
|
90
|
-
}, {
|
|
91
|
-
fireImmediately: true
|
|
92
|
-
})];
|
|
87
|
+
const disposers = [this.dataExtension.init()];
|
|
93
88
|
const {
|
|
94
89
|
initTask,
|
|
95
90
|
dataExtension,
|
|
@@ -150,8 +145,8 @@ class CustomFieldsWidgetState {
|
|
|
150
145
|
this.initTask.runOnce();
|
|
151
146
|
}
|
|
152
147
|
get isDirty() {
|
|
153
|
-
var _this$
|
|
154
|
-
return !!((_this$
|
|
148
|
+
var _this$_formState;
|
|
149
|
+
return !!((_this$_formState = this._formState) != null && _this$_formState.isDirty);
|
|
155
150
|
}
|
|
156
151
|
get widgetSize() {
|
|
157
152
|
return this._size;
|
|
@@ -187,8 +182,8 @@ class CustomFieldsWidgetState {
|
|
|
187
182
|
return this.initTask.status.isError;
|
|
188
183
|
}
|
|
189
184
|
async validate() {
|
|
190
|
-
var _this$
|
|
191
|
-
const data = (_this$
|
|
185
|
+
var _this$_formState2;
|
|
186
|
+
const data = (_this$_formState2 = this._formState) == null ? void 0 : _this$_formState2.validate();
|
|
192
187
|
if (!data) {
|
|
193
188
|
return {
|
|
194
189
|
isValid: true
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_bexCore","require","_SidePanelsState","_mobx","_bi","_getRequireWildcardCache","e","WeakMap","r","t","_interopRequireWildcard","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","CustomFieldsWidgetState","constructor","container","fqdn","filterable","containsPii","_defineProperty2","TaskState","current","undefined","_size","panels","SidePanelsState","panelGroupName","fqdnToString","reportBi","createBILogger","componentType","dataExtension","DataExtensionState","closeSidePanel","makeObservable","hasWritePermissions","computed","widgetSize","setWidgetContentRef","action","isLoading","isError","observable","ref","_widgetContentRef","_extendedFields","_adjustWidgetSize","bound","_formState","retry","_userFieldsNamespace","dataExtensionService","userFieldsNamespace","_appLoadingStart","startTime","performance","now","commonBiParams","_commonDynamicBiParams","loadStart","url","window","location","href","loadEnd","loadingTime","Math","round","init","appLoaded","disposers","reaction","availableUserCustomFields","fields","_this$_formState","setNewFields","fireImmediately","initTask","runOnce","_dataExtension$initTa","_container$initTask$s","lazyComponents","Promise","all","resolve","then","catch","err","WixPatternsError","errorCode","originalException","status","promise","error","internalMonitor","reportError","cairoErrorInLoadingAComponent","errorType","name","_customFieldsLazyComponents","forEach","d","initContent","addResizeObserver","bind","cairoTryAgainClicked","actionName","loaction","isDirty","_this$_formState2","isIdle","ActionButtonsComponent","_this$_customFieldsLa","ActionButtons","CustomFieldsWidgetContent","_this$_customFieldsLa2","element","clientWidth","validate","_this$_formState3","data","isValid","extendedFields","namespaces","_user_fields","values","exports"],"sources":["../../../../src/state/CustomFields/CustomFieldsWidgetState.ts"],"sourcesContent":["import {\n addResizeObserver,\n DataExtensionState,\n ExtendedFields,\n Fqdn,\n fqdnToString,\n TaskState,\n WixPatternsContainer,\n WixPatternsError,\n} from '@wix/bex-core';\nimport { SidePanelsState } from '../SidePanelsState';\nimport { action, computed, makeObservable, observable, reaction } from 'mobx';\nimport type * as CustomFieldsWidgetLazyContent from '../../components/CustomFieldsWidget/CustomFieldsWidgetLazyContent';\nimport {\n cairoErrorInLoadingAComponent,\n cairoTryAgainClicked,\n loadEnd,\n loadStart,\n} from '@wix/bex-core/bi';\nimport { CustomFieldsFormState } from './CustomFieldsFormState';\n\nexport interface CustomFieldsWidgetStateParams {\n readonly container: WixPatternsContainer;\n readonly fqdn: Fqdn;\n readonly filterable?: boolean;\n readonly containsPii?: boolean;\n}\n\nexport type CustomFieldsWidgetSize = 'default' | 'small';\n\nexport class CustomFieldsWidgetState {\n readonly container;\n readonly dataExtension;\n readonly initTask = new TaskState();\n\n _extendedFields: ExtendedFields | null | undefined = null;\n _formState: CustomFieldsFormState | null = null;\n\n _size: CustomFieldsWidgetSize;\n _widgetContentRef: { current: HTMLDivElement | null } = {\n current: null,\n };\n\n readonly panels;\n readonly reportBi;\n readonly fqdn;\n _customFieldsLazyComponents:\n | typeof CustomFieldsWidgetLazyContent\n | undefined = undefined;\n\n constructor({\n container,\n fqdn,\n filterable,\n containsPii,\n }: CustomFieldsWidgetStateParams) {\n this.container = container;\n\n this.fqdn = fqdn;\n this._size = 'default';\n this.panels = new SidePanelsState({\n panelGroupName: fqdnToString(fqdn),\n container,\n });\n\n this.reportBi = container.createBILogger({\n componentType: 'CustomFieldsWidget',\n ...fqdn,\n });\n\n this.dataExtension = new DataExtensionState({\n container,\n reportBi: this.reportBi,\n fqdn,\n closeSidePanel: this.panels.closeSidePanel,\n filterable,\n containsPii,\n });\n\n makeObservable(this, {\n hasWritePermissions: computed,\n widgetSize: computed,\n setWidgetContentRef: action,\n isLoading: computed,\n isError: computed,\n _size: observable.ref,\n _widgetContentRef: observable.ref,\n _extendedFields: observable.ref,\n _adjustWidgetSize: action.bound,\n _formState: observable.ref,\n retry: action.bound,\n });\n }\n\n get _userFieldsNamespace() {\n return this.dataExtension.dataExtensionService.userFieldsNamespace;\n }\n\n _appLoadingStart() {\n const startTime = performance.now();\n const commonBiParams = this._commonDynamicBiParams();\n\n this.reportBi(\n loadStart({\n ...commonBiParams,\n url: window.location.href,\n }),\n );\n\n return () => {\n this.reportBi(\n loadEnd({\n ...commonBiParams,\n url: window.location.href,\n loadingTime: Math.round(performance.now() - startTime),\n }),\n );\n };\n }\n\n init({ appLoaded }: { appLoaded?: () => void }) {\n const disposers = [\n this.dataExtension.init(),\n reaction(\n () => this.dataExtension.availableUserCustomFields,\n (fields) => {\n this._formState?.setNewFields(fields);\n },\n {\n fireImmediately: true,\n },\n ),\n ];\n\n const { initTask, dataExtension, container } = this;\n\n initTask.runOnce(async () => {\n dataExtension.initTask.runOnce();\n\n const [lazyComponents] = await Promise.all([\n import(\n /* webpackChunkName: \"CustomFieldsWidgetLazyContent\" */\n '../../components/CustomFieldsWidget/CustomFieldsWidgetLazyContent'\n ).catch((err) => {\n throw new WixPatternsError({\n errorCode: 'LoadCustomFieldsWidgetLazyContentFailed',\n originalException: err,\n });\n }),\n dataExtension.initTask.status.promise?.catch((err) => {\n throw new WixPatternsError({\n errorCode: 'InitCustomFieldsDataExtensionFailed',\n originalException: err,\n });\n }),\n container.initTask.status.promise?.catch((err) => {\n throw new WixPatternsError({\n errorCode: 'InitCustomFieldsWidgetContainerFailed',\n originalException: err,\n });\n }),\n ]).catch((error) => {\n this.container.internalMonitor.reportError({\n error,\n });\n\n this.reportBi(\n cairoErrorInLoadingAComponent({\n errorType:\n error instanceof WixPatternsError ? error.name : undefined,\n }),\n );\n\n throw error;\n });\n\n this._customFieldsLazyComponents = lazyComponents;\n\n appLoaded?.();\n });\n\n return () => {\n disposers.forEach((d) => d?.());\n };\n }\n\n initContent() {\n const disposers = [\n addResizeObserver(\n this._widgetContentRef.current,\n this._adjustWidgetSize.bind(this),\n ),\n ];\n\n this._adjustWidgetSize();\n\n return () => {\n disposers.forEach((d) => d?.());\n };\n }\n\n _commonDynamicBiParams() {\n return {\n url: window.location.href,\n };\n }\n\n retry() {\n this.reportBi(\n cairoTryAgainClicked({\n actionName: 'Load custom fields',\n loaction: 'Custom fields widget',\n }),\n );\n\n this.initTask.runOnce();\n }\n\n get isDirty() {\n return !!this._formState?.isDirty;\n }\n\n get widgetSize() {\n return this._size;\n }\n\n get isLoading() {\n const { status } = this.initTask;\n return status.isIdle || status.isLoading;\n }\n\n get ActionButtonsComponent() {\n return this._customFieldsLazyComponents?.ActionButtons;\n }\n\n get CustomFieldsWidgetContent() {\n return this._customFieldsLazyComponents?.CustomFieldsWidgetContent;\n }\n\n setWidgetContentRef(ref: HTMLDivElement | null) {\n this._widgetContentRef.current = ref;\n }\n\n _adjustWidgetSize() {\n if (this._widgetContentRef.current) {\n const element = this._widgetContentRef.current;\n\n if (element.clientWidth < 842) {\n this._size = 'small';\n } else {\n this._size = 'default';\n }\n }\n }\n\n get isError() {\n return this.initTask.status.isError;\n }\n\n async validate(): Promise<{\n isValid: boolean;\n extendedFields?: ExtendedFields;\n values?: ExtendedFields;\n }> {\n const data = this._formState?.validate();\n\n if (!data) {\n return {\n isValid: true,\n };\n }\n\n if (data?.isValid) {\n const extendedFields: ExtendedFields = {\n namespaces: {\n _user_fields: data.extendedFields,\n },\n };\n return {\n isValid: true,\n extendedFields,\n values: extendedFields,\n };\n }\n\n return { isValid: false };\n }\n\n get hasWritePermissions() {\n return this.dataExtension.hasWritePermissions;\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_bexCore","require","_SidePanelsState","_mobx","_bi","_getRequireWildcardCache","e","WeakMap","r","t","_interopRequireWildcard","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","CustomFieldsWidgetState","constructor","container","fqdn","filterable","containsPii","_defineProperty2","TaskState","current","undefined","_size","panels","SidePanelsState","panelGroupName","fqdnToString","reportBi","createBILogger","componentType","dataExtension","DataExtensionState","closeSidePanel","makeObservable","hasWritePermissions","computed","widgetSize","setWidgetContentRef","action","isLoading","isError","observable","ref","_widgetContentRef","_extendedFields","_adjustWidgetSize","bound","_formState","retry","_userFieldsNamespace","dataExtensionService","userFieldsNamespace","_appLoadingStart","startTime","performance","now","commonBiParams","_commonDynamicBiParams","loadStart","url","window","location","href","loadEnd","loadingTime","Math","round","init","appLoaded","disposers","initTask","runOnce","_dataExtension$initTa","_container$initTask$s","lazyComponents","Promise","all","resolve","then","catch","err","WixPatternsError","errorCode","originalException","status","promise","error","internalMonitor","reportError","cairoErrorInLoadingAComponent","errorType","name","_customFieldsLazyComponents","forEach","d","initContent","addResizeObserver","bind","cairoTryAgainClicked","actionName","loaction","isDirty","_this$_formState","isIdle","ActionButtonsComponent","_this$_customFieldsLa","ActionButtons","CustomFieldsWidgetContent","_this$_customFieldsLa2","element","clientWidth","validate","_this$_formState2","data","isValid","extendedFields","namespaces","_user_fields","values","exports"],"sources":["../../../../src/state/CustomFields/CustomFieldsWidgetState.ts"],"sourcesContent":["import {\n addResizeObserver,\n DataExtensionState,\n ExtendedFields,\n Fqdn,\n fqdnToString,\n TaskState,\n WixPatternsContainer,\n WixPatternsError,\n} from '@wix/bex-core';\nimport { SidePanelsState } from '../SidePanelsState';\nimport { action, computed, makeObservable, observable } from 'mobx';\nimport type * as CustomFieldsWidgetLazyContent from '../../components/CustomFieldsWidget/CustomFieldsWidgetLazyContent';\nimport {\n cairoErrorInLoadingAComponent,\n cairoTryAgainClicked,\n loadEnd,\n loadStart,\n} from '@wix/bex-core/bi';\nimport { CustomFieldsAllNamespacesFormState } from './CustomFieldsAllNamespacesFormState';\n\nexport interface CustomFieldsWidgetStateParams {\n readonly container: WixPatternsContainer;\n readonly fqdn: Fqdn;\n readonly filterable?: boolean;\n readonly containsPii?: boolean;\n}\n\nexport type CustomFieldsWidgetSize = 'default' | 'small';\n\nexport class CustomFieldsWidgetState {\n readonly container;\n readonly dataExtension;\n readonly initTask = new TaskState();\n\n _extendedFields: ExtendedFields | null | undefined = null;\n _formState: CustomFieldsAllNamespacesFormState | null = null;\n\n _size: CustomFieldsWidgetSize;\n _widgetContentRef: { current: HTMLDivElement | null } = {\n current: null,\n };\n\n readonly panels;\n readonly reportBi;\n readonly fqdn;\n _customFieldsLazyComponents:\n | typeof CustomFieldsWidgetLazyContent\n | undefined = undefined;\n\n constructor({\n container,\n fqdn,\n filterable,\n containsPii,\n }: CustomFieldsWidgetStateParams) {\n this.container = container;\n\n this.fqdn = fqdn;\n this._size = 'default';\n this.panels = new SidePanelsState({\n panelGroupName: fqdnToString(fqdn),\n container,\n });\n\n this.reportBi = container.createBILogger({\n componentType: 'CustomFieldsWidget',\n ...fqdn,\n });\n\n this.dataExtension = new DataExtensionState({\n container,\n reportBi: this.reportBi,\n fqdn,\n closeSidePanel: this.panels.closeSidePanel,\n filterable,\n containsPii,\n });\n\n makeObservable(this, {\n hasWritePermissions: computed,\n widgetSize: computed,\n setWidgetContentRef: action,\n isLoading: computed,\n isError: computed,\n _size: observable.ref,\n _widgetContentRef: observable.ref,\n _extendedFields: observable.ref,\n _adjustWidgetSize: action.bound,\n _formState: observable.ref,\n retry: action.bound,\n });\n }\n\n get _userFieldsNamespace() {\n return this.dataExtension.dataExtensionService.userFieldsNamespace;\n }\n\n _appLoadingStart() {\n const startTime = performance.now();\n const commonBiParams = this._commonDynamicBiParams();\n\n this.reportBi(\n loadStart({\n ...commonBiParams,\n url: window.location.href,\n }),\n );\n\n return () => {\n this.reportBi(\n loadEnd({\n ...commonBiParams,\n url: window.location.href,\n loadingTime: Math.round(performance.now() - startTime),\n }),\n );\n };\n }\n\n init({ appLoaded }: { appLoaded?: () => void }) {\n const disposers = [\n this.dataExtension.init(),\n ];\n\n const { initTask, dataExtension, container } = this;\n\n initTask.runOnce(async () => {\n dataExtension.initTask.runOnce();\n\n const [lazyComponents] = await Promise.all([\n import(\n /* webpackChunkName: \"CustomFieldsWidgetLazyContent\" */\n '../../components/CustomFieldsWidget/CustomFieldsWidgetLazyContent'\n ).catch((err) => {\n throw new WixPatternsError({\n errorCode: 'LoadCustomFieldsWidgetLazyContentFailed',\n originalException: err,\n });\n }),\n dataExtension.initTask.status.promise?.catch((err) => {\n throw new WixPatternsError({\n errorCode: 'InitCustomFieldsDataExtensionFailed',\n originalException: err,\n });\n }),\n container.initTask.status.promise?.catch((err) => {\n throw new WixPatternsError({\n errorCode: 'InitCustomFieldsWidgetContainerFailed',\n originalException: err,\n });\n }),\n ]).catch((error) => {\n this.container.internalMonitor.reportError({\n error,\n });\n\n this.reportBi(\n cairoErrorInLoadingAComponent({\n errorType:\n error instanceof WixPatternsError ? error.name : undefined,\n }),\n );\n\n throw error;\n });\n\n this._customFieldsLazyComponents = lazyComponents;\n\n appLoaded?.();\n });\n\n return () => {\n disposers.forEach((d) => d?.());\n };\n }\n\n initContent() {\n const disposers = [\n addResizeObserver(\n this._widgetContentRef.current,\n this._adjustWidgetSize.bind(this),\n ),\n ];\n\n this._adjustWidgetSize();\n\n return () => {\n disposers.forEach((d) => d?.());\n };\n }\n\n _commonDynamicBiParams() {\n return {\n url: window.location.href,\n };\n }\n\n retry() {\n this.reportBi(\n cairoTryAgainClicked({\n actionName: 'Load custom fields',\n loaction: 'Custom fields widget',\n }),\n );\n\n this.initTask.runOnce();\n }\n\n get isDirty() {\n return !!this._formState?.isDirty;\n }\n\n get widgetSize() {\n return this._size;\n }\n\n get isLoading() {\n const { status } = this.initTask;\n return status.isIdle || status.isLoading;\n }\n\n get ActionButtonsComponent() {\n return this._customFieldsLazyComponents?.ActionButtons;\n }\n\n get CustomFieldsWidgetContent() {\n return this._customFieldsLazyComponents?.CustomFieldsWidgetContent;\n }\n\n setWidgetContentRef(ref: HTMLDivElement | null) {\n this._widgetContentRef.current = ref;\n }\n\n _adjustWidgetSize() {\n if (this._widgetContentRef.current) {\n const element = this._widgetContentRef.current;\n\n if (element.clientWidth < 842) {\n this._size = 'small';\n } else {\n this._size = 'default';\n }\n }\n }\n\n get isError() {\n return this.initTask.status.isError;\n }\n\n async validate(): Promise<{\n isValid: boolean;\n extendedFields?: ExtendedFields;\n values?: ExtendedFields;\n }> {\n const data = this._formState?.validate();\n\n if (!data) {\n return {\n isValid: true,\n };\n }\n\n if (data?.isValid) {\n const extendedFields: ExtendedFields = {\n namespaces: {\n _user_fields: data.extendedFields,\n },\n };\n return {\n isValid: true,\n extendedFields,\n values: extendedFields,\n };\n }\n\n return { isValid: false };\n }\n\n get hasWritePermissions() {\n return this.dataExtension.hasWritePermissions;\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -13,4 +13,10 @@ Object.keys(_CustomFieldsWidgetState).forEach(function (key) {
|
|
|
13
13
|
if (key in exports && exports[key] === _CustomFieldsWidgetState[key]) return;
|
|
14
14
|
exports[key] = _CustomFieldsWidgetState[key];
|
|
15
15
|
});
|
|
16
|
+
var _CustomFieldsAllNamespacesFormState = require("./CustomFieldsAllNamespacesFormState");
|
|
17
|
+
Object.keys(_CustomFieldsAllNamespacesFormState).forEach(function (key) {
|
|
18
|
+
if (key === "default" || key === "__esModule") return;
|
|
19
|
+
if (key in exports && exports[key] === _CustomFieldsAllNamespacesFormState[key]) return;
|
|
20
|
+
exports[key] = _CustomFieldsAllNamespacesFormState[key];
|
|
21
|
+
});
|
|
16
22
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_CustomFieldsFormState","require","Object","keys","forEach","key","exports","_CustomFieldsWidgetState"],"sources":["../../../../src/state/CustomFields/index.ts"],"sourcesContent":["export * from './CustomFieldsFormState';\nexport * from './CustomFieldsWidgetState';\n"],"mappings":";;;AAAA,IAAAA,sBAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,sBAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,sBAAA,CAAAK,GAAA;EAAAC,OAAA,CAAAD,GAAA,IAAAL,sBAAA,CAAAK,GAAA;AAAA;AACA,IAAAE,wBAAA,GAAAN,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAI,wBAAA,EAAAH,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAE,wBAAA,CAAAF,GAAA;EAAAC,OAAA,CAAAD,GAAA,IAAAE,wBAAA,CAAAF,GAAA;AAAA","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_CustomFieldsFormState","require","Object","keys","forEach","key","exports","_CustomFieldsWidgetState","_CustomFieldsAllNamespacesFormState"],"sources":["../../../../src/state/CustomFields/index.ts"],"sourcesContent":["export * from './CustomFieldsFormState';\nexport * from './CustomFieldsWidgetState';\nexport * from './CustomFieldsAllNamespacesFormState';\n"],"mappings":";;;AAAA,IAAAA,sBAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,sBAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,sBAAA,CAAAK,GAAA;EAAAC,OAAA,CAAAD,GAAA,IAAAL,sBAAA,CAAAK,GAAA;AAAA;AACA,IAAAE,wBAAA,GAAAN,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAI,wBAAA,EAAAH,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAE,wBAAA,CAAAF,GAAA;EAAAC,OAAA,CAAAD,GAAA,IAAAE,wBAAA,CAAAF,GAAA;AAAA;AACA,IAAAG,mCAAA,GAAAP,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAK,mCAAA,EAAAJ,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAG,mCAAA,CAAAH,GAAA;EAAAC,OAAA,CAAAD,GAAA,IAAAG,mCAAA,CAAAH,GAAA;AAAA","ignoreList":[]}
|
|
@@ -177,7 +177,9 @@ class NestedCollectionFetchAllCollectionState {
|
|
|
177
177
|
collection,
|
|
178
178
|
fetchAllState
|
|
179
179
|
} = this;
|
|
180
|
-
const disposers = [collection.init(
|
|
180
|
+
const disposers = [collection.init({
|
|
181
|
+
skipFilterListeners: true
|
|
182
|
+
})];
|
|
181
183
|
initTask.runOnce(async () => {
|
|
182
184
|
collection.initTask.runOnce();
|
|
183
185
|
const collectionPromise = new Promise(async (resolve, reject) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_bexCore","require","_mobx","NestedCollectionFetchAllCollectionState","constructor","params","_defineProperty2","default","TaskState","levelDescriptor","fetchAllState","collection","parentFilter","createCollection","query","sharedQuery","options","fetchAllThreshold","syncWithSharedQuery","originalLimit","pagination","limit","makeObservable","init","action","_populateCache","_emitFetchAllAbortSignalIfExceedsThreshold","_setWithParentFilterQueryData","itemsByParentId","queryClient","_queryKey","queryName","computedQuery","asComputed","parentId","subItems","Array","from","entries","setQueryData","filtersKey","name","items","total","length","cursor","available","_setSectionQueryData","result","_populateCacheWithEmptyResult","parents","Map","map","id","next","parentKey","keyedItems","_otherLevelSameCollectionExists","reduce","groups","item","String","group","get","has","set","push","_exceedsTotalThreshold","_exceedsLevelThreshold","_exceedsThreshold","isFetchAllAborted","events","emit","initTask","disposers","runOnce","collectionPromise","Promise","resolve","reject","status","promise","e","race","fetchedAllPromise","forEach","d","exports"],"sources":["../../../../src/state/NestedTableState/NestedCollectionFetchAllCollectionState.ts"],"sourcesContent":["import {\n DataResultKeyed,\n FiltersMap,\n syncWithSharedQuery,\n TaskState,\n} from '@wix/bex-core';\nimport { NestedCollectionFetchAllState } from './NestedCollectionFetchAllState';\nimport { action, makeObservable } from 'mobx';\nimport { NestedCollectionLevelDescriptor } from './NestedCollectionLevelDescriptor';\n\nexport interface NestedCollectionFetchAllCollectionStateParas<\n T,\n F extends FiltersMap,\n> {\n readonly fetchAllState: NestedCollectionFetchAllState;\n readonly levelDescriptor: NestedCollectionLevelDescriptor<T, F>;\n}\n\nexport class NestedCollectionFetchAllCollectionState<T, F extends FiltersMap> {\n readonly collection;\n readonly levelDescriptor;\n readonly parentFilter;\n readonly fetchAllState;\n\n readonly initTask = new TaskState();\n\n readonly originalLimit;\n\n constructor(params: NestedCollectionFetchAllCollectionStateParas<T, F>) {\n const { levelDescriptor } = params;\n this.levelDescriptor = levelDescriptor;\n this.fetchAllState = params.fetchAllState;\n\n const { collection, parentFilter } = levelDescriptor.createCollection();\n this.collection = collection;\n this.parentFilter = parentFilter;\n\n const {\n fetchAllState: {\n query: sharedQuery,\n options: { fetchAllThreshold },\n },\n } = this;\n\n const { query } = collection;\n\n syncWithSharedQuery(query, sharedQuery);\n this.originalLimit = query.pagination.limit;\n query.pagination.limit =\n levelDescriptor.fetchAllThreshold ?? fetchAllThreshold;\n\n makeObservable(this, {\n init: action,\n _populateCache: action,\n _emitFetchAllAbortSignalIfExceedsThreshold: action,\n });\n }\n\n _setWithParentFilterQueryData(itemsByParentId: Map<string, T[]>) {\n const { collection, parentFilter } = this;\n\n const { queryClient, _queryKey, query } = collection;\n\n const [queryName, computedQuery] = _queryKey(query.asComputed);\n\n for (const [parentId, subItems] of Array.from(itemsByParentId.entries())) {\n queryClient.setQueryData<DataResultKeyed<T>>(\n [\n queryName,\n {\n ...computedQuery,\n filtersKey: {\n ...computedQuery.filtersKey,\n ...(parentFilter && {\n [parentFilter.name]: [parentId],\n }),\n },\n limit: this.originalLimit,\n },\n ],\n {\n items: subItems,\n total: subItems.length,\n cursor: null,\n available: null,\n },\n );\n }\n }\n\n _setSectionQueryData() {\n const { collection } = this;\n\n const {\n queryClient,\n _queryKey,\n query,\n result: { items },\n } = collection;\n\n const [queryName, computedQuery] = _queryKey(query.asComputed);\n\n queryClient.setQueryData<DataResultKeyed<T>>(\n [\n queryName,\n {\n ...computedQuery,\n limit: this.originalLimit,\n },\n ],\n {\n items,\n total: items.length,\n cursor: null,\n available: null,\n },\n );\n }\n\n _populateCacheWithEmptyResult(parents: { id: string }[]) {\n this._setWithParentFilterQueryData(\n new Map(parents.map(({ id }) => [id, []])),\n );\n }\n\n _populateCache(\n next: NestedCollectionFetchAllCollectionState<any, any> | null,\n ) {\n const {\n fetchAllState,\n collection,\n levelDescriptor: { parentKey },\n } = this;\n\n const {\n result: { items, keyedItems },\n } = collection;\n\n if (fetchAllState._otherLevelSameCollectionExists(this)) {\n this._populateCacheWithEmptyResult(keyedItems);\n }\n\n const itemsByParentId = items.reduce((groups, item) => {\n const parentId = String(parentKey(item));\n const group = groups.get(parentId) ?? [];\n if (!groups.has(parentId)) {\n groups.set(parentId, group);\n }\n group.push(item);\n return groups;\n }, new Map<string, T[]>([]));\n\n this._setWithParentFilterQueryData(itemsByParentId);\n this._setSectionQueryData();\n\n // also include current collection items treated as parents,\n // so if the next level doesn't have any items that their parent id is one of the current collection items,\n // there's still a cache entry for them\n next?._populateCacheWithEmptyResult(keyedItems);\n }\n\n _exceedsTotalThreshold() {\n const {\n fetchAllState: {\n options: { fetchAllThreshold },\n total,\n },\n } = this;\n return total > fetchAllThreshold;\n }\n\n _exceedsLevelThreshold() {\n const {\n levelDescriptor: { fetchAllThreshold },\n collection,\n } = this;\n return (\n fetchAllThreshold != null && collection.result.total > fetchAllThreshold\n );\n }\n\n _exceedsThreshold() {\n return this._exceedsTotalThreshold() || this._exceedsLevelThreshold();\n }\n\n _emitFetchAllAbortSignalIfExceedsThreshold() {\n const { fetchAllState } = this;\n\n if (fetchAllState.isFetchAllAborted) {\n return;\n }\n\n if (this._exceedsThreshold()) {\n fetchAllState.events.emit('fetchAllAbortSignal');\n fetchAllState.isFetchAllAborted = true;\n }\n }\n\n init() {\n const { initTask, collection, fetchAllState } = this;\n\n const disposers = [collection.init()];\n\n initTask.runOnce(async () => {\n collection.initTask.runOnce();\n\n const collectionPromise = new Promise<void>(async (resolve, reject) => {\n try {\n await collection.initTask.status.promise;\n this._emitFetchAllAbortSignalIfExceedsThreshold();\n resolve();\n } catch (e) {\n reject(e);\n }\n });\n\n await Promise.race([fetchAllState.fetchedAllPromise, collectionPromise]);\n });\n\n return () => {\n disposers.forEach((d) => d());\n };\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_bexCore","require","_mobx","NestedCollectionFetchAllCollectionState","constructor","params","_defineProperty2","default","TaskState","levelDescriptor","fetchAllState","collection","parentFilter","createCollection","query","sharedQuery","options","fetchAllThreshold","syncWithSharedQuery","originalLimit","pagination","limit","makeObservable","init","action","_populateCache","_emitFetchAllAbortSignalIfExceedsThreshold","_setWithParentFilterQueryData","itemsByParentId","queryClient","_queryKey","queryName","computedQuery","asComputed","parentId","subItems","Array","from","entries","setQueryData","filtersKey","name","items","total","length","cursor","available","_setSectionQueryData","result","_populateCacheWithEmptyResult","parents","Map","map","id","next","parentKey","keyedItems","_otherLevelSameCollectionExists","reduce","groups","item","String","group","get","has","set","push","_exceedsTotalThreshold","_exceedsLevelThreshold","_exceedsThreshold","isFetchAllAborted","events","emit","initTask","disposers","skipFilterListeners","runOnce","collectionPromise","Promise","resolve","reject","status","promise","e","race","fetchedAllPromise","forEach","d","exports"],"sources":["../../../../src/state/NestedTableState/NestedCollectionFetchAllCollectionState.ts"],"sourcesContent":["import {\n DataResultKeyed,\n FiltersMap,\n syncWithSharedQuery,\n TaskState,\n} from '@wix/bex-core';\nimport { NestedCollectionFetchAllState } from './NestedCollectionFetchAllState';\nimport { action, makeObservable } from 'mobx';\nimport { NestedCollectionLevelDescriptor } from './NestedCollectionLevelDescriptor';\n\nexport interface NestedCollectionFetchAllCollectionStateParas<\n T,\n F extends FiltersMap,\n> {\n readonly fetchAllState: NestedCollectionFetchAllState;\n readonly levelDescriptor: NestedCollectionLevelDescriptor<T, F>;\n}\n\nexport class NestedCollectionFetchAllCollectionState<T, F extends FiltersMap> {\n readonly collection;\n readonly levelDescriptor;\n readonly parentFilter;\n readonly fetchAllState;\n\n readonly initTask = new TaskState();\n\n readonly originalLimit;\n\n constructor(params: NestedCollectionFetchAllCollectionStateParas<T, F>) {\n const { levelDescriptor } = params;\n this.levelDescriptor = levelDescriptor;\n this.fetchAllState = params.fetchAllState;\n\n const { collection, parentFilter } = levelDescriptor.createCollection();\n this.collection = collection;\n this.parentFilter = parentFilter;\n\n const {\n fetchAllState: {\n query: sharedQuery,\n options: { fetchAllThreshold },\n },\n } = this;\n\n const { query } = collection;\n\n syncWithSharedQuery(query, sharedQuery);\n this.originalLimit = query.pagination.limit;\n query.pagination.limit =\n levelDescriptor.fetchAllThreshold ?? fetchAllThreshold;\n\n makeObservable(this, {\n init: action,\n _populateCache: action,\n _emitFetchAllAbortSignalIfExceedsThreshold: action,\n });\n }\n\n _setWithParentFilterQueryData(itemsByParentId: Map<string, T[]>) {\n const { collection, parentFilter } = this;\n\n const { queryClient, _queryKey, query } = collection;\n\n const [queryName, computedQuery] = _queryKey(query.asComputed);\n\n for (const [parentId, subItems] of Array.from(itemsByParentId.entries())) {\n queryClient.setQueryData<DataResultKeyed<T>>(\n [\n queryName,\n {\n ...computedQuery,\n filtersKey: {\n ...computedQuery.filtersKey,\n ...(parentFilter && {\n [parentFilter.name]: [parentId],\n }),\n },\n limit: this.originalLimit,\n },\n ],\n {\n items: subItems,\n total: subItems.length,\n cursor: null,\n available: null,\n },\n );\n }\n }\n\n _setSectionQueryData() {\n const { collection } = this;\n\n const {\n queryClient,\n _queryKey,\n query,\n result: { items },\n } = collection;\n\n const [queryName, computedQuery] = _queryKey(query.asComputed);\n\n queryClient.setQueryData<DataResultKeyed<T>>(\n [\n queryName,\n {\n ...computedQuery,\n limit: this.originalLimit,\n },\n ],\n {\n items,\n total: items.length,\n cursor: null,\n available: null,\n },\n );\n }\n\n _populateCacheWithEmptyResult(parents: { id: string }[]) {\n this._setWithParentFilterQueryData(\n new Map(parents.map(({ id }) => [id, []])),\n );\n }\n\n _populateCache(\n next: NestedCollectionFetchAllCollectionState<any, any> | null,\n ) {\n const {\n fetchAllState,\n collection,\n levelDescriptor: { parentKey },\n } = this;\n\n const {\n result: { items, keyedItems },\n } = collection;\n\n if (fetchAllState._otherLevelSameCollectionExists(this)) {\n this._populateCacheWithEmptyResult(keyedItems);\n }\n\n const itemsByParentId = items.reduce((groups, item) => {\n const parentId = String(parentKey(item));\n const group = groups.get(parentId) ?? [];\n if (!groups.has(parentId)) {\n groups.set(parentId, group);\n }\n group.push(item);\n return groups;\n }, new Map<string, T[]>([]));\n\n this._setWithParentFilterQueryData(itemsByParentId);\n this._setSectionQueryData();\n\n // also include current collection items treated as parents,\n // so if the next level doesn't have any items that their parent id is one of the current collection items,\n // there's still a cache entry for them\n next?._populateCacheWithEmptyResult(keyedItems);\n }\n\n _exceedsTotalThreshold() {\n const {\n fetchAllState: {\n options: { fetchAllThreshold },\n total,\n },\n } = this;\n return total > fetchAllThreshold;\n }\n\n _exceedsLevelThreshold() {\n const {\n levelDescriptor: { fetchAllThreshold },\n collection,\n } = this;\n return (\n fetchAllThreshold != null && collection.result.total > fetchAllThreshold\n );\n }\n\n _exceedsThreshold() {\n return this._exceedsTotalThreshold() || this._exceedsLevelThreshold();\n }\n\n _emitFetchAllAbortSignalIfExceedsThreshold() {\n const { fetchAllState } = this;\n\n if (fetchAllState.isFetchAllAborted) {\n return;\n }\n\n if (this._exceedsThreshold()) {\n fetchAllState.events.emit('fetchAllAbortSignal');\n fetchAllState.isFetchAllAborted = true;\n }\n }\n\n init() {\n const { initTask, collection, fetchAllState } = this;\n\n const disposers = [collection.init({ skipFilterListeners: true })];\n\n initTask.runOnce(async () => {\n collection.initTask.runOnce();\n\n const collectionPromise = new Promise<void>(async (resolve, reject) => {\n try {\n await collection.initTask.status.promise;\n this._emitFetchAllAbortSignalIfExceedsThreshold();\n resolve();\n } catch (e) {\n reject(e);\n }\n });\n\n await Promise.race([fetchAllState.fetchedAllPromise, collectionPromise]);\n });\n\n return () => {\n disposers.forEach((d) => d());\n };\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAOA,IAAAC,KAAA,GAAAD,OAAA;AAWO,MAAME,uCAAuC,CAA0B;EAU5EC,WAAWA,CAACC,MAA0D,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA,oBAJpD,IAAIC,kBAAS,CAAC,CAAC;IAAA,IAAAF,gBAAA,CAAAC,OAAA;IAKjC,MAAM;MAAEE;IAAgB,CAAC,GAAGJ,MAAM;IAClC,IAAI,CAACI,eAAe,GAAGA,eAAe;IACtC,IAAI,CAACC,aAAa,GAAGL,MAAM,CAACK,aAAa;IAEzC,MAAM;MAAEC,UAAU;MAAEC;IAAa,CAAC,GAAGH,eAAe,CAACI,gBAAgB,CAAC,CAAC;IACvE,IAAI,CAACF,UAAU,GAAGA,UAAU;IAC5B,IAAI,CAACC,YAAY,GAAGA,YAAY;IAEhC,MAAM;MACJF,aAAa,EAAE;QACbI,KAAK,EAAEC,WAAW;QAClBC,OAAO,EAAE;UAAEC;QAAkB;MAC/B;IACF,CAAC,GAAG,IAAI;IAER,MAAM;MAAEH;IAAM,CAAC,GAAGH,UAAU;IAE5B,IAAAO,4BAAmB,EAACJ,KAAK,EAAEC,WAAW,CAAC;IACvC,IAAI,CAACI,aAAa,GAAGL,KAAK,CAACM,UAAU,CAACC,KAAK;IAC3CP,KAAK,CAACM,UAAU,CAACC,KAAK,GACpBZ,eAAe,CAACQ,iBAAiB,IAAIA,iBAAiB;IAExD,IAAAK,oBAAc,EAAC,IAAI,EAAE;MACnBC,IAAI,EAAEC,YAAM;MACZC,cAAc,EAAED,YAAM;MACtBE,0CAA0C,EAAEF;IAC9C,CAAC,CAAC;EACJ;EAEAG,6BAA6BA,CAACC,eAAiC,EAAE;IAC/D,MAAM;MAAEjB,UAAU;MAAEC;IAAa,CAAC,GAAG,IAAI;IAEzC,MAAM;MAAEiB,WAAW;MAAEC,SAAS;MAAEhB;IAAM,CAAC,GAAGH,UAAU;IAEpD,MAAM,CAACoB,SAAS,EAAEC,aAAa,CAAC,GAAGF,SAAS,CAAChB,KAAK,CAACmB,UAAU,CAAC;IAE9D,KAAK,MAAM,CAACC,QAAQ,EAAEC,QAAQ,CAAC,IAAIC,KAAK,CAACC,IAAI,CAACT,eAAe,CAACU,OAAO,CAAC,CAAC,CAAC,EAAE;MACxET,WAAW,CAACU,YAAY,CACtB,CACER,SAAS,EACT;QACE,GAAGC,aAAa;QAChBQ,UAAU,EAAE;UACV,GAAGR,aAAa,CAACQ,UAAU;UAC3B,IAAI5B,YAAY,IAAI;YAClB,CAACA,YAAY,CAAC6B,IAAI,GAAG,CAACP,QAAQ;UAChC,CAAC;QACH,CAAC;QACDb,KAAK,EAAE,IAAI,CAACF;MACd,CAAC,CACF,EACD;QACEuB,KAAK,EAAEP,QAAQ;QACfQ,KAAK,EAAER,QAAQ,CAACS,MAAM;QACtBC,MAAM,EAAE,IAAI;QACZC,SAAS,EAAE;MACb,CACF,CAAC;IACH;EACF;EAEAC,oBAAoBA,CAAA,EAAG;IACrB,MAAM;MAAEpC;IAAW,CAAC,GAAG,IAAI;IAE3B,MAAM;MACJkB,WAAW;MACXC,SAAS;MACThB,KAAK;MACLkC,MAAM,EAAE;QAAEN;MAAM;IAClB,CAAC,GAAG/B,UAAU;IAEd,MAAM,CAACoB,SAAS,EAAEC,aAAa,CAAC,GAAGF,SAAS,CAAChB,KAAK,CAACmB,UAAU,CAAC;IAE9DJ,WAAW,CAACU,YAAY,CACtB,CACER,SAAS,EACT;MACE,GAAGC,aAAa;MAChBX,KAAK,EAAE,IAAI,CAACF;IACd,CAAC,CACF,EACD;MACEuB,KAAK;MACLC,KAAK,EAAED,KAAK,CAACE,MAAM;MACnBC,MAAM,EAAE,IAAI;MACZC,SAAS,EAAE;IACb,CACF,CAAC;EACH;EAEAG,6BAA6BA,CAACC,OAAyB,EAAE;IACvD,IAAI,CAACvB,6BAA6B,CAChC,IAAIwB,GAAG,CAACD,OAAO,CAACE,GAAG,CAAC,CAAC;MAAEC;IAAG,CAAC,KAAK,CAACA,EAAE,EAAE,EAAE,CAAC,CAAC,CAC3C,CAAC;EACH;EAEA5B,cAAcA,CACZ6B,IAA8D,EAC9D;IACA,MAAM;MACJ5C,aAAa;MACbC,UAAU;MACVF,eAAe,EAAE;QAAE8C;MAAU;IAC/B,CAAC,GAAG,IAAI;IAER,MAAM;MACJP,MAAM,EAAE;QAAEN,KAAK;QAAEc;MAAW;IAC9B,CAAC,GAAG7C,UAAU;IAEd,IAAID,aAAa,CAAC+C,+BAA+B,CAAC,IAAI,CAAC,EAAE;MACvD,IAAI,CAACR,6BAA6B,CAACO,UAAU,CAAC;IAChD;IAEA,MAAM5B,eAAe,GAAGc,KAAK,CAACgB,MAAM,CAAC,CAACC,MAAM,EAAEC,IAAI,KAAK;MACrD,MAAM1B,QAAQ,GAAG2B,MAAM,CAACN,SAAS,CAACK,IAAI,CAAC,CAAC;MACxC,MAAME,KAAK,GAAGH,MAAM,CAACI,GAAG,CAAC7B,QAAQ,CAAC,IAAI,EAAE;MACxC,IAAI,CAACyB,MAAM,CAACK,GAAG,CAAC9B,QAAQ,CAAC,EAAE;QACzByB,MAAM,CAACM,GAAG,CAAC/B,QAAQ,EAAE4B,KAAK,CAAC;MAC7B;MACAA,KAAK,CAACI,IAAI,CAACN,IAAI,CAAC;MAChB,OAAOD,MAAM;IACf,CAAC,EAAE,IAAIR,GAAG,CAAc,EAAE,CAAC,CAAC;IAE5B,IAAI,CAACxB,6BAA6B,CAACC,eAAe,CAAC;IACnD,IAAI,CAACmB,oBAAoB,CAAC,CAAC;;IAE3B;IACA;IACA;IACAO,IAAI,YAAJA,IAAI,CAAEL,6BAA6B,CAACO,UAAU,CAAC;EACjD;EAEAW,sBAAsBA,CAAA,EAAG;IACvB,MAAM;MACJzD,aAAa,EAAE;QACbM,OAAO,EAAE;UAAEC;QAAkB,CAAC;QAC9B0B;MACF;IACF,CAAC,GAAG,IAAI;IACR,OAAOA,KAAK,GAAG1B,iBAAiB;EAClC;EAEAmD,sBAAsBA,CAAA,EAAG;IACvB,MAAM;MACJ3D,eAAe,EAAE;QAAEQ;MAAkB,CAAC;MACtCN;IACF,CAAC,GAAG,IAAI;IACR,OACEM,iBAAiB,IAAI,IAAI,IAAIN,UAAU,CAACqC,MAAM,CAACL,KAAK,GAAG1B,iBAAiB;EAE5E;EAEAoD,iBAAiBA,CAAA,EAAG;IAClB,OAAO,IAAI,CAACF,sBAAsB,CAAC,CAAC,IAAI,IAAI,CAACC,sBAAsB,CAAC,CAAC;EACvE;EAEA1C,0CAA0CA,CAAA,EAAG;IAC3C,MAAM;MAAEhB;IAAc,CAAC,GAAG,IAAI;IAE9B,IAAIA,aAAa,CAAC4D,iBAAiB,EAAE;MACnC;IACF;IAEA,IAAI,IAAI,CAACD,iBAAiB,CAAC,CAAC,EAAE;MAC5B3D,aAAa,CAAC6D,MAAM,CAACC,IAAI,CAAC,qBAAqB,CAAC;MAChD9D,aAAa,CAAC4D,iBAAiB,GAAG,IAAI;IACxC;EACF;EAEA/C,IAAIA,CAAA,EAAG;IACL,MAAM;MAAEkD,QAAQ;MAAE9D,UAAU;MAAED;IAAc,CAAC,GAAG,IAAI;IAEpD,MAAMgE,SAAS,GAAG,CAAC/D,UAAU,CAACY,IAAI,CAAC;MAAEoD,mBAAmB,EAAE;IAAK,CAAC,CAAC,CAAC;IAElEF,QAAQ,CAACG,OAAO,CAAC,YAAY;MAC3BjE,UAAU,CAAC8D,QAAQ,CAACG,OAAO,CAAC,CAAC;MAE7B,MAAMC,iBAAiB,GAAG,IAAIC,OAAO,CAAO,OAAOC,OAAO,EAAEC,MAAM,KAAK;QACrE,IAAI;UACF,MAAMrE,UAAU,CAAC8D,QAAQ,CAACQ,MAAM,CAACC,OAAO;UACxC,IAAI,CAACxD,0CAA0C,CAAC,CAAC;UACjDqD,OAAO,CAAC,CAAC;QACX,CAAC,CAAC,OAAOI,CAAC,EAAE;UACVH,MAAM,CAACG,CAAC,CAAC;QACX;MACF,CAAC,CAAC;MAEF,MAAML,OAAO,CAACM,IAAI,CAAC,CAAC1E,aAAa,CAAC2E,iBAAiB,EAAER,iBAAiB,CAAC,CAAC;IAC1E,CAAC,CAAC;IAEF,OAAO,MAAM;MACXH,SAAS,CAACY,OAAO,CAAEC,CAAC,IAAKA,CAAC,CAAC,CAAC,CAAC;IAC/B,CAAC;EACH;AACF;AAACC,OAAA,CAAArF,uCAAA,GAAAA,uCAAA","ignoreList":[]}
|
|
@@ -101,7 +101,8 @@ class NestedCollectionNodeState {
|
|
|
101
101
|
nestedCollection.events.on('dispose', collection._optimisticActions.init());
|
|
102
102
|
}
|
|
103
103
|
const disposers = [!skipCollectionInit ? collection.init({
|
|
104
|
-
skipInitialFetch: nestedCollection.isFetchAllAborted === true && !this._expanded
|
|
104
|
+
skipInitialFetch: nestedCollection.isFetchAllAborted === true && !this._expanded,
|
|
105
|
+
skipFilterListeners: true
|
|
105
106
|
}) : undefined];
|
|
106
107
|
initTask.runOnce(async () => {
|
|
107
108
|
collection.initTask.runOnce();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_bexCore","require","_mobx","NestedCollectionNodeState","constructor","params","_this$parent","_defineProperty2","default","observable","map","deep","TaskState","nestedCollection","levelDescriptor","parent","parentNode","_notifyAll","notifyAll","runInAction","_expanded","isFetchAllAborted","expandAll","collection","parentFilter","nodeCollection","createCollection","parentId","id","sequences","query","queryObserver","setOptions","options","staleTime","Infinity","sharedQuery","syncWithSharedQuery","persistent","setValue","key","makeObservable","init","action","_toggleExpand","_changeHover","ref","_hovered","hoveredOrParentHovered","computed","initialFetch","e","console","error","_this$parentNode","hovered","skipCollectionInit","initTask","_optimisticActions","events","on","disposers","skipInitialFetch","undefined","runOnce","status","promise","forEach","d","_createNode","exports"],"sources":["../../../../src/state/NestedTableState/NestedCollectionNodeState.ts"],"sourcesContent":["import {\n FiltersMap,\n KeyedItem,\n QueryState,\n syncWithSharedQuery,\n TaskState,\n} from '@wix/bex-core';\nimport {\n action,\n computed,\n makeObservable,\n observable,\n runInAction,\n} from 'mobx';\nimport { NestedCollectionState } from './NestedCollectionState';\nimport { NestedCollectionLevelDescriptor } from './NestedCollectionLevelDescriptor';\nimport { NodeCollection } from './types';\n\nexport interface NestedCollectionNodeStateBaseParams<T, F extends FiltersMap> {\n readonly levelDescriptor: NestedCollectionLevelDescriptor<T, F>;\n readonly notifyAll?: boolean;\n}\n\nexport interface NestedCollectionNodeStateParams<T, F extends FiltersMap>\n extends NestedCollectionNodeStateBaseParams<T, F> {\n readonly nestedCollection: NestedCollectionState;\n readonly parentNode: NestedCollectionNodeState<any, any> | null;\n readonly parent: KeyedItem<any> | null;\n readonly nodeCollection?: NodeCollection<T, F>;\n}\n\nexport class NestedCollectionNodeState<T, F extends FiltersMap> {\n readonly nestedCollection;\n readonly collection;\n readonly levelDescriptor: NestedCollectionLevelDescriptor<T, F>;\n readonly parent;\n readonly parentNode;\n readonly parentFilter;\n\n readonly parentKeyToChildrenMap = observable.map<\n string,\n NestedCollectionNodeState<any, any>\n >([], {\n deep: false,\n });\n\n _expanded = false;\n _hovered = false;\n\n _notifyAll;\n\n readonly initTask = new TaskState();\n\n constructor(params: NestedCollectionNodeStateParams<T, F>) {\n const { nestedCollection } = params;\n this.nestedCollection = nestedCollection;\n this.levelDescriptor = params.levelDescriptor;\n this.parent = params.parent;\n this.parentNode = params.parentNode;\n this._notifyAll = params.notifyAll;\n\n runInAction(() => {\n this._expanded =\n !nestedCollection.isFetchAllAborted && nestedCollection.expandAll;\n });\n\n const { collection, parentFilter } =\n params.nodeCollection ??\n this.levelDescriptor.createCollection({\n parentId: this.parent?.id ?? 'null',\n sequences: nestedCollection.sequences,\n query: nestedCollection.query as QueryState<F>,\n });\n\n if (!nestedCollection.isFetchAllAborted) {\n collection.queryObserver.setOptions({\n ...collection.queryObserver.options,\n staleTime: Infinity,\n });\n }\n\n this.collection = collection;\n this.parentFilter = parentFilter;\n\n const {\n parent,\n nestedCollection: { query: sharedQuery },\n } = this;\n\n const { query } = collection;\n\n syncWithSharedQuery(query, sharedQuery);\n\n if (parent != null && parentFilter != null) {\n parentFilter.persistent = true;\n parentFilter.setValue([parent.key]);\n }\n\n makeObservable(this, {\n init: action,\n _toggleExpand: action,\n _changeHover: action,\n _expanded: observable.ref,\n _hovered: observable.ref,\n hoveredOrParentHovered: computed,\n });\n }\n\n async _toggleExpand() {\n this._expanded = !this._expanded;\n if (this._expanded) {\n try {\n await this.collection.initialFetch();\n } catch (e) {\n console.error(e);\n }\n }\n }\n\n get hoveredOrParentHovered(): boolean {\n return this._hovered || !!this.parentNode?.hoveredOrParentHovered;\n }\n\n _changeHover(hovered: boolean) {\n this._hovered = hovered;\n }\n\n init({ skipCollectionInit }: { skipCollectionInit?: boolean } = {}) {\n const { initTask, collection, nestedCollection } = this;\n\n if (collection._optimisticActions) {\n nestedCollection.events.on(\n 'dispose',\n collection._optimisticActions.init(),\n );\n }\n\n const disposers = [\n !skipCollectionInit\n ? collection.init({\n skipInitialFetch:\n nestedCollection.isFetchAllAborted === true && !this._expanded,\n })\n : undefined,\n ];\n\n initTask.runOnce(async () => {\n collection.initTask.runOnce();\n await collection.initTask.status.promise;\n });\n\n return () => {\n disposers.forEach((d) => d?.());\n };\n }\n\n _createNode(\n parent: KeyedItem<any>,\n params: NestedCollectionNodeStateBaseParams<any, any>,\n ) {\n const { nestedCollection } = this;\n\n return new NestedCollectionNodeState({\n parent,\n parentNode: this,\n nestedCollection,\n levelDescriptor: params.levelDescriptor,\n notifyAll: params.notifyAll,\n });\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAOA,IAAAC,KAAA,GAAAD,OAAA;AAwBO,MAAME,yBAAyB,CAA0B;EAsB9DC,WAAWA,CAACC,MAA6C,EAAE;IAAA,IAAAC,YAAA;IAAA,IAAAC,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA,kCAdzBC,gBAAU,CAACC,GAAG,CAG9C,EAAE,EAAE;MACJC,IAAI,EAAE;IACR,CAAC,CAAC;IAAA,IAAAJ,gBAAA,CAAAC,OAAA,qBAEU,KAAK;IAAA,IAAAD,gBAAA,CAAAC,OAAA,oBACN,KAAK;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA,oBAII,IAAII,kBAAS,CAAC,CAAC;IAGjC,MAAM;MAAEC;IAAiB,CAAC,GAAGR,MAAM;IACnC,IAAI,CAACQ,gBAAgB,GAAGA,gBAAgB;IACxC,IAAI,CAACC,eAAe,GAAGT,MAAM,CAACS,eAAe;IAC7C,IAAI,CAACC,MAAM,GAAGV,MAAM,CAACU,MAAM;IAC3B,IAAI,CAACC,UAAU,GAAGX,MAAM,CAACW,UAAU;IACnC,IAAI,CAACC,UAAU,GAAGZ,MAAM,CAACa,SAAS;IAElC,IAAAC,iBAAW,EAAC,MAAM;MAChB,IAAI,CAACC,SAAS,GACZ,CAACP,gBAAgB,CAACQ,iBAAiB,IAAIR,gBAAgB,CAACS,SAAS;IACrE,CAAC,CAAC;IAEF,MAAM;MAAEC,UAAU;MAAEC;IAAa,CAAC,GAChCnB,MAAM,CAACoB,cAAc,IACrB,IAAI,CAACX,eAAe,CAACY,gBAAgB,CAAC;MACpCC,QAAQ,EAAE,EAAArB,YAAA,OAAI,CAACS,MAAM,qBAAXT,YAAA,CAAasB,EAAE,KAAI,MAAM;MACnCC,SAAS,EAAEhB,gBAAgB,CAACgB,SAAS;MACrCC,KAAK,EAAEjB,gBAAgB,CAACiB;IAC1B,CAAC,CAAC;IAEJ,IAAI,CAACjB,gBAAgB,CAACQ,iBAAiB,EAAE;MACvCE,UAAU,CAACQ,aAAa,CAACC,UAAU,CAAC;QAClC,GAAGT,UAAU,CAACQ,aAAa,CAACE,OAAO;QACnCC,SAAS,EAAEC;MACb,CAAC,CAAC;IACJ;IAEA,IAAI,CAACZ,UAAU,GAAGA,UAAU;IAC5B,IAAI,CAACC,YAAY,GAAGA,YAAY;IAEhC,MAAM;MACJT,MAAM;MACNF,gBAAgB,EAAE;QAAEiB,KAAK,EAAEM;MAAY;IACzC,CAAC,GAAG,IAAI;IAER,MAAM;MAAEN;IAAM,CAAC,GAAGP,UAAU;IAE5B,IAAAc,4BAAmB,EAACP,KAAK,EAAEM,WAAW,CAAC;IAEvC,IAAIrB,MAAM,IAAI,IAAI,IAAIS,YAAY,IAAI,IAAI,EAAE;MAC1CA,YAAY,CAACc,UAAU,GAAG,IAAI;MAC9Bd,YAAY,CAACe,QAAQ,CAAC,CAACxB,MAAM,CAACyB,GAAG,CAAC,CAAC;IACrC;IAEA,IAAAC,oBAAc,EAAC,IAAI,EAAE;MACnBC,IAAI,EAAEC,YAAM;MACZC,aAAa,EAAED,YAAM;MACrBE,YAAY,EAAEF,YAAM;MACpBvB,SAAS,EAAEX,gBAAU,CAACqC,GAAG;MACzBC,QAAQ,EAAEtC,gBAAU,CAACqC,GAAG;MACxBE,sBAAsB,EAAEC;IAC1B,CAAC,CAAC;EACJ;EAEA,MAAML,aAAaA,CAAA,EAAG;IACpB,IAAI,CAACxB,SAAS,GAAG,CAAC,IAAI,CAACA,SAAS;IAChC,IAAI,IAAI,CAACA,SAAS,EAAE;MAClB,IAAI;QACF,MAAM,IAAI,CAACG,UAAU,CAAC2B,YAAY,CAAC,CAAC;MACtC,CAAC,CAAC,OAAOC,CAAC,EAAE;QACVC,OAAO,CAACC,KAAK,CAACF,CAAC,CAAC;MAClB;IACF;EACF;EAEA,IAAIH,sBAAsBA,CAAA,EAAY;IAAA,IAAAM,gBAAA;IACpC,OAAO,IAAI,CAACP,QAAQ,IAAI,CAAC,GAAAO,gBAAA,GAAC,IAAI,CAACtC,UAAU,aAAfsC,gBAAA,CAAiBN,sBAAsB;EACnE;EAEAH,YAAYA,CAACU,OAAgB,EAAE;IAC7B,IAAI,CAACR,QAAQ,GAAGQ,OAAO;EACzB;EAEAb,IAAIA,CAAC;IAAEc;EAAqD,CAAC,GAAG,CAAC,CAAC,EAAE;IAClE,MAAM;MAAEC,QAAQ;MAAElC,UAAU;MAAEV;IAAiB,CAAC,GAAG,IAAI;IAEvD,IAAIU,UAAU,CAACmC,kBAAkB,EAAE;MACjC7C,gBAAgB,CAAC8C,MAAM,CAACC,EAAE,CACxB,SAAS,EACTrC,UAAU,CAACmC,kBAAkB,CAAChB,IAAI,CAAC,CACrC,CAAC;IACH;IAEA,MAAMmB,SAAS,GAAG,CAChB,CAACL,kBAAkB,GACfjC,UAAU,CAACmB,IAAI,CAAC;MACdoB,gBAAgB,EACdjD,gBAAgB,CAACQ,iBAAiB,KAAK,IAAI,IAAI,CAAC,IAAI,CAACD;
|
|
1
|
+
{"version":3,"names":["_bexCore","require","_mobx","NestedCollectionNodeState","constructor","params","_this$parent","_defineProperty2","default","observable","map","deep","TaskState","nestedCollection","levelDescriptor","parent","parentNode","_notifyAll","notifyAll","runInAction","_expanded","isFetchAllAborted","expandAll","collection","parentFilter","nodeCollection","createCollection","parentId","id","sequences","query","queryObserver","setOptions","options","staleTime","Infinity","sharedQuery","syncWithSharedQuery","persistent","setValue","key","makeObservable","init","action","_toggleExpand","_changeHover","ref","_hovered","hoveredOrParentHovered","computed","initialFetch","e","console","error","_this$parentNode","hovered","skipCollectionInit","initTask","_optimisticActions","events","on","disposers","skipInitialFetch","skipFilterListeners","undefined","runOnce","status","promise","forEach","d","_createNode","exports"],"sources":["../../../../src/state/NestedTableState/NestedCollectionNodeState.ts"],"sourcesContent":["import {\n FiltersMap,\n KeyedItem,\n QueryState,\n syncWithSharedQuery,\n TaskState,\n} from '@wix/bex-core';\nimport {\n action,\n computed,\n makeObservable,\n observable,\n runInAction,\n} from 'mobx';\nimport { NestedCollectionState } from './NestedCollectionState';\nimport { NestedCollectionLevelDescriptor } from './NestedCollectionLevelDescriptor';\nimport { NodeCollection } from './types';\n\nexport interface NestedCollectionNodeStateBaseParams<T, F extends FiltersMap> {\n readonly levelDescriptor: NestedCollectionLevelDescriptor<T, F>;\n readonly notifyAll?: boolean;\n}\n\nexport interface NestedCollectionNodeStateParams<T, F extends FiltersMap>\n extends NestedCollectionNodeStateBaseParams<T, F> {\n readonly nestedCollection: NestedCollectionState;\n readonly parentNode: NestedCollectionNodeState<any, any> | null;\n readonly parent: KeyedItem<any> | null;\n readonly nodeCollection?: NodeCollection<T, F>;\n}\n\nexport class NestedCollectionNodeState<T, F extends FiltersMap> {\n readonly nestedCollection;\n readonly collection;\n readonly levelDescriptor: NestedCollectionLevelDescriptor<T, F>;\n readonly parent;\n readonly parentNode;\n readonly parentFilter;\n\n readonly parentKeyToChildrenMap = observable.map<\n string,\n NestedCollectionNodeState<any, any>\n >([], {\n deep: false,\n });\n\n _expanded = false;\n _hovered = false;\n\n _notifyAll;\n\n readonly initTask = new TaskState();\n\n constructor(params: NestedCollectionNodeStateParams<T, F>) {\n const { nestedCollection } = params;\n this.nestedCollection = nestedCollection;\n this.levelDescriptor = params.levelDescriptor;\n this.parent = params.parent;\n this.parentNode = params.parentNode;\n this._notifyAll = params.notifyAll;\n\n runInAction(() => {\n this._expanded =\n !nestedCollection.isFetchAllAborted && nestedCollection.expandAll;\n });\n\n const { collection, parentFilter } =\n params.nodeCollection ??\n this.levelDescriptor.createCollection({\n parentId: this.parent?.id ?? 'null',\n sequences: nestedCollection.sequences,\n query: nestedCollection.query as QueryState<F>,\n });\n\n if (!nestedCollection.isFetchAllAborted) {\n collection.queryObserver.setOptions({\n ...collection.queryObserver.options,\n staleTime: Infinity,\n });\n }\n\n this.collection = collection;\n this.parentFilter = parentFilter;\n\n const {\n parent,\n nestedCollection: { query: sharedQuery },\n } = this;\n\n const { query } = collection;\n\n syncWithSharedQuery(query, sharedQuery);\n\n if (parent != null && parentFilter != null) {\n parentFilter.persistent = true;\n parentFilter.setValue([parent.key]);\n }\n\n makeObservable(this, {\n init: action,\n _toggleExpand: action,\n _changeHover: action,\n _expanded: observable.ref,\n _hovered: observable.ref,\n hoveredOrParentHovered: computed,\n });\n }\n\n async _toggleExpand() {\n this._expanded = !this._expanded;\n if (this._expanded) {\n try {\n await this.collection.initialFetch();\n } catch (e) {\n console.error(e);\n }\n }\n }\n\n get hoveredOrParentHovered(): boolean {\n return this._hovered || !!this.parentNode?.hoveredOrParentHovered;\n }\n\n _changeHover(hovered: boolean) {\n this._hovered = hovered;\n }\n\n init({ skipCollectionInit }: { skipCollectionInit?: boolean } = {}) {\n const { initTask, collection, nestedCollection } = this;\n\n if (collection._optimisticActions) {\n nestedCollection.events.on(\n 'dispose',\n collection._optimisticActions.init(),\n );\n }\n\n const disposers = [\n !skipCollectionInit\n ? collection.init({\n skipInitialFetch:\n nestedCollection.isFetchAllAborted === true && !this._expanded,\n skipFilterListeners: true,\n })\n : undefined,\n ];\n\n initTask.runOnce(async () => {\n collection.initTask.runOnce();\n await collection.initTask.status.promise;\n });\n\n return () => {\n disposers.forEach((d) => d?.());\n };\n }\n\n _createNode(\n parent: KeyedItem<any>,\n params: NestedCollectionNodeStateBaseParams<any, any>,\n ) {\n const { nestedCollection } = this;\n\n return new NestedCollectionNodeState({\n parent,\n parentNode: this,\n nestedCollection,\n levelDescriptor: params.levelDescriptor,\n notifyAll: params.notifyAll,\n });\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -9,7 +9,6 @@ var _NestedCollectionNodeState = require("./NestedCollectionNodeState");
|
|
|
9
9
|
var _events = require("events");
|
|
10
10
|
class NestedCollectionState {
|
|
11
11
|
constructor(params) {
|
|
12
|
-
var _this$root$parentFilt;
|
|
13
12
|
(0, _defineProperty2.default)(this, "container", void 0);
|
|
14
13
|
(0, _defineProperty2.default)(this, "levels", void 0);
|
|
15
14
|
(0, _defineProperty2.default)(this, "isFetchAllAborted", null);
|
|
@@ -35,7 +34,11 @@ class NestedCollectionState {
|
|
|
35
34
|
levelDescriptor: rootLevelDescriptor,
|
|
36
35
|
nodeCollection: params.nodeCollection
|
|
37
36
|
});
|
|
38
|
-
|
|
37
|
+
const parentFilter = this.root.parentFilter;
|
|
38
|
+
if (parentFilter != null) {
|
|
39
|
+
parentFilter.setValue(['null']);
|
|
40
|
+
parentFilter.persistent = true;
|
|
41
|
+
}
|
|
39
42
|
(0, _mobx.makeObservable)(this, {
|
|
40
43
|
total: _mobx.observable.ref
|
|
41
44
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_mobx","require","_NestedCollectionNodeState","_events","NestedCollectionState","constructor","params","
|
|
1
|
+
{"version":3,"names":["_mobx","require","_NestedCollectionNodeState","_events","NestedCollectionState","constructor","params","_defineProperty2","default","undefined","EventEmitter","container","sequences","rootLevelDescriptor","levels","query","root","NestedCollectionNodeState","nestedCollection","parentNode","parent","levelDescriptor","nodeCollection","parentFilter","setValue","persistent","makeObservable","total","observable","ref","init","disposeListeners","events","listeners","removeAllListeners","forEach","d","exports"],"sources":["../../../../src/state/NestedTableState/NestedCollectionState.ts"],"sourcesContent":["import {\n WixPatternsContainer,\n QueryState,\n CollectionOptimisticSequenceExecutor,\n} from '@wix/bex-core';\nimport { makeObservable, observable } from 'mobx';\nimport { NestedCollectionNodeState } from './NestedCollectionNodeState';\nimport { NestedCollectionLevelDescriptor } from './NestedCollectionLevelDescriptor';\nimport { NodeCollection } from './types';\nimport { EventEmitter } from 'events';\nimport { TypedEmitter } from '@wix/bex-core/events';\n\nexport interface NestedCollectionStateBaseParams {\n levels: NestedCollectionLevelDescriptor<any, any>[];\n query: QueryState<{}>;\n nodeCollection?: NodeCollection<any, any>;\n}\n\nexport interface NestedCollectionStateParams\n extends NestedCollectionStateBaseParams {\n readonly container: WixPatternsContainer;\n readonly sequences: Map<string, CollectionOptimisticSequenceExecutor>;\n}\n\nexport class NestedCollectionState {\n readonly container;\n\n readonly levels;\n\n isFetchAllAborted = null as null | boolean;\n\n _fetchAllTotal = undefined as undefined | number;\n\n expandAll = true;\n total = 0;\n\n readonly root: NestedCollectionNodeState<any, any>;\n readonly query;\n readonly sequences;\n\n readonly events = new EventEmitter() as TypedEmitter<{\n dispose: (() => void) | undefined;\n }>;\n\n constructor(params: NestedCollectionStateParams) {\n const { container } = params;\n this.container = container;\n this.sequences = params.sequences;\n\n const rootLevelDescriptor = params.levels[0];\n\n this.levels = params.levels;\n this.query = params.query;\n\n this.root = new NestedCollectionNodeState({\n nestedCollection: this,\n parentNode: null,\n parent: null,\n levelDescriptor: rootLevelDescriptor,\n nodeCollection: params.nodeCollection,\n });\n\n const parentFilter = this.root.parentFilter;\n if (parentFilter != null) {\n parentFilter.setValue(['null']);\n parentFilter.persistent = true;\n }\n\n makeObservable(this, {\n total: observable.ref,\n });\n }\n\n init() {\n return () => {\n const disposeListeners = this.events.listeners('dispose');\n this.events.removeAllListeners('dispose');\n return disposeListeners.forEach((d) => d?.());\n };\n }\n}\n"],"mappings":";;;;;;AAKA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,0BAAA,GAAAD,OAAA;AAGA,IAAAE,OAAA,GAAAF,OAAA;AAeO,MAAMG,qBAAqB,CAAC;EAoBjCC,WAAWA,CAACC,MAAmC,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA,6BAf7B,IAAI;IAAA,IAAAD,gBAAA,CAAAC,OAAA,0BAEPC,SAAS;IAAA,IAAAF,gBAAA,CAAAC,OAAA,qBAEd,IAAI;IAAA,IAAAD,gBAAA,CAAAC,OAAA,iBACR,CAAC;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA,kBAMS,IAAIE,oBAAY,CAAC,CAAC;IAKlC,MAAM;MAAEC;IAAU,CAAC,GAAGL,MAAM;IAC5B,IAAI,CAACK,SAAS,GAAGA,SAAS;IAC1B,IAAI,CAACC,SAAS,GAAGN,MAAM,CAACM,SAAS;IAEjC,MAAMC,mBAAmB,GAAGP,MAAM,CAACQ,MAAM,CAAC,CAAC,CAAC;IAE5C,IAAI,CAACA,MAAM,GAAGR,MAAM,CAACQ,MAAM;IAC3B,IAAI,CAACC,KAAK,GAAGT,MAAM,CAACS,KAAK;IAEzB,IAAI,CAACC,IAAI,GAAG,IAAIC,oDAAyB,CAAC;MACxCC,gBAAgB,EAAE,IAAI;MACtBC,UAAU,EAAE,IAAI;MAChBC,MAAM,EAAE,IAAI;MACZC,eAAe,EAAER,mBAAmB;MACpCS,cAAc,EAAEhB,MAAM,CAACgB;IACzB,CAAC,CAAC;IAEF,MAAMC,YAAY,GAAG,IAAI,CAACP,IAAI,CAACO,YAAY;IAC3C,IAAIA,YAAY,IAAI,IAAI,EAAE;MACxBA,YAAY,CAACC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC;MAC/BD,YAAY,CAACE,UAAU,GAAG,IAAI;IAChC;IAEA,IAAAC,oBAAc,EAAC,IAAI,EAAE;MACnBC,KAAK,EAAEC,gBAAU,CAACC;IACpB,CAAC,CAAC;EACJ;EAEAC,IAAIA,CAAA,EAAG;IACL,OAAO,MAAM;MACX,MAAMC,gBAAgB,GAAG,IAAI,CAACC,MAAM,CAACC,SAAS,CAAC,SAAS,CAAC;MACzD,IAAI,CAACD,MAAM,CAACE,kBAAkB,CAAC,SAAS,CAAC;MACzC,OAAOH,gBAAgB,CAACI,OAAO,CAAEC,CAAC,IAAKA,CAAC,oBAADA,CAAC,CAAG,CAAC,CAAC;IAC/C,CAAC;EACH;AACF;AAACC,OAAA,CAAAjC,qBAAA,GAAAA,qBAAA","ignoreList":[]}
|
|
@@ -28,7 +28,7 @@ class NestedTableState {
|
|
|
28
28
|
(0, _defineProperty2.default)(this, "sequences", new Map());
|
|
29
29
|
this.container = params.container;
|
|
30
30
|
this.query = new _bexCore.QueryState({
|
|
31
|
-
filters: {}
|
|
31
|
+
filters: params.filters || {}
|
|
32
32
|
});
|
|
33
33
|
this.levels = params.levels.map((level, i) => ({
|
|
34
34
|
...level,
|
|
@@ -156,7 +156,14 @@ class NestedTableState {
|
|
|
156
156
|
});
|
|
157
157
|
}
|
|
158
158
|
get isFlatMode() {
|
|
159
|
-
return this.query.
|
|
159
|
+
return !!this.query.search.value;
|
|
160
|
+
}
|
|
161
|
+
_addFilterListeners() {
|
|
162
|
+
return Object.values(this.query.filtersEntries).map(([_, filter]) => {
|
|
163
|
+
return (0, _bexCore.addEventListener)(filter.events, 'refresh', () => {
|
|
164
|
+
this.refreshAll();
|
|
165
|
+
});
|
|
166
|
+
});
|
|
160
167
|
}
|
|
161
168
|
init() {
|
|
162
169
|
const {
|
|
@@ -164,7 +171,9 @@ class NestedTableState {
|
|
|
164
171
|
tableState,
|
|
165
172
|
query
|
|
166
173
|
} = this;
|
|
167
|
-
const disposers = [query.init(
|
|
174
|
+
const disposers = [query.init({
|
|
175
|
+
skipFilterListeners: true
|
|
176
|
+
}), ...this._addFilterListeners(), (0, _mobx.reaction)(() => this.isFlatMode, isFlatMode => {
|
|
168
177
|
const {
|
|
169
178
|
query: {
|
|
170
179
|
_fields
|
|
@@ -178,7 +187,8 @@ class NestedTableState {
|
|
|
178
187
|
}, {
|
|
179
188
|
fireImmediately: true
|
|
180
189
|
}), tableState.init({
|
|
181
|
-
featuresInitializers: []
|
|
190
|
+
featuresInitializers: [],
|
|
191
|
+
skipFilterListeners: true
|
|
182
192
|
})];
|
|
183
193
|
initTask.runOnce(async () => {
|
|
184
194
|
tableState.initTask.runOnce();
|