@payloadcms/ui 3.25.0-canary.fd53f68 → 3.26.0-canary.bbb3083

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 (118) hide show
  1. package/dist/elements/AppHeader/index.d.ts.map +1 -1
  2. package/dist/elements/AppHeader/index.js +2 -3
  3. package/dist/elements/AppHeader/index.js.map +1 -1
  4. package/dist/elements/Autosave/index.d.ts.map +1 -1
  5. package/dist/elements/Autosave/index.js +13 -2
  6. package/dist/elements/Autosave/index.js.map +1 -1
  7. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.d.ts.map +1 -1
  8. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js +10 -30
  9. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js.map +1 -1
  10. package/dist/elements/BulkUpload/FormsManager/createFormData.d.ts +3 -2
  11. package/dist/elements/BulkUpload/FormsManager/createFormData.d.ts.map +1 -1
  12. package/dist/elements/BulkUpload/FormsManager/createFormData.js +19 -2
  13. package/dist/elements/BulkUpload/FormsManager/createFormData.js.map +1 -1
  14. package/dist/elements/BulkUpload/FormsManager/index.d.ts.map +1 -1
  15. package/dist/elements/BulkUpload/FormsManager/index.js +10 -3
  16. package/dist/elements/BulkUpload/FormsManager/index.js.map +1 -1
  17. package/dist/elements/DeleteMany/index.d.ts.map +1 -1
  18. package/dist/elements/DeleteMany/index.js +2 -2
  19. package/dist/elements/DeleteMany/index.js.map +1 -1
  20. package/dist/elements/DeleteMany/index.scss +16 -0
  21. package/dist/elements/EditMany/index.d.ts.map +1 -1
  22. package/dist/elements/EditMany/index.js +22 -14
  23. package/dist/elements/EditMany/index.js.map +1 -1
  24. package/dist/elements/EditMany/index.scss +5 -19
  25. package/dist/elements/Link/index.d.ts +9 -1
  26. package/dist/elements/Link/index.d.ts.map +1 -1
  27. package/dist/elements/Link/index.js +6 -0
  28. package/dist/elements/Link/index.js.map +1 -1
  29. package/dist/elements/ListControls/index.d.ts +8 -0
  30. package/dist/elements/ListControls/index.d.ts.map +1 -1
  31. package/dist/elements/ListControls/index.js +4 -20
  32. package/dist/elements/ListControls/index.js.map +1 -1
  33. package/dist/elements/ListDrawer/DrawerContent.d.ts.map +1 -1
  34. package/dist/elements/ListDrawer/DrawerContent.js +2 -1
  35. package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
  36. package/dist/elements/ListDrawer/Provider.d.ts +7 -1
  37. package/dist/elements/ListDrawer/Provider.d.ts.map +1 -1
  38. package/dist/elements/ListDrawer/Provider.js.map +1 -1
  39. package/dist/elements/ListSelection/index.d.ts +4 -0
  40. package/dist/elements/ListSelection/index.d.ts.map +1 -1
  41. package/dist/elements/ListSelection/index.js +44 -23
  42. package/dist/elements/ListSelection/index.js.map +1 -1
  43. package/dist/elements/ListSelection/index.scss +4 -0
  44. package/dist/elements/Logout/index.d.ts.map +1 -1
  45. package/dist/elements/Logout/index.js +4 -9
  46. package/dist/elements/Logout/index.js.map +1 -1
  47. package/dist/elements/PublishMany/index.d.ts +1 -0
  48. package/dist/elements/PublishMany/index.d.ts.map +1 -1
  49. package/dist/elements/PublishMany/index.js +3 -2
  50. package/dist/elements/PublishMany/index.js.map +1 -1
  51. package/dist/elements/PublishMany/index.scss +21 -0
  52. package/dist/elements/TableColumns/RenderDefaultCell/index.d.ts.map +1 -1
  53. package/dist/elements/TableColumns/RenderDefaultCell/index.js +1 -0
  54. package/dist/elements/TableColumns/RenderDefaultCell/index.js.map +1 -1
  55. package/dist/elements/UnpublishMany/index.d.ts +1 -0
  56. package/dist/elements/UnpublishMany/index.d.ts.map +1 -1
  57. package/dist/elements/UnpublishMany/index.js +3 -2
  58. package/dist/elements/UnpublishMany/index.js.map +1 -1
  59. package/dist/elements/UnpublishMany/index.scss +21 -0
  60. package/dist/elements/WhereBuilder/field-types.d.ts.map +1 -1
  61. package/dist/elements/WhereBuilder/field-types.js +9 -5
  62. package/dist/elements/WhereBuilder/field-types.js.map +1 -1
  63. package/dist/elements/WhereBuilder/index.d.ts.map +1 -1
  64. package/dist/elements/WhereBuilder/index.js +11 -10
  65. package/dist/elements/WhereBuilder/index.js.map +1 -1
  66. package/dist/exports/client/index.d.ts +3 -1
  67. package/dist/exports/client/index.d.ts.map +1 -1
  68. package/dist/exports/client/index.js +23 -23
  69. package/dist/exports/client/index.js.map +4 -4
  70. package/dist/fields/JSON/index.d.ts.map +1 -1
  71. package/dist/fields/JSON/index.js +16 -12
  72. package/dist/fields/JSON/index.js.map +1 -1
  73. package/dist/fields/Upload/Input.js +13 -13
  74. package/dist/fields/Upload/Input.js.map +1 -1
  75. package/dist/forms/Form/context.d.ts +14 -4
  76. package/dist/forms/Form/context.d.ts.map +1 -1
  77. package/dist/forms/Form/context.js +16 -4
  78. package/dist/forms/Form/context.js.map +1 -1
  79. package/dist/forms/Form/fieldReducer.d.ts.map +1 -1
  80. package/dist/forms/Form/fieldReducer.js +30 -14
  81. package/dist/forms/Form/fieldReducer.js.map +1 -1
  82. package/dist/forms/Form/index.d.ts.map +1 -1
  83. package/dist/forms/Form/index.js +39 -10
  84. package/dist/forms/Form/index.js.map +1 -1
  85. package/dist/forms/Form/initContextState.d.ts.map +1 -1
  86. package/dist/forms/Form/initContextState.js +2 -0
  87. package/dist/forms/Form/initContextState.js.map +1 -1
  88. package/dist/forms/Form/types.d.ts +6 -1
  89. package/dist/forms/Form/types.d.ts.map +1 -1
  90. package/dist/forms/Form/types.js.map +1 -1
  91. package/dist/forms/Submit/index.d.ts.map +1 -1
  92. package/dist/forms/Submit/index.js +3 -2
  93. package/dist/forms/Submit/index.js.map +1 -1
  94. package/dist/forms/fieldSchemasToFormState/renderField.d.ts.map +1 -1
  95. package/dist/forms/fieldSchemasToFormState/renderField.js +2 -0
  96. package/dist/forms/fieldSchemasToFormState/renderField.js.map +1 -1
  97. package/dist/forms/useField/index.d.ts +1 -1
  98. package/dist/forms/useField/index.js +1 -1
  99. package/dist/forms/useField/index.js.map +1 -1
  100. package/dist/providers/Root/index.d.ts.map +1 -1
  101. package/dist/providers/Root/index.js +4 -1
  102. package/dist/providers/Root/index.js.map +1 -1
  103. package/dist/providers/UploadHandlers/index.d.ts +21 -0
  104. package/dist/providers/UploadHandlers/index.d.ts.map +1 -0
  105. package/dist/providers/UploadHandlers/index.js +72 -0
  106. package/dist/providers/UploadHandlers/index.js.map +1 -0
  107. package/dist/styles.css +1 -1
  108. package/dist/utilities/renderTable.d.ts.map +1 -1
  109. package/dist/utilities/renderTable.js +2 -1
  110. package/dist/utilities/renderTable.js.map +1 -1
  111. package/dist/views/List/ListHeader/index.d.ts +2 -0
  112. package/dist/views/List/ListHeader/index.d.ts.map +1 -1
  113. package/dist/views/List/ListHeader/index.js +5 -0
  114. package/dist/views/List/ListHeader/index.js.map +1 -1
  115. package/dist/views/List/index.d.ts.map +1 -1
  116. package/dist/views/List/index.js +8 -19
  117. package/dist/views/List/index.js.map +1 -1
  118. package/package.json +6 -6
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/forms/Form/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/forms/Form/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","names":[],"sources":["../../../src/forms/Form/types.ts"],"sourcesContent":["import type {\n ClientField,\n Data,\n FormField,\n FormState,\n Row,\n User,\n ValidationFieldError,\n} from 'payload'\nimport type React from 'react'\nimport type { Dispatch } from 'react'\n\nexport type Preferences = {\n [key: string]: unknown\n}\n\nexport type FormProps = {\n beforeSubmit?: ((args: { formState: FormState }) => Promise<FormState>)[]\n children?: React.ReactNode\n className?: string\n disabled?: boolean\n disableSuccessStatus?: boolean\n /**\n * If you would like to solely leverage server-side validation on submit,\n * you can disable checks that the form makes before it submits\n */\n disableValidationOnSubmit?: boolean\n /**\n * By default, the form will get the field schema (not data) from the current document. If you pass this in, you can override that behavior.\n * This is very useful for sub-forms, where the form's field schema is not necessarily the field schema of the current document (e.g. for the Blocks\n * feature of the Lexical Rich Text field)\n */\n fields?: ClientField[]\n handleResponse?: (\n res: Response,\n successToast: (value: string) => void,\n errorToast: (value: string) => void,\n ) => void\n initialState?: FormState\n /**\n * Determines if this Form is the main, top-level Form of a document. If set to true, the\n * Form's children will be wrapped in a DocumentFormContext, which lets you access this document\n * Form's data and fields from any child component - even if that child component is wrapped in a child\n * Form (e.g. a lexical block).\n */\n isDocumentForm?: boolean\n isInitializing?: boolean\n log?: boolean\n onChange?: ((args: { formState: FormState; submitted?: boolean }) => Promise<FormState>)[]\n onSubmit?: (fields: FormState, data: Data) => void\n onSuccess?: (json: unknown) => Promise<FormState | void> | void\n redirect?: string\n submitted?: boolean\n uuid?: string\n validationOperation?: 'create' | 'update'\n waitForAutocomplete?: boolean\n} & (\n | {\n action: (formData: FormData) => Promise<void>\n }\n | {\n action?: string\n method?: 'DELETE' | 'GET' | 'PATCH' | 'POST'\n }\n)\n\nexport type SubmitOptions = {\n action?: string\n method?: string\n overrides?: ((formState) => FormData) | Record<string, unknown>\n skipValidation?: boolean\n}\n\nexport type DispatchFields = React.Dispatch<any>\nexport type Submit = (\n options?: SubmitOptions,\n e?: React.FormEvent<HTMLFormElement>,\n) => Promise<void>\nexport type ValidateForm = () => Promise<boolean>\nexport type CreateFormData = (\n overrides?: Record<string, unknown>,\n /**\n * If mergeOverrideData true, the data will be merged with the existing data in the form state.\n * @default true\n */\n options?: { mergeOverrideData?: boolean },\n) => FormData\nexport type GetFields = () => FormState\nexport type GetField = (path: string) => FormField\nexport type GetData = () => Data\nexport type GetSiblingData = (path: string) => Data\nexport type GetDataByPath = <T = unknown>(path: string) => T\nexport type SetModified = (modified: boolean) => void\nexport type SetSubmitted = (submitted: boolean) => void\nexport type SetProcessing = (processing: boolean) => void\n\nexport type Reset = (data: unknown) => Promise<void>\n\nexport type REPLACE_STATE = {\n optimize?: boolean\n /**\n * If `sanitize` is true, default values will be set for form field properties that are not present in the incoming state.\n * For example, `valid` will be set to true if it is not present in the incoming state.\n */\n sanitize?: boolean\n state: FormState\n type: 'REPLACE_STATE'\n}\n\nexport type REMOVE = {\n path: string\n type: 'REMOVE'\n}\n\nexport type MODIFY_CONDITION = {\n path: string\n result: boolean\n type: 'MODIFY_CONDITION'\n user: User\n}\n\nexport type UPDATE = {\n path: string\n type: 'UPDATE'\n} & Partial<FormField>\n\nexport type UPDATE_MANY = {\n formState: FormState\n type: 'UPDATE_MANY'\n}\n\nexport type REMOVE_ROW = {\n path: string\n rowIndex: number\n type: 'REMOVE_ROW'\n}\n\nexport type ADD_ROW = {\n blockType?: string\n path: string\n rowIndex?: number\n subFieldState?: FormState\n type: 'ADD_ROW'\n}\n\nexport type REPLACE_ROW = {\n blockType?: string\n path: string\n rowIndex: number\n subFieldState?: FormState\n type: 'REPLACE_ROW'\n}\n\nexport type DUPLICATE_ROW = {\n path: string\n rowIndex: number\n type: 'DUPLICATE_ROW'\n}\n\nexport type MOVE_ROW = {\n moveFromIndex: number\n moveToIndex: number\n path: string\n type: 'MOVE_ROW'\n}\n\nexport type ADD_SERVER_ERRORS = {\n errors: ValidationFieldError[]\n type: 'ADD_SERVER_ERRORS'\n}\n\nexport type SET_ROW_COLLAPSED = {\n path: string\n type: 'SET_ROW_COLLAPSED'\n updatedRows: Row[]\n}\n\nexport type SET_ALL_ROWS_COLLAPSED = {\n path: string\n type: 'SET_ALL_ROWS_COLLAPSED'\n updatedRows: Row[]\n}\n\nexport type FieldAction =\n | ADD_ROW\n | ADD_SERVER_ERRORS\n | DUPLICATE_ROW\n | MODIFY_CONDITION\n | MOVE_ROW\n | REMOVE\n | REMOVE_ROW\n | REPLACE_ROW\n | REPLACE_STATE\n | SET_ALL_ROWS_COLLAPSED\n | SET_ROW_COLLAPSED\n | UPDATE\n | UPDATE_MANY\n\nexport type FormFieldsContext = [FormState, Dispatch<FieldAction>]\n\nexport type Context = {\n addFieldRow: ({\n blockType,\n path,\n rowIndex,\n schemaPath,\n subFieldState,\n }: {\n blockType?: string\n path: string\n rowIndex?: number\n schemaPath: string\n subFieldState?: FormState\n }) => void\n buildRowErrors: () => void\n createFormData: CreateFormData\n disabled: boolean\n dispatchFields: Dispatch<FieldAction>\n /**\n * Form context fields may be outdated and should not be relied on. Instead, prefer `useFormFields`.\n */\n fields: FormState\n formRef: React.RefObject<HTMLFormElement>\n getData: GetData\n getDataByPath: GetDataByPath\n getField: GetField\n getFields: GetFields\n getSiblingData: GetSiblingData\n initializing: boolean\n /**\n * Tracks wether the form state passes validation.\n * For example the state could be submitted but invalid as field errors have been returned.\n */\n isValid: boolean\n removeFieldRow: ({ path, rowIndex }: { path: string; rowIndex: number }) => void\n replaceFieldRow: ({\n blockType,\n path,\n rowIndex,\n schemaPath,\n subFieldState,\n }: {\n blockType?: string\n path: string\n rowIndex: number\n schemaPath: string\n subFieldState?: FormState\n }) => void\n replaceState: (state: FormState) => void\n reset: Reset\n setDisabled: (disabled: boolean) => void\n setIsValid: (processing: boolean) => void\n setModified: SetModified\n setProcessing: SetProcessing\n setSubmitted: SetSubmitted\n submit: Submit\n uuid?: string\n validateForm: ValidateForm\n}\n"],"mappings":"AAwMA","ignoreList":[]}
1
+ {"version":3,"file":"types.js","names":[],"sources":["../../../src/forms/Form/types.ts"],"sourcesContent":["import type {\n ClientField,\n Data,\n FormField,\n FormState,\n Row,\n User,\n ValidationFieldError,\n} from 'payload'\nimport type React from 'react'\nimport type { Dispatch } from 'react'\n\nexport type Preferences = {\n [key: string]: unknown\n}\n\nexport type FormProps = {\n beforeSubmit?: ((args: { formState: FormState }) => Promise<FormState>)[]\n children?: React.ReactNode\n className?: string\n disabled?: boolean\n disableSuccessStatus?: boolean\n /**\n * If you would like to solely leverage server-side validation on submit,\n * you can disable checks that the form makes before it submits\n */\n disableValidationOnSubmit?: boolean\n /**\n * By default, the form will get the field schema (not data) from the current document. If you pass this in, you can override that behavior.\n * This is very useful for sub-forms, where the form's field schema is not necessarily the field schema of the current document (e.g. for the Blocks\n * feature of the Lexical Rich Text field)\n */\n fields?: ClientField[]\n handleResponse?: (\n res: Response,\n successToast: (value: string) => void,\n errorToast: (value: string) => void,\n ) => void\n initialState?: FormState\n /**\n * Determines if this Form is the main, top-level Form of a document. If set to true, the\n * Form's children will be wrapped in a DocumentFormContext, which lets you access this document\n * Form's data and fields from any child component - even if that child component is wrapped in a child\n * Form (e.g. a lexical block).\n */\n isDocumentForm?: boolean\n isInitializing?: boolean\n log?: boolean\n onChange?: ((args: { formState: FormState; submitted?: boolean }) => Promise<FormState>)[]\n onSubmit?: (fields: FormState, data: Data) => void\n onSuccess?: (json: unknown) => Promise<FormState | void> | void\n redirect?: string\n submitted?: boolean\n uuid?: string\n validationOperation?: 'create' | 'update'\n waitForAutocomplete?: boolean\n} & (\n | {\n action: (formData: FormData) => Promise<void>\n }\n | {\n action?: string\n method?: 'DELETE' | 'GET' | 'PATCH' | 'POST'\n }\n)\n\nexport type SubmitOptions = {\n action?: string\n method?: string\n overrides?: ((formState) => FormData) | Record<string, unknown>\n skipValidation?: boolean\n}\n\nexport type DispatchFields = React.Dispatch<any>\nexport type Submit = (\n options?: SubmitOptions,\n e?: React.FormEvent<HTMLFormElement>,\n) => Promise<void>\nexport type ValidateForm = () => Promise<boolean>\nexport type CreateFormData = (\n overrides?: Record<string, unknown>,\n /**\n * If mergeOverrideData true, the data will be merged with the existing data in the form state.\n * @default true\n */\n options?: { mergeOverrideData?: boolean },\n) => FormData | Promise<FormData>\nexport type GetFields = () => FormState\nexport type GetField = (path: string) => FormField\nexport type GetData = () => Data\nexport type GetSiblingData = (path: string) => Data\nexport type GetDataByPath = <T = unknown>(path: string) => T\nexport type SetModified = (modified: boolean) => void\nexport type SetSubmitted = (submitted: boolean) => void\nexport type SetProcessing = (processing: boolean) => void\n\nexport type Reset = (data: unknown) => Promise<void>\n\nexport type REPLACE_STATE = {\n optimize?: boolean\n /**\n * If `sanitize` is true, default values will be set for form field properties that are not present in the incoming state.\n * For example, `valid` will be set to true if it is not present in the incoming state.\n */\n sanitize?: boolean\n state: FormState\n type: 'REPLACE_STATE'\n}\n\nexport type REMOVE = {\n path: string\n type: 'REMOVE'\n}\n\nexport type MODIFY_CONDITION = {\n path: string\n result: boolean\n type: 'MODIFY_CONDITION'\n user: User\n}\n\nexport type UPDATE = {\n path: string\n type: 'UPDATE'\n} & Partial<FormField>\n\nexport type UPDATE_MANY = {\n formState: FormState\n type: 'UPDATE_MANY'\n}\n\nexport type REMOVE_ROW = {\n path: string\n rowIndex: number\n type: 'REMOVE_ROW'\n}\n\nexport type ADD_ROW = {\n blockType?: string\n path: string\n rowIndex?: number\n subFieldState?: FormState\n type: 'ADD_ROW'\n}\n\nexport type REPLACE_ROW = {\n blockType?: string\n path: string\n rowIndex: number\n subFieldState?: FormState\n type: 'REPLACE_ROW'\n}\n\nexport type DUPLICATE_ROW = {\n path: string\n rowIndex: number\n type: 'DUPLICATE_ROW'\n}\n\nexport type MOVE_ROW = {\n moveFromIndex: number\n moveToIndex: number\n path: string\n type: 'MOVE_ROW'\n}\n\nexport type ADD_SERVER_ERRORS = {\n errors: ValidationFieldError[]\n type: 'ADD_SERVER_ERRORS'\n}\n\nexport type SET_ROW_COLLAPSED = {\n path: string\n type: 'SET_ROW_COLLAPSED'\n updatedRows: Row[]\n}\n\nexport type SET_ALL_ROWS_COLLAPSED = {\n path: string\n type: 'SET_ALL_ROWS_COLLAPSED'\n updatedRows: Row[]\n}\n\nexport type FieldAction =\n | ADD_ROW\n | ADD_SERVER_ERRORS\n | DUPLICATE_ROW\n | MODIFY_CONDITION\n | MOVE_ROW\n | REMOVE\n | REMOVE_ROW\n | REPLACE_ROW\n | REPLACE_STATE\n | SET_ALL_ROWS_COLLAPSED\n | SET_ROW_COLLAPSED\n | UPDATE\n | UPDATE_MANY\n\nexport type FormFieldsContext = [FormState, Dispatch<FieldAction>]\n\nexport type Context = {\n addFieldRow: ({\n blockType,\n path,\n rowIndex,\n schemaPath,\n subFieldState,\n }: {\n blockType?: string\n path: string\n rowIndex?: number\n schemaPath: string\n subFieldState?: FormState\n }) => void\n buildRowErrors: () => void\n createFormData: CreateFormData\n disabled: boolean\n dispatchFields: Dispatch<FieldAction>\n /**\n * Form context fields may be outdated and should not be relied on. Instead, prefer `useFormFields`.\n */\n fields: FormState\n formRef: React.RefObject<HTMLFormElement>\n getData: GetData\n getDataByPath: GetDataByPath\n getField: GetField\n getFields: GetFields\n getSiblingData: GetSiblingData\n initializing: boolean\n /**\n * Tracks wether the form state passes validation.\n * For example the state could be submitted but invalid as field errors have been returned.\n */\n isValid: boolean\n removeFieldRow: ({ path, rowIndex }: { path: string; rowIndex: number }) => void\n replaceFieldRow: ({\n blockType,\n path,\n rowIndex,\n schemaPath,\n subFieldState,\n }: {\n blockType?: string\n path: string\n rowIndex: number\n schemaPath: string\n subFieldState?: FormState\n }) => void\n replaceState: (state: FormState) => void\n reset: Reset\n /**\n * If the form has started processing in the background (e.g.\n * if autosave is running), this will be true.\n */\n setBackgroundProcessing: SetProcessing\n setDisabled: (disabled: boolean) => void\n setIsValid: (processing: boolean) => void\n setModified: SetModified\n setProcessing: SetProcessing\n setSubmitted: SetSubmitted\n submit: Submit\n uuid?: string\n validateForm: ValidateForm\n}\n"],"mappings":"AAwMA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/forms/Submit/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gCAAgC,CAAA;AAI3D,OAAO,cAAc,CAAA;AAIrB,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAuCtC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/forms/Submit/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gCAAgC,CAAA;AAS3D,OAAO,cAAc,CAAA;AAIrB,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CA8CtC,CAAA"}
@@ -3,7 +3,7 @@
3
3
  import { jsx as _jsx } from "react/jsx-runtime";
