@builder.io/react 8.0.6-1 → 8.0.6-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/dist/builder-react-lite.cjs.js +2 -0
- package/dist/builder-react-lite.cjs.js.map +1 -0
- package/dist/builder-react-lite.esm.js +2 -0
- package/dist/builder-react-lite.esm.js.map +1 -0
- package/dist/builder-react.browser.js +11 -0
- package/dist/builder-react.browser.js.map +1 -0
- package/dist/builder-react.cjs.js +2 -0
- package/dist/builder-react.cjs.js.map +1 -0
- package/dist/builder-react.es5.js +2 -0
- package/dist/builder-react.es5.js.map +1 -0
- package/dist/builder-react.unpkg.js +11 -0
- package/dist/builder-react.unpkg.js.map +1 -0
- package/dist/lib/lib/on-change.js +228 -0
- package/dist/lib/lib/on-change.js.map +1 -0
- package/dist/lib/package.json +110 -0
- package/dist/lib/rollup.config.js +131 -0
- package/dist/lib/rollup.config.js.map +1 -0
- package/dist/lib/src/blocks/Button.js +86 -0
- package/dist/lib/src/blocks/Button.js.map +1 -0
- package/dist/lib/src/blocks/Columns.js +243 -0
- package/dist/lib/src/blocks/Columns.js.map +1 -0
- package/dist/lib/src/blocks/CustomCode.js +227 -0
- package/dist/lib/src/blocks/CustomCode.js.map +1 -0
- package/dist/lib/src/blocks/Embed.js +114 -0
- package/dist/lib/src/blocks/Embed.js.map +1 -0
- package/dist/lib/src/blocks/Fragment.js +45 -0
- package/dist/lib/src/blocks/Fragment.js.map +1 -0
- package/dist/lib/src/blocks/Image.js +532 -0
- package/dist/lib/src/blocks/Image.js.map +1 -0
- package/dist/lib/src/blocks/Mutation.js +93 -0
- package/dist/lib/src/blocks/Mutation.js.map +1 -0
- package/dist/lib/src/blocks/PersonalizationContainer.js +174 -0
- package/dist/lib/src/blocks/PersonalizationContainer.js.map +1 -0
- package/dist/lib/src/blocks/Router.js +354 -0
- package/dist/lib/src/blocks/Router.js.map +1 -0
- package/dist/lib/src/blocks/Section.js +150 -0
- package/dist/lib/src/blocks/Section.js.map +1 -0
- package/dist/lib/src/blocks/Slot.js +41 -0
- package/dist/lib/src/blocks/Slot.js.map +1 -0
- package/dist/lib/src/blocks/StateProvider.js +61 -0
- package/dist/lib/src/blocks/StateProvider.js.map +1 -0
- package/dist/lib/src/blocks/Symbol.js +192 -0
- package/dist/lib/src/blocks/Symbol.js.map +1 -0
- package/dist/lib/src/blocks/Text.js +132 -0
- package/dist/lib/src/blocks/Text.js.map +1 -0
- package/dist/lib/src/blocks/Video.js +261 -0
- package/dist/lib/src/blocks/Video.js.map +1 -0
- package/dist/lib/src/blocks/forms/Button.js +74 -0
- package/dist/lib/src/blocks/forms/Button.js.map +1 -0
- package/dist/lib/src/blocks/forms/Form.js +590 -0
- package/dist/lib/src/blocks/forms/Form.js.map +1 -0
- package/dist/lib/src/blocks/forms/Input.js +133 -0
- package/dist/lib/src/blocks/forms/Input.js.map +1 -0
- package/dist/lib/src/blocks/forms/Label.js +81 -0
- package/dist/lib/src/blocks/forms/Label.js.map +1 -0
- package/dist/lib/src/blocks/forms/Select.js +104 -0
- package/dist/lib/src/blocks/forms/Select.js.map +1 -0
- package/dist/lib/src/blocks/forms/TextArea.js +89 -0
- package/dist/lib/src/blocks/forms/TextArea.js.map +1 -0
- package/dist/lib/src/blocks/raw/Img.js +66 -0
- package/dist/lib/src/blocks/raw/Img.js.map +1 -0
- package/dist/lib/src/blocks/raw/RawText.js +47 -0
- package/dist/lib/src/blocks/raw/RawText.js.map +1 -0
- package/dist/lib/src/builder-react-lite.js +31 -0
- package/dist/lib/src/builder-react-lite.js.map +1 -0
- package/dist/lib/src/builder-react.js +106 -0
- package/dist/lib/src/builder-react.js.map +1 -0
- package/dist/lib/src/components/Link.js +35 -0
- package/dist/lib/src/components/Link.js.map +1 -0
- package/dist/lib/src/components/builder-block.component.js +556 -0
- package/dist/lib/src/components/builder-block.component.js.map +1 -0
- package/dist/lib/src/components/builder-blocks.component.js +167 -0
- package/dist/lib/src/components/builder-blocks.component.js.map +1 -0
- package/dist/lib/src/components/builder-component.component.js +1126 -0
- package/dist/lib/src/components/builder-component.component.js.map +1 -0
- package/dist/lib/src/components/builder-content.component.js +321 -0
- package/dist/lib/src/components/builder-content.component.js.map +1 -0
- package/dist/lib/src/components/insert-spacer.component.js +106 -0
- package/dist/lib/src/components/insert-spacer.component.js.map +1 -0
- package/dist/lib/src/components/no-wrap.js +7 -0
- package/dist/lib/src/components/no-wrap.js.map +1 -0
- package/dist/lib/src/components/variants-provider.component.js +108 -0
- package/dist/lib/src/components/variants-provider.component.js.map +1 -0
- package/dist/lib/src/constants/device-sizes.constant.js +91 -0
- package/dist/lib/src/constants/device-sizes.constant.js.map +1 -0
- package/dist/lib/src/constants/file-types.constant.js +72 -0
- package/dist/lib/src/constants/file-types.constant.js.map +1 -0
- package/dist/lib/src/decorators/builder-block.decorator.js +10 -0
- package/dist/lib/src/decorators/builder-block.decorator.js.map +1 -0
- package/dist/lib/src/functions/apply-patch-with-mutation.js +80 -0
- package/dist/lib/src/functions/apply-patch-with-mutation.js.map +1 -0
- package/dist/lib/src/functions/apply-patch-with-mutation.test.js +54 -0
- package/dist/lib/src/functions/apply-patch-with-mutation.test.js.map +1 -0
- package/dist/lib/src/functions/block-to-html-string.js +21 -0
- package/dist/lib/src/functions/block-to-html-string.js.map +1 -0
- package/dist/lib/src/functions/debonce-next-tick.js +43 -0
- package/dist/lib/src/functions/debonce-next-tick.js.map +1 -0
- package/dist/lib/src/functions/extract-localized-values.js +35 -0
- package/dist/lib/src/functions/extract-localized-values.js.map +1 -0
- package/dist/lib/src/functions/filter-with-custom-targeting.js +88 -0
- package/dist/lib/src/functions/filter-with-custom-targeting.js.map +1 -0
- package/dist/lib/src/functions/get-builder-pixel.js +27 -0
- package/dist/lib/src/functions/get-builder-pixel.js.map +1 -0
- package/dist/lib/src/functions/get.js +12 -0
- package/dist/lib/src/functions/get.js.map +1 -0
- package/dist/lib/src/functions/is-debug.js +8 -0
- package/dist/lib/src/functions/is-debug.js.map +1 -0
- package/dist/lib/src/functions/no-wrap.js +60 -0
- package/dist/lib/src/functions/no-wrap.js.map +1 -0
- package/dist/lib/src/functions/safe-dynamic-require.js +51 -0
- package/dist/lib/src/functions/safe-dynamic-require.js.map +1 -0
- package/dist/lib/src/functions/set.js +21 -0
- package/dist/lib/src/functions/set.js.map +1 -0
- package/dist/lib/src/functions/should-force-browser-runtime-in-node.js +22 -0
- package/dist/lib/src/functions/should-force-browser-runtime-in-node.js.map +1 -0
- package/dist/lib/src/functions/string-to-function.js +166 -0
- package/dist/lib/src/functions/string-to-function.js.map +1 -0
- package/dist/lib/src/functions/throttle.js +42 -0
- package/dist/lib/src/functions/throttle.js.map +1 -0
- package/dist/lib/src/functions/traverse.js +72 -0
- package/dist/lib/src/functions/traverse.js.map +1 -0
- package/dist/lib/src/functions/try-eval.js +75 -0
- package/dist/lib/src/functions/try-eval.js.map +1 -0
- package/dist/lib/src/functions/update-metadata.js +42 -0
- package/dist/lib/src/functions/update-metadata.js.map +1 -0
- package/dist/lib/src/functions/utils.js +20 -0
- package/dist/lib/src/functions/utils.js.map +1 -0
- package/dist/lib/src/functions/with-builder.js +10 -0
- package/dist/lib/src/functions/with-builder.js.map +1 -0
- package/dist/lib/src/functions/with-children.js +77 -0
- package/dist/lib/src/functions/with-children.js.map +1 -0
- package/dist/lib/src/hooks/useIsPreviewing.js +16 -0
- package/dist/lib/src/hooks/useIsPreviewing.js.map +1 -0
- package/dist/lib/src/scripts/init-editing.js +18 -0
- package/dist/lib/src/scripts/init-editing.js.map +1 -0
- package/dist/lib/src/sdk-version.js +5 -0
- package/dist/lib/src/sdk-version.js.map +1 -0
- package/dist/lib/src/store/builder-async-requests.js +19 -0
- package/dist/lib/src/store/builder-async-requests.js.map +1 -0
- package/dist/lib/src/store/builder-meta.js +13 -0
- package/dist/lib/src/store/builder-meta.js.map +1 -0
- package/dist/lib/src/store/builder-store.js +15 -0
- package/dist/lib/src/store/builder-store.js.map +1 -0
- package/dist/lib/src/to-error.js +22 -0
- package/dist/lib/src/to-error.js.map +1 -0
- package/dist/lib/test/basic.test.js +212 -0
- package/dist/lib/test/basic.test.js.map +1 -0
- package/dist/lib/test/functions/render-block.js +24 -0
- package/dist/lib/test/functions/render-block.js.map +1 -0
- package/dist/lib/test/image.test.js +107 -0
- package/dist/lib/test/image.test.js.map +1 -0
- package/dist/lib/test/setupTests.js +8 -0
- package/dist/lib/test/setupTests.js.map +1 -0
- package/dist/types/lib/on-change.d.ts +8 -0
- package/dist/types/rollup.config.d.ts +44 -0
- package/dist/types/src/blocks/Button.d.ts +7 -0
- package/dist/types/src/blocks/Columns.d.ts +1 -0
- package/dist/types/src/blocks/CustomCode.d.ts +1 -0
- package/dist/types/src/blocks/Embed.d.ts +1 -0
- package/dist/types/src/blocks/Fragment.d.ts +5 -0
- package/dist/types/src/blocks/Image.d.ts +6 -0
- package/dist/types/src/blocks/Mutation.d.ts +8 -0
- package/dist/types/src/blocks/PersonalizationContainer.d.ts +19 -0
- package/dist/types/src/blocks/Router.d.ts +32 -0
- package/dist/types/src/blocks/Section.d.ts +1 -0
- package/dist/types/src/blocks/Slot.d.ts +5 -0
- package/dist/types/src/blocks/StateProvider.d.ts +1 -0
- package/dist/types/src/blocks/Symbol.d.ts +19 -0
- package/dist/types/src/blocks/Text.d.ts +6 -0
- package/dist/types/src/blocks/Video.d.ts +1 -0
- package/dist/types/src/blocks/forms/Button.d.ts +5 -0
- package/dist/types/src/blocks/forms/Form.d.ts +24 -0
- package/dist/types/src/blocks/forms/Input.d.ts +10 -0
- package/dist/types/src/blocks/forms/Label.d.ts +8 -0
- package/dist/types/src/blocks/forms/Select.d.ts +12 -0
- package/dist/types/src/blocks/forms/TextArea.d.ts +9 -0
- package/dist/types/src/blocks/raw/Img.d.ts +7 -0
- package/dist/types/src/blocks/raw/RawText.d.ts +8 -0
- package/dist/types/src/builder-react-lite.d.ts +17 -0
- package/dist/types/src/builder-react.d.ts +45 -0
- package/dist/types/src/components/Link.d.ts +9 -0
- package/dist/types/src/components/builder-block.component.d.ts +50 -0
- package/dist/types/src/components/builder-blocks.component.d.ts +29 -0
- package/dist/types/src/components/builder-component.component.d.ts +324 -0
- package/dist/types/src/components/builder-content.component.d.ts +271 -0
- package/dist/types/src/components/insert-spacer.component.d.ts +13 -0
- package/dist/types/src/components/no-wrap.d.ts +2 -0
- package/dist/types/src/components/variants-provider.component.d.ts +8 -0
- package/dist/types/src/constants/device-sizes.constant.d.ts +57 -0
- package/dist/types/src/constants/file-types.constant.d.ts +2 -0
- package/dist/types/src/decorators/builder-block.decorator.d.ts +5 -0
- package/dist/types/src/functions/apply-patch-with-mutation.d.ts +5 -0
- package/dist/types/src/functions/apply-patch-with-mutation.test.d.ts +1 -0
- package/dist/types/src/functions/block-to-html-string.d.ts +3 -0
- package/dist/types/src/functions/debonce-next-tick.d.ts +2 -0
- package/dist/types/src/functions/extract-localized-values.d.ts +2 -0
- package/dist/types/src/functions/filter-with-custom-targeting.d.ts +15 -0
- package/dist/types/src/functions/get-builder-pixel.d.ts +2 -0
- package/dist/types/src/functions/get.d.ts +1 -0
- package/dist/types/src/functions/is-debug.d.ts +1 -0
- package/dist/types/src/functions/no-wrap.d.ts +33 -0
- package/dist/types/src/functions/safe-dynamic-require.d.ts +3 -0
- package/dist/types/src/functions/set.d.ts +1 -0
- package/dist/types/src/functions/should-force-browser-runtime-in-node.d.ts +1 -0
- package/dist/types/src/functions/string-to-function.d.ts +7 -0
- package/dist/types/src/functions/throttle.d.ts +1 -0
- package/dist/types/src/functions/traverse.d.ts +34 -0
- package/dist/types/src/functions/try-eval.d.ts +1 -0
- package/dist/types/src/functions/update-metadata.d.ts +17 -0
- package/dist/types/src/functions/utils.d.ts +2 -0
- package/dist/types/src/functions/with-builder.d.ts +2 -0
- package/dist/types/src/functions/with-children.d.ts +29 -0
- package/dist/types/src/hooks/useIsPreviewing.d.ts +1 -0
- package/dist/types/src/scripts/init-editing.d.ts +1 -0
- package/dist/types/src/sdk-version.d.ts +1 -0
- package/dist/types/src/store/builder-async-requests.d.ts +13 -0
- package/dist/types/src/store/builder-meta.d.ts +6 -0
- package/dist/types/src/store/builder-store.d.ts +10 -0
- package/dist/types/src/to-error.d.ts +13 -0
- package/dist/types/test/basic.test.d.ts +4 -0
- package/dist/types/test/functions/render-block.d.ts +3 -0
- package/dist/types/test/image.test.d.ts +1 -0
- package/dist/types/test/setupTests.d.ts +0 -0
- package/package.json +1 -1
|
@@ -0,0 +1,243 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __extends = (this && this.__extends) || (function () {
|
|
3
|
+
var extendStatics = function (d, b) {
|
|
4
|
+
extendStatics = Object.setPrototypeOf ||
|
|
5
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
+
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
7
|
+
return extendStatics(d, b);
|
|
8
|
+
};
|
|
9
|
+
return function (d, b) {
|
|
10
|
+
if (typeof b !== "function" && b !== null)
|
|
11
|
+
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
12
|
+
extendStatics(d, b);
|
|
13
|
+
function __() { this.constructor = d; }
|
|
14
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
15
|
+
};
|
|
16
|
+
})();
|
|
17
|
+
var __assign = (this && this.__assign) || function () {
|
|
18
|
+
__assign = Object.assign || function(t) {
|
|
19
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
20
|
+
s = arguments[i];
|
|
21
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
22
|
+
t[p] = s[p];
|
|
23
|
+
}
|
|
24
|
+
return t;
|
|
25
|
+
};
|
|
26
|
+
return __assign.apply(this, arguments);
|
|
27
|
+
};
|
|
28
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
29
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
30
|
+
};
|
|
31
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
32
|
+
exports.Columns = void 0;
|
|
33
|
+
/** @jsx jsx */
|
|
34
|
+
var core_1 = require("@emotion/core");
|
|
35
|
+
var react_1 = __importDefault(require("react"));
|
|
36
|
+
var builder_blocks_component_1 = require("../components/builder-blocks.component");
|
|
37
|
+
var with_builder_1 = require("../functions/with-builder");
|
|
38
|
+
var Link_1 = require("../components/Link");
|
|
39
|
+
var device_sizes_constant_1 = require("../constants/device-sizes.constant");
|
|
40
|
+
var DEFAULT_ASPECT_RATIO = 0.7004048582995948;
|
|
41
|
+
var defaultBlocks = [
|
|
42
|
+
{
|
|
43
|
+
'@type': '@builder.io/sdk:Element',
|
|
44
|
+
responsiveStyles: {
|
|
45
|
+
large: {
|
|
46
|
+
display: 'flex',
|
|
47
|
+
flexDirection: 'column',
|
|
48
|
+
alignItems: 'stretch',
|
|
49
|
+
flexShrink: '0',
|
|
50
|
+
position: 'relative',
|
|
51
|
+
marginTop: '30px',
|
|
52
|
+
textAlign: 'center',
|
|
53
|
+
lineHeight: 'normal',
|
|
54
|
+
height: 'auto',
|
|
55
|
+
minHeight: '20px',
|
|
56
|
+
minWidth: '20px',
|
|
57
|
+
overflow: 'hidden',
|
|
58
|
+
},
|
|
59
|
+
},
|
|
60
|
+
component: {
|
|
61
|
+
name: 'Image',
|
|
62
|
+
options: {
|
|
63
|
+
image: 'https://builder.io/api/v1/image/assets%2Fpwgjf0RoYWbdnJSbpBAjXNRMe9F2%2Ffb27a7c790324294af8be1c35fe30f4d',
|
|
64
|
+
backgroundPosition: 'center',
|
|
65
|
+
backgroundSize: 'cover',
|
|
66
|
+
aspectRatio: DEFAULT_ASPECT_RATIO,
|
|
67
|
+
},
|
|
68
|
+
},
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
'@type': '@builder.io/sdk:Element',
|
|
72
|
+
responsiveStyles: {
|
|
73
|
+
large: {
|
|
74
|
+
display: 'flex',
|
|
75
|
+
flexDirection: 'column',
|
|
76
|
+
alignItems: 'stretch',
|
|
77
|
+
flexShrink: '0',
|
|
78
|
+
position: 'relative',
|
|
79
|
+
marginTop: '30px',
|
|
80
|
+
textAlign: 'center',
|
|
81
|
+
lineHeight: 'normal',
|
|
82
|
+
height: 'auto',
|
|
83
|
+
},
|
|
84
|
+
},
|
|
85
|
+
component: {
|
|
86
|
+
name: 'Text',
|
|
87
|
+
options: {
|
|
88
|
+
text: '<p>Enter some text...</p>',
|
|
89
|
+
},
|
|
90
|
+
},
|
|
91
|
+
},
|
|
92
|
+
];
|
|
93
|
+
var ColumnsComponent = /** @class */ (function (_super) {
|
|
94
|
+
__extends(ColumnsComponent, _super);
|
|
95
|
+
function ColumnsComponent() {
|
|
96
|
+
return _super !== null && _super.apply(this, arguments) || this;
|
|
97
|
+
}
|
|
98
|
+
Object.defineProperty(ColumnsComponent.prototype, "columns", {
|
|
99
|
+
// TODO: Column interface
|
|
100
|
+
get: function () {
|
|
101
|
+
return this.props.columns || [];
|
|
102
|
+
},
|
|
103
|
+
enumerable: false,
|
|
104
|
+
configurable: true
|
|
105
|
+
});
|
|
106
|
+
Object.defineProperty(ColumnsComponent.prototype, "gutterSize", {
|
|
107
|
+
get: function () {
|
|
108
|
+
return typeof this.props.space === 'number' ? this.props.space || 0 : 20;
|
|
109
|
+
},
|
|
110
|
+
enumerable: false,
|
|
111
|
+
configurable: true
|
|
112
|
+
});
|
|
113
|
+
ColumnsComponent.prototype.getWidth = function (index) {
|
|
114
|
+
return (this.columns[index] && this.columns[index].width) || 100 / this.columns.length;
|
|
115
|
+
};
|
|
116
|
+
ColumnsComponent.prototype.getColumnWidth = function (index) {
|
|
117
|
+
var _a = this, columns = _a.columns, gutterSize = _a.gutterSize;
|
|
118
|
+
var width = this.getWidth(index);
|
|
119
|
+
var subtractWidth = gutterSize * (columns.length - 1) * (width / 100);
|
|
120
|
+
return "calc(".concat(width, "% - ").concat(subtractWidth, "px)");
|
|
121
|
+
};
|
|
122
|
+
ColumnsComponent.prototype.render = function () {
|
|
123
|
+
var _a;
|
|
124
|
+
var _this = this;
|
|
125
|
+
var _b, _c, _d;
|
|
126
|
+
var _e = this, columns = _e.columns, gutterSize = _e.gutterSize;
|
|
127
|
+
var contentBreakpoints = ((_d = (_c = (_b = this.props.builderState) === null || _b === void 0 ? void 0 : _b.context.builderContent) === null || _c === void 0 ? void 0 : _c.meta) === null || _d === void 0 ? void 0 : _d.breakpoints) || {};
|
|
128
|
+
var breakpointSizes = (0, device_sizes_constant_1.getSizesForBreakpoints)(contentBreakpoints);
|
|
129
|
+
return (
|
|
130
|
+
// FIXME: make more elegant
|
|
131
|
+
(0, core_1.jsx)(react_1.default.Fragment, null,
|
|
132
|
+
(0, core_1.jsx)("div", { className: "builder-columns", css: __assign({ display: 'flex' }, (this.props.stackColumnsAt !== 'never' && (_a = {},
|
|
133
|
+
_a["@media (max-width: ".concat(this.props.stackColumnsAt !== 'tablet'
|
|
134
|
+
? breakpointSizes.small.max
|
|
135
|
+
: breakpointSizes.medium.max, "px)")] = {
|
|
136
|
+
flexDirection: this.props.reverseColumnsWhenStacked ? 'column-reverse' : 'column',
|
|
137
|
+
alignItems: 'stretch',
|
|
138
|
+
},
|
|
139
|
+
_a))) }, columns.map(function (col, index) {
|
|
140
|
+
var _a, _b;
|
|
141
|
+
var TagName = col.link ? Link_1.Link : 'div';
|
|
142
|
+
// TODO: pass size down in context
|
|
143
|
+
return ((0, core_1.jsx)(react_1.default.Fragment, { key: index },
|
|
144
|
+
(0, core_1.jsx)(TagName, __assign({ className: "builder-column" }, (col.link ? { href: col.link } : null), {
|
|
145
|
+
// TODO: generate width and margin-left as CSS instead so can override with pure CSS for best responsieness
|
|
146
|
+
// and no use of !important
|
|
147
|
+
css: __assign((_a = { display: 'flex', flexDirection: 'column', alignItems: 'stretch', lineHeight: 'normal' }, _a['& > .builder-blocks'] = {
|
|
148
|
+
flexGrow: 1,
|
|
149
|
+
}, _a.width = _this.getColumnWidth(index), _a.marginLeft = index === 0 ? 0 : gutterSize, _a), (_this.props.stackColumnsAt !== 'never' && (_b = {},
|
|
150
|
+
_b["@media (max-width: ".concat(_this.props.stackColumnsAt !== 'tablet'
|
|
151
|
+
? breakpointSizes.small.max
|
|
152
|
+
: breakpointSizes.medium.max, "px)")] = {
|
|
153
|
+
width: '100%',
|
|
154
|
+
marginLeft: 0,
|
|
155
|
+
},
|
|
156
|
+
_b))) }),
|
|
157
|
+
(0, core_1.jsx)(builder_blocks_component_1.BuilderBlocks, { key: index,
|
|
158
|
+
// TODO: childOf [parentBlocks]?
|
|
159
|
+
child: true, parentElementId: _this.props.builderBlock && _this.props.builderBlock.id, blocks: col.blocks, dataPath: "component.options.columns.".concat(index, ".blocks") }))));
|
|
160
|
+
}))));
|
|
161
|
+
};
|
|
162
|
+
return ColumnsComponent;
|
|
163
|
+
}(react_1.default.Component));
|
|
164
|
+
exports.Columns = (0, with_builder_1.withBuilder)(ColumnsComponent, {
|
|
165
|
+
name: 'Columns',
|
|
166
|
+
static: true,
|
|
167
|
+
inputs: [
|
|
168
|
+
{
|
|
169
|
+
name: 'columns',
|
|
170
|
+
type: 'array',
|
|
171
|
+
broadcast: true,
|
|
172
|
+
subFields: [
|
|
173
|
+
{
|
|
174
|
+
name: 'blocks',
|
|
175
|
+
type: 'array',
|
|
176
|
+
hideFromUI: true,
|
|
177
|
+
defaultValue: defaultBlocks,
|
|
178
|
+
},
|
|
179
|
+
{
|
|
180
|
+
name: 'width',
|
|
181
|
+
type: 'number',
|
|
182
|
+
hideFromUI: true,
|
|
183
|
+
helperText: 'Width %, e.g. set to 50 to fill half of the space',
|
|
184
|
+
},
|
|
185
|
+
{
|
|
186
|
+
name: 'link',
|
|
187
|
+
type: 'url',
|
|
188
|
+
helperText: 'Optionally set a url that clicking this column will link to',
|
|
189
|
+
},
|
|
190
|
+
],
|
|
191
|
+
defaultValue: [{ blocks: defaultBlocks }, { blocks: defaultBlocks }],
|
|
192
|
+
onChange: function (options) {
|
|
193
|
+
function clearWidths() {
|
|
194
|
+
columns.forEach(function (col) {
|
|
195
|
+
col.delete('width');
|
|
196
|
+
});
|
|
197
|
+
}
|
|
198
|
+
var columns = options.get('columns');
|
|
199
|
+
if (Array.isArray(columns)) {
|
|
200
|
+
var containsColumnWithWidth = !!columns.find(function (col) { return col.get('width'); });
|
|
201
|
+
if (containsColumnWithWidth) {
|
|
202
|
+
var containsColumnWithoutWidth = !!columns.find(function (col) { return !col.get('width'); });
|
|
203
|
+
if (containsColumnWithoutWidth) {
|
|
204
|
+
clearWidths();
|
|
205
|
+
}
|
|
206
|
+
else {
|
|
207
|
+
var sumWidths = columns.reduce(function (memo, col) {
|
|
208
|
+
return memo + col.get('width');
|
|
209
|
+
}, 0);
|
|
210
|
+
var widthsDontAddUp = sumWidths !== 100;
|
|
211
|
+
if (widthsDontAddUp) {
|
|
212
|
+
clearWidths();
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
}
|
|
217
|
+
},
|
|
218
|
+
},
|
|
219
|
+
{
|
|
220
|
+
name: 'space',
|
|
221
|
+
type: 'number',
|
|
222
|
+
defaultValue: 20,
|
|
223
|
+
helperText: 'Size of gap between columns',
|
|
224
|
+
advanced: true,
|
|
225
|
+
},
|
|
226
|
+
{
|
|
227
|
+
name: 'stackColumnsAt',
|
|
228
|
+
type: 'string',
|
|
229
|
+
defaultValue: 'tablet',
|
|
230
|
+
helperText: 'Convert horizontal columns to vertical at what device size',
|
|
231
|
+
enum: ['tablet', 'mobile', 'never'],
|
|
232
|
+
advanced: true,
|
|
233
|
+
},
|
|
234
|
+
{
|
|
235
|
+
name: 'reverseColumnsWhenStacked',
|
|
236
|
+
type: 'boolean',
|
|
237
|
+
defaultValue: false,
|
|
238
|
+
helperText: 'When stacking columns for mobile devices, reverse the ordering',
|
|
239
|
+
advanced: true,
|
|
240
|
+
},
|
|
241
|
+
],
|
|
242
|
+
});
|
|
243
|
+
//# sourceMappingURL=Columns.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Columns.js","sourceRoot":"","sources":["../../../../src/blocks/Columns.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,eAAe;AACf,sCAAoC;AACpC,gDAA0B;AAG1B,mFAAuE;AACvE,0DAAwD;AACxD,2CAA0C;AAC1C,4EAAyF;AAEzF,IAAM,oBAAoB,GAAG,kBAAkB,CAAC;AAEhD,IAAM,aAAa,GAAqB;IACtC;QACE,OAAO,EAAE,yBAAyB;QAClC,gBAAgB,EAAE;YAChB,KAAK,EAAE;gBACL,OAAO,EAAE,MAAM;gBACf,aAAa,EAAE,QAAQ;gBACvB,UAAU,EAAE,SAAS;gBACrB,UAAU,EAAE,GAAG;gBACf,QAAQ,EAAE,UAAU;gBACpB,SAAS,EAAE,MAAM;gBACjB,SAAS,EAAE,QAAQ;gBACnB,UAAU,EAAE,QAAQ;gBACpB,MAAM,EAAE,MAAM;gBACd,SAAS,EAAE,MAAM;gBACjB,QAAQ,EAAE,MAAM;gBAChB,QAAQ,EAAE,QAAQ;aACnB;SACF;QACD,SAAS,EAAE;YACT,IAAI,EAAE,OAAO;YACb,OAAO,EAAE;gBACP,KAAK,EACH,0GAA0G;gBAC5G,kBAAkB,EAAE,QAAQ;gBAC5B,cAAc,EAAE,OAAO;gBACvB,WAAW,EAAE,oBAAoB;aAClC;SACF;KACF;IACD;QACE,OAAO,EAAE,yBAAyB;QAClC,gBAAgB,EAAE;YAChB,KAAK,EAAE;gBACL,OAAO,EAAE,MAAM;gBACf,aAAa,EAAE,QAAQ;gBACvB,UAAU,EAAE,SAAS;gBACrB,UAAU,EAAE,GAAG;gBACf,QAAQ,EAAE,UAAU;gBACpB,SAAS,EAAE,MAAM;gBACjB,SAAS,EAAE,QAAQ;gBACnB,UAAU,EAAE,QAAQ;gBACpB,MAAM,EAAE,MAAM;aACf;SACF;QACD,SAAS,EAAE;YACT,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE;gBACP,IAAI,EAAE,2BAA2B;aAClC;SACF;KACF;CACF,CAAC;AAEF;IAA+B,oCAAoB;IAAnD;;IAkGA,CAAC;IAhGC,sBAAI,qCAAO;QADX,yBAAyB;aACzB;YACE,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC;QAClC,CAAC;;;OAAA;IAED,sBAAI,wCAAU;aAAd;YACE,OAAO,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3E,CAAC;;;OAAA;IAED,mCAAQ,GAAR,UAAS,KAAa;QACpB,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,IAAI,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;IACzF,CAAC;IAED,yCAAc,GAAd,UAAe,KAAa;QACpB,IAAA,KAA0B,IAAI,EAA5B,OAAO,aAAA,EAAE,UAAU,gBAAS,CAAC;QACrC,IAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAEnC,IAAM,aAAa,GAAG,UAAU,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC;QAExE,OAAO,eAAQ,KAAK,iBAAO,aAAa,QAAK,CAAC;IAChD,CAAC;IAED,iCAAM,GAAN;;QAAA,iBA0EC;;QAzEO,IAAA,KAA0B,IAAI,EAA5B,OAAO,aAAA,EAAE,UAAU,gBAAS,CAAC;QACrC,IAAM,kBAAkB,GACtB,CAAA,MAAA,MAAA,MAAA,IAAI,CAAC,KAAK,CAAC,YAAY,0CAAE,OAAO,CAAC,cAAc,0CAAE,IAAI,0CAAE,WAAW,KAAI,EAAE,CAAC;QAC3E,IAAM,eAAe,GAAG,IAAA,8CAAsB,EAAC,kBAAkB,CAAC,CAAC;QAEnE,OAAO;QACL,2BAA2B;QAC3B,gBAAC,eAAK,CAAC,QAAQ;YACb,yBACE,SAAS,EAAC,iBAAiB,EAC3B,GAAG,aACD,OAAO,EAAE,MAAM,IACZ,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,KAAK,OAAO;oBACvC,GAAC,6BACC,IAAI,CAAC,KAAK,CAAC,cAAc,KAAK,QAAQ;wBACpC,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,GAAG;wBAC3B,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,GAAG,QAC3B,IAAG;wBACN,aAAa,EAAE,IAAI,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,QAAQ;wBACjF,UAAU,EAAE,SAAS;qBACtB;uBACF,CAAC,KAGH,OAAO,CAAC,GAAG,CAAC,UAAC,GAAG,EAAE,KAAK;;gBACtB,IAAM,OAAO,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,WAAI,CAAC,CAAC,CAAC,KAAK,CAAC;gBAExC,kCAAkC;gBAElC,OAAO,CACL,gBAAC,eAAK,CAAC,QAAQ,IAAC,GAAG,EAAE,KAAK;oBACxB,gBAAC,OAAO,aACN,SAAS,EAAC,gBAAgB,IACtB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;wBAC1C,2GAA2G;wBAC3G,2BAA2B;wBAC3B,GAAG,mBACD,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,QAAQ,EACvB,UAAU,EAAE,SAAS,EACrB,UAAU,EAAE,QAAQ,OACnB,qBAAqB,IAAG;4BACvB,QAAQ,EAAE,CAAC;yBACZ,EACD,QAAK,GAAE,KAAI,CAAC,cAAc,CAAC,KAAK,CAAC,EACjC,aAAU,GAAE,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,OACrC,CAAC,KAAI,CAAC,KAAK,CAAC,cAAc,KAAK,OAAO;4BACvC,GAAC,6BACC,KAAI,CAAC,KAAK,CAAC,cAAc,KAAK,QAAQ;gCACpC,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,GAAG;gCAC3B,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,GAAG,QAC3B,IAAG;gCACN,KAAK,EAAE,MAAM;gCACb,UAAU,EAAE,CAAC;6BACd;+BACF,CAAC;wBAGJ,gBAAC,wCAAa,IACZ,GAAG,EAAE,KAAK;4BACV,gCAAgC;4BAChC,KAAK,QACL,eAAe,EAAE,KAAI,CAAC,KAAK,CAAC,YAAY,IAAI,KAAI,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,EACtE,MAAM,EAAE,GAAG,CAAC,MAAM,EAClB,QAAQ,EAAE,oCAA6B,KAAK,YAAS,GACrD,CACM,CACK,CAClB,CAAC;YACJ,CAAC,CAAC,CACE,CACS,CAClB,CAAC;IACJ,CAAC;IACH,uBAAC;AAAD,CAAC,AAlGD,CAA+B,eAAK,CAAC,SAAS,GAkG7C;AAEY,QAAA,OAAO,GAAG,IAAA,0BAAW,EAAC,gBAAgB,EAAE;IACnD,IAAI,EAAE,SAAS;IACf,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE;QACN;YACE,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,OAAO;YACb,SAAS,EAAE,IAAI;YACf,SAAS,EAAE;gBACT;oBACE,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,OAAO;oBACb,UAAU,EAAE,IAAI;oBAChB,YAAY,EAAE,aAAa;iBAC5B;gBACD;oBACE,IAAI,EAAE,OAAO;oBACb,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE,IAAI;oBAChB,UAAU,EAAE,mDAAmD;iBAChE;gBACD;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,KAAK;oBACX,UAAU,EAAE,6DAA6D;iBAC1E;aACF;YACD,YAAY,EAAE,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC;YACpE,QAAQ,EAAE,UAAC,OAAyB;gBAClC,SAAS,WAAW;oBAClB,OAAO,CAAC,OAAO,CAAC,UAAA,GAAG;wBACjB,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;oBACtB,CAAC,CAAC,CAAC;gBACL,CAAC;gBAED,IAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAA4B,CAAC;gBAElE,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;oBAC1B,IAAM,uBAAuB,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,UAAA,GAAG,IAAI,OAAA,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,EAAhB,CAAgB,CAAC,CAAC;oBAExE,IAAI,uBAAuB,EAAE;wBAC3B,IAAM,0BAA0B,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,UAAA,GAAG,IAAI,OAAA,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,EAAjB,CAAiB,CAAC,CAAC;wBAC5E,IAAI,0BAA0B,EAAE;4BAC9B,WAAW,EAAE,CAAC;yBACf;6BAAM;4BACL,IAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,UAAC,IAAI,EAAE,GAAG;gCACzC,OAAO,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;4BACjC,CAAC,EAAE,CAAC,CAAC,CAAC;4BACN,IAAM,eAAe,GAAG,SAAS,KAAK,GAAG,CAAC;4BAC1C,IAAI,eAAe,EAAE;gCACnB,WAAW,EAAE,CAAC;6BACf;yBACF;qBACF;iBACF;YACH,CAAC;SACF;QACD;YACE,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,QAAQ;YACd,YAAY,EAAE,EAAE;YAChB,UAAU,EAAE,6BAA6B;YACzC,QAAQ,EAAE,IAAI;SACf;QACD;YACE,IAAI,EAAE,gBAAgB;YACtB,IAAI,EAAE,QAAQ;YACd,YAAY,EAAE,QAAQ;YACtB,UAAU,EAAE,4DAA4D;YACxE,IAAI,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC;YACnC,QAAQ,EAAE,IAAI;SACf;QACD;YACE,IAAI,EAAE,2BAA2B;YACjC,IAAI,EAAE,SAAS;YACf,YAAY,EAAE,KAAK;YACnB,UAAU,EAAE,gEAAgE;YAC5E,QAAQ,EAAE,IAAI;SACf;KACF;CACF,CAAC,CAAC"}
|
|
@@ -0,0 +1,227 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
'use client';
|
|
3
|
+
var __extends = (this && this.__extends) || (function () {
|
|
4
|
+
var extendStatics = function (d, b) {
|
|
5
|
+
extendStatics = Object.setPrototypeOf ||
|
|
6
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
7
|
+
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
8
|
+
return extendStatics(d, b);
|
|
9
|
+
};
|
|
10
|
+
return function (d, b) {
|
|
11
|
+
if (typeof b !== "function" && b !== null)
|
|
12
|
+
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
13
|
+
extendStatics(d, b);
|
|
14
|
+
function __() { this.constructor = d; }
|
|
15
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
16
|
+
};
|
|
17
|
+
})();
|
|
18
|
+
var __assign = (this && this.__assign) || function () {
|
|
19
|
+
__assign = Object.assign || function(t) {
|
|
20
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
21
|
+
s = arguments[i];
|
|
22
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
23
|
+
t[p] = s[p];
|
|
24
|
+
}
|
|
25
|
+
return t;
|
|
26
|
+
};
|
|
27
|
+
return __assign.apply(this, arguments);
|
|
28
|
+
};
|
|
29
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
30
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
31
|
+
};
|
|
32
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
33
|
+
exports.CustomCode = void 0;
|
|
34
|
+
var react_1 = __importDefault(require("react"));
|
|
35
|
+
var sdk_1 = require("@builder.io/sdk");
|
|
36
|
+
var with_builder_1 = require("../functions/with-builder");
|
|
37
|
+
// TODO: settings context to pass this down. do in shopify-specific generated code
|
|
38
|
+
var globalReplaceNodes = {} || null;
|
|
39
|
+
var isShopify = sdk_1.Builder.isBrowser && 'Shopify' in window;
|
|
40
|
+
if (sdk_1.Builder.isBrowser && globalReplaceNodes) {
|
|
41
|
+
var customCodeQuerySelector_1 = '.builder-custom-code';
|
|
42
|
+
try {
|
|
43
|
+
var allCustomCodeElements_1 = Array.from(document.querySelectorAll(customCodeQuerySelector_1));
|
|
44
|
+
// Search each template element (if present) for custom code blocks since
|
|
45
|
+
// querySelectorAll cannot search all templates that we use for variations, because they are
|
|
46
|
+
// considered document fragments and are not a part of the DOM.
|
|
47
|
+
var builderTemplates = document.querySelectorAll('template[data-template-variant-id]');
|
|
48
|
+
if (builderTemplates.length) {
|
|
49
|
+
Array.from(builderTemplates).forEach(function (template) {
|
|
50
|
+
var content = template.content;
|
|
51
|
+
var codeElements = content.querySelectorAll(customCodeQuerySelector_1);
|
|
52
|
+
if (codeElements.length) {
|
|
53
|
+
allCustomCodeElements_1 = allCustomCodeElements_1.concat(Array.from(codeElements));
|
|
54
|
+
}
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
allCustomCodeElements_1.forEach(function (el) {
|
|
58
|
+
var parent = el.parentElement;
|
|
59
|
+
var id = parent && parent.getAttribute('builder-id');
|
|
60
|
+
if (id) {
|
|
61
|
+
globalReplaceNodes[id] = globalReplaceNodes[id] || [];
|
|
62
|
+
globalReplaceNodes[id].push(isShopify ? el : el.cloneNode(true));
|
|
63
|
+
}
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
catch (err) {
|
|
67
|
+
console.error('Builder replace nodes error:', err);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
var CustomCodeComponent = /** @class */ (function (_super) {
|
|
71
|
+
__extends(CustomCodeComponent, _super);
|
|
72
|
+
function CustomCodeComponent(props) {
|
|
73
|
+
var _this = this;
|
|
74
|
+
var _a;
|
|
75
|
+
_this = _super.call(this, props) || this;
|
|
76
|
+
_this.elementRef = null;
|
|
77
|
+
_this.originalRef = null;
|
|
78
|
+
_this.scriptsInserted = new Set();
|
|
79
|
+
_this.scriptsRun = new Set();
|
|
80
|
+
_this.firstLoad = true;
|
|
81
|
+
_this.replaceNodes = false;
|
|
82
|
+
_this.state = {
|
|
83
|
+
hydrated: false,
|
|
84
|
+
};
|
|
85
|
+
if (sdk_1.Builder.isBrowser) {
|
|
86
|
+
var id = (_a = _this.props.builderBlock) === null || _a === void 0 ? void 0 : _a.id;
|
|
87
|
+
_this.replaceNodes = Boolean(sdk_1.Builder.isBrowser && (props.replaceNodes || isShopify) && id && (globalReplaceNodes === null || globalReplaceNodes === void 0 ? void 0 : globalReplaceNodes[id]));
|
|
88
|
+
if (_this.firstLoad && _this.props.builderBlock) {
|
|
89
|
+
if (id && (globalReplaceNodes === null || globalReplaceNodes === void 0 ? void 0 : globalReplaceNodes[id])) {
|
|
90
|
+
var el = globalReplaceNodes[id].shift() || null;
|
|
91
|
+
_this.originalRef = el;
|
|
92
|
+
if (globalReplaceNodes[id].length === 0) {
|
|
93
|
+
delete globalReplaceNodes[id];
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
else if (_this.replaceNodes) {
|
|
97
|
+
var existing = document.querySelectorAll(".".concat(_this.props.builderBlock.id, " .builder-custom-code"));
|
|
98
|
+
if (existing.length === 1) {
|
|
99
|
+
var node = existing[0];
|
|
100
|
+
_this.originalRef = node;
|
|
101
|
+
_this.originalRef.remove();
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
return _this;
|
|
107
|
+
}
|
|
108
|
+
CustomCodeComponent.prototype.shouldComponentUpdate = function (nextProps) {
|
|
109
|
+
return nextProps.code !== this.props.code;
|
|
110
|
+
};
|
|
111
|
+
Object.defineProperty(CustomCodeComponent.prototype, "noReactRender", {
|
|
112
|
+
get: function () {
|
|
113
|
+
var _a;
|
|
114
|
+
// Don't render liquid client side
|
|
115
|
+
return Boolean(isShopify && ((_a = this.props.code) === null || _a === void 0 ? void 0 : _a.match(/{[{%]/g)));
|
|
116
|
+
},
|
|
117
|
+
enumerable: false,
|
|
118
|
+
configurable: true
|
|
119
|
+
});
|
|
120
|
+
Object.defineProperty(CustomCodeComponent.prototype, "isHydrating", {
|
|
121
|
+
get: function () {
|
|
122
|
+
return !isShopify && this.originalRef;
|
|
123
|
+
},
|
|
124
|
+
enumerable: false,
|
|
125
|
+
configurable: true
|
|
126
|
+
});
|
|
127
|
+
CustomCodeComponent.prototype.componentDidUpdate = function (prevProps) {
|
|
128
|
+
if (this.props.code !== prevProps.code) {
|
|
129
|
+
this.findAndRunScripts();
|
|
130
|
+
}
|
|
131
|
+
};
|
|
132
|
+
CustomCodeComponent.prototype.componentDidMount = function () {
|
|
133
|
+
var _this = this;
|
|
134
|
+
this.firstLoad = false;
|
|
135
|
+
if (!this.replaceNodes) {
|
|
136
|
+
if (this.isHydrating) {
|
|
137
|
+
// first render need to match what's on ssr (issue with next.js)
|
|
138
|
+
this.setState({
|
|
139
|
+
hydrated: true,
|
|
140
|
+
});
|
|
141
|
+
sdk_1.Builder.nextTick(function () { return _this.findAndRunScripts(); });
|
|
142
|
+
}
|
|
143
|
+
else {
|
|
144
|
+
this.findAndRunScripts();
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
if (sdk_1.Builder.isBrowser && this.replaceNodes && this.originalRef && this.elementRef) {
|
|
148
|
+
this.elementRef.appendChild(this.originalRef);
|
|
149
|
+
}
|
|
150
|
+
};
|
|
151
|
+
CustomCodeComponent.prototype.findAndRunScripts = function () {
|
|
152
|
+
if (this.elementRef && typeof window !== 'undefined') {
|
|
153
|
+
var scripts = this.elementRef.getElementsByTagName('script');
|
|
154
|
+
for (var i = 0; i < scripts.length; i++) {
|
|
155
|
+
var script = scripts[i];
|
|
156
|
+
if (script.src) {
|
|
157
|
+
if (this.scriptsInserted.has(script.src)) {
|
|
158
|
+
continue;
|
|
159
|
+
}
|
|
160
|
+
this.scriptsInserted.add(script.src);
|
|
161
|
+
var newScript = document.createElement('script');
|
|
162
|
+
newScript.async = true;
|
|
163
|
+
newScript.src = script.src;
|
|
164
|
+
document.head.appendChild(newScript);
|
|
165
|
+
}
|
|
166
|
+
else if (!script.type ||
|
|
167
|
+
['text/javascript', 'application/javascript', 'application/ecmascript'].includes(script.type)) {
|
|
168
|
+
if (this.scriptsRun.has(script.innerText)) {
|
|
169
|
+
continue;
|
|
170
|
+
}
|
|
171
|
+
try {
|
|
172
|
+
this.scriptsRun.add(script.innerText);
|
|
173
|
+
new Function(script.innerText)();
|
|
174
|
+
}
|
|
175
|
+
catch (error) {
|
|
176
|
+
console.warn('Builder custom code component error:', error);
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
};
|
|
182
|
+
Object.defineProperty(CustomCodeComponent.prototype, "code", {
|
|
183
|
+
get: function () {
|
|
184
|
+
// when ssr'd by nextjs it'll break hydration if initial client render doesn't match ssr
|
|
185
|
+
if ((sdk_1.Builder.isServer || (this.isHydrating && this.firstLoad)) &&
|
|
186
|
+
this.props.scriptsClientOnly) {
|
|
187
|
+
return (this.props.code || '').replace(/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi, '');
|
|
188
|
+
}
|
|
189
|
+
return this.props.code;
|
|
190
|
+
},
|
|
191
|
+
enumerable: false,
|
|
192
|
+
configurable: true
|
|
193
|
+
});
|
|
194
|
+
CustomCodeComponent.prototype.render = function () {
|
|
195
|
+
var _this = this;
|
|
196
|
+
// TODO: remove <script> tags for server render (unless has some param to say it's only goingn to be run on server)
|
|
197
|
+
// like embed
|
|
198
|
+
return (react_1.default.createElement("div", __assign({ ref: function (ref) { return (_this.elementRef = ref); },
|
|
199
|
+
// TODO: add a class when node replaced in (?)
|
|
200
|
+
className: "builder-custom-code" }, (!this.replaceNodes &&
|
|
201
|
+
!this.noReactRender && {
|
|
202
|
+
dangerouslySetInnerHTML: { __html: this.code },
|
|
203
|
+
}))));
|
|
204
|
+
};
|
|
205
|
+
return CustomCodeComponent;
|
|
206
|
+
}(react_1.default.Component));
|
|
207
|
+
exports.CustomCode = (0, with_builder_1.withBuilder)(CustomCodeComponent, {
|
|
208
|
+
name: 'Custom Code',
|
|
209
|
+
static: true,
|
|
210
|
+
requiredPermissions: ['editCode'],
|
|
211
|
+
inputs: [
|
|
212
|
+
{
|
|
213
|
+
name: 'code',
|
|
214
|
+
type: 'html',
|
|
215
|
+
required: true,
|
|
216
|
+
defaultValue: '<p>Hello there, I am custom HTML code!</p>',
|
|
217
|
+
code: true,
|
|
218
|
+
},
|
|
219
|
+
__assign({ name: 'replaceNodes', type: 'boolean', helperText: 'Preserve server rendered dom nodes', advanced: true }, (isShopify && {
|
|
220
|
+
defaultValue: true,
|
|
221
|
+
})),
|
|
222
|
+
__assign({ name: 'scriptsClientOnly', type: 'boolean', helperText: 'Only print and run scripts on the client. Important when scripts influence DOM that could be replaced when client loads', advanced: true }, (!isShopify && {
|
|
223
|
+
defaultValue: true,
|
|
224
|
+
})),
|
|
225
|
+
],
|
|
226
|
+
});
|
|
227
|
+
//# sourceMappingURL=CustomCode.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CustomCode.js","sourceRoot":"","sources":["../../../../src/blocks/CustomCode.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
'use client';
|
|
3
|
+
var __extends = (this && this.__extends) || (function () {
|
|
4
|
+
var extendStatics = function (d, b) {
|
|
5
|
+
extendStatics = Object.setPrototypeOf ||
|
|
6
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
7
|
+
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
8
|
+
return extendStatics(d, b);
|
|
9
|
+
};
|
|
10
|
+
return function (d, b) {
|
|
11
|
+
if (typeof b !== "function" && b !== null)
|
|
12
|
+
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
13
|
+
extendStatics(d, b);
|
|
14
|
+
function __() { this.constructor = d; }
|
|
15
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
16
|
+
};
|
|
17
|
+
})();
|
|
18
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
19
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
20
|
+
};
|
|
21
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
+
exports.Embed = void 0;
|
|
23
|
+
var react_1 = __importDefault(require("react"));
|
|
24
|
+
var sdk_1 = require("@builder.io/sdk");
|
|
25
|
+
var with_builder_1 = require("../functions/with-builder");
|
|
26
|
+
var EmbedComponent = /** @class */ (function (_super) {
|
|
27
|
+
__extends(EmbedComponent, _super);
|
|
28
|
+
function EmbedComponent() {
|
|
29
|
+
var _this = _super !== null && _super.apply(this, arguments) || this;
|
|
30
|
+
_this.elementRef = null;
|
|
31
|
+
_this.scriptsInserted = new Set();
|
|
32
|
+
_this.scriptsRun = new Set();
|
|
33
|
+
return _this;
|
|
34
|
+
}
|
|
35
|
+
EmbedComponent.prototype.shouldComponentUpdate = function (nextProps) {
|
|
36
|
+
return nextProps.content !== this.props.content;
|
|
37
|
+
};
|
|
38
|
+
EmbedComponent.prototype.componentDidUpdate = function (prevProps) {
|
|
39
|
+
if (this.props.content !== prevProps.content) {
|
|
40
|
+
this.findAndRunScripts();
|
|
41
|
+
}
|
|
42
|
+
};
|
|
43
|
+
EmbedComponent.prototype.componentDidMount = function () {
|
|
44
|
+
this.findAndRunScripts();
|
|
45
|
+
};
|
|
46
|
+
EmbedComponent.prototype.findAndRunScripts = function () {
|
|
47
|
+
if (this.elementRef && typeof window !== 'undefined') {
|
|
48
|
+
var scripts = this.elementRef.getElementsByTagName('script');
|
|
49
|
+
for (var i = 0; i < scripts.length; i++) {
|
|
50
|
+
var script = scripts[i];
|
|
51
|
+
if (script.src) {
|
|
52
|
+
if (this.scriptsInserted.has(script.src)) {
|
|
53
|
+
continue;
|
|
54
|
+
}
|
|
55
|
+
this.scriptsInserted.add(script.src);
|
|
56
|
+
var newScript = document.createElement('script');
|
|
57
|
+
newScript.async = true;
|
|
58
|
+
newScript.src = script.src;
|
|
59
|
+
document.head.appendChild(newScript);
|
|
60
|
+
}
|
|
61
|
+
else {
|
|
62
|
+
if (this.scriptsRun.has(script.innerText)) {
|
|
63
|
+
continue;
|
|
64
|
+
}
|
|
65
|
+
this.scriptsRun.add(script.innerText);
|
|
66
|
+
try {
|
|
67
|
+
new Function(script.innerText)();
|
|
68
|
+
}
|
|
69
|
+
catch (error) {
|
|
70
|
+
console.warn('Builder custom code component error:', error);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
};
|
|
76
|
+
Object.defineProperty(EmbedComponent.prototype, "content", {
|
|
77
|
+
get: function () {
|
|
78
|
+
// Remove scripts on server - if they manipulate dom there can be issues on hydration
|
|
79
|
+
// TODO: allow this to by bypassed by context or prop that says if this is going to be HTML
|
|
80
|
+
// loaded without client JS/hydration (static)
|
|
81
|
+
if (sdk_1.Builder.isServer) {
|
|
82
|
+
return (this.props.content || '').replace(/<script[\s\S]*?<\/script>/g, '');
|
|
83
|
+
}
|
|
84
|
+
return this.props.content;
|
|
85
|
+
},
|
|
86
|
+
enumerable: false,
|
|
87
|
+
configurable: true
|
|
88
|
+
});
|
|
89
|
+
EmbedComponent.prototype.render = function () {
|
|
90
|
+
var _this = this;
|
|
91
|
+
return (react_1.default.createElement("div", { ref: function (ref) { return (_this.elementRef = ref); }, className: "builder-embed", dangerouslySetInnerHTML: { __html: this.content } }));
|
|
92
|
+
};
|
|
93
|
+
return EmbedComponent;
|
|
94
|
+
}(react_1.default.Component));
|
|
95
|
+
exports.Embed = (0, with_builder_1.withBuilder)(EmbedComponent, {
|
|
96
|
+
name: 'Embed',
|
|
97
|
+
static: true,
|
|
98
|
+
inputs: [
|
|
99
|
+
{
|
|
100
|
+
name: 'url',
|
|
101
|
+
type: 'url',
|
|
102
|
+
required: true,
|
|
103
|
+
defaultValue: '',
|
|
104
|
+
helperText: 'e.g. enter a youtube url, google map, etc',
|
|
105
|
+
},
|
|
106
|
+
{
|
|
107
|
+
name: 'content',
|
|
108
|
+
type: 'html',
|
|
109
|
+
defaultValue: "<div style=\"padding: 20px; text-align: center\">(Choose an embed URL)<div>",
|
|
110
|
+
hideFromUI: true,
|
|
111
|
+
},
|
|
112
|
+
],
|
|
113
|
+
});
|
|
114
|
+
//# sourceMappingURL=Embed.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Embed.js","sourceRoot":"","sources":["../../../../src/blocks/Embed.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
'use client';
|
|
3
|
+
var __extends = (this && this.__extends) || (function () {
|
|
4
|
+
var extendStatics = function (d, b) {
|
|
5
|
+
extendStatics = Object.setPrototypeOf ||
|
|
6
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
7
|
+
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
8
|
+
return extendStatics(d, b);
|
|
9
|
+
};
|
|
10
|
+
return function (d, b) {
|
|
11
|
+
if (typeof b !== "function" && b !== null)
|
|
12
|
+
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
13
|
+
extendStatics(d, b);
|
|
14
|
+
function __() { this.constructor = d; }
|
|
15
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
16
|
+
};
|
|
17
|
+
})();
|
|
18
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
19
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
20
|
+
};
|
|
21
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
+
exports.Fragment = void 0;
|
|
23
|
+
var react_1 = __importDefault(require("react"));
|
|
24
|
+
var with_builder_1 = require("../functions/with-builder");
|
|
25
|
+
var builder_block_component_1 = require("../components/builder-block.component");
|
|
26
|
+
var FragmentComponent = /** @class */ (function (_super) {
|
|
27
|
+
__extends(FragmentComponent, _super);
|
|
28
|
+
function FragmentComponent() {
|
|
29
|
+
return _super !== null && _super.apply(this, arguments) || this;
|
|
30
|
+
}
|
|
31
|
+
FragmentComponent.prototype.render = function () {
|
|
32
|
+
return (this.props.builderBlock &&
|
|
33
|
+
this.props.builderBlock.children &&
|
|
34
|
+
this.props.builderBlock.children.map(function (block, index) { return (react_1.default.createElement(builder_block_component_1.BuilderBlock, { block: block, key: block.id, index: index })); }));
|
|
35
|
+
};
|
|
36
|
+
return FragmentComponent;
|
|
37
|
+
}(react_1.default.Component));
|
|
38
|
+
exports.Fragment = (0, with_builder_1.withBuilder)(FragmentComponent, {
|
|
39
|
+
name: 'Core:Fragment',
|
|
40
|
+
canHaveChildren: true,
|
|
41
|
+
noWrap: true,
|
|
42
|
+
static: true,
|
|
43
|
+
hideFromInsertMenu: true,
|
|
44
|
+
});
|
|
45
|
+
//# sourceMappingURL=Fragment.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Fragment.js","sourceRoot":"","sources":["../../../../src/blocks/Fragment.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAC;;;;;;;;;;;;;;;;;;;;;AACb,gDAA0B;AAE1B,0DAAwD;AACxD,iFAA8F;AAM9F;IAAgC,qCAA8B;IAA9D;;IAUA,CAAC;IATC,kCAAM,GAAN;QACE,OAAO,CACL,IAAI,CAAC,KAAK,CAAC,YAAY;YACvB,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ;YAChC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAC,KAAK,EAAE,KAAK,IAAK,OAAA,CACrD,8BAAC,sCAAqB,IAAC,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,GAAI,CACrE,EAFsD,CAEtD,CAAC,CACH,CAAC;IACJ,CAAC;IACH,wBAAC;AAAD,CAAC,AAVD,CAAgC,eAAK,CAAC,SAAS,GAU9C;AAEY,QAAA,QAAQ,GAAG,IAAA,0BAAW,EAAC,iBAAiB,EAAE;IACrD,IAAI,EAAE,eAAe;IACrB,eAAe,EAAE,IAAI;IACrB,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,IAAI;IACZ,kBAAkB,EAAE,IAAI;CACzB,CAAC,CAAC"}
|