@wix/bex-core 2.329.0 → 2.330.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.
Files changed (83) hide show
  1. package/dist/cjs/assets/visual-e2e-locale/messages_visuale2e.json +1 -0
  2. package/dist/cjs/index.js +5 -2
  3. package/dist/cjs/index.js.map +1 -1
  4. package/dist/cjs/services/DataExtensionFieldOperationsService.js +3 -3
  5. package/dist/cjs/services/DataExtensionFieldOperationsService.js.map +1 -1
  6. package/dist/cjs/state/ArchiveFieldModalState.js +5 -8
  7. package/dist/cjs/state/ArchiveFieldModalState.js.map +1 -1
  8. package/dist/cjs/state/CustomFieldModalBiReporter.js +5 -9
  9. package/dist/cjs/state/CustomFieldModalBiReporter.js.map +1 -1
  10. package/dist/cjs/state/CustomFieldModalState.js +32 -71
  11. package/dist/cjs/state/CustomFieldModalState.js.map +1 -1
  12. package/dist/cjs/state/DataExtensionState.js +0 -12
  13. package/dist/cjs/state/DataExtensionState.js.map +1 -1
  14. package/dist/cjs/state/DeleteFieldModalState.js +9 -11
  15. package/dist/cjs/state/DeleteFieldModalState.js.map +1 -1
  16. package/dist/cjs/state/{DataExtensionStateBIReporter.js → FieldOperationsBIReporter.js} +7 -32
  17. package/dist/cjs/state/FieldOperationsBIReporter.js.map +1 -0
  18. package/dist/cjs/state/ImportState/ImportState.js +20 -0
  19. package/dist/cjs/state/ImportState/ImportState.js.map +1 -1
  20. package/dist/cjs/state/ImportState/__tests__/ImportState.engine.spec.js +74 -0
  21. package/dist/cjs/state/ImportState/__tests__/ImportState.engine.spec.js.map +1 -1
  22. package/dist/cjs/state/formatPermissionsForBi.js +36 -0
  23. package/dist/cjs/state/formatPermissionsForBi.js.map +1 -0
  24. package/dist/cjs/types/FieldsSource.js +4 -0
  25. package/dist/cjs/types/FieldsSource.js.map +1 -0
  26. package/dist/cjs/types/Schema.js.map +1 -1
  27. package/dist/cjs/types/SchemaSource.js +81 -0
  28. package/dist/cjs/types/SchemaSource.js.map +1 -0
  29. package/dist/esm/assets/visual-e2e-locale/messages_visuale2e.json +1 -0
  30. package/dist/esm/index.js +1 -0
  31. package/dist/esm/index.js.map +1 -1
  32. package/dist/esm/services/DataExtensionFieldOperationsService.js +3 -3
  33. package/dist/esm/services/DataExtensionFieldOperationsService.js.map +1 -1
  34. package/dist/esm/state/ArchiveFieldModalState.js +4 -7
  35. package/dist/esm/state/ArchiveFieldModalState.js.map +1 -1
  36. package/dist/esm/state/CustomFieldModalBiReporter.js +5 -8
  37. package/dist/esm/state/CustomFieldModalBiReporter.js.map +1 -1
  38. package/dist/esm/state/CustomFieldModalState.js +28 -52
  39. package/dist/esm/state/CustomFieldModalState.js.map +1 -1
  40. package/dist/esm/state/DataExtensionState.js +0 -10
  41. package/dist/esm/state/DataExtensionState.js.map +1 -1
  42. package/dist/esm/state/DeleteFieldModalState.js +7 -10
  43. package/dist/esm/state/DeleteFieldModalState.js.map +1 -1
  44. package/dist/esm/state/{DataExtensionStateBIReporter.js → FieldOperationsBIReporter.js} +5 -25
  45. package/dist/esm/state/FieldOperationsBIReporter.js.map +1 -0
  46. package/dist/esm/state/ImportState/ImportState.js +21 -0
  47. package/dist/esm/state/ImportState/ImportState.js.map +1 -1
  48. package/dist/esm/state/ImportState/__tests__/ImportState.engine.spec.js +49 -0
  49. package/dist/esm/state/ImportState/__tests__/ImportState.engine.spec.js.map +1 -1
  50. package/dist/esm/state/formatPermissionsForBi.js +26 -0
  51. package/dist/esm/state/formatPermissionsForBi.js.map +1 -0
  52. package/dist/esm/types/FieldsSource.js +2 -0
  53. package/dist/esm/types/FieldsSource.js.map +1 -0
  54. package/dist/esm/types/SchemaSource.js +52 -0
  55. package/dist/esm/types/SchemaSource.js.map +1 -0
  56. package/dist/types/index.d.ts +4 -1
  57. package/dist/types/index.d.ts.map +1 -1
  58. package/dist/types/state/ArchiveFieldModalState.d.ts +7 -5
  59. package/dist/types/state/ArchiveFieldModalState.d.ts.map +1 -1
  60. package/dist/types/state/CustomFieldModalBiReporter.d.ts +4 -3
  61. package/dist/types/state/CustomFieldModalBiReporter.d.ts.map +1 -1
  62. package/dist/types/state/CustomFieldModalState.d.ts +12 -6
  63. package/dist/types/state/CustomFieldModalState.d.ts.map +1 -1
  64. package/dist/types/state/DataExtensionState.d.ts +0 -2
  65. package/dist/types/state/DataExtensionState.d.ts.map +1 -1
  66. package/dist/types/state/DeleteFieldModalState.d.ts +8 -5
  67. package/dist/types/state/DeleteFieldModalState.d.ts.map +1 -1
  68. package/dist/types/state/{DataExtensionStateBIReporter.d.ts → FieldOperationsBIReporter.d.ts} +4 -5
  69. package/dist/types/state/FieldOperationsBIReporter.d.ts.map +1 -0
  70. package/dist/types/state/ImportState/ImportState.d.ts +2 -0
  71. package/dist/types/state/ImportState/ImportState.d.ts.map +1 -1
  72. package/dist/types/state/formatPermissionsForBi.d.ts +7 -0
  73. package/dist/types/state/formatPermissionsForBi.d.ts.map +1 -0
  74. package/dist/types/types/FieldsSource.d.ts +116 -0
  75. package/dist/types/types/FieldsSource.d.ts.map +1 -0
  76. package/dist/types/types/Schema.d.ts +28 -11
  77. package/dist/types/types/Schema.d.ts.map +1 -1
  78. package/dist/types/types/SchemaSource.d.ts +60 -0
  79. package/dist/types/types/SchemaSource.d.ts.map +1 -0
  80. package/package.json +4 -4
  81. package/dist/cjs/state/DataExtensionStateBIReporter.js.map +0 -1
  82. package/dist/esm/state/DataExtensionStateBIReporter.js.map +0 -1
  83. package/dist/types/state/DataExtensionStateBIReporter.d.ts.map +0 -1
@@ -193,6 +193,7 @@
193
193
  "cairo.archivedFields.more-actions.restore": "Restore",
194
194
  "cairo.archivedFields.more-actions.delete": "Delete",
195
195
  "cairo.customFields.delete.modal.title": "Delete {selectedField}",
196
+ "cairo.customFields.delete.modal.description": "<bold>{selectedField}</bold> and its information will be permanently deleted and can't be restored.",
196
197
  "cairo.customFields.delete.modal.delete.CTA": "Delete",
197
198
  "cairo.customFields.delete.modal.cancel.CTA": "Cancel",
198
199
  "cairo.table.custom-columns.section-divider": "Archived fields",
package/dist/cjs/index.js CHANGED
@@ -7,9 +7,10 @@ var _exportNames = {
7
7
  useSyncProps: true,
8
8
  useSelector: true,
9
9
  QueryCache: true,
10
- DeepPartial: true
10
+ DeepPartial: true,
11
+ defineSchemaSource: true
11
12
  };
12
- exports.useSyncProps = exports.useSelector = exports.QueryCache = exports.DeepPartial = exports.CollectionFactory = exports.CollectionConfigWithConditionals = void 0;
13
+ exports.useSyncProps = exports.useSelector = exports.defineSchemaSource = exports.QueryCache = exports.DeepPartial = exports.CollectionFactory = exports.CollectionConfigWithConditionals = void 0;
13
14
  var _model = require("./model");
