@businessdash/sdk 0.9.60 → 0.9.80

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 (239) hide show
  1. package/README.md +991 -295
  2. package/assets/biab-sw.js +92 -0
  3. package/dist/account-core/index.d.ts +126 -0
  4. package/dist/account-core/index.d.ts.map +1 -0
  5. package/dist/account-core/index.js +191 -0
  6. package/dist/account-core/index.js.map +1 -0
  7. package/dist/account.d.ts +11 -0
  8. package/dist/account.d.ts.map +1 -0
  9. package/dist/account.js +11 -0
  10. package/dist/account.js.map +1 -0
  11. package/dist/auth-handler.d.ts +1 -1
  12. package/dist/auth-links.d.ts +33 -0
  13. package/dist/auth-links.d.ts.map +1 -0
  14. package/dist/auth-links.js +64 -0
  15. package/dist/auth-links.js.map +1 -0
  16. package/dist/blog-core/index.d.ts +112 -0
  17. package/dist/blog-core/index.d.ts.map +1 -0
  18. package/dist/blog-core/index.js +330 -0
  19. package/dist/blog-core/index.js.map +1 -0
  20. package/dist/blog.d.ts +11 -0
  21. package/dist/blog.d.ts.map +1 -0
  22. package/dist/blog.js +11 -0
  23. package/dist/blog.js.map +1 -0
  24. package/dist/chat-core/index.d.ts +97 -0
  25. package/dist/chat-core/index.d.ts.map +1 -0
  26. package/dist/chat-core/index.js +237 -0
  27. package/dist/chat-core/index.js.map +1 -0
  28. package/dist/chat.d.ts +11 -0
  29. package/dist/chat.d.ts.map +1 -0
  30. package/dist/chat.js +11 -0
  31. package/dist/chat.js.map +1 -0
  32. package/dist/checkout-core/index.d.ts +65 -0
  33. package/dist/checkout-core/index.d.ts.map +1 -0
  34. package/dist/checkout-core/index.js +159 -0
  35. package/dist/checkout-core/index.js.map +1 -0
  36. package/dist/checkout.d.ts +10 -0
  37. package/dist/checkout.d.ts.map +1 -0
  38. package/dist/checkout.js +10 -0
  39. package/dist/checkout.js.map +1 -0
  40. package/dist/cli.js +133 -25
  41. package/dist/cli.js.map +1 -1
  42. package/dist/client.d.ts +622 -1
  43. package/dist/client.d.ts.map +1 -1
  44. package/dist/client.js +888 -1
  45. package/dist/client.js.map +1 -1
  46. package/dist/consent-core/index.cjs +107 -0
  47. package/dist/consent-core/index.d.ts +103 -0
  48. package/dist/consent-core/index.d.ts.map +1 -0
  49. package/dist/consent-core/index.js +157 -0
  50. package/dist/consent-core/index.js.map +1 -0
  51. package/dist/contracts.d.ts +3526 -767
  52. package/dist/contracts.d.ts.map +1 -1
  53. package/dist/contracts.js +571 -4
  54. package/dist/contracts.js.map +1 -1
  55. package/dist/data-model-schema.d.ts +1 -1
  56. package/dist/data-model-schema.d.ts.map +1 -1
  57. package/dist/element.d.ts +30 -0
  58. package/dist/element.d.ts.map +1 -1
  59. package/dist/element.js +56 -0
  60. package/dist/element.js.map +1 -1
  61. package/dist/embed-protocol.d.ts +86 -0
  62. package/dist/embed-protocol.d.ts.map +1 -0
  63. package/dist/embed-protocol.js +60 -0
  64. package/dist/embed-protocol.js.map +1 -0
  65. package/dist/framework-support.d.ts +122 -0
  66. package/dist/framework-support.d.ts.map +1 -0
  67. package/dist/framework-support.js +323 -0
  68. package/dist/framework-support.js.map +1 -0
  69. package/dist/index.cjs +1355 -24
  70. package/dist/legal-core/index.cjs +115 -0
  71. package/dist/legal-core/index.d.ts +160 -0
  72. package/dist/legal-core/index.d.ts.map +1 -0
  73. package/dist/legal-core/index.js +220 -0
  74. package/dist/legal-core/index.js.map +1 -0
  75. package/dist/marketing-core/index.d.ts +66 -0
  76. package/dist/marketing-core/index.d.ts.map +1 -0
  77. package/dist/marketing-core/index.js +154 -0
  78. package/dist/marketing-core/index.js.map +1 -0
  79. package/dist/marketing.d.ts +7 -0
  80. package/dist/marketing.d.ts.map +1 -0
  81. package/dist/marketing.js +7 -0
  82. package/dist/marketing.js.map +1 -0
  83. package/dist/mcp-adapters/index.d.ts +135 -0
  84. package/dist/mcp-adapters/index.d.ts.map +1 -0
  85. package/dist/mcp-adapters/index.js +187 -0
  86. package/dist/mcp-adapters/index.js.map +1 -0
  87. package/dist/mcp-adapters.d.ts +7 -0
  88. package/dist/mcp-adapters.d.ts.map +1 -0
  89. package/dist/mcp-adapters.js +7 -0
  90. package/dist/mcp-adapters.js.map +1 -0
  91. package/dist/model3d-core/index.cjs +95 -0
  92. package/dist/model3d-core/index.d.ts +167 -0
  93. package/dist/model3d-core/index.d.ts.map +1 -0
  94. package/dist/model3d-core/index.js +158 -0
  95. package/dist/model3d-core/index.js.map +1 -0
  96. package/dist/notifications-core/index.cjs +315 -0
  97. package/dist/notifications-core/index.d.ts +229 -0
  98. package/dist/notifications-core/index.d.ts.map +1 -0
  99. package/dist/notifications-core/index.js +445 -0
  100. package/dist/notifications-core/index.js.map +1 -0
  101. package/dist/portal-core/index.d.ts +451 -0
  102. package/dist/portal-core/index.d.ts.map +1 -0
  103. package/dist/portal-core/index.js +819 -0
  104. package/dist/portal-core/index.js.map +1 -0
  105. package/dist/portal.d.ts +7 -0
  106. package/dist/portal.d.ts.map +1 -0
  107. package/dist/portal.js +7 -0
  108. package/dist/portal.js.map +1 -0
  109. package/dist/push-core/index.cjs +171 -0
  110. package/dist/push-core/index.d.ts +149 -0
  111. package/dist/push-core/index.d.ts.map +1 -0
  112. package/dist/push-core/index.js +231 -0
  113. package/dist/push-core/index.js.map +1 -0
  114. package/dist/react-marketing.d.ts +1 -17
  115. package/dist/react-marketing.d.ts.map +1 -1
  116. package/dist/react-marketing.js +4 -0
  117. package/dist/react-marketing.js.map +1 -1
  118. package/dist/react.d.ts +294 -101
  119. package/dist/react.d.ts.map +1 -1
  120. package/dist/react.js +302 -246
  121. package/dist/react.js.map +1 -1
  122. package/dist/seed-core/index.d.ts +354 -0
  123. package/dist/seed-core/index.d.ts.map +1 -0
  124. package/dist/seed-core/index.js +420 -0
  125. package/dist/seed-core/index.js.map +1 -0
  126. package/dist/seed.d.ts +7 -0
  127. package/dist/seed.d.ts.map +1 -0
  128. package/dist/seed.js +7 -0
  129. package/dist/seed.js.map +1 -0
  130. package/dist/seo-core/blog.d.ts +94 -0
  131. package/dist/seo-core/blog.d.ts.map +1 -0
  132. package/dist/seo-core/blog.js +149 -0
  133. package/dist/seo-core/blog.js.map +1 -0
  134. package/dist/seo-core/commerce.d.ts +64 -0
  135. package/dist/seo-core/commerce.d.ts.map +1 -0
  136. package/dist/seo-core/commerce.js +87 -0
  137. package/dist/seo-core/commerce.js.map +1 -0
  138. package/dist/seo-core/index.cjs +751 -0
  139. package/dist/seo-core/index.d.ts +226 -0
  140. package/dist/seo-core/index.d.ts.map +1 -0
  141. package/dist/seo-core/index.js +455 -0
  142. package/dist/seo-core/index.js.map +1 -0
  143. package/dist/seo-core/local.d.ts +181 -0
  144. package/dist/seo-core/local.d.ts.map +1 -0
  145. package/dist/seo-core/local.js +193 -0
  146. package/dist/seo-core/local.js.map +1 -0
  147. package/dist/sitemap-core/index.cjs +167 -0
  148. package/dist/sitemap-core/index.d.ts +155 -0
  149. package/dist/sitemap-core/index.d.ts.map +1 -0
  150. package/dist/sitemap-core/index.js +195 -0
  151. package/dist/sitemap-core/index.js.map +1 -0
  152. package/dist/social-core/index.d.ts +74 -0
  153. package/dist/social-core/index.d.ts.map +1 -0
  154. package/dist/social-core/index.js +72 -0
  155. package/dist/social-core/index.js.map +1 -0
  156. package/dist/social.d.ts +7 -0
  157. package/dist/social.d.ts.map +1 -0
  158. package/dist/social.js +7 -0
  159. package/dist/social.js.map +1 -0
  160. package/dist/solid-compat.d.ts +204 -0
  161. package/dist/solid-compat.d.ts.map +1 -0
  162. package/dist/solid-compat.js +221 -0
  163. package/dist/solid-compat.js.map +1 -0
  164. package/dist/store-core/index.d.ts +141 -0
  165. package/dist/store-core/index.d.ts.map +1 -0
  166. package/dist/store-core/index.js +277 -0
  167. package/dist/store-core/index.js.map +1 -0
  168. package/dist/store.d.ts +12 -0
  169. package/dist/store.d.ts.map +1 -0
  170. package/dist/store.js +12 -0
  171. package/dist/store.js.map +1 -0
  172. package/dist/vanilla.d.ts +111 -0
  173. package/dist/vanilla.d.ts.map +1 -1
  174. package/dist/vanilla.js +206 -0
  175. package/dist/vanilla.js.map +1 -1
  176. package/dist/verify-core/index.d.ts +98 -0
  177. package/dist/verify-core/index.d.ts.map +1 -0
  178. package/dist/verify-core/index.js +186 -0
  179. package/dist/verify-core/index.js.map +1 -0
  180. package/dist/verify.d.ts +8 -0
  181. package/dist/verify.d.ts.map +1 -0
  182. package/dist/verify.js +8 -0
  183. package/dist/verify.js.map +1 -0
  184. package/openapi.json +4516 -1311
  185. package/package.json +128 -11
  186. package/src/account-core/index.ts +309 -0
  187. package/src/account.ts +11 -0
  188. package/src/angular/headless.ts +519 -0
  189. package/src/angular/index.ts +3 -0
  190. package/src/auth-links.ts +76 -0
  191. package/src/blog-core/index.ts +423 -0
  192. package/src/blog.ts +11 -0
  193. package/src/chat-core/index.ts +335 -0
  194. package/src/chat.ts +11 -0
  195. package/src/checkout-core/index.ts +225 -0
  196. package/src/checkout.ts +10 -0
  197. package/src/cli.ts +184 -28
  198. package/src/client.ts +1097 -0
  199. package/src/consent-core/index.ts +213 -0
  200. package/src/contracts.ts +768 -11
  201. package/src/data-model-schema.ts +1 -1
  202. package/src/element.ts +102 -0
  203. package/src/embed-protocol.ts +100 -0
  204. package/src/framework-support.ts +440 -0
  205. package/src/legal-core/index.ts +276 -0
  206. package/src/marketing-core/index.ts +209 -0
  207. package/src/marketing.ts +7 -0
  208. package/src/mcp-adapters/index.ts +264 -0
  209. package/src/mcp-adapters.ts +7 -0
  210. package/src/model3d-core/index.ts +248 -0
  211. package/src/notifications-core/index.ts +650 -0
  212. package/src/portal-core/index.ts +1564 -0
  213. package/src/portal.ts +7 -0
  214. package/src/push-core/index.ts +335 -0
  215. package/src/qwik.tsx +602 -2
  216. package/src/react-marketing.tsx +5 -0
  217. package/src/react.tsx +434 -319
  218. package/src/seed-core/index.ts +735 -0
  219. package/src/seed.ts +7 -0
  220. package/src/seo-core/blog.ts +216 -0
  221. package/src/seo-core/commerce.ts +138 -0
  222. package/src/seo-core/index.ts +605 -0
  223. package/src/seo-core/local.ts +333 -0
  224. package/src/sitemap-core/index.ts +296 -0
  225. package/src/social-core/index.ts +103 -0
  226. package/src/social.ts +7 -0
  227. package/src/solid-compat.tsx +347 -0
  228. package/src/solid-surfaces.tsx +1311 -0
  229. package/src/solid.tsx +82 -60
  230. package/src/store-core/index.ts +426 -0
  231. package/src/store.ts +12 -0
  232. package/src/svelte/SocialLinks.svelte +84 -0
  233. package/src/svelte/headless.ts +435 -0
  234. package/src/svelte/index.ts +9 -0
  235. package/src/vanilla.ts +367 -0
  236. package/src/verify-core/index.ts +288 -0
  237. package/src/verify.ts +8 -0
  238. package/src/vue/headless.ts +527 -0
  239. package/src/vue/index.ts +3 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/notifications-core/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,451 @@
