ducjs 1.0.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 (707) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +42 -0
  3. package/dist/flatbuffers/duc/alternate-units.d.ts +21 -0
  4. package/dist/flatbuffers/duc/alternate-units.js +66 -0
  5. package/dist/flatbuffers/duc/angular-unit-system.d.ts +17 -0
  6. package/dist/flatbuffers/duc/angular-unit-system.js +50 -0
  7. package/dist/flatbuffers/duc/angular-units-format.d.ts +7 -0
  8. package/dist/flatbuffers/duc/angular-units-format.js +10 -0
  9. package/dist/flatbuffers/duc/axis.d.ts +5 -0
  10. package/dist/flatbuffers/duc/axis.js +8 -0
  11. package/dist/flatbuffers/duc/bezier-mirroring.d.ts +5 -0
  12. package/dist/flatbuffers/duc/bezier-mirroring.js +8 -0
  13. package/dist/flatbuffers/duc/blending.d.ts +9 -0
  14. package/dist/flatbuffers/duc/blending.js +12 -0
  15. package/dist/flatbuffers/duc/block-attachment.d.ts +4 -0
  16. package/dist/flatbuffers/duc/block-attachment.js +7 -0
  17. package/dist/flatbuffers/duc/boolean-operation.d.ts +6 -0
  18. package/dist/flatbuffers/duc/boolean-operation.js +9 -0
  19. package/dist/flatbuffers/duc/bound-element.d.ts +17 -0
  20. package/dist/flatbuffers/duc/bound-element.js +48 -0
  21. package/dist/flatbuffers/duc/checkpoint.d.ts +22 -0
  22. package/dist/flatbuffers/duc/checkpoint.js +75 -0
  23. package/dist/flatbuffers/duc/column-layout.d.ts +22 -0
  24. package/dist/flatbuffers/duc/column-layout.js +72 -0
  25. package/dist/flatbuffers/duc/column-type.d.ts +5 -0
  26. package/dist/flatbuffers/duc/column-type.js +8 -0
  27. package/dist/flatbuffers/duc/custom-hatch-pattern.d.ts +23 -0
  28. package/dist/flatbuffers/duc/custom-hatch-pattern.js +71 -0
  29. package/dist/flatbuffers/duc/datum-bracket-style.d.ts +5 -0
  30. package/dist/flatbuffers/duc/datum-bracket-style.js +8 -0
  31. package/dist/flatbuffers/duc/datum-reference.d.ts +17 -0
  32. package/dist/flatbuffers/duc/datum-reference.js +49 -0
  33. package/dist/flatbuffers/duc/datum-target-type.d.ts +6 -0
  34. package/dist/flatbuffers/duc/datum-target-type.js +9 -0
  35. package/dist/flatbuffers/duc/decimal-separator.d.ts +4 -0
  36. package/dist/flatbuffers/duc/decimal-separator.js +7 -0
  37. package/dist/flatbuffers/duc/delta.d.ts +20 -0
  38. package/dist/flatbuffers/duc/delta.js +64 -0
  39. package/dist/flatbuffers/duc/dictionary-entry.d.ts +17 -0
  40. package/dist/flatbuffers/duc/dictionary-entry.js +49 -0
  41. package/dist/flatbuffers/duc/dimension-baseline-data.d.ts +14 -0
  42. package/dist/flatbuffers/duc/dimension-baseline-data.js +40 -0
  43. package/dist/flatbuffers/duc/dimension-bindings.d.ts +17 -0
  44. package/dist/flatbuffers/duc/dimension-bindings.js +50 -0
  45. package/dist/flatbuffers/duc/dimension-continue-data.d.ts +14 -0
  46. package/dist/flatbuffers/duc/dimension-continue-data.js +40 -0
  47. package/dist/flatbuffers/duc/dimension-definition-points.d.ts +21 -0
  48. package/dist/flatbuffers/duc/dimension-definition-points.js +64 -0
  49. package/dist/flatbuffers/duc/dimension-ext-line-style.d.ts +18 -0
  50. package/dist/flatbuffers/duc/dimension-ext-line-style.js +57 -0
  51. package/dist/flatbuffers/duc/dimension-fit-rule.d.ts +6 -0
  52. package/dist/flatbuffers/duc/dimension-fit-rule.js +9 -0
  53. package/dist/flatbuffers/duc/dimension-fit-style.d.ts +19 -0
  54. package/dist/flatbuffers/duc/dimension-fit-style.js +58 -0
  55. package/dist/flatbuffers/duc/dimension-line-style.d.ts +16 -0
  56. package/dist/flatbuffers/duc/dimension-line-style.js +49 -0
  57. package/dist/flatbuffers/duc/dimension-symbol-style.d.ts +22 -0
  58. package/dist/flatbuffers/duc/dimension-symbol-style.js +72 -0
  59. package/dist/flatbuffers/duc/dimension-text-placement.d.ts +5 -0
  60. package/dist/flatbuffers/duc/dimension-text-placement.js +8 -0
  61. package/dist/flatbuffers/duc/dimension-tolerance-style.d.ts +24 -0
  62. package/dist/flatbuffers/duc/dimension-tolerance-style.js +71 -0
  63. package/dist/flatbuffers/duc/dimension-type.d.ts +15 -0
  64. package/dist/flatbuffers/duc/dimension-type.js +18 -0
  65. package/dist/flatbuffers/duc/dimension-units-format.d.ts +7 -0
  66. package/dist/flatbuffers/duc/dimension-units-format.js +10 -0
  67. package/dist/flatbuffers/duc/dimension-validation-rules.d.ts +25 -0
  68. package/dist/flatbuffers/duc/dimension-validation-rules.js +74 -0
  69. package/dist/flatbuffers/duc/duc-arrow-element.d.ts +16 -0
  70. package/dist/flatbuffers/duc/duc-arrow-element.js +49 -0
  71. package/dist/flatbuffers/duc/duc-block-attribute-definition-entry.d.ts +16 -0
  72. package/dist/flatbuffers/duc/duc-block-attribute-definition-entry.js +44 -0
  73. package/dist/flatbuffers/duc/duc-block-attribute-definition.d.ts +22 -0
  74. package/dist/flatbuffers/duc/duc-block-attribute-definition.js +64 -0
  75. package/dist/flatbuffers/duc/duc-block-duplication-array.d.ts +19 -0
  76. package/dist/flatbuffers/duc/duc-block-duplication-array.js +64 -0
  77. package/dist/flatbuffers/duc/duc-block-instance-element.d.ts +30 -0
  78. package/dist/flatbuffers/duc/duc-block-instance-element.js +94 -0
  79. package/dist/flatbuffers/duc/duc-block.d.ts +34 -0
  80. package/dist/flatbuffers/duc/duc-block.js +111 -0
  81. package/dist/flatbuffers/duc/duc-common-style.d.ts +16 -0
  82. package/dist/flatbuffers/duc/duc-common-style.js +44 -0
  83. package/dist/flatbuffers/duc/duc-dimension-element.d.ts +45 -0
  84. package/dist/flatbuffers/duc/duc-dimension-element.js +120 -0
  85. package/dist/flatbuffers/duc/duc-dimension-style.d.ts +28 -0
  86. package/dist/flatbuffers/duc/duc-dimension-style.js +76 -0
  87. package/dist/flatbuffers/duc/duc-doc-element.d.ts +33 -0
  88. package/dist/flatbuffers/duc/duc-doc-element.js +95 -0
  89. package/dist/flatbuffers/duc/duc-doc-style.d.ts +19 -0
  90. package/dist/flatbuffers/duc/duc-doc-style.js +52 -0
  91. package/dist/flatbuffers/duc/duc-element-base.d.ts +88 -0
  92. package/dist/flatbuffers/duc/duc-element-base.js +269 -0
  93. package/dist/flatbuffers/duc/duc-element-styles-base.d.ts +30 -0
  94. package/dist/flatbuffers/duc/duc-element-styles-base.js +103 -0
  95. package/dist/flatbuffers/duc/duc-ellipse-element.d.ts +22 -0
  96. package/dist/flatbuffers/duc/duc-ellipse-element.js +73 -0
  97. package/dist/flatbuffers/duc/duc-embeddable-element.d.ts +14 -0
  98. package/dist/flatbuffers/duc/duc-embeddable-element.js +41 -0
  99. package/dist/flatbuffers/duc/duc-external-file-data.d.ts +27 -0
  100. package/dist/flatbuffers/duc/duc-external-file-data.js +92 -0
  101. package/dist/flatbuffers/duc/duc-external-file-entry.d.ts +16 -0
  102. package/dist/flatbuffers/duc/duc-external-file-entry.js +44 -0
  103. package/dist/flatbuffers/duc/duc-feature-control-frame-element.d.ts +31 -0
  104. package/dist/flatbuffers/duc/duc-feature-control-frame-element.js +89 -0
  105. package/dist/flatbuffers/duc/duc-feature-control-frame-style.d.ts +25 -0
  106. package/dist/flatbuffers/duc/duc-feature-control-frame-style.js +68 -0
  107. package/dist/flatbuffers/duc/duc-frame-element.d.ts +14 -0
  108. package/dist/flatbuffers/duc/duc-frame-element.js +41 -0
  109. package/dist/flatbuffers/duc/duc-free-draw-element.d.ts +52 -0
  110. package/dist/flatbuffers/duc/duc-free-draw-element.js +154 -0
  111. package/dist/flatbuffers/duc/duc-free-draw-ends.d.ts +18 -0
  112. package/dist/flatbuffers/duc/duc-free-draw-ends.js +56 -0
  113. package/dist/flatbuffers/duc/duc-global-state.d.ts +37 -0
  114. package/dist/flatbuffers/duc/duc-global-state.js +121 -0
  115. package/dist/flatbuffers/duc/duc-group.d.ts +16 -0
  116. package/dist/flatbuffers/duc/duc-group.js +44 -0
  117. package/dist/flatbuffers/duc/duc-hatch-style.d.ts +28 -0
  118. package/dist/flatbuffers/duc/duc-hatch-style.js +79 -0
  119. package/dist/flatbuffers/duc/duc-head.d.ts +19 -0
  120. package/dist/flatbuffers/duc/duc-head.js +57 -0
  121. package/dist/flatbuffers/duc/duc-image-element.d.ts +35 -0
  122. package/dist/flatbuffers/duc/duc-image-element.js +91 -0
  123. package/dist/flatbuffers/duc/duc-image-filter.d.ts +15 -0
  124. package/dist/flatbuffers/duc/duc-image-filter.js +48 -0
  125. package/dist/flatbuffers/duc/duc-layer-overrides.d.ts +16 -0
  126. package/dist/flatbuffers/duc/duc-layer-overrides.js +44 -0
  127. package/dist/flatbuffers/duc/duc-layer.d.ts +21 -0
  128. package/dist/flatbuffers/duc/duc-layer.js +59 -0
  129. package/dist/flatbuffers/duc/duc-leader-element.d.ts +22 -0
  130. package/dist/flatbuffers/duc/duc-leader-element.js +60 -0
  131. package/dist/flatbuffers/duc/duc-leader-style.d.ts +30 -0
  132. package/dist/flatbuffers/duc/duc-leader-style.js +87 -0
  133. package/dist/flatbuffers/duc/duc-line-reference.d.ts +15 -0
  134. package/dist/flatbuffers/duc/duc-line-reference.js +43 -0
  135. package/dist/flatbuffers/duc/duc-line.d.ts +15 -0
  136. package/dist/flatbuffers/duc/duc-line.js +43 -0
  137. package/dist/flatbuffers/duc/duc-linear-element-base.d.ts +38 -0
  138. package/dist/flatbuffers/duc/duc-linear-element-base.js +124 -0
  139. package/dist/flatbuffers/duc/duc-linear-element.d.ts +16 -0
  140. package/dist/flatbuffers/duc/duc-linear-element.js +49 -0
  141. package/dist/flatbuffers/duc/duc-local-state.d.ts +68 -0
  142. package/dist/flatbuffers/duc/duc-local-state.js +206 -0
  143. package/dist/flatbuffers/duc/duc-mermaid-element.d.ts +23 -0
  144. package/dist/flatbuffers/duc/duc-mermaid-element.js +65 -0
  145. package/dist/flatbuffers/duc/duc-parametric-element.d.ts +16 -0
  146. package/dist/flatbuffers/duc/duc-parametric-element.js +44 -0
  147. package/dist/flatbuffers/duc/duc-path.d.ts +26 -0
  148. package/dist/flatbuffers/duc/duc-path.js +69 -0
  149. package/dist/flatbuffers/duc/duc-pdf-element.d.ts +17 -0
  150. package/dist/flatbuffers/duc/duc-pdf-element.js +49 -0
  151. package/dist/flatbuffers/duc/duc-plot-element.d.ts +19 -0
  152. package/dist/flatbuffers/duc/duc-plot-element.js +52 -0
  153. package/dist/flatbuffers/duc/duc-plot-style.d.ts +14 -0
  154. package/dist/flatbuffers/duc/duc-plot-style.js +41 -0
  155. package/dist/flatbuffers/duc/duc-point-binding.d.ts +26 -0
  156. package/dist/flatbuffers/duc/duc-point-binding.js +73 -0
  157. package/dist/flatbuffers/duc/duc-point.d.ts +18 -0
  158. package/dist/flatbuffers/duc/duc-point.js +57 -0
  159. package/dist/flatbuffers/duc/duc-polygon-element.d.ts +16 -0
  160. package/dist/flatbuffers/duc/duc-polygon-element.js +49 -0
  161. package/dist/flatbuffers/duc/duc-rectangle-element.d.ts +14 -0
  162. package/dist/flatbuffers/duc/duc-rectangle-element.js +41 -0
  163. package/dist/flatbuffers/duc/duc-region.d.ts +19 -0
  164. package/dist/flatbuffers/duc/duc-region.js +51 -0
  165. package/dist/flatbuffers/duc/duc-stack-base.d.ts +27 -0
  166. package/dist/flatbuffers/duc/duc-stack-base.js +78 -0
  167. package/dist/flatbuffers/duc/duc-stack-element-base.d.ts +23 -0
  168. package/dist/flatbuffers/duc/duc-stack-element-base.js +65 -0
  169. package/dist/flatbuffers/duc/duc-stack-like-styles.d.ts +16 -0
  170. package/dist/flatbuffers/duc/duc-stack-like-styles.js +48 -0
  171. package/dist/flatbuffers/duc/duc-table-auto-size.d.ts +15 -0
  172. package/dist/flatbuffers/duc/duc-table-auto-size.js +48 -0
  173. package/dist/flatbuffers/duc/duc-table-cell-entry.d.ts +16 -0
  174. package/dist/flatbuffers/duc/duc-table-cell-entry.js +44 -0
  175. package/dist/flatbuffers/duc/duc-table-cell-span.d.ts +15 -0
  176. package/dist/flatbuffers/duc/duc-table-cell-span.js +48 -0
  177. package/dist/flatbuffers/duc/duc-table-cell-style.d.ts +22 -0
  178. package/dist/flatbuffers/duc/duc-table-cell-style.js +59 -0
  179. package/dist/flatbuffers/duc/duc-table-cell.d.ts +27 -0
  180. package/dist/flatbuffers/duc/duc-table-cell.js +72 -0
  181. package/dist/flatbuffers/duc/duc-table-column-entry.d.ts +16 -0
  182. package/dist/flatbuffers/duc/duc-table-column-entry.js +44 -0
  183. package/dist/flatbuffers/duc/duc-table-column.d.ts +18 -0
  184. package/dist/flatbuffers/duc/duc-table-column.js +51 -0
  185. package/dist/flatbuffers/duc/duc-table-element.d.ts +51 -0
  186. package/dist/flatbuffers/duc/duc-table-element.js +167 -0
  187. package/dist/flatbuffers/duc/duc-table-row-entry.d.ts +16 -0
  188. package/dist/flatbuffers/duc/duc-table-row-entry.js +44 -0
  189. package/dist/flatbuffers/duc/duc-table-row.d.ts +18 -0
  190. package/dist/flatbuffers/duc/duc-table-row.js +51 -0
  191. package/dist/flatbuffers/duc/duc-table-style.d.ts +23 -0
  192. package/dist/flatbuffers/duc/duc-table-style.js +65 -0
  193. package/dist/flatbuffers/duc/duc-text-dynamic-dictionary-source.d.ts +14 -0
  194. package/dist/flatbuffers/duc/duc-text-dynamic-dictionary-source.js +40 -0
  195. package/dist/flatbuffers/duc/duc-text-dynamic-element-source.d.ts +17 -0
  196. package/dist/flatbuffers/duc/duc-text-dynamic-element-source.js +49 -0
  197. package/dist/flatbuffers/duc/duc-text-dynamic-part.d.ts +22 -0
  198. package/dist/flatbuffers/duc/duc-text-dynamic-part.js +58 -0
  199. package/dist/flatbuffers/duc/duc-text-dynamic-source-data.d.ts +9 -0
  200. package/dist/flatbuffers/duc/duc-text-dynamic-source-data.js +26 -0
  201. package/dist/flatbuffers/duc/duc-text-dynamic-source.d.ts +19 -0
  202. package/dist/flatbuffers/duc/duc-text-dynamic-source.js +58 -0
  203. package/dist/flatbuffers/duc/duc-text-element.d.ts +33 -0
  204. package/dist/flatbuffers/duc/duc-text-element.js +94 -0
  205. package/dist/flatbuffers/duc/duc-text-style.d.ts +44 -0
  206. package/dist/flatbuffers/duc/duc-text-style.js +128 -0
  207. package/dist/flatbuffers/duc/duc-ucs.d.ts +16 -0
  208. package/dist/flatbuffers/duc/duc-ucs.js +49 -0
  209. package/dist/flatbuffers/duc/duc-view.d.ts +24 -0
  210. package/dist/flatbuffers/duc/duc-view.js +71 -0
  211. package/dist/flatbuffers/duc/duc-viewport-element.d.ts +36 -0
  212. package/dist/flatbuffers/duc/duc-viewport-element.js +102 -0
  213. package/dist/flatbuffers/duc/duc-viewport-style.d.ts +16 -0
  214. package/dist/flatbuffers/duc/duc-viewport-style.js +49 -0
  215. package/dist/flatbuffers/duc/duc-xray-element.d.ts +23 -0
  216. package/dist/flatbuffers/duc/duc-xray-element.js +66 -0
  217. package/dist/flatbuffers/duc/duc-xray-style.d.ts +17 -0
  218. package/dist/flatbuffers/duc/duc-xray-style.js +49 -0
  219. package/dist/flatbuffers/duc/dynamic-snap-settings.d.ts +17 -0
  220. package/dist/flatbuffers/duc/dynamic-snap-settings.js +56 -0
  221. package/dist/flatbuffers/duc/element-background.d.ts +14 -0
  222. package/dist/flatbuffers/duc/element-background.js +41 -0
  223. package/dist/flatbuffers/duc/element-content-base.d.ts +29 -0
  224. package/dist/flatbuffers/duc/element-content-base.js +80 -0
  225. package/dist/flatbuffers/duc/element-content-preference.d.ts +8 -0
  226. package/dist/flatbuffers/duc/element-content-preference.js +11 -0
  227. package/dist/flatbuffers/duc/element-stroke.d.ts +24 -0
  228. package/dist/flatbuffers/duc/element-stroke.js +66 -0
  229. package/dist/flatbuffers/duc/element-wrapper.d.ts +16 -0
  230. package/dist/flatbuffers/duc/element-wrapper.js +49 -0
  231. package/dist/flatbuffers/duc/element.d.ts +49 -0
  232. package/dist/flatbuffers/duc/element.js +106 -0
  233. package/dist/flatbuffers/duc/exported-data-state.d.ts +87 -0
  234. package/dist/flatbuffers/duc/exported-data-state.js +290 -0
  235. package/dist/flatbuffers/duc/fcfbetween-modifier.d.ts +17 -0
  236. package/dist/flatbuffers/duc/fcfbetween-modifier.js +48 -0
  237. package/dist/flatbuffers/duc/fcfdatum-definition.d.ts +16 -0
  238. package/dist/flatbuffers/duc/fcfdatum-definition.js +43 -0
  239. package/dist/flatbuffers/duc/fcfdatum-style.d.ts +14 -0
  240. package/dist/flatbuffers/duc/fcfdatum-style.js +41 -0
  241. package/dist/flatbuffers/duc/fcfframe-modifiers.d.ts +22 -0
  242. package/dist/flatbuffers/duc/fcfframe-modifiers.js +65 -0
  243. package/dist/flatbuffers/duc/fcflayout-style.d.ts +17 -0
  244. package/dist/flatbuffers/duc/fcflayout-style.js +56 -0
  245. package/dist/flatbuffers/duc/fcfprojected-zone-modifier.d.ts +13 -0
  246. package/dist/flatbuffers/duc/fcfprojected-zone-modifier.js +40 -0
  247. package/dist/flatbuffers/duc/fcfsegment-row.d.ts +17 -0
  248. package/dist/flatbuffers/duc/fcfsegment-row.js +55 -0
  249. package/dist/flatbuffers/duc/fcfsymbol-style.d.ts +13 -0
  250. package/dist/flatbuffers/duc/fcfsymbol-style.js +40 -0
  251. package/dist/flatbuffers/duc/feature-control-frame-segment.d.ts +22 -0
  252. package/dist/flatbuffers/duc/feature-control-frame-segment.js +65 -0
  253. package/dist/flatbuffers/duc/feature-modifier.d.ts +18 -0
  254. package/dist/flatbuffers/duc/feature-modifier.js +21 -0
  255. package/dist/flatbuffers/duc/gdt-symbol.d.ts +22 -0
  256. package/dist/flatbuffers/duc/gdt-symbol.js +25 -0
  257. package/dist/flatbuffers/duc/geometric-point.d.ts +10 -0
  258. package/dist/flatbuffers/duc/geometric-point.js +27 -0
  259. package/dist/flatbuffers/duc/grid-display-type.d.ts +6 -0
  260. package/dist/flatbuffers/duc/grid-display-type.js +9 -0
  261. package/dist/flatbuffers/duc/grid-settings.d.ts +54 -0
  262. package/dist/flatbuffers/duc/grid-settings.js +165 -0
  263. package/dist/flatbuffers/duc/grid-style.d.ts +26 -0
  264. package/dist/flatbuffers/duc/grid-style.js +74 -0
  265. package/dist/flatbuffers/duc/grid-type.d.ts +7 -0
  266. package/dist/flatbuffers/duc/grid-type.js +10 -0
  267. package/dist/flatbuffers/duc/handle-type.d.ts +4 -0
  268. package/dist/flatbuffers/duc/handle-type.js +7 -0
  269. package/dist/flatbuffers/duc/hatch-pattern-line.d.ts +35 -0
  270. package/dist/flatbuffers/duc/hatch-pattern-line.js +93 -0
  271. package/dist/flatbuffers/duc/hatch-style.d.ts +5 -0
  272. package/dist/flatbuffers/duc/hatch-style.js +8 -0
  273. package/dist/flatbuffers/duc/identified-common-style.d.ts +16 -0
  274. package/dist/flatbuffers/duc/identified-common-style.js +44 -0
  275. package/dist/flatbuffers/duc/identified-dimension-style.d.ts +16 -0
  276. package/dist/flatbuffers/duc/identified-dimension-style.js +44 -0
  277. package/dist/flatbuffers/duc/identified-doc-style.d.ts +16 -0
  278. package/dist/flatbuffers/duc/identified-doc-style.js +44 -0
  279. package/dist/flatbuffers/duc/identified-fcfstyle.d.ts +16 -0
  280. package/dist/flatbuffers/duc/identified-fcfstyle.js +44 -0
  281. package/dist/flatbuffers/duc/identified-grid-settings.d.ts +16 -0
  282. package/dist/flatbuffers/duc/identified-grid-settings.js +44 -0
  283. package/dist/flatbuffers/duc/identified-hatch-style.d.ts +16 -0
  284. package/dist/flatbuffers/duc/identified-hatch-style.js +44 -0
  285. package/dist/flatbuffers/duc/identified-leader-style.d.ts +16 -0
  286. package/dist/flatbuffers/duc/identified-leader-style.js +44 -0
  287. package/dist/flatbuffers/duc/identified-snap-settings.d.ts +16 -0
  288. package/dist/flatbuffers/duc/identified-snap-settings.js +44 -0
  289. package/dist/flatbuffers/duc/identified-stack-like-style.d.ts +16 -0
  290. package/dist/flatbuffers/duc/identified-stack-like-style.js +44 -0
  291. package/dist/flatbuffers/duc/identified-table-style.d.ts +16 -0
  292. package/dist/flatbuffers/duc/identified-table-style.js +44 -0
  293. package/dist/flatbuffers/duc/identified-text-style.d.ts +16 -0
  294. package/dist/flatbuffers/duc/identified-text-style.js +44 -0
  295. package/dist/flatbuffers/duc/identified-ucs.d.ts +16 -0
  296. package/dist/flatbuffers/duc/identified-ucs.js +44 -0
  297. package/dist/flatbuffers/duc/identified-view.d.ts +16 -0
  298. package/dist/flatbuffers/duc/identified-view.js +44 -0
  299. package/dist/flatbuffers/duc/identified-viewport-style.d.ts +16 -0
  300. package/dist/flatbuffers/duc/identified-viewport-style.js +44 -0
  301. package/dist/flatbuffers/duc/identified-xray-style.d.ts +16 -0
  302. package/dist/flatbuffers/duc/identified-xray-style.js +44 -0
  303. package/dist/flatbuffers/duc/identifier.d.ts +20 -0
  304. package/dist/flatbuffers/duc/identifier.js +57 -0
  305. package/dist/flatbuffers/duc/image-crop.d.ts +23 -0
  306. package/dist/flatbuffers/duc/image-crop.js +80 -0
  307. package/dist/flatbuffers/duc/image-status.d.ts +5 -0
  308. package/dist/flatbuffers/duc/image-status.js +8 -0
  309. package/dist/flatbuffers/duc/isometric-grid-settings.d.ts +15 -0
  310. package/dist/flatbuffers/duc/isometric-grid-settings.js +48 -0
  311. package/dist/flatbuffers/duc/jsonpatch-operation.d.ts +23 -0
  312. package/dist/flatbuffers/duc/jsonpatch-operation.js +64 -0
  313. package/dist/flatbuffers/duc/layer-snap-filters.d.ts +23 -0
  314. package/dist/flatbuffers/duc/layer-snap-filters.js +76 -0
  315. package/dist/flatbuffers/duc/layer-validation-rules.d.ts +17 -0
  316. package/dist/flatbuffers/duc/layer-validation-rules.js +54 -0
  317. package/dist/flatbuffers/duc/leader-block-content.d.ts +25 -0
  318. package/dist/flatbuffers/duc/leader-block-content.js +85 -0
  319. package/dist/flatbuffers/duc/leader-content-data.d.ts +9 -0
  320. package/dist/flatbuffers/duc/leader-content-data.js +26 -0
  321. package/dist/flatbuffers/duc/leader-content-type.d.ts +4 -0
  322. package/dist/flatbuffers/duc/leader-content-type.js +7 -0
  323. package/dist/flatbuffers/duc/leader-content.d.ts +19 -0
  324. package/dist/flatbuffers/duc/leader-content.js +58 -0
  325. package/dist/flatbuffers/duc/leader-text-block-content.d.ts +14 -0
  326. package/dist/flatbuffers/duc/leader-text-block-content.js +40 -0
  327. package/dist/flatbuffers/duc/line-head.d.ts +17 -0
  328. package/dist/flatbuffers/duc/line-head.js +20 -0
  329. package/dist/flatbuffers/duc/line-spacing-type.d.ts +5 -0
  330. package/dist/flatbuffers/duc/line-spacing-type.js +8 -0
  331. package/dist/flatbuffers/duc/line-spacing.d.ts +16 -0
  332. package/dist/flatbuffers/duc/line-spacing.js +49 -0
  333. package/dist/flatbuffers/duc/linear-unit-system.d.ts +24 -0
  334. package/dist/flatbuffers/duc/linear-unit-system.js +75 -0
  335. package/dist/flatbuffers/duc/margins.d.ts +19 -0
  336. package/dist/flatbuffers/duc/margins.js +64 -0
  337. package/dist/flatbuffers/duc/mark-ellipse-center.d.ts +4 -0
  338. package/dist/flatbuffers/duc/mark-ellipse-center.js +7 -0
  339. package/dist/flatbuffers/duc/material-condition.d.ts +5 -0
  340. package/dist/flatbuffers/duc/material-condition.js +8 -0
  341. package/dist/flatbuffers/duc/object-snap-mode.d.ts +22 -0
  342. package/dist/flatbuffers/duc/object-snap-mode.js +25 -0
  343. package/dist/flatbuffers/duc/paragraph-formatting.d.ts +33 -0
  344. package/dist/flatbuffers/duc/paragraph-formatting.js +106 -0
  345. package/dist/flatbuffers/duc/parametric-source-type.d.ts +4 -0
  346. package/dist/flatbuffers/duc/parametric-source-type.js +7 -0
  347. package/dist/flatbuffers/duc/parametric-source.d.ts +20 -0
  348. package/dist/flatbuffers/duc/parametric-source.js +57 -0
  349. package/dist/flatbuffers/duc/plot-layout.d.ts +14 -0
  350. package/dist/flatbuffers/duc/plot-layout.js +41 -0
  351. package/dist/flatbuffers/duc/point-binding-point.d.ts +15 -0
  352. package/dist/flatbuffers/duc/point-binding-point.js +48 -0
  353. package/dist/flatbuffers/duc/polar-grid-settings.d.ts +17 -0
  354. package/dist/flatbuffers/duc/polar-grid-settings.js +56 -0
  355. package/dist/flatbuffers/duc/polar-tracking-settings.d.ts +29 -0
  356. package/dist/flatbuffers/duc/polar-tracking-settings.js +90 -0
  357. package/dist/flatbuffers/duc/primary-units.d.ts +16 -0
  358. package/dist/flatbuffers/duc/primary-units.js +44 -0
  359. package/dist/flatbuffers/duc/pruning-level.d.ts +5 -0
  360. package/dist/flatbuffers/duc/pruning-level.js +8 -0
  361. package/dist/flatbuffers/duc/snap-marker-settings.d.ts +23 -0
  362. package/dist/flatbuffers/duc/snap-marker-settings.js +79 -0
  363. package/dist/flatbuffers/duc/snap-marker-shape.d.ts +6 -0
  364. package/dist/flatbuffers/duc/snap-marker-shape.js +9 -0
  365. package/dist/flatbuffers/duc/snap-marker-style-entry.d.ts +16 -0
  366. package/dist/flatbuffers/duc/snap-marker-style-entry.js +43 -0
  367. package/dist/flatbuffers/duc/snap-marker-style.d.ts +17 -0
  368. package/dist/flatbuffers/duc/snap-marker-style.js +49 -0
  369. package/dist/flatbuffers/duc/snap-mode.d.ts +4 -0
  370. package/dist/flatbuffers/duc/snap-mode.js +7 -0
  371. package/dist/flatbuffers/duc/snap-override-behavior.d.ts +5 -0
  372. package/dist/flatbuffers/duc/snap-override-behavior.js +8 -0
  373. package/dist/flatbuffers/duc/snap-override.d.ts +17 -0
  374. package/dist/flatbuffers/duc/snap-override.js +49 -0
  375. package/dist/flatbuffers/duc/snap-settings.d.ts +75 -0
  376. package/dist/flatbuffers/duc/snap-settings.js +245 -0
  377. package/dist/flatbuffers/duc/stack-format-properties.d.ts +18 -0
  378. package/dist/flatbuffers/duc/stack-format-properties.js +57 -0
  379. package/dist/flatbuffers/duc/stack-format.d.ts +21 -0
  380. package/dist/flatbuffers/duc/stack-format.js +64 -0
  381. package/dist/flatbuffers/duc/stacked-text-align.d.ts +5 -0
  382. package/dist/flatbuffers/duc/stacked-text-align.js +8 -0
  383. package/dist/flatbuffers/duc/standard-overrides.d.ts +63 -0
  384. package/dist/flatbuffers/duc/standard-overrides.js +162 -0
  385. package/dist/flatbuffers/duc/standard-styles.d.ts +77 -0
  386. package/dist/flatbuffers/duc/standard-styles.js +285 -0
  387. package/dist/flatbuffers/duc/standard-units.d.ts +16 -0
  388. package/dist/flatbuffers/duc/standard-units.js +44 -0
  389. package/dist/flatbuffers/duc/standard-validation.d.ts +16 -0
  390. package/dist/flatbuffers/duc/standard-validation.js +44 -0
  391. package/dist/flatbuffers/duc/standard-view-settings.d.ts +35 -0
  392. package/dist/flatbuffers/duc/standard-view-settings.js +124 -0
  393. package/dist/flatbuffers/duc/standard.d.ts +33 -0
  394. package/dist/flatbuffers/duc/standard.js +90 -0
  395. package/dist/flatbuffers/duc/string-value-entry.d.ts +17 -0
  396. package/dist/flatbuffers/duc/string-value-entry.js +49 -0
  397. package/dist/flatbuffers/duc/stroke-cap.d.ts +5 -0
  398. package/dist/flatbuffers/duc/stroke-cap.js +8 -0
  399. package/dist/flatbuffers/duc/stroke-join.d.ts +5 -0
  400. package/dist/flatbuffers/duc/stroke-join.js +8 -0
  401. package/dist/flatbuffers/duc/stroke-placement.d.ts +5 -0
  402. package/dist/flatbuffers/duc/stroke-placement.js +8 -0
  403. package/dist/flatbuffers/duc/stroke-preference.d.ts +6 -0
  404. package/dist/flatbuffers/duc/stroke-preference.js +9 -0
  405. package/dist/flatbuffers/duc/stroke-side-preference.d.ts +8 -0
  406. package/dist/flatbuffers/duc/stroke-side-preference.js +11 -0
  407. package/dist/flatbuffers/duc/stroke-sides.d.ts +24 -0
  408. package/dist/flatbuffers/duc/stroke-sides.js +67 -0
  409. package/dist/flatbuffers/duc/stroke-style.d.ts +37 -0
  410. package/dist/flatbuffers/duc/stroke-style.js +111 -0
  411. package/dist/flatbuffers/duc/stroke-width.d.ts +5 -0
  412. package/dist/flatbuffers/duc/stroke-width.js +8 -0
  413. package/dist/flatbuffers/duc/table-cell-alignment.d.ts +11 -0
  414. package/dist/flatbuffers/duc/table-cell-alignment.js +14 -0
  415. package/dist/flatbuffers/duc/table-flow-direction.d.ts +4 -0
  416. package/dist/flatbuffers/duc/table-flow-direction.js +7 -0
  417. package/dist/flatbuffers/duc/text-align.d.ts +5 -0
  418. package/dist/flatbuffers/duc/text-align.js +8 -0
  419. package/dist/flatbuffers/duc/text-column.d.ts +15 -0
  420. package/dist/flatbuffers/duc/text-column.js +48 -0
  421. package/dist/flatbuffers/duc/text-field-source-property.d.ts +13 -0
  422. package/dist/flatbuffers/duc/text-field-source-property.js +16 -0
  423. package/dist/flatbuffers/duc/text-field-source-type.d.ts +4 -0
  424. package/dist/flatbuffers/duc/text-field-source-type.js +7 -0
  425. package/dist/flatbuffers/duc/text-flow-direction.d.ts +6 -0
  426. package/dist/flatbuffers/duc/text-flow-direction.js +9 -0
  427. package/dist/flatbuffers/duc/tiling-properties.d.ts +21 -0
  428. package/dist/flatbuffers/duc/tiling-properties.js +75 -0
  429. package/dist/flatbuffers/duc/tolerance-clause.d.ts +27 -0
  430. package/dist/flatbuffers/duc/tolerance-clause.js +84 -0
  431. package/dist/flatbuffers/duc/tolerance-display.d.ts +7 -0
  432. package/dist/flatbuffers/duc/tolerance-display.js +10 -0
  433. package/dist/flatbuffers/duc/tolerance-type.d.ts +5 -0
  434. package/dist/flatbuffers/duc/tolerance-type.js +8 -0
  435. package/dist/flatbuffers/duc/tolerance-zone-type.d.ts +7 -0
  436. package/dist/flatbuffers/duc/tolerance-zone-type.js +10 -0
  437. package/dist/flatbuffers/duc/tracking-line-style.d.ts +26 -0
  438. package/dist/flatbuffers/duc/tracking-line-style.js +74 -0
  439. package/dist/flatbuffers/duc/unit-precision.d.ts +19 -0
  440. package/dist/flatbuffers/duc/unit-precision.js +64 -0
  441. package/dist/flatbuffers/duc/unit-system-base.d.ts +20 -0
  442. package/dist/flatbuffers/duc/unit-system-base.js +65 -0
  443. package/dist/flatbuffers/duc/unit-system.d.ts +4 -0
  444. package/dist/flatbuffers/duc/unit-system.js +7 -0
  445. package/dist/flatbuffers/duc/version-base.d.ts +27 -0
  446. package/dist/flatbuffers/duc/version-base.js +80 -0
  447. package/dist/flatbuffers/duc/version-graph-metadata.d.ts +15 -0
  448. package/dist/flatbuffers/duc/version-graph-metadata.js +48 -0
  449. package/dist/flatbuffers/duc/version-graph.d.ts +31 -0
  450. package/dist/flatbuffers/duc/version-graph.js +94 -0
  451. package/dist/flatbuffers/duc/vertical-align.d.ts +5 -0
  452. package/dist/flatbuffers/duc/vertical-align.js +8 -0
  453. package/dist/flatbuffers/duc/viewport-shade-plot.d.ts +6 -0
  454. package/dist/flatbuffers/duc/viewport-shade-plot.js +9 -0
  455. package/dist/flatbuffers/duc/youtube-states.d.ts +8 -0
  456. package/dist/flatbuffers/duc/youtube-states.js +11 -0
  457. package/dist/flatbuffers/duc.d.ts +227 -0
  458. package/dist/flatbuffers/duc.js +229 -0
  459. package/dist/index.d.ts +8 -0
  460. package/dist/index.js +8 -0
  461. package/dist/legacy/index.d.ts +1 -0
  462. package/dist/legacy/index.js +1 -0
  463. package/dist/legacy/v1/duc/app-state.d.ts +124 -0
  464. package/dist/legacy/v1/duc/app-state.js +388 -0
  465. package/dist/legacy/v1/duc/binary-file-data.d.ts +27 -0
  466. package/dist/legacy/v1/duc/binary-file-data.js +90 -0
  467. package/dist/legacy/v1/duc/binary-files-entry.d.ts +16 -0
  468. package/dist/legacy/v1/duc/binary-files-entry.js +43 -0
  469. package/dist/legacy/v1/duc/binary-files.d.ts +17 -0
  470. package/dist/legacy/v1/duc/binary-files.js +55 -0
  471. package/dist/legacy/v1/duc/binding-point.d.ts +15 -0
  472. package/dist/legacy/v1/duc/binding-point.js +48 -0
  473. package/dist/legacy/v1/duc/bound-element.d.ts +17 -0
  474. package/dist/legacy/v1/duc/bound-element.js +48 -0
  475. package/dist/legacy/v1/duc/duc-block-attribute-details.d.ts +22 -0
  476. package/dist/legacy/v1/duc/duc-block-attribute-details.js +57 -0
  477. package/dist/legacy/v1/duc/duc-block-attribute.d.ts +16 -0
  478. package/dist/legacy/v1/duc/duc-block-attribute.js +43 -0
  479. package/dist/legacy/v1/duc/duc-block-instance-element-override.d.ts +17 -0
  480. package/dist/legacy/v1/duc/duc-block-instance-element-override.js +48 -0
  481. package/dist/legacy/v1/duc/duc-block.d.ts +34 -0
  482. package/dist/legacy/v1/duc/duc-block.js +110 -0
  483. package/dist/legacy/v1/duc/duc-element.d.ts +273 -0
  484. package/dist/legacy/v1/duc/duc-element.js +865 -0
  485. package/dist/legacy/v1/duc/duc-group.d.ts +40 -0
  486. package/dist/legacy/v1/duc/duc-group.js +114 -0
  487. package/dist/legacy/v1/duc/duc-line-reference.d.ts +15 -0
  488. package/dist/legacy/v1/duc/duc-line-reference.js +43 -0
  489. package/dist/legacy/v1/duc/duc-line.d.ts +15 -0
  490. package/dist/legacy/v1/duc/duc-line.js +43 -0
  491. package/dist/legacy/v1/duc/duc-path.d.ts +26 -0
  492. package/dist/legacy/v1/duc/duc-path.js +69 -0
  493. package/dist/legacy/v1/duc/duc-table-cell.d.ts +22 -0
  494. package/dist/legacy/v1/duc/duc-table-cell.js +57 -0
  495. package/dist/legacy/v1/duc/duc-table-column.d.ts +18 -0
  496. package/dist/legacy/v1/duc/duc-table-column.js +50 -0
  497. package/dist/legacy/v1/duc/duc-table-row.d.ts +18 -0
  498. package/dist/legacy/v1/duc/duc-table-row.js +50 -0
  499. package/dist/legacy/v1/duc/duc-table-style-props.d.ts +39 -0
  500. package/dist/legacy/v1/duc/duc-table-style-props.js +114 -0
  501. package/dist/legacy/v1/duc/duc-table-style.d.ts +14 -0
  502. package/dist/legacy/v1/duc/duc-table-style.js +41 -0
  503. package/dist/legacy/v1/duc/element-background.d.ts +14 -0
  504. package/dist/legacy/v1/duc/element-background.js +41 -0
  505. package/dist/legacy/v1/duc/element-content-base.d.ts +22 -0
  506. package/dist/legacy/v1/duc/element-content-base.js +64 -0
  507. package/dist/legacy/v1/duc/element-stroke.d.ts +23 -0
  508. package/dist/legacy/v1/duc/element-stroke.js +66 -0
  509. package/dist/legacy/v1/duc/exported-data-state.d.ts +51 -0
  510. package/dist/legacy/v1/duc/exported-data-state.js +155 -0
  511. package/dist/legacy/v1/duc/image-crop.d.ts +23 -0
  512. package/dist/legacy/v1/duc/image-crop.js +80 -0
  513. package/dist/legacy/v1/duc/linear-element-editor.d.ts +44 -0
  514. package/dist/legacy/v1/duc/linear-element-editor.js +119 -0
  515. package/dist/legacy/v1/duc/point-binding.d.ts +25 -0
  516. package/dist/legacy/v1/duc/point-binding.js +72 -0
  517. package/dist/legacy/v1/duc/point.d.ts +20 -0
  518. package/dist/legacy/v1/duc/point.js +63 -0
  519. package/dist/legacy/v1/duc/pointer-down-state.d.ts +32 -0
  520. package/dist/legacy/v1/duc/pointer-down-state.js +90 -0
  521. package/dist/legacy/v1/duc/renderer-state.d.ts +17 -0
  522. package/dist/legacy/v1/duc/renderer-state.js +54 -0
  523. package/dist/legacy/v1/duc/segment-midpoint-state.d.ts +18 -0
  524. package/dist/legacy/v1/duc/segment-midpoint-state.js +57 -0
  525. package/dist/legacy/v1/duc/simple-point.d.ts +15 -0
  526. package/dist/legacy/v1/duc/simple-point.js +48 -0
  527. package/dist/legacy/v1/duc/stroke-sides.d.ts +23 -0
  528. package/dist/legacy/v1/duc/stroke-sides.js +66 -0
  529. package/dist/legacy/v1/duc/stroke-style.d.ts +31 -0
  530. package/dist/legacy/v1/duc/stroke-style.js +102 -0
  531. package/dist/legacy/v1/duc/tiling-properties.d.ts +21 -0
  532. package/dist/legacy/v1/duc/tiling-properties.js +75 -0
  533. package/dist/legacy/v1/duc.d.ts +35 -0
  534. package/dist/legacy/v1/duc.js +37 -0
  535. package/dist/legacy/v1/index.d.ts +1 -0
  536. package/dist/legacy/v1/index.js +1 -0
  537. package/dist/legacy/v1/parse/index.d.ts +67 -0
  538. package/dist/legacy/v1/parse/index.js +101 -0
  539. package/dist/legacy/v1/parse/parseAppStateFromBinary.d.ts +3 -0
  540. package/dist/legacy/v1/parse/parseAppStateFromBinary.js +139 -0
  541. package/dist/legacy/v1/parse/parseBinaryFilesFromBinary.d.ts +4 -0
  542. package/dist/legacy/v1/parse/parseBinaryFilesFromBinary.js +32 -0
  543. package/dist/legacy/v1/parse/parseBlockFromBinary.d.ts +3 -0
  544. package/dist/legacy/v1/parse/parseBlockFromBinary.js +70 -0
  545. package/dist/legacy/v1/parse/parseElementFromBinary.d.ts +8 -0
  546. package/dist/legacy/v1/parse/parseElementFromBinary.js +387 -0
  547. package/dist/legacy/v1/parse/parseGroupFromBinary.d.ts +4 -0
  548. package/dist/legacy/v1/parse/parseGroupFromBinary.js +36 -0
  549. package/dist/legacy/v1/parse/parseRendererStateFromBinary.d.ts +4 -0
  550. package/dist/legacy/v1/parse/parseRendererStateFromBinary.js +15 -0
  551. package/dist/legacy/v1/serialize/index.d.ts +5 -0
  552. package/dist/legacy/v1/serialize/index.js +81 -0
  553. package/dist/legacy/v1/serialize/serializationUtils.d.ts +17 -0
  554. package/dist/legacy/v1/serialize/serializationUtils.js +27 -0
  555. package/dist/legacy/v1/serialize/serializeAppStateFromDuc.d.ts +4 -0
  556. package/dist/legacy/v1/serialize/serializeAppStateFromDuc.js +145 -0
  557. package/dist/legacy/v1/serialize/serializeBinaryFilesFromDuc.d.ts +4 -0
  558. package/dist/legacy/v1/serialize/serializeBinaryFilesFromDuc.js +46 -0
  559. package/dist/legacy/v1/serialize/serializeBlockFromDuc.d.ts +3 -0
  560. package/dist/legacy/v1/serialize/serializeBlockFromDuc.js +60 -0
  561. package/dist/legacy/v1/serialize/serializeElementFromDuc.d.ts +8 -0
  562. package/dist/legacy/v1/serialize/serializeElementFromDuc.js +435 -0
  563. package/dist/legacy/v1/serialize/serializeGroupFromDuc.d.ts +3 -0
  564. package/dist/legacy/v1/serialize/serializeGroupFromDuc.js +37 -0
  565. package/dist/legacy/v1/serialize/serializeRendererStateFromDuc.d.ts +4 -0
  566. package/dist/legacy/v1/serialize/serializeRendererStateFromDuc.js +7 -0
  567. package/dist/legacy/v1/types/elements/index.d.ts +480 -0
  568. package/dist/legacy/v1/types/elements/index.js +1 -0
  569. package/dist/legacy/v1/types/elements/typeChecks.d.ts +40 -0
  570. package/dist/legacy/v1/types/elements/typeChecks.js +179 -0
  571. package/dist/legacy/v1/types/geometryTypes.d.ts +78 -0
  572. package/dist/legacy/v1/types/geometryTypes.js +1 -0
  573. package/dist/legacy/v1/types/index.d.ts +496 -0
  574. package/dist/legacy/v1/types/index.js +1 -0
  575. package/dist/legacy/v1/types/utility-types.d.ts +31 -0
  576. package/dist/legacy/v1/types/utility-types.js +1 -0
  577. package/dist/legacy/v1/utils/bounds.d.ts +76 -0
  578. package/dist/legacy/v1/utils/bounds.js +415 -0
  579. package/dist/legacy/v1/utils/constants.d.ts +370 -0
  580. package/dist/legacy/v1/utils/constants.js +571 -0
  581. package/dist/legacy/v1/utils/elements/index.d.ts +26 -0
  582. package/dist/legacy/v1/utils/elements/index.js +108 -0
  583. package/dist/legacy/v1/utils/elements/linearElement.d.ts +133 -0
  584. package/dist/legacy/v1/utils/elements/linearElement.js +544 -0
  585. package/dist/legacy/v1/utils/elements/textElement.d.ts +89 -0
  586. package/dist/legacy/v1/utils/elements/textElement.js +563 -0
  587. package/dist/legacy/v1/utils/index.d.ts +26 -0
  588. package/dist/legacy/v1/utils/index.js +40 -0
  589. package/dist/legacy/v1/utils/math/algebra/ga.d.ts +63 -0
  590. package/dist/legacy/v1/utils/math/algebra/ga.js +268 -0
  591. package/dist/legacy/v1/utils/math/algebra/gadirections.d.ts +9 -0
  592. package/dist/legacy/v1/utils/math/algebra/gadirections.js +18 -0
  593. package/dist/legacy/v1/utils/math/algebra/galines.d.ts +23 -0
  594. package/dist/legacy/v1/utils/math/algebra/galines.js +32 -0
  595. package/dist/legacy/v1/utils/math/algebra/gapoints.d.ts +8 -0
  596. package/dist/legacy/v1/utils/math/algebra/gapoints.js +30 -0
  597. package/dist/legacy/v1/utils/math/algebra/gatransforms.d.ts +10 -0
  598. package/dist/legacy/v1/utils/math/algebra/gatransforms.js +23 -0
  599. package/dist/legacy/v1/utils/math/bbox.d.ts +10 -0
  600. package/dist/legacy/v1/utils/math/bbox.js +42 -0
  601. package/dist/legacy/v1/utils/math/geometry.d.ts +102 -0
  602. package/dist/legacy/v1/utils/math/geometry.js +790 -0
  603. package/dist/legacy/v1/utils/math/index.d.ts +309 -0
  604. package/dist/legacy/v1/utils/math/index.js +1140 -0
  605. package/dist/legacy/v1/utils/math/random.d.ts +4 -0
  606. package/dist/legacy/v1/utils/math/random.js +25 -0
  607. package/dist/legacy/v1/utils/measurements.d.ts +33 -0
  608. package/dist/legacy/v1/utils/measurements.js +65 -0
  609. package/dist/legacy/v1/utils/normalize.d.ts +14 -0
  610. package/dist/legacy/v1/utils/normalize.js +49 -0
  611. package/dist/legacy/v1/utils/restore.d.ts +197 -0
  612. package/dist/legacy/v1/utils/restore.js +1255 -0
  613. package/dist/legacy/v1/utils/scopes.d.ts +260 -0
  614. package/dist/legacy/v1/utils/scopes.js +661 -0
  615. package/dist/legacy/v1/utils/standards.d.ts +12 -0
  616. package/dist/legacy/v1/utils/standards.js +10 -0
  617. package/dist/legacy/v1/utils/state/index.d.ts +2 -0
  618. package/dist/legacy/v1/utils/state/index.js +68 -0
  619. package/dist/legacy/v1/utils/url.d.ts +8 -0
  620. package/dist/legacy/v1/utils/url.js +33 -0
  621. package/dist/parse.d.ts +54 -0
  622. package/dist/parse.js +1318 -0
  623. package/dist/restore/index.d.ts +3 -0
  624. package/dist/restore/index.js +3 -0
  625. package/dist/restore/restoreDataState.d.ts +191 -0
  626. package/dist/restore/restoreDataState.js +716 -0
  627. package/dist/restore/restoreElements.d.ts +34 -0
  628. package/dist/restore/restoreElements.js +1281 -0
  629. package/dist/restore/restoreStandards.d.ts +8 -0
  630. package/dist/restore/restoreStandards.js +224 -0
  631. package/dist/serialize.d.ts +3 -0
  632. package/dist/serialize.js +2465 -0
  633. package/dist/technical/index.d.ts +3 -0
  634. package/dist/technical/index.js +3 -0
  635. package/dist/technical/measurements.d.ts +31 -0
  636. package/dist/technical/measurements.js +64 -0
  637. package/dist/technical/scopes.d.ts +261 -0
  638. package/dist/technical/scopes.js +661 -0
  639. package/dist/technical/standards.d.ts +124 -0
  640. package/dist/technical/standards.js +10 -0
  641. package/dist/types/elements/index.d.ts +1356 -0
  642. package/dist/types/elements/index.js +1 -0
  643. package/dist/types/elements/typeChecks.d.ts +40 -0
  644. package/dist/types/elements/typeChecks.js +188 -0
  645. package/dist/types/geometryTypes.d.ts +90 -0
  646. package/dist/types/geometryTypes.js +1 -0
  647. package/dist/types/index.d.ts +591 -0
  648. package/dist/types/index.js +3 -0
  649. package/dist/types/utility-types.d.ts +31 -0
  650. package/dist/types/utility-types.js +1 -0
  651. package/dist/utils/bounds.d.ts +75 -0
  652. package/dist/utils/bounds.js +414 -0
  653. package/dist/utils/constants.d.ts +288 -0
  654. package/dist/utils/constants.js +529 -0
  655. package/dist/utils/elements/frameElement.d.ts +4 -0
  656. package/dist/utils/elements/frameElement.js +16 -0
  657. package/dist/utils/elements/freedrawElement.d.ts +2 -0
  658. package/dist/utils/elements/freedrawElement.js +46 -0
  659. package/dist/utils/elements/index.d.ts +51 -0
  660. package/dist/utils/elements/index.js +215 -0
  661. package/dist/utils/elements/linearElement.d.ts +53 -0
  662. package/dist/utils/elements/linearElement.js +539 -0
  663. package/dist/utils/elements/newElement.d.ts +72 -0
  664. package/dist/utils/elements/newElement.js +268 -0
  665. package/dist/utils/elements/textElement.d.ts +89 -0
  666. package/dist/utils/elements/textElement.js +565 -0
  667. package/dist/utils/elements/viewportElement.d.ts +6 -0
  668. package/dist/utils/elements/viewportElement.js +9 -0
  669. package/dist/utils/filebyte.d.ts +39 -0
  670. package/dist/utils/filebyte.js +117 -0
  671. package/dist/utils/functionCodec.d.ts +5 -0
  672. package/dist/utils/functionCodec.js +86 -0
  673. package/dist/utils/index.d.ts +32 -0
  674. package/dist/utils/index.js +53 -0
  675. package/dist/utils/math/algebra/ga.d.ts +63 -0
  676. package/dist/utils/math/algebra/ga.js +268 -0
  677. package/dist/utils/math/algebra/gadirections.d.ts +9 -0
  678. package/dist/utils/math/algebra/gadirections.js +18 -0
  679. package/dist/utils/math/algebra/galines.d.ts +23 -0
  680. package/dist/utils/math/algebra/galines.js +32 -0
  681. package/dist/utils/math/algebra/gapoints.d.ts +8 -0
  682. package/dist/utils/math/algebra/gapoints.js +30 -0
  683. package/dist/utils/math/algebra/gatransforms.d.ts +10 -0
  684. package/dist/utils/math/algebra/gatransforms.js +23 -0
  685. package/dist/utils/math/algebra/index.d.ts +5 -0
  686. package/dist/utils/math/algebra/index.js +5 -0
  687. package/dist/utils/math/bbox.d.ts +10 -0
  688. package/dist/utils/math/bbox.js +42 -0
  689. package/dist/utils/math/geometry.d.ts +102 -0
  690. package/dist/utils/math/geometry.js +790 -0
  691. package/dist/utils/math/index.d.ts +323 -0
  692. package/dist/utils/math/index.js +1188 -0
  693. package/dist/utils/math/random.d.ts +4 -0
  694. package/dist/utils/math/random.js +25 -0
  695. package/dist/utils/normalize.d.ts +14 -0
  696. package/dist/utils/normalize.js +49 -0
  697. package/dist/utils/shape.d.ts +15 -0
  698. package/dist/utils/shape.js +254 -0
  699. package/dist/utils/state/grid.d.ts +7 -0
  700. package/dist/utils/state/grid.js +25 -0
  701. package/dist/utils/state/index.d.ts +9 -0
  702. package/dist/utils/state/index.js +131 -0
  703. package/dist/utils/url.d.ts +8 -0
  704. package/dist/utils/url.js +33 -0
  705. package/dist/utils/version.d.ts +1 -0
  706. package/dist/utils/version.js +1 -0
  707. package/package.json +79 -0
