@payloadcms/ui 3.0.0-canary.67aae47 → 3.0.0-canary.6b9e4be

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 (85) hide show
  1. package/dist/elements/Banner/index.d.ts.map +1 -1
  2. package/dist/elements/Banner/index.js.map +1 -1
  3. package/dist/elements/BulkUpload/AddingFilesView/index.js +2 -2
  4. package/dist/elements/BulkUpload/AddingFilesView/index.js.map +1 -1
  5. package/dist/elements/BulkUpload/EditForm/index.d.ts.map +1 -1
  6. package/dist/elements/BulkUpload/EditForm/index.js +13 -2
  7. package/dist/elements/BulkUpload/EditForm/index.js.map +1 -1
  8. package/dist/elements/BulkUpload/FormsManager/reducer.js +14 -14
  9. package/dist/elements/BulkUpload/FormsManager/reducer.js.map +1 -1
  10. package/dist/elements/DocumentDrawer/DrawerContent.d.ts.map +1 -1
  11. package/dist/elements/DocumentDrawer/DrawerContent.js +44 -30
  12. package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
  13. package/dist/elements/DuplicateDocument/index.d.ts +1 -1
  14. package/dist/elements/DuplicateDocument/index.d.ts.map +1 -1
  15. package/dist/elements/DuplicateDocument/index.js.map +1 -1
  16. package/dist/elements/EditMany/index.d.ts.map +1 -1
  17. package/dist/elements/EditMany/index.js +155 -247
  18. package/dist/elements/EditMany/index.js.map +1 -1
  19. package/dist/elements/RenderServerComponent/index.d.ts +0 -6
  20. package/dist/elements/RenderServerComponent/index.d.ts.map +1 -1
  21. package/dist/elements/RenderServerComponent/index.js +1 -24
  22. package/dist/elements/RenderServerComponent/index.js.map +1 -1
  23. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js +1 -1
  24. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js.map +1 -1
  25. package/dist/elements/Table/DefaultCell/index.d.ts +1 -1
  26. package/dist/elements/Table/DefaultCell/index.d.ts.map +1 -1
  27. package/dist/elements/Table/DefaultCell/index.js +2 -2
  28. package/dist/elements/Table/DefaultCell/index.js.map +1 -1
  29. package/dist/elements/Table/RelationshipProvider/reducer.js +16 -16
  30. package/dist/elements/Table/RelationshipProvider/reducer.js.map +1 -1
  31. package/dist/elements/WhereBuilder/Condition/DefaultFilter/index.js +4 -4
  32. package/dist/elements/WhereBuilder/Condition/DefaultFilter/index.js.map +1 -1
  33. package/dist/elements/WhereBuilder/Condition/Relationship/optionsReducer.js +7 -7
  34. package/dist/elements/WhereBuilder/Condition/Relationship/optionsReducer.js.map +1 -1
  35. package/dist/exports/client/index.js +10 -10
  36. package/dist/exports/client/index.js.map +4 -4
  37. package/dist/exports/shared/index.d.ts +1 -0
  38. package/dist/exports/shared/index.d.ts.map +1 -1
  39. package/dist/exports/shared/index.js +2 -2
  40. package/dist/exports/shared/index.js.map +4 -4
  41. package/dist/fields/Relationship/optionsReducer.js +42 -42
  42. package/dist/fields/Relationship/optionsReducer.js.map +1 -1
  43. package/dist/forms/Form/fieldReducer.js +170 -170
  44. package/dist/forms/Form/fieldReducer.js.map +1 -1
  45. package/dist/forms/Form/index.d.ts.map +1 -1
  46. package/dist/forms/Form/index.js +7 -29
  47. package/dist/forms/Form/index.js.map +1 -1
  48. package/dist/forms/RenderFields/RenderField.js +6 -6
  49. package/dist/forms/RenderFields/RenderField.js.map +1 -1
  50. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js +1 -1
  51. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js.map +1 -1
  52. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/promise.js +17 -17
  53. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/promise.js.map +1 -1
  54. package/dist/forms/fieldSchemasToFormState/renderField.d.ts.map +1 -1
  55. package/dist/forms/fieldSchemasToFormState/renderField.js +2 -1
  56. package/dist/forms/fieldSchemasToFormState/renderField.js.map +1 -1
  57. package/dist/providers/ServerFunctions/index.d.ts +0 -2
  58. package/dist/providers/ServerFunctions/index.d.ts.map +1 -1
  59. package/dist/providers/ServerFunctions/index.js +16 -67
  60. package/dist/providers/ServerFunctions/index.js.map +1 -1
  61. package/dist/utilities/abortAndIgnore.d.ts +2 -0
  62. package/dist/utilities/abortAndIgnore.d.ts.map +1 -0
  63. package/dist/utilities/abortAndIgnore.js +10 -0
  64. package/dist/utilities/abortAndIgnore.js.map +1 -0
  65. package/dist/utilities/buildFieldSchemaMap/traverseFields.js +12 -12
  66. package/dist/utilities/buildFieldSchemaMap/traverseFields.js.map +1 -1
  67. package/dist/utilities/buildFormState.d.ts +0 -4
  68. package/dist/utilities/buildFormState.d.ts.map +1 -1
  69. package/dist/utilities/buildFormState.js +1 -15
  70. package/dist/utilities/buildFormState.js.map +1 -1
  71. package/dist/utilities/buildTableState.d.ts +2 -1
  72. package/dist/utilities/buildTableState.d.ts.map +1 -1
  73. package/dist/utilities/buildTableState.js +6 -3
  74. package/dist/utilities/buildTableState.js.map +1 -1
  75. package/dist/utilities/handleFormStateLocking.d.ts.map +1 -1
  76. package/dist/utilities/handleFormStateLocking.js +2 -0
  77. package/dist/utilities/handleFormStateLocking.js.map +1 -1
  78. package/dist/views/Edit/index.d.ts.map +1 -1
  79. package/dist/views/Edit/index.js +11 -18
  80. package/dist/views/Edit/index.js.map +1 -1
  81. package/dist/views/List/index.d.ts.map +1 -1
  82. package/dist/views/List/index.js +41 -52
  83. package/dist/views/List/index.js.map +1 -1
  84. package/license.md +22 -0
  85. package/package.json +15 -6
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/Banner/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AAEvC,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,cAAc,CAAA;AAMrB,KAAK,OAAO,GAAG,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAA;AAE1C,MAAM,MAAM,KAAK,GAAG,QAAQ,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;IAC5B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACtB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,IAAI,CAAC,EAAE,SAAS,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,CAAA;CAChD,CAAC,CAAA;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,EAAE,EAAE,MAAM,CAAA;CACX,CAAA;AAED,eAAO,MAAM,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAqClC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/Banner/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AAGvC,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,cAAc,CAAA;AAMrB,KAAK,OAAO,GAAG,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAA;AAE1C,MAAM,MAAM,KAAK,GAAG,QAAQ,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;IAC5B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACtB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,IAAI,CAAC,EAAE,SAAS,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,CAAA;CAChD,CAAC,CAAA;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,EAAE,EAAE,MAAM,CAAA;CACX,CAAA;AAED,eAAO,MAAM,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAqClC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["LinkImport","React","Link","default","baseClass","Banner","type","alignIcon","children","className","icon","onClick","to","classes","filter","Boolean","join","RenderedType","_jsxs","href","_jsx","Fragment"],"sources":["../../../src/elements/Banner/index.tsx"],"sourcesContent":["'use client'\nimport LinkImport from 'next/link.js' // TODO: abstract this out to support all routers\nimport type { MouseEvent } from 'react'\n\nimport React from 'react'\n\nimport './index.scss'\n\nconst Link = (LinkImport.default || LinkImport) as unknown as typeof LinkImport.default\n\nconst baseClass = 'banner'\n\ntype onClick = (event: MouseEvent) => void\n\nexport type Props = Readonly<{\n alignIcon?: 'left' | 'right'\n children?: React.ReactNode\n className?: string\n icon?: React.ReactNode\n onClick?: onClick\n to?: string\n type?: 'default' | 'error' | 'info' | 'success'\n}>\n\nexport type RenderedTypeProps = {\n children?: React.ReactNode\n className?: string\n onClick?: onClick\n to: string\n}\n\nexport const Banner: React.FC<Props> = ({\n type = 'default',\n alignIcon = 'right',\n children,\n className,\n icon,\n onClick,\n to,\n}) => {\n const classes = [\n baseClass,\n `${baseClass}--type-${type}`,\n className && className,\n to && `${baseClass}--has-link`,\n (to || onClick) && `${baseClass}--has-action`,\n icon && `${baseClass}--has-icon`,\n icon && `${baseClass}--align-icon-${alignIcon}`,\n ]\n .filter(Boolean)\n .join(' ')\n\n let RenderedType: React.ComponentType<RenderedTypeProps> | React.ElementType = 'div'\n\n if (onClick && !to) {\n RenderedType = 'button'\n }\n if (to) {\n RenderedType = Link\n }\n\n return (\n <RenderedType className={classes} href={to || null} onClick={onClick}>\n {icon && alignIcon === 'left' && <React.Fragment>{icon}</React.Fragment>}\n <span className={`${baseClass}__content`}>{children}</span>\n {icon && alignIcon === 'right' && <React.Fragment>{icon}</React.Fragment>}\n </RenderedType>\n )\n}\n"],"mappings":"AAAA;;;AACA,OAAOA,UAAA,MAAgB,eAAc,CAAC;AAGtC,OAAOC,KAAA,MAAW;AAElB,OAAO;AAEP,MAAMC,IAAA,GAAQF,UAAA,CAAWG,OAAO,IAAIH,UAAA;AAEpC,MAAMI,SAAA,GAAY;AAqBlB,OAAO,MAAMC,MAAA,GAA0BA,CAAC;EACtCC,IAAA,GAAO,SAAS;EAChBC,SAAA,GAAY,OAAO;EACnBC,QAAQ;EACRC,SAAS;EACTC,IAAI;EACJC,OAAO;EACPC;AAAE,CACH;EACC,MAAMC,OAAA,GAAU,CACdT,SAAA,EACA,GAAGA,SAAA,UAAmBE,IAAA,EAAM,EAC5BG,SAAA,IAAaA,SAAA,EACbG,EAAA,IAAM,GAAGR,SAAA,YAAqB,EAC7B,CAAAQ,EAAA,IAAMD,OAAM,KAAM,GAAGP,SAAA,cAAuB,EAC7CM,IAAA,IAAQ,GAAGN,SAAA,YAAqB,EAChCM,IAAA,IAAQ,GAAGN,SAAA,gBAAyBG,SAAA,EAAW,CAChD,CACEO,MAAM,CAACC,OAAA,EACPC,IAAI,CAAC;EAER,IAAIC,YAAA,GAA2E;EAE/E,IAAIN,OAAA,IAAW,CAACC,EAAA,EAAI;IAClBK,YAAA,GAAe;EACjB;EACA,IAAIL,EAAA,EAAI;IACNK,YAAA,GAAef,IAAA;EACjB;EAEA,oBACEgB,KAAA,CAACD,YAAA;IAAaR,SAAA,EAAWI,OAAA;IAASM,IAAA,EAAMP,EAAA,IAAM;IAAMD,OAAA,EAASA,OAAA;eAC1DD,IAAA,IAAQH,SAAA,KAAc,uBAAUa,IAAA,CAACnB,KAAA,CAAMoB,QAAQ;gBAAEX;qBAClDU,IAAA,CAAC;MAAKX,SAAA,EAAW,GAAGL,SAAA,WAAoB;gBAAGI;QAC1CE,IAAA,IAAQH,SAAA,KAAc,wBAAWa,IAAA,CAACnB,KAAA,CAAMoB,QAAQ;gBAAEX;;;AAGzD","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["LinkImport","React","Link","default","baseClass","Banner","type","alignIcon","children","className","icon","onClick","to","classes","filter","Boolean","join","RenderedType","_jsxs","href","_jsx","Fragment"],"sources":["../../../src/elements/Banner/index.tsx"],"sourcesContent":["'use client'\nimport type { MouseEvent } from 'react'\n\nimport LinkImport from 'next/link.js' // TODO: abstract this out to support all routers\nimport React from 'react'\n\nimport './index.scss'\n\nconst Link = (LinkImport.default || LinkImport) as unknown as typeof LinkImport.default\n\nconst baseClass = 'banner'\n\ntype onClick = (event: MouseEvent) => void\n\nexport type Props = Readonly<{\n alignIcon?: 'left' | 'right'\n children?: React.ReactNode\n className?: string\n icon?: React.ReactNode\n onClick?: onClick\n to?: string\n type?: 'default' | 'error' | 'info' | 'success'\n}>\n\nexport type RenderedTypeProps = {\n children?: React.ReactNode\n className?: string\n onClick?: onClick\n to: string\n}\n\nexport const Banner: React.FC<Props> = ({\n type = 'default',\n alignIcon = 'right',\n children,\n className,\n icon,\n onClick,\n to,\n}) => {\n const classes = [\n baseClass,\n `${baseClass}--type-${type}`,\n className && className,\n to && `${baseClass}--has-link`,\n (to || onClick) && `${baseClass}--has-action`,\n icon && `${baseClass}--has-icon`,\n icon && `${baseClass}--align-icon-${alignIcon}`,\n ]\n .filter(Boolean)\n .join(' ')\n\n let RenderedType: React.ComponentType<RenderedTypeProps> | React.ElementType = 'div'\n\n if (onClick && !to) {\n RenderedType = 'button'\n }\n if (to) {\n RenderedType = Link\n }\n\n return (\n <RenderedType className={classes} href={to || null} onClick={onClick}>\n {icon && alignIcon === 'left' && <React.Fragment>{icon}</React.Fragment>}\n <span className={`${baseClass}__content`}>{children}</span>\n {icon && alignIcon === 'right' && <React.Fragment>{icon}</React.Fragment>}\n </RenderedType>\n )\n}\n"],"mappings":"AAAA;;;AAGA,OAAOA,UAAA,MAAgB,eAAc,CAAC;AACtC,OAAOC,KAAA,MAAW;AAElB,OAAO;AAEP,MAAMC,IAAA,GAAQF,UAAA,CAAWG,OAAO,IAAIH,UAAA;AAEpC,MAAMI,SAAA,GAAY;AAqBlB,OAAO,MAAMC,MAAA,GAA0BA,CAAC;EACtCC,IAAA,GAAO,SAAS;EAChBC,SAAA,GAAY,OAAO;EACnBC,QAAQ;EACRC,SAAS;EACTC,IAAI;EACJC,OAAO;EACPC;AAAE,CACH;EACC,MAAMC,OAAA,GAAU,CACdT,SAAA,EACA,GAAGA,SAAA,UAAmBE,IAAA,EAAM,EAC5BG,SAAA,IAAaA,SAAA,EACbG,EAAA,IAAM,GAAGR,SAAA,YAAqB,EAC7B,CAAAQ,EAAA,IAAMD,OAAM,KAAM,GAAGP,SAAA,cAAuB,EAC7CM,IAAA,IAAQ,GAAGN,SAAA,YAAqB,EAChCM,IAAA,IAAQ,GAAGN,SAAA,gBAAyBG,SAAA,EAAW,CAChD,CACEO,MAAM,CAACC,OAAA,EACPC,IAAI,CAAC;EAER,IAAIC,YAAA,GAA2E;EAE/E,IAAIN,OAAA,IAAW,CAACC,EAAA,EAAI;IAClBK,YAAA,GAAe;EACjB;EACA,IAAIL,EAAA,EAAI;IACNK,YAAA,GAAef,IAAA;EACjB;EAEA,oBACEgB,KAAA,CAACD,YAAA;IAAaR,SAAA,EAAWI,OAAA;IAASM,IAAA,EAAMP,EAAA,IAAM;IAAMD,OAAA,EAASA,OAAA;eAC1DD,IAAA,IAAQH,SAAA,KAAc,uBAAUa,IAAA,CAACnB,KAAA,CAAMoB,QAAQ;gBAAEX;qBAClDU,IAAA,CAAC;MAAKX,SAAA,EAAW,GAAGL,SAAA,WAAoB;gBAAGI;QAC1CE,IAAA,IAAQH,SAAA,KAAc,wBAAWa,IAAA,CAACnB,KAAA,CAAMoB,QAAQ;gBAAEX;;;AAGzD","ignoreList":[]}
@@ -24,11 +24,11 @@ export function AddingFilesView() {
24
24
  activeIndex,
25
25
  collectionSlug,
26
26
  docPermissions,
27
+ documentSlots,
27
28
  forms,
28
29
  hasPublishPermission,
29
30
  hasSavePermission,
30
- hasSubmitted,
31
- documentSlots
31
+ hasSubmitted
32
32
  } = useFormsManager();
