@rippling/rippling-sdk 0.2.0-alpha.50 → 0.2.0-alpha.52

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/examples/functions/durable.ts +96 -0
  2. package/examples/manifest/existing-manifest-mutations/existing-manifest-mutations.ts +5 -0
  3. package/functions.d.mts +35 -0
  4. package/functions.d.mts.map +1 -1
  5. package/functions.d.ts +35 -0
  6. package/functions.d.ts.map +1 -1
  7. package/functions.js.map +1 -1
  8. package/functions.mjs.map +1 -1
  9. package/lib/manifest/custom-object-page-layout.d.mts +19 -14
  10. package/lib/manifest/custom-object-page-layout.d.mts.map +1 -1
  11. package/lib/manifest/custom-object-page-layout.d.ts +19 -14
  12. package/lib/manifest/custom-object-page-layout.d.ts.map +1 -1
  13. package/lib/manifest/custom-object-page-layout.js +148 -77
  14. package/lib/manifest/custom-object-page-layout.js.map +1 -1
  15. package/lib/manifest/custom-object-page-layout.mjs +148 -77
  16. package/lib/manifest/custom-object-page-layout.mjs.map +1 -1
  17. package/lib/manifest/existing-manifest-context.d.mts +1 -0
  18. package/lib/manifest/existing-manifest-context.d.mts.map +1 -1
  19. package/lib/manifest/existing-manifest-context.d.ts +1 -0
  20. package/lib/manifest/existing-manifest-context.d.ts.map +1 -1
  21. package/lib/manifest/existing-manifest-context.js +7 -6
  22. package/lib/manifest/existing-manifest-context.js.map +1 -1
  23. package/lib/manifest/existing-manifest-context.mjs +7 -6
  24. package/lib/manifest/existing-manifest-context.mjs.map +1 -1
  25. package/package.json +1 -1
  26. package/resources/leave-balances.d.mts +10 -0
  27. package/resources/leave-balances.d.mts.map +1 -1
  28. package/resources/leave-balances.d.ts +10 -0
  29. package/resources/leave-balances.d.ts.map +1 -1
  30. package/src/functions.md +238 -0
  31. package/src/functions.ts +42 -0
  32. package/src/lib/manifest/custom-object-page-layout.ts +214 -112
  33. package/src/lib/manifest/existing-manifest-context.ts +11 -6
  34. package/src/resources/leave-balances.ts +12 -0
  35. package/src/version.ts +1 -1
  36. package/version.d.mts +1 -1
  37. package/version.d.ts +1 -1
  38. package/version.js +1 -1
  39. package/version.mjs +1 -1
@@ -17,33 +17,32 @@ function isFieldRef(value) {
17
17
  const candidate = value;
18
18
  return candidate != null && typeof candidate === 'object' && isField(candidate.field);
19
19
  }
20
- const FIELD_SECTION_ID = Symbol('CustomObjectPageLayout.fieldSectionId');
20
+ const LAYOUT_SECTION_KEY = Symbol('CustomObjectPageLayout.layoutSectionKey');
21
21
  function isCustomObjectFieldSection(value) {
22
22
  return value instanceof custom_object_field_section_1.CustomObjectFieldSection;
23
23
  }