@@ -0,0 +1,117 @@
1
+ /**
2
+ * Synchronously converts data to a Base64 Data URL.
3
+ *
4
+ * This function is truly synchronous and works in both Node.js and browser environments.
5
+ *
6
+ * @param data The input data. Can be a UTF-8 string, a Uint8Array, or an ArrayBuffer.
7
+ * @param mimeType The MIME type for the Data URL.
8
+ * @returns A fully formed Base64 Data URL string.
9
+ */
10
+ export function toDataURL(data, mimeType = 'application/octet-stream' // A more generic default
11
+ ) {
12
+ try {
13
+ // If data is already a valid data URL, return it directly.
14
+ if (typeof data === 'string' && data.startsWith('data:')) {
15
+ return data;
16
+ }
17
+ let base64String;
18
+ if (typeof data === 'string') {
19
+ // Handle UTF-8 strings by converting them to a byte array first,
20
+ // then encoding. This is more robust than the btoa(unescape(encodeURIComponent(...))) trick.
21
+ const bytes = new TextEncoder().encode(data);
22
+ base64String = uint8ArrayToBase64(bytes);
23
+ }
24
+ else {
25
+ // For ArrayBuffer, we need to create a Uint8Array view.
26
+ // If it's already a Uint8Array, we can use it directly.
27
+ const bytes = data instanceof Uint8Array ? data : new Uint8Array(data);
28
+ base64String = uint8ArrayToBase64(bytes);
29
+ }
30
+ return `data:${mimeType};base64,${base64String}`;
31
+ }
32
+ catch (error) {
33
+ console.error('Error generating data URL:', error);
34
+ throw error; // Re-throw the error after logging
35
+ }
36
+ }
37
+ /**
38
+ * Synchronously decodes a Base64 Data URL into its constituent parts.
39
+ *
40
+ * This function only supports Base64 encoded Data URLs.
41
+ *
42
+ * @param dataUrl The Base64 Data URL string (e.g., "data:image/png;base64,iVBOR...").
43
+ * @returns An object containing the decoded Uint8Array and the MIME type.
44
+ * @throws An error if the input is not a valid or supported Data URL.
45
+ */
46
+ export function fromDataURL(dataUrl) {
47
+ // 1. Validation
48
+ if (!dataUrl.startsWith('data:')) {
49
+ throw new Error('Invalid Data URL: Must start with "data:".');
50
+ }
51
+ // 2. Find the metadata/data separator (the first comma)
52
+ const commaIndex = dataUrl.indexOf(',');
53
+ if (commaIndex === -1) {
54
+ throw new Error('Invalid Data URL: No comma separator found.');
55
+ }
56
+ // 3. Extract header and base64 data
57
+ const header = dataUrl.substring(5, commaIndex); // "data:".length is 5
58
+ const base64Data = dataUrl.substring(commaIndex + 1);
59
+ // 4. Parse header to get MIME type and check for base64 encoding
60
+ const headerParts = header.split(';');
61
+ const mimeType = headerParts[0] || 'application/octet-stream'; // Default MIME if empty
62
+ if (headerParts[headerParts.length - 1] !== 'base64') {
63
+ throw new Error('Unsupported Data URL: Only base64 encoding is supported.');
64
+ }
65
+ // 5. Decode the base64 data using our helper function
66
+ const data = base64ToUint8Array(base64Data);
67
+ return { data, mimeType };
68
+ }
69
+ export function uint8ArrayToBase64(bytes) {
70
+ // Node.js environment
71
+ if (typeof Buffer !== 'undefined') {
72
+ return Buffer.from(bytes).toString('base64');
73
+ }
74
+ // Browser environment
75
+ let binary = '';
76
+ const len = bytes.byteLength;
77
+ for (let i = 0; i < len; i++) {
78
+ binary += String.fromCharCode(bytes[i]);
79
+ }
80
+ return btoa(binary);
81
+ }
82
+ export function base64ToUint8Array(base64) {
83
+ // Node.js environment
84
+ if (typeof Buffer !== 'undefined') {
85
+ return new Uint8Array(Buffer.from(base64, 'base64'));
86
+ }
87
+ // Browser environment
88
+ // Sanitize the base64 string by removing any characters that are not part of the standard base64 alphabet
89
+ const sanitizedBase64 = base64.replace(/[^A-Za-z0-9+/=]/g, '');
90
+ const binaryString = atob(sanitizedBase64);
91
+ const bytes = new Uint8Array(binaryString.length);
92
+ for (let i = 0; i < binaryString.length; i++) {
93
+ bytes[i] = binaryString.charCodeAt(i);
94
+ }
95
+ return bytes;
96
+ }
97
+ /**
98
+ * Converts a Uint8Array to a browser File object.
99
+ *
100
+ * @param bytes The Uint8Array containing the binary data of the file.
101
+ * @param fileName The desired name for the file, including its extension (e.g., "thumbnail.png").
102
+ * @param options Optional settings for the file.
103
+ * @param options.mimeType The MIME type of the file (e.g., "image/png"). Defaults to "application/octet-stream".
104
+ * @param options.lastModified The timestamp (milliseconds since epoch) for the file's last modified date. Defaults to the current time.
105
+ * @returns A File object.
106
+ */
107
+ export function uint8ArrayToFile(bytes, fileName, options = {}) {
108
+ var _a, _b;
109
+ // Set default values for options
110
+ const mimeType = (_a = options.mimeType) !== null && _a !== void 0 ? _a : 'application/octet-stream';
111
+ const lastModified = (_b = options.lastModified) !== null && _b !== void 0 ? _b : Date.now();
112
+ // Create and return the File object
113
+ return new File([new Uint8Array(bytes)], fileName, {
114
+ type: mimeType,
115
+ lastModified: lastModified,
116
+ });
117
+ }
@@ -0,0 +1,5 @@
1
+ export declare function isEncodedFunctionString(val: unknown): val is string;
2
+ export declare function encodeFunctionString(fn: Function): string;
3
+ export declare function tryDecodeFunctionString(val: string): string | null;
4
+ export declare function reviveEncodedFunction(val: unknown): unknown;
5
+ export declare function reviveFunctionsDeep(obj: any, seen?: WeakSet<object>): any;
@@ -0,0 +1,86 @@
1
+ // Utilities to encode functions as strings for safe structured cloning, and revive them later on main thread.
2
+ const FN_SENTINEL = "__DUCFN__:";
3
+ function b64EncodeUtf8(str) {
4
+ try {
5
+ // Browser
6
+ // eslint-disable-next-line no-undef
7
+ return btoa(unescape(encodeURIComponent(str)));
8
+ }
9
+ catch (_a) {
10
+ // Node
11
+ return Buffer.from(str, "utf-8").toString("base64");
12
+ }
13
+ }
14
+ function b64DecodeUtf8(b64) {
15
+ try {
16
+ // Browser
17
+ // eslint-disable-next-line no-undef
18
+ return decodeURIComponent(escape(atob(b64)));
19
+ }
20
+ catch (_a) {
21
+ // Node
22
+ return Buffer.from(b64, "base64").toString("utf-8");
23
+ }
24
+ }
25
+ export function isEncodedFunctionString(val) {
26
+ return typeof val === "string" && val.startsWith(FN_SENTINEL);
27
+ }
28
+ export function encodeFunctionString(fn) {
29
+ const code = fn.toString();
30
+ return FN_SENTINEL + b64EncodeUtf8(code);
31
+ }
32
+ export function tryDecodeFunctionString(val) {
33
+ if (!isEncodedFunctionString(val))
34
+ return null;
35
+ const b64 = val.slice(FN_SENTINEL.length);
36
+ try {
37
+ return b64DecodeUtf8(b64);
38
+ }
39
+ catch (_a) {
40
+ return null;
41
+ }
42
+ }
43
+ export function reviveEncodedFunction(val) {
44
+ if (!isEncodedFunctionString(val))
45
+ return val;
46
+ const code = tryDecodeFunctionString(val);
47
+ if (!code)
48
+ return val;
49
+ try {
50
+ // Wrap in parentheses to handle arrow functions and function declarations uniformly
51
+ // eslint-disable-next-line no-eval
52
+ const revived = eval(`(${code})`);
53
+ if (typeof revived === "function")
54
+ return revived;
55
+ return val;
56
+ }
57
+ catch (_a) {
58
+ return val;
59
+ }
60
+ }
61
+ export function reviveFunctionsDeep(obj, seen = new WeakSet()) {
62
+ if (obj == null)
63
+ return obj;
64
+ if (typeof obj === "string")
65
+ return reviveEncodedFunction(obj);
66
+ if (typeof obj !== "object")
67
+ return obj;
68
+ if (seen.has(obj))
69
+ return obj;
70
+ seen.add(obj);
71
+ if (Array.isArray(obj)) {
72
+ for (let i = 0; i < obj.length; i++) {
73
+ obj[i] = reviveFunctionsDeep(obj[i], seen);
74
+ }
75
+ return obj;
76
+ }
77
+ for (const [k, v] of Object.entries(obj)) {
78
+ if (typeof v === "string" && isEncodedFunctionString(v)) {
79
+ obj[k] = reviveEncodedFunction(v);
80
+ }
81
+ else {
82
+ obj[k] = reviveFunctionsDeep(v, seen);
83
+ }
84
+ }
85
+ return obj;
86
+ }
@@ -0,0 +1,32 @@
1
+ export * from "./elements";
2
+ export * from "./math";
3
+ export * from "./state";
4
+ export * from "./constants";
5
+ export * from "./shape";
6
+ export * from "./bounds";
7
+ export * from "./normalize";
8
+ export * from "./url";
9
+ export * from "./version";
10
+ export * from "./filebyte";
11
+ export * from "./functionCodec";
12
+ /**
13
+ * supply `null` as message if non-never value is valid, you just need to
14
+ * typecheck against it
15
+ */
16
+ export declare const assertNever: (value: never, message: string | null, softAssert?: boolean) => never;
17
+ export declare const getUpdatedTimestamp: () => number;
18
+ export declare const isFiniteNumber: (value: any) => value is number;
19
+ /**
20
+ * Transforms array of objects containing `id` attribute,
21
+ * or array of ids (strings), into a Map, keyd by `id`.
22
+ */
23
+ export declare const arrayToMap: <T extends {
24
+ id: string;
25
+ } | string>(items: readonly T[] | Map<string, T>) => Map<any, any>;
26
+ /**
27
+ * Checks whether first directional character is RTL. Meaning whether it starts
28
+ * with RTL characters, or indeterminate (numbers etc.) characters followed by
29
+ * RTL.
30
+ * See https://github.com/excalidraw/excalidraw/pull/1722#discussion_r436340171
31
+ */
32
+ export declare const isRTL: (text: string) => boolean;
@@ -0,0 +1,53 @@
1
+ export * from "./elements";
2
+ export * from "./math";
3
+ export * from "./state";
4
+ export * from "./constants";
5
+ export * from "./shape";
6
+ export * from "./bounds";
7
+ export * from "./normalize";
8
+ export * from "./url";
9
+ export * from "./version";
10
+ export * from "./filebyte";
11
+ export * from "./functionCodec";
12
+ /**
13
+ * supply `null` as message if non-never value is valid, you just need to
14
+ * typecheck against it
15
+ */
16
+ export const assertNever = (value, message, softAssert) => {
17
+ if (!message) {
18
+ return value;
19
+ }
20
+ if (softAssert) {
21
+ console.error(message);
22
+ return value;
23
+ }
24
+ throw new Error(message);
25
+ };
26
+ export const getUpdatedTimestamp = () => Date.now();
27
+ export const isFiniteNumber = (value) => {
28
+ return typeof value === "number" && Number.isFinite(value);
29
+ };
30
+ /**
31
+ * Transforms array of objects containing `id` attribute,
32
+ * or array of ids (strings), into a Map, keyd by `id`.
33
+ */
34
+ export const arrayToMap = (items) => {
35
+ if (items instanceof Map) {
36
+ return items;
37
+ }
38
+ return items.reduce((acc, element) => {
39
+ acc.set(typeof element === "string" ? element : element.id, element);
40
+ return acc;
41
+ }, new Map());
42
+ };
43
+ const RS_LTR_CHARS = "A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02B8\u0300-\u0590\u0800-\u1FFF" +
44
+ "\u2C00-\uFB1C\uFDFE-\uFE6F\uFEFD-\uFFFF";
45
+ const RS_RTL_CHARS = "\u0591-\u07FF\uFB1D-\uFDFD\uFE70-\uFEFC";
46
+ const RE_RTL_CHECK = new RegExp(`^[^${RS_LTR_CHARS}]*[${RS_RTL_CHARS}]`);
47
+ /**
48
+ * Checks whether first directional character is RTL. Meaning whether it starts
49
+ * with RTL characters, or indeterminate (numbers etc.) characters followed by
50
+ * RTL.
51
+ * See https://github.com/excalidraw/excalidraw/pull/1722#discussion_r436340171
52
+ */
53
+ export const isRTL = (text) => RE_RTL_CHECK.test(text);
@@ -0,0 +1,63 @@
1
+ /**
2
+ * This is a 2D Projective Geometric Algebra implementation.
3
+ *
4
+ * For wider context on geometric algebra visit see https://bivector.net.
5
+ *
6
+ * For this specific algebra see cheatsheet https://bivector.net/2DPGA.pdf.
7
+ *
8
+ * Converted from generator written by enki, with a ton of added on top.
9
+ *
10
+ * This library uses 8-vectors to represent points, directions and lines
11
+ * in 2D space.
12
+ *
13
+ * An array `[a, b, c, d, e, f, g, h]` represents a n(8)vector:
14
+ * a + b*e0 + c*e1 + d*e2 + e*e01 + f*e20 + g*e12 + h*e012
15
+ *
16
+ * See GAPoint, GALine, GADirection and GATransform modules for common
17
+ * operations.
18
+ */
19
+ export type GAPoint = NVector;
20
+ export type GADirection = NVector;
21
+ export type GALine = NVector;
22
+ export type GATransform = NVector;
23
+ export declare const point: (x: number, y: number) => GAPoint;
24
+ export declare const origin: () => GAPoint;
25
+ export declare const direction: (x: number, y: number) => GADirection;
26
+ export declare const offset: (x: number, y: number) => GADirection;
27
+ type NVector = readonly [
28
+ number,
29
+ number,
30
+ number,
31
+ number,
32
+ number,
33
+ number,
34
+ number,
35
+ number
36
+ ];
37
+ export declare const nvector: (value?: number, index?: number) => NVector;
38
+ export declare const toString: (nvector: NVector) => string;
39
+ export declare const reverse: (nvector: NVector) => NVector;
40
+ export declare const dual: (nvector: NVector) => NVector;
41
+ export declare const conjugate: (nvector: NVector) => NVector;
42
+ export declare const involute: (nvector: NVector) => NVector;
43
+ export declare const add: (a: NVector, b: NVector | number) => NVector;
44
+ export declare const sub: (a: NVector, b: NVector | number) => NVector;
45
+ export declare const mul: (a: NVector, b: NVector | number) => NVector;
46
+ export declare const mulScalar: (a: NVector, b: NVector) => number;
47
+ export declare const meet: (a: NVector, b: NVector) => NVector;
48
+ export declare const join: (a: NVector, b: NVector) => NVector;
49
+ export declare const joinScalar: (a: NVector, b: NVector) => number;
50
+ export declare const dot: (a: NVector, b: NVector) => NVector;
51
+ export declare const norm: (a: NVector) => number;
52
+ export declare const inorm: (a: NVector) => number;
53
+ export declare const normalized: (a: NVector) => NVector;
54
+ export declare const inormalized: (a: NVector) => NVector;
55
+ export declare const E0: NVector;
56
+ export declare const E1: NVector;
57
+ export declare const E2: NVector;
58
+ export declare const E01: NVector;
59
+ export declare const E20: NVector;
60
+ export declare const E12: NVector;
61
+ export declare const E012: NVector;
62
+ export declare const I: NVector;
63
+ export {};
@@ -0,0 +1,268 @@
1
+ /**
2
+ * This is a 2D Projective Geometric Algebra implementation.
3
+ *
4
+ * For wider context on geometric algebra visit see https://bivector.net.
5
+ *
6
+ * For this specific algebra see cheatsheet https://bivector.net/2DPGA.pdf.
7
+ *
8
+ * Converted from generator written by enki, with a ton of added on top.
9
+ *
10
+ * This library uses 8-vectors to represent points, directions and lines
11
+ * in 2D space.
12
+ *
13
+ * An array `[a, b, c, d, e, f, g, h]` represents a n(8)vector:
14
+ * a + b*e0 + c*e1 + d*e2 + e*e01 + f*e20 + g*e12 + h*e012
15
+ *
16
+ * See GAPoint, GALine, GADirection and GATransform modules for common
17
+ * operations.
18
+ */
19
+ export const point = (x, y) => [0, 0, 0, 0, y, x, 1, 0];
20
+ export const origin = () => [0, 0, 0, 0, 0, 0, 1, 0];
21
+ export const direction = (x, y) => {
22
+ const norm = Math.hypot(x, y); // same as `inorm(direction(x, y))`
23
+ return [0, 0, 0, 0, y / norm, x / norm, 0, 0];
24
+ };
25
+ export const offset = (x, y) => [
26
+ 0,
27
+ 0,
28
+ 0,
29
+ 0,
30
+ y,
31
+ x,
32
+ 0,
33
+ 0,
34
+ ];
35
+ // These are labels for what each number in an nvector represents
36
+ const NVECTOR_BASE = ["1", "e0", "e1", "e2", "e01", "e20", "e12", "e012"];
37
+ // Used to represent points, lines and transformations
38
+ export const nvector = (value = 0, index = 0) => {
39
+ const result = [0, 0, 0, 0, 0, 0, 0, 0];
40
+ if (index < 0 || index > 7) {
41
+ throw new Error(`Expected \`index\` between 0 and 7, got \`${index}\``);
42
+ }
43
+ if (value !== 0) {
44
+ result[index] = value;
45
+ }
46
+ return result;
47
+ };
48
+ const STRING_EPSILON = 0.000001;
49
+ export const toString = (nvector) => {
50
+ const result = nvector
51
+ .map((value, index) => Math.abs(value) > STRING_EPSILON
52
+ ? value.toFixed(7).replace(/(\.|0+)$/, "") +
53
+ (index > 0 ? NVECTOR_BASE[index] : "")
54
+ : null)
55
+ .filter((representation) => representation != null)
56
+ .join(" + ");
57
+ return result === "" ? "0" : result;
58
+ };
59
+ // Reverse the order of the basis blades.
60
+ export const reverse = (nvector) => [
61
+ nvector[0],
62
+ nvector[1],
63
+ nvector[2],
64
+ nvector[3],
65
+ -nvector[4],
66
+ -nvector[5],
67
+ -nvector[6],
68
+ -nvector[7],
69
+ ];
70
+ // Poincare duality operator.
71
+ export const dual = (nvector) => [
72
+ nvector[7],
73
+ nvector[6],
74
+ nvector[5],
75
+ nvector[4],
76
+ nvector[3],
77
+ nvector[2],
78
+ nvector[1],
79
+ nvector[0],
80
+ ];
81
+ // Clifford Conjugation
82
+ export const conjugate = (nvector) => [
83
+ nvector[0],
84
+ -nvector[1],
85
+ -nvector[2],
86
+ -nvector[3],
87
+ -nvector[4],
88
+ -nvector[5],
89
+ -nvector[6],
90
+ nvector[7],
91
+ ];
92
+ // Main involution
93
+ export const involute = (nvector) => [
94
+ nvector[0],
95
+ -nvector[1],
96
+ -nvector[2],
97
+ -nvector[3],
98
+ nvector[4],
99
+ nvector[5],
100
+ nvector[6],
101
+ -nvector[7],
102
+ ];
103
+ // Multivector addition
104
+ export const add = (a, b) => {
105
+ if (isNumber(b)) {
106
+ return [a[0] + b, a[1], a[2], a[3], a[4], a[5], a[6], a[7]];
107
+ }
108
+ return [
109
+ a[0] + b[0],
110
+ a[1] + b[1],
111
+ a[2] + b[2],
112
+ a[3] + b[3],
113
+ a[4] + b[4],
114
+ a[5] + b[5],
115
+ a[6] + b[6],
116
+ a[7] + b[7],
117
+ ];
118
+ };
119
+ // Multivector subtraction
120
+ export const sub = (a, b) => {
121
+ if (isNumber(b)) {
122
+ return [a[0] - b, a[1], a[2], a[3], a[4], a[5], a[6], a[7]];
123
+ }
124
+ return [
125
+ a[0] - b[0],
126
+ a[1] - b[1],
127
+ a[2] - b[2],
128
+ a[3] - b[3],
129
+ a[4] - b[4],
130
+ a[5] - b[5],
131
+ a[6] - b[6],
132
+ a[7] - b[7],
133
+ ];
134
+ };
135
+ // The geometric product.
136
+ export const mul = (a, b) => {
137
+ if (isNumber(b)) {
138
+ return [
139
+ a[0] * b,
140
+ a[1] * b,
141
+ a[2] * b,
142
+ a[3] * b,
143
+ a[4] * b,
144
+ a[5] * b,
145
+ a[6] * b,
146
+ a[7] * b,
147
+ ];
148
+ }
149
+ return [
150
+ mulScalar(a, b),
151
+ b[1] * a[0] +
152
+ b[0] * a[1] -
153
+ b[4] * a[2] +
154
+ b[5] * a[3] +
155
+ b[2] * a[4] -
156
+ b[3] * a[5] -
157
+ b[7] * a[6] -
158
+ b[6] * a[7],
159
+ b[2] * a[0] + b[0] * a[2] - b[6] * a[3] + b[3] * a[6],
160
+ b[3] * a[0] + b[6] * a[2] + b[0] * a[3] - b[2] * a[6],
161
+ b[4] * a[0] +
162
+ b[2] * a[1] -
163
+ b[1] * a[2] +
164
+ b[7] * a[3] +
165
+ b[0] * a[4] +
166
+ b[6] * a[5] -
167
+ b[5] * a[6] +
168
+ b[3] * a[7],
169
+ b[5] * a[0] -
170
+ b[3] * a[1] +
171
+ b[7] * a[2] +
172
+ b[1] * a[3] -
173
+ b[6] * a[4] +
174
+ b[0] * a[5] +
175
+ b[4] * a[6] +
176
+ b[2] * a[7],
177
+ b[6] * a[0] + b[3] * a[2] - b[2] * a[3] + b[0] * a[6],
178
+ b[7] * a[0] +
179
+ b[6] * a[1] +
180
+ b[5] * a[2] +
181
+ b[4] * a[3] +
182
+ b[3] * a[4] +
183
+ b[2] * a[5] +
184
+ b[1] * a[6] +
185
+ b[0] * a[7],
186
+ ];
187
+ };
188
+ export const mulScalar = (a, b) => b[0] * a[0] + b[2] * a[2] + b[3] * a[3] - b[6] * a[6];
189
+ // The outer/exterior/wedge product.
190
+ export const meet = (a, b) => [
191
+ b[0] * a[0],
192
+ b[1] * a[0] + b[0] * a[1],
193
+ b[2] * a[0] + b[0] * a[2],
194
+ b[3] * a[0] + b[0] * a[3],
195
+ b[4] * a[0] + b[2] * a[1] - b[1] * a[2] + b[0] * a[4],
196
+ b[5] * a[0] - b[3] * a[1] + b[1] * a[3] + b[0] * a[5],
197
+ b[6] * a[0] + b[3] * a[2] - b[2] * a[3] + b[0] * a[6],
198
+ b[7] * a[0] +
199
+ b[6] * a[1] +
200
+ b[5] * a[2] +
201
+ b[4] * a[3] +
202
+ b[3] * a[4] +
203
+ b[2] * a[5] +
204
+ b[1] * a[6],
205
+ ];
206
+ // The regressive product.
207
+ export const join = (a, b) => [
208
+ joinScalar(a, b),
209
+ a[1] * b[7] + a[4] * b[5] - a[5] * b[4] + a[7] * b[1],
210
+ a[2] * b[7] - a[4] * b[6] + a[6] * b[4] + a[7] * b[2],
211
+ a[3] * b[7] + a[5] * b[6] - a[6] * b[5] + a[7] * b[3],
212
+ a[4] * b[7] + a[7] * b[4],
213
+ a[5] * b[7] + a[7] * b[5],
214
+ a[6] * b[7] + a[7] * b[6],
215
+ a[7] * b[7],
216
+ ];
217
+ export const joinScalar = (a, b) => a[0] * b[7] +
218
+ a[1] * b[6] +
219
+ a[2] * b[5] +
220
+ a[3] * b[4] +
221
+ a[4] * b[3] +
222
+ a[5] * b[2] +
223
+ a[6] * b[1] +
224
+ a[7] * b[0];
225
+ // The inner product.
226
+ export const dot = (a, b) => [
227
+ b[0] * a[0] + b[2] * a[2] + b[3] * a[3] - b[6] * a[6],
228
+ b[1] * a[0] +
229
+ b[0] * a[1] -
230
+ b[4] * a[2] +
231
+ b[5] * a[3] +
232
+ b[2] * a[4] -
233
+ b[3] * a[5] -
234
+ b[7] * a[6] -
235
+ b[6] * a[7],
236
+ b[2] * a[0] + b[0] * a[2] - b[6] * a[3] + b[3] * a[6],
237
+ b[3] * a[0] + b[6] * a[2] + b[0] * a[3] - b[2] * a[6],
238
+ b[4] * a[0] + b[7] * a[3] + b[0] * a[4] + b[3] * a[7],
239
+ b[5] * a[0] + b[7] * a[2] + b[0] * a[5] + b[2] * a[7],
240
+ b[6] * a[0] + b[0] * a[6],
241
+ b[7] * a[0] + b[0] * a[7],
242
+ ];
243
+ export const norm = (a) => Math.sqrt(Math.abs(a[0] * a[0] - a[2] * a[2] - a[3] * a[3] + a[6] * a[6]));
244
+ export const inorm = (a) => Math.sqrt(Math.abs(a[7] * a[7] - a[5] * a[5] - a[4] * a[4] + a[1] * a[1]));
245
+ export const normalized = (a) => {
246
+ const n = norm(a);
247
+ if (n === 0 || n === 1) {
248
+ return a;
249
+ }
250
+ const sign = a[6] < 0 ? -1 : 1;
251
+ return mul(a, sign / n);
252
+ };
253
+ export const inormalized = (a) => {
254
+ const n = inorm(a);
255
+ if (n === 0 || n === 1) {
256
+ return a;
257
+ }
258
+ return mul(a, 1 / n);
259
+ };
260
+ const isNumber = (a) => typeof a === "number";
261
+ export const E0 = nvector(1, 1);
262
+ export const E1 = nvector(1, 2);
263
+ export const E2 = nvector(1, 3);
264
+ export const E01 = nvector(1, 4);
265
+ export const E20 = nvector(1, 5);
266
+ export const E12 = nvector(1, 6);
267
+ export const E012 = nvector(1, 7);
268
+ export const I = E012;
@@ -0,0 +1,9 @@
1
+ import type { GALine, GADirection, GAPoint } from "ducjs/utils/math/algebra/ga";
2
+ /**
3
+ * A direction is stored as an array `[0, 0, 0, 0, y, x, 0, 0]` representing
4
+ * vector `(x, y)`.
5
+ */
6
+ export declare const fromDirection: (point: GAPoint) => GAPoint;
7
+ export declare const fromTo: (from: GAPoint, to: GAPoint) => GADirection;
8
+ export declare const directionOrthogonal: (direction: GADirection) => GADirection;
9
+ export declare const orthogonalToLine: (line: GALine) => GADirection;
@@ -0,0 +1,18 @@
1
+ import * as GA from "ducjs/utils/math/algebra/ga";
2
+ /**
3
+ * A direction is stored as an array `[0, 0, 0, 0, y, x, 0, 0]` representing
4
+ * vector `(x, y)`.
5
+ */
6
+ export const fromDirection = (point) => [
7
+ 0,
8
+ 0,
9
+ 0,
10
+ 0,
11
+ point[4],
12
+ point[5],
13
+ 0,
14
+ 0,
15
+ ];
16
+ export const fromTo = (from, to) => GA.inormalized([0, 0, 0, 0, to[4] - from[4], to[5] - from[5], 0, 0]);
17
+ export const directionOrthogonal = (direction) => GA.inormalized([0, 0, 0, 0, -direction[5], direction[4], 0, 0]);
18
+ export const orthogonalToLine = (line) => GA.mul(line, GA.I);
@@ -0,0 +1,23 @@
1
+ import type { GALine, GAPoint } from "ducjs/utils/math/algebra/ga";
2
+ /**
3
+ * A line is stored as an array `[0, c, a, b, 0, 0, 0, 0]` representing:
4
+ * c * e0 + a * e1 + b*e2
5
+ *
6
+ * This maps to a standard formula `a * x + b * y + c`.
7
+ *
8
+ * `(-b, a)` corresponds to a 2D vector parallel to the line. The lines
9
+ * have a natural orientation, corresponding to that vector.
10
+ *
11
+ * The magnitude ("norm") of the line is `sqrt(a ^ 2 + b ^ 2)`.
12
+ * `c / norm(line)` is the oriented distance from line to origin.
13
+ */
14
+ export declare const vector: (x: number, y: number) => GALine;
15
+ export declare const equation: (a: number, b: number, c: number) => GALine;
16
+ export declare const through: (from: GAPoint, to: GAPoint) => GALine;
17
+ export declare const orthogonal: (line: GALine, point: GAPoint) => GALine;
18
+ export declare const orthogonalThrough: (against: GAPoint, intersection: GAPoint) => GALine;
19
+ export declare const parallel: (line: GALine, distance: number) => GALine;
20
+ export declare const parallelThrough: (line: GALine, point: GAPoint) => GALine;
21
+ export declare const distance: (line1: GALine, line2: GALine) => number;
22
+ export declare const angle: (line1: GALine, line2: GALine) => number;
23
+ export declare const sign: (line: GALine) => number;