@twreporter/react-typescript-components 0.1.0-beta.12 → 0.1.0-beta.14
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.
- package/lib/button/constants.d.mts +2 -2
- package/lib/button/index.d.mts +4 -4
- package/lib/button/index.d.ts +1 -1
- package/lib/button/index.js +3 -3
- package/lib/button/index.mjs +3 -3
- package/lib/{button-CS2fz7hm.js → button-D50NHdly.js} +3 -3
- package/lib/{button-CS2fz7hm.js.map → button-D50NHdly.js.map} +1 -1
- package/lib/{button-KtEMUa_S.mjs → button-hDNHA85d.mjs} +3 -3
- package/lib/{button-KtEMUa_S.mjs.map → button-hDNHA85d.mjs.map} +1 -1
- package/lib/constants/internal-links.d.mts +2 -1
- package/lib/constants/internal-links.d.ts +2 -1
- package/lib/constants/internal-links.js +1 -1
- package/lib/constants/internal-links.mjs +1 -1
- package/lib/constants/release-branch.d.mts +2 -2
- package/lib/constants/request-origins.js +4 -46
- package/lib/constants/request-origins.mjs +3 -45
- package/lib/constants/theme.d.mts +2 -2
- package/lib/{constants-VHBN0pYQ.mjs → constants--CDeoDub.mjs} +3 -3
- package/lib/{constants-VHBN0pYQ.mjs.map → constants--CDeoDub.mjs.map} +1 -1
- package/lib/{constants-CeM93YWF.mjs → constants-5phfWHvb.mjs} +1 -1
- package/lib/{constants-CeM93YWF.mjs.map → constants-5phfWHvb.mjs.map} +1 -1
- package/lib/{constants-jYAxSTFp.d.mts → constants-B6oiTL1L.d.mts} +2 -2
- package/lib/{constants-CBWeKJ-C.js → constants-BNxn_qJc.js} +3 -3
- package/lib/{constants-CBWeKJ-C.js.map → constants-BNxn_qJc.js.map} +1 -1
- package/lib/{constants-DNr36wyK.d.mts → constants-BqAhJjFv.d.mts} +2 -2
- package/lib/{constants-DRyQ6AuU.js → constants-BuIUKM2c.js} +1 -1
- package/lib/{constants-DRyQ6AuU.js.map → constants-BuIUKM2c.js.map} +1 -1
- package/lib/{constants-2TRY2zTK.js → constants-C2moxnps.js} +1 -1
- package/lib/{constants-2TRY2zTK.js.map → constants-C2moxnps.js.map} +1 -1
- package/lib/{constants-BWFuBApI.mjs → constants-CBSEPx91.mjs} +4 -4
- package/lib/constants-CBSEPx91.mjs.map +1 -0
- package/lib/{constants-C9Ev_zet.d.mts → constants-CVmr4VOP.d.mts} +2 -2
- package/lib/{constants-BS3rPbaX.d.ts → constants-CZ7dxJ-t.d.ts} +4 -4
- package/lib/{constants-CEyUZ-jZ.d.mts → constants-Cb4Udkwt.d.mts} +2 -2
- package/lib/{constants-K2ObjToq.js → constants-Cndhv6qr.js} +4 -4
- package/lib/constants-Cndhv6qr.js.map +1 -0
- package/lib/{constants-t0lkfgqP.mjs → constants-Cz7n-nLz.mjs} +1 -1
- package/lib/{constants-t0lkfgqP.mjs.map → constants-Cz7n-nLz.mjs.map} +1 -1
- package/lib/{constants-OhAETTiQ.d.mts → constants-D-mBwgNQ.d.mts} +5 -5
- package/lib/{constants-BxxTZn8I.js → constants-D8wNUvoZ.js} +1 -1
- package/lib/{constants-BxxTZn8I.js.map → constants-D8wNUvoZ.js.map} +1 -1
- package/lib/{constants-BqeEbkVD.mjs → constants-DRxdMM_X.mjs} +1 -1
- package/lib/{constants-BqeEbkVD.mjs.map → constants-DRxdMM_X.mjs.map} +1 -1
- package/lib/{context-BCesW3fW.mjs → context-BgdqM3zA.mjs} +1 -1
- package/lib/{context-BCesW3fW.mjs.map → context-BgdqM3zA.mjs.map} +1 -1
- package/lib/{context-Bvr0Qj2x.js → context-I1lTR5SO.js} +1 -1
- package/lib/{context-Bvr0Qj2x.js.map → context-I1lTR5SO.js.map} +1 -1
- package/lib/customized-link/external-link.d.mts +2 -2
- package/lib/customized-link/external-link.js +1 -1
- package/lib/customized-link/external-link.mjs +1 -1
- package/lib/customized-link/index.d.mts +3 -3
- package/lib/customized-link/index.d.ts +3 -3
- package/lib/customized-link/index.js +3 -3
- package/lib/customized-link/index.mjs +2 -2
- package/lib/customized-link/internal-link.d.mts +2 -2
- package/lib/customized-link/internal-link.js +1 -1
- package/lib/customized-link/type.d.mts +1 -1
- package/lib/{customized-link-BkuKVCKQ.mjs → customized-link-DNKmWI0u.mjs} +2 -2
- package/lib/{customized-link-BkuKVCKQ.mjs.map → customized-link-DNKmWI0u.mjs.map} +1 -1
- package/lib/{customized-link-CK7Xlgdt.js → customized-link-XNoMkeYw.js} +3 -3
- package/lib/{customized-link-CK7Xlgdt.js.map → customized-link-XNoMkeYw.js.map} +1 -1
- package/lib/divider/constants.d.mts +2 -2
- package/lib/divider/constants.js +1 -1
- package/lib/divider/constants.mjs +1 -1
- package/lib/divider/index.d.mts +2 -2
- package/lib/divider/index.js +2 -2
- package/lib/divider/index.mjs +2 -2
- package/lib/{divider-Bb3tebJO.mjs → divider-CEIxmAsH.mjs} +2 -2
- package/lib/{divider-Bb3tebJO.mjs.map → divider-CEIxmAsH.mjs.map} +1 -1
- package/lib/{divider-b3Shh7FV.js → divider-Db3AhImD.js} +2 -2
- package/lib/{divider-b3Shh7FV.js.map → divider-Db3AhImD.js.map} +1 -1
- package/lib/dropdown-menu/index.d.mts +1 -1
- package/lib/dropdown-menu/index.js +10 -10
- package/lib/dropdown-menu/index.mjs +9 -9
- package/lib/{dropdown-menu-CrEAe1Td.mjs → dropdown-menu-CuyS5r71.mjs} +6 -6
- package/lib/{dropdown-menu-CrEAe1Td.mjs.map → dropdown-menu-CuyS5r71.mjs.map} +1 -1
- package/lib/{dropdown-menu-DPQvVa7J.js → dropdown-menu-tbV9rhnw.js} +7 -7
- package/lib/{dropdown-menu-DPQvVa7J.js.map → dropdown-menu-tbV9rhnw.js.map} +1 -1
- package/lib/{external-link-CEDvlQYo.js → external-link-BMrkjNyi.js} +1 -1
- package/lib/{external-link-CEDvlQYo.js.map → external-link-BMrkjNyi.js.map} +1 -1
- package/lib/{external-link-Cx9S31Ye.mjs → external-link-BykRRwmY.mjs} +1 -1
- package/lib/{external-link-Cx9S31Ye.mjs.map → external-link-BykRRwmY.mjs.map} +1 -1
- package/lib/{external-link-BUhvS4ry.d.mts → external-link-goP_Ay-S.d.mts} +2 -2
- package/lib/hamburger-menu/index.js +16 -16
- package/lib/hamburger-menu/index.mjs +15 -15
- package/lib/{hamburger-menu-Bi0MDOgC.js → hamburger-menu-CRVI3tt_.js} +19 -17
- package/lib/hamburger-menu-CRVI3tt_.js.map +1 -0
- package/lib/{hamburger-menu-BxO_YWHd.mjs → hamburger-menu-CxSoTBp8.mjs} +18 -16
- package/lib/hamburger-menu-CxSoTBp8.mjs.map +1 -0
- package/lib/header/index.d.mts +3 -3
- package/lib/header/index.js +108 -33
- package/lib/header/index.js.map +1 -1
- package/lib/header/index.mjs +103 -32
- package/lib/header/index.mjs.map +1 -1
- package/lib/{heading-CFSkTbdH.mjs → heading-BSEtBLuY.mjs} +2 -2
- package/lib/{heading-CFSkTbdH.mjs.map → heading-BSEtBLuY.mjs.map} +1 -1
- package/lib/{heading-DFzj2z0V.js → heading-CNS7rJIc.js} +2 -2
- package/lib/{heading-DFzj2z0V.js.map → heading-CNS7rJIc.js.map} +1 -1
- package/lib/icons/constants.d.mts +2 -2
- package/lib/icons/constants.js +1 -1
- package/lib/icons/constants.mjs +1 -1
- package/lib/icons/index.d.mts +3 -3
- package/lib/icons/index.js +2 -2
- package/lib/icons/index.mjs +2 -2
- package/lib/{icons-DJMi42DI.mjs → icons-I7T-auOQ.mjs} +2 -2
- package/lib/{icons-DJMi42DI.mjs.map → icons-I7T-auOQ.mjs.map} +1 -1
- package/lib/{icons-_Vt_HeKY.js → icons-qP5oNB0W.js} +2 -2
- package/lib/{icons-_Vt_HeKY.js.map → icons-qP5oNB0W.js.map} +1 -1
- package/lib/{index-BmIgLA0K.d.mts → index-CYb6xr3M.d.mts} +1 -1
- package/lib/{internal-link-CqTu3Yi5.js → internal-link-BLXTBMRq.js} +1 -1
- package/lib/{internal-link-CqTu3Yi5.js.map → internal-link-BLXTBMRq.js.map} +1 -1
- package/lib/{internal-link-D8jJal8P.d.mts → internal-link-Ciu7CWSY.d.mts} +2 -2
- package/lib/{internal-links-BF-974mA.mjs → internal-links-CP3dqmrz.mjs} +3 -2
- package/lib/internal-links-CP3dqmrz.mjs.map +1 -0
- package/lib/{internal-links-CBkMU8cY.js → internal-links-DxtMobuI.js} +3 -2
- package/lib/internal-links-DxtMobuI.js.map +1 -0
- package/lib/logo/constants.d.mts +2 -2
- package/lib/logo/constants.js +1 -1
- package/lib/logo/constants.mjs +1 -1
- package/lib/logo/index.d.mts +3 -3
- package/lib/logo/index.d.ts +5 -5
- package/lib/logo/index.js +2 -2
- package/lib/logo/index.mjs +2 -2
- package/lib/{logo-Dz8Mm84n.js → logo-BTNfdxTv.js} +2 -2
- package/lib/{logo-Dz8Mm84n.js.map → logo-BTNfdxTv.js.map} +1 -1
- package/lib/{logo-Caqpr_8x.mjs → logo-D68VZ-fc.mjs} +2 -2
- package/lib/{logo-Caqpr_8x.mjs.map → logo-D68VZ-fc.mjs.map} +1 -1
- package/lib/{paragraph-BWXQNQtX.mjs → paragraph-Cf9jr8RF.mjs} +3 -3
- package/lib/paragraph-Cf9jr8RF.mjs.map +1 -0
- package/lib/{paragraph-CJvb0_cM.js → paragraph-iuz3jP0Q.js} +3 -3
- package/lib/paragraph-iuz3jP0Q.js.map +1 -0
- package/lib/{release-branch-DZwlCiWD.d.mts → release-branch-BqeBsvrl.d.mts} +2 -2
- package/lib/request-origins-BDXulkK9.js +57 -0
- package/lib/request-origins-BDXulkK9.js.map +1 -0
- package/lib/request-origins-CGkNWg8R.mjs +46 -0
- package/lib/request-origins-CGkNWg8R.mjs.map +1 -0
- package/lib/styles.css +51 -3
- package/lib/tab-bar/constants.d.mts +3 -3
- package/lib/tab-bar/constants.js +4 -4
- package/lib/tab-bar/constants.mjs +4 -4
- package/lib/tab-bar/index.js +13 -13
- package/lib/tab-bar/index.mjs +12 -12
- package/lib/tab-bar/theme.d.mts +2 -2
- package/lib/tab-bar/theme.js +1 -1
- package/lib/tab-bar/theme.mjs +1 -1
- package/lib/{tab-bar-BbOB2CDM.mjs → tab-bar-BNo9UHeK.mjs} +7 -7
- package/lib/{tab-bar-BbOB2CDM.mjs.map → tab-bar-BNo9UHeK.mjs.map} +1 -1
- package/lib/{tab-bar-BmqqhoCY.js → tab-bar-BT1ooNn0.js} +8 -8
- package/lib/{tab-bar-BmqqhoCY.js.map → tab-bar-BT1ooNn0.js.map} +1 -1
- package/lib/text/constants.d.mts +2 -2
- package/lib/text/constants.d.ts +1 -1
- package/lib/text/constants.js +1 -1
- package/lib/text/constants.mjs +1 -1
- package/lib/text/heading.d.mts +2 -2
- package/lib/text/heading.d.ts +1 -1
- package/lib/text/heading.js +2 -2
- package/lib/text/heading.mjs +2 -2
- package/lib/text/paragraph.d.mts +2 -2
- package/lib/text/paragraph.d.ts +1 -1
- package/lib/text/paragraph.js +2 -2
- package/lib/text/paragraph.mjs +2 -2
- package/lib/{theme-BErS2Qs6.mjs → theme-DQCIQh_8.mjs} +1 -1
- package/lib/{theme-BErS2Qs6.mjs.map → theme-DQCIQh_8.mjs.map} +1 -1
- package/lib/{theme-BPB1kPtQ.js → theme-W--MzZEH.js} +1 -1
- package/lib/{theme-BPB1kPtQ.js.map → theme-W--MzZEH.js.map} +1 -1
- package/lib/{theme-ClamfAy8.d.mts → theme-lCi6tmmS.d.mts} +2 -2
- package/lib/title-bar/index.d.ts +4 -4
- package/lib/title-bar/index.js +7 -7
- package/lib/title-bar/index.mjs +6 -6
- package/lib/{type-FR-fOZvz.d.mts → type-2Go0njwa.d.mts} +1 -1
- package/lib/types/index.d.mts +1 -1
- package/package.json +5 -3
- package/lib/constants/request-origins.js.map +0 -1
- package/lib/constants/request-origins.mjs.map +0 -1
- package/lib/constants-BWFuBApI.mjs.map +0 -1
- package/lib/constants-K2ObjToq.js.map +0 -1
- package/lib/hamburger-menu-Bi0MDOgC.js.map +0 -1
- package/lib/hamburger-menu-BxO_YWHd.mjs.map +0 -1
- package/lib/internal-links-BF-974mA.mjs.map +0 -1
- package/lib/internal-links-CBkMU8cY.js.map +0 -1
- package/lib/paragraph-BWXQNQtX.mjs.map +0 -1
- package/lib/paragraph-CJvb0_cM.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"hamburger-menu-BxO_YWHd.mjs","names":["SocialMedias: SocialMediaType[]","HEADER_ACTION_LINKS: ActionLink[]","HAMBURGER_MENU_ACION_LINKS: ActionLink[]","IconLink: FC<IconLinkProps>","ExternalLink","InternalLink","IconLink","IconLink: FC<IconLinkProps>","ExternalLink","InternalLink","SocialMedia: FC<SocialMediaProps>","IconButton","SocialMediaIcon","SocialMedia","HamburgerMenu: FC","ExternalLink","InternalLink","IconButton","LogoSymbol","LogoHeader","PillButton","TextButton","MenuButton","Divider","IconLink","LightLink","SocialMedia"],"sources":["../src/hamburger-menu/constants/channels.ts","../src/hamburger-menu/constants/social-media.ts","../src/header/constants/action-links.ts","../src/hamburger-menu/components/icon-link.tsx","../src/hamburger-menu/components/light-link.tsx","../src/hamburger-menu/components/social-media.tsx","../src/hamburger-menu/index.tsx"],"sourcesContent":["import { INTERNAL_LINKS } from '../../constants/internal-links'\nimport { EXTERNAL_LINKS } from '../../constants/external-links'\nimport type { LinkTarget } from '../../customized-link/type'\n\nexport const CHANNEL_TYPE = {\n link: 'link',\n divider: 'divider',\n dropdown: 'dropdown',\n iconLink: 'icon-link',\n lightLink: 'light-link',\n} as const\n\nexport const Channels = [\n {\n type: CHANNEL_TYPE.link,\n label: '最新',\n to: INTERNAL_LINKS.latest,\n target: '_self' as LinkTarget,\n },\n {\n type: CHANNEL_TYPE.divider,\n },\n {\n type: CHANNEL_TYPE.link,\n label: '深度專題',\n to: INTERNAL_LINKS.topics,\n target: '_self' as LinkTarget,\n },\n {\n type: CHANNEL_TYPE.dropdown,\n label: '議題',\n dropdownItems: [\n {\n label: '國際兩岸',\n to: INTERNAL_LINKS.categories.world,\n target: '_self' as LinkTarget,\n },\n {\n label: '人權司法',\n to: INTERNAL_LINKS.categories.humanRights,\n target: '_self' as LinkTarget,\n },\n {\n label: '政治社會',\n to: INTERNAL_LINKS.categories.politicsAndSociety,\n target: '_self' as LinkTarget,\n },\n {\n label: '醫療健康',\n to: INTERNAL_LINKS.categories.health,\n target: '_self' as LinkTarget,\n },\n {\n label: '環境永續',\n to: INTERNAL_LINKS.categories.environment,\n target: '_self' as LinkTarget,\n },\n {\n label: '經濟產業',\n to: INTERNAL_LINKS.categories.econ,\n target: '_self' as LinkTarget,\n },\n {\n label: '文化生活',\n to: INTERNAL_LINKS.categories.culture,\n target: '_self' as LinkTarget,\n },\n {\n label: '教育校園',\n to: INTERNAL_LINKS.categories.education,\n target: '_self' as LinkTarget,\n },\n ],\n },\n {\n type: CHANNEL_TYPE.dropdown,\n label: '評論',\n dropdownItems: [\n {\n label: '書摘與書評',\n to: INTERNAL_LINKS.categories.opinion.bookReview,\n target: '_self' as LinkTarget,\n },\n {\n label: '讀者投書',\n to: INTERNAL_LINKS.categories.opinion.letter,\n target: '_self' as LinkTarget,\n },\n {\n label: '全部',\n to: INTERNAL_LINKS.categories.opinion.index,\n target: '_self' as LinkTarget,\n },\n ],\n },\n {\n type: CHANNEL_TYPE.link,\n label: '人物故事',\n to: INTERNAL_LINKS.humanStory,\n target: '_self' as LinkTarget,\n },\n {\n type: CHANNEL_TYPE.divider,\n },\n {\n type: CHANNEL_TYPE.link,\n label: '影像',\n to: INTERNAL_LINKS.photography,\n target: '_self' as LinkTarget,\n },\n {\n type: CHANNEL_TYPE.dropdown,\n label: 'Podcast',\n dropdownItems: [\n {\n label: '關於報導者 Podcast',\n to: INTERNAL_LINKS.podcast.aboutPodcast,\n target: '_self' as LinkTarget,\n },\n {\n label: 'The Real Story',\n to: INTERNAL_LINKS.categories.podcast.theRealStory,\n target: '_self' as LinkTarget,\n },\n {\n label: 'On the Ground 路邊攤計劃',\n to: INTERNAL_LINKS.categories.podcast.onTheGround,\n target: '_self' as LinkTarget,\n },\n ],\n },\n {\n type: CHANNEL_TYPE.link,\n label: '少年報導者',\n to: EXTERNAL_LINKS.kidsReporter,\n target: '_blank' as LinkTarget,\n },\n {\n type: CHANNEL_TYPE.link,\n label: '報導者觀測站',\n to: EXTERNAL_LINKS.lawmaker,\n target: '_blank' as LinkTarget,\n },\n {\n type: CHANNEL_TYPE.link,\n label: '數位敘事',\n to: INTERNAL_LINKS.infographic,\n target: '_self' as LinkTarget,\n },\n {\n type: CHANNEL_TYPE.divider,\n },\n {\n type: CHANNEL_TYPE.iconLink,\n label: '個人專區',\n icon: 'member',\n to: INTERNAL_LINKS.account.index,\n target: '_self' as LinkTarget,\n },\n {\n type: CHANNEL_TYPE.iconLink,\n label: '我的閱讀',\n icon: 'kid_star',\n to: INTERNAL_LINKS.myReading.index,\n target: '_self' as LinkTarget,\n },\n {\n type: CHANNEL_TYPE.iconLink,\n label: '已收藏',\n icon: 'bookmark_basic',\n to: INTERNAL_LINKS.myReading.savedBookmarks,\n target: '_self' as LinkTarget,\n },\n {\n type: CHANNEL_TYPE.iconLink,\n label: '造訪紀錄',\n icon: 'history',\n to: INTERNAL_LINKS.myReading.browsingHistory,\n target: '_self' as LinkTarget,\n },\n {\n type: CHANNEL_TYPE.divider,\n },\n {\n type: CHANNEL_TYPE.lightLink,\n label: '基金會消息',\n to: INTERNAL_LINKS.categories.foundation.index,\n target: '_self' as LinkTarget,\n },\n {\n type: CHANNEL_TYPE.lightLink,\n label: '關於我們',\n to: INTERNAL_LINKS.about,\n target: '_blank' as LinkTarget,\n },\n {\n type: CHANNEL_TYPE.lightLink,\n label: '影響力報告',\n to: INTERNAL_LINKS.influenceReport,\n target: '_self' as LinkTarget,\n },\n {\n type: CHANNEL_TYPE.lightLink,\n label: '報導者開放實驗室',\n to: EXTERNAL_LINKS.openLab,\n target: '_blank' as LinkTarget,\n },\n {\n type: CHANNEL_TYPE.lightLink,\n label: '出版品與周邊',\n to: EXTERNAL_LINKS.publicationAndMerchandise,\n target: '_blank' as LinkTarget,\n },\n {\n type: CHANNEL_TYPE.divider,\n },\n]\n","import { MEDIA_TYPE, type MediaType } from '../../icons/constants'\nimport { EXTERNAL_LINKS } from '../../constants/external-links'\nimport type { LinkTarget } from '../../customized-link/type'\n\ntype SocialMediaType = {\n icon: MediaType\n link: string\n target: LinkTarget\n}\nexport const SocialMedias: SocialMediaType[] = [\n {\n icon: MEDIA_TYPE.facebook,\n link: EXTERNAL_LINKS.facebook,\n target: '_blank',\n },\n {\n icon: MEDIA_TYPE.instagram,\n link: EXTERNAL_LINKS.instagram,\n target: '_blank',\n },\n {\n icon: MEDIA_TYPE.threads,\n link: EXTERNAL_LINKS.threads,\n target: '_blank',\n },\n {\n icon: MEDIA_TYPE.youtube,\n link: EXTERNAL_LINKS.youtube,\n target: '_blank',\n },\n]\n","import { INTERNAL_LINKS } from '../../constants/internal-links'\nimport { EXTERNAL_LINKS } from '../../constants/external-links'\nimport type { LinkTarget } from '../../customized-link/type'\nimport { TYPE, type Type } from '../../button/constants'\n\ntype ActionLink = {\n label: string\n to: string\n target: LinkTarget\n type: Type\n}\n\nexport const HEADER_ACTION_LINKS: ActionLink[] = [\n {\n label: '電子報',\n to: INTERNAL_LINKS.account.emailSubscription,\n target: '_self' as LinkTarget,\n type: TYPE.secondary,\n },\n {\n label: '贊助',\n to: EXTERNAL_LINKS.monthlyDonation,\n target: '_blank',\n type: TYPE.primary,\n },\n]\n\nexport const HAMBURGER_MENU_ACION_LINKS: ActionLink[] = [\n {\n label: '訂閱電子報',\n to: INTERNAL_LINKS.account.emailSubscription,\n target: '_self',\n type: TYPE.secondary,\n },\n {\n label: '贊助我們',\n to: EXTERNAL_LINKS.monthlyDonation,\n target: '_blank',\n type: TYPE.primary,\n },\n]\n","import { useContext, type FC } from 'react'\nimport clsx from 'clsx'\n// context\nimport { HeaderContext } from '../../header/context'\n// theme\nimport { THEME } from '../../constants/theme'\n// utils\nimport { selectHamburgerFooterTheme } from '../utils/theme'\n// icon\nimport { Icon } from '../../icons'\n// text\nimport { P2 } from '../../text/paragraph'\n// link\nimport { ExternalLink, InternalLink } from '../../customized-link'\nimport type { LinkTarget } from '../../customized-link/type'\n\ntype IconLinkProps = {\n label: string\n icon: string\n to: string\n target: LinkTarget\n}\nconst IconLink: FC<IconLinkProps> = ({ label, icon, to, target }) => {\n const { theme, releaseBranch, isLinkExternal } = useContext(HeaderContext)\n const footerTheme = theme === THEME.transparent ? THEME.normal : theme\n const LinkComponent = isLinkExternal ? ExternalLink : InternalLink\n const {\n color,\n hoverColor,\n hoverBgColor,\n svgHoverBgColor,\n svgBgColor,\n activeColor,\n activeBgColor,\n svgActiveBgColor,\n } = selectHamburgerFooterTheme(footerTheme)\n return (\n <LinkComponent to={to} target={target}>\n <div\n className={clsx(\n 'py-[8px] px-[32px] flex items-center',\n '[&>svg]:h-[18px] [&>svg]:w-[18px] [&>svg]:mr-[4px]',\n color,\n hoverColor,\n hoverBgColor,\n svgHoverBgColor,\n svgBgColor,\n activeColor,\n activeBgColor,\n svgActiveBgColor\n )}\n >\n <Icon filename={icon} releaseBranch={releaseBranch} />\n <P2 text={label} />\n </div>\n </LinkComponent>\n )\n}\n\nexport default IconLink\n","import { useContext, type FC } from 'react'\nimport clsx from 'clsx'\n// context\nimport { HeaderContext } from '../../header/context'\n// theme\nimport { THEME } from '../../constants/theme'\n// utils\nimport { selectHamburgerFooterTheme } from '../utils/theme'\n// text\nimport { P2 } from '../../text/paragraph'\n// link\nimport { ExternalLink, InternalLink } from '../../customized-link'\nimport type { LinkTarget } from '../../customized-link/type'\n\ntype IconLinkProps = {\n label: string\n to: string\n target: LinkTarget\n}\nconst IconLink: FC<IconLinkProps> = ({ label, to, target }) => {\n const { theme, isLinkExternal } = useContext(HeaderContext)\n const footerTheme = theme === THEME.transparent ? THEME.normal : theme\n const { color, hoverColor, hoverBgColor, activeColor, activeBgColor } =\n selectHamburgerFooterTheme(footerTheme)\n const LinkComponent = isLinkExternal ? ExternalLink : InternalLink\n return (\n <LinkComponent to={to} target={target}>\n <div\n className={clsx(\n 'py-[8px] px-[32px] flex items-center',\n '[&>svg]:h-[18px] [&>svg]:w-[18px] [&>svg]:mr-[4px]',\n color,\n hoverColor,\n hoverBgColor,\n activeColor,\n activeBgColor\n )}\n >\n <P2 text={label} />\n </div>\n </LinkComponent>\n )\n}\n\nexport default IconLink\n","import { useContext, type FC } from 'react'\nimport clsx from 'clsx'\n// context\nimport { HeaderContext } from '../../header/context'\n// icon\nimport { SocialMedia as SocialMediaIcon } from '../../icons'\n// type\nimport type { MediaType } from '../../icons/constants'\n// theme\nimport { THEME } from '../../constants/theme'\n// button\nimport { IconButton } from '../../button'\n\ntype SocialMediaProps = {\n mediaType: MediaType\n}\nconst SocialMedia: FC<SocialMediaProps> = ({ mediaType }) => {\n const { theme, releaseBranch } = useContext(HeaderContext)\n const footerTheme = theme === THEME.transparent ? THEME.normal : theme\n const Icon = (\n <SocialMediaIcon mediaType={mediaType} releaseBranch={releaseBranch} />\n )\n return (\n <IconButton\n iconComponent={Icon}\n theme={footerTheme}\n className={clsx(\n '[&>svg]:h-[32px] [&>svg]:w-[32px]',\n '[&>svg]:tablet:h-[24px] [&>svg]:tablet:w-[24px]'\n )}\n />\n )\n}\n\nexport default SocialMedia\n","import { useContext, useState, type FC } from 'react'\nimport clsx from 'clsx'\n// context\nimport { HeaderContext, HamburgerContext } from '../header/context'\n// constants\nimport { THEME } from '../constants/theme'\nimport { Channels, CHANNEL_TYPE } from './constants/channels'\nimport { SocialMedias } from './constants/social-media'\nimport { HAMBURGER_MENU_ACION_LINKS } from '../header/constants/action-links'\nimport { INTERNAL_LINKS } from '../constants/internal-links'\nimport { EXTERNAL_LINKS } from '../constants/external-links'\n// utils\nimport {\n selectHamburgerMenuTheme,\n selectHamburgerItemTheme,\n} from './utils/theme'\n// buttons\nimport { IconButton, MenuButton, PillButton, TextButton } from '../button'\n// icons\nimport { Cross } from '../icons'\n// logo\nimport { LogoSymbol, LogoHeader } from '../logo'\n// utils\nimport { selectLogoType } from './utils/theme'\n// divider\nimport Divider from '../divider'\n// components\nimport { DropdownMenu } from '../dropdown-menu'\nimport IconLink from './components/icon-link'\nimport LightLink from './components/light-link'\nimport SocialMedia from './components/social-media'\n// link\nimport { ExternalLink, InternalLink } from '../customized-link'\n\nconst HamburgerMenu: FC = () => {\n const { theme, releaseBranch, isLinkExternal } = useContext(HeaderContext)\n const { closeHamburgerMenu } = useContext(HamburgerContext)\n\n const menuTheme = theme === THEME.photography ? theme : THEME.normal\n const { bgColor, scrollBarColor } = selectHamburgerMenuTheme(menuTheme)\n const logoType = selectLogoType(menuTheme)\n const [activeKey, setActiveKey] = useState('')\n const LinkComponent = isLinkExternal ? ExternalLink : InternalLink\n\n return (\n <div\n className={clsx(\n 'w-screen h-screen overflow-scroll overscroll-contain',\n bgColor,\n // reserveHeightForIos15 is 48px\n `pb-[calc(48px+48px)]`,\n 'tablet:w-[320px] tablet:max-h-screen',\n 'desktop:w-[280px]',\n '[&::-webkit-scrollbar]:w-[4px]',\n '[&::-webkit-scrollbar]:bg-transparent',\n '[&::-webkit-scrollbar-thumb]:rounded-[2px]',\n scrollBarColor\n )}\n >\n {/* close icon */}\n <div\n className={clsx(\n 'hidden items-center justify-end pt-[24px] pr-[32px] pb-[16px]',\n 'tablet:flex'\n )}\n >\n <IconButton\n iconComponent={Cross(releaseBranch)}\n theme={menuTheme}\n onClick={closeHamburgerMenu}\n />\n </div>\n {/* logo */}\n <LinkComponent to={INTERNAL_LINKS.home}>\n <div\n className={clsx(\n 'hidden justify-center [&>img]:h-[24px] [&>img]:w-[24px]',\n 'tablet:flex'\n )}\n >\n <LogoSymbol type={logoType} releaseBranch={releaseBranch} />\n </div>\n </LinkComponent>\n {/* mobile hamburger header */}\n <div\n className={clsx(\n 'flex items-center justify-between px-[24px] py-[16px]',\n 'tablet:hidden'\n )}\n >\n <LinkComponent to={INTERNAL_LINKS.home}>\n <LogoHeader\n type={logoType}\n releaseBranch={releaseBranch}\n className=\"h-[21px]\"\n />\n </LinkComponent>\n <div className=\"flex items-center gap-[16px]\">\n <LinkComponent to={EXTERNAL_LINKS.monthlyDonation}>\n <PillButton\n text=\"贊助\"\n theme={PillButton.Theme.normal}\n type={PillButton.Type.primary}\n style={PillButton.Style.brand}\n />\n </LinkComponent>\n <LinkComponent to={INTERNAL_LINKS.account.index}>\n <TextButton\n text=\"登入\"\n theme={TextButton.Theme.normal}\n style={TextButton.Style.dark}\n size={TextButton.Size.s}\n />\n </LinkComponent>\n </div>\n </div>\n {/* search bar (visible on mobile and tablet) */}\n <div className=\"px-[32px] pt-[24px] pb-[8px] desktop:hidden\">\n <input\n type=\"text\"\n className={clsx(\n 'w-full h-[40px] rounded-[20px] px-[16px]',\n 'focus:outline-none'\n )}\n placeholder=\"搜尋\"\n />\n </div>\n {/* menu buttons */}\n <div className=\"flex flex-col pt-[16px]\">\n {Channels.map((channel, idx) => {\n if (channel.type === CHANNEL_TYPE.link) {\n const { color, hoverBgColor, activeBgColor } =\n selectHamburgerItemTheme(theme)\n return (\n <LinkComponent\n to={channel.to}\n target={channel.target}\n key={channel.label}\n >\n <MenuButton\n key={channel.label}\n text={channel.label}\n fontWeight={MenuButton.FontWeight.bold}\n color={color}\n p1ClassName={`${hoverBgColor} ${activeBgColor} pl-[32px] pr-[32px]`}\n />\n </LinkComponent>\n )\n }\n if (channel.type === CHANNEL_TYPE.divider) {\n return (\n <div className=\"py-[16px] px-[32px]\" key={`divider-${idx}`}>\n <Divider direction={Divider.Direction.horizontal} />\n </div>\n )\n }\n if (channel.type === CHANNEL_TYPE.dropdown) {\n const isActive = activeKey === channel.label\n const toggleFunc = (key: string) => {\n const nextActiveKey = activeKey === key ? '' : key\n setActiveKey(nextActiveKey)\n }\n return (\n <button\n onClick={() => toggleFunc(channel.label)}\n key={channel.label}\n type=\"button\"\n >\n <DropdownMenu\n text={channel.label}\n isActive={isActive}\n dropdownItems={channel.dropdownItems}\n />\n </button>\n )\n }\n if (channel.type === CHANNEL_TYPE.iconLink) {\n return (\n <IconLink\n label={channel.label}\n to={channel.to}\n target={channel.target}\n icon={channel.icon}\n key={channel.label}\n />\n )\n }\n if (channel.type === CHANNEL_TYPE.lightLink) {\n return (\n <LightLink\n label={channel.label}\n to={channel.to}\n target={channel.target}\n key={channel.label}\n />\n )\n }\n })}\n </div>\n {/* social media */}\n <div className=\"flex flex-row gap-[16px] justify-center\">\n {SocialMedias.map((socialMedia) => (\n <LinkComponent\n to={socialMedia.link}\n target={socialMedia.target}\n key={socialMedia.icon}\n >\n <SocialMedia mediaType={socialMedia.icon} />\n </LinkComponent>\n ))}\n </div>\n {/* action butoons */}\n <div\n className={clsx(\n 'hidden flex-col gap-[16px] px-[32px] pt-[40px] pb-[32px]',\n 'tablet:flex'\n )}\n >\n {HAMBURGER_MENU_ACION_LINKS.map((link) => (\n <LinkComponent to={link.to} target={link.target} key={link.label}>\n <PillButton\n text={link.label}\n theme={theme}\n type={link.type}\n className=\"w-full justify-center\"\n />\n </LinkComponent>\n ))}\n </div>\n </div>\n )\n}\n\nexport default HamburgerMenu\n"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"internal-links-BF-974mA.mjs","names":[],"sources":["../src/constants/internal-links.ts"],"sourcesContent":["const accountBase = '/account'\nconst myReadingBase = '/myreading'\nconst categoriesBase = '/categories'\nconst articlesBase = '/a'\n\nexport const INTERNAL_LINKS = {\n home: '/',\n latest: '/latest',\n topics: '/topics',\n search: '/search',\n about: '/about-us',\n account: {\n index: accountBase,\n donationPage: `${accountBase}/donation-history`,\n emailSubscription: `${accountBase}/email-subscription`,\n exclusiveOffers: `${accountBase}/exclusive-offers`,\n },\n myReading: {\n index: myReadingBase,\n savedBookmarks: `${myReadingBase}/saved`,\n browsingHistory: `${myReadingBase}/history`,\n },\n categories: {\n world: `${categoriesBase}/world`,\n humanRights: `${categoriesBase}/humanrights`,\n politicsAndSociety: `${categoriesBase}/politics-and-society`,\n health: `${categoriesBase}/health`,\n environment: `${categoriesBase}/environment`,\n econ: `${categoriesBase}/econ`,\n culture: `${categoriesBase}/culture`,\n education: `${categoriesBase}/education`,\n opinion: {\n index: `${categoriesBase}/opinion`,\n bookReview: `${categoriesBase}/opinion/book-review`,\n letter: `${categoriesBase}/opinion/letter`,\n },\n podcast: {\n theRealStory: `${categoriesBase}/podcast/the-real-story`,\n onTheGround: `${categoriesBase}/podcast/on-the-ground`,\n },\n foundation: {\n index: `${categoriesBase}/foundation`,\n },\n },\n humanStory: '/tags/58db34a30f56b40d001ae6a6', // 人物故事 tag id\n photography: '/photography',\n podcast: {\n aboutPodcast: `${articlesBase}/podcast-list`,\n },\n infographic: '/tags/630f029461ca4e07004ef530', // infographic tag id\n influenceReport: `${articlesBase}/impact-and-annual-report`,\n} as const\n"],"mappings":";AAAA,MAAM,cAAc;AACpB,MAAM,gBAAgB;AACtB,MAAM,iBAAiB;AACvB,MAAM,eAAe;AAErB,MAAa,iBAAiB;CAC5B,MAAM;CACN,QAAQ;CACR,QAAQ;CACR,QAAQ;CACR,OAAO;CACP,SAAS;EACP,OAAO;EACP,cAAc,GAAG,YAAY;EAC7B,mBAAmB,GAAG,YAAY;EAClC,iBAAiB,GAAG,YAAY;EACjC;CACD,WAAW;EACT,OAAO;EACP,gBAAgB,GAAG,cAAc;EACjC,iBAAiB,GAAG,cAAc;EACnC;CACD,YAAY;EACV,OAAO,GAAG,eAAe;EACzB,aAAa,GAAG,eAAe;EAC/B,oBAAoB,GAAG,eAAe;EACtC,QAAQ,GAAG,eAAe;EAC1B,aAAa,GAAG,eAAe;EAC/B,MAAM,GAAG,eAAe;EACxB,SAAS,GAAG,eAAe;EAC3B,WAAW,GAAG,eAAe;EAC7B,SAAS;GACP,OAAO,GAAG,eAAe;GACzB,YAAY,GAAG,eAAe;GAC9B,QAAQ,GAAG,eAAe;GAC3B;EACD,SAAS;GACP,cAAc,GAAG,eAAe;GAChC,aAAa,GAAG,eAAe;GAChC;EACD,YAAY,EACV,OAAO,GAAG,eAAe,cAC1B;EACF;CACD,YAAY;CACZ,aAAa;CACb,SAAS,EACP,cAAc,GAAG,aAAa,gBAC/B;CACD,aAAa;CACb,iBAAiB,GAAG,aAAa;CAClC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"internal-links-CBkMU8cY.js","names":[],"sources":["../src/constants/internal-links.ts"],"sourcesContent":["const accountBase = '/account'\nconst myReadingBase = '/myreading'\nconst categoriesBase = '/categories'\nconst articlesBase = '/a'\n\nexport const INTERNAL_LINKS = {\n home: '/',\n latest: '/latest',\n topics: '/topics',\n search: '/search',\n about: '/about-us',\n account: {\n index: accountBase,\n donationPage: `${accountBase}/donation-history`,\n emailSubscription: `${accountBase}/email-subscription`,\n exclusiveOffers: `${accountBase}/exclusive-offers`,\n },\n myReading: {\n index: myReadingBase,\n savedBookmarks: `${myReadingBase}/saved`,\n browsingHistory: `${myReadingBase}/history`,\n },\n categories: {\n world: `${categoriesBase}/world`,\n humanRights: `${categoriesBase}/humanrights`,\n politicsAndSociety: `${categoriesBase}/politics-and-society`,\n health: `${categoriesBase}/health`,\n environment: `${categoriesBase}/environment`,\n econ: `${categoriesBase}/econ`,\n culture: `${categoriesBase}/culture`,\n education: `${categoriesBase}/education`,\n opinion: {\n index: `${categoriesBase}/opinion`,\n bookReview: `${categoriesBase}/opinion/book-review`,\n letter: `${categoriesBase}/opinion/letter`,\n },\n podcast: {\n theRealStory: `${categoriesBase}/podcast/the-real-story`,\n onTheGround: `${categoriesBase}/podcast/on-the-ground`,\n },\n foundation: {\n index: `${categoriesBase}/foundation`,\n },\n },\n humanStory: '/tags/58db34a30f56b40d001ae6a6', // 人物故事 tag id\n photography: '/photography',\n podcast: {\n aboutPodcast: `${articlesBase}/podcast-list`,\n },\n infographic: '/tags/630f029461ca4e07004ef530', // infographic tag id\n influenceReport: `${articlesBase}/impact-and-annual-report`,\n} as const\n"],"mappings":";;AAAA,MAAM,cAAc;AACpB,MAAM,gBAAgB;AACtB,MAAM,iBAAiB;AACvB,MAAM,eAAe;AAErB,MAAa,iBAAiB;CAC5B,MAAM;CACN,QAAQ;CACR,QAAQ;CACR,QAAQ;CACR,OAAO;CACP,SAAS;EACP,OAAO;EACP,cAAc,GAAG,YAAY;EAC7B,mBAAmB,GAAG,YAAY;EAClC,iBAAiB,GAAG,YAAY;EACjC;CACD,WAAW;EACT,OAAO;EACP,gBAAgB,GAAG,cAAc;EACjC,iBAAiB,GAAG,cAAc;EACnC;CACD,YAAY;EACV,OAAO,GAAG,eAAe;EACzB,aAAa,GAAG,eAAe;EAC/B,oBAAoB,GAAG,eAAe;EACtC,QAAQ,GAAG,eAAe;EAC1B,aAAa,GAAG,eAAe;EAC/B,MAAM,GAAG,eAAe;EACxB,SAAS,GAAG,eAAe;EAC3B,WAAW,GAAG,eAAe;EAC7B,SAAS;GACP,OAAO,GAAG,eAAe;GACzB,YAAY,GAAG,eAAe;GAC9B,QAAQ,GAAG,eAAe;GAC3B;EACD,SAAS;GACP,cAAc,GAAG,eAAe;GAChC,aAAa,GAAG,eAAe;GAChC;EACD,YAAY,EACV,OAAO,GAAG,eAAe,cAC1B;EACF;CACD,YAAY;CACZ,aAAa;CACb,SAAS,EACP,cAAc,GAAG,aAAa,gBAC/B;CACD,aAAa;CACb,iBAAiB,GAAG,aAAa;CAClC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"paragraph-BWXQNQtX.mjs","names":["Component: React.FC<ParagraphProps> & { Weight: typeof WEIGHT }"],"sources":["../src/text/paragraph.tsx"],"sourcesContent":["import clsx from 'clsx'\nimport type React from 'react'\nimport { WEIGHT, type Weight } from './constants'\n\ntype ParagraphProps = React.HTMLAttributes<HTMLParagraphElement> & {\n text?: string\n weight?: Weight\n className?: string\n}\n\nconst baseClass = 'font-default leading-[150%] flex items-center m-0'\n\nconst variantClass = {\n P1: 'text-[16px]',\n P2: 'text-[14px]',\n P3: 'text-[12px]',\n P4: 'text-[10px]',\n}\n\nconst ParagraphVariant = (variant: keyof typeof variantClass) => {\n const Component: React.FC<ParagraphProps> & { Weight: typeof WEIGHT } = ({\n text = '',\n weight = WEIGHT.normal,\n className = '',\n ...props\n }) => (\n <p\n className={clsx(\n baseClass,\n variantClass[variant],\n `font-${weight}`,\n className\n )}\n {...props}\n >\n {text}\n </p>\n )\n Component.displayName = variant\n Component.Weight = WEIGHT\n return Component\n}\n\nconst P1 = ParagraphVariant('P1')\nconst P2 = ParagraphVariant('P2')\nconst P3 = ParagraphVariant('P3')\nconst P4 = ParagraphVariant('P4')\n\nexport { P1, P2, P3, P4 }\n"],"mappings":";;;;;AAUA,MAAM,YAAY;AAElB,MAAM,eAAe;CACnB,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,IAAI;CACL;AAED,MAAM,oBAAoB,YAAuC;CAC/D,MAAMA,aAAmE,EACvE,OAAO,IACP,SAAS,OAAO,QAChB,YAAY,GACZ,GAAG,YAEH,oBAAC;EACC,WAAW,KACT,WACA,aAAa,UACb,QAAQ,UACR,UACD;EACD,GAAI;YAEH;GACC;AAEN,WAAU,cAAc;AACxB,WAAU,SAAS;AACnB,QAAO;;AAGT,MAAM,KAAK,iBAAiB,KAAK;AACjC,MAAM,KAAK,iBAAiB,KAAK;AACjC,MAAM,KAAK,iBAAiB,KAAK;AACjC,MAAM,KAAK,iBAAiB,KAAK"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"paragraph-CJvb0_cM.js","names":["Component: React.FC<ParagraphProps> & { Weight: typeof WEIGHT }","WEIGHT"],"sources":["../src/text/paragraph.tsx"],"sourcesContent":["import clsx from 'clsx'\nimport type React from 'react'\nimport { WEIGHT, type Weight } from './constants'\n\ntype ParagraphProps = React.HTMLAttributes<HTMLParagraphElement> & {\n text?: string\n weight?: Weight\n className?: string\n}\n\nconst baseClass = 'font-default leading-[150%] flex items-center m-0'\n\nconst variantClass = {\n P1: 'text-[16px]',\n P2: 'text-[14px]',\n P3: 'text-[12px]',\n P4: 'text-[10px]',\n}\n\nconst ParagraphVariant = (variant: keyof typeof variantClass) => {\n const Component: React.FC<ParagraphProps> & { Weight: typeof WEIGHT } = ({\n text = '',\n weight = WEIGHT.normal,\n className = '',\n ...props\n }) => (\n <p\n className={clsx(\n baseClass,\n variantClass[variant],\n `font-${weight}`,\n className\n )}\n {...props}\n >\n {text}\n </p>\n )\n Component.displayName = variant\n Component.Weight = WEIGHT\n return Component\n}\n\nconst P1 = ParagraphVariant('P1')\nconst P2 = ParagraphVariant('P2')\nconst P3 = ParagraphVariant('P3')\nconst P4 = ParagraphVariant('P4')\n\nexport { P1, P2, P3, P4 }\n"],"mappings":";;;;;;;;AAUA,MAAM,YAAY;AAElB,MAAM,eAAe;CACnB,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,IAAI;CACL;AAED,MAAM,oBAAoB,YAAuC;CAC/D,MAAMA,aAAmE,EACvE,OAAO,IACP,SAASC,yBAAO,QAChB,YAAY,GACZ,GAAG,YAEH,2CAAC;EACC,6BACE,WACA,aAAa,UACb,QAAQ,UACR,UACD;EACD,GAAI;YAEH;GACC;AAEN,WAAU,cAAc;AACxB,WAAU,SAASA;AACnB,QAAO;;AAGT,MAAM,KAAK,iBAAiB,KAAK;AACjC,MAAM,KAAK,iBAAiB,KAAK;AACjC,MAAM,KAAK,iBAAiB,KAAK;AACjC,MAAM,KAAK,iBAAiB,KAAK"}
|