@twreporter/react-typescript-components 0.1.0-beta.21 → 0.1.0-beta.22

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 (130) hide show
  1. package/lib/{constants-Npoq7yu0.mjs → constants-5phfWHvb.mjs} +1 -1
  2. package/lib/{constants-Npoq7yu0.mjs.map → constants-5phfWHvb.mjs.map} +1 -1
  3. package/lib/{constants-CUzusjTU.js → constants-B_1Vpdib.js} +2 -2
  4. package/lib/{constants-CUzusjTU.js.map → constants-B_1Vpdib.js.map} +1 -1
  5. package/lib/{constants-B8QkNSRh.mjs → constants-Br6I254P.mjs} +2 -2
  6. package/lib/{constants-B8QkNSRh.mjs.map → constants-Br6I254P.mjs.map} +1 -1
  7. package/lib/{constants-pqSeExjX.js → constants-C2moxnps.js} +1 -1
  8. package/lib/{constants-pqSeExjX.js.map → constants-C2moxnps.js.map} +1 -1
  9. package/lib/{constants-R6EfY15A.js → constants-D8wNUvoZ.js} +1 -1
  10. package/lib/{constants-R6EfY15A.js.map → constants-D8wNUvoZ.js.map} +1 -1
  11. package/lib/{constants-DKqcALfv.mjs → constants-DRxdMM_X.mjs} +1 -1
  12. package/lib/{constants-DKqcALfv.mjs.map → constants-DRxdMM_X.mjs.map} +1 -1
  13. package/lib/{context-C9AuSZIE.mjs → context-BgdqM3zA.mjs} +1 -1
  14. package/lib/{context-C9AuSZIE.mjs.map → context-BgdqM3zA.mjs.map} +1 -1
  15. package/lib/{context-vBt5fnU9.js → context-I1lTR5SO.js} +1 -1
  16. package/lib/{context-vBt5fnU9.js.map → context-I1lTR5SO.js.map} +1 -1
  17. package/lib/customized-link/index.d.mts +3 -3
  18. package/lib/customized-link/index.d.ts +3 -3
  19. package/lib/customized-link/index.js +2 -2
  20. package/lib/customized-link/index.mjs +2 -2
  21. package/lib/customized-link/internal-link.js +1 -1
  22. package/lib/customized-link/internal-link.mjs +1 -1
  23. package/lib/{customized-link-BDKQVdcH.js → customized-link-BuleQPlC.js} +2 -2
  24. package/lib/{customized-link-BDKQVdcH.js.map → customized-link-BuleQPlC.js.map} +1 -1
  25. package/lib/{customized-link-D3p9rjEe.mjs → customized-link-M65Amhsm.mjs} +2 -2
  26. package/lib/{customized-link-D3p9rjEe.mjs.map → customized-link-M65Amhsm.mjs.map} +1 -1
  27. package/lib/dropdown-menu/index.js +7 -7
  28. package/lib/dropdown-menu/index.mjs +7 -7
  29. package/lib/{dropdown-menu-CTUg6MST.js → dropdown-menu-BAHX8io9.js} +5 -5
  30. package/lib/{dropdown-menu-CTUg6MST.js.map → dropdown-menu-BAHX8io9.js.map} +1 -1
  31. package/lib/{dropdown-menu-MOuxtoud.mjs → dropdown-menu-BBodM9gi.mjs} +5 -5
  32. package/lib/{dropdown-menu-MOuxtoud.mjs.map → dropdown-menu-BBodM9gi.mjs.map} +1 -1
  33. package/lib/footer/index.js +8 -8
  34. package/lib/footer/index.mjs +8 -8
  35. package/lib/footer/links.js +5 -5
  36. package/lib/footer/links.mjs +5 -5
  37. package/lib/footer/logo.js +5 -5
  38. package/lib/footer/logo.mjs +5 -5
  39. package/lib/hamburger-menu/index.js +11 -11
  40. package/lib/hamburger-menu/index.mjs +11 -11
  41. package/lib/{hamburger-menu-B-n_-t91.mjs → hamburger-menu-B8A2Jjyu.mjs} +8 -8
  42. package/lib/{hamburger-menu-B-n_-t91.mjs.map → hamburger-menu-B8A2Jjyu.mjs.map} +1 -1
  43. package/lib/{hamburger-menu-CYiCx5_x.js → hamburger-menu-BKiIxEbP.js} +8 -8
  44. package/lib/{hamburger-menu-CYiCx5_x.js.map → hamburger-menu-BKiIxEbP.js.map} +1 -1
  45. package/lib/header/index.js +20 -20
  46. package/lib/header/index.mjs +17 -17
  47. package/lib/hooks/index.d.mts +3 -3
  48. package/lib/hooks/index.d.ts +3 -3
  49. package/lib/hooks/index.js +2 -2
  50. package/lib/hooks/index.mjs +2 -2
  51. package/lib/hooks/use-outside-click.d.mts +1 -1
  52. package/lib/hooks/use-outside-click.d.ts +1 -1
  53. package/lib/hooks/use-outside-click.js +1 -1
  54. package/lib/hooks/use-outside-click.mjs +1 -1
  55. package/lib/{hooks-CYgvBAmt.js → hooks-B0DKeSXi.js} +2 -2
  56. package/lib/{hooks-CYgvBAmt.js.map → hooks-B0DKeSXi.js.map} +1 -1
  57. package/lib/{hooks-CcqXFDPN.mjs → hooks-CDCpkU85.mjs} +2 -2
  58. package/lib/{hooks-CcqXFDPN.mjs.map → hooks-CDCpkU85.mjs.map} +1 -1
  59. package/lib/icons/constants.js +1 -1
  60. package/lib/icons/constants.mjs +1 -1
  61. package/lib/icons/index.js +2 -2
  62. package/lib/icons/index.mjs +2 -2
  63. package/lib/{icons-C5UqghX2.mjs → icons-I7T-auOQ.mjs} +2 -2
  64. package/lib/{icons-C5UqghX2.mjs.map → icons-I7T-auOQ.mjs.map} +1 -1
  65. package/lib/{icons-BZI6_5JJ.js → icons-qP5oNB0W.js} +2 -2
  66. package/lib/{icons-BZI6_5JJ.js.map → icons-qP5oNB0W.js.map} +1 -1
  67. package/lib/input/index.d.mts +2 -2
  68. package/lib/input/index.d.ts +2 -2
  69. package/lib/input/index.js +4 -4
  70. package/lib/input/index.mjs +4 -4
  71. package/lib/input/theme.js +1 -1
  72. package/lib/input/theme.mjs +1 -1
  73. package/lib/{input-BJWcutA3.mjs → input-BU_QJnbj.mjs} +3 -3
  74. package/lib/{input-BJWcutA3.mjs.map → input-BU_QJnbj.mjs.map} +1 -1
  75. package/lib/{input-e0a-Wul_.js → input-VmgNb9pm.js} +3 -3
  76. package/lib/{input-e0a-Wul_.js.map → input-VmgNb9pm.js.map} +1 -1
  77. package/lib/{internal-link-Bq4yp13E.js → internal-link-DyK4bABh.js} +665 -66
  78. package/lib/internal-link-DyK4bABh.js.map +1 -0
  79. package/lib/{internal-link-DCXJvzgx.mjs → internal-link-JeC0sVNF.mjs} +665 -66
  80. package/lib/internal-link-JeC0sVNF.mjs.map +1 -0
  81. package/lib/{links-CFjOQl4o.mjs → links-B2pHDaBW.mjs} +2 -2
  82. package/lib/{links-CFjOQl4o.mjs.map → links-B2pHDaBW.mjs.map} +1 -1
  83. package/lib/{links-DMd-CuUJ.js → links-Cq5mjJ_J.js} +2 -2
  84. package/lib/{links-DMd-CuUJ.js.map → links-Cq5mjJ_J.js.map} +1 -1
  85. package/lib/logo/constants.js +1 -1
  86. package/lib/logo/constants.mjs +1 -1
  87. package/lib/logo/index.d.mts +7 -7
  88. package/lib/logo/index.d.ts +7 -7
  89. package/lib/logo/index.js +2 -2
  90. package/lib/logo/index.mjs +2 -2
  91. package/lib/{logo-B35M1BaX.js → logo-B3GSkN1O.js} +2 -2
  92. package/lib/{logo-B35M1BaX.js.map → logo-B3GSkN1O.js.map} +1 -1
  93. package/lib/{logo-lPQ3Apwn.mjs → logo-CUVtS0IX.mjs} +3 -3
  94. package/lib/{logo-lPQ3Apwn.mjs.map → logo-CUVtS0IX.mjs.map} +1 -1
  95. package/lib/{logo-CeaVUbIW.js → logo-DlhZVVLN.js} +3 -3
  96. package/lib/{logo-CeaVUbIW.js.map → logo-DlhZVVLN.js.map} +1 -1
  97. package/lib/{logo-DkEpjnPV.mjs → logo-NfYCtrtN.mjs} +2 -2
  98. package/lib/{logo-DkEpjnPV.mjs.map → logo-NfYCtrtN.mjs.map} +1 -1
  99. package/lib/tab-bar/constants.js +3 -3
  100. package/lib/tab-bar/constants.mjs +3 -3
  101. package/lib/tab-bar/index.js +8 -8
  102. package/lib/tab-bar/index.mjs +8 -8
  103. package/lib/tab-bar/theme.js +1 -1
  104. package/lib/tab-bar/theme.mjs +1 -1
  105. package/lib/{tab-bar-USs-mSXE.js → tab-bar-BiduNX4N.js} +6 -6
  106. package/lib/{tab-bar-USs-mSXE.js.map → tab-bar-BiduNX4N.js.map} +1 -1
  107. package/lib/{tab-bar-C_FxNWkG.mjs → tab-bar-Cl1QLEj1.mjs} +6 -6
  108. package/lib/{tab-bar-C_FxNWkG.mjs.map → tab-bar-Cl1QLEj1.mjs.map} +1 -1
  109. package/lib/{theme-DURvzYaJ.mjs → theme-Bgd_TUHZ.mjs} +1 -1
  110. package/lib/{theme-DURvzYaJ.mjs.map → theme-Bgd_TUHZ.mjs.map} +1 -1
  111. package/lib/{theme-Cf9NG_eL.mjs → theme-CE2RkJwt.mjs} +1 -1
  112. package/lib/{theme-Cf9NG_eL.mjs.map → theme-CE2RkJwt.mjs.map} +1 -1
  113. package/lib/{theme-B9k1Udon.js → theme-CmvdSSbX.js} +1 -1
  114. package/lib/{theme-B9k1Udon.js.map → theme-CmvdSSbX.js.map} +1 -1
  115. package/lib/{theme-BLdi7Moc.js → theme-Cv8rt4oO.js} +1 -1
  116. package/lib/{theme-BLdi7Moc.js.map → theme-Cv8rt4oO.js.map} +1 -1
  117. package/lib/title-bar/index.d.ts +4 -4
  118. package/lib/title-bar/index.js +2 -2
  119. package/lib/title-bar/index.mjs +2 -2
  120. package/lib/{use-outside-click-DnJ0DNZ9.js → use-outside-click-BB1MpRid.js} +1 -1
  121. package/lib/{use-outside-click-DnJ0DNZ9.js.map → use-outside-click-BB1MpRid.js.map} +1 -1
  122. package/lib/use-outside-click-CMgRy6Pr.d.mts +7 -0
  123. package/lib/use-outside-click-CWX94QPE.d.ts +7 -0
  124. package/lib/{use-outside-click-BfAURk-E.mjs → use-outside-click-DAfe2vPE.mjs} +1 -1
  125. package/lib/{use-outside-click-BfAURk-E.mjs.map → use-outside-click-DAfe2vPE.mjs.map} +1 -1
  126. package/package.json +4 -5
  127. package/lib/internal-link-Bq4yp13E.js.map +0 -1
  128. package/lib/internal-link-DCXJvzgx.mjs.map +0 -1
  129. package/lib/use-outside-click-BA-T3hJc.d.ts +0 -7
  130. package/lib/use-outside-click-E-9eTkfz.d.mts +0 -7
