@payloadcms/ui 4.0.0-internal.3aa3d85 → 4.0.0-internal.43ccea7

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 (53) hide show
  1. package/dist/elements/APIKeyInput/index.css +4 -4
  2. package/dist/elements/AppHeader/index.css +2 -15
  3. package/dist/elements/AppHeader/index.d.ts.map +1 -1
  4. package/dist/elements/AppHeader/index.js +5 -9
  5. package/dist/elements/AppHeader/index.js.map +1 -1
  6. package/dist/elements/DocumentControls/index.css +0 -2
  7. package/dist/elements/ListControls/index.js +1 -1
  8. package/dist/elements/ListControls/index.js.map +1 -1
  9. package/dist/elements/Nav/index.css +0 -5
  10. package/dist/elements/Pagination/index.css +5 -0
  11. package/dist/elements/Pagination/index.d.ts.map +1 -1
  12. package/dist/elements/Pagination/index.js +21 -21
  13. package/dist/elements/Pagination/index.js.map +1 -1
  14. package/dist/elements/Search/ListSearchFilter/index.d.ts.map +1 -1
  15. package/dist/elements/Search/ListSearchFilter/index.js +1 -0
  16. package/dist/elements/Search/ListSearchFilter/index.js.map +1 -1
  17. package/dist/elements/Search/SearchInput/index.d.ts +2 -0
  18. package/dist/elements/Search/SearchInput/index.d.ts.map +1 -1
  19. package/dist/elements/Search/SearchInput/index.js +21 -18
  20. package/dist/elements/Search/SearchInput/index.js.map +1 -1
  21. package/dist/exports/client/index.d.ts +0 -1
  22. package/dist/exports/client/index.d.ts.map +1 -1
  23. package/dist/exports/client/index.js +1 -1
  24. package/dist/exports/client/index.js.map +3 -3
  25. package/dist/exports/shared/index.js +1 -1
  26. package/dist/exports/shared/index.js.map +2 -2
  27. package/dist/fields/Array/index.d.ts.map +1 -1
  28. package/dist/fields/Array/index.js +7 -4
  29. package/dist/fields/Array/index.js.map +1 -1
  30. package/dist/fields/Blocks/index.d.ts.map +1 -1
  31. package/dist/fields/Blocks/index.js +6 -3
  32. package/dist/fields/Blocks/index.js.map +1 -1
  33. package/dist/fields/Password/types.d.ts +3 -3
  34. package/dist/fields/Password/types.d.ts.map +1 -1
  35. package/dist/fields/Password/types.js.map +1 -1
  36. package/dist/fields/Text/types.d.ts +2 -2
  37. package/dist/fields/Text/types.d.ts.map +1 -1
  38. package/dist/fields/Text/types.js.map +1 -1
  39. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.d.ts.map +1 -1
  40. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js +12 -4
  41. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js.map +1 -1
  42. package/dist/providers/ListQuery/index.d.ts.map +1 -1
  43. package/dist/providers/ListQuery/index.js +8 -1
  44. package/dist/providers/ListQuery/index.js.map +1 -1
  45. package/dist/styles.css +1 -1
  46. package/dist/utilities/formatDocTitle/index.js +1 -1
  47. package/dist/utilities/formatDocTitle/index.js.map +1 -1
  48. package/package.json +6 -6
  49. package/dist/elements/Nav/NavToggler/index.css +0 -12
  50. package/dist/elements/Nav/NavToggler/index.d.ts +0 -9
  51. package/dist/elements/Nav/NavToggler/index.d.ts.map +0 -1
  52. package/dist/elements/Nav/NavToggler/index.js +0 -91
  53. package/dist/elements/Nav/NavToggler/index.js.map +0 -1
