@sealcode/jdd-editor 0.1.6 → 0.1.8

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 (117) hide show
  1. package/.nyc_output/29e7bb87-9f10-462e-84d8-ec620cfa9e6b.json +1 -0
  2. package/.nyc_output/7d7104e8-f179-427b-b4bd-30f78397e4f1.json +1 -0
  3. package/.nyc_output/9bfa248d-4f8e-4d29-9c47-d1a3961c5254.json +1 -0
  4. package/.nyc_output/processinfo/29e7bb87-9f10-462e-84d8-ec620cfa9e6b.json +1 -0
  5. package/.nyc_output/processinfo/7d7104e8-f179-427b-b4bd-30f78397e4f1.json +1 -0
  6. package/.nyc_output/processinfo/9bfa248d-4f8e-4d29-9c47-d1a3961c5254.json +1 -0
  7. package/.nyc_output/processinfo/index.json +1 -0
  8. package/.xunit +2 -0
  9. package/assets/styles/components.jdd-page.css +3 -2
  10. package/coverage/clover.xml +846 -0
  11. package/dist/src/inputs/component-input.js +7 -4
  12. package/dist/src/inputs/component-input.js.map +2 -2
  13. package/lib/src/component-preview-actions.js +439 -0
  14. package/lib/src/component-preview-actions.js.map +7 -0
  15. package/lib/src/components.sreact.js +93 -0
  16. package/lib/src/components.sreact.js.map +7 -0
  17. package/{dist/src → lib/src/controllers}/autogrow-textarea.stimulus.js.map +1 -1
  18. package/{dist/src → lib/src/controllers}/component-debugger.stimulus.js +3 -0
  19. package/lib/src/controllers/component-debugger.stimulus.js.map +7 -0
  20. package/{dist/src → lib/src/controllers}/exportable-textarea.stimulus.js.map +1 -1
  21. package/{dist/src → lib/src/controllers}/input-image-preview.stimulus.js.map +1 -1
  22. package/{dist/src → lib/src/controllers}/jdd-table-paste.stimulus.js.map +1 -1
  23. package/{dist/src → lib/src/controllers}/json-editor.stimulus.js.map +1 -1
  24. package/{dist/src → lib/src/controllers}/markdown-textarea.stimulus.js.map +1 -1
  25. package/lib/src/controllers/refresh-on-ts-changes.stimulus.js +90 -0
  26. package/lib/src/controllers/refresh-on-ts-changes.stimulus.js.map +7 -0
  27. package/lib/src/controllers/refresh-styles.stimulus.js +67 -0
  28. package/lib/src/controllers/refresh-styles.stimulus.js.map +7 -0
  29. package/{dist/src → lib/src/controllers}/submit-on-input.stimulus.js.map +1 -1
  30. package/{dist/src → lib/src/controllers}/toast.stimulus.js.map +1 -1
  31. package/lib/src/edit-jdd-field.js +94 -0
  32. package/lib/src/edit-jdd-field.js.map +7 -0
  33. package/lib/src/index.js +3 -0
  34. package/lib/src/index.js.map +7 -0
  35. package/lib/src/inputs/component-input-enum.js +30 -0
  36. package/lib/src/inputs/component-input-enum.js.map +7 -0
  37. package/lib/src/inputs/component-input-image.js +63 -0
  38. package/lib/src/inputs/component-input-image.js.map +7 -0
  39. package/lib/src/inputs/component-input-list.js +74 -0
  40. package/lib/src/inputs/component-input-list.js.map +7 -0
  41. package/lib/src/inputs/component-input-single-reference.js +31 -0
  42. package/lib/src/inputs/component-input-single-reference.js.map +7 -0
  43. package/lib/src/inputs/component-input-structured.js +36 -0
  44. package/lib/src/inputs/component-input-structured.js.map +7 -0
  45. package/lib/src/inputs/component-input-table.js +228 -0
  46. package/lib/src/inputs/component-input-table.js.map +7 -0
  47. package/lib/src/inputs/component-input.js +164 -0
  48. package/lib/src/inputs/component-input.js.map +7 -0
  49. package/lib/src/inputs/print-arg-path.js +7 -0
  50. package/lib/src/inputs/print-arg-path.js.map +7 -0
  51. package/lib/src/jdd-creator.js +131 -0
  52. package/lib/src/jdd-creator.js.map +7 -0
  53. package/lib/src/jdd-page.js +339 -0
  54. package/lib/src/jdd-page.js.map +7 -0
  55. package/lib/src/test.test.js +5 -0
  56. package/lib/src/test.test.js.map +7 -0
  57. package/package.json +1 -1
  58. package/src/inputs/component-input.ts +9 -4
  59. package/dist/src/component-debugger.stimulus.js.map +0 -7
  60. package/lib/component-preview-actions.js +0 -286
  61. package/lib/component-preview-actions.js.map +0 -1
  62. package/lib/components.sreact.js +0 -102
  63. package/lib/components.sreact.js.map +0 -1
  64. package/lib/controllers/autogrow-textarea.stimulus.js +0 -15
  65. package/lib/controllers/autogrow-textarea.stimulus.js.map +0 -1
  66. package/lib/controllers/component-debugger.stimulus.js +0 -188
  67. package/lib/controllers/component-debugger.stimulus.js.map +0 -1
  68. package/lib/controllers/exportable-textarea.stimulus.js +0 -79
  69. package/lib/controllers/exportable-textarea.stimulus.js.map +0 -1
  70. package/lib/controllers/input-image-preview.stimulus.js +0 -28
  71. package/lib/controllers/input-image-preview.stimulus.js.map +0 -1
  72. package/lib/controllers/jdd-table-paste.stimulus.js +0 -84
  73. package/lib/controllers/jdd-table-paste.stimulus.js.map +0 -1
  74. package/lib/controllers/json-editor.stimulus.js +0 -134
  75. package/lib/controllers/json-editor.stimulus.js.map +0 -1
  76. package/lib/controllers/markdown-textarea.stimulus.js +0 -186
  77. package/lib/controllers/markdown-textarea.stimulus.js.map +0 -1
  78. package/lib/controllers/refresh-on-ts-changes.stimulus.js +0 -123
  79. package/lib/controllers/refresh-on-ts-changes.stimulus.js.map +0 -1
  80. package/lib/controllers/refresh-styles.stimulus.js +0 -66
  81. package/lib/controllers/refresh-styles.stimulus.js.map +0 -1
  82. package/lib/controllers/submit-on-input.stimulus.js +0 -48
  83. package/lib/controllers/submit-on-input.stimulus.js.map +0 -1
  84. package/lib/controllers/toast.stimulus.js +0 -16
  85. package/lib/controllers/toast.stimulus.js.map +0 -1
  86. package/lib/edit-jdd-field.js +0 -102
  87. package/lib/edit-jdd-field.js.map +0 -1
  88. package/lib/index.js +0 -19
  89. package/lib/index.js.map +0 -1
  90. package/lib/inputs/component-input-enum.js +0 -25
  91. package/lib/inputs/component-input-enum.js.map +0 -1
  92. package/lib/inputs/component-input-image.js +0 -47
  93. package/lib/inputs/component-input-image.js.map +0 -1
  94. package/lib/inputs/component-input-list.js +0 -61
  95. package/lib/inputs/component-input-list.js.map +0 -1
  96. package/lib/inputs/component-input-single-reference.js +0 -36
  97. package/lib/inputs/component-input-single-reference.js.map +0 -1
  98. package/lib/inputs/component-input-structured.js +0 -42
  99. package/lib/inputs/component-input-structured.js.map +0 -1
  100. package/lib/inputs/component-input-table.js +0 -184
  101. package/lib/inputs/component-input-table.js.map +0 -1
  102. package/lib/inputs/component-input.js +0 -133
  103. package/lib/inputs/component-input.js.map +0 -1
  104. package/lib/inputs/print-arg-path.js +0 -7
  105. package/lib/inputs/print-arg-path.js.map +0 -1
  106. package/lib/jdd-creator.js +0 -113
  107. package/lib/jdd-creator.js.map +0 -1
  108. package/lib/jdd-page.js +0 -310
  109. package/lib/jdd-page.js.map +0 -1
  110. /package/{dist/src → lib/src/controllers}/autogrow-textarea.stimulus.js +0 -0
  111. /package/{dist/src → lib/src/controllers}/exportable-textarea.stimulus.js +0 -0
  112. /package/{dist/src → lib/src/controllers}/input-image-preview.stimulus.js +0 -0
  113. /package/{dist/src → lib/src/controllers}/jdd-table-paste.stimulus.js +0 -0
  114. /package/{dist/src → lib/src/controllers}/json-editor.stimulus.js +0 -0
  115. /package/{dist/src → lib/src/controllers}/markdown-textarea.stimulus.js +0 -0
  116. /package/{dist/src → lib/src/controllers}/submit-on-input.stimulus.js +0 -0
  117. /package/{dist/src → lib/src/controllers}/toast.stimulus.js +0 -0
