oasis-editor 0.0.113 → 0.0.115

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (31) hide show
  1. package/dist/{OasisEditorApp-BKPrQtm5.js → OasisEditorApp-C1dyjJoH.js} +903 -1161
  2. package/dist/assets/{importDocxWorker-Bz2kZOBO.js → importDocxWorker-D0F0jbcF.js} +1 -1
  3. package/dist/core/decorationGeometry.d.ts +10 -0
  4. package/dist/core/gradientAxis.d.ts +11 -0
  5. package/dist/core/textStyleMappings.d.ts +4 -0
  6. package/dist/export/pdf/draw/drawFragment.d.ts +4 -4
  7. package/dist/export/pdf/draw/fragment/pdfColor.d.ts +1 -0
  8. package/dist/export/pdf/draw/fragment/pdfEmphasisAndTabLeaders.d.ts +5 -0
  9. package/dist/export/pdf/draw/fragment/pdfGradient.d.ts +4 -0
  10. package/dist/export/pdf/draw/fragment/pdfRunBackground.d.ts +12 -0
  11. package/dist/export/pdf/draw/fragment/pdfTextChunks.d.ts +25 -0
  12. package/dist/export/pdf/draw/fragment/pdfTextDecoration.d.ts +4 -0
  13. package/dist/{index-DSDwe-yy.js → index-Cq3YFYX2.js} +1007 -1001
  14. package/dist/oasis-editor.js +50 -50
  15. package/dist/oasis-editor.umd.cjs +4 -4
  16. package/dist/text/fonts/opentype/otLayoutCommon.d.ts +6 -0
  17. package/dist/ui/canvas/CanvasTableLayout.d.ts +12 -63
  18. package/dist/ui/canvas/canvasBorders.d.ts +1 -0
  19. package/dist/ui/canvas/canvasParagraphPainter.d.ts +4 -22
  20. package/dist/ui/canvas/paragraph/canvasEmphasis.d.ts +3 -0
  21. package/dist/ui/canvas/paragraph/canvasInlineImage.d.ts +26 -0
  22. package/dist/ui/canvas/paragraph/canvasRunBackground.d.ts +13 -0
  23. package/dist/ui/canvas/paragraph/canvasTabLeaders.d.ts +4 -0
  24. package/dist/ui/canvas/paragraph/canvasTextDecoration.d.ts +4 -0
  25. package/dist/ui/canvas/paragraph/canvasTextEffects.d.ts +43 -0
  26. package/dist/ui/canvas/table/assembleCellEntries.d.ts +15 -0
  27. package/dist/ui/canvas/table/prepareCells.d.ts +53 -0
  28. package/dist/ui/canvas/table/resolveRowHeights.d.ts +9 -0
  29. package/dist/ui/canvas/table/tableCellGeometry.d.ts +37 -0
  30. package/dist/ui/canvas/table/types.d.ts +63 -0
  31. package/package.json +1 -1
@@ -16,6 +16,8 @@ import { BinaryReader } from '../../truetype/BinaryReader.js';
16
16
  export type Coverage = (glyphId: number) => number;
17
17
  /** Returns the class of a glyph id (0 when unlisted). */
18
18
  export type ClassLookup = (glyphId: number) => number;
19
+ export declare function readU16Array(reader: BinaryReader, count: number): number[];
20
+ export declare function readU16OffsetArray(reader: BinaryReader, count: number, baseOffset: number): number[];
19
21
  export declare function parseCoverage(reader: BinaryReader, offset: number): Coverage;
20
22
  export declare function parseClassDef(reader: BinaryReader, offset: number): ClassLookup;
21
23
  /** The common header of a Layout table: feature→lookup map + lookup-list offset. */
