@voiceflow/slate-serializer 1.0.0

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/README.md ADDED
@@ -0,0 +1 @@
1
+ # slate-serializer
@@ -0,0 +1,3 @@
1
+ import { Text } from '@voiceflow/base-types';
2
+ export declare const isLinkElement: (element: Text.AnyElement) => element is Text.LinkElement;
3
+ export declare const isVariableElement: (element: Text.AnyElement) => element is Text.VariableElement;
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isVariableElement = exports.isLinkElement = void 0;
4
+ const base_types_1 = require("@voiceflow/base-types");
5
+ const isLinkElement = (element) => element.type === base_types_1.Text.ElementType.LINK;
6
+ exports.isLinkElement = isLinkElement;
7
+ const isVariableElement = (element) => element.type === base_types_1.Text.ElementType.VARIABLE;
8
+ exports.isVariableElement = isVariableElement;
9
+ //# sourceMappingURL=guards.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"guards.js","sourceRoot":"","sources":["../src/guards.ts"],"names":[],"mappings":";;;AAAA,sDAA6C;AAEtC,MAAM,aAAa,GAAG,CAAC,OAAwB,EAA+B,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,iBAAI,CAAC,WAAW,CAAC,IAAI,CAAC;AAAlH,QAAA,aAAa,iBAAqG;AAExH,MAAM,iBAAiB,GAAG,CAAC,OAAwB,EAAmC,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,iBAAI,CAAC,WAAW,CAAC,QAAQ,CAAC;AAA9H,QAAA,iBAAiB,qBAA6G"}
@@ -0,0 +1,3 @@
1
+ export * from './guards';
2
+ export * from './selectors';
3
+ export * from './styles';
package/build/index.js ADDED
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./guards"), exports);
18
+ __exportStar(require("./selectors"), exports);
19
+ __exportStar(require("./styles"), exports);
20
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,8CAA4B;AAC5B,2CAAyB"}
@@ -0,0 +1,6 @@
1
+ import { Text } from '@voiceflow/base-types';
2
+ import type { CSSProperties } from 'react';
3
+ export declare const getElementCSSProperties: (element: Text.AnyElement) => CSSProperties;
4
+ export declare const getTextCSSProperties: (text: Text.Text) => CSSProperties;
5
+ export declare const getElementStyles: (element: Text.AnyElement) => string;
6
+ export declare const getTextStyles: (text: Text.Text) => string;
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getTextStyles = exports.getElementStyles = exports.getTextCSSProperties = exports.getElementCSSProperties = void 0;
4
+ const base_types_1 = require("@voiceflow/base-types");
5
+ const styles_1 = require("./styles");
6
+ const getElementCSSProperties = (element) => {
7
+ const textAlign = element[base_types_1.Text.ElementProperty.TEXT_ALIGN];
8
+ const styles = {};
9
+ if (textAlign)
10
+ styles.textAlign = textAlign;
11
+ return styles;
12
+ };
13
+ exports.getElementCSSProperties = getElementCSSProperties;
14
+ const getTextCSSProperties = (text) => {
15
+ const color = text[base_types_1.Text.TextProperty.COLOR];
16
+ const isItalic = text[base_types_1.Text.TextProperty.ITALIC];
17
+ const fontWeight = text[base_types_1.Text.TextProperty.FONT_WEIGHT];
18
+ const fontFamily = text[base_types_1.Text.TextProperty.FONT_FAMILY];
19
+ const isUnderline = text[base_types_1.Text.TextProperty.UNDERLINE];
20
+ const isStrikeThrough = text[base_types_1.Text.TextProperty.STRIKE_THROUGH];
21
+ const styles = {};
22
+ if (color)
23
+ styles.color = `rgba(${color.r},${color.g},${color.b},${color.a})`;
24
+ if (isItalic)
25
+ styles.fontStyle = 'italic';
26
+ if (fontWeight)
27
+ styles.fontWeight = Number(fontWeight);
28
+ if (fontFamily)
29
+ styles.fontFamily = `"${fontFamily}"`;
30
+ if (isUnderline || isStrikeThrough) {
31
+ let decoration = '';
32
+ if (isUnderline)
33
+ decoration += 'underline';
34
+ if (isStrikeThrough)
35
+ decoration += ' line-through';
36
+ styles.textDecoration = decoration.trim();
37
+ }
38
+ return styles;
39
+ };
40
+ exports.getTextCSSProperties = getTextCSSProperties;
41
+ const getElementStyles = (element) => (0, styles_1.convertCSSPropertiesToStyles)((0, exports.getElementCSSProperties)(element));
42
+ exports.getElementStyles = getElementStyles;
43
+ const getTextStyles = (text) => (0, styles_1.convertCSSPropertiesToStyles)((0, exports.getTextCSSProperties)(text));
44
+ exports.getTextStyles = getTextStyles;
45
+ //# sourceMappingURL=selectors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selectors.js","sourceRoot":"","sources":["../src/selectors.ts"],"names":[],"mappings":";;;AAAA,sDAA6C;AAG7C,qCAAwD;AAEjD,MAAM,uBAAuB,GAAG,CAAC,OAAwB,EAAiB,EAAE;IACjF,MAAM,SAAS,GAAG,OAAO,CAAC,iBAAI,CAAC,eAAe,CAAC,UAAU,CAA+B,CAAC;IAEzF,MAAM,MAAM,GAAkB,EAAE,CAAC;IAEjC,IAAI,SAAS;QAAE,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC;IAE5C,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AARW,QAAA,uBAAuB,2BAQlC;AAEK,MAAM,oBAAoB,GAAG,CAAC,IAAe,EAAiB,EAAE;IACrE,MAAM,KAAK,GAAG,IAAI,CAAC,iBAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;IAC5C,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;IAChD,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAI,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;IACvD,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAI,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;IACvD,MAAM,WAAW,GAAG,IAAI,CAAC,iBAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;IACtD,MAAM,eAAe,GAAG,IAAI,CAAC,iBAAI,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;IAE/D,MAAM,MAAM,GAAkB,EAAE,CAAC;IAEjC,IAAI,KAAK;QAAE,MAAM,CAAC,KAAK,GAAG,QAAQ,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,GAAG,CAAC;IAC9E,IAAI,QAAQ;QAAE,MAAM,CAAC,SAAS,GAAG,QAAQ,CAAC;IAC1C,IAAI,UAAU;QAAE,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;IACvD,IAAI,UAAU;QAAE,MAAM,CAAC,UAAU,GAAG,IAAI,UAAU,GAAG,CAAC;IAEtD,IAAI,WAAW,IAAI,eAAe,EAAE;QAClC,IAAI,UAAU,GAAG,EAAE,CAAC;QAEpB,IAAI,WAAW;YAAE,UAAU,IAAI,WAAW,CAAC;QAC3C,IAAI,eAAe;YAAE,UAAU,IAAI,eAAe,CAAC;QAEnD,MAAM,CAAC,cAAc,GAAG,UAAU,CAAC,IAAI,EAAE,CAAC;KAC3C;IAED,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAzBW,QAAA,oBAAoB,wBAyB/B;AAEK,MAAM,gBAAgB,GAAG,CAAC,OAAwB,EAAU,EAAE,CAAC,IAAA,qCAA4B,EAAC,IAAA,+BAAuB,EAAC,OAAO,CAAC,CAAC,CAAC;AAAxH,QAAA,gBAAgB,oBAAwG;AAE9H,MAAM,aAAa,GAAG,CAAC,IAAe,EAAU,EAAE,CAAC,IAAA,qCAA4B,EAAC,IAAA,4BAAoB,EAAC,IAAI,CAAC,CAAC,CAAC;AAAtG,QAAA,aAAa,iBAAyF"}
@@ -0,0 +1,3 @@
1
+ import { BaseText } from '@voiceflow/base-types';
2
+ import React from 'react';
3
+ export declare const serializeToJSX: (content: BaseText.SlateTextValue) => React.ReactNode;
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.serializeToJSX = void 0;
7
+ const react_1 = __importDefault(require("react"));
8
+ const slate_1 = __importDefault(require("slate"));
9
+ const guards_1 = require("../guards");
10
+ const selectors_1 = require("../selectors");
11
+ const serializeTextNode = (node, index) => {
12
+ const styles = (0, selectors_1.getTextCSSProperties)(node);
13
+ return (react_1.default.createElement("span", { key: index, style: styles }, node.text || react_1.default.createElement(react_1.default.Fragment, null, "\uFEFF")));
14
+ };
15
+ const serializeLinkElement = (node, index) => {
16
+ var _a;
17
+ const children = node.children.map(serializeNode);
18
+ const styles = (0, selectors_1.getElementCSSProperties)(node);
19
+ return (react_1.default.createElement("a", { key: index, rel: "noopener noreferrer", href: (_a = node.url) !== null && _a !== void 0 ? _a : '', target: "_blank", style: Object.assign(Object.assign({}, styles), { pointerEvents: 'all' }), onClick: (event) => {
20
+ var _a;
21
+ event.stopPropagation();
22
+ event.preventDefault();
23
+ if (node.url) {
24
+ (_a = window.open(node.url, '_blank', 'noopener=true,noreferrer=true')) === null || _a === void 0 ? void 0 : _a.focus();
25
+ }
26
+ } }, children));
27
+ };
28
+ const serializeVariableElement = (node, index) => react_1.default.createElement("span", { key: index }, `{${node.name}}`);
29
+ const serializeElementNode = (node, index) => {
30
+ if ((0, guards_1.isLinkElement)(node))
31
+ return serializeLinkElement(node, index);
32
+ if ((0, guards_1.isVariableElement)(node))
33
+ return serializeVariableElement(node, index);
34
+ const children = node.children.map(serializeNode);
35
+ const styles = (0, selectors_1.getElementCSSProperties)(node);
36
+ return (react_1.default.createElement("div", { key: index, style: styles }, children));
37
+ };
38
+ const serializeNode = (node, index) =>
39
+ // eslint-disable-next-line no-nested-ternary
40
+ slate_1.default.Text.isText(node) ? serializeTextNode(node, index) : slate_1.default.Element.isElement(node) ? serializeElementNode(node, index) : null;
41
+ const serializeToJSX = (content) => content.map(serializeNode);
42
+ exports.serializeToJSX = serializeToJSX;
43
+ //# sourceMappingURL=react.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"react.js","sourceRoot":"","sources":["../../src/serializers/react.tsx"],"names":[],"mappings":";;;;;;AACA,kDAA0B;AAC1B,kDAA0B;AAE1B,sCAA6D;AAC7D,4CAA6E;AAE7E,MAAM,iBAAiB,GAAG,CAAC,IAAmB,EAAE,KAAa,EAAmB,EAAE;IAChF,MAAM,MAAM,GAAG,IAAA,gCAAoB,EAAC,IAAI,CAAC,CAAC;IAE1C,OAAO,CACL,wCAAM,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,IAC5B,IAAI,CAAC,IAAI,IAAI,uEAAa,CACtB,CACR,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,oBAAoB,GAAG,CAAC,IAA0B,EAAE,KAAa,EAAmB,EAAE;;IAC1F,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IAClD,MAAM,MAAM,GAAG,IAAA,mCAAuB,EAAC,IAAI,CAAC,CAAC;IAE7C,OAAO,CACL,qCACE,GAAG,EAAE,KAAK,EACV,GAAG,EAAC,qBAAqB,EACzB,IAAI,EAAE,MAAA,IAAI,CAAC,GAAG,mCAAI,EAAE,EACpB,MAAM,EAAC,QAAQ,EACf,KAAK,kCAAO,MAAM,KAAE,aAAa,EAAE,KAAK,KACxC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;;YACjB,KAAK,CAAC,eAAe,EAAE,CAAC;YACxB,KAAK,CAAC,cAAc,EAAE,CAAC;YAEvB,IAAI,IAAI,CAAC,GAAG,EAAE;gBACZ,MAAA,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,EAAE,+BAA+B,CAAC,0CAAE,KAAK,EAAE,CAAC;aAC3E;QACH,CAAC,IAEA,QAAQ,CACP,CACL,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,wBAAwB,GAAG,CAAC,IAA8B,EAAE,KAAa,EAAE,EAAE,CAAC,wCAAM,GAAG,EAAE,KAAK,IAAG,IAAI,IAAI,CAAC,IAAI,GAAG,CAAQ,CAAC;AAEhI,MAAM,oBAAoB,GAAG,CAAC,IAAyB,EAAE,KAAa,EAAmB,EAAE;IACzF,IAAI,IAAA,sBAAa,EAAC,IAAI,CAAC;QAAE,OAAO,oBAAoB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAClE,IAAI,IAAA,0BAAiB,EAAC,IAAI,CAAC;QAAE,OAAO,wBAAwB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAE1E,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IAClD,MAAM,MAAM,GAAG,IAAA,mCAAuB,EAAC,IAAI,CAAC,CAAC;IAE7C,OAAO,CACL,uCAAK,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,IAC3B,QAAQ,CACL,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,aAAa,GAAG,CAAC,IAAyB,EAAE,KAAa,EAAmB,EAAE;AAClF,6CAA6C;AAC7C,eAAK,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,eAAK,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAE/H,MAAM,cAAc,GAAG,CAAC,OAAgC,EAAmB,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;AAAnG,QAAA,cAAc,kBAAqF"}
@@ -0,0 +1,2 @@
1
+ import { BaseText } from '@voiceflow/base-types';
2
+ export declare const serializeToText: (content: BaseText.SlateTextValue, encode?: boolean) => string;
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.serializeToText = void 0;
27
+ const Slate = __importStar(require("slate"));
28
+ const guards_1 = require("../guards");
29
+ const concatenateText = (content = []) => content.reduce((acc, node) => acc + (Slate.Text.isText(node) ? node.text : concatenateText(node.children)), '');
30
+ const encodeVariables = (value) => value.map((node) => {
31
+ if (!Slate.Element.isElement(node))
32
+ return node;
33
+ return (0, guards_1.isVariableElement)(node) ? { text: `{${node.name}}` } : Object.assign(Object.assign({}, node), { children: encodeVariables(node.children) });
34
+ });
35
+ const serializeToText = (content, encode = false) => concatenateText(encode ? encodeVariables(content) : content);
36
+ exports.serializeToText = serializeToText;
37
+ //# sourceMappingURL=text.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text.js","sourceRoot":"","sources":["../../src/serializers/text.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AACA,6CAA+B;AAE/B,sCAA8C;AAE9C,MAAM,eAAe,GAAG,CAAC,UAAmC,EAAE,EAAU,EAAE,CACxE,OAAO,CAAC,MAAM,CAAS,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AAE1H,MAAM,eAAe,GAAG,CAAC,KAA8B,EAA2B,EAAE,CAClF,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;IACjB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IAEhD,OAAO,IAAA,0BAAiB,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC,iCAAM,IAAI,KAAE,QAAQ,EAAE,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAE,CAAC;AACtH,CAAC,CAAC,CAAC;AAEE,MAAM,eAAe,GAAG,CAAC,OAAgC,EAAE,MAAM,GAAG,KAAK,EAAU,EAAE,CAC1F,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;AADlD,QAAA,eAAe,mBACmC"}
@@ -0,0 +1,3 @@
1
+ import type { CSSProperties } from 'react';
2
+ export declare const cssPropertyNameToStyleName: (name: string) => string;
3
+ export declare const convertCSSPropertiesToStyles: (properties: CSSProperties) => string;
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.convertCSSPropertiesToStyles = exports.cssPropertyNameToStyleName = void 0;
4
+ const CAPITAL_LETTER_REGEXP = /[A-Z]/g;
5
+ const cssPropertyNameToStyleName = (name) => name.replace(CAPITAL_LETTER_REGEXP, (match) => `-${match.toLowerCase()}`);
6
+ exports.cssPropertyNameToStyleName = cssPropertyNameToStyleName;
7
+ const convertCSSPropertiesToStyles = (properties) => Object.entries(properties)
8
+ .map(([key, value]) => `${(0, exports.cssPropertyNameToStyleName)(key)}:${value}`)
9
+ .join(';');
10
+ exports.convertCSSPropertiesToStyles = convertCSSPropertiesToStyles;
11
+ //# sourceMappingURL=styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"styles.js","sourceRoot":"","sources":["../src/styles.ts"],"names":[],"mappings":";;;AAEA,MAAM,qBAAqB,GAAG,QAAQ,CAAC;AAEhC,MAAM,0BAA0B,GAAG,CAAC,IAAY,EAAU,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,qBAAqB,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;AAAjI,QAAA,0BAA0B,8BAAuG;AAEvI,MAAM,4BAA4B,GAAG,CAAC,UAAyB,EAAU,EAAE,CAChF,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC;KACvB,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,GAAG,IAAA,kCAA0B,EAAC,GAAG,CAAC,IAAI,KAAK,EAAE,CAAC;KACpE,IAAI,CAAC,GAAG,CAAC,CAAC;AAHF,QAAA,4BAA4B,gCAG1B"}
package/package.json ADDED
@@ -0,0 +1,93 @@
1
+ {
2
+ "name": "@voiceflow/slate-serializer",
3
+ "description": "Utilities for serializing slate data",
4
+ "version": "1.0.0",
5
+ "author": "Ben Teichman",
6
+ "bugs": {
7
+ "url": "https://github.com/voiceflow/slate-serializer/issues"
8
+ },
9
+ "config": {
10
+ "commitizen": {
11
+ "path": "./node_modules/cz-conventional-changelog"
12
+ }
13
+ },
14
+ "devDependencies": {
15
+ "@commitlint/cli": "17.1.2",
16
+ "@istanbuljs/nyc-config-typescript": "1.0.2",
17
+ "@types/chai": "4.3.3",
18
+ "@types/mocha": "9.1.1",
19
+ "@voiceflow/commitlint-config": "2.0.0",
20
+ "@voiceflow/eslint-config": "7.0.0",
21
+ "@voiceflow/git-branch-check": "1.4.0",
22
+ "@voiceflow/prettier-config": "1.2.1",
23
+ "@voiceflow/tsconfig": "1.4.8",
24
+ "chai": "4.3.6",
25
+ "commitizen": "4.2.5",
26
+ "cz-conventional-changelog": "^3.3.0",
27
+ "depcheck": "1.4.3",
28
+ "eslint": "8.24.0",
29
+ "eslint-output": "^3.0.1",
30
+ "fixpack": "^4.0.0",
31
+ "husky": "8.0.1",
32
+ "istanbul": "^0.4.5",
33
+ "lint-staged": "13.0.3",
34
+ "mocha": "10.0.0",
35
+ "nyc": "^15.1.0",
36
+ "prettier": "2.7.1",
37
+ "react": "^18.2.0",
38
+ "slate": "^0.72.3",
39
+ "source-map-support": "0.5.21",
40
+ "ts-mocha": "10.0.0",
41
+ "ts-node": "10.9.1",
42
+ "tsc-alias": "1.7.0",
43
+ "typescript": "4.8.3"
44
+ },
45
+ "files": [
46
+ "build/"
47
+ ],
48
+ "homepage": "https://github.com/voiceflow/slate-serializer#readme",
49
+ "keywords": [
50
+ "slate",
51
+ "react",
52
+ "voiceflow"
53
+ ],
54
+ "license": "ISC",
55
+ "exports": {
56
+ ".": "./build/index.js",
57
+ "./text": "./build/serializers/text.js",
58
+ "./react": "./build/serializers/react.js"
59
+ },
60
+ "main": "build/index.js",
61
+ "prettier": "@voiceflow/prettier-config",
62
+ "repository": {
63
+ "type": "git",
64
+ "url": "git+https://github.com/voiceflow/slate-serializer.git"
65
+ },
66
+ "scripts": {
67
+ "build": "yarn clean && tsc -p tsconfig.build.json && tsc-alias -p tsconfig.build.json",
68
+ "clean": "rimraf build",
69
+ "commit": "cz",
70
+ "eslint-output": "eslint-output",
71
+ "lint": "eslint '**/*.{js,ts}'",
72
+ "lint:output": "yarn run eslint-output --quiet \"**/*.{js,ts}\"",
73
+ "lint:quiet": "yarn lint --quiet",
74
+ "lint:report": "yarn lint:output",
75
+ "prepublishOnly": "yarn build",
76
+ "test": "yarn test:run",
77
+ "test:dependencies": "depcheck",
78
+ "test:run": "NODE_ENV=test nyc ts-mocha --paths --config ./config/test/.mocharc.yml 'test/**/*.unit.ts'",
79
+ "test:single": "NODE_ENV=test ts-mocha --paths --config ./config/test/.mocharc.yml",
80
+ "test:unit": "NODE_ENV=test nyc --report-dir=nyc_coverage_unit ts-mocha --paths --config ./config/test/.mocharc.yml 'test/**/*.unit.ts'"
81
+ },
82
+ "types": "build/index.d.ts",
83
+ "dependencies": {
84
+ "@types/react": "18.0.21",
85
+ "@voiceflow/base-types": "2.68.1"
86
+ },
87
+ "peerDependencies": {
88
+ "slate": "^0.72.3"
89
+ },
90
+ "optionalDependencies": {
91
+ "react": "^18.2.0"
92
+ }
93
+ }