@1money/component-ui 0.0.20 → 0.0.22

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (95) hide show
  1. package/.claude/settings.local.json +2 -1
  2. package/AGENTS.md +7 -1
  3. package/es/components/Calendar/style/Calendar.css +1 -1
  4. package/es/components/ProForm/ProForm.js +93 -116
  5. package/es/components/ProForm/ProFormDependency.js +2 -4
  6. package/es/components/ProForm/ProFormItem.d.ts +4 -0
  7. package/es/components/ProForm/ProFormItem.js +213 -0
  8. package/es/components/ProForm/ProFormList.js +5 -6
  9. package/es/components/ProForm/Submitter.js +2 -2
  10. package/es/components/ProForm/context.d.ts +10 -2
  11. package/es/components/ProForm/context.js +17 -14
  12. package/es/components/{Form → ProForm/core}/constants.d.ts +1 -1
  13. package/es/components/ProForm/core/constants.js +18 -0
  14. package/es/components/ProForm/core/hooks/useForm.js +541 -0
  15. package/es/components/ProForm/core/hooks/useFormCore.js +347 -0
  16. package/es/components/ProForm/core/index.d.ts +6 -0
  17. package/es/components/ProForm/core/index.js +6 -0
  18. package/es/components/{Form → ProForm/core}/interface.d.ts +21 -60
  19. package/es/components/ProForm/core/interface.js +2 -0
  20. package/es/components/ProForm/core/useFormItem.d.ts +20 -0
  21. package/es/components/ProForm/core/useFormItem.js +121 -0
  22. package/es/components/ProForm/fields/ProFormFieldSet.js +7 -6
  23. package/es/components/ProForm/fields/createProFormField.js +76 -151
  24. package/es/components/ProForm/index.d.ts +12 -5
  25. package/es/components/ProForm/index.js +20 -8
  26. package/es/components/ProForm/interface.d.ts +76 -41
  27. package/es/components/ProForm/style/ProForm.css +1 -1
  28. package/es/index.css +1 -1
  29. package/es/index.d.ts +3 -4
  30. package/es/index.js +2 -3
  31. package/lib/components/Calendar/style/Calendar.css +1 -1
  32. package/lib/components/ProForm/ProForm.js +94 -117
  33. package/lib/components/ProForm/ProFormDependency.js +2 -4
  34. package/lib/components/ProForm/ProFormItem.d.ts +4 -0
  35. package/lib/components/ProForm/ProFormItem.js +222 -0
  36. package/lib/components/ProForm/ProFormList.js +4 -5
  37. package/lib/components/ProForm/Submitter.js +2 -2
  38. package/lib/components/ProForm/context.d.ts +10 -2
  39. package/lib/components/ProForm/context.js +18 -15
  40. package/lib/components/{Form → ProForm/core}/constants.d.ts +1 -1
  41. package/lib/components/ProForm/core/constants.js +24 -0
  42. package/lib/components/ProForm/core/hooks/useForm.js +551 -0
  43. package/lib/components/ProForm/core/hooks/useFormCore.js +354 -0
  44. package/lib/components/ProForm/core/index.d.ts +6 -0
  45. package/lib/components/ProForm/core/index.js +56 -0
  46. package/lib/components/{Form → ProForm/core}/interface.d.ts +21 -60
  47. package/lib/components/ProForm/core/interface.js +6 -0
  48. package/lib/components/ProForm/core/useFormItem.d.ts +20 -0
  49. package/lib/components/ProForm/core/useFormItem.js +131 -0
  50. package/lib/components/ProForm/fields/ProFormFieldSet.js +7 -6
  51. package/lib/components/ProForm/fields/createProFormField.js +76 -151
  52. package/lib/components/ProForm/index.d.ts +12 -5
  53. package/lib/components/ProForm/index.js +41 -28
  54. package/lib/components/ProForm/interface.d.ts +76 -41
  55. package/lib/components/ProForm/style/ProForm.css +1 -1
  56. package/lib/index.css +1 -1
  57. package/lib/index.d.ts +3 -4
  58. package/lib/index.js +49 -50
  59. package/package.json +1 -1
  60. package/es/components/Form/Form.d.ts +0 -4
  61. package/es/components/Form/Form.js +0 -73
  62. package/es/components/Form/FormItem.d.ts +0 -4
  63. package/es/components/Form/FormItem.js +0 -183
  64. package/es/components/Form/constants.js +0 -19
  65. package/es/components/Form/context.d.ts +0 -5
  66. package/es/components/Form/context.js +0 -19
  67. package/es/components/Form/hooks/useForm.js +0 -541
  68. package/es/components/Form/hooks/useFormCore.js +0 -348
  69. package/es/components/Form/index.d.ts +0 -10
  70. package/es/components/Form/index.js +0 -17
  71. package/es/components/Form/interface.js +0 -2
  72. package/es/components/Form/style/Form.css +0 -1
  73. package/es/components/Form/style/css.js +0 -2
  74. package/es/components/Form/style/index.d.ts +0 -1
  75. package/es/components/Form/style/index.js +0 -2
  76. package/lib/components/Form/Form.d.ts +0 -4
  77. package/lib/components/Form/Form.js +0 -80
  78. package/lib/components/Form/FormItem.d.ts +0 -4
  79. package/lib/components/Form/FormItem.js +0 -193
  80. package/lib/components/Form/constants.js +0 -25
  81. package/lib/components/Form/context.d.ts +0 -5
  82. package/lib/components/Form/context.js +0 -25
  83. package/lib/components/Form/hooks/useForm.js +0 -551
  84. package/lib/components/Form/hooks/useFormCore.js +0 -355
  85. package/lib/components/Form/index.d.ts +0 -10
  86. package/lib/components/Form/index.js +0 -83
  87. package/lib/components/Form/interface.js +0 -6
  88. package/lib/components/Form/style/Form.css +0 -1
  89. package/lib/components/Form/style/css.js +0 -4
  90. package/lib/components/Form/style/index.d.ts +0 -1
  91. package/lib/components/Form/style/index.js +0 -4
  92. /package/es/components/{Form → ProForm/core}/hooks/useForm.d.ts +0 -0
  93. /package/es/components/{Form → ProForm/core}/hooks/useFormCore.d.ts +0 -0
  94. /package/lib/components/{Form → ProForm/core}/hooks/useForm.d.ts +0 -0
  95. /package/lib/components/{Form → ProForm/core}/hooks/useFormCore.d.ts +0 -0
@@ -104,7 +104,8 @@
104
104
  "mcp__figma-dev-mode-mcp-server__get_variable_defs",
105
105
  "Bash(gh api *)",
106
106
  "Bash(cp /Users/wali/1Money/1money-react-ui/src/components/Loading/lottie-pure.json /Users/wali/1Money/1money-components-ui/src/components/Spinner/lottie-pure.json)",
107
- "Bash(cp /Users/wali/1Money/1money-react-ui/src/components/Loading/lottie-pattern.json /Users/wali/1Money/1money-components-ui/src/components/Spinner/lottie-pattern.json)"
107
+ "Bash(cp /Users/wali/1Money/1money-react-ui/src/components/Loading/lottie-pattern.json /Users/wali/1Money/1money-components-ui/src/components/Spinner/lottie-pattern.json)",
108
+ "mcp__ide__getDiagnostics"
108
109
  ]
109
110
  }
110
111
  }
package/AGENTS.md CHANGED
@@ -112,7 +112,13 @@ import { Icons, IconWrapper, IconHover } from '@1money/components-ui/Icons';
112
112
  import '@1money/components-ui/index.css';
