@protoyard/player 0.0.0-stage → 1.1.0

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 (1343) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +378 -2
  3. package/dist/app/.vite/manifest.json +9068 -0
  4. package/dist/app/_headers +4 -0
  5. package/dist/app/assets/Accept-Cwwa7wcy.js +1 -0
  6. package/dist/app/assets/ActivityFeed-CrfH1sL-.js +1 -0
  7. package/dist/app/assets/AgendaView-C5fmV7Io.js +1 -0
  8. package/dist/app/assets/AgendaView-CQIjS41D.css +1 -0
  9. package/dist/app/assets/Alert-7hPBdjVV.js +1 -0
  10. package/dist/app/assets/AlertDialog-BCpSMdNI.js +1 -0
  11. package/dist/app/assets/AlertDialog-ZQ7m9_88.css +1 -0
  12. package/dist/app/assets/AlertDialog-vQsVfmLA.js +1 -0
  13. package/dist/app/assets/AlertSurface-BCxhaD8C.js +1 -0
  14. package/dist/app/assets/AlertSurface-BDie0P7w.css +1 -0
  15. package/dist/app/assets/AnalyticsDashboard-DBekx5FK.css +1 -0
  16. package/dist/app/assets/AnalyticsDashboard-bUhk_eDj.js +1 -0
  17. package/dist/app/assets/AppNav-OAH4X39o.js +2 -0
  18. package/dist/app/assets/AppNavDrawer-AvJ-4j1I.js +1 -0
  19. package/dist/app/assets/AuditHistory-B6b_HwwN.js +1 -0
  20. package/dist/app/assets/AuthSplitHostLayout-B3Nk7vTh.js +1 -0
  21. package/dist/app/assets/Avatar-B328P5yQ.css +1 -0
  22. package/dist/app/assets/Avatar-BfdmP-J8.js +1 -0
  23. package/dist/app/assets/Avatar-XwYTvfOl.js +1 -0
  24. package/dist/app/assets/AvatarPicker-bTKfODdb.js +1 -0
  25. package/dist/app/assets/Axis--q6fWbpd.css +1 -0
  26. package/dist/app/assets/Axis-Bi34B7RT.js +1 -0
  27. package/dist/app/assets/Badge-B9mnZVCl.js +1 -0
  28. package/dist/app/assets/BigStat-Bdj3dEad.css +1 -0
  29. package/dist/app/assets/BigStat-CzOIrdvi.js +1 -0
  30. package/dist/app/assets/BlockHost-DeJ8R8qV.js +2 -0
  31. package/dist/app/assets/BlockIcon-D1BO1xRF.js +1 -0
  32. package/dist/app/assets/BlockRenderer-CaDsvtSu.js +1 -0
  33. package/dist/app/assets/BlockRenderer-_VHGXNST.js +1 -0
  34. package/dist/app/assets/BoardMoveMenu-BsqA9edS.js +1 -0
  35. package/dist/app/assets/BrowserChrome-B3AGDR4k.js +1 -0
  36. package/dist/app/assets/BrowserChrome-DpygC_0y.css +1 -0
  37. package/dist/app/assets/BrowserFrame-Cu9SJGiA.js +1 -0
  38. package/dist/app/assets/Button-5BamLyf0.css +1 -0
  39. package/dist/app/assets/Button-CYExAoxT.js +1 -0
  40. package/dist/app/assets/CalendarMoveMenu-BA3QPzDD.css +1 -0
  41. package/dist/app/assets/CalendarMoveMenu-DKK_6KCg.js +1 -0
  42. package/dist/app/assets/Card-DkeUHZOp.css +1 -0
  43. package/dist/app/assets/Card-DnZFo53x.js +1 -0
  44. package/dist/app/assets/CardDescription-Bofq-yjt.js +1 -0
  45. package/dist/app/assets/CardFooter-BrVVXKds.js +1 -0
  46. package/dist/app/assets/CardImage-zFQFoK0b.js +1 -0
  47. package/dist/app/assets/CardTitle-CEnDciCv.js +1 -0
  48. package/dist/app/assets/CellEditor-BcAzWb4V.js +1 -0
  49. package/dist/app/assets/ChartAnswer-Qqa0K1zD.js +2 -0
  50. package/dist/app/assets/ChartRoot-BXxWpPAx.css +1 -0
  51. package/dist/app/assets/ChartRoot-Bpm6tvrV.js +1 -0
  52. package/dist/app/assets/ChartSlide-BLCvki57.js +1 -0
  53. package/dist/app/assets/ChartSlide-Dvsn90GG.css +1 -0
  54. package/dist/app/assets/ChartTable-D-NrUNFX.js +1 -0
  55. package/dist/app/assets/ChatWorkspaceHost-C1etG-BC.js +1 -0
  56. package/dist/app/assets/Checkbox-TnscN5Ty.js +1 -0
  57. package/dist/app/assets/Checkout-DZanjUSm.js +3 -0
  58. package/dist/app/assets/ChromeIcon-DB-lFa_K.js +1 -0
  59. package/dist/app/assets/ChromeIcon-a26EbbrF.css +1 -0
  60. package/dist/app/assets/ChromeTooltip-B8ZTaHUe.js +1 -0
  61. package/dist/app/assets/ChromeTooltip-gGOiJThu.css +1 -0
  62. package/dist/app/assets/Close-DfWci-do.js +1 -0
  63. package/dist/app/assets/ClosingCta-CRmWJTND.css +1 -0
  64. package/dist/app/assets/ClosingCta-DQFPLYOV.js +1 -0
  65. package/dist/app/assets/Code-DUo3CdRR.js +1 -0
  66. package/dist/app/assets/CodeBlockView-B2cVVPd7.js +3 -0
  67. package/dist/app/assets/CodeBlockView-DT5p81IC.css +1 -0
  68. package/dist/app/assets/CodeEditorHost-ZMIwHVlp.js +2 -0
  69. package/dist/app/assets/CodeWithCallout-B3l16LCL.js +1 -0
  70. package/dist/app/assets/CodeWithCallout-DAwHztXq.css +1 -0
  71. package/dist/app/assets/ColorControl-EvxrBAz3.js +1 -0
  72. package/dist/app/assets/ComparisonTable-BjjmHI2w.css +1 -0
  73. package/dist/app/assets/ComparisonTable-CzLNhoIW.js +1 -0
  74. package/dist/app/assets/Consent-Bp78LjnB.js +1 -0
  75. package/dist/app/assets/Content-IdcbAwsA.js +1 -0
  76. package/dist/app/assets/CustomSlide-CSOTGmAX.js +1 -0
  77. package/dist/app/assets/CustomSlide-CvgRw7LD.css +1 -0
  78. package/dist/app/assets/DashboardGridLayout-B8IT4MIo.js +1 -0
  79. package/dist/app/assets/DashboardGridLayout-CxOqxnD1.css +1 -0
  80. package/dist/app/assets/DataBlockView-dCrBHGJ3.css +1 -0
  81. package/dist/app/assets/DataBlockView-lwCNpzKh.js +2 -0
  82. package/dist/app/assets/DataTable-7ohAfSZV.css +1 -0
  83. package/dist/app/assets/DataTable-Dn6P_bZq.js +1 -0
  84. package/dist/app/assets/DateControl-DygPjzrm.js +1 -0
  85. package/dist/app/assets/DatePicker-IIBEUEbq.js +1 -0
  86. package/dist/app/assets/DateTimeControl-BGrVT_Un.js +1 -0
  87. package/dist/app/assets/DeckDebugPanel-DesIkIFZ.js +2 -0
  88. package/dist/app/assets/DeckPrintPages-BPdBA-Hm.css +1 -0
  89. package/dist/app/assets/DeckPrintPages-ERnGVhr8.js +2 -0
  90. package/dist/app/assets/DeckSlidePreview-OUG6ZxaB.css +1 -0
  91. package/dist/app/assets/DeckSlidePreview-nxiBN1P4.js +1 -0
  92. package/dist/app/assets/DeckStudioPanel-CCYZHpuj.js +1 -0
  93. package/dist/app/assets/Description-B1DprNxQ.js +1 -0
  94. package/dist/app/assets/DesignCanvasHost-D-XVHB8o.js +1 -0
  95. package/dist/app/assets/DesignSystemStudio-p0HKwaQe.js +1 -0
  96. package/dist/app/assets/DesktopWindowFrame-CIiNXwms.js +1 -0
  97. package/dist/app/assets/DiagramFamily-C35zN39m.js +1 -0
  98. package/dist/app/assets/DiagramFamily-viFFdQze.css +1 -0
  99. package/dist/app/assets/Dialog-Cd02u7mU.js +1 -0
  100. package/dist/app/assets/DocEditor-B66K591L.css +1 -0
  101. package/dist/app/assets/DocEditor-BjHgSt1q.js +14 -0
  102. package/dist/app/assets/DocNotice-BJFPVdS8.js +1 -0
  103. package/dist/app/assets/DocsLayout-DtEm_If0.js +1 -0
  104. package/dist/app/assets/DocsLayout-Z4s5JfAy.css +1 -0
  105. package/dist/app/assets/DualSidebarLayout-DE_SGjZy.js +1 -0
  106. package/dist/app/assets/EmbedBlockView-BOp2jlgv.css +1 -0
  107. package/dist/app/assets/EmbedBlockView-CoL0Srab.js +1 -0
  108. package/dist/app/assets/EmptyState-CpNqjZhx.js +1 -0
  109. package/dist/app/assets/EntityDetail-EnPDepKl.js +2 -0
  110. package/dist/app/assets/EntityForm-P7FaYgT6.js +2 -0
  111. package/dist/app/assets/EntityForm-qCCvcBQm.css +1 -0
  112. package/dist/app/assets/EntityList-B6e0epY5.js +2 -0
  113. package/dist/app/assets/ErrorState-CGHpqSC3.js +1 -0
  114. package/dist/app/assets/EventButton-BpOkCPkf.js +1 -0
  115. package/dist/app/assets/EventButton-Cz5I0sd_.css +1 -0
  116. package/dist/app/assets/ExtensionPopupFrame-CLudOMdO.js +1 -0
  117. package/dist/app/assets/ExtensionPopupFrame-DC0cyRlp.css +1 -0
  118. package/dist/app/assets/Field-B2FE05jU.js +1 -0
  119. package/dist/app/assets/Field-Dx5hJCdk.css +1 -0
  120. package/dist/app/assets/FileControl-DqMs0DQl.js +1 -0
  121. package/dist/app/assets/FileInput-Be-fNVHQ.js +1 -0
  122. package/dist/app/assets/FileUpload-Bc23jR9k.js +1 -0
  123. package/dist/app/assets/FileUpload-CUDnO_wv.css +1 -0
  124. package/dist/app/assets/FilesPanel-BLXbgsKc.js +1 -0
  125. package/dist/app/assets/FirstRunHint-BhAIc5vw.css +1 -0
  126. package/dist/app/assets/FirstRunHint-CNmp67kD.js +1 -0
  127. package/dist/app/assets/FormBlock-Bpn45cbF.css +1 -0
  128. package/dist/app/assets/FormBlock-DQfKUV1g.js +1 -0
  129. package/dist/app/assets/FreeSlide-BgiNQp85.js +1 -0
  130. package/dist/app/assets/FreeSlide-ByTVS6jJ.css +1 -0
  131. package/dist/app/assets/FullscreenOverlay--QRf9wKW.css +1 -0
  132. package/dist/app/assets/FullscreenOverlay-B9QLcIw8.js +1 -0
  133. package/dist/app/assets/HostSlot-DFSehYHz.js +1 -0
  134. package/dist/app/assets/Icon-6iVpsw1O.js +1 -0
  135. package/dist/app/assets/Icon-B2CYXdo3.js +1 -0
  136. package/dist/app/assets/Icon-CxE9sx-Y.css +1 -0
  137. package/dist/app/assets/Icon-CzgWZ-Sj.js +1 -0
  138. package/dist/app/assets/IconButton-BfgEhgel.js +1 -0
  139. package/dist/app/assets/Image-BS9v30rK.js +1 -0
  140. package/dist/app/assets/Image-DdZtECpz.css +1 -0
  141. package/dist/app/assets/ImageFullBleed-C--JkckF.js +1 -0
  142. package/dist/app/assets/ImageFullBleed-D8fs9Sry.css +1 -0
  143. package/dist/app/assets/Inbox-DytVaI45.js +1 -0
  144. package/dist/app/assets/Input-B5IDQk3l.css +1 -0
  145. package/dist/app/assets/Input-D3Bgj1Zz.js +1 -0
  146. package/dist/app/assets/Input-DxOKBx2W.js +1 -0
  147. package/dist/app/assets/InteractiveBlockView-C4uBph_o.js +2 -0
  148. package/dist/app/assets/InteractiveBlockView-KuPs8kTL.css +1 -0
  149. package/dist/app/assets/InteractivePlot-DwIeuF55.js +2 -0
  150. package/dist/app/assets/InteractiveTable-B1YjlEBd.js +1 -0
  151. package/dist/app/assets/Kbd-DkNq1Ju_.js +1 -0
  152. package/dist/app/assets/KeyboardHelp-C9YZKYdn.js +1 -0
  153. package/dist/app/assets/KeyboardHelp-Cl-Rod-K.css +1 -0
  154. package/dist/app/assets/KpiTile-BwrBMJXp.js +1 -0
  155. package/dist/app/assets/LaserPointer-Bv4v3HkH.css +1 -0
  156. package/dist/app/assets/LaserPointer-DpjrmFeF.js +1 -0
  157. package/dist/app/assets/LayoutChrome-5HE-aeqe.js +1 -0
  158. package/dist/app/assets/LayoutImage-B3_ql3ij.css +1 -0
  159. package/dist/app/assets/LayoutImage-Ce5FsjXF.js +1 -0
  160. package/dist/app/assets/LayoutVideo-B8YtGfsu.js +2 -0
  161. package/dist/app/assets/LayoutVideo-CXAuL1g5.css +1 -0
  162. package/dist/app/assets/Legend-DBu9BLVq.js +1 -0
  163. package/dist/app/assets/Link-DHBvi9qI.js +1 -0
  164. package/dist/app/assets/LoadingState-Bn2cSCGG.js +1 -0
  165. package/dist/app/assets/LucideIcon-BLXM0Ftv.js +1 -0
  166. package/dist/app/assets/MagicLink-CyzjLDJc.js +1 -0
  167. package/dist/app/assets/MapBlockView-B3hct9rD.js +1 -0
  168. package/dist/app/assets/MapBlockView-CtKG3O98.css +1 -0
  169. package/dist/app/assets/MarketingLayout-CRBsTKd2.js +1 -0
  170. package/dist/app/assets/MarketingLayout-Cs6sUquJ.css +1 -0
  171. package/dist/app/assets/MasterDetailLayout-uo7y2cyF.js +1 -0
  172. package/dist/app/assets/MediaBlockView-BGvh4k2D.css +1 -0
  173. package/dist/app/assets/MediaBlockView-Cp33fCST.js +1 -0
  174. package/dist/app/assets/MediaCentered-BVJMLylg.js +1 -0
  175. package/dist/app/assets/MediaCentered-D2VYTdBx.css +1 -0
  176. package/dist/app/assets/MediaSide-B6d9V1JC.js +1 -0
  177. package/dist/app/assets/MediaSide-DhPjwOoY.css +1 -0
  178. package/dist/app/assets/MenuSeparator-BEBXTaSh.js +1 -0
  179. package/dist/app/assets/MenuSeparator-LrO79zGl.css +1 -0
  180. package/dist/app/assets/MessageText-j9J6kCwr.js +1 -0
  181. package/dist/app/assets/Mfa-ChJVCc4E.js +1 -0
  182. package/dist/app/assets/MobileDrawerLayout-BgWxoM1H.js +1 -0
  183. package/dist/app/assets/MobileFrame-B7JUIeWg.js +1 -0
  184. package/dist/app/assets/MobileFrame-Cv-rn28k.css +1 -0
  185. package/dist/app/assets/MobileTabsLayout-alL9j-_-.js +1 -0
  186. package/dist/app/assets/MonthView-BTvPwYX7.css +1 -0
  187. package/dist/app/assets/MonthView-BcEfT7yB.js +1 -0
  188. package/dist/app/assets/MoreMenu-BFOepBME.js +1 -0
  189. package/dist/app/assets/MoreMenu-DM-vkNTW.css +1 -0
  190. package/dist/app/assets/Notice-Dt6krYhT.js +1 -0
  191. package/dist/app/assets/Onboarding-CvS3xYao.js +1 -0
  192. package/dist/app/assets/OverlayOutlet-boEdrRbl.js +1 -0
  193. package/dist/app/assets/PhoneCode-w7cif7hk.js +1 -0
  194. package/dist/app/assets/PhoneFrame-CG6KHfRD.js +1 -0
  195. package/dist/app/assets/PhoneSignIn-CrRIOXK6.js +1 -0
  196. package/dist/app/assets/Plans-eSoge3Og.js +1 -0
  197. package/dist/app/assets/Popover-BNon6UGI.css +1 -0
  198. package/dist/app/assets/Popover-DaHAXRCb.js +1 -0
  199. package/dist/app/assets/Portal-B18y85-k.js +1 -0
  200. package/dist/app/assets/PresenterStatus-Bg_qUxt9.js +1 -0
  201. package/dist/app/assets/PresenterStatus-uRRLug-B.css +1 -0
  202. package/dist/app/assets/PresenterUpNext-CyM0w8Q3.js +1 -0
  203. package/dist/app/assets/PresenterUpNext-DBic3Xad.css +1 -0
  204. package/dist/app/assets/ProcessSteps-B6xPhUMP.css +1 -0
  205. package/dist/app/assets/ProcessSteps-DH5ezOhp.js +1 -0
  206. package/dist/app/assets/Progress-DW5KkCUF.js +1 -0
  207. package/dist/app/assets/ProgressControl-CRiDrNrR.js +1 -0
  208. package/dist/app/assets/QueryState-CBwt9G55.js +1 -0
  209. package/dist/app/assets/Quote-DcKGkLzK.css +1 -0
  210. package/dist/app/assets/Quote-jDI87v18.js +1 -0
  211. package/dist/app/assets/RadioControl-BI6X31TE.js +1 -0
  212. package/dist/app/assets/RadioGroup-w1hFC0p4.js +1 -0
  213. package/dist/app/assets/RailLayout-k-JcVNK2.js +1 -0
  214. package/dist/app/assets/RecordAvatar-BcXBXdMe.js +1 -0
  215. package/dist/app/assets/RelatedPanel-DzEJYVZz.js +1 -0
  216. package/dist/app/assets/ResetPassword-CXsGD2Bp.js +1 -0
  217. package/dist/app/assets/ReviewPanel-BrVXs-6q.js +1 -0
  218. package/dist/app/assets/ReviewPanel-enBwfHGS.css +1 -0
  219. package/dist/app/assets/ReviewSession-BK_WyaPk.css +1 -0
  220. package/dist/app/assets/ReviewSession-D4MUDdgp.js +13 -0
  221. package/dist/app/assets/RichText-By77-MWe.css +1 -0
  222. package/dist/app/assets/RichText-DOb1t7J3.js +13 -0
  223. package/dist/app/assets/SchemaForm-C290YN2K.css +1 -0
  224. package/dist/app/assets/SchemaForm-jeaBTDUH.js +2 -0
  225. package/dist/app/assets/SectionDivider-CErBkM1q.css +1 -0
  226. package/dist/app/assets/SectionDivider-CJmHce4d.js +1 -0
  227. package/dist/app/assets/Segmented-BFxRPNuU.js +1 -0
  228. package/dist/app/assets/Select-BUwDUC6S.js +1 -0
  229. package/dist/app/assets/SelectValue-Cn6C_Jw7.js +1 -0
  230. package/dist/app/assets/SelectValue-Nfj3YFHu.css +1 -0
  231. package/dist/app/assets/Settings-DUuWcvB7.js +1 -0
  232. package/dist/app/assets/SheetContent-DAy2jGR3.js +1 -0
  233. package/dist/app/assets/SidePanelFrame-BjN1rHWI.js +2 -0
  234. package/dist/app/assets/Sidebar-BQ4iR0Hi.js +1 -0
  235. package/dist/app/assets/Sidebar-iqYbDpJV.css +1 -0
  236. package/dist/app/assets/SidebarLayout-CPacSOAm.js +1 -0
  237. package/dist/app/assets/SignIn-BUGkXMb7.js +1 -0
  238. package/dist/app/assets/SignUp-CG-qmCLV.js +1 -0
  239. package/dist/app/assets/Skeleton-C81ERDQ2.js +1 -0
  240. package/dist/app/assets/SlashMenu-B6emsRi9.js +1 -0
  241. package/dist/app/assets/SlideJumpList-1Syr81sy.css +1 -0
  242. package/dist/app/assets/SlideJumpList-DZS0ibKU.js +1 -0
  243. package/dist/app/assets/SlidePlaceholder-CrrSy1kr.js +1 -0
  244. package/dist/app/assets/Slider-BrVPdB-w.js +1 -0
  245. package/dist/app/assets/Slider-D5WUpT4E.css +1 -0
  246. package/dist/app/assets/SliderControl-BXHwzc2b.js +1 -0
  247. package/dist/app/assets/SourcePicker-DW4OCnw2.js +2 -0
  248. package/dist/app/assets/Spinner-BoiMf0zZ.js +1 -0
  249. package/dist/app/assets/Spinner-RvxP_-WC.js +1 -0
  250. package/dist/app/assets/SsoButtons-BIXfJxaj.js +1 -0
  251. package/dist/app/assets/StaleWorldNotice-B7m6HyVU.js +1 -0
  252. package/dist/app/assets/Stat-CcTIg36H.js +1 -0
  253. package/dist/app/assets/StatusBar-DGtjajwn.js +1 -0
  254. package/dist/app/assets/Stepper-D_kAIMyP.js +1 -0
  255. package/dist/app/assets/Stepper-aBGVFtgT.css +1 -0
  256. package/dist/app/assets/StructureFamily-D21hf1K1.css +1 -0
  257. package/dist/app/assets/StructureFamily-FUvkWUum.js +2 -0
  258. package/dist/app/assets/Switch-CUXRVOl-.js +1 -0
  259. package/dist/app/assets/TableCaption-D1fSnEjI.js +1 -0
  260. package/dist/app/assets/TableEmpty-DUTWeqQF.js +1 -0
  261. package/dist/app/assets/TableRow-Cz2pDHwf.js +1 -0
  262. package/dist/app/assets/TableRow-IBOM0IqQ.css +1 -0
  263. package/dist/app/assets/TableToggle-CtxLIjOc.js +1 -0
  264. package/dist/app/assets/TableView-Cx6arz4U.js +1 -0
  265. package/dist/app/assets/TabletFrame-5qNzgpfv.js +1 -0
  266. package/dist/app/assets/Tabs-B8FXzu_E.css +1 -0
  267. package/dist/app/assets/Tabs-BPImSDg6.js +1 -0
  268. package/dist/app/assets/Tabs-D0A0WVnx.js +1 -0
  269. package/dist/app/assets/Tag-BdgQ_KKx.js +1 -0
  270. package/dist/app/assets/TagsControl-Dw7l3f4k.js +1 -0
  271. package/dist/app/assets/TeamAvatars-CVTW9kfV.css +1 -0
  272. package/dist/app/assets/TeamAvatars-DsDUSJQS.js +1 -0
  273. package/dist/app/assets/TextBlockView-1XjLPcMK.css +1 -0
  274. package/dist/app/assets/TextBlockView-C1uK7o3U.js +1 -0
  275. package/dist/app/assets/Textarea-DMvNCflX.js +1 -0
  276. package/dist/app/assets/ThemeStudioSection-DZGAenHY.js +2 -0
  277. package/dist/app/assets/ThreeColumnCards-B0lz1TmH.css +1 -0
  278. package/dist/app/assets/ThreeColumnCards-BifySiFG.js +1 -0
  279. package/dist/app/assets/TimeControl-l7MoDReJ.js +1 -0
  280. package/dist/app/assets/TimeField-IgTM9sZp.js +1 -0
  281. package/dist/app/assets/TimeGridView-B0jd7myg.css +1 -0
  282. package/dist/app/assets/TimeGridView-LbTfS9J4.js +1 -0
  283. package/dist/app/assets/Timeline-BfHfJrVr.js +1 -0
  284. package/dist/app/assets/Timeline-CNuUuaLH.css +1 -0
  285. package/dist/app/assets/Title-DddwkS7C.css +1 -0
  286. package/dist/app/assets/Title-WanbpRaG.js +1 -0
  287. package/dist/app/assets/TitleHero-BPP1CygL.js +1 -0
  288. package/dist/app/assets/TitleHero-BTJ96TzB.css +1 -0
  289. package/dist/app/assets/Toggle-B6jXR4VA.js +1 -0
  290. package/dist/app/assets/Toggle-DXp7a4gR.css +1 -0
  291. package/dist/app/assets/Tooltip-C7L6teXl.css +1 -0
  292. package/dist/app/assets/Tooltip-Coeua376.js +1 -0
  293. package/dist/app/assets/TopNavLayout-DO0PNmJi.js +1 -0
  294. package/dist/app/assets/Trigger-CYRsN0K_.js +2 -0
  295. package/dist/app/assets/Trigger-cdFIqc65.js +1 -0
  296. package/dist/app/assets/TwoColumnSplit-DddU-Tbh.css +1 -0
  297. package/dist/app/assets/TwoColumnSplit-bZ3w2X49.js +1 -0
  298. package/dist/app/assets/VerifyEmail-C7RJZGT5.js +1 -0
  299. package/dist/app/assets/VideoCaptions-DOnrXhl_.css +1 -0
  300. package/dist/app/assets/VideoCaptions-DYwOwAwo.js +10 -0
  301. package/dist/app/assets/Viewport-DXR4OKQY.css +1 -0
  302. package/dist/app/assets/Viewport-wpvkz4nh.js +1 -0
  303. package/dist/app/assets/WidgetHostFrame-BNU6xNfL.js +4 -0
  304. package/dist/app/assets/WizardHostLayout-DUZLfxS5.js +1 -0
  305. package/dist/app/assets/adapter-BDhPWFRd.js +1 -0
  306. package/dist/app/assets/aggregate-DqdDm8iS.js +1 -0
  307. package/dist/app/assets/amber-BSACaYsc.js +1 -0
  308. package/dist/app/assets/analytics-CB5pkvuX.js +2 -0
  309. package/dist/app/assets/analytics-myLc4sqM.js +3 -0
  310. package/dist/app/assets/anchor-DWe2XjD2.js +1 -0
  311. package/dist/app/assets/anchors-DxCA6Vjx.js +1 -0
  312. package/dist/app/assets/animate-BeveF4EZ.js +1 -0
  313. package/dist/app/assets/announcer-C9Q-PqE3.js +1 -0
  314. package/dist/app/assets/apex-rose-7rvPFrU-.js +1 -0
  315. package/dist/app/assets/api-stnFBkFG.js +1 -0
  316. package/dist/app/assets/app-B7ehy0Iy.js +2 -0
  317. package/dist/app/assets/app-BDdF2hG8.css +1 -0
  318. package/dist/app/assets/app-BIoUeLrs.js +2 -0
  319. package/dist/app/assets/app-Ba1M_fVZ.css +1 -0
  320. package/dist/app/assets/app-model-xaX4i0zU.js +1 -0
  321. package/dist/app/assets/apply-B8URYyvp.js +1 -0
  322. package/dist/app/assets/apply-CT-2ixg7.js +1 -0
  323. package/dist/app/assets/apply-CvJWBke_.js +1 -0
  324. package/dist/app/assets/aqua-foam-DNjmnsob.js +1 -0
  325. package/dist/app/assets/arc-D3OP3Fwv.js +1 -0
  326. package/dist/app/assets/arctic-console-A6v_iB0T.js +1 -0
  327. package/dist/app/assets/arrow-down-CLlVuBdb.js +1 -0
  328. package/dist/app/assets/arrow-left-ESVlQdxY.js +1 -0
  329. package/dist/app/assets/arrow-right-CGTmO3zN.js +1 -0
  330. package/dist/app/assets/artifact-shell-BMXo6w_E.js +1 -0
  331. package/dist/app/assets/ash-plain-DDC0aM7H.js +1 -0
  332. package/dist/app/assets/atlas-indigo-D6lTgj_p.js +1 -0
  333. package/dist/app/assets/attributes-ZVEMdrPN.js +1 -0
  334. package/dist/app/assets/auth-DbsvQ_nN.js +1 -0
  335. package/dist/app/assets/auth-settings-CL6uPD51.css +1 -0
  336. package/dist/app/assets/avatar-DG5usQub.js +1 -0
  337. package/dist/app/assets/avatars-CA9KfGtD.js +1 -0
  338. package/dist/app/assets/azure-grid-DEvKhXkM.js +1 -0
  339. package/dist/app/assets/backdrop-Be1Do1pV.js +1 -0
  340. package/dist/app/assets/bark-trail-FHy4_3hi.js +1 -0
  341. package/dist/app/assets/bash-KZnOBl2m.js +2 -0
  342. package/dist/app/assets/beacon-red-DCnMPSD6.js +1 -0
  343. package/dist/app/assets/bindings.svelte-CtFtf-Gl.js +1 -0
  344. package/dist/app/assets/blaze-amber-DkpJEBMV.js +1 -0
  345. package/dist/app/assets/blocks-DTgQq_iR.js +1 -0
  346. package/dist/app/assets/blush-petal-C1awwnKU.js +1 -0
  347. package/dist/app/assets/board-B12CFPyX.css +1 -0
  348. package/dist/app/assets/board-CN3K6nbq.js +5 -0
  349. package/dist/app/assets/boot-DN9ZFpxa.js +2 -0
  350. package/dist/app/assets/boot-kind-DPTe2SOs.js +2 -0
  351. package/dist/app/assets/brand-CTlkhLj0.js +1 -0
  352. package/dist/app/assets/brick-lane-DXB3yYgT.js +1 -0
  353. package/dist/app/assets/build-zoHPE5DM.js +1 -0
  354. package/dist/app/assets/builders-BPwZ8kKF.js +1 -0
  355. package/dist/app/assets/builtin-DBNCQiwB.js +1 -0
  356. package/dist/app/assets/burgundy-page-DkYjJU-j.js +1 -0
  357. package/dist/app/assets/butter-cream-ZmzoxiJI.js +1 -0
  358. package/dist/app/assets/byte-orange-D4tbgUmz.js +1 -0
  359. package/dist/app/assets/calendar-BjK1rPE1.css +1 -0
  360. package/dist/app/assets/calendar-D2s-49uQ.js +1 -0
  361. package/dist/app/assets/calendar-DX_dfOPf.js +2 -0
  362. package/dist/app/assets/calendar-DpJ7wmld.js +1 -0
  363. package/dist/app/assets/calendar-fx3DxxVm.css +1 -0
  364. package/dist/app/assets/canvas-BIrIHh0m.css +1 -0
  365. package/dist/app/assets/canvas-C15Z6wU9.js +1 -0
  366. package/dist/app/assets/canvas-Cc9cbxpy.js +1 -0
  367. package/dist/app/assets/canvas-DwntzNQA.js +1 -0
  368. package/dist/app/assets/cartesian-BGtGfDKG.css +1 -0
  369. package/dist/app/assets/cartesian-BzcRSvEP.js +2 -0
  370. package/dist/app/assets/cartesian-CjAiRKmF.js +1 -0
  371. package/dist/app/assets/cartesian-IyDqy2kK.css +1 -0
  372. package/dist/app/assets/catalog-CwrB5cVQ.js +3 -0
  373. package/dist/app/assets/cedar-cabin-CYOby6Sg.js +1 -0
  374. package/dist/app/assets/chalk-line-bMWOWnTJ.js +1 -0
  375. package/dist/app/assets/charcoal-type-CesmyxgM.js +1 -0
  376. package/dist/app/assets/chart-BbbjO4C1.js +1 -0
  377. package/dist/app/assets/charts-UaISBi-6.js +1 -0
  378. package/dist/app/assets/charts-mzplRo0A.js +1 -0
  379. package/dist/app/assets/child-BNsqGBSq.js +1 -0
  380. package/dist/app/assets/chroma-teal-iJ_CVhaZ.js +1 -0
  381. package/dist/app/assets/cinnamon-bar-D8fdLIq9.js +1 -0
  382. package/dist/app/assets/cipher-slate-DHAzG4rl.js +1 -0
  383. package/dist/app/assets/clay-river-CnAguPf1.js +1 -0
  384. package/dist/app/assets/clay-workshop-DXkoigzn.js +1 -0
  385. package/dist/app/assets/client-Lkh5rkjG.js +1 -0
  386. package/dist/app/assets/cloud-ledger-BlJnC3I0.js +1 -0
  387. package/dist/app/assets/cn-BxvfSbXx.js +1 -0
  388. package/dist/app/assets/cobalt-lab-DE2y1JGN.js +1 -0
  389. package/dist/app/assets/code-3UjlUtTj.js +1 -0
  390. package/dist/app/assets/code-CtjvTSbP.js +1 -0
  391. package/dist/app/assets/code-family-CQgEu8fF.js +2 -0
  392. package/dist/app/assets/colors-Cx4WWjfl.js +1 -0
  393. package/dist/app/assets/columns-np8Xxa5b.js +1 -0
  394. package/dist/app/assets/compact-B2lGBpNM.js +1 -0
  395. package/dist/app/assets/compact-C1b-Izb7.css +1 -0
  396. package/dist/app/assets/compact-Dv9I-p5L.js +1 -0
  397. package/dist/app/assets/compile-core-CfcBAAWu.js +1 -0
  398. package/dist/app/assets/console-violet-CK6xd-Mw.js +1 -0
  399. package/dist/app/assets/content-BzmfjOu-.css +2 -0
  400. package/dist/app/assets/context-BLdfKUNL.js +1 -0
  401. package/dist/app/assets/context-BtWxNPQO.js +1 -0
  402. package/dist/app/assets/context-CLhMaQ-R.js +1 -0
  403. package/dist/app/assets/context-CpU1iXoW.js +1 -0
  404. package/dist/app/assets/context-CsSYm_2z.js +1 -0
  405. package/dist/app/assets/context-DJ4ajOGM.js +1 -0
  406. package/dist/app/assets/context-mgza7i31.js +1 -0
  407. package/dist/app/assets/contract-DDgQdfcT.js +1 -0
  408. package/dist/app/assets/contrast-s6qwb-S-.js +1 -0
  409. package/dist/app/assets/control-props-OVgLyhvo.js +1 -0
  410. package/dist/app/assets/controls-BqZMVgrJ.js +1 -0
  411. package/dist/app/assets/conversational-B2Tdb0qH.js +2 -0
  412. package/dist/app/assets/copper-byline-DN833JFD.js +1 -0
  413. package/dist/app/assets/copper-kiln-DF7EcgeK.js +1 -0
  414. package/dist/app/assets/copy-CdPoo-W-.js +1 -0
  415. package/dist/app/assets/copy-text-XLkoKZ1X.js +1 -0
  416. package/dist/app/assets/coral-market-DR9yOAmR.js +1 -0
  417. package/dist/app/assets/core-Bmmm_BwB.js +4 -0
  418. package/dist/app/assets/core-DNACw26e.js +5 -0
  419. package/dist/app/assets/core-X3vERPZ1.js +1 -0
  420. package/dist/app/assets/crimson-spread-CQAjt3SH.js +1 -0
  421. package/dist/app/assets/crt-cyan-7TsQf6_Q.js +1 -0
  422. package/dist/app/assets/css-0ZUm4Gxu.js +1 -0
  423. package/dist/app/assets/csv-DSEjLlp3.js +4 -0
  424. package/dist/app/assets/csv-guard-B4eq8ytq.js +1 -0
  425. package/dist/app/assets/cx-BNZ52w-j.js +1 -0
  426. package/dist/app/assets/cyan-dock-BVeKfgp6.js +1 -0
  427. package/dist/app/assets/dashboard-9uzNepgS.js +2 -0
  428. package/dist/app/assets/data-D6cqNiF_.js +1 -0
  429. package/dist/app/assets/data-DVx1JsC5.js +2 -0
  430. package/dist/app/assets/date-picker-N6_jTsxm.js +1 -0
  431. package/dist/app/assets/date-range-CzmaaHwU.js +1 -0
  432. package/dist/app/assets/dates-yNpz1s0F.js +1 -0
  433. package/dist/app/assets/debug-rose-BS0PYjb3.js +1 -0
  434. package/dist/app/assets/deck-B1BRfPKS.js +1 -0
  435. package/dist/app/assets/deck-BzEIlGEY.js +1 -0
  436. package/dist/app/assets/deck-CzcaAjST.css +2 -0
  437. package/dist/app/assets/deck-DGOD2pK9.js +1 -0
  438. package/dist/app/assets/deck-interactive-DvQy5sye.js +1 -0
  439. package/dist/app/assets/definitions-BWyE3Fv_.js +1 -0
  440. package/dist/app/assets/demo.blueprint-C8vkzYKr.js +1 -0
  441. package/dist/app/assets/denim-suite-vNiDjU_o.js +1 -0
  442. package/dist/app/assets/depth-B-HdV9yB.js +1 -0
  443. package/dist/app/assets/depth-B8LlXWcm.css +1 -0
  444. package/dist/app/assets/design-CU39NsEw.js +2 -0
  445. package/dist/app/assets/design-CjV7E-Q-.js +1 -0
  446. package/dist/app/assets/design-Di0kxX1v.js +1 -0
  447. package/dist/app/assets/design-defaults-DW6_LbVN.js +1 -0
  448. package/dist/app/assets/design-system-DmXNcxZq.js +2 -0
  449. package/dist/app/assets/design-systems-DzkHB4mN.js +2 -0
  450. package/dist/app/assets/devices-B2GmUWdq.js +1 -0
  451. package/dist/app/assets/dexie-DCNEq46v.js +3 -0
  452. package/dist/app/assets/diagram-BvQUv1fk.js +2 -0
  453. package/dist/app/assets/diagram-Cu4IKopi.js +1 -0
  454. package/dist/app/assets/dir-locale-Bp4_WmZL.js +1 -0
  455. package/dist/app/assets/disclose-version-xihTtKlq.js +1 -0
  456. package/dist/app/assets/dist-4Z-F-C1l.js +16 -0
  457. package/dist/app/assets/dist-yVFZAMG4.js +16 -0
  458. package/dist/app/assets/doc-3blIf2YS.js +1 -0
  459. package/dist/app/assets/doc-COyhFBH8.js +1 -0
  460. package/dist/app/assets/doc-CSNpzE1l.css +1 -0
  461. package/dist/app/assets/doc-dtPmqGIc.js +2 -0
  462. package/dist/app/assets/doc-edits-BwF6JDix.js +1 -0
  463. package/dist/app/assets/doc-export-DPSAXN9Y.js +2 -0
  464. package/dist/app/assets/docx-DI5zUf1s.js +3 -0
  465. package/dist/app/assets/dove-note-lvW-sJWI.js +1 -0
  466. package/dist/app/assets/durations-DOq5QZxl.js +1 -0
  467. package/dist/app/assets/electric-lime-D3hc7xI6.js +1 -0
  468. package/dist/app/assets/ellipsis-Bb_OrSmF.js +1 -0
  469. package/dist/app/assets/embed-CX7-gJPL.js +1 -0
  470. package/dist/app/assets/embed-Cw6qD64z.js +2 -0
  471. package/dist/app/assets/embed-DKltvQQa.js +1 -0
  472. package/dist/app/assets/embed-x8Z8BOS3.js +1 -0
  473. package/dist/app/assets/ember-lounge-CLD3vGmo.js +1 -0
  474. package/dist/app/assets/emerald-DTYTxEu6.js +1 -0
  475. package/dist/app/assets/emerald-essay-DHL5z3v_.js +1 -0
  476. package/dist/app/assets/empty-BXesJ4-L.css +1 -0
  477. package/dist/app/assets/engine-DWsPKszG.js +1 -0
  478. package/dist/app/assets/env-guq4m6_s.js +1 -0
  479. package/dist/app/assets/envelope-D-omwZF5.js +2 -0
  480. package/dist/app/assets/environment-qEbacsJ-.js +1 -0
  481. package/dist/app/assets/esm-qyRVQ_H0.js +1 -0
  482. package/dist/app/assets/evaluate-Ctzw_e6W.js +1 -0
  483. package/dist/app/assets/events-BZIKUW6N.js +1 -0
  484. package/dist/app/assets/extent-Dsibp8xv.js +1 -0
  485. package/dist/app/assets/extras-CswrO-8Z.js +2 -0
  486. package/dist/app/assets/extras-TgPYo1oJ.css +1 -0
  487. package/dist/app/assets/family-BDAK6NX3.js +2 -0
  488. package/dist/app/assets/family-B_5VMS2O.js +2 -0
  489. package/dist/app/assets/family-B_PGS6qf.js +2 -0
  490. package/dist/app/assets/family-BwYS13Ee.js +2 -0
  491. package/dist/app/assets/family-CrTyJnox.js +2 -0
  492. package/dist/app/assets/family-XnCyNnED.js +2 -0
  493. package/dist/app/assets/fern-glade-BoQQBVwK.js +1 -0
  494. package/dist/app/assets/file-text-Raziu4cI.js +1 -0
  495. package/dist/app/assets/filename-ivwFod08.js +1 -0
  496. package/dist/app/assets/filter-BFcSp9fb.js +1 -0
  497. package/dist/app/assets/filters-BGxKX8Ca.js +1 -0
  498. package/dist/app/assets/filters-q99MILjr.css +1 -0
  499. package/dist/app/assets/first-run-BqQTFz0h.js +1 -0
  500. package/dist/app/assets/fit-BblfZ2JV.js +1 -0
  501. package/dist/app/assets/fit-width-4RmWpKte.js +1 -0
  502. package/dist/app/assets/flare-yellow-BKfO8CAR.js +1 -0
  503. package/dist/app/assets/flow-BEUk60qf.js +1 -0
  504. package/dist/app/assets/flow-fOO3pyYh.css +1 -0
  505. package/dist/app/assets/fog-studio-CnpmaWuv.js +1 -0
  506. package/dist/app/assets/fonts-CyzGCo-s.js +1 -0
  507. package/dist/app/assets/fonts-D1WlLkio.js +1 -0
  508. package/dist/app/assets/forest-floor-Dnxqb6g1.js +1 -0
  509. package/dist/app/assets/forest-op-ed-DqCOXDYz.js +1 -0
  510. package/dist/app/assets/forge-lime-OFrUbI9j.js +1 -0
  511. package/dist/app/assets/form-bridge-BFV-h8qv.js +1 -0
  512. package/dist/app/assets/form-services-erliHCBc.js +2 -0
  513. package/dist/app/assets/format-CqE6be1W.js +1 -0
  514. package/dist/app/assets/format-Dx3CqdSJ.js +1 -0
  515. package/dist/app/assets/free-prefetch-DhqfcoZr.js +1 -0
  516. package/dist/app/assets/from-texuli-F7aPl70I.js +1 -0
  517. package/dist/app/assets/frost-panel-DpMOEQuj.js +1 -0
  518. package/dist/app/assets/generate-world-core-f4yY0k-I.js +2 -0
  519. package/dist/app/assets/generate.worker-Co6WrZj8.js +1 -0
  520. package/dist/app/assets/generator-B1rj3uJL.js +1 -0
  521. package/dist/app/assets/generator-BvCWWAUx.js +1 -0
  522. package/dist/app/assets/generator-CJFX3jms.js +114 -0
  523. package/dist/app/assets/generator-version-CdlsXqvR.js +1 -0
  524. package/dist/app/assets/geo-B1z_l1iU.js +1 -0
  525. package/dist/app/assets/geo-DM9iJR25.css +1 -0
  526. package/dist/app/assets/gesture-RUgWcPhG.js +1 -0
  527. package/dist/app/assets/glacier-bay-ItPQs3g9.js +1 -0
  528. package/dist/app/assets/gold-serif-9JJwgGmi.js +1 -0
  529. package/dist/app/assets/graphite-desk-Dav8DSip.js +1 -0
  530. package/dist/app/assets/grid-BO23S3Mu.css +1 -0
  531. package/dist/app/assets/grid-Cdz9gsoH.js +1 -0
  532. package/dist/app/assets/grid-editing-DFAO-r3z.css +1 -0
  533. package/dist/app/assets/handlers-ByGe01Fz.js +1 -0
  534. package/dist/app/assets/handlers-CkNHDF5y.js +1 -0
  535. package/dist/app/assets/hash-DwRSCZN9.js +1 -0
  536. package/dist/app/assets/hash-router.svelte-LQpr7yof.js +1 -0
  537. package/dist/app/assets/hc-amber-black-B3HHCJXu.js +1 -0
  538. package/dist/app/assets/hc-black-yellow-DQVjFciE.js +1 -0
  539. package/dist/app/assets/hc-blue-white-CXE4sdPO.js +1 -0
  540. package/dist/app/assets/hc-cyan-black-Bvpic4Gm.js +1 -0
  541. package/dist/app/assets/hc-green-black-CaylabS3.js +1 -0
  542. package/dist/app/assets/hc-ink-paper-DaIkq3N9.js +1 -0
  543. package/dist/app/assets/hc-lime-black-CEEaqO8C.js +1 -0
  544. package/dist/app/assets/hc-navy-yellow-c3FWHdSa.js +1 -0
  545. package/dist/app/assets/hc-orange-black-CjFhZ4ah.js +1 -0
  546. package/dist/app/assets/hc-paper-ink-DfJu-vfc.js +1 -0
  547. package/dist/app/assets/hc-rose-black-CS2IUqTa.js +1 -0
  548. package/dist/app/assets/hc-teal-black-kEmvWQ-B.js +1 -0
  549. package/dist/app/assets/hc-violet-black-BxxFmQYv.js +1 -0
  550. package/dist/app/assets/hc-white-blue-D8eiAdVW.js +1 -0
  551. package/dist/app/assets/heap-pink-C-tTNlUA.js +1 -0
  552. package/dist/app/assets/helpers-Dz5ykqCN.js +1 -0
  553. package/dist/app/assets/histogram-BT6t9qji.css +1 -0
  554. package/dist/app/assets/histogram-Dm6hbvFl.js +1 -0
  555. package/dist/app/assets/honey-desk-Biy8CO_z.js +1 -0
  556. package/dist/app/assets/horizon-cyan-CAPaDPAF.js +1 -0
  557. package/dist/app/assets/host-BCsVoLLF.js +1 -0
  558. package/dist/app/assets/host-BGSJ7oX2.js +1 -0
  559. package/dist/app/assets/host-CTMGjDes.js +1 -0
  560. package/dist/app/assets/host-VGPZpGL6.css +1 -0
  561. package/dist/app/assets/hot-fuchsia-9nsrLLfH.js +1 -0
  562. package/dist/app/assets/html-CMNXYbB0.js +1 -0
  563. package/dist/app/assets/http-DMBu8uO0.js +1 -0
  564. package/dist/app/assets/i18n-C1FxoBbJ.js +1 -0
  565. package/dist/app/assets/ice-signal-BYNVRzxA.js +1 -0
  566. package/dist/app/assets/identity-BALMSfWg.js +1 -0
  567. package/dist/app/assets/ids-BFXF9Z_4.js +1 -0
  568. package/dist/app/assets/import-D4irzKhk.js +1 -0
  569. package/dist/app/assets/inbox-DHWQ6nEV.js +1 -0
  570. package/dist/app/assets/inbox-DqLTuwwq.js +1 -0
  571. package/dist/app/assets/index-BzeBadoN.css +2 -0
  572. package/dist/app/assets/index-Cq6TefQR.js +2 -0
  573. package/dist/app/assets/index-client-BOGsOwg5.js +2 -0
  574. package/dist/app/assets/index-client-x7oDvRVJ.js +1 -0
  575. package/dist/app/assets/indigo-harbor-CukFAP4N.js +1 -0
  576. package/dist/app/assets/indigo-review-CrjkEt5d.js +1 -0
  577. package/dist/app/assets/inert-CX0JFWuY.js +1 -0
  578. package/dist/app/assets/ink-folio-5IYpY7BF.js +1 -0
  579. package/dist/app/assets/interaction-D9RsjR3d.css +1 -0
  580. package/dist/app/assets/interactive-B7CrCosy.css +1 -0
  581. package/dist/app/assets/interactive-DQrgNUih.js +7 -0
  582. package/dist/app/assets/interactive-UHxR0Aj1.js +1 -0
  583. package/dist/app/assets/invitations-u_Bd2_8r.js +1 -0
  584. package/dist/app/assets/iron-wire-BHsuMYq8.js +1 -0
  585. package/dist/app/assets/ivory-press-Dj-2SPbS.js +1 -0
  586. package/dist/app/assets/javascript-CCI0EWvj.js +1 -0
  587. package/dist/app/assets/json-bL97VrYM.js +1 -0
  588. package/dist/app/assets/kernel-teal-BOkCWD-A.js +1 -0
  589. package/dist/app/assets/keys-P79j73dU.js +1 -0
  590. package/dist/app/assets/kind-boot-CvPxMUUS.js +2 -0
  591. package/dist/app/assets/kinds-DRBJyTc7.js +1 -0
  592. package/dist/app/assets/laser-violet-CVybDQx3.js +1 -0
  593. package/dist/app/assets/lavender-room-nrpj1UbY.js +1 -0
  594. package/dist/app/assets/layout-D9RK8lq3.js +1 -0
  595. package/dist/app/assets/lazy-B6nhhbj_.js +1 -0
  596. package/dist/app/assets/lazy-list-motion-8Yn4B5SH.js +2 -0
  597. package/dist/app/assets/leaf-canopy-DyJbL1z6.js +1 -0
  598. package/dist/app/assets/ledger-teal-Ds1nPGV2.js +1 -0
  599. package/dist/app/assets/legacy-BUWNFmiS.js +1 -0
  600. package/dist/app/assets/lemon-air-CMViSloH.js +1 -0
  601. package/dist/app/assets/library-X49Tko4M.js +1 -0
  602. package/dist/app/assets/library-expand-BpgXbQrz.js +2 -0
  603. package/dist/app/assets/lilac-mist-B-pwve9X.js +1 -0
  604. package/dist/app/assets/limits-BgH0UjBK.js +1 -0
  605. package/dist/app/assets/line-spec-CohEnjEp.js +1 -0
  606. package/dist/app/assets/links-DmmwIr6L.js +1 -0
  607. package/dist/app/assets/live-reload-CO9BzYNv.js +1 -0
  608. package/dist/app/assets/loaders-Bcj89mSn.js +1 -0
  609. package/dist/app/assets/loam-field-C1q4MmF_.js +1 -0
  610. package/dist/app/assets/local-B65mbeuY.js +1 -0
  611. package/dist/app/assets/lock-Cj8g2CPo.js +1 -0
  612. package/dist/app/assets/mail-B4gN9oWI.js +1 -0
  613. package/dist/app/assets/manifest-0Q1tYlhS.js +1 -0
  614. package/dist/app/assets/map-3ILfjCWd.js +2 -0
  615. package/dist/app/assets/map-BB2XSw-y.js +2 -0
  616. package/dist/app/assets/map-CWyqmMKH.js +1 -0
  617. package/dist/app/assets/map-D0MMMgbF.js +1 -0
  618. package/dist/app/assets/map-DUYCiE7G.css +1 -0
  619. package/dist/app/assets/marine-ops-BahDPKWB.js +1 -0
  620. package/dist/app/assets/markdown-D4NHC39u.js +37 -0
  621. package/dist/app/assets/markdown-DPZV6n9H.js +9 -0
  622. package/dist/app/assets/markup-DPhOtZg7.js +1 -0
  623. package/dist/app/assets/maroon-hall-wz6mmW1X.js +1 -0
  624. package/dist/app/assets/matrix-Czbbtrbd.css +1 -0
  625. package/dist/app/assets/matrix-DDOYNYj9.js +3 -0
  626. package/dist/app/assets/matrix-green-C4R1I12F.js +1 -0
  627. package/dist/app/assets/media-8dNZKNsx.js +1 -0
  628. package/dist/app/assets/media-ChFaDYF5.js +1 -0
  629. package/dist/app/assets/media-CzHCpYar.js +1 -0
  630. package/dist/app/assets/media-DYb1exX4.js +1 -0
  631. package/dist/app/assets/media-family-D1T4Oizj.js +1 -0
  632. package/dist/app/assets/menus-1-mWffKr.js +1 -0
  633. package/dist/app/assets/message-square-x7OYMgev.js +1 -0
  634. package/dist/app/assets/messages-3lN2Kn4z.js +1 -0
  635. package/dist/app/assets/messages-B7u5Jh8M.js +1 -0
  636. package/dist/app/assets/messages-BQTlK_mM.js +1 -0
  637. package/dist/app/assets/messages-BdrxZBiS.js +1 -0
  638. package/dist/app/assets/metadata-BpPlGhv5.js +1 -0
  639. package/dist/app/assets/mfa-Ch_BMU5H.js +1 -0
  640. package/dist/app/assets/migrate-MC61YhKH.js +1 -0
  641. package/dist/app/assets/migrate-chunk-wtWFyG75.js +1 -0
  642. package/dist/app/assets/migrations-1f7gzI99.js +1 -0
  643. package/dist/app/assets/min-max-D9wTXnDJ.js +1 -0
  644. package/dist/app/assets/mint-breeze-sKiqpNPB.js +1 -0
  645. package/dist/app/assets/mist-panel-Up7IvgtE.js +1 -0
  646. package/dist/app/assets/modal-features-DIO0C55l.js +1 -0
  647. package/dist/app/assets/model-Be4ObL07.js +1 -0
  648. package/dist/app/assets/model-BwaEiJpp.js +1 -0
  649. package/dist/app/assets/model-CmkZtpEH.css +1 -0
  650. package/dist/app/assets/model-D1cQTAPI.js +1 -0
  651. package/dist/app/assets/model-DfCj0GmH.js +1 -0
  652. package/dist/app/assets/model-DzyBMwio.js +1 -0
  653. package/dist/app/assets/model-muSt3KQl.css +1 -0
  654. package/dist/app/assets/models-CEEgF0ul.js +1 -0
  655. package/dist/app/assets/modifiers-dKloufht.js +1 -0
  656. package/dist/app/assets/money-BNXN8K1Z.js +1 -0
  657. package/dist/app/assets/monochrome-BkrxgxEy.js +1 -0
  658. package/dist/app/assets/moss-path-DGziirQ2.js +1 -0
  659. package/dist/app/assets/motion-BHsSl-4E.js +1 -0
  660. package/dist/app/assets/motion-C03qaSuL.js +1 -0
  661. package/dist/app/assets/motion-L4GdCnBp.js +1 -0
  662. package/dist/app/assets/motion-capture-DdoMzbzW.js +2 -0
  663. package/dist/app/assets/motion-hold-Ck8JB-jY.js +1 -0
  664. package/dist/app/assets/mount-B54S61Ta.js +2 -0
  665. package/dist/app/assets/names-_PDy7Bq8.js +1 -0
  666. package/dist/app/assets/nav-xyVo3Dhy.js +1 -0
  667. package/dist/app/assets/navigation-CKFsulut.js +1 -0
  668. package/dist/app/assets/navy-bridge-BRtgRfvI.js +1 -0
  669. package/dist/app/assets/navy-column-doHezJ_z.js +1 -0
  670. package/dist/app/assets/neon-magenta-D4oUS0l1.js +1 -0
  671. package/dist/app/assets/nested-main-jYQPb9H2.js +1 -0
  672. package/dist/app/assets/nexus-pink-9h6-k-7P.js +1 -0
  673. package/dist/app/assets/no-flash-Dj4XzHOU.js +1 -0
  674. package/dist/app/assets/northstar-blue-DzqF_y-a.js +1 -0
  675. package/dist/app/assets/notifications-8JaiuubQ.js +1 -0
  676. package/dist/app/assets/oauth-CmTD9LUy.js +1 -0
  677. package/dist/app/assets/ocean-De6WGsd9.js +1 -0
  678. package/dist/app/assets/ochre-field-BqEyoLbX.js +1 -0
  679. package/dist/app/assets/oklch-DhPyiYB2.js +1 -0
  680. package/dist/app/assets/olive-grove-Cp0VFQ2S.js +1 -0
  681. package/dist/app/assets/orbit-orange-Cc95GpUx.js +1 -0
  682. package/dist/app/assets/orchid-note-D1I5IuoK.js +1 -0
  683. package/dist/app/assets/org-access-D_6JvvNN.js +1 -0
  684. package/dist/app/assets/pack-Cfr5vWx8.css +1 -0
  685. package/dist/app/assets/pack-beqgWGKz.js +1 -0
  686. package/dist/app/assets/page-AjDft1OD.js +1 -0
  687. package/dist/app/assets/page-C2uyTZnk.css +2 -0
  688. package/dist/app/assets/page-DUH2ASc0.css +1 -0
  689. package/dist/app/assets/page-N-0kku8e.js +3 -0
  690. package/dist/app/assets/page-YAQf_3ei.js +1 -0
  691. package/dist/app/assets/pages-CnVvai3k.js +1 -0
  692. package/dist/app/assets/paint-DTnILvSK.js +2 -0
  693. package/dist/app/assets/palette-D3qxDLiu.js +1 -0
  694. package/dist/app/assets/palette-DU0H4nZe.js +1 -0
  695. package/dist/app/assets/panel-state.svelte-C2lUNfn2.js +1 -0
  696. package/dist/app/assets/parse-B7SUs8-I.js +1 -0
  697. package/dist/app/assets/parse-BD8wgjWR.js +1 -0
  698. package/dist/app/assets/parse-family-DwIdkDBQ.js +1 -0
  699. package/dist/app/assets/parse-mWm0ww2Y.js +1 -0
  700. package/dist/app/assets/part-whole-ANkXTHe7.css +1 -0
  701. package/dist/app/assets/part-whole-AxLzbEP6.js +1 -0
  702. package/dist/app/assets/part-whole-CqtzIrDq.js +1 -0
  703. package/dist/app/assets/part-whole-OqVs8SJS.css +1 -0
  704. package/dist/app/assets/pdf-DTD4ZFZG.js +11 -0
  705. package/dist/app/assets/peach-foam-nsXLznbT.js +1 -0
  706. package/dist/app/assets/peach-studio-C5wX85NC.js +1 -0
  707. package/dist/app/assets/pewter-grid-wI4QcPMd.js +1 -0
  708. package/dist/app/assets/phone-Kw6S6yud.js +1 -0
  709. package/dist/app/assets/phosphor-amber-DDel8BqJ.js +1 -0
  710. package/dist/app/assets/pick-BqbZUEL6.js +1 -0
  711. package/dist/app/assets/pine-ridge-uilBHo5-.js +1 -0
  712. package/dist/app/assets/pipe-slate-D-H7swYU.js +1 -0
  713. package/dist/app/assets/pistachio-tile-CjiejIrq.js +1 -0
  714. package/dist/app/assets/plasma-pink-CBLl0t7i.js +1 -0
  715. package/dist/app/assets/plum-chapter-BmA1UD4I.js +1 -0
  716. package/dist/app/assets/polar-dash-B1qzbMkX.js +1 -0
  717. package/dist/app/assets/policy-DzdNmXdr.js +1 -0
  718. package/dist/app/assets/popup-DjQbNwaG.css +1 -0
  719. package/dist/app/assets/popup-XAoQf3yX.js +1 -0
  720. package/dist/app/assets/port-meridian-DlsIsyfe.js +1 -0
  721. package/dist/app/assets/portal-scope-DVg3DZrI.js +1 -0
  722. package/dist/app/assets/position-floating-DVYNUqB9.js +1 -0
  723. package/dist/app/assets/powder-blue-BaOLGO-R.js +1 -0
  724. package/dist/app/assets/pptx-v2-CfMQMOWr.js +1 -0
  725. package/dist/app/assets/preload-helper-CRzLMJPS.js +1 -0
  726. package/dist/app/assets/presence-zf-tyTu4.js +1 -0
  727. package/dist/app/assets/presentation-D-6oDXkX.js +1 -0
  728. package/dist/app/assets/presenter-Df4KfiDD.js +1 -0
  729. package/dist/app/assets/presets-yYeapXmM.js +1 -0
  730. package/dist/app/assets/prime-amber-6-qXBjQo.js +1 -0
  731. package/dist/app/assets/primitives-C9dJjR2F.js +1 -0
  732. package/dist/app/assets/print-paint-BInhmGTw.js +1 -0
  733. package/dist/app/assets/prompt-blue-kUotakIj.js +1 -0
  734. package/dist/app/assets/prototype-BEkp3Df8.js +1 -0
  735. package/dist/app/assets/pulse-orange-CvpfS6f_.js +1 -0
  736. package/dist/app/assets/pulse-violet-BqGVSj7g.js +1 -0
  737. package/dist/app/assets/python-CllnL83l.js +1 -0
  738. package/dist/app/assets/quartz-mute-mGF9j7GA.js +1 -0
  739. package/dist/app/assets/radio-group-DGPBxyW6.js +1 -0
  740. package/dist/app/assets/random--LplQdQC.js +1 -0
  741. package/dist/app/assets/range-Dhwl92-a.js +1 -0
  742. package/dist/app/assets/records-uXFbdI0w.js +1 -0
  743. package/dist/app/assets/ref-oE2opvHT.js +1 -0
  744. package/dist/app/assets/refresh-cw-zx0DS0qE.js +1 -0
  745. package/dist/app/assets/registry-BZiqneBm.js +2 -0
  746. package/dist/app/assets/registry-C4R3jj3j.js +2 -0
  747. package/dist/app/assets/registry-DiNy1R7M.js +2 -0
  748. package/dist/app/assets/registry-exXUF-5L.js +2 -0
  749. package/dist/app/assets/renderer-deck-DkVnQ4xX.js +2 -0
  750. package/dist/app/assets/renderer-doc-BFROgm2K.js +2 -0
  751. package/dist/app/assets/renderer-page-CaVkgQn_.js +2 -0
  752. package/dist/app/assets/renderers-DjsTiK4_.js +1 -0
  753. package/dist/app/assets/resolve-BGfaV2Mp.js +1 -0
  754. package/dist/app/assets/resolve-CED007Y_.js +1 -0
  755. package/dist/app/assets/resolve-DPWba9Mv.js +1 -0
  756. package/dist/app/assets/review-BYpI0k9p.js +1 -0
  757. package/dist/app/assets/rocket-red-Bn6gOzMm.js +1 -0
  758. package/dist/app/assets/rolldown-runtime-XKyaHtl9.js +1 -0
  759. package/dist/app/assets/root-red-CCCxlc4l.js +1 -0
  760. package/dist/app/assets/rose-D3WOkFis.js +1 -0
  761. package/dist/app/assets/rosewater-desk-DFvWOCXU.js +1 -0
  762. package/dist/app/assets/round-ySvX3_gz.js +1 -0
  763. package/dist/app/assets/roving-CztmB2zQ.js +1 -0
  764. package/dist/app/assets/ruled-BaNeLwP3.css +1 -0
  765. package/dist/app/assets/run-kind-B2WZjgm4.js +2 -0
  766. package/dist/app/assets/runtime-A0jTJCh8.js +1 -0
  767. package/dist/app/assets/runtime-EwbZURIF.js +1 -0
  768. package/dist/app/assets/rust-archive-CDPNIudx.js +1 -0
  769. package/dist/app/assets/saas-DaFcHIjZ.js +2 -0
  770. package/dist/app/assets/safe-href-Ca6kZWby.js +1 -0
  771. package/dist/app/assets/safe-image-src-DQWk9Hmw.js +1 -0
  772. package/dist/app/assets/safe-image-srcset-CV9HT60O.js +1 -0
  773. package/dist/app/assets/safe-media-src-R00i3PMn.js +1 -0
  774. package/dist/app/assets/safety-D6ZEk3Nu.js +2 -0
  775. package/dist/app/assets/saffron-stall-30TT6Xsy.js +1 -0
  776. package/dist/app/assets/sage-veil-BvumFO-4.js +1 -0
  777. package/dist/app/assets/sandstone-wall-DRdLPNb8.js +1 -0
  778. package/dist/app/assets/scenario-DfCy7uDa.js +1 -0
  779. package/dist/app/assets/schema-B4oYXjN0.js +1 -0
  780. package/dist/app/assets/schema-BCkhdl2K.js +1 -0
  781. package/dist/app/assets/schema-BFedOb5n.js +1 -0
  782. package/dist/app/assets/schema-BRYG8Msr.js +1 -0
  783. package/dist/app/assets/schema-D3SaYfNO.js +1 -0
  784. package/dist/app/assets/schema-DKYwyX0Q.js +1 -0
  785. package/dist/app/assets/schema-DNUzj-FZ.js +1 -0
  786. package/dist/app/assets/schema-Mk2CqAZk.js +1 -0
  787. package/dist/app/assets/schema-form-BwNSJCDz.js +1 -0
  788. package/dist/app/assets/schema-xXY7gBvH.js +1 -0
  789. package/dist/app/assets/schemas-Cd-wWAs4.js +55 -0
  790. package/dist/app/assets/scroll-lock-nMA4N7QX.js +1 -0
  791. package/dist/app/assets/seam-BuX-L7O-.js +2 -0
  792. package/dist/app/assets/seed-C9w8QDA_.js +1 -0
  793. package/dist/app/assets/select-DDJqBLM4.js +1 -0
  794. package/dist/app/assets/semantic-BZOGW1yM.js +1 -0
  795. package/dist/app/assets/sepia-margin-D_rRa0SV.js +1 -0
  796. package/dist/app/assets/services-B-NMB4En.js +1 -0
  797. package/dist/app/assets/services-DDXopNe8.js +1 -0
  798. package/dist/app/assets/session-Qh0_5nJW.js +1 -0
  799. package/dist/app/assets/settings-CZ7Ckx-g.js +1 -0
  800. package/dist/app/assets/share-2-C2TxFOjz.js +1 -0
  801. package/dist/app/assets/share-4ZDhjJFD.js +1 -0
  802. package/dist/app/assets/shared-A0Sab6lK.js +1 -0
  803. package/dist/app/assets/shared-BaZKMJeO.js +1 -0
  804. package/dist/app/assets/shared-CCIZQSIr.js +1 -0
  805. package/dist/app/assets/shared-DjyRof-V.js +1 -0
  806. package/dist/app/assets/sheet-6sPgzZ6r.js +1 -0
  807. package/dist/app/assets/sheet-CyLyPMjt.js +15 -0
  808. package/dist/app/assets/sheet-FlI38DCB.css +1 -0
  809. package/dist/app/assets/sheet-y5v1hHge.css +1 -0
  810. package/dist/app/assets/shell-lime-BZD_mkY4.js +1 -0
  811. package/dist/app/assets/signal-cyan-B8bCz3Zk.js +1 -0
  812. package/dist/app/assets/silver-rail-gc5O-YFl.js +1 -0
  813. package/dist/app/assets/sky-soft-V0Sqf28f.js +1 -0
  814. package/dist/app/assets/skyline-app-CT9-3-aR.js +1 -0
  815. package/dist/app/assets/slash-C9_sqsLT.js +2 -0
  816. package/dist/app/assets/slate-board-Ao5Q8zQ3.js +1 -0
  817. package/dist/app/assets/slate-masthead-ClFWhpEr.js +1 -0
  818. package/dist/app/assets/slots-DCt2_WmY.js +1 -0
  819. package/dist/app/assets/smoke-frame-DCw2Y7CE.js +1 -0
  820. package/dist/app/assets/soil-brown-CeZMoPYy.js +1 -0
  821. package/dist/app/assets/spark-blue-CMmmPe9e.js +1 -0
  822. package/dist/app/assets/sparkline-lite-BRCTxuP1.js +1 -0
  823. package/dist/app/assets/sparkline-lite-D0vAJO6h.css +1 -0
  824. package/dist/app/assets/sql-aFQXr0OI.js +1 -0
  825. package/dist/app/assets/src-B3zSoEr2.js +2 -0
  826. package/dist/app/assets/src-BFXdMRyG.css +1 -0
  827. package/dist/app/assets/src-Bpgs1rH6.js +1 -0
  828. package/dist/app/assets/src-C1fW89IZ.js +1 -0
  829. package/dist/app/assets/src-CQQcUQZN.js +1 -0
  830. package/dist/app/assets/src-D0pvR3Pn.js +1 -0
  831. package/dist/app/assets/src-DthoX0U1.js +4 -0
  832. package/dist/app/assets/src-E7_MqRCx.js +2 -0
  833. package/dist/app/assets/src-fg_sJxDE.css +1 -0
  834. package/dist/app/assets/stack-yellow-C_8EYxb0.js +1 -0
  835. package/dist/app/assets/stat-DClndHHt.css +1 -0
  836. package/dist/app/assets/stat-DITCupas.js +1 -0
  837. package/dist/app/assets/state-Di2Pzrl0.js +1 -0
  838. package/dist/app/assets/steel-card-D_sikLET.js +1 -0
  839. package/dist/app/assets/steps-BKE6MxvE.js +1 -0
  840. package/dist/app/assets/steps-CzwQF2X9.css +1 -0
  841. package/dist/app/assets/steps-r0h4TUR5.js +1 -0
  842. package/dist/app/assets/storage-BP4N_Kde.js +4 -0
  843. package/dist/app/assets/storage-Bxp2oaxI.js +1 -0
  844. package/dist/app/assets/storage-D0KrPAuS.js +1 -0
  845. package/dist/app/assets/storage-Dysq-9Vj.css +1 -0
  846. package/dist/app/assets/structure-Bxx8Z738.js +2 -0
  847. package/dist/app/assets/structure-CV2XMg1i.js +1 -0
  848. package/dist/app/assets/structure-DOnYuZyy.js +1 -0
  849. package/dist/app/assets/studio-BpSjJ4sH.js +2 -0
  850. package/dist/app/assets/style-DEgj0nDO.js +2 -0
  851. package/dist/app/assets/style-DUWXOzM3.js +2 -0
  852. package/dist/app/assets/style-presets-CzynjwRw.js +1 -0
  853. package/dist/app/assets/style-presets-NvFQjCjA.js +1 -0
  854. package/dist/app/assets/summit-green-CVMfipPc.js +1 -0
  855. package/dist/app/assets/sunset-pier-BefTZXzl.js +1 -0
  856. package/dist/app/assets/tags-color-C3EKP-d5.css +1 -0
  857. package/dist/app/assets/teal-current-DkXZ0vcN.js +1 -0
  858. package/dist/app/assets/terracotta-hearth-CQxakqN9.js +1 -0
  859. package/dist/app/assets/text-DG6IKpbn.js +5 -0
  860. package/dist/app/assets/text-Wb8u2Uyt.js +1 -0
  861. package/dist/app/assets/text-YMPMGPMj.js +1 -0
  862. package/dist/app/assets/text-family-C-XJGuET.js +1 -0
  863. package/dist/app/assets/texuli-27exlwkX.js +1 -0
  864. package/dist/app/assets/texuli-DB0v-fcn.js +1 -0
  865. package/dist/app/assets/texuli-document-D3sLYHof.js +3 -0
  866. package/dist/app/assets/theme-B8Wr-JbW.js +1 -0
  867. package/dist/app/assets/theme-CC-SlXOF.js +1 -0
  868. package/dist/app/assets/theme-gO6KESO1.js +1 -0
  869. package/dist/app/assets/thumbnails-BPHPAv1P.js +1 -0
  870. package/dist/app/assets/thumbs-up-DlPgXRcT.js +1 -0
  871. package/dist/app/assets/timeline-BbxkFqUC.js +1 -0
  872. package/dist/app/assets/timeline-C9WiHoJO.css +1 -0
  873. package/dist/app/assets/times-BwGcelwK.js +1 -0
  874. package/dist/app/assets/toast-store-DLJO-Udw.js +1 -0
  875. package/dist/app/assets/tokenizer-BQW3V3DA.js +2 -0
  876. package/dist/app/assets/tooltip-CRWPut-S.js +1 -0
  877. package/dist/app/assets/trace-indigo-hZ1ZxHXP.js +1 -0
  878. package/dist/app/assets/trust-DZxM74pz.js +1 -0
  879. package/dist/app/assets/typeahead-BP48qCAc.js +1 -0
  880. package/dist/app/assets/types-B0IEHQCD.js +1 -0
  881. package/dist/app/assets/types-BiUdY2U5.js +1 -0
  882. package/dist/app/assets/ultra-indigo-B0ARavak.js +1 -0
  883. package/dist/app/assets/umber-studio-BYTkK72X.js +1 -0
  884. package/dist/app/assets/untrusted-BfWtxngP.js +2 -0
  885. package/dist/app/assets/upload-Bm4b-FQV.js +1 -0
  886. package/dist/app/assets/use-messages-BqadSYrT.js +1 -0
  887. package/dist/app/assets/use-messages-CMG1vOXg.js +1 -0
  888. package/dist/app/assets/use-overlay-layer.svelte-DvlCPqto.js +1 -0
  889. package/dist/app/assets/use-overlay-portal.svelte-DDHakN83.js +1 -0
  890. package/dist/app/assets/users-Bh5Rc6T0.js +1 -0
  891. package/dist/app/assets/validate-6AAyBgB0.js +1 -0
  892. package/dist/app/assets/validate-CTbZGtO4.js +1 -0
  893. package/dist/app/assets/validation-B537KH3-.js +1 -0
  894. package/dist/app/assets/validation-CMBKmHTL.js +1 -0
  895. package/dist/app/assets/validation-FspKIls2.js +1 -0
  896. package/dist/app/assets/validation-v_P8RXAm.js +2 -0
  897. package/dist/app/assets/variants-0EUR5zUc.js +1 -0
  898. package/dist/app/assets/variants-BSgG2nVA.js +1 -0
  899. package/dist/app/assets/variants-BoB1dKDA.css +1 -0
  900. package/dist/app/assets/variants-C-9Fb7C7.js +1 -0
  901. package/dist/app/assets/variants-CHGzXb-Y.css +1 -0
  902. package/dist/app/assets/variants-CjnNSDuw.css +1 -0
  903. package/dist/app/assets/variants-CqLUuoxu.js +1 -0
  904. package/dist/app/assets/variants-DBzK3oU6.js +1 -0
  905. package/dist/app/assets/variants-DFYRPBYV.css +1 -0
  906. package/dist/app/assets/variants-DOyT6BC2.js +1 -0
  907. package/dist/app/assets/variants-DT9zGmPF.css +1 -0
  908. package/dist/app/assets/variants-SS1JhYSo.js +1 -0
  909. package/dist/app/assets/variants-r80xbn9B.css +1 -0
  910. package/dist/app/assets/vector-sky-CLaOPlE1.js +1 -0
  911. package/dist/app/assets/violet-DfxdNaZd.js +1 -0
  912. package/dist/app/assets/virtual-DbN7LpUm.js +1 -0
  913. package/dist/app/assets/volt-green-CR4A9QcB.js +1 -0
  914. package/dist/app/assets/wheat-barn-lFw7UkLn.js +1 -0
  915. package/dist/app/assets/workspaces-CRosbN6a.js +1 -0
  916. package/dist/app/assets/x-CzT3WLwV.js +1 -0
  917. package/dist/app/assets/yaml-KSSTK7w3.js +1 -0
  918. package/dist/app/assets/zap-DaNHL6EY.js +1 -0
  919. package/dist/app/assets/zip-BssPsXf3.js +1 -0
  920. package/dist/app/avatars/128/av-001.webp +0 -0
  921. package/dist/app/avatars/128/av-002.webp +0 -0
  922. package/dist/app/avatars/128/av-003.webp +0 -0
  923. package/dist/app/avatars/128/av-004.webp +0 -0
  924. package/dist/app/avatars/128/av-005.webp +0 -0
  925. package/dist/app/avatars/128/av-006.webp +0 -0
  926. package/dist/app/avatars/128/av-007.webp +0 -0
  927. package/dist/app/avatars/128/av-008.webp +0 -0
  928. package/dist/app/avatars/128/av-009.webp +0 -0
  929. package/dist/app/avatars/128/av-010.webp +0 -0
  930. package/dist/app/avatars/128/av-011.webp +0 -0
  931. package/dist/app/avatars/128/av-012.webp +0 -0
  932. package/dist/app/avatars/128/av-013.webp +0 -0
  933. package/dist/app/avatars/128/av-014.webp +0 -0
  934. package/dist/app/avatars/128/av-015.webp +0 -0
  935. package/dist/app/avatars/128/av-016.webp +0 -0
  936. package/dist/app/avatars/128/av-017.webp +0 -0
  937. package/dist/app/avatars/128/av-018.webp +0 -0
  938. package/dist/app/avatars/128/av-019.webp +0 -0
  939. package/dist/app/avatars/128/av-020.webp +0 -0
  940. package/dist/app/avatars/128/av-021.webp +0 -0
  941. package/dist/app/avatars/128/av-022.webp +0 -0
  942. package/dist/app/avatars/128/av-023.webp +0 -0
  943. package/dist/app/avatars/128/av-024.webp +0 -0
  944. package/dist/app/avatars/128/av-025.webp +0 -0
  945. package/dist/app/avatars/128/av-026.webp +0 -0
  946. package/dist/app/avatars/128/av-027.webp +0 -0
  947. package/dist/app/avatars/128/av-028.webp +0 -0
  948. package/dist/app/avatars/128/av-029.webp +0 -0
  949. package/dist/app/avatars/128/av-030.webp +0 -0
  950. package/dist/app/avatars/128/av-031.webp +0 -0
  951. package/dist/app/avatars/128/av-032.webp +0 -0
  952. package/dist/app/avatars/128/av-033.webp +0 -0
  953. package/dist/app/avatars/128/av-034.webp +0 -0
  954. package/dist/app/avatars/128/av-035.webp +0 -0
  955. package/dist/app/avatars/128/av-036.webp +0 -0
  956. package/dist/app/avatars/128/av-037.webp +0 -0
  957. package/dist/app/avatars/128/av-038.webp +0 -0
  958. package/dist/app/avatars/128/av-039.webp +0 -0
  959. package/dist/app/avatars/128/av-040.webp +0 -0
  960. package/dist/app/avatars/128/av-041.webp +0 -0
  961. package/dist/app/avatars/128/av-042.webp +0 -0
  962. package/dist/app/avatars/128/av-043.webp +0 -0
  963. package/dist/app/avatars/128/av-044.webp +0 -0
  964. package/dist/app/avatars/128/av-045.webp +0 -0
  965. package/dist/app/avatars/128/av-046.webp +0 -0
  966. package/dist/app/avatars/128/av-047.webp +0 -0
  967. package/dist/app/avatars/128/av-048.webp +0 -0
  968. package/dist/app/avatars/128/av-049.webp +0 -0
  969. package/dist/app/avatars/128/av-050.webp +0 -0
  970. package/dist/app/avatars/128/av-051.webp +0 -0
  971. package/dist/app/avatars/128/av-052.webp +0 -0
  972. package/dist/app/avatars/128/av-053.webp +0 -0
  973. package/dist/app/avatars/128/av-054.webp +0 -0
  974. package/dist/app/avatars/128/av-055.webp +0 -0
  975. package/dist/app/avatars/128/av-056.webp +0 -0
  976. package/dist/app/avatars/128/av-057.webp +0 -0
  977. package/dist/app/avatars/128/av-058.webp +0 -0
  978. package/dist/app/avatars/128/av-059.webp +0 -0
  979. package/dist/app/avatars/128/av-060.webp +0 -0
  980. package/dist/app/avatars/128/av-061.webp +0 -0
  981. package/dist/app/avatars/128/av-062.webp +0 -0
  982. package/dist/app/avatars/128/av-063.webp +0 -0
  983. package/dist/app/avatars/128/av-064.webp +0 -0
  984. package/dist/app/avatars/128/av-065.webp +0 -0
  985. package/dist/app/avatars/128/av-066.webp +0 -0
  986. package/dist/app/avatars/128/av-067.webp +0 -0
  987. package/dist/app/avatars/128/av-068.webp +0 -0
  988. package/dist/app/avatars/128/av-069.webp +0 -0
  989. package/dist/app/avatars/128/av-070.webp +0 -0
  990. package/dist/app/avatars/128/av-071.webp +0 -0
  991. package/dist/app/avatars/128/av-072.webp +0 -0
  992. package/dist/app/avatars/128/av-073.webp +0 -0
  993. package/dist/app/avatars/128/av-074.webp +0 -0
  994. package/dist/app/avatars/128/av-075.webp +0 -0
  995. package/dist/app/avatars/128/av-076.webp +0 -0
  996. package/dist/app/avatars/128/av-077.webp +0 -0
  997. package/dist/app/avatars/128/av-078.webp +0 -0
  998. package/dist/app/avatars/128/av-079.webp +0 -0
  999. package/dist/app/avatars/128/av-080.webp +0 -0
  1000. package/dist/app/avatars/128/av-081.webp +0 -0
  1001. package/dist/app/avatars/128/av-082.webp +0 -0
  1002. package/dist/app/avatars/128/av-083.webp +0 -0
  1003. package/dist/app/avatars/128/av-084.webp +0 -0
  1004. package/dist/app/avatars/128/av-085.webp +0 -0
  1005. package/dist/app/avatars/128/av-086.webp +0 -0
  1006. package/dist/app/avatars/128/av-087.webp +0 -0
  1007. package/dist/app/avatars/128/av-088.webp +0 -0
  1008. package/dist/app/avatars/128/av-089.webp +0 -0
  1009. package/dist/app/avatars/128/av-090.webp +0 -0
  1010. package/dist/app/avatars/128/av-091.webp +0 -0
  1011. package/dist/app/avatars/128/av-092.webp +0 -0
  1012. package/dist/app/avatars/128/av-093.webp +0 -0
  1013. package/dist/app/avatars/128/av-094.webp +0 -0
  1014. package/dist/app/avatars/128/av-095.webp +0 -0
  1015. package/dist/app/avatars/128/av-096.webp +0 -0
  1016. package/dist/app/avatars/128/av-097.webp +0 -0
  1017. package/dist/app/avatars/128/av-098.webp +0 -0
  1018. package/dist/app/avatars/128/av-099.webp +0 -0
  1019. package/dist/app/avatars/128/av-100.webp +0 -0
  1020. package/dist/app/avatars/128/av-101.webp +0 -0
  1021. package/dist/app/avatars/128/av-102.webp +0 -0
  1022. package/dist/app/avatars/128/av-103.webp +0 -0
  1023. package/dist/app/avatars/128/av-104.webp +0 -0
  1024. package/dist/app/avatars/128/av-105.webp +0 -0
  1025. package/dist/app/avatars/128/av-106.webp +0 -0
  1026. package/dist/app/avatars/128/av-107.webp +0 -0
  1027. package/dist/app/avatars/128/av-108.webp +0 -0
  1028. package/dist/app/avatars/128/av-109.webp +0 -0
  1029. package/dist/app/avatars/128/av-110.webp +0 -0
  1030. package/dist/app/avatars/128/av-111.webp +0 -0
  1031. package/dist/app/avatars/128/av-112.webp +0 -0
  1032. package/dist/app/avatars/128/av-113.webp +0 -0
  1033. package/dist/app/avatars/128/av-114.webp +0 -0
  1034. package/dist/app/avatars/128/av-115.webp +0 -0
  1035. package/dist/app/avatars/128/av-116.webp +0 -0
  1036. package/dist/app/avatars/128/av-117.webp +0 -0
  1037. package/dist/app/avatars/128/av-118.webp +0 -0
  1038. package/dist/app/avatars/128/av-119.webp +0 -0
  1039. package/dist/app/avatars/128/av-120.webp +0 -0
  1040. package/dist/app/avatars/128/av-121.webp +0 -0
  1041. package/dist/app/avatars/128/av-122.webp +0 -0
  1042. package/dist/app/avatars/128/av-123.webp +0 -0
  1043. package/dist/app/avatars/128/av-124.webp +0 -0
  1044. package/dist/app/avatars/128/av-125.webp +0 -0
  1045. package/dist/app/avatars/128/av-126.webp +0 -0
  1046. package/dist/app/avatars/128/av-127.webp +0 -0
  1047. package/dist/app/avatars/128/av-128.webp +0 -0
  1048. package/dist/app/avatars/128/av-129.webp +0 -0
  1049. package/dist/app/avatars/128/av-130.webp +0 -0
  1050. package/dist/app/avatars/128/av-131.webp +0 -0
  1051. package/dist/app/avatars/128/av-132.webp +0 -0
  1052. package/dist/app/avatars/128/av-133.webp +0 -0
  1053. package/dist/app/avatars/128/av-134.webp +0 -0
  1054. package/dist/app/avatars/128/av-135.webp +0 -0
  1055. package/dist/app/avatars/128/av-136.webp +0 -0
  1056. package/dist/app/avatars/128/av-137.webp +0 -0
  1057. package/dist/app/avatars/128/av-138.webp +0 -0
  1058. package/dist/app/avatars/128/av-139.webp +0 -0
  1059. package/dist/app/avatars/128/av-140.webp +0 -0
  1060. package/dist/app/avatars/128/av-141.webp +0 -0
  1061. package/dist/app/avatars/128/av-142.webp +0 -0
  1062. package/dist/app/avatars/128/av-143.webp +0 -0
  1063. package/dist/app/avatars/128/av-144.webp +0 -0
  1064. package/dist/app/avatars/128/av-145.webp +0 -0
  1065. package/dist/app/avatars/128/av-146.webp +0 -0
  1066. package/dist/app/avatars/128/av-147.webp +0 -0
  1067. package/dist/app/avatars/128/av-148.webp +0 -0
  1068. package/dist/app/avatars/128/av-149.webp +0 -0
  1069. package/dist/app/avatars/128/av-150.webp +0 -0
  1070. package/dist/app/avatars/128/av-151.webp +0 -0
  1071. package/dist/app/avatars/128/av-152.webp +0 -0
  1072. package/dist/app/avatars/128/av-153.webp +0 -0
  1073. package/dist/app/avatars/128/av-154.webp +0 -0
  1074. package/dist/app/avatars/128/av-155.webp +0 -0
  1075. package/dist/app/avatars/128/av-156.webp +0 -0
  1076. package/dist/app/avatars/128/av-157.webp +0 -0
  1077. package/dist/app/avatars/128/av-158.webp +0 -0
  1078. package/dist/app/avatars/128/av-159.webp +0 -0
  1079. package/dist/app/avatars/128/av-160.webp +0 -0
  1080. package/dist/app/avatars/128/av-161.webp +0 -0
  1081. package/dist/app/avatars/128/av-162.webp +0 -0
  1082. package/dist/app/avatars/128/av-163.webp +0 -0
  1083. package/dist/app/avatars/128/av-164.webp +0 -0
  1084. package/dist/app/avatars/128/av-165.webp +0 -0
  1085. package/dist/app/avatars/128/av-166.webp +0 -0
  1086. package/dist/app/avatars/128/av-167.webp +0 -0
  1087. package/dist/app/avatars/128/av-168.webp +0 -0
  1088. package/dist/app/avatars/128/av-169.webp +0 -0
  1089. package/dist/app/avatars/128/av-170.webp +0 -0
  1090. package/dist/app/avatars/128/av-171.webp +0 -0
  1091. package/dist/app/avatars/128/av-172.webp +0 -0
  1092. package/dist/app/avatars/128/av-173.webp +0 -0
  1093. package/dist/app/avatars/128/av-174.webp +0 -0
  1094. package/dist/app/avatars/128/av-175.webp +0 -0
  1095. package/dist/app/avatars/64/av-001.webp +0 -0
  1096. package/dist/app/avatars/64/av-002.webp +0 -0
  1097. package/dist/app/avatars/64/av-003.webp +0 -0
  1098. package/dist/app/avatars/64/av-004.webp +0 -0
  1099. package/dist/app/avatars/64/av-005.webp +0 -0
  1100. package/dist/app/avatars/64/av-006.webp +0 -0
  1101. package/dist/app/avatars/64/av-007.webp +0 -0
  1102. package/dist/app/avatars/64/av-008.webp +0 -0
  1103. package/dist/app/avatars/64/av-009.webp +0 -0
  1104. package/dist/app/avatars/64/av-010.webp +0 -0
  1105. package/dist/app/avatars/64/av-011.webp +0 -0
  1106. package/dist/app/avatars/64/av-012.webp +0 -0
  1107. package/dist/app/avatars/64/av-013.webp +0 -0
  1108. package/dist/app/avatars/64/av-014.webp +0 -0
  1109. package/dist/app/avatars/64/av-015.webp +0 -0
  1110. package/dist/app/avatars/64/av-016.webp +0 -0
  1111. package/dist/app/avatars/64/av-017.webp +0 -0
  1112. package/dist/app/avatars/64/av-018.webp +0 -0
  1113. package/dist/app/avatars/64/av-019.webp +0 -0
  1114. package/dist/app/avatars/64/av-020.webp +0 -0
  1115. package/dist/app/avatars/64/av-021.webp +0 -0
  1116. package/dist/app/avatars/64/av-022.webp +0 -0
  1117. package/dist/app/avatars/64/av-023.webp +0 -0
  1118. package/dist/app/avatars/64/av-024.webp +0 -0
  1119. package/dist/app/avatars/64/av-025.webp +0 -0
  1120. package/dist/app/avatars/64/av-026.webp +0 -0
  1121. package/dist/app/avatars/64/av-027.webp +0 -0
  1122. package/dist/app/avatars/64/av-028.webp +0 -0
  1123. package/dist/app/avatars/64/av-029.webp +0 -0
  1124. package/dist/app/avatars/64/av-030.webp +0 -0
  1125. package/dist/app/avatars/64/av-031.webp +0 -0
  1126. package/dist/app/avatars/64/av-032.webp +0 -0
  1127. package/dist/app/avatars/64/av-033.webp +0 -0
  1128. package/dist/app/avatars/64/av-034.webp +0 -0
  1129. package/dist/app/avatars/64/av-035.webp +0 -0
  1130. package/dist/app/avatars/64/av-036.webp +0 -0
  1131. package/dist/app/avatars/64/av-037.webp +0 -0
  1132. package/dist/app/avatars/64/av-038.webp +0 -0
  1133. package/dist/app/avatars/64/av-039.webp +0 -0
  1134. package/dist/app/avatars/64/av-040.webp +0 -0
  1135. package/dist/app/avatars/64/av-041.webp +0 -0
  1136. package/dist/app/avatars/64/av-042.webp +0 -0
  1137. package/dist/app/avatars/64/av-043.webp +0 -0
  1138. package/dist/app/avatars/64/av-044.webp +0 -0
  1139. package/dist/app/avatars/64/av-045.webp +0 -0
  1140. package/dist/app/avatars/64/av-046.webp +0 -0
  1141. package/dist/app/avatars/64/av-047.webp +0 -0
  1142. package/dist/app/avatars/64/av-048.webp +0 -0
  1143. package/dist/app/avatars/64/av-049.webp +0 -0
  1144. package/dist/app/avatars/64/av-050.webp +0 -0
  1145. package/dist/app/avatars/64/av-051.webp +0 -0
  1146. package/dist/app/avatars/64/av-052.webp +0 -0
  1147. package/dist/app/avatars/64/av-053.webp +0 -0
  1148. package/dist/app/avatars/64/av-054.webp +0 -0
  1149. package/dist/app/avatars/64/av-055.webp +0 -0
  1150. package/dist/app/avatars/64/av-056.webp +0 -0
  1151. package/dist/app/avatars/64/av-057.webp +0 -0
  1152. package/dist/app/avatars/64/av-058.webp +0 -0
  1153. package/dist/app/avatars/64/av-059.webp +0 -0
  1154. package/dist/app/avatars/64/av-060.webp +0 -0
  1155. package/dist/app/avatars/64/av-061.webp +0 -0
  1156. package/dist/app/avatars/64/av-062.webp +0 -0
  1157. package/dist/app/avatars/64/av-063.webp +0 -0
  1158. package/dist/app/avatars/64/av-064.webp +0 -0
  1159. package/dist/app/avatars/64/av-065.webp +0 -0
  1160. package/dist/app/avatars/64/av-066.webp +0 -0
  1161. package/dist/app/avatars/64/av-067.webp +0 -0
  1162. package/dist/app/avatars/64/av-068.webp +0 -0
  1163. package/dist/app/avatars/64/av-069.webp +0 -0
  1164. package/dist/app/avatars/64/av-070.webp +0 -0
  1165. package/dist/app/avatars/64/av-071.webp +0 -0
  1166. package/dist/app/avatars/64/av-072.webp +0 -0
  1167. package/dist/app/avatars/64/av-073.webp +0 -0
  1168. package/dist/app/avatars/64/av-074.webp +0 -0
  1169. package/dist/app/avatars/64/av-075.webp +0 -0
  1170. package/dist/app/avatars/64/av-076.webp +0 -0
  1171. package/dist/app/avatars/64/av-077.webp +0 -0
  1172. package/dist/app/avatars/64/av-078.webp +0 -0
  1173. package/dist/app/avatars/64/av-079.webp +0 -0
  1174. package/dist/app/avatars/64/av-080.webp +0 -0
  1175. package/dist/app/avatars/64/av-081.webp +0 -0
  1176. package/dist/app/avatars/64/av-082.webp +0 -0
  1177. package/dist/app/avatars/64/av-083.webp +0 -0
  1178. package/dist/app/avatars/64/av-084.webp +0 -0
  1179. package/dist/app/avatars/64/av-085.webp +0 -0
  1180. package/dist/app/avatars/64/av-086.webp +0 -0
  1181. package/dist/app/avatars/64/av-087.webp +0 -0
  1182. package/dist/app/avatars/64/av-088.webp +0 -0
  1183. package/dist/app/avatars/64/av-089.webp +0 -0
  1184. package/dist/app/avatars/64/av-090.webp +0 -0
  1185. package/dist/app/avatars/64/av-091.webp +0 -0
  1186. package/dist/app/avatars/64/av-092.webp +0 -0
  1187. package/dist/app/avatars/64/av-093.webp +0 -0
  1188. package/dist/app/avatars/64/av-094.webp +0 -0
  1189. package/dist/app/avatars/64/av-095.webp +0 -0
  1190. package/dist/app/avatars/64/av-096.webp +0 -0
  1191. package/dist/app/avatars/64/av-097.webp +0 -0
  1192. package/dist/app/avatars/64/av-098.webp +0 -0
  1193. package/dist/app/avatars/64/av-099.webp +0 -0
  1194. package/dist/app/avatars/64/av-100.webp +0 -0
  1195. package/dist/app/avatars/64/av-101.webp +0 -0
  1196. package/dist/app/avatars/64/av-102.webp +0 -0
  1197. package/dist/app/avatars/64/av-103.webp +0 -0
  1198. package/dist/app/avatars/64/av-104.webp +0 -0
  1199. package/dist/app/avatars/64/av-105.webp +0 -0
  1200. package/dist/app/avatars/64/av-106.webp +0 -0
  1201. package/dist/app/avatars/64/av-107.webp +0 -0
  1202. package/dist/app/avatars/64/av-108.webp +0 -0
  1203. package/dist/app/avatars/64/av-109.webp +0 -0
  1204. package/dist/app/avatars/64/av-110.webp +0 -0
  1205. package/dist/app/avatars/64/av-111.webp +0 -0
  1206. package/dist/app/avatars/64/av-112.webp +0 -0
  1207. package/dist/app/avatars/64/av-113.webp +0 -0
  1208. package/dist/app/avatars/64/av-114.webp +0 -0
  1209. package/dist/app/avatars/64/av-115.webp +0 -0
  1210. package/dist/app/avatars/64/av-116.webp +0 -0
  1211. package/dist/app/avatars/64/av-117.webp +0 -0
  1212. package/dist/app/avatars/64/av-118.webp +0 -0
  1213. package/dist/app/avatars/64/av-119.webp +0 -0
  1214. package/dist/app/avatars/64/av-120.webp +0 -0
  1215. package/dist/app/avatars/64/av-121.webp +0 -0
  1216. package/dist/app/avatars/64/av-122.webp +0 -0
  1217. package/dist/app/avatars/64/av-123.webp +0 -0
  1218. package/dist/app/avatars/64/av-124.webp +0 -0
  1219. package/dist/app/avatars/64/av-125.webp +0 -0
  1220. package/dist/app/avatars/64/av-126.webp +0 -0
  1221. package/dist/app/avatars/64/av-127.webp +0 -0
  1222. package/dist/app/avatars/64/av-128.webp +0 -0
  1223. package/dist/app/avatars/64/av-129.webp +0 -0
  1224. package/dist/app/avatars/64/av-130.webp +0 -0
  1225. package/dist/app/avatars/64/av-131.webp +0 -0
  1226. package/dist/app/avatars/64/av-132.webp +0 -0
  1227. package/dist/app/avatars/64/av-133.webp +0 -0
  1228. package/dist/app/avatars/64/av-134.webp +0 -0
  1229. package/dist/app/avatars/64/av-135.webp +0 -0
  1230. package/dist/app/avatars/64/av-136.webp +0 -0
  1231. package/dist/app/avatars/64/av-137.webp +0 -0
  1232. package/dist/app/avatars/64/av-138.webp +0 -0
  1233. package/dist/app/avatars/64/av-139.webp +0 -0
  1234. package/dist/app/avatars/64/av-140.webp +0 -0
  1235. package/dist/app/avatars/64/av-141.webp +0 -0
  1236. package/dist/app/avatars/64/av-142.webp +0 -0
  1237. package/dist/app/avatars/64/av-143.webp +0 -0
  1238. package/dist/app/avatars/64/av-144.webp +0 -0
  1239. package/dist/app/avatars/64/av-145.webp +0 -0
  1240. package/dist/app/avatars/64/av-146.webp +0 -0
  1241. package/dist/app/avatars/64/av-147.webp +0 -0
  1242. package/dist/app/avatars/64/av-148.webp +0 -0
  1243. package/dist/app/avatars/64/av-149.webp +0 -0
  1244. package/dist/app/avatars/64/av-150.webp +0 -0
  1245. package/dist/app/avatars/64/av-151.webp +0 -0
  1246. package/dist/app/avatars/64/av-152.webp +0 -0
  1247. package/dist/app/avatars/64/av-153.webp +0 -0
  1248. package/dist/app/avatars/64/av-154.webp +0 -0
  1249. package/dist/app/avatars/64/av-155.webp +0 -0
  1250. package/dist/app/avatars/64/av-156.webp +0 -0
  1251. package/dist/app/avatars/64/av-157.webp +0 -0
  1252. package/dist/app/avatars/64/av-158.webp +0 -0
  1253. package/dist/app/avatars/64/av-159.webp +0 -0
  1254. package/dist/app/avatars/64/av-160.webp +0 -0
  1255. package/dist/app/avatars/64/av-161.webp +0 -0
  1256. package/dist/app/avatars/64/av-162.webp +0 -0
  1257. package/dist/app/avatars/64/av-163.webp +0 -0
  1258. package/dist/app/avatars/64/av-164.webp +0 -0
  1259. package/dist/app/avatars/64/av-165.webp +0 -0
  1260. package/dist/app/avatars/64/av-166.webp +0 -0
  1261. package/dist/app/avatars/64/av-167.webp +0 -0
  1262. package/dist/app/avatars/64/av-168.webp +0 -0
  1263. package/dist/app/avatars/64/av-169.webp +0 -0
  1264. package/dist/app/avatars/64/av-170.webp +0 -0
  1265. package/dist/app/avatars/64/av-171.webp +0 -0
  1266. package/dist/app/avatars/64/av-172.webp +0 -0
  1267. package/dist/app/avatars/64/av-173.webp +0 -0
  1268. package/dist/app/avatars/64/av-174.webp +0 -0
  1269. package/dist/app/avatars/64/av-175.webp +0 -0
  1270. package/dist/app/deck.html +140 -0
  1271. package/dist/app/doc.html +140 -0
  1272. package/dist/app/favicon.svg +1 -0
  1273. package/dist/app/index.html +141 -0
  1274. package/dist/app/manifest.webmanifest +18 -0
  1275. package/dist/app/page.html +140 -0
  1276. package/dist/app/protoyard-player-assets.json +6377 -0
  1277. package/dist/app/sw.js +89 -0
  1278. package/dist/boot/PlayerApp.svelte +89 -0
  1279. package/dist/boot/PlayerApp.svelte.d.ts +3 -0
  1280. package/dist/boot/archetypes/business/AnalyticsApp.svelte +39 -0
  1281. package/dist/boot/archetypes/business/AnalyticsApp.svelte.d.ts +14 -0
  1282. package/dist/boot/archetypes/business/AnalyticsDashboard.svelte +162 -0
  1283. package/dist/boot/archetypes/business/AnalyticsDashboard.svelte.d.ts +3 -0
  1284. package/dist/boot/archetypes/business/SaasApp.svelte +46 -0
  1285. package/dist/boot/archetypes/business/SaasApp.svelte.d.ts +14 -0
  1286. package/dist/boot/archetypes/business/adapter.d.ts +45 -0
  1287. package/dist/boot/archetypes/business/adapter.js +64 -0
  1288. package/dist/boot/archetypes/business/analytics.d.ts +2 -0
  1289. package/dist/boot/archetypes/business/analytics.js +2 -0
  1290. package/dist/boot/archetypes/business/definition.d.ts +26 -0
  1291. package/dist/boot/archetypes/business/definition.js +127 -0
  1292. package/dist/boot/archetypes/business/metrics.d.ts +27 -0
  1293. package/dist/boot/archetypes/business/metrics.js +38 -0
  1294. package/dist/boot/archetypes/business/nav.d.ts +7 -0
  1295. package/dist/boot/archetypes/business/nav.js +19 -0
  1296. package/dist/boot/archetypes/business/saas.d.ts +3 -0
  1297. package/dist/boot/archetypes/business/saas.js +3 -0
  1298. package/dist/boot/archetypes/conversational/ConversationalApp.svelte +108 -0
  1299. package/dist/boot/archetypes/conversational/ConversationalApp.svelte.d.ts +7 -0
  1300. package/dist/boot/archetypes/conversational/adapter.d.ts +24 -0
  1301. package/dist/boot/archetypes/conversational/adapter.js +74 -0
  1302. package/dist/boot/archetypes/conversational/index.d.ts +4 -0
  1303. package/dist/boot/archetypes/conversational/index.js +4 -0
  1304. package/dist/boot/archetypes/conversational/reply.d.ts +6 -0
  1305. package/dist/boot/archetypes/conversational/reply.js +28 -0
  1306. package/dist/boot/boot.d.ts +46 -0
  1307. package/dist/boot/boot.js +96 -0
  1308. package/dist/boot/cache/index.d.ts +90 -0
  1309. package/dist/boot/cache/index.js +299 -0
  1310. package/dist/boot/player-blueprint.d.ts +9 -0
  1311. package/dist/boot/player-blueprint.js +13 -0
  1312. package/dist/boot/review-endpoint.d.ts +7 -0
  1313. package/dist/boot/review-endpoint.js +7 -0
  1314. package/dist/boot/storage/index.d.ts +54 -0
  1315. package/dist/boot/storage/index.js +170 -0
  1316. package/dist/boot/validation/ValidationPanel.svelte +110 -0
  1317. package/dist/boot/validation/ValidationPanel.svelte.d.ts +8 -0
  1318. package/dist/boot/validation/index.d.ts +26 -0
  1319. package/dist/boot/validation/index.js +50 -0
  1320. package/dist/boot/validation/session.d.ts +71 -0
  1321. package/dist/boot/validation/session.js +150 -0
  1322. package/dist/boot/validation/store.d.ts +49 -0
  1323. package/dist/boot/validation/store.js +82 -0
  1324. package/dist/boot/worker/generate-worker-runtime.d.ts +7 -0
  1325. package/dist/boot/worker/generate-worker-runtime.js +20 -0
  1326. package/dist/boot/worker/generate-world-core.d.ts +4 -0
  1327. package/dist/boot/worker/generate-world-core.js +8 -0
  1328. package/dist/boot/worker/generate-world.d.ts +32 -0
  1329. package/dist/boot/worker/generate-world.js +80 -0
  1330. package/dist/boot/worker/generate.worker.d.ts +1 -0
  1331. package/dist/boot/worker/generate.worker.js +2 -0
  1332. package/dist/boot/worker/protocol.d.ts +13 -0
  1333. package/dist/embed/client.d.ts +51 -0
  1334. package/dist/embed/client.js +101 -0
  1335. package/dist/embed/index.d.ts +32 -0
  1336. package/dist/embed/index.js +37 -0
  1337. package/dist/embed/listener.d.ts +37 -0
  1338. package/dist/embed/listener.js +91 -0
  1339. package/dist/embed/origins.d.ts +31 -0
  1340. package/dist/embed/origins.js +67 -0
  1341. package/dist/embed/protocol.d.ts +73 -0
  1342. package/dist/embed/protocol.js +123 -0
  1343. package/package.json +96 -3
