@wix/bex-core 2.365.0 → 2.367.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.
@@ -1 +1 @@
1
- {"version":3,"names":["_model","require","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","_state","_services","_util","_useExport","_useImport","_createCollection","_useCollectionDatasetSync","_hooks","CollectionConfigWithConditionals","CollectionFactory","useSyncProps","useSelector","_core","QueryCache","_DeepPartial","DeepPartial","_SchemaSource","defineSchemaSource","sourceFetchData","_FieldTypeDefinition"],"sources":["../../src/index.ts"],"sourcesContent":["export * from './model';\nexport * from './state';\nexport * from './services';\nexport * from './util';\nexport * from './hooks/useExport';\nexport * from './hooks/useImport';\nexport * from './hooks/createCollection';\nexport * from './hooks/useCollectionDatasetSync';\nexport {\n CollectionConfigWithConditionals,\n CollectionFactory,\n useSyncProps,\n useSelector,\n} from './hooks';\nexport { QueryCache } from 'react-query/core';\nexport { DeepPartial } from './types/DeepPartial';\nexport type {\n PatternsFieldType,\n QueryOperator,\n NumberRange,\n StringLengthRange,\n SpecificValue,\n BaseReferenceField,\n ReferenceField,\n MultiReferenceField,\n NonReferenceField,\n Field,\n FieldSpec,\n} from './types/Field';\nexport type {\n Schema,\n SchemaPermissions,\n ItemPermissions,\n RemoveItemDisabledResult,\n CollectionBackendBase,\n CollectionBackend,\n FieldActions,\n FieldSettings,\n BackupConfig,\n BulkInsertResult,\n BulkInsertError,\n CollectionUpdateContext,\n LoadedSchema,\n SchemaLoader,\n FindOptions,\n} from './types/Schema';\nexport type {\n FieldsSource,\n FieldManagement,\n FieldArchive,\n ArchivedFieldItem,\n ResolvedFieldTypeOption,\n FieldPermissions,\n FieldDraft,\n FieldModalText,\n FieldModalSubtitle,\n FieldPiiWarning,\n FieldModalCollectionOption,\n FieldModalCollectionOptionsLoader,\n FieldModalCollectionInput,\n FieldSettingsProps,\n FieldSettingsSection,\n} from './types/FieldsSource';\nexport { defineSchemaSource, sourceFetchData } from './types/SchemaSource';\nexport type {\n SchemaSource,\n SchemaSourceInput,\n FieldModalInput,\n FieldTypeOption,\n} from './types/SchemaSource';\nexport * from './types/FieldTypeDefinition';\nexport type {\n CursorQuery,\n OffsetQuery,\n CursorQueryResult,\n OffsetQueryResult,\n CursorFetchDataFn,\n OffsetFetchDataFn,\n FetchTotalFn,\n} from './hooks/paginationModeConfig';\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_model","require","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","_state","_services","_util","_useExport","_useImport","_createCollection","_useCollectionDatasetSync","_hooks","CollectionConfigWithConditionals","CollectionFactory","useSyncProps","useSelector","_core","QueryCache","_DeepPartial","DeepPartial","_SchemaSource","defineSchemaSource","sourceFetchData","_FieldTypeDefinition"],"sources":["../../src/index.ts"],"sourcesContent":["export * from './model';\nexport * from './state';\nexport * from './services';\nexport * from './util';\nexport * from './hooks/useExport';\nexport * from './hooks/useImport';\nexport * from './hooks/createCollection';\nexport * from './hooks/useCollectionDatasetSync';\nexport {\n CollectionConfigWithConditionals,\n CollectionFactory,\n useSyncProps,\n useSelector,\n} from './hooks';\nexport { QueryCache } from 'react-query/core';\nexport { DeepPartial } from './types/DeepPartial';\nexport type {\n PatternsFieldType,\n QueryOperator,\n NumberRange,\n StringLengthRange,\n SpecificValue,\n BaseReferenceField,\n ReferenceField,\n MultiReferenceField,\n NonReferenceField,\n Field,\n FieldSpec,\n} from './types/Field';\nexport type {\n Schema,\n SchemaPermissions,\n ItemPermissions,\n RemoveItemDisabledResult,\n CollectionBackendBase,\n CollectionBackend,\n FieldActions,\n FieldSettings,\n BackupConfig,\n BulkInsertResult,\n BulkInsertError,\n CollectionUpdateContext,\n LoadedSchema,\n SchemaLoader,\n FindOptions,\n} from './types/Schema';\nexport type {\n FieldsSource,\n FieldManagement,\n FieldArchive,\n ArchivedFieldItem,\n ResolvedFieldTypeOption,\n FieldPermissions,\n FieldDraft,\n FieldModalText,\n FieldModalSubtitle,\n FieldPiiWarning,\n FieldModalCollectionOption,\n FieldModalCollectionOptionsLoader,\n FieldModalCollectionInput,\n FieldSettingsProps,\n FieldSettingsSection,\n OpenFieldModalOptions,\n LockableFieldProperty,\n} from './types/FieldsSource';\nexport { defineSchemaSource, sourceFetchData } from './types/SchemaSource';\nexport type {\n SchemaSource,\n SchemaSourceInput,\n FieldModalInput,\n FieldTypeOption,\n} from './types/SchemaSource';\nexport * from './types/FieldTypeDefinition';\nexport type {\n CursorQuery,\n OffsetQuery,\n CursorQueryResult,\n OffsetQueryResult,\n CursorFetchDataFn,\n OffsetFetchDataFn,\n FetchTotalFn,\n} from './hooks/paginationModeConfig';\n"],"mappings":";;;;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,MAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAL,MAAA,CAAAK,GAAA;EAAAK,OAAA,CAAAL,GAAA,IAAAL,MAAA,CAAAK,GAAA;AAAA;AACA,IAAAM,MAAA,GAAAV,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAQ,MAAA,EAAAP,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAM,MAAA,CAAAN,GAAA;EAAAK,OAAA,CAAAL,GAAA,IAAAM,MAAA,CAAAN,GAAA;AAAA;AACA,IAAAO,SAAA,GAAAX,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAS,SAAA,EAAAR,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAO,SAAA,CAAAP,GAAA;EAAAK,OAAA,CAAAL,GAAA,IAAAO,SAAA,CAAAP,GAAA;AAAA;AACA,IAAAQ,KAAA,GAAAZ,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAU,KAAA,EAAAT,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAQ,KAAA,CAAAR,GAAA;EAAAK,OAAA,CAAAL,GAAA,IAAAQ,KAAA,CAAAR,GAAA;AAAA;AACA,IAAAS,UAAA,GAAAb,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAW,UAAA,EAAAV,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAS,UAAA,CAAAT,GAAA;EAAAK,OAAA,CAAAL,GAAA,IAAAS,UAAA,CAAAT,GAAA;AAAA;AACA,IAAAU,UAAA,GAAAd,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAY,UAAA,EAAAX,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAU,UAAA,CAAAV,GAAA;EAAAK,OAAA,CAAAL,GAAA,IAAAU,UAAA,CAAAV,GAAA;AAAA;AACA,IAAAW,iBAAA,GAAAf,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAa,iBAAA,EAAAZ,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAW,iBAAA,CAAAX,GAAA;EAAAK,OAAA,CAAAL,GAAA,IAAAW,iBAAA,CAAAX,GAAA;AAAA;AACA,IAAAY,yBAAA,GAAAhB,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAc,yBAAA,EAAAb,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAY,yBAAA,CAAAZ,GAAA;EAAAK,OAAA,CAAAL,GAAA,IAAAY,yBAAA,CAAAZ,GAAA;AAAA;AACA,IAAAa,MAAA,GAAAjB,OAAA;AAKiBS,OAAA,CAAAS,gCAAA,GAAAD,MAAA,CAAAC,gCAAA;AAAAT,OAAA,CAAAU,iBAAA,GAAAF,MAAA,CAAAE,iBAAA;AAAAV,OAAA,CAAAW,YAAA,GAAAH,MAAA,CAAAG,YAAA;AAAAX,OAAA,CAAAY,WAAA,GAAAJ,MAAA,CAAAI,WAAA;AACjB,IAAAC,KAAA,GAAAtB,OAAA;AAA8CS,OAAA,CAAAc,UAAA,GAAAD,KAAA,CAAAC,UAAA;AAC9C,IAAAC,YAAA,GAAAxB,OAAA;AAAkDS,OAAA,CAAAgB,WAAA,GAAAD,YAAA,CAAAC,WAAA;AAkDlD,IAAAC,aAAA,GAAA1B,OAAA;AAA2ES,OAAA,CAAAkB,kBAAA,GAAAD,aAAA,CAAAC,kBAAA;AAAAlB,OAAA,CAAAmB,eAAA,GAAAF,aAAA,CAAAE,eAAA;AAO3E,IAAAC,oBAAA,GAAA7B,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAA2B,oBAAA,EAAA1B,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAyB,oBAAA,CAAAzB,GAAA;EAAAK,OAAA,CAAAL,GAAA,IAAAyB,oBAAA,CAAAzB,GAAA;AAAA","ignoreList":[]}
@@ -2,7 +2,7 @@
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
  exports.__esModule = true;
5
- exports.CustomFieldModalState = void 0;
5
+ exports.CustomFieldModalState = exports.CUSTOM_FIELD_NAME_MAX_LENGTH = void 0;
6
6
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
7
7
  var _mobx = require("mobx");
8
8
  var _ConditionalModalState = require("./ConditionalModalState");
@@ -12,6 +12,10 @@ var _formstate = require("formstate");
12
12
  var _ToggleState = require("./ToggleState");
13
13
  var _util = require("../util");
14
14
  var _isHttpError = require("../util/isHttpError");