113
113
  ```
114
114
 
115
- **Available components:** Button, Checkbox, Tag, Tooltip, Notification, Icons (+ IconWrapper, IconHover), Spinner
115
+ **Available components:** Accordion, Alert, Button, Calendar, Carousel, Cell, Checkbox (+ CheckboxGroup), CoachMark, Copy, Dialog, Divider, Drawer, Dropdown, Empty, Flex, Grid (+ Row, Col), Icons (+ IconWrapper, IconHover), Input, Link, Navigation (+ Nav), Notification, Pagination, Popconfirm, Portal, ProForm (unified form system, see below), Progress, Radio (+ RadioGroup), ResizeObserver, Segment, Select, Skeleton, Slider, Space, Spinner, Step, Switch, Table (+ VirtualTable), Tabs, Tag, Tooltip, Tour, Trigger, Typography, Upload (+ UploadFileBar), VirtualList
116
+
117
+ **ProForm system:** The form layer is consolidated into a single `ProForm` module — there is no standalone `Form` component. `ProForm` wraps a `<form>` element, provides the unified `ProFormContext` (combines form-core state and ProForm semantics), and exposes:
118
+ - `ProForm` (root) with static sub-components: `ProForm.Item`, `ProForm.Dependency`, `ProForm.List`, `ProForm.Group`, `ProForm.FieldSet`, `ProForm.Submitter`, `ProForm.Text / Password / TextArea / Checkbox / CheckboxGroup / Switch / Select / RadioGroup / Slider / DatePicker / Upload`, plus hooks `ProForm.useForm`, `ProForm.useInstance`, `ProForm.useContext`.
119
+ - `ProFormItem` — the public item primitive (supports `transform`, `convertValue`, `valueType`, `readonlyRender`, `colProps`, `mode`, `emptyText`, `valueEnum`).
120
+ - Named exports for all field components, `ProFormDependency`, `ProFormList`, `ProFormGroup`, `DialogForm`, `DrawerForm`, `QueryFilter`, and `createProFormField` (the extension factory).
121
+ - Internal-only: `FormItem` (the low-level item used by `ProFormItem`), `useFormCore`, `FormContext` — none of these are publicly exported.
116
122
 
117
123
  ### Development Workflow
118
124
  1. Use `omni new ComponentName -f` to scaffold new components (generates interface, styles, stories, tests, and README)
@@ -1 +1 @@
1
- .om-component-ui-calendar-small input{height:var(--om-component-height-lg,44px)!important;line-height:18px!important}.om-component-ui-calendar.p-invalid input{color:var(--om-text-danger,#ae0000);box-shadow:none}.om-component-ui-calendar.p-invalid input,.om-component-ui-calendar.p-invalid input:hover{border-color:var(--om-border-danger,#ae0000)}.om-component-ui-calendar.om-component-ui-calendar-success input{color:var(--om-text-positive,#1f5800);border-color:var(--om-border-positive,#1f5800);box-shadow:none}.om-component-ui-calendar.om-component-ui-calendar-success input:hover{border-color:var(--om-border-positive,#1f5800)}.om-component-ui-calendar.p-calendar-disabled{cursor:not-allowed}.om-component-ui-calendar.p-calendar-disabled input{background-color:var(--om-bg-disabled,#f0f0f0);border-color:var(--om-border-disabled,#e3e4e4);opacity:1}.om-component-ui-calendar-filled.p-calendar-disabled input{background-color:var(--om-bg-default-secondary,#f8f8f8);border-color:var(--om-border-disabled,#e3e4e4)}.om-component-ui-calendar input{height:var(--om-component-height-3xl,56px);padding:var(--om-spacing-200,8px) var(--om-spacing-400,16px);color:var(--om-text-default,#131313);font-size:var(--om-body-lg-font-size);font-family:var(--om-body-lg-font-family);line-height:var(--om-body-lg-line-height);letter-spacing:var(--om-body-lg-letter-spacing);font-weight:var(--om-body-lg-font-weight);background-color:var(--om-bg-default-secondary,#f8f8f8);border:1px solid var(--om-border-default,#d1d2d2);border-radius:var(--om-radius-300,12px)}.om-component-ui-calendar input:hover{border-color:var(--om-border-brand,#073387)}.om-component-ui-calendar input::placeholder{color:var(--om-text-default-tertiary,#646465);font-weight:400;font-size:var(--om-body-md-font-size);font-family:var(--om-body-md-font-family);line-height:var(--om-body-md-line-height);letter-spacing:var(--om-body-md-letter-spacing);font-weight:var(--om-body-md-font-weight)}.om-component-ui-calendar.p-calendar:not(.p-calendar-disabled,.p-invalid,.om-component-ui-calendar-success).p-focus>.p-inputtext{padding:7px 15px;border-color:var(--om-border-brand,#073387);border-width:2px;box-shadow:none}.om-component-ui-calendar-panel{padding:var(--om-spacing-600,24px);background-color:var(--om-bg-default,#fff);border:1px solid var(--om-border-neutral-tertiary,#f8f8f8);border-radius:var(--om-radius-300,12px);box-shadow:var(--om-shadow-100,0 4px 8px rgba(65,91,130,.12))}.om-component-ui-calendar-panel .p-datepicker-buttonbar{padding:var(--om-spacing-200,8px) 0;border:none}.om-component-ui-calendar-panel .p-datepicker-buttonbar .p-button{padding:0 var(--om-spacing-400,16px);color:var(--om-text-default,#131313);font-size:var(--om-body-lg-font-size);font-family:var(--om-body-lg-font-family);line-height:var(--om-body-lg-line-height);letter-spacing:var(--om-body-lg-letter-spacing);font-weight:var(--om-body-lg-font-weight)}.om-component-ui-calendar-panel .p-datepicker-buttonbar .p-button:hover{color:var(--om-text-brand,#073387);background-color:inherit}.om-component-ui-calendar-panel .p-datepicker-buttonbar .p-button span{font-weight:500}.om-component-ui-calendar-panel .p-datepicker-group-container{gap:var(--om-spacing-600,24px)}.om-component-ui-calendar-panel .p-datepicker-group-container .p-datepicker-group{display:flex;flex-direction:column;gap:var(--om-spacing-300,12px);padding:0!important;border:0!important}.om-component-ui-calendar-panel .p-datepicker-group-container .p-datepicker-group .p-datepicker-header{padding:0;border:none}.om-component-ui-calendar-panel .p-datepicker-group-container .p-datepicker-group .p-datepicker-header .p-datepicker-title{display:inline-flex;gap:var(--om-spacing-100,4px);align-items:center}.om-component-ui-calendar-panel .p-datepicker-group-container .p-datepicker-group .p-datepicker-header .p-datepicker-title>*{font-size:var(--om-title-lg-font-size);font-family:var(--om-title-lg-font-family);line-height:var(--om-title-lg-line-height);letter-spacing:var(--om-title-lg-letter-spacing);font-weight:var(--om-title-lg-font-weight)}.om-component-ui-calendar-panel .p-datepicker-group-container .p-datepicker-group .p-datepicker-header .p-datepicker-title>:hover{color:var(--om-text-brand,#073387)}.om-component-ui-calendar-panel .p-datepicker-group-container .p-datepicker-group .p-datepicker-header .p-datepicker-next:hover,.om-component-ui-calendar-panel .p-datepicker-group-container .p-datepicker-group .p-datepicker-header .p-datepicker-prev:hover{background-color:inherit}.om-component-ui-calendar-panel .p-datepicker-group-container .p-datepicker-group .p-datepicker-header .p-datepicker-next:hover>i,.om-component-ui-calendar-panel .p-datepicker-group-container .p-datepicker-group .p-datepicker-header .p-datepicker-prev:hover>i{color:var(--om-icon-brand,#073387)!important}.om-component-ui-calendar-panel .p-datepicker-group-container .p-datepicker-group .p-datepicker-calendar-container table{width:var(--content-width,280px);margin:0;table-layout:fixed;border-collapse:separate;border-spacing:0 var(--om-spacing-100,4px)}.om-component-ui-calendar-panel .p-datepicker-group-container .p-datepicker-group .p-datepicker-calendar-container .p-datepicker-calendar thead tr th span{color:var(--om-text-default,#131313);font-size:var(--om-body-lg-font-size);font-family:var(--om-body-lg-font-family);line-height:var(--om-body-lg-line-height);letter-spacing:var(--om-body-lg-letter-spacing);font-weight:var(--om-body-lg-strong-font-weight)}.om-component-ui-calendar-panel .p-datepicker-group-container .p-datepicker-group .p-datepicker-calendar-container .p-datepicker-calendar tbody tr td{width:var(--om-component-height-md,40px)!important;height:var(--om-component-height-md,40px);padding:0!important}.om-component-ui-calendar-panel .p-datepicker-group-container .p-datepicker-group .p-datepicker-calendar-container .p-datepicker-calendar tbody tr td:first-child{border-radius:var(--om-radius-full,9999px) 0 0 var(--om-radius-full,9999px)}.om-component-ui-calendar-panel .p-datepicker-group-container .p-datepicker-group .p-datepicker-calendar-container .p-datepicker-calendar tbody tr td:last-child{border-radius:0 var(--om-radius-full,9999px) var(--om-radius-full,9999px) 0}.om-component-ui-calendar-panel .p-datepicker-group-container .p-datepicker-group .p-datepicker-calendar-container .p-datepicker-calendar tbody tr td span{width:var(--om-component-height-md,40px)!important;max-width:var(--om-component-height-md,40px)!important;height:var(--om-component-height-md,40px)!important;max-height:var(--om-component-height-md,40px)!important;margin:0!important;padding:0!important;color:var(--om-text-default,#131313);border:none;border-radius:var(--om-radius-full,9999px);box-shadow:none;font-size:var(--om-label-lg-font-size);font-family:var(--om-label-lg-font-family);line-height:var(--om-label-lg-line-height);letter-spacing:var(--om-label-lg-letter-spacing);font-weight:var(--om-label-lg-font-weight)}.om-component-ui-calendar-panel .p-datepicker-group-container .p-datepicker-group .p-datepicker-calendar-container .p-datepicker-calendar tbody tr td span.p-highlight{color:var(--om-text-on-neutral,#fff);background-color:var(--om-bg-brand,#073387);border-radius:var(--om-radius-full,9999px)}.om-component-ui-calendar-panel .p-datepicker-group-container .p-datepicker-group .p-datepicker-calendar-container .p-datepicker-calendar tbody tr td span.p-highlight:hover{color:var(--om-text-on-neutral,#fff);background-color:var(--om-bg-brand,#073387)}.om-component-ui-calendar-panel .p-datepicker-group-container .p-datepicker-group .p-datepicker-calendar-container .p-datepicker-calendar tbody tr td span.p-disabled{color:var(--om-text-disabled,#bbbdc1)!important}.om-component-ui-calendar-panel .p-datepicker-group-container .p-datepicker-group .p-datepicker-calendar-container .p-datepicker-calendar .p-datepicker-today span,.om-component-ui-calendar-panel .p-datepicker-group-container .p-datepicker-group .p-datepicker-calendar-container .p-datepicker-calendar tbody tr td span:hover{color:var(--om-text-brand,#073387);background-color:var(--om-bg-default,#fff)}.om-component-ui-calendar-panel .p-yearpicker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--om-spacing-400,16px);place-items:center center;text-align:center}.om-component-ui-calendar-panel .p-yearpicker .p-yearpicker-year{width:auto;font-size:var(--om-title-lg-font-size);font-family:var(--om-title-lg-font-family);line-height:var(--om-title-lg-line-height);letter-spacing:var(--om-title-lg-letter-spacing);font-weight:var(--om-title-lg-font-weight);border:none;box-shadow:none}.om-component-ui-calendar-panel .p-yearpicker .p-yearpicker-year.p-highlight,.om-component-ui-calendar-panel .p-yearpicker .p-yearpicker-year.p-highlight:hover{color:var(--om-text-on-neutral,#fff);background-color:var(--om-bg-brand,#073387)}.om-component-ui-calendar-panel .p-yearpicker .p-yearpicker-year:hover{color:var(--om-text-brand,#073387);background-color:var(--om-bg-default,#fff)}.om-component-ui-calendar-panel .p-monthpicker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--om-spacing-400,16px);place-items:center center;text-align:center}.om-component-ui-calendar-panel .p-monthpicker .p-monthpicker-month{width:auto;padding:var(--om-spacing-100,4px) var(--om-spacing-400,16px);font-size:var(--om-title-lg-font-size);font-family:var(--om-title-lg-font-family);line-height:var(--om-title-lg-line-height);letter-spacing:var(--om-title-lg-letter-spacing);font-weight:var(--om-title-lg-font-weight);border:none;box-shadow:none}.om-component-ui-calendar-panel .p-monthpicker .p-monthpicker-month.p-highlight,.om-component-ui-calendar-panel .p-monthpicker .p-monthpicker-month.p-highlight:hover{color:var(--om-text-on-neutral,#fff);background-color:var(--om-bg-brand,#073387)}.om-component-ui-calendar-panel .p-monthpicker .p-monthpicker-month:hover{color:var(--om-text-brand,#073387);background-color:var(--om-bg-default,#fff)}.om-component-ui-calendar-wrapper{display:inline-flex;flex-direction:column}.om-component-ui-calendar-label{margin-bottom:var(--om-spacing-200,8px);font-size:var(--om-label-lg-font-size);font-family:var(--om-label-lg-font-family);line-height:var(--om-label-lg-line-height);letter-spacing:var(--om-label-lg-letter-spacing);font-weight:var(--om-label-lg-font-weight)}.om-component-ui-calendar-label-required:after{margin-left:var(--om-spacing-100,4px);color:var(--om-text-danger,#ae0000);font-size:var(--om-body-lg-font-size);font-family:var(--om-body-lg-font-family);line-height:var(--om-body-lg-line-height);letter-spacing:var(--om-body-lg-letter-spacing);font-weight:var(--om-body-lg-font-weight);content:"*"}.om-component-ui-calendar-message{display:flex;gap:var(--om-spacing-100,4px);align-items:center;justify-content:flex-start;margin-top:var(--om-spacing-100,4px);color:var(--om-text-neutral-secondary,#9fa3a3);font-size:var(--om-body-sm-font-size);font-family:var(--om-body-sm-font-family);line-height:var(--om-body-sm-line-height);letter-spacing:var(--om-body-sm-letter-spacing);font-weight:var(--om-body-sm-font-weight);word-wrap:break-word;word-break:keep-all}.om-component-ui-calendar-message-success{color:var(--om-text-positive,#1f5800)}.om-component-ui-calendar-message-error{color:var(--om-text-danger,#ae0000)}.om-component-ui-calendar-p-start{position:relative;background-color:transparent!important;border-radius:0!important}.om-component-ui-calendar-p-start:after{position:absolute;top:0;right:0;z-index:0;width:50%;height:100%;background-color:var(--om-bg-brand-tertiary,#edf2f9);content:""}.om-component-ui-calendar-p-start .p-highlight{position:relative;z-index:1}.om-component-ui-calendar-p-start:last-child,.om-component-ui-calendar-p-start span{border-radius:var(--om-radius-full,9999px)!important}.om-component-ui-calendar-p-start span{color:var(--om-text-on-neutral,#fff)!important;background-color:var(--om-bg-brand,#073387)!important}.om-component-ui-calendar-p-end{position:relative;background-color:transparent!important;border-radius:0!important}.om-component-ui-calendar-p-end:after{position:absolute;top:0;left:0;z-index:0;width:50%;height:100%;background-color:var(--om-bg-brand-tertiary,#edf2f9);content:""}.om-component-ui-calendar-p-end .p-highlight{position:relative;z-index:1}.om-component-ui-calendar-p-end:first-child,.om-component-ui-calendar-p-end span{border-radius:var(--om-radius-full,9999px)!important}.om-component-ui-calendar-p-end span{color:var(--om-text-on-neutral,#fff)!important;background-color:var(--om-bg-brand,#073387)!important}.om-component-ui-calendar-p-range{color:var(--om-text-default,#131313)!important;background-color:var(--om-bg-brand-tertiary,#edf2f9)!important}.om-component-ui-calendar-p-range span.p-highlight{color:var(--om-text-default,#131313)!important;background-color:transparent!important}
1
+ .om-component-ui-calendar-small input{height:var(--om-component-height-lg,44px)!important;line-height:18px!important}.om-component-ui-calendar.p-invalid input{color:var(--om-text-danger,#ae0000);box-shadow:none}.om-component-ui-calendar.p-invalid input,.om-component-ui-calendar.p-invalid input:hover{border-color:var(--om-border-danger,#ae0000)}.om-component-ui-calendar.om-component-ui-calendar-success input{color:var(--om-text-positive,#1f5800);border-color:var(--om-border-positive,#1f5800);box-shadow:none}.om-component-ui-calendar.om-component-ui-calendar-success input:hover{border-color:var(--om-border-positive,#1f5800)}.om-component-ui-calendar.p-calendar-disabled{cursor:not-allowed}.om-component-ui-calendar.p-calendar-disabled input{background-color:var(--om-bg-disabled,#f0f0f0);border-color:var(--om-border-disabled,#e3e4e4);opacity:1}.om-component-ui-calendar-filled.p-calendar-disabled input{background-color:var(--om-bg-default-secondary,#f8f8f8);border-color:var(--om-border-disabled,#e3e4e4)}.om-component-ui-calendar input{height:var(--om-component-height-3xl,56px);padding:var(--om-spacing-200,8px) var(--om-spacing-400,16px);color:var(--om-text-default,#131313);font-size:var(--om-body-lg-font-size);font-family:var(--om-body-lg-font-family);line-height:var(--om-body-lg-line-height);letter-spacing:var(--om-body-lg-letter-spacing);font-weight:var(--om-body-lg-font-weight);background-color:var(--om-bg-default-secondary,#f8f8f8);border:1px solid var(--om-border-default,#d1d2d2);border-radius:var(--om-radius-300,12px)}.om-component-ui-calendar input:hover{border-color:var(--om-border-brand,#073387)}.om-component-ui-calendar input::placeholder{color:var(--om-text-default-tertiary,#646465);font-weight:400;font-size:var(--om-body-md-font-size);font-family:var(--om-body-md-font-family);line-height:var(--om-body-md-line-height);letter-spacing:var(--om-body-md-letter-spacing);font-weight:var(--om-body-md-font-weight)}.om-component-ui-calendar.p-calendar:not(.p-calendar-disabled,.p-invalid,.om-component-ui-calendar-success).p-focus>.p-inputtext{padding:7px 15px;border-color:var(--om-border-brand,#073387);border-width:2px;box-shadow:none}.om-component-ui-calendar-panel{padding:var(--om-spacing-600,24px);background-color:var(--om-bg-default,#fff);border:1px solid var(--om-border-neutral-tertiary,#f8f8f8);border-radius:var(--om-radius-300,12px);box-shadow:var(--om-shadow-100,0 4px 8px rgba(65,91,130,.12))}.om-component-ui-calendar-panel .p-datepicker-buttonbar{padding:var(--om-spacing-200,8px) 0;border:none}.om-component-ui-calendar-panel .p-datepicker-buttonbar .p-button{padding:0 var(--om-spacing-400,16px);color:var(--om-text-default,#131313);font-size:var(--om-body-lg-font-size);font-family:var(--om-body-lg-font-family);line-height:var(--om-body-lg-line-height);letter-spacing:var(--om-body-lg-letter-spacing);font-weight:var(--om-body-lg-font-weight)}.om-component-ui-calendar-panel .p-datepicker-buttonbar .p-button:hover{color:var(--om-text-brand,#073387);background-color:inherit}.om-component-ui-calendar-panel .p-datepicker-buttonbar .p-button span{font-weight:500}.om-component-ui-calendar-panel .p-datepicker-group-container{gap:var(--om-spacing-600,24px)}.om-component-ui-calendar-panel .p-datepicker-group-container .p-datepicker-group{display:flex;flex-direction:column;gap:var(--om-spacing-300,12px);padding:0!important;border:0!important}.om-component-ui-calendar-panel .p-datepicker-group-container .p-datepicker-group .p-datepicker-header{padding:0;border:none}.om-component-ui-calendar-panel .p-datepicker-group-container .p-datepicker-group .p-datepicker-header .p-datepicker-title{display:inline-flex;gap:var(--om-spacing-100,4px);align-items:center}.om-component-ui-calendar-panel .p-datepicker-group-container .p-datepicker-group .p-datepicker-header .p-datepicker-title>*{font-size:var(--om-title-lg-font-size);font-family:var(--om-title-lg-font-family);line-height:var(--om-title-lg-line-height);letter-spacing:var(--om-title-lg-letter-spacing);font-weight:var(--om-title-lg-font-weight)}.om-component-ui-calendar-panel .p-datepicker-group-container .p-datepicker-group .p-datepicker-header .p-datepicker-title>:hover{color:var(--om-text-brand,#073387)}.om-component-ui-calendar-panel .p-datepicker-group-container .p-datepicker-group .p-datepicker-header .p-datepicker-next:hover,.om-component-ui-calendar-panel .p-datepicker-group-container .p-datepicker-group .p-datepicker-header .p-datepicker-prev:hover{background-color:inherit}.om-component-ui-calendar-panel .p-datepicker-group-container .p-datepicker-group .p-datepicker-header .p-datepicker-next:hover>i,.om-component-ui-calendar-panel .p-datepicker-group-container .p-datepicker-group .p-datepicker-header .p-datepicker-prev:hover>i{color:var(--om-icon-brand,#073387)!important}.om-component-ui-calendar-panel .p-datepicker-group-container .p-datepicker-group .p-datepicker-calendar-container table{width:var(--content-width,280px);margin:0;table-layout:fixed;border-collapse:separate;border-spacing:0 var(--om-spacing-100,4px)}.om-component-ui-calendar-panel .p-datepicker-group-container .p-datepicker-group .p-datepicker-calendar-container .p-datepicker-calendar thead tr th span{color:var(--om-text-default,#131313);font-size:var(--om-body-lg-font-size);font-family:var(--om-body-lg-font-family);line-height:var(--om-body-lg-line-height);letter-spacing:var(--om-body-lg-letter-spacing);font-weight:var(--om-body-lg-strong-font-weight)}.om-component-ui-calendar-panel .p-datepicker-group-container .p-datepicker-group .p-datepicker-calendar-container .p-datepicker-calendar tbody tr td{width:var(--om-component-height-md,40px)!important;height:var(--om-component-height-md,40px);padding:0!important}.om-component-ui-calendar-panel .p-datepicker-group-container .p-datepicker-group .p-datepicker-calendar-container .p-datepicker-calendar tbody tr td:first-child{border-radius:var(--om-radius-full,9999px) 0 0 var(--om-radius-full,9999px)}.om-component-ui-calendar-panel .p-datepicker-group-container .p-datepicker-group .p-datepicker-calendar-container .p-datepicker-calendar tbody tr td:first-child.om-component-ui-calendar-p-end:after{background-color:#fff}.om-component-ui-calendar-panel .p-datepicker-group-container .p-datepicker-group .p-datepicker-calendar-container .p-datepicker-calendar tbody tr td:last-child{border-radius:0 var(--om-radius-full,9999px) var(--om-radius-full,9999px) 0}.om-component-ui-calendar-panel .p-datepicker-group-container .p-datepicker-group .p-datepicker-calendar-container .p-datepicker-calendar tbody tr td:last-child.om-component-ui-calendar-p-start:after{background-color:#fff}.om-component-ui-calendar-panel .p-datepicker-group-container .p-datepicker-group .p-datepicker-calendar-container .p-datepicker-calendar tbody tr td span{width:var(--om-component-height-md,40px)!important;max-width:var(--om-component-height-md,40px)!important;height:var(--om-component-height-md,40px)!important;max-height:var(--om-component-height-md,40px)!important;margin:0!important;padding:0!important;color:var(--om-text-default,#131313);border:none;border-radius:var(--om-radius-full,9999px);box-shadow:none;font-size:var(--om-label-lg-font-size);font-family:var(--om-label-lg-font-family);line-height:var(--om-label-lg-line-height);letter-spacing:var(--om-label-lg-letter-spacing);font-weight:var(--om-label-lg-font-weight)}.om-component-ui-calendar-panel .p-datepicker-group-container .p-datepicker-group .p-datepicker-calendar-container .p-datepicker-calendar tbody tr td span.p-highlight{color:var(--om-text-on-neutral,#fff);background-color:var(--om-bg-brand,#073387);border-radius:var(--om-radius-full,9999px)}.om-component-ui-calendar-panel .p-datepicker-group-container .p-datepicker-group .p-datepicker-calendar-container .p-datepicker-calendar tbody tr td span.p-highlight:hover{color:var(--om-text-on-neutral,#fff);background-color:var(--om-bg-brand,#073387)}.om-component-ui-calendar-panel .p-datepicker-group-container .p-datepicker-group .p-datepicker-calendar-container .p-datepicker-calendar tbody tr td span.p-disabled{color:var(--om-text-disabled,#bbbdc1)!important}.om-component-ui-calendar-panel .p-datepicker-group-container .p-datepicker-group .p-datepicker-calendar-container .p-datepicker-calendar .p-datepicker-today span,.om-component-ui-calendar-panel .p-datepicker-group-container .p-datepicker-group .p-datepicker-calendar-container .p-datepicker-calendar tbody tr td span:hover{color:var(--om-text-brand,#073387);background-color:var(--om-bg-default,#fff)}.om-component-ui-calendar-panel .p-yearpicker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--om-spacing-400,16px);place-items:center center;text-align:center}.om-component-ui-calendar-panel .p-yearpicker .p-yearpicker-year{width:auto;font-size:var(--om-title-lg-font-size);font-family:var(--om-title-lg-font-family);line-height:var(--om-title-lg-line-height);letter-spacing:var(--om-title-lg-letter-spacing);font-weight:var(--om-title-lg-font-weight);border:none;box-shadow:none}.om-component-ui-calendar-panel .p-yearpicker .p-yearpicker-year.p-highlight,.om-component-ui-calendar-panel .p-yearpicker .p-yearpicker-year.p-highlight:hover{color:var(--om-text-on-neutral,#fff);background-color:var(--om-bg-brand,#073387)}.om-component-ui-calendar-panel .p-yearpicker .p-yearpicker-year:hover{color:var(--om-text-brand,#073387);background-color:var(--om-bg-default,#fff)}.om-component-ui-calendar-panel .p-monthpicker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--om-spacing-400,16px);place-items:center center;text-align:center}.om-component-ui-calendar-panel .p-monthpicker .p-monthpicker-month{width:auto;padding:var(--om-spacing-100,4px) var(--om-spacing-400,16px);font-size:var(--om-title-lg-font-size);font-family:var(--om-title-lg-font-family);line-height:var(--om-title-lg-line-height);letter-spacing:var(--om-title-lg-letter-spacing);font-weight:var(--om-title-lg-font-weight);border:none;box-shadow:none}.om-component-ui-calendar-panel .p-monthpicker .p-monthpicker-month.p-highlight,.om-component-ui-calendar-panel .p-monthpicker .p-monthpicker-month.p-highlight:hover{color:var(--om-text-on-neutral,#fff);background-color:var(--om-bg-brand,#073387)}.om-component-ui-calendar-panel .p-monthpicker .p-monthpicker-month:hover{color:var(--om-text-brand,#073387);background-color:var(--om-bg-default,#fff)}.om-component-ui-calendar-wrapper{display:inline-flex;flex-direction:column}.om-component-ui-calendar-label{margin-bottom:var(--om-spacing-200,8px);font-size:var(--om-label-lg-font-size);font-family:var(--om-label-lg-font-family);line-height:var(--om-label-lg-line-height);letter-spacing:var(--om-label-lg-letter-spacing);font-weight:var(--om-label-lg-font-weight)}.om-component-ui-calendar-label-required:after{margin-left:var(--om-spacing-100,4px);color:var(--om-text-danger,#ae0000);font-size:var(--om-body-lg-font-size);font-family:var(--om-body-lg-font-family);line-height:var(--om-body-lg-line-height);letter-spacing:var(--om-body-lg-letter-spacing);font-weight:var(--om-body-lg-font-weight);content:"*"}.om-component-ui-calendar-message{display:flex;gap:var(--om-spacing-100,4px);align-items:center;justify-content:flex-start;margin-top:var(--om-spacing-100,4px);color:var(--om-text-neutral-secondary,#9fa3a3);font-size:var(--om-body-sm-font-size);font-family:var(--om-body-sm-font-family);line-height:var(--om-body-sm-line-height);letter-spacing:var(--om-body-sm-letter-spacing);font-weight:var(--om-body-sm-font-weight);word-wrap:break-word;word-break:keep-all}.om-component-ui-calendar-message-success{color:var(--om-text-positive,#1f5800)}.om-component-ui-calendar-message-error{color:var(--om-text-danger,#ae0000)}.om-component-ui-calendar-p-start{position:relative;background-color:transparent!important;border-radius:0!important}.om-component-ui-calendar-p-start:after{position:absolute;top:0;right:0;z-index:0;width:50%;height:100%;background-color:var(--om-bg-brand-tertiary,#edf2f9);content:""}.om-component-ui-calendar-p-start .p-highlight{position:relative;z-index:1}.om-component-ui-calendar-p-start:last-child,.om-component-ui-calendar-p-start span{border-radius:var(--om-radius-full,9999px)!important}.om-component-ui-calendar-p-start span{color:var(--om-text-on-neutral,#fff)!important;background-color:var(--om-bg-brand,#073387)!important}.om-component-ui-calendar-p-end{position:relative;background-color:transparent!important;border-radius:0!important}.om-component-ui-calendar-p-end:after{position:absolute;top:0;left:0;z-index:0;width:50%;height:100%;background-color:var(--om-bg-brand-tertiary,#edf2f9);content:""}.om-component-ui-calendar-p-end .p-highlight{position:relative;z-index:1}.om-component-ui-calendar-p-end:first-child,.om-component-ui-calendar-p-end span{border-radius:var(--om-radius-full,9999px)!important}.om-component-ui-calendar-p-end span{color:var(--om-text-on-neutral,#fff)!important;background-color:var(--om-bg-brand,#073387)!important}.om-component-ui-calendar-p-range{color:var(--om-text-default,#131313)!important;background-color:var(--om-bg-brand-tertiary,#edf2f9)!important}.om-component-ui-calendar-p-range span.p-highlight{color:var(--om-text-default,#131313)!important;background-color:transparent!important}
@@ -1,5 +1,5 @@
1
- import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
2
1
  import _typeof from "@babel/runtime/helpers/esm/typeof";
2
+ import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
3
3
  import _regeneratorRuntime from "@babel/runtime/regenerator";
4
4
  var __awaiter = this && this.__awaiter || function (thisArg, _arguments, P, generator) {
5
5
  function adopt(value) {
@@ -40,99 +40,25 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
40
40
  import { memo, useEffect, useMemo, useRef, Fragment } from 'react';
41
41
  import { useLatest, useSafeState, useMemoizedFn } from '@1money/hooks';
42
42
  import { default as classnames, joinCls } from '../../utils/classnames';
43
- import { Form } from '../Form';
44
- import { useFormInstance } from '../Form/context';
45
43
  import { Row } from '../Grid';
44
+ import { useFormCore } from './core/hooks/useFormCore';
46
45
  import { ProFormContext } from './context';
47
46
  import { Submitter } from './Submitter';
48
47
  import { CSS_PREFIX } from './constants';
49
48
  import { stableSerialize, transformSubmitValues, omitNilValues } from './utils';
50
49
  var classes = classnames(CSS_PREFIX);
51
- var ProFormInner = function ProFormInner(props) {
50
+ var formClasses = classnames('form');
51
+ var ProFormBase = function ProFormBase(props) {
52
52
  var children = props.children,
53
+ className = props.className,
53
54
  submitter = props.submitter,
54
- _props$mode = props.mode,
55
- mode = _props$mode === void 0 ? 'edit' : _props$mode,
56
55
  _props$readonly = props.readonly,
57
56
  readonly = _props$readonly === void 0 ? false : _props$readonly,
57
+ modeProp = props.mode,
58
58
  _props$grid = props.grid,
59
59
  grid = _props$grid === void 0 ? false : _props$grid,
60
60
  colProps = props.colProps,
61
61
  rowProps = props.rowProps,
62
- formRef = props.formRef,
63
- isLoading = props.isLoading,
64
- applyPipeline = props.applyPipeline,
65
- registerTransform = props.registerTransform,
66
- unregisterTransform = props.unregisterTransform;
67
- var resolvedMode = mode !== null && mode !== void 0 ? mode : readonly ? 'read' : 'edit';
68
- var form = useFormInstance();
69
- // Build ProFormFormInstance by extending the real form instance with format methods
70
- var proFormFormInstance = useMemo(function () {
71
- return {
72
- submit: form.submit,
73
- resetFields: form.resetFields,
74
- getFieldValue: form.getFieldValue,
75
- getFieldsValue: form.getFieldsValue,
76
- setFieldsValue: form.setFieldsValue,
77
- setFieldValue: form.setFieldValue,
78
- validateFields: form.validateFields,
79
- getFieldsFormatValue: function getFieldsFormatValue() {
80
- return applyPipeline(form.getFieldsValue());
81
- },
82
- validateFieldsReturnFormatValue: function validateFieldsReturnFormatValue() {
83
- var isValid = form.validateFields();
84
- if (!isValid) return {
85
- success: false
86
- };
87
- return {
88
- success: true,
89
- values: applyPipeline(form.getFieldsValue())
90
- };
91
- }
92
- };
93
- }, [form, applyPipeline]);
94
- useEffect(function () {
95
- if (formRef) {
96
- formRef.current = proFormFormInstance;
97
- }
98
- });
99
- var proFormContextValue = useMemo(function () {
100
- return {
101
- readonly: readonly,
102
- mode: resolvedMode,
103
- grid: grid,
104
- colProps: colProps,
105
- registerTransform: registerTransform,
106
- unregisterTransform: unregisterTransform,
107
- formInstance: proFormFormInstance
108
- };
109
- }, [readonly, resolvedMode, grid, colProps, registerTransform, unregisterTransform, proFormFormInstance]);
110
- var WrapperComponent = grid ? Row : Fragment;
111
- var wrapperProps = grid ? Object.assign({}, rowProps) : {};
112
- var submitterNode = submitter !== false && resolvedMode !== 'read' ? _jsx(Submitter, Object.assign({}, _typeof(submitter) === 'object' ? submitter : {}, {
113
- loading: isLoading
114
- })) : null;
115
- return _jsxs(ProFormContext.Provider, {
116
- value: proFormContextValue,
117
- children: [_jsx(WrapperComponent, Object.assign({}, wrapperProps, {
118
- children: children
119
- })), submitterNode]
120
- });
121
- };
122
- // ---------------------------------------------------------------------------
123
- // Outer component — renders <Form> and sets up transforms / request
124
- // ---------------------------------------------------------------------------
125
- var ProFormBase = function ProFormBase(props) {
126
- var children = props.children,
127
- className = props.className,
128
- submitter = props.submitter,
129
- _props$readonly2 = props.readonly,
130
- readonly = _props$readonly2 === void 0 ? false : _props$readonly2,
131
- modeProp = props.mode,
132
- _props$grid2 = props.grid,
133
- grid = _props$grid2 === void 0 ? false : _props$grid2,
134
- colProps = props.colProps,
135
- rowProps = props.rowProps,
136
62
  _props$loading = props.loading,
137
63
  loading = _props$loading === void 0 ? false : _props$loading,
138
64
  request = props.request,
@@ -145,13 +71,20 @@ var ProFormBase = function ProFormBase(props) {
145
71
  formRef = props.formRef,
146
72
  _props$omitNil = props.omitNil,
147
73
  omitNil = _props$omitNil === void 0 ? true : _props$omitNil,
148
- size = props.size,
149
- labelAlign = props.labelAlign,
150
- disabled = props.disabled,
151
- colon = props.colon,
152
- requiredMark = props.requiredMark,
153
- validateTrigger = props.validateTrigger,
154
- rest = __rest(props, ["children", "className", "submitter", "readonly", "mode", "grid", "colProps", "rowProps", "loading", "request", "params", "initialValues", "onFinish", "onFinishFailed", "onValuesChange", "onReset", "formRef", "omitNil", "size", "labelAlign", "disabled", "colon", "requiredMark", "validateTrigger"]);
74
+ _props$size = props.size,
75
+ size = _props$size === void 0 ? 'middle' : _props$size,
76
+ _props$labelAlign = props.labelAlign,
77
+ labelAlign = _props$labelAlign === void 0 ? 'left' : _props$labelAlign,
78
+ _props$disabled = props.disabled,
79
+ disabled = _props$disabled === void 0 ? false : _props$disabled,
80
+ _props$colon = props.colon,
81
+ colon = _props$colon === void 0 ? true : _props$colon,
82
+ _props$requiredMark = props.requiredMark,
83
+ requiredMark = _props$requiredMark === void 0 ? true : _props$requiredMark,
84
+ _props$validateTrigge = props.validateTrigger,
85
+ validateTrigger = _props$validateTrigge === void 0 ? 'onChange' : _props$validateTrigge,
86
+ _prefixCls = props.prefixCls,
87
+ rest = __rest(props, ["children", "className", "submitter", "readonly", "mode", "grid", "colProps", "rowProps", "loading", "request", "params", "initialValues", "onFinish", "onFinishFailed", "onValuesChange", "onReset", "formRef", "omitNil", "size", "labelAlign", "disabled", "colon", "requiredMark", "validateTrigger", "prefixCls"]);
155
88
  var mode = modeProp !== null && modeProp !== void 0 ? modeProp : readonly ? 'read' : 'edit';
156
89
  var _useSafeState = useSafeState(false),
157
90
  _useSafeState2 = _slicedToArray(_useSafeState, 2),
@@ -176,16 +109,57 @@ var ProFormBase = function ProFormBase(props) {
176
109
  var _a;
177
110
  (_a = onFinishRef.current) === null || _a === void 0 ? void 0 : _a.call(onFinishRef, applyPipeline(values));
178
111
  });
179
- // ── Request / params ──
112
+ // ── Core form engine ──
113
+ var _useFormCore = useFormCore({
114
+ initialValues: initialValues,
115
+ onFinish: handleFinish,
116
+ onFinishFailed: onFinishFailed,
117
+ onValuesChange: onValuesChange,
118
+ onReset: onReset,
119
+ size: size,
120
+ labelAlign: labelAlign,
121
+ disabled: disabled || isLoading,
122
+ colon: colon,
123
+ requiredMark: requiredMark,
124
+ validateTrigger: validateTrigger
125
+ }),
126
+ coreContextShape = _useFormCore.coreContextShape,
127
+ coreInstance = _useFormCore.formInstance,
128
+ handleSubmit = _useFormCore.handleSubmit,
129
+ handleReset = _useFormCore.handleReset;
130
+ // ── ProForm instance: superset of FormCoreInstance ──
131
+ var proFormFormInstance = useMemo(function () {
132
+ return Object.assign(Object.assign({}, coreInstance), {
133
+ getFieldsFormatValue: function getFieldsFormatValue() {
134
+ return applyPipeline(coreInstance.getFieldsValue());
135
+ },
136
+ validateFieldsReturnFormatValue: function validateFieldsReturnFormatValue() {
137
+ var isValid = coreInstance.validateFields();
138
+ if (!isValid) return {
139
+ success: false
140
+ };
141
+ return {
142
+ success: true,
143
+ values: applyPipeline(coreInstance.getFieldsValue())
144
+ };
145
+ }
146
+ });
147
+ }, [coreInstance, applyPipeline]);
148
+ // ── Sync to formRef prop ──
149
+ useEffect(function () {
150
+ if (formRef) {
151
+ formRef.current = proFormFormInstance;
152
+ }
153
+ });
154
+ // ── request / params auto-load ──
180
155
  var requestRef = useLatest(request);
181
- var formInstanceRef = useRef(null);
182
156
  var serializedParams = useMemo(function () {
183
157
  return stableSerialize(params);
184
158
  }, [params]);
185
159
  useEffect(function () {
186
160
  var fetchData = function fetchData() {
187
161
  return __awaiter(void 0, void 0, void 0, /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
188
- var _a, requestFn, data;
162
+ var requestFn, data;
189
163
  return _regeneratorRuntime.wrap(function _callee$(_context) {
190
164
  while (1) switch (_context.prev = _context.next) {
191
165
  case 0:
@@ -203,7 +177,7 @@ var ProFormBase = function ProFormBase(props) {
203
177
  case 7:
204
178
  data = _context.sent;
205
179
  if (data && _typeof(data) === 'object') {
206
- (_a = formInstanceRef.current) === null || _a === void 0 ? void 0 : _a.setFieldsValue(data);
180
+ coreInstance.setFieldsValue(data);
207
181
  }
208
182
  case 9:
209
183
  _context.prev = 9;
@@ -219,36 +193,39 @@ var ProFormBase = function ProFormBase(props) {
219
193
  if (requestRef.current) {
220
194
  fetchData();
221
195
  }
222
- }, [serializedParams]);
223
- return _jsx(Form, Object.assign({}, rest, {
224
- ref: function ref(instance) {
225
- // Capture the form ref for request data loading
226
- if (instance) {
227
- formInstanceRef.current = instance;
228
- }
229
- },
230
- className: joinCls(classes(), className),
231
- initialValues: initialValues,
232
- onFinish: handleFinish,
233
- onFinishFailed: onFinishFailed,
234
- onValuesChange: onValuesChange,
235
- onReset: onReset,
236
- size: size,
237
- labelAlign: labelAlign,
238
- disabled: disabled || isLoading,
239
- colon: colon,
240
- requiredMark: requiredMark,
241
- validateTrigger: validateTrigger,
242
- children: _jsx(ProFormInner, Object.assign({}, props, {
196
+ }, [serializedParams, params, requestRef, setRequestLoading, coreInstance]);
197
+ // ── Merged context ──
198
+ var contextValue = useMemo(function () {
199
+ return Object.assign(Object.assign({}, coreContextShape), {
200
+ formInstance: proFormFormInstance,
201
+ readonly: readonly,
243
202
  mode: mode,
244
- isLoading: isLoading,
245
- applyPipeline: applyPipeline,
203
+ grid: grid,
204
+ colProps: colProps !== null && colProps !== void 0 ? colProps : {
205
+ span: 24
206
+ },
246
207
  registerTransform: registerTransform,
247
208
  unregisterTransform: unregisterTransform
209
+ });
210
+ }, [coreContextShape, proFormFormInstance, readonly, mode, grid, colProps, registerTransform, unregisterTransform]);
211
+ var WrapperComponent = grid ? Row : Fragment;
212
+ var wrapperProps = grid ? Object.assign({}, rowProps) : {};
213
+ var submitterNode = submitter !== false && mode !== 'read' ? _jsx(Submitter, Object.assign({}, _typeof(submitter) === 'object' ? submitter : {}, {
214
+ loading: isLoading
215
+ })) : null;
216
+ return _jsx(ProFormContext.Provider, {
217
+ value: contextValue,
218
+ children: _jsxs("form", Object.assign({}, rest, {
219
+ className: formClasses(undefined, joinCls(classes(), className)),
220
+ onSubmit: handleSubmit,
221
+ onReset: handleReset,
222
+ children: [_jsx(WrapperComponent, Object.assign({}, wrapperProps, {
223
+ children: children
224
+ })), submitterNode]
248
225
  }))
249
- }));
226
+ });
250
227
  };
251
228
  ProFormBase.displayName = 'ProForm';
252
229
  export var ProForm = /*#__PURE__*/memo(ProFormBase);
253
230
  export default ProForm;
254
- //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvUHJvRm9ybS9Qcm9Gb3JtLmpzIiwiY29tcG9uZW50cy9zcmMvY29tcG9uZW50cy9Qcm9Gb3JtL1Byb0Zvcm0udHN4Il0sIm5hbWVzIjpbIl9fYXdhaXRlciIsInRoaXNBcmciLCJfYXJndW1lbnRzIiwiUCIsImdlbmVyYXRvciIsImFkb3B0IiwidmFsdWUiLCJyZXNvbHZlIiwiUHJvbWlzZSIsInJlamVjdCIsImZ1bGZpbGxlZCIsInN0ZXAiLCJuZXh0IiwiZSIsInJlamVjdGVkIiwicmVzdWx0IiwiZG9uZSIsInRoZW4iLCJhcHBseSIsIl9fcmVzdCIsInMiLCJ0IiwicCIsIk9iamVjdCIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImluZGV4T2YiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJpIiwibGVuZ3RoIiwicHJvcGVydHlJc0VudW1lcmFibGUiLCJqc3giLCJfanN4IiwianN4cyIsIl9qc3hzIiwibWVtbyIsInVzZUVmZmVjdCIsInVzZU1lbW8iLCJ1c2VSZWYiLCJGcmFnbWVudCIsInVzZUxhdGVzdCIsInVzZVNhZmVTdGF0ZSIsInVzZU1lbW9pemVkRm4iLCJkZWZhdWx0IiwiY2xhc3NuYW1lcyIsImpvaW5DbHMiLCJGb3JtIiwidXNlRm9ybUluc3RhbmNlIiwiUm93IiwiUHJvRm9ybUNvbnRleHQiLCJTdWJtaXR0ZXIiLCJDU1NfUFJFRklYIiwic3RhYmxlU2VyaWFsaXplIiwidHJhbnNmb3JtU3VibWl0VmFsdWVzIiwib21pdE5pbFZhbHVlcyIsImNsYXNzZXMiLCJQcm9Gb3JtSW5uZXIiLCJwcm9wcyIsImNoaWxkcmVuIiwic3VibWl0dGVyIiwiX3Byb3BzJG1vZGUiLCJtb2RlIiwiX3Byb3BzJHJlYWRvbmx5IiwicmVhZG9ubHkiLCJfcHJvcHMkZ3JpZCIsImdyaWQiLCJjb2xQcm9wcyIsInJvd1Byb3BzIiwiZm9ybVJlZiIsImlzTG9hZGluZyIsImFwcGx5UGlwZWxpbmUiLCJyZWdpc3RlclRyYW5zZm9ybSIsInVucmVnaXN0ZXJUcmFuc2Zvcm0iLCJyZXNvbHZlZE1vZGUiLCJmb3JtIiwicHJvRm9ybUZvcm1JbnN0YW5jZSIsInN1Ym1pdCIsInJlc2V0RmllbGRzIiwiZ2V0RmllbGRWYWx1ZSIsImdldEZpZWxkc1ZhbHVlIiwic2V0RmllbGRzVmFsdWUiLCJzZXRGaWVsZFZhbHVlIiwidmFsaWRhdGVGaWVsZHMiLCJnZXRGaWVsZHNGb3JtYXRWYWx1ZSIsInZhbGlkYXRlRmllbGRzUmV0dXJuRm9ybWF0VmFsdWUiLCJpc1ZhbGlkIiwic3VjY2VzcyIsInZhbHVlcyIsImN1cnJlbnQiLCJwcm9Gb3JtQ29udGV4dFZhbHVlIiwiZm9ybUluc3RhbmNlIiwiV3JhcHBlckNvbXBvbmVudCIsIndyYXBwZXJQcm9wcyIsImFzc2lnbiIsInN1Ym1pdHRlck5vZGUiLCJfdHlwZW9mIiwibG9hZGluZyIsIlByb3ZpZGVyIiwiUHJvRm9ybUJhc2UiLCJjbGFzc05hbWUiLCJfcHJvcHMkcmVhZG9ubHkyIiwibW9kZVByb3AiLCJfcHJvcHMkZ3JpZDIiLCJfcHJvcHMkbG9hZGluZyIsInJlcXVlc3QiLCJwYXJhbXMiLCJpbml0aWFsVmFsdWVzIiwib25GaW5pc2giLCJvbkZpbmlzaEZhaWxlZCIsIm9uVmFsdWVzQ2hhbmdlIiwib25SZXNldCIsIl9wcm9wcyRvbWl0TmlsIiwib21pdE5pbCIsInNpemUiLCJsYWJlbEFsaWduIiwiZGlzYWJsZWQiLCJjb2xvbiIsInJlcXVpcmVkTWFyayIsInZhbGlkYXRlVHJpZ2dlciIsInJlc3QiLCJfdXNlU2FmZVN0YXRlIiwiX3VzZVNhZmVTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheSIsInJlcXVlc3RMb2FkaW5nIiwic2V0UmVxdWVzdExvYWRpbmciLCJ0cmFuc2Zvcm1LZXlSZWYiLCJuYW1lIiwiZm4iLCJvbkZpbmlzaFJlZiIsImhhbmRsZUZpbmlzaCIsIl9hIiwicmVxdWVzdFJlZiIsImZvcm1JbnN0YW5jZVJlZiIsInNlcmlhbGl6ZWRQYXJhbXMiLCJmZXRjaERhdGEiLCJfcmVnZW5lcmF0b3JSdW50aW1lIiwibWFyayIsIl9jYWxsZWUiLCJyZXF1ZXN0Rm4iLCJkYXRhIiwid3JhcCIsIl9jYWxsZWUkIiwiX2NvbnRleHQiLCJwcmV2IiwiYWJydXB0Iiwic2VudCIsImZpbmlzaCIsInN0b3AiLCJyZWYiLCJpbnN0YW5jZSIsImRpc3BsYXlOYW1lIiwiUHJvRm9ybSJdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsSUFBSUEsU0FBUyxHQUFJLElBQUksSUFBSSxJQUFJLENBQUNBLFNBQVMsSUFBSyxVQUFVQyxPQUFPLEVBQUVDLFVBQVUsRUFBRUMsQ0FBQyxFQUFFQyxTQUFTLEVBQUU7RUFDckYsU0FBU0MsS0FBS0EsQ0FBQ0MsS0FBSyxFQUFFO0lBQUUsT0FBT0EsS0FBSyxZQUFZSCxDQUFDLEdBQUdHLEtBQUssR0FBRyxJQUFJSCxDQUFDLENBQUMsVUFBVUksT0FBTyxFQUFFO01BQUVBLE9BQU8sQ0FBQ0QsS0FBSyxDQUFDO0lBQUUsQ0FBQyxDQUFDO0VBQUU7RUFDM0csT0FBTyxLQUFLSCxDQUFDLEtBQUtBLENBQUMsR0FBR0ssT0FBTyxDQUFDLEVBQUUsVUFBVUQsT0FBTyxFQUFFRSxNQUFNLEVBQUU7SUFDdkQsU0FBU0MsU0FBU0EsQ0FBQ0osS0FBSyxFQUFFO01BQUUsSUFBSTtRQUFFSyxJQUFJLENBQUNQLFNBQVMsQ0FBQ1EsSUFBSSxDQUFDTixLQUFLLENBQUMsQ0FBQztNQUFFLENBQUMsQ0FBQyxPQUFPTyxDQUFDLEVBQUU7UUFBRUosTUFBTSxDQUFDSSxDQUFDLENBQUM7TUFBRTtJQUFFO0lBQzFGLFNBQVNDLFFBQVFBLENBQUNSLEtBQUssRUFBRTtNQUFFLElBQUk7UUFBRUssSUFBSSxDQUFDUCxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUNFLEtBQUssQ0FBQyxDQUFDO01BQUUsQ0FBQyxDQUFDLE9BQU9PLENBQUMsRUFBRTtRQUFFSixNQUFNLENBQUNJLENBQUMsQ0FBQztNQUFFO0lBQUU7SUFDN0YsU0FBU0YsSUFBSUEsQ0FBQ0ksTUFBTSxFQUFFO01BQUVBLE1B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QkMsUUFBUSxFQUFFc0IsWUFBWTtJQUN0QnJCLGNBQWMsRUFBRUEsY0FBYztJQUM5QkMsY0FBYyxFQUFFQSxjQUFjO0lBQzlCQyxPQUFPLEVBQUVBLE9BQU87SUFDaEJHLElBQUksRUFBRUEsSUFBSTtJQUNWQyxVQUFVLEVBQUVBLFVBQVU7SUFDdEJDLFFBQVEsRUFBRUEsUUFBUSxJQUFJOUMsU0FBUztJQUMvQitDLEtBQUssRUFBRUEsS0FBSztJQUNaQyxZQUFZLEVBQUVBLFlBQVk7SUFDMUJDLGVBQWUsRUFBRUEsZUFBZTtJQUFBNUQsUUFBQSxFQUVoQzFCLElBQUEsQ0FBQ3dCLFlBQVksRUFBQWxDLE1BQUEsQ0FBQXVFLE1BQUEsQ0FBQSxDQUFBLENBQUEsRUFDUHBDLEtBQUssRUFBQTtNQUNUSSxJQUFJLEVBQUVBLElBQUk7TUFDVlEsU0FBUyxFQUFFQSxTQUFTO01BQ3BCQyxhQUFhLEVBQUVBLGFBQWE7TUFDNUJDLGlCQUFpQixFQUFFQSxpQkFBaUI7TUFDcENDLG1CQUFtQixFQUFFQTtJQUFtQixDQUFBLENBQUE7RUFDeEMsQ0FBQSxDQUFBLENBQ0c7QUFFWCxDQUFDO0FBRUQwQixXQUFXLENBQUNvRCxXQUFXLEdBQUcsU0FBUztBQUVuQyxPQUFPLElBQU1DLE9BQU8sZ0JBQUdwSCxJQUFJLENBQUMrRCxXQUFXLENBQUM7QUFFeEMsZUFBZXFELE9BQU8iLCJmaWxlIjoiY29tcG9uZW50cy9Qcm9Gb3JtL1Byb0Zvcm0uanMiLCJzb3VyY2VzQ29udGVudCI6WyJ2YXIgX19hd2FpdGVyID0gKHRoaXMgJiYgdGhpcy5fX2F3YWl0ZXIpIHx8IGZ1bmN0aW9uICh0aGlzQXJnLCBfYXJndW1lbnRzLCBQLCBnZW5lcmF0b3IpIHtcbiAgICBmdW5jdGlvbiBhZG9wdCh2YWx1ZSkgeyByZXR1cm4gdmFsdWUgaW5zdGFuY2VvZiBQID8gdmFsdWUgOiBuZXcgUChmdW5jdGlvbiAocmVzb2x2ZSkgeyByZXNvbHZlKHZhbHVlKTsgfSk7IH1cbiAgICByZXR1cm4gbmV3IChQIHx8IChQID0gUHJvbWlzZSkpKGZ1bmN0aW9uIChyZXNvbHZlLCByZWplY3QpIHtcbiAgICAgICAgZnVuY3Rpb24gZnVsZmlsbGVkKHZhbHVlKSB7IHRyeSB7IHN0ZXAoZ2VuZXJhdG9yLm5leHQodmFsdWUpKTsgfSBjYXRjaCAoZSkgeyByZWplY3QoZSk7IH0gfVxuICAgICAgICBmdW5jdGlvbiByZWplY3RlZCh2YWx1ZSkgeyB0cnkgeyBzdGVwKGdlbmVyYXRvcltcInRocm93XCJdKHZhbHVlKSk7IH0gY2F0Y2ggKGUpIHsgcmVqZWN0KGUpOyB9IH1cbiAgICAgICAgZnVuY3Rpb24gc3RlcChyZXN1bHQpIHsgcmVzdWx0LmRvbmUgPyByZXNvbHZlKHJlc3VsdC52YWx1ZSkgOiBhZG9wdChyZXN1bHQudmFsdWUpLnRoZW4oZnVsZmlsbGVkLCByZWplY3RlZCk7IH1cbiAgICAgICAgc3RlcCgoZ2VuZXJhdG9yID0gZ2VuZXJhdG9yLmFwcGx5KHRoaXNBcmcsIF9hcmd1bWVudHMgfHwgW10pKS5uZXh0KCkpO1xuICAgIH0pO1xufTtcbnZhciBfX3Jlc3QgPSAodGhpcyAmJiB0aGlzLl9fcmVzdCkgfHwgZnVuY3Rpb24gKHMsIGUpIHtcbiAgICB2YXIgdCA9IHt9O1xuICAgIGZvciAodmFyIHAgaW4gcykgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChzLCBwKSAmJiBlLmluZGV4T2YocCkgPCAwKVxuICAgICAgICB0W3BdID0gc1twXTtcbiAgICBpZiAocyAhPSBudWxsICYmIHR5cGVvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzID09PSBcImZ1bmN0aW9uXCIpXG4gICAgICAgIGZvciAodmFyIGkgPSAwLCBwID0gT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyhzKTsgaSA8IHAubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGlmIChlLmluZGV4T2YocFtpXSkgPCAwICYmIE9iamVjdC5wcm90b3R5cGUucHJvcGVydHlJc0VudW1lcmFibGUuY2FsbChzLCBwW2ldKSlcbiAgICAgICAgICAgICAgICB0W3BbaV1dID0gc1twW2ldXTtcbiAgICAgICAgfVxuICAgIHJldHVybiB0O1xufTtcbmltcG9ydCB7IGpzeCBhcyBfanN4LCBqc3hzIGFzIF9qc3hzIH0gZnJvbSBcInJlYWN0L2pzeC1ydW50aW1lXCI7XG5pbXBvcnQgeyBtZW1vLCB1c2VFZmZlY3QsIHVzZU1lbW8sIHVzZVJlZiwgRnJhZ21lbnQgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyB1c2VMYXRlc3QsIHVzZVNhZmVTdGF0ZSwgdXNlTWVtb2l6ZWRGbiB9IGZyb20gJ0AxbW9uZXkvaG9va3MnO1xuaW1wb3J0IHsgZGVmYXVsdCBhcyBjbGFzc25hbWVzLCBqb2luQ2xzIH0gZnJvbSAnLi4vLi4vdXRpbHMvY2xhc3NuYW1lcyc7XG5pbXBvcnQgeyBGb3JtIH0gZnJvbSAnLi4vRm9ybSc7XG5pbXBvcnQgeyB1c2VGb3JtSW5zdGFuY2UgfSBmcm9tICcuLi9Gb3JtL2NvbnRleHQnO1xuaW1wb3J0IHsgUm93IH0gZnJvbSAnLi4vR3JpZCc7XG5pbXBvcnQgeyBQcm9Gb3JtQ29udGV4dCB9IGZyb20gJy4vY29udGV4dCc7XG5pbXBvcnQgeyBTdWJtaXR0ZXIgfSBmcm9tICcuL1N1Ym1pdHRlcic7XG5pbXBvcnQgeyBDU1NfUFJFRklYIH0gZnJvbSAnLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgc3RhYmxlU2VyaWFsaXplLCB0cmFuc2Zvcm1TdWJtaXRWYWx1ZXMsIG9taXROaWxWYWx1ZXMgfSBmcm9tICcuL3V0aWxzJztcbmNvbnN0IGNsYXNzZXMgPSBjbGFzc25hbWVzKENTU19QUkVGSVgpO1xuY29uc3QgUHJvRm9ybUlubmVyID0gKHByb3BzKSA9PiB7XG4gICAgY29uc3QgeyBjaGlsZHJlbiwgc3VibWl0dGVyLCBtb2RlID0gJ2VkaXQnLCByZWFkb25seSA9IGZhbHNlLCBncmlkID0gZmFsc2UsIGNvbFByb3BzLCByb3dQcm9wcywgZm9ybVJlZiwgaXNMb2FkaW5nLCBhcHBseVBpcGVsaW5lLCByZWdpc3RlclRyYW5zZm9ybSwgdW5yZWdpc3RlclRyYW5zZm9ybSwgfSA9IHByb3BzO1xuICAgIGNvbnN0IHJlc29sdmVkTW9kZSA9IG1vZGUgIT09IG51bGwgJiYgbW9kZSAhPT0gdm9pZCAwID8gbW9kZSA6IChyZWFkb25seSA/ICdyZWFkJyA6ICdlZGl0Jyk7XG4gICAgY29uc3QgZm9ybSA9IHVzZUZvcm1JbnN0YW5jZSgpO1xuICAgIC8vIEJ1aWxkIFByb0Zvcm1Gb3JtSW5zdGFuY2UgYnkgZXh0ZW5kaW5nIHRoZSByZWFsIGZvcm0gaW5zdGFuY2Ugd2l0aCBmb3JtYXQgbWV0aG9kc1xuICAgIGNvbnN0IHByb0Zvcm1Gb3JtSW5zdGFuY2UgPSB1c2VNZW1vKCgpID0+ICh7XG4gICAgICAgIHN1Ym1pdDogZm9ybS5zdWJtaXQsXG4gICAgICAgIHJlc2V0RmllbGRzOiBmb3JtLnJlc2V0RmllbGRzLFxuICAgICAgICBnZXRGaWVsZFZhbHVlOiBmb3JtLmdldEZpZWxkVmFsdWUsXG4gICAgICAgIGdldEZpZWxkc1ZhbHVlOiBmb3JtLmdldEZpZWxkc1ZhbHVlLFxuICAgICAgICBzZXRGaWVsZHNWYWx1ZTogZm9ybS5zZXRGaWVsZHNWYWx1ZSxcbiAgICAgICAgc2V0RmllbGRWYWx1ZTogZm9ybS5zZXRGaWVsZFZhbHVlLFxuICAgICAgICB2YWxpZGF0ZUZpZWxkczogZm9ybS52YWxpZGF0ZUZpZWxkcyxcbiAgICAgICAgZ2V0RmllbGRzRm9ybWF0VmFsdWU6ICgpID0+IGFwcGx5UGlwZWxpbmUoZm9ybS5nZXRGaWVsZHNWYWx1ZSgpKSxcbiAgICAgICAgdmFsaWRhdGVGaWVsZHNSZXR1cm5Gb3JtYXRWYWx1ZTogKCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgaXNWYWxpZCA9IGZvcm0udmFsaWRhdGVGaWVsZHMoKTtcbiAgICAgICAgICAgIGlmICghaXNWYWxpZClcbiAgICAgICAgICAgICAgICByZXR1cm4geyBzdWNjZXNzOiBmYWxzZSB9O1xuICAgICAgICAgICAgcmV0dXJuIHsgc3VjY2VzczogdHJ1ZSwgdmFsdWVzOiBhcHBseVBpcGVsaW5lKGZvcm0uZ2V0RmllbGRzVmFsdWUoKSkgfTtcbiAgICAgICAgfSxcbiAgICB9KSwgW2Zvcm0sIGFwcGx5UGlwZWxpbmVdKTtcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICBpZiAoZm9ybVJlZikge1xuICAgICAgICAgICAgZm9ybVJlZi5jdXJyZW50ID0gcHJvRm9ybUZvcm1JbnN0YW5jZTtcbiAgICAgICAgfVxuICAgIH0pO1xuICAgIGNvbnN0IHByb0Zvcm1Db250ZXh0VmFsdWUgPSB1c2VNZW1vKCgpID0+ICh7IHJlYWRvbmx5LCBtb2RlOiByZXNvbHZlZE1vZGUsIGdyaWQsIGNvbFByb3BzLCByZWdpc3RlclRyYW5zZm9ybSwgdW5yZWdpc3RlclRyYW5zZm9ybSwgZm9ybUluc3RhbmNlOiBwcm9Gb3JtRm9ybUluc3RhbmNlIH0pLCBbcmVhZG9ubHksIHJlc29sdmVkTW9kZSwgZ3JpZCwgY29sUHJvcHMsIHJlZ2lzdGVyVHJhbnNmb3JtLCB1bnJlZ2lzdGVyVHJhbnNmb3JtLCBwcm9Gb3JtRm9ybUluc3RhbmNlXSk7XG4gICAgY29uc3QgV3JhcHBlckNvbXBvbmVudCA9IGdyaWQgPyBSb3cgOiBGcmFnbWVudDtcbiAgICBjb25zdCB3cmFwcGVyUHJvcHMgPSBncmlkID8gT2JqZWN0LmFzc2lnbih7fSwgcm93UHJvcHMpIDoge307XG4gICAgY29uc3Qgc3VibWl0dGVyTm9kZSA9IHN1Ym1pdHRlciAhPT0gZmFsc2UgJiYgcmVzb2x2ZWRNb2RlICE9PSAncmVhZCcgPyAoX2pzeChTdWJtaXR0ZXIsIE9iamVjdC5hc3NpZ24oe30sICh0eXBlb2Ygc3VibWl0dGVyID09PSAnb2JqZWN0JyA/IHN1Ym1pdHRlciA6IHt9KSwgeyBsb2FkaW5nOiBpc0xvYWRpbmcgfSkpKSA6IG51bGw7XG4gICAgcmV0dXJuIChfanN4cyhQcm9Gb3JtQ29udGV4dC5Qcm92aWRlciwgeyB2YWx1ZTogcHJvRm9ybUNvbnRleHRWYWx1ZSwgY2hpbGRyZW46IFtfanN4KFdyYXBwZXJDb21wb25lbnQsIE9iamVjdC5hc3NpZ24oe30sIHdyYXBwZXJQcm9wcywgeyBjaGlsZHJlbjogY2hpbGRyZW4gfSkpLCBzdWJtaXR0ZXJOb2RlXSB9KSk7XG59O1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBPdXRlciBjb21wb25lbnQg4oCUIHJlbmRlcnMgPEZvcm0+IGFuZCBzZXRzIHVwIHRyYW5zZm9ybXMgLyByZXF1ZXN0XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbmNvbnN0IFByb0Zvcm1CYXNlID0gKHByb3BzKSA9PiB7XG4gICAgY29uc3QgeyBjaGlsZHJlbiwgY2xhc3NOYW1lLCBzdWJtaXR0ZXIsIHJlYWRvbmx5ID0gZmFsc2UsIG1vZGU6IG1vZGVQcm9wLCBncmlkID0gZmFsc2UsIGNvbFByb3BzLCByb3dQcm9wcywgbG9hZGluZyA9IGZhbHNlLCByZXF1ZXN0LCBwYXJhbXMsIGluaXRpYWxWYWx1ZXMsIG9uRmluaXNoLCBvbkZpbmlzaEZhaWxlZCwgb25WYWx1ZXNDaGFuZ2UsIG9uUmVzZXQsIGZvcm1SZWYsIG9taXROaWwgPSB0cnVlLCBzaXplLCBsYWJlbEFsaWduLCBkaXNhYmxlZCwgY29sb24sIHJlcXVpcmVkTWFyaywgdmFsaWRhdGVUcmlnZ2VyIH0gPSBwcm9wcywgcmVzdCA9IF9fcmVzdChwcm9wcywgW1wiY2hpbGRyZW5cIiwgXCJjbGFzc05hbWVcIiwgXCJzdWJtaXR0ZXJcIiwgXCJyZWFkb25seVwiLCBcIm1vZGVcIiwgXCJncmlkXCIsIFwiY29sUHJvcHNcIiwgXCJyb3dQcm9wc1wiLCBcImxvYWRpbmdcIiwgXCJyZXF1ZXN0XCIsIFwicGFyYW1zXCIsIFwiaW5pdGlhbFZhbHVlc1wiLCBcIm9uRmluaXNoXCIsIFwib25GaW5pc2hGYWlsZWRcIiwgXCJvblZhbHVlc0NoYW5nZVwiLCBcIm9uUmVzZXRcIiwgXCJmb3JtUmVmXCIsIFwib21pdE5pbFwiLCBcInNpemVcIiwgXCJsYWJlbEFsaWduXCIsIFwiZGlzYWJsZWRcIiwgXCJjb2xvblwiLCBcInJlcXVpcmVkTWFya1wiLCBcInZhbGlkYXRlVHJpZ2dlclwiXSk7XG4gICAgY29uc3QgbW9kZSA9IG1vZGVQcm9wICE9PSBudWxsICYmIG1vZGVQcm9wICE9PSB2b2lkIDAgPyBtb2RlUHJvcCA6IChyZWFkb25seSA/ICdyZWFkJyA6ICdlZGl0Jyk7XG4gICAgY29uc3QgW3JlcXVlc3RMb2FkaW5nLCBzZXRSZXF1ZXN0TG9hZGluZ10gPSB1c2VTYWZlU3RhdGUoZmFsc2UpO1xuICAgIGNvbnN0IGlzTG9hZGluZyA9IGxvYWRpbmcgfHwgcmVxdWVzdExvYWRpbmc7XG4gICAgLy8g4pSA4pSAIFRyYW5zZm9ybSByZWdpc3RyeSDilIDilIBcbiAgICBjb25zdCB0cmFuc2Zvcm1LZXlSZWYgPSB1c2VSZWYoe30pO1xuICAgIGNvbnN0IHJlZ2lzdGVyVHJhbnNmb3JtID0gdXNlTWVtb2l6ZWRGbigobmFtZSwgZm4pID0+IHtcbiAgICAgICAgdHJhbnNmb3JtS2V5UmVmLmN1cnJlbnRbbmFtZV0gPSBmbjtcbiAgICB9KTtcbiAgICBjb25zdCB1bnJlZ2lzdGVyVHJhbnNmb3JtID0gdXNlTWVtb2l6ZWRGbigobmFtZSkgPT4ge1xuICAgICAgICBkZWxldGUgdHJhbnNmb3JtS2V5UmVmLmN1cnJlbnRbbmFtZV07XG4gICAgfSk7XG4gICAgY29uc3Qgb25GaW5pc2hSZWYgPSB1c2VMYXRlc3Qob25GaW5pc2gpO1xuICAgIGNvbnN0IGFwcGx5UGlwZWxpbmUgPSB1c2VNZW1vaXplZEZuKCh2YWx1ZXMpID0+IHtcbiAgICAgICAgbGV0IHJlc3VsdCA9IHRyYW5zZm9ybVN1Ym1pdFZhbHVlcyh2YWx1ZXMsIHRyYW5zZm9ybUtleVJlZi5jdXJyZW50KTtcbiAgICAgICAgaWYgKG9taXROaWwpXG4gICAgICAgICAgICByZXN1bHQgPSBvbWl0TmlsVmFsdWVzKHJlc3VsdCk7XG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfSk7XG4gICAgY29uc3QgaGFuZGxlRmluaXNoID0gdXNlTWVtb2l6ZWRGbigodmFsdWVzKSA9PiB7XG4gICAgICAgIHZhciBfYTtcbiAgICAgICAgKF9hID0gb25GaW5pc2hSZWYuY3VycmVudCkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmNhbGwob25GaW5pc2hSZWYsIGFwcGx5UGlwZWxpbmUodmFsdWVzKSk7XG4gICAgfSk7XG4gICAgLy8g4pSA4pSAIFJlcXVlc3QgLyBwYXJhbXMg4pSA4pSAXG4gICAgY29uc3QgcmVxdWVzdFJlZiA9IHVzZUxhdGVzdChyZXF1ZXN0KTtcbiAgICBjb25zdCBmb3JtSW5zdGFuY2VSZWYgPSB1c2VSZWYobnVsbCk7XG4gICAgY29uc3Qgc2VyaWFsaXplZFBhcmFtcyA9IHVzZU1lbW8oKCkgPT4gc3RhYmxlU2VyaWFsaXplKHBhcmFtcyksIFtwYXJhbXNdKTtcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICBjb25zdCBmZXRjaERhdGEgPSAoKSA9PiBfX2F3YWl0ZXIodm9pZCAwLCB2b2lkIDAsIHZvaWQgMCwgZnVuY3Rpb24qICgpIHtcbiAgICAgICAgICAgIHZhciBfYTtcbiAgICAgICAgICAgIGNvbnN0IHJlcXVlc3RGbiA9IHJlcXVlc3RSZWYuY3VycmVudDtcbiAgICAgICAgICAgIGlmICghcmVxdWVzdEZuKVxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIHNldFJlcXVlc3RMb2FkaW5nKHRydWUpO1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBjb25zdCBkYXRhID0geWllbGQgcmVxdWVzdEZuKHBhcmFtcyk7XG4gICAgICAgICAgICAgICAgaWYgKGRhdGEgJiYgdHlwZW9mIGRhdGEgPT09ICdvYmplY3QnKSB7XG4gICAgICAgICAgICAgICAgICAgIChfYSA9IGZvcm1JbnN0YW5jZVJlZi5jdXJyZW50KSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2Euc2V0RmllbGRzVmFsdWUoZGF0YSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZmluYWxseSB7XG4gICAgICAgICAgICAgICAgc2V0UmVxdWVzdExvYWRpbmcoZmFsc2UpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgaWYgKHJlcXVlc3RSZWYuY3VycmVudCkge1xuICAgICAgICAgICAgZmV0Y2hEYXRhKCk7XG4gICAgICAgIH1cbiAgICB9LCBbc2VyaWFsaXplZFBhcmFtc10pO1xuICAgIHJldHVybiAoX2pzeChGb3JtLCBPYmplY3QuYXNzaWduKHt9LCByZXN0LCB7IHJlZjogKGluc3RhbmNlKSA9PiB7XG4gICAgICAgICAgICAvLyBDYXB0dXJlIHRoZSBmb3JtIHJlZiBmb3IgcmVxdWVzdCBkYXRhIGxvYWRpbmdcbiAgICAgICAgICAgIGlmIChpbnN0YW5jZSkge1xuICAgICAgICAgICAgICAgIGZvcm1JbnN0YW5jZVJlZi5jdXJyZW50ID0gaW5zdGFuY2U7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0sIGNsYXNzTmFtZTogam9pbkNscyhjbGFzc2VzKCksIGNsYXNzTmFtZSksIGluaXRpYWxWYWx1ZXM6IGluaXRpYWxWYWx1ZXMsIG9uRmluaXNoOiBoYW5kbGVGaW5pc2gsIG9uRmluaXNoRmFpbGVkOiBvbkZpbmlzaEZhaWxlZCwgb25WYWx1ZXNDaGFuZ2U6IG9uVmFsdWVzQ2hhbmdlLCBvblJlc2V0OiBvblJlc2V0LCBzaXplOiBzaXplLCBsYWJlbEFsaWduOiBsYWJlbEFsaWduLCBkaXNhYmxlZDogZGlzYWJsZWQgfHwgaXNMb2FkaW5nLCBjb2xvbjogY29sb24sIHJlcXVpcmVkTWFyazogcmVxdWlyZWRNYXJrLCB2YWxpZGF0ZVRyaWdnZXI6IHZhbGlkYXRlVHJpZ2dlciwgY2hpbGRyZW46IF9qc3goUHJvRm9ybUlubmVyLCBPYmplY3QuYXNzaWduKHt9LCBwcm9wcywgeyBtb2RlOiBtb2RlLCBpc0xvYWRpbmc6IGlzTG9hZGluZywgYXBwbHlQaXBlbGluZTogYXBwbHlQaXBlbGluZSwgcmVnaXN0ZXJUcmFuc2Zvcm06IHJlZ2lzdGVyVHJhbnNmb3JtLCB1bnJlZ2lzdGVyVHJhbnNmb3JtOiB1bnJlZ2lzdGVyVHJhbnNmb3JtIH0pKSB9KSkpO1xufTtcblByb0Zvcm1CYXNlLmRpc3BsYXlOYW1lID0gJ1Byb0Zvcm0nO1xuZXhwb3J0IGNvbnN0IFByb0Zvcm0gPSBtZW1vKFByb0Zvcm1CYXNlKTtcbmV4cG9ydCBkZWZhdWx0IFByb0Zvcm07IixudWxsXSwic291cmNlUm9vdCI6Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYyJ9
231
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvUHJvRm9ybS9Qcm9Gb3JtLmpzIiwiY29tcG9uZW50cy9zcmMvY29tcG9uZW50cy9Qcm9Gb3JtL1Byb0Zvcm0udHN4Il0sIm5hbWVzIjpbIl9fYXdhaXRlciIsInRoaXNBcmciLCJfYXJndW1lbnRzIiwiUCIsImdlbmVyYXRvciIsImFkb3B0IiwidmFsdWUiLCJyZXNvbHZlIiwiUHJvbWlzZSIsInJlamVjdCIsImZ1bGZpbGxlZCIsInN0ZXAiLCJuZXh0IiwiZSIsInJlamVjdGVkIiwicmVzdWx0IiwiZG9uZSIsInRoZW4iLCJhcHBseSIsIl9fcmVzdCIsInMiLCJ0IiwicCIsIk9iamVjdCIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImluZGV4T2YiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJpIiwibGVuZ3RoIiwicHJvcGVydHlJc0VudW1lcmFibGUiLCJqc3giLCJfanN4IiwianN4cyIsIl9qc3hzIiwibWVtbyIsInVzZUVmZmVjdCIsInVzZU1lbW8iLCJ1c2VSZWYiLCJGcmFnbWVudCIsInVzZUxhdGVzdCIsInVzZVNhZmVTdGF0ZSIsInVzZU1lbW9pemVkRm4iLCJkZWZhdWx0IiwiY2xhc3NuYW1lcyIsImpvaW5DbHMiLCJSb3ciLCJ1c2VGb3JtQ29yZSIsIlByb0Zvcm1Db250ZXh0IiwiU3VibWl0dGVyIiwiQ1NTX1BSRUZJWCIsInN0YWJsZVNlcmlhbGl6ZSIsInRyYW5zZm9ybVN1Ym1pdFZhbHVlcyIsIm9taXROaWxWYWx1ZXMiLCJjbGFzc2VzIiwiZm9ybUNsYXNzZXMiLCJQcm9Gb3JtQmFzZSIsInByb3BzIiwiY2hpbGRyZW4iLCJjbGFzc05hbWUiLCJzdWJtaXR0ZXIiLCJfcHJvcHMkcmVhZG9ubHkiLCJyZWFkb25seSIsIm1vZGVQcm9wIiwibW9kZSIsIl9wcm9wcyRncmlkIiwiZ3JpZCIsImNvbFByb3BzIiwicm93UHJvcHMiLCJfcHJvcHMkbG9hZGluZyIsImxvYWRpbmciLCJyZXF1ZXN0IiwicGFyYW1zIiwiaW5pdGlhbFZhbHVlcyIsIm9uRmluaXNoIiwib25GaW5pc2hGYWlsZWQiLCJvblZhbHVlc0NoYW5nZSIsIm9uUmVzZXQiLCJmb3JtUmVmIiwiX3Byb3BzJG9taXROaWwiLCJvbWl0TmlsIiwiX3Byb3BzJHNpemUiLCJzaXplIiwiX3Byb3BzJGxhYmVsQWxpZ24iLCJsYWJlbEFsaWduIiwiX3Byb3BzJGRpc2FibGVkIiwiZGlzYWJsZWQiLCJfcHJvcHMkY29sb24iLCJjb2xvbiIsIl9wcm9wcyRyZXF1aXJlZE1hcmsiLCJyZXF1aXJlZE1hcmsiLCJfcHJvcHMkdmFsaWRhdGVUcmlnZ2UiLCJ2YWxpZGF0ZVRyaWdnZXIiLCJfcHJlZml4Q2xzIiwicHJlZml4Q2xzIiwicmVzdCIsIl91c2VTYWZlU3RhdGUiLCJfdXNlU2FmZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5IiwicmVxdWVzdExvYWRpbmciLCJzZXRSZXF1ZXN0TG9hZGluZyIsImlzTG9hZGluZyIsInRyYW5zZm9ybUtleVJlZiIsInJlZ2lzdGVyVHJhbnNmb3JtIiwibmFtZSIsImZuIiwiY3VycmVudCIsInVucmVnaXN0ZXJUcmFuc2Zvcm0iLCJvbkZpbmlzaFJlZiIsImFwcGx5UGlwZWxpbmUiLCJ2YWx1ZXMiLCJoYW5kbGVGaW5pc2giLCJfYSIsIl91c2VGb3JtQ29yZSIsImNvcmVDb250ZXh0U2hhcGUiLCJjb3JlSW5zdGFuY2UiLCJmb3JtSW5zdGFuY2UiLCJoYW5kbGVTdWJtaXQiLCJoYW5kbGVSZXNldCIsInByb0Zvcm1Gb3JtSW5zdGFuY2UiLCJhc3NpZ24iLCJnZXRGaWVsZHNGb3JtYXRWYWx1ZSIsImdldEZpZWxkc1ZhbHVlIiwidmFsaWRhdGVGaWVsZHNSZXR1cm5Gb3JtYXRWYWx1ZSIsImlzVmFsaWQiLCJ2YWxpZGF0ZUZpZWxkcyIsInN1Y2Nlc3MiLCJyZXF1ZXN0UmVmIiwic2VyaWFsaXplZFBhcmFtcyIsImZldGNoRGF0YSIsIl9yZWdlbmVyYXRvclJ1bnRpbWUiLCJtYXJrIiwiX2NhbGxlZSIsInJlcXVlc3RGbiIsImRhdGEiLCJ3cmFwIiwiX2NhbGxlZSQiLCJfY29udGV4dCIsInByZXYiLCJhYnJ1cHQiLCJzZW50IiwiX3R5cGVvZiIsInNldEZpZWxkc1ZhbHVlIiwiZmluaXNoIiwic3RvcCIsImNvbnRleHRWYWx1ZSIsInNwYW4iLCJXcmFwcGVyQ29tcG9uZW50Iiwid3JhcHBlclByb3BzIiwic3VibWl0dGVyTm9kZSIsIlByb3ZpZGVyIiwidW5kZWZpbmVkIiwib25TdWJtaXQiLCJkaXNwbGF5TmFtZSIsIlByb0Zvcm0iXSwibWFwcGluZ3MiOiI7OztBQUFBLElBQUlBLFNBQVMsR0FBSSxJQUFJLElBQUksSUFBSSxDQUFDQSxTQUFTLElBQUssVUFBVUMsT0FBTyxFQUFFQyxVQUFVLEVBQUVDLENBQUMsRUFBRUMsU0FBUyxFQUFFO0VBQ3JGLFNBQVNDLEtBQUtBLENBQUNDLEtBQUssRUFBRTtJQUFFLE9BQU9BLEtBQUssWUFBWUgsQ0FBQyxHQUFHRyxLQUFLLEdBQUcsSUFBSUgsQ0FBQyxDQUFDLFVBQVVJLE9BQU8sRUFBRTtNQUFFQSxPQUFPLENBQUNELEtBQUssQ0FBQztJQUFFLENBQUMsQ0FBQztFQUFFO0VBQzNHLE9BQU8sS0FBS0gsQ0FBQyxLQUFLQSxDQUFDLEdBQUdLLE9BQU8sQ0FBQyxFQUFFLFVBQVVELE9BQU8sRUFBRUUsTUFBTSxFQUFFO0lBQ3ZELFNBQVNDLFNBQVNBLENBQUNKLEtBQUssRUFBRTtNQUFFLElBQUk7UUFBRUssSUFBSSxDQUFDUCxTQUFTLENBQUNRLElBQUksQ0FBQ04sS0FBSyxDQUFDLENBQUM7TUFBRSxDQUFDLENBQUMsT0FBT08sQ0FBQyxFQUFFO1FBQUVKLE1BQU0sQ0FBQ0ksQ0FBQyxDQUFDO01BQUU7SUFBRTtJQUMxRixTQUFTQyxRQUFRQSxDQUFDUixLQUFLLEVBQUU7TUFBRSxJQUFJO1FBQUVLLElBQUksQ0FBQ1AsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDRSxLQUFLLENBQUMsQ0FBQztNQUFFLENBQUMsQ0FBQyxPQUFPTyxDQUFDLEVBQUU7UUFBRUosTUFBTSxD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R3ZILElBQUksQ0FBQ3FCLFdBQVcsQ0FBQztBQUV4QyxlQUFla0csT0FBTyIsImZpbGUiOiJjb21wb25lbnRzL1Byb0Zvcm0vUHJvRm9ybS5qcyIsInNvdXJjZXNDb250ZW50IjpbInZhciBfX2F3YWl0ZXIgPSAodGhpcyAmJiB0aGlzLl9fYXdhaXRlcikgfHwgZnVuY3Rpb24gKHRoaXNBcmcsIF9hcmd1bWVudHMsIFAsIGdlbmVyYXRvcikge1xuICAgIGZ1bmN0aW9uIGFkb3B0KHZhbHVlKSB7IHJldHVybiB2YWx1ZSBpbnN0YW5jZW9mIFAgPyB2YWx1ZSA6IG5ldyBQKGZ1bmN0aW9uIChyZXNvbHZlKSB7IHJlc29sdmUodmFsdWUpOyB9KTsgfVxuICAgIHJldHVybiBuZXcgKFAgfHwgKFAgPSBQcm9taXNlKSkoZnVuY3Rpb24gKHJlc29sdmUsIHJlamVjdCkge1xuICAgICAgICBmdW5jdGlvbiBmdWxmaWxsZWQodmFsdWUpIHsgdHJ5IHsgc3RlcChnZW5lcmF0b3IubmV4dCh2YWx1ZSkpOyB9IGNhdGNoIChlKSB7IHJlamVjdChlKTsgfSB9XG4gICAgICAgIGZ1bmN0aW9uIHJlamVjdGVkKHZhbHVlKSB7IHRyeSB7IHN0ZXAoZ2VuZXJhdG9yW1widGhyb3dcIl0odmFsdWUpKTsgfSBjYXRjaCAoZSkgeyByZWplY3QoZSk7IH0gfVxuICAgICAgICBmdW5jdGlvbiBzdGVwKHJlc3VsdCkgeyByZXN1bHQuZG9uZSA/IHJlc29sdmUocmVzdWx0LnZhbHVlKSA6IGFkb3B0KHJlc3VsdC52YWx1ZSkudGhlbihmdWxmaWxsZWQsIHJlamVjdGVkKTsgfVxuICAgICAgICBzdGVwKChnZW5lcmF0b3IgPSBnZW5lcmF0b3IuYXBwbHkodGhpc0FyZywgX2FyZ3VtZW50cyB8fCBbXSkpLm5leHQoKSk7XG4gICAgfSk7XG59O1xudmFyIF9fcmVzdCA9ICh0aGlzICYmIHRoaXMuX19yZXN0KSB8fCBmdW5jdGlvbiAocywgZSkge1xuICAgIHZhciB0ID0ge307XG4gICAgZm9yICh2YXIgcCBpbiBzKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHMsIHApICYmIGUuaW5kZXhPZihwKSA8IDApXG4gICAgICAgIHRbcF0gPSBzW3BdO1xuICAgIGlmIChzICE9IG51bGwgJiYgdHlwZW9mIE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMgPT09IFwiZnVuY3Rpb25cIilcbiAgICAgICAgZm9yICh2YXIgaSA9IDAsIHAgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKHMpOyBpIDwgcC5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgaWYgKGUuaW5kZXhPZihwW2ldKSA8IDAgJiYgT2JqZWN0LnByb3RvdHlwZS5wcm9wZXJ0eUlzRW51bWVyYWJsZS5jYWxsKHMsIHBbaV0pKVxuICAgICAgICAgICAgICAgIHRbcFtpXV0gPSBzW3BbaV1dO1xuICAgICAgICB9XG4gICAgcmV0dXJuIHQ7XG59O1xuaW1wb3J0IHsganN4IGFzIF9qc3gsIGpzeHMgYXMgX2pzeHMgfSBmcm9tIFwicmVhY3QvanN4LXJ1bnRpbWVcIjtcbmltcG9ydCB7IG1lbW8sIHVzZUVmZmVjdCwgdXNlTWVtbywgdXNlUmVmLCBGcmFnbWVudCB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IHVzZUxhdGVzdCwgdXNlU2FmZVN0YXRlLCB1c2VNZW1vaXplZEZuIH0gZnJvbSAnQDFtb25leS9ob29rcyc7XG5pbXBvcnQgeyBkZWZhdWx0IGFzIGNsYXNzbmFtZXMsIGpvaW5DbHMgfSBmcm9tICcuLi8uLi91dGlscy9jbGFzc25hbWVzJztcbmltcG9ydCB7IFJvdyB9IGZyb20gJy4uL0dyaWQnO1xuaW1wb3J0IHsgdXNlRm9ybUNvcmUgfSBmcm9tICcuL2NvcmUvaG9va3MvdXNlRm9ybUNvcmUnO1xuaW1wb3J0IHsgUHJvRm9ybUNvbnRleHQgfSBmcm9tICcuL2NvbnRleHQnO1xuaW1wb3J0IHsgU3VibWl0dGVyIH0gZnJvbSAnLi9TdWJtaXR0ZXInO1xuaW1wb3J0IHsgQ1NTX1BSRUZJWCB9IGZyb20gJy4vY29uc3RhbnRzJztcbmltcG9ydCB7IHN0YWJsZVNlcmlhbGl6ZSwgdHJhbnNmb3JtU3VibWl0VmFsdWVzLCBvbWl0TmlsVmFsdWVzIH0gZnJvbSAnLi91dGlscyc7XG5jb25zdCBjbGFzc2VzID0gY2xhc3NuYW1lcyhDU1NfUFJFRklYKTtcbmNvbnN0IGZvcm1DbGFzc2VzID0gY2xhc3NuYW1lcygnZm9ybScpO1xuY29uc3QgUHJvRm9ybUJhc2UgPSAocHJvcHMpID0+IHtcbiAgICBjb25zdCB7IGNoaWxkcmVuLCBjbGFzc05hbWUsIHN1Ym1pdHRlciwgcmVhZG9ubHkgPSBmYWxzZSwgbW9kZTogbW9kZVByb3AsIGdyaWQgPSBmYWxzZSwgY29sUHJvcHMsIHJvd1Byb3BzLCBsb2FkaW5nID0gZmFsc2UsIHJlcXVlc3QsIHBhcmFtcywgaW5pdGlhbFZhbHVlcywgb25GaW5pc2gsIG9uRmluaXNoRmFpbGVkLCBvblZhbHVlc0NoYW5nZSwgb25SZXNldCwgZm9ybVJlZiwgb21pdE5pbCA9IHRydWUsIHNpemUgPSAnbWlkZGxlJywgbGFiZWxBbGlnbiA9ICdsZWZ0JywgZGlzYWJsZWQgPSBmYWxzZSwgY29sb24gPSB0cnVlLCByZXF1aXJlZE1hcmsgPSB0cnVlLCB2YWxpZGF0ZVRyaWdnZXIgPSAnb25DaGFuZ2UnLCBwcmVmaXhDbHM6IF9wcmVmaXhDbHMgfSA9IHByb3BzLCByZXN0ID0gX19yZXN0KHByb3BzLCBbXCJjaGlsZHJlblwiLCBcImNsYXNzTmFtZVwiLCBcInN1Ym1pdHRlclwiLCBcInJlYWRvbmx5XCIsIFwibW9kZVwiLCBcImdyaWRcIiwgXCJjb2xQcm9wc1wiLCBcInJvd1Byb3BzXCIsIFwibG9hZGluZ1wiLCBcInJlcXVlc3RcIiwgXCJwYXJhbXNcIiwgXCJpbml0aWFsVmFsdWVzXCIsIFwib25GaW5pc2hcIiwgXCJvbkZpbmlzaEZhaWxlZFwiLCBcIm9uVmFsdWVzQ2hhbmdlXCIsIFwib25SZXNldFwiLCBcImZvcm1SZWZcIiwgXCJvbWl0TmlsXCIsIFwic2l6ZVwiLCBcImxhYmVsQWxpZ25cIiwgXCJkaXNhYmxlZFwiLCBcImNvbG9uXCIsIFwicmVxdWlyZWRNYXJrXCIsIFwidmFsaWRhdGVUcmlnZ2VyXCIsIFwicHJlZml4Q2xzXCJdKTtcbiAgICBjb25zdCBtb2RlID0gbW9kZVByb3AgIT09IG51bGwgJiYgbW9kZVByb3AgIT09IHZvaWQgMCA/IG1vZGVQcm9wIDogKHJlYWRvbmx5ID8gJ3JlYWQnIDogJ2VkaXQnKTtcbiAgICBjb25zdCBbcmVxdWVzdExvYWRpbmcsIHNldFJlcXVlc3RMb2FkaW5nXSA9IHVzZVNhZmVTdGF0ZShmYWxzZSk7XG4gICAgY29uc3QgaXNMb2FkaW5nID0gbG9hZGluZyB8fCByZXF1ZXN0TG9hZGluZztcbiAgICAvLyDilIDilIAgVHJhbnNmb3JtIHJlZ2lzdHJ5IOKUgOKUgFxuICAgIGNvbnN0IHRyYW5zZm9ybUtleVJlZiA9IHVzZVJlZih7fSk7XG4gICAgY29uc3QgcmVnaXN0ZXJUcmFuc2Zvcm0gPSB1c2VNZW1vaXplZEZuKChuYW1lLCBmbikgPT4ge1xuICAgICAgICB0cmFuc2Zvcm1LZXlSZWYuY3VycmVudFtuYW1lXSA9IGZuO1xuICAgIH0pO1xuICAgIGNvbnN0IHVucmVnaXN0ZXJUcmFuc2Zvcm0gPSB1c2VNZW1vaXplZEZuKChuYW1lKSA9PiB7XG4gICAgICAgIGRlbGV0ZSB0cmFuc2Zvcm1LZXlSZWYuY3VycmVudFtuYW1lXTtcbiAgICB9KTtcbiAgICBjb25zdCBvbkZpbmlzaFJlZiA9IHVzZUxhdGVzdChvbkZpbmlzaCk7XG4gICAgY29uc3QgYXBwbHlQaXBlbGluZSA9IHVzZU1lbW9pemVkRm4oKHZhbHVlcykgPT4ge1xuICAgICAgICBsZXQgcmVzdWx0ID0gdHJhbnNmb3JtU3VibWl0VmFsdWVzKHZhbHVlcywgdHJhbnNmb3JtS2V5UmVmLmN1cnJlbnQpO1xuICAgICAgICBpZiAob21pdE5pbClcbiAgICAgICAgICAgIHJlc3VsdCA9IG9taXROaWxWYWx1ZXMocmVzdWx0KTtcbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9KTtcbiAgICBjb25zdCBoYW5kbGVGaW5pc2ggPSB1c2VNZW1vaXplZEZuKCh2YWx1ZXMpID0+IHtcbiAgICAgICAgdmFyIF9hO1xuICAgICAgICAoX2EgPSBvbkZpbmlzaFJlZi5jdXJyZW50KSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuY2FsbChvbkZpbmlzaFJlZiwgYXBwbHlQaXBlbGluZSh2YWx1ZXMpKTtcbiAgICB9KTtcbiAgICAvLyDilIDilIAgQ29yZSBmb3JtIGVuZ2luZSDilIDilIBcbiAgICBjb25zdCB7IGNvcmVDb250ZXh0U2hhcGUsIGZvcm1JbnN0YW5jZTogY29yZUluc3RhbmNlLCBoYW5kbGVTdWJtaXQsIGhhbmRsZVJlc2V0LCB9ID0gdXNlRm9ybUNvcmUoe1xuICAgICAgICBpbml0aWFsVmFsdWVzLFxuICAgICAgICBvbkZpbmlzaDogaGFuZGxlRmluaXNoLFxuICAgICAgICBvbkZpbmlzaEZhaWxlZCxcbiAgICAgICAgb25WYWx1ZXNDaGFuZ2UsXG4gICAgICAgIG9uUmVzZXQsXG4gICAgICAgIHNpemUsXG4gICAgICAgIGxhYmVsQWxpZ24sXG4gICAgICAgIGRpc2FibGVkOiBkaXNhYmxlZCB8fCBpc0xvYWRpbmcsXG4gICAgICAgIGNvbG9uLFxuICAgICAgICByZXF1aXJlZE1hcmssXG4gICAgICAgIHZhbGlkYXRlVHJpZ2dlcixcbiAgICB9KTtcbiAgICAvLyDilIDilIAgUHJvRm9ybSBpbnN0YW5jZTogc3VwZXJzZXQgb2YgRm9ybUNvcmVJbnN0YW5jZSDilIDilIBcbiAgICBjb25zdCBwcm9Gb3JtRm9ybUluc3RhbmNlID0gdXNlTWVtbygoKSA9PiAoT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LCBjb3JlSW5zdGFuY2UpLCB7IGdldEZpZWxkc0Zvcm1hdFZhbHVlOiAoKSA9PiBhcHBseVBpcGVsaW5lKGNvcmVJbnN0YW5jZS5nZXRGaWVsZHNWYWx1ZSgpKSwgdmFsaWRhdGVGaWVsZHNSZXR1cm5Gb3JtYXRWYWx1ZTogKCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgaXNWYWxpZCA9IGNvcmVJbnN0YW5jZS52YWxpZGF0ZUZpZWxkcygpO1xuICAgICAgICAgICAgaWYgKCFpc1ZhbGlkKVxuICAgICAgICAgICAgICAgIHJldHVybiB7IHN1Y2Nlc3M6IGZhbHNlIH07XG4gICAgICAgICAgICByZXR1cm4geyBzdWNjZXNzOiB0cnVlLCB2YWx1ZXM6IGFwcGx5UGlwZWxpbmUoY29yZUluc3RhbmNlLmdldEZpZWxkc1ZhbHVlKCkpIH07XG4gICAgICAgIH0gfSkpLCBbY29yZUluc3RhbmNlLCBhcHBseVBpcGVsaW5lXSk7XG4gICAgLy8g4pSA4pSAIFN5bmMgdG8gZm9ybVJlZiBwcm9wIOKUgOKUgFxuICAgIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgICAgIGlmIChmb3JtUmVmKSB7XG4gICAgICAgICAgICBmb3JtUmVmLmN1cnJlbnQgPSBwcm9Gb3JtRm9ybUluc3RhbmNlO1xuICAgICAgICB9XG4gICAgfSk7XG4gICAgLy8g4pSA4pSAIHJlcXVlc3QgLyBwYXJhbXMgYXV0by1sb2FkIOKUgOKUgFxuICAgIGNvbnN0IHJlcXVlc3RSZWYgPSB1c2VMYXRlc3QocmVxdWVzdCk7XG4gICAgY29uc3Qgc2VyaWFsaXplZFBhcmFtcyA9IHVzZU1lbW8oKCkgPT4gc3RhYmxlU2VyaWFsaXplKHBhcmFtcyksIFtwYXJhbXNdKTtcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICBjb25zdCBmZXRjaERhdGEgPSAoKSA9PiBfX2F3YWl0ZXIodm9pZCAwLCB2b2lkIDAsIHZvaWQgMCwgZnVuY3Rpb24qICgpIHtcbiAgICAgICAgICAgIGNvbnN0IHJlcXVlc3RGbiA9IHJlcXVlc3RSZWYuY3VycmVudDtcbiAgICAgICAgICAgIGlmICghcmVxdWVzdEZuKVxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIHNldFJlcXVlc3RMb2FkaW5nKHRydWUpO1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBjb25zdCBkYXRhID0geWllbGQgcmVxdWVzdEZuKHBhcmFtcyk7XG4gICAgICAgICAgICAgICAgaWYgKGRhdGEgJiYgdHlwZW9mIGRhdGEgPT09ICdvYmplY3QnKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvcmVJbnN0YW5jZS5zZXRGaWVsZHNWYWx1ZShkYXRhKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBmaW5hbGx5IHtcbiAgICAgICAgICAgICAgICBzZXRSZXF1ZXN0TG9hZGluZyhmYWxzZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICBpZiAocmVxdWVzdFJlZi5jdXJyZW50KSB7XG4gICAgICAgICAgICBmZXRjaERhdGEoKTtcbiAgICAgICAgfVxuICAgIH0sIFtzZXJpYWxpemVkUGFyYW1zLCBwYXJhbXMsIHJlcXVlc3RSZWYsIHNldFJlcXVlc3RMb2FkaW5nLCBjb3JlSW5zdGFuY2VdKTtcbiAgICAvLyDilIDilIAgTWVyZ2VkIGNvbnRleHQg4pSA4pSAXG4gICAgY29uc3QgY29udGV4dFZhbHVlID0gdXNlTWVtbygoKSA9PiAoT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LCBjb3JlQ29udGV4dFNoYXBlKSwgeyBmb3JtSW5zdGFuY2U6IHByb0Zvcm1Gb3JtSW5zdGFuY2UsIHJlYWRvbmx5LFxuICAgICAgICBtb2RlLFxuICAgICAgICBncmlkLCBjb2xQcm9wczogY29sUHJvcHMgIT09IG51bGwgJiYgY29sUHJvcHMgIT09IHZvaWQgMCA/IGNvbFByb3BzIDogeyBzcGFuOiAyNCB9LCByZWdpc3RlclRyYW5zZm9ybSxcbiAgICAgICAgdW5yZWdpc3RlclRyYW5zZm9ybSB9KSksIFtcbiAgICAgICAgY29yZUNvbnRleHRTaGFwZSxcbiAgICAgICAgcHJvRm9ybUZvcm1JbnN0YW5jZSxcbiAgICAgICAgcmVhZG9ubHksXG4gICAgICAgIG1vZGUsXG4gICAgICAgIGdyaWQsXG4gICAgICAgIGNvbFByb3BzLFxuICAgICAgICByZWdpc3RlclRyYW5zZm9ybSxcbiAgICAgICAgdW5yZWdpc3RlclRyYW5zZm9ybSxcbiAgICBdKTtcbiAgICBjb25zdCBXcmFwcGVyQ29tcG9uZW50ID0gZ3JpZCA/IFJvdyA6IEZyYWdtZW50O1xuICAgIGNvbnN0IHdyYXBwZXJQcm9wcyA9IGdyaWQgPyBPYmplY3QuYXNzaWduKHt9LCByb3dQcm9wcykgOiB7fTtcbiAgICBjb25zdCBzdWJtaXR0ZXJOb2RlID0gc3VibWl0dGVyICE9PSBmYWxzZSAmJiBtb2RlICE9PSAncmVhZCcgPyAoX2pzeChTdWJtaXR0ZXIsIE9iamVjdC5hc3NpZ24oe30sICh0eXBlb2Ygc3VibWl0dGVyID09PSAnb2JqZWN0JyA/IHN1Ym1pdHRlciA6IHt9KSwgeyBsb2FkaW5nOiBpc0xvYWRpbmcgfSkpKSA6IG51bGw7XG4gICAgcmV0dXJuIChfanN4KFByb0Zvcm1Db250ZXh0LlByb3ZpZGVyLCB7IHZhbHVlOiBjb250ZXh0VmFsdWUsIGNoaWxkcmVuOiBfanN4cyhcImZvcm1cIiwgT2JqZWN0LmFzc2lnbih7fSwgcmVzdCwgeyBjbGFzc05hbWU6IGZvcm1DbGFzc2VzKHVuZGVmaW5lZCwgam9pbkNscyhjbGFzc2VzKCksIGNsYXNzTmFtZSkpLCBvblN1Ym1pdDogaGFuZGxlU3VibWl0LCBvblJlc2V0OiBoYW5kbGVSZXNldCwgY2hpbGRyZW46IFtfanN4KFdyYXBwZXJDb21wb25lbnQsIE9iamVjdC5hc3NpZ24oe30sIHdyYXBwZXJQcm9wcywgeyBjaGlsZHJlbjogY2hpbGRyZW4gfSkpLCBzdWJtaXR0ZXJOb2RlXSB9KSkgfSkpO1xufTtcblByb0Zvcm1CYXNlLmRpc3BsYXlOYW1lID0gJ1Byb0Zvcm0nO1xuZXhwb3J0IGNvbnN0IFByb0Zvcm0gPSBtZW1vKFByb0Zvcm1CYXNlKTtcbmV4cG9ydCBkZWZhdWx0IFByb0Zvcm07IixudWxsXSwic291cmNlUm9vdCI6Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYyJ9
@@ -1,15 +1,13 @@
1
1
  import { Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
2
2
  import { memo, useMemo } from 'react';
3
- import { useFormContext } from '../Form';
4
3
  import { useProFormContext, useFormListContext } from './context';
5
4
  import { getNestedValue } from './utils';
6
5
  var ProFormDependencyBase = function ProFormDependencyBase(_ref) {
7
6
  var name = _ref.name,
8
7
  ignoreFormListField = _ref.ignoreFormListField,
9
8
  children = _ref.children;
10
- var _useFormContext = useFormContext(),
11
- values = _useFormContext.values;
12
9
  var _useProFormContext = useProFormContext(),
10
+ values = _useProFormContext.values,
13
11
  formInstance = _useProFormContext.formInstance;
14
12
  var formListCtx = useFormListContext();
15
13
  // Resolve the actual paths to watch, considering FormList scope
@@ -66,4 +64,4 @@ var ProFormDependencyBase = function ProFormDependencyBase(_ref) {
66
64
  ProFormDependencyBase.displayName = 'ProFormDependency';
67
65
  export var ProFormDependency = /*#__PURE__*/memo(ProFormDependencyBase);
68
66
  export default ProFormDependency;
69
- //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvUHJvRm9ybS9Qcm9Gb3JtRGVwZW5kZW5jeS5qcyIsImNvbXBvbmVudHMvc3JjL2NvbXBvbmVudHMvUHJvRm9ybS9Qcm9Gb3JtRGVwZW5kZW5jeS50c3giXSwibmFtZXMiOlsiRnJhZ21lbnQiLCJfRnJhZ21lbnQiLCJqc3giLCJfanN4IiwibWVtbyIsInVzZU1lbW8iLCJ1c2VGb3JtQ29udGV4dCIsInVzZVByb0Zvcm1Db250ZXh0IiwidXNlRm9ybUxpc3RDb250ZXh0IiwiZ2V0TmVzdGVkVmFsdWUiLCJQcm9Gb3JtRGVwZW5kZW5jeUJhc2UiLCJfcmVmIiwibmFtZSIsImlnbm9yZUZvcm1MaXN0RmllbGQiLCJjaGlsZHJlbiIsIl91c2VGb3JtQ29udGV4dCIsInZhbHVlcyIsIl91c2VQcm9Gb3JtQ29udGV4dCIsImZvcm1JbnN0YW5jZSIsImZvcm1MaXN0Q3R4IiwicmVzb2x2ZWRQYXRocyIsInNob3VsZFByZWZpeCIsImxpc3ROYW1lIiwidW5kZWZpbmVkIiwibWFwIiwiZmllbGROYW1lIiwiY29uY2F0Iiwid2F0Y2hlZFZhbHVlcyIsInJlc3VsdCIsImkiLCJsZW5ndGgiLCJvcmlnaW5hbE5hbWUiLCJyZXNvbHZlZFBhdGgiLCJpbmNsdWRlcyIsImZhbGxiYWNrSW5zdGFuY2UiLCJzdWJtaXQiLCJzdWNjZXNzIiwicmVzZXRGaWVsZHMiLCJnZXRGaWVsZFZhbHVlIiwibiIsImdldEZpZWxkc1ZhbHVlIiwic2V0RmllbGRzVmFsdWUiLCJzZXRGaWVsZFZhbHVlIiwidmFsaWRhdGVGaWVsZHMiLCJnZXRGaWVsZHNGb3JtYXRWYWx1ZSIsInZhbGlkYXRlRmllbGRzUmV0dXJuRm9ybWF0VmFsdWUiLCJkaXNwbGF5TmFtZSIsIlByb0Zvcm1EZXBlbmRlbmN5Il0sIm1hcHBpbmdzIjoiQUFBQSxTQUFTQSxRQUFRLElBQUlDLFNBQVMsRUFBRUMsR0FBRyxJQUFJQyxJQUFJLFFBQVEsbUJBQW1CO0FDQXRFLFNBQVNDLElBQUksRUFBRUMsT0FB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QUFLO01BQUE7TUFDM0JDLG9CQUFvQixFQUFFLFNBQXRCQSxvQkFBb0JBLENBQUE7UUFBQSxPQUFRNUIsTUFBTTtNQUFBO01BQ2xDNkIsK0JBQStCLEVBQUUsU0FBakNBLCtCQUErQkEsQ0FBQTtRQUFBLE9BQVM7VUFBRVQsT0FBTyxFQUFFO1FBQUssQ0FBRTtNQUFBO0lEZDVELENDZUM7RUFBQSxDQUFDLEVBQ0YsQ0FBQ3BCLE1BQU0sQ0FBQyxDQUNUO0VBRUQsT0FBT2IsSUFBQSxDQUFBRixTQUFBLEVBQUE7SUFBQWEsUUFBQSxFQUFHQSxRQUFRLENBQUNhLGFBQWEsRUFBRVQsWUFBWSxLQUFBLElBQUEsSUFBWkEsWUFBWSxLQUFBLEtBQUEsQ0FBQSxHQUFaQSxZQUFZLEdBQUlnQixnQkFBZ0I7RUFBQyxDQUFBLENBQUk7QUFDekUsQ0FBQztBQUVEeEIscUJBQXFCLENBQUNvQyxXQUFXLEdBQUcsbUJBQW1CO0FBRXZELE9BQU8sSUFBTUMsaUJBQWlCLGdCQUFHM0MsSUFBSSxDQUFDTSxxQkFBcUIsQ0FBQztBQUU1RCxlQUFlcUMsaUJBQWlCIiwiZmlsZSI6ImNvbXBvbmVudHMvUHJvRm9ybS9Qcm9Gb3JtRGVwZW5kZW5jeS5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZyYWdtZW50IGFzIF9GcmFnbWVudCwganN4IGFzIF9qc3ggfSBmcm9tIFwicmVhY3QvanN4LXJ1bnRpbWVcIjtcbmltcG9ydCB7IG1lbW8sIHVzZU1lbW8gfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyB1c2VGb3JtQ29udGV4dCB9IGZyb20gJy4uL0Zvcm0nO1xuaW1wb3J0IHsgdXNlUHJvRm9ybUNvbnRleHQsIHVzZUZvcm1MaXN0Q29udGV4dCB9IGZyb20gJy4vY29udGV4dCc7XG5pbXBvcnQgeyBnZXROZXN0ZWRWYWx1ZSB9IGZyb20gJy4vdXRpbHMnO1xuY29uc3QgUHJvRm9ybURlcGVuZGVuY3lCYXNlID0gKHsgbmFtZSwgaWdub3JlRm9ybUxpc3RGaWVsZCwgY2hpbGRyZW4sIH0pID0+IHtcbiAgICBjb25zdCB7IHZhbHVlcyB9ID0gdXNlRm9ybUNvbnRleHQoKTtcbiAgICBjb25zdCB7IGZvcm1JbnN0YW5jZSB9ID0gdXNlUHJvRm9ybUNvbnRleHQoKTtcbiAgICBjb25zdCBmb3JtTGlzdEN0eCA9IHVzZUZvcm1MaXN0Q29udGV4dCgpO1xuICAgIC8vIFJlc29sdmUgdGhlIGFjdHVhbCBwYXRocyB0byB3YXRjaCwgY29uc2lkZXJpbmcgRm9ybUxpc3Qgc2NvcGVcbiAgICBjb25zdCByZXNvbHZlZFBhdGhzID0gdXNlTWVtbygoKSA9PiB7XG4gICAgICAgIGNvbnN0IHNob3VsZFByZWZpeCA9ICFpZ25vcmVGb3JtTGlzdEZpZWxkICYmIGZvcm1MaXN0Q3R4Lmxpc3ROYW1lICE9PSB1bmRlZmluZWQ7XG4gICAgICAgIHJldHVybiBuYW1lLm1hcCgoZmllbGROYW1lKSA9PiBzaG91bGRQcmVmaXggPyBgJHtmb3JtTGlzdEN0eC5saXN0TmFtZX0uJHtmaWVsZE5hbWV9YCA6IGZpZWxkTmFtZSk7XG4gICAgfSwgW25hbWUsIGlnbm9yZUZvcm1MaXN0RmllbGQsIGZvcm1MaXN0Q3R4Lmxpc3ROYW1lXSk7XG4gICAgY29uc3Qgd2F0Y2hlZFZhbHVlcyA9IHVzZU1lbW8oKCkgPT4ge1xuICAgICAgICBjb25zdCByZXN1bHQgPSB7fTtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBuYW1lLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBjb25zdCBvcmlnaW5hbE5hbWUgPSBuYW1lW2ldO1xuICAgICAgICAgICAgY29uc3QgcmVzb2x2ZWRQYXRoID0gcmVzb2x2ZWRQYXRoc1tpXTtcbiAgICAgICAgICAgIC8vIFVzZSB0aGUgb3JpZ2luYWwgbmFtZSBhcyBrZXkgc28gY2hpbGRyZW4gZ2V0IGNsZWFuIGtleXNcbiAgICAgICAgICAgIHJlc3VsdFtvcmlnaW5hbE5hbWVdID0gcmVzb2x2ZWRQYXRoLmluY2x1ZGVzKCcuJylcbiAgICAgICAgICAgICAgICA/IGdldE5lc3RlZFZhbHVlKHZhbHVlcywgcmVzb2x2ZWRQYXRoKVxuICAgICAgICAgICAgICAgIDogdmFsdWVzW3Jlc29sdmVkUGF0aF07XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9LCBbbmFtZSwgcmVzb2x2ZWRQYXRocywgdmFsdWVzXSk7XG4gICAgLy8gRmFsbGJhY2sgZm9ybSBpbnN0YW5jZSBmb3Igc3RhbmRhbG9uZSB1c2FnZSAob3V0c2lkZSBQcm9Gb3JtKVxuICAgIGNvbnN0IGZhbGxiYWNrSW5zdGFuY2UgPSB1c2VNZW1vKCgpID0+ICh7XG4gICAgICAgIHN1Ym1pdDogKCkgPT4gKHsgc3VjY2VzczogZmFsc2UgfSksXG4gICAgICAgIHJlc2V0RmllbGRzOiAoKSA9PiB7IH0sXG4gICAgICAgIGdldEZpZWxkVmFsdWU6IChuKSA9PiBuLmluY2x1ZGVzKCcuJykgPyBnZXROZXN0ZWRWYWx1ZSh2YWx1ZXMsIG4pIDogdmFsdWVzW25dLFxuICAgICAgICBnZXRGaWVsZHNWYWx1ZTogKCkgPT4gdmFsdWVzLFxuICAgICAgICBzZXRGaWVsZHNWYWx1ZTogKCkgPT4geyB9LFxuICAgICAgICBzZXRGaWVsZFZhbHVlOiAoKSA9PiB7IH0sXG4gICAgICAgIHZhbGlkYXRlRmllbGRzOiAoKSA9PiBmYWxzZSxcbiAgICAgICAgZ2V0RmllbGRzRm9ybWF0VmFsdWU6ICgpID0+IHZhbHVlcyxcbiAgICAgICAgdmFsaWRhdGVGaWVsZHNSZXR1cm5Gb3JtYXRWYWx1ZTogKCkgPT4gKHsgc3VjY2VzczogZmFsc2UgfSksXG4gICAgfSksIFt2YWx1ZXNdKTtcbiAgICByZXR1cm4gX2pzeChfRnJhZ21lbnQsIHsgY2hpbGRyZW46IGNoaWxkcmVuKHdhdGNoZWRWYWx1ZXMsIGZvcm1JbnN0YW5jZSAhPT0gbnVsbCAmJiBmb3JtSW5zdGFuY2UgIT09IHZvaWQgMCA/IGZvcm1JbnN0YW5jZSA6IGZhbGxiYWNrSW5zdGFuY2UpIH0pO1xufTtcblByb0Zvcm1EZXBlbmRlbmN5QmFzZS5kaXNwbGF5TmFtZSA9ICdQcm9Gb3JtRGVwZW5kZW5jeSc7XG5leHBvcnQgY29uc3QgUHJvRm9ybURlcGVuZGVuY3kgPSBtZW1vKFByb0Zvcm1EZXBlbmRlbmN5QmFzZSk7XG5leHBvcnQgZGVmYXVsdCBQcm9Gb3JtRGVwZW5kZW5jeTsiLG51bGxdLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjIn0=
67
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvUHJvRm9ybS9Qcm9Gb3JtRGVwZW5kZW5jeS5qcyIsImNvbXBvbmVudHMvc3JjL2NvbXBvbmVudHMvUHJvRm9ybS9Qcm9Gb3JtRGVwZW5kZW5jeS50c3giXSwibmFtZXMiOlsiRnJhZ21lbnQiLCJfRnJhZ21lbnQiLCJqc3giLCJfanN4IiwibWVtbyIsInVzZU1lbW8iLCJ1c2VQcm9Gb3JtQ29udGV4dCIsInVzZUZvcm1MaXN0Q29udGV4dCIsImdldE5lc3RlZFZhbHVlIiwiUHJvRm9ybURlcGVuZGVuY3lCYXNlIiwiX3JlZiIsIm5hbWUiLCJpZ25vcmVGb3JtTGlzdEZpZWxkIiwiY2hpbGRyZW4iLCJfdXNlUHJvRm9ybUNvbnRleHQiLCJ2YWx1ZXMiLCJmb3JtSW5zdGFuY2UiLCJmb3JtTGlzdEN0eCIsInJlc29sdmVkUGF0aHMiLCJzaG91bGRQcmVmaXgiLCJsaXN0TmFtZSIsInVuZGVmaW5lZCIsIm1hcCIsImZpZWxkTmFtZSIsImNvbmNhdCIsIndhdGNoZWRWYWx1ZXMiLCJyZXN1bHQiLCJpIiwibGVuZ3RoIiwib3JpZ2luYWxOYW1lIiwicmVzb2x2ZWRQYXRoIiwiaW5jbHVkZXMiLCJmYWxsYmFja0luc3RhbmNlIiwic3VibWl0Iiwic3VjY2VzcyIsInJlc2V0RmllbGRzIiwiZ2V0RmllbGRWYWx1ZSIsIm4iLCJnZXRGaWVsZHNWYWx1ZSIsInNldEZpZWxkc1ZhbHVlIiwic2V0RmllbGRWYWx1ZSIsInZhbGlkYXRlRmllbGRzIiwiZ2V0RmllbGRzRm9ybWF0VmFsdWUiLCJ2YWxpZGF0ZUZpZWxkc1JldHVybkZvcm1hdFZhbHVlIiwiZGlzcGxheU5hbWUiLCJQcm9Gb3JtRGVwZW5kZW5jeSJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBU0EsUUFBUSxJQUFJQyxTQUFTLEVBQUVDLEdBQUcsSUFBSUMsSUFBSSxRQUFRLG1CQUFtQjtBQ0F0RSxTQUFTQyxJQUFJLEVBQUVDLE9BQU8sUUFBUSxPQUFPO0FBRXJDLFNBQVNDLGlCQUFpQixFQUFF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Q0FBQTtRQUFBLE9BQVM7VUFBRVQsT0FBTyxFQUFFO1FBQUssQ0FBRTtNQUFBO0lEZDVELENDZUM7RUFBQSxDQUFDLEVBQ0YsQ0FBQ25CLE1BQU0sQ0FBQyxDQUNUO0VBRUQsT0FBT1osSUFBQSxDQUFBRixTQUFBLEVBQUE7SUFBQVksUUFBQSxFQUFHQSxRQUFRLENBQUNZLGFBQWEsRUFBRVQsWUFBWSxLQUFBLElBQUEsSUFBWkEsWUFBWSxLQUFBLEtBQUEsQ0FBQSxHQUFaQSxZQUFZLEdBQUlnQixnQkFBZ0I7RUFBQyxDQUFBLENBQUk7QUFDekUsQ0FBQztBQUVEdkIscUJBQXFCLENBQUNtQyxXQUFXLEdBQUcsbUJBQW1CO0FBRXZELE9BQU8sSUFBTUMsaUJBQWlCLGdCQUFHekMsSUFBSSxDQUFDSyxxQkFBcUIsQ0FBQztBQUU1RCxlQUFlb0MsaUJBQWlCIiwiZmlsZSI6ImNvbXBvbmVudHMvUHJvRm9ybS9Qcm9Gb3JtRGVwZW5kZW5jeS5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZyYWdtZW50IGFzIF9GcmFnbWVudCwganN4IGFzIF9qc3ggfSBmcm9tIFwicmVhY3QvanN4LXJ1bnRpbWVcIjtcbmltcG9ydCB7IG1lbW8sIHVzZU1lbW8gfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyB1c2VQcm9Gb3JtQ29udGV4dCwgdXNlRm9ybUxpc3RDb250ZXh0IH0gZnJvbSAnLi9jb250ZXh0JztcbmltcG9ydCB7IGdldE5lc3RlZFZhbHVlIH0gZnJvbSAnLi91dGlscyc7XG5jb25zdCBQcm9Gb3JtRGVwZW5kZW5jeUJhc2UgPSAoeyBuYW1lLCBpZ25vcmVGb3JtTGlzdEZpZWxkLCBjaGlsZHJlbiwgfSkgPT4ge1xuICAgIGNvbnN0IHsgdmFsdWVzLCBmb3JtSW5zdGFuY2UgfSA9IHVzZVByb0Zvcm1Db250ZXh0KCk7XG4gICAgY29uc3QgZm9ybUxpc3RDdHggPSB1c2VGb3JtTGlzdENvbnRleHQoKTtcbiAgICAvLyBSZXNvbHZlIHRoZSBhY3R1YWwgcGF0aHMgdG8gd2F0Y2gsIGNvbnNpZGVyaW5nIEZvcm1MaXN0IHNjb3BlXG4gICAgY29uc3QgcmVzb2x2ZWRQYXRocyA9IHVzZU1lbW8oKCkgPT4ge1xuICAgICAgICBjb25zdCBzaG91bGRQcmVmaXggPSAhaWdub3JlRm9ybUxpc3RGaWVsZCAmJiBmb3JtTGlzdEN0eC5saXN0TmFtZSAhPT0gdW5kZWZpbmVkO1xuICAgICAgICByZXR1cm4gbmFtZS5tYXAoKGZpZWxkTmFtZSkgPT4gc2hvdWxkUHJlZml4ID8gYCR7Zm9ybUxpc3RDdHgubGlzdE5hbWV9LiR7ZmllbGROYW1lfWAgOiBmaWVsZE5hbWUpO1xuICAgIH0sIFtuYW1lLCBpZ25vcmVGb3JtTGlzdEZpZWxkLCBmb3JtTGlzdEN0eC5saXN0TmFtZV0pO1xuICAgIGNvbnN0IHdhdGNoZWRWYWx1ZXMgPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgICAgY29uc3QgcmVzdWx0ID0ge307XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbmFtZS5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgY29uc3Qgb3JpZ2luYWxOYW1lID0gbmFtZVtpXTtcbiAgICAgICAgICAgIGNvbnN0IHJlc29sdmVkUGF0aCA9IHJlc29sdmVkUGF0aHNbaV07XG4gICAgICAgICAgICAvLyBVc2UgdGhlIG9yaWdpbmFsIG5hbWUgYXMga2V5IHNvIGNoaWxkcmVuIGdldCBjbGVhbiBrZXlzXG4gICAgICAgICAgICByZXN1bHRbb3JpZ2luYWxOYW1lXSA9IHJlc29sdmVkUGF0aC5pbmNsdWRlcygnLicpXG4gICAgICAgICAgICAgICAgPyBnZXROZXN0ZWRWYWx1ZSh2YWx1ZXMsIHJlc29sdmVkUGF0aClcbiAgICAgICAgICAgICAgICA6IHZhbHVlc1tyZXNvbHZlZFBhdGhdO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfSwgW25hbWUsIHJlc29sdmVkUGF0aHMsIHZhbHVlc10pO1xuICAgIC8vIEZhbGxiYWNrIGZvcm0gaW5zdGFuY2UgZm9yIHN0YW5kYWxvbmUgdXNhZ2UgKG91dHNpZGUgUHJvRm9ybSlcbiAgICBjb25zdCBmYWxsYmFja0luc3RhbmNlID0gdXNlTWVtbygoKSA9PiAoe1xuICAgICAgICBzdWJtaXQ6ICgpID0+ICh7IHN1Y2Nlc3M6IGZhbHNlIH0pLFxuICAgICAgICByZXNldEZpZWxkczogKCkgPT4geyB9LFxuICAgICAgICBnZXRGaWVsZFZhbHVlOiAobikgPT4gbi5pbmNsdWRlcygnLicpID8gZ2V0TmVzdGVkVmFsdWUodmFsdWVzLCBuKSA6IHZhbHVlc1tuXSxcbiAgICAgICAgZ2V0RmllbGRzVmFsdWU6ICgpID0+IHZhbHVlcyxcbiAgICAgICAgc2V0RmllbGRzVmFsdWU6ICgpID0+IHsgfSxcbiAgICAgICAgc2V0RmllbGRWYWx1ZTogKCkgPT4geyB9LFxuICAgICAgICB2YWxpZGF0ZUZpZWxkczogKCkgPT4gZmFsc2UsXG4gICAgICAgIGdldEZpZWxkc0Zvcm1hdFZhbHVlOiAoKSA9PiB2YWx1ZXMsXG4gICAgICAgIHZhbGlkYXRlRmllbGRzUmV0dXJuRm9ybWF0VmFsdWU6ICgpID0+ICh7IHN1Y2Nlc3M6IGZhbHNlIH0pLFxuICAgIH0pLCBbdmFsdWVzXSk7XG4gICAgcmV0dXJuIF9qc3goX0ZyYWdtZW50LCB7IGNoaWxkcmVuOiBjaGlsZHJlbih3YXRjaGVkVmFsdWVzLCBmb3JtSW5zdGFuY2UgIT09IG51bGwgJiYgZm9ybUluc3RhbmNlICE9PSB2b2lkIDAgPyBmb3JtSW5zdGFuY2UgOiBmYWxsYmFja0luc3RhbmNlKSB9KTtcbn07XG5Qcm9Gb3JtRGVwZW5kZW5jeUJhc2UuZGlzcGxheU5hbWUgPSAnUHJvRm9ybURlcGVuZGVuY3knO1xuZXhwb3J0IGNvbnN0IFByb0Zvcm1EZXBlbmRlbmN5ID0gbWVtbyhQcm9Gb3JtRGVwZW5kZW5jeUJhc2UpO1xuZXhwb3J0IGRlZmF1bHQgUHJvRm9ybURlcGVuZGVuY3k7IixudWxsXSwic291cmNlUm9vdCI6Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYyJ9
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ import type { ProFormItemProps } from './interface';
3
+ export declare const ProFormItem: React.NamedExoticComponent<ProFormItemProps>;
4
+ export default ProFormItem;