@heycys/gallery 0.0.0-stage → 0.1.1

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 (806) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +50 -2
  3. package/THIRD-PARTY-NOTICES.md +3303 -0
  4. package/assets/writing-preferences.md +107 -0
  5. package/bin/gallery.mjs +10 -0
  6. package/browser/editor/components/bookmark/icons.mjs +6 -0
  7. package/browser/editor/components/bookmark/index.mjs +80 -0
  8. package/browser/editor/components/bookmark/page.mjs +147 -0
  9. package/browser/editor/components/builders.mjs +19 -0
  10. package/browser/editor/components/callout/index.mjs +64 -0
  11. package/browser/editor/components/code/index.mjs +327 -0
  12. package/browser/editor/components/code/page.mjs +561 -0
  13. package/browser/editor/components/colors.mjs +50 -0
  14. package/browser/editor/components/columns/index.mjs +104 -0
  15. package/browser/editor/components/columns/page.mjs +310 -0
  16. package/browser/editor/components/details/index.mjs +73 -0
  17. package/browser/editor/components/details/page.mjs +86 -0
  18. package/browser/editor/components/dialog/index.mjs +84 -0
  19. package/browser/editor/components/dialog/page.mjs +201 -0
  20. package/browser/editor/components/divider/index.mjs +48 -0
  21. package/browser/editor/components/embed/icons.mjs +11 -0
  22. package/browser/editor/components/embed/index.mjs +123 -0
  23. package/browser/editor/components/embed/page.mjs +309 -0
  24. package/browser/editor/components/figure/index.mjs +87 -0
  25. package/browser/editor/components/figure/page.mjs +42 -0
  26. package/browser/editor/components/file/icons.mjs +14 -0
  27. package/browser/editor/components/file/index.mjs +77 -0
  28. package/browser/editor/components/file/page.mjs +114 -0
  29. package/browser/editor/components/flowchart/add.mjs +123 -0
  30. package/browser/editor/components/flowchart/index.mjs +246 -0
  31. package/browser/editor/components/flowchart/page.mjs +453 -0
  32. package/browser/editor/components/heading/index.mjs +53 -0
  33. package/browser/editor/components/heading/page.mjs +6 -0
  34. package/browser/editor/components/highlight/index.mjs +63 -0
  35. package/browser/editor/components/icon/index.mjs +57 -0
  36. package/browser/editor/components/icon/page.mjs +286 -0
  37. package/browser/editor/components/icons.mjs +48 -0
  38. package/browser/editor/components/image/crop.mjs +189 -0
  39. package/browser/editor/components/image/index.mjs +104 -0
  40. package/browser/editor/components/image/page.mjs +385 -0
  41. package/browser/editor/components/image/viewer.mjs +213 -0
  42. package/browser/editor/components/installed/index.mjs +179 -0
  43. package/browser/editor/components/installed/page.mjs +523 -0
  44. package/browser/editor/components/installed/served.mjs +35 -0
  45. package/browser/editor/components/kit.mjs +67 -0
  46. package/browser/editor/components/list/index.mjs +194 -0
  47. package/browser/editor/components/list/join.mjs +68 -0
  48. package/browser/editor/components/list/numbers.mjs +107 -0
  49. package/browser/editor/components/list/page.mjs +632 -0
  50. package/browser/editor/components/math/index.mjs +88 -0
  51. package/browser/editor/components/math/page.mjs +236 -0
  52. package/browser/editor/components/math/tex-logo.mjs +6 -0
  53. package/browser/editor/components/media/icons.mjs +19 -0
  54. package/browser/editor/components/media/page.mjs +192 -0
  55. package/browser/editor/components/media/parts.mjs +60 -0
  56. package/browser/editor/components/media/size.mjs +20 -0
  57. package/browser/editor/components/media/toolbar.mjs +37 -0
  58. package/browser/editor/components/media/write.mjs +7 -0
  59. package/browser/editor/components/pages.mjs +46 -0
  60. package/browser/editor/components/paragraph/index.mjs +43 -0
  61. package/browser/editor/components/paragraph/page.mjs +52 -0
  62. package/browser/editor/components/placeholder-bar.mjs +17 -0
  63. package/browser/editor/components/placeholder.mjs +128 -0
  64. package/browser/editor/components/quote/index.mjs +33 -0
  65. package/browser/editor/components/registry.mjs +859 -0
  66. package/browser/editor/components/rows.mjs +16 -0
  67. package/browser/editor/components/section/index.mjs +42 -0
  68. package/browser/editor/components/section/page.mjs +141 -0
  69. package/browser/editor/components/set-apart.mjs +24 -0
  70. package/browser/editor/components/sheets/index.mjs +137 -0
  71. package/browser/editor/components/sheets/page.mjs +227 -0
  72. package/browser/editor/components/sheets/pills.mjs +226 -0
  73. package/browser/editor/components/table/grid.mjs +73 -0
  74. package/browser/editor/components/table/index.mjs +308 -0
  75. package/browser/editor/components/table/page.mjs +683 -0
  76. package/browser/editor/components/table/slots.mjs +41 -0
  77. package/browser/editor/components/widget/index.mjs +50 -0
  78. package/browser/editor/page/annotate/anchors.mjs +230 -0
  79. package/browser/editor/page/annotate/card.mjs +102 -0
  80. package/browser/editor/page/annotate/index.mjs +1656 -0
  81. package/browser/editor/page/at-menu/index.mjs +317 -0
  82. package/browser/editor/page/autosave.mjs +1023 -0
  83. package/browser/editor/page/beside.mjs +21 -0
  84. package/browser/editor/page/block-info.mjs +63 -0
  85. package/browser/editor/page/block-menu/colors.mjs +84 -0
  86. package/browser/editor/page/block-menu/index.mjs +217 -0
  87. package/browser/editor/page/blocks.mjs +255 -0
  88. package/browser/editor/page/caret.mjs +682 -0
  89. package/browser/editor/page/changes/bar.mjs +102 -0
  90. package/browser/editor/page/changes/ghost.mjs +206 -0
  91. package/browser/editor/page/changes/gone-words.mjs +94 -0
  92. package/browser/editor/page/changes/index.mjs +447 -0
  93. package/browser/editor/page/changes/words.mjs +27 -0
  94. package/browser/editor/page/chip-fills.mjs +126 -0
  95. package/browser/editor/page/clipboard/import/colors.mjs +192 -0
  96. package/browser/editor/page/clipboard/import/html.mjs +792 -0
  97. package/browser/editor/page/clipboard/import/inline.mjs +232 -0
  98. package/browser/editor/page/clipboard/import/languages.mjs +42 -0
  99. package/browser/editor/page/clipboard/import/markdown.mjs +760 -0
  100. package/browser/editor/page/clipboard/import/math.mjs +100 -0
  101. package/browser/editor/page/clipboard/import/office.mjs +245 -0
  102. package/browser/editor/page/clipboard/import/read.mjs +120 -0
  103. package/browser/editor/page/clipboard/import/rich.mjs +29 -0
  104. package/browser/editor/page/clipboard/import/to-blocks.mjs +290 -0
  105. package/browser/editor/page/clipboard/index.mjs +816 -0
  106. package/browser/editor/page/clipboard/own/blocks.mjs +211 -0
  107. package/browser/editor/page/clipboard/own/chart-keys.mjs +58 -0
  108. package/browser/editor/page/clipboard/own/describe.mjs +124 -0
  109. package/browser/editor/page/clipboard/own/export.mjs +167 -0
  110. package/browser/editor/page/clipboard/own/ids.mjs +39 -0
  111. package/browser/editor/page/clipboard/own/index.mjs +13 -0
  112. package/browser/editor/page/clipboard/own/rules.mjs +44 -0
  113. package/browser/editor/page/clipboard/own/selection.mjs +159 -0
  114. package/browser/editor/page/clipboard/own/writers.mjs +315 -0
  115. package/browser/editor/page/columns/index.mjs +360 -0
  116. package/browser/editor/page/commit.mjs +1813 -0
  117. package/browser/editor/page/conflicts.mjs +249 -0
  118. package/browser/editor/page/convert.mjs +831 -0
  119. package/browser/editor/page/core.mjs +1693 -0
  120. package/browser/editor/page/drag/drop.mjs +307 -0
  121. package/browser/editor/page/drag/index.mjs +351 -0
  122. package/browser/editor/page/drag/preview.mjs +126 -0
  123. package/browser/editor/page/edge-scroll.mjs +50 -0
  124. package/browser/editor/page/editor.mjs +1780 -0
  125. package/browser/editor/page/emoji-picker/emoji-tab.mjs +287 -0
  126. package/browser/editor/page/emoji-picker/glyph-html.mjs +26 -0
  127. package/browser/editor/page/emoji-picker/grid.mjs +81 -0
  128. package/browser/editor/page/emoji-picker/icon-tab.mjs +217 -0
  129. package/browser/editor/page/emoji-picker/icons.mjs +31 -0
  130. package/browser/editor/page/emoji-picker/index.mjs +166 -0
  131. package/browser/editor/page/emoji-picker/styles.mjs +161 -0
  132. package/browser/editor/page/emoji-picker/support.mjs +204 -0
  133. package/browser/editor/page/emoji-picker/upload.mjs +236 -0
  134. package/browser/editor/page/export-report.mjs +23 -0
  135. package/browser/editor/page/fills.mjs +62 -0
  136. package/browser/editor/page/find/index.mjs +107 -0
  137. package/browser/editor/page/flags.mjs +70 -0
  138. package/browser/editor/page/fold/index.mjs +348 -0
  139. package/browser/editor/page/fold/rule.mjs +125 -0
  140. package/browser/editor/page/folded.mjs +23 -0
  141. package/browser/editor/page/format-bar/bar.mjs +449 -0
  142. package/browser/editor/page/format-bar/brush.mjs +77 -0
  143. package/browser/editor/page/format-bar/colors.mjs +46 -0
  144. package/browser/editor/page/format-bar/index.mjs +404 -0
  145. package/browser/editor/page/formula/index.mjs +236 -0
  146. package/browser/editor/page/formula/panel.mjs +336 -0
  147. package/browser/editor/page/formula/symbols.mjs +156 -0
  148. package/browser/editor/page/frame.mjs +74 -0
  149. package/browser/editor/page/frames.mjs +196 -0
  150. package/browser/editor/page/geometry.mjs +402 -0
  151. package/browser/editor/page/gesture.mjs +45 -0
  152. package/browser/editor/page/handle/index.mjs +650 -0
  153. package/browser/editor/page/handle-sizes.mjs +14 -0
  154. package/browser/editor/page/hints/index.mjs +84 -0
  155. package/browser/editor/page/history.mjs +401 -0
  156. package/browser/editor/page/insert/index.mjs +256 -0
  157. package/browser/editor/page/kept.mjs +38 -0
  158. package/browser/editor/page/links/address.mjs +40 -0
  159. package/browser/editor/page/links/index.mjs +866 -0
  160. package/browser/editor/page/links/pages.mjs +131 -0
  161. package/browser/editor/page/links/views.mjs +369 -0
  162. package/browser/editor/page/long-runs.mjs +75 -0
  163. package/browser/editor/page/look.mjs +77 -0
  164. package/browser/editor/page/made.mjs +24 -0
  165. package/browser/editor/page/margin.mjs +373 -0
  166. package/browser/editor/page/markdown/index.mjs +88 -0
  167. package/browser/editor/page/markdown/rules.mjs +33 -0
  168. package/browser/editor/page/marks.mjs +377 -0
  169. package/browser/editor/page/media-menu/index.mjs +158 -0
  170. package/browser/editor/page/menu.mjs +544 -0
  171. package/browser/editor/page/merge.mjs +124 -0
  172. package/browser/editor/page/notices.mjs +142 -0
  173. package/browser/editor/page/offered.mjs +32 -0
  174. package/browser/editor/page/outline/folds.mjs +53 -0
  175. package/browser/editor/page/outline/index.mjs +783 -0
  176. package/browser/editor/page/outline/list.mjs +184 -0
  177. package/browser/editor/page/outline/read.mjs +201 -0
  178. package/browser/editor/page/outline/strip.mjs +287 -0
  179. package/browser/editor/page/outline/tree.mjs +248 -0
  180. package/browser/editor/page/overlay-layer.mjs +227 -0
  181. package/browser/editor/page/overlays.mjs +205 -0
  182. package/browser/editor/page/own.mjs +28 -0
  183. package/browser/editor/page/pads.mjs +71 -0
  184. package/browser/editor/page/page-objects.mjs +105 -0
  185. package/browser/editor/page/panel.mjs +65 -0
  186. package/browser/editor/page/placement.mjs +58 -0
  187. package/browser/editor/page/post.mjs +41 -0
  188. package/browser/editor/page/present-links.mjs +50 -0
  189. package/browser/editor/page/quiet.mjs +48 -0
  190. package/browser/editor/page/resize/index.mjs +327 -0
  191. package/browser/editor/page/select-all/index.mjs +262 -0
  192. package/browser/editor/page/selection/delete.mjs +61 -0
  193. package/browser/editor/page/selection/index.mjs +164 -0
  194. package/browser/editor/page/selection/marquee.mjs +174 -0
  195. package/browser/editor/page/session.mjs +168 -0
  196. package/browser/editor/page/slash-menu/index.mjs +291 -0
  197. package/browser/editor/page/storage.mjs +48 -0
  198. package/browser/editor/page/sync-state.mjs +267 -0
  199. package/browser/editor/page/table/aligns.mjs +29 -0
  200. package/browser/editor/page/table/cell-bar.mjs +141 -0
  201. package/browser/editor/page/table/cells.mjs +527 -0
  202. package/browser/editor/page/table/icons.mjs +40 -0
  203. package/browser/editor/page/table/index.mjs +990 -0
  204. package/browser/editor/page/table/lists.mjs +187 -0
  205. package/browser/editor/page/table/widths.mjs +313 -0
  206. package/browser/editor/page/tex.mjs +32 -0
  207. package/browser/editor/page/text-select/index.mjs +671 -0
  208. package/browser/editor/page/tooltip.mjs +98 -0
  209. package/browser/editor/page/type-grid.mjs +83 -0
  210. package/browser/editor/page/typing/code-edges.mjs +274 -0
  211. package/browser/editor/page/typing/index.mjs +282 -0
  212. package/browser/editor/page/typing/leave.mjs +68 -0
  213. package/browser/editor/page/ui.mjs +160 -0
  214. package/browser/shared/annotations.mjs +569 -0
  215. package/browser/shared/code-folds.mjs +14 -0
  216. package/browser/shared/code-languages.mjs +70 -0
  217. package/browser/shared/code-lines.mjs +30 -0
  218. package/browser/shared/colors.mjs +30 -0
  219. package/browser/shared/component-catalog.mjs +573 -0
  220. package/browser/shared/components/bookmark.mjs +26 -0
  221. package/browser/shared/components/callout.mjs +9 -0
  222. package/browser/shared/components/chart.mjs +20 -0
  223. package/browser/shared/components/code.mjs +37 -0
  224. package/browser/shared/components/columns.mjs +16 -0
  225. package/browser/shared/components/details.mjs +15 -0
  226. package/browser/shared/components/dialog.mjs +28 -0
  227. package/browser/shared/components/diff.mjs +18 -0
  228. package/browser/shared/components/divider.mjs +6 -0
  229. package/browser/shared/components/embed.mjs +25 -0
  230. package/browser/shared/components/figure.mjs +14 -0
  231. package/browser/shared/components/file.mjs +23 -0
  232. package/browser/shared/components/heading.mjs +6 -0
  233. package/browser/shared/components/highlight.mjs +9 -0
  234. package/browser/shared/components/icon.mjs +18 -0
  235. package/browser/shared/components/image.mjs +39 -0
  236. package/browser/shared/components/index.mjs +396 -0
  237. package/browser/shared/components/installed.mjs +232 -0
  238. package/browser/shared/components/list.mjs +146 -0
  239. package/browser/shared/components/math.mjs +49 -0
  240. package/browser/shared/components/mention.mjs +33 -0
  241. package/browser/shared/components/page.mjs +46 -0
  242. package/browser/shared/components/paragraph.mjs +9 -0
  243. package/browser/shared/components/quote.mjs +6 -0
  244. package/browser/shared/components/section.mjs +8 -0
  245. package/browser/shared/components/sheets.mjs +80 -0
  246. package/browser/shared/components/state.mjs +20 -0
  247. package/browser/shared/components/table.mjs +49 -0
  248. package/browser/shared/components/text.mjs +14 -0
  249. package/browser/shared/components/widget.mjs +10 -0
  250. package/browser/shared/copy-ids.mjs +72 -0
  251. package/browser/shared/css-references.mjs +110 -0
  252. package/browser/shared/document-look.mjs +178 -0
  253. package/browser/shared/emoji/custom.mjs +91 -0
  254. package/browser/shared/emoji/data/LICENSE-lucide.txt +43 -0
  255. package/browser/shared/emoji/data/LICENSE-mingcute.txt +202 -0
  256. package/browser/shared/emoji/data/LICENSE-tabler.txt +21 -0
  257. package/browser/shared/emoji/data/README.md +28 -0
  258. package/browser/shared/emoji/data/categories.json +1 -0
  259. package/browser/shared/emoji/data/icons.json +1 -0
  260. package/browser/shared/emoji/data/keywords-en.json +1 -0
  261. package/browser/shared/emoji/data/keywords-zh.json +1 -0
  262. package/browser/shared/emoji/data/names.json +1 -0
  263. package/browser/shared/emoji/data/positions.json +1 -0
  264. package/browser/shared/emoji/data/twemoji-index.json +1 -0
  265. package/browser/shared/emoji/data/twemoji-svg.bin +0 -0
  266. package/browser/shared/emoji/data.mjs +194 -0
  267. package/browser/shared/emoji/emoji.mjs +38 -0
  268. package/browser/shared/emoji/glyphs.mjs +134 -0
  269. package/browser/shared/emoji/icon-value.mjs +91 -0
  270. package/browser/shared/escape.mjs +20 -0
  271. package/browser/shared/export-wrap.mjs +89 -0
  272. package/browser/shared/files.mjs +33 -0
  273. package/browser/shared/html-tree.mjs +59 -0
  274. package/browser/shared/http.mjs +22 -0
  275. package/browser/shared/i18n/en.mjs +1223 -0
  276. package/browser/shared/i18n/index.mjs +132 -0
  277. package/browser/shared/ids.mjs +24 -0
  278. package/browser/shared/import-types.mjs +23 -0
  279. package/browser/shared/inline-spacing.mjs +97 -0
  280. package/browser/shared/layers.mjs +42 -0
  281. package/browser/shared/long-runs.mjs +39 -0
  282. package/browser/shared/media.mjs +162 -0
  283. package/browser/shared/new-names.mjs +67 -0
  284. package/browser/shared/number-reading.mjs +92 -0
  285. package/browser/shared/old-names.mjs +143 -0
  286. package/browser/shared/outline.mjs +194 -0
  287. package/browser/shared/page-address.mjs +140 -0
  288. package/browser/shared/page-links.mjs +86 -0
  289. package/browser/shared/paths.mjs +73 -0
  290. package/browser/shared/preferences.mjs +116 -0
  291. package/browser/shared/preview-server.mjs +247 -0
  292. package/browser/shared/qa-levels.mjs +93 -0
  293. package/browser/shared/reading-place.mjs +91 -0
  294. package/browser/shared/renamed-storage.mjs +220 -0
  295. package/browser/shared/reports.mjs +46 -0
  296. package/browser/shared/search.mjs +85 -0
  297. package/browser/shared/session.mjs +77 -0
  298. package/browser/shared/table-chart.mjs +113 -0
  299. package/browser/shared/table-hides.mjs +120 -0
  300. package/browser/shared/table-slots.mjs +75 -0
  301. package/browser/shared/words.mjs +23 -0
  302. package/browser/shared/workspace-look.mjs +91 -0
  303. package/browser/shared/workspace.mjs +535 -0
  304. package/browser/shared/writing-preferences.mjs +68 -0
  305. package/browser/shared/zoom.mjs +57 -0
  306. package/dist/chunk-2B5E4CDJ.mjs +2 -0
  307. package/dist/chunk-342HXE3Q.mjs +2 -0
  308. package/dist/chunk-3HIRPVLU.mjs +2 -0
  309. package/dist/chunk-43B75J5T.mjs +2 -0
  310. package/dist/chunk-4FS7Z7WR.mjs +2 -0
  311. package/dist/chunk-4K5KC6V2.mjs +2 -0
  312. package/dist/chunk-5L7RYZCL.mjs +2 -0
  313. package/dist/chunk-5MHMDLZD.mjs +4 -0
  314. package/dist/chunk-5ZKJ3H4P.mjs +8 -0
  315. package/dist/chunk-64K7IPLO.mjs +255 -0
  316. package/dist/chunk-6QXGZM36.mjs +8 -0
  317. package/dist/chunk-6RGJOMJP.mjs +16 -0
  318. package/dist/chunk-742D2WWJ.mjs +19 -0
  319. package/dist/chunk-7DTINW6U.mjs +48 -0
  320. package/dist/chunk-A55HN5OK.mjs +2 -0
  321. package/dist/chunk-AGDILNWB.mjs +2 -0
  322. package/dist/chunk-AJ73XJF3.mjs +2 -0
  323. package/dist/chunk-AUZGSZJH.mjs +13 -0
  324. package/dist/chunk-BFE45AKL.mjs +2 -0
  325. package/dist/chunk-BGGDRNYQ.mjs +10 -0
  326. package/dist/chunk-BXO2ZY5P.mjs +2 -0
  327. package/dist/chunk-C564NU2H.mjs +77 -0
  328. package/dist/chunk-CEH4MRCC.mjs +2 -0
  329. package/dist/chunk-CY2FNNAB.mjs +16 -0
  330. package/dist/chunk-DFUDV4LX.mjs +2 -0
  331. package/dist/chunk-DKXG4XDG.mjs +2 -0
  332. package/dist/chunk-E7LWZRXY.mjs +4 -0
  333. package/dist/chunk-EZQ34M3F.mjs +124 -0
  334. package/dist/chunk-EZY3WC6Z.mjs +15 -0
  335. package/dist/chunk-FDLXYYG4.mjs +4 -0
  336. package/dist/chunk-FUKQNOQS.mjs +9 -0
  337. package/dist/chunk-GB5SOYQJ.mjs +7 -0
  338. package/dist/chunk-GRAXKKG4.mjs +2 -0
  339. package/dist/chunk-HYMEEXKN.mjs +4 -0
  340. package/dist/chunk-IVDLMMBD.mjs +2 -0
  341. package/dist/chunk-JPOSLGOC.mjs +6 -0
  342. package/dist/chunk-JVHHHGEA.mjs +3 -0
  343. package/dist/chunk-L3QKH4OK.mjs +26 -0
  344. package/dist/chunk-LAE5NQ4B.mjs +2 -0
  345. package/dist/chunk-LCTHTZIL.mjs +960 -0
  346. package/dist/chunk-LEF6DRCK.mjs +59 -0
  347. package/dist/chunk-LKX55H76.mjs +2 -0
  348. package/dist/chunk-LS4F7JUM.mjs +2 -0
  349. package/dist/chunk-MAFIGVXY.mjs +2 -0
  350. package/dist/chunk-NO5NJCHO.mjs +2 -0
  351. package/dist/chunk-NQPVAU63.mjs +2 -0
  352. package/dist/chunk-NSKUTQ5J.mjs +5 -0
  353. package/dist/chunk-O35FIXRB.mjs +2 -0
  354. package/dist/chunk-P2CAZPDP.mjs +3 -0
  355. package/dist/chunk-PL6GHLGD.mjs +15 -0
  356. package/dist/chunk-QAIHRH3I.mjs +13 -0
  357. package/dist/chunk-QJIR2BLP.mjs +6 -0
  358. package/dist/chunk-QR6A54KJ.mjs +3 -0
  359. package/dist/chunk-QUPLVPB2.mjs +7 -0
  360. package/dist/chunk-R7BNENLY.mjs +4 -0
  361. package/dist/chunk-S6O4UHLC.mjs +2 -0
  362. package/dist/chunk-SGJWQKEI.mjs +2 -0
  363. package/dist/chunk-SYGN7GLU.mjs +2 -0
  364. package/dist/chunk-TMYZB6AV.mjs +2 -0
  365. package/dist/chunk-TX6JH7TR.mjs +2 -0
  366. package/dist/chunk-TYK6VNAB.mjs +10 -0
  367. package/dist/chunk-U3SSPL4K.mjs +8 -0
  368. package/dist/chunk-U6KNPJPR.mjs +2 -0
  369. package/dist/chunk-UALRNVSE.mjs +4 -0
  370. package/dist/chunk-UH4SIXTR.mjs +2 -0
  371. package/dist/chunk-UMHUSOPJ.mjs +2 -0
  372. package/dist/chunk-V3HXVQEM.mjs +2 -0
  373. package/dist/chunk-V5JTW2LH.mjs +27 -0
  374. package/dist/chunk-V5VXUJKG.mjs +2 -0
  375. package/dist/chunk-V6XZ4VIR.mjs +2 -0
  376. package/dist/chunk-VBXMADMP.mjs +2 -0
  377. package/dist/chunk-VNV55RUA.mjs +2 -0
  378. package/dist/chunk-VPD2PS35.mjs +2 -0
  379. package/dist/chunk-W3BGBJQW.mjs +2 -0
  380. package/dist/chunk-W4VKN3GF.mjs +7 -0
  381. package/dist/chunk-W5BXXPDJ.mjs +3 -0
  382. package/dist/chunk-W7XHE4CT.mjs +2 -0
  383. package/dist/chunk-XNROSH2T.mjs +4 -0
  384. package/dist/chunk-XUNHRCOG.mjs +6 -0
  385. package/dist/chunk-Y34NR5JL.mjs +2 -0
  386. package/dist/chunk-Y6RLRPG3.mjs +3 -0
  387. package/dist/chunk-YEY3RSFQ.mjs +2 -0
  388. package/dist/cli.mjs +2 -0
  389. package/dist/server.mjs +2 -0
  390. package/dist/worker.mjs +5 -0
  391. package/kit/charts.js +355 -0
  392. package/kit/code.js +164 -0
  393. package/kit/dialogs.js +157 -0
  394. package/kit/math.js +2004 -0
  395. package/kit/report.css +2932 -0
  396. package/kit/runtime.js +1782 -0
  397. package/kit/sheets.js +123 -0
  398. package/kit/state.js +217 -0
  399. package/kit/tables.js +1499 -0
  400. package/kit/tokens.js +29 -0
  401. package/kit/ui.js +658 -0
  402. package/package.json +41 -4
  403. package/release.json +25 -0
  404. package/sdk/column-widths.d.ts +56 -0
  405. package/sdk/doc-charts.d.ts +82 -0
  406. package/sdk/doc-code.d.ts +28 -0
  407. package/sdk/doc-dialogs.d.ts +4 -0
  408. package/sdk/doc-kit.d.ts +147 -0
  409. package/sdk/doc-math.d.ts +3 -0
  410. package/sdk/doc-sheets.d.ts +15 -0
  411. package/sdk/doc-state.d.ts +41 -0
  412. package/sdk/doc-tables.d.ts +24 -0
  413. package/sdk/doc-tokens.d.ts +22 -0
  414. package/sdk/index.d.ts +30 -0
  415. package/skill/SKILL.md +150 -0
  416. package/skill/agents/openai.yaml +5 -0
  417. package/skill/references/building-components.md +367 -0
  418. package/skill/references/example-report.html +356 -0
  419. package/skill/references/writing-html.md +187 -0
  420. package/skill/sdk/column-widths.d.ts +56 -0
  421. package/skill/sdk/doc-charts.d.ts +82 -0
  422. package/skill/sdk/doc-code.d.ts +28 -0
  423. package/skill/sdk/doc-dialogs.d.ts +4 -0
  424. package/skill/sdk/doc-kit.d.ts +147 -0
  425. package/skill/sdk/doc-math.d.ts +3 -0
  426. package/skill/sdk/doc-sheets.d.ts +15 -0
  427. package/skill/sdk/doc-state.d.ts +41 -0
  428. package/skill/sdk/doc-tables.d.ts +24 -0
  429. package/skill/sdk/doc-tokens.d.ts +22 -0
  430. package/skill/sdk/index.d.ts +30 -0
  431. package/starter/doc.html +21 -0
  432. package/starter/doc.json +5 -0
  433. package/vendor/d3.v7.9.0.min.js +2 -0
  434. package/vendor/katex/auto-render.min.js +1 -0
  435. package/vendor/katex/contrib/mhchem.min.js +1 -0
  436. package/vendor/katex/fonts/KaTeX_AMS-Regular.woff2 +0 -0
  437. package/vendor/katex/fonts/KaTeX_Caligraphic-Bold.woff2 +0 -0
  438. package/vendor/katex/fonts/KaTeX_Caligraphic-Regular.woff2 +0 -0
  439. package/vendor/katex/fonts/KaTeX_Fraktur-Bold.woff2 +0 -0
  440. package/vendor/katex/fonts/KaTeX_Fraktur-Regular.woff2 +0 -0
  441. package/vendor/katex/fonts/KaTeX_Main-Bold.woff2 +0 -0
  442. package/vendor/katex/fonts/KaTeX_Main-BoldItalic.woff2 +0 -0
  443. package/vendor/katex/fonts/KaTeX_Main-Italic.woff2 +0 -0
  444. package/vendor/katex/fonts/KaTeX_Main-Regular.woff2 +0 -0
  445. package/vendor/katex/fonts/KaTeX_Math-BoldItalic.woff2 +0 -0
  446. package/vendor/katex/fonts/KaTeX_Math-Italic.woff2 +0 -0
  447. package/vendor/katex/fonts/KaTeX_SansSerif-Bold.woff2 +0 -0
  448. package/vendor/katex/fonts/KaTeX_SansSerif-Italic.woff2 +0 -0
  449. package/vendor/katex/fonts/KaTeX_SansSerif-Regular.woff2 +0 -0
  450. package/vendor/katex/fonts/KaTeX_Script-Regular.woff2 +0 -0
  451. package/vendor/katex/fonts/KaTeX_Size1-Regular.woff2 +0 -0
  452. package/vendor/katex/fonts/KaTeX_Size2-Regular.woff2 +0 -0
  453. package/vendor/katex/fonts/KaTeX_Size3-Regular.woff2 +0 -0
  454. package/vendor/katex/fonts/KaTeX_Size4-Regular.woff2 +0 -0
  455. package/vendor/katex/fonts/KaTeX_Typewriter-Regular.woff2 +0 -0
  456. package/vendor/katex/katex.min.css +1 -0
  457. package/vendor/katex/katex.min.js +1 -0
  458. package/vendor/pdfjs/LICENSE +177 -0
  459. package/vendor/pdfjs/cmaps/78-EUC-H.bcmap +0 -0
  460. package/vendor/pdfjs/cmaps/78-EUC-V.bcmap +0 -0
  461. package/vendor/pdfjs/cmaps/78-H.bcmap +0 -0
  462. package/vendor/pdfjs/cmaps/78-RKSJ-H.bcmap +0 -0
  463. package/vendor/pdfjs/cmaps/78-RKSJ-V.bcmap +0 -0
  464. package/vendor/pdfjs/cmaps/78-V.bcmap +0 -0
  465. package/vendor/pdfjs/cmaps/78ms-RKSJ-H.bcmap +0 -0
  466. package/vendor/pdfjs/cmaps/78ms-RKSJ-V.bcmap +0 -0
  467. package/vendor/pdfjs/cmaps/83pv-RKSJ-H.bcmap +0 -0
  468. package/vendor/pdfjs/cmaps/90ms-RKSJ-H.bcmap +0 -0
  469. package/vendor/pdfjs/cmaps/90ms-RKSJ-V.bcmap +0 -0
  470. package/vendor/pdfjs/cmaps/90msp-RKSJ-H.bcmap +0 -0
  471. package/vendor/pdfjs/cmaps/90msp-RKSJ-V.bcmap +0 -0
  472. package/vendor/pdfjs/cmaps/90pv-RKSJ-H.bcmap +0 -0
  473. package/vendor/pdfjs/cmaps/90pv-RKSJ-V.bcmap +0 -0
  474. package/vendor/pdfjs/cmaps/Add-H.bcmap +0 -0
  475. package/vendor/pdfjs/cmaps/Add-RKSJ-H.bcmap +0 -0
  476. package/vendor/pdfjs/cmaps/Add-RKSJ-V.bcmap +0 -0
  477. package/vendor/pdfjs/cmaps/Add-V.bcmap +0 -0
  478. package/vendor/pdfjs/cmaps/Adobe-CNS1-0.bcmap +0 -0
  479. package/vendor/pdfjs/cmaps/Adobe-CNS1-1.bcmap +0 -0
  480. package/vendor/pdfjs/cmaps/Adobe-CNS1-2.bcmap +0 -0
  481. package/vendor/pdfjs/cmaps/Adobe-CNS1-3.bcmap +0 -0
  482. package/vendor/pdfjs/cmaps/Adobe-CNS1-4.bcmap +0 -0
  483. package/vendor/pdfjs/cmaps/Adobe-CNS1-5.bcmap +0 -0
  484. package/vendor/pdfjs/cmaps/Adobe-CNS1-6.bcmap +0 -0
  485. package/vendor/pdfjs/cmaps/Adobe-CNS1-UCS2.bcmap +0 -0
  486. package/vendor/pdfjs/cmaps/Adobe-GB1-0.bcmap +0 -0
  487. package/vendor/pdfjs/cmaps/Adobe-GB1-1.bcmap +0 -0
  488. package/vendor/pdfjs/cmaps/Adobe-GB1-2.bcmap +0 -0
  489. package/vendor/pdfjs/cmaps/Adobe-GB1-3.bcmap +0 -0
  490. package/vendor/pdfjs/cmaps/Adobe-GB1-4.bcmap +0 -0
  491. package/vendor/pdfjs/cmaps/Adobe-GB1-5.bcmap +0 -0
  492. package/vendor/pdfjs/cmaps/Adobe-GB1-UCS2.bcmap +0 -0
  493. package/vendor/pdfjs/cmaps/Adobe-Japan1-0.bcmap +0 -0
  494. package/vendor/pdfjs/cmaps/Adobe-Japan1-1.bcmap +0 -0
  495. package/vendor/pdfjs/cmaps/Adobe-Japan1-2.bcmap +0 -0
  496. package/vendor/pdfjs/cmaps/Adobe-Japan1-3.bcmap +0 -0
  497. package/vendor/pdfjs/cmaps/Adobe-Japan1-4.bcmap +0 -0
  498. package/vendor/pdfjs/cmaps/Adobe-Japan1-5.bcmap +0 -0
  499. package/vendor/pdfjs/cmaps/Adobe-Japan1-6.bcmap +0 -0
  500. package/vendor/pdfjs/cmaps/Adobe-Japan1-UCS2.bcmap +0 -0
  501. package/vendor/pdfjs/cmaps/Adobe-Korea1-0.bcmap +0 -0
  502. package/vendor/pdfjs/cmaps/Adobe-Korea1-1.bcmap +0 -0
  503. package/vendor/pdfjs/cmaps/Adobe-Korea1-2.bcmap +0 -0
  504. package/vendor/pdfjs/cmaps/Adobe-Korea1-UCS2.bcmap +0 -0
  505. package/vendor/pdfjs/cmaps/B5-H.bcmap +0 -0
  506. package/vendor/pdfjs/cmaps/B5-V.bcmap +0 -0
  507. package/vendor/pdfjs/cmaps/B5pc-H.bcmap +0 -0
  508. package/vendor/pdfjs/cmaps/B5pc-V.bcmap +0 -0
  509. package/vendor/pdfjs/cmaps/CNS-EUC-H.bcmap +0 -0
  510. package/vendor/pdfjs/cmaps/CNS-EUC-V.bcmap +0 -0
  511. package/vendor/pdfjs/cmaps/CNS1-H.bcmap +0 -0
  512. package/vendor/pdfjs/cmaps/CNS1-V.bcmap +0 -0
  513. package/vendor/pdfjs/cmaps/CNS2-H.bcmap +0 -0
  514. package/vendor/pdfjs/cmaps/CNS2-V.bcmap +3 -0
  515. package/vendor/pdfjs/cmaps/ETHK-B5-H.bcmap +0 -0
  516. package/vendor/pdfjs/cmaps/ETHK-B5-V.bcmap +0 -0
  517. package/vendor/pdfjs/cmaps/ETen-B5-H.bcmap +0 -0
  518. package/vendor/pdfjs/cmaps/ETen-B5-V.bcmap +0 -0
  519. package/vendor/pdfjs/cmaps/ETenms-B5-H.bcmap +3 -0
  520. package/vendor/pdfjs/cmaps/ETenms-B5-V.bcmap +0 -0
  521. package/vendor/pdfjs/cmaps/EUC-H.bcmap +0 -0
  522. package/vendor/pdfjs/cmaps/EUC-V.bcmap +0 -0
  523. package/vendor/pdfjs/cmaps/Ext-H.bcmap +0 -0
  524. package/vendor/pdfjs/cmaps/Ext-RKSJ-H.bcmap +0 -0
  525. package/vendor/pdfjs/cmaps/Ext-RKSJ-V.bcmap +0 -0
  526. package/vendor/pdfjs/cmaps/Ext-V.bcmap +0 -0
  527. package/vendor/pdfjs/cmaps/GB-EUC-H.bcmap +0 -0
  528. package/vendor/pdfjs/cmaps/GB-EUC-V.bcmap +0 -0
  529. package/vendor/pdfjs/cmaps/GB-H.bcmap +4 -0
  530. package/vendor/pdfjs/cmaps/GB-V.bcmap +0 -0
  531. package/vendor/pdfjs/cmaps/GBK-EUC-H.bcmap +0 -0
  532. package/vendor/pdfjs/cmaps/GBK-EUC-V.bcmap +0 -0
  533. package/vendor/pdfjs/cmaps/GBK2K-H.bcmap +0 -0
  534. package/vendor/pdfjs/cmaps/GBK2K-V.bcmap +0 -0
  535. package/vendor/pdfjs/cmaps/GBKp-EUC-H.bcmap +0 -0
  536. package/vendor/pdfjs/cmaps/GBKp-EUC-V.bcmap +0 -0
  537. package/vendor/pdfjs/cmaps/GBT-EUC-H.bcmap +0 -0
  538. package/vendor/pdfjs/cmaps/GBT-EUC-V.bcmap +0 -0
  539. package/vendor/pdfjs/cmaps/GBT-H.bcmap +0 -0
  540. package/vendor/pdfjs/cmaps/GBT-V.bcmap +0 -0
  541. package/vendor/pdfjs/cmaps/GBTpc-EUC-H.bcmap +0 -0
  542. package/vendor/pdfjs/cmaps/GBTpc-EUC-V.bcmap +0 -0
  543. package/vendor/pdfjs/cmaps/GBpc-EUC-H.bcmap +0 -0
  544. package/vendor/pdfjs/cmaps/GBpc-EUC-V.bcmap +0 -0
  545. package/vendor/pdfjs/cmaps/H.bcmap +0 -0
  546. package/vendor/pdfjs/cmaps/HKdla-B5-H.bcmap +0 -0
  547. package/vendor/pdfjs/cmaps/HKdla-B5-V.bcmap +0 -0
  548. package/vendor/pdfjs/cmaps/HKdlb-B5-H.bcmap +0 -0
  549. package/vendor/pdfjs/cmaps/HKdlb-B5-V.bcmap +0 -0
  550. package/vendor/pdfjs/cmaps/HKgccs-B5-H.bcmap +0 -0
  551. package/vendor/pdfjs/cmaps/HKgccs-B5-V.bcmap +0 -0
  552. package/vendor/pdfjs/cmaps/HKm314-B5-H.bcmap +0 -0
  553. package/vendor/pdfjs/cmaps/HKm314-B5-V.bcmap +0 -0
  554. package/vendor/pdfjs/cmaps/HKm471-B5-H.bcmap +0 -0
  555. package/vendor/pdfjs/cmaps/HKm471-B5-V.bcmap +0 -0
  556. package/vendor/pdfjs/cmaps/HKscs-B5-H.bcmap +0 -0
  557. package/vendor/pdfjs/cmaps/HKscs-B5-V.bcmap +0 -0
  558. package/vendor/pdfjs/cmaps/Hankaku.bcmap +0 -0
  559. package/vendor/pdfjs/cmaps/Hiragana.bcmap +0 -0
  560. package/vendor/pdfjs/cmaps/KSC-EUC-H.bcmap +0 -0
  561. package/vendor/pdfjs/cmaps/KSC-EUC-V.bcmap +0 -0
  562. package/vendor/pdfjs/cmaps/KSC-H.bcmap +0 -0
  563. package/vendor/pdfjs/cmaps/KSC-Johab-H.bcmap +0 -0
  564. package/vendor/pdfjs/cmaps/KSC-Johab-V.bcmap +0 -0
  565. package/vendor/pdfjs/cmaps/KSC-V.bcmap +0 -0
  566. package/vendor/pdfjs/cmaps/KSCms-UHC-H.bcmap +0 -0
  567. package/vendor/pdfjs/cmaps/KSCms-UHC-HW-H.bcmap +0 -0
  568. package/vendor/pdfjs/cmaps/KSCms-UHC-HW-V.bcmap +0 -0
  569. package/vendor/pdfjs/cmaps/KSCms-UHC-V.bcmap +0 -0
  570. package/vendor/pdfjs/cmaps/KSCpc-EUC-H.bcmap +0 -0
  571. package/vendor/pdfjs/cmaps/KSCpc-EUC-V.bcmap +0 -0
  572. package/vendor/pdfjs/cmaps/Katakana.bcmap +0 -0
  573. package/vendor/pdfjs/cmaps/LICENSE +36 -0
  574. package/vendor/pdfjs/cmaps/NWP-H.bcmap +0 -0
  575. package/vendor/pdfjs/cmaps/NWP-V.bcmap +0 -0
  576. package/vendor/pdfjs/cmaps/RKSJ-H.bcmap +0 -0
  577. package/vendor/pdfjs/cmaps/RKSJ-V.bcmap +0 -0
  578. package/vendor/pdfjs/cmaps/Roman.bcmap +0 -0
  579. package/vendor/pdfjs/cmaps/UniCNS-UCS2-H.bcmap +0 -0
  580. package/vendor/pdfjs/cmaps/UniCNS-UCS2-V.bcmap +0 -0
  581. package/vendor/pdfjs/cmaps/UniCNS-UTF16-H.bcmap +0 -0
  582. package/vendor/pdfjs/cmaps/UniCNS-UTF16-V.bcmap +0 -0
  583. package/vendor/pdfjs/cmaps/UniCNS-UTF32-H.bcmap +0 -0
  584. package/vendor/pdfjs/cmaps/UniCNS-UTF32-V.bcmap +0 -0
  585. package/vendor/pdfjs/cmaps/UniCNS-UTF8-H.bcmap +0 -0
  586. package/vendor/pdfjs/cmaps/UniCNS-UTF8-V.bcmap +0 -0
  587. package/vendor/pdfjs/cmaps/UniGB-UCS2-H.bcmap +0 -0
  588. package/vendor/pdfjs/cmaps/UniGB-UCS2-V.bcmap +0 -0
  589. package/vendor/pdfjs/cmaps/UniGB-UTF16-H.bcmap +0 -0
  590. package/vendor/pdfjs/cmaps/UniGB-UTF16-V.bcmap +0 -0
  591. package/vendor/pdfjs/cmaps/UniGB-UTF32-H.bcmap +0 -0
  592. package/vendor/pdfjs/cmaps/UniGB-UTF32-V.bcmap +0 -0
  593. package/vendor/pdfjs/cmaps/UniGB-UTF8-H.bcmap +0 -0
  594. package/vendor/pdfjs/cmaps/UniGB-UTF8-V.bcmap +0 -0
  595. package/vendor/pdfjs/cmaps/UniJIS-UCS2-H.bcmap +0 -0
  596. package/vendor/pdfjs/cmaps/UniJIS-UCS2-HW-H.bcmap +0 -0
  597. package/vendor/pdfjs/cmaps/UniJIS-UCS2-HW-V.bcmap +0 -0
  598. package/vendor/pdfjs/cmaps/UniJIS-UCS2-V.bcmap +0 -0
  599. package/vendor/pdfjs/cmaps/UniJIS-UTF16-H.bcmap +0 -0
  600. package/vendor/pdfjs/cmaps/UniJIS-UTF16-V.bcmap +0 -0
  601. package/vendor/pdfjs/cmaps/UniJIS-UTF32-H.bcmap +0 -0
  602. package/vendor/pdfjs/cmaps/UniJIS-UTF32-V.bcmap +0 -0
  603. package/vendor/pdfjs/cmaps/UniJIS-UTF8-H.bcmap +0 -0
  604. package/vendor/pdfjs/cmaps/UniJIS-UTF8-V.bcmap +0 -0
  605. package/vendor/pdfjs/cmaps/UniJIS2004-UTF16-H.bcmap +0 -0
  606. package/vendor/pdfjs/cmaps/UniJIS2004-UTF16-V.bcmap +0 -0
  607. package/vendor/pdfjs/cmaps/UniJIS2004-UTF32-H.bcmap +0 -0
  608. package/vendor/pdfjs/cmaps/UniJIS2004-UTF32-V.bcmap +0 -0
  609. package/vendor/pdfjs/cmaps/UniJIS2004-UTF8-H.bcmap +0 -0
  610. package/vendor/pdfjs/cmaps/UniJIS2004-UTF8-V.bcmap +0 -0
  611. package/vendor/pdfjs/cmaps/UniJISPro-UCS2-HW-V.bcmap +0 -0
  612. package/vendor/pdfjs/cmaps/UniJISPro-UCS2-V.bcmap +0 -0
  613. package/vendor/pdfjs/cmaps/UniJISPro-UTF8-V.bcmap +0 -0
  614. package/vendor/pdfjs/cmaps/UniJISX0213-UTF32-H.bcmap +0 -0
  615. package/vendor/pdfjs/cmaps/UniJISX0213-UTF32-V.bcmap +0 -0
  616. package/vendor/pdfjs/cmaps/UniJISX02132004-UTF32-H.bcmap +0 -0
  617. package/vendor/pdfjs/cmaps/UniJISX02132004-UTF32-V.bcmap +0 -0
  618. package/vendor/pdfjs/cmaps/UniKS-UCS2-H.bcmap +0 -0
  619. package/vendor/pdfjs/cmaps/UniKS-UCS2-V.bcmap +0 -0
  620. package/vendor/pdfjs/cmaps/UniKS-UTF16-H.bcmap +0 -0
  621. package/vendor/pdfjs/cmaps/UniKS-UTF16-V.bcmap +0 -0
  622. package/vendor/pdfjs/cmaps/UniKS-UTF32-H.bcmap +0 -0
  623. package/vendor/pdfjs/cmaps/UniKS-UTF32-V.bcmap +0 -0
  624. package/vendor/pdfjs/cmaps/UniKS-UTF8-H.bcmap +0 -0
  625. package/vendor/pdfjs/cmaps/UniKS-UTF8-V.bcmap +0 -0
  626. package/vendor/pdfjs/cmaps/V.bcmap +0 -0
  627. package/vendor/pdfjs/cmaps/WP-Symbol.bcmap +0 -0
  628. package/vendor/pdfjs/legacy/build/pdf.min.mjs +27 -0
  629. package/vendor/pdfjs/legacy/build/pdf.worker.min.mjs +27 -0
  630. package/vendor/pdfjs/standard_fonts/FoxitDingbats.pfb +0 -0
  631. package/vendor/pdfjs/standard_fonts/FoxitFixed.pfb +0 -0
  632. package/vendor/pdfjs/standard_fonts/FoxitFixedBold.pfb +0 -0
  633. package/vendor/pdfjs/standard_fonts/FoxitFixedBoldItalic.pfb +0 -0
  634. package/vendor/pdfjs/standard_fonts/FoxitFixedItalic.pfb +0 -0
  635. package/vendor/pdfjs/standard_fonts/FoxitSerif.pfb +0 -0
  636. package/vendor/pdfjs/standard_fonts/FoxitSerifBold.pfb +0 -0
  637. package/vendor/pdfjs/standard_fonts/FoxitSerifBoldItalic.pfb +0 -0
  638. package/vendor/pdfjs/standard_fonts/FoxitSerifItalic.pfb +0 -0
  639. package/vendor/pdfjs/standard_fonts/FoxitSymbol.pfb +0 -0
  640. package/vendor/pdfjs/standard_fonts/LICENSE_FOXIT +27 -0
  641. package/vendor/pdfjs/standard_fonts/LICENSE_LIBERATION +363 -0
  642. package/vendor/pdfjs/standard_fonts/LiberationSans-Bold.ttf +0 -0
  643. package/vendor/pdfjs/standard_fonts/LiberationSans-BoldItalic.ttf +0 -0
  644. package/vendor/pdfjs/standard_fonts/LiberationSans-Italic.ttf +0 -0
  645. package/vendor/pdfjs/standard_fonts/LiberationSans-Regular.ttf +0 -0
  646. package/vendor/types/@types/d3/LICENSE +21 -0
  647. package/vendor/types/@types/d3/index.d.ts +39 -0
  648. package/vendor/types/@types/d3/package.json +81 -0
  649. package/vendor/types/@types/d3-array/LICENSE +21 -0
  650. package/vendor/types/@types/d3-array/index.d.ts +1118 -0
  651. package/vendor/types/@types/d3-array/package.json +56 -0
  652. package/vendor/types/@types/d3-axis/LICENSE +21 -0
  653. package/vendor/types/@types/d3-axis/index.d.ts +293 -0
  654. package/vendor/types/@types/d3-axis/package.json +47 -0
  655. package/vendor/types/@types/d3-brush/LICENSE +21 -0
  656. package/vendor/types/@types/d3-brush/index.d.ts +255 -0
  657. package/vendor/types/@types/d3-brush/package.json +42 -0
  658. package/vendor/types/@types/d3-chord/LICENSE +21 -0
  659. package/vendor/types/@types/d3-chord/index.d.ts +471 -0
  660. package/vendor/types/@types/d3-chord/package.json +40 -0
  661. package/vendor/types/@types/d3-color/LICENSE +21 -0
  662. package/vendor/types/@types/d3-color/index.d.ts +669 -0
  663. package/vendor/types/@types/d3-color/package.json +55 -0
  664. package/vendor/types/@types/d3-contour/LICENSE +21 -0
  665. package/vendor/types/@types/d3-contour/index.d.ts +222 -0
  666. package/vendor/types/@types/d3-contour/package.json +38 -0
  667. package/vendor/types/@types/d3-delaunay/LICENSE +21 -0
  668. package/vendor/types/@types/d3-delaunay/index.d.ts +316 -0
  669. package/vendor/types/@types/d3-delaunay/package.json +30 -0
  670. package/vendor/types/@types/d3-dispatch/LICENSE +21 -0
  671. package/vendor/types/@types/d3-dispatch/index.d.ts +96 -0
  672. package/vendor/types/@types/d3-dispatch/package.json +51 -0
  673. package/vendor/types/@types/d3-drag/LICENSE +21 -0
  674. package/vendor/types/@types/d3-drag/index.d.ts +395 -0
  675. package/vendor/types/@types/d3-drag/package.json +42 -0
  676. package/vendor/types/@types/d3-dsv/LICENSE +21 -0
  677. package/vendor/types/@types/d3-dsv/index.d.ts +482 -0
  678. package/vendor/types/@types/d3-dsv/package.json +45 -0
  679. package/vendor/types/@types/d3-ease/LICENSE +21 -0
  680. package/vendor/types/@types/d3-ease/index.d.ts +316 -0
  681. package/vendor/types/@types/d3-ease/package.json +40 -0
  682. package/vendor/types/@types/d3-fetch/LICENSE +21 -0
  683. package/vendor/types/@types/d3-fetch/index.d.ts +282 -0
  684. package/vendor/types/@types/d3-fetch/package.json +37 -0
  685. package/vendor/types/@types/d3-force/LICENSE +21 -0
  686. package/vendor/types/@types/d3-force/index.d.ts +899 -0
  687. package/vendor/types/@types/d3-force/package.json +45 -0
  688. package/vendor/types/@types/d3-format/LICENSE +21 -0
  689. package/vendor/types/@types/d3-format/index.d.ts +337 -0
  690. package/vendor/types/@types/d3-format/package.json +45 -0
  691. package/vendor/types/@types/d3-geo/LICENSE +21 -0
  692. package/vendor/types/@types/d3-geo/index.d.ts +1371 -0
  693. package/vendor/types/@types/d3-geo/package.json +48 -0
  694. package/vendor/types/@types/d3-hierarchy/LICENSE +21 -0
  695. package/vendor/types/@types/d3-hierarchy/index.d.ts +928 -0
  696. package/vendor/types/@types/d3-hierarchy/package.json +50 -0
  697. package/vendor/types/@types/d3-interpolate/LICENSE +21 -0
  698. package/vendor/types/@types/d3-interpolate/index.d.ts +387 -0
  699. package/vendor/types/@types/d3-interpolate/package.json +47 -0
  700. package/vendor/types/@types/d3-path/LICENSE +21 -0
  701. package/vendor/types/@types/d3-path/index.d.ts +108 -0
  702. package/vendor/types/@types/d3-path/package.json +41 -0
  703. package/vendor/types/@types/d3-polygon/LICENSE +21 -0
  704. package/vendor/types/@types/d3-polygon/index.d.ts +41 -0
  705. package/vendor/types/@types/d3-polygon/package.json +40 -0
  706. package/vendor/types/@types/d3-quadtree/LICENSE +21 -0
  707. package/vendor/types/@types/d3-quadtree/index.d.ts +204 -0
  708. package/vendor/types/@types/d3-quadtree/package.json +45 -0
  709. package/vendor/types/@types/d3-random/LICENSE +21 -0
  710. package/vendor/types/@types/d3-random/index.d.ts +313 -0
  711. package/vendor/types/@types/d3-random/package.json +41 -0
  712. package/vendor/types/@types/d3-scale/LICENSE +21 -0
  713. package/vendor/types/@types/d3-scale/index.d.ts +2669 -0
  714. package/vendor/types/@types/d3-scale/package.json +53 -0
  715. package/vendor/types/@types/d3-scale-chromatic/LICENSE +21 -0
  716. package/vendor/types/@types/d3-scale-chromatic/index.d.ts +520 -0
  717. package/vendor/types/@types/d3-scale-chromatic/package.json +46 -0
  718. package/vendor/types/@types/d3-selection/LICENSE +21 -0
  719. package/vendor/types/@types/d3-selection/index.d.ts +1210 -0
  720. package/vendor/types/@types/d3-selection/package.json +56 -0
  721. package/vendor/types/@types/d3-shape/LICENSE +21 -0
  722. package/vendor/types/@types/d3-shape/index.d.ts +2792 -0
  723. package/vendor/types/@types/d3-shape/package.json +53 -0
  724. package/vendor/types/@types/d3-time/LICENSE +21 -0
  725. package/vendor/types/@types/d3-time/index.d.ts +697 -0
  726. package/vendor/types/@types/d3-time/package.json +46 -0
  727. package/vendor/types/@types/d3-time-format/LICENSE +21 -0
  728. package/vendor/types/@types/d3-time-format/index.d.ts +202 -0
  729. package/vendor/types/@types/d3-time-format/package.json +40 -0
  730. package/vendor/types/@types/d3-timer/LICENSE +21 -0
  731. package/vendor/types/@types/d3-timer/index.d.ts +68 -0
  732. package/vendor/types/@types/d3-timer/package.json +45 -0
  733. package/vendor/types/@types/d3-transition/LICENSE +21 -0
  734. package/vendor/types/@types/d3-transition/index.d.ts +664 -0
  735. package/vendor/types/@types/d3-transition/package.json +47 -0
  736. package/vendor/types/@types/d3-zoom/LICENSE +21 -0
  737. package/vendor/types/@types/d3-zoom/index.d.ts +611 -0
  738. package/vendor/types/@types/d3-zoom/package.json +48 -0
  739. package/vendor/types/@types/geojson/LICENSE +21 -0
  740. package/vendor/types/@types/geojson/index.d.ts +202 -0
  741. package/vendor/types/@types/geojson/package.json +46 -0
  742. package/vendor/typescript/LICENSE.txt +55 -0
  743. package/vendor/typescript/lib.decorators.d.ts +384 -0
  744. package/vendor/typescript/lib.decorators.legacy.d.ts +22 -0
  745. package/vendor/typescript/lib.dom.d.ts +39429 -0
  746. package/vendor/typescript/lib.dom.iterable.d.ts +571 -0
  747. package/vendor/typescript/lib.es2015.collection.d.ts +147 -0
  748. package/vendor/typescript/lib.es2015.core.d.ts +597 -0
  749. package/vendor/typescript/lib.es2015.d.ts +28 -0
  750. package/vendor/typescript/lib.es2015.generator.d.ts +77 -0
  751. package/vendor/typescript/lib.es2015.iterable.d.ts +605 -0
  752. package/vendor/typescript/lib.es2015.promise.d.ts +81 -0
  753. package/vendor/typescript/lib.es2015.proxy.d.ts +128 -0
  754. package/vendor/typescript/lib.es2015.reflect.d.ts +144 -0
  755. package/vendor/typescript/lib.es2015.symbol.d.ts +46 -0
  756. package/vendor/typescript/lib.es2015.symbol.wellknown.d.ts +326 -0
  757. package/vendor/typescript/lib.es2016.array.include.d.ts +116 -0
  758. package/vendor/typescript/lib.es2016.d.ts +21 -0
  759. package/vendor/typescript/lib.es2016.intl.d.ts +31 -0
  760. package/vendor/typescript/lib.es2017.arraybuffer.d.ts +21 -0
  761. package/vendor/typescript/lib.es2017.d.ts +26 -0
  762. package/vendor/typescript/lib.es2017.date.d.ts +31 -0
  763. package/vendor/typescript/lib.es2017.intl.d.ts +44 -0
  764. package/vendor/typescript/lib.es2017.object.d.ts +49 -0
  765. package/vendor/typescript/lib.es2017.sharedmemory.d.ts +135 -0
  766. package/vendor/typescript/lib.es2017.string.d.ts +45 -0
  767. package/vendor/typescript/lib.es2017.typedarrays.d.ts +53 -0
  768. package/vendor/typescript/lib.es2018.asyncgenerator.d.ts +77 -0
  769. package/vendor/typescript/lib.es2018.asynciterable.d.ts +53 -0
  770. package/vendor/typescript/lib.es2018.d.ts +24 -0
  771. package/vendor/typescript/lib.es2018.intl.d.ts +83 -0
  772. package/vendor/typescript/lib.es2018.promise.d.ts +30 -0
  773. package/vendor/typescript/lib.es2018.regexp.d.ts +37 -0
  774. package/vendor/typescript/lib.es2019.array.d.ts +79 -0
  775. package/vendor/typescript/lib.es2019.d.ts +24 -0
  776. package/vendor/typescript/lib.es2019.intl.d.ts +23 -0
  777. package/vendor/typescript/lib.es2019.object.d.ts +33 -0
  778. package/vendor/typescript/lib.es2019.string.d.ts +37 -0
  779. package/vendor/typescript/lib.es2019.symbol.d.ts +24 -0
  780. package/vendor/typescript/lib.es2020.bigint.d.ts +765 -0
  781. package/vendor/typescript/lib.es2020.d.ts +27 -0
  782. package/vendor/typescript/lib.es2020.date.d.ts +42 -0
  783. package/vendor/typescript/lib.es2020.intl.d.ts +474 -0
  784. package/vendor/typescript/lib.es2020.number.d.ts +28 -0
  785. package/vendor/typescript/lib.es2020.promise.d.ts +47 -0
  786. package/vendor/typescript/lib.es2020.sharedmemory.d.ts +99 -0
  787. package/vendor/typescript/lib.es2020.string.d.ts +44 -0
  788. package/vendor/typescript/lib.es2020.symbol.wellknown.d.ts +41 -0
  789. package/vendor/typescript/lib.es2021.d.ts +23 -0
  790. package/vendor/typescript/lib.es2021.intl.d.ts +166 -0
  791. package/vendor/typescript/lib.es2021.promise.d.ts +48 -0
  792. package/vendor/typescript/lib.es2021.string.d.ts +33 -0
  793. package/vendor/typescript/lib.es2021.weakref.d.ts +78 -0
  794. package/vendor/typescript/lib.es2022.array.d.ts +121 -0
  795. package/vendor/typescript/lib.es2022.d.ts +25 -0
  796. package/vendor/typescript/lib.es2022.error.d.ts +75 -0
  797. package/vendor/typescript/lib.es2022.intl.d.ts +145 -0
  798. package/vendor/typescript/lib.es2022.object.d.ts +26 -0
  799. package/vendor/typescript/lib.es2022.regexp.d.ts +39 -0
  800. package/vendor/typescript/lib.es2022.string.d.ts +25 -0
  801. package/vendor/typescript/lib.es5.d.ts +4601 -0
  802. package/vendor/typescript/package.json +4 -0
  803. package/vendor/typescript/typescript.js +446 -0
  804. package/web/assets/index-Bh74DfsV.css +1 -0
  805. package/web/assets/index-UW0RyFFt.js +13 -0
  806. package/web/index.html +14 -0
