@payloadcms/next 3.0.0-beta.15 → 3.0.0-beta.19

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 (134) hide show
  1. package/dist/exports/utilities.d.ts +1 -1
  2. package/dist/exports/utilities.d.ts.map +1 -1
  3. package/dist/exports/utilities.js +1 -1
  4. package/dist/exports/utilities.js.map +1 -1
  5. package/dist/{next-fileupload → fetchAPI-multipart}/fileFactory.d.ts +2 -2
  6. package/dist/fetchAPI-multipart/fileFactory.d.ts.map +1 -0
  7. package/dist/fetchAPI-multipart/fileFactory.js.map +1 -0
  8. package/dist/{next-fileupload → fetchAPI-multipart}/handlers.d.ts +2 -2
  9. package/dist/fetchAPI-multipart/handlers.d.ts.map +1 -0
  10. package/dist/fetchAPI-multipart/handlers.js.map +1 -0
  11. package/dist/{next-fileupload → fetchAPI-multipart}/index.d.ts +8 -8
  12. package/dist/fetchAPI-multipart/index.d.ts.map +1 -0
  13. package/dist/{next-fileupload → fetchAPI-multipart}/index.js +1 -1
  14. package/dist/fetchAPI-multipart/index.js.map +1 -0
  15. package/dist/fetchAPI-multipart/isEligibleRequest.d.ts.map +1 -0
  16. package/dist/fetchAPI-multipart/isEligibleRequest.js.map +1 -0
  17. package/dist/fetchAPI-multipart/processMultipart.d.ts +8 -0
  18. package/dist/fetchAPI-multipart/processMultipart.d.ts.map +1 -0
  19. package/dist/fetchAPI-multipart/processMultipart.js.map +1 -0
  20. package/dist/fetchAPI-multipart/processNested.d.ts.map +1 -0
  21. package/dist/{next-fileupload → fetchAPI-multipart}/processNested.js +2 -1
  22. package/dist/fetchAPI-multipart/processNested.js.map +1 -0
  23. package/dist/fetchAPI-multipart/uploadTimer.d.ts.map +1 -0
  24. package/dist/fetchAPI-multipart/uploadTimer.js.map +1 -0
  25. package/dist/{next-fileupload → fetchAPI-multipart}/utilities.d.ts +4 -4
  26. package/dist/fetchAPI-multipart/utilities.d.ts.map +1 -0
  27. package/dist/fetchAPI-multipart/utilities.js.map +1 -0
  28. package/dist/fetchAPI-stream-file/index.d.ts.map +1 -0
  29. package/dist/fetchAPI-stream-file/index.js.map +1 -0
  30. package/dist/prod/styles.css +1 -1
  31. package/dist/routes/graphql/handler.d.ts.map +1 -1
  32. package/dist/routes/graphql/handler.js +11 -7
  33. package/dist/routes/graphql/handler.js.map +1 -1
  34. package/dist/routes/graphql/playground.d.ts.map +1 -1
  35. package/dist/routes/graphql/playground.js +0 -4
  36. package/dist/routes/graphql/playground.js.map +1 -1
  37. package/dist/routes/rest/auth/registerFirstUser.d.ts.map +1 -1
  38. package/dist/routes/rest/auth/registerFirstUser.js +0 -9
  39. package/dist/routes/rest/auth/registerFirstUser.js.map +1 -1
  40. package/dist/routes/rest/buildFormState.d.ts +3 -3
  41. package/dist/routes/rest/buildFormState.d.ts.map +1 -1
  42. package/dist/routes/rest/buildFormState.js +21 -6
  43. package/dist/routes/rest/buildFormState.js.map +1 -1
  44. package/dist/routes/rest/files/checkFileAccess.d.ts +2 -2
  45. package/dist/routes/rest/files/checkFileAccess.d.ts.map +1 -1
  46. package/dist/routes/rest/files/checkFileAccess.js.map +1 -1
  47. package/dist/routes/rest/files/getFile.d.ts +2 -2
  48. package/dist/routes/rest/files/getFile.d.ts.map +1 -1
  49. package/dist/routes/rest/files/getFile.js +1 -1
  50. package/dist/routes/rest/files/getFile.js.map +1 -1
  51. package/dist/routes/rest/index.d.ts.map +1 -1
  52. package/dist/routes/rest/index.js +227 -230
  53. package/dist/routes/rest/index.js.map +1 -1
  54. package/dist/routes/rest/routeError.d.ts +2 -2
  55. package/dist/routes/rest/routeError.d.ts.map +1 -1
  56. package/dist/routes/rest/routeError.js.map +1 -1
  57. package/dist/routes/rest/types.d.ts +7 -7
  58. package/dist/routes/rest/types.d.ts.map +1 -1
  59. package/dist/routes/rest/types.js.map +1 -1
  60. package/dist/utilities/addDataAndFileToRequest.d.ts +3 -2
  61. package/dist/utilities/addDataAndFileToRequest.d.ts.map +1 -1
  62. package/dist/utilities/addDataAndFileToRequest.js +47 -26
  63. package/dist/utilities/addDataAndFileToRequest.js.map +1 -1
  64. package/dist/utilities/addLocalesToRequest.d.ts +15 -5
  65. package/dist/utilities/addLocalesToRequest.d.ts.map +1 -1
  66. package/dist/utilities/addLocalesToRequest.js +24 -15
  67. package/dist/utilities/addLocalesToRequest.js.map +1 -1
  68. package/dist/utilities/buildFieldSchemaMap/index.d.ts +2 -2
  69. package/dist/utilities/buildFieldSchemaMap/index.d.ts.map +1 -1
  70. package/dist/utilities/buildFieldSchemaMap/index.js.map +1 -1
  71. package/dist/utilities/createPayloadRequest.d.ts.map +1 -1
  72. package/dist/utilities/createPayloadRequest.js +16 -6
  73. package/dist/utilities/createPayloadRequest.js.map +1 -1
  74. package/dist/utilities/getDataAndFile.d.ts +2 -2
  75. package/dist/utilities/getDataAndFile.d.ts.map +1 -1
  76. package/dist/utilities/getDataAndFile.js +2 -2
  77. package/dist/utilities/getDataAndFile.js.map +1 -1
  78. package/dist/utilities/headersWithCors.d.ts +2 -2
  79. package/dist/utilities/headersWithCors.d.ts.map +1 -1
  80. package/dist/utilities/headersWithCors.js.map +1 -1
  81. package/dist/utilities/initPage.js.map +1 -1
  82. package/dist/views/CreateFirstUser/index.client.d.ts +3 -3
  83. package/dist/views/CreateFirstUser/index.client.d.ts.map +1 -1
  84. package/dist/views/CreateFirstUser/index.client.js +48 -6
  85. package/dist/views/CreateFirstUser/index.client.js.map +1 -1
  86. package/dist/views/CreateFirstUser/index.d.ts.map +1 -1
  87. package/dist/views/CreateFirstUser/index.js +9 -52
  88. package/dist/views/CreateFirstUser/index.js.map +1 -1
  89. package/dist/views/CreateFirstUser/index.scss +2 -12
  90. package/dist/views/Edit/Default/Auth/APIKey.d.ts +1 -0
  91. package/dist/views/Edit/Default/Auth/APIKey.d.ts.map +1 -1
  92. package/dist/views/Edit/Default/Auth/APIKey.js +10 -6
  93. package/dist/views/Edit/Default/Auth/APIKey.js.map +1 -1
  94. package/dist/views/Edit/Default/Auth/index.js +3 -3
  95. package/dist/views/Edit/Default/Auth/index.js.map +1 -1
  96. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js.map +1 -1
  97. package/dist/views/Login/LoginForm/index.js.map +1 -1
  98. package/dist/views/ResetPassword/index.js +1 -3
  99. package/dist/views/ResetPassword/index.js.map +1 -1
  100. package/dist/views/Version/Restore/index.d.ts.map +1 -1
  101. package/dist/views/Version/Restore/index.js +11 -8
  102. package/dist/views/Version/Restore/index.js.map +1 -1
  103. package/dist/views/Version/Restore/index.scss +4 -2
  104. package/package.json +31 -31
  105. package/dist/next-fileupload/fileFactory.d.ts.map +0 -1
  106. package/dist/next-fileupload/fileFactory.js.map +0 -1
  107. package/dist/next-fileupload/handlers.d.ts.map +0 -1
  108. package/dist/next-fileupload/handlers.js.map +0 -1
  109. package/dist/next-fileupload/index.d.ts.map +0 -1
  110. package/dist/next-fileupload/index.js.map +0 -1
  111. package/dist/next-fileupload/isEligibleRequest.d.ts.map +0 -1
  112. package/dist/next-fileupload/isEligibleRequest.js.map +0 -1
  113. package/dist/next-fileupload/processMultipart.d.ts +0 -8
  114. package/dist/next-fileupload/processMultipart.d.ts.map +0 -1
  115. package/dist/next-fileupload/processMultipart.js.map +0 -1
  116. package/dist/next-fileupload/processNested.d.ts.map +0 -1
  117. package/dist/next-fileupload/processNested.js.map +0 -1
  118. package/dist/next-fileupload/uploadTimer.d.ts.map +0 -1
  119. package/dist/next-fileupload/uploadTimer.js.map +0 -1
  120. package/dist/next-fileupload/utilities.d.ts.map +0 -1
  121. package/dist/next-fileupload/utilities.js.map +0 -1
  122. package/dist/next-stream-file/index.d.ts.map +0 -1
  123. package/dist/next-stream-file/index.js.map +0 -1
  124. /package/dist/{next-fileupload → fetchAPI-multipart}/fileFactory.js +0 -0
  125. /package/dist/{next-fileupload → fetchAPI-multipart}/handlers.js +0 -0
  126. /package/dist/{next-fileupload → fetchAPI-multipart}/isEligibleRequest.d.ts +0 -0
  127. /package/dist/{next-fileupload → fetchAPI-multipart}/isEligibleRequest.js +0 -0
  128. /package/dist/{next-fileupload → fetchAPI-multipart}/processMultipart.js +0 -0
  129. /package/dist/{next-fileupload → fetchAPI-multipart}/processNested.d.ts +0 -0
  130. /package/dist/{next-fileupload → fetchAPI-multipart}/uploadTimer.d.ts +0 -0
  131. /package/dist/{next-fileupload → fetchAPI-multipart}/uploadTimer.js +0 -0
  132. /package/dist/{next-fileupload → fetchAPI-multipart}/utilities.js +0 -0
  133. /package/dist/{next-stream-file → fetchAPI-stream-file}/index.d.ts +0 -0
  134. /package/dist/{next-stream-file → fetchAPI-stream-file}/index.js +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"createPayloadRequest.d.ts","sourceRoot":"","sources":["../../src/utilities/createPayloadRequest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAGV,cAAc,EACd,eAAe,EAChB,MAAM,eAAe,CAAA;AAYtB,KAAK,IAAI,GAAG;IACV,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,eAAe,CAAA;IAClD,MAAM,CAAC,EAAE;QACP,UAAU,EAAE,MAAM,CAAA;KACnB,CAAA;IACD,OAAO,EAAE,OAAO,CAAA;CACjB,CAAA;AAED,eAAO,MAAM,oBAAoB,gDAI9B,IAAI,KAAG,QAAQ,cAAc,CAsE/B,CAAA"}
