@musaaj/simpleeditor 0.0.1

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 (63) hide show
  1. package/README.md +148 -0
  2. package/dist/simpleeditor.css +2 -0
  3. package/dist/simpleeditor.js +47030 -0
  4. package/dist/types/builtins/blots/chem/constants.d.ts +4 -0
  5. package/dist/types/builtins/blots/chem/constants.d.ts.map +1 -0
  6. package/dist/types/builtins/blots/chem/editor.d.ts +4 -0
  7. package/dist/types/builtins/blots/chem/editor.d.ts.map +1 -0
  8. package/dist/types/builtins/blots/chem/element.d.ts +3 -0
  9. package/dist/types/builtins/blots/chem/element.d.ts.map +1 -0
  10. package/dist/types/builtins/blots/chem/format.d.ts +3 -0
  11. package/dist/types/builtins/blots/chem/format.d.ts.map +1 -0
  12. package/dist/types/builtins/blots/image/constants.d.ts +8 -0
  13. package/dist/types/builtins/blots/image/constants.d.ts.map +1 -0
  14. package/dist/types/builtins/blots/image/handlers.d.ts +5 -0
  15. package/dist/types/builtins/blots/image/handlers.d.ts.map +1 -0
  16. package/dist/types/builtins/blots/image/picker.d.ts +2 -0
  17. package/dist/types/builtins/blots/image/picker.d.ts.map +1 -0
  18. package/dist/types/builtins/blots/image/resize.d.ts +2 -0
  19. package/dist/types/builtins/blots/image/resize.d.ts.map +1 -0
  20. package/dist/types/builtins/blots/math/constants.d.ts +5 -0
  21. package/dist/types/builtins/blots/math/constants.d.ts.map +1 -0
  22. package/dist/types/builtins/blots/math/field.d.ts +5 -0
  23. package/dist/types/builtins/blots/math/field.d.ts.map +1 -0
  24. package/dist/types/builtins/blots/table/actions.d.ts +11 -0
  25. package/dist/types/builtins/blots/table/actions.d.ts.map +1 -0
  26. package/dist/types/builtins/blots/table/blot.d.ts +3 -0
  27. package/dist/types/builtins/blots/table/blot.d.ts.map +1 -0
  28. package/dist/types/builtins/blots/table/cells.d.ts +3 -0
  29. package/dist/types/builtins/blots/table/cells.d.ts.map +1 -0
  30. package/dist/types/builtins/blots/table/handlers.d.ts +3 -0
  31. package/dist/types/builtins/blots/table/handlers.d.ts.map +1 -0
  32. package/dist/types/builtins/blots/table/menu.d.ts +5 -0
  33. package/dist/types/builtins/blots/table/menu.d.ts.map +1 -0
  34. package/dist/types/builtins/blots/table/resize.d.ts +3 -0
  35. package/dist/types/builtins/blots/table/resize.d.ts.map +1 -0
  36. package/dist/types/builtins/blots/table/selection.d.ts +22 -0
  37. package/dist/types/builtins/blots/table/selection.d.ts.map +1 -0
  38. package/dist/types/builtins/blots/table/state.d.ts +5 -0
  39. package/dist/types/builtins/blots/table/state.d.ts.map +1 -0
  40. package/dist/types/builtins/blots/table/theme.d.ts +21 -0
  41. package/dist/types/builtins/blots/table/theme.d.ts.map +1 -0
  42. package/dist/types/builtins/blots/table/toolbar.d.ts +8 -0
  43. package/dist/types/builtins/blots/table/toolbar.d.ts.map +1 -0
  44. package/dist/types/builtins/blots/table/types.d.ts +2 -0
  45. package/dist/types/builtins/blots/table/types.d.ts.map +1 -0
  46. package/dist/types/config.d.ts +6 -0
  47. package/dist/types/config.d.ts.map +1 -0
  48. package/dist/types/main.d.ts +7 -0
  49. package/dist/types/main.d.ts.map +1 -0
  50. package/dist/types/quill-chem-blot.d.ts +5 -0
  51. package/dist/types/quill-chem-blot.d.ts.map +1 -0
  52. package/dist/types/quill-div.d.ts +18 -0
  53. package/dist/types/quill-div.d.ts.map +1 -0
  54. package/dist/types/quill-image-blot.d.ts +5 -0
  55. package/dist/types/quill-image-blot.d.ts.map +1 -0
  56. package/dist/types/quill-math-blot.d.ts +6 -0
  57. package/dist/types/quill-math-blot.d.ts.map +1 -0
  58. package/dist/types/quill-table-blot.d.ts +3 -0
  59. package/dist/types/quill-table-blot.d.ts.map +1 -0
  60. package/dist/types/quill-textarea.d.ts +57 -0
  61. package/dist/types/quill-textarea.d.ts.map +1 -0
  62. package/dist/vite.svg +1 -0
  63. package/package.json +43 -0