@@ -0,0 +1,10 @@
1
+ import { createRequire as __galleryRequire } from "node:module"; import { fileURLToPath as __galleryPath } from "node:url"; const require = __galleryRequire(import.meta.url); const __filename = __galleryPath(import.meta.url); const __dirname = __galleryPath(new URL(".", import.meta.url));
2
+ import{a as i,l as C}from"./chunk-6QXGZM36.mjs";import{a as g,c as w}from"./chunk-HYMEEXKN.mjs";import{d as j,k as A,l as S}from"./chunk-W4VKN3GF.mjs";import f from"node:path";import{attr as P,hasClass as z,walk as D}from"../browser/shared/html-tree.mjs";import{projectRoot as F,sdkDirectory as O,typeRoots as Y}from"../browser/shared/paths.mjs";var H=new Set(["application/ecmascript","application/javascript","application/x-ecmascript","application/x-javascript","text/ecmascript","text/javascript","text/javascript1.0","text/javascript1.1","text/javascript1.2","text/javascript1.3","text/javascript1.4","text/javascript1.5","text/jscript","text/livescript","text/x-ecmascript","text/x-javascript"]);function y(t,{diffs:s=!1,tree:r=g(t)}={}){let n=[];return D(r,a=>{if(a.tagName!=="script"||P(a,"src")!==void 0)return;let o=(P(a,"type")||"").trim().toLowerCase(),l=s&&o==="application/json"&&a.parentNode?.tagName?a.parentNode:null,e=l&&z(l,"doc-diff")?"__declaredDiff(":void 0;if(!e&&o&&o!=="module"&&!H.has(o))return;let{startTag:c,endTag:p}=a.sourceCodeLocation??{};c&&n.push({start:c.endOffset,end:p?.startOffset??t.length,module:o==="module",...e?{call:e}:{}})},{inTemplates:!1}),n}function L(t,s,r=[]){let n=[],a=0,o="",l=e=>e.replace(/[^\r\n]/g," ");for(let{start:e,end:c,call:p}of s){let u=o+l(t.slice(a+o.length,e));if(p){let h=V(u,p,o.length);if(h===null){r.push(e);continue}u=h}n.push(u,t.slice(e,c)),a=c,o=p?");":""}return n.push(o+l(t.slice(a+o.length)),`
3
+ export {};
4
+ `),n.join("")}function V(t,s,r){let n=t.length;for(;;){let a=Math.max(t.lastIndexOf(`
5
+ `,n-1)+1,r),o=t[n-1]==="\r"?n-1:n;if(o-a>=s.length)return t.slice(0,o-s.length)+s+t.slice(o);if(a<=r)return null;n=a-1}}function Pt(t,s=g(t)){return L(t,y(t,{tree:s}))}var q=new Set(["href","src","action","formaction"]),X=t=>{try{return decodeURIComponent(t)}catch{return t}};function Z(t,s){let r=y(t,{tree:s}).map(({start:n,end:a})=>({code:t.slice(n,a),start:n,where:"the document's script"}));return D(s,n=>{for(let{name:a,value:o}of n.attrs){let l=n.sourceCodeLocation?.attrs?.[a]?.startLine??n.sourceCodeLocation?.startLine,e=q.has(a)?o.replace(/[\t\n\r]/g,"").replace(/^[\u0000-\u0020]+/,""):"";/^on[a-z]+$/.test(a)?r.push({code:o,line:l,where:`the ${a} attribute of <${n.tagName}>`}):/^javascript:/i.test(e)&&r.push({code:X(e.slice(11)),line:l,where:`the javascript: address of <${n.tagName} ${a}>`})}},{inTemplates:!1}),r}var R=new Set(["fetch","XMLHttpRequest","WebSocket","EventSource","sendBeacon","import"]),E=new Set(["window","globalThis","self"]),Q=t=>i.isIdentifier(t)?t.text==="navigator":i.isPropertyAccessExpression(t)&&t.name.text==="navigator"&&i.isIdentifier(t.expression)&&E.has(t.expression.text);function I(t){let{initializer:s}=i.walkUpBindingElementsAndPatterns(t);return!!s&&i.isIdentifier(s)&&E.has(s.text)}function tt(t){let s=t.parent;return i.isPropertyAccessExpression(s)&&s.name===t?i.isIdentifier(s.expression)&&E.has(s.expression.text):i.isBindingElement(s)&&s.propertyName===t?I(s):!((i.isPropertyAssignment(s)||i.isMethodDeclaration(s)||i.isPropertyDeclaration(s)||i.isGetAccessorDeclaration(s)||i.isSetAccessorDeclaration(s))&&s.name===t)}function et(t,s){return i.isIdentifier(t)&&s.has(t.text)&&tt(t)?{name:t.text,reference:i.isPropertyAccessExpression(t.parent)&&t.parent.name===t?t.parent:t}:i.isElementAccessExpression(t)&&i.isIdentifier(t.expression)&&E.has(t.expression.text)&&i.isStringLiteralLike(t.argumentExpression)&&s.has(t.argumentExpression.text)?{name:t.argumentExpression.text,reference:t}:i.isPropertyAccessExpression(t)&&s.has(t.name.text)&&t.name.text==="sendBeacon"&&Q(t.expression)?{name:"sendBeacon",reference:t}:s.has("import")&&i.isCallExpression(t)&&t.expression.kind===i.SyntaxKind.ImportKeyword?{name:"import",reference:t.expression}:null}function st(t,s){let r=new Map,n=(e,c)=>{let p=e.parent;for(;p&&!c(p);)p=p.parent;return p??t},a=e=>i.isFunctionLike(e)||i.isBlock(e)||i.isCaseBlock(e)||i.isForStatement(e)||i.isForInStatement(e)||i.isForOfStatement(e),o=e=>i.isFunctionExpression(e)||i.isClassExpression(e)?e:i.isFunctionDeclaration(e)||i.isClassDeclaration(e)?n(e,a):i.isCatchClause(e.parent)?e.parent:n(e,i.getCombinedNodeFlags(e)&i.NodeFlags.BlockScoped?a:i.isFunctionLike),l=e=>{(i.isParameter(e)||i.isVariableDeclaration(e)||i.isBindingElement(e)||i.isFunctionDeclaration(e)||i.isClassDeclaration(e)||i.isFunctionExpression(e)||i.isClassExpression(e))&&e.name&&i.isIdentifier(e.name)&&s.has(e.name.text)&&!(i.isBindingElement(e)&&I(e))&&r.set(e.name.text,[...r.get(e.name.text)??[],o(e)]),i.forEachChild(e,l)};return l(t),r}function rt(t,s=[]){for(let r=t;r;r=r.parent)if(s.includes(r))return!0;return!1}function Nt(t,s,{tree:r=g(t)}={}){let n=[];for(let{code:a,start:o,line:l,where:e}of Z(t,r))for(let{name:c,how:p,at:u}of k(a,s))n.push({name:c,how:p,line:l??w(t,o+u),where:e});return n.sort((a,o)=>a.line-o.line)}function k(t,s){if(![...s].some(l=>t.includes(l)))return[];let r=[],n=i.createSourceFile("code.js",t,i.ScriptTarget.Latest,!0,i.ScriptKind.JS),a=st(n,s),o=l=>{let e=et(l,s),c=e?.reference.parent;if(e&&!i.isTypeOfExpression(c)&&!(i.isIdentifier(e.reference)&&rt(l,a.get(e.name)))){let p=(i.isCallExpression(c)||i.isNewExpression(c))&&c.expression===e.reference?i.isNewExpression(c)?"new":"call":"use";r.push({name:e.name,how:p,at:l.getStart(n)})}i.forEachChild(l,o)};return o(n),r}var nt=new Set([2304,2552]),it=new Set([2300,2451,2448,2449,2450]),M=t=>nt.has(t)||it.has(t)||t>=1e3&&t<2e3;function at(t,s,r){if(!t.file||r.has(t)||M(t.code))return!1;let n=t.start??-1;return s.some(a=>!a.call&&a.start<=n&&n<a.end)}var ot=(t,s)=>/\bNumberValue\b/.test(t)||/\bd3\.(?:min|max|extent)\(/.test(s)?"; here d3 reads values of no type as strings: give the data its shape once with JSDoc, /** @type {Array<{ label: string, value: number }>} */ const rows = data;, and d3.min or d3.max may give undefined (?? 0)":"";function B(t){let s={allowJs:!0,checkJs:!0,noEmit:!0,allowUmdGlobalAccess:!0,strict:!0,noImplicitAny:!1,target:i.ScriptTarget.ES2022,module:i.ModuleKind.ESNext,moduleResolution:i.ModuleResolutionKind.Bundler,lib:["lib.es2022.d.ts","lib.dom.d.ts","lib.dom.iterable.d.ts"],types:["d3"],typeRoots:Y,skipLibCheck:!1},r=i.createCompilerHost(s),n=r.readFile.bind(r),a=r.fileExists.bind(r);return r.readFile=o=>t.get(f.resolve(o))??n(o),r.fileExists=o=>t.has(f.resolve(o))||a(o),i.createProgram([f.join(O,"index.d.ts"),...t.keys()],s,r)}var ct=/\bDoc[A-Z]\w*/,lt=(t,s)=>ct.test(s)||(t.relatedInformation??[]).some(({file:r})=>r&&f.resolve(r.fileName).startsWith(O+f.sep)),N={katex:"katex","katex-auto-render":"renderMathInElement"};function Dt(t,{assets:s=[]}={}){let r=f.join(F,"reports","__package__","kit.js"),n=t.replace(/^([ \t]*)(?:<!--|-->)/gm,"$1//"),a=s.filter(c=>Object.hasOwn(N,c)).map(c=>`declare const ${N[c]}: any;
6
+ `),o=B(new Map([[r,`${n}
7
+ export {};
8
+ `],...a.length?[[f.join(f.dirname(r),"assets.d.ts"),a.join("")]]:[]])),l=new Set(o.getSyntacticDiagnostics()),e=new Map;for(let c of i.getPreEmitDiagnostics(o)){if(!c.file||f.resolve(c.file.fileName)!==r)continue;let{line:p}=c.file.getLineAndCharacterOfPosition(c.start??0),u=i.flattenDiagnosticMessageText(c.messageText," "),h=`${p} ${u}`;e.has(h)||e.set(h,{line:p+1,code:c.code,message:u,refused:l.has(c)||M(c.code)||lt(c,u)})}return[...e.values()]}function Ft(t){let s=new Map,r=new Map,n=new Map,a=[];for(let e of t){let c=y(e.html,{diffs:!0}),p=[c.filter(m=>!m.module),...c.filter(m=>m.module).map(m=>[m])],u=f.join(F,"reports",f.basename(f.dirname(e.htmlPath)),f.basename(e.htmlPath)),h=[];p.forEach((m,x)=>{let d=`${u}.${x}.js`;s.set(d,L(e.html,m,h)),r.set(d,f.resolve(e.htmlPath)),n.set(d,m)});for(let m of h){let x=e.html.slice(0,m).split(`
9
+ `),d=f.resolve(e.htmlPath);a.push({htmlPath:f.resolve(e.htmlPath),text:`${d}:${x.length}:${x.at(-1).length+1} a declared diff's options could not be checked: write its <script type="application/json"> tag on a line of its own`})}}let o=B(s),l=new Set(o.getSyntacticDiagnostics());return[...a,...i.getPreEmitDiagnostics(o).map(e=>{let c=e.file?.getLineAndCharacterOfPosition(e.start||0),p=e.file?r.get(f.resolve(e.file.fileName))??null:null,u=p||e.file?.fileName,h=u?f.resolve(u):"SDK",m=i.flattenDiagnosticMessageText(e.messageText," "),x=p!==null&&at(e,n.get(f.resolve(e.file.fileName))??[],l);return{htmlPath:p,text:`${h}${c?`:${c.line+1}:${c.character+1}`:""} TS${e.code}: ${m}`,typeOnly:x,...x?{note:`line ${c.line+1}: TS${e.code} in the document's script (column ${c.character+1}): ${m} (strict TypeScript's word on a type: a note, not a failure; the browser runs the script as written: guard the value where it can really be null or of another type${ot(m,e.file.text.split(`
10
+ `)[c.line]??"")})`}:{}}})]}import{readFileSync as _}from"node:fs";import{BODY as pt,isInstance as ft}from"../browser/shared/components/index.mjs";import{ATTRIBUTE as K,PACKAGE_MARK as $}from"../browser/shared/components/installed.mjs";import{cssReferences as G,cssWithAddresses as ut}from"../browser/shared/css-references.mjs";import{packageScript as mt,scriptText as ht,styleText as xt}from"../browser/shared/export-wrap.mjs";import{attr as b,walk as U}from"../browser/shared/html-tree.mjs";import{mediaTypeOf as gt}from"../browser/shared/media.mjs";var dt=new RegExp(K,"i");function zt(t,{packages:s}=j(),r=null){if(!dt.test(t))return[];let n=new Set;return U(r??g(t),a=>{ft(a)&&n.add(b(a,K))},pt),[...n].map(a=>s.get(a)).filter(Boolean)}function Yt(t,s){if(s.length===0)return t;let r=s.map(A);return C(t,{styles:r.flatMap(({styles:n})=>n),scripts:r.flatMap(({scripts:n})=>n)})}function T(t,s){try{return _(S(t,s)).toString("utf8").replace(/^\uFEFF/,"")}catch{return null}}var W=/^(?:data:|#|$)/i,wt=/^(?:[a-z][a-z0-9+.-]*:|\/)/i,J=t=>t.replace(/^\.\//,"").replace(/[?#].*$/,""),Et=(t,s)=>ut(s,G(s),({value:r,kind:n})=>{let a=J(r);if(n==="import"||W.test(r)||!t.files.includes(a))return null;let o=S(t,a);return o&&`data:${gt(a)};base64,${_(o).toString("base64")}`}),v=new Set(["eval","Function"]),St=new Set([...R,...v]),yt={call:t=>`calls ${t}(\u2026)`,new:t=>`creates new ${t}(\u2026)`,use:t=>`uses ${t}`};function kt(t){if(!t.files.includes("style.css"))return[];let s=T(t,"style.css")??"";return G(s).flatMap(({value:r,kind:n,index:a})=>{let o=n==="import"?"has an @import, which an export cannot hold: write what it imports into style.css":W.test(r)?null:wt.test(r)?`loads ${r}: external resources are not portable`:t.files.includes(J(r))?null:`names ${r}, which an export cannot hold: put the file in the package and name it in its assets`;return o?[{line:w(s,a),what:o}]:[]})}function $t(t){if(!t.files.includes("kit.js"))return[];let s=T(t,"kit.js")??"";return k(s,St).filter(({name:r,how:n})=>n!=="use"||!v.has(r)).map(({name:r,how:n,at:a})=>({line:w(s,a),what:`${yt[n](r)}: ${v.has(r)?"an export runs no code made from words":"the export blocks the network; put its data in the instance"}`}))}var Ht=t=>t.flatMap(s=>[...kt(s).map(({what:r})=>`${s.id}: its style.css ${r}`),...$t(s).map(({line:r,what:n})=>`${s.id}: line ${r} of its kit.js ${n}`)]);function bt(t,s){let r=`${$}="${t.id}"`,n=T(t,s);return n===null?null:s==="kit.js"?`<script ${r}>${ht(mt(n))}</script>`:`<style ${r}>${xt(Et(t,n))}</style>`}function Vt(t,{packages:s}){if(!t.includes($))return t;let r=[];U(g(t),o=>{let l=s.get(b(o,$)),e=o.tagName==="link"?"style.css":o.tagName==="script"&&b(o,"src")!==void 0?"kit.js":null,c=o.sourceCodeLocation,p=l&&e&&c?bt(l,e):null;p&&r.push({start:c.startOffset,end:c.endOffset,copy:p})},{inTemplates:!1});let n="",a=0;for(let{start:o,end:l,copy:e}of r)n+=t.slice(a,o)+e,a=l;return n+t.slice(a)}export{Pt as a,R as b,Nt as c,k as d,Dt as e,Ft as f,zt as g,Yt as h,T as i,kt as j,$t as k,Ht as l,Vt as m};
@@ -0,0 +1,2 @@
1
+ import { createRequire as __galleryRequire } from "node:module"; import { fileURLToPath as __galleryPath } from "node:url"; const require = __galleryRequire(import.meta.url); const __filename = __galleryPath(import.meta.url); const __dirname = __galleryPath(new URL(".", import.meta.url));
2
+ import{a as A}from"./chunk-BFE45AKL.mjs";import{c as _,d as P}from"./chunk-5MHMDLZD.mjs";import"./chunk-64K7IPLO.mjs";import{b as $,f as M}from"./chunk-NSKUTQ5J.mjs";import"./chunk-5L7RYZCL.mjs";import{randomBytes as K}from"node:crypto";import{existsSync as X,readdirSync as G,readFileSync as B,statSync as R}from"node:fs";import c from"node:fs/promises";import C from"node:os";import n from"node:path";import{release as q,reportsDirectory as H,skillDirectory as J}from"../browser/shared/paths.mjs";import{copyOldDocuments as V,ensureWorkspace as Q,layoutOf as Y,oldStateOf as z}from"../browser/shared/workspace.mjs";var v={claude:{name:"Claude Code",home:t=>t.CLAUDE_CONFIG_DIR||n.join(C.homedir(),".claude"),project:".claude"},codex:{name:"Codex",home:t=>t.CODEX_HOME||n.join(C.homedir(),".codex"),project:".codex"}},x=t=>R(t,{throwIfNoEntry:!1})?.isDirectory()??!1;function Z({agent:t=null,project:e=!1,dir:r=null,cwd:o=process.cwd(),env:s=process.env}={}){if(r)return[{agent:null,target:n.resolve(o,r),skills:null}];let a=t?[t]:Object.keys(v),u=d=>e?n.join(n.resolve(o),v[d].project):n.resolve(v[d].home(s)),p=a.filter(d=>x(u(d)));return(t||p.length?t?a:p:["claude"]).map(d=>{let h=n.join(u(d),"skills");return{agent:d,target:n.join(h,"gallery"),skills:h}})}function ee(t){let e;try{e=B(n.join(t,"SKILL.md"),"utf8")}catch{return null}let r=/^---\r?\n([\s\S]*?)\r?\n---/.exec(e.replace(/^/,""));return r?/^name:\s*["']?([\w.-]+)["']?\s*$/m.exec(r[1])?.[1]??null:null}function T(t){let e=R(t,{throwIfNoEntry:!1});if(!e)return{kind:"absent"};if(!e.isDirectory())return{kind:"other",why:"it is a file"};let r=G(t);if(r.length===0)return{kind:"absent"};if(r.includes(".git"))return{kind:"other",why:"it is a git checkout"};let o=ee(t),s=u=>r.includes(u);return(s("package.json")&&s("src")||s("reports"))&&(o==="gallery"||o==="html-report-studio")?{kind:"fat",name:o}:o==="gallery"&&!s("package.json")&&!s("src")&&!s("reports")?{kind:"thin"}:{kind:"other",why:o?`its SKILL.md is the skill "${o}"`:"it holds no Gallery skill"}}function te(t){return x(t)?G(t,{withFileTypes:!0}).filter(e=>e.isDirectory()&&!e.name.startsWith(".")).map(e=>n.join(t,e.name)).filter(e=>T(e).kind==="fat"):[]}function oe(t){let e=n.join(z(t),"servers");return x(e)?G(e).filter(r=>r.endsWith(".json")).flatMap(r=>{try{let{pid:o,port:s}=JSON.parse(B(n.join(e,r),"utf8"));return!Number.isInteger(o)||o<=0||o===process.pid?[]:(process.kill(o,0),[{pid:o,port:s}])}catch(o){return o.code==="EPERM"?[{pid:Number.NaN,port:null}]:[]}}):[]}async function O(t){let e=0,r=0,o=async s=>{for(let a of await c.readdir(s,{withFileTypes:!0})){let u=n.join(s,a.name);a.isDirectory()?await o(u):(e++,r+=(await c.lstat(u)).size)}};return await o(t).catch(()=>{}),{files:e,bytes:r}}var U=t=>`${(t/1024/1024).toFixed(1)} MB`,re=(t,e)=>`${t} ${e}${t===1?"":"s"}`;async function j(t,e){for(let r=0;;r++)try{return await c.rename(t,e)}catch(o){if(process.platform!=="win32"||r>=10||!["EPERM","EBUSY","EACCES"].includes(o.code))throw o;await new Promise(s=>setTimeout(s,100*(r+1)))}}function se(t,e=new Date){let r=`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")}`,o=n.join(Y(t).gallery,`old-skill-${r}`);for(let s=1;;s++){let a=s===1?o:`${o}-${s}`;if(!X(a))return a}}async function ne(t,e){await c.mkdir(n.dirname(e),{recursive:!0});try{return await j(t,e),null}catch(s){if(s.code!=="EXDEV")return`${s.code??s.message}`}let r=await O(t);await c.cp(t,e,{recursive:!0,preserveTimestamps:!0,verbatimSymlinks:!0,errorOnExist:!0,force:!1});let o=await O(e);return o.files!==r.files||o.bytes!==r.bytes?`the copy holds ${o.files} files, ${o.bytes} bytes, of ${r.files}, ${r.bytes}: the old folder was left as it was`:(await c.rm(t,{recursive:!0,force:!0}),null)}async function W(t){let e=[],r=async o=>{for(let s of await c.readdir(o,{withFileTypes:!0})){let a=n.join(o,s.name);s.isDirectory()?await r(a):e.push([n.relative(t,a).split(n.sep).join("/"),await c.readFile(a)])}};return await r(t),e.sort(([o],[s])=>o<s?-1:o>s?1:0)}var ie=(t,e)=>t.length===e.length&&t.every(([r,o],s)=>r===e[s][0]&&o.equals(e[s][1]));async function le(t,e,r){if(r==="thin"&&ie(await W(t),await W(e)))return"same";let o=n.dirname(e);await c.mkdir(o,{recursive:!0});let s=K(4).toString("hex"),a=n.join(o,`.gallery-skill-new-${s}`);if(await c.cp(t,a,{recursive:!0}),r==="absent")return X(e)&&await c.rmdir(e),await j(a,e),"new";let u=n.join(o,`.gallery-skill-old-${s}`);await j(e,u);try{await j(a,e)}catch(p){throw await j(u,e).catch(()=>{}),await c.rm(a,{recursive:!0,force:!0}),p}return await c.rm(u,{recursive:!0,force:!0}),"updated"}async function ge(t,{version:e}){let{positional:r,options:o,values:s}=M({options:["--project"],values:["--agent","--dir"],argv:t});if(r[0]!=="install")throw new $(r.length?`No such skill command: ${r[0]} (install).`:"Say what to do: gallery skill install.");if(r.length>1)throw new $(`gallery skill install takes no other argument: ${r[1]}`);let a=s.get("--agent")??null;if(a!==null&&!Object.hasOwn(v,a))throw new $(`--agent is claude or codex, not ${a}.`);let u=s.get("--dir")??null;if(u!==null&&(a!==null||o.has("--project")))throw new $("--dir names the skill's folder itself: not with --agent or --project.");let p=Z({agent:a,project:o.has("--project"),dir:u}),d=[],h=p.map(i=>({...i,...T(i.target)}));for(let{target:i,kind:l,why:f}of h)l==="other"&&d.push(`${i} holds something that is not a Gallery skill (${f}): move it away, or pass --dir <another folder>.`);let F=[...new Set(h.flatMap(({target:i,kind:l,skills:f})=>[...l==="fat"?[i]:[],...f?te(f):[]]))];for(let i of F)for(let{pid:l,port:f}of oe(i))d.push(Number.isNaN(l)?`The older Gallery skill ${i} has a preview server running that this user cannot see: stop it first.`:`The older Gallery skill ${i} has its preview server running (pid ${l}${f?`, port ${f}`:""}): stop it first (close the window that runs it, or end process ${l}), then run gallery skill install again.`);if(d.length){for(let i of d)console.error(i);console.error("Nothing was changed."),process.exit(1)}if(F.length){let i=H;try{let{ours:l,reads:f}=await Q(i);l||(console.error(P(i,f)),process.exit(1))}catch(l){if(!l.code)throw l;console.error(_(i,l.code)),process.exit(1)}console.log(`\u5DE5\u4F5C\u533A\uFF1A${i}`);for(let l of F){console.log(`An older Gallery skill (the whole tools) is in ${l}: its documents go into the workspace, then it moves out of the skills folder.`);let f=n.join(l,"reports");if(x(f)){let m=await V({from:f,to:i,state:z(l)});for(let w of A(m,f,i))console.log(` ${w}`)}else console.log(" It holds no documents (no reports/ folder).");let y=n.join(l,"exports");if(x(y)){let m=Y(i).exports;await c.mkdir(m,{recursive:!0});let w=[],I=[];for(let E of(await c.readdir(y)).filter(b=>b.endsWith(".html")).sort())try{await c.copyFile(n.join(y,E),n.join(m,E),c.constants.COPYFILE_EXCL),w.push(E)}catch(b){if(b.code!=="EEXIST")throw b;I.push(E)}w.length&&console.log(` Exports: copied ${re(w.length,"file")} into ${m}: ${w.join(", ")}`),I.length&&console.log(` Exports not copied (the name is taken in ${m}; they stay in the moved folder's exports/): ${I.join(", ")}`)}let{bytes:g}=await O(l),k=await O(n.join(l,"node_modules")),D=se(i),L=await ne(l,D);L&&(console.error(`Could not move ${l} to ${D} (${L}). Its documents are copied; move the folder out of the skills folder yourself (it is never needed in it again), then run gallery skill install again.`),process.exit(1)),console.log(` Moved the old skill to ${D} (${U(g)}${k.files?`; its node_modules/, ${U(k.bytes)}, may be deleted: nothing reads it any more`:""}).`)}}let N=J,S=null;if(!q){let{buildSkill:i}=await import("./chunk-EZY3WC6Z.mjs");S=await c.mkdtemp(n.join(C.tmpdir(),"gallery-skill-")),N=n.join(S,"gallery"),i(N,{version:e})}try{let i=!1;for(let{agent:l,target:f}of h){let y=T(f).kind,g=await le(N,f,y),k=l?` for ${v[l].name}`:"";console.log(g==="same"?`The Gallery skill ${e}${k} is installed already, unchanged: ${f}`:`${g==="updated"?"Updated":"Installed"} the Gallery skill ${e}${k}: ${f}`),i||=g!=="same"}i&&console.log("Open a new Agent session to use it.")}finally{S&&await c.rm(S,{recursive:!0,force:!0})}}export{v as AGENTS,T as kindOf,ge as run,Z as targetsOf};
@@ -0,0 +1,77 @@
1
+ import { createRequire as __galleryRequire } from "node:module"; import { fileURLToPath as __galleryPath } from "node:url"; const require = __galleryRequire(import.meta.url); const __filename = __galleryPath(import.meta.url); const __dirname = __galleryPath(new URL(".", import.meta.url));
2
+ import{c as ge,d as q,e as Xt}from"./chunk-QAIHRH3I.mjs";import"./chunk-5L7RYZCL.mjs";function Z(a,t,e,s){e.assert.notStrictEqual(a,t,s)}function Qt(a,t){t.assert.strictEqual(typeof a,"string")}function At(a){return Object.keys(a)}function v(a){return!!a&&!!a.then&&typeof a.then=="function"}function at(a){let e=a.replace(/\s{2,}/g," ").split(/\s+(?![^[]*]|[^<]*>)/),s=/\.*[\][<>]/g,n=e.shift();if(!n)throw new Error(`No command found in: ${a}`);let o={cmd:n.replace(s,""),demanded:[],optional:[]};return e.forEach((r,h)=>{let c=!1;r=r.replace(/\s/g,""),/\.+[\]>]/.test(r)&&h===e.length-1&&(c=!0),/^\[/.test(r)?o.optional.push({cmd:r.replace(s,"").split("|"),variadic:c}):o.demanded.push({cmd:r.replace(s,"").split("|"),variadic:c})}),o}var ts=["first","second","third","fourth","fifth","sixth"];function _(a,t,e){function s(){return typeof a=="object"?[{demanded:[],optional:[]},a,t]:[at(`cmd ${a}`),t,e]}try{let n=0,[o,r,h]=s(),c=[].slice.call(r);for(;c.length&&c[c.length-1]===void 0;)c.pop();let u=h||c.length;if(u<o.demanded.length)throw new q(`Not enough arguments provided. Expected ${o.demanded.length} but received ${c.length}.`);let d=o.demanded.length+o.optional.length;if(u>d)throw new q(`Too many arguments provided. Expected max ${d} but received ${u}.`);o.demanded.forEach(l=>{let f=c.shift(),p=be(f);l.cmd.filter(g=>g===p||g==="*").length===0&&_e(p,l.cmd,n),n+=1}),o.optional.forEach(l=>{if(c.length===0)return;let f=c.shift(),p=be(f);l.cmd.filter(g=>g===p||g==="*").length===0&&_e(p,l.cmd,n),n+=1})}catch(n){console.warn(n.stack)}}function be(a){return Array.isArray(a)?"array":a===null?"null":typeof a}function _e(a,t,e){throw new q(`Invalid ${ts[e]||"manyith"} argument. Expected ${t.join(" or ")} but received ${a}.`)}var Wt=class{constructor(t){this.globalMiddleware=[],this.frozens=[],this.yargs=t}addMiddleware(t,e,s=!0,n=!1){if(_("<array|function> [boolean] [boolean] [boolean]",[t,e,s],arguments.length),Array.isArray(t)){for(let o=0;o<t.length;o++){if(typeof t[o]!="function")throw Error("middleware must be a function");let r=t[o];r.applyBeforeValidation=e,r.global=s}Array.prototype.push.apply(this.globalMiddleware,t)}else if(typeof t=="function"){let o=t;o.applyBeforeValidation=e,o.global=s,o.mutates=n,this.globalMiddleware.push(t)}return this.yargs}addCoerceMiddleware(t,e){let s=this.yargs.getAliases();return this.globalMiddleware=this.globalMiddleware.filter(n=>{let o=[...s[e]||[],e];return n.option?!o.includes(n.option):!0}),t.option=e,this.addMiddleware(t,!0,!0,!0)}getMiddleware(){return this.globalMiddleware}freeze(){this.frozens.push([...this.globalMiddleware])}unfreeze(){let t=this.frozens.pop();t!==void 0&&(this.globalMiddleware=t)}reset(){this.globalMiddleware=this.globalMiddleware.filter(t=>t.global)}};function Oe(a){return a?a.map(t=>(t.applyBeforeValidation=!1,t)):[]}function dt(a,t,e,s){return e.reduce((n,o)=>{if(o.applyBeforeValidation!==s)return n;if(o.mutates){if(o.applied)return n;o.applied=!0}if(v(n))return n.then(r=>Promise.all([r,o(r,t)])).then(([r,h])=>Object.assign(r,h));{let r=o(n,t);return v(r)?r.then(h=>Object.assign(n,h)):Object.assign(n,r)}},a)}function pt(a,t,e=s=>{throw s}){try{let s=es(a)?a():a;return v(s)?s.then(n=>t(n)):t(s)}catch(s){return e(s)}}function es(a){return typeof a=="function"}var Et=/(^\*)|(^\$0)/,kt=class{constructor(t,e,s,n){this.requireCache=new Set,this.handlers={},this.aliasMap={},this.frozens=[],this.shim=n,this.usage=t,this.globalMiddleware=s,this.validation=e}addDirectory(t,e,s,n){n=n||{},this.requireCache.add(s);let o=this.shim.path.resolve(this.shim.path.dirname(s),t),r=this.shim.readdirSync(o,{recursive:!!n.recurse});Array.isArray(n.extensions)||(n.extensions=["js"]);let h=typeof n.visit=="function"?n.visit:c=>c;for(let c of r){let u=c.toString();if(n.exclude){let l=!1;if(typeof n.exclude=="function"?l=n.exclude(u):l=n.exclude.test(u),l)continue}if(n.include){let l=!1;if(typeof n.include=="function"?l=n.include(u):l=n.include.test(u),!l)continue}let d=!1;for(let l of n.extensions)u.endsWith(l)&&(d=!0);if(d){let l=this.shim.path.join(o,u),f=e(l),p=Object.create(null,Object.getOwnPropertyDescriptors({...f}));if(h(p,l,u)){if(this.requireCache.has(l))continue;this.requireCache.add(l),p.command||(p.command=this.shim.path.basename(l,this.shim.path.extname(l))),this.addHandler(p)}}}}addHandler(t,e,s,n,o,r){let h=[],c=Oe(o);if(n=n||(()=>{}),Array.isArray(t))if(ss(t))[t,...h]=t;else for(let u of t)this.addHandler(u);else if(ns(t)){let u=Array.isArray(t.command)||typeof t.command=="string"?t.command:null;if(u===null)throw new Error(`No command name given for module: ${this.shim.inspect(t)}`);t.aliases&&(u=[].concat(u).concat(t.aliases)),this.addHandler(u,this.extractDesc(t),t.builder,t.handler,t.middlewares,t.deprecated);return}else if(we(s)){this.addHandler([t].concat(h),e,s.builder,s.handler,s.middlewares,s.deprecated);return}if(typeof t=="string"){let u=at(t);h=h.map(f=>at(f).cmd);let d=!1,l=[u.cmd].concat(h).filter(f=>Et.test(f)?(d=!0,!1):!0);l.length===0&&d&&l.push("$0"),d&&(u.cmd=l[0],h=l.slice(1),t=t.replace(Et,u.cmd)),h.forEach(f=>{this.aliasMap[f]=u.cmd}),e!==!1&&this.usage.command(t,e,d,h,r),this.handlers[u.cmd]={original:t,description:e,handler:n,builder:s||{},middlewares:c,deprecated:r,demanded:u.demanded,optional:u.optional},d&&(this.defaultCommand=this.handlers[u.cmd])}}getCommandHandlers(){return this.handlers}getCommands(){return Object.keys(this.handlers).concat(Object.keys(this.aliasMap))}hasDefaultCommand(){return!!this.defaultCommand}runCommand(t,e,s,n,o,r){let h=this.handlers[t]||this.handlers[this.aliasMap[t]]||this.defaultCommand,c=e.getInternalMethods().getContext(),u=c.commands.slice(),d=!t;t&&(c.commands.push(t),c.fullCommands.push(h.original));let l=this.applyBuilderUpdateUsageAndParse(d,h,e,s.aliases,u,n,o,r);return v(l)?l.then(f=>this.applyMiddlewareAndGetResult(d,h,f.innerArgv,c,o,f.aliases,e)):this.applyMiddlewareAndGetResult(d,h,l.innerArgv,c,o,l.aliases,e)}applyBuilderUpdateUsageAndParse(t,e,s,n,o,r,h,c){let u=e.builder,d=s;if(Ut(u)){s.getInternalMethods().getUsageInstance().freeze();let l=u(s.getInternalMethods().reset(n),c);if(v(l))return l.then(f=>(d=je(f)?f:s,this.parseAndUpdateUsage(t,e,d,o,r,h)))}else is(u)&&(s.getInternalMethods().getUsageInstance().freeze(),d=s.getInternalMethods().reset(n),Object.keys(e.builder).forEach(l=>{d.option(l,u[l])}));return this.parseAndUpdateUsage(t,e,d,o,r,h)}parseAndUpdateUsage(t,e,s,n,o,r){t&&s.getInternalMethods().getUsageInstance().unfreeze(!0),this.shouldUpdateUsage(s)&&s.getInternalMethods().getUsageInstance().usage(this.usageFromParentCommandsCommandHandler(n,e),e.description);let h=s.getInternalMethods().runYargsParserAndExecuteCommands(null,void 0,!0,o,r);return v(h)?h.then(c=>({aliases:s.parsed.aliases,innerArgv:c})):{aliases:s.parsed.aliases,innerArgv:h}}shouldUpdateUsage(t){return!t.getInternalMethods().getUsageInstance().getUsageDisabled()&&t.getInternalMethods().getUsageInstance().getUsage().length===0}usageFromParentCommandsCommandHandler(t,e){let s=Et.test(e.original)?e.original.replace(Et,"").trim():e.original,n=t.filter(o=>!Et.test(o));return n.push(s),`$0 ${n.join(" ")}`}handleValidationAndGetResult(t,e,s,n,o,r,h,c){if(!r.getInternalMethods().getHasOutput()){let u=r.getInternalMethods().runValidation(o,c,r.parsed.error,t);s=pt(s,d=>(u(d),d))}if(e.handler&&!r.getInternalMethods().getHasOutput()){r.getInternalMethods().setHasOutput();let u=!!r.getOptions().configuration["populate--"];r.getInternalMethods().postProcess(s,u,!1,!1),s=dt(s,r,h,!1),s=pt(s,d=>{let l=e.handler(d);return v(l)?l.then(()=>d):d}),t||r.getInternalMethods().getUsageInstance().cacheHelpMessage(),v(s)&&!r.getInternalMethods().hasParseCallback()&&s.catch(d=>{try{r.getInternalMethods().getUsageInstance().fail(null,d)}catch{}})}return t||(n.commands.pop(),n.fullCommands.pop()),s}applyMiddlewareAndGetResult(t,e,s,n,o,r,h){let c={};if(o)return s;h.getInternalMethods().getHasOutput()||(c=this.populatePositionals(e,s,n,h));let u=this.globalMiddleware.getMiddleware().slice(0).concat(e.middlewares),d=dt(s,h,u,!0);return v(d)?d.then(l=>this.handleValidationAndGetResult(t,e,l,n,r,h,u,c)):this.handleValidationAndGetResult(t,e,d,n,r,h,u,c)}populatePositionals(t,e,s,n){e._=e._.slice(s.commands.length);let o=t.demanded.slice(0),r=t.optional.slice(0),h={};for(this.validation.positionalCount(o.length,e._.length);o.length;){let c=o.shift();this.populatePositional(c,e,h)}for(;r.length;){let c=r.shift();this.populatePositional(c,e,h)}return e._=s.commands.concat(e._.map(c=>""+c)),this.postProcessPositionals(e,h,this.cmdToParseOptions(t.original),n),h}populatePositional(t,e,s){let n=t.cmd[0];t.variadic?s[n]=e._.splice(0).map(String):e._.length&&(s[n]=[String(e._.shift())])}cmdToParseOptions(t){let e={array:[],default:{},alias:{},demand:{}},s=at(t);return s.demanded.forEach(n=>{let[o,...r]=n.cmd;n.variadic&&(e.array.push(o),e.default[o]=[]),e.alias[o]=r,e.demand[o]=!0}),s.optional.forEach(n=>{let[o,...r]=n.cmd;n.variadic&&(e.array.push(o),e.default[o]=[]),e.alias[o]=r}),e}postProcessPositionals(t,e,s,n){let o=Object.assign({},n.getOptions());o.default=Object.assign(s.default,o.default);for(let u of Object.keys(s.alias))o.alias[u]=(o.alias[u]||[]).concat(s.alias[u]);o.array=o.array.concat(s.array),o.config={};let r=[];if(Object.keys(e).forEach(u=>{e[u].map(d=>{o.configuration["unknown-options-as-args"]&&(o.key[u]=!0),r.push(`--${u}`),r.push(d)})}),!r.length)return;let h=Object.assign({},o.configuration,{"populate--":!1}),c=this.shim.Parser.detailed(r,Object.assign({},o,{configuration:h}));if(c.error)n.getInternalMethods().getUsageInstance().fail(c.error.message,c.error);else{let u=Object.keys(e);Object.keys(e).forEach(d=>{u.push(...c.aliases[d])}),Object.keys(c.argv).forEach(d=>{u.includes(d)&&(e[d]||(e[d]=c.argv[d]),!this.isInConfigs(n,d)&&!this.isDefaulted(n,d)&&Object.prototype.hasOwnProperty.call(t,d)&&Object.prototype.hasOwnProperty.call(c.argv,d)&&(Array.isArray(t[d])||Array.isArray(c.argv[d]))?t[d]=[].concat(t[d],c.argv[d]):t[d]=c.argv[d])})}}isDefaulted(t,e){let{default:s}=t.getOptions();return Object.prototype.hasOwnProperty.call(s,e)||Object.prototype.hasOwnProperty.call(s,this.shim.Parser.camelCase(e))}isInConfigs(t,e){let{configObjects:s}=t.getOptions();return s.some(n=>Object.prototype.hasOwnProperty.call(n,e))||s.some(n=>Object.prototype.hasOwnProperty.call(n,this.shim.Parser.camelCase(e)))}runDefaultBuilderOn(t){if(!this.defaultCommand)return;if(this.shouldUpdateUsage(t)){let s=Et.test(this.defaultCommand.original)?this.defaultCommand.original:this.defaultCommand.original.replace(/^[^[\]<>]*/,"$0 ");t.getInternalMethods().getUsageInstance().usage(s,this.defaultCommand.description)}let e=this.defaultCommand.builder;if(Ut(e))return e(t,!0);we(e)||Object.keys(e).forEach(s=>{t.option(s,e[s])})}extractDesc({describe:t,description:e,desc:s}){for(let n of[t,e,s]){if(typeof n=="string"||n===!1)return n;Z(n,!0,this.shim)}return!1}freeze(){this.frozens.push({handlers:this.handlers,aliasMap:this.aliasMap,defaultCommand:this.defaultCommand})}unfreeze(){let t=this.frozens.pop();Z(t,void 0,this.shim),{handlers:this.handlers,aliasMap:this.aliasMap,defaultCommand:this.defaultCommand}=t}reset(){return this.handlers={},this.aliasMap={},this.defaultCommand=void 0,this.requireCache=new Set,this}};function Ce(a,t,e,s){return new kt(a,t,e,s)}function we(a){return typeof a=="object"&&!!a.builder&&typeof a.handler=="function"}function ss(a){return a.every(t=>typeof t=="string")}function Ut(a){return typeof a=="function"}function is(a){return typeof a=="object"}function ns(a){return typeof a=="object"&&!Array.isArray(a)}function lt(a={},t=()=>!0){let e={};return At(a).forEach(s=>{t(s,a[s])&&(e[s]=a[s])}),e}function ht(a){typeof process>"u"||[process.stdout,process.stderr].forEach(t=>{let e=t;e._handle&&e.isTTY&&typeof e._handle.setBlocking=="function"&&e._handle.setBlocking(a)})}function os(a){return typeof a=="boolean"}function Pe(a,t){let e=t.y18n.__,s={},n=[];s.failFn=function(b){n.push(b)};let o=null,r=null,h=!0;s.showHelpOnFail=function(b=!0,C){let[M,$]=typeof b=="string"?[!0,b]:[b,C];return a.getInternalMethods().isGlobalContext()&&(r=$),o=$,h=M,s};let c=!1;s.fail=function(b,C){let M=a.getInternalMethods().getLoggerInstance();if(n.length)for(let $=n.length-1;$>=0;--$){let T=n[$];if(os(T)){if(C)throw C;if(b)throw Error(b)}else T(b,C,s)}else{if(a.getExitProcess()&&ht(!0),!c){c=!0,h&&(a.showHelp("error"),M.error()),(b||C)&&M.error(b||C);let $=o||r;$&&((b||C)&&M.error(""),M.error($))}if(C=C||new q(b),a.getExitProcess())return a.exit(1);if(a.getInternalMethods().hasParseCallback())return a.exit(1,C);throw C}};let u=[],d=!1;s.usage=(j,b)=>j===null?(d=!0,u=[],s):(d=!1,u.push([j,b||""]),s),s.getUsage=()=>u,s.getUsageDisabled=()=>d,s.getPositionalGroupName=()=>e("Positionals:");let l=[];s.example=(j,b)=>{l.push([j,b||""])};let f=[];s.command=function(b,C,M,$,T=!1){M&&(f=f.map(I=>(I[2]=!1,I))),f.push([b,C||"",M,$,T])},s.getCommands=()=>f;let p={};s.describe=function(b,C){Array.isArray(b)?b.forEach(M=>{s.describe(M,C)}):typeof b=="object"?Object.keys(b).forEach(M=>{s.describe(M,b[M])}):p[b]=C},s.getDescriptions=()=>p;let m=[];s.epilog=j=>{m.push(j)};let g=!1,x;s.wrap=j=>{g=!0,x=j},s.getWrap=()=>t.getEnv("YARGS_DISABLE_WRAP")?null:(g||(x=it(),g=!0),x);let E="__yargsString__:";s.deferY18nLookup=j=>E+j,s.help=function(){if(D)return D;H();let b=a.customScriptName?a.$0:t.path.basename(a.$0),C=a.getDemandedOptions(),M=a.getDemandedCommands(),$=a.getDeprecatedOptions(),T=a.getGroups(),I=a.getOptions(),R=[];R=R.concat(Object.keys(p)),R=R.concat(Object.keys(C)),R=R.concat(Object.keys(M)),R=R.concat(Object.keys(I.default)),R=R.filter(z),R=Object.keys(R.reduce((P,U)=>(U!=="_"&&(P[U]=!0),P),{}));let vt=s.getWrap(),L=t.cliui({width:vt,wrap:!!vt});if(!d){if(u.length)u.forEach(P=>{L.div({text:`${P[0].replace(/\$0/g,b)}`}),P[1]&&L.div({text:`${P[1]}`,padding:[1,0,0,0]})}),L.div();else if(f.length){let P=null;M._?P=`${b} <${e("command")}>
3
+ `:P=`${b} [${e("command")}]
4
+ `,L.div(`${P}`)}}if(f.length>1||f.length===1&&!f[0][2]){L.div(e("Commands:"));let P=a.getInternalMethods().getContext(),U=P.commands.length?`${P.commands.join(" ")} `:"";a.getInternalMethods().getParserConfiguration()["sort-commands"]===!0&&(f=f.sort((A,B)=>A[0].localeCompare(B[0])));let K=b?`${b} `:"";f.forEach(A=>{let B=`${K}${U}${A[0].replace(/^\$0 ?/,"")}`;L.span({text:B,padding:[0,2,0,2],width:W(f,vt,`${b}${U}`)+4},{text:A[1]});let N=[];A[2]&&N.push(`[${e("default")}]`),A[3]&&A[3].length&&N.push(`[${e("aliases:")} ${A[3].join(", ")}]`),A[4]&&(typeof A[4]=="string"?N.push(`[${e("deprecated: %s",A[4])}]`):N.push(`[${e("deprecated")}]`)),N.length?L.div({text:N.join(" "),padding:[0,0,0,2],align:"right"}):L.div()}),L.div()}let Bt=(Object.keys(I.alias)||[]).concat(Object.keys(a.parsed.newAliases)||[]);R=R.filter(P=>!a.parsed.newAliases[P]&&Bt.every(U=>(I.alias[U]||[]).indexOf(P)===-1));let Zt=e("Options:");T[Zt]||(T[Zt]=[]),Mt(R,I.alias,T,Zt);let Dt=P=>/^--/.test(Ft(P)),Jt=Object.keys(T).filter(P=>T[P].length>0).map(P=>{let U=T[P].filter(z).map(K=>{if(Bt.includes(K))return K;for(let A=0,B;(B=Bt[A])!==void 0;A++)if((I.alias[B]||[]).includes(K))return B;return K});return{groupName:P,normalizedKeys:U}}).filter(({normalizedKeys:P})=>P.length>0).map(({groupName:P,normalizedKeys:U})=>{let K=U.reduce((A,B)=>(A[B]=[B].concat(I.alias[B]||[]).map(N=>P===s.getPositionalGroupName()?N:(/^[0-9]$/.test(N)?I.boolean.includes(B)?"-":"--":N.length>1?"--":"-")+N).sort((N,rt)=>Dt(N)===Dt(rt)?0:Dt(N)?1:-1).join(", "),A),{});return{groupName:P,normalizedKeys:U,switches:K}});if(Jt.filter(({groupName:P})=>P!==s.getPositionalGroupName()).some(({normalizedKeys:P,switches:U})=>!P.every(K=>Dt(U[K])))&&Jt.filter(({groupName:P})=>P!==s.getPositionalGroupName()).forEach(({normalizedKeys:P,switches:U})=>{P.forEach(K=>{Dt(U[K])&&(U[K]=rs(U[K],4))})}),Jt.forEach(({groupName:P,normalizedKeys:U,switches:K})=>{L.div(P),U.forEach(A=>{let B=K[A],N=p[A]||"",rt=null;N.includes(E)&&(N=e(N.substring(E.length))),I.boolean.includes(A)&&(rt=`[${e("boolean")}]`),I.count.includes(A)&&(rt=`[${e("count")}]`),I.string.includes(A)&&(rt=`[${e("string")}]`),I.normalize.includes(A)&&(rt=`[${e("string")}]`),I.array.includes(A)&&(rt=`[${e("array")}]`),I.number.includes(A)&&(rt=`[${e("number")}]`);let Qe=me=>typeof me=="string"?`[${e("deprecated: %s",me)}]`:`[${e("deprecated")}]`,pe=[A in $?Qe($[A]):null,rt,A in C?`[${e("required")}]`:null,I.choices&&I.choices[A]?`[${e("choices:")} ${s.stringifiedValues(I.choices[A])}]`:null,V(I.default[A],I.defaultDescription[A])].filter(Boolean).join(" ");L.span({text:Ft(B),padding:[0,2,0,2+ye(B)],width:W(K,vt)+4},N);let ke=a.getInternalMethods().getUsageConfiguration()["hide-types"]===!0;pe&&!ke?L.div({text:pe,padding:[0,0,0,2],align:"right"}):L.div()}),L.div()}),l.length&&(L.div(e("Examples:")),l.forEach(P=>{P[0]=P[0].replace(/\$0/g,b)}),l.forEach(P=>{P[1]===""?L.div({text:P[0],padding:[0,2,0,2]}):L.div({text:P[0],padding:[0,2,0,2],width:W(l,vt)+4},{text:P[1]})}),L.div()),m.length>0){let P=m.map(U=>U.replace(/\$0/g,b)).join(`
5
+ `);L.div(`${P}
6
+ `)}return L.toString().replace(/\s*$/,"")};function W(j,b,C){let M=0;return Array.isArray(j)||(j=Object.values(j).map($=>[$])),j.forEach($=>{M=Math.max(t.stringWidth(C?`${C} ${Ft($[0])}`:Ft($[0]))+ye($[0]),M)}),b&&(M=Math.min(M,parseInt((b*.5).toString(),10))),M}function H(){let j=a.getDemandedOptions(),b=a.getOptions();(Object.keys(b.alias)||[]).forEach(C=>{b.alias[C].forEach(M=>{p[M]&&s.describe(C,p[M]),M in j&&a.demandOption(C,j[M]),b.boolean.includes(M)&&a.boolean(C),b.count.includes(M)&&a.count(C),b.string.includes(M)&&a.string(C),b.normalize.includes(M)&&a.normalize(C),b.array.includes(M)&&a.array(C),b.number.includes(M)&&a.number(C)})})}let D;s.cacheHelpMessage=function(){D=this.help()},s.clearCachedHelpMessage=function(){D=void 0},s.hasCachedHelpMessage=function(){return!!D};function Mt(j,b,C,M){let $=[],T=null;return Object.keys(C).forEach(I=>{$=$.concat(C[I])}),j.forEach(I=>{T=[I].concat(b[I]),T.some(R=>$.indexOf(R)!==-1)||C[M].push(I)}),$}function z(j){return a.getOptions().hiddenOptions.indexOf(j)<0||a.parsed.argv[a.getOptions().showHiddenOpt]}s.showHelp=j=>{let b=a.getInternalMethods().getLoggerInstance();j||(j="error"),(typeof j=="function"?j:b[j])(s.help())},s.functionDescription=j=>["(",j.name?t.Parser.decamelize(j.name,"-"):e("generated-value"),")"].join(""),s.stringifiedValues=function(b,C){let M="",$=C||", ",T=[].concat(b);return!b||!T.length||T.forEach(I=>{M.length&&(M+=$),M+=JSON.stringify(I)}),M};function V(j,b){let C=`[${e("default:")} `;if(j===void 0&&!b)return null;if(b)C+=b;else switch(typeof j){case"string":C+=`"${j}"`;break;case"object":C+=JSON.stringify(j);break;default:C+=j}return`${C}]`}function it(){return t.process.stdColumns?Math.min(80,t.process.stdColumns):80}let xt=null;s.version=j=>{xt=j},s.showVersion=j=>{let b=a.getInternalMethods().getLoggerInstance();j||(j="error"),(typeof j=="function"?j:b[j])(xt)},s.reset=function(b){return o=null,c=!1,u=[],d=!1,m=[],l=[],f=[],p=lt(p,C=>!b[C]),s};let de=[];return s.freeze=function(){de.push({failMessage:o,failureOutput:c,usages:u,usageDisabled:d,epilogs:m,examples:l,commands:f,descriptions:p})},s.unfreeze=function(b=!1){let C=de.pop();C&&(b?(p={...C.descriptions,...p},f=[...C.commands,...f],u=[...C.usages,...u],l=[...C.examples,...l],m=[...C.epilogs,...m]):{failMessage:o,failureOutput:c,usages:u,usageDisabled:d,epilogs:m,examples:l,commands:f,descriptions:p}=C)},s}function te(a){return typeof a=="object"}function rs(a,t){return te(a)?{text:a.text,indentation:a.indentation+t}:{text:a,indentation:t}}function ye(a){return te(a)?a.indentation:0}function Ft(a){return te(a)?a.text:a}var Se=`###-begin-{{app_name}}-completions-###
7
+ #
8
+ # yargs command completion script
9
+ #
10
+ # Installation: {{app_path}} {{completion_command}} >> ~/.bashrc
11
+ # or {{app_path}} {{completion_command}} >> ~/.bash_profile on OSX.
12
+ #
13
+ _{{app_name}}_yargs_completions()
14
+ {
15
+ local cur_word args type_list
16
+
17
+ cur_word="\${COMP_WORDS[COMP_CWORD]}"
18
+ args=("\${COMP_WORDS[@]}")
19
+
20
+ # ask yargs to generate completions.
21
+ # see https://stackoverflow.com/a/40944195/7080036 for the spaces-handling awk
22
+ mapfile -t type_list < <({{app_path}} --get-yargs-completions "\${args[@]}")
23
+ mapfile -t COMPREPLY < <(compgen -W "$( printf '%q ' "\${type_list[@]}" )" -- "\${cur_word}" |
24
+ awk '/ / { print "\\""$0"\\"" } /^[^ ]+$/ { print $0 }')
25
+
26
+ # if no match was found, fall back to filename completion
27
+ if [ \${#COMPREPLY[@]} -eq 0 ]; then
28
+ COMPREPLY=()
29
+ fi
30
+
31
+ return 0
32
+ }
33
+ complete -o bashdefault -o default -F _{{app_name}}_yargs_completions {{app_name}}
34
+ ###-end-{{app_name}}-completions-###
35
+ `,Me=`#compdef {{app_name}}
36
+ ###-begin-{{app_name}}-completions-###
37
+ #
38
+ # yargs command completion script
39
+ #
40
+ # Installation: {{app_path}} {{completion_command}} >> ~/.zshrc
41
+ # or {{app_path}} {{completion_command}} >> ~/.zprofile on OSX.
42
+ #
43
+ _{{app_name}}_yargs_completions()
44
+ {
45
+ local reply
46
+ local si=$IFS
47
+ IFS=$'
48
+ ' reply=($(COMP_CWORD="$((CURRENT-1))" COMP_LINE="$BUFFER" COMP_POINT="$CURSOR" {{app_path}} --get-yargs-completions "\${words[@]}"))
49
+ IFS=$si
50
+ if [[ \${#reply} -gt 0 ]]; then
51
+ _describe 'values' reply
52
+ else
53
+ _default
54
+ fi
55
+ }
56
+ if [[ "\${zsh_eval_context[-1]}" == "loadautofunc" ]]; then
57
+ _{{app_name}}_yargs_completions "$@"
58
+ else
59
+ compdef _{{app_name}}_yargs_completions {{app_name}}
60
+ fi
61
+ ###-end-{{app_name}}-completions-###
62
+ `,xe=`###-begin-{{app_name}}-completions-###
63
+ #
64
+ # yargs command completion script
65
+ #
66
+ # Installation: {{app_path}} {{completion_command}} > ~/.config/fish/completions/{{app_name}}.fish
67
+ #
68
+ complete -f -c {{app_name}} -a '({{app_path}} --get-yargs-completions (commandline -o)[2..-1])'
69
+ ###-end-{{app_name}}-completions-###
70
+ `;var ee=class{constructor(t,e,s,n){var o,r,h,c,u;this.yargs=t,this.usage=e,this.command=s,this.shim=n,this.completionKey="get-yargs-completions",this.aliases=null,this.customCompletionFunction=null,this.indexAfterLastReset=0,this.zshShell=(h=((o=this.shim.getEnv("SHELL"))===null||o===void 0?void 0:o.includes("zsh"))||((r=this.shim.getEnv("ZSH_NAME"))===null||r===void 0?void 0:r.includes("zsh")))!==null&&h!==void 0?h:!1,this.fishShell=(u=(c=this.shim.getEnv("SHELL"))===null||c===void 0?void 0:c.includes("fish"))!==null&&u!==void 0?u:!1}defaultCompletion(t,e,s,n){let o=this.command.getCommandHandlers();for(let h=0,c=t.length;h<c;++h)if(o[t[h]]&&o[t[h]].builder){let u=o[t[h]].builder;if(Ut(u)){this.indexAfterLastReset=h+1;let d=this.yargs.getInternalMethods().reset();return u(d,!0),d.argv}}let r=[];this.commandCompletions(r,t,s),this.optionCompletions(r,t,e,s),this.choicesFromOptionsCompletions(r,t,e,s),this.choicesFromPositionalsCompletions(r,t,e,s),n(null,r)}commandCompletions(t,e,s){let n=this.yargs.getInternalMethods().getContext().commands;!s.match(/^-/)&&n[n.length-1]!==s&&!this.previousArgHasChoices(e)&&this.usage.getCommands().forEach(o=>{let r=at(o[0]).cmd;if(e.indexOf(r)===-1){let h=o[1]||"";this.fishShell?t.push(r+" "+h):this.zshShell?t.push(r.replace(/:/g,"\\:")+":"+h):t.push(r)}})}optionCompletions(t,e,s,n){if((n.match(/^-/)||n===""&&t.length===0)&&!this.previousArgHasChoices(e)){let o=this.yargs.getOptions(),r=this.yargs.getGroups()[this.usage.getPositionalGroupName()]||[];Object.keys(o.key).forEach(h=>{let c=!!o.configuration["boolean-negation"]&&o.boolean.includes(h);!r.includes(h)&&!o.hiddenOptions.includes(h)&&!this.argsContainKey(e,h,c)&&this.completeOptionKey(h,t,n,c&&!!o.default[h])})}}choicesFromOptionsCompletions(t,e,s,n){if(this.previousArgHasChoices(e)){let o=this.getPreviousArgChoices(e);o&&o.length>0&&(this.fishShell?t.push(...o):t.push(...o.map(r=>r.replace(/:/g,"\\:"))))}}choicesFromPositionalsCompletions(t,e,s,n){if(n===""&&t.length>0&&this.previousArgHasChoices(e))return;let o=this.yargs.getGroups()[this.usage.getPositionalGroupName()]||[],r=Math.max(this.indexAfterLastReset,this.yargs.getInternalMethods().getContext().commands.length+1),h=o[s._.length-r-1];if(!h)return;let c=this.yargs.getOptions().choices[h]||[];for(let u of c)u.startsWith(n)&&(this.fishShell?t.push(u):t.push(u.replace(/:/g,"\\:")))}getPreviousArgChoices(t){if(t.length<1)return;let e=t[t.length-1],s="";if(!e.startsWith("-")&&t.length>1&&(s=e,e=t[t.length-2]),!e.startsWith("-"))return;let n=e.replace(/^-+/,""),o=this.yargs.getOptions(),r=[n,...this.yargs.getAliases()[n]||[]],h;for(let c of r)if(Object.prototype.hasOwnProperty.call(o.key,c)&&Array.isArray(o.choices[c])){h=o.choices[c];break}if(h)return h.filter(c=>!s||c.startsWith(s))}previousArgHasChoices(t){let e=this.getPreviousArgChoices(t);return e!==void 0&&e.length>0}argsContainKey(t,e,s){let n=o=>t.indexOf((/^[^0-9]$/.test(o)?"-":"--")+o)!==-1;if(n(e)||s&&n(`no-${e}`))return!0;if(this.aliases){for(let o of this.aliases[e])if(n(o))return!0}return!1}completeOptionKey(t,e,s,n){var o,r,h,c;let u=t;if(this.zshShell||this.fishShell){let p=this.usage.getDescriptions(),m=(r=(o=this===null||this===void 0?void 0:this.aliases)===null||o===void 0?void 0:o[t])===null||r===void 0?void 0:r.find(W=>{let H=p[W];return typeof H=="string"&&H.length>0}),g=m?p[m]:void 0,E=((c=(h=p[t])!==null&&h!==void 0?h:g)!==null&&c!==void 0?c:"").replace("__yargsString__:","").replace(/(\r\n|\n|\r)/gm," ");this.fishShell?u=`${t} ${E}`:u=`${t.replace(/:/g,"\\:")}:${E}`}let d=p=>/^--/.test(p),l=p=>/^[^0-9]$/.test(p),f=!d(s)&&l(t)?"-":"--";e.push(f+u),n&&e.push(f+"no-"+u)}customCompletion(t,e,s,n){if(Z(this.customCompletionFunction,null,this.shim),ls(this.customCompletionFunction)){let o=this.customCompletionFunction(s,e);return v(o)?o.then(r=>{this.shim.process.nextTick(()=>{n(null,r)})}).catch(r=>{this.shim.process.nextTick(()=>{n(r,void 0)})}):n(null,o)}else return hs(this.customCompletionFunction)?this.customCompletionFunction(s,e,(o=n)=>this.defaultCompletion(t,e,s,o),o=>{n(null,o)}):this.customCompletionFunction(s,e,o=>{n(null,o)})}getCompletion(t,e){let s=t.length?t[t.length-1]:"",n=this.yargs.parse(t,!0),o=this.customCompletionFunction?r=>this.customCompletion(t,r,s,e):r=>this.defaultCompletion(t,r,s,e);return v(n)?n.then(o):o(n)}generateCompletionScript(t,e){let s;this.zshShell?s=Me:this.fishShell?s=xe:s=Se;let n=this.shim.path.basename(t);return t.match(/\.js$/)&&(t=`./${t}`),s=s.replace(/{{app_name}}/g,n),s=s.replace(/{{completion_command}}/g,e),s.replace(/{{app_path}}/g,t)}registerFunction(t){this.customCompletionFunction=t}setParsed(t){this.aliases=t.aliases}};function Ae(a,t,e,s){return new ee(a,t,e,s)}function ls(a){return a.length<3}function hs(a){return a.length>3}function Ee(a,t){if(a.length===0)return t.length;if(t.length===0)return a.length;let e=[],s;for(s=0;s<=t.length;s++)e[s]=[s];let n;for(n=0;n<=a.length;n++)e[0][n]=n;for(s=1;s<=t.length;s++)for(n=1;n<=a.length;n++)t.charAt(s-1)===a.charAt(n-1)?e[s][n]=e[s-1][n-1]:s>1&&n>1&&t.charAt(s-2)===a.charAt(n-1)&&t.charAt(s-1)===a.charAt(n-2)?e[s][n]=e[s-2][n-2]+1:e[s][n]=Math.min(e[s-1][n-1]+1,Math.min(e[s][n-1]+1,e[s-1][n]+1));return e[t.length][a.length]}var Ie=["$0","--","_"];function $e(a,t,e){let s=e.y18n.__,n=e.y18n.__n,o={};o.nonOptionCount=function(l){let f=a.getDemandedCommands(),m=l._.length+(l["--"]?l["--"].length:0)-a.getInternalMethods().getContext().commands.length;f._&&(m<f._.min||m>f._.max)&&(m<f._.min?f._.minMsg!==void 0?t.fail(f._.minMsg?f._.minMsg.replace(/\$0/g,m.toString()).replace(/\$1/,f._.min.toString()):null):t.fail(n("Not enough non-option arguments: got %s, need at least %s","Not enough non-option arguments: got %s, need at least %s",m,m.toString(),f._.min.toString())):m>f._.max&&(f._.maxMsg!==void 0?t.fail(f._.maxMsg?f._.maxMsg.replace(/\$0/g,m.toString()).replace(/\$1/,f._.max.toString()):null):t.fail(n("Too many non-option arguments: got %s, maximum of %s","Too many non-option arguments: got %s, maximum of %s",m,m.toString(),f._.max.toString()))))},o.positionalCount=function(l,f){f<l&&t.fail(n("Not enough non-option arguments: got %s, need at least %s","Not enough non-option arguments: got %s, need at least %s",f,f+"",l+""))},o.requiredArguments=function(l,f){let p=null;for(let m of Object.keys(f))(!Object.prototype.hasOwnProperty.call(l,m)||typeof l[m]>"u")&&(p=p||{},p[m]=f[m]);if(p){let m=[];for(let x of Object.keys(p)){let E=p[x];E&&m.indexOf(E)<0&&m.push(E)}let g=m.length?`
71
+ ${m.join(`
72
+ `)}`:"";t.fail(n("Missing required argument: %s","Missing required arguments: %s",Object.keys(p).length,Object.keys(p).join(", ")+g))}},o.unknownArguments=function(l,f,p,m,g=!0){var x;let E=a.getInternalMethods().getCommandInstance().getCommands(),W=[],H=a.getInternalMethods().getContext();if(Object.keys(l).forEach(D=>{!Ie.includes(D)&&!Object.prototype.hasOwnProperty.call(p,D)&&!Object.prototype.hasOwnProperty.call(a.getInternalMethods().getParseContext(),D)&&!o.isValidAndSomeAliasIsNotNew(D,f)&&W.push(D)}),g&&(H.commands.length>0||E.length>0||m)&&l._.slice(H.commands.length).forEach(D=>{E.includes(""+D)||W.push(""+D)}),g){let Mt=((x=a.getDemandedCommands()._)===null||x===void 0?void 0:x.max)||0,z=H.commands.length+Mt;z<l._.length&&l._.slice(z).forEach(V=>{V=String(V),!H.commands.includes(V)&&!W.includes(V)&&W.push(V)})}W.length&&t.fail(n("Unknown argument: %s","Unknown arguments: %s",W.length,W.map(D=>D.trim()?D:`"${D}"`).join(", ")))},o.unknownCommands=function(l){let f=a.getInternalMethods().getCommandInstance().getCommands(),p=[],m=a.getInternalMethods().getContext();return(m.commands.length>0||f.length>0)&&l._.slice(m.commands.length).forEach(g=>{f.includes(""+g)||p.push(""+g)}),p.length>0?(t.fail(n("Unknown command: %s","Unknown commands: %s",p.length,p.join(", "))),!0):!1},o.isValidAndSomeAliasIsNotNew=function(l,f){if(!Object.prototype.hasOwnProperty.call(f,l))return!1;let p=a.parsed.newAliases;return[l,...f[l]].some(m=>!Object.prototype.hasOwnProperty.call(p,m)||!p[l])},o.limitedChoices=function(l){let f=a.getOptions(),p={};if(!Object.keys(f.choices).length)return;Object.keys(l).forEach(x=>{Ie.indexOf(x)===-1&&Object.prototype.hasOwnProperty.call(f.choices,x)&&[].concat(l[x]).forEach(E=>{f.choices[x].indexOf(E)===-1&&E!==void 0&&(p[x]=(p[x]||[]).concat(E))})});let m=Object.keys(p);if(!m.length)return;let g=s("Invalid values:");m.forEach(x=>{g+=`
73
+ ${s("Argument: %s, Given: %s, Choices: %s",x,t.stringifiedValues(p[x]),t.stringifiedValues(f.choices[x]))}`}),t.fail(g)};let r={};o.implies=function(l,f){_("<string|object> [array|number|string]",[l,f],arguments.length),typeof l=="object"?Object.keys(l).forEach(p=>{o.implies(p,l[p])}):(a.global(l),r[l]||(r[l]=[]),Array.isArray(f)?f.forEach(p=>o.implies(l,p)):(Z(f,void 0,e),r[l].push(f)))},o.getImplied=function(){return r};function h(d,l){let f=Number(l);return l=isNaN(f)?l:f,typeof l=="number"?l=d._.length>=l:l.match(/^--no-.+/)?(l=l.match(/^--no-(.+)/)[1],l=!Object.prototype.hasOwnProperty.call(d,l)):l=Object.prototype.hasOwnProperty.call(d,l),l}o.implications=function(l){let f=[];if(Object.keys(r).forEach(p=>{let m=p;(r[p]||[]).forEach(g=>{let x=m,E=g;x=h(l,x),g=h(l,g),x&&!g&&f.push(` ${m} -> ${E}`)})}),f.length){let p=`${s("Implications failed:")}
74
+ `;f.forEach(m=>{p+=m}),t.fail(p)}};let c={};o.conflicts=function(l,f){_("<string|object> [array|string]",[l,f],arguments.length),typeof l=="object"?Object.keys(l).forEach(p=>{o.conflicts(p,l[p])}):(a.global(l),c[l]||(c[l]=[]),Array.isArray(f)?f.forEach(p=>o.conflicts(l,p)):c[l].push(f))},o.getConflicting=()=>c,o.conflicting=function(l){Object.keys(l).forEach(f=>{c[f]&&c[f].forEach(p=>{p&&l[f]!==void 0&&l[p]!==void 0&&t.fail(s("Arguments %s and %s are mutually exclusive",f,p))})}),a.getInternalMethods().getParserConfiguration()["strip-dashed"]&&Object.keys(c).forEach(f=>{c[f].forEach(p=>{p&&l[e.Parser.camelCase(f)]!==void 0&&l[e.Parser.camelCase(p)]!==void 0&&t.fail(s("Arguments %s and %s are mutually exclusive",f,p))})})},o.recommendCommands=function(l,f){f=f.sort((x,E)=>E.length-x.length);let m=null,g=1/0;for(let x=0,E;(E=f[x])!==void 0;x++){let W=Ee(l,E);W<=3&&W<g&&(g=W,m=E)}m&&t.fail(s("Did you mean %s?",m))},o.reset=function(l){return r=lt(r,f=>!l[f]),c=lt(c,f=>!l[f]),o};let u=[];return o.freeze=function(){u.push({implied:r,conflicting:c})},o.unfreeze=function(){let l=u.pop();Z(l,void 0,e),{implied:r,conflicting:c}=l},o}var O=function(a,t,e,s,n){if(s==="m")throw new TypeError("Private method is not writable");if(s==="a"&&!n)throw new TypeError("Private accessor was defined without a setter");if(typeof t=="function"?a!==t||!n:!t.has(a))throw new TypeError("Cannot write private member to an object whose class did not declare it");return s==="a"?n.call(a,e):n?n.value=e:t.set(a,e),e},i=function(a,t,e,s){if(e==="a"&&!s)throw new TypeError("Private accessor was defined without a getter");if(typeof t=="function"?a!==t||!s:!t.has(a))throw new TypeError("Cannot read private member from an object whose class did not declare it");return e==="m"?s:e==="a"?s.call(a):s?s.value:t.get(a)},Y,mt,zt,J,X,Yt,ft,gt,Lt,tt,Nt,et,nt,Q,st,Gt,bt,G,w,Vt,Tt,k,_t,It,Ot,ct,Rt,y,wt,Ct,jt,S,Kt,ot,F;function Xe(a){return(t=[],e=a.process.cwd(),s)=>{let n=new ue(t,e,s,a);return Object.defineProperty(n,"argv",{get:()=>n.parse(),enumerable:!0}),n.help(),n.version(),n}}var ve=Symbol("copyDoubleDash"),De=Symbol("copyDoubleDash"),se=Symbol("deleteFromParserHintObject"),ze=Symbol("emitWarning"),He=Symbol("freeze"),We=Symbol("getDollarZero"),yt=Symbol("getParserConfiguration"),Ue=Symbol("getUsageConfiguration"),ie=Symbol("guessLocale"),Fe=Symbol("guessVersion"),Ye=Symbol("parsePositionalNumbers"),ne=Symbol("pkgUp"),ut=Symbol("populateParserHintArray"),$t=Symbol("populateParserHintSingleValueDictionary"),oe=Symbol("populateParserHintArrayDictionary"),re=Symbol("populateParserHintDictionary"),ae=Symbol("sanitizeKey"),le=Symbol("setKey"),he=Symbol("unfreeze"),Le=Symbol("validateAsync"),Ne=Symbol("getCommandInstance"),Ge=Symbol("getContext"),Ve=Symbol("getHasOutput"),Te=Symbol("getLoggerInstance"),Re=Symbol("getParseContext"),Ke=Symbol("getUsageInstance"),qe=Symbol("getValidationInstance"),qt=Symbol("hasParseCallback"),Be=Symbol("isGlobalContext"),Pt=Symbol("postProcess"),Ze=Symbol("rebase"),fe=Symbol("reset"),Ht=Symbol("runYargsParserAndExecuteCommands"),ce=Symbol("runValidation"),Je=Symbol("setHasOutput"),St=Symbol("kTrackManuallySetKeys"),fs="en_US",ue=class{constructor(t=[],e,s,n){this.customScriptName=!1,this.parsed=!1,Y.set(this,void 0),mt.set(this,void 0),zt.set(this,{commands:[],fullCommands:[]}),J.set(this,null),X.set(this,null),Yt.set(this,"show-hidden"),ft.set(this,null),gt.set(this,!0),Lt.set(this,{}),tt.set(this,!0),Nt.set(this,[]),et.set(this,void 0),nt.set(this,{}),Q.set(this,!1),st.set(this,null),Gt.set(this,!0),bt.set(this,void 0),G.set(this,""),w.set(this,void 0),Vt.set(this,void 0),Tt.set(this,{}),k.set(this,null),_t.set(this,null),It.set(this,{}),Ot.set(this,{}),ct.set(this,void 0),Rt.set(this,!1),y.set(this,void 0),wt.set(this,!1),Ct.set(this,!1),jt.set(this,!1),S.set(this,void 0),Kt.set(this,{}),ot.set(this,null),F.set(this,void 0),O(this,y,n,"f"),O(this,ct,t,"f"),O(this,mt,e,"f"),O(this,Vt,s,"f"),O(this,et,new Wt(this),"f"),this.$0=this[We](),this[fe](),O(this,Y,i(this,Y,"f"),"f"),O(this,S,i(this,S,"f"),"f"),O(this,F,i(this,F,"f"),"f"),O(this,w,i(this,w,"f"),"f"),i(this,w,"f").showHiddenOpt=i(this,Yt,"f"),O(this,bt,this[De](),"f"),i(this,y,"f").y18n.setLocale(fs)}addHelpOpt(t,e){let s="help";return _("[string|boolean] [string]",[t,e],arguments.length),i(this,st,"f")&&(this[se](i(this,st,"f")),O(this,st,null,"f")),t===!1&&e===void 0?this:(O(this,st,typeof t=="string"?t:s,"f"),this.boolean(i(this,st,"f")),this.describe(i(this,st,"f"),e||i(this,S,"f").deferY18nLookup("Show help")),this)}help(t,e){return this.addHelpOpt(t,e)}addShowHiddenOpt(t,e){if(_("[string|boolean] [string]",[t,e],arguments.length),t===!1&&e===void 0)return this;let s=typeof t=="string"?t:i(this,Yt,"f");return this.boolean(s),this.describe(s,e||i(this,S,"f").deferY18nLookup("Show hidden options")),i(this,w,"f").showHiddenOpt=s,this}showHidden(t,e){return this.addShowHiddenOpt(t,e)}alias(t,e){return _("<object|string|array> [string|array]",[t,e],arguments.length),this[oe](this.alias.bind(this),"alias",t,e),this}array(t){return _("<array|string>",[t],arguments.length),this[ut]("array",t),this[St](t),this}boolean(t){return _("<array|string>",[t],arguments.length),this[ut]("boolean",t),this[St](t),this}check(t,e){return _("<function> [boolean]",[t,e],arguments.length),this.middleware((s,n)=>pt(()=>t(s,n.getOptions()),o=>(o?(typeof o=="string"||o instanceof Error)&&i(this,S,"f").fail(o.toString(),o):i(this,S,"f").fail(i(this,y,"f").y18n.__("Argument check failed: %s",t.toString())),s),o=>(i(this,S,"f").fail(o.message?o.message:o.toString(),o),s)),!1,e),this}choices(t,e){return _("<object|string|array> [string|array]",[t,e],arguments.length),this[oe](this.choices.bind(this),"choices",t,e),this}coerce(t,e){if(_("<object|string|array> [function]",[t,e],arguments.length),Array.isArray(t)){if(!e)throw new q("coerce callback must be provided");for(let n of t)this.coerce(n,e);return this}else if(typeof t=="object"){for(let n of Object.keys(t))this.coerce(n,t[n]);return this}if(!e)throw new q("coerce callback must be provided");let s=t;return i(this,w,"f").key[s]=!0,i(this,et,"f").addCoerceMiddleware((n,o)=>{var r;let h=(r=o.getAliases()[s])!==null&&r!==void 0?r:[],c=[s,...h].filter(u=>Object.prototype.hasOwnProperty.call(n,u));return c.length===0?n:pt(()=>e(n[c[0]]),u=>(c.forEach(d=>{n[d]=u}),n),u=>{throw new q(u.message)})},s),this}conflicts(t,e){return _("<string|object> [string|array]",[t,e],arguments.length),i(this,F,"f").conflicts(t,e),this}config(t="config",e,s){return _("[object|string] [string|function] [function]",[t,e,s],arguments.length),typeof t=="object"&&!Array.isArray(t)?(t=Xt(t,i(this,mt,"f"),this[yt]()["deep-merge-config"]||!1,i(this,y,"f")),i(this,w,"f").configObjects=(i(this,w,"f").configObjects||[]).concat(t),this):(typeof e=="function"&&(s=e,e=void 0),this.describe(t,e||i(this,S,"f").deferY18nLookup("Path to JSON config file")),(Array.isArray(t)?t:[t]).forEach(n=>{i(this,w,"f").config[n]=s||!0}),this)}completion(t,e,s){return _("[string] [string|boolean|function] [function]",[t,e,s],arguments.length),typeof e=="function"&&(s=e,e=void 0),O(this,X,t||i(this,X,"f")||"completion","f"),!e&&e!==!1&&(e="generate completion script"),this.command(i(this,X,"f"),e),s&&i(this,J,"f").registerFunction(s),this}command(t,e,s,n,o,r){return _("<string|array|object> [string|boolean] [function|object] [function] [array] [boolean|string]",[t,e,s,n,o,r],arguments.length),i(this,Y,"f").addHandler(t,e,s,n,o,r),this}commands(t,e,s,n,o,r){return this.command(t,e,s,n,o,r)}commandDir(t,e){_("<string> [object]",[t,e],arguments.length);let s=i(this,Vt,"f")||i(this,y,"f").require;return i(this,Y,"f").addDirectory(t,s,i(this,y,"f").getCallerFile(),e),this}count(t){return _("<array|string>",[t],arguments.length),this[ut]("count",t),this[St](t),this}default(t,e,s){return _("<object|string|array> [*] [string]",[t,e,s],arguments.length),s&&(Qt(t,i(this,y,"f")),i(this,w,"f").defaultDescription[t]=s),typeof e=="function"&&(Qt(t,i(this,y,"f")),i(this,w,"f").defaultDescription[t]||(i(this,w,"f").defaultDescription[t]=i(this,S,"f").functionDescription(e)),e=e.call()),this[$t](this.default.bind(this),"default",t,e),this}defaults(t,e,s){return this.default(t,e,s)}demandCommand(t=1,e,s,n){return _("[number] [number|string] [string|null|undefined] [string|null|undefined]",[t,e,s,n],arguments.length),typeof e!="number"&&(s=e,e=1/0),this.global("_",!1),i(this,w,"f").demandedCommands._={min:t,max:e,minMsg:s,maxMsg:n},this}demand(t,e,s){return Array.isArray(e)?(e.forEach(n=>{Z(s,!0,i(this,y,"f")),this.demandOption(n,s)}),e=1/0):typeof e!="number"&&(s=e,e=1/0),typeof t=="number"?(Z(s,!0,i(this,y,"f")),this.demandCommand(t,e,s,s)):Array.isArray(t)?t.forEach(n=>{Z(s,!0,i(this,y,"f")),this.demandOption(n,s)}):typeof s=="string"?this.demandOption(t,s):(s===!0||typeof s>"u")&&this.demandOption(t),this}demandOption(t,e){return _("<object|string|array> [string]",[t,e],arguments.length),this[$t](this.demandOption.bind(this),"demandedOptions",t,e),this}deprecateOption(t,e){return _("<string> [string|boolean]",[t,e],arguments.length),i(this,w,"f").deprecatedOptions[t]=e,this}describe(t,e){return _("<object|string|array> [string]",[t,e],arguments.length),this[le](t,!0),i(this,S,"f").describe(t,e),this}detectLocale(t){return _("<boolean>",[t],arguments.length),O(this,gt,t,"f"),this}env(t){return _("[string|boolean]",[t],arguments.length),t===!1?delete i(this,w,"f").envPrefix:i(this,w,"f").envPrefix=t||"",this}epilogue(t){return _("<string>",[t],arguments.length),i(this,S,"f").epilog(t),this}epilog(t){return this.epilogue(t)}example(t,e){return _("<string|array> [string]",[t,e],arguments.length),Array.isArray(t)?t.forEach(s=>this.example(...s)):i(this,S,"f").example(t,e),this}exit(t,e){O(this,Q,!0,"f"),O(this,ft,e,"f"),i(this,tt,"f")&&i(this,y,"f").process.exit(t)}exitProcess(t=!0){return _("[boolean]",[t],arguments.length),O(this,tt,t,"f"),this}fail(t){if(_("<function|boolean>",[t],arguments.length),typeof t=="boolean"&&t!==!1)throw new q("Invalid first argument. Expected function or boolean 'false'");return i(this,S,"f").failFn(t),this}getAliases(){return this.parsed?this.parsed.aliases:{}}async getCompletion(t,e){return _("<array> [function]",[t,e],arguments.length),e?i(this,J,"f").getCompletion(t,e):new Promise((s,n)=>{i(this,J,"f").getCompletion(t,(o,r)=>{o?n(o):s(r)})})}getDemandedOptions(){return _([],0),i(this,w,"f").demandedOptions}getDemandedCommands(){return _([],0),i(this,w,"f").demandedCommands}getDeprecatedOptions(){return _([],0),i(this,w,"f").deprecatedOptions}getDetectLocale(){return i(this,gt,"f")}getExitProcess(){return i(this,tt,"f")}getGroups(){return Object.assign({},i(this,nt,"f"),i(this,Ot,"f"))}getHelp(){if(O(this,Q,!0,"f"),!i(this,S,"f").hasCachedHelpMessage()){if(!this.parsed){let e=this[Ht](i(this,ct,"f"),void 0,void 0,0,!0);if(v(e))return e.then(()=>i(this,S,"f").help())}let t=i(this,Y,"f").runDefaultBuilderOn(this);if(v(t))return t.then(()=>i(this,S,"f").help())}return Promise.resolve(i(this,S,"f").help())}getOptions(){return i(this,w,"f")}getStrict(){return i(this,wt,"f")}getStrictCommands(){return i(this,Ct,"f")}getStrictOptions(){return i(this,jt,"f")}global(t,e){return _("<string|array> [boolean]",[t,e],arguments.length),t=[].concat(t),e!==!1?i(this,w,"f").local=i(this,w,"f").local.filter(s=>t.indexOf(s)===-1):t.forEach(s=>{i(this,w,"f").local.includes(s)||i(this,w,"f").local.push(s)}),this}group(t,e){_("<string|array> <string>",[t,e],arguments.length);let s=i(this,Ot,"f")[e]||i(this,nt,"f")[e];i(this,Ot,"f")[e]&&delete i(this,Ot,"f")[e];let n={};return i(this,nt,"f")[e]=(s||[]).concat(t).filter(o=>n[o]?!1:n[o]=!0),this}hide(t){return _("<string>",[t],arguments.length),i(this,w,"f").hiddenOptions.push(t),this}implies(t,e){return _("<string|object> [number|string|array]",[t,e],arguments.length),i(this,F,"f").implies(t,e),this}locale(t){return _("[string]",[t],arguments.length),t===void 0?(this[ie](),i(this,y,"f").y18n.getLocale()):(O(this,gt,!1,"f"),i(this,y,"f").y18n.setLocale(t),this)}middleware(t,e,s){return i(this,et,"f").addMiddleware(t,!!e,s)}nargs(t,e){return _("<string|object|array> [number]",[t,e],arguments.length),this[$t](this.nargs.bind(this),"narg",t,e),this}normalize(t){return _("<array|string>",[t],arguments.length),this[ut]("normalize",t),this}number(t){return _("<array|string>",[t],arguments.length),this[ut]("number",t),this[St](t),this}option(t,e){if(_("<string|object> [object]",[t,e],arguments.length),typeof t=="object")Object.keys(t).forEach(s=>{this.options(s,t[s])});else{typeof e!="object"&&(e={}),this[St](t),i(this,ot,"f")&&(t==="version"||e?.alias==="version")&&this[ze](['"version" is a reserved word.',"Please do one of the following:",'- Disable version with `yargs.version(false)` if using "version" as an option',"- Use the built-in `yargs.version` method instead (if applicable)","- Use a different option key","https://yargs.js.org/docs/#api-reference-version"].join(`
75
+ `),void 0,"versionWarning"),i(this,w,"f").key[t]=!0,e.alias&&this.alias(t,e.alias);let s=e.deprecate||e.deprecated;s&&this.deprecateOption(t,s);let n=e.demand||e.required||e.require;n&&this.demand(t,n),e.demandOption&&this.demandOption(t,typeof e.demandOption=="string"?e.demandOption:void 0),e.conflicts&&this.conflicts(t,e.conflicts),"default"in e&&this.default(t,e.default),e.implies!==void 0&&this.implies(t,e.implies),e.nargs!==void 0&&this.nargs(t,e.nargs),e.config&&this.config(t,e.configParser),e.normalize&&this.normalize(t),e.choices&&this.choices(t,e.choices),e.coerce&&this.coerce(t,e.coerce),e.group&&this.group(t,e.group),(e.boolean||e.type==="boolean")&&(this.boolean(t),e.alias&&this.boolean(e.alias)),(e.array||e.type==="array")&&(this.array(t),e.alias&&this.array(e.alias)),(e.number||e.type==="number")&&(this.number(t),e.alias&&this.number(e.alias)),(e.string||e.type==="string")&&(this.string(t),e.alias&&this.string(e.alias)),(e.count||e.type==="count")&&this.count(t),typeof e.global=="boolean"&&this.global(t,e.global),e.defaultDescription&&(i(this,w,"f").defaultDescription[t]=e.defaultDescription),e.skipValidation&&this.skipValidation(t);let o=e.describe||e.description||e.desc,r=i(this,S,"f").getDescriptions();(!Object.prototype.hasOwnProperty.call(r,t)||typeof o=="string")&&this.describe(t,o),e.hidden&&this.hide(t),e.requiresArg&&this.requiresArg(t)}return this}options(t,e){return this.option(t,e)}parse(t,e,s){_("[string|array] [function|boolean|object] [function]",[t,e,s],arguments.length),this[He](),typeof t>"u"&&(t=i(this,ct,"f")),typeof e=="object"&&(O(this,_t,e,"f"),e=s),typeof e=="function"&&(O(this,k,e,"f"),e=!1),e||O(this,ct,t,"f"),i(this,k,"f")&&O(this,tt,!1,"f");let n=this[Ht](t,!!e),o=this.parsed;return i(this,J,"f").setParsed(this.parsed),v(n)?n.then(r=>(i(this,k,"f")&&i(this,k,"f").call(this,i(this,ft,"f"),r,i(this,G,"f")),r)).catch(r=>{throw i(this,k,"f")&&i(this,k,"f")(r,this.parsed.argv,i(this,G,"f")),r}).finally(()=>{this[he](),this.parsed=o}):(i(this,k,"f")&&i(this,k,"f").call(this,i(this,ft,"f"),n,i(this,G,"f")),this[he](),this.parsed=o,n)}parseAsync(t,e,s){let n=this.parse(t,e,s);return v(n)?n:Promise.resolve(n)}parseSync(t,e,s){let n=this.parse(t,e,s);if(v(n))throw new q(".parseSync() must not be used with asynchronous builders, handlers, or middleware");return n}parserConfiguration(t){return _("<object>",[t],arguments.length),O(this,Tt,t,"f"),this}pkgConf(t,e){_("<string> [string]",[t,e],arguments.length);let s=null,n=this[ne](e||i(this,mt,"f"));return n[t]&&typeof n[t]=="object"&&(s=Xt(n[t],e||i(this,mt,"f"),this[yt]()["deep-merge-config"]||!1,i(this,y,"f")),i(this,w,"f").configObjects=(i(this,w,"f").configObjects||[]).concat(s)),this}positional(t,e){_("<string> <object>",[t,e],arguments.length);let s=["default","defaultDescription","implies","normalize","choices","conflicts","coerce","type","describe","desc","description","alias"];e=lt(e,(r,h)=>r==="type"&&!["string","number","boolean"].includes(h)?!1:s.includes(r));let n=i(this,zt,"f").fullCommands[i(this,zt,"f").fullCommands.length-1],o=n?i(this,Y,"f").cmdToParseOptions(n):{array:[],alias:{},default:{},demand:{}};return At(o).forEach(r=>{let h=o[r];Array.isArray(h)?h.indexOf(t)!==-1&&(e[r]=!0):h[t]&&!(r in e)&&(e[r]=h[t])}),this.group(t,i(this,S,"f").getPositionalGroupName()),this.option(t,e)}recommendCommands(t=!0){return _("[boolean]",[t],arguments.length),O(this,Rt,t,"f"),this}required(t,e,s){return this.demand(t,e,s)}require(t,e,s){return this.demand(t,e,s)}requiresArg(t){return _("<array|string|object> [number]",[t],arguments.length),typeof t=="string"&&i(this,w,"f").narg[t]?this:(this[$t](this.requiresArg.bind(this),"narg",t,NaN),this)}showCompletionScript(t,e){return _("[string] [string]",[t,e],arguments.length),t=t||this.$0,i(this,bt,"f").log(i(this,J,"f").generateCompletionScript(t,e||i(this,X,"f")||"completion")),this}showHelp(t){if(_("[string|function]",[t],arguments.length),O(this,Q,!0,"f"),!i(this,S,"f").hasCachedHelpMessage()){if(!this.parsed){let s=this[Ht](i(this,ct,"f"),void 0,void 0,0,!0);if(v(s))return s.then(()=>{i(this,S,"f").showHelp(t)}),this}let e=i(this,Y,"f").runDefaultBuilderOn(this);if(v(e))return e.then(()=>{i(this,S,"f").showHelp(t)}),this}return i(this,S,"f").showHelp(t),this}scriptName(t){return this.customScriptName=!0,this.$0=t,this}showHelpOnFail(t,e){return _("[boolean|string] [string]",[t,e],arguments.length),i(this,S,"f").showHelpOnFail(t,e),this}showVersion(t){return _("[string|function]",[t],arguments.length),i(this,S,"f").showVersion(t),this}skipValidation(t){return _("<array|string>",[t],arguments.length),this[ut]("skipValidation",t),this}strict(t){return _("[boolean]",[t],arguments.length),O(this,wt,t!==!1,"f"),this}strictCommands(t){return _("[boolean]",[t],arguments.length),O(this,Ct,t!==!1,"f"),this}strictOptions(t){return _("[boolean]",[t],arguments.length),O(this,jt,t!==!1,"f"),this}string(t){return _("<array|string>",[t],arguments.length),this[ut]("string",t),this[St](t),this}terminalWidth(){return _([],0),i(this,y,"f").process.stdColumns}updateLocale(t){return this.updateStrings(t)}updateStrings(t){return _("<object>",[t],arguments.length),O(this,gt,!1,"f"),i(this,y,"f").y18n.updateLocale(t),this}usage(t,e,s,n){if(_("<string|null|undefined> [string|boolean] [function|object] [function]",[t,e,s,n],arguments.length),e!==void 0){if(Z(t,null,i(this,y,"f")),(t||"").match(/^\$0( |$)/))return this.command(t,e,s,n);throw new q(".usage() description must start with $0 if being used as alias for .command()")}else return i(this,S,"f").usage(t),this}usageConfiguration(t){return _("<object>",[t],arguments.length),O(this,Kt,t,"f"),this}version(t,e,s){let n="version";if(_("[boolean|string] [string] [string]",[t,e,s],arguments.length),i(this,ot,"f")&&(this[se](i(this,ot,"f")),i(this,S,"f").version(void 0),O(this,ot,null,"f")),arguments.length===0)s=this[Fe](),t=n;else if(arguments.length===1){if(t===!1)return this;s=t,t=n}else arguments.length===2&&(s=e,e=void 0);return O(this,ot,typeof t=="string"?t:n,"f"),e=e||i(this,S,"f").deferY18nLookup("Show version number"),i(this,S,"f").version(s||void 0),this.boolean(i(this,ot,"f")),this.describe(i(this,ot,"f"),e),this}wrap(t){return _("<number|null|undefined>",[t],arguments.length),i(this,S,"f").wrap(t),this}[(Y=new WeakMap,mt=new WeakMap,zt=new WeakMap,J=new WeakMap,X=new WeakMap,Yt=new WeakMap,ft=new WeakMap,gt=new WeakMap,Lt=new WeakMap,tt=new WeakMap,Nt=new WeakMap,et=new WeakMap,nt=new WeakMap,Q=new WeakMap,st=new WeakMap,Gt=new WeakMap,bt=new WeakMap,G=new WeakMap,w=new WeakMap,Vt=new WeakMap,Tt=new WeakMap,k=new WeakMap,_t=new WeakMap,It=new WeakMap,Ot=new WeakMap,ct=new WeakMap,Rt=new WeakMap,y=new WeakMap,wt=new WeakMap,Ct=new WeakMap,jt=new WeakMap,S=new WeakMap,Kt=new WeakMap,ot=new WeakMap,F=new WeakMap,ve)](t){if(!t._||!t["--"])return t;t._.push.apply(t._,t["--"]);try{delete t["--"]}catch{}return t}[De](){return{log:(...t)=>{this[qt]()||console.log(...t),O(this,Q,!0,"f"),i(this,G,"f").length&&O(this,G,i(this,G,"f")+`
76
+ `,"f"),O(this,G,i(this,G,"f")+t.join(" "),"f")},error:(...t)=>{this[qt]()||console.error(...t),O(this,Q,!0,"f"),i(this,G,"f").length&&O(this,G,i(this,G,"f")+`
77
+ `,"f"),O(this,G,i(this,G,"f")+t.join(" "),"f")}}}[se](t){At(i(this,w,"f")).forEach(e=>{if((n=>n==="configObjects")(e))return;let s=i(this,w,"f")[e];Array.isArray(s)?s.includes(t)&&s.splice(s.indexOf(t),1):typeof s=="object"&&delete s[t]}),delete i(this,S,"f").getDescriptions()[t]}[ze](t,e,s){i(this,Lt,"f")[s]||(i(this,y,"f").process.emitWarning(t,e),i(this,Lt,"f")[s]=!0)}[He](){i(this,Nt,"f").push({options:i(this,w,"f"),configObjects:i(this,w,"f").configObjects.slice(0),exitProcess:i(this,tt,"f"),groups:i(this,nt,"f"),strict:i(this,wt,"f"),strictCommands:i(this,Ct,"f"),strictOptions:i(this,jt,"f"),completionCommand:i(this,X,"f"),output:i(this,G,"f"),exitError:i(this,ft,"f"),hasOutput:i(this,Q,"f"),parsed:this.parsed,parseFn:i(this,k,"f"),parseContext:i(this,_t,"f")}),i(this,S,"f").freeze(),i(this,F,"f").freeze(),i(this,Y,"f").freeze(),i(this,et,"f").freeze()}[We](){let t="",e;return/\b(node|iojs|electron|bun)(\.exe)?$/.test(i(this,y,"f").process.argv()[0])?e=i(this,y,"f").process.argv().slice(1,2):e=i(this,y,"f").process.argv().slice(0,1),t=e.map(s=>{let n=this[Ze](i(this,mt,"f"),s);return s.match(/^(\/|([a-zA-Z]:)?\\)/)&&n.length<s.length?n:s}).join(" ").trim(),i(this,y,"f").getEnv("_")&&i(this,y,"f").getProcessArgvBin()===i(this,y,"f").getEnv("_")&&(t=i(this,y,"f").getEnv("_").replace(`${i(this,y,"f").path.dirname(i(this,y,"f").process.execPath())}/`,"")),t}[yt](){return i(this,Tt,"f")}[Ue](){return i(this,Kt,"f")}[ie](){if(!i(this,gt,"f"))return;let t=i(this,y,"f").getEnv("LC_ALL")||i(this,y,"f").getEnv("LC_MESSAGES")||i(this,y,"f").getEnv("LANG")||i(this,y,"f").getEnv("LANGUAGE")||"en_US";this.locale(t.replace(/[.:].*/,""))}[Fe](){return this[ne]().version||"unknown"}[Ye](t){let e=t["--"]?t["--"]:t._;for(let s=0,n;(n=e[s])!==void 0;s++)i(this,y,"f").Parser.looksLikeNumber(n)&&Number.isSafeInteger(Math.floor(parseFloat(`${n}`)))&&(e[s]=Number(n));return t}[ne](t){let e=t||"*";if(i(this,It,"f")[e])return i(this,It,"f")[e];let s={};try{let n=t||i(this,y,"f").mainFilename;i(this,y,"f").path.extname(n)&&(n=i(this,y,"f").path.dirname(n));let o=i(this,y,"f").findUp(n,(r,h)=>{if(h.includes("package.json"))return"package.json"});Z(o,void 0,i(this,y,"f")),s=JSON.parse(i(this,y,"f").readFileSync(o,"utf8"))}catch{}return i(this,It,"f")[e]=s||{},i(this,It,"f")[e]}[ut](t,e){e=[].concat(e),e.forEach(s=>{s=this[ae](s),i(this,w,"f")[t].push(s)})}[$t](t,e,s,n){this[re](t,e,s,n,(o,r,h)=>{i(this,w,"f")[o][r]=h})}[oe](t,e,s,n){this[re](t,e,s,n,(o,r,h)=>{i(this,w,"f")[o][r]=(i(this,w,"f")[o][r]||[]).concat(h)})}[re](t,e,s,n,o){if(Array.isArray(s))s.forEach(r=>{t(r,n)});else if((r=>typeof r=="object")(s))for(let r of At(s))t(r,s[r]);else o(e,this[ae](s),n)}[ae](t){return t==="__proto__"?"___proto___":t}[le](t,e){return this[$t](this[le].bind(this),"key",t,e),this}[he](){var t,e,s,n,o,r,h,c,u,d,l,f;let p=i(this,Nt,"f").pop();Z(p,void 0,i(this,y,"f"));let m;t=this,e=this,s=this,n=this,o=this,r=this,h=this,c=this,u=this,d=this,l=this,f=this,{options:{set value(g){O(t,w,g,"f")}}.value,configObjects:m,exitProcess:{set value(g){O(e,tt,g,"f")}}.value,groups:{set value(g){O(s,nt,g,"f")}}.value,output:{set value(g){O(n,G,g,"f")}}.value,exitError:{set value(g){O(o,ft,g,"f")}}.value,hasOutput:{set value(g){O(r,Q,g,"f")}}.value,parsed:this.parsed,strict:{set value(g){O(h,wt,g,"f")}}.value,strictCommands:{set value(g){O(c,Ct,g,"f")}}.value,strictOptions:{set value(g){O(u,jt,g,"f")}}.value,completionCommand:{set value(g){O(d,X,g,"f")}}.value,parseFn:{set value(g){O(l,k,g,"f")}}.value,parseContext:{set value(g){O(f,_t,g,"f")}}.value}=p,i(this,w,"f").configObjects=m,i(this,S,"f").unfreeze(),i(this,F,"f").unfreeze(),i(this,Y,"f").unfreeze(),i(this,et,"f").unfreeze()}[Le](t,e){return pt(e,s=>(t(s),s))}getInternalMethods(){return{getCommandInstance:this[Ne].bind(this),getContext:this[Ge].bind(this),getHasOutput:this[Ve].bind(this),getLoggerInstance:this[Te].bind(this),getParseContext:this[Re].bind(this),getParserConfiguration:this[yt].bind(this),getUsageConfiguration:this[Ue].bind(this),getUsageInstance:this[Ke].bind(this),getValidationInstance:this[qe].bind(this),hasParseCallback:this[qt].bind(this),isGlobalContext:this[Be].bind(this),postProcess:this[Pt].bind(this),reset:this[fe].bind(this),runValidation:this[ce].bind(this),runYargsParserAndExecuteCommands:this[Ht].bind(this),setHasOutput:this[Je].bind(this)}}[Ne](){return i(this,Y,"f")}[Ge](){return i(this,zt,"f")}[Ve](){return i(this,Q,"f")}[Te](){return i(this,bt,"f")}[Re](){return i(this,_t,"f")||{}}[Ke](){return i(this,S,"f")}[qe](){return i(this,F,"f")}[qt](){return!!i(this,k,"f")}[Be](){return i(this,Gt,"f")}[Pt](t,e,s,n){return s||v(t)||(e||(t=this[ve](t)),(this[yt]()["parse-positional-numbers"]||this[yt]()["parse-positional-numbers"]===void 0)&&(t=this[Ye](t)),n&&(t=dt(t,this,i(this,et,"f").getMiddleware(),!1))),t}[fe](t={}){O(this,w,i(this,w,"f")||{},"f");let e={};e.local=i(this,w,"f").local||[],e.configObjects=i(this,w,"f").configObjects||[];let s={};e.local.forEach(r=>{s[r]=!0,(t[r]||[]).forEach(h=>{s[h]=!0})}),Object.assign(i(this,Ot,"f"),Object.keys(i(this,nt,"f")).reduce((r,h)=>{let c=i(this,nt,"f")[h].filter(u=>!(u in s));return c.length>0&&(r[h]=c),r},{})),O(this,nt,{},"f");let n=["array","boolean","string","skipValidation","count","normalize","number","hiddenOptions"],o=["narg","key","alias","default","defaultDescription","config","choices","demandedOptions","demandedCommands","deprecatedOptions"];return n.forEach(r=>{e[r]=(i(this,w,"f")[r]||[]).filter(h=>!s[h])}),o.forEach(r=>{e[r]=lt(i(this,w,"f")[r],h=>!s[h])}),e.envPrefix=i(this,w,"f").envPrefix,O(this,w,e,"f"),O(this,S,i(this,S,"f")?i(this,S,"f").reset(s):Pe(this,i(this,y,"f")),"f"),O(this,F,i(this,F,"f")?i(this,F,"f").reset(s):$e(this,i(this,S,"f"),i(this,y,"f")),"f"),O(this,Y,i(this,Y,"f")?i(this,Y,"f").reset():Ce(i(this,S,"f"),i(this,F,"f"),i(this,et,"f"),i(this,y,"f")),"f"),i(this,J,"f")||O(this,J,Ae(this,i(this,S,"f"),i(this,Y,"f"),i(this,y,"f")),"f"),i(this,et,"f").reset(),O(this,X,null,"f"),O(this,G,"","f"),O(this,ft,null,"f"),O(this,Q,!1,"f"),this.parsed=!1,this}[Ze](t,e){return i(this,y,"f").path.relative(t,e)}[Ht](t,e,s,n=0,o=!1){var r,h,c,u;let d=!!s||o;t=t||i(this,ct,"f"),i(this,w,"f").__=i(this,y,"f").y18n.__,i(this,w,"f").configuration=this[yt]();let l=!!i(this,w,"f").configuration["populate--"],f=Object.assign({},i(this,w,"f").configuration,{"populate--":!0}),p=i(this,y,"f").Parser.detailed(t,Object.assign({},i(this,w,"f"),{configuration:{"parse-positional-numbers":!1,...f}})),m=Object.assign(p.argv,i(this,_t,"f")),g,x=p.aliases,E=!1,W=!1;Object.keys(m).forEach(H=>{H===i(this,st,"f")&&m[H]?E=!0:H===i(this,ot,"f")&&m[H]&&(W=!0)}),m.$0=this.$0,this.parsed=p,n===0&&i(this,S,"f").clearCachedHelpMessage();try{if(this[ie](),e)return this[Pt](m,l,!!s,!1);i(this,st,"f")&&[i(this,st,"f")].concat(x[i(this,st,"f")]||[]).filter(V=>V.length>1).includes(""+m._[m._.length-1])&&(m._.pop(),E=!0),O(this,Gt,!1,"f");let H=i(this,Y,"f").getCommands(),D=!((r=i(this,J,"f"))===null||r===void 0)&&r.completionKey?[(h=i(this,J,"f"))===null||h===void 0?void 0:h.completionKey,...(u=this.getAliases()[(c=i(this,J,"f"))===null||c===void 0?void 0:c.completionKey])!==null&&u!==void 0?u:[]].some(z=>Object.prototype.hasOwnProperty.call(m,z)):!1,Mt=E||D||o;if(m._.length){if(H.length){let z;for(let V=n||0,it;m._[V]!==void 0;V++)if(it=String(m._[V]),H.includes(it)&&it!==i(this,X,"f")){let xt=i(this,Y,"f").runCommand(it,this,p,V+1,o,E||W||o);return this[Pt](xt,l,!!s,!1)}else if(!z&&it!==i(this,X,"f")){z=it;break}!i(this,Y,"f").hasDefaultCommand()&&i(this,Rt,"f")&&z&&!Mt&&i(this,F,"f").recommendCommands(z,H)}i(this,X,"f")&&m._.includes(i(this,X,"f"))&&!D&&(i(this,tt,"f")&&ht(!0),this.showCompletionScript(),this.exit(0))}if(i(this,Y,"f").hasDefaultCommand()&&!Mt){let z=i(this,Y,"f").runCommand(null,this,p,0,o,E||W||o);return this[Pt](z,l,!!s,!1)}if(D){i(this,tt,"f")&&ht(!0),t=[].concat(t);let z=t.slice(t.indexOf(`--${i(this,J,"f").completionKey}`)+1);return i(this,J,"f").getCompletion(z,(V,it)=>{if(V)throw new q(V.message);(it||[]).forEach(xt=>{i(this,bt,"f").log(xt)}),this.exit(0)}),this[Pt](m,!l,!!s,!1)}if(i(this,Q,"f")||(E?(i(this,tt,"f")&&ht(!0),d=!0,this.showHelp(z=>{i(this,bt,"f").log(z),this.exit(0)})):W&&(i(this,tt,"f")&&ht(!0),d=!0,i(this,S,"f").showVersion("log"),this.exit(0))),!d&&i(this,w,"f").skipValidation.length>0&&(d=Object.keys(m).some(z=>i(this,w,"f").skipValidation.indexOf(z)>=0&&m[z]===!0)),!d){if(p.error)throw new q(p.error.message);if(!D){let z=this[ce](x,{},p.error);s||(g=dt(m,this,i(this,et,"f").getMiddleware(),!0)),g=this[Le](z,g??m),v(g)&&!s&&(g=g.then(()=>dt(m,this,i(this,et,"f").getMiddleware(),!1)))}}}catch(H){if(H instanceof q)i(this,S,"f").fail(H.message,H);else throw H}return this[Pt](g??m,l,!!s,!0)}[ce](t,e,s,n){let o={...this.getDemandedOptions()};return r=>{if(s)throw new q(s.message);i(this,F,"f").nonOptionCount(r),i(this,F,"f").requiredArguments(r,o);let h=!1;i(this,Ct,"f")&&(h=i(this,F,"f").unknownCommands(r)),i(this,wt,"f")&&!h?i(this,F,"f").unknownArguments(r,t,e,!!n):i(this,jt,"f")&&i(this,F,"f").unknownArguments(r,t,{},!1,!1),i(this,F,"f").limitedChoices(r),i(this,F,"f").implications(r),i(this,F,"f").conflicting(r)}}[Je](){O(this,Q,!0,"f")}[St](t){if(typeof t=="string")i(this,w,"f").key[t]=!0;else for(let e of t)i(this,w,"f").key[e]=!0}};function je(a){return!!a&&typeof a.getInternalMethods=="function"}var cs=Xe(ge),ci=cs;export{ci as default,cs as"module.exports"};
@@ -0,0 +1,2 @@
1
+ import { createRequire as __galleryRequire } from "node:module"; import { fileURLToPath as __galleryPath } from "node:url"; const require = __galleryRequire(import.meta.url); const __filename = __galleryPath(import.meta.url); const __dirname = __galleryPath(new URL(".", import.meta.url));
2
+ import{a,b,c,d,e,f,g}from"./chunk-4FS7Z7WR.mjs";import"./chunk-6RGJOMJP.mjs";import"./chunk-QJIR2BLP.mjs";import"./chunk-P2CAZPDP.mjs";import"./chunk-E7LWZRXY.mjs";import"./chunk-AUZGSZJH.mjs";import"./chunk-BGGDRNYQ.mjs";import"./chunk-6QXGZM36.mjs";import"./chunk-UALRNVSE.mjs";import"./chunk-W3BGBJQW.mjs";import"./chunk-JVHHHGEA.mjs";import"./chunk-HYMEEXKN.mjs";import"./chunk-TYK6VNAB.mjs";import"./chunk-CY2FNNAB.mjs";import"./chunk-UMHUSOPJ.mjs";import"./chunk-L3QKH4OK.mjs";import"./chunk-W4VKN3GF.mjs";import"./chunk-A55HN5OK.mjs";import"./chunk-5L7RYZCL.mjs";export{a as handInReports,e as idLines,f as inStepLines,d as noteNew,b as previewSettled,g as rereadLine,c as roundBegins};
@@ -0,0 +1,16 @@
1
+ import { createRequire as __galleryRequire } from "node:module"; import { fileURLToPath as __galleryPath } from "node:url"; const require = __galleryRequire(import.meta.url); const __filename = __galleryPath(import.meta.url); const __dirname = __galleryPath(new URL(".", import.meta.url));
2
+ import{a as Ge}from"./chunk-UMHUSOPJ.mjs";import{E as Jt,G as Vt,J as Pe,K as Ue,L as ze,M as Xt,c as lt,d as Ke,m as St,n as He,u as qt,v as ft,x as We}from"./chunk-L3QKH4OK.mjs";import{b as rt,e as on}from"./chunk-A55HN5OK.mjs";on();import an from"node:path";import{attr as w,curlyQuoted as cn}from"../browser/shared/html-tree.mjs";import{FOLDED_LINES as qe,LINE_START as Je,NOWRAP as Zt,lineStart as rn,validFolded as ln}from"../browser/shared/code-lines.mjs";import{COLORS as fn}from"../browser/shared/colors.mjs";import{FLOWS as dn,instanceSlots as at,isInstance as it,isSlot as cs,matchesNode as pt}from"../browser/shared/components/index.mjs";import{HEADED as dt}from"../browser/shared/components/dialog.mjs";import{pageLanguage as un}from"../browser/shared/components/page.mjs";import{SHEETS_LABEL as Ve,shortSheets as mn}from"../browser/shared/components/sheets.mjs";import{iconMarkup as Xe,iconValueOf as rs}from"../browser/shared/emoji/icon-value.mjs";import{escapeText as mt}from"../browser/shared/escape.mjs";import{COLUMN_GAP as hn,READING_WIDTH as Tt,SPAN as Ze,SPAN_SIZE as ut}from"../browser/shared/media.mjs";import{kitNamespace as ls}from"../browser/shared/old-names.mjs";import{CHART_DATA as fs,CHART_SOURCE as tt,nextChartKey as gn}from"../browser/shared/table-chart.mjs";import{BLOCK_COLORS as ae}from"../browser/editor/components/colors.mjs";import{DETAILS as pn,DIALOG as Yt,PAGE as ds,SECTION as Nn,SHEETS as On}from"../browser/editor/components/kit.mjs";import{DIALOG_TRIGGER as $n}from"../browser/editor/components/dialog/index.mjs";import{CHECKED as ie,FLOW as ht,TODO as te}from"../browser/editor/components/list/index.mjs";import{texSource as wn}from"../browser/editor/components/math/index.mjs";import{BOX_CLASSES as us,HOLDS_ONE as bn,UNIT_KINDS as kn}from"../browser/editor/components/registry.mjs";import{HEADER_LOOK as Qe}from"../browser/editor/components/table/index.mjs";import{backgroundColor as Ln,parseColor as yn,textColor as vn}from"../browser/editor/page/clipboard/import/colors.mjs";var ce=new Set(["script","style","template","textarea","noscript","code","svg","math","select","option","button","iframe","video","audio","canvas","object","picture"]),_t=["doc-figure","doc-code","doc-diff","doc-math-inline","doc-math-block","doc-link-mention","doc-sheet-tabs","doc-state-fields","doc-filter-row","doc-image","doc-file","doc-bookmark","doc-embed","doc-icon","doc-title","doc-table-meta"],re=new Set(["p","h1","h2","h3","h4","h5","h6","li","td","th","dt","dd","blockquote","figcaption","caption","summary"]),Et=new Set(["main","section","div","article","aside","blockquote","li","details","dialog"]),Cn=new Set(fn.map(({name:e})=>e)),C=e=>(w(e,"class")??"").split(/\s+/).filter(Boolean),Ye=e=>C(e).every(n=>ae.includes(n)),xn=ae.filter(e=>e.startsWith("doc-highlight-")),ct=e=>C(e).some(n=>!ls(n)),R=e=>e.nodeName==="#text",jt=/^[\s\u200b-\u200d\u2060\ufeff]*$/,V=e=>R(e)&&jt.test(e.value),y=e=>(e.childNodes??[]).filter(n=>n.tagName),Z=e=>(e.attrs??[]).map(n=>n.name),G=(e,n)=>Z(e).every(u=>n.includes(u)),Sn=[Nn.match,pn.match,Yt.match,On.match,"table.doc-table"].join(", ");function ms(e){let n=C(e);return n.some(u=>_t.includes(u))||Ke(e)||pt(e,Sn)||us.some(([u])=>n.includes(u))||kn.some(u=>u.class&&n.includes(u.class)&&(!u.tag||[u.tag].flat().includes(e.tagName)))}var Tn=e=>{for(let n=e.parentNode;n?.tagName&&n.tagName!=="main";n=n.parentNode)if(n.tagName==="figure")return!0;return!1},hs=new Set(["thead","tbody","tfoot","tr","colgroup","col"]),le=e=>ct(e)&&e.tagName!=="figure"&&!re.has(e.tagName)&&!hs.has(e.tagName)&&!ms(e),gs=new Set([...lt].filter(e=>!["header","main","dialog","form","fieldset","caption","dd","dt","figcaption","summary","li","td","th",...hs].includes(e))),En=/\\\(([\s\S]*?)\\\)/g,wt=e=>wn(e)&&/\S/.test(e);function In(e,n=!0){let u=n?e:/^\s*(?:\\\[[\s\S]*?\\\]|\$\$[\s\S]*?\$\$)/.exec(e)?.[0]??"";return/[<>]/.test(u)&&wt(u.replace(/</g,"\\lt ").replace(/>/g,"\\gt "))}var ee=new Set(["br","wbr","img","input"]),ps=new Set([...lt,"script","style","template","noscript","link","meta"]),Ns=new Set(["input","select","textarea","button","label","option"]),An=new Set([...lt,"hgroup","search","center","dir","listing","xmp","plaintext"]),se=e=>y(e).some(n=>An.has(n.tagName)||se(n)),Os=new Set(["main","section","div","article","aside","blockquote"]),_n=dn.join(", "),$s=e=>Os.has(e.tagName)&&!ct(e)&&(C(e).length===0||pt(e,_n))||cs(e),et=e=>R(e)?!jt.test(e.value):(e.childNodes??[]).some(et),jn=us.filter(([,e])=>bn.has(e)).map(([e])=>e),Bn=e=>$s(e)&&C(e).some(n=>jn.includes(n)),ws=e=>e.childNodes.some(n=>R(n)&&!jt.test(n.value))&&y(e).some(n=>lt.has(n.tagName)),Mn=/^[ \t\n\r\f]*/;function Qt(e){let n=[],u=[];for(let d of e)d.tagName&&ps.has(d.tagName)?(n.push(u),u=[]):u.push(d);n.push(u);let p=d=>!d.tagName&&!et(d),N=d=>(R(d)||d.tagName&&!Ns.has(d.tagName))&&et(d);return n.map(d=>{let O=d.findIndex(m=>!p(m));return O<0?[]:d.slice(O,d.findLastIndex(m=>!p(m))+1)}).filter(d=>d.some(N))}function Dn(e){let n=[],u=p=>{for(let N of p.childNodes??[])N.tagName==="style"?n.push(N.childNodes.map(d=>d.value??"").join("")):N.tagName&&N.tagName!=="template"&&u(N)};return u(e),n.flatMap(p=>[...p.replace(/\/\*[\s\S]*?(?:\*\/|$)/g," ").matchAll(/([^{};]*)\{/g)].map(([,N])=>N))}var Rn=(e,{tags:n=[],classes:u=[]})=>{let p=[...n.map(d=>`(?<![\\w.#-])${d}`),...u.map(d=>`\\.${d}`)],N=p.length?new RegExp(`(?:${p.join("|")})(?![\\w-])`,"i"):null;return!!N&&e.some(d=>N.test(d))};function Fn(e){let n=[],u=p=>{for(let N of p.childNodes??[])N.tagName==="script"?n.push(N.childNodes.map(d=>d.value??"").join("")):N.tagName&&N.tagName!=="template"&&u(N)};return u(e),n.join(`
3
+ `)}var fe=["contains-task-list","task-list-item"],de=["task-list-item"],bs=["task-list-item-checkbox"],ue=(e,n)=>C(e).every(u=>n.includes(u));function ks(e){let n=e.childNodes.find(u=>!V(u));return n?.tagName==="input"&&G(n,["type","checked","disabled","class"])&&w(n,"type")?.toLowerCase()==="checkbox"&&ue(n,bs)&&n.sourceCodeLocation?.startTag?n:null}var Ls=e=>e.tagName==="li"&&ue(e,de)&&w(e,ie)===void 0&&e.sourceCodeLocation?.startTag&&ks(e),Gn=e=>e.tagName==="ul"&&ue(e,fe)&&y(e).length>0&&e.childNodes.every(n=>n.tagName==="li"||V(n))&&y(e).every(Ls),Kn={classes:[...new Set([...fe,...de,...bs])]},Hn=/checkbox|task-list/i,ne=e=>e.tagName==="ol"&&(w(e,"data-doc-chart")==="flow"||w(e,"data-flow")!==void 0&&w(e,"data-doc-chart")===void 0),Wn=e=>e?.tagName==="ol"&&!ct(e)&&(C(e).includes(ht)||ne(e)),Pn=e=>e.tagName==="li"&&Wn(e.parentNode),At="doc-icon",Un=e=>e.some(n=>n.tagName==="strong"||n.tagName==="b")&&e.every(n=>n.tagName==="strong"||n.tagName==="b"||R(n)&&jt.test(n.value)||n.nodeName==="#comment"),zn=/^(?:inherit|unset|currentcolor|none)$/i,qn=/^(?:inherit|initial|unset|revert|revert-layer|transparent|none)$/i,U=e=>e.replace(/\s+/g," ").trim(),ts=/^\s*--doc-(?:table-height|span)\s*:/i;function oe(e){let n=e.replace(/\/\*[\s\S]*?(?:\*\/|$)/g," "),u=[],p="",N=0,d=0;for(let O=0;O<=n.length;O++){let m=n[O];p?m==="\\"?O++:m===p&&(p=""):m==='"'||m==="'"?p=m:m==="("?N++:m===")"?N=Math.max(0,N-1):(m===";"&&N===0||O===n.length)&&(u.push(n.slice(d,O)),d=O+1)}return u.filter(O=>O.trim())}function ys(e){let n=new Map;for(let c of oe(e)){let $=c.indexOf(":"),i=U($<0?c:c.slice(0,$)).toLowerCase();n.set(i==="background-color"?"background":i,$<0?"":U(c.slice($+1).replace(/!\s*important\s*$/i,"")))}let u=[],p=[],N,d,O=new Set,m=(c,$,i)=>{if((c==="color"?zn:qn).test($))return;let f=yn($);if(!f||f.a===0&&c==="color"){u.push(c);return}if(f.a===0)return;let g=i($,{nearest:!0})?.replace(/_background$/,"");if(!g||!Cn.has(g)){p.push(`${c} ${$} left out: the ${c==="color"?"text's":"page's"} own is the nearest`);return}return i($)?.replace(/_background$/,"")!==g&&p.push(`${c} ${$} written as the kit's ${g}${c==="color"?"":" highlight"}`),g};for(let[c,$]of n)c==="color"?N=m(c,$,vn):c==="background"?d=m(c,$,Ln):c==="font-weight"&&/^(?:bold|bolder|[6-9]\d\d)$/i.test($)?O.add("strong"):c==="font-style"&&/^(?:italic|oblique)\b/i.test($)?O.add("em"):(c==="text-decoration"||c==="text-decoration-line")&&/^(?:(?:underline|line-through|solid)\s*)+$/i.test($)&&/underline|line-through/i.test($)?(/underline/i.test($)&&O.add("u"),/line-through/i.test($)&&O.add("s")):u.push(c);if(u.length)return{foreign:[...new Set(u)]};let L=[];N&&L.push([`<span class="doc-text-${N}">`,"</span>"]),d&&L.push([`<span class="doc-highlight-${d}">`,"</span>"]);for(let c of["strong","em","u","s"])O.has(c)&&L.push([`<${c}>`,`</${c}>`]);return{open:L.map(([c])=>c).join(""),close:L.map(([,c])=>c).reverse().join(""),notes:p}}var es=/^(?:language|lang)-([\w#+.-]+)$/,Jn=new Set(["data-language","data-lang","data-block-id"]),Vn=[{name:Je,names:[Je,"data-start"],value:e=>rn(e)?.toString()??null,says:"the number of its first line is a whole number from 1"},{name:"data-line-numbers",names:["data-line-numbers"],value:e=>/^\s*(?:true|false)\s*$/i.test(e)?e.trim().toLowerCase():null,says:"false hides its line numbers, true shows them"},{name:qe,names:[qe],value:e=>ln(U(e))?U(e):null,says:"its folded lines are their numbers from 1, spaces between"}],ss="data-title",ns="data-wrap",Xn=e=>y(e).length===1&&y(e)[0].tagName==="code"&&e.childNodes.every(n=>n.tagName||V(n))?y(e)[0]:null,Zn=new Set(["a","abbr","b","bdi","bdo","cite","code","data","del","dfn","em","font","i","ins","kbd","mark","q","s","samp","small","span","strike","strong","sub","sup","time","tt","u","var","br","wbr"]),Qn=new Set(["code","kbd","samp","tt","var"]);function vs(e){for(let n of e.childNodes){if(R(n))continue;if(!n.tagName)return"a comment in its <figcaption>";if(["img","picture","svg"].includes(n.tagName))return"a picture in its <figcaption>";if(!Zn.has(n.tagName))return`a <${n.tagName}> in its <figcaption>`;if(!n.sourceCodeLocation?.startTag||!(n.sourceCodeLocation.endTag||ee.has(n.tagName)))return`a <${n.tagName}> not closed in its <figcaption>`;let u=vs(n);if(u)return u}return""}function os(e){let n=y(e),u=n.filter(L=>L.tagName==="pre"),p=n.filter(L=>L.tagName==="figcaption");if(!u.length)return null;let[N]=u,[d=null]=p,O=e.childNodes.find(L=>!L.tagName&&!V(L)),m=u.length>1||p.length>1||n.length>u.length+p.length?"more than the pre and one <figcaption> in its <figure>":O?R(O)?"words in its <figure> outside its caption":"a comment in its <figure>":d?Z(d).length?`its <figcaption> has an attribute of its own (${Z(d).join(", ")})`:d.sourceCodeLocation?.endTag?vs(d):"its <figcaption> is not closed in the file":"";return m?{pre:N,caption:d,why:m}:{pre:N,caption:d}}function It(e){let n=(e.attrs??[]).filter(({value:p})=>p.trim()),u=e.tagName==="abbr";return n.map(p=>`${p.name} ${JSON.stringify(U(p.value))} dropped: ${u&&p.name==="title"?"write the full name in the text":"write it in the text if the reader needs it"}`)}var z=e=>e.replace(/&/g,"&amp;").replace(/"/g,"&quot;");function Yn(e){let n=new Set,u=p=>{for(let N of p.childNodes??[])if(N.tagName){for(let d of[tt,fs])w(N,d)!==void 0&&n.add(w(N,d));u(N.tagName==="template"?N.content:N)}};return u(e),n}function to(e){let n=new Map,u=p=>{for(let N of p.childNodes??[]){if(!N.tagName)continue;let d=w(N,"id");d!==void 0&&n.set(d,(n.get(d)??0)+1),u(N.tagName==="template"?N.content:N)}};return u(e),n}var eo=/^[A-Za-z][\w-]{0,63}$/;function so(e){let n=Ge(e),u=rt(n,{sourceCodeLocationInfo:!0}),p=bt(u);if(!p)return{text:n,changes:[]};let N=[],d=[],O=t=>n.slice(0,t).split(`
4
+ `).length,m=(t,s,o=[],l={})=>{let a=O(t.sourceCodeLocation.startOffset);o.length||d.push({line:a,rule:s,...l});for(let r of o)d.push({line:a,rule:s,note:r,...l})},L=0,c=(t,s,o,{opens:l=null,closes:a=null,move:r=null,leaves:h=!1}={})=>N.push({start:t,end:s,text:o,order:L++,opens:l,closes:a,move:r,leaves:h}),$=(t,s,o,l)=>{c(t,t,o,{opens:s}),c(s,s,l,{closes:t})},i=t=>t.sourceCodeLocation?.startTag,f=t=>t.sourceCodeLocation?.endTag,g=(t,s,{drop:o=[]}={})=>{let l=C(t).filter(h=>!o.includes(h)),a=[...l,...s.filter(h=>!l.includes(h))],r=t.sourceCodeLocation.attrs?.class;if(a.join(" ")!==C(t).join(" "))if(r&&a.length)c(r.startOffset,r.endOffset,`class="${z(a.join(" "))}"`);else if(r)x(t,"class");else{let h=i(t).startOffset+1+t.tagName.length;c(h,h,` class="${z(a.join(" "))}"`)}},x=(t,s)=>{let o=t.sourceCodeLocation.attrs[s],l=o.startOffset;for(;/[ \t\n\r\f]/.test(n[l-1]??"");)l--;c(l,o.endOffset,"")},T=(t,s,{classes:o=[],drop:l=[]}={})=>{let a=t.sourceCodeLocation,r=Object.entries(a.attrs??{}).filter(([v])=>v!=="class"&&!l.includes(v)).map(([,v])=>` ${n.slice(v.startOffset,v.endOffset)}`).join(""),h=[...o,...C(t).filter(v=>!o.includes(v))];return`<${s}${h.length?` class="${z(h.join(" "))}"`:""}${r}>`},M,q=t=>Rn(M??=Dn(u),t),Q,As=t=>t.test(Q??=Fn(u)),K=(t,s,o)=>{c(i(t).startOffset,i(t).endOffset,s),f(t)&&c(f(t).startOffset,f(t).endOffset,o)},Mt=t=>K(t,"",""),W=t=>!!(i(t)&&(f(t)||t.tagName==="img")),he,ge=t=>{let s=w(t,"id");if(t.tagName!=="dialog"||!G(t,["id"])||!eo.test(s??"")||!W(t))return!1;let o=y(t);return!(o.length?gs.has(o[0].tagName)&&W(o[0]):t.childNodes.some(a=>!V(a)&&a.nodeName!=="#comment"))||o.some(a=>a.tagName==="form")?!1:(he??=to(u),he.get(s)===1)},_s=t=>{let s=y(t)[0];return!pt(s,Yt.short)||Z(s).length?null:t.childNodes.slice(0,t.childNodes.indexOf(s)).every(V)?s:null},pe=t=>t.tagName==="dialog"&&(C(t).includes("doc-dialog")||ge(t)),Dt=(t,s=[])=>{for(let o of t.childNodes??[])if(o!==p){if(it(o)){at(o).forEach(l=>Dt(l,s));continue}pe(o)&&W(o)?s.push(o):Dt(o,s)}return s},Rt=f(p)?Dt(u):[],Ne,js=t=>(Ne??=new Set((function s(o,l=[]){for(let a of o.childNodes??[])if(a.tagName){if(it(a)){at(a).forEach(r=>s(r,l));continue}pe(a)&&l.push(w(a,"id")),s(a,l)}return l})({childNodes:[p,...Rt]})),/^#./.test(t??"")&&Ne.has(t.slice(1))),Bs=t=>{let[s,...o]=y(t);if(!s||o.length||!C(s).includes("doc-dialog-panel"))return null;let[l,a,...r]=y(s);if(r.length||!l||!a||!C(l).includes(dt.header)||!C(a).includes("doc-dialog-content"))return null;let h=S=>S.childNodes.some(_=>!_.tagName&&!V(_)&&_.nodeName!=="#comment");if(h(s)||h(l)||!W(l)||!i(a))return null;let v=y(l),k=v.filter(S=>C(S).includes(dt.title)),I=v.filter(S=>!k.includes(S)),A=S=>(C(S).includes(dt.close)||w(S,dt.closeAttribute)!==void 0)&&W(S);return k.length!==1||!W(k[0])||I.length>1||!I.every(A)?null:{header:l,title:k[0],close:I[0]??null,content:a}},Nt,Oe=(t,s=[])=>{for(let o of t.childNodes??[])if(o.tagName){for(let{name:l,value:a}of o.attrs)l!=="id"&&l!=="class"&&s.push(a);(o.tagName==="script"||o.tagName==="style")&&s.push(o.childNodes.map(l=>l.value??"").join("")),Oe(o,s)}return s},Ms=(t,s)=>{Nt??=Oe(u).join(`
5
+ `);let o=0;for(let l=Nt.indexOf(t);l>=0;l=Nt.indexOf(t,l+t.length))!/[\w-]/.test(Nt[l-1]??"")&&!/[\w-]/.test(Nt[l+t.length]??"")&&o++;return o>(s?1:0)};function Ds(t){let s=Bs(t);if(!s)return;let{header:o,title:l,close:a,content:r}=s,h=w(l,"id"),v=!!h&&w(t,"aria-labelledby")?.trim()===h;v&&x(t,"aria-labelledby"),c(i(o).startOffset,i(o).endOffset,n.slice(i(r).startOffset,i(r).endOffset));let k=i(l).startOffset+1;c(k,k+l.tagName.length,"h3"),g(l,[],{drop:[dt.title]}),h!==void 0&&!(h&&Ms(h,v))&&x(l,"id"),c(f(l).startOffset,f(l).endOffset,"</h3>"),a&&c(a.sourceCodeLocation.startOffset,a.sourceCodeLocation.endOffset,""),c(f(o).startOffset,f(o).endOffset,""),c(i(r).startOffset,i(r).endOffset,"")}let Ft=t=>{for(let s of t.childNodes??[]){if(it(s)){at(s).forEach(Ft);continue}s.tagName&&pt(s,Yt.match)&&Ds(s),Ft(s)}},$e=new Set;function we(t){let s=t.tagName;if(!W(t))return!1;let o=[];if(s==="mark"&&G(t,[]))K(t,'<span class="doc-highlight-yellow">',"</span>");else if((s==="del"||s==="strike")&&G(t,["cite","datetime"]))K(t,"<s>","</s>"),o=It(t);else if(s==="ins"&&G(t,["cite","datetime"]))K(t,"<u>","</u>"),o=It(t);else{if(["kbd","samp","tt","var"].includes(s)&&G(t,[]))return K(t,"<code>","</code>"),$e.add(t),m(t,s),!0;if(s==="a"&&G(t,["href"])&&js(w(t,"href")))return g(t,[$n]),m(t,"dialog link"),!1;if(s==="small"&&G(t,[]))K(t,'<span class="doc-text-gray">',"</span>");else if(s==="q"&&G(t,["cite"]))K(t,"\u201C","\u201D"),o=It(t);else if(["abbr","cite","dfn","time","bdi","data"].includes(s)&&G(t,["title","datetime","value"]))Mt(t),o=It(t);else if(s==="span"&&G(t,[])||s==="font"&&G(t,["color"])&&!w(t,"color")?.trim())Mt(t);else if(s==="span"&&G(t,["style"])||s==="font"&&G(t,["color"])){let l=ys(s==="span"?w(t,"style")??"":`color: ${w(t,"color")}`);if(l.foreign)return!1;K(t,l.open,l.close),o=l.notes}else return!1}return $e.add(t),m(t,s,o),!1}function Rs(t){let{startOffset:s,endOffset:o}=t.sourceCodeLocation,l=n.slice(s,o);for(let a of l.matchAll(En))$(s+a.index,s+a.index+a[0].length,'<span class="doc-math-inline">',"</span>"),d.push({line:O(s+a.index),rule:"formula"})}let Gt=new Set,be=new Set;function kt(t,s=()=>!1){for(let o of Qt(t)){if(!o.every(k=>k.tagName?i(k)&&(f(k)||ee.has(k.tagName))&&!se(k):k.sourceCodeLocation))continue;let l=o[0].sourceCodeLocation.startOffset,a=o.at(-1).sourceCodeLocation.endOffset,r=n.slice(l,a),h=l+Mn.exec(r)[0].length,v=a-/[ \t\n\r\f]*$/.exec(r)[0].length;if(o.every(R)&&wt(n.slice(h,v)))$(h,v,'<div class="doc-math-block">',"</div>"),d.push({line:O(h),rule:"display formula"}),o.forEach(k=>be.add(k));else if(s(o)){let k=Un(o);$(h,v,k?"<p>":"<p><strong>",k?"</p>":"</strong></p>"),d.push({line:O(h),rule:"step title",...Le(o[0].parentNode)}),o.forEach(I=>Gt.add(I))}else $(h,v,"<p>","</p>"),d.push({line:O(h),rule:"loose words"}),o.forEach(k=>Gt.add(k))}}let Fs=t=>t[0].parentNode.childNodes.slice(0,t[0].parentNode.childNodes.indexOf(t[0])).every(s=>!s.tagName||C(s).includes(At)),ke=new Set,Le=t=>ke.has(t.parentNode)?{}:(ke.add(t.parentNode),{note:"a step's own words written as its title, the first block of its node: <li><p><strong>\u2026</strong></p> then its content (a paragraph, a list\u2026)</li>"}),Gs=t=>{if(kt(t.childNodes,Fs),t.childNodes.filter(a=>a.tagName&&!C(a).includes(At)).length>0||Qt(t.childNodes).length>0||!i(t)||!f(t))return;let l=t.childNodes.filter(a=>a.tagName).at(-1)?.sourceCodeLocation?.endOffset??i(t).endOffset;c(l,l,"<p></p>"),d.push({line:O(l),rule:"step title",...Le(t)})},Kt,ye=()=>{Kt??=Yn(u);let t=gn(Kt);return Kt.add(t),t},Ks=(t,s)=>`<div data-doc-chart="${z(w(t,"data-doc-chart"))}" ${fs}="${z(s)}"></div>`,Ot=n.includes(`\r
6
+ `)?`\r
7
+ `:`
8
+ `,ve=t=>/^[ \t]*/.exec(n.slice(n.lastIndexOf(`
9
+ `,t-1)+1))[0];function Ce(t,s,o,l=null){let a=xe(t),r=a?ft(n,a.sourceCodeLocation.startOffset,a.sourceCodeLocation.endOffset):null,h=!!r&&(r.start!==a.sourceCodeLocation.startOffset||r.end!==a.sourceCodeLocation.endOffset),v=a?{from:i(a).endOffset,to:f(a).startOffset}:null,k=_=>`<figure class="doc-figure">${_?`<h3>${_}</h3>`:""}${Ks(t,o)}</figure>`,I=_=>v?_:_(""),A=h?`${Ot}${ve(i(s).startOffset)}`:"",S=!!(l??f(s));if(S){let _=l?f(t).endOffset:f(s).endOffset;c(_,_,I(F=>`${l??""}${A}${k(F)}`),{closes:i(s).startOffset,move:v}),d.push({line:O(_),rule:"chart",key:o})}else c(i(s).startOffset,i(s).startOffset,I(_=>`${k(_)}${A}`),{opens:i(s).endOffset,move:v}),d.push({line:O(i(s).startOffset),rule:"chart",key:o});return r&&c(r.start,r.end,""),S&&!!l}let[Hs]=Qe,xe=t=>{let s=t.childNodes.find(o=>!V(o));return s?.tagName!=="caption"||!W(s)||Z(s).length>0||!et(s)||!s.childNodes.every(o=>R(o)||o.tagName&&!ps.has(o.tagName)&&!Ns.has(o.tagName)&&!se(o))||s.childNodes.every(R)&&wt(n.slice(i(s).endOffset,f(s).startOffset))||q({tags:["caption"]})?null:s},Ws=t=>{let s=w(t,"rowspan");return s===void 0||/^\s*\d+\s*$/.test(s)&&Number(s)===1},Ps=t=>(w(t,"scope")??"").trim().toLowerCase()==="row";function Us(t){let s=y(t).filter(h=>["thead","tbody","tfoot"].includes(h.tagName)),o=s.flatMap(h=>y(h)).flatMap(h=>y(h)).filter(h=>h.tagName==="th"&&i(h)),l=!q({tags:["th","thead"]});if(l)for(let h of o)Ps(h)||g(h,ae.some(v=>C(h).includes(v))?[Hs]:Qe);let a=l||!o.length?[]:["its th as written (no header look, no thead): the document's own <style> styles th"],r=h=>h.length>0&&h.every(v=>v.tagName==="tr"&&W(v));for(let h of s){let v=y(h);if(h.tagName!=="tbody"||!r(v))continue;let[k,...I]=v,A=l&&s.length===1&&I.length>0&&y(k).length>0&&y(k).every(F=>F.tagName==="th"&&Ws(F)),S=i(h);if(S){if(!A||!f(h))continue;c(S.startOffset,S.endOffset,"<thead>"),c(k.sourceCodeLocation.endOffset,k.sourceCodeLocation.endOffset,`</thead>${n.slice(S.startOffset,S.endOffset)}`),m(k,"header row");continue}A&&($(k.sourceCodeLocation.startOffset,k.sourceCodeLocation.endOffset,"<thead>","</thead>"),m(k,"header row"));let _=A?I:v;$(_[0].sourceCodeLocation.startOffset,_.at(-1).sourceCodeLocation.endOffset,"<tbody>","</tbody>")}return a}let Ht,zs=()=>{Ht??=(function s(o,l=new Set){for(let a of o.childNodes??[])a.tagName&&(w(a,"data-doc-sheets")!==void 0&&l.add(w(a,"data-doc-sheets")),s(a.tagName==="template"?a.content:a,l));return l})(u);let t=1;for(;Ht.has(`tabs-${t}`);)t++;return Ht.add(`tabs-${t}`),`tabs-${t}`},Se=new Set,qs=t=>{let s=[],o=a=>a.childNodes.map(r=>R(r)?r.sourceCodeLocation?n.slice(r.sourceCodeLocation.startOffset,r.sourceCodeLocation.endOffset):r.value:r.tagName?(i(r)&&s.push(U(n.slice(i(r).startOffset,i(r).endOffset))),r.tagName==="br"?" ":o(r)):"").join(""),l=a=>a.childNodes.map(r=>R(r)?r.value:r.tagName==="br"?" ":r.tagName?l(r):"").join("");return{raw:U(o(t)),plain:U(l(t)),left:[...new Set(s)]}},Js=(t,s,o)=>{let l=t.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+/,"").slice(0,48).replace(/-+$/,"")||`tab-${s+1}`,a=l;for(let r=2;o.has(a);r++)a=`${l}-${r}`;return o.add(a),a};function Vs(t,s){let o=un(n),l=Ve[o]??Ve.zh,a=w(t,"data-doc-sheets")?.trim()?null:zs(),r=new Set,h=[],v=s.map(({section:I,heading:A},S)=>{let{raw:_,plain:F,left:Y}=qs(A),st=Js(F,S,r);Z(A).length&&h.push(`${Z(A).join(", ")} of the heading "${F}" left out: a tab is its name alone`);for(let nt of Y)h.push(`${nt} in the heading "${F}" left out: a tab's name is plain text`);K(I,`<div data-doc-sheet="${st}">`,"</div>"),Se.add(A);let{startOffset:J,endOffset:X}=A.sourceCodeLocation,P=ft(n,J,X);return c(P.start,P.end,Ot.repeat(n.slice(P.start,P.end).split(`
10
+ `).length-1)),We({sheet:st,title:_})}),k=T(t,t.tagName,{classes:["doc-sheet-shell"],drop:a?["data-doc-sheets"]:[]});a&&(k=k.replace(/>$/,` data-doc-sheets="${a}">`)),w(t,"aria-label")===void 0&&(k=k.replace(/>$/,` aria-label="${l}">`)),c(i(t).startOffset,i(t).endOffset,`${k}<div class="doc-sheet-tabs" aria-label="${l}">${v.join("")}</div>`),m(t,"sheets",h)}let Xs=t=>{let s=y(t)[0];return y(t).length===1&&s.tagName==="a"&&C(s).join(" ")==="doc-bookmark"&&G(s,["class","href","title","target","rel"])&&!!w(s,"href")?.trim()&&W(s)&&s.childNodes.every(R)&&t.childNodes.every(o=>o===s||V(o))};function Zs(t){let s=y(t)[0],o=w(s,"href").trim(),l=U(w(s,"title")??""),a=o;try{a=new URL(o).hostname||o}catch{}let r=[],h=w(s,"target");h!==void 0&&h.trim()!=="_blank"&&r.push(`target ${JSON.stringify(U(h))} left out: a bookmark opens its page in a new tab`);let v=w(s,"rel");v!==void 0&&v.split(/\s+/).some(A=>A&&!["noopener","noreferrer"].includes(A.toLowerCase()))&&r.push(`rel ${JSON.stringify(U(v))} left out: a bookmark's link is rel="noopener noreferrer"`),c(i(t).startOffset,i(t).endOffset,T(t,"figure",{classes:["doc-bookmark"]}));let k=et(s)?"":mt(a);c(i(s).startOffset,i(s).endOffset,`<a class="doc-bookmark-card" href="${z(o)}" target="_blank" rel="noopener noreferrer"><span class="doc-bookmark-text"><span class="doc-bookmark-title">${k}`);let I=l?`<span class="doc-bookmark-description">${mt(l)}</span>`:"";c(f(s).startOffset,f(s).endOffset,`</span>${I}<span class="doc-bookmark-url"><span class="doc-bookmark-href">${mt(o)}</span></span></span></a>`),c(f(t).startOffset,f(t).endOffset,"<figcaption></figcaption></figure>"),m(t,"bookmark",r)}let Qs=t=>{let s=t?.parentNode;if(!t?.tagName||!C(t).includes("doc-column")||!s?.tagName||!C(s).includes("doc-columns"))return null;let o=r=>Number(/--doc-column-ratio\s*:\s*(\d*\.?\d+)/i.exec(w(r,"style")??"")?.[1]??1)||1,l=y(s).filter(r=>C(r).includes("doc-column")),a=l.reduce((r,h)=>r+o(h),0);return(Tt-hn*(l.length-1))/Tt*(o(t)/a)},Wt=(t,s,o)=>{let l=w(t,"width"),a=/^\s*(\d+(?:\.\d+)?)\s*(px|%)?\s*$/i.exec(l??""),r=(s?w(s,"style")??"":"").trim().replace(/;\s*$/,""),h=t.sourceCodeLocation.attrs?.width;if(!a||!h||/--doc-span\s*:/i.test(r))return null;let v=a[2]==="%",k=v?Qs(o):null,I=v?Number(a[1])/100*(k??1):Number(a[1])/Tt,A=Math.round(Math.min(ut.max,Math.max(ut.min,I))*1e3)/1e3,S=h.startOffset;for(;/[ \t\n\r\f]/.test(n[S-1]??"");)S--;c(S,h.endOffset,"");let _=I<ut.min||I>ut.max?`, within ${ut.min} to ${ut.max}`:"",F=v?k===null?"a share of the width it stands in":`a share of the width it stands in, its column ${Math.round(k*1e3)/1e3} of the reading width`:`${Number(a[1])}px of the ${Tt}px reading width`;return{attribute:` style="${z(`${r?`${r}; `:""}${Ze}: ${A}`)}"`,note:`width="${l}" written as ${Ze}: ${A} on its figure (${F}${_}; at most the width it stands in)`}},Pt=(t,s)=>{let o=t?T(t,"figure",{classes:["doc-image"],drop:s?.attribute?["style"]:[]}):'<figure class="doc-image">';return s?.attribute?`${o.slice(0,-1)}${s.attribute}>`:o},Ys=t=>y(t).filter(s=>s.tagName==="img").length===1&&y(t).every(s=>s.tagName==="img"||s.tagName==="figcaption")&&t.childNodes.every(s=>s.tagName||V(s)),tn=t=>y(t).length===1&&y(t)[0].tagName==="img"&&t.childNodes.every(s=>s.tagName||V(s)),en=t=>t.childNodes.length>0&&t.childNodes.every(R)&&wt(n.slice(i(t).endOffset,f(t).startOffset)),Ut=new Set,Te=()=>q(Kn)||As(Hn),Ee=t=>Gn(t)&&!Te();function Ie(t,s=null,o=null,l=[]){let a=Xn(t),r=[t,a].filter(Boolean),h=[s,...r].filter(Boolean),v=r.flatMap(C).map(b=>es.exec(b)?.[1]).find(Boolean)??h.map(b=>w(b,"data-language")??w(b,"data-lang")).find(Boolean),k=b=>h.find(E=>E.sourceCodeLocation.attrs?.[b]),I=(b,E)=>{let B=b?.sourceCodeLocation.attrs[E];return B?` ${n.slice(B.startOffset,B.endOffset)}`:""},A=k("id"),S=[...l],_=new Map(h.map(b=>[b,new Set])),F=b=>b.flatMap(E=>h.filter(B=>w(B,E)!==void 0).map(B=>(_.get(B).add(E),{element:B,name:E,value:w(B,E)}))),Y=(b,E)=>S.push(`${b.name} ${JSON.stringify(U(b.value))} left out (its <${b.element.tagName}>'s): ${E}`),st=Vn.flatMap(({name:b,names:E,value:B,says:H})=>{let ot=F(E),D=ot.find(j=>B(j.value)!==null);for(let j of ot)j!==D&&Y(j,B(j.value)===null?H:`the block takes its <${D.element.tagName}>'s ${D.name}`);return D?[` ${b}="${z(B(D.value))}"`]:[]}),J=F([ns]),X=J.find(b=>/^\s*(?:true|false)\s*$/i.test(b.value));for(let b of J)b!==X&&Y(b,X?`the block takes its <${X.element.tagName}>'s ${ns}`:"false keeps its long lines on one line (they scroll), true wraps them");let P=X?X.value.trim().toLowerCase()==="false":r.some(b=>C(b).includes(Zt)),nt=r.flatMap(C).find(b=>xn.includes(b)),je=F([ss]),yt=o?null:je[0],Be=yt?mt(U(yt.value)):"";for(let b of je)b!==yt&&Y(b,o?"its caption is its title":`the block takes its <${yt.element.tagName}>'s ${ss}`);let Me=b=>Object.keys(b.sourceCodeLocation.attrs??{}).filter(E=>E!=="class"&&!Jn.has(E)&&!(E==="id"&&b===A)&&!_.get(b).has(E)),De=b=>{let E=C(b).filter(j=>!es.test(j)&&j!==Zt&&j!==nt),B=Me(b),ot=(b.attrs.find(j=>j.name==="style")?.value??"").split(";").map(j=>j.trim()).filter(Boolean).every(j=>/^--doc-code-height\s*:/i.test(j)),D=[...E.length?[`class ${JSON.stringify(E.join(" "))}`]:[],...B.filter(j=>!(j==="style"&&ot))];return D.length&&S.push(`${D.join(", ")} kept on its <${b.tagName}>`),`<${b.tagName}${E.length?` class="${z(E.join(" "))}"`:""}${B.map(j=>I(b,j)).join("")}>`},zt=s?Me(s):[],Re=`<div class="doc-code${P?` ${Zt}`:""}${nt?` ${nt}`:""}"${I(A,"id")}${I(k("data-block-id"),"data-block-id")}${v?` data-language="${z(v.toLowerCase())}"`:""}${st.join("")}${zt.map(b=>I(s,b)).join("")}>`;zt.length&&S.push(`${zt.join(", ")} kept on the block (its <figure>'s)`);let Fe=De(t),vt=b=>a?`${b}${Fe}`:`${b}${Fe}<code>`,Ct=a&&W(a)?"</pre>":"</code></pre>",xt=b=>`<div class="doc-code-title">${b}</div>`;if(!s)K(t,vt(`${Re}${xt(Be)}`),`${Ct}</div>`);else if(K(s,Re,"</div>"),!o)K(t,vt(xt(Be)),Ct);else{let{startOffset:b,endOffset:E}=o.sourceCodeLocation,B={from:i(o).endOffset,to:f(o).startOffset},H=D=>D.replace(/[ \t\n\r\f]+/g," ").trim(),ot=(D,j)=>n.slice(D,j).split(`
11
+ `).length-1;if(b<t.sourceCodeLocation.startOffset)c(b,E,D=>`${xt(H(D))}${Ot.repeat(ot(b,E))}`,{move:B}),K(t,vt(""),Ct);else{let D=ft(n,b,E),j=ot(D.start,D.end),sn=j?`${Ot.repeat(j)}${ve(i(t).startOffset)}`:"";c(i(t).startOffset,i(t).endOffset,nn=>vt(`${xt(H(nn))}${sn}`),{move:B}),c(D.start,D.end,""),f(t)&&c(f(t).startOffset,f(t).endOffset,Ct)}}if(a&&Z(a).length&&c(i(a).startOffset,i(a).endOffset,De(a)),o){let b=new Set,E=B=>{for(let H of y(B))(!Qn.has(H.tagName)||Z(H).length)&&b.add(U(n.slice(i(H).startOffset,i(H).endOffset))),ee.has(H.tagName)?c(i(H).startOffset,i(H).endOffset,H.tagName==="br"?" ":""):(Mt(H),E(H))};E(o);for(let B of b)S.push(`${B} in its caption left out: a code block's title is plain text`)}m(s??t,"code",S)}function Ae(t,s){let o=t.tagName;if(!W(t))return!1;if((o==="p"||o==="div"&&C(t).length===0)&&en(t))return K(t,T(t,"div",{classes:["doc-math-block"]}),"</div>"),m(t,"display formula"),!0;if(o==="figure"&&C(t).length===0&&Ys(t)){let r=Wt(y(t).find(h=>h.tagName==="img"),t,s);return c(i(t).startOffset,i(t).endOffset,Pt(t,r)),y(t).some(h=>h.tagName==="figcaption")||c(f(t).startOffset,f(t).startOffset,"<figcaption></figcaption>"),m(t,"figure",r?[r.note]:[]),!0}if(o==="img"&&Et.has(s?.tagName)){let r=Wt(t,null,s);return $(i(t).startOffset,i(t).endOffset,Pt(null,r),"<figcaption></figcaption></figure>"),m(t,"picture",r?[r.note]:[]),!0}if(o==="p"&&Et.has(s?.tagName)&&Xs(t))return Zs(t),!0;if(w(t,"data-doc-sheets")!==void 0){let r=mn(t)?.tabs;return r&&Vs(t,r),!1}if(o==="p"&&tn(t)){let r=Wt(y(t)[0],t,s);return K(t,Pt(t,r),"<figcaption></figcaption></figure>"),m(t,"picture",r?[r.note]:[]),!0}let l=o==="figure"&&C(t).length===0?os(t):null;if(l&&!l.why&&W(l.pre))return Ie(l.pre,t,l.caption),!0;if(o==="pre"&&!C(s??{}).includes("doc-code")){let h=s?.tagName==="figure"&&C(s).length===0&&y(s).some(k=>k.tagName==="figcaption")?os(s):null,v=h?.pre===t?h.why:"";return Ie(t,null,null,v?[`its <figure>'s caption stays a caption beside it: ${v}; a <figure> holding the pre and one <figcaption> of words alone makes them its title`]:[]),!0}if(o==="figure")return!Et.has(s?.tagName)||Tn(t)?!0:(g(t,["doc-figure"]),m(t,"figure"),ct(t));let a=o==="table"&&C(s??{}).includes("doc-table-wrap");if(o==="table"&&w(t,"data-doc-chart")!==void 0&&!Et.has((a?s.parentNode:s)?.tagName))return!1;if(o==="table"&&w(t,"data-doc-chart")!==void 0&&a&&i(s)){let r=w(s,tt)??ye();if(Ce(t,s,r),w(s,tt)===void 0){let h=i(s).endOffset-1;c(h,h,` ${tt}="${z(r)}"`)}return c(i(t).startOffset,i(t).endOffset,T(t,"table",{drop:["data-doc-chart"]})),!1}if(o==="table"&&(!ct(t)||ms(t))&&!C(s??{}).includes("doc-table-wrap")){let r=t.sourceCodeLocation.attrs?.["data-block-id"],h=w(t,"data-doc-chart")!==void 0,k=(w(t,tt)?.trim()||null)??(h?ye():null),I=w(t,"style"),A=I===void 0?[]:oe(I).filter(P=>ts.test(P)),S=A.length?oe(I).filter(P=>!ts.test(P)):[],_=P=>` style="${z(P.map(nt=>nt.trim()).join("; "))}"`,F=`<div class="doc-table-wrap"${r?` ${n.slice(r.startOffset,r.endOffset)}`:""}${k?` ${tt}="${z(k)}"`:""}${A.length?_(A):""}>`,Y=T(t,"table",{classes:["doc-table"],drop:["data-block-id",...w(t,tt)!==void 0?[tt]:[],...h?["data-doc-chart"]:[],...A.length?["style"]:[]]}),st=S.length?`${Y.slice(0,-1)}${_(S)}>`:Y,J=h?null:xe(t),X=!1;if(h&&(X=Ce(t,t,k,"</div>")),J){let P=n.slice(i(t).endOffset,J.sourceCodeLocation.startOffset);c(i(t).startOffset,i(J).endOffset,'<p class="doc-note">'),c(f(J).startOffset,f(J).endOffset,`</p>${P}${F}${st}`),m(J,"caption")}else c(i(t).startOffset,i(t).startOffset,F,{opens:f(t).endOffset}),c(i(t).startOffset,i(t).endOffset,st);return X||c(f(t).endOffset,f(t).endOffset,"</div>",{closes:i(t).startOffset}),m(t,"table",Us(t)),!1}if(o==="details"&&Ye(t)){let r=y(t)[0]?.tagName==="summary"?y(t)[0]:null;return!r||!W(r)||(c(i(t).startOffset,i(t).endOffset,T(t,"details",{classes:["doc-details"]})),y(r).some(h=>C(h).includes("doc-details-summary-label"))||$(i(r).endOffset,f(r).startOffset,'<span class="doc-details-summary-label">',"</span>"),$(f(r).endOffset,f(t).startOffset,'<div class="doc-details-content">',"</div>"),kt(t.childNodes.slice(t.childNodes.indexOf(r)+1)),m(t,"details")),!1}if(o==="dialog"&&ge(t)){let r=_s(t);return c(i(t).startOffset,i(t).endOffset,T(t,"dialog",{classes:["doc-dialog"]})),$(i(t).endOffset,f(t).startOffset,'<div class="doc-dialog-panel"><div class="doc-dialog-content">',"</div></div>"),r&&K(r,"<h3>","</h3>"),kt(t.childNodes.slice(r?t.childNodes.indexOf(r)+1:0)),m(t,"dialog"),!1}if(o==="aside"&&Ye(t)&&!q({tags:["aside"]}))return g(t,["doc-panel"]),Ut.add(t),m(t,"aside"),!1;if(o==="ul"&&Ee(t)){g(t,[te],{drop:fe});for(let r of y(t))_e(r);return m(t,"task list"),!1}if(ne(t)&&!ct(t))return c(i(t).startOffset,i(t).endOffset,T(t,"ol",{classes:[ht],drop:["data-doc-chart","data-flow"]})),m(t,"flowchart"),!1;if(o==="ul"&&C(t).includes(te)&&!ct(t)){let r=y(t).filter(Ls);if(r.length&&!Te()){for(let h of r)_e(h);m(t,"task list")}return!1}return!1}function _e(t){let s=ks(t);if(g(t,[],{drop:de}),w(s,"checked")!==void 0){let a=i(t).startOffset+1+t.tagName.length;c(a,a,` ${ie}`)}let{startOffset:o,endOffset:l}=s.sourceCodeLocation;c(o,l+(n[l]===" "?1:0),"")}function $t(t,s=null,o=!1){let l=()=>Qt(t.childNodes).length>0;$s(t)&&(ws(t)||(Ut.has(t)||Bn(t))&&l())?kt(t.childNodes):Pn(t)&&i(t)&&Gs(t);for(let a of t.childNodes??[]){if(R(a)){a.sourceCodeLocation&&a.value.includes("\\(")&&!be.has(a)&&Rs(a);continue}if(!(!a.tagName||ce.has(a.tagName)||Se.has(a))){if(it(a)){for(let r of at(a))Ut.add(r),$t(r,r);continue}if(!(w(a,"data-doc-chart")!==void 0&&a.tagName!=="table"&&!ne(a)||w(a,"contenteditable")!==void 0)&&!C(a).some(r=>_t.includes(r))){if(a.tagName==="pre"){Ae(a,t);continue}if(!(le(a)&&!Ee(a))){if(Gt.has(a)){we(a)||$t(a,a,!0);continue}Ae(a,t)||o&&we(a)||$t(a,a,o||re.has(a.tagName))}}}}}$t(p,p),$t({childNodes:Rt}),n.includes(dt.header)&&Ft(u);for(let t of Rt){let{startOffset:s,endOffset:o}=t.sourceCodeLocation,l=ft(n,s,o),a=f(p).startOffset,r=l.end>o?qt(n,a):null;c(a,a,h=>r===null?h:`${h}${Ot}${r}`,{move:{from:s,to:o}}),c(l.start,l.end,"",{leaves:!0}),m(t,"card outside main")}if(!N.length)return{text:n,changes:[]};let Lt=N;for(let t of N.filter(s=>s.move)){let{from:s,to:o}=t.move,l=Lt.filter(a=>!a.move&&!a.leaves&&a.start>=s&&a.end<=o);Lt=Lt.filter(a=>!l.includes(a)),t.text=t.text(as(n.slice(s,o),l,s)),t.move=null}return{text:as(n,Lt),changes:d.sort((t,s)=>t.line-s.line)}}function as(e,n,u=0){let p=m=>m.closes!==null?0:m.opens!==null?2:1,N=(m,L)=>p(m)-p(L)||(m.closes!==null?L.closes-m.closes||L.order-m.order:0)||(m.opens!==null?L.opens-m.opens:0)||m.order-L.order,d=[...n].sort((m,L)=>L.start-m.start||L.end-m.end||(m.start===m.end?N(L,m):L.order-m.order)),O=e;for(let{start:m,end:L,text:c}of d)O=O.slice(0,m-u)+c+O.slice(L-u);return O}function Cs(e,{finish:n=u=>u}={}){let{text:u,changes:p}=so(e);return{text:p.length?n(u):u,changes:p}}function Mo(e,{finish:n,next:u,metadata:p=null}={}){let N=Xt(e);if(N.length)return{text:e,changes:[],added:0,given:[],repeated:N,title:null,icon:null};let d=Cs(e,{finish:n}),{text:O,added:m,given:L}=Pe(d.text,u),c=xs(O,p);return{...c,changes:d.changes,added:m,given:ze(c.text,L),repeated:N}}function Do(e){return Xt(e).length?[]:Ue(Cs(e).text)}function xs(e,n=null){let u=rt(e,{sourceCodeLocationInfo:!0}),p=bt(u),N=p&&gt(p,c=>pt(c,ds.title)),d=N?.sourceCodeLocation?.endTag?St(e.slice(N.sourceCodeLocation.startTag.endOffset,N.sourceCodeLocation.endTag.startOffset)):"",O=e,m=null;if(d){let c=gt(u,x=>x.tagName==="head"),i=(c&&gt(c,x=>x.tagName==="title"))?.sourceCodeLocation,f=typeof n?.title=="string"?n.title:null,g=!1;if(i?.startTag&&i.endTag){let x=St(e.slice(i.startTag.endOffset,i.endTag.startOffset));if(!(f&&f!==d&&f.includes(d)?x.split(f).join("\0").includes(d):x.includes(d))){let M=f&&f!==d&&He(e,{from:f,to:d})||{start:i.startTag.endOffset,end:i.endTag.startOffset,text:mt(d)};O=e.slice(0,M.start)+M.text+e.slice(M.end),g=!0}}(g||f!==null&&f!==d)&&(m={from:f,to:d,page:g})}let L=null;if(p&&n&&typeof n=="object"){let c=Vt(e),$=c.units.find(g=>g.kind==="icon"&&c.boxes[g.box]?.kind==="header"),i=$?rs(e.slice($.start,$.end)):null,f=n.icon??null;$?i!==null&&i!==f&&(L={from:f,to:i}):L=f===null?null:{from:f,to:f,missing:!0}}return{text:O,title:m,icon:L}}function Ro(e,{title:n,icon:u}={}){let p=$=>{let i=bt(rt($,{sourceCodeLocationInfo:!0})),f=i&&gt(i,g=>pt(g,ds.title));return f?.sourceCodeLocation?.endTag?f.sourceCodeLocation:null},N=$=>{let i=Vt($);return i.units.find(f=>f.kind==="icon"&&i.boxes[f.box]?.kind==="header")??null},d=p(e);if(!d)return{missing:!0};let O=St(e.slice(d.startTag.endOffset,d.endTag.startOffset)),m=N(e),L={title:O,icon:m?rs(e.slice(m.start,m.end)):null},c=e;if(u!==void 0&&u!==L.icon){if(m&&u===null){let $=ft(c,m.start,m.end);c=c.slice(0,$.start)+c.slice($.end)}else if(m){let $=/\sdata-block-id="[^"]*"/.exec(/^<[^>]*>/.exec(c.slice(m.start,m.end))?.[0]??"")?.[0]??"";c=c.slice(0,m.start)+Xe(u,$)+c.slice(m.end)}else{let $=qt(c,d.startTag.startOffset);c=c.slice(0,d.startTag.startOffset)+Xe(u)+($===null?"":`
12
+ ${$}`)+c.slice(d.startTag.startOffset)}d=p(c)}return n!==void 0&&(c=c.slice(0,d.startTag.endOffset)+mt(n)+c.slice(d.endTag.startOffset),c=xs(c,{title:O||null}).text),{text:c,before:L}}function Fo(e,n,{dryRun:u=!1,pending:p=!1,reread:N=!u&&!p}={}){let d=new Map;for(let{rule:L,line:c}of n)d.set(L,[...new Set([...d.get(L)??[],c])]);let O=[...d].map(([L,c])=>`${L} (line${c.length>1?"s":""} ${c.join(", ")})`).join(", "),m=an.resolve(e);return[p?`natural ${m}: ${O} not rewritten yet: the export rewrites them in this file as the kit's markup (nothing to fix)`:`natural ${m}: ${O}${u?" would be":""} rewritten in this file as the kit's markup (nothing to fix)`,...n.filter(L=>L.note).map(({line:L,rule:c,note:$})=>` line ${L}, ${c}: ${$}`),...N?[" re-read the file before editing it"]:[]]}var is="strong, em, b, i, u, s, code, a, sub, sup and br, the kit's colors (doc-text-*, doc-highlight-*) and formulas",me=`write a to-do list as ul.${te} \u203A li, li[${ie}] for a checked item (a GFM task list, every item starting with its box, is made one unless the document's own style or script uses GFM's classes or the boxes)`,Ss=e=>C(e).every(ls),Ts=e=>y(e).flatMap(n=>[...n.tagName==="span"&&!(G(n,["class"])&&Ss(n))?[n]:[],...Ts(n)]),Es=e=>y(e).some(n=>n.tagName==="img"||Es(n)),Is=e=>y(e).some(n=>n.tagName==="svg"||n.tagName==="canvas"||Is(n)),Bt=e=>y(e).some(n=>n.tagName==="input"&&w(n,"type")?.toLowerCase()==="checkbox"||Bt(n)),no=(e,n)=>{if(e==="tag:img")return"a picture amid the words: give it a paragraph of its own";if(e==="tag:span"){let u=Ts(n).filter(p=>G(p,["style","class"])&&w(p,"style")!==void 0&&Ss(p)).map(p=>ys(w(p,"style")).foreign).find(Boolean);return u?`a span with a style the kit has no format for (${u.join(", ")}): left as written`:`a <span> with a class or attribute of the document's own (the preview edits ${is})`}return e==="tag:input"&&Bt(n)?`a checkbox amid the words: ${me}`:e.startsWith("tag:")&&lt.has(e.slice(4))?`a block (<${e.slice(4)}>) amid the words: give the words a paragraph of their own`:e.startsWith("tag:")?`<${e.slice(4)}> amid the words (the preview edits ${is})`:e==="comment"?"an HTML comment amid the words":e==="markup"?"an element not closed in the file (the parser closed it)":e==="mention"?'a page block written another way: the preview edits only <a class="doc-link-mention" href="../<slug>/doc.html"><span class="doc-link-mention-icon"></span>title</a>, its title plain words, no other attribute':e==="link"?"a javascript: or data: link":e},oo=new Set([...Os,"details"]);function Go(e){let n=rt(e,{sourceCodeLocationInfo:!0}),u=bt(n);if(!u)return[];let p=$=>e.slice(0,$).split(`
13
+ `).length,N=new Map,d=[],O=$=>{oo.has($.tagName)&&$.sourceCodeLocation?.startTag&&ws($)&&d.push({line:p($.sourceCodeLocation.startOffset),text:`<${$.tagName}>: words straight in it, outside any paragraph: give them a <p> (the preview cannot reach them, nor move its blocks one by one)`})},m=($,i=()=>!1)=>{for(let f of y($)){if(i(f))continue;let g=f.sourceCodeLocation?.startTag;g&&N.set(g.endOffset-1,f),m(f,i)}},L=$=>{for(let i of $.childNodes??[]){if(!i.tagName||ce.has(i.tagName))continue;if(it(i)){m(i,cs),at(i).forEach(L);continue}if(w(i,"data-doc-chart")!==void 0||C(i).some(x=>_t.includes(x))||le(i))continue;let f=i.sourceCodeLocation?.startTag;f&&N.set(f.endOffset-1,i);let g=i.sourceCodeLocation?.endTag;if(re.has(i.tagName)&&f&&i.childNodes.some(x=>R(x)&&/\\\[|\$\$/.test(x.value))&&!(g&&i.childNodes.every(R)&&wt(e.slice(f.endOffset,g.startOffset)))){let x=In(e.slice(f.endOffset,g?g.startOffset:i.sourceCodeLocation.endOffset),!!g);d.push({line:p(f.startOffset),text:x?`<${i.tagName}>: the formula holds a bare < or >: write \\lt / \\gt (or &lt; / &gt;)`:`<${i.tagName}>: a display formula (\\[\u2026\\] or $$\u2026$$) amid the words: give it a paragraph of its own`})}i.tagName==="caption"&&f&&(et(i)||y(i).length>0)&&d.push({line:p(f.startOffset),text:'<caption>: the preview cannot edit a table caption; write the line above the table as <p class="doc-note">'}),O(i),L(i)}};O(u),L(u);let c=new Set;for(let{at:$,reason:i}of Jt(e).locks){let f=N.get($);if(!f)continue;let g=i==="tag:input"&&f.tagName==="li"&&Bt(f)&&f.parentNode?.sourceCodeLocation?.startTag?f.parentNode:null;g&&c.has(g)||(g&&c.add(g),g?d.push({line:p(g.sourceCodeLocation.startOffset),text:`<${g.tagName}>: checkboxes in its items: ${me}`}):d.push({line:p(f.sourceCodeLocation.startOffset),text:`<${f.tagName}>: ${no(i,f)}`}))}return d.sort(($,i)=>$.line-i.line).map(({line:$,text:i})=>`line ${$}: ${i}`)}function Ko(e){let n=rt(e,{sourceCodeLocationInfo:!0}),u=bt(n);if(!u)return[];let p=f=>e.slice(0,f).split(`
14
+ `).length,N=[],d=[],O=f=>{for(let g of f.childNodes??[])g.tagName==="style"?d.push((g.childNodes??[]).map(x=>x.value??"").join("")):O(g)};O(n);let m=d.join(`
15
+ `).replace(/\/\*[\s\S]*?\*\//g,""),L=f=>new RegExp(`\\.${f.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}(?![\\w-])`).test(m),c=f=>{for(let g of y(f).filter(x=>x.tagName==="colgroup"&&w(x,"data-doc-columns")===void 0)){let x=[g,...y(g)].filter(M=>w(M,"width")!==void 0||/(?:^|;)\s*(?:min-|max-)?width\s*:/i.test(w(M,"style")??"")),T=(g.sourceCodeLocation?g:y(g)[0])?.sourceCodeLocation;x.length&&T&&N.push({line:p(T.startOffset),text:`<${g.sourceCodeLocation?"colgroup":"col"}> widths: the kit sizes columns itself; a merged table uses yours`})}},$=f=>{for(let g of f.childNodes??[]){if(!g.tagName||ce.has(g.tagName))continue;if(it(g)){at(g).forEach($);continue}if(w(g,"data-doc-chart")!==void 0||C(g).some(T=>_t.includes(T)))continue;if(le(g)){let T=g.sourceCodeLocation,M=cn(e,g).some(({name:q})=>q==="class");if(gs.has(g.tagName)&&T?.startTag&&!M&&(et(g)||Es(g))&&!Is(g)&&!C(g).some(L)){let q=(g.tagName==="ul"||g.tagName==="ol")&&Bt(g)?`; for its checkboxes, ${me}`:"";N.push({line:p(T.startOffset),text:`<${g.tagName} class="${w(g,"class").trim()}"> is a whole block (\u6574\u4F53\u5757): the reader moves it whole and edits its words in place; right for a layout of yours that is no figure (a figure, a diagram or a timeline, goes in <figure class="doc-figure">); drop its class only if its contents were meant as ordinary blocks${q}`})}continue}g.tagName==="table"&&c(g);let x=g.tagName==="ol"&&C(g).includes(ht)?y(g).find(T=>T.tagName!=="li"&&T.sourceCodeLocation):null;if(x&&N.push({line:p(x.sourceCodeLocation.startOffset),text:`<ol class="${ht}"> holds a <${x.tagName}> outside its items: a flowchart's steps are its <li>s (what one holds after its words, a paragraph or a list, is that step's content)`}),g.tagName==="ol"&&C(g).includes(ht))for(let T of y(g).filter(M=>M.tagName==="li")){let M=y(T).find(Q=>!C(Q).includes(At)),q=M?T.childNodes.slice(0,T.childNodes.indexOf(M)):[];M&&M.tagName!=="p"&&M.sourceCodeLocation&&!q.some(Q=>!C(Q).includes(At)&&et(Q))&&N.push({line:p(M.sourceCodeLocation.startOffset),text:`a step of <ol class="${ht}"> begins with a <${M.tagName}>: a step's first block is its title, a paragraph (<p><strong>\u2026</strong></p>), the blocks after it its content`})}$(g)}};return $(u),i(u,(f,g)=>N.push({line:f,text:`a ${ao[g]} in the text: the page shows it as a break or an empty line, not as a character (a tool that decodes \\u2028 or \\u2029 escapes writes one); write the break the text means (<br>, a new paragraph, a new line in code) or take it out`})),N.sort((f,g)=>f.line-g.line).map(({line:f,text:g})=>`line ${f}: ${g}`);function i(f,g){for(let x of f.childNodes??[])if(!(x.tagName==="script"||x.tagName==="style")){if(it(x)){at(x).forEach(T=>i(T,g));continue}if(R(x)&&x.sourceCodeLocation&&/[\u2028\u2029]/.test(x.value)){let{startOffset:T,endOffset:M}=x.sourceCodeLocation,Q=e.slice(T,M).search(/[\u2028\u2029]/);g(p(T+Math.max(Q,0)),x.value.match(/[\u2028\u2029]/)[0])}i(x,g)}}}function Ho(e){let n=O=>e.slice(0,O).split(`
16
+ `).length,u=O=>R(O)?O.value:(O.childNodes??[]).map(u).join(""),p=O=>u(O).replace(/\s+/g," ").trim(),N=O=>y(O).find(m=>/^h[1-6]$/.test(m.tagName)),d=[];for(let O of Jt(e).units){if(O.keep?.reason!=="script"||!O.keep.own)continue;let m=O.node.parentNode;for(;m&&m.tagName!=="section";)m=m.parentNode;let L=O.tag==="section"&&N(O.node)?` ${p(N(O.node))}`:"",c=m?.tagName&&N(m)?` in ${p(N(m))}`:"";d.push({line:n(O.elStart),text:`<${O.tag}>${L}${c} kept by the script: ${O.keep.names.join(", ")} (the reader cannot delete or convert it; rename any of these the script does not select it by)`})}return d.sort((O,m)=>O.line-m.line).map(({line:O,text:m})=>`line ${O}: ${m}`)}var ao={"\u2028":"line separator (U+2028)","\u2029":"paragraph separator (U+2029)"};function bt(e){return gt(e,n=>n.tagName==="main")}function gt(e,n){if(e.tagName&&n(e))return e;for(let u of e.childNodes??[]){let p=gt(u,n);if(p)return p}return null}export{so as a,Cs as b,Mo as c,Do as d,xs as e,Ro as f,Fo as g,Go as h,Ko as i,Ho as j};
@@ -0,0 +1,2 @@
1
+ import { createRequire as __galleryRequire } from "node:module"; import { fileURLToPath as __galleryPath } from "node:url"; const require = __galleryRequire(import.meta.url); const __filename = __galleryPath(import.meta.url); const __dirname = __galleryPath(new URL(".", import.meta.url));
2
+ import{spawn as G}from"node:child_process";import{existsSync as O}from"node:fs";import S from"node:fs/promises";import I from"node:os";import q from"node:path";import{APART as T}from"../browser/editor/components/registry.mjs";var _=6e4,b=600,B=["A4","A3","Letter","Legal","Tabloid"];function F(){if(process.env.GALLERY_BROWSER)return process.env.GALLERY_BROWSER;let{PROGRAMFILES:o="","PROGRAMFILES(X86)":e="",LOCALAPPDATA:r="",HOME:i=""}=process.env;return({win32:[`${o}\\Google\\Chrome\\Application\\chrome.exe`,`${e}\\Google\\Chrome\\Application\\chrome.exe`,`${r}\\Google\\Chrome\\Application\\chrome.exe`,`${e}\\Microsoft\\Edge\\Application\\msedge.exe`,`${o}\\Microsoft\\Edge\\Application\\msedge.exe`],darwin:["/Applications/Google Chrome.app/Contents/MacOS/Google Chrome","/Applications/Microsoft Edge.app/Contents/MacOS/Microsoft Edge","/Applications/Chromium.app/Contents/MacOS/Chromium",...i?[`${i}/Applications/Google Chrome.app/Contents/MacOS/Google Chrome`,`${i}/Applications/Microsoft Edge.app/Contents/MacOS/Microsoft Edge`,`${i}/Applications/Chromium.app/Contents/MacOS/Chromium`]:[]],linux:["/usr/bin/google-chrome","/usr/bin/google-chrome-stable","/opt/google/chrome/chrome","/usr/bin/microsoft-edge","/usr/bin/microsoft-edge-stable","/opt/microsoft/msedge/msedge","/usr/bin/chromium","/usr/bin/chromium-browser","/snap/bin/chromium"]}[process.platform]??[]).find(s=>s&&O(s))??null}var $=()=>process.getuid?.()===0?["--no-sandbox"]:[],Z=()=>["--no-first-run","--no-default-browser-check","--disable-extensions","--hide-scrollbars","--lang=zh-CN",...$()];function ee(o,e,r=[]){let i=o.location()?.url??"";return!/^Failed to load resource|^Refused to |Content Security Policy/.test(o.text())&&(!i||i.startsWith(e)||r.includes(i))}var te=o=>o.evaluateOnNewDocument(()=>{globalThis.__qaViolations=[],document.addEventListener("securitypolicyviolation",e=>{globalThis.__qaViolations.push({url:e.blockedURI,directive:e.effectiveDirective||e.violatedDirective,source:e.sourceFile,line:e.lineNumber})})}),N=3e4,E=o=>new Promise(e=>setTimeout(e,o).unref()),R=o=>String(o??"").replace(/\s+/g," ").trim(),M=o=>{let e=o.split(/\r?\n/).map(R).filter(Boolean).at(-1);return e?`: ${e.slice(0,200)}`:""};async function oe({executablePath:o,args:e=[],attempts:r=2,start:i=V}){let l=[];for(let s=0;s<r;s+=1){let a=await S.mkdtemp(q.join(I.tmpdir(),"gallery-browser-")),t=()=>S.rm(a,{recursive:!0,force:!0,maxRetries:5,retryDelay:200}).catch(()=>{});try{let{browser:n,stop:c}=await i({executablePath:o,args:e,profile:a});return{browser:n,failures:l,close:async()=>{await c().catch(()=>{}),await t()}}}catch(n){l.push(R(n?.message??n)),await t()}}throw Object.assign(new Error(l.at(-1)??"the browser did not start"),{failures:l})}async function V({executablePath:o,args:e,profile:r,starting:i=N}){let{default:l}=await import("./chunk-GB5SOYQJ.mjs"),s=await l.defaultArgs({headless:!0,userDataDir:r,args:[...e,"--remote-debugging-port=0"]}),a=process.platform!=="win32",t=G(o,s,{stdio:["ignore","ignore","pipe"],windowsHide:!0,detached:a}),n=!1;t.on("error",()=>n||=t.pid===void 0);let c=()=>n||t.exitCode!==null||t.signalCode!==null,u=new Promise(h=>t.once("exit",h)),m=()=>{if(!c())try{a?process.kill(-t.pid,"SIGKILL"):t.kill()}catch{try{t.kill("SIGKILL")}catch{}}};process.once("exit",m);let p="",d=new Promise((h,v)=>{let P=setTimeout(()=>v(new Error(`it said nothing of its DevTools port in ${i/1e3}s${M(p)}`)),i);t.stderr.setEncoding("utf8"),t.stderr.on("data",f=>{p=`${p}${f}`.slice(-4e3);let y=/DevTools listening on (ws:\/\/\S+)/.exec(p);y&&(clearTimeout(P),h(y[1]))}),t.once("error",f=>(clearTimeout(P),v(f))),t.once("exit",(f,y)=>(clearTimeout(P),v(new Error(`it stopped (${y??`exit ${f}`}) before it opened its DevTools port${M(p)}`))))}),g=async()=>{try{c()||await Promise.race([u,E(5e3)]),m(),c()||await Promise.race([u,E(3e3)])}finally{process.off("exit",m)}},x;try{x=await l.connect({browserWSEndpoint:await d,defaultViewport:{width:800,height:600}})}catch(h){throw m(),await g(),h}return{browser:x,stop:async()=>{await Promise.race([x.close().catch(()=>{}),E(5e3)]),await g()}}}var w=null,L=0,C=0;async function W(){let o=F();if(!o)throw Object.assign(new Error("\u6CA1\u6709\u627E\u5230 Chrome \u6216 Edge\uFF1A\u5BFC\u51FA PDF \u9700\u8981\u7535\u8111\u4E0A\u88C5\u6709\u5176\u4E2D\u4E00\u4E2A\u6D4F\u89C8\u5668"),{reason:"browser"});let{default:e}=await import("./chunk-GB5SOYQJ.mjs");return e.launch({executablePath:o,headless:!0,args:["--no-first-run","--no-default-browser-check","--disable-extensions",...$()]})}async function k(o,e){clearTimeout(L),C+=1,w??=W().catch(i=>{throw w=null,i});let r=await(await w).newPage();try{return await r.emulateMediaFeatures([{name:"prefers-reduced-motion",value:"reduce"},{name:"prefers-color-scheme",value:"light"}]),await r.setViewport({width:1200,height:900}),await r.setContent(o,{waitUntil:"load",timeout:6e4}),await A(r,{changing:b}),await e(r)}finally{await r.close().catch(()=>{}),C-=1,C===0&&(L=setTimeout(async()=>{let i=w;w=null,(await i?.catch(()=>null))?.close().catch(()=>{})},_))}}async function A(o,{timeout:e=15e3,changing:r=e}={}){let i=[],l=(a,t,n=e)=>{t!==!0&&i.push(`${a} (${t===!1?`not in ${n/1e3}s`:t})`)},s=(a,t=e)=>o.evaluate(a,t).catch(n=>n.message);return l("the fonts loaded",await s(a=>Promise.race([Promise.resolve(document.fonts?.ready).then(()=>!0),new Promise(t=>setTimeout(()=>t(!1),a))]))),l("the kit's first drawing done (data-doc-drawn)",await s(a=>new Promise(t=>{let n=Date.now(),c=()=>{!globalThis.DocKit||document.documentElement.hasAttribute("data-doc-drawn")?(globalThis.DocCode?.colorAll?.(),t(!0)):Date.now()-n>a?t(!1):setTimeout(c,50)};c()}))),l("the page done changing",await s(a=>new Promise(t=>{let n=()=>[document.documentElement.scrollHeight,...[...document.querySelectorAll("[style]")].map(d=>d.getAttribute("style")),...[...document.adoptedStyleSheets??[]].flatMap(d=>[...d.cssRules].map(g=>g.cssText)),...[...document.querySelectorAll("svg, canvas")].map(d=>d.outerHTML.length),[...document.images].filter(d=>d.complete).length].join("|"),c=Date.now(),u=n(),m=0,p=()=>{let d=n();m=d===u?m+1:0,u=d,m>=3?t(!0):Date.now()-c>a?t(!1):setTimeout(p,100)};setTimeout(p,100)}),r),r),i}async function D(o){await o.evaluate(()=>{document.documentElement.setAttribute("data-doc-theme","light");for(let e of document.querySelectorAll("[data-doc-sheets]")){let r=e.querySelector(":scope > .doc-sheet-tabs");if(r){for(let i of r.querySelectorAll(":scope > .doc-sheet-tab")){let l=i.getAttribute("data-sheet-tab"),s=[...e.querySelectorAll(":scope > [data-doc-sheet]")].find(n=>n.getAttribute("data-doc-sheet")===l);if(!s)continue;s.hidden=!1,s.removeAttribute("aria-hidden"),s.style.setProperty("display","block","important");let a=r.cloneNode(!1);a.removeAttribute("id"),a.removeAttribute("role"),a.style.setProperty("break-after","avoid");let t=i.cloneNode(!0);t.removeAttribute("id"),t.setAttribute("aria-selected","true"),t.classList.add("is-active"),a.append(t),s.before(a)}r.style.setProperty("display","none","important")}}for(let e of document.querySelectorAll("details"))e.open=!0;window.dispatchEvent(new Event("resize"))}),await A(o,{changing:b})}var H={A4:793.7,A3:1122.5,Letter:816,Legal:816,Tabloid:1056},K=96;async function j(o,e){await o.emulateMediaType("print");let r=await o.evaluate(()=>Math.max(0,innerWidth-document.documentElement.clientWidth));await o.setViewport({width:Math.floor(e)+r,height:900}),await A(o,{changing:b})}function re(o,{paper:e="A4",scale:r=1}={}){let i=B.includes(e)?e:"A4",l=Math.min(2,Math.max(.1,r));return k(o,async s=>(await D(s),await j(s,(H[i]-2*K)/l),Buffer.from(await s.pdf({format:i,scale:l,printBackground:!0,margin:{top:"1in",right:"1in",bottom:"1in",left:"1in"}}))))}function ie(o){return k(o,async e=>{await D(e);let r=e.viewport(),i=await e.$$("main figure.doc-figure"),l=[];for(let s of i){let a=0;try{a=await s.evaluate(async(t,n)=>{let c=[];for(let u=t.closest(n);u;u=u.parentElement.closest(n))c.unshift(u);for(let u of c)u.style.setProperty("height","auto"),u.style.setProperty("max-height","calc(100dvh - (2 * var(--doc-dialog-margin)))"),u.showModal();return await new Promise(u=>requestAnimationFrame(()=>requestAnimationFrame(u))),c.length?Math.ceil(t.getBoundingClientRect().height):0},T),a&&(await e.setViewport({...r,height:r.height+a}),await A(e,{changing:b})),await s.evaluate(t=>t.scrollIntoView({block:"center"})),l.push(Buffer.from(await s.screenshot({type:"png"})))}catch{l.push(null)}await s.evaluate((t,n)=>{for(let c=t.closest(n);c;c=c.parentElement.closest(n))c.close(),c.style.removeProperty("height"),c.style.removeProperty("max-height"),c.getAttribute("style")||c.removeAttribute("style")},T).catch(()=>{}),a&&await e.setViewport(r).catch(()=>{})}return l})}export{F as a,Z as b,ee as c,te as d,oe as e,A as f,re as g,ie as h};
@@ -0,0 +1,2 @@
1
+ import { createRequire as __galleryRequire } from "node:module"; import { fileURLToPath as __galleryPath } from "node:url"; const require = __galleryRequire(import.meta.url); const __filename = __galleryPath(import.meta.url); const __dirname = __galleryPath(new URL(".", import.meta.url));
2
+ import{a as k}from"./chunk-SYGN7GLU.mjs";import{b as B,c as I}from"./chunk-342HXE3Q.mjs";import{a as l,b as x,c as S,d as $}from"./chunk-FDLXYYG4.mjs";import{a as y,b,g as v}from"./chunk-4FS7Z7WR.mjs";import{k as h}from"./chunk-Y6RLRPG3.mjs";import"./chunk-6RGJOMJP.mjs";import"./chunk-QJIR2BLP.mjs";import"./chunk-P2CAZPDP.mjs";import"./chunk-E7LWZRXY.mjs";import{j as u}from"./chunk-NSKUTQ5J.mjs";import{j as c,p as m,s as d,t as w,u as g}from"./chunk-AUZGSZJH.mjs";import"./chunk-BGGDRNYQ.mjs";import"./chunk-6QXGZM36.mjs";import"./chunk-UALRNVSE.mjs";import"./chunk-W3BGBJQW.mjs";import"./chunk-JVHHHGEA.mjs";import"./chunk-HYMEEXKN.mjs";import"./chunk-TYK6VNAB.mjs";import"./chunk-CY2FNNAB.mjs";import"./chunk-UMHUSOPJ.mjs";import"./chunk-L3QKH4OK.mjs";import"./chunk-W4VKN3GF.mjs";import"./chunk-A55HN5OK.mjs";import"./chunk-5L7RYZCL.mjs";async function C(L){let{slugs:o,options:M}=await u({options:["--allow-failures"],argv:L});o.length===0&&(console.error(k()),process.exit(1));let N=await h(o),s=await c(o,{prepare:l({say:!1})}),t=await y(o.filter(e=>!s.has(e)));await b(o.filter(e=>s.has(e)||t.failures.has(e))),await S(o),await $(o);let p=o.filter(e=>!s.has(e)&&!t.failures.has(e)),{built:a,exported:i,failures:n}=p.length>0?await m(p,{prepare:l({say:!1})}):{built:[],exported:[],failures:new Map};for(let[e,r]of[...s,...t.failures])n.set(e,r);await w(n,{exportNote:!0}),await N.keep(i.map(({slug:e})=>e));let R=new Map(a.map(({report:e,removed:r})=>[e.slug,r]));for(let{slug:e,bytes:r,sha256:D}of i){let f=R.get(e),j=f.length>0?`; shared scripts and styles left out (unused): ${f.join(", ")}`:"";console.log(`Exported ${B(e)} (${r.toLocaleString("en-US")} bytes, sha256 ${D})${j}`)}d(a.map(({report:e})=>e)),x(a.map(({report:e})=>e));for(let e of t.lines)console.log(e);t.written.length>0&&console.log(v(t.written));for(let{slug:e}of i)console.log(I(e));g(n,{above:!0,allow:M.has("--allow-failures")})}export{C as run};
@@ -0,0 +1,4 @@
1
+ import { createRequire as __galleryRequire } from "node:module"; import { fileURLToPath as __galleryPath } from "node:url"; const require = __galleryRequire(import.meta.url); const __filename = __galleryPath(import.meta.url); const __dirname = __galleryPath(new URL(".", import.meta.url));
2
+ import{a as U,b as Z,c as ot,d as q}from"./chunk-TYK6VNAB.mjs";import{E as L,a as _,b as V,h as tt,i as D,k as et,z as nt}from"./chunk-L3QKH4OK.mjs";import{b as J,c as P,e as Q}from"./chunk-A55HN5OK.mjs";import{IDENTITY as Ne}from"../browser/editor/components/registry.mjs";function gt(e){let{blocks:a,locks:r,units:n,boxes:c}=L(e),l=wt(e,[...a.map(t=>({at:t.innerStart-1,text:` data-ge-block="${t.id}"`})),...r.map(t=>({at:t.at,text:` data-ge-lock="${t.reason}"`})),...n.map(t=>({at:t.at,text:` data-ge-unit="${t.id}"${t.grid?" data-ge-grid":""}${t.keep?` data-ge-keep="${t.keep.reason}"${t.keep.own?" data-ge-keep-own":""}`:""}`})),...n.filter(t=>t.lead!==null).map(t=>({at:t.lead,text:` data-ge-lead="${t.id}"`})),...c.map(t=>({at:t.at,text:` data-ge-box="${t.id}"${t.pure?" data-ge-pure":""}`}))]),p={version:_(e),blocks:a.map(t=>({id:t.id,tag:t.tag,kind:t.kind,caps:Object.keys(t.caps),inner:e.slice(t.innerStart,t.innerEnd),atoms:t.atoms,unit:t.unit,...t.path?{path:t.path}:{},...t.self!==null?{self:!0}:{}})),units:n.map(t=>({id:t.id,kind:t.kind,parent:t.parent,hash:D(e,t),...t.blockId?{blockId:t.blockId}:{},...t.keep?{keep:t.keep}:{},...t.grid?{grid:!0}:{},...t.parts?{parts:t.parts}:{}})),boxes:c.map(t=>({id:t.id,kind:t.kind,unit:t.unit,...t.key!==null?{key:t.key}:{}}))};return{html:l,map:p}}function wt(e,a,r=!0){let n=[],c=0;for(let l of[...a].sort((p,t)=>p.at-t.at)){if(e[l.at]!==">"){if(r)throw new Error(`Unexpected start tag before offset ${l.at}.`);continue}let p=et(e,l.at);n.push(e.slice(c,p),l.text),c=p}return n.push(e.slice(c)),n.join("")}Q();import{COMPONENTS as kt,instancesOf as xt,partOf as st}from"../browser/shared/components/index.mjs";import{attr as rt}from"../browser/shared/html-tree.mjs";var at=new Set(["main","section","article","aside","nav","header","footer","div","details","dialog","figure","blockquote","table","ul","ol","dl"]),Nt=new Set(["script","style","template","textarea","title","xmp","iframe","noembed","noframes","noscript","plaintext","pre","code","kbd","samp","var","svg","math"]),It=kt.filter(e=>e.match&&e.pairs);function Ot(e){let a=e.replace(/^/," "),r=J(a,{sourceCodeLocationInfo:!0}),n=f=>a.slice(0,f).split(`
3
+ `).length,c=[],l=(f,d,s)=>c.push({key:f,tag:a.slice(d,s).replace(/\s+/g," "),line:n(d),offset:d});V(r,"main")||l("no <main> in the file",0,0);let p=[],t=new Set,k=f=>{for(let d of f.childNodes??[]){let s=d.sourceCodeLocation;if(d.nodeName==="#comment"){s&&p.push([s.startOffset,s.endOffset]);continue}if(d.tagName){if(s?.startTag&&p.push([s.startTag.startOffset,s.startTag.endOffset]),Nt.has(d.tagName)){s&&p.push([s.startOffset,s.endOffset??a.length]);continue}s?.endTag&&t.add(s.endTag.startOffset),at.has(d.tagName)&&s?.startTag&&!s.endTag&&l(`<${d.tagName}> not closed`,s.startTag.startOffset,s.startTag.endOffset),k(d)}}};k(r),p.sort((f,d)=>f[0]-d[0]);let N="",h=0;for(let[f,d]of p)d<=h||(N+=a.slice(h,Math.max(h,f))+" ".repeat(d-Math.max(h,f)),h=d);N+=a.slice(h);for(let f of N.matchAll(/<\/([A-Za-z][A-Za-z0-9]*)[^<>]*>?/g)){let d=f[1].toLowerCase();at.has(d)&&!t.has(f.index)&&l(`</${d}> closes nothing`,f.index,f.index+f[0].length)}for(let f of It)for(let d of xt(r,f))for(let{a:s,attrA:g,b:x,attrB:A}of f.pairs){let o=st(d,f.parts[s].at).map(M=>rt(M,g)),u=st(d,f.parts[x].at).map(M=>rt(M,A)),j=M=>new Set(M).size===M.length,I=j(o)&&j(u)&&o.length===u.length&&o.every(M=>u.includes(M)),b=d.sourceCodeLocation;!I&&b&&l(`${f.id}: ${s} and ${x} do not pair`,b.startOffset,b.startTag?.endOffset??b.startOffset)}return c.sort((f,d)=>f.offset-d.offset).map(({key:f,tag:d,line:s})=>({key:f,tag:d,line:s,text:`${f} (line ${s})`}))}Q();import{treeText as z}from"../browser/shared/annotations.mjs";import{attr as F}from"../browser/shared/html-tree.mjs";var it=2e3*2e3,G=2e3,ct=50,lt=1500;function ft(e,a,r,n){let c="",l=a;for(let p of n)p.end<=l||p.start>=r||(p.start>l&&(c+=e.slice(l,p.start)),l=Math.max(l,p.end));return c+e.slice(l,r)}var dt=e=>e.replace(/\s+/g," ").trim(),bt=e=>/\S/.test(e.replace(/<!--[^]*?-->/g,"").replace(/<[^>]*>/g,"").replace(/\u0000/g,"")),pt=e=>e.companion?[{start:e.start,end:e.end},{start:e.companion.start,end:e.companion.end}]:[{start:e.start,end:e.end}];function H(e){let a=L(e),{units:r,blocks:n}=a,c=r[0]?.node??n[0]?.node??null;for(;c?.parentNode;)c=c.parentNode;let l=c?tt(e,[c]):[],p=[...r].sort((o,u)=>o.start-u.start||u.end-o.end),t=new Map,k=[];for(let o of p){for(;k.length&&k.at(-1).end<=o.start;)k.pop();t.set(o,k.at(-1)??null),k.push(o)}for(let o of r.filter(u=>u.companion)){let{start:u,end:j}=o.companion;for(let I of r){if(I===o||I.start<u||I.end>j)continue;let b=t.get(I);(!b||b.start<u)&&t.set(I,o)}}let N=new Map;for(let o of r){let u=t.get(o);u&&N.set(u,[...N.get(u)??[],o])}let h=n.find(o=>o.kind==="title")??null,f=[...r.map(o=>({unit:o,at:o.elStart})),...h?[{unit:null,at:h.start}]:[]].sort((o,u)=>o.at-u.at),d=new Map(f.map((o,u)=>[o.unit,u])),s=new Map;for(let o of r)o.blockId&&s.set(o.blockId,(s.get(o.blockId)??0)+1);let g=f.map(({unit:o})=>{if(!o){let $=dt(ft(e,h.start,h.end,l));return{unit:null,title:!0,kind:"title",key:`title\0${$}`,own:$,counts:1,parent:null,blockId:null,text:z(h.node).slice(0,G)}}let u=N.get(o)??[],j=[...u.flatMap(pt),...l].sort(($,R)=>$.start-R.start),I=dt(pt(o).map(({start:$,end:R})=>ft(e,$,R,j)).join("\0")),b=u.length>0&&!bt(I),M=t.get(o);return{unit:o,kind:o.kind,key:`${o.kind}\0${I}`,own:I,counts:b?0:1,parent:M?d.get(M):null,blockId:o.blockId,text:z(o.node).slice(0,G)}}),x=null;return{rows:g,scanned:a,ref:o=>o.title?{title:!0}:o.blockId&&s.get(o.blockId)===1?{id:o.blockId}:(x??=(()=>{let u=new Map,j=new Map;for(let{unit:I}of f){if(!I)continue;let b=D(e,I);j.set(I,{hash:b,nth:u.get(b)??0}),u.set(b,(u.get(b)??0)+1)}return j})(),x.get(o.unit))}}function St(e,a){if(e.length*a.length<=it)return Z(e,a);let r=s=>s.reduce((g,x)=>g.set(x,(g.get(x)??0)+1),new Map),[n,c]=[r(e),r(a)],l=new Map;a.forEach((s,g)=>{c.get(s)===1&&n.get(s)===1&&l.set(s,g)});let p=[];e.forEach((s,g)=>{l.has(s)&&p.push([g,l.get(s)])});let t=[],k=[];p.forEach(([,s],g)=>{let x=0,A=t.length;for(;x<A;){let o=x+A>>1;p[t[o]][1]<s?x=o+1:A=o}k[g]=x>0?t[x-1]:-1,t[x]=g});let N=[];for(let s=t.at(-1)??-1;s>=0;s=k[s])N.unshift(p[s]);let h=[],[f,d]=[0,0];for(let[s,g]of[...N,[e.length,a.length]]){if((s-f)*(g-d)<=it)for(let[x,A]of Z(e.slice(f,s),a.slice(d,g)))h.push([f+x,d+A]);s<e.length&&h.push([s,g]),[f,d]=[s+1,g+1]}return h}var ut=(e,a)=>a.nested?z(P(e.slice(a.innerStart,a.innerEnd))):z(a.node),mt=e=>e.match(/[A-Za-z0-9]+|\s+|[^A-Za-z0-9\s]/gu)?.length??0,ht=({scanned:e},a)=>(a.title?e.blocks.filter(r=>r.kind==="title"):e.blocks.filter(r=>r.unit===a.unit.id)).sort((r,n)=>r.innerStart-n.innerStart);function yt(e){let a=[],r=n=>{for(let c of n.childNodes??[])c.tagName==="tr"?a.push((c.childNodes??[]).filter(l=>l.tagName==="td"||l.tagName==="th").map(l=>z(l).replace(/\s+/g," ")).join(" \xB7 ")):c.tagName&&r(c.tagName==="template"?c.content:c)};return r(e),a.length?a.join(`
4
+ `):z(e)}function Mt(e,a,r){let n=e[a],c=0;for(let N=n.parent;N!==null;N=e[N].parent)r(N)&&(c+=1);let l=n.title?"h1":n.unit.node.tagName,p=n.title?n.text:yt(P(n.own.replace(/\u0000/g," "))).slice(0,G),t={kind:n.kind,tag:l,depth:c,text:p},k=l==="li"?n.unit.node.parentNode:null;if((k?.tagName==="ul"||k?.tagName==="ol")&&(t.marker=k.tagName,k.tagName==="ol")){let N=(k.childNodes??[]).filter(h=>h.tagName==="li");t.number=(Number.parseInt(F(k,"start")??"1",10)||1)+N.indexOf(n.unit.node)}return t}function $t(e,a){if(e===a)return null;let r=H(e),n=H(a),[c,l]=[r.rows.map(i=>i.key),n.rows.map(i=>i.key)],p=St(c,l);if(p.length===c.length&&p.length===l.length)return null;let t=i=>{let w=new Map;for(let S of i)S.blockId&&w.set(S.blockId,(w.get(S.blockId)??0)+1);return S=>!!S.blockId&&w.get(S.blockId)===1},[k,N]=[t(r.rows),t(n.rows)],h=[],[f,d]=[0,0];for(let[i,w]of[...p,[c.length,l.length]]){let S=new Map;for(let m=d;m<w;m++)N(n.rows[m])&&S.set(n.rows[m].blockId,m);let T=[],v=d-1;for(let m=f;m<i;m++){let O=k(r.rows[m])?S.get(r.rows[m].blockId):void 0;O!==void 0&&O>v&&(T.push([m,O]),v=O)}let B=[],[y,E]=[f,d];for(let[m,O]of[...T,[i,w]]){for(;y<m;y++){let C=r.rows[y];for(let W=E;W<O;W++){let Y=n.rows[W];if(Y.kind===C.kind&&(C.title||ot(C.own,Y.own))){B.push([y,W]),E=W+1;break}}}m<i&&B.push([m,O]),[y,E]=[m+1,O+1]}B.sort((m,O)=>m[0]-O[0]),[y,E]=[f,d];for(let[m,O]of[...B,[i,w]]){for(;y<m;y++)h.push({type:"del",i:y});for(;E<O;E++)h.push({type:"ins",j:E});m<i&&h.push({type:"chg",i:m,j:O}),[y,E]=[m+1,O+1]}i<c.length&&h.push({type:"same",i,j:w}),[f,d]=[i+1,w+1]}let s=new Set(h.filter(i=>i.type==="ins").map(i=>i.j)),g=new Set(h.filter(i=>i.type==="del").map(i=>i.i)),x=(i,w)=>{let S=new Set;for(let T of w)if(i[T].counts)for(let v=i[T].parent;v!==null;v=i[v].parent)S.add(v);return T=>i[T].counts||(S.has(T)?0:1)},[A,o]=[x(n.rows,s),x(r.rows,g)],u={added:0,changed:0,removed:0},j=[],I=[],b=[],M,$=null,R=null,K=i=>{if(!$)return;let w=Math.max(0,$.rows.length-ct);b.push({...i!==null?{before:n.ref(n.rows[i])}:R!==null?{after:n.ref(n.rows[R])}:{into:"main"},count:$.count,rows:$.rows.slice(0,ct),...w?{more:w}:{}}),$=null},X=i=>g.has(i)&&r.rows[i].counts>0;for(let i of h){if(i.type==="del"){$??={count:0,rows:[]},$.count+=o(i.i),u.removed+=o(i.i),X(i.i)&&$.rows.push(Mt(r.rows,i.i,X));continue}if(K(i.j),R=i.j,i.type==="ins"){let w=n.rows[i.j];u.added+=A(i.j),(w.parent===null||!s.has(w.parent))&&j.push({ref:n.ref(w)})}else if(i.type==="chg"){let[w,S]=[r.rows[i.i],n.rows[i.j]];u.changed+=1;let T=ht(r,w),v=ht(n,S),B=[],y=T.length!==v.length||T.length===0||T.some((E,m)=>E.tag!==v[m].tag);y||(T.forEach((E,m)=>{let[O,C]=[ut(e,E),ut(a,v[m])];mt(O)>lt||mt(C)>lt?y=!0:O!==C&&B.push({nth:m,base:O})}),B.length===0&&(y=!0)),y&&(B=[]),I.push({ref:n.ref(S),...y?{whole:!0}:{texts:B}}),S.title&&(M={base:w.text})}}return K(null),{counts:u,added:j,changed:I,...M?{title:M}:{},removed:b}}function Tt(e){let{units:a}=L(e),r=c=>{for(let l=c;l;l=l.parentNode)if(l.tagName&&(F(l,"data-doc-placeholder")!==void 0||l.tagName==="header"||(F(l,"class")??"").split(/\s+/).includes("doc-header")))return!1;return!0},n=c=>/^(img|picture|svg|canvas|video|audio|iframe|object|embed)$/.test(c.tagName??"")||(c.childNodes??[]).some(n);return!a.some(c=>r(c.node)&&(z(c.node)!==""||n(c.node)))}function jt(e,a){try{return q({current:e,ids:!0,...a}).text}catch{return e}}function Et(e,a){try{let r=L(e).blocks.find(c=>c.kind==="title");if(!r)return e;let n=U({current:e,edits:[{id:r.id,parts:[{keep:!0,html:a}]}],ids:!1});return n.ok?n.text:e}catch{return e}}var we=(e,a,r,n)=>nt.installed.rewrite(e,a,r,{packages:n});export{gt as a,Ot as b,$t as c,Tt as d,jt as e,Et as f,we as g};