@nori-ui/core 0.0.5 → 1.0.2
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/dist/animation/animated-view.cjs +13 -0
- package/dist/animation/animated-view.cjs.map +1 -0
- package/dist/animation/animated-view.d.cts +6 -0
- package/dist/animation/animated-view.d.ts +6 -0
- package/dist/animation/animated-view.js +4 -0
- package/dist/animation/animated-view.js.map +1 -0
- package/dist/animation/animated-view.web.cjs +9 -0
- package/dist/animation/animated-view.web.cjs.map +1 -0
- package/dist/animation/animated-view.web.d.cts +5 -0
- package/dist/animation/animated-view.web.d.ts +5 -0
- package/dist/animation/animated-view.web.js +8 -0
- package/dist/animation/animated-view.web.js.map +1 -0
- package/dist/animation/use-animated-number.cjs +80 -0
- package/dist/animation/use-animated-number.cjs.map +1 -0
- package/dist/animation/use-animated-number.d.cts +8 -0
- package/dist/animation/use-animated-number.d.ts +8 -0
- package/dist/animation/use-animated-number.js +4 -0
- package/dist/animation/use-animated-number.js.map +1 -0
- package/dist/animation/use-animated-number.web.cjs +28 -0
- package/dist/animation/use-animated-number.web.cjs.map +1 -0
- package/dist/animation/use-animated-number.web.d.cts +8 -0
- package/dist/animation/use-animated-number.web.d.ts +8 -0
- package/dist/animation/use-animated-number.web.js +25 -0
- package/dist/animation/use-animated-number.web.js.map +1 -0
- package/dist/{chunk-RX7UULY3.js → chunk-33S7ADWM.js} +3 -3
- package/dist/{chunk-RX7UULY3.js.map → chunk-33S7ADWM.js.map} +1 -1
- package/dist/chunk-3BDDPFCI.js +108 -0
- package/dist/chunk-3BDDPFCI.js.map +1 -0
- package/dist/chunk-3F4TXKDY.js +314 -0
- package/dist/chunk-3F4TXKDY.js.map +1 -0
- package/dist/chunk-5A2QOOVN.js +15 -0
- package/dist/chunk-5A2QOOVN.js.map +1 -0
- package/dist/chunk-5XEGZFG5.js +208 -0
- package/dist/chunk-5XEGZFG5.js.map +1 -0
- package/dist/chunk-6AD6KCVB.js +178 -0
- package/dist/chunk-6AD6KCVB.js.map +1 -0
- package/dist/chunk-7GPDNQSX.js +967 -0
- package/dist/chunk-7GPDNQSX.js.map +1 -0
- package/dist/chunk-7UKRN73P.js +42 -0
- package/dist/chunk-7UKRN73P.js.map +1 -0
- package/dist/chunk-7Z4NMNX6.js +64 -0
- package/dist/chunk-7Z4NMNX6.js.map +1 -0
- package/dist/chunk-ACLHDHX3.js +29 -0
- package/dist/chunk-ACLHDHX3.js.map +1 -0
- package/dist/chunk-BZLT6R62.js +80 -0
- package/dist/chunk-BZLT6R62.js.map +1 -0
- package/dist/chunk-CCUXO2HN.js +450 -0
- package/dist/chunk-CCUXO2HN.js.map +1 -0
- package/dist/chunk-CHXHRJNZ.js +43 -0
- package/dist/chunk-CHXHRJNZ.js.map +1 -0
- package/dist/chunk-DDGMLLS3.js +188 -0
- package/dist/chunk-DDGMLLS3.js.map +1 -0
- package/dist/chunk-EWWQQ5DB.js +654 -0
- package/dist/chunk-EWWQQ5DB.js.map +1 -0
- package/dist/chunk-FEPTH5RV.js +169 -0
- package/dist/chunk-FEPTH5RV.js.map +1 -0
- package/dist/{chunk-SSTXLK5I.js → chunk-FT2XBBQJ.js} +42 -6
- package/dist/chunk-FT2XBBQJ.js.map +1 -0
- package/dist/chunk-IKLA2CVQ.js +260 -0
- package/dist/chunk-IKLA2CVQ.js.map +1 -0
- package/dist/chunk-JQQ3FBN7.js +18 -0
- package/dist/chunk-JQQ3FBN7.js.map +1 -0
- package/dist/chunk-JSAG5YO7.js +69 -0
- package/dist/chunk-JSAG5YO7.js.map +1 -0
- package/dist/chunk-JZ774T7U.js +76 -0
- package/dist/chunk-JZ774T7U.js.map +1 -0
- package/dist/chunk-KWRDJPP3.js +10 -0
- package/dist/chunk-KWRDJPP3.js.map +1 -0
- package/dist/chunk-LVWNMQGR.js +1106 -0
- package/dist/chunk-LVWNMQGR.js.map +1 -0
- package/dist/chunk-LWLK6HSW.js +143 -0
- package/dist/chunk-LWLK6HSW.js.map +1 -0
- package/dist/chunk-MDOZGILD.js +134 -0
- package/dist/chunk-MDOZGILD.js.map +1 -0
- package/dist/chunk-MKSDYRWQ.js +446 -0
- package/dist/chunk-MKSDYRWQ.js.map +1 -0
- package/dist/chunk-MRJWPRCX.js +80 -0
- package/dist/chunk-MRJWPRCX.js.map +1 -0
- package/dist/chunk-NRYWNOG5.js +410 -0
- package/dist/chunk-NRYWNOG5.js.map +1 -0
- package/dist/chunk-OMU4R4Y5.js +144 -0
- package/dist/chunk-OMU4R4Y5.js.map +1 -0
- package/dist/chunk-PNP7L4TA.js +103 -0
- package/dist/chunk-PNP7L4TA.js.map +1 -0
- package/dist/chunk-QI6646JZ.js +3 -0
- package/dist/{chunk-UAKFCMWK.js.map → chunk-QI6646JZ.js.map} +1 -1
- package/dist/chunk-QJNV7YQP.js +138 -0
- package/dist/chunk-QJNV7YQP.js.map +1 -0
- package/dist/chunk-R5JMDDCB.js +292 -0
- package/dist/chunk-R5JMDDCB.js.map +1 -0
- package/dist/chunk-RB3YBWQ4.js +77 -0
- package/dist/chunk-RB3YBWQ4.js.map +1 -0
- package/dist/chunk-RFW5SRZA.js +23 -0
- package/dist/chunk-RFW5SRZA.js.map +1 -0
- package/dist/chunk-RGJ3NBKE.js +8 -0
- package/dist/chunk-RGJ3NBKE.js.map +1 -0
- package/dist/chunk-SFNDR6DI.js +485 -0
- package/dist/chunk-SFNDR6DI.js.map +1 -0
- package/dist/chunk-SWC5CNKE.js +13 -0
- package/dist/chunk-SWC5CNKE.js.map +1 -0
- package/dist/chunk-TLS54G6Y.js +15 -0
- package/dist/chunk-TLS54G6Y.js.map +1 -0
- package/dist/chunk-WCQVDF3K.js +12 -0
- package/dist/{chunk-7QVYU63E.js.map → chunk-WCQVDF3K.js.map} +1 -1
- package/dist/chunk-WGT345SV.js +427 -0
- package/dist/chunk-WGT345SV.js.map +1 -0
- package/dist/chunk-X7APG7G2.js +1566 -0
- package/dist/chunk-X7APG7G2.js.map +1 -0
- package/dist/chunk-XALU6LOT.js +306 -0
- package/dist/chunk-XALU6LOT.js.map +1 -0
- package/dist/chunk-YNKKEO2A.js +336 -0
- package/dist/chunk-YNKKEO2A.js.map +1 -0
- package/dist/chunk-ZBW3BA5R.js +148 -0
- package/dist/chunk-ZBW3BA5R.js.map +1 -0
- package/dist/{chunk-FXKIWONG.js → chunk-ZIBNLXIV.js} +12 -6
- package/dist/chunk-ZIBNLXIV.js.map +1 -0
- package/dist/chunk-ZMSIYLSI.js +563 -0
- package/dist/chunk-ZMSIYLSI.js.map +1 -0
- package/dist/chunk-ZQMNGPLE.js +981 -0
- package/dist/chunk-ZQMNGPLE.js.map +1 -0
- package/dist/chunk-ZRD4FQBT.js +153 -0
- package/dist/chunk-ZRD4FQBT.js.map +1 -0
- package/dist/client.cjs +11289 -439
- package/dist/client.cjs.map +1 -1
- package/dist/client.d.cts +68 -117
- package/dist/client.d.ts +68 -117
- package/dist/client.js +58 -40
- package/dist/client.js.map +1 -1
- package/dist/components/Accordion/index.cjs +900 -0
- package/dist/components/Accordion/index.cjs.map +1 -0
- package/dist/components/Accordion/index.d.cts +72 -0
- package/dist/components/Accordion/index.d.ts +72 -0
- package/dist/components/Accordion/index.js +10 -0
- package/dist/components/Accordion/index.js.map +1 -0
- package/dist/components/Alert/index.cjs +567 -0
- package/dist/components/Alert/index.cjs.map +1 -0
- package/dist/components/Alert/index.d.cts +41 -0
- package/dist/components/Alert/index.d.ts +41 -0
- package/dist/components/Alert/index.js +8 -0
- package/dist/components/Alert/index.js.map +1 -0
- package/dist/components/AlertDialog/index.cjs +892 -0
- package/dist/components/AlertDialog/index.cjs.map +1 -0
- package/dist/components/AlertDialog/index.d.cts +68 -0
- package/dist/components/AlertDialog/index.d.ts +68 -0
- package/dist/components/AlertDialog/index.js +9 -0
- package/dist/components/AlertDialog/index.js.map +1 -0
- package/dist/components/Avatar/index.cjs +427 -0
- package/dist/components/Avatar/index.cjs.map +1 -0
- package/dist/components/Avatar/index.d.cts +40 -0
- package/dist/components/Avatar/index.d.ts +40 -0
- package/dist/components/Avatar/index.js +7 -0
- package/dist/components/Avatar/index.js.map +1 -0
- package/dist/components/Badge/index.cjs +433 -0
- package/dist/components/Badge/index.cjs.map +1 -0
- package/dist/components/Badge/index.d.cts +35 -0
- package/dist/components/Badge/index.d.ts +35 -0
- package/dist/components/Badge/index.js +7 -0
- package/dist/components/Badge/index.js.map +1 -0
- package/dist/components/Box/index.cjs +415 -0
- package/dist/components/Box/index.cjs.map +1 -0
- package/dist/components/Box/index.d.cts +24 -0
- package/dist/components/Box/index.d.ts +24 -0
- package/dist/components/Box/index.js +9 -0
- package/dist/components/Box/index.js.map +1 -0
- package/dist/components/Breadcrumb/index.cjs +1939 -0
- package/dist/components/Breadcrumb/index.cjs.map +1 -0
- package/dist/components/Breadcrumb/index.d.cts +186 -0
- package/dist/components/Breadcrumb/index.d.ts +186 -0
- package/dist/components/Breadcrumb/index.js +11 -0
- package/dist/components/Breadcrumb/index.js.map +1 -0
- package/dist/components/Button/index.cjs +631 -0
- package/dist/components/Button/index.cjs.map +1 -0
- package/dist/components/Button/index.d.cts +27 -0
- package/dist/components/Button/index.d.ts +27 -0
- package/dist/components/Button/index.js +9 -0
- package/dist/components/Button/index.js.map +1 -0
- package/dist/components/Calendar/index.cjs +3017 -0
- package/dist/components/Calendar/index.cjs.map +1 -0
- package/dist/components/Calendar/index.d.cts +169 -0
- package/dist/components/Calendar/index.d.ts +169 -0
- package/dist/components/Calendar/index.js +11 -0
- package/dist/components/Calendar/index.js.map +1 -0
- package/dist/components/Card/index.cjs +469 -0
- package/dist/components/Card/index.cjs.map +1 -0
- package/dist/components/Card/index.d.cts +33 -0
- package/dist/components/Card/index.d.ts +33 -0
- package/dist/components/Card/index.js +7 -0
- package/dist/components/Card/index.js.map +1 -0
- package/dist/components/Checkbox/index.cjs +590 -0
- package/dist/components/Checkbox/index.cjs.map +1 -0
- package/dist/components/Checkbox/index.d.cts +22 -0
- package/dist/components/Checkbox/index.d.ts +22 -0
- package/dist/components/Checkbox/index.js +9 -0
- package/dist/components/Checkbox/index.js.map +1 -0
- package/dist/components/Dialog/index.cjs +888 -0
- package/dist/components/Dialog/index.cjs.map +1 -0
- package/dist/components/Dialog/index.d.cts +56 -0
- package/dist/components/Dialog/index.d.ts +56 -0
- package/dist/components/Dialog/index.js +10 -0
- package/dist/components/Dialog/index.js.map +1 -0
- package/dist/components/FloatButton/index.cjs +1254 -0
- package/dist/components/FloatButton/index.cjs.map +1 -0
- package/dist/components/FloatButton/index.d.cts +133 -0
- package/dist/components/FloatButton/index.d.ts +133 -0
- package/dist/components/FloatButton/index.js +11 -0
- package/dist/components/FloatButton/index.js.map +1 -0
- package/dist/components/HStack/index.cjs +480 -0
- package/dist/components/HStack/index.cjs.map +1 -0
- package/dist/components/HStack/index.d.cts +24 -0
- package/dist/components/HStack/index.d.ts +24 -0
- package/dist/components/HStack/index.js +9 -0
- package/dist/components/HStack/index.js.map +1 -0
- package/dist/components/InputGroup/index.cjs +638 -0
- package/dist/components/InputGroup/index.cjs.map +1 -0
- package/dist/components/InputGroup/index.d.cts +33 -0
- package/dist/components/InputGroup/index.d.ts +33 -0
- package/dist/components/InputGroup/index.js +7 -0
- package/dist/components/InputGroup/index.js.map +1 -0
- package/dist/components/Pagination/index.cjs +2501 -0
- package/dist/components/Pagination/index.cjs.map +1 -0
- package/dist/components/Pagination/index.d.cts +164 -0
- package/dist/components/Pagination/index.d.ts +164 -0
- package/dist/components/Pagination/index.js +12 -0
- package/dist/components/Pagination/index.js.map +1 -0
- package/dist/components/Popover/index.cjs +739 -0
- package/dist/components/Popover/index.cjs.map +1 -0
- package/dist/components/Popover/index.d.cts +44 -0
- package/dist/components/Popover/index.d.ts +44 -0
- package/dist/components/Popover/index.js +8 -0
- package/dist/components/Popover/index.js.map +1 -0
- package/dist/components/Progress/index.cjs +493 -0
- package/dist/components/Progress/index.cjs.map +1 -0
- package/dist/components/Progress/index.d.cts +63 -0
- package/dist/components/Progress/index.d.ts +63 -0
- package/dist/components/Progress/index.js +7 -0
- package/dist/components/Progress/index.js.map +1 -0
- package/dist/components/Radio/index.cjs +584 -0
- package/dist/components/Radio/index.cjs.map +1 -0
- package/dist/components/Radio/index.d.cts +51 -0
- package/dist/components/Radio/index.d.ts +51 -0
- package/dist/components/Radio/index.js +7 -0
- package/dist/components/Radio/index.js.map +1 -0
- package/dist/components/SegmentedControl/index.cjs +502 -0
- package/dist/components/SegmentedControl/index.cjs.map +1 -0
- package/dist/components/SegmentedControl/index.d.cts +45 -0
- package/dist/components/SegmentedControl/index.d.ts +45 -0
- package/dist/components/SegmentedControl/index.js +7 -0
- package/dist/components/SegmentedControl/index.js.map +1 -0
- package/dist/components/Select/index.cjs +1359 -0
- package/dist/components/Select/index.cjs.map +1 -0
- package/dist/components/Select/index.d.cts +140 -0
- package/dist/components/Select/index.d.ts +140 -0
- package/dist/components/Select/index.js +8 -0
- package/dist/components/Select/index.js.map +1 -0
- package/dist/components/Separator/index.cjs +358 -0
- package/dist/components/Separator/index.cjs.map +1 -0
- package/dist/components/Separator/index.d.cts +28 -0
- package/dist/components/Separator/index.d.ts +28 -0
- package/dist/components/Separator/index.js +6 -0
- package/dist/components/Separator/index.js.map +1 -0
- package/dist/components/Skeleton/index.cjs +384 -0
- package/dist/components/Skeleton/index.cjs.map +1 -0
- package/dist/components/Skeleton/index.d.cts +30 -0
- package/dist/components/Skeleton/index.d.ts +30 -0
- package/dist/components/Skeleton/index.js +6 -0
- package/dist/components/Skeleton/index.js.map +1 -0
- package/dist/components/Slider/index.cjs +880 -0
- package/dist/components/Slider/index.cjs.map +1 -0
- package/dist/components/Slider/index.d.cts +84 -0
- package/dist/components/Slider/index.d.ts +84 -0
- package/dist/components/Slider/index.js +6 -0
- package/dist/components/Slider/index.js.map +1 -0
- package/dist/components/Spinner/index.cjs +32 -0
- package/dist/components/Spinner/index.cjs.map +1 -0
- package/dist/components/Spinner/index.d.cts +25 -0
- package/dist/components/Spinner/index.d.ts +25 -0
- package/dist/components/Spinner/index.js +4 -0
- package/dist/components/Spinner/index.js.map +1 -0
- package/dist/components/Switch/index.cjs +623 -0
- package/dist/components/Switch/index.cjs.map +1 -0
- package/dist/components/Switch/index.d.cts +22 -0
- package/dist/components/Switch/index.d.ts +22 -0
- package/dist/components/Switch/index.js +10 -0
- package/dist/components/Switch/index.js.map +1 -0
- package/dist/components/Tabs/index.cjs +630 -0
- package/dist/components/Tabs/index.cjs.map +1 -0
- package/dist/components/Tabs/index.d.cts +63 -0
- package/dist/components/Tabs/index.d.ts +63 -0
- package/dist/components/Tabs/index.js +7 -0
- package/dist/components/Tabs/index.js.map +1 -0
- package/dist/components/Text/index.cjs +401 -0
- package/dist/components/Text/index.cjs.map +1 -0
- package/dist/components/Text/index.d.cts +24 -0
- package/dist/components/Text/index.d.ts +24 -0
- package/dist/components/Text/index.js +7 -0
- package/dist/components/Text/index.js.map +1 -0
- package/dist/components/TextArea/index.cjs +482 -0
- package/dist/components/TextArea/index.cjs.map +1 -0
- package/dist/components/TextArea/index.d.cts +25 -0
- package/dist/components/TextArea/index.d.ts +25 -0
- package/dist/components/TextArea/index.js +8 -0
- package/dist/components/TextArea/index.js.map +1 -0
- package/dist/components/TextInput/index.cjs +477 -0
- package/dist/components/TextInput/index.cjs.map +1 -0
- package/dist/components/TextInput/index.d.cts +33 -0
- package/dist/components/TextInput/index.d.ts +33 -0
- package/dist/components/TextInput/index.js +7 -0
- package/dist/components/TextInput/index.js.map +1 -0
- package/dist/components/Toast/index.cjs +167 -0
- package/dist/components/Toast/index.cjs.map +1 -0
- package/dist/components/Toast/index.d.cts +143 -0
- package/dist/components/Toast/index.d.ts +143 -0
- package/dist/components/Toast/index.js +4 -0
- package/dist/components/Toast/index.js.map +1 -0
- package/dist/components/Toggle/index.cjs +770 -0
- package/dist/components/Toggle/index.cjs.map +1 -0
- package/dist/components/Toggle/index.d.cts +83 -0
- package/dist/components/Toggle/index.d.ts +83 -0
- package/dist/components/Toggle/index.js +7 -0
- package/dist/components/Toggle/index.js.map +1 -0
- package/dist/components/Tooltip/index.cjs +813 -0
- package/dist/components/Tooltip/index.cjs.map +1 -0
- package/dist/components/Tooltip/index.d.cts +55 -0
- package/dist/components/Tooltip/index.d.ts +55 -0
- package/dist/components/Tooltip/index.js +8 -0
- package/dist/components/Tooltip/index.js.map +1 -0
- package/dist/components/VStack/index.cjs +480 -0
- package/dist/components/VStack/index.cjs.map +1 -0
- package/dist/components/VStack/index.d.cts +19 -0
- package/dist/components/VStack/index.d.ts +19 -0
- package/dist/components/VStack/index.js +9 -0
- package/dist/components/VStack/index.js.map +1 -0
- package/dist/i18n/index.cjs +39 -3
- package/dist/i18n/index.cjs.map +1 -1
- package/dist/i18n/index.d.cts +4 -60
- package/dist/i18n/index.d.ts +4 -60
- package/dist/i18n/index.js +3 -2
- package/dist/icons/index.cjs +326 -26
- package/dist/icons/index.cjs.map +1 -1
- package/dist/icons/index.js +4 -3
- package/dist/index-D3_M3G6U.d.ts +19 -0
- package/dist/index-uXPK_Rg8.d.cts +19 -0
- package/dist/index.cjs +11176 -463
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +39 -183
- package/dist/index.d.ts +39 -183
- package/dist/index.js +49 -9
- package/dist/resolve-D-GOaxZy.d.cts +60 -0
- package/dist/resolve-D-GOaxZy.d.ts +60 -0
- package/dist/slot/index.cjs +9 -3
- package/dist/slot/index.cjs.map +1 -1
- package/dist/slot/index.js +2 -2
- package/dist/stories/index.cjs +108 -0
- package/dist/stories/index.cjs.map +1 -0
- package/dist/stories/index.d.cts +46 -0
- package/dist/stories/index.d.ts +46 -0
- package/dist/stories/index.js +94 -0
- package/dist/stories/index.js.map +1 -0
- package/dist/theme/index.cjs +259 -26
- package/dist/theme/index.cjs.map +1 -1
- package/dist/theme/index.d.cts +26 -0
- package/dist/theme/index.d.ts +26 -0
- package/dist/theme/index.js +4 -3
- package/dist/use-theme-CoqfnvRs.d.cts +112 -0
- package/dist/use-theme-CoqfnvRs.d.ts +112 -0
- package/dist/utils/cn.cjs +18 -6
- package/dist/utils/cn.cjs.map +1 -1
- package/dist/utils/cn.js +2 -2
- package/package.json +41 -10
- package/dist/chunk-6OABNXBY.js +0 -213
- package/dist/chunk-6OABNXBY.js.map +0 -1
- package/dist/chunk-7QVYU63E.js +0 -6
- package/dist/chunk-FXKIWONG.js.map +0 -1
- package/dist/chunk-NDEDMCHT.js +0 -40
- package/dist/chunk-NDEDMCHT.js.map +0 -1
- package/dist/chunk-SSTXLK5I.js.map +0 -1
- package/dist/chunk-UAKFCMWK.js +0 -3
- package/dist/chunk-X3AJNNF6.js +0 -539
- package/dist/chunk-X3AJNNF6.js.map +0 -1
- package/dist/chunk-XGM2K4TT.js +0 -31
- package/dist/chunk-XGM2K4TT.js.map +0 -1
- package/dist/stories/story-registry.cjs +0 -776
- package/dist/stories/story-registry.cjs.map +0 -1
- package/dist/stories/story-registry.d.cts +0 -13
- package/dist/stories/story-registry.d.ts +0 -13
- package/dist/stories/story-registry.js +0 -106
- package/dist/stories/story-registry.js.map +0 -1
package/dist/theme/index.cjs
CHANGED
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
+
var react = require('react');
|
|
4
|
+
var jsxRuntime = require('nativewind/jsx-runtime');
|
|
5
|
+
var reactNative = require('react-native');
|
|
6
|
+
|
|
7
|
+
var __defProp = Object.defineProperty;
|
|
8
|
+
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
9
|
+
|
|
3
10
|
// ../tokens/build/theme.ts
|
|
4
11
|
var theme = {
|
|
5
12
|
color: {
|
|
@@ -18,20 +25,25 @@ var theme = {
|
|
|
18
25
|
"900": "#18181b"
|
|
19
26
|
},
|
|
20
27
|
primary: {
|
|
21
|
-
"100": "#
|
|
22
|
-
"200": "#
|
|
23
|
-
"300": "#
|
|
24
|
-
"400": "#
|
|
25
|
-
"50": "#
|
|
26
|
-
"500": "#
|
|
27
|
-
"600": "#
|
|
28
|
-
"700": "#
|
|
29
|
-
"800": "#
|
|
30
|
-
"900": "#
|
|
28
|
+
"100": "#ccfbf1",
|
|
29
|
+
"200": "#99f6e4",
|
|
30
|
+
"300": "#5eead4",
|
|
31
|
+
"400": "#2dd4bf",
|
|
32
|
+
"50": "#f0fdfa",
|
|
33
|
+
"500": "#14b8a6",
|
|
34
|
+
"600": "#0d9488",
|
|
35
|
+
"700": "#0f766e",
|
|
36
|
+
"800": "#115e59",
|
|
37
|
+
"900": "#134e4a"
|
|
31
38
|
},
|
|
32
39
|
success: "#22c55e",
|
|
33
40
|
warning: "#f59e0b"
|
|
34
41
|
},
|
|
42
|
+
fontFamily: {
|
|
43
|
+
body: "system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif",
|
|
44
|
+
display: "ui-serif, Georgia, 'Times New Roman', serif",
|
|
45
|
+
mono: "ui-monospace, 'SF Mono', Menlo, Consolas, 'DejaVu Sans Mono', monospace"
|
|
46
|
+
},
|
|
35
47
|
fontSize: {
|
|
36
48
|
"2xl": "24px",
|
|
37
49
|
"3xl": "30px",
|
|
@@ -74,9 +86,9 @@ var theme = {
|
|
|
74
86
|
},
|
|
75
87
|
interactive: {
|
|
76
88
|
destructive: "#ef4444",
|
|
77
|
-
primary: "#
|
|
78
|
-
primaryHover: "#
|
|
79
|
-
primaryPressed: "#
|
|
89
|
+
primary: "#0d9488",
|
|
90
|
+
primaryHover: "#0f766e",
|
|
91
|
+
primaryPressed: "#115e59"
|
|
80
92
|
},
|
|
81
93
|
text: {
|
|
82
94
|
default: "#18181b",
|
|
@@ -122,20 +134,25 @@ var themeDark = {
|
|
|
122
134
|
"900": "#18181b"
|
|
123
135
|
},
|
|
124
136
|
primary: {
|
|
125
|
-
"100": "#
|
|
126
|
-
"200": "#
|
|
127
|
-
"300": "#
|
|
128
|
-
"400": "#
|
|
129
|
-
"50": "#
|
|
130
|
-
"500": "#
|
|
131
|
-
"600": "#
|
|
132
|
-
"700": "#
|
|
133
|
-
"800": "#
|
|
134
|
-
"900": "#
|
|
137
|
+
"100": "#ccfbf1",
|
|
138
|
+
"200": "#99f6e4",
|
|
139
|
+
"300": "#5eead4",
|
|
140
|
+
"400": "#2dd4bf",
|
|
141
|
+
"50": "#f0fdfa",
|
|
142
|
+
"500": "#14b8a6",
|
|
143
|
+
"600": "#0d9488",
|
|
144
|
+
"700": "#0f766e",
|
|
145
|
+
"800": "#115e59",
|
|
146
|
+
"900": "#134e4a"
|
|
135
147
|
},
|
|
136
148
|
success: "#22c55e",
|
|
137
149
|
warning: "#f59e0b"
|
|
138
150
|
},
|
|
151
|
+
fontFamily: {
|
|
152
|
+
body: "system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif",
|
|
153
|
+
display: "ui-serif, Georgia, 'Times New Roman', serif",
|
|
154
|
+
mono: "ui-monospace, 'SF Mono', Menlo, Consolas, 'DejaVu Sans Mono', monospace"
|
|
155
|
+
},
|
|
139
156
|
fontSize: {
|
|
140
157
|
"2xl": "24px",
|
|
141
158
|
"3xl": "30px",
|
|
@@ -178,9 +195,9 @@ var themeDark = {
|
|
|
178
195
|
},
|
|
179
196
|
interactive: {
|
|
180
197
|
destructive: "#ef4444",
|
|
181
|
-
primary: "#
|
|
182
|
-
primaryHover: "#
|
|
183
|
-
primaryPressed: "#
|
|
198
|
+
primary: "#2dd4bf",
|
|
199
|
+
primaryHover: "#5eead4",
|
|
200
|
+
primaryPressed: "#99f6e4"
|
|
184
201
|
},
|
|
185
202
|
text: {
|
|
186
203
|
default: "#fafafa",
|
|
@@ -209,8 +226,224 @@ var themeDark = {
|
|
|
209
226
|
"8": "32px"
|
|
210
227
|
}
|
|
211
228
|
};
|
|
229
|
+
var defaultTheme = {
|
|
230
|
+
light: theme,
|
|
231
|
+
dark: themeDark
|
|
232
|
+
};
|
|
233
|
+
var ThemeContext = react.createContext(defaultTheme);
|
|
234
|
+
ThemeContext.displayName = "ThemeContext";
|
|
235
|
+
var isFullTheme = /* @__PURE__ */ __name((t) => "light" in t && "dark" in t, "isFullTheme");
|
|
236
|
+
function ThemeProvider({ theme: theme2, children }) {
|
|
237
|
+
const value = theme2 === void 0 ? defaultTheme : isFullTheme(theme2) ? theme2 : { light: theme2, dark: theme2 };
|
|
238
|
+
return /* @__PURE__ */ jsxRuntime.jsx(ThemeContext.Provider, { value, children });
|
|
239
|
+
}
|
|
240
|
+
__name(ThemeProvider, "ThemeProvider");
|
|
241
|
+
|
|
242
|
+
// src/theme/px.ts
|
|
243
|
+
function px(value) {
|
|
244
|
+
if (typeof value === "number") {
|
|
245
|
+
return value;
|
|
246
|
+
}
|
|
247
|
+
const n = Number.parseFloat(value);
|
|
248
|
+
return Number.isFinite(n) ? n : 0;
|
|
249
|
+
}
|
|
250
|
+
__name(px, "px");
|
|
251
|
+
|
|
252
|
+
// src/theme/themes.ts
|
|
253
|
+
var RAMPS = {
|
|
254
|
+
teal: {
|
|
255
|
+
"50": "#f0fdfa",
|
|
256
|
+
"100": "#ccfbf1",
|
|
257
|
+
"200": "#99f6e4",
|
|
258
|
+
"300": "#5eead4",
|
|
259
|
+
"400": "#2dd4bf",
|
|
260
|
+
"500": "#14b8a6",
|
|
261
|
+
"600": "#0d9488",
|
|
262
|
+
"700": "#0f766e",
|
|
263
|
+
"800": "#115e59",
|
|
264
|
+
"900": "#134e4a"
|
|
265
|
+
},
|
|
266
|
+
blue: {
|
|
267
|
+
"50": "#eff6ff",
|
|
268
|
+
"100": "#dbeafe",
|
|
269
|
+
"200": "#bfdbfe",
|
|
270
|
+
"300": "#93c5fd",
|
|
271
|
+
"400": "#60a5fa",
|
|
272
|
+
"500": "#3b82f6",
|
|
273
|
+
"600": "#2563eb",
|
|
274
|
+
"700": "#1d4ed8",
|
|
275
|
+
"800": "#1e40af",
|
|
276
|
+
"900": "#1e3a8a"
|
|
277
|
+
},
|
|
278
|
+
rose: {
|
|
279
|
+
"50": "#fff1f2",
|
|
280
|
+
"100": "#ffe4e6",
|
|
281
|
+
"200": "#fecdd3",
|
|
282
|
+
"300": "#fda4af",
|
|
283
|
+
"400": "#fb7185",
|
|
284
|
+
"500": "#f43f5e",
|
|
285
|
+
"600": "#e11d48",
|
|
286
|
+
"700": "#be123c",
|
|
287
|
+
"800": "#9f1239",
|
|
288
|
+
"900": "#881337"
|
|
289
|
+
},
|
|
290
|
+
violet: {
|
|
291
|
+
"50": "#f5f3ff",
|
|
292
|
+
"100": "#ede9fe",
|
|
293
|
+
"200": "#ddd6fe",
|
|
294
|
+
"300": "#c4b5fd",
|
|
295
|
+
"400": "#a78bfa",
|
|
296
|
+
"500": "#8b5cf6",
|
|
297
|
+
"600": "#7c3aed",
|
|
298
|
+
"700": "#6d28d9",
|
|
299
|
+
"800": "#5b21b6",
|
|
300
|
+
"900": "#4c1d95"
|
|
301
|
+
},
|
|
302
|
+
orange: {
|
|
303
|
+
"50": "#fff7ed",
|
|
304
|
+
"100": "#ffedd5",
|
|
305
|
+
"200": "#fed7aa",
|
|
306
|
+
"300": "#fdba74",
|
|
307
|
+
"400": "#fb923c",
|
|
308
|
+
"500": "#f97316",
|
|
309
|
+
"600": "#ea580c",
|
|
310
|
+
"700": "#c2410c",
|
|
311
|
+
"800": "#9a3412",
|
|
312
|
+
"900": "#7c2d12"
|
|
313
|
+
},
|
|
314
|
+
slate: {
|
|
315
|
+
"50": "#f8fafc",
|
|
316
|
+
"100": "#f1f5f9",
|
|
317
|
+
"200": "#e2e8f0",
|
|
318
|
+
"300": "#cbd5e1",
|
|
319
|
+
"400": "#94a3b8",
|
|
320
|
+
"500": "#64748b",
|
|
321
|
+
"600": "#475569",
|
|
322
|
+
"700": "#334155",
|
|
323
|
+
"800": "#1e293b",
|
|
324
|
+
"900": "#0f172a"
|
|
325
|
+
}
|
|
326
|
+
};
|
|
327
|
+
function buildPreset(ramp) {
|
|
328
|
+
const dark = themeDark;
|
|
329
|
+
return {
|
|
330
|
+
light: {
|
|
331
|
+
...theme,
|
|
332
|
+
color: { ...theme.color, primary: ramp },
|
|
333
|
+
semantic: {
|
|
334
|
+
...theme.semantic,
|
|
335
|
+
interactive: {
|
|
336
|
+
...theme.semantic.interactive,
|
|
337
|
+
primary: ramp["600"],
|
|
338
|
+
primaryHover: ramp["700"],
|
|
339
|
+
primaryPressed: ramp["800"]
|
|
340
|
+
}
|
|
341
|
+
}
|
|
342
|
+
},
|
|
343
|
+
dark: {
|
|
344
|
+
...dark,
|
|
345
|
+
color: { ...dark.color, primary: ramp },
|
|
346
|
+
semantic: {
|
|
347
|
+
...dark.semantic,
|
|
348
|
+
interactive: {
|
|
349
|
+
...dark.semantic.interactive,
|
|
350
|
+
// Brighter step on dark so the brand reads against the
|
|
351
|
+
// deep-zinc background — matches the default teal recipe
|
|
352
|
+
// (teal-400 on dark vs teal-600 on light).
|
|
353
|
+
primary: ramp["400"],
|
|
354
|
+
primaryHover: ramp["300"],
|
|
355
|
+
primaryPressed: ramp["200"]
|
|
356
|
+
}
|
|
357
|
+
}
|
|
358
|
+
}
|
|
359
|
+
};
|
|
360
|
+
}
|
|
361
|
+
__name(buildPreset, "buildPreset");
|
|
362
|
+
var tealTheme = buildPreset(RAMPS.teal);
|
|
363
|
+
var blueTheme = buildPreset(RAMPS.blue);
|
|
364
|
+
var roseTheme = buildPreset(RAMPS.rose);
|
|
365
|
+
var violetTheme = buildPreset(RAMPS.violet);
|
|
366
|
+
var orangeTheme = buildPreset(RAMPS.orange);
|
|
367
|
+
var slateTheme = buildPreset(RAMPS.slate);
|
|
368
|
+
var presetThemes = {
|
|
369
|
+
teal: tealTheme,
|
|
370
|
+
blue: blueTheme,
|
|
371
|
+
rose: roseTheme,
|
|
372
|
+
violet: violetTheme,
|
|
373
|
+
orange: orangeTheme,
|
|
374
|
+
slate: slateTheme
|
|
375
|
+
};
|
|
376
|
+
var ColorSchemeOverrideContext = react.createContext(null);
|
|
377
|
+
ColorSchemeOverrideContext.displayName = "ColorSchemeOverrideContext";
|
|
378
|
+
function ColorSchemeProvider({ value, children }) {
|
|
379
|
+
return /* @__PURE__ */ jsxRuntime.jsx(ColorSchemeOverrideContext.Provider, { value, children });
|
|
380
|
+
}
|
|
381
|
+
__name(ColorSchemeProvider, "ColorSchemeProvider");
|
|
382
|
+
var isWeb = reactNative.Platform.OS === "web";
|
|
383
|
+
function readWebScheme() {
|
|
384
|
+
if (typeof document === "undefined") {
|
|
385
|
+
return "light";
|
|
386
|
+
}
|
|
387
|
+
const root = document.documentElement;
|
|
388
|
+
if (root.classList.contains("dark")) {
|
|
389
|
+
return "dark";
|
|
390
|
+
}
|
|
391
|
+
if (root.getAttribute("data-theme") === "dark") {
|
|
392
|
+
return "dark";
|
|
393
|
+
}
|
|
394
|
+
return "light";
|
|
395
|
+
}
|
|
396
|
+
__name(readWebScheme, "readWebScheme");
|
|
397
|
+
function useColorScheme() {
|
|
398
|
+
const override = react.useContext(ColorSchemeOverrideContext);
|
|
399
|
+
const [scheme, setScheme] = react.useState(() => {
|
|
400
|
+
if (isWeb) {
|
|
401
|
+
return readWebScheme();
|
|
402
|
+
}
|
|
403
|
+
return reactNative.Appearance.getColorScheme() ?? "light";
|
|
404
|
+
});
|
|
405
|
+
react.useEffect(() => {
|
|
406
|
+
if (isWeb) {
|
|
407
|
+
const root = document.documentElement;
|
|
408
|
+
const update = /* @__PURE__ */ __name(() => setScheme(readWebScheme()), "update");
|
|
409
|
+
const observer = new MutationObserver(update);
|
|
410
|
+
observer.observe(root, { attributes: true, attributeFilter: ["class", "data-theme"] });
|
|
411
|
+
update();
|
|
412
|
+
return () => observer.disconnect();
|
|
413
|
+
}
|
|
414
|
+
const sub = reactNative.Appearance.addChangeListener(({ colorScheme }) => {
|
|
415
|
+
setScheme(colorScheme ?? "light");
|
|
416
|
+
});
|
|
417
|
+
return () => sub.remove();
|
|
418
|
+
}, []);
|
|
419
|
+
return override ?? scheme;
|
|
420
|
+
}
|
|
421
|
+
__name(useColorScheme, "useColorScheme");
|
|
422
|
+
function useThemeColors() {
|
|
423
|
+
const scheme = useColorScheme();
|
|
424
|
+
const themePair = react.useContext(ThemeContext);
|
|
425
|
+
return scheme === "dark" ? themePair.dark : themePair.light;
|
|
426
|
+
}
|
|
427
|
+
__name(useThemeColors, "useThemeColors");
|
|
428
|
+
|
|
429
|
+
// src/theme/use-theme.ts
|
|
430
|
+
var useTheme = useThemeColors;
|
|
212
431
|
|
|
432
|
+
exports.ColorSchemeProvider = ColorSchemeProvider;
|
|
433
|
+
exports.ThemeProvider = ThemeProvider;
|
|
434
|
+
exports.blueTheme = blueTheme;
|
|
435
|
+
exports.defaultTheme = defaultTheme;
|
|
436
|
+
exports.orangeTheme = orangeTheme;
|
|
437
|
+
exports.presetThemes = presetThemes;
|
|
438
|
+
exports.px = px;
|
|
439
|
+
exports.roseTheme = roseTheme;
|
|
440
|
+
exports.slateTheme = slateTheme;
|
|
441
|
+
exports.tealTheme = tealTheme;
|
|
213
442
|
exports.theme = theme;
|
|
214
443
|
exports.themeDark = themeDark;
|
|
444
|
+
exports.useColorScheme = useColorScheme;
|
|
445
|
+
exports.useTheme = useTheme;
|
|
446
|
+
exports.useThemeColors = useThemeColors;
|
|
447
|
+
exports.violetTheme = violetTheme;
|
|
215
448
|
//# sourceMappingURL=index.cjs.map
|
|
216
449
|
//# sourceMappingURL=index.cjs.map
|
package/dist/theme/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../tokens/build/theme.ts"],"names":[],"mappings":"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","file":"index.cjs","sourcesContent":["// GENERATED by @nori-ui/tokens — DO NOT EDIT.\n// Run `yarn build:tokens` to regenerate.\n\n// Generated for light mode.\n// Do not edit — run `yarn build:tokens`.\n\nexport const theme = {\n color: {\n danger: \"#ef4444\",\n info: \"#3b82f6\",\n neutral: {\n \"100\": \"#f4f4f5\",\n \"200\": \"#e4e4e7\",\n \"300\": \"#d4d4d8\",\n \"400\": \"#a1a1aa\",\n \"50\": \"#fafafa\",\n \"500\": \"#71717a\",\n \"600\": \"#52525b\",\n \"700\": \"#3f3f46\",\n \"800\": \"#27272a\",\n \"900\": \"#18181b\",\n },\n primary: {\n \"100\": \"#dbeafe\",\n \"200\": \"#bfdbfe\",\n \"300\": \"#93c5fd\",\n \"400\": \"#60a5fa\",\n \"50\": \"#f0f7ff\",\n \"500\": \"#3b82f6\",\n \"600\": \"#2563eb\",\n \"700\": \"#1d4ed8\",\n \"800\": \"#1e40af\",\n \"900\": \"#1e3a8a\",\n },\n success: \"#22c55e\",\n warning: \"#f59e0b\",\n },\n fontSize: {\n \"2xl\": \"24px\",\n \"3xl\": \"30px\",\n \"4xl\": \"36px\",\n lg: \"18px\",\n md: \"16px\",\n sm: \"14px\",\n xl: \"20px\",\n xs: \"12px\",\n },\n fontWeight: {\n bold: \"700\",\n medium: \"500\",\n regular: \"400\",\n semibold: \"600\",\n },\n lineHeight: {\n normal: \"1.4\",\n relaxed: \"1.6\",\n tight: \"1.2\",\n },\n radius: {\n \"2xl\": \"16px\",\n full: \"9999px\",\n lg: \"8px\",\n md: \"6px\",\n none: \"0px\",\n sm: \"4px\",\n xl: \"12px\",\n },\n semantic: {\n background: {\n default: \"#fafafa\",\n elevated: \"#ffffff\",\n subtle: \"#f4f4f5\",\n },\n border: {\n default: \"#e4e4e7\",\n strong: \"#d4d4d8\",\n },\n interactive: {\n destructive: \"#ef4444\",\n primary: \"#2563eb\",\n primaryHover: \"#1d4ed8\",\n primaryPressed: \"#1e40af\",\n },\n text: {\n default: \"#18181b\",\n inverted: \"#fafafa\",\n muted: \"#52525b\",\n },\n },\n shadow: {\n lg: \"0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1)\",\n md: \"0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1)\",\n sm: \"0 1px 2px 0 rgba(0, 0, 0, 0.05)\",\n },\n spacing: {\n \"0\": \"0px\",\n \"1\": \"4px\",\n \"10\": \"40px\",\n \"12\": \"48px\",\n \"16\": \"64px\",\n \"2\": \"8px\",\n \"20\": \"80px\",\n \"24\": \"96px\",\n \"3\": \"12px\",\n \"4\": \"16px\",\n \"5\": \"20px\",\n \"6\": \"24px\",\n \"8\": \"32px\",\n },\n} as const;\n\nexport type Theme = typeof theme;\n\n\n// Dark mode overrides\n// Generated for dark mode.\n// Do not edit — run `yarn build:tokens`.\n\nexport const themeDark = {\n color: {\n danger: \"#ef4444\",\n info: \"#3b82f6\",\n neutral: {\n \"100\": \"#f4f4f5\",\n \"200\": \"#e4e4e7\",\n \"300\": \"#d4d4d8\",\n \"400\": \"#a1a1aa\",\n \"50\": \"#fafafa\",\n \"500\": \"#71717a\",\n \"600\": \"#52525b\",\n \"700\": \"#3f3f46\",\n \"800\": \"#27272a\",\n \"900\": \"#18181b\",\n },\n primary: {\n \"100\": \"#dbeafe\",\n \"200\": \"#bfdbfe\",\n \"300\": \"#93c5fd\",\n \"400\": \"#60a5fa\",\n \"50\": \"#f0f7ff\",\n \"500\": \"#3b82f6\",\n \"600\": \"#2563eb\",\n \"700\": \"#1d4ed8\",\n \"800\": \"#1e40af\",\n \"900\": \"#1e3a8a\",\n },\n success: \"#22c55e\",\n warning: \"#f59e0b\",\n },\n fontSize: {\n \"2xl\": \"24px\",\n \"3xl\": \"30px\",\n \"4xl\": \"36px\",\n lg: \"18px\",\n md: \"16px\",\n sm: \"14px\",\n xl: \"20px\",\n xs: \"12px\",\n },\n fontWeight: {\n bold: \"700\",\n medium: \"500\",\n regular: \"400\",\n semibold: \"600\",\n },\n lineHeight: {\n normal: \"1.4\",\n relaxed: \"1.6\",\n tight: \"1.2\",\n },\n radius: {\n \"2xl\": \"16px\",\n full: \"9999px\",\n lg: \"8px\",\n md: \"6px\",\n none: \"0px\",\n sm: \"4px\",\n xl: \"12px\",\n },\n semantic: {\n background: {\n default: \"#18181b\",\n elevated: \"#3f3f46\",\n subtle: \"#27272a\",\n },\n border: {\n default: \"#3f3f46\",\n strong: \"#52525b\",\n },\n interactive: {\n destructive: \"#ef4444\",\n primary: \"#60a5fa\",\n primaryHover: \"#93c5fd\",\n primaryPressed: \"#bfdbfe\",\n },\n text: {\n default: \"#fafafa\",\n inverted: \"#18181b\",\n muted: \"#a1a1aa\",\n },\n },\n shadow: {\n lg: \"0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1)\",\n md: \"0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1)\",\n sm: \"0 1px 2px 0 rgba(0, 0, 0, 0.05)\",\n },\n spacing: {\n \"0\": \"0px\",\n \"1\": \"4px\",\n \"10\": \"40px\",\n \"12\": \"48px\",\n \"16\": \"64px\",\n \"2\": \"8px\",\n \"20\": \"80px\",\n \"24\": \"96px\",\n \"3\": \"12px\",\n \"4\": \"16px\",\n \"5\": \"20px\",\n \"6\": \"24px\",\n \"8\": \"32px\",\n },\n} as const;\n\n"]}
|
|
1
|
+
{"version":3,"sources":["../../../tokens/build/theme.ts","../../src/theme/context.tsx","../../src/theme/px.ts","../../src/theme/themes.ts","../../src/theme/use-color-scheme.tsx","../../src/theme/use-theme-colors.ts","../../src/theme/use-theme.ts"],"names":["createContext","theme","jsx","Platform","useContext","useState","Appearance","useEffect"],"mappings":"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","file":"index.cjs","sourcesContent":["// GENERATED by @nori-ui/tokens — DO NOT EDIT.\n// Run `yarn build:tokens` to regenerate.\n\n// Generated for light mode.\n// Do not edit — run `yarn build:tokens`.\n\nexport const theme = {\n color: {\n danger: \"#ef4444\",\n info: \"#3b82f6\",\n neutral: {\n \"100\": \"#f4f4f5\",\n \"200\": \"#e4e4e7\",\n \"300\": \"#d4d4d8\",\n \"400\": \"#a1a1aa\",\n \"50\": \"#fafafa\",\n \"500\": \"#71717a\",\n \"600\": \"#52525b\",\n \"700\": \"#3f3f46\",\n \"800\": \"#27272a\",\n \"900\": \"#18181b\",\n },\n primary: {\n \"100\": \"#ccfbf1\",\n \"200\": \"#99f6e4\",\n \"300\": \"#5eead4\",\n \"400\": \"#2dd4bf\",\n \"50\": \"#f0fdfa\",\n \"500\": \"#14b8a6\",\n \"600\": \"#0d9488\",\n \"700\": \"#0f766e\",\n \"800\": \"#115e59\",\n \"900\": \"#134e4a\",\n },\n success: \"#22c55e\",\n warning: \"#f59e0b\",\n },\n fontFamily: {\n body: \"system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif\",\n display: \"ui-serif, Georgia, 'Times New Roman', serif\",\n mono: \"ui-monospace, 'SF Mono', Menlo, Consolas, 'DejaVu Sans Mono', monospace\",\n },\n fontSize: {\n \"2xl\": \"24px\",\n \"3xl\": \"30px\",\n \"4xl\": \"36px\",\n lg: \"18px\",\n md: \"16px\",\n sm: \"14px\",\n xl: \"20px\",\n xs: \"12px\",\n },\n fontWeight: {\n bold: \"700\",\n medium: \"500\",\n regular: \"400\",\n semibold: \"600\",\n },\n lineHeight: {\n normal: \"1.4\",\n relaxed: \"1.6\",\n tight: \"1.2\",\n },\n radius: {\n \"2xl\": \"16px\",\n full: \"9999px\",\n lg: \"8px\",\n md: \"6px\",\n none: \"0px\",\n sm: \"4px\",\n xl: \"12px\",\n },\n semantic: {\n background: {\n default: \"#fafafa\",\n elevated: \"#ffffff\",\n subtle: \"#f4f4f5\",\n },\n border: {\n default: \"#e4e4e7\",\n strong: \"#d4d4d8\",\n },\n interactive: {\n destructive: \"#ef4444\",\n primary: \"#0d9488\",\n primaryHover: \"#0f766e\",\n primaryPressed: \"#115e59\",\n },\n text: {\n default: \"#18181b\",\n inverted: \"#fafafa\",\n muted: \"#52525b\",\n },\n },\n shadow: {\n lg: \"0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1)\",\n md: \"0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1)\",\n sm: \"0 1px 2px 0 rgba(0, 0, 0, 0.05)\",\n },\n spacing: {\n \"0\": \"0px\",\n \"1\": \"4px\",\n \"10\": \"40px\",\n \"12\": \"48px\",\n \"16\": \"64px\",\n \"2\": \"8px\",\n \"20\": \"80px\",\n \"24\": \"96px\",\n \"3\": \"12px\",\n \"4\": \"16px\",\n \"5\": \"20px\",\n \"6\": \"24px\",\n \"8\": \"32px\",\n },\n} as const;\n\nexport type Theme = typeof theme;\n\n\n// Dark mode overrides\n// Generated for dark mode.\n// Do not edit — run `yarn build:tokens`.\n\nexport const themeDark = {\n color: {\n danger: \"#ef4444\",\n info: \"#3b82f6\",\n neutral: {\n \"100\": \"#f4f4f5\",\n \"200\": \"#e4e4e7\",\n \"300\": \"#d4d4d8\",\n \"400\": \"#a1a1aa\",\n \"50\": \"#fafafa\",\n \"500\": \"#71717a\",\n \"600\": \"#52525b\",\n \"700\": \"#3f3f46\",\n \"800\": \"#27272a\",\n \"900\": \"#18181b\",\n },\n primary: {\n \"100\": \"#ccfbf1\",\n \"200\": \"#99f6e4\",\n \"300\": \"#5eead4\",\n \"400\": \"#2dd4bf\",\n \"50\": \"#f0fdfa\",\n \"500\": \"#14b8a6\",\n \"600\": \"#0d9488\",\n \"700\": \"#0f766e\",\n \"800\": \"#115e59\",\n \"900\": \"#134e4a\",\n },\n success: \"#22c55e\",\n warning: \"#f59e0b\",\n },\n fontFamily: {\n body: \"system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif\",\n display: \"ui-serif, Georgia, 'Times New Roman', serif\",\n mono: \"ui-monospace, 'SF Mono', Menlo, Consolas, 'DejaVu Sans Mono', monospace\",\n },\n fontSize: {\n \"2xl\": \"24px\",\n \"3xl\": \"30px\",\n \"4xl\": \"36px\",\n lg: \"18px\",\n md: \"16px\",\n sm: \"14px\",\n xl: \"20px\",\n xs: \"12px\",\n },\n fontWeight: {\n bold: \"700\",\n medium: \"500\",\n regular: \"400\",\n semibold: \"600\",\n },\n lineHeight: {\n normal: \"1.4\",\n relaxed: \"1.6\",\n tight: \"1.2\",\n },\n radius: {\n \"2xl\": \"16px\",\n full: \"9999px\",\n lg: \"8px\",\n md: \"6px\",\n none: \"0px\",\n sm: \"4px\",\n xl: \"12px\",\n },\n semantic: {\n background: {\n default: \"#18181b\",\n elevated: \"#3f3f46\",\n subtle: \"#27272a\",\n },\n border: {\n default: \"#3f3f46\",\n strong: \"#52525b\",\n },\n interactive: {\n destructive: \"#ef4444\",\n primary: \"#2dd4bf\",\n primaryHover: \"#5eead4\",\n primaryPressed: \"#99f6e4\",\n },\n text: {\n default: \"#fafafa\",\n inverted: \"#18181b\",\n muted: \"#a1a1aa\",\n },\n },\n shadow: {\n lg: \"0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1)\",\n md: \"0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1)\",\n sm: \"0 1px 2px 0 rgba(0, 0, 0, 0.05)\",\n },\n spacing: {\n \"0\": \"0px\",\n \"1\": \"4px\",\n \"10\": \"40px\",\n \"12\": \"48px\",\n \"16\": \"64px\",\n \"2\": \"8px\",\n \"20\": \"80px\",\n \"24\": \"96px\",\n \"3\": \"12px\",\n \"4\": \"16px\",\n \"5\": \"20px\",\n \"6\": \"24px\",\n \"8\": \"32px\",\n },\n} as const;\n\n","'use client';\n\nimport { themeDark as defaultDark, theme as defaultLight, type Theme } from '@nori-ui/tokens';\nimport type { ReactNode } from 'react';\nimport { createContext } from 'react';\n\n/**\n * A `NoriTheme` is a paired light/dark palette. The active half is picked\n * by `useColorScheme()` so the same theme object covers both schemes.\n *\n * Build one yourself by spreading the defaults and overriding the colors\n * you care about, or pick a preset from `@nori-ui/core/themes` (see the\n * Theming docs for examples).\n */\nexport type NoriTheme = {\n light: Theme;\n dark: Theme;\n};\n\n/**\n * Default Nori palette — teal primary on a warm-paper light surface, and\n * teal-400 primary on a deep-zinc dark surface. Mirrors the `theme` /\n * `themeDark` exports from @nori-ui/tokens.\n */\nexport const defaultTheme: NoriTheme = {\n light: defaultLight,\n dark: defaultDark as unknown as Theme,\n};\n\n// Context value is the FULL pair, not the active half. `useThemeColors`\n// (the hook components reach for) resolves it to the right one based on\n// the current color scheme. Storing the pair means a parent only has to\n// declare the theme once — switching scheme is a separate concern.\nexport const ThemeContext = createContext<NoriTheme>(defaultTheme);\nThemeContext.displayName = 'ThemeContext';\n\nexport type ThemeProviderProps = {\n /**\n * The theme to apply to descendants. Pass either:\n * - a full `NoriTheme` (`{ light, dark }`) — both schemes covered\n * - a single `Theme` — used for both light and dark (rare; mostly\n * useful when you ONLY ever render in one scheme)\n * - omit — falls back to the Nori default (teal palette)\n */\n theme?: NoriTheme | Theme;\n children?: ReactNode;\n};\n\nconst isFullTheme = (t: NoriTheme | Theme): t is NoriTheme => 'light' in t && 'dark' in t;\n\nexport function ThemeProvider({ theme, children }: ThemeProviderProps) {\n const value: NoriTheme =\n theme === undefined ? defaultTheme : isFullTheme(theme) ? theme : { light: theme, dark: theme };\n return <ThemeContext.Provider value={value}>{children}</ThemeContext.Provider>;\n}\n","/**\n * Strip the `px` suffix from a CSS-flavored token value and return a\n * number, the form React Native style props expect for properties like\n * `borderRadius`, `paddingHorizontal`, `fontSize`, etc.\n *\n * The tokens package emits all dimensional tokens as `${number}px`\n * strings (it's the lingua franca for both CSS and Style Dictionary\n * consumers); inside RN we need the unitless number. RN-Web tolerates\n * both, but native is strict.\n *\n * Falls through unchanged for tokens that already came in as numbers\n * (forward-compat).\n *\n * Examples:\n * px('6px') → 6\n * px('1.5px') → 1.5\n * px(6) → 6\n * px('foo') → 0 (defensive — bad input shouldn't crash render)\n */\nexport function px(value: string | number): number {\n if (typeof value === 'number') {\n return value;\n }\n const n = Number.parseFloat(value);\n return Number.isFinite(n) ? n : 0;\n}\n","import { themeDark as defaultDark, theme as defaultLight, type Theme } from '@nori-ui/tokens';\nimport type { NoriTheme } from './context';\n\n/**\n * Built-in theme presets. Pass any of these to `<NoriProvider theme={...}>`\n * (or `<ThemeProvider theme={...}>` directly) to swap the brand color\n * across the whole component library.\n *\n * Each preset overrides the `primary` color ramp AND the semantic\n * `interactive.primary` / `primaryHover` / `primaryPressed` derivations.\n * Backgrounds, borders, neutrals, and the destructive/warning/success\n * tones stay identical to the default — themes are about brand identity,\n * not full re-skins. (For a full re-skin, build your own NoriTheme by\n * spreading `defaultTheme` and overriding whatever you need.)\n *\n * Custom theme example:\n *\n * import { defaultTheme } from '@nori-ui/core/theme';\n * const myTheme: NoriTheme = {\n * light: { ...defaultTheme.light, color: { ...defaultTheme.light.color, primary: { ... } } },\n * dark: { ...defaultTheme.dark, color: { ...defaultTheme.dark.color, primary: { ... } } },\n * };\n */\n\n// Each ramp follows the same 50-900 step pattern as the default teal —\n// values picked from the Tailwind palette so they sit in a familiar\n// brightness scale. The \"primary 600\" step is the canonical resting\n// brand color for buttons; \"primary 700\" is the hover; \"primary 400\"\n// is the dark-mode brand color (brighter to read against #18181b).\ntype PrimaryRamp = {\n '50': string;\n '100': string;\n '200': string;\n '300': string;\n '400': string;\n '500': string;\n '600': string;\n '700': string;\n '800': string;\n '900': string;\n};\n\nconst RAMPS = {\n teal: {\n '50': '#f0fdfa',\n '100': '#ccfbf1',\n '200': '#99f6e4',\n '300': '#5eead4',\n '400': '#2dd4bf',\n '500': '#14b8a6',\n '600': '#0d9488',\n '700': '#0f766e',\n '800': '#115e59',\n '900': '#134e4a',\n },\n blue: {\n '50': '#eff6ff',\n '100': '#dbeafe',\n '200': '#bfdbfe',\n '300': '#93c5fd',\n '400': '#60a5fa',\n '500': '#3b82f6',\n '600': '#2563eb',\n '700': '#1d4ed8',\n '800': '#1e40af',\n '900': '#1e3a8a',\n },\n rose: {\n '50': '#fff1f2',\n '100': '#ffe4e6',\n '200': '#fecdd3',\n '300': '#fda4af',\n '400': '#fb7185',\n '500': '#f43f5e',\n '600': '#e11d48',\n '700': '#be123c',\n '800': '#9f1239',\n '900': '#881337',\n },\n violet: {\n '50': '#f5f3ff',\n '100': '#ede9fe',\n '200': '#ddd6fe',\n '300': '#c4b5fd',\n '400': '#a78bfa',\n '500': '#8b5cf6',\n '600': '#7c3aed',\n '700': '#6d28d9',\n '800': '#5b21b6',\n '900': '#4c1d95',\n },\n orange: {\n '50': '#fff7ed',\n '100': '#ffedd5',\n '200': '#fed7aa',\n '300': '#fdba74',\n '400': '#fb923c',\n '500': '#f97316',\n '600': '#ea580c',\n '700': '#c2410c',\n '800': '#9a3412',\n '900': '#7c2d12',\n },\n slate: {\n '50': '#f8fafc',\n '100': '#f1f5f9',\n '200': '#e2e8f0',\n '300': '#cbd5e1',\n '400': '#94a3b8',\n '500': '#64748b',\n '600': '#475569',\n '700': '#334155',\n '800': '#1e293b',\n '900': '#0f172a',\n },\n} as const satisfies Record<string, PrimaryRamp>;\n\n/**\n * Build a NoriTheme by swapping the primary ramp into the default.\n *\n * The unknown-cast is unavoidable: the generated `Theme` type narrows\n * each color hex to its specific string literal (e.g. `'#0d9488'` for\n * `primary.600`), so a generic `PrimaryRamp` ramp can't be assigned\n * structurally. The runtime shape is identical — we just convince TS.\n */\nfunction buildPreset(ramp: PrimaryRamp): NoriTheme {\n const dark = defaultDark as unknown as Theme;\n return {\n light: {\n ...defaultLight,\n color: { ...defaultLight.color, primary: ramp },\n semantic: {\n ...defaultLight.semantic,\n interactive: {\n ...defaultLight.semantic.interactive,\n primary: ramp['600'],\n primaryHover: ramp['700'],\n primaryPressed: ramp['800'],\n },\n },\n } as unknown as Theme,\n dark: {\n ...dark,\n color: { ...dark.color, primary: ramp },\n semantic: {\n ...dark.semantic,\n interactive: {\n ...dark.semantic.interactive,\n // Brighter step on dark so the brand reads against the\n // deep-zinc background — matches the default teal recipe\n // (teal-400 on dark vs teal-600 on light).\n primary: ramp['400'],\n primaryHover: ramp['300'],\n primaryPressed: ramp['200'],\n },\n },\n } as unknown as Theme,\n };\n}\n\n/** The default Nori palette — teal primary. */\nexport const tealTheme: NoriTheme = buildPreset(RAMPS.teal);\n/** Tailwind blue primary. Calm, technical. */\nexport const blueTheme: NoriTheme = buildPreset(RAMPS.blue);\n/** Tailwind rose primary. Warm, energetic. */\nexport const roseTheme: NoriTheme = buildPreset(RAMPS.rose);\n/** Tailwind violet primary. Modern, software. */\nexport const violetTheme: NoriTheme = buildPreset(RAMPS.violet);\n/** Tailwind orange primary. Lively, social. */\nexport const orangeTheme: NoriTheme = buildPreset(RAMPS.orange);\n/** Tailwind slate primary. Neutral, low-saturation — for tools that should fade into the work. */\nexport const slateTheme: NoriTheme = buildPreset(RAMPS.slate);\n\n/** All bundled presets, keyed by name. Useful for theme pickers and tests. */\nexport const presetThemes = {\n teal: tealTheme,\n blue: blueTheme,\n rose: roseTheme,\n violet: violetTheme,\n orange: orangeTheme,\n slate: slateTheme,\n} as const;\n\nexport type PresetThemeName = keyof typeof presetThemes;\n","'use client';\n\nimport { createContext, type ReactNode, useContext, useEffect, useState } from 'react';\nimport { Appearance, Platform } from 'react-native';\n\nexport type ColorScheme = 'light' | 'dark';\n\n// Override channel so a parent can force a scheme (e.g. an app shell with\n// hard-coded dark chrome that wants nested components to render against\n// the dark token half regardless of the OS Appearance). `null` means\n// \"no override — use the system signal\".\nconst ColorSchemeOverrideContext = createContext<ColorScheme | null>(null);\nColorSchemeOverrideContext.displayName = 'ColorSchemeOverrideContext';\n\nexport type ColorSchemeProviderProps = {\n /** Force a specific scheme for descendants. */\n value: ColorScheme;\n children?: ReactNode;\n};\n\n/**\n * Forces a color scheme for all descendants. Useful when a screen's chrome\n * is hard-coded to one scheme (e.g. a forced-dark editorial surface) and\n * you want library components inside it to follow that, not the OS.\n */\nexport function ColorSchemeProvider({ value, children }: ColorSchemeProviderProps) {\n return <ColorSchemeOverrideContext.Provider value={value}>{children}</ColorSchemeOverrideContext.Provider>;\n}\n\nconst isWeb = Platform.OS === 'web';\n\n// Web: a document is \"in dark mode\" when the root <html> element carries\n// the `dark` class (Tailwind / Fumadocs convention) OR a `data-theme=\"dark\"`\n// attribute (matches the `darkMode` selectors in our Tailwind preset).\n// We deliberately don't fall back to `prefers-color-scheme` — the app\n// usually owns that decision and writes it onto <html>; tracking the system\n// preference too would fight the app's chosen value.\nfunction readWebScheme(): ColorScheme {\n if (typeof document === 'undefined') {\n return 'light';\n }\n const root = document.documentElement;\n if (root.classList.contains('dark')) {\n return 'dark';\n }\n if (root.getAttribute('data-theme') === 'dark') {\n return 'dark';\n }\n return 'light';\n}\n\n/**\n * Returns the current color scheme — `'light'` or `'dark'`.\n *\n * On web: observes the root `<html>` element's `class=\"dark\"` and\n * `data-theme=\"dark\"` attribute (the same signals our Tailwind preset\n * keys on). Updates live as those flip.\n *\n * On native: delegates to `react-native`'s `Appearance` API so the hook\n * tracks the OS preference without extra wiring.\n *\n * Components consume this indirectly via `useThemeColors()`; reach for\n * this directly when you need the raw scheme (e.g. to swap an icon).\n */\nexport function useColorScheme(): ColorScheme {\n // A `<ColorSchemeProvider value=\"dark\">` ancestor (or NoriProvider's\n // `colorScheme` prop, which mounts one) wins over the OS signal — the\n // app shell knows which scheme its chrome is locked to.\n const override = useContext(ColorSchemeOverrideContext);\n\n const [scheme, setScheme] = useState<ColorScheme>(() => {\n if (isWeb) {\n return readWebScheme();\n }\n return (Appearance.getColorScheme() ?? 'light') as ColorScheme;\n });\n\n useEffect(() => {\n if (isWeb) {\n const root = document.documentElement;\n const update = () => setScheme(readWebScheme());\n const observer = new MutationObserver(update);\n observer.observe(root, { attributes: true, attributeFilter: ['class', 'data-theme'] });\n // Sync once after mount in case SSR shipped a different value.\n update();\n return () => observer.disconnect();\n }\n\n const sub = Appearance.addChangeListener(({ colorScheme }) => {\n setScheme((colorScheme ?? 'light') as ColorScheme);\n });\n return () => sub.remove();\n }, []);\n\n return override ?? scheme;\n}\n","'use client';\n\nimport type { Theme } from '@nori-ui/tokens';\nimport { useContext } from 'react';\nimport { ThemeContext } from './context';\nimport { useColorScheme } from './use-color-scheme';\n\n/**\n * Returns the active token palette — `theme.light` in light mode,\n * `theme.dark` in dark mode. Resolves the theme via `ThemeContext` so\n * any ancestor `<ThemeProvider theme={...}>` flows through. With no\n * provider in the tree, the default Nori palette (teal) is used.\n *\n * Use this **inside a component** when you need a hex value for a React\n * Native `style` prop (`backgroundColor`, `borderColor`, etc.).\n *\n * Note: className-based styles (e.g. `bg-semantic-interactive-primary`)\n * compile against the @nori-ui/tokens palette at build time and don't\n * follow `<ThemeProvider>` overrides today. Inline styles via this hook\n * always do — and inline beats class on CSS specificity, so the visible\n * color you see is whatever the hook resolves to. CSS-variable theming\n * for the className path is a planned follow-up.\n */\nexport function useThemeColors(): Theme {\n const scheme = useColorScheme();\n const themePair = useContext(ThemeContext);\n return scheme === 'dark' ? themePair.dark : themePair.light;\n}\n","'use client';\n\nimport { useThemeColors } from './use-theme-colors';\n\n/**\n * Returns the active token palette — equivalent to `useThemeColors()`.\n * Kept as a separate name for clarity in user code; both hooks return\n * the same `Theme` object resolved from the current `<ThemeProvider>`\n * and color scheme.\n */\nexport const useTheme = useThemeColors;\n"]}
|
package/dist/theme/index.d.cts
CHANGED
|
@@ -1 +1,27 @@
|
|
|
1
1
|
export { Theme, theme, themeDark } from '@nori-ui/tokens';
|
|
2
|
+
export { C as ColorScheme, a as ColorSchemeProvider, b as ColorSchemeProviderProps, N as NoriTheme, P as PresetThemeName, T as ThemeProvider, c as ThemeProviderProps, d as blueTheme, e as defaultTheme, o as orangeTheme, p as presetThemes, r as roseTheme, s as slateTheme, t as tealTheme, u as useColorScheme, f as useTheme, g as useThemeColors, v as violetTheme } from '../use-theme-CoqfnvRs.cjs';
|
|
3
|
+
import 'react/jsx-runtime';
|
|
4
|
+
import 'react';
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Strip the `px` suffix from a CSS-flavored token value and return a
|
|
8
|
+
* number, the form React Native style props expect for properties like
|
|
9
|
+
* `borderRadius`, `paddingHorizontal`, `fontSize`, etc.
|
|
10
|
+
*
|
|
11
|
+
* The tokens package emits all dimensional tokens as `${number}px`
|
|
12
|
+
* strings (it's the lingua franca for both CSS and Style Dictionary
|
|
13
|
+
* consumers); inside RN we need the unitless number. RN-Web tolerates
|
|
14
|
+
* both, but native is strict.
|
|
15
|
+
*
|
|
16
|
+
* Falls through unchanged for tokens that already came in as numbers
|
|
17
|
+
* (forward-compat).
|
|
18
|
+
*
|
|
19
|
+
* Examples:
|
|
20
|
+
* px('6px') → 6
|
|
21
|
+
* px('1.5px') → 1.5
|
|
22
|
+
* px(6) → 6
|
|
23
|
+
* px('foo') → 0 (defensive — bad input shouldn't crash render)
|
|
24
|
+
*/
|
|
25
|
+
declare function px(value: string | number): number;
|
|
26
|
+
|
|
27
|
+
export { px };
|
package/dist/theme/index.d.ts
CHANGED
|
@@ -1 +1,27 @@
|
|
|
1
1
|
export { Theme, theme, themeDark } from '@nori-ui/tokens';
|
|
2
|
+
export { C as ColorScheme, a as ColorSchemeProvider, b as ColorSchemeProviderProps, N as NoriTheme, P as PresetThemeName, T as ThemeProvider, c as ThemeProviderProps, d as blueTheme, e as defaultTheme, o as orangeTheme, p as presetThemes, r as roseTheme, s as slateTheme, t as tealTheme, u as useColorScheme, f as useTheme, g as useThemeColors, v as violetTheme } from '../use-theme-CoqfnvRs.js';
|
|
3
|
+
import 'react/jsx-runtime';
|
|
4
|
+
import 'react';
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Strip the `px` suffix from a CSS-flavored token value and return a
|
|
8
|
+
* number, the form React Native style props expect for properties like
|
|
9
|
+
* `borderRadius`, `paddingHorizontal`, `fontSize`, etc.
|
|
10
|
+
*
|
|
11
|
+
* The tokens package emits all dimensional tokens as `${number}px`
|
|
12
|
+
* strings (it's the lingua franca for both CSS and Style Dictionary
|
|
13
|
+
* consumers); inside RN we need the unitless number. RN-Web tolerates
|
|
14
|
+
* both, but native is strict.
|
|
15
|
+
*
|
|
16
|
+
* Falls through unchanged for tokens that already came in as numbers
|
|
17
|
+
* (forward-compat).
|
|
18
|
+
*
|
|
19
|
+
* Examples:
|
|
20
|
+
* px('6px') → 6
|
|
21
|
+
* px('1.5px') → 1.5
|
|
22
|
+
* px(6) → 6
|
|
23
|
+
* px('foo') → 0 (defensive — bad input shouldn't crash render)
|
|
24
|
+
*/
|
|
25
|
+
declare function px(value: string | number): number;
|
|
26
|
+
|
|
27
|
+
export { px };
|
package/dist/theme/index.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
export {
|
|
3
|
-
|
|
1
|
+
export { blueTheme, orangeTheme, presetThemes, roseTheme, slateTheme, tealTheme, useTheme, violetTheme } from '../chunk-MDOZGILD.js';
|
|
2
|
+
export { px } from '../chunk-5A2QOOVN.js';
|
|
3
|
+
export { ColorSchemeProvider, ThemeProvider, defaultTheme, theme, themeDark, useColorScheme, useThemeColors } from '../chunk-R5JMDDCB.js';
|
|
4
|
+
import '../chunk-WCQVDF3K.js';
|
|
4
5
|
//# sourceMappingURL=index.js.map
|
|
5
6
|
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { ReactNode } from 'react';
|
|
3
|
+
import { Theme } from '@nori-ui/tokens';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* A `NoriTheme` is a paired light/dark palette. The active half is picked
|
|
7
|
+
* by `useColorScheme()` so the same theme object covers both schemes.
|
|
8
|
+
*
|
|
9
|
+
* Build one yourself by spreading the defaults and overriding the colors
|
|
10
|
+
* you care about, or pick a preset from `@nori-ui/core/themes` (see the
|
|
11
|
+
* Theming docs for examples).
|
|
12
|
+
*/
|
|
13
|
+
type NoriTheme = {
|
|
14
|
+
light: Theme;
|
|
15
|
+
dark: Theme;
|
|
16
|
+
};
|
|
17
|
+
/**
|
|
18
|
+
* Default Nori palette — teal primary on a warm-paper light surface, and
|
|
19
|
+
* teal-400 primary on a deep-zinc dark surface. Mirrors the `theme` /
|
|
20
|
+
* `themeDark` exports from @nori-ui/tokens.
|
|
21
|
+
*/
|
|
22
|
+
declare const defaultTheme: NoriTheme;
|
|
23
|
+
type ThemeProviderProps = {
|
|
24
|
+
/**
|
|
25
|
+
* The theme to apply to descendants. Pass either:
|
|
26
|
+
* - a full `NoriTheme` (`{ light, dark }`) — both schemes covered
|
|
27
|
+
* - a single `Theme` — used for both light and dark (rare; mostly
|
|
28
|
+
* useful when you ONLY ever render in one scheme)
|
|
29
|
+
* - omit — falls back to the Nori default (teal palette)
|
|
30
|
+
*/
|
|
31
|
+
theme?: NoriTheme | Theme;
|
|
32
|
+
children?: ReactNode;
|
|
33
|
+
};
|
|
34
|
+
declare function ThemeProvider({ theme, children }: ThemeProviderProps): react_jsx_runtime.JSX.Element;
|
|
35
|
+
|
|
36
|
+
/** The default Nori palette — teal primary. */
|
|
37
|
+
declare const tealTheme: NoriTheme;
|
|
38
|
+
/** Tailwind blue primary. Calm, technical. */
|
|
39
|
+
declare const blueTheme: NoriTheme;
|
|
40
|
+
/** Tailwind rose primary. Warm, energetic. */
|
|
41
|
+
declare const roseTheme: NoriTheme;
|
|
42
|
+
/** Tailwind violet primary. Modern, software. */
|
|
43
|
+
declare const violetTheme: NoriTheme;
|
|
44
|
+
/** Tailwind orange primary. Lively, social. */
|
|
45
|
+
declare const orangeTheme: NoriTheme;
|
|
46
|
+
/** Tailwind slate primary. Neutral, low-saturation — for tools that should fade into the work. */
|
|
47
|
+
declare const slateTheme: NoriTheme;
|
|
48
|
+
/** All bundled presets, keyed by name. Useful for theme pickers and tests. */
|
|
49
|
+
declare const presetThemes: {
|
|
50
|
+
readonly teal: NoriTheme;
|
|
51
|
+
readonly blue: NoriTheme;
|
|
52
|
+
readonly rose: NoriTheme;
|
|
53
|
+
readonly violet: NoriTheme;
|
|
54
|
+
readonly orange: NoriTheme;
|
|
55
|
+
readonly slate: NoriTheme;
|
|
56
|
+
};
|
|
57
|
+
type PresetThemeName = keyof typeof presetThemes;
|
|
58
|
+
|
|
59
|
+
type ColorScheme = 'light' | 'dark';
|
|
60
|
+
type ColorSchemeProviderProps = {
|
|
61
|
+
/** Force a specific scheme for descendants. */
|
|
62
|
+
value: ColorScheme;
|
|
63
|
+
children?: ReactNode;
|
|
64
|
+
};
|
|
65
|
+
/**
|
|
66
|
+
* Forces a color scheme for all descendants. Useful when a screen's chrome
|
|
67
|
+
* is hard-coded to one scheme (e.g. a forced-dark editorial surface) and
|
|
68
|
+
* you want library components inside it to follow that, not the OS.
|
|
69
|
+
*/
|
|
70
|
+
declare function ColorSchemeProvider({ value, children }: ColorSchemeProviderProps): react_jsx_runtime.JSX.Element;
|
|
71
|
+
/**
|
|
72
|
+
* Returns the current color scheme — `'light'` or `'dark'`.
|
|
73
|
+
*
|
|
74
|
+
* On web: observes the root `<html>` element's `class="dark"` and
|
|
75
|
+
* `data-theme="dark"` attribute (the same signals our Tailwind preset
|
|
76
|
+
* keys on). Updates live as those flip.
|
|
77
|
+
*
|
|
78
|
+
* On native: delegates to `react-native`'s `Appearance` API so the hook
|
|
79
|
+
* tracks the OS preference without extra wiring.
|
|
80
|
+
*
|
|
81
|
+
* Components consume this indirectly via `useThemeColors()`; reach for
|
|
82
|
+
* this directly when you need the raw scheme (e.g. to swap an icon).
|
|
83
|
+
*/
|
|
84
|
+
declare function useColorScheme(): ColorScheme;
|
|
85
|
+
|
|
86
|
+
/**
|
|
87
|
+
* Returns the active token palette — `theme.light` in light mode,
|
|
88
|
+
* `theme.dark` in dark mode. Resolves the theme via `ThemeContext` so
|
|
89
|
+
* any ancestor `<ThemeProvider theme={...}>` flows through. With no
|
|
90
|
+
* provider in the tree, the default Nori palette (teal) is used.
|
|
91
|
+
*
|
|
92
|
+
* Use this **inside a component** when you need a hex value for a React
|
|
93
|
+
* Native `style` prop (`backgroundColor`, `borderColor`, etc.).
|
|
94
|
+
*
|
|
95
|
+
* Note: className-based styles (e.g. `bg-semantic-interactive-primary`)
|
|
96
|
+
* compile against the @nori-ui/tokens palette at build time and don't
|
|
97
|
+
* follow `<ThemeProvider>` overrides today. Inline styles via this hook
|
|
98
|
+
* always do — and inline beats class on CSS specificity, so the visible
|
|
99
|
+
* color you see is whatever the hook resolves to. CSS-variable theming
|
|
100
|
+
* for the className path is a planned follow-up.
|
|
101
|
+
*/
|
|
102
|
+
declare function useThemeColors(): Theme;
|
|
103
|
+
|
|
104
|
+
/**
|
|
105
|
+
* Returns the active token palette — equivalent to `useThemeColors()`.
|
|
106
|
+
* Kept as a separate name for clarity in user code; both hooks return
|
|
107
|
+
* the same `Theme` object resolved from the current `<ThemeProvider>`
|
|
108
|
+
* and color scheme.
|
|
109
|
+
*/
|
|
110
|
+
declare const useTheme: typeof useThemeColors;
|
|
111
|
+
|
|
112
|
+
export { type ColorScheme as C, type NoriTheme as N, type PresetThemeName as P, ThemeProvider as T, ColorSchemeProvider as a, type ColorSchemeProviderProps as b, type ThemeProviderProps as c, blueTheme as d, defaultTheme as e, useTheme as f, useThemeColors as g, orangeTheme as o, presetThemes as p, roseTheme as r, slateTheme as s, tealTheme as t, useColorScheme as u, violetTheme as v };
|