@frosted-ui/react-native 0.0.1-canary.91
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 +102 -0
- package/dist/components/accordion.d.ts +21 -0
- package/dist/components/accordion.d.ts.map +1 -0
- package/dist/components/accordion.js +94 -0
- package/dist/components/accordion.js.map +1 -0
- package/dist/components/alert-dialog.d.ts +67 -0
- package/dist/components/alert-dialog.d.ts.map +1 -0
- package/dist/components/alert-dialog.js +170 -0
- package/dist/components/alert-dialog.js.map +1 -0
- package/dist/components/aspect-ratio.d.ts +4 -0
- package/dist/components/aspect-ratio.d.ts.map +1 -0
- package/dist/components/aspect-ratio.js +4 -0
- package/dist/components/aspect-ratio.js.map +1 -0
- package/dist/components/avatar.d.ts +23 -0
- package/dist/components/avatar.d.ts.map +1 -0
- package/dist/components/avatar.js +143 -0
- package/dist/components/avatar.js.map +1 -0
- package/dist/components/badge.d.ts +17 -0
- package/dist/components/badge.d.ts.map +1 -0
- package/dist/components/badge.js +95 -0
- package/dist/components/badge.js.map +1 -0
- package/dist/components/button.d.ts +14 -0
- package/dist/components/button.d.ts.map +1 -0
- package/dist/components/button.js +85 -0
- package/dist/components/button.js.map +1 -0
- package/dist/components/callout.d.ts +25 -0
- package/dist/components/callout.d.ts.map +1 -0
- package/dist/components/callout.js +146 -0
- package/dist/components/callout.js.map +1 -0
- package/dist/components/card.d.ts +10 -0
- package/dist/components/card.d.ts.map +1 -0
- package/dist/components/card.js +41 -0
- package/dist/components/card.js.map +1 -0
- package/dist/components/checkbox.d.ts +13 -0
- package/dist/components/checkbox.d.ts.map +1 -0
- package/dist/components/checkbox.js +116 -0
- package/dist/components/checkbox.js.map +1 -0
- package/dist/components/code.d.ts +20 -0
- package/dist/components/code.d.ts.map +1 -0
- package/dist/components/code.js +83 -0
- package/dist/components/code.js.map +1 -0
- package/dist/components/context-menu.d.ts +65 -0
- package/dist/components/context-menu.d.ts.map +1 -0
- package/dist/components/context-menu.js +441 -0
- package/dist/components/context-menu.js.map +1 -0
- package/dist/components/dialog.d.ts +49 -0
- package/dist/components/dialog.d.ts.map +1 -0
- package/dist/components/dialog.js +141 -0
- package/dist/components/dialog.js.map +1 -0
- package/dist/components/dropdown-menu.d.ts +65 -0
- package/dist/components/dropdown-menu.d.ts.map +1 -0
- package/dist/components/dropdown-menu.js +441 -0
- package/dist/components/dropdown-menu.js.map +1 -0
- package/dist/components/heading.d.ts +15 -0
- package/dist/components/heading.d.ts.map +1 -0
- package/dist/components/heading.js +8 -0
- package/dist/components/heading.js.map +1 -0
- package/dist/components/hover-card.d.ts +24 -0
- package/dist/components/hover-card.d.ts.map +1 -0
- package/dist/components/hover-card.js +49 -0
- package/dist/components/hover-card.js.map +1 -0
- package/dist/components/icon-button.d.ts +14 -0
- package/dist/components/icon-button.d.ts.map +1 -0
- package/dist/components/icon-button.js +85 -0
- package/dist/components/icon-button.js.map +1 -0
- package/dist/components/icon.d.ts +28 -0
- package/dist/components/icon.d.ts.map +1 -0
- package/dist/components/icon.js +45 -0
- package/dist/components/icon.js.map +1 -0
- package/dist/components/index.d.ts +33 -0
- package/dist/components/index.d.ts.map +1 -0
- package/dist/components/index.js +45 -0
- package/dist/components/index.js.map +1 -0
- package/dist/components/label.d.ts +8 -0
- package/dist/components/label.d.ts.map +1 -0
- package/dist/components/label.js +26 -0
- package/dist/components/label.js.map +1 -0
- package/dist/components/native-only-animated-view.d.ts +223 -0
- package/dist/components/native-only-animated-view.d.ts.map +1 -0
- package/dist/components/native-only-animated-view.js +26 -0
- package/dist/components/native-only-animated-view.js.map +1 -0
- package/dist/components/popover.d.ts +24 -0
- package/dist/components/popover.d.ts.map +1 -0
- package/dist/components/popover.js +52 -0
- package/dist/components/popover.js.map +1 -0
- package/dist/components/progress.d.ts +15 -0
- package/dist/components/progress.d.ts.map +1 -0
- package/dist/components/progress.js +68 -0
- package/dist/components/progress.js.map +1 -0
- package/dist/components/radio-group.d.ts +19 -0
- package/dist/components/radio-group.d.ts.map +1 -0
- package/dist/components/radio-group.js +138 -0
- package/dist/components/radio-group.js.map +1 -0
- package/dist/components/segmented-control.d.ts +21 -0
- package/dist/components/segmented-control.d.ts.map +1 -0
- package/dist/components/segmented-control.js +113 -0
- package/dist/components/segmented-control.js.map +1 -0
- package/dist/components/select.d.ts +58 -0
- package/dist/components/select.d.ts.map +1 -0
- package/dist/components/select.js +493 -0
- package/dist/components/select.js.map +1 -0
- package/dist/components/separator.d.ts +12 -0
- package/dist/components/separator.d.ts.map +1 -0
- package/dist/components/separator.js +64 -0
- package/dist/components/separator.js.map +1 -0
- package/dist/components/skeleton.d.ts +28 -0
- package/dist/components/skeleton.d.ts.map +1 -0
- package/dist/components/skeleton.js +153 -0
- package/dist/components/skeleton.js.map +1 -0
- package/dist/components/spinner.d.ts +17 -0
- package/dist/components/spinner.d.ts.map +1 -0
- package/dist/components/spinner.js +199 -0
- package/dist/components/spinner.js.map +1 -0
- package/dist/components/switch.d.ts +13 -0
- package/dist/components/switch.d.ts.map +1 -0
- package/dist/components/switch.js +204 -0
- package/dist/components/switch.js.map +1 -0
- package/dist/components/tabs.d.ts +25 -0
- package/dist/components/tabs.d.ts.map +1 -0
- package/dist/components/tabs.js +124 -0
- package/dist/components/tabs.js.map +1 -0
- package/dist/components/text-area.d.ts +16 -0
- package/dist/components/text-area.d.ts.map +1 -0
- package/dist/components/text-area.js +117 -0
- package/dist/components/text-area.js.map +1 -0
- package/dist/components/text-field.d.ts +35 -0
- package/dist/components/text-field.d.ts.map +1 -0
- package/dist/components/text-field.js +256 -0
- package/dist/components/text-field.js.map +1 -0
- package/dist/components/text.d.ts +23 -0
- package/dist/components/text.d.ts.map +1 -0
- package/dist/components/text.js +33 -0
- package/dist/components/text.js.map +1 -0
- package/dist/components/tooltip.d.ts +24 -0
- package/dist/components/tooltip.d.ts.map +1 -0
- package/dist/components/tooltip.js +63 -0
- package/dist/components/tooltip.js.map +1 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +8 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/button-styles.d.ts +13 -0
- package/dist/lib/button-styles.d.ts.map +1 -0
- package/dist/lib/button-styles.js +131 -0
- package/dist/lib/button-styles.js.map +1 -0
- package/dist/lib/color-utils.d.ts +21 -0
- package/dist/lib/color-utils.d.ts.map +1 -0
- package/dist/lib/color-utils.js +84 -0
- package/dist/lib/color-utils.js.map +1 -0
- package/dist/lib/dialog-styles.d.ts +42 -0
- package/dist/lib/dialog-styles.d.ts.map +1 -0
- package/dist/lib/dialog-styles.js +162 -0
- package/dist/lib/dialog-styles.js.map +1 -0
- package/dist/lib/native-colors.d.ts +8 -0
- package/dist/lib/native-colors.d.ts.map +1 -0
- package/dist/lib/native-colors.js +67 -0
- package/dist/lib/native-colors.js.map +1 -0
- package/dist/lib/panel-styles.d.ts +32 -0
- package/dist/lib/panel-styles.d.ts.map +1 -0
- package/dist/lib/panel-styles.js +96 -0
- package/dist/lib/panel-styles.js.map +1 -0
- package/dist/lib/text-input-styles.d.ts +35 -0
- package/dist/lib/text-input-styles.d.ts.map +1 -0
- package/dist/lib/text-input-styles.js +107 -0
- package/dist/lib/text-input-styles.js.map +1 -0
- package/dist/lib/theme-vars.d.ts +222 -0
- package/dist/lib/theme-vars.d.ts.map +1 -0
- package/dist/lib/theme-vars.js +173 -0
- package/dist/lib/theme-vars.js.map +1 -0
- package/dist/lib/theme.d.ts +57 -0
- package/dist/lib/theme.d.ts.map +1 -0
- package/dist/lib/theme.js +80 -0
- package/dist/lib/theme.js.map +1 -0
- package/dist/lib/types.d.ts +14 -0
- package/dist/lib/types.d.ts.map +1 -0
- package/dist/lib/types.js +2 -0
- package/dist/lib/types.js.map +1 -0
- package/dist/lib/use-theme-vars.d.ts +325 -0
- package/dist/lib/use-theme-vars.d.ts.map +1 -0
- package/dist/lib/use-theme-vars.js +17 -0
- package/dist/lib/use-theme-vars.js.map +1 -0
- package/dist/lib/utils.d.ts +3 -0
- package/dist/lib/utils.d.ts.map +1 -0
- package/dist/lib/utils.js +17 -0
- package/dist/lib/utils.js.map +1 -0
- package/global.css +1813 -0
- package/package.json +114 -0
- package/tailwind-preset.js +310 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dialog-styles.js","sourceRoot":"","sources":["../../src/lib/dialog-styles.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { AccentColor } from './types';
|
|
2
|
+
type Shade = '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9' | '10' | '11' | '12';
|
|
3
|
+
type AlphaShade = 'a1' | 'a2' | 'a3' | 'a4' | 'a5' | 'a6' | 'a7' | 'a8' | 'a9' | 'a10' | 'a11' | 'a12';
|
|
4
|
+
export declare function getNativeAccentColor(color: AccentColor, shade: Shade): string | undefined;
|
|
5
|
+
export declare function getNativeAccentAlphaColor(color: AccentColor, shade: AlphaShade): string | undefined;
|
|
6
|
+
export declare function getNativeAccentContrastColor(color: AccentColor): string;
|
|
7
|
+
export {};
|
|
8
|
+
//# sourceMappingURL=native-colors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"native-colors.d.ts","sourceRoot":"","sources":["../../src/lib/native-colors.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAS3C,KAAK,KAAK,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAEtF,KAAK,UAAU,GACX,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,KAAK,GACL,KAAK,GACL,KAAK,CAAC;AAaV,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,KAAK,GAAG,MAAM,GAAG,SAAS,CAKzF;AAED,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,WAAW,EAClB,KAAK,EAAE,UAAU,GAChB,MAAM,GAAG,SAAS,CAMpB;AAmCD,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,WAAW,GAAG,MAAM,CAEvE"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
/* eslint-disable @typescript-eslint/no-var-requires */
|
|
2
|
+
// Import the Frosted UI color palettes directly.
|
|
3
|
+
// This works on native because it's just a plain JS object.
|
|
4
|
+
// Shape example:
|
|
5
|
+
// frostedColors.blue = { blue1: '#...', blue2: '#...', ..., blue12: '#...' }
|
|
6
|
+
// frostedColors.blueA = { blueA1: 'rgba(...)', ..., blueA12: 'rgba(...)' }
|
|
7
|
+
const frostedColors = require('@frosted-ui/colors');
|
|
8
|
+
function getPalette(color) {
|
|
9
|
+
// e.g. 'blue' → frostedColors.blue.blue1 ... blue12
|
|
10
|
+
return frostedColors[color];
|
|
11
|
+
}
|
|
12
|
+
function getAlphaPalette(color) {
|
|
13
|
+
// e.g. 'blue' → frostedColors.blueA.blueA1 ... blueA12
|
|
14
|
+
const key = `${color}A`;
|
|
15
|
+
return frostedColors[key];
|
|
16
|
+
}
|
|
17
|
+
export function getNativeAccentColor(color, shade) {
|
|
18
|
+
const palette = getPalette(color);
|
|
19
|
+
if (!palette)
|
|
20
|
+
return undefined;
|
|
21
|
+
const key = `${color}${shade}`; // e.g. blue + '9' → 'blue9'
|
|
22
|
+
return palette[key];
|
|
23
|
+
}
|
|
24
|
+
export function getNativeAccentAlphaColor(color, shade) {
|
|
25
|
+
const alphaPalette = getAlphaPalette(color);
|
|
26
|
+
if (!alphaPalette)
|
|
27
|
+
return undefined;
|
|
28
|
+
const numericShade = shade.slice(1); // a1 -> '1'
|
|
29
|
+
const key = `${color}A${numericShade}`; // e.g. blueA1
|
|
30
|
+
return alphaPalette[key];
|
|
31
|
+
}
|
|
32
|
+
// For contrast text colors we reuse the same mapping as web (from color.css),
|
|
33
|
+
// but encoded directly as JS values so React Native can use them.
|
|
34
|
+
const contrastColors = {
|
|
35
|
+
tomato: 'white',
|
|
36
|
+
red: 'white',
|
|
37
|
+
ruby: 'white',
|
|
38
|
+
crimson: 'white',
|
|
39
|
+
pink: 'white',
|
|
40
|
+
plum: 'white',
|
|
41
|
+
purple: 'white',
|
|
42
|
+
violet: 'white',
|
|
43
|
+
iris: 'white',
|
|
44
|
+
cyan: 'white',
|
|
45
|
+
teal: 'white',
|
|
46
|
+
jade: 'white',
|
|
47
|
+
green: 'white',
|
|
48
|
+
grass: 'white',
|
|
49
|
+
brown: 'white',
|
|
50
|
+
sky: '#1C2024',
|
|
51
|
+
mint: '#1A211E',
|
|
52
|
+
yellow: '#21201C',
|
|
53
|
+
amber: '#21201C',
|
|
54
|
+
gold: 'white',
|
|
55
|
+
bronze: 'white',
|
|
56
|
+
gray: 'white',
|
|
57
|
+
blue: 'white',
|
|
58
|
+
orange: 'white',
|
|
59
|
+
indigo: 'white',
|
|
60
|
+
magenta: '#141212',
|
|
61
|
+
lemon: '#20240D',
|
|
62
|
+
lime: '#162715',
|
|
63
|
+
};
|
|
64
|
+
export function getNativeAccentContrastColor(color) {
|
|
65
|
+
return contrastColors[color];
|
|
66
|
+
}
|
|
67
|
+
//# sourceMappingURL=native-colors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"native-colors.js","sourceRoot":"","sources":["../../src/lib/native-colors.ts"],"names":[],"mappings":"AAAA,uDAAuD;AAIvD,iDAAiD;AACjD,4DAA4D;AAC5D,iBAAiB;AACjB,+EAA+E;AAC/E,6EAA6E;AAC7E,MAAM,aAAa,GAAG,OAAO,CAAC,oBAAoB,CAA2C,CAAC;AAkB9F,SAAS,UAAU,CAAC,KAAkB;IACpC,oDAAoD;IACpD,OAAO,aAAa,CAAC,KAAK,CAAuC,CAAC;AACpE,CAAC;AAED,SAAS,eAAe,CAAC,KAAkB;IACzC,uDAAuD;IACvD,MAAM,GAAG,GAAG,GAAG,KAAK,GAAG,CAAC;IACxB,OAAO,aAAa,CAAC,GAAG,CAAuC,CAAC;AAClE,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,KAAkB,EAAE,KAAY;IACnE,MAAM,OAAO,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;IAClC,IAAI,CAAC,OAAO;QAAE,OAAO,SAAS,CAAC;IAC/B,MAAM,GAAG,GAAG,GAAG,KAAK,GAAG,KAAK,EAAE,CAAC,CAAC,4BAA4B;IAC5D,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC;AACtB,CAAC;AAED,MAAM,UAAU,yBAAyB,CACvC,KAAkB,EAClB,KAAiB;IAEjB,MAAM,YAAY,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;IAC5C,IAAI,CAAC,YAAY;QAAE,OAAO,SAAS,CAAC;IACpC,MAAM,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY;IACjD,MAAM,GAAG,GAAG,GAAG,KAAK,IAAI,YAAY,EAAE,CAAC,CAAC,cAAc;IACtD,OAAO,YAAY,CAAC,GAAG,CAAC,CAAC;AAC3B,CAAC;AAED,8EAA8E;AAC9E,kEAAkE;AAClE,MAAM,cAAc,GAAgC;IAClD,MAAM,EAAE,OAAO;IACf,GAAG,EAAE,OAAO;IACZ,IAAI,EAAE,OAAO;IACb,OAAO,EAAE,OAAO;IAChB,IAAI,EAAE,OAAO;IACb,IAAI,EAAE,OAAO;IACb,MAAM,EAAE,OAAO;IACf,MAAM,EAAE,OAAO;IACf,IAAI,EAAE,OAAO;IACb,IAAI,EAAE,OAAO;IACb,IAAI,EAAE,OAAO;IACb,IAAI,EAAE,OAAO;IACb,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,OAAO;IACd,GAAG,EAAE,SAAS;IACd,IAAI,EAAE,SAAS;IACf,MAAM,EAAE,SAAS;IACjB,KAAK,EAAE,SAAS;IAChB,IAAI,EAAE,OAAO;IACb,MAAM,EAAE,OAAO;IACf,IAAI,EAAE,OAAO;IACb,IAAI,EAAE,OAAO;IACb,MAAM,EAAE,OAAO;IACf,MAAM,EAAE,OAAO;IACf,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,SAAS;IAChB,IAAI,EAAE,SAAS;CAChB,CAAC;AAEF,MAAM,UAAU,4BAA4B,CAAC,KAAkB;IAC7D,OAAO,cAAc,CAAC,KAAK,CAAC,CAAC;AAC/B,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { type ViewStyle } from 'react-native';
|
|
2
|
+
type PanelSize = '1' | '2' | '3' | '4';
|
|
3
|
+
type PanelVariant = 'solid' | 'translucent';
|
|
4
|
+
interface ThemeColors {
|
|
5
|
+
panelSolid: string;
|
|
6
|
+
panelTranslucent: string;
|
|
7
|
+
palettes: {
|
|
8
|
+
gray: {
|
|
9
|
+
a6: string;
|
|
10
|
+
};
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
interface PanelStyleOptions {
|
|
14
|
+
size: PanelSize;
|
|
15
|
+
variant: PanelVariant;
|
|
16
|
+
colors: ThemeColors;
|
|
17
|
+
isDark: boolean;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Get padding and border radius for panel content based on size
|
|
21
|
+
*/
|
|
22
|
+
declare function getPanelSizeStyle(size: PanelSize): {
|
|
23
|
+
padding: number;
|
|
24
|
+
borderRadius: number;
|
|
25
|
+
};
|
|
26
|
+
/**
|
|
27
|
+
* Get complete panel content style
|
|
28
|
+
*/
|
|
29
|
+
declare function getPanelContentStyle(options: PanelStyleOptions): ViewStyle;
|
|
30
|
+
export { getPanelContentStyle, getPanelSizeStyle };
|
|
31
|
+
export type { PanelSize, PanelStyleOptions, PanelVariant };
|
|
32
|
+
//# sourceMappingURL=panel-styles.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"panel-styles.d.ts","sourceRoot":"","sources":["../../src/lib/panel-styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAExD,KAAK,SAAS,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;AACvC,KAAK,YAAY,GAAG,OAAO,GAAG,aAAa,CAAC;AAE5C,UAAU,WAAW;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;IACzB,QAAQ,EAAE;QACR,IAAI,EAAE;YACJ,EAAE,EAAE,MAAM,CAAC;SACZ,CAAC;KACH,CAAC;CACH;AAED,UAAU,iBAAiB;IACzB,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE,YAAY,CAAC;IACtB,MAAM,EAAE,WAAW,CAAC;IACpB,MAAM,EAAE,OAAO,CAAC;CACjB;AAED;;GAEG;AACH,iBAAS,iBAAiB,CAAC,IAAI,EAAE,SAAS,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,CAWrF;AA6DD;;GAEG;AACH,iBAAS,oBAAoB,CAAC,OAAO,EAAE,iBAAiB,GAAG,SAAS,CA0BnE;AAED,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,CAAC;AACnD,YAAY,EAAE,SAAS,EAAE,iBAAiB,EAAE,YAAY,EAAE,CAAC"}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
import { Platform } from 'react-native';
|
|
2
|
+
/**
|
|
3
|
+
* Get padding and border radius for panel content based on size
|
|
4
|
+
*/
|
|
5
|
+
function getPanelSizeStyle(size) {
|
|
6
|
+
switch (size) {
|
|
7
|
+
case '1':
|
|
8
|
+
return { padding: 12, borderRadius: 8 }; // space-3, 8px
|
|
9
|
+
case '2':
|
|
10
|
+
return { padding: 16, borderRadius: 12 }; // space-4, 12px
|
|
11
|
+
case '3':
|
|
12
|
+
return { padding: 24, borderRadius: 16 }; // space-5, 16px
|
|
13
|
+
case '4':
|
|
14
|
+
return { padding: 32, borderRadius: 20 }; // space-6, 20px
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Get backdrop filter style for translucent panels (web only)
|
|
19
|
+
*/
|
|
20
|
+
function getPanelBackdropStyle(variant, isDark) {
|
|
21
|
+
if (variant !== 'translucent' || Platform.OS !== 'web') {
|
|
22
|
+
return undefined;
|
|
23
|
+
}
|
|
24
|
+
const backdropFilter = isDark
|
|
25
|
+
? 'blur(20px) saturate(190%) contrast(90%) brightness(80%)'
|
|
26
|
+
: 'blur(20px) saturate(190%) contrast(50%) brightness(130%)';
|
|
27
|
+
return {
|
|
28
|
+
backdropFilter,
|
|
29
|
+
WebkitBackdropFilter: backdropFilter,
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Get shadow style for panel content
|
|
34
|
+
* Includes outline via boxShadow on web:
|
|
35
|
+
* - Light mode: 1px gray.a6 outline (no border)
|
|
36
|
+
* - Dark mode: 0.5px black outline (+ border)
|
|
37
|
+
*/
|
|
38
|
+
function getPanelShadowStyle(colors, isDark) {
|
|
39
|
+
const baseShadow = '0px 12px 60px rgba(0, 0, 0, 0.25), 0px 2px 8px rgba(0, 0, 0, 0.12)';
|
|
40
|
+
const outlineShadow = isDark
|
|
41
|
+
? `, 0 0 0 0.5px black`
|
|
42
|
+
: `, 0 0 0 1px ${colors.palettes.gray.a6}`;
|
|
43
|
+
return Platform.select({
|
|
44
|
+
web: {
|
|
45
|
+
boxShadow: baseShadow + outlineShadow,
|
|
46
|
+
},
|
|
47
|
+
default: {
|
|
48
|
+
shadowColor: '#000',
|
|
49
|
+
shadowOffset: { width: 0, height: 12 },
|
|
50
|
+
shadowOpacity: 0.25,
|
|
51
|
+
shadowRadius: 30,
|
|
52
|
+
elevation: 24,
|
|
53
|
+
},
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Get border style for panel content
|
|
58
|
+
* Dark mode has 1px gray.a6 border on all platforms
|
|
59
|
+
* Light mode: no border on web (uses boxShadow outline), border on native as fallback
|
|
60
|
+
*/
|
|
61
|
+
function getPanelBorderStyle(colors, isDark) {
|
|
62
|
+
if (isDark || Platform.OS !== 'web') {
|
|
63
|
+
return {
|
|
64
|
+
borderWidth: 1,
|
|
65
|
+
borderColor: colors.palettes.gray.a6,
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
return undefined;
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Get complete panel content style
|
|
72
|
+
*/
|
|
73
|
+
function getPanelContentStyle(options) {
|
|
74
|
+
const { size, variant, colors, isDark } = options;
|
|
75
|
+
const sizeStyle = getPanelSizeStyle(size);
|
|
76
|
+
// TODO: Handle translucent variant properly on native (iOS/Android) with blur effect
|
|
77
|
+
// For now, native always uses solid background since backdrop-filter is web-only
|
|
78
|
+
// and native blur requires additional setup (expo-blur or @react-native-community/blur)
|
|
79
|
+
const backgroundColor = Platform.OS === 'web' && variant === 'translucent'
|
|
80
|
+
? colors.panelTranslucent
|
|
81
|
+
: colors.panelSolid;
|
|
82
|
+
const backdropStyle = getPanelBackdropStyle(variant, isDark);
|
|
83
|
+
const shadowStyle = getPanelShadowStyle(colors, isDark);
|
|
84
|
+
const borderStyle = getPanelBorderStyle(colors, isDark);
|
|
85
|
+
return {
|
|
86
|
+
backgroundColor,
|
|
87
|
+
padding: sizeStyle.padding,
|
|
88
|
+
borderRadius: sizeStyle.borderRadius,
|
|
89
|
+
overflow: 'hidden',
|
|
90
|
+
...shadowStyle,
|
|
91
|
+
...backdropStyle,
|
|
92
|
+
...borderStyle,
|
|
93
|
+
};
|
|
94
|
+
}
|
|
95
|
+
export { getPanelContentStyle, getPanelSizeStyle };
|
|
96
|
+
//# sourceMappingURL=panel-styles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"panel-styles.js","sourceRoot":"","sources":["../../src/lib/panel-styles.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import type { AccentColor, Color } from '../lib/types';
|
|
2
|
+
import { useThemeVars } from '../lib/use-theme-vars';
|
|
3
|
+
import { type ViewStyle } from 'react-native';
|
|
4
|
+
export type TextInputSize = '1' | '2' | '3' | '4';
|
|
5
|
+
export type TextInputVariant = 'surface' | 'soft';
|
|
6
|
+
export declare function resolveAccentFromColor(color?: Color): AccentColor;
|
|
7
|
+
/**
|
|
8
|
+
* Convert hex color to rgba with specified opacity
|
|
9
|
+
*/
|
|
10
|
+
export declare function hexToRgba(hex: string, opacity: number): string;
|
|
11
|
+
/**
|
|
12
|
+
* Get background and border styles for surface variant
|
|
13
|
+
*/
|
|
14
|
+
export declare function getSurfaceVariantStyle(colors: ReturnType<typeof useThemeVars>['colors']): ViewStyle;
|
|
15
|
+
/**
|
|
16
|
+
* Get background style for soft variant
|
|
17
|
+
*/
|
|
18
|
+
export declare function getSoftVariantStyle(colors: ReturnType<typeof useThemeVars>['colors'], accentColor: AccentColor): ViewStyle;
|
|
19
|
+
/**
|
|
20
|
+
* Get text and placeholder colors based on variant
|
|
21
|
+
*/
|
|
22
|
+
export declare function getTextInputColors(variant: TextInputVariant, colors: ReturnType<typeof useThemeVars>['colors'], accentColor: AccentColor, disabled?: boolean): {
|
|
23
|
+
textColor: string;
|
|
24
|
+
placeholderColor: string;
|
|
25
|
+
};
|
|
26
|
+
/**
|
|
27
|
+
* Get disabled background style for surface variant
|
|
28
|
+
* Uses gray-a3 overlay (simulated with opacity/background)
|
|
29
|
+
*/
|
|
30
|
+
export declare function getDisabledSurfaceStyle(colors: ReturnType<typeof useThemeVars>['colors']): ViewStyle;
|
|
31
|
+
/**
|
|
32
|
+
* Get disabled background style for soft variant
|
|
33
|
+
*/
|
|
34
|
+
export declare function getDisabledSoftStyle(colors: ReturnType<typeof useThemeVars>['colors']): ViewStyle;
|
|
35
|
+
//# sourceMappingURL=text-input-styles.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"text-input-styles.d.ts","sourceRoot":"","sources":["../../src/lib/text-input-styles.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAY,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAMxD,MAAM,MAAM,aAAa,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;AAClD,MAAM,MAAM,gBAAgB,GAAG,SAAS,GAAG,MAAM,CAAC;AAMlD,wBAAgB,sBAAsB,CAAC,KAAK,CAAC,EAAE,KAAK,GAAG,WAAW,CAcjE;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAO9D;AAMD;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC,QAAQ,CAAC,GAChD,SAAS,CAiBX;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC,QAAQ,CAAC,EACjD,WAAW,EAAE,WAAW,GACvB,SAAS,CAIX;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC,QAAQ,CAAC,EACjD,WAAW,EAAE,WAAW,EACxB,QAAQ,CAAC,EAAE,OAAO,GACjB;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,gBAAgB,EAAE,MAAM,CAAA;CAAE,CAyBjD;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC,QAAQ,CAAC,GAChD,SAAS,CAIX;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC,QAAQ,CAAC,GAAG,SAAS,CAIjG"}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
import { Platform } from 'react-native';
|
|
2
|
+
// ============================================================================
|
|
3
|
+
// Helpers
|
|
4
|
+
// ============================================================================
|
|
5
|
+
export function resolveAccentFromColor(color) {
|
|
6
|
+
if (!color)
|
|
7
|
+
return 'gray';
|
|
8
|
+
switch (color) {
|
|
9
|
+
case 'danger':
|
|
10
|
+
return 'red';
|
|
11
|
+
case 'warning':
|
|
12
|
+
return 'amber';
|
|
13
|
+
case 'success':
|
|
14
|
+
return 'green';
|
|
15
|
+
case 'info':
|
|
16
|
+
return 'blue';
|
|
17
|
+
default:
|
|
18
|
+
return color;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Convert hex color to rgba with specified opacity
|
|
23
|
+
*/
|
|
24
|
+
export function hexToRgba(hex, opacity) {
|
|
25
|
+
// Remove # if present
|
|
26
|
+
const cleanHex = hex.replace('#', '');
|
|
27
|
+
const r = parseInt(cleanHex.substring(0, 2), 16);
|
|
28
|
+
const g = parseInt(cleanHex.substring(2, 4), 16);
|
|
29
|
+
const b = parseInt(cleanHex.substring(4, 6), 16);
|
|
30
|
+
return `rgba(${r}, ${g}, ${b}, ${opacity})`;
|
|
31
|
+
}
|
|
32
|
+
// ============================================================================
|
|
33
|
+
// Variant Styles
|
|
34
|
+
// ============================================================================
|
|
35
|
+
/**
|
|
36
|
+
* Get background and border styles for surface variant
|
|
37
|
+
*/
|
|
38
|
+
export function getSurfaceVariantStyle(colors) {
|
|
39
|
+
return {
|
|
40
|
+
backgroundColor: colors.surface,
|
|
41
|
+
borderWidth: 1,
|
|
42
|
+
borderColor: colors.palettes.gray.a5,
|
|
43
|
+
...(Platform.OS === 'web'
|
|
44
|
+
? {
|
|
45
|
+
boxShadow: '0px 1px 2px 0px rgba(0, 0, 0, 0.05)',
|
|
46
|
+
}
|
|
47
|
+
: {
|
|
48
|
+
shadowColor: '#000',
|
|
49
|
+
shadowOffset: { width: 0, height: 1 },
|
|
50
|
+
shadowOpacity: 0.05,
|
|
51
|
+
shadowRadius: 2,
|
|
52
|
+
elevation: 1,
|
|
53
|
+
}),
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Get background style for soft variant
|
|
58
|
+
*/
|
|
59
|
+
export function getSoftVariantStyle(colors, accentColor) {
|
|
60
|
+
return {
|
|
61
|
+
backgroundColor: colors.palettes[accentColor].a3,
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Get text and placeholder colors based on variant
|
|
66
|
+
*/
|
|
67
|
+
export function getTextInputColors(variant, colors, accentColor, disabled) {
|
|
68
|
+
const grayPalette = colors.palettes.gray;
|
|
69
|
+
const palette = colors.palettes[accentColor];
|
|
70
|
+
// Disabled state: always use gray-a11 for text
|
|
71
|
+
// Placeholder uses gray-a5 (lighter alpha shade approximating gray-a11 at 0.5 opacity)
|
|
72
|
+
if (disabled) {
|
|
73
|
+
return {
|
|
74
|
+
textColor: grayPalette.a11,
|
|
75
|
+
placeholderColor: grayPalette.a5,
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
if (variant === 'surface') {
|
|
79
|
+
return {
|
|
80
|
+
textColor: grayPalette['12'],
|
|
81
|
+
placeholderColor: grayPalette.a10,
|
|
82
|
+
};
|
|
83
|
+
}
|
|
84
|
+
// Soft variant
|
|
85
|
+
return {
|
|
86
|
+
textColor: palette['12'],
|
|
87
|
+
placeholderColor: hexToRgba(palette['12'], 0.65), // TextArea uses 0.65, TextField uses 0.6
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Get disabled background style for surface variant
|
|
92
|
+
* Uses gray-a3 overlay (simulated with opacity/background)
|
|
93
|
+
*/
|
|
94
|
+
export function getDisabledSurfaceStyle(colors) {
|
|
95
|
+
return {
|
|
96
|
+
backgroundColor: colors.palettes.gray.a3,
|
|
97
|
+
};
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Get disabled background style for soft variant
|
|
101
|
+
*/
|
|
102
|
+
export function getDisabledSoftStyle(colors) {
|
|
103
|
+
return {
|
|
104
|
+
backgroundColor: colors.palettes.gray.a4,
|
|
105
|
+
};
|
|
106
|
+
}
|
|
107
|
+
//# sourceMappingURL=text-input-styles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"text-input-styles.js","sourceRoot":"","sources":["../../src/lib/text-input-styles.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,222 @@
|
|
|
1
|
+
declare const typography: {
|
|
2
|
+
readonly '0': {
|
|
3
|
+
readonly fontSize: 10;
|
|
4
|
+
readonly lineHeight: 12;
|
|
5
|
+
readonly letterSpacing: 0.01;
|
|
6
|
+
};
|
|
7
|
+
readonly '1': {
|
|
8
|
+
readonly fontSize: 12;
|
|
9
|
+
readonly lineHeight: 16;
|
|
10
|
+
readonly letterSpacing: 0.01;
|
|
11
|
+
};
|
|
12
|
+
readonly '2': {
|
|
13
|
+
readonly fontSize: 14;
|
|
14
|
+
readonly lineHeight: 20;
|
|
15
|
+
readonly letterSpacing: 0.01;
|
|
16
|
+
};
|
|
17
|
+
readonly '3': {
|
|
18
|
+
readonly fontSize: 16;
|
|
19
|
+
readonly lineHeight: 24;
|
|
20
|
+
readonly letterSpacing: 0.01;
|
|
21
|
+
};
|
|
22
|
+
readonly '4': {
|
|
23
|
+
readonly fontSize: 18;
|
|
24
|
+
readonly lineHeight: 26;
|
|
25
|
+
readonly letterSpacing: 0.01;
|
|
26
|
+
};
|
|
27
|
+
readonly '5': {
|
|
28
|
+
readonly fontSize: 20;
|
|
29
|
+
readonly lineHeight: 28;
|
|
30
|
+
readonly letterSpacing: 0.01;
|
|
31
|
+
};
|
|
32
|
+
readonly '6': {
|
|
33
|
+
readonly fontSize: 24;
|
|
34
|
+
readonly lineHeight: 30;
|
|
35
|
+
readonly letterSpacing: 0.01;
|
|
36
|
+
};
|
|
37
|
+
readonly '7': {
|
|
38
|
+
readonly fontSize: 28;
|
|
39
|
+
readonly lineHeight: 34;
|
|
40
|
+
readonly letterSpacing: 0.005;
|
|
41
|
+
};
|
|
42
|
+
readonly '8': {
|
|
43
|
+
readonly fontSize: 32;
|
|
44
|
+
readonly lineHeight: 38;
|
|
45
|
+
readonly letterSpacing: 0;
|
|
46
|
+
};
|
|
47
|
+
readonly '9': {
|
|
48
|
+
readonly fontSize: 40;
|
|
49
|
+
readonly lineHeight: 48;
|
|
50
|
+
readonly letterSpacing: 0;
|
|
51
|
+
};
|
|
52
|
+
};
|
|
53
|
+
type TypographyStepKey = keyof typeof typography;
|
|
54
|
+
declare const fontWeights: {
|
|
55
|
+
readonly light: "300";
|
|
56
|
+
readonly regular: "400";
|
|
57
|
+
readonly medium: "500";
|
|
58
|
+
readonly 'semi-bold': "600";
|
|
59
|
+
readonly bold: "700";
|
|
60
|
+
};
|
|
61
|
+
type FontWeightKey = keyof typeof fontWeights;
|
|
62
|
+
type ShadeKey = '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9' | '10' | '11' | '12';
|
|
63
|
+
type AlphaShadeKey = 'a1' | 'a2' | 'a3' | 'a4' | 'a5' | 'a6' | 'a7' | 'a8' | 'a9' | 'a10' | 'a11' | 'a12';
|
|
64
|
+
type ColorShades = {
|
|
65
|
+
[K in ShadeKey]: string;
|
|
66
|
+
} & {
|
|
67
|
+
'9-contrast': string;
|
|
68
|
+
} & {
|
|
69
|
+
[K in AlphaShadeKey]: string;
|
|
70
|
+
};
|
|
71
|
+
type AlphaOnlyShades = {
|
|
72
|
+
[K in AlphaShadeKey]: string;
|
|
73
|
+
};
|
|
74
|
+
export declare function blackAndWhitePalettes(): {
|
|
75
|
+
black: AlphaOnlyShades;
|
|
76
|
+
white: AlphaOnlyShades;
|
|
77
|
+
};
|
|
78
|
+
export declare const themeVars: {
|
|
79
|
+
typography: {
|
|
80
|
+
readonly '0': {
|
|
81
|
+
readonly fontSize: 10;
|
|
82
|
+
readonly lineHeight: 12;
|
|
83
|
+
readonly letterSpacing: 0.01;
|
|
84
|
+
};
|
|
85
|
+
readonly '1': {
|
|
86
|
+
readonly fontSize: 12;
|
|
87
|
+
readonly lineHeight: 16;
|
|
88
|
+
readonly letterSpacing: 0.01;
|
|
89
|
+
};
|
|
90
|
+
readonly '2': {
|
|
91
|
+
readonly fontSize: 14;
|
|
92
|
+
readonly lineHeight: 20;
|
|
93
|
+
readonly letterSpacing: 0.01;
|
|
94
|
+
};
|
|
95
|
+
readonly '3': {
|
|
96
|
+
readonly fontSize: 16;
|
|
97
|
+
readonly lineHeight: 24;
|
|
98
|
+
readonly letterSpacing: 0.01;
|
|
99
|
+
};
|
|
100
|
+
readonly '4': {
|
|
101
|
+
readonly fontSize: 18;
|
|
102
|
+
readonly lineHeight: 26;
|
|
103
|
+
readonly letterSpacing: 0.01;
|
|
104
|
+
};
|
|
105
|
+
readonly '5': {
|
|
106
|
+
readonly fontSize: 20;
|
|
107
|
+
readonly lineHeight: 28;
|
|
108
|
+
readonly letterSpacing: 0.01;
|
|
109
|
+
};
|
|
110
|
+
readonly '6': {
|
|
111
|
+
readonly fontSize: 24;
|
|
112
|
+
readonly lineHeight: 30;
|
|
113
|
+
readonly letterSpacing: 0.01;
|
|
114
|
+
};
|
|
115
|
+
readonly '7': {
|
|
116
|
+
readonly fontSize: 28;
|
|
117
|
+
readonly lineHeight: 34;
|
|
118
|
+
readonly letterSpacing: 0.005;
|
|
119
|
+
};
|
|
120
|
+
readonly '8': {
|
|
121
|
+
readonly fontSize: 32;
|
|
122
|
+
readonly lineHeight: 38;
|
|
123
|
+
readonly letterSpacing: 0;
|
|
124
|
+
};
|
|
125
|
+
readonly '9': {
|
|
126
|
+
readonly fontSize: 40;
|
|
127
|
+
readonly lineHeight: 48;
|
|
128
|
+
readonly letterSpacing: 0;
|
|
129
|
+
};
|
|
130
|
+
};
|
|
131
|
+
fontWeights: {
|
|
132
|
+
readonly light: "300";
|
|
133
|
+
readonly regular: "400";
|
|
134
|
+
readonly medium: "500";
|
|
135
|
+
readonly 'semi-bold': "600";
|
|
136
|
+
readonly bold: "700";
|
|
137
|
+
};
|
|
138
|
+
colors: {
|
|
139
|
+
light: {
|
|
140
|
+
palettes: {
|
|
141
|
+
black: AlphaOnlyShades;
|
|
142
|
+
white: AlphaOnlyShades;
|
|
143
|
+
tomato: ColorShades;
|
|
144
|
+
red: ColorShades;
|
|
145
|
+
ruby: ColorShades;
|
|
146
|
+
crimson: ColorShades;
|
|
147
|
+
pink: ColorShades;
|
|
148
|
+
plum: ColorShades;
|
|
149
|
+
purple: ColorShades;
|
|
150
|
+
violet: ColorShades;
|
|
151
|
+
iris: ColorShades;
|
|
152
|
+
cyan: ColorShades;
|
|
153
|
+
teal: ColorShades;
|
|
154
|
+
jade: ColorShades;
|
|
155
|
+
green: ColorShades;
|
|
156
|
+
grass: ColorShades;
|
|
157
|
+
brown: ColorShades;
|
|
158
|
+
blue: ColorShades;
|
|
159
|
+
orange: ColorShades;
|
|
160
|
+
indigo: ColorShades;
|
|
161
|
+
sky: ColorShades;
|
|
162
|
+
mint: ColorShades;
|
|
163
|
+
yellow: ColorShades;
|
|
164
|
+
amber: ColorShades;
|
|
165
|
+
lime: ColorShades;
|
|
166
|
+
lemon: ColorShades;
|
|
167
|
+
magenta: ColorShades;
|
|
168
|
+
gold: ColorShades;
|
|
169
|
+
bronze: ColorShades;
|
|
170
|
+
gray: ColorShades;
|
|
171
|
+
};
|
|
172
|
+
background: string;
|
|
173
|
+
overlay: string;
|
|
174
|
+
panelSolid: string;
|
|
175
|
+
panelTranslucent: string;
|
|
176
|
+
surface: string;
|
|
177
|
+
stroke: string;
|
|
178
|
+
};
|
|
179
|
+
dark: {
|
|
180
|
+
palettes: {
|
|
181
|
+
black: AlphaOnlyShades;
|
|
182
|
+
white: AlphaOnlyShades;
|
|
183
|
+
tomato: ColorShades;
|
|
184
|
+
red: ColorShades;
|
|
185
|
+
ruby: ColorShades;
|
|
186
|
+
crimson: ColorShades;
|
|
187
|
+
pink: ColorShades;
|
|
188
|
+
plum: ColorShades;
|
|
189
|
+
purple: ColorShades;
|
|
190
|
+
violet: ColorShades;
|
|
191
|
+
iris: ColorShades;
|
|
192
|
+
cyan: ColorShades;
|
|
193
|
+
teal: ColorShades;
|
|
194
|
+
jade: ColorShades;
|
|
195
|
+
green: ColorShades;
|
|
196
|
+
grass: ColorShades;
|
|
197
|
+
brown: ColorShades;
|
|
198
|
+
blue: ColorShades;
|
|
199
|
+
orange: ColorShades;
|
|
200
|
+
indigo: ColorShades;
|
|
201
|
+
sky: ColorShades;
|
|
202
|
+
mint: ColorShades;
|
|
203
|
+
yellow: ColorShades;
|
|
204
|
+
amber: ColorShades;
|
|
205
|
+
lime: ColorShades;
|
|
206
|
+
lemon: ColorShades;
|
|
207
|
+
magenta: ColorShades;
|
|
208
|
+
gold: ColorShades;
|
|
209
|
+
bronze: ColorShades;
|
|
210
|
+
gray: ColorShades;
|
|
211
|
+
};
|
|
212
|
+
background: string;
|
|
213
|
+
overlay: string;
|
|
214
|
+
panelSolid: string;
|
|
215
|
+
panelTranslucent: string;
|
|
216
|
+
surface: string;
|
|
217
|
+
stroke: string;
|
|
218
|
+
};
|
|
219
|
+
};
|
|
220
|
+
};
|
|
221
|
+
export type { ColorShades, FontWeightKey, TypographyStepKey };
|
|
222
|
+
//# sourceMappingURL=theme-vars.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"theme-vars.d.ts","sourceRoot":"","sources":["../../src/lib/theme-vars.ts"],"names":[],"mappings":"AAMA,QAAA,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAWN,CAAC;AAEX,KAAK,iBAAiB,GAAG,MAAM,OAAO,UAAU,CAAC;AAEjD,QAAA,MAAM,WAAW;;;;;;CAMP,CAAC;AAEX,KAAK,aAAa,GAAG,MAAM,OAAO,WAAW,CAAC;AAK9C,KAAK,QAAQ,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAEzF,KAAK,aAAa,GACd,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,KAAK,GACL,KAAK,GACL,KAAK,CAAC;AAEV,KAAK,WAAW,GAAG;KAChB,CAAC,IAAI,QAAQ,GAAG,MAAM;CACxB,GAAG;IACF,YAAY,EAAE,MAAM,CAAC;CACtB,GAAG;KACD,CAAC,IAAI,aAAa,GAAG,MAAM;CAC7B,CAAC;AAoIF,KAAK,eAAe,GAAG;KAAG,CAAC,IAAI,aAAa,GAAG,MAAM;CAAE,CAAC;AAqBxD,wBAAgB,qBAAqB;;;EAKpC;AAED,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuBrB,CAAC;AAEF,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,iBAAiB,EAAE,CAAC"}
|