@hubspot/app-connect-sdk 1.0.0-alpha.23 → 1.0.0-alpha.25

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 (545) hide show
  1. package/.playwright-cli/console-2026-06-03T21-09-24-449Z.log +1 -0
  2. package/.playwright-cli/page-2026-06-03T21-09-25-023Z.yml +150 -0
  3. package/.playwright-cli/page-2026-06-03T21-09-29-262Z.png +0 -0
  4. package/.turbo/turbo-format$colon$check.log +1 -1
  5. package/.turbo/turbo-test.log +277 -125
  6. package/.turbo/turbo-tsdown.log +284 -275
  7. package/build/tsconfig.browser.tsbuildinfo +1 -1
  8. package/build/tsconfig.server.tsbuildinfo +1 -1
  9. package/dist/browser/{HubSpotAppConnect-721kYr9d.js → HubSpotAppConnect-DXwIeCvS.js} +254 -121
  10. package/dist/browser/HubSpotAppConnect-DXwIeCvS.js.map +1 -0
  11. package/dist/browser/assets/src/browser/react/components/AppConnectHeader/{AppConnectHeader.css.ts.vanilla-DpJ0aBGF.css → AppConnectHeader.css.ts.vanilla-Cy3juYhp.css} +35 -42
  12. package/dist/browser/assets/src/browser/react/components/Badge/Badge.css.ts.vanilla-BglQhG8I.css +43 -0
  13. package/dist/browser/assets/src/browser/react/components/Button/Button.css.ts.vanilla-DeSC65cA.css +153 -0
  14. package/dist/browser/assets/src/browser/react/components/Card/Card.css.ts.vanilla-CJYvW5f2.css +45 -0
  15. package/dist/browser/assets/src/browser/react/components/Checkbox/Checkbox.css.ts.vanilla-Bd1JQ2dy.css +80 -0
  16. package/dist/browser/assets/src/browser/react/components/ConnectButton/{ConnectButton.css.ts.vanilla-BXXMQqfA.css → ConnectButton.css.ts.vanilla-BNDbE3VP.css} +7 -3
  17. package/dist/browser/assets/src/browser/react/components/Input/Input.css.ts.vanilla-BazoQ0F4.css +67 -0
  18. package/dist/browser/assets/src/browser/react/components/Link/Link.css.ts.vanilla-DlB1-KG3.css +27 -0
  19. package/dist/browser/assets/src/browser/react/components/RadioGroup/RadioGroup.css.ts.vanilla-BZMFzhtJ.css +96 -0
  20. package/dist/browser/assets/src/browser/react/components/Select/Select.css.ts.vanilla-qnoyv6af.css +74 -0
  21. package/dist/browser/assets/src/browser/react/components/ShareButton/ShareButton.css.ts.vanilla-Dxuyu80-.css +6 -0
  22. package/dist/browser/assets/src/browser/react/components/Text/Text.css.ts.vanilla-CKHLgxoO.css +62 -0
  23. package/dist/browser/assets/src/browser/react/components/TextArea/TextArea.css.ts.vanilla-sAowJlZT.css +69 -0
  24. package/dist/browser/assets/src/browser/theme.css.ts.vanilla-Bh9J7hgH.css +28 -0
  25. package/dist/browser/{create-ULhURoJ_.js → create-B1fFvikp.js} +28 -7
  26. package/dist/browser/create-B1fFvikp.js.map +1 -0
  27. package/dist/browser/index.d.ts +9 -2
  28. package/dist/browser/index.js +12 -3
  29. package/dist/browser/index.js.map +1 -0
  30. package/dist/browser/react/lovable.d.ts +1 -1
  31. package/dist/browser/react/lovable.js +3 -3
  32. package/dist/browser/react.d.ts +279 -3
  33. package/dist/browser/react.js +414 -2
  34. package/dist/browser/react.js.map +1 -0
  35. package/dist/browser/{theme.css-CJbxi5hC.js → theme.css-iQa2lUfM.js} +2 -2
  36. package/dist/browser/theme.css-iQa2lUfM.js.map +1 -0
  37. package/dist/browser/{types-C3wed8dU.d.ts → types-aHV2H3o4.d.ts} +20 -1
  38. package/dist/server/api-client-core/apis/auth/oauth-types.generated.d.ts +0 -12
  39. package/dist/server/api-client-core/apis/auth/oauth.generated.js +4 -14
  40. package/dist/server/api-client-core/apis/auth/oauth.generated.js.map +1 -1
  41. package/dist/server/api-client-core/apis/automation/actions-types.generated.d.ts +1 -72
  42. package/dist/server/api-client-core/apis/automation/actions.generated.js +1 -59
  43. package/dist/server/api-client-core/apis/automation/actions.generated.js.map +1 -1
  44. package/dist/server/api-client-core/apis/automation/sequences-types.generated.d.ts +0 -7
  45. package/dist/server/api-client-core/apis/automation/sequences.generated.js +0 -4
  46. package/dist/server/api-client-core/apis/automation/sequences.generated.js.map +1 -1
  47. package/dist/server/api-client-core/apis/cms/authors-types.generated.d.ts +0 -77
  48. package/dist/server/api-client-core/apis/cms/authors.generated.js +6 -55
  49. package/dist/server/api-client-core/apis/cms/authors.generated.js.map +1 -1
  50. package/dist/server/api-client-core/apis/cms/blog-settings-types.generated.d.ts +1 -37
  51. package/dist/server/api-client-core/apis/cms/blog-settings.generated.js +1 -7
  52. package/dist/server/api-client-core/apis/cms/blog-settings.generated.js.map +1 -1
  53. package/dist/server/api-client-core/apis/cms/hubdb-types.generated.d.ts +0 -133
  54. package/dist/server/api-client-core/apis/cms/hubdb.generated.js +0 -85
  55. package/dist/server/api-client-core/apis/cms/hubdb.generated.js.map +1 -1
  56. package/dist/server/api-client-core/apis/cms/media-bridge-types.generated.d.ts +0 -153
  57. package/dist/server/api-client-core/apis/cms/media-bridge.generated.js +7 -120
  58. package/dist/server/api-client-core/apis/cms/media-bridge.generated.js.map +1 -1
  59. package/dist/server/api-client-core/apis/cms/pages-types.generated.d.ts +4 -351
  60. package/dist/server/api-client-core/apis/cms/pages.generated.js +20 -227
  61. package/dist/server/api-client-core/apis/cms/pages.generated.js.map +1 -1
  62. package/dist/server/api-client-core/apis/cms/posts-types.generated.d.ts +1 -128
  63. package/dist/server/api-client-core/apis/cms/posts.generated.js +8 -81
  64. package/dist/server/api-client-core/apis/cms/posts.generated.js.map +1 -1
  65. package/dist/server/api-client-core/apis/cms/source-code-types.generated.d.ts +0 -35
  66. package/dist/server/api-client-core/apis/cms/source-code.generated.js +0 -29
  67. package/dist/server/api-client-core/apis/cms/source-code.generated.js.map +1 -1
  68. package/dist/server/api-client-core/apis/cms/tags-types.generated.d.ts +0 -77
  69. package/dist/server/api-client-core/apis/cms/tags.generated.js +6 -55
  70. package/dist/server/api-client-core/apis/cms/tags.generated.js.map +1 -1
  71. package/dist/server/api-client-core/apis/cms/url-mappings-types.generated.d.ts +0 -14
  72. package/dist/server/api-client-core/apis/cms/url-mappings.generated.js +0 -5
  73. package/dist/server/api-client-core/apis/cms/url-mappings.generated.js.map +1 -1
  74. package/dist/server/api-client-core/apis/cms/url-redirects-types.generated.d.ts +0 -21
  75. package/dist/server/api-client-core/apis/cms/url-redirects.generated.js +1 -7
  76. package/dist/server/api-client-core/apis/cms/url-redirects.generated.js.map +1 -1
  77. package/dist/server/api-client-core/apis/communication-preferences/subscriptions-types.generated.d.ts +0 -35
  78. package/dist/server/api-client-core/apis/communication-preferences/subscriptions.generated.js +1 -29
  79. package/dist/server/api-client-core/apis/communication-preferences/subscriptions.generated.js.map +1 -1
  80. package/dist/server/api-client-core/apis/conversations/custom-channels-types.generated.d.ts +0 -52
  81. package/dist/server/api-client-core/apis/conversations/custom-channels.generated.js +17 -56
  82. package/dist/server/api-client-core/apis/conversations/custom-channels.generated.js.map +1 -1
  83. package/dist/server/api-client-core/apis/conversations/visitor-identification-types.generated.d.ts +1 -11
  84. package/dist/server/api-client-core/apis/conversations/visitor-identification.generated.js +1 -2
  85. package/dist/server/api-client-core/apis/conversations/visitor-identification.generated.js.map +1 -1
  86. package/dist/server/api-client-core/apis/conversations-types.generated.d.ts +0 -35
  87. package/dist/server/api-client-core/apis/conversations.generated.js +1 -16
  88. package/dist/server/api-client-core/apis/conversations.generated.js.map +1 -1
  89. package/dist/server/api-client-core/apis/crm/app-uninstalls-types.generated.d.ts +1 -11
  90. package/dist/server/api-client-core/apis/crm/app-uninstalls.generated.js +1 -2
  91. package/dist/server/api-client-core/apis/crm/app-uninstalls.generated.js.map +1 -1
  92. package/dist/server/api-client-core/apis/crm/appointments-types.generated.d.ts +2 -88
  93. package/dist/server/api-client-core/apis/crm/appointments.generated.js +12 -75
  94. package/dist/server/api-client-core/apis/crm/appointments.generated.js.map +1 -1
  95. package/dist/server/api-client-core/apis/crm/associations-schema-types.generated.d.ts +0 -42
  96. package/dist/server/api-client-core/apis/crm/associations-schema.generated.js +4 -46
  97. package/dist/server/api-client-core/apis/crm/associations-schema.generated.js.map +1 -1
  98. package/dist/server/api-client-core/apis/crm/associations-types.generated.d.ts +0 -56
  99. package/dist/server/api-client-core/apis/crm/associations.generated.js +13 -67
  100. package/dist/server/api-client-core/apis/crm/associations.generated.js.map +1 -1
  101. package/dist/server/api-client-core/apis/crm/calling-extensions-types.generated.d.ts +0 -70
  102. package/dist/server/api-client-core/apis/crm/calling-extensions.generated.js +1 -29
  103. package/dist/server/api-client-core/apis/crm/calling-extensions.generated.js.map +1 -1
  104. package/dist/server/api-client-core/apis/crm/calls-types.generated.d.ts +1 -72
  105. package/dist/server/api-client-core/apis/crm/calls.generated.js +6 -41
  106. package/dist/server/api-client-core/apis/crm/calls.generated.js.map +1 -1
  107. package/dist/server/api-client-core/apis/crm/carts-types.generated.d.ts +1 -72
  108. package/dist/server/api-client-core/apis/crm/carts.generated.js +6 -41
  109. package/dist/server/api-client-core/apis/crm/carts.generated.js.map +1 -1
  110. package/dist/server/api-client-core/apis/crm/commerce-payments-types.generated.d.ts +1 -72
  111. package/dist/server/api-client-core/apis/crm/commerce-payments.generated.js +6 -41
  112. package/dist/server/api-client-core/apis/crm/commerce-payments.generated.js.map +1 -1
  113. package/dist/server/api-client-core/apis/crm/commerce-subscriptions-types.generated.d.ts +1 -72
  114. package/dist/server/api-client-core/apis/crm/commerce-subscriptions.generated.js +6 -41
  115. package/dist/server/api-client-core/apis/crm/commerce-subscriptions.generated.js.map +1 -1
  116. package/dist/server/api-client-core/apis/crm/communications-types.generated.d.ts +1 -72
  117. package/dist/server/api-client-core/apis/crm/communications.generated.js +6 -41
  118. package/dist/server/api-client-core/apis/crm/communications.generated.js.map +1 -1
  119. package/dist/server/api-client-core/apis/crm/companies-types.generated.d.ts +1 -79
  120. package/dist/server/api-client-core/apis/crm/companies.generated.js +6 -42
  121. package/dist/server/api-client-core/apis/crm/companies.generated.js.map +1 -1
  122. package/dist/server/api-client-core/apis/crm/contacts-types.generated.d.ts +1 -82
  123. package/dist/server/api-client-core/apis/crm/contacts.generated.js +6 -43
  124. package/dist/server/api-client-core/apis/crm/contacts.generated.js.map +1 -1
  125. package/dist/server/api-client-core/apis/crm/contracts-types.generated.d.ts +3 -76
  126. package/dist/server/api-client-core/apis/crm/contracts.generated.js +3 -38
  127. package/dist/server/api-client-core/apis/crm/contracts.generated.js.map +1 -1
  128. package/dist/server/api-client-core/apis/crm/courses-types.generated.d.ts +1 -72
  129. package/dist/server/api-client-core/apis/crm/courses.generated.js +6 -41
  130. package/dist/server/api-client-core/apis/crm/courses.generated.js.map +1 -1
  131. package/dist/server/api-client-core/apis/crm/custom-objects-types.generated.d.ts +2 -81
  132. package/dist/server/api-client-core/apis/crm/custom-objects.generated.js +4 -63
  133. package/dist/server/api-client-core/apis/crm/custom-objects.generated.js.map +1 -1
  134. package/dist/server/api-client-core/apis/crm/deal-splits-types.generated.d.ts +0 -7
  135. package/dist/server/api-client-core/apis/crm/deal-splits.generated.js +1 -4
  136. package/dist/server/api-client-core/apis/crm/deal-splits.generated.js.map +1 -1
  137. package/dist/server/api-client-core/apis/crm/deals-types.generated.d.ts +1 -79
  138. package/dist/server/api-client-core/apis/crm/deals.generated.js +6 -42
  139. package/dist/server/api-client-core/apis/crm/deals.generated.js.map +1 -1
  140. package/dist/server/api-client-core/apis/crm/discounts-types.generated.d.ts +1 -69
  141. package/dist/server/api-client-core/apis/crm/discounts.generated.js +6 -41
  142. package/dist/server/api-client-core/apis/crm/discounts.generated.js.map +1 -1
  143. package/dist/server/api-client-core/apis/crm/emails-types.generated.d.ts +1 -72
  144. package/dist/server/api-client-core/apis/crm/emails.generated.js +6 -41
  145. package/dist/server/api-client-core/apis/crm/emails.generated.js.map +1 -1
  146. package/dist/server/api-client-core/apis/crm/exports-types.generated.d.ts +0 -7
  147. package/dist/server/api-client-core/apis/crm/exports.generated.js +0 -1
  148. package/dist/server/api-client-core/apis/crm/exports.generated.js.map +1 -1
  149. package/dist/server/api-client-core/apis/crm/feedback-submissions-types.generated.d.ts +1 -23
  150. package/dist/server/api-client-core/apis/crm/feedback-submissions.generated.js +1 -23
  151. package/dist/server/api-client-core/apis/crm/feedback-submissions.generated.js.map +1 -1
  152. package/dist/server/api-client-core/apis/crm/fees-types.generated.d.ts +1 -72
  153. package/dist/server/api-client-core/apis/crm/fees.generated.js +6 -41
  154. package/dist/server/api-client-core/apis/crm/fees.generated.js.map +1 -1
  155. package/dist/server/api-client-core/apis/crm/goal-targets-types.generated.d.ts +1 -72
  156. package/dist/server/api-client-core/apis/crm/goal-targets.generated.js +6 -41
  157. package/dist/server/api-client-core/apis/crm/goal-targets.generated.js.map +1 -1
  158. package/dist/server/api-client-core/apis/crm/imports-types.generated.d.ts +0 -12
  159. package/dist/server/api-client-core/apis/crm/imports.generated.js +0 -5
  160. package/dist/server/api-client-core/apis/crm/imports.generated.js.map +1 -1
  161. package/dist/server/api-client-core/apis/crm/invoices-types.generated.d.ts +1 -72
  162. package/dist/server/api-client-core/apis/crm/invoices.generated.js +6 -41
  163. package/dist/server/api-client-core/apis/crm/invoices.generated.js.map +1 -1
  164. package/dist/server/api-client-core/apis/crm/leads-types.generated.d.ts +1 -72
  165. package/dist/server/api-client-core/apis/crm/leads.generated.js +6 -41
  166. package/dist/server/api-client-core/apis/crm/leads.generated.js.map +1 -1
  167. package/dist/server/api-client-core/apis/crm/line-items-types.generated.d.ts +1 -72
  168. package/dist/server/api-client-core/apis/crm/line-items.generated.js +6 -41
  169. package/dist/server/api-client-core/apis/crm/line-items.generated.js.map +1 -1
  170. package/dist/server/api-client-core/apis/crm/listings-types.generated.d.ts +1 -72
  171. package/dist/server/api-client-core/apis/crm/listings.generated.js +6 -41
  172. package/dist/server/api-client-core/apis/crm/listings.generated.js.map +1 -1
  173. package/dist/server/api-client-core/apis/crm/lists-types.generated.d.ts +0 -108
  174. package/dist/server/api-client-core/apis/crm/lists.generated.js +0 -49
  175. package/dist/server/api-client-core/apis/crm/lists.generated.js.map +1 -1
  176. package/dist/server/api-client-core/apis/crm/meetings-types.generated.d.ts +1 -72
  177. package/dist/server/api-client-core/apis/crm/meetings.generated.js +6 -41
  178. package/dist/server/api-client-core/apis/crm/meetings.generated.js.map +1 -1
  179. package/dist/server/api-client-core/apis/crm/notes-types.generated.d.ts +1 -72
  180. package/dist/server/api-client-core/apis/crm/notes.generated.js +6 -41
  181. package/dist/server/api-client-core/apis/crm/notes.generated.js.map +1 -1
  182. package/dist/server/api-client-core/apis/crm/objects-types.generated.d.ts +0 -49
  183. package/dist/server/api-client-core/apis/crm/objects.generated.js +5 -39
  184. package/dist/server/api-client-core/apis/crm/objects.generated.js.map +1 -1
  185. package/dist/server/api-client-core/apis/crm/orders-types.generated.d.ts +1 -72
  186. package/dist/server/api-client-core/apis/crm/orders.generated.js +6 -41
  187. package/dist/server/api-client-core/apis/crm/orders.generated.js.map +1 -1
  188. package/dist/server/api-client-core/apis/crm/partner-clients-types.generated.d.ts +1 -37
  189. package/dist/server/api-client-core/apis/crm/partner-clients.generated.js +6 -36
  190. package/dist/server/api-client-core/apis/crm/partner-clients.generated.js.map +1 -1
  191. package/dist/server/api-client-core/apis/crm/partner-services-types.generated.d.ts +1 -37
  192. package/dist/server/api-client-core/apis/crm/partner-services.generated.js +6 -36
  193. package/dist/server/api-client-core/apis/crm/partner-services.generated.js.map +1 -1
  194. package/dist/server/api-client-core/apis/crm/pipelines-types.generated.d.ts +0 -55
  195. package/dist/server/api-client-core/apis/crm/pipelines.generated.js +1 -65
  196. package/dist/server/api-client-core/apis/crm/pipelines.generated.js.map +1 -1
  197. package/dist/server/api-client-core/apis/crm/postal-mail-types.generated.d.ts +1 -71
  198. package/dist/server/api-client-core/apis/crm/postal-mail.generated.js +6 -41
  199. package/dist/server/api-client-core/apis/crm/postal-mail.generated.js.map +1 -1
  200. package/dist/server/api-client-core/apis/crm/products-types.generated.d.ts +1 -72
  201. package/dist/server/api-client-core/apis/crm/products.generated.js +6 -41
  202. package/dist/server/api-client-core/apis/crm/products.generated.js.map +1 -1
  203. package/dist/server/api-client-core/apis/crm/projects-types.generated.d.ts +1 -79
  204. package/dist/server/api-client-core/apis/crm/projects.generated.js +6 -42
  205. package/dist/server/api-client-core/apis/crm/projects.generated.js.map +1 -1
  206. package/dist/server/api-client-core/apis/crm/properties-types.generated.d.ts +0 -56
  207. package/dist/server/api-client-core/apis/crm/properties.generated.js +5 -45
  208. package/dist/server/api-client-core/apis/crm/properties.generated.js.map +1 -1
  209. package/dist/server/api-client-core/apis/crm/property-validations-types.generated.d.ts +0 -7
  210. package/dist/server/api-client-core/apis/crm/property-validations.generated.js +1 -9
  211. package/dist/server/api-client-core/apis/crm/property-validations.generated.js.map +1 -1
  212. package/dist/server/api-client-core/apis/crm/public-app-crm-cards-types.generated.d.ts +0 -28
  213. package/dist/server/api-client-core/apis/crm/public-app-crm-cards.generated.js +1 -20
  214. package/dist/server/api-client-core/apis/crm/public-app-crm-cards.generated.js.map +1 -1
  215. package/dist/server/api-client-core/apis/crm/public-app-feature-flags-types.generated.d.ts +1 -44
  216. package/dist/server/api-client-core/apis/crm/public-app-feature-flags.generated.js +1 -40
  217. package/dist/server/api-client-core/apis/crm/public-app-feature-flags.generated.js.map +1 -1
  218. package/dist/server/api-client-core/apis/crm/quotes-types.generated.d.ts +1 -72
  219. package/dist/server/api-client-core/apis/crm/quotes.generated.js +6 -41
  220. package/dist/server/api-client-core/apis/crm/quotes.generated.js.map +1 -1
  221. package/dist/server/api-client-core/apis/crm/schemas-types.generated.d.ts +0 -35
  222. package/dist/server/api-client-core/apis/crm/schemas.generated.js +1 -18
  223. package/dist/server/api-client-core/apis/crm/schemas.generated.js.map +1 -1
  224. package/dist/server/api-client-core/apis/crm/services-types.generated.d.ts +1 -72
  225. package/dist/server/api-client-core/apis/crm/services.generated.js +6 -41
  226. package/dist/server/api-client-core/apis/crm/services.generated.js.map +1 -1
  227. package/dist/server/api-client-core/apis/crm/tasks-types.generated.d.ts +1 -72
  228. package/dist/server/api-client-core/apis/crm/tasks.generated.js +6 -41
  229. package/dist/server/api-client-core/apis/crm/tasks.generated.js.map +1 -1
  230. package/dist/server/api-client-core/apis/crm/taxes-types.generated.d.ts +1 -72
  231. package/dist/server/api-client-core/apis/crm/taxes.generated.js +6 -41
  232. package/dist/server/api-client-core/apis/crm/taxes.generated.js.map +1 -1
  233. package/dist/server/api-client-core/apis/crm/tickets-types.generated.d.ts +1 -79
  234. package/dist/server/api-client-core/apis/crm/tickets.generated.js +6 -42
  235. package/dist/server/api-client-core/apis/crm/tickets.generated.js.map +1 -1
  236. package/dist/server/api-client-core/apis/crm/timeline-types.generated.d.ts +2 -25
  237. package/dist/server/api-client-core/apis/crm/timeline.generated.js +2 -6
  238. package/dist/server/api-client-core/apis/crm/timeline.generated.js.map +1 -1
  239. package/dist/server/api-client-core/apis/crm/transcriptions-types.generated.d.ts +1 -21
  240. package/dist/server/api-client-core/apis/crm/transcriptions.generated.js +2 -6
  241. package/dist/server/api-client-core/apis/crm/transcriptions.generated.js.map +1 -1
  242. package/dist/server/api-client-core/apis/crm/users-types.generated.d.ts +1 -72
  243. package/dist/server/api-client-core/apis/crm/users.generated.js +6 -41
  244. package/dist/server/api-client-core/apis/crm/users.generated.js.map +1 -1
  245. package/dist/server/api-client-core/apis/crm/video-conferencing-extension-types.generated.d.ts +0 -14
  246. package/dist/server/api-client-core/apis/crm/video-conferencing-extension.generated.js +1 -8
  247. package/dist/server/api-client-core/apis/crm/video-conferencing-extension.generated.js.map +1 -1
  248. package/dist/server/api-client-core/apis/events/manage-event-definitions-types.generated.d.ts +0 -48
  249. package/dist/server/api-client-core/apis/events/manage-event-definitions.generated.js +1 -23
  250. package/dist/server/api-client-core/apis/events/manage-event-definitions.generated.js.map +1 -1
  251. package/dist/server/api-client-core/apis/events/send-event-completions-types.generated.d.ts +2 -20
  252. package/dist/server/api-client-core/apis/events/send-event-completions.generated.js +2 -3
  253. package/dist/server/api-client-core/apis/events/send-event-completions.generated.js.map +1 -1
  254. package/dist/server/api-client-core/apis/files-types.generated.d.ts +0 -84
  255. package/dist/server/api-client-core/apis/files.generated.js +2 -28
  256. package/dist/server/api-client-core/apis/files.generated.js.map +1 -1
  257. package/dist/server/api-client-core/apis/marketing/campaigns-public-api-types.generated.d.ts +0 -98
  258. package/dist/server/api-client-core/apis/marketing/campaigns-public-api.generated.js +24 -79
  259. package/dist/server/api-client-core/apis/marketing/campaigns-public-api.generated.js.map +1 -1
  260. package/dist/server/api-client-core/apis/marketing/marketing-emails-types.generated.d.ts +0 -76
  261. package/dist/server/api-client-core/apis/marketing/marketing-emails.generated.js +0 -27
  262. package/dist/server/api-client-core/apis/marketing/marketing-emails.generated.js.map +1 -1
  263. package/dist/server/api-client-core/apis/marketing/marketing-events-types.generated.d.ts +4 -183
  264. package/dist/server/api-client-core/apis/marketing/marketing-events.generated.js +6 -117
  265. package/dist/server/api-client-core/apis/marketing/marketing-events.generated.js.map +1 -1
  266. package/dist/server/api-client-core/apis/marketing/single-send-types.generated.d.ts +1 -11
  267. package/dist/server/api-client-core/apis/marketing/single-send.generated.js +1 -2
  268. package/dist/server/api-client-core/apis/marketing/single-send.generated.js.map +1 -1
  269. package/dist/server/api-client-core/apis/marketing/transactional-single-send-types.generated.d.ts +1 -30
  270. package/dist/server/api-client-core/apis/marketing/transactional-single-send.generated.js +2 -5
  271. package/dist/server/api-client-core/apis/marketing/transactional-single-send.generated.js.map +1 -1
  272. package/dist/server/api-client-core/apis/scheduler/meetings-types.generated.d.ts +1 -17
  273. package/dist/server/api-client-core/apis/scheduler/meetings.generated.js +1 -7
  274. package/dist/server/api-client-core/apis/scheduler/meetings.generated.js.map +1 -1
  275. package/dist/server/api-client-core/apis/settings/multicurrency-types.generated.d.ts +0 -49
  276. package/dist/server/api-client-core/apis/settings/multicurrency.generated.js +3 -15
  277. package/dist/server/api-client-core/apis/settings/multicurrency.generated.js.map +1 -1
  278. package/dist/server/api-client-core/apis/settings/user-provisioning-types.generated.d.ts +0 -20
  279. package/dist/server/api-client-core/apis/settings/user-provisioning.generated.js +1 -11
  280. package/dist/server/api-client-core/apis/settings/user-provisioning.generated.js.map +1 -1
  281. package/dist/server/api-client-core/apis/webhooks-journal-types.generated.d.ts +0 -42
  282. package/dist/server/api-client-core/apis/webhooks-journal.generated.js +0 -6
  283. package/dist/server/api-client-core/apis/webhooks-journal.generated.js.map +1 -1
  284. package/dist/server/api-client-core/apis/webhooks-types.generated.d.ts +0 -84
  285. package/dist/server/api-client-core/apis/webhooks.generated.js +1 -31
  286. package/dist/server/api-client-core/apis/webhooks.generated.js.map +1 -1
  287. package/dist/server/hono/hubspot-connect-routes/auth-init-session.js +0 -1
  288. package/dist/server/hono/hubspot-connect-routes/auth-init-session.js.map +1 -1
  289. package/package.json +19 -4
  290. package/src/browser/app-connect-controller/connect-start.test.ts +198 -1
  291. package/src/browser/app-connect-controller/create.test.ts +116 -0
  292. package/src/browser/app-connect-controller/create.ts +12 -2
  293. package/src/browser/app-connect-controller/disconnect.test.ts +166 -0
  294. package/src/browser/app-connect-controller/disconnect.ts +2 -1
  295. package/src/browser/app-connect-controller/init.test.ts +1 -0
  296. package/src/browser/app-connect-controller/oauth-complete.test.ts +1 -0
  297. package/src/browser/app-connect-controller/oauth-popup.test.ts +1 -0
  298. package/src/browser/app-connect-controller/oauth-popup.ts +10 -3
  299. package/src/browser/app-connect-controller/refresh.test.ts +411 -0
  300. package/src/browser/app-connect-controller/refresh.ts +4 -1
  301. package/src/browser/app-connect-controller/types.ts +3 -1
  302. package/src/browser/app-connect-controller/utils/session-utils.test.ts +1 -0
  303. package/src/browser/app-connect-controller/view-state.test.ts +1 -0
  304. package/src/browser/app-connect-controller/view-state.ts +1 -0
  305. package/src/browser/index.ts +1 -0
  306. package/src/browser/react/components/AppConnectHeader/AppConnectHeader.css.ts +16 -24
  307. package/src/browser/react/components/AppConnectHeader/AppConnectHeader.test.tsx +55 -0
  308. package/src/browser/react/components/AppConnectHeader/AppConnectHeader.tsx +46 -17
  309. package/src/browser/react/components/Badge/Badge.css.ts +50 -0
  310. package/src/browser/react/components/Badge/Badge.test.tsx +97 -0
  311. package/src/browser/react/components/Badge/Badge.tsx +36 -0
  312. package/src/browser/react/components/Badge/index.ts +1 -0
  313. package/src/browser/react/components/Button/Button.css.ts +132 -11
  314. package/src/browser/react/components/Button/Button.test.tsx +168 -0
  315. package/src/browser/react/components/Button/Button.tsx +33 -5
  316. package/src/browser/react/components/Button/index.ts +7 -0
  317. package/src/browser/react/components/Card/Card.css.ts +55 -0
  318. package/src/browser/react/components/Card/Card.test.tsx +152 -0
  319. package/src/browser/react/components/Card/Card.tsx +79 -0
  320. package/src/browser/react/components/Card/index.ts +10 -0
  321. package/src/browser/react/components/Checkbox/Checkbox.css.ts +104 -0
  322. package/src/browser/react/components/Checkbox/Checkbox.test.tsx +76 -0
  323. package/src/browser/react/components/Checkbox/Checkbox.tsx +61 -0
  324. package/src/browser/react/components/Checkbox/index.ts +1 -0
  325. package/src/browser/react/components/ConnectButton/ConnectButton.css.ts +8 -3
  326. package/src/browser/react/components/ConnectButton/ConnectButton.tsx +10 -5
  327. package/src/browser/react/components/HubSpotAppConnect/HubSpotAppConnect.test.tsx +159 -0
  328. package/src/browser/react/components/Input/Input.css.ts +84 -0
  329. package/src/browser/react/components/Input/Input.test.tsx +94 -0
  330. package/src/browser/react/components/Input/Input.tsx +61 -0
  331. package/src/browser/react/components/Input/index.ts +1 -0
  332. package/src/browser/react/components/Link/Link.css.ts +35 -0
  333. package/src/browser/react/components/Link/Link.test.tsx +102 -0
  334. package/src/browser/react/components/Link/Link.tsx +32 -0
  335. package/src/browser/react/components/Link/index.ts +1 -0
  336. package/src/browser/react/components/RadioGroup/RadioGroup.css.ts +117 -0
  337. package/src/browser/react/components/RadioGroup/RadioGroup.test.tsx +95 -0
  338. package/src/browser/react/components/RadioGroup/RadioGroup.tsx +109 -0
  339. package/src/browser/react/components/RadioGroup/index.ts +5 -0
  340. package/src/browser/react/components/Select/Select.css.ts +95 -0
  341. package/src/browser/react/components/Select/Select.test.tsx +105 -0
  342. package/src/browser/react/components/Select/Select.tsx +84 -0
  343. package/src/browser/react/components/Select/index.ts +1 -0
  344. package/src/browser/react/components/ShareButton/ShareButton.css.ts +0 -42
  345. package/src/browser/react/components/ShareButton/ShareButton.tsx +5 -3
  346. package/src/browser/react/components/Text/Text.css.ts +26 -0
  347. package/src/browser/react/components/Text/Text.test.tsx +63 -0
  348. package/src/browser/react/components/Text/Text.tsx +61 -0
  349. package/src/browser/react/components/Text/index.ts +6 -0
  350. package/src/browser/react/components/TextArea/TextArea.css.ts +86 -0
  351. package/src/browser/react/components/TextArea/TextArea.test.tsx +93 -0
  352. package/src/browser/react/components/TextArea/TextArea.tsx +60 -0
  353. package/src/browser/react/components/TextArea/index.ts +1 -0
  354. package/src/browser/react/components/icons/BuildingIcon.tsx +27 -0
  355. package/src/browser/react/components/icons/PlugIcon.tsx +24 -0
  356. package/src/browser/react/hooks.test.tsx +116 -0
  357. package/src/browser/react/index.ts +67 -0
  358. package/src/browser/shadow-tokens.ts +7 -0
  359. package/src/browser/theme.css.ts +24 -3
  360. package/src/browser/types.ts +25 -0
  361. package/src/browser/typography-tokens.ts +27 -0
  362. package/src/browser/vitest.setup.ts +1 -0
  363. package/src/server/api-client-core/apis/.read-only-api-snapshot.json +2232 -0
  364. package/src/server/api-client-core/apis/auth/oauth-types.generated.ts +0 -12
  365. package/src/server/api-client-core/apis/auth/oauth.generated.ts +0 -10
  366. package/src/server/api-client-core/apis/automation/actions-types.generated.ts +1 -82
  367. package/src/server/api-client-core/apis/automation/actions.generated.ts +1 -81
  368. package/src/server/api-client-core/apis/automation/sequences-types.generated.ts +0 -9
  369. package/src/server/api-client-core/apis/automation/sequences.generated.ts +0 -5
  370. package/src/server/api-client-core/apis/cms/authors-types.generated.ts +0 -87
  371. package/src/server/api-client-core/apis/cms/authors.generated.ts +0 -55
  372. package/src/server/api-client-core/apis/cms/blog-settings-types.generated.ts +1 -47
  373. package/src/server/api-client-core/apis/cms/blog-settings.generated.ts +1 -27
  374. package/src/server/api-client-core/apis/cms/hubdb-types.generated.ts +0 -135
  375. package/src/server/api-client-core/apis/cms/hubdb.generated.ts +0 -100
  376. package/src/server/api-client-core/apis/cms/media-bridge-types.generated.ts +0 -191
  377. package/src/server/api-client-core/apis/cms/media-bridge.generated.ts +0 -147
  378. package/src/server/api-client-core/apis/cms/pages-types.generated.ts +4 -413
  379. package/src/server/api-client-core/apis/cms/pages.generated.ts +4 -270
  380. package/src/server/api-client-core/apis/cms/posts-types.generated.ts +1 -140
  381. package/src/server/api-client-core/apis/cms/posts.generated.ts +1 -91
  382. package/src/server/api-client-core/apis/cms/source-code-types.generated.ts +0 -35
  383. package/src/server/api-client-core/apis/cms/source-code.generated.ts +0 -24
  384. package/src/server/api-client-core/apis/cms/tags-types.generated.ts +0 -85
  385. package/src/server/api-client-core/apis/cms/tags.generated.ts +0 -55
  386. package/src/server/api-client-core/apis/cms/url-mappings-types.generated.ts +0 -14
  387. package/src/server/api-client-core/apis/cms/url-mappings.generated.ts +0 -9
  388. package/src/server/api-client-core/apis/cms/url-redirects-types.generated.ts +0 -21
  389. package/src/server/api-client-core/apis/cms/url-redirects.generated.ts +0 -10
  390. package/src/server/api-client-core/apis/communication-preferences/subscriptions-types.generated.ts +0 -43
  391. package/src/server/api-client-core/apis/communication-preferences/subscriptions.generated.ts +0 -44
  392. package/src/server/api-client-core/apis/conversations/custom-channels-types.generated.ts +0 -54
  393. package/src/server/api-client-core/apis/conversations/custom-channels.generated.ts +0 -54
  394. package/src/server/api-client-core/apis/conversations/visitor-identification-types.generated.ts +1 -13
  395. package/src/server/api-client-core/apis/conversations/visitor-identification.generated.ts +1 -5
  396. package/src/server/api-client-core/apis/conversations-types.generated.ts +0 -41
  397. package/src/server/api-client-core/apis/conversations.generated.ts +0 -25
  398. package/src/server/api-client-core/apis/crm/app-uninstalls-types.generated.ts +1 -11
  399. package/src/server/api-client-core/apis/crm/app-uninstalls.generated.ts +1 -4
  400. package/src/server/api-client-core/apis/crm/appointments-types.generated.ts +2 -90
  401. package/src/server/api-client-core/apis/crm/appointments.generated.ts +2 -86
  402. package/src/server/api-client-core/apis/crm/associations-schema-types.generated.ts +0 -42
  403. package/src/server/api-client-core/apis/crm/associations-schema.generated.ts +0 -63
  404. package/src/server/api-client-core/apis/crm/associations-types.generated.ts +0 -60
  405. package/src/server/api-client-core/apis/crm/associations.generated.ts +0 -85
  406. package/src/server/api-client-core/apis/crm/calling-extensions-types.generated.ts +0 -90
  407. package/src/server/api-client-core/apis/crm/calling-extensions.generated.ts +0 -45
  408. package/src/server/api-client-core/apis/crm/calls-types.generated.ts +1 -72
  409. package/src/server/api-client-core/apis/crm/calls.generated.ts +1 -58
  410. package/src/server/api-client-core/apis/crm/carts-types.generated.ts +1 -72
  411. package/src/server/api-client-core/apis/crm/carts.generated.ts +1 -58
  412. package/src/server/api-client-core/apis/crm/commerce-payments-types.generated.ts +1 -72
  413. package/src/server/api-client-core/apis/crm/commerce-payments.generated.ts +1 -67
  414. package/src/server/api-client-core/apis/crm/commerce-subscriptions-types.generated.ts +1 -72
  415. package/src/server/api-client-core/apis/crm/commerce-subscriptions.generated.ts +1 -61
  416. package/src/server/api-client-core/apis/crm/communications-types.generated.ts +1 -72
  417. package/src/server/api-client-core/apis/crm/communications.generated.ts +1 -67
  418. package/src/server/api-client-core/apis/crm/companies-types.generated.ts +1 -79
  419. package/src/server/api-client-core/apis/crm/companies.generated.ts +1 -60
  420. package/src/server/api-client-core/apis/crm/contacts-types.generated.ts +1 -82
  421. package/src/server/api-client-core/apis/crm/contacts.generated.ts +1 -62
  422. package/src/server/api-client-core/apis/crm/contracts-types.generated.ts +3 -84
  423. package/src/server/api-client-core/apis/crm/contracts.generated.ts +3 -62
  424. package/src/server/api-client-core/apis/crm/courses-types.generated.ts +1 -72
  425. package/src/server/api-client-core/apis/crm/courses.generated.ts +1 -58
  426. package/src/server/api-client-core/apis/crm/custom-objects-types.generated.ts +2 -81
  427. package/src/server/api-client-core/apis/crm/custom-objects.generated.ts +2 -81
  428. package/src/server/api-client-core/apis/crm/deal-splits-types.generated.ts +0 -7
  429. package/src/server/api-client-core/apis/crm/deal-splits.generated.ts +0 -2
  430. package/src/server/api-client-core/apis/crm/deals-types.generated.ts +1 -79
  431. package/src/server/api-client-core/apis/crm/deals.generated.ts +1 -59
  432. package/src/server/api-client-core/apis/crm/discounts-types.generated.ts +1 -69
  433. package/src/server/api-client-core/apis/crm/discounts.generated.ts +1 -58
  434. package/src/server/api-client-core/apis/crm/emails-types.generated.ts +1 -72
  435. package/src/server/api-client-core/apis/crm/emails.generated.ts +1 -58
  436. package/src/server/api-client-core/apis/crm/exports-types.generated.ts +0 -7
  437. package/src/server/api-client-core/apis/crm/exports.generated.ts +0 -2
  438. package/src/server/api-client-core/apis/crm/feedback-submissions-types.generated.ts +1 -23
  439. package/src/server/api-client-core/apis/crm/feedback-submissions.generated.ts +1 -39
  440. package/src/server/api-client-core/apis/crm/fees-types.generated.ts +1 -72
  441. package/src/server/api-client-core/apis/crm/fees.generated.ts +1 -58
  442. package/src/server/api-client-core/apis/crm/goal-targets-types.generated.ts +1 -72
  443. package/src/server/api-client-core/apis/crm/goal-targets.generated.ts +1 -59
  444. package/src/server/api-client-core/apis/crm/imports-types.generated.ts +0 -12
  445. package/src/server/api-client-core/apis/crm/imports.generated.ts +0 -9
  446. package/src/server/api-client-core/apis/crm/invoices-types.generated.ts +1 -72
  447. package/src/server/api-client-core/apis/crm/invoices.generated.ts +1 -58
  448. package/src/server/api-client-core/apis/crm/leads-types.generated.ts +1 -72
  449. package/src/server/api-client-core/apis/crm/leads.generated.ts +1 -58
  450. package/src/server/api-client-core/apis/crm/line-items-types.generated.ts +1 -72
  451. package/src/server/api-client-core/apis/crm/line-items.generated.ts +1 -59
  452. package/src/server/api-client-core/apis/crm/listings-types.generated.ts +1 -72
  453. package/src/server/api-client-core/apis/crm/listings.generated.ts +1 -58
  454. package/src/server/api-client-core/apis/crm/lists-types.generated.ts +0 -128
  455. package/src/server/api-client-core/apis/crm/lists.generated.ts +0 -77
  456. package/src/server/api-client-core/apis/crm/meetings-types.generated.ts +1 -72
  457. package/src/server/api-client-core/apis/crm/meetings.generated.ts +1 -58
  458. package/src/server/api-client-core/apis/crm/notes-types.generated.ts +1 -72
  459. package/src/server/api-client-core/apis/crm/notes.generated.ts +1 -58
  460. package/src/server/api-client-core/apis/crm/objects-types.generated.ts +0 -49
  461. package/src/server/api-client-core/apis/crm/objects.generated.ts +0 -35
  462. package/src/server/api-client-core/apis/crm/orders-types.generated.ts +1 -72
  463. package/src/server/api-client-core/apis/crm/orders.generated.ts +1 -58
  464. package/src/server/api-client-core/apis/crm/partner-clients-types.generated.ts +1 -37
  465. package/src/server/api-client-core/apis/crm/partner-clients.generated.ts +1 -49
  466. package/src/server/api-client-core/apis/crm/partner-services-types.generated.ts +1 -37
  467. package/src/server/api-client-core/apis/crm/partner-services.generated.ts +1 -49
  468. package/src/server/api-client-core/apis/crm/pipelines-types.generated.ts +0 -59
  469. package/src/server/api-client-core/apis/crm/pipelines.generated.ts +0 -86
  470. package/src/server/api-client-core/apis/crm/postal-mail-types.generated.ts +1 -71
  471. package/src/server/api-client-core/apis/crm/postal-mail.generated.ts +2 -59
  472. package/src/server/api-client-core/apis/crm/products-types.generated.ts +1 -72
  473. package/src/server/api-client-core/apis/crm/products.generated.ts +1 -58
  474. package/src/server/api-client-core/apis/crm/projects-types.generated.ts +1 -79
  475. package/src/server/api-client-core/apis/crm/projects.generated.ts +1 -60
  476. package/src/server/api-client-core/apis/crm/properties-types.generated.ts +0 -56
  477. package/src/server/api-client-core/apis/crm/properties.generated.ts +0 -44
  478. package/src/server/api-client-core/apis/crm/property-validations-types.generated.ts +0 -9
  479. package/src/server/api-client-core/apis/crm/property-validations.generated.ts +0 -12
  480. package/src/server/api-client-core/apis/crm/public-app-crm-cards-types.generated.ts +0 -28
  481. package/src/server/api-client-core/apis/crm/public-app-crm-cards.generated.ts +0 -19
  482. package/src/server/api-client-core/apis/crm/public-app-feature-flags-types.generated.ts +1 -48
  483. package/src/server/api-client-core/apis/crm/public-app-feature-flags.generated.ts +1 -50
  484. package/src/server/api-client-core/apis/crm/quotes-types.generated.ts +1 -72
  485. package/src/server/api-client-core/apis/crm/quotes.generated.ts +1 -58
  486. package/src/server/api-client-core/apis/crm/schemas-types.generated.ts +0 -39
  487. package/src/server/api-client-core/apis/crm/schemas.generated.ts +0 -27
  488. package/src/server/api-client-core/apis/crm/services-types.generated.ts +1 -72
  489. package/src/server/api-client-core/apis/crm/services.generated.ts +1 -58
  490. package/src/server/api-client-core/apis/crm/tasks-types.generated.ts +1 -72
  491. package/src/server/api-client-core/apis/crm/tasks.generated.ts +1 -58
  492. package/src/server/api-client-core/apis/crm/taxes-types.generated.ts +1 -72
  493. package/src/server/api-client-core/apis/crm/taxes.generated.ts +1 -58
  494. package/src/server/api-client-core/apis/crm/tickets-types.generated.ts +1 -79
  495. package/src/server/api-client-core/apis/crm/tickets.generated.ts +1 -60
  496. package/src/server/api-client-core/apis/crm/timeline-types.generated.ts +2 -27
  497. package/src/server/api-client-core/apis/crm/timeline.generated.ts +2 -11
  498. package/src/server/api-client-core/apis/crm/transcriptions-types.generated.ts +1 -23
  499. package/src/server/api-client-core/apis/crm/transcriptions.generated.ts +1 -10
  500. package/src/server/api-client-core/apis/crm/users-types.generated.ts +1 -72
  501. package/src/server/api-client-core/apis/crm/users.generated.ts +1 -58
  502. package/src/server/api-client-core/apis/crm/video-conferencing-extension-types.generated.ts +0 -14
  503. package/src/server/api-client-core/apis/crm/video-conferencing-extension.generated.ts +0 -9
  504. package/src/server/api-client-core/apis/events/manage-event-definitions-types.generated.ts +0 -54
  505. package/src/server/api-client-core/apis/events/manage-event-definitions.generated.ts +0 -39
  506. package/src/server/api-client-core/apis/events/send-event-completions-types.generated.ts +2 -20
  507. package/src/server/api-client-core/apis/events/send-event-completions.generated.ts +2 -8
  508. package/src/server/api-client-core/apis/files-types.generated.ts +0 -90
  509. package/src/server/api-client-core/apis/files.generated.ts +0 -54
  510. package/src/server/api-client-core/apis/marketing/campaigns-public-api-types.generated.ts +0 -98
  511. package/src/server/api-client-core/apis/marketing/campaigns-public-api.generated.ts +0 -72
  512. package/src/server/api-client-core/apis/marketing/marketing-emails-types.generated.ts +0 -82
  513. package/src/server/api-client-core/apis/marketing/marketing-emails.generated.ts +0 -44
  514. package/src/server/api-client-core/apis/marketing/marketing-events-types.generated.ts +4 -213
  515. package/src/server/api-client-core/apis/marketing/marketing-events.generated.ts +4 -200
  516. package/src/server/api-client-core/apis/marketing/single-send-types.generated.ts +1 -11
  517. package/src/server/api-client-core/apis/marketing/single-send.generated.ts +1 -5
  518. package/src/server/api-client-core/apis/marketing/transactional-single-send-types.generated.ts +1 -32
  519. package/src/server/api-client-core/apis/marketing/transactional-single-send.generated.ts +1 -17
  520. package/src/server/api-client-core/apis/scheduler/meetings-types.generated.ts +1 -17
  521. package/src/server/api-client-core/apis/scheduler/meetings.generated.ts +1 -9
  522. package/src/server/api-client-core/apis/settings/multicurrency-types.generated.ts +0 -59
  523. package/src/server/api-client-core/apis/settings/multicurrency.generated.ts +0 -25
  524. package/src/server/api-client-core/apis/settings/user-provisioning-types.generated.ts +0 -20
  525. package/src/server/api-client-core/apis/settings/user-provisioning.generated.ts +0 -12
  526. package/src/server/api-client-core/apis/webhooks-journal-types.generated.ts +0 -54
  527. package/src/server/api-client-core/apis/webhooks-journal.generated.ts +0 -18
  528. package/src/server/api-client-core/apis/webhooks-types.generated.ts +0 -108
  529. package/src/server/api-client-core/apis/webhooks.generated.ts +0 -46
  530. package/src/server/hono/hono-request-handler.test.ts +280 -0
  531. package/src/server/hono/hubspot-connect-routes/auth-complete.test.ts +26 -0
  532. package/src/server/hono/hubspot-connect-routes/auth-init-session.ts +0 -1
  533. package/src/server/hono/hubspot-connect-routes/oauth-client.test.ts +296 -0
  534. package/src/server/hono/hubspot-connect-routes/whoami.test.ts +237 -0
  535. package/src/server/import-app-keys.test.ts +79 -0
  536. package/src/server/secure-start-core.test.ts +122 -0
  537. package/vitest.config.ts +21 -3
  538. package/dist/browser/HubSpotAppConnect-721kYr9d.js.map +0 -1
  539. package/dist/browser/assets/src/browser/react/components/Button/Button.css.ts.vanilla-Df16gUKx.css +0 -42
  540. package/dist/browser/assets/src/browser/react/components/ShareButton/ShareButton.css.ts.vanilla-CY8SC-0T.css +0 -40
  541. package/dist/browser/assets/src/browser/theme.css.ts.vanilla-D_GBwEeI.css +0 -12
  542. package/dist/browser/create-ULhURoJ_.js.map +0 -1
  543. package/dist/browser/theme.css-CJbxi5hC.js.map +0 -1
  544. package/dist/server/api-client-core/codegen-helpers/file-op-wrappers.js +0 -25
  545. package/dist/server/api-client-core/codegen-helpers/file-op-wrappers.js.map +0 -1
