@aiquants/markdown 11.4.0 → 11.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (128) hide show
  1. package/README.md +64 -25
  2. package/dist/{abnfDiagram-VRR7QNED-CBHDWVyi.js → abnfDiagram-VRR7QNED-79-YSh_K.js} +3 -3
  3. package/dist/{abnfDiagram-VRR7QNED-RhtDe_7N.cjs → abnfDiagram-VRR7QNED-DWb-CgfE.cjs} +1 -1
  4. package/dist/{arc-DTM_h6lx.js → arc-7S4sKBip.js} +1 -1
  5. package/dist/{arc-CM3wvUZ0.cjs → arc-Ct7JgzbU.cjs} +1 -1
  6. package/dist/{architectureDiagram-ZJ3FMSHR-D2dRhNFv.cjs → architectureDiagram-ZJ3FMSHR-CqYSOu6T.cjs} +1 -1
  7. package/dist/{architectureDiagram-ZJ3FMSHR-NRi6G3X3.js → architectureDiagram-ZJ3FMSHR-DbazS36-.js} +2 -2
  8. package/dist/{blockDiagram-677ZJIJ3-CHxk95XA.cjs → blockDiagram-677ZJIJ3-BN9v9gZ-.cjs} +1 -1
  9. package/dist/{blockDiagram-677ZJIJ3-CV8nnIV7.js → blockDiagram-677ZJIJ3-yUFxR2AB.js} +3 -3
  10. package/dist/{c4Diagram-LMCZKHZV-DoD_wB8P.js → c4Diagram-LMCZKHZV-ChDvUvYJ.js} +2 -2
  11. package/dist/{c4Diagram-LMCZKHZV-BvbPlr0h.cjs → c4Diagram-LMCZKHZV-zoa11JBS.cjs} +1 -1
  12. package/dist/{channel-DqD7QHJJ.cjs → channel-B3Momvbx.cjs} +1 -1
  13. package/dist/{channel-CTUWcSTH.js → channel-CjnjBBm3.js} +1 -1
  14. package/dist/{chunk-2Q5K7J3B-BrFIRhHf.cjs → chunk-2Q5K7J3B-BFqqoKdy.cjs} +1 -1
  15. package/dist/{chunk-2Q5K7J3B-Cxwan1Kr.js → chunk-2Q5K7J3B-CU00N_PH.js} +1 -1
  16. package/dist/{chunk-32BRIVSS-BQp-ZQs_.cjs → chunk-32BRIVSS-D1kAmPLJ.cjs} +1 -1
  17. package/dist/{chunk-32BRIVSS-L7r_G8HL.js → chunk-32BRIVSS-n6Apfcwz.js} +1 -1
  18. package/dist/{chunk-5VM5RSS4-txcIZk2V.cjs → chunk-5VM5RSS4-BojaQz_F.cjs} +1 -1
  19. package/dist/{chunk-5VM5RSS4-D8617CsW.js → chunk-5VM5RSS4-Dq5Hynyb.js} +1 -1
  20. package/dist/{chunk-EX3LRPZG-DSgZX9T2.js → chunk-EX3LRPZG-D-MPeU_l.js} +4 -4
  21. package/dist/{chunk-EX3LRPZG-C9LWVILV.cjs → chunk-EX3LRPZG-DmcR2gTc.cjs} +1 -1
  22. package/dist/{chunk-JWPE2WC7-DPOD7SL9.cjs → chunk-JWPE2WC7-5XwT9koa.cjs} +1 -1
  23. package/dist/{chunk-JWPE2WC7-kIqdo6CF.js → chunk-JWPE2WC7-CRKJdMCc.js} +1 -1
  24. package/dist/{chunk-MOJQB5TN-DfEITzGw.js → chunk-MOJQB5TN-3vNO7Ocs.js} +1 -1
  25. package/dist/{chunk-MOJQB5TN-C3IjuSDY.cjs → chunk-MOJQB5TN-BAbxB6Wt.cjs} +1 -1
  26. package/dist/{chunk-PUDLZKDR-C7waD5EN.cjs → chunk-PUDLZKDR-B9uAx29J.cjs} +1 -1
  27. package/dist/{chunk-PUDLZKDR-DCpimEnH.js → chunk-PUDLZKDR-D44jrM4A.js} +6 -6
  28. package/dist/{chunk-RYQCIY6F-DD87UjzR.cjs → chunk-RYQCIY6F-Cv0NI4r5.cjs} +1 -1
  29. package/dist/{chunk-RYQCIY6F-xEZx-wfp.js → chunk-RYQCIY6F-DvNezuk8.js} +1 -1
  30. package/dist/{chunk-V7JOEXUC-CXNcuGNB.cjs → chunk-V7JOEXUC-B7-0gdwG.cjs} +1 -1
  31. package/dist/{chunk-V7JOEXUC-CzBsdP3-.js → chunk-V7JOEXUC-qDKOSk0E.js} +5 -5
  32. package/dist/{chunk-VR4S4FIN-Cl5yJ6D5.cjs → chunk-VR4S4FIN-DdEF58hd.cjs} +1 -1
  33. package/dist/{chunk-VR4S4FIN-CLDWDcHV.js → chunk-VR4S4FIN-DoAmSLKL.js} +1 -1
  34. package/dist/{chunk-XXDRQBXY-cbcKgiGG.cjs → chunk-XXDRQBXY-C7_R2ESl.cjs} +1 -1
  35. package/dist/{chunk-XXDRQBXY-DsBYLmqe.js → chunk-XXDRQBXY-CPc_CnDi.js} +1 -1
  36. package/dist/{classDiagram-v2-EOCWNBFH-D5ws8Gla.js → classDiagram-OUVF2IWQ-CDL6Y0zH.js} +2 -2
  37. package/dist/{classDiagram-OUVF2IWQ-DpeVtgCa.cjs → classDiagram-OUVF2IWQ-D8V_ia1T.cjs} +1 -1
  38. package/dist/{classDiagram-OUVF2IWQ-D5ws8Gla.js → classDiagram-v2-EOCWNBFH-CDL6Y0zH.js} +2 -2
  39. package/dist/{classDiagram-v2-EOCWNBFH-DpeVtgCa.cjs → classDiagram-v2-EOCWNBFH-D8V_ia1T.cjs} +1 -1
  40. package/dist/code-blocks-Cpo2S9jm.cjs +4 -0
  41. package/dist/{code-blocks-bgwDIVp1.js → code-blocks-Gfo7U6nu.js} +126 -119
  42. package/dist/code-blocks.cjs +1 -1
  43. package/dist/code-blocks.d.ts +8 -2
  44. package/dist/code-blocks.js +13 -12
  45. package/dist/components/spreadsheetModel.d.ts +5 -1
  46. package/dist/converter.wasm +0 -0
  47. package/dist/{cose-bilkent-JH36ORCC-B1gOmkEg.js → cose-bilkent-JH36ORCC-CgYGsvBY.js} +1 -1
  48. package/dist/{cose-bilkent-JH36ORCC-gLQPpHUk.cjs → cose-bilkent-JH36ORCC-D36mBTa1.cjs} +1 -1
  49. package/dist/{cynefinDiagram-TSTJHNR4-BYBWPdDO.cjs → cynefinDiagram-TSTJHNR4-BVD1jBRh.cjs} +1 -1
  50. package/dist/{cynefinDiagram-TSTJHNR4-919whoYx.js → cynefinDiagram-TSTJHNR4-C4ccvzDY.js} +2 -2
  51. package/dist/{dagre-VKFMJZFB-qi55jjuZ.cjs → dagre-VKFMJZFB-BZy2-Z-X.cjs} +1 -1
  52. package/dist/{dagre-VKFMJZFB-CkWSnQUL.js → dagre-VKFMJZFB-Chy7TpIo.js} +2 -2
  53. package/dist/{diagram-FQU43EPY-DSSMCztI.cjs → diagram-FQU43EPY-CGQQGMxC.cjs} +1 -1
  54. package/dist/{diagram-FQU43EPY-BO3iobOs.js → diagram-FQU43EPY-_vDqFQBf.js} +2 -2
  55. package/dist/{diagram-G47NLZAW-B09nXJfw.cjs → diagram-G47NLZAW-D_sO4PSP.cjs} +1 -1
  56. package/dist/{diagram-G47NLZAW-Cf0tc0aA.js → diagram-G47NLZAW-yxlia5t-.js} +3 -3
  57. package/dist/{diagram-NH7WQ7WH-Lyxwzvru.cjs → diagram-NH7WQ7WH-BRFc3dHy.cjs} +1 -1
  58. package/dist/{diagram-NH7WQ7WH-BB6RW17H.js → diagram-NH7WQ7WH-Bq2axsyf.js} +2 -2
  59. package/dist/{diagram-OA4YK3LP-JaYkBo12.js → diagram-OA4YK3LP-Bu2coUUB.js} +3 -3
  60. package/dist/{diagram-OA4YK3LP-vvSPKQUH.cjs → diagram-OA4YK3LP-DR8ONCwP.cjs} +1 -1
  61. package/dist/{diagram-WEI45ONY-BwyxNljM.cjs → diagram-WEI45ONY-2qs2PO34.cjs} +1 -1
  62. package/dist/{diagram-WEI45ONY-Ca5HRdQN.js → diagram-WEI45ONY-CO8Cka3N.js} +2 -2
  63. package/dist/{ebnfDiagram-CCIWWBDH-DdLMeyQC.cjs → ebnfDiagram-CCIWWBDH-CeglVg-X.cjs} +1 -1
  64. package/dist/{ebnfDiagram-CCIWWBDH-DiAw4CfJ.js → ebnfDiagram-CCIWWBDH-Cxh8ZtT_.js} +3 -3
  65. package/dist/{erDiagram-Q63AITRT-Bjm6ywZL.cjs → erDiagram-Q63AITRT-CAiZlm3_.cjs} +1 -1
  66. package/dist/{erDiagram-Q63AITRT-C3uAJSXI.js → erDiagram-Q63AITRT-YXK1aGTi.js} +4 -4
  67. package/dist/{extractHeadings-C13XIINZ.cjs → extractHeadings-B1AsuS3b.cjs} +71 -71
  68. package/dist/{extractHeadings-B6uw4Yra.js → extractHeadings-ChjUMVbw.js} +5542 -5486
  69. package/dist/flowDiagram-23GEKE2U-BVOD68W1.cjs +1 -0
  70. package/dist/flowDiagram-23GEKE2U-CEegkqrO.js +7 -0
  71. package/dist/{ganttDiagram-NO4QXBWP-DsgcCBX-.cjs → ganttDiagram-NO4QXBWP-UhNGYA_c.cjs} +1 -1
  72. package/dist/{ganttDiagram-NO4QXBWP-DYmXJjT_.js → ganttDiagram-NO4QXBWP-ztpU8x74.js} +2 -2
  73. package/dist/{gitGraphDiagram-IHSO6WYX-DrVk6UCc.js → gitGraphDiagram-IHSO6WYX-BVHyOXzC.js} +3 -3
  74. package/dist/{gitGraphDiagram-IHSO6WYX-Dif1CkFs.cjs → gitGraphDiagram-IHSO6WYX-BqmWDevH.cjs} +1 -1
  75. package/dist/index.cjs +1 -1
  76. package/dist/index.client.cjs +1 -1
  77. package/dist/index.client.js +2 -2
  78. package/dist/index.js +2 -2
  79. package/dist/{infoDiagram-FWYZ7A6U-sn774MmG.js → infoDiagram-FWYZ7A6U-CtPPZXcW.js} +1 -1
  80. package/dist/{infoDiagram-FWYZ7A6U-C0lktmoS.cjs → infoDiagram-FWYZ7A6U-u5jAW1BW.cjs} +1 -1
  81. package/dist/{ishikawaDiagram-FXEZZL3T-CO2dFzp0.js → ishikawaDiagram-FXEZZL3T-Brte0Ddn.js} +1 -1
  82. package/dist/{ishikawaDiagram-FXEZZL3T-FxqvFozF.cjs → ishikawaDiagram-FXEZZL3T-DSLCb5U8.cjs} +1 -1
  83. package/dist/{journeyDiagram-5HDEW3XC-DR9yN3TX.js → journeyDiagram-5HDEW3XC-BCAzbps1.js} +4 -4
  84. package/dist/{journeyDiagram-5HDEW3XC-BWtP4L5i.cjs → journeyDiagram-5HDEW3XC-Bbp04jQE.cjs} +1 -1
  85. package/dist/{kanban-definition-HUTT4EX6-C0ais5E8.js → kanban-definition-HUTT4EX6-CNyzanxy.js} +2 -2
  86. package/dist/{kanban-definition-HUTT4EX6-06pnLnb8.cjs → kanban-definition-HUTT4EX6-ChWKc0LP.cjs} +1 -1
  87. package/dist/{linear-C1ElxCAF.js → linear-Cqco96HS.js} +1 -1
  88. package/dist/{linear-BdAEOCTg.cjs → linear-DbIpUBgn.cjs} +1 -1
  89. package/dist/{mindmap-definition-LN4V7U3C-B2fkPG93.cjs → mindmap-definition-LN4V7U3C-BZd2a84K.cjs} +1 -1
  90. package/dist/{mindmap-definition-LN4V7U3C-DV9IVNXB.js → mindmap-definition-LN4V7U3C-DzKkbdiT.js} +3 -3
  91. package/dist/{pegDiagram-2B236MQR-mbYpu4tr.cjs → pegDiagram-2B236MQR-DrUVQFHJ.cjs} +1 -1
  92. package/dist/{pegDiagram-2B236MQR-BqyUnioq.js → pegDiagram-2B236MQR-wcsKpCXJ.js} +3 -3
  93. package/dist/{pieDiagram-ENE6RG2P-Bt1RRvjY.js → pieDiagram-ENE6RG2P-CiQf4zJi.js} +3 -3
  94. package/dist/{pieDiagram-ENE6RG2P-BRnxo4U8.cjs → pieDiagram-ENE6RG2P-Rr_wC5sF.cjs} +1 -1
  95. package/dist/{quadrantDiagram-ABIIQ3AL-Dw51VXFI.js → quadrantDiagram-ABIIQ3AL-Bpo7TY9t.js} +2 -2
  96. package/dist/{quadrantDiagram-ABIIQ3AL-BUFLtZUw.cjs → quadrantDiagram-ABIIQ3AL-CyWI3Wm4.cjs} +1 -1
  97. package/dist/{railroadDiagram-RFXS5EU6-UM6xkPjd.cjs → railroadDiagram-RFXS5EU6-BnBB57wY.cjs} +1 -1
  98. package/dist/{railroadDiagram-RFXS5EU6-CmOA5o_d.js → railroadDiagram-RFXS5EU6-C5ZXR4L6.js} +3 -3
  99. package/dist/{requirementDiagram-TGXJPOKE-Dqm0JbUO.js → requirementDiagram-TGXJPOKE-B0tl_Jwn.js} +3 -3
  100. package/dist/{requirementDiagram-TGXJPOKE-8ArbyRU3.cjs → requirementDiagram-TGXJPOKE-BwR88GAB.cjs} +1 -1
  101. package/dist/{sankeyDiagram-HTMAVEWB-DZ8GFTQp.cjs → sankeyDiagram-HTMAVEWB-DxHj5IG1.cjs} +1 -1
  102. package/dist/{sankeyDiagram-HTMAVEWB-B5vAZunk.js → sankeyDiagram-HTMAVEWB-yTsdOW_q.js} +1 -1
  103. package/dist/{sequenceDiagram-DBY2YBRQ-Gn5MDMnL.cjs → sequenceDiagram-DBY2YBRQ-DEO1ZsJr.cjs} +1 -1
  104. package/dist/{sequenceDiagram-DBY2YBRQ-uuuSzhVp.js → sequenceDiagram-DBY2YBRQ-z0fpzKzY.js} +3 -3
  105. package/dist/{sizeCapture-X5ZJPWSS-8MTcAVtS.js → sizeCapture-X5ZJPWSS-Aj3-106E.js} +1 -1
  106. package/dist/{sizeCapture-X5ZJPWSS-BYPlek4L.cjs → sizeCapture-X5ZJPWSS-bpuOXTvv.cjs} +1 -1
  107. package/dist/{stateDiagram-2N3HPSRC-DcMx4da-.cjs → stateDiagram-2N3HPSRC-CkFpvJ5I.cjs} +1 -1
  108. package/dist/{stateDiagram-2N3HPSRC-B26FS7jn.js → stateDiagram-2N3HPSRC-DGJO0Pvj.js} +2 -2
  109. package/dist/{stateDiagram-v2-6OUMAXLB-DwHp4lqJ.js → stateDiagram-v2-6OUMAXLB-D0YDxME7.js} +2 -2
  110. package/dist/{stateDiagram-v2-6OUMAXLB-ByTp0tao.cjs → stateDiagram-v2-6OUMAXLB-tnSDv_sy.cjs} +1 -1
  111. package/dist/styles/markdown.css +1 -1
  112. package/dist/styles/markdown.standalone.css +1 -1
  113. package/dist/{swimlanes-5IMT3BWC-COEdbJMp.cjs → swimlanes-5IMT3BWC-Bib1XFM-.cjs} +1 -1
  114. package/dist/{swimlanes-5IMT3BWC-SbQF6zqF.js → swimlanes-5IMT3BWC-iMCo0rMv.js} +3 -3
  115. package/dist/{swimlanesDiagram-G3AALYLV-DAdz3_b7.js → swimlanesDiagram-G3AALYLV-CXNOMTdt.js} +2 -2
  116. package/dist/{swimlanesDiagram-G3AALYLV-C0gqMROP.cjs → swimlanesDiagram-G3AALYLV-ywhyY4G6.cjs} +1 -1
  117. package/dist/{timeline-definition-FHXFAJF6-DZGHbSpR.cjs → timeline-definition-FHXFAJF6-fqq6Gi2A.cjs} +1 -1
  118. package/dist/{timeline-definition-FHXFAJF6-fmCUTBQj.js → timeline-definition-FHXFAJF6-zRLuqX2O.js} +2 -2
  119. package/dist/{vennDiagram-L72KCM5P-CsNtbCv1.cjs → vennDiagram-L72KCM5P-CAmFprGQ.cjs} +1 -1
  120. package/dist/{vennDiagram-L72KCM5P-DwEGVrpl.js → vennDiagram-L72KCM5P-Cjc5fQRJ.js} +1 -1
  121. package/dist/{wardleyDiagram-EHGQE667-BV41ARvm.js → wardleyDiagram-EHGQE667-Bo_e9LrE.js} +2 -2
  122. package/dist/{wardleyDiagram-EHGQE667-DJUb0osY.cjs → wardleyDiagram-EHGQE667-DqSV5RVx.cjs} +1 -1
  123. package/dist/{xychartDiagram-FW5EYKEG-B1Pmn4Zf.js → xychartDiagram-FW5EYKEG-ByrCKuTx.js} +2 -2
  124. package/dist/{xychartDiagram-FW5EYKEG-DD-HPA7H.cjs → xychartDiagram-FW5EYKEG-rY9U7Gaf.cjs} +1 -1
  125. package/package.json +9 -9
  126. package/dist/code-blocks-Bax5Xik7.cjs +0 -4
  127. package/dist/flowDiagram-23GEKE2U-C_wOwOVo.js +0 -7
  128. package/dist/flowDiagram-23GEKE2U-QtfsGltE.cjs +0 -1
