@kids-reporter/routing-ui 0.1.0-alpha.6 → 0.1.0-alpha.7

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 (40) hide show
  1. package/dist/components/input.d.ts +6 -2
  2. package/dist/components/input.d.ts.map +1 -1
  3. package/dist/components/input.js +30 -9
  4. package/dist/components/input.js.map +1 -1
  5. package/dist/header/desktop-header.d.ts +3 -1
  6. package/dist/header/desktop-header.d.ts.map +1 -1
  7. package/dist/header/desktop-header.js +4 -2
  8. package/dist/header/desktop-header.js.map +1 -1
  9. package/dist/header/header-context.d.ts +6 -0
  10. package/dist/header/header-context.d.ts.map +1 -1
  11. package/dist/header/header-context.js +11 -2
  12. package/dist/header/header-context.js.map +1 -1
  13. package/dist/header/index.d.ts.map +1 -1
  14. package/dist/header/index.js +10 -2
  15. package/dist/header/index.js.map +1 -1
  16. package/dist/header/is-logged-in-setter.d.ts +7 -0
  17. package/dist/header/is-logged-in-setter.d.ts.map +1 -0
  18. package/dist/header/is-logged-in-setter.js +27 -0
  19. package/dist/header/is-logged-in-setter.js.map +1 -0
  20. package/dist/header/mobile-back-button-href-setter.d.ts +6 -0
  21. package/dist/header/mobile-back-button-href-setter.d.ts.map +1 -0
  22. package/dist/header/mobile-back-button-href-setter.js +21 -0
  23. package/dist/header/mobile-back-button-href-setter.js.map +1 -0
  24. package/dist/header/mobile-header.d.ts +4 -1
  25. package/dist/header/mobile-header.d.ts.map +1 -1
  26. package/dist/header/mobile-header.js +13 -3
  27. package/dist/header/mobile-header.js.map +1 -1
  28. package/dist/header/shared-components.d.ts.map +1 -1
  29. package/dist/header/shared-components.js +2 -1
  30. package/dist/header/shared-components.js.map +1 -1
  31. package/dist/icons/index.d.ts +1 -0
  32. package/dist/icons/index.d.ts.map +1 -1
  33. package/dist/icons/index.js +18 -1
  34. package/dist/icons/index.js.map +1 -1
  35. package/dist/index.d.ts +2 -0
  36. package/dist/index.d.ts.map +1 -1
  37. package/dist/index.js +16 -0
  38. package/dist/index.js.map +1 -1
  39. package/dist/styles.css +11 -6
  40. package/package.json +1 -2
@@ -3,18 +3,22 @@ export type InputProps = {
3
3
  value?: string;
4
4
  onChange?: (value: string) => void;
5
5
  onClear?: () => void;
6
- showClearButton?: boolean;
7
6
  children?: React.ReactNode;
8
7
  inputRef?: React.RefObject<HTMLInputElement>;
8
+ error?: boolean;
9
+ errorMessage?: string;
10
+ mode?: 'default' | 'search';
9
11
  } & Omit<React.InputHTMLAttributes<HTMLInputElement>, 'onChange' | 'value'>;
10
12
  declare const Input: import("react").ForwardRefExoticComponent<{
11
13
  placeholder?: string;
12
14
  value?: string;
13
15
  onChange?: (value: string) => void;
14
16
  onClear?: () => void;
15
- showClearButton?: boolean;
16
17
  children?: React.ReactNode;
17
18
  inputRef?: React.RefObject<HTMLInputElement>;
19
+ error?: boolean;
20
+ errorMessage?: string;
21
+ mode?: "default" | "search";
18
22
  } & Omit<import("react").InputHTMLAttributes<HTMLInputElement>, "value" | "onChange"> & import("react").RefAttributes<HTMLInputElement>>;
19
23
  export default Input;
20
24
  //# sourceMappingURL=input.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../src/components/input.tsx"],"names":[],"mappings":"AAiDA,MAAM,MAAM,UAAU,GAAG;IACvB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IAClC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IACpB,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC1B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAA;CAC7C,GAAG,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,CAAA;AAE3E,QAAA,MAAM,KAAK;kBATK,MAAM;YACZ,MAAM;eACH,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI;cACxB,MAAM,IAAI;sBACF,OAAO;eACd,KAAK,CAAC,SAAS;eACf,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC;wIAgH7C,CAAA;AAED,eAAe,KAAK,CAAA"}
1
+ {"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../src/components/input.tsx"],"names":[],"mappings":"AA6DA,MAAM,MAAM,UAAU,GAAG;IACvB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IAClC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IACpB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC1B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAA;IAC5C,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,IAAI,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAA;CAC5B,GAAG,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,CAAA;AAE3E,QAAA,MAAM,KAAK;kBAXK,MAAM;YACZ,MAAM;eACH,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI;cACxB,MAAM,IAAI;eACT,KAAK,CAAC,SAAS;eACf,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC;YACpC,OAAO;mBACA,MAAM;WACd,SAAS,GAAG,QAAQ;wIAyI5B,CAAA;AAED,eAAe,KAAK,CAAA"}
@@ -35,7 +35,7 @@ const CloseIcon = ({
35
35
  });