@@ -1 +1 @@
1
- {"version":3,"file":"hooks-CcqXFDPN.mjs","names":[],"sources":["../src/hooks/index.ts"],"sourcesContent":["import { useOutsideClick } from './use-outside-click'\n\nexport { useOutsideClick }\n\nexport default { useOutsideClick }\n"],"mappings":";;;AAIA,oBAAe,EAAE,iBAAiB"}
1
+ {"version":3,"file":"hooks-CDCpkU85.mjs","names":[],"sources":["../src/hooks/index.ts"],"sourcesContent":["import { useOutsideClick } from './use-outside-click'\n\nexport { useOutsideClick }\n\nexport default { useOutsideClick }\n"],"mappings":";;;AAIA,oBAAe,EAAE,iBAAiB"}
@@ -1,4 +1,4 @@
1
- const require_constants = require('../constants-R6EfY15A.js');
1
+ const require_constants = require('../constants-D8wNUvoZ.js');
2
2
 
3
3
  exports.ARROW_DIRECTION = require_constants.ARROW_DIRECTION;
4
4
  exports.ICON_TYPE = require_constants.ICON_TYPE;
@@ -1,3 +1,3 @@
1
- import { ARROW_DIRECTION, ICON_TYPE, MEDIA_TYPE } from "../constants-Npoq7yu0.mjs";
1
+ import { ARROW_DIRECTION, ICON_TYPE, MEDIA_TYPE } from "../constants-5phfWHvb.mjs";
2
2
 
3
3
  export { ARROW_DIRECTION, ICON_TYPE, MEDIA_TYPE };
@@ -1,6 +1,6 @@
1
1
  require('../release-branch-CRZV4Ivz.js');
2
- require('../constants-R6EfY15A.js');
3
- const require_icons = require('../icons-BZI6_5JJ.js');
2
+ require('../constants-D8wNUvoZ.js');
3
+ const require_icons = require('../icons-qP5oNB0W.js');
4
4
 
5
5
  exports.Arrow = require_icons.Arrow;
6
6
  exports.Clock = require_icons.Clock;
@@ -1,5 +1,5 @@
1
1
  import "../release-branch-DNCD1uH_.mjs";
2
- import "../constants-Npoq7yu0.mjs";
3
- import { Arrow, Clock, Cross, Hamburger, Home, Icon, KidStar, Member, Search, SocialMedia, Topic } from "../icons-C5UqghX2.mjs";
2
+ import "../constants-5phfWHvb.mjs";
3
+ import { Arrow, Clock, Cross, Hamburger, Home, Icon, KidStar, Member, Search, SocialMedia, Topic } from "../icons-I7T-auOQ.mjs";
4
4
 
5
5
  export { Arrow, Clock, Cross, Hamburger, Home, Icon, KidStar, Member, Search, SocialMedia, Topic };
@@ -1,5 +1,5 @@
1
1
  import { RELEASE_BRANCH } from "./release-branch-DNCD1uH_.mjs";
2
- import { ARROW_DIRECTION, ICON_TYPE, MEDIA_TYPE } from "./constants-Npoq7yu0.mjs";
2
+ import { ARROW_DIRECTION, ICON_TYPE, MEDIA_TYPE } from "./constants-5phfWHvb.mjs";
3
3
  import clsx from "clsx";
4
4
  import { jsx } from "react/jsx-runtime";
5
5
 
@@ -57,4 +57,4 @@ SocialMedia.MediaType = MEDIA_TYPE;
57
57
 
58
58
  //#endregion
59
59
  export { Arrow, Clock, Cross, Hamburger, Home, Icon, KidStar, Member, Search, SocialMedia, Topic };
