@twreporter/react-typescript-components 0.1.0-beta.20 → 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 (107) hide show
  1. package/lib/{constants-Dt5HD0aL.js → constants-B_1Vpdib.js} +1 -1
  2. package/lib/{constants-Dt5HD0aL.js.map → constants-B_1Vpdib.js.map} +1 -1
  3. package/lib/{constants-BG4oRMD_.mjs → constants-Br6I254P.mjs} +1 -1
  4. package/lib/{constants-BG4oRMD_.mjs.map → constants-Br6I254P.mjs.map} +1 -1
  5. package/lib/customized-link/index.d.mts +3 -3
  6. package/lib/customized-link/index.d.ts +3 -3
  7. package/lib/customized-link/index.js +2 -2
  8. package/lib/customized-link/index.mjs +2 -2
  9. package/lib/customized-link/internal-link.js +1 -1
  10. package/lib/customized-link/internal-link.mjs +1 -1
  11. package/lib/{customized-link-BDKQVdcH.js → customized-link-BuleQPlC.js} +2 -2
  12. package/lib/{customized-link-BDKQVdcH.js.map → customized-link-BuleQPlC.js.map} +1 -1
  13. package/lib/{customized-link-D3p9rjEe.mjs → customized-link-M65Amhsm.mjs} +2 -2
  14. package/lib/{customized-link-D3p9rjEe.mjs.map → customized-link-M65Amhsm.mjs.map} +1 -1
  15. package/lib/dropdown-menu/index.js +3 -3
  16. package/lib/dropdown-menu/index.mjs +3 -3
  17. package/lib/{dropdown-menu-CKH3qADt.js → dropdown-menu-BAHX8io9.js} +2 -2
  18. package/lib/{dropdown-menu-CKH3qADt.js.map → dropdown-menu-BAHX8io9.js.map} +1 -1
  19. package/lib/{dropdown-menu-DMp_Bmo0.mjs → dropdown-menu-BBodM9gi.mjs} +2 -2
  20. package/lib/{dropdown-menu-DMp_Bmo0.mjs.map → dropdown-menu-BBodM9gi.mjs.map} +1 -1
  21. package/lib/footer/index.js +5 -5
  22. package/lib/footer/index.mjs +5 -5
  23. package/lib/footer/links.js +3 -3
  24. package/lib/footer/links.mjs +3 -3
  25. package/lib/footer/logo.js +4 -4
  26. package/lib/footer/logo.mjs +4 -4
  27. package/lib/hamburger-menu/index.js +7 -7
  28. package/lib/hamburger-menu/index.mjs +7 -7
  29. package/lib/{hamburger-menu-DoyJVziw.mjs → hamburger-menu-B8A2Jjyu.mjs} +5 -5
  30. package/lib/{hamburger-menu-DoyJVziw.mjs.map → hamburger-menu-B8A2Jjyu.mjs.map} +1 -1
  31. package/lib/{hamburger-menu-DJe2IBTm.js → hamburger-menu-BKiIxEbP.js} +5 -5
  32. package/lib/{hamburger-menu-DJe2IBTm.js.map → hamburger-menu-BKiIxEbP.js.map} +1 -1
  33. package/lib/header/index.js +14 -14
  34. package/lib/header/index.mjs +13 -13
  35. package/lib/hooks/index.d.mts +3 -3
  36. package/lib/hooks/index.d.ts +3 -3
  37. package/lib/hooks/index.js +2 -2
  38. package/lib/hooks/index.mjs +2 -2
  39. package/lib/hooks/use-outside-click.d.mts +1 -1
  40. package/lib/hooks/use-outside-click.d.ts +1 -1
  41. package/lib/hooks/use-outside-click.js +1 -1
  42. package/lib/hooks/use-outside-click.mjs +1 -1
  43. package/lib/{hooks-CYgvBAmt.js → hooks-B0DKeSXi.js} +2 -2
  44. package/lib/{hooks-CYgvBAmt.js.map → hooks-B0DKeSXi.js.map} +1 -1
  45. package/lib/{hooks-CcqXFDPN.mjs → hooks-CDCpkU85.mjs} +2 -2
  46. package/lib/{hooks-CcqXFDPN.mjs.map → hooks-CDCpkU85.mjs.map} +1 -1
  47. package/lib/input/index.d.ts +2 -2
  48. package/lib/input/index.js +2 -2
  49. package/lib/input/index.mjs +2 -2
  50. package/lib/input/theme.js +1 -1
  51. package/lib/input/theme.mjs +1 -1
  52. package/lib/{input-DH_jroRh.mjs → input-BU_QJnbj.mjs} +2 -2
  53. package/lib/{input-DH_jroRh.mjs.map → input-BU_QJnbj.mjs.map} +1 -1
  54. package/lib/{input-D29yD1k-.js → input-VmgNb9pm.js} +2 -2
  55. package/lib/{input-D29yD1k-.js.map → input-VmgNb9pm.js.map} +1 -1
  56. package/lib/{internal-link-Bq4yp13E.js → internal-link-DyK4bABh.js} +665 -66
  57. package/lib/internal-link-DyK4bABh.js.map +1 -0
  58. package/lib/{internal-link-DCXJvzgx.mjs → internal-link-JeC0sVNF.mjs} +665 -66
  59. package/lib/internal-link-JeC0sVNF.mjs.map +1 -0
  60. package/lib/{links-Buz2DUOO.mjs → links-B2pHDaBW.mjs} +1 -1
  61. package/lib/{links-Buz2DUOO.mjs.map → links-B2pHDaBW.mjs.map} +1 -1
  62. package/lib/{links-CPX07u-O.js → links-Cq5mjJ_J.js} +1 -1
  63. package/lib/{links-CPX07u-O.js.map → links-Cq5mjJ_J.js.map} +1 -1
  64. package/lib/logo/index.d.mts +7 -7
  65. package/lib/logo/index.d.ts +7 -7
  66. package/lib/logo/index.js +1 -1
  67. package/lib/logo/index.mjs +1 -1
  68. package/lib/{logo-DzRRd4Y-.js → logo-B3GSkN1O.js} +1 -1
  69. package/lib/{logo-DzRRd4Y-.js.map → logo-B3GSkN1O.js.map} +1 -1
  70. package/lib/{logo-mBe4a2OP.mjs → logo-CUVtS0IX.mjs} +3 -3
  71. package/lib/{logo-mBe4a2OP.mjs.map → logo-CUVtS0IX.mjs.map} +1 -1
  72. package/lib/{logo-BSp7gsND.js → logo-DlhZVVLN.js} +3 -3
  73. package/lib/{logo-BSp7gsND.js.map → logo-DlhZVVLN.js.map} +1 -1
  74. package/lib/{logo-CBWWiQoO.mjs → logo-NfYCtrtN.mjs} +1 -1
  75. package/lib/{logo-CBWWiQoO.mjs.map → logo-NfYCtrtN.mjs.map} +1 -1
  76. package/lib/tab-bar/constants.js +1 -1
  77. package/lib/tab-bar/constants.mjs +1 -1
  78. package/lib/tab-bar/index.js +5 -5
  79. package/lib/tab-bar/index.mjs +5 -5
  80. package/lib/tab-bar/theme.js +1 -1
  81. package/lib/tab-bar/theme.mjs +1 -1
  82. package/lib/{tab-bar-CVPd5go9.js → tab-bar-BiduNX4N.js} +4 -4
  83. package/lib/{tab-bar-CVPd5go9.js.map → tab-bar-BiduNX4N.js.map} +1 -1
  84. package/lib/{tab-bar-jI3fYt_7.mjs → tab-bar-Cl1QLEj1.mjs} +4 -4
  85. package/lib/{tab-bar-jI3fYt_7.mjs.map → tab-bar-Cl1QLEj1.mjs.map} +1 -1
  86. package/lib/{theme-DURvzYaJ.mjs → theme-Bgd_TUHZ.mjs} +1 -1
  87. package/lib/{theme-DURvzYaJ.mjs.map → theme-Bgd_TUHZ.mjs.map} +1 -1
  88. package/lib/{theme-Cf9NG_eL.mjs → theme-CE2RkJwt.mjs} +1 -1
  89. package/lib/{theme-Cf9NG_eL.mjs.map → theme-CE2RkJwt.mjs.map} +1 -1
  90. package/lib/{theme-B9k1Udon.js → theme-CmvdSSbX.js} +1 -1
  91. package/lib/{theme-B9k1Udon.js.map → theme-CmvdSSbX.js.map} +1 -1
  92. package/lib/{theme-BLdi7Moc.js → theme-Cv8rt4oO.js} +1 -1
  93. package/lib/{theme-BLdi7Moc.js.map → theme-Cv8rt4oO.js.map} +1 -1
  94. package/lib/title-bar/index.d.ts +4 -4
  95. package/lib/title-bar/index.js +2 -2
  96. package/lib/title-bar/index.mjs +2 -2
  97. package/lib/{use-outside-click-DnJ0DNZ9.js → use-outside-click-BB1MpRid.js} +1 -1
  98. package/lib/{use-outside-click-DnJ0DNZ9.js.map → use-outside-click-BB1MpRid.js.map} +1 -1
  99. package/lib/use-outside-click-CMgRy6Pr.d.mts +7 -0
  100. package/lib/use-outside-click-CWX94QPE.d.ts +7 -0
  101. package/lib/{use-outside-click-BfAURk-E.mjs → use-outside-click-DAfe2vPE.mjs} +1 -1
  102. package/lib/{use-outside-click-BfAURk-E.mjs.map → use-outside-click-DAfe2vPE.mjs.map} +1 -1
  103. package/package.json +8 -6
  104. package/lib/internal-link-Bq4yp13E.js.map +0 -1
  105. package/lib/internal-link-DCXJvzgx.mjs.map +0 -1
  106. package/lib/use-outside-click-B_hZCUDr.d.mts +0 -7
  107. package/lib/use-outside-click-COJmPFYr.d.ts +0 -7
@@ -1 +1 @@
1
- {"version":3,"file":"input-DH_jroRh.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"}
@@ -3,7 +3,7 @@ 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
5
  const require_icons = require('./icons-qP5oNB0W.js');
6
- const require_theme$1 = require('./theme-BLdi7Moc.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-D29yD1k-.js.map
86
+ //# sourceMappingURL=input-VmgNb9pm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"input-D29yD1k-.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"}