thursday-agent 0.16.0 → 0.17.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 (277) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/build-manifest.json +3 -3
  3. package/.next/prerender-manifest.json +3 -3
  4. package/.next/server/app/_global-error/page.js.nft.json +1 -1
  5. package/.next/server/app/_global-error.html +1 -1
  6. package/.next/server/app/_global-error.rsc +1 -1
  7. package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  8. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  9. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  10. package/.next/server/app/_not-found/page.js.nft.json +1 -1
  11. package/.next/server/app/_not-found.html +1 -1
  12. package/.next/server/app/_not-found.rsc +1 -1
  13. package/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
  14. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  15. package/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  16. package/.next/server/app/api/artifact/route.js +9 -9
  17. package/.next/server/app/api/artifact/route.js.nft.json +1 -1
  18. package/.next/server/app/api/bot/memory/files/route.js +3 -3
  19. package/.next/server/app/api/bot/memory/files/route.js.nft.json +1 -1
  20. package/.next/server/app/api/bot/memory/route.js +8 -8
  21. package/.next/server/app/api/bot/memory/route.js.nft.json +1 -1
  22. package/.next/server/app/api/bot/route.js +8 -8
  23. package/.next/server/app/api/bot/route.js.nft.json +1 -1
  24. package/.next/server/app/api/bot/thread/[id]/route.js +3 -3
  25. package/.next/server/app/api/bot/thread/[id]/route.js.nft.json +1 -1
  26. package/.next/server/app/api/bot/thread/route.js +3 -3
  27. package/.next/server/app/api/bot/thread/route.js.nft.json +1 -1
  28. package/.next/server/app/api/config/route.js.nft.json +1 -1
  29. package/.next/server/app/api/events/route.js.nft.json +1 -1
  30. package/.next/server/app/api/favicon/[host]/route.js.nft.json +1 -1
  31. package/.next/server/app/api/file/[...path]/route.js +4 -4
  32. package/.next/server/app/api/file/[...path]/route.js.nft.json +1 -1
  33. package/.next/server/app/api/llm-model/catalog/route.js.nft.json +1 -1
  34. package/.next/server/app/api/llm-model/credits/route.js.nft.json +1 -1
  35. package/.next/server/app/api/llm-model/route.js.nft.json +1 -1
  36. package/.next/server/app/api/llm-model/subscription/route.js.nft.json +1 -1
  37. package/.next/server/app/api/mcp/[name]/route.js.nft.json +1 -1
  38. package/.next/server/app/api/mcp/oauth/callback/route.js.nft.json +1 -1
  39. package/.next/server/app/api/mcp/route.js.nft.json +1 -1
  40. package/.next/server/app/api/mcp/tools/route.js.nft.json +1 -1
  41. package/.next/server/app/api/memory/edit/route.js +11 -11
  42. package/.next/server/app/api/memory/edit/route.js.nft.json +1 -1
  43. package/.next/server/app/api/memory/route.js.nft.json +1 -1
  44. package/.next/server/app/api/reach/route.js +11 -11
  45. package/.next/server/app/api/reach/route.js.nft.json +1 -1
  46. package/.next/server/app/api/routine/route.js +7 -7
  47. package/.next/server/app/api/routine/route.js.nft.json +1 -1
  48. package/.next/server/app/api/signins/route.js +5 -5
  49. package/.next/server/app/api/signins/route.js.nft.json +1 -1
  50. package/.next/server/app/api/skills/[source]/[name]/route.js +7 -7
  51. package/.next/server/app/api/skills/[source]/[name]/route.js.nft.json +1 -1
  52. package/.next/server/app/api/skills/route.js +7 -7
  53. package/.next/server/app/api/skills/route.js.nft.json +1 -1
  54. package/.next/server/app/api/thursday/call/route.js +5 -5
  55. package/.next/server/app/api/thursday/call/route.js.nft.json +1 -1
  56. package/.next/server/app/api/thursday/settings/route.js +5 -5
  57. package/.next/server/app/api/thursday/settings/route.js.nft.json +1 -1
  58. package/.next/server/app/api/thursday/text/route.js +13 -13
  59. package/.next/server/app/api/thursday/text/route.js.nft.json +1 -1
  60. package/.next/server/app/api/thursday/tool-call/route.js +12 -12
  61. package/.next/server/app/api/thursday/tool-call/route.js.nft.json +1 -1
  62. package/.next/server/app/api/workspace/files/route.js +8 -8
  63. package/.next/server/app/api/workspace/files/route.js.nft.json +1 -1
  64. package/.next/server/app/api/workspace/route.js +9 -9
  65. package/.next/server/app/api/workspace/route.js.nft.json +1 -1
  66. package/.next/server/app/artifact/[...path]/page/server-reference-manifest.json +3 -3
  67. package/.next/server/app/artifact/[...path]/page.js +4 -4
  68. package/.next/server/app/artifact/[...path]/page.js.nft.json +1 -1
  69. package/.next/server/app/artifact/[...path]/page_client-reference-manifest.js +1 -1
  70. package/.next/server/app/favicon.ico/route.js.nft.json +1 -1
  71. package/.next/server/app/manifest.webmanifest/route.js.nft.json +1 -1
  72. package/.next/server/app/page/server-reference-manifest.json +60 -60
  73. package/.next/server/app/page.js +5 -5
  74. package/.next/server/app/page.js.nft.json +1 -1
  75. package/.next/server/app/page_client-reference-manifest.js +1 -1
  76. package/.next/server/chunks/[root-of-the-server]__00qyw01._.js +1 -1
  77. package/.next/server/chunks/[root-of-the-server]__01ypm_z._.js +3 -0
  78. package/.next/server/chunks/[root-of-the-server]__021dkui._.js +3 -0
  79. package/.next/server/chunks/{[root-of-the-server]__18e65_-._.js → [root-of-the-server]__03xamry._.js} +2 -2
  80. package/.next/server/chunks/[root-of-the-server]__05dp5tr._.js +1 -1
  81. package/.next/server/chunks/[root-of-the-server]__09gdscj._.js +7 -0
  82. package/.next/server/chunks/{[root-of-the-server]__10_7vqz._.js → [root-of-the-server]__0b36yfw._.js} +1 -1
  83. package/.next/server/chunks/{[root-of-the-server]__1gamvcz._.js → [root-of-the-server]__0jzwdg-._.js} +2 -2
  84. package/.next/server/chunks/[root-of-the-server]__0mrk2it._.js +1 -1
  85. package/.next/server/chunks/[root-of-the-server]__0nmust6._.js +5 -0
  86. package/.next/server/chunks/[root-of-the-server]__0svzjwa._.js +7 -0
  87. package/.next/server/chunks/{[root-of-the-server]__16yw3mb._.js → [root-of-the-server]__12m24xl._.js} +1 -1
  88. package/.next/server/chunks/{[root-of-the-server]__1zrwxis._.js → [root-of-the-server]__12tahb4._.js} +1 -1
  89. package/.next/server/chunks/{[root-of-the-server]__1ep-pao._.js → [root-of-the-server]__1_h4hf9._.js} +4 -4
  90. package/.next/server/chunks/{[root-of-the-server]__1-tdj60._.js → [root-of-the-server]__1de1o6m._.js} +2 -2
  91. package/.next/server/chunks/{[root-of-the-server]__1voqqyc._.js → [root-of-the-server]__1ignh6-._.js} +1 -1
  92. package/.next/server/chunks/[root-of-the-server]__1t02-1p._.js +3 -0
  93. package/.next/server/chunks/[root-of-the-server]__1ygplx1._.js +1 -1
  94. package/.next/server/chunks/{[root-of-the-server]__11g20j-._.js → [root-of-the-server]__1yl5l25._.js} +1 -1
  95. package/.next/server/chunks/{[root-of-the-server]__1mbd2w_._.js → [root-of-the-server]__208vmyf._.js} +1 -1
  96. package/.next/server/chunks/{_1mfu9a3._.js → _02lipqs._.js} +1 -1
  97. package/.next/server/chunks/_05sa7xl._.js +1 -1
  98. package/.next/server/chunks/{_1rg5bfd._.js → _074f2ts._.js} +1 -1
  99. package/.next/server/chunks/_07nxi75._.js +3 -3
  100. package/.next/server/chunks/_08btiir._.js +7 -0
  101. package/.next/server/chunks/_0caua_s._.js +1 -1
  102. package/.next/server/chunks/{_0qoush_._.js → _0gt6cbj._.js} +1 -1
  103. package/.next/server/chunks/_0xygcxs._.js +3 -3
  104. package/.next/server/chunks/{_09c4we8._.js → _17i1lt2._.js} +1 -1
  105. package/.next/server/chunks/_19kea1l._.js +9 -9
  106. package/.next/server/chunks/_1gn2r2q._.js +3 -3
  107. package/.next/server/chunks/{_03niwml._.js → _1ntwp1s._.js} +1 -1
  108. package/.next/server/chunks/_1q6e56i._.js +3 -3
  109. package/.next/server/chunks/{_02fn1o3._.js → _1tkzgtm._.js} +1 -1
  110. package/.next/server/chunks/_1wl2g8_._.js +2 -2
  111. package/.next/server/chunks/{_1w6uf9k._.js → _1y3mnz4._.js} +1 -1
  112. package/.next/server/chunks/features_workspace_workspace_ts_13h82gv._.js +4 -4
  113. package/.next/server/chunks/features_workspace_workspace_ts_1iyjroj._.js +4 -4
  114. package/.next/server/chunks/{node_modules_consola_dist_chunks_prompt_mjs_0cux6zt._.js → node_modules_consola_dist_chunks_prompt_mjs_04oxl25._.js} +1 -1
  115. package/.next/server/chunks/{node_modules_consola_dist_chunks_prompt_mjs_0w32bqh._.js → node_modules_consola_dist_chunks_prompt_mjs_0g87zst._.js} +1 -1
  116. package/.next/server/chunks/{node_modules_consola_dist_chunks_prompt_mjs_1clmnaj._.js → node_modules_consola_dist_chunks_prompt_mjs_1341cnf._.js} +1 -1
  117. package/.next/server/chunks/ssr/{[root-of-the-server]__02jdtqa._.js → [root-of-the-server]__07660xu._.js} +2 -2
  118. package/.next/server/chunks/ssr/{[root-of-the-server]__0rnjkw2._.js → [root-of-the-server]__149x25m._.js} +2 -2
  119. package/.next/server/chunks/ssr/[root-of-the-server]__17h1ggo._.js +1 -1
  120. package/.next/server/chunks/ssr/[root-of-the-server]__19s8qyj._.js +3 -0
  121. package/.next/server/chunks/ssr/[root-of-the-server]__1jyeu61._.js +1 -1
  122. package/.next/server/chunks/ssr/_088vzgn._.js +3 -0
  123. package/.next/server/chunks/ssr/{_0wupyvd._.js → _0_vnw9v._.js} +2 -2
  124. package/.next/server/chunks/ssr/{_1u5vsy-._.js → _0aeknva._.js} +2 -2
  125. package/.next/server/chunks/ssr/_0fo4552._.js +3 -3
  126. package/.next/server/chunks/ssr/{_0-ou1b0._.js → _0n2scfq._.js} +2 -2
  127. package/.next/server/chunks/ssr/_0o_o9ji._.js +3 -0
  128. package/.next/server/chunks/ssr/_0qne8xs._.js +3 -0
  129. package/.next/server/chunks/ssr/_0r0g9ki._.js +1 -1
  130. package/.next/server/chunks/ssr/_0v9r8g2._.js +3 -0
  131. package/.next/server/chunks/ssr/_0x8ophf._.js +1 -1
  132. package/.next/server/chunks/ssr/{_0ncuqct._.js → _0ztbn5q._.js} +2 -2
  133. package/.next/server/chunks/ssr/{_0w8r7o7._.js → _1-41lck._.js} +2 -2
  134. package/.next/server/chunks/ssr/{_10fwcz_._.js → _14dfh7a._.js} +2 -2
  135. package/.next/server/chunks/ssr/{_1f6s34p._.js → _15m5ctz._.js} +2 -2
  136. package/.next/server/chunks/ssr/{_11pnnvd._.js → _18-e7zi._.js} +2 -2
  137. package/.next/server/chunks/ssr/{_0y28gl3._.js → _1c5iqz1._.js} +3 -3
  138. package/.next/server/chunks/ssr/{_1dqaksc._.js → _1hbjh6n._.js} +2 -2
  139. package/.next/server/chunks/ssr/_1neoj22._.js +1 -1
  140. package/.next/server/chunks/ssr/{_1k0efi3._.js → _1sttj8x._.js} +2 -2
  141. package/.next/server/chunks/ssr/_1uij_rj._.js +1 -1
  142. package/.next/server/chunks/ssr/_1umbr78._.js +1 -1
  143. package/.next/server/chunks/ssr/{_17ble8k._.js → _1vtgiou._.js} +3 -3
  144. package/.next/server/chunks/ssr/_1w9w1ok._.js +1 -1
  145. package/.next/server/chunks/ssr/{_1z586yw._.js → _1z6pirx._.js} +2 -2
  146. package/.next/server/chunks/ssr/features_0796o8r._.js +1 -1
  147. package/.next/server/chunks/ssr/features_bot_1knyan7._.js +3 -0
  148. package/.next/server/chunks/ssr/features_bot_1kr0_m-._.js +3 -0
  149. package/.next/server/chunks/ssr/{features_config_11dpa7r._.js → features_config_0n0zu89._.js} +3 -3
  150. package/.next/server/chunks/ssr/features_connectors_components_mcp-setting_tsx_0jmbgvp._.js +1 -1
  151. package/.next/server/chunks/ssr/features_memory_components_memory-setting_tsx_0oa43sw._.js +1 -1
  152. package/.next/server/chunks/ssr/features_routine_components_routine-setting_tsx_055fknz._.js +1 -1
  153. package/.next/server/chunks/ssr/features_workspace_workspace_ts_1wc7_u_._.js +4 -4
  154. package/.next/server/chunks/ssr/{node_modules_1r5o-bo._.js → node_modules_00h1t1j._.js} +1 -1
  155. package/.next/server/chunks/ssr/{node_modules_1o9n7_n._.js → node_modules_02ficyi._.js} +1 -1
  156. package/.next/server/chunks/ssr/{node_modules_0u24mg0._.js → node_modules_03q71_j._.js} +1 -1
  157. package/.next/server/chunks/ssr/{node_modules_138kcrz._.js → node_modules_03uejh6._.js} +1 -1
  158. package/.next/server/chunks/ssr/{node_modules_0x_2io2._.js → node_modules_06grs09._.js} +1 -1
  159. package/.next/server/chunks/ssr/{node_modules_0n1js5k._.js → node_modules_07mo9rn._.js} +1 -1
  160. package/.next/server/chunks/ssr/{node_modules_0bas34k._.js → node_modules_09e8kz_._.js} +1 -1
  161. package/.next/server/chunks/ssr/{node_modules_1dzye0n._.js → node_modules_09ikzel._.js} +1 -1
  162. package/.next/server/chunks/ssr/{node_modules_18yn_bs._.js → node_modules_0_d_7gq._.js} +1 -1
  163. package/.next/server/chunks/ssr/{node_modules_0ka8te1._.js → node_modules_0_p8w7p._.js} +1 -1
  164. package/.next/server/chunks/ssr/{node_modules_0mark4f._.js → node_modules_0f5bmkb._.js} +1 -1
  165. package/.next/server/chunks/ssr/{node_modules_0sdjzae._.js → node_modules_0kwie-o._.js} +1 -1
  166. package/.next/server/chunks/ssr/{node_modules_1ozyial._.js → node_modules_0r-9e4n._.js} +1 -1
  167. package/.next/server/chunks/ssr/{node_modules_156m1qh._.js → node_modules_0u_8z64._.js} +1 -1
  168. package/.next/server/chunks/ssr/{node_modules_0-ew8f8._.js → node_modules_0zf3wuu._.js} +1 -1
  169. package/.next/server/chunks/ssr/{node_modules_1xua-g1._.js → node_modules_1-7fc7h._.js} +1 -1
  170. package/.next/server/chunks/ssr/{node_modules_0ld7p-1._.js → node_modules_142z3o5._.js} +1 -1
  171. package/.next/server/chunks/ssr/{node_modules_0-8r9yw._.js → node_modules_180l3i0._.js} +1 -1
  172. package/.next/server/chunks/ssr/{node_modules_1tj7_9z._.js → node_modules_197vh1s._.js} +1 -1
  173. package/.next/server/chunks/ssr/{node_modules_0y5uubt._.js → node_modules_1_n9o9s._.js} +1 -1
  174. package/.next/server/chunks/ssr/{node_modules_0etz1i0._.js → node_modules_1fw32pg._.js} +1 -1
  175. package/.next/server/chunks/ssr/{node_modules_0bbwe-u._.js → node_modules_1hefp6h._.js} +1 -1
  176. package/.next/server/chunks/ssr/{node_modules_097cl9f._.js → node_modules_1irot3r._.js} +1 -1
  177. package/.next/server/chunks/ssr/{node_modules_0uibk9z._.js → node_modules_1om2itc._.js} +1 -1
  178. package/.next/server/chunks/ssr/{node_modules_1zkzksd._.js → node_modules_1ubln7w._.js} +1 -1
  179. package/.next/server/chunks/ssr/{node_modules_02uwbwp._.js → node_modules_1wyhtw9._.js} +1 -1
  180. package/.next/server/chunks/ssr/{node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_133hjui._.js → node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_0aczkbn._.js} +1 -1
  181. package/.next/server/chunks/ssr/{node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_1b3vwd3._.js → node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_0ah684s._.js} +1 -1
  182. package/.next/server/middleware-build-manifest.js +3 -3
  183. package/.next/server/pages/404.html +1 -1
  184. package/.next/server/pages/500.html +1 -1
  185. package/.next/server/server-reference-manifest.js +1 -1
  186. package/.next/server/server-reference-manifest.json +61 -61
  187. package/.next/static/chunks/{1ub9obhgfm4jl.js → 024plctckvq-1.js} +1 -1
  188. package/.next/static/chunks/04toe_3nqfjqt.js +1 -0
  189. package/.next/static/chunks/{0609ejkwuy4sf.js → 0_b_bi2pobasx.js} +2 -2
  190. package/.next/static/chunks/{3ro66d9dc70bc.js → 0dfvwgnyrp8qt.js} +1 -1
  191. package/.next/static/chunks/{314szf8yer-3n.js → 0f47nnshdlucs.js} +1 -1
  192. package/.next/static/chunks/0sowxe4nnl5qu.js +1 -0
  193. package/.next/static/chunks/{07vcuxousbmy1.js → 0sv142q1yrva2.js} +1 -1
  194. package/.next/static/chunks/{0q4ws7qd21chx.js → 0tp868040z9nn.js} +2 -2
  195. package/.next/static/chunks/{0unonxbajyknw.js → 1-63yde5eaz7i.js} +1 -1
  196. package/.next/static/chunks/14qitm0kwsb6g.js +15 -0
  197. package/.next/static/chunks/{2xjr5b-yk_h3o.js → 1bgvxd3xny53w.js} +1 -1
  198. package/.next/static/chunks/{245_cp14iz637.js → 1cyrrz4q871aj.js} +1 -1
  199. package/.next/static/chunks/1st3b0c9vhxg3.js +1 -0
  200. package/.next/static/chunks/{39miwvg4k-b2d.js → 1wbqaidq7vc3_.js} +1 -1
  201. package/.next/static/chunks/{0cl_fgkphk1oz.js → 28sxb_k460e9h.js} +1 -1
  202. package/.next/static/chunks/{3j-l8un0d77v7.js → 2v6e_9p95o2e3.js} +1 -1
  203. package/.next/static/chunks/{23tx-2paw9qa6.js → 3-qp777vtfglj.js} +1 -1
  204. package/.next/static/chunks/{2jbjyazqfqyoh.js → 33ekkscpcq-z1.js} +1 -1
  205. package/.next/static/chunks/388l-zszwa_jf.js +1 -0
  206. package/.next/static/chunks/{3vwjs5kq11417.js → 38edd4rpcbvzp.js} +1 -1
  207. package/.next/static/chunks/3bwrvpjk95_x4.js +1 -0
  208. package/.next/static/chunks/{42m371fn687r5.js → 3itdg6t243u6f.js} +1 -1
  209. package/.next/static/chunks/{2oa4gpkzjtpni.js → 44vre0f7xqsh-.js} +1 -1
  210. package/README.md +12 -12
  211. package/guide/bots.md +48 -8
  212. package/guide/calls.md +13 -12
  213. package/guide/setup.md +4 -2
  214. package/package.json +1 -1
  215. package/public/sounds/NOTICE +3 -0
  216. package/public/sounds/opening-land.ogg +0 -0
  217. package/public/sounds/opening-rise.ogg +0 -0
  218. package/public/sounds/opening-step-1.ogg +0 -0
  219. package/public/sounds/opening-step-2.ogg +0 -0
  220. package/public/sounds/opening-step-3.ogg +0 -0
  221. package/skills/README.md +3 -0
  222. package/skills/artifact/SKILL.md +6 -5
  223. package/skills/artifact/references/book.md +22 -8
  224. package/skills/artifact/references/deck.md +4 -2
  225. package/skills/artifact/references/document.md +9 -0
  226. package/skills/artifact/references/sheet.md +108 -0
  227. package/skills/artifact/runtime/book/book.css +75 -0
  228. package/skills/artifact/runtime/book/book.html +6 -3
  229. package/skills/artifact/runtime/book/book.js +21 -0
  230. package/skills/artifact/runtime/canvas/canvas.css +1 -1
  231. package/skills/artifact/runtime/canvas/canvas.js +11 -1
  232. package/skills/artifact/runtime/deck/deck.css +164 -1
  233. package/skills/artifact/runtime/deck/deck.js +76 -1
  234. package/skills/artifact/runtime/document/docx.js +631 -0
  235. package/skills/artifact/runtime/document/markdown.mjs +58 -2
  236. package/skills/artifact/runtime/document/quick.css +66 -0
  237. package/skills/artifact/runtime/document/quick.html +1 -0
  238. package/skills/artifact/runtime/document/quick.js +154 -0
  239. package/skills/artifact/runtime/document/word.mjs +65 -0
  240. package/skills/artifact/runtime/sheet/format.mjs +385 -0
  241. package/skills/artifact/runtime/sheet/formula.mjs +755 -0
  242. package/skills/artifact/runtime/sheet/sheet.css +499 -0
  243. package/skills/artifact/runtime/sheet/sheet.html +102 -0
  244. package/skills/artifact/runtime/sheet/sheet.js +1361 -0
  245. package/skills/artifact/runtime/sheet/xlsx.mjs +320 -0
  246. package/skills/artifact/runtime/shell/head.html +1 -1
  247. package/skills/artifact/runtime/shell/shell.css +3 -0
  248. package/skills/artifact/runtime/shell/wear.mjs +47 -1
  249. package/skills/artifact/runtime/vendor/fflate.LICENSE.md +23 -0
  250. package/skills/artifact/runtime/vendor/fflate.mjs +2710 -0
  251. package/skills/artifact/scripts/book.mjs +141 -5
  252. package/skills/artifact/scripts/chart.mjs +229 -11
  253. package/skills/artifact/scripts/document.mjs +29 -2
  254. package/skills/artifact/scripts/spreadsheet.mjs +1068 -0
  255. package/skills/data-report/SKILL.md +8 -1
  256. package/.next/server/chunks/[root-of-the-server]__0aijj66._.js +0 -3
  257. package/.next/server/chunks/[root-of-the-server]__0tvoct-._.js +0 -3
  258. package/.next/server/chunks/[root-of-the-server]__118qjk_._.js +0 -7
  259. package/.next/server/chunks/[root-of-the-server]__1b8tp42._.js +0 -5
  260. package/.next/server/chunks/[root-of-the-server]__1gzcbda._.js +0 -3
  261. package/.next/server/chunks/[root-of-the-server]__1qcn1ti._.js +0 -7
  262. package/.next/server/chunks/_0xx3ryc._.js +0 -7
  263. package/.next/server/chunks/ssr/[root-of-the-server]__1y5_1cv._.js +0 -3
  264. package/.next/server/chunks/ssr/_0l1-xc6._.js +0 -3
  265. package/.next/server/chunks/ssr/_1g48r6t._.js +0 -3
  266. package/.next/server/chunks/ssr/features_bot_1k25jdg._.js +0 -3
  267. package/.next/server/chunks/ssr/features_bot_1s_-2vj._.js +0 -3
  268. package/.next/server/chunks/ssr/lib_utils_ts_0_f1xvm._.js +0 -3
  269. package/.next/static/chunks/00d54fcfm-lko.js +0 -1
  270. package/.next/static/chunks/0gjlsu6vrfzod.js +0 -1
  271. package/.next/static/chunks/17yqt1p_svv13.js +0 -1
  272. package/.next/static/chunks/203pbwecfs3tm.js +0 -1
  273. package/.next/static/chunks/3ghvoe_mlljzs.js +0 -15
  274. package/.next/static/chunks/3gn7dubb4-pwy.js +0 -1
  275. /package/.next/static/{RtLRT9EEaGn-OqwpMFdYg → VtbCMn-0G969p8QJsWdGv}/_buildManifest.js +0 -0
  276. /package/.next/static/{RtLRT9EEaGn-OqwpMFdYg → VtbCMn-0G969p8QJsWdGv}/_clientMiddlewareManifest.js +0 -0
  277. /package/.next/static/{RtLRT9EEaGn-OqwpMFdYg → VtbCMn-0G969p8QJsWdGv}/_ssgManifest.js +0 -0
