@arcanejs/toolkit-frontend 0.9.0 → 0.10.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.
@@ -0,0 +1,11 @@
1
+ import "../chunk-7P6ASYW6.mjs";
2
+
3
+ // src/styles/index.ts
4
+ var CORE_STYLE_PATH = "@arcanejs/toolkit-frontend/styles/core.css";
5
+ var THEME_STYLE_PATH = "@arcanejs/toolkit-frontend/styles/theme.css";
6
+ var BASE_STYLE_PATH = "@arcanejs/toolkit-frontend/styles/base.css";
7
+ export {
8
+ BASE_STYLE_PATH,
9
+ CORE_STYLE_PATH,
10
+ THEME_STYLE_PATH
11
+ };
@@ -0,0 +1,115 @@
1
+ .arcane-theme-root {
2
+ --arcane-page-bg: #f8f9fa;
3
+ --arcane-color-green: #22863a;
4
+ --arcane-color-red: #d73a49;
5
+ --arcane-color-amber: #b08800;
6
+ --arcane-bg-dark-1: #e9ecef;
7
+ --arcane-bg: #ffffff;
8
+ --arcane-bg-light-1: #f5f5f5;
9
+ --arcane-border-dark: #c7c7c7;
10
+ --arcane-border-light: #d7d7d7;
11
+ --arcane-border-lighter: #eaecef;
12
+ --arcane-border-lighterer: #f6f8fa;
13
+ --arcane-hint: #4286f4;
14
+ --arcane-hint-rgb: 0, 92, 197;
15
+ --arcane-hint-dark-1: #2a77f3;
16
+ --arcane-text-normal: #24292e;
17
+ --arcane-text-active: #202020;
18
+ --arcane-text-muted: #6a737d;
19
+ --arcane-shadow-box-inset: inset 0px 0px 8px 0px rgba(0, 0, 0, 0.05);
20
+ --arcane-shadow-text: 0 1px rgba(255, 255, 255, 0.7);
21
+ --arcane-shadow-text-active: 0 1px rgba(255, 255, 255, 0.4);
22
+ --arcane-gradient-button: linear-gradient(to bottom, #e1e4e8, #d1d5da);
23
+ --arcane-gradient-button-hover: linear-gradient(to bottom, #d1d5da, #c1c6cc);
24
+ --arcane-gradient-button-active: linear-gradient(to bottom, #b1b6bc, #d2d6da);
25
+ --arcane-gradient-button-pressed-hover: linear-gradient(
26
+ to bottom,
27
+ #a1a6ac,
28
+ #91969c
29
+ );
30
+ --arcane-gradient-hint-pressed: linear-gradient(to bottom, #438bff, #85b3ff);
31
+ --arcane-spacing: 15px;
32
+ --arcane-unit-height: 40px;
33
+ }
34
+
35
+ .arcane-theme-root.theme-dark {
36
+ --arcane-page-bg: #333;
37
+ --arcane-color-green: #98c379;
38
+ --arcane-color-red: #e06c75;
39
+ --arcane-color-amber: #d19a66;
40
+ --arcane-bg-dark-1: #252524;
41
+ --arcane-bg: #2a2a2b;
42
+ --arcane-bg-light-1: #353638;
43
+ --arcane-border-dark: #151516;
44
+ --arcane-border-light: #1c1d1d;
45
+ --arcane-border-lighter: #252524;
46
+ --arcane-border-lighterer: #6b6b67;
47
+ --arcane-hint: #4286f4;
48
+ --arcane-hint-rgb: 66, 134, 244;
49
+ --arcane-hint-dark-1: #2a77f3;
50
+ --arcane-text-normal: #f3f3f5;
51
+ --arcane-text-active: #ffffff;
52
+ --arcane-text-muted: #777777;
53
+ --arcane-shadow-box-inset: inset 0px 0px 8px 0px rgba(0, 0, 0, 0.3);
54
+ --arcane-shadow-text: 0 -1px rgba(0, 0, 0, 0.7);
55
+ --arcane-shadow-text-active: 0 -1px rgba(0, 0, 0, 0.4);
56
+ --arcane-gradient-button: linear-gradient(to bottom, #4f5053, #343436);
57
+ --arcane-gradient-button-hover: linear-gradient(to bottom, #5e6064, #393a3b);
58
+ --arcane-gradient-button-active: linear-gradient(to bottom, #242525, #37383a);
59
+ --arcane-gradient-button-pressed-hover: linear-gradient(
60
+ to bottom,
61
+ #282929,
62
+ #414243
63
+ );
64
+ --arcane-gradient-hint-pressed: linear-gradient(to bottom, #2a77f3, #4286f4);
65
+ }
66
+
67
+ @media (prefers-color-scheme: dark) {
68
+ .arcane-theme-root.theme-auto {
69
+ --arcane-page-bg: #333;
70
+ --arcane-color-green: #98c379;
71
+ --arcane-color-red: #e06c75;
72
+ --arcane-color-amber: #d19a66;
73
+ --arcane-bg-dark-1: #252524;
74
+ --arcane-bg: #2a2a2b;
75
+ --arcane-bg-light-1: #353638;
76
+ --arcane-border-dark: #151516;
77
+ --arcane-border-light: #1c1d1d;
78
+ --arcane-border-lighter: #252524;
79
+ --arcane-border-lighterer: #6b6b67;
80
+ --arcane-hint: #4286f4;
81
+ --arcane-hint-rgb: 66, 134, 244;
82
+ --arcane-hint-dark-1: #2a77f3;
83
+ --arcane-text-normal: #f3f3f5;
84
+ --arcane-text-active: #ffffff;
85
+ --arcane-text-muted: #777777;
86
+ --arcane-shadow-box-inset: inset 0px 0px 8px 0px rgba(0, 0, 0, 0.3);
87
+ --arcane-shadow-text: 0 -1px rgba(0, 0, 0, 0.7);
88
+ --arcane-shadow-text-active: 0 -1px rgba(0, 0, 0, 0.4);
89
+ --arcane-gradient-button: linear-gradient(
90
+ to bottom,
91
+ #4f5053,
92
+ #343436
93
+ );
94
+ --arcane-gradient-button-hover: linear-gradient(
95
+ to bottom,
96
+ #5e6064,
97
+ #393a3b
98
+ );
99
+ --arcane-gradient-button-active: linear-gradient(
100
+ to bottom,
101
+ #242525,
102
+ #37383a
103
+ );
104
+ --arcane-gradient-button-pressed-hover: linear-gradient(
105
+ to bottom,
106
+ #282929,
107
+ #414243
108
+ );
109
+ --arcane-gradient-hint-pressed: linear-gradient(
110
+ to bottom,
111
+ #2a77f3,
112
+ #4286f4
113
+ );
114
+ }
115
+ }
@@ -1,56 +1,8 @@
1
- import { createGlobalStyle, RuleSet } from 'styled-components';
1
+ import React__default from 'react';
2
2
 
3
- declare const GlobalStyle: ReturnType<typeof createGlobalStyle>;
4
- declare const DARK_THEME: {
5
- pageBg: string;
6
- colorGreen: string;
7
- colorRed: string;
8
- colorAmber: string;
9
- bgDark1: string;
10
- bg: string;
11
- bgLight1: string;
12
- borderDark: string;
13
- borderLight: string;
14
- borderLighter: string;
15
- borderLighterer: string;
16
- hint: string;
17
- hintRGB: string;
18
- hintDark1: string;
19
- textNormal: string;
20
- textActive: string;
21
- textMuted: string;
22
- shadows: {
23
- boxShadowInset: string;
24
- textShadow: string;
25
- textShadowActive: string;
26
- };
27
- gradients: {
28
- button: string;
29
- buttonHover: string;
30
- buttonActive: string;
31
- buttonPressedHover: string;
32
- hintPressed: string;
33
- };
34
- sizingPx: {
35
- spacing: number;
36
- unitHeight: number;
37
- };
38
- };
39
- type Theme = typeof DARK_THEME;
40
- declare const LIGHT_THEME: Theme;
41
- declare const BaseStyle: ReturnType<typeof createGlobalStyle>;
42
- declare const buttonStateNormal: RuleSet<object>;
43
- declare const buttonStateNormalHover: RuleSet<object>;
44
- declare const buttonStateNormalActive: RuleSet<object>;
45
- declare const buttonPressed: RuleSet<object>;
46
- declare const buttonDisabled: RuleSet<object>;
47
- declare const rectButton: RuleSet<object>;
48
- declare const touchIndicatorNormal: RuleSet<object>;
49
- declare const touchIndicatorTouching: RuleSet<object>;
50
- declare const PreferredThemeProvider: React.FC<{
51
- dark: Theme;
52
- light: Theme;
53
- children: React.ReactNode;
3
+ declare const ThemeRoot: React__default.FC<{
4
+ children: React__default.ReactNode;
5
+ rootProps?: React__default.HTMLAttributes<HTMLDivElement>;
54
6
  }>;
55
7
 
56
- export { BaseStyle, DARK_THEME, GlobalStyle, LIGHT_THEME, PreferredThemeProvider, type Theme, buttonDisabled, buttonPressed, buttonStateNormal, buttonStateNormalActive, buttonStateNormalHover, rectButton, touchIndicatorNormal, touchIndicatorTouching };
8
+ export { ThemeRoot };
package/dist/styling.d.ts CHANGED
@@ -1,56 +1,8 @@
1
- import { createGlobalStyle, RuleSet } from 'styled-components';
1
+ import React__default from 'react';
2
2
 
3
- declare const GlobalStyle: ReturnType<typeof createGlobalStyle>;
4
- declare const DARK_THEME: {
5
- pageBg: string;
6
- colorGreen: string;
7
- colorRed: string;
8
- colorAmber: string;
9
- bgDark1: string;
10
- bg: string;
11
- bgLight1: string;
12
- borderDark: string;
13
- borderLight: string;
14
- borderLighter: string;
15
- borderLighterer: string;
16
- hint: string;
17
- hintRGB: string;
18
- hintDark1: string;
19
- textNormal: string;
20
- textActive: string;
21
- textMuted: string;
22
- shadows: {
23
- boxShadowInset: string;
24
- textShadow: string;
25
- textShadowActive: string;
26
- };
27
- gradients: {
28
- button: string;
29
- buttonHover: string;
30
- buttonActive: string;
31
- buttonPressedHover: string;
32
- hintPressed: string;
33
- };
34
- sizingPx: {
35
- spacing: number;
36
- unitHeight: number;
37
- };
38
- };
39
- type Theme = typeof DARK_THEME;
40
- declare const LIGHT_THEME: Theme;
41
- declare const BaseStyle: ReturnType<typeof createGlobalStyle>;
42
- declare const buttonStateNormal: RuleSet<object>;
43
- declare const buttonStateNormalHover: RuleSet<object>;
44
- declare const buttonStateNormalActive: RuleSet<object>;
45
- declare const buttonPressed: RuleSet<object>;
46
- declare const buttonDisabled: RuleSet<object>;
47
- declare const rectButton: RuleSet<object>;
48
- declare const touchIndicatorNormal: RuleSet<object>;
49
- declare const touchIndicatorTouching: RuleSet<object>;
50
- declare const PreferredThemeProvider: React.FC<{
51
- dark: Theme;
52
- light: Theme;
53
- children: React.ReactNode;
3
+ declare const ThemeRoot: React__default.FC<{
4
+ children: React__default.ReactNode;
5
+ rootProps?: React__default.HTMLAttributes<HTMLDivElement>;
54
6
  }>;
55
7
 
56
- export { BaseStyle, DARK_THEME, GlobalStyle, LIGHT_THEME, PreferredThemeProvider, type Theme, buttonDisabled, buttonPressed, buttonStateNormal, buttonStateNormalActive, buttonStateNormalHover, rectButton, touchIndicatorNormal, touchIndicatorTouching };
8
+ export { ThemeRoot };
package/dist/styling.js CHANGED
@@ -1,31 +1,26 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
-
3
-
4
-
5
-
6
-
7
-
8
-
9
-
10
-
11
-
12
-
13
-
14
-
15
- var _chunkZHJBPEPYjs = require('./chunk-ZHJBPEPY.js');
16
- require('./chunk-TMN35K5Y.js');
17
-
18
-
19
-
20
-
21
-
22
-
23
-
24
-
25
-
26
-
27
-
28
-
29
-
30
-
31
- exports.BaseStyle = _chunkZHJBPEPYjs.BaseStyle; exports.DARK_THEME = _chunkZHJBPEPYjs.DARK_THEME; exports.GlobalStyle = _chunkZHJBPEPYjs.GlobalStyle; exports.LIGHT_THEME = _chunkZHJBPEPYjs.LIGHT_THEME; exports.PreferredThemeProvider = _chunkZHJBPEPYjs.PreferredThemeProvider; exports.buttonDisabled = _chunkZHJBPEPYjs.buttonDisabled; exports.buttonPressed = _chunkZHJBPEPYjs.buttonPressed; exports.buttonStateNormal = _chunkZHJBPEPYjs.buttonStateNormal; exports.buttonStateNormalActive = _chunkZHJBPEPYjs.buttonStateNormalActive; exports.buttonStateNormalHover = _chunkZHJBPEPYjs.buttonStateNormalHover; exports.rectButton = _chunkZHJBPEPYjs.rectButton; exports.touchIndicatorNormal = _chunkZHJBPEPYjs.touchIndicatorNormal; exports.touchIndicatorTouching = _chunkZHJBPEPYjs.touchIndicatorTouching;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
2
+
3
+
4
+ var _chunkGBYIEWGNjs = require('./chunk-GBYIEWGN.js');
5
+ require('./chunk-MLKGABMK.js');
6
+
7
+ // src/styling.tsx
8
+ var _jsxruntime = require('react/jsx-runtime');
9
+ var ThemeRoot = ({ children, rootProps }) => {
10
+ const { colorSchemePreference } = _chunkGBYIEWGNjs.useColorSchemePreferences.call(void 0, );
11
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
12
+ "div",
13
+ {
14
+ ...rootProps,
15
+ className: _chunkGBYIEWGNjs.calculateClass.call(void 0,
16
+ "arcane-theme-root",
17
+ `theme-${colorSchemePreference}`,
18
+ _optionalChain([rootProps, 'optionalAccess', _ => _.className])
19
+ ),
20
+ children
21
+ }
22
+ );
23
+ };
24
+
25
+
26
+ exports.ThemeRoot = ThemeRoot;
package/dist/styling.mjs CHANGED
@@ -1,31 +1,26 @@
1
1
  import {
2
- BaseStyle,
3
- DARK_THEME,
4
- GlobalStyle,
5
- LIGHT_THEME,
6
- PreferredThemeProvider,
7
- buttonDisabled,
8
- buttonPressed,
9
- buttonStateNormal,
10
- buttonStateNormalActive,
11
- buttonStateNormalHover,
12
- rectButton,
13
- touchIndicatorNormal,
14
- touchIndicatorTouching
15
- } from "./chunk-6XOE7F7U.mjs";
16
- import "./chunk-PTANIWKR.mjs";
2
+ calculateClass,
3
+ useColorSchemePreferences
4
+ } from "./chunk-2HBLGAG3.mjs";
5
+ import "./chunk-7P6ASYW6.mjs";
6
+
7
+ // src/styling.tsx
8
+ import { jsx } from "react/jsx-runtime";
9
+ var ThemeRoot = ({ children, rootProps }) => {
10
+ const { colorSchemePreference } = useColorSchemePreferences();
11
+ return /* @__PURE__ */ jsx(
12
+ "div",
13
+ {
14
+ ...rootProps,
15
+ className: calculateClass(
16
+ "arcane-theme-root",
17
+ `theme-${colorSchemePreference}`,
18
+ rootProps?.className
19
+ ),
20
+ children
21
+ }
22
+ );
23
+ };
17
24
  export {
18
- BaseStyle,
19
- DARK_THEME,
20
- GlobalStyle,
21
- LIGHT_THEME,
22
- PreferredThemeProvider,
23
- buttonDisabled,
24
- buttonPressed,
25
- buttonStateNormal,
26
- buttonStateNormalActive,
27
- buttonStateNormalHover,
28
- rectButton,
29
- touchIndicatorNormal,
30
- touchIndicatorTouching
25
+ ThemeRoot
31
26
  };
package/dist/types.d.mts CHANGED
@@ -1,8 +1,9 @@
1
1
  import { BaseComponentProto } from '@arcanejs/protocol';
2
+ import { ReactElement } from 'react';
2
3
 
3
4
  type FrontendComponentRenderer = {
4
5
  namespace: string;
5
- render: (component: BaseComponentProto<string, string>) => JSX.Element;
6
+ render: (component: BaseComponentProto<string, string>) => ReactElement;
6
7
  };
7
8
  type FrontendComponentRenderers = FrontendComponentRenderer[];
8
9
 
package/dist/types.d.ts CHANGED
@@ -1,8 +1,9 @@
1
1
  import { BaseComponentProto } from '@arcanejs/protocol';
2
+ import { ReactElement } from 'react';
2
3
 
3
4
  type FrontendComponentRenderer = {
4
5
  namespace: string;
5
- render: (component: BaseComponentProto<string, string>) => JSX.Element;
6
+ render: (component: BaseComponentProto<string, string>) => ReactElement;
6
7
  };
7
8
  type FrontendComponentRenderers = FrontendComponentRenderer[];
8
9
 
@@ -1,3 +1,5 @@
1
+ import { ClassValue } from 'clsx';
2
+
1
3
  declare function switchToMouseMode(ev: MouseEvent): void;
2
4
  declare function switchToTouchMode(): void;
3
5
  declare function initialiseListeners(): void;
@@ -18,13 +20,14 @@ declare function trackTouch(touch: React.Touch, move: (pos: {
18
20
  pageY: number;
19
21
  }) => void): void;
20
22
 
21
- declare const calculateClass: (...args: (string | undefined | null | false)[]) => string;
23
+ declare const cn: (...args: ClassValue[]) => string;
24
+ declare const calculateClass: (...args: ClassValue[]) => string;
22
25
  declare const VALID_COLOR_SCHEME_PREFS: readonly ["auto", "dark", "light"];
23
26
  type ColorSchemePreference = (typeof VALID_COLOR_SCHEME_PREFS)[number];
24
27
  declare const useColorSchemePreferences: () => {
25
- colorSchemePreference: "dark" | "light" | "auto";
28
+ colorSchemePreference: "auto" | "dark" | "light";
26
29
  setColorSchemePreference: (newPreference: ColorSchemePreference) => void;
27
30
  };
28
31
  declare const usePreferredColorScheme: () => 'dark' | 'light';
29
32
 
30
- export { VALID_COLOR_SCHEME_PREFS, calculateClass, initialiseListeners, switchToMouseMode, switchToTouchMode, trackTouch, useColorSchemePreferences, usePreferredColorScheme, usePressable };
33
+ export { VALID_COLOR_SCHEME_PREFS, calculateClass, cn, initialiseListeners, switchToMouseMode, switchToTouchMode, trackTouch, useColorSchemePreferences, usePreferredColorScheme, usePressable };
@@ -1,3 +1,5 @@
1
+ import { ClassValue } from 'clsx';
2
+
1
3
  declare function switchToMouseMode(ev: MouseEvent): void;
2
4
  declare function switchToTouchMode(): void;
3
5
  declare function initialiseListeners(): void;
@@ -18,13 +20,14 @@ declare function trackTouch(touch: React.Touch, move: (pos: {
18
20
  pageY: number;
19
21
  }) => void): void;
20
22
 
21
- declare const calculateClass: (...args: (string | undefined | null | false)[]) => string;
23
+ declare const cn: (...args: ClassValue[]) => string;
24
+ declare const calculateClass: (...args: ClassValue[]) => string;
22
25
  declare const VALID_COLOR_SCHEME_PREFS: readonly ["auto", "dark", "light"];
23
26
  type ColorSchemePreference = (typeof VALID_COLOR_SCHEME_PREFS)[number];
24
27
  declare const useColorSchemePreferences: () => {
25
- colorSchemePreference: "dark" | "light" | "auto";
28
+ colorSchemePreference: "auto" | "dark" | "light";
26
29
  setColorSchemePreference: (newPreference: ColorSchemePreference) => void;
27
30
  };
28
31
  declare const usePreferredColorScheme: () => 'dark' | 'light';
29
32
 
30
- export { VALID_COLOR_SCHEME_PREFS, calculateClass, initialiseListeners, switchToMouseMode, switchToTouchMode, trackTouch, useColorSchemePreferences, usePreferredColorScheme, usePressable };
33
+ export { VALID_COLOR_SCHEME_PREFS, calculateClass, cn, initialiseListeners, switchToMouseMode, switchToTouchMode, trackTouch, useColorSchemePreferences, usePreferredColorScheme, usePressable };
@@ -8,8 +8,9 @@
8
8
 
9
9
 
10
10
 
11
- var _chunkTMN35K5Yjs = require('../chunk-TMN35K5Y.js');
12
11
 
12
+ var _chunkGBYIEWGNjs = require('../chunk-GBYIEWGN.js');
13
+ require('../chunk-MLKGABMK.js');
13
14
 
14
15
 
15
16
 
@@ -19,4 +20,6 @@ var _chunkTMN35K5Yjs = require('../chunk-TMN35K5Y.js');
19
20
 
20
21
 
21
22
 
22
- exports.VALID_COLOR_SCHEME_PREFS = _chunkTMN35K5Yjs.VALID_COLOR_SCHEME_PREFS; exports.calculateClass = _chunkTMN35K5Yjs.calculateClass; exports.initialiseListeners = _chunkTMN35K5Yjs.initialiseListeners; exports.switchToMouseMode = _chunkTMN35K5Yjs.switchToMouseMode; exports.switchToTouchMode = _chunkTMN35K5Yjs.switchToTouchMode; exports.trackTouch = _chunkTMN35K5Yjs.trackTouch; exports.useColorSchemePreferences = _chunkTMN35K5Yjs.useColorSchemePreferences; exports.usePreferredColorScheme = _chunkTMN35K5Yjs.usePreferredColorScheme; exports.usePressable = _chunkTMN35K5Yjs.usePressable;
23
+
24
+
25
+ exports.VALID_COLOR_SCHEME_PREFS = _chunkGBYIEWGNjs.VALID_COLOR_SCHEME_PREFS; exports.calculateClass = _chunkGBYIEWGNjs.calculateClass; exports.cn = _chunkGBYIEWGNjs.cn; exports.initialiseListeners = _chunkGBYIEWGNjs.initialiseListeners; exports.switchToMouseMode = _chunkGBYIEWGNjs.switchToMouseMode; exports.switchToTouchMode = _chunkGBYIEWGNjs.switchToTouchMode; exports.trackTouch = _chunkGBYIEWGNjs.trackTouch; exports.useColorSchemePreferences = _chunkGBYIEWGNjs.useColorSchemePreferences; exports.usePreferredColorScheme = _chunkGBYIEWGNjs.usePreferredColorScheme; exports.usePressable = _chunkGBYIEWGNjs.usePressable;
@@ -1,6 +1,7 @@
1
1
  import {
2
2
  VALID_COLOR_SCHEME_PREFS,
3
3
  calculateClass,
4
+ cn,
4
5
  initialiseListeners,
5
6
  switchToMouseMode,
6
7
  switchToTouchMode,
@@ -8,10 +9,12 @@ import {
8
9
  useColorSchemePreferences,
9
10
  usePreferredColorScheme,
10
11
  usePressable
11
- } from "../chunk-PTANIWKR.mjs";
12
+ } from "../chunk-2HBLGAG3.mjs";
13
+ import "../chunk-7P6ASYW6.mjs";
12
14
  export {
13
15
  VALID_COLOR_SCHEME_PREFS,
14
16
  calculateClass,
17
+ cn,
15
18
  initialiseListeners,
16
19
  switchToMouseMode,
17
20
  switchToTouchMode,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@arcanejs/toolkit-frontend",
3
- "version": "0.9.0",
3
+ "version": "0.10.0",
4
4
  "private": false,
5
5
  "description": "Library of the frontend react components used to render the @arcanejs Toolkit",
6
6
  "keywords": [],
@@ -32,6 +32,21 @@
32
32
  "import": "./dist/styling.mjs",
33
33
  "require": "./dist/styling.js"
34
34
  },
35
+ "./styles": {
36
+ "@arcanejs/source": "./src/styles/index.ts",
37
+ "types": "./dist/styles/index.d.ts",
38
+ "import": "./dist/styles/index.mjs",
39
+ "require": "./dist/styles/index.js"
40
+ },
41
+ "./styles/core.css": {
42
+ "default": "./dist/styles/core.css"
43
+ },
44
+ "./styles/theme.css": {
45
+ "default": "./dist/styles/theme.css"
46
+ },
47
+ "./styles/base.css": {
48
+ "default": "./dist/styles/base.css"
49
+ },
35
50
  "./types": {
36
51
  "@arcanejs/source": "./src/types.ts",
37
52
  "types": "./dist/types.d.ts",
@@ -47,22 +62,26 @@
47
62
  "./package.json": "./package.json"
48
63
  },
49
64
  "devDependencies": {
65
+ "@tailwindcss/cli": "^4.1.13",
50
66
  "@types/eslint": "^8.56.5",
51
67
  "@types/node": "^20.11.24",
52
- "@types/react": "^18",
53
- "@types/react-dom": "^18",
68
+ "@types/react": "^19.2.2",
69
+ "@types/react-dom": "^19.2.2",
54
70
  "check-export-map": "^1.3.1",
55
71
  "eslint": "^8.57.0",
72
+ "eslint-plugin-better-tailwindcss": "^4.2.0",
73
+ "tailwindcss": "^4.1.13",
56
74
  "tsup": "^8.1.0",
57
75
  "typescript": "^5.3.3",
58
76
  "@arcanejs/eslint-config": "^0.0.0",
59
77
  "@arcanejs/typescript-config": "^0.0.0"
60
78
  },
61
79
  "dependencies": {
62
- "react": "^18",
63
- "react-dom": "18.3.1",
64
- "styled-components": "^6.1.13",
65
- "@arcanejs/protocol": "^0.7.0"
80
+ "clsx": "^2.1.1",
81
+ "react": "^19.2.0",
82
+ "react-dom": "^19.2.0",
83
+ "tailwind-merge": "^3.5.0",
84
+ "@arcanejs/protocol": "^0.8.0"
66
85
  },
67
86
  "files": [
68
87
  "dist"
@@ -71,7 +90,8 @@
71
90
  "access": "public"
72
91
  },
73
92
  "scripts": {
74
- "lint": "eslint . --max-warnings 0",
75
- "build": "rm -rf dist && tsup && check-export-map"
93
+ "lint": "pnpm build:styles && ESLINT_USE_FLAT_CONFIG=true eslint . --max-warnings 0",
94
+ "build": "rm -rf dist && tsup && pnpm build:styles && check-export-map",
95
+ "build:styles": "tailwindcss -i ./src/styles/core.css -o ./dist/styles/core.css && cp ./src/styles/theme.css ./dist/styles/theme.css && cp ./src/styles/base.css ./dist/styles/base.css"
76
96
  }
77
97
  }