deepsky 2.54.15 → 2.54.24

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 (287) hide show
  1. package/dist/index.css +103 -50
  2. package/dist/index.d.ts +192 -65
  3. package/dist/index.js +2 -2
  4. package/package.json +1 -1
  5. /package/dist/chunk/{1037-b4313e3456e69fc36810.js → 1037-b614279e590c4d42c70a.js} +0 -0
  6. /package/dist/chunk/{1066-b4313e3456e69fc36810.js → 1066-b614279e590c4d42c70a.js} +0 -0
  7. /package/dist/chunk/{1216-b4313e3456e69fc36810.js → 1216-b614279e590c4d42c70a.js} +0 -0
  8. /package/dist/chunk/{1230-b4313e3456e69fc36810.js → 1230-b614279e590c4d42c70a.js} +0 -0
  9. /package/dist/chunk/{1425-b4313e3456e69fc36810.js → 1425-b614279e590c4d42c70a.js} +0 -0
  10. /package/dist/chunk/{1432-b4313e3456e69fc36810.js → 1432-b614279e590c4d42c70a.js} +0 -0
  11. /package/dist/chunk/{1476-b4313e3456e69fc36810.js → 1476-b614279e590c4d42c70a.js} +0 -0
  12. /package/dist/chunk/{1545-b4313e3456e69fc36810.js → 1545-b614279e590c4d42c70a.js} +0 -0
  13. /package/dist/chunk/{16-b4313e3456e69fc36810.js → 16-b614279e590c4d42c70a.js} +0 -0
  14. /package/dist/chunk/{1624-b4313e3456e69fc36810.js → 1624-b614279e590c4d42c70a.js} +0 -0
  15. /package/dist/chunk/{1631-b4313e3456e69fc36810.js → 1631-b614279e590c4d42c70a.js} +0 -0
  16. /package/dist/chunk/{1655-b4313e3456e69fc36810.js → 1655-b614279e590c4d42c70a.js} +0 -0
  17. /package/dist/chunk/{1708-b4313e3456e69fc36810.js → 1708-b614279e590c4d42c70a.js} +0 -0
  18. /package/dist/chunk/{172-b4313e3456e69fc36810.js → 172-b614279e590c4d42c70a.js} +0 -0
  19. /package/dist/chunk/{1729-b4313e3456e69fc36810.js → 1729-b614279e590c4d42c70a.js} +0 -0
  20. /package/dist/chunk/{1757-b4313e3456e69fc36810.js → 1757-b614279e590c4d42c70a.js} +0 -0
  21. /package/dist/chunk/{1803-b4313e3456e69fc36810.js → 1803-b614279e590c4d42c70a.js} +0 -0
  22. /package/dist/chunk/{1839-b4313e3456e69fc36810.js → 1839-b614279e590c4d42c70a.js} +0 -0
  23. /package/dist/chunk/{1857-b4313e3456e69fc36810.js → 1857-b614279e590c4d42c70a.js} +0 -0
  24. /package/dist/chunk/{1931-b4313e3456e69fc36810.js → 1931-b614279e590c4d42c70a.js} +0 -0
  25. /package/dist/chunk/{2062-b4313e3456e69fc36810.js → 2062-b614279e590c4d42c70a.js} +0 -0
  26. /package/dist/chunk/{2068-b4313e3456e69fc36810.js → 2068-b614279e590c4d42c70a.js} +0 -0
  27. /package/dist/chunk/{2071-b4313e3456e69fc36810.js → 2071-b614279e590c4d42c70a.js} +0 -0
  28. /package/dist/chunk/{2108-b4313e3456e69fc36810.js → 2108-b614279e590c4d42c70a.js} +0 -0
  29. /package/dist/chunk/{212-b4313e3456e69fc36810.js → 212-b614279e590c4d42c70a.js} +0 -0
  30. /package/dist/chunk/{2142-b4313e3456e69fc36810.js → 2142-b614279e590c4d42c70a.js} +0 -0
  31. /package/dist/chunk/{2173-b4313e3456e69fc36810.js → 2173-b614279e590c4d42c70a.js} +0 -0
  32. /package/dist/chunk/{2184-b4313e3456e69fc36810.js → 2184-b614279e590c4d42c70a.js} +0 -0
  33. /package/dist/chunk/{2215-b4313e3456e69fc36810.js → 2215-b614279e590c4d42c70a.js} +0 -0
  34. /package/dist/chunk/{224-b4313e3456e69fc36810.js → 224-b614279e590c4d42c70a.js} +0 -0
  35. /package/dist/chunk/{2266-b4313e3456e69fc36810.js → 2266-b614279e590c4d42c70a.js} +0 -0
  36. /package/dist/chunk/{2354-b4313e3456e69fc36810.js → 2354-b614279e590c4d42c70a.js} +0 -0
  37. /package/dist/chunk/{2419-b4313e3456e69fc36810.js → 2419-b614279e590c4d42c70a.js} +0 -0
  38. /package/dist/chunk/{245-b4313e3456e69fc36810.js → 245-b614279e590c4d42c70a.js} +0 -0
  39. /package/dist/chunk/{2473-b4313e3456e69fc36810.js → 2473-b614279e590c4d42c70a.js} +0 -0
  40. /package/dist/chunk/{2492-b4313e3456e69fc36810.js → 2492-b614279e590c4d42c70a.js} +0 -0
  41. /package/dist/chunk/{2505-b4313e3456e69fc36810.js → 2505-b614279e590c4d42c70a.js} +0 -0
  42. /package/dist/chunk/{2535-b4313e3456e69fc36810.js → 2535-b614279e590c4d42c70a.js} +0 -0
  43. /package/dist/chunk/{2660-b4313e3456e69fc36810.js → 2660-b614279e590c4d42c70a.js} +0 -0
  44. /package/dist/chunk/{2691-b4313e3456e69fc36810.js → 2691-b614279e590c4d42c70a.js} +0 -0
  45. /package/dist/chunk/{2723-b4313e3456e69fc36810.js → 2723-b614279e590c4d42c70a.js} +0 -0
  46. /package/dist/chunk/{284-b4313e3456e69fc36810.js → 284-b614279e590c4d42c70a.js} +0 -0
  47. /package/dist/chunk/{2860-b4313e3456e69fc36810.js → 2860-b614279e590c4d42c70a.js} +0 -0
  48. /package/dist/chunk/{2861-b4313e3456e69fc36810.js → 2861-b614279e590c4d42c70a.js} +0 -0
  49. /package/dist/chunk/{2934-b4313e3456e69fc36810.js → 2934-b614279e590c4d42c70a.js} +0 -0
  50. /package/dist/chunk/{3032-b4313e3456e69fc36810.js → 3032-b614279e590c4d42c70a.js} +0 -0
  51. /package/dist/chunk/{3043-b4313e3456e69fc36810.js → 3043-b614279e590c4d42c70a.js} +0 -0
  52. /package/dist/chunk/{3052-b4313e3456e69fc36810.js → 3052-b614279e590c4d42c70a.js} +0 -0
  53. /package/dist/chunk/{3124-b4313e3456e69fc36810.js → 3124-b614279e590c4d42c70a.js} +0 -0
  54. /package/dist/chunk/{3170-b4313e3456e69fc36810.js → 3170-b614279e590c4d42c70a.js} +0 -0
  55. /package/dist/chunk/{321-b4313e3456e69fc36810.js → 321-b614279e590c4d42c70a.js} +0 -0
  56. /package/dist/chunk/{3227-b4313e3456e69fc36810.js → 3227-b614279e590c4d42c70a.js} +0 -0
  57. /package/dist/chunk/{3247-b4313e3456e69fc36810.js → 3247-b614279e590c4d42c70a.js} +0 -0
  58. /package/dist/chunk/{327-b4313e3456e69fc36810.js → 327-b614279e590c4d42c70a.js} +0 -0
  59. /package/dist/chunk/{3279-b4313e3456e69fc36810.js → 3279-b614279e590c4d42c70a.js} +0 -0
  60. /package/dist/chunk/{3330-b4313e3456e69fc36810.js → 3330-b614279e590c4d42c70a.js} +0 -0
  61. /package/dist/chunk/{3403-b4313e3456e69fc36810.js → 3403-b614279e590c4d42c70a.js} +0 -0
  62. /package/dist/chunk/{3454-b4313e3456e69fc36810.js → 3454-b614279e590c4d42c70a.js} +0 -0
  63. /package/dist/chunk/{3492-b4313e3456e69fc36810.js → 3492-b614279e590c4d42c70a.js} +0 -0
  64. /package/dist/chunk/{3516-b4313e3456e69fc36810.js → 3516-b614279e590c4d42c70a.js} +0 -0
  65. /package/dist/chunk/{3593-b4313e3456e69fc36810.js → 3593-b614279e590c4d42c70a.js} +0 -0
  66. /package/dist/chunk/{3646-b4313e3456e69fc36810.js → 3646-b614279e590c4d42c70a.js} +0 -0
  67. /package/dist/chunk/{3702-b4313e3456e69fc36810.js → 3702-b614279e590c4d42c70a.js} +0 -0
  68. /package/dist/chunk/{3720-b4313e3456e69fc36810.js → 3720-b614279e590c4d42c70a.js} +0 -0
  69. /package/dist/chunk/{3837-b4313e3456e69fc36810.js → 3837-b614279e590c4d42c70a.js} +0 -0
  70. /package/dist/chunk/{3874-b4313e3456e69fc36810.js → 3874-b614279e590c4d42c70a.js} +0 -0
  71. /package/dist/chunk/{3894-b4313e3456e69fc36810.js → 3894-b614279e590c4d42c70a.js} +0 -0
  72. /package/dist/chunk/{3906-b4313e3456e69fc36810.js → 3906-b614279e590c4d42c70a.js} +0 -0
  73. /package/dist/chunk/{3941-b4313e3456e69fc36810.js → 3941-b614279e590c4d42c70a.js} +0 -0
  74. /package/dist/chunk/{3947-b4313e3456e69fc36810.js → 3947-b614279e590c4d42c70a.js} +0 -0
  75. /package/dist/chunk/{3949-b4313e3456e69fc36810.js → 3949-b614279e590c4d42c70a.js} +0 -0
  76. /package/dist/chunk/{396-b4313e3456e69fc36810.js → 396-b614279e590c4d42c70a.js} +0 -0
  77. /package/dist/chunk/{3972-b4313e3456e69fc36810.js → 3972-b614279e590c4d42c70a.js} +0 -0
  78. /package/dist/chunk/{4007-b4313e3456e69fc36810.js → 4007-b614279e590c4d42c70a.js} +0 -0
  79. /package/dist/chunk/{4009-b4313e3456e69fc36810.js → 4009-b614279e590c4d42c70a.js} +0 -0
  80. /package/dist/chunk/{402-b4313e3456e69fc36810.js → 402-b614279e590c4d42c70a.js} +0 -0
  81. /package/dist/chunk/{4081-b4313e3456e69fc36810.js → 4081-b614279e590c4d42c70a.js} +0 -0
  82. /package/dist/chunk/{41-b4313e3456e69fc36810.js → 41-b614279e590c4d42c70a.js} +0 -0
  83. /package/dist/chunk/{4108-b4313e3456e69fc36810.js → 4108-b614279e590c4d42c70a.js} +0 -0
  84. /package/dist/chunk/{4112-b4313e3456e69fc36810.js → 4112-b614279e590c4d42c70a.js} +0 -0
  85. /package/dist/chunk/{415-b4313e3456e69fc36810.js → 415-b614279e590c4d42c70a.js} +0 -0
  86. /package/dist/chunk/{4199-b4313e3456e69fc36810.js → 4199-b614279e590c4d42c70a.js} +0 -0
  87. /package/dist/chunk/{4214-b4313e3456e69fc36810.js → 4214-b614279e590c4d42c70a.js} +0 -0
  88. /package/dist/chunk/{4236-b4313e3456e69fc36810.js → 4236-b614279e590c4d42c70a.js} +0 -0
  89. /package/dist/chunk/{4283-b4313e3456e69fc36810.js → 4283-b614279e590c4d42c70a.js} +0 -0
  90. /package/dist/chunk/{4292-b4313e3456e69fc36810.js → 4292-b614279e590c4d42c70a.js} +0 -0
  91. /package/dist/chunk/{4311-b4313e3456e69fc36810.js → 4311-b614279e590c4d42c70a.js} +0 -0
  92. /package/dist/chunk/{4354-b4313e3456e69fc36810.js → 4354-b614279e590c4d42c70a.js} +0 -0
  93. /package/dist/chunk/{4385-b4313e3456e69fc36810.js → 4385-b614279e590c4d42c70a.js} +0 -0
  94. /package/dist/chunk/{4408-b4313e3456e69fc36810.js → 4408-b614279e590c4d42c70a.js} +0 -0
  95. /package/dist/chunk/{4445-b4313e3456e69fc36810.js → 4445-b614279e590c4d42c70a.js} +0 -0
  96. /package/dist/chunk/{4451-b4313e3456e69fc36810.js → 4451-b614279e590c4d42c70a.js} +0 -0
  97. /package/dist/chunk/{4452-b4313e3456e69fc36810.js → 4452-b614279e590c4d42c70a.js} +0 -0
  98. /package/dist/chunk/{4465-b4313e3456e69fc36810.js → 4465-b614279e590c4d42c70a.js} +0 -0
  99. /package/dist/chunk/{4520-b4313e3456e69fc36810.js → 4520-b614279e590c4d42c70a.js} +0 -0
  100. /package/dist/chunk/{454-b4313e3456e69fc36810.js → 454-b614279e590c4d42c70a.js} +0 -0
  101. /package/dist/chunk/{4546-b4313e3456e69fc36810.js → 4546-b614279e590c4d42c70a.js} +0 -0
  102. /package/dist/chunk/{4552-b4313e3456e69fc36810.js → 4552-b614279e590c4d42c70a.js} +0 -0
  103. /package/dist/chunk/{4598-b4313e3456e69fc36810.js → 4598-b614279e590c4d42c70a.js} +0 -0
  104. /package/dist/chunk/{4614-b4313e3456e69fc36810.js → 4614-b614279e590c4d42c70a.js} +0 -0
  105. /package/dist/chunk/{4660-b4313e3456e69fc36810.js → 4660-b614279e590c4d42c70a.js} +0 -0
  106. /package/dist/chunk/{4697-b4313e3456e69fc36810.js → 4697-b614279e590c4d42c70a.js} +0 -0
  107. /package/dist/chunk/{4709-b4313e3456e69fc36810.js → 4709-b614279e590c4d42c70a.js} +0 -0
  108. /package/dist/chunk/{4714-b4313e3456e69fc36810.js → 4714-b614279e590c4d42c70a.js} +0 -0
  109. /package/dist/chunk/{4780-b4313e3456e69fc36810.js → 4780-b614279e590c4d42c70a.js} +0 -0
  110. /package/dist/chunk/{4838-b4313e3456e69fc36810.js → 4838-b614279e590c4d42c70a.js} +0 -0
  111. /package/dist/chunk/{4843-b4313e3456e69fc36810.js → 4843-b614279e590c4d42c70a.js} +0 -0
  112. /package/dist/chunk/{4862-b4313e3456e69fc36810.js → 4862-b614279e590c4d42c70a.js} +0 -0
  113. /package/dist/chunk/{4877-b4313e3456e69fc36810.js → 4877-b614279e590c4d42c70a.js} +0 -0
  114. /package/dist/chunk/{4886-b4313e3456e69fc36810.js → 4886-b614279e590c4d42c70a.js} +0 -0
  115. /package/dist/chunk/{489-b4313e3456e69fc36810.js → 489-b614279e590c4d42c70a.js} +0 -0
  116. /package/dist/chunk/{4914-b4313e3456e69fc36810.js → 4914-b614279e590c4d42c70a.js} +0 -0
  117. /package/dist/chunk/{4940-b4313e3456e69fc36810.js → 4940-b614279e590c4d42c70a.js} +0 -0
  118. /package/dist/chunk/{4962-b4313e3456e69fc36810.js → 4962-b614279e590c4d42c70a.js} +0 -0
  119. /package/dist/chunk/{5026-b4313e3456e69fc36810.js → 5026-b614279e590c4d42c70a.js} +0 -0
  120. /package/dist/chunk/{5034-b4313e3456e69fc36810.js → 5034-b614279e590c4d42c70a.js} +0 -0
  121. /package/dist/chunk/{5050-b4313e3456e69fc36810.js → 5050-b614279e590c4d42c70a.js} +0 -0
  122. /package/dist/chunk/{5099-b4313e3456e69fc36810.js → 5099-b614279e590c4d42c70a.js} +0 -0
  123. /package/dist/chunk/{5119-b4313e3456e69fc36810.js → 5119-b614279e590c4d42c70a.js} +0 -0
  124. /package/dist/chunk/{5141-b4313e3456e69fc36810.js → 5141-b614279e590c4d42c70a.js} +0 -0
  125. /package/dist/chunk/{5143-b4313e3456e69fc36810.js → 5143-b614279e590c4d42c70a.js} +0 -0
  126. /package/dist/chunk/{5177-b4313e3456e69fc36810.js → 5177-b614279e590c4d42c70a.js} +0 -0
  127. /package/dist/chunk/{5203-b4313e3456e69fc36810.js → 5203-b614279e590c4d42c70a.js} +0 -0
  128. /package/dist/chunk/{5283-b4313e3456e69fc36810.js → 5283-b614279e590c4d42c70a.js} +0 -0
  129. /package/dist/chunk/{5314-b4313e3456e69fc36810.js → 5314-b614279e590c4d42c70a.js} +0 -0
  130. /package/dist/chunk/{535-b4313e3456e69fc36810.js → 535-b614279e590c4d42c70a.js} +0 -0
  131. /package/dist/chunk/{5363-b4313e3456e69fc36810.js → 5363-b614279e590c4d42c70a.js} +0 -0
  132. /package/dist/chunk/{542-b4313e3456e69fc36810.js → 542-b614279e590c4d42c70a.js} +0 -0
  133. /package/dist/chunk/{5424-b4313e3456e69fc36810.js → 5424-b614279e590c4d42c70a.js} +0 -0
  134. /package/dist/chunk/{5443-b4313e3456e69fc36810.js → 5443-b614279e590c4d42c70a.js} +0 -0
  135. /package/dist/chunk/{5521-b4313e3456e69fc36810.js → 5521-b614279e590c4d42c70a.js} +0 -0
  136. /package/dist/chunk/{5536-b4313e3456e69fc36810.js → 5536-b614279e590c4d42c70a.js} +0 -0
  137. /package/dist/chunk/{5542-b4313e3456e69fc36810.js → 5542-b614279e590c4d42c70a.js} +0 -0
  138. /package/dist/chunk/{5585-b4313e3456e69fc36810.js → 5585-b614279e590c4d42c70a.js} +0 -0
  139. /package/dist/chunk/{5589-b4313e3456e69fc36810.js → 5589-b614279e590c4d42c70a.js} +0 -0
  140. /package/dist/chunk/{5601-b4313e3456e69fc36810.js → 5601-b614279e590c4d42c70a.js} +0 -0
  141. /package/dist/chunk/{5611-b4313e3456e69fc36810.js → 5611-b614279e590c4d42c70a.js} +0 -0
  142. /package/dist/chunk/{5628-b4313e3456e69fc36810.js → 5628-b614279e590c4d42c70a.js} +0 -0
  143. /package/dist/chunk/{5638-b4313e3456e69fc36810.js → 5638-b614279e590c4d42c70a.js} +0 -0
  144. /package/dist/chunk/{5647-b4313e3456e69fc36810.js → 5647-b614279e590c4d42c70a.js} +0 -0
  145. /package/dist/chunk/{5709-b4313e3456e69fc36810.js → 5709-b614279e590c4d42c70a.js} +0 -0
  146. /package/dist/chunk/{5728-b4313e3456e69fc36810.js → 5728-b614279e590c4d42c70a.js} +0 -0
  147. /package/dist/chunk/{5731-b4313e3456e69fc36810.js → 5731-b614279e590c4d42c70a.js} +0 -0
  148. /package/dist/chunk/{5744-b4313e3456e69fc36810.js → 5744-b614279e590c4d42c70a.js} +0 -0
  149. /package/dist/chunk/{5814-b4313e3456e69fc36810.js → 5814-b614279e590c4d42c70a.js} +0 -0
  150. /package/dist/chunk/{5827-b4313e3456e69fc36810.js → 5827-b614279e590c4d42c70a.js} +0 -0
  151. /package/dist/chunk/{5884-b4313e3456e69fc36810.js → 5884-b614279e590c4d42c70a.js} +0 -0
  152. /package/dist/chunk/{5891-b4313e3456e69fc36810.js → 5891-b614279e590c4d42c70a.js} +0 -0
  153. /package/dist/chunk/{5936-b4313e3456e69fc36810.js → 5936-b614279e590c4d42c70a.js} +0 -0
  154. /package/dist/chunk/{5954-b4313e3456e69fc36810.js → 5954-b614279e590c4d42c70a.js} +0 -0
  155. /package/dist/chunk/{6010-b4313e3456e69fc36810.js → 6010-b614279e590c4d42c70a.js} +0 -0
  156. /package/dist/chunk/{6045-b4313e3456e69fc36810.js → 6045-b614279e590c4d42c70a.js} +0 -0
  157. /package/dist/chunk/{6083-b4313e3456e69fc36810.js → 6083-b614279e590c4d42c70a.js} +0 -0
  158. /package/dist/chunk/{6124-b4313e3456e69fc36810.js → 6124-b614279e590c4d42c70a.js} +0 -0
  159. /package/dist/chunk/{6173-b4313e3456e69fc36810.js → 6173-b614279e590c4d42c70a.js} +0 -0
  160. /package/dist/chunk/{6239-b4313e3456e69fc36810.js → 6239-b614279e590c4d42c70a.js} +0 -0
  161. /package/dist/chunk/{6262-b4313e3456e69fc36810.js → 6262-b614279e590c4d42c70a.js} +0 -0
  162. /package/dist/chunk/{6283-b4313e3456e69fc36810.js → 6283-b614279e590c4d42c70a.js} +0 -0
  163. /package/dist/chunk/{6297-b4313e3456e69fc36810.js → 6297-b614279e590c4d42c70a.js} +0 -0
  164. /package/dist/chunk/{6324-b4313e3456e69fc36810.js → 6324-b614279e590c4d42c70a.js} +0 -0
  165. /package/dist/chunk/{6343-b4313e3456e69fc36810.js → 6343-b614279e590c4d42c70a.js} +0 -0
  166. /package/dist/chunk/{6356-b4313e3456e69fc36810.js → 6356-b614279e590c4d42c70a.js} +0 -0
  167. /package/dist/chunk/{638-b4313e3456e69fc36810.js → 638-b614279e590c4d42c70a.js} +0 -0
  168. /package/dist/chunk/{6405-b4313e3456e69fc36810.js → 6405-b614279e590c4d42c70a.js} +0 -0
  169. /package/dist/chunk/{6514-b4313e3456e69fc36810.js → 6514-b614279e590c4d42c70a.js} +0 -0
  170. /package/dist/chunk/{6517-b4313e3456e69fc36810.js → 6517-b614279e590c4d42c70a.js} +0 -0
  171. /package/dist/chunk/{6563-b4313e3456e69fc36810.js → 6563-b614279e590c4d42c70a.js} +0 -0
  172. /package/dist/chunk/{6577-b4313e3456e69fc36810.js → 6577-b614279e590c4d42c70a.js} +0 -0
  173. /package/dist/chunk/{6677-b4313e3456e69fc36810.js → 6677-b614279e590c4d42c70a.js} +0 -0
  174. /package/dist/chunk/{6736-b4313e3456e69fc36810.js → 6736-b614279e590c4d42c70a.js} +0 -0
  175. /package/dist/chunk/{6757-b4313e3456e69fc36810.js → 6757-b614279e590c4d42c70a.js} +0 -0
  176. /package/dist/chunk/{6865-b4313e3456e69fc36810.js → 6865-b614279e590c4d42c70a.js} +0 -0
  177. /package/dist/chunk/{6940-b4313e3456e69fc36810.js → 6940-b614279e590c4d42c70a.js} +0 -0
  178. /package/dist/chunk/{6957-b4313e3456e69fc36810.js → 6957-b614279e590c4d42c70a.js} +0 -0
  179. /package/dist/chunk/{6964-b4313e3456e69fc36810.js → 6964-b614279e590c4d42c70a.js} +0 -0
  180. /package/dist/chunk/{6967-b4313e3456e69fc36810.js → 6967-b614279e590c4d42c70a.js} +0 -0
  181. /package/dist/chunk/{697-b4313e3456e69fc36810.js → 697-b614279e590c4d42c70a.js} +0 -0
  182. /package/dist/chunk/{6980-b4313e3456e69fc36810.js → 6980-b614279e590c4d42c70a.js} +0 -0
  183. /package/dist/chunk/{7095-b4313e3456e69fc36810.js → 7095-b614279e590c4d42c70a.js} +0 -0
  184. /package/dist/chunk/{7141-b4313e3456e69fc36810.js → 7141-b614279e590c4d42c70a.js} +0 -0
  185. /package/dist/chunk/{7145-b4313e3456e69fc36810.js → 7145-b614279e590c4d42c70a.js} +0 -0
  186. /package/dist/chunk/{7148-b4313e3456e69fc36810.js → 7148-b614279e590c4d42c70a.js} +0 -0
  187. /package/dist/chunk/{7217-b4313e3456e69fc36810.js → 7217-b614279e590c4d42c70a.js} +0 -0
  188. /package/dist/chunk/{7258-b4313e3456e69fc36810.js → 7258-b614279e590c4d42c70a.js} +0 -0
  189. /package/dist/chunk/{7328-b4313e3456e69fc36810.js → 7328-b614279e590c4d42c70a.js} +0 -0
  190. /package/dist/chunk/{7374-b4313e3456e69fc36810.js → 7374-b614279e590c4d42c70a.js} +0 -0
  191. /package/dist/chunk/{7434-b4313e3456e69fc36810.js → 7434-b614279e590c4d42c70a.js} +0 -0
  192. /package/dist/chunk/{7470-b4313e3456e69fc36810.js → 7470-b614279e590c4d42c70a.js} +0 -0
  193. /package/dist/chunk/{7504-b4313e3456e69fc36810.js → 7504-b614279e590c4d42c70a.js} +0 -0
  194. /package/dist/chunk/{753-b4313e3456e69fc36810.js → 753-b614279e590c4d42c70a.js} +0 -0
  195. /package/dist/chunk/{7549-b4313e3456e69fc36810.js → 7549-b614279e590c4d42c70a.js} +0 -0
  196. /package/dist/chunk/{7561-b4313e3456e69fc36810.js → 7561-b614279e590c4d42c70a.js} +0 -0
  197. /package/dist/chunk/{7567-b4313e3456e69fc36810.js → 7567-b614279e590c4d42c70a.js} +0 -0
  198. /package/dist/chunk/{7611-b4313e3456e69fc36810.js → 7611-b614279e590c4d42c70a.js} +0 -0
  199. /package/dist/chunk/{7615-b4313e3456e69fc36810.js → 7615-b614279e590c4d42c70a.js} +0 -0
  200. /package/dist/chunk/{7625-b4313e3456e69fc36810.js → 7625-b614279e590c4d42c70a.js} +0 -0
  201. /package/dist/chunk/{7642-b4313e3456e69fc36810.js → 7642-b614279e590c4d42c70a.js} +0 -0
  202. /package/dist/chunk/{7670-b4313e3456e69fc36810.js → 7670-b614279e590c4d42c70a.js} +0 -0
  203. /package/dist/chunk/{7681-b4313e3456e69fc36810.js → 7681-b614279e590c4d42c70a.js} +0 -0
  204. /package/dist/chunk/{7688-b4313e3456e69fc36810.js → 7688-b614279e590c4d42c70a.js} +0 -0
  205. /package/dist/chunk/{7765-b4313e3456e69fc36810.js → 7765-b614279e590c4d42c70a.js} +0 -0
  206. /package/dist/chunk/{7768-b4313e3456e69fc36810.js → 7768-b614279e590c4d42c70a.js} +0 -0
  207. /package/dist/chunk/{7788-b4313e3456e69fc36810.js → 7788-b614279e590c4d42c70a.js} +0 -0
  208. /package/dist/chunk/{7789-b4313e3456e69fc36810.js → 7789-b614279e590c4d42c70a.js} +0 -0
  209. /package/dist/chunk/{780-b4313e3456e69fc36810.js → 780-b614279e590c4d42c70a.js} +0 -0
  210. /package/dist/chunk/{7817-b4313e3456e69fc36810.js → 7817-b614279e590c4d42c70a.js} +0 -0
  211. /package/dist/chunk/{7824-b4313e3456e69fc36810.js → 7824-b614279e590c4d42c70a.js} +0 -0
  212. /package/dist/chunk/{7831-b4313e3456e69fc36810.js → 7831-b614279e590c4d42c70a.js} +0 -0
  213. /package/dist/chunk/{7900-b4313e3456e69fc36810.js → 7900-b614279e590c4d42c70a.js} +0 -0
  214. /package/dist/chunk/{7922-b4313e3456e69fc36810.js → 7922-b614279e590c4d42c70a.js} +0 -0
  215. /package/dist/chunk/{7927-b4313e3456e69fc36810.js → 7927-b614279e590c4d42c70a.js} +0 -0
  216. /package/dist/chunk/{794-b4313e3456e69fc36810.js → 794-b614279e590c4d42c70a.js} +0 -0
  217. /package/dist/chunk/{7966-b4313e3456e69fc36810.js → 7966-b614279e590c4d42c70a.js} +0 -0
  218. /package/dist/chunk/{8003-b4313e3456e69fc36810.js → 8003-b614279e590c4d42c70a.js} +0 -0
  219. /package/dist/chunk/{8093-b4313e3456e69fc36810.js → 8093-b614279e590c4d42c70a.js} +0 -0
  220. /package/dist/chunk/{8107-b4313e3456e69fc36810.js → 8107-b614279e590c4d42c70a.js} +0 -0
  221. /package/dist/chunk/{8201-b4313e3456e69fc36810.js → 8201-b614279e590c4d42c70a.js} +0 -0
  222. /package/dist/chunk/{8212-b4313e3456e69fc36810.js → 8212-b614279e590c4d42c70a.js} +0 -0
  223. /package/dist/chunk/{8234-b4313e3456e69fc36810.js → 8234-b614279e590c4d42c70a.js} +0 -0
  224. /package/dist/chunk/{8235-b4313e3456e69fc36810.js → 8235-b614279e590c4d42c70a.js} +0 -0
  225. /package/dist/chunk/{8237-b4313e3456e69fc36810.js → 8237-b614279e590c4d42c70a.js} +0 -0
  226. /package/dist/chunk/{8249-b4313e3456e69fc36810.js → 8249-b614279e590c4d42c70a.js} +0 -0
  227. /package/dist/chunk/{8320-b4313e3456e69fc36810.js → 8320-b614279e590c4d42c70a.js} +0 -0
  228. /package/dist/chunk/{8389-b4313e3456e69fc36810.js → 8389-b614279e590c4d42c70a.js} +0 -0
  229. /package/dist/chunk/{8393-b4313e3456e69fc36810.js → 8393-b614279e590c4d42c70a.js} +0 -0
  230. /package/dist/chunk/{8418-b4313e3456e69fc36810.js → 8418-b614279e590c4d42c70a.js} +0 -0
  231. /package/dist/chunk/{8426-b4313e3456e69fc36810.js → 8426-b614279e590c4d42c70a.js} +0 -0
  232. /package/dist/chunk/{8436-b4313e3456e69fc36810.js → 8436-b614279e590c4d42c70a.js} +0 -0
  233. /package/dist/chunk/{845-b4313e3456e69fc36810.js → 845-b614279e590c4d42c70a.js} +0 -0
  234. /package/dist/chunk/{8485-b4313e3456e69fc36810.js → 8485-b614279e590c4d42c70a.js} +0 -0
  235. /package/dist/chunk/{8499-b4313e3456e69fc36810.js → 8499-b614279e590c4d42c70a.js} +0 -0
  236. /package/dist/chunk/{8553-b4313e3456e69fc36810.js → 8553-b614279e590c4d42c70a.js} +0 -0
  237. /package/dist/chunk/{8617-b4313e3456e69fc36810.js → 8617-b614279e590c4d42c70a.js} +0 -0
  238. /package/dist/chunk/{8684-b4313e3456e69fc36810.js → 8684-b614279e590c4d42c70a.js} +0 -0
  239. /package/dist/chunk/{8700-b4313e3456e69fc36810.js → 8700-b614279e590c4d42c70a.js} +0 -0
  240. /package/dist/chunk/{8709-b4313e3456e69fc36810.js → 8709-b614279e590c4d42c70a.js} +0 -0
  241. /package/dist/chunk/{8711-b4313e3456e69fc36810.js → 8711-b614279e590c4d42c70a.js} +0 -0
  242. /package/dist/chunk/{874-b4313e3456e69fc36810.js → 874-b614279e590c4d42c70a.js} +0 -0
  243. /package/dist/chunk/{8753-b4313e3456e69fc36810.js → 8753-b614279e590c4d42c70a.js} +0 -0
  244. /package/dist/chunk/{8849-b4313e3456e69fc36810.js → 8849-b614279e590c4d42c70a.js} +0 -0
  245. /package/dist/chunk/{8931-b4313e3456e69fc36810.js → 8931-b614279e590c4d42c70a.js} +0 -0
  246. /package/dist/chunk/{9017-b4313e3456e69fc36810.js → 9017-b614279e590c4d42c70a.js} +0 -0
  247. /package/dist/chunk/{9045-b4313e3456e69fc36810.js → 9045-b614279e590c4d42c70a.js} +0 -0
  248. /package/dist/chunk/{9057-b4313e3456e69fc36810.js → 9057-b614279e590c4d42c70a.js} +0 -0
  249. /package/dist/chunk/{9077-b4313e3456e69fc36810.js → 9077-b614279e590c4d42c70a.js} +0 -0
  250. /package/dist/chunk/{9079-b4313e3456e69fc36810.js → 9079-b614279e590c4d42c70a.js} +0 -0
  251. /package/dist/chunk/{9096-b4313e3456e69fc36810.js → 9096-b614279e590c4d42c70a.js} +0 -0
  252. /package/dist/chunk/{9104-b4313e3456e69fc36810.js → 9104-b614279e590c4d42c70a.js} +0 -0
  253. /package/dist/chunk/{914-b4313e3456e69fc36810.js → 914-b614279e590c4d42c70a.js} +0 -0
  254. /package/dist/chunk/{9175-b4313e3456e69fc36810.js → 9175-b614279e590c4d42c70a.js} +0 -0
  255. /package/dist/chunk/{9179-b4313e3456e69fc36810.js → 9179-b614279e590c4d42c70a.js} +0 -0
  256. /package/dist/chunk/{9198-b4313e3456e69fc36810.js → 9198-b614279e590c4d42c70a.js} +0 -0
  257. /package/dist/chunk/{9206-b4313e3456e69fc36810.js → 9206-b614279e590c4d42c70a.js} +0 -0
  258. /package/dist/chunk/{9225-b4313e3456e69fc36810.js → 9225-b614279e590c4d42c70a.js} +0 -0
  259. /package/dist/chunk/{9270-b4313e3456e69fc36810.js → 9270-b614279e590c4d42c70a.js} +0 -0
  260. /package/dist/chunk/{9281-b4313e3456e69fc36810.js → 9281-b614279e590c4d42c70a.js} +0 -0
  261. /package/dist/chunk/{9294-b4313e3456e69fc36810.js → 9294-b614279e590c4d42c70a.js} +0 -0
  262. /package/dist/chunk/{9478-b4313e3456e69fc36810.js → 9478-b614279e590c4d42c70a.js} +0 -0
  263. /package/dist/chunk/{9524-b4313e3456e69fc36810.js → 9524-b614279e590c4d42c70a.js} +0 -0
  264. /package/dist/chunk/{9526-b4313e3456e69fc36810.js → 9526-b614279e590c4d42c70a.js} +0 -0
  265. /package/dist/chunk/{9556-b4313e3456e69fc36810.js → 9556-b614279e590c4d42c70a.js} +0 -0
  266. /package/dist/chunk/{9641-b4313e3456e69fc36810.js → 9641-b614279e590c4d42c70a.js} +0 -0
  267. /package/dist/chunk/{9661-b4313e3456e69fc36810.js → 9661-b614279e590c4d42c70a.js} +0 -0
  268. /package/dist/chunk/{9681-b4313e3456e69fc36810.js → 9681-b614279e590c4d42c70a.js} +0 -0
  269. /package/dist/chunk/{9689-b4313e3456e69fc36810.js → 9689-b614279e590c4d42c70a.js} +0 -0
  270. /package/dist/chunk/{9692-b4313e3456e69fc36810.js → 9692-b614279e590c4d42c70a.js} +0 -0
  271. /package/dist/chunk/{9728-b4313e3456e69fc36810.js → 9728-b614279e590c4d42c70a.js} +0 -0
  272. /package/dist/chunk/{9730-b4313e3456e69fc36810.js → 9730-b614279e590c4d42c70a.js} +0 -0
  273. /package/dist/chunk/{9780-b4313e3456e69fc36810.js → 9780-b614279e590c4d42c70a.js} +0 -0
  274. /package/dist/chunk/{9788-b4313e3456e69fc36810.js → 9788-b614279e590c4d42c70a.js} +0 -0
  275. /package/dist/chunk/{9806-b4313e3456e69fc36810.js → 9806-b614279e590c4d42c70a.js} +0 -0
  276. /package/dist/chunk/{9809-b4313e3456e69fc36810.js → 9809-b614279e590c4d42c70a.js} +0 -0
  277. /package/dist/chunk/{9819-b4313e3456e69fc36810.js → 9819-b614279e590c4d42c70a.js} +0 -0
  278. /package/dist/chunk/{9831-b4313e3456e69fc36810.js → 9831-b614279e590c4d42c70a.js} +0 -0
  279. /package/dist/chunk/{9845-b4313e3456e69fc36810.js → 9845-b614279e590c4d42c70a.js} +0 -0
  280. /package/dist/chunk/{9876-b4313e3456e69fc36810.js → 9876-b614279e590c4d42c70a.js} +0 -0
  281. /package/dist/chunk/{9904-b4313e3456e69fc36810.js → 9904-b614279e590c4d42c70a.js} +0 -0
  282. /package/dist/chunk/{9910-b4313e3456e69fc36810.js → 9910-b614279e590c4d42c70a.js} +0 -0
  283. /package/dist/chunk/{9965-b4313e3456e69fc36810.js → 9965-b614279e590c4d42c70a.js} +0 -0
  284. /package/dist/chunk/{9976-b4313e3456e69fc36810.js → 9976-b614279e590c4d42c70a.js} +0 -0
  285. /package/dist/chunk/{9982-b4313e3456e69fc36810.js → 9982-b614279e590c4d42c70a.js} +0 -0
  286. /package/dist/chunk/{9983-b4313e3456e69fc36810.js → 9983-b614279e590c4d42c70a.js} +0 -0
  287. /package/dist/chunk/{9984-b4313e3456e69fc36810.js → 9984-b614279e590c4d42c70a.js} +0 -0
