@payloadcms/ui 3.0.0-canary.7660f90 → 3.0.0-canary.83a688a

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 (305) hide show
  1. package/dist/elements/Banner/index.scss +4 -4
  2. package/dist/elements/CodeEditor/types.d.ts +2 -2
  3. package/dist/elements/CodeEditor/types.d.ts.map +1 -1
  4. package/dist/elements/CodeEditor/types.js.map +1 -1
  5. package/dist/elements/Collapsible/index.scss +13 -47
  6. package/dist/elements/DatePicker/types.d.ts +2 -2
  7. package/dist/elements/DatePicker/types.d.ts.map +1 -1
  8. package/dist/elements/DatePicker/types.js.map +1 -1
  9. package/dist/elements/DocumentDrawer/DrawerContent.js +1 -1
  10. package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
  11. package/dist/elements/DocumentDrawer/types.d.ts +4 -4
  12. package/dist/elements/DocumentDrawer/types.d.ts.map +1 -1
  13. package/dist/elements/DocumentDrawer/types.js.map +1 -1
  14. package/dist/elements/DraggableSortable/DraggableSortableItem/index.d.ts +2 -2
  15. package/dist/elements/DraggableSortable/DraggableSortableItem/index.d.ts.map +1 -1
  16. package/dist/elements/DraggableSortable/DraggableSortableItem/index.js.map +1 -1
  17. package/dist/elements/DraggableSortable/DraggableSortableItem/types.d.ts +4 -4
  18. package/dist/elements/DraggableSortable/DraggableSortableItem/types.d.ts.map +1 -1
  19. package/dist/elements/DraggableSortable/DraggableSortableItem/types.js.map +1 -1
  20. package/dist/elements/Drawer/types.d.ts +2 -2
  21. package/dist/elements/Drawer/types.d.ts.map +1 -1
  22. package/dist/elements/Drawer/types.js.map +1 -1
  23. package/dist/elements/Dropzone/index.d.ts +1 -0
  24. package/dist/elements/Dropzone/index.d.ts.map +1 -1
  25. package/dist/elements/Dropzone/index.js +8 -1
  26. package/dist/elements/Dropzone/index.js.map +1 -1
  27. package/dist/elements/ErrorPill/index.scss +2 -14
  28. package/dist/elements/FileDetails/index.d.ts +2 -2
  29. package/dist/elements/FileDetails/index.d.ts.map +1 -1
  30. package/dist/elements/FileDetails/index.js.map +1 -1
  31. package/dist/elements/GenerateConfirmation/index.scss +1 -0
  32. package/dist/elements/ListDrawer/types.d.ts +2 -2
  33. package/dist/elements/ListDrawer/types.d.ts.map +1 -1
  34. package/dist/elements/ListDrawer/types.js.map +1 -1
  35. package/dist/elements/Pill/index.d.ts +2 -2
  36. package/dist/elements/Pill/index.d.ts.map +1 -1
  37. package/dist/elements/Pill/index.js.map +1 -1
  38. package/dist/elements/Pill/index.scss +9 -21
  39. package/dist/elements/PreviewSizes/index.d.ts +4 -4
  40. package/dist/elements/PreviewSizes/index.d.ts.map +1 -1
  41. package/dist/elements/PreviewSizes/index.js.map +1 -1
  42. package/dist/elements/PublishButton/index.d.ts.map +1 -1
  43. package/dist/elements/PublishButton/index.js +16 -0
  44. package/dist/elements/PublishButton/index.js.map +1 -1
  45. package/dist/elements/ReactSelect/Control/index.js +0 -1
  46. package/dist/elements/ReactSelect/Control/index.js.map +1 -1
  47. package/dist/elements/ReactSelect/DropdownIndicator/index.d.ts +2 -2
  48. package/dist/elements/ReactSelect/DropdownIndicator/index.d.ts.map +1 -1
  49. package/dist/elements/ReactSelect/DropdownIndicator/index.js.map +1 -1
  50. package/dist/elements/ReactSelect/MultiValueRemove/index.d.ts +2 -2
  51. package/dist/elements/ReactSelect/MultiValueRemove/index.d.ts.map +1 -1
  52. package/dist/elements/ReactSelect/MultiValueRemove/index.js.map +1 -1
  53. package/dist/elements/ReactSelect/index.d.ts.map +1 -1
  54. package/dist/elements/ReactSelect/index.js +0 -1
  55. package/dist/elements/ReactSelect/index.js.map +1 -1
  56. package/dist/elements/ReactSelect/index.scss +9 -2
  57. package/dist/elements/ReactSelect/types.d.ts +1 -1
  58. package/dist/elements/ReactSelect/types.d.ts.map +1 -1
  59. package/dist/elements/ReactSelect/types.js.map +1 -1
  60. package/dist/elements/SortComplex/index.js +1 -1
  61. package/dist/elements/SortComplex/index.js.map +1 -1
  62. package/dist/elements/Status/index.scss +1 -0
  63. package/dist/elements/Table/DefaultCell/fields/Relationship/index.d.ts.map +1 -1
  64. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js +0 -1
  65. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js.map +1 -1
  66. package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
  67. package/dist/elements/TableColumns/buildColumnState.d.ts.map +1 -1
  68. package/dist/elements/TableColumns/buildColumnState.js +0 -1
  69. package/dist/elements/TableColumns/buildColumnState.js.map +1 -1
  70. package/dist/elements/ThumbnailCard/index.d.ts +2 -2
  71. package/dist/elements/ThumbnailCard/index.d.ts.map +1 -1
  72. package/dist/elements/ThumbnailCard/index.js.map +1 -1
  73. package/dist/elements/Upload/index.d.ts.map +1 -1
  74. package/dist/elements/Upload/index.js +95 -9
  75. package/dist/elements/Upload/index.js.map +1 -1
  76. package/dist/elements/Upload/index.scss +6 -3
  77. package/dist/elements/WhereBuilder/Condition/Relationship/index.js +1 -1
  78. package/dist/elements/WhereBuilder/Condition/Relationship/index.js.map +1 -1
  79. package/dist/elements/WhereBuilder/Condition/Relationship/index.scss +2 -2
  80. package/dist/elements/WhereBuilder/index.js +9 -4
  81. package/dist/elements/WhereBuilder/index.js.map +1 -1
  82. package/dist/elements/WhereBuilder/reduceFieldMap.d.ts +12 -1
  83. package/dist/elements/WhereBuilder/reduceFieldMap.d.ts.map +1 -1
  84. package/dist/elements/WhereBuilder/reduceFieldMap.js +52 -6
  85. package/dist/elements/WhereBuilder/reduceFieldMap.js.map +1 -1
  86. package/dist/elements/WhereBuilder/validateWhereQuery.js +0 -1
  87. package/dist/elements/WhereBuilder/validateWhereQuery.js.map +1 -1
  88. package/dist/exports/client/{CodeEditor-UTZFZWZG.js → CodeEditor-OI35YO7H.js} +1 -1
  89. package/dist/exports/client/{CodeEditor-UTZFZWZG.js.map → CodeEditor-OI35YO7H.js.map} +1 -1
  90. package/dist/exports/client/{DatePicker-BN5AOAME.js → DatePicker-5IFHNQHA.js} +2 -2
  91. package/dist/exports/client/chunk-WDFUZ6GL.js +30 -0
  92. package/dist/exports/client/{chunk-3X2D2TP2.js.map → chunk-WDFUZ6GL.js.map} +4 -4
  93. package/dist/exports/client/index.js +19 -33
  94. package/dist/exports/client/index.js.map +4 -4
  95. package/dist/exports/shared/index.d.ts +0 -1
  96. package/dist/exports/shared/index.d.ts.map +1 -1
  97. package/dist/exports/shared/index.js +2 -12
  98. package/dist/exports/shared/index.js.map +4 -4
  99. package/dist/fields/Array/ArrayRow.d.ts +2 -2
  100. package/dist/fields/Array/ArrayRow.d.ts.map +1 -1
  101. package/dist/fields/Array/ArrayRow.js.map +1 -1
  102. package/dist/fields/Array/index.d.ts +2 -2
  103. package/dist/fields/Array/index.d.ts.map +1 -1
  104. package/dist/fields/Array/index.js.map +1 -1
  105. package/dist/fields/Blocks/BlockRow.d.ts +2 -2
  106. package/dist/fields/Blocks/BlockRow.d.ts.map +1 -1
  107. package/dist/fields/Blocks/BlockRow.js.map +1 -1
  108. package/dist/fields/Blocks/index.d.ts +2 -2
  109. package/dist/fields/Blocks/index.d.ts.map +1 -1
  110. package/dist/fields/Blocks/index.js.map +1 -1
  111. package/dist/fields/Checkbox/index.js +2 -1
  112. package/dist/fields/Checkbox/index.js.map +1 -1
  113. package/dist/fields/Checkbox/index.scss +2 -1
  114. package/dist/fields/Checkbox/types.d.ts +2 -2
  115. package/dist/fields/Checkbox/types.d.ts.map +1 -1
  116. package/dist/fields/Checkbox/types.js.map +1 -1
  117. package/dist/fields/Code/index.d.ts +2 -2
  118. package/dist/fields/Code/index.d.ts.map +1 -1
  119. package/dist/fields/Code/index.js +1 -1
  120. package/dist/fields/Code/index.js.map +1 -1
  121. package/dist/fields/Code/index.scss +3 -21
  122. package/dist/fields/Collapsible/index.d.ts +2 -2
  123. package/dist/fields/Collapsible/index.d.ts.map +1 -1
  124. package/dist/fields/Collapsible/index.js.map +1 -1
  125. package/dist/fields/Collapsible/index.scss +0 -4
  126. package/dist/fields/DateTime/index.d.ts +2 -2
  127. package/dist/fields/DateTime/index.d.ts.map +1 -1
  128. package/dist/fields/DateTime/index.js +1 -1
  129. package/dist/fields/DateTime/index.js.map +1 -1
  130. package/dist/fields/Email/index.d.ts +2 -2
  131. package/dist/fields/Email/index.d.ts.map +1 -1
  132. package/dist/fields/Email/index.js.map +1 -1
  133. package/dist/fields/FieldError/index.scss +6 -5
  134. package/dist/fields/Group/index.d.ts +2 -2
  135. package/dist/fields/Group/index.d.ts.map +1 -1
  136. package/dist/fields/Group/index.js.map +1 -1
  137. package/dist/fields/Hidden/index.d.ts +2 -2
  138. package/dist/fields/Hidden/index.d.ts.map +1 -1
  139. package/dist/fields/Hidden/index.js.map +1 -1
  140. package/dist/fields/JSON/index.d.ts +2 -2
  141. package/dist/fields/JSON/index.d.ts.map +1 -1
  142. package/dist/fields/JSON/index.js +0 -5
  143. package/dist/fields/JSON/index.js.map +1 -1
  144. package/dist/fields/JSON/index.scss +6 -25
  145. package/dist/fields/Number/index.d.ts +2 -2
  146. package/dist/fields/Number/index.d.ts.map +1 -1
  147. package/dist/fields/Number/index.js +1 -3
  148. package/dist/fields/Number/index.js.map +1 -1
  149. package/dist/fields/Password/index.d.ts +2 -2
  150. package/dist/fields/Password/index.d.ts.map +1 -1
  151. package/dist/fields/Password/index.js.map +1 -1
  152. package/dist/fields/Point/index.d.ts +2 -2
  153. package/dist/fields/Point/index.d.ts.map +1 -1
  154. package/dist/fields/Point/index.js +6 -6
  155. package/dist/fields/Point/index.js.map +1 -1
  156. package/dist/fields/Point/index.scss +4 -0
  157. package/dist/fields/RadioGroup/index.d.ts +2 -2
  158. package/dist/fields/RadioGroup/index.d.ts.map +1 -1
  159. package/dist/fields/RadioGroup/index.js +7 -6
  160. package/dist/fields/RadioGroup/index.js.map +1 -1
  161. package/dist/fields/RadioGroup/index.scss +7 -0
  162. package/dist/fields/Relationship/index.js +1 -1
  163. package/dist/fields/Relationship/index.js.map +1 -1
  164. package/dist/fields/Relationship/index.scss +2 -2
  165. package/dist/fields/Relationship/types.d.ts +2 -2
  166. package/dist/fields/Relationship/types.d.ts.map +1 -1
  167. package/dist/fields/Relationship/types.js.map +1 -1
  168. package/dist/fields/RichText/index.d.ts +2 -2
  169. package/dist/fields/RichText/index.d.ts.map +1 -1
  170. package/dist/fields/RichText/index.js.map +1 -1
  171. package/dist/fields/Row/types.d.ts +2 -2
  172. package/dist/fields/Row/types.d.ts.map +1 -1
  173. package/dist/fields/Row/types.js.map +1 -1
  174. package/dist/fields/Select/Input.d.ts +2 -2
  175. package/dist/fields/Select/Input.d.ts.map +1 -1
  176. package/dist/fields/Select/Input.js +0 -5
  177. package/dist/fields/Select/Input.js.map +1 -1
  178. package/dist/fields/Select/index.d.ts +2 -2
  179. package/dist/fields/Select/index.d.ts.map +1 -1
  180. package/dist/fields/Select/index.js +1 -1
  181. package/dist/fields/Select/index.js.map +1 -1
  182. package/dist/fields/Tabs/index.d.ts +2 -2
  183. package/dist/fields/Tabs/index.d.ts.map +1 -1
  184. package/dist/fields/Tabs/index.js.map +1 -1
  185. package/dist/fields/Text/types.d.ts +4 -4
  186. package/dist/fields/Text/types.d.ts.map +1 -1
  187. package/dist/fields/Text/types.js.map +1 -1
  188. package/dist/fields/Textarea/index.d.ts.map +1 -1
  189. package/dist/fields/Textarea/index.js +1 -1
  190. package/dist/fields/Textarea/index.js.map +1 -1
  191. package/dist/fields/Textarea/types.d.ts +4 -4
  192. package/dist/fields/Textarea/types.d.ts.map +1 -1
  193. package/dist/fields/Textarea/types.js.map +1 -1
  194. package/dist/fields/Upload/Input.d.ts +2 -2
  195. package/dist/fields/Upload/Input.d.ts.map +1 -1
  196. package/dist/fields/Upload/Input.js.map +1 -1
  197. package/dist/fields/Upload/types.d.ts +2 -2
  198. package/dist/fields/Upload/types.d.ts.map +1 -1
  199. package/dist/fields/Upload/types.js.map +1 -1
  200. package/dist/forms/Form/index.d.ts.map +1 -1
  201. package/dist/forms/Form/index.js +3 -6
  202. package/dist/forms/Form/index.js.map +1 -1
  203. package/dist/forms/Form/types.d.ts +7 -7
  204. package/dist/forms/Form/types.d.ts.map +1 -1
  205. package/dist/forms/Form/types.js.map +1 -1
  206. package/dist/forms/RenderFields/index.scss +7 -4
  207. package/dist/forms/RowLabel/Context/index.d.ts +2 -2
  208. package/dist/forms/RowLabel/Context/index.d.ts.map +1 -1
  209. package/dist/forms/RowLabel/Context/index.js.map +1 -1
  210. package/dist/forms/buildStateFromSchema/addFieldStatePromise.d.ts.map +1 -1
  211. package/dist/forms/buildStateFromSchema/addFieldStatePromise.js +1 -1
  212. package/dist/forms/buildStateFromSchema/addFieldStatePromise.js.map +1 -1
  213. package/dist/forms/buildStateFromSchema/buildStateFromSchema.spec.js +1 -1
  214. package/dist/forms/buildStateFromSchema/buildStateFromSchema.spec.js.map +1 -1
  215. package/dist/forms/buildStateFromSchema/getFilterOptionsQuery.d.ts +2 -2
  216. package/dist/forms/buildStateFromSchema/getFilterOptionsQuery.d.ts.map +1 -1
  217. package/dist/forms/buildStateFromSchema/getFilterOptionsQuery.js.map +1 -1
  218. package/dist/hooks/useHotkey.js +1 -1
  219. package/dist/hooks/useHotkey.js.map +1 -1
  220. package/dist/hooks/useIntersect.js +1 -1
  221. package/dist/hooks/useIntersect.js.map +1 -1
  222. package/dist/hooks/usePayloadAPI.js +1 -1
  223. package/dist/hooks/usePayloadAPI.js.map +1 -1
  224. package/dist/hooks/useThrottledEffect.d.ts.map +1 -1
  225. package/dist/hooks/useThrottledEffect.js +1 -1
  226. package/dist/hooks/useThrottledEffect.js.map +1 -1
  227. package/dist/providers/Auth/index.js +1 -1
  228. package/dist/providers/Auth/index.js.map +1 -1
  229. package/dist/providers/ComponentMap/buildComponentMap/actions.d.ts.map +1 -1
  230. package/dist/providers/ComponentMap/buildComponentMap/actions.js +3 -3
  231. package/dist/providers/ComponentMap/buildComponentMap/actions.js.map +1 -1
  232. package/dist/providers/ComponentMap/buildComponentMap/collections.d.ts.map +1 -1
  233. package/dist/providers/ComponentMap/buildComponentMap/collections.js +8 -8
  234. package/dist/providers/ComponentMap/buildComponentMap/collections.js.map +1 -1
  235. package/dist/providers/ComponentMap/buildComponentMap/fields.d.ts.map +1 -1
  236. package/dist/providers/ComponentMap/buildComponentMap/fields.js +1 -0
  237. package/dist/providers/ComponentMap/buildComponentMap/fields.js.map +1 -1
  238. package/dist/providers/ComponentMap/buildComponentMap/index.js +2 -2
  239. package/dist/providers/ComponentMap/buildComponentMap/index.js.map +1 -1
  240. package/dist/providers/ComponentMap/buildComponentMap/types.d.ts +2 -2
  241. package/dist/providers/ComponentMap/buildComponentMap/types.d.ts.map +1 -1
  242. package/dist/providers/ComponentMap/buildComponentMap/types.js.map +1 -1
  243. package/dist/providers/DocumentInfo/index.d.ts +2 -2
  244. package/dist/providers/DocumentInfo/index.d.ts.map +1 -1
  245. package/dist/providers/DocumentInfo/index.js +2 -2
  246. package/dist/providers/DocumentInfo/index.js.map +1 -1
  247. package/dist/providers/DocumentInfo/types.d.ts +6 -6
  248. package/dist/providers/DocumentInfo/types.d.ts.map +1 -1
  249. package/dist/providers/DocumentInfo/types.js.map +1 -1
  250. package/dist/providers/ListInfo/index.d.ts +2 -2
  251. package/dist/providers/ListInfo/index.d.ts.map +1 -1
  252. package/dist/providers/ListInfo/index.js.map +1 -1
  253. package/dist/providers/ListQuery/index.d.ts +2 -2
  254. package/dist/providers/ListQuery/index.d.ts.map +1 -1
  255. package/dist/providers/ListQuery/index.js +1 -1
  256. package/dist/providers/ListQuery/index.js.map +1 -1
  257. package/dist/providers/SearchParams/index.d.ts +1 -1
  258. package/dist/providers/SearchParams/index.d.ts.map +1 -1
  259. package/dist/providers/SearchParams/index.js +1 -1
  260. package/dist/providers/SearchParams/index.js.map +1 -1
  261. package/dist/providers/Selection/index.js +1 -1
  262. package/dist/providers/Selection/index.js.map +1 -1
  263. package/dist/providers/ToastContainer/icons/Error.js +2 -2
  264. package/dist/providers/ToastContainer/icons/Error.js.map +1 -1
  265. package/dist/providers/ToastContainer/icons/Info.js +2 -2
  266. package/dist/providers/ToastContainer/icons/Info.js.map +1 -1
  267. package/dist/providers/ToastContainer/icons/Success.js +2 -2
  268. package/dist/providers/ToastContainer/icons/Success.js.map +1 -1
  269. package/dist/providers/ToastContainer/icons/Warning.js +2 -2
  270. package/dist/providers/ToastContainer/icons/Warning.js.map +1 -1
  271. package/dist/providers/ToastContainer/index.d.ts.map +1 -1
  272. package/dist/providers/ToastContainer/index.js +3 -1
  273. package/dist/providers/ToastContainer/index.js.map +1 -1
  274. package/dist/scss/app.scss +2 -2
  275. package/dist/scss/colors.scss +76 -76
  276. package/dist/scss/toasts.scss +67 -44
  277. package/dist/styles.css +1 -1
  278. package/dist/utilities/api.d.ts +2 -2
  279. package/dist/utilities/api.d.ts.map +1 -1
  280. package/dist/utilities/api.js +1 -1
  281. package/dist/utilities/api.js.map +1 -1
  282. package/dist/utilities/buildFormState.d.ts.map +1 -1
  283. package/dist/utilities/buildFormState.js +1 -3
  284. package/dist/utilities/buildFormState.js.map +1 -1
  285. package/dist/utilities/reduceFieldsToValuesWithValidation.js +1 -1
  286. package/dist/utilities/reduceFieldsToValuesWithValidation.js.map +1 -1
  287. package/package.json +16 -25
  288. package/dist/exports/client/chunk-3X2D2TP2.js +0 -30
  289. package/dist/forms/Form/getDataByPath.d.ts +0 -3
  290. package/dist/forms/Form/getDataByPath.d.ts.map +0 -1
  291. package/dist/forms/Form/getDataByPath.js +0 -18
  292. package/dist/forms/Form/getDataByPath.js.map +0 -1
  293. package/dist/forms/Form/getSiblingData.d.ts +0 -3
  294. package/dist/forms/Form/getSiblingData.d.ts.map +0 -1
  295. package/dist/forms/Form/getSiblingData.js +0 -33
  296. package/dist/forms/Form/getSiblingData.js.map +0 -1
  297. package/dist/utilities/reduceFieldsToValues.d.ts +0 -10
  298. package/dist/utilities/reduceFieldsToValues.d.ts.map +0 -1
  299. package/dist/utilities/reduceFieldsToValues.js +0 -22
  300. package/dist/utilities/reduceFieldsToValues.js.map +0 -1
  301. package/dist/utilities/unflatten.d.ts +0 -9
  302. package/dist/utilities/unflatten.d.ts.map +0 -1
  303. package/dist/utilities/unflatten.js +0 -58
  304. package/dist/utilities/unflatten.js.map +0 -1
  305. /package/dist/exports/client/{DatePicker-BN5AOAME.js.map → DatePicker-5IFHNQHA.js.map} +0 -0
