@wix/bex-core 2.288.0 → 2.290.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 (34) hide show
  1. package/dist/cjs/assets/locale/messages_en.json +12 -4
  2. package/dist/cjs/assets/locale/messages_visuale2e.json +107 -1
  3. package/dist/cjs/services/DataExtensionService/dataExtensionService.js.map +1 -1
  4. package/dist/cjs/services/tagsService/createTagErrors.js +16 -4
  5. package/dist/cjs/services/tagsService/createTagErrors.js.map +1 -1
  6. package/dist/cjs/services/translations.js.map +1 -1
  7. package/dist/cjs/state/DataExtensionState.js +5 -2
  8. package/dist/cjs/state/DataExtensionState.js.map +1 -1
  9. package/dist/cjs/state/TagsState/TagsManagementState.js +7 -2
  10. package/dist/cjs/state/TagsState/TagsManagementState.js.map +1 -1
  11. package/dist/cjs/util/tags.js +12 -6
  12. package/dist/cjs/util/tags.js.map +1 -1
  13. package/dist/esm/assets/locale/messages_en.json +12 -4
  14. package/dist/esm/assets/locale/messages_visuale2e.json +107 -1
  15. package/dist/esm/services/DataExtensionService/dataExtensionService.js.map +1 -1
  16. package/dist/esm/services/tagsService/createTagErrors.js +9 -4
  17. package/dist/esm/services/tagsService/createTagErrors.js.map +1 -1
  18. package/dist/esm/state/DataExtensionState.js +3 -1
  19. package/dist/esm/state/DataExtensionState.js.map +1 -1
  20. package/dist/esm/state/TagsState/TagsManagementState.js +5 -0
  21. package/dist/esm/state/TagsState/TagsManagementState.js.map +1 -1
  22. package/dist/esm/util/tags.js +11 -13
  23. package/dist/esm/util/tags.js.map +1 -1
  24. package/dist/types/services/DataExtensionService/dataExtensionService.d.ts +1 -0
  25. package/dist/types/services/DataExtensionService/dataExtensionService.d.ts.map +1 -1
  26. package/dist/types/services/tagsService/createTagErrors.d.ts +6 -2
  27. package/dist/types/services/tagsService/createTagErrors.d.ts.map +1 -1
  28. package/dist/types/services/translations.d.ts +17 -1
  29. package/dist/types/services/translations.d.ts.map +1 -1
  30. package/dist/types/state/DataExtensionState.d.ts.map +1 -1
  31. package/dist/types/state/TagsState/TagsManagementState.d.ts.map +1 -1
  32. package/dist/types/util/tags.d.ts +3 -1
  33. package/dist/types/util/tags.d.ts.map +1 -1
  34. package/package.json +4 -4
