@hkyhy/marsun-components-core 0.1.68 → 0.1.72
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/components/FlexBox/FlexBox.d.ts +7 -0
- package/dist/components/FlexBox/FlexBox.js +43 -0
- package/dist/components/FlexBox/FlexBox.js.map +1 -0
- package/dist/components/FlexBox/FlexBoxFetch.d.ts +3 -0
- package/dist/components/FlexBox/FlexBoxFetch.js +92 -0
- package/dist/components/FlexBox/FlexBoxFetch.js.map +1 -0
- package/dist/components/FlexBox/FlexBoxView.d.ts +18 -0
- package/dist/components/FlexBox/FlexBoxView.js +42 -0
- package/dist/components/FlexBox/FlexBoxView.js.map +1 -0
- package/dist/components/FlexBox/defaultColumns.d.ts +7 -0
- package/dist/components/FlexBox/defaultColumns.js +26 -0
- package/dist/components/FlexBox/defaultColumns.js.map +1 -0
- package/dist/components/FlexBox/index.d.ts +79 -0
- package/dist/components/FlexBox/useFlexBox.d.ts +5 -0
- package/dist/components/FlexBox/useFlexBox.js +19 -0
- package/dist/components/FlexBox/useFlexBox.js.map +1 -0
- package/dist/components/Form/FormDataSync.d.ts +3 -0
- package/dist/components/Form/FormDataSync.js +29 -15
- package/dist/components/Form/FormDataSync.js.map +1 -1
- package/dist/components/Form/InputRange.d.ts +19 -0
- package/dist/components/Form/InputRange.js +84 -0
- package/dist/components/Form/InputRange.js.map +1 -0
- package/dist/components/Form/InputRange.module.scss.js +9 -0
- package/dist/components/Form/InputRange.module.scss.js.map +1 -0
- package/dist/components/Form/index.d.ts +4 -0
- package/dist/components/Form/inputRangeRules.d.ts +15 -0
- package/dist/components/Form/inputRangeRules.js +23 -0
- package/dist/components/Form/inputRangeRules.js.map +1 -0
- package/dist/components/Form/kneFormInfo.js +9 -9
- package/dist/components/FormInfo/ErrorTip.d.ts +7 -0
- package/dist/components/FormInfo/ErrorTip.js +89 -0
- package/dist/components/FormInfo/ErrorTip.js.map +1 -0
- package/dist/components/FormInfo/Form.d.ts +7 -0
- package/dist/components/FormInfo/Form.js +23 -0
- package/dist/components/FormInfo/Form.js.map +1 -0
- package/dist/components/FormInfo/FormApiButton.d.ts +7 -0
- package/dist/components/FormInfo/FormApiButton.js +28 -0
- package/dist/components/FormInfo/FormApiButton.js.map +1 -0
- package/dist/components/FormInfo/FormDrawer.d.ts +9 -0
- package/dist/components/FormInfo/FormDrawer.js +42 -0
- package/dist/components/FormInfo/FormDrawer.js.map +1 -0
- package/dist/components/FormInfo/FormInfo.d.ts +4 -0
- package/dist/components/FormInfo/FormInfo.js +61 -0
- package/dist/components/FormInfo/FormInfo.js.map +1 -0
- package/dist/components/FormInfo/FormItem.d.ts +4 -0
- package/dist/components/FormInfo/FormItem.js +10 -0
- package/dist/components/FormInfo/FormItem.js.map +1 -0
- package/dist/components/FormInfo/FormModal.d.ts +11 -0
- package/dist/components/FormInfo/FormModal.js +43 -0
- package/dist/components/FormInfo/FormModal.js.map +1 -0
- package/dist/components/FormInfo/FormSteps.d.ts +9 -0
- package/dist/components/FormInfo/FormSteps.js +96 -0
- package/dist/components/FormInfo/FormSteps.js.map +1 -0
- package/dist/components/FormInfo/FormStepsModal.d.ts +14 -0
- package/dist/components/FormInfo/FormStepsModal.js +96 -0
- package/dist/components/FormInfo/FormStepsModal.js.map +1 -0
- package/dist/components/FormInfo/List.d.ts +6 -0
- package/dist/components/FormInfo/List.js +180 -0
- package/dist/components/FormInfo/List.js.map +1 -0
- package/dist/components/FormInfo/MultiField.d.ts +6 -0
- package/dist/components/FormInfo/MultiField.js +76 -0
- package/dist/components/FormInfo/MultiField.js.map +1 -0
- package/dist/components/FormInfo/Steps.d.ts +26 -0
- package/dist/components/FormInfo/Steps.js +178 -0
- package/dist/components/FormInfo/Steps.js.map +1 -0
- package/dist/components/FormInfo/TableList.d.ts +6 -0
- package/dist/components/FormInfo/TableList.js +216 -0
- package/dist/components/FormInfo/TableList.js.map +1 -0
- package/dist/components/FormInfo/buildFormOverlayProps.d.ts +27 -0
- package/dist/components/FormInfo/buildFormOverlayProps.js +55 -0
- package/dist/components/FormInfo/buildFormOverlayProps.js.map +1 -0
- package/dist/components/FormInfo/fields.d.ts +33 -0
- package/dist/components/FormInfo/fields.js +30 -0
- package/dist/components/FormInfo/fields.js.map +1 -0
- package/dist/components/FormInfo/index.d.ts +21 -0
- package/dist/components/FormInfo/locale/zh-CN.d.ts +16 -0
- package/dist/components/FormInfo/locale/zh-CN.js +17 -0
- package/dist/components/FormInfo/locale/zh-CN.js.map +1 -0
- package/dist/components/FormInfo/nestBlock.d.ts +15 -0
- package/dist/components/FormInfo/nestBlock.js +19 -0
- package/dist/components/FormInfo/nestBlock.js.map +1 -0
- package/dist/components/FormInfo/style.module.scss.js +57 -0
- package/dist/components/FormInfo/style.module.scss.js.map +1 -0
- package/dist/components/FormInfo/types.d.ts +213 -0
- package/dist/components/FormInfo/withLocale.d.ts +14 -0
- package/dist/components/FormInfo/withLocale.js +25 -0
- package/dist/components/FormInfo/withLocale.js.map +1 -0
- package/dist/components/Iam/client.d.ts +42 -0
- package/dist/components/Iam/index.d.ts +10 -0
- package/dist/components/Iam/pages/IamOrgPage.d.ts +8 -0
- package/dist/components/Iam/pages/IamOrgPage.js +45 -0
- package/dist/components/Iam/pages/IamOrgPage.js.map +1 -0
- package/dist/components/Iam/pages/IamRolesPage.d.ts +24 -0
- package/dist/components/Iam/pages/IamRolesPage.js +222 -0
- package/dist/components/Iam/pages/IamRolesPage.js.map +1 -0
- package/dist/components/Iam/pages/IamSharedGroupsPage.d.ts +6 -0
- package/dist/components/Iam/pages/IamSharedGroupsPage.js +207 -0
- package/dist/components/Iam/pages/IamSharedGroupsPage.js.map +1 -0
- package/dist/components/Iam/pages/IamUsersPage.d.ts +10 -0
- package/dist/components/Iam/pages/IamUsersPage.js +314 -0
- package/dist/components/Iam/pages/IamUsersPage.js.map +1 -0
- package/dist/components/Iam/types.d.ts +85 -0
- package/dist/components/Iam/utils/catalogToItems.d.ts +3 -0
- package/dist/components/Iam/utils/catalogToItems.js +17 -0
- package/dist/components/Iam/utils/catalogToItems.js.map +1 -0
- package/dist/components/Iam/utils/draftEffectivePermissions.d.ts +48 -0
- package/dist/components/Iam/utils/draftEffectivePermissions.js +42 -0
- package/dist/components/Iam/utils/draftEffectivePermissions.js.map +1 -0
- package/dist/components/Iam/utils/multiTagSelect.d.ts +15 -0
- package/dist/components/Iam/utils/multiTagSelect.js +21 -0
- package/dist/components/Iam/utils/multiTagSelect.js.map +1 -0
- package/dist/components/Iam/utils/roleDisplay.d.ts +13 -0
- package/dist/components/Iam/utils/roleDisplay.js +17 -0
- package/dist/components/Iam/utils/roleDisplay.js.map +1 -0
- package/dist/components/InfoPage/CentralContent/boxComputed.d.ts +2 -0
- package/dist/components/InfoPage/CentralContent/boxComputed.js +15 -0
- package/dist/components/InfoPage/CentralContent/boxComputed.js.map +1 -0
- package/dist/components/InfoPage/CentralContent/index.d.ts +3 -0
- package/dist/components/InfoPage/CentralContent/index.js +102 -0
- package/dist/components/InfoPage/CentralContent/index.js.map +1 -0
- package/dist/components/InfoPage/CentralContent/style.module.scss.js +15 -0
- package/dist/components/InfoPage/CentralContent/style.module.scss.js.map +1 -0
- package/dist/components/InfoPage/Content/index.d.ts +16 -0
- package/dist/components/InfoPage/Content/index.js +72 -0
- package/dist/components/InfoPage/Content/index.js.map +1 -0
- package/dist/components/InfoPage/Content/style.module.scss.js +14 -0
- package/dist/components/InfoPage/Content/style.module.scss.js.map +1 -0
- package/dist/components/InfoPage/Descriptions/index.d.ts +9 -0
- package/dist/components/InfoPage/Descriptions/index.js +48 -0
- package/dist/components/InfoPage/Descriptions/index.js.map +1 -0
- package/dist/components/InfoPage/Descriptions/style.module.scss.js +11 -0
- package/dist/components/InfoPage/Descriptions/style.module.scss.js.map +1 -0
- package/dist/components/InfoPage/Flow/index.d.ts +9 -0
- package/dist/components/InfoPage/Flow/index.js +165 -0
- package/dist/components/InfoPage/Flow/index.js.map +1 -0
- package/dist/components/InfoPage/Flow/style.module.scss.js +19 -0
- package/dist/components/InfoPage/Flow/style.module.scss.js.map +1 -0
- package/dist/components/InfoPage/InfoPage/Collapse.d.ts +10 -0
- package/dist/components/InfoPage/InfoPage/Collapse.js +11 -0
- package/dist/components/InfoPage/InfoPage/Collapse.js.map +1 -0
- package/dist/components/InfoPage/InfoPage/index.d.ts +21 -0
- package/dist/components/InfoPage/InfoPage/index.js +35 -0
- package/dist/components/InfoPage/InfoPage/index.js.map +1 -0
- package/dist/components/InfoPage/InfoPage/style.module.scss.js +15 -0
- package/dist/components/InfoPage/InfoPage/style.module.scss.js.map +1 -0
- package/dist/components/InfoPage/Report/List.d.ts +6 -0
- package/dist/components/InfoPage/Report/List.js +26 -0
- package/dist/components/InfoPage/Report/List.js.map +1 -0
- package/dist/components/InfoPage/Report/Part.d.ts +6 -0
- package/dist/components/InfoPage/Report/Part.js +42 -0
- package/dist/components/InfoPage/Report/Part.js.map +1 -0
- package/dist/components/InfoPage/Report/PrintPageBreak.d.ts +3 -0
- package/dist/components/InfoPage/Report/PrintPageBreak.js +8 -0
- package/dist/components/InfoPage/Report/PrintPageBreak.js.map +1 -0
- package/dist/components/InfoPage/Report/Result.d.ts +6 -0
- package/dist/components/InfoPage/Report/Result.js +26 -0
- package/dist/components/InfoPage/Report/Result.js.map +1 -0
- package/dist/components/InfoPage/Report/Table.d.ts +6 -0
- package/dist/components/InfoPage/Report/Table.js +125 -0
- package/dist/components/InfoPage/Report/Table.js.map +1 -0
- package/dist/components/InfoPage/Report/index.d.ts +26 -0
- package/dist/components/InfoPage/Report/index.js +61 -0
- package/dist/components/InfoPage/Report/index.js.map +1 -0
- package/dist/components/InfoPage/Report/style.module.scss.js +47 -0
- package/dist/components/InfoPage/Report/style.module.scss.js.map +1 -0
- package/dist/components/InfoPage/Score/index.d.ts +8 -0
- package/dist/components/InfoPage/Score/index.js +50 -0
- package/dist/components/InfoPage/Score/index.js.map +1 -0
- package/dist/components/InfoPage/Score/style.module.scss.js +10 -0
- package/dist/components/InfoPage/Score/style.module.scss.js.map +1 -0
- package/dist/components/InfoPage/SplitLine/index.d.ts +17 -0
- package/dist/components/InfoPage/SplitLine/index.js +67 -0
- package/dist/components/InfoPage/SplitLine/index.js.map +1 -0
- package/dist/components/InfoPage/SplitLine/style.module.scss.js +8 -0
- package/dist/components/InfoPage/SplitLine/style.module.scss.js.map +1 -0
- package/dist/components/InfoPage/computeColumnsValue.d.ts +28 -0
- package/dist/components/InfoPage/computeColumnsValue.js +60 -0
- package/dist/components/InfoPage/computeColumnsValue.js.map +1 -0
- package/dist/components/InfoPage/formatView.d.ts +23 -0
- package/dist/components/InfoPage/formatView.js +119 -0
- package/dist/components/InfoPage/formatView.js.map +1 -0
- package/dist/components/InfoPage/index.d.ts +262 -0
- package/dist/components/Layout/AgentAppShell/style.module.scss.js +20 -20
- package/dist/components/PermissionBindPanel/PermissionBindPanel.js +110 -98
- package/dist/components/PermissionBindPanel/PermissionBindPanel.js.map +1 -1
- package/dist/components/ReactModal/ColumnsLayout.d.ts +7 -0
- package/dist/components/ReactModal/ColumnsLayout.js +20 -0
- package/dist/components/ReactModal/ColumnsLayout.js.map +1 -0
- package/dist/components/ReactModal/Drawer.d.ts +73 -0
- package/dist/components/ReactModal/Drawer.js +292 -0
- package/dist/components/ReactModal/Drawer.js.map +1 -0
- package/dist/components/ReactModal/Footer.d.ts +12 -0
- package/dist/components/ReactModal/Footer.js +53 -0
- package/dist/components/ReactModal/Footer.js.map +1 -0
- package/dist/components/ReactModal/Modal.d.ts +14 -0
- package/dist/components/ReactModal/Modal.js +366 -0
- package/dist/components/ReactModal/Modal.js.map +1 -0
- package/dist/components/ReactModal/ScrollRegion.d.ts +7 -0
- package/dist/components/ReactModal/ScrollRegion.js +22 -0
- package/dist/components/ReactModal/ScrollRegion.js.map +1 -0
- package/dist/components/ReactModal/SimpleBar.d.ts +2 -0
- package/dist/components/ReactModal/SimpleBar.js +7 -0
- package/dist/components/ReactModal/SimpleBar.js.map +1 -0
- package/dist/components/ReactModal/TabsLayout.d.ts +6 -0
- package/dist/components/ReactModal/TabsLayout.js +16 -0
- package/dist/components/ReactModal/TabsLayout.js.map +1 -0
- package/dist/components/ReactModal/confirmModal.module.scss.js +30 -0
- package/dist/components/ReactModal/confirmModal.module.scss.js.map +1 -0
- package/dist/components/ReactModal/createDrawerRender.d.ts +2 -0
- package/dist/components/ReactModal/createDrawerRender.js +7 -0
- package/dist/components/ReactModal/createDrawerRender.js.map +1 -0
- package/dist/components/ReactModal/createModalRender.d.ts +2 -0
- package/dist/components/ReactModal/createModalRender.js +7 -0
- package/dist/components/ReactModal/createModalRender.js.map +1 -0
- package/dist/components/ReactModal/drawer.module.scss.js +36 -0
- package/dist/components/ReactModal/drawer.module.scss.js.map +1 -0
- package/dist/components/ReactModal/index.d.ts +57 -0
- package/dist/components/ReactModal/intlStub.d.ts +15 -0
- package/dist/components/ReactModal/intlStub.js +21 -0
- package/dist/components/ReactModal/intlStub.js.map +1 -0
- package/dist/components/ReactModal/layouts.module.scss.js +12 -0
- package/dist/components/ReactModal/layouts.module.scss.js.map +1 -0
- package/dist/components/ReactModal/locale/en-US.d.ts +5 -0
- package/dist/components/ReactModal/locale/zh-CN.d.ts +5 -0
- package/dist/components/ReactModal/locale/zh-CN.js +8 -0
- package/dist/components/ReactModal/locale/zh-CN.js.map +1 -0
- package/dist/components/ReactModal/lockParentScroll.d.ts +3 -0
- package/dist/components/ReactModal/modalClassNames.d.ts +5 -0
- package/dist/components/ReactModal/modalClassNames.js +8 -0
- package/dist/components/ReactModal/modalClassNames.js.map +1 -0
- package/dist/components/ReactModal/style.module.scss.js +38 -0
- package/dist/components/ReactModal/style.module.scss.js.map +1 -0
- package/dist/components/ReactModal/useConfirmModal.d.ts +4 -0
- package/dist/components/ReactModal/useConfirmModal.js +161 -0
- package/dist/components/ReactModal/useConfirmModal.js.map +1 -0
- package/dist/components/ReactModal/useDrawer.d.ts +5 -0
- package/dist/components/ReactModal/useDrawer.js +123 -0
- package/dist/components/ReactModal/useDrawer.js.map +1 -0
- package/dist/components/ReactModal/usePatchElement.d.ts +2 -0
- package/dist/components/ReactModal/usePatchElement.js +11 -0
- package/dist/components/ReactModal/usePatchElement.js.map +1 -0
- package/dist/components/ReactModal/withLocale.d.ts +5 -0
- package/dist/components/ReactModal/withLocale.js +6 -0
- package/dist/components/ReactModal/withLocale.js.map +1 -0
- package/dist/components/index.d.ts +5 -0
- package/dist/form-info.d.ts +17 -0
- package/dist/form-info.js +68 -0
- package/dist/form-info.js.map +1 -0
- package/dist/iam.d.ts +14 -0
- package/dist/iam.js +23 -0
- package/dist/iam.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.js +700 -632
- package/dist/index.js.map +1 -1
- package/dist/marsun-components-core.css +1 -1
- package/dist/styles/global.css +1 -1
- package/dist/utils/date.d.ts +4 -1
- package/dist/utils/date.js +35 -27
- package/dist/utils/date.js.map +1 -1
- package/package.json +20 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FormSteps.js","sources":["../../../src/components/FormInfo/FormSteps.tsx"],"sourcesContent":["// @ts-nocheck\nimport { useIsMobile } from '@kne/responsive-utils';\nimport { useControllableValue } from 'ahooks';\nimport { Flex, Steps as AntSteps } from 'antd';\nimport classnames from 'classnames';\nimport omit from 'lodash/omit';\nimport { useRef, type ReactNode } from 'react';\nimport Form from './Form';\nimport EmbedSteps from './Steps';\nimport type { FormStepsProps } from './types';\nimport style from './style.module.scss';\n\nconst FormSteps = (p: FormStepsProps) => {\n const { className, stepsClassName, autoStep, onComplete, children, ...stepProps } = Object.assign(\n {\n autoStep: true,\n defaultCurrent: 0,\n items: [] as NonNullable<FormStepsProps['items']>,\n onComplete: () => {},\n },\n p,\n );\n\n const isMobile = useIsMobile();\n const [currentStep, onStepChange] = useControllableValue(stepProps, {\n valuePropName: 'current',\n defaultValuePropName: 'defaultCurrent',\n }) as [number, (n: number) => void];\n\n const stepCacheRef = useRef<Array<{ formData?: unknown; submitData?: unknown }>>([]);\n const items = stepProps.items || [];\n const isLastStep = currentStep === items.length - 1;\n\n const currentFormProps = Object.assign({}, items[currentStep]?.formProps, {\n data: Object.assign(\n {},\n (items[currentStep]?.formProps as { data?: Record<string, unknown> })?.data,\n stepCacheRef.current[currentStep]?.formData as Record<string, unknown>,\n ),\n });\n\n const stepItems = items.map((item) => {\n const currentItem = omit(item, ['formProps']);\n if (typeof currentItem.children === 'function') {\n return Object.assign({}, currentItem, {\n children: (currentItem.children as Function)({\n isLastStep,\n currentStep,\n onStepChange,\n getStepCache: () => stepCacheRef.current,\n }),\n });\n }\n return currentItem;\n });\n\n const stepsDirection = isMobile ? 'vertical' : stepProps.direction || stepProps.orientation;\n const isVerticalSteps = stepsDirection === 'vertical';\n\n const inner = (\n <Flex className={className} vertical={!isVerticalSteps || isMobile} gap={24}>\n <AntSteps\n {...omit(stepProps, ['current', 'defaultCurrent', 'onChange', 'direction', 'orientation'])}\n direction={stepsDirection as 'horizontal' | 'vertical'}\n className={classnames(\n 'marsun-form-info-steps',\n stepsClassName,\n style['marsun-form-info-steps'],\n {\n [style['marsun-form-info-steps-vertical']]: isVerticalSteps,\n },\n )}\n items={stepItems.map((item) => ({ title: item.title }))}\n current={currentStep}\n />\n <div className={style['marsun-form-info-steps-form-inner']}>\n {stepItems[currentStep]?.children as ReactNode}\n </div>\n </Flex>\n );\n\n return (\n <Form\n {...Object.assign({}, currentFormProps, {\n onSubmit: async (data: Record<string, unknown>, ...args: unknown[]) => {\n if (!stepCacheRef.current[currentStep]) {\n stepCacheRef.current[currentStep] = {};\n }\n stepCacheRef.current[currentStep].formData = data;\n const formOnSubmit = (\n currentFormProps as {\n onSubmit?: (\n data: Record<string, unknown>,\n ctx: Record<string, unknown>,\n ...args: unknown[]\n ) => unknown;\n }\n ).onSubmit;\n const res = await formOnSubmit?.(\n data,\n {\n currentStep,\n onStepChange,\n stepCache: stepCacheRef.current,\n getStepCache: () => stepCacheRef.current,\n isLastStep,\n },\n ...args,\n );\n stepCacheRef.current[currentStep].submitData = res;\n\n if (autoStep && res !== false && !isLastStep) {\n onStepChange(currentStep + 1);\n return res;\n }\n if (autoStep && res !== false) {\n await onComplete?.(stepCacheRef.current);\n return res;\n }\n return res;\n },\n })}\n key={currentStep}\n >\n {typeof children === 'function'\n ? children({\n children: inner,\n isLastStep,\n currentStep,\n onStepChange,\n getStepCache: () => stepCacheRef.current,\n })\n : inner}\n </Form>\n );\n};\n\nFormSteps.Embed = EmbedSteps;\n\nexport default FormSteps;\n"],"names":["FormSteps","p","className","stepsClassName","autoStep","onComplete","children","stepProps","isMobile","useIsMobile","currentStep","onStepChange","useControllableValue","stepCacheRef","useRef","items","isLastStep","currentFormProps","_a","_c","_b","_d","stepItems","item","currentItem","omit","stepsDirection","isVerticalSteps","inner","Flex","jsx","AntSteps","classnames","style","_e","createElement","Form","data","args","formOnSubmit","res","EmbedSteps"],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { FormStepsModalProps } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* 步骤弹窗:ReactModal + FormSteps;页内 Submit 驱动下一步/完成。
|
|
4
|
+
* destroyOnHidden。
|
|
5
|
+
*/
|
|
6
|
+
declare const FormStepsModal: {
|
|
7
|
+
(props: FormStepsModalProps): import("react").JSX.Element;
|
|
8
|
+
displayName: string;
|
|
9
|
+
};
|
|
10
|
+
export default FormStepsModal;
|
|
11
|
+
/** 命令式打开步骤弹窗(经 useFormModal 挂 ReactModal) */
|
|
12
|
+
export declare const useFormStepModal: () => (props?: FormStepsModalProps) => {
|
|
13
|
+
close: () => void;
|
|
14
|
+
};
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
import { jsx as r, jsxs as h, Fragment as y } from "react/jsx-runtime";
|
|
2
|
+
import { SubmitButton as C } from "@kne/react-form-antd";
|
|
3
|
+
import { Flex as T } from "antd";
|
|
4
|
+
import f from "classnames";
|
|
5
|
+
import M from "lodash/merge";
|
|
6
|
+
import g from "./FormSteps.js";
|
|
7
|
+
import { useFormModal as F } from "./FormModal.js";
|
|
8
|
+
import N, { useFormInfoLocale as S } from "./withLocale.js";
|
|
9
|
+
import u from "./style.module.scss.js";
|
|
10
|
+
import w from "../ReactModal/Modal.js";
|
|
11
|
+
const q = N((i) => {
|
|
12
|
+
const { formatMessage: n } = S(), { modalProps: e, completeText: m, nextText: p, className: c, ...t } = M(
|
|
13
|
+
{},
|
|
14
|
+
{
|
|
15
|
+
autoStep: !0,
|
|
16
|
+
modalProps: { autoClose: !0 },
|
|
17
|
+
completeText: n({ id: "complete" }),
|
|
18
|
+
nextText: n({ id: "next" })
|
|
19
|
+
},
|
|
20
|
+
i
|
|
21
|
+
), o = e.onCancel ?? e.onClose, a = /* @__PURE__ */ r(
|
|
22
|
+
g,
|
|
23
|
+
{
|
|
24
|
+
...t,
|
|
25
|
+
className: f(c, u["marsun-form-info-steps-modal"]),
|
|
26
|
+
onComplete: async (d) => {
|
|
27
|
+
var x;
|
|
28
|
+
const l = await ((x = t.onComplete) == null ? void 0 : x.call(t, d));
|
|
29
|
+
return e.autoClose !== !1 && l !== !1 && (o == null || o()), l;
|
|
30
|
+
},
|
|
31
|
+
children: ({ children: d, isLastStep: l }) => /* @__PURE__ */ h(y, { children: [
|
|
32
|
+
d,
|
|
33
|
+
/* @__PURE__ */ r(T, { justify: "flex-end", gap: 8, style: { marginTop: 16 }, children: /* @__PURE__ */ r(C, { type: "primary", children: l ? m : p }) })
|
|
34
|
+
] })
|
|
35
|
+
}
|
|
36
|
+
), s = {
|
|
37
|
+
open: !!e.open,
|
|
38
|
+
title: e.title,
|
|
39
|
+
width: e.width,
|
|
40
|
+
size: e.size,
|
|
41
|
+
onClose: o,
|
|
42
|
+
onCancel: o,
|
|
43
|
+
destroyOnHidden: !0,
|
|
44
|
+
footerButtons: [
|
|
45
|
+
{
|
|
46
|
+
children: e.cancelText || n({ id: "cancel" }),
|
|
47
|
+
onClick: () => o == null ? void 0 : o()
|
|
48
|
+
}
|
|
49
|
+
],
|
|
50
|
+
className: f(
|
|
51
|
+
"marsun-form-info-modal",
|
|
52
|
+
u["marsun-form-info-modal"],
|
|
53
|
+
e.className
|
|
54
|
+
),
|
|
55
|
+
children: a
|
|
56
|
+
};
|
|
57
|
+
return typeof e.renderModal == "function" ? e.renderModal(s) : /* @__PURE__ */ r(w, { ...s });
|
|
58
|
+
}), v = () => {
|
|
59
|
+
const i = F();
|
|
60
|
+
return (n = {}) => {
|
|
61
|
+
const { modalProps: e, completeText: m, nextText: p, className: c, ...t } = M(
|
|
62
|
+
{},
|
|
63
|
+
{
|
|
64
|
+
autoStep: !0,
|
|
65
|
+
modalProps: { autoClose: !0 },
|
|
66
|
+
completeText: "完成",
|
|
67
|
+
nextText: "下一步"
|
|
68
|
+
},
|
|
69
|
+
n
|
|
70
|
+
);
|
|
71
|
+
return i({
|
|
72
|
+
...e,
|
|
73
|
+
okText: m,
|
|
74
|
+
children: /* @__PURE__ */ r(
|
|
75
|
+
g,
|
|
76
|
+
{
|
|
77
|
+
...t,
|
|
78
|
+
className: f(c, u["marsun-form-info-steps-modal"]),
|
|
79
|
+
onComplete: async (o) => {
|
|
80
|
+
var s;
|
|
81
|
+
return await ((s = t.onComplete) == null ? void 0 : s.call(t, o));
|
|
82
|
+
},
|
|
83
|
+
children: ({ children: o, isLastStep: a }) => /* @__PURE__ */ h(y, { children: [
|
|
84
|
+
o,
|
|
85
|
+
/* @__PURE__ */ r(T, { justify: "flex-end", gap: 8, style: { marginTop: 16 }, children: /* @__PURE__ */ r(C, { type: "primary", children: a ? m : p }) })
|
|
86
|
+
] })
|
|
87
|
+
}
|
|
88
|
+
)
|
|
89
|
+
});
|
|
90
|
+
};
|
|
91
|
+
};
|
|
92
|
+
export {
|
|
93
|
+
q as default,
|
|
94
|
+
v as useFormStepModal
|
|
95
|
+
};
|
|
96
|
+
//# sourceMappingURL=FormStepsModal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FormStepsModal.js","sources":["../../../src/components/FormInfo/FormStepsModal.tsx"],"sourcesContent":["// @ts-nocheck\nimport { SubmitButton } from '@kne/react-form-antd';\nimport { Flex } from 'antd';\nimport classnames from 'classnames';\nimport merge from 'lodash/merge';\nimport { ReactModal } from '@/components/ReactModal';\nimport FormSteps from './FormSteps';\nimport { useFormModal } from './FormModal';\nimport type { FormStepsModalProps } from './types';\nimport withLocale, { useFormInfoLocale } from './withLocale';\nimport style from './style.module.scss';\n\n/**\n * 步骤弹窗:ReactModal + FormSteps;页内 Submit 驱动下一步/完成。\n * destroyOnHidden。\n */\nconst FormStepsModal = withLocale((p: FormStepsModalProps) => {\n const { formatMessage } = useFormInfoLocale();\n const { modalProps, completeText, nextText, className, ...others } = merge(\n {},\n {\n autoStep: true,\n modalProps: { autoClose: true },\n completeText: formatMessage({ id: 'complete' }),\n nextText: formatMessage({ id: 'next' }),\n },\n p,\n );\n\n const close = modalProps.onCancel ?? modalProps.onClose;\n\n const stepsChildren = (\n <FormSteps\n {...others}\n className={classnames(className, style['marsun-form-info-steps-modal'])}\n onComplete={async (data) => {\n const res = await others.onComplete?.(data);\n if (modalProps.autoClose !== false && res !== false) {\n close?.();\n }\n return res;\n }}\n >\n {({ children, isLastStep }) => (\n <>\n {children}\n <Flex justify=\"flex-end\" gap={8} style={{ marginTop: 16 }}>\n <SubmitButton type=\"primary\">{isLastStep ? completeText : nextText}</SubmitButton>\n </Flex>\n </>\n )}\n </FormSteps>\n );\n\n const hostProps = {\n open: !!modalProps.open,\n title: modalProps.title,\n width: modalProps.width,\n size: modalProps.size,\n onClose: close,\n onCancel: close,\n destroyOnHidden: true as const,\n footerButtons: [\n {\n children: modalProps.cancelText || formatMessage({ id: 'cancel' }),\n onClick: () => close?.(),\n },\n ],\n className: classnames(\n 'marsun-form-info-modal',\n style['marsun-form-info-modal'],\n modalProps.className,\n ),\n children: stepsChildren,\n };\n\n if (typeof modalProps.renderModal === 'function') {\n return modalProps.renderModal(hostProps);\n }\n\n return <ReactModal {...hostProps} />;\n});\n\nexport default FormStepsModal;\n\n/** 命令式打开步骤弹窗(经 useFormModal 挂 ReactModal) */\nexport const useFormStepModal = () => {\n const formModal = useFormModal();\n return (props: FormStepsModalProps = {}) => {\n const { modalProps, completeText, nextText, className, ...others } = merge(\n {},\n {\n autoStep: true,\n modalProps: { autoClose: true },\n completeText: '完成',\n nextText: '下一步',\n },\n props,\n );\n\n return formModal({\n ...modalProps,\n okText: completeText,\n children: (\n <FormSteps\n {...others}\n className={classnames(className, style['marsun-form-info-steps-modal'])}\n onComplete={async (data) => {\n const res = await others.onComplete?.(data);\n return res;\n }}\n >\n {({ children, isLastStep }) => (\n <>\n {children}\n <Flex justify=\"flex-end\" gap={8} style={{ marginTop: 16 }}>\n <SubmitButton type=\"primary\">{isLastStep ? completeText : nextText}</SubmitButton>\n </Flex>\n </>\n )}\n </FormSteps>\n ),\n });\n };\n};\n"],"names":["FormStepsModal","withLocale","p","formatMessage","useFormInfoLocale","modalProps","completeText","nextText","className","others","merge","close","stepsChildren","jsx","FormSteps","classnames","style","data","res","_a","children","isLastStep","jsxs","Fragment","Flex","SubmitButton","hostProps","ReactModal","useFormStepModal","formModal","useFormModal","props"],"mappings":"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"}
|
|
@@ -0,0 +1,180 @@
|
|
|
1
|
+
import { jsx as t, jsxs as f } from "react/jsx-runtime";
|
|
2
|
+
import { SubList as A } from "@kne/react-form-plus";
|
|
3
|
+
import { Tag as G, Button as D, Divider as J } from "antd";
|
|
4
|
+
import c from "classnames";
|
|
5
|
+
import { useState as Q } from "react";
|
|
6
|
+
import U from "./FormInfo.js";
|
|
7
|
+
import { markNestBlock as V, decorateNestBlocks as X, isNestBlockType as Z, NEST_DEPTH_BEYOND as u } from "./nestBlock.js";
|
|
8
|
+
import $, { useFormInfoLocale as ee } from "./withLocale.js";
|
|
9
|
+
import e from "./style.module.scss.js";
|
|
10
|
+
import te from "../Empty/Empty.js";
|
|
11
|
+
import { Trash2 as se } from "../Icons/Trash2.js";
|
|
12
|
+
import { Plus as oe } from "../Icons/Plus.js";
|
|
13
|
+
import re from "../InfoPage/InfoPage/index.js";
|
|
14
|
+
const ne = $((I) => {
|
|
15
|
+
const { formatMessage: m } = ee(), {
|
|
16
|
+
className: E,
|
|
17
|
+
itemClassName: L,
|
|
18
|
+
removeIcon: P,
|
|
19
|
+
removeText: w,
|
|
20
|
+
addText: C,
|
|
21
|
+
addIcon: S,
|
|
22
|
+
important: R,
|
|
23
|
+
title: y,
|
|
24
|
+
bordered: j,
|
|
25
|
+
nestDepth: b,
|
|
26
|
+
nestParentTitles: ae,
|
|
27
|
+
styles: _,
|
|
28
|
+
style: M,
|
|
29
|
+
...O
|
|
30
|
+
} = Object.assign(
|
|
31
|
+
{
|
|
32
|
+
addText: m({ id: "addText" }),
|
|
33
|
+
addIcon: /* @__PURE__ */ t(oe, { size: 14 }),
|
|
34
|
+
removeText: m({ id: "deleteText" }),
|
|
35
|
+
removeIcon: /* @__PURE__ */ t(se, { size: 14 }),
|
|
36
|
+
empty: /* @__PURE__ */ t(te, { iconType: "simple", description: !1 })
|
|
37
|
+
},
|
|
38
|
+
I
|
|
39
|
+
), r = typeof b == "number" ? b : 0, h = !!j, N = r === 0, z = N && h, s = r >= u, x = r === u, v = r + 1, [a, F] = Q(!0), d = N && h, g = (o) => {
|
|
40
|
+
o.preventDefault(), o.stopPropagation(), F((i) => !i);
|
|
41
|
+
}, H = s ? /* @__PURE__ */ f("span", { className: e["marsun-form-info-nest-beyond-title"], children: [
|
|
42
|
+
/* @__PURE__ */ f(
|
|
43
|
+
"span",
|
|
44
|
+
{
|
|
45
|
+
className: e["marsun-form-info-nest-level-toggle"],
|
|
46
|
+
role: "button",
|
|
47
|
+
tabIndex: 0,
|
|
48
|
+
"aria-expanded": a,
|
|
49
|
+
"aria-label": m(
|
|
50
|
+
{ id: a ? "nestCollapse" : "nestExpand" },
|
|
51
|
+
{ level: v }
|
|
52
|
+
),
|
|
53
|
+
onClick: g,
|
|
54
|
+
onKeyDown: (o) => {
|
|
55
|
+
(o.key === "Enter" || o.key === " ") && g(o);
|
|
56
|
+
},
|
|
57
|
+
children: [
|
|
58
|
+
/* @__PURE__ */ t(G, { className: e["marsun-form-info-nest-parent-tag"], children: m({ id: "nestLevel" }, { level: v }) }),
|
|
59
|
+
a ? "▾" : "▸"
|
|
60
|
+
]
|
|
61
|
+
}
|
|
62
|
+
),
|
|
63
|
+
/* @__PURE__ */ t("span", { className: e["marsun-form-info-nest-beyond-title-text"], children: y })
|
|
64
|
+
] }) : y;
|
|
65
|
+
return /* @__PURE__ */ t(
|
|
66
|
+
A,
|
|
67
|
+
{
|
|
68
|
+
...O,
|
|
69
|
+
listRender: ({
|
|
70
|
+
id: o,
|
|
71
|
+
allowRemove: i,
|
|
72
|
+
onRemove: l,
|
|
73
|
+
index: ie,
|
|
74
|
+
list: K,
|
|
75
|
+
title: p,
|
|
76
|
+
...W
|
|
77
|
+
}) => {
|
|
78
|
+
const T = p != null && p !== "", Y = T ? p : /* @__PURE__ */ t(
|
|
79
|
+
"span",
|
|
80
|
+
{
|
|
81
|
+
className: e["marsun-form-info-list-item-title-placeholder"],
|
|
82
|
+
"aria-hidden": "true"
|
|
83
|
+
}
|
|
84
|
+
), k = X(
|
|
85
|
+
K || [],
|
|
86
|
+
r + 1
|
|
87
|
+
), q = k.some(
|
|
88
|
+
(n) => {
|
|
89
|
+
var B;
|
|
90
|
+
return n && typeof n == "object" && "type" in n && Z(n.type) && typeof ((B = n.props) == null ? void 0 : B.nestDepth) == "number" && n.props.nestDepth >= u;
|
|
91
|
+
}
|
|
92
|
+
);
|
|
93
|
+
return /* @__PURE__ */ f(
|
|
94
|
+
"div",
|
|
95
|
+
{
|
|
96
|
+
className: c(e["marsun-form-info-list-item"], {
|
|
97
|
+
[e["marsun-form-info-is-important"]]: R
|
|
98
|
+
}),
|
|
99
|
+
children: [
|
|
100
|
+
/* @__PURE__ */ t(
|
|
101
|
+
U,
|
|
102
|
+
{
|
|
103
|
+
...W,
|
|
104
|
+
list: k,
|
|
105
|
+
title: Y,
|
|
106
|
+
bordered: !1,
|
|
107
|
+
className: c(e["marsun-form-info-list-item-part"], {
|
|
108
|
+
[e["marsun-form-info-list-item-part-no-title"]]: !T,
|
|
109
|
+
[e["marsun-form-info-list-item-part-in-bordered"]]: !s && d,
|
|
110
|
+
[e["marsun-form-info-list-item-part-plain"]]: !s && !d,
|
|
111
|
+
[e["marsun-form-info-list-item-part-beyond"]]: s,
|
|
112
|
+
[e["marsun-form-info-list-item-part-wraps-nest-beyond"]]: q
|
|
113
|
+
}),
|
|
114
|
+
styles: {
|
|
115
|
+
header: {
|
|
116
|
+
borderBottom: "none",
|
|
117
|
+
borderRadius: d ? "var(--radius-default, 8px)" : "var(--radius-default, 8px) var(--radius-default, 8px) 0 0"
|
|
118
|
+
}
|
|
119
|
+
},
|
|
120
|
+
style: {
|
|
121
|
+
borderRadius: "var(--radius-default, 8px)",
|
|
122
|
+
overflow: s ? "visible" : "hidden",
|
|
123
|
+
padding: 0
|
|
124
|
+
},
|
|
125
|
+
gap: s ? 0 : 16,
|
|
126
|
+
extra: /* @__PURE__ */ t(
|
|
127
|
+
D,
|
|
128
|
+
{
|
|
129
|
+
type: "link",
|
|
130
|
+
danger: !0,
|
|
131
|
+
className: "btn-no-padding",
|
|
132
|
+
icon: P,
|
|
133
|
+
disabled: !i,
|
|
134
|
+
onClick: l,
|
|
135
|
+
children: w
|
|
136
|
+
}
|
|
137
|
+
)
|
|
138
|
+
}
|
|
139
|
+
),
|
|
140
|
+
/* @__PURE__ */ t(J, {})
|
|
141
|
+
]
|
|
142
|
+
},
|
|
143
|
+
o
|
|
144
|
+
);
|
|
145
|
+
},
|
|
146
|
+
children: (o, { allowAdd: i, onAdd: l }) => /* @__PURE__ */ t(
|
|
147
|
+
re.Part,
|
|
148
|
+
{
|
|
149
|
+
className: c(E, L, e["marsun-form-info-list-part"], {
|
|
150
|
+
[e["marsun-form-info-nest-beyond"]]: s,
|
|
151
|
+
[e["marsun-form-info-nest-beyond-rail"]]: x,
|
|
152
|
+
[e["marsun-form-info-nest-beyond-collapsed"]]: s && !a
|
|
153
|
+
}),
|
|
154
|
+
title: H,
|
|
155
|
+
bordered: z,
|
|
156
|
+
styles: _,
|
|
157
|
+
style: M,
|
|
158
|
+
"data-nest-beyond": s ? "true" : void 0,
|
|
159
|
+
"data-nest-rail": x ? "true" : void 0,
|
|
160
|
+
"data-nest-depth": String(r),
|
|
161
|
+
"data-nest-collapsed": s && !a ? "true" : void 0,
|
|
162
|
+
extra: /* @__PURE__ */ t("div", { className: e["marsun-form-info-extra-container"], children: i && /* @__PURE__ */ t(
|
|
163
|
+
D,
|
|
164
|
+
{
|
|
165
|
+
className: e["marsun-form-info-extra-btn"],
|
|
166
|
+
icon: S,
|
|
167
|
+
onClick: l,
|
|
168
|
+
children: C
|
|
169
|
+
}
|
|
170
|
+
) }),
|
|
171
|
+
children: o
|
|
172
|
+
}
|
|
173
|
+
)
|
|
174
|
+
}
|
|
175
|
+
);
|
|
176
|
+
}), ge = V(ne);
|
|
177
|
+
export {
|
|
178
|
+
ge as default
|
|
179
|
+
};
|
|
180
|
+
//# sourceMappingURL=List.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"List.js","sources":["../../../src/components/FormInfo/List.tsx"],"sourcesContent":["// @ts-nocheck\nimport { SubList } from '@kne/react-form-plus';\nimport { Button, Divider, Tag } from 'antd';\nimport classnames from 'classnames';\nimport { useState, type ReactNode } from 'react';\nimport { Empty } from '@/components/Empty';\nimport { Plus, Trash2 } from '@/components/Icons';\nimport InfoPage from '@/components/InfoPage';\nimport FormInfo from './FormInfo';\nimport { decorateNestBlocks, isNestBlockType, markNestBlock, NEST_DEPTH_BEYOND } from './nestBlock';\nimport type { ListProps } from './types';\nimport withLocale, { useFormInfoLocale } from './withLocale';\nimport style from './style.module.scss';\n\nconst List = withLocale((p: ListProps) => {\n const { formatMessage } = useFormInfoLocale();\n const {\n className,\n itemClassName,\n removeIcon,\n removeText,\n addText,\n addIcon,\n important,\n title,\n bordered,\n nestDepth: nestDepthProp,\n nestParentTitles: _unusedNestParentTitles,\n styles: partStyles,\n style: partStyle,\n ...others\n } = Object.assign(\n {\n addText: formatMessage({ id: 'addText' }),\n addIcon: <Plus size={14} />,\n removeText: formatMessage({ id: 'deleteText' }),\n removeIcon: <Trash2 size={14} />,\n empty: <Empty iconType=\"simple\" description={false} />,\n },\n p,\n );\n\n const nestDepth = typeof nestDepthProp === 'number' ? nestDepthProp : 0;\n const showBorder = !!bordered;\n const isRootList = nestDepth === 0;\n const showOuterBorder = isRootList && showBorder;\n const isNestBeyond = nestDepth >= NEST_DEPTH_BEYOND;\n const showNestRail = nestDepth === NEST_DEPTH_BEYOND;\n const nestLevel = nestDepth + 1;\n const [nestExpanded, setNestExpanded] = useState(true);\n const isCardModeItem = isRootList && showBorder;\n\n const toggleNestExpanded = (e: React.SyntheticEvent) => {\n e.preventDefault();\n e.stopPropagation();\n setNestExpanded((v) => !v);\n };\n\n const partTitle = isNestBeyond ? (\n <span className={style['marsun-form-info-nest-beyond-title']}>\n <span\n className={style['marsun-form-info-nest-level-toggle']}\n role=\"button\"\n tabIndex={0}\n aria-expanded={nestExpanded}\n aria-label={formatMessage(\n { id: nestExpanded ? 'nestCollapse' : 'nestExpand' },\n { level: nestLevel },\n )}\n onClick={toggleNestExpanded}\n onKeyDown={(e) => {\n if (e.key === 'Enter' || e.key === ' ') {\n toggleNestExpanded(e);\n }\n }}\n >\n <Tag className={style['marsun-form-info-nest-parent-tag']}>\n {formatMessage({ id: 'nestLevel' }, { level: nestLevel })}\n </Tag>\n {nestExpanded ? '▾' : '▸'}\n </span>\n <span className={style['marsun-form-info-nest-beyond-title-text']}>{title}</span>\n </span>\n ) : (\n title\n );\n\n return (\n <SubList\n {...others}\n listRender={({\n id,\n allowRemove,\n onRemove,\n index,\n list: itemList,\n title: itemTitle,\n ...props\n }: {\n id: string;\n allowRemove: boolean;\n onRemove: () => void;\n index: number;\n list?: ReactNode[];\n title?: ReactNode;\n [key: string]: unknown;\n }) => {\n const hasItemTitle = itemTitle != null && itemTitle !== '';\n const titleNode = hasItemTitle ? (\n itemTitle\n ) : (\n <span\n className={style['marsun-form-info-list-item-title-placeholder']}\n aria-hidden=\"true\"\n />\n );\n const nestedList = decorateNestBlocks(\n (itemList || []) as React.ReactElement[],\n nestDepth + 1,\n );\n const itemWrapsNestBeyond = nestedList.some(\n (el) =>\n el &&\n typeof el === 'object' &&\n 'type' in el &&\n isNestBlockType(el.type) &&\n typeof (el as React.ReactElement).props?.nestDepth === 'number' &&\n (el as React.ReactElement).props.nestDepth >= NEST_DEPTH_BEYOND,\n );\n\n return (\n <div\n key={id}\n className={classnames(style['marsun-form-info-list-item'], {\n [style['marsun-form-info-is-important']]: important,\n })}\n >\n <FormInfo\n {...props}\n list={nestedList}\n title={titleNode}\n bordered={false}\n className={classnames(style['marsun-form-info-list-item-part'], {\n [style['marsun-form-info-list-item-part-no-title']]: !hasItemTitle,\n [style['marsun-form-info-list-item-part-in-bordered']]:\n !isNestBeyond && isCardModeItem,\n [style['marsun-form-info-list-item-part-plain']]: !isNestBeyond && !isCardModeItem,\n [style['marsun-form-info-list-item-part-beyond']]: isNestBeyond,\n [style['marsun-form-info-list-item-part-wraps-nest-beyond']]: itemWrapsNestBeyond,\n })}\n styles={{\n header: {\n borderBottom: 'none',\n borderRadius: isCardModeItem\n ? 'var(--radius-default, 8px)'\n : 'var(--radius-default, 8px) var(--radius-default, 8px) 0 0',\n },\n }}\n style={{\n borderRadius: 'var(--radius-default, 8px)',\n overflow: isNestBeyond ? 'visible' : 'hidden',\n padding: 0,\n }}\n gap={isNestBeyond ? 0 : 16}\n extra={\n <Button\n type=\"link\"\n danger\n className=\"btn-no-padding\"\n icon={removeIcon}\n disabled={!allowRemove}\n onClick={onRemove}\n >\n {removeText}\n </Button>\n }\n />\n <Divider />\n </div>\n );\n }}\n >\n {(children: ReactNode, { allowAdd, onAdd }: { allowAdd: boolean; onAdd: () => void }) => (\n <InfoPage.Part\n className={classnames(className, itemClassName, style['marsun-form-info-list-part'], {\n [style['marsun-form-info-nest-beyond']]: isNestBeyond,\n [style['marsun-form-info-nest-beyond-rail']]: showNestRail,\n [style['marsun-form-info-nest-beyond-collapsed']]: isNestBeyond && !nestExpanded,\n })}\n title={partTitle}\n bordered={showOuterBorder}\n styles={partStyles as never}\n style={partStyle as never}\n data-nest-beyond={isNestBeyond ? 'true' : undefined}\n data-nest-rail={showNestRail ? 'true' : undefined}\n data-nest-depth={String(nestDepth)}\n data-nest-collapsed={isNestBeyond && !nestExpanded ? 'true' : undefined}\n extra={\n <div className={style['marsun-form-info-extra-container']}>\n {allowAdd && (\n <Button\n className={style['marsun-form-info-extra-btn']}\n icon={addIcon}\n onClick={onAdd}\n >\n {addText}\n </Button>\n )}\n </div>\n }\n >\n {children}\n </InfoPage.Part>\n )}\n </SubList>\n );\n});\n\nexport default markNestBlock(List);\n"],"names":["List","withLocale","p","formatMessage","useFormInfoLocale","className","itemClassName","removeIcon","removeText","addText","addIcon","important","title","bordered","nestDepthProp","_unusedNestParentTitles","partStyles","partStyle","others","jsx","Plus","Trash2","Empty","nestDepth","showBorder","isRootList","showOuterBorder","isNestBeyond","NEST_DEPTH_BEYOND","showNestRail","nestLevel","nestExpanded","setNestExpanded","useState","isCardModeItem","toggleNestExpanded","e","v","partTitle","jsxs","style","Tag","SubList","id","allowRemove","onRemove","index","itemList","itemTitle","props","hasItemTitle","titleNode","nestedList","decorateNestBlocks","itemWrapsNestBeyond","el","isNestBlockType","_a","classnames","FormInfo","Button","Divider","children","allowAdd","onAdd","InfoPage","List_default","markNestBlock"],"mappings":"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"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { jsx as e, jsxs as s } from "react/jsx-runtime";
|
|
2
|
+
import { MultiField as v } from "@kne/react-form-plus";
|
|
3
|
+
import { Button as n } from "antd";
|
|
4
|
+
import l from "classnames";
|
|
5
|
+
import x, { useFormInfoLocale as y } from "./withLocale.js";
|
|
6
|
+
import o from "./style.module.scss.js";
|
|
7
|
+
import T from "../Empty/Empty.js";
|
|
8
|
+
import { Trash2 as N } from "../Icons/Trash2.js";
|
|
9
|
+
import { Plus as I } from "../Icons/Plus.js";
|
|
10
|
+
const L = x((f) => {
|
|
11
|
+
const { formatMessage: c } = y(), { className: u, addText: t, addIcon: p, removeIcon: b, removeText: m, ...i } = Object.assign(
|
|
12
|
+
{
|
|
13
|
+
addText: c({ id: "addText" }),
|
|
14
|
+
addIcon: /* @__PURE__ */ e(I, { size: 14 }),
|
|
15
|
+
removeIcon: /* @__PURE__ */ e(N, { size: 14 }),
|
|
16
|
+
removeText: null,
|
|
17
|
+
empty: /* @__PURE__ */ e(T, { iconType: "simple", description: !1 })
|
|
18
|
+
},
|
|
19
|
+
f
|
|
20
|
+
);
|
|
21
|
+
return /* @__PURE__ */ e(
|
|
22
|
+
v,
|
|
23
|
+
{
|
|
24
|
+
...i,
|
|
25
|
+
itemRender: (r, { id: d, allowRemove: a, onRemove: h }) => /* @__PURE__ */ s(
|
|
26
|
+
"div",
|
|
27
|
+
{
|
|
28
|
+
className: l("multi-field-item", o["marsun-form-info-multi-field-item"]),
|
|
29
|
+
children: [
|
|
30
|
+
r,
|
|
31
|
+
/* @__PURE__ */ s("div", { children: [
|
|
32
|
+
/* @__PURE__ */ e(
|
|
33
|
+
"div",
|
|
34
|
+
{
|
|
35
|
+
className: l(
|
|
36
|
+
o["react-form__field-label"],
|
|
37
|
+
"react-form__field-label",
|
|
38
|
+
"multi-field-delete-label"
|
|
39
|
+
)
|
|
40
|
+
}
|
|
41
|
+
),
|
|
42
|
+
/* @__PURE__ */ e(n, { icon: b, onClick: h, disabled: !a, children: typeof m == "function" ? m(i.label) : m })
|
|
43
|
+
] })
|
|
44
|
+
]
|
|
45
|
+
},
|
|
46
|
+
d
|
|
47
|
+
),
|
|
48
|
+
children: (r, { allowAdd: d, onAdd: a }) => /* @__PURE__ */ s(
|
|
49
|
+
"div",
|
|
50
|
+
{
|
|
51
|
+
className: l(u, "multi-field", o["marsun-form-info-multi-field"]),
|
|
52
|
+
children: [
|
|
53
|
+
r,
|
|
54
|
+
d && /* @__PURE__ */ e(
|
|
55
|
+
n,
|
|
56
|
+
{
|
|
57
|
+
className: l(
|
|
58
|
+
"multi-field-add-btn",
|
|
59
|
+
o["marsun-form-info-multi-field-add-btn"]
|
|
60
|
+
),
|
|
61
|
+
type: "dashed",
|
|
62
|
+
onClick: a,
|
|
63
|
+
icon: p,
|
|
64
|
+
children: typeof t == "function" ? t(i.label) : `${t}${i.label ?? ""}`
|
|
65
|
+
}
|
|
66
|
+
)
|
|
67
|
+
]
|
|
68
|
+
}
|
|
69
|
+
)
|
|
70
|
+
}
|
|
71
|
+
);
|
|
72
|
+
});
|
|
73
|
+
export {
|
|
74
|
+
L as default
|
|
75
|
+
};
|
|
76
|
+
//# sourceMappingURL=MultiField.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MultiField.js","sources":["../../../src/components/FormInfo/MultiField.tsx"],"sourcesContent":["// @ts-nocheck\nimport { MultiField as MultiFieldBase } from '@kne/react-form-plus';\nimport { Button } from 'antd';\nimport classnames from 'classnames';\nimport type { ReactNode } from 'react';\nimport { Empty } from '@/components/Empty';\nimport { Plus, Trash2 } from '@/components/Icons';\nimport type { MultiFieldProps } from './types';\nimport withLocale, { useFormInfoLocale } from './withLocale';\nimport style from './style.module.scss';\n\nconst MultiField = withLocale((p: MultiFieldProps) => {\n const { formatMessage } = useFormInfoLocale();\n const { className, addText, addIcon, removeIcon, removeText, ...others } = Object.assign(\n {\n addText: formatMessage({ id: 'addText' }),\n addIcon: <Plus size={14} />,\n removeIcon: <Trash2 size={14} />,\n removeText: null as ReactNode,\n empty: <Empty iconType=\"simple\" description={false} />,\n },\n p,\n );\n\n return (\n <MultiFieldBase\n {...others}\n itemRender={(\n children: ReactNode,\n { id, allowRemove, onRemove }: { id: string; allowRemove: boolean; onRemove: () => void },\n ) => (\n <div\n key={id}\n className={classnames('multi-field-item', style['marsun-form-info-multi-field-item'])}\n >\n {children}\n <div>\n <div\n className={classnames(\n style['react-form__field-label'],\n 'react-form__field-label',\n 'multi-field-delete-label',\n )}\n />\n <Button icon={removeIcon} onClick={onRemove} disabled={!allowRemove}>\n {typeof removeText === 'function' ? removeText(others.label) : removeText}\n </Button>\n </div>\n </div>\n )}\n >\n {(children: ReactNode, { allowAdd, onAdd }: { allowAdd: boolean; onAdd: () => void }) => (\n <div\n className={classnames(className, 'multi-field', style['marsun-form-info-multi-field'])}\n >\n {children}\n {allowAdd && (\n <Button\n className={classnames(\n 'multi-field-add-btn',\n style['marsun-form-info-multi-field-add-btn'],\n )}\n type=\"dashed\"\n onClick={onAdd}\n icon={addIcon}\n >\n {typeof addText === 'function'\n ? addText(others.label)\n : `${addText}${others.label ?? ''}`}\n </Button>\n )}\n </div>\n )}\n </MultiFieldBase>\n );\n});\n\nexport default MultiField;\n"],"names":["MultiField","withLocale","p","formatMessage","useFormInfoLocale","className","addText","addIcon","removeIcon","removeText","others","jsx","Plus","Trash2","Empty","MultiFieldBase","children","id","allowRemove","onRemove","jsxs","classnames","style","Button","allowAdd","onAdd"],"mappings":";;;;;;;;;AAWA,MAAMA,IAAaC,EAAW,CAACC,MAAuB;AACpD,QAAM,EAAE,eAAAC,EAAA,IAAkBC,EAAA,GACpB,EAAE,WAAAC,GAAW,SAAAC,GAAS,SAAAC,GAAS,YAAAC,GAAY,YAAAC,GAAY,GAAGC,MAAW,OAAO;AAAA,IAChF;AAAA,MACE,SAASP,EAAc,EAAE,IAAI,WAAW;AAAA,MACxC,SAAS,gBAAAQ,EAACC,GAAA,EAAK,MAAM,GAAA,CAAI;AAAA,MACzB,YAAY,gBAAAD,EAACE,GAAA,EAAO,MAAM,GAAA,CAAI;AAAA,MAC9B,YAAY;AAAA,MACZ,OAAO,gBAAAF,EAACG,GAAA,EAAM,UAAS,UAAS,aAAa,GAAA,CAAO;AAAA,IAAA;AAAA,IAEtDZ;AAAA,EAAA;AAGF,SACE,gBAAAS;AAAA,IAACI;AAAAA,IAAA;AAAA,MACE,GAAGL;AAAA,MACJ,YAAY,CACVM,GACA,EAAE,IAAAC,GAAI,aAAAC,GAAa,UAAAC,QAEnB,gBAAAC;AAAA,QAAC;AAAA,QAAA;AAAA,UAEC,WAAWC,EAAW,oBAAoBC,EAAM,mCAAmC,CAAC;AAAA,UAEnF,UAAA;AAAA,YAAAN;AAAA,8BACA,OAAA,EACC,UAAA;AAAA,cAAA,gBAAAL;AAAA,gBAAC;AAAA,gBAAA;AAAA,kBACC,WAAWU;AAAAA,oBACTC,EAAM,yBAAyB;AAAA,oBAC/B;AAAA,oBACA;AAAA,kBAAA;AAAA,gBACF;AAAA,cAAA;AAAA,gCAEDC,GAAA,EAAO,MAAMf,GAAY,SAASW,GAAU,UAAU,CAACD,GACrD,UAAA,OAAOT,KAAe,aAAaA,EAAWC,EAAO,KAAK,IAAID,EAAA,CACjE;AAAA,YAAA,EAAA,CACF;AAAA,UAAA;AAAA,QAAA;AAAA,QAfKQ;AAAA,MAAA;AAAA,MAmBR,UAAA,CAACD,GAAqB,EAAE,UAAAQ,GAAU,OAAAC,QACjC,gBAAAL;AAAA,QAAC;AAAA,QAAA;AAAA,UACC,WAAWC,EAAWhB,GAAW,eAAeiB,EAAM,8BAA8B,CAAC;AAAA,UAEpF,UAAA;AAAA,YAAAN;AAAA,YACAQ,KACC,gBAAAb;AAAA,cAACY;AAAA,cAAA;AAAA,gBACC,WAAWF;AAAAA,kBACT;AAAA,kBACAC,EAAM,sCAAsC;AAAA,gBAAA;AAAA,gBAE9C,MAAK;AAAA,gBACL,SAASG;AAAA,gBACT,MAAMlB;AAAA,gBAEL,UAAA,OAAOD,KAAY,aAChBA,EAAQI,EAAO,KAAK,IACpB,GAAGJ,CAAO,GAAGI,EAAO,SAAS,EAAE;AAAA,cAAA;AAAA,YAAA;AAAA,UACrC;AAAA,QAAA;AAAA,MAAA;AAAA,IAEJ;AAAA,EAAA;AAIR,CAAC;"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { StepsProps } from './types';
|
|
2
|
+
/** 校验指定字段,全部 PASS 才返回 true */
|
|
3
|
+
export declare const validateFieldsByName: (openApi: {
|
|
4
|
+
validateField?: (p: {
|
|
5
|
+
name: string;
|
|
6
|
+
}) => void;
|
|
7
|
+
emitter?: {
|
|
8
|
+
addListener: (ev: string, fn: (p: unknown) => void) => {
|
|
9
|
+
remove?: () => void;
|
|
10
|
+
};
|
|
11
|
+
};
|
|
12
|
+
getField?: (p: {
|
|
13
|
+
name: string;
|
|
14
|
+
}) => {
|
|
15
|
+
id?: string;
|
|
16
|
+
isPass?: boolean;
|
|
17
|
+
validate?: {
|
|
18
|
+
status?: string;
|
|
19
|
+
};
|
|
20
|
+
};
|
|
21
|
+
} | null | undefined, names?: string[]) => Promise<boolean>;
|
|
22
|
+
declare const _default: {
|
|
23
|
+
(props: StepsProps): import("react").JSX.Element;
|
|
24
|
+
displayName: string;
|
|
25
|
+
};
|
|
26
|
+
export default _default;
|