deepsky 2.60.0 → 2.63.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 (292) hide show
  1. package/dist/7e900dd1516963265e4a.woff2 +0 -0
  2. package/dist/fonts/{iconfont-2c83b1d1614bf6a94af0.ttf → iconfont-a00bc56ce73b2fd0dbc3.ttf} +0 -0
  3. package/dist/fonts/iconfont-bb434020d29c0b9143b3.woff +0 -0
  4. package/dist/index.css +1858 -1459
  5. package/dist/index.d.ts +491 -74
  6. package/dist/index.js +2 -2
  7. package/package.json +5 -1
  8. package/dist/f7c35eebde006eb64cfc.woff2 +0 -0
  9. package/dist/fonts/iconfont-dc4fd5e68c756265558a.woff +0 -0
  10. /package/dist/chunk/{1037-a53b89ee1c9858ae0f0b.js → 1037-bb9a7a0269fc4e5b7140.js} +0 -0
  11. /package/dist/chunk/{1066-a53b89ee1c9858ae0f0b.js → 1066-bb9a7a0269fc4e5b7140.js} +0 -0
  12. /package/dist/chunk/{1216-a53b89ee1c9858ae0f0b.js → 1216-bb9a7a0269fc4e5b7140.js} +0 -0
  13. /package/dist/chunk/{1230-a53b89ee1c9858ae0f0b.js → 1230-bb9a7a0269fc4e5b7140.js} +0 -0
  14. /package/dist/chunk/{1425-a53b89ee1c9858ae0f0b.js → 1425-bb9a7a0269fc4e5b7140.js} +0 -0
  15. /package/dist/chunk/{1432-a53b89ee1c9858ae0f0b.js → 1432-bb9a7a0269fc4e5b7140.js} +0 -0
  16. /package/dist/chunk/{1476-a53b89ee1c9858ae0f0b.js → 1476-bb9a7a0269fc4e5b7140.js} +0 -0
  17. /package/dist/chunk/{1545-a53b89ee1c9858ae0f0b.js → 1545-bb9a7a0269fc4e5b7140.js} +0 -0
  18. /package/dist/chunk/{16-a53b89ee1c9858ae0f0b.js → 16-bb9a7a0269fc4e5b7140.js} +0 -0
  19. /package/dist/chunk/{1624-a53b89ee1c9858ae0f0b.js → 1624-bb9a7a0269fc4e5b7140.js} +0 -0
  20. /package/dist/chunk/{1631-a53b89ee1c9858ae0f0b.js → 1631-bb9a7a0269fc4e5b7140.js} +0 -0
  21. /package/dist/chunk/{1655-a53b89ee1c9858ae0f0b.js → 1655-bb9a7a0269fc4e5b7140.js} +0 -0
  22. /package/dist/chunk/{1708-a53b89ee1c9858ae0f0b.js → 1708-bb9a7a0269fc4e5b7140.js} +0 -0
  23. /package/dist/chunk/{172-a53b89ee1c9858ae0f0b.js → 172-bb9a7a0269fc4e5b7140.js} +0 -0
  24. /package/dist/chunk/{1729-a53b89ee1c9858ae0f0b.js → 1729-bb9a7a0269fc4e5b7140.js} +0 -0
  25. /package/dist/chunk/{1757-a53b89ee1c9858ae0f0b.js → 1757-bb9a7a0269fc4e5b7140.js} +0 -0
  26. /package/dist/chunk/{1803-a53b89ee1c9858ae0f0b.js → 1803-bb9a7a0269fc4e5b7140.js} +0 -0
  27. /package/dist/chunk/{1839-a53b89ee1c9858ae0f0b.js → 1839-bb9a7a0269fc4e5b7140.js} +0 -0
  28. /package/dist/chunk/{1857-a53b89ee1c9858ae0f0b.js → 1857-bb9a7a0269fc4e5b7140.js} +0 -0
  29. /package/dist/chunk/{1931-a53b89ee1c9858ae0f0b.js → 1931-bb9a7a0269fc4e5b7140.js} +0 -0
  30. /package/dist/chunk/{2062-a53b89ee1c9858ae0f0b.js → 2062-bb9a7a0269fc4e5b7140.js} +0 -0
  31. /package/dist/chunk/{2068-a53b89ee1c9858ae0f0b.js → 2068-bb9a7a0269fc4e5b7140.js} +0 -0
  32. /package/dist/chunk/{2071-a53b89ee1c9858ae0f0b.js → 2071-bb9a7a0269fc4e5b7140.js} +0 -0
  33. /package/dist/chunk/{2108-a53b89ee1c9858ae0f0b.js → 2108-bb9a7a0269fc4e5b7140.js} +0 -0
  34. /package/dist/chunk/{212-a53b89ee1c9858ae0f0b.js → 212-bb9a7a0269fc4e5b7140.js} +0 -0
  35. /package/dist/chunk/{2142-a53b89ee1c9858ae0f0b.js → 2142-bb9a7a0269fc4e5b7140.js} +0 -0
  36. /package/dist/chunk/{2173-a53b89ee1c9858ae0f0b.js → 2173-bb9a7a0269fc4e5b7140.js} +0 -0
  37. /package/dist/chunk/{2184-a53b89ee1c9858ae0f0b.js → 2184-bb9a7a0269fc4e5b7140.js} +0 -0
  38. /package/dist/chunk/{2215-a53b89ee1c9858ae0f0b.js → 2215-bb9a7a0269fc4e5b7140.js} +0 -0
  39. /package/dist/chunk/{224-a53b89ee1c9858ae0f0b.js → 224-bb9a7a0269fc4e5b7140.js} +0 -0
  40. /package/dist/chunk/{2266-a53b89ee1c9858ae0f0b.js → 2266-bb9a7a0269fc4e5b7140.js} +0 -0
  41. /package/dist/chunk/{2354-a53b89ee1c9858ae0f0b.js → 2354-bb9a7a0269fc4e5b7140.js} +0 -0
  42. /package/dist/chunk/{2419-a53b89ee1c9858ae0f0b.js → 2419-bb9a7a0269fc4e5b7140.js} +0 -0
  43. /package/dist/chunk/{245-a53b89ee1c9858ae0f0b.js → 245-bb9a7a0269fc4e5b7140.js} +0 -0
  44. /package/dist/chunk/{2473-a53b89ee1c9858ae0f0b.js → 2473-bb9a7a0269fc4e5b7140.js} +0 -0
  45. /package/dist/chunk/{2492-a53b89ee1c9858ae0f0b.js → 2492-bb9a7a0269fc4e5b7140.js} +0 -0
  46. /package/dist/chunk/{2505-a53b89ee1c9858ae0f0b.js → 2505-bb9a7a0269fc4e5b7140.js} +0 -0
  47. /package/dist/chunk/{2535-a53b89ee1c9858ae0f0b.js → 2535-bb9a7a0269fc4e5b7140.js} +0 -0
  48. /package/dist/chunk/{2660-a53b89ee1c9858ae0f0b.js → 2660-bb9a7a0269fc4e5b7140.js} +0 -0
  49. /package/dist/chunk/{2691-a53b89ee1c9858ae0f0b.js → 2691-bb9a7a0269fc4e5b7140.js} +0 -0
  50. /package/dist/chunk/{2723-a53b89ee1c9858ae0f0b.js → 2723-bb9a7a0269fc4e5b7140.js} +0 -0
  51. /package/dist/chunk/{284-a53b89ee1c9858ae0f0b.js → 284-bb9a7a0269fc4e5b7140.js} +0 -0
  52. /package/dist/chunk/{2860-a53b89ee1c9858ae0f0b.js → 2860-bb9a7a0269fc4e5b7140.js} +0 -0
  53. /package/dist/chunk/{2861-a53b89ee1c9858ae0f0b.js → 2861-bb9a7a0269fc4e5b7140.js} +0 -0
  54. /package/dist/chunk/{2934-a53b89ee1c9858ae0f0b.js → 2934-bb9a7a0269fc4e5b7140.js} +0 -0
  55. /package/dist/chunk/{3032-a53b89ee1c9858ae0f0b.js → 3032-bb9a7a0269fc4e5b7140.js} +0 -0
  56. /package/dist/chunk/{3043-a53b89ee1c9858ae0f0b.js → 3043-bb9a7a0269fc4e5b7140.js} +0 -0
  57. /package/dist/chunk/{3052-a53b89ee1c9858ae0f0b.js → 3052-bb9a7a0269fc4e5b7140.js} +0 -0
  58. /package/dist/chunk/{3124-a53b89ee1c9858ae0f0b.js → 3124-bb9a7a0269fc4e5b7140.js} +0 -0
  59. /package/dist/chunk/{3170-a53b89ee1c9858ae0f0b.js → 3170-bb9a7a0269fc4e5b7140.js} +0 -0
  60. /package/dist/chunk/{321-a53b89ee1c9858ae0f0b.js → 321-bb9a7a0269fc4e5b7140.js} +0 -0
  61. /package/dist/chunk/{3227-a53b89ee1c9858ae0f0b.js → 3227-bb9a7a0269fc4e5b7140.js} +0 -0
  62. /package/dist/chunk/{3247-a53b89ee1c9858ae0f0b.js → 3247-bb9a7a0269fc4e5b7140.js} +0 -0
  63. /package/dist/chunk/{327-a53b89ee1c9858ae0f0b.js → 327-bb9a7a0269fc4e5b7140.js} +0 -0
  64. /package/dist/chunk/{3279-a53b89ee1c9858ae0f0b.js → 3279-bb9a7a0269fc4e5b7140.js} +0 -0
  65. /package/dist/chunk/{3330-a53b89ee1c9858ae0f0b.js → 3330-bb9a7a0269fc4e5b7140.js} +0 -0
  66. /package/dist/chunk/{3403-a53b89ee1c9858ae0f0b.js → 3403-bb9a7a0269fc4e5b7140.js} +0 -0
  67. /package/dist/chunk/{3454-a53b89ee1c9858ae0f0b.js → 3454-bb9a7a0269fc4e5b7140.js} +0 -0
  68. /package/dist/chunk/{3492-a53b89ee1c9858ae0f0b.js → 3492-bb9a7a0269fc4e5b7140.js} +0 -0
  69. /package/dist/chunk/{3516-a53b89ee1c9858ae0f0b.js → 3516-bb9a7a0269fc4e5b7140.js} +0 -0
  70. /package/dist/chunk/{3593-a53b89ee1c9858ae0f0b.js → 3593-bb9a7a0269fc4e5b7140.js} +0 -0
  71. /package/dist/chunk/{3646-a53b89ee1c9858ae0f0b.js → 3646-bb9a7a0269fc4e5b7140.js} +0 -0
  72. /package/dist/chunk/{3702-a53b89ee1c9858ae0f0b.js → 3702-bb9a7a0269fc4e5b7140.js} +0 -0
  73. /package/dist/chunk/{3720-a53b89ee1c9858ae0f0b.js → 3720-bb9a7a0269fc4e5b7140.js} +0 -0
  74. /package/dist/chunk/{3837-a53b89ee1c9858ae0f0b.js → 3837-bb9a7a0269fc4e5b7140.js} +0 -0
  75. /package/dist/chunk/{3874-a53b89ee1c9858ae0f0b.js → 3874-bb9a7a0269fc4e5b7140.js} +0 -0
  76. /package/dist/chunk/{3894-a53b89ee1c9858ae0f0b.js → 3894-bb9a7a0269fc4e5b7140.js} +0 -0
  77. /package/dist/chunk/{3906-a53b89ee1c9858ae0f0b.js → 3906-bb9a7a0269fc4e5b7140.js} +0 -0
  78. /package/dist/chunk/{3941-a53b89ee1c9858ae0f0b.js → 3941-bb9a7a0269fc4e5b7140.js} +0 -0
  79. /package/dist/chunk/{3947-a53b89ee1c9858ae0f0b.js → 3947-bb9a7a0269fc4e5b7140.js} +0 -0
  80. /package/dist/chunk/{3949-a53b89ee1c9858ae0f0b.js → 3949-bb9a7a0269fc4e5b7140.js} +0 -0
  81. /package/dist/chunk/{396-a53b89ee1c9858ae0f0b.js → 396-bb9a7a0269fc4e5b7140.js} +0 -0
  82. /package/dist/chunk/{3972-a53b89ee1c9858ae0f0b.js → 3972-bb9a7a0269fc4e5b7140.js} +0 -0
  83. /package/dist/chunk/{4007-a53b89ee1c9858ae0f0b.js → 4007-bb9a7a0269fc4e5b7140.js} +0 -0
  84. /package/dist/chunk/{4009-a53b89ee1c9858ae0f0b.js → 4009-bb9a7a0269fc4e5b7140.js} +0 -0
  85. /package/dist/chunk/{402-a53b89ee1c9858ae0f0b.js → 402-bb9a7a0269fc4e5b7140.js} +0 -0
  86. /package/dist/chunk/{4081-a53b89ee1c9858ae0f0b.js → 4081-bb9a7a0269fc4e5b7140.js} +0 -0
  87. /package/dist/chunk/{41-a53b89ee1c9858ae0f0b.js → 41-bb9a7a0269fc4e5b7140.js} +0 -0
  88. /package/dist/chunk/{4108-a53b89ee1c9858ae0f0b.js → 4108-bb9a7a0269fc4e5b7140.js} +0 -0
  89. /package/dist/chunk/{4112-a53b89ee1c9858ae0f0b.js → 4112-bb9a7a0269fc4e5b7140.js} +0 -0
  90. /package/dist/chunk/{415-a53b89ee1c9858ae0f0b.js → 415-bb9a7a0269fc4e5b7140.js} +0 -0
  91. /package/dist/chunk/{4199-a53b89ee1c9858ae0f0b.js → 4199-bb9a7a0269fc4e5b7140.js} +0 -0
  92. /package/dist/chunk/{4214-a53b89ee1c9858ae0f0b.js → 4214-bb9a7a0269fc4e5b7140.js} +0 -0
  93. /package/dist/chunk/{4236-a53b89ee1c9858ae0f0b.js → 4236-bb9a7a0269fc4e5b7140.js} +0 -0
  94. /package/dist/chunk/{4283-a53b89ee1c9858ae0f0b.js → 4283-bb9a7a0269fc4e5b7140.js} +0 -0
  95. /package/dist/chunk/{4292-a53b89ee1c9858ae0f0b.js → 4292-bb9a7a0269fc4e5b7140.js} +0 -0
  96. /package/dist/chunk/{4311-a53b89ee1c9858ae0f0b.js → 4311-bb9a7a0269fc4e5b7140.js} +0 -0
  97. /package/dist/chunk/{4354-a53b89ee1c9858ae0f0b.js → 4354-bb9a7a0269fc4e5b7140.js} +0 -0
  98. /package/dist/chunk/{4385-a53b89ee1c9858ae0f0b.js → 4385-bb9a7a0269fc4e5b7140.js} +0 -0
  99. /package/dist/chunk/{4408-a53b89ee1c9858ae0f0b.js → 4408-bb9a7a0269fc4e5b7140.js} +0 -0
  100. /package/dist/chunk/{4445-a53b89ee1c9858ae0f0b.js → 4445-bb9a7a0269fc4e5b7140.js} +0 -0
  101. /package/dist/chunk/{4451-a53b89ee1c9858ae0f0b.js → 4451-bb9a7a0269fc4e5b7140.js} +0 -0
  102. /package/dist/chunk/{4452-a53b89ee1c9858ae0f0b.js → 4452-bb9a7a0269fc4e5b7140.js} +0 -0
  103. /package/dist/chunk/{4465-a53b89ee1c9858ae0f0b.js → 4465-bb9a7a0269fc4e5b7140.js} +0 -0
  104. /package/dist/chunk/{4520-a53b89ee1c9858ae0f0b.js → 4520-bb9a7a0269fc4e5b7140.js} +0 -0
  105. /package/dist/chunk/{454-a53b89ee1c9858ae0f0b.js → 454-bb9a7a0269fc4e5b7140.js} +0 -0
  106. /package/dist/chunk/{4546-a53b89ee1c9858ae0f0b.js → 4546-bb9a7a0269fc4e5b7140.js} +0 -0
  107. /package/dist/chunk/{4552-a53b89ee1c9858ae0f0b.js → 4552-bb9a7a0269fc4e5b7140.js} +0 -0
  108. /package/dist/chunk/{4598-a53b89ee1c9858ae0f0b.js → 4598-bb9a7a0269fc4e5b7140.js} +0 -0
  109. /package/dist/chunk/{4614-a53b89ee1c9858ae0f0b.js → 4614-bb9a7a0269fc4e5b7140.js} +0 -0
  110. /package/dist/chunk/{4660-a53b89ee1c9858ae0f0b.js → 4660-bb9a7a0269fc4e5b7140.js} +0 -0
  111. /package/dist/chunk/{4697-a53b89ee1c9858ae0f0b.js → 4697-bb9a7a0269fc4e5b7140.js} +0 -0
  112. /package/dist/chunk/{4709-a53b89ee1c9858ae0f0b.js → 4709-bb9a7a0269fc4e5b7140.js} +0 -0
  113. /package/dist/chunk/{4714-a53b89ee1c9858ae0f0b.js → 4714-bb9a7a0269fc4e5b7140.js} +0 -0
  114. /package/dist/chunk/{4780-a53b89ee1c9858ae0f0b.js → 4780-bb9a7a0269fc4e5b7140.js} +0 -0
  115. /package/dist/chunk/{4838-a53b89ee1c9858ae0f0b.js → 4838-bb9a7a0269fc4e5b7140.js} +0 -0
  116. /package/dist/chunk/{4843-a53b89ee1c9858ae0f0b.js → 4843-bb9a7a0269fc4e5b7140.js} +0 -0
  117. /package/dist/chunk/{4862-a53b89ee1c9858ae0f0b.js → 4862-bb9a7a0269fc4e5b7140.js} +0 -0
  118. /package/dist/chunk/{4877-a53b89ee1c9858ae0f0b.js → 4877-bb9a7a0269fc4e5b7140.js} +0 -0
  119. /package/dist/chunk/{4886-a53b89ee1c9858ae0f0b.js → 4886-bb9a7a0269fc4e5b7140.js} +0 -0
  120. /package/dist/chunk/{489-a53b89ee1c9858ae0f0b.js → 489-bb9a7a0269fc4e5b7140.js} +0 -0
  121. /package/dist/chunk/{4914-a53b89ee1c9858ae0f0b.js → 4914-bb9a7a0269fc4e5b7140.js} +0 -0
  122. /package/dist/chunk/{4940-a53b89ee1c9858ae0f0b.js → 4940-bb9a7a0269fc4e5b7140.js} +0 -0
  123. /package/dist/chunk/{4962-a53b89ee1c9858ae0f0b.js → 4962-bb9a7a0269fc4e5b7140.js} +0 -0
  124. /package/dist/chunk/{5026-a53b89ee1c9858ae0f0b.js → 5026-bb9a7a0269fc4e5b7140.js} +0 -0
  125. /package/dist/chunk/{5034-a53b89ee1c9858ae0f0b.js → 5034-bb9a7a0269fc4e5b7140.js} +0 -0
  126. /package/dist/chunk/{5050-a53b89ee1c9858ae0f0b.js → 5050-bb9a7a0269fc4e5b7140.js} +0 -0
  127. /package/dist/chunk/{5099-a53b89ee1c9858ae0f0b.js → 5099-bb9a7a0269fc4e5b7140.js} +0 -0
  128. /package/dist/chunk/{5119-a53b89ee1c9858ae0f0b.js → 5119-bb9a7a0269fc4e5b7140.js} +0 -0
  129. /package/dist/chunk/{5141-a53b89ee1c9858ae0f0b.js → 5141-bb9a7a0269fc4e5b7140.js} +0 -0
  130. /package/dist/chunk/{5143-a53b89ee1c9858ae0f0b.js → 5143-bb9a7a0269fc4e5b7140.js} +0 -0
  131. /package/dist/chunk/{5177-a53b89ee1c9858ae0f0b.js → 5177-bb9a7a0269fc4e5b7140.js} +0 -0
  132. /package/dist/chunk/{5203-a53b89ee1c9858ae0f0b.js → 5203-bb9a7a0269fc4e5b7140.js} +0 -0
  133. /package/dist/chunk/{5283-a53b89ee1c9858ae0f0b.js → 5283-bb9a7a0269fc4e5b7140.js} +0 -0
  134. /package/dist/chunk/{5314-a53b89ee1c9858ae0f0b.js → 5314-bb9a7a0269fc4e5b7140.js} +0 -0
  135. /package/dist/chunk/{535-a53b89ee1c9858ae0f0b.js → 535-bb9a7a0269fc4e5b7140.js} +0 -0
  136. /package/dist/chunk/{5363-a53b89ee1c9858ae0f0b.js → 5363-bb9a7a0269fc4e5b7140.js} +0 -0
  137. /package/dist/chunk/{542-a53b89ee1c9858ae0f0b.js → 542-bb9a7a0269fc4e5b7140.js} +0 -0
  138. /package/dist/chunk/{5424-a53b89ee1c9858ae0f0b.js → 5424-bb9a7a0269fc4e5b7140.js} +0 -0
  139. /package/dist/chunk/{5443-a53b89ee1c9858ae0f0b.js → 5443-bb9a7a0269fc4e5b7140.js} +0 -0
  140. /package/dist/chunk/{5521-a53b89ee1c9858ae0f0b.js → 5521-bb9a7a0269fc4e5b7140.js} +0 -0
  141. /package/dist/chunk/{5536-a53b89ee1c9858ae0f0b.js → 5536-bb9a7a0269fc4e5b7140.js} +0 -0
  142. /package/dist/chunk/{5542-a53b89ee1c9858ae0f0b.js → 5542-bb9a7a0269fc4e5b7140.js} +0 -0
  143. /package/dist/chunk/{5585-a53b89ee1c9858ae0f0b.js → 5585-bb9a7a0269fc4e5b7140.js} +0 -0
  144. /package/dist/chunk/{5589-a53b89ee1c9858ae0f0b.js → 5589-bb9a7a0269fc4e5b7140.js} +0 -0
  145. /package/dist/chunk/{5601-a53b89ee1c9858ae0f0b.js → 5601-bb9a7a0269fc4e5b7140.js} +0 -0
  146. /package/dist/chunk/{5611-a53b89ee1c9858ae0f0b.js → 5611-bb9a7a0269fc4e5b7140.js} +0 -0
  147. /package/dist/chunk/{5628-a53b89ee1c9858ae0f0b.js → 5628-bb9a7a0269fc4e5b7140.js} +0 -0
  148. /package/dist/chunk/{5638-a53b89ee1c9858ae0f0b.js → 5638-bb9a7a0269fc4e5b7140.js} +0 -0
  149. /package/dist/chunk/{5647-a53b89ee1c9858ae0f0b.js → 5647-bb9a7a0269fc4e5b7140.js} +0 -0
  150. /package/dist/chunk/{5709-a53b89ee1c9858ae0f0b.js → 5709-bb9a7a0269fc4e5b7140.js} +0 -0
  151. /package/dist/chunk/{5728-a53b89ee1c9858ae0f0b.js → 5728-bb9a7a0269fc4e5b7140.js} +0 -0
  152. /package/dist/chunk/{5731-a53b89ee1c9858ae0f0b.js → 5731-bb9a7a0269fc4e5b7140.js} +0 -0
  153. /package/dist/chunk/{5744-a53b89ee1c9858ae0f0b.js → 5744-bb9a7a0269fc4e5b7140.js} +0 -0
  154. /package/dist/chunk/{5814-a53b89ee1c9858ae0f0b.js → 5814-bb9a7a0269fc4e5b7140.js} +0 -0
  155. /package/dist/chunk/{5827-a53b89ee1c9858ae0f0b.js → 5827-bb9a7a0269fc4e5b7140.js} +0 -0
  156. /package/dist/chunk/{5884-a53b89ee1c9858ae0f0b.js → 5884-bb9a7a0269fc4e5b7140.js} +0 -0
  157. /package/dist/chunk/{5891-a53b89ee1c9858ae0f0b.js → 5891-bb9a7a0269fc4e5b7140.js} +0 -0
  158. /package/dist/chunk/{5936-a53b89ee1c9858ae0f0b.js → 5936-bb9a7a0269fc4e5b7140.js} +0 -0
  159. /package/dist/chunk/{5954-a53b89ee1c9858ae0f0b.js → 5954-bb9a7a0269fc4e5b7140.js} +0 -0
  160. /package/dist/chunk/{6010-a53b89ee1c9858ae0f0b.js → 6010-bb9a7a0269fc4e5b7140.js} +0 -0
  161. /package/dist/chunk/{6045-a53b89ee1c9858ae0f0b.js → 6045-bb9a7a0269fc4e5b7140.js} +0 -0
  162. /package/dist/chunk/{6083-a53b89ee1c9858ae0f0b.js → 6083-bb9a7a0269fc4e5b7140.js} +0 -0
  163. /package/dist/chunk/{6124-a53b89ee1c9858ae0f0b.js → 6124-bb9a7a0269fc4e5b7140.js} +0 -0
  164. /package/dist/chunk/{6173-a53b89ee1c9858ae0f0b.js → 6173-bb9a7a0269fc4e5b7140.js} +0 -0
  165. /package/dist/chunk/{6239-a53b89ee1c9858ae0f0b.js → 6239-bb9a7a0269fc4e5b7140.js} +0 -0
  166. /package/dist/chunk/{6262-a53b89ee1c9858ae0f0b.js → 6262-bb9a7a0269fc4e5b7140.js} +0 -0
  167. /package/dist/chunk/{6283-a53b89ee1c9858ae0f0b.js → 6283-bb9a7a0269fc4e5b7140.js} +0 -0
  168. /package/dist/chunk/{6297-a53b89ee1c9858ae0f0b.js → 6297-bb9a7a0269fc4e5b7140.js} +0 -0
  169. /package/dist/chunk/{6324-a53b89ee1c9858ae0f0b.js → 6324-bb9a7a0269fc4e5b7140.js} +0 -0
  170. /package/dist/chunk/{6343-a53b89ee1c9858ae0f0b.js → 6343-bb9a7a0269fc4e5b7140.js} +0 -0
  171. /package/dist/chunk/{6356-a53b89ee1c9858ae0f0b.js → 6356-bb9a7a0269fc4e5b7140.js} +0 -0
  172. /package/dist/chunk/{638-a53b89ee1c9858ae0f0b.js → 638-bb9a7a0269fc4e5b7140.js} +0 -0
  173. /package/dist/chunk/{6405-a53b89ee1c9858ae0f0b.js → 6405-bb9a7a0269fc4e5b7140.js} +0 -0
  174. /package/dist/chunk/{6514-a53b89ee1c9858ae0f0b.js → 6514-bb9a7a0269fc4e5b7140.js} +0 -0
  175. /package/dist/chunk/{6517-a53b89ee1c9858ae0f0b.js → 6517-bb9a7a0269fc4e5b7140.js} +0 -0
  176. /package/dist/chunk/{6563-a53b89ee1c9858ae0f0b.js → 6563-bb9a7a0269fc4e5b7140.js} +0 -0
  177. /package/dist/chunk/{6577-a53b89ee1c9858ae0f0b.js → 6577-bb9a7a0269fc4e5b7140.js} +0 -0
  178. /package/dist/chunk/{6677-a53b89ee1c9858ae0f0b.js → 6677-bb9a7a0269fc4e5b7140.js} +0 -0
  179. /package/dist/chunk/{6736-a53b89ee1c9858ae0f0b.js → 6736-bb9a7a0269fc4e5b7140.js} +0 -0
  180. /package/dist/chunk/{6757-a53b89ee1c9858ae0f0b.js → 6757-bb9a7a0269fc4e5b7140.js} +0 -0
  181. /package/dist/chunk/{6865-a53b89ee1c9858ae0f0b.js → 6865-bb9a7a0269fc4e5b7140.js} +0 -0
  182. /package/dist/chunk/{6940-a53b89ee1c9858ae0f0b.js → 6940-bb9a7a0269fc4e5b7140.js} +0 -0
  183. /package/dist/chunk/{6957-a53b89ee1c9858ae0f0b.js → 6957-bb9a7a0269fc4e5b7140.js} +0 -0
  184. /package/dist/chunk/{6964-a53b89ee1c9858ae0f0b.js → 6964-bb9a7a0269fc4e5b7140.js} +0 -0
  185. /package/dist/chunk/{6967-a53b89ee1c9858ae0f0b.js → 6967-bb9a7a0269fc4e5b7140.js} +0 -0
  186. /package/dist/chunk/{697-a53b89ee1c9858ae0f0b.js → 697-bb9a7a0269fc4e5b7140.js} +0 -0
  187. /package/dist/chunk/{6980-a53b89ee1c9858ae0f0b.js → 6980-bb9a7a0269fc4e5b7140.js} +0 -0
  188. /package/dist/chunk/{7095-a53b89ee1c9858ae0f0b.js → 7095-bb9a7a0269fc4e5b7140.js} +0 -0
  189. /package/dist/chunk/{7141-a53b89ee1c9858ae0f0b.js → 7141-bb9a7a0269fc4e5b7140.js} +0 -0
  190. /package/dist/chunk/{7145-a53b89ee1c9858ae0f0b.js → 7145-bb9a7a0269fc4e5b7140.js} +0 -0
  191. /package/dist/chunk/{7148-a53b89ee1c9858ae0f0b.js → 7148-bb9a7a0269fc4e5b7140.js} +0 -0
  192. /package/dist/chunk/{7217-a53b89ee1c9858ae0f0b.js → 7217-bb9a7a0269fc4e5b7140.js} +0 -0
  193. /package/dist/chunk/{7258-a53b89ee1c9858ae0f0b.js → 7258-bb9a7a0269fc4e5b7140.js} +0 -0
  194. /package/dist/chunk/{7328-a53b89ee1c9858ae0f0b.js → 7328-bb9a7a0269fc4e5b7140.js} +0 -0
  195. /package/dist/chunk/{7374-a53b89ee1c9858ae0f0b.js → 7374-bb9a7a0269fc4e5b7140.js} +0 -0
  196. /package/dist/chunk/{7434-a53b89ee1c9858ae0f0b.js → 7434-bb9a7a0269fc4e5b7140.js} +0 -0
  197. /package/dist/chunk/{7470-a53b89ee1c9858ae0f0b.js → 7470-bb9a7a0269fc4e5b7140.js} +0 -0
  198. /package/dist/chunk/{7504-a53b89ee1c9858ae0f0b.js → 7504-bb9a7a0269fc4e5b7140.js} +0 -0
  199. /package/dist/chunk/{753-a53b89ee1c9858ae0f0b.js → 753-bb9a7a0269fc4e5b7140.js} +0 -0
  200. /package/dist/chunk/{7549-a53b89ee1c9858ae0f0b.js → 7549-bb9a7a0269fc4e5b7140.js} +0 -0
  201. /package/dist/chunk/{7561-a53b89ee1c9858ae0f0b.js → 7561-bb9a7a0269fc4e5b7140.js} +0 -0
  202. /package/dist/chunk/{7567-a53b89ee1c9858ae0f0b.js → 7567-bb9a7a0269fc4e5b7140.js} +0 -0
  203. /package/dist/chunk/{7611-a53b89ee1c9858ae0f0b.js → 7611-bb9a7a0269fc4e5b7140.js} +0 -0
  204. /package/dist/chunk/{7615-a53b89ee1c9858ae0f0b.js → 7615-bb9a7a0269fc4e5b7140.js} +0 -0
  205. /package/dist/chunk/{7625-a53b89ee1c9858ae0f0b.js → 7625-bb9a7a0269fc4e5b7140.js} +0 -0
  206. /package/dist/chunk/{7642-a53b89ee1c9858ae0f0b.js → 7642-bb9a7a0269fc4e5b7140.js} +0 -0
  207. /package/dist/chunk/{7670-a53b89ee1c9858ae0f0b.js → 7670-bb9a7a0269fc4e5b7140.js} +0 -0
  208. /package/dist/chunk/{7681-a53b89ee1c9858ae0f0b.js → 7681-bb9a7a0269fc4e5b7140.js} +0 -0
  209. /package/dist/chunk/{7688-a53b89ee1c9858ae0f0b.js → 7688-bb9a7a0269fc4e5b7140.js} +0 -0
  210. /package/dist/chunk/{7765-a53b89ee1c9858ae0f0b.js → 7765-bb9a7a0269fc4e5b7140.js} +0 -0
  211. /package/dist/chunk/{7768-a53b89ee1c9858ae0f0b.js → 7768-bb9a7a0269fc4e5b7140.js} +0 -0
  212. /package/dist/chunk/{7788-a53b89ee1c9858ae0f0b.js → 7788-bb9a7a0269fc4e5b7140.js} +0 -0
  213. /package/dist/chunk/{7789-a53b89ee1c9858ae0f0b.js → 7789-bb9a7a0269fc4e5b7140.js} +0 -0
  214. /package/dist/chunk/{780-a53b89ee1c9858ae0f0b.js → 780-bb9a7a0269fc4e5b7140.js} +0 -0
  215. /package/dist/chunk/{7817-a53b89ee1c9858ae0f0b.js → 7817-bb9a7a0269fc4e5b7140.js} +0 -0
  216. /package/dist/chunk/{7824-a53b89ee1c9858ae0f0b.js → 7824-bb9a7a0269fc4e5b7140.js} +0 -0
  217. /package/dist/chunk/{7831-a53b89ee1c9858ae0f0b.js → 7831-bb9a7a0269fc4e5b7140.js} +0 -0
  218. /package/dist/chunk/{7900-a53b89ee1c9858ae0f0b.js → 7900-bb9a7a0269fc4e5b7140.js} +0 -0
  219. /package/dist/chunk/{7922-a53b89ee1c9858ae0f0b.js → 7922-bb9a7a0269fc4e5b7140.js} +0 -0
  220. /package/dist/chunk/{7927-a53b89ee1c9858ae0f0b.js → 7927-bb9a7a0269fc4e5b7140.js} +0 -0
  221. /package/dist/chunk/{794-a53b89ee1c9858ae0f0b.js → 794-bb9a7a0269fc4e5b7140.js} +0 -0
  222. /package/dist/chunk/{7966-a53b89ee1c9858ae0f0b.js → 7966-bb9a7a0269fc4e5b7140.js} +0 -0
  223. /package/dist/chunk/{8003-a53b89ee1c9858ae0f0b.js → 8003-bb9a7a0269fc4e5b7140.js} +0 -0
  224. /package/dist/chunk/{8093-a53b89ee1c9858ae0f0b.js → 8093-bb9a7a0269fc4e5b7140.js} +0 -0
  225. /package/dist/chunk/{8107-a53b89ee1c9858ae0f0b.js → 8107-bb9a7a0269fc4e5b7140.js} +0 -0
  226. /package/dist/chunk/{8201-a53b89ee1c9858ae0f0b.js → 8201-bb9a7a0269fc4e5b7140.js} +0 -0
  227. /package/dist/chunk/{8212-a53b89ee1c9858ae0f0b.js → 8212-bb9a7a0269fc4e5b7140.js} +0 -0
  228. /package/dist/chunk/{8234-a53b89ee1c9858ae0f0b.js → 8234-bb9a7a0269fc4e5b7140.js} +0 -0
  229. /package/dist/chunk/{8235-a53b89ee1c9858ae0f0b.js → 8235-bb9a7a0269fc4e5b7140.js} +0 -0
  230. /package/dist/chunk/{8237-a53b89ee1c9858ae0f0b.js → 8237-bb9a7a0269fc4e5b7140.js} +0 -0
  231. /package/dist/chunk/{8249-a53b89ee1c9858ae0f0b.js → 8249-bb9a7a0269fc4e5b7140.js} +0 -0
  232. /package/dist/chunk/{8320-a53b89ee1c9858ae0f0b.js → 8320-bb9a7a0269fc4e5b7140.js} +0 -0
  233. /package/dist/chunk/{8389-a53b89ee1c9858ae0f0b.js → 8389-bb9a7a0269fc4e5b7140.js} +0 -0
  234. /package/dist/chunk/{8393-a53b89ee1c9858ae0f0b.js → 8393-bb9a7a0269fc4e5b7140.js} +0 -0
  235. /package/dist/chunk/{8418-a53b89ee1c9858ae0f0b.js → 8418-bb9a7a0269fc4e5b7140.js} +0 -0
  236. /package/dist/chunk/{8426-a53b89ee1c9858ae0f0b.js → 8426-bb9a7a0269fc4e5b7140.js} +0 -0
  237. /package/dist/chunk/{8436-a53b89ee1c9858ae0f0b.js → 8436-bb9a7a0269fc4e5b7140.js} +0 -0
  238. /package/dist/chunk/{845-a53b89ee1c9858ae0f0b.js → 845-bb9a7a0269fc4e5b7140.js} +0 -0
  239. /package/dist/chunk/{8485-a53b89ee1c9858ae0f0b.js → 8485-bb9a7a0269fc4e5b7140.js} +0 -0
  240. /package/dist/chunk/{8499-a53b89ee1c9858ae0f0b.js → 8499-bb9a7a0269fc4e5b7140.js} +0 -0
  241. /package/dist/chunk/{8553-a53b89ee1c9858ae0f0b.js → 8553-bb9a7a0269fc4e5b7140.js} +0 -0
  242. /package/dist/chunk/{8617-a53b89ee1c9858ae0f0b.js → 8617-bb9a7a0269fc4e5b7140.js} +0 -0
  243. /package/dist/chunk/{8684-a53b89ee1c9858ae0f0b.js → 8684-bb9a7a0269fc4e5b7140.js} +0 -0
  244. /package/dist/chunk/{8700-a53b89ee1c9858ae0f0b.js → 8700-bb9a7a0269fc4e5b7140.js} +0 -0
  245. /package/dist/chunk/{8709-a53b89ee1c9858ae0f0b.js → 8709-bb9a7a0269fc4e5b7140.js} +0 -0
  246. /package/dist/chunk/{8711-a53b89ee1c9858ae0f0b.js → 8711-bb9a7a0269fc4e5b7140.js} +0 -0
  247. /package/dist/chunk/{874-a53b89ee1c9858ae0f0b.js → 874-bb9a7a0269fc4e5b7140.js} +0 -0
  248. /package/dist/chunk/{8753-a53b89ee1c9858ae0f0b.js → 8753-bb9a7a0269fc4e5b7140.js} +0 -0
  249. /package/dist/chunk/{8849-a53b89ee1c9858ae0f0b.js → 8849-bb9a7a0269fc4e5b7140.js} +0 -0
  250. /package/dist/chunk/{8931-a53b89ee1c9858ae0f0b.js → 8931-bb9a7a0269fc4e5b7140.js} +0 -0
  251. /package/dist/chunk/{9017-a53b89ee1c9858ae0f0b.js → 9017-bb9a7a0269fc4e5b7140.js} +0 -0
  252. /package/dist/chunk/{9045-a53b89ee1c9858ae0f0b.js → 9045-bb9a7a0269fc4e5b7140.js} +0 -0
  253. /package/dist/chunk/{9057-a53b89ee1c9858ae0f0b.js → 9057-bb9a7a0269fc4e5b7140.js} +0 -0
  254. /package/dist/chunk/{9077-a53b89ee1c9858ae0f0b.js → 9077-bb9a7a0269fc4e5b7140.js} +0 -0
  255. /package/dist/chunk/{9079-a53b89ee1c9858ae0f0b.js → 9079-bb9a7a0269fc4e5b7140.js} +0 -0
  256. /package/dist/chunk/{9096-a53b89ee1c9858ae0f0b.js → 9096-bb9a7a0269fc4e5b7140.js} +0 -0
  257. /package/dist/chunk/{9104-a53b89ee1c9858ae0f0b.js → 9104-bb9a7a0269fc4e5b7140.js} +0 -0
  258. /package/dist/chunk/{914-a53b89ee1c9858ae0f0b.js → 914-bb9a7a0269fc4e5b7140.js} +0 -0
  259. /package/dist/chunk/{9175-a53b89ee1c9858ae0f0b.js → 9175-bb9a7a0269fc4e5b7140.js} +0 -0
  260. /package/dist/chunk/{9179-a53b89ee1c9858ae0f0b.js → 9179-bb9a7a0269fc4e5b7140.js} +0 -0
  261. /package/dist/chunk/{9198-a53b89ee1c9858ae0f0b.js → 9198-bb9a7a0269fc4e5b7140.js} +0 -0
  262. /package/dist/chunk/{9206-a53b89ee1c9858ae0f0b.js → 9206-bb9a7a0269fc4e5b7140.js} +0 -0
  263. /package/dist/chunk/{9225-a53b89ee1c9858ae0f0b.js → 9225-bb9a7a0269fc4e5b7140.js} +0 -0
  264. /package/dist/chunk/{9270-a53b89ee1c9858ae0f0b.js → 9270-bb9a7a0269fc4e5b7140.js} +0 -0
  265. /package/dist/chunk/{9281-a53b89ee1c9858ae0f0b.js → 9281-bb9a7a0269fc4e5b7140.js} +0 -0
  266. /package/dist/chunk/{9294-a53b89ee1c9858ae0f0b.js → 9294-bb9a7a0269fc4e5b7140.js} +0 -0
  267. /package/dist/chunk/{9478-a53b89ee1c9858ae0f0b.js → 9478-bb9a7a0269fc4e5b7140.js} +0 -0
  268. /package/dist/chunk/{9524-a53b89ee1c9858ae0f0b.js → 9524-bb9a7a0269fc4e5b7140.js} +0 -0
  269. /package/dist/chunk/{9526-a53b89ee1c9858ae0f0b.js → 9526-bb9a7a0269fc4e5b7140.js} +0 -0
  270. /package/dist/chunk/{9556-a53b89ee1c9858ae0f0b.js → 9556-bb9a7a0269fc4e5b7140.js} +0 -0
  271. /package/dist/chunk/{9641-a53b89ee1c9858ae0f0b.js → 9641-bb9a7a0269fc4e5b7140.js} +0 -0
  272. /package/dist/chunk/{9661-a53b89ee1c9858ae0f0b.js → 9661-bb9a7a0269fc4e5b7140.js} +0 -0
  273. /package/dist/chunk/{9681-a53b89ee1c9858ae0f0b.js → 9681-bb9a7a0269fc4e5b7140.js} +0 -0
  274. /package/dist/chunk/{9689-a53b89ee1c9858ae0f0b.js → 9689-bb9a7a0269fc4e5b7140.js} +0 -0
  275. /package/dist/chunk/{9692-a53b89ee1c9858ae0f0b.js → 9692-bb9a7a0269fc4e5b7140.js} +0 -0
  276. /package/dist/chunk/{9728-a53b89ee1c9858ae0f0b.js → 9728-bb9a7a0269fc4e5b7140.js} +0 -0
  277. /package/dist/chunk/{9730-a53b89ee1c9858ae0f0b.js → 9730-bb9a7a0269fc4e5b7140.js} +0 -0
  278. /package/dist/chunk/{9780-a53b89ee1c9858ae0f0b.js → 9780-bb9a7a0269fc4e5b7140.js} +0 -0
  279. /package/dist/chunk/{9788-a53b89ee1c9858ae0f0b.js → 9788-bb9a7a0269fc4e5b7140.js} +0 -0
  280. /package/dist/chunk/{9806-a53b89ee1c9858ae0f0b.js → 9806-bb9a7a0269fc4e5b7140.js} +0 -0
  281. /package/dist/chunk/{9809-a53b89ee1c9858ae0f0b.js → 9809-bb9a7a0269fc4e5b7140.js} +0 -0
  282. /package/dist/chunk/{9819-a53b89ee1c9858ae0f0b.js → 9819-bb9a7a0269fc4e5b7140.js} +0 -0
  283. /package/dist/chunk/{9831-a53b89ee1c9858ae0f0b.js → 9831-bb9a7a0269fc4e5b7140.js} +0 -0
  284. /package/dist/chunk/{9845-a53b89ee1c9858ae0f0b.js → 9845-bb9a7a0269fc4e5b7140.js} +0 -0
  285. /package/dist/chunk/{9876-a53b89ee1c9858ae0f0b.js → 9876-bb9a7a0269fc4e5b7140.js} +0 -0
  286. /package/dist/chunk/{9904-a53b89ee1c9858ae0f0b.js → 9904-bb9a7a0269fc4e5b7140.js} +0 -0
  287. /package/dist/chunk/{9910-a53b89ee1c9858ae0f0b.js → 9910-bb9a7a0269fc4e5b7140.js} +0 -0
  288. /package/dist/chunk/{9965-a53b89ee1c9858ae0f0b.js → 9965-bb9a7a0269fc4e5b7140.js} +0 -0
  289. /package/dist/chunk/{9976-a53b89ee1c9858ae0f0b.js → 9976-bb9a7a0269fc4e5b7140.js} +0 -0
  290. /package/dist/chunk/{9982-a53b89ee1c9858ae0f0b.js → 9982-bb9a7a0269fc4e5b7140.js} +0 -0
  291. /package/dist/chunk/{9983-a53b89ee1c9858ae0f0b.js → 9983-bb9a7a0269fc4e5b7140.js} +0 -0
  292. /package/dist/chunk/{9984-a53b89ee1c9858ae0f0b.js → 9984-bb9a7a0269fc4e5b7140.js} +0 -0
