@slashclick/ui 0.1.15 → 0.2.0

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 (45) hide show
  1. package/dist/components/flowbite/search-hero.cjs +3 -3
  2. package/dist/components/flowbite/search-hero.cjs.map +1 -1
  3. package/dist/components/flowbite/search-hero.js +3 -3
  4. package/dist/components/flowbite/search-hero.js.map +1 -1
  5. package/dist/components/header/header.cjs +23 -10
  6. package/dist/components/header/header.cjs.map +1 -1
  7. package/dist/components/header/header.d.ts +5 -2
  8. package/dist/components/header/header.d.ts.map +1 -1
  9. package/dist/components/header/header.js +13 -10
  10. package/dist/components/header/header.js.map +1 -1
  11. package/dist/components/header/langbutton/langbutton.cjs +17 -5
  12. package/dist/components/header/langbutton/langbutton.cjs.map +1 -1
  13. package/dist/components/header/langbutton/langbutton.d.ts +3 -1
  14. package/dist/components/header/langbutton/langbutton.d.ts.map +1 -1
  15. package/dist/components/header/langbutton/langbutton.js +17 -5
  16. package/dist/components/header/langbutton/langbutton.js.map +1 -1
  17. package/dist/components/header/userbutton/userbutton.cjs +14 -5
  18. package/dist/components/header/userbutton/userbutton.cjs.map +1 -1
  19. package/dist/components/header/userbutton/userbutton.d.ts +3 -1
  20. package/dist/components/header/userbutton/userbutton.d.ts.map +1 -1
  21. package/dist/components/header/userbutton/userbutton.js +14 -5
  22. package/dist/components/header/userbutton/userbutton.js.map +1 -1
  23. package/dist/components/icons/logo.cjs +6 -2
  24. package/dist/components/icons/logo.cjs.map +1 -1
  25. package/dist/components/icons/logo.d.ts +3 -1
  26. package/dist/components/icons/logo.d.ts.map +1 -1
  27. package/dist/components/icons/logo.js +6 -2
  28. package/dist/components/icons/logo.js.map +1 -1
  29. package/dist/components/tailwind/contact.cjs +6 -6
  30. package/dist/components/tailwind/contact.cjs.map +1 -1
  31. package/dist/components/tailwind/contact.js +6 -6
  32. package/dist/components/tailwind/contact.js.map +1 -1
  33. package/dist/components/tailwind/pricing.cjs +28 -28
  34. package/dist/components/tailwind/pricing.cjs.map +1 -1
  35. package/dist/components/tailwind/pricing.d.ts.map +1 -1
  36. package/dist/components/tailwind/pricing.js +28 -28
  37. package/dist/components/tailwind/pricing.js.map +1 -1
  38. package/dist/lib/nav-theme.cjs +33 -0
  39. package/dist/lib/nav-theme.cjs.map +1 -0
  40. package/dist/lib/nav-theme.d.ts +3 -0
  41. package/dist/lib/nav-theme.d.ts.map +1 -0
  42. package/dist/lib/nav-theme.js +9 -0
  43. package/dist/lib/nav-theme.js.map +1 -0
  44. package/dist/styles.css +2 -2
  45. package/package.json +14 -7
