@happyvertical/smrt-planner 0.57.15 → 0.57.16

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 (492) hide show
  1. package/app/404.html +19 -19
  2. package/app/_app/immutable/chunks/{CJqE_e1I.js → 1tQGPi8J.js} +1 -1
  3. package/app/_app/immutable/chunks/3JC1zxNN.js +1 -0
  4. package/app/_app/immutable/chunks/{U_YAf_lA.js → 6ott4F8t.js} +1 -1
  5. package/app/_app/immutable/chunks/{DRA2gZNq.js → B29WjYP5.js} +1 -1
  6. package/app/_app/immutable/chunks/{vcEpvgxL.js → BD6rgOfn.js} +1 -1
  7. package/app/_app/immutable/chunks/{B7IsOdeU.js → BEfnNZ_r.js} +1 -1
  8. package/app/_app/immutable/chunks/{CFtM7G4O.js → BG_AWqA3.js} +2 -2
  9. package/app/_app/immutable/chunks/{yGfNI8oR.js → BQGfk9t2.js} +1 -1
  10. package/app/_app/immutable/chunks/BaNbYf_w.js +1 -0
  11. package/app/_app/immutable/chunks/Bbl6Vsf2.js +1 -0
  12. package/app/_app/immutable/chunks/{BbwIep6z.js → Bcfb5I9y.js} +2 -2
  13. package/app/_app/immutable/chunks/{C5qDLfXy.js → BiGt7FLz.js} +1 -1
  14. package/app/_app/immutable/chunks/{DccCqD3p.js → BlPoOib9.js} +1 -1
  15. package/app/_app/immutable/chunks/{BwQnfuaZ.js → BnfHLvXn.js} +1 -1
  16. package/app/_app/immutable/chunks/{cr-zdIiU.js → BxTs8P01.js} +3 -3
  17. package/app/_app/immutable/chunks/{DCdUJsvL.js → BxX_79XJ.js} +1 -1
  18. package/app/_app/immutable/chunks/{y_YhL-Jh.js → C3soiNdP.js} +1 -1
  19. package/app/_app/immutable/chunks/{9YQb8EzH.js → CEGflXJ6.js} +1 -1
  20. package/app/_app/immutable/chunks/{B2rhYkoB.js → CMgP05SN.js} +1 -1
  21. package/app/_app/immutable/chunks/{D7hhQvDO.js → CMrsF8nJ.js} +1 -1
  22. package/app/_app/immutable/chunks/{hBMuE5Bx.js → CWQqx7C7.js} +1 -1
  23. package/app/_app/immutable/chunks/{0spQrfdd.js → CXPo72CL.js} +21 -21
  24. package/app/_app/immutable/chunks/{C6vmjDVg.js → CYql-HTd.js} +1 -1
  25. package/app/_app/immutable/chunks/CpfTjiSP.js +1 -0
  26. package/app/_app/immutable/chunks/{DGeUS20p.js → CxmNJ62m.js} +1 -1
  27. package/app/_app/immutable/chunks/D042ejzG.js +1 -0
  28. package/app/_app/immutable/chunks/{BrGblPBG.js → DBoTKMLo.js} +1 -1
  29. package/app/_app/immutable/chunks/{Dud4r5Jx.js → DJhmPAeb.js} +1 -1
  30. package/app/_app/immutable/chunks/{CaYLEdnq.js → DPcs_FRu.js} +1 -1
  31. package/app/_app/immutable/chunks/{BH-IcfAn.js → DURcYLyk.js} +3 -3
  32. package/app/_app/immutable/chunks/{CmwZFYXJ.js → Dapxnz2C.js} +1 -1
  33. package/app/_app/immutable/chunks/{CUqms96o.js → Dh1aRV-5.js} +1 -1
  34. package/app/_app/immutable/chunks/{Sj1Sr1av.js → KBE5GUjR.js} +1 -1
  35. package/app/_app/immutable/chunks/{DEy5w6rs.js → ZyeZpu_Z.js} +2 -2
  36. package/app/_app/immutable/chunks/{C5DQWmBa.js → dLwKu_Zp.js} +1 -1
  37. package/app/_app/immutable/chunks/{uMyA9vh1.js → vsq4E2m7.js} +1 -1
  38. package/app/_app/immutable/entry/{app.D8ErdGLu.js → app.CW8FtNr0.js} +2 -2
  39. package/app/_app/immutable/entry/start.CEefgxcS.js +1 -0
  40. package/app/_app/immutable/nodes/{0.BRhjnzgS.js → 0.DqyO6m6q.js} +1 -1
  41. package/app/_app/immutable/nodes/{1.i7liuUEv.js → 1.BIXVkBVQ.js} +1 -1
  42. package/app/_app/immutable/nodes/{10.C3_AufYj.js → 10.C4cTWnnq.js} +1 -1
  43. package/app/_app/immutable/nodes/{11.B0hIiOqN.js → 11.HoVqgyz1.js} +1 -1
  44. package/app/_app/immutable/nodes/{12.BSOZ4bO5.js → 12.CO24sNAm.js} +1 -1
  45. package/app/_app/immutable/nodes/{13.BVs8e3JB.js → 13.Clf4Jyo5.js} +1 -1
  46. package/app/_app/immutable/nodes/{14.DD0wkvaL.js → 14.oo80hNyP.js} +1 -1
  47. package/app/_app/immutable/nodes/{2.CDeoJM-_.js → 2.bUwTzzu3.js} +3 -3
  48. package/app/_app/immutable/nodes/{3.BEVyZIIW.js → 3.BSL8eQrf.js} +1 -1
  49. package/app/_app/immutable/nodes/{4.BWGexoUS.js → 4.BNokdlBB.js} +1 -1
  50. package/app/_app/immutable/nodes/{5.BhlS2sOI.js → 5.CdEkISNH.js} +1 -1
  51. package/app/_app/immutable/nodes/{6.CjZ4T96O.js → 6._evVXUuN.js} +1 -1
  52. package/app/_app/immutable/nodes/{7.CcMSlqwb.js → 7.BJQbl-EW.js} +1 -1
  53. package/app/_app/immutable/nodes/{8.DxCvFjK2.js → 8.CaKFFEpk.js} +1 -1
  54. package/app/_app/immutable/nodes/{9.DDfmTabv.js → 9.D3k07D1g.js} +1 -1
  55. package/app/_app/version.json +1 -1
  56. package/app/advanced-styles/index.html +22 -22
  57. package/app/ai/index.html +25 -25
  58. package/app/blueprint/index.html +20 -20
  59. package/app/cookbook/index.html +20 -20
  60. package/app/index.html +28 -28
  61. package/app/m/ads/AdDeliveryTier/index.html +24 -24
  62. package/app/m/ads/AdEvent/index.html +24 -24
  63. package/app/m/ads/AdFormat/index.html +24 -24
  64. package/app/m/ads/AdGroup/index.html +24 -24
  65. package/app/m/ads/AdVariation/index.html +24 -24
  66. package/app/m/analytics/AnalyticsDataStream/index.html +24 -24
  67. package/app/m/analytics/AnalyticsEvent/index.html +24 -24
  68. package/app/m/analytics/AnalyticsProperty/index.html +24 -24
  69. package/app/m/analytics/AnalyticsReport/index.html +24 -24
  70. package/app/m/approvals/ApprovalEvent/index.html +24 -24
  71. package/app/m/approvals/ApprovalPolicy/index.html +24 -24
  72. package/app/m/approvals/ApprovalRequest/index.html +24 -24
  73. package/app/m/assets/Asset/attachments/index.html +25 -25
  74. package/app/m/assets/Asset/index.html +24 -24
  75. package/app/m/assets/AssetAssociation/index.html +24 -24
  76. package/app/m/assets/AssetMetafield/index.html +24 -24
  77. package/app/m/assets/AssetStatus/index.html +24 -24
  78. package/app/m/assets/AssetType/index.html +24 -24
  79. package/app/m/assets/Folder/index.html +24 -24
  80. package/app/m/chat/AgentSession/index.html +24 -24
  81. package/app/m/chat/ChatMessage/index.html +24 -24
  82. package/app/m/chat/ChatParticipant/index.html +24 -24
  83. package/app/m/chat/ChatReaction/index.html +24 -24
  84. package/app/m/chat/ChatRoom/index.html +24 -24
  85. package/app/m/chat/ChatThread/index.html +24 -24
  86. package/app/m/chat/VoiceGatewayTurn/index.html +24 -24
  87. package/app/m/chat/VoiceSession/index.html +24 -24
  88. package/app/m/commerce/Agreement/index.html +24 -24
  89. package/app/m/commerce/Cart/index.html +24 -24
  90. package/app/m/commerce/Contract/index.html +24 -24
  91. package/app/m/commerce/ContractLineItem/index.html +24 -24
  92. package/app/m/commerce/Customer/index.html +24 -24
  93. package/app/m/commerce/DocumentTax/index.html +24 -24
  94. package/app/m/commerce/Estimate/index.html +24 -24
  95. package/app/m/commerce/Fulfillment/index.html +24 -24
  96. package/app/m/commerce/FulfillmentLineItem/index.html +24 -24
  97. package/app/m/commerce/HistoricalCustomerFunds/index.html +24 -24
  98. package/app/m/commerce/HistoricalCustomerFundsAllocation/index.html +24 -24
  99. package/app/m/commerce/HistoricalSalesLine/index.html +24 -24
  100. package/app/m/commerce/Invoice/index.html +24 -24
  101. package/app/m/commerce/InvoiceLineItem/index.html +24 -24
  102. package/app/m/commerce/Lease/index.html +24 -24
  103. package/app/m/commerce/LicenseSale/index.html +24 -24
  104. package/app/m/commerce/Order/index.html +24 -24
  105. package/app/m/commerce/Payment/index.html +24 -24
  106. package/app/m/commerce/PaymentAllocation/index.html +24 -24
  107. package/app/m/commerce/PaymentInstrument/index.html +24 -24
  108. package/app/m/commerce/PaymentIntent/index.html +24 -24
  109. package/app/m/commerce/Payout/index.html +24 -24
  110. package/app/m/commerce/ProductionOrder/index.html +24 -24
  111. package/app/m/commerce/PurchaseContract/index.html +24 -24
  112. package/app/m/commerce/PurchaseOrder/index.html +24 -24
  113. package/app/m/commerce/SalesContract/index.html +24 -24
  114. package/app/m/commerce/SupplierQuote/index.html +24 -24
  115. package/app/m/commerce/TaxCode/index.html +24 -24
  116. package/app/m/commerce/TaxComponent/index.html +24 -24
  117. package/app/m/commerce/TaxSettings/index.html +24 -24
  118. package/app/m/commerce/TaxSummaryReport/index.html +24 -24
  119. package/app/m/commerce/TenantPaymentAccount/index.html +24 -24
  120. package/app/m/commerce/Vendor/index.html +24 -24
  121. package/app/m/commerce/WholesaleOrder/index.html +24 -24
  122. package/app/m/content/Content/index.html +24 -24
  123. package/app/m/content/ContentContribution/index.html +24 -24
  124. package/app/m/content/ContentContributionAttachment/index.html +24 -24
  125. package/app/m/content/ContentContributionRevision/index.html +24 -24
  126. package/app/m/content/ContentContributionType/index.html +24 -24
  127. package/app/m/content/ContentContributor/index.html +24 -24
  128. package/app/m/content/ContentCorrection/index.html +24 -24
  129. package/app/m/content/ContentFeedSource/index.html +24 -24
  130. package/app/m/content/ContentGovernanceAssignment/index.html +24 -24
  131. package/app/m/content/ContentGovernancePolicy/index.html +24 -24
  132. package/app/m/content/ContentGovernanceProfile/index.html +24 -24
  133. package/app/m/content/ContentReference/index.html +24 -24
  134. package/app/m/content/ContentReview/index.html +24 -24
  135. package/app/m/content/ContentVersion/index.html +24 -24
  136. package/app/m/events/Event/index.html +24 -24
  137. package/app/m/events/EventParticipant/index.html +24 -24
  138. package/app/m/events/EventSeries/index.html +24 -24
  139. package/app/m/events/EventType/index.html +24 -24
  140. package/app/m/expenses/Expense/index.html +24 -24
  141. package/app/m/facts/Fact/index.html +24 -24
  142. package/app/m/facts/FactContent/index.html +24 -24
  143. package/app/m/facts/FactEvidence/index.html +24 -24
  144. package/app/m/facts/FactSource/index.html +24 -24
  145. package/app/m/facts/FactSubject/index.html +24 -24
  146. package/app/m/facts/FactTag/index.html +24 -24
  147. package/app/m/fields/FieldPolicy/index.html +24 -24
  148. package/app/m/fields/FieldPolicySuggestion/index.html +24 -24
  149. package/app/m/fields/FieldUsageCounter/index.html +24 -24
  150. package/app/m/images/Image/index.html +24 -24
  151. package/app/m/inventory/InventoryLocation/index.html +24 -24
  152. package/app/m/inventory/StockLevel/index.html +24 -24
  153. package/app/m/inventory/StockMovement/index.html +24 -24
  154. package/app/m/ledgers/Account/index.html +24 -24
  155. package/app/m/ledgers/Journal/index.html +24 -24
  156. package/app/m/ledgers/JournalEntry/index.html +24 -24
  157. package/app/m/ledgers/Ledger/index.html +24 -24
  158. package/app/m/manufacturing/Assembly/index.html +24 -24
  159. package/app/m/manufacturing/BillOfMaterials/index.html +24 -24
  160. package/app/m/manufacturing/BomLine/index.html +24 -24
  161. package/app/m/manufacturing/Operation/index.html +24 -24
  162. package/app/m/manufacturing/ProductionRun/index.html +24 -24
  163. package/app/m/manufacturing/ProductionRunCompletion/index.html +24 -24
  164. package/app/m/manufacturing/RoutingStep/index.html +24 -24
  165. package/app/m/marketing/Campaign/index.html +24 -24
  166. package/app/m/marketing/CampaignChannel/index.html +24 -24
  167. package/app/m/marketing/CampaignMetricSnapshot/index.html +24 -24
  168. package/app/m/messages/Account/index.html +24 -24
  169. package/app/m/messages/Attachment/index.html +24 -24
  170. package/app/m/messages/Blacklist/index.html +24 -24
  171. package/app/m/messages/Email/failed-sends/index.html +25 -25
  172. package/app/m/messages/Email/index.html +24 -24
  173. package/app/m/messages/Email/mailbox/index.html +25 -25
  174. package/app/m/messages/EmailAccount/index.html +24 -24
  175. package/app/m/messages/EmailAttachment/index.html +24 -24
  176. package/app/m/messages/EmailFolder/index.html +24 -24
  177. package/app/m/messages/Message/index.html +24 -24
  178. package/app/m/messages/MessagingEndpoint/index.html +24 -24
  179. package/app/m/messages/PersonaMessageRoute/index.html +24 -24
  180. package/app/m/messages/SlackAccount/index.html +24 -24
  181. package/app/m/messages/SlackMessage/index.html +24 -24
  182. package/app/m/messages/TelegramAccount/index.html +24 -24
  183. package/app/m/messages/Tweet/index.html +24 -24
  184. package/app/m/messages/TwitterAccount/index.html +24 -24
  185. package/app/m/messages/Whitelist/index.html +24 -24
  186. package/app/m/messages/ZulipAccount/index.html +24 -24
  187. package/app/m/places/Place/index.html +24 -24
  188. package/app/m/places/PlaceType/index.html +24 -24
  189. package/app/m/products/Category/index.html +24 -24
  190. package/app/m/products/Material/index.html +24 -24
  191. package/app/m/products/Product/index.html +24 -24
  192. package/app/m/products/Product/ingredients/index.html +25 -25
  193. package/app/m/products/ProductVariant/index.html +24 -24
  194. package/app/m/products/Sku/index.html +24 -24
  195. package/app/m/profiles/ApiKey/index.html +24 -24
  196. package/app/m/profiles/Bot/index.html +24 -24
  197. package/app/m/profiles/MagicLinkToken/index.html +24 -24
  198. package/app/m/profiles/NostrIdentity/index.html +24 -24
  199. package/app/m/profiles/OidcIdentity/index.html +24 -24
  200. package/app/m/profiles/Organization/index.html +24 -24
  201. package/app/m/profiles/Person/index.html +24 -24
  202. package/app/m/profiles/Profile/index.html +24 -24
  203. package/app/m/profiles/ProfileMetadata/index.html +24 -24
  204. package/app/m/profiles/ProfileMetafield/index.html +24 -24
  205. package/app/m/profiles/ProfileRelationship/index.html +24 -24
  206. package/app/m/profiles/ProfileRelationshipTerm/index.html +24 -24
  207. package/app/m/profiles/ProfileRelationshipType/index.html +24 -24
  208. package/app/m/profiles/ProfileType/index.html +24 -24
  209. package/app/m/projects/Comment/index.html +24 -24
  210. package/app/m/projects/Issue/index.html +24 -24
  211. package/app/m/projects/Label/index.html +24 -24
  212. package/app/m/projects/Project/index.html +24 -24
  213. package/app/m/projects/ProjectIntegration/index.html +24 -24
  214. package/app/m/projects/PullRequest/index.html +24 -24
  215. package/app/m/projects/Repository/index.html +24 -24
  216. package/app/m/properties/Property/index.html +24 -24
  217. package/app/m/properties/Zone/index.html +24 -24
  218. package/app/m/reports/RuntimeReport/index.html +24 -24
  219. package/app/m/reports/SmrtPrincipalReportRefreshTask/index.html +24 -24
  220. package/app/m/reports/SmrtReportLock/index.html +24 -24
  221. package/app/m/reports/SmrtReportRefreshTask/index.html +24 -24
  222. package/app/m/reports/SmrtReportRun/index.html +24 -24
  223. package/app/m/reports/SmrtReportSchedule/index.html +24 -24
  224. package/app/m/reports/SmrtReportWatermark/index.html +24 -24
  225. package/app/m/sales/Agreement/index.html +24 -24
  226. package/app/m/sales/AttributionException/index.html +24 -24
  227. package/app/m/sales/AttributionPolicy/index.html +24 -24
  228. package/app/m/sales/Commission/index.html +24 -24
  229. package/app/m/sales/CommissionAdjustment/index.html +24 -24
  230. package/app/m/sales/CommissionPayout/index.html +24 -24
  231. package/app/m/sales/CommissionPlan/index.html +24 -24
  232. package/app/m/sales/Earner/index.html +24 -24
  233. package/app/m/sales/EarnerSourceAttribution/index.html +24 -24
  234. package/app/m/sales/EarningEvent/index.html +24 -24
  235. package/app/m/sales/ExecutedAgreement/index.html +24 -24
  236. package/app/m/sales/Lead/index.html +24 -24
  237. package/app/m/sales/Opportunity/index.html +24 -24
  238. package/app/m/sales/OpportunityConversion/index.html +24 -24
  239. package/app/m/sales/PipelineDefinition/index.html +24 -24
  240. package/app/m/sales/PipelineStage/index.html +24 -24
  241. package/app/m/sales/Referral/index.html +24 -24
  242. package/app/m/sales/ReferralAgreement/index.html +24 -24
  243. package/app/m/sales/ReferralLink/index.html +24 -24
  244. package/app/m/sales/ReferralProgram/index.html +24 -24
  245. package/app/m/sales/ReferralTermSnapshot/index.html +24 -24
  246. package/app/m/sales/ReferralTouch/index.html +24 -24
  247. package/app/m/sales/Referrer/index.html +24 -24
  248. package/app/m/sales/SalesActivity/index.html +24 -24
  249. package/app/m/sales/SalesRepresentative/index.html +24 -24
  250. package/app/m/sites/Site/index.html +24 -24
  251. package/app/m/sites/SiteAgentBinding/index.html +24 -24
  252. package/app/m/social/OAuthState/index.html +24 -24
  253. package/app/m/social/SocialAccount/index.html +24 -24
  254. package/app/m/social/SocialPost/index.html +24 -24
  255. package/app/m/social/SocialPostAnalyticsSnapshot/index.html +24 -24
  256. package/app/m/subscriptions/BillingAdjustment/index.html +24 -24
  257. package/app/m/subscriptions/ClientCharge/index.html +24 -24
  258. package/app/m/subscriptions/CreditGrant/index.html +24 -24
  259. package/app/m/subscriptions/PricingRule/index.html +24 -24
  260. package/app/m/subscriptions/RetailCharge/index.html +24 -24
  261. package/app/m/subscriptions/SpendingPolicy/index.html +24 -24
  262. package/app/m/subscriptions/SubscriptionPlan/index.html +24 -24
  263. package/app/m/subscriptions/SubscriptionPlanVersion/index.html +24 -24
  264. package/app/m/subscriptions/TenantSubscription/index.html +24 -24
  265. package/app/m/subscriptions/TenantUsageMetric/index.html +24 -24
  266. package/app/m/support/ServiceTimeEntry/index.html +24 -24
  267. package/app/m/support/SupportAiRun/index.html +24 -24
  268. package/app/m/support/SupportAvailability/index.html +24 -24
  269. package/app/m/support/SupportCase/index.html +24 -24
  270. package/app/m/support/SupportCaseEvent/index.html +24 -24
  271. package/app/m/support/SupportChannelBinding/index.html +24 -24
  272. package/app/m/support/SupportCharge/index.html +24 -24
  273. package/app/m/support/SupportCompensation/index.html +24 -24
  274. package/app/m/support/SupportCompensationPlan/index.html +24 -24
  275. package/app/m/support/SupportEscalation/index.html +24 -24
  276. package/app/m/support/SupportInteraction/index.html +24 -24
  277. package/app/m/support/SupportPlan/index.html +24 -24
  278. package/app/m/support/SupportPolicy/index.html +24 -24
  279. package/app/m/support/SupportQualification/index.html +24 -24
  280. package/app/m/support/SupportServiceTarget/index.html +24 -24
  281. package/app/m/support/SupportSpecialist/index.html +24 -24
  282. package/app/m/support/SupportWorkLink/index.html +24 -24
  283. package/app/m/tags/Tag/index.html +24 -24
  284. package/app/m/tags/TagAlias/index.html +24 -24
  285. package/app/m/timesheets/AttendanceBreak/index.html +24 -24
  286. package/app/m/timesheets/AttendancePunch/index.html +24 -24
  287. package/app/m/timesheets/AttendanceSegment/index.html +24 -24
  288. package/app/m/timesheets/ServiceChargeSnapshot/index.html +24 -24
  289. package/app/m/timesheets/ServiceCompensationSnapshot/index.html +24 -24
  290. package/app/m/timesheets/ServiceTimeEntry/index.html +24 -24
  291. package/app/m/users/Group/index.html +24 -24
  292. package/app/m/users/GroupMember/index.html +24 -24
  293. package/app/m/users/GroupRole/index.html +24 -24
  294. package/app/m/users/Membership/index.html +24 -24
  295. package/app/m/users/MembershipOverride/index.html +24 -24
  296. package/app/m/users/Permission/index.html +24 -24
  297. package/app/m/users/Role/index.html +24 -24
  298. package/app/m/users/RolePermission/index.html +24 -24
  299. package/app/m/users/Session/index.html +24 -24
  300. package/app/m/users/Tenant/index.html +24 -24
  301. package/app/m/users/TenantIntegration/index.html +24 -24
  302. package/app/m/users/TenantPermissionOverride/index.html +24 -24
  303. package/app/m/users/User/index.html +24 -24
  304. package/app/m/video/Character/index.html +24 -24
  305. package/app/m/video/CharacterAsset/index.html +24 -24
  306. package/app/m/video/CompositeJob/index.html +24 -24
  307. package/app/m/video/Performer/index.html +24 -24
  308. package/app/m/video/PerformerAsset/index.html +24 -24
  309. package/app/m/video/Scene/index.html +24 -24
  310. package/app/m/video/SceneAsset/index.html +24 -24
  311. package/app/m/video/VideoComposition/index.html +24 -24
  312. package/app/m/video/VideoCompositionAsset/index.html +24 -24
  313. package/app/m/video/VideoSequence/index.html +24 -24
  314. package/app/m/video/VideoSequenceAsset/index.html +24 -24
  315. package/app/m/video/VideoShot/index.html +24 -24
  316. package/app/m/video/VideoShotAsset/index.html +24 -24
  317. package/app/m/video/VideoShotCharacter/index.html +24 -24
  318. package/app/m/video/VideoWorkflow/index.html +24 -24
  319. package/app/m/voice/VoiceOutput/index.html +24 -24
  320. package/app/m/voice/VoiceProfile/index.html +24 -24
  321. package/app/m/voice/VoiceSample/index.html +24 -24
  322. package/app/mcp.html +2 -2
  323. package/app/packages/ads/index.html +22 -22
  324. package/app/packages/analytics/index.html +22 -22
  325. package/app/packages/approvals/index.html +22 -22
  326. package/app/packages/assets/index.html +22 -22
  327. package/app/packages/chat/index.html +22 -22
  328. package/app/packages/comments/index.html +22 -22
  329. package/app/packages/commerce/index.html +22 -22
  330. package/app/packages/content/index.html +22 -22
  331. package/app/packages/events/index.html +22 -22
  332. package/app/packages/expenses/index.html +22 -22
  333. package/app/packages/facts/index.html +22 -22
  334. package/app/packages/fields/index.html +22 -22
  335. package/app/packages/human-resources/index.html +22 -22
  336. package/app/packages/images/index.html +22 -22
  337. package/app/packages/index.html +21 -21
  338. package/app/packages/ingestion/index.html +22 -22
  339. package/app/packages/inventory/index.html +22 -22
  340. package/app/packages/ledgers/index.html +22 -22
  341. package/app/packages/manufacturing/index.html +22 -22
  342. package/app/packages/marketing/index.html +22 -22
  343. package/app/packages/messages/index.html +22 -22
  344. package/app/packages/places/index.html +22 -22
  345. package/app/packages/preferences/index.html +22 -22
  346. package/app/packages/products/index.html +22 -22
  347. package/app/packages/profiles/index.html +22 -22
  348. package/app/packages/projects/index.html +22 -22
  349. package/app/packages/properties/index.html +22 -22
  350. package/app/packages/reports/index.html +22 -22
  351. package/app/packages/sales/index.html +22 -22
  352. package/app/packages/sites/index.html +22 -22
  353. package/app/packages/social/index.html +22 -22
  354. package/app/packages/subscriptions/index.html +22 -22
  355. package/app/packages/support/index.html +22 -22
  356. package/app/packages/tags/index.html +22 -22
  357. package/app/packages/timesheets/index.html +22 -22
  358. package/app/packages/users/index.html +22 -22
  359. package/app/packages/video/index.html +22 -22
  360. package/app/packages/voice/index.html +22 -22
  361. package/app/packages/webhooks/index.html +22 -22
  362. package/app/recipes/account-access/help/index.html +22 -22
  363. package/app/recipes/account-access/index.html +25 -25
  364. package/app/recipes/activity/help/index.html +22 -22
  365. package/app/recipes/activity/index.html +25 -25
  366. package/app/recipes/agreements/help/index.html +22 -22
  367. package/app/recipes/agreements/index.html +25 -25
  368. package/app/recipes/analytics.reports/help/index.html +22 -22
  369. package/app/recipes/analytics.reports/index.html +25 -25
  370. package/app/recipes/assets/help/index.html +22 -22
  371. package/app/recipes/assets/index.html +25 -25
  372. package/app/recipes/billing/help/index.html +22 -22
  373. package/app/recipes/billing/index.html +25 -25
  374. package/app/recipes/chat.assistant/help/index.html +22 -22
  375. package/app/recipes/chat.assistant/index.html +25 -25
  376. package/app/recipes/comments/help/index.html +22 -22
  377. package/app/recipes/comments/index.html +25 -25
  378. package/app/recipes/commerce.customers/help/index.html +22 -22
  379. package/app/recipes/commerce.customers/index.html +25 -25
  380. package/app/recipes/commerce.estimates/help/index.html +22 -22
  381. package/app/recipes/commerce.estimates/index.html +25 -25
  382. package/app/recipes/commerce.purchases/help/index.html +22 -22
  383. package/app/recipes/commerce.purchases/index.html +25 -25
  384. package/app/recipes/commerce.sales/help/index.html +22 -22
  385. package/app/recipes/commerce.sales/index.html +25 -25
  386. package/app/recipes/commerce.vendors/help/index.html +22 -22
  387. package/app/recipes/commerce.vendors/index.html +25 -25
  388. package/app/recipes/commerce.wholesale/help/index.html +22 -22
  389. package/app/recipes/commerce.wholesale/index.html +25 -25
  390. package/app/recipes/events.calendar/help/index.html +22 -22
  391. package/app/recipes/events.calendar/index.html +25 -25
  392. package/app/recipes/expenses.tracking/help/index.html +22 -22
  393. package/app/recipes/expenses.tracking/index.html +25 -25
  394. package/app/recipes/fields.form-customization/help/index.html +22 -22
  395. package/app/recipes/fields.form-customization/index.html +25 -25
  396. package/app/recipes/ingestion/help/index.html +22 -22
  397. package/app/recipes/ingestion/index.html +25 -25
  398. package/app/recipes/integrations/help/index.html +22 -22
  399. package/app/recipes/integrations/index.html +25 -25
  400. package/app/recipes/inventory.stock/help/index.html +22 -22
  401. package/app/recipes/inventory.stock/index.html +25 -25
  402. package/app/recipes/ledgers.bookkeeping/help/index.html +22 -22
  403. package/app/recipes/ledgers.bookkeeping/index.html +25 -25
  404. package/app/recipes/messages/help/index.html +22 -22
  405. package/app/recipes/messages/index.html +25 -25
  406. package/app/recipes/products/help/index.html +22 -22
  407. package/app/recipes/products/index.html +25 -25
  408. package/app/recipes/projects.tracker/help/index.html +22 -22
  409. package/app/recipes/projects.tracker/index.html +25 -25
  410. package/app/recipes/reports.materialized/help/index.html +22 -22
  411. package/app/recipes/reports.materialized/index.html +25 -25
  412. package/app/recipes/reports.runtime/help/index.html +22 -22
  413. package/app/recipes/reports.runtime/index.html +25 -25
  414. package/app/recipes/sales.pipeline/help/index.html +22 -22
  415. package/app/recipes/sales.pipeline/index.html +25 -25
  416. package/app/recipes/tags.taxonomy/help/index.html +22 -22
  417. package/app/recipes/tags.taxonomy/index.html +25 -25
  418. package/app/recipes/team-collaboration/help/index.html +22 -22
  419. package/app/recipes/team-collaboration/index.html +25 -25
  420. package/app/recipes/timesheets.time-entries/help/index.html +22 -22
  421. package/app/recipes/timesheets.time-entries/index.html +25 -25
  422. package/app/s/custom-accounts/index.html +20 -20
  423. package/app/s/custom-appointments/index.html +20 -20
  424. package/app/s/custom-billing/index.html +20 -20
  425. package/app/s/custom-bookings/index.html +20 -20
  426. package/app/s/custom-buying/index.html +20 -20
  427. package/app/s/custom-checkout/index.html +20 -20
  428. package/app/s/custom-classes/index.html +20 -20
  429. package/app/s/custom-clients/index.html +20 -20
  430. package/app/s/custom-events/index.html +20 -20
  431. package/app/s/custom-fleet/index.html +20 -20
  432. package/app/s/custom-gigs/index.html +20 -20
  433. package/app/s/custom-giving/index.html +20 -20
  434. package/app/s/custom-instruments/index.html +20 -20
  435. package/app/s/custom-jobs/index.html +20 -20
  436. package/app/s/custom-kitchen/index.html +20 -20
  437. package/app/s/custom-lessons/index.html +20 -20
  438. package/app/s/custom-material/index.html +20 -20
  439. package/app/s/custom-meetings/index.html +20 -20
  440. package/app/s/custom-members/index.html +20 -20
  441. package/app/s/custom-merch/index.html +20 -20
  442. package/app/s/custom-money/index.html +20 -20
  443. package/app/s/custom-paint/index.html +20 -20
  444. package/app/s/custom-parts/index.html +20 -20
  445. package/app/s/custom-rentals/index.html +20 -20
  446. package/app/s/custom-roastery/index.html +20 -20
  447. package/app/s/custom-schedule/index.html +20 -20
  448. package/app/s/custom-shelf/index.html +20 -20
  449. package/app/s/custom-shop/index.html +20 -20
  450. package/app/s/custom-students/index.html +20 -20
  451. package/app/s/custom-wholesale/index.html +20 -20
  452. package/app/s/custom-work/index.html +20 -20
  453. package/app/s/custom-yard/index.html +20 -20
  454. package/app/s/section-access-control/index.html +20 -20
  455. package/app/s/section-account-security/index.html +20 -20
  456. package/app/s/section-accounting/index.html +20 -20
  457. package/app/s/section-activity/index.html +20 -20
  458. package/app/s/section-agreements/index.html +20 -20
  459. package/app/s/section-analytics/index.html +20 -20
  460. package/app/s/section-assets/index.html +20 -20
  461. package/app/s/section-billing/index.html +20 -20
  462. package/app/s/section-calendar/index.html +20 -20
  463. package/app/s/section-catalog/index.html +20 -20
  464. package/app/s/section-chat.assistant/index.html +20 -20
  465. package/app/s/section-comments/index.html +20 -20
  466. package/app/s/section-fields.form-customization/index.html +20 -20
  467. package/app/s/section-ingestion/index.html +20 -20
  468. package/app/s/section-integrations/index.html +20 -20
  469. package/app/s/section-messages/index.html +20 -20
  470. package/app/s/section-more/index.html +20 -20
  471. package/app/s/section-operations/index.html +20 -20
  472. package/app/s/section-projects/index.html +20 -20
  473. package/app/s/section-purchasing/index.html +20 -20
  474. package/app/s/section-reports.materialized/index.html +20 -20
  475. package/app/s/section-reports.runtime/index.html +20 -20
  476. package/app/s/section-sales/index.html +20 -20
  477. package/app/s/section-taxonomy/index.html +20 -20
  478. package/app/s/section-team/index.html +20 -20
  479. package/app/s/section-work/index.html +20 -20
  480. package/dist/catalog/catalog.json +38 -39
  481. package/dist/catalog/generate/extract.d.ts +2 -0
  482. package/dist/catalog/generate/extract.d.ts.map +1 -1
  483. package/dist/catalog/generate/extract.js +9 -6
  484. package/dist/smrt-version.d.ts +1 -1
  485. package/dist/smrt-version.js +1 -1
  486. package/package.json +55 -55
  487. package/app/_app/immutable/chunks/36UmRiHN.js +0 -1
  488. package/app/_app/immutable/chunks/BEfgj-XP.js +0 -1
  489. package/app/_app/immutable/chunks/CA-A9Ngs.js +0 -1
  490. package/app/_app/immutable/chunks/D9JiVd8Y.js +0 -1
  491. package/app/_app/immutable/chunks/uBIymjUX.js +0 -1
  492. package/app/_app/immutable/entry/start.BbchxoB8.js +0 -1
