@plasmicpkgs/plasmic-basic-components 0.0.2 → 0.0.3

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.
Files changed (45) hide show
  1. package/dist/Data.d.ts +32 -5
  2. package/dist/Embed.d.ts +5 -1
  3. package/dist/Iframe.d.ts +8 -3
  4. package/dist/ScrollRevealer.d.ts +12 -6
  5. package/dist/Video.d.ts +6 -0
  6. package/dist/index.d.ts +4 -0
  7. package/dist/plasmic-basic-components.cjs.development.js +160 -58
  8. package/dist/plasmic-basic-components.cjs.development.js.map +1 -1
  9. package/dist/plasmic-basic-components.cjs.production.min.js +1 -1
  10. package/dist/plasmic-basic-components.cjs.production.min.js.map +1 -1
  11. package/dist/plasmic-basic-components.esm.js +140 -59
  12. package/dist/plasmic-basic-components.esm.js.map +1 -1
  13. package/package.json +4 -13
  14. package/Data/dist/Data.d.ts +0 -97
  15. package/Data/dist/common.d.ts +0 -2
  16. package/Data/dist/index.cjs.js +0 -267
  17. package/Data/dist/index.cjs.js.map +0 -1
  18. package/Data/dist/index.esm.js +0 -246
  19. package/Data/dist/index.esm.js.map +0 -1
  20. package/Data/package.json +0 -6
  21. package/Embed/dist/Embed.d.ts +0 -8
  22. package/Embed/dist/common.d.ts +0 -2
  23. package/Embed/dist/index.cjs.js +0 -64
  24. package/Embed/dist/index.cjs.js.map +0 -1
  25. package/Embed/dist/index.esm.js +0 -55
  26. package/Embed/dist/index.esm.js.map +0 -1
  27. package/Embed/package.json +0 -6
  28. package/Iframe/dist/Iframe.d.ts +0 -8
  29. package/Iframe/dist/index.cjs.js +0 -62
  30. package/Iframe/dist/index.cjs.js.map +0 -1
  31. package/Iframe/dist/index.esm.js +0 -53
  32. package/Iframe/dist/index.esm.js.map +0 -1
  33. package/Iframe/package.json +0 -6
  34. package/ScrollRevealer/dist/ScrollRevealer.d.ts +0 -20
  35. package/ScrollRevealer/dist/index.cjs.js +0 -87
  36. package/ScrollRevealer/dist/index.cjs.js.map +0 -1
  37. package/ScrollRevealer/dist/index.esm.js +0 -77
  38. package/ScrollRevealer/dist/index.esm.js.map +0 -1
  39. package/ScrollRevealer/package.json +0 -6
  40. package/Video/dist/Video.d.ts +0 -3
  41. package/Video/dist/index.cjs.js +0 -100
  42. package/Video/dist/index.cjs.js.map +0 -1
  43. package/Video/dist/index.esm.js +0 -91
  44. package/Video/dist/index.esm.js.map +0 -1
  45. package/Video/package.json +0 -6
