@riverbankcms/sdk 0.60.11 → 0.60.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_dts/api/src/accessAdmin.d.ts +102 -0
- package/dist/_dts/api/src/common/envelope.d.ts +1 -1
- package/dist/_dts/api/src/domains.d.ts +14 -13
- package/dist/_dts/api/src/endpoints.d.ts +32 -0
- package/dist/_dts/api/src/index.d.ts +2 -2
- package/dist/_dts/api/src/siteManagementEndpoints.d.ts +15 -1
- package/dist/_dts/core/src/participant-identity.d.ts +72 -0
- package/dist/_dts/db/src/generated/supabase/database.types.d.ts +96 -60
- package/dist/_dts/db/src/schemas/forms.d.ts +135 -24
- package/dist/_dts/sdk/src/public-api/contracts.d.ts +1 -1
- package/dist/_dts/sdk/src/version.d.ts +1 -1
- package/dist/cli/index.mjs +119 -1
- package/dist/client/bookings.mjs +62 -0
- package/dist/client/client.mjs +119 -1
- package/dist/client/hooks.mjs +119 -0
- package/dist/client/rendering/client.mjs +61 -0
- package/dist/client/rendering/islands.mjs +61 -0
- package/dist/client/rendering.mjs +118 -0
- package/dist/preview-next/before-render.mjs +57 -0
- package/dist/preview-next/client/runtime.mjs +120 -2
- package/dist/preview-next/middleware.mjs +57 -0
- package/dist/server/components.mjs +119 -0
- package/dist/server/config-validation.mjs +119 -0
- package/dist/server/config.mjs +119 -0
- package/dist/server/data.mjs +119 -0
- package/dist/server/index.mjs +120 -1
- package/dist/server/next.mjs +120 -1
- package/dist/server/page-converter.mjs +62 -0
- package/dist/server/prebuild.mjs +1 -1
- package/dist/server/rendering/server.mjs +119 -0
- package/dist/server/rendering.mjs +119 -0
- package/dist/server/routing.mjs +118 -0
- package/dist/server/server.mjs +120 -1
- package/package.json +1 -1
|
@@ -2104,6 +2104,63 @@ var ENDPOINT_DEFINITIONS = {
|
|
|
2104
2104
|
auth: "user",
|
|
2105
2105
|
responseKind: "json"
|
|
2106
2106
|
},
|
|
2107
|
+
updateRegisteredDomainContact: {
|
|
2108
|
+
path: "/domains/{domainId}/registrar/contact",
|
|
2109
|
+
method: "POST",
|
|
2110
|
+
errors: [
|
|
2111
|
+
"validation:invalid_input",
|
|
2112
|
+
"resource:not_found",
|
|
2113
|
+
"auth:forbidden",
|
|
2114
|
+
"external:service_error",
|
|
2115
|
+
"external:registrar_orphaned_contact_profile",
|
|
2116
|
+
"server:internal_error"
|
|
2117
|
+
],
|
|
2118
|
+
tags: ["domains", "domain-{domainId}", "domain-registrar"],
|
|
2119
|
+
auth: "user",
|
|
2120
|
+
responseKind: "json"
|
|
2121
|
+
},
|
|
2122
|
+
setRegisteredDomainPrivacy: {
|
|
2123
|
+
path: "/domains/{domainId}/registrar/privacy",
|
|
2124
|
+
method: "POST",
|
|
2125
|
+
errors: [
|
|
2126
|
+
"validation:invalid_input",
|
|
2127
|
+
"resource:not_found",
|
|
2128
|
+
"auth:forbidden",
|
|
2129
|
+
"external:service_error",
|
|
2130
|
+
"server:internal_error"
|
|
2131
|
+
],
|
|
2132
|
+
tags: ["domains", "domain-{domainId}", "domain-registrar"],
|
|
2133
|
+
auth: "user",
|
|
2134
|
+
responseKind: "json"
|
|
2135
|
+
},
|
|
2136
|
+
setRegisteredDomainAutoRenew: {
|
|
2137
|
+
path: "/domains/{domainId}/registrar/auto-renew",
|
|
2138
|
+
method: "POST",
|
|
2139
|
+
errors: [
|
|
2140
|
+
"validation:invalid_input",
|
|
2141
|
+
"resource:not_found",
|
|
2142
|
+
"auth:forbidden",
|
|
2143
|
+
"external:service_error",
|
|
2144
|
+
"server:internal_error"
|
|
2145
|
+
],
|
|
2146
|
+
tags: ["domains", "domain-{domainId}", "domain-registrar"],
|
|
2147
|
+
auth: "user",
|
|
2148
|
+
responseKind: "json"
|
|
2149
|
+
},
|
|
2150
|
+
getRegisteredDomainRenewalPosture: {
|
|
2151
|
+
path: "/domains/{domainId}/registrar/renewal",
|
|
2152
|
+
method: "GET",
|
|
2153
|
+
errors: [
|
|
2154
|
+
"validation:invalid_input",
|
|
2155
|
+
"resource:not_found",
|
|
2156
|
+
"auth:forbidden",
|
|
2157
|
+
"external:service_error",
|
|
2158
|
+
"server:internal_error"
|
|
2159
|
+
],
|
|
2160
|
+
tags: ["domains", "domain-{domainId}", "domain-registrar"],
|
|
2161
|
+
auth: "user",
|
|
2162
|
+
responseKind: "json"
|
|
2163
|
+
},
|
|
2107
2164
|
retryDomainVercel: {
|
|
2108
2165
|
path: "/domains/{domainId}/vercel",
|
|
2109
2166
|
method: "POST",
|
|
@@ -371,6 +371,68 @@ function toLocationCoordinates(value) {
|
|
|
371
371
|
};
|
|
372
372
|
}
|
|
373
373
|
|
|
374
|
+
// ../core/src/participant-identity.ts
|
|
375
|
+
var PARTICIPANT_PARTICIPATION_IDENTITY_FIELD_CLASSIFICATION_BY_FIELD = {
|
|
376
|
+
participant_id: {
|
|
377
|
+
field: "participant_id",
|
|
378
|
+
role: "canonical_link",
|
|
379
|
+
canonicalSource: "booking_participants.id",
|
|
380
|
+
contractAction: "tighten_in_839",
|
|
381
|
+
notes: "Canonical person-subject link for a participation. #839 should enforce this once preflight is clean."
|
|
382
|
+
},
|
|
383
|
+
display_name: {
|
|
384
|
+
field: "display_name",
|
|
385
|
+
role: "contextual_snapshot",
|
|
386
|
+
canonicalSource: "booking_participants.display_name for live identity",
|
|
387
|
+
contractAction: "retain_as_snapshot",
|
|
388
|
+
notes: "Participation-time display context. Readers must not treat it as mutable live participant identity."
|
|
389
|
+
},
|
|
390
|
+
email: {
|
|
391
|
+
field: "email",
|
|
392
|
+
role: "contextual_snapshot",
|
|
393
|
+
canonicalSource: "booking_participants.email_normalized for live email identity",
|
|
394
|
+
contractAction: "retain_as_snapshot",
|
|
395
|
+
notes: "Participation-time contact snapshot used for notifications/context. Live identity belongs to the participant row."
|
|
396
|
+
},
|
|
397
|
+
email_normalized: {
|
|
398
|
+
field: "email_normalized",
|
|
399
|
+
role: "contextual_snapshot",
|
|
400
|
+
canonicalSource: "booking_participants.email_normalized for live email identity",
|
|
401
|
+
contractAction: "retain_as_snapshot",
|
|
402
|
+
notes: "Normalized snapshot/dedupe helper for the participation slot, not live person authority."
|
|
403
|
+
},
|
|
404
|
+
phone: {
|
|
405
|
+
field: "phone",
|
|
406
|
+
role: "contextual_snapshot",
|
|
407
|
+
canonicalSource: "booking_participants.phone for live phone identity",
|
|
408
|
+
contractAction: "retain_as_snapshot",
|
|
409
|
+
notes: "Participation-time phone context. Live identity belongs to the participant row."
|
|
410
|
+
},
|
|
411
|
+
identity_state: {
|
|
412
|
+
field: "identity_state",
|
|
413
|
+
role: "materialization_state",
|
|
414
|
+
canonicalSource: "booking_participants.identity_state for subject state",
|
|
415
|
+
contractAction: "review_for_later_contract_cleanup",
|
|
416
|
+
notes: "Slot materialization state: booker_supplied, contactable, portal_claimed, or staff_verified."
|
|
417
|
+
},
|
|
418
|
+
event_attendee_guest_id: {
|
|
419
|
+
field: "event_attendee_guest_id",
|
|
420
|
+
role: "compatibility_projection",
|
|
421
|
+
canonicalSource: "canonical participant slot plus #838 event guest compatibility projection",
|
|
422
|
+
contractAction: "retain_as_projection",
|
|
423
|
+
notes: "Compatibility FK for event guest read models. It is not person identity authority."
|
|
424
|
+
}
|
|
425
|
+
};
|
|
426
|
+
var PARTICIPANT_PARTICIPATION_IDENTITY_FIELD_CLASSIFICATIONS = [
|
|
427
|
+
PARTICIPANT_PARTICIPATION_IDENTITY_FIELD_CLASSIFICATION_BY_FIELD.participant_id,
|
|
428
|
+
PARTICIPANT_PARTICIPATION_IDENTITY_FIELD_CLASSIFICATION_BY_FIELD.display_name,
|
|
429
|
+
PARTICIPANT_PARTICIPATION_IDENTITY_FIELD_CLASSIFICATION_BY_FIELD.email,
|
|
430
|
+
PARTICIPANT_PARTICIPATION_IDENTITY_FIELD_CLASSIFICATION_BY_FIELD.email_normalized,
|
|
431
|
+
PARTICIPANT_PARTICIPATION_IDENTITY_FIELD_CLASSIFICATION_BY_FIELD.phone,
|
|
432
|
+
PARTICIPANT_PARTICIPATION_IDENTITY_FIELD_CLASSIFICATION_BY_FIELD.identity_state,
|
|
433
|
+
PARTICIPANT_PARTICIPATION_IDENTITY_FIELD_CLASSIFICATION_BY_FIELD.event_attendee_guest_id
|
|
434
|
+
];
|
|
435
|
+
|
|
374
436
|
// ../media-core/src/typeGuards.ts
|
|
375
437
|
function isRecord(value) {
|
|
376
438
|
return Boolean(value) && typeof value === "object" && !Array.isArray(value);
|
|
@@ -48722,6 +48784,63 @@ var ENDPOINT_DEFINITIONS = {
|
|
|
48722
48784
|
auth: "user",
|
|
48723
48785
|
responseKind: "json"
|
|
48724
48786
|
},
|
|
48787
|
+
updateRegisteredDomainContact: {
|
|
48788
|
+
path: "/domains/{domainId}/registrar/contact",
|
|
48789
|
+
method: "POST",
|
|
48790
|
+
errors: [
|
|
48791
|
+
"validation:invalid_input",
|
|
48792
|
+
"resource:not_found",
|
|
48793
|
+
"auth:forbidden",
|
|
48794
|
+
"external:service_error",
|
|
48795
|
+
"external:registrar_orphaned_contact_profile",
|
|
48796
|
+
"server:internal_error"
|
|
48797
|
+
],
|
|
48798
|
+
tags: ["domains", "domain-{domainId}", "domain-registrar"],
|
|
48799
|
+
auth: "user",
|
|
48800
|
+
responseKind: "json"
|
|
48801
|
+
},
|
|
48802
|
+
setRegisteredDomainPrivacy: {
|
|
48803
|
+
path: "/domains/{domainId}/registrar/privacy",
|
|
48804
|
+
method: "POST",
|
|
48805
|
+
errors: [
|
|
48806
|
+
"validation:invalid_input",
|
|
48807
|
+
"resource:not_found",
|
|
48808
|
+
"auth:forbidden",
|
|
48809
|
+
"external:service_error",
|
|
48810
|
+
"server:internal_error"
|
|
48811
|
+
],
|
|
48812
|
+
tags: ["domains", "domain-{domainId}", "domain-registrar"],
|
|
48813
|
+
auth: "user",
|
|
48814
|
+
responseKind: "json"
|
|
48815
|
+
},
|
|
48816
|
+
setRegisteredDomainAutoRenew: {
|
|
48817
|
+
path: "/domains/{domainId}/registrar/auto-renew",
|
|
48818
|
+
method: "POST",
|
|
48819
|
+
errors: [
|
|
48820
|
+
"validation:invalid_input",
|
|
48821
|
+
"resource:not_found",
|
|
48822
|
+
"auth:forbidden",
|
|
48823
|
+
"external:service_error",
|
|
48824
|
+
"server:internal_error"
|
|
48825
|
+
],
|
|
48826
|
+
tags: ["domains", "domain-{domainId}", "domain-registrar"],
|
|
48827
|
+
auth: "user",
|
|
48828
|
+
responseKind: "json"
|
|
48829
|
+
},
|
|
48830
|
+
getRegisteredDomainRenewalPosture: {
|
|
48831
|
+
path: "/domains/{domainId}/registrar/renewal",
|
|
48832
|
+
method: "GET",
|
|
48833
|
+
errors: [
|
|
48834
|
+
"validation:invalid_input",
|
|
48835
|
+
"resource:not_found",
|
|
48836
|
+
"auth:forbidden",
|
|
48837
|
+
"external:service_error",
|
|
48838
|
+
"server:internal_error"
|
|
48839
|
+
],
|
|
48840
|
+
tags: ["domains", "domain-{domainId}", "domain-registrar"],
|
|
48841
|
+
auth: "user",
|
|
48842
|
+
responseKind: "json"
|
|
48843
|
+
},
|
|
48725
48844
|
retryDomainVercel: {
|
|
48726
48845
|
path: "/domains/{domainId}/vercel",
|
|
48727
48846
|
method: "POST",
|
|
@@ -2065,6 +2065,63 @@ var ENDPOINT_DEFINITIONS = {
|
|
|
2065
2065
|
auth: "user",
|
|
2066
2066
|
responseKind: "json"
|
|
2067
2067
|
},
|
|
2068
|
+
updateRegisteredDomainContact: {
|
|
2069
|
+
path: "/domains/{domainId}/registrar/contact",
|
|
2070
|
+
method: "POST",
|
|
2071
|
+
errors: [
|
|
2072
|
+
"validation:invalid_input",
|
|
2073
|
+
"resource:not_found",
|
|
2074
|
+
"auth:forbidden",
|
|
2075
|
+
"external:service_error",
|
|
2076
|
+
"external:registrar_orphaned_contact_profile",
|
|
2077
|
+
"server:internal_error"
|
|
2078
|
+
],
|
|
2079
|
+
tags: ["domains", "domain-{domainId}", "domain-registrar"],
|
|
2080
|
+
auth: "user",
|
|
2081
|
+
responseKind: "json"
|
|
2082
|
+
},
|
|
2083
|
+
setRegisteredDomainPrivacy: {
|
|
2084
|
+
path: "/domains/{domainId}/registrar/privacy",
|
|
2085
|
+
method: "POST",
|
|
2086
|
+
errors: [
|
|
2087
|
+
"validation:invalid_input",
|
|
2088
|
+
"resource:not_found",
|
|
2089
|
+
"auth:forbidden",
|
|
2090
|
+
"external:service_error",
|
|
2091
|
+
"server:internal_error"
|
|
2092
|
+
],
|
|
2093
|
+
tags: ["domains", "domain-{domainId}", "domain-registrar"],
|
|
2094
|
+
auth: "user",
|
|
2095
|
+
responseKind: "json"
|
|
2096
|
+
},
|
|
2097
|
+
setRegisteredDomainAutoRenew: {
|
|
2098
|
+
path: "/domains/{domainId}/registrar/auto-renew",
|
|
2099
|
+
method: "POST",
|
|
2100
|
+
errors: [
|
|
2101
|
+
"validation:invalid_input",
|
|
2102
|
+
"resource:not_found",
|
|
2103
|
+
"auth:forbidden",
|
|
2104
|
+
"external:service_error",
|
|
2105
|
+
"server:internal_error"
|
|
2106
|
+
],
|
|
2107
|
+
tags: ["domains", "domain-{domainId}", "domain-registrar"],
|
|
2108
|
+
auth: "user",
|
|
2109
|
+
responseKind: "json"
|
|
2110
|
+
},
|
|
2111
|
+
getRegisteredDomainRenewalPosture: {
|
|
2112
|
+
path: "/domains/{domainId}/registrar/renewal",
|
|
2113
|
+
method: "GET",
|
|
2114
|
+
errors: [
|
|
2115
|
+
"validation:invalid_input",
|
|
2116
|
+
"resource:not_found",
|
|
2117
|
+
"auth:forbidden",
|
|
2118
|
+
"external:service_error",
|
|
2119
|
+
"server:internal_error"
|
|
2120
|
+
],
|
|
2121
|
+
tags: ["domains", "domain-{domainId}", "domain-registrar"],
|
|
2122
|
+
auth: "user",
|
|
2123
|
+
responseKind: "json"
|
|
2124
|
+
},
|
|
2068
2125
|
retryDomainVercel: {
|
|
2069
2126
|
path: "/domains/{domainId}/vercel",
|
|
2070
2127
|
method: "POST",
|
|
@@ -5772,6 +5829,68 @@ function toLocationCoordinates(value) {
|
|
|
5772
5829
|
};
|
|
5773
5830
|
}
|
|
5774
5831
|
|
|
5832
|
+
// ../core/src/participant-identity.ts
|
|
5833
|
+
var PARTICIPANT_PARTICIPATION_IDENTITY_FIELD_CLASSIFICATION_BY_FIELD = {
|
|
5834
|
+
participant_id: {
|
|
5835
|
+
field: "participant_id",
|
|
5836
|
+
role: "canonical_link",
|
|
5837
|
+
canonicalSource: "booking_participants.id",
|
|
5838
|
+
contractAction: "tighten_in_839",
|
|
5839
|
+
notes: "Canonical person-subject link for a participation. #839 should enforce this once preflight is clean."
|
|
5840
|
+
},
|
|
5841
|
+
display_name: {
|
|
5842
|
+
field: "display_name",
|
|
5843
|
+
role: "contextual_snapshot",
|
|
5844
|
+
canonicalSource: "booking_participants.display_name for live identity",
|
|
5845
|
+
contractAction: "retain_as_snapshot",
|
|
5846
|
+
notes: "Participation-time display context. Readers must not treat it as mutable live participant identity."
|
|
5847
|
+
},
|
|
5848
|
+
email: {
|
|
5849
|
+
field: "email",
|
|
5850
|
+
role: "contextual_snapshot",
|
|
5851
|
+
canonicalSource: "booking_participants.email_normalized for live email identity",
|
|
5852
|
+
contractAction: "retain_as_snapshot",
|
|
5853
|
+
notes: "Participation-time contact snapshot used for notifications/context. Live identity belongs to the participant row."
|
|
5854
|
+
},
|
|
5855
|
+
email_normalized: {
|
|
5856
|
+
field: "email_normalized",
|
|
5857
|
+
role: "contextual_snapshot",
|
|
5858
|
+
canonicalSource: "booking_participants.email_normalized for live email identity",
|
|
5859
|
+
contractAction: "retain_as_snapshot",
|
|
5860
|
+
notes: "Normalized snapshot/dedupe helper for the participation slot, not live person authority."
|
|
5861
|
+
},
|
|
5862
|
+
phone: {
|
|
5863
|
+
field: "phone",
|
|
5864
|
+
role: "contextual_snapshot",
|
|
5865
|
+
canonicalSource: "booking_participants.phone for live phone identity",
|
|
5866
|
+
contractAction: "retain_as_snapshot",
|
|
5867
|
+
notes: "Participation-time phone context. Live identity belongs to the participant row."
|
|
5868
|
+
},
|
|
5869
|
+
identity_state: {
|
|
5870
|
+
field: "identity_state",
|
|
5871
|
+
role: "materialization_state",
|
|
5872
|
+
canonicalSource: "booking_participants.identity_state for subject state",
|
|
5873
|
+
contractAction: "review_for_later_contract_cleanup",
|
|
5874
|
+
notes: "Slot materialization state: booker_supplied, contactable, portal_claimed, or staff_verified."
|
|
5875
|
+
},
|
|
5876
|
+
event_attendee_guest_id: {
|
|
5877
|
+
field: "event_attendee_guest_id",
|
|
5878
|
+
role: "compatibility_projection",
|
|
5879
|
+
canonicalSource: "canonical participant slot plus #838 event guest compatibility projection",
|
|
5880
|
+
contractAction: "retain_as_projection",
|
|
5881
|
+
notes: "Compatibility FK for event guest read models. It is not person identity authority."
|
|
5882
|
+
}
|
|
5883
|
+
};
|
|
5884
|
+
var PARTICIPANT_PARTICIPATION_IDENTITY_FIELD_CLASSIFICATIONS = [
|
|
5885
|
+
PARTICIPANT_PARTICIPATION_IDENTITY_FIELD_CLASSIFICATION_BY_FIELD.participant_id,
|
|
5886
|
+
PARTICIPANT_PARTICIPATION_IDENTITY_FIELD_CLASSIFICATION_BY_FIELD.display_name,
|
|
5887
|
+
PARTICIPANT_PARTICIPATION_IDENTITY_FIELD_CLASSIFICATION_BY_FIELD.email,
|
|
5888
|
+
PARTICIPANT_PARTICIPATION_IDENTITY_FIELD_CLASSIFICATION_BY_FIELD.email_normalized,
|
|
5889
|
+
PARTICIPANT_PARTICIPATION_IDENTITY_FIELD_CLASSIFICATION_BY_FIELD.phone,
|
|
5890
|
+
PARTICIPANT_PARTICIPATION_IDENTITY_FIELD_CLASSIFICATION_BY_FIELD.identity_state,
|
|
5891
|
+
PARTICIPANT_PARTICIPATION_IDENTITY_FIELD_CLASSIFICATION_BY_FIELD.event_attendee_guest_id
|
|
5892
|
+
];
|
|
5893
|
+
|
|
5775
5894
|
// ../media-core/src/transformRect.ts
|
|
5776
5895
|
function isValidTransformRectStructure(rect) {
|
|
5777
5896
|
if (!Array.isArray(rect) || rect.length !== 4) return false;
|
package/dist/server/config.mjs
CHANGED
|
@@ -2110,6 +2110,63 @@ var ENDPOINT_DEFINITIONS = {
|
|
|
2110
2110
|
auth: "user",
|
|
2111
2111
|
responseKind: "json"
|
|
2112
2112
|
},
|
|
2113
|
+
updateRegisteredDomainContact: {
|
|
2114
|
+
path: "/domains/{domainId}/registrar/contact",
|
|
2115
|
+
method: "POST",
|
|
2116
|
+
errors: [
|
|
2117
|
+
"validation:invalid_input",
|
|
2118
|
+
"resource:not_found",
|
|
2119
|
+
"auth:forbidden",
|
|
2120
|
+
"external:service_error",
|
|
2121
|
+
"external:registrar_orphaned_contact_profile",
|
|
2122
|
+
"server:internal_error"
|
|
2123
|
+
],
|
|
2124
|
+
tags: ["domains", "domain-{domainId}", "domain-registrar"],
|
|
2125
|
+
auth: "user",
|
|
2126
|
+
responseKind: "json"
|
|
2127
|
+
},
|
|
2128
|
+
setRegisteredDomainPrivacy: {
|
|
2129
|
+
path: "/domains/{domainId}/registrar/privacy",
|
|
2130
|
+
method: "POST",
|
|
2131
|
+
errors: [
|
|
2132
|
+
"validation:invalid_input",
|
|
2133
|
+
"resource:not_found",
|
|
2134
|
+
"auth:forbidden",
|
|
2135
|
+
"external:service_error",
|
|
2136
|
+
"server:internal_error"
|
|
2137
|
+
],
|
|
2138
|
+
tags: ["domains", "domain-{domainId}", "domain-registrar"],
|
|
2139
|
+
auth: "user",
|
|
2140
|
+
responseKind: "json"
|
|
2141
|
+
},
|
|
2142
|
+
setRegisteredDomainAutoRenew: {
|
|
2143
|
+
path: "/domains/{domainId}/registrar/auto-renew",
|
|
2144
|
+
method: "POST",
|
|
2145
|
+
errors: [
|
|
2146
|
+
"validation:invalid_input",
|
|
2147
|
+
"resource:not_found",
|
|
2148
|
+
"auth:forbidden",
|
|
2149
|
+
"external:service_error",
|
|
2150
|
+
"server:internal_error"
|
|
2151
|
+
],
|
|
2152
|
+
tags: ["domains", "domain-{domainId}", "domain-registrar"],
|
|
2153
|
+
auth: "user",
|
|
2154
|
+
responseKind: "json"
|
|
2155
|
+
},
|
|
2156
|
+
getRegisteredDomainRenewalPosture: {
|
|
2157
|
+
path: "/domains/{domainId}/registrar/renewal",
|
|
2158
|
+
method: "GET",
|
|
2159
|
+
errors: [
|
|
2160
|
+
"validation:invalid_input",
|
|
2161
|
+
"resource:not_found",
|
|
2162
|
+
"auth:forbidden",
|
|
2163
|
+
"external:service_error",
|
|
2164
|
+
"server:internal_error"
|
|
2165
|
+
],
|
|
2166
|
+
tags: ["domains", "domain-{domainId}", "domain-registrar"],
|
|
2167
|
+
auth: "user",
|
|
2168
|
+
responseKind: "json"
|
|
2169
|
+
},
|
|
2113
2170
|
retryDomainVercel: {
|
|
2114
2171
|
path: "/domains/{domainId}/vercel",
|
|
2115
2172
|
method: "POST",
|
|
@@ -5817,6 +5874,68 @@ function toLocationCoordinates(value) {
|
|
|
5817
5874
|
};
|
|
5818
5875
|
}
|
|
5819
5876
|
|
|
5877
|
+
// ../core/src/participant-identity.ts
|
|
5878
|
+
var PARTICIPANT_PARTICIPATION_IDENTITY_FIELD_CLASSIFICATION_BY_FIELD = {
|
|
5879
|
+
participant_id: {
|
|
5880
|
+
field: "participant_id",
|
|
5881
|
+
role: "canonical_link",
|
|
5882
|
+
canonicalSource: "booking_participants.id",
|
|
5883
|
+
contractAction: "tighten_in_839",
|
|
5884
|
+
notes: "Canonical person-subject link for a participation. #839 should enforce this once preflight is clean."
|
|
5885
|
+
},
|
|
5886
|
+
display_name: {
|
|
5887
|
+
field: "display_name",
|
|
5888
|
+
role: "contextual_snapshot",
|
|
5889
|
+
canonicalSource: "booking_participants.display_name for live identity",
|
|
5890
|
+
contractAction: "retain_as_snapshot",
|
|
5891
|
+
notes: "Participation-time display context. Readers must not treat it as mutable live participant identity."
|
|
5892
|
+
},
|
|
5893
|
+
email: {
|
|
5894
|
+
field: "email",
|
|
5895
|
+
role: "contextual_snapshot",
|
|
5896
|
+
canonicalSource: "booking_participants.email_normalized for live email identity",
|
|
5897
|
+
contractAction: "retain_as_snapshot",
|
|
5898
|
+
notes: "Participation-time contact snapshot used for notifications/context. Live identity belongs to the participant row."
|
|
5899
|
+
},
|
|
5900
|
+
email_normalized: {
|
|
5901
|
+
field: "email_normalized",
|
|
5902
|
+
role: "contextual_snapshot",
|
|
5903
|
+
canonicalSource: "booking_participants.email_normalized for live email identity",
|
|
5904
|
+
contractAction: "retain_as_snapshot",
|
|
5905
|
+
notes: "Normalized snapshot/dedupe helper for the participation slot, not live person authority."
|
|
5906
|
+
},
|
|
5907
|
+
phone: {
|
|
5908
|
+
field: "phone",
|
|
5909
|
+
role: "contextual_snapshot",
|
|
5910
|
+
canonicalSource: "booking_participants.phone for live phone identity",
|
|
5911
|
+
contractAction: "retain_as_snapshot",
|
|
5912
|
+
notes: "Participation-time phone context. Live identity belongs to the participant row."
|
|
5913
|
+
},
|
|
5914
|
+
identity_state: {
|
|
5915
|
+
field: "identity_state",
|
|
5916
|
+
role: "materialization_state",
|
|
5917
|
+
canonicalSource: "booking_participants.identity_state for subject state",
|
|
5918
|
+
contractAction: "review_for_later_contract_cleanup",
|
|
5919
|
+
notes: "Slot materialization state: booker_supplied, contactable, portal_claimed, or staff_verified."
|
|
5920
|
+
},
|
|
5921
|
+
event_attendee_guest_id: {
|
|
5922
|
+
field: "event_attendee_guest_id",
|
|
5923
|
+
role: "compatibility_projection",
|
|
5924
|
+
canonicalSource: "canonical participant slot plus #838 event guest compatibility projection",
|
|
5925
|
+
contractAction: "retain_as_projection",
|
|
5926
|
+
notes: "Compatibility FK for event guest read models. It is not person identity authority."
|
|
5927
|
+
}
|
|
5928
|
+
};
|
|
5929
|
+
var PARTICIPANT_PARTICIPATION_IDENTITY_FIELD_CLASSIFICATIONS = [
|
|
5930
|
+
PARTICIPANT_PARTICIPATION_IDENTITY_FIELD_CLASSIFICATION_BY_FIELD.participant_id,
|
|
5931
|
+
PARTICIPANT_PARTICIPATION_IDENTITY_FIELD_CLASSIFICATION_BY_FIELD.display_name,
|
|
5932
|
+
PARTICIPANT_PARTICIPATION_IDENTITY_FIELD_CLASSIFICATION_BY_FIELD.email,
|
|
5933
|
+
PARTICIPANT_PARTICIPATION_IDENTITY_FIELD_CLASSIFICATION_BY_FIELD.email_normalized,
|
|
5934
|
+
PARTICIPANT_PARTICIPATION_IDENTITY_FIELD_CLASSIFICATION_BY_FIELD.phone,
|
|
5935
|
+
PARTICIPANT_PARTICIPATION_IDENTITY_FIELD_CLASSIFICATION_BY_FIELD.identity_state,
|
|
5936
|
+
PARTICIPANT_PARTICIPATION_IDENTITY_FIELD_CLASSIFICATION_BY_FIELD.event_attendee_guest_id
|
|
5937
|
+
];
|
|
5938
|
+
|
|
5820
5939
|
// ../media-core/src/transformRect.ts
|
|
5821
5940
|
function isValidTransformRectStructure(rect) {
|
|
5822
5941
|
if (!Array.isArray(rect) || rect.length !== 4) return false;
|
package/dist/server/data.mjs
CHANGED
|
@@ -2062,6 +2062,63 @@ var ENDPOINT_DEFINITIONS = {
|
|
|
2062
2062
|
auth: "user",
|
|
2063
2063
|
responseKind: "json"
|
|
2064
2064
|
},
|
|
2065
|
+
updateRegisteredDomainContact: {
|
|
2066
|
+
path: "/domains/{domainId}/registrar/contact",
|
|
2067
|
+
method: "POST",
|
|
2068
|
+
errors: [
|
|
2069
|
+
"validation:invalid_input",
|
|
2070
|
+
"resource:not_found",
|
|
2071
|
+
"auth:forbidden",
|
|
2072
|
+
"external:service_error",
|
|
2073
|
+
"external:registrar_orphaned_contact_profile",
|
|
2074
|
+
"server:internal_error"
|
|
2075
|
+
],
|
|
2076
|
+
tags: ["domains", "domain-{domainId}", "domain-registrar"],
|
|
2077
|
+
auth: "user",
|
|
2078
|
+
responseKind: "json"
|
|
2079
|
+
},
|
|
2080
|
+
setRegisteredDomainPrivacy: {
|
|
2081
|
+
path: "/domains/{domainId}/registrar/privacy",
|
|
2082
|
+
method: "POST",
|
|
2083
|
+
errors: [
|
|
2084
|
+
"validation:invalid_input",
|
|
2085
|
+
"resource:not_found",
|
|
2086
|
+
"auth:forbidden",
|
|
2087
|
+
"external:service_error",
|
|
2088
|
+
"server:internal_error"
|
|
2089
|
+
],
|
|
2090
|
+
tags: ["domains", "domain-{domainId}", "domain-registrar"],
|
|
2091
|
+
auth: "user",
|
|
2092
|
+
responseKind: "json"
|
|
2093
|
+
},
|
|
2094
|
+
setRegisteredDomainAutoRenew: {
|
|
2095
|
+
path: "/domains/{domainId}/registrar/auto-renew",
|
|
2096
|
+
method: "POST",
|
|
2097
|
+
errors: [
|
|
2098
|
+
"validation:invalid_input",
|
|
2099
|
+
"resource:not_found",
|
|
2100
|
+
"auth:forbidden",
|
|
2101
|
+
"external:service_error",
|
|
2102
|
+
"server:internal_error"
|
|
2103
|
+
],
|
|
2104
|
+
tags: ["domains", "domain-{domainId}", "domain-registrar"],
|
|
2105
|
+
auth: "user",
|
|
2106
|
+
responseKind: "json"
|
|
2107
|
+
},
|
|
2108
|
+
getRegisteredDomainRenewalPosture: {
|
|
2109
|
+
path: "/domains/{domainId}/registrar/renewal",
|
|
2110
|
+
method: "GET",
|
|
2111
|
+
errors: [
|
|
2112
|
+
"validation:invalid_input",
|
|
2113
|
+
"resource:not_found",
|
|
2114
|
+
"auth:forbidden",
|
|
2115
|
+
"external:service_error",
|
|
2116
|
+
"server:internal_error"
|
|
2117
|
+
],
|
|
2118
|
+
tags: ["domains", "domain-{domainId}", "domain-registrar"],
|
|
2119
|
+
auth: "user",
|
|
2120
|
+
responseKind: "json"
|
|
2121
|
+
},
|
|
2065
2122
|
retryDomainVercel: {
|
|
2066
2123
|
path: "/domains/{domainId}/vercel",
|
|
2067
2124
|
method: "POST",
|
|
@@ -5769,6 +5826,68 @@ function toLocationCoordinates(value) {
|
|
|
5769
5826
|
};
|
|
5770
5827
|
}
|
|
5771
5828
|
|
|
5829
|
+
// ../core/src/participant-identity.ts
|
|
5830
|
+
var PARTICIPANT_PARTICIPATION_IDENTITY_FIELD_CLASSIFICATION_BY_FIELD = {
|
|
5831
|
+
participant_id: {
|
|
5832
|
+
field: "participant_id",
|
|
5833
|
+
role: "canonical_link",
|
|
5834
|
+
canonicalSource: "booking_participants.id",
|
|
5835
|
+
contractAction: "tighten_in_839",
|
|
5836
|
+
notes: "Canonical person-subject link for a participation. #839 should enforce this once preflight is clean."
|
|
5837
|
+
},
|
|
5838
|
+
display_name: {
|
|
5839
|
+
field: "display_name",
|
|
5840
|
+
role: "contextual_snapshot",
|
|
5841
|
+
canonicalSource: "booking_participants.display_name for live identity",
|
|
5842
|
+
contractAction: "retain_as_snapshot",
|
|
5843
|
+
notes: "Participation-time display context. Readers must not treat it as mutable live participant identity."
|
|
5844
|
+
},
|
|
5845
|
+
email: {
|
|
5846
|
+
field: "email",
|
|
5847
|
+
role: "contextual_snapshot",
|
|
5848
|
+
canonicalSource: "booking_participants.email_normalized for live email identity",
|
|
5849
|
+
contractAction: "retain_as_snapshot",
|
|
5850
|
+
notes: "Participation-time contact snapshot used for notifications/context. Live identity belongs to the participant row."
|
|
5851
|
+
},
|
|
5852
|
+
email_normalized: {
|
|
5853
|
+
field: "email_normalized",
|
|
5854
|
+
role: "contextual_snapshot",
|
|
5855
|
+
canonicalSource: "booking_participants.email_normalized for live email identity",
|
|
5856
|
+
contractAction: "retain_as_snapshot",
|
|
5857
|
+
notes: "Normalized snapshot/dedupe helper for the participation slot, not live person authority."
|
|
5858
|
+
},
|
|
5859
|
+
phone: {
|
|
5860
|
+
field: "phone",
|
|
5861
|
+
role: "contextual_snapshot",
|
|
5862
|
+
canonicalSource: "booking_participants.phone for live phone identity",
|
|
5863
|
+
contractAction: "retain_as_snapshot",
|
|
5864
|
+
notes: "Participation-time phone context. Live identity belongs to the participant row."
|
|
5865
|
+
},
|
|
5866
|
+
identity_state: {
|
|
5867
|
+
field: "identity_state",
|
|
5868
|
+
role: "materialization_state",
|
|
5869
|
+
canonicalSource: "booking_participants.identity_state for subject state",
|
|
5870
|
+
contractAction: "review_for_later_contract_cleanup",
|
|
5871
|
+
notes: "Slot materialization state: booker_supplied, contactable, portal_claimed, or staff_verified."
|
|
5872
|
+
},
|
|
5873
|
+
event_attendee_guest_id: {
|
|
5874
|
+
field: "event_attendee_guest_id",
|
|
5875
|
+
role: "compatibility_projection",
|
|
5876
|
+
canonicalSource: "canonical participant slot plus #838 event guest compatibility projection",
|
|
5877
|
+
contractAction: "retain_as_projection",
|
|
5878
|
+
notes: "Compatibility FK for event guest read models. It is not person identity authority."
|
|
5879
|
+
}
|
|
5880
|
+
};
|
|
5881
|
+
var PARTICIPANT_PARTICIPATION_IDENTITY_FIELD_CLASSIFICATIONS = [
|
|
5882
|
+
PARTICIPANT_PARTICIPATION_IDENTITY_FIELD_CLASSIFICATION_BY_FIELD.participant_id,
|
|
5883
|
+
PARTICIPANT_PARTICIPATION_IDENTITY_FIELD_CLASSIFICATION_BY_FIELD.display_name,
|
|
5884
|
+
PARTICIPANT_PARTICIPATION_IDENTITY_FIELD_CLASSIFICATION_BY_FIELD.email,
|
|
5885
|
+
PARTICIPANT_PARTICIPATION_IDENTITY_FIELD_CLASSIFICATION_BY_FIELD.email_normalized,
|
|
5886
|
+
PARTICIPANT_PARTICIPATION_IDENTITY_FIELD_CLASSIFICATION_BY_FIELD.phone,
|
|
5887
|
+
PARTICIPANT_PARTICIPATION_IDENTITY_FIELD_CLASSIFICATION_BY_FIELD.identity_state,
|
|
5888
|
+
PARTICIPANT_PARTICIPATION_IDENTITY_FIELD_CLASSIFICATION_BY_FIELD.event_attendee_guest_id
|
|
5889
|
+
];
|
|
5890
|
+
|
|
5772
5891
|
// ../media-core/src/transformRect.ts
|
|
5773
5892
|
function isValidTransformRectStructure(rect) {
|
|
5774
5893
|
if (!Array.isArray(rect) || rect.length !== 4) return false;
|