@wix/patterns 1.425.0 → 1.427.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/bm/testProviderPropsOverrides.js +4 -1
- package/dist/cjs/bm/testProviderPropsOverrides.js.map +1 -1
- package/dist/cjs/components/ActionModal/CustomActionModal.js +5 -3
- package/dist/cjs/components/ActionModal/CustomActionModal.js.map +1 -1
- package/dist/cjs/components/CardContainer/CardContainer.st.css.js +2 -2
- package/dist/cjs/components/CardContainer/CardContainer.st.css.js.map +1 -1
- package/dist/cjs/components/CmsFieldManagement/CmsFieldForm.st.css.js +3 -3
- package/dist/cjs/components/CmsFieldManagement/CmsFieldForm.st.css.js.map +1 -1
- package/dist/cjs/components/CmsFieldManagement/CmsFieldModal.st.css.js +3 -3
- package/dist/cjs/components/CmsFieldManagement/CmsFieldModal.st.css.js.map +1 -1
- package/dist/cjs/components/CmsFieldManagement/FieldEditorModal.js +5 -3
- package/dist/cjs/components/CmsFieldManagement/FieldEditorModal.js.map +1 -1
- package/dist/cjs/components/CmsFieldManagement/Sections/ValidationAndDefaultsSection.st.css.js +3 -3
- package/dist/cjs/components/CmsFieldManagement/Sections/ValidationAndDefaultsSection.st.css.js.map +1 -1
- package/dist/cjs/components/CmsFieldManagement/formFields/CharactersLimitInput.st.css.js +3 -3
- package/dist/cjs/components/CmsFieldManagement/formFields/CharactersLimitInput.st.css.js.map +1 -1
- package/dist/cjs/components/Collapse/Collapse.st.css.js +3 -3
- package/dist/cjs/components/Collapse/Collapse.st.css.js.map +1 -1
- package/dist/cjs/components/CollectionPageNew/CollectionPage.st.css.js +2 -2
- package/dist/cjs/components/CollectionPageNew/CollectionPage.st.css.js.map +1 -1
- package/dist/cjs/components/CollectionSectionHeader/CollectionSectionHeader.st.css.js +3 -3
- package/dist/cjs/components/CollectionSectionHeader/CollectionSectionHeader.st.css.js.map +1 -1
- package/dist/cjs/components/CollectionTable/CollectionTable.js +12 -10
- package/dist/cjs/components/CollectionTable/CollectionTable.js.map +1 -1
- package/dist/cjs/components/CollectionTable/CollectionTable.st.css.js +2 -2
- package/dist/cjs/components/CollectionTable/CollectionTable.st.css.js.map +1 -1
- package/dist/cjs/components/CollectionTable/CollectionTableWSRTable.st.css.js +2 -2
- package/dist/cjs/components/CollectionTable/CollectionTableWSRTable.st.css.js.map +1 -1
- package/dist/cjs/components/CollectionToolbar/CollectionToolbar.st.css.js +5 -5
- package/dist/cjs/components/CollectionToolbar/CollectionToolbar.st.css.js.map +1 -1
- package/dist/cjs/components/CollectionToolbar/SearchOrCustomFilter.st.css.js +4 -4
- package/dist/cjs/components/CollectionToolbar/SearchOrCustomFilter.st.css.js.map +1 -1
- package/dist/cjs/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js +2 -2
- package/dist/cjs/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js.map +1 -1
- package/dist/cjs/components/CollectionViewsDropdown/ViewsDropdown.st.css.js +2 -2
- package/dist/cjs/components/CollectionViewsDropdown/ViewsDropdown.st.css.js.map +1 -1
- package/dist/cjs/components/DataExtension/DataExtensionImportFieldEditor.js +74 -0
- package/dist/cjs/components/DataExtension/DataExtensionImportFieldEditor.js.map +1 -0
- package/dist/cjs/components/DataExtension/platformizedImportRef.js +124 -0
- package/dist/cjs/components/DataExtension/platformizedImportRef.js.map +1 -0
- package/dist/cjs/components/DragHandle/DragHandle.st.css.js +2 -2
- package/dist/cjs/components/DragHandle/DragHandle.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/EditableCell.st.css.js +3 -3
- package/dist/cjs/components/EditableTable/EditableCell.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/EditableTable.js +10 -9
- package/dist/cjs/components/EditableTable/EditableTable.js.map +1 -1
- package/dist/cjs/components/EditableTable/HeaderActionsPopover.st.css.js +2 -2
- package/dist/cjs/components/EditableTable/HeaderActionsPopover.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/cellTypes/CellViewLayout.st.css.js +2 -2
- package/dist/cjs/components/EditableTable/cellTypes/CellViewLayout.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/cellTypes/address/Edit.st.css.js +3 -3
- package/dist/cjs/components/EditableTable/cellTypes/address/Edit.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/cellTypes/array/Edit.st.css.js +3 -3
- package/dist/cjs/components/EditableTable/cellTypes/array/Edit.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/cellTypes/boolean/Edit.st.css.js +3 -3
- package/dist/cjs/components/EditableTable/cellTypes/boolean/Edit.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/cellTypes/boolean/View.st.css.js +3 -3
- package/dist/cjs/components/EditableTable/cellTypes/boolean/View.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/cellTypes/color/Edit.st.css.js +2 -2
- package/dist/cjs/components/EditableTable/cellTypes/color/Edit.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/cellTypes/date/Edit.st.css.js +3 -3
- package/dist/cjs/components/EditableTable/cellTypes/date/Edit.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/cellTypes/date/View.st.css.js +2 -2
- package/dist/cjs/components/EditableTable/cellTypes/date/View.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/cellTypes/datetime/Edit.st.css.js +8 -8
- package/dist/cjs/components/EditableTable/cellTypes/datetime/Edit.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/cellTypes/datetime/View.st.css.js +7 -7
- package/dist/cjs/components/EditableTable/cellTypes/datetime/View.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/cellTypes/email/Edit.st.css.js +3 -3
- package/dist/cjs/components/EditableTable/cellTypes/email/Edit.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/cellTypes/email/View.st.css.js +2 -2
- package/dist/cjs/components/EditableTable/cellTypes/email/View.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/cellTypes/number/Edit.st.css.js +3 -3
- package/dist/cjs/components/EditableTable/cellTypes/number/Edit.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/cellTypes/number/View.st.css.js +3 -3
- package/dist/cjs/components/EditableTable/cellTypes/number/View.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/cellTypes/object/Edit.st.css.js +3 -3
- package/dist/cjs/components/EditableTable/cellTypes/object/Edit.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/cellTypes/object/View.st.css.js +2 -2
- package/dist/cjs/components/EditableTable/cellTypes/object/View.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/cellTypes/select/Edit.st.css.js +3 -3
- package/dist/cjs/components/EditableTable/cellTypes/select/Edit.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/cellTypes/text/Edit.st.css.js +4 -4
- package/dist/cjs/components/EditableTable/cellTypes/text/Edit.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/cellTypes/text/View.st.css.js +2 -2
- package/dist/cjs/components/EditableTable/cellTypes/text/View.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/cellTypes/time/Edit.st.css.js +4 -4
- package/dist/cjs/components/EditableTable/cellTypes/time/Edit.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/cellTypes/url/Edit.st.css.js +3 -3
- package/dist/cjs/components/EditableTable/cellTypes/url/Edit.st.css.js.map +1 -1
- package/dist/cjs/components/EditableTable/cellTypes/url/View.st.css.js +5 -5
- package/dist/cjs/components/EditableTable/cellTypes/url/View.st.css.js.map +1 -1
- package/dist/cjs/components/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/FieldCell/FieldCell.js +1 -1
- package/dist/cjs/components/FieldCell/FieldCell.js.map +1 -1
- package/dist/cjs/components/Heading/Heading.st.css.js +2 -2
- package/dist/cjs/components/Heading/Heading.st.css.js.map +1 -1
- package/dist/cjs/components/ImportButton/CAIRO-4118-tasks.md +4 -4
- package/dist/cjs/components/ImportButton/CmsImportFieldEditor.js +66 -0
- package/dist/cjs/components/ImportButton/CmsImportFieldEditor.js.map +1 -0
- package/dist/cjs/components/ImportButton/ImportButton.js +13 -21
- package/dist/cjs/components/ImportButton/ImportButton.js.map +1 -1
- package/dist/cjs/components/ImportButton/ImportButtonModalLayout.js +24 -55
- package/dist/cjs/components/ImportButton/ImportButtonModalLayout.js.map +1 -1
- package/dist/cjs/components/ImportButton/ImportIdCollisionControl.js +1 -1
- package/dist/cjs/components/ImportButton/ImportIdCollisionControl.js.map +1 -1
- package/dist/cjs/components/ImportButton/ImportModal.uni.driver.js +15 -0
- package/dist/cjs/components/ImportButton/ImportModal.uni.driver.js.map +1 -1
- package/dist/cjs/components/ImportButton/ImportProps.js.map +1 -1
- package/dist/cjs/components/ImportButton/ImportRequiredFieldsSideNote.js +97 -0
- package/dist/cjs/components/ImportButton/ImportRequiredFieldsSideNote.js.map +1 -0
- package/dist/cjs/components/ImportButton/ImportStepConfiguration.js +76 -37
- package/dist/cjs/components/ImportButton/ImportStepConfiguration.js.map +1 -1
- package/dist/cjs/components/ImportButton/ImportStepSummary.js +159 -0
- package/dist/cjs/components/ImportButton/ImportStepSummary.js.map +1 -0
- package/dist/cjs/components/ImportButton/ImportStepUpload.st.css.js +3 -3
- package/dist/cjs/components/ImportButton/ImportStepUpload.st.css.js.map +1 -1
- package/dist/cjs/components/ImportButton/ImportStepper.js +7 -3
- package/dist/cjs/components/ImportButton/ImportStepper.js.map +1 -1
- package/dist/cjs/components/ImportButton/getImportModalStepProps.js +73 -15
- package/dist/cjs/components/ImportButton/getImportModalStepProps.js.map +1 -1
- package/dist/cjs/components/InputOverflow/InputOverflow.st.css.js +2 -2
- package/dist/cjs/components/InputOverflow/InputOverflow.st.css.js.map +1 -1
- package/dist/cjs/components/LoadingRow/LoadingRow.st.css.js +3 -3
- package/dist/cjs/components/LoadingRow/LoadingRow.st.css.js.map +1 -1
- package/dist/cjs/components/MaxHeightText/MaxHeightText.st.css.js +2 -2
- package/dist/cjs/components/MaxHeightText/MaxHeightText.st.css.js.map +1 -1
- package/dist/cjs/components/MaxLines/MaxLines.st.css.js +2 -2
- package/dist/cjs/components/MaxLines/MaxLines.st.css.js.map +1 -1
- package/dist/cjs/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js +5 -5
- package/dist/cjs/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js.map +1 -1
- package/dist/cjs/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.js +2 -2
- package/dist/cjs/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.js.map +1 -1
- package/dist/cjs/components/NestedTable/NestedTableRow.st.css.js +5 -5
- package/dist/cjs/components/NestedTable/NestedTableRow.st.css.js.map +1 -1
- package/dist/cjs/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js +2 -2
- package/dist/cjs/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js.map +1 -1
- package/dist/cjs/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js +2 -2
- package/dist/cjs/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js.map +1 -1
- package/dist/cjs/components/PickerContent/PickerContent.st.css.js +2 -2
- package/dist/cjs/components/PickerContent/PickerContent.st.css.js.map +1 -1
- package/dist/cjs/components/PickerContent/PickerContentAdditionalStep.st.css.js +4 -4
- package/dist/cjs/components/PickerContent/PickerContentAdditionalStep.st.css.js.map +1 -1
- package/dist/cjs/components/PickerTableListItem/PickerTableListItem.st.css.js +2 -2
- package/dist/cjs/components/PickerTableListItem/PickerTableListItem.st.css.js.map +1 -1
- package/dist/cjs/components/SchemaSource/schemaFieldManagement.js +13 -6
- package/dist/cjs/components/SchemaSource/schemaFieldManagement.js.map +1 -1
- package/dist/cjs/components/SchemaSource/schemaFieldsSource.js +5 -1
- package/dist/cjs/components/SchemaSource/schemaFieldsSource.js.map +1 -1
- package/dist/cjs/components/SchemaSource/schemaImportRef.js +145 -0
- package/dist/cjs/components/SchemaSource/schemaImportRef.js.map +1 -0
- package/dist/cjs/components/SchemaSource/standardFieldTypeLabels.js +40 -0
- package/dist/cjs/components/SchemaSource/standardFieldTypeLabels.js.map +1 -0
- package/dist/cjs/components/SchemaSource/tableSchemaSource.js +74 -8
- package/dist/cjs/components/SchemaSource/tableSchemaSource.js.map +1 -1
- package/dist/cjs/components/ScrollableContent/ScrollableContent.st.css.js +2 -2
- package/dist/cjs/components/ScrollableContent/ScrollableContent.st.css.js.map +1 -1
- package/dist/cjs/components/SetupWidget/SetupWidget.st.css.js +9 -9
- package/dist/cjs/components/SetupWidget/SetupWidget.st.css.js.map +1 -1
- package/dist/cjs/components/SkeletonCard/SkeletonCard.st.css.js +3 -3
- package/dist/cjs/components/SkeletonCard/SkeletonCard.st.css.js.map +1 -1
- package/dist/cjs/components/SlidingModal/SlidingModal.st.css.js +2 -2
- package/dist/cjs/components/SlidingModal/SlidingModal.st.css.js.map +1 -1
- package/dist/cjs/components/Table/AddFieldColumnHeader.js +100 -0
- package/dist/cjs/components/Table/AddFieldColumnHeader.js.map +1 -0
- package/dist/cjs/components/Table/AddFieldColumnHeader.st.css +36 -0
- package/dist/cjs/components/Table/AddFieldColumnHeader.st.css.js +24 -0
- package/dist/cjs/components/Table/AddFieldColumnHeader.st.css.js.map +1 -0
- 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.js +34 -44
- package/dist/cjs/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.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/TagsWidget/TagsWidgetContent.js +14 -24
- package/dist/cjs/components/TagsWidget/TagsWidgetContent.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/exports/schema.js +12 -0
- package/dist/cjs/exports/schema.js.map +1 -0
- package/dist/cjs/exports/testkit/index.js +4 -2
- package/dist/cjs/exports/testkit/index.js.map +1 -1
- package/dist/cjs/hooks/index.js +12 -0
- package/dist/cjs/hooks/index.js.map +1 -1
- package/dist/cjs/hooks/useCreateWSRColumnBase.js +17 -6
- package/dist/cjs/hooks/useCreateWSRColumnBase.js.map +1 -1
- package/dist/cjs/hooks/usePlatformizedImport.js +48 -0
- package/dist/cjs/hooks/usePlatformizedImport.js.map +1 -0
- package/dist/cjs/hooks/useReachBottom.js +41 -0
- package/dist/cjs/hooks/useReachBottom.js.map +1 -0
- package/dist/cjs/hooks/useSchemaImport.js +37 -0
- package/dist/cjs/hooks/useSchemaImport.js.map +1 -0
- package/dist/cjs/hooks/useTableCollection.js.map +1 -1
- package/dist/cjs/index.js +15 -3
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/schema/index.js +45 -0
- package/dist/cjs/schema/index.js.map +1 -0
- package/dist/cjs/schema/schemaCollectionOptions.js +27 -0
- package/dist/cjs/schema/schemaCollectionOptions.js.map +1 -0
- package/dist/cjs/schema/schemaSourceMutations.js +37 -0
- package/dist/cjs/schema/schemaSourceMutations.js.map +1 -0
- package/dist/cjs/schema/useCollection.js +14 -0
- package/dist/cjs/schema/useCollection.js.map +1 -0
- package/dist/cjs/schema/useEditableTableCollection.js +37 -0
- package/dist/cjs/schema/useEditableTableCollection.js.map +1 -0
- package/dist/cjs/schema/useGridCollection.js +23 -0
- package/dist/cjs/schema/useGridCollection.js.map +1 -0
- package/dist/cjs/schema/useLayoutSwitchCollection.js +39 -0
- package/dist/cjs/schema/useLayoutSwitchCollection.js.map +1 -0
- package/dist/cjs/schema/useTableCollection.js +23 -0
- package/dist/cjs/schema/useTableCollection.js.map +1 -0
- package/dist/cjs/state/CollectionFieldsSourceState.js +7 -0
- package/dist/cjs/state/CollectionFieldsSourceState.js.map +1 -1
- package/dist/cjs/state/CollectionPage/CollectionPageHeader.st.css.js +2 -2
- package/dist/cjs/state/CollectionPage/CollectionPageHeader.st.css.js.map +1 -1
- package/dist/cjs/state/FormPage/FormPageHeader.st.css.js +2 -2
- package/dist/cjs/state/FormPage/FormPageHeader.st.css.js.map +1 -1
- package/dist/cjs/state/TagsModalState.js +23 -1
- package/dist/cjs/state/TagsModalState.js.map +1 -1
- package/dist/cjs/styles.global.css +2 -2
- package/dist/cjs/test-utils/TagsMocks.js +31 -6
- package/dist/cjs/test-utils/TagsMocks.js.map +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/cjs/version.js.map +1 -1
- package/dist/docs/ImportButton.md +527 -0
- package/dist/docs/MultiAutoInlineCheckboxFilter.md +2 -2
- package/dist/docs/MultiInlineCheckboxFilter.md +2 -2
- package/dist/docs/Table.md +2 -1
- package/dist/docs/TableGridSwitch.md +2 -1
- package/dist/docs/index.json +46 -34
- package/dist/docs/usePlatformizedImport.md +59 -0
- package/dist/docs/useSchemaImport.md +53 -0
- package/dist/esm/bm/testProviderPropsOverrides.js +5 -2
- package/dist/esm/bm/testProviderPropsOverrides.js.map +1 -1
- package/dist/esm/components/ActionModal/CustomActionModal.js +2 -2
- package/dist/esm/components/ActionModal/CustomActionModal.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/CmsFieldManagement/CmsFieldForm.st.css.js +2 -2
- package/dist/esm/components/CmsFieldManagement/CmsFieldModal.st.css.js +2 -2
- package/dist/esm/components/CmsFieldManagement/FieldEditorModal.js +2 -2
- package/dist/esm/components/CmsFieldManagement/FieldEditorModal.js.map +1 -1
- package/dist/esm/components/CmsFieldManagement/Sections/ValidationAndDefaultsSection.st.css.js +2 -2
- package/dist/esm/components/CmsFieldManagement/formFields/CharactersLimitInput.st.css.js +2 -2
- package/dist/esm/components/Collapse/Collapse.st.css.js +2 -2
- package/dist/esm/components/CollectionPageNew/CollectionPage.st.css.js +2 -2
- package/dist/esm/components/CollectionPageNew/CollectionPage.st.css.js.map +1 -1
- package/dist/esm/components/CollectionSectionHeader/CollectionSectionHeader.st.css.js +2 -2
- package/dist/esm/components/CollectionTable/CollectionTable.js +2 -1
- package/dist/esm/components/CollectionTable/CollectionTable.js.map +1 -1
- package/dist/esm/components/CollectionTable/CollectionTable.st.css.js +2 -2
- package/dist/esm/components/CollectionTable/CollectionTableWSRTable.st.css.js +2 -2
- package/dist/esm/components/CollectionTable/CollectionTableWSRTable.st.css.js.map +1 -1
- package/dist/esm/components/CollectionToolbar/CollectionToolbar.st.css.js +2 -2
- package/dist/esm/components/CollectionToolbar/SearchOrCustomFilter.st.css.js +2 -2
- package/dist/esm/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js +2 -2
- package/dist/esm/components/CollectionViewsDropdown/ViewsDropdown.st.css.js +2 -2
- package/dist/esm/components/CollectionViewsDropdown/ViewsDropdown.st.css.js.map +1 -1
- package/dist/esm/components/DataExtension/DataExtensionImportFieldEditor.js +58 -0
- package/dist/esm/components/DataExtension/DataExtensionImportFieldEditor.js.map +1 -0
- package/dist/esm/components/DataExtension/platformizedImportRef.js +88 -0
- package/dist/esm/components/DataExtension/platformizedImportRef.js.map +1 -0
- package/dist/esm/components/DragHandle/DragHandle.st.css.js +2 -2
- package/dist/esm/components/DragHandle/DragHandle.st.css.js.map +1 -1
- package/dist/esm/components/EditableTable/EditableCell.st.css.js +2 -2
- package/dist/esm/components/EditableTable/EditableTable.js +1 -1
- package/dist/esm/components/EditableTable/EditableTable.js.map +1 -1
- package/dist/esm/components/EditableTable/HeaderActionsPopover.st.css.js +2 -2
- package/dist/esm/components/EditableTable/cellTypes/CellViewLayout.st.css.js +2 -2
- package/dist/esm/components/EditableTable/cellTypes/address/Edit.st.css.js +2 -2
- package/dist/esm/components/EditableTable/cellTypes/address/Edit.st.css.js.map +1 -1
- package/dist/esm/components/EditableTable/cellTypes/array/Edit.st.css.js +2 -2
- package/dist/esm/components/EditableTable/cellTypes/boolean/Edit.st.css.js +2 -2
- package/dist/esm/components/EditableTable/cellTypes/boolean/Edit.st.css.js.map +1 -1
- package/dist/esm/components/EditableTable/cellTypes/boolean/View.st.css.js +2 -2
- package/dist/esm/components/EditableTable/cellTypes/color/Edit.st.css.js +2 -2
- package/dist/esm/components/EditableTable/cellTypes/date/Edit.st.css.js +2 -2
- package/dist/esm/components/EditableTable/cellTypes/date/Edit.st.css.js.map +1 -1
- package/dist/esm/components/EditableTable/cellTypes/date/View.st.css.js +2 -2
- package/dist/esm/components/EditableTable/cellTypes/date/View.st.css.js.map +1 -1
- package/dist/esm/components/EditableTable/cellTypes/datetime/Edit.st.css.js +2 -2
- package/dist/esm/components/EditableTable/cellTypes/datetime/View.st.css.js +2 -2
- package/dist/esm/components/EditableTable/cellTypes/email/Edit.st.css.js +2 -2
- package/dist/esm/components/EditableTable/cellTypes/email/View.st.css.js +2 -2
- package/dist/esm/components/EditableTable/cellTypes/email/View.st.css.js.map +1 -1
- package/dist/esm/components/EditableTable/cellTypes/number/Edit.st.css.js +2 -2
- package/dist/esm/components/EditableTable/cellTypes/number/View.st.css.js +2 -2
- package/dist/esm/components/EditableTable/cellTypes/object/Edit.st.css.js +2 -2
- package/dist/esm/components/EditableTable/cellTypes/object/View.st.css.js +2 -2
- package/dist/esm/components/EditableTable/cellTypes/object/View.st.css.js.map +1 -1
- package/dist/esm/components/EditableTable/cellTypes/select/Edit.st.css.js +2 -2
- package/dist/esm/components/EditableTable/cellTypes/select/Edit.st.css.js.map +1 -1
- package/dist/esm/components/EditableTable/cellTypes/text/Edit.st.css.js +2 -2
- package/dist/esm/components/EditableTable/cellTypes/text/View.st.css.js +2 -2
- package/dist/esm/components/EditableTable/cellTypes/text/View.st.css.js.map +1 -1
- package/dist/esm/components/EditableTable/cellTypes/time/Edit.st.css.js +2 -2
- package/dist/esm/components/EditableTable/cellTypes/time/Edit.st.css.js.map +1 -1
- package/dist/esm/components/EditableTable/cellTypes/url/Edit.st.css.js +2 -2
- package/dist/esm/components/EditableTable/cellTypes/url/Edit.st.css.js.map +1 -1
- package/dist/esm/components/EditableTable/cellTypes/url/View.st.css.js +2 -2
- package/dist/esm/components/EntityPage/EntityPagePlain.st.css.js +2 -2
- package/dist/esm/components/EntityPage/EntityPagePlain.st.css.js.map +1 -1
- package/dist/esm/components/Fade/Fade.st.css.js +2 -2
- package/dist/esm/components/FieldCell/FieldCell.js +1 -1
- package/dist/esm/components/FieldCell/FieldCell.js.map +1 -1
- package/dist/esm/components/Heading/Heading.st.css.js +2 -2
- package/dist/esm/components/ImportButton/CAIRO-4118-tasks.md +4 -4
- package/dist/esm/components/ImportButton/CmsImportFieldEditor.js +42 -0
- package/dist/esm/components/ImportButton/CmsImportFieldEditor.js.map +1 -0
- package/dist/esm/components/ImportButton/ImportButton.js +2 -2
- package/dist/esm/components/ImportButton/ImportButton.js.map +1 -1
- package/dist/esm/components/ImportButton/ImportButtonModalLayout.js +7 -23
- package/dist/esm/components/ImportButton/ImportButtonModalLayout.js.map +1 -1
- package/dist/esm/components/ImportButton/ImportIdCollisionControl.js +1 -1
- package/dist/esm/components/ImportButton/ImportIdCollisionControl.js.map +1 -1
- package/dist/esm/components/ImportButton/ImportModal.uni.driver.js +15 -0
- package/dist/esm/components/ImportButton/ImportModal.uni.driver.js.map +1 -1
- package/dist/esm/components/ImportButton/ImportRequiredFieldsSideNote.js +32 -0
- package/dist/esm/components/ImportButton/ImportRequiredFieldsSideNote.js.map +1 -0
- package/dist/esm/components/ImportButton/ImportStepConfiguration.js +27 -14
- package/dist/esm/components/ImportButton/ImportStepConfiguration.js.map +1 -1
- package/dist/esm/components/ImportButton/ImportStepSummary.js +23 -0
- package/dist/esm/components/ImportButton/ImportStepSummary.js.map +1 -0
- package/dist/esm/components/ImportButton/ImportStepUpload.st.css.js +2 -2
- package/dist/esm/components/ImportButton/ImportStepper.js +4 -0
- package/dist/esm/components/ImportButton/ImportStepper.js.map +1 -1
- package/dist/esm/components/ImportButton/getImportModalStepProps.js +39 -3
- package/dist/esm/components/ImportButton/getImportModalStepProps.js.map +1 -1
- package/dist/esm/components/InputOverflow/InputOverflow.st.css.js +2 -2
- package/dist/esm/components/InputOverflow/InputOverflow.st.css.js.map +1 -1
- package/dist/esm/components/LoadingRow/LoadingRow.st.css.js +3 -3
- package/dist/esm/components/LoadingRow/LoadingRow.st.css.js.map +1 -1
- package/dist/esm/components/MaxHeightText/MaxHeightText.st.css.js +2 -2
- package/dist/esm/components/MaxLines/MaxLines.st.css.js +2 -2
- package/dist/esm/components/MaxLines/MaxLines.st.css.js.map +1 -1
- package/dist/esm/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js +2 -2
- package/dist/esm/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.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/MultipleDragOverlayEffect.st.css.js.map +1 -1
- package/dist/esm/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js +2 -2
- package/dist/esm/components/PickerContent/PickerContent.st.css.js +2 -2
- package/dist/esm/components/PickerContent/PickerContentAdditionalStep.st.css.js +2 -2
- package/dist/esm/components/PickerContent/PickerContentAdditionalStep.st.css.js.map +1 -1
- package/dist/esm/components/PickerTableListItem/PickerTableListItem.st.css.js +2 -2
- package/dist/esm/components/SchemaSource/schemaFieldManagement.js +16 -8
- package/dist/esm/components/SchemaSource/schemaFieldManagement.js.map +1 -1
- package/dist/esm/components/SchemaSource/schemaFieldsSource.js +4 -0
- package/dist/esm/components/SchemaSource/schemaFieldsSource.js.map +1 -1
- package/dist/esm/components/SchemaSource/schemaImportRef.js +107 -0
- package/dist/esm/components/SchemaSource/schemaImportRef.js.map +1 -0
- package/dist/esm/components/SchemaSource/standardFieldTypeLabels.js +36 -0
- package/dist/esm/components/SchemaSource/standardFieldTypeLabels.js.map +1 -0
- package/dist/esm/components/SchemaSource/tableSchemaSource.js +65 -7
- package/dist/esm/components/SchemaSource/tableSchemaSource.js.map +1 -1
- package/dist/esm/components/ScrollableContent/ScrollableContent.st.css.js +2 -2
- package/dist/esm/components/SetupWidget/SetupWidget.st.css.js +2 -2
- package/dist/esm/components/SetupWidget/SetupWidget.st.css.js.map +1 -1
- package/dist/esm/components/SkeletonCard/SkeletonCard.st.css.js +2 -2
- package/dist/esm/components/SlidingModal/SlidingModal.st.css.js +2 -2
- package/dist/esm/components/SlidingModal/SlidingModal.st.css.js.map +1 -1
- package/dist/esm/components/Table/AddFieldColumnHeader.js +30 -0
- package/dist/esm/components/Table/AddFieldColumnHeader.js.map +1 -0
- package/dist/esm/components/Table/AddFieldColumnHeader.st.css +36 -0
- package/dist/esm/components/Table/AddFieldColumnHeader.st.css.js +15 -0
- package/dist/esm/components/Table/AddFieldColumnHeader.st.css.js.map +1 -0
- package/dist/esm/components/TabsFilter/TabsFilter.st.css.js +2 -2
- package/dist/esm/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.js +7 -7
- package/dist/esm/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.js.map +1 -1
- package/dist/esm/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js +2 -2
- package/dist/esm/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js.map +1 -1
- package/dist/esm/components/TagsWidget/TagsWidgetContent.js +1 -8
- package/dist/esm/components/TagsWidget/TagsWidgetContent.js.map +1 -1
- package/dist/esm/components/ToolbarItem/ToolbarItem.st.css.js +2 -2
- package/dist/esm/components/ToolbarItemBox/ToolbarItemBox.st.css.js +2 -2
- package/dist/esm/components/common.st.css.js +2 -2
- package/dist/esm/exports/schema.js +2 -0
- package/dist/esm/exports/schema.js.map +1 -0
- package/dist/esm/exports/testkit/index.js +1 -1
- package/dist/esm/exports/testkit/index.js.map +1 -1
- package/dist/esm/hooks/index.js +2 -0
- package/dist/esm/hooks/index.js.map +1 -1
- package/dist/esm/hooks/useCreateWSRColumnBase.js +6 -3
- package/dist/esm/hooks/useCreateWSRColumnBase.js.map +1 -1
- package/dist/esm/hooks/usePlatformizedImport.js +23 -0
- package/dist/esm/hooks/usePlatformizedImport.js.map +1 -0
- package/dist/esm/hooks/useReachBottom.js +30 -0
- package/dist/esm/hooks/useReachBottom.js.map +1 -0
- package/dist/esm/hooks/useSchemaImport.js +18 -0
- package/dist/esm/hooks/useSchemaImport.js.map +1 -0
- package/dist/esm/index.js +2 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/schema/index.js +7 -0
- package/dist/esm/schema/index.js.map +1 -0
- package/dist/esm/schema/schemaCollectionOptions.js +16 -0
- package/dist/esm/schema/schemaCollectionOptions.js.map +1 -0
- package/dist/esm/schema/schemaSourceMutations.js +25 -0
- package/dist/esm/schema/schemaSourceMutations.js.map +1 -0
- package/dist/esm/schema/useCollection.js +9 -0
- package/dist/esm/schema/useCollection.js.map +1 -0
- package/dist/esm/schema/useEditableTableCollection.js +23 -0
- package/dist/esm/schema/useEditableTableCollection.js.map +1 -0
- package/dist/esm/schema/useGridCollection.js +15 -0
- package/dist/esm/schema/useGridCollection.js.map +1 -0
- package/dist/esm/schema/useLayoutSwitchCollection.js +28 -0
- package/dist/esm/schema/useLayoutSwitchCollection.js.map +1 -0
- package/dist/esm/schema/useTableCollection.js +15 -0
- package/dist/esm/schema/useTableCollection.js.map +1 -0
- package/dist/esm/state/CollectionFieldsSourceState.js +5 -0
- package/dist/esm/state/CollectionFieldsSourceState.js.map +1 -1
- package/dist/esm/state/CollectionPage/CollectionPageHeader.st.css.js +2 -2
- package/dist/esm/state/FormPage/FormPageHeader.st.css.js +2 -2
- package/dist/esm/state/TagsModalState.js +26 -3
- package/dist/esm/state/TagsModalState.js.map +1 -1
- package/dist/esm/styles.global.css +2 -2
- package/dist/esm/test-utils/TagsMocks.js +47 -13
- package/dist/esm/test-utils/TagsMocks.js.map +1 -1
- package/dist/esm/version.js +1 -1
- package/dist/types/bm/testProviderPropsOverrides.d.ts.map +1 -1
- package/dist/types/components/ActionModal/CustomActionModal.d.ts +3 -1
- package/dist/types/components/ActionModal/CustomActionModal.d.ts.map +1 -1
- package/dist/types/components/CardContainer/CardContainer.st.css.d.ts.map +1 -1
- package/dist/types/components/CmsFieldManagement/FieldEditorModal.d.ts +3 -1
- package/dist/types/components/CmsFieldManagement/FieldEditorModal.d.ts.map +1 -1
- package/dist/types/components/CollectionPageNew/CollectionPage.st.css.d.ts.map +1 -1
- package/dist/types/components/CollectionTable/CollectionTable.d.ts +11 -0
- package/dist/types/components/CollectionTable/CollectionTable.d.ts.map +1 -1
- package/dist/types/components/CollectionTable/CollectionTable.uni.driver.d.ts +48 -34
- package/dist/types/components/CollectionTable/CollectionTable.uni.driver.d.ts.map +1 -1
- package/dist/types/components/CollectionTable/CollectionTableWSRTable.st.css.d.ts.map +1 -1
- package/dist/types/components/CollectionToolbar/CollectionToolbar.uni.driver.d.ts +11 -11
- package/dist/types/components/CollectionViewsDropdown/ViewsDropdown.st.css.d.ts.map +1 -1
- package/dist/types/components/CustomFieldModal/CustomFieldModal.uni.driver.d.ts +3 -3
- package/dist/types/components/CustomFieldsWidget/CustomFieldsWidget.uni.driver.d.ts +4 -4
- package/dist/types/components/DataExtension/DataExtensionImportFieldEditor.d.ts +8 -0
- package/dist/types/components/DataExtension/DataExtensionImportFieldEditor.d.ts.map +1 -0
- package/dist/types/components/DataExtension/platformizedImportRef.d.ts +59 -0
- package/dist/types/components/DataExtension/platformizedImportRef.d.ts.map +1 -0
- package/dist/types/components/DragHandle/DragHandle.st.css.d.ts.map +1 -1
- package/dist/types/components/DropdownFilter/CollectionDropdownFilter.uni.driver.d.ts +1 -1
- package/dist/types/components/EditableTable/EditableCell.uni.driver.d.ts +1 -1
- package/dist/types/components/EditableTable/EditableTable.d.ts +4 -4
- package/dist/types/components/EditableTable/EditableTable.d.ts.map +1 -1
- package/dist/types/components/EditableTable/EditableTable.uni.driver.d.ts +2 -2
- package/dist/types/components/EditableTable/cellTypes/address/Edit.st.css.d.ts.map +1 -1
- package/dist/types/components/EditableTable/cellTypes/boolean/Edit.st.css.d.ts.map +1 -1
- package/dist/types/components/EditableTable/cellTypes/date/Edit.st.css.d.ts.map +1 -1
- package/dist/types/components/EditableTable/cellTypes/date/View.st.css.d.ts.map +1 -1
- package/dist/types/components/EditableTable/cellTypes/email/View.st.css.d.ts.map +1 -1
- package/dist/types/components/EditableTable/cellTypes/object/View.st.css.d.ts.map +1 -1
- package/dist/types/components/EditableTable/cellTypes/reference/Edit.uni.driver.d.ts +1 -1
- package/dist/types/components/EditableTable/cellTypes/select/Edit.st.css.d.ts.map +1 -1
- package/dist/types/components/EditableTable/cellTypes/text/View.st.css.d.ts.map +1 -1
- package/dist/types/components/EditableTable/cellTypes/time/Edit.st.css.d.ts.map +1 -1
- package/dist/types/components/EditableTable/cellTypes/url/Edit.st.css.d.ts.map +1 -1
- package/dist/types/components/EntityPage/EntityPagePlain.st.css.d.ts.map +1 -1
- package/dist/types/components/FiltersPanel/FiltersPanel.uni.driver.d.ts +4 -4
- package/dist/types/components/Grid/Grid.uni.driver.d.ts +13 -13
- package/dist/types/components/Grid/GridFolders.uni.driver.d.ts +38 -38
- package/dist/types/components/Grid/GridFoldersSection.uni.driver.d.ts +13 -13
- package/dist/types/components/ImportButton/CmsImportFieldEditor.d.ts +8 -0
- package/dist/types/components/ImportButton/CmsImportFieldEditor.d.ts.map +1 -0
- package/dist/types/components/ImportButton/ImportButton.d.ts.map +1 -1
- package/dist/types/components/ImportButton/ImportButton.uni.driver.d.ts +10 -2
- package/dist/types/components/ImportButton/ImportButton.uni.driver.d.ts.map +1 -1
- package/dist/types/components/ImportButton/ImportButtonModalLayout.d.ts.map +1 -1
- package/dist/types/components/ImportButton/ImportModal.uni.driver.d.ts +14 -4
- package/dist/types/components/ImportButton/ImportModal.uni.driver.d.ts.map +1 -1
- package/dist/types/components/ImportButton/ImportProps.d.ts +27 -30
- package/dist/types/components/ImportButton/ImportProps.d.ts.map +1 -1
- package/dist/types/components/ImportButton/ImportRequiredFieldsSideNote.d.ts +19 -0
- package/dist/types/components/ImportButton/ImportRequiredFieldsSideNote.d.ts.map +1 -0
- package/dist/types/components/ImportButton/ImportStepConfiguration.d.ts +1 -3
- package/dist/types/components/ImportButton/ImportStepConfiguration.d.ts.map +1 -1
- package/dist/types/components/ImportButton/ImportStepSummary.d.ts +11 -0
- package/dist/types/components/ImportButton/ImportStepSummary.d.ts.map +1 -0
- package/dist/types/components/ImportButton/ImportStepper.d.ts.map +1 -1
- package/dist/types/components/ImportButton/getImportModalStepProps.d.ts +1 -3
- package/dist/types/components/ImportButton/getImportModalStepProps.d.ts.map +1 -1
- package/dist/types/components/InputOverflow/InputOverflow.st.css.d.ts.map +1 -1
- package/dist/types/components/Kanban/Kanban.uni.driver.d.ts +11 -11
- package/dist/types/components/LayoutSwitch/LayoutSwitch.uni.driver.d.ts +62 -46
- package/dist/types/components/LayoutSwitch/LayoutSwitch.uni.driver.d.ts.map +1 -1
- package/dist/types/components/LoadingRow/LoadingRow.st.css.d.ts.map +1 -1
- package/dist/types/components/MaxLines/MaxLines.st.css.d.ts.map +1 -1
- package/dist/types/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.d.ts.map +1 -1
- package/dist/types/components/NestedTable/NestedTable.uni.driver.d.ts +58 -42
- package/dist/types/components/NestedTable/NestedTable.uni.driver.d.ts.map +1 -1
- package/dist/types/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.d.ts.map +1 -1
- package/dist/types/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.d.ts.map +1 -1
- package/dist/types/components/PickerContent/PickerContentAdditionalStep.st.css.d.ts.map +1 -1
- package/dist/types/components/PickerModal/PickerModal.uni.driver.d.ts +1 -1
- package/dist/types/components/PickerModal/PickerModalLayout.uni.driver.d.ts +1 -1
- package/dist/types/components/SchemaSource/schemaFieldManagement.d.ts.map +1 -1
- package/dist/types/components/SchemaSource/schemaFieldsSource.d.ts.map +1 -1
- package/dist/types/components/SchemaSource/schemaImportRef.d.ts +27 -0
- package/dist/types/components/SchemaSource/schemaImportRef.d.ts.map +1 -0
- package/dist/types/components/SchemaSource/standardFieldTypeLabels.d.ts +11 -0
- package/dist/types/components/SchemaSource/standardFieldTypeLabels.d.ts.map +1 -0
- package/dist/types/components/SchemaSource/tableSchemaSource.d.ts +10 -3
- package/dist/types/components/SchemaSource/tableSchemaSource.d.ts.map +1 -1
- package/dist/types/components/SetupWidget/SetupWidget.st.css.d.ts.map +1 -1
- package/dist/types/components/SlidingModal/SlidingModal.st.css.d.ts.map +1 -1
- package/dist/types/components/SummaryBar/SummaryBar.uni.driver.d.ts +1 -1
- package/dist/types/components/Table/AddFieldColumnHeader.d.ts +6 -0
- package/dist/types/components/Table/AddFieldColumnHeader.d.ts.map +1 -0
- package/dist/types/components/Table/AddFieldColumnHeader.st.css.d.ts +15 -0
- package/dist/types/components/Table/AddFieldColumnHeader.st.css.d.ts.map +1 -0
- package/dist/types/components/Table/Table.uni.driver.d.ts +47 -31
- package/dist/types/components/Table/Table.uni.driver.d.ts.map +1 -1
- package/dist/types/components/TableFolders/TableFolders.uni.driver.d.ts +58 -42
- package/dist/types/components/TableFolders/TableFolders.uni.driver.d.ts.map +1 -1
- package/dist/types/components/TableGridSwitch/TableGridSwitch.uni.driver.d.ts +61 -45
- package/dist/types/components/TableGridSwitch/TableGridSwitch.uni.driver.d.ts.map +1 -1
- package/dist/types/components/TabsFilter/TabsFilter.uni.driver.d.ts +1 -1
- package/dist/types/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.d.ts.map +1 -1
- package/dist/types/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.d.ts.map +1 -1
- package/dist/types/components/TagsWidget/TagsWidgetContent.d.ts.map +1 -1
- package/dist/types/exports/schema.d.ts +3 -0
- package/dist/types/exports/schema.d.ts.map +1 -0
- package/dist/types/exports/testkit/index.d.ts +2 -1
- package/dist/types/exports/testkit/index.d.ts.map +1 -1
- package/dist/types/hooks/index.d.ts +2 -0
- package/dist/types/hooks/index.d.ts.map +1 -1
- package/dist/types/hooks/useCreateWSRColumnBase.d.ts +3 -1
- package/dist/types/hooks/useCreateWSRColumnBase.d.ts.map +1 -1
- package/dist/types/hooks/usePlatformizedImport.d.ts +43 -0
- package/dist/types/hooks/usePlatformizedImport.d.ts.map +1 -0
- package/dist/types/hooks/useReachBottom.d.ts +16 -0
- package/dist/types/hooks/useReachBottom.d.ts.map +1 -0
- package/dist/types/hooks/useSchemaImport.d.ts +20 -0
- package/dist/types/hooks/useSchemaImport.d.ts.map +1 -0
- package/dist/types/hooks/useTableCollection.d.ts +1 -1
- package/dist/types/hooks/useTableCollection.d.ts.map +1 -1
- package/dist/types/index.d.ts +2 -2
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/schema/index.d.ts +8 -0
- package/dist/types/schema/index.d.ts.map +1 -0
- package/dist/types/schema/schemaCollectionOptions.d.ts +19 -0
- package/dist/types/schema/schemaCollectionOptions.d.ts.map +1 -0
- package/dist/types/schema/schemaSourceMutations.d.ts +9 -0
- package/dist/types/schema/schemaSourceMutations.d.ts.map +1 -0
- package/dist/types/schema/useCollection.d.ts +9 -0
- package/dist/types/schema/useCollection.d.ts.map +1 -0
- package/dist/types/schema/useEditableTableCollection.d.ts +17 -0
- package/dist/types/schema/useEditableTableCollection.d.ts.map +1 -0
- package/dist/types/schema/useGridCollection.d.ts +7 -0
- package/dist/types/schema/useGridCollection.d.ts.map +1 -0
- package/dist/types/schema/useLayoutSwitchCollection.d.ts +17 -0
- package/dist/types/schema/useLayoutSwitchCollection.d.ts.map +1 -0
- package/dist/types/schema/useTableCollection.d.ts +7 -0
- package/dist/types/schema/useTableCollection.d.ts.map +1 -0
- package/dist/types/state/CollectionFieldsSourceState.d.ts +4 -1
- package/dist/types/state/CollectionFieldsSourceState.d.ts.map +1 -1
- package/dist/types/state/TagsModalState.d.ts +3 -0
- package/dist/types/state/TagsModalState.d.ts.map +1 -1
- package/dist/types/test-utils/TagsMocks.d.ts +4 -4
- package/dist/types/test-utils/TagsMocks.d.ts.map +1 -1
- package/dist/types/testkit/enzyme.d.ts +280 -216
- package/dist/types/testkit/enzyme.d.ts.map +1 -1
- package/dist/types/testkit/jsdom.d.ts +358 -278
- package/dist/types/testkit/jsdom.d.ts.map +1 -1
- package/dist/types/testkit/playwright.d.ts +282 -218
- package/dist/types/testkit/playwright.d.ts.map +1 -1
- package/dist/types/testkit/puppeteer.d.ts +293 -229
- package/dist/types/testkit/puppeteer.d.ts.map +1 -1
- package/dist/types/version.d.ts +1 -1
- package/package.json +13 -7
- package/schema/package.json +6 -0
- package/src/bm/testProviderPropsOverrides.ts +12 -2
- package/src/components/ActionModal/CustomActionModal.tsx +4 -0
- package/src/components/CardContainer/CardContainer.st.css.ts +2 -2
- package/src/components/CmsFieldManagement/CmsFieldForm.st.css.ts +2 -2
- package/src/components/CmsFieldManagement/CmsFieldModal.st.css.ts +2 -2
- package/src/components/CmsFieldManagement/FieldEditorModal.tsx +4 -0
- package/src/components/CmsFieldManagement/Sections/ValidationAndDefaultsSection.st.css.ts +2 -2
- package/src/components/CmsFieldManagement/formFields/CharactersLimitInput.st.css.ts +2 -2
- package/src/components/Collapse/Collapse.st.css.ts +2 -2
- package/src/components/CollectionPageNew/CollectionPage.st.css.ts +2 -2
- package/src/components/CollectionSectionHeader/CollectionSectionHeader.st.css.ts +2 -2
- package/src/components/CollectionTable/CollectionTable.st.css.ts +2 -2
- package/src/components/CollectionTable/CollectionTable.tsx +14 -0
- package/src/components/CollectionTable/CollectionTableWSRTable.st.css.ts +2 -2
- package/src/components/CollectionToolbar/CollectionToolbar.st.css.ts +2 -2
- package/src/components/CollectionToolbar/SearchOrCustomFilter.st.css.ts +2 -2
- package/src/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.ts +2 -2
- package/src/components/CollectionViewsDropdown/ViewsDropdown.st.css.ts +2 -2
- package/src/components/DataExtension/DataExtensionImportFieldEditor.tsx +81 -0
- package/src/components/DataExtension/platformizedImportRef.ts +147 -0
- package/src/components/DragHandle/DragHandle.st.css.ts +2 -2
- package/src/components/EditableTable/EditableCell.st.css.ts +2 -2
- package/src/components/EditableTable/EditableTable.tsx +5 -3
- package/src/components/EditableTable/HeaderActionsPopover.st.css.ts +2 -2
- package/src/components/EditableTable/cellTypes/CellViewLayout.st.css.ts +2 -2
- package/src/components/EditableTable/cellTypes/address/Edit.st.css.ts +2 -2
- package/src/components/EditableTable/cellTypes/array/Edit.st.css.ts +2 -2
- package/src/components/EditableTable/cellTypes/boolean/Edit.st.css.ts +2 -2
- package/src/components/EditableTable/cellTypes/boolean/View.st.css.ts +2 -2
- package/src/components/EditableTable/cellTypes/color/Edit.st.css.ts +2 -2
- package/src/components/EditableTable/cellTypes/date/Edit.st.css.ts +2 -2
- package/src/components/EditableTable/cellTypes/date/View.st.css.ts +2 -2
- package/src/components/EditableTable/cellTypes/datetime/Edit.st.css.ts +2 -2
- package/src/components/EditableTable/cellTypes/datetime/View.st.css.ts +2 -2
- package/src/components/EditableTable/cellTypes/email/Edit.st.css.ts +2 -2
- package/src/components/EditableTable/cellTypes/email/View.st.css.ts +2 -2
- package/src/components/EditableTable/cellTypes/number/Edit.st.css.ts +2 -2
- package/src/components/EditableTable/cellTypes/number/View.st.css.ts +2 -2
- package/src/components/EditableTable/cellTypes/object/Edit.st.css.ts +2 -2
- package/src/components/EditableTable/cellTypes/object/View.st.css.ts +2 -2
- package/src/components/EditableTable/cellTypes/select/Edit.st.css.ts +2 -2
- package/src/components/EditableTable/cellTypes/text/Edit.st.css.ts +2 -2
- package/src/components/EditableTable/cellTypes/text/View.st.css.ts +2 -2
- package/src/components/EditableTable/cellTypes/time/Edit.st.css.ts +2 -2
- package/src/components/EditableTable/cellTypes/url/Edit.st.css.ts +2 -2
- package/src/components/EditableTable/cellTypes/url/View.st.css.ts +2 -2
- package/src/components/EntityPage/EntityPagePlain.st.css.ts +2 -2
- package/src/components/Fade/Fade.st.css.ts +2 -2
- package/src/components/FieldCell/FieldCell.tsx +1 -1
- package/src/components/Heading/Heading.st.css.ts +2 -2
- package/src/components/ImportButton/CAIRO-4118-tasks.md +4 -4
- package/src/components/ImportButton/CmsImportFieldEditor.tsx +62 -0
- package/src/components/ImportButton/ImportButton.tsx +3 -15
- package/src/components/ImportButton/ImportButtonModalLayout.tsx +7 -41
- package/src/components/ImportButton/ImportIdCollisionControl.tsx +1 -1
- package/src/components/ImportButton/ImportModal.uni.driver.ts +26 -0
- package/src/components/ImportButton/ImportProps.tsx +28 -37
- package/src/components/ImportButton/ImportRequiredFieldsSideNote.tsx +60 -0
- package/src/components/ImportButton/ImportStepConfiguration.tsx +38 -19
- package/src/components/ImportButton/ImportStepSummary.tsx +72 -0
- package/src/components/ImportButton/ImportStepUpload.st.css.ts +2 -2
- package/src/components/ImportButton/ImportStepper.tsx +4 -0
- package/src/components/ImportButton/getImportModalStepProps.tsx +50 -7
- package/src/components/InputOverflow/InputOverflow.st.css.ts +2 -2
- package/src/components/LoadingRow/LoadingRow.st.css.ts +3 -3
- package/src/components/MaxHeightText/MaxHeightText.st.css.ts +2 -2
- package/src/components/MaxLines/MaxLines.st.css.ts +2 -2
- package/src/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.ts +2 -2
- package/src/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.ts +2 -2
- package/src/components/NestedTable/NestedTableRow.st.css.ts +2 -2
- package/src/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.ts +2 -2
- package/src/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.ts +2 -2
- package/src/components/PickerContent/PickerContent.st.css.ts +2 -2
- package/src/components/PickerContent/PickerContentAdditionalStep.st.css.ts +2 -2
- package/src/components/PickerTableListItem/PickerTableListItem.st.css.ts +2 -2
- package/src/components/SchemaSource/schemaFieldManagement.ts +19 -8
- package/src/components/SchemaSource/schemaFieldsSource.ts +5 -0
- package/src/components/SchemaSource/schemaImportRef.ts +137 -0
- package/src/components/SchemaSource/standardFieldTypeLabels.ts +47 -0
- package/src/components/SchemaSource/tableSchemaSource.ts +82 -12
- package/src/components/ScrollableContent/ScrollableContent.st.css.ts +2 -2
- package/src/components/SetupWidget/SetupWidget.st.css.ts +2 -2
- package/src/components/SkeletonCard/SkeletonCard.st.css.ts +2 -2
- package/src/components/SlidingModal/SlidingModal.st.css.ts +2 -2
- package/src/components/Table/AddFieldColumnHeader.st.css +36 -0
- package/src/components/Table/AddFieldColumnHeader.st.css.ts +25 -0
- package/src/components/Table/AddFieldColumnHeader.tsx +65 -0
- 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/Tags/ManageTags/ManageTagsModal/ManageTagsModal.tsx +7 -12
- package/src/components/TagsWidget/TagsWidgetContent.tsx +0 -9
- 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/exports/schema.ts +13 -0
- package/src/exports/testkit/index.ts +6 -1
- package/src/hooks/index.ts +2 -0
- package/src/hooks/useCreateWSRColumnBase.tsx +15 -2
- package/src/hooks/usePlatformizedImport.tsx +77 -0
- package/src/hooks/useReachBottom.ts +50 -0
- package/src/hooks/useSchemaImport.tsx +35 -0
- package/src/hooks/useTableCollection.ts +1 -1
- package/src/index.ts +2 -2
- package/src/schema/index.ts +7 -0
- package/src/schema/schemaCollectionOptions.ts +44 -0
- package/src/schema/schemaSourceMutations.ts +35 -0
- package/src/schema/useCollection.ts +22 -0
- package/src/schema/useEditableTableCollection.ts +70 -0
- package/src/schema/useGridCollection.ts +33 -0
- package/src/schema/useLayoutSwitchCollection.ts +73 -0
- package/src/schema/useTableCollection.ts +42 -0
- package/src/state/CollectionFieldsSourceState.ts +7 -0
- package/src/state/CollectionPage/CollectionPageHeader.st.css.ts +2 -2
- package/src/state/FormPage/FormPageHeader.st.css.ts +2 -2
- package/src/state/TagsModalState.ts +32 -6
- package/src/styles.global.css +2 -2
- package/src/test-utils/TagsMocks.ts +39 -6
- package/src/version.ts +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_chance","require","_client","_http","_backend","_HttpErrorMocks","_ExpectedTestError","ServerError","ExpectedTestError","constructor","code","message","_defineProperty2","default","chance","Chance","aTag","overrides","id","guid","name","word","length","createdDate","date","min","Date","now","max","aTagsArray","count","Array","from","exports","generateInvalidLongName","string","TAGS","buildQueryTagsReply","tags","query","_query$filter","_query$cursorPaging","_query$cursorPaging2","allTags","search","filter","$startsWith","filteredTags","tag","_tag$name","toLowerCase","startsWith","limit","cursorPaging","cursorToken","cursor","offset","parseInt","atob","pageItems","slice","nextOffset","hasNext","pagingMetadata","cursors","next","btoa","String","total","withQueryTags","whenRequest","queryTags","reply","persist","withQueryTagsForAccount","queryTagsForAccount","withListTags","withListTagsForAccount","createTagResponseMock","__applicationErrorsType","updatedDate","withCreateTag","mock","createTag","withCreateTagForAccount","createTagForAccount","withUpdateTag","updateTag","withUpdateTagForAccount","updateTagForAccount","withDeleteTag","deleteTag","getQueryTagsErrorMock","status","Promise","_resolve","reject","window","setTimeout","createHttpErrorMock","getListTagsErrorMock","getListTagsForAccountErrorMock","getCreateTagErrorMock","requestId","getCreateTagForAccountErrorMock","getUpdateTagErrorMock","getDeleteTagErrorMock","createTagImdb","fqdn","createBackend","InMemoryBackend","paginationMode","delay","createOne","index","predicate","filters","item","orderBy","sort","itemKey","tagsAPIHttpClientMocks","tagsBackend","listTags","fetchData","then","items","_query$filter2","_query$cursorPaging3","_query$cursorPaging4","allItems","filtered","_tag$name2","push","update","tagId","map","delete"],"sources":["../../../src/test-utils/TagsMocks.ts"],"sourcesContent":["import { Chance } from 'chance';\nimport { whenRequest } from '@wix/fe-essentials/http-client/testkit/client';\nimport {\n listTags,\n queryTags,\n queryTagsForAccount,\n createTag,\n updateTag,\n deleteTag,\n createTagForAccount,\n updateTagForAccount,\n} from '@wix/bex-utils/@wix/ambassador-os-tags-v1-tag/http';\nimport {\n QueryTagsRequest,\n Tag as TagType,\n} from '@wix/bex-utils/@wix/ambassador-os-tags-v1-tag/types';\nimport { InMemoryBackend } from '../testkit/backend';\nimport { createHttpErrorMock } from './HttpErrorMocks';\nimport { ExpectedTestError } from '../__tests__/utils/ExpectedTestError';\n\nclass ServerError extends ExpectedTestError {\n readonly code: string;\n\n constructor(code: string, message: string) {\n super(message);\n this.code = code;\n }\n}\n\nconst chance = new Chance();\n\nconst aTag = (overrides: Partial<TagType> = {}): TagType => {\n return {\n id: chance.guid(),\n name: chance.word({ length: 5 }),\n createdDate: chance.date({\n min: new Date(Date.now() - 365 * 24 * 60 * 60 * 1000),\n max: new Date(),\n }) as Date,\n ...overrides,\n } as TagType;\n};\n\nexport const aTagsArray = (count: number) =>\n Array.from({ length: count }, () => aTag());\n\nexport const generateInvalidLongName = (length: number) =>\n chance.string({ length });\nexport const TAGS = aTagsArray(2);\n\nconst buildQueryTagsReply =\n (tags?: TagType[]) =>\n async ({ query }: Partial<QueryTagsRequest>) => {\n const allTags = tags || TAGS;\n const search = query?.filter?.name?.$startsWith as string | undefined;\n const filteredTags = search\n ? allTags.filter((tag) =>\n tag.name?.toLowerCase().startsWith(search.toLowerCase()),\n )\n : allTags;\n const limit = query?.cursorPaging?.limit ?? filteredTags.length;\n const cursorToken = query?.cursorPaging?.cursor;\n const offset = cursorToken ? parseInt(atob(cursorToken), 10) : 0;\n const pageItems = filteredTags.slice(offset, offset + limit);\n const nextOffset = offset + limit;\n const hasNext = nextOffset < filteredTags.length;\n return {\n tags: pageItems,\n pagingMetadata: {\n count: pageItems.length,\n cursors: { next: hasNext ? btoa(String(nextOffset)) : null },\n hasNext,\n total: filteredTags.length,\n },\n };\n };\n\nexport const withQueryTags = (tags?: TagType[]) =>\n whenRequest(queryTags).reply(200, buildQueryTagsReply(tags)).persist();\n\nexport const withQueryTagsForAccount = (tags?: TagType[]) =>\n whenRequest(queryTagsForAccount)\n .reply(200, buildQueryTagsReply(tags))\n .persist();\n\nexport const withListTags = (tags?: TagType[]) => withQueryTags(tags);\n\nexport const withListTagsForAccount = (tags?: TagType[]) =>\n withQueryTagsForAccount(tags);\n\nconst createTagResponseMock = (tag: TagType) => ({\n __applicationErrorsType: {},\n tag: { createdDate: new Date(), updatedDate: new Date(), ...tag },\n});\n\nexport const withCreateTag = (mock?: jest.Mock<any, any>) =>\n whenRequest(createTag)\n .reply(\n 200,\n mock ||\n (async ({ tag }) => {\n return createTagResponseMock(tag);\n }),\n )\n .persist();\n\nexport const withCreateTagForAccount = (mock?: jest.Mock<any, any>) =>\n whenRequest(createTagForAccount)\n .reply(\n 200,\n mock ||\n (async ({ tag }) => {\n return createTagResponseMock(tag);\n }),\n )\n .persist();\n\nexport const withUpdateTag = () =>\n whenRequest(updateTag)\n .reply(200, async (tag) => {\n return tag;\n })\n .persist();\n\nexport const withUpdateTagForAccount = () =>\n whenRequest(updateTagForAccount)\n .reply(200, async (tag) => {\n return tag;\n })\n .persist();\n\nexport const withDeleteTag = () =>\n whenRequest(deleteTag)\n .reply(200, async () => {\n return {};\n })\n .persist();\n\nexport const getQueryTagsErrorMock = ({\n code = 'ERR_NETWORK',\n status = 429,\n}: {\n code?: string;\n status?: number;\n} = {}) =>\n whenRequest(queryTags)\n .reply(200, async () => {\n return new Promise((_resolve, reject) => {\n window.setTimeout(() => {\n reject(createHttpErrorMock({ code, status }));\n }, 500);\n });\n })\n .persist();\n\nexport const getListTagsErrorMock = ({\n code = 'ERR_NETWORK',\n status = 429,\n}: {\n code?: string;\n status?: number;\n} = {}) => getQueryTagsErrorMock({ code, status });\n\nexport const getListTagsForAccountErrorMock = ({\n code = 'ERR_NETWORK',\n status = 429,\n}: {\n code?: string;\n status?: number;\n} = {}) =>\n whenRequest(queryTagsForAccount)\n .reply(200, async () => {\n return new Promise((_resolve, reject) => {\n setTimeout(() => {\n reject(createHttpErrorMock({ code, status }));\n }, 500);\n });\n })\n .persist();\n\nexport const getCreateTagErrorMock = ({\n code = 'ERR_NETWORK',\n status = 429,\n requestId,\n}: {\n code?: string;\n status?: number;\n requestId?: string;\n} = {}) =>\n whenRequest(createTag)\n .reply(200, async () => {\n return new Promise((_resolve, reject) => {\n window.setTimeout(() => {\n reject(createHttpErrorMock({ code, status, requestId }));\n }, 500);\n });\n })\n .persist();\n\nexport const getCreateTagForAccountErrorMock = ({\n code = 'ERR_NETWORK',\n status = 429,\n}: {\n code?: string;\n status?: number;\n} = {}) =>\n whenRequest(createTagForAccount)\n .reply(200, async () => {\n return new Promise((_resolve, reject) => {\n window.setTimeout(() => {\n reject(createHttpErrorMock({ code, status }));\n }, 500);\n });\n })\n .persist();\n\nexport const getUpdateTagErrorMock = ({\n code,\n status,\n}: {\n code?: string;\n status?: number;\n} = {}) =>\n whenRequest(updateTag)\n .reply(200, async () => {\n return new Promise((_resolve, reject) => {\n window.setTimeout(() => {\n reject(createHttpErrorMock({ code, status }));\n }, 500);\n });\n })\n .persist();\n\nexport const getDeleteTagErrorMock = (code: string = 'ERR_NETWORK') =>\n whenRequest(deleteTag)\n .reply(200, async () => {\n return new Promise((_resolve, reject) => {\n window.setTimeout(() => {\n reject(new ServerError(code, 'error'));\n }, 500);\n });\n })\n .persist();\n\nexport default function createTagImdb({\n createdDate = new Date(Date.now() - 365 * 24 * 60 * 60 * 1000),\n updatedDate = createdDate,\n fqdn = 'wix.patterns.dummyservice.v1.dummy_entity',\n ...overrides\n}: Partial<TagType> = {}): TagType {\n return {\n createdDate,\n updatedDate,\n fqdn,\n ...overrides,\n };\n}\n\nexport function createBackend(tags: TagType[]) {\n return new InMemoryBackend<TagType>({\n total: tags.length,\n paginationMode: 'offset',\n delay: { min: 100, max: 2000 },\n createOne: (index: number) => createTagImdb(tags[index]),\n predicate: (query) => {\n const filters = query.filters ?? {};\n const { fqdn } = filters;\n return (item) => item.fqdn === fqdn;\n },\n orderBy: (query) => {\n return [...(query.sort ?? [])];\n },\n itemKey: (item) => item.id!,\n });\n}\n\nexport const tagsAPIHttpClientMocks = (tags: TagType[]) => {\n const tagsBackend = createBackend(tags);\n return [\n whenRequest(listTags)\n .reply(200, async ({ fqdn }) => {\n return tagsBackend\n .fetchData({\n filters: {\n fqdn,\n },\n limit: tags.length,\n })\n .then(({ items }) => {\n if (fqdn === 'wix.patterns.dummyservice.v1.empty') {\n return { tags: [] };\n } else if (fqdn === 'wix.patterns.dummyservice.v1.over_limit') {\n return { tags: aTagsArray(105) };\n } else {\n return { tags: items };\n }\n });\n })\n .persist(),\n whenRequest(queryTags)\n .reply(200, async ({ fqdn, query }) => {\n if (fqdn === 'wix.patterns.dummyservice.v1.empty') {\n return {\n tags: [],\n pagingMetadata: {\n count: 0,\n cursors: { next: null },\n hasNext: false,\n },\n };\n }\n const allItems =\n fqdn === 'wix.patterns.dummyservice.v1.over_limit'\n ? aTagsArray(105)\n : (await tagsBackend.fetchData({ filters: { fqdn }, limit: 1000 }))\n .items;\n const search = query?.filter?.name?.$startsWith as string | undefined;\n const filtered = search\n ? allItems.filter((tag) =>\n tag.name?.toLowerCase().startsWith(search.toLowerCase()),\n )\n : allItems;\n const limit = query?.cursorPaging?.limit ?? filtered.length;\n const cursorToken = query?.cursorPaging?.cursor;\n const offset = cursorToken ? parseInt(atob(cursorToken), 10) : 0;\n const pageItems = filtered.slice(offset, offset + limit);\n const nextOffset = offset + limit;\n const hasNext = nextOffset < filtered.length;\n return {\n tags: pageItems,\n pagingMetadata: {\n count: pageItems.length,\n cursors: { next: hasNext ? btoa(String(nextOffset)) : null },\n hasNext,\n total: filtered.length,\n },\n };\n })\n .persist(),\n whenRequest(createTag)\n .reply(200, ({ tag }) => {\n tagsBackend.push([tag]);\n return {\n __applicationErrorsType: {},\n tag,\n };\n })\n .persist(),\n whenRequest(updateTag)\n .reply(200, ({ tag }) => {\n tagsBackend.update(tag);\n return { tag };\n })\n .persist(),\n whenRequest(deleteTag)\n .reply(200, ({ tagId }) => {\n tagsBackend.map.delete(tagId);\n })\n .persist(),\n ];\n};\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_chance","require","_client","_http","_backend","_HttpErrorMocks","_ExpectedTestError","ServerError","ExpectedTestError","constructor","code","message","_defineProperty2","default","chance","Chance","aTag","overrides","id","guid","name","word","length","createdDate","date","min","Date","now","max","aTagsArray","count","Array","from","exports","generateInvalidLongName","string","TAGS","buildQueryTagsReply","tags","query","_query$filter","_query$cursorPaging","_query$cursorPaging2","allTags","search","filter","$startsWith","filteredTags","tag","_tag$name","toLowerCase","startsWith","limit","cursorPaging","cursorToken","cursor","offset","parseInt","atob","pageItems","slice","nextOffset","hasNext","pagingMetadata","cursors","next","btoa","String","total","withQueryTags","whenRequest","queryTags","reply","persist","withQueryTagsForAccount","queryTagsForAccount","withListTags","listTags","withListTagsForAccount","listTagsForAccount","createTagResponseMock","__applicationErrorsType","updatedDate","withCreateTag","mock","createTag","withCreateTagForAccount","createTagForAccount","withUpdateTag","updateTag","withUpdateTagForAccount","updateTagForAccount","withDeleteTag","deleteTag","getQueryTagsErrorMock","status","Promise","_resolve","reject","window","setTimeout","createHttpErrorMock","getListTagsErrorMock","getListTagsForAccountErrorMock","getCreateTagErrorMock","requestId","getCreateTagForAccountErrorMock","getUpdateTagErrorMock","getDeleteTagErrorMock","createTagImdb","fqdn","createBackend","InMemoryBackend","paginationMode","delay","createOne","index","predicate","filters","item","orderBy","sort","itemKey","tagsAPIHttpClientMocks","tagsBackend","fetchData","then","items","_query$filter2","_query$cursorPaging3","_query$cursorPaging4","allItems","filtered","_tag$name2","push","update","tagId","map","delete"],"sources":["../../../src/test-utils/TagsMocks.ts"],"sourcesContent":["import { Chance } from 'chance';\nimport { whenRequest } from '@wix/fe-essentials/http-client/testkit/client';\nimport {\n listTags,\n listTagsForAccount,\n queryTags,\n queryTagsForAccount,\n createTag,\n updateTag,\n deleteTag,\n createTagForAccount,\n updateTagForAccount,\n} from '@wix/bex-utils/@wix/ambassador-os-tags-v1-tag/http';\nimport {\n QueryTagsRequest,\n Tag as TagType,\n} from '@wix/bex-utils/@wix/ambassador-os-tags-v1-tag/types';\nimport { InMemoryBackend } from '../testkit/backend';\nimport { createHttpErrorMock } from './HttpErrorMocks';\nimport { ExpectedTestError } from '../__tests__/utils/ExpectedTestError';\n\nclass ServerError extends ExpectedTestError {\n readonly code: string;\n\n constructor(code: string, message: string) {\n super(message);\n this.code = code;\n }\n}\n\nconst chance = new Chance();\n\nconst aTag = (overrides: Partial<TagType> = {}): TagType => {\n return {\n id: chance.guid(),\n name: chance.word({ length: 5 }),\n createdDate: chance.date({\n min: new Date(Date.now() - 365 * 24 * 60 * 60 * 1000),\n max: new Date(),\n }) as Date,\n ...overrides,\n } as TagType;\n};\n\nexport const aTagsArray = (count: number) =>\n Array.from({ length: count }, () => aTag());\n\nexport const generateInvalidLongName = (length: number) =>\n chance.string({ length });\nexport const TAGS = aTagsArray(2);\n\nconst buildQueryTagsReply =\n (tags?: TagType[]) =>\n async ({ query }: Partial<QueryTagsRequest>) => {\n const allTags = tags || TAGS;\n const search = query?.filter?.name?.$startsWith as string | undefined;\n const filteredTags = search\n ? allTags.filter((tag) =>\n tag.name?.toLowerCase().startsWith(search.toLowerCase()),\n )\n : allTags;\n const limit = query?.cursorPaging?.limit ?? filteredTags.length;\n const cursorToken = query?.cursorPaging?.cursor;\n const offset = cursorToken ? parseInt(atob(cursorToken), 10) : 0;\n const pageItems = filteredTags.slice(offset, offset + limit);\n const nextOffset = offset + limit;\n const hasNext = nextOffset < filteredTags.length;\n return {\n tags: pageItems,\n pagingMetadata: {\n count: pageItems.length,\n cursors: { next: hasNext ? btoa(String(nextOffset)) : null },\n hasNext,\n total: filteredTags.length,\n },\n };\n };\n\nexport const withQueryTags = (tags?: TagType[]) =>\n whenRequest(queryTags).reply(200, buildQueryTagsReply(tags)).persist();\n\nexport const withQueryTagsForAccount = (tags?: TagType[]) =>\n whenRequest(queryTagsForAccount)\n .reply(200, buildQueryTagsReply(tags))\n .persist();\n\n// Bundles the queryTags mock too — tag assignment (fetchTagsByIds) and\n// TagsFilter still read through queryTags\nexport const withListTags = (tags?: TagType[]) => [\n whenRequest(listTags)\n .reply(200, async () => ({ tags: tags || TAGS }))\n .persist(),\n withQueryTags(tags),\n];\n\nexport const withListTagsForAccount = (tags?: TagType[]) => [\n whenRequest(listTagsForAccount)\n .reply(200, async () => ({ tags: tags || TAGS }))\n .persist(),\n withQueryTagsForAccount(tags),\n];\n\nconst createTagResponseMock = (tag: TagType) => ({\n __applicationErrorsType: {},\n tag: { createdDate: new Date(), updatedDate: new Date(), ...tag },\n});\n\nexport const withCreateTag = (mock?: jest.Mock<any, any>) =>\n whenRequest(createTag)\n .reply(\n 200,\n mock ||\n (async ({ tag }) => {\n return createTagResponseMock(tag);\n }),\n )\n .persist();\n\nexport const withCreateTagForAccount = (mock?: jest.Mock<any, any>) =>\n whenRequest(createTagForAccount)\n .reply(\n 200,\n mock ||\n (async ({ tag }) => {\n return createTagResponseMock(tag);\n }),\n )\n .persist();\n\nexport const withUpdateTag = () =>\n whenRequest(updateTag)\n .reply(200, async (tag) => {\n return tag;\n })\n .persist();\n\nexport const withUpdateTagForAccount = () =>\n whenRequest(updateTagForAccount)\n .reply(200, async (tag) => {\n return tag;\n })\n .persist();\n\nexport const withDeleteTag = () =>\n whenRequest(deleteTag)\n .reply(200, async () => {\n return {};\n })\n .persist();\n\nexport const getQueryTagsErrorMock = ({\n code = 'ERR_NETWORK',\n status = 429,\n}: {\n code?: string;\n status?: number;\n} = {}) =>\n whenRequest(queryTags)\n .reply(200, async () => {\n return new Promise((_resolve, reject) => {\n window.setTimeout(() => {\n reject(createHttpErrorMock({ code, status }));\n }, 500);\n });\n })\n .persist();\n\nexport const getListTagsErrorMock = ({\n code = 'ERR_NETWORK',\n status = 429,\n}: {\n code?: string;\n status?: number;\n} = {}) => [\n whenRequest(listTags)\n .reply(200, async () => {\n return new Promise((_resolve, reject) => {\n window.setTimeout(() => {\n reject(createHttpErrorMock({ code, status }));\n }, 500);\n });\n })\n .persist(),\n getQueryTagsErrorMock({ code, status }),\n];\n\nexport const getListTagsForAccountErrorMock = ({\n code = 'ERR_NETWORK',\n status = 429,\n}: {\n code?: string;\n status?: number;\n} = {}) => [\n whenRequest(listTagsForAccount)\n .reply(200, async () => {\n return new Promise((_resolve, reject) => {\n setTimeout(() => {\n reject(createHttpErrorMock({ code, status }));\n }, 500);\n });\n })\n .persist(),\n whenRequest(queryTagsForAccount)\n .reply(200, async () => {\n return new Promise((_resolve, reject) => {\n setTimeout(() => {\n reject(createHttpErrorMock({ code, status }));\n }, 500);\n });\n })\n .persist(),\n];\n\nexport const getCreateTagErrorMock = ({\n code = 'ERR_NETWORK',\n status = 429,\n requestId,\n}: {\n code?: string;\n status?: number;\n requestId?: string;\n} = {}) =>\n whenRequest(createTag)\n .reply(200, async () => {\n return new Promise((_resolve, reject) => {\n window.setTimeout(() => {\n reject(createHttpErrorMock({ code, status, requestId }));\n }, 500);\n });\n })\n .persist();\n\nexport const getCreateTagForAccountErrorMock = ({\n code = 'ERR_NETWORK',\n status = 429,\n}: {\n code?: string;\n status?: number;\n} = {}) =>\n whenRequest(createTagForAccount)\n .reply(200, async () => {\n return new Promise((_resolve, reject) => {\n window.setTimeout(() => {\n reject(createHttpErrorMock({ code, status }));\n }, 500);\n });\n })\n .persist();\n\nexport const getUpdateTagErrorMock = ({\n code,\n status,\n}: {\n code?: string;\n status?: number;\n} = {}) =>\n whenRequest(updateTag)\n .reply(200, async () => {\n return new Promise((_resolve, reject) => {\n window.setTimeout(() => {\n reject(createHttpErrorMock({ code, status }));\n }, 500);\n });\n })\n .persist();\n\nexport const getDeleteTagErrorMock = (code: string = 'ERR_NETWORK') =>\n whenRequest(deleteTag)\n .reply(200, async () => {\n return new Promise((_resolve, reject) => {\n window.setTimeout(() => {\n reject(new ServerError(code, 'error'));\n }, 500);\n });\n })\n .persist();\n\nexport default function createTagImdb({\n createdDate = new Date(Date.now() - 365 * 24 * 60 * 60 * 1000),\n updatedDate = createdDate,\n fqdn = 'wix.patterns.dummyservice.v1.dummy_entity',\n ...overrides\n}: Partial<TagType> = {}): TagType {\n return {\n createdDate,\n updatedDate,\n fqdn,\n ...overrides,\n };\n}\n\nexport function createBackend(tags: TagType[]) {\n return new InMemoryBackend<TagType>({\n total: tags.length,\n paginationMode: 'offset',\n delay: { min: 100, max: 2000 },\n createOne: (index: number) => createTagImdb(tags[index]),\n predicate: (query) => {\n const filters = query.filters ?? {};\n const { fqdn } = filters;\n return (item) => item.fqdn === fqdn;\n },\n orderBy: (query) => {\n return [...(query.sort ?? [])];\n },\n itemKey: (item) => item.id!,\n });\n}\n\nexport const tagsAPIHttpClientMocks = (tags: TagType[]) => {\n const tagsBackend = createBackend(tags);\n return [\n whenRequest(listTags)\n .reply(200, async ({ fqdn }) => {\n return tagsBackend\n .fetchData({\n filters: {\n fqdn,\n },\n limit: tags.length,\n })\n .then(({ items }) => {\n if (fqdn === 'wix.patterns.dummyservice.v1.empty') {\n return { tags: [] };\n } else if (fqdn === 'wix.patterns.dummyservice.v1.over_limit') {\n return { tags: aTagsArray(105) };\n } else {\n return { tags: items };\n }\n });\n })\n .persist(),\n whenRequest(queryTags)\n .reply(200, async ({ fqdn, query }) => {\n if (fqdn === 'wix.patterns.dummyservice.v1.empty') {\n return {\n tags: [],\n pagingMetadata: {\n count: 0,\n cursors: { next: null },\n hasNext: false,\n },\n };\n }\n const allItems =\n fqdn === 'wix.patterns.dummyservice.v1.over_limit'\n ? aTagsArray(105)\n : (await tagsBackend.fetchData({ filters: { fqdn }, limit: 1000 }))\n .items;\n const search = query?.filter?.name?.$startsWith as string | undefined;\n const filtered = search\n ? allItems.filter((tag) =>\n tag.name?.toLowerCase().startsWith(search.toLowerCase()),\n )\n : allItems;\n const limit = query?.cursorPaging?.limit ?? filtered.length;\n const cursorToken = query?.cursorPaging?.cursor;\n const offset = cursorToken ? parseInt(atob(cursorToken), 10) : 0;\n const pageItems = filtered.slice(offset, offset + limit);\n const nextOffset = offset + limit;\n const hasNext = nextOffset < filtered.length;\n return {\n tags: pageItems,\n pagingMetadata: {\n count: pageItems.length,\n cursors: { next: hasNext ? btoa(String(nextOffset)) : null },\n hasNext,\n total: filtered.length,\n },\n };\n })\n .persist(),\n whenRequest(createTag)\n .reply(200, ({ tag }) => {\n tagsBackend.push([tag]);\n return {\n __applicationErrorsType: {},\n tag,\n };\n })\n .persist(),\n whenRequest(updateTag)\n .reply(200, ({ tag }) => {\n tagsBackend.update(tag);\n return { tag };\n })\n .persist(),\n whenRequest(deleteTag)\n .reply(200, ({ tagId }) => {\n tagsBackend.map.delete(tagId);\n })\n .persist(),\n ];\n};\n"],"mappings":"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","ignoreList":[]}
|
package/dist/cjs/version.js
CHANGED
package/dist/cjs/version.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["version","exports"],"sources":["../../src/version.ts"],"sourcesContent":["export const version = 'patterns@1.
|
|
1
|
+
{"version":3,"names":["version","exports"],"sources":["../../src/version.ts"],"sourcesContent":["export const version = 'patterns@1.427.0';\n"],"mappings":";;;;AAAO,MAAMA,OAAO,GAAAC,OAAA,CAAAD,OAAA,GAAG,kBAAkB","ignoreList":[]}
|
|
@@ -0,0 +1,527 @@
|
|
|
1
|
+
# ImportButton
|
|
2
|
+
|
|
3
|
+
**Category:** Features/Import
|
|
4
|
+
|
|
5
|
+
## Design
|
|
6
|
+
|
|
7
|
+
### Description
|
|
8
|
+
|
|
9
|
+
The `ImportButton` is the platformized solution for importing a CSV file into a collection.
|
|
10
|
+
|
|
11
|
+
It renders an import action in the collection toolbar. On the default toolbar it shows a `ResponsiveButton`; on a bulk-action toolbar (`toolbarType="bulkActionToolbar"`) it shows a small secondary `Button`. Clicking it opens a multi-step modal (a `Drawer` on mobile) that walks the user through:
|
|
12
|
+
|
|
13
|
+
1. **Upload** — pick a `.csv` file.
|
|
14
|
+
2. **Map columns** — match each CSV column to an existing collection field, create a new field for it, or skip it.
|
|
15
|
+
3. **Import** — the rows are sent to the server and progress is shown.
|
|
16
|
+
4. **Summary** — created / updated / failed counts, with a "Download CSV" of the failed rows when some rows were rejected.
|
|
17
|
+
|
|
18
|
+
Like `ExportTo`, the feature has two parts:
|
|
19
|
+
|
|
20
|
+
- **Client** — the button and modal, shipped in `@wix/patterns`. You configure it with a single `config` object plus a `renderFieldEditor`, both produced by a **source hook** (below), and place it with the `` `importButton` prop.
|
|
21
|
+
- **Server** — the actual write is done by a Wix Hub **Data Movement** job (see the [data-hub infrastructure](#data-hub-infrastructure) section). The client uploads the file, submits the job, and polls it to completion.
|
|
22
|
+
|
|
23
|
+
#### Choosing a source hook
|
|
24
|
+
|
|
25
|
+
`ImportButton` never takes hand-built inputs. You pick the hook that matches where the data is written, and spread its result onto ``:
|
|
26
|
+
|
|
27
|
+
- **CMS (Wix Data)** — [`useSchemaImport`](./?path=/story/features-import--use-schema-import). Reads the import inputs live from the same schema source that backs the table, and supplies the CMS create/edit-field modal.
|
|
28
|
+
|
|
29
|
+
```jsx
|
|
30
|
+
import { ImportButton, useSchemaImport } from '@wix/patterns';
|
|
31
|
+
|
|
32
|
+
const importProps = useSchemaImport(schemaSource);
|
|
33
|
+
|
|
34
|
+
} />;
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
- **Platformized (non–Wix-Data destination)** — [`usePlatformizedImport`](./?path=/story/features-import--use-platformized-import). For a target such as the stores catalog. Reads the table's toolbar so a DataExtension source's live fields are wired in.
|
|
38
|
+
|
|
39
|
+
```jsx
|
|
40
|
+
import { ImportButton, usePlatformizedImport } from '@wix/patterns';
|
|
41
|
+
|
|
42
|
+
const importProps = usePlatformizedImport({
|
|
43
|
+
state,
|
|
44
|
+
destination: { storesCatalogProducts: {} },
|
|
45
|
+
fields: [{ id: 'name', header: 'Name', required: true }],
|
|
46
|
+
});
|
|
47
|
+
|
|
48
|
+
} />;
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
See each hook's page for its full props.
|
|
52
|
+
|
|
53
|
+
#### data-hub infrastructure
|
|
54
|
+
|
|
55
|
+
The import runs **entirely server-side** in [Wix Data Hub](https://github.com/wix-private/wix-data-hub) — a generic data-movement job executor. The client drives it through the `@wix/ambassador-hub-v1-job` API ([job submission & monitoring](https://github.com/wix-private/cloud/blob/master/hub/wix-data-hub-fs2)); the actual reading/writing is done by the [Data Hub executor](https://github.com/wix-private/wix-data-hub/blob/master/packages/wix-data-hub-executor-c/README.md), whose model is: a **source** reads batches, **transformations** alter them, and a **destination** writes them. The client only:
|
|
56
|
+
|
|
57
|
+
1. Reserves an upload URL and PUTs the (rewritten) CSV, receiving a `fileId`.
|
|
58
|
+
2. Submits a job (`source: { file }`, `destination`) and receives a `jobId`.
|
|
59
|
+
3. Polls the job every 2 seconds until it reaches `COMPLETED`, `PARTIALLY_SUCCESSFUL`, or `FAILED`.
|
|
60
|
+
4. Lists the job's per-row movement logs to build the failed-rows CSV, and terminates the job if the user cancels. Terminating does **not** roll back rows already written — that is what an optional `backup` (on either hook) is for.
|
|
61
|
+
|
|
62
|
+
The **`destination`** you pass identifies which executor [destination](https://github.com/wix-private/wix-data-hub/blob/master/packages/wix-data-hub-executor-c/src/api/destination.ts) writes the rows — e.g. `{ wixDataCollection: … }` ([wix-data-collection](https://github.com/wix-private/wix-data-hub/tree/master/packages/wix-data-hub-executor-c/src/plugins/wix-data-collection) plugin) or `{ storesCatalogProducts: {} }` ([online-stores](https://github.com/wix-private/wix-data-hub/tree/master/packages/wix-data-hub-executor-c/src/plugins/online-stores) plugin). The CMS hook (`useSchemaImport`) builds the `wixDataCollection` destination for you; a platformized hook passes its `destination` through verbatim.
|
|
63
|
+
|
|
64
|
+
Because a failed import comes back on a `200` (the failure is in the job status, not an HTTP error), the optional `jobApplicationErrorMap` (on either hook) lets you map the job's application-error codes to messages. You supply only the code → message map; the import resolves it through the error handler internally.
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
```tsx
|
|
68
|
+
import { ImportButton, useSchemaImport, usePlatformizedImport } from '@wix/patterns';
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
---
|
|
72
|
+
|
|
73
|
+
### Examples
|
|
74
|
+
|
|
75
|
+
### CMS import
|
|
76
|
+
|
|
77
|
+
A Wix Data (CMS) collection. `useSchemaImport` reads the import inputs live from the table’s schema source and supplies the CMS create/edit-field modal; spread its result onto ``.
|
|
78
|
+
|
|
79
|
+
```tsx
|
|
80
|
+
import React from 'react';
|
|
81
|
+
import { CollectionPage } from '@wix/patterns/page';
|
|
82
|
+
import {
|
|
83
|
+
CustomColumns,
|
|
84
|
+
ImportButton,
|
|
85
|
+
Table,
|
|
86
|
+
tableSchemaSource,
|
|
87
|
+
useSchemaImport,
|
|
88
|
+
useTableCollection,
|
|
89
|
+
} from '@wix/patterns';
|
|
90
|
+
import { createInMemorySchemaSource } from '@wix/patterns/testkit';
|
|
91
|
+
|
|
92
|
+
type CmsItem = {
|
|
93
|
+
_id: string;
|
|
94
|
+
name: string;
|
|
95
|
+
price: string;
|
|
96
|
+
};
|
|
97
|
+
|
|
98
|
+
function CmsImport() {
|
|
99
|
+
// In a real app, build the source with `createCmsSchemaSource` from
|
|
100
|
+
// `@wix/patterns-cms`. This docs example uses an in-memory source so it runs
|
|
101
|
+
// with no backend — the wiring below is identical either way.
|
|
102
|
+
const [schemaSource] = React.useState(() => {
|
|
103
|
+
const { source } = createInMemorySchemaSource<CmsItem>({
|
|
104
|
+
collectionId: 'Products',
|
|
105
|
+
fields: [
|
|
106
|
+
{ id: 'name', displayName: 'Name', type: 'SHORT_TEXT' },
|
|
107
|
+
{ id: 'price', displayName: 'Price', type: 'NUMBER' },
|
|
108
|
+
],
|
|
109
|
+
items: [
|
|
110
|
+
{ _id: '1', name: 'Coffee Mug', price: '12' },
|
|
111
|
+
{ _id: '2', name: 'T-Shirt', price: '25' },
|
|
112
|
+
],
|
|
113
|
+
});
|
|
114
|
+
return tableSchemaSource(source);
|
|
115
|
+
});
|
|
116
|
+
|
|
117
|
+
const state = useTableCollection<CmsItem>(schemaSource.collectionConfig);
|
|
118
|
+
|
|
119
|
+
// `useSchemaImport` reads the import inputs (fields, collection, create-new-
|
|
120
|
+
// field, backup) live from the schema source and returns the `ImportButton`
|
|
121
|
+
// props — `config` + the CMS create/edit-field modal — so just spread them.
|
|
122
|
+
const importProps = useSchemaImport(schemaSource);
|
|
123
|
+
|
|
124
|
+
return (
|
|
125
|
+
<CollectionPage>
|
|
126
|
+
<CollectionPage.Header title={{ text: 'Products' }} />
|
|
127
|
+
<CollectionPage.Content>
|
|
128
|
+
<Table
|
|
129
|
+
state={state}
|
|
130
|
+
horizontalScroll
|
|
131
|
+
fieldsSource={schemaSource}
|
|
132
|
+
customColumns={<CustomColumns />}
|
|
133
|
+
columns={[]}
|
|
134
|
+
importButton={<ImportButton {...importProps} />}
|
|
135
|
+
/>
|
|
136
|
+
</CollectionPage.Content>
|
|
137
|
+
</CollectionPage>
|
|
138
|
+
);
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
export default CmsImport;
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
---
|
|
145
|
+
|
|
146
|
+
### Platformized import
|
|
147
|
+
|
|
148
|
+
A non–Wix-Data destination (here the stores catalog). `usePlatformizedImport` builds the config from the table’s toolbar + your `fields`/`destination`; spread its result onto ``.
|
|
149
|
+
|
|
150
|
+
```tsx
|
|
151
|
+
import { Page } from '@wix/design-system';
|
|
152
|
+
import React from 'react';
|
|
153
|
+
import {
|
|
154
|
+
ImportButton,
|
|
155
|
+
PageWrapper,
|
|
156
|
+
Table,
|
|
157
|
+
ToolbarTitle,
|
|
158
|
+
usePlatformizedImport,
|
|
159
|
+
useTableCollection,
|
|
160
|
+
} from '@wix/patterns';
|
|
161
|
+
import { queryStoreVariants } from '@wix/ambassador-stores-catalog-v1-product/http';
|
|
162
|
+
import { StoreVariant } from '@wix/ambassador-stores-catalog-v1-product/types';
|
|
163
|
+
import { useHttpClient } from '@wix/yoshi-flow-bm';
|
|
164
|
+
|
|
165
|
+
function PlatformizedImport() {
|
|
166
|
+
const httpClient = useHttpClient();
|
|
167
|
+
|
|
168
|
+
const state = useTableCollection<StoreVariant>({
|
|
169
|
+
queryName: 'ImportButton-platformized',
|
|
170
|
+
fetchData: (query) => {
|
|
171
|
+
const { limit } = query;
|
|
172
|
+
return httpClient
|
|
173
|
+
.request(queryStoreVariants({ query: { cursorPaging: { limit } } }))
|
|
174
|
+
.then(({ data }) => ({
|
|
175
|
+
items: data.variants ?? [],
|
|
176
|
+
total: data.metadata?.total,
|
|
177
|
+
}));
|
|
178
|
+
},
|
|
179
|
+
itemKey: (variant) => variant.id ?? '',
|
|
180
|
+
itemName: (variant) => variant.productName ?? '',
|
|
181
|
+
fetchErrorMessage: () => 'Error fetching products',
|
|
182
|
+
});
|
|
183
|
+
|
|
184
|
+
// `usePlatformizedImport` reads the table's toolbar and returns the
|
|
185
|
+
// `ImportButton` props for a platformized (non–Wix-Data) destination — here
|
|
186
|
+
// the stores catalog. Spread the result.
|
|
187
|
+
const importProps = usePlatformizedImport({
|
|
188
|
+
state,
|
|
189
|
+
destination: { storesCatalogProducts: {} },
|
|
190
|
+
fields: [
|
|
191
|
+
{ id: 'name', header: 'Name' },
|
|
192
|
+
{ id: 'sku', header: 'SKU' },
|
|
193
|
+
],
|
|
194
|
+
});
|
|
195
|
+
|
|
196
|
+
return (
|
|
197
|
+
<PageWrapper>
|
|
198
|
+
<Page height="400px">
|
|
199
|
+
<Page.Header title="Products" />
|
|
200
|
+
<Page.Content>
|
|
201
|
+
<Table
|
|
202
|
+
state={state}
|
|
203
|
+
horizontalScroll
|
|
204
|
+
title={<ToolbarTitle title="Products" showTotal />}
|
|
205
|
+
columns={[
|
|
206
|
+
{ title: 'Name', render: (variant) => variant.productName },
|
|
207
|
+
]}
|
|
208
|
+
importButton={<ImportButton {...importProps} />}
|
|
209
|
+
/>
|
|
210
|
+
</Page.Content>
|
|
211
|
+
</Page>
|
|
212
|
+
</PageWrapper>
|
|
213
|
+
);
|
|
214
|
+
}
|
|
215
|
+
|
|
216
|
+
export default PlatformizedImport;
|
|
217
|
+
```
|
|
218
|
+
|
|
219
|
+
---
|
|
220
|
+
|
|
221
|
+
### Required fields
|
|
222
|
+
|
|
223
|
+
Mark fields with `required: true`. The import is blocked while any required field is still unmapped, with a footnote listing the missing ones. (Shown with `usePlatformizedImport`.)
|
|
224
|
+
|
|
225
|
+
```tsx
|
|
226
|
+
import { Page } from '@wix/design-system';
|
|
227
|
+
import React from 'react';
|
|
228
|
+
import {
|
|
229
|
+
ImportButton,
|
|
230
|
+
PageWrapper,
|
|
231
|
+
Table,
|
|
232
|
+
ToolbarTitle,
|
|
233
|
+
usePlatformizedImport,
|
|
234
|
+
useTableCollection,
|
|
235
|
+
} from '@wix/patterns';
|
|
236
|
+
import { queryStoreVariants } from '@wix/ambassador-stores-catalog-v1-product/http';
|
|
237
|
+
import { StoreVariant } from '@wix/ambassador-stores-catalog-v1-product/types';
|
|
238
|
+
import { useHttpClient } from '@wix/yoshi-flow-bm';
|
|
239
|
+
|
|
240
|
+
function RequiredFields() {
|
|
241
|
+
const httpClient = useHttpClient();
|
|
242
|
+
|
|
243
|
+
const state = useTableCollection<StoreVariant>({
|
|
244
|
+
queryName: 'ImportButton-required',
|
|
245
|
+
fetchData: (query) => {
|
|
246
|
+
const { limit } = query;
|
|
247
|
+
return httpClient
|
|
248
|
+
.request(queryStoreVariants({ query: { cursorPaging: { limit } } }))
|
|
249
|
+
.then(({ data }) => ({
|
|
250
|
+
items: data.variants ?? [],
|
|
251
|
+
total: data.metadata?.total,
|
|
252
|
+
}));
|
|
253
|
+
},
|
|
254
|
+
itemKey: (variant) => variant.id ?? '',
|
|
255
|
+
itemName: (variant) => variant.productName ?? '',
|
|
256
|
+
fetchErrorMessage: () => 'Error fetching products',
|
|
257
|
+
});
|
|
258
|
+
|
|
259
|
+
// Mark fields `required: true`. The import is blocked while any required field
|
|
260
|
+
// is still unmapped, with a footnote listing the missing ones.
|
|
261
|
+
const importProps = usePlatformizedImport({
|
|
262
|
+
state,
|
|
263
|
+
destination: { storesCatalogProducts: {} },
|
|
264
|
+
fields: [
|
|
265
|
+
{ id: 'name', header: 'Name', required: true },
|
|
266
|
+
{ id: 'price', header: 'Price', required: true },
|
|
267
|
+
{ id: 'sku', header: 'SKU' },
|
|
268
|
+
],
|
|
269
|
+
});
|
|
270
|
+
|
|
271
|
+
return (
|
|
272
|
+
<PageWrapper>
|
|
273
|
+
<Page height="400px">
|
|
274
|
+
<Page.Header title="Products" />
|
|
275
|
+
<Page.Content>
|
|
276
|
+
<Table
|
|
277
|
+
state={state}
|
|
278
|
+
horizontalScroll
|
|
279
|
+
title={<ToolbarTitle title="Products" showTotal />}
|
|
280
|
+
columns={[
|
|
281
|
+
{ title: 'Name', render: (variant) => variant.productName },
|
|
282
|
+
]}
|
|
283
|
+
importButton={<ImportButton {...importProps} />}
|
|
284
|
+
/>
|
|
285
|
+
</Page.Content>
|
|
286
|
+
</Page>
|
|
287
|
+
</PageWrapper>
|
|
288
|
+
);
|
|
289
|
+
}
|
|
290
|
+
|
|
291
|
+
export default RequiredFields;
|
|
292
|
+
```
|
|
293
|
+
|
|
294
|
+
---
|
|
295
|
+
|
|
296
|
+
### Create new field
|
|
297
|
+
|
|
298
|
+
A CMS capability: when the collection’s schema permits adding fields, unmapped CSV columns default to creating a new field (with an "Edit field" affordance) instead of being skipped. `useSchemaImport` wires it from the schema automatically.
|
|
299
|
+
|
|
300
|
+
```tsx
|
|
301
|
+
import React from 'react';
|
|
302
|
+
import { CollectionPage } from '@wix/patterns/page';
|
|
303
|
+
import {
|
|
304
|
+
CustomColumns,
|
|
305
|
+
ImportButton,
|
|
306
|
+
Table,
|
|
307
|
+
tableSchemaSource,
|
|
308
|
+
useSchemaImport,
|
|
309
|
+
useTableCollection,
|
|
310
|
+
} from '@wix/patterns';
|
|
311
|
+
import { createInMemorySchemaSource } from '@wix/patterns/testkit';
|
|
312
|
+
|
|
313
|
+
type CmsItem = {
|
|
314
|
+
_id: string;
|
|
315
|
+
name: string;
|
|
316
|
+
};
|
|
317
|
+
|
|
318
|
+
// "Create new field" is a CMS (Wix Data) capability. `useSchemaImport` wires it
|
|
319
|
+
// automatically: when the collection's schema permits adding fields
|
|
320
|
+
// (`schemaPermissions.createField`), CSV columns that don't match an existing
|
|
321
|
+
// field default to creating a new field (with an "Edit field" affordance)
|
|
322
|
+
// instead of being skipped. Here only `name` exists, so other CSV columns become
|
|
323
|
+
// new fields. (In a real app the source is `createCmsSchemaSource`.)
|
|
324
|
+
function CreateNewField() {
|
|
325
|
+
const [schemaSource] = React.useState(() => {
|
|
326
|
+
const { source } = createInMemorySchemaSource<CmsItem>({
|
|
327
|
+
collectionId: 'Products',
|
|
328
|
+
fields: [{ id: 'name', displayName: 'Name', type: 'SHORT_TEXT' }],
|
|
329
|
+
items: [{ _id: '1', name: 'Coffee Mug' }],
|
|
330
|
+
schemaPermissions: {
|
|
331
|
+
createField: true,
|
|
332
|
+
updateField: true,
|
|
333
|
+
deleteField: true,
|
|
334
|
+
},
|
|
335
|
+
});
|
|
336
|
+
return tableSchemaSource(source);
|
|
337
|
+
});
|
|
338
|
+
|
|
339
|
+
const state = useTableCollection<CmsItem>(schemaSource.collectionConfig);
|
|
340
|
+
const importProps = useSchemaImport(schemaSource);
|
|
341
|
+
|
|
342
|
+
return (
|
|
343
|
+
<CollectionPage>
|
|
344
|
+
<CollectionPage.Header title={{ text: 'Products' }} />
|
|
345
|
+
<CollectionPage.Content>
|
|
346
|
+
<Table
|
|
347
|
+
state={state}
|
|
348
|
+
horizontalScroll
|
|
349
|
+
fieldsSource={schemaSource}
|
|
350
|
+
customColumns={<CustomColumns />}
|
|
351
|
+
columns={[]}
|
|
352
|
+
importButton={<ImportButton {...importProps} />}
|
|
353
|
+
/>
|
|
354
|
+
</CollectionPage.Content>
|
|
355
|
+
</CollectionPage>
|
|
356
|
+
);
|
|
357
|
+
}
|
|
358
|
+
|
|
359
|
+
export default CreateNewField;
|
|
360
|
+
```
|
|
361
|
+
|
|
362
|
+
---
|
|
363
|
+
|
|
364
|
+
### Update or skip by ID
|
|
365
|
+
|
|
366
|
+
A CMS behavior: when a CSV column maps to the collection’s id field (`_id`), that row floats to the top and the modal offers an "update or skip" write policy for rows that collide on ID.
|
|
367
|
+
|
|
368
|
+
```tsx
|
|
369
|
+
import React from 'react';
|
|
370
|
+
import { CollectionPage } from '@wix/patterns/page';
|
|
371
|
+
import {
|
|
372
|
+
CustomColumns,
|
|
373
|
+
ImportButton,
|
|
374
|
+
Table,
|
|
375
|
+
tableSchemaSource,
|
|
376
|
+
useSchemaImport,
|
|
377
|
+
useTableCollection,
|
|
378
|
+
} from '@wix/patterns';
|
|
379
|
+
import { createInMemorySchemaSource } from '@wix/patterns/testkit';
|
|
380
|
+
|
|
381
|
+
type CmsItem = {
|
|
382
|
+
_id: string;
|
|
383
|
+
name: string;
|
|
384
|
+
};
|
|
385
|
+
|
|
386
|
+
// Update-or-skip-by-ID is a CMS (Wix Data) behavior. When a CSV column maps to
|
|
387
|
+
// the collection's id field (`_id`), that row floats to the top and the modal
|
|
388
|
+
// offers an "update or skip" write policy for rows that collide on ID. Include
|
|
389
|
+
// the id field in the schema so it's mappable; `useSchemaImport` derives the id
|
|
390
|
+
// field from the schema. (In a real app the source is `createCmsSchemaSource`.)
|
|
391
|
+
function IdCollisionWritePolicy() {
|
|
392
|
+
const [schemaSource] = React.useState(() => {
|
|
393
|
+
const { source } = createInMemorySchemaSource<CmsItem>({
|
|
394
|
+
collectionId: 'Products',
|
|
395
|
+
idField: '_id',
|
|
396
|
+
fields: [
|
|
397
|
+
{ id: '_id', displayName: 'ID', type: 'SHORT_TEXT' },
|
|
398
|
+
{ id: 'name', displayName: 'Name', type: 'SHORT_TEXT' },
|
|
399
|
+
],
|
|
400
|
+
items: [{ _id: '1', name: 'Coffee Mug' }],
|
|
401
|
+
});
|
|
402
|
+
return tableSchemaSource(source);
|
|
403
|
+
});
|
|
404
|
+
|
|
405
|
+
const state = useTableCollection<CmsItem>(schemaSource.collectionConfig);
|
|
406
|
+
const importProps = useSchemaImport(schemaSource);
|
|
407
|
+
|
|
408
|
+
return (
|
|
409
|
+
<CollectionPage>
|
|
410
|
+
<CollectionPage.Header title={{ text: 'Products' }} />
|
|
411
|
+
<CollectionPage.Content>
|
|
412
|
+
<Table
|
|
413
|
+
state={state}
|
|
414
|
+
horizontalScroll
|
|
415
|
+
fieldsSource={schemaSource}
|
|
416
|
+
customColumns={<CustomColumns />}
|
|
417
|
+
columns={[]}
|
|
418
|
+
importButton={<ImportButton {...importProps} />}
|
|
419
|
+
/>
|
|
420
|
+
</CollectionPage.Content>
|
|
421
|
+
</CollectionPage>
|
|
422
|
+
);
|
|
423
|
+
}
|
|
424
|
+
|
|
425
|
+
export default IdCollisionWritePolicy;
|
|
426
|
+
```
|
|
427
|
+
|
|
428
|
+
---
|
|
429
|
+
|
|
430
|
+
### Backup & error handling
|
|
431
|
+
|
|
432
|
+
Pass a `backup` to snapshot the collection before importing (undone on cancel) and a `jobApplicationErrorMap` to map a failed job’s application-error codes to messages. (Shown with `usePlatformizedImport`.)
|
|
433
|
+
|
|
434
|
+
```tsx
|
|
435
|
+
import { Page } from '@wix/design-system';
|
|
436
|
+
import React from 'react';
|
|
437
|
+
import {
|
|
438
|
+
ImportButton,
|
|
439
|
+
PageWrapper,
|
|
440
|
+
Table,
|
|
441
|
+
ToolbarTitle,
|
|
442
|
+
usePlatformizedImport,
|
|
443
|
+
useTableCollection,
|
|
444
|
+
} from '@wix/patterns';
|
|
445
|
+
import { queryStoreVariants } from '@wix/ambassador-stores-catalog-v1-product/http';
|
|
446
|
+
import { StoreVariant } from '@wix/ambassador-stores-catalog-v1-product/types';
|
|
447
|
+
import { useHttpClient } from '@wix/yoshi-flow-bm';
|
|
448
|
+
|
|
449
|
+
function BackupAndErrorHandling() {
|
|
450
|
+
const httpClient = useHttpClient();
|
|
451
|
+
|
|
452
|
+
const state = useTableCollection<StoreVariant>({
|
|
453
|
+
queryName: 'ImportButton-backup',
|
|
454
|
+
fetchData: (query) => {
|
|
455
|
+
const { limit } = query;
|
|
456
|
+
return httpClient
|
|
457
|
+
.request(queryStoreVariants({ query: { cursorPaging: { limit } } }))
|
|
458
|
+
.then(({ data }) => ({
|
|
459
|
+
items: data.variants ?? [],
|
|
460
|
+
total: data.metadata?.total,
|
|
461
|
+
}));
|
|
462
|
+
},
|
|
463
|
+
itemKey: (variant) => variant.id ?? '',
|
|
464
|
+
itemName: (variant) => variant.productName ?? '',
|
|
465
|
+
fetchErrorMessage: () => 'Error fetching products',
|
|
466
|
+
});
|
|
467
|
+
|
|
468
|
+
const importProps = usePlatformizedImport({
|
|
469
|
+
state,
|
|
470
|
+
destination: { storesCatalogProducts: {} },
|
|
471
|
+
fields: [{ id: 'name', header: 'Name', required: true }],
|
|
472
|
+
|
|
473
|
+
// Optional: snapshot the collection before importing. The returned `restore`
|
|
474
|
+
// runs only if the user cancels mid-import (a job failure leaves partial
|
|
475
|
+
// rows and offers "Try again" instead).
|
|
476
|
+
backup: async () => {
|
|
477
|
+
// ...take a snapshot...
|
|
478
|
+
return {
|
|
479
|
+
restore: async () => {
|
|
480
|
+
// ...restore the snapshot...
|
|
481
|
+
},
|
|
482
|
+
};
|
|
483
|
+
},
|
|
484
|
+
|
|
485
|
+
// Optional: map the failed job's application-error codes to messages. You
|
|
486
|
+
// supply only the code → message map; the import resolves it through the
|
|
487
|
+
// error handler internally.
|
|
488
|
+
jobApplicationErrorMap: {
|
|
489
|
+
MISSING_REQUIRED_FIELDS: ({ data }) => ({
|
|
490
|
+
message: `Missing required fields: ${data?.missingFields?.join(', ')}`,
|
|
491
|
+
}),
|
|
492
|
+
},
|
|
493
|
+
});
|
|
494
|
+
|
|
495
|
+
return (
|
|
496
|
+
<PageWrapper>
|
|
497
|
+
<Page height="400px">
|
|
498
|
+
<Page.Header title="Products" />
|
|
499
|
+
<Page.Content>
|
|
500
|
+
<Table
|
|
501
|
+
state={state}
|
|
502
|
+
horizontalScroll
|
|
503
|
+
title={<ToolbarTitle title="Products" showTotal />}
|
|
504
|
+
columns={[
|
|
505
|
+
{ title: 'Name', render: (variant) => variant.productName },
|
|
506
|
+
]}
|
|
507
|
+
importButton={<ImportButton {...importProps} />}
|
|
508
|
+
/>
|
|
509
|
+
</Page.Content>
|
|
510
|
+
</Page>
|
|
511
|
+
</PageWrapper>
|
|
512
|
+
);
|
|
513
|
+
}
|
|
514
|
+
|
|
515
|
+
export default BackupAndErrorHandling;
|
|
516
|
+
```
|
|
517
|
+
|
|
518
|
+
## API
|
|
519
|
+
|
|
520
|
+
### Props
|
|
521
|
+
|
|
522
|
+
| Prop | Type | Required | Default | Description |
|
|
523
|
+
|------|------|----------|---------|-------------|
|
|
524
|
+
| `config` | `ImportButtonConfig` | Yes | - | The import inputs. Build it with a source hook — `useSchemaImport` for a CMS (Wix Data) collection, or `usePlatformizedImport` for a platformized destination — and pass the returned `config`. |
|
|
525
|
+
| `renderFieldEditor` | `RenderImportFieldEditor` | No | - | Renders the source's create/edit-field modal (see {@link RenderImportFieldEditor}). Supplied by consumer-driven sources (e.g. `useSchemaImport` for CMS). A DataExtension destination provides its own internally, so it need not be passed for that case. |
|
|
526
|
+
| `toolbarType` | `"bulkActionToolbar" \| "default"` | No | - | Which button variant to render. `'default'` (the default) shows a `ResponsiveButton`; `'bulkActionToolbar'` shows a compact secondary `Button`. |
|
|
527
|
+
|