ducjs 2.3.0 → 3.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 (529) hide show
  1. package/README.md +2 -2
  2. package/dist/enums.d.ts +135 -0
  3. package/dist/enums.js +155 -0
  4. package/dist/index.d.ts +8 -4
  5. package/dist/index.js +8 -4
  6. package/dist/lazy-files.d.ts +44 -0
  7. package/dist/lazy-files.js +129 -0
  8. package/dist/parse.d.ts +21 -55
  9. package/dist/parse.js +58 -1445
  10. package/dist/restore/index.d.ts +0 -1
  11. package/dist/restore/index.js +0 -1
  12. package/dist/restore/restoreDataState.d.ts +6 -10
  13. package/dist/restore/restoreDataState.js +117 -127
  14. package/dist/restore/restoreElements.d.ts +1 -1
  15. package/dist/restore/restoreElements.js +37 -494
  16. package/dist/serialize.d.ts +11 -4
  17. package/dist/serialize.js +58 -2545
  18. package/dist/technical/index.d.ts +0 -1
  19. package/dist/technical/index.js +0 -1
  20. package/dist/technical/scopes.d.ts +1 -1
  21. package/dist/technical/scopes.js +1 -1
  22. package/dist/transform.d.ts +12 -0
  23. package/dist/transform.js +442 -0
  24. package/dist/types/elements/index.d.ts +120 -693
  25. package/dist/types/elements/typeChecks.d.ts +6 -3
  26. package/dist/types/elements/typeChecks.js +9 -8
  27. package/dist/types/geometryTypes.d.ts +1 -1
  28. package/dist/types/index.d.ts +38 -305
  29. package/dist/utils/constants.d.ts +21 -100
  30. package/dist/utils/constants.js +29 -212
  31. package/dist/utils/elements/freedrawElement.d.ts +6 -0
  32. package/dist/utils/elements/freedrawElement.js +28 -11
  33. package/dist/utils/elements/index.d.ts +3 -14
  34. package/dist/utils/elements/index.js +7 -99
  35. package/dist/utils/elements/linearElement.d.ts +2 -2
  36. package/dist/utils/elements/newElement.d.ts +2 -12
  37. package/dist/utils/elements/newElement.js +32 -52
  38. package/dist/utils/elements/textElement.d.ts +3 -3
  39. package/dist/utils/elements/textElement.js +44 -17
  40. package/dist/utils/math/index.d.ts +5 -4
  41. package/dist/utils/math/index.js +3 -3
  42. package/dist/utils/shape.js +2 -2
  43. package/dist/utils/state/index.d.ts +0 -1
  44. package/dist/utils/state/index.js +5 -71
  45. package/dist/utils/traverse.d.ts +8 -0
  46. package/dist/utils/traverse.js +37 -0
  47. package/dist/version-control.d.ts +61 -0
  48. package/dist/version-control.js +84 -0
  49. package/dist/wasm.d.ts +20 -0
  50. package/dist/wasm.js +52 -0
  51. package/package.json +2 -2
  52. package/dist/flatbuffers/duc/alternate-units.d.ts +0 -21
  53. package/dist/flatbuffers/duc/alternate-units.js +0 -66
  54. package/dist/flatbuffers/duc/angular-unit-system.d.ts +0 -17
  55. package/dist/flatbuffers/duc/angular-unit-system.js +0 -50
  56. package/dist/flatbuffers/duc/angular-units-format.d.ts +0 -7
  57. package/dist/flatbuffers/duc/angular-units-format.js +0 -10
  58. package/dist/flatbuffers/duc/axis.d.ts +0 -5
  59. package/dist/flatbuffers/duc/axis.js +0 -8
  60. package/dist/flatbuffers/duc/bezier-mirroring.d.ts +0 -5
  61. package/dist/flatbuffers/duc/bezier-mirroring.js +0 -8
  62. package/dist/flatbuffers/duc/blending.d.ts +0 -9
  63. package/dist/flatbuffers/duc/blending.js +0 -12
  64. package/dist/flatbuffers/duc/block-attachment.d.ts +0 -4
  65. package/dist/flatbuffers/duc/block-attachment.js +0 -7
  66. package/dist/flatbuffers/duc/boolean-operation.d.ts +0 -6
  67. package/dist/flatbuffers/duc/boolean-operation.js +0 -9
  68. package/dist/flatbuffers/duc/bound-element.d.ts +0 -17
  69. package/dist/flatbuffers/duc/bound-element.js +0 -48
  70. package/dist/flatbuffers/duc/checkpoint.d.ts +0 -22
  71. package/dist/flatbuffers/duc/checkpoint.js +0 -75
  72. package/dist/flatbuffers/duc/column-layout.d.ts +0 -22
  73. package/dist/flatbuffers/duc/column-layout.js +0 -72
  74. package/dist/flatbuffers/duc/column-type.d.ts +0 -5
  75. package/dist/flatbuffers/duc/column-type.js +0 -8
  76. package/dist/flatbuffers/duc/custom-hatch-pattern.d.ts +0 -23
  77. package/dist/flatbuffers/duc/custom-hatch-pattern.js +0 -71
  78. package/dist/flatbuffers/duc/datum-bracket-style.d.ts +0 -5
  79. package/dist/flatbuffers/duc/datum-bracket-style.js +0 -8
  80. package/dist/flatbuffers/duc/datum-reference.d.ts +0 -17
  81. package/dist/flatbuffers/duc/datum-reference.js +0 -49
  82. package/dist/flatbuffers/duc/datum-target-type.d.ts +0 -6
  83. package/dist/flatbuffers/duc/datum-target-type.js +0 -9
  84. package/dist/flatbuffers/duc/decimal-separator.d.ts +0 -4
  85. package/dist/flatbuffers/duc/decimal-separator.js +0 -7
  86. package/dist/flatbuffers/duc/delta.d.ts +0 -22
  87. package/dist/flatbuffers/duc/delta.js +0 -75
  88. package/dist/flatbuffers/duc/dictionary-entry.d.ts +0 -17
  89. package/dist/flatbuffers/duc/dictionary-entry.js +0 -49
  90. package/dist/flatbuffers/duc/dimension-baseline-data.d.ts +0 -14
  91. package/dist/flatbuffers/duc/dimension-baseline-data.js +0 -40
  92. package/dist/flatbuffers/duc/dimension-bindings.d.ts +0 -17
  93. package/dist/flatbuffers/duc/dimension-bindings.js +0 -50
  94. package/dist/flatbuffers/duc/dimension-continue-data.d.ts +0 -14
  95. package/dist/flatbuffers/duc/dimension-continue-data.js +0 -40
  96. package/dist/flatbuffers/duc/dimension-definition-points.d.ts +0 -21
  97. package/dist/flatbuffers/duc/dimension-definition-points.js +0 -64
  98. package/dist/flatbuffers/duc/dimension-ext-line-style.d.ts +0 -18
  99. package/dist/flatbuffers/duc/dimension-ext-line-style.js +0 -57
  100. package/dist/flatbuffers/duc/dimension-fit-rule.d.ts +0 -6
  101. package/dist/flatbuffers/duc/dimension-fit-rule.js +0 -9
  102. package/dist/flatbuffers/duc/dimension-fit-style.d.ts +0 -19
  103. package/dist/flatbuffers/duc/dimension-fit-style.js +0 -58
  104. package/dist/flatbuffers/duc/dimension-line-style.d.ts +0 -16
  105. package/dist/flatbuffers/duc/dimension-line-style.js +0 -49
  106. package/dist/flatbuffers/duc/dimension-symbol-style.d.ts +0 -22
  107. package/dist/flatbuffers/duc/dimension-symbol-style.js +0 -72
  108. package/dist/flatbuffers/duc/dimension-text-placement.d.ts +0 -5
  109. package/dist/flatbuffers/duc/dimension-text-placement.js +0 -8
  110. package/dist/flatbuffers/duc/dimension-tolerance-style.d.ts +0 -24
  111. package/dist/flatbuffers/duc/dimension-tolerance-style.js +0 -71
  112. package/dist/flatbuffers/duc/dimension-type.d.ts +0 -15
  113. package/dist/flatbuffers/duc/dimension-type.js +0 -18
  114. package/dist/flatbuffers/duc/dimension-units-format.d.ts +0 -7
  115. package/dist/flatbuffers/duc/dimension-units-format.js +0 -10
  116. package/dist/flatbuffers/duc/dimension-validation-rules.d.ts +0 -25
  117. package/dist/flatbuffers/duc/dimension-validation-rules.js +0 -74
  118. package/dist/flatbuffers/duc/document-grid-align-items.d.ts +0 -5
  119. package/dist/flatbuffers/duc/document-grid-align-items.js +0 -8
  120. package/dist/flatbuffers/duc/document-grid-config.d.ts +0 -22
  121. package/dist/flatbuffers/duc/document-grid-config.js +0 -73
  122. package/dist/flatbuffers/duc/duc-arrow-element.d.ts +0 -16
  123. package/dist/flatbuffers/duc/duc-arrow-element.js +0 -49
  124. package/dist/flatbuffers/duc/duc-block-attribute-definition-entry.d.ts +0 -16
  125. package/dist/flatbuffers/duc/duc-block-attribute-definition-entry.js +0 -44
  126. package/dist/flatbuffers/duc/duc-block-attribute-definition.d.ts +0 -22
  127. package/dist/flatbuffers/duc/duc-block-attribute-definition.js +0 -64
  128. package/dist/flatbuffers/duc/duc-block-collection-entry.d.ts +0 -16
  129. package/dist/flatbuffers/duc/duc-block-collection-entry.js +0 -48
  130. package/dist/flatbuffers/duc/duc-block-collection.d.ts +0 -31
  131. package/dist/flatbuffers/duc/duc-block-collection.js +0 -97
  132. package/dist/flatbuffers/duc/duc-block-duplication-array.d.ts +0 -19
  133. package/dist/flatbuffers/duc/duc-block-duplication-array.js +0 -64
  134. package/dist/flatbuffers/duc/duc-block-instance-element.d.ts +0 -10
  135. package/dist/flatbuffers/duc/duc-block-instance-element.js +0 -28
  136. package/dist/flatbuffers/duc/duc-block-instance.d.ts +0 -32
  137. package/dist/flatbuffers/duc/duc-block-instance.js +0 -100
  138. package/dist/flatbuffers/duc/duc-block-metadata.d.ts +0 -26
  139. package/dist/flatbuffers/duc/duc-block-metadata.js +0 -90
  140. package/dist/flatbuffers/duc/duc-block.d.ts +0 -36
  141. package/dist/flatbuffers/duc/duc-block.js +0 -112
  142. package/dist/flatbuffers/duc/duc-common-style.d.ts +0 -16
  143. package/dist/flatbuffers/duc/duc-common-style.js +0 -44
  144. package/dist/flatbuffers/duc/duc-dimension-element.d.ts +0 -45
  145. package/dist/flatbuffers/duc/duc-dimension-element.js +0 -120
  146. package/dist/flatbuffers/duc/duc-dimension-style.d.ts +0 -28
  147. package/dist/flatbuffers/duc/duc-dimension-style.js +0 -76
  148. package/dist/flatbuffers/duc/duc-doc-element.d.ts +0 -39
  149. package/dist/flatbuffers/duc/duc-doc-element.js +0 -110
  150. package/dist/flatbuffers/duc/duc-doc-style.d.ts +0 -19
  151. package/dist/flatbuffers/duc/duc-doc-style.js +0 -52
  152. package/dist/flatbuffers/duc/duc-element-base.d.ts +0 -100
  153. package/dist/flatbuffers/duc/duc-element-base.js +0 -315
  154. package/dist/flatbuffers/duc/duc-element-styles-base.d.ts +0 -30
  155. package/dist/flatbuffers/duc/duc-element-styles-base.js +0 -103
  156. package/dist/flatbuffers/duc/duc-ellipse-element.d.ts +0 -22
  157. package/dist/flatbuffers/duc/duc-ellipse-element.js +0 -73
  158. package/dist/flatbuffers/duc/duc-embeddable-element.d.ts +0 -14
  159. package/dist/flatbuffers/duc/duc-embeddable-element.js +0 -41
  160. package/dist/flatbuffers/duc/duc-external-file-data.d.ts +0 -27
  161. package/dist/flatbuffers/duc/duc-external-file-data.js +0 -92
  162. package/dist/flatbuffers/duc/duc-external-file-entry.d.ts +0 -16
  163. package/dist/flatbuffers/duc/duc-external-file-entry.js +0 -44
  164. package/dist/flatbuffers/duc/duc-feature-control-frame-element.d.ts +0 -31
  165. package/dist/flatbuffers/duc/duc-feature-control-frame-element.js +0 -89
  166. package/dist/flatbuffers/duc/duc-feature-control-frame-style.d.ts +0 -22
  167. package/dist/flatbuffers/duc/duc-feature-control-frame-style.js +0 -60
  168. package/dist/flatbuffers/duc/duc-frame-element.d.ts +0 -14
  169. package/dist/flatbuffers/duc/duc-frame-element.js +0 -41
  170. package/dist/flatbuffers/duc/duc-free-draw-element.d.ts +0 -52
  171. package/dist/flatbuffers/duc/duc-free-draw-element.js +0 -154
  172. package/dist/flatbuffers/duc/duc-free-draw-ends.d.ts +0 -18
  173. package/dist/flatbuffers/duc/duc-free-draw-ends.js +0 -56
  174. package/dist/flatbuffers/duc/duc-global-state.d.ts +0 -37
  175. package/dist/flatbuffers/duc/duc-global-state.js +0 -121
  176. package/dist/flatbuffers/duc/duc-group.d.ts +0 -16
  177. package/dist/flatbuffers/duc/duc-group.js +0 -44
  178. package/dist/flatbuffers/duc/duc-hatch-style.d.ts +0 -28
  179. package/dist/flatbuffers/duc/duc-hatch-style.js +0 -79
  180. package/dist/flatbuffers/duc/duc-head.d.ts +0 -19
  181. package/dist/flatbuffers/duc/duc-head.js +0 -57
  182. package/dist/flatbuffers/duc/duc-image-element.d.ts +0 -35
  183. package/dist/flatbuffers/duc/duc-image-element.js +0 -91
  184. package/dist/flatbuffers/duc/duc-image-filter.d.ts +0 -15
  185. package/dist/flatbuffers/duc/duc-image-filter.js +0 -48
  186. package/dist/flatbuffers/duc/duc-layer-overrides.d.ts +0 -16
  187. package/dist/flatbuffers/duc/duc-layer-overrides.js +0 -44
  188. package/dist/flatbuffers/duc/duc-layer.d.ts +0 -21
  189. package/dist/flatbuffers/duc/duc-layer.js +0 -59
  190. package/dist/flatbuffers/duc/duc-leader-element.d.ts +0 -22
  191. package/dist/flatbuffers/duc/duc-leader-element.js +0 -60
  192. package/dist/flatbuffers/duc/duc-leader-style.d.ts +0 -27
  193. package/dist/flatbuffers/duc/duc-leader-style.js +0 -79
  194. package/dist/flatbuffers/duc/duc-line-reference.d.ts +0 -15
  195. package/dist/flatbuffers/duc/duc-line-reference.js +0 -43
  196. package/dist/flatbuffers/duc/duc-line.d.ts +0 -15
  197. package/dist/flatbuffers/duc/duc-line.js +0 -43
  198. package/dist/flatbuffers/duc/duc-linear-element-base.d.ts +0 -38
  199. package/dist/flatbuffers/duc/duc-linear-element-base.js +0 -124
  200. package/dist/flatbuffers/duc/duc-linear-element.d.ts +0 -16
  201. package/dist/flatbuffers/duc/duc-linear-element.js +0 -49
  202. package/dist/flatbuffers/duc/duc-local-state.d.ts +0 -68
  203. package/dist/flatbuffers/duc/duc-local-state.js +0 -206
  204. package/dist/flatbuffers/duc/duc-mermaid-element.d.ts +0 -23
  205. package/dist/flatbuffers/duc/duc-mermaid-element.js +0 -65
  206. package/dist/flatbuffers/duc/duc-model-element.d.ts +0 -26
  207. package/dist/flatbuffers/duc/duc-model-element.js +0 -79
  208. package/dist/flatbuffers/duc/duc-parametric-element.d.ts +0 -16
  209. package/dist/flatbuffers/duc/duc-parametric-element.js +0 -44
  210. package/dist/flatbuffers/duc/duc-path.d.ts +0 -26
  211. package/dist/flatbuffers/duc/duc-path.js +0 -69
  212. package/dist/flatbuffers/duc/duc-pdf-element.d.ts +0 -19
  213. package/dist/flatbuffers/duc/duc-pdf-element.js +0 -51
  214. package/dist/flatbuffers/duc/duc-plot-element.d.ts +0 -19
  215. package/dist/flatbuffers/duc/duc-plot-element.js +0 -52
  216. package/dist/flatbuffers/duc/duc-plot-style.d.ts +0 -11
  217. package/dist/flatbuffers/duc/duc-plot-style.js +0 -32
  218. package/dist/flatbuffers/duc/duc-point-binding.d.ts +0 -26
  219. package/dist/flatbuffers/duc/duc-point-binding.js +0 -73
  220. package/dist/flatbuffers/duc/duc-point.d.ts +0 -18
  221. package/dist/flatbuffers/duc/duc-point.js +0 -57
  222. package/dist/flatbuffers/duc/duc-polygon-element.d.ts +0 -16
  223. package/dist/flatbuffers/duc/duc-polygon-element.js +0 -49
  224. package/dist/flatbuffers/duc/duc-rectangle-element.d.ts +0 -14
  225. package/dist/flatbuffers/duc/duc-rectangle-element.js +0 -41
  226. package/dist/flatbuffers/duc/duc-region.d.ts +0 -19
  227. package/dist/flatbuffers/duc/duc-region.js +0 -51
  228. package/dist/flatbuffers/duc/duc-stack-base.d.ts +0 -27
  229. package/dist/flatbuffers/duc/duc-stack-base.js +0 -78
  230. package/dist/flatbuffers/duc/duc-stack-element-base.d.ts +0 -23
  231. package/dist/flatbuffers/duc/duc-stack-element-base.js +0 -65
  232. package/dist/flatbuffers/duc/duc-stack-like-styles.d.ts +0 -16
  233. package/dist/flatbuffers/duc/duc-stack-like-styles.js +0 -48
  234. package/dist/flatbuffers/duc/duc-table-auto-size.d.ts +0 -15
  235. package/dist/flatbuffers/duc/duc-table-auto-size.js +0 -48
  236. package/dist/flatbuffers/duc/duc-table-cell-entry.d.ts +0 -16
  237. package/dist/flatbuffers/duc/duc-table-cell-entry.js +0 -44
  238. package/dist/flatbuffers/duc/duc-table-cell-span.d.ts +0 -15
  239. package/dist/flatbuffers/duc/duc-table-cell-span.js +0 -48
  240. package/dist/flatbuffers/duc/duc-table-cell-style.d.ts +0 -22
  241. package/dist/flatbuffers/duc/duc-table-cell-style.js +0 -59
  242. package/dist/flatbuffers/duc/duc-table-cell.d.ts +0 -27
  243. package/dist/flatbuffers/duc/duc-table-cell.js +0 -72
  244. package/dist/flatbuffers/duc/duc-table-column-entry.d.ts +0 -16
  245. package/dist/flatbuffers/duc/duc-table-column-entry.js +0 -44
  246. package/dist/flatbuffers/duc/duc-table-column.d.ts +0 -18
  247. package/dist/flatbuffers/duc/duc-table-column.js +0 -51
  248. package/dist/flatbuffers/duc/duc-table-element.d.ts +0 -51
  249. package/dist/flatbuffers/duc/duc-table-element.js +0 -167
  250. package/dist/flatbuffers/duc/duc-table-row-entry.d.ts +0 -16
  251. package/dist/flatbuffers/duc/duc-table-row-entry.js +0 -44
  252. package/dist/flatbuffers/duc/duc-table-row.d.ts +0 -18
  253. package/dist/flatbuffers/duc/duc-table-row.js +0 -51
  254. package/dist/flatbuffers/duc/duc-table-style.d.ts +0 -20
  255. package/dist/flatbuffers/duc/duc-table-style.js +0 -57
  256. package/dist/flatbuffers/duc/duc-text-dynamic-dictionary-source.d.ts +0 -14
  257. package/dist/flatbuffers/duc/duc-text-dynamic-dictionary-source.js +0 -40
  258. package/dist/flatbuffers/duc/duc-text-dynamic-element-source.d.ts +0 -17
  259. package/dist/flatbuffers/duc/duc-text-dynamic-element-source.js +0 -49
  260. package/dist/flatbuffers/duc/duc-text-dynamic-part.d.ts +0 -22
  261. package/dist/flatbuffers/duc/duc-text-dynamic-part.js +0 -58
  262. package/dist/flatbuffers/duc/duc-text-dynamic-source-data.d.ts +0 -9
  263. package/dist/flatbuffers/duc/duc-text-dynamic-source-data.js +0 -26
  264. package/dist/flatbuffers/duc/duc-text-dynamic-source.d.ts +0 -19
  265. package/dist/flatbuffers/duc/duc-text-dynamic-source.js +0 -58
  266. package/dist/flatbuffers/duc/duc-text-element.d.ts +0 -33
  267. package/dist/flatbuffers/duc/duc-text-element.js +0 -94
  268. package/dist/flatbuffers/duc/duc-text-style.d.ts +0 -41
  269. package/dist/flatbuffers/duc/duc-text-style.js +0 -120
  270. package/dist/flatbuffers/duc/duc-ucs.d.ts +0 -16
  271. package/dist/flatbuffers/duc/duc-ucs.js +0 -49
  272. package/dist/flatbuffers/duc/duc-view.d.ts +0 -24
  273. package/dist/flatbuffers/duc/duc-view.js +0 -71
  274. package/dist/flatbuffers/duc/duc-viewport-element.d.ts +0 -36
  275. package/dist/flatbuffers/duc/duc-viewport-element.js +0 -102
  276. package/dist/flatbuffers/duc/duc-viewport-style.d.ts +0 -13
  277. package/dist/flatbuffers/duc/duc-viewport-style.js +0 -40
  278. package/dist/flatbuffers/duc/duc-xray-element.d.ts +0 -23
  279. package/dist/flatbuffers/duc/duc-xray-element.js +0 -66
  280. package/dist/flatbuffers/duc/duc-xray-style.d.ts +0 -14
  281. package/dist/flatbuffers/duc/duc-xray-style.js +0 -40
  282. package/dist/flatbuffers/duc/dynamic-snap-settings.d.ts +0 -17
  283. package/dist/flatbuffers/duc/dynamic-snap-settings.js +0 -56
  284. package/dist/flatbuffers/duc/element-background.d.ts +0 -14
  285. package/dist/flatbuffers/duc/element-background.js +0 -41
  286. package/dist/flatbuffers/duc/element-content-base.d.ts +0 -29
  287. package/dist/flatbuffers/duc/element-content-base.js +0 -80
  288. package/dist/flatbuffers/duc/element-content-preference.d.ts +0 -8
  289. package/dist/flatbuffers/duc/element-content-preference.js +0 -11
  290. package/dist/flatbuffers/duc/element-stroke.d.ts +0 -24
  291. package/dist/flatbuffers/duc/element-stroke.js +0 -66
  292. package/dist/flatbuffers/duc/element-wrapper.d.ts +0 -16
  293. package/dist/flatbuffers/duc/element-wrapper.js +0 -49
  294. package/dist/flatbuffers/duc/element.d.ts +0 -51
  295. package/dist/flatbuffers/duc/element.js +0 -110
  296. package/dist/flatbuffers/duc/exported-data-state.d.ts +0 -102
  297. package/dist/flatbuffers/duc/exported-data-state.js +0 -341
  298. package/dist/flatbuffers/duc/fcfbetween-modifier.d.ts +0 -17
  299. package/dist/flatbuffers/duc/fcfbetween-modifier.js +0 -48
  300. package/dist/flatbuffers/duc/fcfdatum-definition.d.ts +0 -16
  301. package/dist/flatbuffers/duc/fcfdatum-definition.js +0 -43
  302. package/dist/flatbuffers/duc/fcfdatum-style.d.ts +0 -14
  303. package/dist/flatbuffers/duc/fcfdatum-style.js +0 -41
  304. package/dist/flatbuffers/duc/fcfframe-modifiers.d.ts +0 -22
  305. package/dist/flatbuffers/duc/fcfframe-modifiers.js +0 -65
  306. package/dist/flatbuffers/duc/fcflayout-style.d.ts +0 -17
  307. package/dist/flatbuffers/duc/fcflayout-style.js +0 -56
  308. package/dist/flatbuffers/duc/fcfprojected-zone-modifier.d.ts +0 -13
  309. package/dist/flatbuffers/duc/fcfprojected-zone-modifier.js +0 -40
  310. package/dist/flatbuffers/duc/fcfsegment-row.d.ts +0 -17
  311. package/dist/flatbuffers/duc/fcfsegment-row.js +0 -55
  312. package/dist/flatbuffers/duc/fcfsymbol-style.d.ts +0 -13
  313. package/dist/flatbuffers/duc/fcfsymbol-style.js +0 -40
  314. package/dist/flatbuffers/duc/feature-control-frame-segment.d.ts +0 -22
  315. package/dist/flatbuffers/duc/feature-control-frame-segment.js +0 -65
  316. package/dist/flatbuffers/duc/feature-modifier.d.ts +0 -18
  317. package/dist/flatbuffers/duc/feature-modifier.js +0 -21
  318. package/dist/flatbuffers/duc/gdt-symbol.d.ts +0 -22
  319. package/dist/flatbuffers/duc/gdt-symbol.js +0 -25
  320. package/dist/flatbuffers/duc/geometric-point.d.ts +0 -10
  321. package/dist/flatbuffers/duc/geometric-point.js +0 -27
  322. package/dist/flatbuffers/duc/grid-display-type.d.ts +0 -6
  323. package/dist/flatbuffers/duc/grid-display-type.js +0 -9
  324. package/dist/flatbuffers/duc/grid-settings.d.ts +0 -54
  325. package/dist/flatbuffers/duc/grid-settings.js +0 -165
  326. package/dist/flatbuffers/duc/grid-style.d.ts +0 -26
  327. package/dist/flatbuffers/duc/grid-style.js +0 -74
  328. package/dist/flatbuffers/duc/grid-type.d.ts +0 -7
  329. package/dist/flatbuffers/duc/grid-type.js +0 -10
  330. package/dist/flatbuffers/duc/handle-type.d.ts +0 -4
  331. package/dist/flatbuffers/duc/handle-type.js +0 -7
  332. package/dist/flatbuffers/duc/hatch-pattern-line.d.ts +0 -35
  333. package/dist/flatbuffers/duc/hatch-pattern-line.js +0 -93
  334. package/dist/flatbuffers/duc/hatch-style.d.ts +0 -5
  335. package/dist/flatbuffers/duc/hatch-style.js +0 -8
  336. package/dist/flatbuffers/duc/identified-common-style.d.ts +0 -16
  337. package/dist/flatbuffers/duc/identified-common-style.js +0 -44
  338. package/dist/flatbuffers/duc/identified-dimension-style.d.ts +0 -16
  339. package/dist/flatbuffers/duc/identified-dimension-style.js +0 -44
  340. package/dist/flatbuffers/duc/identified-doc-style.d.ts +0 -16
  341. package/dist/flatbuffers/duc/identified-doc-style.js +0 -44
  342. package/dist/flatbuffers/duc/identified-fcfstyle.d.ts +0 -16
  343. package/dist/flatbuffers/duc/identified-fcfstyle.js +0 -44
  344. package/dist/flatbuffers/duc/identified-grid-settings.d.ts +0 -16
  345. package/dist/flatbuffers/duc/identified-grid-settings.js +0 -44
  346. package/dist/flatbuffers/duc/identified-hatch-style.d.ts +0 -16
  347. package/dist/flatbuffers/duc/identified-hatch-style.js +0 -44
  348. package/dist/flatbuffers/duc/identified-leader-style.d.ts +0 -16
  349. package/dist/flatbuffers/duc/identified-leader-style.js +0 -44
  350. package/dist/flatbuffers/duc/identified-snap-settings.d.ts +0 -16
  351. package/dist/flatbuffers/duc/identified-snap-settings.js +0 -44
  352. package/dist/flatbuffers/duc/identified-stack-like-style.d.ts +0 -16
  353. package/dist/flatbuffers/duc/identified-stack-like-style.js +0 -44
  354. package/dist/flatbuffers/duc/identified-table-style.d.ts +0 -16
  355. package/dist/flatbuffers/duc/identified-table-style.js +0 -44
  356. package/dist/flatbuffers/duc/identified-text-style.d.ts +0 -16
  357. package/dist/flatbuffers/duc/identified-text-style.js +0 -44
  358. package/dist/flatbuffers/duc/identified-ucs.d.ts +0 -16
  359. package/dist/flatbuffers/duc/identified-ucs.js +0 -44
  360. package/dist/flatbuffers/duc/identified-view.d.ts +0 -16
  361. package/dist/flatbuffers/duc/identified-view.js +0 -44
  362. package/dist/flatbuffers/duc/identified-viewport-style.d.ts +0 -16
  363. package/dist/flatbuffers/duc/identified-viewport-style.js +0 -44
  364. package/dist/flatbuffers/duc/identified-xray-style.d.ts +0 -16
  365. package/dist/flatbuffers/duc/identified-xray-style.js +0 -44
  366. package/dist/flatbuffers/duc/identifier.d.ts +0 -20
  367. package/dist/flatbuffers/duc/identifier.js +0 -57
  368. package/dist/flatbuffers/duc/image-crop.d.ts +0 -23
  369. package/dist/flatbuffers/duc/image-crop.js +0 -80
  370. package/dist/flatbuffers/duc/image-status.d.ts +0 -5
  371. package/dist/flatbuffers/duc/image-status.js +0 -8
  372. package/dist/flatbuffers/duc/isometric-grid-settings.d.ts +0 -15
  373. package/dist/flatbuffers/duc/isometric-grid-settings.js +0 -48
  374. package/dist/flatbuffers/duc/jsonpatch-operation.d.ts +0 -23
  375. package/dist/flatbuffers/duc/jsonpatch-operation.js +0 -64
  376. package/dist/flatbuffers/duc/layer-snap-filters.d.ts +0 -23
  377. package/dist/flatbuffers/duc/layer-snap-filters.js +0 -76
  378. package/dist/flatbuffers/duc/layer-validation-rules.d.ts +0 -17
  379. package/dist/flatbuffers/duc/layer-validation-rules.js +0 -54
  380. package/dist/flatbuffers/duc/leader-block-content.d.ts +0 -25
  381. package/dist/flatbuffers/duc/leader-block-content.js +0 -85
  382. package/dist/flatbuffers/duc/leader-content-data.d.ts +0 -9
  383. package/dist/flatbuffers/duc/leader-content-data.js +0 -26
  384. package/dist/flatbuffers/duc/leader-content-type.d.ts +0 -4
  385. package/dist/flatbuffers/duc/leader-content-type.js +0 -7
  386. package/dist/flatbuffers/duc/leader-content.d.ts +0 -19
  387. package/dist/flatbuffers/duc/leader-content.js +0 -58
  388. package/dist/flatbuffers/duc/leader-text-block-content.d.ts +0 -14
  389. package/dist/flatbuffers/duc/leader-text-block-content.js +0 -40
  390. package/dist/flatbuffers/duc/line-head.d.ts +0 -17
  391. package/dist/flatbuffers/duc/line-head.js +0 -20
  392. package/dist/flatbuffers/duc/line-spacing-type.d.ts +0 -5
  393. package/dist/flatbuffers/duc/line-spacing-type.js +0 -8
  394. package/dist/flatbuffers/duc/line-spacing.d.ts +0 -16
  395. package/dist/flatbuffers/duc/line-spacing.js +0 -49
  396. package/dist/flatbuffers/duc/linear-unit-system.d.ts +0 -24
  397. package/dist/flatbuffers/duc/linear-unit-system.js +0 -75
  398. package/dist/flatbuffers/duc/margins.d.ts +0 -19
  399. package/dist/flatbuffers/duc/margins.js +0 -64
  400. package/dist/flatbuffers/duc/mark-ellipse-center.d.ts +0 -4
  401. package/dist/flatbuffers/duc/mark-ellipse-center.js +0 -7
  402. package/dist/flatbuffers/duc/material-condition.d.ts +0 -5
  403. package/dist/flatbuffers/duc/material-condition.js +0 -8
  404. package/dist/flatbuffers/duc/object-snap-mode.d.ts +0 -22
  405. package/dist/flatbuffers/duc/object-snap-mode.js +0 -25
  406. package/dist/flatbuffers/duc/paragraph-formatting.d.ts +0 -33
  407. package/dist/flatbuffers/duc/paragraph-formatting.js +0 -106
  408. package/dist/flatbuffers/duc/parametric-source-type.d.ts +0 -4
  409. package/dist/flatbuffers/duc/parametric-source-type.js +0 -7
  410. package/dist/flatbuffers/duc/parametric-source.d.ts +0 -20
  411. package/dist/flatbuffers/duc/parametric-source.js +0 -57
  412. package/dist/flatbuffers/duc/plot-layout.d.ts +0 -14
  413. package/dist/flatbuffers/duc/plot-layout.js +0 -41
  414. package/dist/flatbuffers/duc/point-binding-point.d.ts +0 -15
  415. package/dist/flatbuffers/duc/point-binding-point.js +0 -48
  416. package/dist/flatbuffers/duc/polar-grid-settings.d.ts +0 -17
  417. package/dist/flatbuffers/duc/polar-grid-settings.js +0 -56
  418. package/dist/flatbuffers/duc/polar-tracking-settings.d.ts +0 -29
  419. package/dist/flatbuffers/duc/polar-tracking-settings.js +0 -90
  420. package/dist/flatbuffers/duc/primary-units.d.ts +0 -16
  421. package/dist/flatbuffers/duc/primary-units.js +0 -44
  422. package/dist/flatbuffers/duc/pruning-level.d.ts +0 -5
  423. package/dist/flatbuffers/duc/pruning-level.js +0 -8
  424. package/dist/flatbuffers/duc/snap-marker-settings.d.ts +0 -23
  425. package/dist/flatbuffers/duc/snap-marker-settings.js +0 -79
  426. package/dist/flatbuffers/duc/snap-marker-shape.d.ts +0 -6
  427. package/dist/flatbuffers/duc/snap-marker-shape.js +0 -9
  428. package/dist/flatbuffers/duc/snap-marker-style-entry.d.ts +0 -16
  429. package/dist/flatbuffers/duc/snap-marker-style-entry.js +0 -43
  430. package/dist/flatbuffers/duc/snap-marker-style.d.ts +0 -17
  431. package/dist/flatbuffers/duc/snap-marker-style.js +0 -49
  432. package/dist/flatbuffers/duc/snap-mode.d.ts +0 -4
  433. package/dist/flatbuffers/duc/snap-mode.js +0 -7
  434. package/dist/flatbuffers/duc/snap-override-behavior.d.ts +0 -5
  435. package/dist/flatbuffers/duc/snap-override-behavior.js +0 -8
  436. package/dist/flatbuffers/duc/snap-override.d.ts +0 -17
  437. package/dist/flatbuffers/duc/snap-override.js +0 -49
  438. package/dist/flatbuffers/duc/snap-settings.d.ts +0 -75
  439. package/dist/flatbuffers/duc/snap-settings.js +0 -245
  440. package/dist/flatbuffers/duc/stack-format-properties.d.ts +0 -18
  441. package/dist/flatbuffers/duc/stack-format-properties.js +0 -57
  442. package/dist/flatbuffers/duc/stack-format.d.ts +0 -21
  443. package/dist/flatbuffers/duc/stack-format.js +0 -64
  444. package/dist/flatbuffers/duc/stacked-text-align.d.ts +0 -5
  445. package/dist/flatbuffers/duc/stacked-text-align.js +0 -8
  446. package/dist/flatbuffers/duc/standard-overrides.d.ts +0 -63
  447. package/dist/flatbuffers/duc/standard-overrides.js +0 -162
  448. package/dist/flatbuffers/duc/standard-styles.d.ts +0 -77
  449. package/dist/flatbuffers/duc/standard-styles.js +0 -285
  450. package/dist/flatbuffers/duc/standard-units.d.ts +0 -16
  451. package/dist/flatbuffers/duc/standard-units.js +0 -44
  452. package/dist/flatbuffers/duc/standard-validation.d.ts +0 -16
  453. package/dist/flatbuffers/duc/standard-validation.js +0 -44
  454. package/dist/flatbuffers/duc/standard-view-settings.d.ts +0 -35
  455. package/dist/flatbuffers/duc/standard-view-settings.js +0 -124
  456. package/dist/flatbuffers/duc/standard.d.ts +0 -33
  457. package/dist/flatbuffers/duc/standard.js +0 -90
  458. package/dist/flatbuffers/duc/string-value-entry.d.ts +0 -17
  459. package/dist/flatbuffers/duc/string-value-entry.js +0 -49
  460. package/dist/flatbuffers/duc/stroke-cap.d.ts +0 -5
  461. package/dist/flatbuffers/duc/stroke-cap.js +0 -8
  462. package/dist/flatbuffers/duc/stroke-join.d.ts +0 -5
  463. package/dist/flatbuffers/duc/stroke-join.js +0 -8
  464. package/dist/flatbuffers/duc/stroke-placement.d.ts +0 -5
  465. package/dist/flatbuffers/duc/stroke-placement.js +0 -8
  466. package/dist/flatbuffers/duc/stroke-preference.d.ts +0 -6
  467. package/dist/flatbuffers/duc/stroke-preference.js +0 -9
  468. package/dist/flatbuffers/duc/stroke-side-preference.d.ts +0 -8
  469. package/dist/flatbuffers/duc/stroke-side-preference.js +0 -11
  470. package/dist/flatbuffers/duc/stroke-sides.d.ts +0 -24
  471. package/dist/flatbuffers/duc/stroke-sides.js +0 -67
  472. package/dist/flatbuffers/duc/stroke-style.d.ts +0 -37
  473. package/dist/flatbuffers/duc/stroke-style.js +0 -111
  474. package/dist/flatbuffers/duc/stroke-width.d.ts +0 -5
  475. package/dist/flatbuffers/duc/stroke-width.js +0 -8
  476. package/dist/flatbuffers/duc/table-cell-alignment.d.ts +0 -11
  477. package/dist/flatbuffers/duc/table-cell-alignment.js +0 -14
  478. package/dist/flatbuffers/duc/table-flow-direction.d.ts +0 -4
  479. package/dist/flatbuffers/duc/table-flow-direction.js +0 -7
  480. package/dist/flatbuffers/duc/text-align.d.ts +0 -5
  481. package/dist/flatbuffers/duc/text-align.js +0 -8
  482. package/dist/flatbuffers/duc/text-column.d.ts +0 -15
  483. package/dist/flatbuffers/duc/text-column.js +0 -48
  484. package/dist/flatbuffers/duc/text-field-source-property.d.ts +0 -13
  485. package/dist/flatbuffers/duc/text-field-source-property.js +0 -16
  486. package/dist/flatbuffers/duc/text-field-source-type.d.ts +0 -4
  487. package/dist/flatbuffers/duc/text-field-source-type.js +0 -7
  488. package/dist/flatbuffers/duc/text-flow-direction.d.ts +0 -6
  489. package/dist/flatbuffers/duc/text-flow-direction.js +0 -9
  490. package/dist/flatbuffers/duc/tiling-properties.d.ts +0 -21
  491. package/dist/flatbuffers/duc/tiling-properties.js +0 -75
  492. package/dist/flatbuffers/duc/tolerance-clause.d.ts +0 -27
  493. package/dist/flatbuffers/duc/tolerance-clause.js +0 -84
  494. package/dist/flatbuffers/duc/tolerance-display.d.ts +0 -7
  495. package/dist/flatbuffers/duc/tolerance-display.js +0 -10
  496. package/dist/flatbuffers/duc/tolerance-type.d.ts +0 -5
  497. package/dist/flatbuffers/duc/tolerance-type.js +0 -8
  498. package/dist/flatbuffers/duc/tolerance-zone-type.d.ts +0 -7
  499. package/dist/flatbuffers/duc/tolerance-zone-type.js +0 -10
  500. package/dist/flatbuffers/duc/tracking-line-style.d.ts +0 -26
  501. package/dist/flatbuffers/duc/tracking-line-style.js +0 -74
  502. package/dist/flatbuffers/duc/unit-precision.d.ts +0 -19
  503. package/dist/flatbuffers/duc/unit-precision.js +0 -64
  504. package/dist/flatbuffers/duc/unit-system-base.d.ts +0 -20
  505. package/dist/flatbuffers/duc/unit-system-base.js +0 -65
  506. package/dist/flatbuffers/duc/unit-system.d.ts +0 -4
  507. package/dist/flatbuffers/duc/unit-system.js +0 -7
  508. package/dist/flatbuffers/duc/version-base.d.ts +0 -27
  509. package/dist/flatbuffers/duc/version-base.js +0 -80
  510. package/dist/flatbuffers/duc/version-graph-metadata.d.ts +0 -15
  511. package/dist/flatbuffers/duc/version-graph-metadata.js +0 -48
  512. package/dist/flatbuffers/duc/version-graph.d.ts +0 -31
  513. package/dist/flatbuffers/duc/version-graph.js +0 -94
  514. package/dist/flatbuffers/duc/vertical-align.d.ts +0 -5
  515. package/dist/flatbuffers/duc/vertical-align.js +0 -8
  516. package/dist/flatbuffers/duc/viewport-shade-plot.d.ts +0 -6
  517. package/dist/flatbuffers/duc/viewport-shade-plot.js +0 -9
  518. package/dist/flatbuffers/duc/youtube-states.d.ts +0 -8
  519. package/dist/flatbuffers/duc/youtube-states.js +0 -11
  520. package/dist/flatbuffers/duc.d.ts +0 -234
  521. package/dist/flatbuffers/duc.js +0 -236
  522. package/dist/restore/restoreStandards.d.ts +0 -8
  523. package/dist/restore/restoreStandards.js +0 -224
  524. package/dist/technical/standards.d.ts +0 -124
  525. package/dist/technical/standards.js +0 -10
  526. package/dist/utils/elements/viewportElement.d.ts +0 -6
  527. package/dist/utils/elements/viewportElement.js +0 -9
  528. package/dist/utils/state/grid.d.ts +0 -7
  529. package/dist/utils/state/grid.js +0 -25
