docier-web 0.1.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/COMMERCIAL.md +45 -0
- package/LICENSE +50 -0
- package/LICENSE.AGPL-3.0 +661 -0
- package/README.md +239 -0
- package/dist/api/commands.d.ts +46 -0
- package/dist/api/commands.d.ts.map +1 -0
- package/dist/api/commands.js +274 -0
- package/dist/api/commands.js.map +1 -0
- package/dist/api/config.d.ts +14 -0
- package/dist/api/config.d.ts.map +1 -0
- package/dist/api/config.js +248 -0
- package/dist/api/config.js.map +1 -0
- package/dist/api/constants.d.ts +12 -0
- package/dist/api/constants.d.ts.map +1 -0
- package/dist/api/constants.js +45 -0
- package/dist/api/constants.js.map +1 -0
- package/dist/api/editor.d.ts +43 -0
- package/dist/api/editor.d.ts.map +1 -0
- package/dist/api/editor.js +983 -0
- package/dist/api/editor.js.map +1 -0
- package/dist/api/errors.d.ts +25 -0
- package/dist/api/errors.d.ts.map +1 -0
- package/dist/api/errors.js +106 -0
- package/dist/api/errors.js.map +1 -0
- package/dist/api/events.d.ts +25 -0
- package/dist/api/events.d.ts.map +1 -0
- package/dist/api/events.js +182 -0
- package/dist/api/events.js.map +1 -0
- package/dist/api/history.d.ts +40 -0
- package/dist/api/history.d.ts.map +1 -0
- package/dist/api/history.js +91 -0
- package/dist/api/history.js.map +1 -0
- package/dist/api/index.d.ts +15 -0
- package/dist/api/index.d.ts.map +1 -0
- package/dist/api/index.js +10 -0
- package/dist/api/index.js.map +1 -0
- package/dist/api/localize.d.ts +12 -0
- package/dist/api/localize.d.ts.map +1 -0
- package/dist/api/localize.js +45 -0
- package/dist/api/localize.js.map +1 -0
- package/dist/api/types.d.ts +453 -0
- package/dist/api/types.d.ts.map +1 -0
- package/dist/api/types.js +2 -0
- package/dist/api/types.js.map +1 -0
- package/dist/edit/actions.d.ts +52 -0
- package/dist/edit/actions.d.ts.map +1 -0
- package/dist/edit/actions.js +319 -0
- package/dist/edit/actions.js.map +1 -0
- package/dist/edit/areas/comment.d.ts +20 -0
- package/dist/edit/areas/comment.d.ts.map +1 -0
- package/dist/edit/areas/comment.js +199 -0
- package/dist/edit/areas/comment.js.map +1 -0
- package/dist/edit/areas/content.d.ts +12 -0
- package/dist/edit/areas/content.d.ts.map +1 -0
- package/dist/edit/areas/content.js +78 -0
- package/dist/edit/areas/content.js.map +1 -0
- package/dist/edit/areas/index.d.ts +19 -0
- package/dist/edit/areas/index.d.ts.map +1 -0
- package/dist/edit/areas/index.js +42 -0
- package/dist/edit/areas/index.js.map +1 -0
- package/dist/edit/areas/insert.d.ts +42 -0
- package/dist/edit/areas/insert.d.ts.map +1 -0
- package/dist/edit/areas/insert.js +265 -0
- package/dist/edit/areas/insert.js.map +1 -0
- package/dist/edit/areas/note.d.ts +12 -0
- package/dist/edit/areas/note.d.ts.map +1 -0
- package/dist/edit/areas/note.js +122 -0
- package/dist/edit/areas/note.js.map +1 -0
- package/dist/edit/areas/numbering.d.ts +14 -0
- package/dist/edit/areas/numbering.d.ts.map +1 -0
- package/dist/edit/areas/numbering.js +119 -0
- package/dist/edit/areas/numbering.js.map +1 -0
- package/dist/edit/areas/object.d.ts +24 -0
- package/dist/edit/areas/object.d.ts.map +1 -0
- package/dist/edit/areas/object.js +274 -0
- package/dist/edit/areas/object.js.map +1 -0
- package/dist/edit/areas/page.d.ts +33 -0
- package/dist/edit/areas/page.d.ts.map +1 -0
- package/dist/edit/areas/page.js +170 -0
- package/dist/edit/areas/page.js.map +1 -0
- package/dist/edit/areas/paragraph.d.ts +27 -0
- package/dist/edit/areas/paragraph.d.ts.map +1 -0
- package/dist/edit/areas/paragraph.js +205 -0
- package/dist/edit/areas/paragraph.js.map +1 -0
- package/dist/edit/areas/proof.d.ts +7 -0
- package/dist/edit/areas/proof.d.ts.map +1 -0
- package/dist/edit/areas/proof.js +71 -0
- package/dist/edit/areas/proof.js.map +1 -0
- package/dist/edit/areas/region.d.ts +4 -0
- package/dist/edit/areas/region.d.ts.map +1 -0
- package/dist/edit/areas/region.js +139 -0
- package/dist/edit/areas/region.js.map +1 -0
- package/dist/edit/areas/style.d.ts +7 -0
- package/dist/edit/areas/style.d.ts.map +1 -0
- package/dist/edit/areas/style.js +33 -0
- package/dist/edit/areas/style.js.map +1 -0
- package/dist/edit/areas/support.d.ts +42 -0
- package/dist/edit/areas/support.d.ts.map +1 -0
- package/dist/edit/areas/support.js +102 -0
- package/dist/edit/areas/support.js.map +1 -0
- package/dist/edit/areas/table.d.ts +55 -0
- package/dist/edit/areas/table.d.ts.map +1 -0
- package/dist/edit/areas/table.js +910 -0
- package/dist/edit/areas/table.js.map +1 -0
- package/dist/edit/areas/unsupported.d.ts +5 -0
- package/dist/edit/areas/unsupported.d.ts.map +1 -0
- package/dist/edit/areas/unsupported.js +318 -0
- package/dist/edit/areas/unsupported.js.map +1 -0
- package/dist/edit/caret.d.ts +44 -0
- package/dist/edit/caret.d.ts.map +1 -0
- package/dist/edit/caret.js +136 -0
- package/dist/edit/caret.js.map +1 -0
- package/dist/edit/clipboard/commands.d.ts +29 -0
- package/dist/edit/clipboard/commands.d.ts.map +1 -0
- package/dist/edit/clipboard/commands.js +289 -0
- package/dist/edit/clipboard/commands.js.map +1 -0
- package/dist/edit/clipboard/fragment.d.ts +19 -0
- package/dist/edit/clipboard/fragment.d.ts.map +1 -0
- package/dist/edit/clipboard/fragment.js +365 -0
- package/dist/edit/clipboard/fragment.js.map +1 -0
- package/dist/edit/clipboard/html-export.d.ts +6 -0
- package/dist/edit/clipboard/html-export.d.ts.map +1 -0
- package/dist/edit/clipboard/html-export.js +167 -0
- package/dist/edit/clipboard/html-export.js.map +1 -0
- package/dist/edit/clipboard/html-import.d.ts +16 -0
- package/dist/edit/clipboard/html-import.d.ts.map +1 -0
- package/dist/edit/clipboard/html-import.js +744 -0
- package/dist/edit/clipboard/html-import.js.map +1 -0
- package/dist/edit/clipboard/index.d.ts +15 -0
- package/dist/edit/clipboard/index.d.ts.map +1 -0
- package/dist/edit/clipboard/index.js +9 -0
- package/dist/edit/clipboard/index.js.map +1 -0
- package/dist/edit/clipboard/insert.d.ts +18 -0
- package/dist/edit/clipboard/insert.d.ts.map +1 -0
- package/dist/edit/clipboard/insert.js +282 -0
- package/dist/edit/clipboard/insert.js.map +1 -0
- package/dist/edit/clipboard/text.d.ts +12 -0
- package/dist/edit/clipboard/text.d.ts.map +1 -0
- package/dist/edit/clipboard/text.js +102 -0
- package/dist/edit/clipboard/text.js.map +1 -0
- package/dist/edit/clipboard/transfer.d.ts +16 -0
- package/dist/edit/clipboard/transfer.d.ts.map +1 -0
- package/dist/edit/clipboard/transfer.js +112 -0
- package/dist/edit/clipboard/transfer.js.map +1 -0
- package/dist/edit/clipboard/types.d.ts +62 -0
- package/dist/edit/clipboard/types.d.ts.map +1 -0
- package/dist/edit/clipboard/types.js +40 -0
- package/dist/edit/clipboard/types.js.map +1 -0
- package/dist/edit/commands.d.ts +27 -0
- package/dist/edit/commands.d.ts.map +1 -0
- package/dist/edit/commands.js +641 -0
- package/dist/edit/commands.js.map +1 -0
- package/dist/edit/containers.d.ts +17 -0
- package/dist/edit/containers.d.ts.map +1 -0
- package/dist/edit/containers.js +108 -0
- package/dist/edit/containers.js.map +1 -0
- package/dist/edit/index.d.ts +33 -0
- package/dist/edit/index.d.ts.map +1 -0
- package/dist/edit/index.js +18 -0
- package/dist/edit/index.js.map +1 -0
- package/dist/edit/input.d.ts +53 -0
- package/dist/edit/input.d.ts.map +1 -0
- package/dist/edit/input.js +1035 -0
- package/dist/edit/input.js.map +1 -0
- package/dist/edit/inspect.d.ts +39 -0
- package/dist/edit/inspect.d.ts.map +1 -0
- package/dist/edit/inspect.js +119 -0
- package/dist/edit/inspect.js.map +1 -0
- package/dist/edit/list.d.ts +33 -0
- package/dist/edit/list.d.ts.map +1 -0
- package/dist/edit/list.js +399 -0
- package/dist/edit/list.js.map +1 -0
- package/dist/edit/mutation.d.ts +57 -0
- package/dist/edit/mutation.d.ts.map +1 -0
- package/dist/edit/mutation.js +468 -0
- package/dist/edit/mutation.js.map +1 -0
- package/dist/edit/navigation.d.ts +34 -0
- package/dist/edit/navigation.d.ts.map +1 -0
- package/dist/edit/navigation.js +209 -0
- package/dist/edit/navigation.js.map +1 -0
- package/dist/edit/object-resize.d.ts +56 -0
- package/dist/edit/object-resize.d.ts.map +1 -0
- package/dist/edit/object-resize.js +189 -0
- package/dist/edit/object-resize.js.map +1 -0
- package/dist/edit/objects.d.ts +19 -0
- package/dist/edit/objects.d.ts.map +1 -0
- package/dist/edit/objects.js +58 -0
- package/dist/edit/objects.js.map +1 -0
- package/dist/edit/positions.d.ts +63 -0
- package/dist/edit/positions.d.ts.map +1 -0
- package/dist/edit/positions.js +267 -0
- package/dist/edit/positions.js.map +1 -0
- package/dist/edit/search.d.ts +19 -0
- package/dist/edit/search.d.ts.map +1 -0
- package/dist/edit/search.js +65 -0
- package/dist/edit/search.js.map +1 -0
- package/dist/edit/selection.d.ts +44 -0
- package/dist/edit/selection.d.ts.map +1 -0
- package/dist/edit/selection.js +126 -0
- package/dist/edit/selection.js.map +1 -0
- package/dist/edit/session.d.ts +84 -0
- package/dist/edit/session.d.ts.map +1 -0
- package/dist/edit/session.js +703 -0
- package/dist/edit/session.js.map +1 -0
- package/dist/edit/tables.d.ts +28 -0
- package/dist/edit/tables.d.ts.map +1 -0
- package/dist/edit/tables.js +169 -0
- package/dist/edit/tables.js.map +1 -0
- package/dist/edit/words.d.ts +17 -0
- package/dist/edit/words.d.ts.map +1 -0
- package/dist/edit/words.js +102 -0
- package/dist/edit/words.js.map +1 -0
- package/dist/index.d.ts +14 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +12 -0
- package/dist/index.js.map +1 -0
- package/dist/layout/assembly.d.ts +30 -0
- package/dist/layout/assembly.d.ts.map +1 -0
- package/dist/layout/assembly.js +87 -0
- package/dist/layout/assembly.js.map +1 -0
- package/dist/layout/atoms.d.ts +46 -0
- package/dist/layout/atoms.d.ts.map +1 -0
- package/dist/layout/atoms.js +238 -0
- package/dist/layout/atoms.js.map +1 -0
- package/dist/layout/breaking.d.ts +25 -0
- package/dist/layout/breaking.d.ts.map +1 -0
- package/dist/layout/breaking.js +112 -0
- package/dist/layout/breaking.js.map +1 -0
- package/dist/layout/fields.d.ts +22 -0
- package/dist/layout/fields.d.ts.map +1 -0
- package/dist/layout/fields.js +74 -0
- package/dist/layout/fields.js.map +1 -0
- package/dist/layout/finalize.d.ts +51 -0
- package/dist/layout/finalize.d.ts.map +1 -0
- package/dist/layout/finalize.js +282 -0
- package/dist/layout/finalize.js.map +1 -0
- package/dist/layout/fonts.d.ts +26 -0
- package/dist/layout/fonts.d.ts.map +1 -0
- package/dist/layout/fonts.js +69 -0
- package/dist/layout/fonts.js.map +1 -0
- package/dist/layout/format.d.ts +51 -0
- package/dist/layout/format.d.ts.map +1 -0
- package/dist/layout/format.js +99 -0
- package/dist/layout/format.js.map +1 -0
- package/dist/layout/freeze.d.ts +2 -0
- package/dist/layout/freeze.d.ts.map +1 -0
- package/dist/layout/freeze.js +21 -0
- package/dist/layout/freeze.js.map +1 -0
- package/dist/layout/frozen-map.d.ts +8 -0
- package/dist/layout/frozen-map.d.ts.map +1 -0
- package/dist/layout/frozen-map.js +21 -0
- package/dist/layout/frozen-map.js.map +1 -0
- package/dist/layout/hash.d.ts +7 -0
- package/dist/layout/hash.d.ts.map +1 -0
- package/dist/layout/hash.js +0 -0
- package/dist/layout/hash.js.map +1 -0
- package/dist/layout/header-footer.d.ts +51 -0
- package/dist/layout/header-footer.d.ts.map +1 -0
- package/dist/layout/header-footer.js +115 -0
- package/dist/layout/header-footer.js.map +1 -0
- package/dist/layout/index.d.ts +59 -0
- package/dist/layout/index.d.ts.map +1 -0
- package/dist/layout/index.js +32 -0
- package/dist/layout/index.js.map +1 -0
- package/dist/layout/indices.d.ts +20 -0
- package/dist/layout/indices.d.ts.map +1 -0
- package/dist/layout/indices.js +73 -0
- package/dist/layout/indices.js.map +1 -0
- package/dist/layout/ingest.d.ts +99 -0
- package/dist/layout/ingest.d.ts.map +1 -0
- package/dist/layout/ingest.js +338 -0
- package/dist/layout/ingest.js.map +1 -0
- package/dist/layout/intrinsic.d.ts +20 -0
- package/dist/layout/intrinsic.d.ts.map +1 -0
- package/dist/layout/intrinsic.js +67 -0
- package/dist/layout/intrinsic.js.map +1 -0
- package/dist/layout/justify.d.ts +6 -0
- package/dist/layout/justify.d.ts.map +1 -0
- package/dist/layout/justify.js +49 -0
- package/dist/layout/justify.js.map +1 -0
- package/dist/layout/line-geometry.d.ts +24 -0
- package/dist/layout/line-geometry.d.ts.map +1 -0
- package/dist/layout/line-geometry.js +136 -0
- package/dist/layout/line-geometry.js.map +1 -0
- package/dist/layout/numbering.d.ts +28 -0
- package/dist/layout/numbering.d.ts.map +1 -0
- package/dist/layout/numbering.js +303 -0
- package/dist/layout/numbering.js.map +1 -0
- package/dist/layout/objects.d.ts +7 -0
- package/dist/layout/objects.d.ts.map +1 -0
- package/dist/layout/objects.js +107 -0
- package/dist/layout/objects.js.map +1 -0
- package/dist/layout/page-geometry.d.ts +7 -0
- package/dist/layout/page-geometry.d.ts.map +1 -0
- package/dist/layout/page-geometry.js +17 -0
- package/dist/layout/page-geometry.js.map +1 -0
- package/dist/layout/paginate.d.ts +63 -0
- package/dist/layout/paginate.d.ts.map +1 -0
- package/dist/layout/paginate.js +354 -0
- package/dist/layout/paginate.js.map +1 -0
- package/dist/layout/paint.d.ts +10 -0
- package/dist/layout/paint.d.ts.map +1 -0
- package/dist/layout/paint.js +56 -0
- package/dist/layout/paint.js.map +1 -0
- package/dist/layout/paragraph-blocks.d.ts +36 -0
- package/dist/layout/paragraph-blocks.d.ts.map +1 -0
- package/dist/layout/paragraph-blocks.js +244 -0
- package/dist/layout/paragraph-blocks.js.map +1 -0
- package/dist/layout/pipeline.d.ts +19 -0
- package/dist/layout/pipeline.d.ts.map +1 -0
- package/dist/layout/pipeline.js +620 -0
- package/dist/layout/pipeline.js.map +1 -0
- package/dist/layout/sections.d.ts +29 -0
- package/dist/layout/sections.d.ts.map +1 -0
- package/dist/layout/sections.js +109 -0
- package/dist/layout/sections.js.map +1 -0
- package/dist/layout/table-borders.d.ts +28 -0
- package/dist/layout/table-borders.d.ts.map +1 -0
- package/dist/layout/table-borders.js +116 -0
- package/dist/layout/table-borders.js.map +1 -0
- package/dist/layout/table-columns.d.ts +33 -0
- package/dist/layout/table-columns.d.ts.map +1 -0
- package/dist/layout/table-columns.js +265 -0
- package/dist/layout/table-columns.js.map +1 -0
- package/dist/layout/table-flow.d.ts +51 -0
- package/dist/layout/table-flow.d.ts.map +1 -0
- package/dist/layout/table-flow.js +343 -0
- package/dist/layout/table-flow.js.map +1 -0
- package/dist/layout/table-ingest.d.ts +90 -0
- package/dist/layout/table-ingest.d.ts.map +1 -0
- package/dist/layout/table-ingest.js +272 -0
- package/dist/layout/table-ingest.js.map +1 -0
- package/dist/layout/table-prepare.d.ts +111 -0
- package/dist/layout/table-prepare.d.ts.map +1 -0
- package/dist/layout/table-prepare.js +485 -0
- package/dist/layout/table-prepare.js.map +1 -0
- package/dist/layout/types.d.ts +250 -0
- package/dist/layout/types.d.ts.map +1 -0
- package/dist/layout/types.js +4 -0
- package/dist/layout/types.js.map +1 -0
- package/dist/measure/deterministic.d.ts +19 -0
- package/dist/measure/deterministic.d.ts.map +1 -0
- package/dist/measure/deterministic.js +124 -0
- package/dist/measure/deterministic.js.map +1 -0
- package/dist/measure/font.d.ts +15 -0
- package/dist/measure/font.d.ts.map +1 -0
- package/dist/measure/font.js +120 -0
- package/dist/measure/font.js.map +1 -0
- package/dist/measure/index.d.ts +9 -0
- package/dist/measure/index.d.ts.map +1 -0
- package/dist/measure/index.js +5 -0
- package/dist/measure/index.js.map +1 -0
- package/dist/measure/measurer.d.ts +25 -0
- package/dist/measure/measurer.d.ts.map +1 -0
- package/dist/measure/measurer.js +50 -0
- package/dist/measure/measurer.js.map +1 -0
- package/dist/measure/metrics.d.ts +42 -0
- package/dist/measure/metrics.d.ts.map +1 -0
- package/dist/measure/metrics.js +48 -0
- package/dist/measure/metrics.js.map +1 -0
- package/dist/model/blocks/block-node.d.ts +25 -0
- package/dist/model/blocks/block-node.d.ts.map +1 -0
- package/dist/model/blocks/block-node.js +42 -0
- package/dist/model/blocks/block-node.js.map +1 -0
- package/dist/model/blocks/content-control.d.ts +77 -0
- package/dist/model/blocks/content-control.d.ts.map +1 -0
- package/dist/model/blocks/content-control.js +433 -0
- package/dist/model/blocks/content-control.js.map +1 -0
- package/dist/model/blocks/index.d.ts +9 -0
- package/dist/model/blocks/index.d.ts.map +1 -0
- package/dist/model/blocks/index.js +5 -0
- package/dist/model/blocks/index.js.map +1 -0
- package/dist/model/blocks/paragraph.d.ts +48 -0
- package/dist/model/blocks/paragraph.d.ts.map +1 -0
- package/dist/model/blocks/paragraph.js +217 -0
- package/dist/model/blocks/paragraph.js.map +1 -0
- package/dist/model/blocks/table.d.ts +86 -0
- package/dist/model/blocks/table.d.ts.map +1 -0
- package/dist/model/blocks/table.js +414 -0
- package/dist/model/blocks/table.js.map +1 -0
- package/dist/model/context.d.ts +15 -0
- package/dist/model/context.d.ts.map +1 -0
- package/dist/model/context.js +26 -0
- package/dist/model/context.js.map +1 -0
- package/dist/model/diagnostics.d.ts +26 -0
- package/dist/model/diagnostics.d.ts.map +1 -0
- package/dist/model/diagnostics.js +28 -0
- package/dist/model/diagnostics.js.map +1 -0
- package/dist/model/document.d.ts +81 -0
- package/dist/model/document.d.ts.map +1 -0
- package/dist/model/document.js +453 -0
- package/dist/model/document.js.map +1 -0
- package/dist/model/ids.d.ts +11 -0
- package/dist/model/ids.d.ts.map +1 -0
- package/dist/model/ids.js +16 -0
- package/dist/model/ids.js.map +1 -0
- package/dist/model/index.d.ts +22 -0
- package/dist/model/index.d.ts.map +1 -0
- package/dist/model/index.js +15 -0
- package/dist/model/index.js.map +1 -0
- package/dist/model/inline/alternate-content.d.ts +51 -0
- package/dist/model/inline/alternate-content.d.ts.map +1 -0
- package/dist/model/inline/alternate-content.js +73 -0
- package/dist/model/inline/alternate-content.js.map +1 -0
- package/dist/model/inline/annotation.d.ts +16 -0
- package/dist/model/inline/annotation.d.ts.map +1 -0
- package/dist/model/inline/annotation.js +47 -0
- package/dist/model/inline/annotation.js.map +1 -0
- package/dist/model/inline/field.d.ts +34 -0
- package/dist/model/inline/field.d.ts.map +1 -0
- package/dist/model/inline/field.js +150 -0
- package/dist/model/inline/field.js.map +1 -0
- package/dist/model/inline/index.d.ts +11 -0
- package/dist/model/inline/index.d.ts.map +1 -0
- package/dist/model/inline/index.js +6 -0
- package/dist/model/inline/index.js.map +1 -0
- package/dist/model/inline/nodes.d.ts +147 -0
- package/dist/model/inline/nodes.d.ts.map +1 -0
- package/dist/model/inline/nodes.js +492 -0
- package/dist/model/inline/nodes.js.map +1 -0
- package/dist/model/inline/run-content.d.ts +114 -0
- package/dist/model/inline/run-content.d.ts.map +1 -0
- package/dist/model/inline/run-content.js +368 -0
- package/dist/model/inline/run-content.js.map +1 -0
- package/dist/model/numbering/abstract-numbering.d.ts +24 -0
- package/dist/model/numbering/abstract-numbering.d.ts.map +1 -0
- package/dist/model/numbering/abstract-numbering.js +66 -0
- package/dist/model/numbering/abstract-numbering.js.map +1 -0
- package/dist/model/numbering/index.d.ts +7 -0
- package/dist/model/numbering/index.d.ts.map +1 -0
- package/dist/model/numbering/index.js +5 -0
- package/dist/model/numbering/index.js.map +1 -0
- package/dist/model/numbering/instance.d.ts +38 -0
- package/dist/model/numbering/instance.d.ts.map +1 -0
- package/dist/model/numbering/instance.js +86 -0
- package/dist/model/numbering/instance.js.map +1 -0
- package/dist/model/numbering/level.d.ts +44 -0
- package/dist/model/numbering/level.d.ts.map +1 -0
- package/dist/model/numbering/level.js +115 -0
- package/dist/model/numbering/level.js.map +1 -0
- package/dist/model/numbering/numbering-part.d.ts +32 -0
- package/dist/model/numbering/numbering-part.d.ts.map +1 -0
- package/dist/model/numbering/numbering-part.js +157 -0
- package/dist/model/numbering/numbering-part.js.map +1 -0
- package/dist/model/properties/common.d.ts +142 -0
- package/dist/model/properties/common.d.ts.map +1 -0
- package/dist/model/properties/common.js +377 -0
- package/dist/model/properties/common.js.map +1 -0
- package/dist/model/properties/index.d.ts +14 -0
- package/dist/model/properties/index.d.ts.map +1 -0
- package/dist/model/properties/index.js +8 -0
- package/dist/model/properties/index.js.map +1 -0
- package/dist/model/properties/paragraph-properties.d.ts +113 -0
- package/dist/model/properties/paragraph-properties.d.ts.map +1 -0
- package/dist/model/properties/paragraph-properties.js +331 -0
- package/dist/model/properties/paragraph-properties.js.map +1 -0
- package/dist/model/properties/property-keys.d.ts +18 -0
- package/dist/model/properties/property-keys.d.ts.map +1 -0
- package/dist/model/properties/property-keys.js +166 -0
- package/dist/model/properties/property-keys.js.map +1 -0
- package/dist/model/properties/property.d.ts +37 -0
- package/dist/model/properties/property.d.ts.map +1 -0
- package/dist/model/properties/property.js +132 -0
- package/dist/model/properties/property.js.map +1 -0
- package/dist/model/properties/run-properties.d.ts +74 -0
- package/dist/model/properties/run-properties.d.ts.map +1 -0
- package/dist/model/properties/run-properties.js +208 -0
- package/dist/model/properties/run-properties.js.map +1 -0
- package/dist/model/properties/section-properties.d.ts +82 -0
- package/dist/model/properties/section-properties.d.ts.map +1 -0
- package/dist/model/properties/section-properties.js +250 -0
- package/dist/model/properties/section-properties.js.map +1 -0
- package/dist/model/properties/table-properties.d.ts +105 -0
- package/dist/model/properties/table-properties.d.ts.map +1 -0
- package/dist/model/properties/table-properties.js +301 -0
- package/dist/model/properties/table-properties.js.map +1 -0
- package/dist/model/schema-order.d.ts +15 -0
- package/dist/model/schema-order.d.ts.map +1 -0
- package/dist/model/schema-order.js +526 -0
- package/dist/model/schema-order.js.map +1 -0
- package/dist/model/settings.d.ts +46 -0
- package/dist/model/settings.d.ts.map +1 -0
- package/dist/model/settings.js +159 -0
- package/dist/model/settings.js.map +1 -0
- package/dist/model/story.d.ts +61 -0
- package/dist/model/story.d.ts.map +1 -0
- package/dist/model/story.js +159 -0
- package/dist/model/story.js.map +1 -0
- package/dist/model/styles/cascade.d.ts +120 -0
- package/dist/model/styles/cascade.d.ts.map +1 -0
- package/dist/model/styles/cascade.js +636 -0
- package/dist/model/styles/cascade.js.map +1 -0
- package/dist/model/styles/index.d.ts +9 -0
- package/dist/model/styles/index.d.ts.map +1 -0
- package/dist/model/styles/index.js +5 -0
- package/dist/model/styles/index.js.map +1 -0
- package/dist/model/styles/resolved.d.ts +112 -0
- package/dist/model/styles/resolved.d.ts.map +1 -0
- package/dist/model/styles/resolved.js +360 -0
- package/dist/model/styles/resolved.js.map +1 -0
- package/dist/model/styles/style.d.ts +67 -0
- package/dist/model/styles/style.d.ts.map +1 -0
- package/dist/model/styles/style.js +281 -0
- package/dist/model/styles/style.js.map +1 -0
- package/dist/model/styles/styles-part.d.ts +53 -0
- package/dist/model/styles/styles-part.d.ts.map +1 -0
- package/dist/model/styles/styles-part.js +263 -0
- package/dist/model/styles/styles-part.js.map +1 -0
- package/dist/model/view.d.ts +18 -0
- package/dist/model/view.d.ts.map +1 -0
- package/dist/model/view.js +38 -0
- package/dist/model/view.js.map +1 -0
- package/dist/model/xml.d.ts +23 -0
- package/dist/model/xml.d.ts.map +1 -0
- package/dist/model/xml.js +87 -0
- package/dist/model/xml.js.map +1 -0
- package/dist/ooxml/bytes.d.ts +15 -0
- package/dist/ooxml/bytes.d.ts.map +1 -0
- package/dist/ooxml/bytes.js +92 -0
- package/dist/ooxml/bytes.js.map +1 -0
- package/dist/ooxml/content-types.d.ts +66 -0
- package/dist/ooxml/content-types.d.ts.map +1 -0
- package/dist/ooxml/content-types.js +328 -0
- package/dist/ooxml/content-types.js.map +1 -0
- package/dist/ooxml/drawing.d.ts +35 -0
- package/dist/ooxml/drawing.d.ts.map +1 -0
- package/dist/ooxml/drawing.js +245 -0
- package/dist/ooxml/drawing.js.map +1 -0
- package/dist/ooxml/errors.d.ts +21 -0
- package/dist/ooxml/errors.d.ts.map +1 -0
- package/dist/ooxml/errors.js +21 -0
- package/dist/ooxml/errors.js.map +1 -0
- package/dist/ooxml/index.d.ts +22 -0
- package/dist/ooxml/index.d.ts.map +1 -0
- package/dist/ooxml/index.js +14 -0
- package/dist/ooxml/index.js.map +1 -0
- package/dist/ooxml/namespaces.d.ts +88 -0
- package/dist/ooxml/namespaces.d.ts.map +1 -0
- package/dist/ooxml/namespaces.js +165 -0
- package/dist/ooxml/namespaces.js.map +1 -0
- package/dist/ooxml/package.d.ts +117 -0
- package/dist/ooxml/package.d.ts.map +1 -0
- package/dist/ooxml/package.js +830 -0
- package/dist/ooxml/package.js.map +1 -0
- package/dist/ooxml/part-kinds.d.ts +41 -0
- package/dist/ooxml/part-kinds.d.ts.map +1 -0
- package/dist/ooxml/part-kinds.js +540 -0
- package/dist/ooxml/part-kinds.js.map +1 -0
- package/dist/ooxml/part.d.ts +68 -0
- package/dist/ooxml/part.d.ts.map +1 -0
- package/dist/ooxml/part.js +180 -0
- package/dist/ooxml/part.js.map +1 -0
- package/dist/ooxml/relationships.d.ts +91 -0
- package/dist/ooxml/relationships.d.ts.map +1 -0
- package/dist/ooxml/relationships.js +471 -0
- package/dist/ooxml/relationships.js.map +1 -0
- package/dist/ooxml/sha256.d.ts +6 -0
- package/dist/ooxml/sha256.d.ts.map +1 -0
- package/dist/ooxml/sha256.js +107 -0
- package/dist/ooxml/sha256.js.map +1 -0
- package/dist/ooxml/xml/index.d.ts +8 -0
- package/dist/ooxml/xml/index.d.ts.map +1 -0
- package/dist/ooxml/xml/index.js +6 -0
- package/dist/ooxml/xml/index.js.map +1 -0
- package/dist/ooxml/xml/io.d.ts +15 -0
- package/dist/ooxml/xml/io.d.ts.map +1 -0
- package/dist/ooxml/xml/io.js +122 -0
- package/dist/ooxml/xml/io.js.map +1 -0
- package/dist/ooxml/xml/nodes.d.ts +97 -0
- package/dist/ooxml/xml/nodes.d.ts.map +1 -0
- package/dist/ooxml/xml/nodes.js +109 -0
- package/dist/ooxml/xml/nodes.js.map +1 -0
- package/dist/ooxml/xml/parse.d.ts +7 -0
- package/dist/ooxml/xml/parse.d.ts.map +1 -0
- package/dist/ooxml/xml/parse.js +529 -0
- package/dist/ooxml/xml/parse.js.map +1 -0
- package/dist/ooxml/xml/serialize.d.ts +11 -0
- package/dist/ooxml/xml/serialize.d.ts.map +1 -0
- package/dist/ooxml/xml/serialize.js +94 -0
- package/dist/ooxml/xml/serialize.js.map +1 -0
- package/dist/ooxml/xml/tree.d.ts +10 -0
- package/dist/ooxml/xml/tree.d.ts.map +1 -0
- package/dist/ooxml/xml/tree.js +67 -0
- package/dist/ooxml/xml/tree.js.map +1 -0
- package/dist/ooxml/zip/crc32.d.ts +2 -0
- package/dist/ooxml/zip/crc32.d.ts.map +1 -0
- package/dist/ooxml/zip/crc32.js +20 -0
- package/dist/ooxml/zip/crc32.js.map +1 -0
- package/dist/ooxml/zip/deflate.d.ts +23 -0
- package/dist/ooxml/zip/deflate.d.ts.map +1 -0
- package/dist/ooxml/zip/deflate.js +172 -0
- package/dist/ooxml/zip/deflate.js.map +1 -0
- package/dist/ooxml/zip/index.d.ts +10 -0
- package/dist/ooxml/zip/index.d.ts.map +1 -0
- package/dist/ooxml/zip/index.js +6 -0
- package/dist/ooxml/zip/index.js.map +1 -0
- package/dist/ooxml/zip/read.d.ts +17 -0
- package/dist/ooxml/zip/read.d.ts.map +1 -0
- package/dist/ooxml/zip/read.js +345 -0
- package/dist/ooxml/zip/read.js.map +1 -0
- package/dist/ooxml/zip/types.d.ts +66 -0
- package/dist/ooxml/zip/types.d.ts.map +1 -0
- package/dist/ooxml/zip/types.js +26 -0
- package/dist/ooxml/zip/types.js.map +1 -0
- package/dist/ooxml/zip/write.d.ts +17 -0
- package/dist/ooxml/zip/write.d.ts.map +1 -0
- package/dist/ooxml/zip/write.js +175 -0
- package/dist/ooxml/zip/write.js.map +1 -0
- package/dist/pdf/abort.d.ts +2 -0
- package/dist/pdf/abort.d.ts.map +1 -0
- package/dist/pdf/abort.js +7 -0
- package/dist/pdf/abort.js.map +1 -0
- package/dist/pdf/bytes.d.ts +7 -0
- package/dist/pdf/bytes.d.ts.map +1 -0
- package/dist/pdf/bytes.js +54 -0
- package/dist/pdf/bytes.js.map +1 -0
- package/dist/pdf/color.d.ts +7 -0
- package/dist/pdf/color.d.ts.map +1 -0
- package/dist/pdf/color.js +25 -0
- package/dist/pdf/color.js.map +1 -0
- package/dist/pdf/content.d.ts +37 -0
- package/dist/pdf/content.d.ts.map +1 -0
- package/dist/pdf/content.js +129 -0
- package/dist/pdf/content.js.map +1 -0
- package/dist/pdf/decoration.d.ts +10 -0
- package/dist/pdf/decoration.d.ts.map +1 -0
- package/dist/pdf/decoration.js +60 -0
- package/dist/pdf/decoration.js.map +1 -0
- package/dist/pdf/document.d.ts +4 -0
- package/dist/pdf/document.d.ts.map +1 -0
- package/dist/pdf/document.js +158 -0
- package/dist/pdf/document.js.map +1 -0
- package/dist/pdf/errors.d.ts +13 -0
- package/dist/pdf/errors.d.ts.map +1 -0
- package/dist/pdf/errors.js +13 -0
- package/dist/pdf/errors.js.map +1 -0
- package/dist/pdf/fonts/advance.d.ts +35 -0
- package/dist/pdf/fonts/advance.d.ts.map +1 -0
- package/dist/pdf/fonts/advance.js +157 -0
- package/dist/pdf/fonts/advance.js.map +1 -0
- package/dist/pdf/fonts/embed.d.ts +32 -0
- package/dist/pdf/fonts/embed.d.ts.map +1 -0
- package/dist/pdf/fonts/embed.js +183 -0
- package/dist/pdf/fonts/embed.js.map +1 -0
- package/dist/pdf/fonts/registry.d.ts +47 -0
- package/dist/pdf/fonts/registry.d.ts.map +1 -0
- package/dist/pdf/fonts/registry.js +222 -0
- package/dist/pdf/fonts/registry.js.map +1 -0
- package/dist/pdf/fonts/sfnt.d.ts +83 -0
- package/dist/pdf/fonts/sfnt.d.ts.map +1 -0
- package/dist/pdf/fonts/sfnt.js +363 -0
- package/dist/pdf/fonts/sfnt.js.map +1 -0
- package/dist/pdf/fonts/subset.d.ts +8 -0
- package/dist/pdf/fonts/subset.d.ts.map +1 -0
- package/dist/pdf/fonts/subset.js +101 -0
- package/dist/pdf/fonts/subset.js.map +1 -0
- package/dist/pdf/fonts/table-builder.d.ts +8 -0
- package/dist/pdf/fonts/table-builder.d.ts.map +1 -0
- package/dist/pdf/fonts/table-builder.js +90 -0
- package/dist/pdf/fonts/table-builder.js.map +1 -0
- package/dist/pdf/geometry.d.ts +24 -0
- package/dist/pdf/geometry.d.ts.map +1 -0
- package/dist/pdf/geometry.js +26 -0
- package/dist/pdf/geometry.js.map +1 -0
- package/dist/pdf/images/embed.d.ts +10 -0
- package/dist/pdf/images/embed.d.ts.map +1 -0
- package/dist/pdf/images/embed.js +80 -0
- package/dist/pdf/images/embed.js.map +1 -0
- package/dist/pdf/images/jpeg.d.ts +18 -0
- package/dist/pdf/images/jpeg.d.ts.map +1 -0
- package/dist/pdf/images/jpeg.js +65 -0
- package/dist/pdf/images/jpeg.js.map +1 -0
- package/dist/pdf/images/png.d.ts +13 -0
- package/dist/pdf/images/png.d.ts.map +1 -0
- package/dist/pdf/images/png.js +213 -0
- package/dist/pdf/images/png.js.map +1 -0
- package/dist/pdf/images/registry.d.ts +22 -0
- package/dist/pdf/images/registry.d.ts.map +1 -0
- package/dist/pdf/images/registry.js +94 -0
- package/dist/pdf/images/registry.js.map +1 -0
- package/dist/pdf/index.d.ts +10 -0
- package/dist/pdf/index.d.ts.map +1 -0
- package/dist/pdf/index.js +11 -0
- package/dist/pdf/index.js.map +1 -0
- package/dist/pdf/metadata.d.ts +21 -0
- package/dist/pdf/metadata.d.ts.map +1 -0
- package/dist/pdf/metadata.js +65 -0
- package/dist/pdf/metadata.js.map +1 -0
- package/dist/pdf/objects.d.ts +46 -0
- package/dist/pdf/objects.d.ts.map +1 -0
- package/dist/pdf/objects.js +174 -0
- package/dist/pdf/objects.js.map +1 -0
- package/dist/pdf/options.d.ts +9 -0
- package/dist/pdf/options.d.ts.map +1 -0
- package/dist/pdf/options.js +84 -0
- package/dist/pdf/options.js.map +1 -0
- package/dist/pdf/page.d.ts +21 -0
- package/dist/pdf/page.d.ts.map +1 -0
- package/dist/pdf/page.js +228 -0
- package/dist/pdf/page.js.map +1 -0
- package/dist/pdf/pdfa.d.ts +6 -0
- package/dist/pdf/pdfa.d.ts.map +1 -0
- package/dist/pdf/pdfa.js +139 -0
- package/dist/pdf/pdfa.js.map +1 -0
- package/dist/pdf/runs.d.ts +25 -0
- package/dist/pdf/runs.d.ts.map +1 -0
- package/dist/pdf/runs.js +122 -0
- package/dist/pdf/runs.js.map +1 -0
- package/dist/pdf/selection.d.ts +4 -0
- package/dist/pdf/selection.d.ts.map +1 -0
- package/dist/pdf/selection.js +31 -0
- package/dist/pdf/selection.js.map +1 -0
- package/dist/pdf/stream.d.ts +13 -0
- package/dist/pdf/stream.d.ts.map +1 -0
- package/dist/pdf/stream.js +61 -0
- package/dist/pdf/stream.js.map +1 -0
- package/dist/pdf/types.d.ts +111 -0
- package/dist/pdf/types.d.ts.map +1 -0
- package/dist/pdf/types.js +2 -0
- package/dist/pdf/types.js.map +1 -0
- package/dist/pdf/xmp.d.ts +11 -0
- package/dist/pdf/xmp.d.ts.map +1 -0
- package/dist/pdf/xmp.js +53 -0
- package/dist/pdf/xmp.js.map +1 -0
- package/dist/render/color.d.ts +6 -0
- package/dist/render/color.d.ts.map +1 -0
- package/dist/render/color.js +49 -0
- package/dist/render/color.js.map +1 -0
- package/dist/render/decoration.d.ts +18 -0
- package/dist/render/decoration.d.ts.map +1 -0
- package/dist/render/decoration.js +120 -0
- package/dist/render/decoration.js.map +1 -0
- package/dist/render/divergence.d.ts +78 -0
- package/dist/render/divergence.d.ts.map +1 -0
- package/dist/render/divergence.js +680 -0
- package/dist/render/divergence.js.map +1 -0
- package/dist/render/document.d.ts +6 -0
- package/dist/render/document.d.ts.map +1 -0
- package/dist/render/document.js +204 -0
- package/dist/render/document.js.map +1 -0
- package/dist/render/dom.d.ts +56 -0
- package/dist/render/dom.d.ts.map +1 -0
- package/dist/render/dom.js +62 -0
- package/dist/render/dom.js.map +1 -0
- package/dist/render/images.d.ts +26 -0
- package/dist/render/images.d.ts.map +1 -0
- package/dist/render/images.js +79 -0
- package/dist/render/images.js.map +1 -0
- package/dist/render/index.d.ts +29 -0
- package/dist/render/index.d.ts.map +1 -0
- package/dist/render/index.js +17 -0
- package/dist/render/index.js.map +1 -0
- package/dist/render/inline-object.d.ts +13 -0
- package/dist/render/inline-object.d.ts.map +1 -0
- package/dist/render/inline-object.js +19 -0
- package/dist/render/inline-object.js.map +1 -0
- package/dist/render/objects.d.ts +20 -0
- package/dist/render/objects.d.ts.map +1 -0
- package/dist/render/objects.js +85 -0
- package/dist/render/objects.js.map +1 -0
- package/dist/render/page-range.d.ts +11 -0
- package/dist/render/page-range.d.ts.map +1 -0
- package/dist/render/page-range.js +64 -0
- package/dist/render/page-range.js.map +1 -0
- package/dist/render/pages.d.ts +21 -0
- package/dist/render/pages.d.ts.map +1 -0
- package/dist/render/pages.js +200 -0
- package/dist/render/pages.js.map +1 -0
- package/dist/render/print-style.d.ts +27 -0
- package/dist/render/print-style.d.ts.map +1 -0
- package/dist/render/print-style.js +106 -0
- package/dist/render/print-style.js.map +1 -0
- package/dist/render/print.d.ts +57 -0
- package/dist/render/print.d.ts.map +1 -0
- package/dist/render/print.js +189 -0
- package/dist/render/print.js.map +1 -0
- package/dist/render/registry.d.ts +38 -0
- package/dist/render/registry.d.ts.map +1 -0
- package/dist/render/registry.js +120 -0
- package/dist/render/registry.js.map +1 -0
- package/dist/render/runs.d.ts +23 -0
- package/dist/render/runs.d.ts.map +1 -0
- package/dist/render/runs.js +99 -0
- package/dist/render/runs.js.map +1 -0
- package/dist/render/scale.d.ts +13 -0
- package/dist/render/scale.d.ts.map +1 -0
- package/dist/render/scale.js +20 -0
- package/dist/render/scale.js.map +1 -0
- package/dist/render/style.d.ts +21 -0
- package/dist/render/style.d.ts.map +1 -0
- package/dist/render/style.js +127 -0
- package/dist/render/style.js.map +1 -0
- package/dist/render/types.d.ts +124 -0
- package/dist/render/types.d.ts.map +1 -0
- package/dist/render/types.js +5 -0
- package/dist/render/types.js.map +1 -0
- package/dist/sfnt/sfnt.d.ts +87 -0
- package/dist/sfnt/sfnt.d.ts.map +1 -0
- package/dist/sfnt/sfnt.js +367 -0
- package/dist/sfnt/sfnt.js.map +1 -0
- package/dist/style.css +128 -0
- package/dist/tokens/binding.d.ts +31 -0
- package/dist/tokens/binding.d.ts.map +1 -0
- package/dist/tokens/binding.js +151 -0
- package/dist/tokens/binding.js.map +1 -0
- package/dist/tokens/catalogue.d.ts +53 -0
- package/dist/tokens/catalogue.d.ts.map +1 -0
- package/dist/tokens/catalogue.js +209 -0
- package/dist/tokens/catalogue.js.map +1 -0
- package/dist/tokens/display.d.ts +30 -0
- package/dist/tokens/display.d.ts.map +1 -0
- package/dist/tokens/display.js +59 -0
- package/dist/tokens/display.js.map +1 -0
- package/dist/tokens/engine.d.ts +49 -0
- package/dist/tokens/engine.d.ts.map +1 -0
- package/dist/tokens/engine.js +166 -0
- package/dist/tokens/engine.js.map +1 -0
- package/dist/tokens/events.d.ts +83 -0
- package/dist/tokens/events.d.ts.map +1 -0
- package/dist/tokens/events.js +2 -0
- package/dist/tokens/events.js.map +1 -0
- package/dist/tokens/fill.d.ts +29 -0
- package/dist/tokens/fill.d.ts.map +1 -0
- package/dist/tokens/fill.js +129 -0
- package/dist/tokens/fill.js.map +1 -0
- package/dist/tokens/format.d.ts +16 -0
- package/dist/tokens/format.d.ts.map +1 -0
- package/dist/tokens/format.js +141 -0
- package/dist/tokens/format.js.map +1 -0
- package/dist/tokens/headless.d.ts +31 -0
- package/dist/tokens/headless.d.ts.map +1 -0
- package/dist/tokens/headless.js +143 -0
- package/dist/tokens/headless.js.map +1 -0
- package/dist/tokens/images.d.ts +28 -0
- package/dist/tokens/images.d.ts.map +1 -0
- package/dist/tokens/images.js +184 -0
- package/dist/tokens/images.js.map +1 -0
- package/dist/tokens/index.d.ts +34 -0
- package/dist/tokens/index.d.ts.map +1 -0
- package/dist/tokens/index.js +17 -0
- package/dist/tokens/index.js.map +1 -0
- package/dist/tokens/insert.d.ts +22 -0
- package/dist/tokens/insert.d.ts.map +1 -0
- package/dist/tokens/insert.js +113 -0
- package/dist/tokens/insert.js.map +1 -0
- package/dist/tokens/issues.d.ts +37 -0
- package/dist/tokens/issues.d.ts.map +1 -0
- package/dist/tokens/issues.js +149 -0
- package/dist/tokens/issues.js.map +1 -0
- package/dist/tokens/keys.d.ts +49 -0
- package/dist/tokens/keys.d.ts.map +1 -0
- package/dist/tokens/keys.js +107 -0
- package/dist/tokens/keys.js.map +1 -0
- package/dist/tokens/module.d.ts +103 -0
- package/dist/tokens/module.d.ts.map +1 -0
- package/dist/tokens/module.js +861 -0
- package/dist/tokens/module.js.map +1 -0
- package/dist/tokens/types.d.ts +257 -0
- package/dist/tokens/types.d.ts.map +1 -0
- package/dist/tokens/types.js +2 -0
- package/dist/tokens/types.js.map +1 -0
- package/dist/tokens/unlink.d.ts +11 -0
- package/dist/tokens/unlink.d.ts.map +1 -0
- package/dist/tokens/unlink.js +49 -0
- package/dist/tokens/unlink.js.map +1 -0
- package/dist/tokens/validation.d.ts +10 -0
- package/dist/tokens/validation.d.ts.map +1 -0
- package/dist/tokens/validation.js +156 -0
- package/dist/tokens/validation.js.map +1 -0
- package/dist/tokens/values.d.ts +24 -0
- package/dist/tokens/values.d.ts.map +1 -0
- package/dist/tokens/values.js +211 -0
- package/dist/tokens/values.js.map +1 -0
- package/dist/tokens/write.d.ts +14 -0
- package/dist/tokens/write.d.ts.map +1 -0
- package/dist/tokens/write.js +167 -0
- package/dist/tokens/write.js.map +1 -0
- package/dist/ui/chrome.d.ts +49 -0
- package/dist/ui/chrome.d.ts.map +1 -0
- package/dist/ui/chrome.js +795 -0
- package/dist/ui/chrome.js.map +1 -0
- package/dist/ui/colour-picker.d.ts +57 -0
- package/dist/ui/colour-picker.d.ts.map +1 -0
- package/dist/ui/colour-picker.js +491 -0
- package/dist/ui/colour-picker.js.map +1 -0
- package/dist/ui/comments-panel.d.ts +17 -0
- package/dist/ui/comments-panel.d.ts.map +1 -0
- package/dist/ui/comments-panel.js +122 -0
- package/dist/ui/comments-panel.js.map +1 -0
- package/dist/ui/context-menu.d.ts +21 -0
- package/dist/ui/context-menu.d.ts.map +1 -0
- package/dist/ui/context-menu.js +121 -0
- package/dist/ui/context-menu.js.map +1 -0
- package/dist/ui/controls.d.ts +30 -0
- package/dist/ui/controls.d.ts.map +1 -0
- package/dist/ui/controls.js +363 -0
- package/dist/ui/controls.js.map +1 -0
- package/dist/ui/dialog.d.ts +132 -0
- package/dist/ui/dialog.d.ts.map +1 -0
- package/dist/ui/dialog.js +712 -0
- package/dist/ui/dialog.js.map +1 -0
- package/dist/ui/dom.d.ts +25 -0
- package/dist/ui/dom.d.ts.map +1 -0
- package/dist/ui/dom.js +90 -0
- package/dist/ui/dom.js.map +1 -0
- package/dist/ui/floating-toolbar.d.ts +26 -0
- package/dist/ui/floating-toolbar.d.ts.map +1 -0
- package/dist/ui/floating-toolbar.js +189 -0
- package/dist/ui/floating-toolbar.js.map +1 -0
- package/dist/ui/font-dialog.d.ts +56 -0
- package/dist/ui/font-dialog.d.ts.map +1 -0
- package/dist/ui/font-dialog.js +341 -0
- package/dist/ui/font-dialog.js.map +1 -0
- package/dist/ui/i18n.d.ts +18 -0
- package/dist/ui/i18n.d.ts.map +1 -0
- package/dist/ui/i18n.js +370 -0
- package/dist/ui/i18n.js.map +1 -0
- package/dist/ui/icons.d.ts +4 -0
- package/dist/ui/icons.d.ts.map +1 -0
- package/dist/ui/icons.js +150 -0
- package/dist/ui/icons.js.map +1 -0
- package/dist/ui/image-picker.d.ts +35 -0
- package/dist/ui/image-picker.d.ts.map +1 -0
- package/dist/ui/image-picker.js +133 -0
- package/dist/ui/image-picker.js.map +1 -0
- package/dist/ui/index.d.ts +37 -0
- package/dist/ui/index.d.ts.map +1 -0
- package/dist/ui/index.js +20 -0
- package/dist/ui/index.js.map +1 -0
- package/dist/ui/insert-dialogs.d.ts +39 -0
- package/dist/ui/insert-dialogs.d.ts.map +1 -0
- package/dist/ui/insert-dialogs.js +281 -0
- package/dist/ui/insert-dialogs.js.map +1 -0
- package/dist/ui/keyboard.d.ts +22 -0
- package/dist/ui/keyboard.d.ts.map +1 -0
- package/dist/ui/keyboard.js +128 -0
- package/dist/ui/keyboard.js.map +1 -0
- package/dist/ui/menu-bar.d.ts +22 -0
- package/dist/ui/menu-bar.d.ts.map +1 -0
- package/dist/ui/menu-bar.js +326 -0
- package/dist/ui/menu-bar.js.map +1 -0
- package/dist/ui/menu-model.d.ts +46 -0
- package/dist/ui/menu-model.d.ts.map +1 -0
- package/dist/ui/menu-model.js +1063 -0
- package/dist/ui/menu-model.js.map +1 -0
- package/dist/ui/menu.d.ts +28 -0
- package/dist/ui/menu.d.ts.map +1 -0
- package/dist/ui/menu.js +235 -0
- package/dist/ui/menu.js.map +1 -0
- package/dist/ui/paragraph-dialog.d.ts +39 -0
- package/dist/ui/paragraph-dialog.d.ts.map +1 -0
- package/dist/ui/paragraph-dialog.js +258 -0
- package/dist/ui/paragraph-dialog.js.map +1 -0
- package/dist/ui/queries.d.ts +38 -0
- package/dist/ui/queries.d.ts.map +1 -0
- package/dist/ui/queries.js +138 -0
- package/dist/ui/queries.js.map +1 -0
- package/dist/ui/ruler-vertical.d.ts +21 -0
- package/dist/ui/ruler-vertical.d.ts.map +1 -0
- package/dist/ui/ruler-vertical.js +411 -0
- package/dist/ui/ruler-vertical.js.map +1 -0
- package/dist/ui/ruler.d.ts +42 -0
- package/dist/ui/ruler.d.ts.map +1 -0
- package/dist/ui/ruler.js +391 -0
- package/dist/ui/ruler.js.map +1 -0
- package/dist/ui/status-bar.d.ts +24 -0
- package/dist/ui/status-bar.d.ts.map +1 -0
- package/dist/ui/status-bar.js +206 -0
- package/dist/ui/status-bar.js.map +1 -0
- package/dist/ui/store.d.ts +15 -0
- package/dist/ui/store.d.ts.map +1 -0
- package/dist/ui/store.js +82 -0
- package/dist/ui/store.js.map +1 -0
- package/dist/ui/styles.d.ts +8 -0
- package/dist/ui/styles.d.ts.map +1 -0
- package/dist/ui/styles.js +150 -0
- package/dist/ui/styles.js.map +1 -0
- package/dist/ui/theme.d.ts +9 -0
- package/dist/ui/theme.d.ts.map +1 -0
- package/dist/ui/theme.js +93 -0
- package/dist/ui/theme.js.map +1 -0
- package/dist/ui/types.d.ts +81 -0
- package/dist/ui/types.d.ts.map +1 -0
- package/dist/ui/types.js +23 -0
- package/dist/ui/types.js.map +1 -0
- package/dist/units/brand.d.ts +27 -0
- package/dist/units/brand.d.ts.map +1 -0
- package/dist/units/brand.js +23 -0
- package/dist/units/brand.js.map +1 -0
- package/dist/units/constants.d.ts +19 -0
- package/dist/units/constants.d.ts.map +1 -0
- package/dist/units/constants.js +19 -0
- package/dist/units/constants.js.map +1 -0
- package/dist/units/convert.d.ts +34 -0
- package/dist/units/convert.d.ts.map +1 -0
- package/dist/units/convert.js +42 -0
- package/dist/units/convert.js.map +1 -0
- package/dist/units/css.d.ts +6 -0
- package/dist/units/css.d.ts.map +1 -0
- package/dist/units/css.js +8 -0
- package/dist/units/css.js.map +1 -0
- package/dist/units/index.d.ts +6 -0
- package/dist/units/index.d.ts.map +1 -0
- package/dist/units/index.js +5 -0
- package/dist/units/index.js.map +1 -0
- package/package.json +84 -0
package/README.md
ADDED
|
@@ -0,0 +1,239 @@
|
|
|
1
|
+
# docier
|
|
2
|
+
|
|
3
|
+
A DOCX editor for the browser, written in TypeScript.
|
|
4
|
+
|
|
5
|
+
`docier` opens a `.docx`, lets a person edit it, and writes a valid `.docx` back. It is a library
|
|
6
|
+
rather than an application: you mount it into an element, configure it with one object, drive it
|
|
7
|
+
through commands and observe it through events. It is framework-agnostic, has one runtime dependency,
|
|
8
|
+
and ships an optional module for document templates.
|
|
9
|
+
|
|
10
|
+
[](https://github.com/pistonpunk/docier/actions/workflows/ci.yml)
|
|
11
|
+
|
|
12
|
+
## The problem it solves
|
|
13
|
+
|
|
14
|
+
Most browser editing is HTML editing. You type into a `contenteditable`, the browser decides where the
|
|
15
|
+
text goes, and a converter guesses at a `.docx` afterwards. That works until the document matters: the
|
|
16
|
+
line breaks are not the ones that print, the page breaks are not the ones Word would choose, and each
|
|
17
|
+
conversion loses something.
|
|
18
|
+
|
|
19
|
+
`docier` treats the `.docx` as the document and computes the layout itself. Text is positioned from a
|
|
20
|
+
computed layout rather than from what the browser happened to do, so the page you see and the page that
|
|
21
|
+
prints are the same page. Documents from Word keep their markup, including the parts `docier` does not
|
|
22
|
+
understand, so re-saving a contract does not quietly remove things.
|
|
23
|
+
|
|
24
|
+
## Install
|
|
25
|
+
|
|
26
|
+
```
|
|
27
|
+
npm install docier-web
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
## Quick start
|
|
31
|
+
|
|
32
|
+
```ts
|
|
33
|
+
import { createEditor } from 'docier-web'
|
|
34
|
+
import { mountChrome } from 'docier-web/ui'
|
|
35
|
+
|
|
36
|
+
const bytes = await fetch('/contract.docx').then((r) => r.arrayBuffer())
|
|
37
|
+
|
|
38
|
+
const editor = createEditor('#editor', {}, { document: bytes })
|
|
39
|
+
mountChrome(editor)
|
|
40
|
+
|
|
41
|
+
editor.events.on('docier:doc:change', () => scheduleSave(editor.document))
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
`createEditor(target, config, options)` where `target` is an element or a selector:
|
|
45
|
+
|
|
46
|
+
- `config` is a deep-partial configuration object; every key has a default.
|
|
47
|
+
- `options.document` accepts a `Uint8Array`, `ArrayBuffer`, `Blob`, or an already-parsed package or
|
|
48
|
+
model. `options.zoom` and `options.render` are also accepted here.
|
|
49
|
+
|
|
50
|
+
The call is safe to repeat: mounting twice on the same element returns the first handle, and `destroy()`
|
|
51
|
+
is idempotent.
|
|
52
|
+
|
|
53
|
+
## Using it
|
|
54
|
+
|
|
55
|
+
Everything the user can do is a command. Every state change is an event.
|
|
56
|
+
|
|
57
|
+
```ts
|
|
58
|
+
editor.commands.execute('docier.command.format.bold')
|
|
59
|
+
editor.commands.execute('docier.command.insert.table', { rows: 3, columns: 4 })
|
|
60
|
+
|
|
61
|
+
const bold = editor.commands.describe('docier.command.format.bold')
|
|
62
|
+
// { enabled: true, active: false, ... }
|
|
63
|
+
|
|
64
|
+
const blocked = editor.commands.describe('docier.command.table.deleteRow')
|
|
65
|
+
// { enabled: false, reason: 'The caret is not inside a table' }
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
A command that cannot run tells you why. Nothing is silently inert, and nothing reports success while
|
|
69
|
+
doing nothing: `describe` returns a reason, and executing a blocked command returns a structured status
|
|
70
|
+
carrying the same reason.
|
|
71
|
+
|
|
72
|
+
Events follow the same naming scheme, `docier:<area>:<verb>`, with the cancellable ones named
|
|
73
|
+
`before<Verb>`:
|
|
74
|
+
|
|
75
|
+
```ts
|
|
76
|
+
editor.events.on('docier:selection:change', ({ from, to }) => updateToolbar(from, to))
|
|
77
|
+
editor.events.on('docier:doc:beforechange', (event) => {
|
|
78
|
+
if (!confirmDiscard()) event.preventDefault()
|
|
79
|
+
})
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
## Exporting
|
|
83
|
+
|
|
84
|
+
PDF export is a separate entry point, so an application that never exports never loads it.
|
|
85
|
+
|
|
86
|
+
```ts
|
|
87
|
+
import { exportPdf } from 'docier-web/pdf'
|
|
88
|
+
|
|
89
|
+
const { bytes, report } = await exportPdf(editor.layout, { pdfa: 'a-2b' })
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
The exporter renders the same computed layout the screen renders. It does not re-run layout, re-measure
|
|
93
|
+
text, or consult the document for any position. That is what makes the screen and the printed page agree
|
|
94
|
+
rather than approximately agree. Glyph advances come from the same font measurement the layout used, and
|
|
95
|
+
a font whose metrics disagree is reported rather than substituted.
|
|
96
|
+
|
|
97
|
+
Output is deterministic: the same document produces byte-identical bytes, verified across separate
|
|
98
|
+
processes. Missing fonts and missing images are reported as losses rather than silently omitted.
|
|
99
|
+
|
|
100
|
+
Printing is available too, with page ranges shared by the print and PDF paths.
|
|
101
|
+
|
|
102
|
+
## Document templates
|
|
103
|
+
|
|
104
|
+
Optional, a separate entry point, and off unless enabled. An application that does not use templates
|
|
105
|
+
never loads it.
|
|
106
|
+
|
|
107
|
+
A token is a real Word **content control**. It is the same mechanism Word itself uses for fillable
|
|
108
|
+
fields, which means a template stays a valid `.docx` that a person can open and edit in Word, with the
|
|
109
|
+
fields still working. Placeholders are not a special text syntax that only `docier` understands.
|
|
110
|
+
|
|
111
|
+
```ts
|
|
112
|
+
import { createTokenAttachment, fillTemplate } from 'docier-web/tokens'
|
|
113
|
+
|
|
114
|
+
const tokens = createTokenAttachment(editor, { catalogue, locale: 'ro-RO' })
|
|
115
|
+
tokens.data.setData({ 'employee.surname': 'Popescu' })
|
|
116
|
+
|
|
117
|
+
const { bytes, issues } = await fillTemplate({ template, catalogue, data, locale: 'ro-RO' })
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
The catalogue is the backend's authority. A template that references a field the catalogue does not
|
|
121
|
+
define is reported rather than rendering as blank, and a value that is missing is both reported by code
|
|
122
|
+
and shown as a visible placeholder. A contract must never print a silently empty name.
|
|
123
|
+
|
|
124
|
+
Filling runs headlessly: bytes in, bytes out, no DOM and no network, so a server can fill a template
|
|
125
|
+
without a browser.
|
|
126
|
+
|
|
127
|
+
## What it handles
|
|
128
|
+
|
|
129
|
+
- **DOCX fidelity.** Round-trips a real `.docx`, preserving markup it does not model as raw bytes rather
|
|
130
|
+
than dropping it. Unicode is preserved exactly, not normalised.
|
|
131
|
+
- **Layout.** Line breaking, justification, hyphenation points, widow and orphan control, keep-with-next
|
|
132
|
+
and keep-lines-together, page breaks, sections, columns, tab stops, borders and shading.
|
|
133
|
+
- **Tables.** Column resolution, all three row height rules, row splitting across pages, repeating header
|
|
134
|
+
rows, merged cells, nested tables, and editing inside cells.
|
|
135
|
+
- **Headers, footers and page fields.** Default, first-page and even/odd variants, with `PAGE`,
|
|
136
|
+
`NUMPAGES`, `SECTION` and `SECTIONPAGES` resolved to real values.
|
|
137
|
+
- **Styles.** The full cascade: document defaults, table styles and conditional formatting, numbering,
|
|
138
|
+
paragraph and character styles with their `basedOn` chain, and direct formatting, with Word's toggle
|
|
139
|
+
semantics.
|
|
140
|
+
- **Editing.** Caret and selection, Word's navigation keys, typing, splitting and joining, clipboard with
|
|
141
|
+
a model-content buffer, undo and redo with one entry per gesture, and 112 commands.
|
|
142
|
+
- **Chrome.** Ribbon with tabs and groups, context menus on every surface, a floating selection toolbar,
|
|
143
|
+
a ruler, a status bar, and theming through CSS custom properties.
|
|
144
|
+
|
|
145
|
+
## Requirements
|
|
146
|
+
|
|
147
|
+
Evergreen browsers: Chrome and Edge 120+, Firefox 121+, Safari 17.4+.
|
|
148
|
+
|
|
149
|
+
The floor is set by capability rather than version. `docier` uses `CompressionStream`, `Intl.Segmenter`
|
|
150
|
+
for locale-aware line and word breaking, the Popover API, `structuredClone`, and ES modules with
|
|
151
|
+
top-level await. There are no polyfills for older browsers.
|
|
152
|
+
|
|
153
|
+
**Fonts are not bundled.** You supply them. This keeps the package small and leaves font licensing with
|
|
154
|
+
you, but it means text will not render correctly until you wire up the fonts your documents use. See
|
|
155
|
+
`docs/` for the requirement.
|
|
156
|
+
|
|
157
|
+
### The font integration contract
|
|
158
|
+
|
|
159
|
+
Layout happens before paint and without a browser, so the engine cannot ask a font file how wide a run
|
|
160
|
+
is. It measures through a `TextMeasurer`, and the widths it returns are the widths the renderer has to
|
|
161
|
+
produce. That makes three things your responsibility, and they have to agree with each other:
|
|
162
|
+
|
|
163
|
+
1. **Supply the face bytes.** Read the TTF or OTF files you are licensed to serve, keyed by the family
|
|
164
|
+
names and the four styles (regular, bold, italic, bold italic) the documents actually ask for.
|
|
165
|
+
2. **Register screen faces for every document family name.** The browser paints with fonts resolved from
|
|
166
|
+
CSS, so a family the page does not know falls back to something else and the painted run will not be
|
|
167
|
+
the width the engine reserved. A document asks for `Calibri`, `Times New Roman` or `Arial`, not for
|
|
168
|
+
the name of the file you happen to ship. Declare only the styles you can actually serve: a `@font-face`
|
|
169
|
+
with no file behind it makes the browser substitute a font the measurer never saw, which is worse than
|
|
170
|
+
leaving the style out and letting the family's regular face answer for it.
|
|
171
|
+
3. **Build the measurer from the same bytes.** `createFontMeasurer({ faces })` takes `{ family, bold,
|
|
172
|
+
italic, bytes }` records and returns a `TextMeasurer` that reads real `hmtx` advances and `cmap`
|
|
173
|
+
coverage, segments text exactly like the built-in model (combining marks and variation selectors stay
|
|
174
|
+
with their base), and reports a face id the PDF exporter can verify against the font it embeds. Pass
|
|
175
|
+
it as `layout.measurer`:
|
|
176
|
+
|
|
177
|
+
```ts
|
|
178
|
+
import { createEditor, createFontMeasurer } from 'docier-web';
|
|
179
|
+
|
|
180
|
+
const measurer = createFontMeasurer({
|
|
181
|
+
faces: [
|
|
182
|
+
{ family: 'Calibri', bold: false, italic: false, bytes: regularBytes },
|
|
183
|
+
{ family: 'Calibri', bold: true, italic: false, bytes: boldBytes },
|
|
184
|
+
],
|
|
185
|
+
fallbackFamily: 'Calibri',
|
|
186
|
+
});
|
|
187
|
+
|
|
188
|
+
const handle = createEditor(host, { layout: { measurer }, /* ... */ });
|
|
189
|
+
```
|
|
190
|
+
|
|
191
|
+
`layout.measurer` is a reload key, so setting a different measurer lays the document out again with it;
|
|
192
|
+
`updateConfig({ layout: { measurer: other } })` takes effect on the next layout rather than mutating the
|
|
193
|
+
painted page in place.
|
|
194
|
+
|
|
195
|
+
If no measurer is supplied the engine falls back to a deterministic advance model, which is legible in
|
|
196
|
+
tests but is not a font: real faces are 14 to 30 percent wider, so with that model adjacent runs overlap
|
|
197
|
+
and right-aligned text runs past the margin. That is the failure you see when only the screen `@font-face`
|
|
198
|
+
rules were wired up.
|
|
199
|
+
|
|
200
|
+
Check that what you fetched really is a font. A development server that answers a missing file with its
|
|
201
|
+
own HTML page returns `200 OK` and markup, and font bytes are parsed rather than trusted, so a placeholder
|
|
202
|
+
page in the place of a face is an error rather than a silent fallback.
|
|
203
|
+
|
|
204
|
+
The full worked example is the demo host in `example/src/fonts.ts` and `example/src/main.ts`: it loads the
|
|
205
|
+
faces, registers the screen aliases, and hands the same bytes to `createFontMeasurer`.
|
|
206
|
+
|
|
207
|
+
## Status
|
|
208
|
+
|
|
209
|
+
Version 0.x. Under active development, CI on every push, 1,200+ assertions.
|
|
210
|
+
|
|
211
|
+
**Working:** everything listed under "What it handles".
|
|
212
|
+
|
|
213
|
+
**Not yet:** templates with repeating sections and conditionals; inserting images and shapes, as opposed
|
|
214
|
+
to rendering ones already in a document; comments; footnotes; find and replace; proofing; and editing a
|
|
215
|
+
header or footer from the UI. See `agent_progress.md` for the current state and `docs/SPEC.md` for the
|
|
216
|
+
full design.
|
|
217
|
+
|
|
218
|
+
## Architecture
|
|
219
|
+
|
|
220
|
+
For contributors, and for anyone who wants to know why the page you see is the page that prints.
|
|
221
|
+
|
|
222
|
+
There is one layout engine and two renderers. The engine produces an immutable layout result in
|
|
223
|
+
millipoints; the screen renderer paints it into the DOM and the PDF exporter paints it into a file. No CSS
|
|
224
|
+
takes part in layout, the point-to-pixel conversion happens in exactly one place, and zoom is a paint
|
|
225
|
+
scale that never triggers a re-layout. The constraint is enforced by a test that fails if the renderer
|
|
226
|
+
imports the layout layer, so the two cannot drift apart through inattention.
|
|
227
|
+
|
|
228
|
+
The document model is a typed view over the parsed XML rather than a structure rebuilt from it. That is
|
|
229
|
+
what lets unmodelled markup survive an edit, and it is why an unknown element in a contract is still
|
|
230
|
+
there after a save.
|
|
231
|
+
|
|
232
|
+
See `docs/SPEC.md` for the full design and `docs/adr/` for the decisions behind it.
|
|
233
|
+
|
|
234
|
+
## Licence
|
|
235
|
+
|
|
236
|
+
Dual-licensed: **AGPL-3.0-only** for open source, or a **commercial licence** for proprietary use.
|
|
237
|
+
|
|
238
|
+
The AGPL covers use over a network, so it applies to a hosted product as well as a distributed one. If
|
|
239
|
+
that does not suit your project, a commercial licence is available. See `LICENSE` and `COMMERCIAL.md`.
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import type { CommandContext, CommandDefinition, CommandId, CommandRegistry, DocierErrorCode, DocierEventMap, EventBus, ExecuteOptions, LayoutInvalidation, LocalizedString, MutationOutcome, SelectionSnapshot, SelectionTarget, TextRange } from './types.js';
|
|
2
|
+
export interface CommandTransaction {
|
|
3
|
+
readonly id: string;
|
|
4
|
+
readonly changed: boolean;
|
|
5
|
+
readonly affectedRanges: readonly TextRange[];
|
|
6
|
+
readonly invalidation: LayoutInvalidation;
|
|
7
|
+
mutate<T>(fn: () => MutationOutcome<T>): T;
|
|
8
|
+
}
|
|
9
|
+
export declare const nullTransaction: CommandTransaction;
|
|
10
|
+
export interface PermissionBlock {
|
|
11
|
+
readonly code: DocierErrorCode;
|
|
12
|
+
readonly reason: LocalizedString;
|
|
13
|
+
}
|
|
14
|
+
export interface CommitInfo {
|
|
15
|
+
readonly commandId: CommandId;
|
|
16
|
+
readonly noop: boolean;
|
|
17
|
+
readonly undoable: boolean;
|
|
18
|
+
readonly layer: 'document' | 'chrome' | 'global';
|
|
19
|
+
readonly label: LocalizedString;
|
|
20
|
+
readonly source: ExecuteOptions['source'];
|
|
21
|
+
readonly transient: boolean;
|
|
22
|
+
readonly value: unknown;
|
|
23
|
+
readonly coalesceKey?: string | undefined;
|
|
24
|
+
readonly selectionAfter?: SelectionTarget | undefined;
|
|
25
|
+
}
|
|
26
|
+
export interface CommitResult {
|
|
27
|
+
readonly affectedRanges: readonly TextRange[];
|
|
28
|
+
readonly invalidation: LayoutInvalidation;
|
|
29
|
+
}
|
|
30
|
+
export interface CommandEnvironment {
|
|
31
|
+
readonly instanceId: string;
|
|
32
|
+
readonly events: EventBus<DocierEventMap>;
|
|
33
|
+
readonly revision: number;
|
|
34
|
+
readonly selection: SelectionSnapshot;
|
|
35
|
+
context<A>(definition: CommandDefinition<A, unknown>, args: A, options: ExecuteOptions, transaction: CommandTransaction): CommandContext<A>;
|
|
36
|
+
begin(commandId: CommandId, invalidation: LayoutInvalidation | undefined): CommandTransaction;
|
|
37
|
+
commit(transaction: CommandTransaction, info: CommitInfo): CommitResult;
|
|
38
|
+
rollback(transaction: CommandTransaction): void;
|
|
39
|
+
permissionBlock(definition: CommandDefinition<never, unknown>): PermissionBlock | undefined;
|
|
40
|
+
}
|
|
41
|
+
export declare const createCommandRegistry: (env: CommandEnvironment) => CommandRegistry;
|
|
42
|
+
export declare class CancelledChangeError extends Error {
|
|
43
|
+
readonly reason: LocalizedString;
|
|
44
|
+
constructor(reason: LocalizedString);
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=commands.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../../src/api/commands.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,cAAc,EACd,iBAAiB,EAGjB,SAAS,EACT,eAAe,EAGf,eAAe,EACf,cAAc,EACd,QAAQ,EACR,cAAc,EAEd,kBAAkB,EAClB,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,eAAe,EACf,SAAS,EACV,MAAM,YAAY,CAAC;AAGpB,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,cAAc,EAAE,SAAS,SAAS,EAAE,CAAC;IAC9C,QAAQ,CAAC,YAAY,EAAE,kBAAkB,CAAC;IAC1C,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;CAC5C;AAED,eAAO,MAAM,eAAe,EAAE,kBAM7B,CAAC;AAEF,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC;IAC/B,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;CAClC;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;IAC9B,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,UAAU,GAAG,QAAQ,GAAG,QAAQ,CAAC;IACjD,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAC;IAChC,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC;IAC1C,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1C,QAAQ,CAAC,cAAc,CAAC,EAAE,eAAe,GAAG,SAAS,CAAC;CACvD;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,cAAc,EAAE,SAAS,SAAS,EAAE,CAAC;IAC9C,QAAQ,CAAC,YAAY,EAAE,kBAAkB,CAAC;CAC3C;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,cAAc,CAAC,CAAC;IAC1C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,iBAAiB,CAAC;IACtC,OAAO,CAAC,CAAC,EACP,UAAU,EAAE,iBAAiB,CAAC,CAAC,EAAE,OAAO,CAAC,EACzC,IAAI,EAAE,CAAC,EACP,OAAO,EAAE,cAAc,EACvB,WAAW,EAAE,kBAAkB,GAC9B,cAAc,CAAC,CAAC,CAAC,CAAC;IACrB,KAAK,CAAC,SAAS,EAAE,SAAS,EAAE,YAAY,EAAE,kBAAkB,GAAG,SAAS,GAAG,kBAAkB,CAAC;IAC9F,MAAM,CAAC,WAAW,EAAE,kBAAkB,EAAE,IAAI,EAAE,UAAU,GAAG,YAAY,CAAC;IACxE,QAAQ,CAAC,WAAW,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAChD,eAAe,CAAC,UAAU,EAAE,iBAAiB,CAAC,KAAK,EAAE,OAAO,CAAC,GAAG,eAAe,GAAG,SAAS,CAAC;CAC7F;AAID,eAAO,MAAM,qBAAqB,GAAI,KAAK,kBAAkB,KAAG,eA6P/D,CAAC;AAEF,qBAAa,oBAAqB,SAAQ,KAAK;IAC7C,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;gBACrB,MAAM,EAAE,eAAe;CAKpC"}
|
|
@@ -0,0 +1,274 @@
|
|
|
1
|
+
import { COMMAND_PREFIX, NOOP } from './constants.js';
|
|
2
|
+
import { DocierError, commandIdOf, toDocierError } from './errors.js';
|
|
3
|
+
import { noInvalidation } from './types.js';
|
|
4
|
+
export const nullTransaction = {
|
|
5
|
+
id: '',
|
|
6
|
+
changed: false,
|
|
7
|
+
affectedRanges: [],
|
|
8
|
+
invalidation: noInvalidation,
|
|
9
|
+
mutate: (fn) => fn().value,
|
|
10
|
+
};
|
|
11
|
+
const isArea = (id) => id.startsWith(COMMAND_PREFIX);
|
|
12
|
+
export const createCommandRegistry = (env) => {
|
|
13
|
+
const definitions = new Map();
|
|
14
|
+
const executing = new Set();
|
|
15
|
+
const rebinds = new Map();
|
|
16
|
+
const descriptorOf = (definition) => {
|
|
17
|
+
const ctx = env.context(definition, undefined, {}, nullTransaction);
|
|
18
|
+
const visible = definition.isVisible === undefined || definition.isVisible(ctx);
|
|
19
|
+
const enabled = definition.isEnabled === undefined || definition.isEnabled(ctx);
|
|
20
|
+
const active = definition.isActive !== undefined && definition.isActive(ctx);
|
|
21
|
+
const reason = enabled ? undefined : definition.disabledReason?.(ctx);
|
|
22
|
+
const bindings = rebinds.get(definition.id) ?? definition.bindings ?? [];
|
|
23
|
+
return {
|
|
24
|
+
id: definition.id,
|
|
25
|
+
label: definition.label,
|
|
26
|
+
category: definition.category,
|
|
27
|
+
description: definition.description,
|
|
28
|
+
icon: definition.icon,
|
|
29
|
+
keywords: definition.keywords,
|
|
30
|
+
bindings,
|
|
31
|
+
layer: definition.layer ?? 'document',
|
|
32
|
+
undoable: definition.undoable ?? true,
|
|
33
|
+
repeatable: definition.repeatable ?? false,
|
|
34
|
+
enabled,
|
|
35
|
+
active,
|
|
36
|
+
visible,
|
|
37
|
+
disabledReason: reason,
|
|
38
|
+
};
|
|
39
|
+
};
|
|
40
|
+
const blocked = (id, code, reason) => {
|
|
41
|
+
env.events.emit('docier:command:blocked', {
|
|
42
|
+
instanceId: env.instanceId,
|
|
43
|
+
documentRevision: env.revision,
|
|
44
|
+
source: 'api',
|
|
45
|
+
timestamp: Date.now(),
|
|
46
|
+
commandId: commandIdOf(id),
|
|
47
|
+
code,
|
|
48
|
+
reason,
|
|
49
|
+
});
|
|
50
|
+
return { status: 'blocked', code, reason };
|
|
51
|
+
};
|
|
52
|
+
const execute = async (id, args, options) => {
|
|
53
|
+
const definition = definitions.get(id);
|
|
54
|
+
if (definition === undefined) {
|
|
55
|
+
return {
|
|
56
|
+
status: 'failed',
|
|
57
|
+
error: new DocierError({
|
|
58
|
+
code: 'COMMAND_NOT_FOUND',
|
|
59
|
+
detail: id,
|
|
60
|
+
context: { instanceId: env.instanceId, operation: 'execute', documentRevision: env.revision },
|
|
61
|
+
}),
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
if (executing.has(id)) {
|
|
65
|
+
return blocked(id, 'REENTRANT_COMMAND', `The command ${id} is already executing`);
|
|
66
|
+
}
|
|
67
|
+
const source = options?.source ?? 'api';
|
|
68
|
+
const force = options?.force ?? false;
|
|
69
|
+
const before = env.events.dispatch('docier:command:beforeexecute', {
|
|
70
|
+
instanceId: env.instanceId,
|
|
71
|
+
documentRevision: env.revision,
|
|
72
|
+
source,
|
|
73
|
+
timestamp: Date.now(),
|
|
74
|
+
commandId: commandIdOf(id),
|
|
75
|
+
args,
|
|
76
|
+
});
|
|
77
|
+
if (before.defaultPrevented) {
|
|
78
|
+
return blocked(id, 'INAPPLICABLE', 'A listener cancelled the command');
|
|
79
|
+
}
|
|
80
|
+
const denied = env.permissionBlock(definition);
|
|
81
|
+
if (denied !== undefined) {
|
|
82
|
+
return blocked(id, denied.code, denied.reason);
|
|
83
|
+
}
|
|
84
|
+
const given = (args === undefined ? {} : args);
|
|
85
|
+
const context = env.context(definition, given, { ...options, source }, nullTransaction);
|
|
86
|
+
if (!force && definition.isEnabled !== undefined && !definition.isEnabled(context)) {
|
|
87
|
+
const reason = definition.disabledReason?.(context) ?? 'The command cannot run here';
|
|
88
|
+
return blocked(id, definition.disabledCode ?? 'INAPPLICABLE', reason);
|
|
89
|
+
}
|
|
90
|
+
const started = Date.now();
|
|
91
|
+
const declared = definition.invalidation?.(given);
|
|
92
|
+
let transaction;
|
|
93
|
+
try {
|
|
94
|
+
transaction = env.begin(commandIdOf(id), declared);
|
|
95
|
+
}
|
|
96
|
+
catch (cause) {
|
|
97
|
+
if (cause instanceof CancelledChangeError) {
|
|
98
|
+
return blocked(id, 'INAPPLICABLE', cause.reason);
|
|
99
|
+
}
|
|
100
|
+
throw cause;
|
|
101
|
+
}
|
|
102
|
+
executing.add(id);
|
|
103
|
+
let value;
|
|
104
|
+
try {
|
|
105
|
+
const scoped = env.context(definition, given, { ...options, source }, transaction);
|
|
106
|
+
value = await definition.execute(given, scoped);
|
|
107
|
+
}
|
|
108
|
+
catch (cause) {
|
|
109
|
+
env.rollback(transaction);
|
|
110
|
+
executing.delete(id);
|
|
111
|
+
if (cause instanceof CancelledChangeError) {
|
|
112
|
+
return blocked(id, 'INAPPLICABLE', cause.reason);
|
|
113
|
+
}
|
|
114
|
+
const error = toDocierError(cause, 'INTERNAL', 'execute', {
|
|
115
|
+
instanceId: env.instanceId,
|
|
116
|
+
commandId: commandIdOf(id),
|
|
117
|
+
documentRevision: env.revision,
|
|
118
|
+
});
|
|
119
|
+
env.events.emit('docier:error', {
|
|
120
|
+
instanceId: env.instanceId,
|
|
121
|
+
documentRevision: env.revision,
|
|
122
|
+
source,
|
|
123
|
+
timestamp: Date.now(),
|
|
124
|
+
code: error.code,
|
|
125
|
+
message: error.message,
|
|
126
|
+
detail: error.detail,
|
|
127
|
+
operation: 'execute',
|
|
128
|
+
});
|
|
129
|
+
return { status: 'failed', error };
|
|
130
|
+
}
|
|
131
|
+
executing.delete(id);
|
|
132
|
+
const muted = value === NOOP;
|
|
133
|
+
const layer = definition.layer ?? 'document';
|
|
134
|
+
const undoable = options?.transaction?.undoable ?? definition.undoable ?? true;
|
|
135
|
+
const noop = muted || (!transaction.changed && layer !== 'chrome' && undoable);
|
|
136
|
+
const committed = env.commit(transaction, {
|
|
137
|
+
commandId: commandIdOf(id),
|
|
138
|
+
noop,
|
|
139
|
+
undoable,
|
|
140
|
+
layer,
|
|
141
|
+
label: options?.transaction?.label ?? definition.label,
|
|
142
|
+
source,
|
|
143
|
+
transient: options?.transient ?? false,
|
|
144
|
+
value,
|
|
145
|
+
coalesceKey: options?.transaction?.coalesceKey,
|
|
146
|
+
selectionAfter: options?.transaction?.selectionAfter,
|
|
147
|
+
});
|
|
148
|
+
if (noop)
|
|
149
|
+
return { status: 'noop' };
|
|
150
|
+
env.events.emit('docier:command:execute', {
|
|
151
|
+
instanceId: env.instanceId,
|
|
152
|
+
documentRevision: env.revision,
|
|
153
|
+
source,
|
|
154
|
+
timestamp: Date.now(),
|
|
155
|
+
commandId: commandIdOf(id),
|
|
156
|
+
args: given,
|
|
157
|
+
status: 'ok',
|
|
158
|
+
durationMs: Date.now() - started,
|
|
159
|
+
});
|
|
160
|
+
return {
|
|
161
|
+
status: 'ok',
|
|
162
|
+
value: value,
|
|
163
|
+
affectedRanges: committed.affectedRanges,
|
|
164
|
+
invalidation: committed.invalidation,
|
|
165
|
+
};
|
|
166
|
+
};
|
|
167
|
+
const registry = {
|
|
168
|
+
register: (definition) => {
|
|
169
|
+
if (!isArea(definition.id)) {
|
|
170
|
+
throw new DocierError({
|
|
171
|
+
code: 'CONFIG_INVALID',
|
|
172
|
+
detail: `The command id ${definition.id} is not in the docier.command. namespace`,
|
|
173
|
+
context: { instanceId: env.instanceId, operation: 'register' },
|
|
174
|
+
});
|
|
175
|
+
}
|
|
176
|
+
if (definitions.has(definition.id)) {
|
|
177
|
+
throw new DocierError({
|
|
178
|
+
code: 'CONFIG_INVALID',
|
|
179
|
+
detail: `The command id ${definition.id} is already registered`,
|
|
180
|
+
context: { instanceId: env.instanceId, operation: 'register' },
|
|
181
|
+
});
|
|
182
|
+
}
|
|
183
|
+
definitions.set(definition.id, definition);
|
|
184
|
+
return {
|
|
185
|
+
dispose: () => {
|
|
186
|
+
if (definitions.get(definition.id) === definition) {
|
|
187
|
+
definitions.delete(definition.id);
|
|
188
|
+
}
|
|
189
|
+
},
|
|
190
|
+
};
|
|
191
|
+
},
|
|
192
|
+
replace: (definition) => {
|
|
193
|
+
if (!isArea(definition.id)) {
|
|
194
|
+
throw new DocierError({
|
|
195
|
+
code: 'CONFIG_INVALID',
|
|
196
|
+
detail: `The command id ${definition.id} is not in the docier.command. namespace`,
|
|
197
|
+
context: { instanceId: env.instanceId, operation: 'replace' },
|
|
198
|
+
});
|
|
199
|
+
}
|
|
200
|
+
const inserted = definition;
|
|
201
|
+
const displaced = definitions.get(definition.id);
|
|
202
|
+
definitions.set(definition.id, inserted);
|
|
203
|
+
return {
|
|
204
|
+
dispose: () => {
|
|
205
|
+
if (definitions.get(definition.id) !== inserted)
|
|
206
|
+
return;
|
|
207
|
+
if (displaced === undefined)
|
|
208
|
+
definitions.delete(definition.id);
|
|
209
|
+
else
|
|
210
|
+
definitions.set(definition.id, displaced);
|
|
211
|
+
},
|
|
212
|
+
};
|
|
213
|
+
},
|
|
214
|
+
get: (id) => definitions.get(id),
|
|
215
|
+
list: (filter) => {
|
|
216
|
+
const out = [];
|
|
217
|
+
for (const definition of definitions.values()) {
|
|
218
|
+
if (filter?.area !== undefined && definition.category !== filter.area)
|
|
219
|
+
continue;
|
|
220
|
+
if (filter?.ids !== undefined && !filter.ids.includes(definition.id))
|
|
221
|
+
continue;
|
|
222
|
+
const descriptor = descriptorOf(definition);
|
|
223
|
+
if (filter?.enabledOnly === true && !descriptor.enabled)
|
|
224
|
+
continue;
|
|
225
|
+
if (filter?.visibleOnly === true && !descriptor.visible)
|
|
226
|
+
continue;
|
|
227
|
+
out.push(descriptor);
|
|
228
|
+
}
|
|
229
|
+
return out.sort((first, second) => first.id.localeCompare(second.id));
|
|
230
|
+
},
|
|
231
|
+
execute,
|
|
232
|
+
isEnabled: (id, args) => {
|
|
233
|
+
const definition = definitions.get(id);
|
|
234
|
+
if (definition === undefined)
|
|
235
|
+
return false;
|
|
236
|
+
const ctx = env.context(definition, args, {}, nullTransaction);
|
|
237
|
+
if (env.permissionBlock(definition) !== undefined)
|
|
238
|
+
return false;
|
|
239
|
+
return definition.isEnabled === undefined || definition.isEnabled(ctx);
|
|
240
|
+
},
|
|
241
|
+
disabledReason: (id, args) => {
|
|
242
|
+
const definition = definitions.get(id);
|
|
243
|
+
if (definition === undefined)
|
|
244
|
+
return 'No such command';
|
|
245
|
+
const ctx = env.context(definition, args, {}, nullTransaction);
|
|
246
|
+
const denied = env.permissionBlock(definition);
|
|
247
|
+
if (denied !== undefined)
|
|
248
|
+
return denied.reason;
|
|
249
|
+
if (definition.isEnabled === undefined || definition.isEnabled(ctx))
|
|
250
|
+
return undefined;
|
|
251
|
+
return definition.disabledReason?.(ctx) ?? 'The command cannot run here';
|
|
252
|
+
},
|
|
253
|
+
isActive: (id, args) => {
|
|
254
|
+
const definition = definitions.get(id);
|
|
255
|
+
if (definition === undefined)
|
|
256
|
+
return false;
|
|
257
|
+
const ctx = env.context(definition, args, {}, nullTransaction);
|
|
258
|
+
return definition.isActive !== undefined && definition.isActive(ctx);
|
|
259
|
+
},
|
|
260
|
+
setKeybinding: (id, bindings) => {
|
|
261
|
+
rebinds.set(id, bindings);
|
|
262
|
+
},
|
|
263
|
+
};
|
|
264
|
+
return registry;
|
|
265
|
+
};
|
|
266
|
+
export class CancelledChangeError extends Error {
|
|
267
|
+
reason;
|
|
268
|
+
constructor(reason) {
|
|
269
|
+
super('The change was cancelled');
|
|
270
|
+
this.name = 'CancelledChangeError';
|
|
271
|
+
this.reason = reason;
|
|
272
|
+
}
|
|
273
|
+
}
|
|
274
|
+
//# sourceMappingURL=commands.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../../src/api/commands.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { ConfigApplyReport, Diagnostic, EditorConfig, EditorConfigPatch } from './types.js';
|
|
2
|
+
export declare const defaultConfig: () => EditorConfig;
|
|
3
|
+
export interface MergeReport {
|
|
4
|
+
readonly config: EditorConfig;
|
|
5
|
+
readonly unknown: readonly string[];
|
|
6
|
+
readonly warnings: readonly Diagnostic[];
|
|
7
|
+
}
|
|
8
|
+
export declare const mergeConfig: (base: EditorConfig, patch: EditorConfigPatch | undefined) => MergeReport;
|
|
9
|
+
export declare const reloadKeysOf: (patch: EditorConfigPatch | undefined) => readonly string[];
|
|
10
|
+
export declare const applyPatch: (base: EditorConfig, patch: EditorConfigPatch | undefined) => {
|
|
11
|
+
readonly report: MergeReport;
|
|
12
|
+
readonly applyReport: ConfigApplyReport;
|
|
13
|
+
};
|
|
14
|
+
//# sourceMappingURL=config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/api/config.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EACV,iBAAiB,EACjB,UAAU,EACV,YAAY,EACZ,iBAAiB,EAClB,MAAM,YAAY,CAAC;AAEpB,eAAO,MAAM,aAAa,QAAO,YAmC/B,CAAC;AA6FH,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;IAC9B,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,QAAQ,CAAC,QAAQ,EAAE,SAAS,UAAU,EAAE,CAAC;CAC1C;AAyDD,eAAO,MAAM,WAAW,GAAI,MAAM,YAAY,EAAE,OAAO,iBAAiB,GAAG,SAAS,KAAG,WAqBtF,CAAC;AAEF,eAAO,MAAM,YAAY,GAAI,OAAO,iBAAiB,GAAG,SAAS,KAAG,SAAS,MAAM,EAiBlF,CAAC;AAEF,eAAO,MAAM,UAAU,GACrB,MAAM,YAAY,EAClB,OAAO,iBAAiB,GAAG,SAAS,KACnC;IAAE,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAAC,QAAQ,CAAC,WAAW,EAAE,iBAAiB,CAAA;CAczE,CAAC"}
|