4
4
  import React from 'react';
5
5
  import { Button } from '../../elements/Button/index.js';
6
- import { useForm, useFormInitializing, useFormProcessing } from '../Form/context.js';
6
+ import { useForm, useFormBackgroundProcessing, useFormInitializing, useFormProcessing } from '../Form/context.js';
7
7
  import './index.scss';
8
8
  const baseClass = 'form-submit';
9
9
  export const FormSubmit = props => {
@@ -17,12 +17,13 @@ export const FormSubmit = props => {
17
17
  ref
18
18
  } = props;
19
19
  const processing = useFormProcessing();
20
+ const backgroundProcessing = useFormBackgroundProcessing();
20
21
  const initializing = useFormInitializing();
21
22
  const {
22
23
  disabled,
23
24
  submit
24
25
  } = useForm();
25
- const canSave = !(disabledFromProps || initializing || processing || disabled);
26
+ const canSave = !(disabledFromProps || initializing || processing || backgroundProcessing || disabled);
26
27
  const handleClick = onClick ?? (programmaticSubmit ? () => {
27
28
  void submit();
28
29
  } : undefined);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","Button","useForm","useFormInitializing","useFormProcessing","baseClass","FormSubmit","props","type","buttonId","id","children","disabled","disabledFromProps","onClick","programmaticSubmit","ref","processing","initializing","submit","canSave","handleClick","undefined","_jsx","className"],"sources":["../../../src/forms/Submit/index.tsx"],"sourcesContent":["'use client'\nimport React from 'react'\n\nimport type { Props } from '../../elements/Button/types.js'\n\nimport { Button } from '../../elements/Button/index.js'\nimport { useForm, useFormInitializing, useFormProcessing } from '../Form/context.js'\nimport './index.scss'\n\nconst baseClass = 'form-submit'\n\nexport const FormSubmit: React.FC<Props> = (props) => {\n const {\n type = 'submit',\n buttonId: id,\n children,\n disabled: disabledFromProps,\n onClick,\n programmaticSubmit,\n ref,\n } = props\n\n const processing = useFormProcessing()\n const initializing = useFormInitializing()\n const { disabled, submit } = useForm()\n\n const canSave = !(disabledFromProps || initializing || processing || disabled)\n\n const handleClick =\n onClick ??\n (programmaticSubmit\n ? () => {\n void submit()\n }\n : undefined)\n\n return (\n <div className={baseClass}>\n <Button\n ref={ref}\n {...props}\n disabled={canSave ? undefined : true}\n id={id}\n onClick={handleClick}\n type={type}\n >\n {children}\n </Button>\n </div>\n )\n}\n"],"mappings":"AAAA;;;AACA,OAAOA,KAAA,MAAW;AAIlB,SAASC,MAAM,QAAQ;AACvB,SAASC,OAAO,EAAEC,mBAAmB,EAAEC,iBAAiB,QAAQ;AAChE,OAAO;AAEP,MAAMC,SAAA,GAAY;AAElB,OAAO,MAAMC,UAAA,GAA+BC,KAAA;EAC1C,MAAM;IACJC,IAAA,GAAO,QAAQ;IACfC,QAAA,EAAUC,EAAE;IACZC,QAAQ;IACRC,QAAA,EAAUC,iBAAiB;IAC3BC,OAAO;IACPC,kBAAkB;IAClBC;EAAG,CACJ,GAAGT,KAAA;EAEJ,MAAMU,UAAA,GAAab,iBAAA;EACnB,MAAMc,YAAA,GAAef,mBAAA;EACrB,MAAM;IAAES,QAAQ;IAAEO;EAAM,CAAE,GAAGjB,OAAA;EAE7B,MAAMkB,OAAA,GAAU,EAAEP,iBAAA,IAAqBK,YAAA,IAAgBD,UAAA,IAAcL,QAAO;EAE5E,MAAMS,WAAA,GACJP,OAAA,KACCC,kBAAA,GACG;IACE,KAAKI,MAAA;EACP,IACAG,SAAQ;EAEd,oBACEC,IAAA,CAAC;IAAIC,SAAA,EAAWnB,SAAA;cACd,aAAAkB,IAAA,CAACtB,MAAA;MACCe,GAAA,EAAKA,GAAA;MACJ,GAAGT,KAAK;MACTK,QAAA,EAAUQ,OAAA,GAAUE,SAAA,GAAY;MAChCZ,EAAA,EAAIA,EAAA;MACJI,OAAA,EAASO,WAAA;MACTb,IAAA,EAAMA,IAAA;gBAELG;;;AAIT","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["React","Button","useForm","useFormBackgroundProcessing","useFormInitializing","useFormProcessing","baseClass","FormSubmit","props","type","buttonId","id","children","disabled","disabledFromProps","onClick","programmaticSubmit","ref","processing","backgroundProcessing","initializing","submit","canSave","handleClick","undefined","_jsx","className"],"sources":["../../../src/forms/Submit/index.tsx"],"sourcesContent":["'use client'\nimport React from 'react'\n\nimport type { Props } from '../../elements/Button/types.js'\n\nimport { Button } from '../../elements/Button/index.js'\nimport {\n useForm,\n useFormBackgroundProcessing,\n useFormInitializing,\n useFormProcessing,\n} from '../Form/context.js'\nimport './index.scss'\n\nconst baseClass = 'form-submit'\n\nexport const FormSubmit: React.FC<Props> = (props) => {\n const {\n type = 'submit',\n buttonId: id,\n children,\n disabled: disabledFromProps,\n onClick,\n programmaticSubmit,\n ref,\n } = props\n\n const processing = useFormProcessing()\n const backgroundProcessing = useFormBackgroundProcessing()\n const initializing = useFormInitializing()\n const { disabled, submit } = useForm()\n\n const canSave = !(\n disabledFromProps ||\n initializing ||\n processing ||\n backgroundProcessing ||\n disabled\n )\n\n const handleClick =\n onClick ??\n (programmaticSubmit\n ? () => {\n void submit()\n }\n : undefined)\n\n return (\n <div className={baseClass}>\n <Button\n ref={ref}\n {...props}\n disabled={canSave ? undefined : true}\n id={id}\n onClick={handleClick}\n type={type}\n >\n {children}\n </Button>\n </div>\n )\n}\n"],"mappings":"AAAA;;;AACA,OAAOA,KAAA,MAAW;AAIlB,SAASC,MAAM,QAAQ;AACvB,SACEC,OAAO,EACPC,2BAA2B,EAC3BC,mBAAmB,EACnBC,iBAAiB,QACZ;AACP,OAAO;AAEP,MAAMC,SAAA,GAAY;AAElB,OAAO,MAAMC,UAAA,GAA+BC,KAAA;EAC1C,MAAM;IACJC,IAAA,GAAO,QAAQ;IACfC,QAAA,EAAUC,EAAE;IACZC,QAAQ;IACRC,QAAA,EAAUC,iBAAiB;IAC3BC,OAAO;IACPC,kBAAkB;IAClBC;EAAG,CACJ,GAAGT,KAAA;EAEJ,MAAMU,UAAA,GAAab,iBAAA;EACnB,MAAMc,oBAAA,GAAuBhB,2BAAA;EAC7B,MAAMiB,YAAA,GAAehB,mBAAA;EACrB,MAAM;IAAES,QAAQ;IAAEQ;EAAM,CAAE,GAAGnB,OAAA;EAE7B,MAAMoB,OAAA,GAAU,EACdR,iBAAA,IACAM,YAAA,IACAF,UAAA,IACAC,oBAAA,IACAN,QAAO;EAGT,MAAMU,WAAA,GACJR,OAAA,KACCC,kBAAA,GACG;IACE,KAAKK,MAAA;EACP,IACAG,SAAQ;EAEd,oBACEC,IAAA,CAAC;IAAIC,SAAA,EAAWpB,SAAA;cACd,aAAAmB,IAAA,CAACxB,MAAA;MACCgB,GAAA,EAAKA,GAAA;MACJ,GAAGT,KAAK;MACTK,QAAA,EAAUS,OAAA,GAAUE,SAAA,GAAY;MAChCb,EAAA,EAAIA,EAAA;MACJI,OAAA,EAASQ,WAAA;MACTd,IAAA,EAAMA,IAAA;gBAELG;;;AAIT","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"renderField.d.ts","sourceRoot":"","sources":["../../../src/forms/fieldSchemasToFormState/renderField.tsx"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAcnD,eAAO,MAAM,WAAW,EAAE,iBAmSzB,CAAA"}
