@makeswift/runtime 0.8.7 → 0.8.9
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/Box.cjs.js +2 -1
- package/dist/Box.cjs.js.map +1 -1
- package/dist/Box.es.js +2 -1
- package/dist/Box.es.js.map +1 -1
- package/dist/Button.cjs.js +2 -0
- package/dist/Button.cjs.js.map +1 -1
- package/dist/Button.es.js +2 -0
- package/dist/Button.es.js.map +1 -1
- package/dist/Carousel.cjs.js +2 -0
- package/dist/Carousel.cjs.js.map +1 -1
- package/dist/Carousel.es.js +2 -0
- package/dist/Carousel.es.js.map +1 -1
- package/dist/Countdown.cjs.js +2 -0
- package/dist/Countdown.cjs.js.map +1 -1
- package/dist/Countdown.es.js +2 -0
- package/dist/Countdown.es.js.map +1 -1
- package/dist/Divider.cjs.js +2 -0
- package/dist/Divider.cjs.js.map +1 -1
- package/dist/Divider.es.js +2 -0
- package/dist/Divider.es.js.map +1 -1
- package/dist/Embed.cjs.js +3 -2
- package/dist/Embed.cjs.js.map +1 -1
- package/dist/Embed.es.js +3 -2
- package/dist/Embed.es.js.map +1 -1
- package/dist/Form.cjs.js +2 -0
- package/dist/Form.cjs.js.map +1 -1
- package/dist/Form.es.js +3 -1
- package/dist/Form.es.js.map +1 -1
- package/dist/Image.cjs.js +2 -0
- package/dist/Image.cjs.js.map +1 -1
- package/dist/Image.es.js +3 -1
- package/dist/Image.es.js.map +1 -1
- package/dist/LiveProvider.cjs.js +2 -0
- package/dist/LiveProvider.cjs.js.map +1 -1
- package/dist/LiveProvider.es.js +3 -1
- package/dist/LiveProvider.es.js.map +1 -1
- package/dist/Navigation.cjs.js +3 -2
- package/dist/Navigation.cjs.js.map +1 -1
- package/dist/Navigation.es.js +3 -2
- package/dist/Navigation.es.js.map +1 -1
- package/dist/PreviewProvider.cjs.js +2 -0
- package/dist/PreviewProvider.cjs.js.map +1 -1
- package/dist/PreviewProvider.es.js +4 -2
- package/dist/PreviewProvider.es.js.map +1 -1
- package/dist/ReadOnlyText.cjs.js +10 -0
- package/dist/ReadOnlyText.cjs.js.map +1 -1
- package/dist/ReadOnlyText.es.js +11 -1
- package/dist/ReadOnlyText.es.js.map +1 -1
- package/dist/Root.cjs.js +2 -1
- package/dist/Root.cjs.js.map +1 -1
- package/dist/Root.es.js +2 -1
- package/dist/Root.es.js.map +1 -1
- package/dist/SocialLinks.cjs.js +2 -0
- package/dist/SocialLinks.cjs.js.map +1 -1
- package/dist/SocialLinks.es.js +2 -0
- package/dist/SocialLinks.es.js.map +1 -1
- package/dist/Text.cjs.js +2 -0
- package/dist/Text.cjs.js.map +1 -1
- package/dist/Text.es.js +3 -1
- package/dist/Text.es.js.map +1 -1
- package/dist/Video.cjs.js +2 -0
- package/dist/Video.cjs.js.map +1 -1
- package/dist/Video.es.js +2 -0
- package/dist/Video.es.js.map +1 -1
- package/dist/components.cjs.js +2 -1
- package/dist/components.cjs.js.map +1 -1
- package/dist/components.es.js +2 -1
- package/dist/components.es.js.map +1 -1
- package/dist/controls.cjs.js +4 -0
- package/dist/controls.cjs.js.map +1 -1
- package/dist/controls.es.js +1 -1
- package/dist/descriptors.cjs.js +72 -12
- package/dist/descriptors.cjs.js.map +1 -1
- package/dist/descriptors.es.js +69 -13
- package/dist/descriptors.es.js.map +1 -1
- package/dist/index.cjs.js +137 -25
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.cjs2.js +2 -3
- package/dist/index.cjs2.js.map +1 -1
- package/dist/index.cjs6.js +2 -0
- package/dist/index.cjs6.js.map +1 -1
- package/dist/index.cjs7.js +7 -2
- package/dist/index.cjs7.js.map +1 -1
- package/dist/index.es.js +138 -28
- package/dist/index.es.js.map +1 -1
- package/dist/index.es2.js +1 -2
- package/dist/index.es2.js.map +1 -1
- package/dist/index.es3.js +1 -1
- package/dist/index.es5.js +1 -1
- package/dist/index.es6.js +2 -0
- package/dist/index.es6.js.map +1 -1
- package/dist/index.es7.js +8 -3
- package/dist/index.es7.js.map +1 -1
- package/dist/leaf.es.js +1 -1
- package/dist/next.cjs.js +2 -0
- package/dist/next.cjs.js.map +1 -1
- package/dist/next.es.js +3 -1
- package/dist/next.es.js.map +1 -1
- package/dist/react.cjs.js +2 -0
- package/dist/react.cjs.js.map +1 -1
- package/dist/react.es.js +2 -0
- package/dist/react.es.js.map +1 -1
- package/dist/state/breakpoints.cjs.js +42 -8
- package/dist/state/breakpoints.cjs.js.map +1 -1
- package/dist/state/breakpoints.es.js +42 -8
- package/dist/state/breakpoints.es.js.map +1 -1
- package/dist/types/src/components/builtin/Form/components/Field/components/Checkbox/index.d.ts +1 -1
- package/dist/types/src/components/builtin/Text/ReadOnlyText.d.ts.map +1 -1
- package/dist/types/src/components/builtin/Text/components/Element/block.d.ts.map +1 -1
- package/dist/types/src/controls/control.d.ts +2 -1
- package/dist/types/src/controls/control.d.ts.map +1 -1
- package/dist/types/src/controls/index.d.ts +1 -0
- package/dist/types/src/controls/index.d.ts.map +1 -1
- package/dist/types/src/controls/rich-text/types.d.ts +10 -3
- package/dist/types/src/controls/rich-text/types.d.ts.map +1 -1
- package/dist/types/src/controls/rich-text-v2/index.d.ts +2 -0
- package/dist/types/src/controls/rich-text-v2/index.d.ts.map +1 -0
- package/dist/types/src/controls/rich-text-v2/rich-text-v2.d.ts +58 -0
- package/dist/types/src/controls/rich-text-v2/rich-text-v2.d.ts.map +1 -0
- package/dist/types/src/prop-controllers/descriptors.d.ts +4 -3
- package/dist/types/src/prop-controllers/descriptors.d.ts.map +1 -1
- package/dist/types/src/prop-controllers/instances.d.ts +5 -3
- package/dist/types/src/prop-controllers/instances.d.ts.map +1 -1
- package/dist/types/src/runtimes/react/controls/control.d.ts +3 -2
- package/dist/types/src/runtimes/react/controls/control.d.ts.map +1 -1
- package/dist/types/src/runtimes/react/controls/rich-text-v2.d.ts +15 -0
- package/dist/types/src/runtimes/react/controls/rich-text-v2.d.ts.map +1 -0
- package/dist/types/src/runtimes/react/controls.d.ts.map +1 -1
- package/dist/types/src/runtimes/react/index.d.ts +2 -2
- package/dist/types/src/runtimes/react/index.d.ts.map +1 -1
- package/dist/types/src/state/modules/breakpoints.d.ts +2 -3
- package/dist/types/src/state/modules/breakpoints.d.ts.map +1 -1
- package/dist/types/src/state/modules/breakpoints.test.d.ts +2 -0
- package/dist/types/src/state/modules/breakpoints.test.d.ts.map +1 -0
- package/package.json +2 -1
- package/dist/useIsomorphicLayoutEffect.cjs.js +0 -6
- package/dist/useIsomorphicLayoutEffect.cjs.js.map +0 -1
- package/dist/useIsomorphicLayoutEffect.es.js +0 -5
- package/dist/useIsomorphicLayoutEffect.es.js.map +0 -1
package/dist/index.cjs.js
CHANGED
|
@@ -46,10 +46,10 @@ var serialize = require("@emotion/serialize");
|
|
|
46
46
|
var utils = require("@emotion/utils");
|
|
47
47
|
var jsxRuntime = require("react/jsx-runtime");
|
|
48
48
|
var descriptors = require("./descriptors.cjs.js");
|
|
49
|
-
require("slate");
|
|
49
|
+
var slate = require("slate");
|
|
50
50
|
var textInput = require("./text-input.cjs.js");
|
|
51
51
|
var combobox = require("./combobox.cjs.js");
|
|
52
|
-
require("slate-react");
|
|
52
|
+
var slateReact = require("slate-react");
|
|
53
53
|
var shim = require("use-sync-external-store/shim");
|
|
54
54
|
var redux = require("redux");
|
|
55
55
|
var thunk = require("redux-thunk");
|
|
@@ -59,6 +59,8 @@ var state_breakpoints = require("./state/breakpoints.cjs.js");
|
|
|
59
59
|
var boxModels = require("./box-models.cjs.js");
|
|
60
60
|
var ColorHelper = require("color");
|
|
61
61
|
var scrollIntoView = require("scroll-into-view-if-needed");
|
|
62
|
+
var isHotkey = require("is-hotkey");
|
|
63
|
+
var slateHistory = require("slate-history");
|
|
62
64
|
var reactDom = require("react-dom");
|
|
63
65
|
var parse = require("html-react-parser");
|
|
64
66
|
var Head = require("next/head");
|
|
@@ -99,6 +101,7 @@ var dynamic__default = /* @__PURE__ */ _interopDefaultLegacy(dynamic);
|
|
|
99
101
|
var thunk__default = /* @__PURE__ */ _interopDefaultLegacy(thunk);
|
|
100
102
|
var ColorHelper__default = /* @__PURE__ */ _interopDefaultLegacy(ColorHelper);
|
|
101
103
|
var scrollIntoView__default = /* @__PURE__ */ _interopDefaultLegacy(scrollIntoView);
|
|
104
|
+
var isHotkey__default = /* @__PURE__ */ _interopDefaultLegacy(isHotkey);
|
|
102
105
|
var parse__default = /* @__PURE__ */ _interopDefaultLegacy(parse);
|
|
103
106
|
var Head__default = /* @__PURE__ */ _interopDefaultLegacy(Head);
|
|
104
107
|
var createEmotionServer__default = /* @__PURE__ */ _interopDefaultLegacy(createEmotionServer);
|
|
@@ -1161,7 +1164,7 @@ async function fonts(_req, res, { getFonts } = {}) {
|
|
|
1161
1164
|
const fonts2 = (_a = await (getFonts == null ? void 0 : getFonts())) != null ? _a : [];
|
|
1162
1165
|
return res.json(fonts2);
|
|
1163
1166
|
}
|
|
1164
|
-
const version = "0.8.
|
|
1167
|
+
const version = "0.8.9";
|
|
1165
1168
|
async function handler(req, res, { apiKey }) {
|
|
1166
1169
|
if (req.query.secret !== apiKey) {
|
|
1167
1170
|
return res.status(401).json({ message: "Unauthorized" });
|
|
@@ -3153,24 +3156,6 @@ function useRichText(data, control) {
|
|
|
3153
3156
|
ref: textCallbackRef
|
|
3154
3157
|
});
|
|
3155
3158
|
}
|
|
3156
|
-
function useSelectControlValue(data, definition) {
|
|
3157
|
-
return data != null ? data : definition == null ? void 0 : definition.config.defaultValue;
|
|
3158
|
-
}
|
|
3159
|
-
function ShapeControlValue({
|
|
3160
|
-
definition,
|
|
3161
|
-
data,
|
|
3162
|
-
children,
|
|
3163
|
-
control
|
|
3164
|
-
}) {
|
|
3165
|
-
return Object.entries(definition.config.type).reduceRight((renderFn, [key, controlDefinition]) => (shapeControlValue) => /* @__PURE__ */ jsxRuntime.jsx(ControlValue, {
|
|
3166
|
-
definition: controlDefinition,
|
|
3167
|
-
data: data == null ? void 0 : data[key],
|
|
3168
|
-
control: control == null ? void 0 : control.controls.get(key),
|
|
3169
|
-
children: (value) => renderFn(__spreadProps(__spreadValues({}, shapeControlValue), {
|
|
3170
|
-
[key]: value
|
|
3171
|
-
}))
|
|
3172
|
-
}), children)({});
|
|
3173
|
-
}
|
|
3174
3159
|
function pollBoxModel({
|
|
3175
3160
|
element,
|
|
3176
3161
|
onBoxModelChange
|
|
@@ -3190,6 +3175,116 @@ function pollBoxModel({
|
|
|
3190
3175
|
onBoxModelChange(null);
|
|
3191
3176
|
};
|
|
3192
3177
|
}
|
|
3178
|
+
const isSSR = typeof window === "undefined" || /ServerSideRendering/.test(window.navigator && window.navigator.userAgent);
|
|
3179
|
+
const useIsomorphicLayoutEffect = isSSR ? React.useEffect : React.useLayoutEffect;
|
|
3180
|
+
const defaultText = [{
|
|
3181
|
+
type: descriptors.BlockType.Text,
|
|
3182
|
+
children: [{
|
|
3183
|
+
text: ""
|
|
3184
|
+
}]
|
|
3185
|
+
}];
|
|
3186
|
+
function useRichTextV2(data, control) {
|
|
3187
|
+
const [editor] = React.useState(() => slateHistory.withHistory(slateReact.withReact(slate.createEditor())));
|
|
3188
|
+
const isPreservingFocus = React.useRef(false);
|
|
3189
|
+
const editMode = useBuilderEditMode();
|
|
3190
|
+
React.useEffect(() => {
|
|
3191
|
+
if (control == null)
|
|
3192
|
+
return;
|
|
3193
|
+
const element = slateReact.ReactEditor.toDOMNode(editor, editor);
|
|
3194
|
+
return pollBoxModel({
|
|
3195
|
+
element,
|
|
3196
|
+
onBoxModelChange: (boxModel) => control.changeBoxModel(boxModel)
|
|
3197
|
+
});
|
|
3198
|
+
}, [editor, control]);
|
|
3199
|
+
const renderElement = React.useCallback(({
|
|
3200
|
+
attributes,
|
|
3201
|
+
children,
|
|
3202
|
+
element
|
|
3203
|
+
}) => {
|
|
3204
|
+
switch (element.type) {
|
|
3205
|
+
default:
|
|
3206
|
+
return /* @__PURE__ */ jsxRuntime.jsx("p", __spreadProps(__spreadValues({}, attributes), {
|
|
3207
|
+
children
|
|
3208
|
+
}));
|
|
3209
|
+
}
|
|
3210
|
+
}, []);
|
|
3211
|
+
const renderLeaf = React.useCallback(({
|
|
3212
|
+
attributes,
|
|
3213
|
+
children
|
|
3214
|
+
}) => {
|
|
3215
|
+
return /* @__PURE__ */ jsxRuntime.jsx("span", __spreadProps(__spreadValues({}, attributes), {
|
|
3216
|
+
children
|
|
3217
|
+
}));
|
|
3218
|
+
}, []);
|
|
3219
|
+
const initialValue = React.useMemo(() => data != null ? data : defaultText, [data]);
|
|
3220
|
+
React.useEffect(() => {
|
|
3221
|
+
if (editMode !== descriptors.BuilderEditMode.CONTENT) {
|
|
3222
|
+
isPreservingFocus.current = false;
|
|
3223
|
+
slateReact.ReactEditor.deselect(editor);
|
|
3224
|
+
}
|
|
3225
|
+
}, [editMode]);
|
|
3226
|
+
React.useEffect(() => {
|
|
3227
|
+
control == null ? void 0 : control.setEditor(editor);
|
|
3228
|
+
control == null ? void 0 : control.setDefaultValue(defaultText);
|
|
3229
|
+
}, [control, editor, defaultText]);
|
|
3230
|
+
const handleFocus = React.useCallback(() => {
|
|
3231
|
+
isPreservingFocus.current = true;
|
|
3232
|
+
control == null ? void 0 : control.select();
|
|
3233
|
+
}, [control]);
|
|
3234
|
+
const handleKeyDown = React.useCallback((e) => {
|
|
3235
|
+
if (isHotkey__default["default"]("mod+shift+z", e))
|
|
3236
|
+
return slateHistory.HistoryEditor.redo(editor);
|
|
3237
|
+
if (isHotkey__default["default"]("mod+z", e))
|
|
3238
|
+
return slateHistory.HistoryEditor.undo(editor);
|
|
3239
|
+
if (isHotkey__default["default"]("escape")(e)) {
|
|
3240
|
+
isPreservingFocus.current = false;
|
|
3241
|
+
slateReact.ReactEditor.blur(editor);
|
|
3242
|
+
control == null ? void 0 : control.switchToBuildMode();
|
|
3243
|
+
}
|
|
3244
|
+
}, [control, editor]);
|
|
3245
|
+
const handleBlur = React.useCallback((e) => {
|
|
3246
|
+
var _a;
|
|
3247
|
+
if (e.relatedTarget == null)
|
|
3248
|
+
return;
|
|
3249
|
+
if (((_a = e.relatedTarget) == null ? void 0 : _a.getAttribute("contenteditable")) === "true")
|
|
3250
|
+
isPreservingFocus.current = false;
|
|
3251
|
+
}, []);
|
|
3252
|
+
const handleOnChange = React.useCallback((value) => {
|
|
3253
|
+
control == null ? void 0 : control.onChange(value);
|
|
3254
|
+
}, [control]);
|
|
3255
|
+
return /* @__PURE__ */ jsxRuntime.jsx(slateReact.Slate, {
|
|
3256
|
+
editor,
|
|
3257
|
+
onChange: handleOnChange,
|
|
3258
|
+
value: initialValue,
|
|
3259
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(slateReact.Editable, {
|
|
3260
|
+
renderLeaf,
|
|
3261
|
+
renderElement,
|
|
3262
|
+
onFocus: handleFocus,
|
|
3263
|
+
onKeyDown: handleKeyDown,
|
|
3264
|
+
onBlur: handleBlur,
|
|
3265
|
+
readOnly: editMode !== descriptors.BuilderEditMode.CONTENT,
|
|
3266
|
+
placeholder: "Write some text..."
|
|
3267
|
+
})
|
|
3268
|
+
});
|
|
3269
|
+
}
|
|
3270
|
+
function useSelectControlValue(data, definition) {
|
|
3271
|
+
return data != null ? data : definition == null ? void 0 : definition.config.defaultValue;
|
|
3272
|
+
}
|
|
3273
|
+
function ShapeControlValue({
|
|
3274
|
+
definition,
|
|
3275
|
+
data,
|
|
3276
|
+
children,
|
|
3277
|
+
control
|
|
3278
|
+
}) {
|
|
3279
|
+
return Object.entries(definition.config.type).reduceRight((renderFn, [key, controlDefinition]) => (shapeControlValue) => /* @__PURE__ */ jsxRuntime.jsx(ControlValue, {
|
|
3280
|
+
definition: controlDefinition,
|
|
3281
|
+
data: data == null ? void 0 : data[key],
|
|
3282
|
+
control: control == null ? void 0 : control.controls.get(key),
|
|
3283
|
+
children: (value) => renderFn(__spreadProps(__spreadValues({}, shapeControlValue), {
|
|
3284
|
+
[key]: value
|
|
3285
|
+
}))
|
|
3286
|
+
}), children)({});
|
|
3287
|
+
}
|
|
3193
3288
|
function useSlot(data, control) {
|
|
3194
3289
|
if (data == null || data.elements.length === 0) {
|
|
3195
3290
|
return /* @__PURE__ */ jsxRuntime.jsx(Slot.Placeholder, {
|
|
@@ -3426,6 +3521,12 @@ function ControlValue({
|
|
|
3426
3521
|
parameters: [data, control],
|
|
3427
3522
|
children: (value) => children(value)
|
|
3428
3523
|
}, definition.type);
|
|
3524
|
+
case descriptors.RichTextV2ControlType:
|
|
3525
|
+
return /* @__PURE__ */ jsxRuntime.jsx(RenderHook, {
|
|
3526
|
+
hook: useRichTextV2,
|
|
3527
|
+
parameters: [data, control],
|
|
3528
|
+
children: (value) => children(value)
|
|
3529
|
+
}, definition.type);
|
|
3429
3530
|
case descriptors.StyleControlType:
|
|
3430
3531
|
return /* @__PURE__ */ jsxRuntime.jsx(RenderHook, {
|
|
3431
3532
|
hook: useFormattedStyle,
|
|
@@ -3471,7 +3572,7 @@ function PropsValue({
|
|
|
3471
3572
|
return constants.getPropControllers(state, documentKey, element.key);
|
|
3472
3573
|
});
|
|
3473
3574
|
return Object.entries(propControllerDescriptorsRef.current).reduceRight((renderFn, [propName, descriptor]) => (propsValue) => {
|
|
3474
|
-
var _a2, _b, _c2;
|
|
3575
|
+
var _a2, _b, _c2, _d;
|
|
3475
3576
|
switch (descriptor.type) {
|
|
3476
3577
|
case textInput.CheckboxControlType:
|
|
3477
3578
|
case textInput.NumberControlType:
|
|
@@ -3512,8 +3613,18 @@ function PropsValue({
|
|
|
3512
3613
|
}))
|
|
3513
3614
|
}, descriptor.type);
|
|
3514
3615
|
}
|
|
3515
|
-
case descriptors.
|
|
3616
|
+
case descriptors.RichTextV2ControlType: {
|
|
3516
3617
|
const control = (_c2 = propControllers == null ? void 0 : propControllers[propName]) != null ? _c2 : null;
|
|
3618
|
+
return /* @__PURE__ */ jsxRuntime.jsx(RenderHook, {
|
|
3619
|
+
hook: useRichTextV2,
|
|
3620
|
+
parameters: [props[propName], control],
|
|
3621
|
+
children: (value) => renderFn(__spreadProps(__spreadValues({}, propsValue), {
|
|
3622
|
+
[propName]: value
|
|
3623
|
+
}))
|
|
3624
|
+
}, descriptor.type);
|
|
3625
|
+
}
|
|
3626
|
+
case descriptors.SlotControlType: {
|
|
3627
|
+
const control = (_d = propControllers == null ? void 0 : propControllers[propName]) != null ? _d : null;
|
|
3517
3628
|
return /* @__PURE__ */ jsxRuntime.jsx(RenderHook, {
|
|
3518
3629
|
hook: useSlot,
|
|
3519
3630
|
parameters: [props[propName], control],
|
|
@@ -3697,11 +3808,11 @@ function isDomNodeHandle(value) {
|
|
|
3697
3808
|
}
|
|
3698
3809
|
class ReactRuntime {
|
|
3699
3810
|
constructor({
|
|
3700
|
-
|
|
3811
|
+
breakpoints
|
|
3701
3812
|
}) {
|
|
3702
3813
|
__publicField(this, "store");
|
|
3703
3814
|
this.store = constants.configureStore({
|
|
3704
|
-
breakpoints:
|
|
3815
|
+
breakpoints: breakpoints ? state_breakpoints.parseBreakpointsInput(breakpoints) : void 0
|
|
3705
3816
|
});
|
|
3706
3817
|
registerBuiltinComponents(this);
|
|
3707
3818
|
}
|
|
@@ -4010,6 +4121,7 @@ exports.useFiles = useFiles;
|
|
|
4010
4121
|
exports.useFormContext = useFormContext;
|
|
4011
4122
|
exports.useIsInBuilder = useIsInBuilder;
|
|
4012
4123
|
exports.useIsPreview = useIsPreview;
|
|
4124
|
+
exports.useIsomorphicLayoutEffect = useIsomorphicLayoutEffect;
|
|
4013
4125
|
exports.useMakeswiftClient = useMakeswiftClient;
|
|
4014
4126
|
exports.usePageId = usePageId;
|
|
4015
4127
|
exports.usePagePathnameSlice = usePagePathnameSlice;
|