14
15
  Object.keys(_model).forEach(function (key) {
15
16
  if (key === "default" || key === "__esModule") return;
@@ -82,4 +83,6 @@ var _core = require("react-query/core");
82
83
  exports.QueryCache = _core.QueryCache;
83
84
  var _DeepPartial = require("./types/DeepPartial");
84
85
  exports.DeepPartial = _DeepPartial.DeepPartial;
86
+ var _SchemaSource = require("./types/SchemaSource");
87
+ exports.defineSchemaSource = _SchemaSource.defineSchemaSource;
85
88
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_model","require","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","_state","_services","_util","_useExport","_useImport","_useImportConfig","_createCollection","_useCollectionDatasetSync","_hooks","CollectionConfigWithConditionals","CollectionFactory","useSyncProps","useSelector","_core","QueryCache","_DeepPartial","DeepPartial"],"sources":["../../src/index.ts"],"sourcesContent":["export * from './model';\nexport * from './state';\nexport * from './services';\nexport * from './util';\nexport * from './hooks/useExport';\nexport * from './hooks/useImport';\nexport * from './hooks/useImportConfig';\nexport * from './hooks/createCollection';\nexport * from './hooks/useCollectionDatasetSync';\nexport {\n CollectionConfigWithConditionals,\n CollectionFactory,\n useSyncProps,\n useSelector,\n} from './hooks';\nexport { QueryCache } from 'react-query/core';\nexport { DeepPartial } from './types/DeepPartial';\nexport type {\n PatternsFieldType,\n QueryOperator,\n NumberRange,\n StringLengthRange,\n BaseReferenceField,\n ReferenceField,\n MultiReferenceField,\n NonReferenceField,\n Field,\n FieldSpec,\n} from './types/Field';\nexport type {\n Schema,\n SchemaPermissions,\n ItemPermissions,\n CollectionBackendBase,\n CollectionBackend,\n FieldActions,\n BackupConfig,\n BulkInsertResult,\n BulkInsertError,\n LoadedSchema,\n SchemaLoader,\n} from './types/Schema';\nexport type {\n CursorQuery,\n OffsetQuery,\n CursorQueryResult,\n OffsetQueryResult,\n CursorFetchDataFn,\n OffsetFetchDataFn,\n FetchTotalFn,\n} from './hooks/paginationModeConfig';\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_model","require","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","_state","_services","_util","_useExport","_useImport","_useImportConfig","_createCollection","_useCollectionDatasetSync","_hooks","CollectionConfigWithConditionals","CollectionFactory","useSyncProps","useSelector","_core","QueryCache","_DeepPartial","DeepPartial","_SchemaSource","defineSchemaSource"],"sources":["../../src/index.ts"],"sourcesContent":["export * from './model';\nexport * from './state';\nexport * from './services';\nexport * from './util';\nexport * from './hooks/useExport';\nexport * from './hooks/useImport';\nexport * from './hooks/useImportConfig';\nexport * from './hooks/createCollection';\nexport * from './hooks/useCollectionDatasetSync';\nexport {\n CollectionConfigWithConditionals,\n CollectionFactory,\n useSyncProps,\n useSelector,\n} from './hooks';\nexport { QueryCache } from 'react-query/core';\nexport { DeepPartial } from './types/DeepPartial';\nexport type {\n PatternsFieldType,\n QueryOperator,\n NumberRange,\n StringLengthRange,\n BaseReferenceField,\n ReferenceField,\n MultiReferenceField,\n NonReferenceField,\n Field,\n FieldSpec,\n} from './types/Field';\nexport type {\n Schema,\n SchemaPermissions,\n ItemPermissions,\n CollectionBackendBase,\n CollectionBackend,\n FieldActions,\n BackupConfig,\n BulkInsertResult,\n BulkInsertError,\n LoadedSchema,\n SchemaLoader,\n FindOptions,\n} from './types/Schema';\nexport type {\n FieldsSource,\n FieldManagement,\n FieldArchive,\n ArchivedFieldItem,\n FieldTypeOption,\n FieldPermissions,\n FieldDraft,\n} from './types/FieldsSource';\nexport { defineSchemaSource } from './types/SchemaSource';\nexport type {\n SchemaSource,\n SchemaSourceInput,\n SchemaCollectionConfig,\n CreatableFieldType,\n} from './types/SchemaSource';\nexport type {\n CursorQuery,\n OffsetQuery,\n CursorQueryResult,\n OffsetQueryResult,\n CursorFetchDataFn,\n OffsetFetchDataFn,\n FetchTotalFn,\n} from './hooks/paginationModeConfig';\n"],"mappings":"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","ignoreList":[]}
@@ -2,7 +2,7 @@
2
2
 
3
3
  exports.__esModule = true;
4
4
  exports.DataExtensionFieldOperationsService = void 0;
5
- var _DataExtensionStateBIReporter = require("../state/DataExtensionStateBIReporter");
5
+ var _FieldOperationsBIReporter = require("../state/FieldOperationsBIReporter");
6
6
  /**
7
7
  * Service for handling archive, restore, and delete operations on custom fields.
8
8
  * This service is lazily loaded to reduce bundle size for consumers who don't use these features.
@@ -55,7 +55,7 @@ class DataExtensionFieldOperationsService {
55
55
  } = this.context;
56
56
  const fieldValues = extractFieldValuesFromSchema(id);
57
57
  const fieldName = (fieldValues == null ? void 0 : fieldValues.name) || '';
58
- const biReporter = new _DataExtensionStateBIReporter.DataExtensionStateBIReporter({
58
+ const biReporter = new _FieldOperationsBIReporter.FieldOperationsBIReporter({
59
59
  reportBi
60
60
  });
61
61
  try {
@@ -123,7 +123,7 @@ class DataExtensionFieldOperationsService {
123
123
  } = this.context;
124
124
  const fieldValues = extractFieldValuesFromSchema(id);
125
125
  const fieldName = (fieldValues == null ? void 0 : fieldValues.name) || '';
126
- const biReporter = new _DataExtensionStateBIReporter.DataExtensionStateBIReporter({
126
+ const biReporter = new _FieldOperationsBIReporter.FieldOperationsBIReporter({
127
127
  reportBi
128
128
  });
129
129
  try {
@@ -1 +1 @@
1
- {"version":3,"names":["_DataExtensionStateBIReporter","require","DataExtensionFieldOperationsService","constructor","context","showFieldOperationToast","type","operation","message","action","onRetryClick","biName","container","retryAction","uiType","text","translate","onClick","removeToastOnClick","showToast","toLowerCase","archiveField","id","origin","reportBi","dataExtensionService","userSchema","fqdnString","extractFieldValuesFromSchema","upsertSchema","enableArchive","openArchivedPanel","fieldValues","fieldName","name","biReporter","DataExtensionStateBIReporter","dataExtensionSchema","archiveCustomField","schema","fqdn","successMessage","selectedField","undefined","e","reportArchiveTryAgain","reportArchiveFieldFailed","formValues","restoreField","restoreCustomField","reportRestoreTryAgain","reportRestoreFieldFailed","undoDeletedField","fieldData","title","restoreDeletedField","deleteField","_userSchema$jsonSchem","field","jsonSchema","properties","fieldDataBeforeDeletion","deleteCustomField","exports"],"sources":["../../../src/services/DataExtensionFieldOperationsService.ts"],"sourcesContent":["import type { DataExtensionSchema } from '@wix/bex-utils/@wix/ambassador-data-extensions-v1-data-extension-schema/types';\nimport type { CustomFieldForm, WixPatternsContainer } from '../state';\nimport type { DataExtensionSchemaService, ReportBI } from '.';\nimport { DataExtensionStateBIReporter } from '../state/DataExtensionStateBIReporter';\nimport { ToastAction } from '../model';\n\nexport interface FieldOperationParams {\n id?: string;\n origin: string;\n reportBi: ReportBI;\n}\n\nexport interface FieldOperationContext {\n container: WixPatternsContainer;\n dataExtensionService: DataExtensionSchemaService;\n userSchema?: DataExtensionSchema;\n fqdnString: string;\n enableArchive?: boolean;\n extractFieldValuesFromSchema: (\n fieldId: string,\n ) => CustomFieldForm | undefined;\n upsertSchema: (schema: DataExtensionSchema) => void;\n openArchivedPanel?: () => void;\n}\n\n/**\n * Service for handling archive, restore, and delete operations on custom fields.\n * This service is lazily loaded to reduce bundle size for consumers who don't use these features.\n */\nexport class DataExtensionFieldOperationsService {\n constructor(private readonly context: FieldOperationContext) {}\n\n private showFieldOperationToast({\n type,\n operation,\n message,\n action,\n onRetryClick,\n biName,\n }: {\n type: 'SUCCESS' | 'ERROR';\n operation: 'archive' | 'restore' | 'delete';\n message: string;\n action?: ToastAction;\n onRetryClick?: () => void;\n biName?: string;\n }) {\n const { container } = this.context;\n const retryAction = {\n uiType: 'LINK' as const,\n text: container.translate('cairo.toast.retry'),\n onClick: onRetryClick,\n removeToastOnClick: true,\n };\n\n container.showToast?.({\n message,\n action: type !== 'SUCCESS' && onRetryClick ? retryAction : action,\n type,\n biName:\n biName || `cairo-${operation}-custom-field-${type.toLowerCase()}-toast`,\n });\n }\n\n async archiveField({ id, origin, reportBi }: FieldOperationParams) {\n if (!id) {\n return;\n }\n\n const {\n dataExtensionService,\n userSchema,\n fqdnString,\n extractFieldValuesFromSchema,\n upsertSchema,\n container,\n enableArchive,\n openArchivedPanel,\n } = this.context;\n\n const fieldValues = extractFieldValuesFromSchema(id);\n const fieldName = fieldValues?.name || '';\n const biReporter = new DataExtensionStateBIReporter({ reportBi });\n\n try {\n const { dataExtensionSchema } =\n await dataExtensionService.archiveCustomField({\n schema: userSchema,\n fqdn: fqdnString,\n id,\n });\n\n if (dataExtensionSchema) {\n upsertSchema(dataExtensionSchema);\n }\n\n const successMessage =\n enableArchive && fieldName\n ? container.translate(\n 'cairo.customFields.archive.success.toast.enabled',\n { selectedField: fieldName },\n )\n : container.translate('cairo.customFields.archive.success.toast');\n\n const action = enableArchive\n ? {\n text: container.translate(\n 'cairo.customFields.archive.success.toast.CTA',\n ),\n uiType: 'LINK' as const,\n onClick: () => openArchivedPanel?.(),\n }\n : undefined;\n\n this.showFieldOperationToast({\n type: 'SUCCESS',\n operation: 'archive',\n message: successMessage,\n action,\n });\n } catch (e) {\n this.showFieldOperationToast({\n type: 'ERROR',\n operation: 'archive',\n message: container.translate('cairo.customFields.archive.error.toast', {\n selectedField: fieldName,\n }),\n onRetryClick: () => {\n biReporter.reportArchiveTryAgain();\n this.archiveField({ id, origin, reportBi });\n },\n });\n biReporter.reportArchiveFieldFailed({ formValues: fieldValues, origin });\n }\n }\n\n async restoreField({ id, origin, reportBi }: FieldOperationParams) {\n if (!id) {\n return;\n }\n\n const {\n dataExtensionService,\n userSchema,\n fqdnString,\n extractFieldValuesFromSchema,\n upsertSchema,\n container,\n } = this.context;\n\n const fieldValues = extractFieldValuesFromSchema(id);\n const fieldName = fieldValues?.name || '';\n const biReporter = new DataExtensionStateBIReporter({ reportBi });\n\n try {\n const { dataExtensionSchema } =\n await dataExtensionService.restoreCustomField({\n schema: userSchema,\n fqdn: fqdnString,\n id,\n });\n\n if (dataExtensionSchema) {\n upsertSchema(dataExtensionSchema);\n }\n\n this.showFieldOperationToast({\n type: 'SUCCESS',\n operation: 'restore',\n message: container.translate(\n 'cairo.customFields.restored.success.toast',\n { selectedField: fieldName },\n ),\n });\n } catch (e) {\n this.showFieldOperationToast({\n type: 'ERROR',\n operation: 'restore',\n message: container.translate('cairo.customFields.restore.error.toast', {\n selectedField: fieldName,\n }),\n onRetryClick: () => {\n biReporter.reportRestoreTryAgain();\n this.restoreField({ id, origin, reportBi });\n },\n });\n biReporter.reportRestoreFieldFailed({ formValues: fieldValues, origin });\n }\n }\n\n private async undoDeletedField({\n id,\n fieldData,\n origin,\n reportBi,\n }: FieldOperationParams & { fieldData: any }) {\n if (!id) {\n return;\n }\n\n const {\n dataExtensionService,\n userSchema,\n fqdnString,\n upsertSchema,\n container,\n } = this.context;\n\n const fieldName = fieldData?.title || '';\n\n try {\n // Re-add the field to the schema in archived state\n const { dataExtensionSchema } =\n await dataExtensionService.restoreDeletedField({\n schema: userSchema,\n fqdn: fqdnString,\n id,\n fieldData,\n });\n\n if (dataExtensionSchema) {\n upsertSchema(dataExtensionSchema);\n }\n\n this.showFieldOperationToast({\n type: 'SUCCESS',\n operation: 'restore',\n message: container.translate(\n 'cairo.customFields.restored.success.toast',\n { selectedField: fieldName },\n ),\n });\n } catch (e) {\n this.showFieldOperationToast({\n type: 'ERROR',\n operation: 'restore',\n message: container.translate('cairo.customFields.restore.error.toast', {\n selectedField: fieldName,\n }),\n onRetryClick: () =>\n this.undoDeletedField({ id, fieldData, origin, reportBi }),\n });\n }\n }\n\n async deleteField({ id, origin, reportBi }: FieldOperationParams) {\n if (!id) {\n return;\n }\n\n const {\n dataExtensionService,\n userSchema,\n fqdnString,\n extractFieldValuesFromSchema,\n upsertSchema,\n container,\n } = this.context;\n\n const fieldValues = extractFieldValuesFromSchema(id);\n const fieldName = fieldValues?.name || '';\n\n // Validate field is archived\n const field = userSchema?.jsonSchema?.properties?.[id];\n if (field && !field['x-wix-archived']) {\n this.showFieldOperationToast({\n type: 'ERROR',\n operation: 'delete',\n message: `${\n fieldName || 'Field'\n } must be archived before it can be deleted.`,\n biName: 'cairo-delete-custom-field-not-archived-error-toast',\n });\n return;\n }\n\n // Store the field data before deletion for undo functionality\n const fieldDataBeforeDeletion = field ? { ...field } : null;\n\n try {\n const { dataExtensionSchema } =\n await dataExtensionService.deleteCustomField({\n schema: userSchema,\n fqdn: fqdnString,\n id,\n });\n\n if (dataExtensionSchema) {\n upsertSchema(dataExtensionSchema);\n }\n\n this.showFieldOperationToast({\n type: 'SUCCESS',\n operation: 'delete',\n message: container.translate(\n 'cairo.customFields.deleted.success.toast',\n { selectedField: fieldName },\n ),\n action: fieldDataBeforeDeletion\n ? {\n uiType: 'LINK',\n text: container.translate('cairo.toast.undo'),\n onClick: () =>\n this.undoDeletedField({\n id,\n fieldData: fieldDataBeforeDeletion,\n origin,\n reportBi,\n }),\n removeToastOnClick: true,\n }\n : undefined,\n });\n } catch (e) {\n this.showFieldOperationToast({\n type: 'ERROR',\n operation: 'delete',\n message: container.translate('cairo.customFields.delete.error.toast', {\n selectedField: fieldName,\n }),\n onRetryClick: () => this.deleteField({ id, origin, reportBi }),\n });\n }\n }\n}\n"],"mappings":";;;;AAGA,IAAAA,6BAAA,GAAAC,OAAA;AAsBA;AACA;AACA;AACA;AACO,MAAMC,mCAAmC,CAAC;EAC/CC,WAAWA,CAAkBC,OAA8B,EAAE;IAAA,KAAhCA,OAA8B,GAA9BA,OAA8B;EAAG;EAEtDC,uBAAuBA,CAAC;IAC9BC,IAAI;IACJC,SAAS;IACTC,OAAO;IACPC,MAAM;IACNC,YAAY;IACZC;EAQF,CAAC,EAAE;IACD,MAAM;MAAEC;IAAU,CAAC,GAAG,IAAI,CAACR,OAAO;IAClC,MAAMS,WAAW,GAAG;MAClBC,MAAM,EAAE,MAAe;MACvBC,IAAI,EAAEH,SAAS,CAACI,SAAS,CAAC,mBAAmB,CAAC;MAC9CC,OAAO,EAAEP,YAAY;MACrBQ,kBAAkB,EAAE;IACtB,CAAC;IAEDN,SAAS,CAACO,SAAS,YAAnBP,SAAS,CAACO,SAAS,CAAG;MACpBX,OAAO;MACPC,MAAM,EAAEH,IAAI,KAAK,SAAS,IAAII,YAAY,GAAGG,WAAW,GAAGJ,MAAM;MACjEH,IAAI;MACJK,MAAM,EACJA,MAAM,IAAI,SAASJ,SAAS,iBAAiBD,IAAI,CAACc,WAAW,CAAC,CAAC;IACnE,CAAC,CAAC;EACJ;EAEA,MAAMC,YAAYA,CAAC;IAAEC,EAAE;IAAEC,MAAM;IAAEC;EAA+B,CAAC,EAAE;IACjE,IAAI,CAACF,EAAE,EAAE;MACP;IACF;IAEA,MAAM;MACJG,oBAAoB;MACpBC,UAAU;MACVC,UAAU;MACVC,4BAA4B;MAC5BC,YAAY;MACZjB,SAAS;MACTkB,aAAa;MACbC;IACF,CAAC,GAAG,IAAI,CAAC3B,OAAO;IAEhB,MAAM4B,WAAW,GAAGJ,4BAA4B,CAACN,EAAE,CAAC;IACpD,MAAMW,SAAS,GAAG,CAAAD,WAAW,oBAAXA,WAAW,CAAEE,IAAI,KAAI,EAAE;IACzC,MAAMC,UAAU,GAAG,IAAIC,0DAA4B,CAAC;MAAEZ;IAAS,CAAC,CAAC;IAEjE,IAAI;MACF,MAAM;QAAEa;MAAoB,CAAC,GAC3B,MAAMZ,oBAAoB,CAACa,kBAAkB,CAAC;QAC5CC,MAAM,EAAEb,UAAU;QAClBc,IAAI,EAAEb,UAAU;QAChBL;MACF,CAAC,CAAC;MAEJ,IAAIe,mBAAmB,EAAE;QACvBR,YAAY,CAACQ,mBAAmB,CAAC;MACnC;MAEA,MAAMI,cAAc,GAClBX,aAAa,IAAIG,SAAS,GACtBrB,SAAS,CAACI,SAAS,CACjB,kDAAkD,EAClD;QAAE0B,aAAa,EAAET;MAAU,CAC7B,CAAC,GACDrB,SAAS,CAACI,SAAS,CAAC,0CAA0C,CAAC;MAErE,MAAMP,MAAM,GAAGqB,aAAa,GACxB;QACEf,IAAI,EAAEH,SAAS,CAACI,SAAS,CACvB,8CACF,CAAC;QACDF,MAAM,EAAE,MAAe;QACvBG,OAAO,EAAEA,CAAA,KAAMc,iBAAiB,oBAAjBA,iBAAiB,CAAG;MACrC,CAAC,GACDY,SAAS;MAEb,IAAI,CAACtC,uBAAuB,CAAC;QAC3BC,IAAI,EAAE,SAAS;QACfC,SAAS,EAAE,SAAS;QACpBC,OAAO,EAAEiC,cAAc;QACvBhC;MACF,CAAC,CAAC;IACJ,CAAC,CAAC,OAAOmC,CAAC,EAAE;MACV,IAAI,CAACvC,uBAAuB,CAAC;QAC3BC,IAAI,EAAE,OAAO;QACbC,SAAS,EAAE,SAAS;QACpBC,OAAO,EAAEI,SAAS,CAACI,SAAS,CAAC,wCAAwC,EAAE;UACrE0B,aAAa,EAAET;QACjB,CAAC,CAAC;QACFvB,YAAY,EAAEA,CAAA,KAAM;UAClByB,UAAU,CAACU,qBAAqB,CAAC,CAAC;UAClC,IAAI,CAACxB,YAAY,CAAC;YAAEC,EAAE;YAAEC,MAAM;YAAEC;UAAS,CAAC,CAAC;QAC7C;MACF,CAAC,CAAC;MACFW,UAAU,CAACW,wBAAwB,CAAC;QAAEC,UAAU,EAAEf,WAAW;QAAET;MAAO,CAAC,CAAC;IAC1E;EACF;EAEA,MAAMyB,YAAYA,CAAC;IAAE1B,EAAE;IAAEC,MAAM;IAAEC;EAA+B,CAAC,EAAE;IACjE,IAAI,CAACF,EAAE,EAAE;MACP;IACF;IAEA,MAAM;MACJG,oBAAoB;MACpBC,UAAU;MACVC,UAAU;MACVC,4BAA4B;MAC5BC,YAAY;MACZjB;IACF,CAAC,GAAG,IAAI,CAACR,OAAO;IAEhB,MAAM4B,WAAW,GAAGJ,4BAA4B,CAACN,EAAE,CAAC;IACpD,MAAMW,SAAS,GAAG,CAAAD,WAAW,oBAAXA,WAAW,CAAEE,IAAI,KAAI,EAAE;IACzC,MAAMC,UAAU,GAAG,IAAIC,0DAA4B,CAAC;MAAEZ;IAAS,CAAC,CAAC;IAEjE,IAAI;MACF,MAAM;QAAEa;MAAoB,CAAC,GAC3B,MAAMZ,oBAAoB,CAACwB,kBAAkB,CAAC;QAC5CV,MAAM,EAAEb,UAAU;QAClBc,IAAI,EAAEb,UAAU;QAChBL;MACF,CAAC,CAAC;MAEJ,IAAIe,mBAAmB,EAAE;QACvBR,YAAY,CAACQ,mBAAmB,CAAC;MACnC;MAEA,IAAI,CAAChC,uBAAuB,CAAC;QAC3BC,IAAI,EAAE,SAAS;QACfC,SAAS,EAAE,SAAS;QACpBC,OAAO,EAAEI,SAAS,CAACI,SAAS,CAC1B,2CAA2C,EAC3C;UAAE0B,aAAa,EAAET;QAAU,CAC7B;MACF,CAAC,CAAC;IACJ,CAAC,CAAC,OAAOW,CAAC,EAAE;MACV,IAAI,CAACvC,uBAAuB,CAAC;QAC3BC,IAAI,EAAE,OAAO;QACbC,SAAS,EAAE,SAAS;QACpBC,OAAO,EAAEI,SAAS,CAACI,SAAS,CAAC,wCAAwC,EAAE;UACrE0B,aAAa,EAAET;QACjB,CAAC,CAAC;QACFvB,YAAY,EAAEA,CAAA,KAAM;UAClByB,UAAU,CAACe,qBAAqB,CAAC,CAAC;UAClC,IAAI,CAACF,YAAY,CAAC;YAAE1B,EAAE;YAAEC,MAAM;YAAEC;UAAS,CAAC,CAAC;QAC7C;MACF,CAAC,CAAC;MACFW,UAAU,CAACgB,wBAAwB,CAAC;QAAEJ,UAAU,EAAEf,WAAW;QAAET;MAAO,CAAC,CAAC;IAC1E;EACF;EAEA,MAAc6B,gBAAgBA,CAAC;IAC7B9B,EAAE;IACF+B,SAAS;IACT9B,MAAM;IACNC;EACyC,CAAC,EAAE;IAC5C,IAAI,CAACF,EAAE,EAAE;MACP;IACF;IAEA,MAAM;MACJG,oBAAoB;MACpBC,UAAU;MACVC,UAAU;MACVE,YAAY;MACZjB;IACF,CAAC,GAAG,IAAI,CAACR,OAAO;IAEhB,MAAM6B,SAAS,GAAG,CAAAoB,SAAS,oBAATA,SAAS,CAAEC,KAAK,KAAI,EAAE;IAExC,IAAI;MACF;MACA,MAAM;QAAEjB;MAAoB,CAAC,GAC3B,MAAMZ,oBAAoB,CAAC8B,mBAAmB,CAAC;QAC7ChB,MAAM,EAAEb,UAAU;QAClBc,IAAI,EAAEb,UAAU;QAChBL,EAAE;QACF+B;MACF,CAAC,CAAC;MAEJ,IAAIhB,mBAAmB,EAAE;QACvBR,YAAY,CAACQ,mBAAmB,CAAC;MACnC;MAEA,IAAI,CAAChC,uBAAuB,CAAC;QAC3BC,IAAI,EAAE,SAAS;QACfC,SAAS,EAAE,SAAS;QACpBC,OAAO,EAAEI,SAAS,CAACI,SAAS,CAC1B,2CAA2C,EAC3C;UAAE0B,aAAa,EAAET;QAAU,CAC7B;MACF,CAAC,CAAC;IACJ,CAAC,CAAC,OAAOW,CAAC,EAAE;MACV,IAAI,CAACvC,uBAAuB,CAAC;QAC3BC,IAAI,EAAE,OAAO;QACbC,SAAS,EAAE,SAAS;QACpBC,OAAO,EAAEI,SAAS,CAACI,SAAS,CAAC,wCAAwC,EAAE;UACrE0B,aAAa,EAAET;QACjB,CAAC,CAAC;QACFvB,YAAY,EAAEA,CAAA,KACZ,IAAI,CAAC0C,gBAAgB,CAAC;UAAE9B,EAAE;UAAE+B,SAAS;UAAE9B,MAAM;UAAEC;QAAS,CAAC;MAC7D,CAAC,CAAC;IACJ;EACF;EAEA,MAAMgC,WAAWA,CAAC;IAAElC,EAAE;IAAEC,MAAM;IAAEC;EAA+B,CAAC,EAAE;IAAA,IAAAiC,qBAAA;IAChE,IAAI,CAACnC,EAAE,EAAE;MACP;IACF;IAEA,MAAM;MACJG,oBAAoB;MACpBC,UAAU;MACVC,UAAU;MACVC,4BAA4B;MAC5BC,YAAY;MACZjB;IACF,CAAC,GAAG,IAAI,CAACR,OAAO;IAEhB,MAAM4B,WAAW,GAAGJ,4BAA4B,CAACN,EAAE,CAAC;IACpD,MAAMW,SAAS,GAAG,CAAAD,WAAW,oBAAXA,WAAW,CAAEE,IAAI,KAAI,EAAE;;IAEzC;IACA,MAAMwB,KAAK,GAAGhC,UAAU,aAAA+B,qBAAA,GAAV/B,UAAU,CAAEiC,UAAU,cAAAF,qBAAA,GAAtBA,qBAAA,CAAwBG,UAAU,qBAAlCH,qBAAA,CAAqCnC,EAAE,CAAC;IACtD,IAAIoC,KAAK,IAAI,CAACA,KAAK,CAAC,gBAAgB,CAAC,EAAE;MACrC,IAAI,CAACrD,uBAAuB,CAAC;QAC3BC,IAAI,EAAE,OAAO;QACbC,SAAS,EAAE,QAAQ;QACnBC,OAAO,EAAE,GACPyB,SAAS,IAAI,OAAO,6CACuB;QAC7CtB,MAAM,EAAE;MACV,CAAC,CAAC;MACF;IACF;;IAEA;IACA,MAAMkD,uBAAuB,GAAGH,KAAK,GAAG;MAAE,GAAGA;IAAM,CAAC,GAAG,IAAI;IAE3D,IAAI;MACF,MAAM;QAAErB;MAAoB,CAAC,GAC3B,MAAMZ,oBAAoB,CAACqC,iBAAiB,CAAC;QAC3CvB,MAAM,EAAEb,UAAU;QAClBc,IAAI,EAAEb,UAAU;QAChBL;MACF,CAAC,CAAC;MAEJ,IAAIe,mBAAmB,EAAE;QACvBR,YAAY,CAACQ,mBAAmB,CAAC;MACnC;MAEA,IAAI,CAAChC,uBAAuB,CAAC;QAC3BC,IAAI,EAAE,SAAS;QACfC,SAAS,EAAE,QAAQ;QACnBC,OAAO,EAAEI,SAAS,CAACI,SAAS,CAC1B,0CAA0C,EAC1C;UAAE0B,aAAa,EAAET;QAAU,CAC7B,CAAC;QACDxB,MAAM,EAAEoD,uBAAuB,GAC3B;UACE/C,MAAM,EAAE,MAAM;UACdC,IAAI,EAAEH,SAAS,CAACI,SAAS,CAAC,kBAAkB,CAAC;UAC7CC,OAAO,EAAEA,CAAA,KACP,IAAI,CAACmC,gBAAgB,CAAC;YACpB9B,EAAE;YACF+B,SAAS,EAAEQ,uBAAuB;YAClCtC,MAAM;YACNC;UACF,CAAC,CAAC;UACJN,kBAAkB,EAAE;QACtB,CAAC,GACDyB;MACN,CAAC,CAAC;IACJ,CAAC,CAAC,OAAOC,CAAC,EAAE;MACV,IAAI,CAACvC,uBAAuB,CAAC;QAC3BC,IAAI,EAAE,OAAO;QACbC,SAAS,EAAE,QAAQ;QACnBC,OAAO,EAAEI,SAAS,CAACI,SAAS,CAAC,uCAAuC,EAAE;UACpE0B,aAAa,EAAET;QACjB,CAAC,CAAC;QACFvB,YAAY,EAAEA,CAAA,KAAM,IAAI,CAAC8C,WAAW,CAAC;UAAElC,EAAE;UAAEC,MAAM;UAAEC;QAAS,CAAC;MAC/D,CAAC,CAAC;IACJ;EACF;AACF;AAACuC,OAAA,CAAA7D,mCAAA,GAAAA,mCAAA","ignoreList":[]}
1
+ {"version":3,"names":["_FieldOperationsBIReporter","require","DataExtensionFieldOperationsService","constructor","context","showFieldOperationToast","type","operation","message","action","onRetryClick","biName","container","retryAction","uiType","text","translate","onClick","removeToastOnClick","showToast","toLowerCase","archiveField","id","origin","reportBi","dataExtensionService","userSchema","fqdnString","extractFieldValuesFromSchema","upsertSchema","enableArchive","openArchivedPanel","fieldValues","fieldName","name","biReporter","FieldOperationsBIReporter","dataExtensionSchema","archiveCustomField","schema","fqdn","successMessage","selectedField","undefined","e","reportArchiveTryAgain","reportArchiveFieldFailed","formValues","restoreField","restoreCustomField","reportRestoreTryAgain","reportRestoreFieldFailed","undoDeletedField","fieldData","title","restoreDeletedField","deleteField","_userSchema$jsonSchem","field","jsonSchema","properties","fieldDataBeforeDeletion","deleteCustomField","exports"],"sources":["../../../src/services/DataExtensionFieldOperationsService.ts"],"sourcesContent":["import type { DataExtensionSchema } from '@wix/bex-utils/@wix/ambassador-data-extensions-v1-data-extension-schema/types';\nimport type { CustomFieldForm, WixPatternsContainer } from '../state';\nimport type { DataExtensionSchemaService, ReportBI } from '.';\nimport { FieldOperationsBIReporter } from '../state/FieldOperationsBIReporter';\nimport { ToastAction } from '../model';\n\nexport interface FieldOperationParams {\n id?: string;\n origin: string;\n reportBi: ReportBI;\n}\n\nexport interface FieldOperationContext {\n container: WixPatternsContainer;\n dataExtensionService: DataExtensionSchemaService;\n userSchema?: DataExtensionSchema;\n fqdnString: string;\n enableArchive?: boolean;\n extractFieldValuesFromSchema: (\n fieldId: string,\n ) => CustomFieldForm | undefined;\n upsertSchema: (schema: DataExtensionSchema) => void;\n openArchivedPanel?: () => void;\n}\n\n/**\n * Service for handling archive, restore, and delete operations on custom fields.\n * This service is lazily loaded to reduce bundle size for consumers who don't use these features.\n */\nexport class DataExtensionFieldOperationsService {\n constructor(private readonly context: FieldOperationContext) {}\n\n private showFieldOperationToast({\n type,\n operation,\n message,\n action,\n onRetryClick,\n biName,\n }: {\n type: 'SUCCESS' | 'ERROR';\n operation: 'archive' | 'restore' | 'delete';\n message: string;\n action?: ToastAction;\n onRetryClick?: () => void;\n biName?: string;\n }) {\n const { container } = this.context;\n const retryAction = {\n uiType: 'LINK' as const,\n text: container.translate('cairo.toast.retry'),\n onClick: onRetryClick,\n removeToastOnClick: true,\n };\n\n container.showToast?.({\n message,\n action: type !== 'SUCCESS' && onRetryClick ? retryAction : action,\n type,\n biName:\n biName || `cairo-${operation}-custom-field-${type.toLowerCase()}-toast`,\n });\n }\n\n async archiveField({ id, origin, reportBi }: FieldOperationParams) {\n if (!id) {\n return;\n }\n\n const {\n dataExtensionService,\n userSchema,\n fqdnString,\n extractFieldValuesFromSchema,\n upsertSchema,\n container,\n enableArchive,\n openArchivedPanel,\n } = this.context;\n\n const fieldValues = extractFieldValuesFromSchema(id);\n const fieldName = fieldValues?.name || '';\n const biReporter = new FieldOperationsBIReporter({ reportBi });\n\n try {\n const { dataExtensionSchema } =\n await dataExtensionService.archiveCustomField({\n schema: userSchema,\n fqdn: fqdnString,\n id,\n });\n\n if (dataExtensionSchema) {\n upsertSchema(dataExtensionSchema);\n }\n\n const successMessage =\n enableArchive && fieldName\n ? container.translate(\n 'cairo.customFields.archive.success.toast.enabled',\n { selectedField: fieldName },\n )\n : container.translate('cairo.customFields.archive.success.toast');\n\n const action = enableArchive\n ? {\n text: container.translate(\n 'cairo.customFields.archive.success.toast.CTA',\n ),\n uiType: 'LINK' as const,\n onClick: () => openArchivedPanel?.(),\n }\n : undefined;\n\n this.showFieldOperationToast({\n type: 'SUCCESS',\n operation: 'archive',\n message: successMessage,\n action,\n });\n } catch (e) {\n this.showFieldOperationToast({\n type: 'ERROR',\n operation: 'archive',\n message: container.translate('cairo.customFields.archive.error.toast', {\n selectedField: fieldName,\n }),\n onRetryClick: () => {\n biReporter.reportArchiveTryAgain();\n this.archiveField({ id, origin, reportBi });\n },\n });\n biReporter.reportArchiveFieldFailed({ formValues: fieldValues, origin });\n }\n }\n\n async restoreField({ id, origin, reportBi }: FieldOperationParams) {\n if (!id) {\n return;\n }\n\n const {\n dataExtensionService,\n userSchema,\n fqdnString,\n extractFieldValuesFromSchema,\n upsertSchema,\n container,\n } = this.context;\n\n const fieldValues = extractFieldValuesFromSchema(id);\n const fieldName = fieldValues?.name || '';\n const biReporter = new FieldOperationsBIReporter({ reportBi });\n\n try {\n const { dataExtensionSchema } =\n await dataExtensionService.restoreCustomField({\n schema: userSchema,\n fqdn: fqdnString,\n id,\n });\n\n if (dataExtensionSchema) {\n upsertSchema(dataExtensionSchema);\n }\n\n this.showFieldOperationToast({\n type: 'SUCCESS',\n operation: 'restore',\n message: container.translate(\n 'cairo.customFields.restored.success.toast',\n { selectedField: fieldName },\n ),\n });\n } catch (e) {\n this.showFieldOperationToast({\n type: 'ERROR',\n operation: 'restore',\n message: container.translate('cairo.customFields.restore.error.toast', {\n selectedField: fieldName,\n }),\n onRetryClick: () => {\n biReporter.reportRestoreTryAgain();\n this.restoreField({ id, origin, reportBi });\n },\n });\n biReporter.reportRestoreFieldFailed({ formValues: fieldValues, origin });\n }\n }\n\n private async undoDeletedField({\n id,\n fieldData,\n origin,\n reportBi,\n }: FieldOperationParams & { fieldData: any }) {\n if (!id) {\n return;\n }\n\n const {\n dataExtensionService,\n userSchema,\n fqdnString,\n upsertSchema,\n container,\n } = this.context;\n\n const fieldName = fieldData?.title || '';\n\n try {\n // Re-add the field to the schema in archived state\n const { dataExtensionSchema } =\n await dataExtensionService.restoreDeletedField({\n schema: userSchema,\n fqdn: fqdnString,\n id,\n fieldData,\n });\n\n if (dataExtensionSchema) {\n upsertSchema(dataExtensionSchema);\n }\n\n this.showFieldOperationToast({\n type: 'SUCCESS',\n operation: 'restore',\n message: container.translate(\n 'cairo.customFields.restored.success.toast',\n { selectedField: fieldName },\n ),\n });\n } catch (e) {\n this.showFieldOperationToast({\n type: 'ERROR',\n operation: 'restore',\n message: container.translate('cairo.customFields.restore.error.toast', {\n selectedField: fieldName,\n }),\n onRetryClick: () =>\n this.undoDeletedField({ id, fieldData, origin, reportBi }),\n });\n }\n }\n\n async deleteField({ id, origin, reportBi }: FieldOperationParams) {\n if (!id) {\n return;\n }\n\n const {\n dataExtensionService,\n userSchema,\n fqdnString,\n extractFieldValuesFromSchema,\n upsertSchema,\n container,\n } = this.context;\n\n const fieldValues = extractFieldValuesFromSchema(id);\n const fieldName = fieldValues?.name || '';\n\n // Validate field is archived\n const field = userSchema?.jsonSchema?.properties?.[id];\n if (field && !field['x-wix-archived']) {\n this.showFieldOperationToast({\n type: 'ERROR',\n operation: 'delete',\n message: `${\n fieldName || 'Field'\n } must be archived before it can be deleted.`,\n biName: 'cairo-delete-custom-field-not-archived-error-toast',\n });\n return;\n }\n\n // Store the field data before deletion for undo functionality\n const fieldDataBeforeDeletion = field ? { ...field } : null;\n\n try {\n const { dataExtensionSchema } =\n await dataExtensionService.deleteCustomField({\n schema: userSchema,\n fqdn: fqdnString,\n id,\n });\n\n if (dataExtensionSchema) {\n upsertSchema(dataExtensionSchema);\n }\n\n this.showFieldOperationToast({\n type: 'SUCCESS',\n operation: 'delete',\n message: container.translate(\n 'cairo.customFields.deleted.success.toast',\n { selectedField: fieldName },\n ),\n action: fieldDataBeforeDeletion\n ? {\n uiType: 'LINK',\n text: container.translate('cairo.toast.undo'),\n onClick: () =>\n this.undoDeletedField({\n id,\n fieldData: fieldDataBeforeDeletion,\n origin,\n reportBi,\n }),\n removeToastOnClick: true,\n }\n : undefined,\n });\n } catch (e) {\n this.showFieldOperationToast({\n type: 'ERROR',\n operation: 'delete',\n message: container.translate('cairo.customFields.delete.error.toast', {\n selectedField: fieldName,\n }),\n onRetryClick: () => this.deleteField({ id, origin, reportBi }),\n });\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -6,31 +6,28 @@ exports.ArchiveFieldModalState = void 0;
6
6
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
7
7
  var _mobx = require("mobx");
8
8
  var _ConditionalModalState = require("./ConditionalModalState");
9
- var _DataExtensionStateBIReporter = require("./DataExtensionStateBIReporter");
9
+ var _FieldOperationsBIReporter = require("./FieldOperationsBIReporter");
10
10
  class ArchiveFieldModalState {
11
11
  constructor(params) {
12
12
  (0, _defineProperty2.default)(this, "biReporter", void 0);
13
- (0, _defineProperty2.default)(this, "dataExtension", void 0);
13
+ (0, _defineProperty2.default)(this, "archiver", void 0);
14
14
  (0, _defineProperty2.default)(this, "modal", void 0);
15
- this.biReporter = new _DataExtensionStateBIReporter.DataExtensionStateBIReporter({
15
+ this.biReporter = new _FieldOperationsBIReporter.FieldOperationsBIReporter({
16
16
  reportBi: params.reportBi
17
17
  });
18
+ this.archiver = params.archiver;
18
19
  this.modal = new _ConditionalModalState.ConditionalModalState({
19
20
  onConfirm: async () => {
20
21
  if (!this.modal.value) {
21
22
  return;
22
23
  }
23
24
  this.biReporter.reportArchiveFieldModalCtaClicked('Archive');
24
- await this.dataExtension.archiveField({
25
- ...this.modal.value,
26
- reportBi: this.biReporter.reportBi
27
- });
25
+ await this.archiver.archiveField(this.modal.value.id, this.modal.value.origin);
28
26
  },
29
27
  onClose: () => {
30
28
  this.biReporter.reportArchiveFieldModalCtaClicked('Cancel');
31
29
  }
32
30
  });
33
- this.dataExtension = params.dataExtension;
34
31
  (0, _mobx.makeAutoObservable)(this);
35
32
  }
36
33
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_mobx","require","_ConditionalModalState","_DataExtensionStateBIReporter","ArchiveFieldModalState","constructor","params","_defineProperty2","default","biReporter","DataExtensionStateBIReporter","reportBi","modal","ConditionalModalState","onConfirm","value","reportArchiveFieldModalCtaClicked","dataExtension","archiveField","onClose","makeAutoObservable","exports"],"sources":["../../../src/state/ArchiveFieldModalState.ts"],"sourcesContent":["import { makeAutoObservable } from 'mobx';\nimport { ReportBI } from '../services';\nimport { ConditionalModalState } from './ConditionalModalState';\nimport { DataExtensionStateBIReporter } from './DataExtensionStateBIReporter';\nimport { DataExtensionState } from './DataExtensionState';\n\nexport interface ArchiveFieldModalStateParams {\n readonly dataExtension: DataExtensionState;\n readonly reportBi: ReportBI;\n}\n\nexport class ArchiveFieldModalState {\n readonly biReporter;\n readonly dataExtension;\n readonly modal;\n\n constructor(params: ArchiveFieldModalStateParams) {\n this.biReporter = new DataExtensionStateBIReporter({\n reportBi: params.reportBi,\n });\n this.modal = new ConditionalModalState<{\n id: string;\n origin: string;\n }>({\n onConfirm: async () => {\n if (!this.modal.value) {\n return;\n }\n\n this.biReporter.reportArchiveFieldModalCtaClicked('Archive');\n await this.dataExtension.archiveField({\n ...this.modal.value,\n reportBi: this.biReporter.reportBi,\n });\n },\n onClose: () => {\n this.biReporter.reportArchiveFieldModalCtaClicked('Cancel');\n },\n });\n this.dataExtension = params.dataExtension;\n makeAutoObservable(this);\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAEA,IAAAC,sBAAA,GAAAD,OAAA;AACA,IAAAE,6BAAA,GAAAF,OAAA;AAQO,MAAMG,sBAAsB,CAAC;EAKlCC,WAAWA,CAACC,MAAoC,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAChD,IAAI,CAACC,UAAU,GAAG,IAAIC,0DAA4B,CAAC;MACjDC,QAAQ,EAAEL,MAAM,CAACK;IACnB,CAAC,CAAC;IACF,IAAI,CAACC,KAAK,GAAG,IAAIC,4CAAqB,CAGnC;MACDC,SAAS,EAAE,MAAAA,CAAA,KAAY;QACrB,IAAI,CAAC,IAAI,CAACF,KAAK,CAACG,KAAK,EAAE;UACrB;QACF;QAEA,IAAI,CAACN,UAAU,CAACO,iCAAiC,CAAC,SAAS,CAAC;QAC5D,MAAM,IAAI,CAACC,aAAa,CAACC,YAAY,CAAC;UACpC,GAAG,IAAI,CAACN,KAAK,CAACG,KAAK;UACnBJ,QAAQ,EAAE,IAAI,CAACF,UAAU,CAACE;QAC5B,CAAC,CAAC;MACJ,CAAC;MACDQ,OAAO,EAAEA,CAAA,KAAM;QACb,IAAI,CAACV,UAAU,CAACO,iCAAiC,CAAC,QAAQ,CAAC;MAC7D;IACF,CAAC,CAAC;IACF,IAAI,CAACC,aAAa,GAAGX,MAAM,CAACW,aAAa;IACzC,IAAAG,wBAAkB,EAAC,IAAI,CAAC;EAC1B;AACF;AAACC,OAAA,CAAAjB,sBAAA,GAAAA,sBAAA","ignoreList":[]}
1
+ {"version":3,"names":["_mobx","require","_ConditionalModalState","_FieldOperationsBIReporter","ArchiveFieldModalState","constructor","params","_defineProperty2","default","biReporter","FieldOperationsBIReporter","reportBi","archiver","modal","ConditionalModalState","onConfirm","value","reportArchiveFieldModalCtaClicked","archiveField","id","origin","onClose","makeAutoObservable","exports"],"sources":["../../../src/state/ArchiveFieldModalState.ts"],"sourcesContent":["import { makeAutoObservable } from 'mobx';\nimport { ReportBI } from '../services';\nimport { ConditionalModalState } from './ConditionalModalState';\nimport { FieldOperationsBIReporter } from './FieldOperationsBIReporter';\nimport { FieldArchive } from '../types/FieldsSource';\n\nexport interface ArchiveFieldModalStateParams {\n readonly archiver: Pick<FieldArchive, 'archiveField'>;\n readonly reportBi: ReportBI;\n}\n\nexport class ArchiveFieldModalState {\n readonly biReporter;\n readonly archiver;\n readonly modal;\n\n constructor(params: ArchiveFieldModalStateParams) {\n this.biReporter = new FieldOperationsBIReporter({\n reportBi: params.reportBi,\n });\n this.archiver = params.archiver;\n this.modal = new ConditionalModalState<{\n id: string;\n origin: string;\n fieldName: string;\n archiveEnabled?: boolean;\n }>({\n onConfirm: async () => {\n if (!this.modal.value) {\n return;\n }\n\n this.biReporter.reportArchiveFieldModalCtaClicked('Archive');\n await this.archiver.archiveField(\n this.modal.value.id,\n this.modal.value.origin,\n );\n },\n onClose: () => {\n this.biReporter.reportArchiveFieldModalCtaClicked('Cancel');\n },\n });\n makeAutoObservable(this);\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAEA,IAAAC,sBAAA,GAAAD,OAAA;AACA,IAAAE,0BAAA,GAAAF,OAAA;AAQO,MAAMG,sBAAsB,CAAC;EAKlCC,WAAWA,CAACC,MAAoC,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAChD,IAAI,CAACC,UAAU,GAAG,IAAIC,oDAAyB,CAAC;MAC9CC,QAAQ,EAAEL,MAAM,CAACK;IACnB,CAAC,CAAC;IACF,IAAI,CAACC,QAAQ,GAAGN,MAAM,CAACM,QAAQ;IAC/B,IAAI,CAACC,KAAK,GAAG,IAAIC,4CAAqB,CAKnC;MACDC,SAAS,EAAE,MAAAA,CAAA,KAAY;QACrB,IAAI,CAAC,IAAI,CAACF,KAAK,CAACG,KAAK,EAAE;UACrB;QACF;QAEA,IAAI,CAACP,UAAU,CAACQ,iCAAiC,CAAC,SAAS,CAAC;QAC5D,MAAM,IAAI,CAACL,QAAQ,CAACM,YAAY,CAC9B,IAAI,CAACL,KAAK,CAACG,KAAK,CAACG,EAAE,EACnB,IAAI,CAACN,KAAK,CAACG,KAAK,CAACI,MACnB,CAAC;MACH,CAAC;MACDC,OAAO,EAAEA,CAAA,KAAM;QACb,IAAI,CAACZ,UAAU,CAACQ,iCAAiC,CAAC,QAAQ,CAAC;MAC7D;IACF,CAAC,CAAC;IACF,IAAAK,wBAAkB,EAAC,IAAI,CAAC;EAC1B;AACF;AAACC,OAAA,CAAAnB,sBAAA,GAAAA,sBAAA","ignoreList":[]}
@@ -7,7 +7,7 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/de
7
7
  var _util = require("../util");
8
8
  var _v = require("@wix/bex-utils/@wix/bi-logger-os-data/v2");
9
9
  var _mobx = require("mobx");
10
- var _DataExtensionStateBIReporter = require("./DataExtensionStateBIReporter");
10
+ var _formatPermissionsForBi = require("./formatPermissionsForBi");
11
11
  class CustomFieldModalBiReporter {
12
12
  constructor(_params) {
13
13
  (0, _defineProperty2.default)(this, "customFieldModalState", void 0);
@@ -50,8 +50,7 @@ class CustomFieldModalBiReporter {
50
50
  const {
51
51
  customFieldModalState: {
52
52
  origin,
53
- customOrigin,
54
- dataExtensionState
53
+ customOrigin
55
54
  }
56
55
  } = this;
57
56
  this.reportBi((0, _util.withoutDefaults)(_v.cairoDataExCustomFieldEndProcess)({
@@ -60,7 +59,7 @@ class CustomFieldModalBiReporter {
60
59
  fieldName: name.value,
61
60
  fieldType: type.value,
62
61
  key: key.value,
63
- numAdded: dataExtensionState.availableUserCustomFields.length,
62
+ numAdded: this.customFieldModalState.fieldCount(),
64
63
  changedFields: this.getBiChangedFields(),
65
64
  permissions: this.getBiPermissions(),
66
65
  origin,
@@ -124,7 +123,7 @@ class CustomFieldModalBiReporter {
124
123
  lodash: {
125
124
  debounce
126
125
  }
127
- } = this.customFieldModalState.dataExtensionState.container;
126
+ } = this.customFieldModalState.container;
128
127
  return debounce(() => this.reportBi((0, _util.withoutDefaults)(_v.cairoChangesBeforeApply)({
129
128
  feature: this.mode === 'new' ? 'Add Custom Field' : 'Edit Custom Field',
130
129
  fieldName,
@@ -154,10 +153,7 @@ class CustomFieldModalBiReporter {
154
153
  return 'No changes';
155
154
  }
156
155
  getBiPermissions() {
157
- const biReporter = new _DataExtensionStateBIReporter.DataExtensionStateBIReporter({
158
- reportBi: this.reportBi
159
- });
160
- return biReporter.getBiPermissions(this.customFieldModalState.getFormValues());
156
+ return (0, _formatPermissionsForBi.formatPermissionsForBi)(this.customFieldModalState.getFormValues());
161
157
  }
162
158
  init() {
163
159
  const {
@@ -1 +1 @@
1
- {"version":3,"names":["_util","require","_v","_mobx","_DataExtensionStateBIReporter","CustomFieldModalBiReporter","constructor","params","_defineProperty2","default","origin","customOrigin","reportBi","withoutDefaults","cairoDataExAddCustomField","actionName","cairoDataExCustomFieldAdvancesSettings","cairoLearnMore","endType","$","name","type","key","form","customFieldModalState","dataExtensionState","cairoDataExCustomFieldEndProcess","mode","fieldName","value","fieldType","numAdded","availableUserCustomFields","length","changedFields","getBiChangedFields","permissions","getBiPermissions","getFormValues","cairoDataExtensionUnsuccessfulUpdateInServer","errorType","reportTypeFormFieldChange","createReportFormFieldChange","fieldValue","reportNameFormFieldChange","reportKeyFormFieldChange","reportPermissionFormFieldChange","lodash","debounce","container","cairoChangesBeforeApply","feature","isClearButton","leading","trailing","prevValues","formSnapshot","undefined","nextValues","changes","push","readApps","readUsers","writeApps","writeUsers","join","biReporter","DataExtensionStateBIReporter","init","disposes","reaction","forEach","disposer","exports"],"sources":["../../../src/state/CustomFieldModalBiReporter.ts"],"sourcesContent":["import {\n CustomFieldForm,\n CustomFieldModalState,\n} from './CustomFieldModalState';\nimport { withoutDefaults } from '../util';\nimport {\n cairoChangesBeforeApply,\n cairoDataExAddCustomField,\n cairoDataExCustomFieldAdvancesSettings,\n cairoDataExCustomFieldEndProcess,\n cairoDataExtensionUnsuccessfulUpdateInServer,\n cairoLearnMore,\n} from '@wix/bex-utils/@wix/bi-logger-os-data/v2';\nimport { reaction } from 'mobx';\nimport { DataExtensionStateBIReporter } from './DataExtensionStateBIReporter';\nimport { CustomFieldOrigin } from '../services';\n\nexport interface CustomFieldModalBiReporterParams {\n customFieldModalState: CustomFieldModalState;\n}\n\nexport class CustomFieldModalBiReporter {\n customFieldModalState: CustomFieldModalState;\n formSnapshot: CustomFieldForm | null = null;\n\n reportTypeFormFieldChange;\n reportNameFormFieldChange;\n reportKeyFormFieldChange;\n reportPermissionFormFieldChange;\n\n constructor(params: CustomFieldModalBiReporterParams) {\n this.customFieldModalState = params.customFieldModalState;\n\n this.reportTypeFormFieldChange = this.createReportFormFieldChange({\n fieldName: 'Type',\n fieldValue: () => this.form.$.type.value,\n });\n\n this.reportNameFormFieldChange = this.createReportFormFieldChange({\n fieldName: 'Name',\n fieldValue: () => this.form.$.name.value,\n });\n\n this.reportKeyFormFieldChange = this.createReportFormFieldChange({\n fieldName: 'Key',\n fieldValue: () => this.form.$.key.value,\n });\n\n this.reportPermissionFormFieldChange = this.createReportFormFieldChange({\n fieldName: 'Permission',\n fieldValue: () => this.getBiPermissions(),\n });\n }\n\n private get reportBi() {\n return this.customFieldModalState.reportBi;\n }\n\n get form() {\n return this.customFieldModalState.form;\n }\n\n get mode() {\n return this.customFieldModalState.mode;\n }\n\n get origin() {\n return this.mode === 'new'\n ? 'Add Custom Field Modal'\n : 'Edit Custom Field Modal';\n }\n\n private createReportFormFieldChange({\n fieldName,\n fieldValue,\n }: {\n fieldName: string;\n fieldValue: () => string | undefined;\n }) {\n const {\n lodash: { debounce },\n } = this.customFieldModalState.dataExtensionState.container;\n\n return debounce(\n () =>\n this.reportBi(\n withoutDefaults(cairoChangesBeforeApply)({\n feature:\n this.mode === 'new' ? 'Add Custom Field' : 'Edit Custom Field',\n fieldName,\n fieldValue: fieldValue(),\n isClearButton: false,\n }),\n ),\n 1500,\n { leading: false, trailing: true },\n );\n }\n\n reportAddCustomField = ({\n origin,\n customOrigin,\n }: {\n origin: CustomFieldOrigin;\n customOrigin?: string;\n }) => {\n this.reportBi(\n withoutDefaults(cairoDataExAddCustomField)({\n origin,\n customOrigin,\n }),\n );\n };\n\n reportAdvancedSettingsClick = (actionName: 'Open' | 'Close') => {\n this.reportBi(\n withoutDefaults(cairoDataExCustomFieldAdvancesSettings)({\n origin: this.origin,\n actionName,\n }),\n );\n };\n\n reportLearnMoreClick = () => {\n this.reportBi(\n withoutDefaults(cairoLearnMore)({\n origin: this.origin,\n }),\n );\n };\n\n reportModalEndProcess = (params: { endType: 'Cancel' | 'Add Field' }) => {\n const { endType } = params;\n const {\n $: { name, type, key },\n } = this.form;\n const {\n customFieldModalState: { origin, customOrigin, dataExtensionState },\n } = this;\n\n this.reportBi(\n withoutDefaults(cairoDataExCustomFieldEndProcess)({\n actionName: this.mode === 'new' ? 'Add' : 'Edit',\n endType,\n fieldName: name.value,\n fieldType: type.value,\n key: key.value,\n numAdded: dataExtensionState.availableUserCustomFields.length,\n changedFields: this.getBiChangedFields(),\n permissions: this.getBiPermissions(),\n origin,\n customOrigin,\n }),\n );\n };\n\n reportSubmitFailure = (params: { errorType: string | undefined }) => {\n const { customFieldModalState } = this;\n\n const { type, name, key } = customFieldModalState.getFormValues();\n\n this.reportBi(\n withoutDefaults(cairoDataExtensionUnsuccessfulUpdateInServer)({\n actionName: this.mode === 'new' ? 'Add' : 'Edit',\n errorType: params.errorType,\n origin: customFieldModalState.origin,\n permissions: this.getBiPermissions(),\n fieldType: type,\n fieldName: name,\n key,\n }),\n );\n };\n\n getBiChangedFields() {\n const prevValues = this.formSnapshot;\n\n if (this.mode === 'new' || !prevValues) {\n return undefined;\n }\n\n const nextValues = this.customFieldModalState.getFormValues();\n const changes = [];\n\n if (prevValues.name !== nextValues.name) {\n changes.push('Name');\n }\n\n if (\n prevValues.readApps !== nextValues.readApps ||\n prevValues.readUsers !== nextValues.readUsers ||\n prevValues.writeApps !== nextValues.writeApps ||\n prevValues.writeUsers !== nextValues.writeUsers\n ) {\n changes.push('Permission');\n }\n\n if (changes.length !== 0) {\n return changes.join(',');\n }\n\n return 'No changes';\n }\n\n getBiPermissions() {\n const biReporter = new DataExtensionStateBIReporter({\n reportBi: this.reportBi,\n });\n return biReporter.getBiPermissions(\n this.customFieldModalState.getFormValues(),\n );\n }\n\n init() {\n const {\n customFieldModalState: { form },\n } = this;\n\n const disposes = [\n reaction(\n () => form.$.name.value,\n () => {\n this.reportNameFormFieldChange();\n },\n ),\n reaction(\n () => form.$.type.value,\n () => {\n this.reportTypeFormFieldChange();\n },\n ),\n reaction(\n () => ({\n readUsers: form.$.readUsers.value,\n readApps: form.$.readApps.value,\n writeUsers: form.$.writeUsers.value,\n writeApps: form.$.writeApps.value,\n }),\n () => {\n this.reportPermissionFormFieldChange();\n },\n ),\n ];\n\n return () => {\n disposes.forEach((disposer) => {\n disposer?.();\n });\n };\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_util","require","_v","_mobx","_formatPermissionsForBi","CustomFieldModalBiReporter","constructor","params","_defineProperty2","default","origin","customOrigin","reportBi","withoutDefaults","cairoDataExAddCustomField","actionName","cairoDataExCustomFieldAdvancesSettings","cairoLearnMore","endType","$","name","type","key","form","customFieldModalState","cairoDataExCustomFieldEndProcess","mode","fieldName","value","fieldType","numAdded","fieldCount","changedFields","getBiChangedFields","permissions","getBiPermissions","getFormValues","cairoDataExtensionUnsuccessfulUpdateInServer","errorType","reportTypeFormFieldChange","createReportFormFieldChange","fieldValue","reportNameFormFieldChange","reportKeyFormFieldChange","reportPermissionFormFieldChange","lodash","debounce","container","cairoChangesBeforeApply","feature","isClearButton","leading","trailing","prevValues","formSnapshot","undefined","nextValues","changes","push","readApps","readUsers","writeApps","writeUsers","length","join","formatPermissionsForBi","init","disposes","reaction","forEach","disposer","exports"],"sources":["../../../src/state/CustomFieldModalBiReporter.ts"],"sourcesContent":["import { CustomFieldModalState } from './CustomFieldModalState';\nimport { FieldDraft } from '../types/FieldsSource';\nimport { withoutDefaults } from '../util';\nimport {\n cairoChangesBeforeApply,\n cairoDataExAddCustomField,\n cairoDataExCustomFieldAdvancesSettings,\n cairoDataExCustomFieldEndProcess,\n cairoDataExtensionUnsuccessfulUpdateInServer,\n cairoLearnMore,\n} from '@wix/bex-utils/@wix/bi-logger-os-data/v2';\nimport { reaction } from 'mobx';\nimport { formatPermissionsForBi } from './formatPermissionsForBi';\nimport { CustomFieldOrigin } from '../services';\n\nexport interface CustomFieldModalBiReporterParams {\n customFieldModalState: CustomFieldModalState;\n}\n\nexport class CustomFieldModalBiReporter {\n customFieldModalState: CustomFieldModalState;\n formSnapshot: FieldDraft | null = null;\n\n reportTypeFormFieldChange;\n reportNameFormFieldChange;\n reportKeyFormFieldChange;\n reportPermissionFormFieldChange;\n\n constructor(params: CustomFieldModalBiReporterParams) {\n this.customFieldModalState = params.customFieldModalState;\n\n this.reportTypeFormFieldChange = this.createReportFormFieldChange({\n fieldName: 'Type',\n fieldValue: () => this.form.$.type.value,\n });\n\n this.reportNameFormFieldChange = this.createReportFormFieldChange({\n fieldName: 'Name',\n fieldValue: () => this.form.$.name.value,\n });\n\n this.reportKeyFormFieldChange = this.createReportFormFieldChange({\n fieldName: 'Key',\n fieldValue: () => this.form.$.key.value,\n });\n\n this.reportPermissionFormFieldChange = this.createReportFormFieldChange({\n fieldName: 'Permission',\n fieldValue: () => this.getBiPermissions(),\n });\n }\n\n private get reportBi() {\n return this.customFieldModalState.reportBi;\n }\n\n get form() {\n return this.customFieldModalState.form;\n }\n\n get mode() {\n return this.customFieldModalState.mode;\n }\n\n get origin() {\n return this.mode === 'new'\n ? 'Add Custom Field Modal'\n : 'Edit Custom Field Modal';\n }\n\n private createReportFormFieldChange({\n fieldName,\n fieldValue,\n }: {\n fieldName: string;\n fieldValue: () => string | undefined;\n }) {\n const {\n lodash: { debounce },\n } = this.customFieldModalState.container;\n\n return debounce(\n () =>\n this.reportBi(\n withoutDefaults(cairoChangesBeforeApply)({\n feature:\n this.mode === 'new' ? 'Add Custom Field' : 'Edit Custom Field',\n fieldName,\n fieldValue: fieldValue(),\n isClearButton: false,\n }),\n ),\n 1500,\n { leading: false, trailing: true },\n );\n }\n\n reportAddCustomField = ({\n origin,\n customOrigin,\n }: {\n origin: CustomFieldOrigin;\n customOrigin?: string;\n }) => {\n this.reportBi(\n withoutDefaults(cairoDataExAddCustomField)({\n origin,\n customOrigin,\n }),\n );\n };\n\n reportAdvancedSettingsClick = (actionName: 'Open' | 'Close') => {\n this.reportBi(\n withoutDefaults(cairoDataExCustomFieldAdvancesSettings)({\n origin: this.origin,\n actionName,\n }),\n );\n };\n\n reportLearnMoreClick = () => {\n this.reportBi(\n withoutDefaults(cairoLearnMore)({\n origin: this.origin,\n }),\n );\n };\n\n reportModalEndProcess = (params: { endType: 'Cancel' | 'Add Field' }) => {\n const { endType } = params;\n const {\n $: { name, type, key },\n } = this.form;\n const {\n customFieldModalState: { origin, customOrigin },\n } = this;\n\n this.reportBi(\n withoutDefaults(cairoDataExCustomFieldEndProcess)({\n actionName: this.mode === 'new' ? 'Add' : 'Edit',\n endType,\n fieldName: name.value,\n fieldType: type.value,\n key: key.value,\n numAdded: this.customFieldModalState.fieldCount(),\n changedFields: this.getBiChangedFields(),\n permissions: this.getBiPermissions(),\n origin,\n customOrigin,\n }),\n );\n };\n\n reportSubmitFailure = (params: { errorType: string | undefined }) => {\n const { customFieldModalState } = this;\n\n const { type, name, key } = customFieldModalState.getFormValues();\n\n this.reportBi(\n withoutDefaults(cairoDataExtensionUnsuccessfulUpdateInServer)({\n actionName: this.mode === 'new' ? 'Add' : 'Edit',\n errorType: params.errorType,\n origin: customFieldModalState.origin,\n permissions: this.getBiPermissions(),\n fieldType: type,\n fieldName: name,\n key,\n }),\n );\n };\n\n getBiChangedFields() {\n const prevValues = this.formSnapshot;\n\n if (this.mode === 'new' || !prevValues) {\n return undefined;\n }\n\n const nextValues = this.customFieldModalState.getFormValues();\n const changes = [];\n\n if (prevValues.name !== nextValues.name) {\n changes.push('Name');\n }\n\n if (\n prevValues.readApps !== nextValues.readApps ||\n prevValues.readUsers !== nextValues.readUsers ||\n prevValues.writeApps !== nextValues.writeApps ||\n prevValues.writeUsers !== nextValues.writeUsers\n ) {\n changes.push('Permission');\n }\n\n if (changes.length !== 0) {\n return changes.join(',');\n }\n\n return 'No changes';\n }\n\n getBiPermissions() {\n return formatPermissionsForBi(this.customFieldModalState.getFormValues());\n }\n\n init() {\n const {\n customFieldModalState: { form },\n } = this;\n\n const disposes = [\n reaction(\n () => form.$.name.value,\n () => {\n this.reportNameFormFieldChange();\n },\n ),\n reaction(\n () => form.$.type.value,\n () => {\n this.reportTypeFormFieldChange();\n },\n ),\n reaction(\n () => ({\n readUsers: form.$.readUsers.value,\n readApps: form.$.readApps.value,\n writeUsers: form.$.writeUsers.value,\n writeApps: form.$.writeApps.value,\n }),\n () => {\n this.reportPermissionFormFieldChange();\n },\n ),\n ];\n\n return () => {\n disposes.forEach((disposer) => {\n disposer?.();\n });\n };\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -13,7 +13,9 @@ var _util = require("../util");
13
13
  var _isHttpError = require("../util/isHttpError");
14
14
  class CustomFieldModalState {
15
15
  constructor(params) {
16
- (0, _defineProperty2.default)(this, "dataExtensionState", void 0);
16
+ (0, _defineProperty2.default)(this, "fieldManagement", void 0);
17
+ (0, _defineProperty2.default)(this, "container", void 0);
18
+ (0, _defineProperty2.default)(this, "fieldCount", void 0);
17
19
  (0, _defineProperty2.default)(this, "customFieldModalBiReporter", void 0);
18
20
  (0, _defineProperty2.default)(this, "settings", new _ToggleState.ToggleState());
19
21
  (0, _defineProperty2.default)(this, "errorToastConfig", undefined);
@@ -23,7 +25,7 @@ class CustomFieldModalState {
23
25
  (0, _defineProperty2.default)(this, "reportBi", void 0);
24
26
  (0, _defineProperty2.default)(this, "modalState", new _ConditionalModalState.ConditionalModalState({
25
27
  onConfirm: async () => {
26
- if (this.mode === 'new' && this.dataExtensionState.isReachedMaxCustomFields) {
28
+ if (this.mode === 'new' && this.fieldManagement.maxReached) {
27
29
  return;
28
30
  }
29
31
  const {
@@ -39,25 +41,15 @@ class CustomFieldModalState {
39
41
  this.enableAutoValidation();
40
42
  throw new Error('validation');
41
43
  }
42
- const {
43
- dataExtensionState
44
- } = this;
45
44
  try {
46
- var _this$dataExtensionSt, _this$dataExtensionSt2;
47
- const {
48
- dataExtensionSchema
49
- } = await dataExtensionState.dataExtensionService.addCustomField({
50
- form: this.getFormValues(),
51
- schema: this.dataExtensionState.userSchema,
52
- fqdn: this.dataExtensionState.fqdnString,
53
- filterable: this.dataExtensionState.filterable
54
- });
55
- (0, _mobx.runInAction)(() => {
56
- if (dataExtensionSchema) {
57
- dataExtensionState._upsertSchema(dataExtensionSchema);
58
- }
59
- });
60
- (_this$dataExtensionSt = (_this$dataExtensionSt2 = this.dataExtensionState.container).showToast) == null || _this$dataExtensionSt.call(_this$dataExtensionSt2, {
45
+ var _this$container$showT, _this$container;
46
+ const draft = this.getFormValues();
47
+ if (mode === 'new') {
48
+ await this.fieldManagement.addField(draft);
49
+ } else {
50
+ await this.fieldManagement.editField(draft.key, draft);
51
+ }
52
+ (_this$container$showT = (_this$container = this.container).showToast) == null || _this$container$showT.call(_this$container, {
61
53
  message: mode === 'new' ? t('cairo.customFields.successToast') : t('cairo.customFields.editCustomField.success.toast'),
62
54
  type: 'SUCCESS',
63
55
  biName: 'cairo-custom-field-success-toast'
@@ -86,15 +78,12 @@ class CustomFieldModalState {
86
78
  key: new _formstate.FieldState('').validators(value => {
87
79
  const {
88
80
  t,
89
- mode,
90
- dataExtensionState: {
91
- allUserCustomFields
92
- }
81
+ mode
93
82
  } = this;
94
83
  if (!value) {
95
84
  return this.t('cairo.customFields.addCustomField.modal.emptyFieldName.error');
96
85
  }
97
- if (mode === 'new' && allUserCustomFields.some(field => field.id === value)) {
86
+ if (mode === 'new' && this.containsKey(value)) {
98
87
  return t('cairo.customFields.addCustomField.modal.sameKey.error');
99
88
  }
100
89
  if (!/^[a-zA-Z][a-zA-Z0-9_]*$/g.test(value)) {
@@ -137,7 +126,9 @@ class CustomFieldModalState {
137
126
  key.value = value;
138
127
  }
139
128
  });
140
- this.dataExtensionState = params.dataExtensionState;
129
+ this.fieldManagement = params.fieldManagement;
130
+ this.container = params.container;
131
+ this.fieldCount = params.fieldCount;
141
132
  this.reportBi = params.reportBi;
142
133
  this.customFieldModalBiReporter = new _CustomFieldModalBiReporter.CustomFieldModalBiReporter({
143
134
  customFieldModalState: this
@@ -159,7 +150,7 @@ class CustomFieldModalState {
159
150
  var _this$errorToastConfi;
160
151
  const {
161
152
  getResolvedError
162
- } = this.dataExtensionState.container.errorHandler;
153
+ } = this.container.errorHandler;
163
154
  (0, _mobx.runInAction)(() => {
164
155
  var _httpError$response, _httpError$response2, _httpError$response3;
165
156
  const resolvedError = getResolvedError == null ? void 0 : getResolvedError(e);
@@ -292,28 +283,26 @@ class CustomFieldModalState {
292
283
  }
293
284
  }
294
285
  setDefaultPermissions() {
295
- var _defaultPermissions$i, _defaultPermissions$s;
286
+ var _permissions$installe, _permissions$siteVisi;
296
287
  const {
297
288
  form: {
298
289
  $
299
- },
300
- dataExtensionState: {
301
- defaultPermissions
302
290
  }
303
291
  } = this;
304
- if (!(defaultPermissions != null && (_defaultPermissions$i = defaultPermissions.installedApps) != null && _defaultPermissions$i.hide)) {
305
- var _defaultPermissions$i2, _defaultPermissions$i3;
306
- $.readApps.value = !!(defaultPermissions != null && (_defaultPermissions$i2 = defaultPermissions.installedApps) != null && _defaultPermissions$i2.defaultRead);
307
- $.writeApps.value = !!(defaultPermissions != null && (_defaultPermissions$i3 = defaultPermissions.installedApps) != null && _defaultPermissions$i3.defaultWrite);
292
+ const permissions = this.fieldManagement.permissions;
293
+ if (!(permissions != null && (_permissions$installe = permissions.installedApps) != null && _permissions$installe.hide)) {
294
+ var _permissions$installe2, _permissions$installe3;
295
+ $.readApps.value = !!(permissions != null && (_permissions$installe2 = permissions.installedApps) != null && _permissions$installe2.defaultRead);
296
+ $.writeApps.value = !!(permissions != null && (_permissions$installe3 = permissions.installedApps) != null && _permissions$installe3.defaultWrite);
308
297
  }
309
- if (!(defaultPermissions != null && (_defaultPermissions$s = defaultPermissions.siteVisitors) != null && _defaultPermissions$s.hide)) {
310
- var _defaultPermissions$s2, _defaultPermissions$s3;
311
- $.readUsers.value = !!(defaultPermissions != null && (_defaultPermissions$s2 = defaultPermissions.siteVisitors) != null && _defaultPermissions$s2.defaultRead);
312
- $.writeUsers.value = !!(defaultPermissions != null && (_defaultPermissions$s3 = defaultPermissions.siteVisitors) != null && _defaultPermissions$s3.defaultWrite);
298
+ if (!(permissions != null && (_permissions$siteVisi = permissions.siteVisitors) != null && _permissions$siteVisi.hide)) {
299
+ var _permissions$siteVisi2, _permissions$siteVisi3;
300
+ $.readUsers.value = !!(permissions != null && (_permissions$siteVisi2 = permissions.siteVisitors) != null && _permissions$siteVisi2.defaultRead);
301
+ $.writeUsers.value = !!(permissions != null && (_permissions$siteVisi3 = permissions.siteVisitors) != null && _permissions$siteVisi3.defaultWrite);
313
302
  }
314
303
  }
315
304
  containsKey(key) {
316
- return this.dataExtensionState.allUserCustomFields.some(field => field.id === key);
305
+ return this.fieldManagement.existingFieldKeys.includes(key);
317
306
  }
318
307
  generateUniqueKey(name) {
319
308
  const slug = (0, _util.slugify)(name);
@@ -331,42 +320,14 @@ class CustomFieldModalState {
331
320
  return `${type}_${index}`;
332
321
  }
333
322
  get t() {
334
- return this.dataExtensionState.container.translate;
323
+ return this.container.translate;
335
324
  }
336
325
  get isSubmitting() {
337
326
  return this.modalState.modal.confirming.isLoading;
338
327
  }
339
328
  get namePlaceholder() {
340
- const {
341
- t,
342
- form: {
343
- $: {
344
- type
345
- }
346
- }
347
- } = this;
348
- switch (type.value) {
349
- case 'dropdown':
350
- return t('cairo.customFields.fieldType.dropdownList.Name.placeholder');
351
- case 'checkbox':
352
- return t('cairo.customFields.fieldType.checkbox.Name.placeholder');
353
- case 'shortText':
354
- return t('cairo.customFields.fieldType.shortText.Name.placeholder');
355
- case 'longText':
356
- return t('cairo.customFields.fieldType.longText.Name.placeholder');
357
- case 'url':
358
- return t('cairo.customFields.placeholder.url');
359
- case 'date':
360
- return t('cairo.customFields.fieldType.date.Name.placeholder');
361
- case 'dateTime':
362
- return t('cairo.customFields.fieldType.dateAndTime.Name.placeholder');
363
- case 'integer':
364
- return t('cairo.customFields.fieldType.numberInteger.Name.placeholder');
365
- case 'decimal':
366
- return t('cairo.customFields.fieldType.numberDecimal.Name.placeholder');
367
- default:
368
- return t('cairo.customFields.addCustomField.modal.fieldName.placeholder');
369
- }
329
+ const selected = this.fieldManagement.creatableFieldTypes.find(option => option.id === this.form.$.type.value);
330
+ return (selected == null ? void 0 : selected.namePlaceholder) ?? this.t('cairo.customFields.addCustomField.modal.fieldName.placeholder');
370
331
  }
371
332
  }
372
333
  exports.CustomFieldModalState = CustomFieldModalState;