@@ -1,79 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- /* eslint-disable @typescript-eslint/no-non-null-assertion */
13
- const stimulus_1 = require("stimulus");
14
- function download(data, filename, type) {
15
- const file = new Blob([data], { type: type });
16
- const a = document.createElement("a"), url = URL.createObjectURL(file);
17
- a.href = url;
18
- a.download = filename;
19
- document.body.appendChild(a);
20
- a.click();
21
- setTimeout(function () {
22
- document.body.removeChild(a);
23
- window.URL.revokeObjectURL(url);
24
- }, 0);
25
- }
26
- class ExportableTextarea extends stimulus_1.Controller {
27
- connect() {
28
- console.log("exportable", this.element);
29
- this.element.removeAttribute("open");
30
- this.element.addEventListener("turbo:before-morph-attribute", (event) => {
31
- if (event.target == this.element &&
32
- event.detail.attributeName == "open") {
33
- event.preventDefault();
34
- }
35
- });
36
- }
37
- copy(e) {
38
- return __awaiter(this, void 0, void 0, function* () {
39
- e.preventDefault();
40
- const textarea = this.element.querySelector("textarea");
41
- if (!textarea) {
42
- throw new Error("Couldn't find the textarea");
43
- }
44
- yield navigator.clipboard.writeText(textarea.value);
45
- e.target.textContent = "Copied";
46
- yield sleep(1000);
47
- e.target.textContent = "Copy";
48
- });
49
- }
50
- download(e) {
51
- return __awaiter(this, void 0, void 0, function* () {
52
- e.preventDefault();
53
- const textarea = this.element.querySelector("textarea");
54
- if (!textarea) {
55
- throw new Error("Couldn't find the textarea");
56
- }
57
- download(textarea.value, String(Date.now()) + ".json", "application/json");
58
- });
59
- }
60
- import(e) {
61
- return __awaiter(this, void 0, void 0, function* () {
62
- var _a;
63
- e.preventDefault();
64
- const file_input = this.element.querySelector("input[type='file']");
65
- const file = (_a = file_input.files) === null || _a === void 0 ? void 0 : _a[0];
66
- if (file) {
67
- const text = yield file.text();
68
- const textarea = this.element.querySelector("textarea");
69
- textarea.innerHTML = text.replaceAll("<", "&lt;");
70
- textarea.dispatchEvent(new Event("change"));
71
- }
72
- });
73
- }
74
- }
75
- exports.default = ExportableTextarea;
76
- function sleep(n) {
77
- return new Promise((resolve) => setTimeout(resolve, n));
78
- }
79
- //# sourceMappingURL=exportable-textarea.stimulus.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"exportable-textarea.stimulus.js","sourceRoot":"","sources":["../../src/controllers/exportable-textarea.stimulus.ts"],"names":[],"mappings":"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"}
@@ -1,28 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const stimulus_1 = require("stimulus");
4
- class InputImagePreview extends stimulus_1.Controller {
5
- handleChange() {
6
- var _a, _b, _c, _d;
7
- let img = this.element.querySelector("img");
8
- if (!img) {
9
- img = document.createElement("img");
10
- img.setAttribute("style", "height: 40px; width: 40px");
11
- (_a = this.element
12
- .querySelector(".image-preview-container")) === null || _a === void 0 ? void 0 : _a.appendChild(img);
13
- }
14
- window.URL.revokeObjectURL(img.src);
15
- const file = (_c = (_b = this.element.querySelector("input")) === null || _b === void 0 ? void 0 : _b.files) === null || _c === void 0 ? void 0 : _c[0];
16
- if (!file) {
17
- console.warn("No file");
18
- return;
19
- }
20
- const new_url = window.URL.createObjectURL(file);
21
- img.src = new_url;
22
- img.parentNode;
23
- (_d = img.parentElement) === null || _d === void 0 ? void 0 : _d.querySelectorAll("source").forEach((e) => { var _a; return (_a = e.parentNode) === null || _a === void 0 ? void 0 : _a.removeChild(e); });
24
- img.style.aspectRatio = "1";
25
- }
26
- }
27
- exports.default = InputImagePreview;
28
- //# sourceMappingURL=input-image-preview.stimulus.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"input-image-preview.stimulus.js","sourceRoot":"","sources":["../../src/controllers/input-image-preview.stimulus.ts"],"names":[],"mappings":";;AAAA,uCAAsC;AAEtC,MAAqB,iBAAkB,SAAQ,qBAAU;IAGxD,YAAY;;QACX,IAAI,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC5C,IAAI,CAAC,GAAG,EAAE,CAAC;YACV,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YACpC,GAAG,CAAC,YAAY,CAAC,OAAO,EAAE,2BAA2B,CAAC,CAAC;YACvD,MAAA,IAAI,CAAC,OAAO;iBACV,aAAa,CAAC,0BAA0B,CAAC,0CACxC,WAAW,CAAC,GAAG,CAAC,CAAC;QACrB,CAAC;QACD,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACpC,MAAM,IAAI,GAAG,MAAA,MAAA,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,0CAAE,KAAK,0CAAG,CAAC,CAAC,CAAC;QAC7D,IAAI,CAAC,IAAI,EAAE,CAAC;YACX,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACxB,OAAO;QACR,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QACjD,GAAG,CAAC,GAAG,GAAG,OAAO,CAAC;QAClB,GAAG,CAAC,UAAU,CAAC;QACf,MAAA,GAAG,CAAC,aAAa,0CACd,gBAAgB,CAAC,QAAQ,EAC1B,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,WAAC,OAAA,MAAA,CAAC,CAAC,UAAU,0CAAE,WAAW,CAAC,CAAC,CAAC,CAAA,EAAA,CAAC,CAAC;QAC/C,GAAG,CAAC,KAAK,CAAC,WAAW,GAAG,GAAG,CAAC;IAC7B,CAAC;CACD;AA1BD,oCA0BC"}
@@ -1,84 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __importDefault = (this && this.__importDefault) || function (mod) {
12
- return (mod && mod.__esModule) ? mod : { "default": mod };
13
- };
14
- Object.defineProperty(exports, "__esModule", { value: true });
15
- /* eslint-disable @typescript-eslint/no-non-null-assertion */
16
- /* eslint-disable @typescript-eslint/consistent-type-assertions */
17
- /* eslint-disable no-await-in-loop */
18
- /* eslint-disable @typescript-eslint/no-misused-promises */
19
- const stimulus_1 = require("stimulus");
20
- const turndown_1 = __importDefault(require("turndown"));
21
- const object_path_1 = __importDefault(require("object-path"));
22
- const turndownService = new turndown_1.default();
23
- class default_1 extends stimulus_1.Controller {
24
- connect() {
25
- this.element.addEventListener("click", () => __awaiter(this, void 0, void 0, function* () {
26
- const clipboardContents = yield navigator.clipboard.read();
27
- for (const item of clipboardContents) {
28
- if (!item.types.includes("text/html")) {
29
- alert("Nie można skopiować tabeli - nie znaleziono danych HTML");
30
- return;
31
- }
32
- const blob = yield item.getType("text/html");
33
- const html = yield blob.text();
34
- const div = document.createElement("div");
35
- div.innerHTML = html;
36
- const table = div.querySelector("table");
37
- if (!table) {
38
- alert("No table in clipboard");
39
- }
40
- const rows = Array.from((table === null || table === void 0 ? void 0 : table.querySelectorAll("tr")) || []).map((tr) => {
41
- const cells = Array.from(tr.querySelectorAll("td"));
42
- return {
43
- type: "row",
44
- cells: cells.map((cell) => turndownService.turndown(cell)),
45
- };
46
- });
47
- const form = this.element.closest("form");
48
- const json_textarea = document.getElementById("component-debugger-json-textarea");
49
- if (!json_textarea) {
50
- console.error("Could not find json textarea with the jdd state");
51
- return;
52
- }
53
- if (!form) {
54
- throw new Error("Not inside a form");
55
- }
56
- const handler = () => {
57
- document.removeEventListener("turbo:morph", handler);
58
- const state = JSON.parse(json_textarea.value);
59
- object_path_1.default.set(state, this.argpathValue, {
60
- rows,
61
- });
62
- json_textarea.childNodes[0].textContent =
63
- JSON.stringify(state);
64
- setTimeout(() => {
65
- // async in order to give a chance for UI state to update after changing the iframe value
66
- const submitter_button = document.createElement("button");
67
- submitter_button.setAttribute("formaction", "./?action=replace_state&action_args=W10=");
68
- form.appendChild(submitter_button);
69
- form.requestSubmit(submitter_button);
70
- submitter_button.remove();
71
- }, 0);
72
- };
73
- document.addEventListener("turbo:morph", handler);
74
- form.requestSubmit(); // to get the newest json first, there may be some
75
- // unsent changes
76
- }
77
- }));
78
- }
79
- }
80
- default_1.values = {
81
- argpath: String,
82
- };
83
- exports.default = default_1;
84
- //# sourceMappingURL=jdd-table-paste.stimulus.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"jdd-table-paste.stimulus.js","sourceRoot":"","sources":["../../src/controllers/jdd-table-paste.stimulus.ts"],"names":[],"mappings":"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"}
@@ -1,134 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- /* eslint-disable @typescript-eslint/no-unused-vars */
13
- /* eslint-disable @typescript-eslint/no-explicit-any */
14
- /* eslint-disable @typescript-eslint/no-unsafe-assignment */
15
- /* eslint-disable @typescript-eslint/no-unsafe-member-access */
16
- /* eslint-disable @typescript-eslint/no-unsafe-call */
17
- const stimulus_1 = require("stimulus");
18
- const JS_ID = "codemirror-js";
19
- const JS_PATH = "/dist/codemirror.js";
20
- const JS_MODE_ID = "codemirror-js-mode-js";
21
- const JS_MODE_PATH = "/dist/codemirror-javascript-mode.js";
22
- const CSS_ID = "codemirror-css";
23
- const CSS_PATH = "/dist/codemirror.css";
24
- class JSONEditor extends stimulus_1.Controller {
25
- constructor() {
26
- super(...arguments);
27
- this.saving = false;
28
- }
29
- addCSS() {
30
- const tag = document.querySelector(`head #${CSS_ID}`);
31
- if (!tag) {
32
- const link = document.createElement("link");
33
- link.setAttribute("rel", "stylesheet");
34
- link.setAttribute("type", "text/css");
35
- link.setAttribute("id", CSS_ID);
36
- link.setAttribute("href", CSS_PATH);
37
- document.head.appendChild(link);
38
- }
39
- }
40
- addJS(js_id, js_path) {
41
- return __awaiter(this, void 0, void 0, function* () {
42
- return new Promise((resolve, reject) => {
43
- const once_loaded = (e) => {
44
- e.target.setAttribute("loaded", "true");
45
- resolve();
46
- };
47
- try {
48
- const tag = document.querySelector(`head #${js_id}`);
49
- if (!tag) {
50
- const script = document.createElement("script");
51
- script.setAttribute("id", js_id);
52
- script.setAttribute("src", js_path);
53
- script.addEventListener("load", once_loaded);
54
- document.head.appendChild(script);
55
- }
56
- else {
57
- if (tag.getAttribute("loaded") == "true") {
58
- resolve();
59
- }
60
- else {
61
- tag.addEventListener("load", once_loaded);
62
- }
63
- }
64
- }
65
- catch (e) {
66
- reject(e);
67
- }
68
- });
69
- });
70
- }
71
- connect() {
72
- return __awaiter(this, void 0, void 0, function* () {
73
- var _a, _b;
74
- if ((_a = this.element.parentNode) === null || _a === void 0 ? void 0 : _a.querySelector(".CodeMirror")) {
75
- //already loaded, quit;
76
- return;
77
- }
78
- this.addCSS();
79
- yield this.addJS(JS_ID, JS_PATH);
80
- yield this.addJS(JS_MODE_ID, JS_MODE_PATH);
81
- this.cm = CodeMirror.fromTextArea(this.element, {
82
- mode: {
83
- name: "javascript",
84
- json: true,
85
- },
86
- theme: "default",
87
- addModeClass: true,
88
- lineWrapping: true,
89
- });
90
- this.cm.on("change", () => {
91
- this.saving = true;
92
- this.element.innerHTML = this.cm.getValue().replace("<", "&lt;");
93
- this.saving = false;
94
- });
95
- // to prevent morhping from removing the element
96
- this.cm.getWrapperElement().setAttribute("data-turbo-permanent", "");
97
- const observer = new MutationObserver((mutation) => {
98
- console.log("DETECTED TEXTAREA MUTATION CHANGE!", mutation);
99
- if (!this.saving) {
100
- if (this.cm.getValue() != this.element.innerHTML) {
101
- console.log("SETTING CM VALUE TO", this.element.innerHTML.slice(0, 100));
102
- this.cm.setValue(this.element.innerHTML);
103
- }
104
- }
105
- });
106
- observer.observe(this.element, {
107
- characterData: true,
108
- subtree: true,
109
- });
110
- this.element.addEventListener("change", () => {
111
- console.log("DETECTED TEXTAREA CHANGE!");
112
- if (!this.saving) {
113
- if (this.cm.getValue() != this.element.innerHTML) {
114
- console.log("SETTING CM VALUE TO", this.element.innerHTML.slice(0, 100));
115
- this.cm.setValue(this.element.innerHTML);
116
- }
117
- }
118
- });
119
- (_b = this.element
120
- .closest("details")) === null || _b === void 0 ? void 0 : _b.addEventListener("toggle", (event) => {
121
- if (event.target.open) {
122
- this.cm.refresh();
123
- }
124
- });
125
- });
126
- }
127
- disconnect() {
128
- return __awaiter(this, void 0, void 0, function* () {
129
- console.log("DISCONNECTING JSON EDITOR");
130
- });
131
- }
132
- }
133
- exports.default = JSONEditor;
134
- //# sourceMappingURL=json-editor.stimulus.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"json-editor.stimulus.js","sourceRoot":"","sources":["../../src/controllers/json-editor.stimulus.ts"],"names":[],"mappings":"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"}
@@ -1,186 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- /* eslint-disable @typescript-eslint/no-misused-promises */
13
- /* eslint-disable @typescript-eslint/no-unsafe-member-access */
14
- /* eslint-disable @typescript-eslint/no-unsafe-call */
15
- /* eslint-disable @typescript-eslint/no-explicit-any */
16
- const stimulus_1 = require("stimulus");
17
- const CSS_ID = "simplemde-css";
18
- const JS_ID = "simplemde-js";
19
- class MarkdownTextarea extends stimulus_1.Controller {
20
- constructor() {
21
- super(...arguments);
22
- this.mdeStarted = false;
23
- }
24
- addCSS() {
25
- const tag = document.querySelector(`head #${CSS_ID}`);
26
- if (!tag) {
27
- const link = document.createElement("link");
28
- link.setAttribute("rel", "stylesheet");
29
- link.setAttribute("type", "text/css");
30
- link.setAttribute("id", CSS_ID);
31
- link.setAttribute("href", "/dist/simplemde.min.css");
32
- document.head.appendChild(link);
33
- }
34
- }
35
- addJS() {
36
- return __awaiter(this, void 0, void 0, function* () {
37
- return new Promise((resolve, reject) => {
38
- const once_loaded = (e) => {
39
- e.target.setAttribute("loaded", "true");
40
- resolve();
41
- };
42
- try {
43
- const tag = document.querySelector(`head #${JS_ID}`);
44
- if (!tag) {
45
- const script = document.createElement("script");
46
- script.setAttribute("id", JS_ID);
47
- script.setAttribute("src", "/dist/simplemde.min.js");
48
- script.addEventListener("load", once_loaded);
49
- document.head.appendChild(script);
50
- }
51
- else {
52
- if (tag.getAttribute("loaded") == "true") {
53
- resolve();
54
- }
55
- else {
56
- tag.addEventListener("load", once_loaded);
57
- }
58
- }
59
- }
60
- catch (e) {
61
- reject(e);
62
- }
63
- });
64
- });
65
- }
66
- handleResize() {
67
- this.sm.codemirror.refresh();
68
- }
69
- connect() {
70
- return __awaiter(this, void 0, void 0, function* () {
71
- var _a, _b;
72
- console.log("Markdown connect!", this.element);
73
- if ((_a = this.element.parentNode) === null || _a === void 0 ? void 0 : _a.querySelector(".editor-toolbar")) {
74
- //already loaded, quit;
75
- return;
76
- }
77
- this.addCSS();
78
- yield this.addJS();
79
- const component_block = this.isInsideComponentBlock();
80
- // some offloading of starting the MDE, because it is slow on Chrome
81
- if (component_block) {
82
- if (this.isHiddenBlock()) {
83
- const handler = () => {
84
- var _a;
85
- (_a = this.getCheckboxThatShowsBlock()) === null || _a === void 0 ? void 0 : _a.removeEventListener("change", handler);
86
- setTimeout(() => this.init(), 1);
87
- };
88
- (_b = this.getCheckboxThatShowsBlock()) === null || _b === void 0 ? void 0 : _b.addEventListener("change", handler);
89
- }
90
- else {
91
- yield this.init();
92
- }
93
- }
94
- else {
95
- yield this.init();
96
- }
97
- });
98
- }
99
- startMDE() {
100
- return __awaiter(this, void 0, void 0, function* () {
101
- if (this.mdeStarted) {
102
- return;
103
- }
104
- this.sm = new SimpleMDE({
105
- element: this.element,
106
- autoDownloadFontAwesome: false,
107
- spellChecker: false,
108
- hideIcons: ["image", "preview", "side-by-side"],
109
- status: ["words"],
110
- autosave: { enabled: false },
111
- forceSync: true, // for autosubmit to work
112
- initialValue: this.element.value,
113
- });
114
- // this.element.closest(".grow-wrap").setAttribute("data-turbo-permanent", "");
115
- this.sm.codemirror.on("change", () => {
116
- this.element.dispatchEvent(new Event("input"));
117
- });
118
- this.setupRefreshOnShow();
119
- this.resizeObserver = new ResizeObserver(() => {
120
- this.sm.codemirror.refresh();
121
- });
122
- const wrapper = this.sm.element.closest(".grow-wrap");
123
- this.resizeObserver.observe(wrapper);
124
- document.addEventListener("turbo:before-morph-element", function (event) {
125
- const target = event.target;
126
- // disallow morphing, but allow removing
127
- if (target == wrapper &&
128
- event.detail.newElement !== undefined) {
129
- event.preventDefault();
130
- }
131
- });
132
- this.mdeStarted = true;
133
- });
134
- }
135
- init() {
136
- return __awaiter(this, void 0, void 0, function* () {
137
- this.intersectionObserver = new IntersectionObserver((entries) => {
138
- entries.forEach((entry) => {
139
- if (entry.intersectionRatio > 0.2) {
140
- this.startMDE();
141
- }
142
- });
143
- }, {
144
- root: this.element.closest(".component-arguments"),
145
- rootMargin: "0px",
146
- threshold: 0.25,
147
- });
148
- this.intersectionObserver.observe(this.element);
149
- });
150
- }
151
- isHiddenBlock() {
152
- var _a;
153
- return !((_a = this.getCheckboxThatShowsBlock()) === null || _a === void 0 ? void 0 : _a.checked);
154
- }
155
- isInsideComponentBlock() {
156
- return this.element.closest(".jdd-editor__component-block");
157
- }
158
- getCheckboxThatShowsBlock() {
159
- const block = this.isInsideComponentBlock();
160
- if (!block) {
161
- return null;
162
- }
163
- return block.querySelector(".component-collapse-toggle");
164
- }
165
- setupRefreshOnShow() {
166
- var _a;
167
- this.checkboxHandler = (e) => {
168
- const target = e.target;
169
- if (target.checked) {
170
- this.sm.codemirror.refresh();
171
- }
172
- };
173
- (_a = this.getCheckboxThatShowsBlock()) === null || _a === void 0 ? void 0 : _a.addEventListener("change", this.checkboxHandler);
174
- }
175
- disconnect() {
176
- var _a, _b, _c;
177
- console.log("disconnecting", this.element);
178
- (_a = this.getCheckboxThatShowsBlock()) === null || _a === void 0 ? void 0 : _a.removeEventListener("change", this.checkboxHandler);
179
- (_b = this.element
180
- .closest(".grow-wrap")) === null || _b === void 0 ? void 0 : _b.removeAttribute("data-turbo-permanent");
181
- (_c = this.resizeObserver) === null || _c === void 0 ? void 0 : _c.unobserve(this.sm.element);
182
- this.sm.toTextArea();
183
- }
184
- }
185
- exports.default = MarkdownTextarea;
186
- //# sourceMappingURL=markdown-textarea.stimulus.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"markdown-textarea.stimulus.js","sourceRoot":"","sources":["../../src/controllers/markdown-textarea.stimulus.ts"],"names":[],"mappings":"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"}