package/dist/index.d.ts CHANGED
@@ -33,7 +33,7 @@ declare namespace IText {
33
33
  }
34
34
 
35
35
  declare namespace ICommandCube {
36
- type Names = "cube:reset" | "cube:delete" | "cube:insert" | "cube:insert-child" | "cube:delete-child" | "cube:delete-adjacent" | "cube:set-selection-css" | "cube:partition" | "cube:reorder" | "cube:set-css" | "cube:set-attr" | "cube:move" | "cube:merge" | "cube:postil-add" | "cube:postil-remove" | "code:change-lang" | "code:change-active" | "code:change-theme" | "code:update" | "code:add" | "code:remove" | "code:rename" | "detail-list:insert-row" | "detail-list:remove-row" | "detail-list:change-width-col1" | "formula:update" | "datetime:update" | "datetime:set-format" | "badge:select" | "rating:select" | "rating:update" | "check:set" | "check:set-appearance" | "counter:set" | "counter:update" | "timeline:insert" | "timeline:remove" | "timeline:move" | "timeline:update-item" | "timeline:update" | "timeline:reorder" | "key:update" | "linker:update" | "list:add" | "list:remove" | "list:indent" | "list:reset" | "list:transform" | "list-ordered:add" | "list-ordered:remove" | "list-ordered:indent" | "list-ordered:reset" | "rt:reset" | "table:add-title" | "table:remove-title" | "table:add-cell" | "table:remove-cell" | "table:add-row" | "table:remove-row" | "table:add-col" | "table:remove-col" | "table:add-grid-col" | "table:remove-grid-col" | "table:add-grid-row" | "table:remove-grid-row" | "table:merge" | "table:moveto" | "table:update-area" | "table:reorder" | "table:col-resize" | "text:reset" | "text:break" | "link:update" | "text-link:update" | "todo:add" | "todo:remove" | "todo:indent" | "todo:status" | "todo:reset" | "node:layout-update" | "node:append-child" | "map:node-add" | "map:node-remove" | "map:node-remove-only" | "map:node-wrap-siblings" | "map:linker-add" | "map:linker-remove" | "map:update-attrs" | "map:node-drag" | "map:sibling-reorder" | "cursor:in-head" | "cursor:in-tail" | "cursor:loc" | (string & {});
36
+ type Names = "cube:reset" | "cube:delete" | "cube:insert" | "cube:insert-child" | "cube:delete-child" | "cube:delete-adjacent" | "cube:delete-edge" | "cube:degradation" | "cube:set-selection-css" | "cube:partition" | "cube:reorder" | "cube:set-css" | "cube:set-attr" | "cube:move" | "cube:merge" | "cube:postil-add" | "cube:postil-remove" | "code:change-lang" | "code:change-active" | "code:change-theme" | "code:update" | "code:add" | "code:remove" | "code:rename" | "detail-list:insert-row" | "detail-list:remove-row" | "detail-list:change-width-col1" | "formula:update" | "datetime:update" | "datetime:set-format" | "badge:select" | "rating:select" | "rating:update" | "check:set" | "check:set-appearance" | "counter:set" | "counter:update" | "timeline:insert" | "timeline:remove" | "timeline:move" | "timeline:update-item" | "timeline:update" | "timeline:reorder" | "key:update" | "linker:update" | "list:add" | "list:remove" | "list:move" | "list:indent" | "list:reset" | "list:transform" | "list-ordered:add" | "list-ordered:remove" | "list-ordered:move" | "list-ordered:indent" | "list-ordered:reset" | "rt:reset" | "table:add-title" | "table:remove-title" | "table:add-cell" | "table:remove-cell" | "table:add-row" | "table:remove-row" | "table:add-col" | "table:remove-col" | "table:add-grid-col" | "table:remove-grid-col" | "table:add-grid-row" | "table:remove-grid-row" | "table:merge" | "table:moveto" | "table:update-area" | "table:reorder" | "table:col-resize" | "text:reset" | "text:break" | "link:update" | "text-link:update" | "todo:add" | "todo:remove" | "todo:move" | "todo:indent" | "todo:status" | "todo:reset" | "node:layout-update" | "node:append-child" | "map:node-add" | "map:node-remove" | "map:node-remove-only" | "map:node-wrap-siblings" | "map:linker-add" | "map:linker-remove" | "map:update-attrs" | "map:node-drag" | "map:sibling-reorder" | "cursor:in-head" | "cursor:in-tail" | "cursor:loc" | (string & {});
37
37
  type DeleteDir = "forward" | "backward";
38
38
  type CursorFrom = "left" | "right" | "none";
39
39
  interface BaseCommand {
@@ -64,6 +64,15 @@ declare namespace ICommandCube {
64
64
  offset: number;
65
65
  from_id: ICubeBase.CubeId;
66
66
  }
67
+ interface DeleteEdge extends ICommandCube.BaseCommand {
68
+ name: "cube:delete-edge";
69
+ dir: ICommandCube.DeleteDir;
70
+ from_id: ICubeBase.CubeId;
71
+ offset: number;
72
+ }
73
+ interface Degradation extends ICommandCube.BaseCommand {
74
+ name: "cube:degradation";
75
+ }
67
76
  type CssMethod = "cover" | "toggle" | "replace";
68
77
  interface SetCss extends ICommandCube.BaseCommand {
69
78
  name: "cube:set-css";
@@ -1573,6 +1582,7 @@ declare class NoteApi {
1573
1582
  static get note_info(): INoteApi.GetNoteInfo | undefined;
1574
1583
  static get load_themes(): INoteApi.GetThemes | undefined;
1575
1584
  static get load_background(): INoteApi.GetBackground | undefined;
1585
+ static get save_note(): INoteApi.SaveNote | undefined;
1576
1586
  static register_asset_url(func: INoteApi.AssetUrl): void;
1577
1587
  static register_ask_ai(func: INoteApi.AskAi): void;
1578
1588
  static register_parse_keyword(func: INoteApi.ParseKeyword): void;
@@ -1580,6 +1590,7 @@ declare class NoteApi {
1580
1590
  static register_note_info(func: INoteApi.GetNoteInfo): void;
1581
1591
  static register_load_themes(func: INoteApi.GetThemes): void;
1582
1592
  static register_load_background(func: INoteApi.GetBackground): void;
1593
+ static register_save_note(func: INoteApi.SaveNote): void;
1583
1594
  }
1584
1595
 
1585
1596
  declare class ReceiverBase<TCube extends CubeBase = CubeBase> {
@@ -1597,6 +1608,9 @@ declare class ReceiverChild<TCube extends CubeChild = CubeChild> extends Receive
1597
1608
  protected set_css(command: ICommandCube.SetCss): Recorder | undefined;
1598
1609
  protected set_attr(command: ICommandCube.SetAttr): Recorder | undefined;
1599
1610
  protected delete_adjacent(command: ICommandCube.DeleteAdjacent): Recorder;
1611
+ protected delete_edge(command: ICommandCube.DeleteEdge): Recorder;
1612
+ protected degradation(_command: ICommandCube.Degradation): Recorder | undefined;
1613
+ protected degradation_atomic_child(command: ICommandCube.DeleteEdge): Recorder;
1600
1614
  protected add_postil(command: ICommandCube.PostilAdd): Recorder;
1601
1615
  protected remove_postil(command: ICommandCube.PostilRemove): Recorder | undefined;
1602
1616
  protected cursor_in_head(command: ICommandCursor.InHead): Recorder;
@@ -1641,6 +1655,12 @@ declare abstract class CubeChild<T extends ICubeBase.Data = any> extends CubeBas
1641
1655
  get next_cube_deep(): CubeChild | undefined;
1642
1656
  get prev_visible_cube_deep(): CubeChild | undefined;
1643
1657
  get next_visible_cube_deep(): CubeChild | undefined;
1658
+ protected get atomic_child(): readonly string[];
1659
+ get can_merge(): boolean;
1660
+ get can_degradation(): boolean;
1661
+ is_atomic_child(child: INote.NoteChild): boolean;
1662
+ get is_delete_edge_boundary(): boolean;
1663
+ get_delete_edge_strategy(dir: ICommandCube.DeleteDir): ICubeBase.DeleteEdgeStrategy;
1644
1664
  reveal_ancestors(recorder: Recorder): Recorder;
1645
1665
  get visible_tail_cube(): CubeChild;
1646
1666
  protected find_visible_cube_deep(dir: "prev" | "next"): CubeChild | undefined;
@@ -2060,6 +2080,7 @@ declare class MapInteraction extends NoteBase {
2060
2080
  declare abstract class NoteHotkeyBase extends NoteBase {
2061
2081
  protected _config: INoteInteraction.HotkeyConfig;
2062
2082
  protected _registered: boolean;
2083
+ protected _platform: INoteInteraction.Platform;
2063
2084
  abstract get default_config(): INoteInteraction.HotkeyConfig;
2064
2085
  abstract execution(e: KeyboardEvent, event: HotkeysEvent): any;
2065
2086
  get id(): string;
@@ -2068,7 +2089,7 @@ declare abstract class NoteHotkeyBase extends NoteBase {
2068
2089
  get config(): {
2069
2090
  id: string;
2070
2091
  name: INoteInteraction.Hotkeys;
2071
- shortcut: string;
2092
+ shortcut: INoteInteraction.Shortcut;
2072
2093
  scope: INoteInteraction.Scope;
2073
2094
  group: INoteInteraction.Groups;
2074
2095
  show?: boolean;
@@ -2079,7 +2100,7 @@ declare abstract class NoteHotkeyBase extends NoteBase {
2079
2100
  get shortcut(): string;
2080
2101
  get scope(): INoteInteraction.Scope;
2081
2102
  check_allow(e: KeyboardEvent, event: HotkeysEvent): boolean;
2082
- init(note: Note, config?: INoteInteraction.HotkeyConfig): void;
2103
+ init(note: Note, config?: INoteInteraction.HotkeyConfig, platform?: INoteInteraction.Platform): void;
2083
2104
  register(): void;
2084
2105
  export(): INoteInteraction.HotkeyConfig;
2085
2106
  }
@@ -2093,6 +2114,7 @@ declare class NoteInteraction extends NoteBase {
2093
2114
  */
2094
2115
  protected _hotkey_suspend_tokens: Set<symbol>;
2095
2116
  protected _scope_before_hotkey_suspend?: INoteInteraction.Scope;
2117
+ protected _hotkey_platform: INoteInteraction.Platform;
2096
2118
  data: Reactive<Record<string, INoteInteraction.HotkeyConfig>>;
2097
2119
  constructor(note: Note);
2098
2120
  get meta(): INote.CoreMeta;
@@ -2106,7 +2128,7 @@ declare class NoteInteraction extends NoteBase {
2106
2128
  resume_hotkey(token: symbol): void;
2107
2129
  set_scope(scope: INoteInteraction.Scope): void;
2108
2130
  listen(dom: HTMLElement): void;
2109
- init(config?: Partial<INoteInteraction.Data>): void;
2131
+ init(config?: Partial<INoteInteraction.Data>, options?: INoteInteraction.HotkeyInitOptions): void;
2110
2132
  register(hotkey: NoteHotkeyBase, config?: INoteInteraction.HotkeyConfig): void;
2111
2133
  protected init_hotkey(hotkey: NoteHotkeyBase, config?: INoteInteraction.HotkeyConfig): void;
2112
2134
  protected set_data(config: INoteInteraction.HotkeyConfig): void;
@@ -2122,6 +2144,18 @@ declare class NoteInteraction extends NoteBase {
2122
2144
  static export_default(): INoteInteraction.Data;
2123
2145
  }
2124
2146
 
2147
+ type HotkeyPlatform = Exclude<INoteInteraction.Platform, "auto">;
2148
+ /**
2149
+ * 尽可能识别运行平台。识别结果只用于选择默认快捷键,调用方可通过显式 platform 覆写。
2150
+ */
2151
+ declare function detect_hotkey_platform(): HotkeyPlatform;
2152
+ declare function normalize_platform(platform?: INoteInteraction.Platform): HotkeyPlatform;
2153
+ declare function is_platform_shortcut(shortcut: unknown): shortcut is INoteInteraction.PlatformShortcut;
2154
+ /** 将旧字符串或平台快捷键表解析为当前平台注册给 hotkeys-js 的字符串。 */
2155
+ declare function resolve_hotkey_shortcut(shortcut: INoteInteraction.Shortcut, platform?: INoteInteraction.Platform): string;
2156
+ /** 将旧字符串规范成可持久化的平台快捷键表。 */
2157
+ declare function to_platform_shortcut(shortcut: INoteInteraction.Shortcut): INoteInteraction.PlatformShortcut;
2158
+
2125
2159
  declare abstract class NoteEventListenerBase<E extends Event = Event> {
2126
2160
  protected records: WeakMap<Note, {
2127
2161
  host: HTMLElement;
@@ -2159,62 +2193,6 @@ declare const NoteEventListeners: NoteEventListenerBase[];
2159
2193
  declare const MapHotkeys: Map<string, NoteHotkeyBase>;
2160
2194
  declare function hotkey(cls: typeof NoteHotkeyBase): void;
2161
2195
 
2162
- declare class NoteScope extends NoteBase {
2163
- protected _id: string;
2164
- protected _boxes: INoteScope.RectInfo[];
2165
- protected _freeze: vue.Ref<boolean, boolean>;
2166
- protected scroll_offset: number;
2167
- protected selection_line: ShallowReactive<CubeChild[]>;
2168
- pos: Reactive<IMath.Rect>;
2169
- css: Reactive<Record<string, string>>;
2170
- get boxes(): INoteScope.RectInfo[];
2171
- get meta(): INote.CoreMeta<INote.Cores>;
2172
- get id(): string;
2173
- get freeze(): boolean;
2174
- set freeze(v: boolean);
2175
- protected _direction: "up" | "down" | null;
2176
- get focus_cube(): CubeChild<any>;
2177
- get second_cube(): CubeChild<any> | undefined;
2178
- get len(): number;
2179
- constructor(note: Note, cube: CubeChild);
2180
- expand(dir: "up" | "down"): void;
2181
- shrink(): void;
2182
- update_area(fresh?: boolean): void;
2183
- find_line_next(cube: CubeChild): CubeChild<any> | undefined;
2184
- find_line_prev(cube: CubeChild): CubeChild<any> | undefined;
2185
- get_scope_info(): INoteScope.Info;
2186
- remove(): void;
2187
- find_scope_lines(): CubeLine[];
2188
- find_inline_data(): CubeChild[];
2189
- load(): void;
2190
- export(): {};
2191
- update_data(...args: any[]): object;
2192
- static get meta(): INote.CoreMeta;
2193
- }
2194
-
2195
- declare class NoteScopes extends NoteBase {
2196
- protected _scopes: Set<NoteScope>;
2197
- constructor(note: Note);
2198
- get status(): CubeStatusBaseRoot<any>;
2199
- get count(): number;
2200
- get first(): NoteScope | undefined;
2201
- get last(): NoteScope | undefined;
2202
- get items(): Set<NoteScope>;
2203
- get count_freeze(): number;
2204
- get count_normal(): number;
2205
- get scope_normal(): Set<NoteScope>;
2206
- get freeze(): Set<NoteScope>;
2207
- clear(): void;
2208
- add_by_cube(cube: CubeChild): void;
2209
- add_scope(using_cursor?: boolean): Function | undefined;
2210
- remove_scope(scope: string | NoteScope): void;
2211
- clear_scope(filter?: boolean): void;
2212
- freeze_scopes(): void;
2213
- sort_scope(): NoteScope[];
2214
- get_scope_cubes(sort?: boolean, filter?: boolean): INoteScope.Info[];
2215
- get_scope_cubes_data(): ICubeBase.Data[];
2216
- }
2217
-
2218
2196
  declare class ConvertorMd {
2219
2197
  static convert(tokens: Token[]): ICubeBase.Data[];
2220
2198
  static md_default(token: Token): ICubeBase.Data;
@@ -2647,7 +2625,6 @@ declare class ReceiverText extends ReceiverChild<CubeText> {
2647
2625
  protected on_cube_set_selection_css(command: ICommandCube.SetSelectionCss): Recorder | void;
2648
2626
  protected on_cube_break(command: ICommandText.Break): Recorder | void;
2649
2627
  protected on_cube_delete_adjacent(command: ICommandCube.DeleteAdjacent): Recorder | undefined;
2650
- protected _delete_edge(dir: ICommandCube.DeleteDir): Recorder | undefined;
2651
2628
  }
2652
2629
 
2653
2630
  declare class CubeText extends CubeChild<IText.Data> {
@@ -2700,6 +2677,8 @@ declare class CubeLine extends CubeChild<ILine.Data> {
2700
2677
  get status(): LineStatus;
2701
2678
  get children(): CubeChild[];
2702
2679
  get component(): any;
2680
+ get can_degradation(): boolean;
2681
+ get can_merge(): boolean;
2703
2682
  get editable(): boolean;
2704
2683
  get text(): string;
2705
2684
  get is_empty(): boolean;
@@ -2743,6 +2722,7 @@ declare class CubeBoxRoot extends CubeChild<ICubeBoxRoot.Data> {
2743
2722
  get status(): BoxRootStatus;
2744
2723
  get children(): CubeChild[];
2745
2724
  get component(): any;
2725
+ get can_merge(): boolean;
2746
2726
  get is_empty(): boolean;
2747
2727
  get attrs(): ICubeBase.Attrs;
2748
2728
  build_child(data: ICubeBoxRoot.Data): void;
@@ -2778,6 +2758,7 @@ declare class CubeBox extends CubeChild<IBox.Data> {
2778
2758
  get status(): BoxStatus;
2779
2759
  get children(): CubeChild[];
2780
2760
  get component(): any;
2761
+ get can_merge(): boolean;
2781
2762
  get attrs(): IBox.Attrs;
2782
2763
  get meta(): INote.CubeMeta<INote.Cubes>;
2783
2764
  get is_empty(): boolean;
@@ -2815,6 +2796,7 @@ declare class CubeBoxFolder extends CubeChild<ICubeBoxFolder.Data> {
2815
2796
  get status(): BoxFolderStatus;
2816
2797
  get children(): CubeChild[];
2817
2798
  get component(): any;
2799
+ get can_merge(): boolean;
2818
2800
  get is_empty(): boolean;
2819
2801
  get attrs(): ICubeBase.Attrs;
2820
2802
  build_child(data: ICubeBoxFolder.Data): void;
@@ -3431,6 +3413,7 @@ declare class CubeApi extends CubeChild<IApi.Data> {
3431
3413
  set exceptions(val: CubeList | undefined);
3432
3414
  get component(): any;
3433
3415
  get children(): CubeList[];
3416
+ protected get atomic_child(): readonly string[];
3434
3417
  add_arguments(): void;
3435
3418
  add_exceptions(): void;
3436
3419
  build_child(data: IApi.Data): void;
@@ -3463,9 +3446,12 @@ declare class ListStatus extends CubeStatusBase<IList.Data> {
3463
3446
  }
3464
3447
 
3465
3448
  declare class ReceiverList extends ReceiverChild<CubeList> {
3449
+ protected delete_edge(command: ICommandCube.DeleteEdge): Recorder;
3450
+ protected merge(command: ICommandCube.Merge): Recorder;
3466
3451
  protected reset(command: ICommandList.Reset): Recorder;
3467
3452
  protected add(command: ICommandList.AddItem): Recorder;
3468
3453
  protected remove(command: ICommandList.RemoveItem): Recorder | undefined;
3454
+ protected move(command: ICommandList.MoveItem): Recorder | undefined;
3469
3455
  protected indent(command: ICommandList.IndentItem): Recorder;
3470
3456
  protected delete_child(command: ICommandCube.DeleteChild): Recorder | undefined;
3471
3457
  }
@@ -3479,6 +3465,8 @@ declare class CubeList extends CubeChild<IList.Data> {
3479
3465
  get component(): any;
3480
3466
  get items(): IList.ListItem[];
3481
3467
  get children(): CubeBox[];
3468
+ protected get atomic_child(): readonly string[];
3469
+ get can_merge(): boolean;
3482
3470
  get meta(): INote.CubeMeta<INote.Cubes>;
3483
3471
  get info(): IList.ListItemData[];
3484
3472
  get text(): string;
@@ -3490,6 +3478,7 @@ declare class CubeList extends CubeChild<IList.Data> {
3490
3478
  gc(): void;
3491
3479
  copy(left: number, right: number): ICubeBase.Data[];
3492
3480
  splice_items(index: number, delete_count: number, ...insert: IList.ListItem[]): ICubeBase.CubeSpliceResult<IList.ListItem, IList.ListItemData>;
3481
+ move_item(from: number, to: number): boolean;
3493
3482
  create(data: IList.ListItemData[]): IList.ListItem[];
3494
3483
  create_item_data(indent?: number): IList.ListItemData;
3495
3484
  }
@@ -3540,6 +3529,7 @@ declare class CubeDetailList extends CubeChild<IDetailList.Data> {
3540
3529
  get rows(): IDetailList.BoxMap[];
3541
3530
  get component(): any;
3542
3531
  get children(): CubeBox[];
3532
+ protected get atomic_child(): readonly string[];
3543
3533
  get attrs(): IDetailList.Attrs;
3544
3534
  get css_col1(): {
3545
3535
  width: string;
@@ -3596,6 +3586,9 @@ declare class CubePostil extends CubeChild<IPostil.V1> {
3596
3586
  get has_annotation(): boolean;
3597
3587
  get component(): any;
3598
3588
  get is_empty(): boolean;
3589
+ get can_degradation(): boolean;
3590
+ get_delete_edge_strategy(_dir: ICommandCube.DeleteDir): ICubeBase.DeleteEdgeStrategy;
3591
+ get is_delete_edge_boundary(): boolean;
3599
3592
  protected build_child(data: IPostil.Data): void;
3600
3593
  export(): IPostil.V1;
3601
3594
  gc(): void;
@@ -3682,6 +3675,11 @@ declare namespace ICommandTodo {
3682
3675
  name: "todo:remove";
3683
3676
  range: [number, number];
3684
3677
  }
3678
+ interface MoveItem extends ICommandCube.BaseCommand {
3679
+ name: "todo:move";
3680
+ from: number;
3681
+ to: number;
3682
+ }
3685
3683
  interface Indent extends ICommandCube.BaseCommand {
3686
3684
  name: "todo:indent";
3687
3685
  items: ItemIndentInfo[];
@@ -3710,9 +3708,12 @@ declare class TodoStatus extends CubeStatusBase<ITodo.Data> {
3710
3708
  }
3711
3709
 
3712
3710
  declare class ReceiverTodo extends ReceiverChild<CubeTodo> {
3711
+ protected delete_edge(command: ICommandCube.DeleteEdge): Recorder;
3712
+ protected merge(command: ICommandCube.Merge): Recorder;
3713
3713
  protected on_reset(command: ICommandTodo.Reset): Recorder;
3714
3714
  protected add_item(command: ICommandTodo.AddItem): Recorder;
3715
3715
  protected remove_item(command: ICommandTodo.RemoveItem): Recorder | undefined;
3716
+ protected move_item(command: ICommandTodo.MoveItem): Recorder | undefined;
3716
3717
  protected indent_todoitem(command: ICommandTodo.Indent): Recorder;
3717
3718
  protected update_status(command: ICommandTodo.Status): Recorder | undefined;
3718
3719
  protected on_delete_child(command: ICommandCube.DeleteChild): Recorder | undefined;
@@ -3727,6 +3728,8 @@ declare class CubeTodo extends CubeChild<ITodo.Data> {
3727
3728
  get items(): _CubeTodoItem[];
3728
3729
  get component(): any;
3729
3730
  get children(): CubeBox[];
3731
+ protected get atomic_child(): readonly string[];
3732
+ get can_merge(): boolean;
3730
3733
  get info(): _CubeTodoItemData[];
3731
3734
  get text(): string;
3732
3735
  build_child(data: ITodo.Data): void;
@@ -3736,6 +3739,7 @@ declare class CubeTodo extends CubeChild<ITodo.Data> {
3736
3739
  gc(): void;
3737
3740
  copy(left: number, right: number): ICubeBase.Data[];
3738
3741
  splice_items(index: number, delete_count: number, ...insert: _CubeTodoItem[]): ICubeBase.CubeSpliceResult<_CubeTodoItem, _CubeTodoItemData>;
3742
+ move_item(from: number, to: number): boolean;
3739
3743
  create(data: _CubeTodoItemData[]): _CubeTodoItem[];
3740
3744
  create_item_data(indent?: number): _CubeTodoItemData;
3741
3745
  }
@@ -3789,6 +3793,7 @@ declare class CubeTimeline extends CubeChild<ITimeline.Data> {
3789
3793
  get attrs(): ITimeline.Attrs;
3790
3794
  get items(): TimelineItem[];
3791
3795
  get children(): CubeChild[];
3796
+ protected get atomic_child(): readonly string[];
3792
3797
  get text(): string;
3793
3798
  build_child(data: ITimeline.Data): void;
3794
3799
  create(data: ITimeline.ItemData[]): TimelineItem[];
@@ -3826,9 +3831,12 @@ declare class ListOrderedStatus extends CubeStatusBase<IListOrdered.Data> {
3826
3831
  }
3827
3832
 
3828
3833
  declare class ReceiverListOrdered extends ReceiverChild<CubeListOrdered> {
3834
+ protected delete_edge(command: ICommandCube.DeleteEdge): Recorder;
3835
+ protected merge(command: ICommandCube.Merge): Recorder;
3829
3836
  protected reset(command: ICommandListOrdered.Reset): Recorder;
3830
3837
  protected add(command: ICommandListOrdered.AddItem): Recorder;
3831
3838
  protected remove(command: ICommandListOrdered.RemoveItem): Recorder | undefined;
3839
+ protected move(command: ICommandListOrdered.MoveItem): Recorder | undefined;
3832
3840
  protected indent(command: ICommandListOrdered.IndentItem): Recorder;
3833
3841
  protected delete_child(command: ICommandCube.DeleteChild): Recorder | undefined;
3834
3842
  }
@@ -3840,6 +3848,8 @@ declare class CubeListOrdered extends CubeChild<IListOrdered.Data> {
3840
3848
  get status(): ListOrderedStatus;
3841
3849
  get component(): any;
3842
3850
  get children(): CubeBox[];
3851
+ protected get atomic_child(): readonly string[];
3852
+ get can_merge(): boolean;
3843
3853
  get items(): IList.ListItem[];
3844
3854
  get info(): IList.ListItemData[];
3845
3855
  get text(): string;
@@ -3851,6 +3861,7 @@ declare class CubeListOrdered extends CubeChild<IListOrdered.Data> {
3851
3861
  gc(): void;
3852
3862
  copy(left: number, right: number): ICubeBase.Data[];
3853
3863
  splice_items(index: number, delete_count: number, ...insert: IList.ListItem[]): ICubeBase.CubeSpliceResult<IList.ListItem, IList.ListItemData>;
3864
+ move_item(from: number, to: number): boolean;
3854
3865
  create(data: IList.ListItemData[]): IList.ListItem[];
3855
3866
  create_item_data(indent?: number): IList.ListItemData;
3856
3867
  }
@@ -4038,6 +4049,7 @@ declare class CubeTable extends CubeChild<ITable.Data> {
4038
4049
  get adapter(): AdapterCubeTable;
4039
4050
  get status(): TableStatus;
4040
4051
  get title(): CubeBox | undefined;
4052
+ protected get atomic_child(): readonly string[];
4041
4053
  set title(v: CubeBox | undefined);
4042
4054
  get component(): any;
4043
4055
  get cells(): ITable.Cell[];
@@ -4105,6 +4117,7 @@ declare class CubeTip extends CubeChild<ITip.Data> {
4105
4117
  get box(): CubeBox;
4106
4118
  set box(value: CubeBox);
4107
4119
  get children(): CubeBox[];
4120
+ protected get atomic_child(): readonly string[];
4108
4121
  get text(): string;
4109
4122
  protected build_child(data: ITip.Data): void;
4110
4123
  export(): ITip.Data;
@@ -4405,6 +4418,7 @@ declare class CubeBoxColumns extends CubeChild<ICubeBoxColumns.Data> {
4405
4418
  get status(): BoxColumnsStatus;
4406
4419
  get component(): any;
4407
4420
  get attrs(): ICubeBoxColumns.Attrs;
4421
+ protected get atomic_child(): readonly string[];
4408
4422
  get min_width(): number;
4409
4423
  protected build_child(data: ICubeBoxColumns.Data): void;
4410
4424
  export(): ICubeBoxColumns.Data;
@@ -4485,6 +4499,67 @@ declare class CubeRating extends CubeChild<IRating.Data> {
4485
4499
  gc(): void;
4486
4500
  }
4487
4501
 
4502
+ declare class NoteScope extends NoteBase {
4503
+ protected _id: string;
4504
+ protected _boxes: INoteScope.RectInfo[];
4505
+ protected _freeze: vue.Ref<boolean, boolean>;
4506
+ protected scroll_offset: number;
4507
+ protected selection_line: ShallowReactive<CubeChild[]>;
4508
+ pos: Reactive<IMath.Rect>;
4509
+ css: Reactive<Record<string, string>>;
4510
+ get boxes(): INoteScope.RectInfo[];
4511
+ get meta(): INote.CoreMeta<INote.Cores>;
4512
+ get id(): string;
4513
+ get freeze(): boolean;
4514
+ set freeze(v: boolean);
4515
+ protected _direction: "up" | "down" | null;
4516
+ get focus_cube(): CubeChild<any>;
4517
+ get second_cube(): CubeChild<any> | undefined;
4518
+ get len(): number;
4519
+ constructor(note: Note, cube: CubeChild);
4520
+ expand(dir: "up" | "down"): void;
4521
+ shrink(): void;
4522
+ update_area(fresh?: boolean): void;
4523
+ find_line_next(cube: CubeChild): CubeChild<any> | undefined;
4524
+ find_line_prev(cube: CubeChild): CubeChild<any> | undefined;
4525
+ get_scope_info(): INoteScope.Info;
4526
+ remove(): void;
4527
+ find_scope_lines(): CubeLine[];
4528
+ find_inline_data(): CubeChild[];
4529
+ load(): void;
4530
+ export(): {};
4531
+ update_data(...args: any[]): object;
4532
+ static get meta(): INote.CoreMeta;
4533
+ }
4534
+
4535
+ declare class NoteScopes extends NoteBase {
4536
+ /**
4537
+ * Status-bar items read the selection counts directly. Keep this
4538
+ * collection reactive so additions, removals, and clears invalidate
4539
+ * those reads and refresh the indicator.
4540
+ */
4541
+ protected _scopes: ShallowReactive<Set<NoteScope>>;
4542
+ constructor(note: Note);
4543
+ get status(): CubeStatusBaseRoot<any>;
4544
+ get count(): number;
4545
+ get first(): NoteScope | undefined;
4546
+ get last(): NoteScope | undefined;
4547
+ get items(): Set<NoteScope>;
4548
+ get count_freeze(): number;
4549
+ get count_normal(): number;
4550
+ get scope_normal(): Set<NoteScope>;
4551
+ get freeze(): Set<NoteScope>;
4552
+ clear(): void;
4553
+ add_by_cube(cube: CubeChild): void;
4554
+ add_scope(using_cursor?: boolean): Function | undefined;
4555
+ remove_scope(scope: string | NoteScope): void;
4556
+ clear_scope(filter?: boolean): void;
4557
+ freeze_scopes(): void;
4558
+ sort_scope(): NoteScope[];
4559
+ get_scope_cubes(sort?: boolean, filter?: boolean): INoteScope.Info[];
4560
+ get_scope_cubes_data(): ICubeBase.Data[];
4561
+ }
4562
+
4488
4563
  declare class CubeStatusBaseRoot<T extends ICubeRootBase.Data> extends CubeStatusBase<T> {
4489
4564
  protected _scopes: ShallowReactive<Set<NoteScope>>;
4490
4565
  protected _postils: Map<string, any>;
@@ -4561,7 +4636,6 @@ declare abstract class CubeRoot<T extends ICubeRootBase.Data = any> extends Cube
4561
4636
  filter(func: ICubeBase.CubeFilterFunc): INote.NoteChild[];
4562
4637
  each(func: ICubeBase.CubeEachFunc): void;
4563
4638
  find_upstream_untill(): undefined;
4564
- delete_edge(child: CubeText, dir: ICommandCube.DeleteDir): Recorder | undefined;
4565
4639
  splice<T = any, K = any>(index: number, delete_count: number, ...insert: INote.NoteChild[]): ICubeBase.CubeSpliceResult<T, K>;
4566
4640
  move_child(from: number, to: number): void;
4567
4641
  get_sdk_version(): INote.SDKMeta;
@@ -4767,6 +4841,22 @@ declare function use_box_interaction(interaction: InteractionBase): {
4767
4841
  box_ref: (box: CubeBox) => BoxRef;
4768
4842
  };
4769
4843
 
4844
+ type DropSide = "before" | "after" | "";
4845
+ interface ListItemDragOptions {
4846
+ owner: string;
4847
+ item_ids: () => string[];
4848
+ on_move: (from: number, to: number) => void;
4849
+ threshold?: number;
4850
+ touch_delay?: number;
4851
+ }
4852
+ declare function use_list_item_drag(options: ListItemDragOptions): {
4853
+ dragging: vue.Ref<string, string>;
4854
+ drop_target: vue.Ref<string, string>;
4855
+ drop_side: vue.Ref<DropSide, DropSide>;
4856
+ start_drag: (event: PointerEvent, id: string) => void;
4857
+ consume_drag_click: () => boolean;
4858
+ };
4859
+
4770
4860
  declare abstract class CubeBase<T extends ICubeBase.Data = any> {
4771
4861
  protected _receiver: ReceiverBase;
4772
4862
  protected _operator: InteractionBase | undefined;
@@ -4804,6 +4894,7 @@ declare abstract class CubeBase<T extends ICubeBase.Data = any> {
4804
4894
  get interaction(): NoteInteraction;
4805
4895
  update_data(versions: INote.CubesVersion, data: any): ICubeBase.CubeUpdateResult<T>;
4806
4896
  on(cmd: ICommandCube.BaseCommand): void | Recorder | undefined;
4897
+ get is_delete_edge_boundary(): boolean;
4807
4898
  event_bubble(event: EventBubble): void;
4808
4899
  }
4809
4900
 
@@ -5814,6 +5905,11 @@ declare namespace ICommandList {
5814
5905
  name: "list:remove";
5815
5906
  range: [number, number];
5816
5907
  }
5908
+ interface MoveItem extends ICommandCube.BaseCommand {
5909
+ name: "list:move";
5910
+ from: number;
5911
+ to: number;
5912
+ }
5817
5913
  interface IndentItem extends ICommandCube.BaseCommand {
5818
5914
  name: "list:indent";
5819
5915
  items: ItemIndentInfo[];
@@ -5941,6 +6037,11 @@ declare namespace ICommandListOrdered {
5941
6037
  name: "list-ordered:remove";
5942
6038
  range: [number, number];
5943
6039
  }
6040
+ interface MoveItem extends ICommandCube.BaseCommand {
6041
+ name: "list-ordered:move";
6042
+ from: number;
6043
+ to: number;
6044
+ }
5944
6045
  interface IndentItem extends ICommandCube.BaseCommand {
5945
6046
  name: "list-ordered:indent";
5946
6047
  items: ICommandList.ItemIndentInfo[];
@@ -6352,6 +6453,7 @@ declare namespace ICommandRt {
6352
6453
 
6353
6454
  declare namespace ICubeBase {
6354
6455
  type CubeId = string;
6456
+ type DeleteEdgeStrategy = "remove-self" | "merge" | "cursor-transfer" | "degradation" | "bubble" | "stop";
6355
6457
  interface Data<T extends string = INote.Cubes> {
6356
6458
  id: string;
6357
6459
  type: T;
@@ -6474,6 +6576,20 @@ declare namespace IMapInteraction {
6474
6576
 
6475
6577
  declare namespace INoteInteraction {
6476
6578
  type Scope = "all" | "note" | "none";
6579
+ /** 快捷键配置和注册时使用的平台。auto 会根据当前运行环境推断。 */
6580
+ type Platform = "auto" | "windows" | "mac" | "linux" | "generic";
6581
+ /**
6582
+ * 平台快捷键表。default 是未提供平台覆写时的兜底值;各平台字段省略时继承它。
6583
+ * 保留 string 联合类型,用于兼容既有保存的快捷键配置。
6584
+ */
6585
+ interface PlatformShortcut {
6586
+ default: string;
6587
+ windows?: string;
6588
+ mac?: string;
6589
+ linux?: string;
6590
+ generic?: string;
6591
+ }
6592
+ type Shortcut = string | PlatformShortcut;
6477
6593
  type Hotkeys = "应用格式刷" | "复制格式刷" | "撤销" | "重做" | "缩进" | "反向缩进" | "光标导航" | "光标复选" | "换行" | "清空块选区" | "添加块选区" | "删除块选区" | "向后添加根级块" | "向前添加根级块" | "分裂根级块" | "添加批注" | "斜体" | "加粗" | "下划线" | "左对齐" | "居中对齐" | "右对齐" | "分裂文本块" | "增加字号" | "减小字号" | "添加文字标注" | "文本块换行" | "重置样式" | "折叠所在块" | "添加书签" | "搜索" | "公式面板" | "元素面板" | "粘贴markdown" | "编辑节点" | "节点选中导航" | "删除节点" | "新建子节点" | "新建同级节点" | "输入制表符";
6478
6594
  type Group = "核心" | "通用" | "文本块" | "块" | "块选区" | "字典" | "书签" | "搜索" | "样式" | "面板" | "节点" | "其他";
6479
6595
  type Groups = Group;
@@ -6486,7 +6602,7 @@ declare namespace INoteInteraction {
6486
6602
  interface HotkeyConfig {
6487
6603
  id: string;
6488
6604
  name: Hotkeys;
6489
- shortcut: string;
6605
+ shortcut: Shortcut;
6490
6606
  scope: Scope;
6491
6607
  group: Groups;
6492
6608
  show?: boolean;
@@ -6494,6 +6610,10 @@ declare namespace INoteInteraction {
6494
6610
  capture?: boolean;
6495
6611
  keyup?: boolean;
6496
6612
  }
6613
+ interface HotkeyInitOptions {
6614
+ /** 显式指定时不再自动识别平台,适用于宿主应用和测试。 */
6615
+ platform?: Platform;
6616
+ }
6497
6617
  interface Api {
6498
6618
  get name(): string;
6499
6619
  }
@@ -6820,7 +6940,7 @@ declare namespace IUiTheme {
6820
6940
  }
6821
6941
 
6822
6942
  declare namespace INoteApi {
6823
- type Names = "asset-url" | "ask-ai" | "parse-keyword" | "parse-association" | "note-info" | "get-themes" | "get-background";
6943
+ type Names = "asset-url" | "ask-ai" | "parse-keyword" | "parse-association" | "note-info" | "get-themes" | "get-background" | "save-note";
6824
6944
  type AssetUrl = (noteid: string, type: INote.AssetType, filename: string) => string;
6825
6945
  type AskAi = (question: string) => void;
6826
6946
  type ParseKeyword = (keyword: string) => Promise<string>;
@@ -6828,6 +6948,8 @@ declare namespace INoteApi {
6828
6948
  type GetNoteInfo = () => INote.NoteInfo;
6829
6949
  type GetThemes = () => Promise<IUiTheme.ThemeItem[]>;
6830
6950
  type GetBackground = () => Promise<IUiTheme.BackgroundItem[]>;
6951
+ /** Persists an exported note. Return true only after the data is durably saved. */
6952
+ type SaveNote = (data: INote.Data) => Promise<boolean>;
6831
6953
  }
6832
6954
 
6833
6955
  declare namespace ICubesMenu {
@@ -7246,6 +7368,8 @@ declare class CommandCube {
7246
7368
  static insert(id: string, data: ICubeBase.Data[], start_id: ICubeBase.CubeId, end_id: ICubeBase.CubeId, offset_start: number, offset_end: number): ICommandCube.Insert;
7247
7369
  static delete(id: string, dir: ICommandCube.DeleteDir, start_id: ICubeBase.CubeId | null, end_id: ICubeBase.CubeId | null, offset_start: number | INote.CubeSide, offset_end: number | INote.CubeSide, reserve?: boolean): ICommandCube.Delete;
7248
7370
  static delete_adjacent(id: string, from: ICommandCube.CursorFrom, from_id: ICubeBase.CubeId, offset: number): ICommandCube.DeleteAdjacent;
7371
+ static delete_edge(id: string, dir: ICommandCube.DeleteDir, from_id: ICubeBase.CubeId, offset: number): ICommandCube.DeleteEdge;
7372
+ static degradation(id: ICubeBase.CubeId): ICommandCube.Degradation;
7249
7373
  static set_selection_css(id: ICubeBase.CubeId, css: Record<string, any>, start_id: ICubeBase.CubeId | null, end_id: ICubeBase.CubeId | null, offset_start: number | INote.CubeSide, offset_end: number | INote.CubeSide, method?: ICommandCube.CssMethod): ICommandCube.SetSelectionCss;
7250
7374
  static set_css(id: ICubeBase.CubeId, css: Record<string, any>, method?: ICommandCube.CssMethod): ICommandCube.SetCss;
7251
7375
  static partition(id: ICubeBase.CubeId, start_id: ICubeBase.CubeId, end_id: ICubeBase.CubeId, offset_start: number, offset_end: number): ICommandCube.Partition;
@@ -7323,6 +7447,7 @@ declare class CommandList {
7323
7447
  static reset(id: string, data: IList.ListItemData[]): ICommandList.Reset;
7324
7448
  static add(id: string, data: IList.ListItemData[], pos: number): ICommandList.AddItem;
7325
7449
  static remove(id: string, range: [number, number]): ICommandList.RemoveItem;
7450
+ static move(id: string, from: number, to: number): ICommandList.MoveItem;
7326
7451
  static indent(id: string, items: ICommandList.ItemIndentInfo[]): ICommandList.IndentItem;
7327
7452
  }
7328
7453
 
@@ -7330,6 +7455,7 @@ declare class CommandListOrdered {
7330
7455
  static reset(id: string, data: IList.ListItemData[]): ICommandListOrdered.Reset;
7331
7456
  static add(id: string, data: IList.ListItemData[], pos: number): ICommandListOrdered.AddItem;
7332
7457
  static remove(id: string, range: [number, number]): ICommandListOrdered.RemoveItem;
7458
+ static move(id: string, from: number, to: number): ICommandListOrdered.MoveItem;
7333
7459
  static indent(id: string, items: ICommandList.ItemIndentInfo[]): ICommandListOrdered.IndentItem;
7334
7460
  }
7335
7461
 
@@ -7369,6 +7495,7 @@ declare class CommandTodo {
7369
7495
  static reset(id: string, data: _CubeTodoItemData[]): ICommandTodo.Reset;
7370
7496
  static add(id: string, data: _CubeTodoItemData[], pos: number): ICommandTodo.AddItem;
7371
7497
  static remove(id: string, range: [number, number]): ICommandTodo.RemoveItem;
7498
+ static move(id: string, from: number, to: number): ICommandTodo.MoveItem;
7372
7499
  static indent(id: string, items: ICommandList.ItemIndentInfo[]): ICommandTodo.Indent;
7373
7500
  static status(id: string, index: number, done: boolean): ICommandTodo.Status;
7374
7501
  }
@@ -7695,4 +7822,4 @@ declare class MobileReadonlyViewer {
7695
7822
  protected get guard_events(): string[];
7696
7823
  }
7697
7824
 
7698
- export { AdapterApi, AdapterBadge, AdapterBaseUi, AdapterBox, AdapterBoxColumns, AdapterBoxFolder, AdapterBoxRoot, AdapterCheck, AdapterCode, AdapterCounter, AdapterCubes, AdapterDatetime, AdapterDetailList, AdapterDoc, AdapterFormula, AdapterImg, AdapterKey, AdapterLine, AdapterLink, AdapterLinker, AdapterList, AdapterListOrdered, AdapterLost, AdapterMap, AdapterNode, AdapterPostil, AdapterRating, AdapterRt, AdapterSubmap, AdapterTable, AdapterText, AdapterTimeline, AdapterTip, AdapterTodo, AdapterUi, AdapterUiAi, AdapterUiCatalogue, AdapterUiConfig, AdapterUiDialog, AdapterUiDialogCubeList, AdapterUiDict, AdapterUiFloat, AdapterUiMenubar, AdapterUiPreset, AdapterUiSearch, AdapterUiSidebar, AdapterUiStatusbar, AdapterUiTheme, AdapterUiTips, AdapterUiToolbar, ApiStatus, BadgeStatus, BoxFolderStatus, BoxRootStatus, BoxStatus, CheckStatus, CodeStatus, CommandApi, CommandBadge, CommandBoxFolder, CommandBoxRoot, CommandCheck, CommandCode, CommandCounter, CommandCube, CommandCursor, CommandDateTime, CommandDetailList, CommandFormula, CommandKey, CommandLink, CommandLinker, CommandList, CommandListOrdered, CommandMap, CommandNode, CommandRating, CommandRt, CommandTable, CommandText, CommandTimeline, CommandTodo, ConstColors, ConvertorMd, CubeAdapterBase, CubeApi, CubeBadge, CubeBase, CubeBox, CubeBoxColumns, CubeBoxFolder, CubeBoxRoot, CubeCheck, CubeChild, CubeCode, CubeCounter, CubeDatetime, CubeDetailList, CubeDoc, CubeFormula, CubeImg, CubeKey, CubeLine, CubeLink, CubeLinker, CubeList, CubeListOrdered, CubeListenerBase, CubeLost, CubeMap, CubeNode, CubePostil, CubeRating, CubeRoot, CubeRt, CubeStatusBase, CubeStatusBaseRoot, CubeSubMap, CubeTable, CubeText, CubeTimeline, CubeTip, CubeTodo, DatetimeStatus, DetailListStatus, DocStatus, EventBubble, FormulaStatus, IApi, IBadge, IBox, ICheck, ICode, ICommandApi, ICommandBadge, ICommandCheck, ICommandCode, ICommandCounter, ICommandCube, ICommandCursor, ICommandDateTime, ICommandDetailList, ICommandDoc, ICommandFormula, ICommandKey, ICommandLink, ICommandLinker, ICommandList, ICommandListOrdered, ICommandMap, ICommandNode, ICommandRating, ICommandRt, ICommandTable, ICommandText, ICommandTimeline, ICommandTodo, ICounter, ICubeBase, ICubeBaseChild, ICubeBoxColumns, ICubeBoxFolder, ICubeBoxRoot, ICubeHandler, ICubeRootBase, ICubesInteraction, ICubesMenu, IDateTime, IDetailList, IDoc, IFormula, IImg, IKey, ILine, ILink, ILinker, IList, IListOrdered, ILost, IMap, IMapBase, IMapInteraction, IMapTools, IMenuNode, IMiniMap, IMisc, type IMobileReadonlyViewerInput, INode, INodeBase, INodeBaseEnv, INodeDrag, INote, INoteApi, INoteClipboard, INoteConvertor, INoteCourier, INoteCursor, INoteEvent, INoteFlag, INoteFloat, INoteHistory, INoteInteraction, INoteMod, INoteScope, INoteTools, IPostil, IRating, IRt, ISubMap, ITable, IText, ITimeline, ITip, ITodo, IUi, IUiAi, IUiCatalogue, IUiConfig, IUiDialog, IUiDialogCubeList, IUiDict, IUiFloat, IUiMenubar, IUiPreset, IUiSidebar, IUiStatusbar, IUiTheme, IUiTips, IUiToolbar, ImgStatus, InteractionBase, InteractionBinder, InteractionDetailList, InteractionList, InteractionListOrdered, InteractionTable, InteractionTodo, InteractionsCube, InteractionsCubeRegistry, KeyStatus, LayoutChecker, LineStatus, LinkStatus, LinkerLine, LinkerPoint, ListOrderedStatus, ListStatus, LostStatus, Map2D, MapCanvas, MapChild, MapHotkeys, MapInteraction, MapNodeBase, MapNodeLayoutEnv, MapStatus, MapTools, Matrix2D, MenuApi, MenuBadge, MenuBase, MenuBox, MenuBoxColumns, MenuBoxFolder, MenuBoxRoot, MenuCheck, MenuCode, MenuCounter, MenuDatetime, MenuDetailList, MenuImg, MenuKey, MenuLink, MenuList, MenuListOrdered, MenuNode, MenuRating, MenuSubmap, MenuTable, MenuTimeline, MenuTip, MenuTodo, MenusCube, MenusCubeRegistry, MobileReadonlyViewer, NodeBase2D, NodeLayout, NodeLayoutInvert, NodeLayoutMeter, NodeLineStatus, NodeObserver, NodeShape, NodeStatus, NodeStatusBase, Note, NoteAction, NoteAnchor, NoteApi, NoteBase, NoteClipBoard, NoteConvertor, NoteCourier, NoteCubes, NoteCursor, NoteEvent, NoteEventListenerBase, NoteEventListeners, NoteFlag, NoteHistory, NoteHotkeyBase, NoteInteraction, NoteListener, NoteMod, NotePainter, NoteScope, NoteScopes, NoteTools, PostilStatus, RatingStatus, ReceiverApi, ReceiverBadge, ReceiverBase, ReceiverBox, ReceiverBoxColumns, ReceiverBoxFolder, ReceiverBoxRoot, ReceiverCheck, ReceiverChild, ReceiverCode, ReceiverCounter, ReceiverCubes, ReceiverDatetime, ReceiverDetailList, ReceiverDoc, ReceiverFormula, ReceiverImg, ReceiverKey, ReceiverLine, ReceiverLink, ReceiverLinker, ReceiverList, ReceiverListOrdered, ReceiverLost, ReceiverMap, ReceiverMapChild, ReceiverNode, ReceiverPostil, ReceiverRating, ReceiverRegistry, ReceiverRoot, ReceiverRt, ReceiverSubMap, ReceiverTable, ReceiverText, ReceiverTimeline, ReceiverTip, ReceiverTodo, Recorder, RtStatus, StatusItemBase, type StatusItemComponentProps, type StatusItemPlacement, SubmapStatus, TableStatus, TextStatus, type TimelineItem, TipStatus, TodoStatus, ToolBase, UI, UICatalogue, UIDict, UISearch, UIStatusbar, UITheme, UIToolbar, UiBase, UiConfig, UiFloat, UiMenubar, UiPreset, UiSidebar, UiTips, Waiter, type _CubeTextAnnotation, type _CubeTodoItem, type _CubeTodoItemData, type _FigScale, type _Map, type _MapCubes, _MapGroup, type _MapPlaceholderLinker, _PlayStatus, type _PointFig, type _PointKey, type _PointView, type _SDKMeta, cmd, copy_event_listener, cube, cut_event_listener, define_cmd, get_cmds, get_cube_menu, get_menu_base, get_menu_code, get_menu_counter, get_menu_inline_scale, get_menu_timeline, get_receiver_type, has_pcube_menu, hotkey, menu_status, move_rect, node_observer, paste_event_listener, receiver, set_inline_scale, show_code_file_dialog, show_menu, supports_inline_scale, use_box_interaction, waiter_map_svg };
7825
+ export { AdapterApi, AdapterBadge, AdapterBaseUi, AdapterBox, AdapterBoxColumns, AdapterBoxFolder, AdapterBoxRoot, AdapterCheck, AdapterCode, AdapterCounter, AdapterCubes, AdapterDatetime, AdapterDetailList, AdapterDoc, AdapterFormula, AdapterImg, AdapterKey, AdapterLine, AdapterLink, AdapterLinker, AdapterList, AdapterListOrdered, AdapterLost, AdapterMap, AdapterNode, AdapterPostil, AdapterRating, AdapterRt, AdapterSubmap, AdapterTable, AdapterText, AdapterTimeline, AdapterTip, AdapterTodo, AdapterUi, AdapterUiAi, AdapterUiCatalogue, AdapterUiConfig, AdapterUiDialog, AdapterUiDialogCubeList, AdapterUiDict, AdapterUiFloat, AdapterUiMenubar, AdapterUiPreset, AdapterUiSearch, AdapterUiSidebar, AdapterUiStatusbar, AdapterUiTheme, AdapterUiTips, AdapterUiToolbar, ApiStatus, BadgeStatus, BoxFolderStatus, BoxRootStatus, BoxStatus, CheckStatus, CodeStatus, CommandApi, CommandBadge, CommandBoxFolder, CommandBoxRoot, CommandCheck, CommandCode, CommandCounter, CommandCube, CommandCursor, CommandDateTime, CommandDetailList, CommandFormula, CommandKey, CommandLink, CommandLinker, CommandList, CommandListOrdered, CommandMap, CommandNode, CommandRating, CommandRt, CommandTable, CommandText, CommandTimeline, CommandTodo, ConstColors, ConvertorMd, CubeAdapterBase, CubeApi, CubeBadge, CubeBase, CubeBox, CubeBoxColumns, CubeBoxFolder, CubeBoxRoot, CubeCheck, CubeChild, CubeCode, CubeCounter, CubeDatetime, CubeDetailList, CubeDoc, CubeFormula, CubeImg, CubeKey, CubeLine, CubeLink, CubeLinker, CubeList, CubeListOrdered, CubeListenerBase, CubeLost, CubeMap, CubeNode, CubePostil, CubeRating, CubeRoot, CubeRt, CubeStatusBase, CubeStatusBaseRoot, CubeSubMap, CubeTable, CubeText, CubeTimeline, CubeTip, CubeTodo, DatetimeStatus, DetailListStatus, DocStatus, EventBubble, FormulaStatus, type HotkeyPlatform, IApi, IBadge, IBox, ICheck, ICode, ICommandApi, ICommandBadge, ICommandCheck, ICommandCode, ICommandCounter, ICommandCube, ICommandCursor, ICommandDateTime, ICommandDetailList, ICommandDoc, ICommandFormula, ICommandKey, ICommandLink, ICommandLinker, ICommandList, ICommandListOrdered, ICommandMap, ICommandNode, ICommandRating, ICommandRt, ICommandTable, ICommandText, ICommandTimeline, ICommandTodo, ICounter, ICubeBase, ICubeBaseChild, ICubeBoxColumns, ICubeBoxFolder, ICubeBoxRoot, ICubeHandler, ICubeRootBase, ICubesInteraction, ICubesMenu, IDateTime, IDetailList, IDoc, IFormula, IImg, IKey, ILine, ILink, ILinker, IList, IListOrdered, ILost, IMap, IMapBase, IMapInteraction, IMapTools, IMenuNode, IMiniMap, IMisc, type IMobileReadonlyViewerInput, INode, INodeBase, INodeBaseEnv, INodeDrag, INote, INoteApi, INoteClipboard, INoteConvertor, INoteCourier, INoteCursor, INoteEvent, INoteFlag, INoteFloat, INoteHistory, INoteInteraction, INoteMod, INoteScope, INoteTools, IPostil, IRating, IRt, ISubMap, ITable, IText, ITimeline, ITip, ITodo, IUi, IUiAi, IUiCatalogue, IUiConfig, IUiDialog, IUiDialogCubeList, IUiDict, IUiFloat, IUiMenubar, IUiPreset, IUiSidebar, IUiStatusbar, IUiTheme, IUiTips, IUiToolbar, ImgStatus, InteractionBase, InteractionBinder, InteractionDetailList, InteractionList, InteractionListOrdered, InteractionTable, InteractionTodo, InteractionsCube, InteractionsCubeRegistry, KeyStatus, LayoutChecker, LineStatus, LinkStatus, LinkerLine, LinkerPoint, ListOrderedStatus, ListStatus, LostStatus, Map2D, MapCanvas, MapChild, MapHotkeys, MapInteraction, MapNodeBase, MapNodeLayoutEnv, MapStatus, MapTools, Matrix2D, MenuApi, MenuBadge, MenuBase, MenuBox, MenuBoxColumns, MenuBoxFolder, MenuBoxRoot, MenuCheck, MenuCode, MenuCounter, MenuDatetime, MenuDetailList, MenuImg, MenuKey, MenuLink, MenuList, MenuListOrdered, MenuNode, MenuRating, MenuSubmap, MenuTable, MenuTimeline, MenuTip, MenuTodo, MenusCube, MenusCubeRegistry, MobileReadonlyViewer, NodeBase2D, NodeLayout, NodeLayoutInvert, NodeLayoutMeter, NodeLineStatus, NodeObserver, NodeShape, NodeStatus, NodeStatusBase, Note, NoteAction, NoteAnchor, NoteApi, NoteBase, NoteClipBoard, NoteConvertor, NoteCourier, NoteCubes, NoteCursor, NoteEvent, NoteEventListenerBase, NoteEventListeners, NoteFlag, NoteHistory, NoteHotkeyBase, NoteInteraction, NoteListener, NoteMod, NotePainter, NoteScope, NoteScopes, NoteTools, PostilStatus, RatingStatus, ReceiverApi, ReceiverBadge, ReceiverBase, ReceiverBox, ReceiverBoxColumns, ReceiverBoxFolder, ReceiverBoxRoot, ReceiverCheck, ReceiverChild, ReceiverCode, ReceiverCounter, ReceiverCubes, ReceiverDatetime, ReceiverDetailList, ReceiverDoc, ReceiverFormula, ReceiverImg, ReceiverKey, ReceiverLine, ReceiverLink, ReceiverLinker, ReceiverList, ReceiverListOrdered, ReceiverLost, ReceiverMap, ReceiverMapChild, ReceiverNode, ReceiverPostil, ReceiverRating, ReceiverRegistry, ReceiverRoot, ReceiverRt, ReceiverSubMap, ReceiverTable, ReceiverText, ReceiverTimeline, ReceiverTip, ReceiverTodo, Recorder, RtStatus, StatusItemBase, type StatusItemComponentProps, type StatusItemPlacement, SubmapStatus, TableStatus, TextStatus, type TimelineItem, TipStatus, TodoStatus, ToolBase, UI, UICatalogue, UIDict, UISearch, UIStatusbar, UITheme, UIToolbar, UiBase, UiConfig, UiFloat, UiMenubar, UiPreset, UiSidebar, UiTips, Waiter, type _CubeTextAnnotation, type _CubeTodoItem, type _CubeTodoItemData, type _FigScale, type _Map, type _MapCubes, _MapGroup, type _MapPlaceholderLinker, _PlayStatus, type _PointFig, type _PointKey, type _PointView, type _SDKMeta, cmd, copy_event_listener, cube, cut_event_listener, define_cmd, detect_hotkey_platform, get_cmds, get_cube_menu, get_menu_base, get_menu_code, get_menu_counter, get_menu_inline_scale, get_menu_timeline, get_receiver_type, has_pcube_menu, hotkey, is_platform_shortcut, menu_status, move_rect, node_observer, normalize_platform, paste_event_listener, receiver, resolve_hotkey_shortcut, set_inline_scale, show_code_file_dialog, show_menu, supports_inline_scale, to_platform_shortcut, use_box_interaction, use_list_item_drag, waiter_map_svg };