@@ -0,0 +1,4 @@
1
+ export declare const CHEM_BLOT_TAG = "chem-blot";
2
+ export declare const CHEM_SPAN_TAG = "chem-span";
3
+ export declare const DATA_FORMULA = "data-formula";
4
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../../src/builtins/blots/chem/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa,cAAc,CAAC;AACzC,eAAO,MAAM,aAAa,cAAc,CAAC;AACzC,eAAO,MAAM,YAAY,iBAAiB,CAAC"}
@@ -0,0 +1,4 @@
1
+ type Commit = (value: string) => void;
2
+ export declare function createChemEditor(initial: string, commit: Commit): HTMLElement;
3
+ export {};
4
+ //# sourceMappingURL=editor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"editor.d.ts","sourceRoot":"","sources":["../../../../../src/builtins/blots/chem/editor.ts"],"names":[],"mappings":"AAGA,KAAK,MAAM,GAAG,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;AAEtC,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,WAAW,CA4D7E"}
@@ -0,0 +1,3 @@
1
+ export declare function createChemSpan(formula: string): HTMLElement;
2
+ export declare function setChemSpanFormula(span: HTMLElement, formula: string): void;
3
+ //# sourceMappingURL=element.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"element.d.ts","sourceRoot":"","sources":["../../../../../src/builtins/blots/chem/element.ts"],"names":[],"mappings":"AAIA,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,WAAW,CAkB3D;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAU3E"}
@@ -0,0 +1,3 @@
1
+ export declare function formatFormula(source: string): string;
2
+ export declare function toLatexFormula(source: string): string;
3
+ //# sourceMappingURL=format.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../../../../../src/builtins/blots/chem/format.ts"],"names":[],"mappings":"AA8QA,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAsBpD;AAkHD,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAqBrD"}
@@ -0,0 +1,8 @@
1
+ export declare const IMG_BLOT_TAG = "img-blot";
2
+ export declare const HANDLE_TAG = "img-handle";
3
+ export declare const DATA_SRC = "data-src";
4
+ export declare const DATA_ALT = "data-alt";
5
+ export declare const DATA_WIDTH = "data-width";
6
+ export declare const DATA_HEIGHT = "data-height";
7
+ export declare const DATA_HANDLES_VISIBLE = "data-handles-visible";
8
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../../src/builtins/blots/image/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY,aAAa,CAAC;AACvC,eAAO,MAAM,UAAU,eAAe,CAAC;AACvC,eAAO,MAAM,QAAQ,aAAa,CAAC;AACnC,eAAO,MAAM,QAAQ,aAAa,CAAC;AACnC,eAAO,MAAM,UAAU,eAAe,CAAC;AACvC,eAAO,MAAM,WAAW,gBAAgB,CAAC;AACzC,eAAO,MAAM,oBAAoB,yBAAyB,CAAC"}
@@ -0,0 +1,5 @@
1
+ type VisibilitySetter = (visible: boolean) => void;
2
+ export declare function registerImageHandleVisibility(blot: HTMLElement, setVisible: VisibilitySetter): void;
3
+ export declare function setInitialHandleState(blot: HTMLElement, visible: boolean): void;
4
+ export {};
5
+ //# sourceMappingURL=handlers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../../../../src/builtins/blots/image/handlers.ts"],"names":[],"mappings":"AAEA,KAAK,gBAAgB,GAAG,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;AAMnD,wBAAgB,6BAA6B,CAAC,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,gBAAgB,GAAG,IAAI,CAGnG;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI,CAE/E"}
@@ -0,0 +1,2 @@
1
+ export declare function pickImageFile(blot: HTMLElement, img: HTMLImageElement): void;
2
+ //# sourceMappingURL=picker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"picker.d.ts","sourceRoot":"","sources":["../../../../../src/builtins/blots/image/picker.ts"],"names":[],"mappings":"AAEA,wBAAgB,aAAa,CAAC,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE,gBAAgB,GAAG,IAAI,CAyC5E"}
@@ -0,0 +1,2 @@
1
+ export declare function enableResize(blot: HTMLElement, img: HTMLImageElement): (visible: boolean) => void;
2
+ //# sourceMappingURL=resize.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resize.d.ts","sourceRoot":"","sources":["../../../../../src/builtins/blots/image/resize.ts"],"names":[],"mappings":"AAIA,wBAAgB,YAAY,CACxB,IAAI,EAAE,WAAW,EACjB,GAAG,EAAE,gBAAgB,GACtB,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAsC5B"}
@@ -0,0 +1,5 @@
1
+ export declare const MATH_FIELD_TAG = "math-field";
2
+ export declare const MATH_BLOT_TAG = "math-blot";
3
+ export declare const MATH_SPAN_TAG = "math-span";
4
+ export declare const DATA_LATEX = "data-latex";
5
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../../src/builtins/blots/math/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,cAAc,eAAe,CAAC;AAC3C,eAAO,MAAM,aAAa,cAAc,CAAC;AACzC,eAAO,MAAM,aAAa,cAAc,CAAC;AACzC,eAAO,MAAM,UAAU,eAAe,CAAC"}
@@ -0,0 +1,5 @@
1
+ import "mathlive";
2
+ import { MathfieldElement } from "mathlive";
3
+ export declare function createMathSpanElement(value: string): HTMLElement;
4
+ export declare function createMathFieldElement(value: string, onValueChange: (next: string) => void): MathfieldElement;
5
+ //# sourceMappingURL=field.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"field.d.ts","sourceRoot":"","sources":["../../../../../src/builtins/blots/math/field.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,CAAC;AAClB,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAO5C,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW,CAKhE;AAED,wBAAgB,sBAAsB,CAClC,KAAK,EAAE,MAAM,EACb,aAAa,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GACtC,gBAAgB,CAoBlB"}
@@ -0,0 +1,11 @@
1
+ export declare function insertColAfterIndex(table: HTMLTableElement, index: number): void;
2
+ export declare function insertRowAfterIndex(table: HTMLTableElement, index: number): void;
3
+ export declare function deleteRowAtIndex(table: HTMLTableElement, index: number): void;
4
+ export declare function deleteColAtIndex(table: HTMLTableElement, index: number): void;
5
+ export declare function insertRow(blot: HTMLElement, position: "before" | "after"): void;
6
+ export declare function deleteRow(blot: HTMLElement): void;
7
+ export declare function insertCol(blot: HTMLElement, position: "before" | "after"): void;
8
+ export declare function deleteCol(blot: HTMLElement): void;
9
+ export declare function resizeRow(blot: HTMLElement, delta: number): void;
10
+ export declare function resizeCol(blot: HTMLElement, delta: number): void;
11
+ //# sourceMappingURL=actions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../../../../../src/builtins/blots/table/actions.ts"],"names":[],"mappings":"AAUA,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAYhF;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAYhF;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAK7E;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAS7E;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,GAAG,IAAI,CAc/E;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,CAUjD;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,GAAG,IAAI,CAoB/E;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,CAgBjD;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAUhE;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAchE"}
@@ -0,0 +1,3 @@
1
+ import type { Theme } from "./types";
2
+ export declare function createTableBlot(rows?: number, cols?: number, theme?: Theme): HTMLElement;
3
+ //# sourceMappingURL=blot.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"blot.d.ts","sourceRoot":"","sources":["../../../../../src/builtins/blots/table/blot.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAOrC,wBAAgB,eAAe,CAC3B,IAAI,SAAI,EACR,IAAI,SAAI,EACR,KAAK,GAAE,KAAe,GACvB,WAAW,CAqBb"}
@@ -0,0 +1,3 @@
1
+ export declare function buildTable(rows: number, cols: number): HTMLTableElement;
2
+ export declare function createCell(): HTMLTableCellElement;
3
+ //# sourceMappingURL=cells.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cells.d.ts","sourceRoot":"","sources":["../../../../../src/builtins/blots/table/cells.ts"],"names":[],"mappings":"AAAA,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,gBAAgB,CAiBvE;AAED,wBAAgB,UAAU,IAAI,oBAAoB,CAejD"}
@@ -0,0 +1,3 @@
1
+ export declare function cleanupTableHandlers(blot: HTMLElement): void;
2
+ export declare function attachTableHandlers(blot: HTMLElement, table: HTMLTableElement): void;
3
+ //# sourceMappingURL=handlers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../../../../src/builtins/blots/table/handlers.ts"],"names":[],"mappings":"AAcA,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,CAI5D;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,gBAAgB,GAAG,IAAI,CAyPpF"}
@@ -0,0 +1,5 @@
1
+ export declare function createCornerButton(blot: HTMLElement): HTMLElement;
2
+ export declare function createCornerMenu(blot: HTMLElement): HTMLElement;
3
+ export declare function toggleCornerMenu(blot: HTMLElement): void;
4
+ export declare function hideCornerMenu(blot: HTMLElement): void;
5
+ //# sourceMappingURL=menu.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"menu.d.ts","sourceRoot":"","sources":["../../../../../src/builtins/blots/table/menu.ts"],"names":[],"mappings":"AAIA,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,WAAW,GAAG,WAAW,CA4BjE;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,WAAW,GAAG,WAAW,CA6C/D;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,CAIxD;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,CAItD"}
@@ -0,0 +1,3 @@
1
+ export declare function startColumnResize(table: HTMLTableElement, colIndex: number, startX: number): void;
2
+ export declare function startRowResize(table: HTMLTableElement, rowIndex: number, startY: number): void;
3
+ //# sourceMappingURL=resize.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resize.d.ts","sourceRoot":"","sources":["../../../../../src/builtins/blots/table/resize.ts"],"names":[],"mappings":"AAAA,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAoBjG;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAqB9F"}
@@ -0,0 +1,22 @@
1
+ type SelectionRect = {
2
+ minRow: number;
3
+ maxRow: number;
4
+ minCol: number;
5
+ maxCol: number;
6
+ };
7
+ type SelectionState = {
8
+ start?: HTMLTableCellElement;
9
+ end?: HTMLTableCellElement;
10
+ rect?: SelectionRect;
11
+ };
12
+ export declare function getSelectionState(blot: HTMLElement): SelectionState;
13
+ export declare function startSelection(blot: HTMLElement, table: HTMLTableElement, cell: HTMLTableCellElement): void;
14
+ export declare function clearSelection(blot: HTMLElement, keepRect?: boolean): void;
15
+ export declare function getSelectionRect(blot: HTMLElement): SelectionRect | undefined;
16
+ export declare function mergeSelectedCells(blot: HTMLElement): boolean;
17
+ export declare function splitSelectedCells(blot: HTMLElement): boolean;
18
+ export declare function mergeWithRight(blot: HTMLElement): void;
19
+ export declare function splitCell(blot: HTMLElement): void;
20
+ export declare function buildMatrix(table: HTMLTableElement): HTMLTableCellElement[][];
21
+ export {};
22
+ //# sourceMappingURL=selection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selection.d.ts","sourceRoot":"","sources":["../../../../../src/builtins/blots/table/selection.ts"],"names":[],"mappings":"AAKA,KAAK,aAAa,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AACxF,KAAK,cAAc,GAAG;IAClB,KAAK,CAAC,EAAE,oBAAoB,CAAC;IAC7B,GAAG,CAAC,EAAE,oBAAoB,CAAC;IAC3B,IAAI,CAAC,EAAE,aAAa,CAAC;CACxB,CAAC;AAIF,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,WAAW,GAAG,cAAc,CAOnE;AAED,wBAAgB,cAAc,CAC1B,IAAI,EAAE,WAAW,EACjB,KAAK,EAAE,gBAAgB,EACvB,IAAI,EAAE,oBAAoB,GAC3B,IAAI,CAoBN;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,WAAW,EAAE,QAAQ,UAAQ,GAAG,IAAI,CAWxE;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,WAAW,GAAG,aAAa,GAAG,SAAS,CAE7E;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAiD7D;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAoC7D;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,CAiBtD;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,CAWjD;AAoCD,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG,oBAAoB,EAAE,EAAE,CAqB7E"}
@@ -0,0 +1,5 @@
1
+ export declare function setActiveCell(blot: HTMLElement, cell: HTMLTableCellElement): void;
2
+ export declare function getActiveCell(blot: HTMLElement): HTMLTableCellElement | null;
3
+ export declare function getSelectionCell(blot: HTMLElement): HTMLTableCellElement | null;
4
+ export declare function isTableActive(blot: HTMLElement): boolean;
5
+ //# sourceMappingURL=state.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../../../../src/builtins/blots/table/state.ts"],"names":[],"mappings":"AAAA,wBAAgB,aAAa,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,oBAAoB,GAAG,IAAI,CAOjF;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,WAAW,GAAG,oBAAoB,GAAG,IAAI,CAI5E;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,WAAW,GAAG,oBAAoB,GAAG,IAAI,CAS/E;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAExD"}
@@ -0,0 +1,21 @@
1
+ import type { Theme } from "./types";
2
+ type ThemeStyle = {
3
+ bg: string;
4
+ color: string;
5
+ grid: string;
6
+ headBg: string;
7
+ headColor: string;
8
+ font: string;
9
+ zebra?: boolean;
10
+ };
11
+ export declare const builtinThemeOrder: Theme[];
12
+ export declare function registerTableTheme(name: string, styles: ThemeStyle): void;
13
+ export declare function setTableThemeMenu(themes: string[] | null): void;
14
+ export declare function getTableThemeMenu(): string[] | null;
15
+ export declare function getThemeNames(): string[];
16
+ export declare function getThemeStyles(theme: Theme | string): ThemeStyle | null;
17
+ export declare function applyThemeToTable(table: HTMLTableElement, theme: Theme | string): void;
18
+ export declare function applyTheme(blot: HTMLElement, theme: Theme | string): void;
19
+ export declare function toggleTheme(blot: HTMLElement): void;
20
+ export {};
21
+ //# sourceMappingURL=theme.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["../../../../../src/builtins/blots/table/theme.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAGrC,KAAK,UAAU,GAAG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;AAIhI,eAAO,MAAM,iBAAiB,EAAE,KAAK,EASpC,CAAC;AAaF,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,GAAG,IAAI,CAEzE;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,GAAG,IAAI,CAI/D;AAED,wBAAgB,iBAAiB,IAAI,MAAM,EAAE,GAAG,IAAI,CAGnD;AAED,wBAAgB,aAAa,IAAI,MAAM,EAAE,CAIxC;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,GAAG,UAAU,GAAG,IAAI,CAKvE;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,KAAK,GAAG,MAAM,GAAG,IAAI,CA0BtF;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,KAAK,GAAG,MAAM,GAAG,IAAI,CAWzE;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,CAgBnD"}
@@ -0,0 +1,8 @@
1
+ export declare function createToolbar(_blot: HTMLElement): HTMLElement;
2
+ export declare function createRowToolbar(_blot: HTMLElement): HTMLElement;
3
+ export declare function setToolbarVisible(blot: HTMLElement, visible: boolean): void;
4
+ export declare function setRowToolbarVisible(blot: HTMLElement, visible: boolean): void;
5
+ export declare function setCornerButtonVisible(blot: HTMLElement, visible: boolean): void;
6
+ export declare function refreshColumnButtons(blot: HTMLElement, table: HTMLTableElement, activeIndex: number): void;
7
+ export declare function refreshRowButtons(blot: HTMLElement, table: HTMLTableElement, activeIndex: number): void;
8
+ //# sourceMappingURL=toolbar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toolbar.d.ts","sourceRoot":"","sources":["../../../../../src/builtins/blots/table/toolbar.ts"],"names":[],"mappings":"AAGA,wBAAgB,aAAa,CAAC,KAAK,EAAE,WAAW,GAAG,WAAW,CAwB7D;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,WAAW,GAAG,WAAW,CAchE;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI,CAI3E;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI,CAI9E;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI,CAIhF;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI,CA8E1G;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI,CA2EvG"}
@@ -0,0 +1,2 @@
1
+ export type Theme = "clean" | "soft" | "slate" | "invert" | "blueprint" | "paper" | "spreadsheet" | "accent";
2
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/builtins/blots/table/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,KAAK,GACX,OAAO,GACP,MAAM,GACN,OAAO,GACP,QAAQ,GACR,WAAW,GACX,OAAO,GACP,aAAa,GACb,QAAQ,CAAC"}
@@ -0,0 +1,6 @@
1
+ export type SimpleEditorConfig = {
2
+ tableThemeMenu?: string[];
3
+ };
4
+ export declare function setSimpleEditorConfig(next: Partial<SimpleEditorConfig>): void;
5
+ export declare function getSimpleEditorConfig(): SimpleEditorConfig;
6
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,kBAAkB,GAAG;IAC7B,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;CAC7B,CAAC;AAIF,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,OAAO,CAAC,kBAAkB,CAAC,GAAG,IAAI,CAE7E;AAED,wBAAgB,qBAAqB,IAAI,kBAAkB,CAE1D"}
@@ -0,0 +1,7 @@
1
+ import "./style.css";
2
+ import "mathlive/static.css";
3
+ import "mathlive/fonts.css";
4
+ import "@fortawesome/fontawesome-free/css/all.min.css";
5
+ import "./quill-div";
6
+ import "./quill-textarea";
7
+ //# sourceMappingURL=main.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../../src/main.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,CAAA;AACpB,OAAO,qBAAqB,CAAA;AAC5B,OAAO,oBAAoB,CAAA;AAC3B,OAAO,+CAA+C,CAAA;AACtD,OAAO,aAAa,CAAA;AACpB,OAAO,kBAAkB,CAAA"}
@@ -0,0 +1,5 @@
1
+ import Quill from "quill";
2
+ type QuillCtor = typeof Quill;
3
+ export declare function registerQuillChemBlot(QuillClass: QuillCtor): void;
4
+ export {};
5
+ //# sourceMappingURL=quill-chem-blot.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quill-chem-blot.d.ts","sourceRoot":"","sources":["../../src/quill-chem-blot.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,KAAK,SAAS,GAAG,OAAO,KAAK,CAAC;AAI9B,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,SAAS,GAAG,IAAI,CAwCjE"}
@@ -0,0 +1,18 @@
1
+ import "mathlive";
2
+ declare class QuillDiv extends HTMLElement {
3
+ private renderEl;
4
+ private initialized;
5
+ static get observedAttributes(): string[];
6
+ connectedCallback(): void;
7
+ attributeChangedCallback(name: string): void;
8
+ get value(): string;
9
+ set value(next: string);
10
+ private render;
11
+ private setValue;
12
+ private normalizeInput;
13
+ private decodeHtmlIfNeeded;
14
+ private sanitize;
15
+ private pruneTableStyles;
16
+ }
17
+ export default QuillDiv;
18
+ //# sourceMappingURL=quill-div.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quill-div.d.ts","sourceRoot":"","sources":["../../src/quill-div.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,CAAA;AAMjB,cAAM,QAAS,SAAQ,WAAW;IAC9B,OAAO,CAAC,QAAQ,CAA8B;IAC9C,OAAO,CAAC,WAAW,CAAQ;IAE3B,MAAM,KAAK,kBAAkB,aAE5B;IAED,iBAAiB,IAAI,IAAI;IAWzB,wBAAwB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAM5C,IAAI,KAAK,IAAI,MAAM,CAElB;IAED,IAAI,KAAK,CAAC,IAAI,EAAE,MAAM,EAGrB;IAED,OAAO,CAAC,MAAM;IAOd,OAAO,CAAC,QAAQ;IAOhB,OAAO,CAAC,cAAc;IAsBtB,OAAO,CAAC,kBAAkB;IAW1B,OAAO,CAAC,QAAQ;IA4GhB,OAAO,CAAC,gBAAgB;CAU3B;AAMD,eAAe,QAAQ,CAAA"}
@@ -0,0 +1,5 @@
1
+ import Quill from "quill";
2
+ type QuillCtor = typeof Quill;
3
+ export declare function registerQuillImageBlot(QuillClass: QuillCtor): void;
4
+ export {};
5
+ //# sourceMappingURL=quill-image-blot.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quill-image-blot.d.ts","sourceRoot":"","sources":["../../src/quill-image-blot.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAY1B,KAAK,SAAS,GAAG,OAAO,KAAK,CAAC;AA4C9B,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,SAAS,GAAG,IAAI,CAmClE"}
@@ -0,0 +1,6 @@
1
+ import Quill from "quill";
2
+ type QuillCtor = typeof Quill;
3
+ export declare function registerQuillMathBlot(QuillClass: QuillCtor): void;
4
+ export declare function setQuillMathBlotQuill(instance: Quill | null): void;
5
+ export {};
6
+ //# sourceMappingURL=quill-math-blot.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quill-math-blot.d.ts","sourceRoot":"","sources":["../../src/quill-math-blot.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,KAAK,SAAS,GAAG,OAAO,KAAK,CAAC;AAI9B,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,SAAS,GAAG,IAAI,CA4CjE;AAED,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,KAAK,GAAG,IAAI,GAAG,IAAI,CAMlE"}
@@ -0,0 +1,3 @@
1
+ import type QuillType from "quill";
2
+ export declare function registerQuillTableBlot(Quill: typeof QuillType): void;
3
+ //# sourceMappingURL=quill-table-blot.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quill-table-blot.d.ts","sourceRoot":"","sources":["../../src/quill-table-blot.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,SAAS,MAAM,OAAO,CAAC;AAanC,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,OAAO,SAAS,GAAG,IAAI,CA6CpE"}
@@ -0,0 +1,57 @@
1
+ import "quill/dist/quill.snow.css";
2
+ import "mathlive";
3
+ declare class QuillTextarea extends HTMLElement {
4
+ static formAssociated: boolean;
5
+ private quill;
6
+ private editorEl;
7
+ private toolbarEl;
8
+ private hiddenInput;
9
+ private internals;
10
+ private mathModal;
11
+ private mathFieldHost;
12
+ private mathField;
13
+ private mathSaveBtn;
14
+ private mathCancelBtn;
15
+ private lastRange;
16
+ private activeMathNode;
17
+ private activeMathIsNew;
18
+ private tableModal;
19
+ private tableRows;
20
+ private tableCols;
21
+ private tableInsertBtn;
22
+ private tableCancelBtn;
23
+ private tableGrid;
24
+ private tableGridLabel;
25
+ static get observedAttributes(): string[];
26
+ constructor();
27
+ connectedCallback(): void;
28
+ attributeChangedCallback(name: string): void;
29
+ get value(): string;
30
+ set value(next: string);
31
+ get textValue(): string;
32
+ set textValue(next: string);
33
+ focus(): void;
34
+ blur(): void;
35
+ private insertMath;
36
+ private insertChem;
37
+ private insertImage;
38
+ private insertTable;
39
+ private openChemEditor;
40
+ private setHTMLValue;
41
+ private decodeHtmlIfNeeded;
42
+ private normalizeHtmlForQuill;
43
+ private syncHiddenInput;
44
+ private serializeHtml;
45
+ private syncEditableState;
46
+ private pruneTableStyles;
47
+ private render;
48
+ private bindMathEditor;
49
+ private bindTableModal;
50
+ private updateTableGrid;
51
+ private openTableModal;
52
+ private openMathEditor;
53
+ private saveMathEditor;
54
+ private closeMathEditor;
55
+ }
56
+ export { QuillTextarea };
57
+ //# sourceMappingURL=quill-textarea.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quill-textarea.d.ts","sourceRoot":"","sources":["../../src/quill-textarea.ts"],"names":[],"mappings":"AACA,OAAO,2BAA2B,CAAC;AACnC,OAAO,UAAU,CAAC;AAalB,cAAM,aAAc,SAAQ,WAAW;IACnC,MAAM,CAAC,cAAc,UAAQ;IAE7B,OAAO,CAAC,KAAK,CAAsB;IACnC,OAAO,CAAC,QAAQ,CAA+B;IAC/C,OAAO,CAAC,SAAS,CAA+B;IAChD,OAAO,CAAC,WAAW,CAAiC;IACpD,OAAO,CAAC,SAAS,CAAiC;IAClD,OAAO,CAAC,SAAS,CAA+B;IAChD,OAAO,CAAC,aAAa,CAA+B;IACpD,OAAO,CAAC,SAAS,CAAiC;IAClD,OAAO,CAAC,WAAW,CAAkC;IACrD,OAAO,CAAC,aAAa,CAAkC;IACvD,OAAO,CAAC,SAAS,CAAkD;IACnE,OAAO,CAAC,cAAc,CAA4B;IAClD,OAAO,CAAC,eAAe,CAAS;IAChC,OAAO,CAAC,UAAU,CAA+B;IACjD,OAAO,CAAC,SAAS,CAAiC;IAClD,OAAO,CAAC,SAAS,CAAiC;IAClD,OAAO,CAAC,cAAc,CAAkC;IACxD,OAAO,CAAC,cAAc,CAAkC;IACxD,OAAO,CAAC,SAAS,CAA+B;IAChD,OAAO,CAAC,cAAc,CAAgC;IAEtD,MAAM,KAAK,kBAAkB,aAE5B;;IAaD,iBAAiB,IAAI,IAAI;IAgFzB,wBAAwB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAoB5C,IAAI,KAAK,IAAI,MAAM,CAElB;IAED,IAAI,KAAK,CAAC,IAAI,EAAE,MAAM,EAGrB;IAED,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED,IAAI,SAAS,CAAC,IAAI,EAAE,MAAM,EAIzB;IAED,KAAK,IAAI,IAAI;IAIb,IAAI,IAAI,IAAI;IAIZ,OAAO,CAAC,UAAU;IA4BlB,OAAO,CAAC,UAAU;IA8BlB,OAAO,CAAC,WAAW;IAYnB,OAAO,CAAC,WAAW;IAYnB,OAAO,CAAC,cAAc;IA0BtB,OAAO,CAAC,YAAY;IAWpB,OAAO,CAAC,kBAAkB;IAW1B,OAAO,CAAC,qBAAqB;IAuH7B,OAAO,CAAC,eAAe;IAQvB,OAAO,CAAC,aAAa;IA0ErB,OAAO,CAAC,iBAAiB;IAOzB,OAAO,CAAC,gBAAgB;IAYxB,OAAO,CAAC,MAAM;IAoGd,OAAO,CAAC,cAAc;IAgBtB,OAAO,CAAC,cAAc;IAiDtB,OAAO,CAAC,eAAe;IAiBvB,OAAO,CAAC,cAAc;IAOtB,OAAO,CAAC,cAAc;IAWtB,OAAO,CAAC,cAAc;IAetB,OAAO,CAAC,eAAe;CAkB1B;AAMD,OAAO,EAAE,aAAa,EAAE,CAAC"}
package/dist/vite.svg ADDED
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="iconify iconify--logos" width="31.88" height="32" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 257"><defs><linearGradient id="IconifyId1813088fe1fbc01fb466" x1="-.828%" x2="57.636%" y1="7.652%" y2="78.411%"><stop offset="0%" stop-color="#41D1FF"></stop><stop offset="100%" stop-color="#BD34FE"></stop></linearGradient><linearGradient id="IconifyId1813088fe1fbc01fb467" x1="43.376%" x2="50.316%" y1="2.242%" y2="89.03%"><stop offset="0%" stop-color="#FFEA83"></stop><stop offset="8.333%" stop-color="#FFDD35"></stop><stop offset="100%" stop-color="#FFA800"></stop></linearGradient></defs><path fill="url(#IconifyId1813088fe1fbc01fb466)" d="M255.153 37.938L134.897 252.976c-2.483 4.44-8.862 4.466-11.382.048L.875 37.958c-2.746-4.814 1.371-10.646 6.827-9.67l120.385 21.517a6.537 6.537 0 0 0 2.322-.004l117.867-21.483c5.438-.991 9.574 4.796 6.877 9.62Z"></path><path fill="url(#IconifyId1813088fe1fbc01fb467)" d="M185.432.063L96.44 17.501a3.268 3.268 0 0 0-2.634 3.014l-5.474 92.456a3.268 3.268 0 0 0 3.997 3.378l24.777-5.718c2.318-.535 4.413 1.507 3.936 3.838l-7.361 36.047c-.495 2.426 1.782 4.5 4.151 3.78l15.304-4.649c2.372-.72 4.652 1.36 4.15 3.788l-11.698 56.621c-.732 3.542 3.979 5.473 5.943 2.437l1.313-2.028l72.516-144.72c1.215-2.423-.88-5.186-3.54-4.672l-25.505 4.922c-2.396.462-4.435-1.77-3.759-4.114l16.646-57.705c.677-2.35-1.37-4.583-3.769-4.113Z"></path></svg>
package/package.json ADDED
@@ -0,0 +1,43 @@
1
+ {
2
+ "name": "@musaaj/simpleeditor",
3
+ "private": false,
4
+ "version": "0.0.1",
5
+ "type": "module",
6
+ "main": "./dist/simpleeditor.js",
7
+ "module": "./dist/simpleeditor.js",
8
+ "types": "./dist/types/main.d.ts",
9
+ "exports": {
10
+ ".": {
11
+ "types": "./dist/types/main.d.ts",
12
+ "import": "./dist/simpleeditor.js"
13
+ },
14
+ "./style.css": "./dist/style.css"
15
+ },
16
+ "files": [
17
+ "dist",
18
+ "README.md"
19
+ ],
20
+ "scripts": {
21
+ "dev": "vite",
22
+ "build": "vite build && tsc -p tsconfig.build.json",
23
+ "typecheck": "tsc -p tsconfig.json",
24
+ "preview": "vite preview",
25
+ "test": "vitest",
26
+ "test:run": "vitest run",
27
+ "prepublishOnly": "npm run build"
28
+ },
29
+ "devDependencies": {
30
+ "jsdom": "^28.0.0",
31
+ "typescript": "~5.9.3",
32
+ "vite": "npm:rolldown-vite@7.2.5",
33
+ "vitest": "^4.0.18"
34
+ },
35
+ "resolutions": {
36
+ "vite": "npm:rolldown-vite@7.2.5"
37
+ },
38
+ "dependencies": {
39
+ "@fortawesome/fontawesome-free": "^7.1.0",
40
+ "mathlive": "^0.108.2",
41
+ "quill": "2.0.3"
42
+ }
43
+ }