@twreporter/react-typescript-components 0.1.0-beta.5 → 0.1.0-beta.6

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 (166) hide show
  1. package/README.md +11 -1
  2. package/lib/button/components/text-button/index.d.mts +24 -0
  3. package/lib/button/components/text-button/index.d.ts +24 -0
  4. package/lib/button/components/text-button/index.js +156 -0
  5. package/lib/button/components/text-button/index.js.map +1 -0
  6. package/lib/button/components/text-button/index.mjs +7 -0
  7. package/lib/button/components/text-button/index.mjs.map +1 -0
  8. package/lib/button/constant.d.mts +11 -0
  9. package/lib/button/constant.d.ts +11 -0
  10. package/lib/button/constant.js +13 -0
  11. package/lib/button/constant.js.map +1 -0
  12. package/lib/button/constant.mjs +3 -0
  13. package/lib/button/constant.mjs.map +1 -0
  14. package/lib/button/enum.d.mts +11 -0
  15. package/lib/button/enum.d.ts +11 -0
  16. package/lib/button/enum.js +19 -0
  17. package/lib/button/enum.js.map +1 -0
  18. package/lib/button/enum.mjs +3 -0
  19. package/lib/button/enum.mjs.map +1 -0
  20. package/lib/button/index.d.mts +26 -0
  21. package/lib/button/index.d.ts +26 -0
  22. package/lib/button/index.js +162 -0
  23. package/lib/button/index.js.map +1 -0
  24. package/lib/button/index.mjs +8 -0
  25. package/lib/button/index.mjs.map +1 -0
  26. package/lib/button/stories/text-button.stories.d.mts +55 -0
  27. package/lib/button/stories/text-button.stories.d.ts +55 -0
  28. package/lib/button/stories/text-button.stories.js +206 -0
  29. package/lib/button/stories/text-button.stories.js.map +1 -0
  30. package/lib/button/stories/text-button.stories.mjs +34 -0
  31. package/lib/button/stories/text-button.stories.mjs.map +1 -0
  32. package/lib/{chunk-3B7LTZRJ.mjs → chunk-6DXA3EX7.mjs} +8 -6
  33. package/lib/chunk-6DXA3EX7.mjs.map +1 -0
  34. package/lib/chunk-7DK5MO62.mjs +8 -0
  35. package/lib/chunk-7DK5MO62.mjs.map +1 -0
  36. package/lib/chunk-CZVB2Y6O.mjs +27 -0
  37. package/lib/chunk-CZVB2Y6O.mjs.map +1 -0
  38. package/lib/chunk-GQWO45DN.mjs +32 -0
  39. package/lib/chunk-GQWO45DN.mjs.map +1 -0
  40. package/lib/chunk-GRCEZABQ.mjs +38 -0
  41. package/lib/chunk-GRCEZABQ.mjs.map +1 -0
  42. package/lib/chunk-JB4TYHDE.mjs +11 -0
  43. package/lib/chunk-JB4TYHDE.mjs.map +1 -0
  44. package/lib/chunk-JFT6JILC.mjs +12 -0
  45. package/lib/chunk-JFT6JILC.mjs.map +1 -0
  46. package/lib/chunk-QE5LVT7A.mjs +90 -0
  47. package/lib/chunk-QE5LVT7A.mjs.map +1 -0
  48. package/lib/chunk-QOLETTSG.mjs +28 -0
  49. package/lib/chunk-QOLETTSG.mjs.map +1 -0
  50. package/lib/chunk-R4F4LGAY.mjs +56 -0
  51. package/lib/chunk-R4F4LGAY.mjs.map +1 -0
  52. package/lib/chunk-URJXIWFX.mjs +16 -0
  53. package/lib/chunk-URJXIWFX.mjs.map +1 -0
  54. package/lib/chunk-X2UWIBNH.mjs +16 -0
  55. package/lib/chunk-X2UWIBNH.mjs.map +1 -0
  56. package/lib/chunk-XO7SDD7W.mjs +17 -0
  57. package/lib/chunk-XO7SDD7W.mjs.map +1 -0
  58. package/lib/customized-link/external-link.d.mts +7 -0
  59. package/lib/customized-link/external-link.d.ts +7 -0
  60. package/lib/customized-link/external-link.js +18 -0
  61. package/lib/customized-link/external-link.js.map +1 -0
  62. package/lib/customized-link/external-link.mjs +3 -0
  63. package/lib/customized-link/external-link.mjs.map +1 -0
  64. package/lib/customized-link/index.d.mts +11 -0
  65. package/lib/customized-link/index.d.ts +11 -0
  66. package/lib/customized-link/index.js +42 -0
  67. package/lib/customized-link/index.js.map +1 -0
  68. package/lib/customized-link/index.mjs +5 -0
  69. package/lib/customized-link/index.mjs.map +1 -0
  70. package/lib/customized-link/internal-link.d.mts +7 -0
  71. package/lib/customized-link/internal-link.d.ts +7 -0
  72. package/lib/customized-link/internal-link.js +22 -0
  73. package/lib/customized-link/internal-link.js.map +1 -0
  74. package/lib/customized-link/internal-link.mjs +3 -0
  75. package/lib/customized-link/internal-link.mjs.map +1 -0
  76. package/lib/customized-link/type.d.mts +9 -0
  77. package/lib/customized-link/type.d.ts +9 -0
  78. package/lib/customized-link/type.js +4 -0
  79. package/lib/customized-link/type.js.map +1 -0
  80. package/lib/customized-link/type.mjs +3 -0
  81. package/lib/customized-link/type.mjs.map +1 -0
  82. package/lib/storybook/utils/get-enum-arg.d.mts +19 -0
  83. package/lib/storybook/utils/get-enum-arg.d.ts +19 -0
  84. package/lib/storybook/utils/get-enum-arg.js +31 -0
  85. package/lib/storybook/utils/get-enum-arg.js.map +1 -0
  86. package/lib/storybook/utils/get-enum-arg.mjs +3 -0
  87. package/lib/storybook/utils/get-enum-arg.mjs.map +1 -0
  88. package/lib/styles.css +178 -2
  89. package/lib/styles.css.map +1 -1
  90. package/lib/text/heading.d.mts +8 -8
  91. package/lib/text/heading.d.ts +8 -8
  92. package/lib/text/paragraph.d.mts +6 -6
  93. package/lib/text/paragraph.d.ts +6 -6
  94. package/lib/text/stories/heading.stories.d.mts +35 -0
  95. package/lib/text/stories/heading.stories.d.ts +35 -0
  96. package/lib/text/stories/heading.stories.js +131 -0
  97. package/lib/text/stories/heading.stories.js.map +1 -0
  98. package/lib/text/stories/heading.stories.mjs +50 -0
  99. package/lib/text/stories/heading.stories.mjs.map +1 -0
  100. package/lib/text/stories/paragraph.stories.d.mts +33 -0
  101. package/lib/text/stories/paragraph.stories.d.ts +33 -0
  102. package/lib/text/stories/paragraph.stories.js +108 -0
  103. package/lib/text/stories/paragraph.stories.js.map +1 -0
  104. package/lib/text/stories/paragraph.stories.mjs +40 -0
  105. package/lib/text/stories/paragraph.stories.mjs.map +1 -0
  106. package/lib/title-bar/components/title-tab/hook.d.mts +5 -0
  107. package/lib/title-bar/components/title-tab/hook.d.ts +5 -0
  108. package/lib/title-bar/components/title-tab/hook.js +34 -0
  109. package/lib/title-bar/components/title-tab/hook.js.map +1 -0
  110. package/lib/title-bar/components/title-tab/hook.mjs +3 -0
  111. package/lib/title-bar/components/title-tab/hook.mjs.map +1 -0
  112. package/lib/title-bar/components/title-tab/index.d.mts +11 -0
  113. package/lib/title-bar/components/title-tab/index.d.ts +11 -0
  114. package/lib/title-bar/components/title-tab/index.js +321 -0
  115. package/lib/title-bar/components/title-tab/index.js.map +1 -0
  116. package/lib/title-bar/components/title-tab/index.mjs +15 -0
  117. package/lib/title-bar/components/title-tab/index.mjs.map +1 -0
  118. package/lib/title-bar/components/title-tab/tab-item.d.mts +10 -0
  119. package/lib/title-bar/components/title-tab/tab-item.d.ts +10 -0
  120. package/lib/title-bar/components/title-tab/tab-item.js +204 -0
  121. package/lib/title-bar/components/title-tab/tab-item.js.map +1 -0
  122. package/lib/title-bar/components/title-tab/tab-item.mjs +12 -0
  123. package/lib/title-bar/components/title-tab/tab-item.mjs.map +1 -0
  124. package/lib/title-bar/components/title-tab/type.d.mts +8 -0
  125. package/lib/title-bar/components/title-tab/type.d.ts +8 -0
  126. package/lib/title-bar/components/title-tab/type.js +4 -0
  127. package/lib/title-bar/components/title-tab/type.js.map +1 -0
  128. package/lib/title-bar/components/title-tab/type.mjs +3 -0
  129. package/lib/title-bar/components/title-tab/type.mjs.map +1 -0
  130. package/lib/title-bar/components/title1.d.mts +10 -0
  131. package/lib/title-bar/components/title1.d.ts +10 -0
  132. package/lib/title-bar/components/title1.js +123 -0
  133. package/lib/title-bar/components/title1.js.map +1 -0
  134. package/lib/title-bar/components/title1.mjs +6 -0
  135. package/lib/title-bar/components/title1.mjs.map +1 -0
  136. package/lib/title-bar/components/title2.d.mts +3 -3
  137. package/lib/title-bar/components/title2.d.ts +3 -3
  138. package/lib/title-bar/components/title2.js +6 -4
  139. package/lib/title-bar/components/title2.js.map +1 -1
  140. package/lib/title-bar/components/title2.mjs +1 -1
  141. package/lib/title-bar/index.d.mts +15 -2
  142. package/lib/title-bar/index.d.ts +15 -2
  143. package/lib/title-bar/index.js +250 -8
  144. package/lib/title-bar/index.js.map +1 -1
  145. package/lib/title-bar/index.mjs +18 -3
  146. package/lib/title-bar/index.mjs.map +1 -1
  147. package/lib/title-bar/stories/title-tab.stories.d.mts +17 -0
  148. package/lib/title-bar/stories/title-tab.stories.d.ts +17 -0
  149. package/lib/title-bar/stories/title-tab.stories.js +345 -0
  150. package/lib/title-bar/stories/title-tab.stories.js.map +1 -0
  151. package/lib/title-bar/stories/title-tab.stories.mjs +38 -0
  152. package/lib/title-bar/stories/title-tab.stories.mjs.map +1 -0
  153. package/lib/title-bar/stories/title1.stories.d.mts +18 -0
  154. package/lib/title-bar/stories/title1.stories.d.ts +18 -0
  155. package/lib/title-bar/stories/title1.stories.js +155 -0
  156. package/lib/title-bar/stories/title1.stories.js.map +1 -0
  157. package/lib/title-bar/stories/title1.stories.mjs +35 -0
  158. package/lib/title-bar/stories/title1.stories.mjs.map +1 -0
  159. package/lib/title-bar/stories/title2.stories.d.mts +18 -0
  160. package/lib/title-bar/stories/title2.stories.d.ts +18 -0
  161. package/lib/title-bar/stories/title2.stories.js +258 -0
  162. package/lib/title-bar/stories/title2.stories.js.map +1 -0
  163. package/lib/title-bar/stories/title2.stories.mjs +37 -0
  164. package/lib/title-bar/stories/title2.stories.mjs.map +1 -0
  165. package/package.json +12 -5
  166. package/lib/chunk-3B7LTZRJ.mjs.map +0 -1