@@ -0,0 +1,95 @@
1
+ import { cleanup, fireEvent, render, screen } from '@testing-library/react';
2
+ import { afterEach, describe, expect, it, vi } from 'vitest';
3
+
4
+ import { RadioGroup } from './RadioGroup.tsx';
5
+
6
+ const options = [
7
+ { value: 'free', label: 'Free' },
8
+ { value: 'pro', label: 'Pro' },
9
+ { value: 'enterprise', label: 'Enterprise', disabled: true },
10
+ ];
11
+
12
+ afterEach(cleanup);
13
+
14
+ describe('RadioGroup', () => {
15
+ it('renders a radio input for each option', () => {
16
+ render(<RadioGroup name="plan" options={options} />);
17
+ expect(screen.getAllByRole('radio')).toHaveLength(3);
18
+ });
19
+
20
+ it('renders each option label', () => {
21
+ render(<RadioGroup name="plan" options={options} />);
22
+ expect(screen.getByLabelText('Free')).toBeInTheDocument();
23
+ expect(screen.getByLabelText('Pro')).toBeInTheDocument();
24
+ expect(screen.getByLabelText('Enterprise')).toBeInTheDocument();
25
+ });
26
+
27
+ it('renders group label as legend', () => {
28
+ render(<RadioGroup name="plan" options={options} label="Choose a plan" />);
29
+ expect(screen.getByText('Choose a plan')).toBeInTheDocument();
30
+ });
31
+
32
+ it('renders hint text', () => {
33
+ render(
34
+ <RadioGroup name="plan" options={options} hint="Select one option." />
35
+ );
36
+ expect(screen.getByText('Select one option.')).toBeInTheDocument();
37
+ });
38
+
39
+ it('renders error text', () => {
40
+ render(
41
+ <RadioGroup name="plan" options={options} error="Please select a plan." />
42
+ );
43
+ expect(screen.getByText('Please select a plan.')).toBeInTheDocument();
44
+ });
45
+
46
+ it('hides hint when error is also provided', () => {
47
+ render(
48
+ <RadioGroup name="plan" options={options} hint="Hint" error="Error" />
49
+ );
50
+ expect(screen.queryByText('Hint')).not.toBeInTheDocument();
51
+ expect(screen.getByText('Error')).toBeInTheDocument();
52
+ });
53
+
54
+ it('disables individual option', () => {
55
+ render(<RadioGroup name="plan" options={options} />);
56
+ expect(screen.getByLabelText('Enterprise')).toBeDisabled();
57
+ });
58
+
59
+ it('disables all options when group disabled is true', () => {
60
+ render(<RadioGroup name="plan" options={options} disabled />);
61
+ screen.getAllByRole('radio').forEach((r) => expect(r).toBeDisabled());
62
+ });
63
+
64
+ it('respects controlled value', () => {
65
+ render(
66
+ <RadioGroup
67
+ name="plan"
68
+ options={options}
69
+ value="pro"
70
+ onChange={vi.fn()}
71
+ />
72
+ );
73
+ expect(screen.getByLabelText('Pro')).toBeChecked();
74
+ expect(screen.getByLabelText('Free')).not.toBeChecked();
75
+ });
76
+
77
+ it('respects defaultValue for uncontrolled usage', () => {
78
+ render(<RadioGroup name="plan" options={options} defaultValue="free" />);
79
+ expect(screen.getByLabelText('Free')).toBeChecked();
80
+ });
81
+
82
+ it('calls onChange with the selected value string', () => {
83
+ const onChange = vi.fn();
84
+ render(<RadioGroup name="plan" options={options} onChange={onChange} />);
85
+ fireEvent.click(screen.getByLabelText('Pro'));
86
+ expect(onChange).toHaveBeenCalledWith('pro');
87
+ });
88
+
89
+ it('forwards custom className', () => {
90
+ const { container } = render(
91
+ <RadioGroup name="plan" options={options} className="custom" />
92
+ );
93
+ expect(container.firstChild).toHaveClass('custom');
94
+ });
95
+ });
@@ -0,0 +1,109 @@
1
+ import { useId } from 'react';
2
+
3
+ import * as styles from './RadioGroup.css.ts';
4
+
5
+ export interface RadioOption {
6
+ value: string;
7
+ label: string;
8
+ disabled?: boolean;
9
+ }
10
+
11
+ export interface RadioGroupProps {
12
+ name: string;
13
+ options: RadioOption[];
14
+ label?: string;
15
+ value?: string;
16
+ defaultValue?: string;
17
+ onChange?: (value: string) => void;
18
+ hint?: string;
19
+ error?: string;
20
+ disabled?: boolean;
21
+ className?: string;
22
+ }
23
+
24
+ export function RadioGroup({
25
+ name,
26
+ options,
27
+ label,
28
+ value,
29
+ defaultValue,
30
+ onChange,
31
+ hint,
32
+ error,
33
+ disabled = false,
34
+ className,
35
+ }: RadioGroupProps) {
36
+ const groupId = useId();
37
+ const descriptionId = (error ?? hint) ? `${groupId}-description` : undefined;
38
+
39
+ return (
40
+ <fieldset
41
+ className={[styles.fieldset, className].filter(Boolean).join(' ')}
42
+ aria-describedby={descriptionId}
43
+ >
44
+ {label && <legend className={styles.legend}>{label}</legend>}
45
+ <div className={styles.optionList}>
46
+ {options.map((option) => {
47
+ const optionId = `${groupId}-${option.value}`;
48
+ const isDisabled = disabled || option.disabled;
49
+ const rowClassName = [
50
+ styles.row,
51
+ isDisabled ? styles.rowDisabled : undefined,
52
+ ]
53
+ .filter(Boolean)
54
+ .join(' ');
55
+ const circleClassName = [
56
+ styles.circle,
57
+ error ? styles.circleError : undefined,
58
+ ]
59
+ .filter(Boolean)
60
+ .join(' ');
61
+
62
+ return (
63
+ <label
64
+ key={option.value}
65
+ className={rowClassName}
66
+ htmlFor={optionId}
67
+ >
68
+ <input
69
+ type="radio"
70
+ id={optionId}
71
+ name={name}
72
+ value={option.value}
73
+ disabled={isDisabled}
74
+ checked={
75
+ value !== undefined ? value === option.value : undefined
76
+ }
77
+ defaultChecked={
78
+ value === undefined && defaultValue !== undefined
79
+ ? defaultValue === option.value
80
+ : undefined
81
+ }
82
+ onChange={
83
+ onChange
84
+ ? (e) => {
85
+ if (e.target.checked) onChange(option.value);
86
+ }
87
+ : undefined
88
+ }
89
+ className={styles.nativeInput}
90
+ aria-invalid={error ? true : undefined}
91
+ />
92
+ <span className={circleClassName} aria-hidden="true" />
93
+ <span className={styles.labelText}>{option.label}</span>
94
+ </label>
95
+ );
96
+ })}
97
+ </div>
98
+ {error ? (
99
+ <span id={descriptionId} className={styles.error}>
100
+ {error}
101
+ </span>
102
+ ) : hint ? (
103
+ <span id={descriptionId} className={styles.hint}>
104
+ {hint}
105
+ </span>
106
+ ) : null}
107
+ </fieldset>
108
+ );
109
+ }
@@ -0,0 +1,5 @@
1
+ export {
2
+ RadioGroup,
3
+ type RadioGroupProps,
4
+ type RadioOption,
5
+ } from './RadioGroup.tsx';
@@ -0,0 +1,95 @@
1
+ import { style, styleVariants } from '@vanilla-extract/css';
2
+
3
+ import { themeVars } from '../../../theme.css.ts';
4
+ import { fontFamily, typeScale } from '../../../typography-tokens.ts';
5
+
6
+ export const field = style({
7
+ display: 'flex',
8
+ flexDirection: 'column',
9
+ gap: themeVars.space[100],
10
+ });
11
+
12
+ export const label = style({
13
+ fontFamily: fontFamily.display,
14
+ fontSize: typeScale.label.fontSize,
15
+ lineHeight: typeScale.label.lineHeight,
16
+ fontWeight: typeScale.label.fontWeight,
17
+ color: themeVars.text.core.default,
18
+ });
19
+
20
+ export const wrapper = style({
21
+ position: 'relative',
22
+ display: 'block',
23
+ });
24
+
25
+ // Chevron encoded as inline SVG — uses a neutral gray that reads well on white
26
+ const chevronSvg = `url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M4 6l4 4 4-4' stroke='%23666666' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")`;
27
+
28
+ export const select = style({
29
+ appearance: 'none',
30
+ WebkitAppearance: 'none',
31
+ margin: 0,
32
+ font: 'inherit',
33
+ fontSize: 14,
34
+ width: '100%',
35
+ minHeight: '40px',
36
+ paddingBlock: 0,
37
+ paddingInlineStart: themeVars.space[300],
38
+ paddingInlineEnd: themeVars.space[800],
39
+ fontFamily: fontFamily.display,
40
+ color: themeVars.text.core.default,
41
+ backgroundColor: themeVars.fill.surface.recessed.default,
42
+ borderWidth: 1,
43
+ borderStyle: 'solid',
44
+ borderColor: themeVars.border.core.disabled,
45
+ borderRadius: themeVars.borderRadius[300],
46
+ backgroundImage: chevronSvg,
47
+ backgroundRepeat: 'no-repeat',
48
+ backgroundPosition: `right ${themeVars.space[300]} center`,
49
+ cursor: 'pointer',
50
+ transition: 'border-color 120ms ease',
51
+ selectors: {
52
+ '&:hover:not(:disabled):not(:focus-visible)': {
53
+ borderColor: themeVars.border.core.default,
54
+ },
55
+ '&:focus-visible': {
56
+ outline: `2px solid ${themeVars.fill.brand.default}`,
57
+ outlineOffset: '2px',
58
+ },
59
+ '&:disabled': {
60
+ cursor: 'not-allowed',
61
+ backgroundColor: themeVars.fill.tertiary.disabled,
62
+ borderColor: themeVars.border.core.disabled,
63
+ color: themeVars.text.core.disabled,
64
+ },
65
+ },
66
+ });
67
+
68
+ export const selectVariant = styleVariants({
69
+ default: {},
70
+ error: {
71
+ borderColor: themeVars.border.alert.default,
72
+ selectors: {
73
+ '&:hover:not(:disabled):not(:focus-visible)': {
74
+ borderColor: themeVars.border.alert.default,
75
+ },
76
+ '&:focus-visible': {
77
+ outline: `2px solid ${themeVars.border.alert.default}`,
78
+ },
79
+ },
80
+ },
81
+ });
82
+
83
+ export const hint = style({
84
+ fontFamily: fontFamily.display,
85
+ fontSize: typeScale.label.fontSize,
86
+ lineHeight: typeScale.label.lineHeight,
87
+ color: themeVars.text.core.subtle,
88
+ });
89
+
90
+ export const error = style({
91
+ fontFamily: fontFamily.display,
92
+ fontSize: typeScale.label.fontSize,
93
+ lineHeight: typeScale.label.lineHeight,
94
+ color: themeVars.text.alert.default,
95
+ });
@@ -0,0 +1,105 @@
1
+ import { cleanup, fireEvent, render, screen } from '@testing-library/react';
2
+ import { afterEach, describe, expect, it, vi } from 'vitest';
3
+
4
+ import { Select } from './Select.tsx';
5
+
6
+ const options = [
7
+ { value: 'us', label: 'United States' },
8
+ { value: 'ca', label: 'Canada' },
9
+ { value: 'mx', label: 'Mexico', disabled: true },
10
+ ];
11
+
12
+ afterEach(cleanup);
13
+
14
+ describe('Select', () => {
15
+ it('renders as a <select> element', () => {
16
+ render(<Select options={options} />);
17
+ expect(screen.getByRole('combobox')).toBeInTheDocument();
18
+ });
19
+
20
+ it('renders all options', () => {
21
+ render(<Select options={options} />);
22
+ expect(
23
+ screen.getByRole('option', { name: 'United States' })
24
+ ).toBeInTheDocument();
25
+ expect(screen.getByRole('option', { name: 'Canada' })).toBeInTheDocument();
26
+ expect(screen.getByRole('option', { name: 'Mexico' })).toBeInTheDocument();
27
+ });
28
+
29
+ it('renders a hidden disabled placeholder option', () => {
30
+ const { container } = render(
31
+ <Select options={options} placeholder="Choose a country" />
32
+ );
33
+ const placeholder = container.querySelector('option[value=""]');
34
+ expect(placeholder).toBeInTheDocument();
35
+ expect(placeholder).toBeDisabled();
36
+ expect(placeholder).toHaveAttribute('hidden');
37
+ });
38
+
39
+ it('renders label and associates it with the select', () => {
40
+ render(<Select options={options} label="Country" />);
41
+ expect(screen.getByLabelText('Country')).toBeInTheDocument();
42
+ });
43
+
44
+ it('renders hint text', () => {
45
+ render(
46
+ <Select options={options} hint="Select your country of residence." />
47
+ );
48
+ expect(
49
+ screen.getByText('Select your country of residence.')
50
+ ).toBeInTheDocument();
51
+ });
52
+
53
+ it('renders error text', () => {
54
+ render(<Select options={options} error="Please select a country." />);
55
+ expect(screen.getByText('Please select a country.')).toBeInTheDocument();
56
+ });
57
+
58
+ it('sets aria-invalid when error is provided', () => {
59
+ render(<Select options={options} error="Required" />);
60
+ expect(screen.getByRole('combobox')).toHaveAttribute(
61
+ 'aria-invalid',
62
+ 'true'
63
+ );
64
+ });
65
+
66
+ it('hides hint when error is also provided', () => {
67
+ render(<Select options={options} hint="Hint" error="Error" />);
68
+ expect(screen.queryByText('Hint')).not.toBeInTheDocument();
69
+ expect(screen.getByText('Error')).toBeInTheDocument();
70
+ });
71
+
72
+ it('forwards disabled prop', () => {
73
+ render(<Select options={options} disabled />);
74
+ expect(screen.getByRole('combobox')).toBeDisabled();
75
+ });
76
+
77
+ it('disables individual options', () => {
78
+ render(<Select options={options} />);
79
+ expect(screen.getByRole('option', { name: 'Mexico' })).toBeDisabled();
80
+ });
81
+
82
+ it('merges custom className onto the select element', () => {
83
+ render(<Select options={options} className="custom" />);
84
+ expect(screen.getByRole('combobox')).toHaveClass('custom');
85
+ });
86
+
87
+ it('forwards data-testid', () => {
88
+ render(<Select options={options} data-testid="my-select" />);
89
+ expect(screen.getByTestId('my-select')).toBeInTheDocument();
90
+ });
91
+
92
+ it('applies distinct className for error vs default', () => {
93
+ const { rerender } = render(<Select options={options} />);
94
+ const defaultClass = screen.getByRole('combobox').className;
95
+ rerender(<Select options={options} error="oops" />);
96
+ expect(screen.getByRole('combobox').className).not.toBe(defaultClass);
97
+ });
98
+
99
+ it('calls onChange when selection changes', () => {
100
+ const onChange = vi.fn();
101
+ render(<Select options={options} onChange={onChange} />);
102
+ fireEvent.change(screen.getByRole('combobox'), { target: { value: 'ca' } });
103
+ expect(onChange).toHaveBeenCalledOnce();
104
+ });
105
+ });
@@ -0,0 +1,84 @@
1
+ import { useId, type SelectHTMLAttributes } from 'react';
2
+
3
+ import * as styles from './Select.css.ts';
4
+
5
+ export interface SelectOption {
6
+ value: string;
7
+ label: string;
8
+ disabled?: boolean;
9
+ }
10
+
11
+ export interface SelectProps extends Omit<
12
+ SelectHTMLAttributes<HTMLSelectElement>,
13
+ 'size'
14
+ > {
15
+ label?: string;
16
+ hint?: string;
17
+ error?: string;
18
+ options: SelectOption[];
19
+ placeholder?: string;
20
+ }
21
+
22
+ export function Select({
23
+ label,
24
+ hint,
25
+ error,
26
+ options,
27
+ placeholder,
28
+ id: idProp,
29
+ className,
30
+ disabled,
31
+ ...rest
32
+ }: SelectProps) {
33
+ const generatedId = useId();
34
+ const id = idProp ?? generatedId;
35
+ const descriptionId = (error ?? hint) ? `${id}-description` : undefined;
36
+
37
+ const selectClassName = [
38
+ styles.select,
39
+ styles.selectVariant[error ? 'error' : 'default'],
40
+ className,
41
+ ]
42
+ .filter(Boolean)
43
+ .join(' ');
44
+
45
+ return (
46
+ <div className={styles.field}>
47
+ {label && (
48
+ <label className={styles.label} htmlFor={id}>
49
+ {label}
50
+ </label>
51
+ )}
52
+ <div className={styles.wrapper}>
53
+ <select
54
+ {...rest}
55
+ id={id}
56
+ disabled={disabled}
57
+ className={selectClassName}
58
+ aria-invalid={error ? true : undefined}
59
+ aria-describedby={descriptionId}
60
+ >
61
+ {placeholder && (
62
+ <option value="" disabled hidden>
63
+ {placeholder}
64
+ </option>
65
+ )}
66
+ {options.map((opt) => (
67
+ <option key={opt.value} value={opt.value} disabled={opt.disabled}>
68
+ {opt.label}
69
+ </option>
70
+ ))}
71
+ </select>
72
+ </div>
73
+ {error ? (
74
+ <span id={descriptionId} className={styles.error}>
75
+ {error}
76
+ </span>
77
+ ) : hint ? (
78
+ <span id={descriptionId} className={styles.hint}>
79
+ {hint}
80
+ </span>
81
+ ) : null}
82
+ </div>
83
+ );
84
+ }
@@ -0,0 +1 @@
1
+ export { Select, type SelectOption, type SelectProps } from './Select.tsx';
@@ -1,48 +1,6 @@
1
1
  import { style } from '@vanilla-extract/css';