@@ -1 +1 @@
1
- {"version":3,"names":["_services","require","_TaskState","_mobx","_util","_DataExtensionField","_ConditionalModalState","_DeleteFieldModalState","_interopRequireWildcard","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","MAX_CUSTOM_FIELDS","exports","DataExtensionState","fqdnString","fqdnToString","fqdn","isFqdnValid","resource","undefined","constructor","params","_defineProperty2","TaskState","ConditionalModalState","container","disableUserDefinedWriting","filterable","enableArchive","closeSidePanel","_extensionPoint","extensionPoint","dataExtensionService","DataExtensionSchemaService","containsPii","defaultPermissions","deleteFieldModal","DeleteFieldModalState","dataExtension","reportBi","createBILogger","componentType","makeObservable","allUserCustomFields","computed","allAppsCustomFields","allCustomFields","archivedItems","shouldDisplayArchive","filterableCustomFields","availableUserCustomFields","availableAppsCustomFields","availableCustomFields","isReachedMaxCustomFields","disableAddCustomField","disableAddCustomFieldContent","_dataExtensionSchemasBase","observable","ref","_dataExtensionSchemas","userSchema","appSchemas","_upsertSchema","action","isArchivedPanelOpen","openArchivedPanel","closeArchivedPanel","openDeleteConfirmModal","hasWritePermissions","_hasWritePermissions","user","permissions","includes","translate","max","getArchiveSuccessToastMessage","fieldName","selectedField","getArchiveSuccessToastAction","text","uiType","onClick","_this$openArchivedPan","getFieldOperationsService","_fieldOperationsService","_fieldOperationsServicePromise","Promise","resolve","then","module","self","DataExtensionFieldOperationsService","extractFieldValuesFromSchema","bind","upsertSchema","archiveField","id","origin","service","restoreField","deleteField","fieldId","_customField$xWixPi","customField","toCustomField","type","title","read","write","isPiiField","enabled","readApps","readUsers","writeApps","writeUsers","toCustomType","name","key","Boolean","_toCustomField","schema","editable","owner","namespace","label","maxLength","options","enum","properties","isSupportedFieldType","getAvailableCustomFieldsInSchema","requiredPermissions","filteredFields","keys","filter","field","isAllowedType","isPermitted","includesAllReadPermissions","sorted","sort","a","b","aVal","Date","bVal","isNaN","valueOf","map","_this$userSchema","jsonSchema","_this$appSchemas","reduce","prev","getAvailableCustomFieldsForApp","getSchemaAndFieldsByNamespace","_schema$jsonSchema","userFieldsNamespace","find","s","fields","appSchema","_appSchema$jsonSchema","_this$userSchema2","_this$appSchemas2","_appSchema$jsonSchema2","concat","_userSchema$jsonSchem","_properties$key","length","allNamespaces","_this$userSchema3","init","initTask","runOnce","fetchSchemas","newSchema","index","findIndex","dataExtensionSchemas","runInAction","deleteConfirmModal","open"],"sources":["../../../src/state/DataExtensionState.ts"],"sourcesContent":["import {\n CustomField,\n CustomFieldOwner,\n CustomFieldType,\n DataExtensionField,\n DataExtensionPermission,\n DataExtensionSchemaService,\n DataExtensionType,\n ReportBI,\n} from '../services';\nimport type { DataExtensionFieldOperationsService } from '../services/DataExtensionFieldOperationsService';\nimport { TaskState } from './TaskState';\nimport {\n action,\n computed,\n makeObservable,\n observable,\n runInAction,\n} from 'mobx';\nimport { Fqdn } from '../model';\nimport { WixPatternsContainer } from './WixPatternsContainer';\nimport { CustomFieldForm } from './CustomFieldModalState';\nimport type { DataExtensionSchema } from '@wix/bex-utils/@wix/ambassador-data-extensions-v1-data-extension-schema/types';\nimport { fqdnToString } from '../util';\nimport { includesAllReadPermissions } from './DataExtension/DataExtensionField';\nimport { ConditionalModalState } from './ConditionalModalState';\nimport { DeleteFieldModalState } from './DeleteFieldModalState';\n\nexport interface DataExtensionStateParams {\n container: WixPatternsContainer;\n closeSidePanel?: () => unknown;\n fqdn: Fqdn;\n}\nexport interface DefaultPermissionsConfig {\n installedApps?: {\n hide?: boolean;\n defaultRead?: boolean;\n defaultWrite?: boolean;\n };\n siteVisitors?: {\n hide?: boolean;\n defaultRead?: boolean;\n defaultWrite?: boolean;\n };\n}\n\nexport interface DataExtensionOverrides {\n disableUserDefinedWriting?: boolean;\n containsPii?: boolean;\n filterable?: boolean;\n /**\n * When set to true, will disable \"Manage custom fields\" action in the page actions menu.\n */\n disableDefaultPageAction?: boolean;\n extensionPoint?: string;\n defaultPermissions?: DefaultPermissionsConfig;\n /**\n * When set to true, will enable the \"Archived Fields\" button in the custom columns panel.\n */\n enableArchive?: boolean;\n}\n\nexport const MAX_CUSTOM_FIELDS = 50;\n\n/**\n * Manages data extension schemas and custom fields for a collection\n */\nexport class DataExtensionState {\n readonly dataExtensionService: DataExtensionSchemaService;\n readonly initTask = new TaskState();\n readonly container: WixPatternsContainer;\n _hasWritePermissions?: boolean;\n readonly closeSidePanel;\n readonly fqdn;\n\n get fqdnString() {\n return fqdnToString(this.fqdn);\n }\n\n get isFqdnValid() {\n return this.fqdn.resource !== undefined;\n }\n\n _dataExtensionSchemasBase: DataExtensionSchema[] = [];\n containsPii?: boolean;\n defaultPermissions?: DefaultPermissionsConfig;\n readonly disableUserDefinedWriting;\n readonly filterable;\n readonly enableArchive?: boolean;\n isArchivedPanelOpen: boolean = false;\n\n // Lazy-loaded service for field operations (archive/restore/delete)\n private _fieldOperationsService?: DataExtensionFieldOperationsService;\n private _fieldOperationsServicePromise?: Promise<DataExtensionFieldOperationsService>;\n\n readonly deleteConfirmModal = new ConditionalModalState<{\n id: string;\n origin: string;\n }>();\n\n deleteFieldModal?: DeleteFieldModalState;\n\n _extensionPoint;\n\n constructor(\n params: Readonly<DataExtensionStateParams & DataExtensionOverrides>,\n ) {\n this.container = params.container;\n this.disableUserDefinedWriting = params.disableUserDefinedWriting;\n this.filterable = params.filterable;\n this.enableArchive = params.enableArchive ?? true;\n this.closeSidePanel = params.closeSidePanel;\n this.fqdn = params.fqdn;\n this._extensionPoint = params.extensionPoint;\n this.dataExtensionService = new DataExtensionSchemaService(\n params.container,\n );\n\n this.containsPii = params.containsPii;\n this.defaultPermissions = params.defaultPermissions;\n\n // Initialize deleteFieldModal with proper reportBi\n this.deleteFieldModal = new DeleteFieldModalState({\n dataExtension: this,\n reportBi: params.container.createBILogger({\n componentType: 'DataExtension',\n ...params.fqdn,\n }),\n });\n\n makeObservable(this, {\n allUserCustomFields: computed,\n allAppsCustomFields: computed,\n allCustomFields: computed,\n archivedItems: computed,\n shouldDisplayArchive: computed,\n filterableCustomFields: computed,\n availableUserCustomFields: computed,\n availableAppsCustomFields: computed,\n availableCustomFields: computed,\n isReachedMaxCustomFields: computed,\n disableAddCustomField: computed,\n disableAddCustomFieldContent: computed,\n _dataExtensionSchemasBase: observable.ref,\n _dataExtensionSchemas: computed,\n userSchema: computed,\n appSchemas: computed,\n _upsertSchema: action,\n containsPii: observable,\n defaultPermissions: observable,\n isArchivedPanelOpen: observable,\n deleteFieldModal: observable.ref,\n openArchivedPanel: action,\n closeArchivedPanel: action,\n openDeleteConfirmModal: action,\n });\n }\n\n get hasWritePermissions() {\n if (this._hasWritePermissions == null) {\n this._hasWritePermissions = this.container.user.permissions.includes(\n 'DATA_EXTENSION_SCHEMA.WRITE',\n );\n }\n\n return this._hasWritePermissions;\n }\n\n get disableAddCustomField() {\n return !this.hasWritePermissions || this.isReachedMaxCustomFields;\n }\n\n get disableAddCustomFieldContent() {\n if (!this.hasWritePermissions) {\n return this.container.translate(\n 'cairo.customFields.writePermission.tooltip',\n );\n }\n\n if (this.isReachedMaxCustomFields) {\n return this.container.translate('cairo.customFields.maxFields.tooltip', {\n max: MAX_CUSTOM_FIELDS,\n });\n }\n\n return '';\n }\n\n getArchiveSuccessToastMessage(fieldName?: string): string {\n return this.enableArchive && fieldName\n ? this.container.translate(\n 'cairo.customFields.archive.success.toast.enabled',\n { selectedField: fieldName },\n )\n : this.container.translate('cairo.customFields.archive.success.toast');\n }\n\n getArchiveSuccessToastAction() {\n return this.enableArchive\n ? {\n text: this.container.translate(\n 'cairo.customFields.archive.success.toast.CTA',\n ),\n uiType: 'LINK' as const,\n onClick: () => this.openArchivedPanel?.(),\n }\n : undefined;\n }\n\n /**\n * Lazily loads the field operations service to reduce bundle size.\n * Only loads when archive/restore/delete operations are needed.\n */\n private async getFieldOperationsService(): Promise<DataExtensionFieldOperationsService> {\n if (this._fieldOperationsService) {\n return this._fieldOperationsService;\n }\n\n // Reuse the same promise if already loading\n if (this._fieldOperationsServicePromise) {\n return this._fieldOperationsServicePromise;\n }\n\n this._fieldOperationsServicePromise = import(\n '../services/DataExtensionFieldOperationsService'\n ).then((module) => {\n const self = this;\n this._fieldOperationsService =\n new module.DataExtensionFieldOperationsService({\n container: this.container,\n dataExtensionService: this.dataExtensionService,\n get userSchema() {\n return self.userSchema;\n },\n fqdnString: this.fqdnString,\n enableArchive: this.enableArchive,\n extractFieldValuesFromSchema:\n this.extractFieldValuesFromSchema.bind(this),\n upsertSchema: this._upsertSchema.bind(this),\n openArchivedPanel: this.openArchivedPanel.bind(this),\n });\n return this._fieldOperationsService;\n });\n\n return this._fieldOperationsServicePromise;\n }\n\n async archiveField({\n id,\n origin,\n reportBi,\n }: {\n id?: string;\n origin: string;\n reportBi: ReportBI;\n }) {\n const service = await this.getFieldOperationsService();\n return service.archiveField({ id, origin, reportBi });\n }\n\n async restoreField({\n id,\n origin,\n reportBi,\n }: {\n id?: string;\n origin: string;\n reportBi: ReportBI;\n }) {\n const service = await this.getFieldOperationsService();\n return service.restoreField({ id, origin, reportBi });\n }\n\n async deleteField({\n id,\n origin,\n reportBi,\n }: {\n id?: string;\n origin: string;\n reportBi: ReportBI;\n }) {\n const service = await this.getFieldOperationsService();\n return service.deleteField({ id, origin, reportBi });\n }\n\n extractFieldValuesFromSchema(fieldId: string): CustomFieldForm | undefined {\n if (!this.userSchema) {\n return;\n }\n\n const customField = DataExtensionSchemaService.toCustomField(\n this.userSchema,\n fieldId,\n );\n\n if (!customField || !customField.type || !customField.title) {\n return;\n }\n\n const { read, write } = customField['x-wix-permissions'];\n const isPiiField = customField['x-wix-pii']?.enabled;\n const readApps = read?.includes('apps');\n const readUsers = read?.includes('users-of-users');\n const writeApps = write?.includes('apps');\n const writeUsers = write?.includes('users-of-users');\n\n return {\n type: DataExtensionSchemaService.toCustomType(customField),\n name: customField.title,\n key: customField.id,\n readApps,\n readUsers,\n writeApps,\n writeUsers,\n containsPii: Boolean(isPiiField),\n };\n }\n\n _toCustomField({\n key,\n schema,\n editable,\n owner,\n namespace,\n }: {\n key: string;\n schema: DataExtensionField;\n editable: boolean;\n owner: CustomFieldOwner;\n namespace: string;\n }): CustomField | undefined {\n if (!DataExtensionSchemaService.toCustomType(schema)) {\n return;\n }\n return {\n id: key,\n label: schema?.title || key,\n maxLength: schema?.maxLength,\n options: schema?.enum,\n type: DataExtensionSchemaService.toCustomType(schema) as CustomFieldType,\n editable,\n filterable: schema['x-wix-filterable'],\n owner,\n properties: schema?.properties ?? {},\n namespace,\n permissions: schema['x-wix-permissions'],\n };\n }\n\n private isSupportedFieldType(type?: string): type is DataExtensionType {\n if (!type) {\n return false;\n }\n return ['string', 'number', 'integer', 'boolean', 'array'].includes(type);\n }\n\n private getAvailableCustomFieldsInSchema(\n properties: {\n [key: string]: DataExtensionField;\n },\n {\n editable,\n requiredPermissions,\n owner,\n namespace,\n }: {\n editable: boolean;\n requiredPermissions?: DataExtensionPermission[];\n owner: CustomFieldOwner;\n namespace: string;\n },\n ): CustomField[] {\n const filteredFields = Object.keys(properties).filter((key) => {\n const field = properties[key];\n const isAllowedType =\n this.isSupportedFieldType(field.type) ||\n (field.type === 'object' && field['x-wix-object-type'] === 'FILE/V1');\n\n const isPermitted =\n requiredPermissions == null ||\n includesAllReadPermissions(field, requiredPermissions);\n\n return !field['x-wix-archived'] && isAllowedType && isPermitted;\n });\n\n const sorted = filteredFields.sort((a, b) => {\n const aVal = new Date(properties[a]['x-wix-created-date']);\n const bVal = new Date(properties[b]['x-wix-created-date']);\n\n if (isNaN(bVal.valueOf()) || isNaN(aVal.valueOf())) {\n return 0;\n }\n\n return aVal.valueOf() - bVal.valueOf();\n });\n\n return sorted\n .map((key) =>\n this._toCustomField({\n key,\n schema: properties[key],\n editable,\n owner,\n namespace,\n }),\n )\n .filter(Boolean) as CustomField[];\n }\n\n /**\n * Available custom fields, excluding archived fields\n */\n get availableUserCustomFields(): CustomField[] {\n const properties: { [key: string]: DataExtensionField } =\n this.userSchema?.jsonSchema?.properties || {};\n return this.getAvailableCustomFieldsInSchema(properties, {\n editable: true,\n owner: 'user',\n namespace: '_user_fields',\n });\n }\n\n get availableAppsCustomFields(): CustomField[] {\n return (\n this.appSchemas?.reduce((prev, schema) => {\n return [...prev, ...this.getAvailableCustomFieldsForApp(schema)];\n }, [] as CustomField[]) ?? []\n );\n }\n\n getSchemaAndFieldsByNamespace(namespace: string) {\n const {\n _dataExtensionSchemas,\n dataExtensionService: { userFieldsNamespace },\n } = this;\n\n const schema = _dataExtensionSchemas.find((s) => s.namespace === namespace);\n\n if (!schema) {\n return {};\n }\n\n const fields = this.getAvailableCustomFieldsInSchema(\n schema.jsonSchema?.properties || {},\n {\n editable: false,\n owner: namespace === userFieldsNamespace ? 'user' : 'app',\n namespace,\n },\n );\n\n return {\n schema,\n fields,\n };\n }\n\n getAvailableCustomFieldsForApp(\n appSchema: DataExtensionSchema,\n ): CustomField[] {\n const properties: { [key: string]: DataExtensionField } =\n appSchema.jsonSchema?.properties || {};\n\n return this.getAvailableCustomFieldsInSchema(properties, {\n editable: false,\n requiredPermissions: ['users'],\n owner: 'app',\n namespace: appSchema.namespace as string,\n });\n }\n\n get availableCustomFields(): CustomField[] {\n return [\n ...this.availableUserCustomFields,\n ...this.availableAppsCustomFields,\n ];\n }\n\n get allUserCustomFields(): CustomField[] {\n const properties: { [key: string]: DataExtensionField } =\n this.userSchema?.jsonSchema?.properties || {};\n\n return Object.keys(properties)\n .map((key) =>\n this._toCustomField({\n key,\n schema: properties[key],\n editable: true,\n owner: 'user',\n namespace: '_user_fields',\n }),\n )\n .filter(Boolean) as CustomField[];\n }\n\n get allAppsCustomFields(): CustomField[] {\n return (\n this.appSchemas?.reduce((prev, appSchema) => {\n const properties: { [key: string]: DataExtensionField } =\n appSchema?.jsonSchema?.properties || {};\n\n return prev.concat(\n Object.keys(properties)\n .map((key) =>\n this._toCustomField({\n key,\n schema: properties[key],\n editable: false,\n owner: 'app',\n namespace: appSchema.namespace as string,\n }),\n )\n .filter(Boolean) as CustomField[],\n );\n }, [] as CustomField[]) ?? []\n );\n }\n\n get allCustomFields(): CustomField[] {\n return [...this.allUserCustomFields, ...this.allAppsCustomFields];\n }\n\n get archivedItems() {\n const userSchema = this.userSchema;\n if (!userSchema?.jsonSchema?.properties) {\n return [];\n }\n\n const properties = userSchema.jsonSchema.properties;\n return Object.keys(properties)\n .filter((key) => properties[key]['x-wix-archived'])\n .map((key) => ({\n id: key,\n label: properties[key]?.title || key,\n ...properties[key],\n }));\n }\n\n get shouldDisplayArchive() {\n return this.enableArchive && this.archivedItems.length > 0;\n }\n\n get filterableCustomFields(): CustomField[] {\n if (!this.filterable) {\n return [];\n }\n\n return this.availableCustomFields.filter((field) => field.filterable);\n }\n\n get isReachedMaxCustomFields() {\n return this.allUserCustomFields.length >= MAX_CUSTOM_FIELDS;\n }\n\n get allNamespaces() {\n return [\n this.userSchema?.namespace,\n ...(this.appSchemas || []).map((schema) => schema.namespace),\n ].filter(Boolean) as string[];\n }\n\n init() {\n const { initTask } = this;\n\n initTask.runOnce(async () => {\n await this.fetchSchemas();\n });\n\n return () => {};\n }\n\n _upsertSchema(newSchema: DataExtensionSchema) {\n const { _dataExtensionSchemasBase } = this;\n\n const index = _dataExtensionSchemasBase.findIndex(\n (schema) => schema.namespace === newSchema?.namespace,\n );\n\n if (index === -1) {\n this._dataExtensionSchemasBase = [\n ..._dataExtensionSchemasBase,\n newSchema,\n ];\n } else {\n this._dataExtensionSchemasBase = _dataExtensionSchemasBase.map((schema) =>\n schema.namespace === newSchema.namespace ? newSchema : schema,\n );\n }\n }\n\n get userSchema() {\n const {\n _dataExtensionSchemas,\n dataExtensionService: { userFieldsNamespace },\n } = this;\n return _dataExtensionSchemas.find(\n (s) => s.namespace === userFieldsNamespace,\n );\n }\n\n get _dataExtensionSchemas() {\n const { _extensionPoint, _dataExtensionSchemasBase } = this;\n return _dataExtensionSchemasBase.filter((s: DataExtensionSchema) =>\n _extensionPoint\n ? s.extensionPoint === _extensionPoint\n : s.extensionPoint == null || s.extensionPoint === 'ROOT',\n );\n }\n\n get appSchemas() {\n const {\n _dataExtensionSchemas,\n dataExtensionService: { userFieldsNamespace },\n } = this;\n return _dataExtensionSchemas.filter(\n (s) => s.namespace !== userFieldsNamespace,\n );\n }\n\n async fetchSchemas() {\n const { dataExtensionService } = this;\n\n if (this.isFqdnValid) {\n const { dataExtensionSchemas } = await dataExtensionService.fetchSchemas(\n this.fqdnString,\n );\n\n runInAction(() => {\n this._dataExtensionSchemasBase = dataExtensionSchemas ?? [];\n });\n }\n }\n\n openArchivedPanel() {\n if (this.enableArchive) {\n this.isArchivedPanelOpen = true;\n }\n }\n\n closeArchivedPanel() {\n this.isArchivedPanelOpen = false;\n }\n\n openDeleteConfirmModal({ id, origin }: { id: string; origin: string }) {\n this.deleteConfirmModal.open({ id, origin });\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_services","require","_TaskState","_mobx","_util","_DataExtensionField","_ConditionalModalState","_DeleteFieldModalState","_interopRequireWildcard","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","MAX_CUSTOM_FIELDS","exports","DataExtensionState","fqdnString","fqdnToString","fqdn","isFqdnValid","resource","undefined","constructor","params","_defineProperty2","TaskState","ConditionalModalState","container","disableUserDefinedWriting","filterable","enableArchive","closeSidePanel","_extensionPoint","extensionPoint","dataExtensionService","DataExtensionSchemaService","containsPii","defaultPermissions","deleteFieldModal","DeleteFieldModalState","dataExtension","reportBi","createBILogger","componentType","makeObservable","allUserCustomFields","computed","allAppsCustomFields","allCustomFields","archivedItems","shouldDisplayArchive","filterableCustomFields","availableUserCustomFields","availableAppsCustomFields","availableCustomFields","isReachedMaxCustomFields","disableAddCustomField","disableAddCustomFieldContent","_dataExtensionSchemasBase","observable","ref","_dataExtensionSchemas","userSchema","appSchemas","_upsertSchema","action","isArchivedPanelOpen","openArchivedPanel","closeArchivedPanel","openDeleteConfirmModal","hasWritePermissions","_hasWritePermissions","user","permissions","includes","translate","max","getArchiveSuccessToastMessage","fieldName","selectedField","getArchiveSuccessToastAction","text","uiType","onClick","_this$openArchivedPan","getFieldOperationsService","_fieldOperationsService","_fieldOperationsServicePromise","Promise","resolve","then","module","self","DataExtensionFieldOperationsService","extractFieldValuesFromSchema","bind","upsertSchema","archiveField","id","origin","service","restoreField","deleteField","fieldId","_customField$xWixPi","customField","toCustomField","type","title","read","write","isPiiField","enabled","readApps","readUsers","writeApps","writeUsers","toCustomType","name","key","Boolean","_toCustomField","schema","editable","owner","namespace","_schema$xWixPii","label","maxLength","options","enum","properties","isPii","isSupportedFieldType","getAvailableCustomFieldsInSchema","requiredPermissions","filteredFields","keys","filter","field","isAllowedType","isPermitted","includesAllReadPermissions","sorted","sort","a","b","aVal","Date","bVal","isNaN","valueOf","map","_this$userSchema","jsonSchema","_this$appSchemas","reduce","prev","getAvailableCustomFieldsForApp","getSchemaAndFieldsByNamespace","_schema$jsonSchema","userFieldsNamespace","find","s","fields","appSchema","_appSchema$jsonSchema","_this$userSchema2","_this$appSchemas2","_appSchema$jsonSchema2","concat","_userSchema$jsonSchem","_properties$key","_properties$key2","length","allNamespaces","_this$userSchema3","init","initTask","runOnce","fetchSchemas","newSchema","index","findIndex","dataExtensionSchemas","runInAction","deleteConfirmModal","open"],"sources":["../../../src/state/DataExtensionState.ts"],"sourcesContent":["import {\n CustomField,\n CustomFieldOwner,\n CustomFieldType,\n DataExtensionField,\n DataExtensionPermission,\n DataExtensionSchemaService,\n DataExtensionType,\n ReportBI,\n} from '../services';\nimport type { DataExtensionFieldOperationsService } from '../services/DataExtensionFieldOperationsService';\nimport { TaskState } from './TaskState';\nimport {\n action,\n computed,\n makeObservable,\n observable,\n runInAction,\n} from 'mobx';\nimport { Fqdn } from '../model';\nimport { WixPatternsContainer } from './WixPatternsContainer';\nimport { CustomFieldForm } from './CustomFieldModalState';\nimport type { DataExtensionSchema } from '@wix/bex-utils/@wix/ambassador-data-extensions-v1-data-extension-schema/types';\nimport { fqdnToString } from '../util';\nimport { includesAllReadPermissions } from './DataExtension/DataExtensionField';\nimport { ConditionalModalState } from './ConditionalModalState';\nimport { DeleteFieldModalState } from './DeleteFieldModalState';\n\nexport interface DataExtensionStateParams {\n container: WixPatternsContainer;\n closeSidePanel?: () => unknown;\n fqdn: Fqdn;\n}\nexport interface DefaultPermissionsConfig {\n installedApps?: {\n hide?: boolean;\n defaultRead?: boolean;\n defaultWrite?: boolean;\n };\n siteVisitors?: {\n hide?: boolean;\n defaultRead?: boolean;\n defaultWrite?: boolean;\n };\n}\n\nexport interface DataExtensionOverrides {\n disableUserDefinedWriting?: boolean;\n containsPii?: boolean;\n filterable?: boolean;\n /**\n * When set to true, will disable \"Manage custom fields\" action in the page actions menu.\n */\n disableDefaultPageAction?: boolean;\n extensionPoint?: string;\n defaultPermissions?: DefaultPermissionsConfig;\n /**\n * When set to true, will enable the \"Archived Fields\" button in the custom columns panel.\n */\n enableArchive?: boolean;\n}\n\nexport const MAX_CUSTOM_FIELDS = 50;\n\n/**\n * Manages data extension schemas and custom fields for a collection\n */\nexport class DataExtensionState {\n readonly dataExtensionService: DataExtensionSchemaService;\n readonly initTask = new TaskState();\n readonly container: WixPatternsContainer;\n _hasWritePermissions?: boolean;\n readonly closeSidePanel;\n readonly fqdn;\n\n get fqdnString() {\n return fqdnToString(this.fqdn);\n }\n\n get isFqdnValid() {\n return this.fqdn.resource !== undefined;\n }\n\n _dataExtensionSchemasBase: DataExtensionSchema[] = [];\n containsPii?: boolean;\n defaultPermissions?: DefaultPermissionsConfig;\n readonly disableUserDefinedWriting;\n readonly filterable;\n readonly enableArchive?: boolean;\n isArchivedPanelOpen: boolean = false;\n\n // Lazy-loaded service for field operations (archive/restore/delete)\n private _fieldOperationsService?: DataExtensionFieldOperationsService;\n private _fieldOperationsServicePromise?: Promise<DataExtensionFieldOperationsService>;\n\n readonly deleteConfirmModal = new ConditionalModalState<{\n id: string;\n origin: string;\n }>();\n\n deleteFieldModal?: DeleteFieldModalState;\n\n _extensionPoint;\n\n constructor(\n params: Readonly<DataExtensionStateParams & DataExtensionOverrides>,\n ) {\n this.container = params.container;\n this.disableUserDefinedWriting = params.disableUserDefinedWriting;\n this.filterable = params.filterable;\n this.enableArchive = params.enableArchive ?? true;\n this.closeSidePanel = params.closeSidePanel;\n this.fqdn = params.fqdn;\n this._extensionPoint = params.extensionPoint;\n this.dataExtensionService = new DataExtensionSchemaService(\n params.container,\n );\n\n this.containsPii = params.containsPii;\n this.defaultPermissions = params.defaultPermissions;\n\n // Initialize deleteFieldModal with proper reportBi\n this.deleteFieldModal = new DeleteFieldModalState({\n dataExtension: this,\n reportBi: params.container.createBILogger({\n componentType: 'DataExtension',\n ...params.fqdn,\n }),\n });\n\n makeObservable(this, {\n allUserCustomFields: computed,\n allAppsCustomFields: computed,\n allCustomFields: computed,\n archivedItems: computed,\n shouldDisplayArchive: computed,\n filterableCustomFields: computed,\n availableUserCustomFields: computed,\n availableAppsCustomFields: computed,\n availableCustomFields: computed,\n isReachedMaxCustomFields: computed,\n disableAddCustomField: computed,\n disableAddCustomFieldContent: computed,\n _dataExtensionSchemasBase: observable.ref,\n _dataExtensionSchemas: computed,\n userSchema: computed,\n appSchemas: computed,\n _upsertSchema: action,\n containsPii: observable,\n defaultPermissions: observable,\n isArchivedPanelOpen: observable,\n deleteFieldModal: observable.ref,\n openArchivedPanel: action,\n closeArchivedPanel: action,\n openDeleteConfirmModal: action,\n });\n }\n\n get hasWritePermissions() {\n if (this._hasWritePermissions == null) {\n this._hasWritePermissions = this.container.user.permissions.includes(\n 'DATA_EXTENSION_SCHEMA.WRITE',\n );\n }\n\n return this._hasWritePermissions;\n }\n\n get disableAddCustomField() {\n return !this.hasWritePermissions || this.isReachedMaxCustomFields;\n }\n\n get disableAddCustomFieldContent() {\n if (!this.hasWritePermissions) {\n return this.container.translate(\n 'cairo.customFields.writePermission.tooltip',\n );\n }\n\n if (this.isReachedMaxCustomFields) {\n return this.container.translate('cairo.customFields.maxFields.tooltip', {\n max: MAX_CUSTOM_FIELDS,\n });\n }\n\n return '';\n }\n\n getArchiveSuccessToastMessage(fieldName?: string): string {\n return this.enableArchive && fieldName\n ? this.container.translate(\n 'cairo.customFields.archive.success.toast.enabled',\n { selectedField: fieldName },\n )\n : this.container.translate('cairo.customFields.archive.success.toast');\n }\n\n getArchiveSuccessToastAction() {\n return this.enableArchive\n ? {\n text: this.container.translate(\n 'cairo.customFields.archive.success.toast.CTA',\n ),\n uiType: 'LINK' as const,\n onClick: () => this.openArchivedPanel?.(),\n }\n : undefined;\n }\n\n /**\n * Lazily loads the field operations service to reduce bundle size.\n * Only loads when archive/restore/delete operations are needed.\n */\n private async getFieldOperationsService(): Promise<DataExtensionFieldOperationsService> {\n if (this._fieldOperationsService) {\n return this._fieldOperationsService;\n }\n\n // Reuse the same promise if already loading\n if (this._fieldOperationsServicePromise) {\n return this._fieldOperationsServicePromise;\n }\n\n this._fieldOperationsServicePromise = import(\n '../services/DataExtensionFieldOperationsService'\n ).then((module) => {\n const self = this;\n this._fieldOperationsService =\n new module.DataExtensionFieldOperationsService({\n container: this.container,\n dataExtensionService: this.dataExtensionService,\n get userSchema() {\n return self.userSchema;\n },\n fqdnString: this.fqdnString,\n enableArchive: this.enableArchive,\n extractFieldValuesFromSchema:\n this.extractFieldValuesFromSchema.bind(this),\n upsertSchema: this._upsertSchema.bind(this),\n openArchivedPanel: this.openArchivedPanel.bind(this),\n });\n return this._fieldOperationsService;\n });\n\n return this._fieldOperationsServicePromise;\n }\n\n async archiveField({\n id,\n origin,\n reportBi,\n }: {\n id?: string;\n origin: string;\n reportBi: ReportBI;\n }) {\n const service = await this.getFieldOperationsService();\n return service.archiveField({ id, origin, reportBi });\n }\n\n async restoreField({\n id,\n origin,\n reportBi,\n }: {\n id?: string;\n origin: string;\n reportBi: ReportBI;\n }) {\n const service = await this.getFieldOperationsService();\n return service.restoreField({ id, origin, reportBi });\n }\n\n async deleteField({\n id,\n origin,\n reportBi,\n }: {\n id?: string;\n origin: string;\n reportBi: ReportBI;\n }) {\n const service = await this.getFieldOperationsService();\n return service.deleteField({ id, origin, reportBi });\n }\n\n extractFieldValuesFromSchema(fieldId: string): CustomFieldForm | undefined {\n if (!this.userSchema) {\n return;\n }\n\n const customField = DataExtensionSchemaService.toCustomField(\n this.userSchema,\n fieldId,\n );\n\n if (!customField || !customField.type || !customField.title) {\n return;\n }\n\n const { read, write } = customField['x-wix-permissions'];\n const isPiiField = customField['x-wix-pii']?.enabled;\n const readApps = read?.includes('apps');\n const readUsers = read?.includes('users-of-users');\n const writeApps = write?.includes('apps');\n const writeUsers = write?.includes('users-of-users');\n\n return {\n type: DataExtensionSchemaService.toCustomType(customField),\n name: customField.title,\n key: customField.id,\n readApps,\n readUsers,\n writeApps,\n writeUsers,\n containsPii: Boolean(isPiiField),\n };\n }\n\n _toCustomField({\n key,\n schema,\n editable,\n owner,\n namespace,\n }: {\n key: string;\n schema: DataExtensionField;\n editable: boolean;\n owner: CustomFieldOwner;\n namespace: string;\n }): CustomField | undefined {\n if (!DataExtensionSchemaService.toCustomType(schema)) {\n return;\n }\n return {\n id: key,\n label: schema?.title || key,\n maxLength: schema?.maxLength,\n options: schema?.enum,\n type: DataExtensionSchemaService.toCustomType(schema) as CustomFieldType,\n editable,\n filterable: schema['x-wix-filterable'],\n owner,\n properties: schema?.properties ?? {},\n namespace,\n isPii: Boolean(schema['x-wix-pii']?.enabled),\n permissions: schema['x-wix-permissions'],\n };\n }\n\n private isSupportedFieldType(type?: string): type is DataExtensionType {\n if (!type) {\n return false;\n }\n return ['string', 'number', 'integer', 'boolean', 'array'].includes(type);\n }\n\n private getAvailableCustomFieldsInSchema(\n properties: {\n [key: string]: DataExtensionField;\n },\n {\n editable,\n requiredPermissions,\n owner,\n namespace,\n }: {\n editable: boolean;\n requiredPermissions?: DataExtensionPermission[];\n owner: CustomFieldOwner;\n namespace: string;\n },\n ): CustomField[] {\n const filteredFields = Object.keys(properties).filter((key) => {\n const field = properties[key];\n const isAllowedType =\n this.isSupportedFieldType(field.type) ||\n (field.type === 'object' && field['x-wix-object-type'] === 'FILE/V1');\n\n const isPermitted =\n requiredPermissions == null ||\n includesAllReadPermissions(field, requiredPermissions);\n\n return !field['x-wix-archived'] && isAllowedType && isPermitted;\n });\n\n const sorted = filteredFields.sort((a, b) => {\n const aVal = new Date(properties[a]['x-wix-created-date']);\n const bVal = new Date(properties[b]['x-wix-created-date']);\n\n if (isNaN(bVal.valueOf()) || isNaN(aVal.valueOf())) {\n return 0;\n }\n\n return aVal.valueOf() - bVal.valueOf();\n });\n\n return sorted\n .map((key) =>\n this._toCustomField({\n key,\n schema: properties[key],\n editable,\n owner,\n namespace,\n }),\n )\n .filter(Boolean) as CustomField[];\n }\n\n /**\n * Available custom fields, excluding archived fields\n */\n get availableUserCustomFields(): CustomField[] {\n const properties: { [key: string]: DataExtensionField } =\n this.userSchema?.jsonSchema?.properties || {};\n return this.getAvailableCustomFieldsInSchema(properties, {\n editable: true,\n owner: 'user',\n namespace: '_user_fields',\n });\n }\n\n get availableAppsCustomFields(): CustomField[] {\n return (\n this.appSchemas?.reduce((prev, schema) => {\n return [...prev, ...this.getAvailableCustomFieldsForApp(schema)];\n }, [] as CustomField[]) ?? []\n );\n }\n\n getSchemaAndFieldsByNamespace(namespace: string) {\n const {\n _dataExtensionSchemas,\n dataExtensionService: { userFieldsNamespace },\n } = this;\n\n const schema = _dataExtensionSchemas.find((s) => s.namespace === namespace);\n\n if (!schema) {\n return {};\n }\n\n const fields = this.getAvailableCustomFieldsInSchema(\n schema.jsonSchema?.properties || {},\n {\n editable: false,\n owner: namespace === userFieldsNamespace ? 'user' : 'app',\n namespace,\n },\n );\n\n return {\n schema,\n fields,\n };\n }\n\n getAvailableCustomFieldsForApp(\n appSchema: DataExtensionSchema,\n ): CustomField[] {\n const properties: { [key: string]: DataExtensionField } =\n appSchema.jsonSchema?.properties || {};\n\n return this.getAvailableCustomFieldsInSchema(properties, {\n editable: false,\n requiredPermissions: ['users'],\n owner: 'app',\n namespace: appSchema.namespace as string,\n });\n }\n\n get availableCustomFields(): CustomField[] {\n return [\n ...this.availableUserCustomFields,\n ...this.availableAppsCustomFields,\n ];\n }\n\n get allUserCustomFields(): CustomField[] {\n const properties: { [key: string]: DataExtensionField } =\n this.userSchema?.jsonSchema?.properties || {};\n\n return Object.keys(properties)\n .map((key) =>\n this._toCustomField({\n key,\n schema: properties[key],\n editable: true,\n owner: 'user',\n namespace: '_user_fields',\n }),\n )\n .filter(Boolean) as CustomField[];\n }\n\n get allAppsCustomFields(): CustomField[] {\n return (\n this.appSchemas?.reduce((prev, appSchema) => {\n const properties: { [key: string]: DataExtensionField } =\n appSchema?.jsonSchema?.properties || {};\n\n return prev.concat(\n Object.keys(properties)\n .map((key) =>\n this._toCustomField({\n key,\n schema: properties[key],\n editable: false,\n owner: 'app',\n namespace: appSchema.namespace as string,\n }),\n )\n .filter(Boolean) as CustomField[],\n );\n }, [] as CustomField[]) ?? []\n );\n }\n\n get allCustomFields(): CustomField[] {\n return [...this.allUserCustomFields, ...this.allAppsCustomFields];\n }\n\n get archivedItems() {\n const userSchema = this.userSchema;\n if (!userSchema?.jsonSchema?.properties) {\n return [];\n }\n\n const properties = userSchema.jsonSchema.properties;\n return Object.keys(properties)\n .filter((key) => properties[key]['x-wix-archived'])\n .map((key) => ({\n ...properties[key],\n id: key,\n label: properties[key]?.title || key,\n isPii: Boolean(properties[key]?.['x-wix-pii']?.enabled),\n }));\n }\n\n get shouldDisplayArchive() {\n return this.enableArchive && this.archivedItems.length > 0;\n }\n\n get filterableCustomFields(): CustomField[] {\n if (!this.filterable) {\n return [];\n }\n\n return this.availableCustomFields.filter((field) => field.filterable);\n }\n\n get isReachedMaxCustomFields() {\n return this.allUserCustomFields.length >= MAX_CUSTOM_FIELDS;\n }\n\n get allNamespaces() {\n return [\n this.userSchema?.namespace,\n ...(this.appSchemas || []).map((schema) => schema.namespace),\n ].filter(Boolean) as string[];\n }\n\n init() {\n const { initTask } = this;\n\n initTask.runOnce(async () => {\n await this.fetchSchemas();\n });\n\n return () => {};\n }\n\n _upsertSchema(newSchema: DataExtensionSchema) {\n const { _dataExtensionSchemasBase } = this;\n\n const index = _dataExtensionSchemasBase.findIndex(\n (schema) => schema.namespace === newSchema?.namespace,\n );\n\n if (index === -1) {\n this._dataExtensionSchemasBase = [\n ..._dataExtensionSchemasBase,\n newSchema,\n ];\n } else {\n this._dataExtensionSchemasBase = _dataExtensionSchemasBase.map((schema) =>\n schema.namespace === newSchema.namespace ? newSchema : schema,\n );\n }\n }\n\n get userSchema() {\n const {\n _dataExtensionSchemas,\n dataExtensionService: { userFieldsNamespace },\n } = this;\n return _dataExtensionSchemas.find(\n (s) => s.namespace === userFieldsNamespace,\n );\n }\n\n get _dataExtensionSchemas() {\n const { _extensionPoint, _dataExtensionSchemasBase } = this;\n return _dataExtensionSchemasBase.filter((s: DataExtensionSchema) =>\n _extensionPoint\n ? s.extensionPoint === _extensionPoint\n : s.extensionPoint == null || s.extensionPoint === 'ROOT',\n );\n }\n\n get appSchemas() {\n const {\n _dataExtensionSchemas,\n dataExtensionService: { userFieldsNamespace },\n } = this;\n return _dataExtensionSchemas.filter(\n (s) => s.namespace !== userFieldsNamespace,\n );\n }\n\n async fetchSchemas() {\n const { dataExtensionService } = this;\n\n if (this.isFqdnValid) {\n const { dataExtensionSchemas } = await dataExtensionService.fetchSchemas(\n this.fqdnString,\n );\n\n runInAction(() => {\n this._dataExtensionSchemasBase = dataExtensionSchemas ?? [];\n });\n }\n }\n\n openArchivedPanel() {\n if (this.enableArchive) {\n this.isArchivedPanelOpen = true;\n }\n }\n\n closeArchivedPanel() {\n this.isArchivedPanelOpen = false;\n }\n\n openDeleteConfirmModal({ id, origin }: { id: string; origin: string }) {\n this.deleteConfirmModal.open({ id, origin });\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -212,10 +212,13 @@ class TagsManagementState {
212
212
  return this.collection.result.total >= MAX_TAGS;
213
213
  }
214
214
  showTagsLimitErrorToast(visualType) {
215
+ const excessCount = Math.max(1, this.collection.result.total - MAX_TAGS + 1);
215
216
  this.collection.showToast({
216
217
  message: (0, _createTagErrors.getTagsReachedLimitErrorMessage)({
217
218
  visualType,
218
- translate: this.container.translate
219
+ translate: this.container.translate,
220
+ excessCount,
221
+ limit: MAX_TAGS
219
222
  }),
220
223
  biName: 'cairo-max-tags-error',
221
224
  type: 'ERROR'
@@ -259,7 +262,9 @@ class TagsManagementState {
259
262
  }, (0, _createTagErrors.createTagErrors)({
260
263
  translate: this.container.translate,
261
264
  visualType,
262
- retryFn: () => this.createTag(params)
265
+ retryFn: () => this.createTag(params),
266
+ excessCount: Math.max(1, this.collection.result.total - MAX_TAGS + 1),
267
+ limit: MAX_TAGS
263
268
  }));
264
269
  await (onSuccess == null ? void 0 : onSuccess(serverCreatedTag));
265
270
  return [serverCreatedTag];
@@ -1 +1 @@
1
- {"version":3,"names":["_mobx","require","_types","_uuid","_events","_CollectionState","_CollectionOptimisticActions","_TaskState","_util","_services","_createTagErrors","_tagsService","TAG_MAX_LENGTH","exports","MAX_TAGS","TagsManagementState","constructor","params","_defineProperty2","default","TaskState","EventEmitter","container","fqdn","tagsService","TagsService","collection","CollectionState","events","onError","error","_this$container$error","_this$container$error2","_resolvedListTagsError","errorHandler","getResolvedError","call","err","queryName","fqdnString","join","fetchData","fetchedItems","listTags","exposure","TagExposure","PRIVATE","serverErrorOverride","message","translate","action","text","onClick","retry","items","total","length","itemKey","id","itemName","name","filters","showToast","toastConfig","_params$container","overrideShowToast","emit","remove","optimisticActions","CollectionOptimisticActions","orderBy","sort","fieldName","createdDate","Date","valueOf","order","makeObservable","init","createTag","updateTag","deleteTag","_isFqdnValid","disposers","initTask","runOnce","status","promise","forEach","disposer","result","isError","isLoading","isIdle","isSuccessful","isSuccess","fqdnToString","getTagById","tagId","_this$collection$resu","_keyedItemsMap","get","item","getTagNameById","_this$getTagById","resource","undefined","_optimisticActionBaseParams","optimisticActionParams","tagsBIReporter","actionName","origin","tagName","filteredListSize","isFromSearch","errorCode","onTryAgain","onUndo","otherOptimisticActionParams","internalMonitor","reportError","WixPatternsError","originalException","category","hasReachedTagsLimit","showTagsLimitErrorToast","visualType","getTagsReachedLimitErrorMessage","biName","type","tagSubOrigin","uuid","onSuccess","onAction","newTag","createOne","submit","serverCreatedTag","tag","createTagErrors","retryFn","tagToUpdate","previousName","updateOne","revision","toString","tagToDelete","deleteOne"],"sources":["../../../../src/state/TagsState/TagsManagementState.ts"],"sourcesContent":["import { action, makeObservable } from 'mobx';\nimport {\n Tag,\n TagExposure,\n} from '@wix/bex-utils/@wix/ambassador-os-tags-v1-tag/types';\nimport { TagsBIReporter } from './TagsBIReporter';\nimport { v4 as uuid } from 'uuid';\nimport { EventEmitter } from 'events';\nimport { WixPatternsContainer } from '../WixPatternsContainer';\nimport { Fqdn, ToastConfig } from '../../model';\nimport { CollectionState } from '../CollectionState';\nimport { CollectionOptimisticActions } from '../CollectionOptimisticActions';\nimport { TaskState } from '../TaskState';\nimport { fqdnToString, TagErrorVisualType, TypedEmitter } from '../../util';\nimport { WixPatternsError, WixPatternsErrorCode } from '../../services';\nimport {\n CreateManyParams,\n DeleteManyParams,\n OptimisticActionBasis,\n UpdateManyParams,\n} from '../OptimisticActions';\nimport {\n createTagErrors,\n getTagsReachedLimitErrorMessage,\n} from '../../services/tagsService/createTagErrors';\nimport { TagsService } from '../../services/tagsService';\nimport type { errorHandler } from '@wix/essentials';\n\nexport const TAG_MAX_LENGTH = 30;\nconst MAX_TAGS = 100;\n\nexport interface TagsManagementStateParams {\n readonly container: WixPatternsContainer;\n readonly fqdn: Fqdn;\n}\n\nexport class TagsManagementState {\n readonly collection: CollectionState<Tag>;\n readonly optimisticActions: CollectionOptimisticActions<Tag, {}>;\n readonly container;\n readonly fqdn;\n readonly initTask = new TaskState();\n readonly tagsService;\n readonly events = new EventEmitter() as TypedEmitter<{\n showToast: (toastConfig: ToastConfig) => unknown;\n hideToast: (toastConfig: ToastConfig) => unknown;\n }>;\n overrideShowToast = false;\n _resolvedListTagsError?: errorHandler.ResolvedError;\n\n constructor(params: TagsManagementStateParams) {\n this.container = params.container;\n this.fqdn = params.fqdn;\n this.tagsService = new TagsService({\n container: this.container,\n });\n\n this.collection = new CollectionState<Tag>({\n ...params.container,\n events: {\n onError: (error) => {\n this._resolvedListTagsError =\n this.container.errorHandler.getResolvedError?.(error.err);\n },\n },\n queryName: [this.fqdnString, 'tags'].join('/'),\n fetchData: async () => {\n const fetchedItems = await this.tagsService.listTags(\n {\n fqdn: this.fqdnString,\n exposure: TagExposure.PRIVATE,\n },\n {},\n {\n serverErrorOverride: () => ({\n message: this.container.translate(\n 'cairo.tags.collectionPage.popover.loadTags.error.body',\n ),\n action: {\n text: this.container.translate('cairo.tags.loadTags.error.CTA'),\n onClick: () => this.retry(),\n },\n }),\n },\n );\n\n return {\n items: fetchedItems,\n total: fetchedItems.length,\n };\n },\n itemKey: ({ id }) => id!,\n itemName: ({ name }) => name!,\n filters: {},\n showToast: (toastConfig: ToastConfig) => {\n if (this.overrideShowToast) {\n this.events.emit('showToast', toastConfig);\n return {\n remove: () => {\n this.events.emit('hideToast', toastConfig);\n },\n };\n }\n if (params?.container?.showToast) {\n return params.container.showToast(toastConfig);\n }\n return { remove: () => {} };\n },\n });\n\n this.optimisticActions = new CollectionOptimisticActions<Tag, {}>({\n container: this.container,\n collection: this.collection,\n orderBy: ({ sort }) => [\n ...(sort || []),\n {\n fieldName: ({ createdDate }) => (createdDate ?? new Date()).valueOf(),\n order: 'asc',\n },\n ],\n });\n\n makeObservable(this, {\n init: action,\n createTag: action,\n updateTag: action,\n deleteTag: action,\n retry: action,\n });\n }\n\n init() {\n if (!this._isFqdnValid()) {\n return;\n }\n\n const { collection, optimisticActions } = this;\n\n const disposers = [collection.init(), optimisticActions.init()];\n\n this.initTask.runOnce(async () => {\n collection.initTask.runOnce();\n\n await collection.initTask.status.promise;\n });\n\n return () => {\n disposers.forEach((disposer) => disposer());\n };\n }\n\n retry() {\n this.collection.initTask.runOnce();\n }\n\n get items() {\n return this.collection.result.items;\n }\n\n get isError() {\n return this.initTask.status.isError;\n }\n\n get error() {\n return this._resolvedListTagsError;\n }\n\n get isLoading() {\n const { status } = this.collection.initTask;\n return status.isIdle || status.isLoading;\n }\n\n get isSuccessful() {\n const { status } = this.collection.initTask;\n return status.isSuccess;\n }\n\n get fqdnString() {\n return fqdnToString(this.fqdn);\n }\n\n getTagById(tagId: string) {\n return this.collection.result._keyedItemsMap?.get(tagId)?.item;\n }\n\n getTagNameById(tagId: string) {\n return this.getTagById(tagId)?.name;\n }\n\n private _isFqdnValid() {\n return this.fqdn.resource !== undefined;\n }\n\n private _optimisticActionBaseParams<T extends OptimisticActionBasis>(\n optimisticActionParams: T,\n {\n tagsBIReporter,\n actionName,\n origin,\n tagName,\n filteredListSize,\n isFromSearch = false,\n errorCode,\n }: {\n tagsBIReporter: TagsBIReporter;\n actionName: string;\n origin: string;\n tagName: string;\n filteredListSize: number;\n isFromSearch?: boolean;\n errorCode: WixPatternsErrorCode;\n },\n ) {\n const { onError, onTryAgain, onUndo, ...otherOptimisticActionParams } =\n optimisticActionParams;\n\n return {\n onError: (error: unknown) => {\n tagsBIReporter.onError(\n {\n tagName,\n actionName,\n origin,\n },\n error,\n );\n this.container.internalMonitor.reportError({\n error: new WixPatternsError({\n errorCode,\n originalException: error,\n }),\n category: 'Tags',\n });\n\n onError?.(error);\n },\n onTryAgain: () => {\n tagsBIReporter.onTryAgain({\n actionName,\n isFromSearch,\n filteredListSize,\n });\n onTryAgain?.();\n },\n onUndo: () => {\n tagsBIReporter.onUndo({ actionName });\n onUndo?.();\n },\n ...otherOptimisticActionParams,\n };\n }\n\n private hasReachedTagsLimit() {\n return this.collection.result.total >= MAX_TAGS;\n }\n\n private showTagsLimitErrorToast(visualType: TagErrorVisualType) {\n this.collection.showToast({\n message: getTagsReachedLimitErrorMessage({\n visualType,\n translate: this.container.translate,\n }),\n biName: 'cairo-max-tags-error',\n type: 'ERROR',\n });\n }\n\n async createTag(params: {\n name: string;\n origin: string;\n tagSubOrigin?: string;\n filteredListSize: number;\n id?: string;\n isFromSearch?: boolean;\n onSuccess?: (tag: Tag) => void | Promise<void>;\n optimisticActionParams?: Partial<CreateManyParams<Tag>>;\n tagsBIReporter: TagsBIReporter;\n visualType?: TagErrorVisualType;\n }) {\n const {\n name,\n origin,\n tagSubOrigin,\n filteredListSize,\n id = uuid(),\n isFromSearch = false,\n onSuccess,\n optimisticActionParams = {},\n tagsBIReporter,\n visualType = 'toast',\n } = params;\n\n const actionName = 'Add tag';\n\n tagsBIReporter.onAction({\n tagName: name,\n isFromSearch,\n actionName,\n origin,\n tagSubOrigin,\n });\n\n if (this.hasReachedTagsLimit()) {\n return this.showTagsLimitErrorToast(visualType);\n }\n\n const newTag = {\n id,\n name,\n fqdn: this.fqdnString,\n exposure: TagExposure.PRIVATE,\n createdDate: new Date(),\n };\n\n this.optimisticActions.createOne(newTag, {\n submit: async () => {\n const serverCreatedTag = await this.tagsService.createTag(\n {\n tag: newTag,\n },\n createTagErrors({\n translate: this.container.translate,\n visualType,\n retryFn: () => this.createTag(params),\n }),\n );\n\n await onSuccess?.(serverCreatedTag);\n\n return [serverCreatedTag];\n },\n ...this._optimisticActionBaseParams(optimisticActionParams, {\n tagsBIReporter,\n actionName,\n origin,\n filteredListSize,\n tagName: name,\n isFromSearch,\n errorCode: 'CreateTagFailed',\n }),\n });\n }\n\n async updateTag({\n tagToUpdate,\n previousName,\n origin,\n tagSubOrigin,\n filteredListSize,\n isFromSearch = false,\n optimisticActionParams = {},\n tagsBIReporter,\n }: {\n tagToUpdate: Tag;\n previousName: string;\n origin: string;\n tagSubOrigin?: string;\n filteredListSize: number;\n isFromSearch?: boolean;\n optimisticActionParams?: Partial<UpdateManyParams<Tag, {}>>;\n tagsBIReporter: TagsBIReporter;\n }) {\n const actionName = 'Rename tag';\n\n tagsBIReporter.onAction({\n actionName,\n previousName,\n tagName: tagToUpdate.name!,\n isFromSearch,\n origin,\n tagSubOrigin,\n });\n\n this.optimisticActions.updateOne(\n { ...tagToUpdate, revision: (+tagToUpdate.revision! + 1).toString() },\n {\n submit: async () => {\n return this.tagsService.updateTag({ tag: tagToUpdate });\n },\n ...this._optimisticActionBaseParams(optimisticActionParams, {\n tagsBIReporter,\n actionName,\n origin,\n filteredListSize,\n tagName: previousName,\n isFromSearch,\n errorCode: 'UpdateTagFailed',\n }),\n },\n );\n }\n\n async deleteTag({\n tagToDelete,\n origin,\n tagSubOrigin,\n filteredListSize,\n isFromSearch = true,\n optimisticActionParams = {},\n tagsBIReporter,\n }: {\n tagToDelete: Tag;\n origin: string;\n tagSubOrigin?: string;\n filteredListSize: number;\n isFromSearch?: boolean;\n optimisticActionParams?: Partial<DeleteManyParams<Tag, {}>>;\n tagsBIReporter: TagsBIReporter;\n }) {\n const tagName = tagToDelete.name!;\n const actionName = 'Delete tag';\n\n tagsBIReporter.onAction({\n actionName,\n tagName,\n isFromSearch,\n origin,\n tagSubOrigin,\n });\n\n await this.optimisticActions.deleteOne(tagToDelete, {\n submit: async () => {\n return this.tagsService.deleteTag({ tagId: tagToDelete.id! });\n },\n ...this._optimisticActionBaseParams(optimisticActionParams, {\n tagsBIReporter,\n actionName,\n origin,\n tagName,\n filteredListSize,\n isFromSearch,\n errorCode: 'RemoveTagFailed',\n }),\n });\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_mobx","require","_types","_uuid","_events","_CollectionState","_CollectionOptimisticActions","_TaskState","_util","_services","_createTagErrors","_tagsService","TAG_MAX_LENGTH","exports","MAX_TAGS","TagsManagementState","constructor","params","_defineProperty2","default","TaskState","EventEmitter","container","fqdn","tagsService","TagsService","collection","CollectionState","events","onError","error","_this$container$error","_this$container$error2","_resolvedListTagsError","errorHandler","getResolvedError","call","err","queryName","fqdnString","join","fetchData","fetchedItems","listTags","exposure","TagExposure","PRIVATE","serverErrorOverride","message","translate","action","text","onClick","retry","items","total","length","itemKey","id","itemName","name","filters","showToast","toastConfig","_params$container","overrideShowToast","emit","remove","optimisticActions","CollectionOptimisticActions","orderBy","sort","fieldName","createdDate","Date","valueOf","order","makeObservable","init","createTag","updateTag","deleteTag","_isFqdnValid","disposers","initTask","runOnce","status","promise","forEach","disposer","result","isError","isLoading","isIdle","isSuccessful","isSuccess","fqdnToString","getTagById","tagId","_this$collection$resu","_keyedItemsMap","get","item","getTagNameById","_this$getTagById","resource","undefined","_optimisticActionBaseParams","optimisticActionParams","tagsBIReporter","actionName","origin","tagName","filteredListSize","isFromSearch","errorCode","onTryAgain","onUndo","otherOptimisticActionParams","internalMonitor","reportError","WixPatternsError","originalException","category","hasReachedTagsLimit","showTagsLimitErrorToast","visualType","excessCount","Math","max","getTagsReachedLimitErrorMessage","limit","biName","type","tagSubOrigin","uuid","onSuccess","onAction","newTag","createOne","submit","serverCreatedTag","tag","createTagErrors","retryFn","tagToUpdate","previousName","updateOne","revision","toString","tagToDelete","deleteOne"],"sources":["../../../../src/state/TagsState/TagsManagementState.ts"],"sourcesContent":["import { action, makeObservable } from 'mobx';\nimport {\n Tag,\n TagExposure,\n} from '@wix/bex-utils/@wix/ambassador-os-tags-v1-tag/types';\nimport { TagsBIReporter } from './TagsBIReporter';\nimport { v4 as uuid } from 'uuid';\nimport { EventEmitter } from 'events';\nimport { WixPatternsContainer } from '../WixPatternsContainer';\nimport { Fqdn, ToastConfig } from '../../model';\nimport { CollectionState } from '../CollectionState';\nimport { CollectionOptimisticActions } from '../CollectionOptimisticActions';\nimport { TaskState } from '../TaskState';\nimport { fqdnToString, TagErrorVisualType, TypedEmitter } from '../../util';\nimport { WixPatternsError, WixPatternsErrorCode } from '../../services';\nimport {\n CreateManyParams,\n DeleteManyParams,\n OptimisticActionBasis,\n UpdateManyParams,\n} from '../OptimisticActions';\nimport {\n createTagErrors,\n getTagsReachedLimitErrorMessage,\n} from '../../services/tagsService/createTagErrors';\nimport { TagsService } from '../../services/tagsService';\nimport type { errorHandler } from '@wix/essentials';\n\nexport const TAG_MAX_LENGTH = 30;\nconst MAX_TAGS = 100;\n\nexport interface TagsManagementStateParams {\n readonly container: WixPatternsContainer;\n readonly fqdn: Fqdn;\n}\n\nexport class TagsManagementState {\n readonly collection: CollectionState<Tag>;\n readonly optimisticActions: CollectionOptimisticActions<Tag, {}>;\n readonly container;\n readonly fqdn;\n readonly initTask = new TaskState();\n readonly tagsService;\n readonly events = new EventEmitter() as TypedEmitter<{\n showToast: (toastConfig: ToastConfig) => unknown;\n hideToast: (toastConfig: ToastConfig) => unknown;\n }>;\n overrideShowToast = false;\n _resolvedListTagsError?: errorHandler.ResolvedError;\n\n constructor(params: TagsManagementStateParams) {\n this.container = params.container;\n this.fqdn = params.fqdn;\n this.tagsService = new TagsService({\n container: this.container,\n });\n\n this.collection = new CollectionState<Tag>({\n ...params.container,\n events: {\n onError: (error) => {\n this._resolvedListTagsError =\n this.container.errorHandler.getResolvedError?.(error.err);\n },\n },\n queryName: [this.fqdnString, 'tags'].join('/'),\n fetchData: async () => {\n const fetchedItems = await this.tagsService.listTags(\n {\n fqdn: this.fqdnString,\n exposure: TagExposure.PRIVATE,\n },\n {},\n {\n serverErrorOverride: () => ({\n message: this.container.translate(\n 'cairo.tags.collectionPage.popover.loadTags.error.body',\n ),\n action: {\n text: this.container.translate('cairo.tags.loadTags.error.CTA'),\n onClick: () => this.retry(),\n },\n }),\n },\n );\n\n return {\n items: fetchedItems,\n total: fetchedItems.length,\n };\n },\n itemKey: ({ id }) => id!,\n itemName: ({ name }) => name!,\n filters: {},\n showToast: (toastConfig: ToastConfig) => {\n if (this.overrideShowToast) {\n this.events.emit('showToast', toastConfig);\n return {\n remove: () => {\n this.events.emit('hideToast', toastConfig);\n },\n };\n }\n if (params?.container?.showToast) {\n return params.container.showToast(toastConfig);\n }\n return { remove: () => {} };\n },\n });\n\n this.optimisticActions = new CollectionOptimisticActions<Tag, {}>({\n container: this.container,\n collection: this.collection,\n orderBy: ({ sort }) => [\n ...(sort || []),\n {\n fieldName: ({ createdDate }) => (createdDate ?? new Date()).valueOf(),\n order: 'asc',\n },\n ],\n });\n\n makeObservable(this, {\n init: action,\n createTag: action,\n updateTag: action,\n deleteTag: action,\n retry: action,\n });\n }\n\n init() {\n if (!this._isFqdnValid()) {\n return;\n }\n\n const { collection, optimisticActions } = this;\n\n const disposers = [collection.init(), optimisticActions.init()];\n\n this.initTask.runOnce(async () => {\n collection.initTask.runOnce();\n\n await collection.initTask.status.promise;\n });\n\n return () => {\n disposers.forEach((disposer) => disposer());\n };\n }\n\n retry() {\n this.collection.initTask.runOnce();\n }\n\n get items() {\n return this.collection.result.items;\n }\n\n get isError() {\n return this.initTask.status.isError;\n }\n\n get error() {\n return this._resolvedListTagsError;\n }\n\n get isLoading() {\n const { status } = this.collection.initTask;\n return status.isIdle || status.isLoading;\n }\n\n get isSuccessful() {\n const { status } = this.collection.initTask;\n return status.isSuccess;\n }\n\n get fqdnString() {\n return fqdnToString(this.fqdn);\n }\n\n getTagById(tagId: string) {\n return this.collection.result._keyedItemsMap?.get(tagId)?.item;\n }\n\n getTagNameById(tagId: string) {\n return this.getTagById(tagId)?.name;\n }\n\n private _isFqdnValid() {\n return this.fqdn.resource !== undefined;\n }\n\n private _optimisticActionBaseParams<T extends OptimisticActionBasis>(\n optimisticActionParams: T,\n {\n tagsBIReporter,\n actionName,\n origin,\n tagName,\n filteredListSize,\n isFromSearch = false,\n errorCode,\n }: {\n tagsBIReporter: TagsBIReporter;\n actionName: string;\n origin: string;\n tagName: string;\n filteredListSize: number;\n isFromSearch?: boolean;\n errorCode: WixPatternsErrorCode;\n },\n ) {\n const { onError, onTryAgain, onUndo, ...otherOptimisticActionParams } =\n optimisticActionParams;\n\n return {\n onError: (error: unknown) => {\n tagsBIReporter.onError(\n {\n tagName,\n actionName,\n origin,\n },\n error,\n );\n this.container.internalMonitor.reportError({\n error: new WixPatternsError({\n errorCode,\n originalException: error,\n }),\n category: 'Tags',\n });\n\n onError?.(error);\n },\n onTryAgain: () => {\n tagsBIReporter.onTryAgain({\n actionName,\n isFromSearch,\n filteredListSize,\n });\n onTryAgain?.();\n },\n onUndo: () => {\n tagsBIReporter.onUndo({ actionName });\n onUndo?.();\n },\n ...otherOptimisticActionParams,\n };\n }\n\n private hasReachedTagsLimit() {\n return this.collection.result.total >= MAX_TAGS;\n }\n\n private showTagsLimitErrorToast(visualType: TagErrorVisualType) {\n const excessCount = Math.max(1, this.collection.result.total - MAX_TAGS + 1);\n this.collection.showToast({\n message: getTagsReachedLimitErrorMessage({\n visualType,\n translate: this.container.translate,\n excessCount,\n limit: MAX_TAGS,\n }),\n biName: 'cairo-max-tags-error',\n type: 'ERROR',\n });\n }\n\n async createTag(params: {\n name: string;\n origin: string;\n tagSubOrigin?: string;\n filteredListSize: number;\n id?: string;\n isFromSearch?: boolean;\n onSuccess?: (tag: Tag) => void | Promise<void>;\n optimisticActionParams?: Partial<CreateManyParams<Tag>>;\n tagsBIReporter: TagsBIReporter;\n visualType?: TagErrorVisualType;\n }) {\n const {\n name,\n origin,\n tagSubOrigin,\n filteredListSize,\n id = uuid(),\n isFromSearch = false,\n onSuccess,\n optimisticActionParams = {},\n tagsBIReporter,\n visualType = 'toast',\n } = params;\n\n const actionName = 'Add tag';\n\n tagsBIReporter.onAction({\n tagName: name,\n isFromSearch,\n actionName,\n origin,\n tagSubOrigin,\n });\n\n if (this.hasReachedTagsLimit()) {\n return this.showTagsLimitErrorToast(visualType);\n }\n\n const newTag = {\n id,\n name,\n fqdn: this.fqdnString,\n exposure: TagExposure.PRIVATE,\n createdDate: new Date(),\n };\n\n this.optimisticActions.createOne(newTag, {\n submit: async () => {\n const serverCreatedTag = await this.tagsService.createTag(\n {\n tag: newTag,\n },\n createTagErrors({\n translate: this.container.translate,\n visualType,\n retryFn: () => this.createTag(params),\n excessCount: Math.max(\n 1,\n this.collection.result.total - MAX_TAGS + 1,\n ),\n limit: MAX_TAGS,\n }),\n );\n\n await onSuccess?.(serverCreatedTag);\n\n return [serverCreatedTag];\n },\n ...this._optimisticActionBaseParams(optimisticActionParams, {\n tagsBIReporter,\n actionName,\n origin,\n filteredListSize,\n tagName: name,\n isFromSearch,\n errorCode: 'CreateTagFailed',\n }),\n });\n }\n\n async updateTag({\n tagToUpdate,\n previousName,\n origin,\n tagSubOrigin,\n filteredListSize,\n isFromSearch = false,\n optimisticActionParams = {},\n tagsBIReporter,\n }: {\n tagToUpdate: Tag;\n previousName: string;\n origin: string;\n tagSubOrigin?: string;\n filteredListSize: number;\n isFromSearch?: boolean;\n optimisticActionParams?: Partial<UpdateManyParams<Tag, {}>>;\n tagsBIReporter: TagsBIReporter;\n }) {\n const actionName = 'Rename tag';\n\n tagsBIReporter.onAction({\n actionName,\n previousName,\n tagName: tagToUpdate.name!,\n isFromSearch,\n origin,\n tagSubOrigin,\n });\n\n this.optimisticActions.updateOne(\n { ...tagToUpdate, revision: (+tagToUpdate.revision! + 1).toString() },\n {\n submit: async () => {\n return this.tagsService.updateTag({ tag: tagToUpdate });\n },\n ...this._optimisticActionBaseParams(optimisticActionParams, {\n tagsBIReporter,\n actionName,\n origin,\n filteredListSize,\n tagName: previousName,\n isFromSearch,\n errorCode: 'UpdateTagFailed',\n }),\n },\n );\n }\n\n async deleteTag({\n tagToDelete,\n origin,\n tagSubOrigin,\n filteredListSize,\n isFromSearch = true,\n optimisticActionParams = {},\n tagsBIReporter,\n }: {\n tagToDelete: Tag;\n origin: string;\n tagSubOrigin?: string;\n filteredListSize: number;\n isFromSearch?: boolean;\n optimisticActionParams?: Partial<DeleteManyParams<Tag, {}>>;\n tagsBIReporter: TagsBIReporter;\n }) {\n const tagName = tagToDelete.name!;\n const actionName = 'Delete tag';\n\n tagsBIReporter.onAction({\n actionName,\n tagName,\n isFromSearch,\n origin,\n tagSubOrigin,\n });\n\n await this.optimisticActions.deleteOne(tagToDelete, {\n submit: async () => {\n return this.tagsService.deleteTag({ tagId: tagToDelete.id! });\n },\n ...this._optimisticActionBaseParams(optimisticActionParams, {\n tagsBIReporter,\n actionName,\n origin,\n tagName,\n filteredListSize,\n isFromSearch,\n errorCode: 'RemoveTagFailed',\n }),\n });\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -5,19 +5,25 @@ exports.getTranslatedErrorMessage = void 0;
5
5
  const getTranslatedErrorMessage = ({
6
6
  errorCode,
7
7
  visualType,
8
- container
8
+ container,
9
+ excessCount = 1,
10
+ limit = 100
9
11
  }) => {
10
- let translationKey;
11
12
  switch (errorCode) {
12
13
  case 'TAGS_REACHED_LIMIT':
13
14
  {
14
- translationKey = visualType === 'toast' ? 'cairo.tags.popover.creationLimitReached.error' : 'cairo.tags.creationLimitReached.error';
15
- break;
15
+ const translationKey = visualType === 'toast' ? 'cairo.tags.popover.creationLimitReached.error' : 'cairo.tags.creationLimitReached.error';
16
+ return container.translate(translationKey, {
17
+ count: excessCount,
18
+ limit
19
+ });
16
20
  }
17
21
  default:
18
- translationKey = visualType === 'toast' ? 'cairo.tags.collectionPage.toast.create.error' : 'cairo.tags.manageTags.modal.toast.create.error';
22
+ {
23
+ const translationKey = visualType === 'toast' ? 'cairo.tags.collectionPage.toast.create.error' : 'cairo.tags.manageTags.modal.toast.create.error';
24
+ return container.translate(translationKey);
25
+ }
19
26
  }
20
- return container.translate(translationKey);
21
27
  };
22
28
  exports.getTranslatedErrorMessage = getTranslatedErrorMessage;
23
29
  //# sourceMappingURL=tags.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["getTranslatedErrorMessage","errorCode","visualType","container","translationKey","translate","exports"],"sources":["../../../src/util/tags.ts"],"sourcesContent":["import { TranslationsKeys } from '../services';\nimport { WixPatternsContainer } from '../state';\n\nexport type TagErrorVisualType = 'toast' | 'notification';\n\nexport type CreateTagErrorCodes =\n | 'FQDN_NOT_FOUND'\n | 'TAG_NAME_ALREADY_EXISTS'\n | 'TAGS_REACHED_LIMIT'\n | 'CREATE_ID_EXHAUSTED_RETRY_ATTEMPTS';\n\nexport const getTranslatedErrorMessage = ({\n errorCode,\n visualType,\n container,\n}: {\n errorCode: CreateTagErrorCodes;\n visualType: TagErrorVisualType;\n container: WixPatternsContainer;\n}): string => {\n let translationKey: TranslationsKeys;\n\n switch (errorCode) {\n case 'TAGS_REACHED_LIMIT': {\n translationKey =\n visualType === 'toast'\n ? 'cairo.tags.popover.creationLimitReached.error'\n : 'cairo.tags.creationLimitReached.error';\n break;\n }\n default:\n translationKey =\n visualType === 'toast'\n ? 'cairo.tags.collectionPage.toast.create.error'\n : 'cairo.tags.manageTags.modal.toast.create.error';\n }\n\n return container.translate(translationKey);\n};\n"],"mappings":";;;;AAWO,MAAMA,yBAAyB,GAAGA,CAAC;EACxCC,SAAS;EACTC,UAAU;EACVC;AAKF,CAAC,KAAa;EACZ,IAAIC,cAAgC;EAEpC,QAAQH,SAAS;IACf,KAAK,oBAAoB;MAAE;QACzBG,cAAc,GACZF,UAAU,KAAK,OAAO,GAClB,+CAA+C,GAC/C,uCAAuC;QAC7C;MACF;IACA;MACEE,cAAc,GACZF,UAAU,KAAK,OAAO,GAClB,8CAA8C,GAC9C,gDAAgD;EAC1D;EAEA,OAAOC,SAAS,CAACE,SAAS,CAACD,cAAc,CAAC;AAC5C,CAAC;AAACE,OAAA,CAAAN,yBAAA,GAAAA,yBAAA","ignoreList":[]}
1
+ {"version":3,"names":["getTranslatedErrorMessage","errorCode","visualType","container","excessCount","limit","translationKey","translate","count","exports"],"sources":["../../../src/util/tags.ts"],"sourcesContent":["import { WixPatternsContainer } from '../state';\n\nexport type TagErrorVisualType = 'toast' | 'notification';\n\nexport type CreateTagErrorCodes =\n | 'FQDN_NOT_FOUND'\n | 'TAG_NAME_ALREADY_EXISTS'\n | 'TAGS_REACHED_LIMIT'\n | 'CREATE_ID_EXHAUSTED_RETRY_ATTEMPTS';\n\nexport const getTranslatedErrorMessage = ({\n errorCode,\n visualType,\n container,\n excessCount = 1,\n limit = 100,\n}: {\n errorCode: CreateTagErrorCodes;\n visualType: TagErrorVisualType;\n container: WixPatternsContainer;\n excessCount?: number;\n limit?: number;\n}): string => {\n switch (errorCode) {\n case 'TAGS_REACHED_LIMIT': {\n const translationKey =\n visualType === 'toast'\n ? 'cairo.tags.popover.creationLimitReached.error'\n : 'cairo.tags.creationLimitReached.error';\n return container.translate(translationKey, { count: excessCount, limit });\n }\n default: {\n const translationKey =\n visualType === 'toast'\n ? 'cairo.tags.collectionPage.toast.create.error'\n : 'cairo.tags.manageTags.modal.toast.create.error';\n return container.translate(translationKey);\n }\n }\n};\n"],"mappings":";;;;AAUO,MAAMA,yBAAyB,GAAGA,CAAC;EACxCC,SAAS;EACTC,UAAU;EACVC,SAAS;EACTC,WAAW,GAAG,CAAC;EACfC,KAAK,GAAG;AAOV,CAAC,KAAa;EACZ,QAAQJ,SAAS;IACf,KAAK,oBAAoB;MAAE;QACzB,MAAMK,cAAc,GAClBJ,UAAU,KAAK,OAAO,GAClB,+CAA+C,GAC/C,uCAAuC;QAC7C,OAAOC,SAAS,CAACI,SAAS,CAACD,cAAc,EAAE;UAAEE,KAAK,EAAEJ,WAAW;UAAEC;QAAM,CAAC,CAAC;MAC3E;IACA;MAAS;QACP,MAAMC,cAAc,GAClBJ,UAAU,KAAK,OAAO,GAClB,8CAA8C,GAC9C,gDAAgD;QACtD,OAAOC,SAAS,CAACI,SAAS,CAACD,cAAc,CAAC;MAC5C;EACF;AACF,CAAC;AAACG,OAAA,CAAAT,yBAAA,GAAAA,yBAAA","ignoreList":[]}
@@ -477,8 +477,8 @@
477
477
  "cairo.updatedView.collectionPage.toast.cta": "Refresh View",
478
478
  "cairo.collectionPage.nestedLimit.tooltip": "{subCatsAmount, plural, =1 {You can't have more than 1 sub-level.} other {You can't have more than # sub-levels.}}",
479
479
  "cairo.subtitle.learnMore": "Learn more",
480
- "cairo.tags.creationLimitReached.error": "Unable to create more than 100 tags.",
481
- "cairo.tags.popover.creationLimitReached.error": "Unable to create more than 100 tags. Delete a tag in order to create a new one.",
480
+ "cairo.tags.creationLimitReached.error": "Unable to create more than {limit} tags. Delete {count, plural, one {# tag} other {# tags}} to continue.",
481
+ "cairo.tags.popover.creationLimitReached.error": "Unable to create more than {limit} tags. Delete {count, plural, one {# tag} other {# tags}} in Manage Tags to add new ones.",
482
482
  "cairo.entityPage.header.submit.CTA": "Submit",
483
483
  "cairo.customFields.addCustomField.modal.PII-setting.toggle.name": "Personal information (PII)",
484
484
  "cairo.customFields.addCustomField.modal.PII-setting.toggle.info": "Protect personally identifiable information (PII) like addresses and passport info with an additional layer of protection. <linkVal>Why is this important?</linkVal>",
@@ -526,7 +526,7 @@
526
526
  "cairo.tags.manageTags.modal.toast.create.error.asLabels": "Couldn't create label.",
527
527
  "cairo.tags.filterPanel.dropdown.title.asLabels": "Labels",
528
528
  "cairo.tags.manageTags.modal.list.input.placeholder.asLabels": "Enter label name",
529
- "cairo.tags.creationLimitReached.error.asLabels": "Unable to create more than 100 labels.",
529
+ "cairo.tags.creationLimitReached.error.asLabels": "Unable to create more than {limit} labels. Delete {count, plural, one {# label} other {# labels}} to continue.",
530
530
  "cairo.tags.tagsWidget.subtitle.asLabels": "Labels help you filter and stay organized.",
531
531
  "cairo.tags.manageTags.modal.toast.rename.error.asLabels": "Couldn't rename label.",
532
532
  "cairo.tags.manageTags.modal.toast.delete.success.asLabels": "Label deleted.",
@@ -549,7 +549,7 @@
549
549
  "cairo.tags.manageTags.modal.list.input.validation.maxLength.asLabels": "Labels must be under {count, plural, other {# characters}}",
550
550
  "cairo.tags.collectionPage.add.CTA.asLabels": "Assign Labels",
551
551
  "cairo.tags.collectionPage.toast.create.error.asLabels": "Unable to create the label because of a technical issue on our end.",
552
- "cairo.tags.popover.creationLimitReached.error.asLabels": "Unable to create more than 100 labels. Delete a label in order to create a new one.",
552
+ "cairo.tags.popover.creationLimitReached.error.asLabels": "Unable to create more than {limit} labels. Delete {count, plural, one {# label} other {# labels}} in Manage Labels to add new ones.",
553
553
  "cairo.tags.collectionPage.popover.manage.CTA.asLabels": "Manage Labels",
554
554
  "cairo.tags.manageTags.modal.subtitle.asLabels": "Edit, remove and create labels.",
555
555
  "cairo.tags.manageTags.modal.emptyState.body.asLabels": "Labels help you filter and organize your items.",
@@ -626,6 +626,14 @@
626
626
  "cairo.customFields.restored.success.toast": "{selectedField} was restored.",
627
627
  "cairo.archivedFields.rmore-actions.delete": "delete this key",
628
628
  "cairo.archivedFields.back.custom-columns.tooltip": "Back to Customize Columns",
629
+ "cairo.table.custom-columns.indication.pii.tooltip": "This field contains personally identifiable information",
630
+ "cairo.table.custom-columns.indication.system": "System",
631
+ "cairo.table.custom-columns.indication.system.tooltip": "This field is managed by the system",
632
+ "cairo.table.custom-columns.indication.user": "User",
633
+ "cairo.table.custom-columns.indication.user.tooltip": "This field was created by a user",
634
+ "cairo.table.custom-columns.indication.app": "App",
635
+ "cairo.table.custom-columns.indication.app.tooltip": "This field is managed by an app",
636
+ "cairo.table.custom-columns.indication.primary.tooltip": "This is the primary field",
629
637
  "cairo.archivedFields.more-actions.restore": "Restore",
630
638
  "cairo.archivedFields.more-actions.delete": "Delete",
631
639
  "cairo.customFields.archive.modal.description.enabled": "This field and its collected information will be archived and can be restored anytime.",
@@ -359,5 +359,111 @@
359
359
  "cairo.import.restoring": "Restoring backup...",
360
360
  "cairo.import.noRowsWarningTitle": "No rows found inside the CSV file",
361
361
  "cairo.import.noRowsWarningDescription": "The file was uploaded successfully, but no data was found inside the mapped columns. If it's intentional, continue as planned.",
362
- "cairo.filtersPanel.reset": "Reset"
362
+ "cairo.filtersPanel.reset": "Reset",
363
+ "cairo.tags.creationLimitReached.error": "Unable to create more than {limit} tags. Delete {count, plural, one {# tag} other {# tags}} to continue.",
364
+ "cairo.tags.popover.creationLimitReached.error": "Unable to create more than {limit} tags. Delete {count, plural, one {# tag} other {# tags}} in Manage Tags to add new ones.",
365
+ "cairo.tags.tagsWidget.title": "Tags",
366
+ "cairo.tags.tagsWidget.subtitle": "Tags help you filter and stay organized.",
367
+ "cairo.tags.tagsWidget.input.placeholder": "Enter new tag name",
368
+ "cairo.tags.tagsWidget.add.CTA": "Assign Tags",
369
+ "cairo.tags.tagsWidget.options.manage.CTA": "Manage Tags",
370
+ "cairo.tags.tagsWidget.options.add.CTA": "Create \"{tagName}\"",
371
+ "cairo.tags.loadTags.error.CTA": "Reload Tags",
372
+ "cairo.tags.collectionPage.tagsColumn.title.asLabels": "Labels",
373
+ "cairo.tags.loadTags.error.title": "We couldn’t load your tags",
374
+ "cairo.tags.collectionPage.toast.create.error": "Unable to create the tag because of a technical issue on our end.",
375
+ "cairo.tags.applyChanges.toast.success": "Tags updated.",
376
+ "cairo.tags.tagsWidget.create.CTA": "Create Tags",
377
+ "cairo.tags.collectionPage.tagsColumn.emptyState.body": "Tags help you filter and organize your items.",
378
+ "cairo.tags.collectionPage.popover.manage.CTA": "Manage Tags",
379
+ "cairo.tags.applyChanges.toast.undo.CTA": "Undo",
380
+ "cairo.tags.tagsWidget.emptyState.body": "Tags help you filter and organize your items.",
381
+ "cairo.tags.collectionPage.popover.close.CTA": "Close",
382
+ "cairo.tags.tagsWidget.noPermissions.tooltip": "You need “Permission Type” permission to\nmanage tags. Contact a site admin for access.",
383
+ "cairo.tags.collectionPage.tagsColumn.manage.CTA": "Manage Tags",
384
+ "cairo.tags.loadTags.error.body": "There was a technical issue on our end. Reload to try again.",
385
+ "cairo.tags.manageTags.modal.emptyState.title": "Create a new tag",
386
+ "cairo.tags.collectionPage.popover.create.CTA": "Create \"{tagName}\"",
387
+ "cairo.tags.collectionPage.popover.emptyState.body": "Organize your items with tags. Create your first tag in the search.",
388
+ "cairo.tags.manageTags.modal.emptyState.body": "Tags help you filter and organize your items.",
389
+ "cairo.tags.collectionPage.toast.update.error": "Unable to update tags because of a technical issue on our end.",
390
+ "cairo.tags.collectionPage.popover.search.placeholder": "Search tags…",
391
+ "cairo.tags.collectionPage.popover.emptyState.search.placeholder": "Enter new tag name",
392
+ "cairo.tags.collectionPage.applyChanges.CTA": "Apply",
393
+ "cairo.tags.manageTags.modal.list.input.validation.noName": "Enter a name.",
394
+ "cairo.tags.collectionPage.popover.loadTags.error.body": "Couldn’t load tags due to a technical issue on our end.",
395
+ "cairo.tags.popover.tagCreated.toast.success": "Tag created.",
396
+ "cairo.tags.manageTags.modal.list.create.CTA": "Create <name>\"{tagName}\"</name>",
397
+ "cairo.tags.fqdn-not-found.error": "This action couldn't be completed due to a technical issue on our end.",
398
+ "cairo.tags.fqdn-not-found.error.cta": "Contact Support",
399
+ "cairo.tags.fqdn-not-found.manageTagsModal.error": "Unable to complete this action.",
400
+ "cairo.tags.manageTags.modal.list.input.validation.exists.asLabels": "This label already exists.",
401
+ "cairo.tags.tagsWidget.emptyState.body.asLabels": "Labels help you filter and organize your items.",
402
+ "cairo.tags.manageTags.modal.toast.rename.success.asLabels": "Label renamed.",
403
+ "cairo.tags.manageTags.modal.toast.create.error.asLabels": "Couldn't create label.",
404
+ "cairo.tags.filterPanel.dropdown.title.asLabels": "Labels",
405
+ "cairo.tags.manageTags.modal.list.input.placeholder.asLabels": "Enter label name",
406
+ "cairo.tags.creationLimitReached.error.asLabels": "Unable to create more than {limit} labels. Delete {count, plural, one {# label} other {# labels}} to continue.",
407
+ "cairo.tags.tagsWidget.subtitle.asLabels": "Labels help you filter and stay organized.",
408
+ "cairo.tags.manageTags.modal.toast.rename.error.asLabels": "Couldn't rename label.",
409
+ "cairo.tags.manageTags.modal.toast.delete.success.asLabels": "Label deleted.",
410
+ "cairo.tags.manageTags.modal.title.asLabels": "Manage labels: {EntityName}",
411
+ "cairo.tags.tagsWidget.title.asLabels": "Labels",
412
+ "cairo.tags.tagsWidget.options.manage.CTA.asLabels": "Manage Labels",
413
+ "cairo.tags.collectionPage.tagsColumn.emptyState.body.asLabels": "Labels help you filter and organize your items.",
414
+ "cairo.tags.manageTags.modal.toast.delete.error.asLabels": "Couldn't delete label.",
415
+ "cairo.tags.tagsWidget.input.placeholder.asLabels": "Enter new label name",
416
+ "cairo.tags.popover.bulkItemLimit.tooltip.asLabels": "Labels can only be assigned to 100 items at a time.",
417
+ "cairo.tags.manageTags.modal.deleteModal.title.asLabels": "Delete this label?",
418
+ "cairo.tags.loadTags.error.CTA.asLabels": "Reload Labels",
419
+ "cairo.tags.manageTags.modal.search.placeholder.asLabels": "Search labels...",
420
+ "cairo.tags.filterPanel.dropdown.placeholder.asLabels": "Select labels...",
421
+ "cairo.tags.collectionPage.popover.emptyState.search.placeholder.asLabels": "Enter new label name",
422
+ "cairo.tags.manageTags.modal.toast.create.success.asLabels": "Label created.",
423
+ "cairo.tags.tagsWidget.create.CTA.asLabels": "Create Labels",
424
+ "cairo.tags.collectionPage.popover.loadTags.error.body.asLabels": "Couldn’t load labels due to a technical issue on our end.",
425
+ "cairo.tags.manageTags.modal.list.input.validation.maxLength.asLabels": "Labels must be under {count, plural, other {# characters}}",
426
+ "cairo.tags.collectionPage.add.CTA.asLabels": "Assign Labels",
427
+ "cairo.tags.collectionPage.toast.create.error.asLabels": "Unable to create the label because of a technical issue on our end.",
428
+ "cairo.tags.popover.creationLimitReached.error.asLabels": "Unable to create more than {limit} labels. Delete {count, plural, one {# label} other {# labels}} in Manage Labels to add new ones.",
429
+ "cairo.tags.collectionPage.popover.manage.CTA.asLabels": "Manage Labels",
430
+ "cairo.tags.manageTags.modal.subtitle.asLabels": "Edit, remove and create labels.",
431
+ "cairo.tags.manageTags.modal.emptyState.body.asLabels": "Labels help you filter and organize your items.",
432
+ "cairo.tags.loadTags.error.title.asLabels": "We couldn’t load your labels",
433
+ "cairo.tags.collectionPage.popover.search.placeholder.asLabels": "Search labels…",
434
+ "cairo.tags.collectionPage.popover.emptyState.body.asLabels": "Organize your items with labels. Create your first label in the search.",
435
+ "cairo.tags.popover.tagCreated.toast.success.asLabels": "Label created.",
436
+ "cairo.tags.collectionPage.toast.update.error.asLabels": "Unable to update labels because of a technical issue on our end.",
437
+ "cairo.tags.manageTags.modal.add.CTA.asLabels": "Create Label",
438
+ "cairo.tags.manageTags.modal.emptyState.title.asLabels": "Create a new label",
439
+ "cairo.tags.applyChanges.toast.success.asLabels": "Labels updated.",
440
+ "cairo.tags.collectionPage.tagsColumn.manage.CTA.asLabels": "Manage Labels",
441
+ "cairo.tags.tagsWidget.add.CTA.asLabels": "Assign Labels",
442
+ "cairo.tags.tagsWidget.noPermissions.tooltip.asLabels": "You don't have permission to manage labels. Contact a site admin for access.",
443
+ "cairo.tags.manageTags.modal.deleteModal.body.asLabels": "<text>The label <name>\"{name}\"</name> might be in use. Deleting this label will also remove it from all of the items it's assigned to.</text>",
444
+ "cairo.tags.manageTags.modal.list.create.CTA.asLabels": "Create <name>\"{tagName}\"</name>",
445
+ "cairo.tags.collectionPage.popover.create.CTA.asLabels": "Create \"{tagName}\"",
446
+ "cairo.tags.tagsWidget.options.add.CTA.asLabels": "Create \"{tagName}\"",
447
+ "cairo.tags.tagsField.readOnly.emptyState": "There aren’t any tags assigned yet. ",
448
+ "cairo.tags.tagsField.readOnly.emptyState.asLabels": "There aren’t any labels assigned yet.",
449
+ "cairo.tags.popover.bulkItemUpdate.tooltip": "Changes can’t be made until tags are finished updating.",
450
+ "cairo.tags.bulkItemUpdate.updatingModal.title": "Updating tags…",
451
+ "cairo.tags.bulkItemUpdate.updatingModal.body": "This may take a few moments. Keep this tab open until the update is complete. ",
452
+ "cairo.tags.bulkItemUpdate.updatingModal.CTA": "Close",
453
+ "cairo.tags.popover.assignFolder.tooltip": "Tags can't be assigned to folders.",
454
+ "cairo.tags.bulkItemUpdate.toast.error.CTA": "Try Again",
455
+ "cairo.tags.bulkItemUpdate.updatingTags.toast.CTA": "Show Status",
456
+ "cairo.tags.bulkItemUpdate.updatingTags.toast": "Updating tags...",
457
+ "cairo.tags.bulkItemUpdate.toast.success": "Tags updated.",
458
+ "cairo.tags.bulkItemUpdate.toast.error": "{total, plural, =1 {1 tag couldn't be updated due to a technical issue.} other {# tags couldn't be updated due to a technical issue.}}",
459
+ "cairo.tags.bulkItemUpdate.toast.error.CTA.asLabels": "Try Again",
460
+ "cairo.tags.bulkItemUpdate.toast.success.asLabels": "Labels updated.",
461
+ "cairo.tags.bulkItemUpdate.updatingTags.toast.asLabels": "Updating labels...",
462
+ "cairo.tags.bulkItemUpdate.toast.error.asLabels": "{total, plural, =1 {1 label couldn't be updated due to a technical issue.} other {# labels couldn't be updated due to a technical issue.}}",
463
+ "cairo.tags.bulkItemUpdate.updatingModal.CTA.asLabels": "Close",
464
+ "cairo.tags.bulkItemUpdate.updatingModal.body.asLabels": "This may take a few moments. Keep this tab open until the update is complete. ",
465
+ "cairo.tags.bulkItemUpdate.updatingModal.title.asLabels": "Updating labels…",
466
+ "cairo.tags.bulkItemUpdate.updatingTags.toast.CTA.asLabels": "Show Status",
467
+ "cairo.tags.popover.bulkItemUpdate.tooltip.asLabels": "Changes can’t be made until labels are finished updating.",
468
+ "cairo.tags.popover.assignFolder.tooltip.asLabels": "Labels can't be assigned to folders."
363
469
  }
@@ -1 +1 @@
1
- {"version":3,"file":"dataExtensionService.js","sourceRoot":"","sources":["../../../../src/services/DataExtensionService/dataExtensionService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dataExtensionService.js","sourceRoot":"","sources":["../../../../src/services/DataExtensionService/dataExtensionService.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- export const createTagErrors = ({ translate: t, visualType = 'toast', retryFn, }) => {
1
+ export const createTagErrors = ({ translate: t, visualType = 'toast', retryFn, excessCount = 1, limit = 100, }) => {
2
2
  return {
3
3
  FQDN_NOT_FOUND: () => ({
4
4
  message: visualType === 'toast'
@@ -18,6 +18,8 @@ export const createTagErrors = ({ translate: t, visualType = 'toast', retryFn, }
18
18
  message: getTagsReachedLimitErrorMessage({
19
19
  visualType,
20
20
  translate: t,
21
+ excessCount,
22
+ limit,
21
23
  }),
22
24
  }),
23
25
  CREATE_ID_EXHAUSTED_RETRY_ATTEMPTS: () => ({
@@ -32,7 +34,10 @@ export const createTagErrors = ({ translate: t, visualType = 'toast', retryFn, }
32
34
  EXPOSURE_NOT_SUPPORTED: false,
33
35
  };
34
36
  };
35
- export const getTagsReachedLimitErrorMessage = ({ visualType, translate: t, }) => visualType === 'toast'
36
- ? t('cairo.tags.popover.creationLimitReached.error')
37
- : t('cairo.tags.creationLimitReached.error');
37
+ export const getTagsReachedLimitErrorMessage = ({ visualType, translate: t, excessCount, limit, }) => visualType === 'toast'
38
+ ? t('cairo.tags.popover.creationLimitReached.error', {
39
+ count: excessCount,
40
+ limit,
41
+ })
42
+ : t('cairo.tags.creationLimitReached.error', { count: excessCount, limit });
38
43
  //# sourceMappingURL=createTagErrors.js.map