@@ -1,11 +1,11 @@
1
1
  import React from 'react';
2
2
  import type { FormFieldBase } from '../index.js';
3
- export type HiddenInputFieldProps = FormFieldBase & {
3
+ export type HiddenInputFieldProps = {
4
4
  disableModifyingForm?: false;
5
5
  forceUsePathFromProps?: boolean;
6
6
  name?: string;
7
7
  path?: string;
8
8
  value?: unknown;
9
- };
9
+ } & FormFieldBase;
10
10
  export declare const HiddenField: React.FC<HiddenInputFieldProps>;
11
11
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fields/Hidden/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAoB,MAAM,OAAO,CAAA;AAExC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAMhD,MAAM,MAAM,qBAAqB,GAAG,aAAa,GAAG;IAClD,oBAAoB,CAAC,EAAE,KAAK,CAAA;IAC5B,qBAAqB,CAAC,EAAE,OAAO,CAAA;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB,CAAA;AAsCD,eAAO,MAAM,WAAW,iCAA8B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fields/Hidden/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAoB,MAAM,OAAO,CAAA;AAExC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAMhD,MAAM,MAAM,qBAAqB,GAAG;IAClC,oBAAoB,CAAC,EAAE,KAAK,CAAA;IAC5B,qBAAqB,CAAC,EAAE,OAAO,CAAA;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB,GAAG,aAAa,CAAA;AAsCjB,eAAO,MAAM,WAAW,iCAA8B,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/fields/Hidden/index.tsx"],"sourcesContent":["'use client'\nimport React, { useEffect } from 'react'\n\nimport type { FormFieldBase } from '../index.js'\n\nimport { useFieldProps } from '../../forms/FieldPropsProvider/index.js'\nimport { useField } from '../../forms/useField/index.js'\nimport { withCondition } from '../../forms/withCondition/index.js'\n\nexport type HiddenInputFieldProps = FormFieldBase & {\n disableModifyingForm?: false\n forceUsePathFromProps?: boolean\n name?: string\n path?: string\n value?: unknown\n}\n\n/**\n * This is mainly used to save a value on the form that is not visible to the user.\n * For example, this sets the `ìd` property of a block in the Blocks field.\n */\nconst _HiddenField: React.FC<HiddenInputFieldProps> = (props) => {\n const {\n name,\n disableModifyingForm = true,\n forceUsePathFromProps,\n path: pathFromProps,\n value: valueFromProps,\n } = props\n\n const { path: pathFromContext } = useFieldProps()\n\n const { path, setValue, value } = useField({\n path: (!forceUsePathFromProps ? pathFromContext : null) || pathFromProps || name,\n })\n\n useEffect(() => {\n if (valueFromProps !== undefined) {\n setValue(valueFromProps, disableModifyingForm)\n }\n }, [valueFromProps, setValue, disableModifyingForm])\n\n return (\n <input\n id={`field-${path?.replace(/\\./g, '__')}`}\n name={path}\n onChange={setValue}\n type=\"hidden\"\n value={(value as string) || ''}\n />\n )\n}\n\nexport const HiddenField = withCondition(_HiddenField)\n"],"names":["React","useEffect","useFieldProps","useField","withCondition","_HiddenField","props","name","disableModifyingForm","forceUsePathFromProps","path","pathFromProps","value","valueFromProps","pathFromContext","setValue","undefined","input","id","replace","onChange","type","HiddenField"],"mappings":"AAAA;;AACA,OAAOA,SAASC,SAAS,QAAQ,QAAO;AAIxC,SAASC,aAAa,QAAQ,0CAAyC;AACvE,SAASC,QAAQ,QAAQ,gCAA+B;AACxD,SAASC,aAAa,QAAQ,qCAAoC;AAUlE;;;CAGC,GACD,MAAMC,eAAgD,CAACC;IACrD,MAAM,EACJC,IAAI,EACJC,uBAAuB,IAAI,EAC3BC,qBAAqB,EACrBC,MAAMC,aAAa,EACnBC,OAAOC,cAAc,EACtB,GAAGP;IAEJ,MAAM,EAAEI,MAAMI,eAAe,EAAE,GAAGZ;IAElC,MAAM,EAAEQ,IAAI,EAAEK,QAAQ,EAAEH,KAAK,EAAE,GAAGT,SAAS;QACzCO,MAAM,AAAC,CAAA,CAACD,wBAAwBK,kBAAkB,IAAG,KAAMH,iBAAiBJ;IAC9E;IAEAN,UAAU;QACR,IAAIY,mBAAmBG,WAAW;YAChCD,SAASF,gBAAgBL;QAC3B;IACF,GAAG;QAACK;QAAgBE;QAAUP;KAAqB;IAEnD,qBACE,KAACS;QACCC,IAAI,CAAC,MAAM,EAAER,MAAMS,QAAQ,OAAO,MAAM,CAAC;QACzCZ,MAAMG;QACNU,UAAUL;QACVM,MAAK;QACLT,OAAO,AAACA,SAAoB;;AAGlC;AAEA,OAAO,MAAMU,cAAclB,cAAcC,cAAa"}
1
+ {"version":3,"sources":["../../../src/fields/Hidden/index.tsx"],"sourcesContent":["'use client'\nimport React, { useEffect } from 'react'\n\nimport type { FormFieldBase } from '../index.js'\n\nimport { useFieldProps } from '../../forms/FieldPropsProvider/index.js'\nimport { useField } from '../../forms/useField/index.js'\nimport { withCondition } from '../../forms/withCondition/index.js'\n\nexport type HiddenInputFieldProps = {\n disableModifyingForm?: false\n forceUsePathFromProps?: boolean\n name?: string\n path?: string\n value?: unknown\n} & FormFieldBase\n\n/**\n * This is mainly used to save a value on the form that is not visible to the user.\n * For example, this sets the `ìd` property of a block in the Blocks field.\n */\nconst _HiddenField: React.FC<HiddenInputFieldProps> = (props) => {\n const {\n name,\n disableModifyingForm = true,\n forceUsePathFromProps,\n path: pathFromProps,\n value: valueFromProps,\n } = props\n\n const { path: pathFromContext } = useFieldProps()\n\n const { path, setValue, value } = useField({\n path: (!forceUsePathFromProps ? pathFromContext : null) || pathFromProps || name,\n })\n\n useEffect(() => {\n if (valueFromProps !== undefined) {\n setValue(valueFromProps, disableModifyingForm)\n }\n }, [valueFromProps, setValue, disableModifyingForm])\n\n return (\n <input\n id={`field-${path?.replace(/\\./g, '__')}`}\n name={path}\n onChange={setValue}\n type=\"hidden\"\n value={(value as string) || ''}\n />\n )\n}\n\nexport const HiddenField = withCondition(_HiddenField)\n"],"names":["React","useEffect","useFieldProps","useField","withCondition","_HiddenField","props","name","disableModifyingForm","forceUsePathFromProps","path","pathFromProps","value","valueFromProps","pathFromContext","setValue","undefined","input","id","replace","onChange","type","HiddenField"],"mappings":"AAAA;;AACA,OAAOA,SAASC,SAAS,QAAQ,QAAO;AAIxC,SAASC,aAAa,QAAQ,0CAAyC;AACvE,SAASC,QAAQ,QAAQ,gCAA+B;AACxD,SAASC,aAAa,QAAQ,qCAAoC;AAUlE;;;CAGC,GACD,MAAMC,eAAgD,CAACC;IACrD,MAAM,EACJC,IAAI,EACJC,uBAAuB,IAAI,EAC3BC,qBAAqB,EACrBC,MAAMC,aAAa,EACnBC,OAAOC,cAAc,EACtB,GAAGP;IAEJ,MAAM,EAAEI,MAAMI,eAAe,EAAE,GAAGZ;IAElC,MAAM,EAAEQ,IAAI,EAAEK,QAAQ,EAAEH,KAAK,EAAE,GAAGT,SAAS;QACzCO,MAAM,AAAC,CAAA,CAACD,wBAAwBK,kBAAkB,IAAG,KAAMH,iBAAiBJ;IAC9E;IAEAN,UAAU;QACR,IAAIY,mBAAmBG,WAAW;YAChCD,SAASF,gBAAgBL;QAC3B;IACF,GAAG;QAACK;QAAgBE;QAAUP;KAAqB;IAEnD,qBACE,KAACS;QACCC,IAAI,CAAC,MAAM,EAAER,MAAMS,QAAQ,OAAO,MAAM,CAAC;QACzCZ,MAAMG;QACNU,UAAUL;QACVM,MAAK;QACLT,OAAO,AAACA,SAAoB;;AAGlC;AAEA,OAAO,MAAMU,cAAclB,cAAcC,cAAa"}
@@ -2,12 +2,12 @@ import type { JSONField as JSONFieldType } from 'payload';
2
2
  import React from 'react';