@@ -1,5 +1,5 @@
1
- import { s as r, c as s, a as e, C as t } from "./chunk-V7JOEXUC-CzBsdP3-.js";
2
- import { _ as l } from "./extractHeadings-B6uw4Yra.js";
1
+ import { s as r, c as s, a as e, C as t } from "./chunk-V7JOEXUC-qDKOSk0E.js";
2
+ import { _ as l } from "./extractHeadings-ChjUMVbw.js";
3
3
  var d = {
4
4
  parser: e,
5
5
  get db() {
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("./chunk-V7JOEXUC-CXNcuGNB.cjs"),a=require("./extractHeadings-C13XIINZ.cjs");var s={parser:r.classDiagram_default,get db(){return new r.ClassDB},renderer:r.classRenderer_v3_unified_default,styles:r.styles_default,init:a.__name(e=>{e.class||(e.class={}),e.class.arrowMarkerAbsolute=e.arrowMarkerAbsolute},"init")};exports.diagram=s;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("./chunk-V7JOEXUC-B7-0gdwG.cjs"),a=require("./extractHeadings-B1AsuS3b.cjs");var s={parser:r.classDiagram_default,get db(){return new r.ClassDB},renderer:r.classRenderer_v3_unified_default,styles:r.styles_default,init:a.__name(e=>{e.class||(e.class={}),e.class.arrowMarkerAbsolute=e.arrowMarkerAbsolute},"init")};exports.diagram=s;
@@ -1,5 +1,5 @@
1
- import { s as r, c as s, a as e, C as t } from "./chunk-V7JOEXUC-CzBsdP3-.js";
2
- import { _ as l } from "./extractHeadings-B6uw4Yra.js";
1
+ import { s as r, c as s, a as e, C as t } from "./chunk-V7JOEXUC-qDKOSk0E.js";
2
+ import { _ as l } from "./extractHeadings-ChjUMVbw.js";
3
3
  var d = {
4
4
  parser: e,
5
5
  get db() {
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("./chunk-V7JOEXUC-CXNcuGNB.cjs"),a=require("./extractHeadings-C13XIINZ.cjs");var s={parser:r.classDiagram_default,get db(){return new r.ClassDB},renderer:r.classRenderer_v3_unified_default,styles:r.styles_default,init:a.__name(e=>{e.class||(e.class={}),e.class.arrowMarkerAbsolute=e.arrowMarkerAbsolute},"init")};exports.diagram=s;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("./chunk-V7JOEXUC-B7-0gdwG.cjs"),a=require("./extractHeadings-B1AsuS3b.cjs");var s={parser:r.classDiagram_default,get db(){return new r.ClassDB},renderer:r.classRenderer_v3_unified_default,styles:r.styles_default,init:a.__name(e=>{e.class||(e.class={}),e.class.arrowMarkerAbsolute=e.arrowMarkerAbsolute},"init")};exports.diagram=s;
@@ -0,0 +1,4 @@
1
+ "use strict";const _=/\{([A-Za-z]+)\}/gu,z=Object.freeze({table:{text:"Spreadsheet",lang:"en"},zoomIn:{text:"Zoom in",lang:"en"},zoomOut:{text:"Zoom out",lang:"en"},resetZoom:{text:"{percent} %, reset zoom",lang:"en"},zoomed:{text:"Zoom {percent} %",lang:"en"},highlight:{text:"Highlight the active row and column",lang:"en"},copyAll:{text:"Copy the whole table",lang:"en"},saveTsv:{text:"Save as TSV",lang:"en"},saveMenu:{text:"More ways to save",lang:"en"},saveTsvWithBom:{text:"Save with a BOM (for Excel)",lang:"en"},fullscreen:{text:"View full screen",lang:"en"},exitFullscreen:{text:"Exit full screen",lang:"en"},fullscreenDialog:{text:"Spreadsheet (full screen)",lang:"en"},size:{text:"Rows {rows} × columns {cols}",lang:"en"},trackSize:{text:"Column and row size",lang:"en"},decreaseColumnWidth:{text:"Narrow column {column}",lang:"en"},increaseColumnWidth:{text:"Widen column {column}",lang:"en"},autoFitColumnWidth:{text:"Fit column {column} to its contents",lang:"en"},decreaseRowHeight:{text:"Make row {row} shorter",lang:"en"},increaseRowHeight:{text:"Make row {row} taller",lang:"en"},columnResized:{text:"Column {column} is {size} px wide",lang:"en"},rowResized:{text:"Row {row} is {size} px high",lang:"en"},fileName:{text:"spreadsheet.tsv",lang:"en"},copied:{text:"Copied the whole table.",lang:"en"},copyFailed:{text:"Could not copy the table. Browsers copy only on a secure page (https) and with their permission.",lang:"en"},cellAnnouncement:{text:"{cell}, {value}",lang:"en"},readOnlyCellAnnouncement:{text:"{cell}, {value}, read-only",lang:"en"},emptyCell:{text:"blank",lang:"en"},selectionAnnouncement:{text:"{range} selected",lang:"en"},readOnly:{text:"This table is read-only here.",lang:"en"},formatRefused:{text:"This table keeps text only, so formatting and links are not saved.",lang:"en"},fenceRefused:{text:"A line of the cell would close the table's code fence (``` or ~~~ at its start), so the change was not saved.",lang:"en"},editConflict:{text:"The table had changed in the editor, so the change was not saved. Make it again on the table as it is now.",lang:"en"},unwritable:{text:"The source lines of this table are laid out in a way it cannot write back to, so it is read-only here. Edit the table in the source.",lang:"en"},optionsError:{text:"The table option “{word}” cannot be read. Write header=, footer= and freeze= with 0 to {frozenMax}, height= with 1 to {heightMax}, zoom= with one of {zoomSteps}, and toolbar=, headings= and autofit= with 0 or 1, each at most once.",lang:"en"},tooLarge:{text:"This table has {cells} cells, more than the {max} a table shows. Its text is still in the document.",lang:"en"},loadFailed:{text:"Could not load the spreadsheet. Check the connection and retry.",lang:"en"},retry:{text:"Retry",lang:"en"}}),I=Object.freeze({table:{text:"表",lang:"ja"},zoomIn:{text:"拡大",lang:"ja"},zoomOut:{text:"縮小",lang:"ja"},resetZoom:{text:"{percent} %、拡大率を戻す",lang:"ja"},zoomed:{text:"拡大率 {percent} %",lang:"ja"},highlight:{text:"選んだ行と列を強調",lang:"ja"},copyAll:{text:"表全体をコピー",lang:"ja"},saveTsv:{text:"TSV として保存",lang:"ja"},saveMenu:{text:"ほかの保存の方法",lang:"ja"},saveTsvWithBom:{text:"BOM を付けて保存 (Excel 向け)",lang:"ja"},fullscreen:{text:"全画面で見る",lang:"ja"},exitFullscreen:{text:"全画面を閉じる",lang:"ja"},fullscreenDialog:{text:"表 (全画面)",lang:"ja"},size:{text:"{rows} 行 × {cols} 列",lang:"ja"},trackSize:{text:"列と行の大きさ",lang:"ja"},decreaseColumnWidth:{text:"列 {column} を狭める",lang:"ja"},increaseColumnWidth:{text:"列 {column} を広げる",lang:"ja"},autoFitColumnWidth:{text:"列 {column} を中身に合わせる",lang:"ja"},decreaseRowHeight:{text:"行 {row} を低くする",lang:"ja"},increaseRowHeight:{text:"行 {row} を高くする",lang:"ja"},columnResized:{text:"列 {column} の幅は {size} px",lang:"ja"},rowResized:{text:"行 {row} の高さは {size} px",lang:"ja"},fileName:{text:"表.tsv",lang:"ja"},copied:{text:"表全体をコピーしました。",lang:"ja"},copyFailed:{text:"表をコピーできませんでした。ブラウザは安全なページ (https) で、許可があるときだけコピーできます。",lang:"ja"},cellAnnouncement:{text:"{cell}、{value}",lang:"ja"},readOnlyCellAnnouncement:{text:"{cell}、{value}、読み取り専用",lang:"ja"},emptyCell:{text:"空白",lang:"ja"},selectionAnnouncement:{text:"{range} を選択",lang:"ja"},readOnly:{text:"この表はここでは編集できません。",lang:"ja"},formatRefused:{text:"この表は文字だけを保つため、書式とリンクは保存しません。",lang:"ja"},fenceRefused:{text:"セルの行が表のコードのフェンスを閉じてしまう (行頭の ``` や ~~~) ため、この変更は保存しませんでした。",lang:"ja"},editConflict:{text:"エディタで表が変わっていたため、この変更は保存しませんでした。今の表にもう一度変更してください。",lang:"ja"},unwritable:{text:"この表の元の行は書き戻せない書き方のため、ここでは読み取り専用です。元の文書で表を編集してください。",lang:"ja"},optionsError:{text:"表の指定「{word}」を読めません。header=・footer=・freeze= は 0〜{frozenMax}、height= は 1〜{heightMax}、zoom= は {zoomSteps} のどれか、toolbar=・headings=・autofit= は 0 か 1 の整数で、それぞれ 1 回まで書けます。",lang:"ja"},tooLarge:{text:"この表のセルは {cells} 個で、表が見せられる {max} 個を超えます。表の文字は文書の中にあります。",lang:"ja"},loadFailed:{text:"表を読み込めませんでした。接続を確かめて再試行してください。",lang:"ja"},retry:{text:"再試行",lang:"ja"}}),H=Object.freeze({en:z,ja:I}),B=Object.freeze(Object.fromEntries(Object.entries(z).map(([e,n])=>[e,Object.freeze([...new Set(Array.from(n.text.matchAll(_),o=>o[1]))])]))),D=(e,n)=>e.replace(_,(o,t)=>Object.hasOwn(n,t)?String(n[t]):o),R=4,F=/^[ \t]*$/u,y=/^ {0,3}(?:[-+*]|\d{1,9}[.)])/u,N=/^(?:`{3,}|~{3,})/u,W=/^[\t\n\r ]*$/u,M=/^[ \t]+$/u,$=/[\t\n\v\f\r ]/u,O=e=>R-e%R,u=(e,n)=>{let o=0,t=n.index;for(;t<e.length;t+=1){const l=e[t];if(l===" ")o+=1;else if(l===" ")o+=O(n.column+o);else break}return{width:o,end:t}},b=(e,n,o)=>{const t=n.column+o;let{index:l,column:a}=n;for(;a<t;){const s=e[l];if(s===" ")a+=1;else if(s===" ")a+=O(a);else return null;l+=1}return a===t?{index:l,column:a}:null},Z=(e,n)=>{const o=u(e,n);if(o.width>3||e[o.end]!==">")return null;const t=o.end+1,l=n.column+o.width+1;return e[t]===" "?{index:t+1,column:l+1}:e[t]===" "?null:{index:t,column:l}},L=(e,n)=>{const o=y.exec(e.slice(n.index))?.[0];if(o===void 0)return null;const t={index:n.index+o.length,column:n.column+o.length},l=e.slice(t.index);if(F.test(l))return{width:o.length+1,next:{index:e.length,column:t.column+u(e,t).width}};const a={index:t.index,column:o.length},s=u(e,a);if(s.width===0)return null;const i=s.width>4?1:s.width,r=b(e,a,i);return r===null?null:{width:o.length+i,next:{index:r.index,column:U(e,t,r.index)}}},U=(e,n,o)=>{let t=n.column;for(let l=n.index;l<o;l+=1)t+=e[l]===" "?O(t):1;return t},w=(e,n,o)=>{let t={index:0,column:0};for(const[l,a]of n.entries()){if(a.kind==="quote"){const r=Z(e,t);if(r===null)return null;t=r;continue}if(l>=o){const r=L(e,t);if(r===null||r.width!==a.width)return null;t=r.next;continue}const s=u(e,t);if(s.end===e.length)return n.slice(l+1).some(r=>r.kind==="quote")?null:"blank";if(s.width<a.width)return null;const i=b(e,t,a.width);if(i===null)return null;t=i}return t},K=(e,n,o)=>{const t=w(e,n,o);return t===null||t==="blank"?null:L(e,t)?.width??null},G=(e,n,o)=>{const t=w(e,n,o);if(t===null||t==="blank")return null;const l=u(e,t),a=N.exec(e.slice(l.end))?.[0];return a===void 0||l.width>3||e.slice(t.index,l.end).includes(" ")?null:{fenceIndent:l.width,fence:a}},V=e=>{const n=e.replace(/^[\t\n\v\f\r ]+/u,""),o=$.exec(n)?.index??n.length,t=n.slice(0,o);return/[\\&]/u.test(t)?null:t},p=(e,n)=>{const o=w(e,n.containers,n.containers.length);if(o===null)return null;if(o==="blank")return{head:e,content:"",whole:!1};const t=u(e,o);if(t.width<n.fenceIndent){const a=t.end===e.length?o.index:t.end;return{head:e.slice(0,a),content:e.slice(a),whole:!1}}const l=b(e,o,n.fenceIndent);return l===null?null:{head:e.slice(0,l.index),content:e.slice(l.index),whole:!0}},S=e=>e.containers.map(n=>n.kind==="quote"?"> ":" ".repeat(n.width)).join("")+" ".repeat(e.fenceIndent),C=e=>e.containers.at(-1)?.kind==="listItem",v=(e,n)=>C(n)?e.split(`
2
+ `).map(o=>M.test(o)?"":o).join(`
3
+ `):e,q=(e,n)=>{const o=w(e,n.containers,n.containers.length);if(o===null||o==="blank")return!1;const t=u(e,o);if(t.width>3)return!1;let l=t.end;for(;e[l]===n.fence[0];)l+=1;return l-t.end>=n.fence.length&&W.test(e.slice(l))},X=Object.freeze({kind:"closesFence"}),T=Object.freeze({kind:"unwritable"}),J=e=>{const n=e.split(`
4
+ `);return n.at(-1)===""&&n.pop(),n},Q=(e,n,o)=>{const t=[];for(const c of e){const f=p(c,n);if(f===null)return T;t.push(f)}const l=J(v(o,n));let a=0;for(;a<t.length&&a<l.length&&t[a].content===l[a];)a+=1;let s=0;for(;s<t.length-a&&s<l.length-a&&t[t.length-1-s].content===l[l.length-1-s];)s+=1;const r=[...t.slice(0,a).reverse(),...t.slice(t.length-s),...t.slice(a,t.length-s)].find(c=>c.whole&&c.content!==""),h=r===void 0?[S(n)]:[r.head,S(n)],A=[];for(const c of l.slice(a,l.length-s)){const f=h.map(g=>c===""?g.trimEnd():g+c).filter(g=>p(g,n)?.content===c);if(f.length===0)return T;const j=f.find(g=>!q(g,n));if(j===void 0)return X;A.push(j)}return{kind:"edit",from:a,to:t.length-s,lines:A}},Y="data-code-meta",ee="spreadsheets",P=15,k=1e3,E=128,x=Object.freeze([25,30,35,42,50,59,71,84,100,119,141,168,200,238,283,336,400]),m=Object.freeze({header:Object.freeze({field:"headerRows",min:0,max:E,steps:null,absent:0}),footer:Object.freeze({field:"footerRows",min:0,max:E,steps:null,absent:0}),freeze:Object.freeze({field:"frozenColumns",min:0,max:E,steps:null,absent:0}),height:Object.freeze({field:"visibleRows",min:1,max:k,steps:null,absent:P}),zoom:Object.freeze({field:"zoomPercent",min:x[0],max:x[x.length-1],steps:x,absent:100}),toolbar:Object.freeze({field:"toolbar",min:0,max:1,steps:null,absent:1}),headings:Object.freeze({field:"headings",min:0,max:1,steps:null,absent:1}),autofit:Object.freeze({field:"autofit",min:0,max:1,steps:null,absent:0})});class d extends RangeError{word;constructor(n,o){super(`[@aiquants/markdown] spreadsheet option "${n}" ${o}`),this.name="SpreadsheetOptionsError",this.word=n}}const te=/^([a-z]+)=([0-9]+)$/u,ne=/[\t\n\f\r ]+/u,oe=e=>{const n=Object.fromEntries(Object.values(m).map(l=>[l.field,l.absent])),o=e?.replace(/^[\t\n\f\r ]+|[\t\n\f\r ]+$/gu,"")??"";if(o==="")return Object.freeze(n);const t=new Set;for(const l of o.split(ne)){const a=te.exec(l);if(a===null)throw new d(l,"is not key=value with a decimal value");const[,s,i]=a;if(!Object.hasOwn(m,s))throw new d(l,`has an unknown key (${Object.keys(m).join(", ")} are read)`);const r=m[s];if(t.has(s))throw new d(l,"gives its key twice");if(t.add(s),i.length>1&&i.startsWith("0"))throw new d(l,"has leading zeros");const h=Number(i);if(h<r.min||h>r.max)throw new d(l,`must be between ${r.min} and ${r.max}`);if(r.steps!==null&&!r.steps.includes(h))throw new d(l,`must be one of ${r.steps.join(", ")}`);n[r.field]=h}return Object.freeze(n)};exports.CODE_META_ATTRIBUTE=Y;exports.DEFAULT_SPREADSHEET_VISIBLE_ROWS=P;exports.MAX_SPREADSHEET_FROZEN_TRACKS=E;exports.MAX_SPREADSHEET_VISIBLE_ROWS=k;exports.SPREADSHEETS_LANGUAGE=ee;exports.SPREADSHEET_BLOCK_LABEL_CATALOGS=H;exports.SPREADSHEET_BLOCK_LABEL_PLACEHOLDERS=B;exports.SPREADSHEET_OPTION_RULES=m;exports.SPREADSHEET_ZOOM_STEP_PERCENTS=x;exports.SpreadsheetOptionsError=d;exports.fencedBodyAsRead=v;exports.fencedCodeLanguageOf=V;exports.fencedLineHead=S;exports.fillLabel=D;exports.listItemWidthOn=K;exports.openingFenceOn=G;exports.parseSpreadsheetOptions=oe;exports.planFencedBodyEdit=Q;exports.readFencedLine=p;exports.whiteSpaceLinesReadEmpty=C;
@@ -1,4 +1,4 @@
1
- const z = /\{([A-Za-z]+)\}/gu, T = Object.freeze({
1
+ const T = /\{([A-Za-z]+)\}/gu, C = Object.freeze({
2
2
  table: { text: "Spreadsheet", lang: "en" },
3
3
  zoomIn: { text: "Zoom in", lang: "en" },
4
4
  zoomOut: { text: "Zoom out", lang: "en" },
@@ -33,11 +33,11 @@ const z = /\{([A-Za-z]+)\}/gu, T = Object.freeze({
33
33
  fenceRefused: { text: "A line of the cell would close the table's code fence (``` or ~~~ at its start), so the change was not saved.", lang: "en" },
34
34
  editConflict: { text: "The table had changed in the editor, so the change was not saved. Make it again on the table as it is now.", lang: "en" },
35
35
  unwritable: { text: "The source lines of this table are laid out in a way it cannot write back to, so it is read-only here. Edit the table in the source.", lang: "en" },
36
- optionsError: { text: "The table option “{word}” cannot be read. Write header=, footer= and freeze= with 0 to {frozenMax}, and height= with 1 to {heightMax}, each at most once.", lang: "en" },
36
+ optionsError: { text: "The table option “{word}” cannot be read. Write header=, footer= and freeze= with 0 to {frozenMax}, height= with 1 to {heightMax}, zoom= with one of {zoomSteps}, and toolbar=, headings= and autofit= with 0 or 1, each at most once.", lang: "en" },
37
37
  tooLarge: { text: "This table has {cells} cells, more than the {max} a table shows. Its text is still in the document.", lang: "en" },
38
38
  loadFailed: { text: "Could not load the spreadsheet. Check the connection and retry.", lang: "en" },
39
39
  retry: { text: "Retry", lang: "en" }
40
- }), C = Object.freeze({
40
+ }), _ = Object.freeze({
41
41
  table: { text: "表", lang: "ja" },
42
42
  zoomIn: { text: "拡大", lang: "ja" },
43
43
  zoomOut: { text: "縮小", lang: "ja" },
@@ -72,60 +72,60 @@ const z = /\{([A-Za-z]+)\}/gu, T = Object.freeze({
72
72
  fenceRefused: { text: "セルの行が表のコードのフェンスを閉じてしまう (行頭の ``` や ~~~) ため、この変更は保存しませんでした。", lang: "ja" },
73
73
  editConflict: { text: "エディタで表が変わっていたため、この変更は保存しませんでした。今の表にもう一度変更してください。", lang: "ja" },
74
74
  unwritable: { text: "この表の元の行は書き戻せない書き方のため、ここでは読み取り専用です。元の文書で表を編集してください。", lang: "ja" },
75
- optionsError: { text: "表の指定「{word}」を読めません。header=・footer=・freeze= は 0〜{frozenMax}、height= は 1〜{heightMax} の整数で、それぞれ 1 回まで書けます。", lang: "ja" },
75
+ optionsError: { text: "表の指定「{word}」を読めません。header=・footer=・freeze= は 0〜{frozenMax}、height= は 1〜{heightMax}、zoom= は {zoomSteps} のどれか、toolbar=・headings=・autofit= は 0 か 1 の整数で、それぞれ 1 回まで書けます。", lang: "ja" },
76
76
  tooLarge: { text: "この表のセルは {cells} 個で、表が見せられる {max} 個を超えます。表の文字は文書の中にあります。", lang: "ja" },
77
77
  loadFailed: { text: "表を読み込めませんでした。接続を確かめて再試行してください。", lang: "ja" },
78
78
  retry: { text: "再試行", lang: "ja" }
79
- }), V = Object.freeze({ en: T, ja: C }), q = Object.freeze(
80
- Object.fromEntries(Object.entries(T).map(([e, n]) => [e, Object.freeze([...new Set(Array.from(n.text.matchAll(z), (a) => a[1]))])]))
81
- ), G = (e, n) => e.replace(z, (a, t) => Object.hasOwn(n, t) ? String(n[t]) : a), O = 4, L = /^[ \t]*$/u, _ = /^ {0,3}(?:[-+*]|\d{1,9}[.)])/u, k = /^(?:`{3,}|~{3,})/u, I = /^[\t\n\r ]*$/u, y = /^[ \t]+$/u, W = /[\t\n\v\f\r ]/u, p = (e) => O - e % O, d = (e, n) => {
82
- let a = 0, t = n.index;
79
+ }), q = Object.freeze({ en: C, ja: _ }), G = Object.freeze(
80
+ Object.fromEntries(Object.entries(C).map(([e, n]) => [e, Object.freeze([...new Set(Array.from(n.text.matchAll(T), (o) => o[1]))])]))
81
+ ), X = (e, n) => e.replace(T, (o, t) => Object.hasOwn(n, t) ? String(n[t]) : o), S = 4, L = /^[ \t]*$/u, k = /^ {0,3}(?:[-+*]|\d{1,9}[.)])/u, I = /^(?:`{3,}|~{3,})/u, P = /^[\t\n\r ]*$/u, y = /^[ \t]+$/u, W = /[\t\n\v\f\r ]/u, E = (e) => S - e % S, d = (e, n) => {
82
+ let o = 0, t = n.index;
83
83
  for (; t < e.length; t += 1) {
84
- const o = e[t];
85
- if (o === " ") a += 1;
86
- else if (o === " ") a += p(n.column + a);
84
+ const a = e[t];
85
+ if (a === " ") o += 1;
86
+ else if (a === " ") o += E(n.column + o);
87
87
  else break;
88
88
  }
89
- return { width: a, end: t };
90
- }, E = (e, n, a) => {
91
- const t = n.column + a;
92
- let { index: o, column: l } = n;
89
+ return { width: o, end: t };
90
+ }, b = (e, n, o) => {
91
+ const t = n.column + o;
92
+ let { index: a, column: l } = n;
93
93
  for (; l < t; ) {
94
- const s = e[o];
94
+ const s = e[a];
95
95
  if (s === " ") l += 1;
96
- else if (s === " ") l += p(l);
96
+ else if (s === " ") l += E(l);
97
97
  else return null;
98
- o += 1;
98
+ a += 1;
99
99
  }
100
- return l === t ? { index: o, column: l } : null;
100
+ return l === t ? { index: a, column: l } : null;
101
101
  }, B = (e, n) => {
102
- const a = d(e, n);
103
- if (a.width > 3 || e[a.end] !== ">") return null;
104
- const t = a.end + 1, o = n.column + a.width + 1;
105
- return e[t] === " " ? { index: t + 1, column: o + 1 } : e[t] === " " ? null : { index: t, column: o };
102
+ const o = d(e, n);
103
+ if (o.width > 3 || e[o.end] !== ">") return null;
104
+ const t = o.end + 1, a = n.column + o.width + 1;
105
+ return e[t] === " " ? { index: t + 1, column: a + 1 } : e[t] === " " ? null : { index: t, column: a };
106
106
  }, v = (e, n) => {
107
- const a = _.exec(e.slice(n.index))?.[0];
108
- if (a === void 0) return null;
109
- const t = { index: n.index + a.length, column: n.column + a.length }, o = e.slice(t.index);
110
- if (L.test(o)) return { width: a.length + 1, next: { index: e.length, column: t.column + d(e, t).width } };
111
- const l = { index: t.index, column: a.length }, s = d(e, l);
107
+ const o = k.exec(e.slice(n.index))?.[0];
108
+ if (o === void 0) return null;
109
+ const t = { index: n.index + o.length, column: n.column + o.length }, a = e.slice(t.index);
110
+ if (L.test(a)) return { width: o.length + 1, next: { index: e.length, column: t.column + d(e, t).width } };
111
+ const l = { index: t.index, column: o.length }, s = d(e, l);
112
112
  if (s.width === 0) return null;
113
- const c = s.width > 4 ? 1 : s.width, r = E(e, l, c);
114
- return r === null ? null : { width: a.length + c, next: { index: r.index, column: F(e, t, r.index) } };
115
- }, F = (e, n, a) => {
113
+ const i = s.width > 4 ? 1 : s.width, r = b(e, l, i);
114
+ return r === null ? null : { width: o.length + i, next: { index: r.index, column: F(e, t, r.index) } };
115
+ }, F = (e, n, o) => {
116
116
  let t = n.column;
117
- for (let o = n.index; o < a; o += 1) t += e[o] === " " ? p(t) : 1;
117
+ for (let a = n.index; a < o; a += 1) t += e[a] === " " ? E(t) : 1;
118
118
  return t;
119
- }, m = (e, n, a) => {
119
+ }, w = (e, n, o) => {
120
120
  let t = { index: 0, column: 0 };
121
- for (const [o, l] of n.entries()) {
121
+ for (const [a, l] of n.entries()) {
122
122
  if (l.kind === "quote") {
123
123
  const r = B(e, t);
124
124
  if (r === null) return null;
125
125
  t = r;
126
126
  continue;
127
127
  }
128
- if (o >= a) {
128
+ if (a >= o) {
129
129
  const r = v(e, t);
130
130
  if (r === null || r.width !== l.width) return null;
131
131
  t = r.next;
@@ -133,80 +133,84 @@ const z = /\{([A-Za-z]+)\}/gu, T = Object.freeze({
133
133
  }
134
134
  const s = d(e, t);
135
135
  if (s.end === e.length)
136
- return n.slice(o + 1).some((r) => r.kind === "quote") ? null : "blank";
136
+ return n.slice(a + 1).some((r) => r.kind === "quote") ? null : "blank";
137
137
  if (s.width < l.width) return null;
138
- const c = E(e, t, l.width);
139
- if (c === null) return null;
140
- t = c;
138
+ const i = b(e, t, l.width);
139
+ if (i === null) return null;
140
+ t = i;
141
141
  }
142
142
  return t;
143
- }, X = (e, n, a) => {
144
- const t = m(e, n, a);
143
+ }, J = (e, n, o) => {
144
+ const t = w(e, n, o);
145
145
  return t === null || t === "blank" ? null : v(e, t)?.width ?? null;
146
- }, J = (e, n, a) => {
147
- const t = m(e, n, a);
146
+ }, Q = (e, n, o) => {
147
+ const t = w(e, n, o);
148
148
  if (t === null || t === "blank") return null;
149
- const o = d(e, t), l = k.exec(e.slice(o.end))?.[0];
150
- return l === void 0 || o.width > 3 || e.slice(t.index, o.end).includes(" ") ? null : { fenceIndent: o.width, fence: l };
151
- }, Q = (e) => {
152
- const n = e.replace(/^[\t\n\v\f\r ]+/u, ""), a = W.exec(n)?.index ?? n.length, t = n.slice(0, a);
149
+ const a = d(e, t), l = I.exec(e.slice(a.end))?.[0];
150
+ return l === void 0 || a.width > 3 || e.slice(t.index, a.end).includes(" ") ? null : { fenceIndent: a.width, fence: l };
151
+ }, Y = (e) => {
152
+ const n = e.replace(/^[\t\n\v\f\r ]+/u, ""), o = W.exec(n)?.index ?? n.length, t = n.slice(0, o);
153
153
  return /[\\&]/u.test(t) ? null : t;
154
- }, S = (e, n) => {
155
- const a = m(e, n.containers, n.containers.length);
156
- if (a === null) return null;
157
- if (a === "blank") return { head: e, content: "", whole: !1 };
158
- const t = d(e, a);
154
+ }, z = (e, n) => {
155
+ const o = w(e, n.containers, n.containers.length);
156
+ if (o === null) return null;
157
+ if (o === "blank") return { head: e, content: "", whole: !1 };
158
+ const t = d(e, o);
159
159
  if (t.width < n.fenceIndent) {
160
- const l = t.end === e.length ? a.index : t.end;
160
+ const l = t.end === e.length ? o.index : t.end;
161
161
  return { head: e.slice(0, l), content: e.slice(l), whole: !1 };
162
162
  }
163
- const o = E(e, a, n.fenceIndent);
164
- return o === null ? null : { head: e.slice(0, o.index), content: e.slice(o.index), whole: !0 };
163
+ const a = b(e, o, n.fenceIndent);
164
+ return a === null ? null : { head: e.slice(0, a.index), content: e.slice(a.index), whole: !0 };
165
165
  }, A = (e) => e.containers.map((n) => n.kind === "quote" ? "> " : " ".repeat(n.width)).join("") + " ".repeat(e.fenceIndent), H = (e) => e.containers.at(-1)?.kind === "listItem", N = (e, n) => (
166
166
  // 変換器は LF でだけ行を分けるため、CR・U+2028・U+2029 を行の終わりとする正規表現の m の指定は使わない
167
167
  H(n) ? e.split(`
168
- `).map((a) => y.test(a) ? "" : a).join(`
168
+ `).map((o) => y.test(o) ? "" : o).join(`
169
169
  `) : e
170
170
  ), D = (e, n) => {
171
- const a = m(e, n.containers, n.containers.length);
172
- if (a === null || a === "blank") return !1;
173
- const t = d(e, a);
171
+ const o = w(e, n.containers, n.containers.length);
172
+ if (o === null || o === "blank") return !1;
173
+ const t = d(e, o);
174
174
  if (t.width > 3) return !1;
175
- let o = t.end;
176
- for (; e[o] === n.fence[0]; ) o += 1;
177
- return o - t.end >= n.fence.length && I.test(e.slice(o));
178
- }, M = Object.freeze({ kind: "closesFence" }), R = Object.freeze({ kind: "unwritable" }), P = (e) => {
175
+ let a = t.end;
176
+ for (; e[a] === n.fence[0]; ) a += 1;
177
+ return a - t.end >= n.fence.length && P.test(e.slice(a));
178
+ }, M = Object.freeze({ kind: "closesFence" }), R = Object.freeze({ kind: "unwritable" }), $ = (e) => {
179
179
  const n = e.split(`
180
180
  `);
181
181
  return n.at(-1) === "" && n.pop(), n;
182
- }, Y = (e, n, a) => {
182
+ }, ee = (e, n, o) => {
183
183
  const t = [];
184
- for (const i of e) {
185
- const g = S(i, n);
186
- if (g === null) return R;
187
- t.push(g);
184
+ for (const c of e) {
185
+ const f = z(c, n);
186
+ if (f === null) return R;
187
+ t.push(f);
188
188
  }
189
- const o = P(N(a, n));
189
+ const a = $(N(o, n));
190
190
  let l = 0;
191
- for (; l < t.length && l < o.length && t[l].content === o[l]; ) l += 1;
191
+ for (; l < t.length && l < a.length && t[l].content === a[l]; ) l += 1;
192
192
  let s = 0;
193
- for (; s < t.length - l && s < o.length - l && t[t.length - 1 - s].content === o[o.length - 1 - s]; ) s += 1;
194
- const r = [...t.slice(0, l).reverse(), ...t.slice(t.length - s), ...t.slice(l, t.length - s)].find((i) => i.whole && i.content !== ""), u = r === void 0 ? [A(n)] : [r.head, A(n)], j = [];
195
- for (const i of o.slice(l, o.length - s)) {
196
- const g = u.map((h) => i === "" ? h.trimEnd() : h + i).filter((h) => S(h, n)?.content === i);
197
- if (g.length === 0) return R;
198
- const b = g.find((h) => !D(h, n));
199
- if (b === void 0) return M;
200
- j.push(b);
193
+ for (; s < t.length - l && s < a.length - l && t[t.length - 1 - s].content === a[a.length - 1 - s]; ) s += 1;
194
+ const r = [...t.slice(0, l).reverse(), ...t.slice(t.length - s), ...t.slice(l, t.length - s)].find((c) => c.whole && c.content !== ""), u = r === void 0 ? [A(n)] : [r.head, A(n)], j = [];
195
+ for (const c of a.slice(l, a.length - s)) {
196
+ const f = u.map((h) => c === "" ? h.trimEnd() : h + c).filter((h) => z(h, n)?.content === c);
197
+ if (f.length === 0) return R;
198
+ const O = f.find((h) => !D(h, n));
199
+ if (O === void 0) return M;
200
+ j.push(O);
201
201
  }
202
202
  return { kind: "edit", from: l, to: t.length - s, lines: j };
203
- }, ee = "data-code-meta", te = "spreadsheets", $ = 15, Z = 100, w = 128, f = Object.freeze({
204
- header: Object.freeze({ field: "headerRows", min: 0, max: w, absent: 0 }),
205
- footer: Object.freeze({ field: "footerRows", min: 0, max: w, absent: 0 }),
206
- freeze: Object.freeze({ field: "frozenColumns", min: 0, max: w, absent: 0 }),
207
- height: Object.freeze({ field: "visibleRows", min: 1, max: Z, absent: $ })
203
+ }, te = "data-code-meta", ne = "spreadsheets", Z = 15, K = 1e3, p = 128, x = Object.freeze([25, 30, 35, 42, 50, 59, 71, 84, 100, 119, 141, 168, 200, 238, 283, 336, 400]), m = Object.freeze({
204
+ header: Object.freeze({ field: "headerRows", min: 0, max: p, steps: null, absent: 0 }),
205
+ footer: Object.freeze({ field: "footerRows", min: 0, max: p, steps: null, absent: 0 }),
206
+ freeze: Object.freeze({ field: "frozenColumns", min: 0, max: p, steps: null, absent: 0 }),
207
+ height: Object.freeze({ field: "visibleRows", min: 1, max: K, steps: null, absent: Z }),
208
+ zoom: Object.freeze({ field: "zoomPercent", min: x[0], max: x[x.length - 1], steps: x, absent: 100 }),
209
+ toolbar: Object.freeze({ field: "toolbar", min: 0, max: 1, steps: null, absent: 1 }),
210
+ headings: Object.freeze({ field: "headings", min: 0, max: 1, steps: null, absent: 1 }),
211
+ autofit: Object.freeze({ field: "autofit", min: 0, max: 1, steps: null, absent: 0 })
208
212
  });
209
- class x extends RangeError {
213
+ class g extends RangeError {
210
214
  /** The word that could not be read. 読めなかった語。 */
211
215
  word;
212
216
  /**
@@ -216,52 +220,55 @@ class x extends RangeError {
216
220
  * @param word - The word that could not be read. 読めなかった語。
217
221
  * @param message - Why, for developers. 理由 (開発者向け)。
218
222
  */
219
- constructor(n, a) {
220
- super(`[@aiquants/markdown] spreadsheet option "${n}" ${a}`), this.name = "SpreadsheetOptionsError", this.word = n;
223
+ constructor(n, o) {
224
+ super(`[@aiquants/markdown] spreadsheet option "${n}" ${o}`), this.name = "SpreadsheetOptionsError", this.word = n;
221
225
  }
222
226
  }
223
- const K = /^([a-z]+)=([0-9]+)$/u, U = /[\t\n\f\r ]+/u, ne = (e) => {
224
- const n = Object.fromEntries(Object.values(f).map((o) => [o.field, o.absent])), a = e?.replace(/^[\t\n\f\r ]+|[\t\n\f\r ]+$/gu, "") ?? "";
225
- if (a === "")
227
+ const U = /^([a-z]+)=([0-9]+)$/u, V = /[\t\n\f\r ]+/u, oe = (e) => {
228
+ const n = Object.fromEntries(Object.values(m).map((a) => [a.field, a.absent])), o = e?.replace(/^[\t\n\f\r ]+|[\t\n\f\r ]+$/gu, "") ?? "";
229
+ if (o === "")
226
230
  return Object.freeze(n);
227
231
  const t = /* @__PURE__ */ new Set();
228
- for (const o of a.split(U)) {
229
- const l = K.exec(o);
232
+ for (const a of o.split(V)) {
233
+ const l = U.exec(a);
230
234
  if (l === null)
231
- throw new x(o, "is not key=value with a decimal value");
232
- const [, s, c] = l;
233
- if (!Object.hasOwn(f, s))
234
- throw new x(o, `has an unknown key (${Object.keys(f).join(", ")} are read)`);
235
- const r = f[s];
235
+ throw new g(a, "is not key=value with a decimal value");
236
+ const [, s, i] = l;
237
+ if (!Object.hasOwn(m, s))
238
+ throw new g(a, `has an unknown key (${Object.keys(m).join(", ")} are read)`);
239
+ const r = m[s];
236
240
  if (t.has(s))
237
- throw new x(o, "gives its key twice");
238
- if (t.add(s), c.length > 1 && c.startsWith("0"))
239
- throw new x(o, "has leading zeros");
240
- const u = Number(c);
241
+ throw new g(a, "gives its key twice");
242
+ if (t.add(s), i.length > 1 && i.startsWith("0"))
243
+ throw new g(a, "has leading zeros");
244
+ const u = Number(i);
241
245
  if (u < r.min || u > r.max)
242
- throw new x(o, `must be between ${r.min} and ${r.max}`);
246
+ throw new g(a, `must be between ${r.min} and ${r.max}`);
247
+ if (r.steps !== null && !r.steps.includes(u))
248
+ throw new g(a, `must be one of ${r.steps.join(", ")}`);
243
249
  n[r.field] = u;
244
250
  }
245
251
  return Object.freeze(n);
246
252
  };
247
253
  export {
248
- ee as C,
249
- $ as D,
250
- w as M,
251
- V as S,
252
- q as a,
253
- f as b,
254
- x as c,
255
- te as d,
256
- Z as e,
257
- G as f,
258
- N as g,
259
- Q as h,
260
- A as i,
261
- Y as j,
262
- X as l,
263
- J as o,
264
- ne as p,
265
- S as r,
254
+ te as C,
255
+ Z as D,
256
+ p as M,
257
+ q as S,
258
+ G as a,
259
+ x as b,
260
+ m as c,
261
+ g as d,
262
+ ne as e,
263
+ X as f,
264
+ K as g,
265
+ N as h,
266
+ Y as i,
267
+ A as j,
268
+ ee as k,
269
+ J as l,
270
+ Q as o,
271
+ oe as p,
272
+ z as r,
266
273
  H as w
267
274
  };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./code-blocks-Bax5Xik7.cjs");exports.CODE_META_ATTRIBUTE=e.CODE_META_ATTRIBUTE;exports.DEFAULT_SPREADSHEET_VISIBLE_ROWS=e.DEFAULT_SPREADSHEET_VISIBLE_ROWS;exports.MAX_SPREADSHEET_FROZEN_TRACKS=e.MAX_SPREADSHEET_FROZEN_TRACKS;exports.MAX_SPREADSHEET_VISIBLE_ROWS=e.MAX_SPREADSHEET_VISIBLE_ROWS;exports.SPREADSHEETS_LANGUAGE=e.SPREADSHEETS_LANGUAGE;exports.SPREADSHEET_BLOCK_LABEL_CATALOGS=e.SPREADSHEET_BLOCK_LABEL_CATALOGS;exports.SPREADSHEET_BLOCK_LABEL_PLACEHOLDERS=e.SPREADSHEET_BLOCK_LABEL_PLACEHOLDERS;exports.SPREADSHEET_OPTION_RULES=e.SPREADSHEET_OPTION_RULES;exports.SpreadsheetOptionsError=e.SpreadsheetOptionsError;exports.fencedBodyAsRead=e.fencedBodyAsRead;exports.fencedCodeLanguageOf=e.fencedCodeLanguageOf;exports.fencedLineHead=e.fencedLineHead;exports.listItemWidthOn=e.listItemWidthOn;exports.openingFenceOn=e.openingFenceOn;exports.parseSpreadsheetOptions=e.parseSpreadsheetOptions;exports.planFencedBodyEdit=e.planFencedBodyEdit;exports.readFencedLine=e.readFencedLine;exports.whiteSpaceLinesReadEmpty=e.whiteSpaceLinesReadEmpty;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const E=require("./code-blocks-Cpo2S9jm.cjs");exports.CODE_META_ATTRIBUTE=E.CODE_META_ATTRIBUTE;exports.DEFAULT_SPREADSHEET_VISIBLE_ROWS=E.DEFAULT_SPREADSHEET_VISIBLE_ROWS;exports.MAX_SPREADSHEET_FROZEN_TRACKS=E.MAX_SPREADSHEET_FROZEN_TRACKS;exports.MAX_SPREADSHEET_VISIBLE_ROWS=E.MAX_SPREADSHEET_VISIBLE_ROWS;exports.SPREADSHEETS_LANGUAGE=E.SPREADSHEETS_LANGUAGE;exports.SPREADSHEET_BLOCK_LABEL_CATALOGS=E.SPREADSHEET_BLOCK_LABEL_CATALOGS;exports.SPREADSHEET_BLOCK_LABEL_PLACEHOLDERS=E.SPREADSHEET_BLOCK_LABEL_PLACEHOLDERS;exports.SPREADSHEET_OPTION_RULES=E.SPREADSHEET_OPTION_RULES;exports.SPREADSHEET_ZOOM_STEP_PERCENTS=E.SPREADSHEET_ZOOM_STEP_PERCENTS;exports.SpreadsheetOptionsError=E.SpreadsheetOptionsError;exports.fencedBodyAsRead=E.fencedBodyAsRead;exports.fencedCodeLanguageOf=E.fencedCodeLanguageOf;exports.fencedLineHead=E.fencedLineHead;exports.listItemWidthOn=E.listItemWidthOn;exports.openingFenceOn=E.openingFenceOn;exports.parseSpreadsheetOptions=E.parseSpreadsheetOptions;exports.planFencedBodyEdit=E.planFencedBodyEdit;exports.readFencedLine=E.readFencedLine;exports.whiteSpaceLinesReadEmpty=E.whiteSpaceLinesReadEmpty;
@@ -1,19 +1,25 @@
1
1
  export declare const CODE_META_ATTRIBUTE = "data-code-meta";
2
2
  export declare const SPREADSHEETS_LANGUAGE = "spreadsheets";
3
3
  export declare const DEFAULT_SPREADSHEET_VISIBLE_ROWS = 15;
4
- export declare const MAX_SPREADSHEET_VISIBLE_ROWS = 100;
4
+ export declare const MAX_SPREADSHEET_VISIBLE_ROWS = 1000;
5
5
  export declare const MAX_SPREADSHEET_FROZEN_TRACKS = 128;
6
+ export declare const SPREADSHEET_ZOOM_STEP_PERCENTS: readonly number[];
6
7
  export type SpreadsheetOptions = {
7
8
  readonly headerRows: number;
8
9
  readonly footerRows: number;
9
10
  readonly frozenColumns: number;
10
11
  readonly visibleRows: number;
12
+ readonly zoomPercent: number;
13
+ readonly toolbar: number;
14
+ readonly headings: number;
15
+ readonly autofit: number;
11
16
  };
12
- export type SpreadsheetOptionKey = "header" | "footer" | "freeze" | "height";
17
+ export type SpreadsheetOptionKey = "header" | "footer" | "freeze" | "height" | "zoom" | "toolbar" | "headings" | "autofit";
13
18
  export type SpreadsheetOptionRule = {
14
19
  readonly field: keyof SpreadsheetOptions;
15
20
  readonly min: number;
16
21
  readonly max: number;
22
+ readonly steps: readonly number[] | null;
17
23
  readonly absent: number;
18
24
  };
19
25
  export declare const SPREADSHEET_OPTION_RULES: Readonly<Record<SpreadsheetOptionKey, SpreadsheetOptionRule>>;
@@ -1,21 +1,22 @@
1
- import { C as a, D as S, M as s, e as A, d as _, S as L, a as d, b as n, c as R, g as O, h as T, i, l as p, o as t, p as D, j as o, r, w as B } from "./code-blocks-bgwDIVp1.js";
1
+ import { C as a, D as S, M as s, g as _, e as A, S as L, a as R, c as T, b as d, d as n, h as O, i as D, j as P, l as i, o as p, p as t, k as o, r, w as H } from "./code-blocks-Gfo7U6nu.js";
2
2
  export {
3
3
  a as CODE_META_ATTRIBUTE,
4
4
  S as DEFAULT_SPREADSHEET_VISIBLE_ROWS,
5
5
  s as MAX_SPREADSHEET_FROZEN_TRACKS,
6
- A as MAX_SPREADSHEET_VISIBLE_ROWS,
7
- _ as SPREADSHEETS_LANGUAGE,
6
+ _ as MAX_SPREADSHEET_VISIBLE_ROWS,
7
+ A as SPREADSHEETS_LANGUAGE,
8
8
  L as SPREADSHEET_BLOCK_LABEL_CATALOGS,
9
- d as SPREADSHEET_BLOCK_LABEL_PLACEHOLDERS,
10
- n as SPREADSHEET_OPTION_RULES,
11
- R as SpreadsheetOptionsError,
9
+ R as SPREADSHEET_BLOCK_LABEL_PLACEHOLDERS,
10
+ T as SPREADSHEET_OPTION_RULES,
11
+ d as SPREADSHEET_ZOOM_STEP_PERCENTS,
12
+ n as SpreadsheetOptionsError,
12
13
  O as fencedBodyAsRead,
13
- T as fencedCodeLanguageOf,
14
- i as fencedLineHead,
15
- p as listItemWidthOn,
16
- t as openingFenceOn,
17
- D as parseSpreadsheetOptions,
14
+ D as fencedCodeLanguageOf,
15
+ P as fencedLineHead,
16
+ i as listItemWidthOn,
17
+ p as openingFenceOn,
18
+ t as parseSpreadsheetOptions,
18
19
  o as planFencedBodyEdit,
19
20
  r as readFencedLine,
20
- B as whiteSpaceLinesReadEmpty
21
+ H as whiteSpaceLinesReadEmpty
21
22
  };
@@ -14,8 +14,12 @@ export type TableMatrix = readonly (readonly string[])[];
14
14
  export declare const visibleRowsOf: (options: SpreadsheetOptions, rowCount: number) => number;
15
15
  export declare const SPREADSHEET_FILL_MIN_ROWS = 3;
16
16
  export declare const fillMinRowsOf: (rowCount: number) => number;
17
- export declare const boxHeightOf: (visibleRows: number, zoom: number) => number;
17
+ export declare const boxHeightOf: (visibleRows: number, zoom: number, headings: boolean) => number;
18
+ export declare const FITTED_BOX_SLACK_PX = 1;
19
+ export declare const fittedBoxSizeOf: (contentSize: number) => number;
20
+ export declare const isWholeTable: (visibleRows: number, rowCount: number) => boolean;
18
21
  export declare const zoomPercentOf: (zoom: number) => number;
22
+ export declare const zoomOfPercent: (percent: number) => number;
19
23
  export declare const withSpareTracks: (matrix: TableMatrix, spareRows: number, spareColumns: number) => TableMatrix;
20
24
  export declare const trimTrailingEmpty: (matrix: TableMatrix) => TableMatrix;
21
25
  export declare const tableOf: (body: string) => TableMatrix;
Binary file
@@ -1,4 +1,4 @@
1
- import { bN as lt, _ as V, U as k, R as gt } from "./extractHeadings-B6uw4Yra.js";
1
+ import { bN as lt, _ as V, U as k, R as gt } from "./extractHeadings-ChjUMVbw.js";
2
2
  import { c as tt } from "./cytoscape.esm-kVAWcYoG.js";
3
3
  var Z = { exports: {} }, $ = { exports: {} }, Q = { exports: {} }, ut = Q.exports, j;
4
4
  function ft() {