@@ -0,0 +1 @@
1
+ var e=function(e,t){return new URL(e,t).href},t={},n=function(e){return e.pathname.endsWith(`.css`)},r=function(r,i,a){let o=Promise.resolve();if(i&&i.length>0){let r,s=document.querySelector(`meta[property=csp-nonce]`),c=s?.nonce||s?.getAttribute(`nonce`);function l(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}function u(e){return import.meta.resolve?new URL(import.meta.resolve(e)):new URL(e,import.meta.url)}o=l(i.map(i=>{i=e(i,a);let o=u(i);if(o.href in t)return;t[o.href]=!0;let s=n(o);if(r===void 0){r={all:new Set,styles:new Set};let e=document.getElementsByTagName(`link`);for(let t=e.length-1;t>=0;t--){let n=e[t];r.all.add(n.href),n.rel===`stylesheet`&&r.styles.add(n.href)}}if((s?r.styles:r.all).has(o.href))return;let l=document.createElement(`link`);if(l.rel=s?`stylesheet`:`modulepreload`,s||(l.as=`script`),l.crossOrigin=``,l.href=o.href,c&&l.setAttribute(`nonce`,c),document.head.appendChild(l),s)return new Promise((e,t)=>{l.addEventListener(`load`,e),l.addEventListener(`error`,()=>t(Error(`Unable to preload CSS for ${o}`)))})}).filter(e=>e!==void 0))}function s(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return o.then(e=>{for(let t of e||[])t.status===`rejected`&&s(t.reason);return r().catch(s)})};export{r as t};
@@ -0,0 +1 @@
1
+ import{$ as e,bt as t,c as n,et as r,nt as i,r as a,t as o,tt as s,vt as c}from"./DG3qFFTE.js";import{i as l,n as u,r as d,t as f}from"./Dt-HX3Vu.js";new URL(`sveltekit-internal://`);function p(e,t){return e===`/`||t===`ignore`?e:t===`never`?e.endsWith(`/`)?e.slice(0,-1):e:t===`always`&&!e.endsWith(`/`)?e+`/`:e}function ee(e){return e.split(`%25`).map(decodeURI).join(`%25`)}function te(e){for(let t in e)e[t]=decodeURIComponent(e[t]);return e}function m({href:e}){return e.split(`#`)[0]}function h(e,t,n,r=!1){let i=new URL(e);Object.defineProperty(i,"searchParams",{value:new Proxy(i.searchParams,{get(e,r){if(r===`get`||r===`getAll`||r===`has`)return(t,...i)=>(n(t),e[r](t,...i));t();let i=Reflect.get(e,r);return typeof i==`function`?i.bind(e):i}}),enumerable:!0,configurable:!0});let a=[`href`,`pathname`,`search`,`toString`,`toJSON`];r&&a.push(`hash`);for(let n of a)Object.defineProperty(i,n,{get(){return t(),e[n]},enumerable:!0,configurable:!0});return i}function g(){}function ne(...e){let t=5381;for(let n of e)if(typeof n==`string`){let e=n.length;for(;e;)t=t*33^n.charCodeAt(--e)}else if(ArrayBuffer.isView(n)){let e=new Uint8Array(n.buffer,n.byteOffset,n.byteLength),r=e.length;for(;r;)t=t*33^e[--r]}else throw TypeError(`value must be a string or TypedArray`);return(t>>>0).toString(36)}var re=window.fetch;window.fetch=(e,t)=>((e instanceof Request?e.method:t?.method||`GET`)!==`GET`&&_.delete(ie(e)),re(e,t));var _=new Map;function v(e,t){let n=ie(e,t),r=document.querySelector(n);if(r?.textContent){r.remove();let{body:e,...t}=JSON.parse(r.textContent);r.getAttribute(`data-b64`)!==null&&(e=f(e));let i=r.getAttribute(`data-ttl`);return i&&_.set(n,{body:e,init:t,ttl:1e3*Number(i)}),Promise.resolve(new Response(e,t))}return window.fetch(e,t)}function y(e,t,n){if(_.size>0){let t=ie(e,n),r=_.get(t);if(r){if(performance.now()<r.ttl&&[`default`,`force-cache`,`only-if-cached`,void 0].includes(n?.cache))return new Response(r.body,r.init);_.delete(t)}}return window.fetch(t,n)}function ie(e,t){let n=`script[data-sveltekit-fetched][data-url=${JSON.stringify(e instanceof Request?e.url:e)}]`;if(t?.headers||t?.body){let e=[];t.headers&&e.push([...new Headers(t.headers)].join(`,`)),t.body&&(typeof t.body==`string`||ArrayBuffer.isView(t.body))&&e.push(t.body),n+=`[data-hash="${ne(...e)}"]`}return n}var b=/^(\[)?(\.\.\.)?(\w+)(?:=(\w+))?(\])?$/,ae=/^\/\((?:[^)]+)\)$/;function oe(e){let t=[];return{pattern:e===`/`||ae.test(e)?/^\/$/:RegExp(`^${ce(e).map(e=>{let n=/^\[\.\.\.(\w+)(?:=(\w+))?\]$/.exec(e);if(n)return t.push({name:n[1],matcher:n[2],optional:!1,rest:!0,chained:!0}),`(?:/([^]*))?`;let r=/^\[\[(\w+)(?:=(\w+))?\]\]$/.exec(e);if(r)return t.push({name:r[1],matcher:r[2],optional:!0,rest:!1,chained:!0}),`(?:/([^/]+))?`;if(!e)return;let i=e.split(/\[(.+?)\](?!\])/);return`/`+i.map((e,n)=>{if(n%2){if(e.startsWith(`x+`))return ue(String.fromCharCode(parseInt(e.slice(2),16)));if(e.startsWith(`u+`))return ue(String.fromCharCode(...e.slice(2).split(`-`).map(e=>parseInt(e,16))));let[,r,a,o,s]=b.exec(e);return t.push({name:o,matcher:s,optional:!!r,rest:!!a,chained:a?n===1&&i[0]===``:!1}),a?`([^]*?)`:r?`([^/]*)?`:`([^/]+?)`}return ue(e)}).join(``)}).join(``)}/?$`),params:t}}function se(e){return e!==``&&!/^\([^)]+\)$/.test(e)}function ce(e){return e.slice(1).split(`/`).filter(se)}function le(e,t,n){let r={},i=e.slice(1),a=i.filter(e=>e!==void 0),o=0;for(let e=0;e<t.length;e+=1){let s=t[e],c=i[e-o];if(s.chained&&s.rest&&o&&(c=i.slice(e-o,e+1).filter(e=>e).join(`/`),o=0),c===void 0){if(s.rest)c=``;else continue}if(!s.matcher||n[s.matcher](c)){r[s.name]=c;let n=t[e+1],l=i[e+1];n&&!n.rest&&n.optional&&l&&s.chained&&(o=0),!n&&!l&&Object.keys(r).length===a.length&&(o=0)}else if(s.optional&&s.chained)o++;else return}if(!o)return r}function ue(e){return e.normalize().replace(/[[\]]/g,`\\$&`).replace(/%/g,`%25`).replace(/\//g,`%2[Ff]`).replace(/\?/g,`%3[Ff]`).replace(/#/g,`%23`).replace(/[.*+?^${}()|\\]/g,`\\$&`)}function de({nodes:e,server_loads:t,dictionary:n,matchers:r}){let i=new Set(t);return Object.entries(n).map(([t,[n,i,s]])=>{let{pattern:c,params:l}=oe(t),u={id:t,exec:e=>{let t=c.exec(e);if(t)return le(t,l,r)},errors:[1,...s||[]].map(t=>e[t]),layouts:[0,...i||[]].map(o),leaf:a(n)};return u.errors.length=u.layouts.length=Math.max(u.errors.length,u.layouts.length),u});function a(t){let n=t<0;return n&&(t=~t),[n,e[t]]}function o(t){return t===void 0?t:[i.has(t),e[t]]}}function fe(e,t=JSON.parse){try{return t(sessionStorage[e])}catch{}}function pe(e,t,n=JSON.stringify){let r=n(t);try{sessionStorage[e]=r}catch{}}var x=globalThis.__sveltekit_17b0kon?.base??``,me=globalThis.__sveltekit_17b0kon?.assets??x??``,he=`1792549140130`,ge=`sveltekit:snapshot`,_e=`sveltekit:scroll`,ve=`sveltekit:states`,ye=`sveltekit:pageurl`,S=`sveltekit:history`,C=`sveltekit:navigation`,w={tap:1,hover:2,viewport:3,eager:4,off:-1,false:-1},be=location.origin;function T(e){if(e instanceof URL)return e;let t=document.baseURI;if(!t){let e=document.getElementsByTagName(`base`);t=e.length?e[0].href:document.URL}return new URL(e,t)}function E(){return{x:pageXOffset,y:pageYOffset}}function D(e,t){return e.getAttribute(`data-sveltekit-${t}`)}var xe={...w,"":w.hover};function Se(e){let t=e.assignedSlot??e.parentNode;return t?.nodeType===11&&(t=t.host),t}function Ce(e,t){for(;e&&e!==t;){if(e.nodeName.toUpperCase()===`A`&&e.hasAttribute(`href`))return e;e=Se(e)}}function we(e,t,n){let r;try{if(r=new URL(e instanceof SVGAElement?e.href.baseVal:e.href,document.baseURI),n&&r.hash.match(/^#[^/]/)){let e=location.hash.split(`#`)[1]||`/`;r.hash=`#${e}${r.hash}`}}catch{}let i=e instanceof SVGAElement?e.target.baseVal:e.target,a=!r||!!i||k(r,t,n)||(e.getAttribute(`rel`)||``).split(/\s+/).includes(`external`),o=r?.origin===be&&e.hasAttribute(`download`);return{url:r,external:a,target:i,download:o}}function O(e){let t=null,n=null,r=null,i=null,a=null,o=null,s=e;for(;s&&s!==document.documentElement;)r===null&&(r=D(s,`preload-code`)),i===null&&(i=D(s,`preload-data`)),t===null&&(t=D(s,`keepfocus`)),n===null&&(n=D(s,`noscroll`)),a===null&&(a=D(s,`reload`)),o===null&&(o=D(s,`replacestate`)),s=Se(s);function c(e){switch(e){case``:case`true`:return!0;case`off`:case`false`:return!1;default:return}}return{preload_code:xe[r??`off`],preload_data:xe[i??`off`],keepfocus:c(t),noscroll:c(n),reload:c(a),replace_state:c(o)}}function Te(e){let t=n(e),r=!0;function i(){r=!0,t.update(e=>e)}function a(e){r=!1,t.set(e)}function o(e){let n;return t.subscribe(t=>{(n===void 0||r&&t!==n)&&e(n=t)})}return{notify:i,set:a,subscribe:o}}var Ee={v:g};function De(){let{set:e,subscribe:t}=n(!1),r;async function i(){clearTimeout(r);try{let t=await fetch(`${me}/_app/version.json`,{headers:{pragma:`no-cache`,"cache-control":`no-cache`}});if(!t.ok)return!1;let n=(await t.json()).version!==he;return n&&(e(!0),Ee.v(),clearTimeout(r)),n}catch{return!1}}return{subscribe:t,check:i}}function k(e,t,n){return e.origin!==be||!e.pathname.startsWith(t)?!0:n?e.pathname!==location.pathname:!1}function Oe(e){}Uint8Array.fromBase64,typeof process==`object`&&process.versions?.node,Object.getOwnPropertyDescriptor(ArrayBuffer.prototype,`byteLength`).get,typeof SharedArrayBuffer>`u`||Object.getOwnPropertyDescriptor(SharedArrayBuffer.prototype,`byteLength`).get;var ke=new Set([`load`,`prerender`,`csr`,`ssr`,`trailingSlash`,`config`]);[...ke],[...new Set([...ke])];function Ae(e){return e.filter(e=>e!=null)}function A(e,t){return e+`/`+t}function je(e){return e instanceof u||e instanceof l?e.status:500}function Me(e){return e instanceof l?e.text:`Internal Error`}var j,M,Ne,Pe=a.toString().includes(`$$`)||/function \w+\(\) \{\}/.test(a.toString()),Fe=`a:`;Pe?(j={data:{},form:null,error:null,params:{},route:{id:null},state:{},status:-1,url:new URL(Fe)},M={current:null},Ne={current:!1}):(j=new class{#e=t({});get data(){return e(this.#e)}set data(e){c(this.#e,e)}#t=t(null);get form(){return e(this.#t)}set form(e){c(this.#t,e)}#n=t(null);get error(){return e(this.#n)}set error(e){c(this.#n,e)}#r=t({});get params(){return e(this.#r)}set params(e){c(this.#r,e)}#i=t({id:null});get route(){return e(this.#i)}set route(e){c(this.#i,e)}#a=t({});get state(){return e(this.#a)}set state(e){c(this.#a,e)}#o=t(-1);get status(){return e(this.#o)}set status(e){c(this.#o,e)}#s=t(new URL(Fe));get url(){return e(this.#s)}set url(e){c(this.#s,e)}},M=new class{#e=t(null);get current(){return e(this.#e)}set current(e){c(this.#e,e)}},Ne=new class{#e=t(!1);get current(){return e(this.#e)}set current(e){c(this.#e,e)}},Ee.v=()=>Ne.current=!0);function Ie(e){Object.assign(j,e)}var Le={spanContext(){return Re},setAttribute(){return this},setAttributes(){return this},addEvent(){return this},setStatus(){return this},updateName(){return this},end(){return this},isRecording(){return!1},recordException(){return this},addLink(){return this},addLinks(){return this}},Re={traceId:``,spanId:``,traceFlags:0},{onMount:ze,tick:Be}=o,Ve=i??(e=>e()),He=new Set([`icon`,`shortcut icon`,`apple-touch-icon`]),N=null,P=fe(`sveltekit:scroll`)??{},F=fe(`sveltekit:snapshot`)??{},I={url:Te({}),page:Te({}),navigating:n(null),updated:De()};function L(e){P[e]=E()}function Ue(e,t){let n=e+1;for(;P[n];)delete P[n],n+=1;for(n=t+1;F[n];)delete F[n],n+=1}function R(e,t=!1){return t?location.replace(e.href):location.href=e.href,new Promise(g)}async function We(){if(`serviceWorker`in navigator){let e=await navigator.serviceWorker.getRegistration(x||`/`);e&&await e.update()}}var Ge,Ke,z,B,qe,V,Je={},Ye={},Xe=[],Ze=[],H=null;function Qe(){H?.fork?.then(e=>e?.discard()),H=null,Z={element:void 0,href:void 0}}var $e=new Map,et=new Set,tt=new Set,U=new Set,W={branch:[],error:null,url:null,nav:null},nt=!1,rt=!1,it=!0,G=!1,K=!1,at=!1,ot=!1,st,q,J,Y,ct=new Set,lt=new Map,ut=new Map;async function dt(e,t,n){if(globalThis.__sveltekit_17b0kon.data){let{q:e={},p:t={},l:n={},f:r={}}=globalThis.__sveltekit_17b0kon.data;for(let t in e)Je[t]=e[t];for(let e in n)Je[e]=n[e];for(let e in r)Je[e]=r[e];for(let e in t)Ye[e]=t[e]}document.URL!==location.href&&(location.href=location.href),V=e,await e.hooks.init?.(),Ge=de(e),B=document.documentElement,qe=t,Ke=e.nodes[0],z=e.nodes[1],Ke(),z(),q=history.state?.[S],J=history.state?.[C],q||(q=J=Date.now(),history.replaceState({...history.state,[S]:q,[C]:J},``));let r=P[q];function i(){r&&(history.scrollRestoration=`manual`,scrollTo(r.x,r.y))}n?(i(),await Gt(qe,n)):(await X({type:`enter`,url:T(V.hash?Xt(new URL(location.href)):location.href),replace_state:!0}),i()),Wt()}function ft(){Xe.length=0,ot=!1}function pt(e){Ze.some(e=>e?.snapshot)&&(F[e]=Ze.map(e=>e?.snapshot?.capture()))}function mt(e){F[e]?.forEach((e,t)=>{Ze[t]?.snapshot?.restore(e)})}function ht(){L(q),pe(_e,P),pt(J),pe(ge,F)}async function gt(e,t,n,r){let i,a;t.invalidateAll&&Qe(),await X({type:`goto`,url:T(e),keepfocus:t.keepFocus,noscroll:t.noScroll,replace_state:t.replaceState,state:t.state,redirect_count:n,nav_token:r,accept:()=>{if(t.invalidateAll){ot=!0,i=new Set;for(let[e,t]of lt)for(let[n,r]of t)r.resource?.reset(),i.add(A(e,n));a=new Set;for(let[e,t]of ut)for(let n of t.keys())a.add(A(e,n))}t.invalidate&&t.invalidate.forEach(Vt)}}),t.invalidateAll&&s().then(s).then(()=>{for(let[e,t]of lt)for(let[n,{resource:r}]of t)i?.has(A(e,n))&&r.start();for(let[e,t]of ut)for(let[n,{resource:r}]of t)a?.has(A(e,n))&&r.reconnect()})}async function _t(e){if(e.id!==H?.id){Qe();let t={};ct.add(t),H={id:e.id,token:t,promise:Dt({...e,preload:t}).then(e=>(ct.delete(t),e.type===`loaded`&&e.state.error&&Qe(),e)),fork:null}}return H.promise}async function vt(e){let t=(await jt(e,!1))?.route;t&&await Promise.all([...t.layouts,t.leaf].filter(Boolean).map(e=>e[1]()))}async function yt(e,t,n){let r={params:W.params,route:{id:W.route?.id??null},url:new URL(location.href)};if(W={...e.state,nav:r},Ie(e.props.page),st=new V.root({target:t,props:{...e.props,stores:I,components:Ze},hydrate:n,sync:!1,transformError:void 0}),await Promise.resolve(),n){let e={from:null,to:{...r,scroll:P[q]??E()},willUnload:!1,type:`enter`,complete:Promise.resolve()};U.forEach(t=>t(e))}mt(J),rt=!0}async function bt({url:e,params:t,branch:n,errors:r,status:i,error:a,route:o,form:s}){let c=`never`;if(x&&(e.pathname===x||e.pathname===x+`/`))c=`always`;else for(let e of n)e?.slash!==void 0&&(c=e.slash);e.pathname=p(e.pathname,c),e.search=e.search;let l={type:`loaded`,state:{url:e,params:t,branch:n,error:a,route:o},props:{constructors:Ae(n).map(e=>e.node.component),page:$(j)}};s!==void 0&&(l.props.form=s);let u={},d=!j,f=0;for(let e=0;e<Math.max(n.length,W.branch.length);e+=1){let t=n[e],r=W.branch[e];t?.data!==r?.data&&(d=!0),t&&(u={...u,...t.data},d&&(l.props[`data_${f}`]=u),f+=1)}return(!W.url||e.href!==W.url.href||W.error!==a||s!==void 0&&s!==j.form||d)&&(l.props.page={error:a,params:t,route:{id:o?.id??null},state:{},status:i,url:new URL(e),form:s??null,data:d?u:j.data}),l}async function xt({loader:e,parent:t,url:n,params:r,route:i,server_data_node:a}){let o=null,s=!0,c={dependencies:new Set,params:new Set,parent:!1,route:!1,url:!1,search_params:new Set},l=await e();if(l.universal?.load){function e(...e){for(let t of e){let{href:e}=new URL(t,n);c.dependencies.add(e)}}let u={tracing:{enabled:!1,root:Le,current:Le},route:new Proxy(i,{get:(e,t)=>(s&&(c.route=!0),e[t])}),params:new Proxy(r,{get:(e,t)=>(s&&c.params.add(t),e[t])}),data:a?.data??null,url:h(n,()=>{s&&(c.url=!0)},e=>{s&&c.search_params.add(e)},V.hash),async fetch(t,r){t instanceof Request&&(r={body:t.method===`GET`||t.method===`HEAD`?void 0:await t.blob(),cache:t.cache,credentials:t.credentials,headers:[...t.headers].length>0?t?.headers:void 0,integrity:t.integrity,keepalive:t.keepalive,method:t.method,mode:t.mode,redirect:t.redirect,referrer:t.referrer,referrerPolicy:t.referrerPolicy,signal:t.signal,...r});let{resolved:i,promise:a}=St(t,r,n);return s&&e(i.href),a},setHeaders:g,depends:e,parent(){return s&&(c.parent=!0),t()},untrack(e){s=!1;try{return e()}finally{s=!0}}};o=await l.universal.load.call(null,u)??null}return{node:l,loader:e,server:a,universal:l.universal?.load?{type:`data`,data:o,uses:c}:null,data:o??a?.data??null,slash:l.universal?.trailingSlash??a?.slash}}function St(e,t,n){let r=e instanceof Request?e.url:e,i=new URL(r,n);return i.origin===n.origin&&(r=i.href.slice(n.origin.length)),{resolved:i,promise:rt?y(r,i.href,t):v(r,t)}}function Ct(e,t,n,r,i,a){if(ot)return!0;if(!i)return!1;if(i.parent&&e||i.route&&t||i.url&&n)return!0;for(let e of i.search_params)if(r.has(e))return!0;for(let e of i.params)if(a[e]!==W.params[e])return!0;for(let e of i.dependencies)if(Xe.some(t=>t(new URL(e))))return!0;return!1}function wt(e,t){return e?.type===`data`?e:e?.type===`skip`?t??null:null}function Tt(e,t){if(!e)return new Set(t.searchParams.keys());let n=new Set([...e.searchParams.keys(),...t.searchParams.keys()]);for(let r of n){let i=e.searchParams.getAll(r),a=t.searchParams.getAll(r);i.every(e=>a.includes(e))&&a.every(e=>i.includes(e))&&n.delete(r)}return n}function Et({error:e,url:t,route:n,params:r}){return{type:`loaded`,state:{error:e,url:t,route:n,params:r,branch:[]},props:{page:$(j),constructors:[]}}}async function Dt({id:e,invalidating:t,url:n,params:r,route:i,preload:a}){if(H?.id===e)return ct.delete(H.token),H.promise;let{errors:o,layouts:s,leaf:c}=i,l=[...s,c];o.forEach(e=>e?.().catch(g)),l.forEach(e=>e?.[1]().catch(g));let f=W.url?e!==Nt(W.url):!1,p=W.route?i.id!==W.route.id:!1,ee=Tt(W.url,n),te=!1,m=l.map(async(e,t)=>{if(!e)return;let a=W.branch[t];return e[1]===a?.loader&&!Ct(te,p,f,ee,a.universal?.uses,r)?a:(te=!0,xt({loader:e[1],url:n,params:r,route:i,parent:async()=>{let e={};for(let n=0;n<t;n+=1)Object.assign(e,(await m[n])?.data);return e},server_data_node:wt(e[0]?{type:`skip`}:null,e[0]?a?.server:void 0)}))});for(let e of m)e.catch(g);let h=[];for(let e=0;e<l.length;e+=1)if(l[e])try{h.push(await m[e])}catch(t){if(t instanceof d)return{type:`redirect`,location:t.location};if(a&&ct.has(a))return Et({error:await Q(t,{params:r,url:n,route:{id:i.id}}),url:n,params:r,route:i});let s=je(t),c;if(t instanceof u)c=t.body;else{if(await I.updated.check())return await We(),await R(n);c=await Q(t,{params:r,url:n,route:{id:i.id}})}let l=await Ot(e,h,o);return l?bt({url:n,params:r,branch:h.slice(0,l.idx).concat(l.node),errors:o,status:s,error:c,route:i}):await Ft(n,{id:i.id},c,s)}else h.push(void 0);return bt({url:n,params:r,branch:h,errors:o,status:200,error:null,route:i,form:t?void 0:null})}async function Ot(e,t,n){for(;e--;)if(n[e]){let r=e;for(;!t[r];)--r;try{return{idx:r+1,node:{node:await n[e](),loader:n[e],data:{},server:null,universal:null}}}catch{continue}}}async function kt({status:e,error:t,url:n,route:r}){let i={};try{return bt({url:n,params:i,branch:[await xt({loader:Ke,url:n,params:i,route:r,parent:()=>Promise.resolve({}),server_data_node:wt(null)}),{node:await z(),loader:z,universal:null,server:null,data:null}],status:e,error:t,errors:[],route:null})}catch(t){if(t instanceof d){await gt(new URL(t.location,location.href),{},0);return}let a=await V.get_error_template(),o=await Q(t,{url:n,params:i,route:r}),s=a({status:e,message:String(o?.message??``).replace(/&/g,`&amp;`).replace(/</g,`&lt;`).replace(/>/g,`&gt;`)}),c=new DOMParser().parseFromString(s,`text/html`);throw document.documentElement.replaceChild(document.adoptNode(c.head),document.head),document.documentElement.replaceChild(document.adoptNode(c.body),document.body),t}}async function At(e){let t=e.href;if($e.has(t))return $e.get(t);let n;try{let r=(async()=>{let t=await V.hooks.reroute({url:new URL(e),fetch:async(t,n)=>St(t,n,e).promise})??e;if(typeof t==`string`){let n=new URL(e);V.hash?n.hash=t:n.pathname=t,t=n}return t})();$e.set(t,r),n=await r}catch{$e.delete(t);return}return n}async function jt(e,t){if(e&&!k(e,x,V.hash)){let n=await At(e);if(!n)return;let r=Mt(n);for(let n of Ge){let i=n.exec(r);if(i)return{id:Nt(e),invalidating:t,route:n,params:te(i),url:e}}}}function Mt(e){return ee(V.hash?e.hash.replace(/^#/,``).replace(/[?#].+/,``):e.pathname.slice(x.length))||`/`}function Nt(e){return(V.hash?e.hash.replace(/^#/,``):e.pathname)+e.search}function Pt({url:e,type:t,intent:n,delta:r,event:i,scroll:a}){let o=!1,s=Yt(W,n,e,t,a??null);r!==void 0&&(s.navigation.delta=r),i!==void 0&&(s.navigation.event=i);let c={...s.navigation,cancel:()=>{o=!0,s.reject(Error(`navigation cancelled`))}};return G||et.forEach(e=>e(c)),o?null:s}async function X({type:e,url:t,popped:n,keepfocus:i,noscroll:a,replace_state:o,state:c={},redirect_count:u=0,nav_token:d={},accept:f=g,block:p=g,event:ee}){let te=Y;Y=d;let m=await jt(t,!1),h=e===`enter`?Yt(W,m,t,e):Pt({url:t,type:e,delta:n?.delta,intent:m,scroll:n?.scroll,event:ee});if(!h){p(),Y===d&&(Y=te);return}let ne=q,re=J;f(),G=!0,rt&&h.navigation.type!==`enter`&&I.navigating.set(M.current=h.navigation);let _=m&&await Dt(m);if(!_){if(k(t,x,V.hash))return await R(t,o);_=await Ft(t,{id:null},await Q(new l(404,`Not Found`,`Not found: ${t.pathname}`),{url:t,params:{},route:{id:null}}),404,o)}if(t=m?.url||t,Y!==d){h.reject(Error(`navigation aborted`));return}if(!_)return;if(_.type===`redirect`){if(u<20){await X({type:e,url:new URL(_.location,t),popped:n,keepfocus:i,noscroll:a,replace_state:o,state:c,redirect_count:u+1,nav_token:d}),h.fulfil(void 0);return}if(_=await kt({status:500,error:await Q(Error(`Redirect loop`),{url:t,params:{},route:{id:null}}),url:t,route:{id:null}}),!_)return}else if(_.props.page.status>=400&&await I.updated.check())return await We(),await R(t,o);if(ft(),L(ne),pt(re),_.props.page.url.pathname!==t.pathname&&(t.pathname=_.props.page.url.pathname),c=n?n.state:c,!n){let e=+!o,n={[S]:q+=e,[C]:J+=e,[ve]:c};(o?history.replaceState:history.pushState).call(history,n,``,t),o||Ue(q,J)}let v=m&&H?.id===m.id?H.fork:null;H?.fork&&!v?Qe():(H=null,Z={element:void 0,href:void 0}),_.props.page.state=c;let y;if(rt){let e=(await Promise.all(Array.from(tt,e=>e(h.navigation)))).filter(e=>typeof e==`function`);if(e.length>0){function t(){e.forEach(e=>{U.delete(e)})}e.push(t),e.forEach(e=>{U.add(e)})}let n=h.navigation.to;W={..._.state,nav:{params:n.params,route:n.route,url:n.url}},_.props.page&&(_.props.page.url=t),!i&&document.activeElement instanceof HTMLElement&&document.activeElement!==document.body&&document.activeElement.blur();let a=v&&await v;a?y=a.commit():(N=null,st.$set(_.props),N&&Object.assign(_.props.page,N),Ie(_.props.page),y=r?.()),at=!0}else await yt(_,qe,!1);let{activeElement:ie}=document;if(await y,await s(),await s(),Y!==d){h.reject(Error(`navigation aborted`));return}_.props.page&&N&&Object.assign(_.props.page,N);let b=null;if(it){let e=n?n.scroll:a?E():null;e?scrollTo(e.x,e.y):(b=t.hash&&document.getElementById(Zt(t)))?b.scrollIntoView():scrollTo(0,0)}let ae=document.activeElement!==ie&&document.activeElement!==document.body;!i&&!ae&&Jt(t,!b),it=!0,G=!1,h.fulfil(void 0),h.navigation.to&&(h.navigation.to.scroll=E()),U.forEach(e=>e(h.navigation)),e===`popstate`&&mt(J),I.navigating.set(M.current=null)}async function Ft(e,t,n,r,i){return e.origin===be&&e.pathname===location.pathname&&!nt?await kt({status:r,error:n,url:e,route:t}):await R(e,i)}var Z={element:void 0,href:void 0};function It(){let e,t;B.addEventListener(`mousemove`,t=>{let n=t.target;clearTimeout(e),e=setTimeout(()=>{i(n,w.hover)},20)});function n(e){e.defaultPrevented||i(e.composedPath()[0],w.tap)}B.addEventListener(`mousedown`,n),B.addEventListener(`touchstart`,n,{passive:!0});let r=new IntersectionObserver(e=>{for(let t of e)t.isIntersecting&&(vt(new URL(t.target.href)),r.unobserve(t.target))},{threshold:0});async function i(e,n){let r=Ce(e,B),i=r===Z.element&&r?.href===Z.href&&n>=t;if(!r||i)return;let{url:a,external:o,download:s}=we(r,x,V.hash);if(o||s)return;let c=O(r),l=a&&Nt(W.url)===Nt(a);if(!(c.reload||l)){if(n<=c.preload_data){Z={element:r,href:r.href},t=w.tap;let e=await jt(a,!1);if(!e)return;_t(e)}else n<=c.preload_code&&(Z={element:r,href:r.href},t=n,vt(a))}}function a(){r.disconnect();for(let e of B.querySelectorAll(`a`)){let{url:t,external:n,download:i}=we(e,x,V.hash);if(n||i)continue;let a=O(e);a.reload||(a.preload_code===w.viewport&&r.observe(e),a.preload_code===w.eager&&vt(t))}}U.add(a),a()}function Q(e,t){if(e instanceof u)return e.body;let n=je(e),r=Me(e);return V.hooks.handleError({error:e,event:t,status:n,message:r})??{message:r}}function Lt(e,t){ze(()=>(e.add(t),()=>{e.delete(t)}))}function Rt(e){Lt(U,e)}function zt(e){Lt(tt,e)}function Bt(e,t={}){return e=new URL(T(e)),e.origin===be?gt(e,t,0):Promise.reject(Error(`goto: invalid URL`))}function Vt(e){if(typeof e==`function`)Xe.push(e);else{let{href:t}=new URL(e,location.href);Xe.push(e=>e.href===t)}}function Ht(e,t){L(q);let n={[S]:q+=1,[C]:J,[ye]:j.url.href,[ve]:t};history.pushState(n,``,T(e)),at=!0,j.state=t,st.$set({page:Ve(()=>$(j))}),Ue(q,J)}function Ut(e,t){let n={[S]:q,[C]:J,[ye]:j.url.href,[ve]:t};history.replaceState(n,``,T(e)),j.state=t,st.$set({page:Ve(()=>$(j))})}function Wt(){history.scrollRestoration=`manual`,addEventListener(`beforeunload`,e=>{let t=!1;if(ht(),!G){let e=Yt(W,void 0,null,`leave`),n={...e.navigation,cancel:()=>{t=!0,e.reject(Error(`navigation cancelled`))}};et.forEach(e=>e(n))}t?(e.preventDefault(),e.returnValue=``):history.scrollRestoration=`auto`}),addEventListener(`visibilitychange`,()=>{document.visibilityState===`hidden`&&ht()}),navigator.connection?.saveData||It(),B.addEventListener(`click`,async t=>{if(t.button||t.which!==1||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.defaultPrevented)return;let n=Ce(t.composedPath()[0],B);if(!n)return;let{url:r,external:i,target:a,download:o}=we(n,x,V.hash);if(!r)return;if(a===`_parent`||a===`_top`){if(window.parent!==window)return}else if(a&&a!==`_self`)return;let s=O(n);if(!(n instanceof SVGAElement)&&r.protocol!==location.protocol&&r.protocol!==`https:`&&r.protocol!==`http:`||o)return;let[c,l]=(V.hash?r.hash.replace(/^#/,``):r.href).split(`#`),u=c===m(location);if(i||s.reload&&(!u||!l))Pt({url:r,type:`link`,event:t})?G=!0:t.preventDefault();else{if(l!==void 0&&u){let[,i]=W.url.href.split(`#`);if(i===l){if(t.preventDefault(),l===``||l===`top`&&n.ownerDocument.getElementById(`top`)===null)scrollTo({top:0});else{let e=n.ownerDocument.getElementById(decodeURIComponent(l));e&&(e.scrollIntoView(),e.focus())}return}if(K=!0,L(q),e(r),!s.replace_state)return;K=!1}t.preventDefault(),await new Promise(e=>{requestAnimationFrame(()=>{setTimeout(e,0)}),setTimeout(e,100)}),await X({type:`link`,url:r,keepfocus:s.keepfocus,noscroll:s.noscroll,replace_state:s.replace_state??r.href===location.href,event:t})}}),B.addEventListener(`submit`,e=>{if(e.defaultPrevented)return;let t=HTMLFormElement.prototype.cloneNode.call(e.target),n=e.submitter;if((n?.formTarget||t.target)===`_blank`||(n?.formMethod||t.method)!==`get`)return;let r=new URL(n?.hasAttribute(`formaction`)&&n?.formAction||t.action);if(k(r,x,!1))return;let i=e.target,a=O(i);if(a.reload)return;e.preventDefault(),e.stopPropagation();let o=new FormData(i,n);r.search=new URLSearchParams(o).toString(),X({type:`form`,url:r,keepfocus:a.keepfocus,noscroll:a.noscroll,replace_state:a.replace_state??r.href===location.href,event:e})}),addEventListener(`popstate`,async t=>{if(!qt){if(t.state?.[`sveltekit:history`]){let n=t.state[S];if(Y={},n===q)return;let r=P[n],i=t.state[`sveltekit:states`]??{},a=new URL(t.state[`sveltekit:pageurl`]??location.href),o=t.state[C],s=W.url?m(location)===m(W.url):!1;if(o===J&&(at||s)){i!==j.state&&(j.state=i),e(a),P[q]=E(),r&&scrollTo(r.x,r.y),q=n;return}let c=n-q;await X({type:`popstate`,url:a,popped:{state:i,scroll:r,delta:c},accept:()=>{q=n,J=o},block:()=>{history.go(-c)},nav_token:Y,event:t})}else K||(e(new URL(location.href)),V.hash&&location.reload())}}),addEventListener(`hashchange`,()=>{K&&(K=!1,history.replaceState({...history.state,[S]:++q,[C]:J},``,location.href))});for(let e of document.querySelectorAll(`link`))He.has(e.rel)&&(e.href=e.href);addEventListener(`pageshow`,e=>{e.persisted&&I.navigating.set(M.current=null)});function e(e){W.url=j.url=e,I.page.set($(j)),I.page.notify()}}async function Gt(e,{status:t=200,error:n,node_ids:r,params:i,route:a,server_route:o,data:s,form:c}){nt=!0;let l=new URL(location.href),u;({params:i={},route:a={id:null}}=await jt(l,!1)||{}),u=Ge.find(({id:e})=>e===a.id);let f,p=!0;try{let e=r.map(async(t,n)=>{let r=s[n];return r?.uses&&(r.uses=Kt(r.uses)),xt({loader:V.nodes[t],url:l,params:i,route:a,parent:async()=>{let t={};for(let r=0;r<n;r+=1)Object.assign(t,(await e[r]).data);return t},server_data_node:wt(r)})}),o=await Promise.all(e);if(u){let e=u.layouts;for(let t=0;t<e.length;t++)e[t]||o.splice(t,0,void 0)}f=await bt({url:l,params:i,branch:o,status:t,error:n,errors:u?.errors,form:c,route:u??null})}catch(t){if(t instanceof d)return await R(new URL(t.location,location.href));f=await kt({status:je(t),error:await Q(t,{url:l,params:i,route:a}),url:l,route:a}),e.textContent=``,p=!1}f&&(f.props.page&&(f.props.page.state={}),await yt(f,e,p))}function Kt(e){return{dependencies:new Set(e?.dependencies??[]),params:new Set(e?.params??[]),parent:!!e?.parent,route:!!e?.route,url:!!e?.url,search_params:new Set(e?.search_params??[])}}var qt=!1;function Jt(e,t=!0){let n=document.querySelector(`[autofocus]`);if(n)n.focus();else{let n=Zt(e);if(n&&document.getElementById(n)){let{x:r,y:i}=E();setTimeout(()=>{let a=history.state;qt=!0,location.replace(new URL(`#${n}`,location.href)),history.replaceState(a,``,e),t&&scrollTo(r,i),qt=!1})}else{let e=document.body,t=e.getAttribute(`tabindex`);e.tabIndex=-1,e.focus({preventScroll:!0,focusVisible:!1}),t===null?e.removeAttribute(`tabindex`):e.setAttribute(`tabindex`,t)}let r=getSelection();if(r&&r.type!==`None`){let e=[];for(let t=0;t<r.rangeCount;t+=1)e.push(r.getRangeAt(t));setTimeout(()=>{if(r.rangeCount===e.length){for(let t=0;t<r.rangeCount;t+=1){let n=e[t],i=r.getRangeAt(t);if(n.commonAncestorContainer!==i.commonAncestorContainer||n.startContainer!==i.startContainer||n.endContainer!==i.endContainer||n.startOffset!==i.startOffset||n.endOffset!==i.endOffset)return}r.removeAllRanges()}})}}}function Yt(e,t,n,r,i=null){let a,o,s=new Promise((e,t)=>{a=e,o=t});return s.catch(g),{navigation:{from:{params:e.params,route:{id:e.route?.id??null},url:e.url,scroll:E()},to:n&&{params:t?.params??null,route:{id:t?.route?.id??null},url:n,scroll:i},willUnload:!t,type:r,complete:s},fulfil:a,reject:o}}function $(e){return{data:e.data,error:e.error,form:e.form,params:e.params,route:e.route,state:e.state,status:e.status,url:e.url}}function Xt(e){let t=new URL(e);return t.hash=decodeURIComponent(e.hash),t}function Zt(e){let t;if(V.hash){let[,,n]=e.hash.split(`#`,3);t=n??``}else t=e.hash.slice(1);return decodeURIComponent(t)}export{Ut as a,j as c,Ht as i,Oe as l,Bt as n,dt as o,zt as r,M as s,Rt as t,x as u};
@@ -1,2 +1,2 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./B2rhYkoB.js","./COiEfhsA.js","./uBIymjUX.js"])))=>i.map(i=>d[i]);
2
- import{t as e}from"./uBIymjUX.js";import{i as t,n,r}from"./BQxY8kkL.js";var i={"audio/webm":`webm`,"video/webm":`webm`,"audio/mp4":`m4a`,"audio/m4a":`m4a`,"audio/x-m4a":`m4a`,"video/mp4":`mp4`,"audio/wav":`wav`,"audio/wave":`wav`,"audio/x-wav":`wav`,"audio/vnd.wave":`wav`,"audio/ogg":`ogg`,"application/ogg":`ogg`,"audio/mpeg":`mp3`,"audio/mp3":`mp3`,"audio/mpga":`mp3`,"audio/flac":`flac`,"audio/x-flac":`flac`};function a(e){return e?.split(`;`)[0]?.trim().toLowerCase()||void 0}function o(e){let t=a(e);return t?i[t]:void 0}async function s(e,t={}){let r=c(e)?e:{data:e},{adapter:i,signal:a}=t;a?.throwIfAborted();let s=u(t.maxBytes,i),f=r.data,p=typeof Blob<`u`&&f instanceof Blob?f.type:void 0,h=t.mimeType??r.mimeType??r.contentType??(p||void 0)??`application/octet-stream`,g;if(typeof Blob<`u`&&f instanceof Blob)d(f.size,s,i),g=f.type===h?f:new Blob([f],{type:h});else if(f instanceof Uint8Array)d(f.byteLength,s,i),g=new Blob([m(f)],{type:h});else if(f instanceof ArrayBuffer)d(f.byteLength,s,i),g=new Blob([f],{type:h});else if(l(f)){let e=await ee(f,s,i,a);g=new Blob(e,{type:h})}else throw new n(`Unsupported audio input: expected Blob, Buffer, Uint8Array, ArrayBuffer, or ReadableStream`,i);if(g.size===0)throw new n(`Audio input is empty`,i);let _=t.deriveExtension===!1?void 0:o(h),v=t.defaultBasename??`audio`,y=r.filename??(_?`${v}.${_}`:v);return{blob:g,mimeType:h,bytes:g.size,filename:y,durationSeconds:r.durationSeconds}}function c(e){return typeof e==`object`&&!!e&&`data`in e&&!(typeof Blob<`u`&&e instanceof Blob)&&!(e instanceof Uint8Array)&&!(e instanceof ArrayBuffer)&&!l(e)}function l(e){return typeof e==`object`&&!!e&&typeof e.getReader==`function`}function u(e,t){if(e===void 0)return 1/0;if(Number.isNaN(e)||e<=0)throw new n(`maxBytes must be a positive number`,t);return e}function d(e,t,r){if(e>t)throw new n(`Audio input exceeds maxBytes (${e} > ${t} bytes)`,r)}async function ee(e,t,r,i){let a=e.getReader(),o=[],s=0,c=()=>{a.cancel(i?.reason).catch(()=>void 0)};i?.addEventListener(`abort`,c,{once:!0});try{for(;;){let{done:e,value:c}=await a.read();if(i?.throwIfAborted(),e)break;if(s+=f(c,r),s>t)throw await a.cancel().catch(()=>void 0),new n(`Audio stream exceeds maxBytes (more than ${t} bytes)`,r);o.push(p(c))}}finally{i?.removeEventListener(`abort`,c),a.releaseLock()}return o}function f(e,t){if(e instanceof Uint8Array||e instanceof ArrayBuffer)return e.byteLength;throw new n(`Audio stream chunks must be Uint8Array or ArrayBuffer`,t)}function p(e){return e instanceof Uint8Array?m(e):new Uint8Array(e.slice(0))}function m(e){let t=new Uint8Array(e.byteLength);return t.set(e),t}async function h(e,...t){for(let n of t)n&&await n(e)}var g={type:[`HAVE_SPEECH_TRANSCRIBER_TYPE`,`HAVE_SPEECH_STT_TYPE`,`HAVE_SPEECH_STT_ADAPTER`,`STT_ADAPTER`],baseUrl:[`HAVE_SPEECH_TRANSCRIBER_BASE_URL`,`HAVE_SPEECH_STT_BASE_URL`,`STT_BASE_URL`],model:[`HAVE_SPEECH_TRANSCRIBER_MODEL`,`HAVE_SPEECH_STT_MODEL`,`STT_MODEL`],apiKey:[`HAVE_SPEECH_TRANSCRIBER_API_KEY`,`HAVE_SPEECH_STT_API_KEY`,`STT_API_KEY`,`SPEECH_API_KEY`],timeoutMs:[`HAVE_SPEECH_TRANSCRIBER_TIMEOUT`,`HAVE_SPEECH_TRANSCRIBER_TIMEOUT_MS`,`HAVE_SPEECH_STT_TIMEOUT_MS`,`STT_TIMEOUT_MS`],maxBytes:[`HAVE_SPEECH_TRANSCRIBER_MAX_BYTES`,`STT_MAX_BYTES`],headers:[`HAVE_SPEECH_TRANSCRIBER_HEADERS`,`STT_HEADERS`],path:[`HAVE_SPEECH_TRANSCRIBER_PATH`,`HAVE_SPEECH_STT_PATH`,`STT_PATH`]};function _(e){return{type:b(e,...g.type),baseUrl:b(e,...g.baseUrl),model:b(e,...g.model),apiKey:b(e,...g.apiKey),timeoutMs:x(b(e,...g.timeoutMs)),maxBytes:x(b(e,...g.maxBytes)),headers:te(e,g.headers),path:b(e,...g.path)}}function v(e={},t={}){let n=_(t.env??S()),r=y(n.headers,t.headers,e.headers);return{type:e.type??n.type,baseUrl:(e.baseUrl??n.baseUrl)?.trim(),model:e.model??n.model,apiKey:e.apiKey??n.apiKey,timeoutMs:e.timeoutMs??n.timeoutMs,maxBytes:e.maxBytes??n.maxBytes,headers:r,fetch:e.fetch??t.fetch,path:n.path}}function y(...e){let t=e.filter(e=>!!e);if(t.length===0)return;let n=new Headers;for(let e of t)new Headers(e).forEach((e,t)=>{n.set(t,e)});return n}function b(e,...t){for(let n of t){let t=e[n];if(t?.trim())return t.trim()}}function x(e){if(!e)return;let t=Number.parseInt(e,10);return Number.isFinite(t)?t:void 0}function S(){return{}}function te(e,t){for(let r of t){let t=e[r]?.trim();if(!t)continue;let i;try{i=JSON.parse(t)}catch{throw new n(`${r} must be a JSON object of header names to string values`)}if(!i||typeof i!=`object`||Array.isArray(i)||!Object.values(i).every(e=>typeof e==`string`))throw new n(`${r} must be a JSON object of header names to string values`);return i}}var ne=new Map;function re(e,t){ne.set(e,t)}var C={device:[`HAVE_SPEECH_TRANSCRIBER_DEVICE`],dtype:[`HAVE_SPEECH_TRANSCRIBER_DTYPE`],cacheDir:[`HAVE_SPEECH_TRANSCRIBER_CACHE_DIR`],modelHost:[`HAVE_SPEECH_TRANSCRIBER_MODEL_HOST`]};function w(e={},t={}){let n=t.env??S(),r=v({model:e.model,maxBytes:e.maxBytes},{env:n});return{...e,type:`local`,model:r.model,maxBytes:r.maxBytes,device:e.device??b(n,...C.device),dtype:e.dtype??b(n,...C.dtype),cacheDir:e.cacheDir??b(n,...C.cacheDir),modelHost:e.modelHost??b(n,...C.modelHost)}}var T=`@huggingface/transformers`,E=`Local transcription needs the optional peer dependency ${T}. Install it with \`pnpm add ${T}\` (or npm/yarn equivalent).`;async function D(e){let t;try{t=typeof e==`function`?await e():e??await ie()}catch(e){if(e instanceof n)throw e;let t=new n(`${E} (${se(e)})`,`local`);throw t.cause=e,t}let r=t,i=typeof r?.pipeline==`function`?r:r?.default;if(typeof i?.pipeline!=`function`)throw new n(`${T} did not export pipeline(); expected v4 or later`,`local`);return i}function ie(){return e(()=>import(`./B2rhYkoB.js`),__vite__mapDeps([0,1,2]),import.meta.url)}async function ae(e,t){let n=t.device===`auto`?await O():t.device,r=n=>e.pipeline(`automatic-speech-recognition`,t.model,{device:n,...t.dtype?{dtype:t.dtype}:{},...t.revision?{revision:t.revision}:{},...t.cacheDir?{cache_dir:t.cacheDir}:{},...t.onProgress?{progress_callback:t.onProgress}:{}});try{return{pipeline:await r(n),device:n}}catch(e){if(t.device===`auto`&&n===`webgpu`)return{pipeline:await r(`wasm`),device:`wasm`};throw e}}async function O(){if(oe())return`cpu`;let e=globalThis.navigator?.gpu;if(e)try{if(await e.requestAdapter())return`webgpu`}catch{}return`wasm`}function oe(){return!!globalThis.process?.versions?.node}function se(e){return e instanceof Error?e.message:String(e)}function k(e,t){return t?t.aborted?(e.catch(()=>void 0),Promise.reject(t.reason)):new Promise((n,r)=>{let i=()=>r(t.reason);t.addEventListener(`abort`,i,{once:!0}),e.then(e=>{t.removeEventListener(`abort`,i),n(e)},e=>{t.removeEventListener(`abort`,i),r(e)})}):e}var A=16e3,j=`local`,M=new Set([`audio/wav`,`audio/wave`,`audio/x-wav`,`audio/vnd.wave`]),N=new Set([`audio/pcm`,`audio/x-pcm`,`audio/raw`]);async function P(e,t){return F(await k(le(e,t),t.signal))}function F(e){return pe(fe(e.samples),e.sampleRate,A)}function ce(e,t){let n=a(t);return!!(n&&(M.has(n)||N.has(n))||L(e))}async function I(e,t){if(t.decodeAudio){let n=await t.decodeAudio({bytes:e,mimeType:t.mimeType,signal:t.signal});return _e(n),n}if(he())return ge(e)}async function le(e,t){let r=a(t.mimeType);if(r&&M.has(r)||L(e))return ue(e);if(r&&N.has(r))return H(e,t);let i=await I(e,t);if(i)return i;throw new n(`Cannot decode '${t.mimeType}' audio on this runtime: pass WAV or audio/pcm, or supply a decodeAudio hook (e.g. ffmpeg) for compressed formats`,j)}function L(e){return e.byteLength>=12&&q(e,0,4)===`RIFF`&&q(e,8,4)===`WAVE`}function ue(e){if(!L(e))throw new n(`Invalid WAV data: missing RIFF/WAVE header`,j);let t=new DataView(e.buffer,e.byteOffset,e.byteLength),r,i=12;for(;i+8<=e.byteLength;){let a=q(e,i,4),o=t.getUint32(i+4,!0),s=i+8;if(a===`fmt `)r=V(t,s,o);else if(a===`data`){if(!r)throw new n(`Invalid WAV data: data chunk before fmt chunk`,j);let t=e.byteLength-s,i=o===0||o>t?t:o;return{samples:W(e.subarray(s,s+i),r.channels,r.encoding),sampleRate:r.sampleRate}}i=s+o+o%2}throw new n(`Invalid WAV data: no data chunk`,j)}var R=1,z=3,B=65534;function V(e,t,r){if(r<16)throw new n(`Invalid WAV data: fmt chunk too short`,j);let i=e.getUint16(t,!0),a=e.getUint16(t+2,!0),o=e.getUint32(t+4,!0),s=e.getUint16(t+14,!0);i===B&&r>=26&&(i=e.getUint16(t+24,!0));let c=i===R?{8:`u8`,16:`s16le`,24:`s24le`,32:`s32le`}[s]:i===z?{32:`f32le`,64:`f64le`}[s]:void 0;if(!c||a<1||o<1)throw new n(`Unsupported WAV encoding (format ${i}, ${s}-bit, ${a} channels); use PCM or IEEE float, or supply a decodeAudio hook`,j);return{channels:a,sampleRate:o,encoding:c}}function H(e,t){let r=ve(t.mimeType),i=G(r.rate)??K(t.sampleRate,`sampleRate`),a=G(r.channels)??K(t.channels,`channels`)??1,o=(r.encoding??`s16le`).toLowerCase();if(!i)throw new n(`Raw PCM audio needs a sample rate: use 'audio/pcm;rate=16000' or AudioInput.sampleRate`,j);if(o!==`s16le`&&o!==`f32le`)throw new n(`Unsupported raw PCM encoding '${o}' (expected s16le or f32le)`,j);return{samples:W(e,a,o),sampleRate:i}}var U={u8:1,s16le:2,s24le:3,s32le:4,f32le:4,f64le:8};function W(e,t,n){let r=U[n],i=Math.floor(e.byteLength/(r*t)),a=new DataView(e.buffer,e.byteOffset,e.byteLength),o=Array.from({length:t},()=>new Float32Array(i));for(let e=0;e<i;e++)for(let i=0;i<t;i++){let s=(e*t+i)*r;o[i][e]=de(a,s,n)}return o}function de(e,t,n){switch(n){case`u8`:return(e.getUint8(t)-128)/128;case`s16le`:return e.getInt16(t,!0)/32768;case`s24le`:return(e.getUint8(t)|e.getUint8(t+1)<<8|e.getInt8(t+2)<<16)/8388608;case`s32le`:return e.getInt32(t,!0)/2147483648;case`f32le`:return e.getFloat32(t,!0);case`f64le`:return e.getFloat64(t,!0)}}function fe(e){if(e instanceof Float32Array)return e;if(e.length===1)return e[0];let t=Math.min(...e.map(e=>e.length)),n=new Float32Array(t);for(let r of e)for(let i=0;i<t;i++)n[i]=n[i]+r[i]/e.length;return n}function pe(e,t,n){if(t===n||e.length===0)return e;let r=t/n,i=r>1?me(e,Math.round(r)):e,a=Math.max(1,Math.round(e.length/r)),o=new Float32Array(a);for(let e=0;e<a;e++){let t=e*r,n=Math.floor(t),a=Math.min(n+1,i.length-1),s=t-n;o[e]=i[n]*(1-s)+i[a]*s}return o}function me(e,t){if(t<=1)return e;let n=new Float32Array(e.length),r=Math.floor(t/2),i=0,a=0,o=0,s=0;for(let c=0;c<e.length;c++){let l=Math.max(0,c-r),u=Math.min(e.length,c-r+t);for(;s<u;)i+=e[s],a++,s++;for(;o<l;)i-=e[o],a--,o++;n[c]=i/a}return n}function he(){return typeof globalThis.OfflineAudioContext==`function`}async function ge(e){let t=new OfflineAudioContext(1,1,A),r=new Uint8Array(e.byteLength);r.set(e);let i;try{i=await t.decodeAudioData(r.buffer)}catch(e){throw new n(`The browser could not decode the audio: ${ye(e)}`,j)}return{samples:Array.from({length:i.numberOfChannels},(e,t)=>i.getChannelData(t)),sampleRate:i.sampleRate}}function _e(e){let t=e?.samples instanceof Float32Array?[e.samples]:e?.samples;if(!Array.isArray(t)||t.length===0||!t.every(e=>e instanceof Float32Array)||!(e.sampleRate>0))throw new n(`decodeAudio must return { samples: Float32Array | Float32Array[], sampleRate }`,j)}function ve(e){let t={};for(let n of e.split(`;`).slice(1)){let[e,r]=n.split(`=`);e&&r&&(t[e.trim().toLowerCase()]=r.trim().replace(/^"|"$/g,``))}return t}function G(e){let t=e?Number.parseInt(e,10):NaN;return Number.isFinite(t)&&t>0?t:void 0}function K(e,t){if(e!=null){if(!Number.isInteger(e)||e<1)throw new n(`AudioInput.${t} must be a positive integer, got ${String(e)}`,j);return e}}function q(e,t,n){return String.fromCharCode(...e.subarray(t,t+n))}function ye(e){return e instanceof Error?e.message:String(e)}var be=`onnx-community/whisper-base`,xe=30,Se=30,Ce=new Set([`whisper`,`lite-whisper`]),J=class{type=`local`;options;model;maxBytes;onUsage;runtime;pipelines=new Map;queue=Promise.resolve();constructor(e={}){this.options=e,this.model=e.model?.trim()||`onnx-community/whisper-base`,this.maxBytes=e.maxBytes??26214400,this.onUsage=e.onUsage}async preload(e,t){await k(this.loadPipeline(e?.trim()||this.model),t)}async isCached(e){try{let t=await this.loadRuntime();if(!t.ModelRegistry)return!1;let{dtype:n,revision:r,cacheDir:i}=this.options,a=this.options.device??`auto`,o=a===`auto`?await O():a;return await t.ModelRegistry.is_pipeline_cached(`automatic-speech-recognition`,e?.trim()||this.model,{device:o,...n?{dtype:n}:{},...r?{revision:r}:{},...i?{cache_dir:i}:{}})}catch{return!1}}async transcribe(e){let{signal:t}=e,n=await s(e.audio,{mimeType:e.mimeType,maxBytes:e.maxBytes??this.maxBytes,adapter:this.type,signal:t}),r=Ee(e.audio),i=await P(new Uint8Array(await n.blob.arrayBuffer()),{mimeType:n.mimeType,sampleRate:r.sampleRate,channels:r.channels,decodeAudio:this.options.decodeAudio,signal:t});t?.throwIfAborted();let a=e.model?.trim()||this.model,o=await k(this.loadPipeline(a),t),c=i.length/A,l=await k(this.enqueue(()=>this.run(o.pipeline,i,c,e,a)),t),u={operation:`transcription`,provider:this.type,model:a,audioSeconds:c,bytes:n.bytes},d={...we(l,e.timestampGranularities?.includes(`word`)??!1),language:e.language,durationSeconds:c,provider:this.type,model:a,raw:l,usage:u};return await h(u,this.onUsage,e.onUsage),d}async dispose(){await this.queue;let e=[...this.pipelines.values()];this.pipelines.clear(),await Promise.all(e.map(async e=>{let{pipeline:t}=await e.catch(()=>({pipeline:void 0}));await t?.dispose?.()}))}async run(e,n,r,i,a){let{signal:o}=i;o?.throwIfAborted();let s=await this.loadRuntime(),c={};if(Ce.has(e.model?.config?.model_type??`whisper`)){let t=i.timestampGranularities??[];t.includes(`word`)?c.return_timestamps=`word`:t.includes(`segment`)&&(c.return_timestamps=!0);let n=this.options.chunkLengthSeconds??xe;n>0&&r>Se&&(c.chunk_length_s=n),i.language&&!Te(e,a)&&(c.language=i.language,c.task=`transcribe`)}let l;o&&s.InterruptableStoppingCriteria&&(l=new s.InterruptableStoppingCriteria,c.stopping_criteria=l);let u=()=>l?.interrupt();o?.addEventListener(`abort`,u,{once:!0});try{let t=await e(n,c);return Array.isArray(t)?t[0]??{text:``}:t}catch(e){if(o?.aborted)throw o.reason;let n=c.return_timestamps===`word`&&/cross attentions/i.test(Y(e))?` (word timestamps need a model exported with cross attentions, e.g. onnx-community/whisper-base_timestamped)`:``;throw new t(this.type,`Local transcription failed: ${Y(e)}${n}`,{cause:e})}finally{o?.removeEventListener(`abort`,u)}}enqueue(e){let t=this.queue.then(e,e);return this.queue=t.catch(()=>void 0),t}loadRuntime(){if(!this.runtime){let{transformers:e,configureEnv:t,modelHost:n}=this.options;this.runtime=D(e).then(e=>(e.env&&(n&&(e.env.remoteHost=n),t?.(e.env)),e)),this.runtime.catch(()=>{this.runtime=void 0})}return this.runtime}loadPipeline(e){let r=this.pipelines.get(e);return r||(r=this.loadRuntime().then(r=>ae(r,{model:e,device:this.options.device??`auto`,dtype:this.options.dtype,revision:this.options.revision,cacheDir:this.options.cacheDir,onProgress:this.options.onProgress}).catch(r=>{throw r instanceof n?r:new t(this.type,`Failed to load local model '${e}': ${Y(r)}`,{cause:r})})),this.pipelines.set(e,r),r.catch(()=>{this.pipelines.get(e)===r&&this.pipelines.delete(e)})),r}};function we(e,t){let n={text:(e.text??``).trim()},r=e.chunks;return r?.length&&(t?n.words=r.filter(e=>e.text.trim()).map(e=>({word:e.text.trim(),startSeconds:e.timestamp[0],endSeconds:e.timestamp[1]??e.timestamp[0]})):n.segments=r.map(e=>({text:e.text.trim(),startSeconds:e.timestamp[0],endSeconds:e.timestamp[1]??void 0}))),n}function Te(e,t){let n=e.model?.generation_config?.is_multilingual;return typeof n==`boolean`?!n:/\.en(?:$|[-_])/i.test(t)}function Ee(e){return e&&typeof e==`object`&&`data`in e&&!(e instanceof Uint8Array)?{sampleRate:e.sampleRate,channels:e.channels}:{}}function Y(e){return e instanceof Error?e.message:String(e)}var De=`audio/pcm;rate=${A};encoding=f32le`;function Oe(e={},t=globalThis){let n=e.onProgress,r=new J({...w(e),maxBytes:1/0,onProgress:e=>{n?.(e),t.postMessage({kind:`progress`,progress:Pe(e)})}}),i=new Map,a=e=>t.postMessage(e),o=e=>{let t=e.data;if(!t||typeof t!=`object`)return;if(t.kind===`abort`){i.get(t.id)?.abort();return}let n=new AbortController;i.set(t.id,n),(t.kind===`isCached`?r.isCached(t.model).then(e=>{a({kind:`result`,id:t.id,cached:e})}):t.kind===`preload`?r.preload(t.model,n.signal).then(()=>{a({kind:`result`,id:t.id})}):Promise.resolve().then(()=>r.transcribe({audio:Z(t.audio),model:t.model,language:t.language,timestampGranularities:t.timestampGranularities,signal:n.signal})).then(e=>{a({kind:`result`,id:t.id,result:e})})).catch(e=>{a({kind:`error`,id:t.id,error:Me(e)})}).finally(()=>i.delete(t.id))};return t.addEventListener(`message`,o),async()=>{t.removeEventListener(`message`,o);for(let e of i.values())e.abort();await r.dispose()}}var ke=class{type=`local`;endpoint;options;calls=new Map;nextId=1;closed=!1;closing=new AbortController;listener=e=>this.onMessage(e.data);constructor(e,t={}){this.endpoint=e,this.options=t,e.addEventListener(`message`,this.listener)}async isCached(e){try{let{cached:t}=await this.call({kind:`isCached`,model:e},void 0);return t===!0}catch{return!1}}async preload(e,t){await this.call({kind:`preload`,model:e},t)}async transcribe(e){this.assertOpen();let{signal:n}=e,{audio:r,bytes:i}=await k(this.prepare(e),this.closing.signal),{result:a}=await this.call({kind:`transcribe`,audio:r,model:e.model,language:e.language,timestampGranularities:e.timestampGranularities},n,je(r));if(!a)throw new t(this.type,`Worker returned no result`);let o={...a.usage??{operation:`transcription`,provider:this.type},bytes:i};return await h(o,this.options.onUsage,e.onUsage),{...a,usage:o}}close(){if(!this.closed){this.closed=!0,this.endpoint.removeEventListener(`message`,this.listener),this.closing.abort(X());for(let[e,t]of this.calls)this.endpoint.postMessage({kind:`abort`,id:e}),t.reject(X());this.calls.clear()}}async prepare(e){let{signal:t}=e,n=await s(e.audio,{mimeType:e.mimeType,maxBytes:e.maxBytes??this.options.maxBytes??26214400,adapter:this.type,signal:t}),r=new Uint8Array(await n.blob.arrayBuffer());if(!ce(r,n.mimeType)){let e=await k(I(r,{mimeType:n.mimeType,decodeAudio:this.options.decodeAudio,signal:t}),t);if(e)return{audio:{kind:`decoded`,samples:(e.samples instanceof Float32Array?[e.samples]:e.samples).map(Q),sampleRate:e.sampleRate},bytes:n.bytes}}let i=typeof e.audio==`object`&&`data`in e.audio&&!(e.audio instanceof Uint8Array)?e.audio:void 0;return{audio:{kind:`encoded`,bytes:Q(r),mimeType:n.mimeType,sampleRate:i?.sampleRate,channels:i?.channels},bytes:n.bytes}}assertOpen(){if(this.closed)throw X()}call(e,t,n=[]){this.assertOpen(),t?.throwIfAborted();let r=this.nextId++;return new Promise((i,a)=>{let o=()=>{this.calls.delete(r),this.endpoint.postMessage({kind:`abort`,id:r}),a(t?.reason)},s=()=>t?.removeEventListener(`abort`,o);this.calls.set(r,{resolve:e=>{s(),i(e)},reject:e=>{s(),a(e)}}),t?.addEventListener(`abort`,o,{once:!0}),this.endpoint.postMessage({...e,id:r},n)})}onMessage(e){if(!e||typeof e!=`object`)return;if(e.kind===`progress`){this.options.onProgress?.(e.progress);return}let t=this.calls.get(e.id);t&&(this.calls.delete(e.id),e.kind===`result`?t.resolve({result:e.result,cached:e.cached}):t.reject(Ne(e.error)))}};function X(){return new n(`Worker client closed`,`local`)}function Z(e){if(e.kind===`decoded`){let t=F({samples:e.samples,sampleRate:e.sampleRate});return{data:new Uint8Array(t.buffer,t.byteOffset,t.byteLength),mimeType:De}}return{data:e.bytes,mimeType:e.mimeType,sampleRate:e.sampleRate,channels:e.channels}}function Q(e){let{buffer:t}=e;return Ae(t)&&e.byteOffset===0&&e.byteLength===t.byteLength?e:e.slice()}function Ae(e){return Object.prototype.toString.call(e)===`[object ArrayBuffer]`}function je(e){let t=e.kind===`decoded`?e.samples:[e.bytes];return[...new Set(t.map(e=>e.buffer))]}function Me(e){return e instanceof r?{name:e.name,message:e.message,code:e.code}:e instanceof Error?{name:e.name,message:e.message}:{name:`Error`,message:String(e)}}function Ne(e){switch(e.name){case`SpeechConfigurationError`:return new n(e.message,`local`);case`SpeechProviderError`:return new t(`local`,e.message);case`AbortError`:return new DOMException(e.message,`AbortError`);default:{let t=Error(e.message);return t.name=e.name,t}}}function Pe(e){let t={status:e.status};for(let[n,r]of Object.entries(e))(r===null||[`string`,`number`,`boolean`].includes(typeof r))&&(t[n]=r);return t}function $(e={},t={}){return new J(w(e,t))}async function Fe(){try{return await D(void 0),!0}catch{return!1}}re(`local`,(e,t)=>$({...e,type:`local`},t));export{be as DEFAULT_LOCAL_MODEL,A as LOCAL_SAMPLE_RATE,C as LOCAL_TRANSCRIBER_ENV_KEYS,J as LocalTranscriber,ke as LocalTranscriberWorkerClient,E as TRANSFORMERS_INSTALL_HINT,T as TRANSFORMERS_PACKAGE,$ as createLocalTranscriber,P as decodeToPcm16k,Fe as isLocalTranscriberAvailable,Oe as serveLocalTranscriber};
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./CMgP05SN.js","./COiEfhsA.js","./BaNbYf_w.js"])))=>i.map(i=>d[i]);
2
+ import{t as e}from"./BaNbYf_w.js";import{i as t,n,r}from"./BQxY8kkL.js";var i={"audio/webm":`webm`,"video/webm":`webm`,"audio/mp4":`m4a`,"audio/m4a":`m4a`,"audio/x-m4a":`m4a`,"video/mp4":`mp4`,"audio/wav":`wav`,"audio/wave":`wav`,"audio/x-wav":`wav`,"audio/vnd.wave":`wav`,"audio/ogg":`ogg`,"application/ogg":`ogg`,"audio/mpeg":`mp3`,"audio/mp3":`mp3`,"audio/mpga":`mp3`,"audio/flac":`flac`,"audio/x-flac":`flac`};function a(e){return e?.split(`;`)[0]?.trim().toLowerCase()||void 0}function o(e){let t=a(e);return t?i[t]:void 0}async function s(e,t={}){let r=c(e)?e:{data:e},{adapter:i,signal:a}=t;a?.throwIfAborted();let s=u(t.maxBytes,i),f=r.data,p=typeof Blob<`u`&&f instanceof Blob?f.type:void 0,h=t.mimeType??r.mimeType??r.contentType??(p||void 0)??`application/octet-stream`,g;if(typeof Blob<`u`&&f instanceof Blob)d(f.size,s,i),g=f.type===h?f:new Blob([f],{type:h});else if(f instanceof Uint8Array)d(f.byteLength,s,i),g=new Blob([m(f)],{type:h});else if(f instanceof ArrayBuffer)d(f.byteLength,s,i),g=new Blob([f],{type:h});else if(l(f)){let e=await ee(f,s,i,a);g=new Blob(e,{type:h})}else throw new n(`Unsupported audio input: expected Blob, Buffer, Uint8Array, ArrayBuffer, or ReadableStream`,i);if(g.size===0)throw new n(`Audio input is empty`,i);let _=t.deriveExtension===!1?void 0:o(h),v=t.defaultBasename??`audio`,y=r.filename??(_?`${v}.${_}`:v);return{blob:g,mimeType:h,bytes:g.size,filename:y,durationSeconds:r.durationSeconds}}function c(e){return typeof e==`object`&&!!e&&`data`in e&&!(typeof Blob<`u`&&e instanceof Blob)&&!(e instanceof Uint8Array)&&!(e instanceof ArrayBuffer)&&!l(e)}function l(e){return typeof e==`object`&&!!e&&typeof e.getReader==`function`}function u(e,t){if(e===void 0)return 1/0;if(Number.isNaN(e)||e<=0)throw new n(`maxBytes must be a positive number`,t);return e}function d(e,t,r){if(e>t)throw new n(`Audio input exceeds maxBytes (${e} > ${t} bytes)`,r)}async function ee(e,t,r,i){let a=e.getReader(),o=[],s=0,c=()=>{a.cancel(i?.reason).catch(()=>void 0)};i?.addEventListener(`abort`,c,{once:!0});try{for(;;){let{done:e,value:c}=await a.read();if(i?.throwIfAborted(),e)break;if(s+=f(c,r),s>t)throw await a.cancel().catch(()=>void 0),new n(`Audio stream exceeds maxBytes (more than ${t} bytes)`,r);o.push(p(c))}}finally{i?.removeEventListener(`abort`,c),a.releaseLock()}return o}function f(e,t){if(e instanceof Uint8Array||e instanceof ArrayBuffer)return e.byteLength;throw new n(`Audio stream chunks must be Uint8Array or ArrayBuffer`,t)}function p(e){return e instanceof Uint8Array?m(e):new Uint8Array(e.slice(0))}function m(e){let t=new Uint8Array(e.byteLength);return t.set(e),t}async function h(e,...t){for(let n of t)n&&await n(e)}var g={type:[`HAVE_SPEECH_TRANSCRIBER_TYPE`,`HAVE_SPEECH_STT_TYPE`,`HAVE_SPEECH_STT_ADAPTER`,`STT_ADAPTER`],baseUrl:[`HAVE_SPEECH_TRANSCRIBER_BASE_URL`,`HAVE_SPEECH_STT_BASE_URL`,`STT_BASE_URL`],model:[`HAVE_SPEECH_TRANSCRIBER_MODEL`,`HAVE_SPEECH_STT_MODEL`,`STT_MODEL`],apiKey:[`HAVE_SPEECH_TRANSCRIBER_API_KEY`,`HAVE_SPEECH_STT_API_KEY`,`STT_API_KEY`,`SPEECH_API_KEY`],timeoutMs:[`HAVE_SPEECH_TRANSCRIBER_TIMEOUT`,`HAVE_SPEECH_TRANSCRIBER_TIMEOUT_MS`,`HAVE_SPEECH_STT_TIMEOUT_MS`,`STT_TIMEOUT_MS`],maxBytes:[`HAVE_SPEECH_TRANSCRIBER_MAX_BYTES`,`STT_MAX_BYTES`],headers:[`HAVE_SPEECH_TRANSCRIBER_HEADERS`,`STT_HEADERS`],path:[`HAVE_SPEECH_TRANSCRIBER_PATH`,`HAVE_SPEECH_STT_PATH`,`STT_PATH`]};function _(e){return{type:b(e,...g.type),baseUrl:b(e,...g.baseUrl),model:b(e,...g.model),apiKey:b(e,...g.apiKey),timeoutMs:x(b(e,...g.timeoutMs)),maxBytes:x(b(e,...g.maxBytes)),headers:te(e,g.headers),path:b(e,...g.path)}}function v(e={},t={}){let n=_(t.env??S()),r=y(n.headers,t.headers,e.headers);return{type:e.type??n.type,baseUrl:(e.baseUrl??n.baseUrl)?.trim(),model:e.model??n.model,apiKey:e.apiKey??n.apiKey,timeoutMs:e.timeoutMs??n.timeoutMs,maxBytes:e.maxBytes??n.maxBytes,headers:r,fetch:e.fetch??t.fetch,path:n.path}}function y(...e){let t=e.filter(e=>!!e);if(t.length===0)return;let n=new Headers;for(let e of t)new Headers(e).forEach((e,t)=>{n.set(t,e)});return n}function b(e,...t){for(let n of t){let t=e[n];if(t?.trim())return t.trim()}}function x(e){if(!e)return;let t=Number.parseInt(e,10);return Number.isFinite(t)?t:void 0}function S(){return{}}function te(e,t){for(let r of t){let t=e[r]?.trim();if(!t)continue;let i;try{i=JSON.parse(t)}catch{throw new n(`${r} must be a JSON object of header names to string values`)}if(!i||typeof i!=`object`||Array.isArray(i)||!Object.values(i).every(e=>typeof e==`string`))throw new n(`${r} must be a JSON object of header names to string values`);return i}}var ne=new Map;function re(e,t){ne.set(e,t)}var C={device:[`HAVE_SPEECH_TRANSCRIBER_DEVICE`],dtype:[`HAVE_SPEECH_TRANSCRIBER_DTYPE`],cacheDir:[`HAVE_SPEECH_TRANSCRIBER_CACHE_DIR`],modelHost:[`HAVE_SPEECH_TRANSCRIBER_MODEL_HOST`]};function w(e={},t={}){let n=t.env??S(),r=v({model:e.model,maxBytes:e.maxBytes},{env:n});return{...e,type:`local`,model:r.model,maxBytes:r.maxBytes,device:e.device??b(n,...C.device),dtype:e.dtype??b(n,...C.dtype),cacheDir:e.cacheDir??b(n,...C.cacheDir),modelHost:e.modelHost??b(n,...C.modelHost)}}var T=`@huggingface/transformers`,E=`Local transcription needs the optional peer dependency ${T}. Install it with \`pnpm add ${T}\` (or npm/yarn equivalent).`;async function D(e){let t;try{t=typeof e==`function`?await e():e??await ie()}catch(e){if(e instanceof n)throw e;let t=new n(`${E} (${se(e)})`,`local`);throw t.cause=e,t}let r=t,i=typeof r?.pipeline==`function`?r:r?.default;if(typeof i?.pipeline!=`function`)throw new n(`${T} did not export pipeline(); expected v4 or later`,`local`);return i}function ie(){return e(()=>import(`./CMgP05SN.js`),__vite__mapDeps([0,1,2]),import.meta.url)}async function ae(e,t){let n=t.device===`auto`?await O():t.device,r=n=>e.pipeline(`automatic-speech-recognition`,t.model,{device:n,...t.dtype?{dtype:t.dtype}:{},...t.revision?{revision:t.revision}:{},...t.cacheDir?{cache_dir:t.cacheDir}:{},...t.onProgress?{progress_callback:t.onProgress}:{}});try{return{pipeline:await r(n),device:n}}catch(e){if(t.device===`auto`&&n===`webgpu`)return{pipeline:await r(`wasm`),device:`wasm`};throw e}}async function O(){if(oe())return`cpu`;let e=globalThis.navigator?.gpu;if(e)try{if(await e.requestAdapter())return`webgpu`}catch{}return`wasm`}function oe(){return!!globalThis.process?.versions?.node}function se(e){return e instanceof Error?e.message:String(e)}function k(e,t){return t?t.aborted?(e.catch(()=>void 0),Promise.reject(t.reason)):new Promise((n,r)=>{let i=()=>r(t.reason);t.addEventListener(`abort`,i,{once:!0}),e.then(e=>{t.removeEventListener(`abort`,i),n(e)},e=>{t.removeEventListener(`abort`,i),r(e)})}):e}var A=16e3,j=`local`,M=new Set([`audio/wav`,`audio/wave`,`audio/x-wav`,`audio/vnd.wave`]),N=new Set([`audio/pcm`,`audio/x-pcm`,`audio/raw`]);async function P(e,t){return F(await k(le(e,t),t.signal))}function F(e){return pe(fe(e.samples),e.sampleRate,A)}function ce(e,t){let n=a(t);return!!(n&&(M.has(n)||N.has(n))||L(e))}async function I(e,t){if(t.decodeAudio){let n=await t.decodeAudio({bytes:e,mimeType:t.mimeType,signal:t.signal});return _e(n),n}if(he())return ge(e)}async function le(e,t){let r=a(t.mimeType);if(r&&M.has(r)||L(e))return ue(e);if(r&&N.has(r))return H(e,t);let i=await I(e,t);if(i)return i;throw new n(`Cannot decode '${t.mimeType}' audio on this runtime: pass WAV or audio/pcm, or supply a decodeAudio hook (e.g. ffmpeg) for compressed formats`,j)}function L(e){return e.byteLength>=12&&q(e,0,4)===`RIFF`&&q(e,8,4)===`WAVE`}function ue(e){if(!L(e))throw new n(`Invalid WAV data: missing RIFF/WAVE header`,j);let t=new DataView(e.buffer,e.byteOffset,e.byteLength),r,i=12;for(;i+8<=e.byteLength;){let a=q(e,i,4),o=t.getUint32(i+4,!0),s=i+8;if(a===`fmt `)r=V(t,s,o);else if(a===`data`){if(!r)throw new n(`Invalid WAV data: data chunk before fmt chunk`,j);let t=e.byteLength-s,i=o===0||o>t?t:o;return{samples:W(e.subarray(s,s+i),r.channels,r.encoding),sampleRate:r.sampleRate}}i=s+o+o%2}throw new n(`Invalid WAV data: no data chunk`,j)}var R=1,z=3,B=65534;function V(e,t,r){if(r<16)throw new n(`Invalid WAV data: fmt chunk too short`,j);let i=e.getUint16(t,!0),a=e.getUint16(t+2,!0),o=e.getUint32(t+4,!0),s=e.getUint16(t+14,!0);i===B&&r>=26&&(i=e.getUint16(t+24,!0));let c=i===R?{8:`u8`,16:`s16le`,24:`s24le`,32:`s32le`}[s]:i===z?{32:`f32le`,64:`f64le`}[s]:void 0;if(!c||a<1||o<1)throw new n(`Unsupported WAV encoding (format ${i}, ${s}-bit, ${a} channels); use PCM or IEEE float, or supply a decodeAudio hook`,j);return{channels:a,sampleRate:o,encoding:c}}function H(e,t){let r=ve(t.mimeType),i=G(r.rate)??K(t.sampleRate,`sampleRate`),a=G(r.channels)??K(t.channels,`channels`)??1,o=(r.encoding??`s16le`).toLowerCase();if(!i)throw new n(`Raw PCM audio needs a sample rate: use 'audio/pcm;rate=16000' or AudioInput.sampleRate`,j);if(o!==`s16le`&&o!==`f32le`)throw new n(`Unsupported raw PCM encoding '${o}' (expected s16le or f32le)`,j);return{samples:W(e,a,o),sampleRate:i}}var U={u8:1,s16le:2,s24le:3,s32le:4,f32le:4,f64le:8};function W(e,t,n){let r=U[n],i=Math.floor(e.byteLength/(r*t)),a=new DataView(e.buffer,e.byteOffset,e.byteLength),o=Array.from({length:t},()=>new Float32Array(i));for(let e=0;e<i;e++)for(let i=0;i<t;i++){let s=(e*t+i)*r;o[i][e]=de(a,s,n)}return o}function de(e,t,n){switch(n){case`u8`:return(e.getUint8(t)-128)/128;case`s16le`:return e.getInt16(t,!0)/32768;case`s24le`:return(e.getUint8(t)|e.getUint8(t+1)<<8|e.getInt8(t+2)<<16)/8388608;case`s32le`:return e.getInt32(t,!0)/2147483648;case`f32le`:return e.getFloat32(t,!0);case`f64le`:return e.getFloat64(t,!0)}}function fe(e){if(e instanceof Float32Array)return e;if(e.length===1)return e[0];let t=Math.min(...e.map(e=>e.length)),n=new Float32Array(t);for(let r of e)for(let i=0;i<t;i++)n[i]=n[i]+r[i]/e.length;return n}function pe(e,t,n){if(t===n||e.length===0)return e;let r=t/n,i=r>1?me(e,Math.round(r)):e,a=Math.max(1,Math.round(e.length/r)),o=new Float32Array(a);for(let e=0;e<a;e++){let t=e*r,n=Math.floor(t),a=Math.min(n+1,i.length-1),s=t-n;o[e]=i[n]*(1-s)+i[a]*s}return o}function me(e,t){if(t<=1)return e;let n=new Float32Array(e.length),r=Math.floor(t/2),i=0,a=0,o=0,s=0;for(let c=0;c<e.length;c++){let l=Math.max(0,c-r),u=Math.min(e.length,c-r+t);for(;s<u;)i+=e[s],a++,s++;for(;o<l;)i-=e[o],a--,o++;n[c]=i/a}return n}function he(){return typeof globalThis.OfflineAudioContext==`function`}async function ge(e){let t=new OfflineAudioContext(1,1,A),r=new Uint8Array(e.byteLength);r.set(e);let i;try{i=await t.decodeAudioData(r.buffer)}catch(e){throw new n(`The browser could not decode the audio: ${ye(e)}`,j)}return{samples:Array.from({length:i.numberOfChannels},(e,t)=>i.getChannelData(t)),sampleRate:i.sampleRate}}function _e(e){let t=e?.samples instanceof Float32Array?[e.samples]:e?.samples;if(!Array.isArray(t)||t.length===0||!t.every(e=>e instanceof Float32Array)||!(e.sampleRate>0))throw new n(`decodeAudio must return { samples: Float32Array | Float32Array[], sampleRate }`,j)}function ve(e){let t={};for(let n of e.split(`;`).slice(1)){let[e,r]=n.split(`=`);e&&r&&(t[e.trim().toLowerCase()]=r.trim().replace(/^"|"$/g,``))}return t}function G(e){let t=e?Number.parseInt(e,10):NaN;return Number.isFinite(t)&&t>0?t:void 0}function K(e,t){if(e!=null){if(!Number.isInteger(e)||e<1)throw new n(`AudioInput.${t} must be a positive integer, got ${String(e)}`,j);return e}}function q(e,t,n){return String.fromCharCode(...e.subarray(t,t+n))}function ye(e){return e instanceof Error?e.message:String(e)}var be=`onnx-community/whisper-base`,xe=30,Se=30,Ce=new Set([`whisper`,`lite-whisper`]),J=class{type=`local`;options;model;maxBytes;onUsage;runtime;pipelines=new Map;queue=Promise.resolve();constructor(e={}){this.options=e,this.model=e.model?.trim()||`onnx-community/whisper-base`,this.maxBytes=e.maxBytes??26214400,this.onUsage=e.onUsage}async preload(e,t){await k(this.loadPipeline(e?.trim()||this.model),t)}async isCached(e){try{let t=await this.loadRuntime();if(!t.ModelRegistry)return!1;let{dtype:n,revision:r,cacheDir:i}=this.options,a=this.options.device??`auto`,o=a===`auto`?await O():a;return await t.ModelRegistry.is_pipeline_cached(`automatic-speech-recognition`,e?.trim()||this.model,{device:o,...n?{dtype:n}:{},...r?{revision:r}:{},...i?{cache_dir:i}:{}})}catch{return!1}}async transcribe(e){let{signal:t}=e,n=await s(e.audio,{mimeType:e.mimeType,maxBytes:e.maxBytes??this.maxBytes,adapter:this.type,signal:t}),r=Ee(e.audio),i=await P(new Uint8Array(await n.blob.arrayBuffer()),{mimeType:n.mimeType,sampleRate:r.sampleRate,channels:r.channels,decodeAudio:this.options.decodeAudio,signal:t});t?.throwIfAborted();let a=e.model?.trim()||this.model,o=await k(this.loadPipeline(a),t),c=i.length/A,l=await k(this.enqueue(()=>this.run(o.pipeline,i,c,e,a)),t),u={operation:`transcription`,provider:this.type,model:a,audioSeconds:c,bytes:n.bytes},d={...we(l,e.timestampGranularities?.includes(`word`)??!1),language:e.language,durationSeconds:c,provider:this.type,model:a,raw:l,usage:u};return await h(u,this.onUsage,e.onUsage),d}async dispose(){await this.queue;let e=[...this.pipelines.values()];this.pipelines.clear(),await Promise.all(e.map(async e=>{let{pipeline:t}=await e.catch(()=>({pipeline:void 0}));await t?.dispose?.()}))}async run(e,n,r,i,a){let{signal:o}=i;o?.throwIfAborted();let s=await this.loadRuntime(),c={};if(Ce.has(e.model?.config?.model_type??`whisper`)){let t=i.timestampGranularities??[];t.includes(`word`)?c.return_timestamps=`word`:t.includes(`segment`)&&(c.return_timestamps=!0);let n=this.options.chunkLengthSeconds??xe;n>0&&r>Se&&(c.chunk_length_s=n),i.language&&!Te(e,a)&&(c.language=i.language,c.task=`transcribe`)}let l;o&&s.InterruptableStoppingCriteria&&(l=new s.InterruptableStoppingCriteria,c.stopping_criteria=l);let u=()=>l?.interrupt();o?.addEventListener(`abort`,u,{once:!0});try{let t=await e(n,c);return Array.isArray(t)?t[0]??{text:``}:t}catch(e){if(o?.aborted)throw o.reason;let n=c.return_timestamps===`word`&&/cross attentions/i.test(Y(e))?` (word timestamps need a model exported with cross attentions, e.g. onnx-community/whisper-base_timestamped)`:``;throw new t(this.type,`Local transcription failed: ${Y(e)}${n}`,{cause:e})}finally{o?.removeEventListener(`abort`,u)}}enqueue(e){let t=this.queue.then(e,e);return this.queue=t.catch(()=>void 0),t}loadRuntime(){if(!this.runtime){let{transformers:e,configureEnv:t,modelHost:n}=this.options;this.runtime=D(e).then(e=>(e.env&&(n&&(e.env.remoteHost=n),t?.(e.env)),e)),this.runtime.catch(()=>{this.runtime=void 0})}return this.runtime}loadPipeline(e){let r=this.pipelines.get(e);return r||(r=this.loadRuntime().then(r=>ae(r,{model:e,device:this.options.device??`auto`,dtype:this.options.dtype,revision:this.options.revision,cacheDir:this.options.cacheDir,onProgress:this.options.onProgress}).catch(r=>{throw r instanceof n?r:new t(this.type,`Failed to load local model '${e}': ${Y(r)}`,{cause:r})})),this.pipelines.set(e,r),r.catch(()=>{this.pipelines.get(e)===r&&this.pipelines.delete(e)})),r}};function we(e,t){let n={text:(e.text??``).trim()},r=e.chunks;return r?.length&&(t?n.words=r.filter(e=>e.text.trim()).map(e=>({word:e.text.trim(),startSeconds:e.timestamp[0],endSeconds:e.timestamp[1]??e.timestamp[0]})):n.segments=r.map(e=>({text:e.text.trim(),startSeconds:e.timestamp[0],endSeconds:e.timestamp[1]??void 0}))),n}function Te(e,t){let n=e.model?.generation_config?.is_multilingual;return typeof n==`boolean`?!n:/\.en(?:$|[-_])/i.test(t)}function Ee(e){return e&&typeof e==`object`&&`data`in e&&!(e instanceof Uint8Array)?{sampleRate:e.sampleRate,channels:e.channels}:{}}function Y(e){return e instanceof Error?e.message:String(e)}var De=`audio/pcm;rate=${A};encoding=f32le`;function Oe(e={},t=globalThis){let n=e.onProgress,r=new J({...w(e),maxBytes:1/0,onProgress:e=>{n?.(e),t.postMessage({kind:`progress`,progress:Pe(e)})}}),i=new Map,a=e=>t.postMessage(e),o=e=>{let t=e.data;if(!t||typeof t!=`object`)return;if(t.kind===`abort`){i.get(t.id)?.abort();return}let n=new AbortController;i.set(t.id,n),(t.kind===`isCached`?r.isCached(t.model).then(e=>{a({kind:`result`,id:t.id,cached:e})}):t.kind===`preload`?r.preload(t.model,n.signal).then(()=>{a({kind:`result`,id:t.id})}):Promise.resolve().then(()=>r.transcribe({audio:Z(t.audio),model:t.model,language:t.language,timestampGranularities:t.timestampGranularities,signal:n.signal})).then(e=>{a({kind:`result`,id:t.id,result:e})})).catch(e=>{a({kind:`error`,id:t.id,error:Me(e)})}).finally(()=>i.delete(t.id))};return t.addEventListener(`message`,o),async()=>{t.removeEventListener(`message`,o);for(let e of i.values())e.abort();await r.dispose()}}var ke=class{type=`local`;endpoint;options;calls=new Map;nextId=1;closed=!1;closing=new AbortController;listener=e=>this.onMessage(e.data);constructor(e,t={}){this.endpoint=e,this.options=t,e.addEventListener(`message`,this.listener)}async isCached(e){try{let{cached:t}=await this.call({kind:`isCached`,model:e},void 0);return t===!0}catch{return!1}}async preload(e,t){await this.call({kind:`preload`,model:e},t)}async transcribe(e){this.assertOpen();let{signal:n}=e,{audio:r,bytes:i}=await k(this.prepare(e),this.closing.signal),{result:a}=await this.call({kind:`transcribe`,audio:r,model:e.model,language:e.language,timestampGranularities:e.timestampGranularities},n,je(r));if(!a)throw new t(this.type,`Worker returned no result`);let o={...a.usage??{operation:`transcription`,provider:this.type},bytes:i};return await h(o,this.options.onUsage,e.onUsage),{...a,usage:o}}close(){if(!this.closed){this.closed=!0,this.endpoint.removeEventListener(`message`,this.listener),this.closing.abort(X());for(let[e,t]of this.calls)this.endpoint.postMessage({kind:`abort`,id:e}),t.reject(X());this.calls.clear()}}async prepare(e){let{signal:t}=e,n=await s(e.audio,{mimeType:e.mimeType,maxBytes:e.maxBytes??this.options.maxBytes??26214400,adapter:this.type,signal:t}),r=new Uint8Array(await n.blob.arrayBuffer());if(!ce(r,n.mimeType)){let e=await k(I(r,{mimeType:n.mimeType,decodeAudio:this.options.decodeAudio,signal:t}),t);if(e)return{audio:{kind:`decoded`,samples:(e.samples instanceof Float32Array?[e.samples]:e.samples).map(Q),sampleRate:e.sampleRate},bytes:n.bytes}}let i=typeof e.audio==`object`&&`data`in e.audio&&!(e.audio instanceof Uint8Array)?e.audio:void 0;return{audio:{kind:`encoded`,bytes:Q(r),mimeType:n.mimeType,sampleRate:i?.sampleRate,channels:i?.channels},bytes:n.bytes}}assertOpen(){if(this.closed)throw X()}call(e,t,n=[]){this.assertOpen(),t?.throwIfAborted();let r=this.nextId++;return new Promise((i,a)=>{let o=()=>{this.calls.delete(r),this.endpoint.postMessage({kind:`abort`,id:r}),a(t?.reason)},s=()=>t?.removeEventListener(`abort`,o);this.calls.set(r,{resolve:e=>{s(),i(e)},reject:e=>{s(),a(e)}}),t?.addEventListener(`abort`,o,{once:!0}),this.endpoint.postMessage({...e,id:r},n)})}onMessage(e){if(!e||typeof e!=`object`)return;if(e.kind===`progress`){this.options.onProgress?.(e.progress);return}let t=this.calls.get(e.id);t&&(this.calls.delete(e.id),e.kind===`result`?t.resolve({result:e.result,cached:e.cached}):t.reject(Ne(e.error)))}};function X(){return new n(`Worker client closed`,`local`)}function Z(e){if(e.kind===`decoded`){let t=F({samples:e.samples,sampleRate:e.sampleRate});return{data:new Uint8Array(t.buffer,t.byteOffset,t.byteLength),mimeType:De}}return{data:e.bytes,mimeType:e.mimeType,sampleRate:e.sampleRate,channels:e.channels}}function Q(e){let{buffer:t}=e;return Ae(t)&&e.byteOffset===0&&e.byteLength===t.byteLength?e:e.slice()}function Ae(e){return Object.prototype.toString.call(e)===`[object ArrayBuffer]`}function je(e){let t=e.kind===`decoded`?e.samples:[e.bytes];return[...new Set(t.map(e=>e.buffer))]}function Me(e){return e instanceof r?{name:e.name,message:e.message,code:e.code}:e instanceof Error?{name:e.name,message:e.message}:{name:`Error`,message:String(e)}}function Ne(e){switch(e.name){case`SpeechConfigurationError`:return new n(e.message,`local`);case`SpeechProviderError`:return new t(`local`,e.message);case`AbortError`:return new DOMException(e.message,`AbortError`);default:{let t=Error(e.message);return t.name=e.name,t}}}function Pe(e){let t={status:e.status};for(let[n,r]of Object.entries(e))(r===null||[`string`,`number`,`boolean`].includes(typeof r))&&(t[n]=r);return t}function $(e={},t={}){return new J(w(e,t))}async function Fe(){try{return await D(void 0),!0}catch{return!1}}re(`local`,(e,t)=>$({...e,type:`local`},t));export{be as DEFAULT_LOCAL_MODEL,A as LOCAL_SAMPLE_RATE,C as LOCAL_TRANSCRIBER_ENV_KEYS,J as LocalTranscriber,ke as LocalTranscriberWorkerClient,E as TRANSFORMERS_INSTALL_HINT,T as TRANSFORMERS_PACKAGE,$ as createLocalTranscriber,P as decodeToPcm16k,Fe as isLocalTranscriberAvailable,Oe as serveLocalTranscriber};
@@ -1 +1 @@
1
- import{n as e}from"./COiEfhsA.js";import{n as t,r as n}from"./C7zBd-pD.js";import{t as r}from"./CA-A9Ngs.js";var i=e({WhisperCppSTTAdapter:()=>o}),a={"tiny.en":78643200,"base.en":148897792,"small.en":488636416,tiny:78643200,base:148897792,small:488636416},o=class{type=`whisper-cpp`;_initState=`uninitialized`;options;_isListening=!1;mediaRecorder=null;audioChunks=[];stream=null;resultListeners=new Set;errorListeners=new Set;startListeners=new Set;endListeners=new Set;whisperWeb=null;modelDownloaded=!1;processingPromise=null;processingResolve=null;constructor(e={}){this.options={type:`whisper-cpp`,model:`tiny.en`,...e}}get initState(){return this._initState}get model(){return this.options.model||`tiny.en`}async ensureInitialized(e){if(this._initState!==`ready`){if(this._initState===`initializing`)return new Promise((e,t)=>{let n=()=>{this._initState===`ready`?e():this._initState===`error`?t(Error(`Initialization failed`)):setTimeout(n,50)};n()});this._initState=`initializing`;try{if(typeof WebAssembly>`u`)throw new t(`WebAssembly`,`whisper-cpp`);let n=a[this.model]||a[`tiny.en`];e?.({state:`downloading`,bytesLoaded:0,bytesTotal:n,percent:0,currentFile:`whisper-${this.model}`}),this.whisperWeb=await this.importWhisperWeb();let r=typeof crossOriginIsolated<`u`&&crossOriginIsolated;if(console.log(`[WhisperCpp] crossOriginIsolated:`,r),!r)throw new t(`Cross-origin isolation required. Add headers: Cross-Origin-Opener-Policy: same-origin, Cross-Origin-Embedder-Policy: require-corp`,`whisper-cpp`);let{supported:i,error:o}=await this.whisperWeb.canUseWhisperWeb(this.model);if(console.log(`[WhisperCpp] canUseWhisperWeb:`,{supported:i,error:o}),!i)throw new t(o||`whisper-web not supported in this browser`,`whisper-cpp`);await this.whisperWeb.downloadWhisperModel({model:this.model,onProgress:t=>{let r=Math.round(t.progress*100);e?.({state:`downloading`,bytesLoaded:Math.round(n*r/100),bytesTotal:n,percent:r,currentFile:`whisper-${this.model}`})}}),this.modelDownloaded=!0,e?.({state:`complete`,bytesLoaded:n,bytesTotal:n,percent:100}),this._initState=`ready`,console.log(`[WhisperCpp] Initialized successfully`)}catch(e){throw this._initState=`error`,console.error(`[WhisperCpp] Initialization error:`,e),e instanceof Error?e:new n(`whisper-cpp`,String(e))}}}async importWhisperWeb(){try{return await r(`@remotion/whisper-web`)}catch{throw new n(`whisper-cpp`,`@remotion/whisper-web not installed. Run: npm install @remotion/whisper-web`)}}getCapabilities(){return{continuous:!1,interimResults:!1,languages:this.model.endsWith(`.en`)?[`en`]:[`en`,`es`,`fr`,`de`,`it`,`pt`,`nl`,`pl`,`ru`,`zh`,`ja`,`ko`,`ar`,`hi`,`tr`,`vi`,`th`],accuracy:this.model.includes(`small`)?`high`:`medium`,requiresDownload:!0,downloadSize:a[this.model]||a[`tiny.en`]}}async start(e={}){if(await this.ensureInitialized(),!this._isListening)try{this.stream=await navigator.mediaDevices.getUserMedia({audio:{channelCount:1,sampleRate:16e3}}),this.audioChunks=[],this.mediaRecorder=new MediaRecorder(this.stream,{mimeType:this.getSupportedMimeType()}),this.mediaRecorder.ondataavailable=e=>{e.data.size>0&&this.audioChunks.push(e.data)},this.mediaRecorder.onstop=async()=>{await this.processRecording(),this.processingResolve?.()},this.processingPromise=new Promise(e=>{this.processingResolve=e}),this.mediaRecorder.start(),this._isListening=!0;for(let e of this.startListeners)e();console.log(`[WhisperCpp] Started recording`)}catch(e){let t=e instanceof Error?e:Error(String(e));for(let e of this.errorListeners)e(t);throw t}}getSupportedMimeType(){for(let e of[`audio/webm;codecs=opus`,`audio/webm`,`audio/ogg;codecs=opus`,`audio/mp4`])if(MediaRecorder.isTypeSupported(e))return e;return`audio/webm`}async processRecording(){if(console.log(`[WhisperCpp] Processing recording, chunks:`,this.audioChunks.length),this.audioChunks.length===0){console.log(`[WhisperCpp] No audio chunks captured`);return}let e=new Blob(this.audioChunks,{type:`audio/webm`});console.log(`[WhisperCpp] Audio blob size:`,e.size);try{if(!this.whisperWeb)throw Error(`whisper-web not initialized`);let t=new File([e],`recording.webm`,{type:e.type});console.log(`[WhisperCpp] Resampling audio...`);let n=await this.whisperWeb.resampleTo16Khz({file:t,onProgress:e=>console.log(`[WhisperCpp] Resample progress:`,e)});console.log(`[WhisperCpp] Resample result:`,n),console.log(`[WhisperCpp] Resample result keys:`,Object.keys(n));let r=n.channelWaveform??n;console.log(`[WhisperCpp] Resampled, samples:`,r?.length),console.log(`[WhisperCpp] Starting transcription...`);let{transcription:i}=await this.whisperWeb.transcribe({channelWaveform:r,model:this.model,onProgress:e=>console.log(`[WhisperCpp] Transcribe progress:`,e)});console.log(`[WhisperCpp] Transcription result:`,i);let a={text:i.map(e=>e.text).join(` `).trim(),confidence:.95,isFinal:!0,timestamp:Date.now()};for(let e of this.resultListeners)e(a)}catch(e){console.error(`[WhisperCpp] Processing error:`,e);let t=e instanceof Error?e:Error(String(e));for(let e of this.errorListeners)e(t)}}async stop(){if(this.mediaRecorder&&this._isListening){if(this.mediaRecorder.stop(),this.stream)for(let e of this.stream.getTracks())e.stop();this.stream=null,this.processingPromise&&(await this.processingPromise,this.processingPromise=null,this.processingResolve=null),this._isListening=!1;for(let e of this.endListeners)e();console.log(`[WhisperCpp] Stopped recording`)}}abort(){if(this.mediaRecorder&&this._isListening){if(this.mediaRecorder.stop(),this._isListening=!1,this.audioChunks=[],this.stream)for(let e of this.stream.getTracks())e.stop();this.stream=null;for(let e of this.endListeners)e()}}isListening(){return this._isListening}onResult(e){return this.resultListeners.add(e),()=>this.resultListeners.delete(e)}onError(e){return this.errorListeners.add(e),()=>this.errorListeners.delete(e)}onStart(e){return this.startListeners.add(e),()=>this.startListeners.delete(e)}onEnd(e){return this.endListeners.add(e),()=>this.endListeners.delete(e)}async dispose(){this.abort(),this.whisperWeb=null,this.modelDownloaded=!1,this.resultListeners.clear(),this.errorListeners.clear(),this.startListeners.clear(),this.endListeners.clear(),this._initState=`uninitialized`}};export{i as t};
1
+ import{n as e}from"./COiEfhsA.js";import{n as t,r as n}from"./C7zBd-pD.js";import{t as r}from"./D042ejzG.js";var i=e({WhisperCppSTTAdapter:()=>o}),a={"tiny.en":78643200,"base.en":148897792,"small.en":488636416,tiny:78643200,base:148897792,small:488636416},o=class{type=`whisper-cpp`;_initState=`uninitialized`;options;_isListening=!1;mediaRecorder=null;audioChunks=[];stream=null;resultListeners=new Set;errorListeners=new Set;startListeners=new Set;endListeners=new Set;whisperWeb=null;modelDownloaded=!1;processingPromise=null;processingResolve=null;constructor(e={}){this.options={type:`whisper-cpp`,model:`tiny.en`,...e}}get initState(){return this._initState}get model(){return this.options.model||`tiny.en`}async ensureInitialized(e){if(this._initState!==`ready`){if(this._initState===`initializing`)return new Promise((e,t)=>{let n=()=>{this._initState===`ready`?e():this._initState===`error`?t(Error(`Initialization failed`)):setTimeout(n,50)};n()});this._initState=`initializing`;try{if(typeof WebAssembly>`u`)throw new t(`WebAssembly`,`whisper-cpp`);let n=a[this.model]||a[`tiny.en`];e?.({state:`downloading`,bytesLoaded:0,bytesTotal:n,percent:0,currentFile:`whisper-${this.model}`}),this.whisperWeb=await this.importWhisperWeb();let r=typeof crossOriginIsolated<`u`&&crossOriginIsolated;if(console.log(`[WhisperCpp] crossOriginIsolated:`,r),!r)throw new t(`Cross-origin isolation required. Add headers: Cross-Origin-Opener-Policy: same-origin, Cross-Origin-Embedder-Policy: require-corp`,`whisper-cpp`);let{supported:i,error:o}=await this.whisperWeb.canUseWhisperWeb(this.model);if(console.log(`[WhisperCpp] canUseWhisperWeb:`,{supported:i,error:o}),!i)throw new t(o||`whisper-web not supported in this browser`,`whisper-cpp`);await this.whisperWeb.downloadWhisperModel({model:this.model,onProgress:t=>{let r=Math.round(t.progress*100);e?.({state:`downloading`,bytesLoaded:Math.round(n*r/100),bytesTotal:n,percent:r,currentFile:`whisper-${this.model}`})}}),this.modelDownloaded=!0,e?.({state:`complete`,bytesLoaded:n,bytesTotal:n,percent:100}),this._initState=`ready`,console.log(`[WhisperCpp] Initialized successfully`)}catch(e){throw this._initState=`error`,console.error(`[WhisperCpp] Initialization error:`,e),e instanceof Error?e:new n(`whisper-cpp`,String(e))}}}async importWhisperWeb(){try{return await r(`@remotion/whisper-web`)}catch{throw new n(`whisper-cpp`,`@remotion/whisper-web not installed. Run: npm install @remotion/whisper-web`)}}getCapabilities(){return{continuous:!1,interimResults:!1,languages:this.model.endsWith(`.en`)?[`en`]:[`en`,`es`,`fr`,`de`,`it`,`pt`,`nl`,`pl`,`ru`,`zh`,`ja`,`ko`,`ar`,`hi`,`tr`,`vi`,`th`],accuracy:this.model.includes(`small`)?`high`:`medium`,requiresDownload:!0,downloadSize:a[this.model]||a[`tiny.en`]}}async start(e={}){if(await this.ensureInitialized(),!this._isListening)try{this.stream=await navigator.mediaDevices.getUserMedia({audio:{channelCount:1,sampleRate:16e3}}),this.audioChunks=[],this.mediaRecorder=new MediaRecorder(this.stream,{mimeType:this.getSupportedMimeType()}),this.mediaRecorder.ondataavailable=e=>{e.data.size>0&&this.audioChunks.push(e.data)},this.mediaRecorder.onstop=async()=>{await this.processRecording(),this.processingResolve?.()},this.processingPromise=new Promise(e=>{this.processingResolve=e}),this.mediaRecorder.start(),this._isListening=!0;for(let e of this.startListeners)e();console.log(`[WhisperCpp] Started recording`)}catch(e){let t=e instanceof Error?e:Error(String(e));for(let e of this.errorListeners)e(t);throw t}}getSupportedMimeType(){for(let e of[`audio/webm;codecs=opus`,`audio/webm`,`audio/ogg;codecs=opus`,`audio/mp4`])if(MediaRecorder.isTypeSupported(e))return e;return`audio/webm`}async processRecording(){if(console.log(`[WhisperCpp] Processing recording, chunks:`,this.audioChunks.length),this.audioChunks.length===0){console.log(`[WhisperCpp] No audio chunks captured`);return}let e=new Blob(this.audioChunks,{type:`audio/webm`});console.log(`[WhisperCpp] Audio blob size:`,e.size);try{if(!this.whisperWeb)throw Error(`whisper-web not initialized`);let t=new File([e],`recording.webm`,{type:e.type});console.log(`[WhisperCpp] Resampling audio...`);let n=await this.whisperWeb.resampleTo16Khz({file:t,onProgress:e=>console.log(`[WhisperCpp] Resample progress:`,e)});console.log(`[WhisperCpp] Resample result:`,n),console.log(`[WhisperCpp] Resample result keys:`,Object.keys(n));let r=n.channelWaveform??n;console.log(`[WhisperCpp] Resampled, samples:`,r?.length),console.log(`[WhisperCpp] Starting transcription...`);let{transcription:i}=await this.whisperWeb.transcribe({channelWaveform:r,model:this.model,onProgress:e=>console.log(`[WhisperCpp] Transcribe progress:`,e)});console.log(`[WhisperCpp] Transcription result:`,i);let a={text:i.map(e=>e.text).join(` `).trim(),confidence:.95,isFinal:!0,timestamp:Date.now()};for(let e of this.resultListeners)e(a)}catch(e){console.error(`[WhisperCpp] Processing error:`,e);let t=e instanceof Error?e:Error(String(e));for(let e of this.errorListeners)e(t)}}async stop(){if(this.mediaRecorder&&this._isListening){if(this.mediaRecorder.stop(),this.stream)for(let e of this.stream.getTracks())e.stop();this.stream=null,this.processingPromise&&(await this.processingPromise,this.processingPromise=null,this.processingResolve=null),this._isListening=!1;for(let e of this.endListeners)e();console.log(`[WhisperCpp] Stopped recording`)}}abort(){if(this.mediaRecorder&&this._isListening){if(this.mediaRecorder.stop(),this._isListening=!1,this.audioChunks=[],this.stream)for(let e of this.stream.getTracks())e.stop();this.stream=null;for(let e of this.endListeners)e()}}isListening(){return this._isListening}onResult(e){return this.resultListeners.add(e),()=>this.resultListeners.delete(e)}onError(e){return this.errorListeners.add(e),()=>this.errorListeners.delete(e)}onStart(e){return this.startListeners.add(e),()=>this.startListeners.delete(e)}onEnd(e){return this.endListeners.add(e),()=>this.endListeners.delete(e)}async dispose(){this.abort(),this.whisperWeb=null,this.modelDownloaded=!1,this.resultListeners.clear(),this.errorListeners.clear(),this.startListeners.clear(),this.endListeners.clear(),this._initState=`uninitialized`}};export{i as t};
@@ -1 +1 @@
1
- import{$ as e,B as t,C as n,Ct as r,Dt as i,E as a,Et as o,Ft as s,G as c,H as l,J as u,K as d,L as f,Ot as ee,Pt as p,S as m,Tt as h,U as g,X as _,Y as v,Z as y,_ as b,a as x,b as te,bt as S,ct as ne,d as C,ft as w,gt as T,ht as E,k as D,kt as O,mt as k,n as A,nt as j,pt as M,q as re,st as N,v as P,vt as F,w as I,wt as L}from"./DG3qFFTE.js";import"./xihTtKlq.js";import{a as R}from"./Bv5jGtB8.js";import{a as z,t as ie}from"./YUSKx8_q.js";import"./By9nPosf.js";import{i as B}from"./DIE02RSm.js";import{t as V}from"./CUyVrfsu.js";import{x as ae}from"./Bs5WxZDd.js";import{t as oe}from"./CA-A9Ngs.js";import"./9YQb8EzH.js";import{tt as se}from"./BrGblPBG.js";function ce(){return V()}var H=z({"ui.address_input.street_placeholder":`123 Main Street`,"ui.address_input.city_placeholder":`City`,"ui.address_input.postal_code_placeholder":`A1A 1A1`,"ui.date_range_input.mic_aria_label":`Hold to speak date range`,"ui.date_range_input.parsing":`Parsing dates...`,"ui.date_range_input.end_after_start":`End date must be after start date`,"ui.date_time_input.mic_aria_label":`Hold to speak`,"ui.date_time_input.parsing":`Parsing date...`,"ui.file_upload.remove_file":`Remove {name}`,"ui.file_upload.required":`Select a file to upload`,"ui.file_upload.rejected_type":`{count} file(s) rejected: type not allowed`,"ui.file_upload.exceeds_max_size":`{count} file(s) exceed the maximum size of {size}`,"ui.form.extracting":`Extracting form fields…`,"ui.form.listening_status":`Listening. Say "done" to finish.`,"ui.form.listening_button":`Listening... (say "done" to finish)`,"ui.form.speak_all_fields":`Speak all fields`,"ui.form.you_said":`You said:`,"ui.form_mic_button.tooltip":`Speak to fill all fields. Click again to stop.`,"ui.measurement_input.value_at_least":`Value must be at least {min} {unit}`,"ui.measurement_input.value_at_most":`Value must be at most {max} {unit}`,"ui.money_input.value_at_least":`Value must be at least {min}`,"ui.money_input.value_at_most":`Value must be at most {max}`,"ui.number_input.value_at_least":`Value must be at least {min}`,"ui.number_input.value_at_most":`Value must be at most {max}`,"ui.phone_input.mic_aria_label":`Hold to speak`,"ui.phone_input.downloading_model":`Downloading Whisper model... {progress}%`,"ui.phone_input.invalid":`Invalid phone number`,"ui.search_input.clear_aria_label":`Clear search`,"ui.text_input.mic_aria_label":`Hold to speak`,"ui.text_input.downloading_model":`Downloading Whisper model... {progress}%`,"ui.text_input.invalid_email":`Invalid email address`,"ui.textarea_input.mic_aria_label":`Hold to speak`,"ui.textarea_input.downloading_model":`Downloading Whisper model... {progress}%`}),U=Symbol(`smrt-form`),W=new WeakMap;function G(e){let t=new Map;return{get mode(){return e.mode},registerField(n){let r=n.name,i=e.registerField(n),a=typeof i==`function`?i:()=>e.unregisterField(r),o=!0,s=()=>{if(!o)return;o=!1;let e=t.get(r);e?.delete(s),e?.size===0&&t.delete(r),a()},c=t.get(r)??new Set;return c.add(s),t.set(r,c),s},unregisterField(e){let n=t.get(e)?.values().next().value;n?.()},getFieldSchema:()=>e.getFieldSchema(),get isFormListening(){return e.isFormListening},get isExtracting(){return e.isExtracting},toggleListening:()=>e.toggleListening(),get interactionRegistry(){return e.interactionRegistry},get formId(){return e.formId}}}function K(e){let t=h(),n=W.get(t);if(n)return n;let r=o(U);if(!r){if(!e)return null;throw Error(`Form context not found. Make sure to wrap your inputs with <SMRTForm>`)}let i=G(r);return W.set(t,i),O(U,i),i}function le(){return K(!1)}function ue(e){if(e==null)return``;if(typeof e==`string`||typeof e==`number`||typeof e==`boolean`)return String(e);throw Error(`staged_value_invalid`)}function de(){throw Error(`staged_value_invalid`)}var fe=c(`<div class="field-row full-width svelte-5rbjmj"><label class="field-label svelte-5rbjmj"> </label> <input type="text"/></div>`),q=c(`<div class="field-row flex-2 svelte-5rbjmj"><label class="field-label svelte-5rbjmj"> </label> <input type="text"/></div>`),J=c(`<option> </option>`),pe=c(`<div class="field-row flex-1 svelte-5rbjmj"><label class="field-label svelte-5rbjmj"> </label> <select><option>Select...</option><!></select></div>`),me=c(`<div class="field-row flex-1 svelte-5rbjmj"><label class="field-label svelte-5rbjmj"> </label> <input type="text"/></div>`),he=c(`<div class="field-row flex-1 svelte-5rbjmj"><label class="field-label svelte-5rbjmj"> </label> <select></select></div>`),ge=c(`<div class="validation-error svelte-5rbjmj" role="alert"> </div>`),_e=c(`<div class="smrt-address svelte-5rbjmj" data-smrt-component="AddressInput"><!> <div><!> <div class="field-row-group svelte-5rbjmj"><!> <!></div> <div class="field-row-group svelte-5rbjmj"><!> <!></div></div> <!></div>`);function Y(o,c){let u=re();ee(c,!0);let{t:d}=ie(),p=[{value:`CA`,label:`Canada`},{value:`US`,label:`United States`}],h=[{value:`AB`,label:`Alberta`},{value:`BC`,label:`British Columbia`},{value:`MB`,label:`Manitoba`},{value:`NB`,label:`New Brunswick`},{value:`NL`,label:`Newfoundland and Labrador`},{value:`NS`,label:`Nova Scotia`},{value:`NT`,label:`Northwest Territories`},{value:`NU`,label:`Nunavut`},{value:`ON`,label:`Ontario`},{value:`PE`,label:`Prince Edward Island`},{value:`QC`,label:`Quebec`},{value:`SK`,label:`Saskatchewan`},{value:`YT`,label:`Yukon`},{value:`US-CA`,label:`California`},{value:`US-NY`,label:`New York`},{value:`US-TX`,label:`Texas`},{value:`US-FL`,label:`Florida`},{value:`US-WA`,label:`Washington`}],v=x(c,`value`,31,()=>T({})),y=x(c,`fields`,19,()=>[`street`,`city`,`province`,`postalCode`,`country`]),C=x(c,`disabled`,3,!1),D=x(c,`required`,3,!1),O=x(c,`countries`,3,p),A=x(c,`provinces`,3,h);function M(){return[...new Set(O().map(e=>e.value))]}function I(){return[...new Set([...D()?[]:[``],...A().map(e=>e.value)])]}function L(e){return e===`country`?{type:`string`,enum:M()}:e===`province`?{type:`string`,enum:I()}:{type:`string`}}function R(e){if(typeof e!=`object`||Array.isArray(e))return!1;let t=e;return!(![Object.prototype,null].includes(Object.getPrototypeOf(t))||!Object.keys(t).every(e=>y().includes(e))||!y().every(e=>!Object.hasOwn(t,e)||typeof t[e]==`string`)||Object.hasOwn(t,`country`)&&!M().includes(t.country)||Object.hasOwn(t,`province`)&&!I().includes(t.province))}function z(e){if(e==null)return!D();if(!R(e))return!1;if(!D())return!0;let t=e;return y().every(e=>typeof t[e]==`string`&&t[e].trim().length>0)}let B=ce(),V=le(),oe=`smrt-rich-field-${u}`,se=r(()=>B.state.mode===`smrt`),U=S(T(v().street??``)),W=S(T(v().city??``)),G=S(T(v().province??``)),K=S(T(v().postalCode??``)),Y=S(T(v().country??j(()=>O()[0]?.value??``)));ne(()=>{v().street!==void 0&&v().street!==e(U)&&F(U,v().street,!0),v().city!==void 0&&v().city!==e(W)&&F(W,v().city,!0),v().province!==void 0&&v().province!==e(G)&&F(G,v().province,!0),v().postalCode!==void 0&&v().postalCode!==e(K)&&F(K,v().postalCode,!0),v().country!==void 0&&v().country!==e(Y)&&F(Y,v().country,!0)});function ve(){let t={};return y().includes(`street`)&&(t.street=e(U)),y().includes(`city`)&&(t.city=e(W)),y().includes(`province`)&&(t.province=e(G)),y().includes(`postalCode`)&&(t.postalCode=e(K)),y().includes(`country`)&&(t.country=e(Y)),t}function X(){let e=ve();v(e),c.onchange?.(e)}function ye(e){let t={},n=e.toLowerCase().trim(),r=n.match(/([a-z]\d[a-z]\s?\d[a-z]\d)|(\d{5}(-\d{4})?)/i);r&&(t.postalCode=r[0].toUpperCase().replace(/\s+/g,` `));for(let e of A())if(RegExp(`\\b${e.label.toLowerCase()}\\b|\\b${e.value.toLowerCase()}\\b`,`i`).test(n)){t.province=e.value;break}for(let e of O())if([e.label,e.value].some(e=>{let t=e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`);return RegExp(`(^|\\W)${t}(?=$|\\W)`,`i`).test(n)})){t.country=e.value;break}for(let e of[/(?:city\s+(?:of\s+)?|in\s+)([a-z\s]+?)(?:\s*,|\s+(?:ab|bc|mb|on|qc|sk|alberta|british columbia|ontario|quebec)|\s*$)/i]){let r=n.match(e);if(r){t.city=r[1].trim().replace(/\b\w/g,e=>e.toUpperCase());break}}let i=n.match(/(\d+\s+[a-z\s]+(?:street|st|avenue|ave|road|rd|drive|dr|boulevard|blvd|way|lane|ln|crescent|cres|place|pl|court|ct))/i);return i&&(t.street=i[1].replace(/\b\w/g,e=>e.toUpperCase())),t}let be={street:`Street Address`,city:`City`,province:`Province/State`,postalCode:`Postal/ZIP Code`,country:`Country`},xe=r(()=>{let e=y()[0]??`street`;switch(e){case`postalCode`:return`${c.name}_postal`;default:return`${c.name}_${e}`}});ne(()=>{if(V){let e={name:c.name,ownerToken:oe,type:`address`,get label(){return c.label},get description(){return c.description||`A mailing address with street, city, province, postal code, and country`},setValue:e=>{if(e==null){F(U,``),F(W,``),F(G,``),F(K,``),F(Y,O()[0]?.value??``,!0),X();return}if(R(e)){let t=e;t.street!==void 0&&F(U,t.street,!0),t.city!==void 0&&F(W,t.city,!0),t.province!==void 0&&F(G,t.province,!0),t.postalCode!==void 0&&F(K,t.postalCode,!0),t.country!==void 0&&F(Y,t.country,!0),X();return}let t=Object.fromEntries(Object.entries(ye(String(e))).filter(([e])=>y().includes(e)));Object.keys(t).length>0&&R(t)&&(t.street!==void 0&&F(U,t.street,!0),t.city!==void 0&&F(W,t.city,!0),t.province!==void 0&&F(G,t.province,!0),t.postalCode!==void 0&&F(K,t.postalCode,!0),t.country!==void 0&&F(Y,t.country,!0),X())},getValue:ve,prepareValue:e=>{if(e==null)return Object.fromEntries(y().map(e=>[e,e===`country`?O()[0]?.value??``:``]));if(typeof e==`object`&&!Array.isArray(e))return e;let t=ye(ue(e)),n=Object.fromEntries(Object.entries(t).filter(([e])=>y().includes(e)));return Object.keys(n).length>0?{...ve(),...n}:de()},clear:()=>(F(U,``),F(W,``),F(G,``),F(K,``),F(Y,O()[0]?.value??``,!0),X(),!0),getState:()=>({disabled:C()}),get constraints(){return{required:D()}},get webMcpSchema(){return{type:`object`,additionalProperties:!1,properties:Object.fromEntries(y().map(e=>[e,L(e)])),...D()?{required:[...y()]}:{}}},validateValue:z,validate:()=>z(ve())};return V.registerField(e)}});function Se(e){F(U,e.target.value,!0),X()}function Z(e){F(W,e.target.value,!0),X()}function Ce(e){F(G,e.target.value,!0),X()}function we(e){F(K,e.target.value,!0),X()}function Q(e){F(Y,e.target.value,!0),X()}var Te=_e(),Ee=w(Te),De=t=>{ae(t,{get for(){return e(xe)},get label(){return c.label},get required(){return D()}})};t(Ee,e=>{c.label&&e(De)});var Oe=E(Ee,2);let $;var ke=w(Oe),Ae=t=>{var n=fe(),r=w(n),i=k(r,!0),o=E(r,2);b(o);let u;s(n),N((t,n)=>{P(r,`for`,`${c.name??``}_street`),l(i,be.street),P(o,`id`,`${c.name??``}_street`),P(o,`name`,`${c.name??``}[street]`),P(o,`placeholder`,t),te(o,e(U)),o.disabled=C(),o.required=n,u=a(o,1,`smrt-input svelte-5rbjmj`,null,u,{invalid:!!c.error}),P(o,`aria-invalid`,c.error?`true`:void 0),P(o,`aria-describedby`,c.error?`${c.name}-error`:void 0)},[()=>d(H[`ui.address_input.street_placeholder`]),()=>D()&&y().includes(`street`)]),_(`input`,o,Se),g(t,n)},je=r(()=>y().includes(`street`));t(ke,t=>{e(je)&&t(Ae)});var Me=E(ke,2),Ne=w(Me),Pe=t=>{var n=q(),r=w(n),i=k(r,!0),o=E(r,2);b(o);let u;s(n),N((t,n)=>{P(r,`for`,`${c.name??``}_city`),l(i,be.city),P(o,`id`,`${c.name??``}_city`),P(o,`name`,`${c.name??``}[city]`),P(o,`placeholder`,t),te(o,e(W)),o.disabled=C(),o.required=n,u=a(o,1,`smrt-input svelte-5rbjmj`,null,u,{invalid:!!c.error}),P(o,`aria-invalid`,c.error?`true`:void 0),P(o,`aria-describedby`,c.error?`${c.name}-error`:void 0)},[()=>d(H[`ui.address_input.city_placeholder`]),()=>D()&&y().includes(`city`)]),_(`input`,o,Z),g(t,n)},Fe=r(()=>y().includes(`city`));t(Ne,t=>{e(Fe)&&t(Pe)});var Ie=E(Ne,2),Le=t=>{var r=pe(),i=w(r),o=k(i,!0),u=E(i,2);let d;var ee=w(u);ee.value=ee.__value=``;var p=E(ee);f(p,17,A,e=>e.value,(t,n)=>{var r=J(),i=k(r,!0),a={};N(()=>{l(i,e(n).label),a!==(a=e(n).value)&&(r.value=(r.__value=a)??``)}),g(t,r)}),s(u);var h;m(u),s(r),N(t=>{P(i,`for`,`${c.name??``}_province`),l(o,be.province),P(u,`id`,`${c.name??``}_province`),P(u,`name`,`${c.name??``}[province]`),u.disabled=C(),u.required=t,d=a(u,1,`smrt-input smrt-select svelte-5rbjmj`,null,d,{invalid:!!c.error}),P(u,`aria-invalid`,c.error?`true`:void 0),P(u,`aria-describedby`,c.error?`${c.name}-error`:void 0),h!==(h=e(G))&&(u.value=(u.__value=h)??``,n(u,h))},[()=>D()&&y().includes(`province`)]),_(`change`,u,Ce),g(t,r)},Re=r(()=>y().includes(`province`));t(Ie,t=>{e(Re)&&t(Le)}),s(Me);var ze=E(Me,2),Be=w(ze),Ve=t=>{var n=me(),r=w(n),i=k(r,!0),o=E(r,2);b(o);let u;s(n),N((t,n)=>{P(r,`for`,`${c.name??``}_postal`),l(i,be.postalCode),P(o,`id`,`${c.name??``}_postal`),P(o,`name`,`${c.name??``}[postalCode]`),P(o,`placeholder`,t),te(o,e(K)),o.disabled=C(),o.required=n,u=a(o,1,`smrt-input svelte-5rbjmj`,null,u,{invalid:!!c.error}),P(o,`aria-invalid`,c.error?`true`:void 0),P(o,`aria-describedby`,c.error?`${c.name}-error`:void 0)},[()=>d(H[`ui.address_input.postal_code_placeholder`]),()=>D()&&y().includes(`postalCode`)]),_(`input`,o,we),g(t,n)},He=r(()=>y().includes(`postalCode`));t(Be,t=>{e(He)&&t(Ve)});var Ue=E(Be,2),We=t=>{var r=he(),i=w(r),o=k(i,!0),u=E(i,2);let d;f(u,21,O,e=>e.value,(t,n)=>{var r=J(),i=k(r,!0),a={};N(()=>{l(i,e(n).label),a!==(a=e(n).value)&&(r.value=(r.__value=a)??``)}),g(t,r)}),s(u);var ee;m(u),s(r),N(t=>{P(i,`for`,`${c.name??``}_country`),l(o,be.country),P(u,`id`,`${c.name??``}_country`),P(u,`name`,`${c.name??``}[country]`),u.disabled=C(),u.required=t,d=a(u,1,`smrt-input smrt-select svelte-5rbjmj`,null,d,{invalid:!!c.error}),P(u,`aria-invalid`,c.error?`true`:void 0),P(u,`aria-describedby`,c.error?`${c.name}-error`:void 0),ee!==(ee=e(Y))&&(u.value=(u.__value=ee)??``,n(u,ee))},[()=>D()&&y().includes(`country`)]),_(`change`,u,Q),g(t,r)},Ge=r(()=>y().includes(`country`));t(Ue,t=>{e(Ge)&&t(We)}),s(ze),s(Oe);var Ke=E(Oe,2),qe=e=>{var t=ge(),n=k(t,!0);N(()=>{P(t,`id`,`${c.name}-error`),l(n,c.error)}),g(e,t)};t(Ke,e=>{c.error&&e(qe)}),s(Te),N(()=>{P(Te,`data-smrt-field-owner`,oe),$=a(Oe,1,`address-fields svelte-5rbjmj`,null,$,{"smrt-mode":e(se)})}),g(o,Te),i()}v([`input`,`change`]);function ve(e){return e.toLowerCase().replace(/\s+at\s+/gi,`@`).replace(/\bat\b/gi,`@`).replace(/\s+dot\s+/gi,`.`).replace(/\bdot\b/gi,`.`).replace(/\s+/g,``).trim()}function X(e){return e.replace(/^(my name is|i am|i'm|it's|this is|the name is)\s*/i,``).replace(/\b(um|uh|like|so|well)\b\s*/gi,``).trim()}function ye(e,t){let n=e.toLowerCase().trim();for(let e of t)if(e.value.toLowerCase()===n||e.label.toLowerCase()===n)return e.value;for(let e of t)if(e.label.toLowerCase().includes(n)||n.includes(e.label.toLowerCase()))return e.value;return null}v([`change`]);function be(e={}){let t=V(),n=!1;return e.autoInit&&t.initializeSTT().catch(()=>{}),A(()=>{n&&t.state.ai.stt.isListening&&t.stopListening().catch(()=>{}),n=!1}),{start:async r=>{n=!0;try{await t.startListening({...e.defaultOptions,...r})}catch(e){throw n=!1,e}},stop:async()=>{n=!1,await t.stopListening()},initialize:async e=>{await t.initializeSTT(e)},get isListening(){return t.state.ai.stt.isListening},get isReady(){return t.state.ai.stt.initState===`ready`},get isInitializing(){return t.state.ai.stt.initState===`initializing`},get lastResult(){return t.state.ai.stt.lastResult},get interimResult(){return t.state.ai.stt.interimResult},get currentResult(){let{isListening:e,interimResult:n,lastResult:r}=t.state.ai.stt;return e&&n?n:r},get error(){return t.state.ai.stt.error},get downloadProgress(){return t.state.ai.stt.downloadProgress?.percent??0},get adapterType(){return t.state.ai.stt.adapter?.type??null}}}v([`keydown`,`mousedown`,`mouseup`,`touchstart`,`touchend`,`change`]);var xe=d(`<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" class="spinner svelte-rsri1g"><circle cx="12" cy="12" r="10" stroke-dasharray="32" stroke-dashoffset="12" class="svelte-rsri1g"></circle></svg>`),Se=d(`<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="svelte-rsri1g"><path d="M12 2a3 3 0 0 0-3 3v7a3 3 0 0 0 6 0V5a3 3 0 0 0-3-3Z" class="svelte-rsri1g"></path><path d="M19 10v2a7 7 0 0 1-14 0v-2" class="svelte-rsri1g"></path><line x1="12" x2="12" y1="19" y2="22" class="svelte-rsri1g"></line></svg>`),Z=c(`<input type="text" class="smrt-input smrt-mode svelte-rsri1g" readonly=""/> <button type="button"><!></button>`,1),Ce=c(`<input class="smrt-input svelte-rsri1g"/>`),we=c(`<div class="listening-indicator svelte-rsri1g">Recording...</div>`),Q=c(`<div class="parsing-indicator svelte-rsri1g"> </div>`),Te=c(`<div class="error-indicator svelte-rsri1g" role="alert"> </div>`),Ee=c(`<div data-smrt-component="DateTimeInput"><!> <div class="input-wrapper svelte-rsri1g"><!></div> <!></div>`);function De(n,o){let c=re();ee(o,!0);let{t:u}=ie(),d=x(o,`includeTime`,3,!0),f=x(o,`placeholder`,19,()=>d()?`e.g., next Tuesday at 3pm`:`e.g., March 15, 1990`),p=x(o,`value`,15,``),m=x(o,`disabled`,3,!1),h=x(o,`required`,3,!1),v=`${c}-label`,T=ce(),D=be(),O=le(),A=S(null),j=S(``),I=S(!1),L=S(!1),R=S(null),z=0,V=r(()=>T.state.mode===`smrt`);function se(e){p(e),o.onchange?.(p())}function U(e){if(!e)return``;try{if(!d()&&/^\d{4}-\d{2}-\d{2}$/.test(e)){let[t,n,r]=e.split(`-`).map(Number);return new Date(t,n-1,r).toLocaleDateString(void 0,{dateStyle:`medium`})}let t=new Date(e);return Number.isNaN(t.getTime())?e:d()?t.toLocaleString(void 0,{dateStyle:`medium`,timeStyle:`short`}):t.toLocaleDateString(void 0,{dateStyle:`medium`})}catch{return e}}function W(e){if(typeof e!=`string`)return!1;if(e===``)return!h();let t=d()?/^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2})(?::(\d{2})(?:\.\d{1,3})?)?$/.exec(e):/^(\d{4})-(\d{2})-(\d{2})$/.exec(e);if(!t)return!1;let[,n,r,i,a=`0`,o=`0`,s=`0`]=t,c=new Date(Date.UTC(Number(n),Number(r)-1,Number(i),Number(a),Number(o),Number(s)));return c.getUTCFullYear()===Number(n)&&c.getUTCMonth()===Number(r)-1&&c.getUTCDate()===Number(i)&&c.getUTCHours()===Number(a)&&c.getUTCMinutes()===Number(o)&&c.getUTCSeconds()===Number(s)}ne(()=>{F(j,U(p()),!0)}),ne(()=>{if(O){let e={name:o.name,type:`datetime`,get label(){return o.label},get description(){return o.description??(d()?`Date and time`:`Date`)},setValue:e=>{se(String(e??``))},getValue:()=>p(),prepareValue:ue,getState:()=>({disabled:m()}),get constraints(){return{required:h()}},validateValue:W,validate:()=>W(p())};return O.registerField(e)}});async function G(e){let t;try{t=await oe(`chrono-node`)}catch{throw Error(`Natural-language date parsing requires the optional dependency "chrono-node". Install it with: pnpm add chrono-node`)}let n=t.parse(e);if(n.length===0)throw Error(`Could not parse date from speech`);let r=n[0].start.date();if(Number.isNaN(r.getTime()))throw Error(`Invalid date`);let i=r.getFullYear(),a=String(r.getMonth()+1).padStart(2,`0`),o=String(r.getDate()).padStart(2,`0`);return d()?`${i}-${a}-${o}T${String(r.getHours()).padStart(2,`0`)}:${String(r.getMinutes()).padStart(2,`0`)}`:`${i}-${a}-${o}`}async function K(){if(!(!e(V)||m()||e(L))){F(R,null),z=Date.now(),F(I,!0);try{(!D.isReady||D.adapterType!==`whisper-wasm`)&&await D.initialize({type:`whisper-wasm`}),await D.start({continuous:!0,interimResults:!1})}catch(e){F(I,!1),F(R,e instanceof Error?e.message:`Could not start voice input`,!0),B.error(`DateTimeInput: failed to start voice recording`,{field:o.name,error:e})}}}async function de(){if(!e(I))return;let t=Date.now()-z;if(F(I,!1),await D.stop(),t<500)return;let n=Date.now();for(;D.isListening&&Date.now()-n<3e3;)await new Promise(e=>setTimeout(e,100));await new Promise(e=>setTimeout(e,100));let r=D.lastResult?.trim()||``;if(!r||r.length<2)F(R,`No speech detected. Hold longer and speak clearly.`);else{F(L,!0),F(R,null);try{se(await G(r))}catch(e){F(R,e instanceof Error?e.message:`Failed to parse date`,!0)}finally{F(L,!1)}}}function fe(e){e.button===0&&K()}function q(){de()}function J(){de()}function pe(e){e.preventDefault(),K()}function me(){de()}function he(e){e.preventDefault(),e.stopPropagation()}function ge(e){e.stopPropagation(),e.button===0&&K()}function _e(e){e.stopPropagation(),e.preventDefault(),K()}function Y(t){(t.key===`Enter`||t.key===` `)&&(t.preventDefault(),t.stopPropagation(),e(I)?de():K())}function ve(e){let t=e.target;se(t.value)}var X=Ee();let ye;var De=w(X),Oe=e=>{ae(e,{get id(){return v},get for(){return o.name},get label(){return o.label},get required(){return h()}})};t(De,e=>{o.label&&e(Oe)});var $=E(De,2),ke=w($),Ae=n=>{var r=Z(),i=M(r);b(i),C(i,e=>F(A,e),()=>e(A));var c=E(i,2);let l;var d=w(c),ee=e=>{var t=xe();g(e,t)},p=e=>{var t=Se();g(e,t)};t(d,t=>{e(L)?t(ee):t(p,-1)}),s(c),N(t=>{P(i,`id`,o.name),P(i,`aria-labelledby`,o.label?v:void 0),P(i,`name`,o.name),P(i,`placeholder`,f()),te(i,e(j)),i.disabled=m()||e(L),i.required=h(),P(i,`aria-invalid`,e(R)?`true`:void 0),P(i,`aria-describedby`,e(R)?`${o.name}-error`:void 0),l=a(c,1,`mic-btn svelte-rsri1g`,null,l,{active:e(I)}),c.disabled=m()||e(L),P(c,`aria-label`,t)},[()=>u(H[`ui.date_time_input.mic_aria_label`])]),_(`mousedown`,i,fe),_(`mouseup`,i,q),y(`mouseleave`,i,J),_(`touchstart`,i,pe,void 0,!0),_(`touchend`,i,me),_(`click`,c,he),_(`keydown`,c,Y),_(`mousedown`,c,ge),_(`mouseup`,c,q),y(`mouseleave`,c,J),_(`touchstart`,c,_e,void 0,!0),_(`touchend`,c,me),g(n,r)},je=t=>{var n=Ce();b(n),C(n,e=>F(A,e),()=>e(A)),N(()=>{P(n,`id`,o.name),P(n,`aria-labelledby`,o.label?v:void 0),P(n,`name`,o.name),P(n,`type`,d()?`datetime-local`:`date`),te(n,p()),n.disabled=m(),n.required=h(),P(n,`aria-invalid`,e(R)?`true`:void 0),P(n,`aria-describedby`,e(R)?`${o.name}-error`:void 0)}),_(`change`,n,ve),g(t,n)};t(ke,t=>{e(V)?t(Ae):t(je,-1)}),s($);var Me=E($,2),Ne=e=>{var t=we();g(e,t)},Pe=e=>{var t=Q(),n=k(t,!0);N(e=>l(n,e),[()=>u(H[`ui.date_time_input.parsing`])]),g(e,t)},Fe=t=>{var n=Te(),r=k(n,!0);N(()=>{P(n,`id`,`${o.name}-error`),l(r,e(R))}),g(t,n)};t(Me,t=>{e(I)?t(Ne):e(L)?t(Pe,1):e(R)&&t(Fe,2)}),s(X),N(()=>ye=a(X,1,`smrt-datetime svelte-rsri1g`,null,ye,{listening:e(I),parsing:e(L)})),g(n,X),i()}v([`mousedown`,`mouseup`,`touchstart`,`touchend`,`click`,`keydown`,`change`]),v([`click`,`keydown`,`change`]),v([`click`]),v([`click`,`keydown`]),v([`input`,`change`]);var Oe=c(`<div class="validation-error svelte-e6jjj7" role="alert"> </div>`),$=c(`<div class="validation-error svelte-e6jjj7" role="alert"><!></div>`),ke=c(`<div class="smrt-money svelte-e6jjj7" data-smrt-component="MoneyInput"><!> <div class="input-wrapper svelte-e6jjj7"><input type="text" inputmode="decimal"/> <span class="currency-code svelte-e6jjj7"> </span></div> <input type="hidden"/> <!></div>`);function Ae(n,o){let c=re();ee(o,!0);let{t:d}=ie(),f=x(o,`placeholder`,3,`0.00`),p=x(o,`value`,15,null),m=x(o,`currency`,3,`CAD`),h=x(o,`disabled`,3,!1),v=x(o,`required`,3,!1),C=`${c}-label`,D=ce(),O=le(),A=r(()=>D.state.mode===`smrt`);function j(e){return e===null?``:(e/100).toFixed(2)}function M(e){let t=e.replace(/[$,\s]/g,``);if(t===``)return null;let n=parseFloat(t);return Number.isNaN(n)?null:Math.round(n*100)}let I=S(T(j(p())));ne(()=>{let t=j(p());e(I)!==t&&!e(L)&&F(I,t,!0)});let L=S(!1),R=r(()=>m()===`USD`?`US$`:`CA$`),z=r(()=>p()===null||!(o.min!==void 0&&p()<o.min||o.max!==void 0&&p()>o.max)),B=r(()=>p()!==null&&!e(z)||!!o.error);function V(e){p(e),o.onchange?.(p())}function oe(e){let t=e.toLowerCase().trim(),n={zero:0,one:1,two:2,three:3,four:4,five:5,six:6,seven:7,eight:8,nine:9,ten:10,eleven:11,twelve:12,thirteen:13,fourteen:14,fifteen:15,sixteen:16,seventeen:17,eighteen:18,nineteen:19,twenty:20,thirty:30,forty:40,fifty:50,sixty:60,seventy:70,eighty:80,ninety:90,hundred:100,thousand:1e3,million:1e6},r=/dollar|buck|cad|usd/i.test(t),i=/cent/i.test(t),a=t.replace(/\$|dollar[s]?|buck[s]?|cad|usd|cent[s]?/gi,``).trim(),o=a.match(/[\d,.]+/);if(o){let e=parseFloat(o[0].replace(/,/g,``));if(!Number.isNaN(e))return Math.round(i&&!r?e:e*100)}let s=a.split(/[\s-]+/).filter(Boolean),c=0,l=0,u=0,d=!1;for(let e=0;e<s.length;e++){let t=s[e],r=n[t];t===`and`||t===`point`?(d=!0,c+=u,u=0):r!==void 0&&(r>=100?(u=u===0?r:u*r,r>=1e3&&(d?l+=u:c+=u,u=0)):u+=r)}d?(l+=u,l>99&&(c+=Math.floor(l/100),l%=100)):c+=u;let f=c*100+l;return f>0?f:null}ne(()=>{if(O){let t={name:o.name,type:`money`,get label(){return o.label},get description(){let e=``;return o.min!==void 0&&o.max!==void 0?e=` (between $${(o.min/100).toFixed(2)} and $${(o.max/100).toFixed(2)})`:o.min===void 0?o.max!==void 0&&(e=` (maximum $${(o.max/100).toFixed(2)})`):e=` (minimum $${(o.min/100).toFixed(2)})`,(o.description||`A monetary amount in dollars`)+e},setValue:e=>{if(e==null||e===``){V(null),F(I,``);return}if(typeof e==`number`){V(e),F(I,j(e),!0);return}let t=oe(String(e));t!==null&&(V(t),F(I,j(t),!0))},getValue:()=>p(),prepareValue:e=>e==null||e===``?null:typeof e==`number`?e:typeof e==`string`?oe(e)??de():de(),getState:()=>({disabled:h()}),get constraints(){return{required:v(),min:o.min,max:o.max}},validateValue:e=>e===null&&!v()||typeof e==`number`&&Number.isSafeInteger(e)&&(o.min===void 0||e>=o.min)&&(o.max===void 0||e<=o.max),validate:()=>p()===null?!v():Number.isSafeInteger(p())&&e(z)};return O.registerField(t)}});function se(e){let t=e.target;F(I,t.value,!0),V(M(t.value))}function U(){F(L,!0)}function W(){F(L,!1),F(I,j(p()),!0)}var G=ke(),K=w(G),ue=e=>{ae(e,{get id(){return C},get for(){return o.name},get label(){return o.label},get required(){return v()}})};t(K,e=>{o.label&&e(ue)});var fe=E(K,2),q=w(fe);b(q);let J;var pe=E(q,2),me=k(pe,!0);s(fe);var he=E(fe,2);b(he);var ge=E(he,2),_e=e=>{var t=Oe(),n=k(t,!0);N(()=>{P(t,`id`,`${o.name}-error`),l(n,o.error)}),g(e,t)},Y=n=>{var r=$(),i=w(r),a=t=>{var n=u();N(e=>l(n,e),[()=>d(H[`ui.money_input.value_at_least`],{min:`${e(R)}${(o.min/100).toFixed(2)}`})]),g(t,n)},c=t=>{var n=u();N(e=>l(n,e),[()=>d(H[`ui.money_input.value_at_most`],{max:`${e(R)}${(o.max/100).toFixed(2)}`})]),g(t,n)};t(i,e=>{o.min!==void 0&&p()!==null&&p()<o.min?e(a):o.max!==void 0&&p()!==null&&p()>o.max&&e(c,1)}),s(r),N(()=>P(r,`id`,`${o.name}-error`)),g(n,r)};t(ge,t=>{o.error?t(_e):e(B)&&!e(z)&&t(Y,1)}),s(G),N(()=>{P(q,`id`,o.name),P(q,`aria-labelledby`,o.label?C:void 0),P(q,`name`,o.name),P(q,`placeholder`,f()),te(q,e(I)),q.disabled=h(),q.required=v(),J=a(q,1,`smrt-input svelte-e6jjj7`,null,J,{"smrt-mode":e(A),invalid:e(B)}),P(q,`aria-invalid`,e(B)?`true`:void 0),P(q,`aria-describedby`,e(B)?`${o.name}-error`:void 0),l(me,m()),P(he,`name`,`${o.name??``}_cents`),te(he,p()??``)}),_(`input`,q,se),y(`focus`,q,U),y(`blur`,q,W),g(n,G),i()}v([`input`]);var je=c(`<div class="validation-error svelte-1pebtso" role="alert"><!></div>`),Me=c(`<div class="smrt-number svelte-1pebtso" data-smrt-component="NumberInput"><!> <div class="input-wrapper svelte-1pebtso"><input type="number"/></div> <!></div>`);function Ne(n,o){let c=re();ee(o,!0);let{t:d}=ie(),f=x(o,`placeholder`,3,``),p=x(o,`value`,15,null),m=x(o,`step`,3,1),h=x(o,`disabled`,3,!1),v=x(o,`required`,3,!1),y=`${c}-label`,S=ce(),C=le(),T=r(()=>S.state.mode===`smrt`);function D(e){return e===null||!(o.min!==void 0&&e<o.min||o.max!==void 0&&e>o.max)}function O(e){if(!Number.isFinite(m())||m()<=0)return!0;let t=(e-(o.min??0))/m();return Math.abs(t-Math.round(t))<=1e-9}let k=r(()=>D(p())),A=r(()=>p()!==null&&!e(k));function j(e){p(e),o.onchange?.(p())}function M(e){let t=e.toLowerCase().trim(),n={zero:0,one:1,two:2,three:3,four:4,five:5,six:6,seven:7,eight:8,nine:9,ten:10,eleven:11,twelve:12,thirteen:13,fourteen:14,fifteen:15,sixteen:16,seventeen:17,eighteen:18,nineteen:19,twenty:20,thirty:30,forty:40,fifty:50,sixty:60,seventy:70,eighty:80,ninety:90,hundred:100,thousand:1e3,million:1e6},r=parseFloat(t.replace(/[,$]/g,``));if(!Number.isNaN(r))return r;if(n[t]!==void 0)return n[t];let i=t.split(/[\s-]+/),a=0,o=0;for(let e of i){let t=n[e];t!==void 0&&(t>=100?(o=o===0?t:o*t,t>=1e3&&(a+=o,o=0)):o+=t)}return a+=o,a>0?a:null}ne(()=>{if(C){let t={name:o.name,type:`number`,get label(){return o.label},get description(){let e=``;return o.min!==void 0&&o.max!==void 0?e=` (between ${o.min} and ${o.max})`:o.min===void 0?o.max!==void 0&&(e=` (maximum ${o.max})`):e=` (minimum ${o.min})`,(o.description||`A number`)+e},setValue:e=>{if(e==null||e===``){j(null);return}if(typeof e==`number`){j(e);return}let t=M(String(e));t!==null&&j(t)},getValue:()=>p(),prepareValue:e=>e==null||e===``?null:typeof e==`number`?e:typeof e==`string`?M(e)??de():de(),getState:()=>({disabled:h()}),get constraints(){return{required:v(),min:o.min,max:o.max,step:m()}},validateValue:e=>{if(e==null||e===``)return!v();let t=typeof e==`number`?e:M(String(e));return t!==null&&Number.isFinite(t)&&D(t)&&O(t)},validate:()=>p()===null?!v():Number.isFinite(p())&&e(k)};return C.registerField(t)}});function F(e){let t=e.target;j(t.value===``?null:parseFloat(t.value))}var I=Me(),L=w(I),R=e=>{ae(e,{get id(){return y},get for(){return o.name},get label(){return o.label},get required(){return v()}})};t(L,e=>{o.label&&e(R)});var z=E(L,2),B=w(z);b(B);let V;s(z);var oe=E(z,2),se=e=>{var n=je(),r=w(n),i=e=>{var t=u();N(e=>l(t,e),[()=>d(H[`ui.number_input.value_at_least`],{min:o.min})]),g(e,t)},a=e=>{var t=u();N(e=>l(t,e),[()=>d(H[`ui.number_input.value_at_most`],{max:o.max})]),g(e,t)};t(r,e=>{o.min!==void 0&&p()!==null&&p()<o.min?e(i):o.max!==void 0&&p()!==null&&p()>o.max&&e(a,1)}),s(n),N(()=>P(n,`id`,`${o.name}-error`)),g(e,n)};t(oe,t=>{e(A)&&t(se)}),s(I),N(()=>{P(B,`id`,o.name),P(B,`aria-labelledby`,o.label?y:void 0),P(B,`name`,o.name),P(B,`placeholder`,f()),te(B,p()??``),P(B,`min`,o.min),P(B,`max`,o.max),P(B,`step`,m()),B.disabled=h(),B.required=v(),V=a(B,1,`smrt-input svelte-1pebtso`,null,V,{"smrt-mode":e(T),invalid:e(A)}),P(B,`aria-invalid`,e(A)?`true`:void 0),P(B,`aria-describedby`,e(A)?`${o.name}-error`:void 0)}),_(`input`,B,F),g(n,I),i()}v([`input`]);var Pe=c(`<button type="button"><svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="svelte-1vixtb7"><path d="M12 2a3 3 0 0 0-3 3v7a3 3 0 0 0 6 0V5a3 3 0 0 0-3-3Z" class="svelte-1vixtb7"></path><path d="M19 10v2a7 7 0 0 1-14 0v-2" class="svelte-1vixtb7"></path><line x1="12" x2="12" y1="19" y2="22" class="svelte-1vixtb7"></line></svg></button>`),Fe=c(`<div class="downloading-indicator svelte-1vixtb7"><span class="processing-spinner svelte-1vixtb7"></span> <span class="svelte-1vixtb7"> </span></div>`),Ie=c(`<div class="listening-indicator svelte-1vixtb7"><span class="listening-dot svelte-1vixtb7"></span> <span class="svelte-1vixtb7">Recording...</span></div>`),Le=c(`<div class="processing-indicator svelte-1vixtb7"><span class="processing-spinner svelte-1vixtb7"></span> <span class="svelte-1vixtb7">Processing...</span></div>`),Re=c(`<div class="error-message svelte-1vixtb7" role="alert"> </div>`),ze=c(`<div class="validation-error svelte-1vixtb7" role="alert"> </div>`),Be=c(`<div data-smrt-component="PhoneInput"><!> <div class="input-wrapper svelte-1vixtb7"><input type="tel"/> <!></div> <!> <!> <!></div>`);function Ve(n,o){let c=re();ee(o,!0);let{t:u}=ie(),d=x(o,`placeholder`,3,`(555) 555-5555`),f=x(o,`value`,15,``),p=x(o,`disabled`,3,!1),m=x(o,`required`,3,!1),h=`${c}-label`,v=ce(),T=be(),D=le(),O=S(null),A=S(!1),j=S(!1),M=S(null),I=0,L=r(()=>v.state.mode===`smrt`),R=r(()=>T.isInitializing),z=r(()=>T.downloadProgress);function V(e){if(typeof e!=`string`)return!1;if(!e)return!m();let t=e.replace(/\D/g,``);return t.length===10||t.length===11&&t[0]===`1`}let oe=r(()=>V(f())),se=r(()=>f()&&!e(oe));function U(e){f(e),o.onchange?.(f())}function W(e){let t=e.replace(/\D/g,``);return t.length===0?``:t.length<=3?`(${t}`:t.length<=6?`(${t.slice(0,3)}) ${t.slice(3)}`:t.length<=10?`(${t.slice(0,3)}) ${t.slice(3,6)}-${t.slice(6)}`:t.length===11&&t[0]===`1`?`+1 (${t.slice(1,4)}) ${t.slice(4,7)}-${t.slice(7)}`:`(${t.slice(0,3)}) ${t.slice(3,6)}-${t.slice(6,10)}`}function G(e){let t={zero:`0`,oh:`0`,one:`1`,two:`2`,to:`2`,too:`2`,three:`3`,four:`4`,for:`4`,five:`5`,six:`6`,seven:`7`,eight:`8`,nine:`9`,niner:`9`},n=e.toLowerCase().replace(/^(my phone number is|my number is|phone number|number is|call me at)\s*/i,``).replace(/\b(area code|extension|ext)\b/gi,``).trim();for(let[e,r]of Object.entries(t))n=n.replace(RegExp(`\\b${e}\\b`,`gi`),r);return n=n.replace(/\bdouble\s*(\d)/gi,`$1$1`),n=n.replace(/\btriple\s*(\d)/gi,`$1$1$1`),n.replace(/\D/g,``)}function K(e){return W(G(e))}ne(()=>{if(D){let e={name:o.name,type:`phone`,get label(){return o.label},get description(){return o.description||`Phone number`},setValue:e=>{U(K(String(e??``)))},getValue:()=>f(),prepareValue:e=>{let t=ue(e);if(t===``)return``;let n=G(t);return n.length!==10&&(n.length!==11||n[0]!==`1`)?t:W(n)||de()},getState:()=>({disabled:p()}),get constraints(){return{required:m()}},validateValue:e=>{if(typeof e!=`string`)return!1;if(e===``)return!m();let t=G(e);return t.length===10||t.length===11&&t[0]===`1`},validate:()=>V(f())};return D.registerField(e)}});async function fe(){if(!(!e(L)||p()||e(j))){F(M,null),I=Date.now(),F(A,!0);try{(!T.isReady||T.adapterType!==`whisper-wasm`)&&await T.initialize({type:`whisper-wasm`}),await T.start({continuous:!0,interimResults:!1})}catch(e){F(A,!1),F(M,e instanceof Error?e.message:`Could not start voice input`,!0),B.error(`PhoneInput: failed to start voice recording`,{field:o.name,error:e})}}}async function q(){if(!e(A))return;let t=Date.now()-I;if(F(A,!1),await T.stop(),t<500)return;let n=Date.now();for(;T.isListening&&Date.now()-n<3e3;)await new Promise(e=>setTimeout(e,100));await new Promise(e=>setTimeout(e,100));let r=T.lastResult?.trim()||``;if(!r||r.length<2)F(M,`No speech detected. Hold longer and speak clearly.`);else{F(j,!0),F(M,null);try{U(K(r))}catch(e){F(M,e instanceof Error?e.message:`Failed to process speech`,!0)}finally{F(j,!1)}}}function J(e){e.button===0&&fe()}function pe(){q()}function me(){q()}function he(e){e.preventDefault(),fe()}function ge(){q()}function _e(t){(t.key===`Enter`||t.key===` `)&&(t.preventDefault(),e(A)?q():fe())}function Y(e){let t=e.target;U(W(t.value))}var ve=Be();let X;var ye=w(ve),xe=e=>{ae(e,{get id(){return h},get for(){return o.name},get label(){return o.label},get required(){return m()}})};t(ye,e=>{o.label&&e(xe)});var Se=E(ye,2),Z=w(Se);b(Z);let Ce;C(Z,e=>F(O,e),()=>e(O));var we=E(Z,2),Q=t=>{var n=Pe();let r;N(t=>{r=a(n,1,`mic-btn svelte-1vixtb7`,null,r,{active:e(A)}),n.disabled=p(),P(n,`aria-label`,t)},[()=>u(H[`ui.phone_input.mic_aria_label`])]),_(`keydown`,n,_e),_(`mousedown`,n,J),_(`mouseup`,n,pe),y(`mouseleave`,n,me),_(`touchstart`,n,he,void 0,!0),_(`touchend`,n,ge),g(t,n)};t(we,t=>{e(L)&&t(Q)}),s(Se);var Te=E(Se,2),Ee=t=>{var n=Fe(),r=E(w(n),2),i=k(r,!0);s(n),N(e=>l(i,e),[()=>u(H[`ui.phone_input.downloading_model`],{progress:e(z)})]),g(t,n)},De=e=>{var t=Ie();g(e,t)},Oe=e=>{var t=Le();g(e,t)};t(Te,t=>{e(R)?t(Ee):e(A)?t(De,1):e(j)&&t(Oe,2)});var $=E(Te,2),ke=t=>{var n=Re(),r=k(n,!0);N(()=>{P(n,`id`,`${o.name}-stt-error`),l(r,e(M))}),g(t,n)};t($,t=>{e(M)&&t(ke)});var Ae=E($,2),je=e=>{var t=ze(),n=k(t,!0);N(e=>{P(t,`id`,`${o.name}-error`),l(n,e)},[()=>u(H[`ui.phone_input.invalid`])]),g(e,t)};t(Ae,t=>{e(se)&&t(je)}),s(ve),N(()=>{X=a(ve,1,`smrt-phone svelte-1vixtb7`,null,X,{listening:e(A)}),P(Z,`id`,o.name),P(Z,`aria-labelledby`,o.label?h:void 0),P(Z,`name`,o.name),P(Z,`placeholder`,d()),te(Z,f()),Z.disabled=p()||e(j),Z.required=m(),Ce=a(Z,1,`smrt-input svelte-1vixtb7`,null,Ce,{"smrt-mode":e(L),invalid:e(se),processing:e(j)}),P(Z,`aria-invalid`,e(se)?`true`:void 0),P(Z,`aria-describedby`,e(se)?`${o.name}-error`:e(M)?`${o.name}-stt-error`:void 0)}),_(`input`,Z,Y),_(`mousedown`,Z,function(...t){(e(L)?J:void 0)?.apply(this,t)}),_(`mouseup`,Z,function(...t){(e(L)?pe:void 0)?.apply(this,t)}),y(`mouseleave`,Z,function(...t){(e(L)?me:void 0)?.apply(this,t)}),_(`touchstart`,Z,function(...t){(e(L)?he:void 0)?.apply(this,t)},void 0,!0),_(`touchend`,Z,function(...t){(e(L)?ge:void 0)?.apply(this,t)}),g(n,ve),i()}v([`input`,`mousedown`,`mouseup`,`touchstart`,`touchend`,`keydown`]),v([`input`,`keydown`,`click`]);var He=c(`<option disabled=""> </option>`),Ue=c(`<option> </option>`),We=c(`<span class="info svelte-17ub3c7"> </span>`),Ge=c(`<div data-smrt-component="SelectInput"><!> <div class="container svelte-17ub3c7"><div class="content svelte-17ub3c7"><select class="input svelte-17ub3c7"><!><!></select></div> <div class="trailing-icon svelte-17ub3c7"><!></div> <div class="active-indicator svelte-17ub3c7"></div></div> <div class="supporting-text svelte-17ub3c7" aria-live="polite"><!></div></div>`);function Ke(o,c){let u=re();ee(c,!0);let d=x(c,`placeholder`,3,`Select an option...`),h=x(c,`value`,15,``),v=x(c,`disabled`,3,!1),b=x(c,`required`,3,!1),te=`${u}-label`,C=ce(),T=le(),D=S(!1),O=r(()=>c.options.some(e=>e.value===``)),A=r(()=>c.options.filter((e,t)=>c.options.findIndex(t=>t.value===e.value)===t)),j=r(()=>C.state.mode===`smrt`);function M(e){h(e),c.onchange?.(h())}ne(()=>{if(T){let e={name:c.name,type:`select`,get label(){return c.label},get description(){let e=c.options.map(e=>e.label).join(`, `);return c.description?`${c.description}. Options: ${e}`:`Options: ${e}`},setValue:e=>{let t=String(e??``),n=ye(t,c.options);n?M(n):c.options.some(e=>e.value===t)&&M(t)},getValue:()=>h(),prepareValue:e=>{let t=ue(e);return t.trim()===``?t:ye(t,c.options)??t},clear:()=>(M(``),!0),getState:()=>({disabled:v()}),get constraints(){return{required:b()}},get options(){return c.options.map(e=>({value:e.value,label:e.label}))},validateValue:e=>{let t=String(e??``);return t===``?!b():c.options.some(e=>e.value===t)},validate:()=>!b()||h().trim().length>0};return T.registerField(e)}});function L(e){let t=e.target;M(t.value)}var R=Ge();let z;var ie=w(R),B=e=>{ae(e,{get id(){return te},get for(){return c.name},get label(){return c.label},get required(){return b()}})};t(ie,e=>{c.label&&e(B)});var V=E(ie,2),oe=w(V),H=w(oe),U=w(H),W=e=>{var t=He(),n=k(t,!0);t.value=t.__value=``,N(()=>{I(t,!h()),l(n,d())}),g(e,t)};t(U,t=>{e(O)||t(W)});var G=E(U);f(G,17,()=>e(A),e=>e.value,(t,n)=>{var r=Ue(),i=k(r,!0),a={};N(()=>{l(i,e(n).label),a!==(a=e(n).value)&&(r.value=(r.__value=a)??``)}),g(t,r)}),s(H);var K;m(H),s(oe);var de=E(oe,2),fe=w(de);se(fe,{name:`chevron-down`,size:24}),s(de),p(2),s(V);var q=E(V,2),J=w(q),pe=e=>{var t=We(),n=k(t,!0);N(()=>l(n,c.description)),g(e,t)};t(J,t=>{c.description&&e(D)&&t(pe)}),s(q),s(R),N(()=>{z=a(R,1,`smrt-select-field svelte-17ub3c7`,null,z,{"smrt-mode":e(j),focused:e(D),disabled:v(),"has-value":!!h()}),P(H,`id`,c.name),P(H,`aria-labelledby`,c.label?te:void 0),P(H,`name`,c.name),H.disabled=v(),H.required=b(),P(H,`aria-describedby`,`${c.name}-supporting`),K!==(K=h())&&(H.value=(H.__value=K)??``,n(H,K)),P(q,`id`,`${c.name}-supporting`)}),_(`change`,H,L),y(`focus`,H,()=>F(D,!0)),y(`blur`,H,()=>F(D,!1)),g(o,R),i()}v([`change`]);var qe=c(`<button type="button"><!></button>`),Je=c(`<span class="info svelte-1wen309"> </span>`),Ye=c(`<span class="success svelte-1wen309">Recording...</span>`),Xe=c(`<span class="info svelte-1wen309">Processing...</span>`),Ze=c(`<span class="error svelte-1wen309"> </span>`),Qe=c(`<div data-smrt-component="TextareaInput"><!> <div class="container svelte-1wen309"><div class="content svelte-1wen309"><textarea class="input svelte-1wen309"></textarea></div> <!> <div class="active-indicator svelte-1wen309"></div></div> <div class="supporting-text svelte-1wen309" aria-live="polite"><!></div></div>`);function $e(n,o){let c=re();ee(o,!0);let{t:u}=ie(),d=x(o,`placeholder`,3,``),f=x(o,`value`,15,``),m=x(o,`rows`,3,4),h=x(o,`disabled`,3,!1),v=x(o,`required`,3,!1),b=x(o,`appendMode`,3,!1),T=`${c}-label`,O=ce(),A=be(),j=le(),M=S(null),I=S(!1),z=S(!1),V=S(!1),oe=``,U=S(null),W=0,G=r(()=>O.state.mode===`smrt`),K=r(()=>A.isInitializing),de=r(()=>A.downloadProgress);function fe(e){f(e),o.onchange?.(f())}ne(()=>{if(j){let e={name:o.name,type:`textarea`,get label(){return o.label},get description(){return o.description},setValue:e=>{fe(String(e??``))},getValue:()=>f(),prepareValue:e=>{let t=ue(e);return b()&&f()?`${f()}\n${t}`:t},prepareReviewedValue:ue,getState:()=>({disabled:h()}),get constraints(){return{required:v()}},validateValue:e=>!v()||String(e??``).trim().length>0,validate:()=>!v()||f().trim().length>0};return j.registerField(e)}});async function q(){if(!(!e(G)||h()||e(z))){oe=f(),F(U,null),W=Date.now(),F(I,!0);try{(!A.isReady||A.adapterType!==`whisper-wasm`)&&await A.initialize({type:`whisper-wasm`}),await A.start({continuous:!0,interimResults:!1})}catch(e){F(I,!1),F(U,e instanceof Error?e.message:`Could not start voice input`,!0),B.error(`TextareaInput: failed to start voice recording`,{field:o.name,error:e})}}}async function J(){if(!e(I))return;let t=Date.now()-W;if(F(I,!1),await A.stop(),t<500)return;let n=Date.now();for(;A.isListening&&Date.now()-n<3e3;)await new Promise(e=>setTimeout(e,100));await new Promise(e=>setTimeout(e,100));let r=A.lastResult?.trim()||``;if(!r||r.length<2)F(U,`No speech detected. Hold longer and speak clearly.`);else{F(z,!0),F(U,null);try{let e=X(r);b()&&oe?fe(`${oe}\n${e}`):fe(e)}catch(e){F(U,e instanceof Error?e.message:`Failed to process speech`,!0)}finally{F(z,!1)}}}function pe(e){e.button===0&&q()}function me(){J()}function he(){J()}function ge(e){e.preventDefault(),q()}function _e(){J()}function Y(t){(t.key===`Enter`||t.key===` `)&&(t.preventDefault(),e(I)?J():q())}function ve(e){let t=e.target;fe(t.value)}var ye=Qe();let xe;var Se=w(ye),Z=e=>{ae(e,{get id(){return T},get for(){return o.name},get label(){return o.label},get required(){return v()}})};t(Se,e=>{o.label&&e(Z)});var Ce=E(Se,2),we=w(Ce),Q=w(we);L(Q),C(Q,e=>F(M,e),()=>e(M)),s(we);var Te=E(we,2),Ee=t=>{var n=qe();let r;var i=w(n);se(i,{name:`mic`,size:20}),s(n),D(n,e=>R?.(e)),N(t=>{r=a(n,1,`mic-btn svelte-1wen309`,null,r,{active:e(I)}),n.disabled=h(),P(n,`aria-label`,t)},[()=>u(H[`ui.textarea_input.mic_aria_label`])]),_(`keydown`,n,Y),_(`mousedown`,n,e=>{e.stopPropagation(),e.button===0&&q()}),_(`mouseup`,n,me),y(`mouseleave`,n,he),_(`touchstart`,n,e=>{e.stopPropagation(),e.preventDefault(),q()},void 0,!0),_(`touchend`,n,_e),g(t,n)};t(Te,t=>{e(G)&&t(Ee)}),p(2),s(Ce);var De=E(Ce,2),Oe=w(De),$=t=>{var n=Je(),r=k(n,!0);N(e=>l(r,e),[()=>u(H[`ui.textarea_input.downloading_model`],{progress:e(de)})]),g(t,n)},ke=e=>{var t=Ye();g(e,t)},Ae=e=>{var t=Xe();g(e,t)},je=t=>{var n=Ze(),r=k(n,!0);N(()=>l(r,e(U))),g(t,n)},Me=e=>{var t=Je(),n=k(t,!0);N(()=>l(n,o.description)),g(e,t)};t(Oe,t=>{e(K)?t($):e(I)?t(ke,1):e(z)?t(Ae,2):e(U)?t(je,3):o.description&&e(V)&&t(Me,4)}),s(De),s(ye),N(()=>{xe=a(ye,1,`smrt-text-field multiline svelte-1wen309`,null,xe,{"smrt-mode":e(G),focused:e(V),disabled:h(),"has-value":!!f(),listening:e(I)}),P(Q,`id`,o.name),P(Q,`aria-labelledby`,o.label?T:void 0),P(Q,`name`,o.name),P(Q,`placeholder`,e(V)?d():``),te(Q,f()),P(Q,`rows`,m()),Q.disabled=h()||e(z),Q.required=v(),P(Q,`aria-invalid`,e(U)?`true`:void 0),P(Q,`aria-describedby`,`${o.name}-supporting`),P(De,`id`,`${o.name}-supporting`)}),_(`input`,Q,ve),y(`focus`,Q,()=>F(V,!0)),y(`blur`,Q,()=>F(V,!1)),_(`mousedown`,Q,function(...t){(e(G)?pe:void 0)?.apply(this,t)}),_(`mouseup`,Q,function(...t){(e(G)?me:void 0)?.apply(this,t)}),y(`mouseleave`,Q,function(...t){(e(G)?he:void 0)?.apply(this,t)}),_(`touchstart`,Q,function(...t){(e(G)?ge:void 0)?.apply(this,t)},void 0,!0),_(`touchend`,Q,function(...t){(e(G)?_e:void 0)?.apply(this,t)}),g(n,ye),i()}v([`input`,`mousedown`,`mouseup`,`touchstart`,`touchend`,`keydown`]);var et=c(`<button type="button"><!></button>`),tt=c(`<span class="info svelte-q632gy"> </span>`),nt=c(`<span class="success svelte-q632gy">Recording...</span>`),rt=c(`<span class="info svelte-q632gy">Processing...</span>`),it=c(`<span class="error svelte-q632gy"> </span>`),at=c(`<div data-smrt-component="TextInput"><!> <div class="container svelte-q632gy"><div class="content svelte-q632gy"><input class="input svelte-q632gy"/></div> <!> <div class="active-indicator svelte-q632gy"></div></div> <div class="supporting-text svelte-q632gy" aria-live="polite"><!></div></div>`);function ot(n,o){let c=re();ee(o,!0);let{t:u}=ie(),d=x(o,`type`,3,`text`),f=x(o,`placeholder`,3,``),m=x(o,`value`,15,``),h=x(o,`disabled`,3,!1),v=x(o,`required`,3,!1),T=x(o,`appendMode`,3,!1),O=`${c}-label`,A=ce(),j=be(),M=le(),I=S(null),L=S(!1),z=S(!1),V=S(!1),oe=``,U=S(null),W=0,G=r(()=>A.state.mode===`smrt`),K=r(()=>j.isInitializing),de=r(()=>j.downloadProgress);function fe(e){return/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(e)}let q=r(()=>d()!==`email`||!m()||fe(m())),J=r(()=>d()===`email`&&m()&&!e(q));function pe(e){m(e),o.onchange?.(m())}ne(()=>{if(M){let t={name:o.name,get type(){return d()===`email`?`email`:`text`},get label(){return o.label},get description(){return o.description},setValue:e=>{pe(String(e??``))},getValue:()=>m(),prepareValue:ue,getState:()=>({disabled:h()}),get constraints(){return{required:v()}},validateValue:e=>{let t=String(e??``);return(!v()||t.trim().length>0)&&(d()!==`email`||t.length===0||fe(t))},validate:()=>(!v()||m().trim().length>0)&&(d()!==`email`||m().length===0||e(q))};return M.registerField(t)}});async function me(){if(!(!e(G)||h()||e(z))){oe=m(),F(U,null),W=Date.now(),F(L,!0);try{(!j.isReady||j.adapterType!==`whisper-wasm`)&&await j.initialize({type:`whisper-wasm`}),await j.start({continuous:!0,interimResults:!1})}catch(e){F(L,!1),F(U,e instanceof Error?e.message:`Could not start voice input`,!0),B.error(`TextInput: failed to start voice recording`,{field:o.name,error:e})}}}async function he(){if(!e(L))return;let t=Date.now()-W;if(F(L,!1),await j.stop(),t<500)return;let n=Date.now();for(;j.isListening&&Date.now()-n<3e3;)await new Promise(e=>setTimeout(e,100));await new Promise(e=>setTimeout(e,100));let r=j.lastResult?.trim()||``;if(!r||r.length<2)F(U,`No speech detected. Hold longer and speak clearly.`);else{F(z,!0),F(U,null);try{let e=d()===`email`?ve(r):X(r);T()&&oe?pe(`${oe} ${e}`):pe(e)}catch(e){F(U,e instanceof Error?e.message:`Failed to process speech`,!0)}finally{F(z,!1)}}}function ge(e){e.button===0&&me()}function _e(){he()}function Y(){he()}function ye(e){e.preventDefault(),me()}function xe(){he()}function Se(e){e.preventDefault(),e.stopPropagation()}function Z(t){(t.key===`Enter`||t.key===` `)&&(t.preventDefault(),e(L)?he():me())}function Ce(e){let t=e.target;pe(t.value)}var we=at();let Q;var Te=w(we),Ee=e=>{ae(e,{get id(){return O},get for(){return o.name},get label(){return o.label},get required(){return v()}})};t(Te,e=>{o.label&&e(Ee)});var De=E(Te,2),Oe=w(De),$=w(Oe);b($),C($,e=>F(I,e),()=>e(I)),s(Oe);var ke=E(Oe,2),Ae=t=>{var n=et();let r;var i=w(n);se(i,{name:`mic`,size:20}),s(n),D(n,e=>R?.(e)),N(t=>{r=a(n,1,`mic-btn svelte-q632gy`,null,r,{active:e(L)}),n.disabled=h(),P(n,`aria-label`,t)},[()=>u(H[`ui.text_input.mic_aria_label`])]),_(`click`,n,Se),_(`keydown`,n,Z),_(`mousedown`,n,e=>{e.stopPropagation(),e.button===0&&me()}),_(`mouseup`,n,_e),y(`mouseleave`,n,Y),_(`touchstart`,n,e=>{e.stopPropagation(),e.preventDefault(),me()},void 0,!0),_(`touchend`,n,xe),g(t,n)};t(ke,t=>{e(G)&&t(Ae)}),p(2),s(De);var je=E(De,2),Me=w(je),Ne=t=>{var n=tt(),r=k(n,!0);N(e=>l(r,e),[()=>u(H[`ui.text_input.downloading_model`],{progress:e(de)})]),g(t,n)},Pe=e=>{var t=nt();g(e,t)},Fe=e=>{var t=rt();g(e,t)},Ie=t=>{var n=it(),r=k(n,!0);N(()=>l(r,e(U))),g(t,n)},Le=e=>{var t=it(),n=k(t,!0);N(e=>l(n,e),[()=>u(H[`ui.text_input.invalid_email`])]),g(e,t)},Re=e=>{var t=tt(),n=k(t,!0);N(()=>l(n,o.description)),g(e,t)};t(Me,t=>{e(K)?t(Ne):e(L)?t(Pe,1):e(z)?t(Fe,2):e(U)?t(Ie,3):e(J)?t(Le,4):o.description&&e(V)&&t(Re,5)}),s(je),s(we),N(()=>{Q=a(we,1,`smrt-text-field svelte-q632gy`,null,Q,{"smrt-mode":e(G),focused:e(V),invalid:e(J),disabled:h(),"has-value":!!m(),listening:e(L)}),P($,`id`,o.name),P($,`aria-labelledby`,o.label?O:void 0),P($,`name`,o.name),P($,`type`,d()),P($,`placeholder`,e(V)?f():``),te($,m()),$.disabled=h()||e(z),$.required=v(),P($,`aria-invalid`,e(J)?`true`:void 0),P($,`aria-describedby`,`${o.name}-supporting`),P(je,`id`,`${o.name}-supporting`)}),_(`input`,$,Ce),y(`focus`,$,()=>F(V,!0)),y(`blur`,$,()=>F(V,!1)),_(`mousedown`,$,function(...t){(e(G)?ge:void 0)?.apply(this,t)}),_(`mouseup`,$,function(...t){(e(G)?_e:void 0)?.apply(this,t)}),y(`mouseleave`,$,function(...t){(e(G)?Y:void 0)?.apply(this,t)}),_(`touchstart`,$,function(...t){(e(G)?ye:void 0)?.apply(this,t)},void 0,!0),_(`touchend`,$,function(...t){(e(G)?xe:void 0)?.apply(this,t)}),g(n,we),i()}v([`input`,`mousedown`,`mouseup`,`touchstart`,`touchend`,`click`,`keydown`]);function st(e){return typeof e!=`number`||!Number.isFinite(e)?null:Number((e*100).toFixed(4))}function ct(e){return e===null||!Number.isFinite(e)?null:Number((e/100).toFixed(6))}export{Ke as a,Ae as c,$e as i,De as l,ct as n,Ve as o,ot as r,Ne as s,st as t,Y as u};
1
+ import{$ as e,B as t,C as n,Ct as r,Dt as i,E as a,Et as o,Ft as s,G as c,H as l,J as u,K as d,L as f,Ot as ee,Pt as p,S as m,Tt as h,U as g,X as _,Y as v,Z as y,_ as b,a as x,b as te,bt as S,ct as ne,d as C,ft as w,gt as T,ht as E,k as D,kt as O,mt as k,n as A,nt as j,pt as M,q as re,st as N,v as P,vt as F,w as I,wt as L}from"./DG3qFFTE.js";import"./xihTtKlq.js";import{a as R}from"./Bv5jGtB8.js";import{a as z,t as ie}from"./YUSKx8_q.js";import"./By9nPosf.js";import{i as B}from"./DIE02RSm.js";import{t as V}from"./CUyVrfsu.js";import{x as ae}from"./Bs5WxZDd.js";import{t as oe}from"./D042ejzG.js";import"./CEGflXJ6.js";import{tt as se}from"./DBoTKMLo.js";function ce(){return V()}var H=z({"ui.address_input.street_placeholder":`123 Main Street`,"ui.address_input.city_placeholder":`City`,"ui.address_input.postal_code_placeholder":`A1A 1A1`,"ui.date_range_input.mic_aria_label":`Hold to speak date range`,"ui.date_range_input.parsing":`Parsing dates...`,"ui.date_range_input.end_after_start":`End date must be after start date`,"ui.date_time_input.mic_aria_label":`Hold to speak`,"ui.date_time_input.parsing":`Parsing date...`,"ui.file_upload.remove_file":`Remove {name}`,"ui.file_upload.required":`Select a file to upload`,"ui.file_upload.rejected_type":`{count} file(s) rejected: type not allowed`,"ui.file_upload.exceeds_max_size":`{count} file(s) exceed the maximum size of {size}`,"ui.form.extracting":`Extracting form fields…`,"ui.form.listening_status":`Listening. Say "done" to finish.`,"ui.form.listening_button":`Listening... (say "done" to finish)`,"ui.form.speak_all_fields":`Speak all fields`,"ui.form.you_said":`You said:`,"ui.form_mic_button.tooltip":`Speak to fill all fields. Click again to stop.`,"ui.measurement_input.value_at_least":`Value must be at least {min} {unit}`,"ui.measurement_input.value_at_most":`Value must be at most {max} {unit}`,"ui.money_input.value_at_least":`Value must be at least {min}`,"ui.money_input.value_at_most":`Value must be at most {max}`,"ui.number_input.value_at_least":`Value must be at least {min}`,"ui.number_input.value_at_most":`Value must be at most {max}`,"ui.phone_input.mic_aria_label":`Hold to speak`,"ui.phone_input.downloading_model":`Downloading Whisper model... {progress}%`,"ui.phone_input.invalid":`Invalid phone number`,"ui.search_input.clear_aria_label":`Clear search`,"ui.text_input.mic_aria_label":`Hold to speak`,"ui.text_input.downloading_model":`Downloading Whisper model... {progress}%`,"ui.text_input.invalid_email":`Invalid email address`,"ui.textarea_input.mic_aria_label":`Hold to speak`,"ui.textarea_input.downloading_model":`Downloading Whisper model... {progress}%`}),U=Symbol(`smrt-form`),W=new WeakMap;function G(e){let t=new Map;return{get mode(){return e.mode},registerField(n){let r=n.name,i=e.registerField(n),a=typeof i==`function`?i:()=>e.unregisterField(r),o=!0,s=()=>{if(!o)return;o=!1;let e=t.get(r);e?.delete(s),e?.size===0&&t.delete(r),a()},c=t.get(r)??new Set;return c.add(s),t.set(r,c),s},unregisterField(e){let n=t.get(e)?.values().next().value;n?.()},getFieldSchema:()=>e.getFieldSchema(),get isFormListening(){return e.isFormListening},get isExtracting(){return e.isExtracting},toggleListening:()=>e.toggleListening(),get interactionRegistry(){return e.interactionRegistry},get formId(){return e.formId}}}function K(e){let t=h(),n=W.get(t);if(n)return n;let r=o(U);if(!r){if(!e)return null;throw Error(`Form context not found. Make sure to wrap your inputs with <SMRTForm>`)}let i=G(r);return W.set(t,i),O(U,i),i}function le(){return K(!1)}function ue(e){if(e==null)return``;if(typeof e==`string`||typeof e==`number`||typeof e==`boolean`)return String(e);throw Error(`staged_value_invalid`)}function de(){throw Error(`staged_value_invalid`)}var fe=c(`<div class="field-row full-width svelte-5rbjmj"><label class="field-label svelte-5rbjmj"> </label> <input type="text"/></div>`),q=c(`<div class="field-row flex-2 svelte-5rbjmj"><label class="field-label svelte-5rbjmj"> </label> <input type="text"/></div>`),J=c(`<option> </option>`),pe=c(`<div class="field-row flex-1 svelte-5rbjmj"><label class="field-label svelte-5rbjmj"> </label> <select><option>Select...</option><!></select></div>`),me=c(`<div class="field-row flex-1 svelte-5rbjmj"><label class="field-label svelte-5rbjmj"> </label> <input type="text"/></div>`),he=c(`<div class="field-row flex-1 svelte-5rbjmj"><label class="field-label svelte-5rbjmj"> </label> <select></select></div>`),ge=c(`<div class="validation-error svelte-5rbjmj" role="alert"> </div>`),_e=c(`<div class="smrt-address svelte-5rbjmj" data-smrt-component="AddressInput"><!> <div><!> <div class="field-row-group svelte-5rbjmj"><!> <!></div> <div class="field-row-group svelte-5rbjmj"><!> <!></div></div> <!></div>`);function Y(o,c){let u=re();ee(c,!0);let{t:d}=ie(),p=[{value:`CA`,label:`Canada`},{value:`US`,label:`United States`}],h=[{value:`AB`,label:`Alberta`},{value:`BC`,label:`British Columbia`},{value:`MB`,label:`Manitoba`},{value:`NB`,label:`New Brunswick`},{value:`NL`,label:`Newfoundland and Labrador`},{value:`NS`,label:`Nova Scotia`},{value:`NT`,label:`Northwest Territories`},{value:`NU`,label:`Nunavut`},{value:`ON`,label:`Ontario`},{value:`PE`,label:`Prince Edward Island`},{value:`QC`,label:`Quebec`},{value:`SK`,label:`Saskatchewan`},{value:`YT`,label:`Yukon`},{value:`US-CA`,label:`California`},{value:`US-NY`,label:`New York`},{value:`US-TX`,label:`Texas`},{value:`US-FL`,label:`Florida`},{value:`US-WA`,label:`Washington`}],v=x(c,`value`,31,()=>T({})),y=x(c,`fields`,19,()=>[`street`,`city`,`province`,`postalCode`,`country`]),C=x(c,`disabled`,3,!1),D=x(c,`required`,3,!1),O=x(c,`countries`,3,p),A=x(c,`provinces`,3,h);function M(){return[...new Set(O().map(e=>e.value))]}function I(){return[...new Set([...D()?[]:[``],...A().map(e=>e.value)])]}function L(e){return e===`country`?{type:`string`,enum:M()}:e===`province`?{type:`string`,enum:I()}:{type:`string`}}function R(e){if(typeof e!=`object`||Array.isArray(e))return!1;let t=e;return!(![Object.prototype,null].includes(Object.getPrototypeOf(t))||!Object.keys(t).every(e=>y().includes(e))||!y().every(e=>!Object.hasOwn(t,e)||typeof t[e]==`string`)||Object.hasOwn(t,`country`)&&!M().includes(t.country)||Object.hasOwn(t,`province`)&&!I().includes(t.province))}function z(e){if(e==null)return!D();if(!R(e))return!1;if(!D())return!0;let t=e;return y().every(e=>typeof t[e]==`string`&&t[e].trim().length>0)}let B=ce(),V=le(),oe=`smrt-rich-field-${u}`,se=r(()=>B.state.mode===`smrt`),U=S(T(v().street??``)),W=S(T(v().city??``)),G=S(T(v().province??``)),K=S(T(v().postalCode??``)),Y=S(T(v().country??j(()=>O()[0]?.value??``)));ne(()=>{v().street!==void 0&&v().street!==e(U)&&F(U,v().street,!0),v().city!==void 0&&v().city!==e(W)&&F(W,v().city,!0),v().province!==void 0&&v().province!==e(G)&&F(G,v().province,!0),v().postalCode!==void 0&&v().postalCode!==e(K)&&F(K,v().postalCode,!0),v().country!==void 0&&v().country!==e(Y)&&F(Y,v().country,!0)});function ve(){let t={};return y().includes(`street`)&&(t.street=e(U)),y().includes(`city`)&&(t.city=e(W)),y().includes(`province`)&&(t.province=e(G)),y().includes(`postalCode`)&&(t.postalCode=e(K)),y().includes(`country`)&&(t.country=e(Y)),t}function X(){let e=ve();v(e),c.onchange?.(e)}function ye(e){let t={},n=e.toLowerCase().trim(),r=n.match(/([a-z]\d[a-z]\s?\d[a-z]\d)|(\d{5}(-\d{4})?)/i);r&&(t.postalCode=r[0].toUpperCase().replace(/\s+/g,` `));for(let e of A())if(RegExp(`\\b${e.label.toLowerCase()}\\b|\\b${e.value.toLowerCase()}\\b`,`i`).test(n)){t.province=e.value;break}for(let e of O())if([e.label,e.value].some(e=>{let t=e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`);return RegExp(`(^|\\W)${t}(?=$|\\W)`,`i`).test(n)})){t.country=e.value;break}for(let e of[/(?:city\s+(?:of\s+)?|in\s+)([a-z\s]+?)(?:\s*,|\s+(?:ab|bc|mb|on|qc|sk|alberta|british columbia|ontario|quebec)|\s*$)/i]){let r=n.match(e);if(r){t.city=r[1].trim().replace(/\b\w/g,e=>e.toUpperCase());break}}let i=n.match(/(\d+\s+[a-z\s]+(?:street|st|avenue|ave|road|rd|drive|dr|boulevard|blvd|way|lane|ln|crescent|cres|place|pl|court|ct))/i);return i&&(t.street=i[1].replace(/\b\w/g,e=>e.toUpperCase())),t}let be={street:`Street Address`,city:`City`,province:`Province/State`,postalCode:`Postal/ZIP Code`,country:`Country`},xe=r(()=>{let e=y()[0]??`street`;switch(e){case`postalCode`:return`${c.name}_postal`;default:return`${c.name}_${e}`}});ne(()=>{if(V){let e={name:c.name,ownerToken:oe,type:`address`,get label(){return c.label},get description(){return c.description||`A mailing address with street, city, province, postal code, and country`},setValue:e=>{if(e==null){F(U,``),F(W,``),F(G,``),F(K,``),F(Y,O()[0]?.value??``,!0),X();return}if(R(e)){let t=e;t.street!==void 0&&F(U,t.street,!0),t.city!==void 0&&F(W,t.city,!0),t.province!==void 0&&F(G,t.province,!0),t.postalCode!==void 0&&F(K,t.postalCode,!0),t.country!==void 0&&F(Y,t.country,!0),X();return}let t=Object.fromEntries(Object.entries(ye(String(e))).filter(([e])=>y().includes(e)));Object.keys(t).length>0&&R(t)&&(t.street!==void 0&&F(U,t.street,!0),t.city!==void 0&&F(W,t.city,!0),t.province!==void 0&&F(G,t.province,!0),t.postalCode!==void 0&&F(K,t.postalCode,!0),t.country!==void 0&&F(Y,t.country,!0),X())},getValue:ve,prepareValue:e=>{if(e==null)return Object.fromEntries(y().map(e=>[e,e===`country`?O()[0]?.value??``:``]));if(typeof e==`object`&&!Array.isArray(e))return e;let t=ye(ue(e)),n=Object.fromEntries(Object.entries(t).filter(([e])=>y().includes(e)));return Object.keys(n).length>0?{...ve(),...n}:de()},clear:()=>(F(U,``),F(W,``),F(G,``),F(K,``),F(Y,O()[0]?.value??``,!0),X(),!0),getState:()=>({disabled:C()}),get constraints(){return{required:D()}},get webMcpSchema(){return{type:`object`,additionalProperties:!1,properties:Object.fromEntries(y().map(e=>[e,L(e)])),...D()?{required:[...y()]}:{}}},validateValue:z,validate:()=>z(ve())};return V.registerField(e)}});function Se(e){F(U,e.target.value,!0),X()}function Z(e){F(W,e.target.value,!0),X()}function Ce(e){F(G,e.target.value,!0),X()}function we(e){F(K,e.target.value,!0),X()}function Q(e){F(Y,e.target.value,!0),X()}var Te=_e(),Ee=w(Te),De=t=>{ae(t,{get for(){return e(xe)},get label(){return c.label},get required(){return D()}})};t(Ee,e=>{c.label&&e(De)});var Oe=E(Ee,2);let $;var ke=w(Oe),Ae=t=>{var n=fe(),r=w(n),i=k(r,!0),o=E(r,2);b(o);let u;s(n),N((t,n)=>{P(r,`for`,`${c.name??``}_street`),l(i,be.street),P(o,`id`,`${c.name??``}_street`),P(o,`name`,`${c.name??``}[street]`),P(o,`placeholder`,t),te(o,e(U)),o.disabled=C(),o.required=n,u=a(o,1,`smrt-input svelte-5rbjmj`,null,u,{invalid:!!c.error}),P(o,`aria-invalid`,c.error?`true`:void 0),P(o,`aria-describedby`,c.error?`${c.name}-error`:void 0)},[()=>d(H[`ui.address_input.street_placeholder`]),()=>D()&&y().includes(`street`)]),_(`input`,o,Se),g(t,n)},je=r(()=>y().includes(`street`));t(ke,t=>{e(je)&&t(Ae)});var Me=E(ke,2),Ne=w(Me),Pe=t=>{var n=q(),r=w(n),i=k(r,!0),o=E(r,2);b(o);let u;s(n),N((t,n)=>{P(r,`for`,`${c.name??``}_city`),l(i,be.city),P(o,`id`,`${c.name??``}_city`),P(o,`name`,`${c.name??``}[city]`),P(o,`placeholder`,t),te(o,e(W)),o.disabled=C(),o.required=n,u=a(o,1,`smrt-input svelte-5rbjmj`,null,u,{invalid:!!c.error}),P(o,`aria-invalid`,c.error?`true`:void 0),P(o,`aria-describedby`,c.error?`${c.name}-error`:void 0)},[()=>d(H[`ui.address_input.city_placeholder`]),()=>D()&&y().includes(`city`)]),_(`input`,o,Z),g(t,n)},Fe=r(()=>y().includes(`city`));t(Ne,t=>{e(Fe)&&t(Pe)});var Ie=E(Ne,2),Le=t=>{var r=pe(),i=w(r),o=k(i,!0),u=E(i,2);let d;var ee=w(u);ee.value=ee.__value=``;var p=E(ee);f(p,17,A,e=>e.value,(t,n)=>{var r=J(),i=k(r,!0),a={};N(()=>{l(i,e(n).label),a!==(a=e(n).value)&&(r.value=(r.__value=a)??``)}),g(t,r)}),s(u);var h;m(u),s(r),N(t=>{P(i,`for`,`${c.name??``}_province`),l(o,be.province),P(u,`id`,`${c.name??``}_province`),P(u,`name`,`${c.name??``}[province]`),u.disabled=C(),u.required=t,d=a(u,1,`smrt-input smrt-select svelte-5rbjmj`,null,d,{invalid:!!c.error}),P(u,`aria-invalid`,c.error?`true`:void 0),P(u,`aria-describedby`,c.error?`${c.name}-error`:void 0),h!==(h=e(G))&&(u.value=(u.__value=h)??``,n(u,h))},[()=>D()&&y().includes(`province`)]),_(`change`,u,Ce),g(t,r)},Re=r(()=>y().includes(`province`));t(Ie,t=>{e(Re)&&t(Le)}),s(Me);var ze=E(Me,2),Be=w(ze),Ve=t=>{var n=me(),r=w(n),i=k(r,!0),o=E(r,2);b(o);let u;s(n),N((t,n)=>{P(r,`for`,`${c.name??``}_postal`),l(i,be.postalCode),P(o,`id`,`${c.name??``}_postal`),P(o,`name`,`${c.name??``}[postalCode]`),P(o,`placeholder`,t),te(o,e(K)),o.disabled=C(),o.required=n,u=a(o,1,`smrt-input svelte-5rbjmj`,null,u,{invalid:!!c.error}),P(o,`aria-invalid`,c.error?`true`:void 0),P(o,`aria-describedby`,c.error?`${c.name}-error`:void 0)},[()=>d(H[`ui.address_input.postal_code_placeholder`]),()=>D()&&y().includes(`postalCode`)]),_(`input`,o,we),g(t,n)},He=r(()=>y().includes(`postalCode`));t(Be,t=>{e(He)&&t(Ve)});var Ue=E(Be,2),We=t=>{var r=he(),i=w(r),o=k(i,!0),u=E(i,2);let d;f(u,21,O,e=>e.value,(t,n)=>{var r=J(),i=k(r,!0),a={};N(()=>{l(i,e(n).label),a!==(a=e(n).value)&&(r.value=(r.__value=a)??``)}),g(t,r)}),s(u);var ee;m(u),s(r),N(t=>{P(i,`for`,`${c.name??``}_country`),l(o,be.country),P(u,`id`,`${c.name??``}_country`),P(u,`name`,`${c.name??``}[country]`),u.disabled=C(),u.required=t,d=a(u,1,`smrt-input smrt-select svelte-5rbjmj`,null,d,{invalid:!!c.error}),P(u,`aria-invalid`,c.error?`true`:void 0),P(u,`aria-describedby`,c.error?`${c.name}-error`:void 0),ee!==(ee=e(Y))&&(u.value=(u.__value=ee)??``,n(u,ee))},[()=>D()&&y().includes(`country`)]),_(`change`,u,Q),g(t,r)},Ge=r(()=>y().includes(`country`));t(Ue,t=>{e(Ge)&&t(We)}),s(ze),s(Oe);var Ke=E(Oe,2),qe=e=>{var t=ge(),n=k(t,!0);N(()=>{P(t,`id`,`${c.name}-error`),l(n,c.error)}),g(e,t)};t(Ke,e=>{c.error&&e(qe)}),s(Te),N(()=>{P(Te,`data-smrt-field-owner`,oe),$=a(Oe,1,`address-fields svelte-5rbjmj`,null,$,{"smrt-mode":e(se)})}),g(o,Te),i()}v([`input`,`change`]);function ve(e){return e.toLowerCase().replace(/\s+at\s+/gi,`@`).replace(/\bat\b/gi,`@`).replace(/\s+dot\s+/gi,`.`).replace(/\bdot\b/gi,`.`).replace(/\s+/g,``).trim()}function X(e){return e.replace(/^(my name is|i am|i'm|it's|this is|the name is)\s*/i,``).replace(/\b(um|uh|like|so|well)\b\s*/gi,``).trim()}function ye(e,t){let n=e.toLowerCase().trim();for(let e of t)if(e.value.toLowerCase()===n||e.label.toLowerCase()===n)return e.value;for(let e of t)if(e.label.toLowerCase().includes(n)||n.includes(e.label.toLowerCase()))return e.value;return null}v([`change`]);function be(e={}){let t=V(),n=!1;return e.autoInit&&t.initializeSTT().catch(()=>{}),A(()=>{n&&t.state.ai.stt.isListening&&t.stopListening().catch(()=>{}),n=!1}),{start:async r=>{n=!0;try{await t.startListening({...e.defaultOptions,...r})}catch(e){throw n=!1,e}},stop:async()=>{n=!1,await t.stopListening()},initialize:async e=>{await t.initializeSTT(e)},get isListening(){return t.state.ai.stt.isListening},get isReady(){return t.state.ai.stt.initState===`ready`},get isInitializing(){return t.state.ai.stt.initState===`initializing`},get lastResult(){return t.state.ai.stt.lastResult},get interimResult(){return t.state.ai.stt.interimResult},get currentResult(){let{isListening:e,interimResult:n,lastResult:r}=t.state.ai.stt;return e&&n?n:r},get error(){return t.state.ai.stt.error},get downloadProgress(){return t.state.ai.stt.downloadProgress?.percent??0},get adapterType(){return t.state.ai.stt.adapter?.type??null}}}v([`keydown`,`mousedown`,`mouseup`,`touchstart`,`touchend`,`change`]);var xe=d(`<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" class="spinner svelte-rsri1g"><circle cx="12" cy="12" r="10" stroke-dasharray="32" stroke-dashoffset="12" class="svelte-rsri1g"></circle></svg>`),Se=d(`<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="svelte-rsri1g"><path d="M12 2a3 3 0 0 0-3 3v7a3 3 0 0 0 6 0V5a3 3 0 0 0-3-3Z" class="svelte-rsri1g"></path><path d="M19 10v2a7 7 0 0 1-14 0v-2" class="svelte-rsri1g"></path><line x1="12" x2="12" y1="19" y2="22" class="svelte-rsri1g"></line></svg>`),Z=c(`<input type="text" class="smrt-input smrt-mode svelte-rsri1g" readonly=""/> <button type="button"><!></button>`,1),Ce=c(`<input class="smrt-input svelte-rsri1g"/>`),we=c(`<div class="listening-indicator svelte-rsri1g">Recording...</div>`),Q=c(`<div class="parsing-indicator svelte-rsri1g"> </div>`),Te=c(`<div class="error-indicator svelte-rsri1g" role="alert"> </div>`),Ee=c(`<div data-smrt-component="DateTimeInput"><!> <div class="input-wrapper svelte-rsri1g"><!></div> <!></div>`);function De(n,o){let c=re();ee(o,!0);let{t:u}=ie(),d=x(o,`includeTime`,3,!0),f=x(o,`placeholder`,19,()=>d()?`e.g., next Tuesday at 3pm`:`e.g., March 15, 1990`),p=x(o,`value`,15,``),m=x(o,`disabled`,3,!1),h=x(o,`required`,3,!1),v=`${c}-label`,T=ce(),D=be(),O=le(),A=S(null),j=S(``),I=S(!1),L=S(!1),R=S(null),z=0,V=r(()=>T.state.mode===`smrt`);function se(e){p(e),o.onchange?.(p())}function U(e){if(!e)return``;try{if(!d()&&/^\d{4}-\d{2}-\d{2}$/.test(e)){let[t,n,r]=e.split(`-`).map(Number);return new Date(t,n-1,r).toLocaleDateString(void 0,{dateStyle:`medium`})}let t=new Date(e);return Number.isNaN(t.getTime())?e:d()?t.toLocaleString(void 0,{dateStyle:`medium`,timeStyle:`short`}):t.toLocaleDateString(void 0,{dateStyle:`medium`})}catch{return e}}function W(e){if(typeof e!=`string`)return!1;if(e===``)return!h();let t=d()?/^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2})(?::(\d{2})(?:\.\d{1,3})?)?$/.exec(e):/^(\d{4})-(\d{2})-(\d{2})$/.exec(e);if(!t)return!1;let[,n,r,i,a=`0`,o=`0`,s=`0`]=t,c=new Date(Date.UTC(Number(n),Number(r)-1,Number(i),Number(a),Number(o),Number(s)));return c.getUTCFullYear()===Number(n)&&c.getUTCMonth()===Number(r)-1&&c.getUTCDate()===Number(i)&&c.getUTCHours()===Number(a)&&c.getUTCMinutes()===Number(o)&&c.getUTCSeconds()===Number(s)}ne(()=>{F(j,U(p()),!0)}),ne(()=>{if(O){let e={name:o.name,type:`datetime`,get label(){return o.label},get description(){return o.description??(d()?`Date and time`:`Date`)},setValue:e=>{se(String(e??``))},getValue:()=>p(),prepareValue:ue,getState:()=>({disabled:m()}),get constraints(){return{required:h()}},validateValue:W,validate:()=>W(p())};return O.registerField(e)}});async function G(e){let t;try{t=await oe(`chrono-node`)}catch{throw Error(`Natural-language date parsing requires the optional dependency "chrono-node". Install it with: pnpm add chrono-node`)}let n=t.parse(e);if(n.length===0)throw Error(`Could not parse date from speech`);let r=n[0].start.date();if(Number.isNaN(r.getTime()))throw Error(`Invalid date`);let i=r.getFullYear(),a=String(r.getMonth()+1).padStart(2,`0`),o=String(r.getDate()).padStart(2,`0`);return d()?`${i}-${a}-${o}T${String(r.getHours()).padStart(2,`0`)}:${String(r.getMinutes()).padStart(2,`0`)}`:`${i}-${a}-${o}`}async function K(){if(!(!e(V)||m()||e(L))){F(R,null),z=Date.now(),F(I,!0);try{(!D.isReady||D.adapterType!==`whisper-wasm`)&&await D.initialize({type:`whisper-wasm`}),await D.start({continuous:!0,interimResults:!1})}catch(e){F(I,!1),F(R,e instanceof Error?e.message:`Could not start voice input`,!0),B.error(`DateTimeInput: failed to start voice recording`,{field:o.name,error:e})}}}async function de(){if(!e(I))return;let t=Date.now()-z;if(F(I,!1),await D.stop(),t<500)return;let n=Date.now();for(;D.isListening&&Date.now()-n<3e3;)await new Promise(e=>setTimeout(e,100));await new Promise(e=>setTimeout(e,100));let r=D.lastResult?.trim()||``;if(!r||r.length<2)F(R,`No speech detected. Hold longer and speak clearly.`);else{F(L,!0),F(R,null);try{se(await G(r))}catch(e){F(R,e instanceof Error?e.message:`Failed to parse date`,!0)}finally{F(L,!1)}}}function fe(e){e.button===0&&K()}function q(){de()}function J(){de()}function pe(e){e.preventDefault(),K()}function me(){de()}function he(e){e.preventDefault(),e.stopPropagation()}function ge(e){e.stopPropagation(),e.button===0&&K()}function _e(e){e.stopPropagation(),e.preventDefault(),K()}function Y(t){(t.key===`Enter`||t.key===` `)&&(t.preventDefault(),t.stopPropagation(),e(I)?de():K())}function ve(e){let t=e.target;se(t.value)}var X=Ee();let ye;var De=w(X),Oe=e=>{ae(e,{get id(){return v},get for(){return o.name},get label(){return o.label},get required(){return h()}})};t(De,e=>{o.label&&e(Oe)});var $=E(De,2),ke=w($),Ae=n=>{var r=Z(),i=M(r);b(i),C(i,e=>F(A,e),()=>e(A));var c=E(i,2);let l;var d=w(c),ee=e=>{var t=xe();g(e,t)},p=e=>{var t=Se();g(e,t)};t(d,t=>{e(L)?t(ee):t(p,-1)}),s(c),N(t=>{P(i,`id`,o.name),P(i,`aria-labelledby`,o.label?v:void 0),P(i,`name`,o.name),P(i,`placeholder`,f()),te(i,e(j)),i.disabled=m()||e(L),i.required=h(),P(i,`aria-invalid`,e(R)?`true`:void 0),P(i,`aria-describedby`,e(R)?`${o.name}-error`:void 0),l=a(c,1,`mic-btn svelte-rsri1g`,null,l,{active:e(I)}),c.disabled=m()||e(L),P(c,`aria-label`,t)},[()=>u(H[`ui.date_time_input.mic_aria_label`])]),_(`mousedown`,i,fe),_(`mouseup`,i,q),y(`mouseleave`,i,J),_(`touchstart`,i,pe,void 0,!0),_(`touchend`,i,me),_(`click`,c,he),_(`keydown`,c,Y),_(`mousedown`,c,ge),_(`mouseup`,c,q),y(`mouseleave`,c,J),_(`touchstart`,c,_e,void 0,!0),_(`touchend`,c,me),g(n,r)},je=t=>{var n=Ce();b(n),C(n,e=>F(A,e),()=>e(A)),N(()=>{P(n,`id`,o.name),P(n,`aria-labelledby`,o.label?v:void 0),P(n,`name`,o.name),P(n,`type`,d()?`datetime-local`:`date`),te(n,p()),n.disabled=m(),n.required=h(),P(n,`aria-invalid`,e(R)?`true`:void 0),P(n,`aria-describedby`,e(R)?`${o.name}-error`:void 0)}),_(`change`,n,ve),g(t,n)};t(ke,t=>{e(V)?t(Ae):t(je,-1)}),s($);var Me=E($,2),Ne=e=>{var t=we();g(e,t)},Pe=e=>{var t=Q(),n=k(t,!0);N(e=>l(n,e),[()=>u(H[`ui.date_time_input.parsing`])]),g(e,t)},Fe=t=>{var n=Te(),r=k(n,!0);N(()=>{P(n,`id`,`${o.name}-error`),l(r,e(R))}),g(t,n)};t(Me,t=>{e(I)?t(Ne):e(L)?t(Pe,1):e(R)&&t(Fe,2)}),s(X),N(()=>ye=a(X,1,`smrt-datetime svelte-rsri1g`,null,ye,{listening:e(I),parsing:e(L)})),g(n,X),i()}v([`mousedown`,`mouseup`,`touchstart`,`touchend`,`click`,`keydown`,`change`]),v([`click`,`keydown`,`change`]),v([`click`]),v([`click`,`keydown`]),v([`input`,`change`]);var Oe=c(`<div class="validation-error svelte-e6jjj7" role="alert"> </div>`),$=c(`<div class="validation-error svelte-e6jjj7" role="alert"><!></div>`),ke=c(`<div class="smrt-money svelte-e6jjj7" data-smrt-component="MoneyInput"><!> <div class="input-wrapper svelte-e6jjj7"><input type="text" inputmode="decimal"/> <span class="currency-code svelte-e6jjj7"> </span></div> <input type="hidden"/> <!></div>`);function Ae(n,o){let c=re();ee(o,!0);let{t:d}=ie(),f=x(o,`placeholder`,3,`0.00`),p=x(o,`value`,15,null),m=x(o,`currency`,3,`CAD`),h=x(o,`disabled`,3,!1),v=x(o,`required`,3,!1),C=`${c}-label`,D=ce(),O=le(),A=r(()=>D.state.mode===`smrt`);function j(e){return e===null?``:(e/100).toFixed(2)}function M(e){let t=e.replace(/[$,\s]/g,``);if(t===``)return null;let n=parseFloat(t);return Number.isNaN(n)?null:Math.round(n*100)}let I=S(T(j(p())));ne(()=>{let t=j(p());e(I)!==t&&!e(L)&&F(I,t,!0)});let L=S(!1),R=r(()=>m()===`USD`?`US$`:`CA$`),z=r(()=>p()===null||!(o.min!==void 0&&p()<o.min||o.max!==void 0&&p()>o.max)),B=r(()=>p()!==null&&!e(z)||!!o.error);function V(e){p(e),o.onchange?.(p())}function oe(e){let t=e.toLowerCase().trim(),n={zero:0,one:1,two:2,three:3,four:4,five:5,six:6,seven:7,eight:8,nine:9,ten:10,eleven:11,twelve:12,thirteen:13,fourteen:14,fifteen:15,sixteen:16,seventeen:17,eighteen:18,nineteen:19,twenty:20,thirty:30,forty:40,fifty:50,sixty:60,seventy:70,eighty:80,ninety:90,hundred:100,thousand:1e3,million:1e6},r=/dollar|buck|cad|usd/i.test(t),i=/cent/i.test(t),a=t.replace(/\$|dollar[s]?|buck[s]?|cad|usd|cent[s]?/gi,``).trim(),o=a.match(/[\d,.]+/);if(o){let e=parseFloat(o[0].replace(/,/g,``));if(!Number.isNaN(e))return Math.round(i&&!r?e:e*100)}let s=a.split(/[\s-]+/).filter(Boolean),c=0,l=0,u=0,d=!1;for(let e=0;e<s.length;e++){let t=s[e],r=n[t];t===`and`||t===`point`?(d=!0,c+=u,u=0):r!==void 0&&(r>=100?(u=u===0?r:u*r,r>=1e3&&(d?l+=u:c+=u,u=0)):u+=r)}d?(l+=u,l>99&&(c+=Math.floor(l/100),l%=100)):c+=u;let f=c*100+l;return f>0?f:null}ne(()=>{if(O){let t={name:o.name,type:`money`,get label(){return o.label},get description(){let e=``;return o.min!==void 0&&o.max!==void 0?e=` (between $${(o.min/100).toFixed(2)} and $${(o.max/100).toFixed(2)})`:o.min===void 0?o.max!==void 0&&(e=` (maximum $${(o.max/100).toFixed(2)})`):e=` (minimum $${(o.min/100).toFixed(2)})`,(o.description||`A monetary amount in dollars`)+e},setValue:e=>{if(e==null||e===``){V(null),F(I,``);return}if(typeof e==`number`){V(e),F(I,j(e),!0);return}let t=oe(String(e));t!==null&&(V(t),F(I,j(t),!0))},getValue:()=>p(),prepareValue:e=>e==null||e===``?null:typeof e==`number`?e:typeof e==`string`?oe(e)??de():de(),getState:()=>({disabled:h()}),get constraints(){return{required:v(),min:o.min,max:o.max}},validateValue:e=>e===null&&!v()||typeof e==`number`&&Number.isSafeInteger(e)&&(o.min===void 0||e>=o.min)&&(o.max===void 0||e<=o.max),validate:()=>p()===null?!v():Number.isSafeInteger(p())&&e(z)};return O.registerField(t)}});function se(e){let t=e.target;F(I,t.value,!0),V(M(t.value))}function U(){F(L,!0)}function W(){F(L,!1),F(I,j(p()),!0)}var G=ke(),K=w(G),ue=e=>{ae(e,{get id(){return C},get for(){return o.name},get label(){return o.label},get required(){return v()}})};t(K,e=>{o.label&&e(ue)});var fe=E(K,2),q=w(fe);b(q);let J;var pe=E(q,2),me=k(pe,!0);s(fe);var he=E(fe,2);b(he);var ge=E(he,2),_e=e=>{var t=Oe(),n=k(t,!0);N(()=>{P(t,`id`,`${o.name}-error`),l(n,o.error)}),g(e,t)},Y=n=>{var r=$(),i=w(r),a=t=>{var n=u();N(e=>l(n,e),[()=>d(H[`ui.money_input.value_at_least`],{min:`${e(R)}${(o.min/100).toFixed(2)}`})]),g(t,n)},c=t=>{var n=u();N(e=>l(n,e),[()=>d(H[`ui.money_input.value_at_most`],{max:`${e(R)}${(o.max/100).toFixed(2)}`})]),g(t,n)};t(i,e=>{o.min!==void 0&&p()!==null&&p()<o.min?e(a):o.max!==void 0&&p()!==null&&p()>o.max&&e(c,1)}),s(r),N(()=>P(r,`id`,`${o.name}-error`)),g(n,r)};t(ge,t=>{o.error?t(_e):e(B)&&!e(z)&&t(Y,1)}),s(G),N(()=>{P(q,`id`,o.name),P(q,`aria-labelledby`,o.label?C:void 0),P(q,`name`,o.name),P(q,`placeholder`,f()),te(q,e(I)),q.disabled=h(),q.required=v(),J=a(q,1,`smrt-input svelte-e6jjj7`,null,J,{"smrt-mode":e(A),invalid:e(B)}),P(q,`aria-invalid`,e(B)?`true`:void 0),P(q,`aria-describedby`,e(B)?`${o.name}-error`:void 0),l(me,m()),P(he,`name`,`${o.name??``}_cents`),te(he,p()??``)}),_(`input`,q,se),y(`focus`,q,U),y(`blur`,q,W),g(n,G),i()}v([`input`]);var je=c(`<div class="validation-error svelte-1pebtso" role="alert"><!></div>`),Me=c(`<div class="smrt-number svelte-1pebtso" data-smrt-component="NumberInput"><!> <div class="input-wrapper svelte-1pebtso"><input type="number"/></div> <!></div>`);function Ne(n,o){let c=re();ee(o,!0);let{t:d}=ie(),f=x(o,`placeholder`,3,``),p=x(o,`value`,15,null),m=x(o,`step`,3,1),h=x(o,`disabled`,3,!1),v=x(o,`required`,3,!1),y=`${c}-label`,S=ce(),C=le(),T=r(()=>S.state.mode===`smrt`);function D(e){return e===null||!(o.min!==void 0&&e<o.min||o.max!==void 0&&e>o.max)}function O(e){if(!Number.isFinite(m())||m()<=0)return!0;let t=(e-(o.min??0))/m();return Math.abs(t-Math.round(t))<=1e-9}let k=r(()=>D(p())),A=r(()=>p()!==null&&!e(k));function j(e){p(e),o.onchange?.(p())}function M(e){let t=e.toLowerCase().trim(),n={zero:0,one:1,two:2,three:3,four:4,five:5,six:6,seven:7,eight:8,nine:9,ten:10,eleven:11,twelve:12,thirteen:13,fourteen:14,fifteen:15,sixteen:16,seventeen:17,eighteen:18,nineteen:19,twenty:20,thirty:30,forty:40,fifty:50,sixty:60,seventy:70,eighty:80,ninety:90,hundred:100,thousand:1e3,million:1e6},r=parseFloat(t.replace(/[,$]/g,``));if(!Number.isNaN(r))return r;if(n[t]!==void 0)return n[t];let i=t.split(/[\s-]+/),a=0,o=0;for(let e of i){let t=n[e];t!==void 0&&(t>=100?(o=o===0?t:o*t,t>=1e3&&(a+=o,o=0)):o+=t)}return a+=o,a>0?a:null}ne(()=>{if(C){let t={name:o.name,type:`number`,get label(){return o.label},get description(){let e=``;return o.min!==void 0&&o.max!==void 0?e=` (between ${o.min} and ${o.max})`:o.min===void 0?o.max!==void 0&&(e=` (maximum ${o.max})`):e=` (minimum ${o.min})`,(o.description||`A number`)+e},setValue:e=>{if(e==null||e===``){j(null);return}if(typeof e==`number`){j(e);return}let t=M(String(e));t!==null&&j(t)},getValue:()=>p(),prepareValue:e=>e==null||e===``?null:typeof e==`number`?e:typeof e==`string`?M(e)??de():de(),getState:()=>({disabled:h()}),get constraints(){return{required:v(),min:o.min,max:o.max,step:m()}},validateValue:e=>{if(e==null||e===``)return!v();let t=typeof e==`number`?e:M(String(e));return t!==null&&Number.isFinite(t)&&D(t)&&O(t)},validate:()=>p()===null?!v():Number.isFinite(p())&&e(k)};return C.registerField(t)}});function F(e){let t=e.target;j(t.value===``?null:parseFloat(t.value))}var I=Me(),L=w(I),R=e=>{ae(e,{get id(){return y},get for(){return o.name},get label(){return o.label},get required(){return v()}})};t(L,e=>{o.label&&e(R)});var z=E(L,2),B=w(z);b(B);let V;s(z);var oe=E(z,2),se=e=>{var n=je(),r=w(n),i=e=>{var t=u();N(e=>l(t,e),[()=>d(H[`ui.number_input.value_at_least`],{min:o.min})]),g(e,t)},a=e=>{var t=u();N(e=>l(t,e),[()=>d(H[`ui.number_input.value_at_most`],{max:o.max})]),g(e,t)};t(r,e=>{o.min!==void 0&&p()!==null&&p()<o.min?e(i):o.max!==void 0&&p()!==null&&p()>o.max&&e(a,1)}),s(n),N(()=>P(n,`id`,`${o.name}-error`)),g(e,n)};t(oe,t=>{e(A)&&t(se)}),s(I),N(()=>{P(B,`id`,o.name),P(B,`aria-labelledby`,o.label?y:void 0),P(B,`name`,o.name),P(B,`placeholder`,f()),te(B,p()??``),P(B,`min`,o.min),P(B,`max`,o.max),P(B,`step`,m()),B.disabled=h(),B.required=v(),V=a(B,1,`smrt-input svelte-1pebtso`,null,V,{"smrt-mode":e(T),invalid:e(A)}),P(B,`aria-invalid`,e(A)?`true`:void 0),P(B,`aria-describedby`,e(A)?`${o.name}-error`:void 0)}),_(`input`,B,F),g(n,I),i()}v([`input`]);var Pe=c(`<button type="button"><svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="svelte-1vixtb7"><path d="M12 2a3 3 0 0 0-3 3v7a3 3 0 0 0 6 0V5a3 3 0 0 0-3-3Z" class="svelte-1vixtb7"></path><path d="M19 10v2a7 7 0 0 1-14 0v-2" class="svelte-1vixtb7"></path><line x1="12" x2="12" y1="19" y2="22" class="svelte-1vixtb7"></line></svg></button>`),Fe=c(`<div class="downloading-indicator svelte-1vixtb7"><span class="processing-spinner svelte-1vixtb7"></span> <span class="svelte-1vixtb7"> </span></div>`),Ie=c(`<div class="listening-indicator svelte-1vixtb7"><span class="listening-dot svelte-1vixtb7"></span> <span class="svelte-1vixtb7">Recording...</span></div>`),Le=c(`<div class="processing-indicator svelte-1vixtb7"><span class="processing-spinner svelte-1vixtb7"></span> <span class="svelte-1vixtb7">Processing...</span></div>`),Re=c(`<div class="error-message svelte-1vixtb7" role="alert"> </div>`),ze=c(`<div class="validation-error svelte-1vixtb7" role="alert"> </div>`),Be=c(`<div data-smrt-component="PhoneInput"><!> <div class="input-wrapper svelte-1vixtb7"><input type="tel"/> <!></div> <!> <!> <!></div>`);function Ve(n,o){let c=re();ee(o,!0);let{t:u}=ie(),d=x(o,`placeholder`,3,`(555) 555-5555`),f=x(o,`value`,15,``),p=x(o,`disabled`,3,!1),m=x(o,`required`,3,!1),h=`${c}-label`,v=ce(),T=be(),D=le(),O=S(null),A=S(!1),j=S(!1),M=S(null),I=0,L=r(()=>v.state.mode===`smrt`),R=r(()=>T.isInitializing),z=r(()=>T.downloadProgress);function V(e){if(typeof e!=`string`)return!1;if(!e)return!m();let t=e.replace(/\D/g,``);return t.length===10||t.length===11&&t[0]===`1`}let oe=r(()=>V(f())),se=r(()=>f()&&!e(oe));function U(e){f(e),o.onchange?.(f())}function W(e){let t=e.replace(/\D/g,``);return t.length===0?``:t.length<=3?`(${t}`:t.length<=6?`(${t.slice(0,3)}) ${t.slice(3)}`:t.length<=10?`(${t.slice(0,3)}) ${t.slice(3,6)}-${t.slice(6)}`:t.length===11&&t[0]===`1`?`+1 (${t.slice(1,4)}) ${t.slice(4,7)}-${t.slice(7)}`:`(${t.slice(0,3)}) ${t.slice(3,6)}-${t.slice(6,10)}`}function G(e){let t={zero:`0`,oh:`0`,one:`1`,two:`2`,to:`2`,too:`2`,three:`3`,four:`4`,for:`4`,five:`5`,six:`6`,seven:`7`,eight:`8`,nine:`9`,niner:`9`},n=e.toLowerCase().replace(/^(my phone number is|my number is|phone number|number is|call me at)\s*/i,``).replace(/\b(area code|extension|ext)\b/gi,``).trim();for(let[e,r]of Object.entries(t))n=n.replace(RegExp(`\\b${e}\\b`,`gi`),r);return n=n.replace(/\bdouble\s*(\d)/gi,`$1$1`),n=n.replace(/\btriple\s*(\d)/gi,`$1$1$1`),n.replace(/\D/g,``)}function K(e){return W(G(e))}ne(()=>{if(D){let e={name:o.name,type:`phone`,get label(){return o.label},get description(){return o.description||`Phone number`},setValue:e=>{U(K(String(e??``)))},getValue:()=>f(),prepareValue:e=>{let t=ue(e);if(t===``)return``;let n=G(t);return n.length!==10&&(n.length!==11||n[0]!==`1`)?t:W(n)||de()},getState:()=>({disabled:p()}),get constraints(){return{required:m()}},validateValue:e=>{if(typeof e!=`string`)return!1;if(e===``)return!m();let t=G(e);return t.length===10||t.length===11&&t[0]===`1`},validate:()=>V(f())};return D.registerField(e)}});async function fe(){if(!(!e(L)||p()||e(j))){F(M,null),I=Date.now(),F(A,!0);try{(!T.isReady||T.adapterType!==`whisper-wasm`)&&await T.initialize({type:`whisper-wasm`}),await T.start({continuous:!0,interimResults:!1})}catch(e){F(A,!1),F(M,e instanceof Error?e.message:`Could not start voice input`,!0),B.error(`PhoneInput: failed to start voice recording`,{field:o.name,error:e})}}}async function q(){if(!e(A))return;let t=Date.now()-I;if(F(A,!1),await T.stop(),t<500)return;let n=Date.now();for(;T.isListening&&Date.now()-n<3e3;)await new Promise(e=>setTimeout(e,100));await new Promise(e=>setTimeout(e,100));let r=T.lastResult?.trim()||``;if(!r||r.length<2)F(M,`No speech detected. Hold longer and speak clearly.`);else{F(j,!0),F(M,null);try{U(K(r))}catch(e){F(M,e instanceof Error?e.message:`Failed to process speech`,!0)}finally{F(j,!1)}}}function J(e){e.button===0&&fe()}function pe(){q()}function me(){q()}function he(e){e.preventDefault(),fe()}function ge(){q()}function _e(t){(t.key===`Enter`||t.key===` `)&&(t.preventDefault(),e(A)?q():fe())}function Y(e){let t=e.target;U(W(t.value))}var ve=Be();let X;var ye=w(ve),xe=e=>{ae(e,{get id(){return h},get for(){return o.name},get label(){return o.label},get required(){return m()}})};t(ye,e=>{o.label&&e(xe)});var Se=E(ye,2),Z=w(Se);b(Z);let Ce;C(Z,e=>F(O,e),()=>e(O));var we=E(Z,2),Q=t=>{var n=Pe();let r;N(t=>{r=a(n,1,`mic-btn svelte-1vixtb7`,null,r,{active:e(A)}),n.disabled=p(),P(n,`aria-label`,t)},[()=>u(H[`ui.phone_input.mic_aria_label`])]),_(`keydown`,n,_e),_(`mousedown`,n,J),_(`mouseup`,n,pe),y(`mouseleave`,n,me),_(`touchstart`,n,he,void 0,!0),_(`touchend`,n,ge),g(t,n)};t(we,t=>{e(L)&&t(Q)}),s(Se);var Te=E(Se,2),Ee=t=>{var n=Fe(),r=E(w(n),2),i=k(r,!0);s(n),N(e=>l(i,e),[()=>u(H[`ui.phone_input.downloading_model`],{progress:e(z)})]),g(t,n)},De=e=>{var t=Ie();g(e,t)},Oe=e=>{var t=Le();g(e,t)};t(Te,t=>{e(R)?t(Ee):e(A)?t(De,1):e(j)&&t(Oe,2)});var $=E(Te,2),ke=t=>{var n=Re(),r=k(n,!0);N(()=>{P(n,`id`,`${o.name}-stt-error`),l(r,e(M))}),g(t,n)};t($,t=>{e(M)&&t(ke)});var Ae=E($,2),je=e=>{var t=ze(),n=k(t,!0);N(e=>{P(t,`id`,`${o.name}-error`),l(n,e)},[()=>u(H[`ui.phone_input.invalid`])]),g(e,t)};t(Ae,t=>{e(se)&&t(je)}),s(ve),N(()=>{X=a(ve,1,`smrt-phone svelte-1vixtb7`,null,X,{listening:e(A)}),P(Z,`id`,o.name),P(Z,`aria-labelledby`,o.label?h:void 0),P(Z,`name`,o.name),P(Z,`placeholder`,d()),te(Z,f()),Z.disabled=p()||e(j),Z.required=m(),Ce=a(Z,1,`smrt-input svelte-1vixtb7`,null,Ce,{"smrt-mode":e(L),invalid:e(se),processing:e(j)}),P(Z,`aria-invalid`,e(se)?`true`:void 0),P(Z,`aria-describedby`,e(se)?`${o.name}-error`:e(M)?`${o.name}-stt-error`:void 0)}),_(`input`,Z,Y),_(`mousedown`,Z,function(...t){(e(L)?J:void 0)?.apply(this,t)}),_(`mouseup`,Z,function(...t){(e(L)?pe:void 0)?.apply(this,t)}),y(`mouseleave`,Z,function(...t){(e(L)?me:void 0)?.apply(this,t)}),_(`touchstart`,Z,function(...t){(e(L)?he:void 0)?.apply(this,t)},void 0,!0),_(`touchend`,Z,function(...t){(e(L)?ge:void 0)?.apply(this,t)}),g(n,ve),i()}v([`input`,`mousedown`,`mouseup`,`touchstart`,`touchend`,`keydown`]),v([`input`,`keydown`,`click`]);var He=c(`<option disabled=""> </option>`),Ue=c(`<option> </option>`),We=c(`<span class="info svelte-17ub3c7"> </span>`),Ge=c(`<div data-smrt-component="SelectInput"><!> <div class="container svelte-17ub3c7"><div class="content svelte-17ub3c7"><select class="input svelte-17ub3c7"><!><!></select></div> <div class="trailing-icon svelte-17ub3c7"><!></div> <div class="active-indicator svelte-17ub3c7"></div></div> <div class="supporting-text svelte-17ub3c7" aria-live="polite"><!></div></div>`);function Ke(o,c){let u=re();ee(c,!0);let d=x(c,`placeholder`,3,`Select an option...`),h=x(c,`value`,15,``),v=x(c,`disabled`,3,!1),b=x(c,`required`,3,!1),te=`${u}-label`,C=ce(),T=le(),D=S(!1),O=r(()=>c.options.some(e=>e.value===``)),A=r(()=>c.options.filter((e,t)=>c.options.findIndex(t=>t.value===e.value)===t)),j=r(()=>C.state.mode===`smrt`);function M(e){h(e),c.onchange?.(h())}ne(()=>{if(T){let e={name:c.name,type:`select`,get label(){return c.label},get description(){let e=c.options.map(e=>e.label).join(`, `);return c.description?`${c.description}. Options: ${e}`:`Options: ${e}`},setValue:e=>{let t=String(e??``),n=ye(t,c.options);n?M(n):c.options.some(e=>e.value===t)&&M(t)},getValue:()=>h(),prepareValue:e=>{let t=ue(e);return t.trim()===``?t:ye(t,c.options)??t},clear:()=>(M(``),!0),getState:()=>({disabled:v()}),get constraints(){return{required:b()}},get options(){return c.options.map(e=>({value:e.value,label:e.label}))},validateValue:e=>{let t=String(e??``);return t===``?!b():c.options.some(e=>e.value===t)},validate:()=>!b()||h().trim().length>0};return T.registerField(e)}});function L(e){let t=e.target;M(t.value)}var R=Ge();let z;var ie=w(R),B=e=>{ae(e,{get id(){return te},get for(){return c.name},get label(){return c.label},get required(){return b()}})};t(ie,e=>{c.label&&e(B)});var V=E(ie,2),oe=w(V),H=w(oe),U=w(H),W=e=>{var t=He(),n=k(t,!0);t.value=t.__value=``,N(()=>{I(t,!h()),l(n,d())}),g(e,t)};t(U,t=>{e(O)||t(W)});var G=E(U);f(G,17,()=>e(A),e=>e.value,(t,n)=>{var r=Ue(),i=k(r,!0),a={};N(()=>{l(i,e(n).label),a!==(a=e(n).value)&&(r.value=(r.__value=a)??``)}),g(t,r)}),s(H);var K;m(H),s(oe);var de=E(oe,2),fe=w(de);se(fe,{name:`chevron-down`,size:24}),s(de),p(2),s(V);var q=E(V,2),J=w(q),pe=e=>{var t=We(),n=k(t,!0);N(()=>l(n,c.description)),g(e,t)};t(J,t=>{c.description&&e(D)&&t(pe)}),s(q),s(R),N(()=>{z=a(R,1,`smrt-select-field svelte-17ub3c7`,null,z,{"smrt-mode":e(j),focused:e(D),disabled:v(),"has-value":!!h()}),P(H,`id`,c.name),P(H,`aria-labelledby`,c.label?te:void 0),P(H,`name`,c.name),H.disabled=v(),H.required=b(),P(H,`aria-describedby`,`${c.name}-supporting`),K!==(K=h())&&(H.value=(H.__value=K)??``,n(H,K)),P(q,`id`,`${c.name}-supporting`)}),_(`change`,H,L),y(`focus`,H,()=>F(D,!0)),y(`blur`,H,()=>F(D,!1)),g(o,R),i()}v([`change`]);var qe=c(`<button type="button"><!></button>`),Je=c(`<span class="info svelte-1wen309"> </span>`),Ye=c(`<span class="success svelte-1wen309">Recording...</span>`),Xe=c(`<span class="info svelte-1wen309">Processing...</span>`),Ze=c(`<span class="error svelte-1wen309"> </span>`),Qe=c(`<div data-smrt-component="TextareaInput"><!> <div class="container svelte-1wen309"><div class="content svelte-1wen309"><textarea class="input svelte-1wen309"></textarea></div> <!> <div class="active-indicator svelte-1wen309"></div></div> <div class="supporting-text svelte-1wen309" aria-live="polite"><!></div></div>`);function $e(n,o){let c=re();ee(o,!0);let{t:u}=ie(),d=x(o,`placeholder`,3,``),f=x(o,`value`,15,``),m=x(o,`rows`,3,4),h=x(o,`disabled`,3,!1),v=x(o,`required`,3,!1),b=x(o,`appendMode`,3,!1),T=`${c}-label`,O=ce(),A=be(),j=le(),M=S(null),I=S(!1),z=S(!1),V=S(!1),oe=``,U=S(null),W=0,G=r(()=>O.state.mode===`smrt`),K=r(()=>A.isInitializing),de=r(()=>A.downloadProgress);function fe(e){f(e),o.onchange?.(f())}ne(()=>{if(j){let e={name:o.name,type:`textarea`,get label(){return o.label},get description(){return o.description},setValue:e=>{fe(String(e??``))},getValue:()=>f(),prepareValue:e=>{let t=ue(e);return b()&&f()?`${f()}\n${t}`:t},prepareReviewedValue:ue,getState:()=>({disabled:h()}),get constraints(){return{required:v()}},validateValue:e=>!v()||String(e??``).trim().length>0,validate:()=>!v()||f().trim().length>0};return j.registerField(e)}});async function q(){if(!(!e(G)||h()||e(z))){oe=f(),F(U,null),W=Date.now(),F(I,!0);try{(!A.isReady||A.adapterType!==`whisper-wasm`)&&await A.initialize({type:`whisper-wasm`}),await A.start({continuous:!0,interimResults:!1})}catch(e){F(I,!1),F(U,e instanceof Error?e.message:`Could not start voice input`,!0),B.error(`TextareaInput: failed to start voice recording`,{field:o.name,error:e})}}}async function J(){if(!e(I))return;let t=Date.now()-W;if(F(I,!1),await A.stop(),t<500)return;let n=Date.now();for(;A.isListening&&Date.now()-n<3e3;)await new Promise(e=>setTimeout(e,100));await new Promise(e=>setTimeout(e,100));let r=A.lastResult?.trim()||``;if(!r||r.length<2)F(U,`No speech detected. Hold longer and speak clearly.`);else{F(z,!0),F(U,null);try{let e=X(r);b()&&oe?fe(`${oe}\n${e}`):fe(e)}catch(e){F(U,e instanceof Error?e.message:`Failed to process speech`,!0)}finally{F(z,!1)}}}function pe(e){e.button===0&&q()}function me(){J()}function he(){J()}function ge(e){e.preventDefault(),q()}function _e(){J()}function Y(t){(t.key===`Enter`||t.key===` `)&&(t.preventDefault(),e(I)?J():q())}function ve(e){let t=e.target;fe(t.value)}var ye=Qe();let xe;var Se=w(ye),Z=e=>{ae(e,{get id(){return T},get for(){return o.name},get label(){return o.label},get required(){return v()}})};t(Se,e=>{o.label&&e(Z)});var Ce=E(Se,2),we=w(Ce),Q=w(we);L(Q),C(Q,e=>F(M,e),()=>e(M)),s(we);var Te=E(we,2),Ee=t=>{var n=qe();let r;var i=w(n);se(i,{name:`mic`,size:20}),s(n),D(n,e=>R?.(e)),N(t=>{r=a(n,1,`mic-btn svelte-1wen309`,null,r,{active:e(I)}),n.disabled=h(),P(n,`aria-label`,t)},[()=>u(H[`ui.textarea_input.mic_aria_label`])]),_(`keydown`,n,Y),_(`mousedown`,n,e=>{e.stopPropagation(),e.button===0&&q()}),_(`mouseup`,n,me),y(`mouseleave`,n,he),_(`touchstart`,n,e=>{e.stopPropagation(),e.preventDefault(),q()},void 0,!0),_(`touchend`,n,_e),g(t,n)};t(Te,t=>{e(G)&&t(Ee)}),p(2),s(Ce);var De=E(Ce,2),Oe=w(De),$=t=>{var n=Je(),r=k(n,!0);N(e=>l(r,e),[()=>u(H[`ui.textarea_input.downloading_model`],{progress:e(de)})]),g(t,n)},ke=e=>{var t=Ye();g(e,t)},Ae=e=>{var t=Xe();g(e,t)},je=t=>{var n=Ze(),r=k(n,!0);N(()=>l(r,e(U))),g(t,n)},Me=e=>{var t=Je(),n=k(t,!0);N(()=>l(n,o.description)),g(e,t)};t(Oe,t=>{e(K)?t($):e(I)?t(ke,1):e(z)?t(Ae,2):e(U)?t(je,3):o.description&&e(V)&&t(Me,4)}),s(De),s(ye),N(()=>{xe=a(ye,1,`smrt-text-field multiline svelte-1wen309`,null,xe,{"smrt-mode":e(G),focused:e(V),disabled:h(),"has-value":!!f(),listening:e(I)}),P(Q,`id`,o.name),P(Q,`aria-labelledby`,o.label?T:void 0),P(Q,`name`,o.name),P(Q,`placeholder`,e(V)?d():``),te(Q,f()),P(Q,`rows`,m()),Q.disabled=h()||e(z),Q.required=v(),P(Q,`aria-invalid`,e(U)?`true`:void 0),P(Q,`aria-describedby`,`${o.name}-supporting`),P(De,`id`,`${o.name}-supporting`)}),_(`input`,Q,ve),y(`focus`,Q,()=>F(V,!0)),y(`blur`,Q,()=>F(V,!1)),_(`mousedown`,Q,function(...t){(e(G)?pe:void 0)?.apply(this,t)}),_(`mouseup`,Q,function(...t){(e(G)?me:void 0)?.apply(this,t)}),y(`mouseleave`,Q,function(...t){(e(G)?he:void 0)?.apply(this,t)}),_(`touchstart`,Q,function(...t){(e(G)?ge:void 0)?.apply(this,t)},void 0,!0),_(`touchend`,Q,function(...t){(e(G)?_e:void 0)?.apply(this,t)}),g(n,ye),i()}v([`input`,`mousedown`,`mouseup`,`touchstart`,`touchend`,`keydown`]);var et=c(`<button type="button"><!></button>`),tt=c(`<span class="info svelte-q632gy"> </span>`),nt=c(`<span class="success svelte-q632gy">Recording...</span>`),rt=c(`<span class="info svelte-q632gy">Processing...</span>`),it=c(`<span class="error svelte-q632gy"> </span>`),at=c(`<div data-smrt-component="TextInput"><!> <div class="container svelte-q632gy"><div class="content svelte-q632gy"><input class="input svelte-q632gy"/></div> <!> <div class="active-indicator svelte-q632gy"></div></div> <div class="supporting-text svelte-q632gy" aria-live="polite"><!></div></div>`);function ot(n,o){let c=re();ee(o,!0);let{t:u}=ie(),d=x(o,`type`,3,`text`),f=x(o,`placeholder`,3,``),m=x(o,`value`,15,``),h=x(o,`disabled`,3,!1),v=x(o,`required`,3,!1),T=x(o,`appendMode`,3,!1),O=`${c}-label`,A=ce(),j=be(),M=le(),I=S(null),L=S(!1),z=S(!1),V=S(!1),oe=``,U=S(null),W=0,G=r(()=>A.state.mode===`smrt`),K=r(()=>j.isInitializing),de=r(()=>j.downloadProgress);function fe(e){return/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(e)}let q=r(()=>d()!==`email`||!m()||fe(m())),J=r(()=>d()===`email`&&m()&&!e(q));function pe(e){m(e),o.onchange?.(m())}ne(()=>{if(M){let t={name:o.name,get type(){return d()===`email`?`email`:`text`},get label(){return o.label},get description(){return o.description},setValue:e=>{pe(String(e??``))},getValue:()=>m(),prepareValue:ue,getState:()=>({disabled:h()}),get constraints(){return{required:v()}},validateValue:e=>{let t=String(e??``);return(!v()||t.trim().length>0)&&(d()!==`email`||t.length===0||fe(t))},validate:()=>(!v()||m().trim().length>0)&&(d()!==`email`||m().length===0||e(q))};return M.registerField(t)}});async function me(){if(!(!e(G)||h()||e(z))){oe=m(),F(U,null),W=Date.now(),F(L,!0);try{(!j.isReady||j.adapterType!==`whisper-wasm`)&&await j.initialize({type:`whisper-wasm`}),await j.start({continuous:!0,interimResults:!1})}catch(e){F(L,!1),F(U,e instanceof Error?e.message:`Could not start voice input`,!0),B.error(`TextInput: failed to start voice recording`,{field:o.name,error:e})}}}async function he(){if(!e(L))return;let t=Date.now()-W;if(F(L,!1),await j.stop(),t<500)return;let n=Date.now();for(;j.isListening&&Date.now()-n<3e3;)await new Promise(e=>setTimeout(e,100));await new Promise(e=>setTimeout(e,100));let r=j.lastResult?.trim()||``;if(!r||r.length<2)F(U,`No speech detected. Hold longer and speak clearly.`);else{F(z,!0),F(U,null);try{let e=d()===`email`?ve(r):X(r);T()&&oe?pe(`${oe} ${e}`):pe(e)}catch(e){F(U,e instanceof Error?e.message:`Failed to process speech`,!0)}finally{F(z,!1)}}}function ge(e){e.button===0&&me()}function _e(){he()}function Y(){he()}function ye(e){e.preventDefault(),me()}function xe(){he()}function Se(e){e.preventDefault(),e.stopPropagation()}function Z(t){(t.key===`Enter`||t.key===` `)&&(t.preventDefault(),e(L)?he():me())}function Ce(e){let t=e.target;pe(t.value)}var we=at();let Q;var Te=w(we),Ee=e=>{ae(e,{get id(){return O},get for(){return o.name},get label(){return o.label},get required(){return v()}})};t(Te,e=>{o.label&&e(Ee)});var De=E(Te,2),Oe=w(De),$=w(Oe);b($),C($,e=>F(I,e),()=>e(I)),s(Oe);var ke=E(Oe,2),Ae=t=>{var n=et();let r;var i=w(n);se(i,{name:`mic`,size:20}),s(n),D(n,e=>R?.(e)),N(t=>{r=a(n,1,`mic-btn svelte-q632gy`,null,r,{active:e(L)}),n.disabled=h(),P(n,`aria-label`,t)},[()=>u(H[`ui.text_input.mic_aria_label`])]),_(`click`,n,Se),_(`keydown`,n,Z),_(`mousedown`,n,e=>{e.stopPropagation(),e.button===0&&me()}),_(`mouseup`,n,_e),y(`mouseleave`,n,Y),_(`touchstart`,n,e=>{e.stopPropagation(),e.preventDefault(),me()},void 0,!0),_(`touchend`,n,xe),g(t,n)};t(ke,t=>{e(G)&&t(Ae)}),p(2),s(De);var je=E(De,2),Me=w(je),Ne=t=>{var n=tt(),r=k(n,!0);N(e=>l(r,e),[()=>u(H[`ui.text_input.downloading_model`],{progress:e(de)})]),g(t,n)},Pe=e=>{var t=nt();g(e,t)},Fe=e=>{var t=rt();g(e,t)},Ie=t=>{var n=it(),r=k(n,!0);N(()=>l(r,e(U))),g(t,n)},Le=e=>{var t=it(),n=k(t,!0);N(e=>l(n,e),[()=>u(H[`ui.text_input.invalid_email`])]),g(e,t)},Re=e=>{var t=tt(),n=k(t,!0);N(()=>l(n,o.description)),g(e,t)};t(Me,t=>{e(K)?t(Ne):e(L)?t(Pe,1):e(z)?t(Fe,2):e(U)?t(Ie,3):e(J)?t(Le,4):o.description&&e(V)&&t(Re,5)}),s(je),s(we),N(()=>{Q=a(we,1,`smrt-text-field svelte-q632gy`,null,Q,{"smrt-mode":e(G),focused:e(V),invalid:e(J),disabled:h(),"has-value":!!m(),listening:e(L)}),P($,`id`,o.name),P($,`aria-labelledby`,o.label?O:void 0),P($,`name`,o.name),P($,`type`,d()),P($,`placeholder`,e(V)?f():``),te($,m()),$.disabled=h()||e(z),$.required=v(),P($,`aria-invalid`,e(J)?`true`:void 0),P($,`aria-describedby`,`${o.name}-supporting`),P(je,`id`,`${o.name}-supporting`)}),_(`input`,$,Ce),y(`focus`,$,()=>F(V,!0)),y(`blur`,$,()=>F(V,!1)),_(`mousedown`,$,function(...t){(e(G)?ge:void 0)?.apply(this,t)}),_(`mouseup`,$,function(...t){(e(G)?_e:void 0)?.apply(this,t)}),y(`mouseleave`,$,function(...t){(e(G)?Y:void 0)?.apply(this,t)}),_(`touchstart`,$,function(...t){(e(G)?ye:void 0)?.apply(this,t)},void 0,!0),_(`touchend`,$,function(...t){(e(G)?xe:void 0)?.apply(this,t)}),g(n,we),i()}v([`input`,`mousedown`,`mouseup`,`touchstart`,`touchend`,`click`,`keydown`]);function st(e){return typeof e!=`number`||!Number.isFinite(e)?null:Number((e*100).toFixed(4))}function ct(e){return e===null||!Number.isFinite(e)?null:Number((e/100).toFixed(6))}export{Ke as a,Ae as c,$e as i,De as l,ct as n,Ve as o,ot as r,Ne as s,st as t,Y as u};
@@ -1,2 +1,2 @@
1
- import{$ as e,B as t,Ct as n,Dt as r,Ft as i,G as a,H as o,L as s,Ot as c,Pt as l,U as u,ft as d,ht as f,mt as p,pt as m,st as h}from"./DG3qFFTE.js";import"./xihTtKlq.js";import{kt as g}from"./0spQrfdd.js";var _=a(`<li><code class="svelte-kxkftj"><b> </b> </code></li>`),v=a(`<li class="none svelte-kxkftj">None</li>`),y=a(`<li><code class="svelte-kxkftj"> </code></li>`),b=a(`<mark class="svelte-kxkftj">AI</mark>`),x=a(`<li><code class="svelte-kxkftj"> </code> <!></li>`),S=a(`<article class="svelte-kxkftj"><h3 class="svelte-kxkftj"> </h3> <div class="grid svelte-kxkftj"><div><h4 class="svelte-kxkftj">REST routes <span class="svelte-kxkftj"> </span></h4> <ul class="svelte-kxkftj"></ul></div> <div><h4 class="svelte-kxkftj">MCP tools <span class="svelte-kxkftj"> </span></h4> <ul class="svelte-kxkftj"></ul></div> <div><h4 class="svelte-kxkftj">CLI commands <span class="svelte-kxkftj"> </span></h4> <ul class="svelte-kxkftj"></ul></div> <div><h4 class="svelte-kxkftj">Methods <span class="svelte-kxkftj"> </span> AI-callable</h4> <ul class="svelte-kxkftj"></ul></div></div></article>`),C=a(`<p class="svelte-kxkftj">This app exposes no generated REST, MCP or CLI surface.</p>`),w=a(`<p class="lede svelte-kxkftj">For connecting other software or an AI assistant to this app. All of it is
1
+ import{$ as e,B as t,Ct as n,Dt as r,Ft as i,G as a,H as o,L as s,Ot as c,Pt as l,U as u,ft as d,ht as f,mt as p,pt as m,st as h}from"./DG3qFFTE.js";import"./xihTtKlq.js";import{kt as g}from"./CXPo72CL.js";var _=a(`<li><code class="svelte-kxkftj"><b> </b> </code></li>`),v=a(`<li class="none svelte-kxkftj">None</li>`),y=a(`<li><code class="svelte-kxkftj"> </code></li>`),b=a(`<mark class="svelte-kxkftj">AI</mark>`),x=a(`<li><code class="svelte-kxkftj"> </code> <!></li>`),S=a(`<article class="svelte-kxkftj"><h3 class="svelte-kxkftj"> </h3> <div class="grid svelte-kxkftj"><div><h4 class="svelte-kxkftj">REST routes <span class="svelte-kxkftj"> </span></h4> <ul class="svelte-kxkftj"></ul></div> <div><h4 class="svelte-kxkftj">MCP tools <span class="svelte-kxkftj"> </span></h4> <ul class="svelte-kxkftj"></ul></div> <div><h4 class="svelte-kxkftj">CLI commands <span class="svelte-kxkftj"> </span></h4> <ul class="svelte-kxkftj"></ul></div> <div><h4 class="svelte-kxkftj">Methods <span class="svelte-kxkftj"> </span> AI-callable</h4> <ul class="svelte-kxkftj"></ul></div></div></article>`),C=a(`<p class="svelte-kxkftj">This app exposes no generated REST, MCP or CLI surface.</p>`),w=a(`<p class="lede svelte-kxkftj">For connecting other software or an AI assistant to this app. All of it is
2
2
  generated by s-m-r-t from the model; none of it was written by hand.</p> <!>`,1),T=a(`<section class="panel svelte-kxkftj" aria-label="Connect other tools"><!></section>`);function E(a,E){c(E,!0);let D=n(()=>E.models.filter(e=>e.exposed));var O=T(),k=d(O);g(k,{title:`Connect other tools`,children:(n,r)=>{var a=w(),c=f(m(a),2);s(c,17,()=>e(D),e=>e.id,(n,r)=>{var a=S(),c=d(a),m=p(c,!0),g=f(c,2),C=d(g),w=d(C),T=f(d(w)),E=p(T,!0);i(w);var D=f(w,2);s(D,21,()=>e(r).rest,e=>e.method+e.path,(t,n)=>{var r=_(),a=d(r),s=d(a),c=p(s,!0),l=f(s);i(a),i(r),h(()=>{o(c,e(n).method),o(l,` /api${e(n).path??``}`)}),u(t,r)},e=>{var t=v();u(e,t)}),i(D),i(C);var O=f(C,2),k=d(O),A=f(d(k)),j=p(A,!0);i(k);var M=f(k,2);s(M,21,()=>e(r).mcp,e=>e.name,(t,n)=>{var r=y(),a=d(r),s=p(a,!0);i(r),h(()=>o(s,e(n).name)),u(t,r)},e=>{var t=v();u(e,t)}),i(M),i(O);var N=f(O,2),P=d(N),F=f(d(P)),I=p(F,!0);i(P);var L=f(P,2);s(L,21,()=>e(r).cli,e=>e.name,(t,n)=>{var r=y(),a=d(r),s=p(a,!0);i(r),h(()=>o(s,e(n).name)),u(t,r)},e=>{var t=v();u(e,t)}),i(L),i(N);var R=f(N,2),z=d(R),B=f(d(z)),V=p(B,!0);l(),i(z);var H=f(z,2);s(H,21,()=>e(r).methods,e=>e.name,(n,r)=>{var a=x(),s=d(a),c=p(s),l=f(s,2),m=e=>{var t=b();u(e,t)};t(l,t=>{e(r).aiCallable&&t(m)}),i(a),h(t=>o(c,`${e(r).name??``}(${t??``})`),[()=>e(r).parameters.join(`, `)]),u(n,a)},e=>{var t=v();u(e,t)}),i(H),i(R),i(g),i(a),h(t=>{o(m,e(r).name),o(E,e(r).rest.length),o(j,e(r).mcp.length),o(I,e(r).cli.length),o(V,t)},[()=>e(r).methods.filter(e=>e.aiCallable).length]),u(n,a)},e=>{var t=C();u(e,t)}),u(n,a)},$$slots:{default:!0}}),i(O),u(a,O),r()}export{E as t};