3
3
  import './index.scss';
4
4
  import type { FormFieldBase } from '../shared/index.js';
5
- export type JSONFieldProps = FormFieldBase & {
5
+ export type JSONFieldProps = {
6
6
  editorOptions?: JSONFieldType['admin']['editorOptions'];
7
7
  jsonSchema?: Record<string, unknown>;
8
8
  name?: string;
9
9
  path?: string;
10
10
  width?: string;
11
- };
11
+ } & FormFieldBase;
12
12
  export declare const JSONField: React.FC<JSONFieldProps>;
13
13
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fields/JSON/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAkB,SAAS,IAAI,aAAa,EAAE,MAAM,SAAS,CAAA;AAEzE,OAAO,KAA2C,MAAM,OAAO,CAAA;AAO/D,OAAO,cAAc,CAAA;AAIrB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAMvD,MAAM,MAAM,cAAc,GAAG,aAAa,GAAG;IAC3C,aAAa,CAAC,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC,eAAe,CAAC,CAAA;IACvD,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACpC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA;AAyID,eAAO,MAAM,SAAS,0BAA4B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fields/JSON/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAkB,SAAS,IAAI,aAAa,EAAE,MAAM,SAAS,CAAA;AAEzE,OAAO,KAA2C,MAAM,OAAO,CAAA;AAO/D,OAAO,cAAc,CAAA;AAIrB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAMvD,MAAM,MAAM,cAAc,GAAG;IAC3B,aAAa,CAAC,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC,eAAe,CAAC,CAAA;IACvD,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACpC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,GAAG,aAAa,CAAA;AAwIjB,eAAO,MAAM,SAAS,0BAA4B,CAAA"}
@@ -94,11 +94,6 @@ const _JSONField = (props)=>{
94
94
  required: required,
95
95
  ...labelProps || {}
96
96
  }),
