@wix/patterns 1.271.0 → 1.273.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/components/CardContainer/CardContainer.st.css.js +2 -2
- package/dist/cjs/components/CardContainer/CardContainer.st.css.js.map +1 -1
- package/dist/cjs/components/Collapse/Collapse.st.css.js +3 -3
- package/dist/cjs/components/Collapse/Collapse.st.css.js.map +1 -1
- package/dist/cjs/components/CollectionPageNew/CollectionPage.st.css.js +2 -2
- package/dist/cjs/components/CollectionPageNew/CollectionPage.st.css.js.map +1 -1
- package/dist/cjs/components/CollectionTable/CollectionTable.st.css +4 -0
- package/dist/cjs/components/CollectionTable/CollectionTable.st.css.js +2 -2
- package/dist/cjs/components/CollectionTable/CollectionTable.st.css.js.map +1 -1
- package/dist/cjs/components/CollectionToolbar/CollectionToolbar.st.css.js +5 -5
- package/dist/cjs/components/CollectionToolbar/CollectionToolbar.st.css.js.map +1 -1
- package/dist/cjs/components/CollectionToolbar/SearchOrCustomFilter.st.css.js +4 -4
- package/dist/cjs/components/CollectionToolbar/SearchOrCustomFilter.st.css.js.map +1 -1
- package/dist/cjs/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js +2 -2
- package/dist/cjs/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js.map +1 -1
- package/dist/cjs/components/CollectionViewsDropdown/CollectionViewsDropdownBase.js +4 -1
- package/dist/cjs/components/CollectionViewsDropdown/CollectionViewsDropdownBase.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/DragHandle/DragHandle.st.css.js +2 -2
- package/dist/cjs/components/DragHandle/DragHandle.st.css.js.map +1 -1
- package/dist/cjs/components/EntityPage/EntityPagePlain.st.css.js +2 -2
- package/dist/cjs/components/EntityPage/EntityPagePlain.st.css.js.map +1 -1
- package/dist/cjs/components/Fade/Fade.st.css.js +2 -2
- package/dist/cjs/components/Fade/Fade.st.css.js.map +1 -1
- package/dist/cjs/components/Grid/Grid.uni.driver.js +26 -20
- package/dist/cjs/components/Grid/Grid.uni.driver.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/NestedTableMainColumnTitle.js +9 -8
- package/dist/cjs/components/NestedTable/NestedTableMainColumnTitle.js.map +1 -1
- package/dist/cjs/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.js +2 -2
- package/dist/cjs/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.js.map +1 -1
- package/dist/cjs/components/NestedTable/NestedTableRow.st.css.js +5 -5
- package/dist/cjs/components/NestedTable/NestedTableRow.st.css.js.map +1 -1
- package/dist/cjs/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js +2 -2
- package/dist/cjs/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js.map +1 -1
- package/dist/cjs/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js +2 -2
- package/dist/cjs/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js.map +1 -1
- package/dist/cjs/components/PickerContent/PickerContent.st.css.js +2 -2
- package/dist/cjs/components/PickerContent/PickerContent.st.css.js.map +1 -1
- package/dist/cjs/components/PickerContent/PickerContentAdditionalStep.st.css.js +4 -4
- package/dist/cjs/components/PickerContent/PickerContentAdditionalStep.st.css.js.map +1 -1
- package/dist/cjs/components/PickerTableListItem/PickerTableListItem.st.css.js +2 -2
- package/dist/cjs/components/PickerTableListItem/PickerTableListItem.st.css.js.map +1 -1
- package/dist/cjs/components/ScrollableContent/ScrollableContent.st.css.js +2 -2
- package/dist/cjs/components/ScrollableContent/ScrollableContent.st.css.js.map +1 -1
- package/dist/cjs/components/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/TabsFilter/TabsFilter.st.css.js +3 -3
- package/dist/cjs/components/TabsFilter/TabsFilter.st.css.js.map +1 -1
- package/dist/cjs/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js +2 -2
- package/dist/cjs/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js.map +1 -1
- package/dist/cjs/components/ToolbarItem/ToolbarItem.st.css.js +2 -2
- package/dist/cjs/components/ToolbarItem/ToolbarItem.st.css.js.map +1 -1
- package/dist/cjs/components/ToolbarItemBox/ToolbarItemBox.st.css.js +2 -2
- package/dist/cjs/components/ToolbarItemBox/ToolbarItemBox.st.css.js.map +1 -1
- package/dist/cjs/components/common.st.css.js +4 -4
- package/dist/cjs/components/common.st.css.js.map +1 -1
- package/dist/cjs/index.js +6 -2
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/state/CollectionPage/CollectionPageHeader.st.css.js +2 -2
- package/dist/cjs/state/CollectionPage/CollectionPageHeader.st.css.js.map +1 -1
- package/dist/cjs/state/CollectionViewsState.js +1 -1
- package/dist/cjs/state/CollectionViewsState.js.map +1 -1
- package/dist/cjs/state/CustomColumnsState.js +1 -1
- package/dist/cjs/state/CustomColumnsState.js.map +1 -1
- package/dist/cjs/state/FormPage/FormPageHeader.st.css.js +2 -2
- package/dist/cjs/state/FormPage/FormPageHeader.st.css.js.map +1 -1
- package/dist/cjs/state/NestedTableState/NestedTableFlatModeState.js +1 -1
- package/dist/cjs/state/NestedTableState/NestedTableFlatModeState.js.map +1 -1
- package/dist/cjs/state/NestedTableState/NestedTableNestedModeState.js +7 -1
- package/dist/cjs/state/NestedTableState/NestedTableNestedModeState.js.map +1 -1
- package/dist/cjs/state/NestedTableState/NestedTableNodeState.js +17 -1
- package/dist/cjs/state/NestedTableState/NestedTableNodeState.js.map +1 -1
- package/dist/cjs/state/setViewsState.js +7 -1
- package/dist/cjs/state/setViewsState.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/CardContainer/CardContainer.st.css.js +2 -2
- package/dist/esm/components/CardContainer/CardContainer.st.css.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/CollectionPageNew/CollectionPage.st.css.js +2 -2
- package/dist/esm/components/CollectionPageNew/CollectionPage.st.css.js.map +1 -1
- package/dist/esm/components/CollectionTable/CollectionTable.st.css +4 -0
- package/dist/esm/components/CollectionTable/CollectionTable.st.css.js +2 -2
- package/dist/esm/components/CollectionToolbar/CollectionToolbar.st.css.js +2 -2
- package/dist/esm/components/CollectionToolbar/SearchOrCustomFilter.st.css.js +2 -2
- package/dist/esm/components/CollectionToolbar/SearchOrCustomFilter.st.css.js.map +1 -1
- package/dist/esm/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js +2 -2
- package/dist/esm/components/CollectionViewsDropdown/CollectionViewsDropdownBase.js +3 -0
- package/dist/esm/components/CollectionViewsDropdown/CollectionViewsDropdownBase.js.map +1 -1
- package/dist/esm/components/CollectionViewsDropdown/ViewsDropdown.st.css.js +2 -2
- package/dist/esm/components/CollectionViewsDropdown/ViewsDropdown.st.css.js.map +1 -1
- package/dist/esm/components/DragHandle/DragHandle.st.css.js +2 -2
- package/dist/esm/components/EntityPage/EntityPagePlain.st.css.js +2 -2
- package/dist/esm/components/Fade/Fade.st.css.js +2 -2
- package/dist/esm/components/Fade/Fade.st.css.js.map +1 -1
- package/dist/esm/components/Grid/Grid.uni.driver.js +10 -4
- package/dist/esm/components/Grid/Grid.uni.driver.js.map +1 -1
- 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/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/NestedTableMainColumnTitle.js +2 -1
- package/dist/esm/components/NestedTable/NestedTableMainColumnTitle.js.map +1 -1
- package/dist/esm/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.js +2 -2
- package/dist/esm/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.js.map +1 -1
- package/dist/esm/components/NestedTable/NestedTableRow.st.css.js +2 -2
- package/dist/esm/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js +2 -2
- package/dist/esm/components/NestedTableDragAndDrop/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/SlidingModal/SlidingModal.st.css.js +2 -2
- package/dist/esm/components/TabsFilter/TabsFilter.st.css.js +2 -2
- package/dist/esm/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js +2 -2
- package/dist/esm/components/ToolbarItem/ToolbarItem.st.css.js +2 -2
- package/dist/esm/components/ToolbarItem/ToolbarItem.st.css.js.map +1 -1
- package/dist/esm/components/ToolbarItemBox/ToolbarItemBox.st.css.js +2 -2
- package/dist/esm/components/common.st.css.js +2 -2
- package/dist/esm/components/common.st.css.js.map +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/state/CollectionPage/CollectionPageHeader.st.css.js +2 -2
- package/dist/esm/state/CollectionPage/CollectionPageHeader.st.css.js.map +1 -1
- package/dist/esm/state/CollectionViewsState.js +1 -1
- package/dist/esm/state/CollectionViewsState.js.map +1 -1
- package/dist/esm/state/CustomColumnsState.js +1 -1
- package/dist/esm/state/CustomColumnsState.js.map +1 -1
- package/dist/esm/state/FormPage/FormPageHeader.st.css.js +2 -2
- package/dist/esm/state/NestedTableState/NestedTableFlatModeState.js +1 -1
- package/dist/esm/state/NestedTableState/NestedTableFlatModeState.js.map +1 -1
- package/dist/esm/state/NestedTableState/NestedTableNestedModeState.js +9 -3
- package/dist/esm/state/NestedTableState/NestedTableNestedModeState.js.map +1 -1
- package/dist/esm/state/NestedTableState/NestedTableNodeState.js +10 -0
- package/dist/esm/state/NestedTableState/NestedTableNodeState.js.map +1 -1
- package/dist/esm/state/setViewsState.js +5 -1
- package/dist/esm/state/setViewsState.js.map +1 -1
- package/dist/esm/styles.global.css +1 -1
- package/dist/esm/version.js +1 -1
- package/dist/types/components/CardContainer/CardContainer.st.css.d.ts.map +1 -1
- package/dist/types/components/Collapse/Collapse.st.css.d.ts.map +1 -1
- package/dist/types/components/CollectionPageNew/CollectionPage.st.css.d.ts.map +1 -1
- package/dist/types/components/CollectionToolbar/SearchOrCustomFilter.st.css.d.ts.map +1 -1
- package/dist/types/components/CollectionViewsDropdown/CollectionViewsDropdownBase.d.ts +1 -1
- package/dist/types/components/CollectionViewsDropdown/CollectionViewsDropdownBase.d.ts.map +1 -1
- package/dist/types/components/CollectionViewsDropdown/ViewsDropdown.st.css.d.ts.map +1 -1
- package/dist/types/components/Fade/Fade.st.css.d.ts.map +1 -1
- package/dist/types/components/Grid/Grid.uni.driver.d.ts +4 -3
- package/dist/types/components/Grid/Grid.uni.driver.d.ts.map +1 -1
- package/dist/types/components/NestedTable/NestedTableMainColumnTitle.d.ts.map +1 -1
- package/dist/types/components/NestedTable/NestedTablePlaceholderStatesRow.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/ToolbarItem/ToolbarItem.st.css.d.ts.map +1 -1
- package/dist/types/components/common.st.css.d.ts.map +1 -1
- package/dist/types/index.d.ts +1 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/state/CollectionPage/CollectionPageHeader.st.css.d.ts.map +1 -1
- package/dist/types/state/NestedTableState/NestedTableNestedModeState.d.ts +1 -0
- package/dist/types/state/NestedTableState/NestedTableNestedModeState.d.ts.map +1 -1
- package/dist/types/state/NestedTableState/NestedTableNodeState.d.ts +2 -0
- package/dist/types/state/NestedTableState/NestedTableNodeState.d.ts.map +1 -1
- package/dist/types/state/setViewsState.d.ts +1 -1
- package/dist/types/state/setViewsState.d.ts.map +1 -1
- package/dist/types/version.d.ts +1 -1
- package/package.json +3 -3
- package/src/components/CardContainer/CardContainer.st.css.ts +2 -2
- package/src/components/Collapse/Collapse.st.css.ts +2 -2
- package/src/components/CollectionPageNew/CollectionPage.st.css.ts +2 -2
- package/src/components/CollectionTable/CollectionTable.st.css +4 -0
- package/src/components/CollectionTable/CollectionTable.st.css.ts +2 -2
- package/src/components/CollectionToolbar/CollectionToolbar.st.css.ts +2 -2
- package/src/components/CollectionToolbar/SearchOrCustomFilter.st.css.ts +2 -2
- package/src/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.ts +2 -2
- package/src/components/CollectionViewsDropdown/CollectionViewsDropdownBase.tsx +4 -0
- package/src/components/CollectionViewsDropdown/ViewsDropdown.st.css.ts +2 -2
- package/src/components/DragHandle/DragHandle.st.css.ts +2 -2
- package/src/components/EntityPage/EntityPagePlain.st.css.ts +2 -2
- package/src/components/Fade/Fade.st.css.ts +2 -2
- package/src/components/Grid/Grid.uni.driver.ts +11 -6
- package/src/components/Heading/Heading.st.css.ts +2 -2
- package/src/components/InputOverflow/InputOverflow.st.css.ts +2 -2
- package/src/components/LoadingRow/LoadingRow.st.css.ts +3 -3
- package/src/components/MaxHeightText/MaxHeightText.st.css.ts +2 -2
- package/src/components/MaxLines/MaxLines.st.css.ts +2 -2
- package/src/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.ts +2 -2
- package/src/components/NestedTable/NestedTableMainColumnTitle.tsx +3 -1
- package/src/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.ts +2 -2
- package/src/components/NestedTable/NestedTableRow.st.css.ts +2 -2
- package/src/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.ts +2 -2
- package/src/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.ts +2 -2
- package/src/components/PickerContent/PickerContent.st.css.ts +2 -2
- package/src/components/PickerContent/PickerContentAdditionalStep.st.css.ts +2 -2
- package/src/components/PickerTableListItem/PickerTableListItem.st.css.ts +2 -2
- package/src/components/ScrollableContent/ScrollableContent.st.css.ts +2 -2
- package/src/components/SkeletonCard/SkeletonCard.st.css.ts +2 -2
- package/src/components/SlidingModal/SlidingModal.st.css.ts +2 -2
- package/src/components/TabsFilter/TabsFilter.st.css.ts +2 -2
- package/src/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.ts +2 -2
- package/src/components/ToolbarItem/ToolbarItem.st.css.ts +2 -2
- package/src/components/ToolbarItemBox/ToolbarItemBox.st.css.ts +2 -2
- package/src/components/common.st.css.ts +2 -2
- package/src/index.ts +2 -0
- package/src/state/CollectionPage/CollectionPageHeader.st.css.ts +2 -2
- package/src/state/CollectionViewsState.ts +1 -1
- package/src/state/CustomColumnsState.ts +1 -1
- package/src/state/FormPage/FormPageHeader.st.css.ts +2 -2
- package/src/state/NestedTableState/NestedTableFlatModeState.ts +1 -1
- package/src/state/NestedTableState/NestedTableNestedModeState.ts +11 -3
- package/src/state/NestedTableState/NestedTableNodeState.ts +15 -0
- package/src/state/setViewsState.ts +7 -1
- package/src/styles.global.css +1 -1
- package/src/version.ts +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_bexCore","require","_mobx","_CustomColumnsHistoryState","_indexOfCompareFn","_events","_bi","asStoredColumnsOrNull","customColumnsResult","Array","isArray","CustomColumnsState","constructor","params","_defineProperty2","default","Map","TaskState","SelectState","keyGetter","column","id","EventEmitter","action","select","onColumnClick","toggle","isChecked","value","searchValue","columnsCollection","refreshAllPages","table","container","CollectionState","events","queryName","environment","componentId","collection","filter","Boolean","join","fetchData","filteredColumns","items","hiddenFromCustomColumnsSelection","filters","itemKey","item","itemName","name","dragAndDrop","CustomColumnsDragAndDropState","customColumns","components","modalsContainerRef","customColumnsHistory","persistQueryToUrl","CustomColumnsHistoryState","history","makeObservable","observable","persistCustomColumns","bound","setSearchValue","toSelectedColumns","computed","orderedColumns","selectedOrderedColumns","init","columns","customColumnsState","selectedColumns","some","selectedColumn","isSelected","dataCapsule","viewsProps","_touched","setItem","registerSelectedColumnChange","on","off","mergeNewColumns","_toStoredColumn","_didFirstColumnsMerge","defaultHidden","length","mergeTargetSelectedColumns","s","every","c","map","existing","find","hideable","diffColumns","forEach","d","originalIndex","findIndex","afterId","afterIndex","splice","getStickyColumnsCount","stickyColumns","reorderDisabled","reorderDisabledColumns","orderedColumnsByReorderDisabled","selectionChanged","i","a","b","_this$dragAndDrop","_this$customColumnsHi","customColumnsStateInitialized","disposers","reaction","clear","forceSetMany","status","finalStatus","startStatus","fireImmediately","selectedValues","setValue","emitEvents","disposer","_getStoredCustomColumns","storedValue","getItem","e","Error","message","_tableInit","initTask","multi","collections","runOnce","beforeInitialFetchListeners","listeners","Promise","all","l","_fetchFromStorage","console","error","query","refreshOnColumnsChange","emitter","addListener","promise","_customColumnsState$c","_selectedColumnsFromUrl","storedCustomColumns","selectedColumnsFromStorage","tableColumn","sort","indexOfCompareFn","customizeColumnsInSidePanelBi","actionName","_performedCustomColumnsActions","get","set","reportBi","withoutDefaults","cairoCustomizeColumnsInSidePanel","trim","searchLower","toLowerCase","title","includes","exports"],"sources":["../../../src/state/CustomColumnsState.ts"],"sourcesContent":["import {\n CollectionState,\n FiltersMap,\n SelectState,\n TaskState,\n TypedEmitter,\n withoutDefaults,\n WixPatternsContainer,\n} from '@wix/bex-core';\nimport { action, computed, makeObservable, reaction, observable } from 'mobx';\nimport { ToolbarCollectionState } from './ToolbarCollectionState';\nimport { Column } from '../model';\nimport type { CustomColumnsDragAndDrop } from '../components/CustomColumns/CustomColumnsDragAndDrop';\nimport { CustomColumnsHistoryState } from './CustomColumnsHistoryState';\nimport { indexOfCompareFn } from './indexOfCompareFn';\nimport { EventEmitter } from 'events';\nimport { cairoCustomizeColumnsInSidePanel } from '@wix/bex-core/bi';\n\ntype StoredColumn =\n | { id?: string; name?: string; isSelected?: boolean }\n | null\n | undefined;\n\nconst asStoredColumnsOrNull = (customColumnsResult: unknown) =>\n Array.isArray(customColumnsResult)\n ? (customColumnsResult as StoredColumn[])\n : null;\n\nexport interface CustomColumnsStateParams<T, F extends FiltersMap> {\n readonly table: ToolbarCollectionState<T, F>;\n readonly container: WixPatternsContainer;\n readonly dragAndDrop?: typeof CustomColumnsDragAndDrop;\n readonly modalsContainerRef: {\n current: HTMLElement | null | undefined;\n };\n}\n\nexport type CustomColumnsActionName = 'visibility' | 'reorder';\n\nexport class CustomColumnsState<T, F extends FiltersMap> {\n readonly table;\n readonly container;\n\n readonly columnsCollection;\n\n readonly dragAndDrop;\n\n readonly customColumnsHistory;\n\n onColumnClick?: (column: Column, checked: boolean) => unknown;\n\n _didFirstColumnsMerge?: boolean;\n _performedCustomColumnsActions: Map<CustomColumnsActionName, boolean> =\n new Map();\n\n readonly initTask = new TaskState();\n\n _touched = false;\n\n searchValue = '';\n\n readonly select = new SelectState<{ id: string }>({\n keyGetter: (column) => column.id,\n });\n\n readonly events = new EventEmitter() as TypedEmitter<{\n beforeInitialFetch: () => void;\n }>;\n\n constructor(params: CustomColumnsStateParams<T, F>) {\n this.table = params.table;\n this.container = params.container;\n\n this.columnsCollection = new CollectionState({\n ...this.container,\n events: {},\n queryName: [\n this.container.environment.componentId,\n this.table.collection.queryName,\n 'customColumns',\n ]\n .filter(Boolean)\n .join('/'),\n fetchData: async () => {\n const { filteredColumns } = this;\n\n const items = filteredColumns.filter(\n (column) => column.hiddenFromCustomColumnsSelection !== true,\n );\n\n return {\n items,\n };\n },\n filters: {},\n itemKey: (item) => item.id,\n itemName: (item) => item.name,\n });\n\n if (params.dragAndDrop) {\n const { CustomColumnsDragAndDropState } = params.dragAndDrop;\n this.dragAndDrop = new CustomColumnsDragAndDropState({\n customColumns: this,\n components: params.dragAndDrop,\n modalsContainerRef: params.modalsContainerRef,\n });\n }\n\n this.customColumnsHistory = this.table.collection.persistQueryToUrl\n ? new CustomColumnsHistoryState({\n customColumns: this,\n history: params.container.history,\n })\n : null;\n\n makeObservable(this, {\n searchValue: observable,\n persistCustomColumns: action.bound,\n setSearchValue: action.bound,\n toSelectedColumns: computed,\n orderedColumns: computed,\n selectedOrderedColumns: computed,\n filteredColumns: computed,\n init: action,\n });\n }\n\n get orderedColumns(): Column[] {\n const { dragAndDrop, table } = this;\n const { columns, customColumnsState } = table;\n\n if (customColumnsState?.dragAndDrop && dragAndDrop) {\n return dragAndDrop.orderedColumns;\n }\n\n return columns;\n }\n\n get selectedOrderedColumns() {\n const {\n orderedColumns,\n table: {\n selectedColumns: { value: selectedColumns },\n },\n } = this;\n\n return orderedColumns.filter((column) =>\n selectedColumns.some(\n (selectedColumn) =>\n selectedColumn.id === column.id && selectedColumn.isSelected,\n ),\n );\n }\n\n async persistCustomColumns() {\n const { table } = this;\n const { dataCapsule, viewsProps } = table;\n\n // if views enabled columns persists inside the view instead of data capsule\n if (viewsProps) {\n return;\n }\n\n this._touched = true;\n await dataCapsule.setItem('custom-columns', table.selectedColumns.value);\n }\n\n private registerSelectedColumnChange() {\n const { table } = this;\n table.selectedColumns.events.on('refresh', this.persistCustomColumns);\n\n return () => {\n table.selectedColumns.events.off('refresh', this.persistCustomColumns);\n };\n }\n\n mergeNewColumns() {\n const {\n table: { columns, selectedColumns, _toStoredColumn, customColumnsState },\n _didFirstColumnsMerge,\n } = this;\n\n const defaultHidden =\n !_didFirstColumnsMerge && !!selectedColumns.value.length;\n\n const mergeTargetSelectedColumns = [...selectedColumns.value];\n\n if (customColumnsState?.dragAndDrop == null) {\n return [\n ...mergeTargetSelectedColumns.filter((s) =>\n columns.every((c) => s.id !== c.id),\n ),\n ...columns.map((c) => {\n const existing = selectedColumns.value.find((s) => s.id === c.id);\n if (existing == null) {\n return _toStoredColumn(c);\n }\n\n return {\n ...existing,\n isSelected:\n c.hideable === false ||\n c.hiddenFromCustomColumnsSelection ||\n existing.isSelected,\n };\n }),\n ];\n }\n\n const diffColumns = columns\n .filter((c) => selectedColumns.value.every((s) => s.id !== c.id))\n .map((c) =>\n _toStoredColumn({\n ...c,\n defaultHidden: defaultHidden || c.defaultHidden,\n }),\n );\n\n // place new columns according to their order in the original columns prop\n diffColumns.forEach((d) => {\n const originalIndex = columns.findIndex((c) => c.id === d.id);\n const afterId = originalIndex > 0 ? columns[originalIndex - 1].id : null;\n const afterIndex =\n afterId != null\n ? mergeTargetSelectedColumns.findIndex((c) => c.id === afterId) + 1\n : originalIndex === 0\n ? 0\n : mergeTargetSelectedColumns.length;\n mergeTargetSelectedColumns.splice(afterIndex, 0, d);\n });\n\n this._didFirstColumnsMerge = true;\n return mergeTargetSelectedColumns;\n }\n\n onColumnCheckboxToggle = action((column: Column) => {\n const { select, onColumnClick } = this;\n select.toggle(column);\n onColumnClick?.(column, select.isChecked(column.id));\n });\n\n getStickyColumnsCount({ stickyColumns }: { stickyColumns: number }) {\n const {\n dragAndDrop,\n table: {\n selectedColumns: { value: selectedColumns },\n },\n } = this;\n\n if (dragAndDrop == null) {\n return stickyColumns;\n }\n\n const { reorderDisabled: reorderDisabledColumns } =\n dragAndDrop.orderedColumnsByReorderDisabled;\n\n if (!reorderDisabledColumns.length) {\n return stickyColumns;\n }\n\n return dragAndDrop.orderedColumnsByReorderDisabled.reorderDisabled.filter(\n (column) =>\n selectedColumns.some(\n (selectedColumn) =>\n selectedColumn.id === column.id && selectedColumn.isSelected,\n ),\n ).length;\n }\n\n get toSelectedColumns() {\n const {\n select,\n table: {\n selectedColumns: { value },\n },\n } = this;\n\n return value.map(({ id }) => ({\n id,\n isSelected: select.isChecked(id),\n }));\n }\n\n get selectionChanged() {\n const {\n toSelectedColumns,\n table: {\n selectedColumns: { value },\n },\n } = this;\n\n if (value.length !== toSelectedColumns.length) {\n return true;\n }\n\n for (let i = 0; i < value.length; i++) {\n const a = value[i];\n const b = toSelectedColumns[i];\n\n if (a.id !== b.id || a.isSelected !== b.isSelected) {\n return true;\n }\n }\n\n return false;\n }\n\n init() {\n const { table } = this;\n table.customColumnsStateInitialized = true;\n\n const disposers = [\n reaction(\n () => this.table.selectedColumns.value,\n async (selectedColumns) => {\n const { select, columnsCollection } = this;\n\n select.clear();\n select.forceSetMany(\n selectedColumns.map(({ id, isSelected }) => ({\n value: { id },\n status: isSelected ? select.finalStatus : select.startStatus,\n })),\n );\n await columnsCollection.refreshAllPages();\n },\n {\n fireImmediately: true,\n },\n ),\n reaction(\n () => this.select.selectedValues,\n () => {\n const {\n table: { selectedColumns },\n } = this;\n\n if (!this.selectionChanged) {\n return;\n }\n\n selectedColumns.setValue(this.toSelectedColumns, {\n emitEvents: ['change', 'beforeRefresh', 'refresh'],\n });\n },\n ),\n\n this.registerSelectedColumnChange(),\n this.columnsCollection.init(),\n this.dragAndDrop?.init(),\n this.customColumnsHistory?.init(),\n ];\n\n return () => {\n disposers.forEach((disposer) => disposer?.());\n };\n }\n\n async _getStoredCustomColumns() {\n const { dataCapsule } = this.table;\n try {\n const storedValue = await asStoredColumnsOrNull(\n await dataCapsule.getItem('custom-columns'),\n );\n this._touched = storedValue != null;\n return storedValue;\n } catch (e) {\n if (e instanceof Error && e.message === 'Key was not found in capsule') {\n return null;\n }\n\n throw e;\n }\n }\n\n _tableInit() {\n const {\n initTask,\n table: {\n multi: { collections },\n },\n } = this;\n initTask.runOnce(async () => {\n try {\n const beforeInitialFetchListeners =\n this.events.listeners('beforeInitialFetch');\n await Promise.all(beforeInitialFetchListeners.map((l) => l()));\n await this._fetchFromStorage();\n } catch (e) {\n console.error(e);\n }\n });\n\n collections.forEach((collection) => {\n if (collection.query.refreshOnColumnsChange) {\n collection.emitter.addListener(\n 'beforeInitialFetch',\n () => initTask.status.promise,\n );\n }\n });\n }\n\n async _fetchFromStorage() {\n const {\n table: {\n viewsProps,\n columns,\n selectedColumns,\n customColumnsState,\n _toStoredColumn,\n },\n } = this;\n\n if (viewsProps) {\n return;\n }\n\n if (customColumnsState?.customColumnsHistory?._selectedColumnsFromUrl) {\n return;\n }\n\n const storedCustomColumns = await this._getStoredCustomColumns();\n\n if (storedCustomColumns == null) {\n return;\n }\n\n const selectedColumnsFromStorage = columns.map((tableColumn) => {\n const existing = storedCustomColumns.find(\n (c) => c?.id === tableColumn.id,\n );\n\n // If the column is not found in the stored columns, it means it was added after the last visit, so its \"isSelected\" state should be calculated based on the column prop passed via code\n if (existing == null) {\n return _toStoredColumn(tableColumn);\n }\n\n // If the column is found in the stored columns, it means it was already configured by the user, so its \"isSelected\" state should be taken from the stored columns\n const { id, name, hideable, hiddenFromCustomColumnsSelection } =\n tableColumn;\n\n return {\n id,\n name,\n isSelected:\n storedCustomColumns.some(\n (c) => c?.id === id && c?.isSelected !== false,\n ) ||\n !hideable ||\n hiddenFromCustomColumnsSelection === true,\n };\n });\n\n selectedColumns.setValue(\n customColumnsState?.dragAndDrop\n ? selectedColumnsFromStorage.sort(\n indexOfCompareFn(storedCustomColumns, (e) => e?.id),\n )\n : selectedColumnsFromStorage,\n );\n }\n\n customizeColumnsInSidePanelBi({\n actionName,\n }: {\n actionName: CustomColumnsActionName;\n }) {\n if (this._performedCustomColumnsActions.get(actionName)) {\n return;\n }\n this._performedCustomColumnsActions.set(actionName, true);\n this.table.reportBi(\n withoutDefaults(cairoCustomizeColumnsInSidePanel)({\n actionName,\n }),\n );\n }\n\n get filteredColumns(): Column[] {\n const { orderedColumns, searchValue } = this;\n\n if (!searchValue.trim()) {\n return orderedColumns;\n }\n\n const searchLower = searchValue.toLowerCase();\n return orderedColumns.filter((column) => {\n const name =\n column.name ||\n (typeof column.title === 'string' ? column.title : column.id);\n return name.toLowerCase().includes(searchLower);\n });\n }\n\n setSearchValue = action((value: string) => {\n this.searchValue = value;\n this.columnsCollection.refreshAllPages();\n });\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_bexCore","require","_mobx","_CustomColumnsHistoryState","_indexOfCompareFn","_events","_bi","asStoredColumnsOrNull","customColumnsResult","Array","isArray","CustomColumnsState","constructor","params","_defineProperty2","default","Map","TaskState","SelectState","keyGetter","column","id","EventEmitter","action","select","onColumnClick","toggle","isChecked","value","searchValue","columnsCollection","refreshAllPages","table","container","CollectionState","events","queryName","environment","componentId","collection","filter","Boolean","join","fetchData","filteredColumns","items","hiddenFromCustomColumnsSelection","filters","itemKey","item","itemName","name","dragAndDrop","CustomColumnsDragAndDropState","customColumns","components","modalsContainerRef","customColumnsHistory","persistQueryToUrl","CustomColumnsHistoryState","history","makeObservable","observable","persistCustomColumns","bound","setSearchValue","toSelectedColumns","computed","orderedColumns","selectedOrderedColumns","init","columns","customColumnsState","selectedColumns","some","selectedColumn","isSelected","dataCapsule","viewsProps","_touched","setItem","registerSelectedColumnChange","on","off","mergeNewColumns","_toStoredColumn","_didFirstColumnsMerge","defaultHidden","length","mergeTargetSelectedColumns","s","every","c","map","existing","find","hideable","diffColumns","forEach","d","originalIndex","findIndex","afterId","afterIndex","splice","getStickyColumnsCount","stickyColumns","reorderDisabled","reorderDisabledColumns","orderedColumnsByReorderDisabled","selectionChanged","i","a","b","_this$dragAndDrop","_this$customColumnsHi","customColumnsStateInitialized","disposers","reaction","clear","forceSetMany","status","finalStatus","startStatus","fireImmediately","selectedValues","setValue","emitEvents","disposer","_getStoredCustomColumns","storedValue","getItem","e","Error","message","_tableInit","initTask","multi","collections","runOnce","beforeInitialFetchListeners","listeners","Promise","all","l","_fetchFromStorage","console","error","query","refreshOnColumnsChange","hooks","addListener","promise","_customColumnsState$c","_selectedColumnsFromUrl","storedCustomColumns","selectedColumnsFromStorage","tableColumn","sort","indexOfCompareFn","customizeColumnsInSidePanelBi","actionName","_performedCustomColumnsActions","get","set","reportBi","withoutDefaults","cairoCustomizeColumnsInSidePanel","trim","searchLower","toLowerCase","title","includes","exports"],"sources":["../../../src/state/CustomColumnsState.ts"],"sourcesContent":["import {\n CollectionState,\n FiltersMap,\n SelectState,\n TaskState,\n TypedEmitter,\n withoutDefaults,\n WixPatternsContainer,\n} from '@wix/bex-core';\nimport { action, computed, makeObservable, reaction, observable } from 'mobx';\nimport { ToolbarCollectionState } from './ToolbarCollectionState';\nimport { Column } from '../model';\nimport type { CustomColumnsDragAndDrop } from '../components/CustomColumns/CustomColumnsDragAndDrop';\nimport { CustomColumnsHistoryState } from './CustomColumnsHistoryState';\nimport { indexOfCompareFn } from './indexOfCompareFn';\nimport { EventEmitter } from 'events';\nimport { cairoCustomizeColumnsInSidePanel } from '@wix/bex-core/bi';\n\ntype StoredColumn =\n | { id?: string; name?: string; isSelected?: boolean }\n | null\n | undefined;\n\nconst asStoredColumnsOrNull = (customColumnsResult: unknown) =>\n Array.isArray(customColumnsResult)\n ? (customColumnsResult as StoredColumn[])\n : null;\n\nexport interface CustomColumnsStateParams<T, F extends FiltersMap> {\n readonly table: ToolbarCollectionState<T, F>;\n readonly container: WixPatternsContainer;\n readonly dragAndDrop?: typeof CustomColumnsDragAndDrop;\n readonly modalsContainerRef: {\n current: HTMLElement | null | undefined;\n };\n}\n\nexport type CustomColumnsActionName = 'visibility' | 'reorder';\n\nexport class CustomColumnsState<T, F extends FiltersMap> {\n readonly table;\n readonly container;\n\n readonly columnsCollection;\n\n readonly dragAndDrop;\n\n readonly customColumnsHistory;\n\n onColumnClick?: (column: Column, checked: boolean) => unknown;\n\n _didFirstColumnsMerge?: boolean;\n _performedCustomColumnsActions: Map<CustomColumnsActionName, boolean> =\n new Map();\n\n readonly initTask = new TaskState();\n\n _touched = false;\n\n searchValue = '';\n\n readonly select = new SelectState<{ id: string }>({\n keyGetter: (column) => column.id,\n });\n\n readonly events = new EventEmitter() as TypedEmitter<{\n beforeInitialFetch: () => void;\n }>;\n\n constructor(params: CustomColumnsStateParams<T, F>) {\n this.table = params.table;\n this.container = params.container;\n\n this.columnsCollection = new CollectionState({\n ...this.container,\n events: {},\n queryName: [\n this.container.environment.componentId,\n this.table.collection.queryName,\n 'customColumns',\n ]\n .filter(Boolean)\n .join('/'),\n fetchData: async () => {\n const { filteredColumns } = this;\n\n const items = filteredColumns.filter(\n (column) => column.hiddenFromCustomColumnsSelection !== true,\n );\n\n return {\n items,\n };\n },\n filters: {},\n itemKey: (item) => item.id,\n itemName: (item) => item.name,\n });\n\n if (params.dragAndDrop) {\n const { CustomColumnsDragAndDropState } = params.dragAndDrop;\n this.dragAndDrop = new CustomColumnsDragAndDropState({\n customColumns: this,\n components: params.dragAndDrop,\n modalsContainerRef: params.modalsContainerRef,\n });\n }\n\n this.customColumnsHistory = this.table.collection.persistQueryToUrl\n ? new CustomColumnsHistoryState({\n customColumns: this,\n history: params.container.history,\n })\n : null;\n\n makeObservable(this, {\n searchValue: observable,\n persistCustomColumns: action.bound,\n setSearchValue: action.bound,\n toSelectedColumns: computed,\n orderedColumns: computed,\n selectedOrderedColumns: computed,\n filteredColumns: computed,\n init: action,\n });\n }\n\n get orderedColumns(): Column[] {\n const { dragAndDrop, table } = this;\n const { columns, customColumnsState } = table;\n\n if (customColumnsState?.dragAndDrop && dragAndDrop) {\n return dragAndDrop.orderedColumns;\n }\n\n return columns;\n }\n\n get selectedOrderedColumns() {\n const {\n orderedColumns,\n table: {\n selectedColumns: { value: selectedColumns },\n },\n } = this;\n\n return orderedColumns.filter((column) =>\n selectedColumns.some(\n (selectedColumn) =>\n selectedColumn.id === column.id && selectedColumn.isSelected,\n ),\n );\n }\n\n async persistCustomColumns() {\n const { table } = this;\n const { dataCapsule, viewsProps } = table;\n\n // if views enabled columns persists inside the view instead of data capsule\n if (viewsProps) {\n return;\n }\n\n this._touched = true;\n await dataCapsule.setItem('custom-columns', table.selectedColumns.value);\n }\n\n private registerSelectedColumnChange() {\n const { table } = this;\n table.selectedColumns.events.on('refresh', this.persistCustomColumns);\n\n return () => {\n table.selectedColumns.events.off('refresh', this.persistCustomColumns);\n };\n }\n\n mergeNewColumns() {\n const {\n table: { columns, selectedColumns, _toStoredColumn, customColumnsState },\n _didFirstColumnsMerge,\n } = this;\n\n const defaultHidden =\n !_didFirstColumnsMerge && !!selectedColumns.value.length;\n\n const mergeTargetSelectedColumns = [...selectedColumns.value];\n\n if (customColumnsState?.dragAndDrop == null) {\n return [\n ...mergeTargetSelectedColumns.filter((s) =>\n columns.every((c) => s.id !== c.id),\n ),\n ...columns.map((c) => {\n const existing = selectedColumns.value.find((s) => s.id === c.id);\n if (existing == null) {\n return _toStoredColumn(c);\n }\n\n return {\n ...existing,\n isSelected:\n c.hideable === false ||\n c.hiddenFromCustomColumnsSelection ||\n existing.isSelected,\n };\n }),\n ];\n }\n\n const diffColumns = columns\n .filter((c) => selectedColumns.value.every((s) => s.id !== c.id))\n .map((c) =>\n _toStoredColumn({\n ...c,\n defaultHidden: defaultHidden || c.defaultHidden,\n }),\n );\n\n // place new columns according to their order in the original columns prop\n diffColumns.forEach((d) => {\n const originalIndex = columns.findIndex((c) => c.id === d.id);\n const afterId = originalIndex > 0 ? columns[originalIndex - 1].id : null;\n const afterIndex =\n afterId != null\n ? mergeTargetSelectedColumns.findIndex((c) => c.id === afterId) + 1\n : originalIndex === 0\n ? 0\n : mergeTargetSelectedColumns.length;\n mergeTargetSelectedColumns.splice(afterIndex, 0, d);\n });\n\n this._didFirstColumnsMerge = true;\n return mergeTargetSelectedColumns;\n }\n\n onColumnCheckboxToggle = action((column: Column) => {\n const { select, onColumnClick } = this;\n select.toggle(column);\n onColumnClick?.(column, select.isChecked(column.id));\n });\n\n getStickyColumnsCount({ stickyColumns }: { stickyColumns: number }) {\n const {\n dragAndDrop,\n table: {\n selectedColumns: { value: selectedColumns },\n },\n } = this;\n\n if (dragAndDrop == null) {\n return stickyColumns;\n }\n\n const { reorderDisabled: reorderDisabledColumns } =\n dragAndDrop.orderedColumnsByReorderDisabled;\n\n if (!reorderDisabledColumns.length) {\n return stickyColumns;\n }\n\n return dragAndDrop.orderedColumnsByReorderDisabled.reorderDisabled.filter(\n (column) =>\n selectedColumns.some(\n (selectedColumn) =>\n selectedColumn.id === column.id && selectedColumn.isSelected,\n ),\n ).length;\n }\n\n get toSelectedColumns() {\n const {\n select,\n table: {\n selectedColumns: { value },\n },\n } = this;\n\n return value.map(({ id }) => ({\n id,\n isSelected: select.isChecked(id),\n }));\n }\n\n get selectionChanged() {\n const {\n toSelectedColumns,\n table: {\n selectedColumns: { value },\n },\n } = this;\n\n if (value.length !== toSelectedColumns.length) {\n return true;\n }\n\n for (let i = 0; i < value.length; i++) {\n const a = value[i];\n const b = toSelectedColumns[i];\n\n if (a.id !== b.id || a.isSelected !== b.isSelected) {\n return true;\n }\n }\n\n return false;\n }\n\n init() {\n const { table } = this;\n table.customColumnsStateInitialized = true;\n\n const disposers = [\n reaction(\n () => this.table.selectedColumns.value,\n async (selectedColumns) => {\n const { select, columnsCollection } = this;\n\n select.clear();\n select.forceSetMany(\n selectedColumns.map(({ id, isSelected }) => ({\n value: { id },\n status: isSelected ? select.finalStatus : select.startStatus,\n })),\n );\n await columnsCollection.refreshAllPages();\n },\n {\n fireImmediately: true,\n },\n ),\n reaction(\n () => this.select.selectedValues,\n () => {\n const {\n table: { selectedColumns },\n } = this;\n\n if (!this.selectionChanged) {\n return;\n }\n\n selectedColumns.setValue(this.toSelectedColumns, {\n emitEvents: ['change', 'beforeRefresh', 'refresh'],\n });\n },\n ),\n\n this.registerSelectedColumnChange(),\n this.columnsCollection.init(),\n this.dragAndDrop?.init(),\n this.customColumnsHistory?.init(),\n ];\n\n return () => {\n disposers.forEach((disposer) => disposer?.());\n };\n }\n\n async _getStoredCustomColumns() {\n const { dataCapsule } = this.table;\n try {\n const storedValue = await asStoredColumnsOrNull(\n await dataCapsule.getItem('custom-columns'),\n );\n this._touched = storedValue != null;\n return storedValue;\n } catch (e) {\n if (e instanceof Error && e.message === 'Key was not found in capsule') {\n return null;\n }\n\n throw e;\n }\n }\n\n _tableInit() {\n const {\n initTask,\n table: {\n multi: { collections },\n },\n } = this;\n initTask.runOnce(async () => {\n try {\n const beforeInitialFetchListeners =\n this.events.listeners('beforeInitialFetch');\n await Promise.all(beforeInitialFetchListeners.map((l) => l()));\n await this._fetchFromStorage();\n } catch (e) {\n console.error(e);\n }\n });\n\n collections.forEach((collection) => {\n if (collection.query.refreshOnColumnsChange) {\n collection.hooks.addListener(\n 'beforeInitialFetch',\n () => initTask.status.promise,\n );\n }\n });\n }\n\n async _fetchFromStorage() {\n const {\n table: {\n viewsProps,\n columns,\n selectedColumns,\n customColumnsState,\n _toStoredColumn,\n },\n } = this;\n\n if (viewsProps) {\n return;\n }\n\n if (customColumnsState?.customColumnsHistory?._selectedColumnsFromUrl) {\n return;\n }\n\n const storedCustomColumns = await this._getStoredCustomColumns();\n\n if (storedCustomColumns == null) {\n return;\n }\n\n const selectedColumnsFromStorage = columns.map((tableColumn) => {\n const existing = storedCustomColumns.find(\n (c) => c?.id === tableColumn.id,\n );\n\n // If the column is not found in the stored columns, it means it was added after the last visit, so its \"isSelected\" state should be calculated based on the column prop passed via code\n if (existing == null) {\n return _toStoredColumn(tableColumn);\n }\n\n // If the column is found in the stored columns, it means it was already configured by the user, so its \"isSelected\" state should be taken from the stored columns\n const { id, name, hideable, hiddenFromCustomColumnsSelection } =\n tableColumn;\n\n return {\n id,\n name,\n isSelected:\n storedCustomColumns.some(\n (c) => c?.id === id && c?.isSelected !== false,\n ) ||\n !hideable ||\n hiddenFromCustomColumnsSelection === true,\n };\n });\n\n selectedColumns.setValue(\n customColumnsState?.dragAndDrop\n ? selectedColumnsFromStorage.sort(\n indexOfCompareFn(storedCustomColumns, (e) => e?.id),\n )\n : selectedColumnsFromStorage,\n );\n }\n\n customizeColumnsInSidePanelBi({\n actionName,\n }: {\n actionName: CustomColumnsActionName;\n }) {\n if (this._performedCustomColumnsActions.get(actionName)) {\n return;\n }\n this._performedCustomColumnsActions.set(actionName, true);\n this.table.reportBi(\n withoutDefaults(cairoCustomizeColumnsInSidePanel)({\n actionName,\n }),\n );\n }\n\n get filteredColumns(): Column[] {\n const { orderedColumns, searchValue } = this;\n\n if (!searchValue.trim()) {\n return orderedColumns;\n }\n\n const searchLower = searchValue.toLowerCase();\n return orderedColumns.filter((column) => {\n const name =\n column.name ||\n (typeof column.title === 'string' ? column.title : column.id);\n return name.toLowerCase().includes(searchLower);\n });\n }\n\n setSearchValue = action((value: string) => {\n this.searchValue = value;\n this.columnsCollection.refreshAllPages();\n });\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -5,14 +5,14 @@ exports.vars = exports.style = exports.stVars = exports.st = exports.namespace =
|
|
|
5
5
|
var _stylableEsmRuntime = require("../../stylable-esm-runtime.js");
|
|
6
6
|
// @ts-nocheck
|
|
7
7
|
|
|
8
|
-
var _namespace_ = "
|
|
8
|
+
var _namespace_ = "FormPageHeader3475574295";
|
|
9
9
|
var _style_ = _stylableEsmRuntime.classesRuntime.bind(null, _namespace_);
|
|
10
10
|
var cssStates = exports.cssStates = _stylableEsmRuntime.statesRuntime.bind(null, _namespace_);
|
|
11
11
|
var style = exports.style = _style_;
|
|
12
12
|
var st = exports.st = _style_;
|
|
13
13
|
var namespace = exports.namespace = _namespace_;
|
|
14
14
|
var classes = exports.classes = {
|
|
15
|
-
"root": "
|
|
15
|
+
"root": "FormPageHeader3475574295__root"
|
|
16
16
|
};
|
|
17
17
|
var keyframes = exports.keyframes = {};
|
|
18
18
|
var layers = exports.layers = {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_stylableEsmRuntime","require","_namespace_","_style_","classesRuntime","bind","cssStates","exports","statesRuntime","style","st","namespace","classes","keyframes","layers","containers","stVars","vars"],"sources":["../../../../src/state/FormPage/FormPageHeader.st.css.ts"],"sourcesContent":["// @ts-nocheck\n\n\nimport { classesRuntime, statesRuntime } from \"../../stylable-esm-runtime.js\";\n\n\n\nvar _namespace_ = \"
|
|
1
|
+
{"version":3,"names":["_stylableEsmRuntime","require","_namespace_","_style_","classesRuntime","bind","cssStates","exports","statesRuntime","style","st","namespace","classes","keyframes","layers","containers","stVars","vars"],"sources":["../../../../src/state/FormPage/FormPageHeader.st.css.ts"],"sourcesContent":["// @ts-nocheck\n\n\nimport { classesRuntime, statesRuntime } from \"../../stylable-esm-runtime.js\";\n\n\n\nvar _namespace_ = \"FormPageHeader3475574295\";\nvar _style_ = classesRuntime.bind(null, _namespace_);\n\nexport var cssStates = statesRuntime.bind(null, _namespace_);\nexport var style = _style_;\nexport var st: import(\"@stylable/runtime\").STFunction = _style_;\n\nexport var namespace = _namespace_;\nexport var classes = {\"root\":\"FormPageHeader3475574295__root\"};\nexport var keyframes = {}; \nexport var layers = {};\nexport var containers = {};\nexport var stVars = {}; \nexport var vars = {}; \n\n\n\n\n"],"mappings":";;;;AAGA,IAAAA,mBAAA,GAAAC,OAAA;AAHA;;AAOA,IAAIC,WAAW,GAAG,0BAA0B;AAC5C,IAAIC,OAAO,GAAGC,kCAAc,CAACC,IAAI,CAAC,IAAI,EAAEH,WAAW,CAAC;AAE7C,IAAII,SAAS,GAAAC,OAAA,CAAAD,SAAA,GAAGE,iCAAa,CAACH,IAAI,CAAC,IAAI,EAAEH,WAAW,CAAC;AACrD,IAAIO,KAAK,GAAAF,OAAA,CAAAE,KAAA,GAAGN,OAAO;AACnB,IAAIO,EAA0C,GAAAH,OAAA,CAAAG,EAAA,GAAGP,OAAO;AAExD,IAAIQ,SAAS,GAAAJ,OAAA,CAAAI,SAAA,GAAGT,WAAW;AAC3B,IAAIU,OAAO,GAAAL,OAAA,CAAAK,OAAA,GAAG;EAAC,MAAM,EAAC;AAAgC,CAAC;AACvD,IAAIC,SAAS,GAAAN,OAAA,CAAAM,SAAA,GAAG,CAAC,CAAC;AAClB,IAAIC,MAAM,GAAAP,OAAA,CAAAO,MAAA,GAAG,CAAC,CAAC;AACf,IAAIC,UAAU,GAAAR,OAAA,CAAAQ,UAAA,GAAG,CAAC,CAAC;AACnB,IAAIC,MAAM,GAAAT,OAAA,CAAAS,MAAA,GAAG,CAAC,CAAC;AACf,IAAIC,IAAI,GAAAV,OAAA,CAAAU,IAAA,GAAG,CAAC,CAAC","ignoreList":[]}
|
|
@@ -170,7 +170,7 @@ class NestedTableFlatModeState {
|
|
|
170
170
|
const initTask = new _bexCore.TaskState();
|
|
171
171
|
const disposers = [...this.sections.map(({
|
|
172
172
|
collection
|
|
173
|
-
}) => (0, _util.addEventListener)(collection.
|
|
173
|
+
}) => (0, _util.addEventListener)(collection.hooks, 'beforeInitialFetch', () => initTask.status.promise))];
|
|
174
174
|
return {
|
|
175
175
|
initTask,
|
|
176
176
|
init: () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_mobx","require","_bexCore","_TableVirtualState","_NestedTableFlatModeSectionState","_util","_NestedTableFlatModeStateBIReporter","NestedTableFlatModeState","constructor","params","_defineProperty2","default","TaskState","action","initTask","refreshTask","status","isError","runOnce","multi","retryErrorState","query","search","isEmpty","reset","_populateCacheAndSearch","sections","forEach","collection","clearResultAndMoveToStart","wrapper","levels","bi","NestedTableFlatModeStateBIReporter","Array","from","map","levelDescriptor","NestedTableFlatModeSectionState","flatModeState","reduce","section","getCurrentQuery","existingSection","get","levelDescriptors","push","set","Map","values","MultiCollectionSupport","collections","virtual","TableVirtualState","table","initSearchState","_getSearchInitState","makeObservable","keyedItems","computed","toolbar","tableState","acc","result","keyedItem","item","state","originalKeyedItem","showEmptyState","hasAvailableItems","resultOriginQuerySearch","hasNonPersistentActiveFilters","showErrorState","showLoadingState","isIdle","isLoading","errorStatus","reportSearchResults","_createReportSearchResults","fetchAll","_attemptFetchAllAndPopulateCache","init","promise","_runSearch","Promise","all","disposers","addEventListener","emitter","d","isUsingCache","events","isSuccess","exports"],"sources":["../../../../src/state/NestedTableState/NestedTableFlatModeState.ts"],"sourcesContent":["import { NestedTableState } from './NestedTableState';\nimport { action, computed, makeObservable } from 'mobx';\nimport { MultiCollectionSupport, TaskState } from '@wix/bex-core';\nimport { TableVirtualState } from '../TableVirtualState';\nimport {\n NestedTableFlatKeyedItem,\n NestedTableFlatModeSectionState,\n} from './NestedTableFlatModeSectionState';\nimport { addEventListener } from '@wix/bex-core/util';\nimport { NestedTableFlatModeStateBIReporter } from './NestedTableFlatModeStateBIReporter';\n\nexport interface NestedTableFlatStateBaseParams<C extends string> {\n wrapper: NestedTableState<C>;\n}\n\nexport class NestedTableFlatModeState<C extends string = string> {\n readonly wrapper;\n readonly virtual;\n\n readonly initTask = new TaskState();\n readonly refreshTask = new TaskState();\n\n readonly sections;\n readonly multi;\n readonly bi: NestedTableFlatModeStateBIReporter<C>;\n\n readonly initSearchState;\n\n constructor(params: NestedTableFlatStateBaseParams<C>) {\n const { wrapper } = params;\n this.wrapper = wrapper;\n\n const { levels, query } = wrapper;\n\n this.bi = new NestedTableFlatModeStateBIReporter(this);\n\n this.sections = Array.from(\n levels\n .map((levelDescriptor) => {\n return new NestedTableFlatModeSectionState({\n levelDescriptor,\n query,\n flatModeState: this,\n });\n })\n .reduce((map, section) => {\n const query = section.collection.getCurrentQuery();\n const existingSection = map.get(query);\n if (existingSection) {\n existingSection.levelDescriptors.push(section.levelDescriptor);\n } else {\n map.set(query, section);\n section.levelDescriptors.push(section.levelDescriptor);\n }\n return map;\n }, new Map<unknown, NestedTableFlatModeSectionState<C, any, any>>())\n .values(),\n );\n\n this.multi = new MultiCollectionSupport<{}>({\n collections: this.sections.map(({ collection }) => collection),\n });\n\n this.virtual = new TableVirtualState({\n table: this,\n });\n\n this.initSearchState = this._getSearchInitState();\n\n makeObservable(this, {\n keyedItems: computed,\n });\n }\n\n get toolbar() {\n return this.wrapper.toolbar;\n }\n\n get tableState() {\n return this.wrapper.tableState;\n }\n\n get keyedItems(): NestedTableFlatKeyedItem<C, any, any>[] {\n return this.sections.reduce((acc, section) => {\n const {\n collection: {\n result: { keyedItems },\n },\n } = section;\n\n return [\n ...acc,\n ...keyedItems.map((keyedItem) => ({\n ...keyedItem,\n item: {\n state: section,\n originalKeyedItem: keyedItem,\n },\n })),\n ];\n }, [] as NestedTableFlatKeyedItem<C, any, any>[]);\n }\n\n get showEmptyState() {\n return this.multi.showEmptyState;\n }\n\n get hasAvailableItems() {\n return this.multi.hasAvailableItems;\n }\n\n get resultOriginQuerySearch() {\n return this.multi.resultOriginQuerySearch;\n }\n\n get hasNonPersistentActiveFilters() {\n return this.multi.hasNonPersistentActiveFilters;\n }\n\n get showErrorState() {\n const { initTask, refreshTask, multi } = this;\n return (\n initTask.status.isError ||\n refreshTask.status.isError ||\n multi.showErrorState\n );\n }\n\n get showLoadingState() {\n return (\n this.initTask.status.isIdle ||\n this.initTask.status.isLoading ||\n this.refreshTask.status.isLoading ||\n this.multi.showLoadingState\n );\n }\n\n retryErrorState = action(() => {\n const { initTask, refreshTask } = this;\n\n if (initTask.status.isError) {\n initTask.runOnce();\n } else if (refreshTask.status.isError) {\n refreshTask.runOnce();\n } else {\n this.multi.retryErrorState();\n }\n });\n\n get errorStatus() {\n const { initTask, refreshTask, multi } = this;\n return initTask.errorStatus || refreshTask.errorStatus || multi.errorStatus;\n }\n\n get query() {\n return this.wrapper.query;\n }\n\n get levels() {\n return this.wrapper.levels;\n }\n\n async _populateCacheAndSearch() {\n const { wrapper, bi } = this;\n\n const reportSearchResults = bi._createReportSearchResults();\n const fetchAll = wrapper._attemptFetchAllAndPopulateCache();\n fetchAll.init();\n await fetchAll.initTask.status.promise;\n await this.toolbar.collection._runSearch(true);\n await Promise.all(\n this.sections.map(({ collection }) => collection._runSearch(true)),\n );\n reportSearchResults();\n }\n\n _runSearch = action(async () => {\n const { query, refreshTask } = this;\n if (query.search.isEmpty) {\n return;\n }\n\n refreshTask.reset();\n\n refreshTask.runOnce(() => this._populateCacheAndSearch());\n });\n\n _getSearchInitState() {\n const initTask = new TaskState();\n\n const disposers = [\n ...this.sections.map(({ collection }) =>\n addEventListener(\n collection.emitter,\n 'beforeInitialFetch',\n () => initTask.status.promise,\n ),\n ),\n ];\n\n return {\n initTask,\n init: () => {\n initTask.runOnce(async () => {\n await this._populateCacheAndSearch();\n });\n\n return () => {\n disposers.forEach((d) => d());\n };\n },\n };\n }\n\n init({ isUsingCache = false } = {}) {\n const { initTask, wrapper, multi, sections, initSearchState } = this;\n\n const { query } = wrapper;\n\n const disposers = [\n wrapper.init(),\n initSearchState.init(),\n multi.init(),\n addEventListener(query.search.events, 'change', this._runSearch),\n ...sections.map((section) => section.init()),\n ];\n\n if (!isUsingCache && initTask.status.isSuccess) {\n this._runSearch();\n }\n\n initTask.runOnce(async () => {\n wrapper.initTask.runOnce();\n initSearchState.initTask.runOnce();\n multi.initTask.runOnce();\n\n await wrapper.initTask.status.promise;\n await initSearchState.initTask.status.promise;\n await multi.initTask.status.promise;\n });\n\n return () => {\n disposers.forEach((d) => d());\n };\n }\n\n _refreshAll = action(() => {\n this.sections.forEach(({ collection }) => {\n collection.clearResultAndMoveToStart();\n });\n });\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_mobx","require","_bexCore","_TableVirtualState","_NestedTableFlatModeSectionState","_util","_NestedTableFlatModeStateBIReporter","NestedTableFlatModeState","constructor","params","_defineProperty2","default","TaskState","action","initTask","refreshTask","status","isError","runOnce","multi","retryErrorState","query","search","isEmpty","reset","_populateCacheAndSearch","sections","forEach","collection","clearResultAndMoveToStart","wrapper","levels","bi","NestedTableFlatModeStateBIReporter","Array","from","map","levelDescriptor","NestedTableFlatModeSectionState","flatModeState","reduce","section","getCurrentQuery","existingSection","get","levelDescriptors","push","set","Map","values","MultiCollectionSupport","collections","virtual","TableVirtualState","table","initSearchState","_getSearchInitState","makeObservable","keyedItems","computed","toolbar","tableState","acc","result","keyedItem","item","state","originalKeyedItem","showEmptyState","hasAvailableItems","resultOriginQuerySearch","hasNonPersistentActiveFilters","showErrorState","showLoadingState","isIdle","isLoading","errorStatus","reportSearchResults","_createReportSearchResults","fetchAll","_attemptFetchAllAndPopulateCache","init","promise","_runSearch","Promise","all","disposers","addEventListener","hooks","d","isUsingCache","events","isSuccess","exports"],"sources":["../../../../src/state/NestedTableState/NestedTableFlatModeState.ts"],"sourcesContent":["import { NestedTableState } from './NestedTableState';\nimport { action, computed, makeObservable } from 'mobx';\nimport { MultiCollectionSupport, TaskState } from '@wix/bex-core';\nimport { TableVirtualState } from '../TableVirtualState';\nimport {\n NestedTableFlatKeyedItem,\n NestedTableFlatModeSectionState,\n} from './NestedTableFlatModeSectionState';\nimport { addEventListener } from '@wix/bex-core/util';\nimport { NestedTableFlatModeStateBIReporter } from './NestedTableFlatModeStateBIReporter';\n\nexport interface NestedTableFlatStateBaseParams<C extends string> {\n wrapper: NestedTableState<C>;\n}\n\nexport class NestedTableFlatModeState<C extends string = string> {\n readonly wrapper;\n readonly virtual;\n\n readonly initTask = new TaskState();\n readonly refreshTask = new TaskState();\n\n readonly sections;\n readonly multi;\n readonly bi: NestedTableFlatModeStateBIReporter<C>;\n\n readonly initSearchState;\n\n constructor(params: NestedTableFlatStateBaseParams<C>) {\n const { wrapper } = params;\n this.wrapper = wrapper;\n\n const { levels, query } = wrapper;\n\n this.bi = new NestedTableFlatModeStateBIReporter(this);\n\n this.sections = Array.from(\n levels\n .map((levelDescriptor) => {\n return new NestedTableFlatModeSectionState({\n levelDescriptor,\n query,\n flatModeState: this,\n });\n })\n .reduce((map, section) => {\n const query = section.collection.getCurrentQuery();\n const existingSection = map.get(query);\n if (existingSection) {\n existingSection.levelDescriptors.push(section.levelDescriptor);\n } else {\n map.set(query, section);\n section.levelDescriptors.push(section.levelDescriptor);\n }\n return map;\n }, new Map<unknown, NestedTableFlatModeSectionState<C, any, any>>())\n .values(),\n );\n\n this.multi = new MultiCollectionSupport<{}>({\n collections: this.sections.map(({ collection }) => collection),\n });\n\n this.virtual = new TableVirtualState({\n table: this,\n });\n\n this.initSearchState = this._getSearchInitState();\n\n makeObservable(this, {\n keyedItems: computed,\n });\n }\n\n get toolbar() {\n return this.wrapper.toolbar;\n }\n\n get tableState() {\n return this.wrapper.tableState;\n }\n\n get keyedItems(): NestedTableFlatKeyedItem<C, any, any>[] {\n return this.sections.reduce((acc, section) => {\n const {\n collection: {\n result: { keyedItems },\n },\n } = section;\n\n return [\n ...acc,\n ...keyedItems.map((keyedItem) => ({\n ...keyedItem,\n item: {\n state: section,\n originalKeyedItem: keyedItem,\n },\n })),\n ];\n }, [] as NestedTableFlatKeyedItem<C, any, any>[]);\n }\n\n get showEmptyState() {\n return this.multi.showEmptyState;\n }\n\n get hasAvailableItems() {\n return this.multi.hasAvailableItems;\n }\n\n get resultOriginQuerySearch() {\n return this.multi.resultOriginQuerySearch;\n }\n\n get hasNonPersistentActiveFilters() {\n return this.multi.hasNonPersistentActiveFilters;\n }\n\n get showErrorState() {\n const { initTask, refreshTask, multi } = this;\n return (\n initTask.status.isError ||\n refreshTask.status.isError ||\n multi.showErrorState\n );\n }\n\n get showLoadingState() {\n return (\n this.initTask.status.isIdle ||\n this.initTask.status.isLoading ||\n this.refreshTask.status.isLoading ||\n this.multi.showLoadingState\n );\n }\n\n retryErrorState = action(() => {\n const { initTask, refreshTask } = this;\n\n if (initTask.status.isError) {\n initTask.runOnce();\n } else if (refreshTask.status.isError) {\n refreshTask.runOnce();\n } else {\n this.multi.retryErrorState();\n }\n });\n\n get errorStatus() {\n const { initTask, refreshTask, multi } = this;\n return initTask.errorStatus || refreshTask.errorStatus || multi.errorStatus;\n }\n\n get query() {\n return this.wrapper.query;\n }\n\n get levels() {\n return this.wrapper.levels;\n }\n\n async _populateCacheAndSearch() {\n const { wrapper, bi } = this;\n\n const reportSearchResults = bi._createReportSearchResults();\n const fetchAll = wrapper._attemptFetchAllAndPopulateCache();\n fetchAll.init();\n await fetchAll.initTask.status.promise;\n await this.toolbar.collection._runSearch(true);\n await Promise.all(\n this.sections.map(({ collection }) => collection._runSearch(true)),\n );\n reportSearchResults();\n }\n\n _runSearch = action(async () => {\n const { query, refreshTask } = this;\n if (query.search.isEmpty) {\n return;\n }\n\n refreshTask.reset();\n\n refreshTask.runOnce(() => this._populateCacheAndSearch());\n });\n\n _getSearchInitState() {\n const initTask = new TaskState();\n\n const disposers = [\n ...this.sections.map(({ collection }) =>\n addEventListener(\n collection.hooks,\n 'beforeInitialFetch',\n () => initTask.status.promise,\n ),\n ),\n ];\n\n return {\n initTask,\n init: () => {\n initTask.runOnce(async () => {\n await this._populateCacheAndSearch();\n });\n\n return () => {\n disposers.forEach((d) => d());\n };\n },\n };\n }\n\n init({ isUsingCache = false } = {}) {\n const { initTask, wrapper, multi, sections, initSearchState } = this;\n\n const { query } = wrapper;\n\n const disposers = [\n wrapper.init(),\n initSearchState.init(),\n multi.init(),\n addEventListener(query.search.events, 'change', this._runSearch),\n ...sections.map((section) => section.init()),\n ];\n\n if (!isUsingCache && initTask.status.isSuccess) {\n this._runSearch();\n }\n\n initTask.runOnce(async () => {\n wrapper.initTask.runOnce();\n initSearchState.initTask.runOnce();\n multi.initTask.runOnce();\n\n await wrapper.initTask.status.promise;\n await initSearchState.initTask.status.promise;\n await multi.initTask.status.promise;\n });\n\n return () => {\n disposers.forEach((d) => d());\n };\n }\n\n _refreshAll = action(() => {\n this.sections.forEach(({ collection }) => {\n collection.clearResultAndMoveToStart();\n });\n });\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -90,6 +90,9 @@ class NestedTableNestedModeState {
|
|
|
90
90
|
return [item.id, (_item$item$state$pare = item.item.state.parent) == null ? void 0 : _item$item$state$pare.id].filter(Boolean).join('_');
|
|
91
91
|
}
|
|
92
92
|
});
|
|
93
|
+
(0, _mobx.makeObservable)(this, {
|
|
94
|
+
hasExpandableItems: _mobx.computed
|
|
95
|
+
});
|
|
93
96
|
}
|
|
94
97
|
getCollectionSnapshot() {
|
|
95
98
|
var _toolbar$viewsState, _originQuery$sort;
|
|
@@ -161,6 +164,9 @@ class NestedTableNestedModeState {
|
|
|
161
164
|
get isAllCollapsed() {
|
|
162
165
|
return this.root.getDescendants().every(node => !node.expanded);
|
|
163
166
|
}
|
|
167
|
+
get hasExpandableItems() {
|
|
168
|
+
return this.root.hasExpandableItems;
|
|
169
|
+
}
|
|
164
170
|
get showEmptyState() {
|
|
165
171
|
return this.root.showEmptyState;
|
|
166
172
|
}
|
|
@@ -202,7 +208,7 @@ class NestedTableNestedModeState {
|
|
|
202
208
|
nestedCollection
|
|
203
209
|
} = this;
|
|
204
210
|
const attemptFetchAllState = wrapper._attemptFetchAllAndPopulateCache();
|
|
205
|
-
const disposers = [(0, _util.addEventListener)(root.collection.
|
|
211
|
+
const disposers = [(0, _util.addEventListener)(root.collection.hooks, 'beforeInitialFetch', () => attemptFetchAllState.initTask.status.promise), (0, _util.addEventListener)(wrapper.rootNodeCollection.collection.hooks, 'beforeInitialFetch', () => attemptFetchAllState.initTask.status.promise), attemptFetchAllState.init(), wrapper.init(), root.init(), nestedCollection.init()];
|
|
206
212
|
initTask.runOnce(async () => {
|
|
207
213
|
wrapper.initTask.runOnce();
|
|
208
214
|
attemptFetchAllState.initTask.runOnce();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_bexCore","require","_NestedCollectionState","_TableVirtualState","_NestedTableNodeState","_mobx","_getNodeOrLeaf","_NestedTableNestedModeStateBIReporter","_util","_createNestedOptimisticActions","NestedTableNestedModeState","constructor","params","_defineProperty2","default","TaskState","action","initTask","status","isError","runOnce","bi","reportExpandCollapseAll","isAllCollapsed","nodes","root","getDescendants","node","expanded","nodeState","_expanded","wrapper","container","NestedTableNestedModeStateBIReporter","rootLevelDescriptor","levels","Error","nestedOptimisticActionsState","parentId","sequences","query","levelDescriptor","rootNodeCollection","createCollection","createNestedOptimisticActions","collection","parentFilter","nestedCollection","NestedCollectionState","nodeCollection","NestedTableNodeState","nestedTable","parentNode","parent","preRegister","virtual","TableVirtualState","table","getVirtualItemKey","item","_item$item$state$pare","id","state","filter","Boolean","join","getCollectionSnapshot","_toolbar$viewsState","_originQuery$sort","toolbar","result","originQuery","total","viewShown","viewsState","views","currentView","tabShown","getCurrentTabName","sortOrderApplied","sort","length","JSON","stringify","undefined","filtersApplied","filtersKey","filteredListSizeShown","multi","tableState","keyedItems","_keyedItemsMap","getKeyedItem","key","getKeyedItemByIndex","ind","getNode","keyedItem","_allKeyedItemsMap","get","originalKeyedItem","getNodeOrLeaf","getAllNodes","expandAll","isFetchAllAborted","every","showEmptyState","hasAvailableItems","resultOriginQuerySearch","hasNonPersistentActiveFilters","showErrorState","showLoadingState","isLoading","errorStatus","init","attemptFetchAllState","_attemptFetchAllAndPopulateCache","disposers","addEventListener","emitter","promise","forEach","d","exports"],"sources":["../../../../src/state/NestedTableState/NestedTableNestedModeState.ts"],"sourcesContent":["import { FiltersMap, ReportBI, TaskState } from '@wix/bex-core';\n\nimport { NestedCollectionState } from './NestedCollectionState';\nimport { TableVirtualState } from '../TableVirtualState';\nimport { NestedTableNodeState } from './NestedTableNodeState';\nimport { action } from 'mobx';\nimport { NestedTableState } from './NestedTableState';\nimport { NestedTableDragAndDropState } from '../../components/NestedTableDragAndDrop/NestedTableDragAndDropState';\nimport { getNodeOrLeaf } from './getNodeOrLeaf';\nimport { NestedTableNodeStatePublicAPI } from './NestedTableNodeStatePublicAPI';\nimport { NestedTableNestedModeStateBIReporter } from './NestedTableNestedModeStateBIReporter';\nimport { addEventListener } from '@wix/bex-core/util';\nimport { createNestedOptimisticActions } from './createNestedOptimisticActions';\n\nexport interface NestedTableNestedModeStateBaseParams {}\n\nexport interface NestedTableNestedModeStateParams<C extends string>\n extends NestedTableNestedModeStateBaseParams {\n wrapper: NestedTableState<C>;\n reportBi: ReportBI;\n}\n\nexport class NestedTableNestedModeState<C extends string = string> {\n readonly wrapper;\n readonly container;\n readonly bi: NestedTableNestedModeStateBIReporter<C>;\n readonly nestedCollection: NestedCollectionState;\n readonly virtual;\n\n readonly initTask = new TaskState();\n\n readonly root: NestedTableNodeState<C, any, any>;\n\n nestedTableDragAndDrop: NestedTableDragAndDropState<C> | null = null;\n\n constructor(params: NestedTableNestedModeStateParams<C>) {\n const { wrapper } = params;\n this.wrapper = wrapper;\n this.container = wrapper.container;\n\n this.bi = new NestedTableNestedModeStateBIReporter(this);\n\n const rootLevelDescriptor = this.wrapper.levels[0];\n\n if (rootLevelDescriptor == null) {\n throw new Error('NestedTableState must have at least one level');\n }\n\n const nestedOptimisticActionsState = {\n parentId: 'null',\n sequences: wrapper.sequences,\n query: wrapper.query,\n levelDescriptor: rootLevelDescriptor,\n };\n\n const rootNodeCollection = rootLevelDescriptor.createCollection(\n nestedOptimisticActionsState,\n );\n\n createNestedOptimisticActions(\n this.container,\n rootNodeCollection.collection,\n {\n ...nestedOptimisticActionsState,\n parentFilter: rootNodeCollection.parentFilter,\n },\n );\n\n this.nestedCollection = new NestedCollectionState({\n container: this.container,\n levels: wrapper.levels,\n query: wrapper.query,\n nodeCollection: rootNodeCollection,\n sequences: wrapper.sequences,\n });\n\n this.root = new NestedTableNodeState({\n nestedTable: this,\n node: this.nestedCollection.root,\n levelDescriptor: rootLevelDescriptor,\n parentNode: null,\n parent: null,\n preRegister: true,\n });\n\n this.virtual = new TableVirtualState({\n table: this,\n getVirtualItemKey: (item) =>\n [item.id, item.item.state.parent?.id].filter(Boolean).join('_'),\n });\n }\n\n getCollectionSnapshot() {\n const { toolbar } = this;\n\n const {\n collection: {\n result: { originQuery, total },\n },\n } = toolbar;\n\n return {\n viewShown: toolbar.viewsState?.views.currentView?.id,\n tabShown: toolbar.getCurrentTabName(),\n sortOrderApplied: originQuery.sort?.length\n ? JSON.stringify(originQuery.sort)\n : undefined,\n filtersApplied: JSON.stringify(originQuery.filtersKey),\n filteredListSizeShown: total,\n };\n }\n\n get multi() {\n return this.toolbar.multi;\n }\n\n get tableState() {\n return this.wrapper.tableState;\n }\n\n get toolbar() {\n return this.wrapper.toolbar;\n }\n\n get total() {\n return this.nestedCollection.total;\n }\n\n get originQuery() {\n return this.toolbar.collection.originQuery;\n }\n\n get keyedItems() {\n return this.root.keyedItems;\n }\n\n get _keyedItemsMap() {\n return this.root._keyedItemsMap;\n }\n\n _indentationWidth = 28;\n _parentCellPaddingStart = 24;\n\n getKeyedItem(key: string) {\n return this.root.getKeyedItem(key);\n }\n\n getKeyedItemByIndex(ind: number) {\n return this.root.getKeyedItemByIndex(ind);\n }\n\n getNode<TD, FD extends FiltersMap>(\n key: string,\n ): NestedTableNodeStatePublicAPI<C, TD, FD> | undefined {\n const keyedItem = this.root._allKeyedItemsMap.get(key);\n if (keyedItem == null || keyedItem.item.originalKeyedItem == null) {\n return undefined;\n }\n const { item } = keyedItem;\n return getNodeOrLeaf(item.state, item.originalKeyedItem) as\n | NestedTableNodeState<C, TD, FD>\n | undefined;\n }\n\n getAllNodes<TD, FD extends FiltersMap>(): NestedTableNodeStatePublicAPI<\n C,\n TD,\n FD\n >[] {\n return this.root.getDescendants();\n }\n\n get expandAll() {\n return this.nestedCollection.expandAll;\n }\n\n get isFetchAllAborted() {\n return this.nestedCollection.isFetchAllAborted;\n }\n\n get isAllCollapsed() {\n return this.root.getDescendants().every((node) => !node.expanded);\n }\n\n get showEmptyState() {\n return this.root.showEmptyState;\n }\n\n get hasAvailableItems() {\n return this.toolbar.multi.hasAvailableItems;\n }\n\n get resultOriginQuerySearch() {\n return this.toolbar.multi.resultOriginQuerySearch;\n }\n\n get hasNonPersistentActiveFilters() {\n return this.toolbar.multi.hasNonPersistentActiveFilters;\n }\n\n get showErrorState() {\n const { initTask } = this;\n return initTask.status.isError;\n }\n\n get showLoadingState() {\n return this.initTask.status.isLoading;\n }\n\n retryErrorState = action(() => {\n const { initTask } = this;\n\n if (initTask.status.isError) {\n initTask.runOnce();\n }\n });\n\n expandCollapseAll = action(() => {\n this.bi.reportExpandCollapseAll();\n const isAllCollapsed = this.isAllCollapsed;\n\n const nodes = this.root.getDescendants();\n\n for (const node of nodes) {\n if (node.expanded !== isAllCollapsed) {\n const nodeState = (node as NestedTableNodeState<C, any, any>).node;\n if (!nodeState) {\n continue;\n }\n nodeState._expanded = !nodeState._expanded;\n }\n }\n });\n\n get errorStatus() {\n const { initTask } = this;\n return initTask.errorStatus;\n }\n\n get query() {\n return this.wrapper.query;\n }\n\n get levels() {\n return this.wrapper.levels;\n }\n\n init() {\n const { initTask, wrapper, root, nestedCollection } = this;\n\n const attemptFetchAllState = wrapper._attemptFetchAllAndPopulateCache();\n\n const disposers = [\n addEventListener(\n root.collection.emitter,\n 'beforeInitialFetch',\n () => attemptFetchAllState.initTask.status.promise,\n ),\n addEventListener(\n wrapper.rootNodeCollection.collection.emitter,\n 'beforeInitialFetch',\n () => attemptFetchAllState.initTask.status.promise,\n ),\n attemptFetchAllState.init(),\n wrapper.init(),\n root.init(),\n nestedCollection.init(),\n ];\n\n initTask.runOnce(async () => {\n wrapper.initTask.runOnce();\n attemptFetchAllState.initTask.runOnce();\n root.initTask.runOnce();\n\n await attemptFetchAllState.initTask.status.promise;\n await root.initTask.status.promise;\n await wrapper.initTask.status.promise;\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","_NestedCollectionState","_TableVirtualState","_NestedTableNodeState","_mobx","_getNodeOrLeaf","_NestedTableNestedModeStateBIReporter","_util","_createNestedOptimisticActions","NestedTableNestedModeState","constructor","params","_defineProperty2","default","TaskState","action","initTask","status","isError","runOnce","bi","reportExpandCollapseAll","isAllCollapsed","nodes","root","getDescendants","node","expanded","nodeState","_expanded","wrapper","container","NestedTableNestedModeStateBIReporter","rootLevelDescriptor","levels","Error","nestedOptimisticActionsState","parentId","sequences","query","levelDescriptor","rootNodeCollection","createCollection","createNestedOptimisticActions","collection","parentFilter","nestedCollection","NestedCollectionState","nodeCollection","NestedTableNodeState","nestedTable","parentNode","parent","preRegister","virtual","TableVirtualState","table","getVirtualItemKey","item","_item$item$state$pare","id","state","filter","Boolean","join","makeObservable","hasExpandableItems","computed","getCollectionSnapshot","_toolbar$viewsState","_originQuery$sort","toolbar","result","originQuery","total","viewShown","viewsState","views","currentView","tabShown","getCurrentTabName","sortOrderApplied","sort","length","JSON","stringify","undefined","filtersApplied","filtersKey","filteredListSizeShown","multi","tableState","keyedItems","_keyedItemsMap","getKeyedItem","key","getKeyedItemByIndex","ind","getNode","keyedItem","_allKeyedItemsMap","get","originalKeyedItem","getNodeOrLeaf","getAllNodes","expandAll","isFetchAllAborted","every","showEmptyState","hasAvailableItems","resultOriginQuerySearch","hasNonPersistentActiveFilters","showErrorState","showLoadingState","isLoading","errorStatus","init","attemptFetchAllState","_attemptFetchAllAndPopulateCache","disposers","addEventListener","hooks","promise","forEach","d","exports"],"sources":["../../../../src/state/NestedTableState/NestedTableNestedModeState.ts"],"sourcesContent":["import { FiltersMap, ReportBI, TaskState } from '@wix/bex-core';\n\nimport { NestedCollectionState } from './NestedCollectionState';\nimport { TableVirtualState } from '../TableVirtualState';\nimport { NestedTableNodeState } from './NestedTableNodeState';\nimport { action, computed, makeObservable } from 'mobx';\nimport { NestedTableState } from './NestedTableState';\nimport { NestedTableDragAndDropState } from '../../components/NestedTableDragAndDrop/NestedTableDragAndDropState';\nimport { getNodeOrLeaf } from './getNodeOrLeaf';\nimport { NestedTableNodeStatePublicAPI } from './NestedTableNodeStatePublicAPI';\nimport { NestedTableNestedModeStateBIReporter } from './NestedTableNestedModeStateBIReporter';\nimport { addEventListener } from '@wix/bex-core/util';\nimport { createNestedOptimisticActions } from './createNestedOptimisticActions';\n\nexport interface NestedTableNestedModeStateBaseParams {}\n\nexport interface NestedTableNestedModeStateParams<C extends string>\n extends NestedTableNestedModeStateBaseParams {\n wrapper: NestedTableState<C>;\n reportBi: ReportBI;\n}\n\nexport class NestedTableNestedModeState<C extends string = string> {\n readonly wrapper;\n readonly container;\n readonly bi: NestedTableNestedModeStateBIReporter<C>;\n readonly nestedCollection: NestedCollectionState;\n readonly virtual;\n\n readonly initTask = new TaskState();\n\n readonly root: NestedTableNodeState<C, any, any>;\n\n nestedTableDragAndDrop: NestedTableDragAndDropState<C> | null = null;\n\n constructor(params: NestedTableNestedModeStateParams<C>) {\n const { wrapper } = params;\n this.wrapper = wrapper;\n this.container = wrapper.container;\n\n this.bi = new NestedTableNestedModeStateBIReporter(this);\n\n const rootLevelDescriptor = this.wrapper.levels[0];\n\n if (rootLevelDescriptor == null) {\n throw new Error('NestedTableState must have at least one level');\n }\n\n const nestedOptimisticActionsState = {\n parentId: 'null',\n sequences: wrapper.sequences,\n query: wrapper.query,\n levelDescriptor: rootLevelDescriptor,\n };\n\n const rootNodeCollection = rootLevelDescriptor.createCollection(\n nestedOptimisticActionsState,\n );\n\n createNestedOptimisticActions(\n this.container,\n rootNodeCollection.collection,\n {\n ...nestedOptimisticActionsState,\n parentFilter: rootNodeCollection.parentFilter,\n },\n );\n\n this.nestedCollection = new NestedCollectionState({\n container: this.container,\n levels: wrapper.levels,\n query: wrapper.query,\n nodeCollection: rootNodeCollection,\n sequences: wrapper.sequences,\n });\n\n this.root = new NestedTableNodeState({\n nestedTable: this,\n node: this.nestedCollection.root,\n levelDescriptor: rootLevelDescriptor,\n parentNode: null,\n parent: null,\n preRegister: true,\n });\n\n this.virtual = new TableVirtualState({\n table: this,\n getVirtualItemKey: (item) =>\n [item.id, item.item.state.parent?.id].filter(Boolean).join('_'),\n });\n\n makeObservable(this, {\n hasExpandableItems: computed,\n });\n }\n\n getCollectionSnapshot() {\n const { toolbar } = this;\n\n const {\n collection: {\n result: { originQuery, total },\n },\n } = toolbar;\n\n return {\n viewShown: toolbar.viewsState?.views.currentView?.id,\n tabShown: toolbar.getCurrentTabName(),\n sortOrderApplied: originQuery.sort?.length\n ? JSON.stringify(originQuery.sort)\n : undefined,\n filtersApplied: JSON.stringify(originQuery.filtersKey),\n filteredListSizeShown: total,\n };\n }\n\n get multi() {\n return this.toolbar.multi;\n }\n\n get tableState() {\n return this.wrapper.tableState;\n }\n\n get toolbar() {\n return this.wrapper.toolbar;\n }\n\n get total() {\n return this.nestedCollection.total;\n }\n\n get originQuery() {\n return this.toolbar.collection.originQuery;\n }\n\n get keyedItems() {\n return this.root.keyedItems;\n }\n\n get _keyedItemsMap() {\n return this.root._keyedItemsMap;\n }\n\n _indentationWidth = 28;\n _parentCellPaddingStart = 24;\n\n getKeyedItem(key: string) {\n return this.root.getKeyedItem(key);\n }\n\n getKeyedItemByIndex(ind: number) {\n return this.root.getKeyedItemByIndex(ind);\n }\n\n getNode<TD, FD extends FiltersMap>(\n key: string,\n ): NestedTableNodeStatePublicAPI<C, TD, FD> | undefined {\n const keyedItem = this.root._allKeyedItemsMap.get(key);\n if (keyedItem == null || keyedItem.item.originalKeyedItem == null) {\n return undefined;\n }\n const { item } = keyedItem;\n return getNodeOrLeaf(item.state, item.originalKeyedItem) as\n | NestedTableNodeState<C, TD, FD>\n | undefined;\n }\n\n getAllNodes<TD, FD extends FiltersMap>(): NestedTableNodeStatePublicAPI<\n C,\n TD,\n FD\n >[] {\n return this.root.getDescendants();\n }\n\n get expandAll() {\n return this.nestedCollection.expandAll;\n }\n\n get isFetchAllAborted() {\n return this.nestedCollection.isFetchAllAborted;\n }\n\n get isAllCollapsed() {\n return this.root.getDescendants().every((node) => !node.expanded);\n }\n\n get hasExpandableItems() {\n return this.root.hasExpandableItems;\n }\n\n get showEmptyState() {\n return this.root.showEmptyState;\n }\n\n get hasAvailableItems() {\n return this.toolbar.multi.hasAvailableItems;\n }\n\n get resultOriginQuerySearch() {\n return this.toolbar.multi.resultOriginQuerySearch;\n }\n\n get hasNonPersistentActiveFilters() {\n return this.toolbar.multi.hasNonPersistentActiveFilters;\n }\n\n get showErrorState() {\n const { initTask } = this;\n return initTask.status.isError;\n }\n\n get showLoadingState() {\n return this.initTask.status.isLoading;\n }\n\n retryErrorState = action(() => {\n const { initTask } = this;\n\n if (initTask.status.isError) {\n initTask.runOnce();\n }\n });\n\n expandCollapseAll = action(() => {\n this.bi.reportExpandCollapseAll();\n const isAllCollapsed = this.isAllCollapsed;\n\n const nodes = this.root.getDescendants();\n\n for (const node of nodes) {\n if (node.expanded !== isAllCollapsed) {\n const nodeState = (node as NestedTableNodeState<C, any, any>).node;\n if (!nodeState) {\n continue;\n }\n nodeState._expanded = !nodeState._expanded;\n }\n }\n });\n\n get errorStatus() {\n const { initTask } = this;\n return initTask.errorStatus;\n }\n\n get query() {\n return this.wrapper.query;\n }\n\n get levels() {\n return this.wrapper.levels;\n }\n\n init() {\n const { initTask, wrapper, root, nestedCollection } = this;\n\n const attemptFetchAllState = wrapper._attemptFetchAllAndPopulateCache();\n\n const disposers = [\n addEventListener(\n root.collection.hooks,\n 'beforeInitialFetch',\n () => attemptFetchAllState.initTask.status.promise,\n ),\n addEventListener(\n wrapper.rootNodeCollection.collection.hooks,\n 'beforeInitialFetch',\n () => attemptFetchAllState.initTask.status.promise,\n ),\n attemptFetchAllState.init(),\n wrapper.init(),\n root.init(),\n nestedCollection.init(),\n ];\n\n initTask.runOnce(async () => {\n wrapper.initTask.runOnce();\n attemptFetchAllState.initTask.runOnce();\n root.initTask.runOnce();\n\n await attemptFetchAllState.initTask.status.promise;\n await root.initTask.status.promise;\n await wrapper.initTask.status.promise;\n });\n\n return () => {\n disposers.forEach((d) => d());\n };\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -47,7 +47,9 @@ class NestedTableNodeState {
|
|
|
47
47
|
_notifyAll: _mobx.action,
|
|
48
48
|
deepestBranchDepth: _mobx.computed,
|
|
49
49
|
unprocessedMap: _mobx.computed,
|
|
50
|
-
getKeyedItem: _mobx.action
|
|
50
|
+
getKeyedItem: _mobx.action,
|
|
51
|
+
hasExpandableItems: _mobx.computed,
|
|
52
|
+
_childrenCount: _mobx.computed
|
|
51
53
|
});
|
|
52
54
|
this._register();
|
|
53
55
|
}
|
|
@@ -107,6 +109,20 @@ class NestedTableNodeState {
|
|
|
107
109
|
return Math.max(acc, ((_parentKeyToChildrenM = parentKeyToChildrenMap.get(keyedItem.id)) == null ? void 0 : _parentKeyToChildrenM.deepestBranchDepth) ?? 0);
|
|
108
110
|
}, 0) + (keyedItems.length ? 1 : 0);
|
|
109
111
|
}
|
|
112
|
+
get hasExpandableItems() {
|
|
113
|
+
const {
|
|
114
|
+
parentKeyToChildrenMap,
|
|
115
|
+
parentKeyToChildrenMapAtom
|
|
116
|
+
} = this;
|
|
117
|
+
parentKeyToChildrenMapAtom.reportObserved();
|
|
118
|
+
return this.node.collection.result.keyedItems.some(item => {
|
|
119
|
+
var _parentKeyToChildrenM2;
|
|
120
|
+
return (((_parentKeyToChildrenM2 = parentKeyToChildrenMap.get(item.id)) == null ? void 0 : _parentKeyToChildrenM2._childrenCount) ?? 0) > 0;
|
|
121
|
+
});
|
|
122
|
+
}
|
|
123
|
+
get _childrenCount() {
|
|
124
|
+
return this.node.collection.result.keyedItems.length ?? 0;
|
|
125
|
+
}
|
|
110
126
|
get _expanded() {
|
|
111
127
|
return this.node._expanded;
|
|
112
128
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_bexCore","require","_mobx","_NestedTableNodeStateBIReporter","_getNodeOrLeaf","_NestedTableNodeStateOptimisticActions","NestedTableNodeState","constructor","params","_defineProperty2","default","TaskState","Map","createAtom","node","collection","retryErrorState","nestedTable","parentNode","parent","levelDescriptor","bi","NestedTableNodeStateBIReporter","multi","MultiCollectionSupport","collections","makeObservable","keyedItems","computed","_keyedItemsMap","_allKeyedItemsMap","_allKeyedItems","_keyedItemsIfExpanded","_isNotExpandableWhenEmpty","init","action","createNode","_preRegisterAll","_toggleExpand","_notify","_notifyAll","deepestBranchDepth","unprocessedMap","getKeyedItem","_register","result","_pages","itemKey","_pagesAtom","reportObserved","unprocessed","flatMap","page","map","item","key","children","optimisticActions","NestedTableNodeStateOptimisticActions","flatModeCollection","_this$nestedTable$wra","wrapper","flat","sections","find","section","levelDescriptors","includes","depth","_this$parentNode","childrenDepth","parentKeyToChildrenMap","parentKeyToChildrenMapAtom","reduce","acc","keyedItem","_parentKeyToChildrenM","Math","max","get","id","length","_expanded","columns","renderMainColumn","showHoverHighlight","hoveredOrParentHovered","_changeHover","hovered","showEmptyState","showLoadingState","showInitialLoader","showRefreshLoader","showErrorState","errorStatus","isFetchAllAborted","_isExpandableActionDisabled","_this$levelDescriptor","_this$levelDescriptor2","expandable","call","isNotExpandable","Array","fill","_","index","pageIndex","indexWithinPage","state","originalKeyedItem","undefined","_getKeyedItems","onlyExpanded","from","values","childrenNode","getDescendants","getNodeOrLeaf","_getNode","getParent","getData","getItem","toggleExpand","expanded","getKeyedItemByIndex","ind","set","delete","_refreshAll","_resetReactQuery","moveToFirstPage","_this$parentNode2","promise","reportChanged","runInAction","_this$parentNode3","Promise","all","dispose","initTask","status","forEach","_cleanupStaleNodes","reaction","keys","Set","mapKeys","has","skipCollectionInit","nestedTableDragAndDrop","disposers","initCollection","runOnce","d","notifyAll","existing","nextLevelDescriptor","levels","nextLevelNode","_createNode","exports"],"sources":["../../../../src/state/NestedTableState/NestedTableNodeState.ts"],"sourcesContent":["import {\n CollectionState,\n FiltersMap,\n KeyedItem,\n MultiCollectionSupport,\n TaskState,\n} from '@wix/bex-core';\nimport { NestedCollectionNodeState } from './NestedCollectionNodeState';\nimport {\n action,\n computed,\n createAtom,\n makeObservable,\n reaction,\n runInAction,\n} from 'mobx';\nimport { TableColumn } from '../../model';\nimport { NestedTableNestedModeState } from './NestedTableNestedModeState';\nimport { ReactNode } from 'react';\nimport { NestedTableNodeStateBIReporter } from './NestedTableNodeStateBIReporter';\nimport { NestedTableLevelDescriptor } from './NestedTableLevelDescriptor';\nimport { NestedTableNodeStatePublicAPI } from './NestedTableNodeStatePublicAPI';\nimport { getNodeOrLeaf } from './getNodeOrLeaf';\nimport { NestedTableNodeStateOptimisticActions } from './NestedTableNodeStateOptimisticActions';\n\nexport interface NestedTableDataItem<\n C extends string,\n T,\n F extends FiltersMap,\n> {\n state: NestedTableNodeState<C, T, F>;\n originalKeyedItem: KeyedItem<T>;\n}\n\nexport interface NestedTableSkeletonItem<\n C extends string,\n T,\n F extends FiltersMap,\n> {\n state: NestedTableNodeState<C, T, F>;\n originalKeyedItem: undefined;\n}\n\nexport type NestedTableItem<C extends string, T, F extends FiltersMap> =\n | NestedTableDataItem<C, T, F>\n | NestedTableSkeletonItem<C, T, F>;\n\nexport type NestedTableKeyedItem<\n C extends string,\n T,\n F extends FiltersMap,\n> = KeyedItem<NestedTableItem<C, T, F>>;\n\nexport type RenderMainColumn<T> = (item: T) => {\n title?: string;\n subtitle?: string;\n image?: ReactNode;\n};\n\nexport type NestedTableNestColumns<C extends string, T> = Partial<\n Record<C, TableColumn<T>['render']>\n>;\n\nexport interface NestedTableNodeStateParams<\n C extends string,\n T,\n F extends FiltersMap,\n> {\n readonly nestedTable: NestedTableNestedModeState<C>;\n readonly node: NestedCollectionNodeState<T, F>;\n readonly levelDescriptor: NestedTableLevelDescriptor<C, T, F>;\n readonly parentNode: NestedTableNodeState<C, any, any> | null;\n readonly parent: KeyedItem<unknown> | null;\n readonly preRegister?: boolean;\n}\n\nexport class NestedTableNodeState<C extends string, T, F extends FiltersMap>\n implements NestedTableNodeStatePublicAPI<C, T, F>\n{\n readonly nestedTable;\n readonly node;\n\n readonly levelDescriptor;\n readonly parentNode;\n readonly parent;\n readonly bi: NestedTableNodeStateBIReporter<C, T, F>;\n\n readonly multi;\n\n _rowNum?: number;\n\n readonly initTask = new TaskState();\n\n readonly parentKeyToChildrenMap = new Map<\n string,\n NestedTableNodeState<C, any, any>\n >();\n\n readonly parentKeyToChildrenMapAtom = createAtom(\n 'parentKeyToChildrenMapAtom',\n );\n\n constructor(params: NestedTableNodeStateParams<C, T, F>) {\n this.nestedTable = params.nestedTable;\n this.node = params.node;\n this.parentNode = params.parentNode;\n this.parent = params.parent;\n this.levelDescriptor = params.levelDescriptor;\n this.bi = new NestedTableNodeStateBIReporter(this);\n\n this.multi = new MultiCollectionSupport({\n collections: [this.node.collection],\n });\n\n makeObservable(this, {\n keyedItems: computed,\n _keyedItemsMap: computed,\n _allKeyedItemsMap: computed,\n _allKeyedItems: computed,\n _keyedItemsIfExpanded: computed,\n _isNotExpandableWhenEmpty: computed,\n init: action,\n createNode: action,\n _preRegisterAll: action,\n _toggleExpand: action,\n _notify: action,\n _notifyAll: action,\n deepestBranchDepth: computed,\n unprocessedMap: computed,\n getKeyedItem: action,\n });\n\n this._register();\n }\n\n get collection() {\n return this.node.collection;\n }\n\n get unprocessedMap() {\n const {\n collection: { result },\n } = this;\n const { _pages, itemKey, _pagesAtom } = result;\n _pagesAtom.reportObserved();\n return new Map(\n _pages.unprocessed.flatMap((page) =>\n page.map((item) => {\n const key = itemKey(item);\n return [key, item];\n }),\n ),\n );\n }\n\n get children() {\n return this.collection;\n }\n\n get optimisticActions() {\n return new NestedTableNodeStateOptimisticActions(this);\n }\n\n get flatModeCollection(): CollectionState<T, F> | undefined {\n return this.nestedTable.wrapper.flat.sections.find((section) =>\n section.levelDescriptors.includes(this.levelDescriptor),\n )?.collection;\n }\n\n get depth() {\n return this.parentNode?.childrenDepth ?? 0;\n }\n\n get childrenDepth() {\n return this.levelDescriptor.depth;\n }\n\n get deepestBranchDepth(): number {\n const { node, parentKeyToChildrenMap, parentKeyToChildrenMapAtom } = this;\n const {\n collection: {\n result: { keyedItems },\n },\n } = node;\n\n parentKeyToChildrenMapAtom.reportObserved();\n\n return (\n keyedItems.reduce((acc, keyedItem) => {\n return Math.max(\n acc,\n parentKeyToChildrenMap.get(keyedItem.id)?.deepestBranchDepth ?? 0,\n );\n }, 0) + (keyedItems.length ? 1 : 0)\n );\n }\n\n get _expanded() {\n return this.node._expanded;\n }\n\n get columns() {\n return this.levelDescriptor.columns;\n }\n\n get renderMainColumn() {\n return this.levelDescriptor.renderMainColumn;\n }\n\n get showHoverHighlight() {\n return this.node.hoveredOrParentHovered;\n }\n\n _changeHover(hovered: boolean) {\n this.node._changeHover(hovered);\n }\n\n get showEmptyState() {\n return this.node.collection.showEmptyState;\n }\n\n get showLoadingState() {\n return (\n this.node.collection.showInitialLoader ||\n this.node.collection.showRefreshLoader\n );\n }\n\n get showErrorState() {\n return this.node.collection.showErrorState;\n }\n\n get errorStatus() {\n return this.node.collection.result.errorStatus;\n }\n\n retryErrorState = () => this.node.collection.retryErrorState();\n\n get _isNotExpandableWhenEmpty() {\n const {\n nestedTable: { isFetchAllAborted },\n node: {\n collection: { showEmptyState },\n },\n } = this;\n return !isFetchAllAborted && showEmptyState;\n }\n\n _isExpandableActionDisabled(item: T) {\n return this.levelDescriptor.expandable?.(item) === false;\n }\n\n isNotExpandable(item: T) {\n return (\n this._isNotExpandableWhenEmpty || this._isExpandableActionDisabled(item)\n );\n }\n\n get _keyedItemsIfExpanded(): NestedTableKeyedItem<C, any, any>[] {\n const {\n parent,\n nestedTable: { isFetchAllAborted },\n _expanded,\n node: {\n collection: { showRefreshLoader, showEmptyState, showErrorState },\n },\n } = this;\n\n if (!_expanded) {\n return [];\n }\n\n return [\n ...this.keyedItems,\n ...(parent &&\n isFetchAllAborted &&\n (showRefreshLoader || showEmptyState || showErrorState)\n ? new Array(1).fill(null).map((_, index) => ({\n id: `placeholder-states-${parent.key}`,\n key: `placeholder-states-${parent.key}`,\n index,\n pageIndex: 0,\n indexWithinPage: index,\n item: {\n state: this,\n originalKeyedItem: undefined,\n },\n }))\n : []),\n ];\n }\n\n get _keyedItemsMap(): Map<string, NestedTableKeyedItem<C, any, any>> {\n return new Map(\n this.keyedItems.map((keyedItem) => [keyedItem.key, keyedItem]),\n );\n }\n\n get _allKeyedItemsMap(): Map<string, NestedTableKeyedItem<C, any, any>> {\n return new Map(\n this._getKeyedItems({ onlyExpanded: false }).map((keyedItem) => [\n keyedItem.key,\n keyedItem,\n ]),\n );\n }\n\n get _allKeyedItems() {\n return Array.from(this._allKeyedItemsMap.values());\n }\n\n _getKeyedItems({\n onlyExpanded,\n }: {\n onlyExpanded?: boolean;\n }): NestedTableKeyedItem<C, any, any>[] {\n const { node, parentKeyToChildrenMap, parentKeyToChildrenMapAtom } = this;\n const {\n collection: {\n result: { keyedItems },\n },\n } = node;\n\n parentKeyToChildrenMapAtom.reportObserved();\n\n return keyedItems\n .flatMap((keyedItem) => {\n const childrenNode = parentKeyToChildrenMap.get(keyedItem.key);\n\n return [\n {\n ...keyedItem,\n item: {\n state: this,\n originalKeyedItem: keyedItem,\n },\n },\n ...(childrenNode\n ? onlyExpanded\n ? childrenNode._keyedItemsIfExpanded\n : childrenNode._allKeyedItems\n : []),\n ];\n })\n .map((keyedItem, index) => ({ ...keyedItem, index }));\n }\n\n get keyedItems(): NestedTableKeyedItem<C, any, any>[] {\n return this._getKeyedItems({ onlyExpanded: true });\n }\n\n getKeyedItem(key: string) {\n return this._keyedItemsMap.get(key);\n }\n\n getDescendants<TD, FD extends FiltersMap>(): NestedTableNodeStatePublicAPI<\n C,\n TD,\n FD\n >[] {\n const { collection } = this;\n\n return collection.result.keyedItems.flatMap((keyedItem) => {\n const node = getNodeOrLeaf(this, keyedItem);\n return [node, ...node.getDescendants<TD, FD>()];\n });\n }\n\n _getNode<TD, FD extends FiltersMap>(key: string) {\n const node = this._keyedItemsMap.get(key);\n return node?.item.state.parentKeyToChildrenMap.get(key) as\n | NestedTableNodeState<C, TD, FD>\n | undefined;\n }\n\n getParent<TD, FD extends FiltersMap>(): NestedTableNodeStatePublicAPI<\n C,\n TD,\n FD\n > | null {\n return this.parentNode;\n }\n\n getData<TD>(): TD | null {\n const { parent, parentNode } = this;\n if (parent == null || parentNode == null) {\n return null;\n }\n return parentNode.collection.getItem(parent.key);\n }\n\n toggleExpand() {\n this._toggleExpand();\n }\n\n get expanded() {\n return this._expanded;\n }\n\n getKeyedItemByIndex(ind: number) {\n return this.keyedItems[ind];\n }\n\n _register() {\n const { parent, parentNode } = this;\n\n if (parent == null || parentNode == null) {\n return;\n }\n\n parentNode.parentKeyToChildrenMap.set(parent.key, this);\n\n return () => {\n parentNode.parentKeyToChildrenMap.delete(parent.key);\n };\n }\n\n async _refreshAll() {\n const { collection } = this;\n\n collection._resetReactQuery();\n await collection.moveToFirstPage();\n const keyedItems = collection.result.keyedItems;\n\n for (const keyedItem of keyedItems) {\n const node = this.createNode({ parent: keyedItem });\n\n if (node == null) {\n continue;\n }\n\n await node._refreshAll();\n }\n }\n\n async _toggleExpand() {\n const promise = this.node._toggleExpand();\n\n this.parentNode?.parentKeyToChildrenMapAtom.reportChanged();\n await promise;\n runInAction(() => {\n this.parentNode?.parentKeyToChildrenMapAtom.reportChanged();\n });\n }\n\n async _preRegisterAll() {\n const { node } = this;\n const {\n collection: {\n result: { keyedItems },\n },\n } = node;\n\n await Promise.all(\n keyedItems.map(async (keyedItem) => {\n const state = this.createNode({ parent: keyedItem });\n if (state == null) {\n return;\n }\n const dispose = state.init();\n await state.initTask.status.promise;\n dispose();\n }),\n );\n }\n\n _notify() {\n const { parentKeyToChildrenMapAtom } = this;\n parentKeyToChildrenMapAtom.reportChanged();\n }\n\n _notifyAll() {\n const { parentKeyToChildrenMap } = this;\n this._notify();\n parentKeyToChildrenMap.forEach((state) => {\n state._notifyAll();\n });\n }\n\n _cleanupStaleNodes() {\n return reaction(\n () => this.collection.result.keyedItems,\n (keyedItems) => {\n const { parentKeyToChildrenMap } = this;\n // remove children that are not in the collection\n const keys = new Set(keyedItems.map((item) => item.key));\n const mapKeys = Array.from(parentKeyToChildrenMap.keys());\n\n for (const key of mapKeys) {\n if (keys.has(key)) {\n continue;\n }\n\n parentKeyToChildrenMap.delete(key);\n }\n },\n );\n }\n\n init({ skipCollectionInit }: { skipCollectionInit?: boolean } = {}) {\n const { node, initTask, nestedTable, collection } = this;\n\n const { nestedTableDragAndDrop } = nestedTable;\n\n const disposers = [\n node.init({ skipCollectionInit }),\n nestedTableDragAndDrop?.initCollection(collection),\n this._cleanupStaleNodes(),\n ];\n\n initTask.runOnce(async () => {\n node.initTask.runOnce();\n await node.initTask.status.promise;\n\n await runInAction(async () => {\n if (!nestedTable.isFetchAllAborted) {\n await this._preRegisterAll();\n if (this.childrenDepth === 0 || node._notifyAll) {\n this._notifyAll();\n }\n }\n return;\n });\n });\n\n return () => {\n disposers.forEach((d) => d?.());\n };\n }\n\n createNode({\n parent,\n notifyAll,\n }: {\n parent: KeyedItem<any>;\n notifyAll?: boolean;\n }): NestedTableNodeState<C, any, any> | null {\n const { nestedTable, node, childrenDepth, parentKeyToChildrenMap } = this;\n\n const existing = parentKeyToChildrenMap.get(parent.key);\n\n if (existing != null) {\n return existing;\n }\n\n const nextLevelDescriptor = nestedTable.levels[childrenDepth + 1];\n\n if (nextLevelDescriptor == null) {\n return null;\n }\n\n const nextLevelNode = node._createNode(parent, {\n levelDescriptor: nextLevelDescriptor,\n notifyAll,\n });\n\n if (nextLevelNode == null) {\n return null;\n }\n\n return new NestedTableNodeState({\n parent,\n parentNode: this,\n nestedTable,\n node: nextLevelNode,\n levelDescriptor: nextLevelDescriptor,\n });\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_bexCore","require","_mobx","_NestedTableNodeStateBIReporter","_getNodeOrLeaf","_NestedTableNodeStateOptimisticActions","NestedTableNodeState","constructor","params","_defineProperty2","default","TaskState","Map","createAtom","node","collection","retryErrorState","nestedTable","parentNode","parent","levelDescriptor","bi","NestedTableNodeStateBIReporter","multi","MultiCollectionSupport","collections","makeObservable","keyedItems","computed","_keyedItemsMap","_allKeyedItemsMap","_allKeyedItems","_keyedItemsIfExpanded","_isNotExpandableWhenEmpty","init","action","createNode","_preRegisterAll","_toggleExpand","_notify","_notifyAll","deepestBranchDepth","unprocessedMap","getKeyedItem","hasExpandableItems","_childrenCount","_register","result","_pages","itemKey","_pagesAtom","reportObserved","unprocessed","flatMap","page","map","item","key","children","optimisticActions","NestedTableNodeStateOptimisticActions","flatModeCollection","_this$nestedTable$wra","wrapper","flat","sections","find","section","levelDescriptors","includes","depth","_this$parentNode","childrenDepth","parentKeyToChildrenMap","parentKeyToChildrenMapAtom","reduce","acc","keyedItem","_parentKeyToChildrenM","Math","max","get","id","length","some","_parentKeyToChildrenM2","_expanded","columns","renderMainColumn","showHoverHighlight","hoveredOrParentHovered","_changeHover","hovered","showEmptyState","showLoadingState","showInitialLoader","showRefreshLoader","showErrorState","errorStatus","isFetchAllAborted","_isExpandableActionDisabled","_this$levelDescriptor","_this$levelDescriptor2","expandable","call","isNotExpandable","Array","fill","_","index","pageIndex","indexWithinPage","state","originalKeyedItem","undefined","_getKeyedItems","onlyExpanded","from","values","childrenNode","getDescendants","getNodeOrLeaf","_getNode","getParent","getData","getItem","toggleExpand","expanded","getKeyedItemByIndex","ind","set","delete","_refreshAll","_resetReactQuery","moveToFirstPage","_this$parentNode2","promise","reportChanged","runInAction","_this$parentNode3","Promise","all","dispose","initTask","status","forEach","_cleanupStaleNodes","reaction","keys","Set","mapKeys","has","skipCollectionInit","nestedTableDragAndDrop","disposers","initCollection","runOnce","d","notifyAll","existing","nextLevelDescriptor","levels","nextLevelNode","_createNode","exports"],"sources":["../../../../src/state/NestedTableState/NestedTableNodeState.ts"],"sourcesContent":["import {\n CollectionState,\n FiltersMap,\n KeyedItem,\n MultiCollectionSupport,\n TaskState,\n} from '@wix/bex-core';\nimport { NestedCollectionNodeState } from './NestedCollectionNodeState';\nimport {\n action,\n computed,\n createAtom,\n makeObservable,\n reaction,\n runInAction,\n} from 'mobx';\nimport { TableColumn } from '../../model';\nimport { NestedTableNestedModeState } from './NestedTableNestedModeState';\nimport { ReactNode } from 'react';\nimport { NestedTableNodeStateBIReporter } from './NestedTableNodeStateBIReporter';\nimport { NestedTableLevelDescriptor } from './NestedTableLevelDescriptor';\nimport { NestedTableNodeStatePublicAPI } from './NestedTableNodeStatePublicAPI';\nimport { getNodeOrLeaf } from './getNodeOrLeaf';\nimport { NestedTableNodeStateOptimisticActions } from './NestedTableNodeStateOptimisticActions';\n\nexport interface NestedTableDataItem<\n C extends string,\n T,\n F extends FiltersMap,\n> {\n state: NestedTableNodeState<C, T, F>;\n originalKeyedItem: KeyedItem<T>;\n}\n\nexport interface NestedTableSkeletonItem<\n C extends string,\n T,\n F extends FiltersMap,\n> {\n state: NestedTableNodeState<C, T, F>;\n originalKeyedItem: undefined;\n}\n\nexport type NestedTableItem<C extends string, T, F extends FiltersMap> =\n | NestedTableDataItem<C, T, F>\n | NestedTableSkeletonItem<C, T, F>;\n\nexport type NestedTableKeyedItem<\n C extends string,\n T,\n F extends FiltersMap,\n> = KeyedItem<NestedTableItem<C, T, F>>;\n\nexport type RenderMainColumn<T> = (item: T) => {\n title?: string;\n subtitle?: string;\n image?: ReactNode;\n};\n\nexport type NestedTableNestColumns<C extends string, T> = Partial<\n Record<C, TableColumn<T>['render']>\n>;\n\nexport interface NestedTableNodeStateParams<\n C extends string,\n T,\n F extends FiltersMap,\n> {\n readonly nestedTable: NestedTableNestedModeState<C>;\n readonly node: NestedCollectionNodeState<T, F>;\n readonly levelDescriptor: NestedTableLevelDescriptor<C, T, F>;\n readonly parentNode: NestedTableNodeState<C, any, any> | null;\n readonly parent: KeyedItem<unknown> | null;\n readonly preRegister?: boolean;\n}\n\nexport class NestedTableNodeState<C extends string, T, F extends FiltersMap>\n implements NestedTableNodeStatePublicAPI<C, T, F>\n{\n readonly nestedTable;\n readonly node;\n\n readonly levelDescriptor;\n readonly parentNode;\n readonly parent;\n readonly bi: NestedTableNodeStateBIReporter<C, T, F>;\n\n readonly multi;\n\n _rowNum?: number;\n\n readonly initTask = new TaskState();\n\n readonly parentKeyToChildrenMap = new Map<\n string,\n NestedTableNodeState<C, any, any>\n >();\n\n readonly parentKeyToChildrenMapAtom = createAtom(\n 'parentKeyToChildrenMapAtom',\n );\n\n constructor(params: NestedTableNodeStateParams<C, T, F>) {\n this.nestedTable = params.nestedTable;\n this.node = params.node;\n this.parentNode = params.parentNode;\n this.parent = params.parent;\n this.levelDescriptor = params.levelDescriptor;\n this.bi = new NestedTableNodeStateBIReporter(this);\n\n this.multi = new MultiCollectionSupport({\n collections: [this.node.collection],\n });\n\n makeObservable(this, {\n keyedItems: computed,\n _keyedItemsMap: computed,\n _allKeyedItemsMap: computed,\n _allKeyedItems: computed,\n _keyedItemsIfExpanded: computed,\n _isNotExpandableWhenEmpty: computed,\n init: action,\n createNode: action,\n _preRegisterAll: action,\n _toggleExpand: action,\n _notify: action,\n _notifyAll: action,\n deepestBranchDepth: computed,\n unprocessedMap: computed,\n getKeyedItem: action,\n hasExpandableItems: computed,\n _childrenCount: computed,\n });\n\n this._register();\n }\n\n get collection() {\n return this.node.collection;\n }\n\n get unprocessedMap() {\n const {\n collection: { result },\n } = this;\n const { _pages, itemKey, _pagesAtom } = result;\n _pagesAtom.reportObserved();\n return new Map(\n _pages.unprocessed.flatMap((page) =>\n page.map((item) => {\n const key = itemKey(item);\n return [key, item];\n }),\n ),\n );\n }\n\n get children() {\n return this.collection;\n }\n\n get optimisticActions() {\n return new NestedTableNodeStateOptimisticActions(this);\n }\n\n get flatModeCollection(): CollectionState<T, F> | undefined {\n return this.nestedTable.wrapper.flat.sections.find((section) =>\n section.levelDescriptors.includes(this.levelDescriptor),\n )?.collection;\n }\n\n get depth() {\n return this.parentNode?.childrenDepth ?? 0;\n }\n\n get childrenDepth() {\n return this.levelDescriptor.depth;\n }\n\n get deepestBranchDepth(): number {\n const { node, parentKeyToChildrenMap, parentKeyToChildrenMapAtom } = this;\n const {\n collection: {\n result: { keyedItems },\n },\n } = node;\n\n parentKeyToChildrenMapAtom.reportObserved();\n\n return (\n keyedItems.reduce((acc, keyedItem) => {\n return Math.max(\n acc,\n parentKeyToChildrenMap.get(keyedItem.id)?.deepestBranchDepth ?? 0,\n );\n }, 0) + (keyedItems.length ? 1 : 0)\n );\n }\n\n get hasExpandableItems() {\n const { parentKeyToChildrenMap, parentKeyToChildrenMapAtom } = this;\n parentKeyToChildrenMapAtom.reportObserved();\n\n return this.node.collection.result.keyedItems.some(\n (item) => (parentKeyToChildrenMap.get(item.id)?._childrenCount ?? 0) > 0,\n );\n }\n\n get _childrenCount() {\n return this.node.collection.result.keyedItems.length ?? 0;\n }\n\n get _expanded() {\n return this.node._expanded;\n }\n\n get columns() {\n return this.levelDescriptor.columns;\n }\n\n get renderMainColumn() {\n return this.levelDescriptor.renderMainColumn;\n }\n\n get showHoverHighlight() {\n return this.node.hoveredOrParentHovered;\n }\n\n _changeHover(hovered: boolean) {\n this.node._changeHover(hovered);\n }\n\n get showEmptyState() {\n return this.node.collection.showEmptyState;\n }\n\n get showLoadingState() {\n return (\n this.node.collection.showInitialLoader ||\n this.node.collection.showRefreshLoader\n );\n }\n\n get showErrorState() {\n return this.node.collection.showErrorState;\n }\n\n get errorStatus() {\n return this.node.collection.result.errorStatus;\n }\n\n retryErrorState = () => this.node.collection.retryErrorState();\n\n get _isNotExpandableWhenEmpty() {\n const {\n nestedTable: { isFetchAllAborted },\n node: {\n collection: { showEmptyState },\n },\n } = this;\n return !isFetchAllAborted && showEmptyState;\n }\n\n _isExpandableActionDisabled(item: T) {\n return this.levelDescriptor.expandable?.(item) === false;\n }\n\n isNotExpandable(item: T) {\n return (\n this._isNotExpandableWhenEmpty || this._isExpandableActionDisabled(item)\n );\n }\n\n get _keyedItemsIfExpanded(): NestedTableKeyedItem<C, any, any>[] {\n const {\n parent,\n nestedTable: { isFetchAllAborted },\n _expanded,\n node: {\n collection: { showRefreshLoader, showEmptyState, showErrorState },\n },\n } = this;\n\n if (!_expanded) {\n return [];\n }\n\n return [\n ...this.keyedItems,\n ...(parent &&\n isFetchAllAborted &&\n (showRefreshLoader || showEmptyState || showErrorState)\n ? new Array(1).fill(null).map((_, index) => ({\n id: `placeholder-states-${parent.key}`,\n key: `placeholder-states-${parent.key}`,\n index,\n pageIndex: 0,\n indexWithinPage: index,\n item: {\n state: this,\n originalKeyedItem: undefined,\n },\n }))\n : []),\n ];\n }\n\n get _keyedItemsMap(): Map<string, NestedTableKeyedItem<C, any, any>> {\n return new Map(\n this.keyedItems.map((keyedItem) => [keyedItem.key, keyedItem]),\n );\n }\n\n get _allKeyedItemsMap(): Map<string, NestedTableKeyedItem<C, any, any>> {\n return new Map(\n this._getKeyedItems({ onlyExpanded: false }).map((keyedItem) => [\n keyedItem.key,\n keyedItem,\n ]),\n );\n }\n\n get _allKeyedItems() {\n return Array.from(this._allKeyedItemsMap.values());\n }\n\n _getKeyedItems({\n onlyExpanded,\n }: {\n onlyExpanded?: boolean;\n }): NestedTableKeyedItem<C, any, any>[] {\n const { node, parentKeyToChildrenMap, parentKeyToChildrenMapAtom } = this;\n const {\n collection: {\n result: { keyedItems },\n },\n } = node;\n\n parentKeyToChildrenMapAtom.reportObserved();\n\n return keyedItems\n .flatMap((keyedItem) => {\n const childrenNode = parentKeyToChildrenMap.get(keyedItem.key);\n\n return [\n {\n ...keyedItem,\n item: {\n state: this,\n originalKeyedItem: keyedItem,\n },\n },\n ...(childrenNode\n ? onlyExpanded\n ? childrenNode._keyedItemsIfExpanded\n : childrenNode._allKeyedItems\n : []),\n ];\n })\n .map((keyedItem, index) => ({ ...keyedItem, index }));\n }\n\n get keyedItems(): NestedTableKeyedItem<C, any, any>[] {\n return this._getKeyedItems({ onlyExpanded: true });\n }\n\n getKeyedItem(key: string) {\n return this._keyedItemsMap.get(key);\n }\n\n getDescendants<TD, FD extends FiltersMap>(): NestedTableNodeStatePublicAPI<\n C,\n TD,\n FD\n >[] {\n const { collection } = this;\n\n return collection.result.keyedItems.flatMap((keyedItem) => {\n const node = getNodeOrLeaf(this, keyedItem);\n return [node, ...node.getDescendants<TD, FD>()];\n });\n }\n\n _getNode<TD, FD extends FiltersMap>(key: string) {\n const node = this._keyedItemsMap.get(key);\n return node?.item.state.parentKeyToChildrenMap.get(key) as\n | NestedTableNodeState<C, TD, FD>\n | undefined;\n }\n\n getParent<TD, FD extends FiltersMap>(): NestedTableNodeStatePublicAPI<\n C,\n TD,\n FD\n > | null {\n return this.parentNode;\n }\n\n getData<TD>(): TD | null {\n const { parent, parentNode } = this;\n if (parent == null || parentNode == null) {\n return null;\n }\n return parentNode.collection.getItem(parent.key);\n }\n\n toggleExpand() {\n this._toggleExpand();\n }\n\n get expanded() {\n return this._expanded;\n }\n\n getKeyedItemByIndex(ind: number) {\n return this.keyedItems[ind];\n }\n\n _register() {\n const { parent, parentNode } = this;\n\n if (parent == null || parentNode == null) {\n return;\n }\n\n parentNode.parentKeyToChildrenMap.set(parent.key, this);\n\n return () => {\n parentNode.parentKeyToChildrenMap.delete(parent.key);\n };\n }\n\n async _refreshAll() {\n const { collection } = this;\n\n collection._resetReactQuery();\n await collection.moveToFirstPage();\n const keyedItems = collection.result.keyedItems;\n\n for (const keyedItem of keyedItems) {\n const node = this.createNode({ parent: keyedItem });\n\n if (node == null) {\n continue;\n }\n\n await node._refreshAll();\n }\n }\n\n async _toggleExpand() {\n const promise = this.node._toggleExpand();\n\n this.parentNode?.parentKeyToChildrenMapAtom.reportChanged();\n await promise;\n runInAction(() => {\n this.parentNode?.parentKeyToChildrenMapAtom.reportChanged();\n });\n }\n\n async _preRegisterAll() {\n const { node } = this;\n const {\n collection: {\n result: { keyedItems },\n },\n } = node;\n\n await Promise.all(\n keyedItems.map(async (keyedItem) => {\n const state = this.createNode({ parent: keyedItem });\n if (state == null) {\n return;\n }\n const dispose = state.init();\n await state.initTask.status.promise;\n dispose();\n }),\n );\n }\n\n _notify() {\n const { parentKeyToChildrenMapAtom } = this;\n parentKeyToChildrenMapAtom.reportChanged();\n }\n\n _notifyAll() {\n const { parentKeyToChildrenMap } = this;\n this._notify();\n parentKeyToChildrenMap.forEach((state) => {\n state._notifyAll();\n });\n }\n\n _cleanupStaleNodes() {\n return reaction(\n () => this.collection.result.keyedItems,\n (keyedItems) => {\n const { parentKeyToChildrenMap } = this;\n // remove children that are not in the collection\n const keys = new Set(keyedItems.map((item) => item.key));\n const mapKeys = Array.from(parentKeyToChildrenMap.keys());\n\n for (const key of mapKeys) {\n if (keys.has(key)) {\n continue;\n }\n\n parentKeyToChildrenMap.delete(key);\n }\n },\n );\n }\n\n init({ skipCollectionInit }: { skipCollectionInit?: boolean } = {}) {\n const { node, initTask, nestedTable, collection } = this;\n\n const { nestedTableDragAndDrop } = nestedTable;\n\n const disposers = [\n node.init({ skipCollectionInit }),\n nestedTableDragAndDrop?.initCollection(collection),\n this._cleanupStaleNodes(),\n ];\n\n initTask.runOnce(async () => {\n node.initTask.runOnce();\n await node.initTask.status.promise;\n\n await runInAction(async () => {\n if (!nestedTable.isFetchAllAborted) {\n await this._preRegisterAll();\n if (this.childrenDepth === 0 || node._notifyAll) {\n this._notifyAll();\n }\n }\n return;\n });\n });\n\n return () => {\n disposers.forEach((d) => d?.());\n };\n }\n\n createNode({\n parent,\n notifyAll,\n }: {\n parent: KeyedItem<any>;\n notifyAll?: boolean;\n }): NestedTableNodeState<C, any, any> | null {\n const { nestedTable, node, childrenDepth, parentKeyToChildrenMap } = this;\n\n const existing = parentKeyToChildrenMap.get(parent.key);\n\n if (existing != null) {\n return existing;\n }\n\n const nextLevelDescriptor = nestedTable.levels[childrenDepth + 1];\n\n if (nextLevelDescriptor == null) {\n return null;\n }\n\n const nextLevelNode = node._createNode(parent, {\n levelDescriptor: nextLevelDescriptor,\n notifyAll,\n });\n\n if (nextLevelNode == null) {\n return null;\n }\n\n return new NestedTableNodeState({\n parent,\n parentNode: this,\n nestedTable,\n node: nextLevelNode,\n levelDescriptor: nextLevelDescriptor,\n });\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -16,9 +16,15 @@ function setViewsState(toolbar, viewsProps) {
|
|
|
16
16
|
learnMoreLink,
|
|
17
17
|
viewNamePlaceholder
|
|
18
18
|
} = viewsProps;
|
|
19
|
+
const {
|
|
20
|
+
container
|
|
21
|
+
} = toolbar;
|
|
22
|
+
if (container.isPanelLayout) {
|
|
23
|
+
return null;
|
|
24
|
+
}
|
|
19
25
|
return toolbar.viewsState ?? (toolbar.viewsState = new _CollectionViewsState.CollectionViewsState({
|
|
20
26
|
table: toolbar,
|
|
21
|
-
container
|
|
27
|
+
container,
|
|
22
28
|
presets: (0, _presetsToCategories.presetsToCategories)(presets),
|
|
23
29
|
allItemsViewProps,
|
|
24
30
|
onDeleteView,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_CollectionViewsState","require","_presetsToCategories","setViewsState","toolbar","viewsProps","presets","onSaveView","onSaveViewChanges","onDeleteView","onRenameView","onSetAsDefaultView","allItemsViewProps","learnMoreLink","viewNamePlaceholder","viewsState","CollectionViewsState","table","
|
|
1
|
+
{"version":3,"names":["_CollectionViewsState","require","_presetsToCategories","setViewsState","toolbar","viewsProps","presets","onSaveView","onSaveViewChanges","onDeleteView","onRenameView","onSetAsDefaultView","allItemsViewProps","learnMoreLink","viewNamePlaceholder","container","isPanelLayout","viewsState","CollectionViewsState","table","presetsToCategories"],"sources":["../../../src/state/setViewsState.ts"],"sourcesContent":["import { CollectionViewsState } from './CollectionViewsState';\nimport { presetsToCategories } from './presetsToCategories';\n\nimport { FiltersMap } from '@wix/bex-core';\nimport { ToolbarCollectionState } from './ToolbarCollectionState';\nimport { ViewsProps } from '../index';\n\nexport function setViewsState<T, F extends FiltersMap>(\n toolbar: ToolbarCollectionState<T, F>,\n viewsProps: ViewsProps<F>,\n) {\n const {\n presets,\n onSaveView,\n onSaveViewChanges,\n onDeleteView,\n onRenameView,\n onSetAsDefaultView,\n allItemsViewProps,\n learnMoreLink,\n viewNamePlaceholder,\n } = viewsProps;\n\n const { container } = toolbar;\n\n if (container.isPanelLayout) {\n return null;\n }\n\n return (toolbar.viewsState ??= new CollectionViewsState({\n table: toolbar,\n container,\n presets: presetsToCategories(presets),\n allItemsViewProps,\n onDeleteView,\n onSaveView,\n onSaveViewChanges,\n onSetAsDefaultView,\n onRenameView,\n learnMoreLink,\n viewNamePlaceholder,\n }));\n}\n"],"mappings":";;;;AAAA,IAAAA,qBAAA,GAAAC,OAAA;AACA,IAAAC,oBAAA,GAAAD,OAAA;AAMO,SAASE,aAAaA,CAC3BC,OAAqC,EACrCC,UAAyB,EACzB;EACA,MAAM;IACJC,OAAO;IACPC,UAAU;IACVC,iBAAiB;IACjBC,YAAY;IACZC,YAAY;IACZC,kBAAkB;IAClBC,iBAAiB;IACjBC,aAAa;IACbC;EACF,CAAC,GAAGT,UAAU;EAEd,MAAM;IAAEU;EAAU,CAAC,GAAGX,OAAO;EAE7B,IAAIW,SAAS,CAACC,aAAa,EAAE;IAC3B,OAAO,IAAI;EACb;EAEA,OAAQZ,OAAO,CAACa,UAAU,KAAlBb,OAAO,CAACa,UAAU,GAAK,IAAIC,0CAAoB,CAAC;IACtDC,KAAK,EAAEf,OAAO;IACdW,SAAS;IACTT,OAAO,EAAE,IAAAc,wCAAmB,EAACd,OAAO,CAAC;IACrCM,iBAAiB;IACjBH,YAAY;IACZF,UAAU;IACVC,iBAAiB;IACjBG,kBAAkB;IAClBD,YAAY;IACZG,aAAa;IACbC;EACF,CAAC,CAAC;AACJ","ignoreList":[]}
|