package/README.md CHANGED
@@ -13,7 +13,7 @@
13
13
 
14
14
  # ducjs
15
15
 
16
- The `ducjs` package offers comprehensive TypeScript types and helper functions to work effortlessly with the `duc` CAD file format. Built with Flatbuffers and optimized for performance, this package enables you to parse, validate, and manipulate `duc` files with ease.
16
+ The `ducjs` package offers comprehensive TypeScript types and helper functions to work effortlessly with the `duc` CAD file format. Built with SQLite and optimized for performance, this package enables you to parse, validate, and manipulate `duc` files with ease.
17
17
 
18
18
  ## Documentation
19
19
 
@@ -39,4 +39,4 @@ To ensure smooth releases with semantic-release, please follow [these guidelines
39
39
 
40
40
  ---
41
41
 
42
- *The duc format and libraries are constantly evolving, aiming to set new standards in the 2D CAD industry. Be a part of this transformation and help shape the future of design technology!*
42
+ *The duc format and libraries are constantly evolving, aiming to set new standards in the 2D CAD industry. Be a part of this transformation and help shape the future of design technology!*
@@ -0,0 +1,135 @@
1
+ /**
2
+ * Native enum definitions for DUC types.
3
+ * Source of truth: duc.sql
4
+ */
5
+ export declare enum VERTICAL_ALIGN {
6
+ TOP = 10,
7
+ MIDDLE = 11,
8
+ BOTTOM = 12
9
+ }
10
+ export declare enum TEXT_ALIGN {
11
+ LEFT = 10,
12
+ CENTER = 11,
13
+ RIGHT = 12
14
+ }
15
+ export declare enum LINE_SPACING_TYPE {
16
+ AT_LEAST = 10,
17
+ EXACTLY = 11,
18
+ MULTIPLE = 12
19
+ }
20
+ export declare enum STROKE_PLACEMENT {
21
+ INSIDE = 10,
22
+ CENTER = 11,
23
+ OUTSIDE = 12
24
+ }
25
+ export declare enum STROKE_PREFERENCE {
26
+ SOLID = 10,
27
+ DASHED = 11,
28
+ DOTTED = 12,
29
+ CUSTOM = 13
30
+ }
31
+ export declare enum STROKE_SIDE_PREFERENCE {
32
+ TOP = 10,
33
+ BOTTOM = 11,
34
+ LEFT = 12,
35
+ RIGHT = 13,
36
+ CUSTOM = 14,
37
+ ALL = 15
38
+ }
39
+ export declare enum STROKE_CAP {
40
+ BUTT = 10,
41
+ ROUND = 11,
42
+ SQUARE = 12
43
+ }
44
+ export declare enum STROKE_JOIN {
45
+ MITER = 10,
46
+ ROUND = 11,
47
+ BEVEL = 12
48
+ }
49
+ export declare enum LINE_HEAD {
50
+ ARROW = 10,
51
+ BAR = 11,
52
+ CIRCLE = 12,
53
+ CIRCLE_OUTLINED = 13,
54
+ TRIANGLE = 14,
55
+ TRIANGLE_OUTLINED = 15,
56
+ DIAMOND = 16,
57
+ DIAMOND_OUTLINED = 17,
58
+ CROSS = 18,
59
+ OPEN_ARROW = 19,
60
+ REVERSED_ARROW = 20,
61
+ REVERSED_TRIANGLE = 21,
62
+ REVERSED_TRIANGLE_OUTLINED = 22,
63
+ CONE = 23,
64
+ HALF_CONE = 24
65
+ }
66
+ export declare enum BEZIER_MIRRORING {
67
+ NONE = 10,
68
+ ANGLE = 11,
69
+ ANGLE_LENGTH = 12
70
+ }
71
+ export declare enum BLENDING {
72
+ MULTIPLY = 11,
73
+ SCREEN = 12,
74
+ OVERLAY = 13,
75
+ DARKEN = 14,
76
+ LIGHTEN = 15,
77
+ DIFFERENCE = 16,
78
+ EXCLUSION = 17
79
+ }
80
+ export declare enum ELEMENT_CONTENT_PREFERENCE {
81
+ SOLID = 12,
82
+ FILL = 14,
83
+ FIT = 15,
84
+ TILE = 16,
85
+ STRETCH = 17,
86
+ HATCH = 18
87
+ }
88
+ export declare enum HATCH_STYLE {
89
+ NORMAL = 10,
90
+ OUTER = 11,
91
+ IGNORE = 12
92
+ }
93
+ export declare enum IMAGE_STATUS {
94
+ PENDING = 10,
95
+ SAVED = 11,
96
+ ERROR = 12
97
+ }
98
+ export declare enum PRUNING_LEVEL {
99
+ CONSERVATIVE = 10,
100
+ BALANCED = 20,
101
+ AGGRESSIVE = 30
102
+ }
103
+ export declare enum BOOLEAN_OPERATION {
104
+ UNION = 10,
105
+ SUBTRACT = 11,
106
+ INTERSECT = 12,
107
+ EXCLUDE = 13
108
+ }
109
+ export declare enum YOUTUBE_STATES {
110
+ /** The YouTube player is unstarted. */
111
+ UNSTARTED = -1,
112
+ /** The YouTube player has ended. */
113
+ ENDED = 0,
114
+ /** The YouTube player is currently playing. */
115
+ PLAYING = 1,
116
+ /** The YouTube player is paused. */
117
+ PAUSED = 2,
118
+ /** The YouTube player is buffering. */
119
+ BUFFERING = 3,
120
+ /** The YouTube player is cued. */
121
+ CUED = 5
122
+ }
123
+ export declare enum HANDLE_TYPE {
124
+ HANDLE_IN = 10,
125
+ HANDLE_OUT = 11
126
+ }
127
+ export declare enum UNIT_SYSTEM {
128
+ METRIC = 10,
129
+ IMPERIAL = 11
130
+ }
131
+ export declare enum AXIS {
132
+ X = 10,
133
+ Y = 20,
134
+ Z = 30
135
+ }
package/dist/enums.js ADDED
@@ -0,0 +1,155 @@
1
+ /**
2
+ * Native enum definitions for DUC types.
3
+ * Source of truth: duc.sql
4
+ */
5
+ export var VERTICAL_ALIGN;
6
+ (function (VERTICAL_ALIGN) {
7
+ VERTICAL_ALIGN[VERTICAL_ALIGN["TOP"] = 10] = "TOP";
8
+ VERTICAL_ALIGN[VERTICAL_ALIGN["MIDDLE"] = 11] = "MIDDLE";
9
+ VERTICAL_ALIGN[VERTICAL_ALIGN["BOTTOM"] = 12] = "BOTTOM";
10
+ })(VERTICAL_ALIGN || (VERTICAL_ALIGN = {}));
11
+ export var TEXT_ALIGN;
12
+ (function (TEXT_ALIGN) {
13
+ TEXT_ALIGN[TEXT_ALIGN["LEFT"] = 10] = "LEFT";
14
+ TEXT_ALIGN[TEXT_ALIGN["CENTER"] = 11] = "CENTER";
15
+ TEXT_ALIGN[TEXT_ALIGN["RIGHT"] = 12] = "RIGHT";
16
+ })(TEXT_ALIGN || (TEXT_ALIGN = {}));
17
+ export var LINE_SPACING_TYPE;
18
+ (function (LINE_SPACING_TYPE) {
19
+ LINE_SPACING_TYPE[LINE_SPACING_TYPE["AT_LEAST"] = 10] = "AT_LEAST";
20
+ LINE_SPACING_TYPE[LINE_SPACING_TYPE["EXACTLY"] = 11] = "EXACTLY";
21
+ LINE_SPACING_TYPE[LINE_SPACING_TYPE["MULTIPLE"] = 12] = "MULTIPLE";
22
+ })(LINE_SPACING_TYPE || (LINE_SPACING_TYPE = {}));
23
+ export var STROKE_PLACEMENT;
24
+ (function (STROKE_PLACEMENT) {
25
+ STROKE_PLACEMENT[STROKE_PLACEMENT["INSIDE"] = 10] = "INSIDE";
26
+ STROKE_PLACEMENT[STROKE_PLACEMENT["CENTER"] = 11] = "CENTER";
27
+ STROKE_PLACEMENT[STROKE_PLACEMENT["OUTSIDE"] = 12] = "OUTSIDE";
28
+ })(STROKE_PLACEMENT || (STROKE_PLACEMENT = {}));
29
+ export var STROKE_PREFERENCE;
30
+ (function (STROKE_PREFERENCE) {
31
+ STROKE_PREFERENCE[STROKE_PREFERENCE["SOLID"] = 10] = "SOLID";
32
+ STROKE_PREFERENCE[STROKE_PREFERENCE["DASHED"] = 11] = "DASHED";
33
+ STROKE_PREFERENCE[STROKE_PREFERENCE["DOTTED"] = 12] = "DOTTED";
34
+ STROKE_PREFERENCE[STROKE_PREFERENCE["CUSTOM"] = 13] = "CUSTOM";
35
+ })(STROKE_PREFERENCE || (STROKE_PREFERENCE = {}));
36
+ export var STROKE_SIDE_PREFERENCE;
37
+ (function (STROKE_SIDE_PREFERENCE) {
38
+ STROKE_SIDE_PREFERENCE[STROKE_SIDE_PREFERENCE["TOP"] = 10] = "TOP";
39
+ STROKE_SIDE_PREFERENCE[STROKE_SIDE_PREFERENCE["BOTTOM"] = 11] = "BOTTOM";
40
+ STROKE_SIDE_PREFERENCE[STROKE_SIDE_PREFERENCE["LEFT"] = 12] = "LEFT";
41
+ STROKE_SIDE_PREFERENCE[STROKE_SIDE_PREFERENCE["RIGHT"] = 13] = "RIGHT";
42
+ STROKE_SIDE_PREFERENCE[STROKE_SIDE_PREFERENCE["CUSTOM"] = 14] = "CUSTOM";
43
+ STROKE_SIDE_PREFERENCE[STROKE_SIDE_PREFERENCE["ALL"] = 15] = "ALL";
44
+ })(STROKE_SIDE_PREFERENCE || (STROKE_SIDE_PREFERENCE = {}));
45
+ export var STROKE_CAP;
46
+ (function (STROKE_CAP) {
47
+ STROKE_CAP[STROKE_CAP["BUTT"] = 10] = "BUTT";
48
+ STROKE_CAP[STROKE_CAP["ROUND"] = 11] = "ROUND";
49
+ STROKE_CAP[STROKE_CAP["SQUARE"] = 12] = "SQUARE";
50
+ })(STROKE_CAP || (STROKE_CAP = {}));
51
+ export var STROKE_JOIN;
52
+ (function (STROKE_JOIN) {
53
+ STROKE_JOIN[STROKE_JOIN["MITER"] = 10] = "MITER";
54
+ STROKE_JOIN[STROKE_JOIN["ROUND"] = 11] = "ROUND";
55
+ STROKE_JOIN[STROKE_JOIN["BEVEL"] = 12] = "BEVEL";
56
+ })(STROKE_JOIN || (STROKE_JOIN = {}));
57
+ export var LINE_HEAD;
58
+ (function (LINE_HEAD) {
59
+ LINE_HEAD[LINE_HEAD["ARROW"] = 10] = "ARROW";
60
+ LINE_HEAD[LINE_HEAD["BAR"] = 11] = "BAR";
61
+ LINE_HEAD[LINE_HEAD["CIRCLE"] = 12] = "CIRCLE";
62
+ LINE_HEAD[LINE_HEAD["CIRCLE_OUTLINED"] = 13] = "CIRCLE_OUTLINED";
63
+ LINE_HEAD[LINE_HEAD["TRIANGLE"] = 14] = "TRIANGLE";
64
+ LINE_HEAD[LINE_HEAD["TRIANGLE_OUTLINED"] = 15] = "TRIANGLE_OUTLINED";
65
+ LINE_HEAD[LINE_HEAD["DIAMOND"] = 16] = "DIAMOND";
66
+ LINE_HEAD[LINE_HEAD["DIAMOND_OUTLINED"] = 17] = "DIAMOND_OUTLINED";
67
+ LINE_HEAD[LINE_HEAD["CROSS"] = 18] = "CROSS";
68
+ LINE_HEAD[LINE_HEAD["OPEN_ARROW"] = 19] = "OPEN_ARROW";
69
+ LINE_HEAD[LINE_HEAD["REVERSED_ARROW"] = 20] = "REVERSED_ARROW";
70
+ LINE_HEAD[LINE_HEAD["REVERSED_TRIANGLE"] = 21] = "REVERSED_TRIANGLE";
71
+ LINE_HEAD[LINE_HEAD["REVERSED_TRIANGLE_OUTLINED"] = 22] = "REVERSED_TRIANGLE_OUTLINED";
72
+ LINE_HEAD[LINE_HEAD["CONE"] = 23] = "CONE";
73
+ LINE_HEAD[LINE_HEAD["HALF_CONE"] = 24] = "HALF_CONE";
74
+ })(LINE_HEAD || (LINE_HEAD = {}));
75
+ export var BEZIER_MIRRORING;
76
+ (function (BEZIER_MIRRORING) {
77
+ BEZIER_MIRRORING[BEZIER_MIRRORING["NONE"] = 10] = "NONE";
78
+ BEZIER_MIRRORING[BEZIER_MIRRORING["ANGLE"] = 11] = "ANGLE";
79
+ BEZIER_MIRRORING[BEZIER_MIRRORING["ANGLE_LENGTH"] = 12] = "ANGLE_LENGTH";
80
+ })(BEZIER_MIRRORING || (BEZIER_MIRRORING = {}));
81
+ export var BLENDING;
82
+ (function (BLENDING) {
83
+ BLENDING[BLENDING["MULTIPLY"] = 11] = "MULTIPLY";
84
+ BLENDING[BLENDING["SCREEN"] = 12] = "SCREEN";
85
+ BLENDING[BLENDING["OVERLAY"] = 13] = "OVERLAY";
86
+ BLENDING[BLENDING["DARKEN"] = 14] = "DARKEN";
87
+ BLENDING[BLENDING["LIGHTEN"] = 15] = "LIGHTEN";
88
+ BLENDING[BLENDING["DIFFERENCE"] = 16] = "DIFFERENCE";
89
+ BLENDING[BLENDING["EXCLUSION"] = 17] = "EXCLUSION";
90
+ })(BLENDING || (BLENDING = {}));
91
+ export var ELEMENT_CONTENT_PREFERENCE;
92
+ (function (ELEMENT_CONTENT_PREFERENCE) {
93
+ ELEMENT_CONTENT_PREFERENCE[ELEMENT_CONTENT_PREFERENCE["SOLID"] = 12] = "SOLID";
94
+ ELEMENT_CONTENT_PREFERENCE[ELEMENT_CONTENT_PREFERENCE["FILL"] = 14] = "FILL";
95
+ ELEMENT_CONTENT_PREFERENCE[ELEMENT_CONTENT_PREFERENCE["FIT"] = 15] = "FIT";
96
+ ELEMENT_CONTENT_PREFERENCE[ELEMENT_CONTENT_PREFERENCE["TILE"] = 16] = "TILE";
97
+ ELEMENT_CONTENT_PREFERENCE[ELEMENT_CONTENT_PREFERENCE["STRETCH"] = 17] = "STRETCH";
98
+ ELEMENT_CONTENT_PREFERENCE[ELEMENT_CONTENT_PREFERENCE["HATCH"] = 18] = "HATCH";
99
+ })(ELEMENT_CONTENT_PREFERENCE || (ELEMENT_CONTENT_PREFERENCE = {}));
100
+ export var HATCH_STYLE;
101
+ (function (HATCH_STYLE) {
102
+ HATCH_STYLE[HATCH_STYLE["NORMAL"] = 10] = "NORMAL";
103
+ HATCH_STYLE[HATCH_STYLE["OUTER"] = 11] = "OUTER";
104
+ HATCH_STYLE[HATCH_STYLE["IGNORE"] = 12] = "IGNORE";
105
+ })(HATCH_STYLE || (HATCH_STYLE = {}));
106
+ export var IMAGE_STATUS;
107
+ (function (IMAGE_STATUS) {
108
+ IMAGE_STATUS[IMAGE_STATUS["PENDING"] = 10] = "PENDING";
109
+ IMAGE_STATUS[IMAGE_STATUS["SAVED"] = 11] = "SAVED";
110
+ IMAGE_STATUS[IMAGE_STATUS["ERROR"] = 12] = "ERROR";
111
+ })(IMAGE_STATUS || (IMAGE_STATUS = {}));
112
+ export var PRUNING_LEVEL;
113
+ (function (PRUNING_LEVEL) {
114
+ PRUNING_LEVEL[PRUNING_LEVEL["CONSERVATIVE"] = 10] = "CONSERVATIVE";
115
+ PRUNING_LEVEL[PRUNING_LEVEL["BALANCED"] = 20] = "BALANCED";
116
+ PRUNING_LEVEL[PRUNING_LEVEL["AGGRESSIVE"] = 30] = "AGGRESSIVE";
117
+ })(PRUNING_LEVEL || (PRUNING_LEVEL = {}));
118
+ export var BOOLEAN_OPERATION;
119
+ (function (BOOLEAN_OPERATION) {
120
+ BOOLEAN_OPERATION[BOOLEAN_OPERATION["UNION"] = 10] = "UNION";
121
+ BOOLEAN_OPERATION[BOOLEAN_OPERATION["SUBTRACT"] = 11] = "SUBTRACT";
122
+ BOOLEAN_OPERATION[BOOLEAN_OPERATION["INTERSECT"] = 12] = "INTERSECT";
123
+ BOOLEAN_OPERATION[BOOLEAN_OPERATION["EXCLUDE"] = 13] = "EXCLUDE";
124
+ })(BOOLEAN_OPERATION || (BOOLEAN_OPERATION = {}));
125
+ export var YOUTUBE_STATES;
126
+ (function (YOUTUBE_STATES) {
127
+ /** The YouTube player is unstarted. */
128
+ YOUTUBE_STATES[YOUTUBE_STATES["UNSTARTED"] = -1] = "UNSTARTED";
129
+ /** The YouTube player has ended. */
130
+ YOUTUBE_STATES[YOUTUBE_STATES["ENDED"] = 0] = "ENDED";
131
+ /** The YouTube player is currently playing. */
132
+ YOUTUBE_STATES[YOUTUBE_STATES["PLAYING"] = 1] = "PLAYING";
133
+ /** The YouTube player is paused. */
134
+ YOUTUBE_STATES[YOUTUBE_STATES["PAUSED"] = 2] = "PAUSED";
135
+ /** The YouTube player is buffering. */
136
+ YOUTUBE_STATES[YOUTUBE_STATES["BUFFERING"] = 3] = "BUFFERING";
137
+ /** The YouTube player is cued. */
138
+ YOUTUBE_STATES[YOUTUBE_STATES["CUED"] = 5] = "CUED";
139
+ })(YOUTUBE_STATES || (YOUTUBE_STATES = {}));
140
+ export var HANDLE_TYPE;
141
+ (function (HANDLE_TYPE) {
142
+ HANDLE_TYPE[HANDLE_TYPE["HANDLE_IN"] = 10] = "HANDLE_IN";
143
+ HANDLE_TYPE[HANDLE_TYPE["HANDLE_OUT"] = 11] = "HANDLE_OUT";
144
+ })(HANDLE_TYPE || (HANDLE_TYPE = {}));
145
+ export var UNIT_SYSTEM;
146
+ (function (UNIT_SYSTEM) {
147
+ UNIT_SYSTEM[UNIT_SYSTEM["METRIC"] = 10] = "METRIC";
148
+ UNIT_SYSTEM[UNIT_SYSTEM["IMPERIAL"] = 11] = "IMPERIAL";
149
+ })(UNIT_SYSTEM || (UNIT_SYSTEM = {}));
150
+ export var AXIS;
151
+ (function (AXIS) {
152
+ AXIS[AXIS["X"] = 10] = "X";
153
+ AXIS[AXIS["Y"] = 20] = "Y";
154
+ AXIS[AXIS["Z"] = 30] = "Z";
155
+ })(AXIS || (AXIS = {}));
package/dist/index.d.ts CHANGED
@@ -1,7 +1,11 @@
1
- export * as DucBin from "./flatbuffers/duc";
2
- export * from "./types";
3
- export * from "./utils";
4
- export * from "./serialize";
1
+ export * from "./enums";
2
+ export * from "./lazy-files";
5
3
  export * from "./parse";
6
4
  export * from "./restore";
5
+ export * from "./serialize";
7
6
  export * from "./technical";
7
+ export * from "./transform";
8
+ export * from "./types";
9
+ export * from "./utils";
10
+ export * as vc from "./version-control";
11
+ export { ensureWasm, getWasmBinary } from "./wasm";
package/dist/index.js CHANGED
@@ -1,7 +1,11 @@
1
- export * as DucBin from "./flatbuffers/duc";
2
- export * from "./types";
3
- export * from "./utils";
4
- export * from "./serialize";
1
+ export * from "./enums";
2
+ export * from "./lazy-files";
5
3
  export * from "./parse";
6
4
  export * from "./restore";
5
+ export * from "./serialize";
7
6
  export * from "./technical";
7
+ export * from "./transform";
8
+ export * from "./types";
9
+ export * from "./utils";
10
+ export * as vc from "./version-control";
11
+ export { ensureWasm, getWasmBinary } from "./wasm";
@@ -0,0 +1,44 @@
1
+ import type { DucExternalFileData, DucExternalFiles } from "./types";
2
+ export type LazyFileMetadata = {
3
+ id: string;
4
+ mimeType: string;
5
+ created: number;
6
+ lastRetrieved?: number;
7
+ version?: number;
8
+ };
9
+ /**
10
+ * Provides lazy access to external files embedded inside a `.duc` buffer.
11
+ *
12
+ * Instead of loading all file blobs into memory at parse time, this store
13
+ * keeps a reference to the raw `.duc` buffer and fetches individual files
14
+ * on demand via WASM calls.
15
+ */
16
+ export declare class LazyExternalFileStore {
17
+ private buffer;
18
+ private metadataCache;
19
+ private runtimeFiles;
20
+ constructor(buffer: Uint8Array);
21
+ get isReleased(): boolean;
22
+ get size(): number;
23
+ /** Check if a file with this ID exists. */
24
+ has(fileId: string): boolean;
25
+ /** Get metadata (without data blob) for a specific file. */
26
+ getMetadata(fileId: string): LazyFileMetadata | undefined;
27
+ /** Get metadata for all files. */
28
+ getAllMetadata(): LazyFileMetadata[];
29
+ /** Fetch the full file data (including blob) for a specific file. */
30
+ getFileData(fileId: string): DucExternalFileData | null;
31
+ /** Fetch file data and return a copy of the data buffer (safe for transfer). */
32
+ getFileDataCopy(fileId: string): DucExternalFileData | null;
33
+ /** Add a file at runtime (not persisted in .duc until next serialize). */
34
+ addRuntimeFile(fileId: string, data: DucExternalFileData): void;
35
+ /** Remove a runtime file. */
36
+ removeRuntimeFile(fileId: string): boolean;
37
+ /** Export all files eagerly as a DucExternalFiles record. */
38
+ toExternalFiles(): DucExternalFiles;
39
+ /** Merge files from another source (only adds missing). */
40
+ mergeFiles(files: DucExternalFiles): void;
41
+ /** Release the underlying buffer to free memory. */
42
+ release(): void;
43
+ private getMetadataMap;
44
+ }
@@ -0,0 +1,129 @@
1
+ import { wasmGetExternalFile, wasmListExternalFiles } from "./wasm";
2
+ /**
3
+ * Provides lazy access to external files embedded inside a `.duc` buffer.
4
+ *
5
+ * Instead of loading all file blobs into memory at parse time, this store
6
+ * keeps a reference to the raw `.duc` buffer and fetches individual files
7
+ * on demand via WASM calls.
8
+ */
9
+ export class LazyExternalFileStore {
10
+ constructor(buffer) {
11
+ this.metadataCache = null;
12
+ this.runtimeFiles = new Map();
13
+ this.buffer = buffer;
14
+ }
15
+ get isReleased() {
16
+ return this.buffer === null;
17
+ }
18
+ get size() {
19
+ return this.getMetadataMap().size + this.runtimeFiles.size;
20
+ }
21
+ /** Check if a file with this ID exists. */
22
+ has(fileId) {
23
+ return this.runtimeFiles.has(fileId) || this.getMetadataMap().has(fileId);
24
+ }
25
+ /** Get metadata (without data blob) for a specific file. */
26
+ getMetadata(fileId) {
27
+ const rt = this.runtimeFiles.get(fileId);
28
+ if (rt) {
29
+ return {
30
+ id: rt.id,
31
+ mimeType: rt.mimeType,
32
+ created: rt.created,
33
+ lastRetrieved: rt.lastRetrieved,
34
+ version: rt.version,
35
+ };
36
+ }
37
+ return this.getMetadataMap().get(fileId);
38
+ }
39
+ /** Get metadata for all files. */
40
+ getAllMetadata() {
41
+ const result = [];
42
+ for (const meta of this.getMetadataMap().values()) {
43
+ result.push(meta);
44
+ }
45
+ for (const [id, data] of this.runtimeFiles) {
46
+ if (!this.getMetadataMap().has(id)) {
47
+ result.push({
48
+ id: data.id,
49
+ mimeType: data.mimeType,
50
+ created: data.created,
51
+ lastRetrieved: data.lastRetrieved,
52
+ version: data.version,
53
+ });
54
+ }
55
+ }
56
+ return result;
57
+ }
58
+ /** Fetch the full file data (including blob) for a specific file. */
59
+ getFileData(fileId) {
60
+ const rt = this.runtimeFiles.get(fileId);
61
+ if (rt)
62
+ return rt;
63
+ if (!this.buffer)
64
+ return null;
65
+ const result = wasmGetExternalFile(this.buffer, fileId);
66
+ if (!result)
67
+ return null;
68
+ return result;
69
+ }
70
+ /** Fetch file data and return a copy of the data buffer (safe for transfer). */
71
+ getFileDataCopy(fileId) {
72
+ const data = this.getFileData(fileId);
73
+ if (!data)
74
+ return null;
75
+ return Object.assign(Object.assign({}, data), { data: new Uint8Array(data.data) });
76
+ }
77
+ /** Add a file at runtime (not persisted in .duc until next serialize). */
78
+ addRuntimeFile(fileId, data) {
79
+ this.runtimeFiles.set(fileId, data);
80
+ }
81
+ /** Remove a runtime file. */
82
+ removeRuntimeFile(fileId) {
83
+ return this.runtimeFiles.delete(fileId);
84
+ }
85
+ /** Export all files eagerly as a DucExternalFiles record. */
86
+ toExternalFiles() {
87
+ const result = {};
88
+ if (this.buffer) {
89
+ const metas = this.getMetadataMap();
90
+ for (const [id] of metas) {
91
+ const data = this.getFileData(id);
92
+ if (data) {
93
+ result[id] = data;
94
+ }
95
+ }
96
+ }
97
+ for (const [id, data] of this.runtimeFiles) {
98
+ result[id] = data;
99
+ }
100
+ return result;
101
+ }
102
+ /** Merge files from another source (only adds missing). */
103
+ mergeFiles(files) {
104
+ for (const [id, data] of Object.entries(files)) {
105
+ if (!this.has(id)) {
106
+ this.runtimeFiles.set(id, data);
107
+ }
108
+ }
109
+ }
110
+ /** Release the underlying buffer to free memory. */
111
+ release() {
112
+ this.buffer = null;
113
+ this.metadataCache = null;
114
+ }
115
+ getMetadataMap() {
116
+ if (!this.metadataCache) {
117
+ this.metadataCache = new Map();
118
+ if (this.buffer) {
119
+ const metas = wasmListExternalFiles(this.buffer);
120
+ if (metas) {
121
+ for (const meta of metas) {
122
+ this.metadataCache.set(meta.id, meta);
123
+ }
124
+ }
125
+ }
126
+ }
127
+ return this.metadataCache;
128
+ }
129
+ }
package/dist/parse.d.ts CHANGED
@@ -1,55 +1,21 @@
1
- import { FileSystemHandle } from 'browser-fs-access';
2
- import { CustomHatchPattern as CustomHatchPatternFb, DimensionToleranceStyle as DimensionToleranceStyleFb, DucBlock as DucBlockFb, DucDimensionStyle as DucDimensionStyleFb, DucDocStyle as DucDocStyleFb, DucExternalFileEntry, DucFeatureControlFrameStyle as DucFeatureControlFrameStyleFb, DucGlobalState as DucGlobalStateFb, DucGroup as DucGroupFb, DucHatchStyle as DucHatchStyleFb, DucHead as DucHeadFb, DucImageFilter as DucImageFilterFb, DucLayer as DucLayerFb, DucLeaderStyle as DucLeaderStyleFb, DucLine as DucLineFb, DucLineReference as DucLineReferenceFb, DucLocalState as DucLocalStateFb, DucPath as DucPathFb, DucPlotStyle as DucPlotStyleFb, DucPointBinding as DucPointBindingFb, DucPoint as DucPointFb, DucRegion as DucRegionFb, DucStackLikeStyles as DucStackLikeStylesFb, DucTableCellStyle as DucTableCellStyleFb, DucTableStyle as DucTableStyleFb, DucTextStyle as DucTextStyleFb, DucViewportStyle as DucViewportStyleFb, DucXRayStyle as DucXRayStyleFb, DocumentGridConfig as DocumentGridConfigFb, ElementBackground as ElementBackgroundFb, ElementContentBase as ElementContentBaseFb, ElementStroke as ElementStrokeFb, ElementWrapper, ExportedDataState as ExportedDataStateFb, GeometricPoint as GeometricPointFb, HatchPatternLine as HatchPatternLineFb, Margins as MarginsFb, PrimaryUnits as PrimaryUnitsFb, Standard as StandardFb, StrokeSides as StrokeSidesFb, StrokeStyle as StrokeStyleFb, TilingProperties as TilingPropertiesFb, VersionGraph as VersionGraphFb, _DucElementBase as _DucElementBaseFb, _DucElementStylesBase as _DucElementStylesBaseFb, _DucLinearElementBase as _DucLinearElementBaseFb, _DucStackBase as _DucStackBaseFb, _DucStackElementBase as _DucStackElementBaseFb } from "./flatbuffers/duc";
3
- import { RestoreConfig, RestoredDataState } from "./restore";
4
- import { Standard, StandardUnits } from "./technical";
5
- import { CustomHatchPattern, Dictionary, DocumentGridConfig, DucBlock, DucDimensionStyle, DucDocStyle, DucElement, DucExternalFiles, DucFeatureControlFrameStyle, DucGlobalState, DucGroup, DucHatchStyle, DucHead, DucImageFilter, DucLayer, DucLeaderStyle, DucLine, DucLineReference, DucLocalState, DucPath, DucPlotStyle, DucPoint, DucPointBinding, DucRegion, DucStackLikeStyles, DucTableCellStyle, DucTableStyle, DucTextStyle, DucViewportStyle, DucXRayStyle, ElementBackground, ElementContentBase, ElementStroke, GeometricPoint, HatchPatternLine, PlotLayout, StrokeSides, StrokeStyle, TilingProperties, VersionGraph, _DucElementBase, _DucElementStylesBase, _DucLinearElementBase, _DucStackBase, _DucStackElementBase } from "./types";
6
- export declare function parseGeometricPoint(point: GeometricPointFb): GeometricPoint;
7
- export declare function parsePoint(point: DucPointFb): DucPoint;
8
- export declare function parseMargins(margins: MarginsFb): PlotLayout["margins"];
9
- export declare function parseDocumentGridConfig(gridConfig: DocumentGridConfigFb): DocumentGridConfig;
10
- export declare function parseHead(head: DucHeadFb): DucHead;
11
- export declare function parseHatchPatternLine(line: HatchPatternLineFb): HatchPatternLine;
12
- export declare function parseCustomHatchPattern(pattern: CustomHatchPatternFb): CustomHatchPattern;
13
- export declare function parseHatchStyle(hatch: DucHatchStyleFb): DucHatchStyle;
14
- export declare function parseTilingProperties(tiling: TilingPropertiesFb): TilingProperties;
15
- export declare function parseImageFilter(filter: DucImageFilterFb): DucImageFilter;
16
- export declare function parseElementContentBase(content: ElementContentBaseFb): ElementContentBase;
17
- export declare function parseStrokeStyle(style: StrokeStyleFb): StrokeStyle;
18
- export declare function parseStrokeSides(sides: StrokeSidesFb): StrokeSides;
19
- export declare function parseElementStroke(stroke: ElementStrokeFb): ElementStroke;
20
- export declare function parseElementBackground(background: ElementBackgroundFb): ElementBackground;
21
- export declare function parseElementStylesBase(styles: _DucElementStylesBaseFb): _DucElementStylesBase;
22
- export declare function parseElementBase(base: _DucElementBaseFb): _DucElementBase;
23
- export declare function parseLineReference(ref: DucLineReferenceFb): DucLineReference;
24
- export declare function parseLine(line: DucLineFb): DucLine;
25
- export declare function parsePath(path: DucPathFb): DucPath;
26
- export declare function parsePointBinding(binding: DucPointBindingFb): DucPointBinding;
27
- export declare function parseLinearElementBase(base: _DucLinearElementBaseFb): _DucLinearElementBase;
28
- export declare function parseStackLikeStyles(styles: DucStackLikeStylesFb): DucStackLikeStyles;
29
- export declare function parseStackBase(base: _DucStackBaseFb): _DucStackBase;
30
- export declare function parseStackElementBase(base: _DucStackElementBaseFb): _DucStackElementBase;
31
- export declare function parseTextStyle(style: DucTextStyleFb): DucTextStyle;
32
- export declare function parseTableCellStyle(style: DucTableCellStyleFb): DucTableCellStyle;
33
- export declare function parseTableStyle(style: DucTableStyleFb): DucTableStyle;
34
- export declare function parsePlotStyle(style: DucPlotStyleFb): DucPlotStyle;
35
- export declare function parseViewportStyle(style: DucViewportStyleFb): DucViewportStyle;
36
- export declare function parseXRayStyle(style: DucXRayStyleFb): DucXRayStyle;
37
- export declare function parseLeaderStyle(style: DucLeaderStyleFb): DucLeaderStyle;
38
- export declare function parseDimensionToleranceStyle(style: DimensionToleranceStyleFb): DucDimensionStyle["tolerance"];
39
- export declare function parseDimensionStyle(style: DucDimensionStyleFb): DucDimensionStyle;
40
- export declare function parseFeatureControlFrameStyle(style: DucFeatureControlFrameStyleFb): DucFeatureControlFrameStyle;
41
- export declare function parseDocStyle(style: DucDocStyleFb): DucDocStyle;
42
- export declare function parseElementFromBinary(wrapper: ElementWrapper): DucElement | null;
43
- export declare function parseBlockFromBinary(block: DucBlockFb): DucBlock;
44
- export declare function parseDictionaryFromBinary(data: ExportedDataStateFb): Dictionary;
45
- export declare function parseExternalFilesFromBinary(entry: DucExternalFileEntry): DucExternalFiles;
46
- export declare function parseGlobalStateFromBinary(state: DucGlobalStateFb): DucGlobalState;
47
- export declare function parseGroupFromBinary(group: DucGroupFb): DucGroup;
48
- export declare function parseLayerFromBinary(layer: DucLayerFb): DucLayer;
49
- export declare function parseLocalStateFromBinary(state: DucLocalStateFb): DucLocalState;
50
- export declare function parseRegionFromBinary(region: DucRegionFb): DucRegion;
51
- export declare function parsePrimaryUnits(units: PrimaryUnitsFb): StandardUnits["primaryUnits"];
52
- export declare function parseStandardFromBinary(standard: StandardFb): Standard;
53
- export declare function parseThumbnailFromBinary(data: ExportedDataStateFb): Uint8Array | undefined;
54
- export declare function parseVersionGraphFromBinary(graph: VersionGraphFb | null): VersionGraph | null;
55
- export declare const parseDuc: (blob: Blob | File, fileHandle?: FileSystemHandle | null, restoreConfig?: RestoreConfig) => Promise<RestoredDataState>;
1
+ import { type ElementsConfig, type RestoreConfig, type RestoredDataState } from "./restore";
2
+ export type { RestoredDataState };
3
+ export type LazyRestoredDataState = RestoredDataState & {
4
+ lazyFileStore: LazyExternalFileStore;
5
+ };
6
+ import { LazyExternalFileStore } from "./lazy-files";
7
+ export { LazyExternalFileStore };
8
+ /**
9
+ * Parse a `.duc` file (Blob/File) into a RestoredDataState.
10
+ *
11
+ * 1. Read file bytes
12
+ * 2. WASM parse (SQLite → Rust → JS via serde-wasm-bindgen)
13
+ * 3. Element fixups (stack element flattening)
14
+ * 4. restore() for defaults & migrations
15
+ */
16
+ export declare function parseDuc(blob: Blob | File, _fileHandle?: FileSystemFileHandle | null, elementsConfig?: ElementsConfig, restoreConfig?: RestoreConfig): Promise<RestoredDataState>;
17
+ /**
18
+ * Parse a `.duc` file lazily — returns everything EXCEPT external file data blobs.
19
+ * Use `LazyExternalFileStore` for on-demand file access.
20
+ */
21
+ export declare function parseDucLazy(buffer: Uint8Array, elementsConfig?: ElementsConfig, restoreConfig?: RestoreConfig): Promise<LazyRestoredDataState>;