15
+ /** The modal's name input caps entry at this length; `applyInitialField`
16
+ * applies the same cap so a prefilled name can't exceed what a user could
17
+ * have typed. */
18
+ const CUSTOM_FIELD_NAME_MAX_LENGTH = exports.CUSTOM_FIELD_NAME_MAX_LENGTH = 64;
15
19
  class CustomFieldModalState {
16
20
  constructor(params) {
17
21
  (0, _defineProperty2.default)(this, "fieldManagement", void 0);
@@ -23,9 +27,15 @@ class CustomFieldModalState {
23
27
  (0, _defineProperty2.default)(this, "mode", 'new');
24
28
  (0, _defineProperty2.default)(this, "origin", 'Custom columns panel');
25
29
  (0, _defineProperty2.default)(this, "customOrigin", void 0);
30
+ (0, _defineProperty2.default)(this, "lockedProperties", []);
26
31
  (0, _defineProperty2.default)(this, "reportBi", void 0);
27
32
  (0, _defineProperty2.default)(this, "onSubmit", void 0);
28
33
  (0, _defineProperty2.default)(this, "collectionOptionsState", new _CustomFieldCollectionOptionsState.CustomFieldCollectionOptionsState());
34
+ /** The `required` value requested by `applyInitialField`, reapplied whenever
35
+ * the picked type changes — a type picked after the fact (or an unlocked
36
+ * type the user later changes) would otherwise start the settings section
37
+ * fresh and silently drop it. */
38
+ (0, _defineProperty2.default)(this, "pendingRequired", void 0);
29
39
  (0, _defineProperty2.default)(this, "modalState", new _ConditionalModalState.ConditionalModalState({
30
40
  onConfirm: async () => {
31
41
  if (this.mode === 'new' && this.fieldManagement.maxReached) {
@@ -177,6 +187,8 @@ class CustomFieldModalState {
177
187
  disabledFields: _mobx.observable.ref,
178
188
  errorToastConfig: _mobx.observable.ref,
179
189
  mode: _mobx.observable.ref,
190
+ lockedProperties: _mobx.observable.ref,
191
+ applyInitialField: _mobx.action,
180
192
  reset: _mobx.action,
181
193
  resetSettingsValues: _mobx.action,
182
194
  resetCollectionInput: _mobx.action,
@@ -187,6 +199,34 @@ class CustomFieldModalState {
187
199
  setKeyFieldIfNotDirty: _mobx.action.bound,
188
200
  setDefaultPermissions: _mobx.action
189
201
  });
202
+
203
+ // Reapplies a pending `required` prefill whenever the picked type changes
204
+ // — covers both picking a type after `applyInitialField` requested it,
205
+ // and the settings section resetting when the user later changes an
206
+ // unlocked type. Lives for this state's lifetime; never disposed, like
207
+ // the object itself.
208
+ (0, _mobx.reaction)(() => this.form.$.type.value, () => this.reapplyPendingRequired());
209
+ }
210
+ reapplyPendingRequired() {
211
+ var _this$settingsSection;
212
+ if (this.pendingRequired === undefined) {
213
+ return;
214
+ }
215
+ if ((_this$settingsSection = this.settingsSection) != null && _this$settingsSection.setInitialValues) {
216
+ this.settingsSection.setInitialValues({
217
+ required: this.pendingRequired
218
+ });
219
+ return;
220
+ }
221
+ if (this.settingsSection) {
222
+ // The picked type's section has no way to apply the prefill, so
223
+ // locking 'required' would only disable the checkbox at its unset
224
+ // default with no way to ever satisfy the requested value — drop the
225
+ // lock rather than present it as enforced.
226
+ (0, _mobx.runInAction)(() => {
227
+ this.lockedProperties = this.lockedProperties.filter(property => property !== 'required');
228
+ });
229
+ }
190
230
  }
191
231
  onConfirmError(e) {
192
232
  var _this$errorToastConfi;
@@ -238,6 +278,9 @@ class CustomFieldModalState {
238
278
  this.resetCollectionInput();
239
279
  this.errorToastConfig = undefined;
240
280
  this.disableAutoValidation();
281
+ // `applyInitialField` runs only for a new-field open; clear it here too
282
+ // so a stale value can't leak from a previous open into an edit-mode one.
283
+ this.pendingRequired = undefined;
241
284
  permissions.read.apps = false;
242
285
  permissions.read.users = false;
243
286
  permissions.write.apps = false;
@@ -284,7 +327,7 @@ class CustomFieldModalState {
284
327
  this.form.$.referencedCollectionId.disableAutoValidation();
285
328
  }
286
329
  getFormValues() {
287
- var _this$settingsSection, _this$collectionInput;
330
+ var _this$settingsSection2, _this$collectionInput;
288
331
  const {
289
332
  form: {
290
333
  $: {
@@ -300,7 +343,7 @@ class CustomFieldModalState {
300
343
  }
301
344
  }
302
345
  } = this;
303
- const sectionSettings = (_this$settingsSection = this.settingsSection) == null ? void 0 : _this$settingsSection.getValues(type.value);
346
+ const sectionSettings = (_this$settingsSection2 = this.settingsSection) == null ? void 0 : _this$settingsSection2.getValues(type.value);
304
347
  const collectionSettings = referencedCollectionId.value && (_this$collectionInput = this.collectionInput) != null && _this$collectionInput.getSettings ? this.collectionInput.getSettings(referencedCollectionId.value) : undefined;
305
348
  return {
306
349
  type: type.value,
@@ -316,7 +359,7 @@ class CustomFieldModalState {
316
359
  };
317
360
  }
318
361
  setFormValues(form, params) {
319
- var _this$collectionInput2, _this$settingsSection2;
362
+ var _this$collectionInput2, _this$settingsSection3;
320
363
  const {
321
364
  form: {
322
365
  $
@@ -332,7 +375,7 @@ class CustomFieldModalState {
332
375
  $.containsPii.value = form.containsPii;
333
376
  $.referencedCollectionId.value = form.referencedCollectionId ?? (form.field ? (_this$collectionInput2 = this.collectionInput) == null || _this$collectionInput2.getValue == null ? void 0 : _this$collectionInput2.getValue(form.field) : undefined) ?? ((0, _util.isReferenceField)(form.field) ? form.field.referenceMetadata.referencedCollectionId : undefined);
334
377
  // After `$.type.value` above, so it lands on the picked type's section.
335
- (_this$settingsSection2 = this.settingsSection) == null || _this$settingsSection2.setValues(form.field);
378
+ (_this$settingsSection3 = this.settingsSection) == null || _this$settingsSection3.setValues(form.field);
336
379
  if (params != null && params.disablePermissionCheckboxes) {
337
380
  if (form.readUsers) {
338
381
  this.disabledFields.permissions.read.users = true;
@@ -348,6 +391,54 @@ class CustomFieldModalState {
348
391
  }
349
392
  }
350
393
  }
394
+
395
+ /** Prefills a new field from the caller's requested type/name/required. Sets
396
+ * values directly (like `setFormValues`) rather than through `onChange`, so
397
+ * the name field isn't marked dirty by the prefill — a later user edit
398
+ * still regenerates the key. Also trims `lockedProperties` down to
399
+ * properties actually prefilled here — locking a property with nothing to
400
+ * lock it to would leave it stuck on its empty default. */
401
+ applyInitialField(initialField) {
402
+ if (!initialField) {
403
+ this.lockedProperties = [];
404
+ this.pendingRequired = undefined;
405
+ return;
406
+ }
407
+ const {
408
+ form: {
409
+ $
410
+ }
411
+ } = this;
412
+ const provided = [];
413
+
414
+ // Set before `type` below: reassigning `type.value` reapplies it via the
415
+ // type-change reaction once the action this method runs in completes, so
416
+ // it's already in place whether or not a type is picked here.
417
+ if (initialField.required !== undefined) {
418
+ this.pendingRequired = initialField.required;
419
+ provided.push('required');
420
+ }
421
+
422
+ // Ignores a type the source doesn't offer, rather than locking the picker
423
+ // on a value it can never show as selected.
424
+ if (initialField.type !== undefined && this.fieldManagement.fieldModal.types.some(type => type.id === initialField.type)) {
425
+ $.type.value = initialField.type;
426
+ provided.push('type');
427
+ } else {
428
+ // No type picked here (or it wasn't valid), so the type-change
429
+ // reaction won't fire — apply directly in case a type is already set
430
+ // from an earlier open, or a settings section doesn't need one.
431
+ this.reapplyPendingRequired();
432
+ }
433
+ if (initialField.name !== undefined) {
434
+ // Independent of `type` — a caller may want to suggest a name without
435
+ // constraining which type the user picks.
436
+ $.name.value = initialField.name.slice(0, CUSTOM_FIELD_NAME_MAX_LENGTH);
437
+ provided.push('name');
438
+ this.setKeyFieldIfNotDirty(this.generateUniqueKey($.name.value));
439
+ }
440
+ this.lockedProperties = this.lockedProperties.filter(property => provided.includes(property));
441
+ }
351
442
  setDefaultPermissions() {
352
443
  var _permissions$installe, _permissions$siteVisi;
353
444
  const {
@@ -483,8 +574,8 @@ class CustomFieldModalState {
483
574
  return Boolean(this.fieldManagement.fieldModal.permissions) || Boolean(this.settingsSection);
484
575
  }
485
576
  get settingsHasError() {
486
- var _this$settingsSection3;
487
- return Boolean((_this$settingsSection3 = this.settingsSection) == null ? void 0 : _this$settingsSection3.hasError(this.form.$.type.value));
577
+ var _this$settingsSection4;
578
+ return Boolean((_this$settingsSection4 = this.settingsSection) == null ? void 0 : _this$settingsSection4.hasError(this.form.$.type.value));
488
579
  }
489
580
  }
490
581
  exports.CustomFieldModalState = CustomFieldModalState;
@@ -1 +1 @@
1
- {"version":3,"names":["_mobx","require","_ConditionalModalState","_CustomFieldCollectionOptionsState","_CustomFieldModalBiReporter","_formstate","_ToggleState","_util","_isHttpError","CustomFieldModalState","constructor","params","_defineProperty2","default","ToggleState","undefined","CustomFieldCollectionOptionsState","ConditionalModalState","onConfirm","mode","fieldManagement","maxReached","form","customFieldModalBiReporter","reportModalEndProcess","t","validation","validate","hasError","enableAutoValidation","Error","settingsHasError","settings","setOn","_this$container$showT","_this$container","draft","getFormValues","onSubmit","endType","addField","editField","key","container","showToast","call","message","type","biName","e","onConfirmError","FormState","FieldState","validators","value","name","containsKey","test","readUsers","readApps","writeUsers","writeApps","containsPii","referencedCollectionId","collectionInput","required","_this$selectedFieldTy","errorMessage","label","selectedFieldType","permissions","read","apps","users","write","$","dirty","fieldCount","reportBi","CustomFieldModalBiReporter","customFieldModalState","makeObservable","computed","namePlaceholder","typeSupportsPii","collectionOptionsLoader","collectionInputLabel","collectionInputPlaceholder","collectionInputEmptyStateMessage","collectionOptions","collectionOptionsLoading","collectionOptionsError","showSettings","isSubmitting","disabledFields","observable","ref","errorToastConfig","reset","action","resetSettingsValues","resetCollectionInput","setReferencedCollectionId","bound","loadCollectionOptions","setFormValues","generateUniqueKey","setKeyFieldIfNotDirty","setDefaultPermissions","_this$errorToastConfi","getResolvedError","errorHandler","runInAction","_httpError$response","_httpError$response2","_httpError$response3","resolvedError","httpError","isHttpError","isDetailsResponse","response","data","isErrorDetails","details","validationError","fieldViolations","some","v","ruleName","text","onClick","window","open","requestId","reportSubmitFailure","errorType","setOff","disableAutoValidation","fieldModal","types","forEach","_type$settingsSection","settingsSection","setValues","_this$settingsSection","_this$collectionInput","sectionSettings","getValues","collectionSettings","getSettings","combineFieldSettings","_this$collectionInput2","_this$settingsSection2","field","getValue","isReferenceField","referenceMetadata","disablePermissionCheckboxes","_permissions$installe","_permissions$siteVisi","installedApps","hide","_permissions$installe2","_permissions$installe3","defaultRead","defaultWrite","siteVisitors","_permissions$siteVisi2","_permissions$siteVisi3","collectionOptionsState","clearError","collectionId","onChange","load","existingFieldKeys","includes","slug","slugify","length","index","translate","modalState","modal","confirming","isLoading","find","option","id","explicitInput","autoWired","isReferenceFieldType","patternsType","loadReferenceableCollectionOptions","loadOptions","_this$collectionInput3","_this$selectedFieldTy2","_this$collectionInput4","placeholder","_this$collectionInput5","emptyStateMessage","options","loading","error","_this$selectedFieldTy3","_this$selectedFieldTy4","_this$selectedFieldTy5","supportsPii","_this$selectedFieldTy6","_this$fieldManagement","piiWarning","_this$selectedFieldTy7","_this$fieldManagement2","warning","Boolean","_this$settingsSection3","exports","isRecord","Array","isArray"],"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 { CustomFieldCollectionOptionsState } from './CustomFieldCollectionOptionsState';\nimport { CustomFieldModalBiReporter } from './CustomFieldModalBiReporter';\nimport { FieldState, FormState } from 'formstate';\nimport { ToggleState } from './ToggleState';\nimport { CustomFieldOrigin, CustomFieldType, ReportBI } from '../services';\nimport {\n FieldDraft,\n FieldManagement,\n FieldModalCollectionInput,\n FieldModalCollectionOption,\n FieldModalCollectionOptionsLoader,\n ResolvedFieldTypeOption,\n} from '../types/FieldsSource';\nimport type { FieldSettings } from '../types/Schema';\nimport { WixPatternsContainer } from './WixPatternsContainer';\nimport {\n isHttpError,\n isReferenceField,\n isReferenceFieldType,\n slugify,\n} from '../util';\nimport { isDetailsResponse, isErrorDetails } from '../util/isHttpError';\nimport { ToastConfig } from '../model';\n\nexport interface CustomFieldStateParams {\n fieldManagement: FieldManagement;\n container: WixPatternsContainer;\n reportBi: ReportBI;\n /** Field count for the \"numAdded\" BI param. */\n fieldCount: () => number;\n /**\n * Pure mode: when provided, confirm validates and hands the collected draft to\n * `onSubmit` instead of creating/editing the field through `fieldManagement`\n * (no server side effect, no success toast). Used by the CSV import flow, which\n * defers field creation to a single batch step before upload. `fieldManagement`\n * is still required — the form reads its type options/permissions/keys.\n */\n onSubmit?: (draft: FieldDraft) => void;\n}\n\nexport interface CustomFieldForm {\n type?: CustomFieldType;\n key: string;\n name: string;\n referencedCollectionId?: string;\n readApps: boolean;\n readUsers: boolean;\n writeApps: boolean;\n writeUsers: boolean;\n containsPii: boolean;\n}\n\nexport interface CustomFieldFormFields {\n [key: string]: FieldState<any>;\n type: FieldState<string | undefined>;\n key: FieldState<string>;\n name: FieldState<string>;\n readApps: FieldState<boolean>;\n readUsers: FieldState<boolean>;\n writeApps: FieldState<boolean>;\n writeUsers: FieldState<boolean>;\n containsPii: FieldState<boolean>;\n referencedCollectionId: FieldState<string | undefined>;\n}\n\nexport class CustomFieldModalState {\n fieldManagement: FieldManagement;\n container: WixPatternsContainer;\n fieldCount: () => number;\n customFieldModalBiReporter: CustomFieldModalBiReporter;\n settings = new ToggleState();\n errorToastConfig: ToastConfig | undefined = undefined;\n mode: 'new' | 'edit' = 'new';\n origin: CustomFieldOrigin = 'Custom columns panel';\n customOrigin?: string;\n reportBi: ReportBI;\n private readonly onSubmit?: (draft: FieldDraft) => void;\n private readonly collectionOptionsState =\n new CustomFieldCollectionOptionsState();\n\n modalState = new ConditionalModalState({\n onConfirm: async () => {\n if (this.mode === 'new' && this.fieldManagement.maxReached) {\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 if (this.settingsHasError) {\n this.settings.setOn();\n throw new Error('validation');\n }\n\n try {\n const draft = this.getFormValues();\n\n // Pure mode (CSV import): hand the draft back; no server mutation, no\n // success toast (the field isn't created here — it's batched pre-upload).\n if (this.onSubmit) {\n this.onSubmit(draft);\n reportModalEndProcess({ endType: 'Add Field' });\n return;\n }\n\n if (mode === 'new') {\n await this.fieldManagement.addField(draft);\n } else {\n await this.fieldManagement.editField(draft.key, draft);\n }\n\n this.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: FormState<CustomFieldFormFields> = new FormState({\n type: new FieldState<string | undefined>(undefined).validators((value) => {\n if (!value) {\n return this.t(\n 'cairo.customFields.addCustomField.modal.emptyFieldType.error',\n );\n }\n\n return undefined;\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 { t, mode } = this;\n\n if (!value) {\n return this.t(\n 'cairo.customFields.addCustomField.modal.emptyFieldName.error',\n );\n }\n\n if (mode === 'new' && this.containsKey(value)) {\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 referencedCollectionId: new FieldState<string | undefined>(\n undefined,\n ).validators((value) => {\n const collectionInput = this.collectionInput;\n\n if (\n this.mode === 'new' &&\n collectionInput &&\n (collectionInput.required ?? true) &&\n !value\n ) {\n return (\n collectionInput.errorMessage ??\n collectionInput.label ??\n this.selectedFieldType?.label\n );\n }\n\n return undefined;\n }),\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.fieldManagement = params.fieldManagement;\n this.container = params.container;\n this.fieldCount = params.fieldCount;\n this.reportBi = params.reportBi;\n this.onSubmit = params.onSubmit;\n this.customFieldModalBiReporter = new CustomFieldModalBiReporter({\n customFieldModalState: this,\n });\n\n makeObservable(this, {\n selectedFieldType: computed,\n namePlaceholder: computed,\n typeSupportsPii: computed,\n collectionInput: computed,\n collectionOptionsLoader: computed,\n collectionInputLabel: computed,\n collectionInputPlaceholder: computed,\n collectionInputEmptyStateMessage: computed,\n collectionOptions: computed,\n collectionOptionsLoading: computed,\n collectionOptionsError: computed,\n showSettings: computed,\n settingsHasError: computed,\n isSubmitting: computed,\n disabledFields: observable.ref,\n errorToastConfig: observable.ref,\n mode: observable.ref,\n reset: action,\n resetSettingsValues: action,\n resetCollectionInput: action,\n setReferencedCollectionId: action.bound,\n loadCollectionOptions: action.bound,\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.container.errorHandler;\n\n runInAction(() => {\n const resolvedError = getResolvedError?.(e);\n const httpError = isHttpError(e) ? e : undefined;\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 details: resolvedError?.requestId\n ? {\n requestId: resolvedError.requestId,\n }\n : undefined,\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.resetSettingsValues();\n this.resetCollectionInput();\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 /** Clears the settings sections back to their defaults. Goes over every type\n * option rather than the picked one: `reset()` runs after the form is\n * cleared, when no type is picked. */\n resetSettingsValues() {\n this.fieldManagement.fieldModal.types.forEach((type) =>\n type.settingsSection?.setValues(),\n );\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 this.form.$.referencedCollectionId.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 this.form.$.referencedCollectionId.disableAutoValidation();\n }\n\n getFormValues(): FieldDraft {\n const {\n form: {\n $: {\n type,\n key,\n name,\n readApps,\n readUsers,\n writeApps,\n writeUsers,\n containsPii,\n referencedCollectionId,\n },\n },\n } = this;\n const sectionSettings = this.settingsSection?.getValues(type.value);\n const collectionSettings =\n referencedCollectionId.value && this.collectionInput?.getSettings\n ? this.collectionInput.getSettings(referencedCollectionId.value)\n : undefined;\n\n return {\n type: type.value,\n key: key.value,\n name: name.value,\n referencedCollectionId: referencedCollectionId.value,\n readApps: readApps.value,\n readUsers: readUsers.value,\n writeApps: writeApps.value,\n writeUsers: writeUsers.value,\n containsPii: containsPii.value,\n settings: combineFieldSettings(sectionSettings, collectionSettings),\n };\n }\n\n setFormValues(\n form: FieldDraft,\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 $.referencedCollectionId.value =\n form.referencedCollectionId ??\n (form.field ? this.collectionInput?.getValue?.(form.field) : undefined) ??\n (isReferenceField(form.field)\n ? form.field.referenceMetadata.referencedCollectionId\n : undefined);\n // After `$.type.value` above, so it lands on the picked type's section.\n this.settingsSection?.setValues(form.field);\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 } = this;\n const permissions = this.fieldManagement.fieldModal.permissions;\n if (!permissions?.installedApps?.hide) {\n $.readApps.value = !!permissions?.installedApps?.defaultRead;\n $.writeApps.value = !!permissions?.installedApps?.defaultWrite;\n }\n\n if (!permissions?.siteVisitors?.hide) {\n $.readUsers.value = !!permissions?.siteVisitors?.defaultRead;\n $.writeUsers.value = !!permissions?.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 resetCollectionInput() {\n this.form.$.referencedCollectionId.value = undefined;\n this.form.$.referencedCollectionId.disableAutoValidation();\n this.collectionOptionsState.clearError();\n }\n\n setReferencedCollectionId(collectionId: string | undefined) {\n this.form.$.referencedCollectionId.onChange(collectionId);\n }\n\n async loadCollectionOptions() {\n await this.collectionOptionsState.load(this.collectionOptionsLoader);\n }\n\n private containsKey(key: string) {\n return this.fieldManagement.existingFieldKeys.includes(key);\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.container.translate;\n }\n\n get isSubmitting() {\n return this.modalState.modal.confirming.isLoading;\n }\n\n get selectedFieldType(): ResolvedFieldTypeOption | undefined {\n return this.fieldManagement.fieldModal.types.find(\n (option) => option.id === this.form.$.type.value,\n );\n }\n\n get collectionInput(): FieldModalCollectionInput | undefined {\n if (!this.selectedFieldType) {\n return undefined;\n }\n\n const explicitInput = this.selectedFieldType.collectionInput;\n const autoWired =\n isReferenceFieldType(this.selectedFieldType.patternsType) &&\n this.fieldManagement.fieldModal.loadReferenceableCollectionOptions;\n\n if (!explicitInput && !autoWired) {\n return undefined;\n }\n\n return explicitInput ?? {};\n }\n\n get collectionOptionsLoader(): FieldModalCollectionOptionsLoader | undefined {\n const collectionInput = this.collectionInput;\n\n if (!collectionInput || !this.selectedFieldType) {\n return undefined;\n }\n\n return (\n collectionInput.loadOptions ??\n (isReferenceFieldType(this.selectedFieldType.patternsType)\n ? this.fieldManagement.fieldModal.loadReferenceableCollectionOptions\n : undefined)\n );\n }\n\n get collectionInputLabel() {\n return this.collectionInput?.label ?? this.selectedFieldType?.label ?? '';\n }\n\n get collectionInputPlaceholder() {\n return this.collectionInput?.placeholder ?? this.collectionInputLabel;\n }\n\n get collectionInputEmptyStateMessage() {\n return (\n this.collectionInput?.emptyStateMessage ??\n this.t('cairo.emptyState.subtitle.nothingMatchesCriteria')\n );\n }\n\n get collectionOptions(): FieldModalCollectionOption[] {\n return this.collectionOptionsState.options;\n }\n\n get collectionOptionsLoading() {\n return this.collectionOptionsState.loading;\n }\n\n get collectionOptionsError() {\n return this.collectionOptionsState.error;\n }\n\n get namePlaceholder() {\n return (\n this.selectedFieldType?.namePlaceholder ??\n this.selectedFieldType?.label ??\n this.t('cairo.customFields.addCustomField.modal.fieldName.placeholder')\n );\n }\n\n /** Whether the PII toggle shows: the picked type decides, and a type with no\n * opinion follows the source. Checked on the raw value, not on\n * `selectedFieldType` — editing a field whose type the source can't create\n * finds no option, and the toggle still belongs there. */\n get typeSupportsPii() {\n if (this.form.$.type.value == null) {\n return false;\n }\n return (\n this.selectedFieldType?.supportsPii ??\n this.fieldManagement.fieldModal.supportsPii ??\n false\n );\n }\n\n /** The picked type's settings section. Editing a field of a type the source\n * can't create finds no entry for it, so it falls back to the first section\n * the source declares — that field still has settings to show. */\n get settingsSection() {\n if (!this.form.$.type.value) {\n return undefined;\n }\n return (\n this.selectedFieldType?.settingsSection ??\n this.fieldManagement.fieldModal.types.find((t) => t.settingsSection)\n ?.settingsSection\n );\n }\n\n /** Not a computed: the warning may read data the source loaded outside MobX,\n * so it's called afresh on every render. Same fallback as `settingsSection`. */\n get piiWarning() {\n const warning =\n this.selectedFieldType?.piiWarning ??\n this.fieldManagement.fieldModal.types.find((t) => t.piiWarning)\n ?.piiWarning;\n return warning?.();\n }\n\n get showSettings() {\n return (\n Boolean(this.fieldManagement.fieldModal.permissions) ||\n Boolean(this.settingsSection)\n );\n }\n\n get settingsHasError() {\n return Boolean(this.settingsSection?.hasError(this.form.$.type.value));\n }\n}\n\nconst isRecord = (value: unknown): value is Record<string, unknown> =>\n typeof value === 'object' && value !== null && !Array.isArray(value);\n\nconst combineFieldSettings = (\n sectionSettings: FieldSettings | undefined,\n collectionSettings: FieldSettings | undefined,\n): FieldSettings | undefined => {\n if (sectionSettings === undefined) {\n return collectionSettings;\n }\n\n if (collectionSettings === undefined) {\n return sectionSettings;\n }\n\n if (isRecord(sectionSettings) && isRecord(collectionSettings)) {\n return { ...sectionSettings, ...collectionSettings };\n }\n\n return collectionSettings;\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_mobx","require","_ConditionalModalState","_CustomFieldCollectionOptionsState","_CustomFieldModalBiReporter","_formstate","_ToggleState","_util","_isHttpError","CUSTOM_FIELD_NAME_MAX_LENGTH","exports","CustomFieldModalState","constructor","params","_defineProperty2","default","ToggleState","undefined","CustomFieldCollectionOptionsState","ConditionalModalState","onConfirm","mode","fieldManagement","maxReached","form","customFieldModalBiReporter","reportModalEndProcess","t","validation","validate","hasError","enableAutoValidation","Error","settingsHasError","settings","setOn","_this$container$showT","_this$container","draft","getFormValues","onSubmit","endType","addField","editField","key","container","showToast","call","message","type","biName","e","onConfirmError","FormState","FieldState","validators","value","name","containsKey","test","readUsers","readApps","writeUsers","writeApps","containsPii","referencedCollectionId","collectionInput","required","_this$selectedFieldTy","errorMessage","label","selectedFieldType","permissions","read","apps","users","write","$","dirty","fieldCount","reportBi","CustomFieldModalBiReporter","customFieldModalState","makeObservable","computed","namePlaceholder","typeSupportsPii","collectionOptionsLoader","collectionInputLabel","collectionInputPlaceholder","collectionInputEmptyStateMessage","collectionOptions","collectionOptionsLoading","collectionOptionsError","showSettings","isSubmitting","disabledFields","observable","ref","errorToastConfig","lockedProperties","applyInitialField","action","reset","resetSettingsValues","resetCollectionInput","setReferencedCollectionId","bound","loadCollectionOptions","setFormValues","generateUniqueKey","setKeyFieldIfNotDirty","setDefaultPermissions","reaction","reapplyPendingRequired","_this$settingsSection","pendingRequired","settingsSection","setInitialValues","runInAction","filter","property","_this$errorToastConfi","getResolvedError","errorHandler","_httpError$response","_httpError$response2","_httpError$response3","resolvedError","httpError","isHttpError","isDetailsResponse","response","data","isErrorDetails","details","validationError","fieldViolations","some","v","ruleName","text","onClick","window","open","requestId","reportSubmitFailure","errorType","setOff","disableAutoValidation","fieldModal","types","forEach","_type$settingsSection","setValues","_this$settingsSection2","_this$collectionInput","sectionSettings","getValues","collectionSettings","getSettings","combineFieldSettings","_this$collectionInput2","_this$settingsSection3","field","getValue","isReferenceField","referenceMetadata","disablePermissionCheckboxes","initialField","provided","push","id","slice","includes","_permissions$installe","_permissions$siteVisi","installedApps","hide","_permissions$installe2","_permissions$installe3","defaultRead","defaultWrite","siteVisitors","_permissions$siteVisi2","_permissions$siteVisi3","collectionOptionsState","clearError","collectionId","onChange","load","existingFieldKeys","slug","slugify","length","index","translate","modalState","modal","confirming","isLoading","find","option","explicitInput","autoWired","isReferenceFieldType","patternsType","loadReferenceableCollectionOptions","loadOptions","_this$collectionInput3","_this$selectedFieldTy2","_this$collectionInput4","placeholder","_this$collectionInput5","emptyStateMessage","options","loading","error","_this$selectedFieldTy3","_this$selectedFieldTy4","_this$selectedFieldTy5","supportsPii","_this$selectedFieldTy6","_this$fieldManagement","piiWarning","_this$selectedFieldTy7","_this$fieldManagement2","warning","Boolean","_this$settingsSection4","isRecord","Array","isArray"],"sources":["../../../src/state/CustomFieldModalState.ts"],"sourcesContent":["import {\n action,\n computed,\n makeObservable,\n observable,\n reaction,\n runInAction,\n} from 'mobx';\nimport { ConditionalModalState } from './ConditionalModalState';\nimport { CustomFieldCollectionOptionsState } from './CustomFieldCollectionOptionsState';\nimport { CustomFieldModalBiReporter } from './CustomFieldModalBiReporter';\nimport { FieldState, FormState } from 'formstate';\nimport { ToggleState } from './ToggleState';\nimport { CustomFieldOrigin, CustomFieldType, ReportBI } from '../services';\nimport {\n FieldDraft,\n FieldManagement,\n FieldModalCollectionInput,\n FieldModalCollectionOption,\n FieldModalCollectionOptionsLoader,\n LockableFieldProperty,\n ResolvedFieldTypeOption,\n} from '../types/FieldsSource';\nimport type { FieldSettings } from '../types/Schema';\nimport { WixPatternsContainer } from './WixPatternsContainer';\nimport {\n isHttpError,\n isReferenceField,\n isReferenceFieldType,\n slugify,\n} from '../util';\nimport { isDetailsResponse, isErrorDetails } from '../util/isHttpError';\nimport { ToastConfig } from '../model';\n\n/** The modal's name input caps entry at this length; `applyInitialField`\n * applies the same cap so a prefilled name can't exceed what a user could\n * have typed. */\nexport const CUSTOM_FIELD_NAME_MAX_LENGTH = 64;\n\nexport interface CustomFieldStateParams {\n fieldManagement: FieldManagement;\n container: WixPatternsContainer;\n reportBi: ReportBI;\n /** Field count for the \"numAdded\" BI param. */\n fieldCount: () => number;\n /**\n * Pure mode: when provided, confirm validates and hands the collected draft to\n * `onSubmit` instead of creating/editing the field through `fieldManagement`\n * (no server side effect, no success toast). Used by the CSV import flow, which\n * defers field creation to a single batch step before upload. `fieldManagement`\n * is still required — the form reads its type options/permissions/keys.\n */\n onSubmit?: (draft: FieldDraft) => void;\n}\n\nexport interface CustomFieldForm {\n type?: CustomFieldType;\n key: string;\n name: string;\n referencedCollectionId?: string;\n readApps: boolean;\n readUsers: boolean;\n writeApps: boolean;\n writeUsers: boolean;\n containsPii: boolean;\n}\n\nexport interface CustomFieldFormFields {\n [key: string]: FieldState<any>;\n type: FieldState<string | undefined>;\n key: FieldState<string>;\n name: FieldState<string>;\n readApps: FieldState<boolean>;\n readUsers: FieldState<boolean>;\n writeApps: FieldState<boolean>;\n writeUsers: FieldState<boolean>;\n containsPii: FieldState<boolean>;\n referencedCollectionId: FieldState<string | undefined>;\n}\n\nexport class CustomFieldModalState {\n fieldManagement: FieldManagement;\n container: WixPatternsContainer;\n fieldCount: () => number;\n customFieldModalBiReporter: CustomFieldModalBiReporter;\n settings = new ToggleState();\n errorToastConfig: ToastConfig | undefined = undefined;\n mode: 'new' | 'edit' = 'new';\n origin: CustomFieldOrigin = 'Custom columns panel';\n customOrigin?: string;\n lockedProperties: readonly LockableFieldProperty[] = [];\n reportBi: ReportBI;\n private readonly onSubmit?: (draft: FieldDraft) => void;\n private readonly collectionOptionsState =\n new CustomFieldCollectionOptionsState();\n /** The `required` value requested by `applyInitialField`, reapplied whenever\n * the picked type changes — a type picked after the fact (or an unlocked\n * type the user later changes) would otherwise start the settings section\n * fresh and silently drop it. */\n private pendingRequired?: boolean;\n\n modalState = new ConditionalModalState({\n onConfirm: async () => {\n if (this.mode === 'new' && this.fieldManagement.maxReached) {\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 if (this.settingsHasError) {\n this.settings.setOn();\n throw new Error('validation');\n }\n\n try {\n const draft = this.getFormValues();\n\n // Pure mode (CSV import): hand the draft back; no server mutation, no\n // success toast (the field isn't created here — it's batched pre-upload).\n if (this.onSubmit) {\n this.onSubmit(draft);\n reportModalEndProcess({ endType: 'Add Field' });\n return;\n }\n\n if (mode === 'new') {\n await this.fieldManagement.addField(draft);\n } else {\n await this.fieldManagement.editField(draft.key, draft);\n }\n\n this.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: FormState<CustomFieldFormFields> = new FormState({\n type: new FieldState<string | undefined>(undefined).validators((value) => {\n if (!value) {\n return this.t(\n 'cairo.customFields.addCustomField.modal.emptyFieldType.error',\n );\n }\n\n return undefined;\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 { t, mode } = this;\n\n if (!value) {\n return this.t(\n 'cairo.customFields.addCustomField.modal.emptyFieldName.error',\n );\n }\n\n if (mode === 'new' && this.containsKey(value)) {\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 referencedCollectionId: new FieldState<string | undefined>(\n undefined,\n ).validators((value) => {\n const collectionInput = this.collectionInput;\n\n if (\n this.mode === 'new' &&\n collectionInput &&\n (collectionInput.required ?? true) &&\n !value\n ) {\n return (\n collectionInput.errorMessage ??\n collectionInput.label ??\n this.selectedFieldType?.label\n );\n }\n\n return undefined;\n }),\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.fieldManagement = params.fieldManagement;\n this.container = params.container;\n this.fieldCount = params.fieldCount;\n this.reportBi = params.reportBi;\n this.onSubmit = params.onSubmit;\n this.customFieldModalBiReporter = new CustomFieldModalBiReporter({\n customFieldModalState: this,\n });\n\n makeObservable(this, {\n selectedFieldType: computed,\n namePlaceholder: computed,\n typeSupportsPii: computed,\n collectionInput: computed,\n collectionOptionsLoader: computed,\n collectionInputLabel: computed,\n collectionInputPlaceholder: computed,\n collectionInputEmptyStateMessage: computed,\n collectionOptions: computed,\n collectionOptionsLoading: computed,\n collectionOptionsError: computed,\n showSettings: computed,\n settingsHasError: computed,\n isSubmitting: computed,\n disabledFields: observable.ref,\n errorToastConfig: observable.ref,\n mode: observable.ref,\n lockedProperties: observable.ref,\n applyInitialField: action,\n reset: action,\n resetSettingsValues: action,\n resetCollectionInput: action,\n setReferencedCollectionId: action.bound,\n loadCollectionOptions: action.bound,\n setFormValues: action,\n generateUniqueKey: action.bound,\n setKeyFieldIfNotDirty: action.bound,\n setDefaultPermissions: action,\n });\n\n // Reapplies a pending `required` prefill whenever the picked type changes\n // — covers both picking a type after `applyInitialField` requested it,\n // and the settings section resetting when the user later changes an\n // unlocked type. Lives for this state's lifetime; never disposed, like\n // the object itself.\n reaction(\n () => this.form.$.type.value,\n () => this.reapplyPendingRequired(),\n );\n }\n\n private reapplyPendingRequired() {\n if (this.pendingRequired === undefined) {\n return;\n }\n if (this.settingsSection?.setInitialValues) {\n this.settingsSection.setInitialValues({\n required: this.pendingRequired,\n });\n return;\n }\n if (this.settingsSection) {\n // The picked type's section has no way to apply the prefill, so\n // locking 'required' would only disable the checkbox at its unset\n // default with no way to ever satisfy the requested value — drop the\n // lock rather than present it as enforced.\n runInAction(() => {\n this.lockedProperties = this.lockedProperties.filter(\n (property) => property !== 'required',\n );\n });\n }\n }\n\n onConfirmError(e: unknown) {\n const { getResolvedError } = this.container.errorHandler;\n\n runInAction(() => {\n const resolvedError = getResolvedError?.(e);\n const httpError = isHttpError(e) ? e : undefined;\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 details: resolvedError?.requestId\n ? {\n requestId: resolvedError.requestId,\n }\n : undefined,\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.resetSettingsValues();\n this.resetCollectionInput();\n this.errorToastConfig = undefined;\n this.disableAutoValidation();\n // `applyInitialField` runs only for a new-field open; clear it here too\n // so a stale value can't leak from a previous open into an edit-mode one.\n this.pendingRequired = undefined;\n\n permissions.read.apps = false;\n permissions.read.users = false;\n permissions.write.apps = false;\n permissions.write.users = false;\n }\n\n /** Clears the settings sections back to their defaults. Goes over every type\n * option rather than the picked one: `reset()` runs after the form is\n * cleared, when no type is picked. */\n resetSettingsValues() {\n this.fieldManagement.fieldModal.types.forEach((type) =>\n type.settingsSection?.setValues(),\n );\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 this.form.$.referencedCollectionId.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 this.form.$.referencedCollectionId.disableAutoValidation();\n }\n\n getFormValues(): FieldDraft {\n const {\n form: {\n $: {\n type,\n key,\n name,\n readApps,\n readUsers,\n writeApps,\n writeUsers,\n containsPii,\n referencedCollectionId,\n },\n },\n } = this;\n const sectionSettings = this.settingsSection?.getValues(type.value);\n const collectionSettings =\n referencedCollectionId.value && this.collectionInput?.getSettings\n ? this.collectionInput.getSettings(referencedCollectionId.value)\n : undefined;\n\n return {\n type: type.value,\n key: key.value,\n name: name.value,\n referencedCollectionId: referencedCollectionId.value,\n readApps: readApps.value,\n readUsers: readUsers.value,\n writeApps: writeApps.value,\n writeUsers: writeUsers.value,\n containsPii: containsPii.value,\n settings: combineFieldSettings(sectionSettings, collectionSettings),\n };\n }\n\n setFormValues(\n form: FieldDraft,\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 $.referencedCollectionId.value =\n form.referencedCollectionId ??\n (form.field ? this.collectionInput?.getValue?.(form.field) : undefined) ??\n (isReferenceField(form.field)\n ? form.field.referenceMetadata.referencedCollectionId\n : undefined);\n // After `$.type.value` above, so it lands on the picked type's section.\n this.settingsSection?.setValues(form.field);\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 /** Prefills a new field from the caller's requested type/name/required. Sets\n * values directly (like `setFormValues`) rather than through `onChange`, so\n * the name field isn't marked dirty by the prefill — a later user edit\n * still regenerates the key. Also trims `lockedProperties` down to\n * properties actually prefilled here — locking a property with nothing to\n * lock it to would leave it stuck on its empty default. */\n applyInitialField(initialField?: {\n type?: string;\n name?: string;\n required?: boolean;\n }) {\n if (!initialField) {\n this.lockedProperties = [];\n this.pendingRequired = undefined;\n return;\n }\n const {\n form: { $ },\n } = this;\n const provided: LockableFieldProperty[] = [];\n\n // Set before `type` below: reassigning `type.value` reapplies it via the\n // type-change reaction once the action this method runs in completes, so\n // it's already in place whether or not a type is picked here.\n if (initialField.required !== undefined) {\n this.pendingRequired = initialField.required;\n provided.push('required');\n }\n\n // Ignores a type the source doesn't offer, rather than locking the picker\n // on a value it can never show as selected.\n if (\n initialField.type !== undefined &&\n this.fieldManagement.fieldModal.types.some(\n (type) => type.id === initialField.type,\n )\n ) {\n $.type.value = initialField.type;\n provided.push('type');\n } else {\n // No type picked here (or it wasn't valid), so the type-change\n // reaction won't fire — apply directly in case a type is already set\n // from an earlier open, or a settings section doesn't need one.\n this.reapplyPendingRequired();\n }\n if (initialField.name !== undefined) {\n // Independent of `type` — a caller may want to suggest a name without\n // constraining which type the user picks.\n $.name.value = initialField.name.slice(0, CUSTOM_FIELD_NAME_MAX_LENGTH);\n provided.push('name');\n this.setKeyFieldIfNotDirty(this.generateUniqueKey($.name.value));\n }\n\n this.lockedProperties = this.lockedProperties.filter((property) =>\n provided.includes(property),\n );\n }\n\n setDefaultPermissions() {\n const {\n form: { $ },\n } = this;\n const permissions = this.fieldManagement.fieldModal.permissions;\n if (!permissions?.installedApps?.hide) {\n $.readApps.value = !!permissions?.installedApps?.defaultRead;\n $.writeApps.value = !!permissions?.installedApps?.defaultWrite;\n }\n\n if (!permissions?.siteVisitors?.hide) {\n $.readUsers.value = !!permissions?.siteVisitors?.defaultRead;\n $.writeUsers.value = !!permissions?.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 resetCollectionInput() {\n this.form.$.referencedCollectionId.value = undefined;\n this.form.$.referencedCollectionId.disableAutoValidation();\n this.collectionOptionsState.clearError();\n }\n\n setReferencedCollectionId(collectionId: string | undefined) {\n this.form.$.referencedCollectionId.onChange(collectionId);\n }\n\n async loadCollectionOptions() {\n await this.collectionOptionsState.load(this.collectionOptionsLoader);\n }\n\n private containsKey(key: string) {\n return this.fieldManagement.existingFieldKeys.includes(key);\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.container.translate;\n }\n\n get isSubmitting() {\n return this.modalState.modal.confirming.isLoading;\n }\n\n get selectedFieldType(): ResolvedFieldTypeOption | undefined {\n return this.fieldManagement.fieldModal.types.find(\n (option) => option.id === this.form.$.type.value,\n );\n }\n\n get collectionInput(): FieldModalCollectionInput | undefined {\n if (!this.selectedFieldType) {\n return undefined;\n }\n\n const explicitInput = this.selectedFieldType.collectionInput;\n const autoWired =\n isReferenceFieldType(this.selectedFieldType.patternsType) &&\n this.fieldManagement.fieldModal.loadReferenceableCollectionOptions;\n\n if (!explicitInput && !autoWired) {\n return undefined;\n }\n\n return explicitInput ?? {};\n }\n\n get collectionOptionsLoader(): FieldModalCollectionOptionsLoader | undefined {\n const collectionInput = this.collectionInput;\n\n if (!collectionInput || !this.selectedFieldType) {\n return undefined;\n }\n\n return (\n collectionInput.loadOptions ??\n (isReferenceFieldType(this.selectedFieldType.patternsType)\n ? this.fieldManagement.fieldModal.loadReferenceableCollectionOptions\n : undefined)\n );\n }\n\n get collectionInputLabel() {\n return this.collectionInput?.label ?? this.selectedFieldType?.label ?? '';\n }\n\n get collectionInputPlaceholder() {\n return this.collectionInput?.placeholder ?? this.collectionInputLabel;\n }\n\n get collectionInputEmptyStateMessage() {\n return (\n this.collectionInput?.emptyStateMessage ??\n this.t('cairo.emptyState.subtitle.nothingMatchesCriteria')\n );\n }\n\n get collectionOptions(): FieldModalCollectionOption[] {\n return this.collectionOptionsState.options;\n }\n\n get collectionOptionsLoading() {\n return this.collectionOptionsState.loading;\n }\n\n get collectionOptionsError() {\n return this.collectionOptionsState.error;\n }\n\n get namePlaceholder() {\n return (\n this.selectedFieldType?.namePlaceholder ??\n this.selectedFieldType?.label ??\n this.t('cairo.customFields.addCustomField.modal.fieldName.placeholder')\n );\n }\n\n /** Whether the PII toggle shows: the picked type decides, and a type with no\n * opinion follows the source. Checked on the raw value, not on\n * `selectedFieldType` — editing a field whose type the source can't create\n * finds no option, and the toggle still belongs there. */\n get typeSupportsPii() {\n if (this.form.$.type.value == null) {\n return false;\n }\n return (\n this.selectedFieldType?.supportsPii ??\n this.fieldManagement.fieldModal.supportsPii ??\n false\n );\n }\n\n /** The picked type's settings section. Editing a field of a type the source\n * can't create finds no entry for it, so it falls back to the first section\n * the source declares — that field still has settings to show. */\n get settingsSection() {\n if (!this.form.$.type.value) {\n return undefined;\n }\n return (\n this.selectedFieldType?.settingsSection ??\n this.fieldManagement.fieldModal.types.find((t) => t.settingsSection)\n ?.settingsSection\n );\n }\n\n /** Not a computed: the warning may read data the source loaded outside MobX,\n * so it's called afresh on every render. Same fallback as `settingsSection`. */\n get piiWarning() {\n const warning =\n this.selectedFieldType?.piiWarning ??\n this.fieldManagement.fieldModal.types.find((t) => t.piiWarning)\n ?.piiWarning;\n return warning?.();\n }\n\n get showSettings() {\n return (\n Boolean(this.fieldManagement.fieldModal.permissions) ||\n Boolean(this.settingsSection)\n );\n }\n\n get settingsHasError() {\n return Boolean(this.settingsSection?.hasError(this.form.$.type.value));\n }\n}\n\nconst isRecord = (value: unknown): value is Record<string, unknown> =>\n typeof value === 'object' && value !== null && !Array.isArray(value);\n\nconst combineFieldSettings = (\n sectionSettings: FieldSettings | undefined,\n collectionSettings: FieldSettings | undefined,\n): FieldSettings | undefined => {\n if (sectionSettings === undefined) {\n return collectionSettings;\n }\n\n if (collectionSettings === undefined) {\n return sectionSettings;\n }\n\n if (isRecord(sectionSettings) && isRecord(collectionSettings)) {\n return { ...sectionSettings, ...collectionSettings };\n }\n\n return collectionSettings;\n};\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["../../../src/types/FieldsSource.ts"],"sourcesContent":["import type { ComponentType } from 'react';\nimport type { Field, PatternsFieldType } from './Field';\nimport type { FieldActions, FieldSettings, Schema } from './Schema';\nimport type { FieldTypeDefinition } from './FieldTypeDefinition';\n\n/** A field the source has archived. Sources without archiving omit `archive`. */\nexport interface ArchivedFieldItem {\n id: string;\n label: string;\n isPii?: boolean;\n}\n\n/** A `FieldTypeOption` the modal can render: the id and label a source left to\n * the defaults are filled in. */\nexport interface ResolvedFieldTypeOption {\n /** Stored on the draft; the source maps it back to its native type. */\n id: string;\n label: string;\n namePlaceholder?: string;\n subtitle?: string;\n /** Group heading in the type list; types sharing a heading form one group. */\n group?: string;\n /** Whether a field of this type can be marked PII. Absent ⇒ follows the\n * source-wide `supportsPii`. */\n supportsPii?: boolean;\n /** Warning to show while the PII toggle is on. Called on every render.\n * Absent ⇒ none. */\n piiWarning?: () => FieldPiiWarning | undefined;\n /** This type's own part of the collapsible section below the main fields.\n * Absent ⇒ the section holds only what the modal itself puts there. */\n settingsSection?: FieldSettingsSection;\n /** Collection picker shown below the type picker. For built-in reference\n * types, absent copy can use the source's referenceable collection loader. */\n collectionInput?: FieldModalCollectionInput;\n /** Drives the type icon in the modal. */\n patternsType: PatternsFieldType;\n /** Type icons for the picker. Absent ⇒ the icon derives from `patternsType`. */\n icons?: { Small: ComponentType; Medium: ComponentType };\n}\n\n/** Read/write permission defaults a source supports, per audience. */\nexport interface FieldPermissions {\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\n/** The values the add/edit field modal collects, source-neutral. */\nexport interface FieldDraft {\n type?: string;\n key: string;\n name: string;\n readApps: boolean;\n readUsers: boolean;\n writeApps: boolean;\n writeUsers: boolean;\n containsPii: boolean;\n /** Collection selected by the modal's collection picker, when a type has one. */\n referencedCollectionId?: string;\n /** The field this draft was built from, for the source's settings section to\n * read its own values off. Absent for a new field. */\n field?: Field;\n /** What the source's settings section collected, on its way to that source's\n * `addField`/`editField`. */\n settings?: FieldSettings;\n}\n\n/** The add-modal subtitle: a line of text, an optional second note line, and an\n * optional \"learn more\" link. */\nexport interface FieldModalSubtitle {\n text: string;\n note?: string;\n learnMore?: { label: string; href: string };\n}\n\n/** The text a source supplies for the add/edit field modal. */\nexport interface FieldModalText {\n addTitle: string;\n editTitle: string;\n /** Subtitle for the add modal; omit for none. */\n addSubtitle?: FieldModalSubtitle;\n /** Label of the collapsible section below the main fields. */\n settingsLabel?: string;\n}\n\n/** A warning shown under the PII toggle, with an optional action button. */\nexport interface FieldPiiWarning {\n text: string;\n action?: { label: string; onClick: () => void };\n}\n\nexport interface FieldModalCollectionOption {\n id: string;\n label: string;\n}\n\nexport type FieldModalCollectionOptionsLoader = () => Promise<\n FieldModalCollectionOption[]\n>;\n\n/** Extra collection picker a field type can add to the main modal body. */\nexport interface FieldModalCollectionInput {\n label?: string;\n placeholder?: string;\n emptyStateMessage?: string;\n errorMessage?: string;\n required?: boolean;\n loadOptions?: FieldModalCollectionOptionsLoader;\n /** Restores the picker value from an existing field. */\n getValue?: (field: Field) => string | undefined;\n /** Adds picker-derived values to the source-owned settings payload. */\n getSettings?: (collectionId: string) => FieldSettings;\n}\n\nexport interface FieldSettingsProps {\n /** The picked field type, or absent before one is picked. */\n fieldType?: string;\n}\n\n/**\n * The collapsible section below the main add/edit field inputs, supplied by the\n * source. The modal renders it, blocks confirm while it has an error, and hands\n * its values to the source's own `addField`/`editField` — it never looks inside.\n */\nexport interface FieldSettingsSection {\n Component: ComponentType<FieldSettingsProps>;\n /** True keeps the modal open on confirm. The section shows the error itself. */\n hasError(fieldType?: string): boolean;\n /** Passed to `FieldActions.addField`/`editField` as-is. */\n getValues(fieldType?: string): FieldSettings;\n /**\n * Fills the inputs when the modal opens: the field being edited, or nothing\n * for a new field. Pushed in rather than read from a prop, so the values are\n * there whether or not the section has been rendered yet.\n */\n setValues(field?: Field): void;\n}\n\n/** Add/edit/delete capability a source exposes. Present ⇒ field management UI shows. */\nexport interface FieldManagement {\n /** False ⇒ the add-field CTA is hidden entirely. */\n canAddFields: boolean;\n /** True ⇒ the add-field CTA renders but is disabled. */\n addFieldDisabled: boolean;\n /** Hint text shown beneath the add-field CTA while it is disabled. */\n addFieldDisabledHint?: string;\n canEditField(field: Field): boolean;\n /** `origin` is the UI surface the delete was triggered from; used for BI. */\n deleteField(fieldId: string, origin: string): Promise<void>;\n\n /** Everything the add/edit field modal shows: its titles, and the field types\n * it offers with what each one brings to it. */\n fieldModal: {\n text: FieldModalText;\n /** Default option loader for built-in reference and multi-reference types. */\n loadReferenceableCollectionOptions?: FieldModalCollectionOptionsLoader;\n types: ResolvedFieldTypeOption[];\n /** Defaults for the read/write permissions per audience. Absent ⇒ the modal\n * shows no permissions section. */\n permissions?: FieldPermissions;\n /** Whether a field can be marked PII. A field type option overrides it with\n * its own `supportsPii`. */\n supportsPii?: boolean;\n };\n /** Existing field keys, used by the add modal to reject duplicates. */\n existingFieldKeys: string[];\n /** True when no more fields can be added because a limit is reached. */\n maxReached?: boolean;\n addField(draft: FieldDraft): Promise<void>;\n editField(fieldId: string, draft: FieldDraft): Promise<void>;\n /** Current values for an existing field, to prefill the edit modal. */\n getFieldDraft(fieldId: string): FieldDraft | undefined;\n}\n\n/** Archiving capability a source exposes. Present ⇒ archive/restore UI shows. */\nexport interface FieldArchive {\n items: ArchivedFieldItem[];\n shouldDisplay: boolean;\n /** Whether the archived-items panel is currently open. */\n isOpen: boolean;\n openPanel(): void;\n closePanel(): void;\n /** `origin` is the UI surface the action was triggered from; used for BI. */\n archiveField(fieldId: string, origin: string): Promise<void>;\n restoreField(fieldId: string, origin: string): Promise<void>;\n /** Display name for a field, for the confirm-dialog copy. */\n fieldName(fieldId: string): string;\n}\n\n/**\n * The source-neutral fields data a collection reads, implemented by each source\n * adapter. Rendering — field modals, filter elements — is not here; it lives in\n * the collection-page layer.\n */\nexport interface FieldsSource {\n /** Loads the fields (schema/data). The collection runs this once, tracks its\n * status, and shows a retry toast on failure. */\n load(): Promise<void>;\n\n fields: Field[];\n filterableFields: Field[];\n /** The fields the manage-fields panel lists — the source's editable fields. */\n manageableFields: Field[];\n /** Column id for a field. Sources that group fields prefix the group; flat sources use the field key. */\n columnIdForField(field: Field): string;\n /** WQL field path for a filter. Sources that group fields prefix the group; flat sources use the field key. */\n queryFieldId(field: Field): string;\n /** The value to display for a field on a row. */\n getCellValue(row: unknown, field: Field): unknown;\n /** Writes a new value for a field on a row, returning the updated row. Present when cells can be edited in place. */\n setCellValue?(row: unknown, field: Field, value: unknown): unknown;\n\n /** Replaces the source's fields with a freshly-returned map, updating the\n * columns with no refetch. Present when the source holds its fields in a\n * mergeable state (e.g. a loaded schema); used after an import creates fields. */\n mergeFields?(fields: Schema['fields']): void;\n\n /** Field-type definitions the source supports: how a field of that type\n * renders, filters and validates. Built-in types are keyed by their\n * `PatternsFieldType`; consumer-defined types are keyed by the string a field\n * references via `customType`. The add/edit field modal never reads this —\n * see `FieldManagement.fieldModal`. */\n fieldTypes?: FieldTypeDefinition[];\n\n /** Present when fields can be added/edited/deleted. */\n fieldManagement?: FieldManagement;\n\n /** The collection's field-mutation actions (delete/makePrimary/duplicate/…),\n * driving the shared FieldActions menu. Absent ⇒ no per-field action menu. */\n fieldActions?: FieldActions;\n\n /** Present when the source supports archiving fields. */\n archive?: FieldArchive;\n\n /** Present when fields are grouped. Absent ⇒ flat list. */\n groups?: {\n all: string[];\n fieldsForGroup(group: string): Field[];\n };\n}\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"names":[],"sources":["../../../src/types/FieldsSource.ts"],"sourcesContent":["import type { ComponentType } from 'react';\nimport type { Field, PatternsFieldType } from './Field';\nimport type { FieldActions, FieldSettings, Schema } from './Schema';\nimport type { FieldTypeDefinition } from './FieldTypeDefinition';\nimport type { CustomFieldOrigin } from '../services';\n\n/** A field the source has archived. Sources without archiving omit `archive`. */\nexport interface ArchivedFieldItem {\n id: string;\n label: string;\n isPii?: boolean;\n}\n\n/** A `FieldTypeOption` the modal can render: the id and label a source left to\n * the defaults are filled in. */\nexport interface ResolvedFieldTypeOption {\n /** Stored on the draft; the source maps it back to its native type. */\n id: string;\n label: string;\n namePlaceholder?: string;\n subtitle?: string;\n /** Group heading in the type list; types sharing a heading form one group. */\n group?: string;\n /** Whether a field of this type can be marked PII. Absent ⇒ follows the\n * source-wide `supportsPii`. */\n supportsPii?: boolean;\n /** Warning to show while the PII toggle is on. Called on every render.\n * Absent ⇒ none. */\n piiWarning?: () => FieldPiiWarning | undefined;\n /** This type's own part of the collapsible section below the main fields.\n * Absent ⇒ the section holds only what the modal itself puts there. */\n settingsSection?: FieldSettingsSection;\n /** Collection picker shown below the type picker. For built-in reference\n * types, absent copy can use the source's referenceable collection loader. */\n collectionInput?: FieldModalCollectionInput;\n /** Drives the type icon in the modal. */\n patternsType: PatternsFieldType;\n /** Type icons for the picker. Absent ⇒ the icon derives from `patternsType`. */\n icons?: { Small: ComponentType; Medium: ComponentType };\n}\n\n/** Read/write permission defaults a source supports, per audience. */\nexport interface FieldPermissions {\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\n/** The values the add/edit field modal collects, source-neutral. */\nexport interface FieldDraft {\n type?: string;\n key: string;\n name: string;\n readApps: boolean;\n readUsers: boolean;\n writeApps: boolean;\n writeUsers: boolean;\n containsPii: boolean;\n /** Collection selected by the modal's collection picker, when a type has one. */\n referencedCollectionId?: string;\n /** The field this draft was built from, for the source's settings section to\n * read its own values off. Absent for a new field. */\n field?: Field;\n /** What the source's settings section collected, on its way to that source's\n * `addField`/`editField`. */\n settings?: FieldSettings;\n}\n\n/** The add-modal subtitle: a line of text, an optional second note line, and an\n * optional \"learn more\" link. */\nexport interface FieldModalSubtitle {\n text: string;\n note?: string;\n learnMore?: { label: string; href: string };\n}\n\n/** The text a source supplies for the add/edit field modal. */\nexport interface FieldModalText {\n addTitle: string;\n editTitle: string;\n /** Subtitle for the add modal; omit for none. */\n addSubtitle?: FieldModalSubtitle;\n /** Label of the collapsible section below the main fields. */\n settingsLabel?: string;\n}\n\n/** A warning shown under the PII toggle, with an optional action button. */\nexport interface FieldPiiWarning {\n text: string;\n action?: { label: string; onClick: () => void };\n}\n\nexport interface FieldModalCollectionOption {\n id: string;\n label: string;\n}\n\nexport type FieldModalCollectionOptionsLoader = () => Promise<\n FieldModalCollectionOption[]\n>;\n\n/** Extra collection picker a field type can add to the main modal body. */\nexport interface FieldModalCollectionInput {\n label?: string;\n placeholder?: string;\n emptyStateMessage?: string;\n errorMessage?: string;\n required?: boolean;\n loadOptions?: FieldModalCollectionOptionsLoader;\n /** Restores the picker value from an existing field. */\n getValue?: (field: Field) => string | undefined;\n /** Adds picker-derived values to the source-owned settings payload. */\n getSettings?: (collectionId: string) => FieldSettings;\n}\n\nexport interface FieldSettingsProps {\n /** The picked field type, or absent before one is picked. */\n fieldType?: string;\n /** Validation rules the section should render as fixed, not user-editable.\n * A section ignores any entry it doesn't recognize. */\n lockedRules?: readonly string[];\n}\n\n/**\n * The collapsible section below the main add/edit field inputs, supplied by the\n * source. The modal renders it, blocks confirm while it has an error, and hands\n * its values to the source's own `addField`/`editField` — it never looks inside.\n */\nexport interface FieldSettingsSection {\n Component: ComponentType<FieldSettingsProps>;\n /** True keeps the modal open on confirm. The section shows the error itself. */\n hasError(fieldType?: string): boolean;\n /** Passed to `FieldActions.addField`/`editField` as-is. */\n getValues(fieldType?: string): FieldSettings;\n /**\n * Fills the inputs when the modal opens: the field being edited, or nothing\n * for a new field. Pushed in rather than read from a prop, so the values are\n * there whether or not the section has been rendered yet.\n */\n setValues(field?: Field): void;\n /**\n * Prefills a new field's rules from the caller's requested initial values —\n * there is no backing `Field` yet, so this is separate from `setValues`.\n * Absent ⇒ the section doesn't support prefilling any rule this way, and\n * the modal drops that rule from `lockedProperties` rather than locking a\n * control at a value it could never actually apply.\n */\n setInitialValues?(initial: { required?: boolean }): void;\n}\n\n/** Add/edit/delete capability a source exposes. Present ⇒ field management UI shows. */\nexport interface FieldManagement {\n /** False ⇒ the add-field CTA is hidden entirely. */\n canAddFields: boolean;\n /** True ⇒ the add-field CTA renders but is disabled. */\n addFieldDisabled: boolean;\n /** Hint text shown beneath the add-field CTA while it is disabled. */\n addFieldDisabledHint?: string;\n canEditField(field: Field): boolean;\n /** `origin` is the UI surface the delete was triggered from; used for BI. */\n deleteField(fieldId: string, origin: string): Promise<void>;\n\n /** Everything the add/edit field modal shows: its titles, and the field types\n * it offers with what each one brings to it. */\n fieldModal: {\n text: FieldModalText;\n /** Default option loader for built-in reference and multi-reference types. */\n loadReferenceableCollectionOptions?: FieldModalCollectionOptionsLoader;\n types: ResolvedFieldTypeOption[];\n /** Defaults for the read/write permissions per audience. Absent ⇒ the modal\n * shows no permissions section. */\n permissions?: FieldPermissions;\n /** Whether a field can be marked PII. A field type option overrides it with\n * its own `supportsPii`. */\n supportsPii?: boolean;\n };\n /** Existing field keys, used by the add modal to reject duplicates. */\n existingFieldKeys: string[];\n /** True when no more fields can be added because a limit is reached. */\n maxReached?: boolean;\n addField(draft: FieldDraft): Promise<void>;\n editField(fieldId: string, draft: FieldDraft): Promise<void>;\n /** Current values for an existing field, to prefill the edit modal. */\n getFieldDraft(fieldId: string): FieldDraft | undefined;\n}\n\n/** A new-field property `OpenFieldModalOptions` can lock from editing. */\nexport type LockableFieldProperty = 'type' | 'name' | 'required';\n\n/** Options for opening the add/edit field modal. */\nexport interface OpenFieldModalOptions {\n fieldId?: string;\n origin?: CustomFieldOrigin;\n customOrigin?: string;\n /** Prefills a new field. Ignored when `fieldId` is set — edit mode prefills\n * from the existing field instead. */\n initialField?: {\n /** Prefilled; locked when included in `lockedProperties`. */\n type?: string;\n /** Prefilled; locked when included in `lockedProperties`. */\n name?: string;\n /** Prefilled; locked when included in `lockedProperties`. Support depends\n * on the picked type's settings section — see `FieldSettingsSection.setInitialValues`. */\n required?: boolean;\n };\n /** Properties the user can't change, on top of being prefilled. A property\n * with no matching `initialField` value is never locked — there is nothing\n * to lock it to. */\n lockedProperties?: readonly LockableFieldProperty[];\n}\n\n/** Archiving capability a source exposes. Present ⇒ archive/restore UI shows. */\nexport interface FieldArchive {\n items: ArchivedFieldItem[];\n shouldDisplay: boolean;\n /** Whether the archived-items panel is currently open. */\n isOpen: boolean;\n openPanel(): void;\n closePanel(): void;\n /** `origin` is the UI surface the action was triggered from; used for BI. */\n archiveField(fieldId: string, origin: string): Promise<void>;\n restoreField(fieldId: string, origin: string): Promise<void>;\n /** Display name for a field, for the confirm-dialog copy. */\n fieldName(fieldId: string): string;\n}\n\n/**\n * The source-neutral fields data a collection reads, implemented by each source\n * adapter. Rendering — field modals, filter elements — is not here; it lives in\n * the collection-page layer.\n */\nexport interface FieldsSource {\n /** Loads the fields (schema/data). The collection runs this once, tracks its\n * status, and shows a retry toast on failure. */\n load(): Promise<void>;\n\n fields: Field[];\n filterableFields: Field[];\n /** The fields the manage-fields panel lists — the source's editable fields. */\n manageableFields: Field[];\n /** Column id for a field. Sources that group fields prefix the group; flat sources use the field key. */\n columnIdForField(field: Field): string;\n /** WQL field path for a filter. Sources that group fields prefix the group; flat sources use the field key. */\n queryFieldId(field: Field): string;\n /** The value to display for a field on a row. */\n getCellValue(row: unknown, field: Field): unknown;\n /** Writes a new value for a field on a row, returning the updated row. Present when cells can be edited in place. */\n setCellValue?(row: unknown, field: Field, value: unknown): unknown;\n\n /** Replaces the source's fields with a freshly-returned map, updating the\n * columns with no refetch. Present when the source holds its fields in a\n * mergeable state (e.g. a loaded schema); used after an import creates fields. */\n mergeFields?(fields: Schema['fields']): void;\n\n /** Field-type definitions the source supports: how a field of that type\n * renders, filters and validates. Built-in types are keyed by their\n * `PatternsFieldType`; consumer-defined types are keyed by the string a field\n * references via `customType`. The add/edit field modal never reads this —\n * see `FieldManagement.fieldModal`. */\n fieldTypes?: FieldTypeDefinition[];\n\n /** Present when fields can be added/edited/deleted. */\n fieldManagement?: FieldManagement;\n\n /** The collection's field-mutation actions (delete/makePrimary/duplicate/…),\n * driving the shared FieldActions menu. Absent ⇒ no per-field action menu. */\n fieldActions?: FieldActions;\n\n /** Present when the source supports archiving fields. */\n archive?: FieldArchive;\n\n /** Present when fields are grouped. Absent ⇒ flat list. */\n groups?: {\n all: string[];\n fieldsForGroup(group: string): Field[];\n };\n}\n"],"mappings":"","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,QAAQ,CAAC;AACvB,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,0BAA0B,CAAC;AACzC,cAAc,kCAAkC,CAAC;AACjD,OAAO,EAGL,YAAY,EACZ,WAAW,GACZ,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAiD9C,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAO3E,cAAc,6BAA6B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,QAAQ,CAAC;AACvB,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,0BAA0B,CAAC;AACzC,cAAc,kCAAkC,CAAC;AACjD,OAAO,EAGL,YAAY,EACZ,WAAW,GACZ,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAmD9C,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAO3E,cAAc,6BAA6B,CAAC"}
@@ -1,4 +1,4 @@
1
- import { action, computed, makeObservable, observable, runInAction, } from 'mobx';
1
+ import { action, computed, makeObservable, observable, reaction, runInAction, } from 'mobx';
2
2
  import { ConditionalModalState } from './ConditionalModalState';
3
3
  import { CustomFieldCollectionOptionsState } from './CustomFieldCollectionOptionsState';
4
4
  import { CustomFieldModalBiReporter } from './CustomFieldModalBiReporter';
@@ -6,12 +6,17 @@ import { FieldState, FormState } from 'formstate';
6
6
  import { ToggleState } from './ToggleState';
7
7
  import { isHttpError, isReferenceField, isReferenceFieldType, slugify, } from '../util';
8
8
  import { isDetailsResponse, isErrorDetails } from '../util/isHttpError';
9
+ /** The modal's name input caps entry at this length; `applyInitialField`
10
+ * applies the same cap so a prefilled name can't exceed what a user could
11
+ * have typed. */
12
+ export const CUSTOM_FIELD_NAME_MAX_LENGTH = 64;
9
13
  export class CustomFieldModalState {
10
14
  constructor(params) {
11
15
  this.settings = new ToggleState();
12
16
  this.errorToastConfig = undefined;
13
17
  this.mode = 'new';
14
18
  this.origin = 'Custom columns panel';
19
+ this.lockedProperties = [];
15
20
  this.collectionOptionsState = new CustomFieldCollectionOptionsState();
16
21
  this.modalState = new ConditionalModalState({
17
22
  onConfirm: async () => {
@@ -143,6 +148,8 @@ export class CustomFieldModalState {
143
148
  disabledFields: observable.ref,
144
149
  errorToastConfig: observable.ref,
145
150
  mode: observable.ref,
151
+ lockedProperties: observable.ref,
152
+ applyInitialField: action,
146
153
  reset: action,
147
154
  resetSettingsValues: action,
148
155
  resetCollectionInput: action,
@@ -153,6 +160,32 @@ export class CustomFieldModalState {
153
160
  setKeyFieldIfNotDirty: action.bound,
154
161
  setDefaultPermissions: action,
155
162
  });
163
+ // Reapplies a pending `required` prefill whenever the picked type changes
164
+ // — covers both picking a type after `applyInitialField` requested it,
165
+ // and the settings section resetting when the user later changes an
166
+ // unlocked type. Lives for this state's lifetime; never disposed, like
167
+ // the object itself.
168
+ reaction(() => this.form.$.type.value, () => this.reapplyPendingRequired());
169
+ }
170
+ reapplyPendingRequired() {
171
+ if (this.pendingRequired === undefined) {
172
+ return;
173
+ }
174
+ if (this.settingsSection?.setInitialValues) {
175
+ this.settingsSection.setInitialValues({
176
+ required: this.pendingRequired,
177
+ });
178
+ return;
179
+ }
180
+ if (this.settingsSection) {
181
+ // The picked type's section has no way to apply the prefill, so
182
+ // locking 'required' would only disable the checkbox at its unset
183
+ // default with no way to ever satisfy the requested value — drop the
184
+ // lock rather than present it as enforced.
185
+ runInAction(() => {
186
+ this.lockedProperties = this.lockedProperties.filter((property) => property !== 'required');
187
+ });
188
+ }
156
189
  }
157
190
  onConfirmError(e) {
158
191
  const { getResolvedError } = this.container.errorHandler;
@@ -198,6 +231,9 @@ export class CustomFieldModalState {
198
231
  this.resetCollectionInput();
199
232
  this.errorToastConfig = undefined;
200
233
  this.disableAutoValidation();
234
+ // `applyInitialField` runs only for a new-field open; clear it here too
235
+ // so a stale value can't leak from a previous open into an edit-mode one.
236
+ this.pendingRequired = undefined;
201
237
  permissions.read.apps = false;
202
238
  permissions.read.users = false;
203
239
  permissions.write.apps = false;
@@ -275,6 +311,49 @@ export class CustomFieldModalState {
275
311
  }
276
312
  }
277
313
  }
314
+ /** Prefills a new field from the caller's requested type/name/required. Sets
315
+ * values directly (like `setFormValues`) rather than through `onChange`, so
316
+ * the name field isn't marked dirty by the prefill — a later user edit
317
+ * still regenerates the key. Also trims `lockedProperties` down to
318
+ * properties actually prefilled here — locking a property with nothing to
319
+ * lock it to would leave it stuck on its empty default. */
320
+ applyInitialField(initialField) {
321
+ if (!initialField) {
322
+ this.lockedProperties = [];
323
+ this.pendingRequired = undefined;
324
+ return;
325
+ }
326
+ const { form: { $ }, } = this;
327
+ const provided = [];
328
+ // Set before `type` below: reassigning `type.value` reapplies it via the
329
+ // type-change reaction once the action this method runs in completes, so
330
+ // it's already in place whether or not a type is picked here.
331
+ if (initialField.required !== undefined) {
332
+ this.pendingRequired = initialField.required;
333
+ provided.push('required');
334
+ }
335
+ // Ignores a type the source doesn't offer, rather than locking the picker
336
+ // on a value it can never show as selected.
337
+ if (initialField.type !== undefined &&
338
+ this.fieldManagement.fieldModal.types.some((type) => type.id === initialField.type)) {
339
+ $.type.value = initialField.type;
340
+ provided.push('type');
341
+ }
342
+ else {
343
+ // No type picked here (or it wasn't valid), so the type-change
344
+ // reaction won't fire — apply directly in case a type is already set
345
+ // from an earlier open, or a settings section doesn't need one.
346
+ this.reapplyPendingRequired();
347
+ }
348
+ if (initialField.name !== undefined) {
349
+ // Independent of `type` — a caller may want to suggest a name without
350
+ // constraining which type the user picks.
351
+ $.name.value = initialField.name.slice(0, CUSTOM_FIELD_NAME_MAX_LENGTH);
352
+ provided.push('name');
353
+ this.setKeyFieldIfNotDirty(this.generateUniqueKey($.name.value));
354
+ }
355
+ this.lockedProperties = this.lockedProperties.filter((property) => provided.includes(property));
356
+ }
278
357
  setDefaultPermissions() {
279
358
  const { form: { $ }, } = this;
280
359
  const permissions = this.fieldManagement.fieldModal.permissions;
@@ -1 +1 @@
1
- {"version":3,"file":"CustomFieldModalState.js","sourceRoot":"","sources":["../../../src/state/CustomFieldModalState.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CustomFieldModalState.js","sourceRoot":"","sources":["../../../src/state/CustomFieldModalState.ts"],"names":[],"mappings":"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"}
@@ -11,7 +11,7 @@ export { QueryCache } from 'react-query/core';
11
11
  export { DeepPartial } from './types/DeepPartial';
12
12
  export type { PatternsFieldType, QueryOperator, NumberRange, StringLengthRange, SpecificValue, BaseReferenceField, ReferenceField, MultiReferenceField, NonReferenceField, Field, FieldSpec, } from './types/Field';
13
13
  export type { Schema, SchemaPermissions, ItemPermissions, RemoveItemDisabledResult, CollectionBackendBase, CollectionBackend, FieldActions, FieldSettings, BackupConfig, BulkInsertResult, BulkInsertError, CollectionUpdateContext, LoadedSchema, SchemaLoader, FindOptions, } from './types/Schema';
14
- export type { FieldsSource, FieldManagement, FieldArchive, ArchivedFieldItem, ResolvedFieldTypeOption, FieldPermissions, FieldDraft, FieldModalText, FieldModalSubtitle, FieldPiiWarning, FieldModalCollectionOption, FieldModalCollectionOptionsLoader, FieldModalCollectionInput, FieldSettingsProps, FieldSettingsSection, } from './types/FieldsSource';
14
+ export type { FieldsSource, FieldManagement, FieldArchive, ArchivedFieldItem, ResolvedFieldTypeOption, FieldPermissions, FieldDraft, FieldModalText, FieldModalSubtitle, FieldPiiWarning, FieldModalCollectionOption, FieldModalCollectionOptionsLoader, FieldModalCollectionInput, FieldSettingsProps, FieldSettingsSection, OpenFieldModalOptions, LockableFieldProperty, } from './types/FieldsSource';
15
15
  export { defineSchemaSource, sourceFetchData } from './types/SchemaSource';
16
16
  export type { SchemaSource, SchemaSourceInput, FieldModalInput, FieldTypeOption, } from './types/SchemaSource';
17
17
  export * from './types/FieldTypeDefinition';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,QAAQ,CAAC;AACvB,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,0BAA0B,CAAC;AACzC,cAAc,kCAAkC,CAAC;AACjD,OAAO,EACL,gCAAgC,EAChC,iBAAiB,EACjB,YAAY,EACZ,WAAW,GACZ,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,YAAY,EACV,iBAAiB,EACjB,aAAa,EACb,WAAW,EACX,iBAAiB,EACjB,aAAa,EACb,kBAAkB,EAClB,cAAc,EACd,mBAAmB,EACnB,iBAAiB,EACjB,KAAK,EACL,SAAS,GACV,MAAM,eAAe,CAAC;AACvB,YAAY,EACV,MAAM,EACN,iBAAiB,EACjB,eAAe,EACf,wBAAwB,EACxB,qBAAqB,EACrB,iBAAiB,EACjB,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,gBAAgB,EAChB,eAAe,EACf,uBAAuB,EACvB,YAAY,EACZ,YAAY,EACZ,WAAW,GACZ,MAAM,gBAAgB,CAAC;AACxB,YAAY,EACV,YAAY,EACZ,eAAe,EACf,YAAY,EACZ,iBAAiB,EACjB,uBAAuB,EACvB,gBAAgB,EAChB,UAAU,EACV,cAAc,EACd,kBAAkB,EAClB,eAAe,EACf,0BAA0B,EAC1B,iCAAiC,EACjC,yBAAyB,EACzB,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC3E,YAAY,EACV,YAAY,EACZ,iBAAiB,EACjB,eAAe,EACf,eAAe,GAChB,MAAM,sBAAsB,CAAC;AAC9B,cAAc,6BAA6B,CAAC;AAC5C,YAAY,EACV,WAAW,EACX,WAAW,EACX,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,YAAY,GACb,MAAM,8BAA8B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,QAAQ,CAAC;AACvB,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,0BAA0B,CAAC;AACzC,cAAc,kCAAkC,CAAC;AACjD,OAAO,EACL,gCAAgC,EAChC,iBAAiB,EACjB,YAAY,EACZ,WAAW,GACZ,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,YAAY,EACV,iBAAiB,EACjB,aAAa,EACb,WAAW,EACX,iBAAiB,EACjB,aAAa,EACb,kBAAkB,EAClB,cAAc,EACd,mBAAmB,EACnB,iBAAiB,EACjB,KAAK,EACL,SAAS,GACV,MAAM,eAAe,CAAC;AACvB,YAAY,EACV,MAAM,EACN,iBAAiB,EACjB,eAAe,EACf,wBAAwB,EACxB,qBAAqB,EACrB,iBAAiB,EACjB,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,gBAAgB,EAChB,eAAe,EACf,uBAAuB,EACvB,YAAY,EACZ,YAAY,EACZ,WAAW,GACZ,MAAM,gBAAgB,CAAC;AACxB,YAAY,EACV,YAAY,EACZ,eAAe,EACf,YAAY,EACZ,iBAAiB,EACjB,uBAAuB,EACvB,gBAAgB,EAChB,UAAU,EACV,cAAc,EACd,kBAAkB,EAClB,eAAe,EACf,0BAA0B,EAC1B,iCAAiC,EACjC,yBAAyB,EACzB,kBAAkB,EAClB,oBAAoB,EACpB,qBAAqB,EACrB,qBAAqB,GACtB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC3E,YAAY,EACV,YAAY,EACZ,iBAAiB,EACjB,eAAe,EACf,eAAe,GAChB,MAAM,sBAAsB,CAAC;AAC9B,cAAc,6BAA6B,CAAC;AAC5C,YAAY,EACV,WAAW,EACX,WAAW,EACX,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,YAAY,GACb,MAAM,8BAA8B,CAAC"}
@@ -3,9 +3,13 @@ import { CustomFieldModalBiReporter } from './CustomFieldModalBiReporter';
3
3
  import { FieldState, FormState } from 'formstate';
4
4
  import { ToggleState } from './ToggleState';
5
5
  import { CustomFieldOrigin, CustomFieldType, ReportBI } from '../services';
6
- import { FieldDraft, FieldManagement, FieldModalCollectionInput, FieldModalCollectionOption, FieldModalCollectionOptionsLoader, ResolvedFieldTypeOption } from '../types/FieldsSource';
6
+ import { FieldDraft, FieldManagement, FieldModalCollectionInput, FieldModalCollectionOption, FieldModalCollectionOptionsLoader, LockableFieldProperty, ResolvedFieldTypeOption } from '../types/FieldsSource';
7
7
  import { WixPatternsContainer } from './WixPatternsContainer';
8
8
  import { ToastConfig } from '../model';
9
+ /** The modal's name input caps entry at this length; `applyInitialField`
10
+ * applies the same cap so a prefilled name can't exceed what a user could
11
+ * have typed. */
12
+ export declare const CUSTOM_FIELD_NAME_MAX_LENGTH = 64;
9
13
  export interface CustomFieldStateParams {
10
14
  fieldManagement: FieldManagement;
11
15
  container: WixPatternsContainer;
@@ -54,9 +58,15 @@ export declare class CustomFieldModalState {
54
58
  mode: 'new' | 'edit';
55
59
  origin: CustomFieldOrigin;
56
60
  customOrigin?: string;
61
+ lockedProperties: readonly LockableFieldProperty[];
57
62
  reportBi: ReportBI;
58
63
  private readonly onSubmit?;
59
64
  private readonly collectionOptionsState;
65
+ /** The `required` value requested by `applyInitialField`, reapplied whenever
66
+ * the picked type changes — a type picked after the fact (or an unlocked
67
+ * type the user later changes) would otherwise start the settings section
68
+ * fresh and silently drop it. */
69
+ private pendingRequired?;
60
70
  modalState: ConditionalModalState<unknown>;
61
71
  form: FormState<CustomFieldFormFields>;
62
72
  disabledFields: {
@@ -72,6 +82,7 @@ export declare class CustomFieldModalState {
72
82
  };
73
83
  };
74
84
  constructor(params: CustomFieldStateParams);
85
+ private reapplyPendingRequired;
75
86
  onConfirmError(e: unknown): void;
76
87
  reset(): void;
77
88
  /** Clears the settings sections back to their defaults. Goes over every type
@@ -84,6 +95,17 @@ export declare class CustomFieldModalState {
84
95
  setFormValues(form: FieldDraft, params?: {
85
96
  disablePermissionCheckboxes: boolean;
86
97
  }): void;
98
+ /** Prefills a new field from the caller's requested type/name/required. Sets
99
+ * values directly (like `setFormValues`) rather than through `onChange`, so
100
+ * the name field isn't marked dirty by the prefill — a later user edit
101
+ * still regenerates the key. Also trims `lockedProperties` down to
102
+ * properties actually prefilled here — locking a property with nothing to
103
+ * lock it to would leave it stuck on its empty default. */
104
+ applyInitialField(initialField?: {
105
+ type?: string;
106
+ name?: string;
107
+ required?: boolean;
108
+ }): void;
87
109
  setDefaultPermissions(): void;
88
110
  setKeyFieldIfNotDirty: (value: string) => void;
89
111
  resetCollectionInput(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"CustomFieldModalState.d.ts","sourceRoot":"","sources":["../../../src/state/CustomFieldModalState.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CustomFieldModalState.d.ts","sourceRoot":"","sources":["../../../src/state/CustomFieldModalState.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import type { ComponentType } from 'react';
2
2
  import type { Field, PatternsFieldType } from './Field';
3
3
  import type { FieldActions, FieldSettings, Schema } from './Schema';
4
4
  import type { FieldTypeDefinition } from './FieldTypeDefinition';
5
+ import type { CustomFieldOrigin } from '../services';
5
6
  /** A field the source has archived. Sources without archiving omit `archive`. */
6
7
  export interface ArchivedFieldItem {
7
8
  id: string;
@@ -118,6 +119,9 @@ export interface FieldModalCollectionInput {
118
119
  export interface FieldSettingsProps {
119
120
  /** The picked field type, or absent before one is picked. */
120
121
  fieldType?: string;
122
+ /** Validation rules the section should render as fixed, not user-editable.
123
+ * A section ignores any entry it doesn't recognize. */
124
+ lockedRules?: readonly string[];
121
125
  }
122
126
  /**
123
127
  * The collapsible section below the main add/edit field inputs, supplied by the
@@ -136,6 +140,16 @@ export interface FieldSettingsSection {
136
140
  * there whether or not the section has been rendered yet.
137
141
  */
138
142
  setValues(field?: Field): void;
143
+ /**
144
+ * Prefills a new field's rules from the caller's requested initial values —
145
+ * there is no backing `Field` yet, so this is separate from `setValues`.
146
+ * Absent ⇒ the section doesn't support prefilling any rule this way, and
147
+ * the modal drops that rule from `lockedProperties` rather than locking a
148
+ * control at a value it could never actually apply.
149
+ */
150
+ setInitialValues?(initial: {
151
+ required?: boolean;
152
+ }): void;
139
153
  }
140
154
  /** Add/edit/delete capability a source exposes. Present ⇒ field management UI shows. */
141
155
  export interface FieldManagement {
@@ -171,6 +185,29 @@ export interface FieldManagement {
171
185
  /** Current values for an existing field, to prefill the edit modal. */
172
186
  getFieldDraft(fieldId: string): FieldDraft | undefined;
173
187
  }
188
+ /** A new-field property `OpenFieldModalOptions` can lock from editing. */
189
+ export type LockableFieldProperty = 'type' | 'name' | 'required';
190
+ /** Options for opening the add/edit field modal. */
191
+ export interface OpenFieldModalOptions {
192
+ fieldId?: string;
193
+ origin?: CustomFieldOrigin;
194
+ customOrigin?: string;
195
+ /** Prefills a new field. Ignored when `fieldId` is set — edit mode prefills
196
+ * from the existing field instead. */
197
+ initialField?: {
198
+ /** Prefilled; locked when included in `lockedProperties`. */
199
+ type?: string;
200
+ /** Prefilled; locked when included in `lockedProperties`. */
201
+ name?: string;
202
+ /** Prefilled; locked when included in `lockedProperties`. Support depends
203
+ * on the picked type's settings section — see `FieldSettingsSection.setInitialValues`. */
204
+ required?: boolean;
205
+ };
206
+ /** Properties the user can't change, on top of being prefilled. A property
207
+ * with no matching `initialField` value is never locked — there is nothing
208
+ * to lock it to. */
209
+ lockedProperties?: readonly LockableFieldProperty[];
210
+ }
174
211
  /** Archiving capability a source exposes. Present ⇒ archive/restore UI shows. */
175
212
  export interface FieldArchive {
176
213
  items: ArchivedFieldItem[];
@@ -1 +1 @@
1
- {"version":3,"file":"FieldsSource.d.ts","sourceRoot":"","sources":["../../../src/types/FieldsSource.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FieldsSource.d.ts","sourceRoot":"","sources":["../../../src/types/FieldsSource.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wix/bex-core",
3
- "version": "2.365.0",
3
+ "version": "2.367.0",
4
4
  "license": "UNLICENSED",
5
5
  "author": {
6
6
  "name": "Kobi",
@@ -41,7 +41,7 @@
41
41
  "exports"
42
42
  ],
43
43
  "dependencies": {
44
- "@wix/bex-utils": "2.152.0",
44
+ "@wix/bex-utils": "2.154.0",
45
45
  "chance": "^1.0.0",
46
46
  "events": "^3.0.0",
47
47
  "formstate": "^2.1.0",
@@ -63,7 +63,7 @@
63
63
  "@types/react": "^16.0.0",
64
64
  "@wix/auto-crud": "^1.0.108",
65
65
  "@wix/babel-cli": "^1.11.0",
66
- "@wix/cairo-integration-utils": "1.127.0",
66
+ "@wix/cairo-integration-utils": "1.129.0",
67
67
  "@wix/eslint-config-yoshi": "^6.74.0",
68
68
  "@wix/fe-essentials": "^1.233.0",
69
69
  "@wix/fe-essentials-standalone": "^1.374.0",
@@ -169,5 +169,5 @@
169
169
  "wallaby": {
170
170
  "autoDetect": true
171
171
  },
172
- "falconPackageHash": "4829a4eb1924a70431f93e90f9a893ca58505eaee31a3f0f60e6b47b"
172
+ "falconPackageHash": "72b59b43024ad6b235a602ed11c4fc46ea32fee2db4b9843a55068c2"
173
173
  }