@measured/puck 0.21.0-canary.3aa27d1d → 0.21.0-canary.501341c5
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/dist/Editor-F2LSS6SE.css +403 -0
- package/dist/Editor-O447AVCX.mjs +204 -0
- package/dist/Render-OFE6QLI2.mjs +55 -0
- package/dist/Render-QEMDIDQC.css +101 -0
- package/dist/{walk-tree-16XYcbNo.d.mts → actions-CJibIB0m.d.mts} +8 -33
- package/dist/{walk-tree-16XYcbNo.d.ts → actions-CJibIB0m.d.ts} +8 -33
- package/dist/chunk-2Q4PACDA.mjs +111 -0
- package/dist/chunk-62AAYNXG.mjs +63 -0
- package/dist/chunk-BSDEIOEK.mjs +706 -0
- package/dist/chunk-CSSRLPHM.mjs +11 -0
- package/dist/chunk-DAQLMM2T.mjs +1722 -0
- package/dist/chunk-M6W7YEVX.mjs +95 -0
- package/dist/chunk-NLUHDYVR.mjs +416 -0
- package/dist/chunk-PLXSMBAA.mjs +53 -0
- package/dist/chunk-QAWJTCV5.mjs +33 -0
- package/dist/chunk-QBGM4ELA.mjs +528 -0
- package/dist/chunk-T3WX7XJ6.mjs +132 -0
- package/dist/chunk-V5I7CVLT.mjs +103 -0
- package/dist/chunk-Y2EFNT5P.mjs +108 -0
- package/dist/chunk-Y656T6AQ.mjs +419 -0
- package/dist/{chunk-GFIVKP2H.mjs → chunk-Z476VA6G.mjs} +1164 -4159
- package/dist/full-2GJTAAZE.css +301 -0
- package/dist/full-BEMDJKDS.mjs +93 -0
- package/dist/index-Bss1jupB.d.ts +116 -0
- package/dist/index-DOcD_H3b.d.mts +116 -0
- package/dist/index.css +102 -94
- package/dist/index.d.mts +10 -126
- package/dist/index.d.ts +10 -126
- package/dist/index.js +6864 -5123
- package/dist/index.mjs +26 -11
- package/dist/internal.d.mts +27 -0
- package/dist/internal.d.ts +27 -0
- package/dist/internal.js +908 -0
- package/dist/internal.mjs +13 -0
- package/dist/loaded-JU3A7Y4L.mjs +57 -0
- package/dist/loaded-N3FYGF2Y.mjs +57 -0
- package/dist/loaded-OBY7OMS6.mjs +60 -0
- package/dist/loaded-RVWBFK7L.css +87 -0
- package/dist/no-external.css +102 -94
- package/dist/no-external.d.mts +3 -1
- package/dist/no-external.d.ts +3 -1
- package/dist/no-external.js +6864 -5123
- package/dist/no-external.mjs +26 -11
- package/dist/rsc.css +34 -26
- package/dist/rsc.d.mts +2 -2
- package/dist/rsc.d.ts +2 -2
- package/dist/rsc.js +245 -187
- package/dist/rsc.mjs +18 -9
- package/dist/walk-tree-BL55zQ9b.d.ts +29 -0
- package/dist/walk-tree-BYuI81Ik.d.mts +29 -0
- package/package.json +9 -4
- package/dist/chunk-SRDLYODX.mjs +0 -1245
package/dist/rsc.js
CHANGED
|
@@ -153,6 +153,205 @@ var require_classnames = __commonJS({
|
|
|
153
153
|
}
|
|
154
154
|
});
|
|
155
155
|
|
|
156
|
+
// lib/get-class-name-factory.ts
|
|
157
|
+
var import_classnames, getClassNameFactory, get_class_name_factory_default;
|
|
158
|
+
var init_get_class_name_factory = __esm({
|
|
159
|
+
"lib/get-class-name-factory.ts"() {
|
|
160
|
+
"use strict";
|
|
161
|
+
init_react_import();
|
|
162
|
+
import_classnames = __toESM(require_classnames());
|
|
163
|
+
getClassNameFactory = (rootClass, styles, config = { baseClass: "" }) => (options = {}) => {
|
|
164
|
+
if (typeof options === "string") {
|
|
165
|
+
const descendant = options;
|
|
166
|
+
const style = styles[`${rootClass}-${descendant}`];
|
|
167
|
+
if (style) {
|
|
168
|
+
return config.baseClass + styles[`${rootClass}-${descendant}`] || "";
|
|
169
|
+
}
|
|
170
|
+
return "";
|
|
171
|
+
} else if (typeof options === "object") {
|
|
172
|
+
const modifiers = options;
|
|
173
|
+
const prefixedModifiers = {};
|
|
174
|
+
for (let modifier in modifiers) {
|
|
175
|
+
prefixedModifiers[styles[`${rootClass}--${modifier}`]] = modifiers[modifier];
|
|
176
|
+
}
|
|
177
|
+
const c = styles[rootClass];
|
|
178
|
+
return config.baseClass + (0, import_classnames.default)(__spreadValues({
|
|
179
|
+
[c]: !!c
|
|
180
|
+
}, prefixedModifiers));
|
|
181
|
+
} else {
|
|
182
|
+
return config.baseClass + styles[rootClass] || "";
|
|
183
|
+
}
|
|
184
|
+
};
|
|
185
|
+
get_class_name_factory_default = getClassNameFactory;
|
|
186
|
+
}
|
|
187
|
+
});
|
|
188
|
+
|
|
189
|
+
// css-module:/home/runner/work/puck/puck/packages/core/components/RichTextEditor/styles.module.css/#css-module-data
|
|
190
|
+
var init_css_module_data = __esm({
|
|
191
|
+
"css-module:/home/runner/work/puck/puck/packages/core/components/RichTextEditor/styles.module.css/#css-module-data"() {
|
|
192
|
+
}
|
|
193
|
+
});
|
|
194
|
+
|
|
195
|
+
// css-module:/home/runner/work/puck/puck/packages/core/components/RichTextEditor/styles.module.css#css-module
|
|
196
|
+
var styles_module_default;
|
|
197
|
+
var init_styles_module = __esm({
|
|
198
|
+
"css-module:/home/runner/work/puck/puck/packages/core/components/RichTextEditor/styles.module.css#css-module"() {
|
|
199
|
+
"use strict";
|
|
200
|
+
init_react_import();
|
|
201
|
+
init_css_module_data();
|
|
202
|
+
styles_module_default = { "RichTextEditor": "_RichTextEditor_1elol_1", "RichTextEditor--editor": "_RichTextEditor--editor_1elol_50", "RichTextEditor--disabled": "_RichTextEditor--disabled_1elol_106", "RichTextEditor--isActive": "_RichTextEditor--isActive_1elol_110", "RichTextEditor-menu": "_RichTextEditor-menu_1elol_116" };
|
|
203
|
+
}
|
|
204
|
+
});
|
|
205
|
+
|
|
206
|
+
// components/RichTextEditor/extension.ts
|
|
207
|
+
var import_core, import_extension_blockquote, import_extension_bold, import_extension_code, import_extension_code_block, import_extension_document, import_extension_hard_break, import_extension_heading, import_extension_horizontal_rule, import_extension_italic, import_extension_link, import_extension_list, import_extension_paragraph, import_extension_strike, import_extension_text, import_extension_text_align, import_extension_underline, defaultPuckRichTextOptions, PuckRichText;
|
|
208
|
+
var init_extension = __esm({
|
|
209
|
+
"components/RichTextEditor/extension.ts"() {
|
|
210
|
+
"use strict";
|
|
211
|
+
init_react_import();
|
|
212
|
+
import_core = require("@tiptap/core");
|
|
213
|
+
import_extension_blockquote = require("@tiptap/extension-blockquote");
|
|
214
|
+
import_extension_bold = require("@tiptap/extension-bold");
|
|
215
|
+
import_extension_code = require("@tiptap/extension-code");
|
|
216
|
+
import_extension_code_block = require("@tiptap/extension-code-block");
|
|
217
|
+
import_extension_document = require("@tiptap/extension-document");
|
|
218
|
+
import_extension_hard_break = require("@tiptap/extension-hard-break");
|
|
219
|
+
import_extension_heading = require("@tiptap/extension-heading");
|
|
220
|
+
import_extension_horizontal_rule = require("@tiptap/extension-horizontal-rule");
|
|
221
|
+
import_extension_italic = require("@tiptap/extension-italic");
|
|
222
|
+
import_extension_link = require("@tiptap/extension-link");
|
|
223
|
+
import_extension_list = require("@tiptap/extension-list");
|
|
224
|
+
import_extension_paragraph = require("@tiptap/extension-paragraph");
|
|
225
|
+
import_extension_strike = require("@tiptap/extension-strike");
|
|
226
|
+
import_extension_text = require("@tiptap/extension-text");
|
|
227
|
+
import_extension_text_align = __toESM(require("@tiptap/extension-text-align"));
|
|
228
|
+
import_extension_underline = require("@tiptap/extension-underline");
|
|
229
|
+
defaultPuckRichTextOptions = {
|
|
230
|
+
textAlign: {
|
|
231
|
+
types: ["heading", "paragraph"]
|
|
232
|
+
}
|
|
233
|
+
};
|
|
234
|
+
PuckRichText = import_core.Extension.create({
|
|
235
|
+
name: "puckRichText",
|
|
236
|
+
addExtensions() {
|
|
237
|
+
const extensions = [];
|
|
238
|
+
const options = __spreadValues(__spreadValues({}, this.options), defaultPuckRichTextOptions);
|
|
239
|
+
if (options.bold !== false) {
|
|
240
|
+
extensions.push(import_extension_bold.Bold.configure(options.bold));
|
|
241
|
+
}
|
|
242
|
+
if (options.blockquote !== false) {
|
|
243
|
+
extensions.push(import_extension_blockquote.Blockquote.configure(options.blockquote));
|
|
244
|
+
}
|
|
245
|
+
if (options.bulletList !== false) {
|
|
246
|
+
extensions.push(import_extension_list.BulletList.configure(options.bulletList));
|
|
247
|
+
}
|
|
248
|
+
if (options.code !== false) {
|
|
249
|
+
extensions.push(import_extension_code.Code.configure(options.code));
|
|
250
|
+
}
|
|
251
|
+
if (options.codeBlock !== false) {
|
|
252
|
+
extensions.push(import_extension_code_block.CodeBlock.configure(options.codeBlock));
|
|
253
|
+
}
|
|
254
|
+
if (options.document !== false) {
|
|
255
|
+
extensions.push(import_extension_document.Document.configure(options.document));
|
|
256
|
+
}
|
|
257
|
+
if (options.hardBreak !== false) {
|
|
258
|
+
extensions.push(import_extension_hard_break.HardBreak.configure(options.hardBreak));
|
|
259
|
+
}
|
|
260
|
+
if (options.heading !== false) {
|
|
261
|
+
extensions.push(import_extension_heading.Heading.configure(options.heading));
|
|
262
|
+
}
|
|
263
|
+
if (options.horizontalRule !== false) {
|
|
264
|
+
extensions.push(import_extension_horizontal_rule.HorizontalRule.configure(options.horizontalRule));
|
|
265
|
+
}
|
|
266
|
+
if (options.italic !== false) {
|
|
267
|
+
extensions.push(import_extension_italic.Italic.configure(options.italic));
|
|
268
|
+
}
|
|
269
|
+
if (options.listItem !== false) {
|
|
270
|
+
extensions.push(import_extension_list.ListItem.configure(options.listItem));
|
|
271
|
+
}
|
|
272
|
+
if (options.listKeymap !== false) {
|
|
273
|
+
extensions.push(import_extension_list.ListKeymap.configure(options == null ? void 0 : options.listKeymap));
|
|
274
|
+
}
|
|
275
|
+
if (options.link !== false) {
|
|
276
|
+
extensions.push(import_extension_link.Link.configure(options == null ? void 0 : options.link));
|
|
277
|
+
}
|
|
278
|
+
if (options.orderedList !== false) {
|
|
279
|
+
extensions.push(import_extension_list.OrderedList.configure(options.orderedList));
|
|
280
|
+
}
|
|
281
|
+
if (options.paragraph !== false) {
|
|
282
|
+
extensions.push(import_extension_paragraph.Paragraph.configure(options.paragraph));
|
|
283
|
+
}
|
|
284
|
+
if (options.strike !== false) {
|
|
285
|
+
extensions.push(import_extension_strike.Strike.configure(options.strike));
|
|
286
|
+
}
|
|
287
|
+
if (options.text !== false) {
|
|
288
|
+
extensions.push(import_extension_text.Text.configure(options.text));
|
|
289
|
+
}
|
|
290
|
+
if (options.textAlign !== false) {
|
|
291
|
+
extensions.push(import_extension_text_align.default.configure(options.textAlign));
|
|
292
|
+
}
|
|
293
|
+
if (options.underline !== false) {
|
|
294
|
+
extensions.push(import_extension_underline.Underline.configure(options == null ? void 0 : options.underline));
|
|
295
|
+
}
|
|
296
|
+
return extensions;
|
|
297
|
+
}
|
|
298
|
+
});
|
|
299
|
+
}
|
|
300
|
+
});
|
|
301
|
+
|
|
302
|
+
// components/RichTextEditor/components/Render.tsx
|
|
303
|
+
var Render_exports = {};
|
|
304
|
+
__export(Render_exports, {
|
|
305
|
+
RichTextRender: () => RichTextRender
|
|
306
|
+
});
|
|
307
|
+
function RichTextRender({
|
|
308
|
+
content,
|
|
309
|
+
field
|
|
310
|
+
}) {
|
|
311
|
+
const { tiptap = {}, options } = field;
|
|
312
|
+
const { extensions = [] } = tiptap;
|
|
313
|
+
const loadedExtensions = (0, import_react3.useMemo)(
|
|
314
|
+
() => [PuckRichText.configure(options), ...extensions],
|
|
315
|
+
[field, extensions]
|
|
316
|
+
);
|
|
317
|
+
const normalized = (0, import_react3.useMemo)(() => {
|
|
318
|
+
if (typeof content === "object" && (content == null ? void 0 : content.type) === "doc") {
|
|
319
|
+
return content;
|
|
320
|
+
}
|
|
321
|
+
if (typeof content === "string") {
|
|
322
|
+
const isHtml = /<\/?[a-z][\s\S]*>/i.test(content);
|
|
323
|
+
if (isHtml) {
|
|
324
|
+
return (0, import_html.generateJSON)(content, loadedExtensions);
|
|
325
|
+
}
|
|
326
|
+
return {
|
|
327
|
+
type: "doc",
|
|
328
|
+
content: [
|
|
329
|
+
{ type: "paragraph", content: [{ type: "text", text: content }] }
|
|
330
|
+
]
|
|
331
|
+
};
|
|
332
|
+
}
|
|
333
|
+
return { type: "doc", content: [] };
|
|
334
|
+
}, [content, loadedExtensions]);
|
|
335
|
+
const html = (0, import_react3.useMemo)(() => {
|
|
336
|
+
return (0, import_html.generateHTML)(normalized, loadedExtensions);
|
|
337
|
+
}, [normalized, loadedExtensions]);
|
|
338
|
+
return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", { className: getClassName2(), children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", { className: "rich-text", dangerouslySetInnerHTML: { __html: html } }) });
|
|
339
|
+
}
|
|
340
|
+
var import_html, import_react3, import_jsx_runtime2, getClassName2;
|
|
341
|
+
var init_Render = __esm({
|
|
342
|
+
"components/RichTextEditor/components/Render.tsx"() {
|
|
343
|
+
"use strict";
|
|
344
|
+
init_react_import();
|
|
345
|
+
import_html = require("@tiptap/html");
|
|
346
|
+
import_react3 = require("react");
|
|
347
|
+
init_get_class_name_factory();
|
|
348
|
+
init_styles_module();
|
|
349
|
+
init_extension();
|
|
350
|
+
import_jsx_runtime2 = require("react/jsx-runtime");
|
|
351
|
+
getClassName2 = get_class_name_factory_default("RichTextEditor", styles_module_default);
|
|
352
|
+
}
|
|
353
|
+
});
|
|
354
|
+
|
|
156
355
|
// bundle/rsc.tsx
|
|
157
356
|
var rsc_exports = {};
|
|
158
357
|
__export(rsc_exports, {
|
|
@@ -418,176 +617,29 @@ function useSlots(config, item, renderSlotEdit, renderSlotRender = renderSlotEdi
|
|
|
418
617
|
init_react_import();
|
|
419
618
|
var import_react5 = require("react");
|
|
420
619
|
|
|
421
|
-
// components/RichTextEditor/lib/use-richtext-
|
|
620
|
+
// components/RichTextEditor/lib/use-richtext-props.tsx
|
|
422
621
|
init_react_import();
|
|
423
622
|
var import_react4 = require("react");
|
|
424
623
|
|
|
425
|
-
// components/RichTextEditor/
|
|
624
|
+
// components/RichTextEditor/components/RenderFallback.tsx
|
|
426
625
|
init_react_import();
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
// lib/get-class-name-factory.ts
|
|
431
|
-
init_react_import();
|
|
432
|
-
var import_classnames = __toESM(require_classnames());
|
|
433
|
-
var getClassNameFactory = (rootClass, styles, config = { baseClass: "" }) => (options = {}) => {
|
|
434
|
-
if (typeof options === "string") {
|
|
435
|
-
const descendant = options;
|
|
436
|
-
const style = styles[`${rootClass}-${descendant}`];
|
|
437
|
-
if (style) {
|
|
438
|
-
return config.baseClass + styles[`${rootClass}-${descendant}`] || "";
|
|
439
|
-
}
|
|
440
|
-
return "";
|
|
441
|
-
} else if (typeof options === "object") {
|
|
442
|
-
const modifiers = options;
|
|
443
|
-
const prefixedModifiers = {};
|
|
444
|
-
for (let modifier in modifiers) {
|
|
445
|
-
prefixedModifiers[styles[`${rootClass}--${modifier}`]] = modifiers[modifier];
|
|
446
|
-
}
|
|
447
|
-
const c = styles[rootClass];
|
|
448
|
-
return config.baseClass + (0, import_classnames.default)(__spreadValues({
|
|
449
|
-
[c]: !!c
|
|
450
|
-
}, prefixedModifiers));
|
|
451
|
-
} else {
|
|
452
|
-
return config.baseClass + styles[rootClass] || "";
|
|
453
|
-
}
|
|
454
|
-
};
|
|
455
|
-
var get_class_name_factory_default = getClassNameFactory;
|
|
456
|
-
|
|
457
|
-
// css-module:/home/runner/work/puck/puck/packages/core/components/RichTextEditor/styles.module.css#css-module
|
|
458
|
-
init_react_import();
|
|
459
|
-
var styles_module_default = { "RichTextEditor": "_RichTextEditor_1819a_1", "RichTextEditor--editor": "_RichTextEditor--editor_1819a_46", "RichTextEditor--disabled": "_RichTextEditor--disabled_1819a_95", "RichTextEditor--isActive": "_RichTextEditor--isActive_1819a_99", "RichTextEditor-menu": "_RichTextEditor-menu_1819a_105" };
|
|
460
|
-
|
|
461
|
-
// components/RichTextEditor/extensions.ts
|
|
462
|
-
init_react_import();
|
|
463
|
-
var import_core = require("@tiptap/core");
|
|
464
|
-
var import_extension_blockquote = require("@tiptap/extension-blockquote");
|
|
465
|
-
var import_extension_bold = require("@tiptap/extension-bold");
|
|
466
|
-
var import_extension_code = require("@tiptap/extension-code");
|
|
467
|
-
var import_extension_code_block = require("@tiptap/extension-code-block");
|
|
468
|
-
var import_extension_document = require("@tiptap/extension-document");
|
|
469
|
-
var import_extension_hard_break = require("@tiptap/extension-hard-break");
|
|
470
|
-
var import_extension_heading = require("@tiptap/extension-heading");
|
|
471
|
-
var import_extension_horizontal_rule = require("@tiptap/extension-horizontal-rule");
|
|
472
|
-
var import_extension_italic = require("@tiptap/extension-italic");
|
|
473
|
-
var import_extension_link = require("@tiptap/extension-link");
|
|
474
|
-
var import_extension_list = require("@tiptap/extension-list");
|
|
475
|
-
var import_extension_paragraph = require("@tiptap/extension-paragraph");
|
|
476
|
-
var import_extension_strike = require("@tiptap/extension-strike");
|
|
477
|
-
var import_extension_text = require("@tiptap/extension-text");
|
|
478
|
-
var import_extension_text_align = __toESM(require("@tiptap/extension-text-align"));
|
|
479
|
-
var import_extension_underline = require("@tiptap/extension-underline");
|
|
480
|
-
var defaultPuckRichTextOptions = {
|
|
481
|
-
textAlign: {
|
|
482
|
-
types: ["heading", "paragraph"]
|
|
483
|
-
}
|
|
484
|
-
};
|
|
485
|
-
var PuckRichText = import_core.Extension.create({
|
|
486
|
-
name: "puckRichText",
|
|
487
|
-
addExtensions() {
|
|
488
|
-
const extensions = [];
|
|
489
|
-
const options = __spreadValues(__spreadValues({}, this.options), defaultPuckRichTextOptions);
|
|
490
|
-
if (options.bold !== false) {
|
|
491
|
-
extensions.push(import_extension_bold.Bold.configure(options.bold));
|
|
492
|
-
}
|
|
493
|
-
if (options.blockquote !== false) {
|
|
494
|
-
extensions.push(import_extension_blockquote.Blockquote.configure(options.blockquote));
|
|
495
|
-
}
|
|
496
|
-
if (options.bulletList !== false) {
|
|
497
|
-
extensions.push(import_extension_list.BulletList.configure(options.bulletList));
|
|
498
|
-
}
|
|
499
|
-
if (options.code !== false) {
|
|
500
|
-
extensions.push(import_extension_code.Code.configure(options.code));
|
|
501
|
-
}
|
|
502
|
-
if (options.codeBlock !== false) {
|
|
503
|
-
extensions.push(import_extension_code_block.CodeBlock.configure(options.codeBlock));
|
|
504
|
-
}
|
|
505
|
-
if (options.document !== false) {
|
|
506
|
-
extensions.push(import_extension_document.Document.configure(options.document));
|
|
507
|
-
}
|
|
508
|
-
if (options.hardBreak !== false) {
|
|
509
|
-
extensions.push(import_extension_hard_break.HardBreak.configure(options.hardBreak));
|
|
510
|
-
}
|
|
511
|
-
if (options.heading !== false) {
|
|
512
|
-
extensions.push(import_extension_heading.Heading.configure(options.heading));
|
|
513
|
-
}
|
|
514
|
-
if (options.horizontalRule !== false) {
|
|
515
|
-
extensions.push(import_extension_horizontal_rule.HorizontalRule.configure(options.horizontalRule));
|
|
516
|
-
}
|
|
517
|
-
if (options.italic !== false) {
|
|
518
|
-
extensions.push(import_extension_italic.Italic.configure(options.italic));
|
|
519
|
-
}
|
|
520
|
-
if (options.listItem !== false) {
|
|
521
|
-
extensions.push(import_extension_list.ListItem.configure(options.listItem));
|
|
522
|
-
}
|
|
523
|
-
if (options.listKeymap !== false) {
|
|
524
|
-
extensions.push(import_extension_list.ListKeymap.configure(options == null ? void 0 : options.listKeymap));
|
|
525
|
-
}
|
|
526
|
-
if (options.link !== false) {
|
|
527
|
-
extensions.push(import_extension_link.Link.configure(options == null ? void 0 : options.link));
|
|
528
|
-
}
|
|
529
|
-
if (options.orderedList !== false) {
|
|
530
|
-
extensions.push(import_extension_list.OrderedList.configure(options.orderedList));
|
|
531
|
-
}
|
|
532
|
-
if (options.paragraph !== false) {
|
|
533
|
-
extensions.push(import_extension_paragraph.Paragraph.configure(options.paragraph));
|
|
534
|
-
}
|
|
535
|
-
if (options.strike !== false) {
|
|
536
|
-
extensions.push(import_extension_strike.Strike.configure(options.strike));
|
|
537
|
-
}
|
|
538
|
-
if (options.text !== false) {
|
|
539
|
-
extensions.push(import_extension_text.Text.configure(options.text));
|
|
540
|
-
}
|
|
541
|
-
if (options.textAlign !== false) {
|
|
542
|
-
extensions.push(import_extension_text_align.default.configure(options.textAlign));
|
|
543
|
-
}
|
|
544
|
-
if (options.underline !== false) {
|
|
545
|
-
extensions.push(import_extension_underline.Underline.configure(options == null ? void 0 : options.underline));
|
|
546
|
-
}
|
|
547
|
-
return extensions;
|
|
548
|
-
}
|
|
549
|
-
});
|
|
550
|
-
|
|
551
|
-
// components/RichTextEditor/Render.tsx
|
|
626
|
+
init_get_class_name_factory();
|
|
627
|
+
init_styles_module();
|
|
552
628
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
553
629
|
var getClassName = get_class_name_factory_default("RichTextEditor", styles_module_default);
|
|
554
|
-
function
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
const loadedExtensions = (0, import_react3.useMemo)(
|
|
561
|
-
() => [PuckRichText.configure(options), ...extensions],
|
|
562
|
-
[field, extensions]
|
|
563
|
-
);
|
|
564
|
-
const normalized = (0, import_react3.useMemo)(() => {
|
|
565
|
-
if (typeof content === "object" && (content == null ? void 0 : content.type) === "doc") {
|
|
566
|
-
return content;
|
|
567
|
-
}
|
|
568
|
-
if (typeof content === "string") {
|
|
569
|
-
const isHtml = /<\/?[a-z][\s\S]*>/i.test(content);
|
|
570
|
-
if (isHtml) {
|
|
571
|
-
return (0, import_html.generateJSON)(content, loadedExtensions);
|
|
572
|
-
}
|
|
573
|
-
return {
|
|
574
|
-
type: "doc",
|
|
575
|
-
content: [
|
|
576
|
-
{ type: "paragraph", content: [{ type: "text", text: content }] }
|
|
577
|
-
]
|
|
578
|
-
};
|
|
630
|
+
function RichTextRenderFallback({ content }) {
|
|
631
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: getClassName(), children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
632
|
+
"div",
|
|
633
|
+
{
|
|
634
|
+
className: "rich-text",
|
|
635
|
+
dangerouslySetInnerHTML: { __html: content }
|
|
579
636
|
}
|
|
580
|
-
|
|
581
|
-
}, [content, loadedExtensions]);
|
|
582
|
-
const html = (0, import_react3.useMemo)(() => {
|
|
583
|
-
return (0, import_html.generateHTML)(normalized, loadedExtensions);
|
|
584
|
-
}, [normalized, loadedExtensions]);
|
|
585
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: getClassName(), children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "rich-text", dangerouslySetInnerHTML: { __html: html } }) });
|
|
637
|
+
) });
|
|
586
638
|
}
|
|
587
639
|
|
|
588
|
-
// components/RichTextEditor/lib/use-richtext-
|
|
589
|
-
var
|
|
590
|
-
function
|
|
640
|
+
// components/RichTextEditor/lib/use-richtext-props.tsx
|
|
641
|
+
var import_jsx_runtime3 = require("react/jsx-runtime");
|
|
642
|
+
function useRichtextProps(fields, props) {
|
|
591
643
|
const findAllRichtextKeys = (fields2) => {
|
|
592
644
|
if (!fields2) return [];
|
|
593
645
|
const result = [];
|
|
@@ -599,36 +651,41 @@ function useRichtextRenderer(fields, props) {
|
|
|
599
651
|
return result;
|
|
600
652
|
};
|
|
601
653
|
const richtextKeys = (0, import_react4.useMemo)(() => findAllRichtextKeys(fields), [fields]);
|
|
602
|
-
const
|
|
603
|
-
if (!richtextKeys) return {};
|
|
654
|
+
const richtextProps = (0, import_react4.useMemo)(() => {
|
|
655
|
+
if (!(richtextKeys == null ? void 0 : richtextKeys.length)) return {};
|
|
656
|
+
const RichTextRender2 = (0, import_react4.lazy)(
|
|
657
|
+
() => Promise.resolve().then(() => (init_Render(), Render_exports)).then((m) => ({
|
|
658
|
+
default: m.RichTextRender
|
|
659
|
+
}))
|
|
660
|
+
);
|
|
604
661
|
return richtextKeys.reduce((acc, key) => {
|
|
605
|
-
acc[key] = /* @__PURE__ */ (0,
|
|
606
|
-
|
|
662
|
+
acc[key] = /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_react4.Suspense, { fallback: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(RichTextRenderFallback, { content: props[key] }), children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
|
|
663
|
+
RichTextRender2,
|
|
607
664
|
{
|
|
608
665
|
content: props[key],
|
|
609
666
|
field: fields[key]
|
|
610
667
|
}
|
|
611
|
-
);
|
|
668
|
+
) });
|
|
612
669
|
return acc;
|
|
613
670
|
}, {});
|
|
614
|
-
}, [richtextKeys, props]);
|
|
615
|
-
return
|
|
671
|
+
}, [richtextKeys, props, fields]);
|
|
672
|
+
return richtextProps;
|
|
616
673
|
}
|
|
617
674
|
|
|
618
675
|
// components/SlotRender/server.tsx
|
|
619
|
-
var
|
|
620
|
-
var SlotRenderPure = (props) => /* @__PURE__ */ (0,
|
|
676
|
+
var import_jsx_runtime4 = require("react/jsx-runtime");
|
|
677
|
+
var SlotRenderPure = (props) => /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(SlotRender, __spreadValues({}, props));
|
|
621
678
|
var Item = ({
|
|
622
679
|
config,
|
|
623
680
|
item,
|
|
624
681
|
metadata
|
|
625
682
|
}) => {
|
|
626
683
|
const Component = config.components[item.type];
|
|
627
|
-
const props = useSlots(config, item, (slotProps) => /* @__PURE__ */ (0,
|
|
628
|
-
const
|
|
629
|
-
return /* @__PURE__ */ (0,
|
|
684
|
+
const props = useSlots(config, item, (slotProps) => /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(SlotRenderPure, __spreadProps(__spreadValues({}, slotProps), { config, metadata })));
|
|
685
|
+
const richtextProps = useRichtextProps(Component.fields, props);
|
|
686
|
+
return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
|
|
630
687
|
Component.render,
|
|
631
|
-
__spreadProps(__spreadValues(__spreadValues({}, props),
|
|
688
|
+
__spreadProps(__spreadValues(__spreadValues({}, props), richtextProps), {
|
|
632
689
|
puck: __spreadProps(__spreadValues({}, props.puck), {
|
|
633
690
|
metadata: metadata || {}
|
|
634
691
|
})
|
|
@@ -638,11 +695,11 @@ var Item = ({
|
|
|
638
695
|
var SlotRender = (0, import_react5.forwardRef)(
|
|
639
696
|
function SlotRenderInternal({ className, style, content, config, metadata, as }, ref) {
|
|
640
697
|
const El = as != null ? as : "div";
|
|
641
|
-
return /* @__PURE__ */ (0,
|
|
698
|
+
return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(El, { className, style, ref, children: content.map((item) => {
|
|
642
699
|
if (!config.components[item.type]) {
|
|
643
700
|
return null;
|
|
644
701
|
}
|
|
645
|
-
return /* @__PURE__ */ (0,
|
|
702
|
+
return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
|
|
646
703
|
Item,
|
|
647
704
|
{
|
|
648
705
|
config,
|
|
@@ -656,7 +713,7 @@ var SlotRender = (0, import_react5.forwardRef)(
|
|
|
656
713
|
);
|
|
657
714
|
|
|
658
715
|
// components/ServerRender/index.tsx
|
|
659
|
-
var
|
|
716
|
+
var import_jsx_runtime5 = require("react/jsx-runtime");
|
|
660
717
|
function DropZoneRender({
|
|
661
718
|
zone,
|
|
662
719
|
data,
|
|
@@ -673,11 +730,11 @@ function DropZoneRender({
|
|
|
673
730
|
zoneCompound = `${areaId}:${zone}`;
|
|
674
731
|
content = setupZone(data, zoneCompound).zones[zoneCompound];
|
|
675
732
|
}
|
|
676
|
-
return /* @__PURE__ */ (0,
|
|
733
|
+
return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(import_jsx_runtime5.Fragment, { children: content.map((item) => {
|
|
677
734
|
const Component = config.components[item.type];
|
|
678
735
|
const props = __spreadProps(__spreadValues({}, item.props), {
|
|
679
736
|
puck: {
|
|
680
|
-
renderDropZone: ({ zone: zone2 }) => /* @__PURE__ */ (0,
|
|
737
|
+
renderDropZone: ({ zone: zone2 }) => /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
|
|
681
738
|
DropZoneRender,
|
|
682
739
|
{
|
|
683
740
|
zone: zone2,
|
|
@@ -693,9 +750,9 @@ function DropZoneRender({
|
|
|
693
750
|
}
|
|
694
751
|
});
|
|
695
752
|
const renderItem = __spreadProps(__spreadValues({}, item), { props });
|
|
696
|
-
const propsWithSlots = useSlots(config, renderItem, (props2) => /* @__PURE__ */ (0,
|
|
753
|
+
const propsWithSlots = useSlots(config, renderItem, (props2) => /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(SlotRenderPure, __spreadProps(__spreadValues({}, props2), { config, metadata })));
|
|
697
754
|
if (Component) {
|
|
698
|
-
return /* @__PURE__ */ (0,
|
|
755
|
+
return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(Component.render, __spreadValues({}, propsWithSlots), renderItem.props.id);
|
|
699
756
|
}
|
|
700
757
|
return null;
|
|
701
758
|
}) });
|
|
@@ -705,12 +762,12 @@ function Render({
|
|
|
705
762
|
data,
|
|
706
763
|
metadata = {}
|
|
707
764
|
}) {
|
|
708
|
-
var _a;
|
|
765
|
+
var _a, _b;
|
|
709
766
|
const rootProps = "props" in data.root ? data.root.props : data.root;
|
|
710
767
|
const title = rootProps.title || "";
|
|
711
768
|
const props = __spreadProps(__spreadValues({}, rootProps), {
|
|
712
769
|
puck: {
|
|
713
|
-
renderDropZone: ({ zone }) => /* @__PURE__ */ (0,
|
|
770
|
+
renderDropZone: ({ zone }) => /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
|
|
714
771
|
DropZoneRender,
|
|
715
772
|
{
|
|
716
773
|
zone,
|
|
@@ -727,9 +784,10 @@ function Render({
|
|
|
727
784
|
editMode: false,
|
|
728
785
|
id: "puck-root"
|
|
729
786
|
});
|
|
730
|
-
const propsWithSlots = useSlots(config, { type: "root", props }, (props2) => /* @__PURE__ */ (0,
|
|
731
|
-
|
|
732
|
-
|
|
787
|
+
const propsWithSlots = useSlots(config, { type: "root", props }, (props2) => /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(SlotRenderPure, __spreadProps(__spreadValues({}, props2), { config, metadata })));
|
|
788
|
+
const richtextProps = useRichtextProps((_a = config.root) == null ? void 0 : _a.fields, props);
|
|
789
|
+
if ((_b = config.root) == null ? void 0 : _b.render) {
|
|
790
|
+
return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(config.root.render, __spreadProps(__spreadValues(__spreadValues({}, propsWithSlots), richtextProps), { children: /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
|
|
733
791
|
DropZoneRender,
|
|
734
792
|
{
|
|
735
793
|
config,
|
|
@@ -739,7 +797,7 @@ function Render({
|
|
|
739
797
|
}
|
|
740
798
|
) }));
|
|
741
799
|
}
|
|
742
|
-
return /* @__PURE__ */ (0,
|
|
800
|
+
return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
|
|
743
801
|
DropZoneRender,
|
|
744
802
|
{
|
|
745
803
|
config,
|
package/dist/rsc.mjs
CHANGED
|
@@ -1,18 +1,26 @@
|
|
|
1
1
|
import {
|
|
2
2
|
SlotRenderPure,
|
|
3
|
-
__spreadProps,
|
|
4
|
-
__spreadValues,
|
|
5
|
-
init_react_import,
|
|
6
3
|
migrate,
|
|
7
4
|
resolveAllData,
|
|
5
|
+
transformProps,
|
|
6
|
+
useRichtextProps,
|
|
7
|
+
useSlots
|
|
8
|
+
} from "./chunk-Y656T6AQ.mjs";
|
|
9
|
+
import "./chunk-CSSRLPHM.mjs";
|
|
10
|
+
import "./chunk-T3WX7XJ6.mjs";
|
|
11
|
+
import "./chunk-Y2EFNT5P.mjs";
|
|
12
|
+
import {
|
|
8
13
|
rootAreaId,
|
|
9
14
|
rootDroppableId,
|
|
10
15
|
rootZone,
|
|
11
16
|
setupZone,
|
|
12
|
-
transformProps,
|
|
13
|
-
useSlots,
|
|
14
17
|
walkTree
|
|
15
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-NLUHDYVR.mjs";
|
|
19
|
+
import {
|
|
20
|
+
__spreadProps,
|
|
21
|
+
__spreadValues,
|
|
22
|
+
init_react_import
|
|
23
|
+
} from "./chunk-M6W7YEVX.mjs";
|
|
16
24
|
|
|
17
25
|
// bundle/rsc.tsx
|
|
18
26
|
init_react_import();
|
|
@@ -68,7 +76,7 @@ function Render({
|
|
|
68
76
|
data,
|
|
69
77
|
metadata = {}
|
|
70
78
|
}) {
|
|
71
|
-
var _a;
|
|
79
|
+
var _a, _b;
|
|
72
80
|
const rootProps = "props" in data.root ? data.root.props : data.root;
|
|
73
81
|
const title = rootProps.title || "";
|
|
74
82
|
const props = __spreadProps(__spreadValues({}, rootProps), {
|
|
@@ -91,8 +99,9 @@ function Render({
|
|
|
91
99
|
id: "puck-root"
|
|
92
100
|
});
|
|
93
101
|
const propsWithSlots = useSlots(config, { type: "root", props }, (props2) => /* @__PURE__ */ jsx(SlotRenderPure, __spreadProps(__spreadValues({}, props2), { config, metadata })));
|
|
94
|
-
|
|
95
|
-
|
|
102
|
+
const richtextProps = useRichtextProps((_a = config.root) == null ? void 0 : _a.fields, props);
|
|
103
|
+
if ((_b = config.root) == null ? void 0 : _b.render) {
|
|
104
|
+
return /* @__PURE__ */ jsx(config.root.render, __spreadProps(__spreadValues(__spreadValues({}, propsWithSlots), richtextProps), { children: /* @__PURE__ */ jsx(
|
|
96
105
|
DropZoneRender,
|
|
97
106
|
{
|
|
98
107
|
config,
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { C as Config, D as Data, W as WithId, U as UserGenerics, b as Content, c as ComponentData, d as DefaultComponents, e as DefaultComponentProps, f as DefaultRootFieldProps, M as Metadata, R as RootData } from './actions-CJibIB0m.js';
|
|
2
|
+
|
|
3
|
+
type MigrationOptions<UserConfig extends Config> = {
|
|
4
|
+
migrateDynamicZonesForComponent?: {
|
|
5
|
+
[ComponentName in keyof UserConfig["components"]]: (props: WithId<UserGenerics<UserConfig>["UserProps"][ComponentName]>, zones: Record<string, Content>) => ComponentData["props"];
|
|
6
|
+
};
|
|
7
|
+
};
|
|
8
|
+
declare function migrate<UserConfig extends Config = Config>(data: Data, config?: UserConfig, migrationOptions?: MigrationOptions<UserConfig>): Data;
|
|
9
|
+
|
|
10
|
+
type PropTransform<Components extends DefaultComponents = DefaultComponents, RootProps extends DefaultComponentProps = DefaultRootFieldProps> = Partial<{
|
|
11
|
+
[ComponentName in keyof Components]: (props: Components[ComponentName] & {
|
|
12
|
+
[key: string]: any;
|
|
13
|
+
}) => Components[ComponentName];
|
|
14
|
+
} & {
|
|
15
|
+
root: (props: RootProps & {
|
|
16
|
+
[key: string]: any;
|
|
17
|
+
}) => RootProps;
|
|
18
|
+
}>;
|
|
19
|
+
declare function transformProps<Components extends DefaultComponents = DefaultComponents, RootProps extends DefaultComponentProps = DefaultRootFieldProps>(data: Partial<Data>, propTransforms: PropTransform<Components, RootProps>, config?: Config): Data;
|
|
20
|
+
|
|
21
|
+
declare function resolveAllData<Components extends DefaultComponents = DefaultComponents, RootProps extends Record<string, any> = DefaultRootFieldProps>(data: Partial<Data>, config: Config, metadata?: Metadata, onResolveStart?: (item: ComponentData) => void, onResolveEnd?: (item: ComponentData) => void): Promise<Data<Components, RootProps>>;
|
|
22
|
+
|
|
23
|
+
type WalkTreeOptions = {
|
|
24
|
+
parentId: string;
|
|
25
|
+
propName: string;
|
|
26
|
+
};
|
|
27
|
+
declare function walkTree<T extends ComponentData | RootData | G["UserData"], UserConfig extends Config = Config, G extends UserGenerics<UserConfig> = UserGenerics<UserConfig>>(data: T, config: UserConfig, callbackFn: (data: Content, options: WalkTreeOptions) => Content | null | void): T;
|
|
28
|
+
|
|
29
|
+
export { migrate as m, resolveAllData as r, transformProps as t, walkTree as w };
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { C as Config, D as Data, W as WithId, U as UserGenerics, b as Content, c as ComponentData, d as DefaultComponents, e as DefaultComponentProps, f as DefaultRootFieldProps, M as Metadata, R as RootData } from './actions-CJibIB0m.mjs';
|
|
2
|
+
|
|
3
|
+
type MigrationOptions<UserConfig extends Config> = {
|
|
4
|
+
migrateDynamicZonesForComponent?: {
|
|
5
|
+
[ComponentName in keyof UserConfig["components"]]: (props: WithId<UserGenerics<UserConfig>["UserProps"][ComponentName]>, zones: Record<string, Content>) => ComponentData["props"];
|
|
6
|
+
};
|
|
7
|
+
};
|
|
8
|
+
declare function migrate<UserConfig extends Config = Config>(data: Data, config?: UserConfig, migrationOptions?: MigrationOptions<UserConfig>): Data;
|
|
9
|
+
|
|
10
|
+
type PropTransform<Components extends DefaultComponents = DefaultComponents, RootProps extends DefaultComponentProps = DefaultRootFieldProps> = Partial<{
|
|
11
|
+
[ComponentName in keyof Components]: (props: Components[ComponentName] & {
|
|
12
|
+
[key: string]: any;
|
|
13
|
+
}) => Components[ComponentName];
|
|
14
|
+
} & {
|
|
15
|
+
root: (props: RootProps & {
|
|
16
|
+
[key: string]: any;
|
|
17
|
+
}) => RootProps;
|
|
18
|
+
}>;
|
|
19
|
+
declare function transformProps<Components extends DefaultComponents = DefaultComponents, RootProps extends DefaultComponentProps = DefaultRootFieldProps>(data: Partial<Data>, propTransforms: PropTransform<Components, RootProps>, config?: Config): Data;
|
|
20
|
+
|
|
21
|
+
declare function resolveAllData<Components extends DefaultComponents = DefaultComponents, RootProps extends Record<string, any> = DefaultRootFieldProps>(data: Partial<Data>, config: Config, metadata?: Metadata, onResolveStart?: (item: ComponentData) => void, onResolveEnd?: (item: ComponentData) => void): Promise<Data<Components, RootProps>>;
|
|
22
|
+
|
|
23
|
+
type WalkTreeOptions = {
|
|
24
|
+
parentId: string;
|
|
25
|
+
propName: string;
|
|
26
|
+
};
|
|
27
|
+
declare function walkTree<T extends ComponentData | RootData | G["UserData"], UserConfig extends Config = Config, G extends UserGenerics<UserConfig> = UserGenerics<UserConfig>>(data: T, config: UserConfig, callbackFn: (data: Content, options: WalkTreeOptions) => Content | null | void): T;
|
|
28
|
+
|
|
29
|
+
export { migrate as m, resolveAllData as r, transformProps as t, walkTree as w };
|