60
- //# sourceMappingURL=icons-C5UqghX2.mjs.map
60
+ //# sourceMappingURL=icons-I7T-auOQ.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"icons-C5UqghX2.mjs","names":["Icon: React.FC<IconProps> & {\n Type: typeof ICON_TYPE\n ReleaseBranch: typeof RELEASE_BRANCH\n}","Arrow: React.FC<{\n direction?: ArrowDirection\n releaseBranch: ReleaseBranch\n}> & {\n Direction: typeof ARROW_DIRECTION\n}","SocialMedia: React.FC<SocialMediaProps> & {\n Type: typeof ICON_TYPE\n MediaType: typeof MEDIA_TYPE\n}"],"sources":["../src/icons/index.tsx"],"sourcesContent":["import type React from 'react'\nimport clsx from 'clsx'\n\nimport { RELEASE_BRANCH, type ReleaseBranch } from '../constants/release-branch'\nimport {\n ICON_TYPE,\n type IconType,\n ARROW_DIRECTION,\n type ArrowDirection,\n MEDIA_TYPE,\n type MediaType,\n} from './constants'\n\nconst baseGCSDir = 'https://www.twreporter.org/assets/icon/'\n\ntype IconProps = {\n type?: IconType\n filename: string\n releaseBranch?: ReleaseBranch\n className?: string\n}\nexport const Icon: React.FC<IconProps> & {\n Type: typeof ICON_TYPE\n ReleaseBranch: typeof RELEASE_BRANCH\n} = ({\n type = ICON_TYPE.mask,\n filename,\n releaseBranch = RELEASE_BRANCH.master,\n className = '',\n}) => {\n const src = `${baseGCSDir}${releaseBranch}/${filename}.svg`\n\n if (type === ICON_TYPE.raw) {\n return (\n // biome-ignore lint/performance/noImgElement: use next image later\n <img\n src={src}\n alt={filename}\n className={clsx('h-[24px] w-[24px]', className)}\n />\n )\n }\n\n return (\n <svg\n className={clsx('h-[24px] w-[24px] bg-gray-black mask-cover', className)}\n // tailwindcss seems not support dynamic values in mask-image\n style={{ maskImage: `url(${src})`, WebkitMaskImage: `url(${src})` }}\n />\n )\n}\n\nIcon.Type = ICON_TYPE\nIcon.ReleaseBranch = RELEASE_BRANCH\n\nconst getIcon = (gcsFileName: string, releaseBranch: ReleaseBranch) => {\n return (\n <Icon\n filename={gcsFileName}\n releaseBranch={releaseBranch}\n type={ICON_TYPE.mask}\n />\n )\n}\n\nexport const Hamburger = (releaseBranch: ReleaseBranch) =>\n getIcon('hamburger', releaseBranch)\nexport const Search = (releaseBranch: ReleaseBranch) =>\n getIcon('search', releaseBranch)\nexport const KidStar = (releaseBranch: ReleaseBranch) =>\n getIcon('kid_star', releaseBranch)\nexport const Member = (releaseBranch: ReleaseBranch) =>\n getIcon('member', releaseBranch)\nexport const Cross = (releaseBranch: ReleaseBranch) =>\n getIcon('cross', releaseBranch)\nexport const Home = (releaseBranch: ReleaseBranch) =>\n getIcon('home', releaseBranch)\nexport const Topic = (releaseBranch: ReleaseBranch) =>\n getIcon('topic', releaseBranch)\nexport const Clock = (releaseBranch: ReleaseBranch) =>\n getIcon('clock', releaseBranch)\n\nexport const Arrow: React.FC<{\n direction?: ArrowDirection\n releaseBranch: ReleaseBranch\n}> & {\n Direction: typeof ARROW_DIRECTION\n} = ({ direction = ARROW_DIRECTION.right, releaseBranch }) => {\n const filename = `arrow_${direction}`\n return <Icon filename={filename} releaseBranch={releaseBranch} />\n}\nArrow.Direction = ARROW_DIRECTION\n\ntype SocialMediaProps = {\n type?: IconType\n mediaType: MediaType\n releaseBranch: ReleaseBranch\n}\nexport const SocialMedia: React.FC<SocialMediaProps> & {\n Type: typeof ICON_TYPE\n MediaType: typeof MEDIA_TYPE\n} = ({\n type = Icon.Type.mask,\n mediaType = MEDIA_TYPE.google,\n releaseBranch = Icon.ReleaseBranch.master,\n}) => {\n return <Icon filename={mediaType} type={type} releaseBranch={releaseBranch} />\n}\nSocialMedia.Type = ICON_TYPE\nSocialMedia.MediaType = MEDIA_TYPE\n"],"mappings":";;;;;;AAaA,MAAM,aAAa;AAQnB,MAAaA,QAGR,EACH,OAAO,UAAU,MACjB,UACA,gBAAgB,eAAe,QAC/B,YAAY,SACR;CACJ,MAAM,MAAM,GAAG,aAAa,cAAc,GAAG,SAAS;AAEtD,KAAI,SAAS,UAAU,IACrB,QAEE,oBAAC;EACM;EACL,KAAK;EACL,WAAW,KAAK,qBAAqB,UAAU;GAC/C;AAIN,QACE,oBAAC;EACC,WAAW,KAAK,8CAA8C,UAAU;EAExE,OAAO;GAAE,WAAW,OAAO,IAAI;GAAI,iBAAiB,OAAO,IAAI;GAAI;GACnE;;AAIN,KAAK,OAAO;AACZ,KAAK,gBAAgB;AAErB,MAAM,WAAW,aAAqB,kBAAiC;AACrE,QACE,oBAAC;EACC,UAAU;EACK;EACf,MAAM,UAAU;GAChB;;AAIN,MAAa,aAAa,kBACxB,QAAQ,aAAa,cAAc;AACrC,MAAa,UAAU,kBACrB,QAAQ,UAAU,cAAc;AAClC,MAAa,WAAW,kBACtB,QAAQ,YAAY,cAAc;AACpC,MAAa,UAAU,kBACrB,QAAQ,UAAU,cAAc;AAClC,MAAa,SAAS,kBACpB,QAAQ,SAAS,cAAc;AACjC,MAAa,QAAQ,kBACnB,QAAQ,QAAQ,cAAc;AAChC,MAAa,SAAS,kBACpB,QAAQ,SAAS,cAAc;AACjC,MAAa,SAAS,kBACpB,QAAQ,SAAS,cAAc;AAEjC,MAAaC,SAKR,EAAE,YAAY,gBAAgB,OAAO,oBAAoB;CAC5D,MAAM,WAAW,SAAS;AAC1B,QAAO,oBAAC;EAAe;EAAyB;GAAiB;;AAEnE,MAAM,YAAY;AAOlB,MAAaC,eAGR,EACH,OAAO,KAAK,KAAK,MACjB,YAAY,WAAW,QACvB,gBAAgB,KAAK,cAAc,aAC/B;AACJ,QAAO,oBAAC;EAAK,UAAU;EAAiB;EAAqB;GAAiB;;AAEhF,YAAY,OAAO;AACnB,YAAY,YAAY"}
1
+ {"version":3,"file":"icons-I7T-auOQ.mjs","names":["Icon: React.FC<IconProps> & {\n Type: typeof ICON_TYPE\n ReleaseBranch: typeof RELEASE_BRANCH\n}","Arrow: React.FC<{\n direction?: ArrowDirection\n releaseBranch: ReleaseBranch\n}> & {\n Direction: typeof ARROW_DIRECTION\n}","SocialMedia: React.FC<SocialMediaProps> & {\n Type: typeof ICON_TYPE\n MediaType: typeof MEDIA_TYPE\n}"],"sources":["../src/icons/index.tsx"],"sourcesContent":["import type React from 'react'\nimport clsx from 'clsx'\n\nimport { RELEASE_BRANCH, type ReleaseBranch } from '../constants/release-branch'\nimport {\n ICON_TYPE,\n type IconType,\n ARROW_DIRECTION,\n type ArrowDirection,\n MEDIA_TYPE,\n type MediaType,\n} from './constants'\n\nconst baseGCSDir = 'https://www.twreporter.org/assets/icon/'\n\ntype IconProps = {\n type?: IconType\n filename: string\n releaseBranch?: ReleaseBranch\n className?: string\n}\nexport const Icon: React.FC<IconProps> & {\n Type: typeof ICON_TYPE\n ReleaseBranch: typeof RELEASE_BRANCH\n} = ({\n type = ICON_TYPE.mask,\n filename,\n releaseBranch = RELEASE_BRANCH.master,\n className = '',\n}) => {\n const src = `${baseGCSDir}${releaseBranch}/${filename}.svg`\n\n if (type === ICON_TYPE.raw) {\n return (\n // biome-ignore lint/performance/noImgElement: use next image later\n <img\n src={src}\n alt={filename}\n className={clsx('h-[24px] w-[24px]', className)}\n />\n )\n }\n\n return (\n <svg\n className={clsx('h-[24px] w-[24px] bg-gray-black mask-cover', className)}\n // tailwindcss seems not support dynamic values in mask-image\n style={{ maskImage: `url(${src})`, WebkitMaskImage: `url(${src})` }}\n />\n )\n}\n\nIcon.Type = ICON_TYPE\nIcon.ReleaseBranch = RELEASE_BRANCH\n\nconst getIcon = (gcsFileName: string, releaseBranch: ReleaseBranch) => {\n return (\n <Icon\n filename={gcsFileName}\n releaseBranch={releaseBranch}\n type={ICON_TYPE.mask}\n />\n )\n}\n\nexport const Hamburger = (releaseBranch: ReleaseBranch) =>\n getIcon('hamburger', releaseBranch)\nexport const Search = (releaseBranch: ReleaseBranch) =>\n getIcon('search', releaseBranch)\nexport const KidStar = (releaseBranch: ReleaseBranch) =>\n getIcon('kid_star', releaseBranch)\nexport const Member = (releaseBranch: ReleaseBranch) =>\n getIcon('member', releaseBranch)\nexport const Cross = (releaseBranch: ReleaseBranch) =>\n getIcon('cross', releaseBranch)\nexport const Home = (releaseBranch: ReleaseBranch) =>\n getIcon('home', releaseBranch)\nexport const Topic = (releaseBranch: ReleaseBranch) =>\n getIcon('topic', releaseBranch)\nexport const Clock = (releaseBranch: ReleaseBranch) =>\n getIcon('clock', releaseBranch)\n\nexport const Arrow: React.FC<{\n direction?: ArrowDirection\n releaseBranch: ReleaseBranch\n}> & {\n Direction: typeof ARROW_DIRECTION\n} = ({ direction = ARROW_DIRECTION.right, releaseBranch }) => {\n const filename = `arrow_${direction}`\n return <Icon filename={filename} releaseBranch={releaseBranch} />\n}\nArrow.Direction = ARROW_DIRECTION\n\ntype SocialMediaProps = {\n type?: IconType\n mediaType: MediaType\n releaseBranch: ReleaseBranch\n}\nexport const SocialMedia: React.FC<SocialMediaProps> & {\n Type: typeof ICON_TYPE\n MediaType: typeof MEDIA_TYPE\n} = ({\n type = Icon.Type.mask,\n mediaType = MEDIA_TYPE.google,\n releaseBranch = Icon.ReleaseBranch.master,\n}) => {\n return <Icon filename={mediaType} type={type} releaseBranch={releaseBranch} />\n}\nSocialMedia.Type = ICON_TYPE\nSocialMedia.MediaType = MEDIA_TYPE\n"],"mappings":";;;;;;AAaA,MAAM,aAAa;AAQnB,MAAaA,QAGR,EACH,OAAO,UAAU,MACjB,UACA,gBAAgB,eAAe,QAC/B,YAAY,SACR;CACJ,MAAM,MAAM,GAAG,aAAa,cAAc,GAAG,SAAS;AAEtD,KAAI,SAAS,UAAU,IACrB,QAEE,oBAAC;EACM;EACL,KAAK;EACL,WAAW,KAAK,qBAAqB,UAAU;GAC/C;AAIN,QACE,oBAAC;EACC,WAAW,KAAK,8CAA8C,UAAU;EAExE,OAAO;GAAE,WAAW,OAAO,IAAI;GAAI,iBAAiB,OAAO,IAAI;GAAI;GACnE;;AAIN,KAAK,OAAO;AACZ,KAAK,gBAAgB;AAErB,MAAM,WAAW,aAAqB,kBAAiC;AACrE,QACE,oBAAC;EACC,UAAU;EACK;EACf,MAAM,UAAU;GAChB;;AAIN,MAAa,aAAa,kBACxB,QAAQ,aAAa,cAAc;AACrC,MAAa,UAAU,kBACrB,QAAQ,UAAU,cAAc;AAClC,MAAa,WAAW,kBACtB,QAAQ,YAAY,cAAc;AACpC,MAAa,UAAU,kBACrB,QAAQ,UAAU,cAAc;AAClC,MAAa,SAAS,kBACpB,QAAQ,SAAS,cAAc;AACjC,MAAa,QAAQ,kBACnB,QAAQ,QAAQ,cAAc;AAChC,MAAa,SAAS,kBACpB,QAAQ,SAAS,cAAc;AACjC,MAAa,SAAS,kBACpB,QAAQ,SAAS,cAAc;AAEjC,MAAaC,SAKR,EAAE,YAAY,gBAAgB,OAAO,oBAAoB;CAC5D,MAAM,WAAW,SAAS;AAC1B,QAAO,oBAAC;EAAe;EAAyB;GAAiB;;AAEnE,MAAM,YAAY;AAOlB,MAAaC,eAGR,EACH,OAAO,KAAK,KAAK,MACjB,YAAY,WAAW,QACvB,gBAAgB,KAAK,cAAc,aAC/B;AACJ,QAAO,oBAAC;EAAK,UAAU;EAAiB;EAAqB;GAAiB;;AAEhF,YAAY,OAAO;AACnB,YAAY,YAAY"}
@@ -1,6 +1,6 @@
1
1
  const require_chunk = require('./chunk-BxBTb9qk.js');
