@proteos/sdk 0.54.0 → 0.54.1

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.
@@ -1850,7 +1850,7 @@ type SchedulingPickerElement = CommonProps & {
1850
1850
  contact_id?: string;
1851
1851
  is_header_hidden?: boolean;
1852
1852
  };
1853
- type TextVariant = 'heading' | 'subheading' | 'body' | 'caption' | 'callout';
1853
+ type TextVariant = 'heading' | 'subheading' | 'body' | 'caption' | 'callout' | 'block-title';
1854
1854
  type TextElement = CommonProps & {
1855
1855
  type: 'text';
1856
1856
  variant: TextVariant;
@@ -2611,6 +2611,16 @@ declare const EntityContactBindingSchema: z.ZodObject<{
2611
2611
  }, {
2612
2612
  duplicate_policy: "reject" | "flag";
2613
2613
  }>;
2614
+ /**
2615
+ * The write-side shape of the contact-binding setting. `duplicate_policy` is
2616
+ * optional here so an EMPTY object can be sent: that is how a writer says
2617
+ * "clear this entity's binding back to null", which is distinct from omitting
2618
+ * the field (which leaves whatever is stored alone). Reads never return the
2619
+ * empty shape — the server stores null instead.
2620
+ */
2621
+ interface EntityContactBindingInput {
2622
+ duplicate_policy?: ContactBindingDuplicatePolicy;
2623
+ }
2614
2624
  interface Entity extends AuditFields {
2615
2625
  slug: string;
2616
2626
  name: string;
@@ -2625,8 +2635,10 @@ interface Entity extends AuditFields {
2625
2635
  */
2626
2636
  public_record_access: PublicAccessOperation[];
2627
2637
  /**
2628
- * Contact-binding setting (see `EntityContactBinding`). Optional: a Go
2629
- * build that predates the setting omits it, which means `flag`.
2638
+ * Contact-binding setting (see `EntityContactBinding`). Absent on every
2639
+ * entity that never declared one — which is most of them, since the setting
2640
+ * is meaningful only alongside a `contact-address` attribute. Absent means
2641
+ * the effective default, `flag`.
2630
2642
  */
2631
2643
  contact_binding?: EntityContactBinding;
2632
2644
  module_slug: string;
@@ -3133,9 +3145,12 @@ interface CreateEntityRequest {
3133
3145
  */
3134
3146
  public_record_access?: PublicAccessOperation[];
3135
3147
  /**
3136
- * Contact-binding setting; full-replacement on upsert (omitted = `flag`).
3148
+ * Contact-binding setting. Full-replacement on upsert, and its reset target
3149
+ * is ABSENT rather than a materialized default: an upsert that omits the
3150
+ * field clears it back to null, so a manifest that never declares it stays
3151
+ * in sync. Absent behaves as `flag`.
3137
3152
  */
3138
- contact_binding?: EntityContactBinding;
3153
+ contact_binding?: EntityContactBindingInput;
3139
3154
  module_slug: string;
3140
3155
  description: string;
3141
3156
  title_template?: string;
@@ -3148,7 +3163,11 @@ interface UpdateEntityRequest {
3148
3163
  name?: string;
3149
3164
  is_remote?: boolean;
3150
3165
  public_record_access?: PublicAccessOperation[];
3151
- contact_binding?: EntityContactBinding;
3166
+ /**
3167
+ * Omitted leaves the stored binding alone; an EMPTY object clears it back
3168
+ * to null (see `EntityContactBindingInput`).
3169
+ */
3170
+ contact_binding?: EntityContactBindingInput;
3152
3171
  module_slug?: string;
3153
3172
  description?: string;
3154
3173
  title_template?: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@proteos/sdk",
3
- "version": "0.54.0",
3
+ "version": "0.54.1",
4
4
  "license": "Apache-2.0",
5
5
  "description": "TypeScript SDK for the Proteos platform",
6
6
  "repository": {
@@ -276,7 +276,7 @@ export type SchedulingPickerElement = CommonProps & {
276
276
  is_header_hidden?: boolean
277
277
  }
278
278
 
279
- export type TextVariant = 'heading' | 'subheading' | 'body' | 'caption' | 'callout'
279
+ export type TextVariant = 'heading' | 'subheading' | 'body' | 'caption' | 'callout' | 'block-title'
280
280
 
281
281
  export type TextElement = CommonProps & {
282
282
  type: 'text'
@@ -427,7 +427,7 @@ export const LayoutElementSchema: z.ZodType<LayoutElement> = z.lazy(() =>
427
427
  z.object({
428
428
  type: z.literal('text'),
429
429
  ...commonPropsShape,
430
- variant: z.enum(['heading', 'subheading', 'body', 'caption', 'callout']),
430
+ variant: z.enum(['heading', 'subheading', 'body', 'caption', 'callout', 'block-title']),
431
431
  content: z.string().min(1),
432
432
  }),
433
433
  z.object({
package/src/meta/types.ts CHANGED
@@ -646,6 +646,17 @@ export const EntityContactBindingSchema = z.object({
646
646
  duplicate_policy: z.enum(['reject', 'flag']),
647
647
  })
648
648
 
649
+ /**
650
+ * The write-side shape of the contact-binding setting. `duplicate_policy` is
651
+ * optional here so an EMPTY object can be sent: that is how a writer says
652
+ * "clear this entity's binding back to null", which is distinct from omitting
653
+ * the field (which leaves whatever is stored alone). Reads never return the
654
+ * empty shape — the server stores null instead.
655
+ */
656
+ export interface EntityContactBindingInput {
657
+ duplicate_policy?: ContactBindingDuplicatePolicy
658
+ }
659
+
649
660
  export interface Entity extends AuditFields {
650
661
  slug: string
651
662
  name: string
@@ -660,8 +671,10 @@ export interface Entity extends AuditFields {
660
671
  */
661
672
  public_record_access: PublicAccessOperation[]
662
673
  /**
663
- * Contact-binding setting (see `EntityContactBinding`). Optional: a Go
664
- * build that predates the setting omits it, which means `flag`.
674
+ * Contact-binding setting (see `EntityContactBinding`). Absent on every
675
+ * entity that never declared one — which is most of them, since the setting
676
+ * is meaningful only alongside a `contact-address` attribute. Absent means
677
+ * the effective default, `flag`.
665
678
  */
666
679
  contact_binding?: EntityContactBinding
667
680
  module_slug: string
@@ -730,9 +743,12 @@ export interface CreateEntityRequest {
730
743
  */
731
744
  public_record_access?: PublicAccessOperation[]
732
745
  /**
733
- * Contact-binding setting; full-replacement on upsert (omitted = `flag`).
746
+ * Contact-binding setting. Full-replacement on upsert, and its reset target
747
+ * is ABSENT rather than a materialized default: an upsert that omits the
748
+ * field clears it back to null, so a manifest that never declares it stays
749
+ * in sync. Absent behaves as `flag`.
734
750
  */
735
- contact_binding?: EntityContactBinding
751
+ contact_binding?: EntityContactBindingInput
736
752
  module_slug: string
737
753
  description: string
738
754
  title_template?: string
@@ -746,7 +762,11 @@ export interface UpdateEntityRequest {
746
762
  name?: string
747
763
  is_remote?: boolean
748
764
  public_record_access?: PublicAccessOperation[]
749
- contact_binding?: EntityContactBinding
765
+ /**
766
+ * Omitted leaves the stored binding alone; an EMPTY object clears it back
767
+ * to null (see `EntityContactBindingInput`).
768
+ */
769
+ contact_binding?: EntityContactBindingInput
750
770
  module_slug?: string
751
771
  description?: string
752
772
  title_template?: string