@@ -0,0 +1,90 @@
1
+ import { P2, P1 } from './chunk-HQG6Q2EY.mjs';
2
+ import { THEME } from './chunk-JB4TYHDE.mjs';
3
+ import { Size, Style } from './chunk-URJXIWFX.mjs';
4
+ import { useMemo } from 'react';
5
+ import clsx from 'clsx';
6
+ import { jsx, jsxs } from 'react/jsx-runtime';
7
+
8
+ var TextButton = ({
9
+ text,
10
+ leftIconComponent,
11
+ rightIconComponent,
12
+ size = 0 /* S */,
13
+ theme = THEME.normal,
14
+ style = 1 /* DARK */,
15
+ active = false,
16
+ disabled = false,
17
+ loading = false,
18
+ className = ""
19
+ }) => {
20
+ const TextJSX = useMemo(
21
+ () => size === 0 /* S */ ? /* @__PURE__ */ jsx(P2, { text }) : /* @__PURE__ */ jsx(P1, { text }),
22
+ [size, text]
23
+ );
24
+ return /* @__PURE__ */ jsx(
25
+ "div",
26
+ {
27
+ className: clsx(
28
+ "flex items-center",
29
+ {
30
+ "cursor-default": disabled,
31
+ "cursor-pointer": !disabled
32
+ },
33
+ {
34
+ "text-gray-500 hover:text-gray-500": disabled && (theme === THEME.photography || theme === THEME.transparent),
35
+ "text-gray-400 hover:text-gray-400": disabled || theme === THEME.photography && style === 2 /* LIGHT */ && !active && !disabled,
36
+ "text-gray-200 hover:text-supportive-pastel": theme === THEME.photography && !active && !disabled,
37
+ "text-gray-300 hover:text-gray-400": theme === THEME.photography && style === 2 /* LIGHT */ && active && !disabled,
38
+ "text-gray-white hover:text-supportive-pastel": theme === THEME.photography && style === 1 /* DARK */ && active && !disabled,
39
+ "text-supportive-faded hover:text-supportive-pastel": theme === THEME.photography && style === 0 /* BRAND */ && active && !disabled,
40
+ "text-gray-100 hover:text-gray-200": theme === THEME.transparent && !active && !disabled,
41
+ "text-gray-white hover:text-gray-white": theme === THEME.transparent && active && !disabled,
42
+ "text-gray-600 hover:text-brand-heavy": theme === THEME.normal && !active && !disabled,
43
+ "text-brand-heavy hover:text-brand-heavy": theme === THEME.normal && active && !disabled
44
+ },
45
+ className
46
+ ),
47
+ children: /* @__PURE__ */ jsxs("div", { className: "relative flex justify-center items-center", children: [
48
+ /* @__PURE__ */ jsxs(
49
+ "div",
50
+ {
51
+ className: clsx("flex justify-center items-center", {
52
+ "opacity-0": loading,
53
+ "opacity-100": !loading
54
+ }),
55
+ children: [
56
+ /* @__PURE__ */ jsx("div", { className: "flex items-center mr-[4px]", children: leftIconComponent }),
57
+ TextJSX,
58
+ /* @__PURE__ */ jsx("div", { className: "flex items-center ml-[4px]", children: rightIconComponent })
59
+ ]
60
+ }
61
+ ),
62
+ /* @__PURE__ */ jsx(
63
+ "span",
64
+ {
65
+ className: clsx(
66
+ "inline-block absolute box-border animation-spin",
67
+ "border-2 border-solid border-gray-400 border-t-gray-600 rounded-[50%]",
68
+ {
69
+ "size-[18px]": size === 0 /* S */,
70
+ "size-[24px]": size === 1 /* L */
71
+ },
72
+ {
73
+ "opacity-0": !loading,
74
+ "opacity-100": loading
75
+ }
76
+ )
77
+ }
78
+ )
79
+ ] })
80
+ }
81
+ );
82
+ };
83
+ TextButton.Size = Size;
84
+ TextButton.Style = Style;
85
+ TextButton.THEME = THEME;
86
+ var text_button_default = TextButton;
87
+
88
+ export { text_button_default };
89
+ //# sourceMappingURL=chunk-QE5LVT7A.mjs.map
90
+ //# sourceMappingURL=chunk-QE5LVT7A.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/button/components/text-button/index.tsx"],"names":[],"mappings":"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","file":"chunk-QE5LVT7A.mjs","sourcesContent":["import { type FC, type ReactElement, useMemo } from 'react'\nimport clsx from 'clsx'\n// components\nimport { P1, P2 } from '../../../text/paragraph'\n// enums\nimport { Size, Style } from '../../enum'\n// type\nimport type { Theme } from '../../constant'\n// constants\nimport { THEME } from '../../constant'\n\ntype TextButtonProps = {\n text: string\n leftIconComponent?: ReactElement\n rightIconComponent?: ReactElement\n size?: Size\n style?: Style\n theme?: Theme\n active?: boolean\n disabled?: boolean\n loading?: boolean\n className?: string\n}\nconst TextButton: FC<TextButtonProps> & {\n Size: typeof Size\n Style: typeof Style\n THEME: typeof THEME\n} = ({\n text,\n leftIconComponent,\n rightIconComponent,\n size = Size.S,\n theme = THEME.normal,\n style = Style.DARK,\n active = false,\n disabled = false,\n loading = false,\n className = '',\n}) => {\n const TextJSX = useMemo(\n () => (size === Size.S ? <P2 text={text} /> : <P1 text={text} />),\n [size, text]\n )\n\n return (\n <div\n className={clsx(\n 'flex items-center',\n {\n 'cursor-default': disabled,\n 'cursor-pointer': !disabled,\n },\n {\n 'text-gray-500 hover:text-gray-500':\n disabled &&\n (theme === THEME.photography || theme === THEME.transparent),\n 'text-gray-400 hover:text-gray-400':\n disabled ||\n (theme === THEME.photography &&\n style === Style.LIGHT &&\n !active &&\n !disabled),\n 'text-gray-200 hover:text-supportive-pastel':\n theme === THEME.photography && !active && !disabled,\n 'text-gray-300 hover:text-gray-400':\n theme === THEME.photography &&\n style === Style.LIGHT &&\n active &&\n !disabled,\n 'text-gray-white hover:text-supportive-pastel':\n theme === THEME.photography &&\n style === Style.DARK &&\n active &&\n !disabled,\n 'text-supportive-faded hover:text-supportive-pastel':\n theme === THEME.photography &&\n style === Style.BRAND &&\n active &&\n !disabled,\n 'text-gray-100 hover:text-gray-200':\n theme === THEME.transparent && !active && !disabled,\n 'text-gray-white hover:text-gray-white':\n theme === THEME.transparent && active && !disabled,\n 'text-gray-600 hover:text-brand-heavy':\n theme === THEME.normal && !active && !disabled,\n 'text-brand-heavy hover:text-brand-heavy':\n theme === THEME.normal && active && !disabled,\n },\n className\n )}\n >\n <div className=\"relative flex justify-center items-center\">\n <div\n className={clsx('flex justify-center items-center', {\n 'opacity-0': loading,\n 'opacity-100': !loading,\n })}\n >\n <div className=\"flex items-center mr-[4px]\">{leftIconComponent}</div>\n {TextJSX}\n <div className=\"flex items-center ml-[4px]\">{rightIconComponent}</div>\n </div>\n <span\n className={clsx(\n 'inline-block absolute box-border animation-spin',\n 'border-2 border-solid border-gray-400 border-t-gray-600 rounded-[50%]',\n {\n 'size-[18px]': size === Size.S,\n 'size-[24px]': size === Size.L,\n },\n {\n 'opacity-0': !loading,\n 'opacity-100': loading,\n }\n )}\n />\n </div>\n </div>\n )\n}\nTextButton.Size = Size\nTextButton.Style = Style\nTextButton.THEME = THEME\n\nexport default TextButton\n"]}
@@ -0,0 +1,28 @@
1
+ // src/storybook/utils/get-enum-arg.ts
2
+ function getRadioArgFromObject(object, defaultValue) {
3
+ return {
4
+ defaultValue,
5
+ options: Object.values(object),
6
+ control: { type: "radio" }
7
+ };
8
+ }
9
+ function getRadioArgFromEnum(enumObject, defaultValue) {
10
+ const keys = Object.keys(enumObject).filter(
11
+ (key) => Number.isNaN(Number(key))
12
+ );
13
+ const mapping = {};
14
+ keys.forEach((key) => {
15
+ mapping[key] = enumObject[key];
16
+ });
17
+ const defaultKey = keys.find((key) => enumObject[key] === defaultValue) || keys[0];
18
+ return {
19
+ defaultValue: enumObject[defaultKey],
20
+ options: keys,
21
+ mapping,
22
+ control: { type: "radio" }
23
+ };
24
+ }
25
+
26
+ export { getRadioArgFromEnum, getRadioArgFromObject };
27
+ //# sourceMappingURL=chunk-QOLETTSG.mjs.map
28
+ //# sourceMappingURL=chunk-QOLETTSG.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/storybook/utils/get-enum-arg.ts"],"names":[],"mappings":";AAMO,SAAS,qBAAA,CACd,QACA,YAAA,EACmB;AACnB,EAAA,OAAO;AAAA,IACL,YAAA;AAAA,IACA,OAAA,EAAS,MAAA,CAAO,MAAA,CAAO,MAAM,CAAA;AAAA,IAC7B,OAAA,EAAS,EAAE,IAAA,EAAM,OAAA;AAAQ,GAC3B;AACF;AASO,SAAS,mBAAA,CACd,YACA,YAAA,EAC0B;AAE1B,EAAA,MAAM,IAAA,GAAO,MAAA,CAAO,IAAA,CAAK,UAAU,CAAA,CAAE,MAAA;AAAA,IAAO,CAAC,GAAA,KAC3C,MAAA,CAAO,KAAA,CAAM,MAAA,CAAO,GAAG,CAAC;AAAA,GAC1B;AAEA,EAAA,MAAM,UAAsC,EAAC;AAC7C,EAAA,IAAA,CAAK,OAAA,CAAQ,CAAC,GAAA,KAAQ;AACpB,IAAA,OAAA,CAAQ,GAAG,CAAA,GAAI,UAAA,CAAW,GAAc,CAAA;AAAA,EAC1C,CAAC,CAAA;AAGD,EAAA,MAAM,UAAA,GACJ,IAAA,CAAK,IAAA,CAAK,CAAC,GAAA,KAAQ,UAAA,CAAW,GAAc,CAAA,KAAM,YAAY,CAAA,IAAK,IAAA,CAAK,CAAC,CAAA;AAE3E,EAAA,OAAO;AAAA,IACL,YAAA,EAAc,WAAW,UAAqB,CAAA;AAAA,IAC9C,OAAA,EAAS,IAAA;AAAA,IACT,OAAA;AAAA,IACA,OAAA,EAAS,EAAE,IAAA,EAAM,OAAA;AAAQ,GAC3B;AACF","file":"chunk-QOLETTSG.mjs","sourcesContent":["type RadioArgObject<T> = {\n defaultValue: T\n options: T[]\n control: { type: 'radio' }\n}\n\nexport function getRadioArgFromObject<T extends string | number>(\n object: Record<string, T>,\n defaultValue: T\n): RadioArgObject<T> {\n return {\n defaultValue,\n options: Object.values(object),\n control: { type: 'radio' },\n }\n}\n\ntype RadioArgEnum<E> = {\n defaultValue: E\n options: string[]\n mapping: Record<string, E>\n control: { type: 'radio' }\n}\n\nexport function getRadioArgFromEnum<E extends Record<string, string | number>>(\n enumObject: E,\n defaultValue: E[keyof E]\n): RadioArgEnum<E[keyof E]> {\n // Only keep \"real\" keys (filter numeric reverse mapping)\n const keys = Object.keys(enumObject).filter((key) =>\n Number.isNaN(Number(key))\n )\n\n const mapping: Record<string, E[keyof E]> = {}\n keys.forEach((key) => {\n mapping[key] = enumObject[key as keyof E]\n })\n\n // Find the key corresponding to the default value\n const defaultKey =\n keys.find((key) => enumObject[key as keyof E] === defaultValue) || keys[0]\n\n return {\n defaultValue: enumObject[defaultKey as keyof E],\n options: keys,\n mapping,\n control: { type: 'radio' },\n }\n}\n"]}
@@ -0,0 +1,56 @@
1
+ import { tab_item_default } from './chunk-GRCEZABQ.mjs';
2
+ import { useScrollStatus } from './chunk-GQWO45DN.mjs';
3
+ import { H1 } from './chunk-JHLT5GDV.mjs';
4
+ import clsx from 'clsx';
5
+ import { useState, useEffect, createElement } from 'react';
6
+ import { jsxs, jsx } from 'react/jsx-runtime';
7
+
8
+ var TitleTab = ({
9
+ title,
10
+ tabs = [],
11
+ activeTabIndex = 0
12
+ }) => {
13
+ const [activeIndex, setActiveIndex] = useState(activeTabIndex);
14
+ const [showGradientMask, setShowGradientMask] = useState(false);
15
+ const ref = useScrollStatus(setShowGradientMask);
16
+ useEffect(() => {
17
+ setActiveIndex(activeTabIndex);
18
+ }, [activeTabIndex]);
19
+ return /* @__PURE__ */ jsxs("div", { className: "flex flex-col w-full text-gray-800", children: [
20
+ /* @__PURE__ */ jsx(H1, { text: title }),
21
+ tabs.length > 0 ? /* @__PURE__ */ jsx(
22
+ "div",
23
+ {
24
+ ref,
25
+ className: clsx(
26
+ "flex items-center",
27
+ "overflow-x-scroll scrollbar:!w-0",
28
+ {
29
+ "[mask-image:linear-gradient(to_left,rgba(241,241,241,0),#f1f1f1_48px)] [-webkit-mask-image:linear-gradient(to_left,rgba(241,241,241,0),#f1f1f1_48px)]": showGradientMask
30
+ }
31
+ ),
32
+ children: tabs.map((tab, index) => {
33
+ const tabProps = { ...tab, isActive: index === activeIndex };
34
+ const handleClick = () => {
35
+ setActiveIndex(index);
36
+ };
37
+ return /* @__PURE__ */ createElement(tab_item_default, { ...tabProps, key: `tab-${tab.text}-${index}`, onClick: handleClick });
38
+ })
39
+ }
40
+ ) : null,
41
+ /* @__PURE__ */ jsx(
42
+ "div",
43
+ {
44
+ className: clsx(
45
+ "w-full h-[1px] bg-gray-300 mt-[0px]",
46
+ "desktop:mt-[0px]"
47
+ )
48
+ }
49
+ )
50
+ ] });
51
+ };
52
+ var title_tab_default = TitleTab;
53
+
54
+ export { title_tab_default };
55
+ //# sourceMappingURL=chunk-R4F4LGAY.mjs.map
56
+ //# sourceMappingURL=chunk-R4F4LGAY.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/title-bar/components/title-tab/index.tsx"],"names":[],"mappings":";;;;;;;AAeA,IAAM,WAA8B,CAAC;AAAA,EACnC,KAAA;AAAA,EACA,OAAO,EAAC;AAAA,EACR,cAAA,GAAiB;AACnB,CAAA,KAAM;AACJ,EAAA,MAAM,CAAC,WAAA,EAAa,cAAc,CAAA,GAAI,SAAS,cAAc,CAAA;AAC7D,EAAA,MAAM,CAAC,gBAAA,EAAkB,mBAAmB,CAAA,GAAI,SAAS,KAAK,CAAA;AAE9D,EAAA,MAAM,GAAA,GAAM,gBAAgB,mBAAmB,CAAA;AAE/C,EAAA,SAAA,CAAU,MAAM;AACd,IAAA,cAAA,CAAe,cAAc,CAAA;AAAA,EAC/B,CAAA,EAAG,CAAC,cAAc,CAAC,CAAA;AAEnB,EAAA,uBACE,IAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,oCAAA,EACb,QAAA,EAAA;AAAA,oBAAA,GAAA,CAAC,EAAA,EAAA,EAAG,MAAM,KAAA,EAAO,CAAA;AAAA,IAChB,IAAA,CAAK,SAAS,CAAA,mBACb,GAAA;AAAA,MAAC,KAAA;AAAA,MAAA;AAAA,QACC,GAAA;AAAA,QACA,SAAA,EAAW,IAAA;AAAA,UACT,mBAAA;AAAA,UACA,kCAAA;AAAA,UACA;AAAA,YACE,uJAAA,EACE;AAAA;AACJ,SACF;AAAA,QAEC,QAAA,EAAA,IAAA,CAAK,GAAA,CAAI,CAAC,GAAA,EAAK,KAAA,KAAU;AACxB,UAAA,MAAM,WAAW,EAAE,GAAG,GAAA,EAAK,QAAA,EAAU,UAAU,WAAA,EAAY;AAC3D,UAAA,MAAM,cAAc,MAAM;AACxB,YAAA,cAAA,CAAe,KAAK,CAAA;AAAA,UACtB,CAAA;AACA,UAAA,uBACE,aAAA,CAAC,gBAAA,EAAA,EAAS,GAAG,QAAA,EAAU,GAAA,EAAK,CAAA,IAAA,EAAO,GAAA,CAAI,IAAI,CAAA,CAAA,EAAI,KAAK,CAAA,CAAA,EAAI,OAAA,EAAS,WAAA,EAAa,CAAA;AAAA,QAElF,CAAC;AAAA;AAAA,KACH,GACE,IAAA;AAAA,oBACJ,GAAA;AAAA,MAAC,KAAA;AAAA,MAAA;AAAA,QACC,SAAA,EAAW,IAAA;AAAA,UACT,qCAAA;AAAA,UACA;AAAA;AACF;AAAA;AACF,GAAA,EACF,CAAA;AAEJ,CAAA;AAEA,IAAO,iBAAA,GAAQ","file":"chunk-R4F4LGAY.mjs","sourcesContent":["import clsx from 'clsx'\nimport { type FC, useState, useEffect } from 'react'\n// hook\nimport { useScrollStatus } from './hook'\n// components\nimport TabItem from './tab-item'\nimport { H1 } from '../../../text/heading'\n// type\nimport type { Tab } from './type'\n\ntype TitleTabProps = {\n title: string\n tabs: Tab[]\n activeTabIndex?: number\n}\nconst TitleTab: FC<TitleTabProps> = ({\n title,\n tabs = [],\n activeTabIndex = 0,\n}) => {\n const [activeIndex, setActiveIndex] = useState(activeTabIndex)\n const [showGradientMask, setShowGradientMask] = useState(false)\n\n const ref = useScrollStatus(setShowGradientMask)\n\n useEffect(() => {\n setActiveIndex(activeTabIndex)\n }, [activeTabIndex])\n\n return (\n <div className=\"flex flex-col w-full text-gray-800\">\n <H1 text={title} />\n {tabs.length > 0 ? (\n <div\n ref={ref}\n className={clsx(\n 'flex items-center',\n 'overflow-x-scroll scrollbar:!w-0',\n {\n '[mask-image:linear-gradient(to_left,rgba(241,241,241,0),#f1f1f1_48px)] [-webkit-mask-image:linear-gradient(to_left,rgba(241,241,241,0),#f1f1f1_48px)]':\n showGradientMask,\n }\n )}\n >\n {tabs.map((tab, index) => {\n const tabProps = { ...tab, isActive: index === activeIndex }\n const handleClick = () => {\n setActiveIndex(index)\n }\n return (\n <TabItem {...tabProps} key={`tab-${tab.text}-${index}`} onClick={handleClick} />\n )\n })}\n </div>\n ) : null}\n <div\n className={clsx(\n 'w-full h-[1px] bg-gray-300 mt-[0px]',\n 'desktop:mt-[0px]'\n )}\n />\n </div>\n )\n}\n\nexport default TitleTab\n"]}
@@ -0,0 +1,16 @@
1
+ // src/button/enum.ts
2
+ var Size = /* @__PURE__ */ ((Size2) => {
3
+ Size2[Size2["S"] = 0] = "S";
4
+ Size2[Size2["L"] = 1] = "L";
5
+ return Size2;
6
+ })(Size || {});
7
+ var Style = /* @__PURE__ */ ((Style2) => {
8
+ Style2[Style2["BRAND"] = 0] = "BRAND";
9
+ Style2[Style2["DARK"] = 1] = "DARK";
10
+ Style2[Style2["LIGHT"] = 2] = "LIGHT";
11
+ return Style2;
12
+ })(Style || {});
13
+
14
+ export { Size, Style };
15
+ //# sourceMappingURL=chunk-URJXIWFX.mjs.map
16
+ //# sourceMappingURL=chunk-URJXIWFX.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/button/enum.ts"],"names":["Size","Style"],"mappings":";AAAO,IAAK,IAAA,qBAAAA,KAAAA,KAAL;AACL,EAAAA,KAAAA,CAAAA,KAAAA,CAAA,GAAA,CAAA,GAAA,CAAA,CAAA,GAAA,GAAA;AACA,EAAAA,KAAAA,CAAAA,KAAAA,CAAA,GAAA,CAAA,GAAA,CAAA,CAAA,GAAA,GAAA;AAFU,EAAA,OAAAA,KAAAA;AAAA,CAAA,EAAA,IAAA,IAAA,EAAA;AAKL,IAAK,KAAA,qBAAAC,MAAAA,KAAL;AACL,EAAAA,MAAAA,CAAAA,MAAAA,CAAA,OAAA,CAAA,GAAA,CAAA,CAAA,GAAA,OAAA;AACA,EAAAA,MAAAA,CAAAA,MAAAA,CAAA,MAAA,CAAA,GAAA,CAAA,CAAA,GAAA,MAAA;AACA,EAAAA,MAAAA,CAAAA,MAAAA,CAAA,OAAA,CAAA,GAAA,CAAA,CAAA,GAAA,OAAA;AAHU,EAAA,OAAAA,MAAAA;AAAA,CAAA,EAAA,KAAA,IAAA,EAAA","file":"chunk-URJXIWFX.mjs","sourcesContent":["export enum Size {\n S,\n L,\n}\n\nexport enum Style {\n BRAND,\n DARK,\n LIGHT,\n}\n"]}
@@ -0,0 +1,16 @@
1
+ import { jsx } from 'react/jsx-runtime';
2
+
3
+ // src/customized-link/external-link.tsx
4
+ var ExternalLink = ({
5
+ to,
6
+ target = "_self",
7
+ className = "",
8
+ children
9
+ }) => {
10
+ return /* @__PURE__ */ jsx("a", { href: to, target, className, children });
11
+ };
12
+ var external_link_default = ExternalLink;
13
+
14
+ export { external_link_default };
15
+ //# sourceMappingURL=chunk-X2UWIBNH.mjs.map
16
+ //# sourceMappingURL=chunk-X2UWIBNH.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/customized-link/external-link.tsx"],"names":[],"mappings":";;;AAIA,IAAM,eAAsC,CAAC;AAAA,EAC3C,EAAA;AAAA,EACA,MAAA,GAAS,OAAA;AAAA,EACT,SAAA,GAAY,EAAA;AAAA,EACZ;AACF,CAAA,KAAM;AACJ,EAAA,2BACG,GAAA,EAAA,EAAE,IAAA,EAAM,EAAA,EAAI,MAAA,EAAgB,WAC1B,QAAA,EACH,CAAA;AAEJ,CAAA;AAEA,IAAO,qBAAA,GAAQ","file":"chunk-X2UWIBNH.mjs","sourcesContent":["import type { FC } from 'react'\nimport type { CustomizedLinkProps } from './type'\n\ntype ExternalLinkProps = CustomizedLinkProps\nconst ExternalLink: FC<ExternalLinkProps> = ({\n to,\n target = '_self',\n className = '',\n children,\n}) => {\n return (\n <a href={to} target={target} className={className}>\n {children}\n </a>\n )\n}\n\nexport default ExternalLink\n"]}
@@ -0,0 +1,17 @@
1
+ import Link from 'next/link';
2
+ import { jsx } from 'react/jsx-runtime';
3
+
4
+ // src/customized-link/internal-link.tsx
5
+ var InternalLink = ({
6
+ to,
7
+ target = "_self",
8
+ className = "",
9
+ children
10
+ }) => {
11
+ return /* @__PURE__ */ jsx(Link, { href: to, target, className, children });
12
+ };
13
+ var internal_link_default = InternalLink;
14
+
15
+ export { internal_link_default };
16
+ //# sourceMappingURL=chunk-XO7SDD7W.mjs.map
17
+ //# sourceMappingURL=chunk-XO7SDD7W.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/customized-link/internal-link.tsx"],"names":[],"mappings":";;;;AAOA,IAAM,eAAsC,CAAC;AAAA,EAC3C,EAAA;AAAA,EACA,MAAA,GAAS,OAAA;AAAA,EACT,SAAA,GAAY,EAAA;AAAA,EACZ;AACF,CAAA,KAAM;AACJ,EAAA,2BACG,IAAA,EAAA,EAAK,IAAA,EAAM,EAAA,EAAI,MAAA,EAAgB,WAC7B,QAAA,EACH,CAAA;AAEJ,CAAA;AAEA,IAAO,qBAAA,GAAQ","file":"chunk-XO7SDD7W.mjs","sourcesContent":["'use client'\n\nimport Link from 'next/link'\nimport type { FC } from 'react'\nimport type { CustomizedLinkProps } from './type'\n\ntype InternalLinkProps = CustomizedLinkProps\nconst InternalLink: FC<InternalLinkProps> = ({\n to,\n target = '_self',\n className = '',\n children,\n}) => {\n return (\n <Link href={to} target={target} className={className}>\n {children}\n </Link>\n )\n}\n\nexport default InternalLink\n"]}
@@ -0,0 +1,7 @@
1
+ import { FC } from 'react';
2
+ import { CustomizedLinkProps } from './type.mjs';
3
+
4
+ type ExternalLinkProps = CustomizedLinkProps;
5
+ declare const ExternalLink: FC<ExternalLinkProps>;
6
+
7
+ export { ExternalLink as default };
@@ -0,0 +1,7 @@
1
+ import { FC } from 'react';
2
+ import { CustomizedLinkProps } from './type.js';
3
+
4
+ type ExternalLinkProps = CustomizedLinkProps;
5
+ declare const ExternalLink: FC<ExternalLinkProps>;
6
+
7
+ export { ExternalLink as default };
@@ -0,0 +1,18 @@
1
+ 'use strict';
2
+
3
+ var jsxRuntime = require('react/jsx-runtime');
4
+
5
+ // src/customized-link/external-link.tsx
6
+ var ExternalLink = ({
7
+ to,
8
+ target = "_self",
9
+ className = "",
10
+ children
11
+ }) => {
12
+ return /* @__PURE__ */ jsxRuntime.jsx("a", { href: to, target, className, children });
13
+ };
14
+ var external_link_default = ExternalLink;
15
+
16
+ module.exports = external_link_default;
17
+ //# sourceMappingURL=external-link.js.map
18
+ //# sourceMappingURL=external-link.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/customized-link/external-link.tsx"],"names":[],"mappings":";;;;;AAIA,IAAM,eAAsC,CAAC;AAAA,EAC3C,EAAA;AAAA,EACA,MAAA,GAAS,OAAA;AAAA,EACT,SAAA,GAAY,EAAA;AAAA,EACZ;AACF,CAAA,KAAM;AACJ,EAAA,sCACG,GAAA,EAAA,EAAE,IAAA,EAAM,EAAA,EAAI,MAAA,EAAgB,WAC1B,QAAA,EACH,CAAA;AAEJ,CAAA;AAEA,IAAO,qBAAA,GAAQ","file":"external-link.js","sourcesContent":["import type { FC } from 'react'\nimport type { CustomizedLinkProps } from './type'\n\ntype ExternalLinkProps = CustomizedLinkProps\nconst ExternalLink: FC<ExternalLinkProps> = ({\n to,\n target = '_self',\n className = '',\n children,\n}) => {\n return (\n <a href={to} target={target} className={className}>\n {children}\n </a>\n )\n}\n\nexport default ExternalLink\n"]}
@@ -0,0 +1,3 @@
1
+ export { external_link_default as default } from '../chunk-X2UWIBNH.mjs';
2
+ //# sourceMappingURL=external-link.mjs.map
3
+ //# sourceMappingURL=external-link.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"external-link.mjs"}
@@ -0,0 +1,11 @@
1
+ import * as react from 'react';
2
+ import { CustomizedLinkProps } from './type.mjs';
3
+ export { default as ExternalLink } from './external-link.mjs';
4
+ export { default as InternalLink } from './internal-link.mjs';
5
+
6
+ declare const _default: {
7
+ ExternalLink: react.FC<CustomizedLinkProps>;
8
+ InternalLink: react.FC<CustomizedLinkProps>;
9
+ };
10
+
11
+ export { _default as default };
@@ -0,0 +1,11 @@
1
+ import * as react from 'react';
2
+ import { CustomizedLinkProps } from './type.js';
3
+ export { default as ExternalLink } from './external-link.js';
4
+ export { default as InternalLink } from './internal-link.js';
5
+
6
+ declare const _default: {
7
+ ExternalLink: react.FC<CustomizedLinkProps>;
8
+ InternalLink: react.FC<CustomizedLinkProps>;
9
+ };
10
+
11
+ export { _default as default };
@@ -0,0 +1,42 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var jsxRuntime = require('react/jsx-runtime');
6
+ var Link = require('next/link');
7
+
8
+ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
9
+
10
+ var Link__default = /*#__PURE__*/_interopDefault(Link);
11
+
12
+ // src/customized-link/external-link.tsx
13
+ var ExternalLink = ({
14
+ to,
15
+ target = "_self",
16
+ className = "",
17
+ children
18
+ }) => {
19
+ return /* @__PURE__ */ jsxRuntime.jsx("a", { href: to, target, className, children });
20
+ };
21
+ var external_link_default = ExternalLink;
22
+ var InternalLink = ({
23
+ to,
24
+ target = "_self",
25
+ className = "",
26
+ children
27
+ }) => {
28
+ return /* @__PURE__ */ jsxRuntime.jsx(Link__default.default, { href: to, target, className, children });
29
+ };
30
+ var internal_link_default = InternalLink;
31
+
32
+ // src/customized-link/index.ts
33
+ var customized_link_default = {
34
+ ExternalLink: external_link_default,
35
+ InternalLink: internal_link_default
36
+ };
37
+
38
+ exports.ExternalLink = external_link_default;
39
+ exports.InternalLink = internal_link_default;
40
+ exports.default = customized_link_default;
41
+ //# sourceMappingURL=index.js.map
42
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/customized-link/external-link.tsx","../../src/customized-link/internal-link.tsx","../../src/customized-link/index.ts"],"names":["jsx","Link"],"mappings":";;;;;;;;;;;;AAIA,IAAM,eAAsC,CAAC;AAAA,EAC3C,EAAA;AAAA,EACA,MAAA,GAAS,OAAA;AAAA,EACT,SAAA,GAAY,EAAA;AAAA,EACZ;AACF,CAAA,KAAM;AACJ,EAAA,sCACG,GAAA,EAAA,EAAE,IAAA,EAAM,EAAA,EAAI,MAAA,EAAgB,WAC1B,QAAA,EACH,CAAA;AAEJ,CAAA;AAEA,IAAO,qBAAA,GAAQ;ACVf,IAAM,eAAsC,CAAC;AAAA,EAC3C,EAAA;AAAA,EACA,MAAA,GAAS,OAAA;AAAA,EACT,SAAA,GAAY,EAAA;AAAA,EACZ;AACF,CAAA,KAAM;AACJ,EAAA,uBACEA,cAAAA,CAACC,qBAAA,EAAA,EAAK,MAAM,EAAA,EAAI,MAAA,EAAgB,WAC7B,QAAA,EACH,CAAA;AAEJ,CAAA;AAEA,IAAO,qBAAA,GAAQ;;;ACff,IAAO,uBAAA,GAAQ;AAAA,EACb,YAAA,EAAA,qBAAA;AAAA,EACA,YAAA,EAAA;AACF","file":"index.js","sourcesContent":["import type { FC } from 'react'\nimport type { CustomizedLinkProps } from './type'\n\ntype ExternalLinkProps = CustomizedLinkProps\nconst ExternalLink: FC<ExternalLinkProps> = ({\n to,\n target = '_self',\n className = '',\n children,\n}) => {\n return (\n <a href={to} target={target} className={className}>\n {children}\n </a>\n )\n}\n\nexport default ExternalLink\n","'use client'\n\nimport Link from 'next/link'\nimport type { FC } from 'react'\nimport type { CustomizedLinkProps } from './type'\n\ntype InternalLinkProps = CustomizedLinkProps\nconst InternalLink: FC<InternalLinkProps> = ({\n to,\n target = '_self',\n className = '',\n children,\n}) => {\n return (\n <Link href={to} target={target} className={className}>\n {children}\n </Link>\n )\n}\n\nexport default InternalLink\n","import ExternalLink from './external-link'\nimport InternalLink from './internal-link'\n\nexport { ExternalLink, InternalLink }\n\nexport default {\n ExternalLink,\n InternalLink,\n}\n"]}
@@ -0,0 +1,5 @@
1
+ export { customized_link_default as default } from '../chunk-JFT6JILC.mjs';
2
+ export { external_link_default as ExternalLink } from '../chunk-X2UWIBNH.mjs';
3
+ export { internal_link_default as InternalLink } from '../chunk-XO7SDD7W.mjs';
4
+ //# sourceMappingURL=index.mjs.map
5
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"index.mjs"}
@@ -0,0 +1,7 @@
1
+ import { FC } from 'react';
2
+ import { CustomizedLinkProps } from './type.mjs';
3
+
4
+ type InternalLinkProps = CustomizedLinkProps;
5
+ declare const InternalLink: FC<InternalLinkProps>;
6
+
7
+ export { InternalLink as default };
@@ -0,0 +1,7 @@
1
+ import { FC } from 'react';
2
+ import { CustomizedLinkProps } from './type.js';
3
+
4
+ type InternalLinkProps = CustomizedLinkProps;
5
+ declare const InternalLink: FC<InternalLinkProps>;
6
+
7
+ export { InternalLink as default };
@@ -0,0 +1,22 @@
1
+ 'use strict';
2
+
3
+ var Link = require('next/link');
4
+ var jsxRuntime = require('react/jsx-runtime');
5
+
6
+ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
7
+
8
+ var Link__default = /*#__PURE__*/_interopDefault(Link);
9
+
10
+ var InternalLink = ({
11
+ to,
12
+ target = "_self",
13
+ className = "",
14
+ children
15
+ }) => {
16
+ return /* @__PURE__ */ jsxRuntime.jsx(Link__default.default, { href: to, target, className, children });
17
+ };
18
+ var internal_link_default = InternalLink;
19
+
20
+ module.exports = internal_link_default;
21
+ //# sourceMappingURL=internal-link.js.map
22
+ //# sourceMappingURL=internal-link.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/customized-link/internal-link.tsx"],"names":["Link"],"mappings":";;;;;;;;;AAOA,IAAM,eAAsC,CAAC;AAAA,EAC3C,EAAA;AAAA,EACA,MAAA,GAAS,OAAA;AAAA,EACT,SAAA,GAAY,EAAA;AAAA,EACZ;AACF,CAAA,KAAM;AACJ,EAAA,sCACGA,qBAAA,EAAA,EAAK,IAAA,EAAM,EAAA,EAAI,MAAA,EAAgB,WAC7B,QAAA,EACH,CAAA;AAEJ,CAAA;AAEA,IAAO,qBAAA,GAAQ","file":"internal-link.js","sourcesContent":["'use client'\n\nimport Link from 'next/link'\nimport type { FC } from 'react'\nimport type { CustomizedLinkProps } from './type'\n\ntype InternalLinkProps = CustomizedLinkProps\nconst InternalLink: FC<InternalLinkProps> = ({\n to,\n target = '_self',\n className = '',\n children,\n}) => {\n return (\n <Link href={to} target={target} className={className}>\n {children}\n </Link>\n )\n}\n\nexport default InternalLink\n"]}
@@ -0,0 +1,3 @@
1
+ export { internal_link_default as default } from '../chunk-XO7SDD7W.mjs';
2
+ //# sourceMappingURL=internal-link.mjs.map
3
+ //# sourceMappingURL=internal-link.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"internal-link.mjs"}
@@ -0,0 +1,9 @@
1
+ type LinkTarget = '_blank' | '_self' | '_parent' | '_top';
2
+ type CustomizedLinkProps = {
3
+ to: string;
4
+ target?: LinkTarget;
5
+ className?: string;
6
+ children?: React.ReactNode;
7
+ };
8
+
9
+ export type { CustomizedLinkProps, LinkTarget };
@@ -0,0 +1,9 @@
1
+ type LinkTarget = '_blank' | '_self' | '_parent' | '_top';
2
+ type CustomizedLinkProps = {
3
+ to: string;
4
+ target?: LinkTarget;
5
+ className?: string;
6
+ children?: React.ReactNode;
7
+ };
8
+
9
+ export type { CustomizedLinkProps, LinkTarget };
@@ -0,0 +1,4 @@
1
+ 'use strict';
2
+
3
+ //# sourceMappingURL=type.js.map
4
+ //# sourceMappingURL=type.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"type.js"}
@@ -0,0 +1,3 @@
1
+
2
+ //# sourceMappingURL=type.mjs.map
3
+ //# sourceMappingURL=type.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"type.mjs"}
@@ -0,0 +1,19 @@
1
+ type RadioArgObject<T> = {
2
+ defaultValue: T;
3
+ options: T[];
4
+ control: {
5
+ type: 'radio';
6
+ };
7
+ };
8
+ declare function getRadioArgFromObject<T extends string | number>(object: Record<string, T>, defaultValue: T): RadioArgObject<T>;
9
+ type RadioArgEnum<E> = {
10
+ defaultValue: E;
11
+ options: string[];
12
+ mapping: Record<string, E>;
13
+ control: {
14
+ type: 'radio';
15
+ };
16
+ };
17
+ declare function getRadioArgFromEnum<E extends Record<string, string | number>>(enumObject: E, defaultValue: E[keyof E]): RadioArgEnum<E[keyof E]>;
18
+
19
+ export { getRadioArgFromEnum, getRadioArgFromObject };
@@ -0,0 +1,19 @@
1
+ type RadioArgObject<T> = {
2
+ defaultValue: T;
3
+ options: T[];
4
+ control: {
5
+ type: 'radio';
6
+ };
7
+ };
8
+ declare function getRadioArgFromObject<T extends string | number>(object: Record<string, T>, defaultValue: T): RadioArgObject<T>;
9
+ type RadioArgEnum<E> = {
10
+ defaultValue: E;
11
+ options: string[];
12
+ mapping: Record<string, E>;
13
+ control: {
14
+ type: 'radio';
15
+ };
16
+ };
17
+ declare function getRadioArgFromEnum<E extends Record<string, string | number>>(enumObject: E, defaultValue: E[keyof E]): RadioArgEnum<E[keyof E]>;
18
+
19
+ export { getRadioArgFromEnum, getRadioArgFromObject };
@@ -0,0 +1,31 @@
1
+ 'use strict';
2
+
3
+ // src/storybook/utils/get-enum-arg.ts
4
+ function getRadioArgFromObject(object, defaultValue) {
5
+ return {
6
+ defaultValue,
7
+ options: Object.values(object),
8
+ control: { type: "radio" }
9
+ };
10
+ }
11
+ function getRadioArgFromEnum(enumObject, defaultValue) {
12
+ const keys = Object.keys(enumObject).filter(
13
+ (key) => Number.isNaN(Number(key))
14
+ );
15
+ const mapping = {};
16
+ keys.forEach((key) => {
17
+ mapping[key] = enumObject[key];
18
+ });
19
+ const defaultKey = keys.find((key) => enumObject[key] === defaultValue) || keys[0];
20
+ return {
21
+ defaultValue: enumObject[defaultKey],
22
+ options: keys,
23
+ mapping,
24
+ control: { type: "radio" }
25
+ };
26
+ }
27
+
28
+ exports.getRadioArgFromEnum = getRadioArgFromEnum;
29
+ exports.getRadioArgFromObject = getRadioArgFromObject;
30
+ //# sourceMappingURL=get-enum-arg.js.map
31
+ //# sourceMappingURL=get-enum-arg.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/storybook/utils/get-enum-arg.ts"],"names":[],"mappings":";;;AAMO,SAAS,qBAAA,CACd,QACA,YAAA,EACmB;AACnB,EAAA,OAAO;AAAA,IACL,YAAA;AAAA,IACA,OAAA,EAAS,MAAA,CAAO,MAAA,CAAO,MAAM,CAAA;AAAA,IAC7B,OAAA,EAAS,EAAE,IAAA,EAAM,OAAA;AAAQ,GAC3B;AACF;AASO,SAAS,mBAAA,CACd,YACA,YAAA,EAC0B;AAE1B,EAAA,MAAM,IAAA,GAAO,MAAA,CAAO,IAAA,CAAK,UAAU,CAAA,CAAE,MAAA;AAAA,IAAO,CAAC,GAAA,KAC3C,MAAA,CAAO,KAAA,CAAM,MAAA,CAAO,GAAG,CAAC;AAAA,GAC1B;AAEA,EAAA,MAAM,UAAsC,EAAC;AAC7C,EAAA,IAAA,CAAK,OAAA,CAAQ,CAAC,GAAA,KAAQ;AACpB,IAAA,OAAA,CAAQ,GAAG,CAAA,GAAI,UAAA,CAAW,GAAc,CAAA;AAAA,EAC1C,CAAC,CAAA;AAGD,EAAA,MAAM,UAAA,GACJ,IAAA,CAAK,IAAA,CAAK,CAAC,GAAA,KAAQ,UAAA,CAAW,GAAc,CAAA,KAAM,YAAY,CAAA,IAAK,IAAA,CAAK,CAAC,CAAA;AAE3E,EAAA,OAAO;AAAA,IACL,YAAA,EAAc,WAAW,UAAqB,CAAA;AAAA,IAC9C,OAAA,EAAS,IAAA;AAAA,IACT,OAAA;AAAA,IACA,OAAA,EAAS,EAAE,IAAA,EAAM,OAAA;AAAQ,GAC3B;AACF","file":"get-enum-arg.js","sourcesContent":["type RadioArgObject<T> = {\n defaultValue: T\n options: T[]\n control: { type: 'radio' }\n}\n\nexport function getRadioArgFromObject<T extends string | number>(\n object: Record<string, T>,\n defaultValue: T\n): RadioArgObject<T> {\n return {\n defaultValue,\n options: Object.values(object),\n control: { type: 'radio' },\n }\n}\n\ntype RadioArgEnum<E> = {\n defaultValue: E\n options: string[]\n mapping: Record<string, E>\n control: { type: 'radio' }\n}\n\nexport function getRadioArgFromEnum<E extends Record<string, string | number>>(\n enumObject: E,\n defaultValue: E[keyof E]\n): RadioArgEnum<E[keyof E]> {\n // Only keep \"real\" keys (filter numeric reverse mapping)\n const keys = Object.keys(enumObject).filter((key) =>\n Number.isNaN(Number(key))\n )\n\n const mapping: Record<string, E[keyof E]> = {}\n keys.forEach((key) => {\n mapping[key] = enumObject[key as keyof E]\n })\n\n // Find the key corresponding to the default value\n const defaultKey =\n keys.find((key) => enumObject[key as keyof E] === defaultValue) || keys[0]\n\n return {\n defaultValue: enumObject[defaultKey as keyof E],\n options: keys,\n mapping,\n control: { type: 'radio' },\n }\n}\n"]}
@@ -0,0 +1,3 @@
1
+ export { getRadioArgFromEnum, getRadioArgFromObject } from '../../chunk-QOLETTSG.mjs';
2
+ //# sourceMappingURL=get-enum-arg.mjs.map
3
+ //# sourceMappingURL=get-enum-arg.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"get-enum-arg.mjs"}