2
2
  const require_release_branch = require('./release-branch-CRZV4Ivz.js');
3
- const require_constants = require('./constants-R6EfY15A.js');
3
+ const require_constants = require('./constants-D8wNUvoZ.js');
4
4
  let clsx = require("clsx");
5
5
  clsx = require_chunk.__toESM(clsx);
6
6
  let react_jsx_runtime = require("react/jsx-runtime");
@@ -125,4 +125,4 @@ Object.defineProperty(exports, 'Topic', {
125
125
  return Topic;
126
126
  }
127
127
  });
128
- //# sourceMappingURL=icons-BZI6_5JJ.js.map
128
+ //# sourceMappingURL=icons-qP5oNB0W.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"icons-BZI6_5JJ.js","names":["Icon: React.FC<IconProps> & {\n Type: typeof ICON_TYPE\n ReleaseBranch: typeof RELEASE_BRANCH\n}","ICON_TYPE","RELEASE_BRANCH","Arrow: React.FC<{\n direction?: ArrowDirection\n releaseBranch: ReleaseBranch\n}> & {\n Direction: typeof ARROW_DIRECTION\n}","ARROW_DIRECTION","SocialMedia: React.FC<SocialMediaProps> & {\n Type: typeof ICON_TYPE\n MediaType: typeof MEDIA_TYPE\n}","MEDIA_TYPE"],"sources":["../src/icons/index.tsx"],"sourcesContent":["import type React from 'react'\nimport clsx from 'clsx'\n\nimport { RELEASE_BRANCH, type ReleaseBranch } from '../constants/release-branch'\nimport {\n ICON_TYPE,\n type IconType,\n ARROW_DIRECTION,\n type ArrowDirection,\n MEDIA_TYPE,\n type MediaType,\n} from './constants'\n\nconst baseGCSDir = 'https://www.twreporter.org/assets/icon/'\n\ntype IconProps = {\n type?: IconType\n filename: string\n releaseBranch?: ReleaseBranch\n className?: string\n}\nexport const Icon: React.FC<IconProps> & {\n Type: typeof ICON_TYPE\n ReleaseBranch: typeof RELEASE_BRANCH\n} = ({\n type = ICON_TYPE.mask,\n filename,\n releaseBranch = RELEASE_BRANCH.master,\n className = '',\n}) => {\n const src = `${baseGCSDir}${releaseBranch}/${filename}.svg`\n\n if (type === ICON_TYPE.raw) {\n return (\n // biome-ignore lint/performance/noImgElement: use next image later\n <img\n src={src}\n alt={filename}\n className={clsx('h-[24px] w-[24px]', className)}\n />\n )\n }\n\n return (\n <svg\n className={clsx('h-[24px] w-[24px] bg-gray-black mask-cover', className)}\n // tailwindcss seems not support dynamic values in mask-image\n style={{ maskImage: `url(${src})`, WebkitMaskImage: `url(${src})` }}\n />\n )\n}\n\nIcon.Type = ICON_TYPE\nIcon.ReleaseBranch = RELEASE_BRANCH\n\nconst getIcon = (gcsFileName: string, releaseBranch: ReleaseBranch) => {\n return (\n <Icon\n filename={gcsFileName}\n releaseBranch={releaseBranch}\n type={ICON_TYPE.mask}\n />\n )\n}\n\nexport const Hamburger = (releaseBranch: ReleaseBranch) =>\n getIcon('hamburger', releaseBranch)\nexport const Search = (releaseBranch: ReleaseBranch) =>\n getIcon('search', releaseBranch)\nexport const KidStar = (releaseBranch: ReleaseBranch) =>\n getIcon('kid_star', releaseBranch)\nexport const Member = (releaseBranch: ReleaseBranch) =>\n getIcon('member', releaseBranch)\nexport const Cross = (releaseBranch: ReleaseBranch) =>\n getIcon('cross', releaseBranch)\nexport const Home = (releaseBranch: ReleaseBranch) =>\n getIcon('home', releaseBranch)\nexport const Topic = (releaseBranch: ReleaseBranch) =>\n getIcon('topic', releaseBranch)\nexport const Clock = (releaseBranch: ReleaseBranch) =>\n getIcon('clock', releaseBranch)\n\nexport const Arrow: React.FC<{\n direction?: ArrowDirection\n releaseBranch: ReleaseBranch\n}> & {\n Direction: typeof ARROW_DIRECTION\n} = ({ direction = ARROW_DIRECTION.right, releaseBranch }) => {\n const filename = `arrow_${direction}`\n return <Icon filename={filename} releaseBranch={releaseBranch} />\n}\nArrow.Direction = ARROW_DIRECTION\n\ntype SocialMediaProps = {\n type?: IconType\n mediaType: MediaType\n releaseBranch: ReleaseBranch\n}\nexport const SocialMedia: React.FC<SocialMediaProps> & {\n Type: typeof ICON_TYPE\n MediaType: typeof MEDIA_TYPE\n} = ({\n type = Icon.Type.mask,\n mediaType = MEDIA_TYPE.google,\n releaseBranch = Icon.ReleaseBranch.master,\n}) => {\n return <Icon filename={mediaType} type={type} releaseBranch={releaseBranch} />\n}\nSocialMedia.Type = ICON_TYPE\nSocialMedia.MediaType = MEDIA_TYPE\n"],"mappings":";;;;;;;;;AAaA,MAAM,aAAa;AAQnB,MAAaA,QAGR,EACH,OAAOC,4BAAU,MACjB,UACA,gBAAgBC,sCAAe,QAC/B,YAAY,SACR;CACJ,MAAM,MAAM,GAAG,aAAa,cAAc,GAAG,SAAS;AAEtD,KAAI,SAASD,4BAAU,IACrB,QAEE,2CAAC;EACM;EACL,KAAK;EACL,6BAAgB,qBAAqB,UAAU;GAC/C;AAIN,QACE,2CAAC;EACC,6BAAgB,8CAA8C,UAAU;EAExE,OAAO;GAAE,WAAW,OAAO,IAAI;GAAI,iBAAiB,OAAO,IAAI;GAAI;GACnE;;AAIN,KAAK,OAAOA;AACZ,KAAK,gBAAgBC;AAErB,MAAM,WAAW,aAAqB,kBAAiC;AACrE,QACE,2CAAC;EACC,UAAU;EACK;EACf,MAAMD,4BAAU;GAChB;;AAIN,MAAa,aAAa,kBACxB,QAAQ,aAAa,cAAc;AACrC,MAAa,UAAU,kBACrB,QAAQ,UAAU,cAAc;AAClC,MAAa,WAAW,kBACtB,QAAQ,YAAY,cAAc;AACpC,MAAa,UAAU,kBACrB,QAAQ,UAAU,cAAc;AAClC,MAAa,SAAS,kBACpB,QAAQ,SAAS,cAAc;AACjC,MAAa,QAAQ,kBACnB,QAAQ,QAAQ,cAAc;AAChC,MAAa,SAAS,kBACpB,QAAQ,SAAS,cAAc;AACjC,MAAa,SAAS,kBACpB,QAAQ,SAAS,cAAc;AAEjC,MAAaE,SAKR,EAAE,YAAYC,kCAAgB,OAAO,oBAAoB;CAC5D,MAAM,WAAW,SAAS;AAC1B,QAAO,2CAAC;EAAe;EAAyB;GAAiB;;AAEnE,MAAM,YAAYA;AAOlB,MAAaC,eAGR,EACH,OAAO,KAAK,KAAK,MACjB,YAAYC,6BAAW,QACvB,gBAAgB,KAAK,cAAc,aAC/B;AACJ,QAAO,2CAAC;EAAK,UAAU;EAAiB;EAAqB;GAAiB;;AAEhF,YAAY,OAAOL;AACnB,YAAY,YAAYK"}
1
+ {"version":3,"file":"icons-qP5oNB0W.js","names":["Icon: React.FC<IconProps> & {\n Type: typeof ICON_TYPE\n ReleaseBranch: typeof RELEASE_BRANCH\n}","ICON_TYPE","RELEASE_BRANCH","Arrow: React.FC<{\n direction?: ArrowDirection\n releaseBranch: ReleaseBranch\n}> & {\n Direction: typeof ARROW_DIRECTION\n}","ARROW_DIRECTION","SocialMedia: React.FC<SocialMediaProps> & {\n Type: typeof ICON_TYPE\n MediaType: typeof MEDIA_TYPE\n}","MEDIA_TYPE"],"sources":["../src/icons/index.tsx"],"sourcesContent":["import type React from 'react'\nimport clsx from 'clsx'\n\nimport { RELEASE_BRANCH, type ReleaseBranch } from '../constants/release-branch'\nimport {\n ICON_TYPE,\n type IconType,\n ARROW_DIRECTION,\n type ArrowDirection,\n MEDIA_TYPE,\n type MediaType,\n} from './constants'\n\nconst baseGCSDir = 'https://www.twreporter.org/assets/icon/'\n\ntype IconProps = {\n type?: IconType\n filename: string\n releaseBranch?: ReleaseBranch\n className?: string\n}\nexport const Icon: React.FC<IconProps> & {\n Type: typeof ICON_TYPE\n ReleaseBranch: typeof RELEASE_BRANCH\n} = ({\n type = ICON_TYPE.mask,\n filename,\n releaseBranch = RELEASE_BRANCH.master,\n className = '',\n}) => {\n const src = `${baseGCSDir}${releaseBranch}/${filename}.svg`\n\n if (type === ICON_TYPE.raw) {\n return (\n // biome-ignore lint/performance/noImgElement: use next image later\n <img\n src={src}\n alt={filename}\n className={clsx('h-[24px] w-[24px]', className)}\n />\n )\n }\n\n return (\n <svg\n className={clsx('h-[24px] w-[24px] bg-gray-black mask-cover', className)}\n // tailwindcss seems not support dynamic values in mask-image\n style={{ maskImage: `url(${src})`, WebkitMaskImage: `url(${src})` }}\n />\n )\n}\n\nIcon.Type = ICON_TYPE\nIcon.ReleaseBranch = RELEASE_BRANCH\n\nconst getIcon = (gcsFileName: string, releaseBranch: ReleaseBranch) => {\n return (\n <Icon\n filename={gcsFileName}\n releaseBranch={releaseBranch}\n type={ICON_TYPE.mask}\n />\n )\n}\n\nexport const Hamburger = (releaseBranch: ReleaseBranch) =>\n getIcon('hamburger', releaseBranch)\nexport const Search = (releaseBranch: ReleaseBranch) =>\n getIcon('search', releaseBranch)\nexport const KidStar = (releaseBranch: ReleaseBranch) =>\n getIcon('kid_star', releaseBranch)\nexport const Member = (releaseBranch: ReleaseBranch) =>\n getIcon('member', releaseBranch)\nexport const Cross = (releaseBranch: ReleaseBranch) =>\n getIcon('cross', releaseBranch)\nexport const Home = (releaseBranch: ReleaseBranch) =>\n getIcon('home', releaseBranch)\nexport const Topic = (releaseBranch: ReleaseBranch) =>\n getIcon('topic', releaseBranch)\nexport const Clock = (releaseBranch: ReleaseBranch) =>\n getIcon('clock', releaseBranch)\n\nexport const Arrow: React.FC<{\n direction?: ArrowDirection\n releaseBranch: ReleaseBranch\n}> & {\n Direction: typeof ARROW_DIRECTION\n} = ({ direction = ARROW_DIRECTION.right, releaseBranch }) => {\n const filename = `arrow_${direction}`\n return <Icon filename={filename} releaseBranch={releaseBranch} />\n}\nArrow.Direction = ARROW_DIRECTION\n\ntype SocialMediaProps = {\n type?: IconType\n mediaType: MediaType\n releaseBranch: ReleaseBranch\n}\nexport const SocialMedia: React.FC<SocialMediaProps> & {\n Type: typeof ICON_TYPE\n MediaType: typeof MEDIA_TYPE\n} = ({\n type = Icon.Type.mask,\n mediaType = MEDIA_TYPE.google,\n releaseBranch = Icon.ReleaseBranch.master,\n}) => {\n return <Icon filename={mediaType} type={type} releaseBranch={releaseBranch} />\n}\nSocialMedia.Type = ICON_TYPE\nSocialMedia.MediaType = MEDIA_TYPE\n"],"mappings":";;;;;;;;;AAaA,MAAM,aAAa;AAQnB,MAAaA,QAGR,EACH,OAAOC,4BAAU,MACjB,UACA,gBAAgBC,sCAAe,QAC/B,YAAY,SACR;CACJ,MAAM,MAAM,GAAG,aAAa,cAAc,GAAG,SAAS;AAEtD,KAAI,SAASD,4BAAU,IACrB,QAEE,2CAAC;EACM;EACL,KAAK;EACL,6BAAgB,qBAAqB,UAAU;GAC/C;AAIN,QACE,2CAAC;EACC,6BAAgB,8CAA8C,UAAU;EAExE,OAAO;GAAE,WAAW,OAAO,IAAI;GAAI,iBAAiB,OAAO,IAAI;GAAI;GACnE;;AAIN,KAAK,OAAOA;AACZ,KAAK,gBAAgBC;AAErB,MAAM,WAAW,aAAqB,kBAAiC;AACrE,QACE,2CAAC;EACC,UAAU;EACK;EACf,MAAMD,4BAAU;GAChB;;AAIN,MAAa,aAAa,kBACxB,QAAQ,aAAa,cAAc;AACrC,MAAa,UAAU,kBACrB,QAAQ,UAAU,cAAc;AAClC,MAAa,WAAW,kBACtB,QAAQ,YAAY,cAAc;AACpC,MAAa,UAAU,kBACrB,QAAQ,UAAU,cAAc;AAClC,MAAa,SAAS,kBACpB,QAAQ,SAAS,cAAc;AACjC,MAAa,QAAQ,kBACnB,QAAQ,QAAQ,cAAc;AAChC,MAAa,SAAS,kBACpB,QAAQ,SAAS,cAAc;AACjC,MAAa,SAAS,kBACpB,QAAQ,SAAS,cAAc;AAEjC,MAAaE,SAKR,EAAE,YAAYC,kCAAgB,OAAO,oBAAoB;CAC5D,MAAM,WAAW,SAAS;AAC1B,QAAO,2CAAC;EAAe;EAAyB;GAAiB;;AAEnE,MAAM,YAAYA;AAOlB,MAAaC,eAGR,EACH,OAAO,KAAK,KAAK,MACjB,YAAYC,6BAAW,QACvB,gBAAgB,KAAK,cAAc,aAC/B;AACJ,QAAO,2CAAC;EAAK,UAAU;EAAiB;EAAqB;GAAiB;;AAEhF,YAAY,OAAOL;AACnB,YAAY,YAAYK"}
@@ -1,7 +1,7 @@
1
1
  import "../index-CUE6zs36.mjs";
