@plasmicpkgs/antd5 0.0.148 → 0.0.150
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/.tsbuildinfo +1 -1
- package/dist/antd.esm.js +63 -6
- package/dist/antd.esm.js.map +1 -1
- package/dist/index.js +63 -6
- package/dist/index.js.map +1 -1
- package/dist/registerModal.d.ts +2 -1
- package/package.json +3 -3
- package/skinny/registerModal.cjs.js +63 -6
- package/skinny/registerModal.cjs.js.map +1 -1
- package/skinny/registerModal.d.ts +2 -1
- package/skinny/registerModal.esm.js +64 -7
- package/skinny/registerModal.esm.js.map +1 -1
package/dist/registerModal.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Modal } from "antd";
|
|
2
|
-
import React from "react";
|
|
2
|
+
import React, { ReactElement } from "react";
|
|
3
3
|
import { Registerable } from "./utils";
|
|
4
4
|
export declare function AntdModal(props: React.ComponentProps<typeof Modal> & {
|
|
5
5
|
onOpenChange?: (open: boolean) => void;
|
|
@@ -7,5 +7,6 @@ export declare function AntdModal(props: React.ComponentProps<typeof Modal> & {
|
|
|
7
7
|
modalScopeClassName: string;
|
|
8
8
|
wrapClassName: string;
|
|
9
9
|
hideFooter?: boolean;
|
|
10
|
+
trigger?: ReactElement;
|
|
10
11
|
}): React.JSX.Element;
|
|
11
12
|
export declare function registerModal(loader?: Registerable): void;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@plasmicpkgs/antd5",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.150",
|
|
4
4
|
"description": "Plasmic registration calls for antd components",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -65,7 +65,7 @@
|
|
|
65
65
|
"@plasmicapp/data-sources": "0.1.128",
|
|
66
66
|
"@plasmicapp/host": "1.0.173",
|
|
67
67
|
"@plasmicapp/query": "0.1.74",
|
|
68
|
-
"@plasmicapp/react-web": "0.2.
|
|
68
|
+
"@plasmicapp/react-web": "0.2.273",
|
|
69
69
|
"@rollup/plugin-commonjs": "^11.0.0",
|
|
70
70
|
"@rollup/plugin-json": "^4.0.0",
|
|
71
71
|
"@rollup/plugin-node-resolve": "^9.0.0",
|
|
@@ -102,5 +102,5 @@
|
|
|
102
102
|
"publishConfig": {
|
|
103
103
|
"access": "public"
|
|
104
104
|
},
|
|
105
|
-
"gitHead": "
|
|
105
|
+
"gitHead": "4a2a167f2e3c2cdedaebb3d25cba716380c505b4"
|
|
106
106
|
}
|
|
@@ -41,29 +41,48 @@ var __objRest = (source, exclude) => {
|
|
|
41
41
|
}
|
|
42
42
|
return target;
|
|
43
43
|
};
|
|
44
|
+
const styleSections = [
|
|
45
|
+
"visibility",
|
|
46
|
+
"typography",
|
|
47
|
+
"spacing",
|
|
48
|
+
"background",
|
|
49
|
+
"transform",
|
|
50
|
+
"transitions",
|
|
51
|
+
"layout",
|
|
52
|
+
"overflow",
|
|
53
|
+
"border",
|
|
54
|
+
"shadows",
|
|
55
|
+
"effects"
|
|
56
|
+
];
|
|
44
57
|
function AntdModal(props) {
|
|
58
|
+
const [isOpen, setIsOpen] = React.useState(false);
|
|
45
59
|
const _a = props, {
|
|
46
60
|
onOpenChange,
|
|
47
61
|
onOk,
|
|
48
62
|
onCancel,
|
|
49
63
|
open,
|
|
64
|
+
width,
|
|
50
65
|
footer,
|
|
51
66
|
hideFooter,
|
|
52
67
|
modalScopeClassName,
|
|
53
|
-
wrapClassName
|
|
68
|
+
wrapClassName,
|
|
69
|
+
trigger
|
|
54
70
|
} = _a, rest = __objRest(_a, [
|
|
55
71
|
"onOpenChange",
|
|
56
72
|
"onOk",
|
|
57
73
|
"onCancel",
|
|
58
74
|
"open",
|
|
75
|
+
"width",
|
|
59
76
|
"footer",
|
|
60
77
|
"hideFooter",
|
|
61
78
|
"modalScopeClassName",
|
|
62
|
-
"wrapClassName"
|
|
79
|
+
"wrapClassName",
|
|
80
|
+
"trigger"
|
|
63
81
|
]);
|
|
64
82
|
const memoOnOk = React__default.default.useMemo(() => {
|
|
65
83
|
if (onOpenChange || onOk) {
|
|
66
84
|
return (e) => {
|
|
85
|
+
setIsOpen(false);
|
|
67
86
|
onOpenChange == null ? void 0 : onOpenChange(false);
|
|
68
87
|
onOk == null ? void 0 : onOk(e);
|
|
69
88
|
};
|
|
@@ -74,6 +93,7 @@ function AntdModal(props) {
|
|
|
74
93
|
const memoOnCancel = React__default.default.useMemo(() => {
|
|
75
94
|
if (onOpenChange || onCancel) {
|
|
76
95
|
return (e) => {
|
|
96
|
+
setIsOpen(false);
|
|
77
97
|
onOpenChange == null ? void 0 : onOpenChange(false);
|
|
78
98
|
onCancel == null ? void 0 : onCancel(e);
|
|
79
99
|
};
|
|
@@ -81,27 +101,47 @@ function AntdModal(props) {
|
|
|
81
101
|
return void 0;
|
|
82
102
|
}
|
|
83
103
|
}, [onOpenChange, onCancel]);
|
|
84
|
-
|
|
104
|
+
const widthProp = React.useMemo(() => {
|
|
105
|
+
if (!width)
|
|
106
|
+
return void 0;
|
|
107
|
+
if (typeof width === "number")
|
|
108
|
+
return width;
|
|
109
|
+
if (typeof width !== "string")
|
|
110
|
+
return void 0;
|
|
111
|
+
if (/^\d+$/.test(width)) {
|
|
112
|
+
return +width;
|
|
113
|
+
}
|
|
114
|
+
return width;
|
|
115
|
+
}, [width]);
|
|
116
|
+
return /* @__PURE__ */ React__default.default.createElement(React__default.default.Fragment, null, /* @__PURE__ */ React__default.default.createElement(
|
|
85
117
|
antd.Modal,
|
|
86
118
|
__spreadProps(__spreadValues({}, rest), {
|
|
87
119
|
onOk: memoOnOk,
|
|
120
|
+
width: widthProp,
|
|
88
121
|
onCancel: memoOnCancel,
|
|
89
|
-
open,
|
|
122
|
+
open: isOpen || open,
|
|
90
123
|
footer: hideFooter ? null : footer != null ? footer : void 0,
|
|
91
124
|
wrapClassName,
|
|
92
125
|
className: `${props.className} ${props.defaultStylesClassName} ${modalScopeClassName}`
|
|
93
126
|
})
|
|
94
|
-
);
|
|
127
|
+
), trigger ? /* @__PURE__ */ React__default.default.createElement("div", { onClick: () => setIsOpen(true) }, trigger) : null);
|
|
95
128
|
}
|
|
96
129
|
function registerModal(loader) {
|
|
97
130
|
utils.registerComponentHelper(loader, AntdModal, {
|
|
98
131
|
name: "plasmic-antd5-modal",
|
|
99
132
|
displayName: "Modal",
|
|
133
|
+
styleSections,
|
|
100
134
|
description: "[See tutorial video](https://www.youtube.com/watch?v=TkjxNJIFun8)",
|
|
101
135
|
props: {
|
|
102
136
|
open: {
|
|
103
137
|
type: "boolean"
|
|
104
138
|
},
|
|
139
|
+
width: {
|
|
140
|
+
type: "string",
|
|
141
|
+
defaultValueHint: "520px",
|
|
142
|
+
description: "Change the width of the modal",
|
|
143
|
+
helpText: "Default unit is px. You can also use % or other units for width."
|
|
144
|
+
},
|
|
105
145
|
children: {
|
|
106
146
|
type: "slot",
|
|
107
147
|
defaultValue: {
|
|
@@ -121,6 +161,22 @@ function registerModal(loader) {
|
|
|
121
161
|
return (_a = ps.hideFooter) != null ? _a : false;
|
|
122
162
|
}
|
|
123
163
|
},
|
|
164
|
+
trigger: __spreadValues({
|
|
165
|
+
type: "slot",
|
|
166
|
+
hidePlaceholder: true,
|
|
167
|
+
defaultValue: {
|
|
168
|
+
type: "component",
|
|
169
|
+
name: "plasmic-antd5-button",
|
|
170
|
+
props: {
|
|
171
|
+
children: {
|
|
172
|
+
type: "text",
|
|
173
|
+
value: "Show modal"
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
}, {
|
|
178
|
+
mergeWithParent: true
|
|
179
|
+
}),
|
|
124
180
|
closeIcon: {
|
|
125
181
|
type: "slot",
|
|
126
182
|
hidePlaceholder: true
|
|
@@ -154,7 +210,7 @@ function registerModal(loader) {
|
|
|
154
210
|
},
|
|
155
211
|
wrapClassName: {
|
|
156
212
|
type: "class",
|
|
157
|
-
displayName: "Modal
|
|
213
|
+
displayName: "Modal overlay",
|
|
158
214
|
styleSections: ["background"]
|
|
159
215
|
},
|
|
160
216
|
modalScopeClassName: {
|
|
@@ -165,6 +221,7 @@ function registerModal(loader) {
|
|
|
165
221
|
type: "class",
|
|
166
222
|
displayName: "Modal content",
|
|
167
223
|
noSelf: true,
|
|
224
|
+
styleSections,
|
|
168
225
|
selectors: [
|
|
169
226
|
{
|
|
170
227
|
selector: ":modal .ant-modal-content",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registerModal.cjs.js","sources":["../src/registerModal.tsx"],"sourcesContent":["import { Modal } from \"antd\";\nimport React from \"react\";\nimport { Registerable, registerComponentHelper } from \"./utils\";\n\nexport function AntdModal(\n props: React.ComponentProps<typeof Modal> & {\n onOpenChange?: (open: boolean) => void;\n defaultStylesClassName?: string;\n modalScopeClassName: string;\n wrapClassName: string;\n hideFooter?: boolean;\n }\n) {\n const {\n onOpenChange,\n onOk,\n onCancel,\n open,\n footer,\n hideFooter,\n modalScopeClassName,\n wrapClassName,\n ...rest\n } = props;\n const memoOnOk = React.useMemo(() => {\n if (onOpenChange || onOk) {\n return (e: React.MouseEvent<HTMLButtonElement>) => {\n onOpenChange?.(false);\n onOk?.(e);\n };\n } else {\n return undefined;\n }\n }, [onOpenChange, onOk]);\n const memoOnCancel = React.useMemo(() => {\n if (onOpenChange || onCancel) {\n return (e: React.MouseEvent<HTMLButtonElement>) => {\n onOpenChange?.(false);\n onCancel?.(e);\n };\n } else {\n return undefined;\n }\n }, [onOpenChange, onCancel]);\n return (\n <Modal\n {...rest}\n onOk={memoOnOk}\n onCancel={memoOnCancel}\n open={open}\n footer={hideFooter ? null : footer ?? undefined}\n wrapClassName={wrapClassName}\n className={`${props.className} ${props.defaultStylesClassName} ${modalScopeClassName}`}\n />\n );\n}\n\nexport function registerModal(loader?: Registerable) {\n registerComponentHelper(loader, AntdModal, {\n name: \"plasmic-antd5-modal\",\n displayName: \"Modal\",\n description:\n \"[See tutorial video](https://www.youtube.com/watch?v=TkjxNJIFun8)\",\n props: {\n open: {\n type: \"boolean\",\n },\n children: {\n type: \"slot\",\n defaultValue: {\n type: \"vbox\",\n children: [\"Modal content\"],\n },\n },\n title: {\n type: \"slot\",\n defaultValue: \"Modal title\",\n },\n footer: {\n type: \"slot\",\n hidePlaceholder: true,\n hidden: (ps) => ps.hideFooter ?? false,\n },\n closeIcon: {\n type: \"slot\",\n hidePlaceholder: true,\n },\n onOk: {\n type: \"eventHandler\",\n argTypes: [],\n } as any,\n onCancel: {\n type: \"eventHandler\",\n argTypes: [],\n } as any,\n okText: {\n type: \"string\",\n hidden: (ps) => !!ps.footer,\n advanced: true,\n },\n cancelText: {\n type: \"string\",\n hidden: (ps) => !!ps.footer,\n advanced: true,\n },\n hideFooter: {\n type: \"boolean\",\n description: \"Hide the modal footer slot\",\n advanced: true,\n },\n onOpenChange: {\n type: \"eventHandler\",\n argTypes: [{ name: \"open\", type: \"boolean\" }],\n } as any,\n wrapClassName: {\n type: \"class\",\n displayName: \"Modal container\",\n styleSections: [\"background\"],\n },\n modalScopeClassName: {\n type: \"styleScopeClass\",\n scopeName: \"modal\",\n } as any,\n modalContentClassName: {\n type: \"class\",\n displayName: \"Modal content\",\n noSelf: true,\n selectors: [\n {\n selector: \":modal .ant-modal-content\",\n label: \"Base\",\n },\n ],\n } as any,\n closeButtonClassName: {\n type: \"class\",\n displayName: \"Close button\",\n noSelf: true,\n selectors: [\n {\n selector: \":modal .ant-modal-close\",\n label: \"Base\",\n },\n ],\n advanced: true,\n } as any,\n defaultStylesClassName: {\n type: \"themeResetClass\",\n } as any,\n },\n states: {\n open: {\n type: \"writable\",\n valueProp: \"open\",\n onChangeProp: \"onOpenChange\",\n variableType: \"boolean\",\n },\n },\n templates: {\n \"Modal Form\": {\n props: {\n children: {\n type: \"component\",\n name: \"plasmic-antd5-form\",\n },\n hideFooter: true,\n },\n },\n \"Generic Modal\": {},\n },\n importPath: \"@plasmicpkgs/antd5/skinny/registerModal\",\n importName: \"AntdModal\",\n });\n}\n"],"names":["React","Modal","registerComponentHelper"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"registerModal.cjs.js","sources":["../src/registerModal.tsx"],"sourcesContent":["import type { StyleSection } from \"@plasmicapp/host/registerComponent\";\nimport { Modal } from \"antd\";\nimport React, { ReactElement, useState, useMemo } from \"react\";\nimport { Registerable, registerComponentHelper } from \"./utils\";\n\n// hide sizing section, as width can only be set via a width prop, and not css!\nconst styleSections: StyleSection[] = [\n \"visibility\",\n \"typography\",\n \"spacing\",\n \"background\",\n \"transform\",\n \"transitions\",\n \"layout\",\n \"overflow\",\n \"border\",\n \"shadows\",\n \"effects\",\n];\n\nexport function AntdModal(\n props: React.ComponentProps<typeof Modal> & {\n onOpenChange?: (open: boolean) => void;\n defaultStylesClassName?: string;\n modalScopeClassName: string;\n wrapClassName: string;\n hideFooter?: boolean;\n trigger?: ReactElement;\n }\n) {\n const [isOpen, setIsOpen] = useState(false);\n\n const {\n onOpenChange,\n onOk,\n onCancel,\n open,\n width,\n footer,\n hideFooter,\n modalScopeClassName,\n wrapClassName,\n trigger,\n ...rest\n } = props;\n\n const memoOnOk = React.useMemo(() => {\n if (onOpenChange || onOk) {\n return (e: React.MouseEvent<HTMLButtonElement>) => {\n setIsOpen(false);\n onOpenChange?.(false);\n onOk?.(e);\n };\n } else {\n return undefined;\n }\n }, [onOpenChange, onOk]);\n const memoOnCancel = React.useMemo(() => {\n if (onOpenChange || onCancel) {\n return (e: React.MouseEvent<HTMLButtonElement>) => {\n setIsOpen(false);\n onOpenChange?.(false);\n onCancel?.(e);\n };\n } else {\n return undefined;\n }\n }, [onOpenChange, onCancel]);\n\n const widthProp = useMemo(() => {\n if (!width) return undefined;\n if (typeof width === \"number\") return width;\n if (typeof width !== \"string\") return undefined;\n if (/^\\d+$/.test(width)) {\n return +width;\n }\n return width;\n }, [width]);\n\n return (\n <>\n <Modal\n {...rest}\n onOk={memoOnOk}\n width={widthProp}\n onCancel={memoOnCancel}\n open={isOpen || open}\n footer={hideFooter ? null : footer ?? undefined}\n wrapClassName={wrapClassName}\n className={`${props.className} ${props.defaultStylesClassName} ${modalScopeClassName}`}\n />\n {trigger ? <div onClick={() => setIsOpen(true)}>{trigger}</div> : null}\n </>\n );\n}\n\nexport function registerModal(loader?: Registerable) {\n registerComponentHelper(loader, AntdModal, {\n name: \"plasmic-antd5-modal\",\n displayName: \"Modal\",\n styleSections,\n description:\n \"[See tutorial video](https://www.youtube.com/watch?v=TkjxNJIFun8)\",\n props: {\n open: {\n type: \"boolean\",\n },\n width: {\n type: \"string\",\n defaultValueHint: \"520px\",\n description: \"Change the width of the modal\",\n helpText:\n \"Default unit is px. You can also use % or other units for width.\",\n },\n children: {\n type: \"slot\",\n defaultValue: {\n type: \"vbox\",\n children: [\"Modal content\"],\n },\n },\n title: {\n type: \"slot\",\n defaultValue: \"Modal title\",\n },\n footer: {\n type: \"slot\",\n hidePlaceholder: true,\n hidden: (ps) => ps.hideFooter ?? false,\n },\n trigger: {\n type: \"slot\",\n hidePlaceholder: true,\n defaultValue: {\n type: \"component\",\n name: \"plasmic-antd5-button\",\n props: {\n children: {\n type: \"text\",\n value: \"Show modal\",\n },\n },\n },\n ...({\n mergeWithParent: true,\n } as any),\n },\n closeIcon: {\n type: \"slot\",\n hidePlaceholder: true,\n },\n onOk: {\n type: \"eventHandler\",\n argTypes: [],\n } as any,\n onCancel: {\n type: \"eventHandler\",\n argTypes: [],\n } as any,\n okText: {\n type: \"string\",\n hidden: (ps) => !!ps.footer,\n advanced: true,\n },\n cancelText: {\n type: \"string\",\n hidden: (ps) => !!ps.footer,\n advanced: true,\n },\n hideFooter: {\n type: \"boolean\",\n description: \"Hide the modal footer slot\",\n advanced: true,\n },\n onOpenChange: {\n type: \"eventHandler\",\n argTypes: [{ name: \"open\", type: \"boolean\" }],\n } as any,\n wrapClassName: {\n type: \"class\",\n displayName: \"Modal overlay\",\n styleSections: [\"background\"],\n },\n modalScopeClassName: {\n type: \"styleScopeClass\",\n scopeName: \"modal\",\n } as any,\n modalContentClassName: {\n type: \"class\",\n displayName: \"Modal content\",\n noSelf: true,\n styleSections,\n selectors: [\n {\n selector: \":modal .ant-modal-content\",\n label: \"Base\",\n },\n ],\n } as any,\n closeButtonClassName: {\n type: \"class\",\n displayName: \"Close button\",\n noSelf: true,\n selectors: [\n {\n selector: \":modal .ant-modal-close\",\n label: \"Base\",\n },\n ],\n advanced: true,\n } as any,\n defaultStylesClassName: {\n type: \"themeResetClass\",\n } as any,\n },\n states: {\n open: {\n type: \"writable\",\n valueProp: \"open\",\n onChangeProp: \"onOpenChange\",\n variableType: \"boolean\",\n },\n },\n templates: {\n \"Modal Form\": {\n props: {\n children: {\n type: \"component\",\n name: \"plasmic-antd5-form\",\n },\n hideFooter: true,\n },\n },\n \"Generic Modal\": {},\n },\n importPath: \"@plasmicpkgs/antd5/skinny/registerModal\",\n importName: \"AntdModal\",\n });\n}\n"],"names":["useState","React","useMemo","Modal","registerComponentHelper"],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Modal } from "antd";
|
|
2
|
-
import React from "react";
|
|
2
|
+
import React, { ReactElement } from "react";
|
|
3
3
|
import { Registerable } from "./utils";
|
|
4
4
|
export declare function AntdModal(props: React.ComponentProps<typeof Modal> & {
|
|
5
5
|
onOpenChange?: (open: boolean) => void;
|
|
@@ -7,5 +7,6 @@ export declare function AntdModal(props: React.ComponentProps<typeof Modal> & {
|
|
|
7
7
|
modalScopeClassName: string;
|
|
8
8
|
wrapClassName: string;
|
|
9
9
|
hideFooter?: boolean;
|
|
10
|
+
trigger?: ReactElement;
|
|
10
11
|
}): React.JSX.Element;
|
|
11
12
|
export declare function registerModal(loader?: Registerable): void;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Modal } from 'antd';
|
|
2
|
-
import React from 'react';
|
|
2
|
+
import React, { useState, useMemo } from 'react';
|
|
3
3
|
import { r as registerComponentHelper } from './utils-7d8f2418.esm.js';
|
|
4
4
|
import '@plasmicapp/host/registerComponent';
|
|
5
5
|
import '@plasmicapp/host/registerGlobalContext';
|
|
@@ -35,29 +35,48 @@ var __objRest = (source, exclude) => {
|
|
|
35
35
|
}
|
|
36
36
|
return target;
|
|
37
37
|
};
|
|
38
|
+
const styleSections = [
|
|
39
|
+
"visibility",
|
|
40
|
+
"typography",
|
|
41
|
+
"spacing",
|
|
42
|
+
"background",
|
|
43
|
+
"transform",
|
|
44
|
+
"transitions",
|
|
45
|
+
"layout",
|
|
46
|
+
"overflow",
|
|
47
|
+
"border",
|
|
48
|
+
"shadows",
|
|
49
|
+
"effects"
|
|
50
|
+
];
|
|
38
51
|
function AntdModal(props) {
|
|
52
|
+
const [isOpen, setIsOpen] = useState(false);
|
|
39
53
|
const _a = props, {
|
|
40
54
|
onOpenChange,
|
|
41
55
|
onOk,
|
|
42
56
|
onCancel,
|
|
43
57
|
open,
|
|
58
|
+
width,
|
|
44
59
|
footer,
|
|
45
60
|
hideFooter,
|
|
46
61
|
modalScopeClassName,
|
|
47
|
-
wrapClassName
|
|
62
|
+
wrapClassName,
|
|
63
|
+
trigger
|
|
48
64
|
} = _a, rest = __objRest(_a, [
|
|
49
65
|
"onOpenChange",
|
|
50
66
|
"onOk",
|
|
51
67
|
"onCancel",
|
|
52
68
|
"open",
|
|
69
|
+
"width",
|
|
53
70
|
"footer",
|
|
54
71
|
"hideFooter",
|
|
55
72
|
"modalScopeClassName",
|
|
56
|
-
"wrapClassName"
|
|
73
|
+
"wrapClassName",
|
|
74
|
+
"trigger"
|
|
57
75
|
]);
|
|
58
76
|
const memoOnOk = React.useMemo(() => {
|
|
59
77
|
if (onOpenChange || onOk) {
|
|
60
78
|
return (e) => {
|
|
79
|
+
setIsOpen(false);
|
|
61
80
|
onOpenChange == null ? void 0 : onOpenChange(false);
|
|
62
81
|
onOk == null ? void 0 : onOk(e);
|
|
63
82
|
};
|
|
@@ -68,6 +87,7 @@ function AntdModal(props) {
|
|
|
68
87
|
const memoOnCancel = React.useMemo(() => {
|
|
69
88
|
if (onOpenChange || onCancel) {
|
|
70
89
|
return (e) => {
|
|
90
|
+
setIsOpen(false);
|
|
71
91
|
onOpenChange == null ? void 0 : onOpenChange(false);
|
|
72
92
|
onCancel == null ? void 0 : onCancel(e);
|
|
73
93
|
};
|
|
@@ -75,27 +95,47 @@ function AntdModal(props) {
|
|
|
75
95
|
return void 0;
|
|
76
96
|
}
|
|
77
97
|
}, [onOpenChange, onCancel]);
|
|
78
|
-
|
|
98
|
+
const widthProp = useMemo(() => {
|
|
99
|
+
if (!width)
|
|
100
|
+
return void 0;
|
|
101
|
+
if (typeof width === "number")
|
|
102
|
+
return width;
|
|
103
|
+
if (typeof width !== "string")
|
|
104
|
+
return void 0;
|
|
105
|
+
if (/^\d+$/.test(width)) {
|
|
106
|
+
return +width;
|
|
107
|
+
}
|
|
108
|
+
return width;
|
|
109
|
+
}, [width]);
|
|
110
|
+
return /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(
|
|
79
111
|
Modal,
|
|
80
112
|
__spreadProps(__spreadValues({}, rest), {
|
|
81
113
|
onOk: memoOnOk,
|
|
114
|
+
width: widthProp,
|
|
82
115
|
onCancel: memoOnCancel,
|
|
83
|
-
open,
|
|
116
|
+
open: isOpen || open,
|
|
84
117
|
footer: hideFooter ? null : footer != null ? footer : void 0,
|
|
85
118
|
wrapClassName,
|
|
86
119
|
className: `${props.className} ${props.defaultStylesClassName} ${modalScopeClassName}`
|
|
87
120
|
})
|
|
88
|
-
);
|
|
121
|
+
), trigger ? /* @__PURE__ */ React.createElement("div", { onClick: () => setIsOpen(true) }, trigger) : null);
|
|
89
122
|
}
|
|
90
123
|
function registerModal(loader) {
|
|
91
124
|
registerComponentHelper(loader, AntdModal, {
|
|
92
125
|
name: "plasmic-antd5-modal",
|
|
93
126
|
displayName: "Modal",
|
|
127
|
+
styleSections,
|
|
94
128
|
description: "[See tutorial video](https://www.youtube.com/watch?v=TkjxNJIFun8)",
|
|
95
129
|
props: {
|
|
96
130
|
open: {
|
|
97
131
|
type: "boolean"
|
|
98
132
|
},
|
|
133
|
+
width: {
|
|
134
|
+
type: "string",
|
|
135
|
+
defaultValueHint: "520px",
|
|
136
|
+
description: "Change the width of the modal",
|
|
137
|
+
helpText: "Default unit is px. You can also use % or other units for width."
|
|
138
|
+
},
|
|
99
139
|
children: {
|
|
100
140
|
type: "slot",
|
|
101
141
|
defaultValue: {
|
|
@@ -115,6 +155,22 @@ function registerModal(loader) {
|
|
|
115
155
|
return (_a = ps.hideFooter) != null ? _a : false;
|
|
116
156
|
}
|
|
117
157
|
},
|
|
158
|
+
trigger: __spreadValues({
|
|
159
|
+
type: "slot",
|
|
160
|
+
hidePlaceholder: true,
|
|
161
|
+
defaultValue: {
|
|
162
|
+
type: "component",
|
|
163
|
+
name: "plasmic-antd5-button",
|
|
164
|
+
props: {
|
|
165
|
+
children: {
|
|
166
|
+
type: "text",
|
|
167
|
+
value: "Show modal"
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
}, {
|
|
172
|
+
mergeWithParent: true
|
|
173
|
+
}),
|
|
118
174
|
closeIcon: {
|
|
119
175
|
type: "slot",
|
|
120
176
|
hidePlaceholder: true
|
|
@@ -148,7 +204,7 @@ function registerModal(loader) {
|
|
|
148
204
|
},
|
|
149
205
|
wrapClassName: {
|
|
150
206
|
type: "class",
|
|
151
|
-
displayName: "Modal
|
|
207
|
+
displayName: "Modal overlay",
|
|
152
208
|
styleSections: ["background"]
|
|
153
209
|
},
|
|
154
210
|
modalScopeClassName: {
|
|
@@ -159,6 +215,7 @@ function registerModal(loader) {
|
|
|
159
215
|
type: "class",
|
|
160
216
|
displayName: "Modal content",
|
|
161
217
|
noSelf: true,
|
|
218
|
+
styleSections,
|
|
162
219
|
selectors: [
|
|
163
220
|
{
|
|
164
221
|
selector: ":modal .ant-modal-content",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registerModal.esm.js","sources":["../src/registerModal.tsx"],"sourcesContent":["import { Modal } from \"antd\";\nimport React from \"react\";\nimport { Registerable, registerComponentHelper } from \"./utils\";\n\nexport function AntdModal(\n props: React.ComponentProps<typeof Modal> & {\n onOpenChange?: (open: boolean) => void;\n defaultStylesClassName?: string;\n modalScopeClassName: string;\n wrapClassName: string;\n hideFooter?: boolean;\n }\n) {\n const {\n onOpenChange,\n onOk,\n onCancel,\n open,\n footer,\n hideFooter,\n modalScopeClassName,\n wrapClassName,\n ...rest\n } = props;\n const memoOnOk = React.useMemo(() => {\n if (onOpenChange || onOk) {\n return (e: React.MouseEvent<HTMLButtonElement>) => {\n onOpenChange?.(false);\n onOk?.(e);\n };\n } else {\n return undefined;\n }\n }, [onOpenChange, onOk]);\n const memoOnCancel = React.useMemo(() => {\n if (onOpenChange || onCancel) {\n return (e: React.MouseEvent<HTMLButtonElement>) => {\n onOpenChange?.(false);\n onCancel?.(e);\n };\n } else {\n return undefined;\n }\n }, [onOpenChange, onCancel]);\n return (\n <Modal\n {...rest}\n onOk={memoOnOk}\n onCancel={memoOnCancel}\n open={open}\n footer={hideFooter ? null : footer ?? undefined}\n wrapClassName={wrapClassName}\n className={`${props.className} ${props.defaultStylesClassName} ${modalScopeClassName}`}\n />\n );\n}\n\nexport function registerModal(loader?: Registerable) {\n registerComponentHelper(loader, AntdModal, {\n name: \"plasmic-antd5-modal\",\n displayName: \"Modal\",\n description:\n \"[See tutorial video](https://www.youtube.com/watch?v=TkjxNJIFun8)\",\n props: {\n open: {\n type: \"boolean\",\n },\n children: {\n type: \"slot\",\n defaultValue: {\n type: \"vbox\",\n children: [\"Modal content\"],\n },\n },\n title: {\n type: \"slot\",\n defaultValue: \"Modal title\",\n },\n footer: {\n type: \"slot\",\n hidePlaceholder: true,\n hidden: (ps) => ps.hideFooter ?? false,\n },\n closeIcon: {\n type: \"slot\",\n hidePlaceholder: true,\n },\n onOk: {\n type: \"eventHandler\",\n argTypes: [],\n } as any,\n onCancel: {\n type: \"eventHandler\",\n argTypes: [],\n } as any,\n okText: {\n type: \"string\",\n hidden: (ps) => !!ps.footer,\n advanced: true,\n },\n cancelText: {\n type: \"string\",\n hidden: (ps) => !!ps.footer,\n advanced: true,\n },\n hideFooter: {\n type: \"boolean\",\n description: \"Hide the modal footer slot\",\n advanced: true,\n },\n onOpenChange: {\n type: \"eventHandler\",\n argTypes: [{ name: \"open\", type: \"boolean\" }],\n } as any,\n wrapClassName: {\n type: \"class\",\n displayName: \"Modal container\",\n styleSections: [\"background\"],\n },\n modalScopeClassName: {\n type: \"styleScopeClass\",\n scopeName: \"modal\",\n } as any,\n modalContentClassName: {\n type: \"class\",\n displayName: \"Modal content\",\n noSelf: true,\n selectors: [\n {\n selector: \":modal .ant-modal-content\",\n label: \"Base\",\n },\n ],\n } as any,\n closeButtonClassName: {\n type: \"class\",\n displayName: \"Close button\",\n noSelf: true,\n selectors: [\n {\n selector: \":modal .ant-modal-close\",\n label: \"Base\",\n },\n ],\n advanced: true,\n } as any,\n defaultStylesClassName: {\n type: \"themeResetClass\",\n } as any,\n },\n states: {\n open: {\n type: \"writable\",\n valueProp: \"open\",\n onChangeProp: \"onOpenChange\",\n variableType: \"boolean\",\n },\n },\n templates: {\n \"Modal Form\": {\n props: {\n children: {\n type: \"component\",\n name: \"plasmic-antd5-form\",\n },\n hideFooter: true,\n },\n },\n \"Generic Modal\": {},\n },\n importPath: \"@plasmicpkgs/antd5/skinny/registerModal\",\n importName: \"AntdModal\",\n });\n}\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"registerModal.esm.js","sources":["../src/registerModal.tsx"],"sourcesContent":["import type { StyleSection } from \"@plasmicapp/host/registerComponent\";\nimport { Modal } from \"antd\";\nimport React, { ReactElement, useState, useMemo } from \"react\";\nimport { Registerable, registerComponentHelper } from \"./utils\";\n\n// hide sizing section, as width can only be set via a width prop, and not css!\nconst styleSections: StyleSection[] = [\n \"visibility\",\n \"typography\",\n \"spacing\",\n \"background\",\n \"transform\",\n \"transitions\",\n \"layout\",\n \"overflow\",\n \"border\",\n \"shadows\",\n \"effects\",\n];\n\nexport function AntdModal(\n props: React.ComponentProps<typeof Modal> & {\n onOpenChange?: (open: boolean) => void;\n defaultStylesClassName?: string;\n modalScopeClassName: string;\n wrapClassName: string;\n hideFooter?: boolean;\n trigger?: ReactElement;\n }\n) {\n const [isOpen, setIsOpen] = useState(false);\n\n const {\n onOpenChange,\n onOk,\n onCancel,\n open,\n width,\n footer,\n hideFooter,\n modalScopeClassName,\n wrapClassName,\n trigger,\n ...rest\n } = props;\n\n const memoOnOk = React.useMemo(() => {\n if (onOpenChange || onOk) {\n return (e: React.MouseEvent<HTMLButtonElement>) => {\n setIsOpen(false);\n onOpenChange?.(false);\n onOk?.(e);\n };\n } else {\n return undefined;\n }\n }, [onOpenChange, onOk]);\n const memoOnCancel = React.useMemo(() => {\n if (onOpenChange || onCancel) {\n return (e: React.MouseEvent<HTMLButtonElement>) => {\n setIsOpen(false);\n onOpenChange?.(false);\n onCancel?.(e);\n };\n } else {\n return undefined;\n }\n }, [onOpenChange, onCancel]);\n\n const widthProp = useMemo(() => {\n if (!width) return undefined;\n if (typeof width === \"number\") return width;\n if (typeof width !== \"string\") return undefined;\n if (/^\\d+$/.test(width)) {\n return +width;\n }\n return width;\n }, [width]);\n\n return (\n <>\n <Modal\n {...rest}\n onOk={memoOnOk}\n width={widthProp}\n onCancel={memoOnCancel}\n open={isOpen || open}\n footer={hideFooter ? null : footer ?? undefined}\n wrapClassName={wrapClassName}\n className={`${props.className} ${props.defaultStylesClassName} ${modalScopeClassName}`}\n />\n {trigger ? <div onClick={() => setIsOpen(true)}>{trigger}</div> : null}\n </>\n );\n}\n\nexport function registerModal(loader?: Registerable) {\n registerComponentHelper(loader, AntdModal, {\n name: \"plasmic-antd5-modal\",\n displayName: \"Modal\",\n styleSections,\n description:\n \"[See tutorial video](https://www.youtube.com/watch?v=TkjxNJIFun8)\",\n props: {\n open: {\n type: \"boolean\",\n },\n width: {\n type: \"string\",\n defaultValueHint: \"520px\",\n description: \"Change the width of the modal\",\n helpText:\n \"Default unit is px. You can also use % or other units for width.\",\n },\n children: {\n type: \"slot\",\n defaultValue: {\n type: \"vbox\",\n children: [\"Modal content\"],\n },\n },\n title: {\n type: \"slot\",\n defaultValue: \"Modal title\",\n },\n footer: {\n type: \"slot\",\n hidePlaceholder: true,\n hidden: (ps) => ps.hideFooter ?? false,\n },\n trigger: {\n type: \"slot\",\n hidePlaceholder: true,\n defaultValue: {\n type: \"component\",\n name: \"plasmic-antd5-button\",\n props: {\n children: {\n type: \"text\",\n value: \"Show modal\",\n },\n },\n },\n ...({\n mergeWithParent: true,\n } as any),\n },\n closeIcon: {\n type: \"slot\",\n hidePlaceholder: true,\n },\n onOk: {\n type: \"eventHandler\",\n argTypes: [],\n } as any,\n onCancel: {\n type: \"eventHandler\",\n argTypes: [],\n } as any,\n okText: {\n type: \"string\",\n hidden: (ps) => !!ps.footer,\n advanced: true,\n },\n cancelText: {\n type: \"string\",\n hidden: (ps) => !!ps.footer,\n advanced: true,\n },\n hideFooter: {\n type: \"boolean\",\n description: \"Hide the modal footer slot\",\n advanced: true,\n },\n onOpenChange: {\n type: \"eventHandler\",\n argTypes: [{ name: \"open\", type: \"boolean\" }],\n } as any,\n wrapClassName: {\n type: \"class\",\n displayName: \"Modal overlay\",\n styleSections: [\"background\"],\n },\n modalScopeClassName: {\n type: \"styleScopeClass\",\n scopeName: \"modal\",\n } as any,\n modalContentClassName: {\n type: \"class\",\n displayName: \"Modal content\",\n noSelf: true,\n styleSections,\n selectors: [\n {\n selector: \":modal .ant-modal-content\",\n label: \"Base\",\n },\n ],\n } as any,\n closeButtonClassName: {\n type: \"class\",\n displayName: \"Close button\",\n noSelf: true,\n selectors: [\n {\n selector: \":modal .ant-modal-close\",\n label: \"Base\",\n },\n ],\n advanced: true,\n } as any,\n defaultStylesClassName: {\n type: \"themeResetClass\",\n } as any,\n },\n states: {\n open: {\n type: \"writable\",\n valueProp: \"open\",\n onChangeProp: \"onOpenChange\",\n variableType: \"boolean\",\n },\n },\n templates: {\n \"Modal Form\": {\n props: {\n children: {\n type: \"component\",\n name: \"plasmic-antd5-form\",\n },\n hideFooter: true,\n },\n },\n \"Generic Modal\": {},\n },\n importPath: \"@plasmicpkgs/antd5/skinny/registerModal\",\n importName: \"AntdModal\",\n });\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,MAAM,aAAgC,GAAA;AAAA,EACpC,YAAA;AAAA,EACA,YAAA;AAAA,EACA,SAAA;AAAA,EACA,YAAA;AAAA,EACA,WAAA;AAAA,EACA,aAAA;AAAA,EACA,QAAA;AAAA,EACA,UAAA;AAAA,EACA,QAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA;AACF,CAAA,CAAA;AAEO,SAAS,UACd,KAQA,EAAA;AACA,EAAA,MAAM,CAAC,MAAA,EAAQ,SAAS,CAAA,GAAI,SAAS,KAAK,CAAA,CAAA;AAE1C,EAAA,MAYI,EAXF,GAAA,KAAA,EAAA;AAAA,IAAA,YAAA;AAAA,IACA,IAAA;AAAA,IACA,QAAA;AAAA,IACA,IAAA;AAAA,IACA,KAAA;AAAA,IACA,MAAA;AAAA,IACA,UAAA;AAAA,IACA,mBAAA;AAAA,IACA,aAAA;AAAA,IACA,OAAA;AAAA,GA1CJ,GA4CM,EADC,EAAA,IAAA,GAAA,SAAA,CACD,EADC,EAAA;AAAA,IAVH,cAAA;AAAA,IACA,MAAA;AAAA,IACA,UAAA;AAAA,IACA,MAAA;AAAA,IACA,OAAA;AAAA,IACA,QAAA;AAAA,IACA,YAAA;AAAA,IACA,qBAAA;AAAA,IACA,eAAA;AAAA,IACA,SAAA;AAAA,GAAA,CAAA,CAAA;AAIF,EAAM,MAAA,QAAA,GAAW,KAAM,CAAA,OAAA,CAAQ,MAAM;AACnC,IAAA,IAAI,gBAAgB,IAAM,EAAA;AACxB,MAAA,OAAO,CAAC,CAA2C,KAAA;AACjD,QAAA,SAAA,CAAU,KAAK,CAAA,CAAA;AACf,QAAe,YAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,YAAA,CAAA,KAAA,CAAA,CAAA;AACf,QAAO,IAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,IAAA,CAAA,CAAA,CAAA,CAAA;AAAA,OACT,CAAA;AAAA,KACK,MAAA;AACL,MAAO,OAAA,KAAA,CAAA,CAAA;AAAA,KACT;AAAA,GACC,EAAA,CAAC,YAAc,EAAA,IAAI,CAAC,CAAA,CAAA;AACvB,EAAM,MAAA,YAAA,GAAe,KAAM,CAAA,OAAA,CAAQ,MAAM;AACvC,IAAA,IAAI,gBAAgB,QAAU,EAAA;AAC5B,MAAA,OAAO,CAAC,CAA2C,KAAA;AACjD,QAAA,SAAA,CAAU,KAAK,CAAA,CAAA;AACf,QAAe,YAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,YAAA,CAAA,KAAA,CAAA,CAAA;AACf,QAAW,QAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,QAAA,CAAA,CAAA,CAAA,CAAA;AAAA,OACb,CAAA;AAAA,KACK,MAAA;AACL,MAAO,OAAA,KAAA,CAAA,CAAA;AAAA,KACT;AAAA,GACC,EAAA,CAAC,YAAc,EAAA,QAAQ,CAAC,CAAA,CAAA;AAE3B,EAAM,MAAA,SAAA,GAAY,QAAQ,MAAM;AAC9B,IAAA,IAAI,CAAC,KAAA;AAAO,MAAO,OAAA,KAAA,CAAA,CAAA;AACnB,IAAA,IAAI,OAAO,KAAU,KAAA,QAAA;AAAU,MAAO,OAAA,KAAA,CAAA;AACtC,IAAA,IAAI,OAAO,KAAU,KAAA,QAAA;AAAU,MAAO,OAAA,KAAA,CAAA,CAAA;AACtC,IAAI,IAAA,OAAA,CAAQ,IAAK,CAAA,KAAK,CAAG,EAAA;AACvB,MAAA,OAAO,CAAC,KAAA,CAAA;AAAA,KACV;AACA,IAAO,OAAA,KAAA,CAAA;AAAA,GACT,EAAG,CAAC,KAAK,CAAC,CAAA,CAAA;AAEV,EAAA,uBAEI,KAAA,CAAA,aAAA,CAAA,KAAA,CAAA,QAAA,EAAA,IAAA,kBAAA,KAAA,CAAA,aAAA;AAAA,IAAC,KAAA;AAAA,IAAA,aAAA,CAAA,cAAA,CAAA,EAAA,EACK,IADL,CAAA,EAAA;AAAA,MAEC,IAAM,EAAA,QAAA;AAAA,MACN,KAAO,EAAA,SAAA;AAAA,MACP,QAAU,EAAA,YAAA;AAAA,MACV,MAAM,MAAU,IAAA,IAAA;AAAA,MAChB,MAAA,EAAQ,UAAa,GAAA,IAAA,GAAO,MAAU,IAAA,IAAA,GAAA,MAAA,GAAA,KAAA,CAAA;AAAA,MACtC,aAAA;AAAA,MACA,SAAW,EAAA,CAAA,EAAG,KAAM,CAAA,SAAA,CAAA,CAAA,EAAa,MAAM,sBAA0B,CAAA,CAAA,EAAA,mBAAA,CAAA,CAAA;AAAA,KAAA,CAAA;AAAA,GACnE,EACC,OAAU,mBAAA,KAAA,CAAA,aAAA,CAAC,KAAI,EAAA,EAAA,OAAA,EAAS,MAAM,SAAA,CAAU,IAAI,CAAA,EAAA,EAAI,OAAQ,CAAA,GAAS,IACpE,CAAA,CAAA;AAEJ,CAAA;AAEO,SAAS,cAAc,MAAuB,EAAA;AACnD,EAAA,uBAAA,CAAwB,QAAQ,SAAW,EAAA;AAAA,IACzC,IAAM,EAAA,qBAAA;AAAA,IACN,WAAa,EAAA,OAAA;AAAA,IACb,aAAA;AAAA,IACA,WACE,EAAA,mEAAA;AAAA,IACF,KAAO,EAAA;AAAA,MACL,IAAM,EAAA;AAAA,QACJ,IAAM,EAAA,SAAA;AAAA,OACR;AAAA,MACA,KAAO,EAAA;AAAA,QACL,IAAM,EAAA,QAAA;AAAA,QACN,gBAAkB,EAAA,OAAA;AAAA,QAClB,WAAa,EAAA,+BAAA;AAAA,QACb,QACE,EAAA,kEAAA;AAAA,OACJ;AAAA,MACA,QAAU,EAAA;AAAA,QACR,IAAM,EAAA,MAAA;AAAA,QACN,YAAc,EAAA;AAAA,UACZ,IAAM,EAAA,MAAA;AAAA,UACN,QAAA,EAAU,CAAC,eAAe,CAAA;AAAA,SAC5B;AAAA,OACF;AAAA,MACA,KAAO,EAAA;AAAA,QACL,IAAM,EAAA,MAAA;AAAA,QACN,YAAc,EAAA,aAAA;AAAA,OAChB;AAAA,MACA,MAAQ,EAAA;AAAA,QACN,IAAM,EAAA,MAAA;AAAA,QACN,eAAiB,EAAA,IAAA;AAAA,QACjB,MAAA,EAAQ,CAAC,EAAI,KAAA;AAhIrB,UAAA,IAAA,EAAA,CAAA;AAgIwB,UAAA,OAAA,CAAA,EAAA,GAAA,EAAA,CAAG,eAAH,IAAiB,GAAA,EAAA,GAAA,KAAA,CAAA;AAAA,SAAA;AAAA,OACnC;AAAA,MACA,OAAS,EAAA,cAAA,CAAA;AAAA,QACP,IAAM,EAAA,MAAA;AAAA,QACN,eAAiB,EAAA,IAAA;AAAA,QACjB,YAAc,EAAA;AAAA,UACZ,IAAM,EAAA,WAAA;AAAA,UACN,IAAM,EAAA,sBAAA;AAAA,UACN,KAAO,EAAA;AAAA,YACL,QAAU,EAAA;AAAA,cACR,IAAM,EAAA,MAAA;AAAA,cACN,KAAO,EAAA,YAAA;AAAA,aACT;AAAA,WACF;AAAA,SACF;AAAA,OACI,EAAA;AAAA,QACF,eAAiB,EAAA,IAAA;AAAA,OACnB,CAAA;AAAA,MAEF,SAAW,EAAA;AAAA,QACT,IAAM,EAAA,MAAA;AAAA,QACN,eAAiB,EAAA,IAAA;AAAA,OACnB;AAAA,MACA,IAAM,EAAA;AAAA,QACJ,IAAM,EAAA,cAAA;AAAA,QACN,UAAU,EAAC;AAAA,OACb;AAAA,MACA,QAAU,EAAA;AAAA,QACR,IAAM,EAAA,cAAA;AAAA,QACN,UAAU,EAAC;AAAA,OACb;AAAA,MACA,MAAQ,EAAA;AAAA,QACN,IAAM,EAAA,QAAA;AAAA,QACN,MAAQ,EAAA,CAAC,EAAO,KAAA,CAAC,CAAC,EAAG,CAAA,MAAA;AAAA,QACrB,QAAU,EAAA,IAAA;AAAA,OACZ;AAAA,MACA,UAAY,EAAA;AAAA,QACV,IAAM,EAAA,QAAA;AAAA,QACN,MAAQ,EAAA,CAAC,EAAO,KAAA,CAAC,CAAC,EAAG,CAAA,MAAA;AAAA,QACrB,QAAU,EAAA,IAAA;AAAA,OACZ;AAAA,MACA,UAAY,EAAA;AAAA,QACV,IAAM,EAAA,SAAA;AAAA,QACN,WAAa,EAAA,4BAAA;AAAA,QACb,QAAU,EAAA,IAAA;AAAA,OACZ;AAAA,MACA,YAAc,EAAA;AAAA,QACZ,IAAM,EAAA,cAAA;AAAA,QACN,UAAU,CAAC,EAAE,MAAM,MAAQ,EAAA,IAAA,EAAM,WAAW,CAAA;AAAA,OAC9C;AAAA,MACA,aAAe,EAAA;AAAA,QACb,IAAM,EAAA,OAAA;AAAA,QACN,WAAa,EAAA,eAAA;AAAA,QACb,aAAA,EAAe,CAAC,YAAY,CAAA;AAAA,OAC9B;AAAA,MACA,mBAAqB,EAAA;AAAA,QACnB,IAAM,EAAA,iBAAA;AAAA,QACN,SAAW,EAAA,OAAA;AAAA,OACb;AAAA,MACA,qBAAuB,EAAA;AAAA,QACrB,IAAM,EAAA,OAAA;AAAA,QACN,WAAa,EAAA,eAAA;AAAA,QACb,MAAQ,EAAA,IAAA;AAAA,QACR,aAAA;AAAA,QACA,SAAW,EAAA;AAAA,UACT;AAAA,YACE,QAAU,EAAA,2BAAA;AAAA,YACV,KAAO,EAAA,MAAA;AAAA,WACT;AAAA,SACF;AAAA,OACF;AAAA,MACA,oBAAsB,EAAA;AAAA,QACpB,IAAM,EAAA,OAAA;AAAA,QACN,WAAa,EAAA,cAAA;AAAA,QACb,MAAQ,EAAA,IAAA;AAAA,QACR,SAAW,EAAA;AAAA,UACT;AAAA,YACE,QAAU,EAAA,yBAAA;AAAA,YACV,KAAO,EAAA,MAAA;AAAA,WACT;AAAA,SACF;AAAA,QACA,QAAU,EAAA,IAAA;AAAA,OACZ;AAAA,MACA,sBAAwB,EAAA;AAAA,QACtB,IAAM,EAAA,iBAAA;AAAA,OACR;AAAA,KACF;AAAA,IACA,MAAQ,EAAA;AAAA,MACN,IAAM,EAAA;AAAA,QACJ,IAAM,EAAA,UAAA;AAAA,QACN,SAAW,EAAA,MAAA;AAAA,QACX,YAAc,EAAA,cAAA;AAAA,QACd,YAAc,EAAA,SAAA;AAAA,OAChB;AAAA,KACF;AAAA,IACA,SAAW,EAAA;AAAA,MACT,YAAc,EAAA;AAAA,QACZ,KAAO,EAAA;AAAA,UACL,QAAU,EAAA;AAAA,YACR,IAAM,EAAA,WAAA;AAAA,YACN,IAAM,EAAA,oBAAA;AAAA,WACR;AAAA,UACA,UAAY,EAAA,IAAA;AAAA,SACd;AAAA,OACF;AAAA,MACA,iBAAiB,EAAC;AAAA,KACpB;AAAA,IACA,UAAY,EAAA,yCAAA;AAAA,IACZ,UAAY,EAAA,WAAA;AAAA,GACb,CAAA,CAAA;AACH;;;;"}
|