@@ -0,0 +1 @@
1
+ import{t as e}from"./dir-locale-Bp4_WmZL.js";import{n as t}from"./keys-P79j73dU.js";import{t as n}from"./typeahead-BP48qCAc.js";function r(e){return e.hasAttribute(`disabled`)||e.getAttribute(`aria-disabled`)===`true`||e.hasAttribute(`hidden`)}function i(e,t,n,r={}){let{wrap:i=!0,pageSize:a=10,enabled:o=()=>!0}=r,s=(t,n,r)=>{for(let i=0,a=t;i<e;i++,a+=n){if(a<0||a>=e){if(!r)break;a=(a+e)%e}if(o(a))return a}return-1};switch(n){case`first`:return s(0,1,!1);case`last`:return s(e-1,-1,!1);case`next`:return t<0?s(0,1,!1):s(t+1,1,i);case`previous`:return t<0?s(e-1,-1,!1):s(t-1,-1,i);default:{let r=n===`page-next`?1:-1,i=t<0?r>0?-1:e:t,o=Math.max(0,Math.min(e-1,i+r*a)),c=s(o,r>0?-1:1,!1);if(c!==-1&&(r>0?c>t:t<0||c<t))return c;let l=s(o,r,!1);return l===-1?t:l}}}function a(e,t){e.forEach((e,n)=>{e.tabIndex=n===t?0:-1})}function o(e){return e.findIndex(e=>e.getAttribute(`aria-checked`)===`true`||e.getAttribute(`aria-selected`)===`true`||e.getAttribute(`aria-pressed`)===`true`)}function s(e){return(e.getAttribute(`data-typeahead`)??e.textContent??``).trim()}function c(o){let c=-1,l=o.typeahead?n(o.typeahead===!0?{}:o.typeahead):null,u=e=>t=>{let n=e[t];return!!n&&(o.focusDisabled===!0||!r(n))},d={get active(){return c},setActive(e,{focus:t=!0}={}){let n=o.items(),r=n[e];if(!r)return;let i=e!==c;c=e,a(n,e),t&&r.focus(),i&&o.onActiveChange?.(e,r)},handleKeydown(n){let r=o.items(),a=u(r),{direction:f}=o,p=t(n,{orientation:o.orientation,direction:typeof f==`object`?e(f):f,...o.homeEnd===void 0?{}:{homeEnd:o.homeEnd},...o.pageKeys===void 0?{}:{pageKeys:o.pageKeys}}),m=p?i(r.length,c,p,{enabled:a,...o.wrap===void 0?{}:{wrap:o.wrap},...o.pageSize===void 0?{}:{pageSize:o.pageSize}}):l?.match(n,r.map(s),c,a)??-1;return m<0?!1:(n.preventDefault?.(),d.setActive(m),!0)},handleFocusIn(e){let t=o.items().indexOf(e.target);t>=0&&t!==c&&d.setActive(t,{focus:!1})},sync(){let e=o.items(),t=u(e),n=e[0]?.ownerDocument.activeElement,r=n?e.indexOf(n):-1,s=o.selected?.()??-1,l=i(e.length,-1,`first`,{enabled:t});t(r)?l=r:t(s)?l=s:t(c)&&(l=c),c=-1,l>=0?d.setActive(l,{focus:!1}):a(e,-1)}};return d}export{o as n,c as t};
@@ -0,0 +1 @@
1
+ .tx-chart-ruled{color:var(--tx-foreground,CanvasText);font:inherit;font-size:.875rem}.tx-chart-ruled>summary{cursor:pointer;text-underline-offset:.2em;align-content:center;min-block-size:2.75rem;inline-size:-moz-fit-content;inline-size:fit-content;padding-block:.5rem;text-decoration:underline}.tx-chart-ruled__scroll{max-inline-size:100%;overflow-x:auto}.tx-chart-ruled table{border-collapse:collapse;text-align:start;inline-size:100%}.tx-chart-ruled caption{text-align:start;padding-block:.5rem}.tx-chart-ruled :is(th,td){border-block-end:1px solid var(--tx-border,currentColor);padding-block:.35rem;padding-inline:.5rem}.tx-chart-ruled th[scope=row]{text-align:start;font-weight:500}@media (forced-colors:active){.tx-chart-ruled>summary:focus-visible{outline-offset:2px;outline:2px solid highlight}}
@@ -0,0 +1,2 @@
1
+ import{n as e,t}from"./kind-boot-CvPxMUUS.js";import{t as n}from"./envelope-D-omwZF5.js";import{F as r,I as i,P as a,Tt as o,V as s,Z as c,bt as l,et as u,h as d,it as f,l as p,lt as m,n as h,ot as g,st as _,ut as v,yt as y,z as b}from"./index-client-BOGsOwg5.js";import"./disclose-version-xihTtKlq.js";var x=s(`<main class="flex min-h-dvh items-center justify-center bg-background px-4 py-10 text-foreground"><section class="w-full max-w-lg rounded-xl border border-border bg-surface p-6 shadow-float" aria-labelledby="py-kind-mismatch-title"><h1 id="py-kind-mismatch-title" class="text-lg font-semibold outline-none" tabindex="-1"> </h1> <p class="mt-2 text-sm text-muted-foreground"><span class="font-medium text-foreground"> </span> </p> <a class="mt-5 inline-flex h-9 items-center rounded-md bg-primary px-4 text-sm font-medium text-primary-foreground hover:bg-primary/90 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring" data-py-kind-mismatch-link=""> </a></section></main>`);function S(e,t){l(t,!0);let n={app:`an app`,deck:`a deck`,page:`a page`,doc:`a document`},i={app:`the app player`,deck:`the deck player`,page:`the page player`,doc:`the document player`},a=v(null);h(()=>c(a)?.focus());var s=x(),S=f(s),C=f(S),w=g(C);p(C,e=>m(a,e),()=>c(a));var T=_(C,2),E=f(T),D=g(E,!0),O=_(E);o(T);var k=_(T,2),A=g(k);o(S),o(s),u(()=>{d(S,`data-py-kind-mismatch`,t.actual),r(w,`This blueprint is ${n[t.actual]??``}, not ${n[t.expected]??``}`),r(D,t.name),r(O,` is ${n[t.actual]??``}. This page only runs
2
+ ${t.expected===`doc`?`documents`:`${t.expected}s`}; open it in ${i[t.actual]??``} instead.`),d(k,`href`,t.href),r(A,`Open in ${i[t.actual]??``}`)}),b(e,s),y()}function C(e){return n(e)?`app`:e.kind}var w={app:`index.html`,deck:`deck.html`,page:`page.html`,doc:`doc.html`};function T(e,t){let n=new URL(`./${w[e]}`,t.href);return n.search=t.search,n.hash=t.hash,n.href}async function E(e,t,n,r){n.replaceChildren(),document.documentElement.dataset.pyReady=`error`;let o=C(t),s=a(S,{target:n,props:{expected:e,actual:o,name:t.name,href:T(o,r)}});return{namespace:``,generatorVersion:void 0,runtime:null,error:null,destroy:async()=>{await i(s),n.replaceChildren()}}}function D(e){let n=e.loadBoot??t;return async(t,r,i={})=>{if(C(t)!==e.kind)return E(e.kind,t,r,e.window.location);let{bootKind:a}=await n();return a({blueprint:t,target:r,...i,loaders:e.loaders})}}function O(n){return(n.loadBoot??t)().catch(()=>void 0),(n.run??e)({window:n.window,target:n.target,boot:D(n)})}export{O as t};
@@ -0,0 +1 @@
1
+ import{c as e,f as t,g as n}from"./schemas-Cd-wWAs4.js";var r={invite:`members:invite`,update:`members:update`,remove:`members:remove`,transfer:`members:transfer`},i=`owner`;function a(e){let t=e.slice(e.lastIndexOf(`@`)+1).toLowerCase();return[`example.com`,`example.org`,`example.net`].includes(t)||t.endsWith(`.example`)}var o=t({name:n().trim().min(1,`Enter a name`).max(120),email:n().trim().toLowerCase().pipe(e(`Enter a valid email`)).refine(a,`Use a fictional address at example.com`).optional(),role:n().trim().min(1,`Choose a role`),title:n().trim().max(120).optional(),organizationId:n().min(1).optional()}).strict();export{a as i,r as n,i as r,o as t};
@@ -0,0 +1 @@
1
+ import{t as e}from"./durations-DOq5QZxl.js";import{n as t}from"./env-guq4m6_s.js";import{i as n,n as r,r as i,t as a}from"./animate-BeveF4EZ.js";import{t as o}from"./motion-C03qaSuL.js";var s=1e5;function c(e){if(!e.isConnected||typeof e.getBoundingClientRect!=`function`)return null;let t=e.getBoundingClientRect(),n={left:t.left,top:t.top,width:t.width,height:t.height};return Number.isFinite(n.left)&&Number.isFinite(n.top)&&Number.isFinite(n.width)&&Number.isFinite(n.height)?n:null}function l(e){let t=Math.round(Math.max(-1e5,Math.min(s,e))*1e3)/1e3;return String(Object.is(t,-0)?0:t)}function u(e,t,n=!0){let r=e.left-t.left,i=e.top-t.top,a=n&&t.width>0&&e.width>0?e.width/t.width:1,o=n&&t.height>0&&e.height>0?e.height/t.height:1;if(Math.abs(r)<.5&&Math.abs(i)<.5&&Math.abs(a-1)<.001&&Math.abs(o-1)<.001)return null;let s=`translate(${l(r)}px, ${l(i)}px)`;return a===1&&o===1?s:`${s} scale(${l(a)}, ${l(o)})`}function d(e){let n=t(e);try{return n?.getComputedStyle(e).direction===`rtl`}catch{return!1}}function f(e,t,n){if(e===!1)return null;if(typeof e==`object`)return e;if(e===`fade`)return[{opacity:0},{opacity:1}];let r=e===`inline-start`||e===`block-start`?-1:1,i=e.startsWith(`inline`),a=l(r*t*(i&&n?-1:1));return[{opacity:0,transform:i?`translate(${a}px, 0px)`:`translate(0px, ${a}px)`},{opacity:1,transform:`none`}]}function p(e={}){let t=e.scale!==!1,a=e.enter??`fade`,o=Math.max(0,Math.min(64,Number.isFinite(e.enterDistance)?e.enterDistance:8)),s=Math.max(0,Math.floor(Number.isFinite(e.maxItems)?e.maxItems:500)),l=new Map,p=null;function m(){p?.interrupt(),p=null}return{measure(e){let t=new Map;for(let[n,r]of e){let e=r?c(r):null;e&&t.set(String(n),e)}l=t,m()},play(h){m();let g=l;l=new Map;let _=[],v=null;for(let[n,r]of h){if(!r)continue;let s=String(n),l=c(r);if(!l)continue;let p=g.get(s),m;if(p){let e=u(p,l,t);m=e?[{transform:e,transformOrigin:`0 0`},{transform:`none`,transformOrigin:`0 0`}]:null}else v===null&&typeof a==`string`&&a.startsWith(`inline`)&&(v=d(r)),m=f(a,o,v===!0);m&&_.push({element:r,frames:m,plan:i(r,m,e)})}if(_.length>s)return r([],e.onFinish,`limit`);let y=[],b=null;for(let e of _){if(e.plan.instant){b??=e.plan.reason;continue}let t=n(e.element,e.plan);t?y.push(t):b??=`error`}let x=r(y,e.onFinish,b??`zero-duration`);return p=y.length>0?x:null,x},cancel(){p?.cancel(),p=null}}}var m=8;function h(e){let t=/^\s*(\d+(?:\.\d+)?)(ms|s)\s*$/.exec(e);if(!t)return null;let n=Number(t[1]);return t[2]===`s`?n*1e3:n}function g(t,n){let r=``;try{r=t.ownerDocument?.defaultView?.getComputedStyle(t).getPropertyValue(`--tx-motion-${n}`)??``}catch{r=``}return h(r)??e[n]}function _(e){try{return e.ownerDocument?.defaultView?.getComputedStyle(e).direction===`rtl`}catch{return!1}}function v(e,t=!1,n,r=``){if(n&&(e===`slide-start`||e===`slide-end`||e===`rise`))return[{transform:n===`left`?`translateX(-100%)`:n===`right`?`translateX(100%)`:n===`top`?`translateY(-100%)`:`translateY(100%)`},{transform:r||`none`}];let i=t?-1:1;switch(e){case`rise`:return[{opacity:0,transform:`translateY(8px)`},{opacity:1,transform:`none`}];case`scale`:return[{opacity:0,transform:`scale(0.96)`},{opacity:1,transform:`none`}];case`slide-start`:return[{opacity:0,transform:`translateX(${-i*8*2}px)`},{opacity:1,transform:`none`}];case`slide-end`:return[{opacity:0,transform:`translateX(${i*8*2}px)`},{opacity:1,transform:`none`}];default:return[{opacity:0},{opacity:1}]}}function y(e,t,n,r,i){let s=i&&e instanceof HTMLElement?e.style.transform:``,c=v(n,_(e),i,s);return a(e,t===`enter`?c:c.reverse(),{duration:g(e,r.duration),easing:t===`enter`?o.enter:o.exit,level:r.level,...r.reducedMotion===void 0?{}:{reducedMotion:r.reducedMotion}})}function b(t,n,r=`fade`){return p({duration:t?g(t,n.duration):e.base,easing:o.standard,level:n.level,...n.reducedMotion===void 0?{}:{reducedMotion:n.reducedMotion},enter:r})}function x(e,t,n){let r=e.getBoundingClientRect();return t===`fill`?{left:r.left,top:r.top,width:r.width,height:r.height}:t===`block-end`?{left:r.left,top:r.bottom-n,width:r.width,height:n}:{left:_(e)?r.left:r.right-n,top:r.top,width:n,height:r.height}}function S(e,t,n,r){let i=e.ownerDocument;if(!i||!t.isConnected||!n.isConnected)return null;let s=r.bar??2,c=x(t,r.shape,s),l=x(n,r.shape,s),d=u(c,l,!0);if(!d)return null;let f=e.getBoundingClientRect(),p=i.createElement(`span`);p.className=r.ghostClass,p.setAttribute(`aria-hidden`,`true`),p.style.position=`absolute`,p.style.left=`${l.left-f.left-e.clientLeft}px`,p.style.top=`${l.top-f.top-e.clientTop}px`,p.style.width=`${l.width}px`,p.style.height=`${l.height}px`,p.style.transformOrigin=`0 0`,p.style.pointerEvents=`none`,e.prepend(p);let m=a(p,[{transform:d},{transform:`none`}],{duration:g(e,r.settings.duration),easing:o.emphasized,level:r.settings.level,...r.settings.reducedMotion===void 0?{}:{reducedMotion:r.settings.reducedMotion}});return m.instantReason===null?(e.setAttribute(r.glideAttribute,``),m.finished.then(()=>{p.remove(),e.querySelector(`:scope > .${r.ghostClass}`)||e.removeAttribute(r.glideAttribute)}),m):(p.remove(),m)}function C(e,t,n,r){let i=e=>Number.isFinite(e)?Math.max(0,Math.min(e,1e5)):0;return a(e,[{blockSize:`${i(t)}px`,overflow:`hidden`},{blockSize:`${i(n)}px`,overflow:`hidden`}],{duration:g(e,r.duration),easing:o.standard,level:r.level,...r.reducedMotion===void 0?{}:{reducedMotion:r.reducedMotion}})}export{m as MOTION_TRAVEL,b as createLayoutFlip,h as parseCssTime,C as playBlockSize,S as playIndicator,y as playPresence,v as presetKeyframes,g as tokenDuration};
@@ -0,0 +1 @@
1
+ var e={id:`rust-archive`,name:`Rust Archive`,description:`Rust Archive: curated warm family theme for the expanded library.`,category:`warm`,tags:[`warm`,`expanded`,`curated`],collection:`industry`,mood:[`warm`],contrastLevel:`AA`,seed:`#8b4e00`,secondary:`#7c2d12`,neutral:`stone`,radius:`0.625rem`,density:1};export{e as default};
@@ -0,0 +1,2 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./SignIn-BUGkXMb7.js","./index-client-BOGsOwg5.js","./disclose-version-xihTtKlq.js","./Button-CYExAoxT.js","./safe-href-Ca6kZWby.js","./trust-DZxM74pz.js","./cx-BNZ52w-j.js","./variants-CqLUuoxu.js","./design-defaults-DW6_LbVN.js","./Button-5BamLyf0.css","./Card-DnZFo53x.js","./Card-DkeUHZOp.css","./CardTitle-CEnDciCv.js","./CardDescription-Bofq-yjt.js","./CardFooter-BrVVXKds.js","./legacy-BUWNFmiS.js","./SsoButtons-BIXfJxaj.js","./Icon-B2CYXdo3.js","./LucideIcon-BLXM0Ftv.js","./Icon-CzgWZ-Sj.js","./Icon-CxE9sx-Y.css","./hash-router.svelte-LQpr7yof.js","./events-BZIKUW6N.js","./services-B-NMB4En.js","./environment-qEbacsJ-.js","./schemas-Cd-wWAs4.js","./random--LplQdQC.js","./session-Qh0_5nJW.js","./manifest-0Q1tYlhS.js","./devices-B2GmUWdq.js","./toast-store-DLJO-Udw.js","./context-mgza7i31.js","./messages-BQTlK_mM.js","./schema-DKYwyX0Q.js","./oauth-CmTD9LUy.js","./validation-CMBKmHTL.js","./mfa-Ch_BMU5H.js","./runtime-A0jTJCh8.js","./auth-DbsvQ_nN.js","./inbox-DHWQ6nEV.js","./context-BLdfKUNL.js","./SchemaForm-jeaBTDUH.js","./preload-helper-CRzLMJPS.js","./seam-BuX-L7O-.js","./Textarea-DMvNCflX.js","./Input-D3Bgj1Zz.js","./use-messages-CMG1vOXg.js","./i18n-C1FxoBbJ.js","./index-client-x7oDvRVJ.js","./Input-B5IDQk3l.css","./Checkbox-TnscN5Ty.js","./child-BNsqGBSq.js","./state-Di2Pzrl0.js","./control-props-OVgLyhvo.js","./variants-BSgG2nVA.js","./variants-BoB1dKDA.css","./Switch-CUXRVOl-.js","./env-guq4m6_s.js","./context-DJ4ajOGM.js","./form-bridge-BFV-h8qv.js","./Field-B2FE05jU.js","./context-CsSYm_2z.js","./Field-Dx5hJCdk.css","./select-DDJqBLM4.js","./SelectValue-Cn6C_Jw7.js","./handlers-ByGe01Fz.js","./core-X3vERPZ1.js","./presence-zf-tyTu4.js","./typeahead-BP48qCAc.js","./keys-P79j73dU.js","./position-floating-DVYNUqB9.js","./SelectValue-Nfj3YFHu.css","./parse-mWm0ww2Y.js","./SchemaForm-C290YN2K.css","./schema-form-BwNSJCDz.js","./helpers-Dz5ykqCN.js","./SignUp-CG-qmCLV.js","./PhoneSignIn-CrRIOXK6.js","./phone-Kw6S6yud.js","./PhoneCode-w7cif7hk.js","./MagicLink-CyzjLDJc.js","./Mfa-ChJVCc4E.js","./ResetPassword-CXsGD2Bp.js","./VerifyEmail-C7RJZGT5.js","./Consent-Bp78LjnB.js","./Link-DHBvi9qI.js","./bindings.svelte-CtFtf-Gl.js","./dexie-DCNEq46v.js","./rolldown-runtime-XKyaHtl9.js","./Inbox-DytVaI45.js","./Badge-B9mnZVCl.js","./variants-C-9Fb7C7.js","./variants-CHGzXb-Y.css","./Dialog-Cd02u7mU.js","./Title-WanbpRaG.js","./motion-hold-Ck8JB-jY.js","./portal-scope-DVg3DZrI.js","./backdrop-Be1Do1pV.js","./inert-CX0JFWuY.js","./Title-DddwkS7C.css","./Close-DfWci-do.js","./Content-IdcbAwsA.js","./scroll-lock-nMA4N7QX.js","./Description-B1DprNxQ.js","./Trigger-cdFIqc65.js","./use-overlay-portal.svelte-DDHakN83.js","./use-overlay-layer.svelte-DvlCPqto.js","./variants-0EUR5zUc.js","./variants-DFYRPBYV.css","./mail-B4gN9oWI.js","./Onboarding-CvS3xYao.js","./AlertDialog-vQsVfmLA.js","./AlertDialog-BCpSMdNI.js","./AlertDialog-ZQ7m9_88.css","./Progress-DW5KkCUF.js","./variants-DOyT6BC2.js","./variants-CjnNSDuw.css","./LoadingState-Bn2cSCGG.js","./cn-BxvfSbXx.js","./Skeleton-C81ERDQ2.js","./Spinner-RvxP_-WC.js","./Spinner-BoiMf0zZ.js","./workspaces-CRosbN6a.js","./org-access-D_6JvvNN.js","./Plans-eSoge3Og.js","./money-BNXN8K1Z.js","./Checkout-DZanjUSm.js","./RadioGroup-w1hFC0p4.js","./radio-group-DGPBxyW6.js","./roving-CztmB2zQ.js","./dir-locale-Bp4_WmZL.js","./Portal-B18y85-k.js","./Settings-DUuWcvB7.js","./Avatar-BfdmP-J8.js","./Avatar-XwYTvfOl.js","./safe-image-src-DQWk9Hmw.js","./safe-image-srcset-CV9HT60O.js","./Avatar-B328P5yQ.css","./Input-DxOKBx2W.js","./avatars-CA9KfGtD.js","./invitations-u_Bd2_8r.js","./Accept-Cwwa7wcy.js"])))=>i.map(i=>d[i]);
2
+ import{a as e,d as t,f as n,g as r,r as i}from"./schemas-Cd-wWAs4.js";import{r as a}from"./random--LplQdQC.js";import{i as o}from"./runtime-A0jTJCh8.js";import{r as s}from"./session-Qh0_5nJW.js";import{n as c}from"./validation-CMBKmHTL.js";import{t as l}from"./pick-BqbZUEL6.js";import{t as u}from"./preload-helper-CRzLMJPS.js";import{$ as d,B as f,D as p,Z as m,at as h,bt as g,mt as _,yt as v,z as y}from"./index-client-BOGsOwg5.js";import"./disclose-version-xihTtKlq.js";import{t as b}from"./context-mgza7i31.js";import{i as x,r as S}from"./hash-router.svelte-LQpr7yof.js";import{t as C}from"./adapter-BDhPWFRd.js";import{t as w}from"./nav-xyVo3Dhy.js";import{d as T,g as E,h as D,m as O,o as ee,p as k,s as A}from"./schema-DKYwyX0Q.js";import{r as te,t as j}from"./workspaces-CRosbN6a.js";import{i as ne,n as re,r as M}from"./context-BLdfKUNL.js";var N=`billing:manage`,P=[`py_organizations`,`py_memberships`,`py_personas`,`saas_subscriptions`,`saas_invoices`,`saas_inbox`],F=t().int().min(0).max(2**53-1),I=n({id:r().trim().min(1).max(64).regex(/^[a-z][a-z0-9-]*$/),name:r().trim().min(1).max(100),unitAmountCents:F,currency:r().regex(/^[A-Z]{3}$/).default(`USD`),interval:i([`month`,`year`]),trialDays:t().int().min(1).max(90).default(14)}).strict(),L=n({planId:r().trim().min(1),outcome:i([`success`,`declined`,`requires-action`]).default(`success`)}).strict(),R=n({planId:r().trim().min(1),trialDays:t().int().min(1).max(90).optional(),seats:t().int().min(1).max(1e5).optional()}).strict();function z(e,t){return new Date(Date.parse(e)+t*864e5).toISOString()}function B(e,t){let n=new Date(e),r=n.getUTCDate();n.setUTCDate(1),n.setUTCMonth(n.getUTCMonth()+(t===`month`?1:12));let i=new Date(Date.UTC(n.getUTCFullYear(),n.getUTCMonth()+1,0)).getUTCDate();return n.setUTCDate(Math.min(r,i)),n.toISOString()}function V(e,t){let n=e.unitAmountCents*t;if(!Number.isSafeInteger(n))throw RangeError(`The plan total exceeds safe integer cents.`);return n}function H(e,t,n,r){let i=Date.parse(t),a=Date.parse(n),o=Date.parse(r),s=a-i;if(s<=0)return 0;let c=Math.max(0,Math.min(s,a-o)),l=BigInt(e)*BigInt(c);return Number((l+BigInt(Math.floor(s/2)))/BigInt(s))}function U(e){return A.parse({id:a(`invoice`),...e,issuedAt:e.at,paidAt:e.status===`paid`?e.at:null})}function W(t,i){let l=e(I).min(1).parse(i),u=l.map(e=>e.id);if(new Set(u).size!==u.length)throw Error(`Billing plan ids must be unique.`);let d=new Map(l.map(e=>[e.id,e])),f=t.db,p=()=>f.table(`py_organizations`),m=()=>f.table(`saas_subscriptions`),h=()=>f.table(`saas_invoices`),g=()=>t.clock.now().toISOString();async function _(e,t,n=a(`inbox`)){let r=ee.parse({id:n,...e,action:null,at:t,readAt:null,archivedAt:null});return await f.rows(`saas_inbox`).add(r),r}function v(){let e=t.session.principal();if(!e?.organization)throw Error(`Billing requires an active organization.`);return e.organization.id}function y(e){let t=d.get(e);if(!t)throw Error(`Unknown billing plan "${e}".`);return t}async function b(e){return(await f.rows(`saas_subscriptions`).where(`organizationId`).equals(e).toArray()).sort((e,t)=>t.createdAt.localeCompare(e.createdAt)||t.id.localeCompare(e.id)).find(e=>e.status===`trialing`||e.status===`active`||e.status===`past_due`)}async function x(e){let t=await p().get(e);if(!t)throw Error(`Organization "${e}" was not found.`);return s.parse(t)}function S(){return t.session.assert(N),v()}async function C(e,t){let n=s.parse({...e,...t});return await p().put(n),n}async function w(e){let n=S(),r=c(R,e),i=y(r.planId),o=g(),s=z(o,r.trialDays??i.trialDays),l=await t.environment.run(`billing.startTrial`,()=>f.transaction(`rw`,[`py_organizations`,`saas_subscriptions`],async()=>{let e=await x(n);if(await b(n))throw Error(`An active subscription or trial already exists.`);let t=T.parse({id:a(`sub`),organizationId:n,planId:i.id,status:`trialing`,interval:i.interval,seats:r.seats??e.seats??e.size,unitAmountCents:i.unitAmountCents,currency:i.currency,trialEndsAt:s,currentPeriodStart:o,currentPeriodEnd:s,cancelAtPeriodEnd:!1,createdAt:o});return await m().add(t),await C(e,{plan:i.id,billingStatus:`trialing`,trialEndsAt:s,seats:t.seats,billingInterval:i.interval,currentPeriodEnd:s}),t}));return await t.session.refresh(),l}async function E(e,n){let r=S(),i=c(L,e),s=y(i.planId),l=g(),u=await t.environment.run(`billing.checkout`,()=>f.transaction(`rw`,P,async()=>{let e=await x(r),c=await b(r);if(n&&!c)throw Error(`Cannot ${n} without a subscription.`);if(c&&c.currency!==s.currency)throw Error(`Changing plan currency is not supported by the billing simulator.`);let u=c?BigInt(c.unitAmountCents)*BigInt(c.interval===`month`?12:1):0n,d=BigInt(s.unitAmountCents)*BigInt(s.interval===`month`?12:1);if(n===`upgrade`&&d<=u)throw Error(`The selected plan is not an upgrade.`);if(n===`downgrade`&&d>=u)throw Error(`The selected plan is not a downgrade.`);let f=c?.seats??e.seats??e.size,p=c?.status===`trialing`,g=c&&!p?c.currentPeriodStart:l,v=c&&!p?c.currentPeriodEnd:B(l,s.interval),y=c&&!p?[{description:`Unused ${c.planId} plan time`,amountCents:-H(V(c,f),g,v,l)},{description:`Remaining ${s.id} plan time`,amountCents:H(V(s,f),g,v,l)}]:[{description:`${s.name} plan`,amountCents:V(s,f)}],S=y.reduce((e,t)=>e+t.amountCents,0);if(!Number.isSafeInteger(S))throw RangeError(`The invoice exceeds safe integer cents.`);let w=i.outcome===`success`?`paid`:i.outcome===`declined`?`failed`:`open`,E=c?.id??(i.outcome===`success`?a(`sub`):null),D=U({organizationId:r,subscriptionId:E,status:w,amountCents:S,currency:s.currency,lines:y,periodStart:g,periodEnd:v,at:l});if(i.outcome!==`success`)return await h().add(D),{attempt:{outcome:i.outcome,invoice:D,subscription:c??null},changed:!1};let O=c?T.parse({...c,planId:s.id,status:`active`,interval:s.interval,unitAmountCents:s.unitAmountCents,currency:s.currency,trialEndsAt:null,currentPeriodStart:g,currentPeriodEnd:v,cancelAtPeriodEnd:!1}):T.parse({id:E,organizationId:r,planId:s.id,status:`active`,interval:s.interval,seats:f,unitAmountCents:s.unitAmountCents,currency:s.currency,trialEndsAt:null,currentPeriodStart:g,currentPeriodEnd:v,cancelAtPeriodEnd:!1,createdAt:l});if(await(c?m().put(O):m().add(O)),await h().add(D),await C(e,{plan:s.id,billingStatus:`active`,trialEndsAt:null,seats:f,billingInterval:s.interval,currentPeriodEnd:v}),D.amountCents>0){let e=t.session.principal();await _({recipient:e?.persona.email&&o(e.persona.email)?e.persona.email:`billing@example.com`,kind:`receipt`,subject:`Receipt for ${s.name}`,body:`Simulated payment of ${D.amountCents} ${D.currency} cents was recorded.`,personaId:e?.persona.id??null},l)}return{attempt:{outcome:i.outcome,invoice:D,subscription:O},changed:!0}}));return u.changed&&await t.session.refresh(),u.attempt}async function D(){let e=S();return await t.environment.run(`billing.cancel`,()=>f.transaction(`rw`,[`saas_subscriptions`],async()=>{let t=await b(e);if(!t)throw Error(`No active subscription to cancel.`);let n=T.parse({...t,cancelAtPeriodEnd:!0});return await m().put(n),n}))}async function O(){let e=S();return t.environment.run(`billing.resume`,()=>f.transaction(`rw`,[`saas_subscriptions`],async()=>{let t=await b(e);if(!t)throw Error(`No subscription to resume.`);let n=T.parse({...t,cancelAtPeriodEnd:!1});return await m().put(n),n}))}async function k(e,t){if(e.type!==`saas.billing.trial-expired`)return;let i=n({organizationId:r().min(1),subscriptionId:r().min(1)}).parse(e.payload),a=await t.get(`saas_subscriptions`,i.subscriptionId);if(a?.status!==`trialing`||a.trialEndsAt!==e.at)return;let c=await t.get(`py_organizations`,i.organizationId);if(!c)return;let l=T.parse({...a,status:`expired`}),u=s.parse({...c,billingStatus:`expired`,trialEndsAt:a.trialEndsAt,currentPeriodEnd:e.at});await t.put(`saas_subscriptions`,l),await t.put(`py_organizations`,u);let d=(await f.rows(`py_memberships`).where(`organizationId`).equals(i.organizationId).toArray()).find(e=>e.role===`owner`),p=d?await f.rows(`py_personas`).get(d.personaId):void 0;await _({recipient:p?.email&&o(p.email)?p.email:`billing@example.com`,kind:`trial`,subject:`Your simulated trial has ended`,body:`The ${a.planId} trial for ${u.name} ended. Choose a plan to continue (simulated).`,personaId:p?.id??null},e.at,`inbox:${e.id}`)}return{plans:()=>l,subscription:async()=>b(v()),invoices:async()=>{let e=v();return(await f.rows(`saas_invoices`).where(`organizationId`).equals(e).toArray()).sort((e,t)=>t.issuedAt.localeCompare(e.issuedAt)||t.id.localeCompare(e.id))},startTrial:w,checkout:e=>E(e),upgrade:e=>E(e,`upgrade`),downgrade:e=>E(e,`downgrade`),cancel:D,resume:O,applyTimelineEvent:k}}var G=`demo-password`;function K(e){let t=e.generators?.saas;return typeof t==`object`&&t?t:{}}var ie={pro:{id:`pro`,unitAmountCents:1200,interval:`month`,currency:`USD`},enterprise:{id:`enterprise`,unitAmountCents:4500,interval:`month`,currency:`USD`}},q=864e5,J=e=>new Date(e).toISOString();function ae(e,t){let n=K(e.scenario),r=new Set(t.tables??[`saas_accounts`,`saas_sessions_log`,`saas_tokens`,`saas_mfa`,`saas_invitations`,`saas_inbox`,`saas_subscriptions`,`saas_invoices`,`saas_onboarding`]),i=e.rng.fork(`protoyard:saas`),a=e.time.now.getTime(),{team:o}=t,s=o.actor,c=o.organizations.map(e=>({...e})),u=o.personas.map(e=>({...e})),d=l(e.rng.fork(`protoyard:avatars:saas`),{avoid:u.map(e=>e.avatar)});for(let e of u)e.avatar??=d.next();let f=o.memberships.map(e=>({...e})),p=c.find(e=>e.id===o.organization.id),m=Date.parse(p.createdAt),h=e=>J(e+Math.floor(i.next()*Math.max(0,a-e))),g=[],_=[],v=[],y=[],b=[],x=[],S=[];for(let t of u){let r=t.id===s.id,i=(t.email??`${t.id}@example.com`).toLowerCase(),o=Date.parse(t.joinedAt),c=J(Math.max(o,a-q));g.push({id:e.ids.next(`acct`),personaId:t.id,email:i,emailVerified:!(r&&n.unverifiedEmail),simulatedPassword:G,providers:r&&n.oauthLinked?n.oauthLinked.map(e=>({provider:e,subject:`${e}-${t.id}`,email:i,linkedAt:c})):[],status:`active`,failedAttempts:0,createdAt:t.joinedAt,lastSignInAt:r&&n.unverifiedEmail?null:h(o)})}let C=g.find(e=>e.personaId===s.id);if(n.unverifiedEmail){let t=C.createdAt,n={id:e.ids.next(`verify`),kind:`verify-email`,email:C.email,accountId:C.id,payload:{},createdAt:t,expiresAt:J(Math.max(Date.parse(t),a)+q),consumedAt:null};_.push(n),b.push({id:e.ids.next(`inbox`),recipient:C.email,personaId:s.id,kind:`verify-email`,subject:`Confirm your email`,body:`Hi ${s.name}, confirm your email address to finish creating your account. This is a simulated message: nothing was sent.`,action:{label:`Confirm email`,href:`#/auth/verify?token=${n.id}`},at:t,readAt:null,archivedAt:null})}if(n.mfaEnrolled){let t=h(Date.parse(C.createdAt));v.push({id:e.ids.next(`mfa`),accountId:C.id,method:`totp-sim`,seed:Array.from({length:16},()=>`ABCDEFGHJKLMNPQRSTUVWXYZ23456789`[i.int(0,31)]).join(``),status:`active`,enrolledAt:t,recoveryCodes:Array.from({length:8},()=>({code:`${i.int(1e4,99999)}-${i.int(1e4,99999)}`,usedAt:null}))})}for(let t=0;t<(n.pendingInvites??0);t++){let n=`${e.faker.person.firstName()}.${e.faker.person.lastName()}`.toLowerCase().normalize(`NFKD`).replace(/[^a-z0-9.]+/g,``).concat(`${t+1}@example.com`),r=h(Math.max(m,a-5*q)),o={id:e.ids.next(`invite-token`),kind:`invite`,email:n,accountId:null,payload:{},createdAt:r,expiresAt:J(Date.parse(r)+7*q),consumedAt:null},c={id:e.ids.next(`inv`),organizationId:p.id,email:n,role:i.chance(.25)?`admin`:`member`,invitedBy:s.id,tokenId:o.id,status:`pending`,createdAt:r,expiresAt:o.expiresAt,acceptedAt:null,acceptedBy:null,avatar:d.next()};o.payload={invitationId:c.id,organizationId:p.id},_.push(o),y.push(c),b.push({id:e.ids.next(`inbox`),recipient:n,personaId:null,kind:`invite`,subject:`${s.name} invited you to ${p.name}`,body:`${s.name} invited you to join ${p.name}. This is a simulated message: nothing was sent.`,action:{label:`Accept invitation`,href:`#/invites/accept?token=${o.id}`},at:r,readAt:null,archivedAt:null})}for(let t=1;t<Math.max(1,n.workspaces??1);t++){let n=Math.max(m,a-i.int(7,120)*q),r={...p,id:e.ids.next(`workspace`),name:`${e.faker.company.name()}`,createdAt:J(n),size:1,seats:1,plan:`free`,billingStatus:`none`,trialEndsAt:null,billingInterval:null,currentPeriodEnd:null,featureFlags:{}};c.push(r),f.push({id:e.ids.next(`mem`),personaId:s.id,organizationId:r.id,role:t===1?`owner`:`admin`,joinedAt:J(Math.max(n,Date.parse(s.joinedAt))),capabilities:[]})}let w=e.scenario.organization.subscription,T={...ie,...t.plans},D=Math.max(1,p.size);if(w===`trial`||n.trialEndsInDays!==void 0){let t=n.trialEndsInDays??7,r=J(a+t*q),i=Math.max(m,a-Math.max(0,14-t)*q),o=T.pro;x.push({id:e.ids.next(`sub`),organizationId:p.id,planId:o.id,status:`trialing`,interval:o.interval??`month`,seats:D,unitAmountCents:o.unitAmountCents,currency:o.currency??`USD`,trialEndsAt:r,currentPeriodStart:J(i),currentPeriodEnd:r,cancelAtPeriodEnd:!1,createdAt:J(i)}),Object.assign(p,{plan:o.id,billingStatus:`trialing`,trialEndsAt:r,seats:D,billingInterval:o.interval??`month`,currentPeriodEnd:r}),t<=3&&b.push({id:e.ids.next(`inbox`),recipient:C.email,personaId:s.id,kind:`trial`,subject:t<=0?`Your trial ends today`:`Your trial ends in ${t} ${t===1?`day`:`days`}`,body:`Choose a plan to keep your workspace on Pro. This is a simulated message: nothing was sent.`,action:{label:`Choose a plan`,href:`#/billing`},at:J(Math.max(i,a-q)),readAt:null,archivedAt:null})}else if(w===`pro`||w===`enterprise`||w===`expired`){let t=w===`enterprise`?T.enterprise:T.pro,r=t.interval??`month`,i=(r===`month`?30:365)*q,o=Math.max(1,Math.min(3,Math.floor((a-m)/i))),c=Math.max(m,a-o*i+Math.floor(i/3)),l=e.ids.next(`sub`),u=w===`expired`,d=c+(o-1)*i,f=u?Math.min(a-q,d+i):d+i,h=u?`expired`:n.pastDue?`past_due`:`active`;x.push({id:l,organizationId:p.id,planId:t.id,status:h,interval:r,seats:D,unitAmountCents:t.unitAmountCents,currency:t.currency??`USD`,trialEndsAt:null,currentPeriodStart:J(d),currentPeriodEnd:J(f),cancelAtPeriodEnd:!1,createdAt:J(c)});for(let r=0;r<o;r++){let a=c+r*i,s=r===o-1&&n.pastDue===!0;S.push({id:e.ids.next(`invoice`),organizationId:p.id,subscriptionId:l,status:s?`failed`:`paid`,amountCents:t.unitAmountCents*D,currency:t.currency??`USD`,lines:[{description:`${t.id} plan × ${D}`,amountCents:t.unitAmountCents*D}],periodStart:J(a),periodEnd:J(a+i),issuedAt:J(a),paidAt:s?null:J(a)})}Object.assign(p,{plan:t.id,billingStatus:u?`expired`:n.pastDue?`past_due`:`active`,seats:D,billingInterval:r,currentPeriodEnd:J(f)}),n.pastDue&&b.push({id:e.ids.next(`inbox`),recipient:C.email,personaId:s.id,kind:`receipt`,subject:`Your payment failed`,body:`We could not charge the simulated payment method. Update it to keep your plan. This is a simulated message: nothing was sent.`,action:{label:`Update billing`,href:`#/billing`},at:J(d),readAt:null,archivedAt:null})}let O={saas_accounts:g,saas_sessions_log:[],saas_tokens:_,saas_mfa:v,saas_invitations:y,saas_inbox:b,saas_subscriptions:x,saas_invoices:S,saas_onboarding:[]};return{organizations:c,personas:u,memberships:f,tables:E(Object.fromEntries([...r].map(e=>[e,O[e]])),{tables:[...r]})}}var oe=[te,`profile:update`,`settings:notifications`,`settings:security`,j.create,j.leave],se=[N,`members:invite`,`members:transfer`,j.rename];function ce(e,t){return e.some(e=>e===`*`||e===`${t}:*`||e===`${t}:update`||e===`*:update`)}function le(e,t){let n=t.archetype;if(n?.id!==`saas-onboarding`)return e;let r=e.database.versions,i=(r[r.length-1]?.version??0)+1,a=Object.fromEntries(Object.entries(e.policy?.roles??{}).map(([e,t])=>[e,[...new Set([...t,...oe,...ce(t,n.entities.workspaces)?se:[]])]])),o=e.generate,{generateWorld:s,...c}=e;return{...c,manifest:{...e.manifest,storage:{...e.manifest.storage,schemaVersion:i}},database:{...e.database,versions:[...r,{version:i,stores:D()}]},integrity:k(e.integrity,O()),policy:{...e.policy,roles:a},generatorVersion:(e.generatorVersion??1)*31+2>>>0,async generate(e){let t=await o(e),n=t.organizations.find(t=>t.id===e.scenario.organization.id)??t.organizations[0],r=t.personas.find(t=>t.id===e.scenario.actor.id)??t.personas[0];if(!n||!r)return t;let i=ae(e,{team:{organizations:t.organizations,personas:t.personas,memberships:t.memberships,organization:n,actor:r}});return{...t,organizations:i.organizations,personas:i.personas,memberships:i.memberships,tables:{...t.tables,...i.tables}}}}}var Y=[{id:`starter`,name:`Starter`,unitAmountCents:0,currency:`USD`,interval:`month`,trialDays:14},{id:`team`,name:`Team`,unitAmountCents:1200,currency:`USD`,interval:`month`,trialDays:14},{id:`business`,name:`Business`,unitAmountCents:4500,currency:`USD`,interval:`month`,trialDays:14}];function X(e={}){return{signInPath:e.signInPath??M.signInPath,onboardingPath:e.onboardingPath??M.onboardingPath,homePath:e.homePath??M.homePath,forbiddenPath:e.forbiddenPath??e.homePath??M.homePath}}function Z(e,t={}){let{signInPath:n}=X(t);return t=>e.isSignedIn()?!0:x(n,t)}function Q(e,t={}){let{homePath:n}=X(t);return t=>!e.isSignedIn()||S(t.query,n)}var $={signIn:()=>u(()=>import(`./SignIn-BUGkXMb7.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75]),import.meta.url),signUp:()=>u(()=>import(`./SignUp-CG-qmCLV.js`),__vite__mapDeps([76,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75]),import.meta.url),phoneSignIn:()=>u(()=>import(`./PhoneSignIn-CrRIOXK6.js`),__vite__mapDeps([77,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,30,21,22,23,24,25,26,27,28,29,31,32,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,78,35,74,75,40]),import.meta.url),phoneCode:()=>u(()=>import(`./PhoneCode-w7cif7hk.js`),__vite__mapDeps([79,1,2,3,4,5,6,7,8,9,10,11,12,13,14,30,21,22,23,24,25,26,27,28,29,31,32,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,78,35,74,75,40]),import.meta.url),magicLink:()=>u(()=>import(`./MagicLink-CyzjLDJc.js`),__vite__mapDeps([80,25,26,37,35,1,2,3,4,5,6,7,8,9,10,11,12,13,14,21,22,23,24,27,28,29,30,31,32,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,39,33,36,38,74,75,40]),import.meta.url),mfa:()=>u(()=>import(`./Mfa-ChJVCc4E.js`),__vite__mapDeps([81,1,2,3,4,5,6,7,8,9,10,11,12,13,14,21,22,23,24,25,26,27,28,29,30,31,32,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,36,37,35,33,38,39,74,75,40]),import.meta.url),resetPassword:()=>u(()=>import(`./ResetPassword-CXsGD2Bp.js`),__vite__mapDeps([82,25,26,37,35,1,2,3,4,5,6,7,8,9,10,11,12,13,14,23,24,27,28,29,30,31,32,41,42,43,44,45,46,47,48,22,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,39,33,74,75,40,21]),import.meta.url),verifyEmail:()=>u(()=>import(`./VerifyEmail-C7RJZGT5.js`),__vite__mapDeps([83,1,2,3,4,5,6,7,8,9,10,11,12,13,14,23,24,25,26,27,28,29,30,31,32,38,37,35,39,33,75,40,21,22]),import.meta.url),oauthConsent:()=>u(()=>import(`./Consent-Bp78LjnB.js`),__vite__mapDeps([84,1,2,3,4,5,6,7,8,9,10,11,12,13,14,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,75]),import.meta.url),oauthLink:()=>u(()=>import(`./Link-DHBvi9qI.js`),__vite__mapDeps([85,1,2,3,4,5,6,7,8,9,10,11,12,13,14,86,48,22,87,88,31,21,23,24,25,26,27,28,29,30,32,33,34,35,36,37,38,39,40,75]),import.meta.url),inbox:()=>u(()=>import(`./Inbox-DytVaI45.js`),__vite__mapDeps([89,1,2,90,91,7,6,92,8,3,4,5,9,93,46,47,48,22,43,42,19,20,94,95,67,57,96,97,66,98,99,100,101,102,103,104,105,106,107,108,45,49,18,15,109,17,39,25,26,35,33,27,28,29,40,21]),import.meta.url),onboarding:()=>u(()=>import(`./Onboarding-CvS3xYao.js`),__vite__mapDeps([110,25,37,35,1,2,3,4,5,6,7,8,9,111,105,106,112,46,47,48,22,102,66,57,67,95,43,42,98,96,97,107,108,113,10,11,12,13,114,51,52,115,116,15,117,118,119,120,121,21,41,44,45,49,50,53,54,55,56,58,59,60,61,62,63,64,65,68,69,70,71,72,73,122,123,27,28,29,40,74,23,24,26,30,31,32]),import.meta.url),billingPlans:()=>u(()=>import(`./Plans-eSoge3Og.js`),__vite__mapDeps([124,1,2,90,91,7,6,92,8,3,4,5,9,10,11,12,13,14,40,21,22,125]),import.meta.url),billingCheckout:()=>u(()=>import(`./Checkout-DZanjUSm.js`),__vite__mapDeps([126,1,2,3,4,5,6,7,8,9,10,11,12,13,14,127,53,54,55,128,58,65,52,129,130,69,68,40,21,22,125]),import.meta.url),billingPortal:()=>u(()=>import(`./Portal-B18y85-k.js`),__vite__mapDeps([131,1,2,90,91,7,6,92,8,3,4,5,9,111,105,106,112,46,47,48,22,102,66,57,67,95,43,42,98,96,97,107,108,113,10,11,12,13,40,21,125]),import.meta.url),settings:()=>u(()=>import(`./Settings-DUuWcvB7.js`),__vite__mapDeps([132,25,37,35,1,2,3,4,5,6,7,8,9,133,134,135,136,58,51,52,137,111,105,106,112,46,47,48,22,102,66,57,67,95,43,42,98,96,97,107,108,113,138,45,49,60,61,62,64,65,68,69,70,59,71,139,88,27,28,29,86,87,31,21,23,24,26,30,32,41,44,50,53,54,55,56,63,72,73,33,38,39,140,123,36,40,74]),import.meta.url),inviteAccept:()=>u(()=>import(`./Accept-Cwwa7wcy.js`),__vite__mapDeps([141,1,2,3,4,5,6,7,8,9,133,134,135,136,58,51,52,137,138,45,46,47,48,22,49,10,11,12,13,14,60,61,62,117,118,119,115,116,120,121,139,88,27,25,28,29,86,87,31,21,23,24,26,30,32,140,37,35,39,33,123,75,40]),import.meta.url)};function ue(e){let t=ne({...e,lazy:e.lazy??M.lazy}),n=e.session,r={signInPath:t.signInPath,onboardingPath:t.onboardingPath,homePath:t.homePath,...e.forbiddenPath===void 0?{}:{forbiddenPath:e.forbiddenPath}},i=new Set(e.include??[`auth`,`oauth`,`inbox`,`onboarding`,`billing`,`settings`,`invites`]),a=(e,t,n,r)=>({path:e,title:t,load:n,...r?{guard:r}:{}});t.lazy;let o=[];return i.has(`auth`)&&o.push(a(t.signInPath,`Sign in`,$.signIn,Q(n,r)),a(t.signUpPath,`Sign up`,$.signUp,Q(n,r)),a(`/auth/phone`,`Phone sign in`,$.phoneSignIn),a(`/auth/phone/code`,`Verify phone code`,$.phoneCode),a(`/auth/magic`,`Magic link`,$.magicLink),a(`/auth/mfa`,`Multi-factor`,$.mfa),a(`/auth/reset`,`Reset password`,$.resetPassword),a(`/auth/verify`,`Verify email`,$.verifyEmail)),i.has(`oauth`)&&o.push(a(`/oauth/:provider/consent`,`Provider consent`,$.oauthConsent),a(`/oauth/:provider/link`,`Link provider account`,$.oauthLink)),i.has(`inbox`)&&o.push(a(t.inboxPath,`Inbox`,$.inbox,Z(n,r))),i.has(`onboarding`)&&o.push(a(t.onboardingPath,`Onboarding`,$.onboarding,Z(n,r))),i.has(`billing`)&&o.push(a(t.billingPlansPath,`Plans`,$.billingPlans,Z(n,r)),a(t.billingCheckoutPath,`Checkout`,$.billingCheckout,Z(n,r)),a(t.billingPortalPath,`Billing portal`,$.billingPortal,Z(n,r))),i.has(`settings`)&&o.push(a(`/settings/:tab?`,`Settings`,$.settings,Z(n,r))),i.has(`invites`)&&o.push(a(`/invites/accept`,`Accept invitation`,$.inviteAccept),a(`/invite`,`Accept invitation`,$.inviteAccept)),o}function de(e,t){g(t,!0);let n=b(),r=d(()=>C(t.blueprint));re(n,{lazy:!0,onboardingPath:r.path,billing:W(n,Y)});let i=ue({session:n.session,lazy:!0,onboardingPath:r.path,include:[`auth`,`onboarding`,`billing`,`invites`,`inbox`]}),a=_(()=>w(t.model,r));var o=f(),s=h(o);p(s,()=>t.BlueprintApp,(e,n)=>{n(e,{get blueprint(){return t.blueprint},get model(){return m(a)},get themeLibrary(){return t.themeLibrary},get extraRoutes(){return i}})}),y(e,o),v()}export{Y as PLAYER_BILLING_PLANS,de as SaasApp,le as withSaasKit};
@@ -0,0 +1 @@
1
+ import{r as e,t}from"./trust-DZxM74pz.js";var n=new Set([`javascript:`,`vbscript:`,`data:`]),r=new Set([`https:`,`mailto:`]);function i(e){for(let t of e){let e=t.codePointAt(0)??0;if(e===173||e>=8203&&e<=8207||e>=8234&&e<=8238||e>=8288&&e<=8292||e>=8294&&e<=8297||e===65279)return!0}return!1}function a(e){if(!/^https:\/\//i.test(e))return!1;try{let t=new URL(e);return t.protocol===`https:`&&t.hostname!==``&&t.username===``&&t.password===``}catch{return!1}}function o(o,s=`untrusted`){let c=t(s);if(typeof o!=`string`)return;let l=o.trim().replace(/[\u0000-\u001f\u007f]/g,``);if(l===``||c===`untrusted`&&i(l))return;if(l.startsWith(`#`))return l;if(e(l))return;let u=/^([a-z][a-z0-9+.-]*):/i.exec(l)?.[1]?.toLowerCase();if(c===`untrusted`)return!u||!r.has(`${u}:`)||u===`https`&&!a(l)?void 0:l;if(!(u&&n.has(`${u}:`)))return l}export{o as n,i as t};
@@ -0,0 +1 @@
1
+ import{a as e,i as t,l as n,n as r,o as i,s as a,t as o}from"./trust-DZxM74pz.js";import{t as s}from"./safe-href-Ca6kZWby.js";function c(e){return!s(e)&&!(e.split(/[/?]/,1)[0]??``).includes(`:`)}function l(s,l=`untrusted`){let u=o(l);if(typeof s==`string`){let e=s.trim();if(n(e)===`data`)return u===`developer`&&i(e)?e:void 0}let d=r(s);if(d&&!e(d)){if(n(d)===`blob`)return u===`developer`&&a(d)?d:void 0;if(t(d)&&(u!==`untrusted`||n(d)!==`http`&&(n(d)!==void 0||c(d))))return d}}export{l as t};
@@ -0,0 +1 @@
1
+ import{t as e}from"./trust-DZxM74pz.js";import{t}from"./safe-image-src-DQWk9Hmw.js";function n(n,r=`untrusted`){let i=e(r);if(typeof n!=`string`||n.trim()===``||n.length>16384)return;let a=n.split(`,`).map(e=>e.trim());if(a.length===0||a.some(e=>e===``))return;let o,s=[];for(let e of a){let n=e.split(/\s+/);if(n.length<1||n.length>2)return;let[r,a]=n;if(!r||!t(r,i))return;if(a){let e=a.endsWith(`w`)?`width`:`density`;if(o&&o!==e)return;o=e;let t=a.slice(0,-1),n=Number(t);if(!Number.isFinite(n)||n<=0||e===`width`&&(!/^\d+w$/.test(a)||!Number.isSafeInteger(n))||e===`density`&&!/^(?:\d+(?:\.\d+)?|\.\d+)x$/.test(a))return}else{if(o===`width`)return;o=`density`}s.push(n.join(` `))}return s.join(`, `)}export{n as t};
@@ -0,0 +1 @@
1
+ import{a as e,c as t,l as n,n as r,s as i,t as a}from"./trust-DZxM74pz.js";function o(o,s=`untrusted`,c={}){let l=a(s),u=r(o);if(!u||e(u))return;let d=n(u);if(d===`blob`)return i(u)?u:void 0;if(d!==`http`&&d!==`https`&&d!==void 0)return;let f;try{f=d?new URL(u):new URL(u,`https://texuli.invalid`)}catch{return}if(f.username===``&&f.password===``){if(l===`developer`)return u;if(d===`https`)return t(c.allowedOrigins).has(f.origin)?u:void 0}}export{o as t};
@@ -0,0 +1,2 @@
1
+ var e=[[0,31],[127,159],[1564,1564],[8203,8203],[8206,8207],[8232,8233],[8234,8238],[8288,8288],[8294,8297],[65279,65279]];function t(e,t){return e.replace(/[\u2028\u2029]/g,t?`
2
+ `:` `)}function n(t,n=!1,r=!1){let i=t.codePointAt(0)??0;return i===10&&n||i===13&&n||i===9&&r?!1:e.some(([e,t])=>i>=e&&i<=t)}function r(e,t=!1,r=!1){return[...e].some(e=>n(e,t,r))}var i=196608,a=512,o=Math.ceil(i/3)*4+64,s={image:[`image/png`,`image/jpeg`,`image/webp`,`image/gif`],video:[`video/mp4`,`video/webm`]},c={image:/\.(?:png|jpe?g|webp|gif|avif)$/i,video:/\.(?:mp4|webm)$/i},l=/^(?:\.\/)?(?:[A-Za-z0-9_][A-Za-z0-9._-]*\/)*[A-Za-z0-9_][A-Za-z0-9._-]*$/,u=/^data:([a-z]+\/[a-z0-9.+-]+);base64,([A-Za-z0-9+/]*={0,2})$/,d=/^av-(?:0[0-9]{2}|1[0-6][0-9]|17[0-5])$/;function f(e){let t=e.endsWith(`==`)?2:+!!e.endsWith(`=`);return Math.floor(e.length*3/4)-t}function p(e,t){if(e.startsWith(`avatar:`))return t===`image`?d.test(e.slice(7))?{ok:!0,kind:`avatar`,bytes:0}:{ok:!1,message:`Use an avatar id from av-001 to av-175, as avatar:av-007`}:{ok:!1,message:`Avatars are images, not videos`};if(e.startsWith(`data:`)){if(e.length>o)return{ok:!1,message:`Embedded media must be at most ${i/1024} KB`};let n=u.exec(e);if(!n)return{ok:!1,message:`Use a base64 data URI, as data:image/png;base64,…`};let r=n[1]??``,a=n[2]??``;if(!s[t].includes(r))return{ok:!1,message:`Embedded ${t}s must be ${s[t].join(`, `)}`};if(a.length===0||a.length%4!=0)return{ok:!1,message:`The base64 payload is empty or malformed`};let c=f(a);return c>196608?{ok:!1,message:`Embedded media must be at most ${i/1024} KB`}:{ok:!0,kind:`data`,bytes:c}}return e.length<=a&&l.test(e)&&c[t].test(e)?{ok:!0,kind:`relative`,bytes:0}:{ok:!1,message:t===`image`?`Use avatar:av-001…175, a png/jpeg/webp/gif data URI, or a relative image path (no SVG or remote URLs)`:`Use an mp4/webm data URI or a relative video path (no remote URLs)`}}export{t as a,n as i,p as n,r,i as t};
@@ -0,0 +1 @@
1
+ var e={id:`saffron-stall`,name:`Saffron Stall`,description:`Saffron Stall: curated warm family theme for the expanded library.`,category:`warm`,tags:[`warm`,`expanded`,`curated`],collection:`industry`,mood:[`warm`],contrastLevel:`AA`,seed:`#c37e00`,secondary:`#b45309`,neutral:`stone`,radius:`0.625rem`,density:1};export{e as default};
@@ -0,0 +1 @@
1
+ var e={id:`sage-veil`,name:`Sage Veil`,description:`Sage Veil: curated pastel family theme for the expanded library.`,category:`pastel`,tags:[`pastel`,`expanded`,`curated`],collection:`seasonal`,mood:[`playful`,`calm`],contrastLevel:`AA`,seed:`#86efac`,secondary:`#4ade80`,neutral:`warm`,radius:`0.625rem`,density:1};export{e as default};
@@ -0,0 +1 @@
1
+ var e={id:`sandstone-wall`,name:`Sandstone Wall`,description:`Sandstone Wall: curated earthy family theme for the expanded library.`,category:`earthy`,tags:[`earthy`,`expanded`,`curated`],collection:`industry`,mood:[`warm`,`editorial`],contrastLevel:`AA`,seed:`#767200`,secondary:`#854d0e`,neutral:`stone`,radius:`0.625rem`,density:1};export{e as default};
@@ -0,0 +1 @@
1
+ import{a as e,d as t,f as n,g as r,m as i,o as a,r as o,y as s}from"./schemas-Cd-wWAs4.js";import{n as c,r as l}from"./devices-B2GmUWdq.js";import{a as u,n as d}from"./environment-qEbacsJ-.js";import{d as f,i as p,n as m,o as h}from"./manifest-0Q1tYlhS.js";import{a as g,r as _}from"./theme-gO6KESO1.js";var v=o([`empty`,`sparse`,`normal`,`dense`,`massive`]),y=o([`none`,`low`,`normal`,`intense`,`dormant`,`reactivated`]),b=n({id:r().default(`org_0001`),name:r().optional(),ageDays:t().int().min(0).default(0),size:t().int().min(1).default(1),subscription:u.default(`free`),type:r().optional(),featureFlags:i(r(),a()).default({})}),x=n({id:r().default(`user_0001`),role:r().default(`owner`),joinedDaysAgo:t().int().min(0).default(0),onboardingComplete:a().default(!0),onboardingProgress:t().min(0).max(1).optional(),locale:r().default(`en-US`)}),S=n({themeId:r().optional(),mode:m.optional(),reducedMotion:a().optional(),viewport:h.optional(),shell:p.optional(),device:c.optional(),orientation:l.optional(),layout:f.optional(),...g.shape}),C=n({id:r().regex(/^[a-z][a-z0-9-]*$/,{message:`scenario id must be kebab-case`}),version:t().int().positive().default(1),name:r().min(1),description:r().default(``),group:r().default(`General`),extends:r().optional(),seed:t().int().nonnegative(),referenceTime:r().refine(e=>!Number.isNaN(Date.parse(e)),{message:`referenceTime must be an ISO 8601 date`}),organization:b.default({id:`org_0001`,ageDays:0,size:1,subscription:`free`,featureFlags:{}}),actor:x.default({id:`user_0001`,role:`owner`,joinedDaysAgo:0,onboardingComplete:!0,locale:`en-US`}),density:v.default(`normal`),activity:n({level:y.default(`normal`)}).default({level:`normal`}),environment:d.default({}),appearance:S.default({}),generators:i(r(),s()).default({}),tags:e(r()).default([])}),w=/^[a-z0-9][a-z0-9-]{0,23}$/,T=/^[A-Za-z0-9_-]{8,128}$/;function E(e){let t=new URLSearchParams(e),n={},r=t.get(`scenario`);r&&/^[a-z][a-z0-9-]*$/.test(r)&&(n.scenario=r);let i=t.get(`actor`);i&&/^[A-Za-z0-9_-]{1,64}$/.test(i)&&(n.actor=i);let a=t.get(`seed`);a&&/^\d{1,10}$/.test(a)&&(n.seed=Number(a));let o=t.get(`theme`);o&&/^[a-z][a-z0-9-]*$/.test(o)&&(n.theme=o);let s=t.get(`mode`);(s===`light`||s===`dark`||s===`system`)&&(n.mode=s);let c=p.safeParse(t.get(`shell`));c.success?n.shell=c.data:t.get(`frame`)===`none`&&(n.shell=`none`);let l=f.safeParse(t.get(`layout`));l.success&&(n.layout=l.data);for(let e of _){let r=t.get(e);if(!r)continue;let i=g.shape[e].safeParse(r);i.success&&i.data!==void 0&&Object.assign(n,{[e]:i.data})}let u=t.get(`sandbox`);u&&w.test(u)&&(n.sandbox=u);let d=t.get(`devtools`);(d===`0`||d===`1`)&&(n.devtools=d===`1`);let m={},h=t.get(`review`);h&&T.test(h)&&(m.key=h);let v=t.get(`comments`);return(v===`0`||v===`1`)&&(m.comments=v===`1`),(m.key!==void 0||m.comments!==void 0)&&(n.review=m),n}function D(e,t){let n=new URL(e,`http://protoyard.local`),{review:r,...i}=t;for(let[e,t]of Object.entries(i))t!==void 0&&n.searchParams.set(e,typeof t==`boolean`?t?`1`:`0`:String(t));return r?.key!==void 0&&n.searchParams.set(`review`,r.key),r?.comments!==void 0&&n.searchParams.set(`comments`,r.comments?`1`:`0`),e.startsWith(`http`)?n.toString():`${n.pathname}${n.search}${n.hash}`}export{D as a,C as i,v as n,E as o,w as r,y as t};
@@ -0,0 +1 @@
1
+ import{a as e,d as t,g as n,h as r,i,m as a,o,r as s,s as c,u as l,v as u}from"./schemas-Cd-wWAs4.js";import{n as d,u as f}from"./src-E7_MqRCx.js";import{i as ee}from"./shared-BaZKMJeO.js";import{a as p,c as m,r as te,s as ne}from"./schema-BRYG8Msr.js";import{t as h}from"./canvas-Cc9cbxpy.js";import{t as g}from"./texuli-DB0v-fcn.js";var _=15e5,v=[`image/png`,`image/jpeg`,`image/webp`,`image/gif`,`image/avif`],y=[`video/mp4`,`video/webm`],b=/^avatar:(av-\d{3})$/,x=/^data:([a-z]+\/[a-z0-9.+-]+);base64,([A-Za-z0-9+/]+={0,2})$/,re=/^(?:\.\/)?[A-Za-z0-9_][A-Za-z0-9_.\-/]*$/;function ie(e){for(let t=0;t<e.length;t++){let n=e.charCodeAt(t);if(n<=31||n>=127&&n<=159||n>=8234&&n<=8238||n>=8294&&n<=8297)return!0}return!1}function S(e,t){if(typeof e!=`string`||e.length===0)return{ok:!1,reason:`Media needs a source`};if(ie(e))return{ok:!1,reason:`Media sources cannot contain control characters`};if(e!==e.trim())return{ok:!1,reason:`Media sources cannot start or end with spaces`};if(b.exec(e))return t===`image`?{ok:!0,src:e,source:`avatar`}:{ok:!1,reason:`Avatars are images, not videos`};if(e.toLowerCase().startsWith(`data:`)){if(e.length>15e5)return{ok:!1,reason:`data: media is longer than ${_} characters`};let n=x.exec(e);if(!n)return{ok:!1,reason:`Use a base64 data: URI with a media type`};let r=n[1],i=t===`image`?v:y;return i.includes(r)?{ok:!0,src:e,source:`data`}:{ok:!1,reason:`${r} is not an allowed ${t} type (${i.join(`, `)})`}}return e.length>512?{ok:!1,reason:`Media paths are at most 512 characters`}:e.startsWith(`//`)||e.includes(`\\`)?{ok:!1,reason:`Remote and protocol-relative media are not allowed`}:/^[a-z][a-z0-9+.-]*:/i.test(e)?{ok:!1,reason:`Only relative paths, data: URIs and avatars are allowed (no remote media)`}:!re.test(e)||e.split(`/`).some(e=>e===`..`||e===``)?{ok:!1,reason:`Use a relative path inside the deck, without ".." segments`}:t===`image`&&/\.svgz?$/i.test(e)?{ok:!1,reason:`SVG backgrounds are not allowed; use PNG, JPEG, WebP, GIF or AVIF`}:{ok:!0,src:e,source:`path`}}var C=e=>n().superRefine((t,n)=>{let r=S(t,e);r.ok||n.addIssue({code:`custom`,message:r.reason})}),w={tone:s([`dark`,`light`]).optional(),overlay:t().min(0).max(.9).optional(),position:s([`center`,`top`,`bottom`,`left`,`right`]).optional()},T=c(`kind`,[r({kind:l(`solid`),token:s(m).optional()}),r({kind:l(`gradient`),gradient:s(p),angle:t().int().min(0).max(359).optional()}),r({kind:l(`pattern`),pattern:s(ne)}),r({kind:s([`image`,`image-full`]),src:C(`image`),alt:n().max(200).optional(),fit:s([`cover`,`contain`]).optional(),...w}),r({kind:s([`video`,`video-full`]),src:C(`video`),poster:C(`image`).optional(),...w})]),E=u([s(te),T]),D=Object.freeze({slides:200,sections:200,sectionSlides:200,slideTitle:160,slideNotes:2e3,sectionTitle:120,stepLabel:80,steps:32,propsKeys:100,propsArray:200,propsDepth:4,propsString:2e3,freeBlocks:2e3}),O=n().regex(/^[a-z0-9][a-z0-9-]{0,63}$/),k=n().regex(/^(?!(?:free|custom)$)[a-z0-9][a-z0-9-]{0,63}$/),A=n().max(64).regex(/^(?!__proto__$|constructor$|prototype$)[\s\S]*$/),j=s(ee),M=s([`none`,`top`,`bottom`]),N=s(h),P=s([`compact`,`comfortable`,`spacious`]),F=s([`none`,`small`,`medium`,`large`,`full`]),I=s([`full`,`subtle`,`none`]),L=r({theme:O.optional(),paletteSeed:t().int().min(0).max(4294967295).optional(),fontPair:O.optional(),aspect:N.optional(),density:P.optional(),radius:F.optional(),motion:I.optional(),transition:j.optional(),background:O.optional(),logo:n().max(256).optional(),footer:n().max(160).optional(),slideNumbers:o().optional(),progress:M.optional()});function R(r){let s=u([n().max(D.propsString),t().finite(),o(),i()]);if(r<=0)return s;let c=R(r-1),l=e(c).max(D.propsArray),d=a(A,c).superRefine((e,t)=>{Object.keys(e).length>D.propsKeys&&t.addIssue({code:`custom`,message:`Layout props may contain at most ${D.propsKeys} keys.`})});return u([s,l,d])}var z=a(A,R(D.propsDepth)).superRefine((e,t)=>{Object.keys(e).length>D.propsKeys&&t.addIssue({code:`custom`,message:`Layout props may contain at most ${D.propsKeys} keys.`})}),B={id:O,title:n().max(D.slideTitle).optional(),background:u([E,O]).optional(),transition:j.optional(),steps:e(n().max(D.stepLabel)).max(D.steps).optional(),notes:n().max(D.slideNotes).optional(),hidden:o().optional()},V=r({...B,layout:k,props:z}),H=r({...B,layout:l(`free`),blocks:d.max(D.freeBlocks)}),U=O,W=r({...B,layout:l(`custom`),props:r({component:U,data:z.optional()})}),G=u([V,H,W]);function K(e){return e.layout===`custom`}var q=r({id:O,title:n().max(D.sectionTitle).optional(),slideIds:e(O).min(1).max(D.sectionSlides)}),J=r({title:n().max(D.sectionTitle).optional(),sections:e(q).min(1).max(D.sections)});function Y(e,t,n,r=!1){if(Array.isArray(e))for(let[i,a]of e.entries())Y(a,[...t,i],n,r);else if(typeof e==`object`&&e)for(let[i,a]of Object.entries(e)){let e=[...t,i];if((i===`src`||i===`poster`)&&typeof a==`string`){let t=S(a,i===`src`&&r?`video`:`image`);t.ok||n(e,t.reason)}else i===`href`&&typeof a==`string`?f.safeParse(a).success||n(e,`Use an http(s), mailto, #anchor or relative link`):Y(a,e,n,r||i===`video`)}}function X(e,t,n){if(Array.isArray(e)){for(let[r,i]of e.entries())X(i,[...t,r],n);return}if(typeof e!=`object`||!e)return;let r=e;if(!Object.hasOwn(r,`step`)){for(let e of[`fragment`,`reveal`])if(Object.hasOwn(r,e)){n(t,`\`${e}\` needs a \`step\`: add one, or remove \`${e}\`.`);break}}for(let[e,i]of Object.entries(r))X(i,[...t,e],n)}var Z=r({style:L,slides:e(G).min(1).max(D.slides),outline:J.optional()}).superRefine((e,t)=>{let n=new Set,r=(e,r)=>{n.add(JSON.stringify(e)),t.addIssue({code:`custom`,path:e,message:r})};e.slides.forEach((e,t)=>{K(e)?Y(e.props.data??{},[`slides`,t,`props`,`data`],r):`props`in e&&(Y(e.props,[`slides`,t,`props`],r),X(e.props,[`slides`,t,`props`],r))});for(let r of g(e).errors)n.has(JSON.stringify(r.path))||r.path[r.path.length-1]!==`href`&&t.addIssue({code:`custom`,path:[...r.path],message:r.message,params:{deckCode:r.code}})});function Q(e){return e.reduce((e,t)=>typeof t==`number`?`${e}[${t}]`:/^[A-Za-z_$][\w$]*$/.test(t)?`${e}.${t}`:`${e}[${JSON.stringify(t)}]`,`$`)}function $(e,t=[],n=new WeakSet){if(typeof e!=`object`||!e||n.has(e))return null;if(n.add(e),Array.isArray(e)){for(let r=0;r<e.length;r+=1){let i=Object.getOwnPropertyDescriptor(e,String(r));if(!i||!(`value`in i))continue;let a=$(i.value,[...t,r],n);if(a)return a}return null}for(let r of Object.keys(e)){let i=[...t,r];if(r===`__proto__`||r===`constructor`||r===`prototype`)return i;let a=Object.getOwnPropertyDescriptor(e,r);if(!a||!(`value`in a))continue;let o=$(a.value,i,n);if(o)return o}return null}function ae(e){let t=$(e);if(t)return{success:!1,deck:null,issues:[{code:`unsafe-key`,path:t,jsonPath:Q(t),message:`Deck input contains a prototype-related key.`}]};let n=Z.safeParse(e);return n.success?{success:!0,deck:n.data,issues:[]}:{success:!1,deck:null,issues:n.error.issues.map(e=>({code:e.code===`custom`&&typeof e.params?.deckCode==`string`?e.params.deckCode:e.code,path:[...e.path],jsonPath:Q(e.path),message:e.message}))}}export{ae as n,Z as t};
@@ -0,0 +1 @@
1
+ import{_ as e,a as t,d as n,g as r,h as i,i as a,m as o,o as s,r as c,s as l,u,v as d,y as f}from"./schemas-Cd-wWAs4.js";import{n as p}from"./random--LplQdQC.js";import{d as m,t as h}from"./manifest-0Q1tYlhS.js";import{n as ee,t as te}from"./scenario-DfCy7uDa.js";var g=(e,t,n,r,i=1)=>({id:e,name:t,lat:n,lng:r,weight:i}),_={"harbor-bay":{id:`harbor-bay`,name:`Harbor Bay`,bbox:[-20,-32,-17,-30],anchors:[g(`north-pier`,`North Pier`,-30.4,-18.6,3),g(`old-mill`,`Old Mill`,-31.1,-19.2,2),g(`lantern-point`,`Lantern Point`,-31.6,-17.8,1)]},"north-valley":{id:`north-valley`,name:`North Valley`,bbox:[-150,30,-147,32],anchors:[g(`cedar-junction`,`Cedar Junction`,31.2,-148.9,2),g(`river-fork`,`River Fork`,30.6,-147.8,2),g(`high-meadow`,`High Meadow`,31.7,-149.5,1)]},"metro-grid":{id:`metro-grid`,name:`Metro Grid`,bbox:[80,-20,83,-18],anchors:[g(`central`,`Central District`,-19,81.5,4),g(`east-yards`,`East Yards`,-18.7,82.4,2),g(`south-loop`,`South Loop`,-19.6,80.9,2),g(`airfield`,`Airfield`,-18.4,80.6,1)]},"coral-reach":{id:`coral-reach`,name:`Coral Reach`,bbox:[-125,-45,-122,-43],anchors:[g(`reef-station`,`Reef Station`,-44.1,-123.6,2),g(`tide-gate`,`Tide Gate`,-43.5,-122.7,1)]}};Object.keys(_);var v=e=>Math.round(e*1e5)/1e5;function ne(e){let t=_[e.region];if(!t)throw RangeError(`geoPoints(): unknown region "${e.region}"`);if(!Number.isInteger(e.count)||e.count<0||e.count>1e6)throw RangeError(`geoPoints(): count must be an integer between 0 and 1000000`);let n=t.anchors.slice(0,Math.max(1,e.clusters??t.anchors.length)).map(e=>[e,e.weight]),r=e.spread??.15,i=e.key??t.id,[a,o,s,c]=t.bbox,{id:l,seed:u}=e.ctx.scenario;return Array.from({length:e.count},(e,t)=>{let d=p(`protoyard:geo:${l}:${u}:${i}:${t}`),f=d.weighted(n),m=Math.sqrt(-2*Math.log(Math.max(d.next(),2**-52)))*r,h=2*Math.PI*d.next();return{id:`geo:${i}:${t}`,lat:v(Math.min(c,Math.max(o,f.lat+m*Math.sin(h)))),lng:v(Math.min(s,Math.max(a,f.lng+m*Math.cos(h)))),anchorId:f.id}})}var re=i({conversations:r().regex(/^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$/),messages:r().regex(/^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$/)}),ie=i({rooms:r().regex(/^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$/),messages:r().regex(/^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$/),members:r().regex(/^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$/)}),ae=i({workspaces:r().regex(/^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$/),members:r().regex(/^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$/)}),oe=i({events:r().regex(/^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$/),metrics:r().regex(/^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$/)}),se=r().regex(/^\/[a-z0-9/:-]*$/,{message:`screen path must be a hash route such as "/assistant"`}),y=i({density:ee.default(`normal`),activity:te.default(`normal`)}),b=e=>i({kind:u(e),path:se}),ce=l(`id`,[i({id:u(`assistant`),kits:e([u(`@protoyard/ai`),u(`@protoyard/ai-ui`)]),entities:re,screens:e([b(`assistant-workspace`)]),scenarioDefaults:y.default({density:`normal`,activity:`normal`})}),i({id:u(`team-chat`),kits:e([u(`@protoyard/ai`),u(`@protoyard/ai-ui`)]),entities:ie,screens:e([b(`team-chat`)]),scenarioDefaults:y.default({density:`normal`,activity:`intense`})}),i({id:u(`saas-onboarding`),kits:e([u(`@protoyard/saas`),u(`@protoyard/saas-ui`)]),entities:ae,screens:e([b(`saas-onboarding`)]),scenarioDefaults:y.default({density:`normal`,activity:`normal`})}),i({id:u(`analytics`),kits:e([u(`@protoyard/analytics`),u(`@protoyard/analytics-ui/grid`),u(`@protoyard/analytics-ui/date-range`)]),entities:oe,screens:e([b(`analytics-dashboard`)]),scenarioDefaults:y.default({density:`dense`,activity:`normal`})})]);function le(e,t){return i({...e,type:u(`canvas`),entity:r().min(1),field:t})}function ue(e,t,n,r){let i=e.fields.find(e=>e.name===t.field);i?i.kind!==`json`&&r([...n,`field`],`field "${t.field}" must be a json field of "${e.name}"`):r([...n,`field`],`unknown field "${t.field}" on "${e.name}"`)}var x=[`full`,`subtle`,`none`],de=`full`,fe=i({level:c(x)});function pe(e){return typeof e==`string`&&x.includes(e)}function me(e){let t=e.motion?.level;return pe(t)?t:de}function he(e,t){return x.indexOf(e)>=x.indexOf(t)?e:t}function ge(e,t){let n=e.style?.motion??`full`,r=he(n,t);return r===n?e:{...e,style:{...e.style,motion:r}}}var S=[`text`,`longText`,`number`,`integer`,`money`,`boolean`,`date`,`enum`,`email`,`url`,`phone`],_e=[`datetime`,`relation`,`persona`,`tags`],C=new Set([...S,..._e]),ve=new Set([`number`,`integer`,`money`]);function ye(e,n){return i({...e,type:u(`sheet`),entity:r().min(1),columns:t(n).min(1).max(26).optional(),totals:t(n).max(26).optional()})}function be(e,t,n,r){let i=new Map(e.fields.map(e=>[e.name,e])),a=new Set;t.columns?.forEach((t,o)=>{let s=i.get(t);s?C.has(s.kind)||r([...n,`columns`,o],`a ${s.kind} field cannot be a sheet column ("${t}")`):r([...n,`columns`,o],`unknown field "${t}" on "${e.name}"`),a.has(t)&&r([...n,`columns`,o],`duplicate column "${t}"`),a.add(t)});let o=new Set(t.columns??w(e).map(e=>e.name));t.totals?.forEach((t,a)=>{let s=i.get(t);s?ve.has(s.kind)?o.has(t)||r([...n,`totals`,a],`totals "${t}" is not one of the sheet's columns`):r([...n,`totals`,a],`totals "${t}" must be a number, integer or money field`):r([...n,`totals`,a],`unknown field "${t}" on "${e.name}"`)})}function w(e,t){if(t){let n=new Map(e.fields.map(e=>[e.name,e]));return t.flatMap(e=>{let t=n.get(e);return t?[t]:[]})}return e.fields.filter(e=>C.has(e.kind)).slice(0,26)}var T=/^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$/,xe=/^[a-z][A-Za-z0-9]*$/,Se=/^\/(?:[A-Za-z0-9._~:@-]+(?:\/[A-Za-z0-9._~:@-]+)*\/?)?$/,E=r().regex(T,{message:`entity must be a kebab-case entity name`}),D=r().regex(xe,{message:`field must be a lowerCamelCase field name`}),Ce=d([r().max(200),n().finite(),s(),a()]),we=i({path:r().max(200).regex(Se,{message:`path must be an app route such as /bookings or /bookings/new`}).refine(e=>!e.split(`/`).some(e=>e===`.`||e===`..`),{message:`path must not contain . or .. segments`}),match:c([`exact`,`prefix`]).default(`exact`)}),Te=l(`op`,[i({op:u(`eq`),entity:E,field:D,value:Ce}),i({op:u(`contains`),entity:E,field:D,value:r().min(1).max(200)}),i({op:u(`count>=`),entity:E,value:n().int().min(0).max(1e5),from:c([`task-start`,`zero`]).default(`task-start`)})]),Ee=i({route:we.optional(),data:Te.optional()}).refine(e=>e.route!==void 0||e.data!==void 0,{message:`success needs a route, a data predicate, or both`}),De=i({id:r().regex(T,{message:`task id must be lowercase kebab-case`}).max(48),prompt:r().trim().min(1).max(280),timeLimitSeconds:n().int().min(10).max(3600).optional(),success:Ee}),Oe=i({tasks:t(De).min(1,{message:`validation needs at least one task`}).max(20)}),ke=new Set([`text`,`longText`,`email`,`url`,`phone`,`enum`,`tags`]),Ae=new Set([`number`,`integer`,`money`]),je=new Set([`boolean`]),Me=new Set([`json`,`file`,`geo`]);function Ne(e,t,n){let r=new Map;e.tasks.forEach((e,i)=>{let a=[`validation`,`tasks`,i],o=r.get(e.id);o===void 0?r.set(e.id,i):n([...a,`id`],`duplicate task id "${e.id}" (first at tasks.${o})`);let s=e.success.data;if(!s)return;let c=[...a,`success`,`data`],l=t.get(s.entity);if(!l){n([...c,`entity`],`unknown entity "${s.entity}"`);return}if(s.op===`count>=`)return;let u=l.fields.find(e=>e.name===s.field);if(!u)n([...c,`field`],`entity "${s.entity}" has no field "${s.field}"`);else if(s.op===`contains`)ke.has(u.kind)||n([...c,`field`],`contains needs a text, enum or tags field; "${s.field}" is ${u.kind}`);else if(Me.has(u.kind))n([...c,`field`],`eq cannot compare a ${u.kind} field`);else if(s.value!==null){let e=Ae.has(u.kind)?`number`:je.has(u.kind)?`boolean`:`string`;typeof s.value!==e&&n([...c,`value`],`"${s.field}" is ${u.kind}; value must be a ${e}`)}})}function O(e){let t=e.replace(/^#/,``).split(/[?#]/)[0]??``,n=t.startsWith(`/`)?t:`/${t}`;return n.length>1&&n.endsWith(`/`)?n.slice(0,-1):n}function Pe(e,t){let n=O(t),r=O(e.path);return e.match===`exact`?n===r:r===`/`||n===r||n.startsWith(`${r}/`)}function Fe(e,t){let n=t.toLowerCase();return typeof e==`string`?e.toLowerCase().includes(n):Array.isArray(e)?e.some(e=>typeof e==`string`&&e.toLowerCase().includes(n)):!1}function Ie(e,t){return Array.isArray(e)?e.some(e=>e===t):t===null?e==null:e===t}function Le(e,t){let n=t.rows[e.entity]??[];switch(e.op){case`eq`:return n.some(t=>Ie(t[e.field],e.value));case`contains`:return n.some(t=>Fe(t[e.field],e.value));case`count>=`:{let r=e.from===`zero`?0:t.baseline?.[e.entity]??0;return n.length>=r+e.value}}}function Re(e,t){let n=e.route?Pe(e.route,t.route):null,r=e.data?Le(e.data,t):null;return{met:n!==!1&&r!==!1&&(n!==null||r!==null),route:n,data:r}}function ze(e){return Object.fromEntries(Object.entries(e).map(([e,t])=>[e,t.length]))}var k=/^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$/,Be=/^[a-z][a-zA-Z0-9]*$/,Ve=/^[a-z][a-zA-Z0-9_]*$/,A=`py_`,He=[`id`,`createdAt`,`updatedAt`,`deletedAt`,`deletedBy`],j=e=>r().regex(k,{message:`${e} must be lowercase kebab-case`}),M=r().regex(Be,{message:`field names must be lowerCamelCase`}),N=n().int({message:`money is integer cents, never a float`}),Ue={name:M,label:r().min(1).max(60).optional(),description:r().max(200).optional(),required:s().default(!1),sensitive:s().default(!1),fake:r().regex(/^[a-z]+\.[a-zA-Z]+$/,{message:`fake must look like "module.method"`}).optional()},P=e=>({minLength:n().int().nonnegative().optional(),maxLength:n().int().positive().max(e).default(e)}),F=c([`flat`,`growth`,`decline`,`seasonal`]).optional(),I=d([c([`past`,`future`,`around`]),i({from:n().int().min(-3650).max(3650),to:n().int().min(-3650).max(3650)})]);function We(e){return e===void 0||e===`past`?{from:null,to:0}:e===`future`?{from:0,to:30}:e===`around`?{from:-14,to:14}:e}var L=(e,t)=>i({...Ue,kind:u(e),...t}),R=l(`kind`,[L(`text`,{...P(200),default:r().optional()}),L(`longText`,{...P(1e4),default:r().optional()}),L(`number`,{min:n().optional(),max:n().optional(),default:n().optional(),trend:F}),L(`integer`,{min:n().int().optional(),max:n().int().optional(),default:n().int().optional(),trend:F}),L(`money`,{currency:r().regex(/^[A-Z]{3}$/,{message:`currency must be an ISO 4217 code such as "USD"`}).default(`USD`),min:N.optional(),max:N.optional(),default:N.optional(),trend:F}),L(`boolean`,{default:s().optional()}),L(`date`,{window:I.optional()}),L(`datetime`,{window:I.optional()}),L(`enum`,{values:t(r().regex(/^[a-z0-9][a-z0-9_-]*$/,{message:`enum values are lowercase`})).min(1,{message:`enum fields need at least one value`}),labels:o(r(),r().min(1)).optional(),default:r().optional(),weights:t(n().nonnegative()).optional()}),L(`email`),L(`url`),L(`phone`),L(`tags`,{maxItems:n().int().positive().max(64).default(8)}),L(`relation`,{to:r().min(1),cardinality:c([`one`,`many`]).default(`one`),onDelete:c([`restrict`,`cascade`,`nullify`]).default(`restrict`)}),L(`persona`),L(`file`,{accept:t(r().regex(/^[a-z]+\/(?:\*|[a-z0-9.+-]+)$/)).default([]),maxSizeBytes:n().int().positive().max(52428800).default(5242880),multiple:s().default(!1)}),L(`json`),L(`geo`,{region:c(Object.keys(_)).optional()}),L(`avatar`)]);R.options.map(e=>e.shape.kind.value);var Ge=i({softDelete:s().default(!1),audit:s().default(!1),notifications:s().default(!1),files:s().default(!1),csv:s().default(!1)}),Ke=i({views:t(c([`list`,`detail`,`form`])).min(1),list:i({columns:t(M).optional()}).optional(),detail:i({tabs:t(d([c([`overview`,`activity`,`files`,`audit`]),r().regex(/^related:[a-z][a-z0-9]*(?:-[a-z0-9]+)*$/,{message:`tabs are overview, activity, files, audit or related:<entity>`})])).min(1).optional()}).optional()}).superRefine((e,t)=>{for(let n of Z(e.views))t.addIssue({code:`custom`,path:[`views`],message:`duplicate view "${n}"`});e.list&&!e.views.includes(`list`)&&t.addIssue({code:`custom`,path:[`list`],message:`list defaults require "list" in views`}),e.detail&&!e.views.includes(`detail`)&&t.addIssue({code:`custom`,path:[`detail`],message:`detail defaults require "detail" in views`})}),qe=i({name:j(`entity name`),plural:j(`entity plural`),label:r().min(1).max(60).optional(),table:r().regex(Ve,{message:`table must be lowerCamelCase`}).optional(),fields:t(R).min(1,{message:`an entity needs at least one field`}),titleField:M,searchable:t(M).default([]),ownerField:M.optional(),indexes:t(M).default([]),defaultSort:i({field:M,direction:c([`asc`,`desc`]).default(`asc`)}).optional(),seedCount:n().int().min(1).max(500).optional(),screenDefaults:Ke.optional(),features:Ge.default({softDelete:!1,audit:!1,notifications:!1,files:!1,csv:!1})}),z=[`read`,`create`,`update`,`update:own`,`delete`,`delete:own`,`import`,`export`],Je=d([c([...z,`*`]),r().regex(/^-[a-z][a-z0-9-]*(?::[a-z][a-z0-9:*-]*)?$/,{message:`denials must name an exact capability such as "-ticket:delete"`})]),Ye=i({name:j(`role name`),label:r().min(1).max(40).optional(),description:r().max(200).optional(),permissions:o(r(),t(Je))}),Xe=`activity.bell.book-open.briefcase.building.calendar.calendar-days.chart-bar.chart-gantt.chart-line.chart-pie.clock.cpu.database.dollar-sign.file-text.folder.globe.graduation-cap.heart-pulse.house.inbox.kanban.layout-dashboard.list.map.map-pin.message-square.package.receipt.settings.shopping-cart.star.table.tag.ticket.truck.users.wallet.wrench.zap`.split(`.`),Ze=i({label:r().min(1).max(40).optional(),icon:c(Xe).optional(),order:n().int().min(0).max(999).optional(),hidden:s().default(!1)}),B={path:r().regex(/^\/[a-z0-9/:-]*$/,{message:`path must be a hash route such as "/deals"`}).optional(),title:r().min(1).max(60).optional(),nav:Ze.optional()},Qe=[`count`,`sum`,`avg`,`min`,`max`],$e=[`day`,`week`,`month`],et=[`line`,`area`,`bar`,`donut`],tt=[`overview`,`activity`,`files`,`audit`],nt=[`profile`,`workspace`,`appearance`,`notifications`,`danger`],V=d([r(),n(),s()]),rt=i({field:M,op:c([`eq`,`in`,`gte`,`lte`]),value:d([V,t(V).min(1)])}),it=i({field:M,unit:c($e)}),H={label:r().min(1).max(60),entity:r().min(1),filter:rt.optional(),span:n().int().min(1).max(4).optional()},U={aggregate:c(Qe).default(`count`),field:M.optional()},at=l(`kind`,[i({...H,...U,kind:u(`kpi`)}),i({...H,...U,kind:u(`chart`),chart:c(et),groupBy:M.optional(),bucket:it.optional()}),i({...H,kind:u(`list`),limit:n().int().min(1).max(20).default(5),sort:i({field:M,direction:c([`asc`,`desc`]).default(`desc`)}).optional()}),i({...H,kind:u(`board-summary`),groupBy:M})]),ot=i({label:r().min(1).max(60),entity:r().min(1),aggregate:c([`count`,`sum`]),field:M.optional()}),W=(e,t)=>i({...B,type:u(e),entity:r().min(1),...t}),st=d([c(tt),r().regex(/^related:[a-z][a-z0-9]*(?:-[a-z0-9]+)*$/,{message:`tabs are overview, activity, files, audit or related:<entity>`})]),G=l(`type`,[W(`list`,{columns:t(M).optional()}),W(`detail`,{tabs:t(st).min(1).optional()}),W(`form`),W(`board`,{groupBy:M,cardFields:t(M).max(6).optional(),sumField:M.optional()}),W(`calendar`,{dateField:M,endField:M.optional(),colorBy:M.optional(),view:c([`month`,`week`,`day`,`agenda`]).default(`month`)}),W(`timeline`,{startField:M,endField:M,groupBy:M.optional(),zoom:c([`week`,`month`,`quarter`]).default(`month`)}),W(`map`,{geoField:M,colorBy:M.optional()}),W(`analytics`,{dateField:M,measures:t(i({label:r().min(1).max(60).optional(),...U})).min(1),dimensions:t(M).default([])}),i({...B,type:u(`dashboard`),metrics:t(ot).optional(),widgets:t(at).default([])}),ye(B,M),le(B,M),i({...B,type:u(`settings`),sections:t(c(nt)).min(1).default([`profile`,`workspace`,`appearance`])})]);function K(e){return[...(e.metrics??[]).map(e=>({...e,kind:`kpi`})),...e.widgets]}var ct={board:`board`,calendar:`calendar`,timeline:`timeline`,map:`map`,analytics:`analytics`,sheet:`sheet`,canvas:`canvas`};function q(e,t){if(e.path)return e.path;if(e.type===`dashboard`)return`/dashboard`;if(e.type===`settings`)return`/settings`;let n=t.find(t=>t.name===e.entity);return n?e.type===`list`?`/${n.plural}`:e.type===`detail`?`/${n.plural}/:id`:e.type===`form`?`/${n.plural}/new`:`/${n.plural}/${ct[e.type]}`:null}var J=[`/members`],lt=i({on:c([`create`,`update`,`assign`]),entity:j(`notification entity`),field:M.optional(),notify:r().regex(/^(owner|assignee|role:[a-z][a-z0-9]*(?:-[a-z0-9]+)*)$/),title:r().min(1).max(120).refine(e=>e.length<=120&&!/<\/?[a-z][^>]*>/i.test(e),{message:`notification titles must be plain text, not HTML`})}).superRefine((e,t)=>{e.on===`assign`&&!e.field&&t.addIssue({code:`custom`,path:[`field`],message:`assign rules need a persona field`}),e.on!==`assign`&&e.field!==void 0&&t.addIssue({code:`custom`,path:[`field`],message:`field is only valid for assign rules`})}),ut=i({schemaVersion:n().int().positive(),blueprint:o(r(),f()),migrateNext:i({allowDrop:s().optional()}).optional()}),dt=[`id`,`seed`,`secondary`,`preset`,`styleProfile`,`font`,`radius`,`density`],ft=r().regex(/^#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{6})$/,{message:`brand colors must be #rgb or #rrggbb hex`}),pt=i({id:r().regex(k,{message:`brand id must be lowercase kebab-case`}).max(40).optional(),name:r().min(1).max(40).optional(),seed:ft.optional(),secondary:ft.optional(),preset:c([`violet`,`ocean`,`emerald`,`rose`,`amber`,`monochrome`]).optional(),styleProfile:c([`soft`,`crisp`,`flat`,`rounded`,`editorial`,`mono`]).optional(),font:c([`system`,`humanist`,`geometric`,`grotesk`,`editorial`,`rounded`,`condensed`,`mono`]).optional(),radius:r().regex(/^(?:0|\d{1,3}(?:\.\d{1,4})?(?:px|rem|em))$/,{message:`radius must look like 0.5rem or 8px`}).optional(),density:n().min(.75).max(1.25).optional(),libraryTheme:r().regex(/^[a-z][a-z0-9-]*$/,{message:`libraryTheme must be a lowercase kebab-case id`}).max(40).optional()}).superRefine((e,t)=>{if(e.libraryTheme!==void 0)for(let n of dt)e[n]!==void 0&&t.addIssue({code:`custom`,path:[n],message:`brand.${n} cannot be combined with libraryTheme (the library theme is used as-is)`});else!e.seed&&!e.preset&&t.addIssue({code:`custom`,path:[`seed`],message:`brand needs a seed color, a theme preset or a libraryTheme`})}),mt={$schema:r().optional(),formatVersion:u(1),name:r().min(1).max(80),description:r().max(280).optional(),catalog:h.optional(),tags:t(r().min(1).max(32)).max(16).default([]),icon:r().max(8).optional(),category:r().min(1).max(40).optional(),brand:pt.optional(),motion:fe.optional()},ht=i({...mt,kind:u(`app`).optional(),layout:i({id:m,mobile:m.optional()}).optional(),archetype:ce.optional(),entities:t(qe).min(1,{message:`a blueprint needs at least one entity`}),roles:t(Ye).min(1,{message:`a blueprint needs at least one role`}),notifications:t(lt).default([]),screens:t(G).default([]),history:t(ut).default([]),validation:Oe.optional()});function Y(e){return e.table??e.plural.replace(/-([a-z0-9])/g,(e,t)=>t.toUpperCase())}var gt=new Set([`text`,`email`,`url`,`phone`,`enum`,`integer`]),X=new Set([`number`,`integer`,`money`]),_t=new Set([`geo`,`avatar`]);function Z(e){let t=new Set,n=new Set;for(let r of e)(t.has(r)?n:t).add(r);return n}function vt(e,t,n,r){let i=[`entities`,t],a=new Map(e.fields.map(e=>[e.name,e])),o=Y(e);o.startsWith(A)&&r([...i,`table`],`table "${o}" uses the reserved "${A}" prefix`);let s=Z(e.fields.map(e=>e.name));e.fields.forEach((t,a)=>{let o=[...i,`fields`,a];if(He.includes(t.name)&&r([...o,`name`],`"${t.name}" is managed by the platform and cannot be declared`),s.has(t.name)&&r([...o,`name`],`duplicate field "${t.name}"`),t.kind===`relation`&&(n.has(t.to)||r([...o,`to`],`relation "${e.name}.${t.name}" targets unknown entity "${t.to}"`),t.onDelete===`nullify`&&t.required&&r([...o,`onDelete`],`required relation "${t.name}" cannot use onDelete "nullify"`)),t.kind===`enum`){for(let e of Z(t.values))r([...o,`values`],`duplicate enum value "${e}"`);t.default!==void 0&&!t.values.includes(t.default)&&r([...o,`default`],`default "${t.default}" is not one of ${t.values.join(`, `)}`),t.weights!==void 0&&(t.weights.length===t.values.length?t.weights.some(e=>e>0)||r([...o,`weights`],`weights needs at least one positive entry`):r([...o,`weights`],`weights needs one entry per value (${t.values.length})`))}(t.kind===`date`||t.kind===`datetime`)&&typeof t.window==`object`&&t.window.from>t.window.to&&r([...o,`window`],`window.from must not be after window.to`),`min`in t&&t.min!==void 0&&t.max!==void 0&&t.min>t.max&&r([...o,`min`],`min must not exceed max`)});let c=a.get(e.titleField);c?gt.has(c.kind)||r([...i,`titleField`],`titleField "${e.titleField}" must be a text-like field, not ${c.kind}`):r([...i,`titleField`],`titleField "${e.titleField}" is not a field of "${e.name}"`),e.ownerField!==void 0&&a.get(e.ownerField)?.kind!==`persona`&&r([...i,`ownerField`],`ownerField "${e.ownerField}" must be a persona field of "${e.name}"`);for(let t of[`searchable`,`indexes`])e[t].forEach((e,n)=>{a.has(e)?_t.has(a.get(e)?.kind)&&r([...i,t,n],`${a.get(e)?.kind} field "${e}" cannot be ${t===`indexes`?`indexed`:`searched`}`):r([...i,t,n],`unknown field "${e}"`)});e.defaultSort&&!a.has(e.defaultSort.field)?r([...i,`defaultSort`,`field`],`unknown field "${e.defaultSort.field}"`):e.defaultSort&&_t.has(a.get(e.defaultSort.field)?.kind)&&r([...i,`defaultSort`,`field`],`${a.get(e.defaultSort.field)?.kind} field "${e.defaultSort.field}" cannot sort a list`),e.features.files&&!e.fields.some(e=>e.kind===`file`)&&r([...i,`features`,`files`],`features.files needs at least one file field on "${e.name}"`)}function yt(e,t,n,r){let i=e.screenDefaults;if(!i)return;let a=[`entities`,t,`screenDefaults`];i.list?.columns?.forEach((t,n)=>{e.fields.some(e=>e.name===t)||r([...a,`list`,`columns`,n],`unknown field "${t}" on "${e.name}"`)}),i.detail?.tabs?.forEach((t,i)=>{let o=[...a,`detail`,`tabs`,i];if((t===`activity`||t===`audit`)&&!e.features.audit)r(o,`the ${t} tab needs features.audit on "${e.name}"`);else if(t===`files`&&!e.features.files)r(o,`the files tab needs features.files on "${e.name}"`);else if(t.startsWith(`related:`)){let i=t.slice(8),a=n.get(i);a?a.fields.some(t=>t.kind===`relation`&&t.to===e.name)||r(o,`"${a.name}" has no relation field to "${e.name}"`):r(o,`unknown entity "${i}"`)}});for(let e of Z(i.detail?.tabs??[]))r([...a,`detail`,`tabs`],`duplicate tab "${e}"`)}function bt(e){let t=[],n=(e,n)=>{t.push({path:e,message:n})},r=new Map(e.entities.map(e=>[e.name,e])),i=new Set(r.keys());for(let[t,r]of[[`name`,e.entities.map(e=>e.name)],[`plural`,e.entities.map(e=>e.plural)],[`table`,e.entities.map(Y)]]){let e=Z(r);r.forEach((r,i)=>{e.has(r)&&n([`entities`,i,t],`duplicate entity ${t} "${r}"`)})}if(e.entities.forEach((e,t)=>{vt(e,t,i,n),yt(e,t,r,n)}),e.validation&&Ne(e.validation,r,n),e.archetype)for(let[t,i]of Object.entries(e.archetype.entities))r.has(i)||n([`archetype`,`entities`,t],`archetype entity slot "${t}" references unknown entity "${i}"`);e.notifications.forEach((t,i)=>{let a=[`notifications`,i],o=r.get(t.entity);if(!o){n([...a,`entity`],`unknown entity "${t.entity}"`);return}let s=new Map(o.fields.map(e=>[e.name,e]));if(t.on===`assign`&&t.field&&s.get(t.field)?.kind!==`persona`&&n([...a,`field`],`assign field "${t.field}" must be a persona field of "${o.name}"`),t.notify===`owner`&&(!o.ownerField||s.get(o.ownerField)?.kind!==`persona`)&&n([...a,`notify`],`notify "owner" needs an ownerField on "${o.name}"`),t.notify===`assignee`&&!o.fields.some(e=>e.name===`assignee`&&e.kind===`persona`)&&n([...a,`notify`],`notify "assignee" needs an assignee persona field on "${o.name}"`),t.notify.startsWith(`role:`)){let r=t.notify.slice(5);e.roles.some(e=>e.name===r)||n([...a,`notify`],`unknown notification role "${r}"`)}for(let e of t.title.matchAll(/\{([^{}]+)\}/g)){let t=s.get(e[1]??``);t?t.sensitive&&n([...a,`title`],`sensitive field "${t.name}" cannot be used in a notification title`):n([...a,`title`],`unknown title placeholder "${e[1]}" on "${o.name}"`)}});let a=Z(e.roles.map(e=>e.name));e.roles.forEach((t,i)=>{a.has(t.name)&&n([`roles`,i,`name`],`duplicate role "${t.name}"`);for(let[a,o]of Object.entries(t.permissions)){let t=[`roles`,i,`permissions`,a],s=r.get(a);if(a!==`*`&&!s){n(t,`unknown entity "${a}"`);continue}let c=o.filter(e=>e.endsWith(`:own`));if(c.length>0){let r=a===`*`?e.entities.filter(e=>!e.ownerField):s&&!s.ownerField?[s]:[];for(let e of r)n(t,`"${c.join(`", "`)}" needs an ownerField on entity "${e.name}"`)}}}),Et(e,n);let o=new Set(e.screens.flatMap(e=>`entity`in e?[`${e.entity}:${e.type}`]:[])),s=new Set([...e.screens.map(t=>q(t,e.entities)),...e.archetype?.screens.map(e=>e.path)??[]].filter(Boolean));return e.entities.forEach((e,t)=>{e.screenDefaults?.views.forEach((r,i)=>{if(o.has(`${e.name}:${r}`))return;let a=r===`list`?`/${e.plural}`:r===`detail`?`/${e.plural}/:id`:`/${e.plural}/new`;s.has(a)&&n([`entities`,t,`screenDefaults`,`views`,i],`path "${a}" is already used by a top-level screen`)})}),t}var xt=new Set([`createdAt`,`updatedAt`]),Q=new Set([`date`,`datetime`]),St=new Set([`enum`,`relation`,`persona`,`boolean`]),Ct=new Set([...X,...Q]),wt=new Set([`geo`]);function Tt(e){let t=[...e],n=t.length===1?t[0]:`${t.slice(0,-1).join(`, `)} or ${t.at(-1)}`;return`${/^[aeiou]/.test(n)?`an`:`a`} ${n}`}function Et(e,t){let n=new Map(e.entities.map(e=>[e.name,e])),r=(e,n,r,i,a,o=!1)=>{if(o&&xt.has(n))return;let s=e.fields.find(e=>e.name===n);if(!s)t(i,`unknown field "${n}" on "${e.name}"`);else if(r&&!r.has(s.kind)){let s=o?` (or createdAt / updatedAt)`:``;t(i,`${a} "${n}" must be ${Tt(r)} field of "${e.name}"${s}`)}return s},i=(e,n,r)=>{if(n.aggregate===`count`){n.field!==void 0&&t([...r,`field`],`count does not take a field`);return}let i=n.aggregate===`min`||n.aggregate===`max`?Ct:X,a=e.fields.find(e=>e.name===n.field);(!a||!i.has(a.kind))&&t([...r,`field`],`${n.aggregate} needs ${Tt(i)} field`)},a=(e,n,i)=>{let a=r(e,n.field,null,[...i,`field`],`filter field`);if(n.op===`in`!==Array.isArray(n.value)&&t([...i,`value`],n.op===`in`?`op "in" needs an array value`:`op "${n.op}" needs a single value`),a?.kind===`enum`){let e=Array.isArray(n.value)?n.value:[n.value];for(let n of e)a.values.includes(String(n))||t([...i,`value`],`"${n}" is not one of ${a.values.join(`, `)}`)}},o=new Map;e.screens.forEach((s,c)=>{let l=[`screens`,c],u=q(s,e.entities);if(u!==null){J.includes(u)&&t([...l,`path`],`path "${u}" is reserved by the generated app`);let e=o.get(u);e===void 0?o.set(u,c):t([...l,`path`],`path "${u}" is already used by screens.${e}`)}if(s.type===`settings`){s.sections.includes(`notifications`)&&!e.entities.some(e=>e.features.notifications)&&t([...l,`sections`],`the notifications section needs an entity with features.notifications`);for(let e of Z(s.sections))t([...l,`sections`],`duplicate section "${e}"`);return}if(s.type===`dashboard`){let e=s.metrics??[];K(s).forEach((o,s)=>{let c=s<e.length?[...l,`metrics`,s]:[...l,`widgets`,s-e.length],u=n.get(o.entity);u?(o.filter&&a(u,o.filter,[...c,`filter`]),(o.kind===`kpi`||o.kind===`chart`)&&i(u,o,c),o.kind===`list`&&o.sort&&r(u,o.sort.field,null,[...c,`sort`,`field`],`sort field`),o.kind===`board-summary`&&r(u,o.groupBy,new Set([`enum`]),[...c,`groupBy`],`groupBy`),o.kind===`chart`&&(o.groupBy!==void 0&&r(u,o.groupBy,St,[...c,`groupBy`],`groupBy`),o.bucket&&r(u,o.bucket.field,Q,[...c,`bucket`,`field`],`bucket field`,!0),o.chart===`donut`&&(!o.groupBy||o.bucket)&&t([...c,`chart`],`a donut chart needs groupBy and no bucket`),(o.chart===`line`||o.chart===`area`)&&!o.bucket&&t([...c,`bucket`],`a ${o.chart} chart needs a date bucket`),o.chart===`bar`&&!o.groupBy&&!o.bucket&&t([...c,`chart`],`a bar chart needs groupBy or a date bucket`))):t([...c,`entity`],`unknown entity "${o.entity}"`)});return}let d=n.get(s.entity);if(!d){t([...l,`entity`],`unknown entity "${s.entity}"`);return}let f=new Map(d.fields.map(e=>[e.name,e])),p=new Set([`enum`]);switch(s.type){case`list`:s.columns?.forEach((e,n)=>{f.has(e)||t([...l,`columns`,n],`unknown field "${e}"`)});break;case`detail`:for(let e of Z(s.tabs??[]))t([...l,`tabs`],`duplicate tab "${e}"`);s.tabs?.forEach((e,r)=>{let i=[...l,`tabs`,r];if((e===`activity`||e===`audit`)&&!d.features.audit)t(i,`the ${e} tab needs features.audit on "${d.name}"`);else if(e===`files`&&!d.features.files)t(i,`the files tab needs features.files on "${d.name}"`);else if(e.startsWith(`related:`)){let r=n.get(e.slice(8));r?r.fields.some(e=>e.kind===`relation`&&e.to===d.name)||t(i,`"${r.name}" has no relation field to "${d.name}"`):t(i,`unknown entity "${e.slice(8)}"`)}});break;case`board`:f.get(s.groupBy)?.kind!==`enum`&&t([...l,`groupBy`],`groupBy "${s.groupBy}" must be an enum field of "${d.name}"`),s.cardFields?.forEach((e,t)=>{r(d,e,null,[...l,`cardFields`,t],`card field`)}),s.sumField!==void 0&&r(d,s.sumField,X,[...l,`sumField`],`sumField`);break;case`calendar`:r(d,s.dateField,Q,[...l,`dateField`],`dateField`),s.endField!==void 0&&(r(d,s.endField,Q,[...l,`endField`],`endField`),s.endField===s.dateField&&t([...l,`endField`],`endField must differ from dateField`)),s.colorBy!==void 0&&r(d,s.colorBy,p,[...l,`colorBy`],`colorBy`);break;case`timeline`:r(d,s.startField,Q,[...l,`startField`],`startField`),r(d,s.endField,Q,[...l,`endField`],`endField`),s.endField===s.startField&&t([...l,`endField`],`endField must differ from startField`),s.groupBy!==void 0&&r(d,s.groupBy,new Set([`enum`,`relation`,`persona`]),[...l,`groupBy`],`groupBy`);break;case`map`:r(d,s.geoField,wt,[...l,`geoField`],`geoField`),s.colorBy!==void 0&&r(d,s.colorBy,p,[...l,`colorBy`],`colorBy`);break;case`analytics`:r(d,s.dateField,Q,[...l,`dateField`],`dateField`,!0),s.measures.forEach((e,t)=>{i(d,e,[...l,`measures`,t])}),s.dimensions.forEach((e,t)=>{r(d,e,St,[...l,`dimensions`,t],`dimension`)});break;case`form`:break;case`sheet`:be(d,s,l,t);break;case`canvas`:ue(d,s,l,t)}}),e.archetype?.screens.forEach((n,r)=>{let i=[`archetype`,`screens`,r,`path`];J.includes(n.path)&&t(i,`path "${n.path}" is reserved by the generated app`);let a=o.get(n.path);a===void 0?o.set(n.path,e.screens.length+r):t(i,`path "${n.path}" is already used by screens.${a}`)})}function Dt(e){let{kind:t,...n}=Ot(e);return n}function Ot(e){let t=[...e.screens],n=new Set(t.flatMap(e=>`entity`in e?[`${e.entity}:${e.type}`]:[]));for(let r of e.entities){let e=r.screenDefaults;if(e)for(let i of e.views){if(n.has(`${r.name}:${i}`))continue;let a=i===`list`?e.list:i===`detail`?e.detail:void 0;t.push(G.parse({type:i,entity:r.name,...a}))}}return{...e,screens:t}}var $=ht.superRefine((e,t)=>{for(let n of bt(e))t.addIssue({code:`custom`,path:n.path,message:n.message})}).transform(Dt);function kt(e){return $.parse(e)}function At(e){return $.safeParse(e)}export{We as a,At as c,ze as d,S as f,ne as g,ge as h,K as i,q as l,me as m,$ as n,Y as o,w as p,z as r,kt as s,mt as t,Re as u};
@@ -0,0 +1 @@
1
+ import{t as e}from"./safety-D6ZEk3Nu.js";import{a as t,d as n,f as r,i,n as a,p as o,r as s,t as c}from"./primitives-C9dJjR2F.js";var l=Object.freeze({maxBytes:1048576,maxDepth:12,maxBlocks:2e3,maxContainerDepth:c.containerDepth,maxDataUriBytes:e,maxDocumentDataUriBytes:524288,maxTextLength:c.code,maxTableCells:c.tableColumns*c.tableRows,flowNodes:12,treeNodes:64,treeDepth:6,boardColumns:6,boardCardsPerColumn:8,terminalLines:40}),u=Object.freeze({flowNodes:l.flowNodes,treeNodes:l.treeNodes,treeDepth:l.treeDepth,boardColumns:l.boardColumns,boardCardsPerColumn:l.boardCardsPerColumn,terminalLines:l.terminalLines}),d=/^[a-z][a-z0-9-]{0,47}$/,f=[`flow`,`tree`,`board`,`terminal`];function p(e){return o(e)}function m(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function h(e,t){return typeof e!=`string`||!d.test(e)?a(t,`Use 1–48 lowercase letters, digits or hyphens, starting with a letter`):i(e)}function g(e,o){let c=t(e,o);if(!c.success)return c;if(!Array.isArray(e.nodes))return a([...o,`nodes`],`nodes must be an array`);if(e.nodes.length<1||e.nodes.length>u.flowNodes)return a([...o,`nodes`],`nodes must have 1–${u.flowNodes} items`);if(e.loopBack!==void 0&&typeof e.loopBack!=`boolean`)return a([...o,`loopBack`],`loopBack must be a boolean`);let l=[],d=new Set,f=[];if(e.nodes.forEach((e,t)=>{if(!m(e)){f.push({path:[...o,`nodes`,t],message:`Expected a node object`});return}let i=h(e.id,[...o,`nodes`,t,`id`]);if(!i.success){f.push(...i.issues);return}d.has(i.data)&&f.push({path:[...o,`nodes`,t,`id`],message:`Duplicate node id: ${i.data}`}),d.add(i.data);let a=n(e.label,[...o,`nodes`,t,`label`],120);if(!a.success){f.push(...a.issues);return}let s=r(e.tone,[...o,`nodes`,t,`tone`]);if(!s.success){f.push(...s.issues);return}let c={id:i.data,label:a.data};s.data!==void 0&&(c.tone=s.data),l.push(c)}),f.length>0)return s(f);let p={...c.data,type:`flow`,nodes:l};return e.loopBack===!0&&(p.loopBack=!0),i(p)}var _=[`file-tree`,`org`],v=e=>_.includes(e);function y(e,t){if(e.style!==void 0)return a([...t,`style`],`style was removed in 0.10.0; send variant ("file-tree" or "org") instead`);let n=e.variant;return v(n)?i(n):a([...t,`variant`],`variant must be "file-tree" or "org"`)}function b(e,o){let c=t(e,o);if(!c.success)return c;let l=y(e,o);if(!l.success)return l;if(!Array.isArray(e.nodes))return a([...o,`nodes`],`nodes must be an array`);if(e.nodes.length<1||e.nodes.length>u.treeNodes)return a([...o,`nodes`],`nodes must have 1–${u.treeNodes} items`);let d=[],f=new Map,p=[];if(e.nodes.forEach((e,t)=>{if(!m(e)){p.push({path:[...o,`nodes`,t],message:`Expected a node object`});return}let i=h(e.id,[...o,`nodes`,t,`id`]);if(!i.success){p.push(...i.issues);return}f.has(i.data)&&p.push({path:[...o,`nodes`,t,`id`],message:`Duplicate node id: ${i.data}`});let a;if(e.parentId===null)a=null;else{let n=h(e.parentId,[...o,`nodes`,t,`parentId`]);if(!n.success){p.push(...n.issues);return}a=n.data}let s=n(e.label,[...o,`nodes`,t,`label`],120);if(!s.success){p.push(...s.issues);return}let c=r(e.tone,[...o,`nodes`,t,`tone`]);if(!c.success){p.push(...c.issues);return}let l={id:i.data,parentId:a,label:s.data};c.data!==void 0&&(l.tone=c.data),d.push(l),f.set(l.id,l)}),p.length>0)return s(p);if(d.filter(e=>e.parentId===null).length===0)return a([...o,`nodes`],`A tree needs at least one root node`);for(let e=0;e<d.length;e++){let t=d[e];if(!t)continue;if(t.parentId!==null&&!f.has(t.parentId)){p.push({path:[...o,`nodes`,e,`parentId`],message:`Unknown parent id: ${t.parentId}`});continue}let n=1,r=t.parentId,i=new Set([t.id]);for(;r!==null&&f.has(r);){if(i.has(r)){p.push({path:[...o,`nodes`,e,`parentId`],message:`Tree contains a parent cycle`});break}i.add(r),n+=1,r=f.get(r)?.parentId??null}n>u.treeDepth&&p.push({path:[...o,`nodes`,e],message:`Tree depth exceeds ${u.treeDepth}`})}return p.length>0?s(p):i({...c.data,type:`tree`,variant:l.data,nodes:d})}function x(e,o){let c=t(e,o);if(!c.success)return c;if(!Array.isArray(e.columns))return a([...o,`columns`],`columns must be an array`);if(e.columns.length<1||e.columns.length>u.boardColumns)return a([...o,`columns`],`columns must have 1–${u.boardColumns} items`);let l=[],d=new Set,f=[];return e.columns.forEach((e,t)=>{if(!m(e)){f.push({path:[...o,`columns`,t],message:`Expected a column object`});return}let i=h(e.id,[...o,`columns`,t,`id`]);if(!i.success){f.push(...i.issues);return}d.has(i.data)&&f.push({path:[...o,`columns`,t,`id`],message:`Duplicate diagram id: ${i.data}`}),d.add(i.data);let a=n(e.title,[...o,`columns`,t,`title`],120);if(!a.success){f.push(...a.issues);return}if(!Array.isArray(e.cards)){f.push({path:[...o,`columns`,t,`cards`],message:`cards must be an array`});return}if(e.cards.length>u.boardCardsPerColumn){f.push({path:[...o,`columns`,t,`cards`],message:`cards must have at most ${u.boardCardsPerColumn} items`});return}let s=[];e.cards.forEach((e,i)=>{if(!m(e)){f.push({path:[...o,`columns`,t,`cards`,i],message:`Expected a card object`});return}let a=h(e.id,[...o,`columns`,t,`cards`,i,`id`]);if(!a.success){f.push(...a.issues);return}d.has(a.data)&&f.push({path:[...o,`columns`,t,`cards`,i,`id`],message:`Duplicate diagram id: ${a.data}`}),d.add(a.data);let c=n(e.title,[...o,`columns`,t,`cards`,i,`title`],120);if(!c.success){f.push(...c.issues);return}let l=r(e.tone,[...o,`columns`,t,`cards`,i,`tone`]);if(!l.success){f.push(...l.issues);return}let u={id:a.data,title:c.data};l.data!==void 0&&(u.tone=l.data),s.push(u)}),l.push({id:i.data,title:a.data,cards:s})}),f.length>0?s(f):i({...c.data,type:`board`,columns:l})}function S(e,r){let o=t(e,r);if(!o.success)return o;if(!Array.isArray(e.lines))return a([...r,`lines`],`lines must be an array`);if(e.lines.length<1||e.lines.length>u.terminalLines)return a([...r,`lines`],`lines must have 1–${u.terminalLines} items`);let c=[],l=[];return e.lines.forEach((e,t)=>{if(!m(e)){l.push({path:[...r,`lines`,t],message:`Expected a line object`});return}if(e.kind!==`prompt`&&e.kind!==`output`&&e.kind!==`comment`){l.push({path:[...r,`lines`,t,`kind`],message:`kind must be prompt, output or comment`});return}let i=n(e.text,[...r,`lines`,t,`text`],240);i.success?c.push({kind:e.kind,text:i.data}):l.push(...i.issues)}),l.length>0?s(l):i({...o.data,type:`terminal`,lines:c})}function C(e){if(!m(e))return{success:!1,issues:[{jsonPath:`$`,message:`Expected a diagram object`}]};let t=e.type,n;if(t===`flow`)n=g(e,[]);else if(t===`tree`)n=b(e,[]);else if(t===`board`)n=x(e,[]);else if(t===`terminal`)n=S(e,[]);else return{success:!1,issues:[{jsonPath:`$["type"]`,message:`type must be flow, tree, board or terminal`}]};return n.success?{success:!0,data:n.data}:{success:!1,issues:n.issues.map(e=>({jsonPath:p(e.path),message:e.message}))}}export{C as i,u as n,p as r,f as t};
@@ -0,0 +1 @@
1
+ import{t as e}from"./builders-BPwZ8kKF.js";import{f as t,l as n,p as r}from"./shared-BaZKMJeO.js";var i=Object.freeze({unknownBackground:`unknown-background`,solidConflict:`solid-conflict`,mediaKind:`media-kind`,invalidPaletteColor:`invalid-palette-color`}),a=[`background`,`foreground`,`surface`,`primary`,`accent`,`muted`,`border`,`info`,`success`,`warning`,`destructive`],o=[`background`,`surface`,`primary`,`accent`,`muted`,`inverse`],s=Object.freeze({brand:[`primary`,`info`],dusk:[`foreground`,`primary`],dawn:[`warning`,`destructive`],forest:[`success`,`info`],mist:[`muted`,`accent`,`surface`]}),c=[`brand`,`dusk`,`dawn`,`forest`,`mist`],l=[`dots`,`grid`],u=[`dark`,`light`],d=[`cover`,`contain`],f=[`center`,`top`,`bottom`,`left`,`right`],p=`^#[0-9a-fA-F]{6}$`;function m(e,t){return e.startsWith(`avatar:`)?t===`image`:!e.startsWith(`data:`)||e.startsWith(`data:${t}/`)}var h=e.refine(e.object({kind:e.literal(`solid`),token:e.optional(e.enum(o)),color:e.optional(e.string({pattern:p,max:7}))}),{code:i.solidConflict,description:"`token` and `color` are mutually exclusive; neither means `background`.",check(e,t){e.token!==void 0&&e.color!==void 0&&t.issue({message:"A solid background takes a palette `token` or a hex `color`, not both.",path:[`color`],fix:"Remove `token` or `color`."})}}),g=e.object({kind:e.literal(`gradient`),gradient:e.enum(c),angle:e.optional(e.int({min:0,max:359}))}),_=e.object({kind:e.literal(`pattern`),pattern:e.enum(l)}),v={tone:e.optional(e.enum(u)),overlay:e.optional(e.number({min:0,max:.9})),position:e.optional(e.enum(f))},y=e.string({min:1,max:2e6,pattern:n}),b=e.refine(e.object({kind:e.enum([`image`,`image-full`]),src:r,alt:e.optional(t(200)),fit:e.optional(e.enum(d)),...v}),{code:i.mediaKind,description:"An image `src` is not a `data:video/…` URI.",check(e,t){m(e.src,`image`)||t.issue({message:`An image background needs an image source.`,path:[`src`],fix:'Use an image path, a `data:image/…` URI or an avatar, or `kind: "video"`.'})}}),x=e.refine(e.object({kind:e.enum([`video`,`video-full`]),src:r,poster:e.optional(y),...v}),{code:i.mediaKind,description:"A video `src` is not an image `data:` URI or an avatar; a `poster` is an image.",check(e,t){m(e.src,`video`)||t.issue({message:`A video background needs a video source.`,path:[`src`],fix:'Use a video path or a `data:video/…` URI, or `kind: "image"`.'}),e.poster!==void 0&&!m(e.poster,`image`)&&t.issue({message:`A video poster must be an image.`,path:[`poster`],fix:"Use an image path, a `data:image/…` URI or an avatar."})}}),S=e.union([h,g,_,b,x],{discriminator:`kind`,code:i.unknownBackground,description:`A background spec: solid, gradient, pattern, image(-full) or video(-full).`}),C=Object.freeze({"solid-color":Object.freeze({kind:`solid`,token:`background`}),"solid-surface":Object.freeze({kind:`solid`,token:`surface`}),"solid-primary":Object.freeze({kind:`solid`,token:`primary`}),"solid-accent":Object.freeze({kind:`solid`,token:`accent`}),"solid-muted":Object.freeze({kind:`solid`,token:`muted`}),"solid-inverse":Object.freeze({kind:`solid`,token:`inverse`}),"gradient-brand":Object.freeze({kind:`gradient`,gradient:`brand`}),"gradient-dusk":Object.freeze({kind:`gradient`,gradient:`dusk`}),"gradient-dawn":Object.freeze({kind:`gradient`,gradient:`dawn`}),"gradient-forest":Object.freeze({kind:`gradient`,gradient:`forest`}),"gradient-mist":Object.freeze({kind:`gradient`,gradient:`mist`}),"pattern-dots":Object.freeze({kind:`pattern`,pattern:`dots`}),"pattern-grid":Object.freeze({kind:`pattern`,pattern:`grid`})}),w=[`solid-color`,`solid-surface`,`solid-primary`,`solid-accent`,`solid-muted`,`solid-inverse`,`gradient-brand`,`gradient-dusk`,`gradient-dawn`,`gradient-forest`,`gradient-mist`,`pattern-dots`,`pattern-grid`],T=`solid-color`,E=e.enum(w,{code:i.unknownBackground,description:`A background preset id.`}),D=e.union([E,S],{description:`A background preset id, or a background spec object.`});function O(e){return typeof e==`string`&&Object.hasOwn(C,e)}export{c as a,o as c,O as d,s as i,T as l,C as n,a as o,w as r,l as s,i as t,D as u};
@@ -0,0 +1 @@
1
+ import{a as e,d as t,g as n,h as r,o as i,r as a}from"./schemas-Cd-wWAs4.js";import{l as o,n as s,r as c}from"./src-E7_MqRCx.js";var l=Object.freeze({maxTitle:120,maxDescription:500,maxStyleId:64,maxSections:32,maxBlocksPerSection:24,maxNavItems:24,maxFormRefs:16,maxDocBlocks:200,maxTocDepth:4}),u=e=>n().min(1).max(e),d=e=>n().min(1).max(e).optional(),f=n().min(1).max(l.maxStyleId).regex(/^[a-z][a-z0-9-]*$/,`style refs are lowercase kebab-case`),p={id:o,title:u(l.maxTitle),description:d(l.maxDescription),style:f.optional()};r(p);var m=r({id:o,anchor:o.optional(),title:d(l.maxTitle),role:a([`hero`,`body`,`footer`,`cta`,`features`,`pricing`,`faq`]).optional(),blocks:e(c).max(l.maxBlocksPerSection)}),h=r({id:o,label:u(80),href:n().min(2).max(120).regex(/^#[a-z][a-z0-9-]*$/,`nav href must be a #fragment with a kebab-case id`)}),g=r({formId:o,sectionId:o.optional()});function _(e,t,n,r){let i=new Set;e.forEach((e,a)=>{i.has(e)&&t.addIssue({code:`custom`,path:[...n,a],message:`${r} ids must be unique (duplicate "${e}")`}),i.add(e)})}function v(e,t){for(let n of e)if(n.type===`form`&&n.id&&t.add(n.id),n.type===`columns`)for(let e of n.columns)v(e,t);else if(n.type===`tabs`)for(let e of n.panels)v(e.blocks,t);else n.type===`reveal`&&v(n.blocks,t)}var y=r({...p,sections:e(m).min(1).max(l.maxSections),nav:e(h).max(l.maxNavItems).optional(),forms:e(g).max(l.maxFormRefs).optional()}).superRefine((e,t)=>{_(e.sections.map(e=>e.id),t,[`sections`],`Section`);let n=e.sections.map(e=>e.anchor??e.id);_(n,t,[`sections`],`Section anchor`);let r=new Set;for(let t of e.sections)v(t.blocks,r);if(e.forms?.forEach((n,i)=>{r.has(n.formId)||t.addIssue({code:`custom`,path:[`forms`,i,`formId`],message:`formId "${n.formId}" does not match a form block in sections`}),n.sectionId!==void 0&&(e.sections.find(e=>e.id===n.sectionId)||t.addIssue({code:`custom`,path:[`forms`,i,`sectionId`],message:`sectionId "${n.sectionId}" is not a section on this page`}))}),e.nav){_(e.nav.map(e=>e.id),t,[`nav`],`Nav item`);let r=new Set(n);e.nav.forEach((e,n)=>{let i=e.href.slice(1);r.has(i)||t.addIssue({code:`custom`,path:[`nav`,n,`href`],message:`nav href "#${i}" must match a section id or anchor`})})}}),b=r({depth:t().int().min(2).max(l.maxTocDepth).optional(),sticky:i().optional()}),x=r({pageBreaks:a([`none`,`heading`]).optional(),hideChrome:i().optional()}),S=r({...p,blocks:e(c).min(1).max(l.maxDocBlocks),toc:b.optional(),print:x.optional()}).superRefine((e,t)=>{let n=s.safeParse(e.blocks);if(!n.success)for(let e of n.error.issues)t.addIssue({code:`custom`,path:[`blocks`,...e.path],message:e.message})});function C(e){let t=S.safeParse(e);return t.success?{success:!0,data:t.data,error:null}:{success:!1,data:null,error:t.error}}export{C as i,l as n,y as r,S as t};
@@ -0,0 +1 @@
1
+ import{a as e,c as t,d as n,f as r,g as i,m as a,o,r as s,u as c,y as l}from"./schemas-Cd-wWAs4.js";import{a as u}from"./session-Qh0_5nJW.js";var d=i().refine(e=>!Number.isNaN(Date.parse(e)),{message:`Expected an ISO date`}),f=d.nullable().default(null),p=n().int().nonnegative(),m=i().regex(/^#\/[^\s]*$/,`Expected an in-app hash route such as "#/sign-in"`),h=[`google`,`github`,`microsoft`,`apple`,`slack`],g=s(h),_=r({provider:g,subject:i().min(1),email:t(),linkedAt:d}),v=r({productUpdates:o(),securityAlerts:o(),workspaceActivity:o()}),y={productUpdates:!1,securityAlerts:!0,workspaceActivity:!0},b=r({id:i().min(1),personaId:i().min(1),email:t(),emailVerified:o().default(!1),simulatedPassword:i().nullable().default(null),providers:e(_).default([]),notificationPreferences:v.optional(),status:s([`active`,`locked`,`disabled`]).default(`active`),failedAttempts:n().int().nonnegative().default(0),createdAt:d,lastSignInAt:f});r({id:i().min(1),accountId:i().nullable().default(null),personaId:i().nullable().default(null),method:s([`password`,`oauth`,`magic-link`,`phone`,`mfa`,`invite`,`sign-up`,`sign-out`]),provider:g.nullable().default(null),outcome:s([`success`,`failure`]),reason:i().nullable().default(null),at:d});var x=r({id:i().min(1),kind:s([`verify-email`,`magic-link`,`phone-otp`,`password-reset`,`invite`,`oauth-state`,`mfa-challenge`]),email:t(),accountId:i().nullable().default(null),payload:a(i(),l()).default({}),createdAt:d,expiresAt:d,consumedAt:f}),S=r({code:i().min(1),usedAt:f}),C=r({id:i().min(1),accountId:i().min(1),method:c(`totp-sim`).default(`totp-sim`),seed:i().min(1),status:s([`pending`,`active`]).default(`pending`),enrolledAt:d,recoveryCodes:e(S).default([])});r({id:i().min(1),organizationId:i().min(1),email:t(),role:i().min(1),invitedBy:i().min(1),tokenId:i().nullable().default(null),status:s([`pending`,`accepted`,`revoked`,`expired`]).default(`pending`),createdAt:d,expiresAt:d,acceptedAt:f,acceptedBy:i().nullable().default(null),avatar:u.optional()});var w=[`verify-email`,`magic-link`,`password-reset`,`invite`,`receipt`,`trial`,`notification`],T=r({label:i().min(1),href:m}),E=r({id:i().min(1),recipient:t(),personaId:i().nullable().default(null),kind:s(w),subject:i().min(1),body:i(),action:T.nullable().default(null),at:d,readAt:f,archivedAt:f}),D=r({id:i().min(1),organizationId:i().min(1),planId:i().min(1),status:s([`trialing`,`active`,`past_due`,`canceled`,`expired`]),interval:s([`month`,`year`]).default(`month`),seats:n().int().positive().default(1),unitAmountCents:p,currency:i().length(3).default(`USD`),trialEndsAt:f,currentPeriodStart:d,currentPeriodEnd:d,cancelAtPeriodEnd:o().default(!1),createdAt:d}),O=r({description:i().min(1),amountCents:n().int()}),k=r({id:i().min(1),organizationId:i().min(1),subscriptionId:i().min(1).nullable(),status:s([`paid`,`open`,`void`,`failed`]),amountCents:n().int(),currency:i().length(3).default(`USD`),lines:e(O).default([]),periodStart:d,periodEnd:d,issuedAt:d,paidAt:f});r({id:i().min(1),personaId:i().min(1),organizationId:i().nullable().default(null),currentStep:i().min(1),completedSteps:e(i()).default([]),skippedSteps:e(i()).default([]),answers:a(i(),l()).default({}),startedAt:f,updatedAt:d,completedAt:f});var A={1:{saas_accounts:`id, &email, personaId`,saas_sessions_log:`id, accountId, personaId, at`,saas_tokens:`id, kind, email, accountId, expiresAt`,saas_mfa:`id, &accountId`,saas_invitations:`id, organizationId, email, status, tokenId`,saas_inbox:`id, recipient, personaId, kind, at`,saas_subscriptions:`id, organizationId, status`,saas_invoices:`id, organizationId, subscriptionId, issuedAt`,saas_onboarding:`id, personaId, organizationId`}},j=[`saas_accounts`,`saas_sessions_log`,`saas_tokens`,`saas_mfa`,`saas_invitations`,`saas_inbox`,`saas_subscriptions`,`saas_invoices`,`saas_onboarding`];function M(e){let t=e.tables??j;for(let e of t)if(!j.includes(e))throw Error(`Unknown SaaS kit table "${e}".`);return t}function N(e=1,t={}){let n=A[e];if(!n)throw Error(`Unknown SaaS kit layout version ${e}. Known: ${Object.keys(A).join(`, `)}.`);let r={};for(let e of M(t))r[e]=n[e];return r}function P(e={},t={}){let n={};for(let r of M(t))n[r]=[...e[r]??[]];for(let t of Object.keys(e))if(!(t in n))throw Error(`Rows were given for "${t}", which is not a selected kit table.`);return n}var F={saas_accounts:{personaId:`py_personas`},saas_sessions_log:{accountId:`saas_accounts`,personaId:`py_personas`},saas_tokens:{accountId:`saas_accounts`},saas_mfa:{accountId:`saas_accounts`},saas_invitations:{organizationId:`py_organizations`,invitedBy:`py_personas`,tokenId:`saas_tokens`,acceptedBy:`py_personas`},saas_inbox:{personaId:`py_personas`},saas_subscriptions:{organizationId:`py_organizations`},saas_invoices:{organizationId:`py_organizations`,subscriptionId:`saas_subscriptions`},saas_onboarding:{personaId:`py_personas`,organizationId:`py_organizations`}},I={saas_accounts:[`createdAt`,`lastSignInAt`],saas_sessions_log:[`at`],saas_tokens:[`createdAt`,`consumedAt`],saas_mfa:[`enrolledAt`],saas_invitations:[`createdAt`,`acceptedAt`],saas_inbox:[`at`,`readAt`,`archivedAt`],saas_subscriptions:[`createdAt`,`currentPeriodStart`],saas_invoices:[`issuedAt`,`paidAt`],saas_onboarding:[`startedAt`,`updatedAt`,`completedAt`]};function L(e={}){let t=M(e),n=new Set(t),r={},i={};for(let e of t){let t={};for(let[r,i]of Object.entries(F[e]))(!i.startsWith(`saas_`)||n.has(i))&&(t[r]=i);r[e]=t,i[e]=I[e]}return{relations:r,timestamps:i}}function R(...e){let t={},n={};for(let r of e){for(let[e,n]of Object.entries(r?.relations??{}))t[e]={...t[e],...n};for(let[e,t]of Object.entries(r?.timestamps??{}))n[e]=[...new Set([...n[e]??[],...t])]}return{relations:t,timestamps:n}}export{b as a,C as c,D as d,x as f,P as g,N as h,h as i,v as l,L as m,m as n,E as o,R as p,w as r,k as s,y as t,g as u};
@@ -0,0 +1 @@
1
+ import{t as e}from"./builders-BPwZ8kKF.js";import{d as t,f as n,l as r,n as i}from"./shared-BaZKMJeO.js";import{u as a}from"./schema-BRYG8Msr.js";import{a as o,n as s}from"./theme-CC-SlXOF.js";var c=[`compact`,`default`,`comfortable`,`spacious`],l=[`none`,`small`,`medium`,`large`,`full`],u=[`full`,`subtle`,`none`],d=[`none`,`top`,`bottom`],f=e.string({min:1,max:512,pattern:r}),p=e.object({theme:e.optional(s,{description:`Catalog id or reference; absent → the host default theme.`}),fontPair:e.optional(o,{description:`Font pairing id; unknown → warning, theme font.`}),aspect:e.optional(e.enum(i),{description:`Default '16:9'.`}),density:e.optional(e.enum(c),{description:`Default 'default' (0.875 / 1 / 1.125 / 1.25).`}),radius:e.optional(e.enum(l),{description:`Default 'medium'.`}),motion:e.optional(e.enum(u),{description:`Default 'full'.`}),transition:e.optional(t,{description:`Default 'fade'.`}),background:e.optional(a,{description:`Default 'solid-color'.`}),logo:e.optional(f),footer:e.optional(n(160)),slideNumbers:e.optional(e.boolean(),{description:`Default true.`}),progress:e.optional(e.enum(d),{description:`Default 'bottom'.`}),codeTheme:e.optional(o,{description:`Code highlight theme id; unknown → warning.`}),math:e.optional(e.boolean(),{description:"Enables `$…$` TeX math. Default false."})},{description:`Deck style: theme, typography, canvas, motion and chrome.`}),m=Object.freeze({aspect:`16:9`,density:`default`,radius:`medium`,motion:`full`,transition:`fade`,background:`solid-color`,slideNumbers:!0,progress:`bottom`,math:!1});export{p as n,m as t};
@@ -0,0 +1 @@
1
+ import{d as e,i as t,n,r,s as i,t as a,y as o}from"./primitives-C9dJjR2F.js";import{i as s}from"./parse-B7SUs8-I.js";import{n as c,t as l}from"./evaluate-Ctzw_e6W.js";var u=/^[a-z][a-z0-9-]{0,31}$/,d=/^[a-z][a-z0-9_]{0,31}$/,f=[`number`,`compact`,`cents`,`percent`];function p(e,r){return typeof e!=`object`||!e||Array.isArray(e)?n(r,`Expected an object`):t(e)}function m(e,r){return typeof e!=`string`||!u.test(e)?n(r,`Expected a stable option id (lowercase, max 32)`):t(e)}function h(i,o,s){if(!Array.isArray(i)||i.length<2)return n(o,`Expected at least two options`);if(i.length>s)return n(o,`At most ${s} options`);let c=[],l=new Set,u=[];for(let t=0;t<i.length;t+=1){let n=[...o,t],r=p(i[t],n);if(!r.success){u.push(...r.issues);continue}let s=m(r.data.id,[...n,`id`]),d=e(r.data.label,[...n,`label`],a.plain);s.success?d.success?l.has(s.data)?u.push({path:[...n,`id`],message:`Duplicate option id`}):(l.add(s.data),c.push({id:s.data,label:d.data})):u.push(...d.issues):u.push(...s.issues)}return u.length>0?r(u):t(c)}function g(e,r,s){let c=i(e.question,[...r,`question`],a.shortMarkdown);if(!c.success)return c;let l=h(e.options,[...r,`options`],a.pollOptions);if(!l.success)return l;let u={...s,type:`poll`,question:c.data,options:l.data};if(e.allowMultiple===!0&&(u.allowMultiple=!0),e.tone!==void 0){if(!o(e.tone))return n([...r,`tone`],`Invalid tone`);u.tone=e.tone}return t(u)}function _(o,s,c){if(!Array.isArray(o.questions)||o.questions.length<1)return n([...s,`questions`],`Expected at least one question`);if(o.questions.length>a.steps)return n([...s,`questions`],`At most ${a.steps} questions`);let l=[],u=new Set,d=[];for(let e=0;e<o.questions.length;e+=1){let t=[...s,`questions`,e],n=p(o.questions[e],t);if(!n.success){d.push(...n.issues);continue}let r=m(n.data.id,[...t,`id`]),c=i(n.data.prompt,[...t,`prompt`],a.shortMarkdown),f=h(n.data.options,[...t,`options`],a.pollOptions);if(!r.success||!c.success||!f.success){r.success||d.push(...r.issues),c.success||d.push(...c.issues),f.success||d.push(...f.issues);continue}if(u.has(r.data)){d.push({path:[...t,`id`],message:`Duplicate question id`});continue}u.add(r.data);let g=m(n.data.correctId,[...t,`correctId`]);if(!g.success){d.push(...g.issues);continue}if(!f.data.some(e=>e.id===g.data)){d.push({path:[...t,`correctId`],message:`correctId must match an option id`});continue}let _={id:r.data,prompt:c.data,options:f.data,correctId:g.data};if(n.data.explanation!==void 0){let e=i(n.data.explanation,[...t,`explanation`],a.shortMarkdown);if(!e.success){d.push(...e.issues);continue}_.explanation=e.data}l.push(_)}if(d.length>0)return r(d);let f={...c,type:`quiz`,questions:l};if(o.title!==void 0){let t=e(o.title,[...s,`title`],a.heading);if(!t.success)return t;f.title=t.data}return t(f)}function v(e,r){return e===void 0?t(void 0):typeof e!=`number`||!Number.isFinite(e)?n(r,`Expected a finite number`):t(e)}function y(o,c,l){if(!Array.isArray(o.inputs)||o.inputs.length<1)return n([...c,`inputs`],`Expected at least one input`);if(o.inputs.length>a.formFields)return n([...c,`inputs`],`At most ${a.formFields} inputs`);let u=[],m=new Set,h=[];for(let t=0;t<o.inputs.length;t+=1){let n=[...c,`inputs`,t],r=p(o.inputs[t],n);if(!r.success){h.push(...r.issues);continue}if(typeof r.data.name!=`string`||!d.test(r.data.name)){h.push({path:[...n,`name`],message:`Invalid input name`});continue}if(m.has(r.data.name)){h.push({path:[...n,`name`],message:`Duplicate input name`});continue}m.add(r.data.name);let i=e(r.data.label,[...n,`label`],a.plain);if(!i.success){h.push(...i.issues);continue}let s={name:r.data.name,label:i.data};for(let e of[`min`,`max`,`step`,`default`]){if(r.data[e]===void 0)continue;let t=v(r.data[e],[...n,e]);t.success?t.data!==void 0&&(s[e]=t.data):h.push(...t.issues)}u.push(s)}if(h.length>0)return r(h);let g=s(o.formula,{variables:[...m]});if(!g.success)return n([...c,`formula`],g.diagnostics[0]?.message??`Invalid formula`);let _={...l,type:`calculator`,inputs:u,formula:g.formula};if(o.title!==void 0){let t=e(o.title,[...c,`title`],a.heading);if(!t.success)return t;_.title=t.data}if(o.description!==void 0){let e=i(o.description,[...c,`description`],a.shortMarkdown);if(!e.success)return e;_.description=e.data}if(o.outputLabel!==void 0){let t=e(o.outputLabel,[...c,`outputLabel`],a.plain);if(!t.success)return t;_.outputLabel=t.data}if(o.unit!==void 0){if(typeof o.unit!=`string`||!f.includes(o.unit))return n([...c,`unit`],`Invalid formula unit`);_.unit=o.unit}return t(_)}function b(i,o,s){if(!Array.isArray(i.items)||i.items.length<1)return n([...o,`items`],`Expected at least one item`);if(i.items.length>a.listItems)return n([...o,`items`],`At most ${a.listItems} items`);let c=[],l=new Set,u=[];for(let t=0;t<i.items.length;t+=1){let n=[...o,`items`,t],r=p(i.items[t],n);if(!r.success){u.push(...r.issues);continue}let s=m(r.data.id,[...n,`id`]),d=e(r.data.label,[...n,`label`],a.plain);if(!s.success||!d.success){s.success||u.push(...s.issues),d.success||u.push(...d.issues);continue}if(l.has(s.data)){u.push({path:[...n,`id`],message:`Duplicate item id`});continue}l.add(s.data);let f={id:s.data,label:d.data};r.data.done===!0&&(f.done=!0),c.push(f)}if(u.length>0)return r(u);let d={...s,type:`checklist`,items:c};if(i.title!==void 0){let t=e(i.title,[...o,`title`],a.heading);if(!t.success)return t;d.title=t.data}return t(d)}function x(e,t,n,r){switch(e){case`poll`:return g(t,n,r);case`quiz`:return _(t,n,r);case`calculator`:return y(t,n,r);case`checklist`:return b(t,n,r);default:return null}}function S(e,t){let n=l(e.formula,t);return{ok:!0,value:n,formatted:c(n,e.unit??`number`)}}export{x as n,S as t};
@@ -0,0 +1 @@
1
+ import{t as e}from"./services-B-NMB4En.js";import{n as t}from"./SchemaForm-jeaBTDUH.js";function n(e,t){return{name:e,type:`password`,label:t,required:!0,autocomplete:`off`}}function r(e,t){let n=e[t];return typeof n==`string`?n:``}function i(e){let n=t(e,{tier:`developer`});if(!n.ok)throw Error(`Invalid kit form "${e.title}": ${n.issues.map(e=>`${e.path} ${e.message}`).join(`; `)}`);return n.form}function a(t,n,r){if(t.ok)return{ok:!0};let i=t.error;if(e(i)){let e={},t=[];for(let[r,a]of Object.entries(i.issues)){let i=r.split(`.`)[0]??r;n.byName.has(i)?e[i]??=a:t.push(a)}return{ok:!1,errors:e,...t.length>0?{message:t.join(` `)}:{}}}return{ok:!1,message:i instanceof Error?i.message:r}}export{r as i,a as n,n as r,i as t};
@@ -0,0 +1 @@
1
+ import{d as e,i as t,n,s as r,t as i,u as a,y as o}from"./primitives-C9dJjR2F.js";var s=64,c=6,l=256,u=400,d=e=>({o:Object.fromEntries(e.split(` `).map(e=>[e,`text`]))}),f=d(`table category value`),p={v:[{"type!":{e:[`number`]},locale:`text`,style:{e:[`decimal`,`percent`,`currency`]},currency:`text`,notation:{e:[`standard`,`compact`]},minimumFractionDigits:{min:0,max:20,int:!0},maximumFractionDigits:{min:0,max:20,int:!0}},{"type!":{e:[`date`]},locale:`text`,timeZone:`text`,dateStyle:{e:[`short`,`medium`,`long`,`full`]},timeStyle:{e:[`short`,`medium`,`long`,`full`]}}]},m=d(`tableSummary measure point value noData current minimum maximum target range complete total percent`),h=d(`tableSummary step count conversion from to value node connection`),g=d(`table region point location value noData low high`),_={a:{o:{"id!":`text`,"label!":`text`,"abbr!":`text`,"col!":`int`,"row!":`int`}},u:`id`,n:256},v={width:`dim`,height:`dim`},y={"data!":{a:{o:{"id!":`text`,"label!":`text`,"value!":`num`}},u:`id`},labels:f,size:`dim`,innerRatio:{min:0,max:.85},padAngle:`nonneg`},b=e=>({a:{o:{"id!":`text`,label:`text`,value:e}},u:`id`}),x=e=>({a:{o:{"source!":`text`,"target!":`text`,[e]:`pos`}},n:128}),S={pie:y,donut:y,sunburst:{"root!":`tree`,labels:f,size:`dim`,innerRatio:{min:0,max:.75},padAngle:`nonneg`},treemap:{"root!":`tree`,labels:f,...v,padding:`nonneg`},sparkline:{"values!":{a:`num?`,n:256},format:p,period:`text`,variant:{e:[`line`,`area`,`bar`]},height:`dim`,showLast:`bool`,labels:m},bullet:{"value!":`num`,max:`pos`,format:p,target:`num`,ranges:{a:`num`,n:8},labels:m},gauge:{"value!":`num`,format:p,min:`num`,max:`num`,thresholds:{a:`num`,n:8},bandLabels:{a:`text`,n:9},size:`dim`,thickness:`dim`,labels:m},"progress-ring":{"value!":`num`,format:p,max:`pos`,size:`dim`,thickness:`dim`,labels:m},funnel:{"steps!":{a:{o:{"id!":`text`,label:`text`,"value!":`num`}},u:`id`,n:12},orientation:{e:[`vertical`,`horizontal`]},...v,labels:h},sankey:{"nodes!":b(`text`),"links!":x(`value!`),...v,labels:h},network:{"nodes!":b(`pos`),"links!":x(`value`),...v,labels:h},"geo-map":{"data!":{r:`num?`,n:256},shape:_,labels:g,...v},"geo-point-map":{"points!":{a:{o:{"id!":`text`,"label!":`text`,"regionId!":`text`,"value!":`num?`,offset:{o:{"x!":{min:-.4,max:.4},"y!":{min:-.4,max:.4}}}}},u:`id`},shape:_,labels:g,...v},histogram:{"values!":{a:`num?`,n:1024},thresholds:{a:`num`,n:s},binCount:{min:1,max:s,int:!0},domain:`pair`,labels:d(`table range count`),...v},pack:{"root!":`tree`,labels:f,...v,padding:`nonneg`},calendar:{"start!":`date`,"end!":`date`,values:{r:`num`,n:u},weekStartsOn:{min:0,max:6,int:!0},cellSize:`dim`,gap:`nonneg`,labels:d(`table date value noData`)}},C=e=>{let t={"id!":`text`,"label!":`text`,color:`color`},n={e:[`line`]},r={e:[`band`]},i={e:[`x`]},a={e:[`y`]};return{a:{v:[{...t,"type!":n,"axis!":i,"value!":`textnum`},{...t,"type!":n,"axis!":a,"value!":e},{...t,"type!":r,"axis!":i,"start!":`textnum`,"end!":`textnum`},{...t,"type!":r,"axis!":a,"start!":e,"end!":e},{...t,"type!":{e:[`point`]},"x!":`textnum`,"y!":e}]},u:`id`,n:16}},w={annotations:C(`num`),renderer:{e:[`svg`,`canvas`,`auto`]},interactive:`bool`,fullDomain:`pair`,visibleDomain:`pair`,xKind:{e:[`linear`,`category`,`time`]},locale:`text`},T={annotations:C(`textnum`),interactive:`bool`,...v},E={...T,series:{a:{o:{"id!":`text`,"label!":`text`,color:`color`}},u:`id`,n:8}},D={line:w,area:w,bar:w,"stacked-bar":w,combo:w,heatmap:T,scatter:E,bubble:E},O={"id!":`text`,label:`text`,value:`nonneg`,children:{a:`tree`,u:`id`}},k=/^\d{4}-\d{2}-\d{2}$/,A=/^var\(--[a-z0-9-]+\)$/;function j(e){if(typeof e!=`object`||!e||Array.isArray(e))return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null}function M(e){return typeof e==`number`&&Number.isFinite(e)}function N(e){return typeof e==`number`?e:Date.parse(`${e}T00:00:00Z`)}function P(e,r,i,a,o){if(!j(r))return n(i,`Expected a plain object`);let s=new Map;for(let[t,n]of Object.entries(e)){let e=t.endsWith(`!`);s.set(e?t.slice(0,-1):t,{spec:n,required:e})}let c={};for(let e of Object.keys(r))if(!s.has(e))return n([...i,e],`Unknown chart prop "${e}"`);for(let[e,{spec:t,required:l}]of s){let s=r[e];if(s===void 0){if(l)return n([...i,e],`${e} is required`);continue}let u=F(t,s,[...i,e],a,o);if(!u.success)return u;c[e]=u.data}return t(c)}function F(r,a,o,u,d){if(typeof r==`object`){if(`e`in r)return typeof a==`string`&&r.e.includes(a)?t(a):n(o,`Expected one of ${r.e.join(`, `)}`);if(`min`in r)return!M(a)||a<r.min||a>r.max?n(o,`Expected a number from ${r.min} to ${r.max}`):r.int&&!Number.isInteger(a)?n(o,`Expected an integer`):t(a);if(`o`in r)return P(r.o,a,o,u,d);if(`v`in r){for(let e of r.v){let t=P(e,a,o,u,d);if(t.success)return t}return n(o,`Does not match any allowed shape`)}let c=r.n??s;if(`r`in r){if(!j(a))return n(o,`Expected a plain object`);let s=Object.entries(a);if(s.length>c)return n(o,`At most ${c} entries`);let l={};for(let[t,n]of s){let a=e(t,[...o,t],i.plain);if(!a.success)return a;let s=F(r.r,n,[...o,t],u,d);if(!s.success)return s;l[t]=s.data}return t(l)}if(!Array.isArray(a))return n(o,`Expected an array`);if(a.length>c)return n(o,`At most ${c} items`);if(a.length<(r.m??0))return n(o,`At least ${r.m} item needed`);let l=[],f=new Set;for(let e=0;e<a.length;e+=1){let t=F(r.a,a[e],[...o,e],u,d);if(!t.success)return t;if(r.u!==void 0){let i=t.data[r.u];if(f.has(i))return n([...o,e,r.u],`Duplicate ${r.u} "${String(i)}"`);f.add(i)}l.push(t.data)}return t(l)}switch(r){case`text`:return e(a,o,i.plain);case`token`:return typeof a==`string`&&/^[a-z][a-z0-9_-]{0,31}$/.test(a)?t(a):n(o,`id must be a short lowercase token`);case`textnum`:return M(a)?t(a):e(a,o,i.plain);case`color`:return typeof a==`string`&&A.test(a)?t(a):n(o,`color must be a CSS var(--token) reference`);case`bool`:return typeof a==`boolean`?t(a):n(o,`Expected a boolean`);case`num?`:return a===null?t(null):M(a)?t(a):n(o,`Expected a finite number or null`);case`pair`:return Array.isArray(a)&&a.length===2&&a.every(M)?t([a[0],a[1]]):n(o,`Expected two finite numbers`);case`date`:return M(a)||typeof a==`string`&&k.test(a)&&!Number.isNaN(N(a))?t(a):n(o,`Expected an ISO date (YYYY-MM-DD) or epoch milliseconds`);case`tree`:return u.nodes+=1,d>=c?n(o,`Hierarchy may be at most ${c} levels deep`):u.nodes>l?n(o,`Hierarchy may have at most ${l} nodes`):P(O,a,o,u,d+1)}return M(a)?r===`int`&&!Number.isInteger(a)?n(o,`Expected an integer`):r===`nonneg`&&a<0?n(o,`Expected a number ≥ 0`):(r===`pos`||r===`dim`)&&a<=0?n(o,`Expected a number > 0`):r===`dim`&&a>i.mediaDimension?n(o,`Expected at most ${i.mediaDimension}`):t(a):n(o,`Expected a finite number`)}function I(e,t,r){let i=F(e===`heatmap`?{a:{o:{"x!":`text`,"y!":`text`,"value!":`num`}},n:400,m:1}:e===`scatter`||e===`bubble`?{a:{o:{"id!":`token`,"label!":`text`,"x!":`num`,"y!":`num`,[e===`bubble`?`r!`:`r`]:`nonneg`,seriesId:`token`,color:`color`}},u:`id`,m:1}:{a:{o:{"id!":`token`,"label!":`text`,"points!":{a:{o:{"x!":`textnum`,"y!":`num?`}},u:`x`,m:1},color:`color`}},u:`id`,n:8,m:1},t,r,{nodes:0},0);if(!i.success||e===`heatmap`||e===`scatter`||e===`bubble`)return i;let a=i.data,o=typeof a[0]?.points[0]?.x;return a.some(e=>e.points.some(e=>typeof e.x!==o))?n(r,`x`):i}function L(e){return Object.hasOwn(S,e)}function R(e,r,i){let a=P(L(e)?S[e]:D[e],r,i,{nodes:0},0);if(!a.success)return a;let o=a.data;if(e===`sankey`||e===`network`){let e=new Set(o.nodes.map(e=>e.id)),t=o.links;for(let r=0;r<t.length;r+=1)for(let a of[`source`,`target`])if(!e.has(t[r]?.[a]))return n([...i,`links`,r,a],`${a} must name a node id`)}if(e===`calendar`){let e=N(o.start),t=N(o.end);if(t<e||t-e>u*864e5)return n([...i,`end`],`end must follow start within ${u} days`)}return t(o)}var z=[`line`,`area`,`bar`,`stacked-bar`,`combo`,`heatmap`,`scatter`,`bubble`,`pie`,`donut`,`sunburst`,`treemap`,`sparkline`,`bullet`,`gauge`,`progress-ring`,`funnel`,`sankey`,`network`,`geo-map`,`geo-point-map`,`histogram`,`pack`,`calendar`];function B(e,r){return j(e)?t(e):n(r,`Expected a plain object`)}function V(e,r){return e===void 0?t(void 0):o(e)?t(e):n(r,`tone must be a known block tone`)}function H(e,r){return typeof e!=`string`||!/^[a-z][a-z0-9_-]{0,31}$/.test(e)?n(r,`column id must be a short lowercase token`):t(e)}function U(r,a,o){if(!Array.isArray(r.columns)||r.columns.length===0)return n([...a,`columns`],`table needs at least one column`);if(r.columns.length>i.tableColumns)return n([...a,`columns`],`table may have at most ${i.tableColumns} columns`);if(!Array.isArray(r.rows))return n([...a,`rows`],`table rows must be an array`);if(r.rows.length>i.tableRows)return n([...a,`rows`],`table may have at most ${i.tableRows} rows`);let s=[],c=new Set;for(let t=0;t<r.columns.length;t+=1){let o=[...a,`columns`,t],l=B(r.columns[t],o);if(!l.success)return l;let u=H(l.data.id,[...o,`id`]);if(!u.success)return u;if(c.has(u.data))return n([...o,`id`],`duplicate column id "${u.data}"`);c.add(u.data);let d=e(l.data.label,[...o,`label`],i.plain);if(!d.success)return d;s.push({id:u.data,label:d.data})}let l=[];for(let t=0;t<r.rows.length;t+=1){let o=[...a,`rows`,t],c=B(r.rows[t],o);if(!c.success)return c;let u={};for(let t of s){let r=c.data[t.id];if(r==null)u[t.id]=null;else if(typeof r==`number`){if(!Number.isFinite(r))return n([...o,t.id],`numeric cells must be finite`);u[t.id]=r}else if(typeof r==`string`){let n=e(r,[...o,t.id],i.plain);if(!n.success)return n;u[t.id]=n.data}else return n([...o,t.id],`cell must be string, number or null`)}l.push(u)}let u;if(r.caption!==void 0){let t=e(r.caption,[...a,`caption`],i.plain);if(!t.success)return t;u=t.data}return t({...o,type:`table`,columns:s,rows:l,...u===void 0?{}:{caption:u}})}function W(e,r){if(e===void 0)return t(void 0);let a=i.trendPoints;if(!Array.isArray(e)||e.length<2||e.length>a)return n(r,`trend needs 2–${a} numbers`);for(let t=0;t<e.length;t+=1){let i=e[t];if(typeof i!=`number`||!Number.isFinite(i))return n([...r,t],`Expected a finite number`)}return t([...e])}function G(r,a,o){if(!Array.isArray(r)||r.length===0)return n(a,`needs at least one item`);if(r.length>o)return n(a,`at most ${o} items`);let s=[];for(let t=0;t<r.length;t+=1){let n=[...a,t],o=B(r[t],n);if(!o.success)return o;let c=e(o.data.label,[...n,`label`],i.plain);if(!c.success)return c;let l=e(o.data.value,[...n,`value`],i.plain);if(!l.success)return l;let u;if(o.data.hint!==void 0){let t=e(o.data.hint,[...n,`hint`],i.plain);if(!t.success)return t;u=t.data}let d;if(o.data.delta!==void 0){let t=e(o.data.delta,[...n,`delta`],i.plain);if(!t.success)return t;d=t.data}let f=V(o.data.tone,[...n,`tone`]);if(!f.success)return f;let p=W(o.data.trend,[...n,`trend`]);if(!p.success)return p;s.push({label:c.data,value:l.data,...u===void 0?{}:{hint:u},...d===void 0?{}:{delta:d},...f.data===void 0?{}:{tone:f.data},...p.data===void 0?{}:{trend:p.data}})}return t(s)}function K(e,n,r){let o=a(e.title,[...n,`title`],i.plain);if(!o.success)return o;let s=G(e.items,[...n,`items`],i.statItems);if(!s.success)return s;let c=a(e.source,[...n,`source`],i.plain);return c.success?t({...r,type:`stat`,...o.data===void 0?{}:{title:o.data},items:s.data,...c.data===void 0?{}:{source:c.data}}):c}function q(e,n,r){let a=G(e.items,[...n,`items`],i.statItems);return a.success?t({...r,type:`kpi`,items:a.data}):a}function J(a,o,s){if(typeof a.kind!=`string`||!z.includes(a.kind))return n([...o,`kind`],`kind must be one of ${z.join(`, `)}`);let c=a.kind,l=e(a.title,[...o,`title`],i.heading);if(!l.success)return l;let u=r(a.description,[...o,`description`],i.shortMarkdown);if(!u.success)return u;if(L(c)){let e=R(c,a.props,[...o,`props`]);return e.success?t({...s,type:`chart`,kind:c,title:l.data,description:u.data,props:e.data}):e}let d;if(a.props!==void 0){let e=R(c,a.props,[...o,`props`]);if(!e.success)return e;d=e.data}let f=d===void 0?{}:{props:d};if(c===`heatmap`){let e=I(c,a.cells,[...o,`cells`]);return e.success?t({...s,type:`chart`,kind:c,title:l.data,description:u.data,cells:e.data,...f}):e}if(c===`scatter`||c===`bubble`){let e=I(c,a.points,[...o,`points`]);return e.success?t({...s,type:`chart`,kind:c,title:l.data,description:u.data,points:e.data,...f}):e}let p=I(c,a.series,[...o,`series`]);return p.success?t({...s,type:`chart`,kind:c,title:l.data,description:u.data,series:p.data,...f}):p}function Y(e,t,n,r){switch(e){case`table`:return U(t,n,r);case`stat`:return K(t,n,r);case`kpi`:return q(t,n,r);case`chart`:return J(t,n,r);default:return null}}export{K as a,D as c,q as i,L as l,J as n,U as o,Y as r,S as s,z as t};