@wix/bex-core 2.110.0 → 2.112.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/assets/locale/messages_cs.json +2 -2
- package/dist/cjs/assets/locale/messages_da.json +2 -2
- package/dist/cjs/assets/locale/messages_de.json +2 -2
- package/dist/cjs/assets/locale/messages_es.json +2 -2
- package/dist/cjs/assets/locale/messages_fr.json +1 -1
- package/dist/cjs/assets/locale/messages_id.json +2 -2
- package/dist/cjs/assets/locale/messages_it.json +4 -4
- package/dist/cjs/assets/locale/messages_ja.json +4 -4
- package/dist/cjs/assets/locale/messages_ko.json +1 -1
- package/dist/cjs/assets/locale/messages_nl.json +2 -2
- package/dist/cjs/assets/locale/messages_no.json +1 -1
- package/dist/cjs/assets/locale/messages_pl.json +2 -2
- package/dist/cjs/assets/locale/messages_pt.json +2 -2
- package/dist/cjs/assets/locale/messages_ru.json +2 -2
- package/dist/cjs/assets/locale/messages_sv.json +2 -2
- package/dist/cjs/assets/locale/messages_th.json +2 -2
- package/dist/cjs/assets/locale/messages_tr.json +2 -2
- package/dist/cjs/assets/locale/messages_uk.json +3 -3
- package/dist/cjs/assets/locale/messages_vi.json +2 -2
- package/dist/cjs/assets/locale/messages_zh.json +2 -2
- package/dist/cjs/services/DataExtensionService/dataExtensionService.js.map +1 -1
- package/dist/cjs/state/CustomFieldModalState.js +3 -0
- package/dist/cjs/state/CustomFieldModalState.js.map +1 -1
- package/dist/cjs/state/CustomFieldsViewWidgetState.js +8 -3
- package/dist/cjs/state/CustomFieldsViewWidgetState.js.map +1 -1
- package/dist/cjs/state/DataExtensionState.js +3 -2
- package/dist/cjs/state/DataExtensionState.js.map +1 -1
- package/dist/esm/assets/locale/messages_cs.json +2 -2
- package/dist/esm/assets/locale/messages_da.json +2 -2
- package/dist/esm/assets/locale/messages_de.json +2 -2
- package/dist/esm/assets/locale/messages_es.json +2 -2
- package/dist/esm/assets/locale/messages_fr.json +1 -1
- package/dist/esm/assets/locale/messages_id.json +2 -2
- package/dist/esm/assets/locale/messages_it.json +4 -4
- package/dist/esm/assets/locale/messages_ja.json +4 -4
- package/dist/esm/assets/locale/messages_ko.json +1 -1
- package/dist/esm/assets/locale/messages_nl.json +2 -2
- package/dist/esm/assets/locale/messages_no.json +1 -1
- package/dist/esm/assets/locale/messages_pl.json +2 -2
- package/dist/esm/assets/locale/messages_pt.json +2 -2
- package/dist/esm/assets/locale/messages_ru.json +2 -2
- package/dist/esm/assets/locale/messages_sv.json +2 -2
- package/dist/esm/assets/locale/messages_th.json +2 -2
- package/dist/esm/assets/locale/messages_tr.json +2 -2
- package/dist/esm/assets/locale/messages_uk.json +3 -3
- package/dist/esm/assets/locale/messages_vi.json +2 -2
- package/dist/esm/assets/locale/messages_zh.json +2 -2
- package/dist/esm/services/DataExtensionService/dataExtensionService.js.map +1 -1
- package/dist/esm/state/CustomFieldModalState.js +3 -0
- package/dist/esm/state/CustomFieldModalState.js.map +1 -1
- package/dist/esm/state/CustomFieldsViewWidgetState.js +4 -1
- package/dist/esm/state/CustomFieldsViewWidgetState.js.map +1 -1
- package/dist/esm/state/DataExtensionState.js +2 -2
- package/dist/esm/state/DataExtensionState.js.map +1 -1
- package/dist/types/services/DataExtensionService/dataExtensionService.d.ts +8 -1
- package/dist/types/services/DataExtensionService/dataExtensionService.d.ts.map +1 -1
- package/dist/types/state/CustomFieldModalState.d.ts.map +1 -1
- package/dist/types/state/CustomFieldsViewWidgetState.d.ts +3 -1
- package/dist/types/state/CustomFieldsViewWidgetState.d.ts.map +1 -1
- package/dist/types/state/DataExtensionState.d.ts +0 -1
- package/dist/types/state/DataExtensionState.d.ts.map +1 -1
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_mobx","require","_ConditionalModalState","_CustomFieldModalBiReporter","_formstate","_ToggleState","_util","_isHttpError","CustomFieldModalState","constructor","params","_defineProperty2","default","ToggleState","undefined","ConditionalModalState","onConfirm","form","mode","customFieldModalBiReporter","reportModalEndProcess","t","validation","validate","hasError","enableAutoValidation","Error","_this$dataExtensionSt","_this$dataExtensionSt2","dataExtensionSchema","dataExtensionState","dataExtensionService","addCustomField","getFormValues","schema","userSchema","fqdn","fqdnString","filterable","runInAction","container","showToast","call","message","type","biName","endType","e","onConfirmError","FormState","FieldState","validators","value","name","key","allUserCustomFields","some","field","id","test","readUsers","readApps","writeUsers","writeApps","containsPii","permissions","read","apps","users","write","$","dirty","CustomFieldModalBiReporter","makeObservable","namePlaceholder","computed","isSubmitting","disabledFields","observable","ref","errorToastConfig","reset","action","setFormValues","generateUniqueKey","bound","setKeyFieldIfNotDirty","setDefaultPermissions","_this$errorToastConfi","getResolvedError","errorHandler","_httpError$response","_httpError$response2","_httpError$response3","resolvedError","httpError","isDetailsResponse","response","data","isErrorDetails","details","validationError","fieldViolations","v","ruleName","text","onClick","window","open","reportSubmitFailure","errorType","settings","setOff","disableAutoValidation","disablePermissionCheckboxes","_defaultPermissions$i","_defaultPermissions$s","defaultPermissions","installedApps","hide","_defaultPermissions$i2","_defaultPermissions$i3","defaultRead","defaultWrite","siteVisitors","_defaultPermissions$s2","_defaultPermissions$s3","containsKey","slug","slugify","length","index","translate","modalState","modal","confirming","isLoading","exports"],"sources":["../../../src/state/CustomFieldModalState.ts"],"sourcesContent":["import {\n action,\n computed,\n makeObservable,\n observable,\n runInAction,\n} from 'mobx';\nimport { ConditionalModalState } from './ConditionalModalState';\nimport { CustomFieldModalBiReporter } from './CustomFieldModalBiReporter';\nimport { FieldState, FormState } from 'formstate';\nimport { ToggleState } from './ToggleState';\nimport { CustomFieldOrigin, CustomFieldType } from '../services';\nimport { DataExtensionState } from './DataExtensionState';\nimport { slugify } from '../util';\nimport { isDetailsResponse, isErrorDetails } from '../util/isHttpError';\nimport { ToastConfig } from '../model';\n\nexport interface CustomFieldStateParams {\n dataExtensionState: DataExtensionState;\n}\n\nexport interface CustomFieldForm {\n type?: CustomFieldType;\n key: string;\n name: string;\n readApps: boolean;\n readUsers: boolean;\n writeApps: boolean;\n writeUsers: boolean;\n containsPii: boolean;\n}\n\nexport class CustomFieldModalState {\n dataExtensionState: DataExtensionState;\n customFieldModalBiReporter: CustomFieldModalBiReporter;\n settings = new ToggleState();\n errorToastConfig: ToastConfig | undefined = undefined;\n mode: 'new' | 'edit' = 'new';\n origin: CustomFieldOrigin = 'Custom columns panel';\n\n modalState = new ConditionalModalState({\n onConfirm: async () => {\n const {\n form,\n mode,\n customFieldModalBiReporter: { reportModalEndProcess },\n t,\n } = this;\n\n const validation = await form.validate();\n\n if (validation.hasError) {\n this.enableAutoValidation();\n throw new Error('validation');\n }\n\n try {\n const { dataExtensionSchema } =\n await this.dataExtensionState.dataExtensionService.addCustomField({\n form: this.getFormValues(),\n schema: this.dataExtensionState.userSchema,\n fqdn: this.dataExtensionState.fqdnString,\n filterable: this.dataExtensionState.filterable,\n });\n\n runInAction(() => {\n this.dataExtensionState.userSchema = dataExtensionSchema;\n });\n\n this.dataExtensionState.container.showToast?.({\n message:\n mode === 'new'\n ? t('cairo.customFields.successToast')\n : t('cairo.customFields.editCustomField.success.toast'),\n type: 'SUCCESS',\n biName: 'cairo-custom-field-success-toast',\n });\n\n reportModalEndProcess({ endType: 'Add Field' });\n } catch (e: unknown) {\n this.onConfirmError(e);\n }\n },\n });\n\n form = new FormState({\n type: new FieldState<CustomFieldType | undefined>(undefined).validators(\n (value) => {\n if (!value) {\n return this.t(\n 'cairo.customFields.addCustomField.modal.emptyFieldType.error',\n );\n }\n\n return undefined;\n },\n ),\n name: new FieldState('').validators((value) => {\n if (!value) {\n return this.t(\n 'cairo.customFields.addCustomField.modal.emptyFieldName.error',\n );\n }\n\n return undefined;\n }),\n key: new FieldState('').validators((value) => {\n const {\n t,\n mode,\n dataExtensionState: { allUserCustomFields },\n } = this;\n\n if (!value) {\n return this.t(\n 'cairo.customFields.addCustomField.modal.emptyFieldName.error',\n );\n }\n\n if (\n mode === 'new' &&\n allUserCustomFields.some((field) => field.id === value)\n ) {\n return t('cairo.customFields.addCustomField.modal.sameKey.error');\n }\n\n if (!/^[a-zA-Z][a-zA-Z0-9_]*$/g.test(value)) {\n return t('cairo.customFields.addCustomField.modal.keyFormat.error');\n }\n\n return undefined;\n }),\n readUsers: new FieldState(false),\n readApps: new FieldState(false),\n writeUsers: new FieldState(false),\n writeApps: new FieldState(false),\n containsPii: new FieldState(false),\n });\n\n disabledFields = {\n permissions: {\n read: { apps: true, users: true },\n write: { apps: true, users: true },\n },\n };\n\n constructor(params: CustomFieldStateParams) {\n this.dataExtensionState = params.dataExtensionState;\n this.customFieldModalBiReporter = new CustomFieldModalBiReporter({\n dataExtensionState: params.dataExtensionState,\n });\n\n makeObservable(this, {\n namePlaceholder: computed,\n isSubmitting: computed,\n disabledFields: observable.ref,\n errorToastConfig: observable.ref,\n mode: observable.ref,\n reset: action,\n setFormValues: action,\n generateUniqueKey: action.bound,\n setKeyFieldIfNotDirty: action.bound,\n setDefaultPermissions: action,\n });\n }\n\n onConfirmError(e: unknown) {\n const { getResolvedError } = this.dataExtensionState.container.errorHandler;\n\n runInAction(() => {\n const resolvedError = getResolvedError?.(e);\n const httpError = resolvedError?.httpError;\n\n if (\n isDetailsResponse(httpError?.response?.data) &&\n isErrorDetails(httpError?.response?.data.details) &&\n httpError?.response?.data?.details?.validationError?.fieldViolations?.some(\n (v) => v.ruleName === 'EXCEEDED_STORED_DATA_SIZE',\n )\n ) {\n this.errorToastConfig = {\n message: this.t('cairo.customFields.modal.maxFieldsError'),\n action: {\n text: this.t('cairo.error.contactSupport.cta'),\n onClick: () => {\n window.open('https://www.wix.com/contact', '_blank');\n },\n },\n };\n } else {\n this.errorToastConfig = {\n message: resolvedError?.message!,\n action: resolvedError?.action,\n };\n }\n });\n\n this.customFieldModalBiReporter.reportSubmitFailure({\n errorType: this.errorToastConfig?.message,\n });\n\n // Prevents modal closing\n throw e;\n }\n reset() {\n const {\n form,\n settings,\n disabledFields: { permissions },\n } = this;\n\n form.reset();\n settings.setOff();\n this.errorToastConfig = undefined;\n this.disableAutoValidation();\n\n permissions.read.apps = false;\n permissions.read.users = false;\n permissions.write.apps = false;\n permissions.write.users = false;\n }\n\n enableAutoValidation() {\n const {\n form: {\n $: { key, name, type },\n },\n } = this;\n\n key.enableAutoValidation();\n name.enableAutoValidation();\n type.enableAutoValidation();\n }\n\n disableAutoValidation() {\n const {\n form: {\n $: { key, name, type },\n },\n } = this;\n\n key.disableAutoValidation();\n name.disableAutoValidation();\n type.disableAutoValidation();\n }\n\n getFormValues(): CustomFieldForm {\n const {\n form: {\n $: {\n type,\n key,\n name,\n readApps,\n readUsers,\n writeApps,\n writeUsers,\n containsPii,\n },\n },\n } = this;\n\n return {\n type: type.value,\n key: key.value,\n name: name.value,\n readApps: readApps.value,\n readUsers: readUsers.value,\n writeApps: writeApps.value,\n writeUsers: writeUsers.value,\n containsPii: containsPii.value,\n };\n }\n\n setFormValues(\n form: CustomFieldForm,\n params?: { disablePermissionCheckboxes: boolean },\n ) {\n const {\n form: { $ },\n } = this;\n\n $.key.value = form.key;\n $.name.value = form.name;\n $.type.value = form.type;\n $.readApps.value = form.readApps;\n $.readUsers.value = form.readUsers;\n $.writeApps.value = form.writeApps;\n $.writeUsers.value = form.writeUsers;\n $.containsPii.value = form.containsPii;\n if (params?.disablePermissionCheckboxes) {\n if (form.readUsers) {\n this.disabledFields.permissions.read.users = true;\n }\n\n if (form.readApps) {\n this.disabledFields.permissions.read.apps = true;\n }\n\n if (form.writeUsers) {\n this.disabledFields.permissions.write.users = true;\n }\n\n if (form.writeApps) {\n this.disabledFields.permissions.write.apps = true;\n }\n }\n }\n\n setDefaultPermissions() {\n const {\n form: { $ },\n dataExtensionState: { defaultPermissions },\n } = this;\n if (!defaultPermissions?.installedApps?.hide) {\n $.readApps.value = !!defaultPermissions?.installedApps?.defaultRead;\n $.writeApps.value = !!defaultPermissions?.installedApps?.defaultWrite;\n }\n\n if (!defaultPermissions?.siteVisitors?.hide) {\n $.readUsers.value = !!defaultPermissions?.siteVisitors?.defaultRead;\n $.writeUsers.value = !!defaultPermissions?.siteVisitors?.defaultWrite;\n }\n }\n\n setKeyFieldIfNotDirty = (value: string) => {\n const {\n form: {\n $: { key },\n },\n mode,\n } = this;\n\n if (mode === 'new' && !key.dirty) {\n // In the formstate library setting a field value using\n // the onChange API sets the dirty state of the field to true.\n // However, since here it's not a manual user input\n // we avoid changing the dirty state by setting a value directly.\n key.value = value;\n }\n };\n\n private containsKey(key: string) {\n return this.dataExtensionState.allUserCustomFields.some(\n (field) => field.id === key,\n );\n }\n\n generateUniqueKey(name: string) {\n const slug = slugify(name);\n const type = this.form.$.type.value;\n\n if (slug && slug.length >= 4 && !this.containsKey(slug)) {\n return slug;\n }\n\n if (!type) {\n return '';\n }\n\n let index = 1;\n\n while (this.containsKey(`${type}_${index}`)) {\n index += 1;\n }\n\n return `${type}_${index}`;\n }\n\n get t() {\n return this.dataExtensionState.container.translate;\n }\n\n get isSubmitting() {\n return this.modalState.modal.confirming.isLoading;\n }\n\n get namePlaceholder() {\n const {\n t,\n form: {\n $: { type },\n },\n } = this;\n\n switch (type.value) {\n case 'dropdown':\n return t('cairo.customFields.fieldType.dropdownList.Name.placeholder');\n case 'checkbox':\n return t('cairo.customFields.fieldType.checkbox.Name.placeholder');\n case 'shortText':\n return t('cairo.customFields.fieldType.shortText.Name.placeholder');\n case 'longText':\n return t('cairo.customFields.fieldType.longText.Name.placeholder');\n case 'url':\n return t('cairo.customFields.placeholder.url');\n case 'date':\n return t('cairo.customFields.fieldType.date.Name.placeholder');\n case 'dateTime':\n return t('cairo.customFields.fieldType.dateAndTime.Name.placeholder');\n case 'integer':\n return t('cairo.customFields.fieldType.numberInteger.Name.placeholder');\n case 'decimal':\n return t('cairo.customFields.fieldType.numberDecimal.Name.placeholder');\n default:\n return t(\n 'cairo.customFields.addCustomField.modal.fieldName.placeholder',\n );\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_mobx","require","_ConditionalModalState","_CustomFieldModalBiReporter","_formstate","_ToggleState","_util","_isHttpError","CustomFieldModalState","constructor","params","_defineProperty2","default","ToggleState","undefined","ConditionalModalState","onConfirm","dataExtensionState","isReachedMaxCustomFields","form","mode","customFieldModalBiReporter","reportModalEndProcess","t","validation","validate","hasError","enableAutoValidation","Error","_this$dataExtensionSt","_this$dataExtensionSt2","dataExtensionSchema","dataExtensionService","addCustomField","getFormValues","schema","userSchema","fqdn","fqdnString","filterable","runInAction","container","showToast","call","message","type","biName","endType","e","onConfirmError","FormState","FieldState","validators","value","name","key","allUserCustomFields","some","field","id","test","readUsers","readApps","writeUsers","writeApps","containsPii","permissions","read","apps","users","write","$","dirty","CustomFieldModalBiReporter","makeObservable","namePlaceholder","computed","isSubmitting","disabledFields","observable","ref","errorToastConfig","reset","action","setFormValues","generateUniqueKey","bound","setKeyFieldIfNotDirty","setDefaultPermissions","_this$errorToastConfi","getResolvedError","errorHandler","_httpError$response","_httpError$response2","_httpError$response3","resolvedError","httpError","isDetailsResponse","response","data","isErrorDetails","details","validationError","fieldViolations","v","ruleName","text","onClick","window","open","reportSubmitFailure","errorType","settings","setOff","disableAutoValidation","disablePermissionCheckboxes","_defaultPermissions$i","_defaultPermissions$s","defaultPermissions","installedApps","hide","_defaultPermissions$i2","_defaultPermissions$i3","defaultRead","defaultWrite","siteVisitors","_defaultPermissions$s2","_defaultPermissions$s3","containsKey","slug","slugify","length","index","translate","modalState","modal","confirming","isLoading","exports"],"sources":["../../../src/state/CustomFieldModalState.ts"],"sourcesContent":["import {\n action,\n computed,\n makeObservable,\n observable,\n runInAction,\n} from 'mobx';\nimport { ConditionalModalState } from './ConditionalModalState';\nimport { CustomFieldModalBiReporter } from './CustomFieldModalBiReporter';\nimport { FieldState, FormState } from 'formstate';\nimport { ToggleState } from './ToggleState';\nimport { CustomFieldOrigin, CustomFieldType } from '../services';\nimport { DataExtensionState } from './DataExtensionState';\nimport { slugify } from '../util';\nimport { isDetailsResponse, isErrorDetails } from '../util/isHttpError';\nimport { ToastConfig } from '../model';\n\nexport interface CustomFieldStateParams {\n dataExtensionState: DataExtensionState;\n}\n\nexport interface CustomFieldForm {\n type?: CustomFieldType;\n key: string;\n name: string;\n readApps: boolean;\n readUsers: boolean;\n writeApps: boolean;\n writeUsers: boolean;\n containsPii: boolean;\n}\n\nexport class CustomFieldModalState {\n dataExtensionState: DataExtensionState;\n customFieldModalBiReporter: CustomFieldModalBiReporter;\n settings = new ToggleState();\n errorToastConfig: ToastConfig | undefined = undefined;\n mode: 'new' | 'edit' = 'new';\n origin: CustomFieldOrigin = 'Custom columns panel';\n\n modalState = new ConditionalModalState({\n onConfirm: async () => {\n if (this.dataExtensionState.isReachedMaxCustomFields) {\n return;\n }\n const {\n form,\n mode,\n customFieldModalBiReporter: { reportModalEndProcess },\n t,\n } = this;\n\n const validation = await form.validate();\n\n if (validation.hasError) {\n this.enableAutoValidation();\n throw new Error('validation');\n }\n\n try {\n const { dataExtensionSchema } =\n await this.dataExtensionState.dataExtensionService.addCustomField({\n form: this.getFormValues(),\n schema: this.dataExtensionState.userSchema,\n fqdn: this.dataExtensionState.fqdnString,\n filterable: this.dataExtensionState.filterable,\n });\n\n runInAction(() => {\n this.dataExtensionState.userSchema = dataExtensionSchema;\n });\n\n this.dataExtensionState.container.showToast?.({\n message:\n mode === 'new'\n ? t('cairo.customFields.successToast')\n : t('cairo.customFields.editCustomField.success.toast'),\n type: 'SUCCESS',\n biName: 'cairo-custom-field-success-toast',\n });\n\n reportModalEndProcess({ endType: 'Add Field' });\n } catch (e: unknown) {\n this.onConfirmError(e);\n }\n },\n });\n\n form = new FormState({\n type: new FieldState<CustomFieldType | undefined>(undefined).validators(\n (value) => {\n if (!value) {\n return this.t(\n 'cairo.customFields.addCustomField.modal.emptyFieldType.error',\n );\n }\n\n return undefined;\n },\n ),\n name: new FieldState('').validators((value) => {\n if (!value) {\n return this.t(\n 'cairo.customFields.addCustomField.modal.emptyFieldName.error',\n );\n }\n\n return undefined;\n }),\n key: new FieldState('').validators((value) => {\n const {\n t,\n mode,\n dataExtensionState: { allUserCustomFields },\n } = this;\n\n if (!value) {\n return this.t(\n 'cairo.customFields.addCustomField.modal.emptyFieldName.error',\n );\n }\n\n if (\n mode === 'new' &&\n allUserCustomFields.some((field) => field.id === value)\n ) {\n return t('cairo.customFields.addCustomField.modal.sameKey.error');\n }\n\n if (!/^[a-zA-Z][a-zA-Z0-9_]*$/g.test(value)) {\n return t('cairo.customFields.addCustomField.modal.keyFormat.error');\n }\n\n return undefined;\n }),\n readUsers: new FieldState(false),\n readApps: new FieldState(false),\n writeUsers: new FieldState(false),\n writeApps: new FieldState(false),\n containsPii: new FieldState(false),\n });\n\n disabledFields = {\n permissions: {\n read: { apps: true, users: true },\n write: { apps: true, users: true },\n },\n };\n\n constructor(params: CustomFieldStateParams) {\n this.dataExtensionState = params.dataExtensionState;\n this.customFieldModalBiReporter = new CustomFieldModalBiReporter({\n dataExtensionState: params.dataExtensionState,\n });\n\n makeObservable(this, {\n namePlaceholder: computed,\n isSubmitting: computed,\n disabledFields: observable.ref,\n errorToastConfig: observable.ref,\n mode: observable.ref,\n reset: action,\n setFormValues: action,\n generateUniqueKey: action.bound,\n setKeyFieldIfNotDirty: action.bound,\n setDefaultPermissions: action,\n });\n }\n\n onConfirmError(e: unknown) {\n const { getResolvedError } = this.dataExtensionState.container.errorHandler;\n\n runInAction(() => {\n const resolvedError = getResolvedError?.(e);\n const httpError = resolvedError?.httpError;\n\n if (\n isDetailsResponse(httpError?.response?.data) &&\n isErrorDetails(httpError?.response?.data.details) &&\n httpError?.response?.data?.details?.validationError?.fieldViolations?.some(\n (v) => v.ruleName === 'EXCEEDED_STORED_DATA_SIZE',\n )\n ) {\n this.errorToastConfig = {\n message: this.t('cairo.customFields.modal.maxFieldsError'),\n action: {\n text: this.t('cairo.error.contactSupport.cta'),\n onClick: () => {\n window.open('https://www.wix.com/contact', '_blank');\n },\n },\n };\n } else {\n this.errorToastConfig = {\n message: resolvedError?.message!,\n action: resolvedError?.action,\n };\n }\n });\n\n this.customFieldModalBiReporter.reportSubmitFailure({\n errorType: this.errorToastConfig?.message,\n });\n\n // Prevents modal closing\n throw e;\n }\n reset() {\n const {\n form,\n settings,\n disabledFields: { permissions },\n } = this;\n\n form.reset();\n settings.setOff();\n this.errorToastConfig = undefined;\n this.disableAutoValidation();\n\n permissions.read.apps = false;\n permissions.read.users = false;\n permissions.write.apps = false;\n permissions.write.users = false;\n }\n\n enableAutoValidation() {\n const {\n form: {\n $: { key, name, type },\n },\n } = this;\n\n key.enableAutoValidation();\n name.enableAutoValidation();\n type.enableAutoValidation();\n }\n\n disableAutoValidation() {\n const {\n form: {\n $: { key, name, type },\n },\n } = this;\n\n key.disableAutoValidation();\n name.disableAutoValidation();\n type.disableAutoValidation();\n }\n\n getFormValues(): CustomFieldForm {\n const {\n form: {\n $: {\n type,\n key,\n name,\n readApps,\n readUsers,\n writeApps,\n writeUsers,\n containsPii,\n },\n },\n } = this;\n\n return {\n type: type.value,\n key: key.value,\n name: name.value,\n readApps: readApps.value,\n readUsers: readUsers.value,\n writeApps: writeApps.value,\n writeUsers: writeUsers.value,\n containsPii: containsPii.value,\n };\n }\n\n setFormValues(\n form: CustomFieldForm,\n params?: { disablePermissionCheckboxes: boolean },\n ) {\n const {\n form: { $ },\n } = this;\n\n $.key.value = form.key;\n $.name.value = form.name;\n $.type.value = form.type;\n $.readApps.value = form.readApps;\n $.readUsers.value = form.readUsers;\n $.writeApps.value = form.writeApps;\n $.writeUsers.value = form.writeUsers;\n $.containsPii.value = form.containsPii;\n if (params?.disablePermissionCheckboxes) {\n if (form.readUsers) {\n this.disabledFields.permissions.read.users = true;\n }\n\n if (form.readApps) {\n this.disabledFields.permissions.read.apps = true;\n }\n\n if (form.writeUsers) {\n this.disabledFields.permissions.write.users = true;\n }\n\n if (form.writeApps) {\n this.disabledFields.permissions.write.apps = true;\n }\n }\n }\n\n setDefaultPermissions() {\n const {\n form: { $ },\n dataExtensionState: { defaultPermissions },\n } = this;\n if (!defaultPermissions?.installedApps?.hide) {\n $.readApps.value = !!defaultPermissions?.installedApps?.defaultRead;\n $.writeApps.value = !!defaultPermissions?.installedApps?.defaultWrite;\n }\n\n if (!defaultPermissions?.siteVisitors?.hide) {\n $.readUsers.value = !!defaultPermissions?.siteVisitors?.defaultRead;\n $.writeUsers.value = !!defaultPermissions?.siteVisitors?.defaultWrite;\n }\n }\n\n setKeyFieldIfNotDirty = (value: string) => {\n const {\n form: {\n $: { key },\n },\n mode,\n } = this;\n\n if (mode === 'new' && !key.dirty) {\n // In the formstate library setting a field value using\n // the onChange API sets the dirty state of the field to true.\n // However, since here it's not a manual user input\n // we avoid changing the dirty state by setting a value directly.\n key.value = value;\n }\n };\n\n private containsKey(key: string) {\n return this.dataExtensionState.allUserCustomFields.some(\n (field) => field.id === key,\n );\n }\n\n generateUniqueKey(name: string) {\n const slug = slugify(name);\n const type = this.form.$.type.value;\n\n if (slug && slug.length >= 4 && !this.containsKey(slug)) {\n return slug;\n }\n\n if (!type) {\n return '';\n }\n\n let index = 1;\n\n while (this.containsKey(`${type}_${index}`)) {\n index += 1;\n }\n\n return `${type}_${index}`;\n }\n\n get t() {\n return this.dataExtensionState.container.translate;\n }\n\n get isSubmitting() {\n return this.modalState.modal.confirming.isLoading;\n }\n\n get namePlaceholder() {\n const {\n t,\n form: {\n $: { type },\n },\n } = this;\n\n switch (type.value) {\n case 'dropdown':\n return t('cairo.customFields.fieldType.dropdownList.Name.placeholder');\n case 'checkbox':\n return t('cairo.customFields.fieldType.checkbox.Name.placeholder');\n case 'shortText':\n return t('cairo.customFields.fieldType.shortText.Name.placeholder');\n case 'longText':\n return t('cairo.customFields.fieldType.longText.Name.placeholder');\n case 'url':\n return t('cairo.customFields.placeholder.url');\n case 'date':\n return t('cairo.customFields.fieldType.date.Name.placeholder');\n case 'dateTime':\n return t('cairo.customFields.fieldType.dateAndTime.Name.placeholder');\n case 'integer':\n return t('cairo.customFields.fieldType.numberInteger.Name.placeholder');\n case 'decimal':\n return t('cairo.customFields.fieldType.numberDecimal.Name.placeholder');\n default:\n return t(\n 'cairo.customFields.addCustomField.modal.fieldName.placeholder',\n );\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -13,7 +13,8 @@ class CustomFieldsViewWidgetState {
|
|
|
13
13
|
constructor({
|
|
14
14
|
container,
|
|
15
15
|
fqdn,
|
|
16
|
-
url
|
|
16
|
+
url,
|
|
17
|
+
theme
|
|
17
18
|
}) {
|
|
18
19
|
(0, _defineProperty2.default)(this, "container", void 0);
|
|
19
20
|
(0, _defineProperty2.default)(this, "dataExtension", void 0);
|
|
@@ -22,9 +23,11 @@ class CustomFieldsViewWidgetState {
|
|
|
22
23
|
(0, _defineProperty2.default)(this, "reportBi", void 0);
|
|
23
24
|
(0, _defineProperty2.default)(this, "startTime", performance.now());
|
|
24
25
|
(0, _defineProperty2.default)(this, "url", void 0);
|
|
26
|
+
(0, _defineProperty2.default)(this, "theme", void 0);
|
|
25
27
|
(0, _defineProperty2.default)(this, "userFieldsNamespace", void 0);
|
|
26
28
|
this.container = container;
|
|
27
29
|
this.url = url;
|
|
30
|
+
this.theme = theme;
|
|
28
31
|
this.reportBi = container.createBILogger({
|
|
29
32
|
componentType: 'CustomFieldsViewWidget',
|
|
30
33
|
...fqdn
|
|
@@ -39,7 +42,8 @@ class CustomFieldsViewWidgetState {
|
|
|
39
42
|
container
|
|
40
43
|
});
|
|
41
44
|
this.reportBi((0, _v.loadStart)({
|
|
42
|
-
url: this.url
|
|
45
|
+
url: this.url,
|
|
46
|
+
theme
|
|
43
47
|
}));
|
|
44
48
|
}
|
|
45
49
|
init() {
|
|
@@ -59,7 +63,8 @@ class CustomFieldsViewWidgetState {
|
|
|
59
63
|
this.apps.init(appIds);
|
|
60
64
|
(_this$apps$initTask$s = this.apps.initTask.status.promise) == null || _this$apps$initTask$s.then(() => this.reportBi((0, _v.loadEnd)({
|
|
61
65
|
url: this.url,
|
|
62
|
-
loadingTime: Math.round(performance.now() - this.startTime)
|
|
66
|
+
loadingTime: Math.round(performance.now() - this.startTime),
|
|
67
|
+
theme: this.theme
|
|
63
68
|
}))).catch(
|
|
64
69
|
// do nothing
|
|
65
70
|
() => {});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_TaskState","require","_DataExtensionState","_services","_v","_AppsState","CustomFieldsViewWidgetState","constructor","container","fqdn","url","_defineProperty2","default","TaskState","performance","now","reportBi","createBILogger","componentType","dataExtension","DataExtensionState","userFieldsNamespace","dataExtensionService","apps","AppsState","loadStart","init","initTask","runOnce","initDataExtension","initApps","_this$dataExtension$i","status","promise","catch","onInitError","bind","_this$apps$initTask$s","appIds","appSchemas","map","schema","appDefId","filter","Boolean","then","loadEnd","loadingTime","Math","round","startTime","err","cairoError","WixPatternsError","errorCode","originalException","internalMonitor","reportError","error","cairoErrorInLoadingAComponent","errorType","name","retry","cairoTryAgainClicked","filteredListSize","availableUserCustomFields","length","actionName","loaction","isLoading","isIdle","isError","getExtendedFieldsToDisplayForNamespace","namespace","extendedFields","_this$dataExtension$a","isUserNamespace","_extendedFields$names","userCustomFields","fields","namespaces","filteredFields","field","fieldValue","id","isEmpty","undefined","appSchema","find","appFields","getAvailableCustomFieldsForApp","getAppName","_this$dataExtension$a2","appNames","exports"],"sources":["../../../src/state/CustomFieldsViewWidgetState.ts"],"sourcesContent":["import { WixPatternsContainer } from './WixPatternsContainer';\nimport { Fqdn } from '../model';\nimport { TaskState } from './TaskState';\nimport { DataExtensionState } from './DataExtensionState';\nimport { ExtendedFields, WixPatternsError } from '../services';\nimport {\n cairoErrorInLoadingAComponent,\n cairoTryAgainClicked,\n loadEnd,\n loadStart,\n} from '@wix/bex-utils/@wix/bi-logger-os-data/v2';\nimport { AppsState } from './AppsState';\n\nexport interface CustomFieldsViewWidgetStateParams {\n readonly container: WixPatternsContainer;\n readonly fqdn: Fqdn;\n readonly url: string;\n}\nexport class CustomFieldsViewWidgetState {\n readonly container: WixPatternsContainer;\n readonly dataExtension;\n readonly apps;\n readonly initTask = new TaskState();\n readonly reportBi;\n readonly startTime = performance.now();\n readonly url;\n readonly userFieldsNamespace;\n\n constructor({ container, fqdn, url }: CustomFieldsViewWidgetStateParams) {\n this.container = container;\n this.url = url;\n\n this.reportBi = container.createBILogger({\n componentType: 'CustomFieldsViewWidget',\n ...fqdn,\n });\n\n this.dataExtension = new DataExtensionState({\n container,\n fqdn,\n reportBi: this.reportBi,\n });\n\n this.userFieldsNamespace =\n this.dataExtension.dataExtensionService.userFieldsNamespace;\n\n this.apps = new AppsState({\n container,\n });\n\n this.reportBi(\n loadStart({\n url: this.url,\n }),\n );\n }\n\n init() {\n this.initTask.runOnce(async () => {\n await this.initDataExtension();\n this.initApps();\n });\n }\n\n initDataExtension() {\n this.dataExtension.init();\n return this.dataExtension.initTask.status.promise?.catch(\n this.onInitError.bind(this),\n );\n }\n\n initApps() {\n const appIds = (this.dataExtension.appSchemas || [])\n .map((schema) => schema.appDefId)\n .filter(Boolean) as string[];\n\n this.apps.init(appIds);\n this.apps.initTask.status.promise\n ?.then(() =>\n this.reportBi(\n loadEnd({\n url: this.url,\n loadingTime: Math.round(performance.now() - this.startTime),\n }),\n ),\n )\n .catch(\n // do nothing\n () => {},\n );\n }\n\n onInitError(err: Error) {\n const cairoError = new WixPatternsError({\n errorCode: 'InitCustomFieldsDataExtensionFailed',\n originalException: err,\n });\n\n this.container.internalMonitor.reportError({\n error: cairoError,\n });\n\n this.reportBi(\n cairoErrorInLoadingAComponent({\n errorType: cairoError.name,\n }),\n );\n\n throw cairoError;\n }\n\n retry() {\n this.reportBi(\n cairoTryAgainClicked({\n filteredListSize: this.dataExtension.availableUserCustomFields.length,\n actionName: 'Load custom fields',\n loaction: 'View only widget',\n }),\n );\n\n this.initTask.runOnce();\n }\n\n get isLoading() {\n const { status } = this.initTask;\n return status.isIdle || status.isLoading;\n }\n\n get isError() {\n return this.initTask.status.isError;\n }\n\n getExtendedFieldsToDisplayForNamespace(\n namespace: string,\n extendedFields?: ExtendedFields,\n ) {\n const isUserNamespace = namespace === this.userFieldsNamespace;\n\n if (isUserNamespace) {\n const userCustomFields = this.dataExtension.availableUserCustomFields;\n const fields =\n extendedFields?.namespaces?.[\n namespace as keyof typeof extendedFields.namespaces\n ] ?? {};\n const filteredFields = userCustomFields.filter((field) => {\n const fieldValue = fields[field.id];\n const isEmpty = fieldValue === null || fieldValue === undefined;\n return !isEmpty;\n });\n return filteredFields;\n }\n\n const appSchema = this.dataExtension.appSchemas?.find(\n (schema) => schema.namespace === namespace,\n );\n const appFields = appSchema\n ? this.dataExtension.getAvailableCustomFieldsForApp(appSchema)\n : [];\n\n return appFields;\n }\n\n getAppName(namespace: string) {\n const appSchema = this.dataExtension.appSchemas?.find(\n (schema) => schema.namespace === namespace,\n );\n\n return this.apps.appNames[appSchema?.appDefId || ''];\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_TaskState","require","_DataExtensionState","_services","_v","_AppsState","CustomFieldsViewWidgetState","constructor","container","fqdn","url","theme","_defineProperty2","default","TaskState","performance","now","reportBi","createBILogger","componentType","dataExtension","DataExtensionState","userFieldsNamespace","dataExtensionService","apps","AppsState","loadStart","init","initTask","runOnce","initDataExtension","initApps","_this$dataExtension$i","status","promise","catch","onInitError","bind","_this$apps$initTask$s","appIds","appSchemas","map","schema","appDefId","filter","Boolean","then","loadEnd","loadingTime","Math","round","startTime","err","cairoError","WixPatternsError","errorCode","originalException","internalMonitor","reportError","error","cairoErrorInLoadingAComponent","errorType","name","retry","cairoTryAgainClicked","filteredListSize","availableUserCustomFields","length","actionName","loaction","isLoading","isIdle","isError","getExtendedFieldsToDisplayForNamespace","namespace","extendedFields","_this$dataExtension$a","isUserNamespace","_extendedFields$names","userCustomFields","fields","namespaces","filteredFields","field","fieldValue","id","isEmpty","undefined","appSchema","find","appFields","getAvailableCustomFieldsForApp","getAppName","_this$dataExtension$a2","appNames","exports"],"sources":["../../../src/state/CustomFieldsViewWidgetState.ts"],"sourcesContent":["import { WixPatternsContainer } from './WixPatternsContainer';\nimport { Fqdn } from '../model';\nimport { TaskState } from './TaskState';\nimport { DataExtensionState } from './DataExtensionState';\nimport { ExtendedFields, WixPatternsError } from '../services';\nimport {\n cairoErrorInLoadingAComponent,\n cairoTryAgainClicked,\n loadEnd,\n loadStart,\n} from '@wix/bex-utils/@wix/bi-logger-os-data/v2';\nimport { AppsState } from './AppsState';\n\nexport interface CustomFieldsViewWidgetStateParams {\n readonly container: WixPatternsContainer;\n readonly fqdn: Fqdn;\n readonly url: string;\n readonly theme?: 'inline' | 'card';\n}\nexport class CustomFieldsViewWidgetState {\n readonly container: WixPatternsContainer;\n readonly dataExtension;\n readonly apps;\n readonly initTask = new TaskState();\n readonly reportBi;\n readonly startTime = performance.now();\n readonly url;\n readonly theme;\n readonly userFieldsNamespace;\n\n constructor({\n container,\n fqdn,\n url,\n theme,\n }: CustomFieldsViewWidgetStateParams) {\n this.container = container;\n this.url = url;\n this.theme = theme;\n\n this.reportBi = container.createBILogger({\n componentType: 'CustomFieldsViewWidget',\n ...fqdn,\n });\n\n this.dataExtension = new DataExtensionState({\n container,\n fqdn,\n reportBi: this.reportBi,\n });\n\n this.userFieldsNamespace =\n this.dataExtension.dataExtensionService.userFieldsNamespace;\n\n this.apps = new AppsState({\n container,\n });\n\n this.reportBi(\n loadStart({\n url: this.url,\n theme,\n }),\n );\n }\n\n init() {\n this.initTask.runOnce(async () => {\n await this.initDataExtension();\n this.initApps();\n });\n }\n\n initDataExtension() {\n this.dataExtension.init();\n return this.dataExtension.initTask.status.promise?.catch(\n this.onInitError.bind(this),\n );\n }\n\n initApps() {\n const appIds = (this.dataExtension.appSchemas || [])\n .map((schema) => schema.appDefId)\n .filter(Boolean) as string[];\n\n this.apps.init(appIds);\n this.apps.initTask.status.promise\n ?.then(() =>\n this.reportBi(\n loadEnd({\n url: this.url,\n loadingTime: Math.round(performance.now() - this.startTime),\n theme: this.theme,\n }),\n ),\n )\n .catch(\n // do nothing\n () => {},\n );\n }\n\n onInitError(err: Error) {\n const cairoError = new WixPatternsError({\n errorCode: 'InitCustomFieldsDataExtensionFailed',\n originalException: err,\n });\n\n this.container.internalMonitor.reportError({\n error: cairoError,\n });\n\n this.reportBi(\n cairoErrorInLoadingAComponent({\n errorType: cairoError.name,\n }),\n );\n\n throw cairoError;\n }\n\n retry() {\n this.reportBi(\n cairoTryAgainClicked({\n filteredListSize: this.dataExtension.availableUserCustomFields.length,\n actionName: 'Load custom fields',\n loaction: 'View only widget',\n }),\n );\n\n this.initTask.runOnce();\n }\n\n get isLoading() {\n const { status } = this.initTask;\n return status.isIdle || status.isLoading;\n }\n\n get isError() {\n return this.initTask.status.isError;\n }\n\n getExtendedFieldsToDisplayForNamespace(\n namespace: string,\n extendedFields?: ExtendedFields,\n ) {\n const isUserNamespace = namespace === this.userFieldsNamespace;\n\n if (isUserNamespace) {\n const userCustomFields = this.dataExtension.availableUserCustomFields;\n const fields =\n extendedFields?.namespaces?.[\n namespace as keyof typeof extendedFields.namespaces\n ] ?? {};\n const filteredFields = userCustomFields.filter((field) => {\n const fieldValue = fields[field.id];\n const isEmpty = fieldValue === null || fieldValue === undefined;\n return !isEmpty;\n });\n return filteredFields;\n }\n\n const appSchema = this.dataExtension.appSchemas?.find(\n (schema) => schema.namespace === namespace,\n );\n const appFields = appSchema\n ? this.dataExtension.getAvailableCustomFieldsForApp(appSchema)\n : [];\n\n return appFields;\n }\n\n getAppName(namespace: string) {\n const appSchema = this.dataExtension.appSchemas?.find(\n (schema) => schema.namespace === namespace,\n );\n\n return this.apps.appNames[appSchema?.appDefId || ''];\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -29,7 +29,6 @@ class DataExtensionState {
|
|
|
29
29
|
(0, _defineProperty2.default)(this, "closeSidePanel", void 0);
|
|
30
30
|
(0, _defineProperty2.default)(this, "reportBi", void 0);
|
|
31
31
|
(0, _defineProperty2.default)(this, "fqdn", void 0);
|
|
32
|
-
(0, _defineProperty2.default)(this, "MAX_CUSTOM_FIELDS", 50);
|
|
33
32
|
(0, _defineProperty2.default)(this, "userSchema", undefined);
|
|
34
33
|
(0, _defineProperty2.default)(this, "appSchemas", undefined);
|
|
35
34
|
(0, _defineProperty2.default)(this, "containsPii", void 0);
|
|
@@ -200,7 +199,9 @@ class DataExtensionState {
|
|
|
200
199
|
owner,
|
|
201
200
|
namespace
|
|
202
201
|
}) {
|
|
203
|
-
if (!_services.DataExtensionSchemaService.toCustomType(schema))
|
|
202
|
+
if (!_services.DataExtensionSchemaService.toCustomType(schema)) {
|
|
203
|
+
return;
|
|
204
|
+
}
|
|
204
205
|
return {
|
|
205
206
|
id: key,
|
|
206
207
|
label: schema == null ? void 0 : schema.title,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_services","require","_TaskState","_mobx","_DataExtensionStateBIReporter","_util","_DataExtensionField","MAX_CUSTOM_FIELDS","exports","DataExtensionState","fqdnString","fqdnToString","fqdn","isFqdnValid","resource","undefined","constructor","params","_defineProperty2","default","TaskState","container","disableUserDefinedWriting","filterable","closeSidePanel","reportBi","dataExtensionService","DataExtensionSchemaService","biReporter","DataExtensionStateBIReporter","containsPii","defaultPermissions","makeObservable","allUserCustomFields","computed","allAppsCustomFields","allCustomFields","filterableCustomFields","availableUserCustomFields","availableAppsCustomFields","availableCustomFields","isReachedMaxCustomFields","disableAddCustomField","disableAddCustomFieldContent","userSchema","observable","ref","appSchemas","openCustomFieldModal","action","hasWritePermissions","_hasWritePermissions","user","permissions","includes","translate","max","archiveField","id","origin","_this$container$showT","_this$container","dataExtensionSchema","archiveCustomField","schema","runInAction","showToast","call","message","type","biName","e","_this$container$showT2","_this$container2","uiType","text","onClick","reportArchiveTryAgain","removeToastOnClick","reportArchiveFieldFailed","formValues","extractFieldValuesFromSchema","fieldId","customField","toCustomField","title","read","write","isPiiField","readApps","readUsers","writeApps","writeUsers","toCustomType","name","key","Boolean","customFieldModalState","customFieldModalBiReporter","reset","mode","formSnapshot","setFormValues","disablePermissionCheckboxes","setDefaultPermissions","modalState","modal","open","_toCustomField","editable","owner","namespace","label","maxLength","options","enum","properties","isSupportedFieldType","getAvailableCustomFieldsInSchema","requiredPermissions","filteredFields","Object","keys","filter","field","isAllowedType","isPermitted","includesAllReadPermissions","sorted","sort","a","b","aVal","Date","bVal","isNaN","valueOf","map","_this$userSchema","jsonSchema","fields","_this$appSchemas","reduce","prev","getAvailableCustomFieldsForApp","appSchema","_appSchema$jsonSchema","_this$userSchema2","_this$appSchemas2","_appSchema$jsonSchema2","concat","length","allNamespaces","_this$userSchema3","init","initTask","runOnce","fetchSchemas","dataExtensionSchemas","forEach","s","userFieldsNamespace"],"sources":["../../../src/state/DataExtensionState.ts"],"sourcesContent":["import {\n CustomField,\n CustomFieldOrigin,\n CustomFieldOwner,\n CustomFieldType,\n DataExtensionField,\n DataExtensionPermission,\n DataExtensionSchemaService,\n DataExtensionType,\n ReportBI,\n} from '../services';\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 {\n CustomFieldForm,\n CustomFieldModalState,\n} from './CustomFieldModalState';\nimport type { DataExtensionSchema } from '@wix/bex-utils/@wix/ambassador-data-extensions-v1-data-extension-schema/types';\nimport { ConditionalModalState } from './ConditionalModalState';\nimport { DataExtensionStateBIReporter } from './DataExtensionStateBIReporter';\nimport { fqdnToString } from '../util';\nimport { includesAllReadPermissions } from './DataExtension/DataExtensionField';\n\nexport interface DataExtensionStateParams {\n container: WixPatternsContainer;\n closeSidePanel?: () => unknown;\n reportBi: ReportBI;\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 defaultPermissions?: DefaultPermissionsConfig;\n}\n\nexport const MAX_CUSTOM_FIELDS = 25;\n\nexport class DataExtensionState {\n readonly dataExtensionService: DataExtensionSchemaService;\n readonly biReporter: DataExtensionStateBIReporter;\n readonly initTask = new TaskState();\n readonly container: WixPatternsContainer;\n customFieldModalState?: CustomFieldModalState;\n archiveFieldModal?: ConditionalModalState<{\n id: string;\n origin: string;\n }>;\n _hasWritePermissions?: boolean;\n readonly closeSidePanel;\n readonly reportBi;\n readonly fqdn;\n\n readonly MAX_CUSTOM_FIELDS = 50;\n get fqdnString() {\n return fqdnToString(this.fqdn);\n }\n\n get isFqdnValid() {\n return this.fqdn.resource !== undefined;\n }\n\n userSchema?: DataExtensionSchema = undefined;\n appSchemas?: DataExtensionSchema[] = undefined;\n containsPii?: boolean;\n defaultPermissions?: DefaultPermissionsConfig;\n readonly disableUserDefinedWriting;\n readonly filterable;\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.closeSidePanel = params.closeSidePanel;\n this.reportBi = params.reportBi;\n this.fqdn = params.fqdn;\n this.dataExtensionService = new DataExtensionSchemaService(\n params.container,\n );\n\n this.biReporter = new DataExtensionStateBIReporter({\n reportBi: this.reportBi,\n });\n this.containsPii = params.containsPii;\n this.defaultPermissions = params.defaultPermissions;\n\n makeObservable(this, {\n allUserCustomFields: computed,\n allAppsCustomFields: computed,\n allCustomFields: computed,\n filterableCustomFields: computed,\n availableUserCustomFields: computed,\n availableAppsCustomFields: computed,\n availableCustomFields: computed,\n isReachedMaxCustomFields: computed,\n disableAddCustomField: computed,\n disableAddCustomFieldContent: computed,\n userSchema: observable.ref,\n appSchemas: observable.ref,\n openCustomFieldModal: action,\n containsPii: observable,\n defaultPermissions: observable,\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 async archiveField({ id, origin }: { id?: string; origin: string }) {\n if (id == null) {\n return;\n }\n try {\n const { dataExtensionSchema } =\n await this.dataExtensionService.archiveCustomField({\n schema: this.userSchema,\n fqdn: this.fqdnString,\n id,\n });\n\n runInAction(() => {\n this.userSchema = dataExtensionSchema;\n });\n\n this.container.showToast?.({\n message: this.container.translate(\n 'cairo.customFields.archive.success.toast',\n ),\n type: 'SUCCESS',\n biName: 'cairo-archive-custom-field-success-toast',\n });\n } catch (e) {\n this.container.showToast?.({\n message: this.container.translate(\n 'cairo.customFields.archive.technicalError',\n ),\n action: {\n uiType: 'LINK',\n text: this.container.translate('cairo.toast.retry'),\n onClick: () => {\n this.biReporter.reportArchiveTryAgain();\n this.archiveField({ id, origin });\n },\n removeToastOnClick: true,\n },\n type: 'ERROR',\n biName: 'cairo-archive-custom-field-error-toast',\n });\n this.biReporter.reportArchiveFieldFailed({\n formValues: this.extractFieldValuesFromSchema(id),\n origin,\n });\n }\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'];\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 openCustomFieldModal(params: {\n fieldId?: string;\n origin: CustomFieldOrigin;\n }) {\n const { customFieldModalState } = this;\n\n if (!customFieldModalState) {\n return;\n }\n\n const { customFieldModalBiReporter } = customFieldModalState;\n\n customFieldModalState.reset();\n customFieldModalState.mode = params.fieldId ? 'edit' : 'new';\n customFieldModalState.origin = params.origin;\n customFieldModalBiReporter.formSnapshot = null;\n\n if (this.userSchema) {\n if (params.fieldId) {\n const formValues = this.extractFieldValuesFromSchema(params.fieldId);\n\n if (!formValues) {\n return;\n }\n\n customFieldModalState.setFormValues(formValues, {\n disablePermissionCheckboxes: true,\n });\n customFieldModalBiReporter.formSnapshot = formValues;\n } else {\n customFieldModalState.setDefaultPermissions();\n }\n }\n\n customFieldModalState.modalState.modal.open();\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)) return;\n return {\n id: key,\n label: schema?.title,\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 };\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 const fields = this.getAvailableCustomFieldsInSchema(properties, {\n editable: true,\n owner: 'user',\n namespace: '_user_fields',\n });\n return fields;\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 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 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\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 dataExtensionSchemas?.forEach((s) => {\n if (s.namespace === dataExtensionService.userFieldsNamespace) {\n this.userSchema = s;\n return;\n }\n this.appSchemas = this.appSchemas ? [...this.appSchemas, s] : [s];\n });\n });\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_services","require","_TaskState","_mobx","_DataExtensionStateBIReporter","_util","_DataExtensionField","MAX_CUSTOM_FIELDS","exports","DataExtensionState","fqdnString","fqdnToString","fqdn","isFqdnValid","resource","undefined","constructor","params","_defineProperty2","default","TaskState","container","disableUserDefinedWriting","filterable","closeSidePanel","reportBi","dataExtensionService","DataExtensionSchemaService","biReporter","DataExtensionStateBIReporter","containsPii","defaultPermissions","makeObservable","allUserCustomFields","computed","allAppsCustomFields","allCustomFields","filterableCustomFields","availableUserCustomFields","availableAppsCustomFields","availableCustomFields","isReachedMaxCustomFields","disableAddCustomField","disableAddCustomFieldContent","userSchema","observable","ref","appSchemas","openCustomFieldModal","action","hasWritePermissions","_hasWritePermissions","user","permissions","includes","translate","max","archiveField","id","origin","_this$container$showT","_this$container","dataExtensionSchema","archiveCustomField","schema","runInAction","showToast","call","message","type","biName","e","_this$container$showT2","_this$container2","uiType","text","onClick","reportArchiveTryAgain","removeToastOnClick","reportArchiveFieldFailed","formValues","extractFieldValuesFromSchema","fieldId","customField","toCustomField","title","read","write","isPiiField","readApps","readUsers","writeApps","writeUsers","toCustomType","name","key","Boolean","customFieldModalState","customFieldModalBiReporter","reset","mode","formSnapshot","setFormValues","disablePermissionCheckboxes","setDefaultPermissions","modalState","modal","open","_toCustomField","editable","owner","namespace","label","maxLength","options","enum","properties","isSupportedFieldType","getAvailableCustomFieldsInSchema","requiredPermissions","filteredFields","Object","keys","filter","field","isAllowedType","isPermitted","includesAllReadPermissions","sorted","sort","a","b","aVal","Date","bVal","isNaN","valueOf","map","_this$userSchema","jsonSchema","fields","_this$appSchemas","reduce","prev","getAvailableCustomFieldsForApp","appSchema","_appSchema$jsonSchema","_this$userSchema2","_this$appSchemas2","_appSchema$jsonSchema2","concat","length","allNamespaces","_this$userSchema3","init","initTask","runOnce","fetchSchemas","dataExtensionSchemas","forEach","s","userFieldsNamespace"],"sources":["../../../src/state/DataExtensionState.ts"],"sourcesContent":["import {\n CustomField,\n CustomFieldOrigin,\n CustomFieldOwner,\n CustomFieldType,\n DataExtensionField,\n DataExtensionPermission,\n DataExtensionSchemaService,\n DataExtensionType,\n ReportBI,\n} from '../services';\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 {\n CustomFieldForm,\n CustomFieldModalState,\n} from './CustomFieldModalState';\nimport type { DataExtensionSchema } from '@wix/bex-utils/@wix/ambassador-data-extensions-v1-data-extension-schema/types';\nimport { ConditionalModalState } from './ConditionalModalState';\nimport { DataExtensionStateBIReporter } from './DataExtensionStateBIReporter';\nimport { fqdnToString } from '../util';\nimport { includesAllReadPermissions } from './DataExtension/DataExtensionField';\n\nexport interface DataExtensionStateParams {\n container: WixPatternsContainer;\n closeSidePanel?: () => unknown;\n reportBi: ReportBI;\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 defaultPermissions?: DefaultPermissionsConfig;\n}\n\nexport const MAX_CUSTOM_FIELDS = 25;\n\nexport class DataExtensionState {\n readonly dataExtensionService: DataExtensionSchemaService;\n readonly biReporter: DataExtensionStateBIReporter;\n readonly initTask = new TaskState();\n readonly container: WixPatternsContainer;\n customFieldModalState?: CustomFieldModalState;\n archiveFieldModal?: ConditionalModalState<{\n id: string;\n origin: string;\n }>;\n _hasWritePermissions?: boolean;\n readonly closeSidePanel;\n readonly reportBi;\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 userSchema?: DataExtensionSchema = undefined;\n appSchemas?: DataExtensionSchema[] = undefined;\n containsPii?: boolean;\n defaultPermissions?: DefaultPermissionsConfig;\n readonly disableUserDefinedWriting;\n readonly filterable;\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.closeSidePanel = params.closeSidePanel;\n this.reportBi = params.reportBi;\n this.fqdn = params.fqdn;\n this.dataExtensionService = new DataExtensionSchemaService(\n params.container,\n );\n\n this.biReporter = new DataExtensionStateBIReporter({\n reportBi: this.reportBi,\n });\n this.containsPii = params.containsPii;\n this.defaultPermissions = params.defaultPermissions;\n\n makeObservable(this, {\n allUserCustomFields: computed,\n allAppsCustomFields: computed,\n allCustomFields: computed,\n filterableCustomFields: computed,\n availableUserCustomFields: computed,\n availableAppsCustomFields: computed,\n availableCustomFields: computed,\n isReachedMaxCustomFields: computed,\n disableAddCustomField: computed,\n disableAddCustomFieldContent: computed,\n userSchema: observable.ref,\n appSchemas: observable.ref,\n openCustomFieldModal: action,\n containsPii: observable,\n defaultPermissions: observable,\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 async archiveField({ id, origin }: { id?: string; origin: string }) {\n if (id == null) {\n return;\n }\n try {\n const { dataExtensionSchema } =\n await this.dataExtensionService.archiveCustomField({\n schema: this.userSchema,\n fqdn: this.fqdnString,\n id,\n });\n\n runInAction(() => {\n this.userSchema = dataExtensionSchema;\n });\n\n this.container.showToast?.({\n message: this.container.translate(\n 'cairo.customFields.archive.success.toast',\n ),\n type: 'SUCCESS',\n biName: 'cairo-archive-custom-field-success-toast',\n });\n } catch (e) {\n this.container.showToast?.({\n message: this.container.translate(\n 'cairo.customFields.archive.technicalError',\n ),\n action: {\n uiType: 'LINK',\n text: this.container.translate('cairo.toast.retry'),\n onClick: () => {\n this.biReporter.reportArchiveTryAgain();\n this.archiveField({ id, origin });\n },\n removeToastOnClick: true,\n },\n type: 'ERROR',\n biName: 'cairo-archive-custom-field-error-toast',\n });\n this.biReporter.reportArchiveFieldFailed({\n formValues: this.extractFieldValuesFromSchema(id),\n origin,\n });\n }\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'];\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 openCustomFieldModal(params: {\n fieldId?: string;\n origin: CustomFieldOrigin;\n }) {\n const { customFieldModalState } = this;\n\n if (!customFieldModalState) {\n return;\n }\n\n const { customFieldModalBiReporter } = customFieldModalState;\n\n customFieldModalState.reset();\n customFieldModalState.mode = params.fieldId ? 'edit' : 'new';\n customFieldModalState.origin = params.origin;\n customFieldModalBiReporter.formSnapshot = null;\n\n if (this.userSchema) {\n if (params.fieldId) {\n const formValues = this.extractFieldValuesFromSchema(params.fieldId);\n\n if (!formValues) {\n return;\n }\n\n customFieldModalState.setFormValues(formValues, {\n disablePermissionCheckboxes: true,\n });\n customFieldModalBiReporter.formSnapshot = formValues;\n } else {\n customFieldModalState.setDefaultPermissions();\n }\n }\n\n customFieldModalState.modalState.modal.open();\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,\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 };\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 const fields = this.getAvailableCustomFieldsInSchema(properties, {\n editable: true,\n owner: 'user',\n namespace: '_user_fields',\n });\n return fields;\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 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 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\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 dataExtensionSchemas?.forEach((s) => {\n if (s.namespace === dataExtensionService.userFieldsNamespace) {\n this.userSchema = s;\n return;\n }\n this.appSchemas = this.appSchemas ? [...this.appSchemas, s] : [s];\n });\n });\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -70,7 +70,7 @@
|
|
|
70
70
|
"cairo.customFields.addCustomField.modal.emptyFieldType.error": "Vyberte typ pole.",
|
|
71
71
|
"cairo.filtersPanel.date.today": "Dnes",
|
|
72
72
|
"cairo.tags.manageTags.modal.toast.create.error": "Tag nebylo možné vytvořit.",
|
|
73
|
-
"cairo.tags.tagsField.readOnly.emptyState": "
|
|
73
|
+
"cairo.tags.tagsField.readOnly.emptyState": "Zatím nejsou přiřazené žádné tagy. ",
|
|
74
74
|
"cairo.customFields.fieldType.longText.Name.placeholder": "např. Poznámky",
|
|
75
75
|
"cairo.customFields.fieldType.dropdownList": "Rozbalovací seznam",
|
|
76
76
|
"cairo.customFields.archive.modal.cancel.CTA": "Zpět",
|
|
@@ -473,7 +473,7 @@
|
|
|
473
473
|
"cairo.table.gridView": "Mřížka",
|
|
474
474
|
"cairo.export.selectedItems": "Vybráno",
|
|
475
475
|
"cairo.entityPage.success.toast": "Změny byly uloženy.",
|
|
476
|
-
"cairo.tags.tagsField.readOnly.emptyState.asLabels": "
|
|
476
|
+
"cairo.tags.tagsField.readOnly.emptyState.asLabels": "Zatím nejsou přiřazené žádné štítky.",
|
|
477
477
|
"cairo.table.custom-columns.button.tooltip": "Přizpůsobit sloupce",
|
|
478
478
|
"cairo.table.advanced-sorting.button.tooltip": "Pokročilé třídění",
|
|
479
479
|
"cairo.dragAndDrop.button-role-label.sr": "Přetáhnout {itemName}.",
|
|
@@ -109,7 +109,7 @@
|
|
|
109
109
|
"cairo.tags.manageTags.modal.list.input.placeholder.asLabels": "Indtast etiketnavn",
|
|
110
110
|
"cairo.customFields.addCustomField.modal.cancel.CTA": "Annuller",
|
|
111
111
|
"cairo.customFields.addCustomField.modal.advancedSettings.siteVisitors.note": "Sæt de besøgendes tilladelser til \"Læs\" for at forbinde dette felt dynamisk på din hjemmeside. <learnMore>Læs mere</learnMore>",
|
|
112
|
-
"cairo.settings.search.anchor-doesnt-exist.error": "
|
|
112
|
+
"cairo.settings.search.anchor-doesnt-exist.error": "Der er ikke længere et afsnit med navnet \"{anchorName}\" på denne side.",
|
|
113
113
|
"cairo.tags.creationLimitReached.error.asLabels": "Det er ikke muligt at oprette mere end 100 etiketter.",
|
|
114
114
|
"cairo.deleteModal.title": "Er du sikker på, du ønsker at slette denne?",
|
|
115
115
|
"cairo.customFields.fieldType.checkbox.Selected.notChecked": "Ikke kontrolleret",
|
|
@@ -520,7 +520,7 @@
|
|
|
520
520
|
"cairo.customFields.addCustomField.dropdownList.emptyFieldName.error": "Tilføj en mulighed.",
|
|
521
521
|
"cairo.customFields.addCustomField.modal.advancedSettings.externalApps": "Installerede apps",
|
|
522
522
|
"cairo.export.successMessage": "Din fil downloades nu. Virker det ikke?",
|
|
523
|
-
"cairo.downloadable-url.error.generic": "
|
|
523
|
+
"cairo.downloadable-url.error.generic": "Der opstod et problem med at downloade filen.",
|
|
524
524
|
"cairo.customFields.entityPage.subtitle": "Brug tilpassede felter til at gemme og indsamle flere oplysninger.",
|
|
525
525
|
"cairo.manageView.setAsDefault.success.toast": "\"{viewName}\" blev indstillet som standardvisning.",
|
|
526
526
|
"cairo.dropdownSearch.filters.emptyState": "Ingen elementer blev fundet med dette filter.",
|
|
@@ -70,7 +70,7 @@
|
|
|
70
70
|
"cairo.customFields.addCustomField.modal.emptyFieldType.error": "Wähle einen Feldtyp aus.",
|
|
71
71
|
"cairo.filtersPanel.date.today": "Heute",
|
|
72
72
|
"cairo.tags.manageTags.modal.toast.create.error": "Tag wurde nicht erstellt.",
|
|
73
|
-
"cairo.tags.tagsField.readOnly.emptyState": "
|
|
73
|
+
"cairo.tags.tagsField.readOnly.emptyState": "Du hast noch keine Tags zugewiesen. ",
|
|
74
74
|
"cairo.customFields.fieldType.longText.Name.placeholder": "z. B. Hinweise",
|
|
75
75
|
"cairo.customFields.fieldType.dropdownList": "Dropdown-Liste",
|
|
76
76
|
"cairo.customFields.archive.modal.cancel.CTA": "Abbrechen",
|
|
@@ -473,7 +473,7 @@
|
|
|
473
473
|
"cairo.table.gridView": "Rasteransicht",
|
|
474
474
|
"cairo.export.selectedItems": "Ausgewählt",
|
|
475
475
|
"cairo.entityPage.success.toast": "Deine Änderungen wurden gespeichert.",
|
|
476
|
-
"cairo.tags.tagsField.readOnly.emptyState.asLabels": "
|
|
476
|
+
"cairo.tags.tagsField.readOnly.emptyState.asLabels": "Du hast noch keine Labels zugewiesen.",
|
|
477
477
|
"cairo.table.custom-columns.button.tooltip": "Spalten anpassen",
|
|
478
478
|
"cairo.table.advanced-sorting.button.tooltip": "Erweiterte Sortierung",
|
|
479
479
|
"cairo.dragAndDrop.button-role-label.sr": "{itemName} ziehen",
|
|
@@ -109,7 +109,7 @@
|
|
|
109
109
|
"cairo.tags.manageTags.modal.list.input.placeholder.asLabels": "Ingresa el nombre de la etiqueta",
|
|
110
110
|
"cairo.customFields.addCustomField.modal.cancel.CTA": "Cancelar",
|
|
111
111
|
"cairo.customFields.addCustomField.modal.advancedSettings.siteVisitors.note": "Establece permisos de lectura de los visitantes para conectar este campo dinámicamente en tu sitio. <learnMore>Leer más</learnMore>",
|
|
112
|
-
"cairo.settings.search.anchor-doesnt-exist.error": "
|
|
112
|
+
"cairo.settings.search.anchor-doesnt-exist.error": "La sección llamada “{anchorName}” ya no existe en esta página.",
|
|
113
113
|
"cairo.tags.creationLimitReached.error.asLabels": "No se pueden crear más de 100 etiquetas.",
|
|
114
114
|
"cairo.deleteModal.title": "¿Quieres eliminar esto?",
|
|
115
115
|
"cairo.customFields.fieldType.checkbox.Selected.notChecked": "No seleccionados",
|
|
@@ -520,7 +520,7 @@
|
|
|
520
520
|
"cairo.customFields.addCustomField.dropdownList.emptyFieldName.error": "Agrega una opción.",
|
|
521
521
|
"cairo.customFields.addCustomField.modal.advancedSettings.externalApps": "Apps instaladas",
|
|
522
522
|
"cairo.export.successMessage": "Se está descargando tu archivo. ¿No funciona?",
|
|
523
|
-
"cairo.downloadable-url.error.generic": "
|
|
523
|
+
"cairo.downloadable-url.error.generic": "Hubo un problema al descargar el archivo.",
|
|
524
524
|
"cairo.customFields.entityPage.subtitle": "Usa campos personalizados para almacenar y recopilar más información.",
|
|
525
525
|
"cairo.manageView.setAsDefault.success.toast": "\"{viewName}\" se configuró como tu vista predeterminada.",
|
|
526
526
|
"cairo.dropdownSearch.filters.emptyState": "No se encontraron ítems para este filtro.",
|
|
@@ -109,7 +109,7 @@
|
|
|
109
109
|
"cairo.tags.manageTags.modal.list.input.placeholder.asLabels": "Saisissez le nom du libellé",
|
|
110
110
|
"cairo.customFields.addCustomField.modal.cancel.CTA": "Annuler",
|
|
111
111
|
"cairo.customFields.addCustomField.modal.advancedSettings.siteVisitors.note": "Définissez les autorisations des visiteurs sur « Lire » pour connecter ce champ dynamiquement sur votre site. <learnMore>En savoir plus</learnMore>",
|
|
112
|
-
"cairo.settings.search.anchor-doesnt-exist.error": "
|
|
112
|
+
"cairo.settings.search.anchor-doesnt-exist.error": "Il n'y a plus de section qui s'appelle « {anchorName} » sur cette page.",
|
|
113
113
|
"cairo.tags.creationLimitReached.error.asLabels": "Impossible de créer plus de 100 libellés.",
|
|
114
114
|
"cairo.deleteModal.title": "Êtes-vous sûr de vouloir supprimer cet élément ?",
|
|
115
115
|
"cairo.customFields.fieldType.checkbox.Selected.notChecked": "Pas cochée",
|
|
@@ -109,7 +109,7 @@
|
|
|
109
109
|
"cairo.tags.manageTags.modal.list.input.placeholder.asLabels": "Masukkan nama label",
|
|
110
110
|
"cairo.customFields.addCustomField.modal.cancel.CTA": "Cancel",
|
|
111
111
|
"cairo.customFields.addCustomField.modal.advancedSettings.siteVisitors.note": "Atur izin pengunjung ke \"Baca\" untuk menghubungkan kolom ini secara dinamis di situs Anda. <learnMore>Pelajari selengkapnya</learnMore>",
|
|
112
|
-
"cairo.settings.search.anchor-doesnt-exist.error": "
|
|
112
|
+
"cairo.settings.search.anchor-doesnt-exist.error": "Tidak ada lagi bagian dengan nama \"{anchorName}\" di halaman ini.",
|
|
113
113
|
"cairo.tags.creationLimitReached.error.asLabels": "Tidak dapat membuat lebih dari 100 label.",
|
|
114
114
|
"cairo.deleteModal.title": "Yakin Ingin Menghapusnya?",
|
|
115
115
|
"cairo.customFields.fieldType.checkbox.Selected.notChecked": "Tidak dicentang",
|
|
@@ -520,7 +520,7 @@
|
|
|
520
520
|
"cairo.customFields.addCustomField.dropdownList.emptyFieldName.error": "Tambahkan opsi.",
|
|
521
521
|
"cairo.customFields.addCustomField.modal.advancedSettings.externalApps": "Aplikasi Terinstal",
|
|
522
522
|
"cairo.export.successMessage": "File Anda sedang diunduh. Tidak berfungsi?",
|
|
523
|
-
"cairo.downloadable-url.error.generic": "
|
|
523
|
+
"cairo.downloadable-url.error.generic": "Terjadi masalah saat mengunduh file.",
|
|
524
524
|
"cairo.customFields.entityPage.subtitle": "Gunakan kolom kustom untuk menyimpan dan mengumpulkan lebih banyak informasi.",
|
|
525
525
|
"cairo.manageView.setAsDefault.success.toast": "\"{viewName}\" diatur sebagai tampilan default Anda.",
|
|
526
526
|
"cairo.dropdownSearch.filters.emptyState": "Tidak ada item yang ditemukan untuk filter ini.",
|
|
@@ -70,7 +70,7 @@
|
|
|
70
70
|
"cairo.customFields.addCustomField.modal.emptyFieldType.error": "Seleziona un tipo di campo.",
|
|
71
71
|
"cairo.filtersPanel.date.today": "Oggi",
|
|
72
72
|
"cairo.tags.manageTags.modal.toast.create.error": "Impossibile creare il tag.",
|
|
73
|
-
"cairo.tags.tagsField.readOnly.emptyState": "
|
|
73
|
+
"cairo.tags.tagsField.readOnly.emptyState": "Non ci sono ancora tag assegnati. ",
|
|
74
74
|
"cairo.customFields.fieldType.longText.Name.placeholder": "es.: note",
|
|
75
75
|
"cairo.customFields.fieldType.dropdownList": "Menu a tendina",
|
|
76
76
|
"cairo.customFields.archive.modal.cancel.CTA": "Annulla",
|
|
@@ -109,7 +109,7 @@
|
|
|
109
109
|
"cairo.tags.manageTags.modal.list.input.placeholder.asLabels": "Inserisci il nome dell'etichetta",
|
|
110
110
|
"cairo.customFields.addCustomField.modal.cancel.CTA": "Annulla",
|
|
111
111
|
"cairo.customFields.addCustomField.modal.advancedSettings.siteVisitors.note": "Imposta i permessi dei visitatori su \"Lettura\" per collegare dinamicamente il campo al sito. <learnMore>Scopri di più</learnMore>",
|
|
112
|
-
"cairo.settings.search.anchor-doesnt-exist.error": "
|
|
112
|
+
"cairo.settings.search.anchor-doesnt-exist.error": "In questa pagina non c'è più una sezione chiamata \"{anchorName}\".",
|
|
113
113
|
"cairo.tags.creationLimitReached.error.asLabels": "Impossibile creare più di 100 etichette.",
|
|
114
114
|
"cairo.deleteModal.title": "Vuoi procedere con l'eliminazione?",
|
|
115
115
|
"cairo.customFields.fieldType.checkbox.Selected.notChecked": "Non selezionato",
|
|
@@ -473,7 +473,7 @@
|
|
|
473
473
|
"cairo.table.gridView": "Vista a griglia",
|
|
474
474
|
"cairo.export.selectedItems": "Selezionati",
|
|
475
475
|
"cairo.entityPage.success.toast": "Le modifiche sono state salvate.",
|
|
476
|
-
"cairo.tags.tagsField.readOnly.emptyState.asLabels": "
|
|
476
|
+
"cairo.tags.tagsField.readOnly.emptyState.asLabels": "Non ci sono ancora etichette assegnate.",
|
|
477
477
|
"cairo.table.custom-columns.button.tooltip": "Personalizza colonne",
|
|
478
478
|
"cairo.table.advanced-sorting.button.tooltip": "Ordinamento avanzato",
|
|
479
479
|
"cairo.dragAndDrop.button-role-label.sr": "Trascina {itemName}.",
|
|
@@ -520,7 +520,7 @@
|
|
|
520
520
|
"cairo.customFields.addCustomField.dropdownList.emptyFieldName.error": "Aggiungi un'opzione.",
|
|
521
521
|
"cairo.customFields.addCustomField.modal.advancedSettings.externalApps": "App installate",
|
|
522
522
|
"cairo.export.successMessage": "Download del file in corso. Non funziona?",
|
|
523
|
-
"cairo.downloadable-url.error.generic": "
|
|
523
|
+
"cairo.downloadable-url.error.generic": "Si è verificato un problema durante il download del file.",
|
|
524
524
|
"cairo.customFields.entityPage.subtitle": "Usa i campi personalizzati per memorizzare e raccogliere più informazioni.",
|
|
525
525
|
"cairo.manageView.setAsDefault.success.toast": "\"{viewName}\" è stata impostata come vista predefinita.",
|
|
526
526
|
"cairo.dropdownSearch.filters.emptyState": "Nessun elemento trovato con questo filtro.",
|
|
@@ -70,7 +70,7 @@
|
|
|
70
70
|
"cairo.customFields.addCustomField.modal.emptyFieldType.error": "項目タイプを選択してください。",
|
|
71
71
|
"cairo.filtersPanel.date.today": "今日",
|
|
72
72
|
"cairo.tags.manageTags.modal.toast.create.error": "タグが作成されませんでした。",
|
|
73
|
-
"cairo.tags.tagsField.readOnly.emptyState": "
|
|
73
|
+
"cairo.tags.tagsField.readOnly.emptyState": "まだタグは割り当てられていません。 ",
|
|
74
74
|
"cairo.customFields.fieldType.longText.Name.placeholder": "例:メモ",
|
|
75
75
|
"cairo.customFields.fieldType.dropdownList": "ドロップダウンリスト",
|
|
76
76
|
"cairo.customFields.archive.modal.cancel.CTA": "キャンセル",
|
|
@@ -109,7 +109,7 @@
|
|
|
109
109
|
"cairo.tags.manageTags.modal.list.input.placeholder.asLabels": "ラベル名を入力",
|
|
110
110
|
"cairo.customFields.addCustomField.modal.cancel.CTA": "キャンセル",
|
|
111
111
|
"cairo.customFields.addCustomField.modal.advancedSettings.siteVisitors.note": "この項目をサイト上で動的に接続するには、訪問者の権限を「読み込み」に設定します。<learnMore>詳細はこちら</learnMore>",
|
|
112
|
-
"cairo.settings.search.anchor-doesnt-exist.error": "
|
|
112
|
+
"cairo.settings.search.anchor-doesnt-exist.error": "このページにはもう「{anchorName}」という名前のセクションはありません。",
|
|
113
113
|
"cairo.tags.creationLimitReached.error.asLabels": "100件より多くのラベルは作成できません。",
|
|
114
114
|
"cairo.deleteModal.title": "本当に削除してもよろしいですか?",
|
|
115
115
|
"cairo.customFields.fieldType.checkbox.Selected.notChecked": "チェックマークなし",
|
|
@@ -473,7 +473,7 @@
|
|
|
473
473
|
"cairo.table.gridView": "グリッドビュー",
|
|
474
474
|
"cairo.export.selectedItems": "選択中",
|
|
475
475
|
"cairo.entityPage.success.toast": "変更内容が保存されました。",
|
|
476
|
-
"cairo.tags.tagsField.readOnly.emptyState.asLabels": "
|
|
476
|
+
"cairo.tags.tagsField.readOnly.emptyState.asLabels": "まだラベルは割り当てられていません。",
|
|
477
477
|
"cairo.table.custom-columns.button.tooltip": "列をカスタマイズ",
|
|
478
478
|
"cairo.table.advanced-sorting.button.tooltip": "高度な並べ替え",
|
|
479
479
|
"cairo.dragAndDrop.button-role-label.sr": "{itemName}をドラッグします。",
|
|
@@ -520,7 +520,7 @@
|
|
|
520
520
|
"cairo.customFields.addCustomField.dropdownList.emptyFieldName.error": "オプションを追加してください。",
|
|
521
521
|
"cairo.customFields.addCustomField.modal.advancedSettings.externalApps": "追加済みアプリ",
|
|
522
522
|
"cairo.export.successMessage": "現在ファイルのダウンロード中です。問題がある場合は",
|
|
523
|
-
"cairo.downloadable-url.error.generic": "
|
|
523
|
+
"cairo.downloadable-url.error.generic": "ファイルのダウンロードに問題が発生しました。",
|
|
524
524
|
"cairo.customFields.entityPage.subtitle": "カスタム項目を使用してより多くの情報を収集、保存します。",
|
|
525
525
|
"cairo.manageView.setAsDefault.success.toast": "「{viewName}」がデフォルトビューとして設定されました。",
|
|
526
526
|
"cairo.dropdownSearch.filters.emptyState": "このフィルターのアイテムはみつかりませんでした。",
|
|
@@ -109,7 +109,7 @@
|
|
|
109
109
|
"cairo.tags.manageTags.modal.list.input.placeholder.asLabels": "라벨 이름을 입력하세요.",
|
|
110
110
|
"cairo.customFields.addCustomField.modal.cancel.CTA": "취소",
|
|
111
111
|
"cairo.customFields.addCustomField.modal.advancedSettings.siteVisitors.note": "사이트에 입력란을 동적으로 연결하려면 방문자 권한을 \"조회\"로 설정하세요. <learnMore>자세히 보기</learnMore>",
|
|
112
|
-
"cairo.settings.search.anchor-doesnt-exist.error": "
|
|
112
|
+
"cairo.settings.search.anchor-doesnt-exist.error": "페이지에서 \"{anchorName}\" 섹션이 삭제되었습니다.",
|
|
113
113
|
"cairo.tags.creationLimitReached.error.asLabels": "라벨은 최대 100개까지 추가할 수 있습니다.",
|
|
114
114
|
"cairo.deleteModal.title": "정말 삭제하시겠습니까?",
|
|
115
115
|
"cairo.customFields.fieldType.checkbox.Selected.notChecked": "체크되지 않음",
|
|
@@ -109,7 +109,7 @@
|
|
|
109
109
|
"cairo.tags.manageTags.modal.list.input.placeholder.asLabels": "Naam van label invoeren",
|
|
110
110
|
"cairo.customFields.addCustomField.modal.cancel.CTA": "Annuleren",
|
|
111
111
|
"cairo.customFields.addCustomField.modal.advancedSettings.siteVisitors.note": "Stel bezoekersmachtigingen in op 'Lezen' om dit veld dynamisch te koppelen op je website. <learnMore>Lees meer</learnMore>",
|
|
112
|
-
"cairo.settings.search.anchor-doesnt-exist.error": "
|
|
112
|
+
"cairo.settings.search.anchor-doesnt-exist.error": "Er bestaat geen onderdeel met de naam \"{anchorName}\" meer op deze pagina.",
|
|
113
113
|
"cairo.tags.creationLimitReached.error.asLabels": "Er kunnen niet meer dan 100 labels worden gemaakt.",
|
|
114
114
|
"cairo.deleteModal.title": "Weet je zeker dat je dit wilt verwijderen?",
|
|
115
115
|
"cairo.customFields.fieldType.checkbox.Selected.notChecked": "Niet aangevinkt",
|
|
@@ -520,7 +520,7 @@
|
|
|
520
520
|
"cairo.customFields.addCustomField.dropdownList.emptyFieldName.error": "Voeg een optie toe.",
|
|
521
521
|
"cairo.customFields.addCustomField.modal.advancedSettings.externalApps": "Geïnstalleerde apps",
|
|
522
522
|
"cairo.export.successMessage": "Je bestand wordt nu gedownload. Is het mislukt?",
|
|
523
|
-
"cairo.downloadable-url.error.generic": "
|
|
523
|
+
"cairo.downloadable-url.error.generic": "Er is een probleem opgetreden bij het downloaden van het bestand.",
|
|
524
524
|
"cairo.customFields.entityPage.subtitle": "Gebruik aangepaste velden om meer informatie te verzamelen en op te slaan.",
|
|
525
525
|
"cairo.manageView.setAsDefault.success.toast": "\"{viewName}\" is ingesteld als je standaardweergave.",
|
|
526
526
|
"cairo.dropdownSearch.filters.emptyState": "Geen items gevonden voor dit filter.",
|