@@ -1,97 +0,0 @@
1
- /** @format */
2
- import React, { ComponentProps, CSSProperties, ReactNode } from "react";
3
- export declare type DataDict = Record<string, any>;
4
- export declare const DataContext: React.Context<Record<string, any> | undefined>;
5
- export declare function applySelector(rawData: DataDict | undefined, selector: string | undefined): any;
6
- export declare type SelectorDict = Record<string, string | undefined>;
7
- export declare function useSelector(selector: string | undefined): any;
8
- export declare function useSelectors(selectors?: SelectorDict): any;
9
- export declare function useDataEnv(): Record<string, any> | undefined;
10
- export interface DataProviderProps {
11
- name?: string;
12
- data?: any;
13
- children?: ReactNode;
14
- }
15
- export declare function DataProvider({ name, data, children }: DataProviderProps): JSX.Element;
16
- export interface CommonDynamicProps {
17
- className?: string;
18
- tag?: string;
19
- propSelectors?: SelectorDict;
20
- }
21
- export declare function DynamicElement<Tag extends keyof JSX.IntrinsicElements = "div">({ tag, className, children, propSelectors, ...props }: CommonDynamicProps & ComponentProps<Tag>): React.DOMElement<any, Element>;
22
- export declare function DynamicText({ selector, propSelectors, ...props }: CommonDynamicProps & {
23
- selector?: string;
24
- }): JSX.Element;
25
- export declare function DynamicImage({ selector, propSelectors, ...props }: CommonDynamicProps & ComponentProps<"img"> & {
26
- selector?: string;
27
- }): JSX.Element;
28
- export interface DynamicCollectionProps extends CommonDynamicProps {
29
- children?: ReactNode;
30
- style?: CSSProperties;
31
- loopItemName?: string;
32
- keySelector?: string;
33
- selector?: string;
34
- data?: any;
35
- }
36
- export declare function DynamicCollection({ selector, loopItemName, children, data, keySelector, ...props }: DynamicCollectionProps): JSX.Element;
37
- export interface DynamicCollectionGridProps extends DynamicCollectionProps {
38
- columns?: number;
39
- columnGap?: number;
40
- rowGap?: number;
41
- }
42
- export declare function DynamicCollectionGrid({ columns, columnGap, rowGap, ...props }: DynamicCollectionGridProps): JSX.Element;
43
- export declare const dynamicCollectionProps: {
44
- readonly selector: {
45
- readonly type: "string";
46
- readonly description: "The selector expression to use to get the array of data to loop over, such as: someVariable.0.someField";
47
- };
48
- readonly loopItemName: {
49
- readonly type: "string";
50
- readonly defaultValue: "item";
51
- readonly description: "The name of the variable to use to store the current item in the loop";
52
- };
53
- readonly children: "slot";
54
- readonly tag: {
55
- readonly type: "string";
56
- readonly description: "The HTML tag to use";
57
- };
58
- readonly propSelectors: {
59
- readonly type: "object";
60
- readonly description: "An object whose keys are prop names and values are selector expressions. Use this to set any prop to a dynamic value.";
61
- };
62
- };
63
- export declare const dynamicCollectionGridProps: {
64
- readonly columns: {
65
- readonly type: "number";
66
- readonly defaultValue: 2;
67
- readonly description: "The number of columns to use in the grid";
68
- };
69
- readonly columnGap: {
70
- readonly type: "number";
71
- readonly defaultValue: 8;
72
- readonly description: "The gap between columns";
73
- };
74
- readonly rowGap: {
75
- readonly type: "number";
76
- readonly defaultValue: 8;
77
- readonly description: "The gap between rows";
78
- };
79
- readonly selector: {
80
- readonly type: "string";
81
- readonly description: "The selector expression to use to get the array of data to loop over, such as: someVariable.0.someField";
82
- };
83
- readonly loopItemName: {
84
- readonly type: "string";
85
- readonly defaultValue: "item";
86
- readonly description: "The name of the variable to use to store the current item in the loop";
87
- };
88
- readonly children: "slot";
89
- readonly tag: {
90
- readonly type: "string";
91
- readonly description: "The HTML tag to use";
92
- };
93
- readonly propSelectors: {
94
- readonly type: "object";
95
- readonly description: "An object whose keys are prop names and values are selector expressions. Use this to set any prop to a dynamic value.";
96
- };
97
- };
@@ -1,2 +0,0 @@
1
- export declare const tuple: <T extends any[]>(...args: T) => T;
2
- export declare function ensure<T>(x: T | null | undefined): T;
@@ -1,267 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var host = require('@plasmicapp/host');
6
- var registerComponent = require('@plasmicapp/host/registerComponent');
7
- var React = require('react');
8
-
9
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
10
-
11
- var registerComponent__default = /*#__PURE__*/_interopDefaultLegacy(registerComponent);
12
- var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
13
-
14
- /*! *****************************************************************************
15
- Copyright (c) Microsoft Corporation.
16
-
17
- Permission to use, copy, modify, and/or distribute this software for any
18
- purpose with or without fee is hereby granted.
19
-
20
- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
21
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
22
- AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
23
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
24
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
25
- OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
26
- PERFORMANCE OF THIS SOFTWARE.
27
- ***************************************************************************** */
28
-
29
- var __assign = function() {
30
- __assign = Object.assign || function __assign(t) {
31
- for (var s, i = 1, n = arguments.length; i < n; i++) {
32
- s = arguments[i];
33
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
34
- }
35
- return t;
36
- };
37
- return __assign.apply(this, arguments);
38
- };
39
-
40
- function __rest(s, e) {
41
- var t = {};
42
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
43
- t[p] = s[p];
44
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
45
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
46
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
47
- t[p[i]] = s[p[i]];
48
- }
49
- return t;
50
- }
51
-
52
- var tuple = function () {
53
- var args = [];
54
- for (var _i = 0; _i < arguments.length; _i++) {
55
- args[_i] = arguments[_i];
56
- }
57
- return args;
58
- };
59
-
60
- /** @format */
61
- var DataContext = React.createContext(undefined);
62
- function applySelector(rawData, selector) {
63
- if (!selector) {
64
- return undefined;
65
- }
66
- var curData = rawData;
67
- for (var _i = 0, _a = selector.split("."); _i < _a.length; _i++) {
68
- var key = _a[_i];
69
- curData = curData === null || curData === void 0 ? void 0 : curData[key];
70
- }
71
- return curData;
72
- }
73
- function useSelector(selector) {
74
- var rawData = useDataEnv();
75
- return applySelector(rawData, selector);
76
- }
77
- function useSelectors(selectors) {
78
- if (selectors === void 0) { selectors = {}; }
79
- var rawData = useDataEnv();
80
- return Object.fromEntries(Object.entries(selectors)
81
- .filter(function (_a) {
82
- var key = _a[0], selector = _a[1];
83
- return !!key && !!selector;
84
- })
85
- .map(function (_a) {
86
- var key = _a[0], selector = _a[1];
87
- return tuple(key, applySelector(rawData, selector));
88
- }));
89
- }
90
- function useDataEnv() {
91
- return React.useContext(DataContext);
92
- }
93
- function DataProvider(_a) {
94
- var _b;
95
- var _c;
96
- var name = _a.name, data = _a.data, children = _a.children;
97
- var existingEnv = (_c = useDataEnv()) !== null && _c !== void 0 ? _c : {};
98
- if (!name) {
99
- return React__default["default"].createElement(React__default["default"].Fragment, null, children);
100
- }
101
- else {
102
- return (React__default["default"].createElement(DataContext.Provider, { value: __assign(__assign({}, existingEnv), (_b = {}, _b[name] = data, _b)) }, children));
103
- }
104
- }
105
- function DynamicElement(_a) {
106
- var _b = _a.tag, tag = _b === void 0 ? "div" : _b, className = _a.className, children = _a.children, propSelectors = _a.propSelectors, props = __rest(_a, ["tag", "className", "children", "propSelectors"]);
107
- var computed = useSelectors(propSelectors);
108
- return React.createElement(tag, __assign(__assign(__assign({ children: children }, props), computed), { className: className + " " + computed.className }));
109
- }
110
- function DynamicText(_a) {
111
- var selector = _a.selector, propSelectors = _a.propSelectors, props = __rest(_a, ["selector", "propSelectors"]);
112
- return (React__default["default"].createElement(DynamicElement, __assign({}, props, { propSelectors: __assign(__assign({}, propSelectors), { children: selector }) }), "(DynamicText requires a selector)"));
113
- }
114
- function DynamicImage(_a) {
115
- var selector = _a.selector, propSelectors = _a.propSelectors, props = __rest(_a, ["selector", "propSelectors"]);
116
- return (React__default["default"].createElement(DynamicElement, __assign({ tag: "img", loading: "lazy", style: {
117
- objectFit: "cover",
118
- } }, props, { propSelectors: __assign(__assign({}, propSelectors), { src: selector }),
119
- // Default image placeholder
120
- src: "https://studio.plasmic.app/static/img/placeholder.png" })));
121
- }
122
- function DynamicCollection(_a) {
123
- var _b, _c;
124
- var selector = _a.selector, loopItemName = _a.loopItemName, children = _a.children, data = _a.data, keySelector = _a.keySelector, props = __rest(_a, ["selector", "loopItemName", "children", "data", "keySelector"]);
125
- // Defaults to an array of three items.
126
- var finalData = (_b = data !== null && data !== void 0 ? data : useSelector(selector)) !== null && _b !== void 0 ? _b : [1, 2, 3];
127
- return (React__default["default"].createElement(DynamicElement, __assign({}, props), (_c = finalData === null || finalData === void 0 ? void 0 : finalData.map) === null || _c === void 0 ? void 0 : _c.call(finalData, function (item, index) {
128
- var _a;
129
- return (React__default["default"].createElement(DataProvider, { key: (_a = applySelector(item, keySelector)) !== null && _a !== void 0 ? _a : index, name: loopItemName, data: item }, host.repeatedElement(index === 0, children)));
130
- })));
131
- }
132
- function DynamicCollectionGrid(_a) {
133
- var columns = _a.columns, _b = _a.columnGap, columnGap = _b === void 0 ? 0 : _b, _c = _a.rowGap, rowGap = _c === void 0 ? 0 : _c, props = __rest(_a, ["columns", "columnGap", "rowGap"]);
134
- return (React__default["default"].createElement(DynamicCollection, __assign({}, props, { style: {
135
- display: "grid",
136
- gridTemplateColumns: "repeat(" + columns + ", 1fr)",
137
- columnGap: columnGap + "px",
138
- rowGap: rowGap + "px",
139
- } })));
140
- }
141
- var thisModule = "@plasmicpkgs/plasmic-basic-components/Data";
142
- registerComponent__default["default"](DataProvider, {
143
- name: "DataProvider",
144
- importPath: thisModule,
145
- // description: "Makes some specified data available to the subtree in a context",
146
- props: {
147
- name: {
148
- type: "string",
149
- defaultValue: "celebrities",
150
- description: "The name of the variable to store the data in",
151
- },
152
- data: {
153
- type: "object",
154
- defaultValue: [
155
- {
156
- name: "Fill Murray",
157
- birthYear: 1950,
158
- profilePicture: ["https://www.fillmurray.com/200/300"],
159
- },
160
- {
161
- name: "Place Cage",
162
- birthYear: 1950,
163
- profilePicture: ["https://www.placecage.com/200/300"],
164
- },
165
- ],
166
- },
167
- children: {
168
- type: "slot",
169
- defaultValue: [
170
- {
171
- type: "component",
172
- name: "DynamicText",
173
- props: {
174
- selector: "celebrities.0.name",
175
- },
176
- },
177
- {
178
- type: "component",
179
- name: "DynamicImage",
180
- props: {
181
- selector: "celebrities.0.profilePicture",
182
- },
183
- },
184
- ],
185
- },
186
- },
187
- });
188
- var dynamicPropsWithoutTag = {
189
- propSelectors: {
190
- type: "object",
191
- // defaultValueHint: {},
192
- description: "An object whose keys are prop names and values are selector expressions. Use this to set any prop to a dynamic value.",
193
- },
194
- };
195
- var dynamicProps = __assign(__assign({}, dynamicPropsWithoutTag), { tag: {
196
- type: "string",
197
- // defaultValueHint: "div",
198
- description: "The HTML tag to use",
199
- } });
200
- // TODO Eventually we'll want to expose all the base HTML properties, but in the nicer way that we do within the studio.
201
- registerComponent__default["default"](DynamicElement, {
202
- name: "DynamicElement",
203
- importPath: thisModule,
204
- props: __assign(__assign({}, dynamicProps), { children: "slot" }),
205
- });
206
- registerComponent__default["default"](DynamicText, {
207
- name: "DynamicText",
208
- importPath: thisModule,
209
- props: __assign(__assign({}, dynamicProps), { selector: {
210
- type: "string",
211
- description: "The selector expression to use to get the text, such as: someVariable.0.someField",
212
- } }),
213
- });
214
- registerComponent__default["default"](DynamicImage, {
215
- name: "DynamicImage",
216
- importPath: thisModule,
217
- props: __assign(__assign({}, dynamicPropsWithoutTag), { selector: {
218
- type: "string",
219
- description: "The selector expression to use to get the image source URL, such as: someVariable.0.someField",
220
- } }),
221
- });
222
- var dynamicCollectionProps = __assign(__assign({}, dynamicProps), { selector: {
223
- type: "string",
224
- description: "The selector expression to use to get the array of data to loop over, such as: someVariable.0.someField",
225
- }, loopItemName: {
226
- type: "string",
227
- defaultValue: "item",
228
- description: "The name of the variable to use to store the current item in the loop",
229
- }, children: "slot" });
230
- registerComponent__default["default"](DynamicCollection, {
231
- name: "DynamicCollection",
232
- importPath: thisModule,
233
- props: dynamicCollectionProps,
234
- });
235
- var dynamicCollectionGridProps = __assign(__assign({}, dynamicCollectionProps), { columns: {
236
- type: "number",
237
- defaultValue: 2,
238
- description: "The number of columns to use in the grid",
239
- }, columnGap: {
240
- type: "number",
241
- defaultValue: 8,
242
- description: "The gap between columns",
243
- }, rowGap: {
244
- type: "number",
245
- defaultValue: 8,
246
- description: "The gap between rows",
247
- } });
248
- registerComponent__default["default"](DynamicCollectionGrid, {
249
- name: "DynamicCollectionGrid",
250
- importPath: thisModule,
251
- props: dynamicCollectionGridProps,
252
- });
253
-
254
- exports.DataContext = DataContext;
255
- exports.DataProvider = DataProvider;
256
- exports.DynamicCollection = DynamicCollection;
257
- exports.DynamicCollectionGrid = DynamicCollectionGrid;
258
- exports.DynamicElement = DynamicElement;
259
- exports.DynamicImage = DynamicImage;
260
- exports.DynamicText = DynamicText;
261
- exports.applySelector = applySelector;
262
- exports.dynamicCollectionGridProps = dynamicCollectionGridProps;
263
- exports.dynamicCollectionProps = dynamicCollectionProps;
264
- exports.useDataEnv = useDataEnv;
265
- exports.useSelector = useSelector;
266
- exports.useSelectors = useSelectors;
267
- //# sourceMappingURL=index.cjs.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.cjs.js","sources":["../../node_modules/tslib/tslib.es6.js","../../src/common.ts","../../src/Data.tsx"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from) {\r\n for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)\r\n to[j] = from[i];\r\n return to;\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","export const tuple = <T extends any[]>(...args: T): T => args;\n\nexport function ensure<T>(x: T | null | undefined): T {\n if (x === null || x === undefined) {\n debugger;\n throw new Error(`Value must not be undefined or null`);\n } else {\n return x;\n }\n}\n","/** @format */\n\nimport { repeatedElement } from \"@plasmicapp/host\";\nimport registerComponent from \"@plasmicapp/host/registerComponent\";\nimport React, {\n ComponentProps,\n createContext,\n createElement,\n CSSProperties,\n ReactNode,\n useContext,\n} from \"react\";\nimport { tuple } from \"./common\";\n\nexport type DataDict = Record<string, any>;\n\nexport const DataContext = createContext<DataDict | undefined>(undefined);\n\nexport function applySelector(\n rawData: DataDict | undefined,\n selector: string | undefined\n): any {\n if (!selector) {\n return undefined;\n }\n let curData = rawData;\n for (const key of selector.split(\".\")) {\n curData = curData?.[key];\n }\n return curData;\n}\n\nexport type SelectorDict = Record<string, string | undefined>;\n\nexport function useSelector(selector: string | undefined): any {\n const rawData = useDataEnv();\n return applySelector(rawData, selector);\n}\n\nexport function useSelectors(selectors: SelectorDict = {}): any {\n const rawData = useDataEnv();\n return Object.fromEntries(\n Object.entries(selectors)\n .filter(([key, selector]) => !!key && !!selector)\n .map(([key, selector]) => tuple(key, applySelector(rawData, selector)))\n );\n}\n\nexport function useDataEnv() {\n return useContext(DataContext);\n}\n\nexport interface DataProviderProps {\n name?: string;\n data?: any;\n children?: ReactNode;\n}\n\nexport function DataProvider({ name, data, children }: DataProviderProps) {\n const existingEnv = useDataEnv() ?? {};\n if (!name) {\n return <>{children}</>;\n } else {\n return (\n <DataContext.Provider value={{ ...existingEnv, [name]: data }}>\n {children}\n </DataContext.Provider>\n );\n }\n}\n\nexport interface CommonDynamicProps {\n className?: string;\n tag?: string;\n propSelectors?: SelectorDict;\n}\n\nexport function DynamicElement<\n Tag extends keyof JSX.IntrinsicElements = \"div\"\n>({\n tag = \"div\",\n className,\n children,\n propSelectors,\n ...props\n}: CommonDynamicProps & ComponentProps<Tag>) {\n const computed = useSelectors(propSelectors);\n return createElement(tag, {\n children,\n ...props,\n ...computed,\n className: className + \" \" + computed.className,\n });\n}\n\nexport function DynamicText({\n selector,\n propSelectors,\n ...props\n}: CommonDynamicProps & {\n selector?: string;\n}) {\n return (\n <DynamicElement\n {...props}\n propSelectors={{ ...propSelectors, children: selector }}\n >\n {/*This is the default text*/}\n (DynamicText requires a selector)\n </DynamicElement>\n );\n}\n\nexport function DynamicImage({\n selector,\n propSelectors,\n ...props\n}: CommonDynamicProps &\n ComponentProps<\"img\"> & {\n selector?: string;\n }) {\n return (\n <DynamicElement<\"img\">\n tag={\"img\"}\n loading={\"lazy\"}\n style={{\n objectFit: \"cover\",\n }}\n {...props}\n propSelectors={{ ...propSelectors, src: selector }}\n // Default image placeholder\n src=\"https://studio.plasmic.app/static/img/placeholder.png\"\n />\n );\n}\n\nexport interface DynamicCollectionProps extends CommonDynamicProps {\n children?: ReactNode;\n style?: CSSProperties;\n loopItemName?: string;\n keySelector?: string;\n selector?: string;\n data?: any;\n}\n\nexport function DynamicCollection({\n selector,\n loopItemName,\n children,\n data,\n keySelector,\n ...props\n}: DynamicCollectionProps) {\n // Defaults to an array of three items.\n const finalData = data ?? useSelector(selector) ?? [1, 2, 3];\n return (\n <DynamicElement {...props}>\n {finalData?.map?.((item: any, index: number) => (\n <DataProvider\n key={applySelector(item, keySelector) ?? index}\n name={loopItemName}\n data={item}\n >\n {repeatedElement(index === 0, children)}\n </DataProvider>\n ))}\n </DynamicElement>\n );\n}\n\nexport interface DynamicCollectionGridProps extends DynamicCollectionProps {\n columns?: number;\n columnGap?: number;\n rowGap?: number;\n}\n\nexport function DynamicCollectionGrid({\n columns,\n columnGap = 0,\n rowGap = 0,\n ...props\n}: DynamicCollectionGridProps) {\n return (\n <DynamicCollection\n {...props}\n style={{\n display: \"grid\",\n gridTemplateColumns: `repeat(${columns}, 1fr)`,\n columnGap: `${columnGap}px`,\n rowGap: `${rowGap}px`,\n }}\n />\n );\n}\n\nconst thisModule = \"@plasmicpkgs/plasmic-basic-components/Data\";\n\nregisterComponent(DataProvider, {\n name: \"DataProvider\",\n importPath: thisModule,\n // description: \"Makes some specified data available to the subtree in a context\",\n props: {\n name: {\n type: \"string\",\n defaultValue: \"celebrities\",\n description: \"The name of the variable to store the data in\",\n },\n data: {\n type: \"object\",\n defaultValue: [\n {\n name: \"Fill Murray\",\n birthYear: 1950,\n profilePicture: [\"https://www.fillmurray.com/200/300\"],\n },\n {\n name: \"Place Cage\",\n birthYear: 1950,\n profilePicture: [\"https://www.placecage.com/200/300\"],\n },\n ],\n },\n children: {\n type: \"slot\",\n defaultValue: [\n {\n type: \"component\",\n name: \"DynamicText\",\n props: {\n selector: \"celebrities.0.name\",\n },\n },\n {\n type: \"component\",\n name: \"DynamicImage\",\n props: {\n selector: \"celebrities.0.profilePicture\",\n },\n },\n ],\n },\n },\n});\n\nconst dynamicPropsWithoutTag = {\n propSelectors: {\n type: \"object\",\n // defaultValueHint: {},\n description:\n \"An object whose keys are prop names and values are selector expressions. Use this to set any prop to a dynamic value.\",\n },\n} as const;\n\nconst dynamicProps = {\n ...dynamicPropsWithoutTag,\n tag: {\n type: \"string\",\n // defaultValueHint: \"div\",\n description: \"The HTML tag to use\",\n },\n} as const;\n\n// TODO Eventually we'll want to expose all the base HTML properties, but in the nicer way that we do within the studio.\n\nregisterComponent(DynamicElement, {\n name: \"DynamicElement\",\n importPath: thisModule,\n props: { ...dynamicProps, children: \"slot\" },\n});\n\nregisterComponent(DynamicText, {\n name: \"DynamicText\",\n importPath: thisModule,\n props: {\n ...dynamicProps,\n selector: {\n type: \"string\",\n description:\n \"The selector expression to use to get the text, such as: someVariable.0.someField\",\n },\n },\n});\n\nregisterComponent(DynamicImage, {\n name: \"DynamicImage\",\n importPath: thisModule,\n props: {\n ...dynamicPropsWithoutTag,\n selector: {\n type: \"string\",\n description:\n \"The selector expression to use to get the image source URL, such as: someVariable.0.someField\",\n },\n },\n});\n\nexport const dynamicCollectionProps = {\n ...dynamicProps,\n selector: {\n type: \"string\",\n description:\n \"The selector expression to use to get the array of data to loop over, such as: someVariable.0.someField\",\n },\n loopItemName: {\n type: \"string\",\n defaultValue: \"item\",\n description:\n \"The name of the variable to use to store the current item in the loop\",\n },\n children: \"slot\",\n} as const;\n\nregisterComponent(DynamicCollection, {\n name: \"DynamicCollection\",\n importPath: thisModule,\n props: dynamicCollectionProps,\n});\n\nexport const dynamicCollectionGridProps = {\n ...dynamicCollectionProps,\n columns: {\n type: \"number\",\n defaultValue: 2,\n description: \"The number of columns to use in the grid\",\n },\n columnGap: {\n type: \"number\",\n defaultValue: 8,\n description: \"The gap between columns\",\n },\n rowGap: {\n type: \"number\",\n defaultValue: 8,\n description: \"The gap between rows\",\n },\n} as const;\n\nregisterComponent(DynamicCollectionGrid, {\n name: \"DynamicCollectionGrid\",\n importPath: thisModule,\n props: dynamicCollectionGridProps,\n});\n"],"names":["createContext","useContext","React","createElement","repeatedElement","registerComponent"],"mappings":";;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAiBA;AACO,IAAI,QAAQ,GAAG,WAAW;AACjC,IAAI,QAAQ,GAAG,MAAM,CAAC,MAAM,IAAI,SAAS,QAAQ,CAAC,CAAC,EAAE;AACrD,QAAQ,KAAK,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;AAC7D,YAAY,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;AAC7B,YAAY,KAAK,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AACzF,SAAS;AACT,QAAQ,OAAO,CAAC,CAAC;AACjB,MAAK;AACL,IAAI,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;AAC3C,EAAC;AACD;AACO,SAAS,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE;AAC7B,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;AACf,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;AACvF,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AACpB,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,OAAO,MAAM,CAAC,qBAAqB,KAAK,UAAU;AACvE,QAAQ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AAChF,YAAY,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AAC1F,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAClC,SAAS;AACT,IAAI,OAAO,CAAC,CAAC;AACb;;ACpDO,IAAM,KAAK,GAAG;IAAkB,cAAU;SAAV,UAAU,EAAV,qBAAU,EAAV,IAAU;QAAV,yBAAU;;IAAQ,OAAA,IAAI;AAAJ,CAAI;;ACA7D;IAgBa,WAAW,GAAGA,mBAAa,CAAuB,SAAS,EAAE;SAE1D,aAAa,CAC3B,OAA6B,EAC7B,QAA4B;IAE5B,IAAI,CAAC,QAAQ,EAAE;QACb,OAAO,SAAS,CAAC;KAClB;IACD,IAAI,OAAO,GAAG,OAAO,CAAC;IACtB,KAAkB,UAAmB,EAAnB,KAAA,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,EAAnB,cAAmB,EAAnB,IAAmB,EAAE;QAAlC,IAAM,GAAG,SAAA;QACZ,OAAO,GAAG,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAG,GAAG,CAAC,CAAC;KAC1B;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;SAIe,WAAW,CAAC,QAA4B;IACtD,IAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAC7B,OAAO,aAAa,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;AAC1C,CAAC;SAEe,YAAY,CAAC,SAA4B;IAA5B,0BAAA,EAAA,cAA4B;IACvD,IAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAC7B,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC;SACtB,MAAM,CAAC,UAAC,EAAe;YAAd,GAAG,QAAA,EAAE,QAAQ,QAAA;QAAM,OAAA,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,QAAQ;KAAA,CAAC;SAChD,GAAG,CAAC,UAAC,EAAe;YAAd,GAAG,QAAA,EAAE,QAAQ,QAAA;QAAM,OAAA,KAAK,CAAC,GAAG,EAAE,aAAa,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;KAAA,CAAC,CAC1E,CAAC;AACJ,CAAC;SAEe,UAAU;IACxB,OAAOC,gBAAU,CAAC,WAAW,CAAC,CAAC;AACjC,CAAC;SAQe,YAAY,CAAC,EAA2C;;;QAAzC,IAAI,UAAA,EAAE,IAAI,UAAA,EAAE,QAAQ,cAAA;IACjD,IAAM,WAAW,SAAG,UAAU,EAAE,mCAAI,EAAE,CAAC;IACvC,IAAI,CAAC,IAAI,EAAE;QACT,OAAOC,kFAAG,QAAQ,CAAI,CAAC;KACxB;SAAM;QACL,QACEA,wCAAC,WAAW,CAAC,QAAQ,IAAC,KAAK,wBAAO,WAAW,gBAAG,IAAI,IAAG,IAAI,UACxD,QAAQ,CACY,EACvB;KACH;AACH,CAAC;SAQe,cAAc,CAE5B,EAMyC;IALzC,IAAA,WAAW,EAAX,GAAG,mBAAG,KAAK,KAAA,EACX,SAAS,eAAA,EACT,QAAQ,cAAA,EACR,aAAa,mBAAA,EACV,KAAK,cALR,iDAMD,CADS;IAER,IAAM,QAAQ,GAAG,YAAY,CAAC,aAAa,CAAC,CAAC;IAC7C,OAAOC,mBAAa,CAAC,GAAG,+BACtB,QAAQ,UAAA,IACL,KAAK,GACL,QAAQ,KACX,SAAS,EAAE,SAAS,GAAG,GAAG,GAAG,QAAQ,CAAC,SAAS,IAC/C,CAAC;AACL,CAAC;SAEe,WAAW,CAAC,EAM3B;IALC,IAAA,QAAQ,cAAA,EACR,aAAa,mBAAA,EACV,KAAK,cAHkB,6BAI3B,CADS;IAIR,QACED,wCAAC,cAAc,eACT,KAAK,IACT,aAAa,wBAAO,aAAa,KAAE,QAAQ,EAAE,QAAQ,4CAItC,EACjB;AACJ,CAAC;SAEe,YAAY,CAAC,EAO1B;IAND,IAAA,QAAQ,cAAA,EACR,aAAa,mBAAA,EACV,KAAK,cAHmB,6BAI5B,CADS;IAKR,QACEA,wCAAC,cAAc,aACb,GAAG,EAAE,KAAK,EACV,OAAO,EAAE,MAAM,EACf,KAAK,EAAE;YACL,SAAS,EAAE,OAAO;SACnB,IACG,KAAK,IACT,aAAa,wBAAO,aAAa,KAAE,GAAG,EAAE,QAAQ;;QAEhD,GAAG,EAAC,uDAAuD,IAC3D,EACF;AACJ,CAAC;SAWe,iBAAiB,CAAC,EAOT;;IANvB,IAAA,QAAQ,cAAA,EACR,YAAY,kBAAA,EACZ,QAAQ,cAAA,EACR,IAAI,UAAA,EACJ,WAAW,iBAAA,EACR,KAAK,cANwB,+DAOjC,CADS;;IAGR,IAAM,SAAS,SAAG,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,WAAW,CAAC,QAAQ,CAAC,mCAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC7D,QACEA,wCAAC,cAAc,eAAK,KAAK,SACtB,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,GAAG,+CAAd,SAAS,EAAQ,UAAC,IAAS,EAAE,KAAa;;QAAK,QAC9CA,wCAAC,YAAY,IACX,GAAG,QAAE,aAAa,CAAC,IAAI,EAAE,WAAW,CAAC,mCAAI,KAAK,EAC9C,IAAI,EAAE,YAAY,EAClB,IAAI,EAAE,IAAI,IAETE,oBAAe,CAAC,KAAK,KAAK,CAAC,EAAE,QAAQ,CAAC,CAC1B,EAChB;KAAA,EACc,EACjB;AACJ,CAAC;SAQe,qBAAqB,CAAC,EAKT;IAJ3B,IAAA,OAAO,aAAA,EACP,iBAAa,EAAb,SAAS,mBAAG,CAAC,KAAA,EACb,cAAU,EAAV,MAAM,mBAAG,CAAC,KAAA,EACP,KAAK,cAJ4B,kCAKrC,CADS;IAER,QACEF,wCAAC,iBAAiB,eACZ,KAAK,IACT,KAAK,EAAE;YACL,OAAO,EAAE,MAAM;YACf,mBAAmB,EAAE,YAAU,OAAO,WAAQ;YAC9C,SAAS,EAAK,SAAS,OAAI;YAC3B,MAAM,EAAK,MAAM,OAAI;SACtB,IACD,EACF;AACJ,CAAC;AAED,IAAM,UAAU,GAAG,4CAA4C,CAAC;AAEhEG,qCAAiB,CAAC,YAAY,EAAE;IAC9B,IAAI,EAAE,cAAc;IACpB,UAAU,EAAE,UAAU;;IAEtB,KAAK,EAAE;QACL,IAAI,EAAE;YACJ,IAAI,EAAE,QAAQ;YACd,YAAY,EAAE,aAAa;YAC3B,WAAW,EAAE,+CAA+C;SAC7D;QACD,IAAI,EAAE;YACJ,IAAI,EAAE,QAAQ;YACd,YAAY,EAAE;gBACZ;oBACE,IAAI,EAAE,aAAa;oBACnB,SAAS,EAAE,IAAI;oBACf,cAAc,EAAE,CAAC,oCAAoC,CAAC;iBACvD;gBACD;oBACE,IAAI,EAAE,YAAY;oBAClB,SAAS,EAAE,IAAI;oBACf,cAAc,EAAE,CAAC,mCAAmC,CAAC;iBACtD;aACF;SACF;QACD,QAAQ,EAAE;YACR,IAAI,EAAE,MAAM;YACZ,YAAY,EAAE;gBACZ;oBACE,IAAI,EAAE,WAAW;oBACjB,IAAI,EAAE,aAAa;oBACnB,KAAK,EAAE;wBACL,QAAQ,EAAE,oBAAoB;qBAC/B;iBACF;gBACD;oBACE,IAAI,EAAE,WAAW;oBACjB,IAAI,EAAE,cAAc;oBACpB,KAAK,EAAE;wBACL,QAAQ,EAAE,8BAA8B;qBACzC;iBACF;aACF;SACF;KACF;CACF,CAAC,CAAC;AAEH,IAAM,sBAAsB,GAAG;IAC7B,aAAa,EAAE;QACb,IAAI,EAAE,QAAQ;;QAEd,WAAW,EACT,uHAAuH;KAC1H;CACO,CAAC;AAEX,IAAM,YAAY,GAAG,sBAChB,sBAAsB,KACzB,GAAG,EAAE;QACH,IAAI,EAAE,QAAQ;;QAEd,WAAW,EAAE,qBAAqB;KACnC,GACO,CAAC;AAEX;AAEAA,qCAAiB,CAAC,cAAc,EAAE;IAChC,IAAI,EAAE,gBAAgB;IACtB,UAAU,EAAE,UAAU;IACtB,KAAK,wBAAO,YAAY,KAAE,QAAQ,EAAE,MAAM,GAAE;CAC7C,CAAC,CAAC;AAEHA,qCAAiB,CAAC,WAAW,EAAE;IAC7B,IAAI,EAAE,aAAa;IACnB,UAAU,EAAE,UAAU;IACtB,KAAK,wBACA,YAAY,KACf,QAAQ,EAAE;YACR,IAAI,EAAE,QAAQ;YACd,WAAW,EACT,mFAAmF;SACtF,GACF;CACF,CAAC,CAAC;AAEHA,qCAAiB,CAAC,YAAY,EAAE;IAC9B,IAAI,EAAE,cAAc;IACpB,UAAU,EAAE,UAAU;IACtB,KAAK,wBACA,sBAAsB,KACzB,QAAQ,EAAE;YACR,IAAI,EAAE,QAAQ;YACd,WAAW,EACT,+FAA+F;SAClG,GACF;CACF,CAAC,CAAC;IAEU,sBAAsB,GAAG,sBACjC,YAAY,KACf,QAAQ,EAAE;QACR,IAAI,EAAE,QAAQ;QACd,WAAW,EACT,yGAAyG;KAC5G,EACD,YAAY,EAAE;QACZ,IAAI,EAAE,QAAQ;QACd,YAAY,EAAE,MAAM;QACpB,WAAW,EACT,uEAAuE;KAC1E,EACD,QAAQ,EAAE,MAAM,IACP;AAEXA,qCAAiB,CAAC,iBAAiB,EAAE;IACnC,IAAI,EAAE,mBAAmB;IACzB,UAAU,EAAE,UAAU;IACtB,KAAK,EAAE,sBAAsB;CAC9B,CAAC,CAAC;IAEU,0BAA0B,GAAG,sBACrC,sBAAsB,KACzB,OAAO,EAAE;QACP,IAAI,EAAE,QAAQ;QACd,YAAY,EAAE,CAAC;QACf,WAAW,EAAE,0CAA0C;KACxD,EACD,SAAS,EAAE;QACT,IAAI,EAAE,QAAQ;QACd,YAAY,EAAE,CAAC;QACf,WAAW,EAAE,yBAAyB;KACvC,EACD,MAAM,EAAE;QACN,IAAI,EAAE,QAAQ;QACd,YAAY,EAAE,CAAC;QACf,WAAW,EAAE,sBAAsB;KACpC,IACQ;AAEXA,qCAAiB,CAAC,qBAAqB,EAAE;IACvC,IAAI,EAAE,uBAAuB;IAC7B,UAAU,EAAE,UAAU;IACtB,KAAK,EAAE,0BAA0B;CAClC,CAAC;;;;;;;;;;;;;;;;"}