97
- /*#__PURE__*/ _jsx(FieldError, {
98
- CustomError: CustomError,
99
- path: path,
100
- ...errorProps || {}
101
- }),
102
97
  /*#__PURE__*/ _jsxs("div", {
103
98
  className: `${fieldBaseClass}__wrap`,
104
99
  children: [
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/fields/JSON/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientValidate, JSONField as JSONFieldType } from 'payload'\n\nimport React, { useCallback, useEffect, useState } from 'react'\n\nimport { CodeEditor } from '../../elements/CodeEditor/index.js'\nimport { useField } from '../../forms/useField/index.js'\nimport { withCondition } from '../../forms/withCondition/index.js'\nimport { FieldLabel } from '../FieldLabel/index.js'\nimport { fieldBaseClass } from '../shared/index.js'\nimport './index.scss'\n\nconst baseClass = 'json-field'\n\nimport type { FormFieldBase } from '../shared/index.js'\n\nimport { useFieldProps } from '../../forms/FieldPropsProvider/index.js'\nimport { FieldDescription } from '../FieldDescription/index.js'\nimport { FieldError } from '../FieldError/index.js'\n\nexport type JSONFieldProps = FormFieldBase & {\n editorOptions?: JSONFieldType['admin']['editorOptions']\n jsonSchema?: Record<string, unknown>\n name?: string\n path?: string\n width?: string\n}\n\nconst _JSONField: React.FC<JSONFieldProps> = (props) => {\n const {\n name,\n AfterInput,\n BeforeInput,\n CustomDescription,\n CustomError,\n CustomLabel,\n className,\n descriptionProps,\n editorOptions,\n errorProps,\n jsonSchema,\n label,\n labelProps,\n path: pathFromProps,\n readOnly: readOnlyFromProps,\n required,\n style,\n validate,\n width,\n } = props\n\n const [stringValue, setStringValue] = useState<string>()\n const [jsonError, setJsonError] = useState<string>()\n const [hasLoadedValue, setHasLoadedValue] = useState(false)\n\n const memoizedValidate: ClientValidate = useCallback(\n (value, options) => {\n if (typeof validate === 'function')\n return validate(value, { ...options, jsonError, required })\n },\n [validate, required, jsonError],\n )\n\n const { path: pathFromContext, readOnly: readOnlyFromContext } = useFieldProps()\n\n const { formInitializing, formProcessing, initialValue, path, setValue, showError, value } =\n useField<string>({\n path: pathFromContext ?? pathFromProps ?? name,\n validate: memoizedValidate,\n })\n\n const disabled = readOnlyFromProps || readOnlyFromContext || formProcessing || formInitializing\n\n const handleMount = useCallback(\n (editor, monaco) => {\n if (!jsonSchema) return\n\n const existingSchemas = monaco.languages.json.jsonDefaults.diagnosticsOptions.schemas || []\n const modelUri = monaco.Uri.parse(jsonSchema.uri)\n\n const model = monaco.editor.createModel(JSON.stringify(value, null, 2), 'json', modelUri)\n monaco.languages.json.jsonDefaults.setDiagnosticsOptions({\n enableSchemaRequest: true,\n schemas: [...existingSchemas, jsonSchema],\n validate: true,\n })\n\n editor.setModel(model)\n },\n [jsonSchema, value],\n )\n\n const handleChange = useCallback(\n (val) => {\n if (disabled) return\n setStringValue(val)\n\n try {\n setValue(val ? JSON.parse(val) : null)\n setJsonError(undefined)\n } catch (e) {\n setValue(val ? val : null)\n setJsonError(e)\n }\n },\n [disabled, setValue, setStringValue],\n )\n\n useEffect(() => {\n if (hasLoadedValue || value === undefined) return\n\n setStringValue(\n value || initialValue ? JSON.stringify(value ? value : initialValue, null, 2) : '',\n )\n\n setHasLoadedValue(true)\n }, [initialValue, value, hasLoadedValue])\n\n return (\n <div\n className={[\n fieldBaseClass,\n baseClass,\n className,\n showError && 'error',\n disabled && 'read-only',\n ]\n .filter(Boolean)\n .join(' ')}\n style={{\n ...style,\n width,\n }}\n >\n <FieldLabel\n CustomLabel={CustomLabel}\n label={label}\n required={required}\n {...(labelProps || {})}\n />\n <FieldError CustomError={CustomError} path={path} {...(errorProps || {})} />\n <div className={`${fieldBaseClass}__wrap`}>\n <FieldError CustomError={CustomError} path={path} {...(errorProps || {})} />\n {BeforeInput}\n <CodeEditor\n defaultLanguage=\"json\"\n onChange={handleChange}\n onMount={handleMount}\n options={editorOptions}\n readOnly={disabled}\n value={stringValue}\n />\n {AfterInput}\n </div>\n {CustomDescription !== undefined ? (\n CustomDescription\n ) : (\n <FieldDescription {...(descriptionProps || {})} />\n )}\n </div>\n )\n}\n\nexport const JSONField = withCondition(_JSONField)\n"],"names":["React","useCallback","useEffect","useState","CodeEditor","useField","withCondition","FieldLabel","fieldBaseClass","baseClass","useFieldProps","FieldDescription","FieldError","_JSONField","props","name","AfterInput","BeforeInput","CustomDescription","CustomError","CustomLabel","className","descriptionProps","editorOptions","errorProps","jsonSchema","label","labelProps","path","pathFromProps","readOnly","readOnlyFromProps","required","style","validate","width","stringValue","setStringValue","jsonError","setJsonError","hasLoadedValue","setHasLoadedValue","memoizedValidate","value","options","pathFromContext","readOnlyFromContext","formInitializing","formProcessing","initialValue","setValue","showError","disabled","handleMount","editor","monaco","existingSchemas","languages","json","jsonDefaults","diagnosticsOptions","schemas","modelUri","Uri","parse","uri","model","createModel","JSON","stringify","setDiagnosticsOptions","enableSchemaRequest","setModel","handleChange","val","undefined","e","div","filter","Boolean","join","defaultLanguage","onChange","onMount","JSONField"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/fields/JSON/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientValidate, JSONField as JSONFieldType } from 'payload'\n\nimport React, { useCallback, useEffect, useState } from 'react'\n\nimport { CodeEditor } from '../../elements/CodeEditor/index.js'\nimport { useField } from '../../forms/useField/index.js'\nimport { withCondition } from '../../forms/withCondition/index.js'\nimport { FieldLabel } from '../FieldLabel/index.js'\nimport { fieldBaseClass } from '../shared/index.js'\nimport './index.scss'\n\nconst baseClass = 'json-field'\n\nimport type { FormFieldBase } from '../shared/index.js'\n\nimport { useFieldProps } from '../../forms/FieldPropsProvider/index.js'\nimport { FieldDescription } from '../FieldDescription/index.js'\nimport { FieldError } from '../FieldError/index.js'\n\nexport type JSONFieldProps = {\n editorOptions?: JSONFieldType['admin']['editorOptions']\n jsonSchema?: Record<string, unknown>\n name?: string\n path?: string\n width?: string\n} & FormFieldBase\n\nconst _JSONField: React.FC<JSONFieldProps> = (props) => {\n const {\n name,\n AfterInput,\n BeforeInput,\n CustomDescription,\n CustomError,\n CustomLabel,\n className,\n descriptionProps,\n editorOptions,\n errorProps,\n jsonSchema,\n label,\n labelProps,\n path: pathFromProps,\n readOnly: readOnlyFromProps,\n required,\n style,\n validate,\n width,\n } = props\n\n const [stringValue, setStringValue] = useState<string>()\n const [jsonError, setJsonError] = useState<string>()\n const [hasLoadedValue, setHasLoadedValue] = useState(false)\n\n const memoizedValidate: ClientValidate = useCallback(\n (value, options) => {\n if (typeof validate === 'function')\n return validate(value, { ...options, jsonError, required })\n },\n [validate, required, jsonError],\n )\n\n const { path: pathFromContext, readOnly: readOnlyFromContext } = useFieldProps()\n\n const { formInitializing, formProcessing, initialValue, path, setValue, showError, value } =\n useField<string>({\n path: pathFromContext ?? pathFromProps ?? name,\n validate: memoizedValidate,\n })\n\n const disabled = readOnlyFromProps || readOnlyFromContext || formProcessing || formInitializing\n\n const handleMount = useCallback(\n (editor, monaco) => {\n if (!jsonSchema) return\n\n const existingSchemas = monaco.languages.json.jsonDefaults.diagnosticsOptions.schemas || []\n const modelUri = monaco.Uri.parse(jsonSchema.uri)\n\n const model = monaco.editor.createModel(JSON.stringify(value, null, 2), 'json', modelUri)\n monaco.languages.json.jsonDefaults.setDiagnosticsOptions({\n enableSchemaRequest: true,\n schemas: [...existingSchemas, jsonSchema],\n validate: true,\n })\n\n editor.setModel(model)\n },\n [jsonSchema, value],\n )\n\n const handleChange = useCallback(\n (val) => {\n if (disabled) return\n setStringValue(val)\n\n try {\n setValue(val ? JSON.parse(val) : null)\n setJsonError(undefined)\n } catch (e) {\n setValue(val ? val : null)\n setJsonError(e)\n }\n },\n [disabled, setValue, setStringValue],\n )\n\n useEffect(() => {\n if (hasLoadedValue || value === undefined) return\n\n setStringValue(\n value || initialValue ? JSON.stringify(value ? value : initialValue, null, 2) : '',\n )\n\n setHasLoadedValue(true)\n }, [initialValue, value, hasLoadedValue])\n\n return (\n <div\n className={[\n fieldBaseClass,\n baseClass,\n className,\n showError && 'error',\n disabled && 'read-only',\n ]\n .filter(Boolean)\n .join(' ')}\n style={{\n ...style,\n width,\n }}\n >\n <FieldLabel\n CustomLabel={CustomLabel}\n label={label}\n required={required}\n {...(labelProps || {})}\n />\n <div className={`${fieldBaseClass}__wrap`}>\n <FieldError CustomError={CustomError} path={path} {...(errorProps || {})} />\n {BeforeInput}\n <CodeEditor\n defaultLanguage=\"json\"\n onChange={handleChange}\n onMount={handleMount}\n options={editorOptions}\n readOnly={disabled}\n value={stringValue}\n />\n {AfterInput}\n </div>\n {CustomDescription !== undefined ? (\n CustomDescription\n ) : (\n <FieldDescription {...(descriptionProps || {})} />\n )}\n </div>\n )\n}\n\nexport const JSONField = withCondition(_JSONField)\n"],"names":["React","useCallback","useEffect","useState","CodeEditor","useField","withCondition","FieldLabel","fieldBaseClass","baseClass","useFieldProps","FieldDescription","FieldError","_JSONField","props","name","AfterInput","BeforeInput","CustomDescription","CustomError","CustomLabel","className","descriptionProps","editorOptions","errorProps","jsonSchema","label","labelProps","path","pathFromProps","readOnly","readOnlyFromProps","required","style","validate","width","stringValue","setStringValue","jsonError","setJsonError","hasLoadedValue","setHasLoadedValue","memoizedValidate","value","options","pathFromContext","readOnlyFromContext","formInitializing","formProcessing","initialValue","setValue","showError","disabled","handleMount","editor","monaco","existingSchemas","languages","json","jsonDefaults","diagnosticsOptions","schemas","modelUri","Uri","parse","uri","model","createModel","JSON","stringify","setDiagnosticsOptions","enableSchemaRequest","setModel","handleChange","val","undefined","e","div","filter","Boolean","join","defaultLanguage","onChange","onMount","JSONField"],"mappings":"AAAA;;AAGA,OAAOA,SAASC,WAAW,EAAEC,SAAS,EAAEC,QAAQ,QAAQ,QAAO;AAE/D,SAASC,UAAU,QAAQ,qCAAoC;AAC/D,SAASC,QAAQ,QAAQ,gCAA+B;AACxD,SAASC,aAAa,QAAQ,qCAAoC;AAClE,SAASC,UAAU,QAAQ,yBAAwB;AACnD,SAASC,cAAc,QAAQ,qBAAoB;AACnD,OAAO,eAAc;AAErB,MAAMC,YAAY;AAIlB,SAASC,aAAa,QAAQ,0CAAyC;AACvE,SAASC,gBAAgB,QAAQ,+BAA8B;AAC/D,SAASC,UAAU,QAAQ,yBAAwB;AAUnD,MAAMC,aAAuC,CAACC;IAC5C,MAAM,EACJC,IAAI,EACJC,UAAU,EACVC,WAAW,EACXC,iBAAiB,EACjBC,WAAW,EACXC,WAAW,EACXC,SAAS,EACTC,gBAAgB,EAChBC,aAAa,EACbC,UAAU,EACVC,UAAU,EACVC,KAAK,EACLC,UAAU,EACVC,MAAMC,aAAa,EACnBC,UAAUC,iBAAiB,EAC3BC,QAAQ,EACRC,KAAK,EACLC,QAAQ,EACRC,KAAK,EACN,GAAGrB;IAEJ,MAAM,CAACsB,aAAaC,eAAe,GAAGlC;IACtC,MAAM,CAACmC,WAAWC,aAAa,GAAGpC;IAClC,MAAM,CAACqC,gBAAgBC,kBAAkB,GAAGtC,SAAS;IAErD,MAAMuC,mBAAmCzC,YACvC,CAAC0C,OAAOC;QACN,IAAI,OAAOV,aAAa,YACtB,OAAOA,SAASS,OAAO;YAAE,GAAGC,OAAO;YAAEN;YAAWN;QAAS;IAC7D,GACA;QAACE;QAAUF;QAAUM;KAAU;IAGjC,MAAM,EAAEV,MAAMiB,eAAe,EAAEf,UAAUgB,mBAAmB,EAAE,GAAGpC;IAEjE,MAAM,EAAEqC,gBAAgB,EAAEC,cAAc,EAAEC,YAAY,EAAErB,IAAI,EAAEsB,QAAQ,EAAEC,SAAS,EAAER,KAAK,EAAE,GACxFtC,SAAiB;QACfuB,MAAMiB,mBAAmBhB,iBAAiBd;QAC1CmB,UAAUQ;IACZ;IAEF,MAAMU,WAAWrB,qBAAqBe,uBAAuBE,kBAAkBD;IAE/E,MAAMM,cAAcpD,YAClB,CAACqD,QAAQC;QACP,IAAI,CAAC9B,YAAY;QAEjB,MAAM+B,kBAAkBD,OAAOE,SAAS,CAACC,IAAI,CAACC,YAAY,CAACC,kBAAkB,CAACC,OAAO,IAAI,EAAE;QAC3F,MAAMC,WAAWP,OAAOQ,GAAG,CAACC,KAAK,CAACvC,WAAWwC,GAAG;QAEhD,MAAMC,QAAQX,OAAOD,MAAM,CAACa,WAAW,CAACC,KAAKC,SAAS,CAAC1B,OAAO,MAAM,IAAI,QAAQmB;QAChFP,OAAOE,SAAS,CAACC,IAAI,CAACC,YAAY,CAACW,qBAAqB,CAAC;YACvDC,qBAAqB;YACrBV,SAAS;mBAAIL;gBAAiB/B;aAAW;YACzCS,UAAU;QACZ;QAEAoB,OAAOkB,QAAQ,CAACN;IAClB,GACA;QAACzC;QAAYkB;KAAM;IAGrB,MAAM8B,eAAexE,YACnB,CAACyE;QACC,IAAItB,UAAU;QACdf,eAAeqC;QAEf,IAAI;YACFxB,SAASwB,MAAMN,KAAKJ,KAAK,CAACU,OAAO;YACjCnC,aAAaoC;QACf,EAAE,OAAOC,GAAG;YACV1B,SAASwB,MAAMA,MAAM;YACrBnC,aAAaqC;QACf;IACF,GACA;QAACxB;QAAUF;QAAUb;KAAe;IAGtCnC,UAAU;QACR,IAAIsC,kBAAkBG,UAAUgC,WAAW;QAE3CtC,eACEM,SAASM,eAAemB,KAAKC,SAAS,CAAC1B,QAAQA,QAAQM,cAAc,MAAM,KAAK;QAGlFR,kBAAkB;IACpB,GAAG;QAACQ;QAAcN;QAAOH;KAAe;IAExC,qBACE,MAACqC;QACCxD,WAAW;YACTb;YACAC;YACAY;YACA8B,aAAa;YACbC,YAAY;SACb,CACE0B,MAAM,CAACC,SACPC,IAAI,CAAC;QACR/C,OAAO;YACL,GAAGA,KAAK;YACRE;QACF;;0BAEA,KAAC5B;gBACCa,aAAaA;gBACbM,OAAOA;gBACPM,UAAUA;gBACT,GAAIL,cAAc,CAAC,CAAC;;0BAEvB,MAACkD;gBAAIxD,WAAW,CAAC,EAAEb,eAAe,MAAM,CAAC;;kCACvC,KAACI;wBAAWO,aAAaA;wBAAaS,MAAMA;wBAAO,GAAIJ,cAAc,CAAC,CAAC;;oBACtEP;kCACD,KAACb;wBACC6E,iBAAgB;wBAChBC,UAAUT;wBACVU,SAAS9B;wBACTT,SAASrB;wBACTO,UAAUsB;wBACVT,OAAOP;;oBAERpB;;;YAEFE,sBAAsByD,YACrBzD,kCAEA,KAACP;gBAAkB,GAAIW,oBAAoB,CAAC,CAAC;;;;AAIrD;AAEA,OAAO,MAAM8D,YAAY9E,cAAcO,YAAW"}
@@ -2,34 +2,15 @@
2
2
 
3
3
  .json-field {
4
4
  position: relative;
5
- }
6
-
7
- html[data-theme='light'] {
8
- .json-field {
9
- &.error {
10
- .code-editor {
11
- border-color: var(--theme-error-500);
12
- }
13
5
 
14
- .monaco-editor-background,
15
- .margin {
16
- background-color: var(--theme-error-50);
17
- }
6
+ &.error {
7
+ .code-editor {
8
+ border-color: var(--theme-error-500);
18
9
  }
19
- }
20
- }
21
-
22
- html[data-theme='dark'] {
23
- .json-field {
24
- &.error {
25
- .code-editor {
26
- border-color: var(--theme-error-500);
27
- }
28
10
 
29
- .monaco-editor-background,
30
- .margin {
31
- background-color: var(--theme-error-100);
32
- }
11
+ .monaco-editor-background,
12
+ .margin {
13
+ background-color: var(--theme-error-50);
33
14
  }
34
15
  }
35
16
  }
@@ -2,7 +2,7 @@ import type { NumberField as NumberFieldType } from 'payload';
2
2
  import React from 'react';
3
3
  import type { FormFieldBase } from '../shared/index.js';
4
4
  import './index.scss';
5
- export type NumberFieldProps = FormFieldBase & {
5
+ export type NumberFieldProps = {
6
6
  hasMany?: boolean;
7
7
  max?: number;
8
8
  maxRows?: number;
@@ -13,6 +13,6 @@ export type NumberFieldProps = FormFieldBase & {
13
13
  placeholder?: NumberFieldType['admin']['placeholder'];
14
14
  step?: number;
15
15
  width?: string;
16
- };
16
+ } & FormFieldBase;
17
17
  export declare const NumberField: React.FC<NumberFieldProps>;
18
18
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fields/Number/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,IAAI,eAAe,EAAE,MAAM,SAAS,CAAA;AAI7D,OAAO,KAA2C,MAAM,OAAO,CAAA;AAG/D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAWvD,OAAO,cAAc,CAAA;AAErB,MAAM,MAAM,gBAAgB,GAAG,aAAa,GAAG;IAC7C,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC,aAAa,CAAC,CAAA;IACrD,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA;AAmMD,eAAO,MAAM,WAAW,4BAA8B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fields/Number/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,IAAI,eAAe,EAAE,MAAM,SAAS,CAAA;AAI7D,OAAO,KAA2C,MAAM,OAAO,CAAA;AAG/D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAWvD,OAAO,cAAc,CAAA;AAErB,MAAM,MAAM,gBAAgB,GAAG;IAC7B,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC,aAAa,CAAC,CAAA;IACrD,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,GAAG,aAAa,CAAA;AAiMjB,eAAO,MAAM,WAAW,4BAA8B,CAAA"}
@@ -1,4 +1,4 @@
1
- /* eslint-disable react/destructuring-assignment */ 'use client';
1
+ 'use client';
2
2
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  import { getTranslation } from '@payloadcms/translations';
4
4
  import { isNumber } from 'payload/shared';
@@ -121,7 +121,6 @@ const _NumberField = (props)=>{
121
121
  className: `field-${path.replace(/\./g, '__')}`,
122
122
  disabled: disabled,
123
123
  filterOption: (_, rawInput)=>{
124
- // eslint-disable-next-line no-restricted-globals
125
124
  const isOverHasMany = Array.isArray(value) && value.length >= maxRows;
126
125
  return isNumber(rawInput) && !isOverHasMany;
127
126
  },
@@ -156,7 +155,6 @@ const _NumberField = (props)=>{
156
155
  name: path,
157
156
  onChange: handleChange,
158
157
  onWheel: (e)=>{
159
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
160
158
  // @ts-expect-error
161
159
  e.target.blur();
162
160
  },
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/fields/Number/index.tsx"],"sourcesContent":["/* eslint-disable react/destructuring-assignment */\n'use client'\nimport type { NumberField as NumberFieldType } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { isNumber } from 'payload/shared'\nimport React, { useCallback, useEffect, useState } from 'react'\n\nimport type { Option } from '../../elements/ReactSelect/types.js'\nimport type { FormFieldBase } from '../shared/index.js'\n\nimport { ReactSelect } from '../../elements/ReactSelect/index.js'\nimport { useFieldProps } from '../../forms/FieldPropsProvider/index.js'\nimport { useField } from '../../forms/useField/index.js'\nimport { withCondition } from '../../forms/withCondition/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { FieldDescription } from '../FieldDescription/index.js'\nimport { FieldError } from '../FieldError/index.js'\nimport { FieldLabel } from '../FieldLabel/index.js'\nimport { fieldBaseClass } from '../shared/index.js'\nimport './index.scss'\n\nexport type NumberFieldProps = FormFieldBase & {\n hasMany?: boolean\n max?: number\n maxRows?: number\n min?: number\n name?: string\n onChange?: (e: number) => void\n path?: string\n placeholder?: NumberFieldType['admin']['placeholder']\n step?: number\n width?: string\n}\n\nconst _NumberField: React.FC<NumberFieldProps> = (props) => {\n const {\n name,\n AfterInput,\n BeforeInput,\n CustomDescription,\n CustomError,\n CustomLabel,\n className,\n descriptionProps,\n errorProps,\n hasMany = false,\n label,\n labelProps,\n max = Infinity,\n maxRows = Infinity,\n min = -Infinity,\n onChange: onChangeFromProps,\n path: pathFromProps,\n placeholder,\n readOnly: readOnlyFromProps,\n required,\n step = 1,\n style,\n validate,\n width,\n } = props\n\n const { i18n, t } = useTranslation()\n\n const memoizedValidate = useCallback(\n (value, options) => {\n if (typeof validate === 'function') {\n return validate(value, { ...options, max, min, required })\n }\n },\n [validate, min, max, required],\n )\n\n const { path: pathFromContext, readOnly: readOnlyFromContext } = useFieldProps()\n\n const { formInitializing, formProcessing, path, setValue, showError, value } = useField<\n number | number[]\n >({\n path: pathFromContext ?? pathFromProps ?? name,\n validate: memoizedValidate,\n })\n\n const disabled = readOnlyFromProps || readOnlyFromContext || formProcessing || formInitializing\n\n const handleChange = useCallback(\n (e) => {\n const val = parseFloat(e.target.value)\n let newVal = val\n\n if (Number.isNaN(val)) {\n newVal = undefined\n }\n\n if (typeof onChangeFromProps === 'function') {\n onChangeFromProps(newVal)\n }\n\n setValue(newVal)\n },\n [onChangeFromProps, setValue],\n )\n\n const [valueToRender, setValueToRender] = useState<\n { id: string; label: string; value: { value: number } }[]\n >([]) // Only for hasMany\n\n const handleHasManyChange = useCallback(\n (selectedOption) => {\n if (!disabled) {\n let newValue\n if (!selectedOption) {\n newValue = []\n } else if (Array.isArray(selectedOption)) {\n newValue = selectedOption.map((option) => Number(option.value?.value || option.value))\n } else {\n newValue = [Number(selectedOption.value?.value || selectedOption.value)]\n }\n\n setValue(newValue)\n }\n },\n [disabled, setValue],\n )\n\n // useEffect update valueToRender:\n useEffect(() => {\n if (hasMany && Array.isArray(value)) {\n setValueToRender(\n value.map((val, index) => {\n return {\n id: `${val}${index}`, // append index to avoid duplicate keys but allow duplicate numbers\n label: `${val}`,\n value: {\n toString: () => `${val}${index}`,\n value: (val as unknown as Record<string, number>)?.value || val,\n }, // You're probably wondering, why the hell is this done that way? Well, React-select automatically uses \"label-value\" as a key, so we will get that react duplicate key warning if we just pass in the value as multiple values can be the same. So we need to append the index to the toString() of the value to avoid that warning, as it uses that as the key.\n }\n }),\n )\n }\n }, [value, hasMany])\n\n return (\n <div\n className={[\n fieldBaseClass,\n 'number',\n className,\n showError && 'error',\n disabled && 'read-only',\n hasMany && 'has-many',\n ]\n .filter(Boolean)\n .join(' ')}\n style={{\n ...style,\n width,\n }}\n >\n <FieldLabel\n CustomLabel={CustomLabel}\n label={label}\n required={required}\n {...(labelProps || {})}\n />\n <div className={`${fieldBaseClass}__wrap`}>\n <FieldError CustomError={CustomError} path={path} {...(errorProps || {})} />\n {hasMany ? (\n <ReactSelect\n className={`field-${path.replace(/\\./g, '__')}`}\n disabled={disabled}\n filterOption={(_, rawInput) => {\n // eslint-disable-next-line no-restricted-globals\n const isOverHasMany = Array.isArray(value) && value.length >= maxRows\n return isNumber(rawInput) && !isOverHasMany\n }}\n isClearable\n isCreatable\n isMulti\n isSortable\n noOptionsMessage={() => {\n const isOverHasMany = Array.isArray(value) && value.length >= maxRows\n if (isOverHasMany) {\n return t('validation:limitReached', { max: maxRows, value: value.length + 1 })\n }\n return null\n }}\n // numberOnly\n onChange={handleHasManyChange}\n options={[]}\n placeholder={t('general:enterAValue')}\n showError={showError}\n value={valueToRender as Option[]}\n />\n ) : (\n <div>\n {BeforeInput}\n <input\n disabled={disabled}\n id={`field-${path.replace(/\\./g, '__')}`}\n max={max}\n min={min}\n name={path}\n onChange={handleChange}\n onWheel={(e) => {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-expect-error\n e.target.blur()\n }}\n placeholder={getTranslation(placeholder, i18n)}\n step={step}\n type=\"number\"\n value={typeof value === 'number' ? value : ''}\n />\n {AfterInput}\n </div>\n )}\n {CustomDescription !== undefined ? (\n CustomDescription\n ) : (\n <FieldDescription {...(descriptionProps || {})} />\n )}\n </div>\n </div>\n )\n}\n\nexport const NumberField = withCondition(_NumberField)\n"],"names":["getTranslation","isNumber","React","useCallback","useEffect","useState","ReactSelect","useFieldProps","useField","withCondition","useTranslation","FieldDescription","FieldError","FieldLabel","fieldBaseClass","_NumberField","props","name","AfterInput","BeforeInput","CustomDescription","CustomError","CustomLabel","className","descriptionProps","errorProps","hasMany","label","labelProps","max","Infinity","maxRows","min","onChange","onChangeFromProps","path","pathFromProps","placeholder","readOnly","readOnlyFromProps","required","step","style","validate","width","i18n","t","memoizedValidate","value","options","pathFromContext","readOnlyFromContext","formInitializing","formProcessing","setValue","showError","disabled","handleChange","e","val","parseFloat","target","newVal","Number","isNaN","undefined","valueToRender","setValueToRender","handleHasManyChange","selectedOption","newValue","Array","isArray","map","option","index","id","toString","div","filter","Boolean","join","replace","filterOption","_","rawInput","isOverHasMany","length","isClearable","isCreatable","isMulti","isSortable","noOptionsMessage","input","onWheel","blur","type","NumberField"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/fields/Number/index.tsx"],"sourcesContent":["'use client'\nimport type { NumberField as NumberFieldType } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { isNumber } from 'payload/shared'\nimport React, { useCallback, useEffect, useState } from 'react'\n\nimport type { Option } from '../../elements/ReactSelect/types.js'\nimport type { FormFieldBase } from '../shared/index.js'\n\nimport { ReactSelect } from '../../elements/ReactSelect/index.js'\nimport { useFieldProps } from '../../forms/FieldPropsProvider/index.js'\nimport { useField } from '../../forms/useField/index.js'\nimport { withCondition } from '../../forms/withCondition/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { FieldDescription } from '../FieldDescription/index.js'\nimport { FieldError } from '../FieldError/index.js'\nimport { FieldLabel } from '../FieldLabel/index.js'\nimport { fieldBaseClass } from '../shared/index.js'\nimport './index.scss'\n\nexport type NumberFieldProps = {\n hasMany?: boolean\n max?: number\n maxRows?: number\n min?: number\n name?: string\n onChange?: (e: number) => void\n path?: string\n placeholder?: NumberFieldType['admin']['placeholder']\n step?: number\n width?: string\n} & FormFieldBase\n\nconst _NumberField: React.FC<NumberFieldProps> = (props) => {\n const {\n name,\n AfterInput,\n BeforeInput,\n CustomDescription,\n CustomError,\n CustomLabel,\n className,\n descriptionProps,\n errorProps,\n hasMany = false,\n label,\n labelProps,\n max = Infinity,\n maxRows = Infinity,\n min = -Infinity,\n onChange: onChangeFromProps,\n path: pathFromProps,\n placeholder,\n readOnly: readOnlyFromProps,\n required,\n step = 1,\n style,\n validate,\n width,\n } = props\n\n const { i18n, t } = useTranslation()\n\n const memoizedValidate = useCallback(\n (value, options) => {\n if (typeof validate === 'function') {\n return validate(value, { ...options, max, min, required })\n }\n },\n [validate, min, max, required],\n )\n\n const { path: pathFromContext, readOnly: readOnlyFromContext } = useFieldProps()\n\n const { formInitializing, formProcessing, path, setValue, showError, value } = useField<\n number | number[]\n >({\n path: pathFromContext ?? pathFromProps ?? name,\n validate: memoizedValidate,\n })\n\n const disabled = readOnlyFromProps || readOnlyFromContext || formProcessing || formInitializing\n\n const handleChange = useCallback(\n (e) => {\n const val = parseFloat(e.target.value)\n let newVal = val\n\n if (Number.isNaN(val)) {\n newVal = undefined\n }\n\n if (typeof onChangeFromProps === 'function') {\n onChangeFromProps(newVal)\n }\n\n setValue(newVal)\n },\n [onChangeFromProps, setValue],\n )\n\n const [valueToRender, setValueToRender] = useState<\n { id: string; label: string; value: { value: number } }[]\n >([]) // Only for hasMany\n\n const handleHasManyChange = useCallback(\n (selectedOption) => {\n if (!disabled) {\n let newValue\n if (!selectedOption) {\n newValue = []\n } else if (Array.isArray(selectedOption)) {\n newValue = selectedOption.map((option) => Number(option.value?.value || option.value))\n } else {\n newValue = [Number(selectedOption.value?.value || selectedOption.value)]\n }\n\n setValue(newValue)\n }\n },\n [disabled, setValue],\n )\n\n // useEffect update valueToRender:\n useEffect(() => {\n if (hasMany && Array.isArray(value)) {\n setValueToRender(\n value.map((val, index) => {\n return {\n id: `${val}${index}`, // append index to avoid duplicate keys but allow duplicate numbers\n label: `${val}`,\n value: {\n toString: () => `${val}${index}`,\n value: (val as unknown as Record<string, number>)?.value || val,\n }, // You're probably wondering, why the hell is this done that way? Well, React-select automatically uses \"label-value\" as a key, so we will get that react duplicate key warning if we just pass in the value as multiple values can be the same. So we need to append the index to the toString() of the value to avoid that warning, as it uses that as the key.\n }\n }),\n )\n }\n }, [value, hasMany])\n\n return (\n <div\n className={[\n fieldBaseClass,\n 'number',\n className,\n showError && 'error',\n disabled && 'read-only',\n hasMany && 'has-many',\n ]\n .filter(Boolean)\n .join(' ')}\n style={{\n ...style,\n width,\n }}\n >\n <FieldLabel\n CustomLabel={CustomLabel}\n label={label}\n required={required}\n {...(labelProps || {})}\n />\n <div className={`${fieldBaseClass}__wrap`}>\n <FieldError CustomError={CustomError} path={path} {...(errorProps || {})} />\n {hasMany ? (\n <ReactSelect\n className={`field-${path.replace(/\\./g, '__')}`}\n disabled={disabled}\n filterOption={(_, rawInput) => {\n const isOverHasMany = Array.isArray(value) && value.length >= maxRows\n return isNumber(rawInput) && !isOverHasMany\n }}\n isClearable\n isCreatable\n isMulti\n isSortable\n noOptionsMessage={() => {\n const isOverHasMany = Array.isArray(value) && value.length >= maxRows\n if (isOverHasMany) {\n return t('validation:limitReached', { max: maxRows, value: value.length + 1 })\n }\n return null\n }}\n // numberOnly\n onChange={handleHasManyChange}\n options={[]}\n placeholder={t('general:enterAValue')}\n showError={showError}\n value={valueToRender as Option[]}\n />\n ) : (\n <div>\n {BeforeInput}\n <input\n disabled={disabled}\n id={`field-${path.replace(/\\./g, '__')}`}\n max={max}\n min={min}\n name={path}\n onChange={handleChange}\n onWheel={(e) => {\n // @ts-expect-error\n e.target.blur()\n }}\n placeholder={getTranslation(placeholder, i18n)}\n step={step}\n type=\"number\"\n value={typeof value === 'number' ? value : ''}\n />\n {AfterInput}\n </div>\n )}\n {CustomDescription !== undefined ? (\n CustomDescription\n ) : (\n <FieldDescription {...(descriptionProps || {})} />\n )}\n </div>\n </div>\n )\n}\n\nexport const NumberField = withCondition(_NumberField)\n"],"names":["getTranslation","isNumber","React","useCallback","useEffect","useState","ReactSelect","useFieldProps","useField","withCondition","useTranslation","FieldDescription","FieldError","FieldLabel","fieldBaseClass","_NumberField","props","name","AfterInput","BeforeInput","CustomDescription","CustomError","CustomLabel","className","descriptionProps","errorProps","hasMany","label","labelProps","max","Infinity","maxRows","min","onChange","onChangeFromProps","path","pathFromProps","placeholder","readOnly","readOnlyFromProps","required","step","style","validate","width","i18n","t","memoizedValidate","value","options","pathFromContext","readOnlyFromContext","formInitializing","formProcessing","setValue","showError","disabled","handleChange","e","val","parseFloat","target","newVal","Number","isNaN","undefined","valueToRender","setValueToRender","handleHasManyChange","selectedOption","newValue","Array","isArray","map","option","index","id","toString","div","filter","Boolean","join","replace","filterOption","_","rawInput","isOverHasMany","length","isClearable","isCreatable","isMulti","isSortable","noOptionsMessage","input","onWheel","blur","type","NumberField"],"mappings":"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"}
@@ -2,7 +2,7 @@ import type { Description, Validate } from 'payload';
2
2
  import React from 'react';
3
3
  import type { FormFieldBase } from '../shared/index.js';
4
4
  import './index.scss';
5
- export type PasswordFieldProps = FormFieldBase & {
5
+ export type PasswordFieldProps = {
6
6
  autoComplete?: string;
7
7
  className?: string;
8
8
  description?: Description;
@@ -13,6 +13,6 @@ export type PasswordFieldProps = FormFieldBase & {
13
13
  style?: React.CSSProperties;
14
14
  validate?: Validate;
15
15
  width?: string;
16
- };
16
+ } & FormFieldBase;
17
17
  export declare const PasswordField: React.FC<PasswordFieldProps>;
18
18
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fields/Password/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAkB,WAAW,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAEpE,OAAO,KAAsB,MAAM,OAAO,CAAA;AAE1C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAOvD,OAAO,cAAc,CAAA;AAErB,MAAM,MAAM,kBAAkB,GAAG,aAAa,GAAG;IAC/C,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,WAAW,CAAC,EAAE,WAAW,CAAA;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAA;IAC3B,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA;AA0ED,eAAO,MAAM,aAAa,8BAAgC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fields/Password/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAkB,WAAW,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAEpE,OAAO,KAAsB,MAAM,OAAO,CAAA;AAE1C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAOvD,OAAO,cAAc,CAAA;AAErB,MAAM,MAAM,kBAAkB,GAAG;IAC/B,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,WAAW,CAAC,EAAE,WAAW,CAAA;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAA;IAC3B,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,GAAG,aAAa,CAAA;AA0EjB,eAAO,MAAM,aAAa,8BAAgC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/fields/Password/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientValidate, Description, Validate } from 'payload'\n\nimport React, { useCallback } from 'react'\n\nimport type { FormFieldBase } from '../shared/index.js'\n\nimport { useField } from '../../forms/useField/index.js'\nimport { withCondition } from '../../forms/withCondition/index.js'\nimport { FieldError } from '../FieldError/index.js'\nimport { FieldLabel } from '../FieldLabel/index.js'\nimport { fieldBaseClass } from '../shared/index.js'\nimport './index.scss'\n\nexport type PasswordFieldProps = FormFieldBase & {\n autoComplete?: string\n className?: string\n description?: Description\n disabled?: boolean\n name: string\n path?: string\n required?: boolean\n style?: React.CSSProperties\n validate?: Validate\n width?: string\n}\n\nconst _PasswordField: React.FC<PasswordFieldProps> = (props) => {\n const {\n name,\n CustomError,\n CustomLabel,\n autoComplete,\n className,\n disabled: disabledFromProps,\n errorProps,\n label,\n labelProps,\n path: pathFromProps,\n required,\n style,\n validate,\n width,\n } = props\n\n const memoizedValidate: ClientValidate = useCallback(\n (value, options) => {\n if (typeof validate === 'function') {\n return validate(value, { ...options, required })\n }\n },\n [validate, required],\n )\n\n const { formInitializing, formProcessing, path, setValue, showError, value } = useField({\n path: pathFromProps || name,\n validate: memoizedValidate,\n })\n\n const disabled = disabledFromProps || formInitializing || formProcessing\n\n return (\n <div\n className={[\n fieldBaseClass,\n 'password',\n className,\n showError && 'error',\n disabled && 'read-only',\n ]\n .filter(Boolean)\n .join(' ')}\n style={{\n ...style,\n width,\n }}\n >\n <FieldLabel\n CustomLabel={CustomLabel}\n label={label}\n required={required}\n {...(labelProps || {})}\n />\n <div className={`${fieldBaseClass}__wrap`}>\n <FieldError CustomError={CustomError} path={path} {...(errorProps || {})} />\n <input\n autoComplete={autoComplete}\n disabled={disabled}\n id={`field-${path.replace(/\\./g, '__')}`}\n name={path}\n onChange={setValue}\n type=\"password\"\n value={(value as string) || ''}\n />\n </div>\n </div>\n )\n}\n\nexport const PasswordField = withCondition(_PasswordField)\n"],"names":["React","useCallback","useField","withCondition","FieldError","FieldLabel","fieldBaseClass","_PasswordField","props","name","CustomError","CustomLabel","autoComplete","className","disabled","disabledFromProps","errorProps","label","labelProps","path","pathFromProps","required","style","validate","width","memoizedValidate","value","options","formInitializing","formProcessing","setValue","showError","div","filter","Boolean","join","input","id","replace","onChange","type","PasswordField"],"mappings":"AAAA;;AAGA,OAAOA,SAASC,WAAW,QAAQ,QAAO;AAI1C,SAASC,QAAQ,QAAQ,gCAA+B;AACxD,SAASC,aAAa,QAAQ,qCAAoC;AAClE,SAASC,UAAU,QAAQ,yBAAwB;AACnD,SAASC,UAAU,QAAQ,yBAAwB;AACnD,SAASC,cAAc,QAAQ,qBAAoB;AACnD,OAAO,eAAc;AAerB,MAAMC,iBAA+C,CAACC;IACpD,MAAM,EACJC,IAAI,EACJC,WAAW,EACXC,WAAW,EACXC,YAAY,EACZC,SAAS,EACTC,UAAUC,iBAAiB,EAC3BC,UAAU,EACVC,KAAK,EACLC,UAAU,EACVC,MAAMC,aAAa,EACnBC,QAAQ,EACRC,KAAK,EACLC,QAAQ,EACRC,KAAK,EACN,GAAGhB;IAEJ,MAAMiB,mBAAmCxB,YACvC,CAACyB,OAAOC;QACN,IAAI,OAAOJ,aAAa,YAAY;YAClC,OAAOA,SAASG,OAAO;gBAAE,GAAGC,OAAO;gBAAEN;YAAS;QAChD;IACF,GACA;QAACE;QAAUF;KAAS;IAGtB,MAAM,EAAEO,gBAAgB,EAAEC,cAAc,EAAEV,IAAI,EAAEW,QAAQ,EAAEC,SAAS,EAAEL,KAAK,EAAE,GAAGxB,SAAS;QACtFiB,MAAMC,iBAAiBX;QACvBc,UAAUE;IACZ;IAEA,MAAMX,WAAWC,qBAAqBa,oBAAoBC;IAE1D,qBACE,MAACG;QACCnB,WAAW;YACTP;YACA;YACAO;YACAkB,aAAa;YACbjB,YAAY;SACb,CACEmB,MAAM,CAACC,SACPC,IAAI,CAAC;QACRb,OAAO;YACL,GAAGA,KAAK;YACRE;QACF;;0BAEA,KAACnB;gBACCM,aAAaA;gBACbM,OAAOA;gBACPI,UAAUA;gBACT,GAAIH,cAAc,CAAC,CAAC;;0BAEvB,MAACc;gBAAInB,WAAW,CAAC,EAAEP,eAAe,MAAM,CAAC;;kCACvC,KAACF;wBAAWM,aAAaA;wBAAaS,MAAMA;wBAAO,GAAIH,cAAc,CAAC,CAAC;;kCACvE,KAACoB;wBACCxB,cAAcA;wBACdE,UAAUA;wBACVuB,IAAI,CAAC,MAAM,EAAElB,KAAKmB,OAAO,CAAC,OAAO,MAAM,CAAC;wBACxC7B,MAAMU;wBACNoB,UAAUT;wBACVU,MAAK;wBACLd,OAAO,AAACA,SAAoB;;;;;;AAKtC;AAEA,OAAO,MAAMe,gBAAgBtC,cAAcI,gBAAe"}
1
+ {"version":3,"sources":["../../../src/fields/Password/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientValidate, Description, Validate } from 'payload'\n\nimport React, { useCallback } from 'react'\n\nimport type { FormFieldBase } from '../shared/index.js'\n\nimport { useField } from '../../forms/useField/index.js'\nimport { withCondition } from '../../forms/withCondition/index.js'\nimport { FieldError } from '../FieldError/index.js'\nimport { FieldLabel } from '../FieldLabel/index.js'\nimport { fieldBaseClass } from '../shared/index.js'\nimport './index.scss'\n\nexport type PasswordFieldProps = {\n autoComplete?: string\n className?: string\n description?: Description\n disabled?: boolean\n name: string\n path?: string\n required?: boolean\n style?: React.CSSProperties\n validate?: Validate\n width?: string\n} & FormFieldBase\n\nconst _PasswordField: React.FC<PasswordFieldProps> = (props) => {\n const {\n name,\n CustomError,\n CustomLabel,\n autoComplete,\n className,\n disabled: disabledFromProps,\n errorProps,\n label,\n labelProps,\n path: pathFromProps,\n required,\n style,\n validate,\n width,\n } = props\n\n const memoizedValidate: ClientValidate = useCallback(\n (value, options) => {\n if (typeof validate === 'function') {\n return validate(value, { ...options, required })\n }\n },\n [validate, required],\n )\n\n const { formInitializing, formProcessing, path, setValue, showError, value } = useField({\n path: pathFromProps || name,\n validate: memoizedValidate,\n })\n\n const disabled = disabledFromProps || formInitializing || formProcessing\n\n return (\n <div\n className={[\n fieldBaseClass,\n 'password',\n className,\n showError && 'error',\n disabled && 'read-only',\n ]\n .filter(Boolean)\n .join(' ')}\n style={{\n ...style,\n width,\n }}\n >\n <FieldLabel\n CustomLabel={CustomLabel}\n label={label}\n required={required}\n {...(labelProps || {})}\n />\n <div className={`${fieldBaseClass}__wrap`}>\n <FieldError CustomError={CustomError} path={path} {...(errorProps || {})} />\n <input\n autoComplete={autoComplete}\n disabled={disabled}\n id={`field-${path.replace(/\\./g, '__')}`}\n name={path}\n onChange={setValue}\n type=\"password\"\n value={(value as string) || ''}\n />\n </div>\n </div>\n )\n}\n\nexport const PasswordField = withCondition(_PasswordField)\n"],"names":["React","useCallback","useField","withCondition","FieldError","FieldLabel","fieldBaseClass","_PasswordField","props","name","CustomError","CustomLabel","autoComplete","className","disabled","disabledFromProps","errorProps","label","labelProps","path","pathFromProps","required","style","validate","width","memoizedValidate","value","options","formInitializing","formProcessing","setValue","showError","div","filter","Boolean","join","input","id","replace","onChange","type","PasswordField"],"mappings":"AAAA;;AAGA,OAAOA,SAASC,WAAW,QAAQ,QAAO;AAI1C,SAASC,QAAQ,QAAQ,gCAA+B;AACxD,SAASC,aAAa,QAAQ,qCAAoC;AAClE,SAASC,UAAU,QAAQ,yBAAwB;AACnD,SAASC,UAAU,QAAQ,yBAAwB;AACnD,SAASC,cAAc,QAAQ,qBAAoB;AACnD,OAAO,eAAc;AAerB,MAAMC,iBAA+C,CAACC;IACpD,MAAM,EACJC,IAAI,EACJC,WAAW,EACXC,WAAW,EACXC,YAAY,EACZC,SAAS,EACTC,UAAUC,iBAAiB,EAC3BC,UAAU,EACVC,KAAK,EACLC,UAAU,EACVC,MAAMC,aAAa,EACnBC,QAAQ,EACRC,KAAK,EACLC,QAAQ,EACRC,KAAK,EACN,GAAGhB;IAEJ,MAAMiB,mBAAmCxB,YACvC,CAACyB,OAAOC;QACN,IAAI,OAAOJ,aAAa,YAAY;YAClC,OAAOA,SAASG,OAAO;gBAAE,GAAGC,OAAO;gBAAEN;YAAS;QAChD;IACF,GACA;QAACE;QAAUF;KAAS;IAGtB,MAAM,EAAEO,gBAAgB,EAAEC,cAAc,EAAEV,IAAI,EAAEW,QAAQ,EAAEC,SAAS,EAAEL,KAAK,EAAE,GAAGxB,SAAS;QACtFiB,MAAMC,iBAAiBX;QACvBc,UAAUE;IACZ;IAEA,MAAMX,WAAWC,qBAAqBa,oBAAoBC;IAE1D,qBACE,MAACG;QACCnB,WAAW;YACTP;YACA;YACAO;YACAkB,aAAa;YACbjB,YAAY;SACb,CACEmB,MAAM,CAACC,SACPC,IAAI,CAAC;QACRb,OAAO;YACL,GAAGA,KAAK;YACRE;QACF;;0BAEA,KAACnB;gBACCM,aAAaA;gBACbM,OAAOA;gBACPI,UAAUA;gBACT,GAAIH,cAAc,CAAC,CAAC;;0BAEvB,MAACc;gBAAInB,WAAW,CAAC,EAAEP,eAAe,MAAM,CAAC;;kCACvC,KAACF;wBAAWM,aAAaA;wBAAaS,MAAMA;wBAAO,GAAIH,cAAc,CAAC,CAAC;;kCACvE,KAACoB;wBACCxB,cAAcA;wBACdE,UAAUA;wBACVuB,IAAI,CAAC,MAAM,EAAElB,KAAKmB,OAAO,CAAC,OAAO,MAAM,CAAC;wBACxC7B,MAAMU;wBACNoB,UAAUT;wBACVU,MAAK;wBACLd,OAAO,AAACA,SAAoB;;;;;;AAKtC;AAEA,OAAO,MAAMe,gBAAgBtC,cAAcI,gBAAe"}
@@ -1,13 +1,13 @@
1
1
  import React from 'react';
2
2
  import './index.scss';
3
3
  import type { FormFieldBase } from '../shared/index.js';
4
- export type PointFieldProps = FormFieldBase & {
4
+ export type PointFieldProps = {
5
5
  name?: string;
6
6
  path?: string;
7
7
  placeholder?: string;
8
8
  step?: number;
9
9
  width?: string;
10
- };
10
+ } & FormFieldBase;
11
11
  export declare const _PointField: React.FC<PointFieldProps>;
12
12
  export declare const PointField: React.FC<PointFieldProps>;
13
13
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fields/Point/index.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAsB,MAAM,OAAO,CAAA;AAM1C,OAAO,cAAc,CAAA;AAIrB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAOvD,MAAM,MAAM,eAAe,GAAG,aAAa,GAAG;IAC5C,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA;AAED,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CA0IjD,CAAA;AAED,eAAO,MAAM,UAAU,2BAA6B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fields/Point/index.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAsB,MAAM,OAAO,CAAA;AAM1C,OAAO,cAAc,CAAA;AAIrB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAOvD,MAAM,MAAM,eAAe,GAAG;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,GAAG,aAAa,CAAA;AAEjB,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CA0IjD,CAAA;AAED,eAAO,MAAM,UAAU,2BAA6B,CAAA"}
@@ -1,4 +1,4 @@
1
- /* eslint-disable react/destructuring-assignment */ 'use client';
1
+ 'use client';
2
2
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  import { getTranslation } from '@payloadcms/translations';
4
4
  import React, { useCallback } from 'react';
@@ -70,11 +70,6 @@ export const _PointField = (props)=>{
70
70
  width
71
71
  },
72
72
  children: [
73
- /*#__PURE__*/ _jsx(FieldError, {
74
- CustomError: CustomError,
75
- path: path,
76
- ...errorProps || {}
77
- }),
78
73
  /*#__PURE__*/ _jsxs("ul", {
79
74
  className: `${baseClass}__wrap`,
80
75
  children: [
@@ -110,6 +105,11 @@ export const _PointField = (props)=>{
110
105
  /*#__PURE__*/ _jsxs("div", {
111
106
  className: "input-wrapper",
112
107
  children: [
108
+ /*#__PURE__*/ _jsx(FieldError, {
109
+ CustomError: CustomError,
110
+ path: path,
111
+ ...errorProps || {}
112
+ }),
113
113
  BeforeInput,
114
114
  /*#__PURE__*/ _jsx("input", {
115
115
  disabled: readOnly,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/fields/Point/index.tsx"],"sourcesContent":["/* eslint-disable react/destructuring-assignment */\n'use client'\nimport type { ClientValidate } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport React, { useCallback } from 'react'\n\nimport { useField } from '../../forms/useField/index.js'\nimport { withCondition } from '../../forms/withCondition/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { fieldBaseClass } from '../shared/index.js'\nimport './index.scss'\n\nconst baseClass = 'point'\n\nimport type { FormFieldBase } from '../shared/index.js'\n\nimport { useFieldProps } from '../../forms/FieldPropsProvider/index.js'\nimport { FieldDescription } from '../FieldDescription/index.js'\nimport { FieldError } from '../FieldError/index.js'\nimport { FieldLabel } from '../FieldLabel/index.js'\n\nexport type PointFieldProps = FormFieldBase & {\n name?: string\n path?: string\n placeholder?: string\n step?: number\n width?: string\n}\n\nexport const _PointField: React.FC<PointFieldProps> = (props) => {\n const {\n name,\n AfterInput,\n BeforeInput,\n CustomDescription,\n CustomError,\n CustomLabel,\n className,\n descriptionProps,\n errorProps,\n label,\n labelProps,\n path: pathFromProps,\n placeholder,\n readOnly: readOnlyFromProps,\n required,\n step,\n style,\n validate,\n width,\n } = props\n\n const { i18n, t } = useTranslation()\n\n const memoizedValidate: ClientValidate = useCallback(\n (value, options) => {\n if (typeof validate === 'function') {\n return validate(value, { ...options, required })\n }\n },\n [validate, required],\n )\n\n const { path: pathFromContext, readOnly: readOnlyFromContext } = useFieldProps()\n const readOnly = readOnlyFromProps || readOnlyFromContext\n\n const {\n path,\n setValue,\n showError,\n value = [null, null],\n } = useField<[number, number]>({\n path: pathFromContext ?? pathFromProps ?? name,\n validate: memoizedValidate,\n })\n\n const handleChange = useCallback(\n (e, index: 0 | 1) => {\n let val = parseFloat(e.target.value)\n if (Number.isNaN(val)) {\n val = e.target.value\n }\n const coordinates = [...value]\n coordinates[index] = val\n setValue(coordinates)\n },\n [setValue, value],\n )\n\n const getCoordinateFieldLabel = (type: 'latitude' | 'longitude') => {\n const suffix = type === 'longitude' ? t('fields:longitude') : t('fields:latitude')\n const fieldLabel = label ? getTranslation(label, i18n) : ''\n\n return {\n ...labelProps,\n label: `${fieldLabel}${fieldLabel ? ' - ' : ''}${suffix}`,\n }\n }\n\n return (\n <div\n className={[\n fieldBaseClass,\n baseClass,\n className,\n showError && 'error',\n readOnly && 'read-only',\n ]\n .filter(Boolean)\n .join(' ')}\n style={{\n ...style,\n width,\n }}\n >\n <FieldError CustomError={CustomError} path={path} {...(errorProps || {})} />\n <ul className={`${baseClass}__wrap`}>\n <li>\n {CustomLabel !== undefined ? (\n CustomLabel\n ) : (\n <FieldLabel {...getCoordinateFieldLabel('longitude')} />\n )}\n <div className=\"input-wrapper\">\n {BeforeInput}\n <input\n disabled={readOnly}\n id={`field-longitude-${path.replace(/\\./g, '__')}`}\n name={`${path}.longitude`}\n onChange={(e) => handleChange(e, 0)}\n placeholder={getTranslation(placeholder, i18n)}\n step={step}\n type=\"number\"\n value={value && typeof value[0] === 'number' ? value[0] : ''}\n />\n {AfterInput}\n </div>\n </li>\n <li>\n {CustomLabel !== undefined ? (\n CustomLabel\n ) : (\n <FieldLabel {...getCoordinateFieldLabel('latitude')} />\n )}\n <div className=\"input-wrapper\">\n {BeforeInput}\n <input\n disabled={readOnly}\n id={`field-latitude-${path.replace(/\\./g, '__')}`}\n name={`${path}.latitude`}\n onChange={(e) => handleChange(e, 1)}\n placeholder={getTranslation(placeholder, i18n)}\n step={step}\n type=\"number\"\n value={value && typeof value[1] === 'number' ? value[1] : ''}\n />\n {AfterInput}\n </div>\n </li>\n </ul>\n {CustomDescription !== undefined ? (\n CustomDescription\n ) : (\n <FieldDescription {...(descriptionProps || {})} />\n )}\n </div>\n )\n}\n\nexport const PointField = withCondition(_PointField)\n"],"names":["getTranslation","React","useCallback","useField","withCondition","useTranslation","fieldBaseClass","baseClass","useFieldProps","FieldDescription","FieldError","FieldLabel","_PointField","props","name","AfterInput","BeforeInput","CustomDescription","CustomError","CustomLabel","className","descriptionProps","errorProps","label","labelProps","path","pathFromProps","placeholder","readOnly","readOnlyFromProps","required","step","style","validate","width","i18n","t","memoizedValidate","value","options","pathFromContext","readOnlyFromContext","setValue","showError","handleChange","e","index","val","parseFloat","target","Number","isNaN","coordinates","getCoordinateFieldLabel","type","suffix","fieldLabel","div","filter","Boolean","join","ul","li","undefined","input","disabled","id","replace","onChange","PointField"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/fields/Point/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientValidate } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport React, { useCallback } from 'react'\n\nimport { useField } from '../../forms/useField/index.js'\nimport { withCondition } from '../../forms/withCondition/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { fieldBaseClass } from '../shared/index.js'\nimport './index.scss'\n\nconst baseClass = 'point'\n\nimport type { FormFieldBase } from '../shared/index.js'\n\nimport { useFieldProps } from '../../forms/FieldPropsProvider/index.js'\nimport { FieldDescription } from '../FieldDescription/index.js'\nimport { FieldError } from '../FieldError/index.js'\nimport { FieldLabel } from '../FieldLabel/index.js'\n\nexport type PointFieldProps = {\n name?: string\n path?: string\n placeholder?: string\n step?: number\n width?: string\n} & FormFieldBase\n\nexport const _PointField: React.FC<PointFieldProps> = (props) => {\n const {\n name,\n AfterInput,\n BeforeInput,\n CustomDescription,\n CustomError,\n CustomLabel,\n className,\n descriptionProps,\n errorProps,\n label,\n labelProps,\n path: pathFromProps,\n placeholder,\n readOnly: readOnlyFromProps,\n required,\n step,\n style,\n validate,\n width,\n } = props\n\n const { i18n, t } = useTranslation()\n\n const memoizedValidate: ClientValidate = useCallback(\n (value, options) => {\n if (typeof validate === 'function') {\n return validate(value, { ...options, required })\n }\n },\n [validate, required],\n )\n\n const { path: pathFromContext, readOnly: readOnlyFromContext } = useFieldProps()\n const readOnly = readOnlyFromProps || readOnlyFromContext\n\n const {\n path,\n setValue,\n showError,\n value = [null, null],\n } = useField<[number, number]>({\n path: pathFromContext ?? pathFromProps ?? name,\n validate: memoizedValidate,\n })\n\n const handleChange = useCallback(\n (e, index: 0 | 1) => {\n let val = parseFloat(e.target.value)\n if (Number.isNaN(val)) {\n val = e.target.value\n }\n const coordinates = [...value]\n coordinates[index] = val\n setValue(coordinates)\n },\n [setValue, value],\n )\n\n const getCoordinateFieldLabel = (type: 'latitude' | 'longitude') => {\n const suffix = type === 'longitude' ? t('fields:longitude') : t('fields:latitude')\n const fieldLabel = label ? getTranslation(label, i18n) : ''\n\n return {\n ...labelProps,\n label: `${fieldLabel}${fieldLabel ? ' - ' : ''}${suffix}`,\n }\n }\n\n return (\n <div\n className={[\n fieldBaseClass,\n baseClass,\n className,\n showError && 'error',\n readOnly && 'read-only',\n ]\n .filter(Boolean)\n .join(' ')}\n style={{\n ...style,\n width,\n }}\n >\n <ul className={`${baseClass}__wrap`}>\n <li>\n {CustomLabel !== undefined ? (\n CustomLabel\n ) : (\n <FieldLabel {...getCoordinateFieldLabel('longitude')} />\n )}\n <div className=\"input-wrapper\">\n {BeforeInput}\n <input\n disabled={readOnly}\n id={`field-longitude-${path.replace(/\\./g, '__')}`}\n name={`${path}.longitude`}\n onChange={(e) => handleChange(e, 0)}\n placeholder={getTranslation(placeholder, i18n)}\n step={step}\n type=\"number\"\n value={value && typeof value[0] === 'number' ? value[0] : ''}\n />\n {AfterInput}\n </div>\n </li>\n <li>\n {CustomLabel !== undefined ? (\n CustomLabel\n ) : (\n <FieldLabel {...getCoordinateFieldLabel('latitude')} />\n )}\n <div className=\"input-wrapper\">\n <FieldError CustomError={CustomError} path={path} {...(errorProps || {})} />\n {BeforeInput}\n <input\n disabled={readOnly}\n id={`field-latitude-${path.replace(/\\./g, '__')}`}\n name={`${path}.latitude`}\n onChange={(e) => handleChange(e, 1)}\n placeholder={getTranslation(placeholder, i18n)}\n step={step}\n type=\"number\"\n value={value && typeof value[1] === 'number' ? value[1] : ''}\n />\n {AfterInput}\n </div>\n </li>\n </ul>\n {CustomDescription !== undefined ? (\n CustomDescription\n ) : (\n <FieldDescription {...(descriptionProps || {})} />\n )}\n </div>\n )\n}\n\nexport const PointField = withCondition(_PointField)\n"],"names":["getTranslation","React","useCallback","useField","withCondition","useTranslation","fieldBaseClass","baseClass","useFieldProps","FieldDescription","FieldError","FieldLabel","_PointField","props","name","AfterInput","BeforeInput","CustomDescription","CustomError","CustomLabel","className","descriptionProps","errorProps","label","labelProps","path","pathFromProps","placeholder","readOnly","readOnlyFromProps","required","step","style","validate","width","i18n","t","memoizedValidate","value","options","pathFromContext","readOnlyFromContext","setValue","showError","handleChange","e","index","val","parseFloat","target","Number","isNaN","coordinates","getCoordinateFieldLabel","type","suffix","fieldLabel","div","filter","Boolean","join","ul","li","undefined","input","disabled","id","replace","onChange","PointField"],"mappings":"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"}
@@ -3,6 +3,10 @@
3
3
  .point {
4
4
  position: relative;
5
5
 
6
+ & .input-wrapper {
7
+ position: relative;
8
+ }
9
+
6
10
  &__wrap {
7
11
  display: flex;
8
12
  width: calc(100% + #{base(1)});
@@ -2,7 +2,7 @@ import type { Option } from 'payload';
2
2
  import React from 'react';
3
3
  import './index.scss';
4
4
  import type { FormFieldBase } from '../shared/index.js';
5
- export type RadioFieldProps = FormFieldBase & {
5
+ export type RadioFieldProps = {
6
6
  layout?: 'horizontal' | 'vertical';
7
7
  name?: string;
8
8
  onChange?: OnChange;
@@ -10,7 +10,7 @@ export type RadioFieldProps = FormFieldBase & {
10
10
  path?: string;
11
11
  value?: string;
12
12
  width?: string;
13
- };
13
+ } & FormFieldBase;
14
14
  export type OnChange<T = string> = (value: T) => void;
15
15
  export declare const RadioGroupField: React.FC<RadioFieldProps>;
16
16
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fields/RadioGroup/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAGrC,OAAO,KAAsB,MAAM,OAAO,CAAA;AAQ1C,OAAO,cAAc,CAAA;AAIrB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAMvD,MAAM,MAAM,eAAe,GAAG,aAAa,GAAG;IAC5C,MAAM,CAAC,EAAE,YAAY,GAAG,UAAU,CAAA;IAClC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAClB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA;AAED,MAAM,MAAM,QAAQ,CAAC,CAAC,GAAG,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,CAAA;AA8HrD,eAAO,MAAM,eAAe,2BAAkC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fields/RadioGroup/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAGrC,OAAO,KAAsB,MAAM,OAAO,CAAA;AAQ1C,OAAO,cAAc,CAAA;AAIrB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAMvD,MAAM,MAAM,eAAe,GAAG;IAC5B,MAAM,CAAC,EAAE,YAAY,GAAG,UAAU,CAAA;IAClC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAClB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,GAAG,aAAa,CAAA;AAEjB,MAAM,MAAM,QAAQ,CAAC,CAAC,GAAG,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,CAAA;AA6HrD,eAAO,MAAM,eAAe,2BAAkC,CAAA"}
@@ -1,4 +1,4 @@
1
- /* eslint-disable react/destructuring-assignment */ /* eslint-disable react-hooks/exhaustive-deps */ 'use client';
1
+ 'use client';
2
2
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  import { optionIsObject } from 'payload/shared';
4
4
  import React, { useCallback } from 'react';
@@ -48,6 +48,12 @@ const _RadioGroupField = (props)=>{
48
48
  width
49
49
  },
50
50
  children: [
51
+ /*#__PURE__*/ _jsx(FieldError, {
52
+ CustomError: CustomError,
53
+ path: path,
54
+ ...errorProps || {},
55
+ alignCaret: "left"
56
+ }),
51
57
  /*#__PURE__*/ _jsx(FieldLabel, {
52
58
  CustomLabel: CustomLabel,
53
59
  label: label,
@@ -57,11 +63,6 @@ const _RadioGroupField = (props)=>{
57
63
  /*#__PURE__*/ _jsxs("div", {
58
64
  className: `${fieldBaseClass}__wrap`,
59
65
  children: [
60
- /*#__PURE__*/ _jsx(FieldError, {
61
- CustomError: CustomError,
62
- path: path,
63
- ...errorProps || {}
64
- }),
65
66
  /*#__PURE__*/ _jsx("ul", {
66
67
  className: `${baseClass}--group`,
67
68
  id: `field-${path.replace(/\./g, '__')}`,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/fields/RadioGroup/index.tsx"],"sourcesContent":["/* eslint-disable react/destructuring-assignment */\n/* eslint-disable react-hooks/exhaustive-deps */\n'use client'\nimport type { Option } from 'payload'\n\nimport { optionIsObject } from 'payload/shared'\nimport React, { useCallback } from 'react'\n\nimport { useForm } from '../../forms/Form/context.js'\nimport { useField } from '../../forms/useField/index.js'\nimport { withCondition } from '../../forms/withCondition/index.js'\nimport { FieldLabel } from '../FieldLabel/index.js'\nimport { fieldBaseClass } from '../shared/index.js'\nimport { Radio } from './Radio/index.js'\nimport './index.scss'\n\nconst baseClass = 'radio-group'\n\nimport type { FormFieldBase } from '../shared/index.js'\n\nimport { useFieldProps } from '../../forms/FieldPropsProvider/index.js'\nimport { FieldDescription } from '../FieldDescription/index.js'\nimport { FieldError } from '../FieldError/index.js'\n\nexport type RadioFieldProps = FormFieldBase & {\n layout?: 'horizontal' | 'vertical'\n name?: string\n onChange?: OnChange\n options?: Option[]\n path?: string\n value?: string\n width?: string\n}\n\nexport type OnChange<T = string> = (value: T) => void\n\nconst _RadioGroupField: React.FC<RadioFieldProps> = (props) => {\n const {\n name,\n CustomDescription,\n CustomError,\n CustomLabel,\n className,\n descriptionProps,\n errorProps,\n label,\n labelProps,\n layout = 'horizontal',\n onChange: onChangeFromProps,\n options = [],\n path: pathFromProps,\n readOnly: readOnlyFromProps,\n required,\n style,\n validate,\n value: valueFromProps,\n width,\n } = props\n\n const { uuid } = useForm()\n\n const memoizedValidate = useCallback(\n (value, validationOptions) => {\n if (typeof validate === 'function')\n return validate(value, { ...validationOptions, options, required })\n },\n [validate, options, required],\n )\n\n const { path: pathFromContext, readOnly: readOnlyFromContext } = useFieldProps()\n\n const {\n formInitializing,\n formProcessing,\n path,\n setValue,\n showError,\n value: valueFromContext,\n } = useField<string>({\n path: pathFromContext ?? pathFromProps ?? name,\n validate: memoizedValidate,\n })\n\n const disabled = readOnlyFromProps || readOnlyFromContext || formProcessing || formInitializing\n\n const value = valueFromContext || valueFromProps\n\n return (\n <div\n className={[\n fieldBaseClass,\n baseClass,\n className,\n `${baseClass}--layout-${layout}`,\n showError && 'error',\n disabled && `${baseClass}--read-only`,\n ]\n .filter(Boolean)\n .join(' ')}\n style={{\n ...style,\n width,\n }}\n >\n <FieldLabel\n CustomLabel={CustomLabel}\n label={label}\n required={required}\n {...(labelProps || {})}\n />\n <div className={`${fieldBaseClass}__wrap`}>\n <FieldError CustomError={CustomError} path={path} {...(errorProps || {})} />\n\n <ul className={`${baseClass}--group`} id={`field-${path.replace(/\\./g, '__')}`}>\n {options.map((option) => {\n let optionValue = ''\n\n if (optionIsObject(option)) {\n optionValue = option.value\n } else {\n optionValue = option\n }\n\n const isSelected = String(optionValue) === String(value)\n\n const id = `field-${path}-${optionValue}${uuid ? `-${uuid}` : ''}`\n\n return (\n <li key={`${path} - ${optionValue}`}>\n <Radio\n id={id}\n isSelected={isSelected}\n onChange={() => {\n if (typeof onChangeFromProps === 'function') {\n onChangeFromProps(optionValue)\n }\n\n if (!disabled) {\n setValue(optionValue)\n }\n }}\n option={optionIsObject(option) ? option : { label: option, value: option }}\n path={path}\n readOnly={disabled}\n uuid={uuid}\n />\n </li>\n )\n })}\n </ul>\n {CustomDescription !== undefined ? (\n CustomDescription\n ) : (\n <FieldDescription {...(descriptionProps || {})} />\n )}\n </div>\n </div>\n )\n}\n\nexport const RadioGroupField = withCondition(_RadioGroupField)\n"],"names":["optionIsObject","React","useCallback","useForm","useField","withCondition","FieldLabel","fieldBaseClass","Radio","baseClass","useFieldProps","FieldDescription","FieldError","_RadioGroupField","props","name","CustomDescription","CustomError","CustomLabel","className","descriptionProps","errorProps","label","labelProps","layout","onChange","onChangeFromProps","options","path","pathFromProps","readOnly","readOnlyFromProps","required","style","validate","value","valueFromProps","width","uuid","memoizedValidate","validationOptions","pathFromContext","readOnlyFromContext","formInitializing","formProcessing","setValue","showError","valueFromContext","disabled","div","filter","Boolean","join","ul","id","replace","map","option","optionValue","isSelected","String","li","undefined","RadioGroupField"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/fields/RadioGroup/index.tsx"],"sourcesContent":["'use client'\nimport type { Option } from 'payload'\n\nimport { optionIsObject } from 'payload/shared'\nimport React, { useCallback } from 'react'\n\nimport { useForm } from '../../forms/Form/context.js'\nimport { useField } from '../../forms/useField/index.js'\nimport { withCondition } from '../../forms/withCondition/index.js'\nimport { FieldLabel } from '../FieldLabel/index.js'\nimport { fieldBaseClass } from '../shared/index.js'\nimport { Radio } from './Radio/index.js'\nimport './index.scss'\n\nconst baseClass = 'radio-group'\n\nimport type { FormFieldBase } from '../shared/index.js'\n\nimport { useFieldProps } from '../../forms/FieldPropsProvider/index.js'\nimport { FieldDescription } from '../FieldDescription/index.js'\nimport { FieldError } from '../FieldError/index.js'\n\nexport type RadioFieldProps = {\n layout?: 'horizontal' | 'vertical'\n name?: string\n onChange?: OnChange\n options?: Option[]\n path?: string\n value?: string\n width?: string\n} & FormFieldBase\n\nexport type OnChange<T = string> = (value: T) => void\n\nconst _RadioGroupField: React.FC<RadioFieldProps> = (props) => {\n const {\n name,\n CustomDescription,\n CustomError,\n CustomLabel,\n className,\n descriptionProps,\n errorProps,\n label,\n labelProps,\n layout = 'horizontal',\n onChange: onChangeFromProps,\n options = [],\n path: pathFromProps,\n readOnly: readOnlyFromProps,\n required,\n style,\n validate,\n value: valueFromProps,\n width,\n } = props\n\n const { uuid } = useForm()\n\n const memoizedValidate = useCallback(\n (value, validationOptions) => {\n if (typeof validate === 'function')\n return validate(value, { ...validationOptions, options, required })\n },\n [validate, options, required],\n )\n\n const { path: pathFromContext, readOnly: readOnlyFromContext } = useFieldProps()\n\n const {\n formInitializing,\n formProcessing,\n path,\n setValue,\n showError,\n value: valueFromContext,\n } = useField<string>({\n path: pathFromContext ?? pathFromProps ?? name,\n validate: memoizedValidate,\n })\n\n const disabled = readOnlyFromProps || readOnlyFromContext || formProcessing || formInitializing\n\n const value = valueFromContext || valueFromProps\n\n return (\n <div\n className={[\n fieldBaseClass,\n baseClass,\n className,\n `${baseClass}--layout-${layout}`,\n showError && 'error',\n disabled && `${baseClass}--read-only`,\n ]\n .filter(Boolean)\n .join(' ')}\n style={{\n ...style,\n width,\n }}\n >\n <FieldError CustomError={CustomError} path={path} {...(errorProps || {})} alignCaret=\"left\" />\n <FieldLabel\n CustomLabel={CustomLabel}\n label={label}\n required={required}\n {...(labelProps || {})}\n />\n <div className={`${fieldBaseClass}__wrap`}>\n <ul className={`${baseClass}--group`} id={`field-${path.replace(/\\./g, '__')}`}>\n {options.map((option) => {\n let optionValue = ''\n\n if (optionIsObject(option)) {\n optionValue = option.value\n } else {\n optionValue = option\n }\n\n const isSelected = String(optionValue) === String(value)\n\n const id = `field-${path}-${optionValue}${uuid ? `-${uuid}` : ''}`\n\n return (\n <li key={`${path} - ${optionValue}`}>\n <Radio\n id={id}\n isSelected={isSelected}\n onChange={() => {\n if (typeof onChangeFromProps === 'function') {\n onChangeFromProps(optionValue)\n }\n\n if (!disabled) {\n setValue(optionValue)\n }\n }}\n option={optionIsObject(option) ? option : { label: option, value: option }}\n path={path}\n readOnly={disabled}\n uuid={uuid}\n />\n </li>\n )\n })}\n </ul>\n {CustomDescription !== undefined ? (\n CustomDescription\n ) : (\n <FieldDescription {...(descriptionProps || {})} />\n )}\n </div>\n </div>\n )\n}\n\nexport const RadioGroupField = withCondition(_RadioGroupField)\n"],"names":["optionIsObject","React","useCallback","useForm","useField","withCondition","FieldLabel","fieldBaseClass","Radio","baseClass","useFieldProps","FieldDescription","FieldError","_RadioGroupField","props","name","CustomDescription","CustomError","CustomLabel","className","descriptionProps","errorProps","label","labelProps","layout","onChange","onChangeFromProps","options","path","pathFromProps","readOnly","readOnlyFromProps","required","style","validate","value","valueFromProps","width","uuid","memoizedValidate","validationOptions","pathFromContext","readOnlyFromContext","formInitializing","formProcessing","setValue","showError","valueFromContext","disabled","div","filter","Boolean","join","alignCaret","ul","id","replace","map","option","optionValue","isSelected","String","li","undefined","RadioGroupField"],"mappings":"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"}
@@ -1,6 +1,13 @@
1
1
  @import '../../scss/styles.scss';
2
2
 
3
3
  .radio-group {
4
+ .tooltip:not([aria-hidden='true']) {
5
+ right: auto;
6
+ position: static;
7
+ margin-bottom: 0.2em;
8
+ max-width: fit-content;
9
+ }
10
+
4
11
  &--layout-horizontal {
5
12
  ul {
6
13
  display: flex;
@@ -1,7 +1,7 @@
1
1
  'use client';
2
2
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  import { wordBoundariesRegex } from 'payload/shared';
4
- import qs from 'qs';
4
+ import * as qs from 'qs-esm';
5
5
  import React, { useCallback, useEffect, useReducer, useRef, useState } from 'react';
6
6
  import { ReactSelect } from '../../elements/ReactSelect/index.js';
7
7
  import { useFieldProps } from '../../forms/FieldPropsProvider/index.js';