@makeswift/runtime 0.8.5 → 0.8.7
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 +11 -11
- package/dist/Box.cjs.js.map +1 -1
- package/dist/Box.es.js +9 -9
- package/dist/Box.es.js.map +1 -1
- package/dist/Button.cjs.js +36 -37
- package/dist/Button.cjs.js.map +1 -1
- package/dist/Button.es.js +13 -14
- package/dist/Button.es.js.map +1 -1
- package/dist/Carousel.cjs.js +38 -37
- package/dist/Carousel.cjs.js.map +1 -1
- package/dist/Carousel.es.js +19 -18
- package/dist/Carousel.es.js.map +1 -1
- package/dist/Countdown.cjs.js +55 -29
- package/dist/Countdown.cjs.js.map +1 -1
- package/dist/Countdown.es.js +35 -9
- package/dist/Countdown.es.js.map +1 -1
- package/dist/Divider.cjs.js +36 -10
- package/dist/Divider.cjs.js.map +1 -1
- package/dist/Divider.es.js +31 -5
- package/dist/Divider.es.js.map +1 -1
- package/dist/Embed.cjs.js +31 -5
- package/dist/Embed.cjs.js.map +1 -1
- package/dist/Embed.es.js +30 -4
- package/dist/Embed.es.js.map +1 -1
- package/dist/Form.cjs.js +72 -73
- package/dist/Form.cjs.js.map +1 -1
- package/dist/Form.es.js +32 -33
- package/dist/Form.es.js.map +1 -1
- package/dist/Image.cjs.js +22 -21
- package/dist/Image.cjs.js.map +1 -1
- package/dist/Image.es.js +20 -19
- package/dist/Image.es.js.map +1 -1
- package/dist/LiveProvider.cjs.js +12 -12
- package/dist/LiveProvider.cjs.js.map +1 -1
- package/dist/LiveProvider.es.js +12 -12
- package/dist/LiveProvider.es.js.map +1 -1
- package/dist/Navigation.cjs.js +33 -34
- package/dist/Navigation.cjs.js.map +1 -1
- package/dist/Navigation.es.js +14 -15
- package/dist/Navigation.es.js.map +1 -1
- package/dist/PreviewProvider.cjs.js +16 -13
- package/dist/PreviewProvider.cjs.js.map +1 -1
- package/dist/PreviewProvider.es.js +16 -13
- package/dist/PreviewProvider.es.js.map +1 -1
- package/dist/ReadOnlyText.cjs.js +15 -16
- package/dist/ReadOnlyText.cjs.js.map +1 -1
- package/dist/ReadOnlyText.es.js +11 -12
- package/dist/ReadOnlyText.es.js.map +1 -1
- package/dist/Root.cjs.js +10 -10
- package/dist/Root.cjs.js.map +1 -1
- package/dist/Root.es.js +8 -8
- package/dist/SocialLinks.cjs.js +12 -13
- package/dist/SocialLinks.cjs.js.map +1 -1
- package/dist/SocialLinks.es.js +7 -8
- package/dist/SocialLinks.es.js.map +1 -1
- package/dist/Text.cjs.js +3 -4
- package/dist/Text.cjs.js.map +1 -1
- package/dist/Text.es.js +4 -5
- package/dist/Text.es.js.map +1 -1
- package/dist/Video.cjs.js +31 -5
- package/dist/Video.cjs.js.map +1 -1
- package/dist/Video.es.js +30 -4
- package/dist/Video.es.js.map +1 -1
- package/dist/actions.cjs.js +6 -1
- package/dist/actions.cjs.js.map +1 -1
- package/dist/actions.es.js +6 -2
- package/dist/actions.es.js.map +1 -1
- package/dist/components.cjs.js +10 -10
- package/dist/components.es.js +10 -10
- package/dist/constants.cjs.js +13 -3
- package/dist/constants.cjs.js.map +1 -1
- package/dist/constants.es.js +13 -4
- package/dist/constants.es.js.map +1 -1
- package/dist/descriptors.cjs.js.map +1 -1
- package/dist/descriptors.es.js.map +1 -1
- package/dist/index.cjs.js +1010 -163
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.cjs2.js +29 -29
- package/dist/index.cjs2.js.map +1 -1
- package/dist/index.cjs3.js +1 -2
- package/dist/index.cjs3.js.map +1 -1
- package/dist/index.cjs4.js +2 -2
- package/dist/index.cjs4.js.map +1 -1
- package/dist/index.cjs5.js +262 -109
- package/dist/index.cjs5.js.map +1 -1
- package/dist/index.cjs6.js +3 -4
- package/dist/index.cjs6.js.map +1 -1
- package/dist/index.cjs7.js +16 -17
- package/dist/index.cjs7.js.map +1 -1
- package/dist/index.es.js +965 -133
- package/dist/index.es.js.map +1 -1
- package/dist/index.es2.js +6 -6
- package/dist/index.es2.js.map +1 -1
- package/dist/index.es3.js +1 -2
- package/dist/index.es3.js.map +1 -1
- package/dist/index.es4.js +2 -2
- package/dist/index.es4.js.map +1 -1
- package/dist/index.es5.js +262 -109
- package/dist/index.es5.js.map +1 -1
- package/dist/index.es6.js +3 -4
- package/dist/index.es6.js.map +1 -1
- package/dist/index.es7.js +12 -13
- package/dist/index.es7.js.map +1 -1
- package/dist/introspection.cjs.js +5 -2
- package/dist/introspection.cjs.js.map +1 -1
- package/dist/introspection.es.js +4 -2
- package/dist/introspection.es.js.map +1 -1
- package/dist/leaf.cjs.js +15 -17
- package/dist/leaf.cjs.js.map +1 -1
- package/dist/leaf.es.js +10 -11
- package/dist/leaf.es.js.map +1 -1
- package/dist/main.cjs.js +2 -1
- package/dist/main.cjs.js.map +1 -1
- package/dist/main.es.js +2 -2
- package/dist/next.cjs.js +5 -6
- package/dist/next.cjs.js.map +1 -1
- package/dist/next.es.js +6 -7
- package/dist/next.es.js.map +1 -1
- package/dist/prop-controllers.cjs.js +0 -1
- package/dist/prop-controllers.cjs.js.map +1 -1
- package/dist/prop-controllers.es.js +0 -1
- package/dist/prop-controllers.es.js.map +1 -1
- package/dist/react.cjs.js +3 -4
- package/dist/react.cjs.js.map +1 -1
- package/dist/react.es.js +3 -4
- package/dist/react.es.js.map +1 -1
- package/dist/slate.cjs.js +1 -12
- package/dist/slate.cjs.js.map +1 -1
- package/dist/slate.es.js +1 -12
- package/dist/slate.es.js.map +1 -1
- package/dist/state/breakpoints.cjs.js +175 -0
- package/dist/state/breakpoints.cjs.js.map +1 -0
- package/dist/state/breakpoints.es.js +160 -0
- package/dist/state/breakpoints.es.js.map +1 -0
- package/dist/types/src/components/builtin/Box/Box.d.ts.map +1 -1
- package/dist/types/src/components/builtin/Box/register.d.ts.map +1 -1
- package/dist/types/src/components/builtin/Button/Button.d.ts.map +1 -1
- package/dist/types/src/components/builtin/Button/register.d.ts.map +1 -1
- package/dist/types/src/components/builtin/Carousel/Carousel.d.ts.map +1 -1
- package/dist/types/src/components/builtin/Carousel/register.d.ts.map +1 -1
- package/dist/types/src/components/builtin/Countdown/register.d.ts.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/Form/components/Field/components/Label/index.d.ts.map +1 -1
- package/dist/types/src/components/builtin/Form/register.d.ts.map +1 -1
- package/dist/types/src/components/builtin/Image/Image.d.ts.map +1 -1
- package/dist/types/src/components/builtin/Navigation/components/MobileMenu/components/MobileDropDownButton/index.d.ts.map +1 -1
- package/dist/types/src/components/builtin/Navigation/components/MobileMenu/index.d.ts.map +1 -1
- package/dist/types/src/components/builtin/Navigation/register.d.ts.map +1 -1
- package/dist/types/src/components/builtin/SocialLinks/register.d.ts.map +1 -1
- package/dist/types/src/components/builtin/Text/components/Leaf/leaf.d.ts +0 -4
- package/dist/types/src/components/builtin/Text/components/Leaf/leaf.d.ts.map +1 -1
- package/dist/types/src/components/builtin/Text/register.d.ts.map +1 -1
- package/dist/types/src/components/hooks/useMediaQuery.d.ts.map +1 -1
- package/dist/types/src/components/utils/drop-first.d.ts +2 -0
- package/dist/types/src/components/utils/drop-first.d.ts.map +1 -0
- package/dist/types/src/components/utils/responsive-style.d.ts +21 -10
- package/dist/types/src/components/utils/responsive-style.d.ts.map +1 -1
- package/dist/types/src/controls/types.d.ts +1 -1
- package/dist/types/src/controls/types.d.ts.map +1 -1
- package/dist/types/src/index.d.ts +2 -2
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/next/api-handler/handlers/manifest.d.ts +1 -0
- package/dist/types/src/next/api-handler/handlers/manifest.d.ts.map +1 -1
- package/dist/types/src/next/client.d.ts +4 -1
- package/dist/types/src/next/client.d.ts.map +1 -1
- package/dist/types/src/next/index.d.ts +3 -1
- package/dist/types/src/next/index.d.ts.map +1 -1
- package/dist/types/src/prop-controllers/descriptors.d.ts +1 -1
- package/dist/types/src/prop-controllers/descriptors.d.ts.map +1 -1
- package/dist/types/src/runtimes/react/components/LiveProvider.d.ts +3 -1
- package/dist/types/src/runtimes/react/components/LiveProvider.d.ts.map +1 -1
- package/dist/types/src/runtimes/react/components/PreviewProvider.d.ts +3 -1
- package/dist/types/src/runtimes/react/components/PreviewProvider.d.ts.map +1 -1
- package/dist/types/src/runtimes/react/index.d.ts +22 -4
- package/dist/types/src/runtimes/react/index.d.ts.map +1 -1
- package/dist/types/src/slate/BlockPlugin/clearBlockKeyForDevice.d.ts +2 -2
- package/dist/types/src/slate/BlockPlugin/clearBlockKeyForDevice.d.ts.map +1 -1
- package/dist/types/src/slate/BlockPlugin/index.d.ts +4 -0
- package/dist/types/src/slate/BlockPlugin/index.d.ts.map +1 -1
- package/dist/types/src/slate/BlockPlugin/setBlockKeyForDevice.d.ts +7 -3
- package/dist/types/src/slate/BlockPlugin/setBlockKeyForDevice.d.ts.map +1 -1
- package/dist/types/src/slate/BlockPlugin/types.d.ts +2 -2
- package/dist/types/src/slate/BlockPlugin/types.d.ts.map +1 -1
- package/dist/types/src/slate/BlockPlugin/unwrapInline.d.ts +4 -0
- package/dist/types/src/slate/BlockPlugin/unwrapInline.d.ts.map +1 -0
- package/dist/types/src/slate/BlockPlugin/wrapInline.d.ts +4 -0
- package/dist/types/src/slate/BlockPlugin/wrapInline.d.ts.map +1 -0
- package/dist/types/src/slate/ListPlugin/toggleList.d.ts +2 -1
- package/dist/types/src/slate/ListPlugin/toggleList.d.ts.map +1 -1
- package/dist/types/src/slate/ListPlugin/unwrapList.d.ts +6 -2
- package/dist/types/src/slate/ListPlugin/unwrapList.d.ts.map +1 -1
- package/dist/types/src/slate/ListPlugin/utils/getSelectedListItems.d.ts +0 -1
- package/dist/types/src/slate/ListPlugin/utils/getSelectedListItems.d.ts.map +1 -1
- package/dist/types/src/slate/ListPlugin/wrapList.d.ts +2 -1
- package/dist/types/src/slate/ListPlugin/wrapList.d.ts.map +1 -1
- package/dist/types/src/slate/TypographyPlugin/clearActiveTypographyStyle.d.ts +6 -2
- package/dist/types/src/slate/TypographyPlugin/clearActiveTypographyStyle.d.ts.map +1 -1
- package/dist/types/src/slate/TypographyPlugin/clearDeviceActiveTypography.d.ts +6 -2
- package/dist/types/src/slate/TypographyPlugin/clearDeviceActiveTypography.d.ts.map +1 -1
- package/dist/types/src/slate/TypographyPlugin/detachActiveTypography.d.ts +6 -2
- package/dist/types/src/slate/TypographyPlugin/detachActiveTypography.d.ts.map +1 -1
- package/dist/types/src/slate/TypographyPlugin/index.d.ts.map +1 -1
- package/dist/types/src/slate/TypographyPlugin/setActiveTypographyId.d.ts +6 -2
- package/dist/types/src/slate/TypographyPlugin/setActiveTypographyId.d.ts.map +1 -1
- package/dist/types/src/slate/TypographyPlugin/setActiveTypographyStyle.d.ts +7 -2
- package/dist/types/src/slate/TypographyPlugin/setActiveTypographyStyle.d.ts.map +1 -1
- package/dist/types/src/slate/selectors.d.ts +19 -0
- package/dist/types/src/slate/selectors.d.ts.map +1 -0
- package/dist/types/src/slate/utils/editor.d.ts.map +1 -1
- package/dist/types/src/slate/utils/element.d.ts +2 -1
- package/dist/types/src/slate/utils/element.d.ts.map +1 -1
- package/dist/types/src/slate/utils/unhangRange.d.ts +10 -0
- package/dist/types/src/slate/utils/unhangRange.d.ts.map +1 -0
- package/dist/types/src/state/actions.d.ts +10 -1
- package/dist/types/src/state/actions.d.ts.map +1 -1
- package/dist/types/src/state/modules/breakpoints.d.ts +44 -0
- package/dist/types/src/state/modules/breakpoints.d.ts.map +1 -0
- package/dist/types/src/state/react-builder-preview.d.ts +2 -0
- package/dist/types/src/state/react-builder-preview.d.ts.map +1 -1
- package/dist/types/src/state/react-page.d.ts +5 -1
- package/dist/types/src/state/react-page.d.ts.map +1 -1
- package/dist/types/src/utils/isNonNullable.d.ts +2 -0
- package/dist/types/src/utils/isNonNullable.d.ts.map +1 -0
- package/dist/useMediaQuery.cjs.js +38 -0
- package/dist/useMediaQuery.cjs.js.map +1 -0
- package/dist/useMediaQuery.es.js +37 -0
- package/dist/useMediaQuery.es.js.map +1 -0
- package/package.json +10 -2
- package/state/breakpoints.js +1 -0
- package/dist/isNonNullable.cjs.js +0 -6
- package/dist/isNonNullable.cjs.js.map +0 -1
- package/dist/isNonNullable.es.js +0 -5
- package/dist/isNonNullable.es.js.map +0 -1
- package/dist/responsive-style.cjs.js +0 -917
- package/dist/responsive-style.cjs.js.map +0 -1
- package/dist/responsive-style.es.js +0 -853
- package/dist/responsive-style.es.js.map +0 -1
- package/dist/types/src/components/utils/devices.d.ts +0 -17
- package/dist/types/src/components/utils/devices.d.ts.map +0 -1
package/dist/index.cjs5.js
CHANGED
|
@@ -22,8 +22,7 @@ var slate = require("slate");
|
|
|
22
22
|
var isHotkey = require("is-hotkey");
|
|
23
23
|
var descriptors = require("./descriptors.cjs.js");
|
|
24
24
|
require("slate-react");
|
|
25
|
-
var
|
|
26
|
-
var responsiveStyle = require("./responsive-style.cjs.js");
|
|
25
|
+
var state_breakpoints = require("./state/breakpoints.cjs.js");
|
|
27
26
|
function _interopDefaultLegacy(e) {
|
|
28
27
|
return e && typeof e === "object" && "default" in e ? e : { "default": e };
|
|
29
28
|
}
|
|
@@ -31,11 +30,14 @@ var isHotkey__default = /* @__PURE__ */ _interopDefaultLegacy(isHotkey);
|
|
|
31
30
|
const LIST_ITEM_CHILD_POSITION = 0;
|
|
32
31
|
const LIST_ITEM_LIST_POSITION = 1;
|
|
33
32
|
const ElementUtils = {
|
|
33
|
+
isRootBlock(node) {
|
|
34
|
+
return slate.Element.isElement(node) && (slate.Element.isElementType(node, descriptors.BlockType.Paragraph) || slate.Element.isElementType(node, descriptors.BlockType.Heading1) || slate.Element.isElementType(node, descriptors.BlockType.Heading2) || slate.Element.isElementType(node, descriptors.BlockType.Heading3) || slate.Element.isElementType(node, descriptors.BlockType.Heading3) || slate.Element.isElementType(node, descriptors.BlockType.Heading4) || slate.Element.isElementType(node, descriptors.BlockType.Heading5) || slate.Element.isElementType(node, descriptors.BlockType.Heading6) || slate.Element.isElementType(node, descriptors.BlockType.BlockQuote) || slate.Element.isElementType(node, descriptors.BlockType.UnorderedList) || slate.Element.isElementType(node, descriptors.BlockType.OrderedList));
|
|
35
|
+
},
|
|
34
36
|
isBlock(node) {
|
|
35
|
-
return slate.Element.isElement(node) && (
|
|
37
|
+
return slate.Element.isElement(node) && (this.isRootBlock(node) || slate.Element.isElementType(node, descriptors.BlockType.ListItem) || slate.Element.isElementType(node, descriptors.BlockType.ListItemChild));
|
|
36
38
|
},
|
|
37
39
|
isInline(node) {
|
|
38
|
-
return slate.Element.
|
|
40
|
+
return slate.Element.isElementType(node, descriptors.InlineType.Code) || slate.Element.isElementType(node, descriptors.InlineType.Link) || slate.Element.isElementType(node, descriptors.InlineType.SubScript) || slate.Element.isElementType(node, descriptors.InlineType.SuperScript);
|
|
39
41
|
},
|
|
40
42
|
isConvertibleToListTextNode(node) {
|
|
41
43
|
return !this.isList(node) && !this.isListItem(node) && !this.isListItemChild(node);
|
|
@@ -66,7 +68,7 @@ const ElementUtils = {
|
|
|
66
68
|
},
|
|
67
69
|
createListItem() {
|
|
68
70
|
return {
|
|
69
|
-
children: [this.
|
|
71
|
+
children: [this.createListItemChild()],
|
|
70
72
|
type: descriptors.BlockType.ListItem
|
|
71
73
|
};
|
|
72
74
|
},
|
|
@@ -79,18 +81,26 @@ const ElementUtils = {
|
|
|
79
81
|
};
|
|
80
82
|
const EditorUtils = {
|
|
81
83
|
getFirstAncestorList(editor, path) {
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
84
|
+
try {
|
|
85
|
+
const parentList = slate.Editor.above(editor, {
|
|
86
|
+
at: path,
|
|
87
|
+
match: (node) => ElementUtils.isList(node)
|
|
88
|
+
});
|
|
89
|
+
return parentList != null ? parentList : null;
|
|
90
|
+
} catch (e) {
|
|
91
|
+
return null;
|
|
92
|
+
}
|
|
87
93
|
},
|
|
88
94
|
getFirstAncestorListItem(editor, path) {
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
95
|
+
try {
|
|
96
|
+
const parentListItem = slate.Editor.above(editor, {
|
|
97
|
+
at: path,
|
|
98
|
+
match: (node) => ElementUtils.isListItem(node)
|
|
99
|
+
});
|
|
100
|
+
return parentListItem != null ? parentListItem : null;
|
|
101
|
+
} catch (e) {
|
|
102
|
+
return null;
|
|
103
|
+
}
|
|
94
104
|
}
|
|
95
105
|
};
|
|
96
106
|
function filterForSubtreeRoots(entries) {
|
|
@@ -214,10 +224,17 @@ function unwrapPath(editor, listItemPath) {
|
|
|
214
224
|
}
|
|
215
225
|
});
|
|
216
226
|
}
|
|
217
|
-
function unwrapList(editor) {
|
|
218
|
-
|
|
227
|
+
function unwrapList(editor, options) {
|
|
228
|
+
var _a;
|
|
229
|
+
const at = (_a = options == null ? void 0 : options.at) != null ? _a : editor.selection;
|
|
230
|
+
if (!at)
|
|
219
231
|
return;
|
|
220
|
-
const listItems =
|
|
232
|
+
const listItems = Array.from(slate.Editor.nodes(editor, {
|
|
233
|
+
at,
|
|
234
|
+
match: (node) => {
|
|
235
|
+
return slate.Element.isElement(node) && ElementUtils.isListItem(node);
|
|
236
|
+
}
|
|
237
|
+
}));
|
|
221
238
|
const subRoots = filterForSubtreeRoots(listItems);
|
|
222
239
|
const refs = subRoots.map(([_, path]) => slate.Editor.pathRef(editor, path));
|
|
223
240
|
refs.forEach((ref) => {
|
|
@@ -228,10 +245,12 @@ function unwrapList(editor) {
|
|
|
228
245
|
});
|
|
229
246
|
}
|
|
230
247
|
function wrapList(editor, options = { type: descriptors.BlockType.UnorderedList }) {
|
|
231
|
-
|
|
248
|
+
var _a;
|
|
249
|
+
const at = (_a = options.at) != null ? _a : editor.selection;
|
|
250
|
+
if (!at)
|
|
232
251
|
return;
|
|
233
252
|
const nonListEntries = Array.from(slate.Editor.nodes(editor, {
|
|
234
|
-
at
|
|
253
|
+
at,
|
|
235
254
|
match: (node) => {
|
|
236
255
|
return slate.Element.isElement(node) && ElementUtils.isConvertibleToListTextNode(node);
|
|
237
256
|
}
|
|
@@ -245,6 +264,7 @@ function wrapList(editor, options = { type: descriptors.BlockType.UnorderedList
|
|
|
245
264
|
at: path
|
|
246
265
|
});
|
|
247
266
|
slate.Transforms.wrapNodes(editor, ElementUtils.createListItem(), {
|
|
267
|
+
match: (node) => ElementUtils.isListItemChild(node),
|
|
248
268
|
at: path
|
|
249
269
|
});
|
|
250
270
|
slate.Transforms.wrapNodes(editor, ElementUtils.createList(options.type), {
|
|
@@ -256,18 +276,20 @@ function wrapList(editor, options = { type: descriptors.BlockType.UnorderedList
|
|
|
256
276
|
});
|
|
257
277
|
}
|
|
258
278
|
function toggleList(editor, options = { type: descriptors.BlockType.UnorderedList }) {
|
|
259
|
-
|
|
279
|
+
var _a;
|
|
280
|
+
const at = (_a = options.at) != null ? _a : editor.selection;
|
|
281
|
+
if (at == null)
|
|
260
282
|
return;
|
|
261
|
-
const start = LocationUtils.getStartPath(
|
|
283
|
+
const start = LocationUtils.getStartPath(at);
|
|
262
284
|
const ancestorPath = slate.Path.ancestors(start).at(1);
|
|
263
285
|
if (!ancestorPath || !slate.Node.has(editor, ancestorPath))
|
|
264
286
|
return;
|
|
265
287
|
const ancestor = slate.Node.get(editor, ancestorPath);
|
|
266
288
|
if (!ElementUtils.isList(ancestor)) {
|
|
267
|
-
return wrapList(editor, { type: options.type });
|
|
289
|
+
return wrapList(editor, { type: options.type, at });
|
|
268
290
|
}
|
|
269
291
|
if (ancestor.type === options.type) {
|
|
270
|
-
unwrapList(editor);
|
|
292
|
+
unwrapList(editor, { at });
|
|
271
293
|
} else {
|
|
272
294
|
slate.Transforms.setNodes(editor, { type: options.type }, { at: ancestorPath });
|
|
273
295
|
}
|
|
@@ -378,10 +400,10 @@ function withList(editor) {
|
|
|
378
400
|
const nodeChildren = Array.from(slate.Node.children(editor, nodePath));
|
|
379
401
|
const childrenToBeMerged = Array.from(slate.Node.children(editor, nodeToBeMergedPath));
|
|
380
402
|
slate.Editor.withoutNormalizing(editor, () => {
|
|
381
|
-
childrenToBeMerged.forEach(([_, childPath]
|
|
403
|
+
childrenToBeMerged.reverse().forEach(([_, childPath]) => {
|
|
382
404
|
slate.Transforms.moveNodes(editor, {
|
|
383
405
|
at: childPath,
|
|
384
|
-
to: [...nodePath, nodeChildren.length
|
|
406
|
+
to: [...nodePath, nodeChildren.length]
|
|
385
407
|
});
|
|
386
408
|
});
|
|
387
409
|
slate.Transforms.removeNodes(editor, { at: nodeToBeMergedPath });
|
|
@@ -396,94 +418,168 @@ function withList(editor) {
|
|
|
396
418
|
};
|
|
397
419
|
return editor;
|
|
398
420
|
}
|
|
399
|
-
function clearActiveTypographyStyle(editor) {
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
at
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
if (slate.Text.isText(node)) {
|
|
408
|
-
const typography = __spreadProps(__spreadValues({}, node.typography), {
|
|
409
|
-
style: []
|
|
410
|
-
});
|
|
421
|
+
function clearActiveTypographyStyle(editor, options) {
|
|
422
|
+
slate.Editor.withoutNormalizing(editor, () => {
|
|
423
|
+
var _a;
|
|
424
|
+
const at = (_a = options == null ? void 0 : options.at) != null ? _a : editor.selection;
|
|
425
|
+
if (!at)
|
|
426
|
+
return;
|
|
427
|
+
const atRef = slate.Editor.rangeRef(editor, at);
|
|
428
|
+
if (atRef.current) {
|
|
411
429
|
slate.Transforms.setNodes(editor, {
|
|
412
|
-
|
|
413
|
-
}, {
|
|
430
|
+
slice: true
|
|
431
|
+
}, {
|
|
432
|
+
at: atRef.current,
|
|
433
|
+
match: (node) => slate.Text.isText(node),
|
|
434
|
+
split: slate.Range.isExpanded(atRef.current)
|
|
435
|
+
});
|
|
414
436
|
}
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
437
|
+
if (atRef.current) {
|
|
438
|
+
const textNodes = Array.from(slate.Editor.nodes(editor, {
|
|
439
|
+
at: atRef.current,
|
|
440
|
+
match: (node) => slate.Text.isText(node) && node.slice === true
|
|
441
|
+
}));
|
|
442
|
+
for (const [node, path] of textNodes) {
|
|
443
|
+
if (slate.Text.isText(node)) {
|
|
444
|
+
const typography = __spreadProps(__spreadValues({}, node.typography), {
|
|
445
|
+
style: []
|
|
446
|
+
});
|
|
447
|
+
slate.Transforms.setNodes(editor, {
|
|
448
|
+
typography
|
|
449
|
+
}, { at: path });
|
|
450
|
+
}
|
|
451
|
+
}
|
|
452
|
+
}
|
|
453
|
+
atRef.unref();
|
|
424
454
|
});
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
455
|
+
}
|
|
456
|
+
function clearDeviceActiveTypography(editor, currentDeviceId, options) {
|
|
457
|
+
slate.Editor.withoutNormalizing(editor, () => {
|
|
458
|
+
var _a, _b, _c;
|
|
459
|
+
const at = (_a = options == null ? void 0 : options.at) != null ? _a : editor.selection;
|
|
460
|
+
if (!at)
|
|
461
|
+
return;
|
|
462
|
+
const atRef = slate.Editor.rangeRef(editor, at);
|
|
463
|
+
if (atRef.current) {
|
|
430
464
|
slate.Transforms.setNodes(editor, {
|
|
431
|
-
|
|
432
|
-
}, {
|
|
465
|
+
slice: true
|
|
466
|
+
}, {
|
|
467
|
+
at: atRef.current,
|
|
468
|
+
match: (node) => slate.Text.isText(node),
|
|
469
|
+
split: slate.Range.isExpanded(atRef.current)
|
|
470
|
+
});
|
|
433
471
|
}
|
|
434
|
-
|
|
472
|
+
if (atRef.current) {
|
|
473
|
+
const textNodes = Array.from(slate.Editor.nodes(editor, {
|
|
474
|
+
at: atRef.current,
|
|
475
|
+
match: (node) => slate.Text.isText(node) && node.slice === true
|
|
476
|
+
}));
|
|
477
|
+
for (const [node, path] of textNodes) {
|
|
478
|
+
if (slate.Text.isText(node)) {
|
|
479
|
+
const typography = __spreadProps(__spreadValues({}, node.typography), {
|
|
480
|
+
style: (_c = (_b = node == null ? void 0 : node.typography) == null ? void 0 : _b.style.filter(({ deviceId }) => deviceId !== currentDeviceId)) != null ? _c : []
|
|
481
|
+
});
|
|
482
|
+
slate.Transforms.setNodes(editor, {
|
|
483
|
+
typography
|
|
484
|
+
}, { at: path });
|
|
485
|
+
}
|
|
486
|
+
}
|
|
487
|
+
}
|
|
488
|
+
atRef.unref();
|
|
489
|
+
});
|
|
435
490
|
}
|
|
436
|
-
function detachActiveTypography(editor, value) {
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
at
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
if (slate.Text.isText(node)) {
|
|
491
|
+
function detachActiveTypography(editor, value, options) {
|
|
492
|
+
slate.Editor.withoutNormalizing(editor, () => {
|
|
493
|
+
var _a;
|
|
494
|
+
const at = (_a = options == null ? void 0 : options.at) != null ? _a : editor.selection;
|
|
495
|
+
if (!at)
|
|
496
|
+
return;
|
|
497
|
+
const atRef = slate.Editor.rangeRef(editor, at);
|
|
498
|
+
if (atRef.current) {
|
|
445
499
|
slate.Transforms.setNodes(editor, {
|
|
446
|
-
|
|
447
|
-
|
|
500
|
+
slice: true
|
|
501
|
+
}, {
|
|
502
|
+
at: atRef.current,
|
|
503
|
+
match: (node) => slate.Text.isText(node),
|
|
504
|
+
split: slate.Range.isExpanded(atRef.current)
|
|
505
|
+
});
|
|
506
|
+
}
|
|
507
|
+
if (atRef.current) {
|
|
508
|
+
const textNodes = Array.from(slate.Editor.nodes(editor, {
|
|
509
|
+
at: atRef.current,
|
|
510
|
+
match: (node) => slate.Text.isText(node) && node.slice === true
|
|
511
|
+
}));
|
|
512
|
+
for (const [node, path] of textNodes) {
|
|
513
|
+
if (slate.Text.isText(node)) {
|
|
514
|
+
slate.Transforms.setNodes(editor, {
|
|
515
|
+
typography: {
|
|
516
|
+
style: value
|
|
517
|
+
}
|
|
518
|
+
}, { at: path });
|
|
448
519
|
}
|
|
449
|
-
}
|
|
520
|
+
}
|
|
450
521
|
}
|
|
522
|
+
atRef.unref();
|
|
451
523
|
});
|
|
452
524
|
}
|
|
453
|
-
function setActiveTypographyId(editor, id) {
|
|
525
|
+
function setActiveTypographyId(editor, id, options) {
|
|
526
|
+
var _a;
|
|
527
|
+
const at = (_a = options == null ? void 0 : options.at) != null ? _a : editor.selection;
|
|
528
|
+
if (!at)
|
|
529
|
+
return;
|
|
454
530
|
slate.Transforms.setNodes(editor, {
|
|
455
531
|
typography: {
|
|
456
532
|
id,
|
|
457
533
|
style: []
|
|
458
534
|
}
|
|
459
535
|
}, {
|
|
460
|
-
|
|
536
|
+
at,
|
|
537
|
+
match: (node) => slate.Text.isText(node),
|
|
538
|
+
split: slate.Range.isExpanded(at)
|
|
461
539
|
});
|
|
462
540
|
}
|
|
463
|
-
function setActiveTypographyStyle(editor, deviceId, prop, value) {
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
for (const [node, path] of textNodes) {
|
|
472
|
-
if (slate.Text.isText(node)) {
|
|
473
|
-
const deviceOverrides = (_b = (_a = node == null ? void 0 : node.typography) == null ? void 0 : _a.style.filter(leaf.isDeviceOverride)) != null ? _b : [];
|
|
474
|
-
const deviceStyle = responsiveStyle.findDeviceOverride(deviceOverrides, deviceId, (v) => v) || { value: {} };
|
|
475
|
-
const nextDeviceStyle = {
|
|
476
|
-
deviceId,
|
|
477
|
-
value: __spreadProps(__spreadValues({}, deviceStyle.value), { [prop]: value })
|
|
478
|
-
};
|
|
479
|
-
const nextTypography = __spreadProps(__spreadValues({}, node.typography), {
|
|
480
|
-
style: [...deviceOverrides.filter((v) => v.deviceId !== deviceId), nextDeviceStyle]
|
|
481
|
-
});
|
|
541
|
+
function setActiveTypographyStyle(editor, breakpoints, deviceId, prop, value, options) {
|
|
542
|
+
slate.Editor.withoutNormalizing(editor, () => {
|
|
543
|
+
var _a, _b, _c;
|
|
544
|
+
const at = (_a = options == null ? void 0 : options.at) != null ? _a : editor.selection;
|
|
545
|
+
if (!at)
|
|
546
|
+
return;
|
|
547
|
+
const atRef = slate.Editor.rangeRef(editor, at);
|
|
548
|
+
if (atRef.current) {
|
|
482
549
|
slate.Transforms.setNodes(editor, {
|
|
483
|
-
|
|
484
|
-
}, {
|
|
550
|
+
slice: true
|
|
551
|
+
}, {
|
|
552
|
+
at: atRef.current,
|
|
553
|
+
match: (node) => slate.Text.isText(node),
|
|
554
|
+
split: slate.Range.isExpanded(atRef.current)
|
|
555
|
+
});
|
|
485
556
|
}
|
|
486
|
-
|
|
557
|
+
if (atRef.current) {
|
|
558
|
+
const textNodes = Array.from(slate.Editor.nodes(editor, {
|
|
559
|
+
at: atRef.current,
|
|
560
|
+
match: (node) => slate.Text.isText(node) && node.slice === true
|
|
561
|
+
}));
|
|
562
|
+
for (const [node, path] of textNodes) {
|
|
563
|
+
if (slate.Text.isText(node)) {
|
|
564
|
+
const deviceOverrides = (_c = (_b = node == null ? void 0 : node.typography) == null ? void 0 : _b.style) != null ? _c : [];
|
|
565
|
+
const deviceStyle = state_breakpoints.findBreakpointOverride(breakpoints, deviceOverrides, deviceId, (v) => v) || {
|
|
566
|
+
value: {}
|
|
567
|
+
};
|
|
568
|
+
const nextDeviceStyle = {
|
|
569
|
+
deviceId,
|
|
570
|
+
value: __spreadProps(__spreadValues({}, deviceStyle.value), { [prop]: value })
|
|
571
|
+
};
|
|
572
|
+
const nextTypography = __spreadProps(__spreadValues({}, node.typography), {
|
|
573
|
+
style: [...deviceOverrides.filter((v) => v.deviceId !== deviceId), nextDeviceStyle]
|
|
574
|
+
});
|
|
575
|
+
slate.Transforms.setNodes(editor, {
|
|
576
|
+
typography: nextTypography
|
|
577
|
+
}, { at: path });
|
|
578
|
+
}
|
|
579
|
+
}
|
|
580
|
+
}
|
|
581
|
+
atRef.unref();
|
|
582
|
+
});
|
|
487
583
|
}
|
|
488
584
|
const Typography = {
|
|
489
585
|
setActiveTypographyId,
|
|
@@ -501,22 +597,67 @@ function withTypography(editor) {
|
|
|
501
597
|
slate.Transforms.unsetNodes(editor, "typography", { at: normalizationPath });
|
|
502
598
|
return;
|
|
503
599
|
}
|
|
600
|
+
if (slate.Text.isText(normalizationNode) && (normalizationNode == null ? void 0 : normalizationNode.slice) != null) {
|
|
601
|
+
slate.Transforms.unsetNodes(editor, "slice", { at: normalizationPath });
|
|
602
|
+
return;
|
|
603
|
+
}
|
|
504
604
|
normalizeNode(entry);
|
|
505
605
|
};
|
|
506
606
|
return editor;
|
|
507
607
|
}
|
|
508
|
-
function
|
|
509
|
-
|
|
510
|
-
if (
|
|
511
|
-
return;
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
at:
|
|
608
|
+
function unhangRange(editor, range) {
|
|
609
|
+
let [start, end] = slate.Range.edges(range);
|
|
610
|
+
if (start.offset !== 0 || end.offset !== 0 || slate.Range.isCollapsed(range)) {
|
|
611
|
+
return range;
|
|
612
|
+
}
|
|
613
|
+
const endBlock = slate.Editor.above(editor, {
|
|
614
|
+
at: end,
|
|
615
|
+
match: (n) => slate.Element.isElement(n) && slate.Editor.isBlock(editor, n)
|
|
515
616
|
});
|
|
617
|
+
const blockPath = endBlock ? endBlock[1] : [];
|
|
618
|
+
const first = slate.Editor.start(editor, start);
|
|
619
|
+
const before = { anchor: first, focus: end };
|
|
620
|
+
let skip = true;
|
|
621
|
+
for (const [node, path] of slate.Editor.nodes(editor, {
|
|
622
|
+
at: before,
|
|
623
|
+
match: slate.Text.isText,
|
|
624
|
+
reverse: true
|
|
625
|
+
})) {
|
|
626
|
+
if (skip) {
|
|
627
|
+
skip = false;
|
|
628
|
+
continue;
|
|
629
|
+
}
|
|
630
|
+
if (node.text !== "" || slate.Path.isBefore(path, blockPath)) {
|
|
631
|
+
end = { path, offset: node.text.length };
|
|
632
|
+
break;
|
|
633
|
+
}
|
|
634
|
+
}
|
|
635
|
+
return { anchor: start, focus: end };
|
|
636
|
+
}
|
|
637
|
+
function getSelection(editor) {
|
|
638
|
+
if (editor.selection)
|
|
639
|
+
return unhangRange(editor, editor.selection);
|
|
640
|
+
return {
|
|
641
|
+
anchor: slate.Editor.start(editor, []),
|
|
642
|
+
focus: slate.Editor.end(editor, [])
|
|
643
|
+
};
|
|
644
|
+
}
|
|
645
|
+
function getBlocksInSelection(editor) {
|
|
646
|
+
return Array.from(slate.Editor.nodes(editor, {
|
|
647
|
+
at: getSelection(editor),
|
|
648
|
+
match: (node) => ElementUtils.isRootBlock(node)
|
|
649
|
+
})).filter((entry) => ElementUtils.isRootBlock(entry[0]));
|
|
650
|
+
}
|
|
651
|
+
function setBlockKeyForDevice(editor, breakpoints, deviceId, key, value, options) {
|
|
652
|
+
var _a, _b;
|
|
653
|
+
const at = (_a = options == null ? void 0 : options.at) != null ? _a : editor.selection;
|
|
654
|
+
if (!at)
|
|
655
|
+
return;
|
|
656
|
+
const rootElements = getBlocksInSelection(editor);
|
|
516
657
|
for (const [node, path] of rootElements) {
|
|
517
658
|
if (ElementUtils.isBlock(node)) {
|
|
518
|
-
const deviceValues = (
|
|
519
|
-
const currentDeviceValue =
|
|
659
|
+
const deviceValues = (_b = node[key]) != null ? _b : [];
|
|
660
|
+
const currentDeviceValue = state_breakpoints.findBreakpointOverride(breakpoints, deviceValues, deviceId, (v) => v);
|
|
520
661
|
const nextDeviceValue = __spreadProps(__spreadValues({}, currentDeviceValue), {
|
|
521
662
|
deviceId,
|
|
522
663
|
value
|
|
@@ -529,12 +670,7 @@ function setBlockKeyForDevice(editor, deviceId, key, value) {
|
|
|
529
670
|
}
|
|
530
671
|
function clearBlockKeyForDevice(editor, deviceId, key) {
|
|
531
672
|
var _a;
|
|
532
|
-
|
|
533
|
-
return;
|
|
534
|
-
const rootElements = slate.Editor.nodes(editor, {
|
|
535
|
-
match: (_, path) => path.length === 1,
|
|
536
|
-
at: slate.Editor.unhangRange(editor, editor.selection)
|
|
537
|
-
});
|
|
673
|
+
const rootElements = getBlocksInSelection(editor);
|
|
538
674
|
for (const [node, path] of rootElements) {
|
|
539
675
|
if (ElementUtils.isBlock(node)) {
|
|
540
676
|
const deviceOverrides = (_a = node[key]) != null ? _a : [];
|
|
@@ -544,12 +680,29 @@ function clearBlockKeyForDevice(editor, deviceId, key) {
|
|
|
544
680
|
}
|
|
545
681
|
}
|
|
546
682
|
}
|
|
683
|
+
function wrapInline(editor, inline) {
|
|
684
|
+
slate.Transforms.wrapNodes(editor, inline, {
|
|
685
|
+
at: getSelection(editor),
|
|
686
|
+
split: true
|
|
687
|
+
});
|
|
688
|
+
}
|
|
689
|
+
function unwrapInline(editor, type) {
|
|
690
|
+
slate.Transforms.unwrapNodes(editor, {
|
|
691
|
+
match: (node) => ElementUtils.isInline(node) && node.type === type,
|
|
692
|
+
at: getSelection(editor)
|
|
693
|
+
});
|
|
694
|
+
}
|
|
547
695
|
const Block = {
|
|
548
696
|
setBlockKeyForDevice,
|
|
549
|
-
clearBlockKeyForDevice
|
|
697
|
+
clearBlockKeyForDevice,
|
|
698
|
+
wrapInline,
|
|
699
|
+
unwrapInline
|
|
550
700
|
};
|
|
551
701
|
function withBlock(editor) {
|
|
552
702
|
const { normalizeNode } = editor;
|
|
703
|
+
editor.isInline = (entry) => {
|
|
704
|
+
return ElementUtils.isInline(entry);
|
|
705
|
+
};
|
|
553
706
|
editor.normalizeNode = (entry) => {
|
|
554
707
|
var _a;
|
|
555
708
|
const [normalizationNode, normalizationPath] = entry;
|