1
+ {"version":3,"file":"renderField.d.ts","sourceRoot":"","sources":["../../../src/forms/fieldSchemasToFormState/renderField.tsx"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAcnD,eAAO,MAAM,WAAW,EAAE,iBAqSzB,CAAA"}
@@ -92,6 +92,7 @@ export const renderField = ({
92
92
  clientProps,
93
93
  Component: fieldConfig.admin.components.RowLabel,
94
94
  importMap: req.payload.importMap,
95
+ key: `${rowIndex}`,
95
96
  serverProps: {
96
97
  ...serverProps,
97
98
  rowLabel: `${getTranslation(fieldConfig.labels.singular, req.i18n)} ${String(rowIndex + 1).padStart(2, '0')}`,
@@ -118,6 +119,7 @@ export const renderField = ({
118
119
  clientProps,
119
120
  Component: blockConfig.admin.components.Label,
120
121
  importMap: req.payload.importMap,
122
+ key: `${rowIndex}`,
121
123
  serverProps: {
122
124
  ...serverProps,
123
125
  blockType: row.blockType,
@@ -1 +1 @@
1
- {"version":3,"file":"renderField.js","names":["getTranslation","createClientField","MissingEditorProp","fieldIsHiddenOrDisabled","RenderServerComponent","FieldDescription","WatchCondition","defaultUIFieldComponentKeys","renderField","id","clientFieldSchemaMap","collectionSlug","data","fieldConfig","fieldSchemaMap","fieldState","formState","indexPath","operation","parentPath","parentSchemaPath","path","permissions","preferences","req","schemaPath","siblingData","clientField","get","defaultIDType","payload","config","db","field","i18n","importMap","clientProps","readOnly","customComponents","includes","type","serverProps","user","admin","Object","keys","components","length","description","rows","forEach","row","rowIndex","RowLabels","Component","RowLabel","rowLabel","labels","singular","String","padStart","rowNumber","blockTypeToMatch","blockType","blockConfig","blocks","blockReferences","find","block","slug","Label","editor","Error","Field","_jsx","FieldComponent","key","Description","t","AfterInput","afterInput","BeforeInput","beforeInput"],"sources":["../../../src/forms/fieldSchemasToFormState/renderField.tsx"],"sourcesContent":["import type {\n ClientComponentProps,\n ClientField,\n FieldPaths,\n FlattenedBlock,\n ServerComponentProps,\n} from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { createClientField, MissingEditorProp } from 'payload'\nimport { fieldIsHiddenOrDisabled } from 'payload/shared'\n\nimport type { RenderFieldMethod } from './types.js'\n\nimport { RenderServerComponent } from '../../elements/RenderServerComponent/index.js'\n\n// eslint-disable-next-line payload/no-imports-from-exports-dir -- need this to reference already existing bundle. Otherwise, bundle size increases., payload/no-imports-from-exports-dir\nimport { FieldDescription, WatchCondition } from '../../exports/client/index.js'\n\nconst defaultUIFieldComponentKeys: Array<'Cell' | 'Description' | 'Field' | 'Filter'> = [\n 'Cell',\n 'Description',\n 'Field',\n 'Filter',\n]\n\nexport const renderField: RenderFieldMethod = ({\n id,\n clientFieldSchemaMap,\n collectionSlug,\n data,\n fieldConfig,\n fieldSchemaMap,\n fieldState,\n formState,\n indexPath,\n operation,\n parentPath,\n parentSchemaPath,\n path,\n permissions,\n preferences,\n req,\n schemaPath,\n siblingData,\n}) => {\n const clientField = clientFieldSchemaMap\n ? (clientFieldSchemaMap.get(schemaPath) as ClientField)\n : createClientField({\n defaultIDType: req.payload.config.db.defaultIDType,\n field: fieldConfig,\n i18n: req.i18n,\n importMap: req.payload.importMap,\n })\n\n if (fieldIsHiddenOrDisabled(clientField)) {\n return\n }\n\n const clientProps: ClientComponentProps & Partial<FieldPaths> = {\n field: clientField,\n path,\n permissions,\n readOnly: typeof permissions === 'boolean' ? !permissions : !permissions?.[operation],\n schemaPath,\n }\n\n if (fieldState?.customComponents) {\n clientProps.customComponents = fieldState.customComponents\n }\n\n // fields with subfields\n if (['array', 'blocks', 'collapsible', 'group', 'row', 'tabs'].includes(fieldConfig.type)) {\n clientProps.indexPath = indexPath\n clientProps.parentPath = parentPath\n clientProps.parentSchemaPath = parentSchemaPath\n }\n\n const serverProps: ServerComponentProps = {\n id,\n clientField,\n clientFieldSchemaMap,\n data,\n field: fieldConfig,\n fieldSchemaMap,\n permissions,\n // TODO: Should we pass explicit values? initialValue, value, valid\n // value and initialValue should be typed\n collectionSlug,\n formState,\n i18n: req.i18n,\n operation,\n payload: req.payload,\n preferences,\n req,\n siblingData,\n user: req.user,\n }\n\n /**\n * Only create the `customComponents` object if needed.\n * This will prevent unnecessary data from being transferred to the client.\n */\n if (fieldConfig.admin) {\n if (\n (Object.keys(fieldConfig.admin.components || {}).length > 0 ||\n fieldConfig.type === 'richText' ||\n ('description' in fieldConfig.admin &&\n typeof fieldConfig.admin.description === 'function')) &&\n !fieldState?.customComponents\n ) {\n fieldState.customComponents = {}\n }\n }\n\n switch (fieldConfig.type) {\n case 'array': {\n fieldState?.rows?.forEach((row, rowIndex) => {\n if (fieldConfig.admin?.components && 'RowLabel' in fieldConfig.admin.components) {\n if (!fieldState.customComponents.RowLabels) {\n fieldState.customComponents.RowLabels = []\n }\n\n fieldState.customComponents.RowLabels[rowIndex] = RenderServerComponent({\n clientProps,\n Component: fieldConfig.admin.components.RowLabel,\n importMap: req.payload.importMap,\n serverProps: {\n ...serverProps,\n rowLabel: `${getTranslation(fieldConfig.labels.singular, req.i18n)} ${String(\n rowIndex + 1,\n ).padStart(2, '0')}`,\n rowNumber: rowIndex + 1,\n },\n })\n }\n })\n\n break\n }\n\n case 'blocks': {\n fieldState?.rows?.forEach((row, rowIndex) => {\n const blockTypeToMatch: string = row.blockType\n const blockConfig =\n req.payload.blocks[blockTypeToMatch] ??\n ((fieldConfig.blockReferences ?? fieldConfig.blocks).find(\n (block) => typeof block !== 'string' && block.slug === blockTypeToMatch,\n ) as FlattenedBlock | undefined)\n\n if (blockConfig.admin?.components && 'Label' in blockConfig.admin.components) {\n if (!fieldState.customComponents) {\n fieldState.customComponents = {}\n }\n\n if (!fieldState.customComponents.RowLabels) {\n fieldState.customComponents.RowLabels = []\n }\n\n fieldState.customComponents.RowLabels[rowIndex] = RenderServerComponent({\n clientProps,\n Component: blockConfig.admin.components.Label,\n importMap: req.payload.importMap,\n serverProps: {\n ...serverProps,\n blockType: row.blockType,\n rowLabel: `${getTranslation(blockConfig.labels.singular, req.i18n)} ${String(\n rowIndex + 1,\n ).padStart(2, '0')}`,\n rowNumber: rowIndex + 1,\n },\n })\n }\n })\n\n break\n }\n\n case 'richText': {\n if (!fieldConfig?.editor) {\n throw new MissingEditorProp(fieldConfig) // while we allow disabling editor functionality, you should not have any richText fields defined if you do not have an editor\n }\n\n if (typeof fieldConfig?.editor === 'function') {\n throw new Error('Attempted to access unsanitized rich text editor.')\n }\n\n if (!fieldConfig.admin) {\n fieldConfig.admin = {}\n }\n\n if (!fieldConfig.admin.components) {\n fieldConfig.admin.components = {}\n }\n\n fieldState.customComponents.Field = (\n <WatchCondition path={path}>\n {RenderServerComponent({\n clientProps,\n Component: fieldConfig.editor.FieldComponent,\n importMap: req.payload.importMap,\n serverProps,\n })}\n </WatchCondition>\n )\n\n break\n }\n\n case 'ui': {\n if (fieldConfig?.admin?.components) {\n // Render any extra, untyped components\n for (const key in fieldConfig.admin.components) {\n if (key in defaultUIFieldComponentKeys) {\n continue\n }\n\n const Component = fieldConfig.admin.components[key]\n\n fieldState.customComponents[key] = RenderServerComponent({\n clientProps,\n Component,\n importMap: req.payload.importMap,\n key: `field.admin.components.${key}`,\n serverProps,\n })\n }\n }\n break\n }\n\n default: {\n break\n }\n }\n\n if (fieldConfig.admin) {\n if (\n 'description' in fieldConfig.admin &&\n typeof fieldConfig.admin?.description === 'function'\n ) {\n fieldState.customComponents.Description = (\n <FieldDescription\n description={fieldConfig.admin?.description({\n t: req.i18n.t,\n })}\n path={path}\n />\n )\n }\n\n if (fieldConfig.admin?.components) {\n if ('afterInput' in fieldConfig.admin.components) {\n fieldState.customComponents.AfterInput = RenderServerComponent({\n clientProps,\n Component: fieldConfig.admin.components.afterInput,\n importMap: req.payload.importMap,\n key: 'field.admin.components.afterInput',\n serverProps,\n })\n }\n\n if ('beforeInput' in fieldConfig.admin.components) {\n fieldState.customComponents.BeforeInput = RenderServerComponent({\n clientProps,\n Component: fieldConfig.admin.components.beforeInput,\n importMap: req.payload.importMap,\n key: 'field.admin.components.beforeInput',\n serverProps,\n })\n }\n\n if ('Description' in fieldConfig.admin.components) {\n fieldState.customComponents.Description = RenderServerComponent({\n clientProps,\n Component: fieldConfig.admin.components.Description,\n importMap: req.payload.importMap,\n key: 'field.admin.components.Description',\n serverProps,\n })\n }\n\n if ('Error' in fieldConfig.admin.components) {\n fieldState.customComponents.Error = RenderServerComponent({\n clientProps,\n Component: fieldConfig.admin.components.Error,\n importMap: req.payload.importMap,\n key: 'field.admin.components.Error',\n serverProps,\n })\n }\n\n if ('Label' in fieldConfig.admin.components) {\n fieldState.customComponents.Label = RenderServerComponent({\n clientProps,\n Component: fieldConfig.admin.components.Label,\n importMap: req.payload.importMap,\n key: 'field.admin.components.Label',\n serverProps,\n })\n }\n\n if ('Field' in fieldConfig.admin.components) {\n fieldState.customComponents.Field = (\n <WatchCondition path={path}>\n {RenderServerComponent({\n clientProps,\n Component: fieldConfig.admin.components.Field,\n importMap: req.payload.importMap,\n key: 'field.admin.components.Field',\n serverProps,\n })}\n </WatchCondition>\n )\n }\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"renderField.js","names":["getTranslation","createClientField","MissingEditorProp","fieldIsHiddenOrDisabled","RenderServerComponent","FieldDescription","WatchCondition","defaultUIFieldComponentKeys","renderField","id","clientFieldSchemaMap","collectionSlug","data","fieldConfig","fieldSchemaMap","fieldState","formState","indexPath","operation","parentPath","parentSchemaPath","path","permissions","preferences","req","schemaPath","siblingData","clientField","get","defaultIDType","payload","config","db","field","i18n","importMap","clientProps","readOnly","customComponents","includes","type","serverProps","user","admin","Object","keys","components","length","description","rows","forEach","row","rowIndex","RowLabels","Component","RowLabel","key","rowLabel","labels","singular","String","padStart","rowNumber","blockTypeToMatch","blockType","blockConfig","blocks","blockReferences","find","block","slug","Label","editor","Error","Field","_jsx","FieldComponent","Description","t","AfterInput","afterInput","BeforeInput","beforeInput"],"sources":["../../../src/forms/fieldSchemasToFormState/renderField.tsx"],"sourcesContent":["import type {\n ClientComponentProps,\n ClientField,\n FieldPaths,\n FlattenedBlock,\n ServerComponentProps,\n} from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { createClientField, MissingEditorProp } from 'payload'\nimport { fieldIsHiddenOrDisabled } from 'payload/shared'\n\nimport type { RenderFieldMethod } from './types.js'\n\nimport { RenderServerComponent } from '../../elements/RenderServerComponent/index.js'\n\n// eslint-disable-next-line payload/no-imports-from-exports-dir -- need this to reference already existing bundle. Otherwise, bundle size increases., payload/no-imports-from-exports-dir\nimport { FieldDescription, WatchCondition } from '../../exports/client/index.js'\n\nconst defaultUIFieldComponentKeys: Array<'Cell' | 'Description' | 'Field' | 'Filter'> = [\n 'Cell',\n 'Description',\n 'Field',\n 'Filter',\n]\n\nexport const renderField: RenderFieldMethod = ({\n id,\n clientFieldSchemaMap,\n collectionSlug,\n data,\n fieldConfig,\n fieldSchemaMap,\n fieldState,\n formState,\n indexPath,\n operation,\n parentPath,\n parentSchemaPath,\n path,\n permissions,\n preferences,\n req,\n schemaPath,\n siblingData,\n}) => {\n const clientField = clientFieldSchemaMap\n ? (clientFieldSchemaMap.get(schemaPath) as ClientField)\n : createClientField({\n defaultIDType: req.payload.config.db.defaultIDType,\n field: fieldConfig,\n i18n: req.i18n,\n importMap: req.payload.importMap,\n })\n\n if (fieldIsHiddenOrDisabled(clientField)) {\n return\n }\n\n const clientProps: ClientComponentProps & Partial<FieldPaths> = {\n field: clientField,\n path,\n permissions,\n readOnly: typeof permissions === 'boolean' ? !permissions : !permissions?.[operation],\n schemaPath,\n }\n\n if (fieldState?.customComponents) {\n clientProps.customComponents = fieldState.customComponents\n }\n\n // fields with subfields\n if (['array', 'blocks', 'collapsible', 'group', 'row', 'tabs'].includes(fieldConfig.type)) {\n clientProps.indexPath = indexPath\n clientProps.parentPath = parentPath\n clientProps.parentSchemaPath = parentSchemaPath\n }\n\n const serverProps: ServerComponentProps = {\n id,\n clientField,\n clientFieldSchemaMap,\n data,\n field: fieldConfig,\n fieldSchemaMap,\n permissions,\n // TODO: Should we pass explicit values? initialValue, value, valid\n // value and initialValue should be typed\n collectionSlug,\n formState,\n i18n: req.i18n,\n operation,\n payload: req.payload,\n preferences,\n req,\n siblingData,\n user: req.user,\n }\n\n /**\n * Only create the `customComponents` object if needed.\n * This will prevent unnecessary data from being transferred to the client.\n */\n if (fieldConfig.admin) {\n if (\n (Object.keys(fieldConfig.admin.components || {}).length > 0 ||\n fieldConfig.type === 'richText' ||\n ('description' in fieldConfig.admin &&\n typeof fieldConfig.admin.description === 'function')) &&\n !fieldState?.customComponents\n ) {\n fieldState.customComponents = {}\n }\n }\n\n switch (fieldConfig.type) {\n case 'array': {\n fieldState?.rows?.forEach((row, rowIndex) => {\n if (fieldConfig.admin?.components && 'RowLabel' in fieldConfig.admin.components) {\n if (!fieldState.customComponents.RowLabels) {\n fieldState.customComponents.RowLabels = []\n }\n\n fieldState.customComponents.RowLabels[rowIndex] = RenderServerComponent({\n clientProps,\n Component: fieldConfig.admin.components.RowLabel,\n importMap: req.payload.importMap,\n key: `${rowIndex}`,\n serverProps: {\n ...serverProps,\n rowLabel: `${getTranslation(fieldConfig.labels.singular, req.i18n)} ${String(\n rowIndex + 1,\n ).padStart(2, '0')}`,\n rowNumber: rowIndex + 1,\n },\n })\n }\n })\n\n break\n }\n\n case 'blocks': {\n fieldState?.rows?.forEach((row, rowIndex) => {\n const blockTypeToMatch: string = row.blockType\n const blockConfig =\n req.payload.blocks[blockTypeToMatch] ??\n ((fieldConfig.blockReferences ?? fieldConfig.blocks).find(\n (block) => typeof block !== 'string' && block.slug === blockTypeToMatch,\n ) as FlattenedBlock | undefined)\n\n if (blockConfig.admin?.components && 'Label' in blockConfig.admin.components) {\n if (!fieldState.customComponents) {\n fieldState.customComponents = {}\n }\n\n if (!fieldState.customComponents.RowLabels) {\n fieldState.customComponents.RowLabels = []\n }\n\n fieldState.customComponents.RowLabels[rowIndex] = RenderServerComponent({\n clientProps,\n Component: blockConfig.admin.components.Label,\n importMap: req.payload.importMap,\n key: `${rowIndex}`,\n serverProps: {\n ...serverProps,\n blockType: row.blockType,\n rowLabel: `${getTranslation(blockConfig.labels.singular, req.i18n)} ${String(\n rowIndex + 1,\n ).padStart(2, '0')}`,\n rowNumber: rowIndex + 1,\n },\n })\n }\n })\n\n break\n }\n\n case 'richText': {\n if (!fieldConfig?.editor) {\n throw new MissingEditorProp(fieldConfig) // while we allow disabling editor functionality, you should not have any richText fields defined if you do not have an editor\n }\n\n if (typeof fieldConfig?.editor === 'function') {\n throw new Error('Attempted to access unsanitized rich text editor.')\n }\n\n if (!fieldConfig.admin) {\n fieldConfig.admin = {}\n }\n\n if (!fieldConfig.admin.components) {\n fieldConfig.admin.components = {}\n }\n\n fieldState.customComponents.Field = (\n <WatchCondition path={path}>\n {RenderServerComponent({\n clientProps,\n Component: fieldConfig.editor.FieldComponent,\n importMap: req.payload.importMap,\n serverProps,\n })}\n </WatchCondition>\n )\n\n break\n }\n\n case 'ui': {\n if (fieldConfig?.admin?.components) {\n // Render any extra, untyped components\n for (const key in fieldConfig.admin.components) {\n if (key in defaultUIFieldComponentKeys) {\n continue\n }\n\n const Component = fieldConfig.admin.components[key]\n\n fieldState.customComponents[key] = RenderServerComponent({\n clientProps,\n Component,\n importMap: req.payload.importMap,\n key: `field.admin.components.${key}`,\n serverProps,\n })\n }\n }\n break\n }\n\n default: {\n break\n }\n }\n\n if (fieldConfig.admin) {\n if (\n 'description' in fieldConfig.admin &&\n typeof fieldConfig.admin?.description === 'function'\n ) {\n fieldState.customComponents.Description = (\n <FieldDescription\n description={fieldConfig.admin?.description({\n t: req.i18n.t,\n })}\n path={path}\n />\n )\n }\n\n if (fieldConfig.admin?.components) {\n if ('afterInput' in fieldConfig.admin.components) {\n fieldState.customComponents.AfterInput = RenderServerComponent({\n clientProps,\n Component: fieldConfig.admin.components.afterInput,\n importMap: req.payload.importMap,\n key: 'field.admin.components.afterInput',\n serverProps,\n })\n }\n\n if ('beforeInput' in fieldConfig.admin.components) {\n fieldState.customComponents.BeforeInput = RenderServerComponent({\n clientProps,\n Component: fieldConfig.admin.components.beforeInput,\n importMap: req.payload.importMap,\n key: 'field.admin.components.beforeInput',\n serverProps,\n })\n }\n\n if ('Description' in fieldConfig.admin.components) {\n fieldState.customComponents.Description = RenderServerComponent({\n clientProps,\n Component: fieldConfig.admin.components.Description,\n importMap: req.payload.importMap,\n key: 'field.admin.components.Description',\n serverProps,\n })\n }\n\n if ('Error' in fieldConfig.admin.components) {\n fieldState.customComponents.Error = RenderServerComponent({\n clientProps,\n Component: fieldConfig.admin.components.Error,\n importMap: req.payload.importMap,\n key: 'field.admin.components.Error',\n serverProps,\n })\n }\n\n if ('Label' in fieldConfig.admin.components) {\n fieldState.customComponents.Label = RenderServerComponent({\n clientProps,\n Component: fieldConfig.admin.components.Label,\n importMap: req.payload.importMap,\n key: 'field.admin.components.Label',\n serverProps,\n })\n }\n\n if ('Field' in fieldConfig.admin.components) {\n fieldState.customComponents.Field = (\n <WatchCondition path={path}>\n {RenderServerComponent({\n clientProps,\n Component: fieldConfig.admin.components.Field,\n importMap: req.payload.importMap,\n key: 'field.admin.components.Field',\n serverProps,\n })}\n </WatchCondition>\n )\n }\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -3,7 +3,7 @@ export type { FieldType, Options };
3
3
  /**
4
4
  * Get and set the value of a form field.
5
5
  *
6
- * @see https://payloadcms.com/docs/admin/hooks#usefield
6
+ * @see https://payloadcms.com/docs/admin/react-hooks#usefield
7
7
  */
8
8
  export declare const useField: <TValue>(options: Options) => FieldType<TValue>;
9
9
  //# sourceMappingURL=index.d.ts.map
@@ -12,7 +12,7 @@ import { useDocumentForm, useForm, useFormFields, useFormInitializing, useFormMo
12
12
  /**
13
13
  * Get and set the value of a form field.
14
14
  *
15
- * @see https://payloadcms.com/docs/admin/hooks#usefield
15
+ * @see https://payloadcms.com/docs/admin/react-hooks#usefield
16
16
  */
17
17
  export const useField = options => {
18
18
  const $ = _c(58);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","useCallback","useMemo","useRef","useThrottledEffect","useAuth","useConfig","useDocumentInfo","useOperation","useTranslation","useDocumentForm","useForm","useFormFields","useFormInitializing","useFormModified","useFormProcessing","useFormSubmitted","useField","options","$","disableFormData","t0","hasRows","path","validate","undefined","submitted","processing","initializing","user","id","collectionSlug","operation","dispatchField","_temp","t1","t2","fields","field","t","config","getData","getDataByPath","getSiblingData","setModified","documentForm","modified","filterOptions","value","initialValue","valid","showError","prevValid","prevErrorMessage","errorMessage","e","t3","disableModifyingForm","val","target","type","setTimeout","setValue","t4","customComponents","t5","t6","errorPaths","t7","rows","t8","t9","formInitializing","formProcessing","formSubmitted","result","t10","validateField","valueToValidate","Array","isArray","current","valid_0","data","isValid","blockData","event","preferences","req","payload","siblingData","update","t11","t12","dispatch"],"sources":["../../../src/forms/useField/index.tsx"],"sourcesContent":["'use client'\nimport type { PayloadRequest } from 'payload'\n\nimport { useCallback, useMemo, useRef } from 'react'\n\nimport type { UPDATE } from '../Form/types.js'\nimport type { FieldType, Options } from './types.js'\n\nexport type { FieldType, Options }\n\nimport { useThrottledEffect } from '../../hooks/useThrottledEffect.js'\nimport { useAuth } from '../../providers/Auth/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useOperation } from '../../providers/Operation/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport {\n useDocumentForm,\n useForm,\n useFormFields,\n useFormInitializing,\n useFormModified,\n useFormProcessing,\n useFormSubmitted,\n} from '../Form/context.js'\n\n/**\n * Get and set the value of a form field.\n *\n * @see https://payloadcms.com/docs/admin/hooks#usefield\n */\nexport const useField = <TValue,>(options: Options): FieldType<TValue> => {\n const { disableFormData = false, hasRows, path, validate } = options\n\n const submitted = useFormSubmitted()\n const processing = useFormProcessing()\n const initializing = useFormInitializing()\n const { user } = useAuth()\n const { id, collectionSlug } = useDocumentInfo()\n const operation = useOperation()\n\n const dispatchField = useFormFields(([_, dispatch]) => dispatch)\n const field = useFormFields(([fields]) => (fields && fields?.[path]) || null)\n\n const { t } = useTranslation()\n const { config } = useConfig()\n\n const { getData, getDataByPath, getSiblingData, setModified } = useForm()\n const documentForm = useDocumentForm()\n const modified = useFormModified()\n\n const filterOptions = field?.filterOptions\n const value = field?.value as TValue\n const initialValue = field?.initialValue as TValue\n const valid = typeof field?.valid === 'boolean' ? field.valid : true\n const showError = valid === false && submitted\n\n const prevValid = useRef(valid)\n const prevErrorMessage = useRef(field?.errorMessage)\n\n // Method to return from `useField`, used to\n // update field values from field component(s)\n const setValue = useCallback(\n (e, disableModifyingForm = false) => {\n const val = e && e.target ? e.target.value : e\n dispatchField({\n type: 'UPDATE',\n disableFormData: disableFormData || (hasRows && val > 0),\n path,\n value: val,\n })\n\n if (!disableModifyingForm) {\n if (typeof setModified === 'function') {\n // Only update setModified to true if the form is not already set to modified. Otherwise the following could happen:\n // 1. Text field: someone types in it in an unmodified form\n // 2. After setTimeout triggers setModified(true): form is set to modified. Save Button becomes available. Good!\n // 3. Type something in text field\n // 4. Click on save button before setTimeout in useField has finished (so setModified(true) has not been run yet)\n // 5. Form is saved, setModified(false) is set in the Form/index.tsx `submit` function, \"saved successfully\" toast appears\n // 6. setModified(true) inside the timeout is run, form is set to modified again, even though it was already saved and thus set to unmodified. Bad! This should have happened before the form is saved. Now the form should be unmodified and stay that way\n // until a NEW change happens. Due to this, the \"Leave without saving\" modal appears even though it should not when leaving the page fast immediately after saving the document.\n // This is only an issue for forms which have already been set to modified true, as that causes the save button to be enabled. If we prevent this setTimeout to be run\n // for already-modified forms first place (which is unnecessary), we can avoid this issue. As for unmodified forms, this race issue will not happen, because you cannot click the save button faster\n // than the timeout in useField is run. That's because the save button won't even be enabled for clicking until the setTimeout in useField has run.\n // This fixes e2e test flakes, as e2e tests were often so fast that they were saving the form before the timeout in useField has run.\n // Specifically, this fixes the 'should not warn about unsaved changes when navigating to lexical editor with blocks node and then leaving the page after making a change and saving' lexical e2e test.\n if (modified === false) {\n // Update modified state after field value comes back\n // to avoid cursor jump caused by state value / DOM mismatch\n setTimeout(() => {\n setModified(true)\n }, 10)\n }\n }\n }\n },\n [setModified, path, dispatchField, disableFormData, hasRows, modified],\n )\n\n // Store result from hook as ref\n // to prevent unnecessary rerenders\n const result: FieldType<TValue> = useMemo(\n () => ({\n customComponents: field?.customComponents,\n errorMessage: field?.errorMessage,\n errorPaths: field?.errorPaths || [],\n filterOptions,\n formInitializing: initializing,\n formProcessing: processing,\n formSubmitted: submitted,\n initialValue,\n path,\n rows: field?.rows,\n setValue,\n showError,\n valid: field?.valid,\n value,\n }),\n [\n field,\n processing,\n setValue,\n showError,\n submitted,\n value,\n initialValue,\n path,\n filterOptions,\n initializing,\n ],\n )\n\n // Throttle the validate function\n useThrottledEffect(\n () => {\n const validateField = async () => {\n let valueToValidate = value\n\n if (field?.rows && Array.isArray(field.rows)) {\n valueToValidate = getDataByPath(path)\n }\n\n let errorMessage: string | undefined = prevErrorMessage.current\n let valid: boolean | string = prevValid.current\n\n const data = getData()\n const isValid =\n typeof validate === 'function'\n ? await validate(valueToValidate, {\n id,\n blockData: undefined, // Will be expensive to get - not worth to pass to client-side validation, as this can be obtained by the user using `useFormFields()`\n collectionSlug,\n data: documentForm?.getData ? documentForm.getData() : data,\n event: 'onChange',\n operation,\n preferences: {} as any,\n req: {\n payload: {\n config,\n },\n t,\n user,\n } as unknown as PayloadRequest,\n siblingData: getSiblingData(path),\n })\n : typeof prevErrorMessage.current === 'string'\n ? prevErrorMessage.current\n : prevValid.current\n\n if (typeof isValid === 'string') {\n valid = false\n errorMessage = isValid\n } else if (typeof isValid === 'boolean') {\n valid = isValid\n errorMessage = undefined\n }\n\n // Only dispatch if the validation result has changed\n // This will prevent unnecessary rerenders\n if (valid !== prevValid.current || errorMessage !== prevErrorMessage.current) {\n prevValid.current = valid\n prevErrorMessage.current = errorMessage\n\n const update: UPDATE = {\n type: 'UPDATE',\n errorMessage,\n path,\n rows: field?.rows,\n valid,\n validate,\n value,\n }\n\n if (disableFormData || (hasRows ? typeof value === 'number' && value > 0 : false)) {\n update.disableFormData = true\n }\n\n if (typeof dispatchField === 'function') {\n dispatchField(update)\n }\n }\n }\n\n void validateField()\n },\n 150,\n [\n value,\n disableFormData,\n dispatchField,\n getData,\n getSiblingData,\n getDataByPath,\n id,\n operation,\n path,\n user,\n validate,\n field?.rows,\n collectionSlug,\n ],\n )\n\n return result\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","useCallback","useMemo","useRef","useThrottledEffect","useAuth","useConfig","useDocumentInfo","useOperation","useTranslation","useDocumentForm","useForm","useFormFields","useFormInitializing","useFormModified","useFormProcessing","useFormSubmitted","useField","options","$","disableFormData","t0","hasRows","path","validate","undefined","submitted","processing","initializing","user","id","collectionSlug","operation","dispatchField","_temp","t1","t2","fields","field","t","config","getData","getDataByPath","getSiblingData","setModified","documentForm","modified","filterOptions","value","initialValue","valid","showError","prevValid","prevErrorMessage","errorMessage","e","t3","disableModifyingForm","val","target","type","setTimeout","setValue","t4","customComponents","t5","t6","errorPaths","t7","rows","t8","t9","formInitializing","formProcessing","formSubmitted","result","t10","validateField","valueToValidate","Array","isArray","current","valid_0","data","isValid","blockData","event","preferences","req","payload","siblingData","update","t11","t12","dispatch"],"sources":["../../../src/forms/useField/index.tsx"],"sourcesContent":["'use client'\nimport type { PayloadRequest } from 'payload'\n\nimport { useCallback, useMemo, useRef } from 'react'\n\nimport type { UPDATE } from '../Form/types.js'\nimport type { FieldType, Options } from './types.js'\n\nexport type { FieldType, Options }\n\nimport { useThrottledEffect } from '../../hooks/useThrottledEffect.js'\nimport { useAuth } from '../../providers/Auth/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useOperation } from '../../providers/Operation/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport {\n useDocumentForm,\n useForm,\n useFormFields,\n useFormInitializing,\n useFormModified,\n useFormProcessing,\n useFormSubmitted,\n} from '../Form/context.js'\n\n/**\n * Get and set the value of a form field.\n *\n * @see https://payloadcms.com/docs/admin/react-hooks#usefield\n */\nexport const useField = <TValue,>(options: Options): FieldType<TValue> => {\n const { disableFormData = false, hasRows, path, validate } = options\n\n const submitted = useFormSubmitted()\n const processing = useFormProcessing()\n const initializing = useFormInitializing()\n const { user } = useAuth()\n const { id, collectionSlug } = useDocumentInfo()\n const operation = useOperation()\n\n const dispatchField = useFormFields(([_, dispatch]) => dispatch)\n const field = useFormFields(([fields]) => (fields && fields?.[path]) || null)\n\n const { t } = useTranslation()\n const { config } = useConfig()\n\n const { getData, getDataByPath, getSiblingData, setModified } = useForm()\n const documentForm = useDocumentForm()\n const modified = useFormModified()\n\n const filterOptions = field?.filterOptions\n const value = field?.value as TValue\n const initialValue = field?.initialValue as TValue\n const valid = typeof field?.valid === 'boolean' ? field.valid : true\n const showError = valid === false && submitted\n\n const prevValid = useRef(valid)\n const prevErrorMessage = useRef(field?.errorMessage)\n\n // Method to return from `useField`, used to\n // update field values from field component(s)\n const setValue = useCallback(\n (e, disableModifyingForm = false) => {\n const val = e && e.target ? e.target.value : e\n dispatchField({\n type: 'UPDATE',\n disableFormData: disableFormData || (hasRows && val > 0),\n path,\n value: val,\n })\n\n if (!disableModifyingForm) {\n if (typeof setModified === 'function') {\n // Only update setModified to true if the form is not already set to modified. Otherwise the following could happen:\n // 1. Text field: someone types in it in an unmodified form\n // 2. After setTimeout triggers setModified(true): form is set to modified. Save Button becomes available. Good!\n // 3. Type something in text field\n // 4. Click on save button before setTimeout in useField has finished (so setModified(true) has not been run yet)\n // 5. Form is saved, setModified(false) is set in the Form/index.tsx `submit` function, \"saved successfully\" toast appears\n // 6. setModified(true) inside the timeout is run, form is set to modified again, even though it was already saved and thus set to unmodified. Bad! This should have happened before the form is saved. Now the form should be unmodified and stay that way\n // until a NEW change happens. Due to this, the \"Leave without saving\" modal appears even though it should not when leaving the page fast immediately after saving the document.\n // This is only an issue for forms which have already been set to modified true, as that causes the save button to be enabled. If we prevent this setTimeout to be run\n // for already-modified forms first place (which is unnecessary), we can avoid this issue. As for unmodified forms, this race issue will not happen, because you cannot click the save button faster\n // than the timeout in useField is run. That's because the save button won't even be enabled for clicking until the setTimeout in useField has run.\n // This fixes e2e test flakes, as e2e tests were often so fast that they were saving the form before the timeout in useField has run.\n // Specifically, this fixes the 'should not warn about unsaved changes when navigating to lexical editor with blocks node and then leaving the page after making a change and saving' lexical e2e test.\n if (modified === false) {\n // Update modified state after field value comes back\n // to avoid cursor jump caused by state value / DOM mismatch\n setTimeout(() => {\n setModified(true)\n }, 10)\n }\n }\n }\n },\n [setModified, path, dispatchField, disableFormData, hasRows, modified],\n )\n\n // Store result from hook as ref\n // to prevent unnecessary rerenders\n const result: FieldType<TValue> = useMemo(\n () => ({\n customComponents: field?.customComponents,\n errorMessage: field?.errorMessage,\n errorPaths: field?.errorPaths || [],\n filterOptions,\n formInitializing: initializing,\n formProcessing: processing,\n formSubmitted: submitted,\n initialValue,\n path,\n rows: field?.rows,\n setValue,\n showError,\n valid: field?.valid,\n value,\n }),\n [\n field,\n processing,\n setValue,\n showError,\n submitted,\n value,\n initialValue,\n path,\n filterOptions,\n initializing,\n ],\n )\n\n // Throttle the validate function\n useThrottledEffect(\n () => {\n const validateField = async () => {\n let valueToValidate = value\n\n if (field?.rows && Array.isArray(field.rows)) {\n valueToValidate = getDataByPath(path)\n }\n\n let errorMessage: string | undefined = prevErrorMessage.current\n let valid: boolean | string = prevValid.current\n\n const data = getData()\n const isValid =\n typeof validate === 'function'\n ? await validate(valueToValidate, {\n id,\n blockData: undefined, // Will be expensive to get - not worth to pass to client-side validation, as this can be obtained by the user using `useFormFields()`\n collectionSlug,\n data: documentForm?.getData ? documentForm.getData() : data,\n event: 'onChange',\n operation,\n preferences: {} as any,\n req: {\n payload: {\n config,\n },\n t,\n user,\n } as unknown as PayloadRequest,\n siblingData: getSiblingData(path),\n })\n : typeof prevErrorMessage.current === 'string'\n ? prevErrorMessage.current\n : prevValid.current\n\n if (typeof isValid === 'string') {\n valid = false\n errorMessage = isValid\n } else if (typeof isValid === 'boolean') {\n valid = isValid\n errorMessage = undefined\n }\n\n // Only dispatch if the validation result has changed\n // This will prevent unnecessary rerenders\n if (valid !== prevValid.current || errorMessage !== prevErrorMessage.current) {\n prevValid.current = valid\n prevErrorMessage.current = errorMessage\n\n const update: UPDATE = {\n type: 'UPDATE',\n errorMessage,\n path,\n rows: field?.rows,\n valid,\n validate,\n value,\n }\n\n if (disableFormData || (hasRows ? typeof value === 'number' && value > 0 : false)) {\n update.disableFormData = true\n }\n\n if (typeof dispatchField === 'function') {\n dispatchField(update)\n }\n }\n }\n\n void validateField()\n },\n 150,\n [\n value,\n disableFormData,\n dispatchField,\n getData,\n getSiblingData,\n getDataByPath,\n id,\n operation,\n path,\n user,\n validate,\n field?.rows,\n collectionSlug,\n ],\n )\n\n return result\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/Root/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AACjF,OAAO,KAAK,EACV,YAAY,EACZ,eAAe,EACf,MAAM,EACN,oBAAoB,EACpB,oBAAoB,EACpB,IAAI,EACL,MAAM,SAAS,CAAA;AAIhB,OAAO,KAAmB,MAAM,OAAO,CAAA;AAEvC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAsB9C,KAAK,KAAK,GAAG;IACX,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IAClC,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAA;IAC7B,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAA;IAC3C,QAAQ,CAAC,YAAY,EAAE,WAAW,CAAC,kBAAkB,CAAC,CAAA;IACtD,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;IAC5B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAA;IACzC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,CAAA;IAChC,QAAQ,CAAC,WAAW,EAAE,oBAAoB,CAAA;IAC1C,QAAQ,CAAC,cAAc,EAAE,oBAAoB,CAAA;IAC7C,QAAQ,CAAC,0BAA0B,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACrE,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAA;IACrB,QAAQ,CAAC,YAAY,EAAE,UAAU,CAAC,cAAc,CAAC,CAAA;IACjD,QAAQ,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,CAAA;CAC3B,CAAA;AAED,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CA+ExC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/Root/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AACjF,OAAO,KAAK,EACV,YAAY,EACZ,eAAe,EACf,MAAM,EACN,oBAAoB,EACpB,oBAAoB,EACpB,IAAI,EACL,MAAM,SAAS,CAAA;AAIhB,OAAO,KAAmB,MAAM,OAAO,CAAA;AAEvC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAuB9C,KAAK,KAAK,GAAG;IACX,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IAClC,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAA;IAC7B,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAA;IAC3C,QAAQ,CAAC,YAAY,EAAE,WAAW,CAAC,kBAAkB,CAAC,CAAA;IACtD,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;IAC5B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAA;IACzC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,CAAA;IAChC,QAAQ,CAAC,WAAW,EAAE,oBAAoB,CAAA;IAC1C,QAAQ,CAAC,cAAc,EAAE,oBAAoB,CAAA;IAC7C,QAAQ,CAAC,0BAA0B,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACrE,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAA;IACrB,QAAQ,CAAC,YAAY,EAAE,UAAU,CAAC,cAAc,CAAC,CAAA;IACjD,QAAQ,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,CAAA;CAC3B,CAAA;AAED,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAiFxC,CAAA"}
@@ -23,6 +23,7 @@ import { ServerFunctionsProvider } from '../ServerFunctions/index.js';
23
23
  import { ThemeProvider } from '../Theme/index.js';
24
24
  import { ToastContainer } from '../ToastContainer/index.js';
25
25
  import { TranslationProvider } from '../Translation/index.js';
26
+ import { UploadHandlersProvider } from '../UploadHandlers/index.js';
26
27
  export const RootProvider = ({
27
28
  children,
28
29
  config,
@@ -82,7 +83,9 @@ export const RootProvider = ({
82
83
  children: /*#__PURE__*/_jsx(DocumentEventsProvider, {
83
84
  children: /*#__PURE__*/_jsx(NavProvider, {
84
85
  initialIsOpen: isNavOpen,
85
- children: children
86
+ children: /*#__PURE__*/_jsx(UploadHandlersProvider, {
87
+ children: children
88
+ })
86
89
  })
87
90
  })
88
91
  })
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["ModalContainer","ModalProvider","ScrollInfoProvider","React","Fragment","LoadingOverlayProvider","NavProvider","StayLoggedInModal","StepNavProvider","WindowInfoProvider","AuthProvider","ClientFunctionProvider","ConfigProvider","DocumentEventsProvider","LocaleProvider","ParamsProvider","PreferencesProvider","RouteCache","RouteTransitionProvider","SearchParamsProvider","ServerFunctionsProvider","ThemeProvider","ToastContainer","TranslationProvider","RootProvider","children","config","dateFNSKey","fallbackLang","isNavOpen","languageCode","languageOptions","locale","permissions","serverFunction","switchLanguageServerAction","theme","translations","user","RouteCacheComponent","process","env","NEXT_PUBLIC_ENABLE_ROUTER_CACHE_REFRESH","_jsxs","_jsx","language","breakpoints","l","m","s","xs","classPrefix","transTime","zIndex","initialIsOpen"],"sources":["../../../src/providers/Root/index.tsx"],"sourcesContent":["'use client'\nimport type { I18nClient, I18nOptions, Language } from '@payloadcms/translations'\nimport type {\n ClientConfig,\n LanguageOptions,\n Locale,\n SanitizedPermissions,\n ServerFunctionClient,\n User,\n} from 'payload'\n\nimport { ModalContainer, ModalProvider } from '@faceless-ui/modal'\nimport { ScrollInfoProvider } from '@faceless-ui/scroll-info'\nimport React, { Fragment } from 'react'\n\nimport type { Theme } from '../Theme/index.js'\n\nimport { LoadingOverlayProvider } from '../../elements/LoadingOverlay/index.js'\nimport { NavProvider } from '../../elements/Nav/context.js'\nimport { StayLoggedInModal } from '../../elements/StayLoggedIn/index.js'\nimport { StepNavProvider } from '../../elements/StepNav/index.js'\nimport { WindowInfoProvider } from '../../providers/WindowInfo/index.js'\nimport { AuthProvider } from '../Auth/index.js'\nimport { ClientFunctionProvider } from '../ClientFunction/index.js'\nimport { ConfigProvider } from '../Config/index.js'\nimport { DocumentEventsProvider } from '../DocumentEvents/index.js'\nimport { LocaleProvider } from '../Locale/index.js'\nimport { ParamsProvider } from '../Params/index.js'\nimport { PreferencesProvider } from '../Preferences/index.js'\nimport { RouteCache } from '../RouteCache/index.js'\nimport { RouteTransitionProvider } from '../RouteTransition/index.js'\nimport { SearchParamsProvider } from '../SearchParams/index.js'\nimport { ServerFunctionsProvider } from '../ServerFunctions/index.js'\nimport { ThemeProvider } from '../Theme/index.js'\nimport { ToastContainer } from '../ToastContainer/index.js'\nimport { TranslationProvider } from '../Translation/index.js'\n\ntype Props = {\n readonly children: React.ReactNode\n readonly config: ClientConfig\n readonly dateFNSKey: Language['dateFNSKey']\n readonly fallbackLang: I18nOptions['fallbackLanguage']\n readonly isNavOpen?: boolean\n readonly languageCode: string\n readonly languageOptions: LanguageOptions\n readonly locale?: Locale['code']\n readonly permissions: SanitizedPermissions\n readonly serverFunction: ServerFunctionClient\n readonly switchLanguageServerAction?: (lang: string) => Promise<void>\n readonly theme: Theme\n readonly translations: I18nClient['translations']\n readonly user: null | User\n}\n\nexport const RootProvider: React.FC<Props> = ({\n children,\n config,\n dateFNSKey,\n fallbackLang,\n isNavOpen,\n languageCode,\n languageOptions,\n locale,\n permissions,\n serverFunction,\n switchLanguageServerAction,\n theme,\n translations,\n user,\n}) => {\n const RouteCacheComponent =\n process.env.NEXT_PUBLIC_ENABLE_ROUTER_CACHE_REFRESH === 'true' ? RouteCache : Fragment\n\n return (\n <Fragment>\n <ServerFunctionsProvider serverFunction={serverFunction}>\n <RouteTransitionProvider>\n <RouteCacheComponent>\n <ConfigProvider config={config}>\n <ClientFunctionProvider>\n <TranslationProvider\n dateFNSKey={dateFNSKey}\n fallbackLang={fallbackLang}\n language={languageCode}\n languageOptions={languageOptions}\n switchLanguageServerAction={switchLanguageServerAction}\n translations={translations}\n >\n <WindowInfoProvider\n breakpoints={{\n l: '(max-width: 1440px)',\n m: '(max-width: 1024px)',\n s: '(max-width: 768px)',\n xs: '(max-width: 400px)',\n }}\n >\n <ScrollInfoProvider>\n <SearchParamsProvider>\n <ModalProvider classPrefix=\"payload\" transTime={0} zIndex=\"var(--z-modal)\">\n <AuthProvider permissions={permissions} user={user}>\n <PreferencesProvider>\n <ThemeProvider theme={theme}>\n <ParamsProvider>\n <LocaleProvider locale={locale}>\n <StepNavProvider>\n <LoadingOverlayProvider>\n <DocumentEventsProvider>\n <NavProvider initialIsOpen={isNavOpen}>\n {children}\n </NavProvider>\n </DocumentEventsProvider>\n </LoadingOverlayProvider>\n </StepNavProvider>\n </LocaleProvider>\n </ParamsProvider>\n </ThemeProvider>\n </PreferencesProvider>\n <ModalContainer />\n <StayLoggedInModal />\n </AuthProvider>\n </ModalProvider>\n </SearchParamsProvider>\n </ScrollInfoProvider>\n </WindowInfoProvider>\n </TranslationProvider>\n </ClientFunctionProvider>\n </ConfigProvider>\n </RouteCacheComponent>\n </RouteTransitionProvider>\n </ServerFunctionsProvider>\n <ToastContainer />\n </Fragment>\n )\n}\n"],"mappings":"AAAA;;;AAWA,SAASA,cAAc,EAAEC,aAAa,QAAQ;AAC9C,SAASC,kBAAkB,QAAQ;AACnC,OAAOC,KAAA,IAASC,QAAQ,QAAQ;AAIhC,SAASC,sBAAsB,QAAQ;AACvC,SAASC,WAAW,QAAQ;AAC5B,SAASC,iBAAiB,QAAQ;AAClC,SAASC,eAAe,QAAQ;AAChC,SAASC,kBAAkB,QAAQ;AACnC,SAASC,YAAY,QAAQ;AAC7B,SAASC,sBAAsB,QAAQ;AACvC,SAASC,cAAc,QAAQ;AAC/B,SAASC,sBAAsB,QAAQ;AACvC,SAASC,cAAc,QAAQ;AAC/B,SAASC,cAAc,QAAQ;AAC/B,SAASC,mBAAmB,QAAQ;AACpC,SAASC,UAAU,QAAQ;AAC3B,SAASC,uBAAuB,QAAQ;AACxC,SAASC,oBAAoB,QAAQ;AACrC,SAASC,uBAAuB,QAAQ;AACxC,SAASC,aAAa,QAAQ;AAC9B,SAASC,cAAc,QAAQ;AAC/B,SAASC,mBAAmB,QAAQ;AAmBpC,OAAO,MAAMC,YAAA,GAAgCA,CAAC;EAC5CC,QAAQ;EACRC,MAAM;EACNC,UAAU;EACVC,YAAY;EACZC,SAAS;EACTC,YAAY;EACZC,eAAe;EACfC,MAAM;EACNC,WAAW;EACXC,cAAc;EACdC,0BAA0B;EAC1BC,KAAK;EACLC,YAAY;EACZC;AAAI,CACL;EACC,MAAMC,mBAAA,GACJC,OAAA,CAAQC,GAAG,CAACC,uCAAuC,KAAK,SAASzB,UAAA,GAAab,QAAA;EAEhF,oBACEuC,KAAA,CAACvC,QAAA;4BACCwC,IAAA,CAACxB,uBAAA;MAAwBc,cAAA,EAAgBA,cAAA;gBACvC,aAAAU,IAAA,CAAC1B,uBAAA;kBACC,aAAA0B,IAAA,CAACL,mBAAA;oBACC,aAAAK,IAAA,CAAChC,cAAA;YAAec,MAAA,EAAQA,MAAA;sBACtB,aAAAkB,IAAA,CAACjC,sBAAA;wBACC,aAAAiC,IAAA,CAACrB,mBAAA;gBACCI,UAAA,EAAYA,UAAA;gBACZC,YAAA,EAAcA,YAAA;gBACdiB,QAAA,EAAUf,YAAA;gBACVC,eAAA,EAAiBA,eAAA;gBACjBI,0BAAA,EAA4BA,0BAAA;gBAC5BE,YAAA,EAAcA,YAAA;0BAEd,aAAAO,IAAA,CAACnC,kBAAA;kBACCqC,WAAA,EAAa;oBACXC,CAAA,EAAG;oBACHC,CAAA,EAAG;oBACHC,CAAA,EAAG;oBACHC,EAAA,EAAI;kBACN;4BAEA,aAAAN,IAAA,CAAC1C,kBAAA;8BACC,aAAA0C,IAAA,CAACzB,oBAAA;gCACC,aAAAyB,IAAA,CAAC3C,aAAA;wBAAckD,WAAA,EAAY;wBAAUC,SAAA,EAAW;wBAAGC,MAAA,EAAO;kCACxD,aAAAV,KAAA,CAACjC,YAAA;0BAAauB,WAAA,EAAaA,WAAA;0BAAaK,IAAA,EAAMA,IAAA;kDAC5CM,IAAA,CAAC5B,mBAAA;sCACC,aAAA4B,IAAA,CAACvB,aAAA;8BAAce,KAAA,EAAOA,KAAA;wCACpB,aAAAQ,IAAA,CAAC7B,cAAA;0CACC,aAAA6B,IAAA,CAAC9B,cAAA;kCAAekB,MAAA,EAAQA,MAAA;4CACtB,aAAAY,IAAA,CAACpC,eAAA;8CACC,aAAAoC,IAAA,CAACvC,sBAAA;gDACC,aAAAuC,IAAA,CAAC/B,sBAAA;kDACC,aAAA+B,IAAA,CAACtC,WAAA;0CAAYgD,aAAA,EAAezB,SAAA;oDACzBJ;;;;;;;;2CASjBmB,IAAA,CAAC5C,cAAA,O,aACD4C,IAAA,CAACrC,iBAAA;;;;;;;;;;;qBAYvBqC,IAAA,CAACtB,cAAA;;AAGP","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["ModalContainer","ModalProvider","ScrollInfoProvider","React","Fragment","LoadingOverlayProvider","NavProvider","StayLoggedInModal","StepNavProvider","WindowInfoProvider","AuthProvider","ClientFunctionProvider","ConfigProvider","DocumentEventsProvider","LocaleProvider","ParamsProvider","PreferencesProvider","RouteCache","RouteTransitionProvider","SearchParamsProvider","ServerFunctionsProvider","ThemeProvider","ToastContainer","TranslationProvider","UploadHandlersProvider","RootProvider","children","config","dateFNSKey","fallbackLang","isNavOpen","languageCode","languageOptions","locale","permissions","serverFunction","switchLanguageServerAction","theme","translations","user","RouteCacheComponent","process","env","NEXT_PUBLIC_ENABLE_ROUTER_CACHE_REFRESH","_jsxs","_jsx","language","breakpoints","l","m","s","xs","classPrefix","transTime","zIndex","initialIsOpen"],"sources":["../../../src/providers/Root/index.tsx"],"sourcesContent":["'use client'\nimport type { I18nClient, I18nOptions, Language } from '@payloadcms/translations'\nimport type {\n ClientConfig,\n LanguageOptions,\n Locale,\n SanitizedPermissions,\n ServerFunctionClient,\n User,\n} from 'payload'\n\nimport { ModalContainer, ModalProvider } from '@faceless-ui/modal'\nimport { ScrollInfoProvider } from '@faceless-ui/scroll-info'\nimport React, { Fragment } from 'react'\n\nimport type { Theme } from '../Theme/index.js'\n\nimport { LoadingOverlayProvider } from '../../elements/LoadingOverlay/index.js'\nimport { NavProvider } from '../../elements/Nav/context.js'\nimport { StayLoggedInModal } from '../../elements/StayLoggedIn/index.js'\nimport { StepNavProvider } from '../../elements/StepNav/index.js'\nimport { WindowInfoProvider } from '../../providers/WindowInfo/index.js'\nimport { AuthProvider } from '../Auth/index.js'\nimport { ClientFunctionProvider } from '../ClientFunction/index.js'\nimport { ConfigProvider } from '../Config/index.js'\nimport { DocumentEventsProvider } from '../DocumentEvents/index.js'\nimport { LocaleProvider } from '../Locale/index.js'\nimport { ParamsProvider } from '../Params/index.js'\nimport { PreferencesProvider } from '../Preferences/index.js'\nimport { RouteCache } from '../RouteCache/index.js'\nimport { RouteTransitionProvider } from '../RouteTransition/index.js'\nimport { SearchParamsProvider } from '../SearchParams/index.js'\nimport { ServerFunctionsProvider } from '../ServerFunctions/index.js'\nimport { ThemeProvider } from '../Theme/index.js'\nimport { ToastContainer } from '../ToastContainer/index.js'\nimport { TranslationProvider } from '../Translation/index.js'\nimport { UploadHandlersProvider } from '../UploadHandlers/index.js'\n\ntype Props = {\n readonly children: React.ReactNode\n readonly config: ClientConfig\n readonly dateFNSKey: Language['dateFNSKey']\n readonly fallbackLang: I18nOptions['fallbackLanguage']\n readonly isNavOpen?: boolean\n readonly languageCode: string\n readonly languageOptions: LanguageOptions\n readonly locale?: Locale['code']\n readonly permissions: SanitizedPermissions\n readonly serverFunction: ServerFunctionClient\n readonly switchLanguageServerAction?: (lang: string) => Promise<void>\n readonly theme: Theme\n readonly translations: I18nClient['translations']\n readonly user: null | User\n}\n\nexport const RootProvider: React.FC<Props> = ({\n children,\n config,\n dateFNSKey,\n fallbackLang,\n isNavOpen,\n languageCode,\n languageOptions,\n locale,\n permissions,\n serverFunction,\n switchLanguageServerAction,\n theme,\n translations,\n user,\n}) => {\n const RouteCacheComponent =\n process.env.NEXT_PUBLIC_ENABLE_ROUTER_CACHE_REFRESH === 'true' ? RouteCache : Fragment\n\n return (\n <Fragment>\n <ServerFunctionsProvider serverFunction={serverFunction}>\n <RouteTransitionProvider>\n <RouteCacheComponent>\n <ConfigProvider config={config}>\n <ClientFunctionProvider>\n <TranslationProvider\n dateFNSKey={dateFNSKey}\n fallbackLang={fallbackLang}\n language={languageCode}\n languageOptions={languageOptions}\n switchLanguageServerAction={switchLanguageServerAction}\n translations={translations}\n >\n <WindowInfoProvider\n breakpoints={{\n l: '(max-width: 1440px)',\n m: '(max-width: 1024px)',\n s: '(max-width: 768px)',\n xs: '(max-width: 400px)',\n }}\n >\n <ScrollInfoProvider>\n <SearchParamsProvider>\n <ModalProvider classPrefix=\"payload\" transTime={0} zIndex=\"var(--z-modal)\">\n <AuthProvider permissions={permissions} user={user}>\n <PreferencesProvider>\n <ThemeProvider theme={theme}>\n <ParamsProvider>\n <LocaleProvider locale={locale}>\n <StepNavProvider>\n <LoadingOverlayProvider>\n <DocumentEventsProvider>\n <NavProvider initialIsOpen={isNavOpen}>\n <UploadHandlersProvider>\n {children}\n </UploadHandlersProvider>\n </NavProvider>\n </DocumentEventsProvider>\n </LoadingOverlayProvider>\n </StepNavProvider>\n </LocaleProvider>\n </ParamsProvider>\n </ThemeProvider>\n </PreferencesProvider>\n <ModalContainer />\n <StayLoggedInModal />\n </AuthProvider>\n </ModalProvider>\n </SearchParamsProvider>\n </ScrollInfoProvider>\n </WindowInfoProvider>\n </TranslationProvider>\n </ClientFunctionProvider>\n </ConfigProvider>\n </RouteCacheComponent>\n </RouteTransitionProvider>\n </ServerFunctionsProvider>\n <ToastContainer />\n </Fragment>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,21 @@
1
+ import type { UploadCollectionSlug } from 'payload';
2
+ import React from 'react';
3
+ type UploadHandler = (args: {
4
+ file: File;
5
+ updateFilename: (filename: string) => void;
6
+ }) => Promise<unknown>;
7
+ export type UploadHandlersContext = {
8
+ getUploadHandler: (args: {
9
+ collectionSlug: UploadCollectionSlug;
10
+ }) => null | UploadHandler;
11
+ setUploadHandler: (args: {
12
+ collectionSlug: UploadCollectionSlug;
13
+ handler: UploadHandler;
14
+ }) => unknown;
15
+ };
16
+ export declare const UploadHandlersProvider: ({ children }: {
17
+ children: any;
18
+ }) => React.JSX.Element;
19
+ export declare const useUploadHandlers: () => UploadHandlersContext;
20
+ export {};
21
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/UploadHandlers/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAA;AAEnD,OAAO,KAAmB,MAAM,OAAO,CAAA;AAEvC,KAAK,aAAa,GAAG,CAAC,IAAI,EAAE;IAC1B,IAAI,EAAE,IAAI,CAAA;IACV,cAAc,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAA;CAC3C,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;AAEtB,MAAM,MAAM,qBAAqB,GAAG;IAClC,gBAAgB,EAAE,CAAC,IAAI,EAAE;QAAE,cAAc,EAAE,oBAAoB,CAAA;KAAE,KAAK,IAAI,GAAG,aAAa,CAAA;IAC1F,gBAAgB,EAAE,CAAC,IAAI,EAAE;QACvB,cAAc,EAAE,oBAAoB,CAAA;QACpC,OAAO,EAAE,aAAa,CAAA;KACvB,KAAK,OAAO,CAAA;CACd,CAAA;AAID,eAAO,MAAM,sBAAsB;;uBAuBlC,CAAA;AAED,eAAO,MAAM,iBAAiB,QAAO,qBAQpC,CAAA"}
@@ -0,0 +1,72 @@
1
+ 'use client';
2
+
3
+ import { c as _c } from "react/compiler-runtime";
4
+ import { jsx as _jsx } from "react/jsx-runtime";
5
+ import React, { useState } from 'react';
6
+ const Context = /*#__PURE__*/React.createContext(null);
7
+ export const UploadHandlersProvider = t0 => {
8
+ const $ = _c(6);
9
+ const {
10
+ children
11
+ } = t0;
12
+ const [uploadHandlers, setUploadHandlers] = useState(_temp);
13
+ let t1;
14
+ if ($[0] !== uploadHandlers) {
15
+ t1 = t2 => {
16
+ const {
17
+ collectionSlug
18
+ } = t2;
19
+ return uploadHandlers.get(collectionSlug);
20
+ };
21
+ $[0] = uploadHandlers;
22
+ $[1] = t1;
23
+ } else {
24
+ t1 = $[1];
25
+ }
26
+ const getUploadHandler = t1;
27
+ let t2;
28
+ if ($[2] === Symbol.for("react.memo_cache_sentinel")) {
29
+ t2 = t3 => {
30
+ const {
31
+ collectionSlug: collectionSlug_0,
32
+ handler
33
+ } = t3;
34
+ setUploadHandlers(uploadHandlers_0 => {
35
+ const clone = new Map(uploadHandlers_0);
36
+ clone.set(collectionSlug_0, handler);
37
+ return clone;
38
+ });
39
+ };
40
+ $[2] = t2;
41
+ } else {
42
+ t2 = $[2];
43
+ }
44
+ const setUploadHandler = t2;
45
+ let t3;
46
+ if ($[3] !== children || $[4] !== getUploadHandler) {
47
+ t3 = _jsx(Context.Provider, {
48
+ value: {
49
+ getUploadHandler,
50
+ setUploadHandler
51
+ },
52
+ children
53
+ });
54
+ $[3] = children;
55
+ $[4] = getUploadHandler;
56
+ $[5] = t3;
57
+ } else {
58
+ t3 = $[5];
59
+ }
60
+ return t3;
61
+ };
62
+ export const useUploadHandlers = () => {
63
+ const context = React.useContext(Context);
64
+ if (context === null) {
65
+ throw new Error("useUploadHandlers must be used within UploadHandlersProvider");
66
+ }
67
+ return context;
68
+ };
69
+ function _temp() {
70
+ return new Map();
71
+ }
72
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["c","_c","React","useState","Context","createContext","UploadHandlersProvider","t0","$","children","uploadHandlers","setUploadHandlers","_temp","t1","t2","collectionSlug","get","getUploadHandler","Symbol","for","t3","collectionSlug_0","handler","uploadHandlers_0","clone","Map","set","setUploadHandler","_jsx","Provider","value","useUploadHandlers","context","useContext","Error"],"sources":["../../../src/providers/UploadHandlers/index.tsx"],"sourcesContent":["'use client'\nimport type { UploadCollectionSlug } from 'payload'\n\nimport React, { useState } from 'react'\n\ntype UploadHandler = (args: {\n file: File\n updateFilename: (filename: string) => void\n}) => Promise<unknown>\n\nexport type UploadHandlersContext = {\n getUploadHandler: (args: { collectionSlug: UploadCollectionSlug }) => null | UploadHandler\n setUploadHandler: (args: {\n collectionSlug: UploadCollectionSlug\n handler: UploadHandler\n }) => unknown\n}\n\nconst Context = React.createContext<null | UploadHandlersContext>(null)\n\nexport const UploadHandlersProvider = ({ children }) => {\n const [uploadHandlers, setUploadHandlers] = useState<Map<UploadCollectionSlug, UploadHandler>>(\n () => new Map(),\n )\n\n const getUploadHandler: UploadHandlersContext['getUploadHandler'] = ({ collectionSlug }) => {\n return uploadHandlers.get(collectionSlug)\n }\n\n const setUploadHandler: UploadHandlersContext['setUploadHandler'] = ({\n collectionSlug,\n handler,\n }) => {\n setUploadHandlers((uploadHandlers) => {\n const clone = new Map(uploadHandlers)\n clone.set(collectionSlug, handler)\n return clone\n })\n }\n\n return (\n <Context.Provider value={{ getUploadHandler, setUploadHandler }}>{children}</Context.Provider>\n )\n}\n\nexport const useUploadHandlers = (): UploadHandlersContext => {\n const context = React.useContext(Context)\n\n if (context === null) {\n throw new Error('useUploadHandlers must be used within UploadHandlersProvider')\n }\n\n return context\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAGA,OAAOC,KAAA,IAASC,QAAQ,QAAQ;AAehC,MAAMC,OAAA,gBAAUF,KAAA,CAAMG,aAAa,CAA+B;AAElE,OAAO,MAAMC,sBAAA,GAAyBC,EAAA;EAAA,MAAAC,CAAA,GAAAP,EAAA;EAAC;IAAAQ;EAAA,IAAAF,EAAY;EACjD,OAAAG,cAAA,EAAAC,iBAAA,IAA4CR,QAAA,CAAAS,KAChC;EAAA,IAAAC,EAAA;EAAA,IAAAL,CAAA,QAAAE,cAAA;IAGwDG,EAAA,GAAAC,EAAA;MAAC;QAAAC;MAAA,IAAAD,EAAkB;MAAA,OAC9EJ,cAAA,CAAAM,GAAA,CAAmBD,cAAA;IAAA;IAC5BP,CAAA,MAAAE,cAAA;IAAAF,CAAA,MAAAK,EAAA;EAAA;IAAAA,EAAA,GAAAL,CAAA;EAAA;EAFA,MAAAS,gBAAA,GAAoEJ,EAEpE;EAAA,IAAAC,EAAA;EAAA,IAAAN,CAAA,QAAAU,MAAA,CAAAC,GAAA;IAEoEL,EAAA,GAAAM,EAAA;MAAC;QAAAL,cAAA,EAAAM,gBAAA;QAAAC;MAAA,IAAAF,EAGpE;MACCT,iBAAA,CAAAY,gBAAA;QACE,MAAAC,KAAA,OAAAC,GAAA,CAAsBf,gBAAA;QACtBc,KAAA,CAAAE,GAAA,CAAUX,gBAAA,EAAgBO,OAAA;QAAA,OACnBE,KAAA;MAAA,CACT;IAAA;IACFhB,CAAA,MAAAM,EAAA;EAAA;IAAAA,EAAA,GAAAN,CAAA;EAAA;EATA,MAAAmB,gBAAA,GAAoEb,EASpE;EAAA,IAAAM,EAAA;EAAA,IAAAZ,CAAA,QAAAC,QAAA,IAAAD,CAAA,QAAAS,gBAAA;IAGEG,EAAA,GAAAQ,IAAA,CAAAxB,OAAA,CAAAyB,QAAA;MAAAC,KAAA;QAAAb,gBAAA;QAAAU;MAAA;MAAAlB;IAAA,C;;;;;;;SAAAW,E;CAEJ;AAEA,OAAO,MAAMW,iBAAA,GAAoBA,CAAA;EAC/B,MAAAC,OAAA,GAAgB9B,KAAA,CAAA+B,UAAA,CAAA7B,OAAiB;EAAA,IAE7B4B,OAAA,SAAY;IAAA,UAAAE,KAAA,CACE;EAAA;EAAA,OAGXF,OAAA;AAAA,CACT;AAjCsC,SAAApB,MAAA;EAAA,WAAAa,GAAA;AAAA","ignoreList":[]}