@frontkom/block-react-parser 1.1.0-beta.1 → 1.1.0-beta.2
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/.nvmrc +1 -1
- package/changelogs/CHANGELOG-1.1.0-beta.2.md +6 -0
- package/dist/components/Block.js +14 -15
- package/dist/components/Context.js +8 -10
- package/dist/components/Tree.js +33 -27
- package/dist/elements/index.js +21 -30
- package/dist/elements/tags/img.js +8 -10
- package/dist/elements/tags/selfClosing.js +4 -6
- package/dist/index.js +8 -8
- package/dist/utils/attribsProps.js +4 -3
- package/dist/utils/htmlAttribs.js +6 -5
- package/dist/utils/innerNode.js +6 -5
- package/dist/utils/parseBlocks.js +10 -5
- package/package.json +15 -11
package/.nvmrc
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
v20.10.0
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
## [1.1.0-beta.2](https://github.com/frontkom/block-react-parser/compare/v1.1.0-beta.1...v1.1.0-beta.2) (2024-03-13)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### Features
|
|
5
|
+
|
|
6
|
+
* merge beta to develop ([1144e9e](https://github.com/frontkom/block-react-parser/commit/1144e9e79a7171c4524e4fdbaa0fa1cc90d77378))
|
package/dist/components/Block.js
CHANGED
|
@@ -10,6 +10,9 @@ var _innerNode = _interopRequireDefault(require("../utils/innerNode"));
|
|
|
10
10
|
var _Context = require("./Context");
|
|
11
11
|
var _htmlAttribs = _interopRequireDefault(require("../utils/htmlAttribs"));
|
|
12
12
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
14
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
15
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
13
16
|
/**
|
|
14
17
|
* Block element.
|
|
15
18
|
*
|
|
@@ -17,20 +20,16 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
|
17
20
|
* @returns {JSX.Element | null | undefined}
|
|
18
21
|
*/
|
|
19
22
|
function Block(_ref) {
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
const blockExtended = {
|
|
31
|
-
...block,
|
|
32
|
-
htmlAttrs
|
|
33
|
-
};
|
|
23
|
+
var block = _ref.block;
|
|
24
|
+
var _block$blockName = block.blockName,
|
|
25
|
+
blockName = _block$blockName === void 0 ? null : _block$blockName,
|
|
26
|
+
innerContent = block.innerContent,
|
|
27
|
+
innerBlocks = block.innerBlocks;
|
|
28
|
+
var CustomBlock = (0, _Context.useBlockComponent)(blockName);
|
|
29
|
+
var htmlAttrs = (0, _htmlAttribs.default)(innerContent[0]);
|
|
30
|
+
var blockExtended = _objectSpread(_objectSpread({}, block), {}, {
|
|
31
|
+
htmlAttrs: htmlAttrs
|
|
32
|
+
});
|
|
34
33
|
if (CustomBlock) {
|
|
35
34
|
return /*#__PURE__*/_react.default.createElement(CustomBlock, {
|
|
36
35
|
block: blockExtended
|
|
@@ -45,7 +44,7 @@ function Block(_ref) {
|
|
|
45
44
|
if (innerContent.length === 1 && (innerContent[0] === '\n' || innerContent[0].substring(0, 2) === '</')) {
|
|
46
45
|
return null;
|
|
47
46
|
}
|
|
48
|
-
|
|
47
|
+
var node = (0, _innerNode.default)(innerBlocks, innerContent);
|
|
49
48
|
if (node) {
|
|
50
49
|
return /*#__PURE__*/_react.default.createElement(_Tree.default, {
|
|
51
50
|
node: node,
|
|
@@ -9,23 +9,21 @@ exports.useComponentContext = useComponentContext;
|
|
|
9
9
|
exports.useTagComponent = useTagComponent;
|
|
10
10
|
var _react = require("react");
|
|
11
11
|
var _elements = require("../elements");
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
Provider
|
|
15
|
-
} = TxContext;
|
|
12
|
+
var TxContext = /*#__PURE__*/(0, _react.createContext)();
|
|
13
|
+
var Provider = TxContext.Provider;
|
|
16
14
|
exports.Provider = Provider;
|
|
17
15
|
function useComponentContext() {
|
|
18
16
|
return (0, _react.useContext)(TxContext);
|
|
19
17
|
}
|
|
20
18
|
function useBlockComponent(name) {
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
19
|
+
var _useContext = (0, _react.useContext)(TxContext),
|
|
20
|
+
_useContext$CustomBlo = _useContext.CustomBlocks,
|
|
21
|
+
CustomBlocks = _useContext$CustomBlo === void 0 ? _elements.coreBlocks : _useContext$CustomBlo;
|
|
24
22
|
return name && CustomBlocks[name];
|
|
25
23
|
}
|
|
26
24
|
function useTagComponent(tag) {
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
25
|
+
var _useContext2 = (0, _react.useContext)(TxContext),
|
|
26
|
+
_useContext2$CustomTa = _useContext2.CustomTags,
|
|
27
|
+
CustomTags = _useContext2$CustomTa === void 0 ? _elements.coreTags : _useContext2$CustomTa;
|
|
30
28
|
return tag && CustomTags[tag];
|
|
31
29
|
}
|
package/dist/components/Tree.js
CHANGED
|
@@ -11,20 +11,20 @@ var _attribsProps = _interopRequireDefault(require("../utils/attribsProps"));
|
|
|
11
11
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
12
12
|
function Tree(_ref) {
|
|
13
13
|
var _node$children2;
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
} = _ref;
|
|
18
|
-
const CustomTag = (0, _Context.useTagComponent)(node.name);
|
|
14
|
+
var node = _ref.node,
|
|
15
|
+
block = _ref.block;
|
|
16
|
+
var CustomTag = (0, _Context.useTagComponent)(node.name);
|
|
19
17
|
(0, _attribsProps.default)(node.attribs);
|
|
20
18
|
if (node.type === 'text') {
|
|
21
19
|
if (node.data === '[innerBlocks]') {
|
|
22
20
|
var _block$innerBlocks;
|
|
23
21
|
// eslint-disable-next-line react/no-array-index-key
|
|
24
|
-
return (_block$innerBlocks = block.innerBlocks) === null || _block$innerBlocks === void 0 ? void 0 : _block$innerBlocks.map((inner, index)
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
22
|
+
return (_block$innerBlocks = block.innerBlocks) === null || _block$innerBlocks === void 0 ? void 0 : _block$innerBlocks.map(function (inner, index) {
|
|
23
|
+
return /*#__PURE__*/_react.default.createElement(_Block.default, {
|
|
24
|
+
block: inner,
|
|
25
|
+
key: index
|
|
26
|
+
});
|
|
27
|
+
});
|
|
28
28
|
}
|
|
29
29
|
return node.data;
|
|
30
30
|
}
|
|
@@ -32,27 +32,33 @@ function Tree(_ref) {
|
|
|
32
32
|
// Handle selfclosed elements (???)
|
|
33
33
|
if (CustomTag) {
|
|
34
34
|
var _node$children;
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
35
|
+
var tagChildren = (_node$children = node.children) === null || _node$children === void 0 ? void 0 : _node$children.map(function (child, index) {
|
|
36
|
+
return (
|
|
37
|
+
/*#__PURE__*/
|
|
38
|
+
// eslint-disable-next-line react/no-array-index-key
|
|
39
|
+
_react.default.createElement(Tree, {
|
|
40
|
+
node: child,
|
|
41
|
+
block: block,
|
|
42
|
+
key: index
|
|
43
|
+
})
|
|
44
|
+
);
|
|
45
|
+
});
|
|
43
46
|
return /*#__PURE__*/_react.default.createElement(CustomTag, {
|
|
44
47
|
node: tagChildren,
|
|
45
48
|
attribs: node.attribs
|
|
46
49
|
});
|
|
47
50
|
}
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
return /*#__PURE__*/_react.default.createElement(Component, attrs, (_node$children2 = node.children) === null || _node$children2 === void 0 ? void 0 : _node$children2.map((child, index)
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
51
|
+
var Component = node.name;
|
|
52
|
+
var attrs = (0, _attribsProps.default)(node.attribs);
|
|
53
|
+
return /*#__PURE__*/_react.default.createElement(Component, attrs, (_node$children2 = node.children) === null || _node$children2 === void 0 ? void 0 : _node$children2.map(function (child, index) {
|
|
54
|
+
return (
|
|
55
|
+
/*#__PURE__*/
|
|
56
|
+
// eslint-disable-next-line react/no-array-index-key
|
|
57
|
+
_react.default.createElement(Tree, {
|
|
58
|
+
node: child,
|
|
59
|
+
block: block,
|
|
60
|
+
key: index
|
|
61
|
+
})
|
|
62
|
+
);
|
|
63
|
+
}));
|
|
58
64
|
}
|
package/dist/elements/index.js
CHANGED
|
@@ -8,37 +8,32 @@ var _react = _interopRequireDefault(require("react"));
|
|
|
8
8
|
var _img = _interopRequireDefault(require("./tags/img"));
|
|
9
9
|
var _selfClosing = _interopRequireDefault(require("./tags/selfClosing"));
|
|
10
10
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
11
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
12
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
13
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
14
|
+
var coreTags = {
|
|
15
|
+
img: function img(_ref) {
|
|
16
|
+
var attribs = _ref.attribs;
|
|
16
17
|
return /*#__PURE__*/_react.default.createElement(_img.default, {
|
|
17
18
|
attribs: attribs
|
|
18
19
|
});
|
|
19
20
|
},
|
|
20
|
-
br: _ref2
|
|
21
|
-
|
|
22
|
-
attribs
|
|
23
|
-
} = _ref2;
|
|
21
|
+
br: function br(_ref2) {
|
|
22
|
+
var attribs = _ref2.attribs;
|
|
24
23
|
return /*#__PURE__*/_react.default.createElement(_selfClosing.default, {
|
|
25
24
|
attribs: attribs,
|
|
26
25
|
tag: "br"
|
|
27
26
|
});
|
|
28
27
|
},
|
|
29
|
-
hr: _ref3
|
|
30
|
-
|
|
31
|
-
attribs
|
|
32
|
-
} = _ref3;
|
|
28
|
+
hr: function hr(_ref3) {
|
|
29
|
+
var attribs = _ref3.attribs;
|
|
33
30
|
return /*#__PURE__*/_react.default.createElement(_selfClosing.default, {
|
|
34
31
|
attribs: attribs,
|
|
35
32
|
tag: "hr"
|
|
36
33
|
});
|
|
37
34
|
},
|
|
38
|
-
meta: _ref4
|
|
39
|
-
|
|
40
|
-
attribs
|
|
41
|
-
} = _ref4;
|
|
35
|
+
meta: function meta(_ref4) {
|
|
36
|
+
var attribs = _ref4.attribs;
|
|
42
37
|
return null;
|
|
43
38
|
}
|
|
44
39
|
// area: ({attribs}) => <SelfClosing attribs={attribs} tag="area" />,
|
|
@@ -53,7 +48,8 @@ const coreTags = exports.coreTags = {
|
|
|
53
48
|
// track: ({attribs}) => <SelfClosing attribs={attribs} tag="track" />,
|
|
54
49
|
// wbr: ({attribs}) => <SelfClosing attribs={attribs} tag="wbr" />,
|
|
55
50
|
};
|
|
56
|
-
|
|
51
|
+
exports.coreTags = coreTags;
|
|
52
|
+
var coreBlocks = {
|
|
57
53
|
// 'core/archives': ({ block }) => doSomething(),
|
|
58
54
|
// 'core/audio': ({ block }) => doSomething(),
|
|
59
55
|
// 'core/avatar': ({ block }) => doSomething(),
|
|
@@ -155,12 +151,10 @@ const coreBlocks = exports.coreBlocks = {
|
|
|
155
151
|
* @param {object} tags - Optional object with custom blocks definitions. Empty by default.
|
|
156
152
|
* @returns {object} Object with blocks definitions
|
|
157
153
|
*/
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
...tags
|
|
163
|
-
};
|
|
154
|
+
exports.coreBlocks = coreBlocks;
|
|
155
|
+
var customTags = function customTags() {
|
|
156
|
+
var tags = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
157
|
+
return _objectSpread(_objectSpread({}, coreTags), tags);
|
|
164
158
|
};
|
|
165
159
|
|
|
166
160
|
/**
|
|
@@ -171,11 +165,8 @@ const customTags = function () {
|
|
|
171
165
|
* @returns {object} Object with blocks definitions
|
|
172
166
|
*/
|
|
173
167
|
exports.customTags = customTags;
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
return {
|
|
177
|
-
...coreBlocks,
|
|
178
|
-
...blocks
|
|
179
|
-
};
|
|
168
|
+
var customBlocks = function customBlocks() {
|
|
169
|
+
var blocks = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
170
|
+
return _objectSpread(_objectSpread({}, coreBlocks), blocks);
|
|
180
171
|
};
|
|
181
172
|
exports.customBlocks = customBlocks;
|
|
@@ -5,16 +5,14 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = Image;
|
|
7
7
|
function Image(_ref) {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
width
|
|
17
|
-
} = attribs;
|
|
8
|
+
var attribs = _ref.attribs;
|
|
9
|
+
var _attribs$alt = attribs.alt,
|
|
10
|
+
alt = _attribs$alt === void 0 ? '' : _attribs$alt,
|
|
11
|
+
_attribs$class = attribs.class,
|
|
12
|
+
className = _attribs$class === void 0 ? '' : _attribs$class,
|
|
13
|
+
src = attribs.src,
|
|
14
|
+
height = attribs.height,
|
|
15
|
+
width = attribs.width;
|
|
18
16
|
return /*#__PURE__*/React.createElement("img", {
|
|
19
17
|
alt: alt,
|
|
20
18
|
className: className,
|
|
@@ -7,11 +7,9 @@ exports.default = SelfClosing;
|
|
|
7
7
|
var _attribsProps = _interopRequireDefault(require("../../utils/attribsProps"));
|
|
8
8
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
9
9
|
function SelfClosing(_ref) {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
const Component = tag;
|
|
15
|
-
const attributes = (0, _attribsProps.default)(attribs);
|
|
10
|
+
var attribs = _ref.attribs,
|
|
11
|
+
tag = _ref.tag;
|
|
12
|
+
var Component = tag;
|
|
13
|
+
var attributes = (0, _attribsProps.default)(attribs);
|
|
16
14
|
return /*#__PURE__*/React.createElement(Component, attributes);
|
|
17
15
|
}
|
package/dist/index.js
CHANGED
|
@@ -5,49 +5,49 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
Object.defineProperty(exports, "Block", {
|
|
7
7
|
enumerable: true,
|
|
8
|
-
get: function () {
|
|
8
|
+
get: function get() {
|
|
9
9
|
return _Block.default;
|
|
10
10
|
}
|
|
11
11
|
});
|
|
12
12
|
Object.defineProperty(exports, "Provider", {
|
|
13
13
|
enumerable: true,
|
|
14
|
-
get: function () {
|
|
14
|
+
get: function get() {
|
|
15
15
|
return _Context.Provider;
|
|
16
16
|
}
|
|
17
17
|
});
|
|
18
18
|
Object.defineProperty(exports, "Tree", {
|
|
19
19
|
enumerable: true,
|
|
20
|
-
get: function () {
|
|
20
|
+
get: function get() {
|
|
21
21
|
return _Tree.default;
|
|
22
22
|
}
|
|
23
23
|
});
|
|
24
24
|
Object.defineProperty(exports, "attribsProps", {
|
|
25
25
|
enumerable: true,
|
|
26
|
-
get: function () {
|
|
26
|
+
get: function get() {
|
|
27
27
|
return _attribsProps.default;
|
|
28
28
|
}
|
|
29
29
|
});
|
|
30
30
|
Object.defineProperty(exports, "customBlocks", {
|
|
31
31
|
enumerable: true,
|
|
32
|
-
get: function () {
|
|
32
|
+
get: function get() {
|
|
33
33
|
return _elements.customBlocks;
|
|
34
34
|
}
|
|
35
35
|
});
|
|
36
36
|
Object.defineProperty(exports, "customTags", {
|
|
37
37
|
enumerable: true,
|
|
38
|
-
get: function () {
|
|
38
|
+
get: function get() {
|
|
39
39
|
return _elements.customTags;
|
|
40
40
|
}
|
|
41
41
|
});
|
|
42
42
|
Object.defineProperty(exports, "innerNode", {
|
|
43
43
|
enumerable: true,
|
|
44
|
-
get: function () {
|
|
44
|
+
get: function get() {
|
|
45
45
|
return _innerNode.default;
|
|
46
46
|
}
|
|
47
47
|
});
|
|
48
48
|
Object.defineProperty(exports, "parseBlocks", {
|
|
49
49
|
enumerable: true,
|
|
50
|
-
get: function () {
|
|
50
|
+
get: function get() {
|
|
51
51
|
return _parseBlocks.default;
|
|
52
52
|
}
|
|
53
53
|
});
|
|
@@ -7,11 +7,11 @@ exports.default = void 0;
|
|
|
7
7
|
var _reactAttrConverter = _interopRequireDefault(require("react-attr-converter"));
|
|
8
8
|
var _styleToJs = _interopRequireDefault(require("style-to-js"));
|
|
9
9
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
10
|
-
|
|
10
|
+
var attribsProps = function attribsProps(attribs) {
|
|
11
11
|
if (attribs === undefined) {
|
|
12
12
|
return {};
|
|
13
13
|
}
|
|
14
|
-
|
|
14
|
+
var props = Object.fromEntries(Object.entries(attribs).map(function (attribute) {
|
|
15
15
|
if (attribute[0] === 'style') {
|
|
16
16
|
return [(0, _reactAttrConverter.default)(attribute[0]), (0, _styleToJs.default)(attribute[1])];
|
|
17
17
|
}
|
|
@@ -19,4 +19,5 @@ const attribsProps = attribs => {
|
|
|
19
19
|
}));
|
|
20
20
|
return props;
|
|
21
21
|
};
|
|
22
|
-
var _default =
|
|
22
|
+
var _default = attribsProps;
|
|
23
|
+
exports.default = _default;
|
|
@@ -7,15 +7,15 @@ exports.default = void 0;
|
|
|
7
7
|
var _htmlparser = require("htmlparser2");
|
|
8
8
|
var _attribsProps2 = _interopRequireDefault(require("./attribsProps"));
|
|
9
9
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
10
|
-
|
|
11
|
-
|
|
10
|
+
var htmlAttribs = function htmlAttribs(html) {
|
|
11
|
+
var htmlFragment = html === null || html === void 0 ? void 0 : html.trim();
|
|
12
12
|
if (htmlFragment && htmlFragment.length > 1) {
|
|
13
13
|
var _parsedFragment$child;
|
|
14
|
-
|
|
14
|
+
var parsedFragment = (0, _htmlparser.parseDocument)(htmlFragment, {
|
|
15
15
|
lowerCaseTags: true,
|
|
16
16
|
recognizeSelfClosing: true
|
|
17
17
|
});
|
|
18
|
-
|
|
18
|
+
var attribs = parsedFragment === null || parsedFragment === void 0 ? void 0 : (_parsedFragment$child = parsedFragment.children[0]) === null || _parsedFragment$child === void 0 ? void 0 : _parsedFragment$child.attribs;
|
|
19
19
|
if (Object.keys(attribs).length !== 0) {
|
|
20
20
|
var _attribsProps;
|
|
21
21
|
return (_attribsProps = (0, _attribsProps2.default)(attribs)) !== null && _attribsProps !== void 0 ? _attribsProps : {};
|
|
@@ -23,4 +23,5 @@ const htmlAttribs = html => {
|
|
|
23
23
|
}
|
|
24
24
|
return {};
|
|
25
25
|
};
|
|
26
|
-
var _default =
|
|
26
|
+
var _default = htmlAttribs;
|
|
27
|
+
exports.default = _default;
|
package/dist/utils/innerNode.js
CHANGED
|
@@ -5,16 +5,17 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
7
|
var _htmlparser = require("htmlparser2");
|
|
8
|
-
|
|
8
|
+
var innerNode = function innerNode(innerBlocks, innerContent) {
|
|
9
9
|
var _tree$children$;
|
|
10
10
|
// If no inner blocks, return the block markup.
|
|
11
11
|
// If inner blocks, return the wrapping markup.
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
12
|
+
var innerHtml = !innerBlocks.length ? innerContent[0] : "".concat(innerContent[0], "[innerBlocks]").concat(innerContent[innerContent.length - 1]);
|
|
13
|
+
var html = innerHtml ? innerHtml.trim() : '';
|
|
14
|
+
var tree = (0, _htmlparser.parseDocument)(html, {
|
|
15
15
|
lowerCaseTags: true,
|
|
16
16
|
recognizeSelfClosing: true
|
|
17
17
|
});
|
|
18
18
|
return (_tree$children$ = tree.children[0]) !== null && _tree$children$ !== void 0 ? _tree$children$ : null;
|
|
19
19
|
};
|
|
20
|
-
var _default =
|
|
20
|
+
var _default = innerNode;
|
|
21
|
+
exports.default = _default;
|
|
@@ -13,8 +13,13 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
|
13
13
|
* @param {string} html - markup rendered by Gutenberg editor.
|
|
14
14
|
* @returns {JSX.Element[]}
|
|
15
15
|
*/
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
16
|
+
var parseBlocks = function parseBlocks(html) {
|
|
17
|
+
return (0, _blockSerializationDefaultParser.parse)(html.trim()).map(function (block, key) {
|
|
18
|
+
return /*#__PURE__*/React.createElement(_Block.default, {
|
|
19
|
+
block: block,
|
|
20
|
+
key: key
|
|
21
|
+
});
|
|
22
|
+
});
|
|
23
|
+
};
|
|
24
|
+
var _default = parseBlocks;
|
|
25
|
+
exports.default = _default;
|
package/package.json
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
{
|
|
2
|
-
"$schema": "https://json-schema.org/package.json",
|
|
3
2
|
"name": "@frontkom/block-react-parser",
|
|
4
|
-
"version": "1.1.0-beta.
|
|
3
|
+
"version": "1.1.0-beta.2",
|
|
5
4
|
"description": "Gutenberg-generated HTML to React parser.",
|
|
6
5
|
"main": "dist/index.js",
|
|
7
6
|
"module": "dist/index.js",
|
|
8
7
|
"scripts": {
|
|
9
|
-
"build": "rm -rf dist && NODE_ENV=production babel src --out-dir dist --copy-files"
|
|
8
|
+
"build": "rm -rf dist && NODE_ENV=production babel src --out-dir dist --copy-files",
|
|
9
|
+
"format": "prettier --write \"**/*.{js,jsx,md}\"",
|
|
10
|
+
"lint": "eslint --quiet src/"
|
|
10
11
|
},
|
|
11
12
|
"keywords": [
|
|
12
13
|
"html",
|
|
@@ -15,12 +16,6 @@
|
|
|
15
16
|
"gutenberg"
|
|
16
17
|
],
|
|
17
18
|
"author": "Roberto Ornelas <rob@frontkom.com>",
|
|
18
|
-
"contributors": [
|
|
19
|
-
{
|
|
20
|
-
"name": "Krzysztof Branecki",
|
|
21
|
-
"email": "krzysztof.branecki@frontkom.com"
|
|
22
|
-
}
|
|
23
|
-
],
|
|
24
19
|
"license": "ISC",
|
|
25
20
|
"dependencies": {
|
|
26
21
|
"@wordpress/block-serialization-default-parser": "^4.21.0",
|
|
@@ -33,12 +28,21 @@
|
|
|
33
28
|
"@babel/core": "^7.20.2",
|
|
34
29
|
"@babel/preset-env": "^7.20.2",
|
|
35
30
|
"@babel/preset-react": "^7.18.6",
|
|
31
|
+
"eslint": "^8.31.0",
|
|
32
|
+
"eslint-config-airbnb": "^19.0.4",
|
|
33
|
+
"eslint-config-prettier": "^8.6.0",
|
|
34
|
+
"eslint-plugin-import": "^2.27.4",
|
|
35
|
+
"eslint-plugin-jsx-a11y": "^6.7.1",
|
|
36
|
+
"eslint-plugin-prettier": "^4.2.1",
|
|
37
|
+
"eslint-plugin-react": "^7.32.0",
|
|
38
|
+
"eslint-plugin-react-hooks": "^4.6.0",
|
|
39
|
+
"prettier": "^2.8.2",
|
|
36
40
|
"react": "^17.0.2",
|
|
37
41
|
"react-dom": "^17.0.2"
|
|
38
42
|
},
|
|
39
43
|
"peerDependencies": {
|
|
40
|
-
"react": "^17.0.2",
|
|
41
|
-
"react-dom": "^17.0.2"
|
|
44
|
+
"react": "^17.0.2 || ^18.0.0",
|
|
45
|
+
"react-dom": "^17.0.2 || ^18.0.0"
|
|
42
46
|
},
|
|
43
47
|
"babel": {
|
|
44
48
|
"presets": [
|