2
2
  import { THEME, Theme } from "../theme-DKi2E2si.mjs";
3
3
  import { ReleaseBranch } from "../release-branch-uF0B5lcE.mjs";
4
- import * as react10 from "react";
4
+ import * as react16 from "react";
5
5
  import { FC } from "react";
6
6
 
7
7
  //#region src/input/components/search-bar.d.ts
@@ -22,7 +22,7 @@ declare const SearchBar: FC<SearchBarProps> & {
22
22
  //#endregion
23
23
  //#region src/input/index.d.ts
24
24
  declare const _default: {
25
- SearchBar: react10.FC<{
25
+ SearchBar: react16.FC<{
26
26
  placeholder?: string;
27
27
  theme?: Theme;
28
28
  releaseBranch?: ReleaseBranch;
@@ -1,7 +1,7 @@
1
1
  import "../index-H3peA2d_.js";
2
2
  import { THEME, Theme } from "../theme-BDGfJ8n-.js";
3
3
  import { ReleaseBranch } from "../release-branch-CsBbhuYE.js";
4
- import * as react10 from "react";
4
+ import * as react6 from "react";
5
5
  import { FC } from "react";
6
6
 
7
7
  //#region src/input/components/search-bar.d.ts
@@ -22,7 +22,7 @@ declare const SearchBar: FC<SearchBarProps> & {
22
22
  //#endregion
23
23
  //#region src/input/index.d.ts
24
24
  declare const _default: {
25
- SearchBar: react10.FC<{
25
+ SearchBar: react6.FC<{
26
26
  placeholder?: string;
27
27
  theme?: Theme;
28
28
  releaseBranch?: ReleaseBranch;
@@ -5,10 +5,10 @@ require('../paragraph-iuz3jP0Q.js');
5
5
  require('../theme-DDBlIbeS.js');
6
6
  require('../button-Dk0MxlKd.js');
7
7
  require('../release-branch-CRZV4Ivz.js');
8
- require('../constants-R6EfY15A.js');
9
- require('../icons-BZI6_5JJ.js');
10
- require('../theme-BLdi7Moc.js');
11
- const require_input = require('../input-e0a-Wul_.js');
8
+ require('../constants-D8wNUvoZ.js');
9
+ require('../icons-qP5oNB0W.js');
10
+ require('../theme-Cv8rt4oO.js');
11
+ const require_input = require('../input-VmgNb9pm.js');
12
12
 
13
13
  exports.SearchBar = require_input.search_bar_default;
14
14
  exports.default = require_input.input_default;
@@ -4,9 +4,9 @@ import "../paragraph-Cf9jr8RF.mjs";
4
4
  import "../theme-BG6yZVj-.mjs";
5
5
  import "../button-D_AWI7r9.mjs";
6
6
  import "../release-branch-DNCD1uH_.mjs";
7
- import "../constants-Npoq7yu0.mjs";
8
- import "../icons-C5UqghX2.mjs";
9
- import "../theme-DURvzYaJ.mjs";
10
- import { input_default, search_bar_default } from "../input-BJWcutA3.mjs";
7
+ import "../constants-5phfWHvb.mjs";
8
+ import "../icons-I7T-auOQ.mjs";
9
+ import "../theme-Bgd_TUHZ.mjs";
10
+ import { input_default, search_bar_default } from "../input-BU_QJnbj.mjs";
11
11
 
12
12
  export { search_bar_default as SearchBar, input_default as default };
@@ -1,4 +1,4 @@
1
1
  require('../theme-DDBlIbeS.js');
2
- const require_theme$1 = require('../theme-BLdi7Moc.js');
2
+ const require_theme$1 = require('../theme-Cv8rt4oO.js');
3
3
 
4
4
  exports.selectThemeStyle = require_theme$1.selectThemeStyle;
@@ -1,4 +1,4 @@
1
1
  import "../theme-BG6yZVj-.mjs";
2
- import { selectThemeStyle } from "../theme-DURvzYaJ.mjs";
2
+ import { selectThemeStyle } from "../theme-Bgd_TUHZ.mjs";
3
3
 
4
4
  export { selectThemeStyle };
@@ -1,8 +1,8 @@
1
1
  import { THEME } from "./theme-BG6yZVj-.mjs";
2
2
  import { icon_button_default } from "./button-D_AWI7r9.mjs";
3
3
  import { RELEASE_BRANCH } from "./release-branch-DNCD1uH_.mjs";
4
- import { Cross, Search } from "./icons-C5UqghX2.mjs";
5
- import { selectThemeStyle } from "./theme-DURvzYaJ.mjs";
4
+ import { Cross, Search } from "./icons-I7T-auOQ.mjs";
5
+ import { selectThemeStyle } from "./theme-Bgd_TUHZ.mjs";
6
6
  import { useState } from "react";
7
7
  import clsx from "clsx";
8
8
  import { jsx, jsxs } from "react/jsx-runtime";
@@ -68,4 +68,4 @@ var input_default = { SearchBar: search_bar_default };
68
68
 
69
69
  //#endregion
70
70
  export { input_default, search_bar_default };
71
- //# sourceMappingURL=input-BJWcutA3.mjs.map
71
+ //# sourceMappingURL=input-BU_QJnbj.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"input-BJWcutA3.mjs","names":["SearchBar: FC<SearchBarProps> & {\n Theme: typeof THEME\n}","IconButton"],"sources":["../src/input/components/search-bar.tsx","../src/input/index.ts"],"sourcesContent":["import { useState } from 'react'\nimport type { FC, FormEvent, ChangeEvent } from 'react'\nimport clsx from 'clsx'\n// constants\nimport { THEME, type Theme } from '../../constants/theme'\nimport {\n RELEASE_BRANCH,\n type ReleaseBranch,\n} from '../../constants/release-branch'\n// theme\nimport { selectThemeStyle } from '../theme'\n// icons\nimport { Cross, Search } from '../../icons'\n// button\nimport { IconButton } from '../../button'\n\nconst defaultFunc = () => {}\ntype SearchBarProps = {\n placeholder?: string\n theme?: Theme\n releaseBranch?: ReleaseBranch\n onSearch?: (keywords: string) => void\n onClose?: () => void\n handleBlur?: () => void\n autoFocus?: boolean\n className?: string\n searchBarWidth?: string\n}\nconst SearchBar: FC<SearchBarProps> & {\n Theme: typeof THEME\n} = ({\n placeholder = '',\n theme = THEME.normal,\n releaseBranch = RELEASE_BRANCH.master,\n onSearch = defaultFunc,\n onClose = defaultFunc,\n handleBlur = defaultFunc,\n autoFocus = true,\n className = '',\n searchBarWidth = 'w-fit',\n}) => {\n const [keywords, setKeywords] = useState('')\n const [focus, setFocus] = useState(false)\n const {\n bgColor,\n focusBgColor,\n desktopBgColor,\n borderColor,\n color,\n focusColor,\n placeholderColor,\n } = selectThemeStyle(theme)\n const onFocus = () => setFocus(true)\n const onBlur = () => {\n setFocus(false)\n handleBlur()\n }\n const onSubmit = (e: FormEvent<HTMLFormElement>) => {\n e.preventDefault()\n onSearch(keywords)\n }\n const onChange = (e: ChangeEvent<HTMLInputElement>) => {\n const input = e.currentTarget.value\n setKeywords(input)\n }\n const onReset = (e: FormEvent<HTMLFormElement>) => {\n e.preventDefault()\n setKeywords('')\n }\n\n return (\n <form\n className={clsx('flex items-center', className)}\n noValidate\n onSubmit={onSubmit}\n onReset={onReset}\n onFocus={onFocus}\n >\n <div\n className={clsx(\n 'flex items-center py-[8px] px-[16px] rounded-[40px] border-[1px] border-solid gap-[8px]',\n searchBarWidth,\n bgColor,\n focus\n ? clsx(focusBgColor, borderColor, desktopBgColor)\n : 'border-transparent'\n )}\n >\n <input\n type=\"search\"\n placeholder={placeholder}\n value={keywords}\n onChange={onChange}\n onBlur={onBlur}\n // biome-ignore lint/a11y/noAutofocus: autoFocus is intentionally used to focus the search input for better UX\n autoFocus={autoFocus}\n className={clsx(\n 'h-[24px] text-[14px] focus-visible:border-0 font-default w-[fill-available] w-[-webkit-fill-available]',\n 'focus-visible:outline-0 focus-visible:border-transparent [&::-webkit-search-cancel-button]:hidden',\n color,\n placeholderColor,\n focusColor\n )}\n />\n <IconButton\n theme={theme}\n iconComponent={Search(releaseBranch)}\n onClick={() => onSearch(keywords)}\n />\n </div>\n <IconButton\n theme={theme}\n iconComponent={Cross(releaseBranch)}\n onClick={onClose}\n className={clsx('ml-[8px] hidden', 'desktop:inline-flex')}\n />\n </form>\n )\n}\nSearchBar.Theme = THEME\n\nexport default SearchBar\n","import SearchBar from './components/search-bar'\n\nexport { SearchBar }\n\nexport default {\n SearchBar,\n}\n"],"mappings":";;;;;;;;;;AAgBA,MAAM,oBAAoB;AAY1B,MAAMA,aAED,EACH,cAAc,IACd,QAAQ,MAAM,QACd,gBAAgB,eAAe,QAC/B,WAAW,aACX,UAAU,aACV,aAAa,aACb,YAAY,MACZ,YAAY,IACZ,iBAAiB,cACb;CACJ,MAAM,CAAC,UAAU,eAAe,SAAS,GAAG;CAC5C,MAAM,CAAC,OAAO,YAAY,SAAS,MAAM;CACzC,MAAM,EACJ,SACA,cACA,gBACA,aACA,OACA,YACA,qBACE,iBAAiB,MAAM;CAC3B,MAAM,gBAAgB,SAAS,KAAK;CACpC,MAAM,eAAe;AACnB,WAAS,MAAM;AACf,cAAY;;CAEd,MAAM,YAAY,MAAkC;AAClD,IAAE,gBAAgB;AAClB,WAAS,SAAS;;CAEpB,MAAM,YAAY,MAAqC;EACrD,MAAM,QAAQ,EAAE,cAAc;AAC9B,cAAY,MAAM;;CAEpB,MAAM,WAAW,MAAkC;AACjD,IAAE,gBAAgB;AAClB,cAAY,GAAG;;AAGjB,QACE,qBAAC;EACC,WAAW,KAAK,qBAAqB,UAAU;EAC/C;EACU;EACD;EACA;aAET,qBAAC;GACC,WAAW,KACT,2FACA,gBACA,SACA,QACI,KAAK,cAAc,aAAa,eAAe,GAC/C,qBACL;cAED,oBAAC;IACC,MAAK;IACQ;IACb,OAAO;IACG;IACF;IAEG;IACX,WAAW,KACT,0GACA,qGACA,OACA,kBACA,WACD;KACD,EACF,oBAACC;IACQ;IACP,eAAe,OAAO,cAAc;IACpC,eAAe,SAAS,SAAS;KACjC;IACE,EACN,oBAACA;GACQ;GACP,eAAe,MAAM,cAAc;GACnC,SAAS;GACT,WAAW,KAAK,mBAAmB,sBAAsB;IACzD;GACG;;AAGX,UAAU,QAAQ;AAElB,yBAAe;;;;ACrHf,oBAAe,EACb,+BACD"}
1
+ {"version":3,"file":"input-BU_QJnbj.mjs","names":["SearchBar: FC<SearchBarProps> & {\n Theme: typeof THEME\n}","IconButton"],"sources":["../src/input/components/search-bar.tsx","../src/input/index.ts"],"sourcesContent":["import { useState } from 'react'\nimport type { FC, FormEvent, ChangeEvent } from 'react'\nimport clsx from 'clsx'\n// constants\nimport { THEME, type Theme } from '../../constants/theme'\nimport {\n RELEASE_BRANCH,\n type ReleaseBranch,\n} from '../../constants/release-branch'\n// theme\nimport { selectThemeStyle } from '../theme'\n// icons\nimport { Cross, Search } from '../../icons'\n// button\nimport { IconButton } from '../../button'\n\nconst defaultFunc = () => {}\ntype SearchBarProps = {\n placeholder?: string\n theme?: Theme\n releaseBranch?: ReleaseBranch\n onSearch?: (keywords: string) => void\n onClose?: () => void\n handleBlur?: () => void\n autoFocus?: boolean\n className?: string\n searchBarWidth?: string\n}\nconst SearchBar: FC<SearchBarProps> & {\n Theme: typeof THEME\n} = ({\n placeholder = '',\n theme = THEME.normal,\n releaseBranch = RELEASE_BRANCH.master,\n onSearch = defaultFunc,\n onClose = defaultFunc,\n handleBlur = defaultFunc,\n autoFocus = true,\n className = '',\n searchBarWidth = 'w-fit',\n}) => {\n const [keywords, setKeywords] = useState('')\n const [focus, setFocus] = useState(false)\n const {\n bgColor,\n focusBgColor,\n desktopBgColor,\n borderColor,\n color,\n focusColor,\n placeholderColor,\n } = selectThemeStyle(theme)\n const onFocus = () => setFocus(true)\n const onBlur = () => {\n setFocus(false)\n handleBlur()\n }\n const onSubmit = (e: FormEvent<HTMLFormElement>) => {\n e.preventDefault()\n onSearch(keywords)\n }\n const onChange = (e: ChangeEvent<HTMLInputElement>) => {\n const input = e.currentTarget.value\n setKeywords(input)\n }\n const onReset = (e: FormEvent<HTMLFormElement>) => {\n e.preventDefault()\n setKeywords('')\n }\n\n return (\n <form\n className={clsx('flex items-center', className)}\n noValidate\n onSubmit={onSubmit}\n onReset={onReset}\n onFocus={onFocus}\n >\n <div\n className={clsx(\n 'flex items-center py-[8px] px-[16px] rounded-[40px] border-[1px] border-solid gap-[8px]',\n searchBarWidth,\n bgColor,\n focus\n ? clsx(focusBgColor, borderColor, desktopBgColor)\n : 'border-transparent'\n )}\n >\n <input\n type=\"search\"\n placeholder={placeholder}\n value={keywords}\n onChange={onChange}\n onBlur={onBlur}\n // biome-ignore lint/a11y/noAutofocus: autoFocus is intentionally used to focus the search input for better UX\n autoFocus={autoFocus}\n className={clsx(\n 'h-[24px] text-[14px] focus-visible:border-0 font-default w-[fill-available] w-[-webkit-fill-available]',\n 'focus-visible:outline-0 focus-visible:border-transparent [&::-webkit-search-cancel-button]:hidden',\n color,\n placeholderColor,\n focusColor\n )}\n />\n <IconButton\n theme={theme}\n iconComponent={Search(releaseBranch)}\n onClick={() => onSearch(keywords)}\n />\n </div>\n <IconButton\n theme={theme}\n iconComponent={Cross(releaseBranch)}\n onClick={onClose}\n className={clsx('ml-[8px] hidden', 'desktop:inline-flex')}\n />\n </form>\n )\n}\nSearchBar.Theme = THEME\n\nexport default SearchBar\n","import SearchBar from './components/search-bar'\n\nexport { SearchBar }\n\nexport default {\n SearchBar,\n}\n"],"mappings":";;;;;;;;;;AAgBA,MAAM,oBAAoB;AAY1B,MAAMA,aAED,EACH,cAAc,IACd,QAAQ,MAAM,QACd,gBAAgB,eAAe,QAC/B,WAAW,aACX,UAAU,aACV,aAAa,aACb,YAAY,MACZ,YAAY,IACZ,iBAAiB,cACb;CACJ,MAAM,CAAC,UAAU,eAAe,SAAS,GAAG;CAC5C,MAAM,CAAC,OAAO,YAAY,SAAS,MAAM;CACzC,MAAM,EACJ,SACA,cACA,gBACA,aACA,OACA,YACA,qBACE,iBAAiB,MAAM;CAC3B,MAAM,gBAAgB,SAAS,KAAK;CACpC,MAAM,eAAe;AACnB,WAAS,MAAM;AACf,cAAY;;CAEd,MAAM,YAAY,MAAkC;AAClD,IAAE,gBAAgB;AAClB,WAAS,SAAS;;CAEpB,MAAM,YAAY,MAAqC;EACrD,MAAM,QAAQ,EAAE,cAAc;AAC9B,cAAY,MAAM;;CAEpB,MAAM,WAAW,MAAkC;AACjD,IAAE,gBAAgB;AAClB,cAAY,GAAG;;AAGjB,QACE,qBAAC;EACC,WAAW,KAAK,qBAAqB,UAAU;EAC/C;EACU;EACD;EACA;aAET,qBAAC;GACC,WAAW,KACT,2FACA,gBACA,SACA,QACI,KAAK,cAAc,aAAa,eAAe,GAC/C,qBACL;cAED,oBAAC;IACC,MAAK;IACQ;IACb,OAAO;IACG;IACF;IAEG;IACX,WAAW,KACT,0GACA,qGACA,OACA,kBACA,WACD;KACD,EACF,oBAACC;IACQ;IACP,eAAe,OAAO,cAAc;IACpC,eAAe,SAAS,SAAS;KACjC;IACE,EACN,oBAACA;GACQ;GACP,eAAe,MAAM,cAAc;GACnC,SAAS;GACT,WAAW,KAAK,mBAAmB,sBAAsB;IACzD;GACG;;AAGX,UAAU,QAAQ;AAElB,yBAAe;;;;ACrHf,oBAAe,EACb,+BACD"}
@@ -2,8 +2,8 @@ const require_chunk = require('./chunk-BxBTb9qk.js');
2
2
  const require_theme = require('./theme-DDBlIbeS.js');
3
3
  const require_button = require('./button-Dk0MxlKd.js');
4
4
  const require_release_branch = require('./release-branch-CRZV4Ivz.js');
5
- const require_icons = require('./icons-BZI6_5JJ.js');
6
- const require_theme$1 = require('./theme-BLdi7Moc.js');
5
+ const require_icons = require('./icons-qP5oNB0W.js');
6
+ const require_theme$1 = require('./theme-Cv8rt4oO.js');
7
7
  let react = require("react");
8
8
  react = require_chunk.__toESM(react);
9
9
  let clsx = require("clsx");
@@ -83,4 +83,4 @@ Object.defineProperty(exports, 'search_bar_default', {
83
83
  return search_bar_default;
84
84
  }
85
85
  });
86
- //# sourceMappingURL=input-e0a-Wul_.js.map
86
+ //# sourceMappingURL=input-VmgNb9pm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"input-e0a-Wul_.js","names":["SearchBar: FC<SearchBarProps> & {\n Theme: typeof THEME\n}","THEME","RELEASE_BRANCH","selectThemeStyle","IconButton","Search","Cross"],"sources":["../src/input/components/search-bar.tsx","../src/input/index.ts"],"sourcesContent":["import { useState } from 'react'\nimport type { FC, FormEvent, ChangeEvent } from 'react'\nimport clsx from 'clsx'\n// constants\nimport { THEME, type Theme } from '../../constants/theme'\nimport {\n RELEASE_BRANCH,\n type ReleaseBranch,\n} from '../../constants/release-branch'\n// theme\nimport { selectThemeStyle } from '../theme'\n// icons\nimport { Cross, Search } from '../../icons'\n// button\nimport { IconButton } from '../../button'\n\nconst defaultFunc = () => {}\ntype SearchBarProps = {\n placeholder?: string\n theme?: Theme\n releaseBranch?: ReleaseBranch\n onSearch?: (keywords: string) => void\n onClose?: () => void\n handleBlur?: () => void\n autoFocus?: boolean\n className?: string\n searchBarWidth?: string\n}\nconst SearchBar: FC<SearchBarProps> & {\n Theme: typeof THEME\n} = ({\n placeholder = '',\n theme = THEME.normal,\n releaseBranch = RELEASE_BRANCH.master,\n onSearch = defaultFunc,\n onClose = defaultFunc,\n handleBlur = defaultFunc,\n autoFocus = true,\n className = '',\n searchBarWidth = 'w-fit',\n}) => {\n const [keywords, setKeywords] = useState('')\n const [focus, setFocus] = useState(false)\n const {\n bgColor,\n focusBgColor,\n desktopBgColor,\n borderColor,\n color,\n focusColor,\n placeholderColor,\n } = selectThemeStyle(theme)\n const onFocus = () => setFocus(true)\n const onBlur = () => {\n setFocus(false)\n handleBlur()\n }\n const onSubmit = (e: FormEvent<HTMLFormElement>) => {\n e.preventDefault()\n onSearch(keywords)\n }\n const onChange = (e: ChangeEvent<HTMLInputElement>) => {\n const input = e.currentTarget.value\n setKeywords(input)\n }\n const onReset = (e: FormEvent<HTMLFormElement>) => {\n e.preventDefault()\n setKeywords('')\n }\n\n return (\n <form\n className={clsx('flex items-center', className)}\n noValidate\n onSubmit={onSubmit}\n onReset={onReset}\n onFocus={onFocus}\n >\n <div\n className={clsx(\n 'flex items-center py-[8px] px-[16px] rounded-[40px] border-[1px] border-solid gap-[8px]',\n searchBarWidth,\n bgColor,\n focus\n ? clsx(focusBgColor, borderColor, desktopBgColor)\n : 'border-transparent'\n )}\n >\n <input\n type=\"search\"\n placeholder={placeholder}\n value={keywords}\n onChange={onChange}\n onBlur={onBlur}\n // biome-ignore lint/a11y/noAutofocus: autoFocus is intentionally used to focus the search input for better UX\n autoFocus={autoFocus}\n className={clsx(\n 'h-[24px] text-[14px] focus-visible:border-0 font-default w-[fill-available] w-[-webkit-fill-available]',\n 'focus-visible:outline-0 focus-visible:border-transparent [&::-webkit-search-cancel-button]:hidden',\n color,\n placeholderColor,\n focusColor\n )}\n />\n <IconButton\n theme={theme}\n iconComponent={Search(releaseBranch)}\n onClick={() => onSearch(keywords)}\n />\n </div>\n <IconButton\n theme={theme}\n iconComponent={Cross(releaseBranch)}\n onClick={onClose}\n className={clsx('ml-[8px] hidden', 'desktop:inline-flex')}\n />\n </form>\n )\n}\nSearchBar.Theme = THEME\n\nexport default SearchBar\n","import SearchBar from './components/search-bar'\n\nexport { SearchBar }\n\nexport default {\n SearchBar,\n}\n"],"mappings":";;;;;;;;;;;;;;AAgBA,MAAM,oBAAoB;AAY1B,MAAMA,aAED,EACH,cAAc,IACd,QAAQC,oBAAM,QACd,gBAAgBC,sCAAe,QAC/B,WAAW,aACX,UAAU,aACV,aAAa,aACb,YAAY,MACZ,YAAY,IACZ,iBAAiB,cACb;CACJ,MAAM,CAAC,UAAU,mCAAwB,GAAG;CAC5C,MAAM,CAAC,OAAO,gCAAqB,MAAM;CACzC,MAAM,EACJ,SACA,cACA,gBACA,aACA,OACA,YACA,qBACEC,iCAAiB,MAAM;CAC3B,MAAM,gBAAgB,SAAS,KAAK;CACpC,MAAM,eAAe;AACnB,WAAS,MAAM;AACf,cAAY;;CAEd,MAAM,YAAY,MAAkC;AAClD,IAAE,gBAAgB;AAClB,WAAS,SAAS;;CAEpB,MAAM,YAAY,MAAqC;EACrD,MAAM,QAAQ,EAAE,cAAc;AAC9B,cAAY,MAAM;;CAEpB,MAAM,WAAW,MAAkC;AACjD,IAAE,gBAAgB;AAClB,cAAY,GAAG;;AAGjB,QACE,4CAAC;EACC,6BAAgB,qBAAqB,UAAU;EAC/C;EACU;EACD;EACA;aAET,4CAAC;GACC,6BACE,2FACA,gBACA,SACA,0BACS,cAAc,aAAa,eAAe,GAC/C,qBACL;cAED,2CAAC;IACC,MAAK;IACQ;IACb,OAAO;IACG;IACF;IAEG;IACX,6BACE,0GACA,qGACA,OACA,kBACA,WACD;KACD,EACF,2CAACC;IACQ;IACP,eAAeC,qBAAO,cAAc;IACpC,eAAe,SAAS,SAAS;KACjC;IACE,EACN,2CAACD;GACQ;GACP,eAAeE,oBAAM,cAAc;GACnC,SAAS;GACT,6BAAgB,mBAAmB,sBAAsB;IACzD;GACG;;AAGX,UAAU,QAAQL;AAElB,yBAAe;;;;ACrHf,oBAAe,EACb,+BACD"}
1
+ {"version":3,"file":"input-VmgNb9pm.js","names":["SearchBar: FC<SearchBarProps> & {\n Theme: typeof THEME\n}","THEME","RELEASE_BRANCH","selectThemeStyle","IconButton","Search","Cross"],"sources":["../src/input/components/search-bar.tsx","../src/input/index.ts"],"sourcesContent":["import { useState } from 'react'\nimport type { FC, FormEvent, ChangeEvent } from 'react'\nimport clsx from 'clsx'\n// constants\nimport { THEME, type Theme } from '../../constants/theme'\nimport {\n RELEASE_BRANCH,\n type ReleaseBranch,\n} from '../../constants/release-branch'\n// theme\nimport { selectThemeStyle } from '../theme'\n// icons\nimport { Cross, Search } from '../../icons'\n// button\nimport { IconButton } from '../../button'\n\nconst defaultFunc = () => {}\ntype SearchBarProps = {\n placeholder?: string\n theme?: Theme\n releaseBranch?: ReleaseBranch\n onSearch?: (keywords: string) => void\n onClose?: () => void\n handleBlur?: () => void\n autoFocus?: boolean\n className?: string\n searchBarWidth?: string\n}\nconst SearchBar: FC<SearchBarProps> & {\n Theme: typeof THEME\n} = ({\n placeholder = '',\n theme = THEME.normal,\n releaseBranch = RELEASE_BRANCH.master,\n onSearch = defaultFunc,\n onClose = defaultFunc,\n handleBlur = defaultFunc,\n autoFocus = true,\n className = '',\n searchBarWidth = 'w-fit',\n}) => {\n const [keywords, setKeywords] = useState('')\n const [focus, setFocus] = useState(false)\n const {\n bgColor,\n focusBgColor,\n desktopBgColor,\n borderColor,\n color,\n focusColor,\n placeholderColor,\n } = selectThemeStyle(theme)\n const onFocus = () => setFocus(true)\n const onBlur = () => {\n setFocus(false)\n handleBlur()\n }\n const onSubmit = (e: FormEvent<HTMLFormElement>) => {\n e.preventDefault()\n onSearch(keywords)\n }\n const onChange = (e: ChangeEvent<HTMLInputElement>) => {\n const input = e.currentTarget.value\n setKeywords(input)\n }\n const onReset = (e: FormEvent<HTMLFormElement>) => {\n e.preventDefault()\n setKeywords('')\n }\n\n return (\n <form\n className={clsx('flex items-center', className)}\n noValidate\n onSubmit={onSubmit}\n onReset={onReset}\n onFocus={onFocus}\n >\n <div\n className={clsx(\n 'flex items-center py-[8px] px-[16px] rounded-[40px] border-[1px] border-solid gap-[8px]',\n searchBarWidth,\n bgColor,\n focus\n ? clsx(focusBgColor, borderColor, desktopBgColor)\n : 'border-transparent'\n )}\n >\n <input\n type=\"search\"\n placeholder={placeholder}\n value={keywords}\n onChange={onChange}\n onBlur={onBlur}\n // biome-ignore lint/a11y/noAutofocus: autoFocus is intentionally used to focus the search input for better UX\n autoFocus={autoFocus}\n className={clsx(\n 'h-[24px] text-[14px] focus-visible:border-0 font-default w-[fill-available] w-[-webkit-fill-available]',\n 'focus-visible:outline-0 focus-visible:border-transparent [&::-webkit-search-cancel-button]:hidden',\n color,\n placeholderColor,\n focusColor\n )}\n />\n <IconButton\n theme={theme}\n iconComponent={Search(releaseBranch)}\n onClick={() => onSearch(keywords)}\n />\n </div>\n <IconButton\n theme={theme}\n iconComponent={Cross(releaseBranch)}\n onClick={onClose}\n className={clsx('ml-[8px] hidden', 'desktop:inline-flex')}\n />\n </form>\n )\n}\nSearchBar.Theme = THEME\n\nexport default SearchBar\n","import SearchBar from './components/search-bar'\n\nexport { SearchBar }\n\nexport default {\n SearchBar,\n}\n"],"mappings":";;;;;;;;;;;;;;AAgBA,MAAM,oBAAoB;AAY1B,MAAMA,aAED,EACH,cAAc,IACd,QAAQC,oBAAM,QACd,gBAAgBC,sCAAe,QAC/B,WAAW,aACX,UAAU,aACV,aAAa,aACb,YAAY,MACZ,YAAY,IACZ,iBAAiB,cACb;CACJ,MAAM,CAAC,UAAU,mCAAwB,GAAG;CAC5C,MAAM,CAAC,OAAO,gCAAqB,MAAM;CACzC,MAAM,EACJ,SACA,cACA,gBACA,aACA,OACA,YACA,qBACEC,iCAAiB,MAAM;CAC3B,MAAM,gBAAgB,SAAS,KAAK;CACpC,MAAM,eAAe;AACnB,WAAS,MAAM;AACf,cAAY;;CAEd,MAAM,YAAY,MAAkC;AAClD,IAAE,gBAAgB;AAClB,WAAS,SAAS;;CAEpB,MAAM,YAAY,MAAqC;EACrD,MAAM,QAAQ,EAAE,cAAc;AAC9B,cAAY,MAAM;;CAEpB,MAAM,WAAW,MAAkC;AACjD,IAAE,gBAAgB;AAClB,cAAY,GAAG;;AAGjB,QACE,4CAAC;EACC,6BAAgB,qBAAqB,UAAU;EAC/C;EACU;EACD;EACA;aAET,4CAAC;GACC,6BACE,2FACA,gBACA,SACA,0BACS,cAAc,aAAa,eAAe,GAC/C,qBACL;cAED,2CAAC;IACC,MAAK;IACQ;IACb,OAAO;IACG;IACF;IAEG;IACX,6BACE,0GACA,qGACA,OACA,kBACA,WACD;KACD,EACF,2CAACC;IACQ;IACP,eAAeC,qBAAO,cAAc;IACpC,eAAe,SAAS,SAAS;KACjC;IACE,EACN,2CAACD;GACQ;GACP,eAAeE,oBAAM,cAAc;GACnC,SAAS;GACT,6BAAgB,mBAAmB,sBAAsB;IACzD;GACG;;AAGX,UAAU,QAAQL;AAElB,yBAAe;;;;ACrHf,oBAAe,EACb,+BACD"}