1
+ /**
2
+ * `@businessdash/sdk/portal` — the headless customer-portal controller.
3
+ *
4
+ * The portal is the largest surface in the SDK: 34 methods covering work,
5
+ * quotes, contracts, invoices, orders, downloads, shipping, reviews, referrals,
6
+ * profile and notification preferences. Until now the only way to render it was
7
+ * `<Dashboard>`, a BusinessDash-hosted page in an iframe — so a business could
8
+ * not put their own customer portal on their own domain in their own design.
9
+ *
10
+ * This is the native path. Four things about the surface shape the design, and
11
+ * all of them come from the audit in `Resources/BIAB-Customer-Portal-SDK-Audit.md`.
12
+ *
13
+ * ## 1. The session is not optional
14
+ *
15
+ * Every portal route requires a signed-in session token AND the scope
16
+ * `customer_portal:self`. Without `withSession` the client has no identity and
17
+ * every call is unauthenticated — which fails, but quietly enough to look like
18
+ * an empty portal. So the token is a REQUIRED constructor argument and the
19
+ * controller calls `withSession` itself. A consumer cannot forget it.
20
+ *
21
+ * ## 2. There are no list endpoints, except orders and payments
22
+ *
23
+ * Invoices, quotes, contracts and shipments have detail-by-id routes only.
24
+ * `getWork()` returns a summary — open job count, unpaid balance — so a portal
25
+ * can render counts, but "show me all my unpaid invoices" has no single call.
26
+ * This controller does NOT paper over that with a fake list built from
27
+ * repeated detail fetches: it exposes what exists, and the gap stays visible
28
+ * where someone can decide to close it in the API.
29
+ *
30
+ * ## 3. Nothing can be deleted
31
+ *
32
+ * Every write is a create or an edit. There is deliberately no delete action
33
+ * anywhere in this controller, because there is none in the API.
34
+ *
35
+ * ## 4. Reviews are moderated, not published
36
+ *
37
+ * `submitReview` lands `status: "pending"` for staff approval. The controller
38
+ * does NOT add the new review to `reviews` — showing it back immediately would
39
+ * tell the author their review is live when the public cannot see it.
40
+ *
41
+ * @module
42
+ */
43
+ import type { CustomerContactCompanyInput, CustomerContactCompanyResponse, CustomerContractDetail, CustomerContractListResponse, CustomerContractSignResponse, CustomerDownloadsResponse, CustomerInvoiceDetail, CustomerInvoiceListResponse, CustomerInvoicePayInput, CustomerInvoicePayResponse, CustomerJobActivityResponse, CustomerJobComment, CustomerJobCommentPostInput, CustomerJobCommentsListResponse, CustomerJobDetail, CustomerJobEtaResponse, CustomerNotReceivedResult, CustomerOrderDetail, CustomerOrderListResponse, CustomerPaymentHistoryResponse, CustomerPortalContextResponse, CustomerPortalMessage, CustomerPortalMessageListResponse, CustomerPortalMessagePostInput, CustomerPortalOtherOrgsResponse, CustomerPortalProfile, CustomerPortalUpdateProfileInput, CustomerProductReviewCreated, CustomerProductReviewList, CustomerPushConfig, CustomerQuoteActionResponse, CustomerQuoteDetail, CustomerQuoteListResponse, CustomerReferralHistoryResponse, CustomerReferralPayoutsResponse, CustomerReferralStats, CustomerReturnRequestCreated, CustomerReturnRequestInput, CustomerReturnRequestListResponse, CustomerReviewListResponse, CustomerReviewSubmitInput, CustomerShipmentListResponse, CustomerShipmentTracking, CustomerSubscriberContentResponse, CustomerSubscriptionCancelResponse, CustomerSubscriptionResponse, CustomerWorkBundle, NotificationPreferencesResponse, NotificationPreferencesUpdateInput } from "../contracts.js";
44
+ /** The portal client, after `withSession` has bound an identity to it. */
45
+ export type PortalSessionClient = {
46
+ context(): Promise<CustomerPortalContextResponse>;
47
+ getProfile(): Promise<CustomerPortalProfile>;
48
+ updateProfile(input: CustomerPortalUpdateProfileInput): Promise<unknown>;
49
+ myOtherCustomerOrgs(): Promise<CustomerPortalOtherOrgsResponse>;
50
+ getPushConfig(): Promise<CustomerPushConfig>;
51
+ subscribePush(input: {
52
+ endpoint: string;
53
+ p256dh: string;
54
+ auth: string;
55
+ userAgent?: string | null;
56
+ label?: string | null;
57
+ categories?: string[] | null;
58
+ }): Promise<{
59
+ id: string;
60
+ created: boolean;
61
+ }>;
62
+ updatePushDevice(input: {
63
+ id: string;
64
+ label?: string | null;
65
+ categories?: string[] | null;
66
+ }): Promise<{
67
+ ok: boolean;
68
+ }>;
69
+ unsubscribePush(input: {
70
+ id?: string;
71
+ endpoint?: string;
72
+ }): Promise<{
73
+ ok: boolean;
74
+ deletedId: string | null;
75
+ }>;
76
+ getNotificationPreferences(): Promise<NotificationPreferencesResponse>;
77
+ updateNotificationPreferences(input: NotificationPreferencesUpdateInput): Promise<NotificationPreferencesResponse>;
78
+ getWork(): Promise<CustomerWorkBundle>;
79
+ getJob(jobId: string): Promise<CustomerJobDetail>;
80
+ getJobActivity(jobId: string): Promise<CustomerJobActivityResponse>;
81
+ getJobEta(jobId: string): Promise<CustomerJobEtaResponse>;
82
+ listJobComments(jobId: string): Promise<CustomerJobCommentsListResponse>;
83
+ postJobComment(jobId: string, input: CustomerJobCommentPostInput): Promise<CustomerJobComment>;
84
+ getQuote(quoteId: string): Promise<CustomerQuoteDetail>;
85
+ viewQuote(quoteId: string): Promise<CustomerQuoteDetail>;
86
+ acceptQuote(quoteId: string): Promise<CustomerQuoteActionResponse>;
87
+ rejectQuote(quoteId: string): Promise<CustomerQuoteActionResponse>;
88
+ getInvoice(invoiceId: string): Promise<CustomerInvoiceDetail>;
89
+ payInvoice(invoiceId: string, opts?: CustomerInvoicePayInput): Promise<CustomerInvoicePayResponse>;
90
+ getContract(contractId: string): Promise<CustomerContractDetail>;
91
+ signContract(contractId: string): Promise<CustomerContractSignResponse>;
92
+ listMyReviews(): Promise<CustomerReviewListResponse>;
93
+ submitReview(input: CustomerReviewSubmitInput): Promise<unknown>;
94
+ listOrders(opts?: {
95
+ limit?: number;
96
+ }): Promise<CustomerOrderListResponse>;
97
+ listMessages(opts?: {
98
+ limit?: number;
99
+ jobId?: string;
100
+ }): Promise<CustomerPortalMessageListResponse>;
101
+ postMessage(input: CustomerPortalMessagePostInput): Promise<CustomerPortalMessage>;
102
+ markMessagesRead(): Promise<{
103
+ marked: number;
104
+ }>;
105
+ listReturnRequests(orderId: string): Promise<CustomerReturnRequestListResponse>;
106
+ listInvoices(opts?: {
107
+ limit?: number;
108
+ status?: string;
109
+ unpaid?: boolean;
110
+ }): Promise<CustomerInvoiceListResponse>;
111
+ listQuotes(opts?: {
112
+ limit?: number;
113
+ status?: string;
114
+ }): Promise<CustomerQuoteListResponse>;
115
+ listContracts(opts?: {
116
+ limit?: number;
117
+ status?: string;
118
+ }): Promise<CustomerContractListResponse>;
119
+ listShipments(opts?: {
120
+ limit?: number;
121
+ active?: boolean;
122
+ }): Promise<CustomerShipmentListResponse>;
123
+ getOrder(orderId: string): Promise<CustomerOrderDetail>;
124
+ getDownloads(orderId: string): Promise<CustomerDownloadsResponse>;
125
+ listPayments(opts?: {
126
+ limit?: number;
127
+ }): Promise<CustomerPaymentHistoryResponse>;
128
+ trackShipment(shipmentId: string): Promise<CustomerShipmentTracking>;
129
+ submitExchangeRequest(orderId: string, input?: Omit<CustomerReturnRequestInput, "kind">): Promise<unknown>;
130
+ reportNotReceived(shipmentId: string, input?: {
131
+ note?: string;
132
+ }): Promise<CustomerNotReceivedResult>;
133
+ listProductReviews(): Promise<CustomerProductReviewList>;
134
+ getDispatchStatus(jobId: string): Promise<CustomerJobEtaResponse>;
135
+ getSubscription(): Promise<CustomerSubscriptionResponse>;
136
+ cancelSubscription(): Promise<CustomerSubscriptionCancelResponse>;
137
+ resumeSubscription(): Promise<CustomerSubscriptionCancelResponse>;
138
+ getSubscriberContent(opts?: {
139
+ limit?: number;
140
+ }): Promise<CustomerSubscriberContentResponse>;
141
+ submitProductReview(input: {
142
+ productId: string;
143
+ rating: number;
144
+ content: string;
145
+ }): Promise<CustomerProductReviewCreated>;
146
+ submitReturnRequest(orderId: string, input?: CustomerReturnRequestInput): Promise<CustomerReturnRequestCreated>;
147
+ contactCompany(input: CustomerContactCompanyInput): Promise<CustomerContactCompanyResponse>;
148
+ myReferralStats(): Promise<CustomerReferralStats>;
149
+ myReferralHistory(opts?: {
150
+ limit?: number;
151
+ }): Promise<CustomerReferralHistoryResponse>;
152
+ myReferralPayouts(): Promise<CustomerReferralPayoutsResponse>;
153
+ };
154
+ export type PortalCoreClient = {
155
+ /**
156
+ * `organizationId` pins every request to that org.
157
+ *
158
+ * Optional, and omitting it keeps the API key's own org — which is what the
159
+ * controller does by default. It exists because a customer can belong to
160
+ * SEVERAL orgs, and notification preferences are stored per
161
+ * (org, user): editing them for org B from a controller pinned to org A is
162
+ * otherwise impossible, so a customer could see their other orgs and change
163
+ * nothing about them.
164
+ */
165
+ customerPortal(organizationId?: string): {
166
+ withSession(sessionToken: string): PortalSessionClient;
167
+ };
168
+ };
169
+ export type PortalStatus = "idle" | "loading" | "ready" | "error";
170
+ /**
171
+ * What the portal renders. Collections that the API can actually list live at
172
+ * the top; everything else is a detail slot filled by an `open*` action,
173
+ * because the API has no list route for it.
174
+ */
175
+ export type PortalSnapshot = {
176
+ status: PortalStatus;
177
+ /** Session + branding, from `context()`. */
178
+ context: CustomerPortalContextResponse | null;
179
+ profile: CustomerPortalProfile | null;
180
+ /** Summary counts — open jobs, unpaid balance — not a list of invoices. */
181
+ work: CustomerWorkBundle | null;
182
+ /**
183
+ * Push devices, and the key needed to register a new one.
184
+ *
185
+ * Not per-org, unlike everything beside it: a push subscription identifies a
186
+ * BROWSER, and a customer of three orgs has one browser. Which org may push
187
+ * to it lives in that org's `notificationPreferences` instead — so muting
188
+ * one company here would be the wrong lever, and is not offered.
189
+ */
190
+ push: CustomerPushConfig | null;
191
+ notificationPreferences: NotificationPreferencesResponse | null;
192
+ /**
193
+ * Preferences for OTHER orgs this customer belongs to, keyed by org id.
194
+ *
195
+ * Separate from `notificationPreferences` (this org's) so a dashboard can
196
+ * render the current org without waiting on, or failing because of, orgs
197
+ * the customer has not expanded yet.
198
+ */
199
+ notificationPreferencesByOrg: Record<string, NotificationPreferencesResponse>;
200
+ otherOrgs: CustomerPortalOtherOrgsResponse | null;
201
+ /**
202
+ * The listable collections.
203
+ *
204
+ * Invoices, quotes, contracts and shipments joined this set in 0.9.61. Before
205
+ * that they were detail-by-id only, and `work` carried the counts with no way
206
+ * to enumerate what made them up.
207
+ */
208
+ orders: CustomerOrderListResponse | null;
209
+ payments: CustomerPaymentHistoryResponse | null;
210
+ reviews: CustomerReviewListResponse | null;
211
+ invoices: CustomerInvoiceListResponse | null;
212
+ quotes: CustomerQuoteListResponse | null;
213
+ contracts: CustomerContractListResponse | null;
214
+ shipments: CustomerShipmentListResponse | null;
215
+ /**
216
+ * The staff chat thread. Empty until `loadMessages()` — opening a thread
217
+ * nobody asked for spends a request on every page load.
218
+ */
219
+ messages: CustomerPortalMessageListResponse | null;
220
+ /** Staff messages not yet marked read. Drives an unread badge. */
221
+ unreadMessageCount: number;
222
+ /** Return requests on the OPEN order. Cleared with the rest of the detail. */
223
+ returnRequests: CustomerReturnRequestListResponse | null;
224
+ /** The customer's own product reviews. Null until `loadProductReviews`. */
225
+ productReviews: CustomerProductReviewList | null;
226
+ /**
227
+ * The subscription with this org, plus the org's offerings. Null until
228
+ * `loadSubscription`.
229
+ *
230
+ * Render entitlement from `subscription.subscription?.hasAccess`, never
231
+ * from `status` — a lifetime purchase never expires and a cancelled
232
+ * subscription keeps access until the paid period ends.
233
+ */
234
+ subscription: CustomerSubscriptionResponse | null;
235
+ /**
236
+ * Subscriber content. When `entitled` is false these are LOCKED previews,
237
+ * not an empty entitlement — show them beside the offer.
238
+ */
239
+ subscriberContent: CustomerSubscriberContentResponse | null;
240
+ /**
241
+ * Set after `submitProductReview` succeeds while the org holds it for
242
+ * approval. Render "awaiting review" — silence reads as a lost review.
243
+ */
244
+ productReviewAwaitingModeration: boolean;
245
+ /**
246
+ * The last `reportNotReceived` result. `contested` means the carrier says
247
+ * delivered and the customer says otherwise — worth saying out loud, since
248
+ * that is the case that needs a carrier claim rather than a reship.
249
+ */
250
+ lastNotReceived: CustomerNotReceivedResult | null;
251
+ referrals: {
252
+ stats: CustomerReferralStats | null;
253
+ history: CustomerReferralHistoryResponse | null;
254
+ payouts: CustomerReferralPayoutsResponse | null;
255
+ };
256
+ /** Detail slots — one at a time, filled by `open*`. */
257
+ activeJob: CustomerJobDetail | null;
258
+ jobActivity: CustomerJobActivityResponse | null;
259
+ jobEta: CustomerJobEtaResponse | null;
260
+ jobComments: CustomerJobCommentsListResponse | null;
261
+ activeOrder: CustomerOrderDetail | null;
262
+ orderDownloads: CustomerDownloadsResponse | null;
263
+ activeInvoice: CustomerInvoiceDetail | null;
264
+ activeQuote: CustomerQuoteDetail | null;
265
+ activeContract: CustomerContractDetail | null;
266
+ shipmentTracking: CustomerShipmentTracking | null;
267
+ /**
268
+ * Set after `submitReview` succeeds. The review is queued for staff
269
+ * approval and is NOT in `reviews` — surfacing this lets a portal say
270
+ * "thanks, it's awaiting review" rather than implying it is live.
271
+ */
272
+ reviewAwaitingModeration: boolean;
273
+ error: Error | null;
274
+ pending: {
275
+ overview: boolean;
276
+ orders: boolean;
277
+ payments: boolean;
278
+ reviews: boolean;
279
+ referrals: boolean;
280
+ detail: boolean;
281
+ action: boolean;
282
+ };
283
+ };
284
+ /**
285
+ * What happened when a page asked to turn push on.
286
+ *
287
+ * A discriminated union rather than a boolean because the ways this fails are
288
+ * not interchangeable: `denied` cannot be retried without the visitor digging
289
+ * through site settings, `dismissed` can be asked again tomorrow, and
290
+ * `ios-needs-home-screen` is fixed by the visitor in ten seconds if anyone
291
+ * tells them how. One boolean collapses all three into "didn't work".
292
+ */
293
+ export type PushEnableResult = {
294
+ ok: true;
295
+ deviceId: string;
296
+ } | {
297
+ ok: false;
298
+ reason: "unsupported" | "ios-needs-home-screen" | "insecure-context" | "denied" | "dismissed" | "not-configured" | "failed";
299
+ message: string;
300
+ };
301
+ export type PortalController = {
302
+ snapshot(): PortalSnapshot;
303
+ subscribe(callback: (snapshot: PortalSnapshot) => void): () => void;
304
+ /** Context, profile and the work summary — the portal landing state. */
305
+ load(): Promise<void>;
306
+ loadOrders(opts?: {
307
+ limit?: number;
308
+ }): Promise<void>;
309
+ /** `unpaid: true` is the "everything I owe" view. */
310
+ loadInvoices(opts?: {
311
+ limit?: number;
312
+ status?: string;
313
+ unpaid?: boolean;
314
+ }): Promise<void>;
315
+ loadQuotes(opts?: {
316
+ limit?: number;
317
+ status?: string;
318
+ }): Promise<void>;
319
+ loadContracts(opts?: {
320
+ limit?: number;
321
+ status?: string;
322
+ }): Promise<void>;
323
+ /** `active: true` narrows to parcels still moving. Stored status only. */
324
+ loadShipments(opts?: {
325
+ limit?: number;
326
+ active?: boolean;
327
+ }): Promise<void>;
328
+ /** The staff chat thread. `jobId` narrows it to one job's conversation. */
329
+ loadMessages(opts?: {
330
+ limit?: number;
331
+ jobId?: string;
332
+ }): Promise<void>;
333
+ /** Send a message to staff. The thread is re-read afterwards. */
334
+ postMessage(input: CustomerPortalMessagePostInput): Promise<boolean>;
335
+ /** Mark staff messages read. One-way — it never un-reads. */
336
+ markMessagesRead(): Promise<void>;
337
+ loadPayments(opts?: {
338
+ limit?: number;
339
+ }): Promise<void>;
340
+ loadReviews(): Promise<void>;
341
+ loadReferrals(): Promise<void>;
342
+ /** Push config plus this browser's registration state. */
343
+ loadPushConfig(): Promise<void>;
344
+ /**
345
+ * Turn push on for THIS browser, end to end.
346
+ *
347
+ * Reads the key, registers the service worker, asks permission and records
348
+ * the subscription — the whole dance behind one call, because every step of
349
+ * it is plumbing and none of it is a design decision the consumer wants.
350
+ *
351
+ * **Call it from a click.** Permission is asked once per origin and a
352
+ * refusal is sticky, so a page that prompts on load spends the only chance
353
+ * it gets on someone who has not yet been told what they are agreeing to.
354
+ *
355
+ * The failure cases are returned rather than thrown, because they are not
356
+ * errors so much as answers — "blocked", "add to Home Screen first" — and
357
+ * each deserves different copy.
358
+ */
359
+ enablePush(options?: {
360
+ serviceWorkerPath?: string;
361
+ scope?: string;
362
+ label?: string;
363
+ }): Promise<PushEnableResult>;
364
+ /**
365
+ * Turn push off for this browser: tears the local subscription down AND
366
+ * forgets the row, so nothing is left pushing into a dead endpoint.
367
+ */
368
+ disablePush(): Promise<boolean>;
369
+ /** Rename a device, or narrow what it receives. */
370
+ updatePushDevice(input: {
371
+ id: string;
372
+ label?: string | null;
373
+ categories?: string[] | null;
374
+ }): Promise<boolean>;
375
+ /** Forget one device by id — for revoking a browser you no longer have. */
376
+ forgetPushDevice(id: string): Promise<boolean>;
377
+ loadNotificationPreferences(): Promise<void>;
378
+ /**
379
+ * Load notification preferences for ANOTHER org this customer belongs to.
380
+ * Pass an org id from `snapshot().otherOrgs`.
381
+ */
382
+ loadNotificationPreferencesFor(orgId: string): Promise<void>;
383
+ loadOtherOrgs(): Promise<void>;
384
+ /** Job detail plus its activity, ETA and comments, in one call. */
385
+ openJob(jobId: string): Promise<void>;
386
+ openOrder(orderId: string): Promise<void>;
387
+ openInvoice(invoiceId: string): Promise<void>;
388
+ /** Fetches the quote and marks it viewed, which the org can see. */
389
+ openQuote(quoteId: string): Promise<void>;
390
+ openContract(contractId: string): Promise<void>;
391
+ trackShipment(shipmentId: string): Promise<void>;
392
+ /** Clear every detail slot. */
393
+ closeDetail(): void;
394
+ postJobComment(jobId: string, input: CustomerJobCommentPostInput): Promise<boolean>;
395
+ acceptQuote(quoteId: string): Promise<boolean>;
396
+ rejectQuote(quoteId: string): Promise<boolean>;
397
+ signContract(contractId: string): Promise<boolean>;
398
+ payInvoice(invoiceId: string, opts?: CustomerInvoicePayInput): Promise<CustomerInvoicePayResponse | null>;
399
+ updateProfile(input: CustomerPortalUpdateProfileInput): Promise<boolean>;
400
+ updateNotificationPreferences(input: NotificationPreferencesUpdateInput): Promise<boolean>;
401
+ /** Update preferences for another of the customer's orgs. */
402
+ updateNotificationPreferencesFor(orgId: string, input: NotificationPreferencesUpdateInput): Promise<boolean>;
403
+ /** Queues a review for staff approval. It will NOT appear in `reviews`. */
404
+ submitReview(input: CustomerReviewSubmitInput): Promise<boolean>;
405
+ submitReturnRequest(orderId: string, input?: CustomerReturnRequestInput): Promise<CustomerReturnRequestCreated | null>;
406
+ /** Ask for a replacement instead of money back. */
407
+ submitExchangeRequest(orderId: string, input?: Omit<CustomerReturnRequestInput, "kind">): Promise<CustomerReturnRequestCreated | null>;
408
+ /**
409
+ * Report a parcel as never arrived. Does NOT change carrier status — the
410
+ * result carries both the claim and the carrier's own verdict.
411
+ */
412
+ reportNotReceived(shipmentId: string, input?: {
413
+ note?: string;
414
+ }): Promise<CustomerNotReceivedResult | null>;
415
+ loadProductReviews(): Promise<void>;
416
+ /**
417
+ * Dispatch status for a job the customer owns.
418
+ *
419
+ * Lands in `snapshot().jobEta`, which is the same surface `openJob` fills —
420
+ * one place for "where is my technician", not two that can disagree.
421
+ */
422
+ loadDispatchStatus(jobId: string): Promise<void>;
423
+ loadSubscription(): Promise<void>;
424
+ loadSubscriberContent(opts?: {
425
+ limit?: number;
426
+ }): Promise<void>;
427
+ /** Ends the RENEWAL. Access continues until the paid period ends. */
428
+ cancelSubscription(): Promise<CustomerSubscriptionCancelResponse | null>;
429
+ /** Clears a pending cancellation. */
430
+ resumeSubscription(): Promise<CustomerSubscriptionCancelResponse | null>;
431
+ /** Verified-buyer review. Queued when the org moderates. */
432
+ submitProductReview(input: {
433
+ productId: string;
434
+ rating: number;
435
+ content: string;
436
+ }): Promise<boolean>;
437
+ contactCompany(input: CustomerContactCompanyInput): Promise<CustomerContactCompanyResponse | null>;
438
+ destroy(): void;
439
+ };
440
+ export type CreatePortalControllerOptions = {
441
+ client: PortalCoreClient;
442
+ /**
443
+ * The signed-in customer's session token. REQUIRED — every portal route
444
+ * needs it, and a portal built without one renders as empty rather than as
445
+ * signed-out.
446
+ */
447
+ sessionToken: string;
448
+ onError?: (error: Error) => void;
449
+ };
450
+ export declare function createPortalController(options: CreatePortalControllerOptions): PortalController;
451
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/portal-core/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AAEH,OAAO,KAAK,EACX,2BAA2B,EAC3B,8BAA8B,EAC9B,sBAAsB,EACtB,4BAA4B,EAC5B,4BAA4B,EAC5B,yBAAyB,EACzB,qBAAqB,EACrB,2BAA2B,EAC3B,uBAAuB,EACvB,0BAA0B,EAC1B,2BAA2B,EAC3B,kBAAkB,EAClB,2BAA2B,EAC3B,+BAA+B,EAC/B,iBAAiB,EACjB,sBAAsB,EACtB,yBAAyB,EACzB,mBAAmB,EACnB,yBAAyB,EACzB,8BAA8B,EAC9B,6BAA6B,EAC7B,qBAAqB,EACrB,iCAAiC,EACjC,8BAA8B,EAC9B,+BAA+B,EAC/B,qBAAqB,EACrB,gCAAgC,EAChC,4BAA4B,EAC5B,yBAAyB,EACzB,kBAAkB,EAClB,2BAA2B,EAC3B,mBAAmB,EACnB,yBAAyB,EACzB,+BAA+B,EAC/B,+BAA+B,EAC/B,qBAAqB,EACrB,4BAA4B,EAC5B,0BAA0B,EAC1B,iCAAiC,EACjC,0BAA0B,EAC1B,yBAAyB,EACzB,4BAA4B,EAC5B,wBAAwB,EACxB,iCAAiC,EACjC,kCAAkC,EAClC,4BAA4B,EAC5B,kBAAkB,EAClB,+BAA+B,EAC/B,kCAAkC,EAClC,MAAM,iBAAiB,CAAC;AAQzB,0EAA0E;AAC1E,MAAM,MAAM,mBAAmB,GAAG;IACjC,OAAO,IAAI,OAAO,CAAC,6BAA6B,CAAC,CAAC;IAClD,UAAU,IAAI,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAC7C,aAAa,CAAC,KAAK,EAAE,gCAAgC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACzE,mBAAmB,IAAI,OAAO,CAAC,+BAA+B,CAAC,CAAC;IAChE,aAAa,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAC7C,aAAa,CAAC,KAAK,EAAE;QACpB,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAC1B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACtB,UAAU,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;KAC7B,GAAG,OAAO,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;IAC9C,gBAAgB,CAAC,KAAK,EAAE;QACvB,EAAE,EAAE,MAAM,CAAC;QACX,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACtB,UAAU,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;KAC7B,GAAG,OAAO,CAAC;QAAE,EAAE,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;IAC7B,eAAe,CAAC,KAAK,EAAE;QACtB,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,QAAQ,CAAC,EAAE,MAAM,CAAC;KAClB,GAAG,OAAO,CAAC;QAAE,EAAE,EAAE,OAAO,CAAC;QAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC,CAAC;IACvD,0BAA0B,IAAI,OAAO,CAAC,+BAA+B,CAAC,CAAC;IACvE,6BAA6B,CAC5B,KAAK,EAAE,kCAAkC,GACvC,OAAO,CAAC,+BAA+B,CAAC,CAAC;IAC5C,OAAO,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAAC;IACvC,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAClD,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAAC;IACpE,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAC;IAC1D,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,+BAA+B,CAAC,CAAC;IACzE,cAAc,CACb,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,2BAA2B,GAChC,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAC/B,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACxD,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACzD,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAAC;IACnE,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAAC;IACnE,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAC9D,UAAU,CACT,SAAS,EAAE,MAAM,EACjB,IAAI,CAAC,EAAE,uBAAuB,GAC5B,OAAO,CAAC,0BAA0B,CAAC,CAAC;IACvC,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAC;IACjE,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,4BAA4B,CAAC,CAAC;IACxE,aAAa,IAAI,OAAO,CAAC,0BAA0B,CAAC,CAAC;IACrD,YAAY,CAAC,KAAK,EAAE,yBAAyB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACjE,UAAU,CAAC,IAAI,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,yBAAyB,CAAC,CAAC;IAC1E,YAAY,CAAC,IAAI,CAAC,EAAE;QACnB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;KACf,GAAG,OAAO,CAAC,iCAAiC,CAAC,CAAC;IAC/C,WAAW,CACV,KAAK,EAAE,8BAA8B,GACnC,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAClC,gBAAgB,IAAI,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAChD,kBAAkB,CACjB,OAAO,EAAE,MAAM,GACb,OAAO,CAAC,iCAAiC,CAAC,CAAC;IAC9C,YAAY,CAAC,IAAI,CAAC,EAAE;QACnB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,OAAO,CAAC;KACjB,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAAC;IACzC,UAAU,CAAC,IAAI,CAAC,EAAE;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;KAChB,GAAG,OAAO,CAAC,yBAAyB,CAAC,CAAC;IACvC,aAAa,CAAC,IAAI,CAAC,EAAE;QACpB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;KAChB,GAAG,OAAO,CAAC,4BAA4B,CAAC,CAAC;IAC1C,aAAa,CAAC,IAAI,CAAC,EAAE;QACpB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,OAAO,CAAC;KACjB,GAAG,OAAO,CAAC,4BAA4B,CAAC,CAAC;IAC1C,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACxD,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,yBAAyB,CAAC,CAAC;IAClE,YAAY,CAAC,IAAI,CAAC,EAAE;QACnB,KAAK,CAAC,EAAE,MAAM,CAAC;KACf,GAAG,OAAO,CAAC,8BAA8B,CAAC,CAAC;IAC5C,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAAC;IACrE,qBAAqB,CACpB,OAAO,EAAE,MAAM,EACf,KAAK,CAAC,EAAE,IAAI,CAAC,0BAA0B,EAAE,MAAM,CAAC,GAC9C,OAAO,CAAC,OAAO,CAAC,CAAC;IACpB,iBAAiB,CAChB,UAAU,EAAE,MAAM,EAClB,KAAK,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GACvB,OAAO,CAAC,yBAAyB,CAAC,CAAC;IACtC,kBAAkB,IAAI,OAAO,CAAC,yBAAyB,CAAC,CAAC;IACzD,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAC;IAClE,eAAe,IAAI,OAAO,CAAC,4BAA4B,CAAC,CAAC;IACzD,kBAAkB,IAAI,OAAO,CAAC,kCAAkC,CAAC,CAAC;IAClE,kBAAkB,IAAI,OAAO,CAAC,kCAAkC,CAAC,CAAC;IAClE,oBAAoB,CAAC,IAAI,CAAC,EAAE;QAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;KACf,GAAG,OAAO,CAAC,iCAAiC,CAAC,CAAC;IAC/C,mBAAmB,CAAC,KAAK,EAAE;QAC1B,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,MAAM,CAAC;KAChB,GAAG,OAAO,CAAC,4BAA4B,CAAC,CAAC;IAC1C,mBAAmB,CAClB,OAAO,EAAE,MAAM,EACf,KAAK,CAAC,EAAE,0BAA0B,GAChC,OAAO,CAAC,4BAA4B,CAAC,CAAC;IACzC,cAAc,CACb,KAAK,EAAE,2BAA2B,GAChC,OAAO,CAAC,8BAA8B,CAAC,CAAC;IAC3C,eAAe,IAAI,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAClD,iBAAiB,CAAC,IAAI,CAAC,EAAE;QACxB,KAAK,CAAC,EAAE,MAAM,CAAC;KACf,GAAG,OAAO,CAAC,+BAA+B,CAAC,CAAC;IAC7C,iBAAiB,IAAI,OAAO,CAAC,+BAA+B,CAAC,CAAC;CAC9D,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC9B;;;;;;;;;OASG;IACH,cAAc,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG;QACxC,WAAW,CAAC,YAAY,EAAE,MAAM,GAAG,mBAAmB,CAAC;KACvD,CAAC;CACF,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,SAAS,GAAG,OAAO,GAAG,OAAO,CAAC;AAElE;;;;GAIG;AACH,MAAM,MAAM,cAAc,GAAG;IAC5B,MAAM,EAAE,YAAY,CAAC;IAErB,4CAA4C;IAC5C,OAAO,EAAE,6BAA6B,GAAG,IAAI,CAAC;IAC9C,OAAO,EAAE,qBAAqB,GAAG,IAAI,CAAC;IACtC,2EAA2E;IAC3E,IAAI,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAChC;;;;;;;OAOG;IACH,IAAI,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAChC,uBAAuB,EAAE,+BAA+B,GAAG,IAAI,CAAC;IAChE;;;;;;OAMG;IACH,4BAA4B,EAAE,MAAM,CAAC,MAAM,EAAE,+BAA+B,CAAC,CAAC;IAC9E,SAAS,EAAE,+BAA+B,GAAG,IAAI,CAAC;IAElD;;;;;;OAMG;IACH,MAAM,EAAE,yBAAyB,GAAG,IAAI,CAAC;IACzC,QAAQ,EAAE,8BAA8B,GAAG,IAAI,CAAC;IAChD,OAAO,EAAE,0BAA0B,GAAG,IAAI,CAAC;IAC3C,QAAQ,EAAE,2BAA2B,GAAG,IAAI,CAAC;IAC7C,MAAM,EAAE,yBAAyB,GAAG,IAAI,CAAC;IACzC,SAAS,EAAE,4BAA4B,GAAG,IAAI,CAAC;IAC/C,SAAS,EAAE,4BAA4B,GAAG,IAAI,CAAC;IAE/C;;;OAGG;IACH,QAAQ,EAAE,iCAAiC,GAAG,IAAI,CAAC;IACnD,kEAAkE;IAClE,kBAAkB,EAAE,MAAM,CAAC;IAC3B,8EAA8E;IAC9E,cAAc,EAAE,iCAAiC,GAAG,IAAI,CAAC;IACzD,2EAA2E;IAC3E,cAAc,EAAE,yBAAyB,GAAG,IAAI,CAAC;IACjD;;;;;;;OAOG;IACH,YAAY,EAAE,4BAA4B,GAAG,IAAI,CAAC;IAClD;;;OAGG;IACH,iBAAiB,EAAE,iCAAiC,GAAG,IAAI,CAAC;IAC5D;;;OAGG;IACH,+BAA+B,EAAE,OAAO,CAAC;IACzC;;;;OAIG;IACH,eAAe,EAAE,yBAAyB,GAAG,IAAI,CAAC;IAElD,SAAS,EAAE;QACV,KAAK,EAAE,qBAAqB,GAAG,IAAI,CAAC;QACpC,OAAO,EAAE,+BAA+B,GAAG,IAAI,CAAC;QAChD,OAAO,EAAE,+BAA+B,GAAG,IAAI,CAAC;KAChD,CAAC;IAEF,uDAAuD;IACvD,SAAS,EAAE,iBAAiB,GAAG,IAAI,CAAC;IACpC,WAAW,EAAE,2BAA2B,GAAG,IAAI,CAAC;IAChD,MAAM,EAAE,sBAAsB,GAAG,IAAI,CAAC;IACtC,WAAW,EAAE,+BAA+B,GAAG,IAAI,CAAC;IACpD,WAAW,EAAE,mBAAmB,GAAG,IAAI,CAAC;IACxC,cAAc,EAAE,yBAAyB,GAAG,IAAI,CAAC;IACjD,aAAa,EAAE,qBAAqB,GAAG,IAAI,CAAC;IAC5C,WAAW,EAAE,mBAAmB,GAAG,IAAI,CAAC;IACxC,cAAc,EAAE,sBAAsB,GAAG,IAAI,CAAC;IAC9C,gBAAgB,EAAE,wBAAwB,GAAG,IAAI,CAAC;IAElD;;;;OAIG;IACH,wBAAwB,EAAE,OAAO,CAAC;IAElC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,OAAO,EAAE;QACR,QAAQ,EAAE,OAAO,CAAC;QAClB,MAAM,EAAE,OAAO,CAAC;QAChB,QAAQ,EAAE,OAAO,CAAC;QAClB,OAAO,EAAE,OAAO,CAAC;QACjB,SAAS,EAAE,OAAO,CAAC;QACnB,MAAM,EAAE,OAAO,CAAC;QAChB,MAAM,EAAE,OAAO,CAAC;KAChB,CAAC;CACF,CAAC;AAEF;;;;;;;;GAQG;AACH,MAAM,MAAM,gBAAgB,GACzB;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GAC9B;IACA,EAAE,EAAE,KAAK,CAAC;IACV,MAAM,EACH,aAAa,GACb,uBAAuB,GACvB,kBAAkB,GAClB,QAAQ,GACR,WAAW,GACX,gBAAgB,GAChB,QAAQ,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;CACf,CAAC;AAEL,MAAM,MAAM,gBAAgB,GAAG;IAC9B,QAAQ,IAAI,cAAc,CAAC;IAC3B,SAAS,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,cAAc,KAAK,IAAI,GAAG,MAAM,IAAI,CAAC;IAEpE,wEAAwE;IACxE,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACtB,UAAU,CAAC,IAAI,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACrD,qDAAqD;IACrD,YAAY,CAAC,IAAI,CAAC,EAAE;QACnB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,OAAO,CAAC;KACjB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClB,UAAU,CAAC,IAAI,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACtE,aAAa,CAAC,IAAI,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACzE,0EAA0E;IAC1E,aAAa,CAAC,IAAI,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1E,2EAA2E;IAC3E,YAAY,CAAC,IAAI,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACvE,iEAAiE;IACjE,WAAW,CAAC,KAAK,EAAE,8BAA8B,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACrE,6DAA6D;IAC7D,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAClC,YAAY,CAAC,IAAI,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACvD,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/B,0DAA0D;IAC1D,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAChC;;;;;;;;;;;;;;OAcG;IACH,UAAU,CAAC,OAAO,CAAC,EAAE;QACpB,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;KACf,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAC9B;;;OAGG;IACH,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAChC,mDAAmD;IACnD,gBAAgB,CAAC,KAAK,EAAE;QACvB,EAAE,EAAE,MAAM,CAAC;QACX,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACtB,UAAU,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;KAC7B,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACrB,2EAA2E;IAC3E,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/C,2BAA2B,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7C;;;OAGG;IACH,8BAA8B,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7D,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAE/B,mEAAmE;IACnE,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1C,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9C,oEAAoE;IACpE,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1C,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjD,+BAA+B;IAC/B,WAAW,IAAI,IAAI,CAAC;IAEpB,cAAc,CACb,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,2BAA2B,GAChC,OAAO,CAAC,OAAO,CAAC,CAAC;IACpB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/C,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/C,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACnD,UAAU,CACT,SAAS,EAAE,MAAM,EACjB,IAAI,CAAC,EAAE,uBAAuB,GAC5B,OAAO,CAAC,0BAA0B,GAAG,IAAI,CAAC,CAAC;IAC9C,aAAa,CAAC,KAAK,EAAE,gCAAgC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACzE,6BAA6B,CAC5B,KAAK,EAAE,kCAAkC,GACvC,OAAO,CAAC,OAAO,CAAC,CAAC;IACpB,6DAA6D;IAC7D,gCAAgC,CAC/B,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,kCAAkC,GACvC,OAAO,CAAC,OAAO,CAAC,CAAC;IACpB,2EAA2E;IAC3E,YAAY,CAAC,KAAK,EAAE,yBAAyB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACjE,mBAAmB,CAClB,OAAO,EAAE,MAAM,EACf,KAAK,CAAC,EAAE,0BAA0B,GAChC,OAAO,CAAC,4BAA4B,GAAG,IAAI,CAAC,CAAC;IAChD,mDAAmD;IACnD,qBAAqB,CACpB,OAAO,EAAE,MAAM,EACf,KAAK,CAAC,EAAE,IAAI,CAAC,0BAA0B,EAAE,MAAM,CAAC,GAC9C,OAAO,CAAC,4BAA4B,GAAG,IAAI,CAAC,CAAC;IAChD;;;OAGG;IACH,iBAAiB,CAChB,UAAU,EAAE,MAAM,EAClB,KAAK,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GACvB,OAAO,CAAC,yBAAyB,GAAG,IAAI,CAAC,CAAC;IAC7C,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACpC;;;;;OAKG;IACH,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjD,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAClC,qBAAqB,CAAC,IAAI,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAChE,qEAAqE;IACrE,kBAAkB,IAAI,OAAO,CAAC,kCAAkC,GAAG,IAAI,CAAC,CAAC;IACzE,qCAAqC;IACrC,kBAAkB,IAAI,OAAO,CAAC,kCAAkC,GAAG,IAAI,CAAC,CAAC;IACzE,4DAA4D;IAC5D,mBAAmB,CAAC,KAAK,EAAE;QAC1B,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,MAAM,CAAC;KAChB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACrB,cAAc,CACb,KAAK,EAAE,2BAA2B,GAChC,OAAO,CAAC,8BAA8B,GAAG,IAAI,CAAC,CAAC;IAElD,OAAO,IAAI,IAAI,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,6BAA6B,GAAG;IAC3C,MAAM,EAAE,gBAAgB,CAAC;IACzB;;;;OAIG;IACH,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CACjC,CAAC;AAMF,wBAAgB,sBAAsB,CACrC,OAAO,EAAE,6BAA6B,GACpC,gBAAgB,CAu/BlB"}