package/dist/index.d.ts CHANGED
@@ -707,6 +707,9 @@ declare abstract class CubeChild<T extends ICubeBase.Data = any> extends CubeBas
707
707
  postil: CubePostil | null;
708
708
  constructor(note: Note, data: T, pcube: INote.NoteCube);
709
709
  get pcube(): INote.NoteCube;
710
+ /** Containers can restrict editing to their active content without persisting view state. */
711
+ allows_child_editing(_child: CubeChild): boolean;
712
+ get is_content_editable(): boolean;
710
713
  protected create_receiver(): ReceiverChild;
711
714
  get text(): string;
712
715
  get boxroot(): CubeBoxRoot;
@@ -986,9 +989,45 @@ declare abstract class NoteHotkeyBase extends NoteBase {
986
989
  export(): INoteInteraction.HotkeyConfig;
987
990
  }
988
991
 
992
+ declare abstract class NoteEventListenerBase<E extends Event = Event> {
993
+ /** 装饰器创建的监听器是单例,因此按笔记保存实际注册的宿主和回调。 */
994
+ protected records: WeakMap<Note, {
995
+ host: HTMLElement;
996
+ handler: EventListener;
997
+ }>;
998
+ abstract get type(): string;
999
+ protected abstract get_host(note: Note, dom: HTMLElement): HTMLElement;
1000
+ protected abstract handle(note: Note, e: E, dom: HTMLElement): any;
1001
+ protected target_inside(dom: HTMLElement, e: Event): boolean;
1002
+ protected target_is_editable(e: Event): boolean;
1003
+ protected can_handle_scope(note: Note, e: Event, dom: HTMLElement): boolean;
1004
+ register(note: Note, dom: HTMLElement): void;
1005
+ unregister(note: Note): void;
1006
+ }
1007
+
1008
+ declare class PasteEventListener extends NoteEventListenerBase<ClipboardEvent> {
1009
+ get type(): string;
1010
+ protected get_host(note: Note, dom: HTMLElement): HTMLElement;
1011
+ protected handle(note: Note, e: ClipboardEvent, dom: HTMLElement): Promise<void>;
1012
+ }
1013
+
1014
+ declare class CopyEventListener extends NoteEventListenerBase<ClipboardEvent> {
1015
+ get type(): string;
1016
+ protected get_host(note: Note, dom: HTMLElement): HTMLElement;
1017
+ protected handle(note: Note, e: ClipboardEvent, dom: HTMLElement): void;
1018
+ }
1019
+
1020
+ declare class CutEventListener extends NoteEventListenerBase<ClipboardEvent> {
1021
+ get type(): string;
1022
+ protected get_host(note: Note, dom: HTMLElement): HTMLElement;
1023
+ protected handle(note: Note, e: ClipboardEvent, dom: HTMLElement): void;
1024
+ }
1025
+
989
1026
  declare class NoteInteraction extends NoteBase {
990
1027
  protected _hotkeys: Map<string, NoteHotkeyBase>;
991
1028
  protected _inited: boolean;
1029
+ protected _listening_dom?: HTMLElement;
1030
+ protected _pointerdown_handler?: EventListener;
992
1031
  /**
993
1032
  * 当前持有“暂停笔记快捷键”资格的弹窗令牌。scope 是全局状态,因此必须等
994
1033
  * 最后一个弹窗释放令牌后才能恢复,避免嵌套弹窗的内层关闭时提前恢复。
@@ -1014,6 +1053,8 @@ declare class NoteInteraction extends NoteBase {
1014
1053
  resume_hotkey(token: symbol): void;
1015
1054
  set_scope(scope: INoteInteraction.Scope): void;
1016
1055
  listen(dom: HTMLElement): void;
1056
+ protected unlisten(): void;
1057
+ dispose(): void;
1017
1058
  init(config?: Partial<INoteInteraction.Data>, options?: INoteInteraction.HotkeyInitOptions): void;
1018
1059
  register(hotkey: NoteHotkeyBase, config?: INoteInteraction.HotkeyConfig): void;
1019
1060
  protected init_hotkey(hotkey: NoteHotkeyBase, config?: INoteInteraction.HotkeyConfig): void;
@@ -1042,42 +1083,11 @@ declare function resolve_hotkey_shortcut(shortcut: INoteInteraction.Shortcut, pl
1042
1083
  /** 将旧字符串规范成可持久化的平台快捷键表。 */
1043
1084
  declare function to_platform_shortcut(shortcut: INoteInteraction.Shortcut): INoteInteraction.PlatformShortcut;
1044
1085
 
1045
- declare abstract class NoteEventListenerBase<E extends Event = Event> {
1046
- protected records: WeakMap<Note, {
1047
- host: HTMLElement;
1048
- handler: EventListener;
1049
- }>;
1050
- abstract get type(): string;
1051
- protected abstract get_host(note: Note, dom: HTMLElement): HTMLElement;
1052
- protected abstract handle(note: Note, e: E): any;
1053
- register(note: Note, dom: HTMLElement): void;
1054
- }
1055
-
1056
- declare class PasteEventListener extends NoteEventListenerBase<ClipboardEvent> {
1057
- get type(): string;
1058
- protected get_host(note: Note, dom: HTMLElement): HTMLElement;
1059
- protected handle(note: Note, e: ClipboardEvent): Promise<void>;
1060
- }
1061
- declare const paste_event_listener: PasteEventListener;
1062
-
1063
- declare class CopyEventListener extends NoteEventListenerBase<ClipboardEvent> {
1064
- get type(): string;
1065
- protected get_host(note: Note, dom: HTMLElement): HTMLElement;
1066
- protected handle(note: Note, e: ClipboardEvent): void;
1067
- }
1068
- declare const copy_event_listener: CopyEventListener;
1069
-
1070
- declare class CutEventListener extends NoteEventListenerBase<ClipboardEvent> {
1071
- get type(): string;
1072
- protected get_host(note: Note, dom: HTMLElement): HTMLElement;
1073
- protected handle(note: Note, e: ClipboardEvent): void;
1074
- }
1075
- declare const cut_event_listener: CutEventListener;
1076
-
1077
- declare const NoteEventListeners: NoteEventListenerBase[];
1078
-
1079
1086
  declare const MapHotkeys: Map<string, NoteHotkeyBase>;
1080
1087
  declare function hotkey(cls: typeof NoteHotkeyBase): void;
1088
+ /** 收集浏览器事件监听器,由 NoteInteraction.listen() 为每个笔记统一注册。 */
1089
+ declare const MapEventListeners: Map<string, NoteEventListenerBase>;
1090
+ declare function event_listener<T extends new () => NoteEventListenerBase<any>>(cls: T): void;
1081
1091
 
1082
1092
  declare class Waiter {
1083
1093
  protected _promise: Promise<any>;
@@ -3085,6 +3095,7 @@ declare class Note {
3085
3095
  protected _root: CubeRoot;
3086
3096
  protected _ui: UI;
3087
3097
  protected _app: any;
3098
+ protected _dom?: HTMLElement;
3088
3099
  protected _isdev: boolean;
3089
3100
  protected _uidata: IUi.Data;
3090
3101
  protected _cubes: NoteCubes;
@@ -3104,6 +3115,10 @@ declare class Note {
3104
3115
  constructor(notedata: IDoc.Data | IMap.Data, uidata?: IUi.Data);
3105
3116
  get uidata(): IUi.Data;
3106
3117
  get id(): string;
3118
+ get dom(): HTMLElement | undefined;
3119
+ get is_active(): boolean;
3120
+ /** 将当前笔记设为文档级事件的目标,不改变 DOM 焦点或文本光标。 */
3121
+ activate(): boolean;
3107
3122
  get version_cubes(): INote.CubesVersion;
3108
3123
  get version_data(): INote.CubesVersion;
3109
3124
  get isdev(): boolean;
@@ -3356,6 +3371,163 @@ declare class CubeFiles extends CubeChild<IFiles.Data> {
3356
3371
  gc(): void;
3357
3372
  }
3358
3373
 
3374
+ declare class AdapterCubeFlashCard extends CubeAdapterBase {
3375
+ get meta(): INote.CubeMeta;
3376
+ normalize_attrs(attrs?: Partial<IFlashCard.Attrs>): IFlashCard.Attrs;
3377
+ get_data(info?: Partial<IFlashCard.Info>, css?: Record<string, any>, attrs?: Partial<IFlashCard.Attrs>): IFlashCard.Data;
3378
+ update_data(versions: INote.CubesVersion, data: IFlashCard.Data): ICubeBase.CubeUpdateResult<IFlashCard.Data>;
3379
+ replace_id(versions: INote.CubesVersion, data: IFlashCard.Data, map?: Record<string, string>): ICubeBase.ReplaceIdResult<IFlashCard.Data>;
3380
+ }
3381
+
3382
+ declare class AdapterCubeBox extends CubeAdapterBase {
3383
+ get meta(): INote.CubeMeta;
3384
+ get_data(content?: ICubeBase.Data[], css?: Record<string, any>, attrs?: Record<string, any>): IBox.Data;
3385
+ replace_id(versions: INote.CubesVersion, data: IBox.Data, map?: Record<string, string>): ICubeBase.ReplaceIdResult<IBox.Data>;
3386
+ update_data(versions: INote.CubesVersion, data: IBox.Data): ICubeBase.CubeUpdateResult;
3387
+ }
3388
+
3389
+ declare class BoxStatus extends CubeStatusBase<IBox.Data> {
3390
+ constructor(cube: CubeBox);
3391
+ }
3392
+
3393
+ declare class ReceiverBox extends ReceiverChild<CubeBox> {
3394
+ on_merge(command: ICommandCube.Merge): Recorder | void;
3395
+ on_box_order(command: ICommandCube.Reorder): Recorder | void;
3396
+ on_insert_child(command: ICommandCube.InsertChild): Recorder | void;
3397
+ on_delete_child(command: ICommandCube.DeleteChild): Recorder | void;
3398
+ on_box_reset(command: ICommandCube.Reset): Recorder | void;
3399
+ on_cube_delete_adjacent(command: ICommandCube.DeleteAdjacent): Recorder;
3400
+ }
3401
+
3402
+ declare class CubeBox extends CubeChild<IBox.Data> {
3403
+ protected _status: BoxStatus;
3404
+ constructor(note: Note, data: IBox.Data, pcube: CubeChild);
3405
+ get adapter(): AdapterCubeBox;
3406
+ get status(): BoxStatus;
3407
+ get children(): CubeChild[];
3408
+ get component(): any;
3409
+ get can_merge(): boolean;
3410
+ get attrs(): IBox.Attrs;
3411
+ get meta(): INote.CubeMeta<INote.Cubes>;
3412
+ get is_empty(): boolean;
3413
+ build_child(data: IBox.Data): void;
3414
+ export(): IBox.Data;
3415
+ gc(): void;
3416
+ get_valid_index(pos: number | INote.CubeSide): number;
3417
+ }
3418
+
3419
+ declare class FlashCardStatus extends CubeStatusBase<IFlashCard.Data> {
3420
+ private _face;
3421
+ private _editing;
3422
+ private _fill_target;
3423
+ get face(): IFlashCard.Face;
3424
+ set face(value: IFlashCard.Face);
3425
+ get editing(): boolean;
3426
+ set editing(value: boolean);
3427
+ get fill_target(): IFlashCard.Face | null;
3428
+ set fill_target(value: IFlashCard.Face | null);
3429
+ get css(): {
3430
+ width: string;
3431
+ height: string;
3432
+ };
3433
+ }
3434
+
3435
+ declare class ReceiverFlashCard extends ReceiverChild<CubeFlashCard> {
3436
+ protected cursor_in_head(_command: ICommandCursor.InHead): Recorder;
3437
+ protected cursor_in_tail(_command: ICommandCursor.InTail): Recorder;
3438
+ protected delete_edge(_command: ICommandCube.DeleteEdge): Recorder;
3439
+ protected delete_faces(command: ICommandCube.DeleteChild): Recorder;
3440
+ }
3441
+
3442
+ declare class CubeFlashCard extends CubeChild<IFlashCard.Data> {
3443
+ protected _status: FlashCardStatus;
3444
+ private remove_fill_tip?;
3445
+ private remove_escape_listener?;
3446
+ constructor(note: Note, data: IFlashCard.Data, pcube: INote.NoteCube);
3447
+ get adapter(): AdapterCubeFlashCard;
3448
+ get component(): any;
3449
+ get status(): FlashCardStatus;
3450
+ get attrs(): IFlashCard.Attrs;
3451
+ get question(): CubeBox;
3452
+ get answer(): CubeBox;
3453
+ get current_box(): CubeBox;
3454
+ get visible_tail_cube(): CubeChild;
3455
+ find_next_cube(_id: string): undefined;
3456
+ find_prev_cube(_id: string): undefined;
3457
+ get is_empty(): boolean;
3458
+ get can_degradation(): boolean;
3459
+ get is_delete_edge_boundary(): boolean;
3460
+ protected get atomic_child(): string[];
3461
+ allows_child_editing(child: CubeChild): boolean;
3462
+ protected build_child(data: IFlashCard.Data): void;
3463
+ export(): IFlashCard.Data;
3464
+ private clear_cursor;
3465
+ focus_face(): Promise<void>;
3466
+ set_editing(editing: boolean): void;
3467
+ flip(): void;
3468
+ start_fill(): void;
3469
+ cancel_fill(): void;
3470
+ confirm_fill(): void | IUiTips.RemoveItemFunc;
3471
+ gc(): void;
3472
+ }
3473
+
3474
+ declare class AdapterCubeFlashCardDeck extends CubeAdapterBase {
3475
+ get meta(): INote.CubeMeta;
3476
+ normalize_attrs(attrs?: Partial<IFlashCardDeck.Attrs>): IFlashCardDeck.Attrs;
3477
+ get_data(info?: IFlashCard.Data[], css?: Record<string, any>, attrs?: Partial<IFlashCardDeck.Attrs>): IFlashCardDeck.Data;
3478
+ update_data(versions: INote.CubesVersion, data: IFlashCardDeck.Data): ICubeBase.CubeUpdateResult<IFlashCardDeck.Data>;
3479
+ replace_id(versions: INote.CubesVersion, data: IFlashCardDeck.Data, map?: Record<string, string>): ICubeBase.ReplaceIdResult<IFlashCardDeck.Data>;
3480
+ }
3481
+
3482
+ declare class FlashCardDeckStatus extends CubeStatusBase<IFlashCardDeck.Data> {
3483
+ private _cards;
3484
+ private _active_id;
3485
+ get cards(): CubeFlashCard[];
3486
+ get attrs(): IFlashCardDeck.Attrs;
3487
+ get active_id(): string | null;
3488
+ get active_card(): CubeFlashCard | undefined;
3489
+ init(): void;
3490
+ update_cards(preferred?: string | null): void;
3491
+ set_active(id: string | null): void;
3492
+ }
3493
+
3494
+ declare class ReceiverFlashCardDeck extends ReceiverChild<CubeFlashCardDeck> {
3495
+ private cards;
3496
+ protected insert_cards(command: ICommandCube.InsertChild): Recorder | undefined;
3497
+ protected delete_cards(command: ICommandCube.DeleteChild): Recorder | undefined;
3498
+ protected reset_cards(command: ICommandCube.Reset): Recorder;
3499
+ protected reorder_card(command: ICommandCube.Reorder): Recorder | undefined;
3500
+ protected cursor_in_head(_command: ICommandCursor.InHead): Recorder;
3501
+ protected cursor_in_tail(_command: ICommandCursor.InTail): Recorder;
3502
+ protected delete_edge(_command: ICommandCube.DeleteEdge): Recorder;
3503
+ protected delete_adjacent(command: ICommandCube.DeleteAdjacent): Recorder;
3504
+ }
3505
+
3506
+ declare class CubeFlashCardDeck extends CubeChild<IFlashCardDeck.Data> {
3507
+ protected _status: FlashCardDeckStatus;
3508
+ constructor(note: Note, data: IFlashCardDeck.Data, pcube: INote.NoteCube);
3509
+ get adapter(): AdapterCubeFlashCardDeck;
3510
+ get component(): any;
3511
+ get status(): FlashCardDeckStatus;
3512
+ get cards(): CubeFlashCard[];
3513
+ get can_degradation(): boolean;
3514
+ get is_delete_edge_boundary(): boolean;
3515
+ protected get atomic_child(): string[];
3516
+ get visible_tail_cube(): CubeChild;
3517
+ find_next_cube(_id: string): undefined;
3518
+ find_prev_cube(_id: string): undefined;
3519
+ allows_child_editing(child: CubeChild): boolean;
3520
+ protected build_child(data: IFlashCardDeck.Data): void;
3521
+ export(): IFlashCardDeck.Data;
3522
+ /** Copying a selected child produces a standalone card at the displayed deck size. */
3523
+ copy(left: number, right: number): IFlashCard.Data[];
3524
+ splice_cards(index: number, count: number, data?: IFlashCard.Data[]): void;
3525
+ reorder_card(id: string, index: number): void;
3526
+ add_card(): void;
3527
+ step(delta: number): void;
3528
+ gc(): void;
3529
+ }
3530
+
3359
3531
  declare class AdapterCubeMusic extends CubeAdapterBase {
3360
3532
  get meta(): INote.CubeMeta;
3361
3533
  get_data(info?: IMusic.Track[], css?: Record<string, string>, attrs?: Partial<IMusic.Attrs>): IMusic.Data;
@@ -3521,6 +3693,157 @@ declare class CubeMusic extends CubeChild<IMusic.Data> {
3521
3693
  gc(): void;
3522
3694
  }
3523
3695
 
3696
+ declare class AdapterCubeVideo extends CubeAdapterBase {
3697
+ get meta(): INote.CubeMeta;
3698
+ normalize_resource(value: unknown): IVideo.Resource | undefined;
3699
+ normalize_info(info?: Partial<IVideo.Info>): IVideo.Info;
3700
+ normalize_attrs(attrs?: Partial<IVideo.Attrs>): IVideo.Attrs;
3701
+ get_data(info?: Partial<IVideo.Info>, css?: Record<string, any>, attrs?: Partial<IVideo.Attrs>): IVideo.Data;
3702
+ update_data(versions: INote.CubesVersion, data: IVideo.Data): ICubeBase.CubeUpdateResult<IVideo.Data>;
3703
+ replace_id(_versions: INote.CubesVersion, data: IVideo.Data, map?: Record<string, string>): ICubeBase.ReplaceIdResult<IVideo.Data>;
3704
+ }
3705
+
3706
+ declare class VideoStatus extends CubeStatusBase<IVideo.Data> {
3707
+ readonly player: {
3708
+ playing: boolean;
3709
+ loading: boolean;
3710
+ error: string;
3711
+ current_time: number;
3712
+ duration: number;
3713
+ video_width: number;
3714
+ video_height: number;
3715
+ volume: number;
3716
+ muted: boolean;
3717
+ rate: number;
3718
+ buffered: [number, number][];
3719
+ };
3720
+ private _importing;
3721
+ private _import_error;
3722
+ get attrs(): IVideo.Attrs;
3723
+ get source(): {
3724
+ kind: "file";
3725
+ file: {
3726
+ key: string;
3727
+ name: string;
3728
+ size: number;
3729
+ mime?: string | undefined;
3730
+ };
3731
+ } | null;
3732
+ get poster(): {
3733
+ key: string;
3734
+ name: string;
3735
+ size: number;
3736
+ mime?: string | undefined;
3737
+ } | undefined;
3738
+ get importing(): boolean;
3739
+ set importing(value: boolean);
3740
+ get import_error(): string;
3741
+ set import_error(value: string);
3742
+ update_video(info: IVideo.Info): void;
3743
+ reset_playback(): void;
3744
+ }
3745
+
3746
+ /** Owns one native media element; controls and playback state are supplied by the SDK. */
3747
+ declare class VideoPlayer {
3748
+ private cube;
3749
+ private element?;
3750
+ private removers;
3751
+ private generation;
3752
+ constructor(cube: CubeVideo);
3753
+ attach(element: HTMLVideoElement): void;
3754
+ refresh(): Promise<void>;
3755
+ toggle(): Promise<void>;
3756
+ pause(): void;
3757
+ seek(time: number): void;
3758
+ volume(value: number): void;
3759
+ mute(): void;
3760
+ rate(value: number): void;
3761
+ detach(): void;
3762
+ }
3763
+
3764
+ declare class ReceiverVideo extends ReceiverChild<CubeVideo> {
3765
+ protected replace(command: IVideo.Replace): Recorder;
3766
+ }
3767
+
3768
+ declare class CubeVideo extends CubeChild<IVideo.Data> {
3769
+ protected _status: VideoStatus;
3770
+ readonly player: VideoPlayer;
3771
+ assets_ready: Promise<boolean>;
3772
+ private copy_from?;
3773
+ import_generation: number;
3774
+ disposed: boolean;
3775
+ constructor(note: Note, data: IVideo.Data, pcube: INote.NoteCube);
3776
+ get adapter(): AdapterCubeVideo;
3777
+ get component(): any;
3778
+ get status(): VideoStatus;
3779
+ get attrs(): IVideo.Attrs;
3780
+ get is_empty(): boolean;
3781
+ get text(): string;
3782
+ get can_degradation(): boolean;
3783
+ build_child(): void;
3784
+ private copy_assets;
3785
+ retry_load(): Promise<void>;
3786
+ private retain;
3787
+ private release;
3788
+ replace_video(info: IVideo.Info): void;
3789
+ export(): IVideo.Data;
3790
+ gc(): void;
3791
+ }
3792
+
3793
+ declare const is_video_file: (file: File) => boolean;
3794
+ declare function import_video_file(cube: CubeVideo, file: File): Promise<void>;
3795
+ declare function add_video_file(cube: CubeVideo): Promise<void>;
3796
+
3797
+ declare class AdapterCubeHabitTracker extends CubeAdapterBase {
3798
+ get meta(): INote.CubeMeta;
3799
+ normalize_info(info?: Partial<IHabitTracker.Info>): IHabitTracker.Info;
3800
+ normalize_attrs(attrs?: Partial<IHabitTracker.Attrs>): IHabitTracker.Attrs;
3801
+ get_data(info?: Partial<IHabitTracker.Info>, css?: Record<string, any>, attrs?: Partial<IHabitTracker.Attrs>): IHabitTracker.Data;
3802
+ update_data(versions: INote.CubesVersion, data: IHabitTracker.Data): ICubeBase.CubeUpdateResult<IHabitTracker.Data>;
3803
+ replace_id(_versions: INote.CubesVersion, data: IHabitTracker.Data, map?: Record<string, string>): ICubeBase.ReplaceIdResult<IHabitTracker.Data>;
3804
+ }
3805
+
3806
+ declare class HabitStatus extends CubeStatusBase<IHabitTracker.Data> {
3807
+ readonly anchor: _vue_reactivity.Ref<string | undefined, string | undefined>;
3808
+ readonly temporary_view: _vue_reactivity.Ref<IHabitTracker.View | undefined, IHabitTracker.View | undefined>;
3809
+ readonly editing: _vue_reactivity.Ref<boolean, boolean>;
3810
+ get attrs(): IHabitTracker.Attrs;
3811
+ get today(): string;
3812
+ get date(): string;
3813
+ get view(): IHabitTracker.View;
3814
+ update_details(): void;
3815
+ update_date(date: string, checked: boolean): void;
3816
+ }
3817
+
3818
+ declare class ReceiverHabitTracker extends ReceiverChild<CubeHabitTracker> {
3819
+ protected set_date(command: IHabitTracker.SetDate): Recorder | undefined;
3820
+ protected configure(command: IHabitTracker.Configure): Recorder | undefined;
3821
+ }
3822
+
3823
+ declare class CubeHabitTracker extends CubeChild<IHabitTracker.Data> {
3824
+ protected _status: HabitStatus;
3825
+ context_date?: string;
3826
+ disposed: boolean;
3827
+ constructor(note: Note, data: IHabitTracker.Data, pcube: INote.NoteCube);
3828
+ get adapter(): AdapterCubeHabitTracker;
3829
+ get component(): any;
3830
+ get status(): HabitStatus;
3831
+ get attrs(): IHabitTracker.Attrs;
3832
+ get is_empty(): boolean;
3833
+ get text(): string;
3834
+ get can_degradation(): boolean;
3835
+ get editable(): boolean;
3836
+ build_child(): void;
3837
+ apply_date(date: string, checked: boolean): void;
3838
+ toggle_date(date?: string): void;
3839
+ configure(title: string, description: string): void;
3840
+ set_view(view: IHabitTracker.View): void;
3841
+ navigate(delta: number): void;
3842
+ edit(): void;
3843
+ export(): IHabitTracker.Data;
3844
+ gc(): void;
3845
+ }
3846
+
3524
3847
  declare class AdapterCubeBadge extends CubeAdapterBase {
3525
3848
  get supports_inline_scale(): boolean;
3526
3849
  get meta(): INote.CubeMeta;
@@ -3852,43 +4175,6 @@ declare class CubeBoxRoot extends CubeChild<ICubeBoxRoot.Data> {
3852
4175
  get_valid_index(pos: number | INote.CubeSide): number;
3853
4176
  }
3854
4177
 
3855
- declare class AdapterCubeBox extends CubeAdapterBase {
3856
- get meta(): INote.CubeMeta;
3857
- get_data(content?: ICubeBase.Data[], css?: Record<string, any>, attrs?: Record<string, any>): IBox.Data;
3858
- replace_id(versions: INote.CubesVersion, data: IBox.Data, map?: Record<string, string>): ICubeBase.ReplaceIdResult<IBox.Data>;
3859
- update_data(versions: INote.CubesVersion, data: IBox.Data): ICubeBase.CubeUpdateResult;
3860
- }
3861
-
3862
- declare class BoxStatus extends CubeStatusBase<IBox.Data> {
3863
- constructor(cube: CubeBox);
3864
- }
3865
-
3866
- declare class ReceiverBox extends ReceiverChild<CubeBox> {
3867
- on_merge(command: ICommandCube.Merge): Recorder | void;
3868
- on_box_order(command: ICommandCube.Reorder): Recorder | void;
3869
- on_insert_child(command: ICommandCube.InsertChild): Recorder | void;
3870
- on_delete_child(command: ICommandCube.DeleteChild): Recorder | void;
3871
- on_box_reset(command: ICommandCube.Reset): Recorder | void;
3872
- on_cube_delete_adjacent(command: ICommandCube.DeleteAdjacent): Recorder;
3873
- }
3874
-
3875
- declare class CubeBox extends CubeChild<IBox.Data> {
3876
- protected _status: BoxStatus;
3877
- constructor(note: Note, data: IBox.Data, pcube: CubeChild);
3878
- get adapter(): AdapterCubeBox;
3879
- get status(): BoxStatus;
3880
- get children(): CubeChild[];
3881
- get component(): any;
3882
- get can_merge(): boolean;
3883
- get attrs(): IBox.Attrs;
3884
- get meta(): INote.CubeMeta<INote.Cubes>;
3885
- get is_empty(): boolean;
3886
- build_child(data: IBox.Data): void;
3887
- export(): IBox.Data;
3888
- gc(): void;
3889
- get_valid_index(pos: number | INote.CubeSide): number;
3890
- }
3891
-
3892
4178
  declare class AdapterCubeBoxFolder extends CubeAdapterBase {
3893
4179
  get meta(): INote.CubeMeta;
3894
4180
  filter_out_empty(cubes: ICubeBase.Data[]): ICubeBase.Data[];
@@ -5362,7 +5648,11 @@ declare const AdapterFormula: AdapterCubeFormula;
5362
5648
  declare const AdapterImg: AdapterCubeImg;
5363
5649
  declare const AdapterGallery: AdapterCubeGallery;
5364
5650
  declare const AdapterFiles: AdapterCubeFiles;
5651
+ declare const AdapterFlashCard: AdapterCubeFlashCard;
5652
+ declare const AdapterFlashCardDeck: AdapterCubeFlashCardDeck;
5365
5653
  declare const AdapterMusic: AdapterCubeMusic;
5654
+ declare const AdapterVideo: AdapterCubeVideo;
5655
+ declare const AdapterHabitTracker: AdapterCubeHabitTracker;
5366
5656
  declare const AdapterKey: AdapterCubeKey;
5367
5657
  declare const AdapterLine: AdapterCubeLine;
5368
5658
  declare const AdapterLinker: AdapterCubeLinker;
@@ -6573,6 +6863,67 @@ declare namespace ICommandMusic {
6573
6863
  }
6574
6864
  }
6575
6865
 
6866
+ declare namespace IVideo {
6867
+ type Data = V1;
6868
+ interface V1 extends ICubeBase.Data<"video"> {
6869
+ info: Info;
6870
+ attrs: Attrs;
6871
+ }
6872
+ interface Resource {
6873
+ key: string;
6874
+ name: string;
6875
+ size: number;
6876
+ mime?: string;
6877
+ }
6878
+ interface FileSource {
6879
+ kind: "file";
6880
+ file: Resource;
6881
+ }
6882
+ interface Info {
6883
+ source: FileSource | null;
6884
+ poster?: Resource;
6885
+ }
6886
+ interface Attrs extends ICubeBase.Attrs {
6887
+ title?: string;
6888
+ /** Video viewport dimensions, excluding the custom control bar. */
6889
+ width: number;
6890
+ height: number;
6891
+ }
6892
+ interface Replace extends ICommandCube.BaseCommand {
6893
+ name: "video:replace";
6894
+ info: Info;
6895
+ }
6896
+ }
6897
+
6898
+ declare namespace IHabitTracker {
6899
+ type Data = V1;
6900
+ interface V1 extends ICubeBase.Data<"habit-tracker"> {
6901
+ info: Info;
6902
+ attrs: Attrs;
6903
+ }
6904
+ interface Info {
6905
+ name: string;
6906
+ description?: string;
6907
+ /** Sorted, unique local calendar dates (YYYY-MM-DD), never UTC timestamps. */
6908
+ records: string[];
6909
+ }
6910
+ type View = "week" | "month";
6911
+ interface Attrs extends ICubeBase.Attrs {
6912
+ view: View;
6913
+ width: number;
6914
+ }
6915
+ interface SetDate extends ICommandCube.BaseCommand {
6916
+ name: "habit-tracker:set-date";
6917
+ date: string;
6918
+ checked: boolean;
6919
+ }
6920
+ interface Configure extends ICommandCube.BaseCommand {
6921
+ name: "habit-tracker:configure";
6922
+ title: string;
6923
+ description: string;
6924
+ }
6925
+ }
6926
+
6576
6927
  declare namespace INoteTools {
6577
6928
  interface CubePick {
6578
6929
  head: ICubeBase.Data[];
@@ -7334,6 +7685,37 @@ declare namespace ICommandRt {
7334
7685
  }
7335
7686
  }
7336
7687
 
7688
+ declare namespace IFlashCard {
7689
+ type Data = V1;
7690
+ interface V1 extends ICubeBase.Data<"flash-card"> {
7691
+ info: Info;
7692
+ attrs: Attrs;
7693
+ }
7694
+ interface Info {
7695
+ question: IBox.Data;
7696
+ answer: IBox.Data;
7697
+ }
7698
+ interface Attrs extends ICubeBase.Attrs {
7699
+ /** Shared outer dimensions of both faces, in CSS pixels. */
7700
+ width: number;
7701
+ height: number;
7702
+ }
7703
+ type Face = "question" | "answer";
7704
+ }
7705
+
7706
+ declare namespace IFlashCardDeck {
7707
+ type Data = V1;
7708
+ interface V1 extends ICubeBase.Data<"flash-cards"> {
7709
+ info: IFlashCard.Data[];
7710
+ attrs: Attrs;
7711
+ }
7712
+ interface Attrs extends ICubeBase.Attrs {
7713
+ /** Dimensions of each card, excluding the rotated stack's extra bounds. */
7714
+ width: number;
7715
+ height: number;
7716
+ }
7717
+ }
7718
+
7337
7719
  declare namespace ICubeBase {
7338
7720
  type CubeId = string;
7339
7721
  type DeleteEdgeStrategy = "remove-self" | "merge" | "cursor-transfer" | "degradation" | "bubble" | "stop";
@@ -7534,8 +7916,8 @@ declare enum _PlayStatus {
7534
7916
  declare namespace INoteCourier { }
7535
7917
 
7536
7918
  declare namespace INote {
7537
- type AssetType = "image" | "audio" | "attach";
7538
- type Cubes = (string & {}) | "api" | "annotation" | "badge" | "box" | "box-root" | "box-folder" | "box-columns" | "checkbox" | "code" | "counter" | "doc" | "datetime" | "detail-list" | "files" | "formula" | "gallery" | "img" | "key" | "lost" | "line" | "list" | "list-ordered" | "linker" | "link" | "map" | "submap" | "music" | "node" | "postil" | "rating" | "rt" | "text" | "tip" | "timeline" | "todo" | "table";
7919
+ type AssetType = "image" | "audio" | "video" | "attach";
7920
+ type Cubes = (string & {}) | "api" | "annotation" | "badge" | "box" | "box-root" | "box-folder" | "box-columns" | "checkbox" | "code" | "counter" | "doc" | "datetime" | "detail-list" | "files" | "flash-card" | "flash-cards" | "formula" | "gallery" | "img" | "key" | "lost" | "line" | "list" | "list-ordered" | "linker" | "link" | "map" | "submap" | "music" | "video" | "node" | "postil" | "rating" | "rt" | "text" | "tip" | "timeline" | "todo" | "table";
7539
7921
  type Cores = "courier" | "cursor" | "config" | "cubes" | "clipboard" | "event" | "formula" | "float" | "painter" | "player" | "hotkeys" | "history" | "scope" | "flag";
7540
7922
  type Mode = "read" | "edit" | "export";
7541
7923
  type ModeNames = Record<Mode, string>;
@@ -7585,6 +7967,7 @@ declare namespace INote {
7585
7967
  interface AssetMap {
7586
7968
  images: Record<string, number>;
7587
7969
  audio?: Record<string, number>;
7970
+ video?: Record<string, number>;
7588
7971
  attach?: Record<string, number>;
7589
7972
  }
7590
7973
  type ArchiveNoteType = "note" | "mapnote" | (string & {});
@@ -8511,6 +8894,15 @@ declare class CommandMusic {
8511
8894
  static update_attrs(id: string, attrs: ICommandMusic.UpdateAttrs["attrs"]): ICommandMusic.UpdateAttrs;
8512
8895
  }
8513
8896
 
8897
+ declare class CommandVideo {
8898
+ static replace(id: string, info: IVideo.Info): IVideo.Replace;
8899
+ }
8900
+
8901
+ declare class CommandHabitTracker {
8902
+ static set_date(id: string, date: string, checked: boolean): IHabitTracker.SetDate;
8903
+ static configure(id: string, title: string, description?: string): IHabitTracker.Configure;
8904
+ }
8905
+
8514
8906
  type ReceiverConstructor = new (cube: CubeBase) => ReceiverBase;
8515
8907
  declare class ReceiverRegistry {
8516
8908
  create(cube: CubeBase, fallback?: new (cube: any) => ReceiverBase): ReceiverBase;
@@ -8783,6 +9175,31 @@ declare class MapTools {
8783
9175
  static get_rect_area(from: IMath.Point, to: IMath.Point, radius?: number): string;
8784
9176
  }
8785
9177
 
9178
+ /**
9179
+ * 管理当前页面中的交互式笔记及其文档级状态。
9180
+ *
9181
+ * 所有 DOM 激活入口统一监听在 documentElement 的捕获阶段,因此不会受到
9182
+ * Cube 内部 stopPropagation() 的影响,也不需要各个组件重复维护监听器。
9183
+ */
9184
+ declare class NoteManagerGlobal {
9185
+ protected _active_note?: Note;
9186
+ protected _notes: Set<Note>;
9187
+ protected _listening: boolean;
9188
+ protected _activate_from_event: EventListener;
9189
+ get active_note(): Note | undefined;
9190
+ get notes(): Set<Note>;
9191
+ is_active(note: Note): boolean;
9192
+ activate(note: Note): boolean;
9193
+ register(note: Note): void;
9194
+ unregister(note: Note): void;
9195
+ protected listen(): void;
9196
+ protected unlisten(): void;
9197
+ /** 按事件传播路径由内向外匹配 Note,自然支持笔记容器嵌套。 */
9198
+ protected find_note(event: Event): Note | undefined;
9199
+ }
9200
+ /** 当前页面唯一的 Note 管理器。 */
9201
+ declare const NoteManager: NoteManagerGlobal;
9202
+
8786
9203
  /** Shared runtime clock for all Note instances in this browser context. */
8787
9204
  declare const NoteClock: INoteClock.Api;
8788
9205
 
@@ -8851,4 +9268,4 @@ declare class MobileReadonlyViewer {
8851
9268
  protected get guard_events(): string[];
8852
9269
  }
8853
9270
 
8854
- export { AccentEffect, AdapterApi, AdapterBadge, AdapterBaseUi, AdapterBox, AdapterBoxColumns, AdapterBoxFolder, AdapterBoxRoot, AdapterCheckbox, AdapterCode, AdapterCounter, AdapterCubes, AdapterDatetime, AdapterDetailList, AdapterDoc, AdapterFiles, AdapterFormula, AdapterGallery, AdapterImg, AdapterKey, AdapterLine, AdapterLink, AdapterLinker, AdapterList, AdapterListOrdered, AdapterLost, AdapterMap, AdapterMusic, AdapterNode, AdapterPostil, AdapterRating, AdapterRt, AdapterSubmap, AdapterTable, AdapterText, AdapterTimeline, AdapterTip, AdapterTodo, AdapterUi, AdapterUiAccent, AdapterUiAi, AdapterUiCatalogue, AdapterUiConfig, AdapterUiDialog, AdapterUiDialogCubeList, AdapterUiDict, AdapterUiFloat, AdapterUiMenubar, AdapterUiPreset, AdapterUiSearch, AdapterUiSidebar, AdapterUiStatusbar, AdapterUiTheme, AdapterUiTips, AdapterUiToolbar, ApiStatus, BadgeStatus, BoxFolderStatus, BoxRootStatus, BoxStatus, CheckboxStatus, CodeStatus, CommandApi, CommandBadge, CommandBoxFolder, CommandBoxRoot, CommandCheckbox, CommandCode, CommandCounter, CommandCube, CommandCursor, CommandDateTime, CommandDetailList, CommandFiles, CommandFormula, CommandGallery, CommandKey, CommandLink, CommandLinker, CommandList, CommandListOrdered, CommandMap, CommandMusic, CommandNode, CommandRating, CommandRt, CommandTable, CommandText, CommandTimeline, CommandTodo, ConstColors, ConvertorMd, CubeAdapterBase, CubeApi, CubeBadge, CubeBase, CubeBox, CubeBoxColumns, CubeBoxFolder, CubeBoxRoot, CubeCheckbox, CubeChild, CubeCode, CubeCounter, CubeDatetime, CubeDetailList, CubeDoc, CubeFiles, CubeFormula, CubeGallery, CubeImg, CubeKey, CubeLine, CubeLink, CubeLinker, CubeList, CubeListOrdered, CubeListenerBase, CubeLost, CubeMap, CubeMusic, CubeNode, CubePostil, CubeRating, CubeRoot, CubeRt, CubeStatusBase, CubeStatusBaseRoot, CubeSubMap, CubeTable, CubeText, CubeTimeline, CubeTip, CubeTodo, DatetimeStatus, DetailListStatus, DocStatus, EventBubble, FormulaStatus, GalleryStatus, type HotkeyPlatform, IApi, IBadge, IBox, ICheckbox, ICode, ICommandApi, ICommandBadge, ICommandCheckbox, ICommandCode, ICommandCounter, ICommandCube, ICommandCursor, ICommandDateTime, ICommandDetailList, ICommandDoc, ICommandFiles, ICommandFormula, ICommandGallery, ICommandKey, ICommandLink, ICommandLinker, ICommandList, ICommandListOrdered, ICommandMap, ICommandMusic, ICommandNode, ICommandRating, ICommandRt, ICommandTable, ICommandText, ICommandTimeline, ICommandTodo, ICounter, ICubeBase, ICubeBaseChild, ICubeBoxColumns, ICubeBoxFolder, ICubeBoxRoot, ICubeHandler, ICubeRootBase, ICubesInteraction, ICubesMenu, IDateTime, IDetailList, IDoc, IFiles, IFormula, IGallery, IImg, IKey, ILine, ILink, ILinker, IList, IListOrdered, ILost, IMap, IMapBase, IMapExport, IMapInteraction, IMapTools, IMenuNode, IMiniMap, IMisc, type IMobileReadonlyViewerInput, IMusic, INode, INodeBase, INodeBaseEnv, INodeDrag, INote, INoteApi, INoteAssets, INoteClipboard, INoteClock, INoteConvertor, INoteCourier, INoteCursor, INoteEvent, INoteFlag, INoteFloat, INoteHistory, INoteInteraction, INoteMod, INoteScope, INoteTools, IPostil, IRating, IRt, ISubMap, ITable, IText, ITimeline, ITip, ITodo, IUi, IUiAccent, IUiAi, IUiCatalogue, IUiConfig, IUiDialog, IUiDialogCss, 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, type LyricCue, type LyricDiagnostic, type LyricDocument, type LyricFormat, type LyricLine, type LyricWord, Map2D, MapCanvas, MapChild, MapExportDefaults, MapExporter, MapHotkeys, MapInteraction, MapNodeBase, MapNodeLayoutEnv, MapStatus, MapTools, Matrix2D, MenuApi, MenuBadge, MenuBase, MenuBox, MenuBoxColumns, MenuBoxFolder, MenuBoxRoot, MenuCheckbox, MenuCode, MenuCounter, MenuDatetime, MenuDetailList, MenuFiles, MenuGallery, MenuImg, MenuKey, MenuLink, MenuList, MenuListOrdered, MenuMusic, MenuNode, MenuRating, MenuSubmap, MenuTable, MenuTimeline, MenuTip, MenuTodo, MenusCube, MenusCubeRegistry, MobileReadonlyViewer, type MusicPlaybackState, MusicPlayer, MusicPlayerGlobal, NodeBase2D, NodeLayout, NodeLayoutInvert, NodeLayoutMeter, NodeLineStatus, NodeObserver, NodeShape, NodeStatus, NodeStatusBase, Note, NoteAction, NoteAnchor, NoteApi, NoteAssets, NoteBase, NoteClipBoard, NoteClock, 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, ReceiverCheckbox, ReceiverChild, ReceiverCode, ReceiverCounter, ReceiverCubes, ReceiverDatetime, ReceiverDetailList, ReceiverDoc, ReceiverFiles, ReceiverFormula, ReceiverGallery, ReceiverImg, ReceiverKey, ReceiverLine, ReceiverLink, ReceiverLinker, ReceiverList, ReceiverListOrdered, ReceiverLost, ReceiverMap, ReceiverMapChild, ReceiverMusic, 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, ToolItemBase, ToolbarPanel, type ToolbarPanelItem, type ToolbarPanelLevel, UI, UIAccent, 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, create_builtin_accents, create_paint_items, cube, cut_event_listener, define_cmd, detect_hotkey_platform, finalize_lyrics, find_active_cue, get_cmds, get_cube_menu, get_menu_base, get_menu_code, get_menu_counter, get_menu_files, get_menu_gallery, get_menu_inline_scale, get_menu_music, 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_clock_wakeup, use_list_item_drag, waiter_map_svg };
9271
+ export { AccentEffect, AdapterApi, AdapterBadge, AdapterBaseUi, AdapterBox, AdapterBoxColumns, AdapterBoxFolder, AdapterBoxRoot, AdapterCheckbox, AdapterCode, AdapterCounter, AdapterCubes, AdapterDatetime, AdapterDetailList, AdapterDoc, AdapterFiles, AdapterFlashCard, AdapterFlashCardDeck, AdapterFormula, AdapterGallery, AdapterHabitTracker, AdapterImg, AdapterKey, AdapterLine, AdapterLink, AdapterLinker, AdapterList, AdapterListOrdered, AdapterLost, AdapterMap, AdapterMusic, AdapterNode, AdapterPostil, AdapterRating, AdapterRt, AdapterSubmap, AdapterTable, AdapterText, AdapterTimeline, AdapterTip, AdapterTodo, AdapterUi, AdapterUiAccent, AdapterUiAi, AdapterUiCatalogue, AdapterUiConfig, AdapterUiDialog, AdapterUiDialogCubeList, AdapterUiDict, AdapterUiFloat, AdapterUiMenubar, AdapterUiPreset, AdapterUiSearch, AdapterUiSidebar, AdapterUiStatusbar, AdapterUiTheme, AdapterUiTips, AdapterUiToolbar, AdapterVideo, ApiStatus, BadgeStatus, BoxFolderStatus, BoxRootStatus, BoxStatus, CheckboxStatus, CodeStatus, CommandApi, CommandBadge, CommandBoxFolder, CommandBoxRoot, CommandCheckbox, CommandCode, CommandCounter, CommandCube, CommandCursor, CommandDateTime, CommandDetailList, CommandFiles, CommandFormula, CommandGallery, CommandHabitTracker, CommandKey, CommandLink, CommandLinker, CommandList, CommandListOrdered, CommandMap, CommandMusic, CommandNode, CommandRating, CommandRt, CommandTable, CommandText, CommandTimeline, CommandTodo, CommandVideo, ConstColors, ConvertorMd, CopyEventListener, CubeAdapterBase, CubeApi, CubeBadge, CubeBase, CubeBox, CubeBoxColumns, CubeBoxFolder, CubeBoxRoot, CubeCheckbox, CubeChild, CubeCode, CubeCounter, CubeDatetime, CubeDetailList, CubeDoc, CubeFiles, CubeFlashCard, CubeFlashCardDeck, CubeFormula, CubeGallery, CubeHabitTracker, CubeImg, CubeKey, CubeLine, CubeLink, CubeLinker, CubeList, CubeListOrdered, CubeListenerBase, CubeLost, CubeMap, CubeMusic, CubeNode, CubePostil, CubeRating, CubeRoot, CubeRt, CubeStatusBase, CubeStatusBaseRoot, CubeSubMap, CubeTable, CubeText, CubeTimeline, CubeTip, CubeTodo, CubeVideo, CutEventListener, DatetimeStatus, DetailListStatus, DocStatus, EventBubble, FlashCardDeckStatus, FlashCardStatus, FormulaStatus, GalleryStatus, type HotkeyPlatform, IApi, IBadge, IBox, ICheckbox, ICode, ICommandApi, ICommandBadge, ICommandCheckbox, ICommandCode, ICommandCounter, ICommandCube, ICommandCursor, ICommandDateTime, ICommandDetailList, ICommandDoc, ICommandFiles, ICommandFormula, ICommandGallery, ICommandKey, ICommandLink, ICommandLinker, ICommandList, ICommandListOrdered, ICommandMap, ICommandMusic, ICommandNode, ICommandRating, ICommandRt, ICommandTable, ICommandText, ICommandTimeline, ICommandTodo, ICounter, ICubeBase, ICubeBaseChild, ICubeBoxColumns, ICubeBoxFolder, ICubeBoxRoot, ICubeHandler, ICubeRootBase, ICubesInteraction, ICubesMenu, IDateTime, IDetailList, IDoc, IFiles, IFlashCard, IFlashCardDeck, IFormula, IGallery, IHabitTracker, IImg, IKey, ILine, ILink, ILinker, IList, IListOrdered, ILost, IMap, IMapBase, IMapExport, IMapInteraction, IMapTools, IMenuNode, IMiniMap, IMisc, type IMobileReadonlyViewerInput, IMusic, INode, INodeBase, INodeBaseEnv, INodeDrag, INote, INoteApi, INoteAssets, INoteClipboard, INoteClock, INoteConvertor, INoteCourier, INoteCursor, INoteEvent, INoteFlag, INoteFloat, INoteHistory, INoteInteraction, INoteMod, INoteScope, INoteTools, IPostil, IRating, IRt, ISubMap, ITable, IText, ITimeline, ITip, ITodo, IUi, IUiAccent, IUiAi, IUiCatalogue, IUiConfig, IUiDialog, IUiDialogCss, IUiDialogCubeList, IUiDict, IUiFloat, IUiMenubar, IUiPreset, IUiSidebar, IUiStatusbar, IUiTheme, IUiTips, IUiToolbar, IVideo, ImgStatus, InteractionBase, InteractionBinder, InteractionDetailList, InteractionList, InteractionListOrdered, InteractionTable, InteractionTodo, InteractionsCube, InteractionsCubeRegistry, KeyStatus, LayoutChecker, LineStatus, LinkStatus, LinkerLine, LinkerPoint, ListOrderedStatus, ListStatus, LostStatus, type LyricCue, type LyricDiagnostic, type LyricDocument, type LyricFormat, type LyricLine, type LyricWord, Map2D, MapCanvas, MapChild, MapEventListeners, MapExportDefaults, MapExporter, MapHotkeys, MapInteraction, MapNodeBase, MapNodeLayoutEnv, MapStatus, MapTools, Matrix2D, MenuApi, MenuBadge, MenuBase, MenuBox, MenuBoxColumns, MenuBoxFolder, MenuBoxRoot, MenuCheckbox, MenuCode, MenuCounter, MenuDatetime, MenuDetailList, MenuFiles, MenuGallery, MenuImg, MenuKey, MenuLink, MenuList, MenuListOrdered, MenuMusic, MenuNode, MenuRating, MenuSubmap, MenuTable, MenuTimeline, MenuTip, MenuTodo, MenusCube, MenusCubeRegistry, MobileReadonlyViewer, type MusicPlaybackState, MusicPlayer, MusicPlayerGlobal, NodeBase2D, NodeLayout, NodeLayoutInvert, NodeLayoutMeter, NodeLineStatus, NodeObserver, NodeShape, NodeStatus, NodeStatusBase, Note, NoteAction, NoteAnchor, NoteApi, NoteAssets, NoteBase, NoteClipBoard, NoteClock, NoteConvertor, NoteCourier, NoteCubes, NoteCursor, NoteEvent, NoteEventListenerBase, NoteFlag, NoteHistory, NoteHotkeyBase, NoteInteraction, NoteListener, NoteManager, NoteManagerGlobal, NoteMod, NotePainter, NoteScope, NoteScopes, NoteTools, PasteEventListener, PostilStatus, RatingStatus, ReceiverApi, ReceiverBadge, ReceiverBase, ReceiverBox, ReceiverBoxColumns, ReceiverBoxFolder, ReceiverBoxRoot, ReceiverCheckbox, ReceiverChild, ReceiverCode, ReceiverCounter, ReceiverCubes, ReceiverDatetime, ReceiverDetailList, ReceiverDoc, ReceiverFiles, ReceiverFlashCard, ReceiverFlashCardDeck, ReceiverFormula, ReceiverGallery, ReceiverHabitTracker, ReceiverImg, ReceiverKey, ReceiverLine, ReceiverLink, ReceiverLinker, ReceiverList, ReceiverListOrdered, ReceiverLost, ReceiverMap, ReceiverMapChild, ReceiverMusic, ReceiverNode, ReceiverPostil, ReceiverRating, ReceiverRegistry, ReceiverRoot, ReceiverRt, ReceiverSubMap, ReceiverTable, ReceiverText, ReceiverTimeline, ReceiverTip, ReceiverTodo, ReceiverVideo, Recorder, RtStatus, StatusItemBase, type StatusItemComponentProps, type StatusItemPlacement, SubmapStatus, TableStatus, TextStatus, type TimelineItem, TipStatus, TodoStatus, ToolBase, ToolItemBase, ToolbarPanel, type ToolbarPanelItem, type ToolbarPanelLevel, UI, UIAccent, UICatalogue, UIDict, UISearch, UIStatusbar, UITheme, UIToolbar, UiBase, UiConfig, UiFloat, UiMenubar, UiPreset, UiSidebar, UiTips, VideoStatus, 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, add_video_file, cmd, create_builtin_accents, create_paint_items, cube, define_cmd, detect_hotkey_platform, event_listener, finalize_lyrics, find_active_cue, get_cmds, get_cube_menu, get_menu_base, get_menu_code, get_menu_counter, get_menu_files, get_menu_gallery, get_menu_inline_scale, get_menu_music, get_menu_timeline, get_receiver_type, has_pcube_menu, hotkey, import_video_file, is_platform_shortcut, is_video_file, menu_status, move_rect, node_observer, normalize_platform, receiver, resolve_hotkey_shortcut, set_inline_scale, show_code_file_dialog, show_menu, supports_inline_scale, to_platform_shortcut, use_box_interaction, use_clock_wakeup, use_list_item_drag, waiter_map_svg };