colbrush 1.0.6 → 1.2.0
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/client.d.ts +8 -3
- package/dist/client.js +96 -98
- package/dist/styles.css +1 -1
- package/package.json +77 -73
package/dist/client.d.ts
CHANGED
|
@@ -3,11 +3,16 @@ import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
|
3
3
|
type TLanguage = 'English' | 'Korean';
|
|
4
4
|
declare const THEME_KEYS: readonly ["default", "protanopia", "deuteranopia", "tritanopia"];
|
|
5
5
|
type ThemeKey = (typeof THEME_KEYS)[number];
|
|
6
|
+
type ThemeContextType = {
|
|
7
|
+
theme: ThemeKey;
|
|
8
|
+
language: TLanguage;
|
|
9
|
+
updateTheme: (k: ThemeKey) => void;
|
|
10
|
+
updateLanguage: (t: TLanguage) => void;
|
|
11
|
+
};
|
|
12
|
+
declare const useTheme: () => ThemeContextType;
|
|
6
13
|
declare function ThemeProvider({ children }: {
|
|
7
14
|
children: React.ReactNode;
|
|
8
15
|
}): react_jsx_runtime.JSX.Element;
|
|
9
|
-
declare const useUpdateTheme: () => (k: ThemeKey) => void;
|
|
10
|
-
declare const useUpdateLanguage: () => (t: TLanguage) => void;
|
|
11
16
|
type ThemeType = ThemeKey;
|
|
12
17
|
declare const THEMES: Record<TLanguage, Record<"default" | "protanopia" | "deuteranopia" | "tritanopia", string>>;
|
|
13
18
|
|
|
@@ -20,4 +25,4 @@ type Props = {
|
|
|
20
25
|
};
|
|
21
26
|
declare function ThemeSwitcher({ options, className }: Props): react_jsx_runtime.JSX.Element;
|
|
22
27
|
|
|
23
|
-
export { THEMES, ThemeProvider, ThemeSwitcher, type ThemeType,
|
|
28
|
+
export { THEMES, type TLanguage, ThemeProvider, ThemeSwitcher, type ThemeType, useTheme };
|
package/dist/client.js
CHANGED
|
@@ -74,13 +74,11 @@ function ThemeProvider({ children }) {
|
|
|
74
74
|
}
|
|
75
75
|
};
|
|
76
76
|
const value = useMemo(
|
|
77
|
-
() => ({ theme,
|
|
77
|
+
() => ({ theme, language, updateTheme, updateLanguage }),
|
|
78
78
|
[theme, language]
|
|
79
79
|
);
|
|
80
80
|
return /* @__PURE__ */ jsx(ThemeContext.Provider, { value, children });
|
|
81
81
|
}
|
|
82
|
-
var useUpdateTheme = () => useTheme().updateTheme;
|
|
83
|
-
var useUpdateLanguage = () => useTheme().updateLanguage;
|
|
84
82
|
var THEMES = THEME_LABEL;
|
|
85
83
|
|
|
86
84
|
// src/components/ThemeSwitcher.tsx
|
|
@@ -506,26 +504,34 @@ var SvgDeuteranopia = (props) => /* @__PURE__ */ jsxs8(
|
|
|
506
504
|
{
|
|
507
505
|
xmlns: "http://www.w3.org/2000/svg",
|
|
508
506
|
fill: "none",
|
|
509
|
-
viewBox: "0 0
|
|
507
|
+
viewBox: "0 0 15 15",
|
|
510
508
|
...props,
|
|
511
509
|
children: [
|
|
512
510
|
/* @__PURE__ */ jsx9(
|
|
513
511
|
"rect",
|
|
514
512
|
{
|
|
515
|
-
width:
|
|
516
|
-
height:
|
|
517
|
-
x:
|
|
518
|
-
y:
|
|
513
|
+
width: 13.09,
|
|
514
|
+
height: 13.09,
|
|
515
|
+
x: 1.08,
|
|
516
|
+
y: 0.955,
|
|
519
517
|
stroke: "currentColor",
|
|
520
|
-
strokeWidth:
|
|
521
|
-
rx:
|
|
518
|
+
strokeWidth: 0.91,
|
|
519
|
+
rx: 6.545
|
|
522
520
|
}
|
|
523
521
|
),
|
|
524
522
|
/* @__PURE__ */ jsx9(
|
|
525
523
|
"path",
|
|
526
524
|
{
|
|
527
525
|
fill: "currentColor",
|
|
528
|
-
d: "
|
|
526
|
+
d: "M9.51 5.894q-.245-.734-.789-1.144-.538-.415-1.312-.415-.667 0-1.205.343-.534.345-.846 1.01-.308.667-.308 1.6t.313 1.6q.313.665.861 1.01.549.343 1.246.343.626 0 1.103-.261a1.87 1.87 0 0 0 .748-.754q.271-.492.282-1.138H7.665v-.81h2.84v.8q0 .907-.39 1.594-.389.687-1.081 1.061-.687.37-1.564.37-.984 0-1.738-.462-.748-.466-1.164-1.328-.41-.866-.41-2.025 0-1.153.41-2.015.416-.866 1.154-1.333.738-.465 1.687-.466.774 0 1.42.307.646.303 1.071.851.426.548.564 1.262z"
|
|
527
|
+
}
|
|
528
|
+
),
|
|
529
|
+
/* @__PURE__ */ jsx9(
|
|
530
|
+
"path",
|
|
531
|
+
{
|
|
532
|
+
stroke: "currentColor",
|
|
533
|
+
strokeWidth: 0.758,
|
|
534
|
+
d: "m2.375 1.082 11.667 11.667"
|
|
529
535
|
}
|
|
530
536
|
)
|
|
531
537
|
]
|
|
@@ -597,99 +603,91 @@ function ThemeSwitcher({ options, className }) {
|
|
|
597
603
|
e.stopPropagation();
|
|
598
604
|
setIsOpen((prev) => !prev);
|
|
599
605
|
};
|
|
600
|
-
return /* @__PURE__ */ jsx10(ThemeSwitcherPortal, { children: /* @__PURE__ */ jsxs9(
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
{
|
|
620
|
-
|
|
621
|
-
"
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
/* @__PURE__ */ jsx10("div", { children: list.map((opt) => {
|
|
625
|
-
const Icon = THEME_ICON[opt.key];
|
|
626
|
-
return /* @__PURE__ */ jsxs9("div", { children: [
|
|
627
|
-
/* @__PURE__ */ jsxs9(
|
|
628
|
-
"button",
|
|
629
|
-
{
|
|
630
|
-
type: "button",
|
|
631
|
-
role: "menuitemradio",
|
|
632
|
-
"aria-checked": theme === opt.key,
|
|
633
|
-
onClick: (e) => {
|
|
634
|
-
e.stopPropagation();
|
|
635
|
-
updateTheme(opt.key);
|
|
636
|
-
},
|
|
637
|
-
onMouseEnter: () => setHovered(opt.key),
|
|
638
|
-
onMouseLeave: () => setHovered(null),
|
|
639
|
-
className: [
|
|
640
|
-
"hover:cursor-pointer group text-[18px] text-[#3D4852] py-1 w-full h-[50px] text-center gap-[8px] flex items-center justify-center rounded-[18px] hover:bg-[#3D4852]",
|
|
641
|
-
theme === opt.key ? "bg-[#3D4852] text-[#ffffff]" : ""
|
|
642
|
-
].join(" "),
|
|
643
|
-
children: [
|
|
644
|
-
/* @__PURE__ */ jsx10(
|
|
645
|
-
Icon,
|
|
646
|
-
{
|
|
647
|
-
width: 24,
|
|
648
|
-
height: 24,
|
|
649
|
-
className: `inline-block ${theme === opt.key || hovered === opt.key ? "text-white" : "text-[#3D4852]"}`
|
|
650
|
-
}
|
|
651
|
-
),
|
|
652
|
-
/* @__PURE__ */ jsx10("span", { className: "group-hover:text-[#ffffff]", children: opt.label })
|
|
653
|
-
]
|
|
654
|
-
},
|
|
655
|
-
opt.key
|
|
656
|
-
),
|
|
657
|
-
opt.key !== "tritanopia" && /* @__PURE__ */ jsx10("div", { className: "border-b-[0.5px] border-b-[#D9D9D9] w-full" })
|
|
658
|
-
] }, opt.key);
|
|
659
|
-
}) }),
|
|
660
|
-
/* @__PURE__ */ jsx10("div", { className: "w-full border-[0.5px] border-[#B8B8B8]" }),
|
|
661
|
-
/* @__PURE__ */ jsx10("div", { className: "flex justify-evenly items-center gap-[10px] px-[10px] my-[15px]", children: language === "English" ? /* @__PURE__ */ jsxs9(
|
|
662
|
-
"div",
|
|
663
|
-
{
|
|
664
|
-
className: `hover:cursor-pointer flex text-[18px] text-[#3D4852] gap-[8px] items-center justify-center`,
|
|
665
|
-
onClick: () => updateLanguage("Korean"),
|
|
666
|
-
children: [
|
|
667
|
-
/* @__PURE__ */ jsx10(Us_default, {}),
|
|
668
|
-
"English"
|
|
669
|
-
]
|
|
670
|
-
}
|
|
671
|
-
) : /* @__PURE__ */ jsxs9(
|
|
672
|
-
"div",
|
|
606
|
+
return /* @__PURE__ */ jsx10(ThemeSwitcherPortal, { children: /* @__PURE__ */ jsxs9("div", { ref: wrapperRef, className: "z-[10000]", children: [
|
|
607
|
+
/* @__PURE__ */ jsx10(
|
|
608
|
+
"button",
|
|
609
|
+
{
|
|
610
|
+
type: "button",
|
|
611
|
+
"aria-haspopup": "menu",
|
|
612
|
+
"aria-expanded": isOpen,
|
|
613
|
+
onClick: toggle,
|
|
614
|
+
className: "fixed right-[25px] bottom-[25px] w-[60px] h-[60px] p-[10px] bg-[#ffffff] rounded-full flex justify-center items-center shadow-[0_0_3px_0_rgba(0,0,0,0.17)]",
|
|
615
|
+
children: isOpen ? /* @__PURE__ */ jsx10(X_default, { className: "self-center" }) : /* @__PURE__ */ jsx10(Logo_default, { className: "self-center" })
|
|
616
|
+
}
|
|
617
|
+
),
|
|
618
|
+
isOpen && /* @__PURE__ */ jsxs9(
|
|
619
|
+
"div",
|
|
620
|
+
{
|
|
621
|
+
role: "menu",
|
|
622
|
+
"aria-label": "Select theme",
|
|
623
|
+
className: "fixed bottom-[100px] right-[25px] flex-col bg-[#ffffff] rounded-[18px] w-[220px] gap-[11px]",
|
|
624
|
+
children: [
|
|
625
|
+
/* @__PURE__ */ jsx10("div", { children: list.map((opt) => {
|
|
626
|
+
const Icon = THEME_ICON[opt.key];
|
|
627
|
+
return /* @__PURE__ */ jsxs9("div", { children: [
|
|
628
|
+
/* @__PURE__ */ jsxs9(
|
|
629
|
+
"button",
|
|
673
630
|
{
|
|
674
|
-
|
|
675
|
-
|
|
631
|
+
type: "button",
|
|
632
|
+
role: "menuitemradio",
|
|
633
|
+
"aria-checked": theme === opt.key,
|
|
634
|
+
onClick: (e) => {
|
|
635
|
+
e.stopPropagation();
|
|
636
|
+
updateTheme(opt.key);
|
|
637
|
+
},
|
|
638
|
+
onMouseEnter: () => setHovered(opt.key),
|
|
639
|
+
onMouseLeave: () => setHovered(null),
|
|
640
|
+
className: [
|
|
641
|
+
"hover:cursor-pointer group text-[18px] text-[#3D4852] py-1 w-full h-[50px] text-center gap-[8px] flex items-center justify-center rounded-[18px] hover:bg-[#3D4852]",
|
|
642
|
+
theme === opt.key ? "bg-[#3D4852] text-[#ffffff]" : ""
|
|
643
|
+
].join(" "),
|
|
676
644
|
children: [
|
|
677
|
-
/* @__PURE__ */ jsx10(
|
|
678
|
-
|
|
645
|
+
/* @__PURE__ */ jsx10(
|
|
646
|
+
Icon,
|
|
647
|
+
{
|
|
648
|
+
width: 24,
|
|
649
|
+
height: 24,
|
|
650
|
+
className: `inline-block ${theme === opt.key || hovered === opt.key ? "text-white" : "text-[#3D4852]"}`
|
|
651
|
+
}
|
|
652
|
+
),
|
|
653
|
+
/* @__PURE__ */ jsx10("span", { className: "group-hover:text-[#ffffff]", children: opt.label })
|
|
679
654
|
]
|
|
680
|
-
}
|
|
681
|
-
|
|
682
|
-
|
|
683
|
-
|
|
684
|
-
|
|
685
|
-
|
|
686
|
-
|
|
687
|
-
|
|
655
|
+
},
|
|
656
|
+
opt.key
|
|
657
|
+
),
|
|
658
|
+
opt.key !== "tritanopia" && /* @__PURE__ */ jsx10("div", { className: "border-b-[0.5px] border-b-[#D9D9D9] w-full" })
|
|
659
|
+
] }, opt.key);
|
|
660
|
+
}) }),
|
|
661
|
+
/* @__PURE__ */ jsx10("div", { className: "w-full border-[0.5px] border-[#B8B8B8]" }),
|
|
662
|
+
/* @__PURE__ */ jsx10("div", { className: "flex justify-evenly items-center gap-[10px] px-[10px] my-[15px]", children: language === "English" ? /* @__PURE__ */ jsxs9(
|
|
663
|
+
"div",
|
|
664
|
+
{
|
|
665
|
+
className: `hover:cursor-pointer flex text-[18px] text-[#3D4852] gap-[8px] items-center justify-center`,
|
|
666
|
+
onClick: () => updateLanguage("Korean"),
|
|
667
|
+
children: [
|
|
668
|
+
/* @__PURE__ */ jsx10(Us_default, {}),
|
|
669
|
+
"English"
|
|
670
|
+
]
|
|
671
|
+
}
|
|
672
|
+
) : /* @__PURE__ */ jsxs9(
|
|
673
|
+
"div",
|
|
674
|
+
{
|
|
675
|
+
className: `hover:cursor-pointer flex text-[18px] text-[#3D4852] gap-[8px] items-center justify-center `,
|
|
676
|
+
onClick: () => updateLanguage("English"),
|
|
677
|
+
children: [
|
|
678
|
+
/* @__PURE__ */ jsx10(Kr_default, {}),
|
|
679
|
+
"Korean"
|
|
680
|
+
]
|
|
681
|
+
}
|
|
682
|
+
) })
|
|
683
|
+
]
|
|
684
|
+
}
|
|
685
|
+
)
|
|
686
|
+
] }) });
|
|
688
687
|
}
|
|
689
688
|
export {
|
|
690
689
|
THEMES,
|
|
691
690
|
ThemeProvider,
|
|
692
691
|
ThemeSwitcher,
|
|
693
|
-
|
|
694
|
-
useUpdateTheme
|
|
692
|
+
useTheme
|
|
695
693
|
};
|
package/dist/styles.css
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/*! tailwindcss v4.1.12 | MIT License | https://tailwindcss.com */
|
|
2
|
-
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-white:#fff;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.fixed{position:fixed}.right-\[25px\]{right:25px}.bottom-\[25px\]{bottom:25px}.bottom-\[100px\]{bottom:100px}.z-\[10000\]{z-index:10000}.my-\[15px\]{margin-block:15px}.block{display:block}.flex{display:flex}.inline{display:inline}.inline-block{display:inline-block}.h-\[50px\]{height:50px}.h-\[60px\]{height:60px}.
|
|
2
|
+
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-white:#fff;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.fixed{position:fixed}.right-\[25px\]{right:25px}.bottom-\[25px\]{bottom:25px}.bottom-\[100px\]{bottom:100px}.z-\[10000\]{z-index:10000}.my-\[15px\]{margin-block:15px}.block{display:block}.contents{display:contents}.flex{display:flex}.inline{display:inline}.inline-block{display:inline-block}.h-\[50px\]{height:50px}.h-\[60px\]{height:60px}.w-\[60px\]{width:60px}.w-\[220px\]{width:220px}.w-full{width:100%}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-evenly{justify-content:space-evenly}.gap-\[8px\]{gap:8px}.gap-\[10px\]{gap:10px}.gap-\[11px\]{gap:11px}.self-center{align-self:center}.rounded-\[18px\]{border-radius:18px}.rounded-full{border-radius:3.40282e38px}.border-\[0\.5px\]{border-style:var(--tw-border-style);border-width:.5px}.border-b-\[0\.5px\]{border-bottom-style:var(--tw-border-style);border-bottom-width:.5px}.border-\[\#B8B8B8\]{border-color:#b8b8b8}.border-b-\[\#D9D9D9\]{border-bottom-color:#d9d9d9}.bg-\[\#3D4852\]{background-color:#3d4852}.bg-\[\#ffffff\]{background-color:#fff}.p-\[10px\]{padding:10px}.px-\[10px\]{padding-inline:10px}.py-1{padding-block:calc(var(--spacing)*1)}.text-center{text-align:center}.text-\[18px\]{font-size:18px}.text-\[\#3D4852\]{color:#3d4852}.text-\[\#ffffff\]{color:#fff}.text-white{color:var(--color-white)}.shadow-\[0_0_3px_0_rgba\(0\,0\,0\,0\.17\)\]{--tw-shadow:0 0 3px 0 var(--tw-shadow-color,#0000002b);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}@media (hover:hover){.group-hover\:text-\[\#ffffff\]:is(:where(.group):hover *){color:#fff}.hover\:cursor-pointer:hover{cursor:pointer}.hover\:bg-\[\#3D4852\]:hover{background-color:#3d4852}}}svg rect{fill:none!important}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
|
package/package.json
CHANGED
|
@@ -1,76 +1,80 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
"
|
|
8
|
-
"
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
2
|
+
"name": "colbrush",
|
|
3
|
+
"version": "1.2.0",
|
|
4
|
+
"description": "A React theme switching library that makes it easy to apply color-blind accessible UI themes",
|
|
5
|
+
"homepage": "https://colbrush.vercel.app",
|
|
6
|
+
"repository": {
|
|
7
|
+
"type": "git",
|
|
8
|
+
"url": "https://github.com/2025-OSDC/colbrush.git"
|
|
9
|
+
},
|
|
10
|
+
"type": "module",
|
|
11
|
+
"main": "./dist/client.cjs",
|
|
12
|
+
"module": "./dist/client.js",
|
|
13
|
+
"types": "./dist/client.d.ts",
|
|
14
|
+
"exports": {
|
|
15
|
+
"./styles.css": "./dist/styles.css",
|
|
16
|
+
"./client": {
|
|
17
|
+
"types": "./dist/client.d.ts",
|
|
18
|
+
"import": "./dist/client.js",
|
|
19
|
+
"require": "./dist/client.cjs"
|
|
17
20
|
},
|
|
18
|
-
"
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
"files": [
|
|
26
|
-
"dist"
|
|
27
|
-
],
|
|
28
|
-
"sideEffects": [
|
|
29
|
-
"dist/styles.css"
|
|
30
|
-
],
|
|
31
|
-
"bin": {
|
|
32
|
-
"colbrush": "./dist/cli.cjs"
|
|
33
|
-
},
|
|
34
|
-
"scripts": {
|
|
35
|
-
"svgr": "svgr src/assets --out-dir src/icons --typescript --expand-props end --svgo-config svgo.config.js",
|
|
36
|
-
"build:css": "tailwindcss -i ./src/styles.css -o ./dist/styles.css --minify",
|
|
37
|
-
"build": "pnpm svgr && tsup --config tsup.config.ts && pnpm build:css",
|
|
38
|
-
"dev": "tsup --config tsup.config.ts --watch",
|
|
39
|
-
"prepublishOnly": "pnpm build"
|
|
40
|
-
},
|
|
41
|
-
"keywords": [],
|
|
42
|
-
"author": "",
|
|
43
|
-
"license": "MIT",
|
|
44
|
-
"dependencies": {
|
|
45
|
-
"chokidar": "^3.6.0",
|
|
46
|
-
"chroma-js": "^3.1.2",
|
|
47
|
-
"color-blind": "^0.1.3",
|
|
48
|
-
"colorjs.io": "^0.5.2",
|
|
49
|
-
"postcss": "^8.5.6",
|
|
50
|
-
"postcss-safe-parser": "^7.0.1"
|
|
51
|
-
},
|
|
52
|
-
"peerDependencies": {
|
|
53
|
-
"react": ">=17",
|
|
54
|
-
"react-dom": ">=17"
|
|
55
|
-
},
|
|
56
|
-
"devDependencies": {
|
|
57
|
-
"@svgr/cli": "^8.1.0",
|
|
58
|
-
"@tailwindcss/cli": "^4.1.12",
|
|
59
|
-
"@types/chroma-js": "^3.1.1",
|
|
60
|
-
"@types/jest": "^30.0.0",
|
|
61
|
-
"@types/node": "^24.1.0",
|
|
62
|
-
"@types/postcss-safe-parser": "^5.0.4",
|
|
63
|
-
"@types/react": "^19.1.9",
|
|
64
|
-
"@types/react-dom": "^19.1.7",
|
|
65
|
-
"esbuild-plugin-svgr": "^3.1.1",
|
|
66
|
-
"eslint": "^9.32.0",
|
|
67
|
-
"eslint-config-prettier": "^10.1.8",
|
|
68
|
-
"eslint-plugin-import": "^2.32.0",
|
|
69
|
-
"jest": "^30.0.5",
|
|
70
|
-
"prettier": "^3.6.2",
|
|
71
|
-
"tailwindcss": "^4.1.12",
|
|
72
|
-
"ts-jest": "^29.4.0",
|
|
73
|
-
"tsup": "^8.5.0",
|
|
74
|
-
"typescript": "^5.8.3"
|
|
21
|
+
"./package.json": "./package.json"
|
|
22
|
+
},
|
|
23
|
+
"typesVersions": {
|
|
24
|
+
"*": {
|
|
25
|
+
"*": [
|
|
26
|
+
"./dist/client.d.ts"
|
|
27
|
+
]
|
|
75
28
|
}
|
|
76
|
-
}
|
|
29
|
+
},
|
|
30
|
+
"files": [
|
|
31
|
+
"dist"
|
|
32
|
+
],
|
|
33
|
+
"sideEffects": [
|
|
34
|
+
"dist/styles.css"
|
|
35
|
+
],
|
|
36
|
+
"bin": {
|
|
37
|
+
"colbrush": "./dist/cli.cjs"
|
|
38
|
+
},
|
|
39
|
+
"keywords": [],
|
|
40
|
+
"author": "TEAM ColorBrush",
|
|
41
|
+
"license": "MIT",
|
|
42
|
+
"dependencies": {
|
|
43
|
+
"chokidar": "^3.6.0",
|
|
44
|
+
"chroma-js": "^3.1.2",
|
|
45
|
+
"color-blind": "^0.1.3",
|
|
46
|
+
"colorjs.io": "^0.5.2",
|
|
47
|
+
"postcss": "^8.5.6",
|
|
48
|
+
"postcss-safe-parser": "^7.0.1"
|
|
49
|
+
},
|
|
50
|
+
"peerDependencies": {
|
|
51
|
+
"react": ">=17",
|
|
52
|
+
"react-dom": ">=17"
|
|
53
|
+
},
|
|
54
|
+
"devDependencies": {
|
|
55
|
+
"@svgr/cli": "^8.1.0",
|
|
56
|
+
"@tailwindcss/cli": "^4.1.12",
|
|
57
|
+
"@types/chroma-js": "^3.1.1",
|
|
58
|
+
"@types/jest": "^30.0.0",
|
|
59
|
+
"@types/node": "^24.1.0",
|
|
60
|
+
"@types/postcss-safe-parser": "^5.0.4",
|
|
61
|
+
"@types/react": "^19.1.9",
|
|
62
|
+
"@types/react-dom": "^19.1.7",
|
|
63
|
+
"esbuild-plugin-svgr": "^3.1.1",
|
|
64
|
+
"eslint": "^9.32.0",
|
|
65
|
+
"eslint-config-prettier": "^10.1.8",
|
|
66
|
+
"eslint-plugin-import": "^2.32.0",
|
|
67
|
+
"jest": "^30.0.5",
|
|
68
|
+
"prettier": "^3.6.2",
|
|
69
|
+
"tailwindcss": "^4.1.12",
|
|
70
|
+
"ts-jest": "^29.4.0",
|
|
71
|
+
"tsup": "^8.5.0",
|
|
72
|
+
"typescript": "^5.8.3"
|
|
73
|
+
},
|
|
74
|
+
"scripts": {
|
|
75
|
+
"svgr": "svgr src/assets --out-dir src/icons --typescript --expand-props end --svgo-config svgo.config.js",
|
|
76
|
+
"build:css": "tailwindcss -i ./src/styles.css -o ./dist/styles.css --minify",
|
|
77
|
+
"build": "pnpm svgr && tsup --config tsup.config.ts && pnpm build:css",
|
|
78
|
+
"dev": "tsup --config tsup.config.ts --watch"
|
|
79
|
+
}
|
|
80
|
+
}
|