@plasmicpkgs/antd5 0.0.43 → 0.0.45
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/index.js +539 -384
- package/dist/index.js.map +1 -1
- package/dist/registerCheckbox.d.ts +1 -1
- package/dist/registerDropdown.d.ts +1 -1
- package/dist/registerForm.d.ts +3 -3
- package/dist/registerInput.d.ts +7 -7
- package/dist/registerMenu.d.ts +5 -5
- package/dist/registerModal.d.ts +1 -1
- package/dist/registerRadio.d.ts +4 -3
- package/dist/registerSelect.d.ts +1 -1
- package/dist/registerTable.d.ts +2 -2
- package/dist/registerUpload.d.ts +1 -1
- package/package.json +4 -5
- package/skinny/registerButton.js +2 -6
- package/skinny/registerButton.js.map +1 -1
- package/skinny/registerCheckbox.d.ts +1 -1
- package/skinny/registerCheckbox.js +11 -9
- package/skinny/registerCheckbox.js.map +1 -1
- package/skinny/registerConfigProvider.js +268 -172
- package/skinny/registerConfigProvider.js.map +1 -1
- package/skinny/registerDropdown.d.ts +1 -1
- package/skinny/registerDropdown.js +13 -14
- package/skinny/registerDropdown.js.map +1 -1
- package/skinny/registerForm.d.ts +3 -3
- package/skinny/registerForm.js +130 -83
- package/skinny/registerForm.js.map +1 -1
- package/skinny/registerInput.d.ts +7 -7
- package/skinny/registerInput.js +7 -11
- package/skinny/registerInput.js.map +1 -1
- package/skinny/registerMenu.d.ts +5 -5
- package/skinny/registerMenu.js +6 -10
- package/skinny/registerMenu.js.map +1 -1
- package/skinny/registerModal.d.ts +1 -1
- package/skinny/registerModal.js +10 -8
- package/skinny/registerModal.js.map +1 -1
- package/skinny/registerRadio.d.ts +4 -3
- package/skinny/registerRadio.js +12 -11
- package/skinny/registerRadio.js.map +1 -1
- package/skinny/registerSelect.d.ts +1 -1
- package/skinny/registerSelect.js +11 -9
- package/skinny/registerSelect.js.map +1 -1
- package/skinny/registerTable.d.ts +2 -2
- package/skinny/registerTable.js +58 -48
- package/skinny/registerTable.js.map +1 -1
- package/skinny/registerUpload.d.ts +1 -1
- package/skinny/registerUpload.js +22 -17
- package/skinny/registerUpload.js.map +1 -1
- package/skinny/utils-9d88fffe.js.map +1 -1
- package/dist/antd.esm.js +0 -3188
- package/dist/antd.esm.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registerConfigProvider.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"registerConfigProvider.js","sources":["../src/registerConfigProvider.tsx"],"sourcesContent":["import { GlobalActionsProvider } from \"@plasmicapp/host\";\nimport {\n default as registerToken,\n TokenRegistration,\n} from \"@plasmicapp/host/registerToken\";\nimport { addLoadingStateListener } from \"@plasmicapp/query\";\nimport { ConfigProvider, message, notification, theme } from \"antd\";\nimport type { MessageInstance } from \"antd/es/message/interface\";\nimport type {\n NotificationInstance,\n NotificationPlacement,\n} from \"antd/es/notification/interface\";\nimport enUS from \"antd/lib/locale/en_US.js\";\nimport React from \"react\";\nimport { makeRegisterGlobalContext, Registerable } from \"./utils\";\n\nexport interface ThemeOpts {\n fontFamily?: string;\n fontSize?: number;\n lineHeight?: number;\n colorTextBase?: string;\n\n colorPrimary?: string;\n colorSuccess?: string;\n colorWarning?: string;\n colorInfo?: string;\n lineWidth?: number;\n borderRadius?: number;\n controlHeight?: number;\n sizeUnit?: number;\n sizeStep?: number;\n wireframe?: boolean;\n}\n\nexport function themeToAntdConfig(opts: ThemeOpts) {\n const {\n colorTextBase,\n colorPrimary,\n colorSuccess,\n colorWarning,\n colorInfo,\n fontFamily,\n fontSize,\n lineWidth,\n borderRadius,\n controlHeight,\n sizeUnit,\n sizeStep,\n wireframe,\n } = opts;\n return {\n theme: {\n token: Object.fromEntries(\n Object.entries({\n colorTextBase,\n colorPrimary,\n colorSuccess,\n colorWarning,\n colorInfo,\n fontFamily,\n fontSize,\n lineWidth,\n borderRadius,\n controlHeight,\n sizeUnit,\n sizeStep,\n wireframe,\n }).filter(([_key, val]) => !!val)\n ),\n },\n };\n}\n\nexport function AntdConfigProvider(\n props: Omit<ThemeOpts, \"fontFamily\" | \"fontSize\" | \"lineWidth\"> & {\n children?: React.ReactNode;\n themeStyles: Record<string, string>;\n }\n) {\n const { children, themeStyles, ...rest } = props;\n return (\n <ConfigProvider\n locale={enUS}\n {...themeToAntdConfig({\n ...rest,\n fontFamily: themeStyles.fontFamily,\n fontSize: themeStyles.fontSize\n ? parseInt(themeStyles.fontSize)\n : undefined,\n lineHeight: themeStyles.lineHeight\n ? parseInt(themeStyles.lineHeight)\n : undefined,\n colorTextBase: themeStyles.color,\n })}\n >\n <ForkedApp>\n <InnerConfigProvider>{children}</InnerConfigProvider>\n </ForkedApp>\n </ConfigProvider>\n );\n}\n\nfunction normTokenValue(val: any) {\n if (typeof val === \"string\") {\n return val.trim();\n } else if (typeof val === \"number\") {\n return `${val}px`;\n } else {\n return val;\n }\n}\n\nfunction InnerConfigProvider(props: { children?: React.ReactNode }) {\n const { children } = props;\n const { token } = theme.useToken();\n const makeVarName = (name: string) => `--antd-${name}`;\n const cssStyles = React.useMemo(\n () => `\n:root {\n ${Object.entries(token)\n .map(([key, val]) => `${makeVarName(key)}:${normTokenValue(val)};`)\n .join(\"\\n\")}\n}\n `,\n [token]\n );\n const app = useAppContext();\n const actions = React.useMemo(\n () => ({\n showNotification: (opts: {\n type: \"success\" | \"error\" | \"info\" | \"warning\";\n message: React.ReactNode;\n description?: React.ReactNode;\n duration?: number;\n placement?: NotificationPlacement;\n }) => {\n const { type, ...rest } = opts;\n app.notification[opts.type ?? \"info\"]({ ...rest });\n },\n hideNotifications: () => {\n app.notification.destroy();\n },\n }),\n [app]\n );\n\n if (!GlobalActionsProvider) {\n warnOutdatedDeps();\n }\n return (\n <>\n <style dangerouslySetInnerHTML={{ __html: cssStyles }} />\n {/* GlobalActionsProvider may not exist for older host */}\n {GlobalActionsProvider ? (\n <GlobalActionsProvider\n contextName=\"plasmic-antd5-config-provider\"\n actions={actions}\n >\n {children}\n </GlobalActionsProvider>\n ) : (\n children\n )}\n <GlobalLoadingIndicator />\n </>\n );\n}\n\nlet warned = false;\nfunction warnOutdatedDeps() {\n if (!warned) {\n console.log(\n `You are using a version of @plasmicapp/* that is too old. Please upgrade to the latest version.`\n );\n warned = true;\n }\n}\n\nfunction GlobalLoadingIndicator() {\n const app = useAppContext();\n React.useEffect(() => {\n if (addLoadingStateListener) {\n return addLoadingStateListener(\n (isLoading) => {\n if (isLoading) {\n app.message.open({\n content: \"Loading...\",\n duration: 0,\n key: `plasmic-antd5-global-loading-indicator`,\n });\n } else {\n app.message.destroy(`plasmic-antd5-global-loading-indicator`);\n }\n },\n { immediate: true }\n );\n } else {\n warnOutdatedDeps();\n return () => {};\n }\n }, [app]);\n return null;\n}\n\nconst ForkedAppContext = React.createContext<\n | {\n message: MessageInstance;\n notification: NotificationInstance;\n }\n | undefined\n>(undefined);\n\nfunction useAppContext() {\n const context = React.useContext(ForkedAppContext);\n if (!context) {\n throw new Error(\"Must call useAppContext from under ForkedApp\");\n }\n return context;\n}\n\n/**\n * Forking antd's App, to avoid rendering an extra <div/>\n */\nfunction ForkedApp(props: { children?: React.ReactNode }) {\n const [messageApi, messageContextHolder] = message.useMessage();\n const [\n notificationApi,\n notificationContextHolder,\n ] = notification.useNotification();\n\n const appContext = React.useMemo(\n () => ({\n message: messageApi,\n notification: notificationApi,\n }),\n [messageApi, notificationApi]\n );\n\n return (\n <ForkedAppContext.Provider value={appContext}>\n {messageContextHolder}\n {notificationContextHolder}\n {props.children}\n </ForkedAppContext.Provider>\n );\n}\n\nexport function registerTokens(loader?: Registerable) {\n const regs: TokenRegistration[] = [];\n\n const withoutPrefix = (name: string, prefix?: string) => {\n if (!prefix) {\n return name;\n }\n const index = name.indexOf(prefix);\n return index === 0 ? name.substring(prefix.length) : name;\n };\n\n function makeNiceName(name: string) {\n name = name[0].toUpperCase() + name.substring(1);\n return name.replace(/([a-z])([A-Z])/g, \"$1 $2\");\n }\n\n const makeGenericToken = (\n name: string | [string, string],\n type: TokenRegistration[\"type\"],\n removePrefix?: string\n ) => {\n const tokenName = Array.isArray(name) ? name[0] : name;\n const displayName = Array.isArray(name)\n ? name[1]\n : makeNiceName(withoutPrefix(name, removePrefix));\n return {\n name: tokenName,\n displayName: `System: ${displayName}`,\n value: `var(--antd-${tokenName})`,\n type,\n } as TokenRegistration;\n };\n\n // TODO: Commenting out a lot of tokens for now until we decide to make them\n // available\n\n const colorTokens: (string | [string, string])[] = [\n // Seed tokens\n \"colorPrimary\",\n \"colorSuccess\",\n \"colorWarning\",\n \"colorError\",\n \"colorInfo\",\n\n // Map tokens\n // - neutral\n \"colorText\",\n \"colorTextSecondary\",\n \"colorTextTertiary\",\n \"colorTextQuaternary\",\n \"colorBorder\",\n \"colorBorderSecondary\",\n \"colorFill\",\n \"colorFillSecondary\",\n \"colorFillTertiary\",\n \"colorFillQuaternary\",\n \"colorBgLayout\",\n \"colorBgContainer\",\n \"colorBgElevated\",\n \"colorBgSpotlight\",\n // - primary\n \"colorPrimaryBg\",\n \"colorPrimaryBgHover\",\n \"colorPrimaryBorder\",\n \"colorPrimaryBorderHover\",\n \"colorPrimaryHover\",\n \"colorPrimaryActive\",\n \"colorPrimaryTextHover\",\n \"colorPrimaryText\",\n \"colorPrimaryTextActive\",\n // - success\n \"colorSuccessBg\",\n \"colorSuccessBgHover\",\n \"colorSuccessBorder\",\n \"colorSuccessBorderHover\",\n \"colorSuccessHover\",\n \"colorSuccessActive\",\n \"colorSuccessTextHover\",\n \"colorSuccessText\",\n \"colorSuccessTextActive\",\n // - warning\n \"colorWarningBg\",\n \"colorWarningBgHover\",\n \"colorWarningBorder\",\n \"colorWarningBorderHover\",\n \"colorWarningHover\",\n \"colorWarningActive\",\n \"colorWarningTextHover\",\n \"colorWarningText\",\n \"colorWarningTextActive\",\n // - info\n \"colorInfoBg\",\n \"colorInfoBgHover\",\n \"colorInfoBorder\",\n \"colorInfoBorderHover\",\n \"colorInfoHover\",\n \"colorInfoActive\",\n \"colorInfoTextHover\",\n \"colorInfoText\",\n \"colorInfoTextActive\",\n // - error\n \"colorErrorBg\",\n \"colorErrorBgHover\",\n \"colorErrorBorder\",\n \"colorErrorBorderHover\",\n \"colorErrorHover\",\n \"colorErrorActive\",\n \"colorErrorTextHover\",\n \"colorErrorText\",\n \"colorErrorTextActive\",\n // - other\n \"colorWhite\",\n \"colorBgMask\",\n\n // Alias tokens\n // \"colorFillContentHover\",\n // \"colorFillAlter\",\n // \"colorFillContent\",\n // \"colorBgContainerDisabled\",\n // \"colorBgTextHover\",\n // \"colorBgTextActive\",\n // \"colorBorderBg\",\n // \"colorSplit\",\n // \"colorTextPlaceholder\",\n // \"colorTextDisabled\",\n // \"colorTextHeading\",\n // \"colorTextLabel\",\n // \"colorTextDescription\",\n // \"colorTextLightSolid\",\n \"colorIcon\",\n \"colorIconHover\",\n \"colorLink\",\n \"colorLinkHover\",\n // \"colorLinkActive\",\n // \"colorLinkHighlight\",\n // \"controlOutline\",\n // \"controlWarningOutline\",\n // \"controlErrorOutline\",\n // \"controlItemBgHover\",\n // \"controlItemBgActive\",\n // \"controlItemBgActiveHover\",\n // \"controlItemBgActiveDisabled\",\n ];\n colorTokens.forEach((name) =>\n regs.push(makeGenericToken(name, \"color\", \"color\"))\n );\n\n const spacingTokens: (string | [string, string])[] = [\n // Seed\n // \"lineWidth\",\n // \"borderRadius\",\n // \"controlHeight\",\n // Map tokens\n // \"sizeXXL\",\n // \"sizeXL\",\n // \"sizeLG\",\n // \"sizeMD\",\n // \"sizeMS\",\n // \"size\",\n // \"sizeSM\",\n // \"sizeXS\",\n // \"sizeXXS\",\n // \"controlHeightXS\",\n // \"controlHeightSM\",\n // \"controlHeightLG\",\n // \"lineWidthBold\",\n // \"borderRadiusXS\",\n // \"borderRadiusSM\",\n // \"borderRadiusLG\",\n // \"borderRadiusOuter\",\n\n // Alias tokens\n // \"controlOutlineWidth\",\n // \"controlInteractiveSize\",\n \"paddingXXS\",\n \"paddingXS\",\n \"paddingSM\",\n [\"padding\", \"Padding M\"],\n \"paddingMD\",\n \"paddingLG\",\n \"paddingXL\",\n // \"paddingContentHorizontalLG\",\n // \"paddingContentHorizontal\",\n // \"paddingContentHorizontalSM\",\n // \"paddingContentVerticalLG\",\n // \"paddingContentVertical\",\n // \"paddingContentVerticalSM\",\n \"marginXXS\",\n \"marginXS\",\n \"marginSM\",\n [\"margin\", \"Margin M\"],\n \"marginMD\",\n \"marginLG\",\n \"marginXL\",\n \"marginXXL\",\n // \"controlPaddingHorizontal\",\n // \"controlPaddingHorizontalSM\",\n ];\n spacingTokens.forEach((token) =>\n regs.push(makeGenericToken(token, \"spacing\"))\n );\n\n const fontSizeTokens: (string | [string, string])[] = [\n // Seed token\n [\"fontSize\", \"M\"],\n // Map tokens\n \"fontSizeSM\",\n \"fontSizeLG\",\n \"fontSizeXL\",\n \"fontSizeHeading1\",\n \"fontSizeHeading2\",\n \"fontSizeHeading3\",\n \"fontSizeHeading4\",\n \"fontSizeHeading5\",\n ];\n fontSizeTokens.forEach((token) =>\n regs.push(makeGenericToken(token, \"font-size\", \"fontSize\"))\n );\n\n const lineHeightTokens: (string | [string, string])[] = [\n // Map tokens\n [\"lineHeight\", \"M\"],\n \"lineHeightLG\",\n \"lineHeightSM\",\n \"lineHeightHeading1\",\n \"lineHeightHeading2\",\n \"lineHeightHeading3\",\n \"lineHeightHeading4\",\n \"lineHeightHeading5\",\n ];\n lineHeightTokens.forEach((token) =>\n regs.push(makeGenericToken(token, \"line-height\", \"lineHeight\"))\n );\n\n if (loader) {\n regs.forEach((t) => loader.registerToken(t));\n } else {\n regs.forEach((t) => registerToken(t));\n }\n}\n\nexport const registerConfigProvider = makeRegisterGlobalContext(\n AntdConfigProvider,\n {\n name: \"plasmic-antd5-config-provider\",\n displayName: \"Ant Design System Settings\",\n props: {\n colorPrimary: {\n type: \"color\",\n defaultValue: \"#1677ff\",\n },\n colorSuccess: {\n type: \"color\",\n defaultValue: \"#52c41a\",\n },\n colorWarning: {\n type: \"color\",\n defaultValue: \"#faad14\",\n },\n colorError: {\n type: \"color\",\n defaultValue: \"#ff4d4f\",\n },\n colorInfo: {\n type: \"color\",\n defaultValue: \"#1677ff\",\n },\n colorBgBase: {\n type: \"color\",\n defaultValue: \"#ffffff\",\n },\n lineWidth: {\n type: \"number\",\n defaultValue: 1,\n },\n borderRadius: {\n type: \"number\",\n defaultValue: 6,\n },\n controlHeight: {\n type: \"number\",\n defaultValue: 32,\n },\n sizeUnit: {\n type: \"number\",\n defaultValue: 4,\n },\n sizeStep: {\n type: \"number\",\n defaultValue: 4,\n },\n wireframe: {\n type: \"boolean\",\n defaultValue: false,\n },\n themeStyles: {\n type: \"themeStyles\",\n } as any,\n },\n ...({\n unstable__globalActions: {\n showNotification: {\n displayName: \"Show notification\",\n parameters: {\n type: {\n type: \"choice\",\n options: [\"success\", \"error\", \"info\", \"warning\"],\n defaultValue: \"info\",\n },\n message: {\n type: \"string\",\n defaultValue: \"A message for you!\",\n },\n description: {\n type: \"string\",\n defaultValue: \"Would you like to learn more?\",\n },\n duration: {\n type: \"number\",\n defaultValueHint: 5,\n },\n placement: {\n type: \"choice\",\n options: [\n \"top\",\n \"topLeft\",\n \"topRight\",\n \"bottom\",\n \"bottomLeft\",\n \"bottomRight\",\n ],\n defaultValueHint: \"topRight\",\n },\n },\n },\n hideNotifications: {\n displayName: \"Hide notifications\",\n },\n },\n } as any),\n importPath: \"@plasmicpkgs/antd5/skinny/registerConfigProvider\",\n importName: \"AntdConfigProvider\",\n }\n);\n"],"names":["React","ConfigProvider","enUS","theme","GlobalActionsProvider","addLoadingStateListener","message","notification","registerToken","makeRegisterGlobalContext"],"mappings":"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"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
var Menu = require('antd/lib/menu');
|
|
3
|
+
var antd = require('antd');
|
|
5
4
|
var React = require('react');
|
|
6
5
|
var utils = require('./utils-9d88fffe.js');
|
|
7
6
|
require('@plasmicapp/host/registerComponent');
|
|
@@ -9,8 +8,6 @@ require('@plasmicapp/host/registerGlobalContext');
|
|
|
9
8
|
|
|
10
9
|
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
11
10
|
|
|
12
|
-
var Dropdown__default = /*#__PURE__*/_interopDefault(Dropdown);
|
|
13
|
-
var Menu__default = /*#__PURE__*/_interopDefault(Menu);
|
|
14
11
|
var React__default = /*#__PURE__*/_interopDefault(React);
|
|
15
12
|
|
|
16
13
|
var __defProp = Object.defineProperty;
|
|
@@ -46,15 +43,17 @@ var __objRest = (source, exclude) => {
|
|
|
46
43
|
};
|
|
47
44
|
function AntdDropdown(props) {
|
|
48
45
|
const _a = props, { children, onAction, menuItems } = _a, rest = __objRest(_a, ["children", "onAction", "menuItems"]);
|
|
49
|
-
return /* @__PURE__ */ React__default.default.createElement(
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
46
|
+
return /* @__PURE__ */ React__default.default.createElement(
|
|
47
|
+
antd.Dropdown,
|
|
48
|
+
__spreadProps(__spreadValues({}, rest), {
|
|
49
|
+
overlay: () => {
|
|
50
|
+
var _a2;
|
|
51
|
+
const items = (_a2 = menuItems == null ? void 0 : menuItems()) != null ? _a2 : [];
|
|
52
|
+
return /* @__PURE__ */ React__default.default.createElement(antd.Menu, { onClick: (event) => onAction == null ? void 0 : onAction(event.key) }, items);
|
|
53
|
+
}
|
|
54
|
+
}),
|
|
55
|
+
typeof children === "string" ? /* @__PURE__ */ React__default.default.createElement("div", null, children) : children
|
|
56
|
+
);
|
|
58
57
|
}
|
|
59
58
|
function registerDropdown(loader) {
|
|
60
59
|
utils.registerComponentHelper(loader, AntdDropdown, {
|
|
@@ -145,7 +144,7 @@ function registerDropdown(loader) {
|
|
|
145
144
|
argTypes: [{ name: "key", type: "string" }]
|
|
146
145
|
}
|
|
147
146
|
},
|
|
148
|
-
importPath: "@plasmicpkgs/
|
|
147
|
+
importPath: "@plasmicpkgs/antd5/skinny/registerDropdown",
|
|
149
148
|
importName: "AntdDropdown"
|
|
150
149
|
});
|
|
151
150
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registerDropdown.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"registerDropdown.js","sources":["../src/registerDropdown.tsx"],"sourcesContent":["import { Dropdown, Menu } from \"antd\";\nimport React from \"react\";\nimport { Registerable, registerComponentHelper } from \"./utils\";\n\nexport function AntdDropdown(\n props: Omit<React.ComponentProps<typeof Dropdown>, \"menu\" | \"overlay\"> & {\n onAction?: (key: string) => void;\n menuItems?: () => React.ReactNode;\n }\n) {\n const { children, onAction, menuItems, ...rest } = props;\n return (\n <Dropdown\n {...rest}\n overlay={() => {\n const items = menuItems?.() ?? [];\n return <Menu onClick={(event) => onAction?.(event.key)}>{items}</Menu>;\n }}\n >\n {typeof children === \"string\" ? <div>{children}</div> : children}\n </Dropdown>\n );\n}\n\n/**\n * Note that we don't yet support the simpler `items` prop for configuration.\n */\nexport function registerDropdown(loader?: Registerable) {\n registerComponentHelper(loader, AntdDropdown, {\n name: \"plasmic-antd5-dropdown\",\n displayName: \"Dropdown\",\n props: {\n open: {\n type: \"boolean\",\n description: \"Toggle visibility of dropdown menu in Plasmic Editor\",\n editOnly: true,\n uncontrolledProp: \"fakeOpen\",\n defaultValueHint: false,\n },\n disabled: {\n type: \"boolean\",\n description: \"Whether the dropdown menu is disabled\",\n defaultValueHint: false,\n },\n arrow: {\n type: \"boolean\",\n description: \"Whether the dropdown arrow should be visible\",\n defaultValueHint: false,\n advanced: true,\n },\n placement: {\n type: \"choice\",\n options: [\n \"bottomLeft\",\n \"bottomCenter\",\n \"bottomRight\",\n \"topLeft\",\n \"topCenter\",\n \"topRight\",\n ],\n description: \"Placement of popup menu\",\n defaultValueHint: \"bottomLeft\",\n advanced: true,\n },\n menuItems: {\n type: \"slot\",\n allowedComponents: [\n \"plasmic-antd5-menu-item\",\n \"plasmic-antd5-menu-item-group\",\n \"plasmic-antd5-menu-divider\",\n \"plasmic-antd5-submenu\",\n ],\n defaultValue: [\n {\n type: \"component\",\n name: \"plasmic-antd5-menu-item\",\n props: {\n key: \"menu-item-1\",\n },\n },\n {\n type: \"component\",\n name: \"plasmic-antd5-menu-item\",\n props: {\n key: \"menu-item-2\",\n },\n },\n ],\n renderPropParams: [],\n },\n trigger: {\n type: \"choice\",\n options: [\"click\", \"hover\", \"contextMenu\"],\n description: \"The trigger mode which executes the dropdown action\",\n defaultValueHint: \"hover\",\n },\n children: {\n type: \"slot\",\n defaultValue: [\n {\n type: \"component\",\n name: \"plasmic-antd5-button\",\n props: {\n children: {\n type: \"text\",\n value: \"Dropdown\",\n },\n },\n },\n ],\n },\n onAction: {\n type: \"eventHandler\",\n argTypes: [{ name: \"key\", type: \"string\" }],\n } as any,\n },\n importPath: \"@plasmicpkgs/antd5/skinny/registerDropdown\",\n importName: \"AntdDropdown\",\n });\n}\n"],"names":["React","Dropdown","_a","Menu","registerComponentHelper"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIO,SAAS,aACd,KAIA,EAAA;AACA,EAAmD,MAAA,EAAA,GAAA,KAAA,EAA3C,EAAU,QAAA,EAAA,QAAA,EAAU,SAV9B,EAAA,GAUqD,IAAT,IAAS,GAAA,SAAA,CAAA,EAAA,EAAT,CAAlC,UAAA,EAAU,UAAU,EAAA,WAAA,CAAA,CAAA,CAAA;AAC5B,EACE,uBAAAA,sBAAA,CAAA,aAAA;AAAA,IAACC,aAAA;AAAA,IAAA,aAAA,CAAA,cAAA,CAAA,EAAA,EACK,IADL,CAAA,EAAA;AAAA,MAEC,SAAS,MAAM;AAdrB,QAAAC,IAAAA,GAAAA,CAAAA;AAeQ,QAAA,MAAM,KAAQA,GAAAA,CAAAA,GAAAA,GAAA,SAAAA,IAAAA,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,SAAAA,EAAAA,KAAAA,IAAAA,GAAAA,GAAAA,GAAiB,EAAC,CAAA;AAChC,QAAO,uBAAAF,sBAAA,CAAA,aAAA,CAACG,aAAK,OAAS,EAAA,CAAC,UAAU,QAAW,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,QAAA,CAAA,KAAA,CAAM,QAAO,KAAM,CAAA,CAAA;AAAA,OACjE;AAAA,KAAA,CAAA;AAAA,IAEC,OAAO,QAAa,KAAA,QAAA,mBAAYH,sBAAA,CAAA,aAAA,CAAA,KAAA,EAAA,IAAA,EAAK,QAAS,CAAS,GAAA,QAAA;AAAA,GAC1D,CAAA;AAEJ,CAAA;AAKO,SAAS,iBAAiB,MAAuB,EAAA;AACtD,EAAAI,6BAAA,CAAwB,QAAQ,YAAc,EAAA;AAAA,IAC5C,IAAM,EAAA,wBAAA;AAAA,IACN,WAAa,EAAA,UAAA;AAAA,IACb,KAAO,EAAA;AAAA,MACL,IAAM,EAAA;AAAA,QACJ,IAAM,EAAA,SAAA;AAAA,QACN,WAAa,EAAA,sDAAA;AAAA,QACb,QAAU,EAAA,IAAA;AAAA,QACV,gBAAkB,EAAA,UAAA;AAAA,QAClB,gBAAkB,EAAA,KAAA;AAAA,OACpB;AAAA,MACA,QAAU,EAAA;AAAA,QACR,IAAM,EAAA,SAAA;AAAA,QACN,WAAa,EAAA,uCAAA;AAAA,QACb,gBAAkB,EAAA,KAAA;AAAA,OACpB;AAAA,MACA,KAAO,EAAA;AAAA,QACL,IAAM,EAAA,SAAA;AAAA,QACN,WAAa,EAAA,8CAAA;AAAA,QACb,gBAAkB,EAAA,KAAA;AAAA,QAClB,QAAU,EAAA,IAAA;AAAA,OACZ;AAAA,MACA,SAAW,EAAA;AAAA,QACT,IAAM,EAAA,QAAA;AAAA,QACN,OAAS,EAAA;AAAA,UACP,YAAA;AAAA,UACA,cAAA;AAAA,UACA,aAAA;AAAA,UACA,SAAA;AAAA,UACA,WAAA;AAAA,UACA,UAAA;AAAA,SACF;AAAA,QACA,WAAa,EAAA,yBAAA;AAAA,QACb,gBAAkB,EAAA,YAAA;AAAA,QAClB,QAAU,EAAA,IAAA;AAAA,OACZ;AAAA,MACA,SAAW,EAAA;AAAA,QACT,IAAM,EAAA,MAAA;AAAA,QACN,iBAAmB,EAAA;AAAA,UACjB,yBAAA;AAAA,UACA,+BAAA;AAAA,UACA,4BAAA;AAAA,UACA,uBAAA;AAAA,SACF;AAAA,QACA,YAAc,EAAA;AAAA,UACZ;AAAA,YACE,IAAM,EAAA,WAAA;AAAA,YACN,IAAM,EAAA,yBAAA;AAAA,YACN,KAAO,EAAA;AAAA,cACL,GAAK,EAAA,aAAA;AAAA,aACP;AAAA,WACF;AAAA,UACA;AAAA,YACE,IAAM,EAAA,WAAA;AAAA,YACN,IAAM,EAAA,yBAAA;AAAA,YACN,KAAO,EAAA;AAAA,cACL,GAAK,EAAA,aAAA;AAAA,aACP;AAAA,WACF;AAAA,SACF;AAAA,QACA,kBAAkB,EAAC;AAAA,OACrB;AAAA,MACA,OAAS,EAAA;AAAA,QACP,IAAM,EAAA,QAAA;AAAA,QACN,OAAS,EAAA,CAAC,OAAS,EAAA,OAAA,EAAS,aAAa,CAAA;AAAA,QACzC,WAAa,EAAA,qDAAA;AAAA,QACb,gBAAkB,EAAA,OAAA;AAAA,OACpB;AAAA,MACA,QAAU,EAAA;AAAA,QACR,IAAM,EAAA,MAAA;AAAA,QACN,YAAc,EAAA;AAAA,UACZ;AAAA,YACE,IAAM,EAAA,WAAA;AAAA,YACN,IAAM,EAAA,sBAAA;AAAA,YACN,KAAO,EAAA;AAAA,cACL,QAAU,EAAA;AAAA,gBACR,IAAM,EAAA,MAAA;AAAA,gBACN,KAAO,EAAA,UAAA;AAAA,eACT;AAAA,aACF;AAAA,WACF;AAAA,SACF;AAAA,OACF;AAAA,MACA,QAAU,EAAA;AAAA,QACR,IAAM,EAAA,cAAA;AAAA,QACN,UAAU,CAAC,EAAE,MAAM,KAAO,EAAA,IAAA,EAAM,UAAU,CAAA;AAAA,OAC5C;AAAA,KACF;AAAA,IACA,UAAY,EAAA,4CAAA;AAAA,IACZ,UAAY,EAAA,cAAA;AAAA,GACb,CAAA,CAAA;AACH;;;;;"}
|
package/skinny/registerForm.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { FormProps } from "antd/es/form";
|
|
2
|
-
import { FormItemProps } from "antd/es/form/FormItem";
|
|
3
|
-
import { FormListOperation, FormListProps } from "antd/es/form/FormList";
|
|
1
|
+
import type { FormProps } from "antd/es/form";
|
|
2
|
+
import type { FormItemProps } from "antd/es/form/FormItem";
|
|
3
|
+
import type { FormListOperation, FormListProps } from "antd/es/form/FormList";
|
|
4
4
|
import React from "react";
|
|
5
5
|
import { Registerable } from "./utils";
|
|
6
6
|
interface FormWrapperProps extends FormProps {
|
package/skinny/registerForm.js
CHANGED
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var host = require('@plasmicapp/host');
|
|
4
|
-
var
|
|
5
|
-
var FormItem = require('antd/lib/form/FormItem');
|
|
6
|
-
var FormList = require('antd/lib/form/FormList');
|
|
4
|
+
var antd = require('antd');
|
|
7
5
|
var equal = require('fast-deep-equal');
|
|
8
6
|
var React = require('react');
|
|
9
7
|
var classNames = require('classnames');
|
|
@@ -13,9 +11,6 @@ require('@plasmicapp/host/registerGlobalContext');
|
|
|
13
11
|
|
|
14
12
|
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
15
13
|
|
|
16
|
-
var Form__default = /*#__PURE__*/_interopDefault(Form);
|
|
17
|
-
var FormItem__default = /*#__PURE__*/_interopDefault(FormItem);
|
|
18
|
-
var FormList__default = /*#__PURE__*/_interopDefault(FormList);
|
|
19
14
|
var equal__default = /*#__PURE__*/_interopDefault(equal);
|
|
20
15
|
var React__default = /*#__PURE__*/_interopDefault(React);
|
|
21
16
|
var classNames__default = /*#__PURE__*/_interopDefault(classNames);
|
|
@@ -132,11 +127,13 @@ var __objRest = (source, exclude) => {
|
|
|
132
127
|
}
|
|
133
128
|
return target;
|
|
134
129
|
};
|
|
130
|
+
const FormItem = antd.Form.Item;
|
|
131
|
+
const FormList = antd.Form.List;
|
|
135
132
|
const PathContext = React__default.default.createContext({ relativePath: [], fullPath: [] });
|
|
136
133
|
const InternalFormInstanceContext = React__default.default.createContext(void 0);
|
|
137
134
|
const Internal = (props) => {
|
|
138
135
|
var _a, _b;
|
|
139
|
-
const [form] =
|
|
136
|
+
const [form] = antd.Form.useForm();
|
|
140
137
|
const values = form.getFieldsValue(true);
|
|
141
138
|
const lastValue = React__default.default.useRef(values);
|
|
142
139
|
const childrenNode = typeof props.children === "function" ? props.children(values, form) : props.children;
|
|
@@ -151,46 +148,80 @@ const Internal = (props) => {
|
|
|
151
148
|
React__default.default.useEffect(() => {
|
|
152
149
|
fireOnValuesChange();
|
|
153
150
|
}, []);
|
|
154
|
-
return /* @__PURE__ */ React__default.default.createElement(
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
var _a2, _b2;
|
|
163
|
-
(_a2 = props.onValuesChange) == null ? void 0 : _a2.call(props, ...args);
|
|
164
|
-
(_b2 = props.extendedOnValuesChange) == null ? void 0 : _b2.call(props, args[1]);
|
|
151
|
+
return /* @__PURE__ */ React__default.default.createElement(
|
|
152
|
+
InternalFormInstanceContext.Provider,
|
|
153
|
+
{
|
|
154
|
+
value: {
|
|
155
|
+
fireOnValuesChange,
|
|
156
|
+
forceRemount: () => props.setRemountKey((k) => k + 1),
|
|
157
|
+
formProps: props
|
|
158
|
+
}
|
|
165
159
|
},
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
160
|
+
/* @__PURE__ */ React__default.default.createElement(
|
|
161
|
+
antd.Form,
|
|
162
|
+
__spreadProps(__spreadValues({}, props), {
|
|
163
|
+
onValuesChange: (...args) => {
|
|
164
|
+
var _a2, _b2;
|
|
165
|
+
(_a2 = props.onValuesChange) == null ? void 0 : _a2.call(props, ...args);
|
|
166
|
+
(_b2 = props.extendedOnValuesChange) == null ? void 0 : _b2.call(props, args[1]);
|
|
167
|
+
},
|
|
168
|
+
form,
|
|
169
|
+
labelCol: ((_a = props.labelCol) == null ? void 0 : _a.horizontalOnly) && props.layout !== "horizontal" ? void 0 : props.labelCol,
|
|
170
|
+
wrapperCol: ((_b = props.wrapperCol) == null ? void 0 : _b.horizontalOnly) && props.layout !== "horizontal" ? void 0 : props.wrapperCol
|
|
171
|
+
}),
|
|
172
|
+
/* @__PURE__ */ React__default.default.createElement("style", null, `
|
|
170
173
|
.ant-form-item-explain + div, .ant-form-item-margin-offset {
|
|
171
174
|
display: none;
|
|
172
175
|
}
|
|
173
|
-
`),
|
|
176
|
+
`),
|
|
177
|
+
childrenNode
|
|
178
|
+
)
|
|
179
|
+
);
|
|
174
180
|
};
|
|
175
181
|
function FormWrapper(props) {
|
|
176
182
|
const [remountKey, setRemountKey] = React__default.default.useState(0);
|
|
177
|
-
return /* @__PURE__ */ React__default.default.createElement(Internal, __spreadProps(__spreadValues({
|
|
178
|
-
key: remountKey
|
|
179
|
-
}, props), {
|
|
180
|
-
setRemountKey
|
|
181
|
-
}));
|
|
183
|
+
return /* @__PURE__ */ React__default.default.createElement(Internal, __spreadProps(__spreadValues({ key: remountKey }, props), { setRemountKey }));
|
|
182
184
|
}
|
|
183
185
|
const COMMON_ACTIONS = [
|
|
184
186
|
{
|
|
185
187
|
type: "button-action",
|
|
186
188
|
label: "Append new Form Item",
|
|
187
189
|
onClick: ({ studioOps }) => {
|
|
188
|
-
studioOps.appendToSlot(
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
190
|
+
studioOps.appendToSlot(
|
|
191
|
+
{
|
|
192
|
+
type: "component",
|
|
193
|
+
name: "plasmic-antd5-form-item"
|
|
194
|
+
},
|
|
195
|
+
"children"
|
|
196
|
+
);
|
|
192
197
|
}
|
|
193
198
|
}
|
|
199
|
+
// {
|
|
200
|
+
// type: "button-action" as const,
|
|
201
|
+
// label: "Append new Form Group",
|
|
202
|
+
// onClick: ({ studioOps }: ActionProps<any>) => {
|
|
203
|
+
// studioOps.appendToSlot(
|
|
204
|
+
// {
|
|
205
|
+
// type: "component",
|
|
206
|
+
// name: "plasmic-antd5-form-group",
|
|
207
|
+
// },
|
|
208
|
+
// "children"
|
|
209
|
+
// );
|
|
210
|
+
// },
|
|
211
|
+
// },
|
|
212
|
+
// {
|
|
213
|
+
// type: "button-action" as const,
|
|
214
|
+
// label: "Append new Form List",
|
|
215
|
+
// onClick: ({ studioOps }: ActionProps<any>) => {
|
|
216
|
+
// studioOps.appendToSlot(
|
|
217
|
+
// {
|
|
218
|
+
// type: "component",
|
|
219
|
+
// name: "plasmic-antd5-form-list",
|
|
220
|
+
// },
|
|
221
|
+
// "children"
|
|
222
|
+
// );
|
|
223
|
+
// },
|
|
224
|
+
// },
|
|
194
225
|
];
|
|
195
226
|
function registerForm(loader) {
|
|
196
227
|
const colProp = (displayName, defaultValue) => ({
|
|
@@ -347,6 +378,7 @@ function registerForm(loader) {
|
|
|
347
378
|
]
|
|
348
379
|
},
|
|
349
380
|
onFinishFailed: {
|
|
381
|
+
// function({ values, errorFields, outOfDate })
|
|
350
382
|
type: "eventHandler",
|
|
351
383
|
displayName: "On invalid submit",
|
|
352
384
|
argTypes: [
|
|
@@ -434,7 +466,7 @@ const useFormItemFullName = (name) => {
|
|
|
434
466
|
return typeof name === "object" ? [...pathCtx.fullPath, ...name] : typeof name === "string" ? [...pathCtx.fullPath, name] : void 0;
|
|
435
467
|
};
|
|
436
468
|
function useFormInstanceMaybe() {
|
|
437
|
-
return
|
|
469
|
+
return antd.Form.useFormInstance();
|
|
438
470
|
}
|
|
439
471
|
function FormItemWrapper(props) {
|
|
440
472
|
var _a, _b;
|
|
@@ -465,18 +497,23 @@ function FormItemWrapper(props) {
|
|
|
465
497
|
fireOnValuesChange == null ? void 0 : fireOnValuesChange();
|
|
466
498
|
}, [form, props.initialValue, fullFormItemName]);
|
|
467
499
|
}
|
|
468
|
-
return /* @__PURE__ */ React__default.default.createElement(
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
500
|
+
return /* @__PURE__ */ React__default.default.createElement(
|
|
501
|
+
FormItem,
|
|
502
|
+
__spreadValues(__spreadProps(__spreadValues({}, utils.omit(props, "rules")), {
|
|
503
|
+
label: props.noLabel ? void 0 : props.label,
|
|
504
|
+
name: relativeFormItemName,
|
|
505
|
+
rules
|
|
506
|
+
}), props.helpTextMode === "extra" ? { extra: props.help } : props.helpTextMode === "help" ? (
|
|
507
|
+
// Never show validation errors in this mode, even if user didn't specify help
|
|
508
|
+
{ help: (_b = props.help) != null ? _b : "" }
|
|
509
|
+
) : {}),
|
|
510
|
+
props.customizeProps ? /* @__PURE__ */ React__default.default.createElement(FormItemForwarder, { formItemProps: props }) : props.children
|
|
511
|
+
);
|
|
475
512
|
}
|
|
476
513
|
function FormItemForwarder(_a) {
|
|
477
514
|
var _b = _a, { formItemProps } = _b, props = __objRest(_b, ["formItemProps"]);
|
|
478
515
|
var _a2;
|
|
479
|
-
const status =
|
|
516
|
+
const status = antd.Form.Item.useStatus();
|
|
480
517
|
const internalFormCtx = React__default.default.useContext(InternalFormInstanceContext);
|
|
481
518
|
const data = {
|
|
482
519
|
status: status.status
|
|
@@ -488,7 +525,10 @@ function FormItemForwarder(_a) {
|
|
|
488
525
|
return React__default.default.Children.map(formItemProps.children, (child, i) => {
|
|
489
526
|
var _a3;
|
|
490
527
|
const baseProps = __spreadValues(__spreadValues({}, (_a3 = child.props) != null ? _a3 : {}), props);
|
|
491
|
-
return i === 0 && React.isValidElement(child) ? React.cloneElement(
|
|
528
|
+
return i === 0 && React.isValidElement(child) ? React.cloneElement(
|
|
529
|
+
child,
|
|
530
|
+
mergeProps(baseProps, formItemProps.customizeProps(data, baseProps))
|
|
531
|
+
) : child;
|
|
492
532
|
});
|
|
493
533
|
}
|
|
494
534
|
function registerFormItem(loader) {
|
|
@@ -586,6 +626,7 @@ function registerFormItem(loader) {
|
|
|
586
626
|
return !["extra", "help"].includes((_a = ps.helpTextMode) != null ? _a : "");
|
|
587
627
|
},
|
|
588
628
|
hidePlaceholder: true
|
|
629
|
+
// advanced: true,
|
|
589
630
|
},
|
|
590
631
|
customizeProps: {
|
|
591
632
|
type: "function",
|
|
@@ -614,12 +655,16 @@ function registerFormItem(loader) {
|
|
|
614
655
|
}
|
|
615
656
|
function FormGroup(props) {
|
|
616
657
|
const pathCtx = React__default.default.useContext(PathContext);
|
|
617
|
-
return /* @__PURE__ */ React__default.default.createElement(
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
658
|
+
return /* @__PURE__ */ React__default.default.createElement(
|
|
659
|
+
PathContext.Provider,
|
|
660
|
+
{
|
|
661
|
+
value: {
|
|
662
|
+
relativePath: [...pathCtx.relativePath, props.name],
|
|
663
|
+
fullPath: [...pathCtx.fullPath, props.name]
|
|
664
|
+
}
|
|
665
|
+
},
|
|
666
|
+
props.children
|
|
667
|
+
);
|
|
623
668
|
}
|
|
624
669
|
function registerFormGroup(loader) {
|
|
625
670
|
utils.registerComponentHelper(loader, FormGroup, {
|
|
@@ -643,27 +688,33 @@ const FormListWrapper = React__default.default.forwardRef(function FormListWrapp
|
|
|
643
688
|
var _a;
|
|
644
689
|
const relativeFormItemName = useFormItemRelativeName(props.name);
|
|
645
690
|
const fullFormItemName = useFormItemFullName(props.name);
|
|
646
|
-
const operationsRef = React__default.default.useRef(
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
691
|
+
const operationsRef = React__default.default.useRef(
|
|
692
|
+
void 0
|
|
693
|
+
);
|
|
694
|
+
React__default.default.useImperativeHandle(
|
|
695
|
+
ref,
|
|
696
|
+
() => ({
|
|
697
|
+
add(defaultValue, insertIndex) {
|
|
698
|
+
if (operationsRef.current) {
|
|
699
|
+
const { add } = operationsRef.current[1];
|
|
700
|
+
add(defaultValue, insertIndex);
|
|
701
|
+
}
|
|
702
|
+
},
|
|
703
|
+
remove(index) {
|
|
704
|
+
if (operationsRef.current) {
|
|
705
|
+
const { remove } = operationsRef.current[1];
|
|
706
|
+
remove(index);
|
|
707
|
+
}
|
|
708
|
+
},
|
|
709
|
+
move(from, to) {
|
|
710
|
+
if (operationsRef.current) {
|
|
711
|
+
const { move } = operationsRef.current[1];
|
|
712
|
+
move(from, to);
|
|
713
|
+
}
|
|
664
714
|
}
|
|
665
|
-
}
|
|
666
|
-
|
|
715
|
+
}),
|
|
716
|
+
[operationsRef]
|
|
717
|
+
);
|
|
667
718
|
const inCanvas = !!host.usePlasmicCanvasContext();
|
|
668
719
|
if (inCanvas) {
|
|
669
720
|
const form = useFormInstanceMaybe();
|
|
@@ -683,22 +734,18 @@ const FormListWrapper = React__default.default.forwardRef(function FormListWrapp
|
|
|
683
734
|
}
|
|
684
735
|
}, [props.initialValue, fullFormItemName]);
|
|
685
736
|
}
|
|
686
|
-
return /* @__PURE__ */ React__default.default.createElement(
|
|
687
|
-
name: relativeFormItemName != null ? relativeFormItemName : []
|
|
688
|
-
}), (...args) => {
|
|
737
|
+
return /* @__PURE__ */ React__default.default.createElement(FormList, __spreadProps(__spreadValues({}, props), { name: relativeFormItemName != null ? relativeFormItemName : [] }), (...args) => {
|
|
689
738
|
operationsRef.current = args;
|
|
690
|
-
return args[0].map((field, index) => /* @__PURE__ */ React__default.default.createElement(
|
|
691
|
-
|
|
692
|
-
|
|
693
|
-
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
|
|
697
|
-
|
|
698
|
-
|
|
699
|
-
|
|
700
|
-
data: index
|
|
701
|
-
}, host.repeatedElement(index, props.children)))));
|
|
739
|
+
return args[0].map((field, index) => /* @__PURE__ */ React__default.default.createElement(
|
|
740
|
+
PathContext.Provider,
|
|
741
|
+
{
|
|
742
|
+
value: {
|
|
743
|
+
relativePath: [field.name],
|
|
744
|
+
fullPath: [...fullFormItemName != null ? fullFormItemName : [], field.name]
|
|
745
|
+
}
|
|
746
|
+
},
|
|
747
|
+
/* @__PURE__ */ React__default.default.createElement(host.DataProvider, { name: "currentField", data: field }, /* @__PURE__ */ React__default.default.createElement(host.DataProvider, { name: "currentFieldIndex", data: index }, host.repeatedElement(index, props.children)))
|
|
748
|
+
));
|
|
702
749
|
});
|
|
703
750
|
});
|
|
704
751
|
function registerFormList(loader) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registerForm.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"registerForm.js","sources":["../src/react-utils.tsx","../src/registerForm.tsx"],"sourcesContent":["import classNames from \"classnames\";\nimport React from \"react\";\n\nexport const isBrowser = typeof window !== \"undefined\";\nexport const NONE = Symbol(\"NONE\");\n\nexport const useIsomorphicLayoutEffect = isBrowser\n ? React.useLayoutEffect\n : React.useEffect;\n\nexport function createElementWithChildren(\n elementType: any,\n props: any,\n children: React.ReactNode\n) {\n if (Array.isArray(children)) {\n return React.createElement(\n elementType,\n props,\n ...children\n ) as React.ReactElement;\n } else if (children || \"children\" in props) {\n // Only call React.createElement with `children` if there are actual children,\n // or if there was an explicit (albeit undefined) children passed via\n // props. Otherwise, if you pass `undefined` as the children argument\n // to React.createElement, the created element will have prop {children: undefined}.\n // If the `root` is an PlasmicGeneratedComponent, and these props with {children: undefined}\n // are used, then it will be taken as a `children` override, and will thus blank out\n // everything under the root node.\n return React.createElement(elementType, props, children);\n } else {\n return React.createElement(elementType, props);\n }\n}\n\nexport function ensureNotArray(children: React.ReactNode) {\n if (Array.isArray(children)) {\n if (children.length === 1) {\n return children[0];\n } else {\n return React.createElement(React.Fragment, {}, ...children);\n }\n } else {\n return children;\n }\n}\n\n/**\n * Flattens ReactNode into an array of ReactChild, but does NOT replace\n * missing keys with array index, as React.Children.toArray() does.\n */\nexport function toChildArray(children: React.ReactNode): React.ReactChild[] {\n if (isReactChild(children)) {\n return [children];\n } else if (Array.isArray(children)) {\n return children.flatMap(toChildArray);\n } else {\n return [];\n }\n}\n\nexport function isReactText(child: React.ReactNode): child is React.ReactText {\n return typeof child === \"string\" || typeof child === \"number\";\n}\n\nexport function isReactChild(\n child: React.ReactNode\n): child is React.ReactChild {\n return React.isValidElement(child) || isReactText(child);\n}\n\nexport function isReactFragment(\n child: React.ReactNode\n): child is React.ReactElement {\n return React.isValidElement(child) && child.type === React.Fragment;\n}\n\nexport function isReactNode(x: any) {\n return (\n typeof x === \"string\" || typeof x === \"number\" || React.isValidElement(x)\n );\n}\n\n// From https://stackoverflow.com/questions/54775790/forcing-excess-property-checking-on-variable-passed-to-typescript-function\n// We also wrap the error message in a Partial<> because otherwise Jetbrains IDEs will autocomplete the component with all the string methods as props - see https://github.com/plasmicapp/plasmic/issues/16.\nexport type StrictProps<T, TExpected> = Exclude<\n keyof T,\n keyof TExpected\n> extends never\n ? {}\n : Partial<\"Unexpected extraneous props\">;\n\nexport type HTMLElementRefOf<T extends keyof JSX.IntrinsicElements> = Exclude<\n React.ComponentProps<T>[\"ref\"],\n string\n>;\n\nexport function mergeProps(\n props: Record<string, any>,\n ...restProps: Record<string, any>[]\n): Record<string, any> {\n if (restProps.every((rest) => Object.keys(rest).length === 0)) {\n return props;\n }\n\n const result = { ...props };\n\n for (const rest of restProps) {\n for (const key of Object.keys(rest)) {\n result[key] = mergePropVals(key, result[key], rest[key]);\n }\n }\n\n return result;\n}\n\nfunction updateRef<T>(ref: React.Ref<T> | undefined, value: T | null) {\n if (!ref) {\n return;\n }\n\n if (typeof ref === \"function\") {\n ref(value);\n } else {\n if (!Object.isFrozen(ref)) {\n (ref as React.MutableRefObject<T | null>).current = value;\n }\n }\n}\n\nexport function mergeRefs<T>(...refs: (React.Ref<T> | undefined)[]) {\n return (value: T) => {\n for (const ref of refs) {\n updateRef(ref, value);\n }\n };\n}\n\nexport function mergePropVals(name: string, val1: any, val2: any): any {\n if (val1 === NONE || val2 === NONE) {\n // The NONE sentinel always skips all merging and returns null\n return null;\n } else if (val1 == null) {\n // If either of them is nil, prefer the other\n return val2;\n } else if (val2 == null) {\n return val1;\n } else if (name === \"className\") {\n // Special case for className -- always combine both class names\n return classNames(val1, val2);\n } else if (name === \"style\") {\n // Special case for style -- always shallow-merge style dicts\n return { ...val1, ...val2 };\n } else if (name === \"ref\") {\n // Special case for ref\n return mergeRefs(val1, val2);\n } else if (typeof val1 !== typeof val2) {\n // If the type of the two values are different, then no way to merge them.\n // Prefer val2.\n return val2;\n } else if (name.startsWith(\"on\") && typeof val1 === \"function\") {\n // Special case for event handlers -- always call both handlers\n return (...args: any[]) => {\n let res: any;\n if (typeof val1 === \"function\") {\n res = val1(...args);\n }\n if (typeof val2 === \"function\") {\n res = val2(...args);\n }\n return res;\n };\n } else {\n // For all else, prefer val2\n return val2;\n }\n}\n\nexport function getElementTypeName(element: React.ReactElement) {\n if (typeof element.type === \"string\") {\n return element.type;\n } else {\n const comp = element.type as any;\n return comp.displayName ?? comp.name ?? comp.render?.name ?? \"Component\";\n }\n}\n","import {\n ActionProps,\n DataProvider,\n repeatedElement,\n usePlasmicCanvasContext,\n} from \"@plasmicapp/host\";\nimport { Form } from \"antd\";\nimport type { FormInstance, FormProps } from \"antd/es/form\";\nimport type { FormItemProps } from \"antd/es/form/FormItem\";\nimport type { FormListOperation, FormListProps } from \"antd/es/form/FormList\";\nimport type { ColProps } from \"antd/es/grid/col\";\nimport equal from \"fast-deep-equal\";\nimport React, { cloneElement, isValidElement } from \"react\";\nimport { mergeProps } from \"./react-utils\";\nimport { omit, Registerable, registerComponentHelper } from \"./utils\";\n\nconst FormItem = Form.Item;\nconst FormList = Form.List;\n\ninterface FormWrapperProps extends FormProps {\n /**\n * https://ant.design/components/form#setfieldsvalue-do-not-trigger-onfieldschange-or-onvalueschange\n * Because setFieldsValue doesn't trigger onValuesChange, we need to create our own onChange function.\n * This will allow us to trigger the onChange function and keep the value state updated in canvas.\n * We also don't invoke onValuesChange to avoid changing the standard behavior, since users may have\n * overridden this function in their codebase\n **/\n extendedOnValuesChange?: (\n values: Parameters<NonNullable<FormProps[\"onValuesChange\"]>>[1]\n ) => void;\n}\n\nconst PathContext = React.createContext<{\n relativePath: (string | number)[]; // used for form.items inside a form.list\n fullPath: (string | number)[];\n}>({ relativePath: [], fullPath: [] });\n\ninterface InternalFormInstanceContextData {\n fireOnValuesChange: () => void;\n forceRemount: () => void;\n formProps: FormProps;\n}\n\nconst InternalFormInstanceContext = React.createContext<\n InternalFormInstanceContextData | undefined\n>(undefined);\n\nconst Internal = (\n props: FormWrapperProps & {\n setRemountKey: React.Dispatch<React.SetStateAction<number>>;\n labelCol?: ColProps & { horizontalOnly?: boolean };\n wrapperCol?: ColProps & { horizontalOnly?: boolean };\n }\n) => {\n const [form] = Form.useForm();\n const values = form.getFieldsValue(true);\n const lastValue = React.useRef(values);\n // extracted from https://github.com/react-component/field-form/blob/master/src/Form.tsx#L120\n const childrenNode =\n typeof props.children === \"function\"\n ? props.children(values, form)\n : props.children;\n\n const fireOnValuesChange = () => {\n const values = form.getFieldsValue(true);\n if (!equal(values, lastValue.current)) {\n props.extendedOnValuesChange?.(values);\n lastValue.current = values;\n }\n };\n\n React.useEffect(() => {\n fireOnValuesChange();\n }, []);\n return (\n <InternalFormInstanceContext.Provider\n value={{\n fireOnValuesChange,\n forceRemount: () => props.setRemountKey((k) => k + 1),\n formProps: props,\n }}\n >\n <Form\n {...props}\n onValuesChange={(...args) => {\n props.onValuesChange?.(...args);\n props.extendedOnValuesChange?.(args[1]);\n }}\n form={form}\n labelCol={\n props.labelCol?.horizontalOnly && props.layout !== \"horizontal\"\n ? undefined\n : props.labelCol\n }\n wrapperCol={\n props.wrapperCol?.horizontalOnly && props.layout !== \"horizontal\"\n ? undefined\n : props.wrapperCol\n }\n >\n {/*Remove built-in spacing on form items*/}\n <style>{`\n .ant-form-item-explain + div, .ant-form-item-margin-offset {\n display: none;\n }\n `}</style>\n {childrenNode}\n </Form>\n </InternalFormInstanceContext.Provider>\n );\n};\nexport function FormWrapper(props: FormWrapperProps) {\n const [remountKey, setRemountKey] = React.useState(0);\n return <Internal key={remountKey} {...props} setRemountKey={setRemountKey} />;\n}\n\nconst COMMON_ACTIONS = [\n {\n type: \"button-action\" as const,\n label: \"Append new Form Item\",\n onClick: ({ studioOps }: ActionProps<any>) => {\n studioOps.appendToSlot(\n {\n type: \"component\",\n name: \"plasmic-antd5-form-item\",\n },\n \"children\"\n );\n },\n },\n // {\n // type: \"button-action\" as const,\n // label: \"Append new Form Group\",\n // onClick: ({ studioOps }: ActionProps<any>) => {\n // studioOps.appendToSlot(\n // {\n // type: \"component\",\n // name: \"plasmic-antd5-form-group\",\n // },\n // \"children\"\n // );\n // },\n // },\n // {\n // type: \"button-action\" as const,\n // label: \"Append new Form List\",\n // onClick: ({ studioOps }: ActionProps<any>) => {\n // studioOps.appendToSlot(\n // {\n // type: \"component\",\n // name: \"plasmic-antd5-form-list\",\n // },\n // \"children\"\n // );\n // },\n // },\n];\n\nexport function registerForm(loader?: Registerable) {\n const colProp = (displayName?: string, defaultValue?: {}) =>\n ({\n type: \"object\",\n displayName: displayName,\n advanced: true,\n fields: {\n span: {\n type: \"number\",\n displayName: \"Grid columns\",\n description:\n \"The number of grid columns to span (24 columns available)\",\n min: 1,\n max: 24,\n },\n offset: {\n type: \"number\",\n displayName: \"Offset columns\",\n description: \"Number of grid columns to skip from the left\",\n min: 0,\n max: 23,\n },\n horizontalOnly: {\n type: \"boolean\",\n displayName: \"Horizontal only\",\n description: \"Only apply to horizontal layout\",\n },\n },\n defaultValue: defaultValue,\n } as const);\n registerComponentHelper(loader, FormWrapper, {\n name: \"plasmic-antd5-form\",\n displayName: \"Form\",\n defaultStyles: {\n display: \"plasmic-content-layout\",\n gridRowGap: \"10px\",\n },\n props: {\n children: {\n type: \"slot\",\n defaultValue: [\n {\n type: \"component\",\n name: \"plasmic-antd5-form-item\",\n props: {\n label: {\n type: \"text\",\n value: \"Name\",\n },\n name: \"name\",\n children: {\n type: \"component\",\n name: \"plasmic-antd5-input\",\n },\n },\n },\n {\n type: \"component\",\n name: \"plasmic-antd5-form-item\",\n props: {\n label: {\n type: \"text\",\n value: \"Message\",\n },\n name: \"message\",\n children: {\n type: \"component\",\n name: \"plasmic-antd5-textarea\",\n },\n },\n },\n {\n type: \"component\",\n name: \"plasmic-antd5-button\",\n props: {\n children: {\n type: \"text\",\n value: \"Submit\",\n },\n },\n },\n ],\n },\n initialValues: {\n type: \"object\",\n forceRemount: true,\n } as any,\n layout: {\n type: \"choice\",\n options: [\"horizontal\", \"vertical\", \"inline\"],\n defaultValue: \"vertical\",\n },\n labelAlign: {\n type: \"choice\",\n options: [\"left\", \"right\"],\n defaultValueHint: \"right\",\n advanced: true,\n },\n labelCol: colProp(\"Label layout\", {\n span: 8,\n horizontalOnly: true,\n }),\n wrapperCol: colProp(\"Field layout\", {\n span: 16,\n horizontalOnly: true,\n }),\n colon: {\n type: \"boolean\",\n description: `Show a colon after the label by default (only for horizontal layout)`,\n defaultValueHint: true,\n advanced: true,\n },\n requiredMark: {\n displayName: \"Required/optional mark\",\n type: \"choice\",\n options: [\n {\n value: \"optional\",\n label: \"Indicate optional fields\",\n },\n {\n value: true,\n label: \"Indicate required fields with asterisk\",\n },\n {\n value: false,\n label: \"Show no indicators\",\n },\n ],\n advanced: true,\n defaultValueHint: true,\n },\n extendedOnValuesChange: {\n type: \"eventHandler\",\n displayName: \"On values change\",\n argTypes: [\n {\n name: \"changedValues\",\n type: \"object\",\n },\n {\n name: \"allValues\",\n type: \"object\",\n },\n ],\n },\n onFinish: {\n type: \"eventHandler\",\n displayName: \"On submit\",\n argTypes: [\n {\n name: \"values\",\n type: \"object\",\n },\n ],\n },\n onFinishFailed: {\n // function({ values, errorFields, outOfDate })\n type: \"eventHandler\",\n displayName: \"On invalid submit\",\n argTypes: [\n {\n name: \"data\",\n type: \"object\",\n },\n ],\n },\n validateTrigger: {\n type: \"choice\",\n options: [\"onSubmit\", \"onChange\", \"onBlur\"],\n multiSelect: true,\n defaultValueHint: [\"onChange\"],\n advanced: true,\n },\n },\n actions: COMMON_ACTIONS,\n states: {\n value: {\n type: \"readonly\",\n variableType: \"object\",\n onChangeProp: \"extendedOnValuesChange\",\n },\n },\n importPath: \"@plasmicpkgs/antd5/skinny/registerForm\",\n importName: \"FormWrapper\",\n });\n}\n\ninterface FormControlContextData {\n internalFormCtx?: InternalFormInstanceContextData;\n}\n\ninterface CuratedFieldData {\n status: string | undefined;\n // path: (string | number)[];\n // errors: string[];\n // warnings: string[];\n // value: any;\n // trigger: (x: any) => void;\n}\n\ninterface InternalFormItemProps extends Omit<FormItemProps, \"rules\"> {\n rules: PlasmicRule[];\n helpTextMode?: string;\n noLabel?: boolean;\n customizeProps?: (\n fieldData: CuratedFieldData,\n props: InternalFormItemProps\n ) => FormItemProps;\n setControlContextData?: (data: FormControlContextData) => void;\n}\n\ninterface PlasmicRule {\n ruleType:\n | \"enum\"\n | \"len\"\n | \"max\"\n | \"min\"\n | \"regex\"\n | \"required\"\n | \"whitespace\"\n | \"advanced\";\n length?: number;\n pattern?: string;\n custom?: (...args: any[]) => any;\n options?: { value: string }[];\n message?: string;\n}\n\nfunction plasmicRulesToAntdRules(plasmicRules: PlasmicRule[]) {\n const rules: FormItemProps[\"rules\"] = [];\n for (const plasmicRule of plasmicRules) {\n switch (plasmicRule.ruleType) {\n case \"enum\":\n rules.push({\n type: \"enum\",\n enum: plasmicRule.options?.map((opt) => opt.value) ?? [],\n message: plasmicRule.message,\n });\n break;\n case \"required\":\n rules.push({\n required: true,\n message: plasmicRule.message,\n });\n break;\n case \"regex\":\n rules.push({\n pattern: new RegExp(plasmicRule.pattern ?? \"\"),\n message: plasmicRule.message,\n });\n break;\n case \"whitespace\":\n rules.push({\n whitespace: true,\n message: plasmicRule.message,\n });\n break;\n case \"min\":\n case \"max\":\n rules.push({\n [plasmicRule.ruleType]: plasmicRule.length,\n message: plasmicRule.message,\n });\n break;\n case \"advanced\":\n rules.push({\n validator: (...args) =>\n plasmicRule.custom?.apply(null, args)\n ? Promise.resolve()\n : Promise.reject(),\n message: plasmicRule.message,\n });\n }\n }\n return rules;\n}\n\nconst useFormItemRelativeName = (name: FormItemProps[\"name\"]) => {\n const pathCtx = React.useContext(PathContext);\n return typeof name === \"object\"\n ? [...pathCtx.relativePath, ...name]\n : typeof name === \"string\"\n ? [...pathCtx.relativePath, name]\n : undefined;\n};\n\nconst useFormItemFullName = (name: FormItemProps[\"name\"]) => {\n const pathCtx = React.useContext(PathContext);\n return typeof name === \"object\"\n ? [...pathCtx.fullPath, ...name]\n : typeof name === \"string\"\n ? [...pathCtx.fullPath, name]\n : undefined;\n};\n\nfunction useFormInstanceMaybe(): FormInstance<any> | undefined {\n return Form.useFormInstance();\n}\n\nexport function FormItemWrapper(props: InternalFormItemProps) {\n const relativeFormItemName = useFormItemRelativeName(props.name);\n const fullFormItemName = useFormItemFullName(props.name);\n const rules = props.rules ? plasmicRulesToAntdRules(props.rules) : undefined;\n\n const inCanvas = !!usePlasmicCanvasContext();\n if (inCanvas) {\n const form = useFormInstanceMaybe();\n const prevPropValues = React.useRef({\n initialValue: props.initialValue,\n name: props.name,\n });\n const internalFormCtx = React.useContext(InternalFormInstanceContext);\n const { fireOnValuesChange, forceRemount } = internalFormCtx ?? {};\n props.setControlContextData?.({\n internalFormCtx,\n });\n React.useEffect(() => {\n if (prevPropValues.current.name !== props.name) {\n forceRemount?.();\n }\n if (\n !fullFormItemName ||\n form?.getFieldValue(fullFormItemName) !==\n prevPropValues.current.initialValue\n ) {\n // this field value is set at the form level\n return;\n }\n form?.setFieldValue(fullFormItemName, props.initialValue);\n prevPropValues.current.initialValue = props.initialValue;\n fireOnValuesChange?.();\n }, [form, props.initialValue, fullFormItemName]);\n }\n return (\n <FormItem\n {...omit(props, \"rules\")}\n label={props.noLabel ? undefined : props.label}\n name={relativeFormItemName}\n rules={rules}\n {...(props.helpTextMode === \"extra\"\n ? { extra: props.help }\n : props.helpTextMode === \"help\"\n ? // Never show validation errors in this mode, even if user didn't specify help\n { help: props.help ?? \"\" }\n : {})}\n >\n {props.customizeProps ? (\n <FormItemForwarder formItemProps={props} />\n ) : (\n props.children\n )}\n </FormItem>\n );\n}\n\nfunction FormItemForwarder({ formItemProps, ...props }: any) {\n const status = Form.Item.useStatus();\n const internalFormCtx = React.useContext(InternalFormInstanceContext);\n // const value = props[formItemProps.valuePropName ?? \"value\"];\n // const trigger = props[formItemProps.trigger ?? \"onChange\"];\n const data: CuratedFieldData = {\n status: status.status,\n };\n props.setControlContextData?.({\n internalFormCtx,\n status,\n });\n return React.Children.map(formItemProps.children, (child, i) => {\n const baseProps = { ...(child.props ?? {}), ...props };\n return i === 0 && isValidElement(child)\n ? cloneElement(\n child,\n mergeProps(baseProps, formItemProps.customizeProps(data, baseProps))\n )\n : child;\n });\n}\n\nexport function registerFormItem(loader?: Registerable) {\n registerComponentHelper(loader, FormItemWrapper, {\n name: \"plasmic-antd5-form-item\",\n displayName: \"Form Item\",\n parentComponentName: \"plasmic-antd5-form\",\n props: {\n label: {\n type: \"slot\",\n defaultValue: {\n type: \"text\",\n value: \"Label\",\n },\n },\n children: {\n type: \"slot\",\n defaultValue: {\n type: \"component\",\n name: \"plasmic-antd5-input\",\n },\n },\n name: {\n type: \"string\",\n },\n initialValue: {\n type: \"string\",\n },\n rules: {\n type: \"formValidationRules\",\n } as any,\n noLabel: {\n type: \"boolean\",\n advanced: true,\n },\n colon: {\n type: \"boolean\",\n defaultValueHint: (_ps: InternalFormItemProps, ctx: any) =>\n (ctx as FormControlContextData)?.internalFormCtx?.formProps.colon ??\n true,\n advanced: true,\n },\n labelAlign: {\n type: \"choice\",\n options: [\"left\", \"right\"],\n advanced: true,\n },\n hidden: {\n type: \"boolean\",\n advanced: true,\n },\n validateTrigger: {\n type: \"choice\",\n options: [\"onSubmit\", \"onChange\", \"onBlur\"],\n multiSelect: true,\n advanced: true,\n },\n shouldUpdate: {\n type: \"boolean\",\n advanced: true,\n displayName: \"Always re-render\",\n description:\n \"Form items normally only re-render when the corresponding form value changes, for performance. This forces it to always re-render.\",\n },\n dependencies: {\n type: \"array\",\n advanced: true,\n displayName: \"Dependencies\",\n description:\n \"Form items can depend on other form items. This forces it to reevaluate the validation rules when the other form item changes.\",\n },\n helpTextMode: {\n type: \"choice\",\n displayName: \"Help text\",\n options: [\n {\n value: \"errors\",\n label: \"Validation errors\",\n },\n {\n value: \"extra\",\n label: \"Custom help text and validation errors\",\n },\n {\n value: \"help\",\n label: \"Custom help text, no validation errors\",\n },\n ],\n defaultValueHint: \"Show validation errors\",\n description:\n \"What to show in the help text. Edit help text by editing the 'help' slot in the outline.\",\n },\n help: {\n type: \"slot\",\n hidden: (ps) => ![\"extra\", \"help\"].includes(ps.helpTextMode ?? \"\"),\n hidePlaceholder: true,\n // advanced: true,\n },\n customizeProps: {\n type: \"function\",\n description:\n \"Customize the props passed into the wrapped field component. Takes the current status ('success', 'warning', 'error', or 'validating').)\",\n argNames: [\"fieldData\"],\n argValues: (_ps: any, ctx: any) => [\n {\n status: ctx?.status?.status,\n },\n ],\n advanced: true,\n } as any,\n noStyle: {\n type: \"boolean\",\n displayName: \"Field only\",\n description:\n \"Don't render anything but the wrapped field component - so no label, help text, validation error, etc.\",\n advanced: true,\n },\n },\n importPath: \"@plasmicpkgs/antd5/skinny/registerForm\",\n importName: \"FormItemWrapper\",\n });\n}\n\nexport interface FormGroupProps {\n name: string;\n children: React.ReactNode;\n}\n\nexport function FormGroup(props: FormGroupProps) {\n const pathCtx = React.useContext(PathContext);\n return (\n <PathContext.Provider\n value={{\n relativePath: [...pathCtx.relativePath, props.name],\n fullPath: [...pathCtx.fullPath, props.name],\n }}\n >\n {props.children}\n </PathContext.Provider>\n );\n}\n\nexport function registerFormGroup(loader?: Registerable) {\n registerComponentHelper(loader, FormGroup, {\n name: \"plasmic-antd5-form-group\",\n displayName: \"Form Group\",\n parentComponentName: \"plasmic-antd5-form\",\n actions: COMMON_ACTIONS,\n props: {\n name: {\n type: \"string\",\n },\n children: {\n type: \"slot\",\n },\n },\n importPath: \"@plasmicpkgs/antd5/skinny/registerForm\",\n importName: \"FormGroup\",\n });\n}\n\ntype FormListWrapperProps = FormListProps & {\n children: React.ReactNode;\n};\n\ntype FormListRenderFuncParams = Parameters<FormListProps[\"children\"]>;\n\nexport const FormListWrapper = React.forwardRef(function FormListWrapper(\n props: FormListWrapperProps,\n ref: React.Ref<FormListOperation>\n) {\n const relativeFormItemName = useFormItemRelativeName(props.name);\n const fullFormItemName = useFormItemFullName(props.name);\n const operationsRef = React.useRef<FormListRenderFuncParams | undefined>(\n undefined\n );\n React.useImperativeHandle(\n ref,\n () => ({\n add(defaultValue, insertIndex) {\n if (operationsRef.current) {\n const { add } = operationsRef.current[1];\n add(defaultValue, insertIndex);\n }\n },\n remove(index) {\n if (operationsRef.current) {\n const { remove } = operationsRef.current[1];\n remove(index);\n }\n },\n move(from, to) {\n if (operationsRef.current) {\n const { move } = operationsRef.current[1];\n move(from, to);\n }\n },\n }),\n [operationsRef]\n );\n const inCanvas = !!usePlasmicCanvasContext();\n if (inCanvas) {\n const form = useFormInstanceMaybe();\n const prevPropValues = React.useRef({\n initialValue: props.initialValue,\n name: props.name,\n });\n const { fireOnValuesChange, forceRemount } =\n React.useContext(InternalFormInstanceContext) ?? {};\n React.useEffect(() => {\n if (prevPropValues.current.name !== props.name) {\n forceRemount?.();\n }\n if (fullFormItemName) {\n form?.setFieldValue(fullFormItemName, props.initialValue);\n prevPropValues.current.initialValue = props.initialValue;\n fireOnValuesChange?.();\n }\n }, [props.initialValue, fullFormItemName]);\n }\n return (\n <FormList {...props} name={relativeFormItemName ?? []}>\n {(...args) => {\n operationsRef.current = args;\n return args[0].map((field, index) => (\n <PathContext.Provider\n value={{\n relativePath: [field.name],\n fullPath: [...(fullFormItemName ?? []), field.name],\n }}\n >\n <DataProvider name={\"currentField\"} data={field}>\n <DataProvider name={\"currentFieldIndex\"} data={index}>\n {repeatedElement(index, props.children)}\n </DataProvider>\n </DataProvider>\n </PathContext.Provider>\n ));\n }}\n </FormList>\n );\n});\n\nexport function registerFormList(loader?: Registerable) {\n registerComponentHelper(loader, FormListWrapper, {\n name: \"plasmic-antd5-form-list\",\n parentComponentName: \"plasmic-antd5-form\",\n displayName: \"Form List\",\n actions: COMMON_ACTIONS,\n props: {\n children: {\n type: \"slot\",\n defaultValue: [\n {\n type: \"hbox\",\n children: [\n {\n type: \"component\",\n name: \"plasmic-antd5-form-item\",\n props: {\n name: \"firstName\",\n label: {\n type: \"text\",\n value: \"First name\",\n },\n children: {\n type: \"component\",\n name: \"plasmic-antd5-input\",\n },\n },\n },\n {\n type: \"component\",\n name: \"plasmic-antd5-form-item\",\n props: {\n name: \"lastName\",\n label: {\n type: \"text\",\n value: \"Last name\",\n },\n children: {\n type: \"component\",\n name: \"plasmic-antd5-input\",\n },\n },\n },\n ],\n },\n ],\n },\n name: {\n type: \"string\",\n defaultValue: \"guests\",\n },\n initialValue: {\n type: \"array\",\n defaultValue: [\n {\n firstName: \"Jane\",\n lastName: \"Doe\",\n },\n {\n firstName: \"John\",\n lastName: \"Smith\",\n },\n ],\n } as any,\n },\n unstable__refActions: {\n add: {\n displayName: \"Add an item\",\n parameters: [\n {\n name: \"defaultValue\",\n displayName: \"Default value\",\n type: \"object\",\n },\n {\n name: \"insertIndex\",\n displayName: \"Insert index\",\n type: \"number\",\n },\n ],\n },\n remove: {\n displayName: \"Remove an item\",\n parameters: [\n {\n name: \"index\",\n displayName: \"Index\",\n type: \"number\",\n },\n ],\n },\n move: {\n displayName: \"Move field\",\n parameters: [\n {\n name: \"from\",\n displayName: \"From\",\n type: \"number\",\n },\n {\n name: \"to\",\n displayName: \"To\",\n type: \"number\",\n },\n ],\n },\n },\n importPath: \"@plasmicpkgs/antd5/skinny/registerForm\",\n importName: \"FormListWrapper\",\n });\n}\n"],"names":["React","__spreadValues","classNames","Form","_a","values","equal","_b","registerComponentHelper","usePlasmicCanvasContext","omit","isValidElement","cloneElement","FormListWrapper","DataProvider","repeatedElement"],"mappings":"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"}
|