33
33
  const activeForm = forms[activeIndex];
34
34
  const {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","useModal","getTranslation","reduceFieldsToValues","React","useAuth","useConfig","DocumentInfoProvider","useTranslation","ActionsBar","discardBulkUploadModalSlug","DiscardWithoutSaving","EditForm","FileSidebar","useFormsManager","DrawerHeader","baseClass","AddingFilesView","$","activeIndex","collectionSlug","docPermissions","forms","hasPublishPermission","hasSavePermission","hasSubmitted","documentSlots","activeForm","getEntityConfig","i18n","user","openModal","t0","collection","t1","_jsxs","className","children","_jsx","onClose","title","labels","singular","currentEditor","hasPublishedDoc","id","initialData","formState","initialState","isLocked","lastUpdateTime","mostRecentVersionIsAutosaved","unpublishedVersionCount","Upload","versionCount","submitted","length"],"sources":["../../../../src/elements/BulkUpload/AddingFilesView/index.tsx"],"sourcesContent":["'use client'\n\nimport type { ClientCollectionConfig } from 'payload'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport { reduceFieldsToValues } from 'payload/shared'\nimport React from 'react'\n\nimport { useAuth } from '../../../providers/Auth/index.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { DocumentInfoProvider } from '../../../providers/DocumentInfo/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { ActionsBar } from '../ActionsBar/index.js'\nimport { discardBulkUploadModalSlug, DiscardWithoutSaving } from '../DiscardWithoutSaving/index.js'\nimport { EditForm } from '../EditForm/index.js'\nimport { FileSidebar } from '../FileSidebar/index.js'\nimport { useFormsManager } from '../FormsManager/index.js'\nimport { DrawerHeader } from '../Header/index.js'\nimport './index.scss'\n\nconst baseClass = 'bulk-upload--file-manager'\n\nexport function AddingFilesView() {\n const {\n activeIndex,\n collectionSlug,\n docPermissions,\n forms,\n hasPublishPermission,\n hasSavePermission,\n hasSubmitted,\n documentSlots,\n } = useFormsManager()\n const activeForm = forms[activeIndex]\n const { getEntityConfig } = useConfig()\n const { i18n } = useTranslation()\n const { user } = useAuth()\n const { openModal } = useModal()\n\n const collection = getEntityConfig({ collectionSlug }) as ClientCollectionConfig\n\n return (\n <div className={baseClass}>\n <FileSidebar />\n\n <div className={`${baseClass}__editView`}>\n <DrawerHeader\n onClose={() => openModal(discardBulkUploadModalSlug)}\n title={getTranslation(collection.labels.singular, i18n)}\n />\n {activeForm ? (\n <DocumentInfoProvider\n collectionSlug={collectionSlug}\n currentEditor={user}\n docPermissions={docPermissions}\n hasPublishedDoc={false}\n hasPublishPermission={hasPublishPermission}\n hasSavePermission={hasSavePermission}\n id={null}\n initialData={reduceFieldsToValues(activeForm.formState, true)}\n initialState={activeForm.formState}\n isLocked={false}\n key={`${activeIndex}-${forms.length}`}\n lastUpdateTime={0}\n mostRecentVersionIsAutosaved={false}\n unpublishedVersionCount={0}\n Upload={documentSlots.Upload}\n versionCount={0}\n >\n <ActionsBar />\n <EditForm submitted={hasSubmitted} />\n </DocumentInfoProvider>\n ) : null}\n </div>\n\n <DiscardWithoutSaving />\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","useModal","getTranslation","reduceFieldsToValues","React","useAuth","useConfig","DocumentInfoProvider","useTranslation","ActionsBar","discardBulkUploadModalSlug","DiscardWithoutSaving","EditForm","FileSidebar","useFormsManager","DrawerHeader","baseClass","AddingFilesView","$","activeIndex","collectionSlug","docPermissions","documentSlots","forms","hasPublishPermission","hasSavePermission","hasSubmitted","activeForm","getEntityConfig","i18n","user","openModal","t0","collection","t1","_jsxs","className","children","_jsx","onClose","title","labels","singular","currentEditor","hasPublishedDoc","id","initialData","formState","initialState","isLocked","lastUpdateTime","mostRecentVersionIsAutosaved","unpublishedVersionCount","Upload","versionCount","submitted","length"],"sources":["../../../../src/elements/BulkUpload/AddingFilesView/index.tsx"],"sourcesContent":["'use client'\n\nimport type { ClientCollectionConfig } from 'payload'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport { reduceFieldsToValues } from 'payload/shared'\nimport React from 'react'\n\nimport { useAuth } from '../../../providers/Auth/index.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { DocumentInfoProvider } from '../../../providers/DocumentInfo/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { ActionsBar } from '../ActionsBar/index.js'\nimport { discardBulkUploadModalSlug, DiscardWithoutSaving } from '../DiscardWithoutSaving/index.js'\nimport { EditForm } from '../EditForm/index.js'\nimport { FileSidebar } from '../FileSidebar/index.js'\nimport { useFormsManager } from '../FormsManager/index.js'\nimport { DrawerHeader } from '../Header/index.js'\nimport './index.scss'\n\nconst baseClass = 'bulk-upload--file-manager'\n\nexport function AddingFilesView() {\n const {\n activeIndex,\n collectionSlug,\n docPermissions,\n documentSlots,\n forms,\n hasPublishPermission,\n hasSavePermission,\n hasSubmitted,\n } = useFormsManager()\n const activeForm = forms[activeIndex]\n const { getEntityConfig } = useConfig()\n const { i18n } = useTranslation()\n const { user } = useAuth()\n const { openModal } = useModal()\n\n const collection = getEntityConfig({ collectionSlug }) as ClientCollectionConfig\n\n return (\n <div className={baseClass}>\n <FileSidebar />\n\n <div className={`${baseClass}__editView`}>\n <DrawerHeader\n onClose={() => openModal(discardBulkUploadModalSlug)}\n title={getTranslation(collection.labels.singular, i18n)}\n />\n {activeForm ? (\n <DocumentInfoProvider\n collectionSlug={collectionSlug}\n currentEditor={user}\n docPermissions={docPermissions}\n hasPublishedDoc={false}\n hasPublishPermission={hasPublishPermission}\n hasSavePermission={hasSavePermission}\n id={null}\n initialData={reduceFieldsToValues(activeForm.formState, true)}\n initialState={activeForm.formState}\n isLocked={false}\n key={`${activeIndex}-${forms.length}`}\n lastUpdateTime={0}\n mostRecentVersionIsAutosaved={false}\n unpublishedVersionCount={0}\n Upload={documentSlots.Upload}\n versionCount={0}\n >\n <ActionsBar />\n <EditForm submitted={hasSubmitted} />\n </DocumentInfoProvider>\n ) : null}\n </div>\n\n <DiscardWithoutSaving />\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/BulkUpload/EditForm/index.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAsB,MAAM,OAAO,CAAA;AAE1C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAkB/C,OAAO,cAAc,CAAA;AAQrB,wBAAgB,QAAQ,CAAC,EAAE,SAAS,EAAE,EAAE,aAAa,qBAiIpD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/BulkUpload/EditForm/index.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAiC,MAAM,OAAO,CAAA;AAErD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAmB/C,OAAO,cAAc,CAAA;AAQrB,wBAAgB,QAAQ,CAAC,EAAE,SAAS,EAAE,EAAE,aAAa,qBA8IpD"}
@@ -2,7 +2,7 @@
2
2
 
3
3
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
4
4
  import { useRouter, useSearchParams } from 'next/navigation.js';
5
- import React, { useCallback } from 'react';
5
+ import React, { useCallback, useEffect } from 'react';
6
6
  import { Form, useForm } from '../../../forms/Form/index.js';
7
7
  import { WatchChildErrors } from '../../../forms/WatchChildErrors/index.js';
8
8
  import { useConfig } from '../../../providers/Config/index.js';
@@ -12,6 +12,7 @@ import { useEditDepth } from '../../../providers/EditDepth/index.js';
12
12
  import { OperationProvider } from '../../../providers/Operation/index.js';
13
13
  import { useServerFunctions } from '../../../providers/ServerFunctions/index.js';
14
14
  import { useUploadEdits } from '../../../providers/UploadEdits/index.js';
15
+ import { abortAndIgnore } from '../../../utilities/abortAndIgnore.js';
15
16
  import { formatAdminURL } from '../../../utilities/formatAdminURL.js';
16
17
  import { useDocumentDrawerContext } from '../../DocumentDrawer/Provider.js';
17
18
  import { DocumentFields } from '../../DocumentFields/index.js';
@@ -51,6 +52,7 @@ export function EditForm({
51
52
  },
52
53
  getEntityConfig
53
54
  } = useConfig();
55
+ const formStateAbortControllerRef = React.useRef(null);
54
56
  const collectionConfig = getEntityConfig({
55
57
  collectionSlug: docSlug
56
58
  });
@@ -91,6 +93,9 @@ export function EditForm({
91
93
  const onChange = useCallback(async ({
92
94
  formState: prevFormState
93
95
  }) => {
96
+ abortAndIgnore(formStateAbortControllerRef.current);
97
+ const controller = new AbortController();
98
+ formStateAbortControllerRef.current = controller;
94
99
  const docPreferences = await getDocPreferences();
95
100
  const {
96
101
  state: newFormState
@@ -100,10 +105,16 @@ export function EditForm({
100
105
  docPreferences,
101
106
  formState: prevFormState,
102
107
  operation: 'create',
103
- schemaPath
108
+ schemaPath,
109
+ signal: controller.signal
104
110
  });
105
111
  return newFormState;
106
112
  }, [collectionSlug, schemaPath, getDocPreferences, getFormState, docPermissions]);
113
+ useEffect(() => {
114
+ return () => {
115
+ abortAndIgnore(formStateAbortControllerRef.current);
116
+ };
117
+ }, []);
107
118
  return /*#__PURE__*/_jsx(OperationProvider, {
108
119
  operation: "create",
109
120
  children: /*#__PURE__*/_jsx(BulkUploadProvider, {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["useRouter","useSearchParams","React","useCallback","Form","useForm","WatchChildErrors","useConfig","useDocumentEvents","useDocumentInfo","useEditDepth","OperationProvider","useServerFunctions","useUploadEdits","formatAdminURL","useDocumentDrawerContext","DocumentFields","Upload","useFormsManager","BulkUploadProvider","baseClass","EditForm","submitted","action","collectionSlug","docSlug","docPermissions","getDocPreferences","hasSavePermission","initialState","isEditing","isInitializing","CustomUpload","onSave","onSaveFromContext","getFormState","config","routes","admin","adminRoute","getEntityConfig","collectionConfig","router","depth","params","reportUpdate","resetUploadEdits","locale","get","slug","schemaPath","useState","json","entitySlug","updatedAt","result","Date","toISOString","operation","redirectRoute","path","doc","id","push","onChange","formState","prevFormState","docPreferences","state","newFormState","_jsx","_jsxs","className","disabled","undefined","method","onSuccess","BeforeFields","Fragment","uploadConfig","upload","fields","schemaPathSegments","ReportAllErrors","GetFieldProxy","getFields","getFormDataRef","useEffect","current","docConfig","activeIndex","setFormTotalErrorCount","errorCountRef","useRef","reportFormErrorCount","errorCount","index","setErrorCount"],"sources":["../../../../src/elements/BulkUpload/EditForm/index.tsx"],"sourcesContent":["'use client'\n\nimport type { ClientCollectionConfig } from 'payload'\n\nimport { useRouter, useSearchParams } from 'next/navigation.js'\nimport React, { useCallback } from 'react'\n\nimport type { EditFormProps } from './types.js'\n\nimport { Form, useForm } from '../../../forms/Form/index.js'\nimport { type FormProps } from '../../../forms/Form/types.js'\nimport { WatchChildErrors } from '../../../forms/WatchChildErrors/index.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { useDocumentEvents } from '../../../providers/DocumentEvents/index.js'\nimport { useDocumentInfo } from '../../../providers/DocumentInfo/index.js'\nimport { useEditDepth } from '../../../providers/EditDepth/index.js'\nimport { OperationProvider } from '../../../providers/Operation/index.js'\nimport { useServerFunctions } from '../../../providers/ServerFunctions/index.js'\nimport { useUploadEdits } from '../../../providers/UploadEdits/index.js'\nimport { formatAdminURL } from '../../../utilities/formatAdminURL.js'\nimport { useDocumentDrawerContext } from '../../DocumentDrawer/Provider.js'\nimport { DocumentFields } from '../../DocumentFields/index.js'\nimport { Upload } from '../../Upload/index.js'\nimport { useFormsManager } from '../FormsManager/index.js'\nimport { BulkUploadProvider } from '../index.js'\nimport './index.scss'\n\nconst baseClass = 'collection-edit'\n\n// This component receives props only on _pages_\n// When rendered within a drawer, props are empty\n// This is solely to support custom edit views which get server-rendered\n\nexport function EditForm({ submitted }: EditFormProps) {\n const {\n action,\n collectionSlug: docSlug,\n docPermissions,\n getDocPreferences,\n hasSavePermission,\n initialState,\n isEditing,\n isInitializing,\n Upload: CustomUpload,\n } = useDocumentInfo()\n\n const { onSave: onSaveFromContext } = useDocumentDrawerContext()\n\n const { getFormState } = useServerFunctions()\n\n const {\n config: {\n routes: { admin: adminRoute },\n },\n getEntityConfig,\n } = useConfig()\n\n const collectionConfig = getEntityConfig({ collectionSlug: docSlug }) as ClientCollectionConfig\n\n const router = useRouter()\n const depth = useEditDepth()\n const params = useSearchParams()\n const { reportUpdate } = useDocumentEvents()\n const { resetUploadEdits } = useUploadEdits()\n\n const locale = params.get('locale')\n\n const collectionSlug = collectionConfig.slug\n\n const [schemaPath] = React.useState(collectionSlug)\n\n const onSave = useCallback(\n (json) => {\n reportUpdate({\n entitySlug: collectionSlug,\n updatedAt: json?.result?.updatedAt || new Date().toISOString(),\n })\n\n if (typeof onSaveFromContext === 'function') {\n void onSaveFromContext({\n ...json,\n operation: 'create',\n })\n }\n\n if (!isEditing && depth < 2) {\n // Redirect to the same locale if it's been set\n const redirectRoute = formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}/${json?.doc?.id}${locale ? `?locale=${locale}` : ''}`,\n })\n router.push(redirectRoute)\n } else {\n resetUploadEdits()\n }\n },\n [\n adminRoute,\n collectionSlug,\n depth,\n isEditing,\n locale,\n onSaveFromContext,\n reportUpdate,\n resetUploadEdits,\n router,\n ],\n )\n\n const onChange: NonNullable<FormProps['onChange']>[0] = useCallback(\n async ({ formState: prevFormState }) => {\n const docPreferences = await getDocPreferences()\n const { state: newFormState } = await getFormState({\n collectionSlug,\n docPermissions,\n docPreferences,\n formState: prevFormState,\n operation: 'create',\n schemaPath,\n })\n\n return newFormState\n },\n [collectionSlug, schemaPath, getDocPreferences, getFormState, docPermissions],\n )\n\n return (\n <OperationProvider operation=\"create\">\n <BulkUploadProvider>\n <Form\n action={action}\n className={`${baseClass}__form`}\n disabled={isInitializing || !hasSavePermission}\n initialState={isInitializing ? undefined : initialState}\n isInitializing={isInitializing}\n method=\"POST\"\n onChange={[onChange]}\n onSuccess={onSave}\n submitted={submitted}\n >\n <DocumentFields\n BeforeFields={\n <React.Fragment>\n {CustomUpload || (\n <Upload\n collectionSlug={collectionConfig.slug}\n initialState={initialState}\n uploadConfig={collectionConfig.upload}\n />\n )}\n </React.Fragment>\n }\n docPermissions={docPermissions}\n fields={collectionConfig.fields}\n schemaPathSegments={[collectionConfig.slug]}\n />\n <ReportAllErrors />\n <GetFieldProxy />\n </Form>\n </BulkUploadProvider>\n </OperationProvider>\n )\n}\n\nfunction GetFieldProxy() {\n const { getFields } = useForm()\n const { getFormDataRef } = useFormsManager()\n\n React.useEffect(() => {\n getFormDataRef.current = getFields\n }, [getFields, getFormDataRef])\n\n return null\n}\n\nfunction ReportAllErrors() {\n const { docConfig } = useDocumentInfo()\n const { activeIndex, setFormTotalErrorCount } = useFormsManager()\n const errorCountRef = React.useRef(0)\n\n const reportFormErrorCount = React.useCallback(\n (errorCount) => {\n if (errorCount === errorCountRef.current) {\n return\n }\n setFormTotalErrorCount({ errorCount, index: activeIndex })\n errorCountRef.current = errorCount\n },\n [activeIndex, setFormTotalErrorCount],\n )\n\n if (!docConfig) {\n return null\n }\n\n return (\n <WatchChildErrors fields={docConfig.fields} path={[]} setErrorCount={reportFormErrorCount} />\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["useRouter","useSearchParams","React","useCallback","useEffect","Form","useForm","WatchChildErrors","useConfig","useDocumentEvents","useDocumentInfo","useEditDepth","OperationProvider","useServerFunctions","useUploadEdits","abortAndIgnore","formatAdminURL","useDocumentDrawerContext","DocumentFields","Upload","useFormsManager","BulkUploadProvider","baseClass","EditForm","submitted","action","collectionSlug","docSlug","docPermissions","getDocPreferences","hasSavePermission","initialState","isEditing","isInitializing","CustomUpload","onSave","onSaveFromContext","getFormState","config","routes","admin","adminRoute","getEntityConfig","formStateAbortControllerRef","useRef","collectionConfig","router","depth","params","reportUpdate","resetUploadEdits","locale","get","slug","schemaPath","useState","json","entitySlug","updatedAt","result","Date","toISOString","operation","redirectRoute","path","doc","id","push","onChange","formState","prevFormState","current","controller","AbortController","docPreferences","state","newFormState","signal","_jsx","_jsxs","className","disabled","undefined","method","onSuccess","BeforeFields","Fragment","uploadConfig","upload","fields","schemaPathSegments","ReportAllErrors","GetFieldProxy","getFields","getFormDataRef","docConfig","activeIndex","setFormTotalErrorCount","errorCountRef","reportFormErrorCount","errorCount","index","setErrorCount"],"sources":["../../../../src/elements/BulkUpload/EditForm/index.tsx"],"sourcesContent":["'use client'\n\nimport type { ClientCollectionConfig } from 'payload'\n\nimport { useRouter, useSearchParams } from 'next/navigation.js'\nimport React, { useCallback, useEffect } from 'react'\n\nimport type { EditFormProps } from './types.js'\n\nimport { Form, useForm } from '../../../forms/Form/index.js'\nimport { type FormProps } from '../../../forms/Form/types.js'\nimport { WatchChildErrors } from '../../../forms/WatchChildErrors/index.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { useDocumentEvents } from '../../../providers/DocumentEvents/index.js'\nimport { useDocumentInfo } from '../../../providers/DocumentInfo/index.js'\nimport { useEditDepth } from '../../../providers/EditDepth/index.js'\nimport { OperationProvider } from '../../../providers/Operation/index.js'\nimport { useServerFunctions } from '../../../providers/ServerFunctions/index.js'\nimport { useUploadEdits } from '../../../providers/UploadEdits/index.js'\nimport { abortAndIgnore } from '../../../utilities/abortAndIgnore.js'\nimport { formatAdminURL } from '../../../utilities/formatAdminURL.js'\nimport { useDocumentDrawerContext } from '../../DocumentDrawer/Provider.js'\nimport { DocumentFields } from '../../DocumentFields/index.js'\nimport { Upload } from '../../Upload/index.js'\nimport { useFormsManager } from '../FormsManager/index.js'\nimport { BulkUploadProvider } from '../index.js'\nimport './index.scss'\n\nconst baseClass = 'collection-edit'\n\n// This component receives props only on _pages_\n// When rendered within a drawer, props are empty\n// This is solely to support custom edit views which get server-rendered\n\nexport function EditForm({ submitted }: EditFormProps) {\n const {\n action,\n collectionSlug: docSlug,\n docPermissions,\n getDocPreferences,\n hasSavePermission,\n initialState,\n isEditing,\n isInitializing,\n Upload: CustomUpload,\n } = useDocumentInfo()\n\n const { onSave: onSaveFromContext } = useDocumentDrawerContext()\n\n const { getFormState } = useServerFunctions()\n\n const {\n config: {\n routes: { admin: adminRoute },\n },\n getEntityConfig,\n } = useConfig()\n\n const formStateAbortControllerRef = React.useRef<AbortController>(null)\n\n const collectionConfig = getEntityConfig({ collectionSlug: docSlug }) as ClientCollectionConfig\n const router = useRouter()\n const depth = useEditDepth()\n const params = useSearchParams()\n const { reportUpdate } = useDocumentEvents()\n const { resetUploadEdits } = useUploadEdits()\n\n const locale = params.get('locale')\n\n const collectionSlug = collectionConfig.slug\n\n const [schemaPath] = React.useState(collectionSlug)\n\n const onSave = useCallback(\n (json) => {\n reportUpdate({\n entitySlug: collectionSlug,\n updatedAt: json?.result?.updatedAt || new Date().toISOString(),\n })\n\n if (typeof onSaveFromContext === 'function') {\n void onSaveFromContext({\n ...json,\n operation: 'create',\n })\n }\n\n if (!isEditing && depth < 2) {\n // Redirect to the same locale if it's been set\n const redirectRoute = formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}/${json?.doc?.id}${locale ? `?locale=${locale}` : ''}`,\n })\n router.push(redirectRoute)\n } else {\n resetUploadEdits()\n }\n },\n [\n adminRoute,\n collectionSlug,\n depth,\n isEditing,\n locale,\n onSaveFromContext,\n reportUpdate,\n resetUploadEdits,\n router,\n ],\n )\n\n const onChange: NonNullable<FormProps['onChange']>[0] = useCallback(\n async ({ formState: prevFormState }) => {\n abortAndIgnore(formStateAbortControllerRef.current)\n\n const controller = new AbortController()\n formStateAbortControllerRef.current = controller\n\n const docPreferences = await getDocPreferences()\n const { state: newFormState } = await getFormState({\n collectionSlug,\n docPermissions,\n docPreferences,\n formState: prevFormState,\n operation: 'create',\n schemaPath,\n signal: controller.signal,\n })\n\n return newFormState\n },\n [collectionSlug, schemaPath, getDocPreferences, getFormState, docPermissions],\n )\n\n useEffect(() => {\n return () => {\n abortAndIgnore(formStateAbortControllerRef.current)\n }\n }, [])\n\n return (\n <OperationProvider operation=\"create\">\n <BulkUploadProvider>\n <Form\n action={action}\n className={`${baseClass}__form`}\n disabled={isInitializing || !hasSavePermission}\n initialState={isInitializing ? undefined : initialState}\n isInitializing={isInitializing}\n method=\"POST\"\n onChange={[onChange]}\n onSuccess={onSave}\n submitted={submitted}\n >\n <DocumentFields\n BeforeFields={\n <React.Fragment>\n {CustomUpload || (\n <Upload\n collectionSlug={collectionConfig.slug}\n initialState={initialState}\n uploadConfig={collectionConfig.upload}\n />\n )}\n </React.Fragment>\n }\n docPermissions={docPermissions}\n fields={collectionConfig.fields}\n schemaPathSegments={[collectionConfig.slug]}\n />\n <ReportAllErrors />\n <GetFieldProxy />\n </Form>\n </BulkUploadProvider>\n </OperationProvider>\n )\n}\n\nfunction GetFieldProxy() {\n const { getFields } = useForm()\n const { getFormDataRef } = useFormsManager()\n\n React.useEffect(() => {\n getFormDataRef.current = getFields\n }, [getFields, getFormDataRef])\n\n return null\n}\n\nfunction ReportAllErrors() {\n const { docConfig } = useDocumentInfo()\n const { activeIndex, setFormTotalErrorCount } = useFormsManager()\n const errorCountRef = React.useRef(0)\n\n const reportFormErrorCount = React.useCallback(\n (errorCount) => {\n if (errorCount === errorCountRef.current) {\n return\n }\n setFormTotalErrorCount({ errorCount, index: activeIndex })\n errorCountRef.current = errorCount\n },\n [activeIndex, setFormTotalErrorCount],\n )\n\n if (!docConfig) {\n return null\n }\n\n return (\n <WatchChildErrors fields={docConfig.fields} path={[]} setErrorCount={reportFormErrorCount} />\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,19 +1,5 @@
1
1
  export function formsManagementReducer(state, action) {
2
2
  switch (action.type) {
3
- case 'REPLACE':
4
- {
5
- return {
6
- ...state,
7
- ...action.state
8
- };
9
- }
10
- case 'SET_ACTIVE_INDEX':
11
- {
12
- return {
13
- ...state,
14
- activeIndex: action.index
15
- };
16
- }
17
3
  case 'ADD_FORMS':
18
4
  {
19
5
  const newForms = [];
@@ -50,6 +36,20 @@ export function formsManagementReducer(state, action) {
50
36
  totalErrorCount: state.totalErrorCount - removedForm.errorCount
51
37
  };
52
38
  }
39
+ case 'REPLACE':
40
+ {
41
+ return {
42
+ ...state,
43
+ ...action.state
44
+ };
45
+ }
46
+ case 'SET_ACTIVE_INDEX':
47
+ {
48
+ return {
49
+ ...state,
50
+ activeIndex: action.index
51
+ };
52
+ }
53
53
  case 'UPDATE_ERROR_COUNT':
54
54
  {
55
55
  const forms = [...state.forms];
@@ -1 +1 @@
1
- {"version":3,"file":"reducer.js","names":["formsManagementReducer","state","action","type","activeIndex","index","newForms","i","files","length","errorCount","formState","initialState","file","initialValue","valid","value","forms","remainingFormStates","removedForm","splice","affectedByShift","nextIndex","boundedActiveIndex","Math","min","totalErrorCount","count","reduce","acc","form"],"sources":["../../../../src/elements/BulkUpload/FormsManager/reducer.ts"],"sourcesContent":["import type { FormState } from 'payload'\n\nexport type State = {\n activeIndex: number\n forms: {\n errorCount: number\n formState: FormState\n }[]\n totalErrorCount: number\n}\n\ntype Action =\n | {\n count: number\n index: number\n type: 'UPDATE_ERROR_COUNT'\n }\n | {\n files: FileList\n initialState: FormState | null\n type: 'ADD_FORMS'\n }\n | {\n index: number\n type: 'REMOVE_FORM'\n }\n | {\n index: number\n type: 'SET_ACTIVE_INDEX'\n }\n | {\n state: Partial<State>\n type: 'REPLACE'\n }\n\nexport function formsManagementReducer(state: State, action: Action): State {\n switch (action.type) {\n case 'REPLACE': {\n return {\n ...state,\n ...action.state,\n }\n }\n case 'SET_ACTIVE_INDEX': {\n return {\n ...state,\n activeIndex: action.index,\n }\n }\n case 'ADD_FORMS': {\n const newForms: State['forms'] = []\n for (let i = 0; i < action.files.length; i++) {\n newForms[i] = {\n errorCount: 0,\n formState: {\n ...(action.initialState || {}),\n file: {\n initialValue: action.files[i],\n valid: true,\n value: action.files[i],\n },\n },\n }\n }\n\n return {\n ...state,\n activeIndex: 0,\n forms: [...newForms, ...state.forms],\n }\n }\n case 'REMOVE_FORM': {\n const remainingFormStates = [...state.forms]\n const [removedForm] = remainingFormStates.splice(action.index, 1)\n\n const affectedByShift = state.activeIndex >= action.index\n const nextIndex =\n state.activeIndex === action.index\n ? action.index\n : affectedByShift\n ? state.activeIndex - 1\n : state.activeIndex\n const boundedActiveIndex = Math.min(remainingFormStates.length - 1, nextIndex)\n\n return {\n ...state,\n activeIndex: affectedByShift ? boundedActiveIndex : state.activeIndex,\n forms: remainingFormStates,\n totalErrorCount: state.totalErrorCount - removedForm.errorCount,\n }\n }\n case 'UPDATE_ERROR_COUNT': {\n const forms = [...state.forms]\n forms[action.index].errorCount = action.count\n\n return {\n ...state,\n forms,\n totalErrorCount: state.forms.reduce((acc, form) => acc + form.errorCount, 0),\n }\n }\n default: {\n return state\n }\n }\n}\n"],"mappings":"AAmCA,OAAO,SAASA,uBAAuBC,KAAY,EAAEC,MAAc;EACjE,QAAQA,MAAA,CAAOC,IAAI;IACjB,KAAK;MAAW;QACd,OAAO;UACL,GAAGF,KAAK;UACR,GAAGC,MAAA,CAAOD;QACZ;MACF;IACA,KAAK;MAAoB;QACvB,OAAO;UACL,GAAGA,KAAK;UACRG,WAAA,EAAaF,MAAA,CAAOG;QACtB;MACF;IACA,KAAK;MAAa;QAChB,MAAMC,QAAA,GAA2B,EAAE;QACnC,KAAK,IAAIC,CAAA,GAAI,GAAGA,CAAA,GAAIL,MAAA,CAAOM,KAAK,CAACC,MAAM,EAAEF,CAAA,IAAK;UAC5CD,QAAQ,CAACC,CAAA,CAAE,GAAG;YACZG,UAAA,EAAY;YACZC,SAAA,EAAW;cACT,IAAIT,MAAA,CAAOU,YAAY,IAAI,CAAC,CAAC;cAC7BC,IAAA,EAAM;gBACJC,YAAA,EAAcZ,MAAA,CAAOM,KAAK,CAACD,CAAA,CAAE;gBAC7BQ,KAAA,EAAO;gBACPC,KAAA,EAAOd,MAAA,CAAOM,KAAK,CAACD,CAAA;cACtB;YACF;UACF;QACF;QAEA,OAAO;UACL,GAAGN,KAAK;UACRG,WAAA,EAAa;UACba,KAAA,EAAO,C,GAAIX,QAAA,E,GAAaL,KAAA,CAAMgB,KAAK;QACrC;MACF;IACA,KAAK;MAAe;QAClB,MAAMC,mBAAA,GAAsB,C,GAAIjB,KAAA,CAAMgB,KAAK,CAAC;QAC5C,MAAM,CAACE,WAAA,CAAY,GAAGD,mBAAA,CAAoBE,MAAM,CAAClB,MAAA,CAAOG,KAAK,EAAE;QAE/D,MAAMgB,eAAA,GAAkBpB,KAAA,CAAMG,WAAW,IAAIF,MAAA,CAAOG,KAAK;QACzD,MAAMiB,SAAA,GACJrB,KAAA,CAAMG,WAAW,KAAKF,MAAA,CAAOG,KAAK,GAC9BH,MAAA,CAAOG,KAAK,GACZgB,eAAA,GACEpB,KAAA,CAAMG,WAAW,GAAG,IACpBH,KAAA,CAAMG,WAAW;QACzB,MAAMmB,kBAAA,GAAqBC,IAAA,CAAKC,GAAG,CAACP,mBAAA,CAAoBT,MAAM,GAAG,GAAGa,SAAA;QAEpE,OAAO;UACL,GAAGrB,KAAK;UACRG,WAAA,EAAaiB,eAAA,GAAkBE,kBAAA,GAAqBtB,KAAA,CAAMG,WAAW;UACrEa,KAAA,EAAOC,mBAAA;UACPQ,eAAA,EAAiBzB,KAAA,CAAMyB,eAAe,GAAGP,WAAA,CAAYT;QACvD;MACF;IACA,KAAK;MAAsB;QACzB,MAAMO,KAAA,GAAQ,C,GAAIhB,KAAA,CAAMgB,KAAK,CAAC;QAC9BA,KAAK,CAACf,MAAA,CAAOG,KAAK,CAAC,CAACK,UAAU,GAAGR,MAAA,CAAOyB,KAAK;QAE7C,OAAO;UACL,GAAG1B,KAAK;UACRgB,KAAA;UACAS,eAAA,EAAiBzB,KAAA,CAAMgB,KAAK,CAACW,MAAM,CAAC,CAACC,GAAA,EAAKC,IAAA,KAASD,GAAA,GAAMC,IAAA,CAAKpB,UAAU,EAAE;QAC5E;MACF;IACA;MAAS;QACP,OAAOT,KAAA;MACT;EACF;AACF","ignoreList":[]}
1
+ {"version":3,"file":"reducer.js","names":["formsManagementReducer","state","action","type","newForms","i","files","length","errorCount","formState","initialState","file","initialValue","valid","value","activeIndex","forms","remainingFormStates","removedForm","splice","index","affectedByShift","nextIndex","boundedActiveIndex","Math","min","totalErrorCount","count","reduce","acc","form"],"sources":["../../../../src/elements/BulkUpload/FormsManager/reducer.ts"],"sourcesContent":["import type { FormState } from 'payload'\n\nexport type State = {\n activeIndex: number\n forms: {\n errorCount: number\n formState: FormState\n }[]\n totalErrorCount: number\n}\n\ntype Action =\n | {\n count: number\n index: number\n type: 'UPDATE_ERROR_COUNT'\n }\n | {\n files: FileList\n initialState: FormState | null\n type: 'ADD_FORMS'\n }\n | {\n index: number\n type: 'REMOVE_FORM'\n }\n | {\n index: number\n type: 'SET_ACTIVE_INDEX'\n }\n | {\n state: Partial<State>\n type: 'REPLACE'\n }\n\nexport function formsManagementReducer(state: State, action: Action): State {\n switch (action.type) {\n case 'ADD_FORMS': {\n const newForms: State['forms'] = []\n for (let i = 0; i < action.files.length; i++) {\n newForms[i] = {\n errorCount: 0,\n formState: {\n ...(action.initialState || {}),\n file: {\n initialValue: action.files[i],\n valid: true,\n value: action.files[i],\n },\n },\n }\n }\n\n return {\n ...state,\n activeIndex: 0,\n forms: [...newForms, ...state.forms],\n }\n }\n case 'REMOVE_FORM': {\n const remainingFormStates = [...state.forms]\n const [removedForm] = remainingFormStates.splice(action.index, 1)\n\n const affectedByShift = state.activeIndex >= action.index\n const nextIndex =\n state.activeIndex === action.index\n ? action.index\n : affectedByShift\n ? state.activeIndex - 1\n : state.activeIndex\n const boundedActiveIndex = Math.min(remainingFormStates.length - 1, nextIndex)\n\n return {\n ...state,\n activeIndex: affectedByShift ? boundedActiveIndex : state.activeIndex,\n forms: remainingFormStates,\n totalErrorCount: state.totalErrorCount - removedForm.errorCount,\n }\n }\n case 'REPLACE': {\n return {\n ...state,\n ...action.state,\n }\n }\n case 'SET_ACTIVE_INDEX': {\n return {\n ...state,\n activeIndex: action.index,\n }\n }\n case 'UPDATE_ERROR_COUNT': {\n const forms = [...state.forms]\n forms[action.index].errorCount = action.count\n\n return {\n ...state,\n forms,\n totalErrorCount: state.forms.reduce((acc, form) => acc + form.errorCount, 0),\n }\n }\n default: {\n return state\n }\n }\n}\n"],"mappings":"AAmCA,OAAO,SAASA,uBAAuBC,KAAY,EAAEC,MAAc;EACjE,QAAQA,MAAA,CAAOC,IAAI;IACjB,KAAK;MAAa;QAChB,MAAMC,QAAA,GAA2B,EAAE;QACnC,KAAK,IAAIC,CAAA,GAAI,GAAGA,CAAA,GAAIH,MAAA,CAAOI,KAAK,CAACC,MAAM,EAAEF,CAAA,IAAK;UAC5CD,QAAQ,CAACC,CAAA,CAAE,GAAG;YACZG,UAAA,EAAY;YACZC,SAAA,EAAW;cACT,IAAIP,MAAA,CAAOQ,YAAY,IAAI,CAAC,CAAC;cAC7BC,IAAA,EAAM;gBACJC,YAAA,EAAcV,MAAA,CAAOI,KAAK,CAACD,CAAA,CAAE;gBAC7BQ,KAAA,EAAO;gBACPC,KAAA,EAAOZ,MAAA,CAAOI,KAAK,CAACD,CAAA;cACtB;YACF;UACF;QACF;QAEA,OAAO;UACL,GAAGJ,KAAK;UACRc,WAAA,EAAa;UACbC,KAAA,EAAO,C,GAAIZ,QAAA,E,GAAaH,KAAA,CAAMe,KAAK;QACrC;MACF;IACA,KAAK;MAAe;QAClB,MAAMC,mBAAA,GAAsB,C,GAAIhB,KAAA,CAAMe,KAAK,CAAC;QAC5C,MAAM,CAACE,WAAA,CAAY,GAAGD,mBAAA,CAAoBE,MAAM,CAACjB,MAAA,CAAOkB,KAAK,EAAE;QAE/D,MAAMC,eAAA,GAAkBpB,KAAA,CAAMc,WAAW,IAAIb,MAAA,CAAOkB,KAAK;QACzD,MAAME,SAAA,GACJrB,KAAA,CAAMc,WAAW,KAAKb,MAAA,CAAOkB,KAAK,GAC9BlB,MAAA,CAAOkB,KAAK,GACZC,eAAA,GACEpB,KAAA,CAAMc,WAAW,GAAG,IACpBd,KAAA,CAAMc,WAAW;QACzB,MAAMQ,kBAAA,GAAqBC,IAAA,CAAKC,GAAG,CAACR,mBAAA,CAAoBV,MAAM,GAAG,GAAGe,SAAA;QAEpE,OAAO;UACL,GAAGrB,KAAK;UACRc,WAAA,EAAaM,eAAA,GAAkBE,kBAAA,GAAqBtB,KAAA,CAAMc,WAAW;UACrEC,KAAA,EAAOC,mBAAA;UACPS,eAAA,EAAiBzB,KAAA,CAAMyB,eAAe,GAAGR,WAAA,CAAYV;QACvD;MACF;IACA,KAAK;MAAW;QACd,OAAO;UACL,GAAGP,KAAK;UACR,GAAGC,MAAA,CAAOD;QACZ;MACF;IACA,KAAK;MAAoB;QACvB,OAAO;UACL,GAAGA,KAAK;UACRc,WAAA,EAAab,MAAA,CAAOkB;QACtB;MACF;IACA,KAAK;MAAsB;QACzB,MAAMJ,KAAA,GAAQ,C,GAAIf,KAAA,CAAMe,KAAK,CAAC;QAC9BA,KAAK,CAACd,MAAA,CAAOkB,KAAK,CAAC,CAACZ,UAAU,GAAGN,MAAA,CAAOyB,KAAK;QAE7C,OAAO;UACL,GAAG1B,KAAK;UACRe,KAAA;UACAU,eAAA,EAAiBzB,KAAA,CAAMe,KAAK,CAACY,MAAM,CAAC,CAACC,GAAA,EAAKC,IAAA,KAASD,GAAA,GAAMC,IAAA,CAAKtB,UAAU,EAAE;QAC5E;MACF;IACA;MAAS;QACP,OAAOP,KAAA;MACT;EACF;AACF","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"DrawerContent.d.ts","sourceRoot":"","sources":["../../../src/elements/DocumentDrawer/DrawerContent.tsx"],"names":[],"mappings":"AAGA,OAAO,KAA2C,MAAM,OAAO,CAAA;AAG/D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAQrD,eAAO,MAAM,qBAAqB,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CA2I/D,CAAA"}
1
+ {"version":3,"file":"DrawerContent.d.ts","sourceRoot":"","sources":["../../../src/elements/DocumentDrawer/DrawerContent.tsx"],"names":[],"mappings":"AAGA,OAAO,KAA2C,MAAM,OAAO,CAAA;AAG/D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AASrD,eAAO,MAAM,qBAAqB,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CA4J/D,CAAA"}
@@ -8,6 +8,7 @@ import { LoadingOverlay } from '../../elements/Loading/index.js';
8
8
  import { useConfig } from '../../providers/Config/index.js';
9
9
  import { useServerFunctions } from '../../providers/ServerFunctions/index.js';
10
10
  import { useTranslation } from '../../providers/Translation/index.js';
11
+ import { abortAndIgnore } from '../../utilities/abortAndIgnore.js';
11
12
  import { DocumentDrawerContextProvider } from './Provider.js';
12
13
  export const DocumentDrawerContent = ({
13
14
  id: existingDocID,
@@ -30,6 +31,7 @@ export const DocumentDrawerContent = ({
30
31
  }
31
32
  } = useConfig();
32
33
  const [collectionConfig] = useState(() => collections.find(collection => collection.slug === collectionSlug));
34
+ const documentViewAbortControllerRef = React.useRef(null);
33
35
  const {
34
36
  closeModal
35
37
  } = useModal();
@@ -41,36 +43,37 @@ export const DocumentDrawerContent = ({
41
43
  } = useServerFunctions();
42
44
  const [DocumentView, setDocumentView] = useState(undefined);
43
45
  const [isLoading, setIsLoading] = useState(true);
44
- const getDocumentView = useCallback(async (docID, doNotAbort) => {
45
- setIsLoading(true);
46
- try {
47
- const result = await renderDocument({
48
- collectionSlug,
49
- disableActions,
50
- docID,
51
- doNotAbort,
52
- drawerSlug,
53
- initialData,
54
- redirectAfterDelete: redirectAfterDelete !== undefined ? redirectAfterDelete : false,
55
- redirectAfterDuplicate: redirectAfterDuplicate !== undefined ? redirectAfterDuplicate : false
56
- });
57
- if (result?.Document) {
58
- setDocumentView(result.Document);
59
- setIsLoading(false);
46
+ const getDocumentView = useCallback(docID => {
47
+ abortAndIgnore(documentViewAbortControllerRef.current);
48
+ const controller = new AbortController();
49
+ documentViewAbortControllerRef.current = controller;
50
+ const fetchDocumentView = async () => {
51
+ setIsLoading(true);
52
+ try {
53
+ const result = await renderDocument({
54
+ collectionSlug,
55
+ disableActions,
56
+ docID,
57
+ drawerSlug,
58
+ initialData,
59
+ redirectAfterDelete: redirectAfterDelete !== undefined ? redirectAfterDelete : false,
60
+ redirectAfterDuplicate: redirectAfterDuplicate !== undefined ? redirectAfterDuplicate : false,
61
+ signal: controller.signal
62
+ });
63
+ if (result?.Document) {
64
+ setDocumentView(result.Document);
65
+ setIsLoading(false);
66
+ }
67
+ } catch (error) {
68
+ toast.error(error?.message || t('error:unspecific'));
69
+ closeModal(drawerSlug);
70
+ // toast.error(data?.errors?.[0].message || t('error:unspecific'))
60
71
  }
61
- } catch (error) {
62
- toast.error(error?.message || t('error:unspecific'));
63
- closeModal(drawerSlug);
64
- // toast.error(data?.errors?.[0].message || t('error:unspecific'))
65
- }
66
- }, [collectionSlug, disableActions, drawerSlug, initialData, redirectAfterDelete, redirectAfterDuplicate, renderDocument, closeModal, initialState, t]);
67
- useEffect(() => {
68
- if (!DocumentView) {
69
- void getDocumentView(existingDocID, true);
70
- }
71
- }, [DocumentView, getDocumentView, existingDocID]);
72
+ };
73
+ void fetchDocumentView();
74
+ }, [collectionSlug, disableActions, drawerSlug, initialData, redirectAfterDelete, redirectAfterDuplicate, renderDocument, closeModal, t]);
72
75
  const onSave = useCallback(args => {
73
- void getDocumentView(args.doc.id);
76
+ getDocumentView(args.doc.id);
74
77
  if (typeof onSaveFromProps === 'function') {
75
78
  void onSaveFromProps({
76
79
  ...args,
@@ -79,7 +82,7 @@ export const DocumentDrawerContent = ({
79
82
  }
80
83
  }, [onSaveFromProps, collectionConfig, getDocumentView]);
81
84
  const onDuplicate = useCallback(args_0 => {
82
- void getDocumentView(args_0.doc.id);
85
+ getDocumentView(args_0.doc.id);
83
86
  if (typeof onDuplicateFromProps === 'function') {
84
87
  void onDuplicateFromProps({
85
88
  ...args_0,
@@ -97,8 +100,19 @@ export const DocumentDrawerContent = ({
97
100
  closeModal(drawerSlug);
98
101
  }, [onDeleteFromProps, closeModal, drawerSlug, collectionConfig]);
99
102
  const clearDoc = useCallback(() => {
100
- void getDocumentView();
103
+ getDocumentView();
101
104
  }, [getDocumentView]);
105
+ useEffect(() => {
106
+ if (!DocumentView) {
107
+ getDocumentView(existingDocID);
108
+ }
109
+ }, [DocumentView, getDocumentView, existingDocID]);
110
+ // Cleanup any pending requests when the component unmounts
111
+ useEffect(() => {
112
+ return () => {
113
+ abortAndIgnore(documentViewAbortControllerRef.current);
114
+ };
115
+ }, []);
102
116
  if (isLoading) {
103
117
  return /*#__PURE__*/_jsx(LoadingOverlay, {});
104
118
  }
@@ -1 +1 @@
1
- {"version":3,"file":"DrawerContent.js","names":["useModal","React","useCallback","useEffect","useState","toast","LoadingOverlay","useConfig","useServerFunctions","useTranslation","DocumentDrawerContextProvider","DocumentDrawerContent","id","existingDocID","AfterFields","collectionSlug","disableActions","drawerSlug","Header","initialData","initialState","onDelete","onDeleteFromProps","onDuplicate","onDuplicateFromProps","onSave","onSaveFromProps","redirectAfterDelete","redirectAfterDuplicate","config","collections","collectionConfig","find","collection","slug","closeModal","t","renderDocument","DocumentView","setDocumentView","undefined","isLoading","setIsLoading","getDocumentView","docID","doNotAbort","result","Document","error","message","args","doc","clearDoc","_jsx"],"sources":["../../../src/elements/DocumentDrawer/DrawerContent.tsx"],"sourcesContent":["'use client'\n\nimport { useModal } from '@faceless-ui/modal'\nimport React, { useCallback, useEffect, useState } from 'react'\nimport { toast } from 'sonner'\n\nimport type { DocumentDrawerProps } from './types.js'\n\nimport { LoadingOverlay } from '../../elements/Loading/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useServerFunctions } from '../../providers/ServerFunctions/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { DocumentDrawerContextProvider } from './Provider.js'\n\nexport const DocumentDrawerContent: React.FC<DocumentDrawerProps> = ({\n id: existingDocID,\n AfterFields,\n collectionSlug,\n disableActions,\n drawerSlug,\n Header,\n initialData,\n initialState,\n onDelete: onDeleteFromProps,\n onDuplicate: onDuplicateFromProps,\n onSave: onSaveFromProps,\n redirectAfterDelete,\n redirectAfterDuplicate,\n}) => {\n const {\n config: { collections },\n } = useConfig()\n\n const [collectionConfig] = useState(() =>\n collections.find((collection) => collection.slug === collectionSlug),\n )\n\n const { closeModal } = useModal()\n const { t } = useTranslation()\n\n const { renderDocument } = useServerFunctions()\n\n const [DocumentView, setDocumentView] = useState<React.ReactNode>(undefined)\n const [isLoading, setIsLoading] = useState(true)\n\n const getDocumentView = useCallback(\n async (docID?: number | string, doNotAbort?: boolean) => {\n setIsLoading(true)\n\n try {\n const result = await renderDocument({\n collectionSlug,\n disableActions,\n docID,\n doNotAbort,\n drawerSlug,\n initialData,\n redirectAfterDelete: redirectAfterDelete !== undefined ? redirectAfterDelete : false,\n redirectAfterDuplicate:\n redirectAfterDuplicate !== undefined ? redirectAfterDuplicate : false,\n })\n\n if (result?.Document) {\n setDocumentView(result.Document)\n setIsLoading(false)\n }\n } catch (error) {\n toast.error(error?.message || t('error:unspecific'))\n closeModal(drawerSlug)\n // toast.error(data?.errors?.[0].message || t('error:unspecific'))\n }\n },\n [\n collectionSlug,\n disableActions,\n drawerSlug,\n initialData,\n redirectAfterDelete,\n redirectAfterDuplicate,\n renderDocument,\n closeModal,\n initialState,\n t,\n ],\n )\n\n useEffect(() => {\n if (!DocumentView) {\n void getDocumentView(existingDocID, true)\n }\n }, [DocumentView, getDocumentView, existingDocID])\n\n const onSave = useCallback<DocumentDrawerProps['onSave']>(\n (args) => {\n void getDocumentView(args.doc.id)\n\n if (typeof onSaveFromProps === 'function') {\n void onSaveFromProps({\n ...args,\n collectionConfig,\n })\n }\n },\n [onSaveFromProps, collectionConfig, getDocumentView],\n )\n\n const onDuplicate = useCallback<DocumentDrawerProps['onSave']>(\n (args) => {\n void getDocumentView(args.doc.id)\n\n if (typeof onDuplicateFromProps === 'function') {\n void onDuplicateFromProps({\n ...args,\n collectionConfig,\n })\n }\n },\n [onDuplicateFromProps, collectionConfig, getDocumentView],\n )\n\n const onDelete = useCallback<DocumentDrawerProps['onDelete']>(\n (args) => {\n if (typeof onDeleteFromProps === 'function') {\n void onDeleteFromProps({\n ...args,\n collectionConfig,\n })\n }\n\n closeModal(drawerSlug)\n },\n [onDeleteFromProps, closeModal, drawerSlug, collectionConfig],\n )\n\n const clearDoc = useCallback(() => {\n void getDocumentView()\n }, [getDocumentView])\n\n if (isLoading) {\n return <LoadingOverlay />\n }\n\n return (\n <DocumentDrawerContextProvider\n clearDoc={clearDoc}\n drawerSlug={drawerSlug}\n onDelete={onDelete}\n onDuplicate={onDuplicate}\n onSave={onSave}\n >\n {DocumentView}\n </DocumentDrawerContextProvider>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"DrawerContent.js","names":["useModal","React","useCallback","useEffect","useState","toast","LoadingOverlay","useConfig","useServerFunctions","useTranslation","abortAndIgnore","DocumentDrawerContextProvider","DocumentDrawerContent","id","existingDocID","AfterFields","collectionSlug","disableActions","drawerSlug","Header","initialData","initialState","onDelete","onDeleteFromProps","onDuplicate","onDuplicateFromProps","onSave","onSaveFromProps","redirectAfterDelete","redirectAfterDuplicate","config","collections","collectionConfig","find","collection","slug","documentViewAbortControllerRef","useRef","closeModal","t","renderDocument","DocumentView","setDocumentView","undefined","isLoading","setIsLoading","getDocumentView","docID","current","controller","AbortController","fetchDocumentView","result","signal","Document","error","message","args","doc","clearDoc","_jsx"],"sources":["../../../src/elements/DocumentDrawer/DrawerContent.tsx"],"sourcesContent":["'use client'\n\nimport { useModal } from '@faceless-ui/modal'\nimport React, { useCallback, useEffect, useState } from 'react'\nimport { toast } from 'sonner'\n\nimport type { DocumentDrawerProps } from './types.js'\n\nimport { LoadingOverlay } from '../../elements/Loading/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useServerFunctions } from '../../providers/ServerFunctions/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { abortAndIgnore } from '../../utilities/abortAndIgnore.js'\nimport { DocumentDrawerContextProvider } from './Provider.js'\n\nexport const DocumentDrawerContent: React.FC<DocumentDrawerProps> = ({\n id: existingDocID,\n AfterFields,\n collectionSlug,\n disableActions,\n drawerSlug,\n Header,\n initialData,\n initialState,\n onDelete: onDeleteFromProps,\n onDuplicate: onDuplicateFromProps,\n onSave: onSaveFromProps,\n redirectAfterDelete,\n redirectAfterDuplicate,\n}) => {\n const {\n config: { collections },\n } = useConfig()\n\n const [collectionConfig] = useState(() =>\n collections.find((collection) => collection.slug === collectionSlug),\n )\n\n const documentViewAbortControllerRef = React.useRef<AbortController>(null)\n\n const { closeModal } = useModal()\n const { t } = useTranslation()\n\n const { renderDocument } = useServerFunctions()\n\n const [DocumentView, setDocumentView] = useState<React.ReactNode>(undefined)\n const [isLoading, setIsLoading] = useState(true)\n\n const getDocumentView = useCallback(\n (docID?: number | string) => {\n abortAndIgnore(documentViewAbortControllerRef.current)\n\n const controller = new AbortController()\n documentViewAbortControllerRef.current = controller\n\n const fetchDocumentView = async () => {\n setIsLoading(true)\n\n try {\n const result = await renderDocument({\n collectionSlug,\n disableActions,\n docID,\n drawerSlug,\n initialData,\n redirectAfterDelete: redirectAfterDelete !== undefined ? redirectAfterDelete : false,\n redirectAfterDuplicate:\n redirectAfterDuplicate !== undefined ? redirectAfterDuplicate : false,\n signal: controller.signal,\n })\n\n if (result?.Document) {\n setDocumentView(result.Document)\n setIsLoading(false)\n }\n } catch (error) {\n toast.error(error?.message || t('error:unspecific'))\n closeModal(drawerSlug)\n // toast.error(data?.errors?.[0].message || t('error:unspecific'))\n }\n }\n\n void fetchDocumentView()\n },\n [\n collectionSlug,\n disableActions,\n drawerSlug,\n initialData,\n redirectAfterDelete,\n redirectAfterDuplicate,\n renderDocument,\n closeModal,\n t,\n ],\n )\n\n const onSave = useCallback<DocumentDrawerProps['onSave']>(\n (args) => {\n getDocumentView(args.doc.id)\n\n if (typeof onSaveFromProps === 'function') {\n void onSaveFromProps({\n ...args,\n collectionConfig,\n })\n }\n },\n [onSaveFromProps, collectionConfig, getDocumentView],\n )\n\n const onDuplicate = useCallback<DocumentDrawerProps['onDuplicate']>(\n (args) => {\n getDocumentView(args.doc.id)\n\n if (typeof onDuplicateFromProps === 'function') {\n void onDuplicateFromProps({\n ...args,\n collectionConfig,\n })\n }\n },\n [onDuplicateFromProps, collectionConfig, getDocumentView],\n )\n\n const onDelete = useCallback<DocumentDrawerProps['onDelete']>(\n (args) => {\n if (typeof onDeleteFromProps === 'function') {\n void onDeleteFromProps({\n ...args,\n collectionConfig,\n })\n }\n\n closeModal(drawerSlug)\n },\n [onDeleteFromProps, closeModal, drawerSlug, collectionConfig],\n )\n\n const clearDoc = useCallback(() => {\n getDocumentView()\n }, [getDocumentView])\n\n useEffect(() => {\n if (!DocumentView) {\n getDocumentView(existingDocID)\n }\n }, [DocumentView, getDocumentView, existingDocID])\n\n // Cleanup any pending requests when the component unmounts\n useEffect(() => {\n return () => {\n abortAndIgnore(documentViewAbortControllerRef.current)\n }\n }, [])\n\n if (isLoading) {\n return <LoadingOverlay />\n }\n\n return (\n <DocumentDrawerContextProvider\n clearDoc={clearDoc}\n drawerSlug={drawerSlug}\n onDelete={onDelete}\n onDuplicate={onDuplicate}\n onSave={onSave}\n >\n {DocumentView}\n </DocumentDrawerContextProvider>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,6 +1,6 @@
1
1
  import type { SanitizedCollectionConfig } from 'payload';
2
2
  import React from 'react';
3
- import { DocumentDrawerContextType } from '../DocumentDrawer/Provider.jsx';
3
+ import type { DocumentDrawerContextType } from '../DocumentDrawer/Provider.js';
4
4
  import './index.scss';
5
5
  export type Props = {
6
6
  readonly id: string;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/DuplicateDocument/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAA0B,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAKhF,OAAO,KAAgC,MAAM,OAAO,CAAA;AAapD,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAA;AAC1E,OAAO,cAAc,CAAA;AAIrB,MAAM,MAAM,KAAK,GAAG;IAClB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,WAAW,CAAC,EAAE,yBAAyB,CAAC,aAAa,CAAC,CAAA;IAC/D,QAAQ,CAAC,sBAAsB,CAAC,EAAE,OAAO,CAAA;IACzC,QAAQ,CAAC,aAAa,EAAE,yBAAyB,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAA;IACvE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CACtB,CAAA;AAED,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAgJ7C,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/DuplicateDocument/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAA0B,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAKhF,OAAO,KAAgC,MAAM,OAAO,CAAA;AAGpD,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAA;AAY9E,OAAO,cAAc,CAAA;AAIrB,MAAM,MAAM,KAAK,GAAG;IAClB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,WAAW,CAAC,EAAE,yBAAyB,CAAC,aAAa,CAAC,CAAA;IAC/D,QAAQ,CAAC,sBAAsB,CAAC,EAAE,OAAO,CAAA;IACzC,QAAQ,CAAC,aAAa,EAAE,yBAAyB,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAA;IACvE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CACtB,CAAA;AAED,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAgJ7C,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["Modal","useModal","getTranslation","useRouter","React","useCallback","useState","toast","useForm","useFormModified","useConfig","useEditDepth","useLocale","useTranslation","requests","formatAdminURL","Button","drawerZBase","PopupList","baseClass","DuplicateDocument","id","slug","onDuplicate","redirectAfterDuplicate","singularLabel","router","modified","toggleModal","locale","setModified","config","routes","admin","adminRoute","api","apiRoute","serverURL","getEntityConfig","collectionConfig","collectionSlug","hasClicked","setHasClicked","i18n","t","modalSlug","editDepth","handleClick","override","post","code","body","JSON","stringify","headers","language","credentials","then","res","doc","errors","message","json","status","success","label","push","path","error","confirm","_jsxs","Fragment","_jsx","onClick","className","style","zIndex","buttonStyle","size","type"],"sources":["../../../src/elements/DuplicateDocument/index.tsx"],"sourcesContent":["'use client'\n\nimport type { ClientCollectionConfig, SanitizedCollectionConfig } from 'payload'\n\nimport { Modal, useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport { useRouter } from 'next/navigation.js'\nimport React, { useCallback, useState } from 'react'\nimport { toast } from 'sonner'\n\nimport { useForm, useFormModified } from '../../forms/Form/context.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useEditDepth } from '../../providers/EditDepth/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { requests } from '../../utilities/api.js'\nimport { formatAdminURL } from '../../utilities/formatAdminURL.js'\nimport { Button } from '../Button/index.js'\nimport { drawerZBase } from '../Drawer/index.js'\nimport { PopupList } from '../Popup/index.js'\nimport { DocumentDrawerContextType } from '../DocumentDrawer/Provider.jsx'\nimport './index.scss'\n\nconst baseClass = 'duplicate'\n\nexport type Props = {\n readonly id: string\n readonly onDuplicate?: DocumentDrawerContextType['onDuplicate']\n readonly redirectAfterDuplicate?: boolean\n readonly singularLabel: SanitizedCollectionConfig['labels']['singular']\n readonly slug: string\n}\n\nexport const DuplicateDocument: React.FC<Props> = ({\n id,\n slug,\n onDuplicate,\n redirectAfterDuplicate = true,\n singularLabel,\n}) => {\n const router = useRouter()\n const modified = useFormModified()\n const { toggleModal } = useModal()\n const locale = useLocale()\n const { setModified } = useForm()\n\n const {\n config: {\n routes: { admin: adminRoute, api: apiRoute },\n serverURL,\n },\n getEntityConfig,\n } = useConfig()\n\n const collectionConfig = getEntityConfig({ collectionSlug: slug }) as ClientCollectionConfig\n\n const [hasClicked, setHasClicked] = useState<boolean>(false)\n const { i18n, t } = useTranslation()\n\n const modalSlug = `duplicate-${id}`\n\n const editDepth = useEditDepth()\n\n const handleClick = useCallback(\n async (override = false) => {\n setHasClicked(true)\n\n if (modified && !override) {\n toggleModal(modalSlug)\n return\n }\n await requests\n .post(\n `${serverURL}${apiRoute}/${slug}/${id}/duplicate${locale?.code ? `?locale=${locale.code}` : ''}`,\n {\n body: JSON.stringify({}),\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n credentials: 'include',\n },\n },\n )\n .then(async (res) => {\n const { doc, errors, message } = await res.json()\n if (res.status < 400) {\n toast.success(\n message ||\n t('general:successfullyDuplicated', { label: getTranslation(singularLabel, i18n) }),\n )\n\n setModified(false)\n\n if (redirectAfterDuplicate) {\n router.push(\n formatAdminURL({\n adminRoute,\n path: `/collections/${slug}/${doc.id}${locale?.code ? `?locale=${locale.code}` : ''}`,\n }),\n )\n }\n\n if (typeof onDuplicate === 'function') {\n void onDuplicate({ collectionConfig, doc })\n }\n } else {\n toast.error(\n errors?.[0].message ||\n message ||\n t('error:unspecific', { label: getTranslation(singularLabel, i18n) }),\n )\n }\n })\n },\n [\n locale,\n modified,\n serverURL,\n apiRoute,\n slug,\n id,\n i18n,\n toggleModal,\n modalSlug,\n t,\n singularLabel,\n onDuplicate,\n redirectAfterDuplicate,\n setModified,\n router,\n adminRoute,\n collectionConfig,\n ],\n )\n\n const confirm = useCallback(async () => {\n setHasClicked(false)\n await handleClick(true)\n }, [handleClick])\n\n return (\n <React.Fragment>\n <PopupList.Button id=\"action-duplicate\" onClick={() => void handleClick(false)}>\n {t('general:duplicate')}\n </PopupList.Button>\n {modified && hasClicked && (\n <Modal\n className={`${baseClass}__modal`}\n slug={modalSlug}\n style={{\n zIndex: drawerZBase + editDepth,\n }}\n >\n <div className={`${baseClass}__wrapper`}>\n <div className={`${baseClass}__content`}>\n <h1>{t('general:confirmDuplication')}</h1>\n <p>{t('general:unsavedChangesDuplicate')}</p>\n </div>\n <div className={`${baseClass}__controls`}>\n <Button\n buttonStyle=\"secondary\"\n id=\"confirm-cancel\"\n onClick={() => toggleModal(modalSlug)}\n size=\"large\"\n type=\"button\"\n >\n {t('general:cancel')}\n </Button>\n <Button id=\"confirm-duplicate\" onClick={() => void confirm()} size=\"large\">\n {t('general:duplicateWithoutSaving')}\n </Button>\n </div>\n </div>\n </Modal>\n )}\n </React.Fragment>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["Modal","useModal","getTranslation","useRouter","React","useCallback","useState","toast","useForm","useFormModified","useConfig","useEditDepth","useLocale","useTranslation","requests","formatAdminURL","Button","drawerZBase","PopupList","baseClass","DuplicateDocument","id","slug","onDuplicate","redirectAfterDuplicate","singularLabel","router","modified","toggleModal","locale","setModified","config","routes","admin","adminRoute","api","apiRoute","serverURL","getEntityConfig","collectionConfig","collectionSlug","hasClicked","setHasClicked","i18n","t","modalSlug","editDepth","handleClick","override","post","code","body","JSON","stringify","headers","language","credentials","then","res","doc","errors","message","json","status","success","label","push","path","error","confirm","_jsxs","Fragment","_jsx","onClick","className","style","zIndex","buttonStyle","size","type"],"sources":["../../../src/elements/DuplicateDocument/index.tsx"],"sourcesContent":["'use client'\n\nimport type { ClientCollectionConfig, SanitizedCollectionConfig } from 'payload'\n\nimport { Modal, useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport { useRouter } from 'next/navigation.js'\nimport React, { useCallback, useState } from 'react'\nimport { toast } from 'sonner'\n\nimport type { DocumentDrawerContextType } from '../DocumentDrawer/Provider.js'\n\nimport { useForm, useFormModified } from '../../forms/Form/context.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useEditDepth } from '../../providers/EditDepth/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { requests } from '../../utilities/api.js'\nimport { formatAdminURL } from '../../utilities/formatAdminURL.js'\nimport { Button } from '../Button/index.js'\nimport { drawerZBase } from '../Drawer/index.js'\nimport { PopupList } from '../Popup/index.js'\nimport './index.scss'\n\nconst baseClass = 'duplicate'\n\nexport type Props = {\n readonly id: string\n readonly onDuplicate?: DocumentDrawerContextType['onDuplicate']\n readonly redirectAfterDuplicate?: boolean\n readonly singularLabel: SanitizedCollectionConfig['labels']['singular']\n readonly slug: string\n}\n\nexport const DuplicateDocument: React.FC<Props> = ({\n id,\n slug,\n onDuplicate,\n redirectAfterDuplicate = true,\n singularLabel,\n}) => {\n const router = useRouter()\n const modified = useFormModified()\n const { toggleModal } = useModal()\n const locale = useLocale()\n const { setModified } = useForm()\n\n const {\n config: {\n routes: { admin: adminRoute, api: apiRoute },\n serverURL,\n },\n getEntityConfig,\n } = useConfig()\n\n const collectionConfig = getEntityConfig({ collectionSlug: slug }) as ClientCollectionConfig\n\n const [hasClicked, setHasClicked] = useState<boolean>(false)\n const { i18n, t } = useTranslation()\n\n const modalSlug = `duplicate-${id}`\n\n const editDepth = useEditDepth()\n\n const handleClick = useCallback(\n async (override = false) => {\n setHasClicked(true)\n\n if (modified && !override) {\n toggleModal(modalSlug)\n return\n }\n await requests\n .post(\n `${serverURL}${apiRoute}/${slug}/${id}/duplicate${locale?.code ? `?locale=${locale.code}` : ''}`,\n {\n body: JSON.stringify({}),\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n credentials: 'include',\n },\n },\n )\n .then(async (res) => {\n const { doc, errors, message } = await res.json()\n if (res.status < 400) {\n toast.success(\n message ||\n t('general:successfullyDuplicated', { label: getTranslation(singularLabel, i18n) }),\n )\n\n setModified(false)\n\n if (redirectAfterDuplicate) {\n router.push(\n formatAdminURL({\n adminRoute,\n path: `/collections/${slug}/${doc.id}${locale?.code ? `?locale=${locale.code}` : ''}`,\n }),\n )\n }\n\n if (typeof onDuplicate === 'function') {\n void onDuplicate({ collectionConfig, doc })\n }\n } else {\n toast.error(\n errors?.[0].message ||\n message ||\n t('error:unspecific', { label: getTranslation(singularLabel, i18n) }),\n )\n }\n })\n },\n [\n locale,\n modified,\n serverURL,\n apiRoute,\n slug,\n id,\n i18n,\n toggleModal,\n modalSlug,\n t,\n singularLabel,\n onDuplicate,\n redirectAfterDuplicate,\n setModified,\n router,\n adminRoute,\n collectionConfig,\n ],\n )\n\n const confirm = useCallback(async () => {\n setHasClicked(false)\n await handleClick(true)\n }, [handleClick])\n\n return (\n <React.Fragment>\n <PopupList.Button id=\"action-duplicate\" onClick={() => void handleClick(false)}>\n {t('general:duplicate')}\n </PopupList.Button>\n {modified && hasClicked && (\n <Modal\n className={`${baseClass}__modal`}\n slug={modalSlug}\n style={{\n zIndex: drawerZBase + editDepth,\n }}\n >\n <div className={`${baseClass}__wrapper`}>\n <div className={`${baseClass}__content`}>\n <h1>{t('general:confirmDuplication')}</h1>\n <p>{t('general:unsavedChangesDuplicate')}</p>\n </div>\n <div className={`${baseClass}__controls`}>\n <Button\n buttonStyle=\"secondary\"\n id=\"confirm-cancel\"\n onClick={() => toggleModal(modalSlug)}\n size=\"large\"\n type=\"button\"\n >\n {t('general:cancel')}\n </Button>\n <Button id=\"confirm-duplicate\" onClick={() => void confirm()} size=\"large\">\n {t('general:duplicateWithoutSaving')}\n </Button>\n </div>\n </div>\n </Modal>\n )}\n </React.Fragment>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/EditMany/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sBAAsB,EAAa,MAAM,SAAS,CAAA;AAKhE,OAAO,KAAgC,MAAM,OAAO,CAAA;AAqBpD,OAAO,cAAc,CAAA;AAIrB,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,CAAC,UAAU,EAAE,sBAAsB,CAAA;CAC5C,CAAA;AAyED,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CA6K5C,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/EditMany/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sBAAsB,EAAa,MAAM,SAAS,CAAA;AAKhE,OAAO,KAA2C,MAAM,OAAO,CAAA;AAsB/D,OAAO,cAAc,CAAA;AAIrB,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,CAAC,UAAU,EAAE,sBAAsB,CAAA;CAC5C,CAAA;AAyED,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CAiM5C,CAAA"}