@pablo2410/shared-ui 0.3.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/README.md +93 -0
- package/dist/chunk-JT3XLKKD.js +11 -0
- package/dist/chunk-JT3XLKKD.js.map +1 -0
- package/dist/components/index.d.ts +152 -0
- package/dist/components/index.js +575 -0
- package/dist/components/index.js.map +1 -0
- package/dist/hierarchy/index.d.ts +179 -0
- package/dist/hierarchy/index.js +475 -0
- package/dist/hierarchy/index.js.map +1 -0
- package/dist/hooks/index.d.ts +32 -0
- package/dist/hooks/index.js +41 -0
- package/dist/hooks/index.js.map +1 -0
- package/dist/layout/index.d.ts +336 -0
- package/dist/layout/index.js +788 -0
- package/dist/layout/index.js.map +1 -0
- package/dist/primitives/index.d.ts +570 -0
- package/dist/primitives/index.js +5648 -0
- package/dist/primitives/index.js.map +1 -0
- package/dist/rbac/index.d.ts +64 -0
- package/dist/rbac/index.js +87 -0
- package/dist/rbac/index.js.map +1 -0
- package/dist/reporting/index.d.ts +116 -0
- package/dist/reporting/index.js +258 -0
- package/dist/reporting/index.js.map +1 -0
- package/dist/theme/index.d.ts +94 -0
- package/dist/theme/index.js +82 -0
- package/dist/theme/index.js.map +1 -0
- package/package.json +119 -0
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import React__default from 'react';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @oplytics/shared-ui/theme
|
|
5
|
+
*
|
|
6
|
+
* Oplytics.digital design tokens, theme configuration, and ThemeProvider types.
|
|
7
|
+
* Single source of truth for the dark theme used across all subdomains.
|
|
8
|
+
*
|
|
9
|
+
* Usage:
|
|
10
|
+
* import { OPLYTICS_COLORS, OPLYTICS_FONTS } from '@oplytics/shared-ui/theme';
|
|
11
|
+
* import '@oplytics/shared-ui/theme/oplytics-theme.css';
|
|
12
|
+
*/
|
|
13
|
+
/** Oplytics.digital canonical color palette */
|
|
14
|
+
declare const OPLYTICS_COLORS: {
|
|
15
|
+
readonly bgPrimary: "#0a0e1a";
|
|
16
|
+
readonly bgSecondary: "#0d1220";
|
|
17
|
+
readonly bgTertiary: "#111827";
|
|
18
|
+
readonly bgCard: "#0f1525";
|
|
19
|
+
readonly bgCardHover: "#141b2d";
|
|
20
|
+
readonly bgSurface: "#1a2236";
|
|
21
|
+
readonly borderDefault: "#1e2738";
|
|
22
|
+
readonly borderSubtle: "#161e2e";
|
|
23
|
+
readonly borderHover: "#2a3548";
|
|
24
|
+
readonly textPrimary: "#ffffff";
|
|
25
|
+
readonly textSecondary: "#c4cdd9";
|
|
26
|
+
readonly textMuted: "#596475";
|
|
27
|
+
readonly textDim: "#3e4a5c";
|
|
28
|
+
readonly accentPurple: "#8C34E9";
|
|
29
|
+
readonly accentPurpleHover: "#7928d4";
|
|
30
|
+
readonly accentPurpleLight: "#a855f7";
|
|
31
|
+
readonly accentPurpleBg: "rgba(140, 52, 233, 0.1)";
|
|
32
|
+
readonly accentTeal: "#14b8a6";
|
|
33
|
+
readonly accentTealHover: "#0d9488";
|
|
34
|
+
readonly accentTealLight: "#2dd4bf";
|
|
35
|
+
readonly accentTealBg: "rgba(20, 184, 166, 0.1)";
|
|
36
|
+
readonly statusSuccess: "#22c55e";
|
|
37
|
+
readonly statusWarning: "#f59e0b";
|
|
38
|
+
readonly statusError: "#ef4444";
|
|
39
|
+
readonly statusInfo: "#3b82f6";
|
|
40
|
+
readonly overlayBg: "rgba(0, 0, 0, 0.5)";
|
|
41
|
+
};
|
|
42
|
+
/** Oplytics.digital font stack */
|
|
43
|
+
declare const OPLYTICS_FONTS: {
|
|
44
|
+
/** Headings — Montserrat */
|
|
45
|
+
readonly heading: "'Montserrat', sans-serif";
|
|
46
|
+
/** Body — Space Grotesk */
|
|
47
|
+
readonly body: "'Space Grotesk', sans-serif";
|
|
48
|
+
/** Code — JetBrains Mono */
|
|
49
|
+
readonly mono: "'JetBrains Mono', monospace";
|
|
50
|
+
};
|
|
51
|
+
/** Google Fonts CDN links for Oplytics fonts */
|
|
52
|
+
declare const OPLYTICS_FONT_LINKS: readonly ["https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800&display=swap", "https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@300;400;500;600;700&display=swap", "https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;600&display=swap"];
|
|
53
|
+
declare const OPLYTICS_SPACING: {
|
|
54
|
+
readonly xs: "0.25rem";
|
|
55
|
+
readonly sm: "0.5rem";
|
|
56
|
+
readonly md: "1rem";
|
|
57
|
+
readonly lg: "1.5rem";
|
|
58
|
+
readonly xl: "2rem";
|
|
59
|
+
readonly "2xl": "3rem";
|
|
60
|
+
readonly "3xl": "4rem";
|
|
61
|
+
};
|
|
62
|
+
declare const OPLYTICS_RADIUS: {
|
|
63
|
+
readonly sm: "0.375rem";
|
|
64
|
+
readonly md: "0.5rem";
|
|
65
|
+
readonly lg: "0.75rem";
|
|
66
|
+
readonly xl: "1rem";
|
|
67
|
+
readonly full: "9999px";
|
|
68
|
+
};
|
|
69
|
+
declare const OPLYTICS_SHADOWS: {
|
|
70
|
+
readonly sm: "0 1px 2px rgba(0, 0, 0, 0.3)";
|
|
71
|
+
readonly md: "0 4px 6px rgba(0, 0, 0, 0.3)";
|
|
72
|
+
readonly lg: "0 10px 15px rgba(0, 0, 0, 0.3)";
|
|
73
|
+
readonly xl: "0 20px 25px rgba(0, 0, 0, 0.3)";
|
|
74
|
+
readonly card: "0 2px 8px rgba(0, 0, 0, 0.2)";
|
|
75
|
+
readonly glow: "0 0 20px rgba(140, 52, 233, 0.15)";
|
|
76
|
+
};
|
|
77
|
+
type ThemeMode = "dark" | "light" | "system";
|
|
78
|
+
interface ThemeContextValue {
|
|
79
|
+
theme: ThemeMode;
|
|
80
|
+
setTheme: (theme: ThemeMode) => void;
|
|
81
|
+
toggleTheme: () => void;
|
|
82
|
+
/** Resolved theme (dark or light) after system preference resolution */
|
|
83
|
+
resolvedTheme: "dark" | "light";
|
|
84
|
+
}
|
|
85
|
+
interface ThemeProviderProps {
|
|
86
|
+
/** Default theme mode (default: "dark") */
|
|
87
|
+
defaultTheme?: ThemeMode;
|
|
88
|
+
/** localStorage key for persistence (default: "oplytics-theme") */
|
|
89
|
+
storageKey?: string;
|
|
90
|
+
/** Children to wrap */
|
|
91
|
+
children: React__default.ReactNode;
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
export { OPLYTICS_COLORS, OPLYTICS_FONTS, OPLYTICS_FONT_LINKS, OPLYTICS_RADIUS, OPLYTICS_SHADOWS, OPLYTICS_SPACING, type ThemeContextValue, type ThemeMode, type ThemeProviderProps };
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
// src/theme/index.ts
|
|
2
|
+
var OPLYTICS_COLORS = {
|
|
3
|
+
// Backgrounds
|
|
4
|
+
bgPrimary: "#0a0e1a",
|
|
5
|
+
bgSecondary: "#0d1220",
|
|
6
|
+
bgTertiary: "#111827",
|
|
7
|
+
bgCard: "#0f1525",
|
|
8
|
+
bgCardHover: "#141b2d",
|
|
9
|
+
bgSurface: "#1a2236",
|
|
10
|
+
// Borders
|
|
11
|
+
borderDefault: "#1e2738",
|
|
12
|
+
borderSubtle: "#161e2e",
|
|
13
|
+
borderHover: "#2a3548",
|
|
14
|
+
// Text
|
|
15
|
+
textPrimary: "#ffffff",
|
|
16
|
+
textSecondary: "#c4cdd9",
|
|
17
|
+
textMuted: "#596475",
|
|
18
|
+
textDim: "#3e4a5c",
|
|
19
|
+
// Accent — Purple (Primary)
|
|
20
|
+
accentPurple: "#8C34E9",
|
|
21
|
+
accentPurpleHover: "#7928d4",
|
|
22
|
+
accentPurpleLight: "#a855f7",
|
|
23
|
+
accentPurpleBg: "rgba(140, 52, 233, 0.1)",
|
|
24
|
+
// Accent — Teal (Secondary)
|
|
25
|
+
accentTeal: "#14b8a6",
|
|
26
|
+
accentTealHover: "#0d9488",
|
|
27
|
+
accentTealLight: "#2dd4bf",
|
|
28
|
+
accentTealBg: "rgba(20, 184, 166, 0.1)",
|
|
29
|
+
// Status
|
|
30
|
+
statusSuccess: "#22c55e",
|
|
31
|
+
statusWarning: "#f59e0b",
|
|
32
|
+
statusError: "#ef4444",
|
|
33
|
+
statusInfo: "#3b82f6",
|
|
34
|
+
// Overlay
|
|
35
|
+
overlayBg: "rgba(0, 0, 0, 0.5)"
|
|
36
|
+
};
|
|
37
|
+
var OPLYTICS_FONTS = {
|
|
38
|
+
/** Headings — Montserrat */
|
|
39
|
+
heading: "'Montserrat', sans-serif",
|
|
40
|
+
/** Body — Space Grotesk */
|
|
41
|
+
body: "'Space Grotesk', sans-serif",
|
|
42
|
+
/** Code — JetBrains Mono */
|
|
43
|
+
mono: "'JetBrains Mono', monospace"
|
|
44
|
+
};
|
|
45
|
+
var OPLYTICS_FONT_LINKS = [
|
|
46
|
+
"https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800&display=swap",
|
|
47
|
+
"https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@300;400;500;600;700&display=swap",
|
|
48
|
+
"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;600&display=swap"
|
|
49
|
+
];
|
|
50
|
+
var OPLYTICS_SPACING = {
|
|
51
|
+
xs: "0.25rem",
|
|
52
|
+
sm: "0.5rem",
|
|
53
|
+
md: "1rem",
|
|
54
|
+
lg: "1.5rem",
|
|
55
|
+
xl: "2rem",
|
|
56
|
+
"2xl": "3rem",
|
|
57
|
+
"3xl": "4rem"
|
|
58
|
+
};
|
|
59
|
+
var OPLYTICS_RADIUS = {
|
|
60
|
+
sm: "0.375rem",
|
|
61
|
+
md: "0.5rem",
|
|
62
|
+
lg: "0.75rem",
|
|
63
|
+
xl: "1rem",
|
|
64
|
+
full: "9999px"
|
|
65
|
+
};
|
|
66
|
+
var OPLYTICS_SHADOWS = {
|
|
67
|
+
sm: "0 1px 2px rgba(0, 0, 0, 0.3)",
|
|
68
|
+
md: "0 4px 6px rgba(0, 0, 0, 0.3)",
|
|
69
|
+
lg: "0 10px 15px rgba(0, 0, 0, 0.3)",
|
|
70
|
+
xl: "0 20px 25px rgba(0, 0, 0, 0.3)",
|
|
71
|
+
card: "0 2px 8px rgba(0, 0, 0, 0.2)",
|
|
72
|
+
glow: "0 0 20px rgba(140, 52, 233, 0.15)"
|
|
73
|
+
};
|
|
74
|
+
export {
|
|
75
|
+
OPLYTICS_COLORS,
|
|
76
|
+
OPLYTICS_FONTS,
|
|
77
|
+
OPLYTICS_FONT_LINKS,
|
|
78
|
+
OPLYTICS_RADIUS,
|
|
79
|
+
OPLYTICS_SHADOWS,
|
|
80
|
+
OPLYTICS_SPACING
|
|
81
|
+
};
|
|
82
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/theme/index.ts"],"sourcesContent":["/**\n * @oplytics/shared-ui/theme\n *\n * Oplytics.digital design tokens, theme configuration, and ThemeProvider types.\n * Single source of truth for the dark theme used across all subdomains.\n *\n * Usage:\n * import { OPLYTICS_COLORS, OPLYTICS_FONTS } from '@oplytics/shared-ui/theme';\n * import '@oplytics/shared-ui/theme/oplytics-theme.css';\n */\n\n// ─── Color Tokens ────────────────────────────────────────────────────────────\n\n/** Oplytics.digital canonical color palette */\nexport const OPLYTICS_COLORS = {\n // Backgrounds\n bgPrimary: \"#0a0e1a\",\n bgSecondary: \"#0d1220\",\n bgTertiary: \"#111827\",\n bgCard: \"#0f1525\",\n bgCardHover: \"#141b2d\",\n bgSurface: \"#1a2236\",\n\n // Borders\n borderDefault: \"#1e2738\",\n borderSubtle: \"#161e2e\",\n borderHover: \"#2a3548\",\n\n // Text\n textPrimary: \"#ffffff\",\n textSecondary: \"#c4cdd9\",\n textMuted: \"#596475\",\n textDim: \"#3e4a5c\",\n\n // Accent — Purple (Primary)\n accentPurple: \"#8C34E9\",\n accentPurpleHover: \"#7928d4\",\n accentPurpleLight: \"#a855f7\",\n accentPurpleBg: \"rgba(140, 52, 233, 0.1)\",\n\n // Accent — Teal (Secondary)\n accentTeal: \"#14b8a6\",\n accentTealHover: \"#0d9488\",\n accentTealLight: \"#2dd4bf\",\n accentTealBg: \"rgba(20, 184, 166, 0.1)\",\n\n // Status\n statusSuccess: \"#22c55e\",\n statusWarning: \"#f59e0b\",\n statusError: \"#ef4444\",\n statusInfo: \"#3b82f6\",\n\n // Overlay\n overlayBg: \"rgba(0, 0, 0, 0.5)\",\n} as const;\n\n// ─── Typography ──────────────────────────────────────────────────────────────\n\n/** Oplytics.digital font stack */\nexport const OPLYTICS_FONTS = {\n /** Headings — Montserrat */\n heading: \"'Montserrat', sans-serif\",\n /** Body — Space Grotesk */\n body: \"'Space Grotesk', sans-serif\",\n /** Code — JetBrains Mono */\n mono: \"'JetBrains Mono', monospace\",\n} as const;\n\n/** Google Fonts CDN links for Oplytics fonts */\nexport const OPLYTICS_FONT_LINKS = [\n \"https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800&display=swap\",\n \"https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@300;400;500;600;700&display=swap\",\n \"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;600&display=swap\",\n] as const;\n\n// ─── Spacing & Radius ────────────────────────────────────────────────────────\n\nexport const OPLYTICS_SPACING = {\n xs: \"0.25rem\",\n sm: \"0.5rem\",\n md: \"1rem\",\n lg: \"1.5rem\",\n xl: \"2rem\",\n \"2xl\": \"3rem\",\n \"3xl\": \"4rem\",\n} as const;\n\nexport const OPLYTICS_RADIUS = {\n sm: \"0.375rem\",\n md: \"0.5rem\",\n lg: \"0.75rem\",\n xl: \"1rem\",\n full: \"9999px\",\n} as const;\n\n// ─── Shadow ──────────────────────────────────────────────────────────────────\n\nexport const OPLYTICS_SHADOWS = {\n sm: \"0 1px 2px rgba(0, 0, 0, 0.3)\",\n md: \"0 4px 6px rgba(0, 0, 0, 0.3)\",\n lg: \"0 10px 15px rgba(0, 0, 0, 0.3)\",\n xl: \"0 20px 25px rgba(0, 0, 0, 0.3)\",\n card: \"0 2px 8px rgba(0, 0, 0, 0.2)\",\n glow: \"0 0 20px rgba(140, 52, 233, 0.15)\",\n} as const;\n\n// ─── ThemeProvider Types ─────────────────────────────────────────────────────\n\nexport type ThemeMode = \"dark\" | \"light\" | \"system\";\n\nexport interface ThemeContextValue {\n theme: ThemeMode;\n setTheme: (theme: ThemeMode) => void;\n toggleTheme: () => void;\n /** Resolved theme (dark or light) after system preference resolution */\n resolvedTheme: \"dark\" | \"light\";\n}\n\nexport interface ThemeProviderProps {\n /** Default theme mode (default: \"dark\") */\n defaultTheme?: ThemeMode;\n /** localStorage key for persistence (default: \"oplytics-theme\") */\n storageKey?: string;\n /** Children to wrap */\n children: React.ReactNode;\n}\n\nimport React from \"react\";\n"],"mappings":";AAcO,IAAM,kBAAkB;AAAA;AAAA,EAE7B,WAAW;AAAA,EACX,aAAa;AAAA,EACb,YAAY;AAAA,EACZ,QAAQ;AAAA,EACR,aAAa;AAAA,EACb,WAAW;AAAA;AAAA,EAGX,eAAe;AAAA,EACf,cAAc;AAAA,EACd,aAAa;AAAA;AAAA,EAGb,aAAa;AAAA,EACb,eAAe;AAAA,EACf,WAAW;AAAA,EACX,SAAS;AAAA;AAAA,EAGT,cAAc;AAAA,EACd,mBAAmB;AAAA,EACnB,mBAAmB;AAAA,EACnB,gBAAgB;AAAA;AAAA,EAGhB,YAAY;AAAA,EACZ,iBAAiB;AAAA,EACjB,iBAAiB;AAAA,EACjB,cAAc;AAAA;AAAA,EAGd,eAAe;AAAA,EACf,eAAe;AAAA,EACf,aAAa;AAAA,EACb,YAAY;AAAA;AAAA,EAGZ,WAAW;AACb;AAKO,IAAM,iBAAiB;AAAA;AAAA,EAE5B,SAAS;AAAA;AAAA,EAET,MAAM;AAAA;AAAA,EAEN,MAAM;AACR;AAGO,IAAM,sBAAsB;AAAA,EACjC;AAAA,EACA;AAAA,EACA;AACF;AAIO,IAAM,mBAAmB;AAAA,EAC9B,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,OAAO;AAAA,EACP,OAAO;AACT;AAEO,IAAM,kBAAkB;AAAA,EAC7B,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,MAAM;AACR;AAIO,IAAM,mBAAmB;AAAA,EAC9B,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,MAAM;AAAA,EACN,MAAM;AACR;","names":[]}
|
package/package.json
ADDED
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@pablo2410/shared-ui",
|
|
3
|
+
"version": "0.3.2",
|
|
4
|
+
"description": "Shared UI component library for all Oplytics.digital subdomains",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"exports": {
|
|
7
|
+
"./layout": {
|
|
8
|
+
"types": "./dist/layout/index.d.ts",
|
|
9
|
+
"import": "./dist/layout/index.js"
|
|
10
|
+
},
|
|
11
|
+
"./hierarchy": {
|
|
12
|
+
"types": "./dist/hierarchy/index.d.ts",
|
|
13
|
+
"import": "./dist/hierarchy/index.js"
|
|
14
|
+
},
|
|
15
|
+
"./rbac": {
|
|
16
|
+
"types": "./dist/rbac/index.d.ts",
|
|
17
|
+
"import": "./dist/rbac/index.js"
|
|
18
|
+
},
|
|
19
|
+
"./reporting": {
|
|
20
|
+
"types": "./dist/reporting/index.d.ts",
|
|
21
|
+
"import": "./dist/reporting/index.js"
|
|
22
|
+
},
|
|
23
|
+
"./components": {
|
|
24
|
+
"types": "./dist/components/index.d.ts",
|
|
25
|
+
"import": "./dist/components/index.js"
|
|
26
|
+
},
|
|
27
|
+
"./hooks": {
|
|
28
|
+
"types": "./dist/hooks/index.d.ts",
|
|
29
|
+
"import": "./dist/hooks/index.js"
|
|
30
|
+
},
|
|
31
|
+
"./theme": {
|
|
32
|
+
"types": "./dist/theme/index.d.ts",
|
|
33
|
+
"import": "./dist/theme/index.js"
|
|
34
|
+
},
|
|
35
|
+
"./theme/oplytics-theme.css": "./dist/theme/oplytics-theme.css",
|
|
36
|
+
"./primitives": {
|
|
37
|
+
"types": "./dist/primitives/index.d.ts",
|
|
38
|
+
"import": "./dist/primitives/index.js"
|
|
39
|
+
}
|
|
40
|
+
},
|
|
41
|
+
"files": [
|
|
42
|
+
"dist",
|
|
43
|
+
"README.md"
|
|
44
|
+
],
|
|
45
|
+
"scripts": {
|
|
46
|
+
"prepare": "pnpm build",
|
|
47
|
+
"build": "tsup",
|
|
48
|
+
"dev": "tsup --watch",
|
|
49
|
+
"typecheck": "tsc --noEmit",
|
|
50
|
+
"lint": "eslint src/",
|
|
51
|
+
"test": "vitest run",
|
|
52
|
+
"prepublishOnly": "pnpm build"
|
|
53
|
+
},
|
|
54
|
+
"peerDependencies": {
|
|
55
|
+
"react": "^18.0.0 || ^19.0.0",
|
|
56
|
+
"react-dom": "^18.0.0 || ^19.0.0"
|
|
57
|
+
},
|
|
58
|
+
"devDependencies": {
|
|
59
|
+
"@types/google.maps": "^3.58.0",
|
|
60
|
+
"@types/react": "^19.0.0",
|
|
61
|
+
"@types/react-dom": "^19.0.0",
|
|
62
|
+
"react": "^19.0.0",
|
|
63
|
+
"react-dom": "^19.0.0",
|
|
64
|
+
"tsup": "^8.0.0",
|
|
65
|
+
"typescript": "^5.9.0",
|
|
66
|
+
"vitest": "^3.0.0"
|
|
67
|
+
},
|
|
68
|
+
"dependencies": {
|
|
69
|
+
"@radix-ui/react-accordion": "^1.2.12",
|
|
70
|
+
"@radix-ui/react-alert-dialog": "^1.1.15",
|
|
71
|
+
"@radix-ui/react-aspect-ratio": "^1.1.8",
|
|
72
|
+
"@radix-ui/react-avatar": "^1.1.11",
|
|
73
|
+
"@radix-ui/react-checkbox": "^1.3.3",
|
|
74
|
+
"@radix-ui/react-collapsible": "^1.1.12",
|
|
75
|
+
"@radix-ui/react-context-menu": "^2.2.16",
|
|
76
|
+
"@radix-ui/react-dialog": "^1.1.15",
|
|
77
|
+
"@radix-ui/react-dropdown-menu": "^2.1.16",
|
|
78
|
+
"@radix-ui/react-hover-card": "^1.1.15",
|
|
79
|
+
"@radix-ui/react-label": "^2.1.8",
|
|
80
|
+
"@radix-ui/react-menubar": "^1.1.16",
|
|
81
|
+
"@radix-ui/react-navigation-menu": "^1.2.14",
|
|
82
|
+
"@radix-ui/react-popover": "^1.1.15",
|
|
83
|
+
"@radix-ui/react-progress": "^1.1.8",
|
|
84
|
+
"@radix-ui/react-radio-group": "^1.3.8",
|
|
85
|
+
"@radix-ui/react-scroll-area": "^1.2.10",
|
|
86
|
+
"@radix-ui/react-select": "^2.2.6",
|
|
87
|
+
"@radix-ui/react-separator": "^1.1.8",
|
|
88
|
+
"@radix-ui/react-slider": "^1.3.6",
|
|
89
|
+
"@radix-ui/react-slot": "^1.2.4",
|
|
90
|
+
"@radix-ui/react-switch": "^1.2.6",
|
|
91
|
+
"@radix-ui/react-tabs": "^1.1.13",
|
|
92
|
+
"@radix-ui/react-toggle": "^1.1.10",
|
|
93
|
+
"@radix-ui/react-toggle-group": "^1.1.11",
|
|
94
|
+
"@radix-ui/react-tooltip": "^1.2.8",
|
|
95
|
+
"class-variance-authority": "^0.7.1",
|
|
96
|
+
"clsx": "^2.1.0",
|
|
97
|
+
"cmdk": "^1.1.1",
|
|
98
|
+
"embla-carousel-react": "^8.6.0",
|
|
99
|
+
"input-otp": "^1.4.2",
|
|
100
|
+
"lucide-react": "^0.460.0",
|
|
101
|
+
"next-themes": "^0.4.6",
|
|
102
|
+
"react-day-picker": "^9.14.0",
|
|
103
|
+
"react-hook-form": "^7.71.2",
|
|
104
|
+
"react-resizable-panels": "^3.0.6",
|
|
105
|
+
"recharts": "^3.8.0",
|
|
106
|
+
"sonner": "^2.0.7",
|
|
107
|
+
"tailwind-merge": "^2.6.0",
|
|
108
|
+
"vaul": "^1.1.2"
|
|
109
|
+
},
|
|
110
|
+
"publishConfig": {
|
|
111
|
+
"access": "public"
|
|
112
|
+
},
|
|
113
|
+
"repository": {
|
|
114
|
+
"type": "git",
|
|
115
|
+
"url": "https://github.com/Pablo2410/oplytics-shared-ui.git"
|
|
116
|
+
},
|
|
117
|
+
"license": "UNLICENSED",
|
|
118
|
+
"private": false
|
|
119
|
+
}
|