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.
- package/LICENSE +21 -0
- package/README.md +42 -0
- package/dist/flatbuffers/duc/alternate-units.d.ts +21 -0
- package/dist/flatbuffers/duc/alternate-units.js +66 -0
- package/dist/flatbuffers/duc/angular-unit-system.d.ts +17 -0
- package/dist/flatbuffers/duc/angular-unit-system.js +50 -0
- package/dist/flatbuffers/duc/angular-units-format.d.ts +7 -0
- package/dist/flatbuffers/duc/angular-units-format.js +10 -0
- package/dist/flatbuffers/duc/axis.d.ts +5 -0
- package/dist/flatbuffers/duc/axis.js +8 -0
- package/dist/flatbuffers/duc/bezier-mirroring.d.ts +5 -0
- package/dist/flatbuffers/duc/bezier-mirroring.js +8 -0
- package/dist/flatbuffers/duc/blending.d.ts +9 -0
- package/dist/flatbuffers/duc/blending.js +12 -0
- package/dist/flatbuffers/duc/block-attachment.d.ts +4 -0
- package/dist/flatbuffers/duc/block-attachment.js +7 -0
- package/dist/flatbuffers/duc/boolean-operation.d.ts +6 -0
- package/dist/flatbuffers/duc/boolean-operation.js +9 -0
- package/dist/flatbuffers/duc/bound-element.d.ts +17 -0
- package/dist/flatbuffers/duc/bound-element.js +48 -0
- package/dist/flatbuffers/duc/checkpoint.d.ts +22 -0
- package/dist/flatbuffers/duc/checkpoint.js +75 -0
- package/dist/flatbuffers/duc/column-layout.d.ts +22 -0
- package/dist/flatbuffers/duc/column-layout.js +72 -0
- package/dist/flatbuffers/duc/column-type.d.ts +5 -0
- package/dist/flatbuffers/duc/column-type.js +8 -0
- package/dist/flatbuffers/duc/custom-hatch-pattern.d.ts +23 -0
- package/dist/flatbuffers/duc/custom-hatch-pattern.js +71 -0
- package/dist/flatbuffers/duc/datum-bracket-style.d.ts +5 -0
- package/dist/flatbuffers/duc/datum-bracket-style.js +8 -0
- package/dist/flatbuffers/duc/datum-reference.d.ts +17 -0
- package/dist/flatbuffers/duc/datum-reference.js +49 -0
- package/dist/flatbuffers/duc/datum-target-type.d.ts +6 -0
- package/dist/flatbuffers/duc/datum-target-type.js +9 -0
- package/dist/flatbuffers/duc/decimal-separator.d.ts +4 -0
- package/dist/flatbuffers/duc/decimal-separator.js +7 -0
- package/dist/flatbuffers/duc/delta.d.ts +20 -0
- package/dist/flatbuffers/duc/delta.js +64 -0
- package/dist/flatbuffers/duc/dictionary-entry.d.ts +17 -0
- package/dist/flatbuffers/duc/dictionary-entry.js +49 -0
- package/dist/flatbuffers/duc/dimension-baseline-data.d.ts +14 -0
- package/dist/flatbuffers/duc/dimension-baseline-data.js +40 -0
- package/dist/flatbuffers/duc/dimension-bindings.d.ts +17 -0
- package/dist/flatbuffers/duc/dimension-bindings.js +50 -0
- package/dist/flatbuffers/duc/dimension-continue-data.d.ts +14 -0
- package/dist/flatbuffers/duc/dimension-continue-data.js +40 -0
- package/dist/flatbuffers/duc/dimension-definition-points.d.ts +21 -0
- package/dist/flatbuffers/duc/dimension-definition-points.js +64 -0
- package/dist/flatbuffers/duc/dimension-ext-line-style.d.ts +18 -0
- package/dist/flatbuffers/duc/dimension-ext-line-style.js +57 -0
- package/dist/flatbuffers/duc/dimension-fit-rule.d.ts +6 -0
- package/dist/flatbuffers/duc/dimension-fit-rule.js +9 -0
- package/dist/flatbuffers/duc/dimension-fit-style.d.ts +19 -0
- package/dist/flatbuffers/duc/dimension-fit-style.js +58 -0
- package/dist/flatbuffers/duc/dimension-line-style.d.ts +16 -0
- package/dist/flatbuffers/duc/dimension-line-style.js +49 -0
- package/dist/flatbuffers/duc/dimension-symbol-style.d.ts +22 -0
- package/dist/flatbuffers/duc/dimension-symbol-style.js +72 -0
- package/dist/flatbuffers/duc/dimension-text-placement.d.ts +5 -0
- package/dist/flatbuffers/duc/dimension-text-placement.js +8 -0
- package/dist/flatbuffers/duc/dimension-tolerance-style.d.ts +24 -0
- package/dist/flatbuffers/duc/dimension-tolerance-style.js +71 -0
- package/dist/flatbuffers/duc/dimension-type.d.ts +15 -0
- package/dist/flatbuffers/duc/dimension-type.js +18 -0
- package/dist/flatbuffers/duc/dimension-units-format.d.ts +7 -0
- package/dist/flatbuffers/duc/dimension-units-format.js +10 -0
- package/dist/flatbuffers/duc/dimension-validation-rules.d.ts +25 -0
- package/dist/flatbuffers/duc/dimension-validation-rules.js +74 -0
- package/dist/flatbuffers/duc/duc-arrow-element.d.ts +16 -0
- package/dist/flatbuffers/duc/duc-arrow-element.js +49 -0
- package/dist/flatbuffers/duc/duc-block-attribute-definition-entry.d.ts +16 -0
- package/dist/flatbuffers/duc/duc-block-attribute-definition-entry.js +44 -0
- package/dist/flatbuffers/duc/duc-block-attribute-definition.d.ts +22 -0
- package/dist/flatbuffers/duc/duc-block-attribute-definition.js +64 -0
- package/dist/flatbuffers/duc/duc-block-duplication-array.d.ts +19 -0
- package/dist/flatbuffers/duc/duc-block-duplication-array.js +64 -0
- package/dist/flatbuffers/duc/duc-block-instance-element.d.ts +30 -0
- package/dist/flatbuffers/duc/duc-block-instance-element.js +94 -0
- package/dist/flatbuffers/duc/duc-block.d.ts +34 -0
- package/dist/flatbuffers/duc/duc-block.js +111 -0
- package/dist/flatbuffers/duc/duc-common-style.d.ts +16 -0
- package/dist/flatbuffers/duc/duc-common-style.js +44 -0
- package/dist/flatbuffers/duc/duc-dimension-element.d.ts +45 -0
- package/dist/flatbuffers/duc/duc-dimension-element.js +120 -0
- package/dist/flatbuffers/duc/duc-dimension-style.d.ts +28 -0
- package/dist/flatbuffers/duc/duc-dimension-style.js +76 -0
- package/dist/flatbuffers/duc/duc-doc-element.d.ts +33 -0
- package/dist/flatbuffers/duc/duc-doc-element.js +95 -0
- package/dist/flatbuffers/duc/duc-doc-style.d.ts +19 -0
- package/dist/flatbuffers/duc/duc-doc-style.js +52 -0
- package/dist/flatbuffers/duc/duc-element-base.d.ts +88 -0
- package/dist/flatbuffers/duc/duc-element-base.js +269 -0
- package/dist/flatbuffers/duc/duc-element-styles-base.d.ts +30 -0
- package/dist/flatbuffers/duc/duc-element-styles-base.js +103 -0
- package/dist/flatbuffers/duc/duc-ellipse-element.d.ts +22 -0
- package/dist/flatbuffers/duc/duc-ellipse-element.js +73 -0
- package/dist/flatbuffers/duc/duc-embeddable-element.d.ts +14 -0
- package/dist/flatbuffers/duc/duc-embeddable-element.js +41 -0
- package/dist/flatbuffers/duc/duc-external-file-data.d.ts +27 -0
- package/dist/flatbuffers/duc/duc-external-file-data.js +92 -0
- package/dist/flatbuffers/duc/duc-external-file-entry.d.ts +16 -0
- package/dist/flatbuffers/duc/duc-external-file-entry.js +44 -0
- package/dist/flatbuffers/duc/duc-feature-control-frame-element.d.ts +31 -0
- package/dist/flatbuffers/duc/duc-feature-control-frame-element.js +89 -0
- package/dist/flatbuffers/duc/duc-feature-control-frame-style.d.ts +25 -0
- package/dist/flatbuffers/duc/duc-feature-control-frame-style.js +68 -0
- package/dist/flatbuffers/duc/duc-frame-element.d.ts +14 -0
- package/dist/flatbuffers/duc/duc-frame-element.js +41 -0
- package/dist/flatbuffers/duc/duc-free-draw-element.d.ts +52 -0
- package/dist/flatbuffers/duc/duc-free-draw-element.js +154 -0
- package/dist/flatbuffers/duc/duc-free-draw-ends.d.ts +18 -0
- package/dist/flatbuffers/duc/duc-free-draw-ends.js +56 -0
- package/dist/flatbuffers/duc/duc-global-state.d.ts +37 -0
- package/dist/flatbuffers/duc/duc-global-state.js +121 -0
- package/dist/flatbuffers/duc/duc-group.d.ts +16 -0
- package/dist/flatbuffers/duc/duc-group.js +44 -0
- package/dist/flatbuffers/duc/duc-hatch-style.d.ts +28 -0
- package/dist/flatbuffers/duc/duc-hatch-style.js +79 -0
- package/dist/flatbuffers/duc/duc-head.d.ts +19 -0
- package/dist/flatbuffers/duc/duc-head.js +57 -0
- package/dist/flatbuffers/duc/duc-image-element.d.ts +35 -0
- package/dist/flatbuffers/duc/duc-image-element.js +91 -0
- package/dist/flatbuffers/duc/duc-image-filter.d.ts +15 -0
- package/dist/flatbuffers/duc/duc-image-filter.js +48 -0
- package/dist/flatbuffers/duc/duc-layer-overrides.d.ts +16 -0
- package/dist/flatbuffers/duc/duc-layer-overrides.js +44 -0
- package/dist/flatbuffers/duc/duc-layer.d.ts +21 -0
- package/dist/flatbuffers/duc/duc-layer.js +59 -0
- package/dist/flatbuffers/duc/duc-leader-element.d.ts +22 -0
- package/dist/flatbuffers/duc/duc-leader-element.js +60 -0
- package/dist/flatbuffers/duc/duc-leader-style.d.ts +30 -0
- package/dist/flatbuffers/duc/duc-leader-style.js +87 -0
- package/dist/flatbuffers/duc/duc-line-reference.d.ts +15 -0
- package/dist/flatbuffers/duc/duc-line-reference.js +43 -0
- package/dist/flatbuffers/duc/duc-line.d.ts +15 -0
- package/dist/flatbuffers/duc/duc-line.js +43 -0
- package/dist/flatbuffers/duc/duc-linear-element-base.d.ts +38 -0
- package/dist/flatbuffers/duc/duc-linear-element-base.js +124 -0
- package/dist/flatbuffers/duc/duc-linear-element.d.ts +16 -0
- package/dist/flatbuffers/duc/duc-linear-element.js +49 -0
- package/dist/flatbuffers/duc/duc-local-state.d.ts +68 -0
- package/dist/flatbuffers/duc/duc-local-state.js +206 -0
- package/dist/flatbuffers/duc/duc-mermaid-element.d.ts +23 -0
- package/dist/flatbuffers/duc/duc-mermaid-element.js +65 -0
- package/dist/flatbuffers/duc/duc-parametric-element.d.ts +16 -0
- package/dist/flatbuffers/duc/duc-parametric-element.js +44 -0
- package/dist/flatbuffers/duc/duc-path.d.ts +26 -0
- package/dist/flatbuffers/duc/duc-path.js +69 -0
- package/dist/flatbuffers/duc/duc-pdf-element.d.ts +17 -0
- package/dist/flatbuffers/duc/duc-pdf-element.js +49 -0
- package/dist/flatbuffers/duc/duc-plot-element.d.ts +19 -0
- package/dist/flatbuffers/duc/duc-plot-element.js +52 -0
- package/dist/flatbuffers/duc/duc-plot-style.d.ts +14 -0
- package/dist/flatbuffers/duc/duc-plot-style.js +41 -0
- package/dist/flatbuffers/duc/duc-point-binding.d.ts +26 -0
- package/dist/flatbuffers/duc/duc-point-binding.js +73 -0
- package/dist/flatbuffers/duc/duc-point.d.ts +18 -0
- package/dist/flatbuffers/duc/duc-point.js +57 -0
- package/dist/flatbuffers/duc/duc-polygon-element.d.ts +16 -0
- package/dist/flatbuffers/duc/duc-polygon-element.js +49 -0
- package/dist/flatbuffers/duc/duc-rectangle-element.d.ts +14 -0
- package/dist/flatbuffers/duc/duc-rectangle-element.js +41 -0
- package/dist/flatbuffers/duc/duc-region.d.ts +19 -0
- package/dist/flatbuffers/duc/duc-region.js +51 -0
- package/dist/flatbuffers/duc/duc-stack-base.d.ts +27 -0
- package/dist/flatbuffers/duc/duc-stack-base.js +78 -0
- package/dist/flatbuffers/duc/duc-stack-element-base.d.ts +23 -0
- package/dist/flatbuffers/duc/duc-stack-element-base.js +65 -0
- package/dist/flatbuffers/duc/duc-stack-like-styles.d.ts +16 -0
- package/dist/flatbuffers/duc/duc-stack-like-styles.js +48 -0
- package/dist/flatbuffers/duc/duc-table-auto-size.d.ts +15 -0
- package/dist/flatbuffers/duc/duc-table-auto-size.js +48 -0
- package/dist/flatbuffers/duc/duc-table-cell-entry.d.ts +16 -0
- package/dist/flatbuffers/duc/duc-table-cell-entry.js +44 -0
- package/dist/flatbuffers/duc/duc-table-cell-span.d.ts +15 -0
- package/dist/flatbuffers/duc/duc-table-cell-span.js +48 -0
- package/dist/flatbuffers/duc/duc-table-cell-style.d.ts +22 -0
- package/dist/flatbuffers/duc/duc-table-cell-style.js +59 -0
- package/dist/flatbuffers/duc/duc-table-cell.d.ts +27 -0
- package/dist/flatbuffers/duc/duc-table-cell.js +72 -0
- package/dist/flatbuffers/duc/duc-table-column-entry.d.ts +16 -0
- package/dist/flatbuffers/duc/duc-table-column-entry.js +44 -0
- package/dist/flatbuffers/duc/duc-table-column.d.ts +18 -0
- package/dist/flatbuffers/duc/duc-table-column.js +51 -0
- package/dist/flatbuffers/duc/duc-table-element.d.ts +51 -0
- package/dist/flatbuffers/duc/duc-table-element.js +167 -0
- package/dist/flatbuffers/duc/duc-table-row-entry.d.ts +16 -0
- package/dist/flatbuffers/duc/duc-table-row-entry.js +44 -0
- package/dist/flatbuffers/duc/duc-table-row.d.ts +18 -0
- package/dist/flatbuffers/duc/duc-table-row.js +51 -0
- package/dist/flatbuffers/duc/duc-table-style.d.ts +23 -0
- package/dist/flatbuffers/duc/duc-table-style.js +65 -0
- package/dist/flatbuffers/duc/duc-text-dynamic-dictionary-source.d.ts +14 -0
- package/dist/flatbuffers/duc/duc-text-dynamic-dictionary-source.js +40 -0
- package/dist/flatbuffers/duc/duc-text-dynamic-element-source.d.ts +17 -0
- package/dist/flatbuffers/duc/duc-text-dynamic-element-source.js +49 -0
- package/dist/flatbuffers/duc/duc-text-dynamic-part.d.ts +22 -0
- package/dist/flatbuffers/duc/duc-text-dynamic-part.js +58 -0
- package/dist/flatbuffers/duc/duc-text-dynamic-source-data.d.ts +9 -0
- package/dist/flatbuffers/duc/duc-text-dynamic-source-data.js +26 -0
- package/dist/flatbuffers/duc/duc-text-dynamic-source.d.ts +19 -0
- package/dist/flatbuffers/duc/duc-text-dynamic-source.js +58 -0
- package/dist/flatbuffers/duc/duc-text-element.d.ts +33 -0
- package/dist/flatbuffers/duc/duc-text-element.js +94 -0
- package/dist/flatbuffers/duc/duc-text-style.d.ts +44 -0
- package/dist/flatbuffers/duc/duc-text-style.js +128 -0
- package/dist/flatbuffers/duc/duc-ucs.d.ts +16 -0
- package/dist/flatbuffers/duc/duc-ucs.js +49 -0
- package/dist/flatbuffers/duc/duc-view.d.ts +24 -0
- package/dist/flatbuffers/duc/duc-view.js +71 -0
- package/dist/flatbuffers/duc/duc-viewport-element.d.ts +36 -0
- package/dist/flatbuffers/duc/duc-viewport-element.js +102 -0
- package/dist/flatbuffers/duc/duc-viewport-style.d.ts +16 -0
- package/dist/flatbuffers/duc/duc-viewport-style.js +49 -0
- package/dist/flatbuffers/duc/duc-xray-element.d.ts +23 -0
- package/dist/flatbuffers/duc/duc-xray-element.js +66 -0
- package/dist/flatbuffers/duc/duc-xray-style.d.ts +17 -0
- package/dist/flatbuffers/duc/duc-xray-style.js +49 -0
- package/dist/flatbuffers/duc/dynamic-snap-settings.d.ts +17 -0
- package/dist/flatbuffers/duc/dynamic-snap-settings.js +56 -0
- package/dist/flatbuffers/duc/element-background.d.ts +14 -0
- package/dist/flatbuffers/duc/element-background.js +41 -0
- package/dist/flatbuffers/duc/element-content-base.d.ts +29 -0
- package/dist/flatbuffers/duc/element-content-base.js +80 -0
- package/dist/flatbuffers/duc/element-content-preference.d.ts +8 -0
- package/dist/flatbuffers/duc/element-content-preference.js +11 -0
- package/dist/flatbuffers/duc/element-stroke.d.ts +24 -0
- package/dist/flatbuffers/duc/element-stroke.js +66 -0
- package/dist/flatbuffers/duc/element-wrapper.d.ts +16 -0
- package/dist/flatbuffers/duc/element-wrapper.js +49 -0
- package/dist/flatbuffers/duc/element.d.ts +49 -0
- package/dist/flatbuffers/duc/element.js +106 -0
- package/dist/flatbuffers/duc/exported-data-state.d.ts +87 -0
- package/dist/flatbuffers/duc/exported-data-state.js +290 -0
- package/dist/flatbuffers/duc/fcfbetween-modifier.d.ts +17 -0
- package/dist/flatbuffers/duc/fcfbetween-modifier.js +48 -0
- package/dist/flatbuffers/duc/fcfdatum-definition.d.ts +16 -0
- package/dist/flatbuffers/duc/fcfdatum-definition.js +43 -0
- package/dist/flatbuffers/duc/fcfdatum-style.d.ts +14 -0
- package/dist/flatbuffers/duc/fcfdatum-style.js +41 -0
- package/dist/flatbuffers/duc/fcfframe-modifiers.d.ts +22 -0
- package/dist/flatbuffers/duc/fcfframe-modifiers.js +65 -0
- package/dist/flatbuffers/duc/fcflayout-style.d.ts +17 -0
- package/dist/flatbuffers/duc/fcflayout-style.js +56 -0
- package/dist/flatbuffers/duc/fcfprojected-zone-modifier.d.ts +13 -0
- package/dist/flatbuffers/duc/fcfprojected-zone-modifier.js +40 -0
- package/dist/flatbuffers/duc/fcfsegment-row.d.ts +17 -0
- package/dist/flatbuffers/duc/fcfsegment-row.js +55 -0
- package/dist/flatbuffers/duc/fcfsymbol-style.d.ts +13 -0
- package/dist/flatbuffers/duc/fcfsymbol-style.js +40 -0
- package/dist/flatbuffers/duc/feature-control-frame-segment.d.ts +22 -0
- package/dist/flatbuffers/duc/feature-control-frame-segment.js +65 -0
- package/dist/flatbuffers/duc/feature-modifier.d.ts +18 -0
- package/dist/flatbuffers/duc/feature-modifier.js +21 -0
- package/dist/flatbuffers/duc/gdt-symbol.d.ts +22 -0
- package/dist/flatbuffers/duc/gdt-symbol.js +25 -0
- package/dist/flatbuffers/duc/geometric-point.d.ts +10 -0
- package/dist/flatbuffers/duc/geometric-point.js +27 -0
- package/dist/flatbuffers/duc/grid-display-type.d.ts +6 -0
- package/dist/flatbuffers/duc/grid-display-type.js +9 -0
- package/dist/flatbuffers/duc/grid-settings.d.ts +54 -0
- package/dist/flatbuffers/duc/grid-settings.js +165 -0
- package/dist/flatbuffers/duc/grid-style.d.ts +26 -0
- package/dist/flatbuffers/duc/grid-style.js +74 -0
- package/dist/flatbuffers/duc/grid-type.d.ts +7 -0
- package/dist/flatbuffers/duc/grid-type.js +10 -0
- package/dist/flatbuffers/duc/handle-type.d.ts +4 -0
- package/dist/flatbuffers/duc/handle-type.js +7 -0
- package/dist/flatbuffers/duc/hatch-pattern-line.d.ts +35 -0
- package/dist/flatbuffers/duc/hatch-pattern-line.js +93 -0
- package/dist/flatbuffers/duc/hatch-style.d.ts +5 -0
- package/dist/flatbuffers/duc/hatch-style.js +8 -0
- package/dist/flatbuffers/duc/identified-common-style.d.ts +16 -0
- package/dist/flatbuffers/duc/identified-common-style.js +44 -0
- package/dist/flatbuffers/duc/identified-dimension-style.d.ts +16 -0
- package/dist/flatbuffers/duc/identified-dimension-style.js +44 -0
- package/dist/flatbuffers/duc/identified-doc-style.d.ts +16 -0
- package/dist/flatbuffers/duc/identified-doc-style.js +44 -0
- package/dist/flatbuffers/duc/identified-fcfstyle.d.ts +16 -0
- package/dist/flatbuffers/duc/identified-fcfstyle.js +44 -0
- package/dist/flatbuffers/duc/identified-grid-settings.d.ts +16 -0
- package/dist/flatbuffers/duc/identified-grid-settings.js +44 -0
- package/dist/flatbuffers/duc/identified-hatch-style.d.ts +16 -0
- package/dist/flatbuffers/duc/identified-hatch-style.js +44 -0
- package/dist/flatbuffers/duc/identified-leader-style.d.ts +16 -0
- package/dist/flatbuffers/duc/identified-leader-style.js +44 -0
- package/dist/flatbuffers/duc/identified-snap-settings.d.ts +16 -0
- package/dist/flatbuffers/duc/identified-snap-settings.js +44 -0
- package/dist/flatbuffers/duc/identified-stack-like-style.d.ts +16 -0
- package/dist/flatbuffers/duc/identified-stack-like-style.js +44 -0
- package/dist/flatbuffers/duc/identified-table-style.d.ts +16 -0
- package/dist/flatbuffers/duc/identified-table-style.js +44 -0
- package/dist/flatbuffers/duc/identified-text-style.d.ts +16 -0
- package/dist/flatbuffers/duc/identified-text-style.js +44 -0
- package/dist/flatbuffers/duc/identified-ucs.d.ts +16 -0
- package/dist/flatbuffers/duc/identified-ucs.js +44 -0
- package/dist/flatbuffers/duc/identified-view.d.ts +16 -0
- package/dist/flatbuffers/duc/identified-view.js +44 -0
- package/dist/flatbuffers/duc/identified-viewport-style.d.ts +16 -0
- package/dist/flatbuffers/duc/identified-viewport-style.js +44 -0
- package/dist/flatbuffers/duc/identified-xray-style.d.ts +16 -0
- package/dist/flatbuffers/duc/identified-xray-style.js +44 -0
- package/dist/flatbuffers/duc/identifier.d.ts +20 -0
- package/dist/flatbuffers/duc/identifier.js +57 -0
- package/dist/flatbuffers/duc/image-crop.d.ts +23 -0
- package/dist/flatbuffers/duc/image-crop.js +80 -0
- package/dist/flatbuffers/duc/image-status.d.ts +5 -0
- package/dist/flatbuffers/duc/image-status.js +8 -0
- package/dist/flatbuffers/duc/isometric-grid-settings.d.ts +15 -0
- package/dist/flatbuffers/duc/isometric-grid-settings.js +48 -0
- package/dist/flatbuffers/duc/jsonpatch-operation.d.ts +23 -0
- package/dist/flatbuffers/duc/jsonpatch-operation.js +64 -0
- package/dist/flatbuffers/duc/layer-snap-filters.d.ts +23 -0
- package/dist/flatbuffers/duc/layer-snap-filters.js +76 -0
- package/dist/flatbuffers/duc/layer-validation-rules.d.ts +17 -0
- package/dist/flatbuffers/duc/layer-validation-rules.js +54 -0
- package/dist/flatbuffers/duc/leader-block-content.d.ts +25 -0
- package/dist/flatbuffers/duc/leader-block-content.js +85 -0
- package/dist/flatbuffers/duc/leader-content-data.d.ts +9 -0
- package/dist/flatbuffers/duc/leader-content-data.js +26 -0
- package/dist/flatbuffers/duc/leader-content-type.d.ts +4 -0
- package/dist/flatbuffers/duc/leader-content-type.js +7 -0
- package/dist/flatbuffers/duc/leader-content.d.ts +19 -0
- package/dist/flatbuffers/duc/leader-content.js +58 -0
- package/dist/flatbuffers/duc/leader-text-block-content.d.ts +14 -0
- package/dist/flatbuffers/duc/leader-text-block-content.js +40 -0
- package/dist/flatbuffers/duc/line-head.d.ts +17 -0
- package/dist/flatbuffers/duc/line-head.js +20 -0
- package/dist/flatbuffers/duc/line-spacing-type.d.ts +5 -0
- package/dist/flatbuffers/duc/line-spacing-type.js +8 -0
- package/dist/flatbuffers/duc/line-spacing.d.ts +16 -0
- package/dist/flatbuffers/duc/line-spacing.js +49 -0
- package/dist/flatbuffers/duc/linear-unit-system.d.ts +24 -0
- package/dist/flatbuffers/duc/linear-unit-system.js +75 -0
- package/dist/flatbuffers/duc/margins.d.ts +19 -0
- package/dist/flatbuffers/duc/margins.js +64 -0
- package/dist/flatbuffers/duc/mark-ellipse-center.d.ts +4 -0
- package/dist/flatbuffers/duc/mark-ellipse-center.js +7 -0
- package/dist/flatbuffers/duc/material-condition.d.ts +5 -0
- package/dist/flatbuffers/duc/material-condition.js +8 -0
- package/dist/flatbuffers/duc/object-snap-mode.d.ts +22 -0
- package/dist/flatbuffers/duc/object-snap-mode.js +25 -0
- package/dist/flatbuffers/duc/paragraph-formatting.d.ts +33 -0
- package/dist/flatbuffers/duc/paragraph-formatting.js +106 -0
- package/dist/flatbuffers/duc/parametric-source-type.d.ts +4 -0
- package/dist/flatbuffers/duc/parametric-source-type.js +7 -0
- package/dist/flatbuffers/duc/parametric-source.d.ts +20 -0
- package/dist/flatbuffers/duc/parametric-source.js +57 -0
- package/dist/flatbuffers/duc/plot-layout.d.ts +14 -0
- package/dist/flatbuffers/duc/plot-layout.js +41 -0
- package/dist/flatbuffers/duc/point-binding-point.d.ts +15 -0
- package/dist/flatbuffers/duc/point-binding-point.js +48 -0
- package/dist/flatbuffers/duc/polar-grid-settings.d.ts +17 -0
- package/dist/flatbuffers/duc/polar-grid-settings.js +56 -0
- package/dist/flatbuffers/duc/polar-tracking-settings.d.ts +29 -0
- package/dist/flatbuffers/duc/polar-tracking-settings.js +90 -0
- package/dist/flatbuffers/duc/primary-units.d.ts +16 -0
- package/dist/flatbuffers/duc/primary-units.js +44 -0
- package/dist/flatbuffers/duc/pruning-level.d.ts +5 -0
- package/dist/flatbuffers/duc/pruning-level.js +8 -0
- package/dist/flatbuffers/duc/snap-marker-settings.d.ts +23 -0
- package/dist/flatbuffers/duc/snap-marker-settings.js +79 -0
- package/dist/flatbuffers/duc/snap-marker-shape.d.ts +6 -0
- package/dist/flatbuffers/duc/snap-marker-shape.js +9 -0
- package/dist/flatbuffers/duc/snap-marker-style-entry.d.ts +16 -0
- package/dist/flatbuffers/duc/snap-marker-style-entry.js +43 -0
- package/dist/flatbuffers/duc/snap-marker-style.d.ts +17 -0
- package/dist/flatbuffers/duc/snap-marker-style.js +49 -0
- package/dist/flatbuffers/duc/snap-mode.d.ts +4 -0
- package/dist/flatbuffers/duc/snap-mode.js +7 -0
- package/dist/flatbuffers/duc/snap-override-behavior.d.ts +5 -0
- package/dist/flatbuffers/duc/snap-override-behavior.js +8 -0
- package/dist/flatbuffers/duc/snap-override.d.ts +17 -0
- package/dist/flatbuffers/duc/snap-override.js +49 -0
- package/dist/flatbuffers/duc/snap-settings.d.ts +75 -0
- package/dist/flatbuffers/duc/snap-settings.js +245 -0
- package/dist/flatbuffers/duc/stack-format-properties.d.ts +18 -0
- package/dist/flatbuffers/duc/stack-format-properties.js +57 -0
- package/dist/flatbuffers/duc/stack-format.d.ts +21 -0
- package/dist/flatbuffers/duc/stack-format.js +64 -0
- package/dist/flatbuffers/duc/stacked-text-align.d.ts +5 -0
- package/dist/flatbuffers/duc/stacked-text-align.js +8 -0
- package/dist/flatbuffers/duc/standard-overrides.d.ts +63 -0
- package/dist/flatbuffers/duc/standard-overrides.js +162 -0
- package/dist/flatbuffers/duc/standard-styles.d.ts +77 -0
- package/dist/flatbuffers/duc/standard-styles.js +285 -0
- package/dist/flatbuffers/duc/standard-units.d.ts +16 -0
- package/dist/flatbuffers/duc/standard-units.js +44 -0
- package/dist/flatbuffers/duc/standard-validation.d.ts +16 -0
- package/dist/flatbuffers/duc/standard-validation.js +44 -0
- package/dist/flatbuffers/duc/standard-view-settings.d.ts +35 -0
- package/dist/flatbuffers/duc/standard-view-settings.js +124 -0
- package/dist/flatbuffers/duc/standard.d.ts +33 -0
- package/dist/flatbuffers/duc/standard.js +90 -0
- package/dist/flatbuffers/duc/string-value-entry.d.ts +17 -0
- package/dist/flatbuffers/duc/string-value-entry.js +49 -0
- package/dist/flatbuffers/duc/stroke-cap.d.ts +5 -0
- package/dist/flatbuffers/duc/stroke-cap.js +8 -0
- package/dist/flatbuffers/duc/stroke-join.d.ts +5 -0
- package/dist/flatbuffers/duc/stroke-join.js +8 -0
- package/dist/flatbuffers/duc/stroke-placement.d.ts +5 -0
- package/dist/flatbuffers/duc/stroke-placement.js +8 -0
- package/dist/flatbuffers/duc/stroke-preference.d.ts +6 -0
- package/dist/flatbuffers/duc/stroke-preference.js +9 -0
- package/dist/flatbuffers/duc/stroke-side-preference.d.ts +8 -0
- package/dist/flatbuffers/duc/stroke-side-preference.js +11 -0
- package/dist/flatbuffers/duc/stroke-sides.d.ts +24 -0
- package/dist/flatbuffers/duc/stroke-sides.js +67 -0
- package/dist/flatbuffers/duc/stroke-style.d.ts +37 -0
- package/dist/flatbuffers/duc/stroke-style.js +111 -0
- package/dist/flatbuffers/duc/stroke-width.d.ts +5 -0
- package/dist/flatbuffers/duc/stroke-width.js +8 -0
- package/dist/flatbuffers/duc/table-cell-alignment.d.ts +11 -0
- package/dist/flatbuffers/duc/table-cell-alignment.js +14 -0
- package/dist/flatbuffers/duc/table-flow-direction.d.ts +4 -0
- package/dist/flatbuffers/duc/table-flow-direction.js +7 -0
- package/dist/flatbuffers/duc/text-align.d.ts +5 -0
- package/dist/flatbuffers/duc/text-align.js +8 -0
- package/dist/flatbuffers/duc/text-column.d.ts +15 -0
- package/dist/flatbuffers/duc/text-column.js +48 -0
- package/dist/flatbuffers/duc/text-field-source-property.d.ts +13 -0
- package/dist/flatbuffers/duc/text-field-source-property.js +16 -0
- package/dist/flatbuffers/duc/text-field-source-type.d.ts +4 -0
- package/dist/flatbuffers/duc/text-field-source-type.js +7 -0
- package/dist/flatbuffers/duc/text-flow-direction.d.ts +6 -0
- package/dist/flatbuffers/duc/text-flow-direction.js +9 -0
- package/dist/flatbuffers/duc/tiling-properties.d.ts +21 -0
- package/dist/flatbuffers/duc/tiling-properties.js +75 -0
- package/dist/flatbuffers/duc/tolerance-clause.d.ts +27 -0
- package/dist/flatbuffers/duc/tolerance-clause.js +84 -0
- package/dist/flatbuffers/duc/tolerance-display.d.ts +7 -0
- package/dist/flatbuffers/duc/tolerance-display.js +10 -0
- package/dist/flatbuffers/duc/tolerance-type.d.ts +5 -0
- package/dist/flatbuffers/duc/tolerance-type.js +8 -0
- package/dist/flatbuffers/duc/tolerance-zone-type.d.ts +7 -0
- package/dist/flatbuffers/duc/tolerance-zone-type.js +10 -0
- package/dist/flatbuffers/duc/tracking-line-style.d.ts +26 -0
- package/dist/flatbuffers/duc/tracking-line-style.js +74 -0
- package/dist/flatbuffers/duc/unit-precision.d.ts +19 -0
- package/dist/flatbuffers/duc/unit-precision.js +64 -0
- package/dist/flatbuffers/duc/unit-system-base.d.ts +20 -0
- package/dist/flatbuffers/duc/unit-system-base.js +65 -0
- package/dist/flatbuffers/duc/unit-system.d.ts +4 -0
- package/dist/flatbuffers/duc/unit-system.js +7 -0
- package/dist/flatbuffers/duc/version-base.d.ts +27 -0
- package/dist/flatbuffers/duc/version-base.js +80 -0
- package/dist/flatbuffers/duc/version-graph-metadata.d.ts +15 -0
- package/dist/flatbuffers/duc/version-graph-metadata.js +48 -0
- package/dist/flatbuffers/duc/version-graph.d.ts +31 -0
- package/dist/flatbuffers/duc/version-graph.js +94 -0
- package/dist/flatbuffers/duc/vertical-align.d.ts +5 -0
- package/dist/flatbuffers/duc/vertical-align.js +8 -0
- package/dist/flatbuffers/duc/viewport-shade-plot.d.ts +6 -0
- package/dist/flatbuffers/duc/viewport-shade-plot.js +9 -0
- package/dist/flatbuffers/duc/youtube-states.d.ts +8 -0
- package/dist/flatbuffers/duc/youtube-states.js +11 -0
- package/dist/flatbuffers/duc.d.ts +227 -0
- package/dist/flatbuffers/duc.js +229 -0
- package/dist/index.d.ts +8 -0
- package/dist/index.js +8 -0
- package/dist/legacy/index.d.ts +1 -0
- package/dist/legacy/index.js +1 -0
- package/dist/legacy/v1/duc/app-state.d.ts +124 -0
- package/dist/legacy/v1/duc/app-state.js +388 -0
- package/dist/legacy/v1/duc/binary-file-data.d.ts +27 -0
- package/dist/legacy/v1/duc/binary-file-data.js +90 -0
- package/dist/legacy/v1/duc/binary-files-entry.d.ts +16 -0
- package/dist/legacy/v1/duc/binary-files-entry.js +43 -0
- package/dist/legacy/v1/duc/binary-files.d.ts +17 -0
- package/dist/legacy/v1/duc/binary-files.js +55 -0
- package/dist/legacy/v1/duc/binding-point.d.ts +15 -0
- package/dist/legacy/v1/duc/binding-point.js +48 -0
- package/dist/legacy/v1/duc/bound-element.d.ts +17 -0
- package/dist/legacy/v1/duc/bound-element.js +48 -0
- package/dist/legacy/v1/duc/duc-block-attribute-details.d.ts +22 -0
- package/dist/legacy/v1/duc/duc-block-attribute-details.js +57 -0
- package/dist/legacy/v1/duc/duc-block-attribute.d.ts +16 -0
- package/dist/legacy/v1/duc/duc-block-attribute.js +43 -0
- package/dist/legacy/v1/duc/duc-block-instance-element-override.d.ts +17 -0
- package/dist/legacy/v1/duc/duc-block-instance-element-override.js +48 -0
- package/dist/legacy/v1/duc/duc-block.d.ts +34 -0
- package/dist/legacy/v1/duc/duc-block.js +110 -0
- package/dist/legacy/v1/duc/duc-element.d.ts +273 -0
- package/dist/legacy/v1/duc/duc-element.js +865 -0
- package/dist/legacy/v1/duc/duc-group.d.ts +40 -0
- package/dist/legacy/v1/duc/duc-group.js +114 -0
- package/dist/legacy/v1/duc/duc-line-reference.d.ts +15 -0
- package/dist/legacy/v1/duc/duc-line-reference.js +43 -0
- package/dist/legacy/v1/duc/duc-line.d.ts +15 -0
- package/dist/legacy/v1/duc/duc-line.js +43 -0
- package/dist/legacy/v1/duc/duc-path.d.ts +26 -0
- package/dist/legacy/v1/duc/duc-path.js +69 -0
- package/dist/legacy/v1/duc/duc-table-cell.d.ts +22 -0
- package/dist/legacy/v1/duc/duc-table-cell.js +57 -0
- package/dist/legacy/v1/duc/duc-table-column.d.ts +18 -0
- package/dist/legacy/v1/duc/duc-table-column.js +50 -0
- package/dist/legacy/v1/duc/duc-table-row.d.ts +18 -0
- package/dist/legacy/v1/duc/duc-table-row.js +50 -0
- package/dist/legacy/v1/duc/duc-table-style-props.d.ts +39 -0
- package/dist/legacy/v1/duc/duc-table-style-props.js +114 -0
- package/dist/legacy/v1/duc/duc-table-style.d.ts +14 -0
- package/dist/legacy/v1/duc/duc-table-style.js +41 -0
- package/dist/legacy/v1/duc/element-background.d.ts +14 -0
- package/dist/legacy/v1/duc/element-background.js +41 -0
- package/dist/legacy/v1/duc/element-content-base.d.ts +22 -0
- package/dist/legacy/v1/duc/element-content-base.js +64 -0
- package/dist/legacy/v1/duc/element-stroke.d.ts +23 -0
- package/dist/legacy/v1/duc/element-stroke.js +66 -0
- package/dist/legacy/v1/duc/exported-data-state.d.ts +51 -0
- package/dist/legacy/v1/duc/exported-data-state.js +155 -0
- package/dist/legacy/v1/duc/image-crop.d.ts +23 -0
- package/dist/legacy/v1/duc/image-crop.js +80 -0
- package/dist/legacy/v1/duc/linear-element-editor.d.ts +44 -0
- package/dist/legacy/v1/duc/linear-element-editor.js +119 -0
- package/dist/legacy/v1/duc/point-binding.d.ts +25 -0
- package/dist/legacy/v1/duc/point-binding.js +72 -0
- package/dist/legacy/v1/duc/point.d.ts +20 -0
- package/dist/legacy/v1/duc/point.js +63 -0
- package/dist/legacy/v1/duc/pointer-down-state.d.ts +32 -0
- package/dist/legacy/v1/duc/pointer-down-state.js +90 -0
- package/dist/legacy/v1/duc/renderer-state.d.ts +17 -0
- package/dist/legacy/v1/duc/renderer-state.js +54 -0
- package/dist/legacy/v1/duc/segment-midpoint-state.d.ts +18 -0
- package/dist/legacy/v1/duc/segment-midpoint-state.js +57 -0
- package/dist/legacy/v1/duc/simple-point.d.ts +15 -0
- package/dist/legacy/v1/duc/simple-point.js +48 -0
- package/dist/legacy/v1/duc/stroke-sides.d.ts +23 -0
- package/dist/legacy/v1/duc/stroke-sides.js +66 -0
- package/dist/legacy/v1/duc/stroke-style.d.ts +31 -0
- package/dist/legacy/v1/duc/stroke-style.js +102 -0
- package/dist/legacy/v1/duc/tiling-properties.d.ts +21 -0
- package/dist/legacy/v1/duc/tiling-properties.js +75 -0
- package/dist/legacy/v1/duc.d.ts +35 -0
- package/dist/legacy/v1/duc.js +37 -0
- package/dist/legacy/v1/index.d.ts +1 -0
- package/dist/legacy/v1/index.js +1 -0
- package/dist/legacy/v1/parse/index.d.ts +67 -0
- package/dist/legacy/v1/parse/index.js +101 -0
- package/dist/legacy/v1/parse/parseAppStateFromBinary.d.ts +3 -0
- package/dist/legacy/v1/parse/parseAppStateFromBinary.js +139 -0
- package/dist/legacy/v1/parse/parseBinaryFilesFromBinary.d.ts +4 -0
- package/dist/legacy/v1/parse/parseBinaryFilesFromBinary.js +32 -0
- package/dist/legacy/v1/parse/parseBlockFromBinary.d.ts +3 -0
- package/dist/legacy/v1/parse/parseBlockFromBinary.js +70 -0
- package/dist/legacy/v1/parse/parseElementFromBinary.d.ts +8 -0
- package/dist/legacy/v1/parse/parseElementFromBinary.js +387 -0
- package/dist/legacy/v1/parse/parseGroupFromBinary.d.ts +4 -0
- package/dist/legacy/v1/parse/parseGroupFromBinary.js +36 -0
- package/dist/legacy/v1/parse/parseRendererStateFromBinary.d.ts +4 -0
- package/dist/legacy/v1/parse/parseRendererStateFromBinary.js +15 -0
- package/dist/legacy/v1/serialize/index.d.ts +5 -0
- package/dist/legacy/v1/serialize/index.js +81 -0
- package/dist/legacy/v1/serialize/serializationUtils.d.ts +17 -0
- package/dist/legacy/v1/serialize/serializationUtils.js +27 -0
- package/dist/legacy/v1/serialize/serializeAppStateFromDuc.d.ts +4 -0
- package/dist/legacy/v1/serialize/serializeAppStateFromDuc.js +145 -0
- package/dist/legacy/v1/serialize/serializeBinaryFilesFromDuc.d.ts +4 -0
- package/dist/legacy/v1/serialize/serializeBinaryFilesFromDuc.js +46 -0
- package/dist/legacy/v1/serialize/serializeBlockFromDuc.d.ts +3 -0
- package/dist/legacy/v1/serialize/serializeBlockFromDuc.js +60 -0
- package/dist/legacy/v1/serialize/serializeElementFromDuc.d.ts +8 -0
- package/dist/legacy/v1/serialize/serializeElementFromDuc.js +435 -0
- package/dist/legacy/v1/serialize/serializeGroupFromDuc.d.ts +3 -0
- package/dist/legacy/v1/serialize/serializeGroupFromDuc.js +37 -0
- package/dist/legacy/v1/serialize/serializeRendererStateFromDuc.d.ts +4 -0
- package/dist/legacy/v1/serialize/serializeRendererStateFromDuc.js +7 -0
- package/dist/legacy/v1/types/elements/index.d.ts +480 -0
- package/dist/legacy/v1/types/elements/index.js +1 -0
- package/dist/legacy/v1/types/elements/typeChecks.d.ts +40 -0
- package/dist/legacy/v1/types/elements/typeChecks.js +179 -0
- package/dist/legacy/v1/types/geometryTypes.d.ts +78 -0
- package/dist/legacy/v1/types/geometryTypes.js +1 -0
- package/dist/legacy/v1/types/index.d.ts +496 -0
- package/dist/legacy/v1/types/index.js +1 -0
- package/dist/legacy/v1/types/utility-types.d.ts +31 -0
- package/dist/legacy/v1/types/utility-types.js +1 -0
- package/dist/legacy/v1/utils/bounds.d.ts +76 -0
- package/dist/legacy/v1/utils/bounds.js +415 -0
- package/dist/legacy/v1/utils/constants.d.ts +370 -0
- package/dist/legacy/v1/utils/constants.js +571 -0
- package/dist/legacy/v1/utils/elements/index.d.ts +26 -0
- package/dist/legacy/v1/utils/elements/index.js +108 -0
- package/dist/legacy/v1/utils/elements/linearElement.d.ts +133 -0
- package/dist/legacy/v1/utils/elements/linearElement.js +544 -0
- package/dist/legacy/v1/utils/elements/textElement.d.ts +89 -0
- package/dist/legacy/v1/utils/elements/textElement.js +563 -0
- package/dist/legacy/v1/utils/index.d.ts +26 -0
- package/dist/legacy/v1/utils/index.js +40 -0
- package/dist/legacy/v1/utils/math/algebra/ga.d.ts +63 -0
- package/dist/legacy/v1/utils/math/algebra/ga.js +268 -0
- package/dist/legacy/v1/utils/math/algebra/gadirections.d.ts +9 -0
- package/dist/legacy/v1/utils/math/algebra/gadirections.js +18 -0
- package/dist/legacy/v1/utils/math/algebra/galines.d.ts +23 -0
- package/dist/legacy/v1/utils/math/algebra/galines.js +32 -0
- package/dist/legacy/v1/utils/math/algebra/gapoints.d.ts +8 -0
- package/dist/legacy/v1/utils/math/algebra/gapoints.js +30 -0
- package/dist/legacy/v1/utils/math/algebra/gatransforms.d.ts +10 -0
- package/dist/legacy/v1/utils/math/algebra/gatransforms.js +23 -0
- package/dist/legacy/v1/utils/math/bbox.d.ts +10 -0
- package/dist/legacy/v1/utils/math/bbox.js +42 -0
- package/dist/legacy/v1/utils/math/geometry.d.ts +102 -0
- package/dist/legacy/v1/utils/math/geometry.js +790 -0
- package/dist/legacy/v1/utils/math/index.d.ts +309 -0
- package/dist/legacy/v1/utils/math/index.js +1140 -0
- package/dist/legacy/v1/utils/math/random.d.ts +4 -0
- package/dist/legacy/v1/utils/math/random.js +25 -0
- package/dist/legacy/v1/utils/measurements.d.ts +33 -0
- package/dist/legacy/v1/utils/measurements.js +65 -0
- package/dist/legacy/v1/utils/normalize.d.ts +14 -0
- package/dist/legacy/v1/utils/normalize.js +49 -0
- package/dist/legacy/v1/utils/restore.d.ts +197 -0
- package/dist/legacy/v1/utils/restore.js +1255 -0
- package/dist/legacy/v1/utils/scopes.d.ts +260 -0
- package/dist/legacy/v1/utils/scopes.js +661 -0
- package/dist/legacy/v1/utils/standards.d.ts +12 -0
- package/dist/legacy/v1/utils/standards.js +10 -0
- package/dist/legacy/v1/utils/state/index.d.ts +2 -0
- package/dist/legacy/v1/utils/state/index.js +68 -0
- package/dist/legacy/v1/utils/url.d.ts +8 -0
- package/dist/legacy/v1/utils/url.js +33 -0
- package/dist/parse.d.ts +54 -0
- package/dist/parse.js +1318 -0
- package/dist/restore/index.d.ts +3 -0
- package/dist/restore/index.js +3 -0
- package/dist/restore/restoreDataState.d.ts +191 -0
- package/dist/restore/restoreDataState.js +716 -0
- package/dist/restore/restoreElements.d.ts +34 -0
- package/dist/restore/restoreElements.js +1281 -0
- package/dist/restore/restoreStandards.d.ts +8 -0
- package/dist/restore/restoreStandards.js +224 -0
- package/dist/serialize.d.ts +3 -0
- package/dist/serialize.js +2465 -0
- package/dist/technical/index.d.ts +3 -0
- package/dist/technical/index.js +3 -0
- package/dist/technical/measurements.d.ts +31 -0
- package/dist/technical/measurements.js +64 -0
- package/dist/technical/scopes.d.ts +261 -0
- package/dist/technical/scopes.js +661 -0
- package/dist/technical/standards.d.ts +124 -0
- package/dist/technical/standards.js +10 -0
- package/dist/types/elements/index.d.ts +1356 -0
- package/dist/types/elements/index.js +1 -0
- package/dist/types/elements/typeChecks.d.ts +40 -0
- package/dist/types/elements/typeChecks.js +188 -0
- package/dist/types/geometryTypes.d.ts +90 -0
- package/dist/types/geometryTypes.js +1 -0
- package/dist/types/index.d.ts +591 -0
- package/dist/types/index.js +3 -0
- package/dist/types/utility-types.d.ts +31 -0
- package/dist/types/utility-types.js +1 -0
- package/dist/utils/bounds.d.ts +75 -0
- package/dist/utils/bounds.js +414 -0
- package/dist/utils/constants.d.ts +288 -0
- package/dist/utils/constants.js +529 -0
- package/dist/utils/elements/frameElement.d.ts +4 -0
- package/dist/utils/elements/frameElement.js +16 -0
- package/dist/utils/elements/freedrawElement.d.ts +2 -0
- package/dist/utils/elements/freedrawElement.js +46 -0
- package/dist/utils/elements/index.d.ts +51 -0
- package/dist/utils/elements/index.js +215 -0
- package/dist/utils/elements/linearElement.d.ts +53 -0
- package/dist/utils/elements/linearElement.js +539 -0
- package/dist/utils/elements/newElement.d.ts +72 -0
- package/dist/utils/elements/newElement.js +268 -0
- package/dist/utils/elements/textElement.d.ts +89 -0
- package/dist/utils/elements/textElement.js +565 -0
- package/dist/utils/elements/viewportElement.d.ts +6 -0
- package/dist/utils/elements/viewportElement.js +9 -0
- package/dist/utils/filebyte.d.ts +39 -0
- package/dist/utils/filebyte.js +117 -0
- package/dist/utils/functionCodec.d.ts +5 -0
- package/dist/utils/functionCodec.js +86 -0
- package/dist/utils/index.d.ts +32 -0
- package/dist/utils/index.js +53 -0
- package/dist/utils/math/algebra/ga.d.ts +63 -0
- package/dist/utils/math/algebra/ga.js +268 -0
- package/dist/utils/math/algebra/gadirections.d.ts +9 -0
- package/dist/utils/math/algebra/gadirections.js +18 -0
- package/dist/utils/math/algebra/galines.d.ts +23 -0
- package/dist/utils/math/algebra/galines.js +32 -0
- package/dist/utils/math/algebra/gapoints.d.ts +8 -0
- package/dist/utils/math/algebra/gapoints.js +30 -0
- package/dist/utils/math/algebra/gatransforms.d.ts +10 -0
- package/dist/utils/math/algebra/gatransforms.js +23 -0
- package/dist/utils/math/algebra/index.d.ts +5 -0
- package/dist/utils/math/algebra/index.js +5 -0
- package/dist/utils/math/bbox.d.ts +10 -0
- package/dist/utils/math/bbox.js +42 -0
- package/dist/utils/math/geometry.d.ts +102 -0
- package/dist/utils/math/geometry.js +790 -0
- package/dist/utils/math/index.d.ts +323 -0
- package/dist/utils/math/index.js +1188 -0
- package/dist/utils/math/random.d.ts +4 -0
- package/dist/utils/math/random.js +25 -0
- package/dist/utils/normalize.d.ts +14 -0
- package/dist/utils/normalize.js +49 -0
- package/dist/utils/shape.d.ts +15 -0
- package/dist/utils/shape.js +254 -0
- package/dist/utils/state/grid.d.ts +7 -0
- package/dist/utils/state/grid.js +25 -0
- package/dist/utils/state/index.d.ts +9 -0
- package/dist/utils/state/index.js +131 -0
- package/dist/utils/url.d.ts +8 -0
- package/dist/utils/url.js +33 -0
- package/dist/utils/version.d.ts +1 -0
- package/dist/utils/version.js +1 -0
- package/package.json +79 -0
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { nanoid } from "nanoid";
|
|
2
|
+
export function randomSeed() {
|
|
3
|
+
return Math.floor(Math.random() * Math.pow(2, 31));
|
|
4
|
+
}
|
|
5
|
+
class Random {
|
|
6
|
+
constructor(seed) {
|
|
7
|
+
this.seed = seed;
|
|
8
|
+
}
|
|
9
|
+
next() {
|
|
10
|
+
if (this.seed) {
|
|
11
|
+
return ((Math.pow(2, 31) - 1) & (this.seed = Math.imul(48271, this.seed))) / Math.pow(2, 31);
|
|
12
|
+
}
|
|
13
|
+
else {
|
|
14
|
+
return Math.random();
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
let random = new Random(Date.now());
|
|
19
|
+
let testIdBase = 0;
|
|
20
|
+
export const randomInteger = () => Math.floor(random.next() * Math.pow(2, 31));
|
|
21
|
+
export const reseed = (seed) => {
|
|
22
|
+
random = new Random(seed);
|
|
23
|
+
testIdBase = 0;
|
|
24
|
+
};
|
|
25
|
+
export const randomId = () => nanoid();
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { NormalizedZoomValue, ScopedValue } from "ducjs/types";
|
|
2
|
+
import { DucElement, FixedPoint } from "ducjs/types/elements";
|
|
3
|
+
export declare const getNormalizedZoom: (zoom: number) => NormalizedZoomValue;
|
|
4
|
+
export declare const getNormalizedGridSize: (gridStep: number) => number;
|
|
5
|
+
export declare const getNormalizedGridStep: (gridStep: number) => number;
|
|
6
|
+
export declare const normalizeFixedPoint: <T extends FixedPoint | null>(fixedPoint: T) => T extends null ? null : FixedPoint;
|
|
7
|
+
export declare const getNormalizedDimensions: (element: Pick<DucElement, "width" | "height" | "x" | "y">) => {
|
|
8
|
+
width: ScopedValue;
|
|
9
|
+
height: ScopedValue;
|
|
10
|
+
x: ScopedValue;
|
|
11
|
+
y: ScopedValue;
|
|
12
|
+
};
|
|
13
|
+
export declare const normalizeEOL: (str: string) => string;
|
|
14
|
+
export declare const normalizeText: (text: string) => string;
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { MAX_ZOOM, MIN_ZOOM } from "ducjs/utils/constants";
|
|
2
|
+
import { clamp } from "ducjs/utils/math";
|
|
3
|
+
export const getNormalizedZoom = (zoom) => {
|
|
4
|
+
return clamp(zoom, MIN_ZOOM, MAX_ZOOM);
|
|
5
|
+
};
|
|
6
|
+
export const getNormalizedGridSize = (gridStep) => {
|
|
7
|
+
return clamp(Math.round(gridStep), 1, 100);
|
|
8
|
+
};
|
|
9
|
+
export const getNormalizedGridStep = (gridStep) => {
|
|
10
|
+
return clamp(Math.round(gridStep), 1, 100);
|
|
11
|
+
};
|
|
12
|
+
export const normalizeFixedPoint = (fixedPoint) => {
|
|
13
|
+
// Do not allow a precise 0.5 for fixed point ratio
|
|
14
|
+
// to avoid jumping arrow heading due to floating point imprecision
|
|
15
|
+
if (fixedPoint && (fixedPoint.x === 0.5 || fixedPoint.y === 0.5)) {
|
|
16
|
+
return {
|
|
17
|
+
x: fixedPoint.x === 0.5 ? 0.5001 : fixedPoint.x,
|
|
18
|
+
y: fixedPoint.y === 0.5 ? 0.5001 : fixedPoint.y,
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
return fixedPoint;
|
|
22
|
+
};
|
|
23
|
+
export const getNormalizedDimensions = (element) => {
|
|
24
|
+
const ret = {
|
|
25
|
+
width: element.width.scoped,
|
|
26
|
+
height: element.height.scoped,
|
|
27
|
+
x: element.x.scoped,
|
|
28
|
+
y: element.y.scoped,
|
|
29
|
+
};
|
|
30
|
+
if (element.width.scoped < 0) {
|
|
31
|
+
const nextWidth = Math.abs(element.width.scoped);
|
|
32
|
+
ret.width = nextWidth;
|
|
33
|
+
ret.x = element.x.scoped - nextWidth;
|
|
34
|
+
}
|
|
35
|
+
if (element.height.scoped < 0) {
|
|
36
|
+
const nextHeight = Math.abs(element.height.scoped);
|
|
37
|
+
ret.height = nextHeight;
|
|
38
|
+
ret.y = element.y.scoped - nextHeight;
|
|
39
|
+
}
|
|
40
|
+
return ret;
|
|
41
|
+
};
|
|
42
|
+
export const normalizeEOL = (str) => {
|
|
43
|
+
return str.replace(/\r?\n|\r/g, "\n");
|
|
44
|
+
};
|
|
45
|
+
export const normalizeText = (text) => {
|
|
46
|
+
return (normalizeEOL(text)
|
|
47
|
+
// replace tabs with spaces so they render and measure correctly
|
|
48
|
+
.replace(/\t/g, " "));
|
|
49
|
+
};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Scope } from "ducjs/types";
|
|
2
|
+
import { DucElement, DucLine, DucLinearElement, DucNonSelectionElement, DucPath, DucPoint } from "ducjs/types/elements";
|
|
3
|
+
/**
|
|
4
|
+
* Converts a shape (rectangle, polygon, ellipse) to a linear element
|
|
5
|
+
*/
|
|
6
|
+
export declare const convertShapeToLinearElement: (currentScope: Scope, element: DucNonSelectionElement) => DucLinearElement | null;
|
|
7
|
+
export declare const getCorrectedOrthodoxElementPoints: (element: DucElement, points: readonly DucPoint[], lines: readonly DucLine[], currentScope: Scope) => {
|
|
8
|
+
points: DucPoint[];
|
|
9
|
+
lines: DucLine[];
|
|
10
|
+
};
|
|
11
|
+
export declare const getElementRelativePoints: (element: DucElement, currentScope: Scope) => {
|
|
12
|
+
points: DucLinearElement["points"];
|
|
13
|
+
lines: DucLinearElement["lines"];
|
|
14
|
+
pathOverrides?: DucPath[];
|
|
15
|
+
};
|
|
@@ -0,0 +1,254 @@
|
|
|
1
|
+
import { BEZIER_MIRRORING } from "ducjs/flatbuffers/duc";
|
|
2
|
+
import { isArrowElement, isEllipseElement, isFreeDrawElement, isLinearElement, isPolygonElement } from "ducjs/types/elements/typeChecks";
|
|
3
|
+
import { calculateShapeBounds } from "ducjs/utils/bounds";
|
|
4
|
+
import { getBaseElementProps } from "ducjs/utils/elements";
|
|
5
|
+
import { getNormalizedPoints, mergeOverlappingPoints } from "ducjs/utils/elements/linearElement";
|
|
6
|
+
import { newLinearElement } from "ducjs/utils/elements/newElement";
|
|
7
|
+
import { rotatePoint } from "ducjs/utils/math";
|
|
8
|
+
import { getPrecisionValueFromRaw, getPrecisionValueFromScoped } from "ducjs/technical/scopes";
|
|
9
|
+
/**
|
|
10
|
+
* Converts a shape (rectangle, polygon, ellipse) to a linear element
|
|
11
|
+
*/
|
|
12
|
+
export const convertShapeToLinearElement = (currentScope, element) => {
|
|
13
|
+
if (!element)
|
|
14
|
+
return null;
|
|
15
|
+
const { points, lines, pathOverrides } = getElementRelativePoints(element, currentScope);
|
|
16
|
+
// Create a new linear element based on the shape's points
|
|
17
|
+
const linearElement = newLinearElement(currentScope, Object.assign(Object.assign({}, getBaseElementProps(element)), { type: "line", points,
|
|
18
|
+
lines,
|
|
19
|
+
pathOverrides }));
|
|
20
|
+
const normalizedLinearElement = getNormalizedPoints(linearElement, currentScope);
|
|
21
|
+
return Object.assign(Object.assign({}, linearElement), normalizedLinearElement);
|
|
22
|
+
};
|
|
23
|
+
/**
|
|
24
|
+
* @returns vertices relative to element's top-left {x: 0, y: 0} position
|
|
25
|
+
* */
|
|
26
|
+
const getNonLinearElementRelativePoints = (element, currentScope) => {
|
|
27
|
+
var _a;
|
|
28
|
+
if (isPolygonElement(element)) {
|
|
29
|
+
const numSides = element.sides;
|
|
30
|
+
const width = element.width.scoped;
|
|
31
|
+
const height = element.height.scoped;
|
|
32
|
+
const centerX = width / 2;
|
|
33
|
+
const centerY = height / 2;
|
|
34
|
+
const radiusX = width / 2;
|
|
35
|
+
const radiusY = height / 2;
|
|
36
|
+
const points = [];
|
|
37
|
+
const lines = [];
|
|
38
|
+
let pathOverrides = undefined;
|
|
39
|
+
// Generate polygon vertices inscribed in the ellipse
|
|
40
|
+
for (let i = 0; i < numSides; i++) {
|
|
41
|
+
// Calculate the base angle for this vertex
|
|
42
|
+
const baseAngle = (2 * Math.PI * i) / numSides - Math.PI / 2; // Start at top
|
|
43
|
+
// Calculate point on ellipse using the rotated angle
|
|
44
|
+
const x = centerX + radiusX * Math.cos(baseAngle);
|
|
45
|
+
const y = centerY + radiusY * Math.sin(baseAngle);
|
|
46
|
+
points.push({
|
|
47
|
+
x: getPrecisionValueFromScoped(x, element.scope, currentScope),
|
|
48
|
+
y: getPrecisionValueFromScoped(y, element.scope, currentScope),
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
// Create lines connecting consecutive vertices (closed polygon)
|
|
52
|
+
for (let i = 0; i < numSides; i++) {
|
|
53
|
+
const currentIndex = i;
|
|
54
|
+
const nextIndex = (i + 1) % numSides; // Wrap around to 0 for the last vertex
|
|
55
|
+
lines.push([
|
|
56
|
+
{ index: currentIndex, handle: null },
|
|
57
|
+
{ index: nextIndex, handle: null }
|
|
58
|
+
]);
|
|
59
|
+
}
|
|
60
|
+
// Apply the correction for polygon points after generation
|
|
61
|
+
const corrected = getCorrectedOrthodoxElementPoints(element, points, lines, currentScope);
|
|
62
|
+
return { points: corrected.points, lines: corrected.lines, pathOverrides };
|
|
63
|
+
}
|
|
64
|
+
if (isEllipseElement(element)) {
|
|
65
|
+
const { width, ratio, startAngle, endAngle } = element;
|
|
66
|
+
const height = (_a = element.height) !== null && _a !== void 0 ? _a : width;
|
|
67
|
+
if (width.scoped <= 0 || height.scoped <= 0) {
|
|
68
|
+
return { points: [], lines: [] };
|
|
69
|
+
}
|
|
70
|
+
const rx = width.scoped / 2;
|
|
71
|
+
const ry = height.scoped / 2;
|
|
72
|
+
const cx = width.scoped / 2;
|
|
73
|
+
const cy = height.scoped / 2;
|
|
74
|
+
const epsilon = 1e-6;
|
|
75
|
+
const sweepAngle = endAngle - startAngle;
|
|
76
|
+
const isFullShape = Math.abs(sweepAngle) >= 2 * Math.PI - epsilon;
|
|
77
|
+
const allPoints = [];
|
|
78
|
+
const allLines = [];
|
|
79
|
+
let pathOverrides = undefined;
|
|
80
|
+
const createArc = (radiusX, radiusY, sAngle, eAngle) => {
|
|
81
|
+
const arcPoints = [];
|
|
82
|
+
const arcLines = [];
|
|
83
|
+
const sweep = eAngle - sAngle;
|
|
84
|
+
if (Math.abs(sweep) < epsilon) {
|
|
85
|
+
return { points: arcPoints, lines: arcLines };
|
|
86
|
+
}
|
|
87
|
+
const nSegments = Math.ceil(Math.abs(sweep) / (Math.PI / 2));
|
|
88
|
+
const segmentSweep = sweep / nSegments;
|
|
89
|
+
for (let i = 0; i < nSegments; i++) {
|
|
90
|
+
const angle0 = sAngle + i * segmentSweep;
|
|
91
|
+
const angle1 = sAngle + (i + 1) * segmentSweep;
|
|
92
|
+
const p0 = { x: cx + radiusX * Math.cos(angle0), y: cy + radiusY * Math.sin(angle0) };
|
|
93
|
+
if (i === 0) {
|
|
94
|
+
arcPoints.push({
|
|
95
|
+
x: getPrecisionValueFromScoped(p0.x, element.scope, currentScope),
|
|
96
|
+
y: getPrecisionValueFromScoped(p0.y, element.scope, currentScope),
|
|
97
|
+
mirroring: BEZIER_MIRRORING.ANGLE_LENGTH,
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
const p3 = { x: cx + radiusX * Math.cos(angle1), y: cy + radiusY * Math.sin(angle1) };
|
|
101
|
+
arcPoints.push({
|
|
102
|
+
x: getPrecisionValueFromScoped(p3.x, element.scope, currentScope),
|
|
103
|
+
y: getPrecisionValueFromScoped(p3.y, element.scope, currentScope),
|
|
104
|
+
mirroring: BEZIER_MIRRORING.ANGLE_LENGTH,
|
|
105
|
+
});
|
|
106
|
+
const k = (4 / 3) * Math.tan(segmentSweep / 4);
|
|
107
|
+
const t0 = { x: -radiusX * Math.sin(angle0), y: radiusY * Math.cos(angle0) };
|
|
108
|
+
const t1 = { x: -radiusX * Math.sin(angle1), y: radiusY * Math.cos(angle1) };
|
|
109
|
+
const cp1 = { x: p0.x + t0.x * k, y: p0.y + t0.y * k };
|
|
110
|
+
const cp2 = { x: p3.x - t1.x * k, y: p3.y - t1.y * k };
|
|
111
|
+
arcLines.push([
|
|
112
|
+
{
|
|
113
|
+
index: i,
|
|
114
|
+
handle: {
|
|
115
|
+
x: getPrecisionValueFromScoped(cp1.x, element.scope, currentScope),
|
|
116
|
+
y: getPrecisionValueFromScoped(cp1.y, element.scope, currentScope),
|
|
117
|
+
},
|
|
118
|
+
},
|
|
119
|
+
{
|
|
120
|
+
index: i + 1,
|
|
121
|
+
handle: {
|
|
122
|
+
x: getPrecisionValueFromScoped(cp2.x, element.scope, currentScope),
|
|
123
|
+
y: getPrecisionValueFromScoped(cp2.y, element.scope, currentScope),
|
|
124
|
+
},
|
|
125
|
+
},
|
|
126
|
+
]);
|
|
127
|
+
}
|
|
128
|
+
return { points: arcPoints, lines: arcLines };
|
|
129
|
+
};
|
|
130
|
+
const addPathToElement = (pointsToAdd, linesToAdd) => {
|
|
131
|
+
const pointIndices = Array.from({ length: pointsToAdd.length }, (_, i) => allPoints.length + i);
|
|
132
|
+
const lineStartIdx = allLines.length;
|
|
133
|
+
allPoints.push(...pointsToAdd);
|
|
134
|
+
for (const line of linesToAdd) {
|
|
135
|
+
line[0].index = pointIndices[line[0].index];
|
|
136
|
+
line[1].index = pointIndices[line[1].index];
|
|
137
|
+
allLines.push(line);
|
|
138
|
+
}
|
|
139
|
+
const lineIndices = Array.from({ length: allLines.length - lineStartIdx }, (_, i) => lineStartIdx + i);
|
|
140
|
+
return { pointIndices, lineIndices };
|
|
141
|
+
};
|
|
142
|
+
const outerArcResult = createArc(rx, ry, startAngle, endAngle);
|
|
143
|
+
const { pointIndices: outerIndices } = addPathToElement(outerArcResult.points, outerArcResult.lines);
|
|
144
|
+
const hasHole = ratio > epsilon && ratio < 1 - epsilon;
|
|
145
|
+
if (hasHole) {
|
|
146
|
+
const rxInner = rx * (1 - ratio);
|
|
147
|
+
const ryInner = ry * (1 - ratio);
|
|
148
|
+
const innerArcResult = createArc(rxInner, ryInner, endAngle, startAngle);
|
|
149
|
+
if (innerArcResult.points.length > 0) {
|
|
150
|
+
const { pointIndices: innerIndices, lineIndices: innerLineIndices } = addPathToElement(innerArcResult.points, innerArcResult.lines);
|
|
151
|
+
if (isFullShape) {
|
|
152
|
+
pathOverrides = [{
|
|
153
|
+
lineIndices: innerLineIndices,
|
|
154
|
+
background: element.background.length > 0 ? Object.assign(Object.assign({}, element.background[0]), { content: Object.assign(Object.assign({}, element.background[0].content), { visible: false }) }) : null,
|
|
155
|
+
stroke: null,
|
|
156
|
+
}];
|
|
157
|
+
}
|
|
158
|
+
else {
|
|
159
|
+
const outerStartIdx = outerIndices[0];
|
|
160
|
+
const outerEndIdx = outerIndices[outerIndices.length - 1];
|
|
161
|
+
const innerStartIdx = innerIndices[0];
|
|
162
|
+
const innerEndIdx = innerIndices[innerIndices.length - 1];
|
|
163
|
+
allPoints[outerStartIdx].mirroring = BEZIER_MIRRORING.NONE;
|
|
164
|
+
allPoints[outerEndIdx].mirroring = BEZIER_MIRRORING.NONE;
|
|
165
|
+
allPoints[innerStartIdx].mirroring = BEZIER_MIRRORING.NONE;
|
|
166
|
+
allPoints[innerEndIdx].mirroring = BEZIER_MIRRORING.NONE;
|
|
167
|
+
allLines.push([{ index: outerEndIdx, handle: null }, { index: innerStartIdx, handle: null }]);
|
|
168
|
+
allLines.push([{ index: innerEndIdx, handle: null }, { index: outerStartIdx, handle: null }]);
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
else if (!isFullShape) { // Pie slice (no hole)
|
|
173
|
+
const centerPoint = {
|
|
174
|
+
x: getPrecisionValueFromScoped(cx, element.scope, currentScope),
|
|
175
|
+
y: getPrecisionValueFromScoped(cy, element.scope, currentScope),
|
|
176
|
+
mirroring: BEZIER_MIRRORING.NONE,
|
|
177
|
+
};
|
|
178
|
+
const centerIndex = allPoints.length;
|
|
179
|
+
allPoints.push(centerPoint);
|
|
180
|
+
const outerStartIndex = outerIndices[0];
|
|
181
|
+
const outerEndIndex = outerIndices[outerIndices.length - 1];
|
|
182
|
+
allPoints[outerStartIndex].mirroring = BEZIER_MIRRORING.NONE;
|
|
183
|
+
allPoints[outerEndIndex].mirroring = BEZIER_MIRRORING.NONE;
|
|
184
|
+
allLines.push([{ index: outerEndIndex, handle: null }, { index: centerIndex, handle: null }]);
|
|
185
|
+
allLines.push([{ index: centerIndex, handle: null }, { index: outerStartIndex, handle: null }]);
|
|
186
|
+
}
|
|
187
|
+
// Merge any overlapping points that may have been introduced
|
|
188
|
+
const merged = mergeOverlappingPoints(allPoints, allLines);
|
|
189
|
+
const corrected = getCorrectedOrthodoxElementPoints(element, merged.points, merged.lines, currentScope);
|
|
190
|
+
return { points: corrected.points, lines: corrected.lines, pathOverrides };
|
|
191
|
+
}
|
|
192
|
+
// Default case: rectangle/square
|
|
193
|
+
const points = [
|
|
194
|
+
{
|
|
195
|
+
x: getPrecisionValueFromRaw(0, element.scope, currentScope),
|
|
196
|
+
y: getPrecisionValueFromRaw(0, element.scope, currentScope),
|
|
197
|
+
},
|
|
198
|
+
{
|
|
199
|
+
x: getPrecisionValueFromScoped(element.width.scoped, element.scope, currentScope),
|
|
200
|
+
y: getPrecisionValueFromRaw(0, element.scope, currentScope),
|
|
201
|
+
},
|
|
202
|
+
{
|
|
203
|
+
x: getPrecisionValueFromScoped(element.width.scoped, element.scope, currentScope),
|
|
204
|
+
y: getPrecisionValueFromScoped(element.height.scoped, element.scope, currentScope),
|
|
205
|
+
},
|
|
206
|
+
{
|
|
207
|
+
x: getPrecisionValueFromRaw(0, element.scope, currentScope),
|
|
208
|
+
y: getPrecisionValueFromScoped(element.height.scoped, element.scope, currentScope),
|
|
209
|
+
},
|
|
210
|
+
];
|
|
211
|
+
// Create lines for rectangle: top, right, bottom, left
|
|
212
|
+
const lines = [
|
|
213
|
+
[{ index: 0, handle: null }, { index: 1, handle: null }],
|
|
214
|
+
[{ index: 1, handle: null }, { index: 2, handle: null }],
|
|
215
|
+
[{ index: 2, handle: null }, { index: 3, handle: null }],
|
|
216
|
+
[{ index: 3, handle: null }, { index: 0, handle: null }],
|
|
217
|
+
];
|
|
218
|
+
return { points, lines };
|
|
219
|
+
};
|
|
220
|
+
export const getCorrectedOrthodoxElementPoints = (element, points, lines, currentScope) => {
|
|
221
|
+
const { minX, minY, maxX, maxY } = calculateShapeBounds(points, lines);
|
|
222
|
+
const polygonCenter = {
|
|
223
|
+
x: element.width.scoped / 2,
|
|
224
|
+
y: element.height.scoped / 2,
|
|
225
|
+
};
|
|
226
|
+
const bboxCenter = {
|
|
227
|
+
x: minX + (maxX - minX) / 2,
|
|
228
|
+
y: minY + (maxY - minY) / 2,
|
|
229
|
+
};
|
|
230
|
+
const offset = {
|
|
231
|
+
x: polygonCenter.x - bboxCenter.x,
|
|
232
|
+
y: polygonCenter.y - bboxCenter.y,
|
|
233
|
+
};
|
|
234
|
+
const rotatedOffset = rotatePoint(offset, { x: 0, y: 0 }, element.angle);
|
|
235
|
+
const correction = {
|
|
236
|
+
x: offset.x - rotatedOffset.x,
|
|
237
|
+
y: offset.y - rotatedOffset.y,
|
|
238
|
+
};
|
|
239
|
+
const correctedPoints = points.map((p) => (Object.assign(Object.assign({}, p), { x: getPrecisionValueFromScoped((p.x.scoped + correction.x), element.scope, currentScope), y: getPrecisionValueFromScoped((p.y.scoped + correction.y), element.scope, currentScope) })));
|
|
240
|
+
const correctedLines = lines.map((line) => [
|
|
241
|
+
Object.assign(Object.assign({}, line[0]), { handle: line[0].handle ? Object.assign(Object.assign({}, line[0].handle), { x: getPrecisionValueFromScoped(line[0].handle.x.scoped + correction.x, element.scope, currentScope), y: getPrecisionValueFromScoped(line[0].handle.y.scoped + correction.y, element.scope, currentScope) }) : null }),
|
|
242
|
+
Object.assign(Object.assign({}, line[1]), { handle: line[1].handle ? Object.assign(Object.assign({}, line[1].handle), { x: getPrecisionValueFromScoped(line[1].handle.x.scoped + correction.x, element.scope, currentScope), y: getPrecisionValueFromScoped(line[1].handle.y.scoped + correction.y, element.scope, currentScope) }) : null }),
|
|
243
|
+
]);
|
|
244
|
+
return { points: correctedPoints, lines: correctedLines };
|
|
245
|
+
};
|
|
246
|
+
export const getElementRelativePoints = (element, currentScope) => {
|
|
247
|
+
if (isLinearElement(element)) {
|
|
248
|
+
return { points: element.points, lines: element.lines };
|
|
249
|
+
}
|
|
250
|
+
if (isFreeDrawElement(element) || isArrowElement(element)) {
|
|
251
|
+
return { points: element.points, lines: [] };
|
|
252
|
+
}
|
|
253
|
+
return getNonLinearElementRelativePoints(element, currentScope);
|
|
254
|
+
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { GridSettings, Scope } from "ducjs/types";
|
|
2
|
+
/**
|
|
3
|
+
* Factory functions for common grid types
|
|
4
|
+
*/
|
|
5
|
+
export declare const createRectangularGrid: (spacing: number, name: string, scope: Scope) => GridSettings;
|
|
6
|
+
export declare const createIsometricGrid: (spacing: number, name: string, scope: Scope) => GridSettings;
|
|
7
|
+
export declare const createPolarGrid: (radialSpacing: number, divisions: number, name: string, scope: Scope) => GridSettings;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { GRID_TYPE, GRID_DISPLAY_TYPE } from "ducjs/flatbuffers/duc";
|
|
2
|
+
import { getPrecisionValueFromRaw } from "ducjs/technical";
|
|
3
|
+
import { DEFAULT_GRID_SETTINGS } from "ducjs/utils/constants";
|
|
4
|
+
/**
|
|
5
|
+
* Factory functions for common grid types
|
|
6
|
+
*/
|
|
7
|
+
export const createRectangularGrid = (spacing, name, scope) => (Object.assign(Object.assign({}, DEFAULT_GRID_SETTINGS), {
|
|
8
|
+
// id: `rect-${spacing}`,
|
|
9
|
+
// name,
|
|
10
|
+
xSpacing: getPrecisionValueFromRaw(spacing, scope, scope), ySpacing: getPrecisionValueFromRaw(spacing, scope, scope) }));
|
|
11
|
+
export const createIsometricGrid = (spacing, name, scope) => (Object.assign(Object.assign({}, DEFAULT_GRID_SETTINGS), {
|
|
12
|
+
// id: `iso-${spacing}`,
|
|
13
|
+
// name,
|
|
14
|
+
type: GRID_TYPE.ISOMETRIC, xSpacing: getPrecisionValueFromRaw(spacing, scope, scope), ySpacing: getPrecisionValueFromRaw(spacing, scope, scope), isometricSettings: {
|
|
15
|
+
leftAngle: Math.PI / 6, // 30 degrees
|
|
16
|
+
rightAngle: Math.PI / 6, // 30 degrees
|
|
17
|
+
} }));
|
|
18
|
+
export const createPolarGrid = (radialSpacing, divisions, name, scope) => (Object.assign(Object.assign({}, DEFAULT_GRID_SETTINGS), {
|
|
19
|
+
// id: `polar-${radialSpacing}-${divisions}`,
|
|
20
|
+
// name,
|
|
21
|
+
type: GRID_TYPE.POLAR, displayType: GRID_DISPLAY_TYPE.LINES, xSpacing: getPrecisionValueFromRaw(radialSpacing, scope, scope), ySpacing: getPrecisionValueFromRaw(radialSpacing, scope, scope), polarSettings: {
|
|
22
|
+
radialDivisions: divisions,
|
|
23
|
+
radialSpacing: getPrecisionValueFromRaw(radialSpacing, scope, scope),
|
|
24
|
+
showLabels: false
|
|
25
|
+
} }));
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export * from "./grid";
|
|
2
|
+
import { DucGlobalState, DucLocalState, Scope, Zoom } from "ducjs/types";
|
|
3
|
+
/**
|
|
4
|
+
* Returns the zoom object with value, scoped, and scaled properties,
|
|
5
|
+
* using importedState, restoredGlobalState, and defaults.
|
|
6
|
+
*/
|
|
7
|
+
export declare const getZoom: (value: number, mainScope: Scope, scopeExponentThreshold: number) => Zoom;
|
|
8
|
+
export declare const getDefaultGlobalState: () => DucGlobalState;
|
|
9
|
+
export declare const getDefaultLocalState: () => Omit<DucLocalState, "offsetTop" | "offsetLeft" | "width" | "height">;
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
export * from "./grid";
|
|
2
|
+
import { PRUNING_LEVEL, TEXT_ALIGN } from "ducjs/flatbuffers/duc";
|
|
3
|
+
import { PREDEFINED_STANDARDS } from "ducjs/technical";
|
|
4
|
+
import { getPrecisionValueFromRaw, getScaledZoomValueForScope, getScopedZoomValue, NEUTRAL_SCOPE, } from "ducjs/technical/scopes";
|
|
5
|
+
import { COLOR_PALETTE, DEFAULT_ELEMENT_PROPS, DEFAULT_FONT_FAMILY, DEFAULT_FONT_SIZE, } from "ducjs/utils/constants";
|
|
6
|
+
import { getNormalizedZoom } from "ducjs/utils/normalize";
|
|
7
|
+
import { isFiniteNumber } from "ducjs/utils";
|
|
8
|
+
import { isValidPrecisionScopeValue } from "ducjs/restore/restoreDataState";
|
|
9
|
+
// appState
|
|
10
|
+
// export const updateActiveTool = (
|
|
11
|
+
// appState: Pick<DucLocalState, "activeTool">,
|
|
12
|
+
// data: ((
|
|
13
|
+
// | {
|
|
14
|
+
// type: ToolType;
|
|
15
|
+
// }
|
|
16
|
+
// | { type: "custom"; customType: string }
|
|
17
|
+
// ) & { locked?: boolean; fromSelection?: boolean }) & {
|
|
18
|
+
// lastActiveToolBeforeEraser?: ActiveTool | null;
|
|
19
|
+
// },
|
|
20
|
+
// ): DucLocalState["activeTool"] => {
|
|
21
|
+
// if (data.type === "custom") {
|
|
22
|
+
// return {
|
|
23
|
+
// ...appState.activeTool,
|
|
24
|
+
// type: "custom",
|
|
25
|
+
// customType: data.customType,
|
|
26
|
+
// locked: data.locked ?? appState.activeTool.locked,
|
|
27
|
+
// };
|
|
28
|
+
// }
|
|
29
|
+
// return {
|
|
30
|
+
// ...appState.activeTool,
|
|
31
|
+
// lastActiveTool:
|
|
32
|
+
// data.lastActiveToolBeforeEraser === undefined
|
|
33
|
+
// ? appState.activeTool.lastActiveTool
|
|
34
|
+
// : data.lastActiveToolBeforeEraser,
|
|
35
|
+
// type: data.type,
|
|
36
|
+
// customType: null,
|
|
37
|
+
// locked: data.locked ?? appState.activeTool.locked,
|
|
38
|
+
// fromSelection: data.fromSelection ?? false,
|
|
39
|
+
// };
|
|
40
|
+
// };
|
|
41
|
+
// activeTool: {
|
|
42
|
+
// type: "selection",
|
|
43
|
+
// customType: null,
|
|
44
|
+
// locked: DEFAULT_ELEMENT_PROPS.locked,
|
|
45
|
+
// fromSelection: false,
|
|
46
|
+
// lastActiveTool: null,
|
|
47
|
+
// },
|
|
48
|
+
// duconfig
|
|
49
|
+
// displayAllPointDistances: false,
|
|
50
|
+
// displayDistanceOnDrawing: true,
|
|
51
|
+
// displayAllPointInfoSelected: false,
|
|
52
|
+
// displayAllPointCoordinates: false,
|
|
53
|
+
// displayRootAxis: false,
|
|
54
|
+
// showHyperlinkPopup: false,
|
|
55
|
+
// antiAliasing: ANTI_ALIASING.ANALYTIC,
|
|
56
|
+
// vSync: true,
|
|
57
|
+
// zoomStep: 0,
|
|
58
|
+
// scaleRatioLocked: false,
|
|
59
|
+
// theme: THEME.LIGHT,
|
|
60
|
+
// debugRendering: false,
|
|
61
|
+
/**
|
|
62
|
+
* Returns the zoom object with value, scoped, and scaled properties,
|
|
63
|
+
* using importedState, restoredGlobalState, and defaults.
|
|
64
|
+
*/
|
|
65
|
+
export const getZoom = (value, mainScope, scopeExponentThreshold) => {
|
|
66
|
+
const zoomValue = getNormalizedZoom(isFiniteNumber(value)
|
|
67
|
+
? value
|
|
68
|
+
: 1);
|
|
69
|
+
const scope = isValidPrecisionScopeValue(value, mainScope, scopeExponentThreshold);
|
|
70
|
+
const scopedZoom = getScopedZoomValue(value, scope);
|
|
71
|
+
return {
|
|
72
|
+
value: zoomValue,
|
|
73
|
+
scoped: scopedZoom,
|
|
74
|
+
scaled: getScaledZoomValueForScope(scopedZoom, scope),
|
|
75
|
+
};
|
|
76
|
+
};
|
|
77
|
+
export const getDefaultGlobalState = () => {
|
|
78
|
+
return {
|
|
79
|
+
name: null,
|
|
80
|
+
viewBackgroundColor: typeof window !== "undefined" ? (window.matchMedia("(prefers-color-scheme: dark)").matches ? COLOR_PALETTE.night : COLOR_PALETTE.white) : COLOR_PALETTE.white,
|
|
81
|
+
scopeExponentThreshold: 2,
|
|
82
|
+
mainScope: NEUTRAL_SCOPE,
|
|
83
|
+
dashSpacingScale: 1,
|
|
84
|
+
isDashSpacingAffectedByViewportScale: false,
|
|
85
|
+
dimensionsAssociativeByDefault: false,
|
|
86
|
+
useAnnotativeScaling: false,
|
|
87
|
+
displayPrecision: {
|
|
88
|
+
linear: 2,
|
|
89
|
+
angular: 1,
|
|
90
|
+
},
|
|
91
|
+
pruningLevel: PRUNING_LEVEL.BALANCED,
|
|
92
|
+
};
|
|
93
|
+
};
|
|
94
|
+
export const getDefaultLocalState = () => {
|
|
95
|
+
const scrollX = typeof window !== "undefined" ? window.innerWidth / 2 : 0;
|
|
96
|
+
const scrollY = typeof window !== "undefined" ? window.innerHeight / 2 : 0;
|
|
97
|
+
const zoom = getNormalizedZoom(1);
|
|
98
|
+
const scope = NEUTRAL_SCOPE;
|
|
99
|
+
const scopedZoom = getScopedZoomValue(zoom, scope);
|
|
100
|
+
return {
|
|
101
|
+
scope,
|
|
102
|
+
activeStandardId: PREDEFINED_STANDARDS.DUC,
|
|
103
|
+
isBindingEnabled: true,
|
|
104
|
+
scrollX: getPrecisionValueFromRaw(scrollX, NEUTRAL_SCOPE, scope),
|
|
105
|
+
scrollY: getPrecisionValueFromRaw(scrollY, NEUTRAL_SCOPE, scope),
|
|
106
|
+
zoom: {
|
|
107
|
+
value: zoom,
|
|
108
|
+
scoped: scopedZoom,
|
|
109
|
+
scaled: getScaledZoomValueForScope(scopedZoom, scope),
|
|
110
|
+
},
|
|
111
|
+
currentItemBackground: DEFAULT_ELEMENT_PROPS.background,
|
|
112
|
+
currentItemStroke: DEFAULT_ELEMENT_PROPS.stroke,
|
|
113
|
+
currentItemStartLineHead: null,
|
|
114
|
+
currentItemEndLineHead: null,
|
|
115
|
+
currentItemFontFamily: DEFAULT_FONT_FAMILY,
|
|
116
|
+
currentItemTextAlign: TEXT_ALIGN.LEFT,
|
|
117
|
+
currentItemFontSize: getPrecisionValueFromRaw(DEFAULT_FONT_SIZE, scope, scope),
|
|
118
|
+
currentItemOpacity: DEFAULT_ELEMENT_PROPS.opacity,
|
|
119
|
+
currentItemRoundness: getPrecisionValueFromRaw(0, scope, scope),
|
|
120
|
+
activeGridSettings: [],
|
|
121
|
+
activeSnapSettings: "",
|
|
122
|
+
penMode: false,
|
|
123
|
+
viewModeEnabled: false,
|
|
124
|
+
objectsSnapModeEnabled: true,
|
|
125
|
+
gridModeEnabled: false,
|
|
126
|
+
outlineModeEnabled: false,
|
|
127
|
+
manualSaveMode: false,
|
|
128
|
+
gridSize: 10,
|
|
129
|
+
gridStep: 10,
|
|
130
|
+
};
|
|
131
|
+
};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export declare const sanitizeHTMLAttribute: (html: string) => string;
|
|
2
|
+
export declare const normalizeLink: (link: string) => string;
|
|
3
|
+
export declare const isLocalLink: (link: string | null) => boolean;
|
|
4
|
+
/**
|
|
5
|
+
* Returns URL sanitized and safe for usage in places such as
|
|
6
|
+
* iframe's src attribute or <a> href attributes.
|
|
7
|
+
*/
|
|
8
|
+
export declare const toValidURL: (link: string) => string;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { sanitizeUrl } from "@braintree/sanitize-url";
|
|
2
|
+
export const sanitizeHTMLAttribute = (html) => {
|
|
3
|
+
return html.replace(/"/g, """);
|
|
4
|
+
};
|
|
5
|
+
export const normalizeLink = (link) => {
|
|
6
|
+
link = link.trim();
|
|
7
|
+
if (!link) {
|
|
8
|
+
return link;
|
|
9
|
+
}
|
|
10
|
+
return sanitizeUrl(sanitizeHTMLAttribute(link));
|
|
11
|
+
};
|
|
12
|
+
export const isLocalLink = (link) => {
|
|
13
|
+
return !!((link === null || link === void 0 ? void 0 : link.includes(location.origin)) || (link === null || link === void 0 ? void 0 : link.startsWith("/")));
|
|
14
|
+
};
|
|
15
|
+
/**
|
|
16
|
+
* Returns URL sanitized and safe for usage in places such as
|
|
17
|
+
* iframe's src attribute or <a> href attributes.
|
|
18
|
+
*/
|
|
19
|
+
export const toValidURL = (link) => {
|
|
20
|
+
link = normalizeLink(link);
|
|
21
|
+
// make relative links into fully-qualified urls
|
|
22
|
+
if (link.startsWith("/")) {
|
|
23
|
+
return `${location.origin}${link}`;
|
|
24
|
+
}
|
|
25
|
+
try {
|
|
26
|
+
new URL(link);
|
|
27
|
+
}
|
|
28
|
+
catch (_a) {
|
|
29
|
+
// if link does not parse as URL, assume invalid and return blank page
|
|
30
|
+
return "about:blank";
|
|
31
|
+
}
|
|
32
|
+
return link;
|
|
33
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { DUC_SCHEMA_VERSION as DUC_VERSION } from "ducjs/serialize";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { DUC_SCHEMA_VERSION as DUC_VERSION } from "ducjs/serialize";
|