@@ -45,7 +45,7 @@ export const formatDocTitle = ({
45
45
  title = formatLexicalDocTitle(fallback.root.children?.[0]?.children || [], '');
46
46
  }
47
47
  if (!title) {
48
- title = typeof fallback === 'string' ? fallback : `[${i18n.t('general:untitled')}]`;
48
+ title = typeof fallback === 'string' ? fallback : i18n.t('general:untitled');
49
49
  }
50
50
  return title;
51
51
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["getTranslation","formatDate","formatLexicalDocTitle","isSerializedLexicalEditor","formatRelationshipTitle","formatDocTitle","collectionConfig","data","dateFormat","dateFormatFromConfig","fallback","globalConfig","i18n","title","useAsTitle","admin","fieldConfig","fields","find","f","name","isDate","type","isRelationship","date","displayFormat","pattern","formattedRelationshipTitle","label","slug","root","children","t"],"sources":["../../../src/utilities/formatDocTitle/index.ts"],"sourcesContent":["import type { I18n } from '@payloadcms/translations'\nimport type {\n ClientCollectionConfig,\n ClientGlobalConfig,\n SanitizedConfig,\n TypeWithID,\n} from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\n\nimport { formatDate } from './formatDateTitle.js'\nimport { formatLexicalDocTitle, isSerializedLexicalEditor } from './formatLexicalDocTitle.js'\nimport { formatRelationshipTitle } from './formatRelationshipTitle.js'\n\nexport const formatDocTitle = ({\n collectionConfig,\n data,\n dateFormat: dateFormatFromConfig,\n fallback,\n globalConfig,\n i18n,\n}: {\n collectionConfig?: ClientCollectionConfig\n data: TypeWithID\n dateFormat: SanitizedConfig['admin']['dateFormat']\n fallback?: object | string\n globalConfig?: ClientGlobalConfig\n i18n: I18n<any, any>\n}): string => {\n let title: string\n\n if (collectionConfig) {\n const useAsTitle = collectionConfig?.admin?.useAsTitle\n\n if (useAsTitle) {\n title = data?.[useAsTitle] as string\n\n if (title) {\n const fieldConfig = collectionConfig.fields.find(\n (f) => 'name' in f && f.name === useAsTitle,\n )\n\n const isDate = fieldConfig?.type === 'date'\n const isRelationship = fieldConfig?.type === 'relationship'\n\n if (isDate) {\n const dateFormat =\n ('date' in fieldConfig.admin && fieldConfig?.admin?.date?.displayFormat) ||\n dateFormatFromConfig\n\n title = formatDate({ date: title, i18n, pattern: dateFormat }) || title\n }\n\n if (isRelationship) {\n const formattedRelationshipTitle = formatRelationshipTitle(data[useAsTitle])\n title = formattedRelationshipTitle\n }\n }\n }\n }\n\n if (globalConfig) {\n title = getTranslation(globalConfig?.label, i18n) || globalConfig?.slug\n }\n\n // richtext lexical case. We convert the first child of root to plain text\n if (title && isSerializedLexicalEditor(title)) {\n title = formatLexicalDocTitle(title.root.children?.[0]?.children || [], '')\n }\n\n if (!title && isSerializedLexicalEditor(fallback)) {\n title = formatLexicalDocTitle(fallback.root.children?.[0]?.children || [], '')\n }\n\n if (!title) {\n title = typeof fallback === 'string' ? fallback : `[${i18n.t('general:untitled')}]`\n }\n\n return title\n}\n"],"mappings":"AAQA,SAASA,cAAc,QAAQ;AAE/B,SAASC,UAAU,QAAQ;AAC3B,SAASC,qBAAqB,EAAEC,yBAAyB,QAAQ;AACjE,SAASC,uBAAuB,QAAQ;AAExC,OAAO,MAAMC,cAAA,GAAiBA,CAAC;EAC7BC,gBAAgB;EAChBC,IAAI;EACJC,UAAA,EAAYC,oBAAoB;EAChCC,QAAQ;EACRC,YAAY;EACZC;AAAI,CAQL;EACC,IAAIC,KAAA;EAEJ,IAAIP,gBAAA,EAAkB;IACpB,MAAMQ,UAAA,GAAaR,gBAAA,EAAkBS,KAAA,EAAOD,UAAA;IAE5C,IAAIA,UAAA,EAAY;MACdD,KAAA,GAAQN,IAAA,GAAOO,UAAA,CAAW;MAE1B,IAAID,KAAA,EAAO;QACT,MAAMG,WAAA,GAAcV,gBAAA,CAAiBW,MAAM,CAACC,IAAI,CAC7CC,CAAA,IAAM,UAAUA,CAAA,IAAKA,CAAA,CAAEC,IAAI,KAAKN,UAAA;QAGnC,MAAMO,MAAA,GAASL,WAAA,EAAaM,IAAA,KAAS;QACrC,MAAMC,cAAA,GAAiBP,WAAA,EAAaM,IAAA,KAAS;QAE7C,IAAID,MAAA,EAAQ;UACV,MAAMb,UAAA,GACJ,MAAC,IAAUQ,WAAA,CAAYD,KAAK,IAAIC,WAAA,EAAaD,KAAA,EAAOS,IAAA,EAAMC,aAAA,IAC1DhB,oBAAA;UAEFI,KAAA,GAAQZ,UAAA,CAAW;YAAEuB,IAAA,EAAMX,KAAA;YAAOD,IAAA;YAAMc,OAAA,EAASlB;UAAW,MAAMK,KAAA;QACpE;QAEA,IAAIU,cAAA,EAAgB;UAClB,MAAMI,0BAAA,GAA6BvB,uBAAA,CAAwBG,IAAI,CAACO,UAAA,CAAW;UAC3ED,KAAA,GAAQc,0BAAA;QACV;MACF;IACF;EACF;EAEA,IAAIhB,YAAA,EAAc;IAChBE,KAAA,GAAQb,cAAA,CAAeW,YAAA,EAAciB,KAAA,EAAOhB,IAAA,KAASD,YAAA,EAAckB,IAAA;EACrE;EAEA;EACA,IAAIhB,KAAA,IAASV,yBAAA,CAA0BU,KAAA,GAAQ;IAC7CA,KAAA,GAAQX,qBAAA,CAAsBW,KAAA,CAAMiB,IAAI,CAACC,QAAQ,GAAG,EAAE,EAAEA,QAAA,IAAY,EAAE,EAAE;EAC1E;EAEA,IAAI,CAAClB,KAAA,IAASV,yBAAA,CAA0BO,QAAA,GAAW;IACjDG,KAAA,GAAQX,qBAAA,CAAsBQ,QAAA,CAASoB,IAAI,CAACC,QAAQ,GAAG,EAAE,EAAEA,QAAA,IAAY,EAAE,EAAE;EAC7E;EAEA,IAAI,CAAClB,KAAA,EAAO;IACVA,KAAA,GAAQ,OAAOH,QAAA,KAAa,WAAWA,QAAA,GAAW,IAAIE,IAAA,CAAKoB,CAAC,CAAC,sBAAsB;EACrF;EAEA,OAAOnB,KAAA;AACT","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["getTranslation","formatDate","formatLexicalDocTitle","isSerializedLexicalEditor","formatRelationshipTitle","formatDocTitle","collectionConfig","data","dateFormat","dateFormatFromConfig","fallback","globalConfig","i18n","title","useAsTitle","admin","fieldConfig","fields","find","f","name","isDate","type","isRelationship","date","displayFormat","pattern","formattedRelationshipTitle","label","slug","root","children","t"],"sources":["../../../src/utilities/formatDocTitle/index.ts"],"sourcesContent":["import type { I18n } from '@payloadcms/translations'\nimport type {\n ClientCollectionConfig,\n ClientGlobalConfig,\n SanitizedConfig,\n TypeWithID,\n} from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\n\nimport { formatDate } from './formatDateTitle.js'\nimport { formatLexicalDocTitle, isSerializedLexicalEditor } from './formatLexicalDocTitle.js'\nimport { formatRelationshipTitle } from './formatRelationshipTitle.js'\n\nexport const formatDocTitle = ({\n collectionConfig,\n data,\n dateFormat: dateFormatFromConfig,\n fallback,\n globalConfig,\n i18n,\n}: {\n collectionConfig?: ClientCollectionConfig\n data: TypeWithID\n dateFormat: SanitizedConfig['admin']['dateFormat']\n fallback?: object | string\n globalConfig?: ClientGlobalConfig\n i18n: I18n<any, any>\n}): string => {\n let title: string\n\n if (collectionConfig) {\n const useAsTitle = collectionConfig?.admin?.useAsTitle\n\n if (useAsTitle) {\n title = data?.[useAsTitle] as string\n\n if (title) {\n const fieldConfig = collectionConfig.fields.find(\n (f) => 'name' in f && f.name === useAsTitle,\n )\n\n const isDate = fieldConfig?.type === 'date'\n const isRelationship = fieldConfig?.type === 'relationship'\n\n if (isDate) {\n const dateFormat =\n ('date' in fieldConfig.admin && fieldConfig?.admin?.date?.displayFormat) ||\n dateFormatFromConfig\n\n title = formatDate({ date: title, i18n, pattern: dateFormat }) || title\n }\n\n if (isRelationship) {\n const formattedRelationshipTitle = formatRelationshipTitle(data[useAsTitle])\n title = formattedRelationshipTitle\n }\n }\n }\n }\n\n if (globalConfig) {\n title = getTranslation(globalConfig?.label, i18n) || globalConfig?.slug\n }\n\n // richtext lexical case. We convert the first child of root to plain text\n if (title && isSerializedLexicalEditor(title)) {\n title = formatLexicalDocTitle(title.root.children?.[0]?.children || [], '')\n }\n\n if (!title && isSerializedLexicalEditor(fallback)) {\n title = formatLexicalDocTitle(fallback.root.children?.[0]?.children || [], '')\n }\n\n if (!title) {\n title = typeof fallback === 'string' ? fallback : i18n.t('general:untitled')\n }\n\n return title\n}\n"],"mappings":"AAQA,SAASA,cAAc,QAAQ;AAE/B,SAASC,UAAU,QAAQ;AAC3B,SAASC,qBAAqB,EAAEC,yBAAyB,QAAQ;AACjE,SAASC,uBAAuB,QAAQ;AAExC,OAAO,MAAMC,cAAA,GAAiBA,CAAC;EAC7BC,gBAAgB;EAChBC,IAAI;EACJC,UAAA,EAAYC,oBAAoB;EAChCC,QAAQ;EACRC,YAAY;EACZC;AAAI,CAQL;EACC,IAAIC,KAAA;EAEJ,IAAIP,gBAAA,EAAkB;IACpB,MAAMQ,UAAA,GAAaR,gBAAA,EAAkBS,KAAA,EAAOD,UAAA;IAE5C,IAAIA,UAAA,EAAY;MACdD,KAAA,GAAQN,IAAA,GAAOO,UAAA,CAAW;MAE1B,IAAID,KAAA,EAAO;QACT,MAAMG,WAAA,GAAcV,gBAAA,CAAiBW,MAAM,CAACC,IAAI,CAC7CC,CAAA,IAAM,UAAUA,CAAA,IAAKA,CAAA,CAAEC,IAAI,KAAKN,UAAA;QAGnC,MAAMO,MAAA,GAASL,WAAA,EAAaM,IAAA,KAAS;QACrC,MAAMC,cAAA,GAAiBP,WAAA,EAAaM,IAAA,KAAS;QAE7C,IAAID,MAAA,EAAQ;UACV,MAAMb,UAAA,GACJ,MAAC,IAAUQ,WAAA,CAAYD,KAAK,IAAIC,WAAA,EAAaD,KAAA,EAAOS,IAAA,EAAMC,aAAA,IAC1DhB,oBAAA;UAEFI,KAAA,GAAQZ,UAAA,CAAW;YAAEuB,IAAA,EAAMX,KAAA;YAAOD,IAAA;YAAMc,OAAA,EAASlB;UAAW,MAAMK,KAAA;QACpE;QAEA,IAAIU,cAAA,EAAgB;UAClB,MAAMI,0BAAA,GAA6BvB,uBAAA,CAAwBG,IAAI,CAACO,UAAA,CAAW;UAC3ED,KAAA,GAAQc,0BAAA;QACV;MACF;IACF;EACF;EAEA,IAAIhB,YAAA,EAAc;IAChBE,KAAA,GAAQb,cAAA,CAAeW,YAAA,EAAciB,KAAA,EAAOhB,IAAA,KAASD,YAAA,EAAckB,IAAA;EACrE;EAEA;EACA,IAAIhB,KAAA,IAASV,yBAAA,CAA0BU,KAAA,GAAQ;IAC7CA,KAAA,GAAQX,qBAAA,CAAsBW,KAAA,CAAMiB,IAAI,CAACC,QAAQ,GAAG,EAAE,EAAEA,QAAA,IAAY,EAAE,EAAE;EAC1E;EAEA,IAAI,CAAClB,KAAA,IAASV,yBAAA,CAA0BO,QAAA,GAAW;IACjDG,KAAA,GAAQX,qBAAA,CAAsBQ,QAAA,CAASoB,IAAI,CAACC,QAAQ,GAAG,EAAE,EAAEA,QAAA,IAAY,EAAE,EAAE;EAC7E;EAEA,IAAI,CAAClB,KAAA,EAAO;IACVA,KAAA,GAAQ,OAAOH,QAAA,KAAa,WAAWA,QAAA,GAAWE,IAAA,CAAKoB,CAAC,CAAC;EAC3D;EAEA,OAAOnB,KAAA;AACT","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@payloadcms/ui",
3
- "version": "4.0.0-internal.3aa3d85",
3
+ "version": "4.0.0-internal.43ccea7",
4
4
  "homepage": "https://payloadcms.com",
5
5
  "repository": {
6
6
  "type": "git",
@@ -274,7 +274,7 @@
274
274
  "@dnd-kit/modifiers": "9.0.0",
275
275
  "@dnd-kit/sortable": "10.0.0",
276
276
  "@dnd-kit/utilities": "3.2.2",
277
- "@faceless-ui/modal": "3.0.1-canary.0",
277
+ "@faceless-ui/modal": "3.0.1",
278
278
  "@faceless-ui/scroll-info": "2.0.0",
279
279
  "@faceless-ui/window-info": "3.0.1",
280
280
  "@monaco-editor/react": "4.7.0",
@@ -293,7 +293,7 @@
293
293
  "ts-essentials": "10.0.3",
294
294
  "use-context-selector": "2.0.0",
295
295
  "uuid": "14.0.0",
296
- "@payloadcms/translations": "4.0.0-internal.3aa3d85"
296
+ "@payloadcms/translations": "4.0.0-internal.43ccea7"
297
297
  },
298
298
  "devDependencies": {
299
299
  "@babel/cli": "7.27.2",
@@ -307,13 +307,13 @@
307
307
  "babel-plugin-react-compiler": "19.1.0-rc.3",
308
308
  "esbuild": "0.27.1",
309
309
  "esbuild-sass-plugin": "3.3.1",
310
- "payload": "4.0.0-internal.3aa3d85",
311
- "@payloadcms/eslint-config": "3.28.0"
310
+ "@payloadcms/eslint-config": "3.28.0",
311
+ "payload": "4.0.0-internal.43ccea7"
312
312
  },
313
313
  "peerDependencies": {
314
314
  "react": "^19.0.1 || ^19.1.2 || ^19.2.1",
315
315
  "react-dom": "^19.0.1 || ^19.1.2 || ^19.2.1",
316
- "payload": "4.0.0-internal.3aa3d85"
316
+ "payload": "4.0.0-internal.43ccea7"
317
317
  },
318
318
  "engines": {
319
319
  "node": ">=24.15.0"
@@ -1,12 +0,0 @@
1
- @layer payload-default {
2
- .nav-toggler {
3
- position: relative;
4
- display: flex;
5
- align-items: center;
6
- background: transparent;
7
- padding: 0;
8
- margin: 0;
9
- border: 0;
10
- cursor: pointer;
11
- }
12
- }
@@ -1,9 +0,0 @@
1
- import React from 'react';
2
- import './index.css';
3
- export declare const NavToggler: React.FC<{
4
- children?: React.ReactNode;
5
- className?: string;
6
- id?: string;
7
- tabIndex?: number;
8
- }>;
9
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/Nav/NavToggler/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,OAAO,CAAA;AAKzB,OAAO,aAAa,CAAA;AAIpB,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC;IAChC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB,CAyCA,CAAA"}
@@ -1,91 +0,0 @@
1
- 'use client';
2
-
3
- import { c as _c } from "react/compiler-runtime";
4
- import { jsx as _jsx } from "react/jsx-runtime";
5
- import { useWindowInfo } from '@faceless-ui/window-info';
6
- import { PREFERENCE_KEYS } from 'payload/shared';
7
- import React from 'react';
8
- import { usePreferences } from '../../../providers/Preferences/index.js';
9
- import { useTranslation } from '../../../providers/Translation/index.js';
10
- import { useNav } from '../context.js';
11
- import './index.css';
12
- const baseClass = 'nav-toggler';
13
- export const NavToggler = props => {
14
- const $ = _c(15);
15
- const {
16
- id,
17
- children,
18
- className,
19
- tabIndex: t0
20
- } = props;
21
- const tabIndex = t0 === undefined ? 0 : t0;
22
- const {
23
- t
24
- } = useTranslation();
25
- const {
26
- setPreference
27
- } = usePreferences();
28
- const {
29
- navOpen,
30
- setNavOpen
31
- } = useNav();
32
- const {
33
- breakpoints: t1
34
- } = useWindowInfo();
35
- const {
36
- l: largeBreak
37
- } = t1;
38
- const t2 = `${navOpen ? t("general:close") : t("general:open")} ${t("general:menu")}`;
39
- const t3 = navOpen && `${baseClass}--is-open`;
40
- let t4;
41
- if ($[0] !== className || $[1] !== t3) {
42
- t4 = [baseClass, t3, className].filter(Boolean);
43
- $[0] = className;
44
- $[1] = t3;
45
- $[2] = t4;
46
- } else {
47
- t4 = $[2];
48
- }
49
- const t5 = t4.join(" ");
50
- let t6;
51
- if ($[3] !== largeBreak || $[4] !== navOpen || $[5] !== setNavOpen || $[6] !== setPreference) {
52
- t6 = async () => {
53
- setNavOpen(!navOpen);
54
- if (!largeBreak) {
55
- await setPreference(PREFERENCE_KEYS.NAV, {
56
- open: !navOpen
57
- }, true);
58
- }
59
- };
60
- $[3] = largeBreak;
61
- $[4] = navOpen;
62
- $[5] = setNavOpen;
63
- $[6] = setPreference;
64
- $[7] = t6;
65
- } else {
66
- t6 = $[7];
67
- }
68
- let t7;
69
- if ($[8] !== children || $[9] !== id || $[10] !== t2 || $[11] !== t5 || $[12] !== t6 || $[13] !== tabIndex) {
70
- t7 = _jsx("button", {
71
- "aria-label": t2,
72
- className: t5,
73
- id,
74
- onClick: t6,
75
- tabIndex,
76
- type: "button",
77
- children
78
- });
79
- $[8] = children;
80
- $[9] = id;
81
- $[10] = t2;
82
- $[11] = t5;
83
- $[12] = t6;
84
- $[13] = tabIndex;
85
- $[14] = t7;
86
- } else {
87
- t7 = $[14];
88
- }
89
- return t7;
90
- };
91
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","names":["c","_c","useWindowInfo","PREFERENCE_KEYS","React","usePreferences","useTranslation","useNav","baseClass","NavToggler","props","$","id","children","className","tabIndex","t0","undefined","t","setPreference","navOpen","setNavOpen","breakpoints","t1","l","largeBreak","t2","t3","t4","filter","Boolean","t5","join","t6","NAV","open","t7","_jsx","onClick","type"],"sources":["../../../../src/elements/Nav/NavToggler/index.tsx"],"sourcesContent":["'use client'\nimport { useWindowInfo } from '@faceless-ui/window-info'\nimport { PREFERENCE_KEYS } from 'payload/shared'\nimport React from 'react'\n\nimport { usePreferences } from '../../../providers/Preferences/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { useNav } from '../context.js'\nimport './index.css'\n\nconst baseClass = 'nav-toggler'\n\nexport const NavToggler: React.FC<{\n children?: React.ReactNode\n className?: string\n id?: string\n tabIndex?: number\n}> = (props) => {\n const { id, children, className, tabIndex = 0 } = props\n\n const { t } = useTranslation()\n\n const { setPreference } = usePreferences()\n\n const { navOpen, setNavOpen } = useNav()\n\n const {\n breakpoints: { l: largeBreak },\n } = useWindowInfo()\n\n return (\n <button\n aria-label={`${navOpen ? t('general:close') : t('general:open')} ${t('general:menu')}`}\n className={[baseClass, navOpen && `${baseClass}--is-open`, className]\n .filter(Boolean)\n .join(' ')}\n id={id}\n onClick={async () => {\n setNavOpen(!navOpen)\n\n // only when the user explicitly toggles the nav on desktop do we want to set the preference\n // this is because the js may open or close the nav based on the window size, routing, etc\n if (!largeBreak) {\n await setPreference(\n PREFERENCE_KEYS.NAV,\n {\n open: !navOpen,\n },\n true,\n )\n }\n }}\n tabIndex={tabIndex}\n type=\"button\"\n >\n {children}\n </button>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AACA,SAASC,aAAa,QAAQ;AAC9B,SAASC,eAAe,QAAQ;AAChC,OAAOC,KAAA,MAAW;AAElB,SAASC,cAAc,QAAQ;AAC/B,SAASC,cAAc,QAAQ;AAC/B,SAASC,MAAM,QAAQ;AACvB,OAAO;AAEP,MAAMC,SAAA,GAAY;AAElB,OAAO,MAAMC,UAAA,GAKRC,KAAA;EAAA,MAAAC,CAAA,GAAAV,EAAA;EACH;IAAAW,EAAA;IAAAC,QAAA;IAAAC,SAAA;IAAAC,QAAA,EAAAC;EAAA,IAAkDN,KAAA;EAAjB,MAAAK,QAAA,GAAAC,EAAY,KAAAC,SAAA,OAAZD,EAAY;EAE7C;IAAAE;EAAA,IAAcZ,cAAA;EAEd;IAAAa;EAAA,IAA0Bd,cAAA;EAE1B;IAAAe,OAAA;IAAAC;EAAA,IAAgCd,MAAA;EAEhC;IAAAe,WAAA,EAAAC;EAAA,IAEIrB,aAAA;EADW;IAAAsB,CAAA,EAAAC;EAAA,IAAAF,EAAiB;EAKhB,MAAAG,EAAA,MAAGN,OAAA,GAAUF,CAAA,CAAE,mBAAmBA,CAAA,CAAE,mBAAmBA,CAAA,CAAE,iBAAiB;EAC/D,MAAAS,EAAA,GAAAP,OAAA,IAAW,GAAAZ,SAAA,WAAuB;EAAA,IAAAoB,EAAA;EAAA,IAAAjB,CAAA,QAAAG,SAAA,IAAAH,CAAA,QAAAgB,EAAA;IAA9CC,EAAA,IAAApB,SAAA,EAAYmB,EAAkC,EAAEb,SAAA,EAAAe,MAAA,CAAAC,OACjD;IAAAnB,CAAA,MAAAG,SAAA;IAAAH,CAAA,MAAAgB,EAAA;IAAAhB,CAAA,MAAAiB,EAAA;EAAA;IAAAA,EAAA,GAAAjB,CAAA;EAAA;EADC,MAAAoB,EAAA,GAAAH,EACD,CAAAI,IAAA,CACF;EAAA,IAAAC,EAAA;EAAA,IAAAtB,CAAA,QAAAc,UAAA,IAAAd,CAAA,QAAAS,OAAA,IAAAT,CAAA,QAAAU,UAAA,IAAAV,CAAA,QAAAQ,aAAA;IAECc,EAAA,SAAAA,CAAA;MACPZ,UAAA,EAAYD,OAAA;MAAA,KAIPK,UAAA;QAAA,MACGN,aAAA,CAAAhB,eAAA,CAAA+B,GAAA;UAAAC,IAAA,GAGKf;QAAA,OAET;MAAA;IAAA;IAGNT,CAAA,MAAAc,UAAA;IAAAd,CAAA,MAAAS,OAAA;IAAAT,CAAA,MAAAU,UAAA;IAAAV,CAAA,MAAAQ,aAAA;IAAAR,CAAA,MAAAsB,EAAA;EAAA;IAAAA,EAAA,GAAAtB,CAAA;EAAA;EAAA,IAAAyB,EAAA;EAAA,IAAAzB,CAAA,QAAAE,QAAA,IAAAF,CAAA,QAAAC,EAAA,IAAAD,CAAA,SAAAe,EAAA,IAAAf,CAAA,SAAAoB,EAAA,IAAApB,CAAA,SAAAsB,EAAA,IAAAtB,CAAA,SAAAI,QAAA;IApBFqB,EAAA,GAAAC,IAAA,CAAC;MAAA,cACaX,EAA0E;MAAAZ,SAAA,EAC3EiB,EAEH;MAAAnB,EAAA;MAAA0B,OAAA,EAECL,EAcT;MAAAlB,QAAA;MAAAwB,IAAA,EAEK;MAAA1B;IAAA,C;;;;;;;;;;;SAtBPuB,E;CA2BJ","ignoreList":[]}