@@ -39,10 +39,10 @@ function SearchBarDatepickerHeroSection({
39
39
  setValue("");
40
40
  onSearch("");
41
41
  }
42
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("section", { children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "z-1 max-w-(--breakpoint-xl) relative mx-auto px-4 py-8 text-white lg:py-16 xl:px-0", children: [
42
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("section", { children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "z-1 max-w-(--breakpoint-xl) relative mx-auto px-4 py-8 text-gray-900 lg:py-16 xl:px-0 dark:text-white", children: [
43
43
  /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "max-w-(--breakpoint-md) mb-6 lg:mb-0", children: [
44
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)("h1", { className: "mb-4 text-4xl font-extrabold leading-tight tracking-tight text-white md:text-5xl lg:text-6xl", children: "Find your inspiration" }),
45
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)("p", { className: "mb-6 text-gray-300 md:text-lg lg:mb-8 lg:text-xl", children: "Peruse through our collection of public Story Bibles. Each guest account is allowed one public story. Subscribe to unlock private stories and other features." }),
44
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("h1", { className: "mb-4 text-4xl font-extrabold leading-tight tracking-tight text-gray-900 md:text-5xl lg:text-6xl dark:text-white", children: "Find your inspiration" }),
45
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("p", { className: "mb-6 text-gray-600 md:text-lg lg:mb-8 lg:text-xl dark:text-gray-300", children: "Peruse through our collection of public Story Bibles. Each guest account is allowed one public story. Subscribe to unlock private stories and other features." }),
46
46
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
47
47
  "a",
48
48
  {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../components/flowbite/search-hero.tsx"],"sourcesContent":["'use client'\n\nimport { useState } from 'react'\nimport { Input } from '../ui/input'\nimport { Label } from '../ui/label'\nimport { Button } from '../ui/button'\n\ninterface SearchBarProps {\n onSearch: (query: string) => void\n}\n\nexport default function SearchBarDatepickerHeroSection({\n onSearch,\n}: SearchBarProps) {\n const [value, setValue] = useState('')\n\n function handleSubmit(e: React.FormEvent) {\n e.preventDefault()\n onSearch(value.trim())\n }\n\n function handleClear() {\n setValue('')\n onSearch('')\n }\n\n return (\n <section>\n <div className=\"z-1 max-w-(--breakpoint-xl) relative mx-auto px-4 py-8 text-white lg:py-16 xl:px-0\">\n <div className=\"max-w-(--breakpoint-md) mb-6 lg:mb-0\">\n <h1 className=\"mb-4 text-4xl font-extrabold leading-tight tracking-tight text-white md:text-5xl lg:text-6xl\">\n Find your inspiration\n </h1>\n <p className=\"mb-6 text-gray-300 md:text-lg lg:mb-8 lg:text-xl\">\n Peruse through our collection of public Story Bibles. Each guest\n account is allowed one public story. Subscribe to unlock private\n stories and other features.\n </p>\n <a\n href=\"/signin\"\n className=\"bg-primary-700 hover:bg-primary-800 focus:ring-primary-900 dark:bg-primary-600 dark:hover:bg-primary-700 dark:focus:ring-primary-800 focus:outline-hidden inline-flex items-center rounded-lg px-5 py-3 text-center font-medium text-white focus:ring-4\"\n >\n Sign In / Register\n </a>\n </div>\n <form\n onSubmit={handleSubmit}\n className=\"mt-8 grid w-full gap-y-4 rounded bg-white p-4 lg:mt-12 lg:grid-cols-9 lg:gap-x-4 dark:bg-gray-800\"\n >\n <div className=\"relative lg:col-span-4\">\n <Label htmlFor=\"story-search\" className=\"sr-only\">\n Search stories\n </Label>\n <Input\n id=\"story-search\"\n placeholder=\"Search stories by title or content\"\n value={value}\n onChange={(e) => setValue(e.target.value)}\n />\n {value && (\n <button\n type=\"button\"\n onClick={handleClear}\n className=\"absolute right-3 top-1/2 -translate-y-1/2 text-gray-400 hover:text-gray-600\"\n aria-label=\"Clear search\"\n >\n ✕\n </button>\n )}\n </div>\n <Button type=\"submit\" className=\"lg:col-span-2\">\n <svg\n className=\"-ml-1 mr-2 h-5 w-5\"\n fill=\"currentColor\"\n viewBox=\"0 0 20 20\"\n xmlns=\"http://www.w3.org/2000/svg\"\n aria-hidden=\"true\"\n >\n <path\n fillRule=\"evenodd\"\n d=\"M8 4a4 4 0 100 8 4 4 0 000-8zM2 8a6 6 0 1110.89 3.476l4.817 4.817a1 1 0 01-1.414 1.414l-4.816-4.816A6 6 0 012 8z\"\n clipRule=\"evenodd\"\n />\n </svg>\n Search\n </Button>\n </form>\n </div>\n </section>\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AA6BQ;AA3BR,mBAAyB;AACzB,mBAAsB;AACtB,mBAAsB;AACtB,oBAAuB;AAMR,SAAR,+BAAgD;AAAA,EACrD;AACF,GAAmB;AACjB,QAAM,CAAC,OAAO,QAAQ,QAAI,uBAAS,EAAE;AAErC,WAAS,aAAa,GAAoB;AACxC,MAAE,eAAe;AACjB,aAAS,MAAM,KAAK,CAAC;AAAA,EACvB;AAEA,WAAS,cAAc;AACrB,aAAS,EAAE;AACX,aAAS,EAAE;AAAA,EACb;AAEA,SACE,4CAAC,aACC,uDAAC,SAAI,WAAU,sFACb;AAAA,iDAAC,SAAI,WAAU,wCACb;AAAA,kDAAC,QAAG,WAAU,gGAA+F,mCAE7G;AAAA,MACA,4CAAC,OAAE,WAAU,oDAAmD,2KAIhE;AAAA,MACA;AAAA,QAAC;AAAA;AAAA,UACC,MAAK;AAAA,UACL,WAAU;AAAA,UACX;AAAA;AAAA,MAED;AAAA,OACF;AAAA,IACA;AAAA,MAAC;AAAA;AAAA,QACC,UAAU;AAAA,QACV,WAAU;AAAA,QAEV;AAAA,uDAAC,SAAI,WAAU,0BACb;AAAA,wDAAC,sBAAM,SAAQ,gBAAe,WAAU,WAAU,4BAElD;AAAA,YACA;AAAA,cAAC;AAAA;AAAA,gBACC,IAAG;AAAA,gBACH,aAAY;AAAA,gBACZ;AAAA,gBACA,UAAU,CAAC,MAAM,SAAS,EAAE,OAAO,KAAK;AAAA;AAAA,YAC1C;AAAA,YACC,SACC;AAAA,cAAC;AAAA;AAAA,gBACC,MAAK;AAAA,gBACL,SAAS;AAAA,gBACT,WAAU;AAAA,gBACV,cAAW;AAAA,gBACZ;AAAA;AAAA,YAED;AAAA,aAEJ;AAAA,UACA,6CAAC,wBAAO,MAAK,UAAS,WAAU,iBAC9B;AAAA;AAAA,cAAC;AAAA;AAAA,gBACC,WAAU;AAAA,gBACV,MAAK;AAAA,gBACL,SAAQ;AAAA,gBACR,OAAM;AAAA,gBACN,eAAY;AAAA,gBAEZ;AAAA,kBAAC;AAAA;AAAA,oBACC,UAAS;AAAA,oBACT,GAAE;AAAA,oBACF,UAAS;AAAA;AAAA,gBACX;AAAA;AAAA,YACF;AAAA,YAAM;AAAA,aAER;AAAA;AAAA;AAAA,IACF;AAAA,KACF,GACF;AAEJ;","names":[]}
1
+ {"version":3,"sources":["../../../components/flowbite/search-hero.tsx"],"sourcesContent":["'use client'\n\nimport { useState } from 'react'\nimport { Input } from '../ui/input'\nimport { Label } from '../ui/label'\nimport { Button } from '../ui/button'\n\ninterface SearchBarProps {\n onSearch: (query: string) => void\n}\n\nexport default function SearchBarDatepickerHeroSection({\n onSearch,\n}: SearchBarProps) {\n const [value, setValue] = useState('')\n\n function handleSubmit(e: React.FormEvent) {\n e.preventDefault()\n onSearch(value.trim())\n }\n\n function handleClear() {\n setValue('')\n onSearch('')\n }\n\n return (\n <section>\n <div className=\"z-1 max-w-(--breakpoint-xl) relative mx-auto px-4 py-8 text-gray-900 lg:py-16 xl:px-0 dark:text-white\">\n <div className=\"max-w-(--breakpoint-md) mb-6 lg:mb-0\">\n <h1 className=\"mb-4 text-4xl font-extrabold leading-tight tracking-tight text-gray-900 md:text-5xl lg:text-6xl dark:text-white\">\n Find your inspiration\n </h1>\n <p className=\"mb-6 text-gray-600 md:text-lg lg:mb-8 lg:text-xl dark:text-gray-300\">\n Peruse through our collection of public Story Bibles. Each guest\n account is allowed one public story. Subscribe to unlock private\n stories and other features.\n </p>\n <a\n href=\"/signin\"\n className=\"bg-primary-700 hover:bg-primary-800 focus:ring-primary-900 dark:bg-primary-600 dark:hover:bg-primary-700 dark:focus:ring-primary-800 focus:outline-hidden inline-flex items-center rounded-lg px-5 py-3 text-center font-medium text-white focus:ring-4\"\n >\n Sign In / Register\n </a>\n </div>\n <form\n onSubmit={handleSubmit}\n className=\"mt-8 grid w-full gap-y-4 rounded bg-white p-4 lg:mt-12 lg:grid-cols-9 lg:gap-x-4 dark:bg-gray-800\"\n >\n <div className=\"relative lg:col-span-4\">\n <Label htmlFor=\"story-search\" className=\"sr-only\">\n Search stories\n </Label>\n <Input\n id=\"story-search\"\n placeholder=\"Search stories by title or content\"\n value={value}\n onChange={(e) => setValue(e.target.value)}\n />\n {value && (\n <button\n type=\"button\"\n onClick={handleClear}\n className=\"absolute right-3 top-1/2 -translate-y-1/2 text-gray-400 hover:text-gray-600\"\n aria-label=\"Clear search\"\n >\n ✕\n </button>\n )}\n </div>\n <Button type=\"submit\" className=\"lg:col-span-2\">\n <svg\n className=\"-ml-1 mr-2 h-5 w-5\"\n fill=\"currentColor\"\n viewBox=\"0 0 20 20\"\n xmlns=\"http://www.w3.org/2000/svg\"\n aria-hidden=\"true\"\n >\n <path\n fillRule=\"evenodd\"\n d=\"M8 4a4 4 0 100 8 4 4 0 000-8zM2 8a6 6 0 1110.89 3.476l4.817 4.817a1 1 0 01-1.414 1.414l-4.816-4.816A6 6 0 012 8z\"\n clipRule=\"evenodd\"\n />\n </svg>\n Search\n </Button>\n </form>\n </div>\n </section>\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AA6BQ;AA3BR,mBAAyB;AACzB,mBAAsB;AACtB,mBAAsB;AACtB,oBAAuB;AAMR,SAAR,+BAAgD;AAAA,EACrD;AACF,GAAmB;AACjB,QAAM,CAAC,OAAO,QAAQ,QAAI,uBAAS,EAAE;AAErC,WAAS,aAAa,GAAoB;AACxC,MAAE,eAAe;AACjB,aAAS,MAAM,KAAK,CAAC;AAAA,EACvB;AAEA,WAAS,cAAc;AACrB,aAAS,EAAE;AACX,aAAS,EAAE;AAAA,EACb;AAEA,SACE,4CAAC,aACC,uDAAC,SAAI,WAAU,yGACb;AAAA,iDAAC,SAAI,WAAU,wCACb;AAAA,kDAAC,QAAG,WAAU,mHAAkH,mCAEhI;AAAA,MACA,4CAAC,OAAE,WAAU,uEAAsE,2KAInF;AAAA,MACA;AAAA,QAAC;AAAA;AAAA,UACC,MAAK;AAAA,UACL,WAAU;AAAA,UACX;AAAA;AAAA,MAED;AAAA,OACF;AAAA,IACA;AAAA,MAAC;AAAA;AAAA,QACC,UAAU;AAAA,QACV,WAAU;AAAA,QAEV;AAAA,uDAAC,SAAI,WAAU,0BACb;AAAA,wDAAC,sBAAM,SAAQ,gBAAe,WAAU,WAAU,4BAElD;AAAA,YACA;AAAA,cAAC;AAAA;AAAA,gBACC,IAAG;AAAA,gBACH,aAAY;AAAA,gBACZ;AAAA,gBACA,UAAU,CAAC,MAAM,SAAS,EAAE,OAAO,KAAK;AAAA;AAAA,YAC1C;AAAA,YACC,SACC;AAAA,cAAC;AAAA;AAAA,gBACC,MAAK;AAAA,gBACL,SAAS;AAAA,gBACT,WAAU;AAAA,gBACV,cAAW;AAAA,gBACZ;AAAA;AAAA,YAED;AAAA,aAEJ;AAAA,UACA,6CAAC,wBAAO,MAAK,UAAS,WAAU,iBAC9B;AAAA;AAAA,cAAC;AAAA;AAAA,gBACC,WAAU;AAAA,gBACV,MAAK;AAAA,gBACL,SAAQ;AAAA,gBACR,OAAM;AAAA,gBACN,eAAY;AAAA,gBAEZ;AAAA,kBAAC;AAAA;AAAA,oBACC,UAAS;AAAA,oBACT,GAAE;AAAA,oBACF,UAAS;AAAA;AAAA,gBACX;AAAA;AAAA,YACF;AAAA,YAAM;AAAA,aAER;AAAA;AAAA;AAAA,IACF;AAAA,KACF,GACF;AAEJ;","names":[]}
@@ -16,10 +16,10 @@ function SearchBarDatepickerHeroSection({
16
16
  setValue("");
17
17
  onSearch("");
18
18
  }
19
- return /* @__PURE__ */ jsx("section", { children: /* @__PURE__ */ jsxs("div", { className: "z-1 max-w-(--breakpoint-xl) relative mx-auto px-4 py-8 text-white lg:py-16 xl:px-0", children: [
19
+ return /* @__PURE__ */ jsx("section", { children: /* @__PURE__ */ jsxs("div", { className: "z-1 max-w-(--breakpoint-xl) relative mx-auto px-4 py-8 text-gray-900 lg:py-16 xl:px-0 dark:text-white", children: [
20
20
  /* @__PURE__ */ jsxs("div", { className: "max-w-(--breakpoint-md) mb-6 lg:mb-0", children: [
21
- /* @__PURE__ */ jsx("h1", { className: "mb-4 text-4xl font-extrabold leading-tight tracking-tight text-white md:text-5xl lg:text-6xl", children: "Find your inspiration" }),
22
- /* @__PURE__ */ jsx("p", { className: "mb-6 text-gray-300 md:text-lg lg:mb-8 lg:text-xl", children: "Peruse through our collection of public Story Bibles. Each guest account is allowed one public story. Subscribe to unlock private stories and other features." }),
21
+ /* @__PURE__ */ jsx("h1", { className: "mb-4 text-4xl font-extrabold leading-tight tracking-tight text-gray-900 md:text-5xl lg:text-6xl dark:text-white", children: "Find your inspiration" }),
22
+ /* @__PURE__ */ jsx("p", { className: "mb-6 text-gray-600 md:text-lg lg:mb-8 lg:text-xl dark:text-gray-300", children: "Peruse through our collection of public Story Bibles. Each guest account is allowed one public story. Subscribe to unlock private stories and other features." }),
23
23
  /* @__PURE__ */ jsx(
24
24
  "a",
25
25
  {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../components/flowbite/search-hero.tsx"],"sourcesContent":["'use client'\n\nimport { useState } from 'react'\nimport { Input } from '../ui/input'\nimport { Label } from '../ui/label'\nimport { Button } from '../ui/button'\n\ninterface SearchBarProps {\n onSearch: (query: string) => void\n}\n\nexport default function SearchBarDatepickerHeroSection({\n onSearch,\n}: SearchBarProps) {\n const [value, setValue] = useState('')\n\n function handleSubmit(e: React.FormEvent) {\n e.preventDefault()\n onSearch(value.trim())\n }\n\n function handleClear() {\n setValue('')\n onSearch('')\n }\n\n return (\n <section>\n <div className=\"z-1 max-w-(--breakpoint-xl) relative mx-auto px-4 py-8 text-white lg:py-16 xl:px-0\">\n <div className=\"max-w-(--breakpoint-md) mb-6 lg:mb-0\">\n <h1 className=\"mb-4 text-4xl font-extrabold leading-tight tracking-tight text-white md:text-5xl lg:text-6xl\">\n Find your inspiration\n </h1>\n <p className=\"mb-6 text-gray-300 md:text-lg lg:mb-8 lg:text-xl\">\n Peruse through our collection of public Story Bibles. Each guest\n account is allowed one public story. Subscribe to unlock private\n stories and other features.\n </p>\n <a\n href=\"/signin\"\n className=\"bg-primary-700 hover:bg-primary-800 focus:ring-primary-900 dark:bg-primary-600 dark:hover:bg-primary-700 dark:focus:ring-primary-800 focus:outline-hidden inline-flex items-center rounded-lg px-5 py-3 text-center font-medium text-white focus:ring-4\"\n >\n Sign In / Register\n </a>\n </div>\n <form\n onSubmit={handleSubmit}\n className=\"mt-8 grid w-full gap-y-4 rounded bg-white p-4 lg:mt-12 lg:grid-cols-9 lg:gap-x-4 dark:bg-gray-800\"\n >\n <div className=\"relative lg:col-span-4\">\n <Label htmlFor=\"story-search\" className=\"sr-only\">\n Search stories\n </Label>\n <Input\n id=\"story-search\"\n placeholder=\"Search stories by title or content\"\n value={value}\n onChange={(e) => setValue(e.target.value)}\n />\n {value && (\n <button\n type=\"button\"\n onClick={handleClear}\n className=\"absolute right-3 top-1/2 -translate-y-1/2 text-gray-400 hover:text-gray-600\"\n aria-label=\"Clear search\"\n >\n ✕\n </button>\n )}\n </div>\n <Button type=\"submit\" className=\"lg:col-span-2\">\n <svg\n className=\"-ml-1 mr-2 h-5 w-5\"\n fill=\"currentColor\"\n viewBox=\"0 0 20 20\"\n xmlns=\"http://www.w3.org/2000/svg\"\n aria-hidden=\"true\"\n >\n <path\n fillRule=\"evenodd\"\n d=\"M8 4a4 4 0 100 8 4 4 0 000-8zM2 8a6 6 0 1110.89 3.476l4.817 4.817a1 1 0 01-1.414 1.414l-4.816-4.816A6 6 0 012 8z\"\n clipRule=\"evenodd\"\n />\n </svg>\n Search\n </Button>\n </form>\n </div>\n </section>\n )\n}\n"],"mappings":";AA6BQ,SACE,KADF;AA3BR,SAAS,gBAAgB;AACzB,SAAS,aAAa;AACtB,SAAS,aAAa;AACtB,SAAS,cAAc;AAMR,SAAR,+BAAgD;AAAA,EACrD;AACF,GAAmB;AACjB,QAAM,CAAC,OAAO,QAAQ,IAAI,SAAS,EAAE;AAErC,WAAS,aAAa,GAAoB;AACxC,MAAE,eAAe;AACjB,aAAS,MAAM,KAAK,CAAC;AAAA,EACvB;AAEA,WAAS,cAAc;AACrB,aAAS,EAAE;AACX,aAAS,EAAE;AAAA,EACb;AAEA,SACE,oBAAC,aACC,+BAAC,SAAI,WAAU,sFACb;AAAA,yBAAC,SAAI,WAAU,wCACb;AAAA,0BAAC,QAAG,WAAU,gGAA+F,mCAE7G;AAAA,MACA,oBAAC,OAAE,WAAU,oDAAmD,2KAIhE;AAAA,MACA;AAAA,QAAC;AAAA;AAAA,UACC,MAAK;AAAA,UACL,WAAU;AAAA,UACX;AAAA;AAAA,MAED;AAAA,OACF;AAAA,IACA;AAAA,MAAC;AAAA;AAAA,QACC,UAAU;AAAA,QACV,WAAU;AAAA,QAEV;AAAA,+BAAC,SAAI,WAAU,0BACb;AAAA,gCAAC,SAAM,SAAQ,gBAAe,WAAU,WAAU,4BAElD;AAAA,YACA;AAAA,cAAC;AAAA;AAAA,gBACC,IAAG;AAAA,gBACH,aAAY;AAAA,gBACZ;AAAA,gBACA,UAAU,CAAC,MAAM,SAAS,EAAE,OAAO,KAAK;AAAA;AAAA,YAC1C;AAAA,YACC,SACC;AAAA,cAAC;AAAA;AAAA,gBACC,MAAK;AAAA,gBACL,SAAS;AAAA,gBACT,WAAU;AAAA,gBACV,cAAW;AAAA,gBACZ;AAAA;AAAA,YAED;AAAA,aAEJ;AAAA,UACA,qBAAC,UAAO,MAAK,UAAS,WAAU,iBAC9B;AAAA;AAAA,cAAC;AAAA;AAAA,gBACC,WAAU;AAAA,gBACV,MAAK;AAAA,gBACL,SAAQ;AAAA,gBACR,OAAM;AAAA,gBACN,eAAY;AAAA,gBAEZ;AAAA,kBAAC;AAAA;AAAA,oBACC,UAAS;AAAA,oBACT,GAAE;AAAA,oBACF,UAAS;AAAA;AAAA,gBACX;AAAA;AAAA,YACF;AAAA,YAAM;AAAA,aAER;AAAA;AAAA;AAAA,IACF;AAAA,KACF,GACF;AAEJ;","names":[]}
1
+ {"version":3,"sources":["../../../components/flowbite/search-hero.tsx"],"sourcesContent":["'use client'\n\nimport { useState } from 'react'\nimport { Input } from '../ui/input'\nimport { Label } from '../ui/label'\nimport { Button } from '../ui/button'\n\ninterface SearchBarProps {\n onSearch: (query: string) => void\n}\n\nexport default function SearchBarDatepickerHeroSection({\n onSearch,\n}: SearchBarProps) {\n const [value, setValue] = useState('')\n\n function handleSubmit(e: React.FormEvent) {\n e.preventDefault()\n onSearch(value.trim())\n }\n\n function handleClear() {\n setValue('')\n onSearch('')\n }\n\n return (\n <section>\n <div className=\"z-1 max-w-(--breakpoint-xl) relative mx-auto px-4 py-8 text-gray-900 lg:py-16 xl:px-0 dark:text-white\">\n <div className=\"max-w-(--breakpoint-md) mb-6 lg:mb-0\">\n <h1 className=\"mb-4 text-4xl font-extrabold leading-tight tracking-tight text-gray-900 md:text-5xl lg:text-6xl dark:text-white\">\n Find your inspiration\n </h1>\n <p className=\"mb-6 text-gray-600 md:text-lg lg:mb-8 lg:text-xl dark:text-gray-300\">\n Peruse through our collection of public Story Bibles. Each guest\n account is allowed one public story. Subscribe to unlock private\n stories and other features.\n </p>\n <a\n href=\"/signin\"\n className=\"bg-primary-700 hover:bg-primary-800 focus:ring-primary-900 dark:bg-primary-600 dark:hover:bg-primary-700 dark:focus:ring-primary-800 focus:outline-hidden inline-flex items-center rounded-lg px-5 py-3 text-center font-medium text-white focus:ring-4\"\n >\n Sign In / Register\n </a>\n </div>\n <form\n onSubmit={handleSubmit}\n className=\"mt-8 grid w-full gap-y-4 rounded bg-white p-4 lg:mt-12 lg:grid-cols-9 lg:gap-x-4 dark:bg-gray-800\"\n >\n <div className=\"relative lg:col-span-4\">\n <Label htmlFor=\"story-search\" className=\"sr-only\">\n Search stories\n </Label>\n <Input\n id=\"story-search\"\n placeholder=\"Search stories by title or content\"\n value={value}\n onChange={(e) => setValue(e.target.value)}\n />\n {value && (\n <button\n type=\"button\"\n onClick={handleClear}\n className=\"absolute right-3 top-1/2 -translate-y-1/2 text-gray-400 hover:text-gray-600\"\n aria-label=\"Clear search\"\n >\n ✕\n </button>\n )}\n </div>\n <Button type=\"submit\" className=\"lg:col-span-2\">\n <svg\n className=\"-ml-1 mr-2 h-5 w-5\"\n fill=\"currentColor\"\n viewBox=\"0 0 20 20\"\n xmlns=\"http://www.w3.org/2000/svg\"\n aria-hidden=\"true\"\n >\n <path\n fillRule=\"evenodd\"\n d=\"M8 4a4 4 0 100 8 4 4 0 000-8zM2 8a6 6 0 1110.89 3.476l4.817 4.817a1 1 0 01-1.414 1.414l-4.816-4.816A6 6 0 012 8z\"\n clipRule=\"evenodd\"\n />\n </svg>\n Search\n </Button>\n </form>\n </div>\n </section>\n )\n}\n"],"mappings":";AA6BQ,SACE,KADF;AA3BR,SAAS,gBAAgB;AACzB,SAAS,aAAa;AACtB,SAAS,aAAa;AACtB,SAAS,cAAc;AAMR,SAAR,+BAAgD;AAAA,EACrD;AACF,GAAmB;AACjB,QAAM,CAAC,OAAO,QAAQ,IAAI,SAAS,EAAE;AAErC,WAAS,aAAa,GAAoB;AACxC,MAAE,eAAe;AACjB,aAAS,MAAM,KAAK,CAAC;AAAA,EACvB;AAEA,WAAS,cAAc;AACrB,aAAS,EAAE;AACX,aAAS,EAAE;AAAA,EACb;AAEA,SACE,oBAAC,aACC,+BAAC,SAAI,WAAU,yGACb;AAAA,yBAAC,SAAI,WAAU,wCACb;AAAA,0BAAC,QAAG,WAAU,mHAAkH,mCAEhI;AAAA,MACA,oBAAC,OAAE,WAAU,uEAAsE,2KAInF;AAAA,MACA;AAAA,QAAC;AAAA;AAAA,UACC,MAAK;AAAA,UACL,WAAU;AAAA,UACX;AAAA;AAAA,MAED;AAAA,OACF;AAAA,IACA;AAAA,MAAC;AAAA;AAAA,QACC,UAAU;AAAA,QACV,WAAU;AAAA,QAEV;AAAA,+BAAC,SAAI,WAAU,0BACb;AAAA,gCAAC,SAAM,SAAQ,gBAAe,WAAU,WAAU,4BAElD;AAAA,YACA;AAAA,cAAC;AAAA;AAAA,gBACC,IAAG;AAAA,gBACH,aAAY;AAAA,gBACZ;AAAA,gBACA,UAAU,CAAC,MAAM,SAAS,EAAE,OAAO,KAAK;AAAA;AAAA,YAC1C;AAAA,YACC,SACC;AAAA,cAAC;AAAA;AAAA,gBACC,MAAK;AAAA,gBACL,SAAS;AAAA,gBACT,WAAU;AAAA,gBACV,cAAW;AAAA,gBACZ;AAAA;AAAA,YAED;AAAA,aAEJ;AAAA,UACA,qBAAC,UAAO,MAAK,UAAS,WAAU,iBAC9B;AAAA;AAAA,cAAC;AAAA;AAAA,gBACC,WAAU;AAAA,gBACV,MAAK;AAAA,gBACL,SAAQ;AAAA,gBACR,OAAM;AAAA,gBACN,eAAY;AAAA,gBAEZ;AAAA,kBAAC;AAAA;AAAA,oBACC,UAAS;AAAA,oBACT,GAAE;AAAA,oBACF,UAAS;AAAA;AAAA,gBACX;AAAA;AAAA,YACF;AAAA,YAAM;AAAA,aAER;AAAA;AAAA;AAAA,IACF;AAAA,KACF,GACF;AAEJ;","names":[]}
@@ -1,8 +1,10 @@
1
1
  "use strict";
2
2
  "use client";
3
+ var __create = Object.create;
3
4
  var __defProp = Object.defineProperty;
4
5
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
6
  var __getOwnPropNames = Object.getOwnPropertyNames;
7
+ var __getProtoOf = Object.getPrototypeOf;
6
8
  var __hasOwnProp = Object.prototype.hasOwnProperty;
7
9
  var __export = (target, all) => {
8
10
  for (var name in all)
@@ -16,6 +18,14 @@ var __copyProps = (to, from, except, desc) => {
16
18
  }
17
19
  return to;
18
20
  };
21
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
22
+ // If the importer is in node compatibility mode or this is not an ESM
23
+ // file that has been converted to a CommonJS file using a Babel-
24
+ // compatible transform (i.e. "__esModule" has not been set), then set
25
+ // "default" to the CommonJS "module.exports" for node compatibility.
26
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
27
+ mod
28
+ ));
19
29
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
30
  var header_exports = {};
21
31
  __export(header_exports, {
@@ -26,9 +36,11 @@ var import_jsx_runtime = require("react/jsx-runtime");
26
36
  var import_react = require("react");
27
37
  var import_react2 = require("@headlessui/react");
28
38
  var import_outline = require("@heroicons/react/24/outline");
39
+ var import_link = __toESM(require("next/link"), 1);
29
40
  var import_logo = require("../icons/logo");
30
41
  var import_userbutton = require("./userbutton/userbutton");
31
42
  var import_langbutton = require("./langbutton/langbutton");
43
+ var import_nav_theme = require("../../lib/nav-theme");
32
44
  const Header = ({
33
45
  companyLink,
34
46
  companyName,
@@ -36,7 +48,8 @@ const Header = ({
36
48
  companyLogo,
37
49
  user,
38
50
  cookies,
39
- signOut
51
+ signOut,
52
+ navTheme = "auto"
40
53
  }) => {
41
54
  const [mobileMenuOpen, setMobileMenuOpen] = (0, import_react.useState)(false);
42
55
  return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("header", { className: "absolute inset-x-0 top-0 z-50", children: [
@@ -46,7 +59,7 @@ const Header = ({
46
59
  className: "flex items-center justify-between p-6 lg:px-8",
47
60
  "aria-label": "Global",
48
61
  children: [
49
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "flex lg:flex-1", children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("a", { href: companyLink, className: "-m-1.5 p-1.5", children: [
62
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "flex lg:flex-1", children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_link.default, { href: companyLink, className: "-m-1.5 p-1.5", children: [
50
63
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: "sr-only", children: companyName }),
51
64
  companyLogo
52
65
  ] }) }),
@@ -63,17 +76,17 @@ const Header = ({
63
76
  }
64
77
  ) }),
65
78
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "hidden lg:flex lg:gap-x-12", children: navigation.map((item) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
66
- "a",
79
+ import_link.default,
67
80
  {
68
81
  href: item.href,
69
82
  "data-tour": `nav-${item.name.toLowerCase()}`,
70
- className: "text-sm font-semibold leading-6 text-white",
83
+ className: `text-sm font-semibold leading-6 ${import_nav_theme.NAV_TEXT_CLASSES[navTheme]}`,
71
84
  children: item.name
72
85
  },
73
86
  item.name
74
87
  )) }),
75
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "hidden lg:flex lg:gap-x-12", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_langbutton.LangButton, { cookies }) }),
76
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "hidden lg:flex lg:flex-1 lg:justify-end", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_userbutton.UserButton, { user, signOut }) })
88
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "hidden lg:flex lg:gap-x-12", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_langbutton.LangButton, { cookies, navTheme }) }),
89
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "hidden lg:flex lg:flex-1 lg:justify-end", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_userbutton.UserButton, { user, signOut, navTheme }) })
77
90
  ]
78
91
  }
79
92
  ),
@@ -86,9 +99,9 @@ const Header = ({
86
99
  onClose: setMobileMenuOpen,
87
100
  children: [
88
101
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "fixed inset-0 z-50" }),
89
- /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_react2.Dialog.Panel, { className: "fixed inset-y-0 right-0 z-50 w-full overflow-y-auto bg-gray-900 px-6 py-6 sm:max-w-sm sm:ring-1 sm:ring-white/10", children: [
102
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_react2.Dialog.Panel, { className: "fixed inset-y-0 right-0 z-50 w-full overflow-y-auto bg-white px-6 py-6 sm:max-w-sm sm:ring-1 sm:ring-gray-900/10 dark:bg-gray-900 dark:sm:ring-white/10", children: [
90
103
  /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex items-center justify-between", children: [
91
- /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("a", { href: "#", className: "-m-1.5 p-1.5", children: [
104
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_link.default, { href: companyLink, className: "-m-1.5 p-1.5", children: [
92
105
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: "sr-only", children: companyName }),
93
106
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_logo.Logo, { className: "h-8 w-auto" })
94
107
  ] }),
@@ -107,10 +120,10 @@ const Header = ({
107
120
  ] }),
108
121
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "mt-6 flow-root", children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "-my-6 divide-y divide-gray-500/25", children: [
109
122
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "space-y-2 py-6", children: navigation.map((item) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
110
- "a",
123
+ import_link.default,
111
124
  {
112
125
  href: item.href,
113
- className: "-mx-3 block rounded-lg px-3 py-2 text-base font-semibold leading-7 text-white hover:bg-gray-800",
126
+ className: "-mx-3 block rounded-lg px-3 py-2 text-base font-semibold leading-7 text-gray-900 hover:bg-gray-100 dark:text-white dark:hover:bg-gray-800",
114
127
  children: item.name
115
128
  },
116
129
  item.name
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../components/header/header.tsx"],"sourcesContent":["'use client'\n\nimport { useState } from 'react'\n\nimport { Dialog } from '@headlessui/react'\nimport { Bars3Icon, XMarkIcon } from '@heroicons/react/24/outline'\nimport { Logo } from '../icons/logo'\nimport { UserButton } from './userbutton/userbutton'\nimport { LangButton } from './langbutton/langbutton'\nimport { User } from '@auth/core/types'\n\nexport const Header = ({\n companyLink,\n companyName,\n navigation,\n companyLogo,\n user,\n cookies,\n signOut,\n}: {\n companyLink: string\n companyName: string\n navigation: { name: string; href: string }[]\n companyLogo: React.ReactElement\n user: User\n cookies: string\n signOut: () => Promise<void>\n}) => {\n const [mobileMenuOpen, setMobileMenuOpen] = useState(false)\n\n return (\n <header className=\"absolute inset-x-0 top-0 z-50\">\n <nav\n className=\"flex items-center justify-between p-6 lg:px-8\"\n aria-label=\"Global\"\n >\n <div className=\"flex lg:flex-1\">\n <a href={companyLink} className=\"-m-1.5 p-1.5\">\n <span className=\"sr-only\">{companyName}</span>\n {companyLogo}\n </a>\n </div>\n <div className=\"flex lg:hidden\">\n <button\n type=\"button\"\n className=\"-m-2.5 inline-flex items-center justify-center rounded-md p-2.5 text-gray-400\"\n onClick={() => setMobileMenuOpen(true)}\n >\n <span className=\"sr-only\">Open main menu</span>\n <Bars3Icon className=\"h-6 w-6\" aria-hidden=\"true\" />\n </button>\n </div>\n <div className=\"hidden lg:flex lg:gap-x-12\">\n {navigation.map((item) => (\n <a\n key={item.name}\n href={item.href}\n data-tour={`nav-${item.name.toLowerCase()}`}\n className=\"text-sm font-semibold leading-6 text-white\"\n >\n {item.name}\n </a>\n ))}\n </div>\n <div className=\"hidden lg:flex lg:gap-x-12\">\n <LangButton cookies={cookies} />\n </div>\n <div className=\"hidden lg:flex lg:flex-1 lg:justify-end\">\n <UserButton user={user} signOut={signOut} />\n </div>\n </nav>\n <Dialog\n as=\"div\"\n className=\"lg:hidden\"\n open={mobileMenuOpen}\n onClose={setMobileMenuOpen}\n >\n <div className=\"fixed inset-0 z-50\" />\n <Dialog.Panel className=\"fixed inset-y-0 right-0 z-50 w-full overflow-y-auto bg-gray-900 px-6 py-6 sm:max-w-sm sm:ring-1 sm:ring-white/10\">\n <div className=\"flex items-center justify-between\">\n <a href=\"#\" className=\"-m-1.5 p-1.5\">\n <span className=\"sr-only\">{companyName}</span>\n <Logo className=\"h-8 w-auto\" />\n </a>\n <button\n type=\"button\"\n className=\"-m-2.5 rounded-md p-2.5 text-gray-400\"\n onClick={() => setMobileMenuOpen(false)}\n >\n <span className=\"sr-only\">Close menu</span>\n <XMarkIcon className=\"h-6 w-6\" aria-hidden=\"true\" />\n </button>\n </div>\n <div className=\"mt-6 flow-root\">\n <div className=\"-my-6 divide-y divide-gray-500/25\">\n <div className=\"space-y-2 py-6\">\n {navigation.map((item) => (\n <a\n key={item.name}\n href={item.href}\n className=\"-mx-3 block rounded-lg px-3 py-2 text-base font-semibold leading-7 text-white hover:bg-gray-800\"\n >\n {item.name}\n </a>\n ))}\n </div>\n <div className=\"py-6\">\n <UserButton user={user} signOut={signOut} />\n </div>\n </div>\n </div>\n </Dialog.Panel>\n </Dialog>\n </header>\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAqCU;AAnCV,mBAAyB;AAEzB,IAAAA,gBAAuB;AACvB,qBAAqC;AACrC,kBAAqB;AACrB,wBAA2B;AAC3B,wBAA2B;AAGpB,MAAM,SAAS,CAAC;AAAA,EACrB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MAQM;AACJ,QAAM,CAAC,gBAAgB,iBAAiB,QAAI,uBAAS,KAAK;AAE1D,SACE,6CAAC,YAAO,WAAU,iCAChB;AAAA;AAAA,MAAC;AAAA;AAAA,QACC,WAAU;AAAA,QACV,cAAW;AAAA,QAEX;AAAA,sDAAC,SAAI,WAAU,kBACb,uDAAC,OAAE,MAAM,aAAa,WAAU,gBAC9B;AAAA,wDAAC,UAAK,WAAU,WAAW,uBAAY;AAAA,YACtC;AAAA,aACH,GACF;AAAA,UACA,4CAAC,SAAI,WAAU,kBACb;AAAA,YAAC;AAAA;AAAA,cACC,MAAK;AAAA,cACL,WAAU;AAAA,cACV,SAAS,MAAM,kBAAkB,IAAI;AAAA,cAErC;AAAA,4DAAC,UAAK,WAAU,WAAU,4BAAc;AAAA,gBACxC,4CAAC,4BAAU,WAAU,WAAU,eAAY,QAAO;AAAA;AAAA;AAAA,UACpD,GACF;AAAA,UACA,4CAAC,SAAI,WAAU,8BACZ,qBAAW,IAAI,CAAC,SACf;AAAA,YAAC;AAAA;AAAA,cAEC,MAAM,KAAK;AAAA,cACX,aAAW,OAAO,KAAK,KAAK,YAAY,CAAC;AAAA,cACzC,WAAU;AAAA,cAET,eAAK;AAAA;AAAA,YALD,KAAK;AAAA,UAMZ,CACD,GACH;AAAA,UACA,4CAAC,SAAI,WAAU,8BACb,sDAAC,gCAAW,SAAkB,GAChC;AAAA,UACA,4CAAC,SAAI,WAAU,2CACb,sDAAC,gCAAW,MAAY,SAAkB,GAC5C;AAAA;AAAA;AAAA,IACF;AAAA,IACA;AAAA,MAAC;AAAA;AAAA,QACC,IAAG;AAAA,QACH,WAAU;AAAA,QACV,MAAM;AAAA,QACN,SAAS;AAAA,QAET;AAAA,sDAAC,SAAI,WAAU,sBAAqB;AAAA,UACpC,6CAAC,qBAAO,OAAP,EAAa,WAAU,oHACtB;AAAA,yDAAC,SAAI,WAAU,qCACb;AAAA,2DAAC,OAAE,MAAK,KAAI,WAAU,gBACpB;AAAA,4DAAC,UAAK,WAAU,WAAW,uBAAY;AAAA,gBACvC,4CAAC,oBAAK,WAAU,cAAa;AAAA,iBAC/B;AAAA,cACA;AAAA,gBAAC;AAAA;AAAA,kBACC,MAAK;AAAA,kBACL,WAAU;AAAA,kBACV,SAAS,MAAM,kBAAkB,KAAK;AAAA,kBAEtC;AAAA,gEAAC,UAAK,WAAU,WAAU,wBAAU;AAAA,oBACpC,4CAAC,4BAAU,WAAU,WAAU,eAAY,QAAO;AAAA;AAAA;AAAA,cACpD;AAAA,eACF;AAAA,YACA,4CAAC,SAAI,WAAU,kBACb,uDAAC,SAAI,WAAU,qCACb;AAAA,0DAAC,SAAI,WAAU,kBACZ,qBAAW,IAAI,CAAC,SACf;AAAA,gBAAC;AAAA;AAAA,kBAEC,MAAM,KAAK;AAAA,kBACX,WAAU;AAAA,kBAET,eAAK;AAAA;AAAA,gBAJD,KAAK;AAAA,cAKZ,CACD,GACH;AAAA,cACA,4CAAC,SAAI,WAAU,QACb,sDAAC,gCAAW,MAAY,SAAkB,GAC5C;AAAA,eACF,GACF;AAAA,aACF;AAAA;AAAA;AAAA,IACF;AAAA,KACF;AAEJ;","names":["import_react"]}
1
+ {"version":3,"sources":["../../../components/header/header.tsx"],"sourcesContent":["\"use client\";\n\nimport { useState } from \"react\";\n\nimport { Dialog } from \"@headlessui/react\";\nimport { Bars3Icon, XMarkIcon } from \"@heroicons/react/24/outline\";\nimport Link from \"next/link\";\nimport { Logo } from \"../icons/logo\";\nimport { UserButton } from \"./userbutton/userbutton\";\nimport { LangButton } from \"./langbutton/langbutton\";\nimport { User } from \"@auth/core/types\";\nimport { NAV_TEXT_CLASSES, NavTheme } from \"../../lib/nav-theme\";\n\nexport type { NavTheme };\n\nexport const Header = ({\n companyLink,\n companyName,\n navigation,\n companyLogo,\n user,\n cookies,\n signOut,\n navTheme = \"auto\",\n}: {\n companyLink: string;\n companyName: string;\n navigation: { name: string; href: string }[];\n companyLogo: React.ReactElement;\n user: User;\n cookies: string;\n signOut: () => Promise<void>;\n navTheme?: NavTheme;\n}) => {\n const [mobileMenuOpen, setMobileMenuOpen] = useState(false);\n\n return (\n <header className=\"absolute inset-x-0 top-0 z-50\">\n <nav\n className=\"flex items-center justify-between p-6 lg:px-8\"\n aria-label=\"Global\"\n >\n <div className=\"flex lg:flex-1\">\n <Link href={companyLink} className=\"-m-1.5 p-1.5\">\n <span className=\"sr-only\">{companyName}</span>\n {companyLogo}\n </Link>\n </div>\n <div className=\"flex lg:hidden\">\n <button\n type=\"button\"\n className=\"-m-2.5 inline-flex items-center justify-center rounded-md p-2.5 text-gray-400\"\n onClick={() => setMobileMenuOpen(true)}\n >\n <span className=\"sr-only\">Open main menu</span>\n <Bars3Icon className=\"h-6 w-6\" aria-hidden=\"true\" />\n </button>\n </div>\n <div className=\"hidden lg:flex lg:gap-x-12\">\n {navigation.map((item) => (\n <Link\n key={item.name}\n href={item.href}\n data-tour={`nav-${item.name.toLowerCase()}`}\n className={`text-sm font-semibold leading-6 ${NAV_TEXT_CLASSES[navTheme]}`}\n >\n {item.name}\n </Link>\n ))}\n </div>\n <div className=\"hidden lg:flex lg:gap-x-12\">\n <LangButton cookies={cookies} navTheme={navTheme} />\n </div>\n <div className=\"hidden lg:flex lg:flex-1 lg:justify-end\">\n <UserButton user={user} signOut={signOut} navTheme={navTheme} />\n </div>\n </nav>\n <Dialog\n as=\"div\"\n className=\"lg:hidden\"\n open={mobileMenuOpen}\n onClose={setMobileMenuOpen}\n >\n <div className=\"fixed inset-0 z-50\" />\n <Dialog.Panel className=\"fixed inset-y-0 right-0 z-50 w-full overflow-y-auto bg-white px-6 py-6 sm:max-w-sm sm:ring-1 sm:ring-gray-900/10 dark:bg-gray-900 dark:sm:ring-white/10\">\n <div className=\"flex items-center justify-between\">\n <Link href={companyLink} className=\"-m-1.5 p-1.5\">\n <span className=\"sr-only\">{companyName}</span>\n <Logo className=\"h-8 w-auto\" />\n </Link>\n <button\n type=\"button\"\n className=\"-m-2.5 rounded-md p-2.5 text-gray-400\"\n onClick={() => setMobileMenuOpen(false)}\n >\n <span className=\"sr-only\">Close menu</span>\n <XMarkIcon className=\"h-6 w-6\" aria-hidden=\"true\" />\n </button>\n </div>\n <div className=\"mt-6 flow-root\">\n <div className=\"-my-6 divide-y divide-gray-500/25\">\n <div className=\"space-y-2 py-6\">\n {navigation.map((item) => (\n <Link\n key={item.name}\n href={item.href}\n className=\"-mx-3 block rounded-lg px-3 py-2 text-base font-semibold leading-7 text-gray-900 hover:bg-gray-100 dark:text-white dark:hover:bg-gray-800\"\n >\n {item.name}\n </Link>\n ))}\n </div>\n <div className=\"py-6\">\n <UserButton user={user} signOut={signOut} />\n </div>\n </div>\n </div>\n </Dialog.Panel>\n </Dialog>\n </header>\n );\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AA2CU;AAzCV,mBAAyB;AAEzB,IAAAA,gBAAuB;AACvB,qBAAqC;AACrC,kBAAiB;AACjB,kBAAqB;AACrB,wBAA2B;AAC3B,wBAA2B;AAE3B,uBAA2C;AAIpC,MAAM,SAAS,CAAC;AAAA,EACrB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,WAAW;AACb,MASM;AACJ,QAAM,CAAC,gBAAgB,iBAAiB,QAAI,uBAAS,KAAK;AAE1D,SACE,6CAAC,YAAO,WAAU,iCAChB;AAAA;AAAA,MAAC;AAAA;AAAA,QACC,WAAU;AAAA,QACV,cAAW;AAAA,QAEX;AAAA,sDAAC,SAAI,WAAU,kBACb,uDAAC,YAAAC,SAAA,EAAK,MAAM,aAAa,WAAU,gBACjC;AAAA,wDAAC,UAAK,WAAU,WAAW,uBAAY;AAAA,YACtC;AAAA,aACH,GACF;AAAA,UACA,4CAAC,SAAI,WAAU,kBACb;AAAA,YAAC;AAAA;AAAA,cACC,MAAK;AAAA,cACL,WAAU;AAAA,cACV,SAAS,MAAM,kBAAkB,IAAI;AAAA,cAErC;AAAA,4DAAC,UAAK,WAAU,WAAU,4BAAc;AAAA,gBACxC,4CAAC,4BAAU,WAAU,WAAU,eAAY,QAAO;AAAA;AAAA;AAAA,UACpD,GACF;AAAA,UACA,4CAAC,SAAI,WAAU,8BACZ,qBAAW,IAAI,CAAC,SACf;AAAA,YAAC,YAAAA;AAAA,YAAA;AAAA,cAEC,MAAM,KAAK;AAAA,cACX,aAAW,OAAO,KAAK,KAAK,YAAY,CAAC;AAAA,cACzC,WAAW,mCAAmC,kCAAiB,QAAQ,CAAC;AAAA,cAEvE,eAAK;AAAA;AAAA,YALD,KAAK;AAAA,UAMZ,CACD,GACH;AAAA,UACA,4CAAC,SAAI,WAAU,8BACb,sDAAC,gCAAW,SAAkB,UAAoB,GACpD;AAAA,UACA,4CAAC,SAAI,WAAU,2CACb,sDAAC,gCAAW,MAAY,SAAkB,UAAoB,GAChE;AAAA;AAAA;AAAA,IACF;AAAA,IACA;AAAA,MAAC;AAAA;AAAA,QACC,IAAG;AAAA,QACH,WAAU;AAAA,QACV,MAAM;AAAA,QACN,SAAS;AAAA,QAET;AAAA,sDAAC,SAAI,WAAU,sBAAqB;AAAA,UACpC,6CAAC,qBAAO,OAAP,EAAa,WAAU,2JACtB;AAAA,yDAAC,SAAI,WAAU,qCACb;AAAA,2DAAC,YAAAA,SAAA,EAAK,MAAM,aAAa,WAAU,gBACjC;AAAA,4DAAC,UAAK,WAAU,WAAW,uBAAY;AAAA,gBACvC,4CAAC,oBAAK,WAAU,cAAa;AAAA,iBAC/B;AAAA,cACA;AAAA,gBAAC;AAAA;AAAA,kBACC,MAAK;AAAA,kBACL,WAAU;AAAA,kBACV,SAAS,MAAM,kBAAkB,KAAK;AAAA,kBAEtC;AAAA,gEAAC,UAAK,WAAU,WAAU,wBAAU;AAAA,oBACpC,4CAAC,4BAAU,WAAU,WAAU,eAAY,QAAO;AAAA;AAAA;AAAA,cACpD;AAAA,eACF;AAAA,YACA,4CAAC,SAAI,WAAU,kBACb,uDAAC,SAAI,WAAU,qCACb;AAAA,0DAAC,SAAI,WAAU,kBACZ,qBAAW,IAAI,CAAC,SACf;AAAA,gBAAC,YAAAA;AAAA,gBAAA;AAAA,kBAEC,MAAM,KAAK;AAAA,kBACX,WAAU;AAAA,kBAET,eAAK;AAAA;AAAA,gBAJD,KAAK;AAAA,cAKZ,CACD,GACH;AAAA,cACA,4CAAC,SAAI,WAAU,QACb,sDAAC,gCAAW,MAAY,SAAkB,GAC5C;AAAA,eACF,GACF;AAAA,aACF;AAAA;AAAA;AAAA,IACF;AAAA,KACF;AAEJ;","names":["import_react","Link"]}
@@ -1,5 +1,7 @@
1
- import { User } from '@auth/core/types';
2
- export declare const Header: ({ companyLink, companyName, navigation, companyLogo, user, cookies, signOut, }: {
1
+ import { User } from "@auth/core/types";
2
+ import { NavTheme } from "../../lib/nav-theme";
3
+ export type { NavTheme };
4
+ export declare const Header: ({ companyLink, companyName, navigation, companyLogo, user, cookies, signOut, navTheme, }: {
3
5
  companyLink: string;
4
6
  companyName: string;
5
7
  navigation: {
@@ -10,5 +12,6 @@ export declare const Header: ({ companyLink, companyName, navigation, companyLog
10
12
  user: User;
11
13
  cookies: string;
12
14
  signOut: () => Promise<void>;
15
+ navTheme?: NavTheme;
13
16
  }) => import("react").JSX.Element;
14
17
  //# sourceMappingURL=header.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"header.d.ts","sourceRoot":"","sources":["../../../components/header/header.tsx"],"names":[],"mappings":"AASA,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAA;AAEvC,eAAO,MAAM,MAAM,GAAI,gFAQpB;IACD,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB,UAAU,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;IAC5C,WAAW,EAAE,KAAK,CAAC,YAAY,CAAA;IAC/B,IAAI,EAAE,IAAI,CAAA;IACV,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAC7B,gCAwFA,CAAA"}
1
+ {"version":3,"file":"header.d.ts","sourceRoot":"","sources":["../../../components/header/header.tsx"],"names":[],"mappings":"AAUA,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACxC,OAAO,EAAoB,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAEjE,YAAY,EAAE,QAAQ,EAAE,CAAC;AAEzB,eAAO,MAAM,MAAM,GAAI,0FASpB;IACD,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAC7C,WAAW,EAAE,KAAK,CAAC,YAAY,CAAC;IAChC,IAAI,EAAE,IAAI,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB,gCAwFA,CAAC"}
@@ -3,9 +3,11 @@ import { jsx, jsxs } from "react/jsx-runtime";
3
3
  import { useState } from "react";
4
4
  import { Dialog } from "@headlessui/react";
5
5
  import { Bars3Icon, XMarkIcon } from "@heroicons/react/24/outline";
6
+ import Link from "next/link";
6
7
  import { Logo } from "../icons/logo";
7
8
  import { UserButton } from "./userbutton/userbutton";
8
9
  import { LangButton } from "./langbutton/langbutton";
10
+ import { NAV_TEXT_CLASSES } from "../../lib/nav-theme";
9
11
  const Header = ({
10
12
  companyLink,
11
13
  companyName,
@@ -13,7 +15,8 @@ const Header = ({
13
15
  companyLogo,
14
16
  user,
15
17
  cookies,
16
- signOut
18
+ signOut,
19
+ navTheme = "auto"
17
20
  }) => {
18
21
  const [mobileMenuOpen, setMobileMenuOpen] = useState(false);
19
22
  return /* @__PURE__ */ jsxs("header", { className: "absolute inset-x-0 top-0 z-50", children: [
@@ -23,7 +26,7 @@ const Header = ({
23
26
  className: "flex items-center justify-between p-6 lg:px-8",
24
27
  "aria-label": "Global",
25
28
  children: [
26
- /* @__PURE__ */ jsx("div", { className: "flex lg:flex-1", children: /* @__PURE__ */ jsxs("a", { href: companyLink, className: "-m-1.5 p-1.5", children: [
29
+ /* @__PURE__ */ jsx("div", { className: "flex lg:flex-1", children: /* @__PURE__ */ jsxs(Link, { href: companyLink, className: "-m-1.5 p-1.5", children: [
27
30
  /* @__PURE__ */ jsx("span", { className: "sr-only", children: companyName }),
28
31
  companyLogo
29
32
  ] }) }),
@@ -40,17 +43,17 @@ const Header = ({
40
43
  }
41
44
  ) }),
42
45
  /* @__PURE__ */ jsx("div", { className: "hidden lg:flex lg:gap-x-12", children: navigation.map((item) => /* @__PURE__ */ jsx(
43
- "a",
46
+ Link,
44
47
  {
45
48
  href: item.href,
46
49
  "data-tour": `nav-${item.name.toLowerCase()}`,
47
- className: "text-sm font-semibold leading-6 text-white",
50
+ className: `text-sm font-semibold leading-6 ${NAV_TEXT_CLASSES[navTheme]}`,
48
51
  children: item.name
49
52
  },
50
53
  item.name
51
54
  )) }),
52
- /* @__PURE__ */ jsx("div", { className: "hidden lg:flex lg:gap-x-12", children: /* @__PURE__ */ jsx(LangButton, { cookies }) }),
53
- /* @__PURE__ */ jsx("div", { className: "hidden lg:flex lg:flex-1 lg:justify-end", children: /* @__PURE__ */ jsx(UserButton, { user, signOut }) })
55
+ /* @__PURE__ */ jsx("div", { className: "hidden lg:flex lg:gap-x-12", children: /* @__PURE__ */ jsx(LangButton, { cookies, navTheme }) }),
56
+ /* @__PURE__ */ jsx("div", { className: "hidden lg:flex lg:flex-1 lg:justify-end", children: /* @__PURE__ */ jsx(UserButton, { user, signOut, navTheme }) })
54
57
  ]
55
58
  }
56
59
  ),
@@ -63,9 +66,9 @@ const Header = ({
63
66
  onClose: setMobileMenuOpen,
64
67
  children: [
65
68
  /* @__PURE__ */ jsx("div", { className: "fixed inset-0 z-50" }),
66
- /* @__PURE__ */ jsxs(Dialog.Panel, { className: "fixed inset-y-0 right-0 z-50 w-full overflow-y-auto bg-gray-900 px-6 py-6 sm:max-w-sm sm:ring-1 sm:ring-white/10", children: [
69
+ /* @__PURE__ */ jsxs(Dialog.Panel, { className: "fixed inset-y-0 right-0 z-50 w-full overflow-y-auto bg-white px-6 py-6 sm:max-w-sm sm:ring-1 sm:ring-gray-900/10 dark:bg-gray-900 dark:sm:ring-white/10", children: [
67
70
  /* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between", children: [
68
- /* @__PURE__ */ jsxs("a", { href: "#", className: "-m-1.5 p-1.5", children: [
71
+ /* @__PURE__ */ jsxs(Link, { href: companyLink, className: "-m-1.5 p-1.5", children: [
69
72
  /* @__PURE__ */ jsx("span", { className: "sr-only", children: companyName }),
70
73
  /* @__PURE__ */ jsx(Logo, { className: "h-8 w-auto" })
71
74
  ] }),
@@ -84,10 +87,10 @@ const Header = ({
84
87
  ] }),
85
88
  /* @__PURE__ */ jsx("div", { className: "mt-6 flow-root", children: /* @__PURE__ */ jsxs("div", { className: "-my-6 divide-y divide-gray-500/25", children: [
86
89
  /* @__PURE__ */ jsx("div", { className: "space-y-2 py-6", children: navigation.map((item) => /* @__PURE__ */ jsx(
87
- "a",
90
+ Link,
88
91
  {
89
92
  href: item.href,
90
- className: "-mx-3 block rounded-lg px-3 py-2 text-base font-semibold leading-7 text-white hover:bg-gray-800",
93
+ className: "-mx-3 block rounded-lg px-3 py-2 text-base font-semibold leading-7 text-gray-900 hover:bg-gray-100 dark:text-white dark:hover:bg-gray-800",
91
94
  children: item.name
92
95
  },
93
96
  item.name
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../components/header/header.tsx"],"sourcesContent":["'use client'\n\nimport { useState } from 'react'\n\nimport { Dialog } from '@headlessui/react'\nimport { Bars3Icon, XMarkIcon } from '@heroicons/react/24/outline'\nimport { Logo } from '../icons/logo'\nimport { UserButton } from './userbutton/userbutton'\nimport { LangButton } from './langbutton/langbutton'\nimport { User } from '@auth/core/types'\n\nexport const Header = ({\n companyLink,\n companyName,\n navigation,\n companyLogo,\n user,\n cookies,\n signOut,\n}: {\n companyLink: string\n companyName: string\n navigation: { name: string; href: string }[]\n companyLogo: React.ReactElement\n user: User\n cookies: string\n signOut: () => Promise<void>\n}) => {\n const [mobileMenuOpen, setMobileMenuOpen] = useState(false)\n\n return (\n <header className=\"absolute inset-x-0 top-0 z-50\">\n <nav\n className=\"flex items-center justify-between p-6 lg:px-8\"\n aria-label=\"Global\"\n >\n <div className=\"flex lg:flex-1\">\n <a href={companyLink} className=\"-m-1.5 p-1.5\">\n <span className=\"sr-only\">{companyName}</span>\n {companyLogo}\n </a>\n </div>\n <div className=\"flex lg:hidden\">\n <button\n type=\"button\"\n className=\"-m-2.5 inline-flex items-center justify-center rounded-md p-2.5 text-gray-400\"\n onClick={() => setMobileMenuOpen(true)}\n >\n <span className=\"sr-only\">Open main menu</span>\n <Bars3Icon className=\"h-6 w-6\" aria-hidden=\"true\" />\n </button>\n </div>\n <div className=\"hidden lg:flex lg:gap-x-12\">\n {navigation.map((item) => (\n <a\n key={item.name}\n href={item.href}\n data-tour={`nav-${item.name.toLowerCase()}`}\n className=\"text-sm font-semibold leading-6 text-white\"\n >\n {item.name}\n </a>\n ))}\n </div>\n <div className=\"hidden lg:flex lg:gap-x-12\">\n <LangButton cookies={cookies} />\n </div>\n <div className=\"hidden lg:flex lg:flex-1 lg:justify-end\">\n <UserButton user={user} signOut={signOut} />\n </div>\n </nav>\n <Dialog\n as=\"div\"\n className=\"lg:hidden\"\n open={mobileMenuOpen}\n onClose={setMobileMenuOpen}\n >\n <div className=\"fixed inset-0 z-50\" />\n <Dialog.Panel className=\"fixed inset-y-0 right-0 z-50 w-full overflow-y-auto bg-gray-900 px-6 py-6 sm:max-w-sm sm:ring-1 sm:ring-white/10\">\n <div className=\"flex items-center justify-between\">\n <a href=\"#\" className=\"-m-1.5 p-1.5\">\n <span className=\"sr-only\">{companyName}</span>\n <Logo className=\"h-8 w-auto\" />\n </a>\n <button\n type=\"button\"\n className=\"-m-2.5 rounded-md p-2.5 text-gray-400\"\n onClick={() => setMobileMenuOpen(false)}\n >\n <span className=\"sr-only\">Close menu</span>\n <XMarkIcon className=\"h-6 w-6\" aria-hidden=\"true\" />\n </button>\n </div>\n <div className=\"mt-6 flow-root\">\n <div className=\"-my-6 divide-y divide-gray-500/25\">\n <div className=\"space-y-2 py-6\">\n {navigation.map((item) => (\n <a\n key={item.name}\n href={item.href}\n className=\"-mx-3 block rounded-lg px-3 py-2 text-base font-semibold leading-7 text-white hover:bg-gray-800\"\n >\n {item.name}\n </a>\n ))}\n </div>\n <div className=\"py-6\">\n <UserButton user={user} signOut={signOut} />\n </div>\n </div>\n </div>\n </Dialog.Panel>\n </Dialog>\n </header>\n )\n}\n"],"mappings":";AAqCU,SACE,KADF;AAnCV,SAAS,gBAAgB;AAEzB,SAAS,cAAc;AACvB,SAAS,WAAW,iBAAiB;AACrC,SAAS,YAAY;AACrB,SAAS,kBAAkB;AAC3B,SAAS,kBAAkB;AAGpB,MAAM,SAAS,CAAC;AAAA,EACrB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MAQM;AACJ,QAAM,CAAC,gBAAgB,iBAAiB,IAAI,SAAS,KAAK;AAE1D,SACE,qBAAC,YAAO,WAAU,iCAChB;AAAA;AAAA,MAAC;AAAA;AAAA,QACC,WAAU;AAAA,QACV,cAAW;AAAA,QAEX;AAAA,8BAAC,SAAI,WAAU,kBACb,+BAAC,OAAE,MAAM,aAAa,WAAU,gBAC9B;AAAA,gCAAC,UAAK,WAAU,WAAW,uBAAY;AAAA,YACtC;AAAA,aACH,GACF;AAAA,UACA,oBAAC,SAAI,WAAU,kBACb;AAAA,YAAC;AAAA;AAAA,cACC,MAAK;AAAA,cACL,WAAU;AAAA,cACV,SAAS,MAAM,kBAAkB,IAAI;AAAA,cAErC;AAAA,oCAAC,UAAK,WAAU,WAAU,4BAAc;AAAA,gBACxC,oBAAC,aAAU,WAAU,WAAU,eAAY,QAAO;AAAA;AAAA;AAAA,UACpD,GACF;AAAA,UACA,oBAAC,SAAI,WAAU,8BACZ,qBAAW,IAAI,CAAC,SACf;AAAA,YAAC;AAAA;AAAA,cAEC,MAAM,KAAK;AAAA,cACX,aAAW,OAAO,KAAK,KAAK,YAAY,CAAC;AAAA,cACzC,WAAU;AAAA,cAET,eAAK;AAAA;AAAA,YALD,KAAK;AAAA,UAMZ,CACD,GACH;AAAA,UACA,oBAAC,SAAI,WAAU,8BACb,8BAAC,cAAW,SAAkB,GAChC;AAAA,UACA,oBAAC,SAAI,WAAU,2CACb,8BAAC,cAAW,MAAY,SAAkB,GAC5C;AAAA;AAAA;AAAA,IACF;AAAA,IACA;AAAA,MAAC;AAAA;AAAA,QACC,IAAG;AAAA,QACH,WAAU;AAAA,QACV,MAAM;AAAA,QACN,SAAS;AAAA,QAET;AAAA,8BAAC,SAAI,WAAU,sBAAqB;AAAA,UACpC,qBAAC,OAAO,OAAP,EAAa,WAAU,oHACtB;AAAA,iCAAC,SAAI,WAAU,qCACb;AAAA,mCAAC,OAAE,MAAK,KAAI,WAAU,gBACpB;AAAA,oCAAC,UAAK,WAAU,WAAW,uBAAY;AAAA,gBACvC,oBAAC,QAAK,WAAU,cAAa;AAAA,iBAC/B;AAAA,cACA;AAAA,gBAAC;AAAA;AAAA,kBACC,MAAK;AAAA,kBACL,WAAU;AAAA,kBACV,SAAS,MAAM,kBAAkB,KAAK;AAAA,kBAEtC;AAAA,wCAAC,UAAK,WAAU,WAAU,wBAAU;AAAA,oBACpC,oBAAC,aAAU,WAAU,WAAU,eAAY,QAAO;AAAA;AAAA;AAAA,cACpD;AAAA,eACF;AAAA,YACA,oBAAC,SAAI,WAAU,kBACb,+BAAC,SAAI,WAAU,qCACb;AAAA,kCAAC,SAAI,WAAU,kBACZ,qBAAW,IAAI,CAAC,SACf;AAAA,gBAAC;AAAA;AAAA,kBAEC,MAAM,KAAK;AAAA,kBACX,WAAU;AAAA,kBAET,eAAK;AAAA;AAAA,gBAJD,KAAK;AAAA,cAKZ,CACD,GACH;AAAA,cACA,oBAAC,SAAI,WAAU,QACb,8BAAC,cAAW,MAAY,SAAkB,GAC5C;AAAA,eACF,GACF;AAAA,aACF;AAAA;AAAA;AAAA,IACF;AAAA,KACF;AAEJ;","names":[]}
1
+ {"version":3,"sources":["../../../components/header/header.tsx"],"sourcesContent":["\"use client\";\n\nimport { useState } from \"react\";\n\nimport { Dialog } from \"@headlessui/react\";\nimport { Bars3Icon, XMarkIcon } from \"@heroicons/react/24/outline\";\nimport Link from \"next/link\";\nimport { Logo } from \"../icons/logo\";\nimport { UserButton } from \"./userbutton/userbutton\";\nimport { LangButton } from \"./langbutton/langbutton\";\nimport { User } from \"@auth/core/types\";\nimport { NAV_TEXT_CLASSES, NavTheme } from \"../../lib/nav-theme\";\n\nexport type { NavTheme };\n\nexport const Header = ({\n companyLink,\n companyName,\n navigation,\n companyLogo,\n user,\n cookies,\n signOut,\n navTheme = \"auto\",\n}: {\n companyLink: string;\n companyName: string;\n navigation: { name: string; href: string }[];\n companyLogo: React.ReactElement;\n user: User;\n cookies: string;\n signOut: () => Promise<void>;\n navTheme?: NavTheme;\n}) => {\n const [mobileMenuOpen, setMobileMenuOpen] = useState(false);\n\n return (\n <header className=\"absolute inset-x-0 top-0 z-50\">\n <nav\n className=\"flex items-center justify-between p-6 lg:px-8\"\n aria-label=\"Global\"\n >\n <div className=\"flex lg:flex-1\">\n <Link href={companyLink} className=\"-m-1.5 p-1.5\">\n <span className=\"sr-only\">{companyName}</span>\n {companyLogo}\n </Link>\n </div>\n <div className=\"flex lg:hidden\">\n <button\n type=\"button\"\n className=\"-m-2.5 inline-flex items-center justify-center rounded-md p-2.5 text-gray-400\"\n onClick={() => setMobileMenuOpen(true)}\n >\n <span className=\"sr-only\">Open main menu</span>\n <Bars3Icon className=\"h-6 w-6\" aria-hidden=\"true\" />\n </button>\n </div>\n <div className=\"hidden lg:flex lg:gap-x-12\">\n {navigation.map((item) => (\n <Link\n key={item.name}\n href={item.href}\n data-tour={`nav-${item.name.toLowerCase()}`}\n className={`text-sm font-semibold leading-6 ${NAV_TEXT_CLASSES[navTheme]}`}\n >\n {item.name}\n </Link>\n ))}\n </div>\n <div className=\"hidden lg:flex lg:gap-x-12\">\n <LangButton cookies={cookies} navTheme={navTheme} />\n </div>\n <div className=\"hidden lg:flex lg:flex-1 lg:justify-end\">\n <UserButton user={user} signOut={signOut} navTheme={navTheme} />\n </div>\n </nav>\n <Dialog\n as=\"div\"\n className=\"lg:hidden\"\n open={mobileMenuOpen}\n onClose={setMobileMenuOpen}\n >\n <div className=\"fixed inset-0 z-50\" />\n <Dialog.Panel className=\"fixed inset-y-0 right-0 z-50 w-full overflow-y-auto bg-white px-6 py-6 sm:max-w-sm sm:ring-1 sm:ring-gray-900/10 dark:bg-gray-900 dark:sm:ring-white/10\">\n <div className=\"flex items-center justify-between\">\n <Link href={companyLink} className=\"-m-1.5 p-1.5\">\n <span className=\"sr-only\">{companyName}</span>\n <Logo className=\"h-8 w-auto\" />\n </Link>\n <button\n type=\"button\"\n className=\"-m-2.5 rounded-md p-2.5 text-gray-400\"\n onClick={() => setMobileMenuOpen(false)}\n >\n <span className=\"sr-only\">Close menu</span>\n <XMarkIcon className=\"h-6 w-6\" aria-hidden=\"true\" />\n </button>\n </div>\n <div className=\"mt-6 flow-root\">\n <div className=\"-my-6 divide-y divide-gray-500/25\">\n <div className=\"space-y-2 py-6\">\n {navigation.map((item) => (\n <Link\n key={item.name}\n href={item.href}\n className=\"-mx-3 block rounded-lg px-3 py-2 text-base font-semibold leading-7 text-gray-900 hover:bg-gray-100 dark:text-white dark:hover:bg-gray-800\"\n >\n {item.name}\n </Link>\n ))}\n </div>\n <div className=\"py-6\">\n <UserButton user={user} signOut={signOut} />\n </div>\n </div>\n </div>\n </Dialog.Panel>\n </Dialog>\n </header>\n );\n};\n"],"mappings":";AA2CU,SACE,KADF;AAzCV,SAAS,gBAAgB;AAEzB,SAAS,cAAc;AACvB,SAAS,WAAW,iBAAiB;AACrC,OAAO,UAAU;AACjB,SAAS,YAAY;AACrB,SAAS,kBAAkB;AAC3B,SAAS,kBAAkB;AAE3B,SAAS,wBAAkC;AAIpC,MAAM,SAAS,CAAC;AAAA,EACrB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,WAAW;AACb,MASM;AACJ,QAAM,CAAC,gBAAgB,iBAAiB,IAAI,SAAS,KAAK;AAE1D,SACE,qBAAC,YAAO,WAAU,iCAChB;AAAA;AAAA,MAAC;AAAA;AAAA,QACC,WAAU;AAAA,QACV,cAAW;AAAA,QAEX;AAAA,8BAAC,SAAI,WAAU,kBACb,+BAAC,QAAK,MAAM,aAAa,WAAU,gBACjC;AAAA,gCAAC,UAAK,WAAU,WAAW,uBAAY;AAAA,YACtC;AAAA,aACH,GACF;AAAA,UACA,oBAAC,SAAI,WAAU,kBACb;AAAA,YAAC;AAAA;AAAA,cACC,MAAK;AAAA,cACL,WAAU;AAAA,cACV,SAAS,MAAM,kBAAkB,IAAI;AAAA,cAErC;AAAA,oCAAC,UAAK,WAAU,WAAU,4BAAc;AAAA,gBACxC,oBAAC,aAAU,WAAU,WAAU,eAAY,QAAO;AAAA;AAAA;AAAA,UACpD,GACF;AAAA,UACA,oBAAC,SAAI,WAAU,8BACZ,qBAAW,IAAI,CAAC,SACf;AAAA,YAAC;AAAA;AAAA,cAEC,MAAM,KAAK;AAAA,cACX,aAAW,OAAO,KAAK,KAAK,YAAY,CAAC;AAAA,cACzC,WAAW,mCAAmC,iBAAiB,QAAQ,CAAC;AAAA,cAEvE,eAAK;AAAA;AAAA,YALD,KAAK;AAAA,UAMZ,CACD,GACH;AAAA,UACA,oBAAC,SAAI,WAAU,8BACb,8BAAC,cAAW,SAAkB,UAAoB,GACpD;AAAA,UACA,oBAAC,SAAI,WAAU,2CACb,8BAAC,cAAW,MAAY,SAAkB,UAAoB,GAChE;AAAA;AAAA;AAAA,IACF;AAAA,IACA;AAAA,MAAC;AAAA;AAAA,QACC,IAAG;AAAA,QACH,WAAU;AAAA,QACV,MAAM;AAAA,QACN,SAAS;AAAA,QAET;AAAA,8BAAC,SAAI,WAAU,sBAAqB;AAAA,UACpC,qBAAC,OAAO,OAAP,EAAa,WAAU,2JACtB;AAAA,iCAAC,SAAI,WAAU,qCACb;AAAA,mCAAC,QAAK,MAAM,aAAa,WAAU,gBACjC;AAAA,oCAAC,UAAK,WAAU,WAAW,uBAAY;AAAA,gBACvC,oBAAC,QAAK,WAAU,cAAa;AAAA,iBAC/B;AAAA,cACA;AAAA,gBAAC;AAAA;AAAA,kBACC,MAAK;AAAA,kBACL,WAAU;AAAA,kBACV,SAAS,MAAM,kBAAkB,KAAK;AAAA,kBAEtC;AAAA,wCAAC,UAAK,WAAU,WAAU,wBAAU;AAAA,oBACpC,oBAAC,aAAU,WAAU,WAAU,eAAY,QAAO;AAAA;AAAA;AAAA,cACpD;AAAA,eACF;AAAA,YACA,oBAAC,SAAI,WAAU,kBACb,+BAAC,SAAI,WAAU,qCACb;AAAA,kCAAC,SAAI,WAAU,kBACZ,qBAAW,IAAI,CAAC,SACf;AAAA,gBAAC;AAAA;AAAA,kBAEC,MAAM,KAAK;AAAA,kBACX,WAAU;AAAA,kBAET,eAAK;AAAA;AAAA,gBAJD,KAAK;AAAA,cAKZ,CACD,GACH;AAAA,cACA,oBAAC,SAAI,WAAU,QACb,8BAAC,cAAW,MAAY,SAAkB,GAC5C;AAAA,eACF,GACF;AAAA,aACF;AAAA;AAAA;AAAA,IACF;AAAA,KACF;AAEJ;","names":[]}
@@ -26,17 +26,29 @@ var import_jsx_runtime = require("react/jsx-runtime");
26
26
  var import_dropdown_menu = require("../../ui/dropdown-menu");
27
27
  var import_button = require("../../ui/button");
28
28
  var import_solid = require("@heroicons/react/20/solid");
29
+ var import_nav_theme = require("../../../lib/nav-theme");
29
30
  const locales = ["en", "de"];
30
- function LangButton({ cookies }) {
31
+ function LangButton({
32
+ cookies,
33
+ navTheme = "auto"
34
+ }) {
31
35
  const handleLocaleChange = (locale) => {
32
36
  cookies.set("NEXT_LOCALE", locale);
33
37
  window.location.reload();
34
38
  };
35
39
  return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_dropdown_menu.DropdownMenu, { children: [
36
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_dropdown_menu.DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_button.Button, { variant: "ghost", size: "icon", className: "h-9 w-9", children: [
37
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_solid.LanguageIcon, { className: "h-[1.2rem] w-[1.2rem] rotate-0 scale-100 transition-all" }),
38
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: "sr-only", children: "Toggle language" })
39
- ] }) }),
40
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_dropdown_menu.DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
41
+ import_button.Button,
42
+ {
43
+ variant: "ghost",
44
+ size: "icon",
45
+ className: `h-9 w-9 ${import_nav_theme.NAV_TEXT_CLASSES[navTheme]} hover:text-inherit`,
46
+ children: [
47
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_solid.LanguageIcon, { className: "h-[1.2rem] w-[1.2rem] rotate-0 scale-100 transition-all" }),
48
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: "sr-only", children: "Toggle language" })
49
+ ]
50
+ }
51
+ ) }),
40
52
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_dropdown_menu.DropdownMenuContent, { align: "end", children: locales.map((locale) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
41
53
  import_dropdown_menu.DropdownMenuItem,
42
54
  {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../components/header/langbutton/langbutton.tsx"],"sourcesContent":["'use client'\n\nimport * as React from 'react'\n\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuTrigger,\n} from '../../ui/dropdown-menu'\nimport { Button } from '../../ui/button'\nimport { LanguageIcon } from '@heroicons/react/20/solid'\nconst locales = ['en', 'de']\n\nexport function LangButton({ cookies }: { cookies: any }) {\n const handleLocaleChange = (locale: string) => {\n cookies.set('NEXT_LOCALE', locale)\n window.location.reload()\n }\n\n return (\n <DropdownMenu>\n <DropdownMenuTrigger asChild>\n <Button variant=\"ghost\" size=\"icon\" className=\"h-9 w-9\">\n <LanguageIcon className=\"h-[1.2rem] w-[1.2rem] rotate-0 scale-100 transition-all\" />\n <span className=\"sr-only\">Toggle language</span>\n </Button>\n </DropdownMenuTrigger>\n\n <DropdownMenuContent align=\"end\">\n {locales.map((locale) => (\n <DropdownMenuItem\n key={locale}\n onClick={() => handleLocaleChange(locale)}\n >\n {locale}\n </DropdownMenuItem>\n ))}\n </DropdownMenuContent>\n </DropdownMenu>\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAuBQ;AAnBR,2BAKO;AACP,oBAAuB;AACvB,mBAA6B;AAC7B,MAAM,UAAU,CAAC,MAAM,IAAI;AAEpB,SAAS,WAAW,EAAE,QAAQ,GAAqB;AACxD,QAAM,qBAAqB,CAAC,WAAmB;AAC7C,YAAQ,IAAI,eAAe,MAAM;AACjC,WAAO,SAAS,OAAO;AAAA,EACzB;AAEA,SACE,6CAAC,qCACC;AAAA,gDAAC,4CAAoB,SAAO,MAC1B,uDAAC,wBAAO,SAAQ,SAAQ,MAAK,QAAO,WAAU,WAC5C;AAAA,kDAAC,6BAAa,WAAU,2DAA0D;AAAA,MAClF,4CAAC,UAAK,WAAU,WAAU,6BAAe;AAAA,OAC3C,GACF;AAAA,IAEA,4CAAC,4CAAoB,OAAM,OACxB,kBAAQ,IAAI,CAAC,WACZ;AAAA,MAAC;AAAA;AAAA,QAEC,SAAS,MAAM,mBAAmB,MAAM;AAAA,QAEvC;AAAA;AAAA,MAHI;AAAA,IAIP,CACD,GACH;AAAA,KACF;AAEJ;","names":[]}
1
+ {"version":3,"sources":["../../../../components/header/langbutton/langbutton.tsx"],"sourcesContent":["'use client'\n\nimport * as React from 'react'\n\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuTrigger,\n} from '../../ui/dropdown-menu'\nimport { Button } from '../../ui/button'\nimport { LanguageIcon } from '@heroicons/react/20/solid'\nimport { NAV_TEXT_CLASSES, NavTheme } from '../../../lib/nav-theme'\nconst locales = ['en', 'de']\n\nexport function LangButton({\n cookies,\n navTheme = 'auto',\n}: {\n cookies: any\n navTheme?: NavTheme\n}) {\n const handleLocaleChange = (locale: string) => {\n cookies.set('NEXT_LOCALE', locale)\n window.location.reload()\n }\n\n return (\n <DropdownMenu>\n <DropdownMenuTrigger asChild>\n <Button\n variant=\"ghost\"\n size=\"icon\"\n className={`h-9 w-9 ${NAV_TEXT_CLASSES[navTheme]} hover:text-inherit`}\n >\n <LanguageIcon className=\"h-[1.2rem] w-[1.2rem] rotate-0 scale-100 transition-all\" />\n <span className=\"sr-only\">Toggle language</span>\n </Button>\n </DropdownMenuTrigger>\n\n <DropdownMenuContent align=\"end\">\n {locales.map((locale) => (\n <DropdownMenuItem\n key={locale}\n onClick={() => handleLocaleChange(locale)}\n >\n {locale}\n </DropdownMenuItem>\n ))}\n </DropdownMenuContent>\n </DropdownMenu>\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AA8BQ;AA1BR,2BAKO;AACP,oBAAuB;AACvB,mBAA6B;AAC7B,uBAA2C;AAC3C,MAAM,UAAU,CAAC,MAAM,IAAI;AAEpB,SAAS,WAAW;AAAA,EACzB;AAAA,EACA,WAAW;AACb,GAGG;AACD,QAAM,qBAAqB,CAAC,WAAmB;AAC7C,YAAQ,IAAI,eAAe,MAAM;AACjC,WAAO,SAAS,OAAO;AAAA,EACzB;AAEA,SACE,6CAAC,qCACC;AAAA,gDAAC,4CAAoB,SAAO,MAC1B;AAAA,MAAC;AAAA;AAAA,QACC,SAAQ;AAAA,QACR,MAAK;AAAA,QACL,WAAW,WAAW,kCAAiB,QAAQ,CAAC;AAAA,QAEhD;AAAA,sDAAC,6BAAa,WAAU,2DAA0D;AAAA,UAClF,4CAAC,UAAK,WAAU,WAAU,6BAAe;AAAA;AAAA;AAAA,IAC3C,GACF;AAAA,IAEA,4CAAC,4CAAoB,OAAM,OACxB,kBAAQ,IAAI,CAAC,WACZ;AAAA,MAAC;AAAA;AAAA,QAEC,SAAS,MAAM,mBAAmB,MAAM;AAAA,QAEvC;AAAA;AAAA,MAHI;AAAA,IAIP,CACD,GACH;AAAA,KACF;AAEJ;","names":[]}
@@ -1,5 +1,7 @@
1
1
  import * as React from 'react';
2
- export declare function LangButton({ cookies }: {
2
+ import { NavTheme } from '../../../lib/nav-theme';
3
+ export declare function LangButton({ cookies, navTheme, }: {
3
4
  cookies: any;
5
+ navTheme?: NavTheme;
4
6
  }): React.JSX.Element;
5
7
  //# sourceMappingURL=langbutton.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"langbutton.d.ts","sourceRoot":"","sources":["../../../../components/header/langbutton/langbutton.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAY9B,wBAAgB,UAAU,CAAC,EAAE,OAAO,EAAE,EAAE;IAAE,OAAO,EAAE,GAAG,CAAA;CAAE,qBA2BvD"}
1
+ {"version":3,"file":"langbutton.d.ts","sourceRoot":"","sources":["../../../../components/header/langbutton/langbutton.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAU9B,OAAO,EAAoB,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AAGnE,wBAAgB,UAAU,CAAC,EACzB,OAAO,EACP,QAAiB,GAClB,EAAE;IACD,OAAO,EAAE,GAAG,CAAA;IACZ,QAAQ,CAAC,EAAE,QAAQ,CAAA;CACpB,qBA+BA"}
@@ -8,17 +8,29 @@ import {
8
8
  } from "../../ui/dropdown-menu";
9
9
  import { Button } from "../../ui/button";
10
10
  import { LanguageIcon } from "@heroicons/react/20/solid";
11
+ import { NAV_TEXT_CLASSES } from "../../../lib/nav-theme";
11
12
  const locales = ["en", "de"];
12
- function LangButton({ cookies }) {
13
+ function LangButton({
14
+ cookies,
15
+ navTheme = "auto"
16
+ }) {
13
17
  const handleLocaleChange = (locale) => {
14
18
  cookies.set("NEXT_LOCALE", locale);
15
19
  window.location.reload();
16
20
  };
17
21
  return /* @__PURE__ */ jsxs(DropdownMenu, { children: [
18
- /* @__PURE__ */ jsx(DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ jsxs(Button, { variant: "ghost", size: "icon", className: "h-9 w-9", children: [
19
- /* @__PURE__ */ jsx(LanguageIcon, { className: "h-[1.2rem] w-[1.2rem] rotate-0 scale-100 transition-all" }),
20
- /* @__PURE__ */ jsx("span", { className: "sr-only", children: "Toggle language" })
21
- ] }) }),
22
+ /* @__PURE__ */ jsx(DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ jsxs(
23
+ Button,
24
+ {
25
+ variant: "ghost",
26
+ size: "icon",
27
+ className: `h-9 w-9 ${NAV_TEXT_CLASSES[navTheme]} hover:text-inherit`,
28
+ children: [
29
+ /* @__PURE__ */ jsx(LanguageIcon, { className: "h-[1.2rem] w-[1.2rem] rotate-0 scale-100 transition-all" }),
30
+ /* @__PURE__ */ jsx("span", { className: "sr-only", children: "Toggle language" })
31
+ ]
32
+ }
33
+ ) }),
22
34
  /* @__PURE__ */ jsx(DropdownMenuContent, { align: "end", children: locales.map((locale) => /* @__PURE__ */ jsx(
23
35
  DropdownMenuItem,
24
36
  {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../components/header/langbutton/langbutton.tsx"],"sourcesContent":["'use client'\n\nimport * as React from 'react'\n\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuTrigger,\n} from '../../ui/dropdown-menu'\nimport { Button } from '../../ui/button'\nimport { LanguageIcon } from '@heroicons/react/20/solid'\nconst locales = ['en', 'de']\n\nexport function LangButton({ cookies }: { cookies: any }) {\n const handleLocaleChange = (locale: string) => {\n cookies.set('NEXT_LOCALE', locale)\n window.location.reload()\n }\n\n return (\n <DropdownMenu>\n <DropdownMenuTrigger asChild>\n <Button variant=\"ghost\" size=\"icon\" className=\"h-9 w-9\">\n <LanguageIcon className=\"h-[1.2rem] w-[1.2rem] rotate-0 scale-100 transition-all\" />\n <span className=\"sr-only\">Toggle language</span>\n </Button>\n </DropdownMenuTrigger>\n\n <DropdownMenuContent align=\"end\">\n {locales.map((locale) => (\n <DropdownMenuItem\n key={locale}\n onClick={() => handleLocaleChange(locale)}\n >\n {locale}\n </DropdownMenuItem>\n ))}\n </DropdownMenuContent>\n </DropdownMenu>\n )\n}\n"],"mappings":";AAuBQ,SACE,KADF;AAnBR;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AACP,SAAS,cAAc;AACvB,SAAS,oBAAoB;AAC7B,MAAM,UAAU,CAAC,MAAM,IAAI;AAEpB,SAAS,WAAW,EAAE,QAAQ,GAAqB;AACxD,QAAM,qBAAqB,CAAC,WAAmB;AAC7C,YAAQ,IAAI,eAAe,MAAM;AACjC,WAAO,SAAS,OAAO;AAAA,EACzB;AAEA,SACE,qBAAC,gBACC;AAAA,wBAAC,uBAAoB,SAAO,MAC1B,+BAAC,UAAO,SAAQ,SAAQ,MAAK,QAAO,WAAU,WAC5C;AAAA,0BAAC,gBAAa,WAAU,2DAA0D;AAAA,MAClF,oBAAC,UAAK,WAAU,WAAU,6BAAe;AAAA,OAC3C,GACF;AAAA,IAEA,oBAAC,uBAAoB,OAAM,OACxB,kBAAQ,IAAI,CAAC,WACZ;AAAA,MAAC;AAAA;AAAA,QAEC,SAAS,MAAM,mBAAmB,MAAM;AAAA,QAEvC;AAAA;AAAA,MAHI;AAAA,IAIP,CACD,GACH;AAAA,KACF;AAEJ;","names":[]}
1
+ {"version":3,"sources":["../../../../components/header/langbutton/langbutton.tsx"],"sourcesContent":["'use client'\n\nimport * as React from 'react'\n\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuTrigger,\n} from '../../ui/dropdown-menu'\nimport { Button } from '../../ui/button'\nimport { LanguageIcon } from '@heroicons/react/20/solid'\nimport { NAV_TEXT_CLASSES, NavTheme } from '../../../lib/nav-theme'\nconst locales = ['en', 'de']\n\nexport function LangButton({\n cookies,\n navTheme = 'auto',\n}: {\n cookies: any\n navTheme?: NavTheme\n}) {\n const handleLocaleChange = (locale: string) => {\n cookies.set('NEXT_LOCALE', locale)\n window.location.reload()\n }\n\n return (\n <DropdownMenu>\n <DropdownMenuTrigger asChild>\n <Button\n variant=\"ghost\"\n size=\"icon\"\n className={`h-9 w-9 ${NAV_TEXT_CLASSES[navTheme]} hover:text-inherit`}\n >\n <LanguageIcon className=\"h-[1.2rem] w-[1.2rem] rotate-0 scale-100 transition-all\" />\n <span className=\"sr-only\">Toggle language</span>\n </Button>\n </DropdownMenuTrigger>\n\n <DropdownMenuContent align=\"end\">\n {locales.map((locale) => (\n <DropdownMenuItem\n key={locale}\n onClick={() => handleLocaleChange(locale)}\n >\n {locale}\n </DropdownMenuItem>\n ))}\n </DropdownMenuContent>\n </DropdownMenu>\n )\n}\n"],"mappings":";AA8BQ,SAKE,KALF;AA1BR;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AACP,SAAS,cAAc;AACvB,SAAS,oBAAoB;AAC7B,SAAS,wBAAkC;AAC3C,MAAM,UAAU,CAAC,MAAM,IAAI;AAEpB,SAAS,WAAW;AAAA,EACzB;AAAA,EACA,WAAW;AACb,GAGG;AACD,QAAM,qBAAqB,CAAC,WAAmB;AAC7C,YAAQ,IAAI,eAAe,MAAM;AACjC,WAAO,SAAS,OAAO;AAAA,EACzB;AAEA,SACE,qBAAC,gBACC;AAAA,wBAAC,uBAAoB,SAAO,MAC1B;AAAA,MAAC;AAAA;AAAA,QACC,SAAQ;AAAA,QACR,MAAK;AAAA,QACL,WAAW,WAAW,iBAAiB,QAAQ,CAAC;AAAA,QAEhD;AAAA,8BAAC,gBAAa,WAAU,2DAA0D;AAAA,UAClF,oBAAC,UAAK,WAAU,WAAU,6BAAe;AAAA;AAAA;AAAA,IAC3C,GACF;AAAA,IAEA,oBAAC,uBAAoB,OAAM,OACxB,kBAAQ,IAAI,CAAC,WACZ;AAAA,MAAC;AAAA;AAAA,QAEC,SAAS,MAAM,mBAAmB,MAAM;AAAA,QAEvC;AAAA;AAAA,MAHI;AAAA,IAIP,CACD,GACH;AAAA,KACF;AAEJ;","names":[]}
@@ -34,14 +34,23 @@ __export(userbutton_exports, {
34
34
  module.exports = __toCommonJS(userbutton_exports);
35
35
  var import_jsx_runtime = require("react/jsx-runtime");
36
36
  var import_user_dropdown = __toESM(require("./user-dropdown"), 1);
37
+ var import_nav_theme = require("../../../lib/nav-theme");
37
38
  const UserButton = ({
38
39
  user,
39
- signOut
40
+ signOut,
41
+ navTheme = "auto"
40
42
  }) => {
41
- return user ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_user_dropdown.default, { user, logOut: signOut }) : /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("a", { href: "/signin", className: "text-sm font-semibold leading-6 text-white", children: [
42
- "Log in ",
43
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { "aria-hidden": "true", children: "\u2192" })
44
- ] });
43
+ return user ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_user_dropdown.default, { user, logOut: signOut }) : /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
44
+ "a",
45
+ {
46
+ href: "/signin",
47
+ className: `text-sm font-semibold leading-6 ${import_nav_theme.NAV_TEXT_CLASSES[navTheme]}`,
48
+ children: [
49
+ "Log in ",
50
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { "aria-hidden": "true", children: "\u2192" })
51
+ ]
52
+ }
53
+ );
45
54
  };
46
55
  // Annotate the CommonJS export names for ESM import in node:
47
56
  0 && (module.exports = {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../components/header/userbutton/userbutton.tsx"],"sourcesContent":["'use client'\nimport UserDropdown from './user-dropdown'\nimport { User } from '@auth/core/types'\n\ntype UserWithUsername = User & { username?: string | null }\n\nexport const UserButton = ({\n user,\n signOut,\n}: {\n user: UserWithUsername | undefined\n signOut: () => Promise<void>\n}) => {\n return user ? (\n <UserDropdown user={user} logOut={signOut} />\n ) : (\n <a href=\"/signin\" className=\"text-sm font-semibold leading-6 text-white\">\n Log in <span aria-hidden=\"true\">&rarr;</span>\n </a>\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAcI;AAbJ,2BAAyB;AAKlB,MAAM,aAAa,CAAC;AAAA,EACzB;AAAA,EACA;AACF,MAGM;AACJ,SAAO,OACL,4CAAC,qBAAAA,SAAA,EAAa,MAAY,QAAQ,SAAS,IAE3C,6CAAC,OAAE,MAAK,WAAU,WAAU,8CAA6C;AAAA;AAAA,IAChE,4CAAC,UAAK,eAAY,QAAO,oBAAM;AAAA,KACxC;AAEJ;","names":["UserDropdown"]}
1
+ {"version":3,"sources":["../../../../components/header/userbutton/userbutton.tsx"],"sourcesContent":["'use client'\nimport UserDropdown from './user-dropdown'\nimport { User } from '@auth/core/types'\nimport { NAV_TEXT_CLASSES, NavTheme } from '../../../lib/nav-theme'\n\ntype UserWithUsername = User & { username?: string | null }\n\nexport const UserButton = ({\n user,\n signOut,\n navTheme = 'auto',\n}: {\n user: UserWithUsername | undefined\n signOut: () => Promise<void>\n navTheme?: NavTheme\n}) => {\n return user ? (\n <UserDropdown user={user} logOut={signOut} />\n ) : (\n <a\n href=\"/signin\"\n className={`text-sm font-semibold leading-6 ${NAV_TEXT_CLASSES[navTheme]}`}\n >\n Log in <span aria-hidden=\"true\">&rarr;</span>\n </a>\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAiBI;AAhBJ,2BAAyB;AAEzB,uBAA2C;AAIpC,MAAM,aAAa,CAAC;AAAA,EACzB;AAAA,EACA;AAAA,EACA,WAAW;AACb,MAIM;AACJ,SAAO,OACL,4CAAC,qBAAAA,SAAA,EAAa,MAAY,QAAQ,SAAS,IAE3C;AAAA,IAAC;AAAA;AAAA,MACC,MAAK;AAAA,MACL,WAAW,mCAAmC,kCAAiB,QAAQ,CAAC;AAAA,MACzE;AAAA;AAAA,QACQ,4CAAC,UAAK,eAAY,QAAO,oBAAM;AAAA;AAAA;AAAA,EACxC;AAEJ;","names":["UserDropdown"]}
@@ -1,10 +1,12 @@
1
1
  import { User } from '@auth/core/types';
2
+ import { NavTheme } from '../../../lib/nav-theme';
2
3
  type UserWithUsername = User & {
3
4
  username?: string | null;
4
5
  };
5
- export declare const UserButton: ({ user, signOut, }: {
6
+ export declare const UserButton: ({ user, signOut, navTheme, }: {
6
7
  user: UserWithUsername | undefined;
7
8
  signOut: () => Promise<void>;
9
+ navTheme?: NavTheme;
8
10
  }) => import("react").JSX.Element;
9
11
  export {};
10
12
  //# sourceMappingURL=userbutton.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"userbutton.d.ts","sourceRoot":"","sources":["../../../../components/header/userbutton/userbutton.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAA;AAEvC,KAAK,gBAAgB,GAAG,IAAI,GAAG;IAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAA;AAE3D,eAAO,MAAM,UAAU,GAAI,oBAGxB;IACD,IAAI,EAAE,gBAAgB,GAAG,SAAS,CAAA;IAClC,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAC7B,gCAQA,CAAA"}
1
+ {"version":3,"file":"userbutton.d.ts","sourceRoot":"","sources":["../../../../components/header/userbutton/userbutton.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAA;AACvC,OAAO,EAAoB,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AAEnE,KAAK,gBAAgB,GAAG,IAAI,GAAG;IAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAA;AAE3D,eAAO,MAAM,UAAU,GAAI,8BAIxB;IACD,IAAI,EAAE,gBAAgB,GAAG,SAAS,CAAA;IAClC,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAC5B,QAAQ,CAAC,EAAE,QAAQ,CAAA;CACpB,gCAWA,CAAA"}
@@ -1,14 +1,23 @@
1
1
  "use client";
2
2
  import { jsx, jsxs } from "react/jsx-runtime";
3
3
  import UserDropdown from "./user-dropdown";
4
+ import { NAV_TEXT_CLASSES } from "../../../lib/nav-theme";
4
5
  const UserButton = ({
5
6
  user,
6
- signOut
7
+ signOut,
8
+ navTheme = "auto"
7
9
  }) => {
8
- return user ? /* @__PURE__ */ jsx(UserDropdown, { user, logOut: signOut }) : /* @__PURE__ */ jsxs("a", { href: "/signin", className: "text-sm font-semibold leading-6 text-white", children: [
9
- "Log in ",
10
- /* @__PURE__ */ jsx("span", { "aria-hidden": "true", children: "\u2192" })
11
- ] });
10
+ return user ? /* @__PURE__ */ jsx(UserDropdown, { user, logOut: signOut }) : /* @__PURE__ */ jsxs(
11
+ "a",
12
+ {
13
+ href: "/signin",
14
+ className: `text-sm font-semibold leading-6 ${NAV_TEXT_CLASSES[navTheme]}`,
15
+ children: [
16
+ "Log in ",
17
+ /* @__PURE__ */ jsx("span", { "aria-hidden": "true", children: "\u2192" })
18
+ ]
19
+ }
20
+ );
12
21
  };
13
22
  export {
14
23
  UserButton
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../components/header/userbutton/userbutton.tsx"],"sourcesContent":["'use client'\nimport UserDropdown from './user-dropdown'\nimport { User } from '@auth/core/types'\n\ntype UserWithUsername = User & { username?: string | null }\n\nexport const UserButton = ({\n user,\n signOut,\n}: {\n user: UserWithUsername | undefined\n signOut: () => Promise<void>\n}) => {\n return user ? (\n <UserDropdown user={user} logOut={signOut} />\n ) : (\n <a href=\"/signin\" className=\"text-sm font-semibold leading-6 text-white\">\n Log in <span aria-hidden=\"true\">&rarr;</span>\n </a>\n )\n}\n"],"mappings":";AAcI,cAEA,YAFA;AAbJ,OAAO,kBAAkB;AAKlB,MAAM,aAAa,CAAC;AAAA,EACzB;AAAA,EACA;AACF,MAGM;AACJ,SAAO,OACL,oBAAC,gBAAa,MAAY,QAAQ,SAAS,IAE3C,qBAAC,OAAE,MAAK,WAAU,WAAU,8CAA6C;AAAA;AAAA,IAChE,oBAAC,UAAK,eAAY,QAAO,oBAAM;AAAA,KACxC;AAEJ;","names":[]}
1
+ {"version":3,"sources":["../../../../components/header/userbutton/userbutton.tsx"],"sourcesContent":["'use client'\nimport UserDropdown from './user-dropdown'\nimport { User } from '@auth/core/types'\nimport { NAV_TEXT_CLASSES, NavTheme } from '../../../lib/nav-theme'\n\ntype UserWithUsername = User & { username?: string | null }\n\nexport const UserButton = ({\n user,\n signOut,\n navTheme = 'auto',\n}: {\n user: UserWithUsername | undefined\n signOut: () => Promise<void>\n navTheme?: NavTheme\n}) => {\n return user ? (\n <UserDropdown user={user} logOut={signOut} />\n ) : (\n <a\n href=\"/signin\"\n className={`text-sm font-semibold leading-6 ${NAV_TEXT_CLASSES[navTheme]}`}\n >\n Log in <span aria-hidden=\"true\">&rarr;</span>\n </a>\n )\n}\n"],"mappings":";AAiBI,cAEA,YAFA;AAhBJ,OAAO,kBAAkB;AAEzB,SAAS,wBAAkC;AAIpC,MAAM,aAAa,CAAC;AAAA,EACzB;AAAA,EACA;AAAA,EACA,WAAW;AACb,MAIM;AACJ,SAAO,OACL,oBAAC,gBAAa,MAAY,QAAQ,SAAS,IAE3C;AAAA,IAAC;AAAA;AAAA,MACC,MAAK;AAAA,MACL,WAAW,mCAAmC,iBAAiB,QAAQ,CAAC;AAAA,MACzE;AAAA;AAAA,QACQ,oBAAC,UAAK,eAAY,QAAO,oBAAM;AAAA;AAAA;AAAA,EACxC;AAEJ;","names":[]}