@bendyline/gezel-service 1.0.7 → 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 (237) hide show
  1. package/dist/bin/gezeld.js +6253 -3616
  2. package/dist/handboek-content/whats-new/1.26224.md +1 -0
  3. package/dist/handboek-content/whats-new/1.26226.md +1 -0
  4. package/dist/handboek-content/whats-new/1.26231.md +1 -0
  5. package/dist/handboek-content/whats-new/1.26234.md +1 -0
  6. package/dist/handboek-content/whats-new/1.26237.md +1 -0
  7. package/dist/handboek-content/whats-new/1.26244.md +2 -1
  8. package/dist/handboek-content/whats-new/1.26247.md +88 -0
  9. package/dist/handboek-content/whats-new/whats-new-index.md +1 -0
  10. package/dist/index-store/static-index-worker.js +17 -1
  11. package/dist/index.d.ts +473 -209
  12. package/dist/index.js +6251 -3614
  13. package/dist/memory/embed-worker.js +58 -2
  14. package/dist/memory/image-embed-worker.js +8 -0
  15. package/dist/providers/llama-cpp/gguf-metadata-worker.js +2 -0
  16. package/dist/providers/mlx/python/gezel_mlx_server.py +18 -18
  17. package/dist/ui/assets/AmbientDashboardCard-Cf5fi_fY.js +1 -0
  18. package/dist/ui/assets/{AudioEngineSettings-BDrNIGGm.js → AudioEngineSettings-D3L7HOHe.js} +1 -1
  19. package/dist/ui/assets/{BenchmarksView-CHyujjs8.js → BenchmarksView-B68hrLCl.js} +1 -1
  20. package/dist/ui/assets/CatalogBrowser-DEM9t7Es.js +1 -0
  21. package/dist/ui/assets/{ChannelsSettings-Be_W1mr8.js → ChannelsSettings-DtK_k0Ul.js} +1 -1
  22. package/dist/ui/assets/ChatTimelineView-CQ4Sf4Ip.js +7 -0
  23. package/dist/ui/assets/ConfirmDialog-Dt1ed4Fh.js +1 -0
  24. package/dist/ui/assets/ConnectedAppsPanel-Cl8LEkrt.js +1 -0
  25. package/dist/ui/assets/CraftbookEditor-DEQRlQ2p.js +1 -0
  26. package/dist/ui/assets/{CraftbookScriptEditorView-DXIZYZT3.js → CraftbookScriptEditorView-DhXkkIdK.js} +1 -1
  27. package/dist/ui/assets/{CraftbookTabContent-Bm7t_b37.js → CraftbookTabContent-_oIdpQTG.js} +1 -1
  28. package/dist/ui/assets/{CraftbookToolsetSetup-DTEA-3K3.js → CraftbookToolsetSetup-BKg136L1.js} +1 -1
  29. package/dist/ui/assets/{CraftbooksView-C4X99TTe.js → CraftbooksView-Dm2zH-nW.js} +2 -2
  30. package/dist/ui/assets/{DiffpackReviewView-ClcNxtmF.js → DiffpackReviewView-EFLGJnwr.js} +1 -1
  31. package/dist/ui/assets/DocumentDetail-ClDRj2N-.js +1 -0
  32. package/dist/ui/assets/DocumentsView-ny9oieg2.js +1 -0
  33. package/dist/ui/assets/DropdownMenu-S4d9-3j3.js +1 -0
  34. package/dist/ui/assets/Ds4Settings-CeWlm5Vf.js +1 -0
  35. package/dist/ui/assets/EmbeddedChat-Hjrrgpao.js +1 -0
  36. package/dist/ui/assets/{FaceRecognitionCard-D3hdc7uU.js → FaceRecognitionCard-D7ufKqjI.js} +1 -1
  37. package/dist/ui/assets/FileMapView-DRjf59RH.js +1 -0
  38. package/dist/ui/assets/{FoldersSettings-BcNzl4vT.js → FoldersSettings-DDUhaFio.js} +1 -1
  39. package/dist/ui/assets/GezelDetail-Cph6pVGb.js +1 -0
  40. package/dist/ui/assets/{GezelJsonEditor-fOvYclu9.js → GezelJsonEditor-7vDGyBib.js} +1 -1
  41. package/dist/ui/assets/{GezellenView-BTzhHrxi.js → GezellenView-DQhcO1CP.js} +1 -1
  42. package/dist/ui/assets/{GildeUpdatesCard-Bq6XEpLP.js → GildeUpdatesCard-UKKNm_U8.js} +1 -1
  43. package/dist/ui/assets/{GithubSignInChip-CnlTCG8G.js → GithubSignInChip-DjM3qZsL.js} +1 -1
  44. package/dist/ui/assets/{HandboekMediaProvider-BfQW8_Nr.js → HandboekMediaProvider-DixaXTAH.js} +1 -1
  45. package/dist/ui/assets/HandboekView-BeNQqho9.js +1 -0
  46. package/dist/ui/assets/HistoryView-E2szGNGS.js +1 -0
  47. package/dist/ui/assets/{HomeView-CB_5TJIp.css → HomeView-CNeqCFPc.css} +1 -1
  48. package/dist/ui/assets/HomeView-CkiS3DXy.js +1 -0
  49. package/dist/ui/assets/{ImageEngineSettings-BpMfQy4f.js → ImageEngineSettings-BCKT7Gvi.js} +1 -1
  50. package/dist/ui/assets/{ImageRecognitionSettings-Ct-7-Oas.js → ImageRecognitionSettings-DD6syFez.js} +1 -1
  51. package/dist/ui/assets/IncompleteDownloads-BiPaaahS.js +1 -0
  52. package/dist/ui/assets/InstallProgressRow-DyKOI4MU.js +1 -0
  53. package/dist/ui/assets/KnowledgeCatalogsCard-B132vzRa.js +1 -0
  54. package/dist/ui/assets/KnowledgeView-CtPuIlN4.js +1 -0
  55. package/dist/ui/assets/LlamaCppSettings-D6zHcu4W.js +1 -0
  56. package/dist/ui/assets/{MarkdownField-D-0Zw7gM.js → MarkdownField-CK8K3fzj.js} +1 -1
  57. package/dist/ui/assets/MemoriesTree-DzjXzIrM.js +1 -0
  58. package/dist/ui/assets/{MicrophoneSettings-BIaFxyY_.js → MicrophoneSettings-1FH83SCq.js} +1 -1
  59. package/dist/ui/assets/MlxSettings-BYxUqFnJ.js +1 -0
  60. package/dist/ui/assets/ModelPicker-DoXPfQkQ.js +1 -0
  61. package/dist/ui/assets/{NewScriptDialog-D-gkY8TS.js → NewScriptDialog-C5X-7PMt.js} +1 -1
  62. package/dist/ui/assets/NewTaskDialog-Cyqtmigv.js +2 -0
  63. package/dist/ui/assets/{OllamaSettings-oIE2Mech.js → OllamaSettings-DkjmA-sB.js} +1 -1
  64. package/dist/ui/assets/ProjectChat-YEqUME6k.js +5 -0
  65. package/dist/ui/assets/{ProjectConnectionsTab-BZqp-oKI.js → ProjectConnectionsTab-dFCJpW93.js} +1 -1
  66. package/dist/ui/assets/ProjectGitStatusBar-CjZxG54t.js +1 -0
  67. package/dist/ui/assets/{ProjectGithubView-w8suLCsA.js → ProjectGithubView-CQ4-tmPx.js} +1 -1
  68. package/dist/ui/assets/{ProjectMailTab-DGo7eyB8.js → ProjectMailTab-NaScsZJf.js} +1 -1
  69. package/dist/ui/assets/ProjectOverviewView-ChjxbQas.js +1 -0
  70. package/dist/ui/assets/{ProjectTimeline-DRe3D9qY.js → ProjectTimeline-BZpdCisR.js} +1 -1
  71. package/dist/ui/assets/ProjectsView-J77ECk6V.js +7 -0
  72. package/dist/ui/assets/{RecommendedBadge-BKiDixnB.js → RecommendedBadge-D0m68PAu.js} +1 -1
  73. package/dist/ui/assets/{RemoteServersPanel-DGyl6-Rg.js → RemoteServersPanel-BdLOoORu.js} +1 -1
  74. package/dist/ui/assets/ScriptEditorTabs-BFvIiDFZ.js +2 -0
  75. package/dist/ui/assets/ScriptEditorView-B09rm1vz.js +5 -0
  76. package/dist/ui/assets/{ScriptsView-WQc28TmQ.js → ScriptsView-BvNAJXpo.js} +1 -1
  77. package/dist/ui/assets/{SecurityComplianceSettings-DsMEA4J3.js → SecurityComplianceSettings-DzGOnptO.js} +1 -1
  78. package/dist/ui/assets/SessionSwitcher-6okzcxT7.js +1 -0
  79. package/dist/ui/assets/SettingsView-Dur4dLhW.js +3 -0
  80. package/dist/ui/assets/SquisqIntegration-6v3yNOIP.js +2 -0
  81. package/dist/ui/assets/{StorageCleanupDialog-DHqwyMZZ.js → StorageCleanupDialog-OQlomMJD.js} +1 -1
  82. package/dist/ui/assets/{StorageUsageCard-CdT6SU51.js → StorageUsageCard-f6c6qTbM.js} +1 -1
  83. package/dist/ui/assets/Tabs-jE0Z5Tzd.js +1 -0
  84. package/dist/ui/assets/TaskTabContent-0w3kAUWR.js +1 -0
  85. package/dist/ui/assets/TasksView-BVMT4BAY.js +1 -0
  86. package/dist/ui/assets/{TerminalCodeEditor-77pBm6f3.js → TerminalCodeEditor-DO7zLKy-.js} +2 -2
  87. package/dist/ui/assets/ToolsetsEditor-Bb1wD5mV.js +8 -0
  88. package/dist/ui/assets/TransformToolbarButton-BWYkEB0d.js +5 -0
  89. package/dist/ui/assets/UnrecognizedModels-HtdMZUqK.js +1 -0
  90. package/dist/ui/assets/{VideoEngineSettings-DzMeINuv.js → VideoEngineSettings-Dq8Nw_tK.js} +1 -1
  91. package/dist/ui/assets/{WorkspaceIndexPane-DU4yd4Ai.js → WorkspaceIndexPane-fpDz4MwZ.js} +1 -1
  92. package/dist/ui/assets/{api-BX5xXiFs.js → api-BPraLwsh.js} +1 -1
  93. package/dist/ui/assets/chat-thread-memory-Be48zsyG.js +1 -0
  94. package/dist/ui/assets/chunk-6ECMNUIP-DDVjPyfK.js +15 -0
  95. package/dist/ui/assets/{chunk-6N2J7C2B-B5QIrD9m.js → chunk-6N2J7C2B-CsppiLVr.js} +1 -1
  96. package/dist/ui/assets/{chunk-A6N6IN3I-DXok09eC.js → chunk-A6N6IN3I-ofeM4l8g.js} +1 -1
  97. package/dist/ui/assets/chunk-B7GEAZBI-Divd2h1k.js +1 -0
  98. package/dist/ui/assets/chunk-DXYWKZ52-BXcAlClu.js +1 -0
  99. package/dist/ui/assets/chunk-FLR2ARKC-D7wrvQgT.js +2 -0
  100. package/dist/ui/assets/chunk-IIQYS2YH-DKZhWMpn.js +1 -0
  101. package/dist/ui/assets/{chunk-ILCJ3WFD-WRukZ7R1.js → chunk-ILCJ3WFD-CLZxw4Ge.js} +3 -3
  102. package/dist/ui/assets/chunk-OBADJV7C-CDVOcmYt.js +1 -0
  103. package/dist/ui/assets/chunk-Q77KNJIN-BIDRf0aP.js +6 -0
  104. package/dist/ui/assets/chunk-S5PCVMKU-Df5XzhSE.js +6 -0
  105. package/dist/ui/assets/chunk-UBFT2CDQ-FexGDigd.js +31 -0
  106. package/dist/ui/assets/{chunk-USU6HTKB-D5FmDzJU.js → chunk-USU6HTKB-B_p-YcDp.js} +1 -1
  107. package/dist/ui/assets/chunk-VKXOZTYP-BoVvWSBR.js +5 -0
  108. package/dist/ui/assets/{chunk-6RQOV3B3-CwvKotJw.js → chunk-VPWPEMZJ-DRKoa_j0.js} +1 -1
  109. package/dist/ui/assets/{chunk-WATAOG4Y-DXg2lov5.js → chunk-WATAOG4Y-C1EXVPmG.js} +1 -1
  110. package/dist/ui/assets/{container-B7jJtK5V.js → container-Ce94efbg.js} +1 -1
  111. package/dist/ui/assets/csv-62UGQMzZ.js +1 -0
  112. package/dist/ui/assets/data-B2kHjlc5.js +1 -0
  113. package/dist/ui/assets/dist-B9-VrAP8.js +2 -0
  114. package/dist/ui/assets/dist-BaHut5iX.js +2 -0
  115. package/dist/ui/assets/dist-BqGwkOe5.js +225 -0
  116. package/dist/ui/assets/dist-ZnIgkoEi.js +4 -0
  117. package/dist/ui/assets/{dist-BHl1ZAVG.js → dist-l6uUFZMV.js} +2 -2
  118. package/dist/ui/assets/dist-pLLFUPO-.js +1 -0
  119. package/dist/ui/assets/{doc-s6H7T0IO.js → doc-Dr5K49bx.js} +28 -28
  120. package/dist/ui/assets/document-companion-BQk2kS0F.js +1 -0
  121. package/dist/ui/assets/document-import-QoM9UxJr.js +1 -0
  122. package/dist/ui/assets/docx-sXa1Rf41.js +2 -0
  123. package/dist/ui/assets/{epub-B98SgHBz.js → epub-RopMP0ec.js} +4 -4
  124. package/dist/ui/assets/{export-options-Bu-tI6og.js → export-options-f7PKjEBb.js} +1 -1
  125. package/dist/ui/assets/extract-UTAOG7LV-4WDRw1o4.js +1 -0
  126. package/dist/ui/assets/file-browser-c2tf4MIb.js +5 -0
  127. package/dist/ui/assets/html-BGVOMhkv.js +253 -0
  128. package/dist/ui/assets/icons-DWaUNQbT.js +1 -0
  129. package/dist/ui/assets/images-JLBFCDD4-6JitW0hD.js +1 -0
  130. package/dist/ui/assets/index-B8NcxqcR.css +1 -0
  131. package/dist/ui/assets/index-C0DYtvfg.js +34 -0
  132. package/dist/ui/assets/index-J8TOMdvV.js +2 -0
  133. package/dist/ui/assets/{infer-kCLH1C8z.js → infer-LEGOsu64.js} +2 -2
  134. package/dist/ui/assets/ironcalc-BAi5gOlE.js +3 -0
  135. package/dist/ui/assets/layouts-2A7QNF6Y-CVwP7noP.js +1 -0
  136. package/dist/ui/assets/{mail-link-CI6YD6k2.js → mail-link-DXkmCd5b.js} +1 -1
  137. package/dist/ui/assets/markdown-baseline-9B52XlX2.js +1 -0
  138. package/dist/ui/assets/{markdown-Bi9b5f5Y.js → markdown-ryKA_OmY.js} +1 -1
  139. package/dist/ui/assets/materialize-A34OZGEU-xNNKzytx.js +1 -0
  140. package/dist/ui/assets/model-inventory-ykSm_IT5.js +1 -0
  141. package/dist/ui/assets/{model-quantization-BDzrELN_.js → model-quantization-CLO7XLoF.js} +1 -1
  142. package/dist/ui/assets/{monaco-base-BiVSa1J-.js → monaco-base-B1H1U1Sw.js} +1 -1
  143. package/dist/ui/assets/{monaco-setup-UeltVkg_.js → monaco-setup-DjhrGQui.js} +1 -1
  144. package/dist/ui/assets/{new-project-meta-0xhggGA_.js → new-project-meta-_f9sfcRX.js} +1 -1
  145. package/dist/ui/assets/outside-in-D73N1g_b.js +3 -0
  146. package/dist/ui/assets/{pdf-DgTjy3rN.js → pdf-BOjVDlCK.js} +3 -3
  147. package/dist/ui/assets/{pending-drafts-YVW6X55O.js → pending-drafts-B11MKQ9R.js} +1 -1
  148. package/dist/ui/assets/{poppetje-Ce-02Aqi.js → poppetje-DLB8uevw.js} +2 -2
  149. package/dist/ui/assets/pptx-BuxyNxQh.js +6 -0
  150. package/dist/ui/assets/primitives-CWrGZpPI.js +41 -0
  151. package/dist/ui/assets/run-export-ChaMXrKS.js +23 -0
  152. package/dist/ui/assets/squisq-formats-aAdypXoy.js +1 -0
  153. package/dist/ui/assets/standalone-source-q_Zzd1bd.js +11 -0
  154. package/dist/ui/assets/storage-D8pE2zg0.js +1 -0
  155. package/dist/ui/assets/styles-BhnF3s2q.css +1 -0
  156. package/dist/ui/assets/styles-CKVKwqoQ.js +550 -0
  157. package/dist/ui/assets/table-fcouR4db.js +1 -0
  158. package/dist/ui/assets/{terminal-monaco-setup-DNoK2tN4.js → terminal-monaco-setup-BAzrVzeR.js} +1 -1
  159. package/dist/ui/assets/{useCompactLayout-BarJPYcv.js → useCompactLayout-Dtolvzye.js} +0 -0
  160. package/dist/ui/assets/{useCopilotAvailability-BH1nLXQI.js → useCopilotAvailability-3xZvKgTF.js} +1 -1
  161. package/dist/ui/assets/{useDiffpacks-CK8W_OD_.js → useDiffpacks-Dsnr0wtX.js} +1 -1
  162. package/dist/ui/assets/{useGitSync-DWxX5-7K.js → useGitSync-BCTptQsp.js} +1 -1
  163. package/dist/ui/assets/{useShowWorkInProgressFeatures-DwwviLRO.js → useShowWorkInProgressFeatures-BhDNuQiU.js} +1 -1
  164. package/dist/ui/assets/{useTotalRamBytes-WoN_mi-V.js → useTotalRamBytes-DIx-_pf8.js} +1 -1
  165. package/dist/ui/assets/wasm-DdxEDD2H.js +1 -0
  166. package/dist/ui/assets/wasm_bg-DW9Xt_vt.wasm +0 -0
  167. package/dist/ui/assets/xlsx-DyBGuAO1.js +4 -0
  168. package/dist/ui/index.html +19 -18
  169. package/package.json +11 -11
  170. package/dist/ui/assets/AmbientDashboardCard-C1Ee-FKZ.js +0 -1
  171. package/dist/ui/assets/CatalogBrowser-Bz8ZtxPn.js +0 -1
  172. package/dist/ui/assets/ChatTimelineView-Do9EryEH.js +0 -7
  173. package/dist/ui/assets/ConfirmDialog-BHFs6vmJ.js +0 -1
  174. package/dist/ui/assets/ConnectedAppsPanel-BtMayq0R.js +0 -1
  175. package/dist/ui/assets/CraftbookEditor-D5jTzWwF.js +0 -1
  176. package/dist/ui/assets/DocumentDetail-CPU51d04.js +0 -1
  177. package/dist/ui/assets/DocumentsView-B6OyjvJ0.js +0 -1
  178. package/dist/ui/assets/DropdownMenu-D5fCzIrh.js +0 -1
  179. package/dist/ui/assets/Ds4Settings-CrUM_KGP.js +0 -1
  180. package/dist/ui/assets/EmbeddedChat-ue9ia-WY.js +0 -1
  181. package/dist/ui/assets/FileMapView-CxvfDLGA.js +0 -1
  182. package/dist/ui/assets/GezelDetail-DHuqBK55.js +0 -1
  183. package/dist/ui/assets/HandboekView-CPnnyj29.js +0 -1
  184. package/dist/ui/assets/HistoryView-B4VAfEMe.js +0 -1
  185. package/dist/ui/assets/HomeView-ccH60J6f.js +0 -1
  186. package/dist/ui/assets/KnowledgeCatalogsCard-Bi5Rx9Iz.js +0 -1
  187. package/dist/ui/assets/KnowledgeView-DAwjwLZo.js +0 -1
  188. package/dist/ui/assets/LlamaCppSettings-Ceyk9pDP.js +0 -1
  189. package/dist/ui/assets/MemoriesTree-BKZEPJpm.js +0 -1
  190. package/dist/ui/assets/MlxSettings-CG3wfuc3.js +0 -1
  191. package/dist/ui/assets/ModelPicker-CCBVjLMS.js +0 -1
  192. package/dist/ui/assets/NewPathDialog-D4jnNBfP.js +0 -1
  193. package/dist/ui/assets/NewTaskDialog-Ox9D612Z.js +0 -2
  194. package/dist/ui/assets/ProjectChat-DMwKnkW-.js +0 -5
  195. package/dist/ui/assets/ProjectGitStatusBar-C6bkCSby.js +0 -1
  196. package/dist/ui/assets/ProjectOverviewView-NNwXd_QQ.js +0 -1
  197. package/dist/ui/assets/ProjectsView-SBPgYOq8.js +0 -7
  198. package/dist/ui/assets/ScriptEditorTabs-paocQ6dj.js +0 -2
  199. package/dist/ui/assets/ScriptEditorView-N9zSLqqi.js +0 -5
  200. package/dist/ui/assets/SessionSwitcher-C8te7YSe.js +0 -1
  201. package/dist/ui/assets/SettingsView-Brl4JQkW.js +0 -3
  202. package/dist/ui/assets/Tabs-BAY1Q79B.js +0 -1
  203. package/dist/ui/assets/TaskTabContent-CNPJ4DQj.js +0 -1
  204. package/dist/ui/assets/TasksView-DuMjFS8S.js +0 -1
  205. package/dist/ui/assets/ToolsetsEditor-BdxHnIBj.js +0 -8
  206. package/dist/ui/assets/TransformToolbarButton-CVg5nz36.js +0 -5
  207. package/dist/ui/assets/UnrecognizedModels-Cw9Ku_bW.js +0 -1
  208. package/dist/ui/assets/chat-thread-memory-CZGcwgGo.js +0 -1
  209. package/dist/ui/assets/chunk-6ECMNUIP-C1kohb1U.js +0 -15
  210. package/dist/ui/assets/chunk-AONELFLA-Cv2nS9ga.js +0 -1
  211. package/dist/ui/assets/chunk-IIQYS2YH-Dxg6MAfT.js +0 -1
  212. package/dist/ui/assets/chunk-MIKKUKOD-XIkmalSN.js +0 -31
  213. package/dist/ui/assets/chunk-NNJLSQPW-DJA6camf.js +0 -5
  214. package/dist/ui/assets/chunk-S5PCVMKU-DbCZ5AUH.js +0 -6
  215. package/dist/ui/assets/csv-xmd1_Aqd.js +0 -4
  216. package/dist/ui/assets/dist-BPx-FyRH.js +0 -222
  217. package/dist/ui/assets/dist-Bvo52IGx.js +0 -1
  218. package/dist/ui/assets/dist-D5aoNQwk.js +0 -2
  219. package/dist/ui/assets/docx-Cj4A9MhC.js +0 -2
  220. package/dist/ui/assets/extract-UTAOG7LV-C4b7ycaL.js +0 -1
  221. package/dist/ui/assets/file-browser-80qWoVju.js +0 -5
  222. package/dist/ui/assets/html-C9TlzI57.js +0 -253
  223. package/dist/ui/assets/icons-C9dD-bDi.js +0 -1
  224. package/dist/ui/assets/images-ESPQKVTW-D7SgdVJ_.js +0 -1
  225. package/dist/ui/assets/index-D1m4Wx8V.css +0 -1
  226. package/dist/ui/assets/index-DXWR4qW1.js +0 -34
  227. package/dist/ui/assets/layouts-2A7QNF6Y-De2t-YXl.js +0 -1
  228. package/dist/ui/assets/markdown-baseline-HMqF2ChK.js +0 -1
  229. package/dist/ui/assets/outside-in-BFVUUcLa.js +0 -3
  230. package/dist/ui/assets/pptx-6ChgUEf4.js +0 -6
  231. package/dist/ui/assets/primitives-DEsn1shf.js +0 -41
  232. package/dist/ui/assets/run-export-BrYhHj1O.js +0 -23
  233. package/dist/ui/assets/standalone-source-D6mbpa3h.js +0 -11
  234. package/dist/ui/assets/storage-fn4FCEVK.js +0 -1
  235. package/dist/ui/assets/styles-C0EoNJbk.css +0 -1
  236. package/dist/ui/assets/styles-CKr_yrbn.js +0 -541
  237. package/dist/ui/assets/xlsx-DH7sTb3W.js +0 -4