@@ -34,5 +36,9 @@ export interface LayoutTableHeader {
34
36
  * parses the LookupList itself (its subtables are table-specific).
35
37
  */
36
38
  export declare function parseLayoutTableHeader(reader: BinaryReader): LayoutTableHeader;
39
+ export declare function parseLookupList<TSubtable>(reader: BinaryReader, lookupListOffset: number, parseSubtable: (reader: BinaryReader, offset: number, lookupType: number) => TSubtable | null): Array<{
40
+ lookupType: number;
41
+ subtables: TSubtable[];
42
+ }>;
37
43
  /** Ordered (ascending) unique lookup indices referenced by the given tags. */
38
44
  export declare function collectLookupIndices(featureToLookups: Map<string, number[]>, tags: readonly string[]): number[];
@@ -1,73 +1,22 @@
1
- import { EditorParagraphNode, EditorPosition, EditorState, EditorTableNode, EditorRevisionMetadata } from '../../core/model.js';
2
- import { projectParagraphLayout } from '../../layoutProjection/index.js';
3
- import { VerticalRenderMode } from './verticalText.js';
1
+ import { EditorState, EditorTableNode } from '../../core/model.js';
4
2
 
5
- export declare function resolveCanvasTableWidth(table: EditorTableNode, contentWidth: number): number;
6
- export type CanvasUnsupportedReason = "unsupported:v-span" | "unsupported:v-merge" | "unsupported:nested-table";
7
- export interface CanvasTableBorderSpec {
8
- width: number;
9
- color: string;
10
- type: "solid" | "dashed" | "dotted" | "none";
11
- }
12
- export interface CanvasTableParagraphLayoutEntry {
13
- paragraph: EditorParagraphNode;
14
- lines: ReturnType<typeof projectParagraphLayout>["lines"];
3
+ export type { CanvasUnsupportedReason, CanvasTableBorderSpec, CanvasTableParagraphLayoutEntry, CanvasTableCellLayoutEntry, CanvasTableLayoutResult, } from './table/types.js';
4
+ export { resolveCanvasTableWidth } from './table/tableCellGeometry.js';
5
+ export declare function buildCanvasTableLayout(options: {
6
+ table: EditorTableNode;
7
+ state: EditorState;
8
+ pageIndex: number;
15
9
  originX: number;
16
10
  originY: number;
17
- width: number;
18
- height: number;
19
- }
20
- export interface CanvasTableCellLayoutEntry {
21
- tableId: string;
22
- rowIndex: number;
23
- cellIndex: number;
24
- left: number;
25
- top: number;
26
- width: number;
27
- height: number;
28
- contentLeft: number;
29
- contentTop: number;
30
11
  contentWidth: number;
31
- contentHeight: number;
32
- shading?: string;
33
- anchorPosition: EditorPosition;
34
- padding: {
35
- top: number;
36
- right: number;
37
- bottom: number;
38
- left: number;
39
- };
40
- borders: {
41
- top: CanvasTableBorderSpec;
42
- right: CanvasTableBorderSpec;
43
- bottom: CanvasTableBorderSpec;
44
- left: CanvasTableBorderSpec;
45
- topLeftToBottomRight?: CanvasTableBorderSpec;
46
- topRightToBottomLeft?: CanvasTableBorderSpec;
47
- };
48
- paragraphs: CanvasTableParagraphLayoutEntry[];
49
- /** Vertical text flow inside this cell (`horizontal` when not rotated). */
50
- verticalMode: VerticalRenderMode;
51
- revision?: EditorRevisionMetadata & {
52
- type: "insert" | "delete" | "merge" | "property";
53
- };
54
- }
55
- export interface CanvasTableLayoutResult {
12
+ estimatedHeight: number;
13
+ }): {
56
14
  tableId: string;
57
15
  left: number;
58
16
  top: number;
59
17
  width: number;
60
18
  height: number;
61
19
  rowHeights: number[];
62
- cells: CanvasTableCellLayoutEntry[];
63
- unsupported: CanvasUnsupportedReason[];
64
- }
65
- export declare function buildCanvasTableLayout(options: {
66
- table: EditorTableNode;
67
- state: EditorState;
68
- pageIndex: number;
69
- originX: number;
70
- originY: number;
71
- contentWidth: number;
72
- estimatedHeight: number;
73
- }): CanvasTableLayoutResult;
20
+ cells: import('./CanvasTableLayout.js').CanvasTableCellLayoutEntry[];
21
+ unsupported: import('./CanvasTableLayout.js').CanvasUnsupportedReason[];
22
+ };
@@ -1,3 +1,4 @@
1
+ export declare const DEG_TO_RAD: number;
1
2
  /** Canvas `setLineDash` pattern for dashed borders (dash length, gap length). */
2
3
  export declare const CANVAS_DASH_DASHED: [number, number];
3
4
  /** Canvas `setLineDash` pattern for dotted borders (dash length, gap length). */
@@ -1,26 +1,8 @@
1
- import { EditorLayoutLine, EditorPageSettings, EditorParagraphNode, EditorState } from '../../core/model.js';
1
+ import { EditorLayoutLine, EditorParagraphNode, EditorState } from '../../core/model.js';
2
2
  import { CanvasBlockPainters } from './canvasBlockPainters.js';
3
+ import { drawFloatingImagesForParagraph } from './paragraph/canvasInlineImage.js';
3
4
 
4
5
  export { applyCanvasTextFeatureHints, resolveCanvasFontFamily, resolveCanvasTextRenderMetrics, resolveCanvasRunPaintStyle, } from './canvasFontResolution.js';
5
- /**
6
- * Paints the floating images anchored within a paragraph, mirroring
7
- * `drawFloatingTextBoxesForParagraph`. Split into `behind`/`front` layers so a
8
- * `behindDoc` image renders under the text and others render over it.
9
- */
10
- export declare function drawFloatingImagesForParagraph(options: {
11
- ctx: CanvasRenderingContext2D;
12
- paragraphLines: EditorLayoutLine[];
13
- state: EditorState;
14
- pageSettings: EditorPageSettings;
15
- contentLeft: number;
16
- contentTop: number;
17
- contentWidth: number;
18
- paragraphTop: number;
19
- onUpdate: () => void;
20
- layer: "behind" | "front";
21
- }): void;
6
+ export { resolveFragmentPaintBounds } from './paragraph/canvasRunBackground.js';
7
+ export { drawFloatingImagesForParagraph };
22
8
  export declare function drawParagraph(ctx: CanvasRenderingContext2D, paragraph: EditorParagraphNode, lines: EditorLayoutLine[], state: EditorState, originX: number, originY: number, onUpdate: () => void, painters: CanvasBlockPainters, pageIndex?: number): void;
23
- export declare function resolveFragmentPaintBounds(line: EditorLayoutLine, fragment: EditorLayoutLine["fragments"][number]): {
24
- left: number;
25
- right: number;
26
- } | null;
@@ -0,0 +1,3 @@
1
+ import { EditorLayoutLine } from '../../../core/model.js';
2
+
3
+ export declare function drawFragmentEmphasis(ctx: CanvasRenderingContext2D, line: EditorLayoutLine, fragment: EditorLayoutLine["fragments"][number], slotByOffset: Map<number, EditorLayoutLine["slots"][number]>, originX: number, originY: number, mark: string, color: string): void;
@@ -0,0 +1,26 @@
1
+ import { EditorImageRunData, EditorLayoutLine, EditorPageSettings, EditorState } from '../../../core/model.js';
2
+
3
+ /**
4
+ * Draw an inline image fragment, honoring crop (`a:srcRect`), rotation
5
+ * (`a:xfrm/@rot`) and horizontal/vertical flips.
6
+ */
7
+ export declare function drawImageFragment(ctx: CanvasRenderingContext2D, img: CanvasImageSource & {
8
+ naturalWidth: number;
9
+ naturalHeight: number;
10
+ }, image: EditorImageRunData, x: number, y: number): void;
11
+ /**
12
+ * Draws the floating images anchored within a paragraph (behind or front layer).
13
+ */
14
+ export declare function drawFloatingImagesForParagraph(options: {
15
+ ctx: CanvasRenderingContext2D;
16
+ paragraphLines: EditorLayoutLine[];
17
+ state: EditorState;
18
+ pageSettings: EditorPageSettings;
19
+ contentLeft: number;
20
+ contentTop: number;
21
+ contentWidth: number;
22
+ paragraphTop: number;
23
+ onUpdate: () => void;
24
+ layer: "behind" | "front";
25
+ }): void;
26
+ export declare function drawInlineImageFragment(ctx: CanvasRenderingContext2D, line: EditorLayoutLine, fragment: EditorLayoutLine["fragments"][number], state: EditorState, originX: number, originY: number, onUpdate: () => void): boolean;
@@ -0,0 +1,13 @@
1
+ import { EditorLayoutLine } from '../../../core/model.js';
2
+
3
+ export declare function resolveFragmentPaintBounds(line: EditorLayoutLine, fragment: EditorLayoutLine["fragments"][number]): {
4
+ left: number;
5
+ right: number;
6
+ } | null;
7
+ export declare function drawFragmentHighlight(ctx: CanvasRenderingContext2D, line: EditorLayoutLine, fragment: EditorLayoutLine["fragments"][number], originX: number, originY: number, color: string): void;
8
+ export declare function drawFragmentShading(ctx: CanvasRenderingContext2D, line: EditorLayoutLine, fragment: EditorLayoutLine["fragments"][number], originX: number, originY: number, color: string): void;
9
+ export declare function drawFragmentBorder(ctx: CanvasRenderingContext2D, line: EditorLayoutLine, fragment: EditorLayoutLine["fragments"][number], originX: number, originY: number, border: {
10
+ width: number;
11
+ type: "solid" | "dashed" | "dotted" | "none";
12
+ color: string;
13
+ }): void;
@@ -0,0 +1,4 @@
1
+ import { EditorLayoutLine, EditorParagraphNode, EditorState } from '../../../core/model.js';
2
+
3
+ export declare function resolveTabLeader(paragraph: EditorParagraphNode, line: EditorLayoutLine, tabLeft: number, state: EditorState): "dot" | "hyphen" | "underscore" | "heavy" | "middleDot" | undefined;
4
+ export declare function drawTabLeader(ctx: CanvasRenderingContext2D, leader: NonNullable<ReturnType<typeof resolveTabLeader>>, x1: number, x2: number, y: number): void;
@@ -0,0 +1,4 @@
1
+ import { UnderlineStyle } from '../../../core/textStyleMappings.js';
2
+ import { EditorLayoutLine } from '../../../core/model.js';
3
+
4
+ export declare function drawTextDecoration(ctx: CanvasRenderingContext2D, line: EditorLayoutLine, fragment: EditorLayoutLine["fragments"][number], originX: number, originY: number, kind: "underline" | "strike" | "doubleStrike", underlineStyle?: UnderlineStyle, underlineColor?: string): void;
@@ -0,0 +1,43 @@
1
+ import { EditorLayoutLine, resolveEffectiveTextStyleForParagraph } from '../../../core/model.js';
2
+
3
+ export declare function hexToRgba(color: string, alpha: number): string;
4
+ export declare function resolveCanvasTextFill(ctx: CanvasRenderingContext2D, styles: ReturnType<typeof resolveEffectiveTextStyleForParagraph>, line: EditorLayoutLine, fragment: EditorLayoutLine["fragments"][number], originX: number, originY: number): string | CanvasGradient;
5
+ export declare function drawStyledText(ctx: CanvasRenderingContext2D, text: string, x: number, y: number, scale: number, styles: {
6
+ outline?: boolean;
7
+ shadow?: boolean;
8
+ emboss?: boolean;
9
+ imprint?: boolean;
10
+ textOutline?: {
11
+ widthPt: number;
12
+ color?: string;
13
+ } | null;
14
+ textShadow?: {
15
+ color: string;
16
+ alpha?: number;
17
+ blurPt: number;
18
+ distPt: number;
19
+ dirDeg: number;
20
+ } | null;
21
+ glow?: {
22
+ color: string;
23
+ alpha?: number;
24
+ radiusPt: number;
25
+ } | null;
26
+ reflection?: {
27
+ blurPt: number;
28
+ startAlpha: number;
29
+ startPos: number;
30
+ endAlpha: number;
31
+ endPos: number;
32
+ distPt: number;
33
+ } | null;
34
+ }): void;
35
+ export declare function drawFragmentReflection(ctx: CanvasRenderingContext2D, fragment: EditorLayoutLine["fragments"][number], slotByOffset: Map<number, EditorLayoutLine["slots"][number]>, styles: ReturnType<typeof resolveEffectiveTextStyleForParagraph>, originX: number, baselineY: number, reflection: {
36
+ blurPt: number;
37
+ startAlpha: number;
38
+ endAlpha: number;
39
+ distPt: number;
40
+ }): void;
41
+ export declare function getRenderedChar(char: string, styles: {
42
+ allCaps?: boolean;
43
+ }): string;
@@ -0,0 +1,15 @@
1
+ import { EditorTableNode } from '../../../core/model.js';
2
+ import { CanvasTableCellLayoutEntry } from './types.js';
3
+ import { PreparedCell } from './prepareCells.js';
4
+
5
+ export declare function assembleCellEntries(options: {
6
+ prepared: PreparedCell[];
7
+ rowHeights: number[];
8
+ rowOffsets: number[];
9
+ columnOffsets: number[];
10
+ tableLeft: number;
11
+ originY: number;
12
+ cellSpacingPx: number;
13
+ table: EditorTableNode;
14
+ }): CanvasTableCellLayoutEntry[];
15
+ export declare function buildRowOffsets(rowHeights: number[], cellSpacingPx: number): number[];
@@ -0,0 +1,53 @@
1
+ import { EditorParagraphNode, EditorState, EditorTableCellNode, EditorTableNode } from '../../../core/model.js';
2
+ import { projectParagraphLayout } from '../../../layoutProjection/index.js';
3
+ import { VerticalRenderMode } from '../verticalText.js';
4
+ import { buildTableCellLayout } from '../../../core/tableLayout.js';
5
+ import { CanvasTableBorderSpec, CanvasUnsupportedReason } from './types.js';
6
+
7
+ export interface PreparedCell {
8
+ rowIndex: number;
9
+ cellIndex: number;
10
+ cell: EditorTableCellNode;
11
+ visualCol: number;
12
+ colSpan: number;
13
+ rowSpan: number;
14
+ width: number;
15
+ padding: {
16
+ top: number;
17
+ right: number;
18
+ bottom: number;
19
+ left: number;
20
+ };
21
+ borders: {
22
+ top: CanvasTableBorderSpec;
23
+ right: CanvasTableBorderSpec;
24
+ bottom: CanvasTableBorderSpec;
25
+ left: CanvasTableBorderSpec;
26
+ topLeftToBottomRight?: CanvasTableBorderSpec;
27
+ topRightToBottomLeft?: CanvasTableBorderSpec;
28
+ };
29
+ contentWidthPx: number;
30
+ projectedParagraphs: Array<{
31
+ paragraph: EditorParagraphNode;
32
+ lines: ReturnType<typeof projectParagraphLayout>["lines"];
33
+ height: number;
34
+ spacingBefore: number;
35
+ spacingAfter: number;
36
+ }>;
37
+ contentNaturalHeightPx: number;
38
+ verticalMode: VerticalRenderMode;
39
+ }
40
+ export declare function prepareCells(options: {
41
+ table: EditorTableNode;
42
+ sourceTable: EditorTableNode;
43
+ tableEntries: ReturnType<typeof buildTableCellLayout>;
44
+ columnOffsets: number[];
45
+ cellSpacingPx: number;
46
+ visualColumnCount: number;
47
+ effectiveRowStyles: (EditorTableNode["rows"][number]["style"])[];
48
+ state: EditorState;
49
+ pageIndex: number;
50
+ }): {
51
+ prepared: PreparedCell[];
52
+ unsupported: CanvasUnsupportedReason[];
53
+ };
@@ -0,0 +1,9 @@
1
+ import { EditorTableNode } from '../../../core/model.js';
2
+ import { PreparedCell } from './prepareCells.js';
3
+
4
+ export declare function resolveRowHeights(options: {
5
+ prepared: PreparedCell[];
6
+ table: EditorTableNode;
7
+ effectiveRowStyles: (EditorTableNode["rows"][number]["style"])[];
8
+ estimatedHeight: number;
9
+ }): number[];
@@ -0,0 +1,37 @@
1
+ import { EditorBorderStyle, EditorParagraphNode, EditorTableCellNode, EditorTableNode } from '../../../core/model.js';
2
+ import { CanvasTableBorderSpec } from './types.js';
3
+
4
+ export declare function toPx(value: number): number;
5
+ export declare function parseDimensionToPx(value: number | string | undefined): number | null;
6
+ export declare function resolveDefaultBorder(): CanvasTableBorderSpec;
7
+ export declare function resolveBorder(border: EditorBorderStyle | undefined): CanvasTableBorderSpec;
8
+ export declare function resolveCellPadding(cell: EditorTableCellNode): {
9
+ top: number;
10
+ right: number;
11
+ bottom: number;
12
+ left: number;
13
+ };
14
+ export declare function resolveVerticalContentOffset(cell: EditorTableCellNode, contentHeightPx: number, contentNaturalHeightPx: number): number;
15
+ /**
16
+ * Returns a paragraph clone whose inline image runs have been scaled
17
+ * down so they never exceed `maxImageWidthPx`. Aspect ratio is preserved.
18
+ * If no image needs shrinking, returns the original paragraph reference.
19
+ */
20
+ export declare function fitImagesToCellWidth(paragraph: EditorParagraphNode, maxImageWidthPx: number): EditorParagraphNode;
21
+ /**
22
+ * Folds a `characterScale` (percent) into every run of `paragraph`, multiplying
23
+ * any scale a run already carries. Used to compress/expand `w:tcFitText` cell
24
+ * text horizontally so a single line fills the cell's content width.
25
+ */
26
+ export declare function applyFitTextScale(paragraph: EditorParagraphNode, scalePercent: number): EditorParagraphNode;
27
+ export declare function resolveCanvasTableWidth(table: EditorTableNode, contentWidth: number): number;
28
+ export declare function resolveTableIndentLeft(table: EditorTableNode): number;
29
+ /**
30
+ * `w:tblCellSpacing` resolved to pixels.
31
+ */
32
+ export declare function resolveTableCellSpacingPx(table: EditorTableNode): number;
33
+ /**
34
+ * Horizontal offset of the table's left edge from the content origin, honoring
35
+ * `w:jc` (`table.style.align`).
36
+ */
37
+ export declare function resolveTableLeftOffset(table: EditorTableNode, tableWidth: number, contentWidth: number): number;
@@ -0,0 +1,63 @@
1
+ import { EditorParagraphNode, EditorPosition, EditorRevisionMetadata } from '../../../core/model.js';
2
+ import { projectParagraphLayout } from '../../../layoutProjection/index.js';
3
+ import { VerticalRenderMode } from '../verticalText.js';
4
+
5
+ export type CanvasUnsupportedReason = "unsupported:v-span" | "unsupported:v-merge" | "unsupported:nested-table";
6
+ export interface CanvasTableBorderSpec {
7
+ width: number;
8
+ color: string;
9
+ type: "solid" | "dashed" | "dotted" | "none";
10
+ }
11
+ export interface CanvasTableParagraphLayoutEntry {
12
+ paragraph: EditorParagraphNode;
13
+ lines: ReturnType<typeof projectParagraphLayout>["lines"];
14
+ originX: number;
15
+ originY: number;
16
+ width: number;
17
+ height: number;
18
+ }
19
+ export interface CanvasTableCellLayoutEntry {
20
+ tableId: string;
21
+ rowIndex: number;
22
+ cellIndex: number;
23
+ left: number;
24
+ top: number;
25
+ width: number;
26
+ height: number;
27
+ contentLeft: number;
28
+ contentTop: number;
29
+ contentWidth: number;
30
+ contentHeight: number;
31
+ shading?: string;
32
+ anchorPosition: EditorPosition;
33
+ padding: {
34
+ top: number;
35
+ right: number;
36
+ bottom: number;
37
+ left: number;
38
+ };
39
+ borders: {
40
+ top: CanvasTableBorderSpec;
41
+ right: CanvasTableBorderSpec;
42
+ bottom: CanvasTableBorderSpec;
43
+ left: CanvasTableBorderSpec;
44
+ topLeftToBottomRight?: CanvasTableBorderSpec;
45
+ topRightToBottomLeft?: CanvasTableBorderSpec;
46
+ };
47
+ paragraphs: CanvasTableParagraphLayoutEntry[];
48
+ /** Vertical text flow inside this cell (`horizontal` when not rotated). */
49
+ verticalMode: VerticalRenderMode;
50
+ revision?: EditorRevisionMetadata & {
51
+ type: "insert" | "delete" | "merge" | "property";
52
+ };
53
+ }
54
+ export interface CanvasTableLayoutResult {
55
+ tableId: string;
56
+ left: number;
57
+ top: number;
58
+ width: number;
59
+ height: number;
60
+ rowHeights: number[];
61
+ cells: CanvasTableCellLayoutEntry[];
62
+ unsupported: CanvasUnsupportedReason[];
63
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "oasis-editor",
3
- "version": "0.0.113",
3
+ "version": "0.0.115",
4
4
  "type": "module",
5
5
  "repository": {
6
6
  "type": "git",