24
- function attachFieldSectionId(section, sectionId) {
25
- if (section.key != null && section.key !== sectionId) {
26
- throw new Error(`CustomObjectPageLayout fields_section key "${section.key}" does not match field section "${sectionId}".`);
27
- }
28
- section.key = sectionId;
29
- Object.defineProperty(section, FIELD_SECTION_ID, {
30
- value: sectionId,
24
+ function explicitLayoutSectionKey(section) {
25
+ const record = section;
26
+ const key = section.key ?? record['layout_section_key'] ?? record['layoutSectionKey'];
27
+ return typeof key === 'string' ? key : undefined;
28
+ }
29
+ function attachLayoutSectionKey(section, sectionKey) {
30
+ if (explicitLayoutSectionKey(section) == null)
31
+ section.key = sectionKey;
32
+ Object.defineProperty(section, LAYOUT_SECTION_KEY, {
33
+ value: sectionKey,
31
34
  enumerable: false,
32
35
  configurable: true,
33
36
  });
34
37
  return section;
35
38
  }
36
39
  function layoutSectionKey(section) {
37
- return (section.key ??
38
- section[FIELD_SECTION_ID]);
40
+ return (explicitLayoutSectionKey(section) ??
41
+ section[LAYOUT_SECTION_KEY]);
39
42
  }
40
43
  function layoutSectionMatches(section, sectionKey) {
41
44
  return layoutSectionKey(section) === sectionKey;
42
45
  }
43
- function inputFieldsSectionHasKey(input) {
44
- const record = input;
45
- return Object.prototype.hasOwnProperty.call(record, 'key') && record['key'] != null;
46
- }
47
46
  function isSerializedFieldsSection(section) {
48
47
  return section.type === 'fields_section';
49
48
  }
@@ -119,19 +118,16 @@ function normalizeSectionField(customObject, section, sectionKey, entry) {
119
118
  }
120
119
  function normalizeFieldsSection(customObject, input) {
121
120
  assertSectionBelongsTo(customObject, input.section);
122
- const sectionId = input.section.getSectionId();
123
- if (inputFieldsSectionHasKey(input)) {
124
- throw new Error('CustomObjectPageLayout fields_section key is not supported. Omit key.');
125
- }
121
+ const sectionKey = input.key ?? input.section.getSectionId();
126
122
  const name = input.name ?? input.section.getName();
127
123
  const normalized = copySectionOptions({
128
124
  name,
129
125
  type: 'fields_section',
130
- fields: input.fields.map((field) => normalizeSectionField(customObject, input.section, sectionId, field)),
126
+ fields: input.fields.map((field) => normalizeSectionField(customObject, input.section, sectionKey, field)),
131
127
  }, input);
132
128
  if (input.layout != null)
133
129
  normalized.layout = input.layout;
134
- return attachFieldSectionId(normalized, sectionId);
130
+ return attachLayoutSectionKey(normalized, sectionKey);
135
131
  }
136
132
  function normalizeSection(customObject, section) {
137
133
  if (section.type === 'fields_section')
@@ -290,56 +286,90 @@ function fieldRqlNameOf(entry) {
290
286
  if (entry == null || typeof entry !== 'object')
291
287
  return undefined;
292
288
  const record = entry;
293
- const fieldRqlName = record['fieldRqlName'] ?? record['field_rql_name'];
289
+ const fieldRqlName = record['fieldRqlName'] ?? record['field_rql_name'] ?? record['apiName'] ?? record['api_name'];
294
290
  return typeof fieldRqlName === 'string' ? fieldRqlName : undefined;
295
291
  }
296
- function explicitFieldSectionId(entry) {
297
- if (entry == null || typeof entry !== 'object')
298
- return undefined;
299
- const record = entry;
300
- const fieldSectionId = record['fieldSection'] ?? record['field_section'];
301
- return typeof fieldSectionId === 'string' ? fieldSectionId : undefined;
292
+ function addFieldSectionLayoutSection(index, fieldSectionId, entry) {
293
+ const entries = index.get(fieldSectionId) ?? [];
294
+ if (!entries.some((existing) => existing.tabKey === entry.tabKey && existing.sectionKey === entry.sectionKey)) {
295
+ entries.push(entry);
296
+ }
297
+ index.set(fieldSectionId, entries);
298
+ }
299
+ function indexFieldsSectionInput(index, tabKey, section) {
300
+ addFieldSectionLayoutSection(index, section.section.getSectionId(), {
301
+ tabKey,
302
+ sectionKey: section.key ?? section.section.getSectionId(),
303
+ });
304
+ }
305
+ function indexPageLayoutSectionInput(index, tabKey, section) {
306
+ if (section.type === 'fields_section')
307
+ indexFieldsSectionInput(index, tabKey, section);
302
308
  }
303
- function inferredSectionIdFromFields(section, resolveFieldSectionId) {
304
- const sectionIds = new Set();
309
+ function buildFieldSectionLayoutIndexFromProps(tabEdits) {
310
+ const index = new Map();
311
+ if (tabEdits == null)
312
+ return index;
313
+ for (const tab of tabEdits.newTabs ?? []) {
314
+ if (tab.type !== 'tab_with_sections')
315
+ continue;
316
+ for (const section of tab.sections)
317
+ indexPageLayoutSectionInput(index, tab.key, section);
318
+ }
319
+ for (const [tabKey, tabEdit] of Object.entries(tabEdits.systemTabEdits ?? {})) {
320
+ for (const section of tabEdit.newSections ?? []) {
321
+ indexPageLayoutSectionInput(index, tabKey, section);
322
+ }
323
+ }
324
+ return index;
325
+ }
326
+ function indexLoadedFieldsSection(index, tabKey, section, resolveFieldSectionId) {
327
+ const sectionKey = layoutSectionKey(section);
328
+ if (sectionKey == null || resolveFieldSectionId == null)
329
+ return;
305
330
  for (const field of section.fields ?? []) {
306
- const explicitSectionId = explicitFieldSectionId(field);
307
- if (explicitSectionId != null) {
308
- sectionIds.add(explicitSectionId);
331
+ const fieldRqlName = fieldRqlNameOf(field);
332
+ if (fieldRqlName == null)
309
333
  continue;
334
+ const fieldSectionId = resolveFieldSectionId(fieldRqlName);
335
+ if (fieldSectionId != null) {
336
+ addFieldSectionLayoutSection(index, fieldSectionId, { tabKey, sectionKey });
310
337
  }
311
- const fieldApiName = fieldRqlNameOf(field);
312
- if (fieldApiName == null || resolveFieldSectionId == null)
338
+ }
339
+ }
340
+ function buildFieldSectionLayoutIndexFromLoadedTabEdits(tabEdits, resolveFieldSectionId) {
341
+ const index = new Map();
342
+ for (const tab of tabEdits.newTabs ?? []) {
343
+ if (!isTabWithSections(tab))
313
344
  continue;
314
- const resolvedSectionId = resolveFieldSectionId(fieldApiName);
315
- if (resolvedSectionId != null)
316
- sectionIds.add(resolvedSectionId);
345
+ for (const section of tab.sections) {
346
+ if (isSerializedFieldsSection(section)) {
347
+ indexLoadedFieldsSection(index, tab.key, section, resolveFieldSectionId);
348
+ }
349
+ }
350
+ }
351
+ for (const [tabKey, tabEdit] of Object.entries(tabEdits.systemTabEdits ?? {})) {
352
+ for (const section of tabEdit.newSections ?? []) {
353
+ if (isSerializedFieldsSection(section)) {
354
+ indexLoadedFieldsSection(index, tabKey, section, resolveFieldSectionId);
355
+ }
356
+ }
317
357
  }
318
- return sectionIds.size === 1 ? [...sectionIds][0] : undefined;
358
+ return index;
319
359
  }
320
- function annotateLoadedFieldsSection(section, resolveFieldSectionId) {
321
- const explicitSectionId = layoutSectionKey(section);
322
- const inferredSectionId = inferredSectionIdFromFields(section, resolveFieldSectionId);
323
- if (explicitSectionId != null && inferredSectionId != null && explicitSectionId !== inferredSectionId) {
324
- throw new Error(`CustomObjectPageLayout fields_section key "${explicitSectionId}" does not match ` +
325
- `field section "${inferredSectionId}".`);
326
- }
327
- const sectionId = explicitSectionId ?? inferredSectionId;
328
- return sectionId == null ? section : attachFieldSectionId(section, sectionId);
360
+ function annotateLoadedFieldsSection(section) {
361
+ const sectionKey = layoutSectionKey(section);
362
+ return sectionKey == null ? section : attachLayoutSectionKey(section, sectionKey);
329
363
  }
330
- function annotateLoadedTabEdits(tabEdits, resolveFieldSectionId) {
364
+ function annotateLoadedTabEdits(tabEdits) {
331
365
  for (const tab of tabEdits.newTabs ?? []) {
332
366
  if (!isTabWithSections(tab))
333
367
  continue;
334
- tab.sections = tab.sections.map((section) => isSerializedFieldsSection(section) ?
335
- annotateLoadedFieldsSection(section, resolveFieldSectionId)
336
- : section);
368
+ tab.sections = tab.sections.map((section) => isSerializedFieldsSection(section) ? annotateLoadedFieldsSection(section) : section);
337
369
  }
338
370
  for (const tabEdit of Object.values(tabEdits.systemTabEdits ?? {})) {
339
371
  if (tabEdit.newSections != null) {
340
- tabEdit.newSections = tabEdit.newSections.map((section) => isSerializedFieldsSection(section) ?
341
- annotateLoadedFieldsSection(section, resolveFieldSectionId)
342
- : section);
372
+ tabEdit.newSections = tabEdit.newSections.map((section) => isSerializedFieldsSection(section) ? annotateLoadedFieldsSection(section) : section);
343
373
  }
344
374
  }
345
375
  return tabEdits;
@@ -455,6 +485,7 @@ class CustomObjectPageLayout {
455
485
  this._customObjectApiName = customObject.getApiName();
456
486
  this._name = props.name;
457
487
  this._tabEdits = normalizeTabEdits(customObject, props.tabEdits ?? {});
488
+ this._fieldSectionLayoutSections = buildFieldSectionLayoutIndexFromProps(props.tabEdits);
458
489
  this._headerEdits = normalizeHeaderEdits(props.headerEdits ?? {});
459
490
  this._visibilityConditions = props.visibilityConditions ?? {};
460
491
  this._blueprintKey = props.blueprintKey;
@@ -473,15 +504,17 @@ class CustomObjectPageLayout {
473
504
  /** @internal Hydrates a page layout from existing manifest wire JSON. */
474
505
  static _fromExistingComponent(customObject, component, resolveFieldSectionId) {
475
506
  const layout = Object.create(CustomObjectPageLayout.prototype);
507
+ const tabEdits = annotateLoadedTabEdits(cloneJson(component['tab_edits'] ?? {}));
476
508
  Object.assign(layout, {
477
509
  _layoutId: (0, _existing_component_fields_1.requireStringComponentField)(component, 'layout_id', CustomObjectPageLayout.componentType),
478
510
  _apiName: (0, _existing_component_fields_1.requireStringComponentField)(component, 'api_name', CustomObjectPageLayout.componentType),
479
511
  _customObjectApiName: (0, _existing_component_fields_1.requireStringComponentField)(component, 'object_rql_name', CustomObjectPageLayout.componentType),
480
512
  _name: (0, _existing_component_fields_1.requireStringComponentField)(component, 'name', CustomObjectPageLayout.componentType),
481
- _tabEdits: annotateLoadedTabEdits(cloneJson(component['tab_edits'] ?? {}), resolveFieldSectionId),
513
+ _tabEdits: tabEdits,
482
514
  _headerEdits: cloneJson(component['header_edits'] ?? {}),
483
515
  _visibilityConditions: cloneJson(component['visibility_conditions'] ?? {}),
484
516
  _blueprintKey: component['blueprint_key'],
517
+ _fieldSectionLayoutSections: buildFieldSectionLayoutIndexFromLoadedTabEdits(tabEdits, resolveFieldSectionId),
485
518
  });
486
519
  customObject._register(layout);
487
520
  return layout;
@@ -517,8 +550,8 @@ class CustomObjectPageLayout {
517
550
  * Adds multiple fields to an existing layout section.
518
551
  *
519
552
  * Fields are inserted in the order provided. For custom layout sections,
520
- * pass `options.section` so TypeScript and runtime validation agree on the
521
- * target `CUSTOM_OBJECT_FIELD_SECTION`.
553
+ * pass `section` to choose the typed field section. Use `sectionKey` only
554
+ * when a field section maps to multiple layout sections.
522
555
  */
523
556
  addFields(fields, options) {
524
557
  if (fields.length === 0)
@@ -532,14 +565,19 @@ class CustomObjectPageLayout {
532
565
  return this.ensureSystemSectionFieldContainer(options.tabKey, options.sectionKey);
533
566
  })()
534
567
  : (() => {
535
- assertOptionAbsent(options, 'sectionKey', 'CustomObjectPageLayout addField sectionKey is only supported with systemSection: true. ' +
536
- 'Pass section: CustomObjectFieldSection for custom layout sections.');
537
568
  assertOptionAbsent(options, 'fieldSection', 'CustomObjectPageLayout addField fieldSection is no longer supported. ' +
538
569
  'Pass section: CustomObjectFieldSection instead.');
539
- const section = requireFieldSectionOption(options.section, 'CustomObjectPageLayout addField section');
540
- this.assertFieldSectionBelongsToLayout(section);
541
- fieldSectionForMutation = section;
542
- return this.requireOneFieldContainer(options.tabKey, section.getSectionId(), section);
570
+ const section = options.section == null ?
571
+ undefined
572
+ : requireFieldSectionOption(options.section, 'CustomObjectPageLayout addField section');
573
+ if (section != null) {
574
+ this.assertFieldSectionBelongsToLayout(section);
575
+ fieldSectionForMutation = section;
576
+ }
577
+ const sectionKey = options.sectionKey ??
578
+ (section == null ? undefined : this.layoutSectionKeyForFieldSection(options.tabKey, section)) ??
579
+ section?.getSectionId();
580
+ return this.requireOneFieldContainer(options.tabKey, sectionKey, section);
543
581
  })();
544
582
  const entries = fields.map((field) => this.serializeFieldForMutation(field, container.sectionKey ?? container.label, options, fieldSectionForMutation));
545
583
  if (options.allowDuplicate !== true) {
@@ -573,12 +611,12 @@ class CustomObjectPageLayout {
573
611
  sectionKey = options.sectionKey;
574
612
  }
575
613
  else {
576
- assertOptionAbsent(options, 'sectionKey', 'CustomObjectPageLayout removeField sectionKey is only supported with systemSection: true. ' +
577
- 'Pass section: CustomObjectFieldSection for custom layout sections.');
614
+ sectionKey = options.sectionKey;
578
615
  if (options.section != null) {
579
616
  const section = requireFieldSectionOption(options.section, 'CustomObjectPageLayout removeField section');
580
617
  this.assertFieldSectionBelongsToLayout(section);
581
- sectionKey = section.getSectionId();
618
+ sectionKey ?? (sectionKey = this.layoutSectionKeyForFieldSection(options.tabKey, section));
619
+ sectionKey ?? (sectionKey = section.getSectionId());
582
620
  }
583
621
  }
584
622
  const containers = this.findFieldContainers({
@@ -636,6 +674,9 @@ class CustomObjectPageLayout {
636
674
  const sectionsOrder = this.ensureSystemSectionsOrder(tabEdit);
637
675
  insertAt(sections, normalized, options.position);
638
676
  insertUniqueAt(sectionsOrder, layoutSectionKey(normalized), options.position);
677
+ if (section.type === 'fields_section') {
678
+ this.rememberFieldSectionLayoutSection(section.section, options.tabKey, layoutSectionKey(normalized));
679
+ }
639
680
  return this;
640
681
  }
641
682
  const tab = this.findNewTabWithSections(options.tabKey);
@@ -645,6 +686,9 @@ class CustomObjectPageLayout {
645
686
  }
646
687
  this.assertSectionKeyAvailable(tab.sections, layoutSectionKey(normalized), options.tabKey, options.allowDuplicate);
647
688
  insertAt(tab.sections, normalized, options.position);
689
+ if (section.type === 'fields_section') {
690
+ this.rememberFieldSectionLayoutSection(section.section, tab.key, layoutSectionKey(normalized));
691
+ }
648
692
  return this;
649
693
  }
650
694
  removeSection(sectionOrKey, options = {}) {
@@ -661,9 +705,15 @@ class CustomObjectPageLayout {
661
705
  this.removeSectionVisibility(sectionOrKey);
662
706
  return this;
663
707
  }
664
- const section = requireFieldSectionOption(sectionOrKey, 'CustomObjectPageLayout removeSection section');
665
- this.assertFieldSectionBelongsToLayout(section);
666
- const sectionKey = section.getSectionId();
708
+ let sectionKey;
709
+ if (typeof sectionOrKey === 'string') {
710
+ sectionKey = sectionOrKey;
711
+ }
712
+ else {
713
+ const section = requireFieldSectionOption(sectionOrKey, 'CustomObjectPageLayout removeSection section');
714
+ this.assertFieldSectionBelongsToLayout(section);
715
+ sectionKey = this.layoutSectionKeyForFieldSection(options.tabKey, section) ?? section.getSectionId();
716
+ }
667
717
  const matches = [];
668
718
  for (const tab of this._tabEdits.newTabs ?? []) {
669
719
  if (!isTabWithSections(tab))
@@ -717,6 +767,10 @@ class CustomObjectPageLayout {
717
767
  const tabsOrder = this.ensureTabsOrder();
718
768
  insertAt(newTabs, normalized, options.position);
719
769
  insertUniqueAt(tabsOrder, normalized.key, options.position);
770
+ if (tab.type === 'tab_with_sections') {
771
+ for (const section of tab.sections)
772
+ indexPageLayoutSectionInput(this._fieldSectionLayoutSections, tab.key, section);
773
+ }
720
774
  return this;
721
775
  }
722
776
  /**
@@ -875,19 +929,16 @@ class CustomObjectPageLayout {
875
929
  if (input.type !== 'fields_section')
876
930
  return { ...input };
877
931
  this.assertFieldSectionBelongsToLayout(input.section);
878
- const sectionId = input.section.getSectionId();
879
- if (inputFieldsSectionHasKey(input)) {
880
- throw new Error('CustomObjectPageLayout fields_section key is not supported. Omit key.');
881
- }
932
+ const sectionKey = input.key ?? input.section.getSectionId();
882
933
  const name = input.name ?? input.section.getName();
883
934
  const normalized = copySectionOptions({
884
935
  name,
885
936
  type: 'fields_section',
886
- fields: input.fields.map((field) => this.normalizeSectionFieldForMutation(input.section, sectionId, field)),
937
+ fields: input.fields.map((field) => this.normalizeSectionFieldForMutation(input.section, sectionKey, field)),
887
938
  }, input);
888
939
  if (input.layout != null)
889
940
  normalized.layout = input.layout;
890
- return attachFieldSectionId(normalized, sectionId);
941
+ return attachLayoutSectionKey(normalized, sectionKey);
891
942
  }
892
943
  normalizeTabForMutation(tab) {
893
944
  if (tab.type === 'custom_tab')
@@ -929,6 +980,26 @@ class CustomObjectPageLayout {
929
980
  `"${section.getModelApiName()}", but the layout belongs to "${this._customObjectApiName}".`);
930
981
  }
931
982
  }
983
+ rememberFieldSectionLayoutSection(section, tabKey, sectionKey) {
984
+ if (sectionKey == null)
985
+ return;
986
+ addFieldSectionLayoutSection(this._fieldSectionLayoutSections, section.getSectionId(), {
987
+ tabKey,
988
+ sectionKey,
989
+ });
990
+ }
991
+ layoutSectionKeyForFieldSection(tabKey, section) {
992
+ const entries = this._fieldSectionLayoutSections.get(section.getSectionId()) ?? [];
993
+ const matches = tabKey == null ? entries : entries.filter((entry) => entry.tabKey === tabKey);
994
+ const sectionKeys = [...new Set(matches.map((entry) => entry.sectionKey))];
995
+ if (sectionKeys.length === 0)
996
+ return undefined;
997
+ if (sectionKeys.length === 1)
998
+ return sectionKeys[0];
999
+ const scope = tabKey == null ? '' : ` in tab "${tabKey}"`;
1000
+ throw new Error(`CustomObjectPageLayout field section "${section.getSectionId()}" maps to multiple layout sections${scope}: ` +
1001
+ `${sectionKeys.join(', ')}. Pass sectionKey to choose one.`);
1002
+ }
932
1003
  requireOneFieldContainer(tabKey, sectionKey, fallbackFieldSection) {
933
1004
  const containers = this.findFieldContainers({
934
1005
  tabKey,
@@ -948,8 +1019,8 @@ class CustomObjectPageLayout {
948
1019
  `"${fallbackFieldSection.getModelApiName()}", but the layout belongs to "${this._customObjectApiName}".`);
949
1020
  }
950
1021
  const container = unkeyedContainers[0];
951
- attachFieldSectionId(container.section, fallbackFieldSection.getSectionId());
952
- container.sectionKey = fallbackFieldSection.getSectionId();
1022
+ attachLayoutSectionKey(container.section, sectionKey);
1023
+ container.sectionKey = sectionKey;
953
1024
  container.label = `${container.tabKey}.${container.sectionKey}`;
954
1025
  return container;
955
1026
  }
@@ -1 +1 @@
1
- {"version":3,"file":"custom-object-page-layout.js","sourceRoot":"","sources":["../../src/lib/manifest/custom-object-page-layout.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"custom-object-page-layout.js","sourceRoot":"","sources":["../../src/lib/manifest/custom-object-page-layout.ts"],"names":[],"mappings":"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"}