@@ -0,0 +1,499 @@
1
+ /* A sheet: the grid fills the window under the page's head, with a formula line over it and
2
+ the sheets' tabs and the picked cells' sum under it. Colours are the shell's, so it reads in
3
+ light and dark alike. */
4
+ html,
5
+ body {
6
+ height: 100%;
7
+ }
8
+ body {
9
+ display: flex;
10
+ flex-direction: column;
11
+ margin: 0;
12
+ overflow: hidden;
13
+ background: var(--sh-paper);
14
+ color: var(--sh-ink);
15
+ font-family: var(--sh-font);
16
+ }
17
+
18
+ .ss-bar {
19
+ display: flex;
20
+ flex: none;
21
+ align-items: stretch;
22
+ height: 32px;
23
+ border-bottom: 1px solid var(--sh-line);
24
+ font-size: 13px;
25
+ }
26
+ .ss-ref {
27
+ display: flex;
28
+ align-items: center;
29
+ justify-content: center;
30
+ width: 76px;
31
+ border-right: 1px solid var(--sh-line);
32
+ color: var(--sh-ink-2);
33
+ font-weight: 600;
34
+ font-variant-numeric: tabular-nums;
35
+ }
36
+ .ss-fx {
37
+ display: flex;
38
+ align-items: center;
39
+ padding: 0 10px;
40
+ color: var(--sh-ink-3);
41
+ font-family: Georgia, serif;
42
+ font-style: italic;
43
+ }
44
+ .ss-formula {
45
+ flex: 1;
46
+ min-width: 0;
47
+ height: 100%;
48
+ margin: 0;
49
+ padding: 0;
50
+ border: 0;
51
+ background: transparent;
52
+ color: var(--sh-ink);
53
+ font-family: ui-monospace, "SF Mono", Menlo, monospace;
54
+ font-size: 12.5px;
55
+ text-overflow: ellipsis;
56
+ outline: none;
57
+ }
58
+
59
+ .ss-grid {
60
+ position: relative;
61
+ flex: 1;
62
+ min-height: 0;
63
+ overflow: auto;
64
+ outline: none;
65
+ }
66
+ .ss-grid table {
67
+ border-collapse: separate;
68
+ border-spacing: 0;
69
+ table-layout: fixed;
70
+ font-size: 13px;
71
+ }
72
+ .ss-grid :is(th, td) {
73
+ height: 26px;
74
+ box-sizing: border-box;
75
+ padding: 0 8px;
76
+ border-right: 1px solid var(--sh-line);
77
+ border-bottom: 1px solid var(--sh-line);
78
+ overflow: hidden;
79
+ white-space: nowrap;
80
+ text-overflow: ellipsis;
81
+ cursor: cell;
82
+ user-select: none;
83
+ }
84
+ .ss-grid td {
85
+ background: var(--sh-paper);
86
+ }
87
+ .ss-grid td.num {
88
+ text-align: right;
89
+ font-variant-numeric: tabular-nums;
90
+ }
91
+ .ss-grid td.err {
92
+ color: var(--sh-bad);
93
+ }
94
+ /* Column letters and row numbers stay in view; the header row stays under the letters */
95
+ .ss-grid thead th {
96
+ position: sticky;
97
+ z-index: 2;
98
+ background: var(--sh-soft);
99
+ }
100
+ .ss-grid .ss-letters th {
101
+ top: 0;
102
+ color: var(--sh-ink-3);
103
+ font-size: 11px;
104
+ font-weight: 500;
105
+ text-align: center;
106
+ }
107
+ .ss-grid .ss-names th {
108
+ top: 26px;
109
+ color: var(--sh-ink);
110
+ font-weight: 650;
111
+ text-align: left;
112
+ }
113
+ .ss-grid .ss-names th.num {
114
+ text-align: right;
115
+ }
116
+ .ss-grid .ss-row {
117
+ position: sticky;
118
+ left: 0;
119
+ z-index: 1;
120
+ width: 48px;
121
+ padding: 0;
122
+ background: var(--sh-soft);
123
+ color: var(--sh-ink-3);
124
+ font-size: 11px;
125
+ font-weight: 500;
126
+ text-align: center;
127
+ }
128
+ .ss-grid thead .ss-row {
129
+ z-index: 3;
130
+ text-align: center;
131
+ }
132
+ .ss-grid tfoot td,
133
+ .ss-grid tfoot th {
134
+ position: sticky;
135
+ bottom: 0;
136
+ z-index: 1;
137
+ border-top: 1px solid var(--sh-ink-3);
138
+ background: var(--sh-soft);
139
+ font-weight: 650;
140
+ }
141
+ .ss-grid tfoot .ss-row {
142
+ z-index: 3;
143
+ }
144
+ /* The column's own button: sort and filter */
145
+ .ss-name {
146
+ display: flex;
147
+ align-items: center;
148
+ gap: 6px;
149
+ }
150
+ .ss-names th.num .ss-name {
151
+ flex-direction: row-reverse;
152
+ }
153
+ .ss-name span {
154
+ min-width: 0;
155
+ overflow: hidden;
156
+ text-overflow: ellipsis;
157
+ }
158
+ .ss-col {
159
+ flex: none;
160
+ display: grid;
161
+ place-items: center;
162
+ width: 20px;
163
+ height: 20px;
164
+ margin: 0 -4px;
165
+ padding: 0;
166
+ border: 0;
167
+ border-radius: 5px;
168
+ background: transparent;
169
+ color: var(--sh-ink-3);
170
+ cursor: pointer;
171
+ }
172
+ .ss-col:hover,
173
+ .ss-col[aria-expanded="true"] {
174
+ background: var(--sh-sunk);
175
+ color: var(--sh-ink);
176
+ }
177
+ .ss-col.on {
178
+ color: var(--sh-brand);
179
+ }
180
+ .ss-col svg {
181
+ width: 13px;
182
+ height: 13px;
183
+ fill: none;
184
+ stroke: currentColor;
185
+ stroke-width: 2;
186
+ stroke-linecap: round;
187
+ stroke-linejoin: round;
188
+ }
189
+
190
+ /* What is picked: a wash over the range, a ring on the cell the formula line shows */
191
+ .ss-grid .in {
192
+ background: var(--sh-brand-soft);
193
+ }
194
+ .ss-grid .at {
195
+ box-shadow: inset 0 0 0 2px var(--sh-brand);
196
+ }
197
+ /* A cell worked out by a formula, faintly; the cells the picked formula names, each reference in
198
+ its own colour, edged where the range ends (sheet.js showRefs) */
199
+ .ss-grid td.fx:not(.in) {
200
+ background: color-mix(in srgb, var(--sh-brand) 5%, var(--sh-paper));
201
+ }
202
+ .ss-grid td[data-ref],
203
+ .ss-grid th[data-ref] {
204
+ background: color-mix(in srgb, var(--ref) 12%, var(--sh-paper));
205
+ box-shadow:
206
+ inset 0 var(--rt, 0) 0 0 var(--ref),
207
+ inset calc(-1 * var(--rr, 0px)) 0 0 0 var(--ref),
208
+ inset 0 calc(-1 * var(--rb, 0px)) 0 0 var(--ref),
209
+ inset var(--rl, 0) 0 0 0 var(--ref);
210
+ }
211
+ .ss-grid .ss-row.in,
212
+ .ss-grid .ss-letters th.in {
213
+ background: color-mix(in srgb, var(--sh-brand) 16%, var(--sh-soft));
214
+ color: var(--sh-brand);
215
+ }
216
+ .ss-more {
217
+ margin: 0;
218
+ padding: 10px 14px;
219
+ color: var(--sh-ink-3);
220
+ font-size: 12px;
221
+ }
222
+
223
+ .ss-foot {
224
+ display: flex;
225
+ flex: none;
226
+ align-items: stretch;
227
+ height: 36px;
228
+ border-top: 1px solid var(--sh-line);
229
+ background: var(--sh-soft);
230
+ font-size: 13px;
231
+ }
232
+ .ss-tabs {
233
+ display: flex;
234
+ min-width: 0;
235
+ overflow-x: auto;
236
+ }
237
+ .ss-tabs button {
238
+ flex: none;
239
+ padding: 0 16px;
240
+ border: 0;
241
+ border-right: 1px solid var(--sh-line);
242
+ background: transparent;
243
+ color: var(--sh-ink-2);
244
+ font: inherit;
245
+ cursor: pointer;
246
+ }
247
+ .ss-tabs button[aria-selected="true"] {
248
+ background: var(--sh-paper);
249
+ color: var(--sh-ink);
250
+ font-weight: 650;
251
+ box-shadow: inset 0 -2px 0 var(--sh-ink);
252
+ }
253
+ .ss-gap {
254
+ flex: 1;
255
+ }
256
+ .ss-stat {
257
+ display: flex;
258
+ align-items: center;
259
+ gap: 16px;
260
+ padding: 0 14px;
261
+ color: var(--sh-ink-2);
262
+ font-variant-numeric: tabular-nums;
263
+ white-space: nowrap;
264
+ }
265
+ .ss-stat b {
266
+ color: var(--sh-ink);
267
+ font-weight: 650;
268
+ }
269
+
270
+ .ss-menu {
271
+ position: fixed;
272
+ z-index: 20;
273
+ display: flex;
274
+ flex-direction: column;
275
+ width: 240px;
276
+ max-height: min(420px, 70vh);
277
+ padding: 6px;
278
+ border: 1px solid var(--sh-line);
279
+ border-radius: var(--sh-radius);
280
+ background: var(--sh-paper);
281
+ box-shadow: var(--sh-shadow);
282
+ font-size: 13px;
283
+ }
284
+ .ss-menu[hidden] {
285
+ display: none;
286
+ }
287
+ .ss-menu > button,
288
+ .ss-menu-foot button {
289
+ padding: 7px 8px;
290
+ border: 0;
291
+ border-radius: 6px;
292
+ background: transparent;
293
+ color: var(--sh-ink);
294
+ font: inherit;
295
+ text-align: left;
296
+ cursor: pointer;
297
+ }
298
+ .ss-menu > button:hover,
299
+ .ss-menu-foot button:hover {
300
+ background: var(--sh-sunk);
301
+ }
302
+ .ss-menu > button.on {
303
+ color: var(--sh-brand);
304
+ font-weight: 650;
305
+ }
306
+ .ss-menu hr {
307
+ width: 100%;
308
+ margin: 6px 0;
309
+ border: 0;
310
+ border-top: 1px solid var(--sh-line);
311
+ }
312
+ .ss-menu input[type="search"] {
313
+ box-sizing: border-box;
314
+ width: 100%;
315
+ height: 30px;
316
+ padding: 0 8px;
317
+ border: 1px solid var(--sh-line);
318
+ border-radius: 6px;
319
+ background: var(--sh-paper);
320
+ color: var(--sh-ink);
321
+ font: inherit;
322
+ }
323
+ .ss-picks {
324
+ display: flex;
325
+ flex-direction: column;
326
+ min-height: 0;
327
+ margin-top: 6px;
328
+ overflow-y: auto;
329
+ }
330
+ .ss-picks label {
331
+ display: flex;
332
+ align-items: center;
333
+ gap: 8px;
334
+ padding: 4px 6px;
335
+ border-radius: 6px;
336
+ cursor: pointer;
337
+ }
338
+ .ss-picks label:hover {
339
+ background: var(--sh-sunk);
340
+ }
341
+ .ss-picks span {
342
+ flex: 1;
343
+ min-width: 0;
344
+ overflow: hidden;
345
+ white-space: nowrap;
346
+ text-overflow: ellipsis;
347
+ }
348
+ .ss-picks small {
349
+ color: var(--sh-ink-3);
350
+ }
351
+ .ss-menu-foot {
352
+ display: flex;
353
+ justify-content: space-between;
354
+ margin-top: 6px;
355
+ padding-top: 6px;
356
+ border-top: 1px solid var(--sh-line);
357
+ }
358
+
359
+ @media print {
360
+ @page {
361
+ size: landscape;
362
+ margin: 12mm;
363
+ }
364
+ html,
365
+ body {
366
+ height: auto;
367
+ overflow: visible;
368
+ }
369
+ .sh-head,
370
+ .ss-bar,
371
+ .ss-foot,
372
+ .ss-menu,
373
+ .ss-letters,
374
+ .ss-row,
375
+ .ss-col {
376
+ display: none !important;
377
+ }
378
+ .ss-grid {
379
+ overflow: visible;
380
+ }
381
+ .ss-grid :is(th, td) {
382
+ position: static !important;
383
+ }
384
+ }
385
+
386
+ /* Editing: the formula line takes typing, the tools sit at its end, and a cell being typed
387
+ in has a box of its own over it */
388
+ .ss-fx-box {
389
+ position: relative;
390
+ display: flex;
391
+ flex: 1;
392
+ min-width: 0;
393
+ }
394
+ /* The formula again over the line, its references in their colours; the line's own text hides
395
+ under it until someone types there */
396
+ .ss-fx-show {
397
+ position: absolute;
398
+ inset: 0;
399
+ display: none;
400
+ align-items: center;
401
+ overflow: hidden;
402
+ white-space: pre;
403
+ pointer-events: none;
404
+ }
405
+ .ss-fx-box.colored .ss-fx-show {
406
+ display: flex;
407
+ }
408
+ .ss-fx-box.colored .ss-formula:not(.ss-fx-show) {
409
+ color: transparent;
410
+ }
411
+ .ss-fx-show b {
412
+ font-weight: 600;
413
+ }
414
+ .ss-formula:not([readonly]):focus {
415
+ box-shadow: inset 0 -2px 0 var(--sh-brand);
416
+ }
417
+ .ss-tools {
418
+ display: flex;
419
+ flex: none;
420
+ align-items: center;
421
+ gap: 2px;
422
+ padding: 0 6px;
423
+ border-left: 1px solid var(--sh-line);
424
+ }
425
+ .ss-tools[hidden] {
426
+ display: none;
427
+ }
428
+ /* On a narrow screen the tools have a row of their own under the formula line */
429
+ @media (max-width: 720px) {
430
+ .ss-bar {
431
+ flex-wrap: wrap;
432
+ height: auto;
433
+ }
434
+ .ss-bar > :not(.ss-tools) {
435
+ height: 32px;
436
+ }
437
+ .ss-tools {
438
+ order: 1;
439
+ width: 100%;
440
+ height: 34px;
441
+ overflow-x: auto;
442
+ border-top: 1px solid var(--sh-line);
443
+ border-left: 0;
444
+ }
445
+ }
446
+ .ss-format {
447
+ height: 26px;
448
+ margin: 0 2px;
449
+ padding: 0 4px;
450
+ border: 1px solid var(--sh-line);
451
+ border-radius: calc(var(--sh-radius) * 0.6);
452
+ background: var(--sh-paper);
453
+ color: var(--sh-ink);
454
+ font: inherit;
455
+ font-size: 12px;
456
+ }
457
+ .ss-edit {
458
+ position: absolute;
459
+ z-index: 4;
460
+ box-sizing: border-box;
461
+ margin: 0;
462
+ padding: 0 7px;
463
+ border: 2px solid var(--sh-brand);
464
+ background: var(--sh-paper);
465
+ color: var(--sh-ink);
466
+ font: inherit;
467
+ font-size: 13px;
468
+ outline: none;
469
+ opacity: 0;
470
+ pointer-events: none;
471
+ }
472
+ .ss-edit.open {
473
+ opacity: 1;
474
+ pointer-events: auto;
475
+ box-shadow: 0 2px 8px rgb(0 0 0 / 0.12);
476
+ }
477
+ .ss-grid.editing td,
478
+ .ss-grid.editing .ss-names th {
479
+ cursor: text;
480
+ }
481
+ .ss-note {
482
+ min-width: 0;
483
+ line-height: 36px;
484
+ overflow: hidden;
485
+ margin-right: 12px;
486
+ color: var(--sh-ink-3);
487
+ font-size: 12px;
488
+ white-space: nowrap;
489
+ text-overflow: ellipsis;
490
+ }
491
+ .ss-note.bad {
492
+ color: var(--sh-bad);
493
+ }
494
+ @media print {
495
+ .ss-tools,
496
+ .ss-edit {
497
+ display: none;
498
+ }
499
+ }
@@ -0,0 +1,102 @@
1
+ <!doctype html>
2
+ <html>
3
+ <head>
4
+ <meta charset="utf-8" />
5
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
6
+ {{shell.meta}}
7
+ <meta name="sheet-xlsx" content="{{xlsx.hash}}" />
8
+ <title>{{title}}</title>
9
+ <script>
10
+ // shell.theme
11
+ </script>
12
+ <style>
13
+ /* shell.css */
14
+ /* sheet.css */
15
+ </style>
16
+ </head>
17
+ <body>
18
+ <header class="sh-head">
19
+ {{shell.who}}
20
+ <span class="sh-title">{{title}}</span>
21
+ <span class="sh-sub" id="size"></span>
22
+ <span class="sh-sub" id="state"></span>
23
+ <span class="sh-gap"></span>
24
+ <span class="sh-tools">
25
+ <button type="button" class="sh-b sh-outline" data-reload title="Show the sheet as it is now" hidden>Reload</button>
26
+ <button type="button" class="sh-b sh-outline" data-edit><svg viewBox="0 0 24 24" aria-hidden="true"><path d="M12 20h9M16.5 3.5a2.1 2.1 0 0 1 3 3L7 19l-4 1 1-4Z"/></svg><span class="sh-word">Edit</span></button>
27
+ </span>
28
+ {{shell.theme}}
29
+ <details class="sh-menu">
30
+ {{shell.export}}
31
+ <div class="sh-list">
32
+ <a class="sh-item" id="xlsx" href="{{xlsx.file}}" target="_blank" download>Excel file<small>.xlsx</small></a>
33
+ <button type="button" class="sh-item" data-csv>This sheet as CSV<small>.csv</small></button>
34
+ <button type="button" class="sh-item" data-copy-sheet>Copy this sheet<small>to paste</small></button>
35
+ <button type="button" class="sh-item" data-export="print">Print<small>PDF</small></button>
36
+ {{shell.download}}
37
+ </div>
38
+ </details>
39
+ </header>
40
+
41
+ <div class="ss-bar">
42
+ <span class="ss-ref" id="ref"></span>
43
+ <span class="ss-fx" aria-hidden="true">fx</span>
44
+ <span class="ss-fx-box" id="fx-box">
45
+ <input class="ss-formula" id="formula" readonly spellcheck="false" autocomplete="off" aria-label="The cell's formula or value" />
46
+ <span class="ss-formula ss-fx-show" id="fx-show" aria-hidden="true"></span>
47
+ </span>
48
+ <span class="ss-tools" id="tools" hidden>
49
+ <button type="button" class="sh-b sh-sm" data-do="row" title="A row under the one picked">+ Row</button>
50
+ <button type="button" class="sh-b sh-sm" data-do="unrow" title="Take out the rows picked">− Row</button>
51
+ <button type="button" class="sh-b sh-sm" data-do="col" title="A column right of the one picked">+ Column</button>
52
+ <button type="button" class="sh-b sh-sm" data-do="uncol" title="Take out the columns picked">− Column</button>
53
+ <select class="ss-format" id="format" aria-label="How the column's numbers read">
54
+ <option value="General">General</option>
55
+ <option value="0">1234</option>
56
+ <option value="#,##0">1,234</option>
57
+ <option value="#,##0.00">1,234.00</option>
58
+ <option value="0%">12%</option>
59
+ <option value="0.0%">12.3%</option>
60
+ <option value="#,##0;[Red]-#,##0">-1,234 in red</option>
61
+ <option value="yyyy-mm-dd">2026-07-02</option>
62
+ </select>
63
+ <span class="sh-rule"></span>
64
+ <button type="button" class="sh-b sh-sm sh-icon" data-do="undo" title="Undo (⌘Z)" aria-label="Undo"><svg viewBox="0 0 24 24" aria-hidden="true"><path d="M9 14 4 9l5-5M4 9h11a5 5 0 0 1 0 10h-3"/></svg></button>
65
+ <button type="button" class="sh-b sh-sm sh-icon" data-do="redo" title="Redo (⇧⌘Z)" aria-label="Redo"><svg viewBox="0 0 24 24" aria-hidden="true"><path d="m15 14 5-5-5-5M20 9H9a5 5 0 0 0 0 10h3"/></svg></button>
66
+ </span>
67
+ </div>
68
+ <div class="ss-grid" id="grid" tabindex="0" aria-label="Cells">
69
+ <table id="table"></table>
70
+ <p class="ss-more" id="more" hidden></p>
71
+ </div>
72
+ <footer class="ss-foot">
73
+ <div class="ss-tabs" id="tabs" role="tablist"></div>
74
+ <span class="ss-gap"></span>
75
+ <output class="ss-note" id="note"></output>
76
+ <output class="ss-stat" id="stat"></output>
77
+ </footer>
78
+
79
+ <div class="ss-menu" id="menu" role="dialog" aria-label="Sort and filter" hidden>
80
+ <button type="button" data-sort="up">Sort ascending</button>
81
+ <button type="button" data-sort="down">Sort descending</button>
82
+ <button type="button" data-sort="none">Rows as written</button>
83
+ <hr />
84
+ <input type="search" id="find" placeholder="Find a value" aria-label="Find a value" />
85
+ <div class="ss-picks" id="picks"></div>
86
+ <div class="ss-menu-foot">
87
+ <button type="button" data-pick="all">Show all</button>
88
+ </div>
89
+ </div>
90
+
91
+ <!-- The workbook the .xlsx beside this page holds, as spreadsheet.mjs read it -->
92
+ <script type="application/json" id="sheet-data">null</script>
93
+ <script>
94
+ // shell.js
95
+ </script>
96
+ <script>
97
+ // formula.mjs
98
+ // format.mjs
99
+ // sheet.js
100
+ </script>
101
+ </body>
102
+ </html>