@xyhp915/slack-base-ui 0.0.13 → 0.0.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/libs/components/AlertDialog.d.ts +26 -0
- package/libs/components/AlertDialog.d.ts.map +1 -0
- package/libs/components/AutoComplete.d.ts +32 -0
- package/libs/components/AutoComplete.d.ts.map +1 -0
- package/libs/components/Avatar.d.ts +13 -0
- package/libs/components/Avatar.d.ts.map +1 -0
- package/libs/components/Badge.d.ts +8 -0
- package/libs/components/Badge.d.ts.map +1 -0
- package/libs/components/Button.d.ts +12 -0
- package/libs/components/Button.d.ts.map +1 -0
- package/libs/components/Checkbox.d.ts +21 -0
- package/libs/components/Checkbox.d.ts.map +1 -0
- package/libs/components/Combobox.d.ts +77 -0
- package/libs/components/Combobox.d.ts.map +1 -0
- package/libs/components/ContextMenu.d.ts +85 -0
- package/libs/components/ContextMenu.d.ts.map +1 -0
- package/libs/components/Dialog.d.ts +107 -0
- package/libs/components/Dialog.d.ts.map +1 -0
- package/libs/components/Dropdown.d.ts +177 -0
- package/libs/components/Dropdown.d.ts.map +1 -0
- package/libs/components/Form.d.ts +77 -0
- package/libs/components/Form.d.ts.map +1 -0
- package/libs/components/IconButton.d.ts +9 -0
- package/libs/components/IconButton.d.ts.map +1 -0
- package/libs/components/Input.d.ts +8 -0
- package/libs/components/Input.d.ts.map +1 -0
- package/libs/components/Loading.d.ts +16 -0
- package/libs/components/Loading.d.ts.map +1 -0
- package/libs/components/Menu.d.ts +89 -0
- package/libs/components/Menu.d.ts.map +1 -0
- package/libs/components/Popover.d.ts +112 -0
- package/libs/components/Popover.d.ts.map +1 -0
- package/libs/components/Progress.d.ts +18 -0
- package/libs/components/Progress.d.ts.map +1 -0
- package/libs/components/Radio.d.ts +29 -0
- package/libs/components/Radio.d.ts.map +1 -0
- package/libs/components/Select.d.ts +31 -0
- package/libs/components/Select.d.ts.map +1 -0
- package/libs/components/Switch.d.ts +20 -0
- package/libs/components/Switch.d.ts.map +1 -0
- package/libs/components/Tabs.d.ts +30 -0
- package/libs/components/Tabs.d.ts.map +1 -0
- package/libs/components/Toast.d.ts +49 -0
- package/libs/components/Toast.d.ts.map +1 -0
- package/libs/components/Tooltip.d.ts +9 -0
- package/libs/components/Tooltip.d.ts.map +1 -0
- package/libs/components/index.d.ts +47 -0
- package/libs/components/index.d.ts.map +1 -0
- package/libs/context/ThemeContext.d.ts +15 -0
- package/libs/context/ThemeContext.d.ts.map +1 -0
- package/libs/context/useTheme.d.ts +2 -0
- package/libs/context/useTheme.d.ts.map +1 -0
- package/libs/index.d.ts +3 -46
- package/libs/index.d.ts.map +1 -1
- package/libs/index.js +688 -687
- package/libs/theme.d.ts +3 -0
- package/libs/theme.d.ts.map +1 -0
- package/libs/theme.js +2 -0
- package/libs/useTheme-P7tC1A4a.js +26 -0
- package/package.json +16 -1
- package/src/context/ThemeContext.tsx +3 -3
- package/src/index.ts +3 -0
- package/src/theme.ts +8 -0
- package/tsconfig.libs.json +7 -2
- package/vite.libs.config.ts +5 -2
package/libs/theme.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["../src/theme.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,aAAa,EACb,KAAK,KAAK,EACV,KAAK,UAAU,EACf,KAAK,gBAAgB,GACtB,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA"}
|
package/libs/theme.js
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { createContext as e, useContext as t, useEffect as n, useState as r } from "react";
|
|
2
|
+
import { jsx as i } from "react/jsx-runtime";
|
|
3
|
+
//#region src/context/ThemeContext.tsx
|
|
4
|
+
var a = e(void 0), o = ({ children: e }) => {
|
|
5
|
+
let [t, o] = r(() => localStorage.getItem("theme") || (window.matchMedia && window.matchMedia("(prefers-color-scheme: dark)").matches ? "dark" : "light")), [s, c] = r(() => localStorage.getItem("themeColor") || "slack");
|
|
6
|
+
return n(() => {
|
|
7
|
+
let e = window.document.documentElement;
|
|
8
|
+
e.classList.remove("light", "dark"), e.classList.add(t), e.setAttribute("data-theme-color", s), localStorage.setItem("theme", t), localStorage.setItem("themeColor", s);
|
|
9
|
+
}, [t, s]), /* @__PURE__ */ i(a.Provider, {
|
|
10
|
+
value: {
|
|
11
|
+
theme: t,
|
|
12
|
+
themeColor: s,
|
|
13
|
+
toggleTheme: () => {
|
|
14
|
+
o((e) => e === "light" ? "dark" : "light");
|
|
15
|
+
},
|
|
16
|
+
setThemeColor: c
|
|
17
|
+
},
|
|
18
|
+
children: e
|
|
19
|
+
});
|
|
20
|
+
}, s = () => {
|
|
21
|
+
let e = t(a);
|
|
22
|
+
if (e === void 0) throw Error("useTheme must be used within a ThemeProvider");
|
|
23
|
+
return e;
|
|
24
|
+
};
|
|
25
|
+
//#endregion
|
|
26
|
+
export { a as n, o as r, s as t };
|
package/package.json
CHANGED
|
@@ -3,13 +3,28 @@
|
|
|
3
3
|
"main": "libs/index.js",
|
|
4
4
|
"module": "libs/index.js",
|
|
5
5
|
"types": "libs/index.d.ts",
|
|
6
|
-
"version": "0.0.
|
|
6
|
+
"version": "0.0.14",
|
|
7
7
|
"type": "module",
|
|
8
8
|
"exports": {
|
|
9
9
|
".": {
|
|
10
10
|
"types": "./libs/index.d.ts",
|
|
11
11
|
"import": "./libs/index.js",
|
|
12
12
|
"default": "./libs/index.js"
|
|
13
|
+
},
|
|
14
|
+
"./theme": {
|
|
15
|
+
"types": "./libs/theme.d.ts",
|
|
16
|
+
"import": "./libs/theme.js",
|
|
17
|
+
"default": "./libs/theme.js"
|
|
18
|
+
},
|
|
19
|
+
"./src/context/ThemeContext.tsx": {
|
|
20
|
+
"types": "./libs/theme.d.ts",
|
|
21
|
+
"import": "./libs/theme.js",
|
|
22
|
+
"default": "./libs/theme.js"
|
|
23
|
+
},
|
|
24
|
+
"./src/context/useTheme.ts": {
|
|
25
|
+
"types": "./libs/theme.d.ts",
|
|
26
|
+
"import": "./libs/theme.js",
|
|
27
|
+
"default": "./libs/theme.js"
|
|
13
28
|
}
|
|
14
29
|
},
|
|
15
30
|
"scripts": {
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import React, { createContext, useEffect, useState } from 'react';
|
|
2
2
|
|
|
3
|
-
type Theme = 'light' | 'dark';
|
|
4
|
-
type ThemeColor = 'slack' | 'blue' | 'green' | 'aubergine';
|
|
3
|
+
export type Theme = 'light' | 'dark';
|
|
4
|
+
export type ThemeColor = 'slack' | 'blue' | 'green' | 'aubergine';
|
|
5
5
|
|
|
6
|
-
interface ThemeContextType {
|
|
6
|
+
export interface ThemeContextType {
|
|
7
7
|
theme: Theme;
|
|
8
8
|
themeColor: ThemeColor;
|
|
9
9
|
toggleTheme: () => void;
|
package/src/index.ts
ADDED
package/src/theme.ts
ADDED
package/tsconfig.libs.json
CHANGED
|
@@ -14,12 +14,17 @@
|
|
|
14
14
|
"emitDeclarationOnly": true,
|
|
15
15
|
|
|
16
16
|
"outDir": "libs",
|
|
17
|
-
"rootDir": "src
|
|
17
|
+
"rootDir": "src",
|
|
18
18
|
|
|
19
19
|
"stripInternal": true,
|
|
20
20
|
"esModuleInterop": true,
|
|
21
21
|
"allowSyntheticDefaultImports": true
|
|
22
22
|
},
|
|
23
|
-
"include": [
|
|
23
|
+
"include": [
|
|
24
|
+
"src/index.ts",
|
|
25
|
+
"src/theme.ts",
|
|
26
|
+
"src/components/**/*",
|
|
27
|
+
"src/context/**/*"
|
|
28
|
+
]
|
|
24
29
|
}
|
|
25
30
|
|
package/vite.libs.config.ts
CHANGED
|
@@ -17,10 +17,13 @@ export default defineConfig({
|
|
|
17
17
|
outDir: 'libs',
|
|
18
18
|
emptyOutDir: false,
|
|
19
19
|
lib: {
|
|
20
|
-
entry:
|
|
20
|
+
entry: {
|
|
21
|
+
index: resolve(__dirname, 'src/index.ts'),
|
|
22
|
+
theme: resolve(__dirname, 'src/theme.ts'),
|
|
23
|
+
},
|
|
21
24
|
name: 'ViteSlackBaseUI',
|
|
22
25
|
formats: ['es'],
|
|
23
|
-
fileName: () =>
|
|
26
|
+
fileName: (_, entryName) => `${entryName}.js`,
|
|
24
27
|
},
|
|
25
28
|
rollupOptions: {
|
|
26
29
|
// Keep React/Base UI/icon libraries external so the published ESM bundle
|