2
2
 
3
- import { themeVars } from '../../../theme.css.ts';
4
-
5
- const shareBorder = '#cbd6e2';
6
- const shareText = '#33475b';
7
-
8
3
  export const styles = {
9
- shareButton: style({
10
- flexShrink: 0,
11
- appearance: 'none',
12
- WebkitAppearance: 'none',
13
- margin: 0,
14
- fontFamily: 'inherit',
15
- fontSize: 14,
16
- fontWeight: 500,
17
- lineHeight: 1,
18
- cursor: 'pointer',
19
- display: 'inline-flex',
20
- alignItems: 'center',
21
- justifyContent: 'center',
22
- gap: themeVars.space[200],
23
- padding: `8px ${themeVars.space[300]}`,
24
- color: shareText,
25
- backgroundColor: themeVars.fill.surface.default.default,
26
- borderWidth: 1,
27
- borderStyle: 'solid',
28
- borderColor: shareBorder,
29
- borderRadius: 100,
30
- transition:
31
- 'background-color 120ms ease, border-color 120ms ease, color 120ms ease',
32
- selectors: {
33
- '&:hover:not(:disabled)': {
34
- backgroundColor: '#f5f8fa',
35
- },
36
- '&:focus-visible': {
37
- outline: `2px solid ${themeVars.border.tertiary.default}`,
38
- outlineOffset: 2,
39
- },
40
- '&:disabled': {
41
- cursor: 'not-allowed',
42
- opacity: 0.55,
43
- },
44
- },
45
- }),
46
4
  shareIcon: style({
47
5
  width: 16,
48
6
  height: 16,
@@ -1,3 +1,4 @@
1
+ import { Button } from '../Button/Button.tsx';
1
2
  import { ShareIcon } from '../icons/ShareIcon.tsx';
2
3
  import { styles } from './ShareButton.css.ts';
3
4
 
@@ -31,13 +32,14 @@ export interface ShareButtonProps {
31
32
 
32
33
  export function ShareButton({ pageTitle }: ShareButtonProps) {
33
34
  return (
34
- <button
35
+ <Button
35
36
  type="button"
36
- className={styles.shareButton}
37
+ variant="outline"
38
+ size="xs"
37
39
  onClick={() => void shareAppConnectPage({ pageTitle })}
38
40
  >
39
41
  <ShareIcon className={styles.shareIcon} />
40
42
  <span>Share</span>
41
- </button>
43
+ </Button>
42
44
  );
43
45
  }
@@ -0,0 +1,26 @@
1
+ import { styleVariants } from '@vanilla-extract/css';
2
+
3
+ import { themeVars } from '../../../theme.css.ts';
4
+ import { fontFamily, typeScale } from '../../../typography-tokens.ts';
5
+
6
+ export const color = styleVariants({
7
+ black: { color: themeVars.text.core.default },
8
+ gray: { color: themeVars.text.core.subtle },
9
+ });
10
+
11
+ export const variant = styleVariants({
12
+ display: { fontFamily: fontFamily.display, ...typeScale.display },
13
+ h1: { fontFamily: fontFamily.display, ...typeScale.h1 },
14
+ h2: { fontFamily: fontFamily.display, ...typeScale.h2 },
15
+ h3: { fontFamily: fontFamily.display, ...typeScale.h3 },
16
+ h4: { fontFamily: fontFamily.display, ...typeScale.h4 },
17
+ body: { fontFamily: fontFamily.system, ...typeScale.body },
18
+ label: { fontFamily: fontFamily.system, ...typeScale.label },
19
+ eyebrow: {
20
+ fontFamily: fontFamily.system,
21
+ ...typeScale.eyebrow,
22
+ letterSpacing: '0.08em',
23
+ textTransform: 'uppercase',
24
+ },
25
+ mono: { fontFamily: fontFamily.mono, ...typeScale.mono },
26
+ });
@@ -0,0 +1,63 @@
1
+ import { cleanup, render, screen } from '@testing-library/react';
2
+ import { afterEach, describe, expect, it } from 'vitest';
3
+
4
+ import { Text, type TextVariant } from './Text.tsx';
5
+
6
+ afterEach(cleanup);
7
+
8
+ describe('Text', () => {
9
+ it('renders body variant as <p> by default', () => {
10
+ render(<Text variant="body">hello</Text>);
11
+ expect(screen.getByText('hello').tagName).toBe('P');
12
+ });
13
+
14
+ const defaultElements: Array<[TextVariant, string]> = [
15
+ ['display', 'P'],
16
+ ['h1', 'H1'],
17
+ ['h2', 'H2'],
18
+ ['h3', 'H3'],
19
+ ['h4', 'H4'],
20
+ ['body', 'P'],
21
+ ['label', 'SPAN'],
22
+ ['eyebrow', 'SPAN'],
23
+ ['mono', 'SPAN'],
24
+ ];
25
+
26
+ for (const [variant, tag] of defaultElements) {
27
+ it(`renders ${variant} as <${tag.toLowerCase()}> by default`, () => {
28
+ render(<Text variant={variant}>text</Text>);
29
+ expect(screen.getByText('text').tagName).toBe(tag);
30
+ });
31
+ }
32
+
33
+ it('overrides element with the as prop', () => {
34
+ render(
35
+ <Text variant="label" as="p">
36
+ override
37
+ </Text>
38
+ );
39
+ expect(screen.getByText('override').tagName).toBe('P');
40
+ });
41
+
42
+ it('merges className with the variant class', () => {
43
+ render(<Text className="custom">text</Text>);
44
+ expect(screen.getByText('text')).toHaveClass('custom');
45
+ });
46
+
47
+ it('forwards arbitrary HTML attributes', () => {
48
+ render(
49
+ <Text data-testid="greeting" aria-label="greeting text">
50
+ hi
51
+ </Text>
52
+ );
53
+ expect(screen.getByTestId('greeting')).toHaveAttribute(
54
+ 'aria-label',
55
+ 'greeting text'
56
+ );
57
+ });
58
+
59
+ it('defaults to body variant when no variant is specified', () => {
60
+ render(<Text>default</Text>);
61
+ expect(screen.getByText('default').tagName).toBe('P');
62
+ });
63
+ });