@@ -0,0 +1,2 @@
1
+ (function(){var e=new Map([`#DIV/0!`,`#N/A`,`#NAME?`,`#NULL!`,`#NUM!`,`#REF!`,`#VALUE!`,`#SPILL!`,`#CALC!`].map(e=>[e,Object.freeze({kind:`calc-error`,code:e})]));function t(t){return e.get(t)}function n(e){return typeof e==`object`&&!!e&&e.kind===`calc-error`}var r=t(`#DIV/0!`),i=t(`#N/A`),a=t(`#NAME?`);t(`#NULL!`);var o=t(`#NUM!`),s=t(`#REF!`),c=t(`#VALUE!`),l=t(`#CALC!`);function u(e){if(Number.isInteger(e)&&Math.abs(e)<0x38d7ea4c68000)return String(e);let t=e.toPrecision(15);return t.includes(`e`)||t.includes(`E`),String(Number(t))}function d(e){let t=e.trim();if(t===``)return null;let n=t.endsWith(`%`),r=n?t.slice(0,-1).trim():t;if(!/^[+-]?(\d+\.?\d*|\.\d+)([eE][+-]?\d+)?$/.test(r))return null;let i=Number(r);return Number.isFinite(i)?n?i/100:i:null}function f(e){if(n(e))return e;if(e===null)return 0;if(typeof e==`number`)return e;if(typeof e==`boolean`)return+!!e;let t=d(e);return t===null?c:t}function p(e){return n(e)?e:e===null?``:typeof e==`string`?e:typeof e==`boolean`?e?`TRUE`:`FALSE`:u(e)}function m(e){if(n(e))return e;if(e===null)return!1;if(typeof e==`boolean`)return e;if(typeof e==`number`)return e!==0;let t=e.trim().toUpperCase();return t===`TRUE`||t!==`FALSE`&&c}function h(e){return typeof e==`number`?0:typeof e==`string`?1:2}function g(e,t){if(n(e))return e;if(n(t))return t;let r,i;if(e===null&&t===null)return 0;e===null?(i=t,r=typeof i==`number`?0:typeof i==`string`&&``):t===null?(r=e,i=typeof r==`number`?0:typeof r==`string`&&``):(r=e,i=t);let a=h(r)-h(i);if(a!==0)return a<0?-1:1;if(typeof r==`number`&&typeof i==`number`)return r===i?0:r<i?-1:1;if(typeof r==`string`&&typeof i==`string`){let e=r.toLowerCase(),t=i.toLowerCase();return e===t?0:e<t?-1:1}let o=+!!r,s=+!!i;return o===s?0:o<s?-1:1}var _=null;function v(e){_??=new Map;let t=_.get(e);if(t)return t;let n=`^`;for(let t=0;t<e.length;t++){let r=e[t];r===`~`&&t+1<e.length?(n+=e[t+1].replace(/[.*+?^${}()|[\]\\]/g,`\\$&`),t++):r===`*`?n+=`.*`:r===`?`?n+=`.`:n+=r.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}n+=`$`;let r=new RegExp(n,`i`);return _.size>500&&_.clear(),_.set(e,r),r}function ee(e){return/[*?]/.test(e.replace(/~[*?]/g,``))}function y(e){if(n(e))return t=>n(t)&&t.code===e.code;if(e===null)return e=>e===null||e===0;if(typeof e!=`string`)return t=>!n(t)&&g(t,e)===0;let t=/^(<=|>=|<>|=|<|>)(.*)$/.exec(e),r=t?t[1]:`=`,i=t?t[2]:e,a=d(i),o=i.trim().toUpperCase(),s=a===null?o===`TRUE`||o!==`FALSE`&&i:a;if((r===`=`||r===`<>`)&&typeof s==`string`&&(ee(s)||s.includes(`~`))){let e=v(s);return t=>{let n=typeof t==`string`&&e.test(t);return r===`=`?n:!n}}return r===`=`&&s===``?e=>e===null||e===``:r===`<>`&&s===``?e=>e!==null&&e!==``:e=>{if(n(e)||e===null)return!1;if(typeof s==`number`&&typeof e!=`number`||typeof s==`string`&&typeof e!=`string`||typeof s==`boolean`&&typeof e!=`boolean`)return r===`<>`;let t=g(e,s);if(n(t))return!1;switch(r){case`=`:return t===0;case`<>`:return t!==0;case`<`:return t<0;case`>`:return t>0;case`<=`:return t<=0;default:return t>=0}}}var b=16383,x=1048575;function te(e){let t=0;for(let n=0;n<e.length;n++)t=t*26+(e.charCodeAt(n)-64);return t-1}var ne=/^(\$?)([A-Za-z]{1,3})(\$?)([0-9]{1,7})$/;function re(e){let t=ne.exec(e);if(!t)return null;let n=te(t[2].toUpperCase()),r=Number.parseInt(t[4],10)-1;return n>b||r<0||r>x?null:{row:r,col:n,absCol:t[1]===`$`,absRow:t[3]===`$`}}var ie=/^(\$?)([A-Za-z]{1,3})$/,ae=/^(\$?)([0-9]{1,7})$/;function oe(e){let t=ie.exec(e);if(!t)return null;let n=te(t[2].toUpperCase());return n<=b?n:null}function S(e){let t=ae.exec(e);if(!t)return null;let n=Number.parseInt(t[2],10)-1;return n>=0&&n<=x?n:null}var C=class extends Error{constructor(){super(`Calculation budget exceeded`),this.name=`BudgetExceededSignal`}},se=2048,ce=class{constructor(e){this.workUnits=0,this.sinceTimeCheck=0,this.startedAt=Date.now(),this.maxUnits=e?.maxWorkUnits??1/0,this.deadline=e?.maxEvalTimeMs===void 0?1/0:this.startedAt+e.maxEvalTimeMs}get elapsedMs(){return Date.now()-this.startedAt}charge(e){if(this.workUnits+=e,this.workUnits>this.maxUnits||(this.sinceTimeCheck+=e,this.sinceTimeCheck>=se&&(this.sinceTimeCheck=0,Date.now()>this.deadline)))throw new C}},w=class{constructor(e,t,n,r,i,a){this.ctx=e,this.sheet=t,this.startRow=n,this.startCol=r,this.endRow=Math.min(i,x),this.endCol=Math.min(a,b)}get rows(){return this.endRow-this.startRow+1}get cols(){return this.endCol-this.startCol+1}get effectiveRows(){return Math.max(0,Math.min(this.endRow,this.sheet.maxRow)-this.startRow+1)}get effectiveCols(){return Math.max(0,Math.min(this.endCol,this.sheet.maxCol)-this.startCol+1)}get(e,t){return this.ctx.readCell(this.sheet,this.startRow+e,this.startCol+t)}forEach(e){let t=this.effectiveRows,n=this.effectiveCols;this.ctx.budget.charge(t*n);for(let r=0;r<t;r++)for(let t=0;t<n;t++)e(this.get(r,t),r,t)}};function T(e){return e instanceof w}function E(e,t){if(!T(e))return e;let n=e;return n.rows===1&&n.cols===1?n.get(0,0):n.cols===1&&t.currentRow>=n.startRow&&t.currentRow<=n.endRow&&n.sheet.name.toLowerCase()===t.currentSheet.toLowerCase()?n.get(t.currentRow-n.startRow,0):n.rows===1&&t.currentCol>=n.startCol&&t.currentCol<=n.endCol&&n.sheet.name.toLowerCase()===t.currentSheet.toLowerCase()?n.get(0,t.currentCol-n.startCol):c}function D(e,r){switch(r.budget.charge(1),e.type){case`number`:return e.value;case`string`:return e.value;case`boolean`:return e.value;case`error`:return t(e.code);case`missing`:return null;case`ref`:{if(e.external)return s;let t=r.workbook.sheet(e.sheet??r.currentSheet);return t?new w(r,t,e.row,e.col,e.row,e.col):s}case`range`:{if(e.external)return s;let t=r.workbook.sheet(e.sheet??r.currentSheet);return t?new w(r,t,e.startRow,e.startCol,e.endRow,e.endCol):s}case`name`:{let t=r.definedName(e.name);if(t===void 0)return a;let n=r.parseSubFormula(t);return n?r.evaluate(n):a}case`unary`:{let t=f(E(r.evaluate(e.operand),r));return n(t)?t:e.op===`-`?-t:t}case`percent`:{let t=f(E(r.evaluate(e.operand),r));return n(t)?t:t/100}case`binary`:return le(e.op,e.left,e.right,r);case`array`:return E(r.evaluate(e.rows[0][0]),r);case`call`:{let t=r.functions.get(e.name);if(!t)return a;if(e.args.length<t.minArgs||e.args.length>t.maxArgs)return c;try{return t.fn(e.args,r)}catch(e){if(e instanceof C)throw e;if(e instanceof RangeError)return l;throw e}}}}function le(e,r,i,a){let o=E(a.evaluate(r),a);n(o);let s=E(a.evaluate(i),a);switch(e){case`&`:{let e=p(o);if(n(e))return e;let t=p(s);return n(t)?t:e+t}case`=`:case`<>`:case`<`:case`>`:case`<=`:case`>=`:{let t=g(o,s);if(n(t))return t;switch(e){case`=`:return t===0;case`<>`:return t!==0;case`<`:return t<0;case`>`:return t>0;case`<=`:return t<=0;default:return t>=0}}default:{let r=f(o);if(n(r))return r;let i=f(s);if(n(i))return i;switch(e){case`+`:return r+i;case`-`:return r-i;case`*`:return r*i;case`/`:return i===0?t(`#DIV/0!`):r/i;case`^`:{let e=r**+i;return Number.isFinite(e)?e:t(`#NUM!`)}default:return c}}}}var O=864e5,ue=Date.UTC(1899,11,31),de=Date.UTC(1904,0,1);function k(e,t,n,r){let i=Date.UTC(e,t-1,n);if(!Number.isFinite(i))return null;if(r){let e=Math.round((i-de)/O);return e<0?null:e}if(e===1900&&t===2&&n===29)return 60;let a=Math.round((i-ue)/O);return a>=60&&(a+=1),a<1?null:a}function A(e,t){let n=Math.floor(e);if(!t&&n===60)return{year:1900,month:2,day:29};let r=t?de:ue,i=!t&&n>60?n-1:n,a=new Date(r+i*O);return Number.isFinite(a.getTime())?{year:a.getUTCFullYear(),month:a.getUTCMonth()+1,day:a.getUTCDate()}:null}function j(e){let t=e-Math.floor(e),n=Math.round(t*86400)%86400;return{hour:Math.floor(n/3600),minute:Math.floor(n/60)%60,second:n%60}}function fe(e,t,n){let r=k(e.getFullYear(),e.getMonth()+1,e.getDate(),t);return r===null?0:n?r+(e.getHours()*3600+e.getMinutes()*60+e.getSeconds())/86400:r}var M=e=>e===void 0||e.type===`missing`;function N(e,t){return E(t.evaluate(e),t)}function P(e,t){return f(N(e,t))}function F(e,t){return p(N(e,t))}function pe(e,t){return m(N(e,t))}function I(e,t){let r=t.evaluate(e);return T(r)||n(r)?r:c}function L(e,t,n){for(let r of e){if(M(r))continue;if(r.type===`array`){for(let e of r.rows)for(let r of e)n({value:E(t.evaluate(r),t),viaRange:!0});continue}let e=t.evaluate(r);T(e)?e.forEach(e=>n({value:e,viaRange:!0})):n({value:e,viaRange:!1})}}function me(e,t){let r=[],i=null;return L(e,t,({value:e,viaRange:t})=>{if(i)return;if(n(e)){i=e;return}if(e===null)return;if(t){typeof e==`number`&&r.push(e);return}let a=f(e);if(n(a)){i=a;return}r.push(a)}),i??r}function R(e){return e.cols===1?{length:e.rows,get:t=>e.get(t,0)}:e.rows===1?{length:e.cols,get:t=>e.get(0,t)}:null}function he(e){return e.cols===1?e.effectiveRows:e.effectiveCols}var ge={DATE:{minArgs:3,maxArgs:3,fn:(e,t)=>{let r=P(e[0],t);if(n(r))return r;let i=P(e[1],t);if(n(i))return i;let a=P(e[2],t);if(n(a))return a;let s=k(r<1900?Math.trunc(r)+1900:Math.trunc(r),Math.trunc(i),Math.trunc(a),t.date1904);return s===null?o:s}},TIME:{minArgs:3,maxArgs:3,fn:(e,t)=>{let r=P(e[0],t);if(n(r))return r;let i=P(e[1],t);if(n(i))return i;let a=P(e[2],t);if(n(a))return a;let s=Math.trunc(r)*3600+Math.trunc(i)*60+Math.trunc(a);return s<0?o:s%86400/86400}},YEAR:{minArgs:1,maxArgs:1,fn:(e,t)=>{let r=P(e[0],t);if(n(r))return r;let i=A(r,t.date1904);return i?i.year:o}},MONTH:{minArgs:1,maxArgs:1,fn:(e,t)=>{let r=P(e[0],t);if(n(r))return r;let i=A(r,t.date1904);return i?i.month:o}},DAY:{minArgs:1,maxArgs:1,fn:(e,t)=>{let r=P(e[0],t);if(n(r))return r;let i=A(r,t.date1904);return i?i.day:o}},HOUR:{minArgs:1,maxArgs:1,fn:(e,t)=>{let r=P(e[0],t);return n(r)?r:j(r).hour}},MINUTE:{minArgs:1,maxArgs:1,fn:(e,t)=>{let r=P(e[0],t);return n(r)?r:j(r).minute}},SECOND:{minArgs:1,maxArgs:1,fn:(e,t)=>{let r=P(e[0],t);return n(r)?r:j(r).second}},WEEKDAY:{minArgs:1,maxArgs:2,fn:(e,t)=>{let r=P(e[0],t);if(n(r))return r;let i=A(r,t.date1904);if(!i)return o;let a=new Date(Date.UTC(i.year,i.month-1,i.day)).getUTCDay(),s=M(e[1])?1:P(e[1],t);if(n(s))return s;switch(Math.trunc(s)){case 1:return a+1;case 2:return a===0?7:a;case 3:return a===0?6:a-1;default:return o}}},TODAY:{minArgs:0,maxArgs:0,volatile:!0,fn:(e,t)=>fe(t.now(),t.date1904,!1)},NOW:{minArgs:0,maxArgs:0,volatile:!0,fn:(e,t)=>fe(t.now(),t.date1904,!0)},EDATE:{minArgs:2,maxArgs:2,fn:(e,t)=>{let r=P(e[0],t);if(n(r))return r;let i=P(e[1],t);if(n(i))return i;let a=A(r,t.date1904);if(!a)return o;let s=a.month-1+Math.trunc(i),c=a.year+Math.floor(s/12),l=(s%12+12)%12,u=new Date(Date.UTC(c,l+1,0)).getUTCDate(),d=k(c,l+1,Math.min(a.day,u),t.date1904);return d===null?o:d}},EOMONTH:{minArgs:2,maxArgs:2,fn:(e,t)=>{let r=P(e[0],t);if(n(r))return r;let i=P(e[1],t);if(n(i))return i;let a=A(r,t.date1904);if(!a)return o;let s=a.month-1+Math.trunc(i),c=a.year+Math.floor(s/12),l=(s%12+12)%12,u=new Date(Date.UTC(c,l+1,0)).getUTCDate(),d=k(c,l+1,u,t.date1904);return d===null?o:d}},DAYS:{minArgs:2,maxArgs:2,fn:(e,t)=>{let r=P(e[0],t);if(n(r))return r;let i=P(e[1],t);return n(i)?i:Math.trunc(r)-Math.trunc(i)}}},_e={ISBLANK:{minArgs:1,maxArgs:1,fn:(e,t)=>N(e[0],t)===null},ISNUMBER:{minArgs:1,maxArgs:1,fn:(e,t)=>typeof N(e[0],t)==`number`},ISTEXT:{minArgs:1,maxArgs:1,fn:(e,t)=>typeof N(e[0],t)==`string`},ISNONTEXT:{minArgs:1,maxArgs:1,fn:(e,t)=>typeof N(e[0],t)!=`string`},ISLOGICAL:{minArgs:1,maxArgs:1,fn:(e,t)=>typeof N(e[0],t)==`boolean`},ISERROR:{minArgs:1,maxArgs:1,fn:(e,t)=>n(N(e[0],t))},ISERR:{minArgs:1,maxArgs:1,fn:(e,t)=>{let r=N(e[0],t);return n(r)&&r.code!==`#N/A`}},ISNA:{minArgs:1,maxArgs:1,fn:(e,t)=>{let r=N(e[0],t);return n(r)&&r.code===`#N/A`}},ISEVEN:{minArgs:1,maxArgs:1,fn:(e,t)=>{let r=P(e[0],t);return n(r)?c:Math.trunc(r)%2==0}},ISODD:{minArgs:1,maxArgs:1,fn:(e,t)=>{let r=P(e[0],t);return n(r)?c:Math.abs(Math.trunc(r))%2==1}},NA:{minArgs:0,maxArgs:0,fn:()=>i}},ve={TRUE:{minArgs:0,maxArgs:0,fn:()=>!0},FALSE:{minArgs:0,maxArgs:0,fn:()=>!1},NOT:{minArgs:1,maxArgs:1,fn:(e,t)=>{let r=pe(e[0],t);return n(r)?r:!r}},IF:{minArgs:1,maxArgs:3,fn:(e,t)=>{let r=pe(e[0],t);return n(r)?r:r?M(e[1])?!0:N(e[1],t):!M(e[2])&&N(e[2],t)}},IFS:{minArgs:2,maxArgs:1/0,fn:(e,t)=>{for(let r=0;r+1<e.length;r+=2){let i=pe(e[r],t);if(n(i))return i;if(i)return N(e[r+1],t)}return{kind:`calc-error`,code:`#N/A`}}},IFERROR:{minArgs:2,maxArgs:2,fn:(e,t)=>{let r=N(e[0],t);return n(r)?N(e[1],t):r}},IFNA:{minArgs:2,maxArgs:2,fn:(e,t)=>{let r=N(e[0],t);return n(r)&&r.code===`#N/A`?N(e[1],t):r}},AND:{minArgs:1,maxArgs:1/0,fn:(e,t)=>{let r=!1,i=!0,a=null;return L(e,t,({value:e,viaRange:t})=>{if(!(a!==null&&n(a))){if(n(e)){a=e;return}t&&typeof e==`string`||e!==null&&(r=!0,i&&=typeof e==`number`?e!==0:e===!0)}}),a!==null&&n(a)?a:r?i:c}},OR:{minArgs:1,maxArgs:1/0,fn:(e,t)=>{let r=!1,i=!1,a=null;return L(e,t,({value:e,viaRange:t})=>{if(!(a!==null&&n(a))){if(n(e)){a=e;return}t&&typeof e==`string`||e!==null&&(r=!0,i||=typeof e==`number`?e!==0:e===!0)}}),a!==null&&n(a)?a:r?i:c}},XOR:{minArgs:1,maxArgs:1/0,fn:(e,t)=>{let r=!1,i=0,a=null;return L(e,t,({value:e,viaRange:t})=>{if(!(a!==null&&n(a))){if(n(e)){a=e;return}t&&typeof e==`string`||e!==null&&(r=!0,(typeof e==`number`?e!==0:e===!0)&&i++)}}),a!==null&&n(a)?a:r?i%2==1:c}}},z=class extends Error{constructor(e,t){super(e),this.name=`CalcParseError`,this.pos=t}},ye=[`#DIV/0!`,`#GETTING_DATA`,`#NAME?`,`#NULL!`,`#NUM!`,`#REF!`,`#SPILL!`,`#VALUE!`,`#CALC!`,`#N/A`],B=e=>e>=`0`&&e<=`9`,be=e=>/[A-Za-z_$\\]/.test(e),xe=e=>/[A-Za-z0-9_.$\\]/.test(e);function Se(e){let t=[],n=0,r=e.length;for(;n<r;){let i=e[n];if(i===` `||i===` `||i===`
2
+ `||i===`\r`){n++;continue}if(B(i)||i===`.`&&n+1<r&&B(e[n+1])){let i=n;for(;n<r&&(B(e[n])||e[n]===`.`);)n++;if(n<r&&(e[n]===`e`||e[n]===`E`)){let t=n+1;if(t<r&&(e[t]===`+`||e[t]===`-`)&&t++,t<r&&B(e[t]))for(n=t;n<r&&B(e[n]);)n++}t.push({kind:`number`,text:e.slice(i,n),pos:i});continue}if(i===`"`){let i=n;n++;let a=``;for(;;){if(n>=r)throw new z(`Unterminated string literal`,i);if(e[n]===`"`)if(e[n+1]===`"`)a+=`"`,n+=2;else{n++;break}else a+=e[n],n++}t.push({kind:`string`,text:a,pos:i});continue}if(i===`'`){let i=n;n++;let a=``;for(;;){if(n>=r)throw new z(`Unterminated sheet name`,i);if(e[n]===`'`)if(e[n+1]===`'`)a+=`'`,n+=2;else{n++;break}else a+=e[n],n++}t.push({kind:`sheet-quoted`,text:a,pos:i});continue}if(i===`#`){let r=e.slice(n).toUpperCase(),i=ye.find(e=>r.startsWith(e));if(i){t.push({kind:`error`,text:i,pos:n}),n+=i.length;continue}throw new z(`Unrecognized error literal at "${e.slice(n,n+8)}"`,n)}if(i===`[`){let r=/^\[\d+\]/.exec(e.slice(n));if(r){t.push({kind:`external`,text:r[0],pos:n}),n+=r[0].length;continue}t.push({kind:`punct`,text:`[`,pos:n}),n++;continue}if(be(i)){let i=n;for(;n<r&&xe(e[n]);)n++;t.push({kind:`ident`,text:e.slice(i,n),pos:i});continue}if(i===`<`){e[n+1]===`>`||e[n+1]===`=`?(t.push({kind:`op`,text:e.slice(n,n+2),pos:n}),n+=2):(t.push({kind:`op`,text:`<`,pos:n}),n++);continue}if(i===`>`){e[n+1]===`=`?(t.push({kind:`op`,text:`>=`,pos:n}),n+=2):(t.push({kind:`op`,text:`>`,pos:n}),n++);continue}if(`=+-*/^&%`.includes(i)){t.push({kind:`op`,text:i,pos:n}),n++;continue}if(`():,;{}!`.includes(i)){t.push({kind:`punct`,text:i,pos:n}),n++;continue}throw new z(`Unexpected character "${i}"`,n)}return t.push({kind:`end`,text:``,pos:r}),t}var Ce={"=":10,"<>":10,"<":10,">":10,"<=":10,">=":10,"&":20,"+":30,"-":30,"*":40,"/":40,"^":50},we=55,Te=60,Ee=class{constructor(e){this.index=0,this.tokens=Se(e)}parse(){let e=this.parseExpr(0);return this.expectEnd(),e}peek(e=0){return this.tokens[Math.min(this.index+e,this.tokens.length-1)]}next(){let e=this.tokens[this.index];return e.kind!==`end`&&this.index++,e}expectPunct(e){let t=this.next();if(t.kind!==`punct`||t.text!==e)throw new z(`Expected "${e}"`,t.pos)}expectEnd(){let e=this.peek();if(e.kind!==`end`)throw new z(`Unexpected "${e.text}"`,e.pos)}parseExpr(e){let t=this.parsePrefix();for(;;){let n=this.peek();if(n.kind===`op`&&n.text===`%`&&Te>=e){this.next(),t={type:`percent`,operand:t};continue}if(n.kind!==`op`)break;let r=Ce[n.text];if(r===void 0||r<e)break;this.next();let i=this.parseExpr(r+1);t={type:`binary`,op:n.text,left:t,right:i}}return t}parsePrefix(){let e=this.next();switch(e.kind){case`number`:{let t=Number(e.text);if(!Number.isFinite(t))throw new z(`Invalid number "${e.text}"`,e.pos);if(this.isPunct(`:`)&&/^\d+$/.test(e.text)){let t=S(e.text),n=this.peek(1);if(t!==null&&n.kind===`number`&&/^\d+$/.test(n.text)){let e=S(n.text);if(e!==null)return this.next(),this.next(),this.rangeNode(null,!1,{startRow:Math.min(t,e),endRow:Math.max(t,e),startCol:0,endCol:b,wholeRows:!0,wholeCols:!1})}}return{type:`number`,value:t}}case`string`:return{type:`string`,value:e.text};case`error`:return{type:`error`,code:e.text};case`sheet-quoted`:return this.expectPunct(`!`),this.parseRefAfterSheet(e.text,!1,e.pos);case`external`:{let t=this.next();if(t.kind!==`ident`&&t.kind!==`sheet-quoted`)throw new z(`Expected sheet name after external prefix`,t.pos);return this.expectPunct(`!`),this.parseRefAfterSheet(t.text,!0,e.pos)}case`ident`:return this.parseIdent(e);case`op`:if(e.text===`-`||e.text===`+`){let t=this.parseExpr(we);return{type:`unary`,op:e.text,operand:t}}throw new z(`Unexpected operator "${e.text}"`,e.pos);case`punct`:if(e.text===`(`){let e=this.parseExpr(0);return this.expectPunct(`)`),e}if(e.text===`{`)return this.parseArray();throw new z(`Unexpected "${e.text}"`,e.pos);default:throw new z(`Unexpected end of formula`,e.pos)}}isPunct(e,t=0){let n=this.peek(t);return n.kind===`punct`&&n.text===e}parseArray(){let e=[],t=[];for(;;){t.push(this.parseExpr(0));let n=this.next();if(!(n.kind===`punct`&&n.text===`,`)){if(n.kind===`punct`&&n.text===`;`){e.push(t),t=[];continue}if(n.kind===`punct`&&n.text===`}`){e.push(t);break}throw new z(`Expected "," ";" or "}" in array literal`,n.pos)}}let n=e[0].length;if(e.some(e=>e.length!==n))throw new z(`Ragged array literal`,0);return{type:`array`,rows:e}}parseIdent(e){if(this.isPunct(`(`)){this.next();let t=e.text.replace(/^_xlfn\.|^_xludf\./i,``).toUpperCase(),n=[];if(this.isPunct(`)`))return this.next(),{type:`call`,name:t,args:n};for(;;){if(this.isPunct(`,`)){n.push({type:`missing`}),this.next();continue}if(this.isPunct(`)`)){n.push({type:`missing`}),this.next();break}n.push(this.parseExpr(0));let e=this.next();if(!(e.kind===`punct`&&e.text===`,`)){if(e.kind===`punct`&&e.text===`)`)break;throw new z(`Expected "," or ")" in ${t}(...)`,e.pos)}}return{type:`call`,name:t,args:n}}return this.isPunct(`!`)?(this.next(),this.parseRefAfterSheet(e.text,!1,e.pos)):this.parseRefOrName(e,null,!1)}parseRefAfterSheet(e,t,n){let r=this.next();if(r.kind!==`ident`&&r.kind!==`number`)throw new z(`Expected a cell reference after sheet name`,r.pos);if(r.kind===`number`){let n=S(r.text);if(n!==null&&this.isPunct(`:`)){let r=this.peek(1),i=r.kind===`number`?S(r.text):null;if(i!==null)return this.next(),this.next(),this.rangeNode(e,t,{startRow:Math.min(n,i),endRow:Math.max(n,i),startCol:0,endCol:b,wholeRows:!0,wholeCols:!1})}throw new z(`Expected a cell reference after sheet name`,r.pos)}let i=this.parseRefOrName(r,e,t);if(i.type!==`ref`&&i.type!==`range`)throw new z(`Sheet-qualified names are not supported`,n);return i}parseRefOrName(e,t,n){let r=re(e.text);if(r){if(this.isPunct(`:`)){let e=this.peek(1),i=e.kind===`ident`?re(e.text):null;if(i)return this.next(),this.next(),this.rangeNode(t,n,{startRow:Math.min(r.row,i.row),endRow:Math.max(r.row,i.row),startCol:Math.min(r.col,i.col),endCol:Math.max(r.col,i.col),wholeRows:!1,wholeCols:!1})}return{type:`ref`,sheet:t,row:r.row,col:r.col,absRow:r.absRow,absCol:r.absCol,external:n}}let i=oe(e.text.replace(/^\$/,``));if(i!==null&&this.isPunct(`:`)){let e=this.peek(1),r=e.kind===`ident`?oe(e.text.replace(/^\$/,``)):null;if(r!==null)return this.next(),this.next(),this.rangeNode(t,n,{startRow:0,endRow:x,startCol:Math.min(i,r),endCol:Math.max(i,r),wholeRows:!1,wholeCols:!0})}if(t!==null)throw new z(`"${e.text}" is not a cell reference`,e.pos);let a=e.text.toUpperCase();return a===`TRUE`?{type:`boolean`,value:!0}:a===`FALSE`?{type:`boolean`,value:!1}:{type:`name`,name:e.text}}rangeNode(e,t,n){return{type:`range`,sheet:e,external:t,...n}}};function De(e){let t=e.trim(),n=t.startsWith(`=`)?t.slice(1):t;if(n.trim()===``)throw new z(`Empty formula`,0);return new Ee(n).parse()}function Oe(e,t){let n=[],r=[],i=e=>{switch(e.type){case`ref`:e.external||n.push({sheet:e.sheet??t,startRow:e.row,startCol:e.col,endRow:e.row,endCol:e.col});return;case`range`:e.external||n.push({sheet:e.sheet??t,startRow:e.startRow,startCol:e.startCol,endRow:e.endRow,endCol:e.endCol});return;case`name`:r.push(e.name);return;case`call`:for(let t of e.args)i(t);return;case`binary`:i(e.left),i(e.right);return;case`unary`:case`percent`:i(e.operand);return;case`array`:for(let t of e.rows)for(let e of t)i(e);return;default:return}};return i(e),{ranges:n,names:r}}function V(e,t){return typeof e==typeof t}function ke(e,t,r){return e===null||n(e)?!1:r&&typeof e==`string`?r.test(e):V(e,t)?g(e,t)===0:!1}function H(e,t,r,i,a){a.budget.charge(e);let o=i===0&&typeof r==`string`&&(ee(r)||r.includes(`~`))?v(r):null;if(i===0){for(let n=0;n<e;n++)if(ke(t(n),r,o))return n;return-1}if(i>0){let i=-1;for(let a=0;a<e;a++){let e=t(a);if(e===null||n(e)||!V(e,r))continue;let o=g(e,r);!n(o)&&o<=0&&(i=a)}return i}let s=-1;for(let i=0;i<e;i++){let e=t(i);if(e===null||n(e)||!V(e,r))continue;let a=g(e,r);if(!n(a))if(a>=0)s=i;else break}return s}var Ae={MATCH:{minArgs:2,maxArgs:3,fn:(e,t)=>{let r=N(e[0],t);if(n(r))return r;let a=I(e[1],t);if(n(a))return a;let o=R(a);if(!o)return i;let s=M(e[2])?1:P(e[2],t);if(n(s))return s;let c=H(he(a),o.get,r,Math.sign(s),t);return c<0?i:c+1}},INDEX:{minArgs:2,maxArgs:4,fn:(e,t)=>{let r=I(e[0],t);if(n(r))return r;let i=M(e[1])?null:P(e[1],t);if(i!==null&&n(i))return i;let a=e.length<3||M(e[2])?null:P(e[2],t);if(a!==null&&n(a))return a;let o=i===null?null:Math.trunc(i),c=a===null?null:Math.trunc(a);return c===null&&(r.rows===1&&r.cols!==1&&o!==null?(c=o,o=1):c=r.cols===1?1:null),o===null&&(o=+(r.rows===1)),c===null&&(c=0),o<0||c<0||o>r.rows||c>r.cols?s:o===0&&c===0?r:o===0?new w(t,r.sheet,r.startRow,r.startCol+c-1,r.endRow,r.startCol+c-1):c===0?new w(t,r.sheet,r.startRow+o-1,r.startCol,r.startRow+o-1,r.endCol):new w(t,r.sheet,r.startRow+o-1,r.startCol+c-1,r.startRow+o-1,r.startCol+c-1)}},VLOOKUP:{minArgs:3,maxArgs:4,fn:(e,t)=>{let r=N(e[0],t);if(n(r))return r;let a=I(e[1],t);if(n(a))return a;let o=P(e[2],t);if(n(o))return o;let l=Math.trunc(o);if(l<1)return c;if(l>a.cols)return s;let u=M(e[3])?!0:N(e[3],t)!==!1,d=a.effectiveRows,f=H(d,e=>a.get(e,0),r,+!!u,t);return f<0?i:a.get(f,l-1)}},HLOOKUP:{minArgs:3,maxArgs:4,fn:(e,t)=>{let r=N(e[0],t);if(n(r))return r;let a=I(e[1],t);if(n(a))return a;let o=P(e[2],t);if(n(o))return o;let l=Math.trunc(o);if(l<1)return c;if(l>a.rows)return s;let u=M(e[3])?!0:N(e[3],t)!==!1,d=a.effectiveCols,f=H(d,e=>a.get(0,e),r,+!!u,t);return f<0?i:a.get(l-1,f)}},LOOKUP:{minArgs:2,maxArgs:3,fn:(e,t)=>{let r=N(e[0],t);if(n(r))return r;let a=I(e[1],t);if(n(a))return a;let o=R(a);if(!o)return i;let s=H(he(a),o.get,r,1,t);if(s<0)return i;if(M(e[2]))return o.get(s);let c=I(e[2],t);if(n(c))return c;let l=R(c);return l?l.get(s):i}},XLOOKUP:{minArgs:3,maxArgs:6,fn:(e,t)=>{let r=N(e[0],t);if(n(r))return r;let a=I(e[1],t);if(n(a))return a;let o=I(e[2],t);if(n(o))return o;let s=R(a),l=R(o);if(!s||!l)return c;let u=e.length>4&&!M(e[4])?P(e[4],t):0;if(n(u))return u;let d=he(a),f=-1;if(u===2){let e=typeof r==`string`?v(r):null;t.budget.charge(d);for(let t=0;t<d;t++)if(ke(s.get(t),r,e)){f=t;break}}else if(u===0)f=H(d,s.get,r,0,t);else{t.budget.charge(d);let e=null;for(let t=0;t<d;t++){let i=s.get(t);if(i===null||n(i)||!V(i,r))continue;let a=g(i,r);if(!n(a)){if(a===0){f=t;break}(u<0?a<0:a>0)&&(e===null||(u<0?g(i,e)===1:g(i,e)===-1))&&(e=i,f=t)}}}return f<0?e.length>3&&!M(e[3])?N(e[3],t):i:l.get(f)}},CHOOSE:{minArgs:2,maxArgs:1/0,fn:(e,t)=>{let r=P(e[0],t);if(n(r))return r;let i=Math.trunc(r);return i<1||i>=e.length?c:t.evaluate(e[i])}},OFFSET:{minArgs:3,maxArgs:5,volatile:!0,fn:(e,t)=>{let r=I(e[0],t);if(n(r))return r;let i=P(e[1],t);if(n(i))return i;let a=P(e[2],t);if(n(a))return a;let o=M(e[3])?r.rows:P(e[3],t);if(n(o))return o;let c=M(e[4])?r.cols:P(e[4],t);if(n(c))return c;if(o<1||c<1)return s;let l=r.startRow+Math.trunc(i),u=r.startCol+Math.trunc(a);return l<0||u<0?s:new w(t,r.sheet,l,u,l+Math.trunc(o)-1,u+Math.trunc(c)-1)}},INDIRECT:{minArgs:1,maxArgs:2,volatile:!0,fn:(e,t)=>{let r=F(e[0],t);if(n(r))return r;if(!M(e[1])&&N(e[1],t)===!1)return s;let i;try{i=De(r)}catch{return s}if(i.type!==`ref`&&i.type!==`range`)return s;let a=t.evaluate(i);return T(a)||n(a)?a:s}},ROW:{minArgs:0,maxArgs:1,fn:(e,t)=>{if(e.length===0||M(e[0]))return t.currentRow+1;let r=I(e[0],t);return n(r)?r:r.startRow+1}},COLUMN:{minArgs:0,maxArgs:1,fn:(e,t)=>{if(e.length===0||M(e[0]))return t.currentCol+1;let r=I(e[0],t);return n(r)?r:r.startCol+1}},ROWS:{minArgs:1,maxArgs:1,fn:(e,t)=>{let r=I(e[0],t);return n(r)?r:r.rows}},COLUMNS:{minArgs:1,maxArgs:1,fn:(e,t)=>{let r=I(e[0],t);return n(r)?r:r.cols}},HYPERLINK:{minArgs:1,maxArgs:2,fn:(e,t)=>e.length>1&&!M(e[1])?N(e[1],t):N(e[0],t)}},U=e=>(t,r)=>{let i=P(t[0],r);if(n(i))return i;let a=e(i);return n(a)||Number.isFinite(a)?a:o};function W(e){let t=0;for(let n of e)t+=n;return t}function G(e,t){let n=e.length;if(n<(t?1:2))return r;let i=W(e)/n,a=0;for(let t of e)a+=(t-i)*(t-i);return a/(t?n:n-1)}var K=e=>(t,r)=>{let i=me(t,r);return n(i)?i:e(i)};function q(e,t,n){let r=10**Math.trunc(t),i=e*r,a;return a=n===`half`?Math.sign(i)*Math.round(Math.abs(i)+2**-52*Math.abs(i)):n===`up`?Math.sign(i)*Math.ceil(Math.abs(i)-2**-52*Math.abs(i)):Math.trunc(i+Math.sign(i)*2**-52*Math.abs(i)),a/r}function je(e,t,r){let i=I(e,r);if(n(i))return i;let a=y(N(t,r)),o=0;return i.forEach(e=>{a(e)&&o++}),o}function J(e,t,i){let a=i!==`count`,o=a?e.slice(1):e;if(o.length===0||o.length%2!=0)return c;let s=a?I(e[0],t):null;if(s!==null&&n(s))return s;let l=[];for(let e=0;e<o.length;e+=2){let r=I(o[e],t);if(n(r))return r;l.push({view:r,matches:y(N(o[e+1],t))})}let u=s??l[0].view,d=u.rows,f=u.cols;for(let{view:e}of l)if(e.rows!==d||e.cols!==f)return c;if(s&&(s.rows!==d||s.cols!==f))return c;let p=Math.max(u.effectiveRows,...l.map(({view:e})=>e.effectiveRows)),m=Math.max(u.effectiveCols,...l.map(({view:e})=>e.effectiveCols));t.budget.charge(p*m*(l.length+1));let h=0,g=0,_=null,v=null;for(let e=0;e<p&&!v;e++)for(let t=0;t<m;t++){let r=!0;for(let{view:n,matches:i}of l)if(!i(n.get(e,t))){r=!1;break}if(!r)continue;if(!a){h++;continue}let o=s.get(e,t);if(n(o)){v=o;break}typeof o==`number`&&(h++,g+=o,_===null?_=o:i===`max`?_=Math.max(_,o):i===`min`&&(_=Math.min(_,o)))}if(v)return v;switch(i){case`count`:return h;case`sum`:return g;case`average`:return h===0?r:g/h;case`max`:return _??0;case`min`:return _??0}}var Me={1:e=>e.length===0?r:W(e)/e.length,4:e=>e.length===0?0:Math.max(...e),5:e=>e.length===0?0:Math.min(...e),6:e=>e.reduce((e,t)=>e*t,1),7:e=>{let t=G(e,!1);return n(t)?t:Math.sqrt(t)},8:e=>{let t=G(e,!0);return n(t)?t:Math.sqrt(t)},9:W,10:e=>G(e,!1),11:e=>G(e,!0)},Ne={SUM:{minArgs:1,maxArgs:1/0,fn:K(W)},PRODUCT:{minArgs:1,maxArgs:1/0,fn:K(e=>e.reduce((e,t)=>e*t,1))},MIN:{minArgs:1,maxArgs:1/0,fn:K(e=>e.length===0?0:Math.min(...e))},MAX:{minArgs:1,maxArgs:1/0,fn:K(e=>e.length===0?0:Math.max(...e))},AVERAGE:{minArgs:1,maxArgs:1/0,fn:K(e=>e.length===0?r:W(e)/e.length)},MEDIAN:{minArgs:1,maxArgs:1/0,fn:K(e=>{if(e.length===0)return o;let t=[...e].sort((e,t)=>e-t),n=Math.floor(t.length/2);return t.length%2==1?t[n]:(t[n-1]+t[n])/2})},STDEV:{minArgs:1,maxArgs:1/0,fn:K(e=>{let t=G(e,!1);return n(t)?t:Math.sqrt(t)})},"STDEV.S":{minArgs:1,maxArgs:1/0,fn:K(e=>{let t=G(e,!1);return n(t)?t:Math.sqrt(t)})},STDEVP:{minArgs:1,maxArgs:1/0,fn:K(e=>{let t=G(e,!0);return n(t)?t:Math.sqrt(t)})},"STDEV.P":{minArgs:1,maxArgs:1/0,fn:K(e=>{let t=G(e,!0);return n(t)?t:Math.sqrt(t)})},VAR:{minArgs:1,maxArgs:1/0,fn:K(e=>G(e,!1))},"VAR.S":{minArgs:1,maxArgs:1/0,fn:K(e=>G(e,!1))},VARP:{minArgs:1,maxArgs:1/0,fn:K(e=>G(e,!0))},"VAR.P":{minArgs:1,maxArgs:1/0,fn:K(e=>G(e,!0))},COUNT:{minArgs:1,maxArgs:1/0,fn:(e,t)=>{let r=0;return L(e,t,({value:e,viaRange:t})=>{if(!(n(e)||e===null)){if(typeof e==`number`){r++;return}!t&&(typeof e==`boolean`||!Number.isNaN(Number(e)))&&(typeof e==`boolean`||e.trim()!==``)&&r++}}),r}},COUNTA:{minArgs:1,maxArgs:1/0,fn:(e,t)=>{let n=0;return L(e,t,({value:e})=>{e!==null&&n++}),n}},COUNTBLANK:{minArgs:1,maxArgs:1,fn:(e,t)=>{let r=I(e[0],t);if(n(r))return r;let i=0;r.forEach(e=>{(e===null||e===``)&&i++});let a=r.rows*r.cols,o=r.effectiveRows*r.effectiveCols;return i+(a-o)}},COUNTIF:{minArgs:2,maxArgs:2,fn:(e,t)=>je(e[0],e[1],t)},SUMIF:{minArgs:2,maxArgs:3,fn:(e,t)=>{let r=I(e[0],t);if(n(r))return r;let i=y(N(e[1],t)),a=M(e[2])?r:I(e[2],t);if(n(a))return a;let o=0,s=null;return r.forEach((e,t,c)=>{if(s||!i(e))return;let l=a===r?e:a.get(t,c);if(n(l)){s=l;return}typeof l==`number`&&(o+=l)}),s??o}},AVERAGEIF:{minArgs:2,maxArgs:3,fn:(e,t)=>{let i=I(e[0],t);if(n(i))return i;let a=y(N(e[1],t)),o=M(e[2])?i:I(e[2],t);if(n(o))return o;let s=0,c=0,l=null;return i.forEach((e,t,r)=>{if(l||!a(e))return;let u=o===i?e:o.get(t,r);if(n(u)){l=u;return}typeof u==`number`&&(s+=u,c++)}),l||(c===0?r:s/c)}},SUMIFS:{minArgs:3,maxArgs:1/0,fn:(e,t)=>J(e,t,`sum`)},COUNTIFS:{minArgs:2,maxArgs:1/0,fn:(e,t)=>J(e,t,`count`)},AVERAGEIFS:{minArgs:3,maxArgs:1/0,fn:(e,t)=>J(e,t,`average`)},MAXIFS:{minArgs:3,maxArgs:1/0,fn:(e,t)=>J(e,t,`max`)},MINIFS:{minArgs:3,maxArgs:1/0,fn:(e,t)=>J(e,t,`min`)},SUMPRODUCT:{minArgs:1,maxArgs:1/0,fn:(e,t)=>{let r=e.map(e=>I(e,t));for(let e of r)if(n(e))return e;let i=r[0],a=i.rows,o=i.cols;for(let e of r){let t=e;if(t.rows!==a||t.cols!==o)return c}let s=0,l=i.effectiveRows,u=i.effectiveCols;t.budget.charge(l*u*r.length);for(let e=0;e<l;e++)for(let t=0;t<u;t++){let i=1;for(let a of r){let r=a.get(e,t);if(n(r))return r;i*=typeof r==`number`?r:0}s+=i}return s}},SUBTOTAL:{minArgs:2,maxArgs:1/0,fn:(e,t)=>{let r=P(e[0],t);if(n(r))return r;let i=Math.trunc(r);if(i>11&&i<101||i>111||i<1)return c;let a=i%100;if(a===2||a===3){let n=0;return L(e.slice(1),t,({value:e})=>{(a===2?typeof e==`number`:e!==null)&&n++}),n}let o=Me[a];if(!o)return c;let s=me(e.slice(1),t);return n(s)?s:o(s)}},ABS:{minArgs:1,maxArgs:1,fn:U(Math.abs)},SQRT:{minArgs:1,maxArgs:1,fn:U(e=>e<0?o:Math.sqrt(e))},EXP:{minArgs:1,maxArgs:1,fn:U(Math.exp)},LN:{minArgs:1,maxArgs:1,fn:U(e=>e<=0?o:Math.log(e))},LOG10:{minArgs:1,maxArgs:1,fn:U(e=>e<=0?o:Math.log10(e))},LOG:{minArgs:1,maxArgs:2,fn:(e,t)=>{let r=P(e[0],t);if(n(r))return r;let i=M(e[1])?10:P(e[1],t);return n(i)?i:r<=0||i<=0||i===1?o:Math.log(r)/Math.log(i)}},SIGN:{minArgs:1,maxArgs:1,fn:U(Math.sign)},INT:{minArgs:1,maxArgs:1,fn:U(Math.floor)},TRUNC:{minArgs:1,maxArgs:2,fn:(e,t)=>{let r=P(e[0],t);if(n(r))return r;let i=M(e[1])?0:P(e[1],t);return n(i)?i:q(r,i,`down`)}},ROUND:{minArgs:2,maxArgs:2,fn:(e,t)=>{let r=P(e[0],t);if(n(r))return r;let i=P(e[1],t);return n(i)?i:q(r,i,`half`)}},ROUNDUP:{minArgs:2,maxArgs:2,fn:(e,t)=>{let r=P(e[0],t);if(n(r))return r;let i=P(e[1],t);return n(i)?i:q(r,i,`up`)}},ROUNDDOWN:{minArgs:2,maxArgs:2,fn:(e,t)=>{let r=P(e[0],t);if(n(r))return r;let i=P(e[1],t);return n(i)?i:q(r,i,`down`)}},MOD:{minArgs:2,maxArgs:2,fn:(e,t)=>{let i=P(e[0],t);if(n(i))return i;let a=P(e[1],t);return n(a)?a:a===0?r:i-a*Math.floor(i/a)}},POWER:{minArgs:2,maxArgs:2,fn:(e,t)=>{let r=P(e[0],t);if(n(r))return r;let i=P(e[1],t);if(n(i))return i;let a=r**+i;return Number.isFinite(a)?a:o}},CEILING:{minArgs:1,maxArgs:2,fn:(e,t)=>{let r=P(e[0],t);if(n(r))return r;let i=M(e[1])?1:P(e[1],t);return n(i)?i:i===0?0:r>0&&i<0?o:Math.ceil(r/i)*i}},FLOOR:{minArgs:1,maxArgs:2,fn:(e,t)=>{let i=P(e[0],t);if(n(i))return i;let a=M(e[1])?1:P(e[1],t);return n(a)?a:a===0?r:i>0&&a<0?o:Math.floor(i/a)*a}},PI:{minArgs:0,maxArgs:0,fn:()=>Math.PI},RAND:{minArgs:0,maxArgs:0,volatile:!0,fn:()=>Math.random()},RANDBETWEEN:{minArgs:2,maxArgs:2,volatile:!0,fn:(e,t)=>{let r=P(e[0],t);if(n(r))return r;let i=P(e[1],t);if(n(i))return i;let a=Math.ceil(r),s=Math.floor(i);return s<a?o:a+Math.floor(Math.random()*(s-a+1))}}},Pe=[`January`,`February`,`March`,`April`,`May`,`June`,`July`,`August`,`September`,`October`,`November`,`December`],Fe=[`Sunday`,`Monday`,`Tuesday`,`Wednesday`,`Thursday`,`Friday`,`Saturday`],Y=e=>String(e).padStart(2,`0`);function Ie(e){let t=e.replace(/"[^"]*"/g,``).replace(/\[[^\]]*\]/g,``);return/[ymdhs]/i.test(t)&&!/^[#0.,%\s-]*$/.test(t)}function Le(e,t){let n=A(e,t);return n?new Date(Date.UTC(n.year,n.month-1,n.day)).getUTCDay():0}function Re(e,t,n){if(e<0)return null;let r=A(e,n);if(!r)return null;let i=j(e),a=/am\/pm/i.test(t),o=i.hour%12==0?12:i.hour%12,s=``,c=0,l=t,u=l.length,d=!1;for(;c<u;){let t=l[c];if(t===`"`){let e=l.indexOf(`"`,c+1);if(e<0)return null;s+=l.slice(c+1,e),c=e+1;continue}if(t===`\\`){s+=l[c+1]??``,c+=2;continue}if(/[Aa]/.test(t)&&l.slice(c,c+5).toLowerCase()===`am/pm`){s+=i.hour<12?`AM`:`PM`,c+=5;continue}if(/[ymdhs]/i.test(t)){let f=c;for(;f<u&&l[f].toLowerCase()===t.toLowerCase();)f++;let p=f-c,m=t.toLowerCase();if(m===`y`)s+=p<=2?Y(r.year%100):String(r.year),d=!1;else if(m===`d`)p===1?s+=String(r.day):p===2?s+=Y(r.day):p===3?s+=Fe[Le(e,n)].slice(0,3):s+=Fe[Le(e,n)],d=!1;else if(m===`h`){let e=a?o:i.hour;s+=p===1?String(e):Y(e),d=!0}else if(m===`s`)s+=p===1?String(i.second):Y(i.second),d=!1;else{let e=/^\s*:?s/i.test(l.slice(f));d||e?s+=p===1?String(i.minute):Y(i.minute):p===1?s+=String(r.month):p===2?s+=Y(r.month):p===3?s+=Pe[r.month-1].slice(0,3):s+=Pe[r.month-1],d=!1}c=f;continue}s+=t,d&&=/[\s:]/.test(t),c++}return s}function ze(e,t){let n=t.includes(`%`)?e*100:e,r=t.replace(/"[^"]*"/g,``).replace(/[^0#.,%]/g,``),i=r.indexOf(`.`),a=i>=0?r.slice(i+1).replace(/[^0#]/g,``):``,o=a.length,s=(a.match(/0/g)??[]).length,c=i>=0?r.slice(0,i):r,l=c.includes(`,`),u=Math.max(1,(c.match(/0/g)??[]).length),d=n<0;n=Math.abs(n);let f=n.toFixed(o),[p=`0`,m=``]=f.split(`.`);for(;m.length>s&&m.endsWith(`0`);)m=m.slice(0,-1);for(;p.length<u;)p=`0${p}`;l&&(p=p.replace(/\B(?=(\d{3})+(?!\d))/g,`,`));let h=m.length>0?`${p}.${m}`:p;o>0&&s===o&&(h=`${p}.${f.split(`.`)[1]??``}`);let g=``,_=!1,v=0;for(;v<t.length;){let e=t[v];if(e===`"`){let e=t.indexOf(`"`,v+1);if(e<0)return null;g+=t.slice(v+1,e),v=e+1;continue}if(/[0#.,]/.test(e)){_||=(g+=h,!0),v++;continue}g+=e,v++}return _||(g+=h),(d?`-`:``)+g}function Be(e,t,n){let r=t.trim();if(r===``||/^general$/i.test(r))return String(e);let i=r.split(`;`)[0];return Ie(i)?Re(e,i,n):ze(e,i)}var Ve={CONCATENATE:{minArgs:1,maxArgs:1/0,fn:(e,t)=>{let r=``;for(let i of e){if(M(i))continue;let e=F(i,t);if(n(e))return e;r+=e}return r}},CONCAT:{minArgs:1,maxArgs:1/0,fn:(e,t)=>{let r=``,i=null;return L(e,t,({value:e})=>{if(!(i!==null&&n(i))){if(n(e)){i=e;return}e!==null&&(r+=typeof e==`string`?e:typeof e==`boolean`?e?`TRUE`:`FALSE`:u(e))}}),i!==null&&n(i)?i:r}},TEXTJOIN:{minArgs:3,maxArgs:1/0,fn:(e,t)=>{let r=F(e[0],t);if(n(r))return r;let i=N(e[1],t)!==!1,a=[],o=null;return L(e.slice(2),t,({value:e})=>{if(o!==null&&n(o))return;if(n(e)){o=e;return}let t=e===null?``:typeof e==`string`?e:typeof e==`boolean`?e?`TRUE`:`FALSE`:u(e);i&&t===``||a.push(t)}),o!==null&&n(o)?o:a.join(r)}},LEFT:{minArgs:1,maxArgs:2,fn:(e,t)=>{let r=F(e[0],t);if(n(r))return r;let i=M(e[1])?1:P(e[1],t);return n(i)?i:i<0?c:r.slice(0,Math.trunc(i))}},RIGHT:{minArgs:1,maxArgs:2,fn:(e,t)=>{let r=F(e[0],t);if(n(r))return r;let i=M(e[1])?1:P(e[1],t);if(n(i))return i;if(i<0)return c;let a=Math.trunc(i);return a===0?``:r.slice(-a)}},MID:{minArgs:3,maxArgs:3,fn:(e,t)=>{let r=F(e[0],t);if(n(r))return r;let i=P(e[1],t);if(n(i))return i;let a=P(e[2],t);return n(a)?a:i<1||a<0?c:r.slice(Math.trunc(i)-1,Math.trunc(i)-1+Math.trunc(a))}},LEN:{minArgs:1,maxArgs:1,fn:(e,t)=>{let r=F(e[0],t);return n(r)?r:r.length}},LOWER:{minArgs:1,maxArgs:1,fn:(e,t)=>{let r=F(e[0],t);return n(r)?r:r.toLowerCase()}},UPPER:{minArgs:1,maxArgs:1,fn:(e,t)=>{let r=F(e[0],t);return n(r)?r:r.toUpperCase()}},PROPER:{minArgs:1,maxArgs:1,fn:(e,t)=>{let r=F(e[0],t);return n(r)?r:r.replace(/([A-Za-z])([A-Za-z]*)/g,(e,t,n)=>t.toUpperCase()+n.toLowerCase())}},TRIM:{minArgs:1,maxArgs:1,fn:(e,t)=>{let r=F(e[0],t);return n(r)?r:r.replace(/ +/g,` `).trim()}},SUBSTITUTE:{minArgs:3,maxArgs:4,fn:(e,t)=>{let r=F(e[0],t);if(n(r))return r;let i=F(e[1],t);if(n(i))return i;let a=F(e[2],t);if(n(a))return a;if(i===``)return r;if(M(e[3]))return r.split(i).join(a);let o=P(e[3],t);if(n(o))return o;let s=Math.trunc(o);if(s<1)return c;let l=-1;for(let e=0;e<s;e++)if(l=r.indexOf(i,l+1),l<0)return r;return r.slice(0,l)+a+r.slice(l+i.length)}},REPLACE:{minArgs:4,maxArgs:4,fn:(e,t)=>{let r=F(e[0],t);if(n(r))return r;let i=P(e[1],t);if(n(i))return i;let a=P(e[2],t);if(n(a))return a;let o=F(e[3],t);if(n(o))return o;if(i<1||a<0)return c;let s=Math.trunc(i)-1;return r.slice(0,s)+o+r.slice(s+Math.trunc(a))}},FIND:{minArgs:2,maxArgs:3,fn:(e,t)=>{let r=F(e[0],t);if(n(r))return r;let i=F(e[1],t);if(n(i))return i;let a=M(e[2])?1:P(e[2],t);if(n(a))return a;if(a<1||a>i.length+1)return c;let o=i.indexOf(r,Math.trunc(a)-1);return o<0?c:o+1}},SEARCH:{minArgs:2,maxArgs:3,fn:(e,t)=>{let r=F(e[0],t);if(n(r))return r;let i=F(e[1],t);if(n(i))return i;let a=M(e[2])?1:P(e[2],t);if(n(a))return a;if(a<1||a>i.length+1)return c;let o=Math.trunc(a)-1,s=v(`*${r}*`),l=new RegExp(s.source.replace(/^\^\.\*/,`^`).replace(/\.\*\$$/,``),`i`);for(let e=o;e<=i.length;e++)if(l.test(i.slice(e)))return e+1;return c}},REPT:{minArgs:2,maxArgs:2,fn:(e,t)=>{let r=F(e[0],t);if(n(r))return r;let i=P(e[1],t);if(n(i))return i;if(i<0)return c;let a=Math.trunc(i);return r.length*a>32767?c:r.repeat(a)}},EXACT:{minArgs:2,maxArgs:2,fn:(e,t)=>{let r=F(e[0],t);if(n(r))return r;let i=F(e[1],t);return n(i)?i:r===i}},VALUE:{minArgs:1,maxArgs:1,fn:(e,t)=>{let r=N(e[0],t);if(n(r)||typeof r==`number`)return r;if(r===null||typeof r==`boolean`)return c;let i=d(r);return i===null?c:i}},T:{minArgs:1,maxArgs:1,fn:(e,t)=>{let r=N(e[0],t);return n(r)||typeof r==`string`?r:``}},N:{minArgs:1,maxArgs:1,fn:(e,t)=>{let r=N(e[0],t);return n(r)||typeof r==`number`?r:typeof r==`boolean`?+!!r:0}},CHAR:{minArgs:1,maxArgs:1,fn:(e,t)=>{let r=P(e[0],t);if(n(r))return r;let i=Math.trunc(r);return i<1||i>255?c:String.fromCharCode(i)}},CODE:{minArgs:1,maxArgs:1,fn:(e,t)=>{let r=F(e[0],t);return n(r)?r:r.length===0?c:r.charCodeAt(0)}},TEXT:{minArgs:2,maxArgs:2,fn:(e,t)=>{let r=N(e[0],t);if(n(r))return r;let i=F(e[1],t);return n(i)?i:typeof r==`string`?r:typeof r==`boolean`?r?`TRUE`:`FALSE`:r===null?Be(0,i,t.date1904)??``:Be(r,i,t.date1904)??o}}};function He(){let e=new Map;for(let t of[Ne,ve,Ae,Ve,_e,ge])for(let[n,r]of Object.entries(t))e.set(n,r);return e}function Ue(e){return[...e.entries()].filter(([,e])=>e.volatile===!0).map(([e])=>e).sort()}var We=16384,X=(e,t)=>e*We+t,Z=e=>Math.floor(e/We),Q=e=>e%We,Ge=class{constructor(e){this.cells=new Map,this.maxRow=-1,this.maxCol=-1,this.name=e}get(e,t){return this.cells.get(X(e,t))}set(e,t,n){this.cells.set(X(e,t),n),e>this.maxRow&&(this.maxRow=e),t>this.maxCol&&(this.maxCol=t)}delete(e,t){this.cells.delete(X(e,t))}},Ke=class{constructor(){this.byLowerName=new Map,this.sheetOrder=[],this.date1904=!1,this.definedNames=new Map}sheet(e){return this.byLowerName.get(e.toLowerCase())}ensureSheet(e){let t=this.byLowerName.get(e.toLowerCase());if(t)return t;let n=new Ge(e);return this.byLowerName.set(e.toLowerCase(),n),this.sheetOrder.push(e),n}firstSheetName(){return this.sheetOrder[0]??`Sheet1`}*allCells(){for(let e of this.sheetOrder){let t=this.byLowerName.get(e.toLowerCase());for(let[e,n]of t.cells)yield{sheet:t,row:Z(e),col:Q(e),slot:n}}}};function qe(e){let t=new Ke;t.date1904=e.date1904??!1;for(let[n,r]of Object.entries(e.definedNames??{}))t.definedNames.set(n.toLowerCase(),r);for(let n of e.sheets){let e=t.ensureSheet(n.name);for(let t=0;t<n.cells.length;t++){let r=n.cells[t];for(let n=0;n<r.length;n++){let i=r[n];if(!i||i.value===void 0&&i.formula===void 0)continue;let a={value:i.value??null,staleness:i.formula===void 0?`current`:`neverEvaluated`,volatile:!1};i.formula!==void 0&&(a.formula=i.formula),e.set(t,n,a)}}}return t}var Je=100,Ye=.001,Xe=(e,t)=>`${e}\0${t}`;function Ze(e,t,n){return t>=e.startRow&&t<=e.endRow&&n>=e.startCol&&n<=e.endCol}var Qe=class{constructor(e={}){this.workbook=new Ke,this.edges=[],this.parseCache=new Map,this.disposed=!1,this.config=e,this.now=e.now??(()=>new Date),this.functions=He(),this.capabilities={functions:[...this.functions.keys()].sort(),dynamicArrays:!1,iterativeCalc:!0,externalRefs:!1,leapYear1900Bug:!0,volatileFunctions:Ue(this.functions)}}async loadWorkbook(e){this.assertLive(),this.workbook=qe(e),this.config.date1904!==void 0&&(this.workbook.date1904=this.config.date1904),this.edges=[];for(let{sheet:e,row:t,col:n,slot:r}of this.workbook.allCells())r.formula!==void 0&&this.attachFormula(e,t,n,r)}setCellValue(e,t){this.assertLive();let n=this.workbook.ensureSheet(e.sheet);n.get(e.row,e.col)?.formula!==void 0&&this.detachFormula(n,e.row,e.col),n.set(e.row,e.col,{value:t,staleness:`current`,volatile:!1}),this.markDependentsDirty(n.name,e.row,e.col)}setCellFormula(e,t){this.assertLive();let n=this.workbook.ensureSheet(e.sheet),r=n.get(e.row,e.col);r?.formula!==void 0&&this.detachFormula(n,e.row,e.col);let i={value:r?.value??null,formula:t,staleness:`neverEvaluated`,volatile:!1};n.set(e.row,e.col,i),this.attachFormula(n,e.row,e.col,i),this.markDependentsDirty(n.name,e.row,e.col)}clearCell(e){this.assertLive();let t=this.workbook.sheet(e.sheet);t&&(t.get(e.row,e.col)?.formula!==void 0&&this.detachFormula(t,e.row,e.col),t.delete(e.row,e.col),this.markDependentsDirty(t.name,e.row,e.col))}async getCell(e){return this.getCellSync(e)}async getCells(e){return e.map(e=>this.getCellSync(e))}getCellSync(e){this.assertLive();let t=this.workbook.sheet(e.sheet)?.get(e.row,e.col);if(!t)return{value:null,staleness:`current`,spillRole:`none`,volatile:!1};let n={value:t.value,staleness:t.staleness,spillRole:`none`,volatile:t.volatile};return t.formula!==void 0&&(n.formula=t.formula),n}parse(e){let t=this.parseCache.get(e);if(t===void 0){try{t=De(e)}catch(e){if(!(e instanceof z))throw e;t=null}this.parseCache.size>5e4&&this.parseCache.clear(),this.parseCache.set(e,t)}return t}attachFormula(e,t,n,r){let i=this.parse(r.formula);if(!i){r.parseFailed=!0;return}r.ast=i;let{ranges:a,names:o}=Oe(i,e.name);for(let t of o){let n=this.workbook.definedNames.get(t.toLowerCase());if(n){let t=this.parse(n);t&&a.push(...Oe(t,e.name).ranges)}}r.refs=a,r.volatile=this.astIsVolatile(i);let s=e.name.toLowerCase(),c=X(t,n);for(let e of a)this.edges.push({range:e,sheetLower:s,key:c})}detachFormula(e,t,n){let r=e.name.toLowerCase(),i=X(t,n);this.edges=this.edges.filter(e=>!(e.sheetLower===r&&e.key===i))}astIsVolatile(e){switch(e.type){case`call`:return this.functions.get(e.name)?.volatile?!0:e.args.some(e=>this.astIsVolatile(e));case`binary`:return this.astIsVolatile(e.left)||this.astIsVolatile(e.right);case`unary`:case`percent`:return this.astIsVolatile(e.operand);case`array`:return e.rows.some(e=>e.some(e=>this.astIsVolatile(e)));default:return!1}}markDependentsDirty(e,t,n){let r=this.edges.length,i=new Set,a=[{sheetLower:e.toLowerCase(),row:t,col:n}];for(;a.length>0;){if(i.size*2>r&&r>0){for(let{slot:e}of this.workbook.allCells())e.formula!==void 0&&e.staleness===`current`&&(e.staleness=`dirty`);return}let e=a.pop();for(let t of this.edges){if(t.range.sheet.toLowerCase()!==e.sheetLower||!Ze(t.range,e.row,e.col))continue;let n=Xe(t.sheetLower,t.key);if(i.has(n))continue;i.add(n);let r=this.sheetByLower(t.sheetLower),o=Z(t.key),s=Q(t.key),c=r?.get(o,s);c&&c.formula!==void 0&&c.staleness===`current`&&(c.staleness=`dirty`),r&&a.push({sheetLower:t.sheetLower,row:o,col:s})}}}sheetByLower(e){return this.workbook.sheet(e)}buildContext(e,t,n,r){let i={workbook:this.workbook,currentSheet:t,currentRow:n,currentCol:r,budget:e,date1904:this.workbook.date1904,now:this.now,functions:this.functions,readCell:(e,t,n)=>e.get(t,n)?.value??null,definedName:e=>this.workbook.definedNames.get(e.toLowerCase()),parseSubFormula:e=>this.parse(e),evaluate:e=>D(e,i)};return i}evaluateSlot(e,t,n,r,i){if(r.parseFailed||!r.ast)return a;let o=this.buildContext(i,e.name,t,n),s=E(D(r.ast,o),o);return T(s)?l:s??0}async evaluateAll(e){this.assertLive();let t=new ce(e??this.config.budgets),n=[],r=0,i=[];for(let e of this.workbook.allCells())e.slot.formula!==void 0&&(e.slot.volatile&&e.slot.staleness===`current`&&(e.slot.staleness=`dirty`),e.slot.staleness!==`current`&&i.push(e));let a=new Map,o=e=>{let n=this.workbook.sheet(e.sheet);if(!n)return[];let r=Math.min(e.endRow,n.maxRow),i=Math.min(e.endCol,n.maxCol),o=`${e.sheet.toLowerCase()}:${e.startRow},${e.startCol},${r},${i}`,s=a.get(o);if(s)return s;let c=[],l=(r-e.startRow+1)*(i-e.startCol+1);if(t.charge(Math.max(0,Math.min(l,n.cells.size))),l<=n.cells.size)for(let t=e.startRow;t<=r;t++)for(let r=e.startCol;r<=i;r++)n.get(t,r)?.formula!==void 0&&c.push({sheet:n,row:t,col:r});else for(let[t,r]of n.cells){if(r.formula===void 0)continue;let i=Z(t),a=Q(t);Ze(e,i,a)&&c.push({sheet:n,row:i,col:a})}return a.set(o,c),c},s=new Map,c=(e,t,n)=>Xe(e.name.toLowerCase(),X(t,n));try{for(let e of i){let i=c(e.sheet,e.row,e.col);if(s.get(i)===2)continue;let a=[{...e,expanded:!1}];for(;a.length>0;){let e=a[a.length-1],i=c(e.sheet,e.row,e.col),l=e.sheet.get(e.row,e.col);if(!l||l.formula===void 0||s.get(i)===2){a.pop();continue}if(!e.expanded){e.expanded=!0,s.set(i,1);for(let e of l.refs??[])for(let t of o(e)){let e=c(t.sheet,t.row,t.col);if(e===i)continue;let r=s.get(e);if(r!==2){if(r===1){let e=a.findIndex(e=>e.sheet===t.sheet&&e.row===t.row&&e.col===t.col);for(let t=Math.max(0,e);t<a.length;t++){let e=a[t];n.push({sheet:e.sheet.name,row:e.row,col:e.col})}continue}t.sheet.get(t.row,t.col).staleness!==`current`&&a.push({...t,expanded:!1})}}continue}l.staleness!==`current`&&(l.value=this.evaluateSlot(e.sheet,e.row,e.col,l,t),l.staleness=`current`,r++),s.set(i,2),a.pop()}}if(n.length>0&&(this.settleCycles(n,t,r),(this.config.cyclePolicy??`error`)===`error`))return{status:`cycle-error`,evaluatedCells:r,workUnits:t.workUnits,elapsedMs:t.elapsedMs,dirtyRemaining:[],cycleCells:$(n)}}catch(e){if(e instanceof C){let e=[];for(let{sheet:t,row:n,col:r,slot:i}of this.workbook.allCells())i.formula!==void 0&&i.staleness!==`current`&&e.push({sheet:t.name,row:n,col:r});return{status:`budget-exceeded`,evaluatedCells:r,workUnits:t.workUnits,elapsedMs:t.elapsedMs,dirtyRemaining:e,cycleCells:$(n)}}throw e}return{status:`complete`,evaluatedCells:r,workUnits:t.workUnits,elapsedMs:t.elapsedMs,dirtyRemaining:[],cycleCells:$(n)}}settleCycles(e,t,n){let r=this.config.cyclePolicy??`error`,i=$(e);if(r===`error`){for(let e of i){let t=this.workbook.sheet(e.sheet)?.get(e.row,e.col);t&&(t.value=l,t.staleness=`current`)}return}let a=this.config.iterateMaxIterations??Je,o=this.config.iterateMaxChange??Ye;for(let e of i){let t=this.workbook.sheet(e.sheet)?.get(e.row,e.col);t&&typeof t.value!=`number`&&(t.value=0)}for(let e=0;e<a;e++){let e=0;for(let n of i){let r=this.workbook.sheet(n.sheet),i=r?.get(n.row,n.col);if(!r||!i||i.formula===void 0)continue;let a=i.value,o=this.evaluateSlot(r,n.row,n.col,i,t);i.value=o,i.staleness=`current`,typeof a==`number`&&typeof o==`number`?e=Math.max(e,Math.abs(o-a)):a!==o&&(e=1/0)}if(e<=o)break}}async evaluateFormula(e,t){this.assertLive();let n;try{n=De(e)}catch(e){if(e instanceof z)return a;throw e}let r=t?.sheet??this.workbook.firstSheetName(),i=new ce(this.config.budgets),o=this.buildContext(i,r,t?.row??0,t?.col??0);try{return E(D(n,o),o)??0}catch(e){if(e instanceof C)return l;throw e}}async precedentsOf(e){this.assertLive();let t=this.workbook.sheet(e.sheet)?.get(e.row,e.col);return t?.refs?[...t.refs]:[]}async dependentsOf(e){this.assertLive();let t=e.sheet.toLowerCase(),n=[],r=new Set;for(let i of this.edges){if(i.range.sheet.toLowerCase()!==t||!Ze(i.range,e.row,e.col))continue;let a=Xe(i.sheetLower,i.key);if(r.has(a))continue;r.add(a);let o=this.sheetByLower(i.sheetLower);o&&n.push({sheet:o.name,row:Z(i.key),col:Q(i.key)})}return n}dispose(){this.disposed=!0,this.edges=[],this.parseCache.clear(),this.workbook=new Ke}assertLive(){if(this.disposed)throw Error(`CalcEngine used after dispose()`)}};function $(e){let t=new Set,n=[];for(let r of e){let e=`${r.sheet.toLowerCase()}!${r.row},${r.col}`;t.has(e)||(t.add(e),n.push(r))}return n}function $e(e={}){return new Qe(e)}function et(e){let t=null,n=(t,n)=>{e({type:`error`,id:t,message:n instanceof Error?n.message:String(n)})};return r=>{try{switch(r.type){case`create`:t?.dispose(),t=$e(r.config),e({type:`ready`,id:r.id});return;case`dispose`:t?.dispose(),t=null;return;default:break}if(!t){`id`in r&&n(r.id,Error(`engine not created`));return}switch(r.type){case`loadWorkbook`:t.loadWorkbook(r.seed).then(()=>e({type:`done`,id:r.id}),e=>n(r.id,e));return;case`setCellValue`:t.setCellValue(r.address,r.value);return;case`setCellFormula`:t.setCellFormula(r.address,r.formula);return;case`clearCell`:t.clearCell(r.address);return;case`getCells`:t.getCells(r.addresses).then(t=>e({type:`cells`,id:r.id,states:t}),e=>n(r.id,e));return;case`evaluateAll`:t.evaluateAll(r.budgets).then(t=>e({type:`evaluated`,id:r.id,result:t}),e=>n(r.id,e));return;case`evaluateFormula`:t.evaluateFormula(r.formula,r.context).then(t=>e({type:`value`,id:r.id,value:t}),e=>n(r.id,e));return;case`precedentsOf`:t.precedentsOf(r.address).then(t=>e({type:`ranges`,id:r.id,ranges:t}),e=>n(r.id,e));return;case`dependentsOf`:t.dependentsOf(r.address).then(t=>e({type:`addresses`,id:r.id,addresses:t}),e=>n(r.id,e));return}}catch(e){`id`in r&&n(r.id,e)}}}var tt=globalThis,nt=et(e=>tt.postMessage(e));tt.onmessage=e=>nt(e.data)})();
@@ -1,2 +1,2 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/layouts-2A7QNF6Y-De2t-YXl.js","assets/chunk-7AWFHP5U-MiVVPFTx.js","assets/rolldown-runtime-aKtaBQYM.js","assets/jszip.min-DhiFe-R7.js","assets/chunk-S5PCVMKU-DbCZ5AUH.js","assets/chunk-6N2J7C2B-B5QIrD9m.js"])))=>i.map(i=>d[i]);
2
- import{t as e}from"./preload-helper-Czpn1I53.js";import"./chunk-7AWFHP5U-MiVVPFTx.js";import{ot as t,rt as n}from"./chunk-S5PCVMKU-DbCZ5AUH.js";import{n as r,r as i,t as a}from"./chunk-WATAOG4Y-DXg2lov5.js";import{t as o}from"./chunk-KXOZMWBS-BwD4KMLI.js";import{n as s,r as c,t as l}from"./chunk-2JJ5RFDZ-B2-BFNXu.js";async function u(e,n){t(n);let r=null,i=e;if(typeof i.size==`number`&&typeof i.slice==`function`&&typeof i.arrayBuffer==`function`)r=new Uint8Array(await d(i.slice(0,5).arrayBuffer(),n));else if(typeof e.byteLength==`number`){let t=e;r=new Uint8Array(t,0,Math.min(5,t.byteLength))}return t(n),!r||r.length<4?!1:r[0]===37&&r[1]===80&&r[2]===68&&r[3]===70}function d(e,n){return t(n),n?new Promise((t,r)=>{let i=!1,a=e=>{i||(i=!0,n.removeEventListener(`abort`,o),e())},o=()=>a(()=>r(n.reason??Error(`OOXML operation was cancelled`)));n.addEventListener(`abort`,o,{once:!0}),n.aborted&&o(),e.then(e=>a(()=>t(e)),e=>a(()=>r(e)))}):e}function f(e){let t=[...e.contentTypes.overrides.values(),...e.contentTypes.defaults.values()];for(let e of t){if(e.includes(`wordprocessingml`))return`docx`;if(e.includes(`presentationml`))return`pptx`;if(e.includes(`spreadsheetml`))return`xlsx`}}var p={docx:a,pptx:r,xlsx:i};async function m(r,i={}){if(t(i.signal),await u(r,i.signal))throw new o(`unsupported-input`,`PDF theme inference is not supported — PDF files carry no theme color/font tables.`,{format:`pdf`});let a;try{a=await n(r,i)}catch(e){throw i.signal?.aborted?i.signal.reason??e:new o(`invalid-input`,`Could not read this file as a Word, PowerPoint, or Excel document.`,{cause:e})}let c=i.format??f(a);if(t(i.signal),!c)throw new o(`invalid-input`,`Not a Word, PowerPoint, or Excel document — no theme to infer.`);let d=await p[c](a);if(t(i.signal),!d)throw new o(`invalid-input`,`No theme part found in this file.`,{format:c});let{theme:m,warnings:h}=s(d,{nameHint:i.nameHint});t(i.signal);let g=[...d.warnings,...h],_;if(i.inferLayouts)if(c!==`pptx`)g.push(`Layout inference is only available for PowerPoint files; skipped.`);else{let{analyzePptxLayouts:t}=await e(async()=>{let{analyzePptxLayouts:e}=await import(`./layouts-2A7QNF6Y-De2t-YXl.js`);return{analyzePptxLayouts:e}},__vite__mapDeps([0,1,2,3,4,5])),n=await t(a,{colors:l(d),signal:i.signal});g.push(...n.warnings);let r=n.layouts.map(e=>e.verdict.kind===`custom`?e.verdict.def:null).filter(e=>e!==null);r.length>0&&(_=r)}return t(i.signal),{theme:m,extraction:d,..._?{layouts:_}:{},warnings:g}}export{l as colorHintsFromExtraction,s as compileExtractedTheme,a as extractDocxTheme,r as extractPptxTheme,i as extractXlsxTheme,c as extractedThemeToPartial,m as inferThemeFromFile};
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/layouts-2A7QNF6Y-CVwP7noP.js","assets/chunk-7AWFHP5U-MiVVPFTx.js","assets/rolldown-runtime-aKtaBQYM.js","assets/jszip.min-DhiFe-R7.js","assets/chunk-S5PCVMKU-Df5XzhSE.js","assets/chunk-6N2J7C2B-CsppiLVr.js"])))=>i.map(i=>d[i]);
2
+ import{t as e}from"./preload-helper-Czpn1I53.js";import"./chunk-7AWFHP5U-MiVVPFTx.js";import{ot as t,rt as n}from"./chunk-S5PCVMKU-Df5XzhSE.js";import{n as r,r as i,t as a}from"./chunk-WATAOG4Y-C1EXVPmG.js";import{n as o,r as s,t as c}from"./chunk-2JJ5RFDZ-B2-BFNXu.js";import{t as l}from"./chunk-KXOZMWBS-BwD4KMLI.js";async function u(e,n){t(n);let r=null,i=e;if(typeof i.size==`number`&&typeof i.slice==`function`&&typeof i.arrayBuffer==`function`)r=new Uint8Array(await d(i.slice(0,5).arrayBuffer(),n));else if(typeof e.byteLength==`number`){let t=e;r=new Uint8Array(t,0,Math.min(5,t.byteLength))}return t(n),!r||r.length<4?!1:r[0]===37&&r[1]===80&&r[2]===68&&r[3]===70}function d(e,n){return t(n),n?new Promise((t,r)=>{let i=!1,a=e=>{i||(i=!0,n.removeEventListener(`abort`,o),e())},o=()=>a(()=>r(n.reason??Error(`OOXML operation was cancelled`)));n.addEventListener(`abort`,o,{once:!0}),n.aborted&&o(),e.then(e=>a(()=>t(e)),e=>a(()=>r(e)))}):e}function f(e){let t=[...e.contentTypes.overrides.values(),...e.contentTypes.defaults.values()];for(let e of t){if(e.includes(`wordprocessingml`))return`docx`;if(e.includes(`presentationml`))return`pptx`;if(e.includes(`spreadsheetml`))return`xlsx`}}var p={docx:a,pptx:r,xlsx:i};async function m(r,i={}){if(t(i.signal),await u(r,i.signal))throw new l(`unsupported-input`,`PDF theme inference is not supported — PDF files carry no theme color/font tables.`,{format:`pdf`});let a;try{a=await n(r,i)}catch(e){throw i.signal?.aborted?i.signal.reason??e:new l(`invalid-input`,`Could not read this file as a Word, PowerPoint, or Excel document.`,{cause:e})}let s=i.format??f(a);if(t(i.signal),!s)throw new l(`invalid-input`,`Not a Word, PowerPoint, or Excel document — no theme to infer.`);let d=await p[s](a);if(t(i.signal),!d)throw new l(`invalid-input`,`No theme part found in this file.`,{format:s});let{theme:m,warnings:h}=o(d,{nameHint:i.nameHint});t(i.signal);let g=[...d.warnings,...h],_;if(i.inferLayouts)if(s!==`pptx`)g.push(`Layout inference is only available for PowerPoint files; skipped.`);else{let{analyzePptxLayouts:t}=await e(async()=>{let{analyzePptxLayouts:e}=await import(`./layouts-2A7QNF6Y-CVwP7noP.js`);return{analyzePptxLayouts:e}},__vite__mapDeps([0,1,2,3,4,5])),n=await t(a,{colors:c(d),signal:i.signal});g.push(...n.warnings);let r=n.layouts.map(e=>e.verdict.kind===`custom`?e.verdict.def:null).filter(e=>e!==null);r.length>0&&(_=r)}return t(i.signal),{theme:m,extraction:d,..._?{layouts:_}:{},warnings:g}}export{c as colorHintsFromExtraction,o as compileExtractedTheme,a as extractDocxTheme,r as extractPptxTheme,i as extractXlsxTheme,s as extractedThemeToPartial,m as inferThemeFromFile};
@@ -0,0 +1,3 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/wasm-DdxEDD2H.js","assets/rolldown-runtime-aKtaBQYM.js"])))=>i.map(i=>d[i]);
2
+ import{t as e}from"./preload-helper-Czpn1I53.js";var t=new Map([`#DIV/0!`,`#N/A`,`#NAME?`,`#NULL!`,`#NUM!`,`#REF!`,`#VALUE!`,`#SPILL!`,`#CALC!`].map(e=>[e,Object.freeze({kind:`calc-error`,code:e})]));function n(e){return t.get(e)}function r(e){let n=e.toUpperCase();return t.get(n)??null}n(`#DIV/0!`),n(`#N/A`),n(`#NAME?`),n(`#NULL!`),n(`#NUM!`),n(`#REF!`),n(`#VALUE!`),n(`#CALC!`);var i=class extends Error{constructor(e,t){super(e),this.name=`CalcParseError`,this.pos=t}},a=[`#DIV/0!`,`#GETTING_DATA`,`#NAME?`,`#NULL!`,`#NUM!`,`#REF!`,`#SPILL!`,`#VALUE!`,`#CALC!`,`#N/A`],o=e=>e>=`0`&&e<=`9`,s=e=>/[A-Za-z_$\\]/.test(e),c=e=>/[A-Za-z0-9_.$\\]/.test(e);function l(e){let t=[],n=0,r=e.length;for(;n<r;){let l=e[n];if(l===` `||l===` `||l===`
3
+ `||l===`\r`){n++;continue}if(o(l)||l===`.`&&n+1<r&&o(e[n+1])){let i=n;for(;n<r&&(o(e[n])||e[n]===`.`);)n++;if(n<r&&(e[n]===`e`||e[n]===`E`)){let t=n+1;if(t<r&&(e[t]===`+`||e[t]===`-`)&&t++,t<r&&o(e[t]))for(n=t;n<r&&o(e[n]);)n++}t.push({kind:`number`,text:e.slice(i,n),pos:i});continue}if(l===`"`){let a=n;n++;let o=``;for(;;){if(n>=r)throw new i(`Unterminated string literal`,a);if(e[n]===`"`)if(e[n+1]===`"`)o+=`"`,n+=2;else{n++;break}else o+=e[n],n++}t.push({kind:`string`,text:o,pos:a});continue}if(l===`'`){let a=n;n++;let o=``;for(;;){if(n>=r)throw new i(`Unterminated sheet name`,a);if(e[n]===`'`)if(e[n+1]===`'`)o+=`'`,n+=2;else{n++;break}else o+=e[n],n++}t.push({kind:`sheet-quoted`,text:o,pos:a});continue}if(l===`#`){let r=e.slice(n).toUpperCase(),o=a.find(e=>r.startsWith(e));if(o){t.push({kind:`error`,text:o,pos:n}),n+=o.length;continue}throw new i(`Unrecognized error literal at "${e.slice(n,n+8)}"`,n)}if(l===`[`){let r=/^\[\d+\]/.exec(e.slice(n));if(r){t.push({kind:`external`,text:r[0],pos:n}),n+=r[0].length;continue}t.push({kind:`punct`,text:`[`,pos:n}),n++;continue}if(s(l)){let i=n;for(;n<r&&c(e[n]);)n++;t.push({kind:`ident`,text:e.slice(i,n),pos:i});continue}if(l===`<`){e[n+1]===`>`||e[n+1]===`=`?(t.push({kind:`op`,text:e.slice(n,n+2),pos:n}),n+=2):(t.push({kind:`op`,text:`<`,pos:n}),n++);continue}if(l===`>`){e[n+1]===`=`?(t.push({kind:`op`,text:`>=`,pos:n}),n+=2):(t.push({kind:`op`,text:`>`,pos:n}),n++);continue}if(`=+-*/^&%`.includes(l)){t.push({kind:`op`,text:l,pos:n}),n++;continue}if(`():,;{}!`.includes(l)){t.push({kind:`punct`,text:l,pos:n}),n++;continue}throw new i(`Unexpected character "${l}"`,n)}return t.push({kind:`end`,text:``,pos:r}),t}var u=16383,d=1048575;function f(e){let t=0;for(let n=0;n<e.length;n++)t=t*26+(e.charCodeAt(n)-64);return t-1}var p=/^(\$?)([A-Za-z]{1,3})(\$?)([0-9]{1,7})$/;function m(e){let t=p.exec(e);if(!t)return null;let n=f(t[2].toUpperCase()),r=Number.parseInt(t[4],10)-1;return n>u||r<0||r>d?null:{row:r,col:n,absCol:t[1]===`$`,absRow:t[3]===`$`}}var h=/^(\$?)([A-Za-z]{1,3})$/,g=/^(\$?)([0-9]{1,7})$/;function _(e){let t=h.exec(e);if(!t)return null;let n=f(t[2].toUpperCase());return n<=u?n:null}function v(e){let t=g.exec(e);if(!t)return null;let n=Number.parseInt(t[2],10)-1;return n>=0&&n<=d?n:null}var y={"=":10,"<>":10,"<":10,">":10,"<=":10,">=":10,"&":20,"+":30,"-":30,"*":40,"/":40,"^":50},b=55,x=60,S=class{constructor(e){this.index=0,this.tokens=l(e)}parse(){let e=this.parseExpr(0);return this.expectEnd(),e}peek(e=0){return this.tokens[Math.min(this.index+e,this.tokens.length-1)]}next(){let e=this.tokens[this.index];return e.kind!==`end`&&this.index++,e}expectPunct(e){let t=this.next();if(t.kind!==`punct`||t.text!==e)throw new i(`Expected "${e}"`,t.pos)}expectEnd(){let e=this.peek();if(e.kind!==`end`)throw new i(`Unexpected "${e.text}"`,e.pos)}parseExpr(e){let t=this.parsePrefix();for(;;){let n=this.peek();if(n.kind===`op`&&n.text===`%`&&x>=e){this.next(),t={type:`percent`,operand:t};continue}if(n.kind!==`op`)break;let r=y[n.text];if(r===void 0||r<e)break;this.next();let i=this.parseExpr(r+1);t={type:`binary`,op:n.text,left:t,right:i}}return t}parsePrefix(){let e=this.next();switch(e.kind){case`number`:{let t=Number(e.text);if(!Number.isFinite(t))throw new i(`Invalid number "${e.text}"`,e.pos);if(this.isPunct(`:`)&&/^\d+$/.test(e.text)){let t=v(e.text),n=this.peek(1);if(t!==null&&n.kind===`number`&&/^\d+$/.test(n.text)){let e=v(n.text);if(e!==null)return this.next(),this.next(),this.rangeNode(null,!1,{startRow:Math.min(t,e),endRow:Math.max(t,e),startCol:0,endCol:u,wholeRows:!0,wholeCols:!1})}}return{type:`number`,value:t}}case`string`:return{type:`string`,value:e.text};case`error`:return{type:`error`,code:e.text};case`sheet-quoted`:return this.expectPunct(`!`),this.parseRefAfterSheet(e.text,!1,e.pos);case`external`:{let t=this.next();if(t.kind!==`ident`&&t.kind!==`sheet-quoted`)throw new i(`Expected sheet name after external prefix`,t.pos);return this.expectPunct(`!`),this.parseRefAfterSheet(t.text,!0,e.pos)}case`ident`:return this.parseIdent(e);case`op`:if(e.text===`-`||e.text===`+`){let t=this.parseExpr(b);return{type:`unary`,op:e.text,operand:t}}throw new i(`Unexpected operator "${e.text}"`,e.pos);case`punct`:if(e.text===`(`){let e=this.parseExpr(0);return this.expectPunct(`)`),e}if(e.text===`{`)return this.parseArray();throw new i(`Unexpected "${e.text}"`,e.pos);default:throw new i(`Unexpected end of formula`,e.pos)}}isPunct(e,t=0){let n=this.peek(t);return n.kind===`punct`&&n.text===e}parseArray(){let e=[],t=[];for(;;){t.push(this.parseExpr(0));let n=this.next();if(!(n.kind===`punct`&&n.text===`,`)){if(n.kind===`punct`&&n.text===`;`){e.push(t),t=[];continue}if(n.kind===`punct`&&n.text===`}`){e.push(t);break}throw new i(`Expected "," ";" or "}" in array literal`,n.pos)}}let n=e[0].length;if(e.some(e=>e.length!==n))throw new i(`Ragged array literal`,0);return{type:`array`,rows:e}}parseIdent(e){if(this.isPunct(`(`)){this.next();let t=e.text.replace(/^_xlfn\.|^_xludf\./i,``).toUpperCase(),n=[];if(this.isPunct(`)`))return this.next(),{type:`call`,name:t,args:n};for(;;){if(this.isPunct(`,`)){n.push({type:`missing`}),this.next();continue}if(this.isPunct(`)`)){n.push({type:`missing`}),this.next();break}n.push(this.parseExpr(0));let e=this.next();if(!(e.kind===`punct`&&e.text===`,`)){if(e.kind===`punct`&&e.text===`)`)break;throw new i(`Expected "," or ")" in ${t}(...)`,e.pos)}}return{type:`call`,name:t,args:n}}return this.isPunct(`!`)?(this.next(),this.parseRefAfterSheet(e.text,!1,e.pos)):this.parseRefOrName(e,null,!1)}parseRefAfterSheet(e,t,n){let r=this.next();if(r.kind!==`ident`&&r.kind!==`number`)throw new i(`Expected a cell reference after sheet name`,r.pos);if(r.kind===`number`){let n=v(r.text);if(n!==null&&this.isPunct(`:`)){let r=this.peek(1),i=r.kind===`number`?v(r.text):null;if(i!==null)return this.next(),this.next(),this.rangeNode(e,t,{startRow:Math.min(n,i),endRow:Math.max(n,i),startCol:0,endCol:u,wholeRows:!0,wholeCols:!1})}throw new i(`Expected a cell reference after sheet name`,r.pos)}let a=this.parseRefOrName(r,e,t);if(a.type!==`ref`&&a.type!==`range`)throw new i(`Sheet-qualified names are not supported`,n);return a}parseRefOrName(e,t,n){let r=m(e.text);if(r){if(this.isPunct(`:`)){let e=this.peek(1),i=e.kind===`ident`?m(e.text):null;if(i)return this.next(),this.next(),this.rangeNode(t,n,{startRow:Math.min(r.row,i.row),endRow:Math.max(r.row,i.row),startCol:Math.min(r.col,i.col),endCol:Math.max(r.col,i.col),wholeRows:!1,wholeCols:!1})}return{type:`ref`,sheet:t,row:r.row,col:r.col,absRow:r.absRow,absCol:r.absCol,external:n}}let a=_(e.text.replace(/^\$/,``));if(a!==null&&this.isPunct(`:`)){let e=this.peek(1),r=e.kind===`ident`?_(e.text.replace(/^\$/,``)):null;if(r!==null)return this.next(),this.next(),this.rangeNode(t,n,{startRow:0,endRow:d,startCol:Math.min(a,r),endCol:Math.max(a,r),wholeRows:!1,wholeCols:!0})}if(t!==null)throw new i(`"${e.text}" is not a cell reference`,e.pos);let o=e.text.toUpperCase();return o===`TRUE`?{type:`boolean`,value:!0}:o===`FALSE`?{type:`boolean`,value:!1}:{type:`name`,name:e.text}}rangeNode(e,t,n){return{type:`range`,sheet:e,external:t,...n}}};function C(e){let t=e.trim(),n=t.startsWith(`=`)?t.slice(1):t;if(n.trim()===``)throw new i(`Empty formula`,0);return new S(n).parse()}function w(e,t){let n=[],r=[],i=e=>{switch(e.type){case`ref`:e.external||n.push({sheet:e.sheet??t,startRow:e.row,startCol:e.col,endRow:e.row,endCol:e.col});return;case`range`:e.external||n.push({sheet:e.sheet??t,startRow:e.startRow,startCol:e.startCol,endRow:e.endRow,endCol:e.endCol});return;case`name`:r.push(e.name);return;case`call`:for(let t of e.args)i(t);return;case`binary`:i(e.left),i(e.right);return;case`unary`:case`percent`:i(e.operand);return;case`array`:for(let t of e.rows)for(let e of t)i(e);return;default:return}};return i(e),{ranges:n,names:r}}var T=null,E=!1;async function D(t){T??=e(()=>import(`./wasm-DdxEDD2H.js`).then(e=>e,()=>null),__vite__mapDeps([0,1]));let n=await T;return n?(E||=(await n.default(t===void 0?void 0:{module_or_path:t}),!0),n):null}var O=1,k=2,A=4,j=16;function M(e){return typeof e==`number`?String(e):typeof e==`boolean`?e?`TRUE`:`FALSE`:`'${e}`}function N(e){return r(e.trim())||(/circ/i.test(e)?n(`#CALC!`):n(`#VALUE!`))}var P=(e,t,n)=>`${e}:${t}:${n}`,F=class{constructor(e,t){this.model=null,this.sheetIndex=new Map,this.sheetNames=[],this.formulas=new Map,this.overBudget=!1,this.disposed=!1,this.mod=e,this.options=t,this.capabilities={functions:[],dynamicArrays:!0,iterativeCalc:!1,externalRefs:!1,leapYear1900Bug:!0,volatileFunctions:[`NOW`,`TODAY`,`RAND`,`RANDBETWEEN`]}}async loadWorkbook(e){this.assertLive(),this.model?.free(),this.model=new this.mod.Model(`workbook`,this.options.locale??`en`,this.options.timezone??`UTC`,`en`),this.sheetIndex=new Map,this.sheetNames=[],this.formulas=new Map,this.overBudget=!1,e.sheets.forEach((e,t)=>{t>0&&this.model.newSheet(),this.model.renameSheet(t,e.name),this.sheetIndex.set(e.name.toLowerCase(),t),this.sheetNames.push(e.name)});for(let[t,n]of Object.entries(e.definedNames??{}))try{this.model.newDefinedName(t,null,n)}catch{}e.sheets.forEach((e,t)=>{for(let n=0;n<e.cells.length;n++){let r=e.cells[n];for(let i=0;i<r.length;i++){let a=r[i];a&&(a.formula===void 0?a.value!==void 0&&a.value!==null&&this.model.setUserInput(t,n+1,i+1,M(a.value)):(this.model.setUserInput(t,n+1,i+1,`=${a.formula}`),this.formulas.set(P(t,n,i),{address:{sheet:e.name,row:n,col:i},formula:a.formula,staleness:`neverEvaluated`})))}}})}resolveSheet(e){return this.sheetIndex.get(e.toLowerCase())}requireModel(){if(!this.model)throw Error(`loadWorkbook() must run before using the engine`);return this.model}dirtyAllFormulas(){for(let e of this.formulas.values())e.staleness===`current`&&(e.staleness=`dirty`)}setCellValue(e,t){this.assertLive();let n=this.requireModel(),r=this.resolveSheet(e.sheet);if(r===void 0)throw Error(`Unknown sheet "${e.sheet}"`);this.formulas.delete(P(r,e.row,e.col)),t===null?n.rangeClearContents(r,e.row+1,e.col+1,e.row+1,e.col+1):n.setUserInput(r,e.row+1,e.col+1,M(t)),this.dirtyAllFormulas()}setCellFormula(e,t){this.assertLive();let n=this.requireModel(),r=this.resolveSheet(e.sheet);if(r===void 0)throw Error(`Unknown sheet "${e.sheet}"`);n.setUserInput(r,e.row+1,e.col+1,`=${t}`),this.formulas.set(P(r,e.row,e.col),{address:e,formula:t,staleness:`neverEvaluated`}),this.dirtyAllFormulas()}clearCell(e){this.setCellValue(e,null)}readValue(e,t,n){let r=this.requireModel();if(r.getCellContent(e,t+1,n+1)===``)return null;let i=r.getCellType(e,t+1,n+1),a=r.getFormattedCellValue(e,t+1,n+1);switch(i){case O:{if(a===``)return null;let e=Number(a);return Number.isFinite(e)?e:a}case A:return a===`TRUE`;case j:return N(a);case k:default:return a}}async getCell(e){return this.getCellSync(e)}async getCells(e){return e.map(e=>this.getCellSync(e))}getCellSync(e){this.assertLive();let t=this.resolveSheet(e.sheet);if(t===void 0)return{value:null,staleness:`current`,spillRole:`none`,volatile:!1};let n=this.formulas.get(P(t,e.row,e.col)),r={value:this.readValue(t,e.row,e.col),staleness:n?.staleness??`current`,spillRole:`none`,volatile:!1};return n&&(r.formula=n.formula),r}async evaluateAll(e){this.assertLive(),this.requireModel();let t=e??this.options.budgets,n=[...this.formulas.values()].filter(e=>e.staleness!==`current`);if((t?.maxWorkUnits!==void 0&&n.length>t.maxWorkUnits||this.overBudget)&&n.length>0)return{status:`budget-exceeded`,evaluatedCells:0,workUnits:0,elapsedMs:0,dirtyRemaining:n.map(e=>e.address),cycleCells:[]};let r=Date.now();n.length>0&&this.requireModel().evaluate();let i=Date.now()-r;t?.maxEvalTimeMs!==void 0&&i>t.maxEvalTimeMs&&(this.overBudget=!0);let a=[];for(let e of n){e.staleness=`current`;let t=this.resolveSheet(e.address.sheet),n=this.readValue(t,e.address.row,e.address.col);typeof n==`object`&&n&&n.code===`#CALC!`&&a.push(e.address)}return{status:a.length>0?`cycle-error`:`complete`,evaluatedCells:n.length,workUnits:n.length,elapsedMs:i,dirtyRemaining:[],cycleCells:a}}async evaluateFormula(e,t){this.assertLive();let r=this.requireModel(),i=t?this.resolveSheet(t.sheet)??0:0,a=1048575,o=16384;try{r.setUserInput(i,a,o,`=${e}`)}catch{return n(`#NAME?`)}r.evaluate();let s=this.readValue(i,a-1,o-1);return r.rangeClearContents(i,a,o,a,o),r.evaluate(),s??0}async precedentsOf(e){this.assertLive();let t=this.resolveSheet(e.sheet);if(t===void 0)return[];let n=this.formulas.get(P(t,e.row,e.col));if(!n)return[];try{return w(C(n.formula),e.sheet).ranges}catch{return[]}}async dependentsOf(e){this.assertLive();let t=[];for(let n of this.formulas.values())for(let r of await this.precedentsOf(n.address))if(r.sheet.toLowerCase()===e.sheet.toLowerCase()&&e.row>=r.startRow&&e.row<=r.endRow&&e.col>=r.startCol&&e.col<=r.endCol){t.push(n.address);break}return t}dispose(){this.disposed=!0,this.model?.free(),this.model=null,this.formulas.clear(),this.sheetIndex.clear()}assertLive(){if(this.disposed)throw Error(`CalcEngine used after dispose()`)}};async function I(e={}){let t=await D(e.wasmSource);if(!t)throw Error(`@ironcalc/wasm is not installed. It is an optional peer of the @bendyline/squisq-calc/ironcalc subpath — add it to your app to use the IronCalc backend, or use createInHouseEngine from the package root instead.`);return new F(t,e)}export{I as createIronCalcEngine};
@@ -0,0 +1 @@
1
+ import"./chunk-7AWFHP5U-MiVVPFTx.js";import"./chunk-S5PCVMKU-Df5XzhSE.js";import{t as e}from"./chunk-6N2J7C2B-CsppiLVr.js";export{e as analyzePptxLayouts};
@@ -1 +1 @@
1
- import{t as e}from"./api-BX5xXiFs.js";var t=[{id:`imap`,label:`IMAP`},{id:`gmail`,label:`Gmail`},{id:`microsoft365`,label:`Microsoft 365`},{id:`outlook`,label:`Outlook.com`}],n=e=>/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(e.trim()),r={microsoft365:`organizations`,outlook:`consumers`};async function i(t,n){await e.bindConnector(t,{type:`mail-imap`,displayName:n.address,config:{provider:`imap`,address:n.address,syncFolders:n.syncFolders??[`INBOX`]},credential:{host:n.host,...n.port?{port:n.port}:{},...n.secure===void 0?{}:{secure:n.secure},user:n.address,pass:n.pass}})}async function a(t,n,i){let a=window.__GEZEL__;if(!a?.mailOAuthListen||!a.mailOAuthAwait)throw Error(`Connecting Gmail / Microsoft needs the Gezel desktop app.`);let{requestId:o,redirectUri:s}=await a.mailOAuthListen(),c=r[n],{authUrl:l,state:u}=await e.startConnectorOAuth(t,{type:`mail-${n}`,redirectUri:s,displayName:i,loginHint:i,config:{provider:n,address:i,...c?{tenant:c}:{}}}),d=await a.mailOAuthAwait(o,l);if(`error`in d)throw Error(d.error);await e.completeConnectorOAuth(t,{state:d.state||u,code:d.code})}export{n as i,a as n,i as r,t};
1
+ import{t as e}from"./api-BPraLwsh.js";var t=[{id:`imap`,label:`IMAP`},{id:`gmail`,label:`Gmail`},{id:`microsoft365`,label:`Microsoft 365`},{id:`outlook`,label:`Outlook.com`}],n=e=>/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(e.trim()),r={microsoft365:`organizations`,outlook:`consumers`};async function i(t,n){await e.bindConnector(t,{type:`mail-imap`,displayName:n.address,config:{provider:`imap`,address:n.address,syncFolders:n.syncFolders??[`INBOX`]},credential:{host:n.host,...n.port?{port:n.port}:{},...n.secure===void 0?{}:{secure:n.secure},user:n.address,pass:n.pass}})}async function a(t,n,i){let a=window.__GEZEL__;if(!a?.mailOAuthListen||!a.mailOAuthAwait)throw Error(`Connecting Gmail / Microsoft needs the Gezel desktop app.`);let{requestId:o,redirectUri:s}=await a.mailOAuthListen(),c=r[n],{authUrl:l,state:u}=await e.startConnectorOAuth(t,{type:`mail-${n}`,redirectUri:s,displayName:i,loginHint:i,config:{provider:n,address:i,...c?{tenant:c}:{}}}),d=await a.mailOAuthAwait(o,l);if(`error`in d)throw Error(d.error);await e.completeConnectorOAuth(t,{state:d.state||u,code:d.code})}export{n as i,a as n,i as r,t};
@@ -0,0 +1 @@
1
+ import{n as e}from"./chunk-UBFT2CDQ-FexGDigd.js";import{l as t}from"./markdown-ryKA_OmY.js";function n(n){try{return t(e(n))}catch{return n}}export{n as t};
@@ -1,4 +1,4 @@
1
- import{n as e}from"./rolldown-runtime-aKtaBQYM.js";import{d as t,i as n,r}from"./chunk-O7JILDEF-CqcO1qaI.js";import"./chunk-4VOD55SX-BFSSw0c8.js";import{a as i,c as a,d as o,f as s,h as c,l,m as u,n as d,o as f,p,s as m,t as h,u as ee}from"./chunk-MIKKUKOD-XIkmalSN.js";var g={}.hasOwnProperty;function te(e,t){let n=t||{};function r(t,...n){let i=r.invalid,a=r.handlers;if(t&&g.call(t,e)){let n=String(t[e]);i=g.call(a,n)?a[n]:r.unknown}if(i)return i.call(this,t,...n)}return r.handlers=n.handlers||{},r.invalid=n.invalid,r.unknown=n.unknown,r}var ne={}.hasOwnProperty;function _(e,t){let n=-1,r;if(t.extensions)for(;++n<t.extensions.length;)_(e,t.extensions[n]);for(r in t)if(ne.call(t,r))switch(r){case`extensions`:break;case`unsafe`:v(e[r],t[r]);break;case`join`:v(e[r],t[r]);break;case`handlers`:re(e[r],t[r]);break;default:e.options[r]=t[r]}return e}function v(e,t){t&&e.push(...t)}function re(e,t){t&&Object.assign(e,t)}var ie=[ae];function ae(e,t,n,r){if(t.type===`code`&&s(t,r)&&(e.type===`list`||e.type===t.type&&s(e,r)))return!1;if(`spread`in n&&typeof n.spread==`boolean`)return e.type===`paragraph`&&(e.type===t.type||t.type===`definition`||t.type===`heading`&&ee(t,r))?void 0:+!!n.spread}var y=[`autolink`,`destinationLiteral`,`destinationRaw`,`reference`,`titleQuote`,`titleApostrophe`],oe=[{character:` `,after:`[\\r\\n]`,inConstruct:`phrasing`},{character:` `,before:`[\\r\\n]`,inConstruct:`phrasing`},{character:` `,inConstruct:[`codeFencedLangGraveAccent`,`codeFencedLangTilde`]},{character:`\r`,inConstruct:[`codeFencedLangGraveAccent`,`codeFencedLangTilde`,`codeFencedMetaGraveAccent`,`codeFencedMetaTilde`,`destinationLiteral`,`headingAtx`]},{character:`
1
+ import{n as e}from"./rolldown-runtime-aKtaBQYM.js";import{d as t,i as n,r}from"./chunk-O7JILDEF-CqcO1qaI.js";import"./chunk-4VOD55SX-BFSSw0c8.js";import{a as i,c as a,d as o,f as s,h as c,l,m as u,n as d,o as f,p,s as m,t as h,u as ee}from"./chunk-UBFT2CDQ-FexGDigd.js";var g={}.hasOwnProperty;function te(e,t){let n=t||{};function r(t,...n){let i=r.invalid,a=r.handlers;if(t&&g.call(t,e)){let n=String(t[e]);i=g.call(a,n)?a[n]:r.unknown}if(i)return i.call(this,t,...n)}return r.handlers=n.handlers||{},r.invalid=n.invalid,r.unknown=n.unknown,r}var ne={}.hasOwnProperty;function _(e,t){let n=-1,r;if(t.extensions)for(;++n<t.extensions.length;)_(e,t.extensions[n]);for(r in t)if(ne.call(t,r))switch(r){case`extensions`:break;case`unsafe`:v(e[r],t[r]);break;case`join`:v(e[r],t[r]);break;case`handlers`:re(e[r],t[r]);break;default:e.options[r]=t[r]}return e}function v(e,t){t&&e.push(...t)}function re(e,t){t&&Object.assign(e,t)}var ie=[ae];function ae(e,t,n,r){if(t.type===`code`&&s(t,r)&&(e.type===`list`||e.type===t.type&&s(e,r)))return!1;if(`spread`in n&&typeof n.spread==`boolean`)return e.type===`paragraph`&&(e.type===t.type||t.type===`definition`||t.type===`heading`&&ee(t,r))?void 0:+!!n.spread}var y=[`autolink`,`destinationLiteral`,`destinationRaw`,`reference`,`titleQuote`,`titleApostrophe`],oe=[{character:` `,after:`[\\r\\n]`,inConstruct:`phrasing`},{character:` `,before:`[\\r\\n]`,inConstruct:`phrasing`},{character:` `,inConstruct:[`codeFencedLangGraveAccent`,`codeFencedLangTilde`]},{character:`\r`,inConstruct:[`codeFencedLangGraveAccent`,`codeFencedLangTilde`,`codeFencedMetaGraveAccent`,`codeFencedMetaTilde`,`destinationLiteral`,`headingAtx`]},{character:`
2
2
  `,inConstruct:[`codeFencedLangGraveAccent`,`codeFencedLangTilde`,`codeFencedMetaGraveAccent`,`codeFencedMetaTilde`,`destinationLiteral`,`headingAtx`]},{character:` `,after:`[\\r\\n]`,inConstruct:`phrasing`},{character:` `,before:`[\\r\\n]`,inConstruct:`phrasing`},{character:` `,inConstruct:[`codeFencedLangGraveAccent`,`codeFencedLangTilde`]},{character:`!`,after:`\\[`,inConstruct:`phrasing`,notInConstruct:y},{character:`"`,inConstruct:`titleQuote`},{atBreak:!0,character:`#`},{character:`#`,inConstruct:`headingAtx`,after:`(?:[\r
3
3
  ]|$)`},{character:`&`,after:`[#A-Za-z]`,inConstruct:`phrasing`},{character:`'`,inConstruct:`titleApostrophe`},{character:`(`,inConstruct:`destinationRaw`},{before:`\\]`,character:`(`,inConstruct:`phrasing`,notInConstruct:y},{atBreak:!0,before:`\\d+`,character:`)`},{character:`)`,inConstruct:`destinationRaw`},{atBreak:!0,character:`*`,after:`(?:[ \r
4
4
  *])`},{character:`*`,inConstruct:`phrasing`,notInConstruct:y},{atBreak:!0,character:`+`,after:`(?:[ \r
@@ -0,0 +1 @@
1
+ import"./chunk-7AWFHP5U-MiVVPFTx.js";import"./chunk-DXYWKZ52-BXcAlClu.js";import"./chunk-Q77KNJIN-BIDRf0aP.js";import"./chunk-S5PCVMKU-Df5XzhSE.js";import"./chunk-OBADJV7C-CDVOcmYt.js";import{r as e}from"./chunk-FLR2ARKC-D7wrvQgT.js";export{e as materializeDataReferences};
@@ -0,0 +1 @@
1
+ var e=`gezel:models-changed`,t=new Map;function n(n){t.set(n,(t.get(n)??0)+1),window.dispatchEvent(new CustomEvent(e,{detail:{engine:n}}))}function r(e){n(e)}function i(e){return t.get(e)??0}function a(e){let t=e.detail?.engine;return t===`llama-cpp`||t===`mlx`||t===`ds4`||t===`knowledge`?t:null}function o(e){let t=a(e);return t===null||t===`knowledge`?null:t}export{o as a,a as i,n,i as o,r,e as t};
@@ -1 +1 @@
1
- import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{n as t,t as n}from"./jsx-runtime-CEpd2cAX.js";import{n as r}from"./primitives-DEsn1shf.js";import"./dist-BPx-FyRH.js";import{t as i}from"./api-BX5xXiFs.js";import{a,i as o,r as s}from"./model-memory-copy-CeuXAj-T.js";var c=e(t(),1),l=n(),u=1024**3,d=2,f=2,p=.5,m=.25;function h(e){return`${Number.isInteger(e)?e:e.toFixed(1)} GB`}function g({status:e,onSaved:t}){let n=e.systemRamBytes??0,r=e.autoBudgetBytes??0,a=e.overridden??!1,o=e.pools,s=o?.kind===`discrete-gpu`&&o.vramBytes>0,g=s?n+o.vramBytes:n,[v,y]=(0,c.useState)(null),[b,x]=(0,c.useState)(!1),[S,C]=(0,c.useState)(null),w=e.budgetBytes/u;(0,c.useEffect)(()=>{y(a?w:null)},[a,w]);let T=(0,c.useCallback)(async e=>{x(!0),C(null);try{await i.updateEngineMemoryBudget(e),C(e===null?`Back to automatic`:`Saved`),await t()}catch(e){C(`Could not save: ${e instanceof Error?e.message:String(e)}`)}finally{x(!1)}},[t]);if(n<=0||r<=0)return null;let E=r/u,D=g/u,O=n/u,k=(o?.vramBytes??0)/u,A=Math.min(d,E),j=Math.max(E,D-f),M=Math.min(Math.max(v??E,A),j),N=v===null||Math.abs(v-E)<=m,P=!N&&M>E,F=(v??E)!==(a?w:E),I=(E-A)/Math.max(.001,j-A)*100;return(0,l.jsxs)(`div`,{className:`engine-memory-budget`,children:[(0,l.jsx)(`h4`,{children:`Memory for on-device models`}),(0,l.jsxs)(`p`,{className:`muted small`,children:[`The most memory all your on-device models may hold at once. Raise it to run a larger model; lower it to leave more room for everything else.`,` `,s?`This machine has ${h(Math.round(k))} of graphics memory and ${h(Math.round(O))} of system memory; a model larger than the graphics card runs partly from system memory.`:O>=1?`This machine has ${h(Math.round(O))} of memory in total.`:``]}),(0,l.jsxs)(`div`,{className:`gz-budget-slider`,children:[(0,l.jsxs)(`div`,{className:`gz-budget-slider-head`,children:[(0,l.jsx)(`strong`,{children:h(M)}),N?(0,l.jsx)(`span`,{className:`gz-budget-tag`,children:`Automatic`}):(0,l.jsx)(`span`,{className:`gz-budget-tag ${P?`gz-budget-tag-risky`:`gz-budget-tag-custom`}`,children:P?`Above recommended`:`Custom`})]}),(0,l.jsxs)(`div`,{className:`gz-budget-track`,children:[(0,l.jsx)(`input`,{type:`range`,min:A,max:j,step:p,value:M,"aria-label":`Memory for on-device models`,onChange:e=>y(Number.parseFloat(e.target.value))}),(0,l.jsxs)(`div`,{className:`gz-budget-marker`,style:{left:`${I}%`},title:`Recommended for this machine: ${h(E)}`,"aria-hidden":`true`,children:[(0,l.jsx)(`span`,{className:`gz-budget-marker-arrow`,children:`▲`}),(0,l.jsxs)(`span`,{className:`gz-budget-marker-label`,children:[`Auto · `,h(E)]})]})]}),(0,l.jsxs)(`div`,{className:`gz-budget-scale muted small`,children:[(0,l.jsx)(`span`,{children:h(A)}),(0,l.jsx)(`span`,{children:h(j)})]})]}),P&&(0,l.jsx)(`output`,{className:`muted small engine-memory-budget-warning`,children:`Above what we'd pick for this machine. Models will still load, but the rest of the system has less to work with — expect things to feel slower before anything fails outright.`}),(0,l.jsxs)(`div`,{className:`engine-memory-budget-actions`,children:[(0,l.jsx)(`button`,{type:`button`,onClick:()=>void T(N?null:M),disabled:b||!F,children:b?`Saving…`:`Save`}),a&&(0,l.jsx)(`button`,{type:`button`,onClick:()=>void T(null),disabled:b,children:`Back to automatic`})]}),S&&(0,l.jsx)(`p`,{className:`muted small`,style:{marginTop:`0.5rem`},children:S}),s&&(0,l.jsx)(_,{status:e,onSaved:t})]})}function _({status:e,onSaved:t}){let n=e.ramSpillover,[r,a]=(0,c.useState)(!1),[o,s]=(0,c.useState)(null),u=(0,c.useCallback)(async e=>{a(!0),s(null);try{await i.updateEngineRamSpillover(e),await t()}catch(e){s(`Could not save: ${e instanceof Error?e.message:String(e)}`)}finally{a(!1)}},[t]);if(!n)return null;let d=n.overridden?n.allowed?`spill`:`card`:`auto`;return(0,l.jsxs)(`div`,{className:`engine-spillover`,children:[(0,l.jsx)(`h4`,{children:`When a second model won't fit the graphics card`}),(0,l.jsx)(`p`,{className:`muted small`,children:`Gezel can unload the model you haven't used recently, or keep both loaded by spilling into system memory. Spilling keeps everything available but slows every model sharing the card — most noticeably with several chats or tasks running at once. A single model larger than the card always uses system memory; this only applies once more than one is loaded.`}),(0,l.jsxs)(`fieldset`,{className:`gz-tray engine-spillover-tray`,children:[(0,l.jsx)(`legend`,{className:`sr-only`,children:`When a second model won't fit the graphics card`}),[{id:`auto`,label:`Automatic`,value:null},{id:`card`,label:`Unload one`,value:!1},{id:`spill`,label:`Use system memory`,value:!0}].map(e=>(0,l.jsx)(`button`,{type:`button`,role:`radio`,"aria-checked":d===e.id,className:`gz-key${d===e.id?` gz-key-active`:``}`,disabled:r,onClick:()=>void u(e.value),children:e.label},e.id))]}),(0,l.jsxs)(`p`,{className:`muted small`,children:[`Automatic unloads one model so concurrent models stay within graphics memory. Choose Use system memory only if you explicitly prefer avoiding reloads. On this machine that means`,` `,n.auto?`using system memory`:`unloading one`,`.`]}),o&&(0,l.jsx)(`p`,{className:`error`,children:o})]})}function v(e){return`${(e/1024**3).toFixed(1)} GB`}function y({provider:e,pollMs:t=2e3}){let[n,r]=(0,c.useState)(null),[a,o]=(0,c.useState)(null),s=(0,c.useCallback)(async()=>{try{r(await i.getEngineStatus()),o(null)}catch(e){o(e instanceof Error?e.message:String(e))}},[]);if((0,c.useEffect)(()=>{let e=!1,n=async()=>{try{let t=await i.getEngineStatus();if(e)return;r(t),o(null)}catch(t){if(e)return;o(t instanceof Error?t.message:String(t))}};n();let a=setInterval(()=>void n(),t);return()=>{e=!0,clearInterval(a)}},[t]),a)return(0,l.jsxs)(`div`,{style:{fontSize:12,color:`var(--gz-color-muted, #888)`},children:[`Engine status unavailable: `,a]});if(!n||!n.enforced)return null;let u=n.budgetBytes>0?n.committedBytes/n.budgetBytes:0,d=n.entries.filter(t=>t.provider===e),f=u>1;return(0,l.jsxs)(`div`,{style:{border:`1px solid var(--gz-color-border, #2c2c2c)`,borderRadius:6,padding:`10px 14px`,marginBottom:`1rem`,background:`var(--gz-color-surface, transparent)`,fontSize:13},children:[(0,l.jsx)(`div`,{style:{marginBottom:6,fontWeight:500},children:`Engine memory budget`}),(0,l.jsx)(`div`,{style:{height:8,width:`100%`,borderRadius:4,background:`var(--gz-color-border, #2c2c2c)`,overflow:`hidden`,marginBottom:6},children:(0,l.jsx)(`div`,{style:{height:`100%`,width:`${Math.min(100,Math.round(u*100))}%`,background:f?`var(--warning)`:`var(--success)`,transition:`width 0.4s ease-out`}})}),(0,l.jsxs)(`div`,{style:{fontSize:12,color:`var(--gz-color-muted, #888)`},children:[v(n.committedBytes),` of `,v(n.budgetBytes),` used`,n.pools?.kind===`discrete-gpu`&&n.pools.vramBytes>0?(0,l.jsxs)(l.Fragment,{children:[` `,`(`,v(n.pools.vramBytes),` graphics + `,v(n.pools.ramShareBytes),` system)`]}):null,d.length>0?(0,l.jsxs)(l.Fragment,{children:[` · `,d.map(e=>`${e.replicaIdx===0?``:`${e.replicaIdx+1}× `}${e.modelId} (${v(e.residentBytes)})`).join(` · `)]}):null]}),(0,l.jsx)(g,{status:n,onSaved:s})]})}function b({provider:e,modelId:t,config:n,onConfigChanged:r}){let a=n?.localEngineReplicasMax??4,o=n?.localEngineReplicas??{},s=t?o[t]??1:1,[u,d]=(0,c.useState)(s),[f,p]=(0,c.useState)(`idle`);(0,c.useEffect)(()=>{d(s)},[s]);let m=(0,c.useCallback)(async n=>{if(!t)return;let s=Math.max(1,Math.min(a,n));d(s),p(`saving`);try{let n={...o,[t]:s};r(await i.updateConfig({localEngineReplicas:n})),await i.reconcileEnginePool({provider:e,clones:{[t]:s}}),p(`saved`),setTimeout(()=>p(`idle`),1200)}catch{p(`idle`)}},[t,a,e,o,r]);return t?(0,l.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:`0.5rem`,padding:`0.5rem 0`,fontSize:13},children:[(0,l.jsxs)(`span`,{style:{minWidth:220},children:[`Clones of `,(0,l.jsx)(`b`,{children:t}),` kept resident:`]}),(0,l.jsx)(`button`,{type:`button`,onClick:()=>void m(u-1),disabled:f===`saving`||u<=1,style:{width:28},children:`−`}),(0,l.jsx)(`span`,{style:{minWidth:28,textAlign:`center`,fontVariantNumeric:`tabular-nums`},children:u}),(0,l.jsx)(`button`,{type:`button`,onClick:()=>void m(u+1),disabled:f===`saving`||u>=a,style:{width:28},children:`+`}),(0,l.jsxs)(`span`,{style:{fontSize:12,color:`var(--gz-color-muted, #888)`},children:[`(max `,a,`)`]}),f===`saved`?(0,l.jsx)(`span`,{style:{fontSize:12},children:`saved ✓`}):null]}):(0,l.jsx)(`div`,{style:{fontSize:12,color:`var(--gz-color-muted, #888)`},children:`Pick a default model to enable clone control.`})}function x(e){return`https://huggingface.co/${e.split(`/`).map(encodeURIComponent).join(`/`)}`}function S({repo:e}){return(0,l.jsx)(`a`,{className:`hf-repo-link`,href:x(e),target:`_blank`,rel:`noreferrer`,title:`View ${e} on Hugging Face`,children:(0,l.jsx)(`code`,{children:e})})}function C({model:e}){let t=o(e);return(0,l.jsx)(`td`,{children:(0,l.jsx)(r,{text:a(e),children:(0,l.jsxs)(`span`,{className:`model-size-cell`,children:[s(e.approxSizeBytes),t?(0,l.jsx)(`span`,{className:`muted small model-memory-headline`,children:t}):null]})})})}export{y as a,b as i,S as n,x as r,C as t};
1
+ import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{n as t,t as n}from"./jsx-runtime-CEpd2cAX.js";import"./dist-BqGwkOe5.js";import{t as r}from"./api-BPraLwsh.js";import{n as i}from"./primitives-CWrGZpPI.js";import{a,i as o,r as s}from"./model-memory-copy-CeuXAj-T.js";var c=e(t(),1),l=n(),u=1024**3,d=2,f=2,p=.5,m=.25;function h(e){return`${Number.isInteger(e)?e:e.toFixed(1)} GB`}function g({status:e,onSaved:t}){let n=e.systemRamBytes??0,i=e.autoBudgetBytes??0,a=e.overridden??!1,o=e.pools,s=o?.kind===`discrete-gpu`&&o.vramBytes>0,g=s?n+o.vramBytes:n,[v,y]=(0,c.useState)(null),[b,x]=(0,c.useState)(!1),[S,C]=(0,c.useState)(null),w=e.budgetBytes/u;(0,c.useEffect)(()=>{y(a?w:null)},[a,w]);let T=(0,c.useCallback)(async e=>{x(!0),C(null);try{await r.updateEngineMemoryBudget(e),C(e===null?`Back to automatic`:`Saved`),await t()}catch(e){C(`Could not save: ${e instanceof Error?e.message:String(e)}`)}finally{x(!1)}},[t]);if(n<=0||i<=0)return null;let E=i/u,D=g/u,O=n/u,k=(o?.vramBytes??0)/u,A=Math.min(d,E),j=Math.max(E,D-f),M=Math.min(Math.max(v??E,A),j),N=v===null||Math.abs(v-E)<=m,P=!N&&M>E,F=(v??E)!==(a?w:E),I=(E-A)/Math.max(.001,j-A)*100;return(0,l.jsxs)(`div`,{className:`engine-memory-budget`,children:[(0,l.jsx)(`h4`,{children:`Memory for on-device models`}),(0,l.jsxs)(`p`,{className:`muted small`,children:[`The most memory all your on-device models may hold at once. Raise it to run a larger model; lower it to leave more room for everything else.`,` `,s?`This machine has ${h(Math.round(k))} of graphics memory and ${h(Math.round(O))} of system memory; a model larger than the graphics card runs partly from system memory.`:O>=1?`This machine has ${h(Math.round(O))} of memory in total.`:``]}),(0,l.jsxs)(`div`,{className:`gz-budget-slider`,children:[(0,l.jsxs)(`div`,{className:`gz-budget-slider-head`,children:[(0,l.jsx)(`strong`,{children:h(M)}),N?(0,l.jsx)(`span`,{className:`gz-budget-tag`,children:`Automatic`}):(0,l.jsx)(`span`,{className:`gz-budget-tag ${P?`gz-budget-tag-risky`:`gz-budget-tag-custom`}`,children:P?`Above recommended`:`Custom`})]}),(0,l.jsxs)(`div`,{className:`gz-budget-track`,children:[(0,l.jsx)(`input`,{type:`range`,min:A,max:j,step:p,value:M,"aria-label":`Memory for on-device models`,onChange:e=>y(Number.parseFloat(e.target.value))}),(0,l.jsxs)(`div`,{className:`gz-budget-marker`,style:{left:`${I}%`},title:`Recommended for this machine: ${h(E)}`,"aria-hidden":`true`,children:[(0,l.jsx)(`span`,{className:`gz-budget-marker-arrow`,children:`▲`}),(0,l.jsxs)(`span`,{className:`gz-budget-marker-label`,children:[`Auto · `,h(E)]})]})]}),(0,l.jsxs)(`div`,{className:`gz-budget-scale muted small`,children:[(0,l.jsx)(`span`,{children:h(A)}),(0,l.jsx)(`span`,{children:h(j)})]})]}),P&&(0,l.jsx)(`output`,{className:`muted small engine-memory-budget-warning`,children:`Above what we'd pick for this machine. Models will still load, but the rest of the system has less to work with — expect things to feel slower before anything fails outright.`}),(0,l.jsxs)(`div`,{className:`engine-memory-budget-actions`,children:[(0,l.jsx)(`button`,{type:`button`,onClick:()=>void T(N?null:M),disabled:b||!F,children:b?`Saving…`:`Save`}),a&&(0,l.jsx)(`button`,{type:`button`,onClick:()=>void T(null),disabled:b,children:`Back to automatic`})]}),S&&(0,l.jsx)(`p`,{className:`muted small`,style:{marginTop:`0.5rem`},children:S}),s&&(0,l.jsx)(_,{status:e,onSaved:t})]})}function _({status:e,onSaved:t}){let n=e.ramSpillover,[i,a]=(0,c.useState)(!1),[o,s]=(0,c.useState)(null),u=(0,c.useCallback)(async e=>{a(!0),s(null);try{await r.updateEngineRamSpillover(e),await t()}catch(e){s(`Could not save: ${e instanceof Error?e.message:String(e)}`)}finally{a(!1)}},[t]);if(!n)return null;let d=n.overridden?n.allowed?`spill`:`card`:`auto`;return(0,l.jsxs)(`div`,{className:`engine-spillover`,children:[(0,l.jsx)(`h4`,{children:`When a second model won't fit the graphics card`}),(0,l.jsx)(`p`,{className:`muted small`,children:`Gezel can unload the model you haven't used recently, or keep both loaded by spilling into system memory. Spilling keeps everything available but slows every model sharing the card — most noticeably with several chats or tasks running at once. A single model larger than the card always uses system memory; this only applies once more than one is loaded.`}),(0,l.jsxs)(`fieldset`,{className:`gz-tray engine-spillover-tray`,children:[(0,l.jsx)(`legend`,{className:`sr-only`,children:`When a second model won't fit the graphics card`}),[{id:`auto`,label:`Automatic`,value:null},{id:`card`,label:`Unload one`,value:!1},{id:`spill`,label:`Use system memory`,value:!0}].map(e=>(0,l.jsx)(`button`,{type:`button`,role:`radio`,"aria-checked":d===e.id,className:`gz-key${d===e.id?` gz-key-active`:``}`,disabled:i,onClick:()=>void u(e.value),children:e.label},e.id))]}),(0,l.jsxs)(`p`,{className:`muted small`,children:[`Automatic unloads one model so concurrent models stay within graphics memory. Choose Use system memory only if you explicitly prefer avoiding reloads. On this machine that means`,` `,n.auto?`using system memory`:`unloading one`,`.`]}),o&&(0,l.jsx)(`p`,{className:`error`,children:o})]})}function v(e){return`${(e/1024**3).toFixed(1)} GB`}function y({provider:e,pollMs:t=2e3}){let[n,i]=(0,c.useState)(null),[a,o]=(0,c.useState)(null),s=(0,c.useCallback)(async()=>{try{i(await r.getEngineStatus()),o(null)}catch(e){o(e instanceof Error?e.message:String(e))}},[]);if((0,c.useEffect)(()=>{let e=!1,n=async()=>{try{let t=await r.getEngineStatus();if(e)return;i(t),o(null)}catch(t){if(e)return;o(t instanceof Error?t.message:String(t))}};n();let a=setInterval(()=>void n(),t);return()=>{e=!0,clearInterval(a)}},[t]),a)return(0,l.jsxs)(`div`,{style:{fontSize:12,color:`var(--gz-color-muted, #888)`},children:[`Engine status unavailable: `,a]});if(!n||!n.enforced)return null;let u=n.budgetBytes>0?n.committedBytes/n.budgetBytes:0,d=n.entries.filter(t=>t.provider===e),f=u>1;return(0,l.jsxs)(`div`,{style:{border:`1px solid var(--gz-color-border, #2c2c2c)`,borderRadius:6,padding:`10px 14px`,marginBottom:`1rem`,background:`var(--gz-color-surface, transparent)`,fontSize:13},children:[(0,l.jsx)(`div`,{style:{marginBottom:6,fontWeight:500},children:`Engine memory budget`}),(0,l.jsx)(`div`,{style:{height:8,width:`100%`,borderRadius:4,background:`var(--gz-color-border, #2c2c2c)`,overflow:`hidden`,marginBottom:6},children:(0,l.jsx)(`div`,{style:{height:`100%`,width:`${Math.min(100,Math.round(u*100))}%`,background:f?`var(--warning)`:`var(--success)`,transition:`width 0.4s ease-out`}})}),(0,l.jsxs)(`div`,{style:{fontSize:12,color:`var(--gz-color-muted, #888)`},children:[v(n.committedBytes),` of `,v(n.budgetBytes),` used`,n.pools?.kind===`discrete-gpu`&&n.pools.vramBytes>0?(0,l.jsxs)(l.Fragment,{children:[` `,`(`,v(n.pools.vramBytes),` graphics + `,v(n.pools.ramShareBytes),` system)`]}):null,d.length>0?(0,l.jsxs)(l.Fragment,{children:[` · `,d.map(e=>`${e.replicaIdx===0?``:`${e.replicaIdx+1}× `}${e.modelId} (${v(e.residentBytes)})`).join(` · `)]}):null]}),(0,l.jsx)(g,{status:n,onSaved:s})]})}function b({provider:e,modelId:t,config:n,onConfigChanged:i}){let a=n?.localEngineReplicasMax??4,o=n?.localEngineReplicas??{},s=t?o[t]??1:1,[u,d]=(0,c.useState)(s),[f,p]=(0,c.useState)(`idle`);(0,c.useEffect)(()=>{d(s)},[s]);let m=(0,c.useCallback)(async n=>{if(!t)return;let s=Math.max(1,Math.min(a,n));d(s),p(`saving`);try{let n={...o,[t]:s};i(await r.updateConfig({localEngineReplicas:n})),await r.reconcileEnginePool({provider:e,clones:{[t]:s}}),p(`saved`),setTimeout(()=>p(`idle`),1200)}catch{p(`idle`)}},[t,a,e,o,i]);return t?(0,l.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:`0.5rem`,padding:`0.5rem 0`,fontSize:13},children:[(0,l.jsxs)(`span`,{style:{minWidth:220},children:[`Clones of `,(0,l.jsx)(`b`,{children:t}),` kept resident:`]}),(0,l.jsx)(`button`,{type:`button`,onClick:()=>void m(u-1),disabled:f===`saving`||u<=1,style:{width:28},children:`−`}),(0,l.jsx)(`span`,{style:{minWidth:28,textAlign:`center`,fontVariantNumeric:`tabular-nums`},children:u}),(0,l.jsx)(`button`,{type:`button`,onClick:()=>void m(u+1),disabled:f===`saving`||u>=a,style:{width:28},children:`+`}),(0,l.jsxs)(`span`,{style:{fontSize:12,color:`var(--gz-color-muted, #888)`},children:[`(max `,a,`)`]}),f===`saved`?(0,l.jsx)(`span`,{style:{fontSize:12},children:`saved ✓`}):null]}):(0,l.jsx)(`div`,{style:{fontSize:12,color:`var(--gz-color-muted, #888)`},children:`Pick a default model to enable clone control.`})}function x({model:e}){let t=o(e);return(0,l.jsx)(`td`,{children:(0,l.jsx)(i,{text:a(e),children:(0,l.jsxs)(`span`,{className:`model-size-cell`,children:[s(e.approxSizeBytes),t?(0,l.jsx)(`span`,{className:`muted small model-memory-headline`,children:t}):null]})})})}export{b as n,y as r,x as t};
@@ -1 +1 @@
1
- import"./index-DXWR4qW1.js";import{n as e,r as t}from"./monaco-DeTXJU-n.js";import{p as n}from"./editor.api-DShZZcgD.js";var r=!1,i=null;function a(){return i||(i=e().then(o).catch(e=>{throw i=null,e}),i)}function o(){r||=(n.defineTheme(`gezel-light`,{base:`vs`,inherit:!0,rules:[],colors:{"editor.background":`#f3eddf`,"editorGutter.background":`#ece5d4`,"editorLineNumber.foreground":`#a39a85`,"minimap.background":`#ece5d4`}}),n.defineTheme(`gezel-dark`,{base:`vs-dark`,inherit:!0,rules:[],colors:{"editor.background":`#1c1d20`,"editorGutter.background":`#191a1d`,"editorLineNumber.foreground":`#5d5f66`,"minimap.background":`#191a1d`}}),!0)}export{a as ensureGezelMonacoBase,t as monaco,o as registerGezelMonacoThemes};
1
+ import"./index-C0DYtvfg.js";import{n as e,r as t}from"./monaco-DeTXJU-n.js";import{p as n}from"./editor.api-DShZZcgD.js";var r=!1,i=null;function a(){return i||(i=e().then(o).catch(e=>{throw i=null,e}),i)}function o(){r||=(n.defineTheme(`gezel-light`,{base:`vs`,inherit:!0,rules:[],colors:{"editor.background":`#f3eddf`,"editorGutter.background":`#ece5d4`,"editorLineNumber.foreground":`#a39a85`,"minimap.background":`#ece5d4`}}),n.defineTheme(`gezel-dark`,{base:`vs-dark`,inherit:!0,rules:[],colors:{"editor.background":`#1c1d20`,"editorGutter.background":`#191a1d`,"editorLineNumber.foreground":`#5d5f66`,"minimap.background":`#191a1d`}}),!0)}export{a as ensureGezelMonacoBase,t as monaco,o as registerGezelMonacoThemes};
@@ -1 +1 @@
1
- import{cn as e}from"./dist-BPx-FyRH.js";import{r as t,t as n}from"./monaco-DeTXJU-n.js";import{f as r,h as i}from"./editor.api-DShZZcgD.js";import{ensureGezelMonacoBase as a}from"./monaco-base-BiVSa1J-.js";var o=!1,s=null;async function c(e){await a(),await n(`typescript`,{languageServices:!0});let t=i.typescript.typescriptDefaults;o||(o=!0,u(),t.setCompilerOptions({target:i.typescript.ScriptTarget.ESNext,module:i.typescript.ModuleKind.ESNext,moduleResolution:i.typescript.ModuleResolutionKind.NodeJs,lib:[`esnext`],strict:!0,noEmit:!0,isolatedModules:!0,allowNonTsExtensions:!0,types:[]}),t.setEagerModelSync(!0));let r=await e();if(r.version!==s){s=r.version;for(let e of r.files){let n=e.name.startsWith(`@`)?`file:///node_modules/${e.name}`:`file:///node_modules/@bendyline/gezel-sdk/${e.name}`;t.addExtraLib(e.content,n)}}}function l(e,t){return r.parse(`file:///gezel/${encodeURIComponent(e)}/scripts/${encodeURIComponent(t)}.ts`)}function u(){i.registerFoldingRangeProvider(`typescript`,{provideFoldingRanges(t){if(!t.uri.path.includes(`/scripts/`))return[];let n=e(t.getValue());return n<2?[]:[{start:1,end:n,kind:i.FoldingRangeKind.Region}]}})}export{c as ensureScriptTypescript,t as monaco,l as scriptModelUri};
1
+ import{fn as e}from"./dist-BqGwkOe5.js";import{r as t,t as n}from"./monaco-DeTXJU-n.js";import{f as r,h as i}from"./editor.api-DShZZcgD.js";import{ensureGezelMonacoBase as a}from"./monaco-base-B1H1U1Sw.js";var o=!1,s=null;async function c(e){await a(),await n(`typescript`,{languageServices:!0});let t=i.typescript.typescriptDefaults;o||(o=!0,u(),t.setCompilerOptions({target:i.typescript.ScriptTarget.ESNext,module:i.typescript.ModuleKind.ESNext,moduleResolution:i.typescript.ModuleResolutionKind.NodeJs,lib:[`esnext`],strict:!0,noEmit:!0,isolatedModules:!0,allowNonTsExtensions:!0,types:[]}),t.setEagerModelSync(!0));let r=await e();if(r.version!==s){s=r.version;for(let e of r.files){let n=e.name.startsWith(`@`)?`file:///node_modules/${e.name}`:`file:///node_modules/@bendyline/gezel-sdk/${e.name}`;t.addExtraLib(e.content,n)}}}function l(e,t){return r.parse(`file:///gezel/${encodeURIComponent(e)}/scripts/${encodeURIComponent(t)}.ts`)}function u(){i.registerFoldingRangeProvider(`typescript`,{provideFoldingRanges(t){if(!t.uri.path.includes(`/scripts/`))return[];let n=e(t.getValue());return n<2?[]:[{start:1,end:n,kind:i.FoldingRangeKind.Region}]}})}export{c as ensureScriptTypescript,t as monaco,l as scriptModelUri};
@@ -1 +1 @@
1
- import{t as e}from"./jsx-runtime-CEpd2cAX.js";import{Bt as t,y as n}from"./dist-BPx-FyRH.js";var r=e(),i={sheet:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`path`,{d:`M7 3.5 H14.5 L18.5 7.5 V20.5 H7 Z`}),(0,r.jsx)(`path`,{d:`M14.5 3.5 V7.5 H18.5`})]}),folder:(0,r.jsx)(r.Fragment,{children:(0,r.jsx)(`path`,{d:`M3.5 6.5 A1.5 1.5 0 0 1 5 5 H9.5 L11.5 7.5 H19 A1.5 1.5 0 0 1 20.5 9 V17.5 A1.5 1.5 0 0 1 19 19 H5 A1.5 1.5 0 0 1 3.5 17.5 Z`})}),envelope:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`rect`,{x:`3.5`,y:`5.5`,width:`17`,height:`13`,rx:`1.5`}),(0,r.jsx)(`path`,{d:`M4.5 7 L12 13 L19.5 7`})]}),branch:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`circle`,{cx:`6.5`,cy:`6`,r:`2.2`}),(0,r.jsx)(`circle`,{cx:`6.5`,cy:`18`,r:`2.2`}),(0,r.jsx)(`circle`,{cx:`17.5`,cy:`9`,r:`2.2`}),(0,r.jsx)(`path`,{d:`M6.5 8.2 V15.8`}),(0,r.jsx)(`path`,{d:`M17.5 11.2 C17.5 14.5 12 13.5 9 15.5`})]}),calendar:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`rect`,{x:`4`,y:`5.5`,width:`16`,height:`14.5`,rx:`1.5`}),(0,r.jsx)(`path`,{d:`M4 10 H20`}),(0,r.jsx)(`path`,{d:`M8.5 3.5 V7`}),(0,r.jsx)(`path`,{d:`M15.5 3.5 V7`})]}),bubbles:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`path`,{d:`M4 5.5 H15 A1.5 1.5 0 0 1 16.5 7 V12 A1.5 1.5 0 0 1 15 13.5 H8.5 L5.5 16 V13.5 H4 A1.5 1.5 0 0 1 2.5 12 V7 A1.5 1.5 0 0 1 4 5.5 Z`}),(0,r.jsx)(`path`,{d:`M18.5 9.5 H20 A1.5 1.5 0 0 1 21.5 11 V15.5 A1.5 1.5 0 0 1 20 17 H19.5 V19.5 L16.5 17 H12.5`})]}),chart:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`path`,{d:`M4 4 V20 H20`}),(0,r.jsx)(`path`,{d:`M8 16.5 V11`}),(0,r.jsx)(`path`,{d:`M12.5 16.5 V7.5`}),(0,r.jsx)(`path`,{d:`M17 16.5 V13`})]}),code:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`path`,{d:`M9.5 4.5 H8.5 C7 4.5 7 5.5 7 7 V9.5 C7 10.8 6.3 11.5 5 12 C6.3 12.5 7 13.2 7 14.5 V17 C7 18.5 7.5 19.5 9.5 19.5`}),(0,r.jsx)(`path`,{d:`M14.5 4.5 H15.5 C17 4.5 17 5.5 17 7 V9.5 C17 10.8 17.7 11.5 19 12 C17.7 12.5 17 13.2 17 14.5 V17 C17 18.5 16.5 19.5 14.5 19.5`})]}),frame:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`rect`,{x:`3.5`,y:`4.5`,width:`17`,height:`15`,rx:`1.5`}),(0,r.jsx)(`circle`,{cx:`9`,cy:`9.5`,r:`1.6`}),(0,r.jsx)(`path`,{d:`M3.5 16.5 L9.5 12.5 L13.5 15.5 L17 13 L20.5 15.5`})]}),quill:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`path`,{d:`M19.5 4.5 C13 5 8.5 9.5 6.5 15.5 L5 19 L8.5 17.5 C14.5 15.5 19 11 19.5 4.5 Z`}),(0,r.jsx)(`path`,{d:`M5.5 18.5 C9 13 13 9.5 16.5 7.5`})]}),sprout:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`path`,{d:`M12 21 V11`}),(0,r.jsx)(`path`,{d:`M12 14.4 C8.5 14.4 6.4 11.9 6.4 8.4 C9.9 8.4 12 10.9 12 14`,fillOpacity:.18}),(0,r.jsx)(`path`,{d:`M12 12.4 C15.5 12.4 17.6 9.9 17.6 6.4 C14.1 6.4 12 8.9 12 12`,fillOpacity:.18})]}),die:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`rect`,{x:`4.5`,y:`4.5`,width:`15`,height:`15`,rx:`2.5`}),(0,r.jsx)(`circle`,{cx:`9`,cy:`9`,r:`0.9`,fill:`currentColor`,stroke:`none`}),(0,r.jsx)(`circle`,{cx:`15`,cy:`15`,r:`0.9`,fill:`currentColor`,stroke:`none`}),(0,r.jsx)(`circle`,{cx:`15`,cy:`9`,r:`0.9`,fill:`currentColor`,stroke:`none`}),(0,r.jsx)(`circle`,{cx:`9`,cy:`15`,r:`0.9`,fill:`currentColor`,stroke:`none`})]}),house:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`path`,{d:`M4 11 L12 4.5 L20 11`}),(0,r.jsx)(`path`,{d:`M6 10 V19.5 H18 V10`}),(0,r.jsx)(`path`,{d:`M10 19.5 V14.5 H14 V19.5`})]}),coin:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`circle`,{cx:`12`,cy:`12`,r:`7.5`}),(0,r.jsx)(`path`,{d:`M12 8 C10 8 9.2 9 9.2 10 C9.2 12.5 14.8 11.5 14.8 14 C14.8 15 14 16 12 16`}),(0,r.jsx)(`path`,{d:`M12 6.8 V8`}),(0,r.jsx)(`path`,{d:`M12 16 V17.2`})]}),banner:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`path`,{d:`M6 3.5 V20.5`}),(0,r.jsx)(`path`,{d:`M6 5 H18.5 L15.5 8.75 L18.5 12.5 H6`})]}),terminal:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`rect`,{x:`3.5`,y:`4.5`,width:`17`,height:`15`,rx:`1.5`}),(0,r.jsx)(`path`,{d:`M7 9 L10 12 L7 15`}),(0,r.jsx)(`path`,{d:`M12.5 15 H17`})]}),globe:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`circle`,{cx:`12`,cy:`12`,r:`8`}),(0,r.jsx)(`path`,{d:`M4.5 9 H19.5 M4.5 15 H19.5`}),(0,r.jsx)(`path`,{d:`M12 4 C15.5 7.6 15.5 16.4 12 20 C8.5 16.4 8.5 7.6 12 4 Z`})]}),server:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`rect`,{x:`4`,y:`4.5`,width:`16`,height:`6`,rx:`1.3`}),(0,r.jsx)(`rect`,{x:`4`,y:`13.5`,width:`16`,height:`6`,rx:`1.3`}),(0,r.jsx)(`path`,{d:`M7 7.5 H7.1 M7 16.5 H7.1 M10 7.5 H16.5 M10 16.5 H16.5`})]}),package:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`path`,{d:`M4.5 8 L12 4 L19.5 8 V16 L12 20 L4.5 16 Z`}),(0,r.jsx)(`path`,{d:`M4.5 8 L12 12 L19.5 8 M12 12 V20`}),(0,r.jsx)(`path`,{d:`M8.5 6 L16 10`})]}),book:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`path`,{d:`M4 5.5 H9.5 C11 5.5 12 6.5 12 8 V19 C12 17.5 11 16.5 9.5 16.5 H4 Z`}),(0,r.jsx)(`path`,{d:`M20 5.5 H14.5 C13 5.5 12 6.5 12 8 V19 C12 17.5 13 16.5 14.5 16.5 H20 Z`})]}),palette:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`path`,{d:`M12 4 C7.3 4 4 7.2 4 11.5 C4 16 7.5 19.5 12 19.5 H13.2 C14.2 19.5 14.7 18.3 14 17.6 C13.2 16.8 13.7 15.5 14.8 15.5 H17 C19 15.5 20 14.1 20 12 C20 7.4 16.7 4 12 4 Z`}),(0,r.jsx)(`circle`,{cx:`8`,cy:`9`,r:`0.8`,fill:`currentColor`,stroke:`none`}),(0,r.jsx)(`circle`,{cx:`12`,cy:`7.5`,r:`0.8`,fill:`currentColor`,stroke:`none`}),(0,r.jsx)(`circle`,{cx:`16`,cy:`9.5`,r:`0.8`,fill:`currentColor`,stroke:`none`}),(0,r.jsx)(`circle`,{cx:`9`,cy:`13`,r:`0.8`,fill:`currentColor`,stroke:`none`})]}),camera:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`path`,{d:`M4 8 H7 L8.5 5.5 H15.5 L17 8 H20 V18.5 H4 Z`}),(0,r.jsx)(`circle`,{cx:`12`,cy:`13`,r:`3.3`})]}),briefcase:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`rect`,{x:`3.5`,y:`7.5`,width:`17`,height:`12`,rx:`1.5`}),(0,r.jsx)(`path`,{d:`M8.5 7.5 V5.5 H15.5 V7.5 M3.5 12.5 C8 15 16 15 20.5 12.5`}),(0,r.jsx)(`path`,{d:`M12 12.8 V15.2`})]}),heart:(0,r.jsx)(`path`,{d:`M12 20 C9 17.5 4.5 14.6 4.5 9.7 C4.5 6.8 6.3 5 8.8 5 C10.3 5 11.4 5.8 12 7 C12.6 5.8 13.7 5 15.2 5 C17.7 5 19.5 6.8 19.5 9.7 C19.5 14.6 15 17.5 12 20 Z`}),cards:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`rect`,{x:`5`,y:`5.5`,width:`11`,height:`14`,rx:`1.5`}),(0,r.jsx)(`path`,{d:`M9 5.5 V4.5 A1.5 1.5 0 0 1 10.5 3 H17.5 A1.5 1.5 0 0 1 19 4.5 V15.5 A1.5 1.5 0 0 1 17.5 17 H16`}),(0,r.jsx)(`path`,{d:`M8 10 H13 M8 13 H12`})]}),meal:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`path`,{d:`M5 4.5 V10 M3.5 4.5 V8 C3.5 9.3 4.1 10 5 10 C5.9 10 6.5 9.3 6.5 8 V4.5 M5 10 V20`}),(0,r.jsx)(`path`,{d:`M15 4.5 C18 6.5 18.5 10.5 16 13.5 V20 M16 13.5 H13.5 V9 C13.5 6.7 14 5.3 15 4.5 Z`})]}),plane:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`path`,{d:`M3.5 13 L20.5 5.5 L15.5 19 L11.5 13.5 Z`}),(0,r.jsx)(`path`,{d:`M11.5 13.5 L20.5 5.5 M11.5 13.5 V18 L8.5 15`})]}),people:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`circle`,{cx:`9`,cy:`9`,r:`3`}),(0,r.jsx)(`path`,{d:`M3.5 19 C4 15.5 6 14 9 14 C12 14 14 15.5 14.5 19`}),(0,r.jsx)(`path`,{d:`M14.5 7 C17 7 18.5 8.5 18.5 10.5 C18.5 12 17.7 13 16.5 13.7 M16 15 C18.5 15.3 20 16.5 20.5 19`})]}),dots:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`circle`,{cx:`6`,cy:`12`,r:`1.1`,fill:`currentColor`,stroke:`none`}),(0,r.jsx)(`circle`,{cx:`12`,cy:`12`,r:`1.1`,fill:`currentColor`,stroke:`none`}),(0,r.jsx)(`circle`,{cx:`18`,cy:`12`,r:`1.1`,fill:`currentColor`,stroke:`none`})]})};function a({glyph:e,size:t=18}){return(0,r.jsx)(`svg`,{width:t,height:t,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:1.7,strokeLinecap:`round`,strokeLinejoin:`round`,"aria-hidden":`true`,"data-project-glyph":e,children:i[e]})}var o=[{id:`general`,label:`General`,tagline:`Start simple — a blank bench.`,glyph:n.general},{id:`code`,label:`Code`,tagline:`Build and ship software.`,glyph:n.code},{id:`communication`,label:`Communication`,tagline:`Mail, calendars, and conversations.`,glyph:n.communication},{id:`creative`,label:`Photos & Media`,tagline:`Images, video, and design work.`,glyph:n.creative},{id:`writing`,label:`Writing`,tagline:`Drafts, documents, and stories.`,glyph:n.writing},{id:`growth`,label:`Personal Growth`,tagline:`Learn, practice, and keep at it.`,glyph:n.growth},{id:`game`,label:`Games`,tagline:`Play, and build worlds.`,glyph:n.game},{id:`data`,label:`Data`,tagline:`Explore and report on datasets.`,glyph:n.data},{id:`home`,label:`Home & Family`,tagline:`Run the household; care for the people in it.`,glyph:n.home},{id:`money`,label:`Money & Small Business`,tagline:`Ledgers, invoices, and calm month-ends.`,glyph:n.money},{id:`events`,label:`Events & Journeys`,tagline:`Plan the day, make the trip, rally the crowd.`,glyph:n.events},{id:`other`,label:`More`,tagline:`Purpose-built for something else.`,glyph:n.other}];function s(e){return o.find(t=>t.id===e)??o[0]}function c(e){let n=e.manifest;return n.kind===`project-type`?t({id:n.id,icon:n.icon,extends:n.extends,category:n.category,tags:n.tags}):`dots`}var l=[{id:`general`,label:`General`,description:`A flexible project with a blank workspace.`,category:`general`,glyph:`sheet`,give:[`A blank workspace your crew reads and writes`,`Your About and mission set the direction`]},{id:`email`,label:`E-Mail`,description:`Work from a connected mailbox.`,category:`communication`,glyph:`envelope`,give:[`Mailbox synced as searchable markdown`,`Triage and drafting; sending stays consent-gated`]},{id:`github`,label:`GitHub`,description:`Start from a GitHub repository.`,category:`code`,glyph:`branch`,give:[`Repo-linked workspace, cloned locally`,`About drafted from the README`]},{id:`folder`,label:`Existing Folder`,description:`Work in an existing folder on this computer.`,category:`general`,glyph:`folder`,give:[`Works directly in a folder you choose`,`Name and About suggested from what it finds`]},{id:`calendar`,label:`Calendar`,description:`Plan and coordinate around a calendar.`,soon:!0,category:`communication`,glyph:`calendar`,give:[]},{id:`messaging`,label:`Group messaging`,description:`Organize work around a shared conversation.`,soon:!0,category:`communication`,glyph:`bubbles`,give:[]},{id:`data`,label:`Data analysis`,description:`Explore and report on a dataset.`,soon:!0,category:`data`,glyph:`chart`,give:[]}];function u(e){let t=e.manifest;if(t.kind!==`project-type`)return`other`;if(t.category)return t.category;let n=`${t.id} ${t.tags.join(` `)} ${t.extends??``}`.toLowerCase();return/design|media|photo|image|video|art/.test(n)?`creative`:/language|learn|habit|practice|coach/.test(n)?`growth`:/write|writing|blog|story|content/.test(n)?`writing`:/game/.test(n)?`game`:/data|analysis|report/.test(n)?`data`:/code|web-app|api|cli|library|site/.test(n)?`code`:/mail|email|calendar|chat|messag/.test(n)?`communication`:`other`}export{u as a,c as i,l as n,s as o,a as r,o as t};
1
+ import{t as e}from"./jsx-runtime-CEpd2cAX.js";import{Ut as t,x as n}from"./dist-BqGwkOe5.js";var r=e(),i={sheet:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`path`,{d:`M7 3.5 H14.5 L18.5 7.5 V20.5 H7 Z`}),(0,r.jsx)(`path`,{d:`M14.5 3.5 V7.5 H18.5`})]}),folder:(0,r.jsx)(r.Fragment,{children:(0,r.jsx)(`path`,{d:`M3.5 6.5 A1.5 1.5 0 0 1 5 5 H9.5 L11.5 7.5 H19 A1.5 1.5 0 0 1 20.5 9 V17.5 A1.5 1.5 0 0 1 19 19 H5 A1.5 1.5 0 0 1 3.5 17.5 Z`})}),envelope:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`rect`,{x:`3.5`,y:`5.5`,width:`17`,height:`13`,rx:`1.5`}),(0,r.jsx)(`path`,{d:`M4.5 7 L12 13 L19.5 7`})]}),branch:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`circle`,{cx:`6.5`,cy:`6`,r:`2.2`}),(0,r.jsx)(`circle`,{cx:`6.5`,cy:`18`,r:`2.2`}),(0,r.jsx)(`circle`,{cx:`17.5`,cy:`9`,r:`2.2`}),(0,r.jsx)(`path`,{d:`M6.5 8.2 V15.8`}),(0,r.jsx)(`path`,{d:`M17.5 11.2 C17.5 14.5 12 13.5 9 15.5`})]}),calendar:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`rect`,{x:`4`,y:`5.5`,width:`16`,height:`14.5`,rx:`1.5`}),(0,r.jsx)(`path`,{d:`M4 10 H20`}),(0,r.jsx)(`path`,{d:`M8.5 3.5 V7`}),(0,r.jsx)(`path`,{d:`M15.5 3.5 V7`})]}),bubbles:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`path`,{d:`M4 5.5 H15 A1.5 1.5 0 0 1 16.5 7 V12 A1.5 1.5 0 0 1 15 13.5 H8.5 L5.5 16 V13.5 H4 A1.5 1.5 0 0 1 2.5 12 V7 A1.5 1.5 0 0 1 4 5.5 Z`}),(0,r.jsx)(`path`,{d:`M18.5 9.5 H20 A1.5 1.5 0 0 1 21.5 11 V15.5 A1.5 1.5 0 0 1 20 17 H19.5 V19.5 L16.5 17 H12.5`})]}),chart:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`path`,{d:`M4 4 V20 H20`}),(0,r.jsx)(`path`,{d:`M8 16.5 V11`}),(0,r.jsx)(`path`,{d:`M12.5 16.5 V7.5`}),(0,r.jsx)(`path`,{d:`M17 16.5 V13`})]}),code:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`path`,{d:`M9.5 4.5 H8.5 C7 4.5 7 5.5 7 7 V9.5 C7 10.8 6.3 11.5 5 12 C6.3 12.5 7 13.2 7 14.5 V17 C7 18.5 7.5 19.5 9.5 19.5`}),(0,r.jsx)(`path`,{d:`M14.5 4.5 H15.5 C17 4.5 17 5.5 17 7 V9.5 C17 10.8 17.7 11.5 19 12 C17.7 12.5 17 13.2 17 14.5 V17 C17 18.5 16.5 19.5 14.5 19.5`})]}),frame:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`rect`,{x:`3.5`,y:`4.5`,width:`17`,height:`15`,rx:`1.5`}),(0,r.jsx)(`circle`,{cx:`9`,cy:`9.5`,r:`1.6`}),(0,r.jsx)(`path`,{d:`M3.5 16.5 L9.5 12.5 L13.5 15.5 L17 13 L20.5 15.5`})]}),quill:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`path`,{d:`M19.5 4.5 C13 5 8.5 9.5 6.5 15.5 L5 19 L8.5 17.5 C14.5 15.5 19 11 19.5 4.5 Z`}),(0,r.jsx)(`path`,{d:`M5.5 18.5 C9 13 13 9.5 16.5 7.5`})]}),sprout:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`path`,{d:`M12 21 V11`}),(0,r.jsx)(`path`,{d:`M12 14.4 C8.5 14.4 6.4 11.9 6.4 8.4 C9.9 8.4 12 10.9 12 14`,fillOpacity:.18}),(0,r.jsx)(`path`,{d:`M12 12.4 C15.5 12.4 17.6 9.9 17.6 6.4 C14.1 6.4 12 8.9 12 12`,fillOpacity:.18})]}),die:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`rect`,{x:`4.5`,y:`4.5`,width:`15`,height:`15`,rx:`2.5`}),(0,r.jsx)(`circle`,{cx:`9`,cy:`9`,r:`0.9`,fill:`currentColor`,stroke:`none`}),(0,r.jsx)(`circle`,{cx:`15`,cy:`15`,r:`0.9`,fill:`currentColor`,stroke:`none`}),(0,r.jsx)(`circle`,{cx:`15`,cy:`9`,r:`0.9`,fill:`currentColor`,stroke:`none`}),(0,r.jsx)(`circle`,{cx:`9`,cy:`15`,r:`0.9`,fill:`currentColor`,stroke:`none`})]}),house:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`path`,{d:`M4 11 L12 4.5 L20 11`}),(0,r.jsx)(`path`,{d:`M6 10 V19.5 H18 V10`}),(0,r.jsx)(`path`,{d:`M10 19.5 V14.5 H14 V19.5`})]}),coin:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`circle`,{cx:`12`,cy:`12`,r:`7.5`}),(0,r.jsx)(`path`,{d:`M12 8 C10 8 9.2 9 9.2 10 C9.2 12.5 14.8 11.5 14.8 14 C14.8 15 14 16 12 16`}),(0,r.jsx)(`path`,{d:`M12 6.8 V8`}),(0,r.jsx)(`path`,{d:`M12 16 V17.2`})]}),banner:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`path`,{d:`M6 3.5 V20.5`}),(0,r.jsx)(`path`,{d:`M6 5 H18.5 L15.5 8.75 L18.5 12.5 H6`})]}),terminal:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`rect`,{x:`3.5`,y:`4.5`,width:`17`,height:`15`,rx:`1.5`}),(0,r.jsx)(`path`,{d:`M7 9 L10 12 L7 15`}),(0,r.jsx)(`path`,{d:`M12.5 15 H17`})]}),globe:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`circle`,{cx:`12`,cy:`12`,r:`8`}),(0,r.jsx)(`path`,{d:`M4.5 9 H19.5 M4.5 15 H19.5`}),(0,r.jsx)(`path`,{d:`M12 4 C15.5 7.6 15.5 16.4 12 20 C8.5 16.4 8.5 7.6 12 4 Z`})]}),server:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`rect`,{x:`4`,y:`4.5`,width:`16`,height:`6`,rx:`1.3`}),(0,r.jsx)(`rect`,{x:`4`,y:`13.5`,width:`16`,height:`6`,rx:`1.3`}),(0,r.jsx)(`path`,{d:`M7 7.5 H7.1 M7 16.5 H7.1 M10 7.5 H16.5 M10 16.5 H16.5`})]}),package:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`path`,{d:`M4.5 8 L12 4 L19.5 8 V16 L12 20 L4.5 16 Z`}),(0,r.jsx)(`path`,{d:`M4.5 8 L12 12 L19.5 8 M12 12 V20`}),(0,r.jsx)(`path`,{d:`M8.5 6 L16 10`})]}),book:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`path`,{d:`M4 5.5 H9.5 C11 5.5 12 6.5 12 8 V19 C12 17.5 11 16.5 9.5 16.5 H4 Z`}),(0,r.jsx)(`path`,{d:`M20 5.5 H14.5 C13 5.5 12 6.5 12 8 V19 C12 17.5 13 16.5 14.5 16.5 H20 Z`})]}),palette:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`path`,{d:`M12 4 C7.3 4 4 7.2 4 11.5 C4 16 7.5 19.5 12 19.5 H13.2 C14.2 19.5 14.7 18.3 14 17.6 C13.2 16.8 13.7 15.5 14.8 15.5 H17 C19 15.5 20 14.1 20 12 C20 7.4 16.7 4 12 4 Z`}),(0,r.jsx)(`circle`,{cx:`8`,cy:`9`,r:`0.8`,fill:`currentColor`,stroke:`none`}),(0,r.jsx)(`circle`,{cx:`12`,cy:`7.5`,r:`0.8`,fill:`currentColor`,stroke:`none`}),(0,r.jsx)(`circle`,{cx:`16`,cy:`9.5`,r:`0.8`,fill:`currentColor`,stroke:`none`}),(0,r.jsx)(`circle`,{cx:`9`,cy:`13`,r:`0.8`,fill:`currentColor`,stroke:`none`})]}),camera:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`path`,{d:`M4 8 H7 L8.5 5.5 H15.5 L17 8 H20 V18.5 H4 Z`}),(0,r.jsx)(`circle`,{cx:`12`,cy:`13`,r:`3.3`})]}),briefcase:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`rect`,{x:`3.5`,y:`7.5`,width:`17`,height:`12`,rx:`1.5`}),(0,r.jsx)(`path`,{d:`M8.5 7.5 V5.5 H15.5 V7.5 M3.5 12.5 C8 15 16 15 20.5 12.5`}),(0,r.jsx)(`path`,{d:`M12 12.8 V15.2`})]}),heart:(0,r.jsx)(`path`,{d:`M12 20 C9 17.5 4.5 14.6 4.5 9.7 C4.5 6.8 6.3 5 8.8 5 C10.3 5 11.4 5.8 12 7 C12.6 5.8 13.7 5 15.2 5 C17.7 5 19.5 6.8 19.5 9.7 C19.5 14.6 15 17.5 12 20 Z`}),cards:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`rect`,{x:`5`,y:`5.5`,width:`11`,height:`14`,rx:`1.5`}),(0,r.jsx)(`path`,{d:`M9 5.5 V4.5 A1.5 1.5 0 0 1 10.5 3 H17.5 A1.5 1.5 0 0 1 19 4.5 V15.5 A1.5 1.5 0 0 1 17.5 17 H16`}),(0,r.jsx)(`path`,{d:`M8 10 H13 M8 13 H12`})]}),meal:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`path`,{d:`M5 4.5 V10 M3.5 4.5 V8 C3.5 9.3 4.1 10 5 10 C5.9 10 6.5 9.3 6.5 8 V4.5 M5 10 V20`}),(0,r.jsx)(`path`,{d:`M15 4.5 C18 6.5 18.5 10.5 16 13.5 V20 M16 13.5 H13.5 V9 C13.5 6.7 14 5.3 15 4.5 Z`})]}),plane:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`path`,{d:`M3.5 13 L20.5 5.5 L15.5 19 L11.5 13.5 Z`}),(0,r.jsx)(`path`,{d:`M11.5 13.5 L20.5 5.5 M11.5 13.5 V18 L8.5 15`})]}),people:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`circle`,{cx:`9`,cy:`9`,r:`3`}),(0,r.jsx)(`path`,{d:`M3.5 19 C4 15.5 6 14 9 14 C12 14 14 15.5 14.5 19`}),(0,r.jsx)(`path`,{d:`M14.5 7 C17 7 18.5 8.5 18.5 10.5 C18.5 12 17.7 13 16.5 13.7 M16 15 C18.5 15.3 20 16.5 20.5 19`})]}),dots:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(`circle`,{cx:`6`,cy:`12`,r:`1.1`,fill:`currentColor`,stroke:`none`}),(0,r.jsx)(`circle`,{cx:`12`,cy:`12`,r:`1.1`,fill:`currentColor`,stroke:`none`}),(0,r.jsx)(`circle`,{cx:`18`,cy:`12`,r:`1.1`,fill:`currentColor`,stroke:`none`})]})};function a({glyph:e,size:t=18}){return(0,r.jsx)(`svg`,{width:t,height:t,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:1.7,strokeLinecap:`round`,strokeLinejoin:`round`,"aria-hidden":`true`,"data-project-glyph":e,children:i[e]})}var o=[{id:`general`,label:`General`,tagline:`Start simple — a blank bench.`,glyph:n.general},{id:`code`,label:`Code`,tagline:`Build and ship software.`,glyph:n.code},{id:`communication`,label:`Communication`,tagline:`Mail, calendars, and conversations.`,glyph:n.communication},{id:`creative`,label:`Photos & Media`,tagline:`Images, video, and design work.`,glyph:n.creative},{id:`writing`,label:`Writing`,tagline:`Drafts, documents, and stories.`,glyph:n.writing},{id:`growth`,label:`Personal Growth`,tagline:`Learn, practice, and keep at it.`,glyph:n.growth},{id:`game`,label:`Games`,tagline:`Play, and build worlds.`,glyph:n.game},{id:`data`,label:`Data`,tagline:`Explore and report on datasets.`,glyph:n.data},{id:`home`,label:`Home & Family`,tagline:`Run the household; care for the people in it.`,glyph:n.home},{id:`money`,label:`Money & Small Business`,tagline:`Ledgers, invoices, and calm month-ends.`,glyph:n.money},{id:`events`,label:`Events & Journeys`,tagline:`Plan the day, make the trip, rally the crowd.`,glyph:n.events},{id:`other`,label:`More`,tagline:`Purpose-built for something else.`,glyph:n.other}];function s(e){return o.find(t=>t.id===e)??o[0]}function c(e){let n=e.manifest;return n.kind===`project-type`?t({id:n.id,icon:n.icon,extends:n.extends,category:n.category,tags:n.tags}):`dots`}var l=[{id:`general`,label:`General`,description:`A flexible project with a blank workspace.`,category:`general`,glyph:`sheet`,give:[`A blank workspace your crew reads and writes`,`Your About and mission set the direction`]},{id:`email`,label:`E-Mail`,description:`Work from a connected mailbox.`,category:`communication`,glyph:`envelope`,give:[`Mailbox synced as searchable markdown`,`Triage and drafting; sending stays consent-gated`]},{id:`github`,label:`GitHub`,description:`Start from a GitHub repository.`,category:`code`,glyph:`branch`,give:[`Repo-linked workspace, cloned locally`,`About drafted from the README`]},{id:`folder`,label:`Existing Folder`,description:`Work in an existing folder on this computer.`,category:`general`,glyph:`folder`,give:[`Works directly in a folder you choose`,`Name and About suggested from what it finds`]},{id:`calendar`,label:`Calendar`,description:`Plan and coordinate around a calendar.`,soon:!0,category:`communication`,glyph:`calendar`,give:[]},{id:`messaging`,label:`Group messaging`,description:`Organize work around a shared conversation.`,soon:!0,category:`communication`,glyph:`bubbles`,give:[]},{id:`data`,label:`Data analysis`,description:`Explore and report on a dataset.`,soon:!0,category:`data`,glyph:`chart`,give:[]}];function u(e){let t=e.manifest;if(t.kind!==`project-type`)return`other`;if(t.category)return t.category;let n=`${t.id} ${t.tags.join(` `)} ${t.extends??``}`.toLowerCase();return/design|media|photo|image|video|art/.test(n)?`creative`:/language|learn|habit|practice|coach/.test(n)?`growth`:/write|writing|blog|story|content/.test(n)?`writing`:/game/.test(n)?`game`:/data|analysis|report/.test(n)?`data`:/code|web-app|api|cli|library|site/.test(n)?`code`:/mail|email|calendar|chat|messag/.test(n)?`communication`:`other`}export{u as a,c as i,l as n,s as o,a as r,o as t};
@@ -0,0 +1,3 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/doc-Dr5K49bx.js","assets/rolldown-runtime-aKtaBQYM.js","assets/chunk-O7JILDEF-CqcO1qaI.js","assets/chunk-BAOV476U-CEOFYt8X.js","assets/chunk-4VOD55SX-BFSSw0c8.js","assets/chunk-GAZKTT4R-BkP6-w3z.js","assets/chunk-UBFT2CDQ-FexGDigd.js","assets/chunk-XRW6P7IF-BeQQgMVK.js","assets/chunk-7ZAAICW4-BsCpYJH6.js","assets/images-JLBFCDD4-6JitW0hD.js","assets/chunk-B7GEAZBI-Divd2h1k.js","assets/storage-D8pE2zg0.js","assets/index-C0DYtvfg.js","assets/jsx-runtime-CEpd2cAX.js","assets/react-dom-OL4w_gzs.js","assets/dist-BqGwkOe5.js","assets/dist-BaHut5iX.js","assets/api-BPraLwsh.js","assets/primitives-CWrGZpPI.js","assets/Tabs-jE0Z5Tzd.js","assets/document-companion-BQk2kS0F.js","assets/DropdownMenu-S4d9-3j3.js","assets/dist-pLLFUPO-.js","assets/relative-time-B2kBaekd.js","assets/FileTypeIcon-Cwzl1GkZ.js","assets/model-context-DBqdK0PS.js","assets/model-memory-copy-CeuXAj-T.js","assets/StorageCleanupDialog-OQlomMJD.js","assets/poppetje-DLB8uevw.js","assets/safe-svg-image-NbuPaBIv.js","assets/ConfirmDialog-Dt1ed4Fh.js","assets/model-inventory-ykSm_IT5.js","assets/markdown-ryKA_OmY.js","assets/schemas-JY4jmLbC.js","assets/preload-helper-Czpn1I53.js","assets/chunk-6ECMNUIP-DDVjPyfK.js","assets/inlineIconMarker-BQI2HLeD.js","assets/chunk-TT6ENR6T-CaYjVwjm.js","assets/chunk-DAMIRKTO-CGniCSiM.js","assets/new-project-meta-_f9sfcRX.js","assets/chunk-AE3IUKMM-mZjzzO8Z.js","assets/index-B8NcxqcR.css","assets/docx-sXa1Rf41.js","assets/chunk-7AWFHP5U-MiVVPFTx.js","assets/jszip.min-DhiFe-R7.js","assets/chunk-S5PCVMKU-Df5XzhSE.js","assets/chunk-JU2RHXUB-ClblWDJZ.js","assets/chunk-A6N6IN3I-ofeM4l8g.js","assets/chunk-ILCJ3WFD-CLZxw4Ge.js","assets/chunk-BXWNU4T5-CFA9w1DZ.js","assets/chunk-IIQYS2YH-DKZhWMpn.js","assets/chunk-USU6HTKB-B_p-YcDp.js","assets/icons-DWaUNQbT.js","assets/pdf-BOjVDlCK.js","assets/pptx-BuxyNxQh.js","assets/chunk-VPWPEMZJ-DRKoa_j0.js","assets/chunk-6N2J7C2B-CsppiLVr.js","assets/xlsx-DyBGuAO1.js","assets/chunk-DXYWKZ52-BXcAlClu.js","assets/chunk-OBADJV7C-CDVOcmYt.js","assets/materialize-A34OZGEU-xNNKzytx.js","assets/chunk-Q77KNJIN-BIDRf0aP.js","assets/chunk-FLR2ARKC-D7wrvQgT.js","assets/table-fcouR4db.js","assets/csv-62UGQMzZ.js","assets/html-BGVOMhkv.js","assets/epub-RopMP0ec.js","assets/container-Ce94efbg.js","assets/transform-CmAXy0Ck.js","assets/infer-LEGOsu64.js","assets/chunk-WATAOG4Y-C1EXVPmG.js","assets/chunk-2JJ5RFDZ-B2-BFNXu.js","assets/chunk-KXOZMWBS-BwD4KMLI.js"])))=>i.map(i=>d[i]);
2
+ import{n as e}from"./rolldown-runtime-aKtaBQYM.js";import{ft as t,y as n}from"./doc-Dr5K49bx.js";import{d as r,o as i,u as a}from"./chunk-O7JILDEF-CqcO1qaI.js";import{n as o}from"./chunk-UBFT2CDQ-FexGDigd.js";import{l as s}from"./markdown-ryKA_OmY.js";import{t as c}from"./preload-helper-Czpn1I53.js";import{I as l}from"./index-C0DYtvfg.js";import{i as u,r as d,t as f}from"./chunk-7AWFHP5U-MiVVPFTx.js";import"./storage-D8pE2zg0.js";import{n as p,r as m}from"./html-BGVOMhkv.js";import{t as h}from"./chunk-KXOZMWBS-BwD4KMLI.js";var g=Object.freeze({maxInputBytes:256*1024*1024,maxMarkdownBytes:16*1024*1024,maxMarkdownNodes:25e4,maxMarkdownDepth:128,maxTableCells:1e5,maxBlocks:5e4,maxBlockDepth:128,maxDurationSeconds:1440*60,maxAudioSegments:1e4});function _(e){let t={...g,...e};for(let[e,n]of Object.entries(t))if(!Number.isSafeInteger(n)||n<0)throw RangeError(`${e} must be a non-negative safe integer`);return t}function v(e){if(e===!1)return!1;let t=_(e);return{maxSourceBytes:t.maxMarkdownBytes,maxNodes:t.maxMarkdownNodes,maxDepth:t.maxMarkdownDepth,maxTableCells:t.maxTableCells}}function y(e,t,n){if(t===!1)return;let r=_(t);if(!Number.isFinite(e.duration)||e.duration<0||e.duration>r.maxDurationSeconds)throw RangeError(`Document duration must be between 0 and ${r.maxDurationSeconds} seconds`);if(e.audio.segments.length>r.maxAudioSegments)throw RangeError(`Document exceeds the ${r.maxAudioSegments}-audio-segment safety limit`);let i=0;for(let t of e.audio.segments){if(!Number.isFinite(t.duration)||t.duration<0)throw RangeError(`Audio segment durations must be non-negative finite numbers`);if(i+=t.duration,i>r.maxDurationSeconds)throw RangeError(`Narration exceeds the ${r.maxDurationSeconds}-second safety limit`)}let a=[];for(let t=e.blocks.length-1;t>=0;t--)a.push({block:e.blocks[t],depth:0});let o=0;for(;a.length>0;){o&1023||n?.throwIfAborted();let{block:e,depth:t}=a.pop();if(++o>r.maxBlocks)throw RangeError(`Document exceeds the ${r.maxBlocks}-block safety limit`);if(t>r.maxBlockDepth)throw RangeError(`Document exceeds the ${r.maxBlockDepth}-level block nesting safety limit`);for(let n=(e.children?.length??0)-1;n>=0;n--)a.push({block:e.children[n],depth:t+1})}}var b={heading:!0,paragraph:!0,blockquote:!0,list:!0,code:!0,thematicBreak:!0,table:!0,htmlBlock:!0,math:!0,definition:!0,footnoteDefinition:!0,containerDirective:!0,leafDirective:!0,definitionList:!0,text:!0,emphasis:!0,strong:!0,delete:!0,superscript:!0,subscript:!0,inlineCode:!0,link:!0,image:!0,break:!0,htmlInline:!0,inlineMath:!0,footnoteReference:!0,linkReference:!0,imageReference:!0,textDirective:!0,mention:!0,inlineIcon:!0},x=[`heading`,`paragraph`,`blockquote`,`list`,`code`,`thematicBreak`,`table`,`htmlBlock`,`math`,`text`,`emphasis`,`strong`,`delete`,`superscript`,`subscript`,`inlineCode`,`link`,`image`,`break`,`htmlInline`,`inlineMath`],ee={docx:new Set([...x,`footnoteDefinition`,`footnoteReference`]),pdf:new Set([...x,`footnoteDefinition`,`footnoteReference`]),pptx:new Set(x),epub:new Set(x)},te={docx:`DOCX`,pdf:`PDF`,pptx:`PPTX`,epub:`EPUB`};function S(e,t){let n=ee[t],r=new Map,i=e=>{if(!e||typeof e!=`object`)return;let t=e,a=t.type;if(a&&Object.prototype.hasOwnProperty.call(b,a)&&!n.has(a)){r.set(a,(r.get(a)??0)+1);return}if(Array.isArray(t.children))for(let e of t.children)i(e)};for(let t of e.children)i(t);if(r.size===0)return[];let a=[...r.values()].reduce((e,t)=>e+t,0),o=[...r].map(([e,t])=>`${e} (${t})`).join(`, `);return[`${te[t]} export omitted ${a} unsupported Markdown node(s): ${o}.`]}var C={md:`text/markdown`,docx:`application/vnd.openxmlformats-officedocument.wordprocessingml.document`,pdf:`application/pdf`,pptx:`application/vnd.openxmlformats-officedocument.presentationml.presentation`,xlsx:`application/vnd.openxmlformats-officedocument.spreadsheetml.sheet`,csv:`text/csv`,html:`text/html`,zip:`application/zip`,epub:`application/epub+zip`};async function w(e){if(e instanceof Uint8Array)return e;if(e instanceof ArrayBuffer)return new Uint8Array(e);if(typeof e.arrayBuffer==`function`)return new Uint8Array(await e.arrayBuffer());let t=await new Promise((t,n)=>{let r=new FileReader;r.onload=()=>t(r.result),r.onerror=()=>n(r.error),r.readAsArrayBuffer(e)});return new Uint8Array(t)}function T(e,t){return t.themeId??e.doc.themeId}function E(e,t){return{...e.formatOptions?.[t]??{},...e.signal?{signal:e.signal}:{}}}async function D(e){if(e.markdownDoc)return e.markdownDoc;let{docToMarkdown:t}=await c(async()=>{let{docToMarkdown:e}=await import(`./doc-Dr5K49bx.js`).then(e=>e.t);return{docToMarkdown:e}},__vite__mapDeps([0,1,2,3,4,5,6,7,8]));return t(e.doc)}var ne=/\.(jpg|jpeg|png|gif|webp|svg|bmp|avif)$/i,re=/\.(csv|tsv|xlsx|parquet)$/i;async function O(e,t,n,r=!0){let i=new Map,a=await e.listFiles();for(let o=0;o<a.length;o++){o&63||n?.throwIfAborted();let s=a[o];if(!t.test(s.path))continue;let c=await e.readFile(s.path);if(!c||(i.set(s.path,c),!r))continue;let l=s.path.lastIndexOf(`/`);l!==-1&&i.set(s.path.slice(l+1),c)}return i}async function k(e,t){return O(e,ne,t)}function A(e,t){let r=new Set,i=e=>{for(let t of e){let e=t.templateOverrides?.src;e&&n(e)&&r.add(e),t.children&&i(t.children)}};return i(e.blocks),[...r].map(e=>`${t} cannot embed the data sidecar "${e}"; the export carries its bounded preview and the link will not resolve outside the source container.`)}async function ie(e,t){let n=await k(e,t),{extToMime:r}=await c(async()=>{let{extToMime:e}=await import(`./images-JLBFCDD4-6JitW0hD.js`);return{extToMime:e}},__vite__mapDeps([9,10]));return new Map([...n].map(([e,t])=>[e,{data:t,contentType:r(e.split(`.`).pop()??``)}]))}async function ae(e,t){let{MemoryContentContainer:n}=await c(async()=>{let{MemoryContentContainer:e}=await import(`./storage-D8pE2zg0.js`).then(e=>e.t);return{MemoryContentContainer:e}},__vite__mapDeps([11,1,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,0,2,3,4,5,6,7,8,32,33,34,35,36,37,38,39,40,41])),r=new n,i=await e.container.listFiles();for(let n=0;n<i.length;n++){n&63||t?.throwIfAborted();let a=i[n],o=await e.container.readFile(a.path);o&&await r.writeFile(a.path,new Uint8Array(o),a.mimeType)}let{stringifyMarkdown:a}=await c(async()=>{let{stringifyMarkdown:e}=await import(`./markdown-ryKA_OmY.js`).then(e=>e.t);return{stringifyMarkdown:e}},__vite__mapDeps([32,1,2,4,6])),o=await e.container.getDocumentPath()??`index.md`;return await r.writeDocument(a(await D(e)),o),r}async function j(e,t){let n=await e.resolvePlayerScript?.();if(!n)throw new h(`missing-dependency`,`HTML export needs a player script.`,{format:t,hint:`pass resolvePlayerScript, e.g. () => import('@bendyline/squisq-react/standalone-source').then(m => m.PLAYER_BUNDLE)`});return n}function M(e,t,n=[]){return{bytes:e,mimeType:t,suggestedFilename:``,warnings:n}}function oe(e){let t=E(e,`pptx`);return{...t,inferTheme:t?.inferTheme!==!1,inferLayouts:t?.inferLayouts!==!1}}function se(){return[{id:`md`,templateAnnotationHandling:`preserved`,label:`Markdown`,mimeType:C.md,extensions:[`.md`,`.markdown`],async importDoc(e,t){let{parseMarkdown:n}=await c(async()=>{let{parseMarkdown:e}=await import(`./markdown-ryKA_OmY.js`).then(e=>e.t);return{parseMarkdown:e}},__vite__mapDeps([32,1,2,4,6])),r=E(t,`md`).parse??{};return n(new TextDecoder().decode(e),{...r,signal:t.signal,limits:r.limits??v(t.limits)})},async exportDoc(e,t){let{stringifyMarkdown:n}=await c(async()=>{let{stringifyMarkdown:e}=await import(`./markdown-ryKA_OmY.js`).then(e=>e.t);return{stringifyMarkdown:e}},__vite__mapDeps([32,1,2,4,6])),r=E(t,`md`).stringify??{},i=n(await D(e),{...r,signal:t.signal,limits:r.limits??v(t.limits)});return M(new TextEncoder().encode(i),C.md)}},{id:`docx`,templateAnnotationHandling:`ignored`,label:`Word (DOCX)`,mimeType:C.docx,extensions:[`.docx`],async importContainer(e,t){let{docxToContainer:n}=await c(async()=>{let{docxToContainer:e}=await import(`./docx-sXa1Rf41.js`);return{docxToContainer:e}},__vite__mapDeps([42,0,1,2,3,4,5,6,7,8,32,33,43,44,45,46,47,10,48,49,50,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,34,35,36,37,38,39,40,41,11,51,52]));return n(e,E(t,`docx`))},async importDoc(e,t){let{docxToMarkdownDoc:n}=await c(async()=>{let{docxToMarkdownDoc:e}=await import(`./docx-sXa1Rf41.js`);return{docxToMarkdownDoc:e}},__vite__mapDeps([42,0,1,2,3,4,5,6,7,8,32,33,43,44,45,46,47,10,48,49,50,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,34,35,36,37,38,39,40,41,11,51,52]));return n(e,E(t,`docx`))},async exportDoc(e,t){let{markdownDocToDocx:n}=await c(async()=>{let{markdownDocToDocx:e}=await import(`./docx-sXa1Rf41.js`);return{markdownDocToDocx:e}},__vite__mapDeps([42,0,1,2,3,4,5,6,7,8,32,33,43,44,45,46,47,10,48,49,50,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,34,35,36,37,38,39,40,41,11,51,52])),r=E(t,`docx`),i=await D(e),a=await ie(e.container,t.signal),o=new Map([...a,...r.images??new Map]);return M(await w(await n(i,{...r,...t.title===void 0?{}:{title:t.title},themeId:T(e,t),themeRegistry:t.themeRegistry??r.themeRegistry,images:o})),C.docx,S(i,`docx`))}},{id:`pdf`,templateAnnotationHandling:`ignored`,label:`PDF`,mimeType:C.pdf,extensions:[`.pdf`],async importContainer(e,t){let{pdfToContainer:n}=await c(async()=>{let{pdfToContainer:e}=await import(`./pdf-BOjVDlCK.js`);return{pdfToContainer:e}},__vite__mapDeps([53,1,0,2,3,4,5,6,7,8,32,34,49,50,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,33,35,36,37,38,39,40,41,11,51,52]));return n(e,E(t,`pdf`))},async importDoc(e,t){let{pdfToMarkdownDoc:n}=await c(async()=>{let{pdfToMarkdownDoc:e}=await import(`./pdf-BOjVDlCK.js`);return{pdfToMarkdownDoc:e}},__vite__mapDeps([53,1,0,2,3,4,5,6,7,8,32,34,49,50,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,33,35,36,37,38,39,40,41,11,51,52]));return n(e,E(t,`pdf`))},async exportDoc(e,t){let{markdownDocToPdf:n}=await c(async()=>{let{markdownDocToPdf:e}=await import(`./pdf-BOjVDlCK.js`);return{markdownDocToPdf:e}},__vite__mapDeps([53,1,0,2,3,4,5,6,7,8,32,34,49,50,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,33,35,36,37,38,39,40,41,11,51,52])),r=E(t,`pdf`),i=await D(e),a=[];return M(await w(await n(i,{...r,...t.title===void 0?{}:{title:t.title},themeId:T(e,t),themeRegistry:t.themeRegistry??r.themeRegistry,onWarning:e=>a.push(e)})),C.pdf,[...S(i,`pdf`),...a])}},{id:`pptx`,templateAnnotationHandling:`rendered`,label:`PowerPoint (PPTX)`,mimeType:C.pptx,extensions:[`.pptx`],async importContainer(e,t){let{pptxToContainer:n}=await c(async()=>{let{pptxToContainer:e}=await import(`./pptx-BuxyNxQh.js`);return{pptxToContainer:e}},__vite__mapDeps([54,0,1,2,3,4,5,6,7,8,32,33,34,36,43,44,45,46,47,10,48,50,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,35,37,38,39,40,41,11,51,52,55,56]));return n(e,oe(t))},async importDoc(e,t){let{pptxToMarkdownDoc:n}=await c(async()=>{let{pptxToMarkdownDoc:e}=await import(`./pptx-BuxyNxQh.js`);return{pptxToMarkdownDoc:e}},__vite__mapDeps([54,0,1,2,3,4,5,6,7,8,32,33,34,36,43,44,45,46,47,10,48,50,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,35,37,38,39,40,41,11,51,52,55,56]));return n(e,oe(t))},async exportDoc(e,t){let{docToPptx:n}=await c(async()=>{let{docToPptx:e}=await import(`./pptx-BuxyNxQh.js`);return{docToPptx:e}},__vite__mapDeps([54,0,1,2,3,4,5,6,7,8,32,33,34,36,43,44,45,46,47,10,48,50,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,35,37,38,39,40,41,11,51,52,55,56])),r=E(t,`pptx`),i=await D(e),a=await k(e.container,t.signal),o=new Map([...a,...r.images??new Map]),s=[];return M(await w(await n(e.doc,{...r,...t.title===void 0?{}:{title:t.title},themeId:T(e,t),themeRegistry:t.themeRegistry??r.themeRegistry,images:o,onWarning:e=>{s.push(e),r.onWarning?.(e)}})),C.pptx,[...S(i,`pptx`),...s])}},{id:`xlsx`,templateAnnotationHandling:`preserved`,label:`Excel (XLSX)`,mimeType:C.xlsx,extensions:[`.xlsx`],async importContainer(e,t){let{xlsxToContainer:n}=await c(async()=>{let{xlsxToContainer:e}=await import(`./xlsx-DyBGuAO1.js`);return{xlsxToContainer:e}},__vite__mapDeps([57,1,0,2,3,4,5,6,7,8,44,43,58,32,45,59,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,33,34,35,36,37,38,39,40,41,11,46,48]));return n(e,E(t,`xlsx`))},async importDoc(e,t){let{xlsxToMarkdownDoc:n}=await c(async()=>{let{xlsxToMarkdownDoc:e}=await import(`./xlsx-DyBGuAO1.js`);return{xlsxToMarkdownDoc:e}},__vite__mapDeps([57,1,0,2,3,4,5,6,7,8,44,43,58,32,45,59,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,33,34,35,36,37,38,39,40,41,11,46,48]));return n(e,E(t,`xlsx`))},async exportDoc(e,t){let{markdownDocToXlsx:n}=await c(async()=>{let{markdownDocToXlsx:e}=await import(`./xlsx-DyBGuAO1.js`);return{markdownDocToXlsx:e}},__vite__mapDeps([57,1,0,2,3,4,5,6,7,8,44,43,58,32,45,59,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,33,34,35,36,37,38,39,40,41,11,46,48])),{materializeDataReferences:r}=await c(async()=>{let{materializeDataReferences:e}=await import(`./materialize-A34OZGEU-xNNKzytx.js`);return{materializeDataReferences:e}},__vite__mapDeps([60,43,1,44,58,0,2,3,4,5,6,7,8,32,61,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,33,34,35,36,37,38,39,40,41,11,45,59,62,63])),i=[],a=await r(await D(e),e.container,e=>i.push(e)),o=a.children.filter(e=>e.type!==`table`&&e.type!==`heading`).length;return o>0&&i.push(`XLSX export is tables-only; ${o} non-table block(s) were omitted.`),M(await w(await n(a,{...E(t,`xlsx`),...t.title===void 0?{}:{title:t.title},onWarning:e=>i.push(e)})),C.xlsx,i)}},{id:`csv`,templateAnnotationHandling:`ignored`,label:`CSV`,mimeType:C.csv,extensions:[`.csv`],async importContainer(e,t){let{csvToContainer:n}=await c(async()=>{let{csvToContainer:e}=await import(`./csv-62UGQMzZ.js`);return{csvToContainer:e}},__vite__mapDeps([64,58,0,1,2,3,4,5,6,7,8,32,61,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,33,34,35,36,37,38,39,40,41,11]));return n(e,E(t,`csv`))},async importDoc(e,t){let{csvToMarkdownDoc:n}=await c(async()=>{let{csvToMarkdownDoc:e}=await import(`./csv-62UGQMzZ.js`);return{csvToMarkdownDoc:e}},__vite__mapDeps([64,58,0,1,2,3,4,5,6,7,8,32,61,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,33,34,35,36,37,38,39,40,41,11]));return n(e,E(t,`csv`))},async exportDoc(e,t){let{markdownDocToCsv:n}=await c(async()=>{let{markdownDocToCsv:e}=await import(`./csv-62UGQMzZ.js`);return{markdownDocToCsv:e}},__vite__mapDeps([64,58,0,1,2,3,4,5,6,7,8,32,61,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,33,34,35,36,37,38,39,40,41,11])),r=await D(e),i=E(t,`csv`),a=r.children.filter(e=>e.type===`table`).length,o=[];a>1&&i.tableIndex===void 0&&o.push(`Document has ${a} tables; CSV export emitted only the first. Use the csv converter's tableIndex option to select another.`);let s=n(r,i);return M(new TextEncoder().encode(s),C.csv,o)}},{id:`html`,templateAnnotationHandling:`rendered`,label:`HTML (single file)`,mimeType:C.html,extensions:[`.html`,`.htm`],async importDoc(e,t){let{htmlToMarkdownDoc:n}=await c(async()=>{let{htmlToMarkdownDoc:e}=await import(`./html-BGVOMhkv.js`).then(e=>e.t);return{htmlToMarkdownDoc:e}},__vite__mapDeps([65,1,0,2,3,4,5,6,7,8,32,33,44,49,55,10]));return n(e,E(t,`html`))},async exportDoc(e,t){let n=E(t,`html`);if(n.playerScriptPath){let{generateExternalHtml:r}=await c(async()=>{let{generateExternalHtml:e}=await import(`./html-BGVOMhkv.js`).then(e=>e.t);return{generateExternalHtml:e}},__vite__mapDeps([65,1,0,2,3,4,5,6,7,8,32,33,44,49,55,10])),i=r(e.doc,{...n,playerScriptPath:n.playerScriptPath,title:t.title??e.baseName,mode:n.mode??`static`,themeId:T(e,t),themeRegistry:t.themeRegistry??n.themeRegistry});return M(new TextEncoder().encode(i),C.html)}let r=await j(t,`html`),{docToHtml:i}=await c(async()=>{let{docToHtml:e}=await import(`./html-BGVOMhkv.js`).then(e=>e.t);return{docToHtml:e}},__vite__mapDeps([65,1,0,2,3,4,5,6,7,8,32,33,44,49,55,10])),a=await k(e.container,t.signal),o=new Map([...a,...n.images??new Map]),s=i(e.doc,{...n,playerScript:r,images:o,title:t.title??e.baseName,mode:n.mode??`static`,themeId:T(e,t),themeRegistry:t.themeRegistry??n.themeRegistry});return M(new TextEncoder().encode(s),C.html,A(e.doc,`Single-file HTML`))}},{id:`htmlzip`,templateAnnotationHandling:`rendered`,label:`HTML (ZIP archive)`,mimeType:C.zip,extensions:[`.html.zip`],async exportDoc(e,t){let n=await j(t,`htmlzip`),{docToHtmlZip:r}=await c(async()=>{let{docToHtmlZip:e}=await import(`./html-BGVOMhkv.js`).then(e=>e.t);return{docToHtmlZip:e}},__vite__mapDeps([65,1,0,2,3,4,5,6,7,8,32,33,44,49,55,10])),i=E(t,`htmlzip`),a=await k(e.container,t.signal),o=await O(e.container,re,t.signal,!1),s=new Map([...a,...o,...i.images??new Map]);return M(await w(await r(e.doc,{...i,playerScript:n,images:s,title:t.title??e.baseName,mode:i.mode??`static`,themeId:T(e,t),themeRegistry:t.themeRegistry??i.themeRegistry})),C.zip)}},{id:`epub`,templateAnnotationHandling:`ignored`,label:`EPUB`,mimeType:C.epub,extensions:[`.epub`],async exportDoc(e,t){let{markdownDocToEpub:n}=await c(async()=>{let{markdownDocToEpub:e}=await import(`./epub-RopMP0ec.js`);return{markdownDocToEpub:e}},__vite__mapDeps([66,1,0,2,3,4,5,6,7,8,32,33,44,46,49,51,52,55,10])),r=E(t,`epub`),i=await D(e),a=await k(e.container,t.signal),o=new Map([...a,...r.images??new Map]);return M(await w(await n(i,{...r,title:t.title??e.baseName,themeId:T(e,t),themeRegistry:t.themeRegistry??r.themeRegistry,images:o})),C.epub,[...S(i,`epub`),...A(e.doc,`EPUB`)])}},{id:`dbk`,templateAnnotationHandling:`preserved`,label:`Squisq container (DBK)`,mimeType:C.zip,extensions:[`.dbk`,`.zip`],async importContainer(e,t){let{zipToContainer:n}=await c(async()=>{let{zipToContainer:e}=await import(`./container-Ce94efbg.js`);return{zipToContainer:e}},__vite__mapDeps([67,1,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,0,2,3,4,5,6,7,8,32,33,34,35,36,37,38,39,40,41,44,43,11]));return n(e,E(t,`dbk`))},async exportDoc(e,t){let{containerToZip:n}=await c(async()=>{let{containerToZip:e}=await import(`./container-Ce94efbg.js`);return{containerToZip:e}},__vite__mapDeps([67,1,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,0,2,3,4,5,6,7,8,32,33,34,35,36,37,38,39,40,41,44,43,11]));return M(await w(await n(await ae(e,t.signal),E(t,`dbk`))),C.zip)}}]}function N(e){return e.replace(/^\.+/,``).toLowerCase()}function ce(){let e=new Map;return{register(t){e.set(t.id,t)},get(t){return e.get(t)},byExtension(t){let n=N(t);if(n){for(let t of e.values())if(t.extensions.some(e=>N(e)===n))return t}},list(){return[...e.values()]}}}function P(){let e=ce();for(let t of se())e.register(t);return e}function F(e){return e.formatOptions?.md??{}}function I(e){let t=F(e).parse??{};return{...t,signal:e.signal,limits:t.limits??v(e.limits)}}function L(e){let t=F(e).stringify??{};return{...t,signal:e.signal,limits:t.limits??v(e.limits)}}function R(e){if(!e?.aborted)return;if(e.reason!==void 0)throw e.reason;let t=Error(`Document conversion was cancelled.`);throw t.name=`AbortError`,t}function z(e,t){if(e.length<t.length)return!1;for(let n=0;n<t.length;n++)if(e[n]!==t[n])return!1;return!0}var le=[80,75,3,4],ue=[37,80,68,70],de=[`docx`,`pptx`,`xlsx`,`dbk`];function fe(e){let t=de.map(t=>u(e.formatOptions?.[t]??{}));return{signal:e.signal,maxEntries:Math.max(...t.map(e=>e.maxEntries)),maxUncompressedBytes:Math.max(...t.map(e=>e.maxUncompressedBytes)),maxEntryUncompressedBytes:Math.max(...t.map(e=>e.maxEntryUncompressedBytes)),maxCompressionRatio:Math.max(...t.map(e=>e.maxCompressionRatio))}}async function pe(e,t){let n=await d(e,fe(t)).catch(e=>{throw e instanceof f&&e.code!==`invalid-archive`?e:new h(`invalid-input`,`Input is not a readable ZIP archive.`,{cause:e})}),r=n.entries.find(e=>e.path===`[Content_Types].xml`);if(!r)return`dbk`;let i=1024*1024;if((r.declaredSize??0)>i)throw new h(`invalid-input`,`OOXML content-types metadata is too large.`);let a=await n.read(r.path,i);if(!a)return`dbk`;let o=new TextDecoder().decode(a);return o.includes(`wordprocessingml`)?`docx`:o.includes(`presentationml`)?`pptx`:o.includes(`spreadsheetml`)?`xlsx`:`dbk`}async function me(e,t,n,r){if(n.from)return n.from;let i=t?he(t):void 0;if(i){let e=r.byExtension(i);if(e)return e.id}return z(e,ue)?`pdf`:z(e,le)?pe(e,n):`md`}function he(e){let t=e.replace(/\\/g,`/`),n=t.split(`/`).pop()??t,r=n.lastIndexOf(`.`);return r<=0?``:n.slice(r+1).toLowerCase()}function ge(e){let t=e.replace(/\\/g,`/`),n=t.split(`/`).pop()??t,r=n.lastIndexOf(`.`);return r>0?n.slice(0,r):n}async function _e(e,t,n){let r=e.data instanceof Uint8Array?e.data:new Uint8Array(e.data);if(t.limits!==!1&&r.byteLength>_(t.limits).maxInputBytes)throw new h(`invalid-input`,`Input exceeds the ${_(t.limits).maxInputBytes}-byte safety limit.`);let i=r.buffer.slice(r.byteOffset,r.byteOffset+r.byteLength),a=await me(r,e.filename,t,n),o=n.get(a);if(!o)throw new h(`unknown-format`,`Unknown source format "${a}".`,{format:a});if(!o.importContainer&&!o.importDoc)throw new h(`unsupported-input`,`Format "${o.label}" cannot be used as a conversion source.`,{format:a,hint:`This format is export-only.`});let{markdownToDoc:s}=await c(async()=>{let{markdownToDoc:e}=await import(`./doc-Dr5K49bx.js`).then(e=>e.t);return{markdownToDoc:e}},__vite__mapDeps([0,1,2,3,4,5,6,7,8])),{parseMarkdown:l,stringifyMarkdown:u}=await c(async()=>{let{parseMarkdown:e,stringifyMarkdown:t}=await import(`./markdown-ryKA_OmY.js`).then(e=>e.t);return{parseMarkdown:e,stringifyMarkdown:t}},__vite__mapDeps([32,1,2,4,6])),d=[],f,p;if(o.importContainer){p=await o.importContainer(i,t);let e=await p.readDocument();f=e?l(e,I(t)):{type:`document`,children:[]}}else{f=await o.importDoc(i,t);let{MemoryContentContainer:e}=await c(async()=>{let{MemoryContentContainer:e}=await import(`./storage-D8pE2zg0.js`).then(e=>e.t);return{MemoryContentContainer:e}},__vite__mapDeps([11,1,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,0,2,3,4,5,6,7,8,32,33,34,35,36,37,38,39,40,41])),n=new e;await n.writeDocument(u(f,L(t))),p=n}let{assertMarkdownDocumentWithinLimits:m}=await c(async()=>{let{assertMarkdownDocumentWithinLimits:e}=await import(`./markdown-ryKA_OmY.js`).then(e=>e.t);return{assertMarkdownDocumentWithinLimits:e}},__vite__mapDeps([32,1,2,4,6]));m(f,v(t.limits),t.signal);let g=s(f,{autoTemplates:t.autoTemplates});y(g,t.limits,t.signal);let b=e.filename?ge(e.filename):`document`;return{input:{doc:g,markdownDoc:f,container:p,baseName:b},warnings:d}}async function ve(e,t){let{markdownToDoc:n}=await c(async()=>{let{markdownToDoc:e}=await import(`./doc-Dr5K49bx.js`).then(e=>e.t);return{markdownToDoc:e}},__vite__mapDeps([0,1,2,3,4,5,6,7,8])),{parseMarkdown:r}=await c(async()=>{let{parseMarkdown:e}=await import(`./markdown-ryKA_OmY.js`).then(e=>e.t);return{parseMarkdown:e}},__vite__mapDeps([32,1,2,4,6])),{stringifyMarkdown:i}=await c(async()=>{let{stringifyMarkdown:e}=await import(`./markdown-ryKA_OmY.js`).then(e=>e.t);return{stringifyMarkdown:e}},__vite__mapDeps([32,1,2,4,6])),a=typeof e.markdown==`string`?r(e.markdown,I(t)):e.markdown,{assertMarkdownDocumentWithinLimits:o}=await c(async()=>{let{assertMarkdownDocumentWithinLimits:e}=await import(`./markdown-ryKA_OmY.js`).then(e=>e.t);return{assertMarkdownDocumentWithinLimits:e}},__vite__mapDeps([32,1,2,4,6]));o(a,v(t.limits),t.signal);let s=e.container;if(!s){let{MemoryContentContainer:e}=await c(async()=>{let{MemoryContentContainer:e}=await import(`./storage-D8pE2zg0.js`).then(e=>e.t);return{MemoryContentContainer:e}},__vite__mapDeps([11,1,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,0,2,3,4,5,6,7,8,32,33,34,35,36,37,38,39,40,41])),n=new e;await n.writeDocument(i(a,L(t))),s=n}let l=n(a,{autoTemplates:t.autoTemplates});y(l,t.limits,t.signal);let u=e.baseName??`document`;return{input:{doc:l,markdownDoc:a,container:s,baseName:u},warnings:[]}}async function ye(e,t){y(e.doc,t.limits,t.signal);let n=e.container;if(!n){let{MemoryContentContainer:r}=await c(async()=>{let{MemoryContentContainer:e}=await import(`./storage-D8pE2zg0.js`).then(e=>e.t);return{MemoryContentContainer:e}},__vite__mapDeps([11,1,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,0,2,3,4,5,6,7,8,32,33,34,35,36,37,38,39,40,41])),{docToMarkdown:i}=await c(async()=>{let{docToMarkdown:e}=await import(`./doc-Dr5K49bx.js`).then(e=>e.t);return{docToMarkdown:e}},__vite__mapDeps([0,1,2,3,4,5,6,7,8])),{stringifyMarkdown:a}=await c(async()=>{let{stringifyMarkdown:e}=await import(`./markdown-ryKA_OmY.js`).then(e=>e.t);return{stringifyMarkdown:e}},__vite__mapDeps([32,1,2,4,6])),o=new r;await o.writeDocument(a(i(e.doc),L(t))),n=o}let r=e.baseName??`document`;return{input:{doc:e.doc,container:n,baseName:r},warnings:[]}}async function be(e,t,n){switch(e.kind){case`bytes`:return _e(e,t,n);case`markdown`:return ve(e,t);case`doc`:return ye(e,t)}}async function xe(e,t,n,r){let{applyTransform:i,extractDocImages:a}=await c(async()=>{let{applyTransform:e,extractDocImages:t}=await import(`./transform-CmAXy0Ck.js`).then(e=>e.t);return{applyTransform:e,extractDocImages:t}},__vite__mapDeps([68,1,40,2,3,7])),{docToMarkdown:o,markdownToDoc:s}=await c(async()=>{let{docToMarkdown:e,markdownToDoc:t}=await import(`./doc-Dr5K49bx.js`).then(e=>e.t);return{docToMarkdown:e,markdownToDoc:t}},__vite__mapDeps([0,1,2,3,4,5,6,7,8])),l=a(e.doc.blocks),u=i(e.doc,t,{themeId:n,images:l,registry:r});e.doc=u.doc;let d=o(u.doc);return e.markdownDoc=d,s(d,{autoTemplates:!1}).blocks.length<u.doc.blocks.length?[`Transform produced blocks that don’t round-trip to markdown; export may be incomplete.`]:[]}async function Se(e,t,n){R(t.signal);let r=t.registry??P(),i;try{i=await be(e,t,r),R(t.signal)}catch(e){throw R(t.signal),e instanceof h?e:new h(`invalid-input`,e instanceof Error?e.message:String(e),{format:t.from,cause:e})}let{input:a,warnings:o}=i;t.themeId&&!a.doc.themeId&&(a.doc={...a.doc,themeId:t.themeId});try{t.transformStyle&&(o.push(...await xe(a,t.transformStyle,t.themeId??a.doc.themeId,t.transformRegistry)),R(t.signal))}catch(e){throw R(t.signal),e instanceof h?e:new h(`conversion-failed`,e instanceof Error?e.message:String(e),{format:n,cause:e})}let s=Object.freeze([...o]),c={...a};return Object.freeze({async convert(e,n={}){let i=B(r,e),a=Ce(t,n);R(a.signal);let o;try{o=await i.exportDoc({...c},a),R(a.signal)}catch(t){throw R(a.signal),t instanceof h?t:new h(`conversion-failed`,t instanceof Error?t.message:String(t),{format:e,cause:t})}let l=i.extensions[0]?.replace(/^\.+/,``)??e;return{...o,suggestedFilename:`${c.baseName}.${l}`,warnings:[...s,...o.warnings]}}})}function B(e,t){let n=e.get(t);if(!n)throw new h(`unknown-format`,`Unknown target format "${t}".`,{format:t});if(!n.exportDoc)throw new h(`unsupported-output`,`Format "${n.label}" does not support export.`,{format:t,hint:`This format is import-only.`});return n}function Ce(e,t){return{...e,signal:we(e.signal,t.signal),title:t.title??e.title,resolvePlayerScript:t.resolvePlayerScript??e.resolvePlayerScript,formatOptions:t.formatOptions===void 0?e.formatOptions:{...e.formatOptions??{},...t.formatOptions}}}function we(e,t){return e?!t||e===t?e:AbortSignal.any([e,t]):t}async function Te(e,t,n={}){R(n.signal);let r=n.registry??P();return B(r,t),(await Se(e,{...n,registry:r},t)).convert(t)}var Ee=e({OUTSIDE_IN_FORMATS:()=>V,OUTSIDE_IN_UPDATE_FROM_MARKDOWN_KEY:()=>H,chooseOutsideInSource:()=>K,importOutsideInDocument:()=>Ne,isOutsideInMarkdownEditingEnabled:()=>Y,parentPath:()=>$,relativePath:()=>Ie,renderOutsideInDocument:()=>Pe,resolveOutsideInLayout:()=>G,runtimePathForTarget:()=>Fe,supportsOutsideInMarkdownEditing:()=>X,withOutsideInMarkdownEditing:()=>Z,withOutsideInMetadata:()=>q}),V=[`html`,`docx`,`pdf`,`pptx`,`xlsx`,`csv`],H=`squisq-updatefrommarkdown`,De=new Set(V),Oe=/\.(?:csv|tsv|xlsx|parquet)$/i;function U(e){let t=e.replace(/\\/g,`/`).split(`/`).filter(Boolean);if(t.some(e=>e===`.`||e===`..`))throw Error(`Outside-in paths must stay inside the project: ${e}`);return t.join(`/`)}function W(e,t){return e?`${e}/${t}`:t}function ke(e){let t=e.lastIndexOf(`/`);return t<0?e:e.slice(t+1)}function Ae(e){return e.normalize(`NFKD`).replace(/\p{Mark}+/gu,``).toLocaleLowerCase(`en-US`).replace(/[^\p{Letter}\p{Number}]+/gu,`-`).replace(/^-+|-+$/g,``)||`document`}function G(e){let t=U(e),n=t.lastIndexOf(`/`),r=n<0?``:t.slice(0,n),i=n<0?t:t.slice(n+1),a=i.lastIndexOf(`.`);if(a<=0)return null;let o=i.slice(a+1).toLowerCase(),s=o===`htm`?`html`:o;if(!De.has(s))return null;let c=i.slice(0,a),l=`${c}_files`,u=W(r,l),d=`${Ae(c)}.md`,f=W(u,`.original`),p=`original.${s}`;return{targetPath:t,format:s,parentDirectory:r,stem:c,companionName:l,companionDirectory:u,markdownFilename:d,markdownPath:W(u,d),relativeTargetPath:`../${i}`,backupDirectory:f,backupFilename:p,backupPath:W(f,p)}}function K(e,t){let n=U(e.markdownPath),r=t.map(U),i=r.find(e=>e===n);if(i)return i;let a=r.find(e=>e.toLocaleLowerCase(`en-US`)===n.toLocaleLowerCase(`en-US`));if(a)return a;let o=`${e.companionDirectory}/`,s=r.filter(e=>e.startsWith(o)&&!e.slice(o.length).includes(`/`)&&e.toLocaleLowerCase(`en-US`).endsWith(`.md`));return s.length===1?s[0]:null}function q(e,t){return je(a(e,{"squisq-outside-in":1,"squisq-output":t.relativeTargetPath,"squisq-output-format":t.format}),t.format)}function J(e){let t=e.startsWith(`<`)&&e.endsWith(`>`)?e.slice(1,-1):e,n=t;try{n=decodeURIComponent(t)}catch{return e}return!Oe.test(n)||/^(?:[a-z][a-z\d+.-]*:|\/)/i.test(n)?e:n.replace(/\\/g,`/`).split(`/`).map(e=>encodeURIComponent(e)).join(`/`)}function je(e,t){if(t!==`csv`&&t!==`xlsx`)return e;try{let t=o(e),n=!1;for(let e of t.children){let t=e.type===`heading`?e.templateAnnotation?.params:void 0;if(t&&typeof t.src==`string`){let e=t.src,r=J(e);r!==e&&(t.src=r,n=!0)}if(e.type===`paragraph`)for(let t of e.children){if(t.type!==`link`)continue;let e=J(t.url);e!==t.url&&(t.url=e,n=!0)}}return n?s(t):e}catch{return e}}function Me(e){let t=r(e).frontmatter;if(!t)return null;let n=t.indexOf(`
3
+ `);return n<0?null:t.slice(n+1).replace(/\r?\n---(?:\r?\n)?$/,``)}function Y(e){let t=Me(e);return(t===null?null:i(t))?.[H]===!0}function X(e){return e!==`csv`}function Z(e,t,n=!0){return a(q(e,t),{[H]:n})}function Q(e){return e instanceof ArrayBuffer?e:e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength)}async function Ne(e,t,n={}){let r=n.registry??P(),i=r.get(t.format);if(!i||!i.importContainer&&!i.importDoc)throw Error(`${t.format.toUpperCase()} cannot be imported for editing.`);let a=t.format===`xlsx`||t.format===`csv`?{...n.formatOptions,[t.format]:{...n.formatOptions?.[t.format]??{},sourceName:ke(t.targetPath)}}:n.formatOptions,u={...n,registry:r,from:t.format,...a?{formatOptions:a}:{}},d=new l,f=null;if(i.importContainer){d=await i.importContainer(Q(e),u);let t=await d.readDocument();t!==null&&(f=o(t))}if(!f&&i.importDoc&&(f=await i.importDoc(Q(e),u)),!f)throw Error(`The ${t.format.toUpperCase()} file has no editable content.`);let p=[];if((t.format===`docx`||t.format===`xlsx`)&&typeof f.frontmatter?.[`squisq-theme`]!=`string`)try{let[{inferThemeFromFile:r},i]=await Promise.all([c(()=>import(`./infer-LEGOsu64.js`),__vite__mapDeps([69,34,43,1,44,45,70,71,5,3,4,33,72])),c(()=>import(`./doc-Dr5K49bx.js`).then(e=>e.t),__vite__mapDeps([0,1,2,3,4,5,6,7,8]))]),a=await r(Q(e),{format:t.format,nameHint:t.stem,signal:n.signal}),o=i.writeCustomThemesToFrontmatter([a.theme]);o&&(f.frontmatter={...f.frontmatter??{},[i.FRONTMATTER_CUSTOM_THEMES_KEY]:o,"squisq-theme":a.theme.id}),p.push(...a.warnings)}catch(e){if(n.signal?.aborted)throw n.signal.reason??e;p.push(`The ${t.format.toUpperCase()} content was imported, but its Office theme could not be retained: ${e instanceof Error?e.message:String(e)}`)}return{markdown:q(s(f),t),container:d,warnings:p}}async function Pe(e,n,r,i){if(!X(n.format))throw Error(`CSV data sidecar previews are read-only.`);if(!Y(e))throw Error(`Outside-in editing is read-only until ${H}: true is set.`);if(n.format!==`html`)return Te({kind:`markdown`,markdown:e,container:r,baseName:n.stem},n.format,{title:n.stem});if(!i)throw Error(`HTML editing needs a shared Squisq runtime path.`);let a=t(o(e)),s=e=>`${n.companionName}/${e.replace(/^\/+/,``)}`,c=Object.fromEntries([...p(a)].map(e=>[e,s(e)])),l={};for(let e of a.audio.segments)l[e.name]=s(e.src),l[e.src]=s(e.src);let u=m(a,{playerScriptPath:i,imagePathMap:c,audioPathMap:l,title:n.stem,mode:`static`});return{bytes:new TextEncoder().encode(u),mimeType:`text/html`,suggestedFilename:`${n.stem}.html`,warnings:[]}}function Fe(e,t){let n=$(e);for(;;){let e=W(n,`_squisq`);if(t.has(e))return W(e,`squisq-player.js`);if(!n)return`_squisq/squisq-player.js`;n=$(n)}}function $(e){let t=U(e),n=t.lastIndexOf(`/`);return n<0?``:t.slice(0,n)}function Ie(e,t){let n=U(e).split(`/`).filter(Boolean),r=U(t).split(`/`).filter(Boolean),i=0;for(;i<n.length&&i<r.length&&n[i]===r[i];)i++;return[...n.slice(i).map(()=>`..`),...r.slice(i)].join(`/`)||`.`}export{Ie as a,Fe as c,q as d,Ee as i,X as l,Ne as n,Pe as o,Y as r,G as s,K as t,Z as u};