1
+ {"version":3,"file":"createPayloadRequest.d.ts","sourceRoot":"","sources":["../../src/utilities/createPayloadRequest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAkC,cAAc,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAapG,KAAK,IAAI,GAAG;IACV,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,eAAe,CAAA;IAClD,MAAM,CAAC,EAAE;QACP,UAAU,EAAE,MAAM,CAAA;KACnB,CAAA;IACD,OAAO,EAAE,OAAO,CAAA;CACjB,CAAA;AAED,eAAO,MAAM,oBAAoB,gDAI9B,IAAI,KAAG,QAAQ,cAAc,CA+E/B,CAAA"}
@@ -4,6 +4,7 @@ import { parseCookies } from 'payload/auth';
4
4
  import { getDataLoader } from 'payload/utilities';
5
5
  import qs from 'qs';
6
6
  import { URL } from 'url';
7
+ import { sanitizeLocales } from './addLocalesToRequest.js';
7
8
  import { getPayloadHMR } from './getPayloadHMR.js';
8
9
  import { getRequestLanguage } from './getRequestLanguage.js';
9
10
  export const createPayloadRequest = async ({ config: configPromise, params, request })=>{
@@ -11,13 +12,9 @@ export const createPayloadRequest = async ({ config: configPromise, params, requ
11
12
  const payload = await getPayloadHMR({
12
13
  config: configPromise
13
14
  });
14
- const { collections, config } = payload;
15
- let collection = undefined;
16
- if (params?.collection && collections?.[params.collection]) {
17
- collection = collections[params.collection];
18
- }
15
+ const { config } = payload;
19
16
  const urlProperties = new URL(request.url);
20
- const { pathname } = urlProperties;
17
+ const { pathname, searchParams } = urlProperties;
21
18
  const isGraphQL = !config.graphQL.disable && pathname === `${config.routes.api}${config.routes.graphQL}`;
22
19
  const language = getRequestLanguage({
23
20
  config,
@@ -29,12 +26,25 @@ export const createPayloadRequest = async ({ config: configPromise, params, requ
29
26
  context: 'api',
30
27
  language
31
28
  });
29
+ let locale;
30
+ let fallbackLocale;
31
+ if (config.localization) {
32
+ const locales = sanitizeLocales({
33
+ fallbackLocale: searchParams.get('fallback-locale'),
34
+ locale: searchParams.get('locale'),
35
+ localization: payload.config.localization
36
+ });
37
+ locale = locales.locale;
38
+ fallbackLocale = locales.fallbackLocale;
39
+ }
32
40
  const customRequest = {
33
41
  context: {},
42
+ fallbackLocale,
34
43
  hash: urlProperties.hash,
35
44
  host: urlProperties.host,
36
45
  href: urlProperties.href,
37
46
  i18n,
47
+ locale,
38
48
  origin: urlProperties.origin,
39
49
  pathname: urlProperties.pathname,
40
50
  payload,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utilities/createPayloadRequest.ts"],"sourcesContent":["import type {\n Collection,\n CustomPayloadRequest,\n PayloadRequest,\n SanitizedConfig,\n} from 'payload/types'\n\nimport { initI18n } from '@payloadcms/translations'\nimport { executeAuthStrategies } from 'payload/auth'\nimport { parseCookies } from 'payload/auth'\nimport { getDataLoader } from 'payload/utilities'\nimport qs from 'qs'\nimport { URL } from 'url'\n\nimport { getPayloadHMR } from './getPayloadHMR.js'\nimport { getRequestLanguage } from './getRequestLanguage.js'\n\ntype Args = {\n config: Promise<SanitizedConfig> | SanitizedConfig\n params?: {\n collection: string\n }\n request: Request\n}\n\nexport const createPayloadRequest = async ({\n config: configPromise,\n params,\n request,\n}: Args): Promise<PayloadRequest> => {\n const cookies = parseCookies(request.headers)\n const payload = await getPayloadHMR({ config: configPromise })\n\n const { collections, config } = payload\n\n let collection: Collection = undefined\n if (params?.collection && collections?.[params.collection]) {\n collection = collections[params.collection]\n }\n\n const urlProperties = new URL(request.url)\n const { pathname } = urlProperties\n\n const isGraphQL =\n !config.graphQL.disable && pathname === `${config.routes.api}${config.routes.graphQL}`\n\n const language = getRequestLanguage({\n config,\n cookies,\n headers: request.headers,\n })\n\n const i18n = await initI18n({\n config: config.i18n,\n context: 'api',\n language,\n })\n\n const customRequest: CustomPayloadRequest = {\n context: {},\n hash: urlProperties.hash,\n host: urlProperties.host,\n href: urlProperties.href,\n i18n,\n origin: urlProperties.origin,\n pathname: urlProperties.pathname,\n payload,\n payloadAPI: isGraphQL ? 'GraphQL' : 'REST',\n payloadDataLoader: undefined,\n payloadUploadSizes: {},\n port: urlProperties.port,\n protocol: urlProperties.protocol,\n query: urlProperties.search\n ? qs.parse(urlProperties.search, {\n arrayLimit: 1000,\n depth: 10,\n ignoreQueryPrefix: true,\n })\n : {},\n routeParams: params || {},\n search: urlProperties.search,\n searchParams: urlProperties.searchParams,\n t: i18n.t,\n transactionID: undefined,\n user: null,\n }\n\n const req: PayloadRequest = Object.assign(request, customRequest)\n\n req.payloadDataLoader = getDataLoader(req)\n\n req.user = await executeAuthStrategies({\n cookies,\n headers: req.headers,\n isGraphQL,\n payload,\n })\n\n return req\n}\n"],"names":["initI18n","executeAuthStrategies","parseCookies","getDataLoader","qs","URL","getPayloadHMR","getRequestLanguage","createPayloadRequest","config","configPromise","params","request","cookies","headers","payload","collections","collection","undefined","urlProperties","url","pathname","isGraphQL","graphQL","disable","routes","api","language","i18n","context","customRequest","hash","host","href","origin","payloadAPI","payloadDataLoader","payloadUploadSizes","port","protocol","query","search","parse","arrayLimit","depth","ignoreQueryPrefix","routeParams","searchParams","t","transactionID","user","req","Object","assign"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAOA,SAASA,QAAQ,QAAQ,2BAA0B;AACnD,SAASC,qBAAqB,QAAQ,eAAc;AACpD,SAASC,YAAY,QAAQ,eAAc;AAC3C,SAASC,aAAa,QAAQ,oBAAmB;AACjD,OAAOC,QAAQ,KAAI;AACnB,SAASC,GAAG,QAAQ,MAAK;AAEzB,SAASC,aAAa,QAAQ,qBAAoB;AAClD,SAASC,kBAAkB,QAAQ,0BAAyB;AAU5D,OAAO,MAAMC,uBAAuB,OAAO,EACzCC,QAAQC,aAAa,EACrBC,MAAM,EACNC,OAAO,EACF;IACL,MAAMC,UAAUX,aAAaU,QAAQE,OAAO;IAC5C,MAAMC,UAAU,MAAMT,cAAc;QAAEG,QAAQC;IAAc;IAE5D,MAAM,EAAEM,WAAW,EAAEP,MAAM,EAAE,GAAGM;IAEhC,IAAIE,aAAyBC;IAC7B,IAAIP,QAAQM,cAAcD,aAAa,CAACL,OAAOM,UAAU,CAAC,EAAE;QAC1DA,aAAaD,WAAW,CAACL,OAAOM,UAAU,CAAC;IAC7C;IAEA,MAAME,gBAAgB,IAAId,IAAIO,QAAQQ,GAAG;IACzC,MAAM,EAAEC,QAAQ,EAAE,GAAGF;IAErB,MAAMG,YACJ,CAACb,OAAOc,OAAO,CAACC,OAAO,IAAIH,aAAa,CAAC,EAAEZ,OAAOgB,MAAM,CAACC,GAAG,CAAC,EAAEjB,OAAOgB,MAAM,CAACF,OAAO,CAAC,CAAC;IAExF,MAAMI,WAAWpB,mBAAmB;QAClCE;QACAI;QACAC,SAASF,QAAQE,OAAO;IAC1B;IAEA,MAAMc,OAAO,MAAM5B,SAAS;QAC1BS,QAAQA,OAAOmB,IAAI;QACnBC,SAAS;QACTF;IACF;IAEA,MAAMG,gBAAsC;QAC1CD,SAAS,CAAC;QACVE,MAAMZ,cAAcY,IAAI;QACxBC,MAAMb,cAAca,IAAI;QACxBC,MAAMd,cAAcc,IAAI;QACxBL;QACAM,QAAQf,cAAce,MAAM;QAC5Bb,UAAUF,cAAcE,QAAQ;QAChCN;QACAoB,YAAYb,YAAY,YAAY;QACpCc,mBAAmBlB;QACnBmB,oBAAoB,CAAC;QACrBC,MAAMnB,cAAcmB,IAAI;QACxBC,UAAUpB,cAAcoB,QAAQ;QAChCC,OAAOrB,cAAcsB,MAAM,GACvBrC,GAAGsC,KAAK,CAACvB,cAAcsB,MAAM,EAAE;YAC7BE,YAAY;YACZC,OAAO;YACPC,mBAAmB;QACrB,KACA,CAAC;QACLC,aAAanC,UAAU,CAAC;QACxB8B,QAAQtB,cAAcsB,MAAM;QAC5BM,cAAc5B,cAAc4B,YAAY;QACxCC,GAAGpB,KAAKoB,CAAC;QACTC,eAAe/B;QACfgC,MAAM;IACR;IAEA,MAAMC,MAAsBC,OAAOC,MAAM,CAACzC,SAASkB;IAEnDqB,IAAIf,iBAAiB,GAAGjC,cAAcgD;IAEtCA,IAAID,IAAI,GAAG,MAAMjD,sBAAsB;QACrCY;QACAC,SAASqC,IAAIrC,OAAO;QACpBQ;QACAP;IACF;IAEA,OAAOoC;AACT,EAAC"}
1
+ {"version":3,"sources":["../../src/utilities/createPayloadRequest.ts"],"sourcesContent":["import type { CustomPayloadRequestProperties, PayloadRequest, SanitizedConfig } from 'payload/types'\n\nimport { initI18n } from '@payloadcms/translations'\nimport { executeAuthStrategies } from 'payload/auth'\nimport { parseCookies } from 'payload/auth'\nimport { getDataLoader } from 'payload/utilities'\nimport qs from 'qs'\nimport { URL } from 'url'\n\nimport { sanitizeLocales } from './addLocalesToRequest.js'\nimport { getPayloadHMR } from './getPayloadHMR.js'\nimport { getRequestLanguage } from './getRequestLanguage.js'\n\ntype Args = {\n config: Promise<SanitizedConfig> | SanitizedConfig\n params?: {\n collection: string\n }\n request: Request\n}\n\nexport const createPayloadRequest = async ({\n config: configPromise,\n params,\n request,\n}: Args): Promise<PayloadRequest> => {\n const cookies = parseCookies(request.headers)\n const payload = await getPayloadHMR({ config: configPromise })\n\n const { config } = payload\n\n const urlProperties = new URL(request.url)\n const { pathname, searchParams } = urlProperties\n\n const isGraphQL =\n !config.graphQL.disable && pathname === `${config.routes.api}${config.routes.graphQL}`\n\n const language = getRequestLanguage({\n config,\n cookies,\n headers: request.headers,\n })\n\n const i18n = await initI18n({\n config: config.i18n,\n context: 'api',\n language,\n })\n\n let locale\n let fallbackLocale\n if (config.localization) {\n const locales = sanitizeLocales({\n fallbackLocale: searchParams.get('fallback-locale'),\n locale: searchParams.get('locale'),\n localization: payload.config.localization,\n })\n locale = locales.locale\n fallbackLocale = locales.fallbackLocale\n }\n\n const customRequest: CustomPayloadRequestProperties = {\n context: {},\n fallbackLocale,\n hash: urlProperties.hash,\n host: urlProperties.host,\n href: urlProperties.href,\n i18n,\n locale,\n origin: urlProperties.origin,\n pathname: urlProperties.pathname,\n payload,\n payloadAPI: isGraphQL ? 'GraphQL' : 'REST',\n payloadDataLoader: undefined,\n payloadUploadSizes: {},\n port: urlProperties.port,\n protocol: urlProperties.protocol,\n query: urlProperties.search\n ? qs.parse(urlProperties.search, {\n arrayLimit: 1000,\n depth: 10,\n ignoreQueryPrefix: true,\n })\n : {},\n routeParams: params || {},\n search: urlProperties.search,\n searchParams: urlProperties.searchParams,\n t: i18n.t,\n transactionID: undefined,\n user: null,\n }\n\n const req: PayloadRequest = Object.assign(request, customRequest)\n\n req.payloadDataLoader = getDataLoader(req)\n\n req.user = await executeAuthStrategies({\n cookies,\n headers: req.headers,\n isGraphQL,\n payload,\n })\n\n return req\n}\n"],"names":["initI18n","executeAuthStrategies","parseCookies","getDataLoader","qs","URL","sanitizeLocales","getPayloadHMR","getRequestLanguage","createPayloadRequest","config","configPromise","params","request","cookies","headers","payload","urlProperties","url","pathname","searchParams","isGraphQL","graphQL","disable","routes","api","language","i18n","context","locale","fallbackLocale","localization","locales","get","customRequest","hash","host","href","origin","payloadAPI","payloadDataLoader","undefined","payloadUploadSizes","port","protocol","query","search","parse","arrayLimit","depth","ignoreQueryPrefix","routeParams","t","transactionID","user","req","Object","assign"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAEA,SAASA,QAAQ,QAAQ,2BAA0B;AACnD,SAASC,qBAAqB,QAAQ,eAAc;AACpD,SAASC,YAAY,QAAQ,eAAc;AAC3C,SAASC,aAAa,QAAQ,oBAAmB;AACjD,OAAOC,QAAQ,KAAI;AACnB,SAASC,GAAG,QAAQ,MAAK;AAEzB,SAASC,eAAe,QAAQ,2BAA0B;AAC1D,SAASC,aAAa,QAAQ,qBAAoB;AAClD,SAASC,kBAAkB,QAAQ,0BAAyB;AAU5D,OAAO,MAAMC,uBAAuB,OAAO,EACzCC,QAAQC,aAAa,EACrBC,MAAM,EACNC,OAAO,EACF;IACL,MAAMC,UAAUZ,aAAaW,QAAQE,OAAO;IAC5C,MAAMC,UAAU,MAAMT,cAAc;QAAEG,QAAQC;IAAc;IAE5D,MAAM,EAAED,MAAM,EAAE,GAAGM;IAEnB,MAAMC,gBAAgB,IAAIZ,IAAIQ,QAAQK,GAAG;IACzC,MAAM,EAAEC,QAAQ,EAAEC,YAAY,EAAE,GAAGH;IAEnC,MAAMI,YACJ,CAACX,OAAOY,OAAO,CAACC,OAAO,IAAIJ,aAAa,CAAC,EAAET,OAAOc,MAAM,CAACC,GAAG,CAAC,EAAEf,OAAOc,MAAM,CAACF,OAAO,CAAC,CAAC;IAExF,MAAMI,WAAWlB,mBAAmB;QAClCE;QACAI;QACAC,SAASF,QAAQE,OAAO;IAC1B;IAEA,MAAMY,OAAO,MAAM3B,SAAS;QAC1BU,QAAQA,OAAOiB,IAAI;QACnBC,SAAS;QACTF;IACF;IAEA,IAAIG;IACJ,IAAIC;IACJ,IAAIpB,OAAOqB,YAAY,EAAE;QACvB,MAAMC,UAAU1B,gBAAgB;YAC9BwB,gBAAgBV,aAAaa,GAAG,CAAC;YACjCJ,QAAQT,aAAaa,GAAG,CAAC;YACzBF,cAAcf,QAAQN,MAAM,CAACqB,YAAY;QAC3C;QACAF,SAASG,QAAQH,MAAM;QACvBC,iBAAiBE,QAAQF,cAAc;IACzC;IAEA,MAAMI,gBAAgD;QACpDN,SAAS,CAAC;QACVE;QACAK,MAAMlB,cAAckB,IAAI;QACxBC,MAAMnB,cAAcmB,IAAI;QACxBC,MAAMpB,cAAcoB,IAAI;QACxBV;QACAE;QACAS,QAAQrB,cAAcqB,MAAM;QAC5BnB,UAAUF,cAAcE,QAAQ;QAChCH;QACAuB,YAAYlB,YAAY,YAAY;QACpCmB,mBAAmBC;QACnBC,oBAAoB,CAAC;QACrBC,MAAM1B,cAAc0B,IAAI;QACxBC,UAAU3B,cAAc2B,QAAQ;QAChCC,OAAO5B,cAAc6B,MAAM,GACvB1C,GAAG2C,KAAK,CAAC9B,cAAc6B,MAAM,EAAE;YAC7BE,YAAY;YACZC,OAAO;YACPC,mBAAmB;QACrB,KACA,CAAC;QACLC,aAAavC,UAAU,CAAC;QACxBkC,QAAQ7B,cAAc6B,MAAM;QAC5B1B,cAAcH,cAAcG,YAAY;QACxCgC,GAAGzB,KAAKyB,CAAC;QACTC,eAAeZ;QACfa,MAAM;IACR;IAEA,MAAMC,MAAsBC,OAAOC,MAAM,CAAC5C,SAASqB;IAEnDqB,IAAIf,iBAAiB,GAAGrC,cAAcoD;IAEtCA,IAAID,IAAI,GAAG,MAAMrD,sBAAsB;QACrCa;QACAC,SAASwC,IAAIxC,OAAO;QACpBM;QACAL;IACF;IAEA,OAAOuC;AACT,EAAC"}
@@ -1,11 +1,11 @@
1
- import type { Collection, CustomPayloadRequest, SanitizedConfig } from 'payload/types';
1
+ import type { Collection, PayloadRequestWithData, SanitizedConfig } from 'payload/types';
2
2
  type GetDataAndFile = (args: {
3
3
  collection: Collection;
4
4
  config: SanitizedConfig;
5
5
  request: Request;
6
6
  }) => Promise<{
7
7
  data: Record<string, any>;
8
- file: CustomPayloadRequest['file'];
8
+ file: PayloadRequestWithData['file'];
9
9
  }>;
10
10
  export declare const getDataAndFile: GetDataAndFile;
11
11
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"getDataAndFile.d.ts","sourceRoot":"","sources":["../../src/utilities/getDataAndFile.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAMtF,KAAK,cAAc,GAAG,CAAC,IAAI,EAAE;IAC3B,UAAU,EAAE,UAAU,CAAA;IACtB,MAAM,EAAE,eAAe,CAAA;IACvB,OAAO,EAAE,OAAO,CAAA;CACjB,KAAK,OAAO,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IACzB,IAAI,EAAE,oBAAoB,CAAC,MAAM,CAAC,CAAA;CACnC,CAAC,CAAA;AACF,eAAO,MAAM,cAAc,EAAE,cAwD5B,CAAA"}
1
+ {"version":3,"file":"getDataAndFile.d.ts","sourceRoot":"","sources":["../../src/utilities/getDataAndFile.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,sBAAsB,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAMxF,KAAK,cAAc,GAAG,CAAC,IAAI,EAAE;IAC3B,UAAU,EAAE,UAAU,CAAA;IACtB,MAAM,EAAE,eAAe,CAAA;IACvB,OAAO,EAAE,OAAO,CAAA;CACjB,KAAK,OAAO,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IACzB,IAAI,EAAE,sBAAsB,CAAC,MAAM,CAAC,CAAA;CACrC,CAAC,CAAA;AACF,eAAO,MAAM,cAAc,EAAE,cAwD5B,CAAA"}
@@ -1,4 +1,4 @@
1
- import { nextFileUpload } from '../next-fileupload/index.js';
1
+ import { fetchAPIFileUpload } from '../fetchAPI-multipart/index.js';
2
2
  export const getDataAndFile = async ({ collection, config, request: incomingRequest })=>{
3
3
  let data = undefined;
4
4
  let file = undefined;
@@ -23,7 +23,7 @@ export const getDataAndFile = async ({ collection, config, request: incomingRequ
23
23
  }
24
24
  } else {
25
25
  if (request.headers.has('Content-Length') && request.headers.get('Content-Length') !== '0') {
26
- const { error, fields, files } = await nextFileUpload({
26
+ const { error, fields, files } = await fetchAPIFileUpload({
27
27
  options: config.upload,
28
28
  request
29
29
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utilities/getDataAndFile.ts"],"sourcesContent":["import type { Collection, CustomPayloadRequest, SanitizedConfig } from 'payload/types'\n\nimport type { NextFileUploadOptions } from '../next-fileupload/index.js'\n\nimport { nextFileUpload } from '../next-fileupload/index.js'\n\ntype GetDataAndFile = (args: {\n collection: Collection\n config: SanitizedConfig\n request: Request\n}) => Promise<{\n data: Record<string, any>\n file: CustomPayloadRequest['file']\n}>\nexport const getDataAndFile: GetDataAndFile = async ({\n collection,\n config,\n request: incomingRequest,\n}) => {\n let data: Record<string, any> = undefined\n let file: CustomPayloadRequest['file'] = undefined\n\n if (\n ['PATCH', 'POST', 'PUT'].includes(incomingRequest.method.toUpperCase()) &&\n incomingRequest.body\n ) {\n const request = new Request(incomingRequest)\n const [contentType] = (request.headers.get('Content-Type') || '').split(';')\n\n if (contentType === 'application/json') {\n const bodyByteSize = parseInt(request.headers.get('Content-Length') || '0', 10)\n const upperByteLimit =\n typeof config.upload?.limits?.fieldSize === 'number'\n ? config.upload.limits.fields\n : undefined\n if (bodyByteSize <= upperByteLimit || upperByteLimit === undefined) {\n try {\n data = await request.json()\n } catch (error) {\n data = {}\n }\n } else {\n throw new Error('Request body size exceeds the limit')\n }\n } else {\n if (request.headers.has('Content-Length') && request.headers.get('Content-Length') !== '0') {\n const { error, fields, files } = await nextFileUpload({\n options: config.upload as NextFileUploadOptions,\n request,\n })\n\n if (error) {\n throw new Error(error.message)\n }\n\n if (collection?.config?.upload && files?.file) {\n file = files.file\n }\n\n if (fields?._payload && typeof fields._payload === 'string') {\n data = JSON.parse(fields._payload)\n }\n }\n }\n }\n\n return {\n data,\n file,\n }\n}\n"],"names":["nextFileUpload","getDataAndFile","collection","config","request","incomingRequest","data","undefined","file","includes","method","toUpperCase","body","Request","contentType","headers","get","split","bodyByteSize","parseInt","upperByteLimit","upload","limits","fieldSize","fields","json","error","Error","has","files","options","message","_payload","JSON","parse"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAIA,SAASA,cAAc,QAAQ,8BAA6B;AAU5D,OAAO,MAAMC,iBAAiC,OAAO,EACnDC,UAAU,EACVC,MAAM,EACNC,SAASC,eAAe,EACzB;IACC,IAAIC,OAA4BC;IAChC,IAAIC,OAAqCD;IAEzC,IACE;QAAC;QAAS;QAAQ;KAAM,CAACE,QAAQ,CAACJ,gBAAgBK,MAAM,CAACC,WAAW,OACpEN,gBAAgBO,IAAI,EACpB;QACA,MAAMR,UAAU,IAAIS,QAAQR;QAC5B,MAAM,CAACS,YAAY,GAAG,AAACV,CAAAA,QAAQW,OAAO,CAACC,GAAG,CAAC,mBAAmB,EAAC,EAAGC,KAAK,CAAC;QAExE,IAAIH,gBAAgB,oBAAoB;YACtC,MAAMI,eAAeC,SAASf,QAAQW,OAAO,CAACC,GAAG,CAAC,qBAAqB,KAAK;YAC5E,MAAMI,iBACJ,OAAOjB,OAAOkB,MAAM,EAAEC,QAAQC,cAAc,WACxCpB,OAAOkB,MAAM,CAACC,MAAM,CAACE,MAAM,GAC3BjB;YACN,IAAIW,gBAAgBE,kBAAkBA,mBAAmBb,WAAW;gBAClE,IAAI;oBACFD,OAAO,MAAMF,QAAQqB,IAAI;gBAC3B,EAAE,OAAOC,OAAO;oBACdpB,OAAO,CAAC;gBACV;YACF,OAAO;gBACL,MAAM,IAAIqB,MAAM;YAClB;QACF,OAAO;YACL,IAAIvB,QAAQW,OAAO,CAACa,GAAG,CAAC,qBAAqBxB,QAAQW,OAAO,CAACC,GAAG,CAAC,sBAAsB,KAAK;gBAC1F,MAAM,EAAEU,KAAK,EAAEF,MAAM,EAAEK,KAAK,EAAE,GAAG,MAAM7B,eAAe;oBACpD8B,SAAS3B,OAAOkB,MAAM;oBACtBjB;gBACF;gBAEA,IAAIsB,OAAO;oBACT,MAAM,IAAIC,MAAMD,MAAMK,OAAO;gBAC/B;gBAEA,IAAI7B,YAAYC,QAAQkB,UAAUQ,OAAOrB,MAAM;oBAC7CA,OAAOqB,MAAMrB,IAAI;gBACnB;gBAEA,IAAIgB,QAAQQ,YAAY,OAAOR,OAAOQ,QAAQ,KAAK,UAAU;oBAC3D1B,OAAO2B,KAAKC,KAAK,CAACV,OAAOQ,QAAQ;gBACnC;YACF;QACF;IACF;IAEA,OAAO;QACL1B;QACAE;IACF;AACF,EAAC"}
1
+ {"version":3,"sources":["../../src/utilities/getDataAndFile.ts"],"sourcesContent":["import type { Collection, PayloadRequestWithData, SanitizedConfig } from 'payload/types'\n\nimport type { FetchAPIFileUploadOptions } from '../fetchAPI-multipart/index.js'\n\nimport { fetchAPIFileUpload } from '../fetchAPI-multipart/index.js'\n\ntype GetDataAndFile = (args: {\n collection: Collection\n config: SanitizedConfig\n request: Request\n}) => Promise<{\n data: Record<string, any>\n file: PayloadRequestWithData['file']\n}>\nexport const getDataAndFile: GetDataAndFile = async ({\n collection,\n config,\n request: incomingRequest,\n}) => {\n let data: Record<string, any> = undefined\n let file: PayloadRequestWithData['file'] = undefined\n\n if (\n ['PATCH', 'POST', 'PUT'].includes(incomingRequest.method.toUpperCase()) &&\n incomingRequest.body\n ) {\n const request = new Request(incomingRequest)\n const [contentType] = (request.headers.get('Content-Type') || '').split(';')\n\n if (contentType === 'application/json') {\n const bodyByteSize = parseInt(request.headers.get('Content-Length') || '0', 10)\n const upperByteLimit =\n typeof config.upload?.limits?.fieldSize === 'number'\n ? config.upload.limits.fields\n : undefined\n if (bodyByteSize <= upperByteLimit || upperByteLimit === undefined) {\n try {\n data = await request.json()\n } catch (error) {\n data = {}\n }\n } else {\n throw new Error('Request body size exceeds the limit')\n }\n } else {\n if (request.headers.has('Content-Length') && request.headers.get('Content-Length') !== '0') {\n const { error, fields, files } = await fetchAPIFileUpload({\n options: config.upload as FetchAPIFileUploadOptions,\n request,\n })\n\n if (error) {\n throw new Error(error.message)\n }\n\n if (collection?.config?.upload && files?.file) {\n file = files.file\n }\n\n if (fields?._payload && typeof fields._payload === 'string') {\n data = JSON.parse(fields._payload)\n }\n }\n }\n }\n\n return {\n data,\n file,\n }\n}\n"],"names":["fetchAPIFileUpload","getDataAndFile","collection","config","request","incomingRequest","data","undefined","file","includes","method","toUpperCase","body","Request","contentType","headers","get","split","bodyByteSize","parseInt","upperByteLimit","upload","limits","fieldSize","fields","json","error","Error","has","files","options","message","_payload","JSON","parse"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAIA,SAASA,kBAAkB,QAAQ,iCAAgC;AAUnE,OAAO,MAAMC,iBAAiC,OAAO,EACnDC,UAAU,EACVC,MAAM,EACNC,SAASC,eAAe,EACzB;IACC,IAAIC,OAA4BC;IAChC,IAAIC,OAAuCD;IAE3C,IACE;QAAC;QAAS;QAAQ;KAAM,CAACE,QAAQ,CAACJ,gBAAgBK,MAAM,CAACC,WAAW,OACpEN,gBAAgBO,IAAI,EACpB;QACA,MAAMR,UAAU,IAAIS,QAAQR;QAC5B,MAAM,CAACS,YAAY,GAAG,AAACV,CAAAA,QAAQW,OAAO,CAACC,GAAG,CAAC,mBAAmB,EAAC,EAAGC,KAAK,CAAC;QAExE,IAAIH,gBAAgB,oBAAoB;YACtC,MAAMI,eAAeC,SAASf,QAAQW,OAAO,CAACC,GAAG,CAAC,qBAAqB,KAAK;YAC5E,MAAMI,iBACJ,OAAOjB,OAAOkB,MAAM,EAAEC,QAAQC,cAAc,WACxCpB,OAAOkB,MAAM,CAACC,MAAM,CAACE,MAAM,GAC3BjB;YACN,IAAIW,gBAAgBE,kBAAkBA,mBAAmBb,WAAW;gBAClE,IAAI;oBACFD,OAAO,MAAMF,QAAQqB,IAAI;gBAC3B,EAAE,OAAOC,OAAO;oBACdpB,OAAO,CAAC;gBACV;YACF,OAAO;gBACL,MAAM,IAAIqB,MAAM;YAClB;QACF,OAAO;YACL,IAAIvB,QAAQW,OAAO,CAACa,GAAG,CAAC,qBAAqBxB,QAAQW,OAAO,CAACC,GAAG,CAAC,sBAAsB,KAAK;gBAC1F,MAAM,EAAEU,KAAK,EAAEF,MAAM,EAAEK,KAAK,EAAE,GAAG,MAAM7B,mBAAmB;oBACxD8B,SAAS3B,OAAOkB,MAAM;oBACtBjB;gBACF;gBAEA,IAAIsB,OAAO;oBACT,MAAM,IAAIC,MAAMD,MAAMK,OAAO;gBAC/B;gBAEA,IAAI7B,YAAYC,QAAQkB,UAAUQ,OAAOrB,MAAM;oBAC7CA,OAAOqB,MAAMrB,IAAI;gBACnB;gBAEA,IAAIgB,QAAQQ,YAAY,OAAOR,OAAOQ,QAAQ,KAAK,UAAU;oBAC3D1B,OAAO2B,KAAKC,KAAK,CAACV,OAAOQ,QAAQ;gBACnC;YACF;QACF;IACF;IAEA,OAAO;QACL1B;QACAE;IACF;AACF,EAAC"}
@@ -1,7 +1,7 @@
1
- import type { PayloadRequest } from 'payload/types';
1
+ import type { PayloadRequestWithData } from 'payload/types';
2
2
  type CorsArgs = {
3
3
  headers: Headers;
4
- req: Partial<PayloadRequest>;
4
+ req: Partial<PayloadRequestWithData>;
5
5
  };
6
6
  export declare const headersWithCors: ({ headers, req }: CorsArgs) => Headers;
7
7
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"headersWithCors.d.ts","sourceRoot":"","sources":["../../src/utilities/headersWithCors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAEnD,KAAK,QAAQ,GAAG;IACd,OAAO,EAAE,OAAO,CAAA;IAChB,GAAG,EAAE,OAAO,CAAC,cAAc,CAAC,CAAA;CAC7B,CAAA;AACD,eAAO,MAAM,eAAe,qBAAsB,QAAQ,KAAG,OAoB5D,CAAA"}
1
+ {"version":3,"file":"headersWithCors.d.ts","sourceRoot":"","sources":["../../src/utilities/headersWithCors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAA;AAE3D,KAAK,QAAQ,GAAG;IACd,OAAO,EAAE,OAAO,CAAA;IAChB,GAAG,EAAE,OAAO,CAAC,sBAAsB,CAAC,CAAA;CACrC,CAAA;AACD,eAAO,MAAM,eAAe,qBAAsB,QAAQ,KAAG,OAoB5D,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utilities/headersWithCors.ts"],"sourcesContent":["import type { PayloadRequest } from 'payload/types'\n\ntype CorsArgs = {\n headers: Headers\n req: Partial<PayloadRequest>\n}\nexport const headersWithCors = ({ headers, req }: CorsArgs): Headers => {\n const cors = req?.payload.config.cors\n const requestOrigin = req?.headers.get('Origin')\n\n if (cors) {\n headers.set('Access-Control-Allow-Methods', 'PUT, PATCH, POST, GET, DELETE, OPTIONS')\n headers.set(\n 'Access-Control-Allow-Headers',\n 'Origin, X-Requested-With, Content-Type, Accept, Authorization, Content-Encoding, x-apollo-tracing',\n )\n\n if (cors === '*') {\n headers.set('Access-Control-Allow-Origin', '*')\n } else if (Array.isArray(cors) && cors.indexOf(requestOrigin) > -1) {\n headers.set('Access-Control-Allow-Credentials', 'true')\n headers.set('Access-Control-Allow-Origin', requestOrigin)\n }\n }\n\n return headers\n}\n"],"names":["headersWithCors","headers","req","cors","payload","config","requestOrigin","get","set","Array","isArray","indexOf"],"rangeMappings":";;;;;;;;;;;;;;","mappings":"AAMA,OAAO,MAAMA,kBAAkB,CAAC,EAAEC,OAAO,EAAEC,GAAG,EAAY;IACxD,MAAMC,OAAOD,KAAKE,QAAQC,OAAOF;IACjC,MAAMG,gBAAgBJ,KAAKD,QAAQM,IAAI;IAEvC,IAAIJ,MAAM;QACRF,QAAQO,GAAG,CAAC,gCAAgC;QAC5CP,QAAQO,GAAG,CACT,gCACA;QAGF,IAAIL,SAAS,KAAK;YAChBF,QAAQO,GAAG,CAAC,+BAA+B;QAC7C,OAAO,IAAIC,MAAMC,OAAO,CAACP,SAASA,KAAKQ,OAAO,CAACL,iBAAiB,CAAC,GAAG;YAClEL,QAAQO,GAAG,CAAC,oCAAoC;YAChDP,QAAQO,GAAG,CAAC,+BAA+BF;QAC7C;IACF;IAEA,OAAOL;AACT,EAAC"}
1
+ {"version":3,"sources":["../../src/utilities/headersWithCors.ts"],"sourcesContent":["import type { PayloadRequestWithData } from 'payload/types'\n\ntype CorsArgs = {\n headers: Headers\n req: Partial<PayloadRequestWithData>\n}\nexport const headersWithCors = ({ headers, req }: CorsArgs): Headers => {\n const cors = req?.payload.config.cors\n const requestOrigin = req?.headers.get('Origin')\n\n if (cors) {\n headers.set('Access-Control-Allow-Methods', 'PUT, PATCH, POST, GET, DELETE, OPTIONS')\n headers.set(\n 'Access-Control-Allow-Headers',\n 'Origin, X-Requested-With, Content-Type, Accept, Authorization, Content-Encoding, x-apollo-tracing',\n )\n\n if (cors === '*') {\n headers.set('Access-Control-Allow-Origin', '*')\n } else if (Array.isArray(cors) && cors.indexOf(requestOrigin) > -1) {\n headers.set('Access-Control-Allow-Credentials', 'true')\n headers.set('Access-Control-Allow-Origin', requestOrigin)\n }\n }\n\n return headers\n}\n"],"names":["headersWithCors","headers","req","cors","payload","config","requestOrigin","get","set","Array","isArray","indexOf"],"rangeMappings":";;;;;;;;;;;;;;","mappings":"AAMA,OAAO,MAAMA,kBAAkB,CAAC,EAAEC,OAAO,EAAEC,GAAG,EAAY;IACxD,MAAMC,OAAOD,KAAKE,QAAQC,OAAOF;IACjC,MAAMG,gBAAgBJ,KAAKD,QAAQM,IAAI;IAEvC,IAAIJ,MAAM;QACRF,QAAQO,GAAG,CAAC,gCAAgC;QAC5CP,QAAQO,GAAG,CACT,gCACA;QAGF,IAAIL,SAAS,KAAK;YAChBF,QAAQO,GAAG,CAAC,+BAA+B;QAC7C,OAAO,IAAIC,MAAMC,OAAO,CAACP,SAASA,KAAKQ,OAAO,CAACL,iBAAiB,CAAC,GAAG;YAClEL,QAAQO,GAAG,CAAC,oCAAoC;YAChDP,QAAQO,GAAG,CAAC,+BAA+BF;QAC7C;IACF;IAEA,OAAOL;AACT,EAAC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utilities/initPage.ts"],"sourcesContent":["import type {\n InitPageResult,\n PayloadRequest,\n SanitizedCollectionConfig,\n SanitizedConfig,\n SanitizedGlobalConfig,\n VisibleEntities,\n} from 'payload/types'\n\nimport { initI18n } from '@payloadcms/translations'\nimport { findLocaleFromCode } from '@payloadcms/ui/utilities/findLocaleFromCode'\nimport { headers as getHeaders } from 'next/headers.js'\nimport { notFound, redirect } from 'next/navigation.js'\nimport { parseCookies } from 'payload/auth'\nimport { createLocalReq, isEntityHidden } from 'payload/utilities'\nimport qs from 'qs'\n\nimport { getPayloadHMR } from '../utilities/getPayloadHMR.js'\nimport { getRequestLanguage } from './getRequestLanguage.js'\n\ntype Args = {\n config: Promise<SanitizedConfig> | SanitizedConfig\n redirectUnauthenticatedUser?: boolean\n route: string\n searchParams: { [key: string]: string | string[] | undefined }\n}\n\nconst authRoutes = ['/login', '/logout', '/create-first-user', '/forgot', '/reset', '/verify']\n\nexport const initPage = async ({\n config: configPromise,\n redirectUnauthenticatedUser = false,\n route,\n searchParams,\n}: Args): Promise<InitPageResult> => {\n const headers = getHeaders()\n const localeParam = searchParams?.locale as string\n const payload = await getPayloadHMR({ config: configPromise })\n const { collections, globals, localization, routes } = payload.config\n\n const queryString = `${qs.stringify(searchParams ?? {}, { addQueryPrefix: true })}`\n const defaultLocale =\n localization && localization.defaultLocale ? localization.defaultLocale : 'en'\n const localeCode = localeParam || defaultLocale\n const locale = localization && findLocaleFromCode(localization, localeCode)\n const cookies = parseCookies(headers)\n const language = getRequestLanguage({ config: payload.config, cookies, headers })\n\n const i18n = await initI18n({\n config: payload.config.i18n,\n context: 'client',\n language,\n })\n\n const req = await createLocalReq(\n {\n fallbackLocale: null,\n locale: locale.code,\n req: {\n i18n,\n query: qs.parse(queryString, {\n depth: 10,\n ignoreQueryPrefix: true,\n }),\n url: `${payload.config.serverURL}${route}${searchParams ? queryString : ''}`,\n } as PayloadRequest,\n },\n payload,\n )\n\n const { permissions, user } = await payload.auth({ headers, req })\n\n req.user = user\n\n const visibleEntities: VisibleEntities = {\n collections: payload.config.collections\n .map(({ slug, admin: { hidden } }) => (!isEntityHidden({ hidden, user }) ? slug : null))\n .filter(Boolean),\n globals: payload.config.globals\n .map(({ slug, admin: { hidden } }) => (!isEntityHidden({ hidden, user }) ? slug : null))\n .filter(Boolean),\n }\n\n const {\n routes: { admin: adminRoute },\n } = payload.config\n\n const routeSegments = route.replace(adminRoute, '').split('/').filter(Boolean)\n const [entityType, entitySlug, createOrID] = routeSegments\n const collectionSlug = entityType === 'collections' ? entitySlug : undefined\n const globalSlug = entityType === 'globals' ? entitySlug : undefined\n const docID = collectionSlug && createOrID !== 'create' ? createOrID : undefined\n\n const isAuthRoute = authRoutes.some((r) => r === route.replace(adminRoute, ''))\n\n if (redirectUnauthenticatedUser && !user && !isAuthRoute) {\n if (searchParams && 'redirect' in searchParams) delete searchParams.redirect\n\n const stringifiedSearchParams = Object.keys(searchParams ?? {}).length\n ? `?${qs.stringify(searchParams)}`\n : ''\n\n redirect(`${routes.admin}/login?redirect=${route + stringifiedSearchParams}`)\n }\n\n if (!permissions.canAccessAdmin && !isAuthRoute) {\n notFound()\n }\n\n let collectionConfig: SanitizedCollectionConfig\n let globalConfig: SanitizedGlobalConfig\n\n if (collectionSlug) {\n collectionConfig = collections.find((collection) => collection.slug === collectionSlug)\n\n if (!collectionConfig) {\n notFound()\n }\n }\n\n if (globalSlug) {\n globalConfig = globals.find((global) => global.slug === globalSlug)\n\n if (!globalConfig) {\n notFound()\n }\n }\n\n return {\n collectionConfig,\n cookies,\n docID,\n globalConfig,\n locale,\n permissions,\n req,\n translations: i18n.translations,\n visibleEntities,\n }\n}\n"],"names":["initI18n","findLocaleFromCode","headers","getHeaders","notFound","redirect","parseCookies","createLocalReq","isEntityHidden","qs","getPayloadHMR","getRequestLanguage","authRoutes","initPage","config","configPromise","redirectUnauthenticatedUser","route","searchParams","localeParam","locale","payload","collections","globals","localization","routes","queryString","stringify","addQueryPrefix","defaultLocale","localeCode","cookies","language","i18n","context","req","fallbackLocale","code","query","parse","depth","ignoreQueryPrefix","url","serverURL","permissions","user","auth","visibleEntities","map","slug","admin","hidden","filter","Boolean","adminRoute","routeSegments","replace","split","entityType","entitySlug","createOrID","collectionSlug","undefined","globalSlug","docID","isAuthRoute","some","r","stringifiedSearchParams","Object","keys","length","canAccessAdmin","collectionConfig","globalConfig","find","collection","global","translations"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
1
+ {"version":3,"sources":["../../src/utilities/initPage.ts"],"sourcesContent":["import type {\n InitPageResult,\n PayloadRequestWithData,\n SanitizedCollectionConfig,\n SanitizedConfig,\n SanitizedGlobalConfig,\n VisibleEntities,\n} from 'payload/types'\n\nimport { initI18n } from '@payloadcms/translations'\nimport { findLocaleFromCode } from '@payloadcms/ui/utilities/findLocaleFromCode'\nimport { headers as getHeaders } from 'next/headers.js'\nimport { notFound, redirect } from 'next/navigation.js'\nimport { parseCookies } from 'payload/auth'\nimport { createLocalReq, isEntityHidden } from 'payload/utilities'\nimport qs from 'qs'\n\nimport { getPayloadHMR } from '../utilities/getPayloadHMR.js'\nimport { getRequestLanguage } from './getRequestLanguage.js'\n\ntype Args = {\n config: Promise<SanitizedConfig> | SanitizedConfig\n redirectUnauthenticatedUser?: boolean\n route: string\n searchParams: { [key: string]: string | string[] | undefined }\n}\n\nconst authRoutes = ['/login', '/logout', '/create-first-user', '/forgot', '/reset', '/verify']\n\nexport const initPage = async ({\n config: configPromise,\n redirectUnauthenticatedUser = false,\n route,\n searchParams,\n}: Args): Promise<InitPageResult> => {\n const headers = getHeaders()\n const localeParam = searchParams?.locale as string\n const payload = await getPayloadHMR({ config: configPromise })\n const { collections, globals, localization, routes } = payload.config\n\n const queryString = `${qs.stringify(searchParams ?? {}, { addQueryPrefix: true })}`\n const defaultLocale =\n localization && localization.defaultLocale ? localization.defaultLocale : 'en'\n const localeCode = localeParam || defaultLocale\n const locale = localization && findLocaleFromCode(localization, localeCode)\n const cookies = parseCookies(headers)\n const language = getRequestLanguage({ config: payload.config, cookies, headers })\n\n const i18n = await initI18n({\n config: payload.config.i18n,\n context: 'client',\n language,\n })\n\n const req = await createLocalReq(\n {\n fallbackLocale: null,\n locale: locale.code,\n req: {\n i18n,\n query: qs.parse(queryString, {\n depth: 10,\n ignoreQueryPrefix: true,\n }),\n url: `${payload.config.serverURL}${route}${searchParams ? queryString : ''}`,\n } as PayloadRequestWithData,\n },\n payload,\n )\n\n const { permissions, user } = await payload.auth({ headers, req })\n\n req.user = user\n\n const visibleEntities: VisibleEntities = {\n collections: payload.config.collections\n .map(({ slug, admin: { hidden } }) => (!isEntityHidden({ hidden, user }) ? slug : null))\n .filter(Boolean),\n globals: payload.config.globals\n .map(({ slug, admin: { hidden } }) => (!isEntityHidden({ hidden, user }) ? slug : null))\n .filter(Boolean),\n }\n\n const {\n routes: { admin: adminRoute },\n } = payload.config\n\n const routeSegments = route.replace(adminRoute, '').split('/').filter(Boolean)\n const [entityType, entitySlug, createOrID] = routeSegments\n const collectionSlug = entityType === 'collections' ? entitySlug : undefined\n const globalSlug = entityType === 'globals' ? entitySlug : undefined\n const docID = collectionSlug && createOrID !== 'create' ? createOrID : undefined\n\n const isAuthRoute = authRoutes.some((r) => r === route.replace(adminRoute, ''))\n\n if (redirectUnauthenticatedUser && !user && !isAuthRoute) {\n if (searchParams && 'redirect' in searchParams) delete searchParams.redirect\n\n const stringifiedSearchParams = Object.keys(searchParams ?? {}).length\n ? `?${qs.stringify(searchParams)}`\n : ''\n\n redirect(`${routes.admin}/login?redirect=${route + stringifiedSearchParams}`)\n }\n\n if (!permissions.canAccessAdmin && !isAuthRoute) {\n notFound()\n }\n\n let collectionConfig: SanitizedCollectionConfig\n let globalConfig: SanitizedGlobalConfig\n\n if (collectionSlug) {\n collectionConfig = collections.find((collection) => collection.slug === collectionSlug)\n\n if (!collectionConfig) {\n notFound()\n }\n }\n\n if (globalSlug) {\n globalConfig = globals.find((global) => global.slug === globalSlug)\n\n if (!globalConfig) {\n notFound()\n }\n }\n\n return {\n collectionConfig,\n cookies,\n docID,\n globalConfig,\n locale,\n permissions,\n req,\n translations: i18n.translations,\n visibleEntities,\n }\n}\n"],"names":["initI18n","findLocaleFromCode","headers","getHeaders","notFound","redirect","parseCookies","createLocalReq","isEntityHidden","qs","getPayloadHMR","getRequestLanguage","authRoutes","initPage","config","configPromise","redirectUnauthenticatedUser","route","searchParams","localeParam","locale","payload","collections","globals","localization","routes","queryString","stringify","addQueryPrefix","defaultLocale","localeCode","cookies","language","i18n","context","req","fallbackLocale","code","query","parse","depth","ignoreQueryPrefix","url","serverURL","permissions","user","auth","visibleEntities","map","slug","admin","hidden","filter","Boolean","adminRoute","routeSegments","replace","split","entityType","entitySlug","createOrID","collectionSlug","undefined","globalSlug","docID","isAuthRoute","some","r","stringifiedSearchParams","Object","keys","length","canAccessAdmin","collectionConfig","globalConfig","find","collection","global","translations"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
@@ -1,7 +1,7 @@
1
- import type { FieldMap } from '@payloadcms/ui/utilities/buildComponentMap';
1
+ import type { FormState } from 'payload/types';
2
2
  import React from 'react';
3
- export declare const CreateFirstUserFields: React.FC<{
4
- baseAuthFieldMap: FieldMap;
3
+ export declare const CreateFirstUserClient: React.FC<{
4
+ initialState: FormState;
5
5
  userSlug: string;
6
6
  }>;
7
7
  //# sourceMappingURL=index.client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.client.d.ts","sourceRoot":"","sources":["../../../src/views/CreateFirstUser/index.client.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,4CAA4C,CAAA;AAI1E,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,eAAO,MAAM,qBAAqB,EAAE,KAAK,CAAC,EAAE,CAAC;IAC3C,gBAAgB,EAAE,QAAQ,CAAA;IAC1B,QAAQ,EAAE,MAAM,CAAA;CACjB,CAcA,CAAA"}
1
+ {"version":3,"file":"index.client.d.ts","sourceRoot":"","sources":["../../../src/views/CreateFirstUser/index.client.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAY9C,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,eAAO,MAAM,qBAAqB,EAAE,KAAK,CAAC,EAAE,CAAC;IAC3C,YAAY,EAAE,SAAS,CAAA;IACvB,QAAQ,EAAE,MAAM,CAAA;CACjB,CAuDA,CAAA"}
@@ -1,22 +1,64 @@
1
1
  'use client';
2
+ import { ConfirmPassword } from '@payloadcms/ui/fields/ConfirmPassword';
3
+ import { Email } from '@payloadcms/ui/fields/Email';
4
+ import { Password } from '@payloadcms/ui/fields/Password';
5
+ import { Form } from '@payloadcms/ui/forms/Form';
2
6
  import { RenderFields } from '@payloadcms/ui/forms/RenderFields';
7
+ import { FormSubmit } from '@payloadcms/ui/forms/Submit';
3
8
  import { useComponentMap } from '@payloadcms/ui/providers/ComponentMap';
9
+ import { useConfig } from '@payloadcms/ui/providers/Config';
10
+ import { useTranslation } from '@payloadcms/ui/providers/Translation';
11
+ import { getFormState } from '@payloadcms/ui/utilities/getFormState';
4
12
  import React from 'react';
5
- export const CreateFirstUserFields = ({ baseAuthFieldMap, userSlug })=>{
13
+ export const CreateFirstUserClient = ({ initialState, userSlug })=>{
6
14
  const { getFieldMap } = useComponentMap();
15
+ const { routes: { admin, api: apiRoute }, serverURL } = useConfig();
16
+ const { t } = useTranslation();
7
17
  const fieldMap = getFieldMap({
8
18
  collectionSlug: userSlug
9
19
  });
10
- return /*#__PURE__*/ React.createElement(RenderFields, {
11
- fieldMap: [
12
- ...baseAuthFieldMap || [],
13
- ...fieldMap || []
20
+ const onChange = React.useCallback(async ({ formState: prevFormState })=>{
21
+ return getFormState({
22
+ apiRoute,
23
+ body: {
24
+ collectionSlug: userSlug,
25
+ formState: prevFormState,
26
+ operation: 'create',
27
+ schemaPath: userSlug
28
+ },
29
+ serverURL
30
+ });
31
+ }, [
32
+ apiRoute,
33
+ userSlug,
34
+ serverURL
35
+ ]);
36
+ return /*#__PURE__*/ React.createElement(Form, {
37
+ action: `${serverURL}${apiRoute}/${userSlug}/first-register`,
38
+ initialState: initialState,
39
+ method: "POST",
40
+ onChange: [
41
+ onChange
14
42
  ],
43
+ redirect: admin,
44
+ validationOperation: "create"
45
+ }, /*#__PURE__*/ React.createElement(Email, {
46
+ autoComplete: "email",
47
+ label: t('general:email'),
48
+ name: "email",
49
+ required: true
50
+ }), /*#__PURE__*/ React.createElement(Password, {
51
+ autoComplete: "off",
52
+ label: t('authentication:newPassword'),
53
+ name: "password",
54
+ required: true
55
+ }), /*#__PURE__*/ React.createElement(ConfirmPassword, null), /*#__PURE__*/ React.createElement(RenderFields, {
56
+ fieldMap: fieldMap,
15
57
  operation: "create",
16
58
  path: "",
17
59
  readOnly: false,
18
60
  schemaPath: userSlug
19
- });
61
+ }), /*#__PURE__*/ React.createElement(FormSubmit, null, t('general:create')));
20
62
  };
21
63
 
22
64
  //# sourceMappingURL=index.client.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/views/CreateFirstUser/index.client.tsx"],"sourcesContent":["'use client'\nimport type { FieldMap } from '@payloadcms/ui/utilities/buildComponentMap'\n\nimport { RenderFields } from '@payloadcms/ui/forms/RenderFields'\nimport { useComponentMap } from '@payloadcms/ui/providers/ComponentMap'\nimport React from 'react'\n\nexport const CreateFirstUserFields: React.FC<{\n baseAuthFieldMap: FieldMap\n userSlug: string\n}> = ({ baseAuthFieldMap, userSlug }) => {\n const { getFieldMap } = useComponentMap()\n\n const fieldMap = getFieldMap({ collectionSlug: userSlug })\n\n return (\n <RenderFields\n fieldMap={[...(baseAuthFieldMap || []), ...(fieldMap || [])]}\n operation=\"create\"\n path=\"\"\n readOnly={false}\n schemaPath={userSlug}\n />\n )\n}\n"],"names":["RenderFields","useComponentMap","React","CreateFirstUserFields","baseAuthFieldMap","userSlug","getFieldMap","fieldMap","collectionSlug","operation","path","readOnly","schemaPath"],"rangeMappings":";;;;;;;;;;;;;;;;;;;","mappings":"AAAA;AAGA,SAASA,YAAY,QAAQ,oCAAmC;AAChE,SAASC,eAAe,QAAQ,wCAAuC;AACvE,OAAOC,WAAW,QAAO;AAEzB,OAAO,MAAMC,wBAGR,CAAC,EAAEC,gBAAgB,EAAEC,QAAQ,EAAE;IAClC,MAAM,EAAEC,WAAW,EAAE,GAAGL;IAExB,MAAMM,WAAWD,YAAY;QAAEE,gBAAgBH;IAAS;IAExD,qBACE,oBAACL;QACCO,UAAU;eAAKH,oBAAoB,EAAE;eAAOG,YAAY,EAAE;SAAE;QAC5DE,WAAU;QACVC,MAAK;QACLC,UAAU;QACVC,YAAYP;;AAGlB,EAAC"}
1
+ {"version":3,"sources":["../../../src/views/CreateFirstUser/index.client.tsx"],"sourcesContent":["'use client'\nimport type { FormProps } from '@payloadcms/ui/forms/Form'\nimport type { FormState } from 'payload/types'\n\nimport { ConfirmPassword } from '@payloadcms/ui/fields/ConfirmPassword'\nimport { Email } from '@payloadcms/ui/fields/Email'\nimport { Password } from '@payloadcms/ui/fields/Password'\nimport { Form } from '@payloadcms/ui/forms/Form'\nimport { RenderFields } from '@payloadcms/ui/forms/RenderFields'\nimport { FormSubmit } from '@payloadcms/ui/forms/Submit'\nimport { useComponentMap } from '@payloadcms/ui/providers/ComponentMap'\nimport { useConfig } from '@payloadcms/ui/providers/Config'\nimport { useTranslation } from '@payloadcms/ui/providers/Translation'\nimport { getFormState } from '@payloadcms/ui/utilities/getFormState'\nimport React from 'react'\n\nexport const CreateFirstUserClient: React.FC<{\n initialState: FormState\n userSlug: string\n}> = ({ initialState, userSlug }) => {\n const { getFieldMap } = useComponentMap()\n\n const {\n routes: { admin, api: apiRoute },\n serverURL,\n } = useConfig()\n\n const { t } = useTranslation()\n\n const fieldMap = getFieldMap({ collectionSlug: userSlug })\n\n const onChange: FormProps['onChange'][0] = React.useCallback(\n async ({ formState: prevFormState }) => {\n return getFormState({\n apiRoute,\n body: {\n collectionSlug: userSlug,\n formState: prevFormState,\n operation: 'create',\n schemaPath: userSlug,\n },\n serverURL,\n })\n },\n [apiRoute, userSlug, serverURL],\n )\n\n return (\n <Form\n action={`${serverURL}${apiRoute}/${userSlug}/first-register`}\n initialState={initialState}\n method=\"POST\"\n onChange={[onChange]}\n redirect={admin}\n validationOperation=\"create\"\n >\n <Email autoComplete=\"email\" label={t('general:email')} name=\"email\" required />\n <Password\n autoComplete=\"off\"\n label={t('authentication:newPassword')}\n name=\"password\"\n required\n />\n <ConfirmPassword />\n <RenderFields\n fieldMap={fieldMap}\n operation=\"create\"\n path=\"\"\n readOnly={false}\n schemaPath={userSlug}\n />\n <FormSubmit>{t('general:create')}</FormSubmit>\n </Form>\n )\n}\n"],"names":["ConfirmPassword","Email","Password","Form","RenderFields","FormSubmit","useComponentMap","useConfig","useTranslation","getFormState","React","CreateFirstUserClient","initialState","userSlug","getFieldMap","routes","admin","api","apiRoute","serverURL","t","fieldMap","collectionSlug","onChange","useCallback","formState","prevFormState","body","operation","schemaPath","action","method","redirect","validationOperation","autoComplete","label","name","required","path","readOnly"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA;AAIA,SAASA,eAAe,QAAQ,wCAAuC;AACvE,SAASC,KAAK,QAAQ,8BAA6B;AACnD,SAASC,QAAQ,QAAQ,iCAAgC;AACzD,SAASC,IAAI,QAAQ,4BAA2B;AAChD,SAASC,YAAY,QAAQ,oCAAmC;AAChE,SAASC,UAAU,QAAQ,8BAA6B;AACxD,SAASC,eAAe,QAAQ,wCAAuC;AACvE,SAASC,SAAS,QAAQ,kCAAiC;AAC3D,SAASC,cAAc,QAAQ,uCAAsC;AACrE,SAASC,YAAY,QAAQ,wCAAuC;AACpE,OAAOC,WAAW,QAAO;AAEzB,OAAO,MAAMC,wBAGR,CAAC,EAAEC,YAAY,EAAEC,QAAQ,EAAE;IAC9B,MAAM,EAAEC,WAAW,EAAE,GAAGR;IAExB,MAAM,EACJS,QAAQ,EAAEC,KAAK,EAAEC,KAAKC,QAAQ,EAAE,EAChCC,SAAS,EACV,GAAGZ;IAEJ,MAAM,EAAEa,CAAC,EAAE,GAAGZ;IAEd,MAAMa,WAAWP,YAAY;QAAEQ,gBAAgBT;IAAS;IAExD,MAAMU,WAAqCb,MAAMc,WAAW,CAC1D,OAAO,EAAEC,WAAWC,aAAa,EAAE;QACjC,OAAOjB,aAAa;YAClBS;YACAS,MAAM;gBACJL,gBAAgBT;gBAChBY,WAAWC;gBACXE,WAAW;gBACXC,YAAYhB;YACd;YACAM;QACF;IACF,GACA;QAACD;QAAUL;QAAUM;KAAU;IAGjC,qBACE,oBAAChB;QACC2B,QAAQ,CAAC,EAAEX,UAAU,EAAED,SAAS,CAAC,EAAEL,SAAS,eAAe,CAAC;QAC5DD,cAAcA;QACdmB,QAAO;QACPR,UAAU;YAACA;SAAS;QACpBS,UAAUhB;QACViB,qBAAoB;qBAEpB,oBAAChC;QAAMiC,cAAa;QAAQC,OAAOf,EAAE;QAAkBgB,MAAK;QAAQC,UAAAA;sBACpE,oBAACnC;QACCgC,cAAa;QACbC,OAAOf,EAAE;QACTgB,MAAK;QACLC,UAAAA;sBAEF,oBAACrC,sCACD,oBAACI;QACCiB,UAAUA;QACVO,WAAU;QACVU,MAAK;QACLC,UAAU;QACVV,YAAYhB;sBAEd,oBAACR,kBAAYe,EAAE;AAGrB,EAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/CreateFirstUser/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAOnD,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,OAAO,cAAc,CAAA;AAErB,OAAO,EAAE,+BAA+B,EAAE,MAAM,WAAW,CAAA;AAE3D,eAAO,MAAM,mBAAmB,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CAkGxD,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/CreateFirstUser/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAS,MAAM,eAAe,CAAA;AAG1D,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,OAAO,cAAc,CAAA;AAErB,OAAO,EAAE,+BAA+B,EAAE,MAAM,WAAW,CAAA;AAE3D,eAAO,MAAM,mBAAmB,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CA+CxD,CAAA"}
@@ -1,14 +1,10 @@
1
- import { Form } from '@payloadcms/ui/forms/Form';
2
- import { FormSubmit } from '@payloadcms/ui/forms/Submit';
3
1
  import { buildStateFromSchema } from '@payloadcms/ui/forms/buildStateFromSchema';
4
- import { WithServerSideProps as WithServerSidePropsGeneric } from '@payloadcms/ui/providers/ComponentMap';
5
- import { mapFields } from '@payloadcms/ui/utilities/buildComponentMap';
6
2
  import React from 'react';
7
- import { CreateFirstUserFields } from './index.client.js';
3
+ import { CreateFirstUserClient } from './index.client.js';
8
4
  export { generateCreateFirstUserMetadata } from './meta.js';
9
5
  export const CreateFirstUserView = async ({ initPageResult })=>{
10
- const { req, req: { i18n, payload, payload: { config, config: { admin: { user: userSlug }, routes: { admin: adminRoute, api: apiRoute }, serverURL } } } } = initPageResult;
11
- const baseAuthFields = [
6
+ const { req, req: { payload: { config: { admin: { user: userSlug } } } } } = initPageResult;
7
+ const fields = [
12
8
  {
13
9
  name: 'email',
14
10
  type: 'email',
@@ -28,59 +24,20 @@ export const CreateFirstUserView = async ({ initPageResult })=>{
28
24
  required: true
29
25
  }
30
26
  ];
31
- const ssrAuthFields = [
32
- ...baseAuthFields
33
- ];
34
- const WithServerSideProps = ({ Component, ...rest })=>{
35
- return /*#__PURE__*/ React.createElement(WithServerSidePropsGeneric, {
36
- Component: Component,
37
- payload: payload,
38
- ...rest
39
- });
40
- };
41
- const userFieldSchema = config.collections.find((c)=>c.slug === userSlug);
42
- ssrAuthFields.push(...userFieldSchema.fields);
43
27
  const formState = await buildStateFromSchema({
44
- fieldSchema: ssrAuthFields,
28
+ fieldSchema: fields,
45
29
  operation: 'create',
46
30
  preferences: {
47
- fields: undefined
31
+ fields: {}
48
32
  },
49
33
  req
50
34
  });
51
- const baseAuthFieldMap = mapFields({
52
- WithServerSideProps,
53
- config,
54
- fieldSchema: baseAuthFields,
55
- i18n
56
- }).map((field)=>{
57
- // Transform field types for the password and confirm-password fields
58
- if (field.name === 'password') {
59
- const type = 'password';
60
- return {
61
- ...field,
62
- type
63
- };
64
- }
65
- if (field.name === 'confirm-password') {
66
- const type = 'confirmPassword';
67
- return {
68
- ...field,
69
- type
70
- };
71
- }
72
- return field;
73
- });
74
- return /*#__PURE__*/ React.createElement(React.Fragment, null, /*#__PURE__*/ React.createElement("h1", null, req.t('general:welcome')), /*#__PURE__*/ React.createElement("p", null, req.t('authentication:beginCreateFirstUser')), /*#__PURE__*/ React.createElement(Form, {
75
- action: `${serverURL}${apiRoute}/${userSlug}/first-register`,
35
+ return /*#__PURE__*/ React.createElement("div", {
36
+ className: "create-first-user"
37
+ }, /*#__PURE__*/ React.createElement("h1", null, req.t('general:welcome')), /*#__PURE__*/ React.createElement("p", null, req.t('authentication:beginCreateFirstUser')), /*#__PURE__*/ React.createElement(CreateFirstUserClient, {
76
38
  initialState: formState,
77
- method: "POST",
78
- redirect: adminRoute,
79
- validationOperation: "create"
80
- }, /*#__PURE__*/ React.createElement(CreateFirstUserFields, {
81
- baseAuthFieldMap: baseAuthFieldMap,
82
39
  userSlug: userSlug
83
- }), /*#__PURE__*/ React.createElement(FormSubmit, null, req.t('general:create'))));
40
+ }));
84
41
  };
85
42
 
86
43
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/views/CreateFirstUser/index.tsx"],"sourcesContent":["import type { FieldTypes } from 'payload/config'\nimport type { Field, WithServerSideProps as WithServerSidePropsType } from 'payload/types'\nimport type { AdminViewProps } from 'payload/types'\n\nimport { Form } from '@payloadcms/ui/forms/Form'\nimport { FormSubmit } from '@payloadcms/ui/forms/Submit'\nimport { buildStateFromSchema } from '@payloadcms/ui/forms/buildStateFromSchema'\nimport { WithServerSideProps as WithServerSidePropsGeneric } from '@payloadcms/ui/providers/ComponentMap'\nimport { mapFields } from '@payloadcms/ui/utilities/buildComponentMap'\nimport React from 'react'\n\nimport { CreateFirstUserFields } from './index.client.js'\nimport './index.scss'\n\nexport { generateCreateFirstUserMetadata } from './meta.js'\n\nexport const CreateFirstUserView: React.FC<AdminViewProps> = async ({ initPageResult }) => {\n const {\n req,\n req: {\n i18n,\n payload,\n payload: {\n config,\n config: {\n admin: { user: userSlug },\n routes: { admin: adminRoute, api: apiRoute },\n serverURL,\n },\n },\n },\n } = initPageResult\n\n const baseAuthFields: Field[] = [\n {\n name: 'email',\n type: 'email',\n label: req.t('general:emailAddress'),\n required: true,\n },\n {\n name: 'password',\n type: 'text',\n label: req.t('general:password'),\n required: true,\n },\n {\n name: 'confirm-password',\n type: 'text',\n label: req.t('authentication:confirmPassword'),\n required: true,\n },\n ]\n\n const ssrAuthFields = [...baseAuthFields]\n\n const WithServerSideProps: WithServerSidePropsType = ({ Component, ...rest }) => {\n return <WithServerSidePropsGeneric Component={Component} payload={payload} {...rest} />\n }\n\n const userFieldSchema = config.collections.find((c) => c.slug === userSlug)\n ssrAuthFields.push(...userFieldSchema.fields)\n\n const formState = await buildStateFromSchema({\n fieldSchema: ssrAuthFields,\n operation: 'create',\n preferences: {\n fields: undefined\n },\n req,\n })\n\n const baseAuthFieldMap = mapFields({\n WithServerSideProps,\n config,\n fieldSchema: baseAuthFields,\n i18n,\n }).map((field) => {\n // Transform field types for the password and confirm-password fields\n if (field.name === 'password') {\n const type: keyof FieldTypes = 'password'\n\n return {\n ...field,\n type,\n }\n }\n if (field.name === 'confirm-password') {\n const type: keyof FieldTypes = 'confirmPassword'\n\n return {\n ...field,\n type,\n }\n }\n return field\n })\n\n return (\n <React.Fragment>\n <h1>{req.t('general:welcome')}</h1>\n <p>{req.t('authentication:beginCreateFirstUser')}</p>\n <Form\n action={`${serverURL}${apiRoute}/${userSlug}/first-register`}\n initialState={formState}\n method=\"POST\"\n redirect={adminRoute}\n validationOperation=\"create\"\n >\n <CreateFirstUserFields baseAuthFieldMap={baseAuthFieldMap} userSlug={userSlug} />\n <FormSubmit>{req.t('general:create')}</FormSubmit>\n </Form>\n </React.Fragment>\n )\n}\n"],"names":["Form","FormSubmit","buildStateFromSchema","WithServerSideProps","WithServerSidePropsGeneric","mapFields","React","CreateFirstUserFields","generateCreateFirstUserMetadata","CreateFirstUserView","initPageResult","req","i18n","payload","config","admin","user","userSlug","routes","adminRoute","api","apiRoute","serverURL","baseAuthFields","name","type","label","t","required","ssrAuthFields","Component","rest","userFieldSchema","collections","find","c","slug","push","fields","formState","fieldSchema","operation","preferences","undefined","baseAuthFieldMap","map","field","Fragment","h1","p","action","initialState","method","redirect","validationOperation"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAIA,SAASA,IAAI,QAAQ,4BAA2B;AAChD,SAASC,UAAU,QAAQ,8BAA6B;AACxD,SAASC,oBAAoB,QAAQ,4CAA2C;AAChF,SAASC,uBAAuBC,0BAA0B,QAAQ,wCAAuC;AACzG,SAASC,SAAS,QAAQ,6CAA4C;AACtE,OAAOC,WAAW,QAAO;AAEzB,SAASC,qBAAqB,QAAQ,oBAAmB;AAGzD,SAASC,+BAA+B,QAAQ,YAAW;AAE3D,OAAO,MAAMC,sBAAgD,OAAO,EAAEC,cAAc,EAAE;IACpF,MAAM,EACJC,GAAG,EACHA,KAAK,EACHC,IAAI,EACJC,OAAO,EACPA,SAAS,EACPC,MAAM,EACNA,QAAQ,EACNC,OAAO,EAAEC,MAAMC,QAAQ,EAAE,EACzBC,QAAQ,EAAEH,OAAOI,UAAU,EAAEC,KAAKC,QAAQ,EAAE,EAC5CC,SAAS,EACV,EACF,EACF,EACF,GAAGZ;IAEJ,MAAMa,iBAA0B;QAC9B;YACEC,MAAM;YACNC,MAAM;YACNC,OAAOf,IAAIgB,CAAC,CAAC;YACbC,UAAU;QACZ;QACA;YACEJ,MAAM;YACNC,MAAM;YACNC,OAAOf,IAAIgB,CAAC,CAAC;YACbC,UAAU;QACZ;QACA;YACEJ,MAAM;YACNC,MAAM;YACNC,OAAOf,IAAIgB,CAAC,CAAC;YACbC,UAAU;QACZ;KACD;IAED,MAAMC,gBAAgB;WAAIN;KAAe;IAEzC,MAAMpB,sBAA+C,CAAC,EAAE2B,SAAS,EAAE,GAAGC,MAAM;QAC1E,qBAAO,oBAAC3B;YAA2B0B,WAAWA;YAAWjB,SAASA;YAAU,GAAGkB,IAAI;;IACrF;IAEA,MAAMC,kBAAkBlB,OAAOmB,WAAW,CAACC,IAAI,CAAC,CAACC,IAAMA,EAAEC,IAAI,KAAKnB;IAClEY,cAAcQ,IAAI,IAAIL,gBAAgBM,MAAM;IAE5C,MAAMC,YAAY,MAAMrC,qBAAqB;QAC3CsC,aAAaX;QACbY,WAAW;QACXC,aAAa;YACXJ,QAAQK;QACV;QACAhC;IACF;IAEA,MAAMiC,mBAAmBvC,UAAU;QACjCF;QACAW;QACA0B,aAAajB;QACbX;IACF,GAAGiC,GAAG,CAAC,CAACC;QACN,qEAAqE;QACrE,IAAIA,MAAMtB,IAAI,KAAK,YAAY;YAC7B,MAAMC,OAAyB;YAE/B,OAAO;gBACL,GAAGqB,KAAK;gBACRrB;YACF;QACF;QACA,IAAIqB,MAAMtB,IAAI,KAAK,oBAAoB;YACrC,MAAMC,OAAyB;YAE/B,OAAO;gBACL,GAAGqB,KAAK;gBACRrB;YACF;QACF;QACA,OAAOqB;IACT;IAEA,qBACE,oBAACxC,MAAMyC,QAAQ,sBACb,oBAACC,YAAIrC,IAAIgB,CAAC,CAAC,mCACX,oBAACsB,WAAGtC,IAAIgB,CAAC,CAAC,uDACV,oBAAC3B;QACCkD,QAAQ,CAAC,EAAE5B,UAAU,EAAED,SAAS,CAAC,EAAEJ,SAAS,eAAe,CAAC;QAC5DkC,cAAcZ;QACda,QAAO;QACPC,UAAUlC;QACVmC,qBAAoB;qBAEpB,oBAAC/C;QAAsBqC,kBAAkBA;QAAkB3B,UAAUA;sBACrE,oBAAChB,kBAAYU,IAAIgB,CAAC,CAAC;AAI3B,EAAC"}
1
+ {"version":3,"sources":["../../../src/views/CreateFirstUser/index.tsx"],"sourcesContent":["import type { AdminViewProps, Field } from 'payload/types'\n\nimport { buildStateFromSchema } from '@payloadcms/ui/forms/buildStateFromSchema'\nimport React from 'react'\n\nimport { CreateFirstUserClient } from './index.client.js'\nimport './index.scss'\n\nexport { generateCreateFirstUserMetadata } from './meta.js'\n\nexport const CreateFirstUserView: React.FC<AdminViewProps> = async ({ initPageResult }) => {\n const {\n req,\n req: {\n payload: {\n config: {\n admin: { user: userSlug },\n },\n },\n },\n } = initPageResult\n\n const fields: Field[] = [\n {\n name: 'email',\n type: 'email',\n label: req.t('general:emailAddress'),\n required: true,\n },\n {\n name: 'password',\n type: 'text',\n label: req.t('general:password'),\n required: true,\n },\n {\n name: 'confirm-password',\n type: 'text',\n label: req.t('authentication:confirmPassword'),\n required: true,\n },\n ]\n\n const formState = await buildStateFromSchema({\n fieldSchema: fields,\n operation: 'create',\n preferences: { fields: {} },\n req,\n })\n\n return (\n <div className=\"create-first-user\">\n <h1>{req.t('general:welcome')}</h1>\n <p>{req.t('authentication:beginCreateFirstUser')}</p>\n <CreateFirstUserClient initialState={formState} userSlug={userSlug} />\n </div>\n )\n}\n"],"names":["buildStateFromSchema","React","CreateFirstUserClient","generateCreateFirstUserMetadata","CreateFirstUserView","initPageResult","req","payload","config","admin","user","userSlug","fields","name","type","label","t","required","formState","fieldSchema","operation","preferences","div","className","h1","p","initialState"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAEA,SAASA,oBAAoB,QAAQ,4CAA2C;AAChF,OAAOC,WAAW,QAAO;AAEzB,SAASC,qBAAqB,QAAQ,oBAAmB;AAGzD,SAASC,+BAA+B,QAAQ,YAAW;AAE3D,OAAO,MAAMC,sBAAgD,OAAO,EAAEC,cAAc,EAAE;IACpF,MAAM,EACJC,GAAG,EACHA,KAAK,EACHC,SAAS,EACPC,QAAQ,EACNC,OAAO,EAAEC,MAAMC,QAAQ,EAAE,EAC1B,EACF,EACF,EACF,GAAGN;IAEJ,MAAMO,SAAkB;QACtB;YACEC,MAAM;YACNC,MAAM;YACNC,OAAOT,IAAIU,CAAC,CAAC;YACbC,UAAU;QACZ;QACA;YACEJ,MAAM;YACNC,MAAM;YACNC,OAAOT,IAAIU,CAAC,CAAC;YACbC,UAAU;QACZ;QACA;YACEJ,MAAM;YACNC,MAAM;YACNC,OAAOT,IAAIU,CAAC,CAAC;YACbC,UAAU;QACZ;KACD;IAED,MAAMC,YAAY,MAAMlB,qBAAqB;QAC3CmB,aAAaP;QACbQ,WAAW;QACXC,aAAa;YAAET,QAAQ,CAAC;QAAE;QAC1BN;IACF;IAEA,qBACE,oBAACgB;QAAIC,WAAU;qBACb,oBAACC,YAAIlB,IAAIU,CAAC,CAAC,mCACX,oBAACS,WAAGnB,IAAIU,CAAC,CAAC,uDACV,oBAACd;QAAsBwB,cAAcR;QAAWP,UAAUA;;AAGhE,EAAC"}
@@ -1,15 +1,5 @@
1
1
  .create-first-user {
2
- display: flex;
3
- align-items: center;
4
- flex-wrap: wrap;
5
- min-height: 100vh;
6
-
7
- &__wrap {
8
- width: 100%;
9
- margin: 0 auto var(--base);
10
-
11
- svg {
12
- width: 100%;
13
- }
2
+ > form > .field-type {
3
+ margin-bottom: var(--base);
14
4
  }
15
5
  }
@@ -1,5 +1,6 @@
1
1
  import React from 'react';
2
2
  export declare const APIKey: React.FC<{
3
+ enabled: boolean;
3
4
  readOnly?: boolean;
4
5
  }>;
5
6
  //# sourceMappingURL=APIKey.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"APIKey.d.ts","sourceRoot":"","sources":["../../../../../src/views/Edit/Default/Auth/APIKey.tsx"],"names":[],"mappings":"AAWA,OAAO,KAAuC,MAAM,OAAO,CAAA;AAO3D,eAAO,MAAM,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAE,CAyFnD,CAAA"}
1
+ {"version":3,"file":"APIKey.d.ts","sourceRoot":"","sources":["../../../../../src/views/Edit/Default/Auth/APIKey.tsx"],"names":[],"mappings":"AAWA,OAAO,KAAuC,MAAM,OAAO,CAAA;AAO3D,eAAO,MAAM,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAE,CA+FrE,CAAA"}
@@ -12,8 +12,8 @@ import { v4 as uuidv4 } from 'uuid';
12
12
  const path = 'apiKey';
13
13
  const baseClass = 'api-key';
14
14
  const fieldBaseClass = 'field-type';
15
- export const APIKey = ({ readOnly })=>{
16
- const [initialAPIKey, setInitialAPIKey] = useState(null);
15
+ export const APIKey = ({ enabled, readOnly })=>{
16
+ const [initialAPIKey] = useState(uuidv4());
17
17
  const [highlightedField, setHighlightedField] = useState(false);
18
18
  const { t } = useTranslation();
19
19
  const config = useConfig();
@@ -57,14 +57,15 @@ export const APIKey = ({ readOnly })=>{
57
57
  };
58
58
  const { setValue, value } = fieldType;
59
59
  useEffect(()=>{
60
- setInitialAPIKey(uuidv4());
61
- }, []);
62
- useEffect(()=>{
63
- if (!apiKeyValue) {
60
+ if (!apiKeyValue && enabled) {
64
61
  setValue(initialAPIKey);
65
62
  }
63
+ if (!enabled) {
64
+ setValue(null);
65
+ }
66
66
  }, [
67
67
  apiKeyValue,
68
+ enabled,
68
69
  setValue,
69
70
  initialAPIKey
70
71
  ]);
@@ -77,6 +78,9 @@ export const APIKey = ({ readOnly })=>{
77
78
  }, [
78
79
  highlightedField
79
80
  ]);
81
+ if (!enabled) {
82
+ return null;
83
+ }
80
84
  return /*#__PURE__*/ React.createElement(React.Fragment, null, /*#__PURE__*/ React.createElement("div", {
81
85
  className: [
82
86
  fieldBaseClass,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/views/Edit/Default/Auth/APIKey.tsx"],"sourcesContent":["'use client'\nimport type { PayloadRequest } from 'payload/types'\n\nimport { CopyToClipboard } from '@payloadcms/ui/elements/CopyToClipboard'\nimport { GenerateConfirmation } from '@payloadcms/ui/elements/GenerateConfirmation'\nimport { FieldLabel } from '@payloadcms/ui/forms/FieldLabel'\nimport { useFormFields } from '@payloadcms/ui/forms/Form'\nimport { useField } from '@payloadcms/ui/forms/useField'\nimport { useConfig } from '@payloadcms/ui/providers/Config'\nimport { useTranslation } from '@payloadcms/ui/providers/Translation'\nimport { text } from 'payload/fields/validations'\nimport React, { useEffect, useMemo, useState } from 'react'\nimport { v4 as uuidv4 } from 'uuid'\n\nconst path = 'apiKey'\nconst baseClass = 'api-key'\nconst fieldBaseClass = 'field-type'\n\nexport const APIKey: React.FC<{ readOnly?: boolean }> = ({ readOnly }) => {\n const [initialAPIKey, setInitialAPIKey] = useState(null)\n const [highlightedField, setHighlightedField] = useState(false)\n const { t } = useTranslation()\n const config = useConfig()\n\n const apiKey = useFormFields(([fields]) => fields[path])\n\n const validate = (val) =>\n text(val, {\n name: 'apiKey',\n type: 'text',\n data: {},\n maxLength: 48,\n minLength: 24,\n preferences: { fields: {} },\n req: {\n payload: {\n config,\n },\n t,\n } as PayloadRequest,\n siblingData: {},\n })\n\n const apiKeyValue = apiKey?.value\n\n const APIKeyLabel = useMemo(\n () => (\n <div className={`${baseClass}__label`}>\n <span>API Key</span>\n <CopyToClipboard value={apiKeyValue as string} />\n </div>\n ),\n [apiKeyValue],\n )\n\n const fieldType = useField({\n path: 'apiKey',\n validate,\n })\n\n const highlightField = () => {\n if (highlightedField) {\n setHighlightedField(false)\n }\n setTimeout(() => {\n setHighlightedField(true)\n }, 1)\n }\n\n const { setValue, value } = fieldType\n\n useEffect(() => {\n setInitialAPIKey(uuidv4())\n }, [])\n\n useEffect(() => {\n if (!apiKeyValue) {\n setValue(initialAPIKey)\n }\n }, [apiKeyValue, setValue, initialAPIKey])\n\n useEffect(() => {\n if (highlightedField) {\n setTimeout(() => {\n setHighlightedField(false)\n }, 10000)\n }\n }, [highlightedField])\n\n return (\n <React.Fragment>\n <div className={[fieldBaseClass, 'api-key', 'read-only'].filter(Boolean).join(' ')}>\n <FieldLabel CustomLabel={APIKeyLabel} htmlFor={path} />\n <input\n className={highlightedField ? 'highlight' : undefined}\n disabled\n id=\"apiKey\"\n name=\"apiKey\"\n type=\"text\"\n value={(value as string) || ''}\n />\n </div>\n {!readOnly && (\n <GenerateConfirmation highlightField={highlightField} setKey={() => setValue(uuidv4())} />\n )}\n </React.Fragment>\n )\n}\n"],"names":["CopyToClipboard","GenerateConfirmation","FieldLabel","useFormFields","useField","useConfig","useTranslation","text","React","useEffect","useMemo","useState","v4","uuidv4","path","baseClass","fieldBaseClass","APIKey","readOnly","initialAPIKey","setInitialAPIKey","highlightedField","setHighlightedField","t","config","apiKey","fields","validate","val","name","type","data","maxLength","minLength","preferences","req","payload","siblingData","apiKeyValue","value","APIKeyLabel","div","className","span","fieldType","highlightField","setTimeout","setValue","Fragment","filter","Boolean","join","CustomLabel","htmlFor","input","undefined","disabled","id","setKey"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA;AAGA,SAASA,eAAe,QAAQ,0CAAyC;AACzE,SAASC,oBAAoB,QAAQ,+CAA8C;AACnF,SAASC,UAAU,QAAQ,kCAAiC;AAC5D,SAASC,aAAa,QAAQ,4BAA2B;AACzD,SAASC,QAAQ,QAAQ,gCAA+B;AACxD,SAASC,SAAS,QAAQ,kCAAiC;AAC3D,SAASC,cAAc,QAAQ,uCAAsC;AACrE,SAASC,IAAI,QAAQ,6BAA4B;AACjD,OAAOC,SAASC,SAAS,EAAEC,OAAO,EAAEC,QAAQ,QAAQ,QAAO;AAC3D,SAASC,MAAMC,MAAM,QAAQ,OAAM;AAEnC,MAAMC,OAAO;AACb,MAAMC,YAAY;AAClB,MAAMC,iBAAiB;AAEvB,OAAO,MAAMC,SAA2C,CAAC,EAAEC,QAAQ,EAAE;IACnE,MAAM,CAACC,eAAeC,iBAAiB,GAAGT,SAAS;IACnD,MAAM,CAACU,kBAAkBC,oBAAoB,GAAGX,SAAS;IACzD,MAAM,EAAEY,CAAC,EAAE,GAAGjB;IACd,MAAMkB,SAASnB;IAEf,MAAMoB,SAAStB,cAAc,CAAC,CAACuB,OAAO,GAAKA,MAAM,CAACZ,KAAK;IAEvD,MAAMa,WAAW,CAACC,MAChBrB,KAAKqB,KAAK;YACRC,MAAM;YACNC,MAAM;YACNC,MAAM,CAAC;YACPC,WAAW;YACXC,WAAW;YACXC,aAAa;gBAAER,QAAQ,CAAC;YAAE;YAC1BS,KAAK;gBACHC,SAAS;oBACPZ;gBACF;gBACAD;YACF;YACAc,aAAa,CAAC;QAChB;IAEF,MAAMC,cAAcb,QAAQc;IAE5B,MAAMC,cAAc9B,QAClB,kBACE,oBAAC+B;YAAIC,WAAW,CAAC,EAAE3B,UAAU,OAAO,CAAC;yBACnC,oBAAC4B,cAAK,0BACN,oBAAC3C;YAAgBuC,OAAOD;aAG5B;QAACA;KAAY;IAGf,MAAMM,YAAYxC,SAAS;QACzBU,MAAM;QACNa;IACF;IAEA,MAAMkB,iBAAiB;QACrB,IAAIxB,kBAAkB;YACpBC,oBAAoB;QACtB;QACAwB,WAAW;YACTxB,oBAAoB;QACtB,GAAG;IACL;IAEA,MAAM,EAAEyB,QAAQ,EAAER,KAAK,EAAE,GAAGK;IAE5BnC,UAAU;QACRW,iBAAiBP;IACnB,GAAG,EAAE;IAELJ,UAAU;QACR,IAAI,CAAC6B,aAAa;YAChBS,SAAS5B;QACX;IACF,GAAG;QAACmB;QAAaS;QAAU5B;KAAc;IAEzCV,UAAU;QACR,IAAIY,kBAAkB;YACpByB,WAAW;gBACTxB,oBAAoB;YACtB,GAAG;QACL;IACF,GAAG;QAACD;KAAiB;IAErB,qBACE,oBAACb,MAAMwC,QAAQ,sBACb,oBAACP;QAAIC,WAAW;YAAC1B;YAAgB;YAAW;SAAY,CAACiC,MAAM,CAACC,SAASC,IAAI,CAAC;qBAC5E,oBAACjD;QAAWkD,aAAaZ;QAAaa,SAASvC;sBAC/C,oBAACwC;QACCZ,WAAWrB,mBAAmB,cAAckC;QAC5CC,UAAAA;QACAC,IAAG;QACH5B,MAAK;QACLC,MAAK;QACLS,OAAO,AAACA,SAAoB;SAG/B,CAACrB,0BACA,oBAACjB;QAAqB4C,gBAAgBA;QAAgBa,QAAQ,IAAMX,SAASlC;;AAIrF,EAAC"}
1
+ {"version":3,"sources":["../../../../../src/views/Edit/Default/Auth/APIKey.tsx"],"sourcesContent":["'use client'\nimport type { PayloadRequestWithData } from 'payload/types'\n\nimport { CopyToClipboard } from '@payloadcms/ui/elements/CopyToClipboard'\nimport { GenerateConfirmation } from '@payloadcms/ui/elements/GenerateConfirmation'\nimport { FieldLabel } from '@payloadcms/ui/forms/FieldLabel'\nimport { useFormFields } from '@payloadcms/ui/forms/Form'\nimport { useField } from '@payloadcms/ui/forms/useField'\nimport { useConfig } from '@payloadcms/ui/providers/Config'\nimport { useTranslation } from '@payloadcms/ui/providers/Translation'\nimport { text } from 'payload/fields/validations'\nimport React, { useEffect, useMemo, useState } from 'react'\nimport { v4 as uuidv4 } from 'uuid'\n\nconst path = 'apiKey'\nconst baseClass = 'api-key'\nconst fieldBaseClass = 'field-type'\n\nexport const APIKey: React.FC<{ enabled: boolean; readOnly?: boolean }> = ({\n enabled,\n readOnly,\n}) => {\n const [initialAPIKey] = useState(uuidv4())\n const [highlightedField, setHighlightedField] = useState(false)\n const { t } = useTranslation()\n const config = useConfig()\n\n const apiKey = useFormFields(([fields]) => fields[path])\n\n const validate = (val) =>\n text(val, {\n name: 'apiKey',\n type: 'text',\n data: {},\n maxLength: 48,\n minLength: 24,\n preferences: { fields: {} },\n req: {\n payload: {\n config,\n },\n t,\n } as PayloadRequestWithData,\n siblingData: {},\n })\n\n const apiKeyValue = apiKey?.value\n\n const APIKeyLabel = useMemo(\n () => (\n <div className={`${baseClass}__label`}>\n <span>API Key</span>\n <CopyToClipboard value={apiKeyValue as string} />\n </div>\n ),\n [apiKeyValue],\n )\n\n const fieldType = useField({\n path: 'apiKey',\n validate,\n })\n\n const highlightField = () => {\n if (highlightedField) {\n setHighlightedField(false)\n }\n setTimeout(() => {\n setHighlightedField(true)\n }, 1)\n }\n\n const { setValue, value } = fieldType\n\n useEffect(() => {\n if (!apiKeyValue && enabled) {\n setValue(initialAPIKey)\n }\n if (!enabled) {\n setValue(null)\n }\n }, [apiKeyValue, enabled, setValue, initialAPIKey])\n\n useEffect(() => {\n if (highlightedField) {\n setTimeout(() => {\n setHighlightedField(false)\n }, 10000)\n }\n }, [highlightedField])\n\n if (!enabled) {\n return null\n }\n\n return (\n <React.Fragment>\n <div className={[fieldBaseClass, 'api-key', 'read-only'].filter(Boolean).join(' ')}>\n <FieldLabel CustomLabel={APIKeyLabel} htmlFor={path} />\n <input\n className={highlightedField ? 'highlight' : undefined}\n disabled\n id=\"apiKey\"\n name=\"apiKey\"\n type=\"text\"\n value={(value as string) || ''}\n />\n </div>\n {!readOnly && (\n <GenerateConfirmation highlightField={highlightField} setKey={() => setValue(uuidv4())} />\n )}\n </React.Fragment>\n )\n}\n"],"names":["CopyToClipboard","GenerateConfirmation","FieldLabel","useFormFields","useField","useConfig","useTranslation","text","React","useEffect","useMemo","useState","v4","uuidv4","path","baseClass","fieldBaseClass","APIKey","enabled","readOnly","initialAPIKey","highlightedField","setHighlightedField","t","config","apiKey","fields","validate","val","name","type","data","maxLength","minLength","preferences","req","payload","siblingData","apiKeyValue","value","APIKeyLabel","div","className","span","fieldType","highlightField","setTimeout","setValue","Fragment","filter","Boolean","join","CustomLabel","htmlFor","input","undefined","disabled","id","setKey"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA;AAGA,SAASA,eAAe,QAAQ,0CAAyC;AACzE,SAASC,oBAAoB,QAAQ,+CAA8C;AACnF,SAASC,UAAU,QAAQ,kCAAiC;AAC5D,SAASC,aAAa,QAAQ,4BAA2B;AACzD,SAASC,QAAQ,QAAQ,gCAA+B;AACxD,SAASC,SAAS,QAAQ,kCAAiC;AAC3D,SAASC,cAAc,QAAQ,uCAAsC;AACrE,SAASC,IAAI,QAAQ,6BAA4B;AACjD,OAAOC,SAASC,SAAS,EAAEC,OAAO,EAAEC,QAAQ,QAAQ,QAAO;AAC3D,SAASC,MAAMC,MAAM,QAAQ,OAAM;AAEnC,MAAMC,OAAO;AACb,MAAMC,YAAY;AAClB,MAAMC,iBAAiB;AAEvB,OAAO,MAAMC,SAA6D,CAAC,EACzEC,OAAO,EACPC,QAAQ,EACT;IACC,MAAM,CAACC,cAAc,GAAGT,SAASE;IACjC,MAAM,CAACQ,kBAAkBC,oBAAoB,GAAGX,SAAS;IACzD,MAAM,EAAEY,CAAC,EAAE,GAAGjB;IACd,MAAMkB,SAASnB;IAEf,MAAMoB,SAAStB,cAAc,CAAC,CAACuB,OAAO,GAAKA,MAAM,CAACZ,KAAK;IAEvD,MAAMa,WAAW,CAACC,MAChBrB,KAAKqB,KAAK;YACRC,MAAM;YACNC,MAAM;YACNC,MAAM,CAAC;YACPC,WAAW;YACXC,WAAW;YACXC,aAAa;gBAAER,QAAQ,CAAC;YAAE;YAC1BS,KAAK;gBACHC,SAAS;oBACPZ;gBACF;gBACAD;YACF;YACAc,aAAa,CAAC;QAChB;IAEF,MAAMC,cAAcb,QAAQc;IAE5B,MAAMC,cAAc9B,QAClB,kBACE,oBAAC+B;YAAIC,WAAW,CAAC,EAAE3B,UAAU,OAAO,CAAC;yBACnC,oBAAC4B,cAAK,0BACN,oBAAC3C;YAAgBuC,OAAOD;aAG5B;QAACA;KAAY;IAGf,MAAMM,YAAYxC,SAAS;QACzBU,MAAM;QACNa;IACF;IAEA,MAAMkB,iBAAiB;QACrB,IAAIxB,kBAAkB;YACpBC,oBAAoB;QACtB;QACAwB,WAAW;YACTxB,oBAAoB;QACtB,GAAG;IACL;IAEA,MAAM,EAAEyB,QAAQ,EAAER,KAAK,EAAE,GAAGK;IAE5BnC,UAAU;QACR,IAAI,CAAC6B,eAAepB,SAAS;YAC3B6B,SAAS3B;QACX;QACA,IAAI,CAACF,SAAS;YACZ6B,SAAS;QACX;IACF,GAAG;QAACT;QAAapB;QAAS6B;QAAU3B;KAAc;IAElDX,UAAU;QACR,IAAIY,kBAAkB;YACpByB,WAAW;gBACTxB,oBAAoB;YACtB,GAAG;QACL;IACF,GAAG;QAACD;KAAiB;IAErB,IAAI,CAACH,SAAS;QACZ,OAAO;IACT;IAEA,qBACE,oBAACV,MAAMwC,QAAQ,sBACb,oBAACP;QAAIC,WAAW;YAAC1B;YAAgB;YAAW;SAAY,CAACiC,MAAM,CAACC,SAASC,IAAI,CAAC;qBAC5E,oBAACjD;QAAWkD,aAAaZ;QAAaa,SAASvC;sBAC/C,oBAACwC;QACCZ,WAAWrB,mBAAmB,cAAckC;QAC5CC,UAAAA;QACAC,IAAG;QACH5B,MAAK;QACLC,MAAK;QACLS,OAAO,AAACA,SAAoB;SAG/B,CAACpB,0BACA,oBAAClB;QAAqB4C,gBAAgBA;QAAgBa,QAAQ,IAAMX,SAASlC;;AAIrF,EAAC"}
@@ -92,8 +92,7 @@ export const Auth = (props)=>{
92
92
  name: "password",
93
93
  required: true
94
94
  }), /*#__PURE__*/ React.createElement(ConfirmPassword, {
95
- disabled: readOnly,
96
- name: "confirm-password"
95
+ disabled: readOnly
97
96
  })), /*#__PURE__*/ React.createElement("div", {
98
97
  className: `${baseClass}__controls`
99
98
  }, changingPassword && !requirePassword && /*#__PURE__*/ React.createElement(Button, {
@@ -118,7 +117,8 @@ export const Auth = (props)=>{
118
117
  label: t('authentication:enableAPIKey'),
119
118
  name: "enableAPIKey",
120
119
  readOnly: readOnly
121
- }), enableAPIKey?.value && /*#__PURE__*/ React.createElement(APIKey, {
120
+ }), /*#__PURE__*/ React.createElement(APIKey, {
121
+ enabled: !!enableAPIKey?.value,
122
122
  readOnly: readOnly
123
123
  })), verify && /*#__PURE__*/ React.createElement(Checkbox, {
124
124
  label: t('authentication:verified'),