36
36
  const inputVariants = (0, _classVarianceAuthority.cva)(
37
37
  // Base styles
38
- 'desktop:bg-white! px-4 py-1.5 h-11 flex items-center rounded-full border border-transparent bg-neutral-100 prose-p1 transition-colors duration-200 hover:border-neutral-600', {
38
+ 'px-4 py-1.5 h-11 relative flex items-center border border-transparent bg-neutral-100 prose-p1 transition-colors duration-200 hover:border-neutral-600 desktop:bg-neutral-white!', {
39
39
  variants: {
40
40
  state: {
41
41
  default: 'border-transparent',
@@ -43,11 +43,21 @@ const inputVariants = (0, _classVarianceAuthority.cva)(
43
43
  focus: 'border-neutral-600',
44
44
  active: 'border-neutral-600',
45
45
  unfocus: 'border-transparent',
46
- error: 'border-red-600'
46
+ error: 'border-semantic-danger hover:border-semantic-danger'
47
+ },
48
+ mode: {
49
+ default: 'rounded-[12px] border-neutral-400',
50
+ search: 'rounded-full'
47
51
  }
48
52
  },
53
+ compoundVariants: [{
54
+ state: 'error',
55
+ mode: 'default',
56
+ className: 'border-semantic-danger'
57
+ }],
49
58
  defaultVariants: {
50
- state: 'default'
59
+ state: 'default',
60
+ mode: 'default'
51
61
  }
52
62
  });
53
63
  const Input = /*#__PURE__*/(0, _react.forwardRef)(({
@@ -55,11 +65,13 @@ const Input = /*#__PURE__*/(0, _react.forwardRef)(({
55
65
  value,
56
66
  onChange,
57
67
  onClear,
58
- showClearButton = true,
59
68
  className,
60
69
  onFocus,
61
70
  onBlur,
62
71
  inputRef,
72
+ error,
73
+ errorMessage,
74
+ mode = 'default',
63
75
  ...props
64
76
  }, ref) => {
65
77
  const [internalValue, setInternalValue] = (0, _react.useState)('');
@@ -70,7 +82,7 @@ const Input = /*#__PURE__*/(0, _react.forwardRef)(({
70
82
  const hasValue = currentValue.length > 0;
71
83
 
72
84
  // Determine current state
73
- const currentState = isFocused ? 'focus' : hasValue ? isActive ? 'active' : 'unfocus' : 'default';
85
+ const currentState = error ? 'error' : isFocused ? 'focus' : hasValue ? isActive ? 'active' : 'unfocus' : 'default';
74
86
  const handleChange = e => {
75
87
  const newValue = e.target.value;
76
88
  if (onChange) {
@@ -109,8 +121,10 @@ const Input = /*#__PURE__*/(0, _react.forwardRef)(({
109
121
  currentRef.current?.focus();
110
122
  };
111
123
  const inputClasses = (0, _cn.cn)(inputVariants({
112
- state: currentState
124
+ state: currentState,
125
+ mode
113
126
  }), className);
127
+ const isSearchMode = mode === 'search';
114
128
  return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
115
129
  className: "gap-2 flex flex-col",
116
130
  children: /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
@@ -118,7 +132,7 @@ const Input = /*#__PURE__*/(0, _react.forwardRef)(({
118
132
  ref: ref,
119
133
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
120
134
  className: "text-neutral-600",
121
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icons.SearchIconSmall, {})
135
+ children: isSearchMode && /*#__PURE__*/(0, _jsxRuntime.jsx)(_icons.SearchIconSmall, {})
122
136
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)("input", {
123
137
  type: "text",
124
138
  value: currentValue,
@@ -126,10 +140,17 @@ const Input = /*#__PURE__*/(0, _react.forwardRef)(({
126
140
  onFocus: handleFocus,
127
141
  onBlur: handleBlur,
128
142
  placeholder: placeholder,
129
- className: "placeholder:font-medium ml-2 max-w-[72%] flex-1 flex-shrink-1 bg-transparent text-neutral-900 placeholder:text-neutral-400 focus:outline-none",
143
+ className: (0, _cn.cn)('flex-1 flex-shrink-1 bg-transparent text-neutral-900 placeholder:prose-p1 placeholder:text-neutral-400 focus:outline-none disabled:bg-neutral-100 disabled:text-neutral-400', isSearchMode && 'ml-2 max-w-[72%]'),
144
+ "aria-describedby": errorMessage ? `${props.id ?? 'input'}-error` : undefined,
145
+ "aria-invalid": !!errorMessage,
130
146
  ref: inputRef ?? innerInputRef,
131
147
  ...props
132
- }), showClearButton && hasValue && /*#__PURE__*/(0, _jsxRuntime.jsx)("button", {
148
+ }), errorMessage && /*#__PURE__*/(0, _jsxRuntime.jsx)("p", {
149
+ className: "-bottom-5 left-0 absolute prose-p3 text-semantic-danger",
150
+ id: `${props.id ?? 'input'}-error`,
151
+ role: "alert",
152
+ children: errorMessage
153
+ }), isSearchMode && hasValue && /*#__PURE__*/(0, _jsxRuntime.jsx)("button", {
133
154
  type: "button",
134
155
  onClick: handleClear,
135
156
  className: "p-1/2 ml-auto flex-shrink-0 cursor-pointer rounded-full text-neutral-400 transition-colors hover:text-neutral-600 active:bg-neutral-200",
@@ -1 +1 @@
1
- {"version":3,"file":"input.js","names":["Object","defineProperty","exports","value","default","_classVarianceAuthority","require","_react","_icons","_cn","_jsxRuntime","CloseIcon","className","jsxs","width","height","viewBox","fill","xmlns","children","jsx","cx","cy","r","d","stroke","strokeWidth","strokeLinecap","strokeLinejoin","inputVariants","cva","variants","state","hover","focus","active","unfocus","error","defaultVariants","Input","forwardRef","placeholder","onChange","onClear","showClearButton","onFocus","onBlur","inputRef","props","ref","internalValue","setInternalValue","useState","isFocused","setIsFocused","isActive","setIsActive","innerInputRef","useRef","currentValue","undefined","hasValue","length","currentState","handleChange","e","newValue","target","handleFocus","handleBlur","handleClear","preventDefault","stopPropagation","currentRef","current","inputClasses","cn","SearchIconSmall","type","onClick","_default"],"sources":["../../src/components/input.tsx"],"sourcesContent":["'use client'\n\nimport { cva } from 'class-variance-authority'\nimport { forwardRef, useRef, useState } from 'react'\n\nimport { SearchIconSmall } from '../icons'\nimport { cn } from '../utils/cn'\n\n// Close icon component\nconst CloseIcon = ({ className }: { className?: string }) => (\n <svg\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 20 20\"\n fill=\"none\"\n className={className}\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <circle cx=\"10\" cy=\"10\" r=\"10\" fill=\"currentColor\" />\n <path\n d=\"M7 7l6 6M13 7l-6 6\"\n stroke=\"white\"\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n)\n\nconst inputVariants = cva(\n // Base styles\n 'desktop:bg-white! px-4 py-1.5 h-11 flex items-center rounded-full border border-transparent bg-neutral-100 prose-p1 transition-colors duration-200 hover:border-neutral-600',\n {\n variants: {\n state: {\n default: 'border-transparent',\n hover: 'border-neutral-600',\n focus: 'border-neutral-600',\n active: 'border-neutral-600',\n unfocus: 'border-transparent',\n error: 'border-red-600',\n },\n },\n defaultVariants: {\n state: 'default',\n },\n }\n)\n\nexport type InputProps = {\n placeholder?: string\n value?: string\n onChange?: (value: string) => void\n onClear?: () => void\n showClearButton?: boolean\n children?: React.ReactNode\n inputRef?: React.RefObject<HTMLInputElement>\n} & Omit<React.InputHTMLAttributes<HTMLInputElement>, 'onChange' | 'value'>\n\nconst Input = forwardRef<HTMLInputElement, InputProps>(\n (\n {\n placeholder = '搜尋更多新聞、議題',\n value,\n onChange,\n onClear,\n showClearButton = true,\n className,\n onFocus,\n onBlur,\n inputRef,\n ...props\n },\n ref\n ) => {\n const [internalValue, setInternalValue] = useState('')\n const [isFocused, setIsFocused] = useState(false)\n const [isActive, setIsActive] = useState(false)\n const innerInputRef = useRef<HTMLInputElement>(null)\n const currentValue = value !== undefined ? value : internalValue\n const hasValue = currentValue.length > 0\n\n // Determine current state\n const currentState = isFocused\n ? 'focus'\n : hasValue\n ? isActive\n ? 'active'\n : 'unfocus'\n : 'default'\n\n const handleChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n const newValue = e.target.value\n if (onChange) {\n onChange(newValue)\n } else {\n setInternalValue(newValue)\n }\n setIsActive(true)\n }\n\n const handleFocus = (e: React.FocusEvent<HTMLInputElement>) => {\n if (onFocus) {\n onFocus(e)\n }\n setIsFocused(true)\n setIsActive(true)\n }\n\n const handleBlur = (e: React.FocusEvent<HTMLInputElement>) => {\n if (onBlur) {\n onBlur(e)\n }\n setIsFocused(false)\n setIsActive(false)\n }\n\n const handleClear = (e: React.MouseEvent) => {\n e.preventDefault()\n e.stopPropagation()\n\n if (onChange) {\n onChange('')\n } else {\n setInternalValue('')\n }\n if (onClear) {\n onClear()\n }\n\n const currentRef = inputRef ?? innerInputRef\n currentRef.current?.focus()\n }\n\n const inputClasses = cn(inputVariants({ state: currentState }), className)\n\n return (\n <div className=\"gap-2 flex flex-col\">\n <div className={inputClasses} ref={ref}>\n <div className=\"text-neutral-600\">\n <SearchIconSmall />\n </div>\n <input\n type=\"text\"\n value={currentValue}\n onChange={handleChange}\n onFocus={handleFocus}\n onBlur={handleBlur}\n placeholder={placeholder}\n className=\"placeholder:font-medium ml-2 max-w-[72%] flex-1 flex-shrink-1 bg-transparent text-neutral-900 placeholder:text-neutral-400 focus:outline-none\"\n ref={inputRef ?? innerInputRef}\n {...props}\n />\n\n {showClearButton && hasValue && (\n <button\n type=\"button\"\n onClick={handleClear}\n className=\"p-1/2 ml-auto flex-shrink-0 cursor-pointer rounded-full text-neutral-400 transition-colors hover:text-neutral-600 active:bg-neutral-200\"\n aria-label=\"Clear input\"\n >\n <CloseIcon />\n </button>\n )}\n </div>\n </div>\n )\n }\n)\n\nexport default Input\n"],"mappings":"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"}
1
+ {"version":3,"file":"input.js","names":["Object","defineProperty","exports","value","default","_classVarianceAuthority","require","_react","_icons","_cn","_jsxRuntime","CloseIcon","className","jsxs","width","height","viewBox","fill","xmlns","children","jsx","cx","cy","r","d","stroke","strokeWidth","strokeLinecap","strokeLinejoin","inputVariants","cva","variants","state","hover","focus","active","unfocus","error","mode","search","compoundVariants","defaultVariants","Input","forwardRef","placeholder","onChange","onClear","onFocus","onBlur","inputRef","errorMessage","props","ref","internalValue","setInternalValue","useState","isFocused","setIsFocused","isActive","setIsActive","innerInputRef","useRef","currentValue","undefined","hasValue","length","currentState","handleChange","e","newValue","target","handleFocus","handleBlur","handleClear","preventDefault","stopPropagation","currentRef","current","inputClasses","cn","isSearchMode","SearchIconSmall","type","id","role","onClick","_default"],"sources":["../../src/components/input.tsx"],"sourcesContent":["'use client'\n\nimport { cva } from 'class-variance-authority'\nimport { forwardRef, useRef, useState } from 'react'\n\nimport { SearchIconSmall } from '../icons'\nimport { cn } from '../utils/cn'\n\n// Close icon component\nconst CloseIcon = ({ className }: { className?: string }) => (\n <svg\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 20 20\"\n fill=\"none\"\n className={className}\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <circle cx=\"10\" cy=\"10\" r=\"10\" fill=\"currentColor\" />\n <path\n d=\"M7 7l6 6M13 7l-6 6\"\n stroke=\"white\"\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n)\n\nconst inputVariants = cva(\n // Base styles\n 'px-4 py-1.5 h-11 relative flex items-center border border-transparent bg-neutral-100 prose-p1 transition-colors duration-200 hover:border-neutral-600 desktop:bg-neutral-white!',\n {\n variants: {\n state: {\n default: 'border-transparent',\n hover: 'border-neutral-600',\n focus: 'border-neutral-600',\n active: 'border-neutral-600',\n unfocus: 'border-transparent',\n error: 'border-semantic-danger hover:border-semantic-danger',\n },\n mode: {\n default: 'rounded-[12px] border-neutral-400',\n search: 'rounded-full',\n },\n },\n compoundVariants: [\n {\n state: 'error',\n mode: 'default',\n className: 'border-semantic-danger',\n },\n ],\n defaultVariants: {\n state: 'default',\n mode: 'default',\n },\n }\n)\n\nexport type InputProps = {\n placeholder?: string\n value?: string\n onChange?: (value: string) => void\n onClear?: () => void\n children?: React.ReactNode\n inputRef?: React.RefObject<HTMLInputElement>\n error?: boolean\n errorMessage?: string\n mode?: 'default' | 'search'\n} & Omit<React.InputHTMLAttributes<HTMLInputElement>, 'onChange' | 'value'>\n\nconst Input = forwardRef<HTMLInputElement, InputProps>(\n (\n {\n placeholder = '搜尋更多新聞、議題',\n value,\n onChange,\n onClear,\n className,\n onFocus,\n onBlur,\n inputRef,\n error,\n errorMessage,\n mode = 'default',\n ...props\n },\n ref\n ) => {\n const [internalValue, setInternalValue] = useState('')\n const [isFocused, setIsFocused] = useState(false)\n const [isActive, setIsActive] = useState(false)\n const innerInputRef = useRef<HTMLInputElement>(null)\n const currentValue = value !== undefined ? value : internalValue\n const hasValue = currentValue.length > 0\n\n // Determine current state\n const currentState = error\n ? 'error'\n : isFocused\n ? 'focus'\n : hasValue\n ? isActive\n ? 'active'\n : 'unfocus'\n : 'default'\n\n const handleChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n const newValue = e.target.value\n if (onChange) {\n onChange(newValue)\n } else {\n setInternalValue(newValue)\n }\n setIsActive(true)\n }\n\n const handleFocus = (e: React.FocusEvent<HTMLInputElement>) => {\n if (onFocus) {\n onFocus(e)\n }\n setIsFocused(true)\n setIsActive(true)\n }\n\n const handleBlur = (e: React.FocusEvent<HTMLInputElement>) => {\n if (onBlur) {\n onBlur(e)\n }\n setIsFocused(false)\n setIsActive(false)\n }\n\n const handleClear = (e: React.MouseEvent) => {\n e.preventDefault()\n e.stopPropagation()\n\n if (onChange) {\n onChange('')\n } else {\n setInternalValue('')\n }\n if (onClear) {\n onClear()\n }\n\n const currentRef = inputRef ?? innerInputRef\n currentRef.current?.focus()\n }\n\n const inputClasses = cn(\n inputVariants({ state: currentState, mode }),\n className\n )\n\n const isSearchMode = mode === 'search'\n\n return (\n <div className=\"gap-2 flex flex-col\">\n <div className={inputClasses} ref={ref}>\n <div className=\"text-neutral-600\">\n {isSearchMode && <SearchIconSmall />}\n </div>\n <input\n type=\"text\"\n value={currentValue}\n onChange={handleChange}\n onFocus={handleFocus}\n onBlur={handleBlur}\n placeholder={placeholder}\n className={cn(\n 'flex-1 flex-shrink-1 bg-transparent text-neutral-900 placeholder:prose-p1 placeholder:text-neutral-400 focus:outline-none disabled:bg-neutral-100 disabled:text-neutral-400',\n isSearchMode && 'ml-2 max-w-[72%]'\n )}\n aria-describedby={\n errorMessage ? `${props.id ?? 'input'}-error` : undefined\n }\n aria-invalid={!!errorMessage}\n ref={inputRef ?? innerInputRef}\n {...props}\n />\n {errorMessage && (\n <p\n className=\"-bottom-5 left-0 absolute prose-p3 text-semantic-danger\"\n id={`${props.id ?? 'input'}-error`}\n role=\"alert\"\n >\n {errorMessage}\n </p>\n )}\n\n {isSearchMode && hasValue && (\n <button\n type=\"button\"\n onClick={handleClear}\n className=\"p-1/2 ml-auto flex-shrink-0 cursor-pointer rounded-full text-neutral-400 transition-colors hover:text-neutral-600 active:bg-neutral-200\"\n aria-label=\"Clear input\"\n >\n <CloseIcon />\n </button>\n )}\n </div>\n </div>\n )\n }\n)\n\nexport default Input\n"],"mappings":"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"}
@@ -8,7 +8,9 @@ type DesktopHeaderProps = {
8
8
  searchPlaceholder: string;
9
9
  subscribeUrl: string;
10
10
  menuItems: MenuItem[];
11
+ isLoggedIn?: boolean;
12
+ loginUrl?: string;
11
13
  };
12
- export declare function DesktopHeader({ onHamburgerOverlayOpen, keywords, compactMode, postTitle, hide, searchPlaceholder, subscribeUrl, menuItems, }: DesktopHeaderProps): import("react/jsx-runtime").JSX.Element;
14
+ export declare function DesktopHeader({ onHamburgerOverlayOpen, keywords, compactMode, postTitle, hide, searchPlaceholder, subscribeUrl, menuItems, isLoggedIn, loginUrl, }: DesktopHeaderProps): import("react/jsx-runtime").JSX.Element;
13
15
  export {};
14
16
  //# sourceMappingURL=desktop-header.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"desktop-header.d.ts","sourceRoot":"","sources":["../../src/header/desktop-header.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAA;AASxC,KAAK,kBAAkB,GAAG;IACxB,sBAAsB,EAAE,MAAM,IAAI,CAAA;IAClC,QAAQ,EAAE,MAAM,EAAE,CAAA;IAClB,WAAW,EAAE,OAAO,CAAA;IACpB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,EAAE,OAAO,CAAA;IACb,iBAAiB,EAAE,MAAM,CAAA;IACzB,YAAY,EAAE,MAAM,CAAA;IACpB,SAAS,EAAE,QAAQ,EAAE,CAAA;CACtB,CAAA;AAED,wBAAgB,aAAa,CAAC,EAC5B,sBAAsB,EACtB,QAAQ,EACR,WAAW,EACX,SAAS,EACT,IAAI,EACJ,iBAAiB,EACjB,YAAY,EACZ,SAAS,GACV,EAAE,kBAAkB,2CA+FpB"}
1
+ {"version":3,"file":"desktop-header.d.ts","sourceRoot":"","sources":["../../src/header/desktop-header.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAA;AASxC,KAAK,kBAAkB,GAAG;IACxB,sBAAsB,EAAE,MAAM,IAAI,CAAA;IAClC,QAAQ,EAAE,MAAM,EAAE,CAAA;IAClB,WAAW,EAAE,OAAO,CAAA;IACpB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,EAAE,OAAO,CAAA;IACb,iBAAiB,EAAE,MAAM,CAAA;IACzB,YAAY,EAAE,MAAM,CAAA;IACpB,SAAS,EAAE,QAAQ,EAAE,CAAA;IACrB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB,CAAA;AAED,wBAAgB,aAAa,CAAC,EAC5B,sBAAsB,EACtB,QAAQ,EACR,WAAW,EACX,SAAS,EACT,IAAI,EACJ,iBAAiB,EACjB,YAAY,EACZ,SAAS,EACT,UAAU,EACV,QAAQ,GACT,EAAE,kBAAkB,2CA+FpB"}
@@ -17,7 +17,9 @@ function DesktopHeader({
17
17
  hide,
18
18
  searchPlaceholder,
19
19
  subscribeUrl,
20
- menuItems
20
+ menuItems,
21
+ isLoggedIn,
22
+ loginUrl
21
23
  }) {
22
24
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
23
25
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
@@ -64,7 +66,7 @@ function DesktopHeader({
64
66
  searchPlaceholder: searchPlaceholder,
65
67
  subscribeUrl: subscribeUrl
66
68
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)("a", {
67
- href: "/login",
69
+ href: isLoggedIn ? '/member' : loginUrl ?? '/login',
68
70
  className: "w-8 h-8 flex items-center justify-center rounded-full text-red-400 transition-colors duration-200 hover:text-red-500",
69
71
  "aria-label": "\u767B\u5165",
70
72
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icons.LoginIcon, {})
@@ -1 +1 @@
1
- {"version":3,"file":"desktop-header.js","names":["Object","defineProperty","exports","value","DesktopHeader","_icons","require","_cn","_sharedComponents","_jsxRuntime","onHamburgerOverlayOpen","keywords","compactMode","postTitle","hide","searchPlaceholder","subscribeUrl","menuItems","jsxs","Fragment","children","jsx","className","cn","HamburgerButton","small","LogoLink","ActionButtons","tags","hideCtaButtons","href","LoginIcon","BottomNavigation"],"sources":["../../src/header/desktop-header.tsx"],"sourcesContent":["'use client'\n\nimport { LoginIcon } from '../icons'\nimport type { MenuItem } from '../types'\nimport { cn } from '../utils/cn'\nimport {\n ActionButtons,\n BottomNavigation,\n HamburgerButton,\n LogoLink,\n} from './shared-components'\n\ntype DesktopHeaderProps = {\n onHamburgerOverlayOpen: () => void\n keywords: string[]\n compactMode: boolean\n postTitle?: string\n hide: boolean\n searchPlaceholder: string\n subscribeUrl: string\n menuItems: MenuItem[]\n}\n\nexport function DesktopHeader({\n onHamburgerOverlayOpen,\n keywords,\n compactMode,\n postTitle,\n hide,\n searchPlaceholder,\n subscribeUrl,\n menuItems,\n}: DesktopHeaderProps) {\n return (\n <>\n <div className=\"hidden h-(--desktop-header-height) desktop:block\"></div>\n <div\n className={cn(\n 'top-0 ease-in-out fixed left-1/2 z-1000 hidden w-full -translate-x-1/2 transform transition-all duration-500 desktop:block',\n compactMode && 'bg-white',\n hide\n ? 'pointer-events-none -translate-y-full opacity-0'\n : 'translate-y-0 pointer-events-auto opacity-100'\n )}\n >\n <div className=\"px-12 hidden w-full bg-transparent desktop:block\">\n <div className=\"max-w-300 mx-auto\">\n <div\n className={cn(\n 'px-4 flex items-center justify-between py-[18px]',\n compactMode && 'py-2.5'\n )}\n >\n <div className={'flex items-center'}>\n <div\n className={cn(\n 'ease-in-out overflow-hidden transition-all duration-500',\n compactMode\n ? 'translate-x-0 max-w-12 mr-4 w-auto scale-100 opacity-100'\n : '-translate-x-2 w-0 max-w-0 pointer-events-none scale-95 opacity-0'\n )}\n >\n <HamburgerButton\n onHamburgerOverlayOpen={onHamburgerOverlayOpen}\n small\n />\n </div>\n <div className={compactMode ? 'mr-12' : 'mr-8'}>\n <LogoLink compactMode={compactMode} />\n </div>\n {postTitle && (\n <div className=\"pr-12 block\">\n <p className=\"font-medium tracking-wide max-w-124 overflow-hidden prose-p2 text-ellipsis whitespace-nowrap text-neutral-900\">\n {postTitle}\n </p>\n </div>\n )}\n <div\n className={cn(\n 'ease-in-out overflow-hidden transition-all duration-500',\n compactMode\n ? 'max-h-0 -translate-x-8 scale-95 opacity-0'\n : 'max-h-20 max-w-auto scale-100 opacity-100',\n postTitle && compactMode && 'max-w-0'\n )}\n >\n <span className=\"font-medium translate-y-0 inline-block prose-p2 tracking-[2.2px]! text-nowrap text-neutral-900 opacity-100\">\n 理解世界 × 參與未來\n </span>\n </div>\n </div>\n\n <div className=\"gap-4 flex items-center\">\n <ActionButtons\n tags={keywords}\n hideCtaButtons={compactMode}\n searchPlaceholder={searchPlaceholder}\n subscribeUrl={subscribeUrl}\n />\n <a\n href=\"/login\"\n className=\"w-8 h-8 flex items-center justify-center rounded-full text-red-400 transition-colors duration-200 hover:text-red-500\"\n aria-label=\"登入\"\n >\n <LoginIcon />\n </a>\n </div>\n </div>\n\n <div\n className={cn(\n 'ease-in-out overflow-hidden transition-all duration-500',\n compactMode\n ? 'h-0 -translate-y-4 opacity-0'\n : 'translate-y-0 h-auto opacity-100'\n )}\n >\n <BottomNavigation\n onHamburgerOverlayOpen={onHamburgerOverlayOpen}\n menuItems={menuItems}\n />\n </div>\n </div>\n </div>\n </div>\n </>\n )\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"desktop-header.js","names":["Object","defineProperty","exports","value","DesktopHeader","_icons","require","_cn","_sharedComponents","_jsxRuntime","onHamburgerOverlayOpen","keywords","compactMode","postTitle","hide","searchPlaceholder","subscribeUrl","menuItems","isLoggedIn","loginUrl","jsxs","Fragment","children","jsx","className","cn","HamburgerButton","small","LogoLink","ActionButtons","tags","hideCtaButtons","href","LoginIcon","BottomNavigation"],"sources":["../../src/header/desktop-header.tsx"],"sourcesContent":["'use client'\n\nimport { LoginIcon } from '../icons'\nimport type { MenuItem } from '../types'\nimport { cn } from '../utils/cn'\nimport {\n ActionButtons,\n BottomNavigation,\n HamburgerButton,\n LogoLink,\n} from './shared-components'\n\ntype DesktopHeaderProps = {\n onHamburgerOverlayOpen: () => void\n keywords: string[]\n compactMode: boolean\n postTitle?: string\n hide: boolean\n searchPlaceholder: string\n subscribeUrl: string\n menuItems: MenuItem[]\n isLoggedIn?: boolean\n loginUrl?: string\n}\n\nexport function DesktopHeader({\n onHamburgerOverlayOpen,\n keywords,\n compactMode,\n postTitle,\n hide,\n searchPlaceholder,\n subscribeUrl,\n menuItems,\n isLoggedIn,\n loginUrl,\n}: DesktopHeaderProps) {\n return (\n <>\n <div className=\"hidden h-(--desktop-header-height) desktop:block\"></div>\n <div\n className={cn(\n 'top-0 ease-in-out fixed left-1/2 z-1000 hidden w-full -translate-x-1/2 transform transition-all duration-500 desktop:block',\n compactMode && 'bg-white',\n hide\n ? 'pointer-events-none -translate-y-full opacity-0'\n : 'translate-y-0 pointer-events-auto opacity-100'\n )}\n >\n <div className=\"px-12 hidden w-full bg-transparent desktop:block\">\n <div className=\"max-w-300 mx-auto\">\n <div\n className={cn(\n 'px-4 flex items-center justify-between py-[18px]',\n compactMode && 'py-2.5'\n )}\n >\n <div className={'flex items-center'}>\n <div\n className={cn(\n 'ease-in-out overflow-hidden transition-all duration-500',\n compactMode\n ? 'translate-x-0 max-w-12 mr-4 w-auto scale-100 opacity-100'\n : '-translate-x-2 w-0 max-w-0 pointer-events-none scale-95 opacity-0'\n )}\n >\n <HamburgerButton\n onHamburgerOverlayOpen={onHamburgerOverlayOpen}\n small\n />\n </div>\n <div className={compactMode ? 'mr-12' : 'mr-8'}>\n <LogoLink compactMode={compactMode} />\n </div>\n {postTitle && (\n <div className=\"pr-12 block\">\n <p className=\"font-medium tracking-wide max-w-124 overflow-hidden prose-p2 text-ellipsis whitespace-nowrap text-neutral-900\">\n {postTitle}\n </p>\n </div>\n )}\n <div\n className={cn(\n 'ease-in-out overflow-hidden transition-all duration-500',\n compactMode\n ? 'max-h-0 -translate-x-8 scale-95 opacity-0'\n : 'max-h-20 max-w-auto scale-100 opacity-100',\n postTitle && compactMode && 'max-w-0'\n )}\n >\n <span className=\"font-medium translate-y-0 inline-block prose-p2 tracking-[2.2px]! text-nowrap text-neutral-900 opacity-100\">\n 理解世界 × 參與未來\n </span>\n </div>\n </div>\n\n <div className=\"gap-4 flex items-center\">\n <ActionButtons\n tags={keywords}\n hideCtaButtons={compactMode}\n searchPlaceholder={searchPlaceholder}\n subscribeUrl={subscribeUrl}\n />\n <a\n href={isLoggedIn ? '/member' : (loginUrl ?? '/login')}\n className=\"w-8 h-8 flex items-center justify-center rounded-full text-red-400 transition-colors duration-200 hover:text-red-500\"\n aria-label=\"登入\"\n >\n <LoginIcon />\n </a>\n </div>\n </div>\n\n <div\n className={cn(\n 'ease-in-out overflow-hidden transition-all duration-500',\n compactMode\n ? 'h-0 -translate-y-4 opacity-0'\n : 'translate-y-0 h-auto opacity-100'\n )}\n >\n <BottomNavigation\n onHamburgerOverlayOpen={onHamburgerOverlayOpen}\n menuItems={menuItems}\n />\n </div>\n </div>\n </div>\n </div>\n </>\n )\n}\n"],"mappings":"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"}
@@ -6,6 +6,12 @@ type HeaderContextType = {
6
6
  openMenu: () => void;
7
7
  closeMenu: () => void;
8
8
  keywords: string[];
9
+ isLoggedIn: boolean;
10
+ setIsLoggedIn: (isLoggedIn: boolean) => void;
11
+ mobileBackButtonHref?: string;
12
+ setMobileBackButtonHref: (href?: string) => void;
13
+ loginUrl?: string;
14
+ setLoginUrl: (url?: string) => void;
9
15
  };
10
16
  export declare function HeaderProvider({ children, keywords, }: {
11
17
  children: ReactNode;
@@ -1 +1 @@
1
- {"version":3,"file":"header-context.d.ts","sourceRoot":"","sources":["../../src/header/header-context.tsx"],"names":[],"mappings":"AACA,OAAO,EAEL,SAAS,EAKV,MAAM,OAAO,CAAA;AAEd,KAAK,iBAAiB,GAAG;IACvB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,YAAY,EAAE,CAAC,KAAK,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;IACtC,UAAU,EAAE,OAAO,CAAA;IACnB,QAAQ,EAAE,MAAM,IAAI,CAAA;IACpB,SAAS,EAAE,MAAM,IAAI,CAAA;IACrB,QAAQ,EAAE,MAAM,EAAE,CAAA;CACnB,CAAA;AAID,wBAAgB,cAAc,CAAC,EAC7B,QAAQ,EACR,QAAQ,GACT,EAAE;IACD,QAAQ,EAAE,SAAS,CAAA;IACnB,QAAQ,EAAE,MAAM,EAAE,CAAA;CACnB,2CAuBA;AAED,wBAAgB,gBAAgB,kCAG/B"}
1
+ {"version":3,"file":"header-context.d.ts","sourceRoot":"","sources":["../../src/header/header-context.tsx"],"names":[],"mappings":"AACA,OAAO,EAEL,SAAS,EAKV,MAAM,OAAO,CAAA;AAEd,KAAK,iBAAiB,GAAG;IACvB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,YAAY,EAAE,CAAC,KAAK,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;IACtC,UAAU,EAAE,OAAO,CAAA;IACnB,QAAQ,EAAE,MAAM,IAAI,CAAA;IACpB,SAAS,EAAE,MAAM,IAAI,CAAA;IACrB,QAAQ,EAAE,MAAM,EAAE,CAAA;IAClB,UAAU,EAAE,OAAO,CAAA;IACnB,aAAa,EAAE,CAAC,UAAU,EAAE,OAAO,KAAK,IAAI,CAAA;IAC5C,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,uBAAuB,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;IAChD,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,CAAC,GAAG,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;CACpC,CAAA;AAID,wBAAgB,cAAc,CAAC,EAC7B,QAAQ,EACR,QAAQ,GACT,EAAE;IACD,QAAQ,EAAE,SAAS,CAAA;IACnB,QAAQ,EAAE,MAAM,EAAE,CAAA;CACnB,2CA2CA;AAED,wBAAgB,gBAAgB,kCAG/B"}
@@ -15,6 +15,9 @@ function HeaderProvider({
15
15
  }) {
16
16
  const [postTitle, setPostTitle] = (0, _react.useState)(undefined);
17
17
  const [isMenuOpen, setIsMenuOpen] = (0, _react.useState)(false);
18
+ const [isLoggedIn, setIsLoggedIn] = (0, _react.useState)(false);
19
+ const [mobileBackButtonHref, setMobileBackButtonHref] = (0, _react.useState)(undefined);
20
+ const [loginUrl, setLoginUrl] = (0, _react.useState)(undefined);
18
21
  const openMenu = (0, _react.useCallback)(() => setIsMenuOpen(true), []);
19
22
  const closeMenu = (0, _react.useCallback)(() => setIsMenuOpen(false), []);
20
23
  const contextValue = (0, _react.useMemo)(() => ({
@@ -23,8 +26,14 @@ function HeaderProvider({
23
26
  isMenuOpen,
24
27
  openMenu,
25
28
  closeMenu,
26
- keywords
27
- }), [postTitle, setPostTitle, isMenuOpen, openMenu, closeMenu, keywords]);
29
+ keywords,
30
+ isLoggedIn,
31
+ setIsLoggedIn,
32
+ mobileBackButtonHref,
33
+ setMobileBackButtonHref,
34
+ loginUrl,
35
+ setLoginUrl
36
+ }), [postTitle, isMenuOpen, openMenu, closeMenu, keywords, isLoggedIn, mobileBackButtonHref, loginUrl]);
28
37
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(HeaderContext.Provider, {
29
38
  value: contextValue,
30
39
  children: children
@@ -1 +1 @@
1
- {"version":3,"file":"header-context.js","names":["Object","defineProperty","exports","value","HeaderProvider","useHeaderContext","_react","require","_jsxRuntime","HeaderContext","createContext","undefined","children","keywords","postTitle","setPostTitle","useState","isMenuOpen","setIsMenuOpen","openMenu","useCallback","closeMenu","contextValue","useMemo","jsx","Provider","context","useContext"],"sources":["../../src/header/header-context.tsx"],"sourcesContent":["'use client'\nimport {\n createContext,\n ReactNode,\n useCallback,\n useContext,\n useMemo,\n useState,\n} from 'react'\n\ntype HeaderContextType = {\n postTitle?: string\n setPostTitle: (title?: string) => void\n isMenuOpen: boolean\n openMenu: () => void\n closeMenu: () => void\n keywords: string[]\n}\n\nconst HeaderContext = createContext<HeaderContextType | undefined>(undefined)\n\nexport function HeaderProvider({\n children,\n keywords,\n}: {\n children: ReactNode\n keywords: string[]\n}) {\n const [postTitle, setPostTitle] = useState<string | undefined>(undefined)\n const [isMenuOpen, setIsMenuOpen] = useState(false)\n const openMenu = useCallback(() => setIsMenuOpen(true), [])\n const closeMenu = useCallback(() => setIsMenuOpen(false), [])\n\n const contextValue = useMemo(\n () => ({\n postTitle,\n setPostTitle,\n isMenuOpen,\n openMenu,\n closeMenu,\n keywords,\n }),\n [postTitle, setPostTitle, isMenuOpen, openMenu, closeMenu, keywords]\n )\n\n return (\n <HeaderContext.Provider value={contextValue}>\n {children}\n </HeaderContext.Provider>\n )\n}\n\nexport function useHeaderContext() {\n const context = useContext(HeaderContext)\n return context\n}\n"],"mappings":";AAAA,YAAY;;AAAAA,MAAA,CAAAC,cAAA,CAAAC,OAAA;EAAAC,KAAA;AAAA;AAAAD,OAAA,CAAAE,cAAA,GAAAA,cAAA;AAAAF,OAAA,CAAAG,gBAAA,GAAAA,gBAAA;AACZ,IAAAC,MAAA,GAAAC,OAAA;AAOc,IAAAC,WAAA,GAAAD,OAAA;AAWd,MAAME,aAAa,gBAAG,IAAAC,oBAAa,EAAgCC,SAAS,CAAC;AAEtE,SAASP,cAAcA,CAAC;EAC7BQ,QAAQ;EACRC;AAIF,CAAC,EAAE;EACD,MAAM,CAACC,SAAS,EAAEC,YAAY,CAAC,GAAG,IAAAC,eAAQ,EAAqBL,SAAS,CAAC;EACzE,MAAM,CAACM,UAAU,EAAEC,aAAa,CAAC,GAAG,IAAAF,eAAQ,EAAC,KAAK,CAAC;EACnD,MAAMG,QAAQ,GAAG,IAAAC,kBAAW,EAAC,MAAMF,aAAa,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;EAC3D,MAAMG,SAAS,GAAG,IAAAD,kBAAW,EAAC,MAAMF,aAAa,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;EAE7D,MAAMI,YAAY,GAAG,IAAAC,cAAO,EAC1B,OAAO;IACLT,SAAS;IACTC,YAAY;IACZE,UAAU;IACVE,QAAQ;IACRE,SAAS;IACTR;EACF,CAAC,CAAC,EACF,CAACC,SAAS,EAAEC,YAAY,EAAEE,UAAU,EAAEE,QAAQ,EAAEE,SAAS,EAAER,QAAQ,CACrE,CAAC;EAED,oBACE,IAAAL,WAAA,CAAAgB,GAAA,EAACf,aAAa,CAACgB,QAAQ;IAACtB,KAAK,EAAEmB,YAAa;IAAAV,QAAA,EACzCA;EAAQ,CACa,CAAC;AAE7B;AAEO,SAASP,gBAAgBA,CAAA,EAAG;EACjC,MAAMqB,OAAO,GAAG,IAAAC,iBAAU,EAAClB,aAAa,CAAC;EACzC,OAAOiB,OAAO;AAChB"}
1
+ {"version":3,"file":"header-context.js","names":["Object","defineProperty","exports","value","HeaderProvider","useHeaderContext","_react","require","_jsxRuntime","HeaderContext","createContext","undefined","children","keywords","postTitle","setPostTitle","useState","isMenuOpen","setIsMenuOpen","isLoggedIn","setIsLoggedIn","mobileBackButtonHref","setMobileBackButtonHref","loginUrl","setLoginUrl","openMenu","useCallback","closeMenu","contextValue","useMemo","jsx","Provider","context","useContext"],"sources":["../../src/header/header-context.tsx"],"sourcesContent":["'use client'\nimport {\n createContext,\n ReactNode,\n useCallback,\n useContext,\n useMemo,\n useState,\n} from 'react'\n\ntype HeaderContextType = {\n postTitle?: string\n setPostTitle: (title?: string) => void\n isMenuOpen: boolean\n openMenu: () => void\n closeMenu: () => void\n keywords: string[]\n isLoggedIn: boolean\n setIsLoggedIn: (isLoggedIn: boolean) => void\n mobileBackButtonHref?: string\n setMobileBackButtonHref: (href?: string) => void\n loginUrl?: string\n setLoginUrl: (url?: string) => void\n}\n\nconst HeaderContext = createContext<HeaderContextType | undefined>(undefined)\n\nexport function HeaderProvider({\n children,\n keywords,\n}: {\n children: ReactNode\n keywords: string[]\n}) {\n const [postTitle, setPostTitle] = useState<string | undefined>(undefined)\n const [isMenuOpen, setIsMenuOpen] = useState(false)\n const [isLoggedIn, setIsLoggedIn] = useState(false)\n const [mobileBackButtonHref, setMobileBackButtonHref] = useState<\n string | undefined\n >(undefined)\n const [loginUrl, setLoginUrl] = useState<string | undefined>(undefined)\n const openMenu = useCallback(() => setIsMenuOpen(true), [])\n const closeMenu = useCallback(() => setIsMenuOpen(false), [])\n\n const contextValue = useMemo(\n () => ({\n postTitle,\n setPostTitle,\n isMenuOpen,\n openMenu,\n closeMenu,\n keywords,\n isLoggedIn,\n setIsLoggedIn,\n mobileBackButtonHref,\n setMobileBackButtonHref,\n loginUrl,\n setLoginUrl,\n }),\n [\n postTitle,\n isMenuOpen,\n openMenu,\n closeMenu,\n keywords,\n isLoggedIn,\n mobileBackButtonHref,\n loginUrl,\n ]\n )\n\n return (\n <HeaderContext.Provider value={contextValue}>\n {children}\n </HeaderContext.Provider>\n )\n}\n\nexport function useHeaderContext() {\n const context = useContext(HeaderContext)\n return context\n}\n"],"mappings":";AAAA,YAAY;;AAAAA,MAAA,CAAAC,cAAA,CAAAC,OAAA;EAAAC,KAAA;AAAA;AAAAD,OAAA,CAAAE,cAAA,GAAAA,cAAA;AAAAF,OAAA,CAAAG,gBAAA,GAAAA,gBAAA;AACZ,IAAAC,MAAA,GAAAC,OAAA;AAOc,IAAAC,WAAA,GAAAD,OAAA;AAiBd,MAAME,aAAa,gBAAG,IAAAC,oBAAa,EAAgCC,SAAS,CAAC;AAEtE,SAASP,cAAcA,CAAC;EAC7BQ,QAAQ;EACRC;AAIF,CAAC,EAAE;EACD,MAAM,CAACC,SAAS,EAAEC,YAAY,CAAC,GAAG,IAAAC,eAAQ,EAAqBL,SAAS,CAAC;EACzE,MAAM,CAACM,UAAU,EAAEC,aAAa,CAAC,GAAG,IAAAF,eAAQ,EAAC,KAAK,CAAC;EACnD,MAAM,CAACG,UAAU,EAAEC,aAAa,CAAC,GAAG,IAAAJ,eAAQ,EAAC,KAAK,CAAC;EACnD,MAAM,CAACK,oBAAoB,EAAEC,uBAAuB,CAAC,GAAG,IAAAN,eAAQ,EAE9DL,SAAS,CAAC;EACZ,MAAM,CAACY,QAAQ,EAAEC,WAAW,CAAC,GAAG,IAAAR,eAAQ,EAAqBL,SAAS,CAAC;EACvE,MAAMc,QAAQ,GAAG,IAAAC,kBAAW,EAAC,MAAMR,aAAa,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;EAC3D,MAAMS,SAAS,GAAG,IAAAD,kBAAW,EAAC,MAAMR,aAAa,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;EAE7D,MAAMU,YAAY,GAAG,IAAAC,cAAO,EAC1B,OAAO;IACLf,SAAS;IACTC,YAAY;IACZE,UAAU;IACVQ,QAAQ;IACRE,SAAS;IACTd,QAAQ;IACRM,UAAU;IACVC,aAAa;IACbC,oBAAoB;IACpBC,uBAAuB;IACvBC,QAAQ;IACRC;EACF,CAAC,CAAC,EACF,CACEV,SAAS,EACTG,UAAU,EACVQ,QAAQ,EACRE,SAAS,EACTd,QAAQ,EACRM,UAAU,EACVE,oBAAoB,EACpBE,QAAQ,CAEZ,CAAC;EAED,oBACE,IAAAf,WAAA,CAAAsB,GAAA,EAACrB,aAAa,CAACsB,QAAQ;IAAC5B,KAAK,EAAEyB,YAAa;IAAAhB,QAAA,EACzCA;EAAQ,CACa,CAAC;AAE7B;AAEO,SAASP,gBAAgBA,CAAA,EAAG;EACjC,MAAM2B,OAAO,GAAG,IAAAC,iBAAU,EAACxB,aAAa,CAAC;EACzC,OAAOuB,OAAO;AAChB"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/header/index.tsx"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAM1D,KAAK,WAAW,GAAG;IACjB,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAA;IACtB,mBAAmB,CAAC,EAAE,QAAQ,EAAE,CAAA;IAChC,gBAAgB,CAAC,EAAE,gBAAgB,CAAA;IACnC,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,iBAAS,MAAM,CAAC,EACd,SAAsB,EACtB,mBAA2C,EAC3C,gBAA8D,EAC9D,iBAAsC,EACtC,YAA4B,EAC5B,SAAsB,GACvB,EAAE,WAAW,2CAwDb;AAED,eAAe,MAAM,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/header/index.tsx"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAM1D,KAAK,WAAW,GAAG;IACjB,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAA;IACtB,mBAAmB,CAAC,EAAE,QAAQ,EAAE,CAAA;IAChC,gBAAgB,CAAC,EAAE,gBAAgB,CAAA;IACnC,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,iBAAS,MAAM,CAAC,EACd,SAAsB,EACtB,mBAA2C,EAC3C,gBAA8D,EAC9D,iBAAsC,EACtC,YAA4B,EAC5B,SAAsB,GACvB,EAAE,WAAW,2CAgEb;AAED,eAAe,MAAM,CAAA"}
@@ -23,6 +23,8 @@ function Header({
23
23
  }) {
24
24
  const context = (0, _headerContext.useHeaderContext)();
25
25
  const postTitle = context?.postTitle;
26
+ const isLoggedIn = context?.isLoggedIn || false;
27
+ const loginUrl = context?.loginUrl || '/login';
26
28
  const isMenuOpen = context?.isMenuOpen || false;
27
29
  const openMenu = context?.openMenu;
28
30
  const closeMenu = context?.closeMenu;
@@ -30,6 +32,7 @@ function Header({
30
32
  const onHamburgerOverlayOpen = () => {
31
33
  openMenu?.();
32
34
  };
35
+ const mobileBackButtonHref = context?.mobileBackButtonHref;
33
36
  const onCloseMenu = () => {
34
37
  closeMenu?.();
35
38
  };
@@ -49,12 +52,17 @@ function Header({
49
52
  postTitle: isAtTop ? undefined : postTitle,
50
53
  searchPlaceholder: searchPlaceholder,
51
54
  subscribeUrl: subscribeUrl,
52
- menuItems: menuItems
55
+ menuItems: menuItems,
56
+ isLoggedIn: isLoggedIn,
57
+ loginUrl: loginUrl
53
58
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_mobileHeader.MobileHeader, {
54
59
  onCloseMenu: onCloseMenu,
55
60
  showCloseButtonWhenMenuOpen: isMobile,
56
61
  onHamburgerOverlayOpen: onHamburgerOverlayOpen,
57
- isMenuOpen: isMenuOpen
62
+ isMenuOpen: isMenuOpen,
63
+ isLoggedIn: isLoggedIn,
64
+ loginUrl: loginUrl,
65
+ mobileBackButtonHref: mobileBackButtonHref
58
66
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_menu.default, {
59
67
  isOpen: isMenuOpen,
60
68
  onClose: closeMenu || (() => undefined),
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_interopRequireDefault","require","Object","defineProperty","exports","value","default","_defaultValues","_hooks","_desktopHeader","_headerContext","_menu","_mobileHeader","_jsxRuntime","Header","menuItems","MENU_ITEMS","additionalMenuItems","ADDITIONAL_MENU_ITEMS","socialMediaHrefs","SOCIAL_MEDIA_ITEMS","map","item","href","searchPlaceholder","SEARCH_PLACEHOLDER","subscribeUrl","SUBSCRIBE_URL","donateUrl","DONATE_URL","context","useHeaderContext","postTitle","isMenuOpen","openMenu","closeMenu","keywords","onHamburgerOverlayOpen","onCloseMenu","isMobile","useMediaQuery","isAtTop","useIsAtTop","scrollingLevel","useScrollLevel","scrollDownDistance","throttleThreshold","isScrollingDown","ScrollLevel","DOWN_HIDDEN","jsxs","Fragment","children","jsx","DesktopHeader","hide","compactMode","undefined","MobileHeader","showCloseButtonWhenMenuOpen","isOpen","onClose","_default"],"sources":["../../src/header/index.tsx"],"sourcesContent":["'use client'\nimport {\n ADDITIONAL_MENU_ITEMS,\n DONATE_URL,\n MENU_ITEMS,\n SEARCH_PLACEHOLDER,\n SOCIAL_MEDIA_ITEMS,\n SUBSCRIBE_URL,\n} from '../constants/default-values'\nimport {\n ScrollLevel,\n useIsAtTop,\n useMediaQuery,\n useScrollLevel,\n} from '../hooks'\nimport type { MenuItem, SocialMediaHrefs } from '../types'\nimport { DesktopHeader } from './desktop-header'\nimport { useHeaderContext } from './header-context'\nimport Menu from './menu'\nimport { MobileHeader } from './mobile-header'\n\ntype HeaderProps = {\n menuItems?: MenuItem[]\n additionalMenuItems?: MenuItem[]\n socialMediaHrefs?: SocialMediaHrefs\n searchPlaceholder?: string\n subscribeUrl?: string\n donateUrl?: string\n}\n\nfunction Header({\n menuItems = MENU_ITEMS,\n additionalMenuItems = ADDITIONAL_MENU_ITEMS,\n socialMediaHrefs = SOCIAL_MEDIA_ITEMS.map((item) => item.href),\n searchPlaceholder = SEARCH_PLACEHOLDER,\n subscribeUrl = SUBSCRIBE_URL,\n donateUrl = DONATE_URL,\n}: HeaderProps) {\n const context = useHeaderContext()\n const postTitle = context?.postTitle\n const isMenuOpen = context?.isMenuOpen || false\n const openMenu = context?.openMenu\n const closeMenu = context?.closeMenu\n const keywords = context?.keywords || []\n const onHamburgerOverlayOpen = () => {\n openMenu?.()\n }\n\n const onCloseMenu = () => {\n closeMenu?.()\n }\n\n const isMobile = useMediaQuery('(max-width: 768px)')\n\n const isAtTop = useIsAtTop()\n const scrollingLevel = useScrollLevel({\n scrollDownDistance: 150,\n throttleThreshold: 50,\n })\n\n const isScrollingDown = scrollingLevel === ScrollLevel.DOWN_HIDDEN\n\n return (\n <>\n <DesktopHeader\n onHamburgerOverlayOpen={onHamburgerOverlayOpen}\n keywords={keywords}\n hide={isScrollingDown}\n compactMode={!isAtTop}\n postTitle={isAtTop ? undefined : postTitle}\n searchPlaceholder={searchPlaceholder}\n subscribeUrl={subscribeUrl}\n menuItems={menuItems}\n />\n <MobileHeader\n onCloseMenu={onCloseMenu}\n showCloseButtonWhenMenuOpen={isMobile}\n onHamburgerOverlayOpen={onHamburgerOverlayOpen}\n isMenuOpen={isMenuOpen}\n />\n <Menu\n isOpen={isMenuOpen}\n onClose={closeMenu || (() => undefined)}\n keywords={keywords}\n menuItems={menuItems}\n additionalMenuItems={additionalMenuItems}\n socialMediaHrefs={socialMediaHrefs}\n donateUrl={donateUrl}\n subscribeUrl={subscribeUrl}\n searchPlaceholder={searchPlaceholder}\n />\n </>\n )\n}\n\nexport default Header\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["_interopRequireDefault","require","Object","defineProperty","exports","value","default","_defaultValues","_hooks","_desktopHeader","_headerContext","_menu","_mobileHeader","_jsxRuntime","Header","menuItems","MENU_ITEMS","additionalMenuItems","ADDITIONAL_MENU_ITEMS","socialMediaHrefs","SOCIAL_MEDIA_ITEMS","map","item","href","searchPlaceholder","SEARCH_PLACEHOLDER","subscribeUrl","SUBSCRIBE_URL","donateUrl","DONATE_URL","context","useHeaderContext","postTitle","isLoggedIn","loginUrl","isMenuOpen","openMenu","closeMenu","keywords","onHamburgerOverlayOpen","mobileBackButtonHref","onCloseMenu","isMobile","useMediaQuery","isAtTop","useIsAtTop","scrollingLevel","useScrollLevel","scrollDownDistance","throttleThreshold","isScrollingDown","ScrollLevel","DOWN_HIDDEN","jsxs","Fragment","children","jsx","DesktopHeader","hide","compactMode","undefined","MobileHeader","showCloseButtonWhenMenuOpen","isOpen","onClose","_default"],"sources":["../../src/header/index.tsx"],"sourcesContent":["'use client'\nimport {\n ADDITIONAL_MENU_ITEMS,\n DONATE_URL,\n MENU_ITEMS,\n SEARCH_PLACEHOLDER,\n SOCIAL_MEDIA_ITEMS,\n SUBSCRIBE_URL,\n} from '../constants/default-values'\nimport {\n ScrollLevel,\n useIsAtTop,\n useMediaQuery,\n useScrollLevel,\n} from '../hooks'\nimport type { MenuItem, SocialMediaHrefs } from '../types'\nimport { DesktopHeader } from './desktop-header'\nimport { useHeaderContext } from './header-context'\nimport Menu from './menu'\nimport { MobileHeader } from './mobile-header'\n\ntype HeaderProps = {\n menuItems?: MenuItem[]\n additionalMenuItems?: MenuItem[]\n socialMediaHrefs?: SocialMediaHrefs\n searchPlaceholder?: string\n subscribeUrl?: string\n donateUrl?: string\n}\n\nfunction Header({\n menuItems = MENU_ITEMS,\n additionalMenuItems = ADDITIONAL_MENU_ITEMS,\n socialMediaHrefs = SOCIAL_MEDIA_ITEMS.map((item) => item.href),\n searchPlaceholder = SEARCH_PLACEHOLDER,\n subscribeUrl = SUBSCRIBE_URL,\n donateUrl = DONATE_URL,\n}: HeaderProps) {\n const context = useHeaderContext()\n const postTitle = context?.postTitle\n const isLoggedIn = context?.isLoggedIn || false\n const loginUrl = context?.loginUrl || '/login'\n const isMenuOpen = context?.isMenuOpen || false\n const openMenu = context?.openMenu\n const closeMenu = context?.closeMenu\n const keywords = context?.keywords || []\n const onHamburgerOverlayOpen = () => {\n openMenu?.()\n }\n const mobileBackButtonHref = context?.mobileBackButtonHref\n\n const onCloseMenu = () => {\n closeMenu?.()\n }\n\n const isMobile = useMediaQuery('(max-width: 768px)')\n\n const isAtTop = useIsAtTop()\n const scrollingLevel = useScrollLevel({\n scrollDownDistance: 150,\n throttleThreshold: 50,\n })\n\n const isScrollingDown = scrollingLevel === ScrollLevel.DOWN_HIDDEN\n\n return (\n <>\n <DesktopHeader\n onHamburgerOverlayOpen={onHamburgerOverlayOpen}\n keywords={keywords}\n hide={isScrollingDown}\n compactMode={!isAtTop}\n postTitle={isAtTop ? undefined : postTitle}\n searchPlaceholder={searchPlaceholder}\n subscribeUrl={subscribeUrl}\n menuItems={menuItems}\n isLoggedIn={isLoggedIn}\n loginUrl={loginUrl}\n />\n <MobileHeader\n onCloseMenu={onCloseMenu}\n showCloseButtonWhenMenuOpen={isMobile}\n onHamburgerOverlayOpen={onHamburgerOverlayOpen}\n isMenuOpen={isMenuOpen}\n isLoggedIn={isLoggedIn}\n loginUrl={loginUrl}\n mobileBackButtonHref={mobileBackButtonHref}\n />\n <Menu\n isOpen={isMenuOpen}\n onClose={closeMenu || (() => undefined)}\n keywords={keywords}\n menuItems={menuItems}\n additionalMenuItems={additionalMenuItems}\n socialMediaHrefs={socialMediaHrefs}\n donateUrl={donateUrl}\n subscribeUrl={subscribeUrl}\n searchPlaceholder={searchPlaceholder}\n />\n </>\n )\n}\n\nexport default Header\n"],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ type IsLoggedInSetterProps = {
2
+ isLoggedIn: boolean;
3
+ loginUrl: string;
4
+ };
5
+ declare function IsLoggedInSetter({ isLoggedIn, loginUrl }: IsLoggedInSetterProps): null;
6
+ export default IsLoggedInSetter;
7
+ //# sourceMappingURL=is-logged-in-setter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"is-logged-in-setter.d.ts","sourceRoot":"","sources":["../../src/header/is-logged-in-setter.tsx"],"names":[],"mappings":"AAIA,KAAK,qBAAqB,GAAG;IAC3B,UAAU,EAAE,OAAO,CAAA;IACnB,QAAQ,EAAE,MAAM,CAAA;CACjB,CAAA;AAED,iBAAS,gBAAgB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,EAAE,qBAAqB,QAexE;AAED,eAAe,gBAAgB,CAAA"}
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _react = require("react");
8
+ var _headerContext = require("./header-context");
9
+ function IsLoggedInSetter({
10
+ isLoggedIn,
11
+ loginUrl
12
+ }) {
13
+ const context = (0, _headerContext.useHeaderContext)();
14
+ const setIsLoggedIn = context?.setIsLoggedIn;
15
+ const setLoginUrl = context?.setLoginUrl;
16
+ (0, _react.useEffect)(() => {
17
+ setIsLoggedIn?.(isLoggedIn);
18
+ setLoginUrl?.(loginUrl);
19
+ return () => {
20
+ setIsLoggedIn?.(false);
21
+ setLoginUrl?.(undefined);
22
+ };
23
+ }, [isLoggedIn, setIsLoggedIn, loginUrl, setLoginUrl]);
24
+ return null;
25
+ }
26
+ var _default = exports.default = IsLoggedInSetter;
27
+ //# sourceMappingURL=is-logged-in-setter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"is-logged-in-setter.js","names":["_react","require","_headerContext","IsLoggedInSetter","isLoggedIn","loginUrl","context","useHeaderContext","setIsLoggedIn","setLoginUrl","useEffect","undefined","_default","exports","default"],"sources":["../../src/header/is-logged-in-setter.tsx"],"sourcesContent":["import { useEffect } from 'react'\n\nimport { useHeaderContext } from './header-context'\n\ntype IsLoggedInSetterProps = {\n isLoggedIn: boolean\n loginUrl: string\n}\n\nfunction IsLoggedInSetter({ isLoggedIn, loginUrl }: IsLoggedInSetterProps) {\n const context = useHeaderContext()\n const setIsLoggedIn = context?.setIsLoggedIn\n const setLoginUrl = context?.setLoginUrl\n\n useEffect(() => {\n setIsLoggedIn?.(isLoggedIn)\n setLoginUrl?.(loginUrl)\n return () => {\n setIsLoggedIn?.(false)\n setLoginUrl?.(undefined)\n }\n }, [isLoggedIn, setIsLoggedIn, loginUrl, setLoginUrl])\n\n return null\n}\n\nexport default IsLoggedInSetter\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEA,IAAAC,cAAA,GAAAD,OAAA;AAOA,SAASE,gBAAgBA,CAAC;EAAEC,UAAU;EAAEC;AAAgC,CAAC,EAAE;EACzE,MAAMC,OAAO,GAAG,IAAAC,+BAAgB,EAAC,CAAC;EAClC,MAAMC,aAAa,GAAGF,OAAO,EAAEE,aAAa;EAC5C,MAAMC,WAAW,GAAGH,OAAO,EAAEG,WAAW;EAExC,IAAAC,gBAAS,EAAC,MAAM;IACdF,aAAa,GAAGJ,UAAU,CAAC;IAC3BK,WAAW,GAAGJ,QAAQ,CAAC;IACvB,OAAO,MAAM;MACXG,aAAa,GAAG,KAAK,CAAC;MACtBC,WAAW,GAAGE,SAAS,CAAC;IAC1B,CAAC;EACH,CAAC,EAAE,CAACP,UAAU,EAAEI,aAAa,EAAEH,QAAQ,EAAEI,WAAW,CAAC,CAAC;EAEtD,OAAO,IAAI;AACb;AAAC,IAAAG,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEcX,gBAAgB"}
@@ -0,0 +1,6 @@
1
+ type MobileBackButtonHrefSetterProps = {
2
+ href?: string;
3
+ };
4
+ declare function MobileBackButtonHrefSetter({ href }: MobileBackButtonHrefSetterProps): null;
5
+ export default MobileBackButtonHrefSetter;
6
+ //# sourceMappingURL=mobile-back-button-href-setter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mobile-back-button-href-setter.d.ts","sourceRoot":"","sources":["../../src/header/mobile-back-button-href-setter.tsx"],"names":[],"mappings":"AAIA,KAAK,+BAA+B,GAAG;IACrC,IAAI,CAAC,EAAE,MAAM,CAAA;CACd,CAAA;AAED,iBAAS,0BAA0B,CAAC,EAAE,IAAI,EAAE,EAAE,+BAA+B,QAW5E;AAED,eAAe,0BAA0B,CAAA"}
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _react = require("react");
8
+ var _headerContext = require("./header-context");
9
+ function MobileBackButtonHrefSetter({
10
+ href
11
+ }) {
12
+ const context = (0, _headerContext.useHeaderContext)();
13
+ const setMobileBackButtonHref = context?.setMobileBackButtonHref;
14
+ (0, _react.useEffect)(() => {
15
+ setMobileBackButtonHref?.(href);
16
+ return () => setMobileBackButtonHref?.(undefined);
17
+ }, [href, setMobileBackButtonHref]);
18
+ return null;
19
+ }
20
+ var _default = exports.default = MobileBackButtonHrefSetter;
21
+ //# sourceMappingURL=mobile-back-button-href-setter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mobile-back-button-href-setter.js","names":["_react","require","_headerContext","MobileBackButtonHrefSetter","href","context","useHeaderContext","setMobileBackButtonHref","useEffect","undefined","_default","exports","default"],"sources":["../../src/header/mobile-back-button-href-setter.tsx"],"sourcesContent":["import { useEffect } from 'react'\n\nimport { useHeaderContext } from './header-context'\n\ntype MobileBackButtonHrefSetterProps = {\n href?: string\n}\n\nfunction MobileBackButtonHrefSetter({ href }: MobileBackButtonHrefSetterProps) {\n const context = useHeaderContext()\n const setMobileBackButtonHref = context?.setMobileBackButtonHref\n\n useEffect(() => {\n setMobileBackButtonHref?.(href)\n\n return () => setMobileBackButtonHref?.(undefined)\n }, [href, setMobileBackButtonHref])\n\n return null\n}\n\nexport default MobileBackButtonHrefSetter\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEA,IAAAC,cAAA,GAAAD,OAAA;AAMA,SAASE,0BAA0BA,CAAC;EAAEC;AAAsC,CAAC,EAAE;EAC7E,MAAMC,OAAO,GAAG,IAAAC,+BAAgB,EAAC,CAAC;EAClC,MAAMC,uBAAuB,GAAGF,OAAO,EAAEE,uBAAuB;EAEhE,IAAAC,gBAAS,EAAC,MAAM;IACdD,uBAAuB,GAAGH,IAAI,CAAC;IAE/B,OAAO,MAAMG,uBAAuB,GAAGE,SAAS,CAAC;EACnD,CAAC,EAAE,CAACL,IAAI,EAAEG,uBAAuB,CAAC,CAAC;EAEnC,OAAO,IAAI;AACb;AAAC,IAAAG,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEcT,0BAA0B"}
@@ -3,7 +3,10 @@ type MobileHeaderProps = {
3
3
  onCloseMenu: () => void;
4
4
  showCloseButtonWhenMenuOpen: boolean;
5
5
  isMenuOpen: boolean;
6
+ isLoggedIn?: boolean;
7
+ mobileBackButtonHref?: string;
8
+ loginUrl?: string;
6
9
  };
7
- export declare function MobileHeader({ onHamburgerOverlayOpen, onCloseMenu, showCloseButtonWhenMenuOpen, isMenuOpen, }: MobileHeaderProps): import("react/jsx-runtime").JSX.Element;
10
+ export declare function MobileHeader({ onHamburgerOverlayOpen, onCloseMenu, showCloseButtonWhenMenuOpen, isMenuOpen, isLoggedIn, loginUrl, mobileBackButtonHref, }: MobileHeaderProps): import("react/jsx-runtime").JSX.Element;
8
11
  export {};
9
12
  //# sourceMappingURL=mobile-header.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mobile-header.d.ts","sourceRoot":"","sources":["../../src/header/mobile-header.tsx"],"names":[],"mappings":"AAMA,KAAK,iBAAiB,GAAG;IACvB,sBAAsB,EAAE,MAAM,IAAI,CAAA;IAClC,WAAW,EAAE,MAAM,IAAI,CAAA;IACvB,2BAA2B,EAAE,OAAO,CAAA;IACpC,UAAU,EAAE,OAAO,CAAA;CACpB,CAAA;AAED,wBAAgB,YAAY,CAAC,EAC3B,sBAAsB,EACtB,WAAW,EACX,2BAA2B,EAC3B,UAAU,GACX,EAAE,iBAAiB,2CA0CnB"}
1
+ {"version":3,"file":"mobile-header.d.ts","sourceRoot":"","sources":["../../src/header/mobile-header.tsx"],"names":[],"mappings":"AAMA,KAAK,iBAAiB,GAAG;IACvB,sBAAsB,EAAE,MAAM,IAAI,CAAA;IAClC,WAAW,EAAE,MAAM,IAAI,CAAA;IACvB,2BAA2B,EAAE,OAAO,CAAA;IACpC,UAAU,EAAE,OAAO,CAAA;IACnB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB,CAAA;AAED,wBAAgB,YAAY,CAAC,EAC3B,sBAAsB,EACtB,WAAW,EACX,2BAA2B,EAC3B,UAAU,EACV,UAAU,EACV,QAAQ,EACR,oBAAoB,GACrB,EAAE,iBAAiB,2CAoDnB"}
@@ -13,7 +13,10 @@ function MobileHeader({
13
13
  onHamburgerOverlayOpen,
14
14
  onCloseMenu,
15
15
  showCloseButtonWhenMenuOpen,
16
- isMenuOpen
16
+ isMenuOpen,
17
+ isLoggedIn,
18
+ loginUrl,
19
+ mobileBackButtonHref
17
20
  }) {
18
21
  const showCloseButton = showCloseButtonWhenMenuOpen && isMenuOpen;
19
22
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
@@ -23,10 +26,17 @@ function MobileHeader({
23
26
  className: (0, _cn.cn)('px-6 tablet:px-8 ease-in-out top-0 translate-y-0 pointer-events-auto fixed z-1002 w-full bg-neutral-white opacity-100 transition-all duration-300 tablet:z-1000 desktop:hidden'),
24
27
  children: /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
25
28
  className: "py-4 flex items-center justify-between",
26
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_sharedComponents.LogoLink, {}), /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
29
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
30
+ className: "flex items-center",
31
+ children: [mobileBackButtonHref && /*#__PURE__*/(0, _jsxRuntime.jsx)("a", {
32
+ href: mobileBackButtonHref,
33
+ className: "size-8 mr-2 flex cursor-pointer items-center justify-center text-neutral-600 tablet:hidden",
34
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icons.ArrowIcon, {})
35
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_sharedComponents.LogoLink, {})]
36
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
27
37
  className: "gap-4 flex items-center",
28
38
  children: [!showCloseButton && /*#__PURE__*/(0, _jsxRuntime.jsx)("a", {
29
- href: "/login",
39
+ href: isLoggedIn ? '/member' : loginUrl ?? '/login',
30
40
  className: "w-8 h-8 flex items-center justify-center rounded-full text-red-400 transition-colors duration-200 hover:text-red-500",
31
41
  "aria-label": "\u767B\u5165",
32
42
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icons.LoginIcon, {})
@@ -1 +1 @@
1
- {"version":3,"file":"mobile-header.js","names":["Object","defineProperty","exports","value","MobileHeader","_icons","require","_cn","_sharedComponents","_jsxRuntime","onHamburgerOverlayOpen","onCloseMenu","showCloseButtonWhenMenuOpen","isMenuOpen","showCloseButton","jsxs","Fragment","children","jsx","className","cn","LogoLink","href","LoginIcon","onClick","ClearIcon","HamburgerButton"],"sources":["../../src/header/mobile-header.tsx"],"sourcesContent":["'use client'\n\nimport { ClearIcon, LoginIcon } from '../icons'\nimport { cn } from '../utils/cn'\nimport { HamburgerButton, LogoLink } from './shared-components'\n\ntype MobileHeaderProps = {\n onHamburgerOverlayOpen: () => void\n onCloseMenu: () => void\n showCloseButtonWhenMenuOpen: boolean\n isMenuOpen: boolean\n}\n\nexport function MobileHeader({\n onHamburgerOverlayOpen,\n onCloseMenu,\n showCloseButtonWhenMenuOpen,\n isMenuOpen,\n}: MobileHeaderProps) {\n const showCloseButton = showCloseButtonWhenMenuOpen && isMenuOpen\n\n return (\n <>\n <div className=\"h-(--mobile-header-height) desktop:hidden\"></div>\n <div\n className={cn(\n 'px-6 tablet:px-8 ease-in-out top-0 translate-y-0 pointer-events-auto fixed z-1002 w-full bg-neutral-white opacity-100 transition-all duration-300 tablet:z-1000 desktop:hidden'\n )}\n >\n <div className=\"py-4 flex items-center justify-between\">\n <LogoLink />\n\n <div className=\"gap-4 flex items-center\">\n {!showCloseButton && (\n <a\n href=\"/login\"\n className=\"w-8 h-8 flex items-center justify-center rounded-full text-red-400 transition-colors duration-200 hover:text-red-500\"\n aria-label=\"登入\"\n >\n <LoginIcon />\n </a>\n )}\n {showCloseButton ? (\n <button\n onClick={onCloseMenu}\n className=\"w-8 h-8 flex cursor-pointer items-center justify-center rounded-full text-neutral-600 transition-colors duration-200 hover:text-neutral-800\"\n aria-label=\"關閉選單\"\n >\n <ClearIcon />\n </button>\n ) : (\n <HamburgerButton\n onHamburgerOverlayOpen={onHamburgerOverlayOpen}\n />\n )}\n </div>\n </div>\n </div>\n </>\n )\n}\n"],"mappings":";AAAA,YAAY;;AAAAA,MAAA,CAAAC,cAAA,CAAAC,OAAA;EAAAC,KAAA;AAAA;AAAAD,OAAA,CAAAE,YAAA,GAAAA,YAAA;AAEZ,IAAAC,MAAA,GAAAC,OAAA;AACA,IAAAC,GAAA,GAAAD,OAAA;AACA,IAAAE,iBAAA,GAAAF,OAAA;AAA+D,IAAAG,WAAA,GAAAH,OAAA;AASxD,SAASF,YAAYA,CAAC;EAC3BM,sBAAsB;EACtBC,WAAW;EACXC,2BAA2B;EAC3BC;AACiB,CAAC,EAAE;EACpB,MAAMC,eAAe,GAAGF,2BAA2B,IAAIC,UAAU;EAEjE,oBACE,IAAAJ,WAAA,CAAAM,IAAA,EAAAN,WAAA,CAAAO,QAAA;IAAAC,QAAA,gBACE,IAAAR,WAAA,CAAAS,GAAA;MAAKC,SAAS,EAAC;IAA2C,CAAM,CAAC,eACjE,IAAAV,WAAA,CAAAS,GAAA;MACEC,SAAS,EAAE,IAAAC,MAAE,EACX,gLACF,CAAE;MAAAH,QAAA,eAEF,IAAAR,WAAA,CAAAM,IAAA;QAAKI,SAAS,EAAC,wCAAwC;QAAAF,QAAA,gBACrD,IAAAR,WAAA,CAAAS,GAAA,EAACV,iBAAA,CAAAa,QAAQ,IAAE,CAAC,eAEZ,IAAAZ,WAAA,CAAAM,IAAA;UAAKI,SAAS,EAAC,yBAAyB;UAAAF,QAAA,GACrC,CAACH,eAAe,iBACf,IAAAL,WAAA,CAAAS,GAAA;YACEI,IAAI,EAAC,QAAQ;YACbH,SAAS,EAAC,sHAAsH;YAChI,cAAW,cAAI;YAAAF,QAAA,eAEf,IAAAR,WAAA,CAAAS,GAAA,EAACb,MAAA,CAAAkB,SAAS,IAAE;UAAC,CACZ,CACJ,EACAT,eAAe,gBACd,IAAAL,WAAA,CAAAS,GAAA;YACEM,OAAO,EAAEb,WAAY;YACrBQ,SAAS,EAAC,6IAA6I;YACvJ,cAAW,0BAAM;YAAAF,QAAA,eAEjB,IAAAR,WAAA,CAAAS,GAAA,EAACb,MAAA,CAAAoB,SAAS,IAAE;UAAC,CACP,CAAC,gBAET,IAAAhB,WAAA,CAAAS,GAAA,EAACV,iBAAA,CAAAkB,eAAe;YACdhB,sBAAsB,EAAEA;UAAuB,CAChD,CACF;QAAA,CACE,CAAC;MAAA,CACH;IAAC,CACH,CAAC;EAAA,CACN,CAAC;AAEP"}
1
+ {"version":3,"file":"mobile-header.js","names":["Object","defineProperty","exports","value","MobileHeader","_icons","require","_cn","_sharedComponents","_jsxRuntime","onHamburgerOverlayOpen","onCloseMenu","showCloseButtonWhenMenuOpen","isMenuOpen","isLoggedIn","loginUrl","mobileBackButtonHref","showCloseButton","jsxs","Fragment","children","jsx","className","cn","href","ArrowIcon","LogoLink","LoginIcon","onClick","ClearIcon","HamburgerButton"],"sources":["../../src/header/mobile-header.tsx"],"sourcesContent":["'use client'\n\nimport { ArrowIcon, ClearIcon, LoginIcon } from '../icons'\nimport { cn } from '../utils/cn'\nimport { HamburgerButton, LogoLink } from './shared-components'\n\ntype MobileHeaderProps = {\n onHamburgerOverlayOpen: () => void\n onCloseMenu: () => void\n showCloseButtonWhenMenuOpen: boolean\n isMenuOpen: boolean\n isLoggedIn?: boolean\n mobileBackButtonHref?: string\n loginUrl?: string\n}\n\nexport function MobileHeader({\n onHamburgerOverlayOpen,\n onCloseMenu,\n showCloseButtonWhenMenuOpen,\n isMenuOpen,\n isLoggedIn,\n loginUrl,\n mobileBackButtonHref,\n}: MobileHeaderProps) {\n const showCloseButton = showCloseButtonWhenMenuOpen && isMenuOpen\n\n return (\n <>\n <div className=\"h-(--mobile-header-height) desktop:hidden\"></div>\n <div\n className={cn(\n 'px-6 tablet:px-8 ease-in-out top-0 translate-y-0 pointer-events-auto fixed z-1002 w-full bg-neutral-white opacity-100 transition-all duration-300 tablet:z-1000 desktop:hidden'\n )}\n >\n <div className=\"py-4 flex items-center justify-between\">\n <div className=\"flex items-center\">\n {mobileBackButtonHref && (\n <a\n href={mobileBackButtonHref}\n className=\"size-8 mr-2 flex cursor-pointer items-center justify-center text-neutral-600 tablet:hidden\"\n >\n <ArrowIcon />\n </a>\n )}\n <LogoLink />\n </div>\n\n <div className=\"gap-4 flex items-center\">\n {!showCloseButton && (\n <a\n href={isLoggedIn ? '/member' : (loginUrl ?? '/login')}\n className=\"w-8 h-8 flex items-center justify-center rounded-full text-red-400 transition-colors duration-200 hover:text-red-500\"\n aria-label=\"登入\"\n >\n <LoginIcon />\n </a>\n )}\n {showCloseButton ? (\n <button\n onClick={onCloseMenu}\n className=\"w-8 h-8 flex cursor-pointer items-center justify-center rounded-full text-neutral-600 transition-colors duration-200 hover:text-neutral-800\"\n aria-label=\"關閉選單\"\n >\n <ClearIcon />\n </button>\n ) : (\n <HamburgerButton\n onHamburgerOverlayOpen={onHamburgerOverlayOpen}\n />\n )}\n </div>\n </div>\n </div>\n </>\n )\n}\n"],"mappings":";AAAA,YAAY;;AAAAA,MAAA,CAAAC,cAAA,CAAAC,OAAA;EAAAC,KAAA;AAAA;AAAAD,OAAA,CAAAE,YAAA,GAAAA,YAAA;AAEZ,IAAAC,MAAA,GAAAC,OAAA;AACA,IAAAC,GAAA,GAAAD,OAAA;AACA,IAAAE,iBAAA,GAAAF,OAAA;AAA+D,IAAAG,WAAA,GAAAH,OAAA;AAYxD,SAASF,YAAYA,CAAC;EAC3BM,sBAAsB;EACtBC,WAAW;EACXC,2BAA2B;EAC3BC,UAAU;EACVC,UAAU;EACVC,QAAQ;EACRC;AACiB,CAAC,EAAE;EACpB,MAAMC,eAAe,GAAGL,2BAA2B,IAAIC,UAAU;EAEjE,oBACE,IAAAJ,WAAA,CAAAS,IAAA,EAAAT,WAAA,CAAAU,QAAA;IAAAC,QAAA,gBACE,IAAAX,WAAA,CAAAY,GAAA;MAAKC,SAAS,EAAC;IAA2C,CAAM,CAAC,eACjE,IAAAb,WAAA,CAAAY,GAAA;MACEC,SAAS,EAAE,IAAAC,MAAE,EACX,gLACF,CAAE;MAAAH,QAAA,eAEF,IAAAX,WAAA,CAAAS,IAAA;QAAKI,SAAS,EAAC,wCAAwC;QAAAF,QAAA,gBACrD,IAAAX,WAAA,CAAAS,IAAA;UAAKI,SAAS,EAAC,mBAAmB;UAAAF,QAAA,GAC/BJ,oBAAoB,iBACnB,IAAAP,WAAA,CAAAY,GAAA;YACEG,IAAI,EAAER,oBAAqB;YAC3BM,SAAS,EAAC,4FAA4F;YAAAF,QAAA,eAEtG,IAAAX,WAAA,CAAAY,GAAA,EAAChB,MAAA,CAAAoB,SAAS,IAAE;UAAC,CACZ,CACJ,eACD,IAAAhB,WAAA,CAAAY,GAAA,EAACb,iBAAA,CAAAkB,QAAQ,IAAE,CAAC;QAAA,CACT,CAAC,eAEN,IAAAjB,WAAA,CAAAS,IAAA;UAAKI,SAAS,EAAC,yBAAyB;UAAAF,QAAA,GACrC,CAACH,eAAe,iBACf,IAAAR,WAAA,CAAAY,GAAA;YACEG,IAAI,EAAEV,UAAU,GAAG,SAAS,GAAIC,QAAQ,IAAI,QAAU;YACtDO,SAAS,EAAC,sHAAsH;YAChI,cAAW,cAAI;YAAAF,QAAA,eAEf,IAAAX,WAAA,CAAAY,GAAA,EAAChB,MAAA,CAAAsB,SAAS,IAAE;UAAC,CACZ,CACJ,EACAV,eAAe,gBACd,IAAAR,WAAA,CAAAY,GAAA;YACEO,OAAO,EAAEjB,WAAY;YACrBW,SAAS,EAAC,6IAA6I;YACvJ,cAAW,0BAAM;YAAAF,QAAA,eAEjB,IAAAX,WAAA,CAAAY,GAAA,EAAChB,MAAA,CAAAwB,SAAS,IAAE;UAAC,CACP,CAAC,gBAET,IAAApB,WAAA,CAAAY,GAAA,EAACb,iBAAA,CAAAsB,eAAe;YACdpB,sBAAsB,EAAEA;UAAuB,CAChD,CACF;QAAA,CACE,CAAC;MAAA,CACH;IAAC,CACH,CAAC;EAAA,CACN,CAAC;AAEP"}
@@ -1 +1 @@
1
- {"version":3,"file":"shared-components.d.ts","sourceRoot":"","sources":["../../src/header/shared-components.tsx"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAA;AA2ExC,wBAAgB,QAAQ,CAAC,EAAE,WAAmB,EAAE,EAAE;IAAE,WAAW,CAAC,EAAE,OAAO,CAAA;CAAE,2CAgB1E;AAED,KAAK,uBAAuB,GACxB;IACE,IAAI,EAAE,SAAS,CAAA;IACf,YAAY,EAAE,OAAO,CAAA;IACrB,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,iBAAiB,EAAE,MAAM,CAAA;CAC1B,GACD;IACE,IAAI,EAAE,QAAQ,CAAA;IACd,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,iBAAiB,EAAE,MAAM,CAAA;CAC1B,CAAA;AAEL,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,uBAAuB,2CAwEhE;AAED,wBAAgB,aAAa,CAAC,EAC5B,cAAsB,EACtB,IAAI,EACJ,iBAAiB,EACjB,YAAY,GACb,EAAE;IACD,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,iBAAiB,EAAE,MAAM,CAAA;IACzB,YAAY,EAAE,MAAM,CAAA;CACrB,2CAkEA;AAED,wBAAgB,gBAAgB,CAAC,EAC/B,sBAAsB,EACtB,SAAS,GACV,EAAE;IACD,sBAAsB,EAAE,MAAM,IAAI,CAAA;IAClC,SAAS,EAAE,QAAQ,EAAE,CAAA;CACtB,2CA4BA;AAED,wBAAgB,eAAe,CAAC,EAC9B,sBAAsB,EACtB,KAAa,GACd,EAAE;IACD,sBAAsB,EAAE,MAAM,IAAI,CAAA;IAClC,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB,2CAYA"}
1
+ {"version":3,"file":"shared-components.d.ts","sourceRoot":"","sources":["../../src/header/shared-components.tsx"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAA;AA2ExC,wBAAgB,QAAQ,CAAC,EAAE,WAAmB,EAAE,EAAE;IAAE,WAAW,CAAC,EAAE,OAAO,CAAA;CAAE,2CAgB1E;AAED,KAAK,uBAAuB,GACxB;IACE,IAAI,EAAE,SAAS,CAAA;IACf,YAAY,EAAE,OAAO,CAAA;IACrB,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,iBAAiB,EAAE,MAAM,CAAA;CAC1B,GACD;IACE,IAAI,EAAE,QAAQ,CAAA;IACd,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,iBAAiB,EAAE,MAAM,CAAA;CAC1B,CAAA;AAEL,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,uBAAuB,2CAyEhE;AAED,wBAAgB,aAAa,CAAC,EAC5B,cAAsB,EACtB,IAAI,EACJ,iBAAiB,EACjB,YAAY,GACb,EAAE;IACD,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,iBAAiB,EAAE,MAAM,CAAA;IACzB,YAAY,EAAE,MAAM,CAAA;CACrB,2CAkEA;AAED,wBAAgB,gBAAgB,CAAC,EAC/B,sBAAsB,EACtB,SAAS,GACV,EAAE;IACD,sBAAsB,EAAE,MAAM,IAAI,CAAA;IAClC,SAAS,EAAE,QAAQ,EAAE,CAAA;CACtB,2CA4BA;AAED,wBAAgB,eAAe,CAAC,EAC9B,sBAAsB,EACtB,KAAa,GACd,EAAE;IACD,sBAAsB,EAAE,MAAM,IAAI,CAAA;IAClC,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB,2CAYA"}
@@ -128,7 +128,8 @@ function SearchInputSection(props) {
128
128
  className: "w-[99%]",
129
129
  inputRef: ref,
130
130
  onChange: setSearchValue,
131
- value: searchValue
131
+ value: searchValue,
132
+ mode: "search"
132
133
  })
133
134
  }), /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
134
135
  className: searchDropdownVariants({
@@ -1 +1 @@
1
- {"version":3,"file":"shared-components.js","names":["Object","defineProperty","exports","value","ActionButtons","BottomNavigation","HamburgerButton","LogoLink","SearchInputSection","_classVarianceAuthority","require","_react","_components","_icons","_cn","_jsxRuntime","searchFormVariants","cva","variants","mode","inline","popover","isSearchOpen","true","false","compoundVariants","class","searchDropdownVariants","isFocused","compactMode","jsx","href","className","rel","children","src","alt","loading","cn","width","height","props","ref","useRef","setIsFocused","useState","searchValue","setSearchValue","tags","searchPlaceholder","useEffect","current","focus","document","body","classList","add","remove","jsxs","onFocus","onBlur","role","method","action","undefined","Input","placeholder","name","title","inputRef","onChange","map","keyword","encodeURIComponent","hideCtaButtons","subscribeUrl","setIsSearchOpen","containerRef","buttonRef","handleClickOutside","event","containerElement","buttonElement","contains","target","addEventListener","removeEventListener","Button","variant","size","asChild","onClick","ClearIcon","SearchIcon","SettingsIcon","onHamburgerOverlayOpen","menuItems","small","reduce","acc","item","index","label","length","HamburgerIconSmall","HamburgerIcon"],"sources":["../../src/header/shared-components.tsx"],"sourcesContent":["'use client'\nimport { cva } from 'class-variance-authority'\nimport { useEffect, useRef, useState } from 'react'\n\nimport { Button, Input } from '../components'\nimport {\n ClearIcon,\n HamburgerIcon,\n HamburgerIconSmall,\n SearchIcon,\n SettingsIcon,\n} from '../icons'\nimport type { MenuItem } from '../types'\nimport { cn } from '../utils/cn'\n\nconst searchFormVariants = cva(\n 'ease-in-out h-full transition-all duration-300',\n {\n variants: {\n mode: {\n inline: 'h-11 w-full',\n popover: 'top-0 -right-4 w-66 absolute overflow-hidden opacity-0',\n },\n isSearchOpen: {\n true: '',\n false: '',\n },\n },\n compoundVariants: [\n {\n mode: 'popover',\n isSearchOpen: true,\n class: 'w-66 pointer-events-auto opacity-100',\n },\n {\n mode: 'popover',\n isSearchOpen: false,\n class: 'pointer-events-none',\n },\n ],\n }\n)\n\nconst searchDropdownVariants = cva(\n 'rounded-xl mt-2 w-66 ease-in-out h-0 p-0 z-50 bg-neutral-white opacity-0 transition-all duration-200',\n {\n variants: {\n mode: {\n inline: '',\n popover: 'top-12 -right-4 shadow-custom p-4 absolute',\n },\n isSearchOpen: {\n true: '',\n false: '',\n },\n isFocused: {\n true: '',\n false: '',\n },\n },\n compoundVariants: [\n {\n mode: 'popover',\n isSearchOpen: true,\n isFocused: true,\n class: 'p-4 h-min opacity-100',\n },\n {\n mode: 'popover',\n isSearchOpen: false,\n class: 'pointer-events-none',\n },\n {\n mode: 'inline',\n isFocused: true,\n class:\n 'translate-y-0 pt-6 mt-0 bg-neutral-transparent h-min w-full opacity-100',\n },\n {\n mode: 'inline',\n isFocused: false,\n class: '-translate-y-3 pointer-events-none w-full',\n },\n ],\n }\n)\n\nexport function LogoLink({ compactMode = false }: { compactMode?: boolean }) {\n return (\n <a href=\"/\" className=\"flex items-center\" rel=\"home\">\n <img\n src=\"/assets/images/brand-icon.svg\"\n alt=\"少年報導者 The Reporter for Kids\"\n loading=\"eager\"\n className={cn(\n 'h-5 tablet:h-6 desktop:h-8 ease-in-out w-auto transition-all duration-500',\n compactMode && 'desktop:h-[26px]'\n )}\n width={293}\n height={32}\n />\n </a>\n )\n}\n\ntype SearchInputSectionProps =\n | {\n mode: 'popover'\n isSearchOpen: boolean\n tags: string[]\n searchPlaceholder: string\n }\n | {\n mode: 'inline'\n tags: string[]\n searchPlaceholder: string\n }\n\nexport function SearchInputSection(props: SearchInputSectionProps) {\n const ref = useRef<HTMLInputElement>(null)\n const [isFocused, setIsFocused] = useState(false)\n const [searchValue, setSearchValue] = useState('')\n\n const mode = props.mode\n const isSearchOpen = mode === 'popover' && props.isSearchOpen\n const tags = props.tags\n const searchPlaceholder = props.searchPlaceholder\n\n useEffect(() => {\n if (mode === 'inline') {\n return\n }\n if (isSearchOpen) {\n ref.current?.focus()\n setIsFocused(true)\n document.body.classList.add('no-scroll')\n return\n }\n setIsFocused(false)\n document.body.classList.remove('no-scroll')\n }, [mode, isSearchOpen])\n\n return (\n <div\n onFocus={() => setIsFocused(true)}\n onBlur={() => setIsFocused(false)}\n className={mode === 'inline' ? 'relative w-full' : 'h-11'}\n >\n <form\n role=\"search\"\n method=\"get\"\n action=\"/search\"\n className={searchFormVariants({\n mode,\n isSearchOpen: mode === 'popover' ? isSearchOpen : undefined,\n })}\n >\n <Input\n placeholder={searchPlaceholder}\n name=\"q\"\n title=\"Search for...\"\n aria-label=\"Search for...\"\n className=\"w-[99%]\"\n inputRef={ref}\n onChange={setSearchValue}\n value={searchValue}\n />\n </form>\n <div\n className={searchDropdownVariants({\n mode,\n isSearchOpen: mode === 'popover' ? isSearchOpen : undefined,\n isFocused,\n })}\n >\n <h3 className=\"font-bold mb-3 prose-p3 text-neutral-700\">熱門搜尋</h3>\n <div className=\"gap-2.5 flex flex-wrap\">\n {tags.map((keyword) => (\n <a\n key={keyword}\n className=\"px-3 py-1 font-bold cursor-pointer rounded-full bg-neutral-200 prose-p2 text-neutral-900 transition-colors duration-200 hover:bg-red-500 hover:text-neutral-white\"\n href={`/search?q=${encodeURIComponent(keyword)}`}\n >\n #{keyword}\n </a>\n ))}\n </div>\n </div>\n </div>\n )\n}\n\nexport function ActionButtons({\n hideCtaButtons = false,\n tags,\n searchPlaceholder,\n subscribeUrl,\n}: {\n hideCtaButtons?: boolean\n tags: string[]\n searchPlaceholder: string\n subscribeUrl: string\n}) {\n const [isSearchOpen, setIsSearchOpen] = useState(false)\n\n const containerRef = useRef<HTMLDivElement>(null)\n const buttonRef = useRef<HTMLButtonElement>(null)\n\n useEffect(() => {\n const handleClickOutside = (event: MouseEvent) => {\n const containerElement = containerRef.current\n const buttonElement = buttonRef.current\n if (!containerElement || !buttonElement) return\n if (\n !containerElement.contains(event.target as Node) &&\n !buttonElement.contains(event.target as Node)\n ) {\n setIsSearchOpen(false)\n }\n }\n\n document.addEventListener('mousedown', handleClickOutside)\n return () => {\n document.removeEventListener('mousedown', handleClickOutside)\n }\n }, [])\n\n return (\n <div className=\"relative flex items-center\">\n <div className=\"mr-6 relative flex items-center\" ref={containerRef}>\n {/* CTA Buttons - Base layer */}\n {!hideCtaButtons && !isSearchOpen && (\n <div className=\"gap-4 flex items-center\">\n <Button variant=\"secondary\" size={32} asChild>\n <a href=\"/about#post\">投稿</a>\n </Button>\n <Button variant=\"primary\" size={32} asChild>\n <a href={subscribeUrl} target=\"_blank\" rel=\"noopener noreferrer\">\n 訂閱\n </a>\n </Button>\n </div>\n )}\n\n <SearchInputSection\n isSearchOpen={isSearchOpen}\n mode=\"popover\"\n tags={tags}\n searchPlaceholder={searchPlaceholder}\n />\n </div>\n\n <button\n className=\"w-8 h-8 mr-4 flex cursor-pointer items-center justify-center rounded-full text-neutral-600 transition-all duration-200 hover:text-neutral-800\"\n aria-label=\"搜尋\"\n onClick={() => setIsSearchOpen(!isSearchOpen)}\n ref={buttonRef}\n >\n {isSearchOpen ? <ClearIcon /> : <SearchIcon />}\n </button>\n <button\n className=\"w-8 h-8 flex cursor-pointer items-center justify-center rounded-full text-neutral-600 transition-all duration-200 hover:text-neutral-800\"\n aria-label=\"設定\"\n >\n <SettingsIcon />\n </button>\n </div>\n )\n}\n\nexport function BottomNavigation({\n onHamburgerOverlayOpen,\n menuItems,\n}: {\n onHamburgerOverlayOpen: () => void\n menuItems: MenuItem[]\n}) {\n return (\n <div className=\"py-2 px-4 flex w-full items-center justify-between border-y border-neutral-border\">\n <HamburgerButton onHamburgerOverlayOpen={onHamburgerOverlayOpen} small />\n\n {menuItems.reduce((acc, item, index) => {\n return [\n ...acc,\n <div key={item.label} className=\"flex items-center\">\n <a\n href={item.href}\n className=\"py-1 font-bold! h-6 flex items-center prose-p1 text-neutral-900 transition-colors hover:text-red-400\"\n >\n {item.label}\n </a>\n </div>,\n ...(index < menuItems.length - 1\n ? [\n <div\n key={`separator-${index}`}\n className=\"h-4 mx-2 w-px bg-neutral-border\"\n />,\n ]\n : []),\n ]\n }, [] as React.ReactNode[])}\n </div>\n )\n}\n\nexport function HamburgerButton({\n onHamburgerOverlayOpen,\n small = false,\n}: {\n onHamburgerOverlayOpen: () => void\n small?: boolean\n}) {\n return (\n <button\n className={cn(\n 'rounded-sm ease-in-out flex cursor-pointer items-center justify-center transition-all duration-300 hover:[&>svg>path:nth-child(1)]:fill-blue-500 hover:[&>svg>path:nth-child(2)]:fill-red-500 hover:[&>svg>path:nth-child(3)]:fill-yellow-500 hover:[&>svg>rect:nth-child(1)]:fill-blue-500 hover:[&>svg>rect:nth-child(2)]:fill-red-500 hover:[&>svg>rect:nth-child(3)]:fill-yellow-500',\n small ? 'w-6 h-6' : 'w-8 h-8'\n )}\n onClick={onHamburgerOverlayOpen}\n >\n {small ? <HamburgerIconSmall /> : <HamburgerIcon />}\n </button>\n )\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"shared-components.js","names":["Object","defineProperty","exports","value","ActionButtons","BottomNavigation","HamburgerButton","LogoLink","SearchInputSection","_classVarianceAuthority","require","_react","_components","_icons","_cn","_jsxRuntime","searchFormVariants","cva","variants","mode","inline","popover","isSearchOpen","true","false","compoundVariants","class","searchDropdownVariants","isFocused","compactMode","jsx","href","className","rel","children","src","alt","loading","cn","width","height","props","ref","useRef","setIsFocused","useState","searchValue","setSearchValue","tags","searchPlaceholder","useEffect","current","focus","document","body","classList","add","remove","jsxs","onFocus","onBlur","role","method","action","undefined","Input","placeholder","name","title","inputRef","onChange","map","keyword","encodeURIComponent","hideCtaButtons","subscribeUrl","setIsSearchOpen","containerRef","buttonRef","handleClickOutside","event","containerElement","buttonElement","contains","target","addEventListener","removeEventListener","Button","variant","size","asChild","onClick","ClearIcon","SearchIcon","SettingsIcon","onHamburgerOverlayOpen","menuItems","small","reduce","acc","item","index","label","length","HamburgerIconSmall","HamburgerIcon"],"sources":["../../src/header/shared-components.tsx"],"sourcesContent":["'use client'\nimport { cva } from 'class-variance-authority'\nimport { useEffect, useRef, useState } from 'react'\n\nimport { Button, Input } from '../components'\nimport {\n ClearIcon,\n HamburgerIcon,\n HamburgerIconSmall,\n SearchIcon,\n SettingsIcon,\n} from '../icons'\nimport type { MenuItem } from '../types'\nimport { cn } from '../utils/cn'\n\nconst searchFormVariants = cva(\n 'ease-in-out h-full transition-all duration-300',\n {\n variants: {\n mode: {\n inline: 'h-11 w-full',\n popover: 'top-0 -right-4 w-66 absolute overflow-hidden opacity-0',\n },\n isSearchOpen: {\n true: '',\n false: '',\n },\n },\n compoundVariants: [\n {\n mode: 'popover',\n isSearchOpen: true,\n class: 'w-66 pointer-events-auto opacity-100',\n },\n {\n mode: 'popover',\n isSearchOpen: false,\n class: 'pointer-events-none',\n },\n ],\n }\n)\n\nconst searchDropdownVariants = cva(\n 'rounded-xl mt-2 w-66 ease-in-out h-0 p-0 z-50 bg-neutral-white opacity-0 transition-all duration-200',\n {\n variants: {\n mode: {\n inline: '',\n popover: 'top-12 -right-4 shadow-custom p-4 absolute',\n },\n isSearchOpen: {\n true: '',\n false: '',\n },\n isFocused: {\n true: '',\n false: '',\n },\n },\n compoundVariants: [\n {\n mode: 'popover',\n isSearchOpen: true,\n isFocused: true,\n class: 'p-4 h-min opacity-100',\n },\n {\n mode: 'popover',\n isSearchOpen: false,\n class: 'pointer-events-none',\n },\n {\n mode: 'inline',\n isFocused: true,\n class:\n 'translate-y-0 pt-6 mt-0 bg-neutral-transparent h-min w-full opacity-100',\n },\n {\n mode: 'inline',\n isFocused: false,\n class: '-translate-y-3 pointer-events-none w-full',\n },\n ],\n }\n)\n\nexport function LogoLink({ compactMode = false }: { compactMode?: boolean }) {\n return (\n <a href=\"/\" className=\"flex items-center\" rel=\"home\">\n <img\n src=\"/assets/images/brand-icon.svg\"\n alt=\"少年報導者 The Reporter for Kids\"\n loading=\"eager\"\n className={cn(\n 'h-5 tablet:h-6 desktop:h-8 ease-in-out w-auto transition-all duration-500',\n compactMode && 'desktop:h-[26px]'\n )}\n width={293}\n height={32}\n />\n </a>\n )\n}\n\ntype SearchInputSectionProps =\n | {\n mode: 'popover'\n isSearchOpen: boolean\n tags: string[]\n searchPlaceholder: string\n }\n | {\n mode: 'inline'\n tags: string[]\n searchPlaceholder: string\n }\n\nexport function SearchInputSection(props: SearchInputSectionProps) {\n const ref = useRef<HTMLInputElement>(null)\n const [isFocused, setIsFocused] = useState(false)\n const [searchValue, setSearchValue] = useState('')\n\n const mode = props.mode\n const isSearchOpen = mode === 'popover' && props.isSearchOpen\n const tags = props.tags\n const searchPlaceholder = props.searchPlaceholder\n\n useEffect(() => {\n if (mode === 'inline') {\n return\n }\n if (isSearchOpen) {\n ref.current?.focus()\n setIsFocused(true)\n document.body.classList.add('no-scroll')\n return\n }\n setIsFocused(false)\n document.body.classList.remove('no-scroll')\n }, [mode, isSearchOpen])\n\n return (\n <div\n onFocus={() => setIsFocused(true)}\n onBlur={() => setIsFocused(false)}\n className={mode === 'inline' ? 'relative w-full' : 'h-11'}\n >\n <form\n role=\"search\"\n method=\"get\"\n action=\"/search\"\n className={searchFormVariants({\n mode,\n isSearchOpen: mode === 'popover' ? isSearchOpen : undefined,\n })}\n >\n <Input\n placeholder={searchPlaceholder}\n name=\"q\"\n title=\"Search for...\"\n aria-label=\"Search for...\"\n className=\"w-[99%]\"\n inputRef={ref}\n onChange={setSearchValue}\n value={searchValue}\n mode=\"search\"\n />\n </form>\n <div\n className={searchDropdownVariants({\n mode,\n isSearchOpen: mode === 'popover' ? isSearchOpen : undefined,\n isFocused,\n })}\n >\n <h3 className=\"font-bold mb-3 prose-p3 text-neutral-700\">熱門搜尋</h3>\n <div className=\"gap-2.5 flex flex-wrap\">\n {tags.map((keyword) => (\n <a\n key={keyword}\n className=\"px-3 py-1 font-bold cursor-pointer rounded-full bg-neutral-200 prose-p2 text-neutral-900 transition-colors duration-200 hover:bg-red-500 hover:text-neutral-white\"\n href={`/search?q=${encodeURIComponent(keyword)}`}\n >\n #{keyword}\n </a>\n ))}\n </div>\n </div>\n </div>\n )\n}\n\nexport function ActionButtons({\n hideCtaButtons = false,\n tags,\n searchPlaceholder,\n subscribeUrl,\n}: {\n hideCtaButtons?: boolean\n tags: string[]\n searchPlaceholder: string\n subscribeUrl: string\n}) {\n const [isSearchOpen, setIsSearchOpen] = useState(false)\n\n const containerRef = useRef<HTMLDivElement>(null)\n const buttonRef = useRef<HTMLButtonElement>(null)\n\n useEffect(() => {\n const handleClickOutside = (event: MouseEvent) => {\n const containerElement = containerRef.current\n const buttonElement = buttonRef.current\n if (!containerElement || !buttonElement) return\n if (\n !containerElement.contains(event.target as Node) &&\n !buttonElement.contains(event.target as Node)\n ) {\n setIsSearchOpen(false)\n }\n }\n\n document.addEventListener('mousedown', handleClickOutside)\n return () => {\n document.removeEventListener('mousedown', handleClickOutside)\n }\n }, [])\n\n return (\n <div className=\"relative flex items-center\">\n <div className=\"mr-6 relative flex items-center\" ref={containerRef}>\n {/* CTA Buttons - Base layer */}\n {!hideCtaButtons && !isSearchOpen && (\n <div className=\"gap-4 flex items-center\">\n <Button variant=\"secondary\" size={32} asChild>\n <a href=\"/about#post\">投稿</a>\n </Button>\n <Button variant=\"primary\" size={32} asChild>\n <a href={subscribeUrl} target=\"_blank\" rel=\"noopener noreferrer\">\n 訂閱\n </a>\n </Button>\n </div>\n )}\n\n <SearchInputSection\n isSearchOpen={isSearchOpen}\n mode=\"popover\"\n tags={tags}\n searchPlaceholder={searchPlaceholder}\n />\n </div>\n\n <button\n className=\"w-8 h-8 mr-4 flex cursor-pointer items-center justify-center rounded-full text-neutral-600 transition-all duration-200 hover:text-neutral-800\"\n aria-label=\"搜尋\"\n onClick={() => setIsSearchOpen(!isSearchOpen)}\n ref={buttonRef}\n >\n {isSearchOpen ? <ClearIcon /> : <SearchIcon />}\n </button>\n <button\n className=\"w-8 h-8 flex cursor-pointer items-center justify-center rounded-full text-neutral-600 transition-all duration-200 hover:text-neutral-800\"\n aria-label=\"設定\"\n >\n <SettingsIcon />\n </button>\n </div>\n )\n}\n\nexport function BottomNavigation({\n onHamburgerOverlayOpen,\n menuItems,\n}: {\n onHamburgerOverlayOpen: () => void\n menuItems: MenuItem[]\n}) {\n return (\n <div className=\"py-2 px-4 flex w-full items-center justify-between border-y border-neutral-border\">\n <HamburgerButton onHamburgerOverlayOpen={onHamburgerOverlayOpen} small />\n\n {menuItems.reduce((acc, item, index) => {\n return [\n ...acc,\n <div key={item.label} className=\"flex items-center\">\n <a\n href={item.href}\n className=\"py-1 font-bold! h-6 flex items-center prose-p1 text-neutral-900 transition-colors hover:text-red-400\"\n >\n {item.label}\n </a>\n </div>,\n ...(index < menuItems.length - 1\n ? [\n <div\n key={`separator-${index}`}\n className=\"h-4 mx-2 w-px bg-neutral-border\"\n />,\n ]\n : []),\n ]\n }, [] as React.ReactNode[])}\n </div>\n )\n}\n\nexport function HamburgerButton({\n onHamburgerOverlayOpen,\n small = false,\n}: {\n onHamburgerOverlayOpen: () => void\n small?: boolean\n}) {\n return (\n <button\n className={cn(\n 'rounded-sm ease-in-out flex cursor-pointer items-center justify-center transition-all duration-300 hover:[&>svg>path:nth-child(1)]:fill-blue-500 hover:[&>svg>path:nth-child(2)]:fill-red-500 hover:[&>svg>path:nth-child(3)]:fill-yellow-500 hover:[&>svg>rect:nth-child(1)]:fill-blue-500 hover:[&>svg>rect:nth-child(2)]:fill-red-500 hover:[&>svg>rect:nth-child(3)]:fill-yellow-500',\n small ? 'w-6 h-6' : 'w-8 h-8'\n )}\n onClick={onHamburgerOverlayOpen}\n >\n {small ? <HamburgerIconSmall /> : <HamburgerIcon />}\n </button>\n )\n}\n"],"mappings":"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"}
@@ -14,4 +14,5 @@ export declare const TwitterIcon: () => import("react/jsx-runtime").JSX.Element;
14
14
  export declare const GithubIcon: () => import("react/jsx-runtime").JSX.Element;
15
15
  export declare const RSSIcon: () => import("react/jsx-runtime").JSX.Element;
16
16
  export declare const HamburgerIconSmall: () => import("react/jsx-runtime").JSX.Element;
17
+ export declare const ArrowIcon: () => import("react/jsx-runtime").JSX.Element;
17
18
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/icons/index.tsx"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa,+CA8BzB,CAAA;AAED,eAAO,MAAM,UAAU,+CAoBtB,CAAA;AAED,eAAO,MAAM,eAAe,+CAoB3B,CAAA;AAED,eAAO,MAAM,SAAS,+CAarB,CAAA;AAED,eAAO,MAAM,SAAS,+CA0BrB,CAAA;AAED,eAAO,MAAM,YAAY,+CAaxB,CAAA;AAED,eAAO,MAAM,iBAAiB,+CAa7B,CAAA;AAED,eAAO,MAAM,MAAM,+CAalB,CAAA;AAED,eAAO,MAAM,MAAM,+CA4BlB,CAAA;AAED,eAAO,MAAM,WAAW,+CAoBvB,CAAA;AAED,eAAO,MAAM,WAAW,+CAoBvB,CAAA;AAED,eAAO,MAAM,UAAU,+CAoBtB,CAAA;AAED,eAAO,MAAM,WAAW,+CA0BvB,CAAA;AAED,eAAO,MAAM,UAAU,+CAwBtB,CAAA;AAED,eAAO,MAAM,OAAO,+CAoBnB,CAAA;AAED,eAAO,MAAM,kBAAkB,+CAqB9B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/icons/index.tsx"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa,+CA8BzB,CAAA;AAED,eAAO,MAAM,UAAU,+CAoBtB,CAAA;AAED,eAAO,MAAM,eAAe,+CAoB3B,CAAA;AAED,eAAO,MAAM,SAAS,+CAarB,CAAA;AAED,eAAO,MAAM,SAAS,+CA0BrB,CAAA;AAED,eAAO,MAAM,YAAY,+CAaxB,CAAA;AAED,eAAO,MAAM,iBAAiB,+CAa7B,CAAA;AAED,eAAO,MAAM,MAAM,+CAalB,CAAA;AAED,eAAO,MAAM,MAAM,+CA4BlB,CAAA;AAED,eAAO,MAAM,WAAW,+CAoBvB,CAAA;AAED,eAAO,MAAM,WAAW,+CAoBvB,CAAA;AAED,eAAO,MAAM,UAAU,+CAoBtB,CAAA;AAED,eAAO,MAAM,WAAW,+CA0BvB,CAAA;AAED,eAAO,MAAM,UAAU,+CAwBtB,CAAA;AAED,eAAO,MAAM,OAAO,+CAoBnB,CAAA;AAED,eAAO,MAAM,kBAAkB,+CAqB9B,CAAA;AAED,eAAO,MAAM,SAAS,+CAkBrB,CAAA"}
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.YouTubeIcon = exports.TwitterIcon = exports.ThreadsIcon = exports.SettingsIconSmall = exports.SettingsIcon = exports.SearchIconSmall = exports.SearchIcon = exports.RSSIcon = exports.MediumIcon = exports.LoginIcon = exports.IGIcon = exports.HamburgerIconSmall = exports.HamburgerIcon = exports.GithubIcon = exports.FBIcon = exports.ClearIcon = void 0;
6
+ exports.YouTubeIcon = exports.TwitterIcon = exports.ThreadsIcon = exports.SettingsIconSmall = exports.SettingsIcon = exports.SearchIconSmall = exports.SearchIcon = exports.RSSIcon = exports.MediumIcon = exports.LoginIcon = exports.IGIcon = exports.HamburgerIconSmall = exports.HamburgerIcon = exports.GithubIcon = exports.FBIcon = exports.ClearIcon = exports.ArrowIcon = void 0;
7
7
  var _jsxRuntime = require("react/jsx-runtime");
8
8
  const HamburgerIcon = () => /*#__PURE__*/(0, _jsxRuntime.jsxs)("svg", {
9
9
  width: "30",
@@ -338,4 +338,21 @@ const HamburgerIconSmall = () => /*#__PURE__*/(0, _jsxRuntime.jsxs)("svg", {
338
338
  })]
339
339
  });
340
340
  exports.HamburgerIconSmall = HamburgerIconSmall;
341
+ const ArrowIcon = () => {
342
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)("svg", {
343
+ xmlns: "http://www.w3.org/2000/svg",
344
+ width: "10",
345
+ height: "17",
346
+ viewBox: "0 0 10 17",
347
+ fill: "none",
348
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)("path", {
349
+ d: "M8.25 15.25L1.25 8.25L8.25 1.25",
350
+ stroke: "currentColor",
351
+ strokeWidth: "2.5",
352
+ strokeLinecap: "round",
353
+ strokeLinejoin: "round"
354
+ })
355
+ });
356
+ };
357
+ exports.ArrowIcon = ArrowIcon;
341
358
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["HamburgerIcon","_jsxRuntime","jsxs","width","height","viewBox","children","jsx","fill","y","rx","exports","SearchIcon","xmlns","d","stroke","strokeWidth","strokeLinecap","SearchIconSmall","ClearIcon","LoginIcon","SettingsIcon","SettingsIconSmall","FBIcon","IGIcon","clipPath","id","YouTubeIcon","ThreadsIcon","MediumIcon","TwitterIcon","fillRule","clipRule","GithubIcon","RSSIcon","HamburgerIconSmall"],"sources":["../../src/icons/index.tsx"],"sourcesContent":["export const HamburgerIcon = () => (\n <svg\n width=\"30\"\n height=\"30\"\n viewBox=\"0 0 18 14\"\n aria-hidden=\"true\"\n data-type=\"type-1\"\n >\n <rect\n fill=\"var(--color-blue-400)\"\n y=\"0.00\"\n width=\"18\"\n height=\"3\"\n rx=\"1\"\n ></rect>\n <rect\n fill=\"var(--color-red-400)\"\n y=\"6.15\"\n width=\"18\"\n height=\"3\"\n rx=\"1\"\n ></rect>\n <rect\n fill=\"var(--color-yellow-400)\"\n y=\"12.3\"\n width=\"18\"\n height=\"3\"\n rx=\"1\"\n ></rect>\n </svg>\n)\n\nexport const SearchIcon = () => (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"26\"\n height=\"26\"\n viewBox=\"0 0 26 26\"\n fill=\"none\"\n >\n <path\n d=\"M10 1.75C14.5563 1.75 18.25 5.44365 18.25 10C18.25 14.5563 14.5563 18.25 10 18.25C5.44365 18.25 1.75 14.5563 1.75 10C1.75 5.44365 5.44365 1.75 10 1.75Z\"\n stroke=\"currentColor\"\n strokeWidth=\"3.5\"\n />\n <path\n d=\"M17 17L24 24\"\n stroke=\"currentColor\"\n strokeWidth=\"3.5\"\n strokeLinecap=\"round\"\n />\n </svg>\n)\n\nexport const SearchIconSmall = () => (\n <svg\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M10.5 4.25C13.9518 4.25 16.75 7.04822 16.75 10.5C16.75 13.9518 13.9518 16.75 10.5 16.75C7.04822 16.75 4.25 13.9518 4.25 10.5C4.25 7.04822 7.04822 4.25 10.5 4.25Z\"\n stroke=\"currentColor\"\n strokeWidth=\"2.5\"\n />\n <path\n d=\"M15.75 15.75L21 21\"\n stroke=\"currentColor\"\n strokeWidth=\"2.5\"\n strokeLinecap=\"round\"\n />\n </svg>\n)\n\nexport const ClearIcon = () => (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"32\"\n height=\"32\"\n viewBox=\"0 0 32 32\"\n fill=\"none\"\n >\n <path\n d=\"M6.80761 6.80748C7.49102 6.12407 8.59906 6.12407 9.28248 6.80748L16 13.525L22.7175 6.80748C23.4009 6.12407 24.509 6.12407 25.1924 6.80748C25.8758 7.4909 25.8758 8.59894 25.1924 9.28236L18.4749 15.9999L25.1924 22.7174C25.8758 23.4008 25.8758 24.5088 25.1924 25.1923C24.509 25.8757 23.4009 25.8757 22.7175 25.1923L16 18.4747L9.28248 25.1923C8.59906 25.8757 7.49102 25.8757 6.80761 25.1923C6.12419 24.5088 6.12419 23.4008 6.80761 22.7174L13.5251 15.9999L6.80761 9.28236C6.12419 8.59894 6.12419 7.4909 6.80761 6.80748Z\"\n fill=\"currentColor\"\n />\n </svg>\n)\n\nexport const LoginIcon = () => (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"28\"\n height=\"28\"\n viewBox=\"0 0 28 28\"\n fill=\"none\"\n >\n <path\n d=\"M14 28C21.732 28 28 21.732 28 14C28 6.26801 21.732 0 14 0C6.26801 0 0 6.26801 0 14C0 21.732 6.26801 28 14 28Z\"\n fill=\"currentColor\"\n />\n <path\n d=\"M14 15C17.1803 15 20.2304 16.2505 22.4805 18.4766C23.6441 19.6278 24.5419 20.9926 25.1406 22.4766C22.5831 25.8327 18.5453 28 14 28C9.45451 28 5.41592 25.833 2.8584 22.4766C3.45708 20.9924 4.35586 19.6279 5.51953 18.4766C7.76958 16.2505 10.8197 15 14 15Z\"\n fill=\"white\"\n />\n <path\n d=\"M14 13C12.9 13 11.9583 12.6083 11.175 11.825C10.3917 11.0417 10 10.1 10 9C10 7.9 10.3917 6.95833 11.175 6.175C11.9583 5.39167 12.9 5 14 5C15.1 5 16.0417 5.39167 16.825 6.175C17.6083 6.95833 18 7.9 18 9C18 10.1 17.6083 11.0417 16.825 11.825C16.0417 12.6083 15.1 13 14 13Z\"\n fill=\"white\"\n />\n <path\n d=\"M14 1.5C20.9036 1.5 26.5 7.09644 26.5 14C26.5 20.9036 20.9036 26.5 14 26.5C7.09644 26.5 1.5 20.9036 1.5 14C1.5 7.09644 7.09644 1.5 14 1.5Z\"\n stroke=\"currentColor\"\n strokeWidth=\"3\"\n />\n </svg>\n)\n\nexport const SettingsIcon = () => (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"32\"\n height=\"32\"\n viewBox=\"0 0 32 32\"\n fill=\"none\"\n >\n <path\n d=\"M16.1605 29.3914C15.6791 29.3914 15.2692 29.2269 14.9309 28.898C14.5928 28.5689 14.4237 28.161 14.4237 27.6744V21.9879C14.4237 21.5015 14.5928 21.0937 14.9309 20.7646C15.2692 20.4355 15.6791 20.2709 16.1605 20.2709C16.642 20.2709 17.0486 20.4355 17.3803 20.7646C17.7118 21.0937 17.8775 21.5015 17.8775 21.9879V23.1042H27.4939C27.9805 23.1042 28.3883 23.2688 28.7172 23.5979C29.0463 23.9271 29.2109 24.3348 29.2109 24.8212C29.2109 25.3027 29.0463 25.7125 28.7172 26.0509C28.3883 26.389 27.9805 26.5581 27.4939 26.5581H17.8775V27.6744C17.8775 28.161 17.713 28.5689 17.3838 28.898C17.0549 29.2269 16.6472 29.3914 16.1605 29.3914ZM4.50704 26.5581C4.02041 26.5581 3.61265 26.389 3.28375 26.0509C2.95461 25.7125 2.79004 25.3027 2.79004 24.8212C2.79004 24.3398 2.95461 23.9332 3.28375 23.6015C3.61265 23.27 4.02041 23.1042 4.50704 23.1042H10.1935C10.6802 23.1042 11.0879 23.2688 11.4168 23.5979C11.746 23.9271 11.9105 24.3348 11.9105 24.8212C11.9105 25.3027 11.746 25.7125 11.4168 26.0509C11.0879 26.389 10.6802 26.5581 10.1935 26.5581H4.50704ZM10.1935 20.5712C9.71211 20.5712 9.30234 20.4021 8.96423 20.0637C8.62588 19.7256 8.45671 19.3157 8.45671 18.834V17.7379H4.50704C4.02041 17.7379 3.61265 17.5733 3.28375 17.2442C2.95461 16.915 2.79004 16.5073 2.79004 16.0209C2.79004 15.5345 2.95461 15.1267 3.28375 14.7976C3.61265 14.4685 4.02041 14.3039 4.50704 14.3039H8.45671V13.1876C8.45671 12.7012 8.62588 12.2934 8.96423 11.9643C9.30234 11.6351 9.71211 11.4706 10.1935 11.4706C10.675 11.4706 11.0816 11.6351 11.4133 11.9643C11.7448 12.2934 11.9105 12.7012 11.9105 13.1876V18.8542C11.9105 19.3406 11.746 19.7484 11.4168 20.0775C11.0879 20.4067 10.6802 20.5712 10.1935 20.5712ZM16.1407 17.7379C15.6541 17.7379 15.2463 17.5733 14.9174 17.2442C14.5883 16.915 14.4237 16.5073 14.4237 16.0209C14.4237 15.5345 14.5883 15.1267 14.9174 14.7976C15.2463 14.4685 15.6541 14.3039 16.1407 14.3039H27.4939C27.9805 14.3039 28.3883 14.4685 28.7172 14.7976C29.0463 15.1267 29.2109 15.5345 29.2109 16.0209C29.2109 16.5073 29.0463 16.915 28.7172 17.2442C28.3883 17.5733 27.9805 17.7379 27.4939 17.7379H16.1407ZM21.8272 11.7709C21.3458 11.7709 20.9359 11.6063 20.5975 11.2772C20.2594 10.948 20.0904 10.5403 20.0904 10.0539V4.36739C20.0904 3.88077 20.2594 3.47288 20.5975 3.14374C20.9359 2.81484 21.3458 2.65039 21.8272 2.65039C22.3086 2.65039 22.7152 2.81484 23.047 3.14374C23.3785 3.47288 23.5442 3.88077 23.5442 4.36739V5.48372H27.4939C27.9805 5.48372 28.3883 5.64818 28.7172 5.97708C29.0463 6.30622 29.2109 6.7141 29.2109 7.20073C29.2109 7.68216 29.0463 8.09193 28.7172 8.43004C28.3883 8.76838 27.9805 8.93756 27.4939 8.93756H23.5442V10.0539C23.5442 10.5403 23.3796 10.948 23.0505 11.2772C22.7216 11.6063 22.3138 11.7709 21.8272 11.7709ZM4.50704 8.93756C4.02041 8.93756 3.61265 8.76838 3.28375 8.43004C2.95461 8.09193 2.79004 7.68216 2.79004 7.20073C2.79004 6.71906 2.95461 6.31248 3.28375 5.98098C3.61265 5.64948 4.02041 5.48372 4.50704 5.48372H15.8602C16.3468 5.48372 16.7546 5.64818 17.0835 5.97708C17.4126 6.30622 17.5772 6.7141 17.5772 7.20073C17.5772 7.68216 17.4126 8.09193 17.0835 8.43004C16.7546 8.76838 16.3468 8.93756 15.8602 8.93756H4.50704Z\"\n fill=\"currentColor\"\n />\n </svg>\n)\n\nexport const SettingsIconSmall = () => (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n >\n <path\n d=\"M12.1204 22.0436C11.7593 22.0436 11.4519 21.9202 11.1982 21.6735C10.9446 21.4267 10.8178 21.1207 10.8178 20.7558V16.4909C10.8178 16.1261 10.9446 15.8201 11.1982 15.5733C11.4519 15.3266 11.7593 15.2032 12.1204 15.2032C12.4815 15.2032 12.7864 15.3266 13.0352 15.5733C13.2839 15.8201 13.4082 16.1261 13.4082 16.4909V17.3281H20.6204C20.9853 17.3281 21.2913 17.4516 21.5379 17.6983C21.7847 17.9451 21.9081 18.2511 21.9081 18.616C21.9081 18.9771 21.7847 19.2855 21.5379 19.5412C21.2913 19.7969 20.9853 19.9247 20.6204 19.9247H13.4082V20.7558C13.4082 21.1207 13.2839 21.4267 13.0352 21.6735C12.7864 21.9202 12.4815 22.0436 12.1204 22.0436ZM3.38025 19.9247C3.01525 19.9247 2.70925 19.7969 2.46275 19.5412C2.21595 19.2855 2.09255 18.9771 2.09255 18.616C2.09255 18.2549 2.21595 17.9499 2.46275 17.7011C2.70925 17.4524 3.01525 17.3281 3.38025 17.3281H7.64525C8.01025 17.3281 8.31625 17.4516 8.56325 17.6983C8.81025 17.9451 8.93375 18.2511 8.93375 18.616C8.93375 18.9771 8.81025 19.2855 8.56325 19.5412C8.31625 19.7969 8.01025 19.9247 7.64525 19.9247H3.38025ZM7.64525 15.4284C7.28415 15.4284 6.97675 15.3016 6.72325 15.0478C6.46945 14.7942 6.34265 14.4868 6.34265 14.1257V13.3907H3.38025C3.01525 13.3907 2.70925 13.2672 2.46275 13.0205C2.21595 12.7737 2.09255 12.4677 2.09255 12.1027C2.09255 11.7377 2.21595 11.4317 2.46275 11.1852C2.70925 10.9387 3.01525 10.8152 3.38025 10.8152H6.34265V10.0802C6.34265 9.71915 6.46945 9.41175 6.72325 9.15825C6.97675 8.90475 7.28415 8.77825 7.64525 8.77825C8.00625 8.77825 8.31125 8.90475 8.56025 9.15825C8.80925 9.41175 8.93375 9.71915 8.93375 10.0802V14.1257C8.93375 14.4868 8.80925 14.7942 8.56025 15.0478C8.31125 15.3016 8.00625 15.4284 7.64525 15.4284ZM12.1055 13.3907C11.7405 13.3907 11.4345 13.2672 11.1875 13.0205C10.9405 12.7737 10.817 12.4677 10.817 12.1027C10.817 11.7377 10.9405 11.4317 11.1875 11.1852C11.4345 10.9387 11.7405 10.8152 12.1055 10.8152H20.6204C20.9853 10.8152 21.2913 10.9387 21.5379 11.1852C21.7847 11.4317 21.9081 11.7377 21.9081 12.1027C21.9081 12.4677 21.7847 12.7737 21.5379 13.0205C21.2913 13.2672 20.9853 13.3907 20.6204 13.3907H12.1055ZM16.3705 8.82825C16.0094 8.82825 15.702 8.70475 15.4485 8.45725C15.195 8.20975 15.0682 7.90235 15.0682 7.53525V3.27525C15.0682 2.90815 15.195 2.60075 15.4485 2.35325C15.702 2.10575 16.0094 1.98225 16.3705 1.98225C16.7316 1.98225 17.0366 2.10575 17.2856 2.35325C17.5346 2.60075 17.6591 2.90815 17.6591 3.27525V4.11225H20.6204C20.9853 4.11225 21.2913 4.23575 21.5379 4.48225C21.7847 4.72875 21.9081 5.03475 21.9081 5.40025C21.9081 5.76135 21.7847 6.06975 21.5379 6.3255C21.2913 6.58125 20.9853 6.70475 20.6204 6.70475H17.6591V7.53525C17.6591 7.90235 17.5346 8.20975 17.2856 8.45725C17.0366 8.70475 16.7316 8.82825 16.3705 8.82825ZM3.38025 6.70475C3.01525 6.70475 2.70925 6.58125 2.46275 6.3255C2.21595 6.06975 2.09255 5.76135 2.09255 5.40025C2.09255 5.03915 2.21595 4.73415 2.46275 4.48515C2.70925 4.23615 3.01525 4.11225 3.38025 4.11225H11.8955C12.2605 4.11225 12.5665 4.23575 12.8135 4.48225C13.0605 4.72875 13.184 5.03475 13.184 5.40025C13.184 5.76135 13.0605 6.06975 12.8135 6.3255C12.5665 6.58125 12.2605 6.70475 11.8955 6.70475H3.38025Z\"\n fill=\"currentColor\"\n />\n </svg>\n)\n\nexport const FBIcon = () => (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n >\n <path\n d=\"M11.9995 9.50795e-06C8.97739 -0.00379259 6.06512 1.13283 3.84457 3.18279C1.62402 5.23274 0.258713 8.04507 0.0214397 11.0578C-0.215834 14.0706 0.692399 17.062 2.56467 19.4343C4.43694 21.8066 7.13538 23.3851 10.1208 23.8544V15.4708H7.07738V12H10.1255V9.35578C10.1255 6.34991 11.915 4.68729 14.6578 4.68729C15.5579 4.69971 16.4558 4.77819 17.3443 4.92212V7.87633H15.832C14.3384 7.87633 13.8735 8.81567 13.8735 9.755V12.0047H17.2034L16.6727 15.4708H13.8547V23.8544C16.8381 23.3854 19.535 21.8087 21.4072 19.4389C23.2793 17.0691 24.1891 14.0805 23.9549 11.0696C23.7208 8.05858 22.3599 5.2466 20.1438 3.19477C17.9278 1.14293 15.0196 0.00213057 11.9995 9.50795e-06Z\"\n fill=\"currentColor\"\n />\n </svg>\n)\n\nexport const IGIcon = () => (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n >\n <g clipPath=\"url(#clip0_132_223771)\">\n <path\n d=\"M12.0008 14.5175C13.3912 14.5175 14.5182 13.3904 14.5182 12.0001C14.5182 10.6098 13.3912 9.48267 12.0008 9.48267C10.6105 9.48267 9.48341 10.6098 9.48341 12.0001C9.48341 13.3904 10.6105 14.5175 12.0008 14.5175Z\"\n fill=\"currentColor\"\n />\n <path\n d=\"M17.89 7.54288C17.7683 7.21534 17.5759 6.91867 17.3264 6.674C17.0774 6.41975 16.7739 6.22542 16.4388 6.1057C15.9874 5.93943 15.5108 5.85205 15.0298 5.84738C14.236 5.80981 13.9965 5.80042 11.9769 5.80042C9.95735 5.80042 9.72251 5.80042 8.92408 5.84738C8.44307 5.85205 7.96646 5.93943 7.51508 6.1057C7.1957 6.2306 6.90563 6.42027 6.66314 6.66276C6.42064 6.90525 6.23098 7.19532 6.10608 7.5147C5.93981 7.96608 5.85243 8.4427 5.84776 8.9237C5.81019 9.72214 5.80079 9.96167 5.80079 11.9765C5.80079 13.9914 5.80079 14.2356 5.84776 15.0294C5.85243 15.5104 5.93981 15.987 6.10608 16.4384C6.22694 16.7663 6.41949 17.0632 6.66968 17.3073C6.91435 17.5567 7.21102 17.7492 7.53856 17.8709C7.98948 18.0394 8.46622 18.1284 8.94756 18.1339C9.746 18.1668 9.98553 18.1762 12.0004 18.1762C14.0153 18.1762 14.2595 18.1762 15.0532 18.1339C15.5346 18.1284 16.0113 18.0394 16.4622 17.8709C16.7874 17.7456 17.0825 17.5533 17.3285 17.3065C17.5745 17.0597 17.7658 16.7639 17.89 16.4384C18.0585 15.9875 18.1475 15.5107 18.153 15.0294C18.1859 14.2356 18.1953 13.9961 18.1953 11.9765C18.1953 9.95697 18.1953 9.72214 18.153 8.9237C18.1443 8.45185 18.0554 7.98491 17.89 7.54288ZM12.0004 15.8795C11.2331 15.8795 10.4831 15.652 9.84509 15.2257C9.20712 14.7994 8.70988 14.1935 8.41625 13.4846C8.12263 12.7757 8.0458 11.9957 8.19549 11.2432C8.34518 10.4906 8.71466 9.79939 9.25721 9.25684C9.79976 8.71429 10.491 8.3448 11.2436 8.19511C11.9961 8.04542 12.7761 8.12225 13.485 8.41588C14.1939 8.7095 14.7998 9.20674 15.226 9.84472C15.6523 10.4827 15.8799 11.2327 15.8799 12C15.8799 13.0289 15.4711 14.0157 14.7436 14.7432C14.016 15.4707 13.0293 15.8795 12.0004 15.8795ZM16.0348 8.87204C15.8548 8.872 15.6788 8.81833 15.5293 8.71787C15.3799 8.61741 15.2638 8.47472 15.1957 8.30799C15.1277 8.14126 15.1109 7.95805 15.1474 7.78172C15.1839 7.60539 15.2722 7.44393 15.4008 7.31794C15.5295 7.19195 15.6927 7.10714 15.8698 7.07431C16.0469 7.04149 16.2297 7.06214 16.3949 7.13364C16.5602 7.20513 16.7004 7.32423 16.7978 7.47575C16.8951 7.62727 16.945 7.80433 16.9413 7.98437C16.9376 8.2219 16.8403 8.44837 16.6706 8.61457C16.5009 8.78078 16.2724 8.87331 16.0348 8.87204Z\"\n fill=\"currentColor\"\n />\n <path\n d=\"M12 0C9.62663 0 7.30655 0.703788 5.33316 2.02236C3.35977 3.34094 1.8217 5.21509 0.913451 7.4078C0.00519937 9.60051 -0.232441 12.0133 0.230582 14.3411C0.693605 16.6689 1.83649 18.8071 3.51472 20.4853C5.19295 22.1635 7.33115 23.3064 9.65892 23.7694C11.9867 24.2324 14.3995 23.9948 16.5922 23.0866C18.7849 22.1783 20.6591 20.6402 21.9776 18.6668C23.2962 16.6935 24 14.3734 24 12C24 8.8174 22.7357 5.76516 20.4853 3.51472C18.2348 1.26428 15.1826 0 12 0ZM19.5147 15.1139C19.5025 15.7416 19.3834 16.3626 19.1624 16.9503C18.97 17.4525 18.674 17.9086 18.2937 18.289C17.9133 18.6693 17.4572 18.9653 16.955 19.1577C16.3673 19.3787 15.7463 19.4978 15.1186 19.51C14.3155 19.5476 14.0571 19.5569 12.0047 19.5569C9.95226 19.5569 9.69394 19.5569 8.89081 19.51C8.26005 19.4978 7.63592 19.3787 7.04502 19.1577C6.54176 18.9673 6.08528 18.671 5.70646 18.2888C5.32364 17.9106 5.02723 17.4539 4.83758 16.9503C4.61665 16.3626 4.49752 15.7416 4.48533 15.1139C4.44776 14.3108 4.43836 14.0524 4.43836 12C4.43836 9.94755 4.43836 9.68924 4.48533 8.88611C4.49949 8.25665 4.62018 7.63415 4.84228 7.04501C5.03473 6.54277 5.33073 6.08666 5.71105 5.70635C6.09136 5.32603 6.54747 5.03002 7.04971 4.83757C7.63765 4.61761 8.25851 4.49851 8.88611 4.48532C9.68924 4.44775 9.94756 4.43836 12 4.43836C14.0525 4.43836 14.3108 4.43836 15.1139 4.48532C15.7416 4.49752 16.3626 4.61664 16.9503 4.83757C17.454 5.02722 17.9106 5.32364 18.2889 5.70646C18.671 6.08528 18.9673 6.54176 19.1577 7.04501C19.3777 7.63295 19.4968 8.25381 19.51 8.88141C19.5476 9.68454 19.557 9.94286 19.557 11.9953C19.557 14.0478 19.5476 14.3108 19.51 15.1139H19.5147Z\"\n fill=\"currentColor\"\n />\n </g>\n <defs>\n <clipPath id=\"clip0_132_223771\">\n <rect width=\"24\" height=\"24\" fill=\"currentColor\" />\n </clipPath>\n </defs>\n </svg>\n)\n\nexport const YouTubeIcon = () => (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n >\n <g clipPath=\"url(#clip0_132_223774)\">\n <path\n d=\"M12 0C18.6274 0 24 5.37258 24 12C24 18.6274 18.6274 24 12 24C5.37258 24 0 18.6274 0 12C0 5.37258 5.37258 0 12 0ZM11.999 6.59961C11.9471 6.59962 7.65166 6.60138 6.57422 6.9209C6.27982 7.00874 6.01134 7.18154 5.7959 7.4209C5.58045 7.66028 5.42547 7.95833 5.34668 8.28516C5.05691 9.48903 5.05664 12 5.05664 12C5.05666 12.0358 5.05897 14.5195 5.34668 15.7129C5.50639 16.3765 5.97768 16.8991 6.57422 17.0762C7.65146 17.3974 11.9471 17.3994 11.999 17.3994C11.999 17.3994 16.3411 17.3994 17.4248 17.0762C18.0229 16.8991 18.4926 16.3765 18.6523 15.7129C18.9401 14.5195 18.9424 12.0358 18.9424 12C18.9424 12 18.9421 9.48935 18.6523 8.28711C18.5733 7.96045 18.4185 7.66218 18.2031 7.42285C17.9877 7.18352 17.7191 7.01098 17.4248 6.92285C16.341 6.59964 11.999 6.59961 11.999 6.59961ZM14.2158 11.9824L10.6201 14.3037V9.69531L14.2158 11.9824Z\"\n fill=\"currentColor\"\n />\n </g>\n <defs>\n <clipPath id=\"clip0_132_223774\">\n <rect width=\"24\" height=\"24\" fill=\"currentColor\" />\n </clipPath>\n </defs>\n </svg>\n)\n\nexport const ThreadsIcon = () => (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n >\n <g clipPath=\"url(#clip0_132_223779)\">\n <path\n d=\"M12 0C18.6274 0 24 5.37258 24 12C24 18.6274 18.6274 24 12 24C5.37258 24 0 18.6274 0 12C0 5.37258 5.37258 0 12 0ZM12.1133 4.03125C9.78273 4.04769 7.98986 4.83187 6.78613 6.3623C5.71485 7.72394 5.16285 9.6189 5.14453 11.9941V12.0059C5.16284 14.3811 5.71485 16.2761 6.78613 17.6377C7.98986 19.1681 9.78273 19.9528 12.1133 19.9688H12.123C14.1948 19.9542 15.6552 19.4122 16.8584 18.21C18.4325 16.6373 18.3851 14.6664 17.8662 13.4561C17.494 12.5884 16.7843 11.8834 15.8135 11.418C15.7451 11.3852 15.6752 11.3532 15.6045 11.3232C15.4817 9.05654 14.2436 7.75844 12.1641 7.74512C10.9641 7.73715 9.8891 8.22645 9.21973 9.24219L10.3633 10.0273C10.839 9.30555 11.5859 9.1514 12.1357 9.15137H12.1543C12.8391 9.15559 13.3562 9.35508 13.6904 9.74316C13.9337 10.0263 14.0971 10.417 14.1777 10.9102C13.5702 10.807 12.9141 10.7751 12.2119 10.8154C10.2347 10.9293 8.96352 12.0824 9.04883 13.6846C9.09204 14.4976 9.49685 15.1964 10.1885 15.6533C10.7735 16.0396 11.5277 16.2287 12.3105 16.1855C13.345 16.1292 14.1555 15.734 14.7217 15.0127C15.1515 14.4647 15.424 13.7547 15.5439 12.8604C16.0365 13.1575 16.4015 13.549 16.6035 14.0195C16.9462 14.8192 16.966 16.1335 15.8936 17.2051C14.9542 18.144 13.8249 18.5498 12.1182 18.5625C10.2244 18.5484 8.79227 17.9414 7.86133 16.7578C6.98948 15.6497 6.53934 14.0489 6.52246 12C6.53934 9.95112 6.98947 8.35031 7.86133 7.24219C8.79227 6.05859 10.2244 5.45156 12.1182 5.4375C14.025 5.45157 15.4822 6.06177 16.4492 7.25098C16.9229 7.83393 17.2799 8.56726 17.5156 9.42188L18.8555 9.06445C18.57 8.01226 18.1214 7.1048 17.5098 6.35254C16.2704 4.8279 14.4581 4.04771 12.123 4.03125H12.1133ZM12.7705 12.2051C13.2878 12.2051 13.7719 12.255 14.2119 12.3516C14.0479 14.4018 13.0852 14.7344 12.2363 14.7812C11.3701 14.83 10.4694 14.4413 10.4248 13.6084C10.392 12.9906 10.865 12.3008 12.29 12.2188C12.453 12.2094 12.6136 12.2051 12.7705 12.2051Z\"\n fill=\"currentColor\"\n />\n </g>\n <defs>\n <clipPath id=\"clip0_132_223779\">\n <rect width=\"24\" height=\"24\" fill=\"currentColor\" />\n </clipPath>\n </defs>\n </svg>\n)\n\nexport const MediumIcon = () => (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n >\n <g clipPath=\"url(#clip0_132_223784)\">\n <path\n d=\"M12 0C9.62663 0 7.30655 0.703788 5.33316 2.02236C3.35977 3.34094 1.8217 5.21509 0.913451 7.4078C0.00519939 9.60051 -0.232441 12.0133 0.230582 14.3411C0.693605 16.6689 1.83649 18.8071 3.51472 20.4853C5.19295 22.1635 7.33115 23.3064 9.65892 23.7694C11.9867 24.2324 14.3995 23.9948 16.5922 23.0866C18.7849 22.1783 20.6591 20.6402 21.9776 18.6668C23.2962 16.6935 24 14.3734 24 12C24 8.8174 22.7357 5.76516 20.4853 3.51472C18.2348 1.26428 15.1826 0 12 0V0ZM12.8454 12.6434C12.793 13.0019 12.7 13.3533 12.5683 13.6908C12.1242 14.8071 11.2612 15.7055 10.1636 16.1941C9.62593 16.432 9.04653 16.5613 8.45871 16.5746C8.00177 16.5891 7.54537 16.5321 7.10607 16.4055C6.48685 16.228 5.91329 15.9188 5.42466 15.499C4.95434 15.1045 4.56844 14.6191 4.29002 14.072C4.01161 13.5248 3.84641 12.9271 3.80431 12.3147C3.77854 11.9427 3.79746 11.569 3.86067 11.2016C3.97054 10.578 4.20838 9.98405 4.5592 9.45701C4.91002 8.92997 5.36621 8.48132 5.89903 8.13933C6.53874 7.72426 7.27487 7.48158 8.03601 7.43483H8.18631H8.52916H8.74991C9.01053 7.45467 9.26854 7.50029 9.52016 7.57104C10.5922 7.8715 11.5193 8.54959 12.1305 9.48014C12.7416 10.4107 12.9956 11.5309 12.8454 12.6341V12.6434ZM17.8474 12.4603C17.8474 12.6716 17.8145 12.8877 17.7863 13.099C17.7021 13.8093 17.4855 14.4975 17.1476 15.128C17.0014 15.4032 16.8128 15.6536 16.5887 15.8701C16.3917 16.062 16.1493 16.2009 15.8842 16.274C15.5958 16.3383 15.2941 16.3018 15.0294 16.1706C14.7923 16.0446 14.5831 15.8721 14.4141 15.6634C14.1621 15.3552 13.9593 15.0098 13.8129 14.6395C13.6455 14.2203 13.5242 13.7841 13.4513 13.3386C13.369 12.8561 13.3313 12.3672 13.3386 11.8779C13.3394 11.5637 13.3613 11.2498 13.4043 10.9386C13.4632 10.4758 13.5719 10.0207 13.7284 9.58121C13.8604 9.19264 14.0487 8.82553 14.2873 8.49159C14.4446 8.26934 14.6402 8.07691 14.865 7.92329C15.0539 7.79575 15.272 7.71818 15.499 7.69785C15.7374 7.67642 15.977 7.72368 16.1894 7.83405C16.4194 7.95069 16.625 8.11009 16.7953 8.30372C17.0678 8.63549 17.2836 9.01001 17.4341 9.41213C17.591 9.81371 17.7043 10.231 17.7722 10.6568C17.8412 11.0618 17.8773 11.4717 17.8802 11.8826V11.953C17.8755 12.1362 17.8755 12.2959 17.8474 12.4603ZM19.8998 12.3429V12.3757C19.8998 12.7327 19.8669 13.0896 19.8435 13.4466C19.8069 13.9591 19.73 14.4679 19.6133 14.9683C19.5625 15.1802 19.4901 15.3864 19.3973 15.5836C19.3582 15.6664 19.3041 15.7413 19.2376 15.8043C19.2196 15.8229 19.1981 15.8377 19.1743 15.8478C19.1505 15.8579 19.1249 15.8631 19.099 15.8631C19.0732 15.8631 19.0476 15.8579 19.0238 15.8478C19 15.8377 18.9784 15.8229 18.9605 15.8043C18.881 15.7339 18.8198 15.6452 18.782 15.546C18.6862 15.3321 18.6137 15.1085 18.566 14.8791C18.4941 14.5552 18.4408 14.2274 18.4063 13.8975C18.341 13.297 18.3112 12.6932 18.317 12.0892C18.317 11.7511 18.317 11.4129 18.317 11.0748C18.3356 10.4686 18.4063 9.86523 18.5284 9.27123C18.5795 8.98897 18.6663 8.71436 18.7867 8.45401C18.8242 8.36192 18.8783 8.27753 18.9464 8.20509C18.9653 8.18071 18.9895 8.16098 19.0171 8.1474C19.0448 8.13383 19.0752 8.12677 19.1061 8.12677C19.1369 8.12677 19.1673 8.13383 19.195 8.1474C19.2227 8.16098 19.2469 8.18071 19.2658 8.20509C19.3494 8.29414 19.4134 8.39974 19.4536 8.51507C19.5481 8.74847 19.6189 8.99079 19.665 9.23836C19.7412 9.59978 19.7976 9.9651 19.8341 10.3327C19.8857 10.8446 19.9092 11.3613 19.9139 11.8779V12.3476L19.8998 12.3429Z\"\n fill=\"currentColor\"\n />\n </g>\n <defs>\n <clipPath id=\"clip0_132_223784\">\n <rect width=\"24\" height=\"24\" fill=\"currentColor\" />\n </clipPath>\n </defs>\n </svg>\n)\n\nexport const TwitterIcon = () => (\n <svg\n width=\"28\"\n height=\"28\"\n viewBox=\"0 0 28 28\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <g clipPath=\"url(#clip0_1831_1601)\">\n <path\n d=\"M28 14C28 6.26801 21.732 0 14 0C6.26801 0 0 6.26801 0 14C0 21.732 6.26801 28 14 28C21.732 28 28 21.732 28 14Z\"\n fill=\"currentColor\"\n ></path>\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M14 0C11.2311 0 8.52431 0.821086 6.22202 2.35943C3.91973 3.89777 2.12532 6.08427 1.06569 8.64243C0.00606596 11.2006 -0.271181 14.0155 0.269012 16.7313C0.809205 19.447 2.14258 21.9416 4.10051 23.8995C6.05845 25.8574 8.55301 27.1908 11.2687 27.731C13.9845 28.2712 16.7994 27.9939 19.3576 26.9343C21.9157 25.8747 24.1022 24.0803 25.6406 21.778C27.1789 19.4757 28 16.7689 28 14C28 10.287 26.525 6.72601 23.8995 4.1005C21.274 1.475 17.713 0 14 0V0ZM21.737 11.0082C21.737 11.1671 21.737 11.326 21.737 11.4849C21.737 16.4164 18 22.0658 11.1617 22.0658C9.1468 22.0631 7.17491 21.4831 5.47946 20.3945C5.77419 20.4276 6.07055 20.4441 6.36713 20.4438C8.03241 20.4429 9.64925 19.8834 10.9589 18.8548C10.1868 18.8361 9.43966 18.5776 8.8211 18.1152C8.20254 17.6527 7.74322 17.0092 7.50686 16.274C8.06347 16.38 8.63696 16.3575 9.18357 16.2082C8.34183 16.0396 7.58463 15.5842 7.04107 14.9197C6.49751 14.2553 6.20123 13.4229 6.20275 12.5644V12.5151C6.71746 12.8043 7.29475 12.9641 7.88494 12.9808C7.09746 12.4551 6.54004 11.6489 6.32624 10.7266C6.11244 9.80418 6.25836 8.83498 6.73425 8.01644C7.66837 9.16643 8.83427 10.1067 10.156 10.7761C11.4778 11.4455 12.9257 11.8289 14.4055 11.9014C14.3436 11.6244 14.3123 11.3414 14.3123 11.0575C14.3121 10.3116 14.5361 9.58281 14.9552 8.96576C15.3743 8.34871 15.9693 7.8719 16.6628 7.59721C17.3563 7.32252 18.1164 7.26263 18.8444 7.42533C19.5724 7.58803 20.2346 7.96579 20.7452 8.50959C21.5773 8.34473 22.3757 8.04094 23.1069 7.61096C22.8253 8.47206 22.2413 9.20201 21.463 9.66575C22.2007 9.57873 22.9212 9.38108 23.6 9.07945C23.0986 9.82801 22.4677 10.4812 21.737 11.0082Z\"\n fill=\"#232323\"\n ></path>\n </g>\n <defs>\n <clipPath id=\"clip0_1831_1601\">\n <rect width=\"28\" height=\"28\" fill=\"currentColor\"></rect>\n </clipPath>\n </defs>\n </svg>\n)\n\nexport const GithubIcon = () => (\n <svg\n width=\"28\"\n height=\"28\"\n viewBox=\"0 0 28 28\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <g clipPath=\"url(#clip0_1831_1607)\">\n <path\n d=\"M28 14C28 6.26801 21.732 0 14 0C6.26801 0 0 6.26801 0 14C0 21.732 6.26801 28 14 28C21.732 28 28 21.732 28 14Z\"\n fill=\"currentColor\"\n ></path>\n <path\n d=\"M14.0002 -5.61702e-05C10.5662 -0.00202214 7.25116 1.25824 4.68569 3.54104C2.12023 5.82385 0.483265 8.96994 0.0861461 12.381C-0.310973 15.792 0.559453 19.23 2.53188 22.0411C4.5043 24.8522 7.44113 26.8403 10.7838 27.6273C10.7838 26.1862 10.7838 23.9616 10.7838 23.4082V23.3369H10.718C10.3256 23.4108 9.92811 23.4547 9.529 23.4684C8.99098 23.4984 8.45209 23.4278 7.93996 23.2602C7.61017 23.1609 7.30694 22.9887 7.05274 22.7563C6.79854 22.5239 6.59987 22.2373 6.47147 21.9178C6.2612 21.4077 5.98287 20.9285 5.64407 20.4931C5.47435 20.2707 5.26199 20.0845 5.01941 19.9452C4.92794 19.8982 4.84317 19.8393 4.76736 19.7698C4.66306 19.6965 4.57839 19.5986 4.52078 19.4849C4.50695 19.4628 4.49821 19.4379 4.49519 19.412C4.49218 19.3862 4.49498 19.3599 4.50337 19.3353C4.51177 19.3106 4.52556 19.2881 4.54374 19.2694C4.56191 19.2508 4.58402 19.2364 4.60846 19.2273C4.65758 19.2052 4.70905 19.1887 4.76188 19.178C5.20012 19.0865 5.65677 19.1712 6.03311 19.4136C6.47859 19.6888 6.85381 20.0641 7.129 20.5095C7.23699 20.6876 7.3598 20.8562 7.49613 21.0136C7.69961 21.2582 7.94978 21.4597 8.23202 21.6065C8.51426 21.7532 8.82292 21.8423 9.13996 21.8684C9.71454 21.9081 10.2897 21.8006 10.8112 21.5561C10.8327 21.5421 10.8484 21.5206 10.855 21.4958C10.8879 21.3369 10.9153 21.1726 10.9591 21.0191C11.0703 20.5691 11.308 20.1603 11.6441 19.841L11.0359 19.726C10.4575 19.6423 9.88865 19.5029 9.33722 19.3095C8.66128 19.0677 8.03945 18.6953 7.50709 18.2136C6.89214 17.6408 6.43381 16.9203 6.17558 16.1205C5.91799 15.307 5.78678 14.4587 5.78654 13.6054C5.77208 13.0508 5.83853 12.497 5.9838 11.9616C6.19666 11.2384 6.57143 10.5732 7.07969 10.0164C7.07969 9.98899 7.129 9.96707 7.11256 9.91775C6.98887 9.58091 6.91145 9.22884 6.88243 8.87118C6.81737 8.08993 6.93363 7.30421 7.22215 6.57529C7.22215 6.57529 7.26051 6.52597 7.28243 6.52597C7.44114 6.51502 7.60042 6.51502 7.75914 6.52597C8.17691 6.57467 8.58506 6.68548 8.9701 6.85474C9.58872 7.11916 10.1797 7.44403 10.7345 7.8246C10.7523 7.83374 10.772 7.8385 10.792 7.8385C10.812 7.8385 10.8317 7.83374 10.8496 7.8246C11.6778 7.59688 12.5286 7.46091 13.3865 7.41912C14.0427 7.38534 14.7004 7.40366 15.3537 7.47392C15.968 7.54235 16.5762 7.65775 17.1728 7.81912C17.1941 7.82974 17.2176 7.83526 17.2413 7.83526C17.2651 7.83526 17.2886 7.82974 17.3098 7.81912C17.655 7.60542 18.0002 7.38625 18.3619 7.18899C18.873 6.89325 19.4279 6.68056 20.0057 6.55885C20.2481 6.50219 20.4985 6.4892 20.7454 6.52049C20.7613 6.524 20.7762 6.53067 20.7894 6.54008C20.8026 6.54949 20.8137 6.56147 20.8222 6.57529C21.0225 7.08332 21.1426 7.6194 21.1783 8.16433C21.2206 8.73995 21.1441 9.31811 20.9537 9.86296C20.9423 9.88964 20.9394 9.91915 20.9453 9.94755C20.9511 9.97594 20.9655 10.0019 20.9865 10.0219C21.7797 10.9028 22.2256 12.042 22.2413 13.2273C22.2413 13.6054 22.2413 13.989 22.203 14.3725C22.1642 14.9462 22.0556 15.5129 21.8797 16.0602C21.6891 16.6923 21.3704 17.2783 20.9433 17.7817C20.5162 18.2852 19.99 18.6952 19.3975 18.9862C18.5617 19.3759 17.6676 19.6258 16.7509 19.726L16.3674 19.7753L16.4002 19.8136C16.5676 19.9714 16.7066 20.1567 16.8112 20.3616C17.0895 20.8642 17.2311 21.431 17.2222 22.0054C17.2222 22.8821 17.2222 26.3068 17.2222 27.6493C20.5872 26.8821 23.5502 24.8989 25.5424 22.0806C27.5346 19.2622 28.4156 15.8073 28.0161 12.3791C27.6166 8.9509 25.9649 5.7911 23.378 3.50632C20.7912 1.22155 17.4515 -0.027159 14.0002 -5.61702e-05Z\"\n fill=\"#232323\"\n ></path>\n </g>\n <defs>\n <clipPath id=\"clip0_1831_1607\">\n <rect width=\"28\" height=\"28\" fill=\"currentColor\"></rect>\n </clipPath>\n </defs>\n </svg>\n)\n\nexport const RSSIcon = () => (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n >\n <g clipPath=\"url(#clip0_132_223787)\">\n <path\n d=\"M12 0C9.62663 0 7.30655 0.703788 5.33316 2.02236C3.35977 3.34094 1.8217 5.21509 0.913451 7.4078C0.00519939 9.60051 -0.232441 12.0133 0.230582 14.3411C0.693605 16.6689 1.83649 18.8071 3.51472 20.4853C5.19295 22.1635 7.33115 23.3064 9.65892 23.7694C11.9867 24.2324 14.3995 23.9948 16.5922 23.0866C18.7849 22.1783 20.6591 20.6402 21.9776 18.6668C23.2962 16.6935 24 14.3734 24 12C24 8.8174 22.7357 5.76516 20.4853 3.51472C18.2348 1.26428 15.1826 0 12 0V0ZM9.23367 17.6078C8.91865 17.8989 8.52428 18.0898 8.1006 18.1564C7.67691 18.223 7.24298 18.1623 6.85385 17.982C6.46473 17.8016 6.13793 17.5097 5.91491 17.1434C5.6919 16.777 5.58271 16.3527 5.60119 15.9242C5.61968 15.4957 5.76501 15.0824 6.01875 14.7366C6.27249 14.3908 6.62321 14.1282 7.02642 13.982C7.42964 13.8358 7.86718 13.8127 8.28356 13.9155C8.69994 14.0184 9.07639 14.2426 9.36517 14.5597C9.74769 14.9833 9.94829 15.5404 9.92369 16.1107C9.89909 16.681 9.65125 17.2187 9.23367 17.6078ZM15.0669 17.0583C15.0094 17.3724 14.8415 17.6555 14.5935 17.8566C14.3455 18.0577 14.0338 18.1636 13.7147 18.1551C13.3955 18.1466 13.0899 18.0243 12.853 17.8102C12.6161 17.5962 12.4635 17.3045 12.4227 16.9879C12.3898 16.598 12.4227 16.2082 12.3898 15.8137C12.3727 15.213 12.2277 14.6229 11.9645 14.0827C11.7013 13.5426 11.3259 13.0647 10.8634 12.681C10.0812 12.0038 9.07998 11.6334 8.04541 11.6384C7.72603 11.6384 7.40666 11.6384 7.10607 11.6384C6.8654 11.6393 6.62883 11.576 6.42077 11.4551C6.21271 11.3341 6.04069 11.1598 5.92247 10.9502C5.80425 10.7405 5.7441 10.5031 5.74824 10.2625C5.75237 10.0218 5.82064 9.78667 5.94599 9.58121C6.0551 9.38458 6.21418 9.22023 6.40716 9.10478C6.60013 8.98932 6.82016 8.92685 7.04502 8.92368C8.06353 8.86824 9.08439 8.97445 10.0697 9.23836C11.2122 9.58402 12.2481 10.2143 13.0802 11.0701C13.9599 11.9637 14.5815 13.0786 14.8791 14.2967C15.1074 15.1984 15.1711 16.134 15.0669 17.0583ZM19.6039 16.908C19.599 17.1916 19.4962 17.4647 19.3131 17.6812C19.1299 17.8978 18.8776 18.0444 18.5988 18.0963C18.3257 18.1503 18.0424 18.1083 17.7967 17.9773C17.5511 17.8464 17.3582 17.6345 17.2509 17.3777C17.1689 17.1718 17.1305 16.9511 17.1382 16.7295C17.1826 15.7639 17.0941 14.7967 16.8752 13.8552C16.3913 11.8504 15.2444 10.068 13.6204 8.79687C12.0015 7.48595 9.98288 6.76832 7.89981 6.76321H7.0685C6.83806 6.77392 6.6092 6.72014 6.40766 6.60791C6.20612 6.49567 6.03988 6.32944 5.92764 6.1279C5.8154 5.92636 5.76162 5.6975 5.77233 5.46706C5.78303 5.23663 5.85782 5.01375 5.98826 4.82348C6.00046 4.80288 6.00993 4.78077 6.01644 4.75773L6.27476 4.50411C6.616 4.32283 7.0036 4.2476 7.38787 4.28806C8.7413 4.26792 10.0897 4.45805 11.3847 4.85166C13.2873 5.45412 15.0067 6.52787 16.3829 7.9731C17.7591 9.41832 18.7476 11.1881 19.2564 13.1178C19.5711 14.355 19.6884 15.6342 19.6039 16.908Z\"\n fill=\"currentColor\"\n />\n </g>\n <defs>\n <clipPath id=\"clip0_132_223787\">\n <rect width=\"24\" height=\"24\" fill=\"currentColor\" />\n </clipPath>\n </defs>\n </svg>\n)\n\nexport const HamburgerIconSmall = () => (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n >\n <path\n d=\"M3 5.5C3 4.80964 3.55964 4.25 4.25 4.25H19.75C20.4404 4.25 21 4.80964 21 5.5C21 6.19036 20.4404 6.75 19.75 6.75H4.25C3.55964 6.75 3 6.19036 3 5.5Z\"\n fill=\"var(--color-blue-400)\"\n />\n <path\n d=\"M3 12C3 11.3096 3.55964 10.75 4.25 10.75H19.75C20.4404 10.75 21 11.3096 21 12C21 12.6904 20.4404 13.25 19.75 13.25H4.25C3.55964 13.25 3 12.6904 3 12Z\"\n fill=\"var(--color-red-400)\"\n />\n <path\n d=\"M3 18.5C3 17.8096 3.55964 17.25 4.25 17.25H19.75C20.4404 17.25 21 17.8096 21 18.5C21 19.1904 20.4404 19.75 19.75 19.75H4.25C3.55964 19.75 3 19.1904 3 18.5Z\"\n fill=\"var(--color-yellow-400)\"\n />\n </svg>\n)\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["HamburgerIcon","_jsxRuntime","jsxs","width","height","viewBox","children","jsx","fill","y","rx","exports","SearchIcon","xmlns","d","stroke","strokeWidth","strokeLinecap","SearchIconSmall","ClearIcon","LoginIcon","SettingsIcon","SettingsIconSmall","FBIcon","IGIcon","clipPath","id","YouTubeIcon","ThreadsIcon","MediumIcon","TwitterIcon","fillRule","clipRule","GithubIcon","RSSIcon","HamburgerIconSmall","ArrowIcon","strokeLinejoin"],"sources":["../../src/icons/index.tsx"],"sourcesContent":["export const HamburgerIcon = () => (\n <svg\n width=\"30\"\n height=\"30\"\n viewBox=\"0 0 18 14\"\n aria-hidden=\"true\"\n data-type=\"type-1\"\n >\n <rect\n fill=\"var(--color-blue-400)\"\n y=\"0.00\"\n width=\"18\"\n height=\"3\"\n rx=\"1\"\n ></rect>\n <rect\n fill=\"var(--color-red-400)\"\n y=\"6.15\"\n width=\"18\"\n height=\"3\"\n rx=\"1\"\n ></rect>\n <rect\n fill=\"var(--color-yellow-400)\"\n y=\"12.3\"\n width=\"18\"\n height=\"3\"\n rx=\"1\"\n ></rect>\n </svg>\n)\n\nexport const SearchIcon = () => (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"26\"\n height=\"26\"\n viewBox=\"0 0 26 26\"\n fill=\"none\"\n >\n <path\n d=\"M10 1.75C14.5563 1.75 18.25 5.44365 18.25 10C18.25 14.5563 14.5563 18.25 10 18.25C5.44365 18.25 1.75 14.5563 1.75 10C1.75 5.44365 5.44365 1.75 10 1.75Z\"\n stroke=\"currentColor\"\n strokeWidth=\"3.5\"\n />\n <path\n d=\"M17 17L24 24\"\n stroke=\"currentColor\"\n strokeWidth=\"3.5\"\n strokeLinecap=\"round\"\n />\n </svg>\n)\n\nexport const SearchIconSmall = () => (\n <svg\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M10.5 4.25C13.9518 4.25 16.75 7.04822 16.75 10.5C16.75 13.9518 13.9518 16.75 10.5 16.75C7.04822 16.75 4.25 13.9518 4.25 10.5C4.25 7.04822 7.04822 4.25 10.5 4.25Z\"\n stroke=\"currentColor\"\n strokeWidth=\"2.5\"\n />\n <path\n d=\"M15.75 15.75L21 21\"\n stroke=\"currentColor\"\n strokeWidth=\"2.5\"\n strokeLinecap=\"round\"\n />\n </svg>\n)\n\nexport const ClearIcon = () => (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"32\"\n height=\"32\"\n viewBox=\"0 0 32 32\"\n fill=\"none\"\n >\n <path\n d=\"M6.80761 6.80748C7.49102 6.12407 8.59906 6.12407 9.28248 6.80748L16 13.525L22.7175 6.80748C23.4009 6.12407 24.509 6.12407 25.1924 6.80748C25.8758 7.4909 25.8758 8.59894 25.1924 9.28236L18.4749 15.9999L25.1924 22.7174C25.8758 23.4008 25.8758 24.5088 25.1924 25.1923C24.509 25.8757 23.4009 25.8757 22.7175 25.1923L16 18.4747L9.28248 25.1923C8.59906 25.8757 7.49102 25.8757 6.80761 25.1923C6.12419 24.5088 6.12419 23.4008 6.80761 22.7174L13.5251 15.9999L6.80761 9.28236C6.12419 8.59894 6.12419 7.4909 6.80761 6.80748Z\"\n fill=\"currentColor\"\n />\n </svg>\n)\n\nexport const LoginIcon = () => (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"28\"\n height=\"28\"\n viewBox=\"0 0 28 28\"\n fill=\"none\"\n >\n <path\n d=\"M14 28C21.732 28 28 21.732 28 14C28 6.26801 21.732 0 14 0C6.26801 0 0 6.26801 0 14C0 21.732 6.26801 28 14 28Z\"\n fill=\"currentColor\"\n />\n <path\n d=\"M14 15C17.1803 15 20.2304 16.2505 22.4805 18.4766C23.6441 19.6278 24.5419 20.9926 25.1406 22.4766C22.5831 25.8327 18.5453 28 14 28C9.45451 28 5.41592 25.833 2.8584 22.4766C3.45708 20.9924 4.35586 19.6279 5.51953 18.4766C7.76958 16.2505 10.8197 15 14 15Z\"\n fill=\"white\"\n />\n <path\n d=\"M14 13C12.9 13 11.9583 12.6083 11.175 11.825C10.3917 11.0417 10 10.1 10 9C10 7.9 10.3917 6.95833 11.175 6.175C11.9583 5.39167 12.9 5 14 5C15.1 5 16.0417 5.39167 16.825 6.175C17.6083 6.95833 18 7.9 18 9C18 10.1 17.6083 11.0417 16.825 11.825C16.0417 12.6083 15.1 13 14 13Z\"\n fill=\"white\"\n />\n <path\n d=\"M14 1.5C20.9036 1.5 26.5 7.09644 26.5 14C26.5 20.9036 20.9036 26.5 14 26.5C7.09644 26.5 1.5 20.9036 1.5 14C1.5 7.09644 7.09644 1.5 14 1.5Z\"\n stroke=\"currentColor\"\n strokeWidth=\"3\"\n />\n </svg>\n)\n\nexport const SettingsIcon = () => (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"32\"\n height=\"32\"\n viewBox=\"0 0 32 32\"\n fill=\"none\"\n >\n <path\n d=\"M16.1605 29.3914C15.6791 29.3914 15.2692 29.2269 14.9309 28.898C14.5928 28.5689 14.4237 28.161 14.4237 27.6744V21.9879C14.4237 21.5015 14.5928 21.0937 14.9309 20.7646C15.2692 20.4355 15.6791 20.2709 16.1605 20.2709C16.642 20.2709 17.0486 20.4355 17.3803 20.7646C17.7118 21.0937 17.8775 21.5015 17.8775 21.9879V23.1042H27.4939C27.9805 23.1042 28.3883 23.2688 28.7172 23.5979C29.0463 23.9271 29.2109 24.3348 29.2109 24.8212C29.2109 25.3027 29.0463 25.7125 28.7172 26.0509C28.3883 26.389 27.9805 26.5581 27.4939 26.5581H17.8775V27.6744C17.8775 28.161 17.713 28.5689 17.3838 28.898C17.0549 29.2269 16.6472 29.3914 16.1605 29.3914ZM4.50704 26.5581C4.02041 26.5581 3.61265 26.389 3.28375 26.0509C2.95461 25.7125 2.79004 25.3027 2.79004 24.8212C2.79004 24.3398 2.95461 23.9332 3.28375 23.6015C3.61265 23.27 4.02041 23.1042 4.50704 23.1042H10.1935C10.6802 23.1042 11.0879 23.2688 11.4168 23.5979C11.746 23.9271 11.9105 24.3348 11.9105 24.8212C11.9105 25.3027 11.746 25.7125 11.4168 26.0509C11.0879 26.389 10.6802 26.5581 10.1935 26.5581H4.50704ZM10.1935 20.5712C9.71211 20.5712 9.30234 20.4021 8.96423 20.0637C8.62588 19.7256 8.45671 19.3157 8.45671 18.834V17.7379H4.50704C4.02041 17.7379 3.61265 17.5733 3.28375 17.2442C2.95461 16.915 2.79004 16.5073 2.79004 16.0209C2.79004 15.5345 2.95461 15.1267 3.28375 14.7976C3.61265 14.4685 4.02041 14.3039 4.50704 14.3039H8.45671V13.1876C8.45671 12.7012 8.62588 12.2934 8.96423 11.9643C9.30234 11.6351 9.71211 11.4706 10.1935 11.4706C10.675 11.4706 11.0816 11.6351 11.4133 11.9643C11.7448 12.2934 11.9105 12.7012 11.9105 13.1876V18.8542C11.9105 19.3406 11.746 19.7484 11.4168 20.0775C11.0879 20.4067 10.6802 20.5712 10.1935 20.5712ZM16.1407 17.7379C15.6541 17.7379 15.2463 17.5733 14.9174 17.2442C14.5883 16.915 14.4237 16.5073 14.4237 16.0209C14.4237 15.5345 14.5883 15.1267 14.9174 14.7976C15.2463 14.4685 15.6541 14.3039 16.1407 14.3039H27.4939C27.9805 14.3039 28.3883 14.4685 28.7172 14.7976C29.0463 15.1267 29.2109 15.5345 29.2109 16.0209C29.2109 16.5073 29.0463 16.915 28.7172 17.2442C28.3883 17.5733 27.9805 17.7379 27.4939 17.7379H16.1407ZM21.8272 11.7709C21.3458 11.7709 20.9359 11.6063 20.5975 11.2772C20.2594 10.948 20.0904 10.5403 20.0904 10.0539V4.36739C20.0904 3.88077 20.2594 3.47288 20.5975 3.14374C20.9359 2.81484 21.3458 2.65039 21.8272 2.65039C22.3086 2.65039 22.7152 2.81484 23.047 3.14374C23.3785 3.47288 23.5442 3.88077 23.5442 4.36739V5.48372H27.4939C27.9805 5.48372 28.3883 5.64818 28.7172 5.97708C29.0463 6.30622 29.2109 6.7141 29.2109 7.20073C29.2109 7.68216 29.0463 8.09193 28.7172 8.43004C28.3883 8.76838 27.9805 8.93756 27.4939 8.93756H23.5442V10.0539C23.5442 10.5403 23.3796 10.948 23.0505 11.2772C22.7216 11.6063 22.3138 11.7709 21.8272 11.7709ZM4.50704 8.93756C4.02041 8.93756 3.61265 8.76838 3.28375 8.43004C2.95461 8.09193 2.79004 7.68216 2.79004 7.20073C2.79004 6.71906 2.95461 6.31248 3.28375 5.98098C3.61265 5.64948 4.02041 5.48372 4.50704 5.48372H15.8602C16.3468 5.48372 16.7546 5.64818 17.0835 5.97708C17.4126 6.30622 17.5772 6.7141 17.5772 7.20073C17.5772 7.68216 17.4126 8.09193 17.0835 8.43004C16.7546 8.76838 16.3468 8.93756 15.8602 8.93756H4.50704Z\"\n fill=\"currentColor\"\n />\n </svg>\n)\n\nexport const SettingsIconSmall = () => (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n >\n <path\n d=\"M12.1204 22.0436C11.7593 22.0436 11.4519 21.9202 11.1982 21.6735C10.9446 21.4267 10.8178 21.1207 10.8178 20.7558V16.4909C10.8178 16.1261 10.9446 15.8201 11.1982 15.5733C11.4519 15.3266 11.7593 15.2032 12.1204 15.2032C12.4815 15.2032 12.7864 15.3266 13.0352 15.5733C13.2839 15.8201 13.4082 16.1261 13.4082 16.4909V17.3281H20.6204C20.9853 17.3281 21.2913 17.4516 21.5379 17.6983C21.7847 17.9451 21.9081 18.2511 21.9081 18.616C21.9081 18.9771 21.7847 19.2855 21.5379 19.5412C21.2913 19.7969 20.9853 19.9247 20.6204 19.9247H13.4082V20.7558C13.4082 21.1207 13.2839 21.4267 13.0352 21.6735C12.7864 21.9202 12.4815 22.0436 12.1204 22.0436ZM3.38025 19.9247C3.01525 19.9247 2.70925 19.7969 2.46275 19.5412C2.21595 19.2855 2.09255 18.9771 2.09255 18.616C2.09255 18.2549 2.21595 17.9499 2.46275 17.7011C2.70925 17.4524 3.01525 17.3281 3.38025 17.3281H7.64525C8.01025 17.3281 8.31625 17.4516 8.56325 17.6983C8.81025 17.9451 8.93375 18.2511 8.93375 18.616C8.93375 18.9771 8.81025 19.2855 8.56325 19.5412C8.31625 19.7969 8.01025 19.9247 7.64525 19.9247H3.38025ZM7.64525 15.4284C7.28415 15.4284 6.97675 15.3016 6.72325 15.0478C6.46945 14.7942 6.34265 14.4868 6.34265 14.1257V13.3907H3.38025C3.01525 13.3907 2.70925 13.2672 2.46275 13.0205C2.21595 12.7737 2.09255 12.4677 2.09255 12.1027C2.09255 11.7377 2.21595 11.4317 2.46275 11.1852C2.70925 10.9387 3.01525 10.8152 3.38025 10.8152H6.34265V10.0802C6.34265 9.71915 6.46945 9.41175 6.72325 9.15825C6.97675 8.90475 7.28415 8.77825 7.64525 8.77825C8.00625 8.77825 8.31125 8.90475 8.56025 9.15825C8.80925 9.41175 8.93375 9.71915 8.93375 10.0802V14.1257C8.93375 14.4868 8.80925 14.7942 8.56025 15.0478C8.31125 15.3016 8.00625 15.4284 7.64525 15.4284ZM12.1055 13.3907C11.7405 13.3907 11.4345 13.2672 11.1875 13.0205C10.9405 12.7737 10.817 12.4677 10.817 12.1027C10.817 11.7377 10.9405 11.4317 11.1875 11.1852C11.4345 10.9387 11.7405 10.8152 12.1055 10.8152H20.6204C20.9853 10.8152 21.2913 10.9387 21.5379 11.1852C21.7847 11.4317 21.9081 11.7377 21.9081 12.1027C21.9081 12.4677 21.7847 12.7737 21.5379 13.0205C21.2913 13.2672 20.9853 13.3907 20.6204 13.3907H12.1055ZM16.3705 8.82825C16.0094 8.82825 15.702 8.70475 15.4485 8.45725C15.195 8.20975 15.0682 7.90235 15.0682 7.53525V3.27525C15.0682 2.90815 15.195 2.60075 15.4485 2.35325C15.702 2.10575 16.0094 1.98225 16.3705 1.98225C16.7316 1.98225 17.0366 2.10575 17.2856 2.35325C17.5346 2.60075 17.6591 2.90815 17.6591 3.27525V4.11225H20.6204C20.9853 4.11225 21.2913 4.23575 21.5379 4.48225C21.7847 4.72875 21.9081 5.03475 21.9081 5.40025C21.9081 5.76135 21.7847 6.06975 21.5379 6.3255C21.2913 6.58125 20.9853 6.70475 20.6204 6.70475H17.6591V7.53525C17.6591 7.90235 17.5346 8.20975 17.2856 8.45725C17.0366 8.70475 16.7316 8.82825 16.3705 8.82825ZM3.38025 6.70475C3.01525 6.70475 2.70925 6.58125 2.46275 6.3255C2.21595 6.06975 2.09255 5.76135 2.09255 5.40025C2.09255 5.03915 2.21595 4.73415 2.46275 4.48515C2.70925 4.23615 3.01525 4.11225 3.38025 4.11225H11.8955C12.2605 4.11225 12.5665 4.23575 12.8135 4.48225C13.0605 4.72875 13.184 5.03475 13.184 5.40025C13.184 5.76135 13.0605 6.06975 12.8135 6.3255C12.5665 6.58125 12.2605 6.70475 11.8955 6.70475H3.38025Z\"\n fill=\"currentColor\"\n />\n </svg>\n)\n\nexport const FBIcon = () => (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n >\n <path\n d=\"M11.9995 9.50795e-06C8.97739 -0.00379259 6.06512 1.13283 3.84457 3.18279C1.62402 5.23274 0.258713 8.04507 0.0214397 11.0578C-0.215834 14.0706 0.692399 17.062 2.56467 19.4343C4.43694 21.8066 7.13538 23.3851 10.1208 23.8544V15.4708H7.07738V12H10.1255V9.35578C10.1255 6.34991 11.915 4.68729 14.6578 4.68729C15.5579 4.69971 16.4558 4.77819 17.3443 4.92212V7.87633H15.832C14.3384 7.87633 13.8735 8.81567 13.8735 9.755V12.0047H17.2034L16.6727 15.4708H13.8547V23.8544C16.8381 23.3854 19.535 21.8087 21.4072 19.4389C23.2793 17.0691 24.1891 14.0805 23.9549 11.0696C23.7208 8.05858 22.3599 5.2466 20.1438 3.19477C17.9278 1.14293 15.0196 0.00213057 11.9995 9.50795e-06Z\"\n fill=\"currentColor\"\n />\n </svg>\n)\n\nexport const IGIcon = () => (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n >\n <g clipPath=\"url(#clip0_132_223771)\">\n <path\n d=\"M12.0008 14.5175C13.3912 14.5175 14.5182 13.3904 14.5182 12.0001C14.5182 10.6098 13.3912 9.48267 12.0008 9.48267C10.6105 9.48267 9.48341 10.6098 9.48341 12.0001C9.48341 13.3904 10.6105 14.5175 12.0008 14.5175Z\"\n fill=\"currentColor\"\n />\n <path\n d=\"M17.89 7.54288C17.7683 7.21534 17.5759 6.91867 17.3264 6.674C17.0774 6.41975 16.7739 6.22542 16.4388 6.1057C15.9874 5.93943 15.5108 5.85205 15.0298 5.84738C14.236 5.80981 13.9965 5.80042 11.9769 5.80042C9.95735 5.80042 9.72251 5.80042 8.92408 5.84738C8.44307 5.85205 7.96646 5.93943 7.51508 6.1057C7.1957 6.2306 6.90563 6.42027 6.66314 6.66276C6.42064 6.90525 6.23098 7.19532 6.10608 7.5147C5.93981 7.96608 5.85243 8.4427 5.84776 8.9237C5.81019 9.72214 5.80079 9.96167 5.80079 11.9765C5.80079 13.9914 5.80079 14.2356 5.84776 15.0294C5.85243 15.5104 5.93981 15.987 6.10608 16.4384C6.22694 16.7663 6.41949 17.0632 6.66968 17.3073C6.91435 17.5567 7.21102 17.7492 7.53856 17.8709C7.98948 18.0394 8.46622 18.1284 8.94756 18.1339C9.746 18.1668 9.98553 18.1762 12.0004 18.1762C14.0153 18.1762 14.2595 18.1762 15.0532 18.1339C15.5346 18.1284 16.0113 18.0394 16.4622 17.8709C16.7874 17.7456 17.0825 17.5533 17.3285 17.3065C17.5745 17.0597 17.7658 16.7639 17.89 16.4384C18.0585 15.9875 18.1475 15.5107 18.153 15.0294C18.1859 14.2356 18.1953 13.9961 18.1953 11.9765C18.1953 9.95697 18.1953 9.72214 18.153 8.9237C18.1443 8.45185 18.0554 7.98491 17.89 7.54288ZM12.0004 15.8795C11.2331 15.8795 10.4831 15.652 9.84509 15.2257C9.20712 14.7994 8.70988 14.1935 8.41625 13.4846C8.12263 12.7757 8.0458 11.9957 8.19549 11.2432C8.34518 10.4906 8.71466 9.79939 9.25721 9.25684C9.79976 8.71429 10.491 8.3448 11.2436 8.19511C11.9961 8.04542 12.7761 8.12225 13.485 8.41588C14.1939 8.7095 14.7998 9.20674 15.226 9.84472C15.6523 10.4827 15.8799 11.2327 15.8799 12C15.8799 13.0289 15.4711 14.0157 14.7436 14.7432C14.016 15.4707 13.0293 15.8795 12.0004 15.8795ZM16.0348 8.87204C15.8548 8.872 15.6788 8.81833 15.5293 8.71787C15.3799 8.61741 15.2638 8.47472 15.1957 8.30799C15.1277 8.14126 15.1109 7.95805 15.1474 7.78172C15.1839 7.60539 15.2722 7.44393 15.4008 7.31794C15.5295 7.19195 15.6927 7.10714 15.8698 7.07431C16.0469 7.04149 16.2297 7.06214 16.3949 7.13364C16.5602 7.20513 16.7004 7.32423 16.7978 7.47575C16.8951 7.62727 16.945 7.80433 16.9413 7.98437C16.9376 8.2219 16.8403 8.44837 16.6706 8.61457C16.5009 8.78078 16.2724 8.87331 16.0348 8.87204Z\"\n fill=\"currentColor\"\n />\n <path\n d=\"M12 0C9.62663 0 7.30655 0.703788 5.33316 2.02236C3.35977 3.34094 1.8217 5.21509 0.913451 7.4078C0.00519937 9.60051 -0.232441 12.0133 0.230582 14.3411C0.693605 16.6689 1.83649 18.8071 3.51472 20.4853C5.19295 22.1635 7.33115 23.3064 9.65892 23.7694C11.9867 24.2324 14.3995 23.9948 16.5922 23.0866C18.7849 22.1783 20.6591 20.6402 21.9776 18.6668C23.2962 16.6935 24 14.3734 24 12C24 8.8174 22.7357 5.76516 20.4853 3.51472C18.2348 1.26428 15.1826 0 12 0ZM19.5147 15.1139C19.5025 15.7416 19.3834 16.3626 19.1624 16.9503C18.97 17.4525 18.674 17.9086 18.2937 18.289C17.9133 18.6693 17.4572 18.9653 16.955 19.1577C16.3673 19.3787 15.7463 19.4978 15.1186 19.51C14.3155 19.5476 14.0571 19.5569 12.0047 19.5569C9.95226 19.5569 9.69394 19.5569 8.89081 19.51C8.26005 19.4978 7.63592 19.3787 7.04502 19.1577C6.54176 18.9673 6.08528 18.671 5.70646 18.2888C5.32364 17.9106 5.02723 17.4539 4.83758 16.9503C4.61665 16.3626 4.49752 15.7416 4.48533 15.1139C4.44776 14.3108 4.43836 14.0524 4.43836 12C4.43836 9.94755 4.43836 9.68924 4.48533 8.88611C4.49949 8.25665 4.62018 7.63415 4.84228 7.04501C5.03473 6.54277 5.33073 6.08666 5.71105 5.70635C6.09136 5.32603 6.54747 5.03002 7.04971 4.83757C7.63765 4.61761 8.25851 4.49851 8.88611 4.48532C9.68924 4.44775 9.94756 4.43836 12 4.43836C14.0525 4.43836 14.3108 4.43836 15.1139 4.48532C15.7416 4.49752 16.3626 4.61664 16.9503 4.83757C17.454 5.02722 17.9106 5.32364 18.2889 5.70646C18.671 6.08528 18.9673 6.54176 19.1577 7.04501C19.3777 7.63295 19.4968 8.25381 19.51 8.88141C19.5476 9.68454 19.557 9.94286 19.557 11.9953C19.557 14.0478 19.5476 14.3108 19.51 15.1139H19.5147Z\"\n fill=\"currentColor\"\n />\n </g>\n <defs>\n <clipPath id=\"clip0_132_223771\">\n <rect width=\"24\" height=\"24\" fill=\"currentColor\" />\n </clipPath>\n </defs>\n </svg>\n)\n\nexport const YouTubeIcon = () => (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n >\n <g clipPath=\"url(#clip0_132_223774)\">\n <path\n d=\"M12 0C18.6274 0 24 5.37258 24 12C24 18.6274 18.6274 24 12 24C5.37258 24 0 18.6274 0 12C0 5.37258 5.37258 0 12 0ZM11.999 6.59961C11.9471 6.59962 7.65166 6.60138 6.57422 6.9209C6.27982 7.00874 6.01134 7.18154 5.7959 7.4209C5.58045 7.66028 5.42547 7.95833 5.34668 8.28516C5.05691 9.48903 5.05664 12 5.05664 12C5.05666 12.0358 5.05897 14.5195 5.34668 15.7129C5.50639 16.3765 5.97768 16.8991 6.57422 17.0762C7.65146 17.3974 11.9471 17.3994 11.999 17.3994C11.999 17.3994 16.3411 17.3994 17.4248 17.0762C18.0229 16.8991 18.4926 16.3765 18.6523 15.7129C18.9401 14.5195 18.9424 12.0358 18.9424 12C18.9424 12 18.9421 9.48935 18.6523 8.28711C18.5733 7.96045 18.4185 7.66218 18.2031 7.42285C17.9877 7.18352 17.7191 7.01098 17.4248 6.92285C16.341 6.59964 11.999 6.59961 11.999 6.59961ZM14.2158 11.9824L10.6201 14.3037V9.69531L14.2158 11.9824Z\"\n fill=\"currentColor\"\n />\n </g>\n <defs>\n <clipPath id=\"clip0_132_223774\">\n <rect width=\"24\" height=\"24\" fill=\"currentColor\" />\n </clipPath>\n </defs>\n </svg>\n)\n\nexport const ThreadsIcon = () => (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n >\n <g clipPath=\"url(#clip0_132_223779)\">\n <path\n d=\"M12 0C18.6274 0 24 5.37258 24 12C24 18.6274 18.6274 24 12 24C5.37258 24 0 18.6274 0 12C0 5.37258 5.37258 0 12 0ZM12.1133 4.03125C9.78273 4.04769 7.98986 4.83187 6.78613 6.3623C5.71485 7.72394 5.16285 9.6189 5.14453 11.9941V12.0059C5.16284 14.3811 5.71485 16.2761 6.78613 17.6377C7.98986 19.1681 9.78273 19.9528 12.1133 19.9688H12.123C14.1948 19.9542 15.6552 19.4122 16.8584 18.21C18.4325 16.6373 18.3851 14.6664 17.8662 13.4561C17.494 12.5884 16.7843 11.8834 15.8135 11.418C15.7451 11.3852 15.6752 11.3532 15.6045 11.3232C15.4817 9.05654 14.2436 7.75844 12.1641 7.74512C10.9641 7.73715 9.8891 8.22645 9.21973 9.24219L10.3633 10.0273C10.839 9.30555 11.5859 9.1514 12.1357 9.15137H12.1543C12.8391 9.15559 13.3562 9.35508 13.6904 9.74316C13.9337 10.0263 14.0971 10.417 14.1777 10.9102C13.5702 10.807 12.9141 10.7751 12.2119 10.8154C10.2347 10.9293 8.96352 12.0824 9.04883 13.6846C9.09204 14.4976 9.49685 15.1964 10.1885 15.6533C10.7735 16.0396 11.5277 16.2287 12.3105 16.1855C13.345 16.1292 14.1555 15.734 14.7217 15.0127C15.1515 14.4647 15.424 13.7547 15.5439 12.8604C16.0365 13.1575 16.4015 13.549 16.6035 14.0195C16.9462 14.8192 16.966 16.1335 15.8936 17.2051C14.9542 18.144 13.8249 18.5498 12.1182 18.5625C10.2244 18.5484 8.79227 17.9414 7.86133 16.7578C6.98948 15.6497 6.53934 14.0489 6.52246 12C6.53934 9.95112 6.98947 8.35031 7.86133 7.24219C8.79227 6.05859 10.2244 5.45156 12.1182 5.4375C14.025 5.45157 15.4822 6.06177 16.4492 7.25098C16.9229 7.83393 17.2799 8.56726 17.5156 9.42188L18.8555 9.06445C18.57 8.01226 18.1214 7.1048 17.5098 6.35254C16.2704 4.8279 14.4581 4.04771 12.123 4.03125H12.1133ZM12.7705 12.2051C13.2878 12.2051 13.7719 12.255 14.2119 12.3516C14.0479 14.4018 13.0852 14.7344 12.2363 14.7812C11.3701 14.83 10.4694 14.4413 10.4248 13.6084C10.392 12.9906 10.865 12.3008 12.29 12.2188C12.453 12.2094 12.6136 12.2051 12.7705 12.2051Z\"\n fill=\"currentColor\"\n />\n </g>\n <defs>\n <clipPath id=\"clip0_132_223779\">\n <rect width=\"24\" height=\"24\" fill=\"currentColor\" />\n </clipPath>\n </defs>\n </svg>\n)\n\nexport const MediumIcon = () => (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n >\n <g clipPath=\"url(#clip0_132_223784)\">\n <path\n d=\"M12 0C9.62663 0 7.30655 0.703788 5.33316 2.02236C3.35977 3.34094 1.8217 5.21509 0.913451 7.4078C0.00519939 9.60051 -0.232441 12.0133 0.230582 14.3411C0.693605 16.6689 1.83649 18.8071 3.51472 20.4853C5.19295 22.1635 7.33115 23.3064 9.65892 23.7694C11.9867 24.2324 14.3995 23.9948 16.5922 23.0866C18.7849 22.1783 20.6591 20.6402 21.9776 18.6668C23.2962 16.6935 24 14.3734 24 12C24 8.8174 22.7357 5.76516 20.4853 3.51472C18.2348 1.26428 15.1826 0 12 0V0ZM12.8454 12.6434C12.793 13.0019 12.7 13.3533 12.5683 13.6908C12.1242 14.8071 11.2612 15.7055 10.1636 16.1941C9.62593 16.432 9.04653 16.5613 8.45871 16.5746C8.00177 16.5891 7.54537 16.5321 7.10607 16.4055C6.48685 16.228 5.91329 15.9188 5.42466 15.499C4.95434 15.1045 4.56844 14.6191 4.29002 14.072C4.01161 13.5248 3.84641 12.9271 3.80431 12.3147C3.77854 11.9427 3.79746 11.569 3.86067 11.2016C3.97054 10.578 4.20838 9.98405 4.5592 9.45701C4.91002 8.92997 5.36621 8.48132 5.89903 8.13933C6.53874 7.72426 7.27487 7.48158 8.03601 7.43483H8.18631H8.52916H8.74991C9.01053 7.45467 9.26854 7.50029 9.52016 7.57104C10.5922 7.8715 11.5193 8.54959 12.1305 9.48014C12.7416 10.4107 12.9956 11.5309 12.8454 12.6341V12.6434ZM17.8474 12.4603C17.8474 12.6716 17.8145 12.8877 17.7863 13.099C17.7021 13.8093 17.4855 14.4975 17.1476 15.128C17.0014 15.4032 16.8128 15.6536 16.5887 15.8701C16.3917 16.062 16.1493 16.2009 15.8842 16.274C15.5958 16.3383 15.2941 16.3018 15.0294 16.1706C14.7923 16.0446 14.5831 15.8721 14.4141 15.6634C14.1621 15.3552 13.9593 15.0098 13.8129 14.6395C13.6455 14.2203 13.5242 13.7841 13.4513 13.3386C13.369 12.8561 13.3313 12.3672 13.3386 11.8779C13.3394 11.5637 13.3613 11.2498 13.4043 10.9386C13.4632 10.4758 13.5719 10.0207 13.7284 9.58121C13.8604 9.19264 14.0487 8.82553 14.2873 8.49159C14.4446 8.26934 14.6402 8.07691 14.865 7.92329C15.0539 7.79575 15.272 7.71818 15.499 7.69785C15.7374 7.67642 15.977 7.72368 16.1894 7.83405C16.4194 7.95069 16.625 8.11009 16.7953 8.30372C17.0678 8.63549 17.2836 9.01001 17.4341 9.41213C17.591 9.81371 17.7043 10.231 17.7722 10.6568C17.8412 11.0618 17.8773 11.4717 17.8802 11.8826V11.953C17.8755 12.1362 17.8755 12.2959 17.8474 12.4603ZM19.8998 12.3429V12.3757C19.8998 12.7327 19.8669 13.0896 19.8435 13.4466C19.8069 13.9591 19.73 14.4679 19.6133 14.9683C19.5625 15.1802 19.4901 15.3864 19.3973 15.5836C19.3582 15.6664 19.3041 15.7413 19.2376 15.8043C19.2196 15.8229 19.1981 15.8377 19.1743 15.8478C19.1505 15.8579 19.1249 15.8631 19.099 15.8631C19.0732 15.8631 19.0476 15.8579 19.0238 15.8478C19 15.8377 18.9784 15.8229 18.9605 15.8043C18.881 15.7339 18.8198 15.6452 18.782 15.546C18.6862 15.3321 18.6137 15.1085 18.566 14.8791C18.4941 14.5552 18.4408 14.2274 18.4063 13.8975C18.341 13.297 18.3112 12.6932 18.317 12.0892C18.317 11.7511 18.317 11.4129 18.317 11.0748C18.3356 10.4686 18.4063 9.86523 18.5284 9.27123C18.5795 8.98897 18.6663 8.71436 18.7867 8.45401C18.8242 8.36192 18.8783 8.27753 18.9464 8.20509C18.9653 8.18071 18.9895 8.16098 19.0171 8.1474C19.0448 8.13383 19.0752 8.12677 19.1061 8.12677C19.1369 8.12677 19.1673 8.13383 19.195 8.1474C19.2227 8.16098 19.2469 8.18071 19.2658 8.20509C19.3494 8.29414 19.4134 8.39974 19.4536 8.51507C19.5481 8.74847 19.6189 8.99079 19.665 9.23836C19.7412 9.59978 19.7976 9.9651 19.8341 10.3327C19.8857 10.8446 19.9092 11.3613 19.9139 11.8779V12.3476L19.8998 12.3429Z\"\n fill=\"currentColor\"\n />\n </g>\n <defs>\n <clipPath id=\"clip0_132_223784\">\n <rect width=\"24\" height=\"24\" fill=\"currentColor\" />\n </clipPath>\n </defs>\n </svg>\n)\n\nexport const TwitterIcon = () => (\n <svg\n width=\"28\"\n height=\"28\"\n viewBox=\"0 0 28 28\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <g clipPath=\"url(#clip0_1831_1601)\">\n <path\n d=\"M28 14C28 6.26801 21.732 0 14 0C6.26801 0 0 6.26801 0 14C0 21.732 6.26801 28 14 28C21.732 28 28 21.732 28 14Z\"\n fill=\"currentColor\"\n ></path>\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M14 0C11.2311 0 8.52431 0.821086 6.22202 2.35943C3.91973 3.89777 2.12532 6.08427 1.06569 8.64243C0.00606596 11.2006 -0.271181 14.0155 0.269012 16.7313C0.809205 19.447 2.14258 21.9416 4.10051 23.8995C6.05845 25.8574 8.55301 27.1908 11.2687 27.731C13.9845 28.2712 16.7994 27.9939 19.3576 26.9343C21.9157 25.8747 24.1022 24.0803 25.6406 21.778C27.1789 19.4757 28 16.7689 28 14C28 10.287 26.525 6.72601 23.8995 4.1005C21.274 1.475 17.713 0 14 0V0ZM21.737 11.0082C21.737 11.1671 21.737 11.326 21.737 11.4849C21.737 16.4164 18 22.0658 11.1617 22.0658C9.1468 22.0631 7.17491 21.4831 5.47946 20.3945C5.77419 20.4276 6.07055 20.4441 6.36713 20.4438C8.03241 20.4429 9.64925 19.8834 10.9589 18.8548C10.1868 18.8361 9.43966 18.5776 8.8211 18.1152C8.20254 17.6527 7.74322 17.0092 7.50686 16.274C8.06347 16.38 8.63696 16.3575 9.18357 16.2082C8.34183 16.0396 7.58463 15.5842 7.04107 14.9197C6.49751 14.2553 6.20123 13.4229 6.20275 12.5644V12.5151C6.71746 12.8043 7.29475 12.9641 7.88494 12.9808C7.09746 12.4551 6.54004 11.6489 6.32624 10.7266C6.11244 9.80418 6.25836 8.83498 6.73425 8.01644C7.66837 9.16643 8.83427 10.1067 10.156 10.7761C11.4778 11.4455 12.9257 11.8289 14.4055 11.9014C14.3436 11.6244 14.3123 11.3414 14.3123 11.0575C14.3121 10.3116 14.5361 9.58281 14.9552 8.96576C15.3743 8.34871 15.9693 7.8719 16.6628 7.59721C17.3563 7.32252 18.1164 7.26263 18.8444 7.42533C19.5724 7.58803 20.2346 7.96579 20.7452 8.50959C21.5773 8.34473 22.3757 8.04094 23.1069 7.61096C22.8253 8.47206 22.2413 9.20201 21.463 9.66575C22.2007 9.57873 22.9212 9.38108 23.6 9.07945C23.0986 9.82801 22.4677 10.4812 21.737 11.0082Z\"\n fill=\"#232323\"\n ></path>\n </g>\n <defs>\n <clipPath id=\"clip0_1831_1601\">\n <rect width=\"28\" height=\"28\" fill=\"currentColor\"></rect>\n </clipPath>\n </defs>\n </svg>\n)\n\nexport const GithubIcon = () => (\n <svg\n width=\"28\"\n height=\"28\"\n viewBox=\"0 0 28 28\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <g clipPath=\"url(#clip0_1831_1607)\">\n <path\n d=\"M28 14C28 6.26801 21.732 0 14 0C6.26801 0 0 6.26801 0 14C0 21.732 6.26801 28 14 28C21.732 28 28 21.732 28 14Z\"\n fill=\"currentColor\"\n ></path>\n <path\n d=\"M14.0002 -5.61702e-05C10.5662 -0.00202214 7.25116 1.25824 4.68569 3.54104C2.12023 5.82385 0.483265 8.96994 0.0861461 12.381C-0.310973 15.792 0.559453 19.23 2.53188 22.0411C4.5043 24.8522 7.44113 26.8403 10.7838 27.6273C10.7838 26.1862 10.7838 23.9616 10.7838 23.4082V23.3369H10.718C10.3256 23.4108 9.92811 23.4547 9.529 23.4684C8.99098 23.4984 8.45209 23.4278 7.93996 23.2602C7.61017 23.1609 7.30694 22.9887 7.05274 22.7563C6.79854 22.5239 6.59987 22.2373 6.47147 21.9178C6.2612 21.4077 5.98287 20.9285 5.64407 20.4931C5.47435 20.2707 5.26199 20.0845 5.01941 19.9452C4.92794 19.8982 4.84317 19.8393 4.76736 19.7698C4.66306 19.6965 4.57839 19.5986 4.52078 19.4849C4.50695 19.4628 4.49821 19.4379 4.49519 19.412C4.49218 19.3862 4.49498 19.3599 4.50337 19.3353C4.51177 19.3106 4.52556 19.2881 4.54374 19.2694C4.56191 19.2508 4.58402 19.2364 4.60846 19.2273C4.65758 19.2052 4.70905 19.1887 4.76188 19.178C5.20012 19.0865 5.65677 19.1712 6.03311 19.4136C6.47859 19.6888 6.85381 20.0641 7.129 20.5095C7.23699 20.6876 7.3598 20.8562 7.49613 21.0136C7.69961 21.2582 7.94978 21.4597 8.23202 21.6065C8.51426 21.7532 8.82292 21.8423 9.13996 21.8684C9.71454 21.9081 10.2897 21.8006 10.8112 21.5561C10.8327 21.5421 10.8484 21.5206 10.855 21.4958C10.8879 21.3369 10.9153 21.1726 10.9591 21.0191C11.0703 20.5691 11.308 20.1603 11.6441 19.841L11.0359 19.726C10.4575 19.6423 9.88865 19.5029 9.33722 19.3095C8.66128 19.0677 8.03945 18.6953 7.50709 18.2136C6.89214 17.6408 6.43381 16.9203 6.17558 16.1205C5.91799 15.307 5.78678 14.4587 5.78654 13.6054C5.77208 13.0508 5.83853 12.497 5.9838 11.9616C6.19666 11.2384 6.57143 10.5732 7.07969 10.0164C7.07969 9.98899 7.129 9.96707 7.11256 9.91775C6.98887 9.58091 6.91145 9.22884 6.88243 8.87118C6.81737 8.08993 6.93363 7.30421 7.22215 6.57529C7.22215 6.57529 7.26051 6.52597 7.28243 6.52597C7.44114 6.51502 7.60042 6.51502 7.75914 6.52597C8.17691 6.57467 8.58506 6.68548 8.9701 6.85474C9.58872 7.11916 10.1797 7.44403 10.7345 7.8246C10.7523 7.83374 10.772 7.8385 10.792 7.8385C10.812 7.8385 10.8317 7.83374 10.8496 7.8246C11.6778 7.59688 12.5286 7.46091 13.3865 7.41912C14.0427 7.38534 14.7004 7.40366 15.3537 7.47392C15.968 7.54235 16.5762 7.65775 17.1728 7.81912C17.1941 7.82974 17.2176 7.83526 17.2413 7.83526C17.2651 7.83526 17.2886 7.82974 17.3098 7.81912C17.655 7.60542 18.0002 7.38625 18.3619 7.18899C18.873 6.89325 19.4279 6.68056 20.0057 6.55885C20.2481 6.50219 20.4985 6.4892 20.7454 6.52049C20.7613 6.524 20.7762 6.53067 20.7894 6.54008C20.8026 6.54949 20.8137 6.56147 20.8222 6.57529C21.0225 7.08332 21.1426 7.6194 21.1783 8.16433C21.2206 8.73995 21.1441 9.31811 20.9537 9.86296C20.9423 9.88964 20.9394 9.91915 20.9453 9.94755C20.9511 9.97594 20.9655 10.0019 20.9865 10.0219C21.7797 10.9028 22.2256 12.042 22.2413 13.2273C22.2413 13.6054 22.2413 13.989 22.203 14.3725C22.1642 14.9462 22.0556 15.5129 21.8797 16.0602C21.6891 16.6923 21.3704 17.2783 20.9433 17.7817C20.5162 18.2852 19.99 18.6952 19.3975 18.9862C18.5617 19.3759 17.6676 19.6258 16.7509 19.726L16.3674 19.7753L16.4002 19.8136C16.5676 19.9714 16.7066 20.1567 16.8112 20.3616C17.0895 20.8642 17.2311 21.431 17.2222 22.0054C17.2222 22.8821 17.2222 26.3068 17.2222 27.6493C20.5872 26.8821 23.5502 24.8989 25.5424 22.0806C27.5346 19.2622 28.4156 15.8073 28.0161 12.3791C27.6166 8.9509 25.9649 5.7911 23.378 3.50632C20.7912 1.22155 17.4515 -0.027159 14.0002 -5.61702e-05Z\"\n fill=\"#232323\"\n ></path>\n </g>\n <defs>\n <clipPath id=\"clip0_1831_1607\">\n <rect width=\"28\" height=\"28\" fill=\"currentColor\"></rect>\n </clipPath>\n </defs>\n </svg>\n)\n\nexport const RSSIcon = () => (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n >\n <g clipPath=\"url(#clip0_132_223787)\">\n <path\n d=\"M12 0C9.62663 0 7.30655 0.703788 5.33316 2.02236C3.35977 3.34094 1.8217 5.21509 0.913451 7.4078C0.00519939 9.60051 -0.232441 12.0133 0.230582 14.3411C0.693605 16.6689 1.83649 18.8071 3.51472 20.4853C5.19295 22.1635 7.33115 23.3064 9.65892 23.7694C11.9867 24.2324 14.3995 23.9948 16.5922 23.0866C18.7849 22.1783 20.6591 20.6402 21.9776 18.6668C23.2962 16.6935 24 14.3734 24 12C24 8.8174 22.7357 5.76516 20.4853 3.51472C18.2348 1.26428 15.1826 0 12 0V0ZM9.23367 17.6078C8.91865 17.8989 8.52428 18.0898 8.1006 18.1564C7.67691 18.223 7.24298 18.1623 6.85385 17.982C6.46473 17.8016 6.13793 17.5097 5.91491 17.1434C5.6919 16.777 5.58271 16.3527 5.60119 15.9242C5.61968 15.4957 5.76501 15.0824 6.01875 14.7366C6.27249 14.3908 6.62321 14.1282 7.02642 13.982C7.42964 13.8358 7.86718 13.8127 8.28356 13.9155C8.69994 14.0184 9.07639 14.2426 9.36517 14.5597C9.74769 14.9833 9.94829 15.5404 9.92369 16.1107C9.89909 16.681 9.65125 17.2187 9.23367 17.6078ZM15.0669 17.0583C15.0094 17.3724 14.8415 17.6555 14.5935 17.8566C14.3455 18.0577 14.0338 18.1636 13.7147 18.1551C13.3955 18.1466 13.0899 18.0243 12.853 17.8102C12.6161 17.5962 12.4635 17.3045 12.4227 16.9879C12.3898 16.598 12.4227 16.2082 12.3898 15.8137C12.3727 15.213 12.2277 14.6229 11.9645 14.0827C11.7013 13.5426 11.3259 13.0647 10.8634 12.681C10.0812 12.0038 9.07998 11.6334 8.04541 11.6384C7.72603 11.6384 7.40666 11.6384 7.10607 11.6384C6.8654 11.6393 6.62883 11.576 6.42077 11.4551C6.21271 11.3341 6.04069 11.1598 5.92247 10.9502C5.80425 10.7405 5.7441 10.5031 5.74824 10.2625C5.75237 10.0218 5.82064 9.78667 5.94599 9.58121C6.0551 9.38458 6.21418 9.22023 6.40716 9.10478C6.60013 8.98932 6.82016 8.92685 7.04502 8.92368C8.06353 8.86824 9.08439 8.97445 10.0697 9.23836C11.2122 9.58402 12.2481 10.2143 13.0802 11.0701C13.9599 11.9637 14.5815 13.0786 14.8791 14.2967C15.1074 15.1984 15.1711 16.134 15.0669 17.0583ZM19.6039 16.908C19.599 17.1916 19.4962 17.4647 19.3131 17.6812C19.1299 17.8978 18.8776 18.0444 18.5988 18.0963C18.3257 18.1503 18.0424 18.1083 17.7967 17.9773C17.5511 17.8464 17.3582 17.6345 17.2509 17.3777C17.1689 17.1718 17.1305 16.9511 17.1382 16.7295C17.1826 15.7639 17.0941 14.7967 16.8752 13.8552C16.3913 11.8504 15.2444 10.068 13.6204 8.79687C12.0015 7.48595 9.98288 6.76832 7.89981 6.76321H7.0685C6.83806 6.77392 6.6092 6.72014 6.40766 6.60791C6.20612 6.49567 6.03988 6.32944 5.92764 6.1279C5.8154 5.92636 5.76162 5.6975 5.77233 5.46706C5.78303 5.23663 5.85782 5.01375 5.98826 4.82348C6.00046 4.80288 6.00993 4.78077 6.01644 4.75773L6.27476 4.50411C6.616 4.32283 7.0036 4.2476 7.38787 4.28806C8.7413 4.26792 10.0897 4.45805 11.3847 4.85166C13.2873 5.45412 15.0067 6.52787 16.3829 7.9731C17.7591 9.41832 18.7476 11.1881 19.2564 13.1178C19.5711 14.355 19.6884 15.6342 19.6039 16.908Z\"\n fill=\"currentColor\"\n />\n </g>\n <defs>\n <clipPath id=\"clip0_132_223787\">\n <rect width=\"24\" height=\"24\" fill=\"currentColor\" />\n </clipPath>\n </defs>\n </svg>\n)\n\nexport const HamburgerIconSmall = () => (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n >\n <path\n d=\"M3 5.5C3 4.80964 3.55964 4.25 4.25 4.25H19.75C20.4404 4.25 21 4.80964 21 5.5C21 6.19036 20.4404 6.75 19.75 6.75H4.25C3.55964 6.75 3 6.19036 3 5.5Z\"\n fill=\"var(--color-blue-400)\"\n />\n <path\n d=\"M3 12C3 11.3096 3.55964 10.75 4.25 10.75H19.75C20.4404 10.75 21 11.3096 21 12C21 12.6904 20.4404 13.25 19.75 13.25H4.25C3.55964 13.25 3 12.6904 3 12Z\"\n fill=\"var(--color-red-400)\"\n />\n <path\n d=\"M3 18.5C3 17.8096 3.55964 17.25 4.25 17.25H19.75C20.4404 17.25 21 17.8096 21 18.5C21 19.1904 20.4404 19.75 19.75 19.75H4.25C3.55964 19.75 3 19.1904 3 18.5Z\"\n fill=\"var(--color-yellow-400)\"\n />\n </svg>\n)\n\nexport const ArrowIcon = () => {\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"10\"\n height=\"17\"\n viewBox=\"0 0 10 17\"\n fill=\"none\"\n >\n <path\n d=\"M8.25 15.25L1.25 8.25L8.25 1.25\"\n stroke=\"currentColor\"\n strokeWidth=\"2.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n )\n}\n"],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -2,6 +2,8 @@ export * from './components';
2
2
  export { default as Footer } from './footer';
3
3
  export { default as Header } from './header';
4
4
  export { HeaderProvider } from './header/header-context';
5
+ export { default as HeaderIsLoggedInSetter } from './header/is-logged-in-setter';
6
+ export { default as HeaderMobileBackButtonHrefSetter } from './header/mobile-back-button-href-setter';
5
7
  export { default as HeaderPostTitleSetter } from './header/post-title-setter';
6
8
  export * from './hooks';
7
9
  export * from './icons';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,UAAU,CAAA;AAC5C,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,UAAU,CAAA;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AACxD,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AAC7E,cAAc,SAAS,CAAA;AACvB,cAAc,SAAS,CAAA;AACvB,cAAc,SAAS,CAAA;AACvB,cAAc,SAAS,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,UAAU,CAAA;AAC5C,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,UAAU,CAAA;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AACxD,OAAO,EAAE,OAAO,IAAI,sBAAsB,EAAE,MAAM,8BAA8B,CAAA;AAChF,OAAO,EAAE,OAAO,IAAI,gCAAgC,EAAE,MAAM,yCAAyC,CAAA;AACrG,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AAC7E,cAAc,SAAS,CAAA;AACvB,cAAc,SAAS,CAAA;AACvB,cAAc,SAAS,CAAA;AACvB,cAAc,SAAS,CAAA"}
package/dist/index.js CHANGED
@@ -8,6 +8,8 @@ var _exportNames = {
8
8
  Footer: true,
9
9
  Header: true,
10
10
  HeaderProvider: true,
11
+ HeaderIsLoggedInSetter: true,
12
+ HeaderMobileBackButtonHrefSetter: true,
11
13
  HeaderPostTitleSetter: true
12
14
  };
13
15
  Object.defineProperty(exports, "Footer", {
@@ -22,6 +24,18 @@ Object.defineProperty(exports, "Header", {
22
24
  return _header.default;
23
25
  }
24
26
  });
27
+ Object.defineProperty(exports, "HeaderIsLoggedInSetter", {
28
+ enumerable: true,
29
+ get: function () {
30
+ return _isLoggedInSetter.default;
31
+ }
32
+ });
33
+ Object.defineProperty(exports, "HeaderMobileBackButtonHrefSetter", {
34
+ enumerable: true,
35
+ get: function () {
36
+ return _mobileBackButtonHrefSetter.default;
37
+ }
38
+ });
25
39
  Object.defineProperty(exports, "HeaderPostTitleSetter", {
26
40
  enumerable: true,
27
41
  get: function () {
@@ -49,6 +63,8 @@ Object.keys(_components).forEach(function (key) {
49
63
  var _footer = _interopRequireDefault(require("./footer"));
50
64
  var _header = _interopRequireDefault(require("./header"));
51
65
  var _headerContext = require("./header/header-context");
66
+ var _isLoggedInSetter = _interopRequireDefault(require("./header/is-logged-in-setter"));
67
+ var _mobileBackButtonHrefSetter = _interopRequireDefault(require("./header/mobile-back-button-href-setter"));
52
68
  var _postTitleSetter = _interopRequireDefault(require("./header/post-title-setter"));
53
69
  var _hooks = require("./hooks");
54
70
  Object.keys(_hooks).forEach(function (key) {
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_components","require","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_footer","_interopRequireDefault","_header","_headerContext","_postTitleSetter","_hooks","_icons","_types","_utils"],"sources":["../src/index.ts"],"sourcesContent":["export * from './components'\nexport { default as Footer } from './footer'\nexport { default as Header } from './header'\nexport { HeaderProvider } from './header/header-context'\nexport { default as HeaderPostTitleSetter } from './header/post-title-setter'\nexport * from './hooks'\nexport * from './icons'\nexport * from './types'\nexport * from './utils'\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["_components","require","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_footer","_interopRequireDefault","_header","_headerContext","_isLoggedInSetter","_mobileBackButtonHrefSetter","_postTitleSetter","_hooks","_icons","_types","_utils"],"sources":["../src/index.ts"],"sourcesContent":["export * from './components'\nexport { default as Footer } from './footer'\nexport { default as Header } from './header'\nexport { HeaderProvider } from './header/header-context'\nexport { default as HeaderIsLoggedInSetter } from './header/is-logged-in-setter'\nexport { default as HeaderMobileBackButtonHrefSetter } from './header/mobile-back-button-href-setter'\nexport { default as HeaderPostTitleSetter } from './header/post-title-setter'\nexport * from './hooks'\nexport * from './icons'\nexport * from './types'\nexport * from './utils'\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,WAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,WAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAL,WAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAb,WAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAS,OAAA,GAAAC,sBAAA,CAAAd,OAAA;AACA,IAAAe,OAAA,GAAAD,sBAAA,CAAAd,OAAA;AACA,IAAAgB,cAAA,GAAAhB,OAAA;AACA,IAAAiB,iBAAA,GAAAH,sBAAA,CAAAd,OAAA;AACA,IAAAkB,2BAAA,GAAAJ,sBAAA,CAAAd,OAAA;AACA,IAAAmB,gBAAA,GAAAL,sBAAA,CAAAd,OAAA;AACA,IAAAoB,MAAA,GAAApB,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAkB,MAAA,EAAAjB,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAgB,MAAA,CAAAhB,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAQ,MAAA,CAAAhB,GAAA;IAAA;EAAA;AAAA;AACA,IAAAiB,MAAA,GAAArB,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAmB,MAAA,EAAAlB,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAiB,MAAA,CAAAjB,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAS,MAAA,CAAAjB,GAAA;IAAA;EAAA;AAAA;AACA,IAAAkB,MAAA,GAAAtB,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAoB,MAAA,EAAAnB,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAkB,MAAA,CAAAlB,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAU,MAAA,CAAAlB,GAAA;IAAA;EAAA;AAAA;AACA,IAAAmB,MAAA,GAAAvB,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAqB,MAAA,EAAApB,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAmB,MAAA,CAAAnB,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAW,MAAA,CAAAnB,GAAA;IAAA;EAAA;AAAA"}
package/dist/styles.css CHANGED
@@ -44,9 +44,11 @@
44
44
  --color-yellow-700: #926c10;
45
45
  --color-yellow-800: #705207;
46
46
 
47
+ /* Colors - Semantic Danger */
48
+ --color-semantic-danger: #c7000a;
49
+
47
50
  /* Typography - Font Families */
48
51
  --font-family-noto: 'Noto Sans TC', sans-serif;
49
- --font-family-swei: 'SweiMarkerSansCJKtc-Regular', sans-serif;
50
52
 
51
53
  /* Typography - Font Sizes */
52
54
  --font-size-h1-large: 48px;
@@ -150,6 +152,14 @@
150
152
  --paletteColor8: var(--color-neutral-white);
151
153
  --color: var(--paletteColor3);
152
154
  }
155
+
156
+ ::selection {
157
+ background-color: var(--color-neutral-400);
158
+ }
159
+
160
+ ::-moz-selection {
161
+ background-color: var(--color-neutral-400);
162
+ }
153
163
  }
154
164
 
155
165
  @layer utilities {
@@ -321,11 +331,6 @@
321
331
  letter-spacing: 0.5px;
322
332
  }
323
333
 
324
- /* Swei Marker Sans Font Variants */
325
- @utility font-swei {
326
- font-family: var(--font-family-swei);
327
- }
328
-
329
334
  @utility scrollbar-thin {
330
335
  scrollbar-width: thin;
331
336
  scrollbar-color: var(--color-neutral-300) transparent;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@kids-reporter/routing-ui",
3
3
  "license": "MIT",
4
- "version": "0.1.0-alpha.6",
4
+ "version": "0.1.0-alpha.7",
5
5
  "description": "Routing UI for Kids Reporter",
6
6
  "main": "./dist/index.js",
7
7
  "module": "./dist/index.js",
@@ -25,7 +25,6 @@
25
25
  "class-variance-authority": "^0.7.1",
26
26
  "clsx": "^2.1.1",
27
27
  "lodash": "^4.17.21",
28
- "next": "^14.2.33",
29
28
  "tailwind-merge": "^3.3.1"
30
29
  },
31
30
  "devDependencies": {