documents.js 1.57.0 → 1.58.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/README.md +38 -0
- package/dist/blr-types-CYYC3yYU.d.cts +35 -0
- package/dist/blr-types-CYYC3yYU.d.ts +35 -0
- package/dist/cell-CNHPsDEk.d.cts +17 -0
- package/dist/cell-CNHPsDEk.d.ts +17 -0
- package/dist/color-71eoF1Up.d.cts +2 -0
- package/dist/color-Bo228AY2.d.ts +2 -0
- package/dist/convert/codec.cjs +51 -0
- package/dist/convert/codec.d.cts +13 -0
- package/dist/convert/codec.d.ts +13 -0
- package/dist/convert/codec.js +42 -0
- package/dist/convert/convert.cjs +443 -0
- package/dist/convert/convert.d.cts +55 -0
- package/dist/convert/convert.d.ts +55 -0
- package/dist/convert/convert.js +419 -0
- package/dist/convert/local.cjs +393 -0
- package/dist/convert/local.d.cts +5 -0
- package/dist/convert/local.d.ts +5 -0
- package/dist/convert/local.js +392 -0
- package/dist/convert/port.cjs +0 -0
- package/dist/convert/port.d.cts +34 -0
- package/dist/convert/port.d.ts +34 -0
- package/dist/convert/port.js +0 -0
- package/dist/edit/docx/content.cjs +71 -0
- package/dist/edit/docx/content.d.cts +6 -0
- package/dist/edit/docx/content.d.ts +6 -0
- package/dist/edit/docx/content.js +70 -0
- package/dist/edit/docx/editor.cjs +116 -0
- package/dist/edit/docx/editor.d.cts +23 -0
- package/dist/edit/docx/editor.d.ts +23 -0
- package/dist/edit/docx/editor.js +113 -0
- package/dist/edit/docx/image.cjs +74 -0
- package/dist/edit/docx/image.d.cts +2 -0
- package/dist/edit/docx/image.d.ts +2 -0
- package/dist/edit/docx/image.js +72 -0
- package/dist/edit/docx/paragraph.cjs +132 -0
- package/dist/edit/docx/paragraph.d.cts +40 -0
- package/dist/edit/docx/paragraph.d.ts +40 -0
- package/dist/edit/docx/paragraph.js +130 -0
- package/dist/edit/docx/props.cjs +132 -0
- package/dist/edit/docx/props.d.cts +20 -0
- package/dist/edit/docx/props.d.ts +20 -0
- package/dist/edit/docx/props.js +117 -0
- package/dist/edit/docx/run.cjs +143 -0
- package/dist/edit/docx/run.d.cts +2 -0
- package/dist/edit/docx/run.d.ts +2 -0
- package/dist/edit/docx/run.js +141 -0
- package/dist/edit/docx/scaffold.cjs +97 -0
- package/dist/edit/docx/scaffold.d.cts +5 -0
- package/dist/edit/docx/scaffold.d.ts +5 -0
- package/dist/edit/docx/scaffold.js +96 -0
- package/dist/edit/docx/table.cjs +99 -0
- package/dist/edit/docx/table.d.cts +34 -0
- package/dist/edit/docx/table.d.ts +34 -0
- package/dist/edit/docx/table.js +95 -0
- package/dist/edit/odg/content.cjs +65 -0
- package/dist/edit/odg/content.d.cts +6 -0
- package/dist/edit/odg/content.d.ts +6 -0
- package/dist/edit/odg/content.js +64 -0
- package/dist/edit/odg/editor.cjs +96 -0
- package/dist/edit/odg/editor.d.cts +19 -0
- package/dist/edit/odg/editor.d.ts +19 -0
- package/dist/edit/odg/editor.js +93 -0
- package/dist/edit/odg/page.cjs +70 -0
- package/dist/edit/odg/page.d.cts +34 -0
- package/dist/edit/odg/page.d.ts +34 -0
- package/dist/edit/odg/page.js +69 -0
- package/dist/edit/odg/scaffold.cjs +106 -0
- package/dist/edit/odg/scaffold.d.cts +7 -0
- package/dist/edit/odg/scaffold.d.ts +7 -0
- package/dist/edit/odg/scaffold.js +103 -0
- package/dist/edit/odg/style.cjs +83 -0
- package/dist/edit/odg/style.d.cts +14 -0
- package/dist/edit/odg/style.d.ts +14 -0
- package/dist/edit/odg/style.js +78 -0
- package/dist/edit/odg/svg-path.cjs +30 -0
- package/dist/edit/odg/svg-path.d.cts +7 -0
- package/dist/edit/odg/svg-path.d.ts +7 -0
- package/dist/edit/odg/svg-path.js +27 -0
- package/dist/edit/odg/vector.cjs +208 -0
- package/dist/edit/odg/vector.d.cts +2 -0
- package/dist/edit/odg/vector.d.ts +2 -0
- package/dist/edit/odg/vector.js +201 -0
- package/dist/edit/odp/content.cjs +42 -0
- package/dist/edit/odp/content.d.cts +6 -0
- package/dist/edit/odp/content.d.ts +6 -0
- package/dist/edit/odp/content.js +41 -0
- package/dist/edit/odp/editor.cjs +113 -0
- package/dist/edit/odp/editor.d.cts +20 -0
- package/dist/edit/odp/editor.d.ts +20 -0
- package/dist/edit/odp/editor.js +110 -0
- package/dist/edit/odp/image.cjs +10 -0
- package/dist/edit/odp/image.d.cts +2 -0
- package/dist/edit/odp/image.d.ts +2 -0
- package/dist/edit/odp/image.js +9 -0
- package/dist/edit/odp/scaffold.cjs +108 -0
- package/dist/edit/odp/scaffold.d.cts +7 -0
- package/dist/edit/odp/scaffold.d.ts +7 -0
- package/dist/edit/odp/scaffold.js +105 -0
- package/dist/edit/odp/shape.cjs +133 -0
- package/dist/edit/odp/shape.d.cts +2 -0
- package/dist/edit/odp/shape.d.ts +2 -0
- package/dist/edit/odp/shape.js +130 -0
- package/dist/edit/odp/slide.cjs +80 -0
- package/dist/edit/odp/slide.d.cts +31 -0
- package/dist/edit/odp/slide.d.ts +31 -0
- package/dist/edit/odp/slide.js +79 -0
- package/dist/edit/ods/address.cjs +108 -0
- package/dist/edit/ods/address.d.cts +15 -0
- package/dist/edit/ods/address.d.ts +15 -0
- package/dist/edit/ods/address.js +97 -0
- package/dist/edit/ods/cell.cjs +177 -0
- package/dist/edit/ods/cell.d.cts +2 -0
- package/dist/edit/ods/cell.d.ts +2 -0
- package/dist/edit/ods/cell.js +176 -0
- package/dist/edit/ods/content.cjs +26 -0
- package/dist/edit/ods/content.d.cts +6 -0
- package/dist/edit/ods/content.d.ts +6 -0
- package/dist/edit/ods/content.js +25 -0
- package/dist/edit/ods/editor.cjs +84 -0
- package/dist/edit/ods/editor.d.cts +17 -0
- package/dist/edit/ods/editor.d.ts +17 -0
- package/dist/edit/ods/editor.js +81 -0
- package/dist/edit/ods/print-settings.cjs +90 -0
- package/dist/edit/ods/print-settings.d.cts +7 -0
- package/dist/edit/ods/print-settings.d.ts +7 -0
- package/dist/edit/ods/print-settings.js +88 -0
- package/dist/edit/ods/scaffold.cjs +129 -0
- package/dist/edit/ods/scaffold.d.cts +9 -0
- package/dist/edit/ods/scaffold.d.ts +9 -0
- package/dist/edit/ods/scaffold.js +124 -0
- package/dist/edit/ods/sheet.cjs +70 -0
- package/dist/edit/ods/sheet.d.cts +22 -0
- package/dist/edit/ods/sheet.d.ts +22 -0
- package/dist/edit/ods/sheet.js +69 -0
- package/dist/edit/odt/automatic-styles.cjs +49 -0
- package/dist/edit/odt/automatic-styles.d.cts +8 -0
- package/dist/edit/odt/automatic-styles.d.ts +8 -0
- package/dist/edit/odt/automatic-styles.js +45 -0
- package/dist/edit/odt/content.cjs +110 -0
- package/dist/edit/odt/content.d.cts +9 -0
- package/dist/edit/odt/content.d.ts +9 -0
- package/dist/edit/odt/content.js +108 -0
- package/dist/edit/odt/editor.cjs +98 -0
- package/dist/edit/odt/editor.d.cts +25 -0
- package/dist/edit/odt/editor.d.ts +25 -0
- package/dist/edit/odt/editor.js +95 -0
- package/dist/edit/odt/list.cjs +82 -0
- package/dist/edit/odt/list.d.cts +2 -0
- package/dist/edit/odt/list.d.ts +2 -0
- package/dist/edit/odt/list.js +79 -0
- package/dist/edit/odt/paragraph.cjs +84 -0
- package/dist/edit/odt/paragraph.d.cts +2 -0
- package/dist/edit/odt/paragraph.d.ts +2 -0
- package/dist/edit/odt/paragraph.js +82 -0
- package/dist/edit/odt/props.cjs +26 -0
- package/dist/edit/odt/props.d.cts +7 -0
- package/dist/edit/odt/props.d.ts +7 -0
- package/dist/edit/odt/props.js +23 -0
- package/dist/edit/odt/run.cjs +82 -0
- package/dist/edit/odt/run.d.cts +2 -0
- package/dist/edit/odt/run.d.ts +2 -0
- package/dist/edit/odt/run.js +80 -0
- package/dist/edit/odt/scaffold.cjs +109 -0
- package/dist/edit/odt/scaffold.d.cts +5 -0
- package/dist/edit/odt/scaffold.d.ts +5 -0
- package/dist/edit/odt/scaffold.js +108 -0
- package/dist/edit/odt/table.cjs +123 -0
- package/dist/edit/odt/table.d.cts +37 -0
- package/dist/edit/odt/table.d.ts +37 -0
- package/dist/edit/odt/table.js +119 -0
- package/dist/edit/pptx/content.cjs +49 -0
- package/dist/edit/pptx/content.d.cts +6 -0
- package/dist/edit/pptx/content.d.ts +6 -0
- package/dist/edit/pptx/content.js +48 -0
- package/dist/edit/pptx/editor.cjs +187 -0
- package/dist/edit/pptx/editor.d.cts +20 -0
- package/dist/edit/pptx/editor.d.ts +20 -0
- package/dist/edit/pptx/editor.js +184 -0
- package/dist/edit/pptx/image.cjs +27 -0
- package/dist/edit/pptx/image.d.cts +2 -0
- package/dist/edit/pptx/image.d.ts +2 -0
- package/dist/edit/pptx/image.js +26 -0
- package/dist/edit/pptx/scaffold.cjs +292 -0
- package/dist/edit/pptx/scaffold.d.cts +13 -0
- package/dist/edit/pptx/scaffold.d.ts +13 -0
- package/dist/edit/pptx/scaffold.js +283 -0
- package/dist/edit/pptx/shape.cjs +182 -0
- package/dist/edit/pptx/shape.d.cts +2 -0
- package/dist/edit/pptx/shape.d.ts +2 -0
- package/dist/edit/pptx/shape.js +179 -0
- package/dist/edit/pptx/slide.cjs +146 -0
- package/dist/edit/pptx/slide.d.cts +33 -0
- package/dist/edit/pptx/slide.d.ts +33 -0
- package/dist/edit/pptx/slide.js +145 -0
- package/dist/firebird/backup.cjs +150 -0
- package/dist/firebird/backup.d.cts +21 -0
- package/dist/firebird/backup.d.ts +21 -0
- package/dist/firebird/backup.js +145 -0
- package/dist/firebird/blr-types.cjs +118 -0
- package/dist/firebird/blr-types.d.cts +2 -0
- package/dist/firebird/blr-types.d.ts +2 -0
- package/dist/firebird/blr-types.js +90 -0
- package/dist/firebird/data.cjs +231 -0
- package/dist/firebird/data.d.cts +17 -0
- package/dist/firebird/data.d.ts +17 -0
- package/dist/firebird/data.js +228 -0
- package/dist/firebird/date.cjs +63 -0
- package/dist/firebird/date.d.cts +17 -0
- package/dist/firebird/date.d.ts +17 -0
- package/dist/firebird/date.js +58 -0
- package/dist/firebird/reader.cjs +157 -0
- package/dist/firebird/reader.d.cts +2 -0
- package/dist/firebird/reader.d.ts +2 -0
- package/dist/firebird/reader.js +154 -0
- package/dist/firebird/schema.cjs +91 -0
- package/dist/firebird/schema.d.cts +2 -0
- package/dist/firebird/schema.d.ts +2 -0
- package/dist/firebird/schema.js +89 -0
- package/dist/geometry-DvwdrIij.d.cts +5 -0
- package/dist/geometry-DvwdrIij.d.ts +5 -0
- package/dist/hsqldb/cache.cjs +88 -0
- package/dist/hsqldb/cache.d.cts +13 -0
- package/dist/hsqldb/cache.d.ts +13 -0
- package/dist/hsqldb/cache.js +84 -0
- package/dist/hsqldb/rowformat.cjs +222 -0
- package/dist/hsqldb/rowformat.d.cts +21 -0
- package/dist/hsqldb/rowformat.d.ts +21 -0
- package/dist/hsqldb/rowformat.js +218 -0
- package/dist/hsqldb/script.cjs +450 -0
- package/dist/hsqldb/script.d.cts +19 -0
- package/dist/hsqldb/script.d.ts +19 -0
- package/dist/hsqldb/script.js +447 -0
- package/dist/image-B-xQWYYS.d.ts +16 -0
- package/dist/image-BZDy72Jb.d.cts +16 -0
- package/dist/image-BfRLAD9B.d.cts +18 -0
- package/dist/image-BfRLAD9B.d.ts +18 -0
- package/dist/image-CeqwL-Qs.d.ts +14 -0
- package/dist/image-DWX6cNOD.d.cts +14 -0
- package/dist/index.cjs +201 -10863
- package/dist/index.d.cts +71 -1406
- package/dist/index.d.ts +71 -1406
- package/dist/index.js +67 -10727
- package/dist/layout/drawing.cjs +117 -0
- package/dist/layout/drawing.d.cts +13 -0
- package/dist/layout/drawing.d.ts +13 -0
- package/dist/layout/drawing.js +116 -0
- package/dist/layout/engine.cjs +216 -0
- package/dist/layout/engine.d.cts +19 -0
- package/dist/layout/engine.d.ts +19 -0
- package/dist/layout/engine.js +215 -0
- package/dist/layout/reconstruct.cjs +809 -0
- package/dist/layout/reconstruct.d.cts +12 -0
- package/dist/layout/reconstruct.d.ts +12 -0
- package/dist/layout/reconstruct.js +805 -0
- package/dist/layout/shared.cjs +104 -0
- package/dist/layout/shared.d.cts +15 -0
- package/dist/layout/shared.d.ts +15 -0
- package/dist/layout/shared.js +96 -0
- package/dist/layout/sheets.cjs +413 -0
- package/dist/layout/sheets.d.cts +14 -0
- package/dist/layout/sheets.d.ts +14 -0
- package/dist/layout/sheets.js +414 -0
- package/dist/layout/slides.cjs +194 -0
- package/dist/layout/slides.d.cts +25 -0
- package/dist/layout/slides.d.ts +25 -0
- package/dist/layout/slides.js +192 -0
- package/dist/list-BuBM9rwQ.d.cts +24 -0
- package/dist/list-CvKxhy3y.d.ts +24 -0
- package/dist/mathml/compose.cjs +53 -0
- package/dist/mathml/compose.d.cts +8 -0
- package/dist/mathml/compose.d.ts +8 -0
- package/dist/mathml/compose.js +49 -0
- package/dist/mathml/layout-types.cjs +0 -0
- package/dist/mathml/layout-types.d.cts +50 -0
- package/dist/mathml/layout-types.d.ts +50 -0
- package/dist/mathml/layout-types.js +0 -0
- package/dist/mathml/layout.cjs +373 -0
- package/dist/mathml/layout.d.cts +24 -0
- package/dist/mathml/layout.d.ts +24 -0
- package/dist/mathml/layout.js +371 -0
- package/dist/mathml/length.cjs +41 -0
- package/dist/mathml/length.d.cts +4 -0
- package/dist/mathml/length.d.ts +4 -0
- package/dist/mathml/length.js +40 -0
- package/dist/mathml/metrics.cjs +0 -0
- package/dist/mathml/metrics.d.cts +44 -0
- package/dist/mathml/metrics.d.ts +44 -0
- package/dist/mathml/metrics.js +0 -0
- package/dist/mathml/nodes.cjs +39 -0
- package/dist/mathml/nodes.d.cts +2 -0
- package/dist/mathml/nodes.d.ts +2 -0
- package/dist/mathml/nodes.js +32 -0
- package/dist/mathml/operators.cjs +189 -0
- package/dist/mathml/operators.d.cts +13 -0
- package/dist/mathml/operators.d.ts +13 -0
- package/dist/mathml/operators.js +188 -0
- package/dist/mathml/radical.cjs +46 -0
- package/dist/mathml/radical.d.cts +10 -0
- package/dist/mathml/radical.d.ts +10 -0
- package/dist/mathml/radical.js +45 -0
- package/dist/mathml/variant.cjs +1160 -0
- package/dist/mathml/variant.d.cts +7 -0
- package/dist/mathml/variant.d.ts +7 -0
- package/dist/mathml/variant.js +1157 -0
- package/dist/model/bytes.cjs +88 -0
- package/dist/model/bytes.d.cts +12 -0
- package/dist/model/bytes.d.ts +12 -0
- package/dist/model/bytes.js +80 -0
- package/dist/model/color.cjs +26 -0
- package/dist/model/color.d.cts +2 -0
- package/dist/model/color.d.ts +2 -0
- package/dist/model/color.js +2 -0
- package/dist/model/content.cjs +34 -0
- package/dist/model/content.d.cts +362 -0
- package/dist/model/content.d.ts +362 -0
- package/dist/model/content.js +32 -0
- package/dist/model/formula.cjs +0 -0
- package/dist/model/formula.d.cts +8 -0
- package/dist/model/formula.d.ts +8 -0
- package/dist/model/formula.js +0 -0
- package/dist/model/geometry.cjs +55 -0
- package/dist/model/geometry.d.cts +2 -0
- package/dist/model/geometry.d.ts +2 -0
- package/dist/model/geometry.js +12 -0
- package/dist/model/style.cjs +20 -0
- package/dist/model/style.d.cts +2 -0
- package/dist/model/style.d.ts +2 -0
- package/dist/model/style.js +2 -0
- package/dist/model/units.cjs +55 -0
- package/dist/model/units.d.cts +20 -0
- package/dist/model/units.d.ts +20 -0
- package/dist/model/units.js +38 -0
- package/dist/nodes-pArN9ilm.d.cts +27 -0
- package/dist/nodes-pArN9ilm.d.ts +27 -0
- package/dist/odb/csv.cjs +48 -0
- package/dist/odb/csv.d.cts +14 -0
- package/dist/odb/csv.d.ts +14 -0
- package/dist/odb/csv.js +45 -0
- package/dist/odb/read.cjs +87 -0
- package/dist/odb/read.d.cts +15 -0
- package/dist/odb/read.d.ts +15 -0
- package/dist/odb/read.js +85 -0
- package/dist/odb/spreadsheet.cjs +68 -0
- package/dist/odb/spreadsheet.d.cts +6 -0
- package/dist/odb/spreadsheet.d.ts +6 -0
- package/dist/odb/spreadsheet.js +67 -0
- package/dist/odf/formula/detect.cjs +29 -0
- package/dist/odf/formula/detect.d.cts +12 -0
- package/dist/odf/formula/detect.d.ts +12 -0
- package/dist/odf/formula/detect.js +28 -0
- package/dist/odf/formula/placeholder.cjs +37 -0
- package/dist/odf/formula/placeholder.d.cts +14 -0
- package/dist/odf/formula/placeholder.d.ts +14 -0
- package/dist/odf/formula/placeholder.js +36 -0
- package/dist/odf/formula/read.cjs +32 -0
- package/dist/odf/formula/read.d.cts +11 -0
- package/dist/odf/formula/read.d.ts +11 -0
- package/dist/odf/formula/read.js +30 -0
- package/dist/odf/odg/read.cjs +15 -0
- package/dist/odf/odg/read.d.cts +6 -0
- package/dist/odf/odg/read.d.ts +6 -0
- package/dist/odf/odg/read.js +14 -0
- package/dist/odf/odp/read.cjs +45 -0
- package/dist/odf/odp/read.d.cts +11 -0
- package/dist/odf/odp/read.d.ts +11 -0
- package/dist/odf/odp/read.js +44 -0
- package/dist/odf/ods/read.cjs +15 -0
- package/dist/odf/ods/read.d.cts +6 -0
- package/dist/odf/ods/read.d.ts +6 -0
- package/dist/odf/ods/read.js +14 -0
- package/dist/odf/odt/read.cjs +43 -0
- package/dist/odf/odt/read.d.cts +11 -0
- package/dist/odf/odt/read.d.ts +11 -0
- package/dist/odf/odt/read.js +42 -0
- package/dist/odf-package/manifest.cjs +62 -0
- package/dist/odf-package/manifest.d.cts +2 -0
- package/dist/odf-package/manifest.d.ts +2 -0
- package/dist/odf-package/manifest.js +2 -0
- package/dist/odf-package/media.cjs +34 -0
- package/dist/odf-package/media.d.cts +8 -0
- package/dist/odf-package/media.d.ts +8 -0
- package/dist/odf-package/media.js +34 -0
- package/dist/ooxml/docx/read.cjs +15 -0
- package/dist/ooxml/docx/read.d.cts +6 -0
- package/dist/ooxml/docx/read.d.ts +6 -0
- package/dist/ooxml/docx/read.js +14 -0
- package/dist/ooxml/pptx/read.cjs +15 -0
- package/dist/ooxml/pptx/read.d.cts +6 -0
- package/dist/ooxml/pptx/read.d.ts +6 -0
- package/dist/ooxml/pptx/read.js +14 -0
- package/dist/opc/content-types.cjs +47 -0
- package/dist/opc/content-types.d.cts +7 -0
- package/dist/opc/content-types.d.ts +7 -0
- package/dist/opc/content-types.js +44 -0
- package/dist/opc/media.cjs +45 -0
- package/dist/opc/media.d.cts +10 -0
- package/dist/opc/media.d.ts +10 -0
- package/dist/opc/media.js +44 -0
- package/dist/opc/paths.cjs +28 -0
- package/dist/opc/paths.d.cts +5 -0
- package/dist/opc/paths.d.ts +5 -0
- package/dist/opc/paths.js +26 -0
- package/dist/opc/rels.cjs +47 -0
- package/dist/opc/rels.d.cts +10 -0
- package/dist/opc/rels.d.ts +10 -0
- package/dist/opc/rels.js +46 -0
- package/dist/paragraph-BXbXKPy3.d.cts +30 -0
- package/dist/paragraph-CoUi_88j.d.ts +30 -0
- package/dist/ports/abort.cjs +7 -0
- package/dist/ports/abort.d.cts +4 -0
- package/dist/ports/abort.d.ts +4 -0
- package/dist/ports/abort.js +6 -0
- package/dist/ports/clock.cjs +9 -0
- package/dist/ports/clock.d.cts +8 -0
- package/dist/ports/clock.d.ts +8 -0
- package/dist/ports/clock.js +7 -0
- package/dist/reader-DP0Mbaj4.d.cts +41 -0
- package/dist/reader-DP0Mbaj4.d.ts +41 -0
- package/dist/run-B3GNScJH.d.cts +38 -0
- package/dist/run-CJfh8rv3.d.ts +38 -0
- package/dist/run-D2rTWHbt.d.ts +38 -0
- package/dist/run-F8JN7Vy4.d.cts +38 -0
- package/dist/schema-Acco3Ezi.d.cts +22 -0
- package/dist/schema-VkAA6pF5.d.ts +22 -0
- package/dist/shape-BUfjw5eZ.d.cts +35 -0
- package/dist/shape-BfN3m52m.d.ts +30 -0
- package/dist/shape-CN2ycxOo.d.cts +30 -0
- package/dist/shape-CTkl6kt8.d.ts +35 -0
- package/dist/style-DkamR3aY.d.cts +2 -0
- package/dist/style-DkamR3aY.d.ts +2 -0
- package/dist/vector-ClohqsOe.d.cts +76 -0
- package/dist/vector-ClohqsOe.d.ts +76 -0
- package/dist/xml/edit.cjs +65 -0
- package/dist/xml/edit.d.cts +12 -0
- package/dist/xml/edit.d.ts +12 -0
- package/dist/xml/edit.js +57 -0
- package/dist/xml/entities.cjs +12 -0
- package/dist/xml/entities.d.cts +5 -0
- package/dist/xml/entities.d.ts +5 -0
- package/dist/xml/entities.js +10 -0
- package/dist/xml/fragment.cjs +22 -0
- package/dist/xml/fragment.d.cts +6 -0
- package/dist/xml/fragment.d.ts +6 -0
- package/dist/xml/fragment.js +20 -0
- package/dist/xml/odf-text.cjs +53 -0
- package/dist/xml/odf-text.d.cts +6 -0
- package/dist/xml/odf-text.d.ts +6 -0
- package/dist/xml/odf-text.js +51 -0
- package/dist/xml/query.cjs +33 -0
- package/dist/xml/query.d.cts +12 -0
- package/dist/xml/query.d.ts +12 -0
- package/dist/xml/query.js +29 -0
- package/package.json +9 -1
|
@@ -0,0 +1,450 @@
|
|
|
1
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
+
//#region src/hsqldb/script.ts
|
|
3
|
+
var HsqldbScriptParseError = class extends Error {
|
|
4
|
+
statement;
|
|
5
|
+
constructor(message, statement) {
|
|
6
|
+
super(`HSQLDB script parse error: ${message} -- in statement: ${truncateForMessage(statement)}`);
|
|
7
|
+
this.name = "HsqldbScriptParseError";
|
|
8
|
+
this.statement = statement;
|
|
9
|
+
}
|
|
10
|
+
};
|
|
11
|
+
const MESSAGE_STATEMENT_PREVIEW_LENGTH = 200;
|
|
12
|
+
function truncateForMessage(statement) {
|
|
13
|
+
return statement.length > MESSAGE_STATEMENT_PREVIEW_LENGTH ? `${statement.slice(0, MESSAGE_STATEMENT_PREVIEW_LENGTH)}...` : statement;
|
|
14
|
+
}
|
|
15
|
+
function displayTextFor(value) {
|
|
16
|
+
switch (value.kind) {
|
|
17
|
+
case "number": return String(value.value);
|
|
18
|
+
case "percentage": return `${value.value * 100}%`;
|
|
19
|
+
case "currency": return value.currency === void 0 ? String(value.value) : `${value.value} ${value.currency}`;
|
|
20
|
+
case "boolean": return value.value ? "TRUE" : "FALSE";
|
|
21
|
+
case "date":
|
|
22
|
+
case "time":
|
|
23
|
+
case "string":
|
|
24
|
+
case "error": return value.value;
|
|
25
|
+
case "empty": return "";
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
const IGNORABLE_STATEMENT_PREFIXES = [
|
|
29
|
+
"SET DATABASE",
|
|
30
|
+
"SET FILES",
|
|
31
|
+
"SET SCHEMA",
|
|
32
|
+
"SET TABLE",
|
|
33
|
+
"SET WRITE_DELAY",
|
|
34
|
+
"SET AUTOCOMMIT",
|
|
35
|
+
"SET IGNORECASE",
|
|
36
|
+
"SET REFERENTIAL_INTEGRITY",
|
|
37
|
+
"SET PROPERTY",
|
|
38
|
+
"SET PASSWORD",
|
|
39
|
+
"SET LOGSIZE",
|
|
40
|
+
"SET SCALE",
|
|
41
|
+
"SET LOCAL",
|
|
42
|
+
"CREATE USER",
|
|
43
|
+
"ALTER USER",
|
|
44
|
+
"DROP USER",
|
|
45
|
+
"CREATE SCHEMA",
|
|
46
|
+
"DROP SCHEMA",
|
|
47
|
+
"GRANT",
|
|
48
|
+
"REVOKE",
|
|
49
|
+
"CREATE SEQUENCE",
|
|
50
|
+
"ALTER SEQUENCE",
|
|
51
|
+
"DROP SEQUENCE",
|
|
52
|
+
"CREATE INDEX",
|
|
53
|
+
"CREATE UNIQUE INDEX",
|
|
54
|
+
"DROP INDEX",
|
|
55
|
+
"ALTER TABLE",
|
|
56
|
+
"CREATE VIEW",
|
|
57
|
+
"DROP VIEW",
|
|
58
|
+
"CREATE TRIGGER",
|
|
59
|
+
"DROP TRIGGER",
|
|
60
|
+
"CREATE FUNCTION",
|
|
61
|
+
"CREATE PROCEDURE",
|
|
62
|
+
"CREATE AGGREGATE FUNCTION",
|
|
63
|
+
"DROP FUNCTION",
|
|
64
|
+
"DROP PROCEDURE",
|
|
65
|
+
"CREATE TYPE",
|
|
66
|
+
"CREATE DOMAIN",
|
|
67
|
+
"COMMENT ON",
|
|
68
|
+
"CHECKPOINT",
|
|
69
|
+
"CONNECT",
|
|
70
|
+
"DISCONNECT",
|
|
71
|
+
"SHUTDOWN"
|
|
72
|
+
];
|
|
73
|
+
function isIgnorableStatement(statement) {
|
|
74
|
+
const normalized = statement.replace(/\s+/g, " ").trim().toUpperCase();
|
|
75
|
+
return IGNORABLE_STATEMENT_PREFIXES.some((prefix) => normalized.startsWith(prefix));
|
|
76
|
+
}
|
|
77
|
+
const CREATE_TABLE_RE = /^CREATE\s+(?:(?:MEMORY|CACHED|TEXT|TEMP|TEMPORARY|GLOBAL\s+TEMPORARY)\s+)?TABLE\s+/i;
|
|
78
|
+
const INSERT_INTO_RE = /^INSERT\s+INTO\s+/i;
|
|
79
|
+
const TABLE_CONSTRAINT_KEYWORDS = /* @__PURE__ */ new Set([
|
|
80
|
+
"PRIMARY",
|
|
81
|
+
"FOREIGN",
|
|
82
|
+
"UNIQUE",
|
|
83
|
+
"CHECK",
|
|
84
|
+
"CONSTRAINT"
|
|
85
|
+
]);
|
|
86
|
+
function splitStatements(text) {
|
|
87
|
+
const statements = [];
|
|
88
|
+
let current = "";
|
|
89
|
+
let inSingleQuote = false;
|
|
90
|
+
let inDoubleQuote = false;
|
|
91
|
+
for (let i = 0; i < text.length; i++) {
|
|
92
|
+
const ch = text.charAt(i);
|
|
93
|
+
if (inSingleQuote) {
|
|
94
|
+
current += ch;
|
|
95
|
+
if (ch === "'") if (text.charAt(i + 1) === "'") {
|
|
96
|
+
current += text.charAt(i + 1);
|
|
97
|
+
i++;
|
|
98
|
+
} else inSingleQuote = false;
|
|
99
|
+
continue;
|
|
100
|
+
}
|
|
101
|
+
if (inDoubleQuote) {
|
|
102
|
+
current += ch;
|
|
103
|
+
if (ch === "\"") if (text.charAt(i + 1) === "\"") {
|
|
104
|
+
current += text.charAt(i + 1);
|
|
105
|
+
i++;
|
|
106
|
+
} else inDoubleQuote = false;
|
|
107
|
+
continue;
|
|
108
|
+
}
|
|
109
|
+
if (ch === "'") {
|
|
110
|
+
inSingleQuote = true;
|
|
111
|
+
current += ch;
|
|
112
|
+
continue;
|
|
113
|
+
}
|
|
114
|
+
if (ch === "\"") {
|
|
115
|
+
inDoubleQuote = true;
|
|
116
|
+
current += ch;
|
|
117
|
+
continue;
|
|
118
|
+
}
|
|
119
|
+
if (ch === "\n") {
|
|
120
|
+
const trimmed = current.trim();
|
|
121
|
+
if (trimmed.length > 0) statements.push(trimmed);
|
|
122
|
+
current = "";
|
|
123
|
+
continue;
|
|
124
|
+
}
|
|
125
|
+
current += ch;
|
|
126
|
+
}
|
|
127
|
+
const tail = current.trim();
|
|
128
|
+
if (tail.length > 0) statements.push(tail);
|
|
129
|
+
return statements;
|
|
130
|
+
}
|
|
131
|
+
function skipWs(s, start) {
|
|
132
|
+
let i = start;
|
|
133
|
+
while (i < s.length && /\s/.test(s.charAt(i))) i++;
|
|
134
|
+
return i;
|
|
135
|
+
}
|
|
136
|
+
function readIdentifier(s, start) {
|
|
137
|
+
const i0 = skipWs(s, start);
|
|
138
|
+
if (s.charAt(i0) === "\"") {
|
|
139
|
+
let name = "";
|
|
140
|
+
let i = i0 + 1;
|
|
141
|
+
while (i < s.length) {
|
|
142
|
+
const ch = s.charAt(i);
|
|
143
|
+
if (ch === "\"") {
|
|
144
|
+
if (s.charAt(i + 1) === "\"") {
|
|
145
|
+
name += "\"";
|
|
146
|
+
i += 2;
|
|
147
|
+
continue;
|
|
148
|
+
}
|
|
149
|
+
i++;
|
|
150
|
+
break;
|
|
151
|
+
}
|
|
152
|
+
name += ch;
|
|
153
|
+
i++;
|
|
154
|
+
}
|
|
155
|
+
return {
|
|
156
|
+
name,
|
|
157
|
+
next: i
|
|
158
|
+
};
|
|
159
|
+
}
|
|
160
|
+
let i = i0;
|
|
161
|
+
while (i < s.length && /[A-Za-z0-9_$#]/.test(s.charAt(i))) i++;
|
|
162
|
+
return {
|
|
163
|
+
name: s.slice(i0, i),
|
|
164
|
+
next: i
|
|
165
|
+
};
|
|
166
|
+
}
|
|
167
|
+
function readQualifiedName(s, start) {
|
|
168
|
+
const first = readIdentifier(s, start);
|
|
169
|
+
let last = first.name;
|
|
170
|
+
let i = first.next;
|
|
171
|
+
while (s.charAt(i) === ".") {
|
|
172
|
+
const segment = readIdentifier(s, i + 1);
|
|
173
|
+
last = segment.name;
|
|
174
|
+
i = segment.next;
|
|
175
|
+
}
|
|
176
|
+
return {
|
|
177
|
+
last,
|
|
178
|
+
next: i
|
|
179
|
+
};
|
|
180
|
+
}
|
|
181
|
+
function readBalancedParens(s, openIndex) {
|
|
182
|
+
let depth = 0;
|
|
183
|
+
let inSingleQuote = false;
|
|
184
|
+
let inDoubleQuote = false;
|
|
185
|
+
let i = openIndex;
|
|
186
|
+
for (; i < s.length; i++) {
|
|
187
|
+
const ch = s.charAt(i);
|
|
188
|
+
if (inSingleQuote) {
|
|
189
|
+
if (ch === "'") {
|
|
190
|
+
if (s.charAt(i + 1) === "'") {
|
|
191
|
+
i++;
|
|
192
|
+
continue;
|
|
193
|
+
}
|
|
194
|
+
inSingleQuote = false;
|
|
195
|
+
}
|
|
196
|
+
continue;
|
|
197
|
+
}
|
|
198
|
+
if (inDoubleQuote) {
|
|
199
|
+
if (ch === "\"") {
|
|
200
|
+
if (s.charAt(i + 1) === "\"") {
|
|
201
|
+
i++;
|
|
202
|
+
continue;
|
|
203
|
+
}
|
|
204
|
+
inDoubleQuote = false;
|
|
205
|
+
}
|
|
206
|
+
continue;
|
|
207
|
+
}
|
|
208
|
+
if (ch === "'") {
|
|
209
|
+
inSingleQuote = true;
|
|
210
|
+
continue;
|
|
211
|
+
}
|
|
212
|
+
if (ch === "\"") {
|
|
213
|
+
inDoubleQuote = true;
|
|
214
|
+
continue;
|
|
215
|
+
}
|
|
216
|
+
if (ch === "(") {
|
|
217
|
+
depth++;
|
|
218
|
+
continue;
|
|
219
|
+
}
|
|
220
|
+
if (ch === ")") {
|
|
221
|
+
depth--;
|
|
222
|
+
if (depth === 0) return {
|
|
223
|
+
inner: s.slice(openIndex + 1, i),
|
|
224
|
+
next: i + 1
|
|
225
|
+
};
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
throw new HsqldbScriptParseError("unterminated parenthesis", s);
|
|
229
|
+
}
|
|
230
|
+
function splitTopLevel(s, sep) {
|
|
231
|
+
const parts = [];
|
|
232
|
+
let current = "";
|
|
233
|
+
let depth = 0;
|
|
234
|
+
let inSingleQuote = false;
|
|
235
|
+
let inDoubleQuote = false;
|
|
236
|
+
for (let i = 0; i < s.length; i++) {
|
|
237
|
+
const ch = s.charAt(i);
|
|
238
|
+
if (inSingleQuote) {
|
|
239
|
+
current += ch;
|
|
240
|
+
if (ch === "'") if (s.charAt(i + 1) === "'") {
|
|
241
|
+
current += s.charAt(i + 1);
|
|
242
|
+
i++;
|
|
243
|
+
} else inSingleQuote = false;
|
|
244
|
+
continue;
|
|
245
|
+
}
|
|
246
|
+
if (inDoubleQuote) {
|
|
247
|
+
current += ch;
|
|
248
|
+
if (ch === "\"") if (s.charAt(i + 1) === "\"") {
|
|
249
|
+
current += s.charAt(i + 1);
|
|
250
|
+
i++;
|
|
251
|
+
} else inDoubleQuote = false;
|
|
252
|
+
continue;
|
|
253
|
+
}
|
|
254
|
+
if (ch === "'") {
|
|
255
|
+
inSingleQuote = true;
|
|
256
|
+
current += ch;
|
|
257
|
+
continue;
|
|
258
|
+
}
|
|
259
|
+
if (ch === "\"") {
|
|
260
|
+
inDoubleQuote = true;
|
|
261
|
+
current += ch;
|
|
262
|
+
continue;
|
|
263
|
+
}
|
|
264
|
+
if (ch === "(") {
|
|
265
|
+
depth++;
|
|
266
|
+
current += ch;
|
|
267
|
+
continue;
|
|
268
|
+
}
|
|
269
|
+
if (ch === ")") {
|
|
270
|
+
depth--;
|
|
271
|
+
current += ch;
|
|
272
|
+
continue;
|
|
273
|
+
}
|
|
274
|
+
if (ch === sep && depth === 0) {
|
|
275
|
+
parts.push(current);
|
|
276
|
+
current = "";
|
|
277
|
+
continue;
|
|
278
|
+
}
|
|
279
|
+
current += ch;
|
|
280
|
+
}
|
|
281
|
+
parts.push(current);
|
|
282
|
+
return parts;
|
|
283
|
+
}
|
|
284
|
+
function unescapeSingleQuotes(s) {
|
|
285
|
+
return s.replace(/''/g, "'");
|
|
286
|
+
}
|
|
287
|
+
function typeBucket(typeText) {
|
|
288
|
+
const word = /^([A-Za-z_]+)/.exec(typeText.trim())?.[1]?.toUpperCase();
|
|
289
|
+
if (word === "DATE") return "date";
|
|
290
|
+
if (word === "TIME") return "time";
|
|
291
|
+
return "other";
|
|
292
|
+
}
|
|
293
|
+
const NUMBER_LITERAL_RE = /^[-+]?\d+(?:\.\d+)?(?:[eE][-+]?\d+)?$/;
|
|
294
|
+
function parseLiteral(raw, bucket) {
|
|
295
|
+
const trimmed = raw.trim();
|
|
296
|
+
if (/^NULL$/i.test(trimmed)) return { kind: "empty" };
|
|
297
|
+
const dateTyped = /^DATE\s*'((?:[^']|'')*)'$/i.exec(trimmed);
|
|
298
|
+
if (dateTyped?.[1] !== void 0) return {
|
|
299
|
+
kind: "date",
|
|
300
|
+
value: unescapeSingleQuotes(dateTyped[1])
|
|
301
|
+
};
|
|
302
|
+
const timeTyped = /^TIME\s*'((?:[^']|'')*)'$/i.exec(trimmed);
|
|
303
|
+
if (timeTyped?.[1] !== void 0) return {
|
|
304
|
+
kind: "time",
|
|
305
|
+
value: unescapeSingleQuotes(timeTyped[1])
|
|
306
|
+
};
|
|
307
|
+
const timestampTyped = /^TIMESTAMP\s*'((?:[^']|'')*)'$/i.exec(trimmed);
|
|
308
|
+
if (timestampTyped?.[1] !== void 0) return {
|
|
309
|
+
kind: "date",
|
|
310
|
+
value: unescapeSingleQuotes(timestampTyped[1])
|
|
311
|
+
};
|
|
312
|
+
if (trimmed.length >= 2 && trimmed.startsWith("'") && trimmed.endsWith("'")) {
|
|
313
|
+
const text = unescapeSingleQuotes(trimmed.slice(1, -1));
|
|
314
|
+
if (bucket === "date") return {
|
|
315
|
+
kind: "date",
|
|
316
|
+
value: text
|
|
317
|
+
};
|
|
318
|
+
if (bucket === "time") return {
|
|
319
|
+
kind: "time",
|
|
320
|
+
value: text
|
|
321
|
+
};
|
|
322
|
+
return {
|
|
323
|
+
kind: "string",
|
|
324
|
+
value: text
|
|
325
|
+
};
|
|
326
|
+
}
|
|
327
|
+
if (/^TRUE$/i.test(trimmed)) return {
|
|
328
|
+
kind: "boolean",
|
|
329
|
+
value: true
|
|
330
|
+
};
|
|
331
|
+
if (/^FALSE$/i.test(trimmed)) return {
|
|
332
|
+
kind: "boolean",
|
|
333
|
+
value: false
|
|
334
|
+
};
|
|
335
|
+
if (NUMBER_LITERAL_RE.test(trimmed)) return {
|
|
336
|
+
kind: "number",
|
|
337
|
+
value: Number(trimmed)
|
|
338
|
+
};
|
|
339
|
+
throw new HsqldbScriptParseError(`unrecognised literal "${trimmed}"`, raw);
|
|
340
|
+
}
|
|
341
|
+
function parseCreateTable(statement) {
|
|
342
|
+
const match = CREATE_TABLE_RE.exec(statement);
|
|
343
|
+
if (match === null) throw new HsqldbScriptParseError("expected a CREATE TABLE statement", statement);
|
|
344
|
+
const afterKeyword = match[0].length;
|
|
345
|
+
const { last: tableName, next } = readQualifiedName(statement, afterKeyword);
|
|
346
|
+
const openIndex = skipWs(statement, next);
|
|
347
|
+
if (statement.charAt(openIndex) !== "(") throw new HsqldbScriptParseError(`CREATE TABLE "${tableName}": expected "(" to start the column list`, statement);
|
|
348
|
+
const { inner } = readBalancedParens(statement, openIndex);
|
|
349
|
+
const columns = [];
|
|
350
|
+
for (const rawPart of splitTopLevel(inner, ",")) {
|
|
351
|
+
const part = rawPart.trim();
|
|
352
|
+
if (part.length === 0) continue;
|
|
353
|
+
const leadingWord = /^([A-Za-z_][A-Za-z0-9_]*)/.exec(part)?.[1]?.toUpperCase();
|
|
354
|
+
if (leadingWord !== void 0 && TABLE_CONSTRAINT_KEYWORDS.has(leadingWord)) continue;
|
|
355
|
+
const { name, next: afterName } = readIdentifier(part, 0);
|
|
356
|
+
if (name.length === 0) throw new HsqldbScriptParseError(`CREATE TABLE "${tableName}": could not read a column name from "${part}"`, statement);
|
|
357
|
+
columns.push({
|
|
358
|
+
name,
|
|
359
|
+
type: part.slice(afterName).trim()
|
|
360
|
+
});
|
|
361
|
+
}
|
|
362
|
+
if (columns.length === 0) throw new HsqldbScriptParseError(`CREATE TABLE "${tableName}": no columns found`, statement);
|
|
363
|
+
return {
|
|
364
|
+
tableName,
|
|
365
|
+
columns
|
|
366
|
+
};
|
|
367
|
+
}
|
|
368
|
+
function parseInsertInto(statement) {
|
|
369
|
+
const match = INSERT_INTO_RE.exec(statement);
|
|
370
|
+
if (match === null) throw new HsqldbScriptParseError("expected an INSERT INTO statement", statement);
|
|
371
|
+
const { last: tableName, next } = readQualifiedName(statement, match[0].length);
|
|
372
|
+
let i = skipWs(statement, next);
|
|
373
|
+
let explicitColumns;
|
|
374
|
+
if (statement.charAt(i) === "(") {
|
|
375
|
+
const { inner, next: afterCols } = readBalancedParens(statement, i);
|
|
376
|
+
explicitColumns = splitTopLevel(inner, ",").map((part) => readIdentifier(part.trim(), 0).name);
|
|
377
|
+
i = skipWs(statement, afterCols);
|
|
378
|
+
}
|
|
379
|
+
const valuesMatch = /^VALUES\s*/i.exec(statement.slice(i));
|
|
380
|
+
if (valuesMatch === null) throw new HsqldbScriptParseError(`INSERT INTO "${tableName}": expected the VALUES keyword`, statement);
|
|
381
|
+
i = skipWs(statement, i + valuesMatch[0].length);
|
|
382
|
+
if (statement.charAt(i) !== "(") throw new HsqldbScriptParseError(`INSERT INTO "${tableName}": expected "(" to start the VALUES tuple`, statement);
|
|
383
|
+
const { inner, next: afterTuple } = readBalancedParens(statement, i);
|
|
384
|
+
const trailing = statement.slice(afterTuple).trim();
|
|
385
|
+
if (trailing.length > 0) throw new HsqldbScriptParseError(`INSERT INTO "${tableName}": unexpected trailing content after the VALUES tuple ("${trailing}") -- multiple tuples per INSERT are outside this bounded parser's scope`, statement);
|
|
386
|
+
return {
|
|
387
|
+
tableName,
|
|
388
|
+
explicitColumns,
|
|
389
|
+
values: splitTopLevel(inner, ",").map((value) => value.trim())
|
|
390
|
+
};
|
|
391
|
+
}
|
|
392
|
+
function resolveColumnOrder(table, explicitColumns, statement) {
|
|
393
|
+
if (explicitColumns === void 0) return table.columns.map((_, index) => index);
|
|
394
|
+
return explicitColumns.map((name) => {
|
|
395
|
+
const index = table.columns.findIndex((column) => column.name.toUpperCase() === name.toUpperCase());
|
|
396
|
+
if (index === -1) throw new HsqldbScriptParseError(`INSERT INTO "${table.tableName}": column "${name}" is not declared on this table`, statement);
|
|
397
|
+
return index;
|
|
398
|
+
});
|
|
399
|
+
}
|
|
400
|
+
function parseHsqldbScript(bytes) {
|
|
401
|
+
const text = new TextDecoder("utf-8", { fatal: true }).decode(bytes);
|
|
402
|
+
const tablesByKey = /* @__PURE__ */ new Map();
|
|
403
|
+
const order = [];
|
|
404
|
+
for (const statement of splitStatements(text)) {
|
|
405
|
+
if (CREATE_TABLE_RE.test(statement)) {
|
|
406
|
+
const { tableName, columns } = parseCreateTable(statement);
|
|
407
|
+
const key = tableName.toUpperCase();
|
|
408
|
+
if (tablesByKey.has(key)) throw new HsqldbScriptParseError(`duplicate CREATE TABLE for "${tableName}"`, statement);
|
|
409
|
+
tablesByKey.set(key, {
|
|
410
|
+
tableName,
|
|
411
|
+
columns,
|
|
412
|
+
rows: []
|
|
413
|
+
});
|
|
414
|
+
order.push(key);
|
|
415
|
+
continue;
|
|
416
|
+
}
|
|
417
|
+
if (INSERT_INTO_RE.test(statement)) {
|
|
418
|
+
const { tableName, explicitColumns, values } = parseInsertInto(statement);
|
|
419
|
+
const key = tableName.toUpperCase();
|
|
420
|
+
const table = tablesByKey.get(key);
|
|
421
|
+
if (table === void 0) throw new HsqldbScriptParseError(`INSERT INTO references unknown table "${tableName}" (no prior CREATE TABLE seen for it)`, statement);
|
|
422
|
+
const columnOrder = resolveColumnOrder(table, explicitColumns, statement);
|
|
423
|
+
if (values.length !== columnOrder.length) throw new HsqldbScriptParseError(`INSERT INTO "${tableName}": expected ${columnOrder.length} value(s), found ${values.length}`, statement);
|
|
424
|
+
const row = table.columns.map(() => ({ kind: "empty" }));
|
|
425
|
+
columnOrder.forEach((columnIndex, position) => {
|
|
426
|
+
const column = table.columns[columnIndex];
|
|
427
|
+
const rawValue = values[position];
|
|
428
|
+
if (column === void 0 || rawValue === void 0) throw new HsqldbScriptParseError(`INSERT INTO "${tableName}": internal column/value alignment failure`, statement);
|
|
429
|
+
row[columnIndex] = parseLiteral(rawValue, typeBucket(column.type));
|
|
430
|
+
});
|
|
431
|
+
table.rows.push(row);
|
|
432
|
+
continue;
|
|
433
|
+
}
|
|
434
|
+
if (isIgnorableStatement(statement)) continue;
|
|
435
|
+
throw new HsqldbScriptParseError("unrecognised statement (not CREATE TABLE, INSERT INTO, or a known ignorable statement kind)", statement);
|
|
436
|
+
}
|
|
437
|
+
return order.map((key) => {
|
|
438
|
+
const table = tablesByKey.get(key);
|
|
439
|
+
if (table === void 0) throw new HsqldbScriptParseError(`internal error: table "${key}" missing from tracking map`, "");
|
|
440
|
+
return {
|
|
441
|
+
tableName: table.tableName,
|
|
442
|
+
columns: table.columns,
|
|
443
|
+
rows: table.rows
|
|
444
|
+
};
|
|
445
|
+
});
|
|
446
|
+
}
|
|
447
|
+
//#endregion
|
|
448
|
+
exports.HsqldbScriptParseError = HsqldbScriptParseError;
|
|
449
|
+
exports.displayTextFor = displayTextFor;
|
|
450
|
+
exports.parseHsqldbScript = parseHsqldbScript;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { ContentCellValue } from "document-schema.js";
|
|
2
|
+
//#region src/hsqldb/script.d.ts
|
|
3
|
+
declare class HsqldbScriptParseError extends Error {
|
|
4
|
+
readonly statement: string;
|
|
5
|
+
constructor(message: string, statement: string);
|
|
6
|
+
}
|
|
7
|
+
interface HsqldbColumn {
|
|
8
|
+
readonly name: string;
|
|
9
|
+
readonly type: string;
|
|
10
|
+
}
|
|
11
|
+
interface HsqldbTable {
|
|
12
|
+
readonly tableName: string;
|
|
13
|
+
readonly columns: readonly HsqldbColumn[];
|
|
14
|
+
readonly rows: readonly (readonly ContentCellValue[])[];
|
|
15
|
+
}
|
|
16
|
+
declare function displayTextFor(value: ContentCellValue): string;
|
|
17
|
+
declare function parseHsqldbScript(bytes: Uint8Array): HsqldbTable[];
|
|
18
|
+
//#endregion
|
|
19
|
+
export { HsqldbColumn, HsqldbScriptParseError, HsqldbTable, displayTextFor, parseHsqldbScript };
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { ContentCellValue } from "document-schema.js";
|
|
2
|
+
//#region src/hsqldb/script.d.ts
|
|
3
|
+
declare class HsqldbScriptParseError extends Error {
|
|
4
|
+
readonly statement: string;
|
|
5
|
+
constructor(message: string, statement: string);
|
|
6
|
+
}
|
|
7
|
+
interface HsqldbColumn {
|
|
8
|
+
readonly name: string;
|
|
9
|
+
readonly type: string;
|
|
10
|
+
}
|
|
11
|
+
interface HsqldbTable {
|
|
12
|
+
readonly tableName: string;
|
|
13
|
+
readonly columns: readonly HsqldbColumn[];
|
|
14
|
+
readonly rows: readonly (readonly ContentCellValue[])[];
|
|
15
|
+
}
|
|
16
|
+
declare function displayTextFor(value: ContentCellValue): string;
|
|
17
|
+
declare function parseHsqldbScript(bytes: Uint8Array): HsqldbTable[];
|
|
18
|
+
//#endregion
|
|
19
|
+
export { HsqldbColumn, HsqldbScriptParseError, HsqldbTable, displayTextFor, parseHsqldbScript };
|