entangle-ui 0.6.3 → 0.7.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/CHANGELOG.md +39 -0
- package/dist/esm/assets/src/components/editor/ChatPanel/{ChatPanel.css.ts.vanilla-DPIGnZ4A.css → ChatPanel.css.ts.vanilla-BI5569ZO.css} +81 -1
- package/dist/esm/assets/src/components/feedback/EmptyState/EmptyState.css.ts.vanilla-B_TWsTOW.css +58 -0
- package/dist/esm/assets/src/components/feedback/Spinner/Spinner.css.ts.vanilla-DEUewqdK.css +80 -0
- package/dist/esm/assets/src/components/layout/Divider/Divider.css.ts.vanilla-CPvd_RW9.css +72 -0
- package/dist/esm/assets/src/components/layout/ListItem/ListItem.css.ts.vanilla-BwAZrX2f.css +68 -0
- package/dist/esm/assets/src/components/layout/PageHeader/PageHeader.css.ts.vanilla-DdbyyWAN.css +70 -0
- package/dist/esm/assets/src/components/layout/SplitPane/{SplitPane.css.ts.vanilla-BFxdvwyI.css → SplitPane.css.ts.vanilla-BGFZ7zDa.css} +5 -0
- package/dist/esm/assets/src/components/primitives/Badge/Badge.css.ts.vanilla-DxCUcxYW.css +95 -0
- package/dist/esm/assets/src/components/primitives/Code/Code.css.ts.vanilla-mayBqLDM.css +19 -0
- package/dist/esm/assets/src/components/primitives/TextArea/TextArea.css.ts.vanilla-DTOMjGkp.css +85 -0
- package/dist/esm/assets/src/theme/{darkTheme.css.ts.vanilla-DCe89yCJ.css → darkTheme.css.ts.vanilla-ab1WD4dr.css} +3 -0
- package/dist/esm/assets/src/theme/globalScrollbars.css.ts.vanilla-BAJwnUEJ.css +21 -0
- package/dist/esm/assets/src/utils/animations.css.ts.vanilla-DOVlpljP.css +58 -0
- package/dist/esm/components/editor/ChatPanel/ChatInput.js +18 -7
- package/dist/esm/components/editor/ChatPanel/ChatInput.js.map +1 -1
- package/dist/esm/components/editor/ChatPanel/ChatMarkdownRenderer.js +268 -0
- package/dist/esm/components/editor/ChatPanel/ChatMarkdownRenderer.js.map +1 -0
- package/dist/esm/components/editor/ChatPanel/ChatMessage.js +15 -3
- package/dist/esm/components/editor/ChatPanel/ChatMessage.js.map +1 -1
- package/dist/esm/components/editor/ChatPanel/ChatMessageList.js +19 -5
- package/dist/esm/components/editor/ChatPanel/ChatMessageList.js.map +1 -1
- package/dist/esm/components/editor/ChatPanel/ChatPanel.css.js +14 -2
- package/dist/esm/components/editor/ChatPanel/ChatPanel.css.js.map +1 -1
- package/dist/esm/components/editor/ChatPanel/ChatPanel.js +15 -3
- package/dist/esm/components/editor/ChatPanel/ChatPanel.js.map +1 -1
- package/dist/esm/components/editor/ChatPanel/useChatInput.js +3 -3
- package/dist/esm/components/editor/ChatPanel/useChatInput.js.map +1 -1
- package/dist/esm/components/editor/ChatPanel/useChatScroll.js +59 -2
- package/dist/esm/components/editor/ChatPanel/useChatScroll.js.map +1 -1
- package/dist/esm/components/feedback/EmptyState/EmptyState.css.js +13 -0
- package/dist/esm/components/feedback/EmptyState/EmptyState.css.js.map +1 -0
- package/dist/esm/components/feedback/EmptyState/EmptyState.js +43 -0
- package/dist/esm/components/feedback/EmptyState/EmptyState.js.map +1 -0
- package/dist/esm/components/feedback/Spinner/Spinner.css.js +16 -0
- package/dist/esm/components/feedback/Spinner/Spinner.css.js.map +1 -0
- package/dist/esm/components/feedback/Spinner/Spinner.js +50 -0
- package/dist/esm/components/feedback/Spinner/Spinner.js.map +1 -0
- package/dist/esm/components/layout/Divider/Divider.css.js +9 -0
- package/dist/esm/components/layout/Divider/Divider.css.js.map +1 -0
- package/dist/esm/components/layout/Divider/Divider.js +51 -0
- package/dist/esm/components/layout/Divider/Divider.js.map +1 -0
- package/dist/esm/components/layout/ListItem/ListItem.css.js +10 -0
- package/dist/esm/components/layout/ListItem/ListItem.css.js.map +1 -0
- package/dist/esm/components/layout/ListItem/ListItem.js +45 -0
- package/dist/esm/components/layout/ListItem/ListItem.js.map +1 -0
- package/dist/esm/components/layout/PageHeader/PageHeader.css.js +13 -0
- package/dist/esm/components/layout/PageHeader/PageHeader.css.js.map +1 -0
- package/dist/esm/components/layout/PageHeader/PageHeader.js +29 -0
- package/dist/esm/components/layout/PageHeader/PageHeader.js.map +1 -0
- package/dist/esm/components/layout/SplitPane/SplitPane.css.js +1 -1
- package/dist/esm/components/navigation/Tabs/TabPanel.js +6 -3
- package/dist/esm/components/navigation/Tabs/TabPanel.js.map +1 -1
- package/dist/esm/components/navigation/Tabs/Tabs.js +3 -1
- package/dist/esm/components/navigation/Tabs/Tabs.js.map +1 -1
- package/dist/esm/components/primitives/Badge/Badge.css.js +12 -0
- package/dist/esm/components/primitives/Badge/Badge.css.js.map +1 -0
- package/dist/esm/components/primitives/Badge/Badge.js +67 -0
- package/dist/esm/components/primitives/Badge/Badge.js.map +1 -0
- package/dist/esm/components/primitives/Code/Code.css.js +7 -0
- package/dist/esm/components/primitives/Code/Code.css.js.map +1 -0
- package/dist/esm/components/primitives/Code/Code.js +24 -0
- package/dist/esm/components/primitives/Code/Code.js.map +1 -0
- package/dist/esm/components/primitives/TextArea/TextArea.css.js +10 -0
- package/dist/esm/components/primitives/TextArea/TextArea.css.js.map +1 -0
- package/dist/esm/components/primitives/TextArea/TextArea.js +97 -0
- package/dist/esm/components/primitives/TextArea/TextArea.js.map +1 -0
- package/dist/esm/index.js +11 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/theme/ThemeProvider.js +17 -3
- package/dist/esm/theme/ThemeProvider.js.map +1 -1
- package/dist/esm/theme/contract.css.js +1 -1
- package/dist/esm/theme/darkTheme.css.js +2 -2
- package/dist/esm/theme/globalScrollbars.css.js +6 -0
- package/dist/esm/theme/globalScrollbars.css.js.map +1 -0
- package/dist/esm/utils/animations.css.js +13 -0
- package/dist/esm/utils/animations.css.js.map +1 -0
- package/dist/types/components/editor/ChatPanel/ChatMarkdownRenderer.d.ts +323 -0
- package/dist/types/components/editor/ChatPanel/ChatMarkdownRenderer.types.d.ts +46 -0
- package/dist/types/components/editor/ChatPanel/ChatMessage.d.ts +1 -0
- package/dist/types/components/editor/ChatPanel/ChatMessageList.d.ts +2 -1
- package/dist/types/components/editor/ChatPanel/ChatPanel.d.ts +1 -0
- package/dist/types/components/editor/ChatPanel/ChatPanel.types.d.ts +82 -1
- package/dist/types/components/feedback/EmptyState/EmptyState.d.ts +313 -0
- package/dist/types/components/feedback/EmptyState/EmptyState.types.d.ts +31 -0
- package/dist/types/components/feedback/Spinner/Spinner.d.ts +306 -0
- package/dist/types/components/feedback/Spinner/Spinner.types.d.ts +41 -0
- package/dist/types/components/layout/Divider/Divider.d.ts +307 -0
- package/dist/types/components/layout/Divider/Divider.types.d.ts +50 -0
- package/dist/types/components/layout/ListItem/ListItem.d.ts +312 -0
- package/dist/types/components/layout/ListItem/ListItem.types.d.ts +35 -0
- package/dist/types/components/layout/PageHeader/PageHeader.d.ts +311 -0
- package/dist/types/components/layout/PageHeader/PageHeader.types.d.ts +30 -0
- package/dist/types/components/navigation/Tabs/Tabs.types.d.ts +10 -0
- package/dist/types/components/primitives/Badge/Badge.d.ts +310 -0
- package/dist/types/components/primitives/Badge/Badge.types.d.ts +67 -0
- package/dist/types/components/primitives/Button/Button.d.ts +1 -1
- package/dist/types/components/primitives/Code/Code.d.ts +301 -0
- package/dist/types/components/primitives/Code/Code.types.d.ts +17 -0
- package/dist/types/components/primitives/IconButton/IconButton.d.ts +1 -1
- package/dist/types/components/primitives/TextArea/TextArea.d.ts +26 -0
- package/dist/types/components/primitives/TextArea/TextArea.types.d.ts +76 -0
- package/dist/types/index.d.ts +20 -1
- package/dist/types/theme/ThemeProvider.d.ts +14 -2
- package/dist/types/theme/contract.css.d.ts +3 -0
- package/dist/types/theme/darkTheme.css.d.ts +3 -0
- package/dist/types/utils/animations.css.d.ts +18 -0
- package/package.json +1 -1
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import './../../../assets/src/components/primitives/Badge/Badge.css.ts.vanilla-DxCUcxYW.css';
|
|
2
|
+
import { createRuntimeFn } from '@vanilla-extract/recipes/createRuntimeFn';
|
|
3
|
+
|
|
4
|
+
var badgeColorVar = 'var(--badgeColorVar__6943by0)';
|
|
5
|
+
var badgeContrastVar = 'var(--badgeContrastVar__6943by1)';
|
|
6
|
+
var badgeDotStyle = 'Badge_badgeDotStyle__6943byd';
|
|
7
|
+
var badgeIconStyle = 'Badge_badgeIconStyle__6943byc';
|
|
8
|
+
var badgeRecipe = createRuntimeFn({defaultClassName:'Badge_badgeRecipe__6943by2',variantClassNames:{size:{xs:'Badge_badgeRecipe_size_xs__6943by3',sm:'Badge_badgeRecipe_size_sm__6943by4',md:'Badge_badgeRecipe_size_md__6943by5',lg:'Badge_badgeRecipe_size_lg__6943by6'},variant:{subtle:'Badge_badgeRecipe_variant_subtle__6943by7',solid:'Badge_badgeRecipe_variant_solid__6943by8',outline:'Badge_badgeRecipe_variant_outline__6943by9',dot:'Badge_badgeRecipe_variant_dot__6943bya'},uppercase:{true:'Badge_badgeRecipe_uppercase_true__6943byb'}},defaultVariants:{size:'sm',variant:'subtle'},compoundVariants:[]});
|
|
9
|
+
var badgeRemoveButtonStyle = 'Badge_badgeRemoveButtonStyle__6943bye';
|
|
10
|
+
|
|
11
|
+
export { badgeColorVar, badgeContrastVar, badgeDotStyle, badgeIconStyle, badgeRecipe, badgeRemoveButtonStyle };
|
|
12
|
+
//# sourceMappingURL=Badge.css.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Badge.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
3
|
+
import React, { useCallback } from 'react';
|
|
4
|
+
import { assignInlineVars } from '@vanilla-extract/dynamic';
|
|
5
|
+
import { vars } from '../../../theme/contract.css.js';
|
|
6
|
+
import { cx } from '../../../utils/cx.js';
|
|
7
|
+
import { badgeContrastVar, badgeColorVar, badgeDotStyle, badgeIconStyle, badgeRemoveButtonStyle, badgeRecipe } from './Badge.css.js';
|
|
8
|
+
|
|
9
|
+
const NAMED_COLOR_MAP = {
|
|
10
|
+
neutral: vars.colors.text.muted,
|
|
11
|
+
primary: vars.colors.accent.primary,
|
|
12
|
+
info: vars.colors.accent.primary,
|
|
13
|
+
success: vars.colors.accent.success,
|
|
14
|
+
warning: vars.colors.accent.warning,
|
|
15
|
+
error: vars.colors.accent.error,
|
|
16
|
+
};
|
|
17
|
+
/**
|
|
18
|
+
* Resolve a `BadgeColor` to a CSS color value.
|
|
19
|
+
*
|
|
20
|
+
* Named values produce a `var(...)` reference into the theme; everything
|
|
21
|
+
* else is treated as a raw CSS color string (hex, rgb, hsl, …).
|
|
22
|
+
*/
|
|
23
|
+
function resolveBadgeColor(color) {
|
|
24
|
+
const named = NAMED_COLOR_MAP[color];
|
|
25
|
+
if (named) {
|
|
26
|
+
// For neutral we keep contrast as the text primary so solid reads well.
|
|
27
|
+
const contrast = color === 'neutral' ? vars.colors.text.primary : vars.colors.text.primary;
|
|
28
|
+
return { color: named, contrast };
|
|
29
|
+
}
|
|
30
|
+
return { color, contrast: '#ffffff' };
|
|
31
|
+
}
|
|
32
|
+
const RemoveIcon = () => (jsx("svg", { width: "10", height: "10", viewBox: "0 0 10 10", "aria-hidden": "true", focusable: "false", children: jsx("path", { d: "M2 2 L8 8 M8 2 L2 8", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round" }) }));
|
|
33
|
+
/**
|
|
34
|
+
* A small inline status indicator / tag.
|
|
35
|
+
*
|
|
36
|
+
* Badges are visual labels for status, counts, or tags. Pair with an
|
|
37
|
+
* editor item to indicate its state (e.g. "DRAFT", "ERROR", "3 NEW").
|
|
38
|
+
*
|
|
39
|
+
* @example
|
|
40
|
+
* ```tsx
|
|
41
|
+
* <Badge color="success">Saved</Badge>
|
|
42
|
+
* <Badge variant="outline" color="warning" icon={<WarningIcon />}>
|
|
43
|
+
* Warning
|
|
44
|
+
* </Badge>
|
|
45
|
+
* <Badge removable onRemove={handleRemove}>feature/foo</Badge>
|
|
46
|
+
* ```
|
|
47
|
+
*/
|
|
48
|
+
const Badge = /*#__PURE__*/ React.memo(({ variant = 'subtle', size = 'sm', color = 'neutral', uppercase = false, icon, removable = false, onRemove, children, className, style, testId, ref, ...rest }) => {
|
|
49
|
+
const resolved = resolveBadgeColor(color);
|
|
50
|
+
const handleRemoveClick = useCallback((event) => {
|
|
51
|
+
event.stopPropagation();
|
|
52
|
+
onRemove?.(event);
|
|
53
|
+
}, [onRemove]);
|
|
54
|
+
const inlineVars = assignInlineVars({
|
|
55
|
+
[badgeColorVar]: resolved.color,
|
|
56
|
+
[badgeContrastVar]: resolved.contrast,
|
|
57
|
+
});
|
|
58
|
+
return (jsxs("span", { ref: ref, className: cx(badgeRecipe({
|
|
59
|
+
variant,
|
|
60
|
+
size,
|
|
61
|
+
uppercase: uppercase || undefined,
|
|
62
|
+
}), className), style: { ...inlineVars, ...style }, "data-testid": testId, ...rest, children: [variant === 'dot' && jsx("span", { className: badgeDotStyle, "aria-hidden": true }), icon && (jsx("span", { className: badgeIconStyle, "aria-hidden": true, children: icon })), children && jsx("span", { children: children }), removable && (jsx("button", { type: "button", className: badgeRemoveButtonStyle, onClick: handleRemoveClick, "aria-label": "Remove", children: jsx(RemoveIcon, {}) }))] }));
|
|
63
|
+
});
|
|
64
|
+
Badge.displayName = 'Badge';
|
|
65
|
+
|
|
66
|
+
export { Badge };
|
|
67
|
+
//# sourceMappingURL=Badge.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Badge.js","sources":["../../../../../../src/components/primitives/Badge/Badge.tsx"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;;AAgBA;AACE;AACA;AACA;AACA;AACA;AACA;;AAGF;;;;;AAKG;AACH;AAIE;;;;AAKE;;AAEF;AACF;AAEA;AAiBA;;;;;;;;;;;;;;AAcG;;AAiBC;AAEA;;AAGI;AACF;;AAKA;AACA;AACD;;;;;AAUM;AA0BT;AAGF;;"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import './../../../assets/src/components/primitives/Code/Code.css.ts.vanilla-mayBqLDM.css';
|
|
2
|
+
import { createRuntimeFn } from '@vanilla-extract/recipes/createRuntimeFn';
|
|
3
|
+
|
|
4
|
+
var codeRecipe = createRuntimeFn({defaultClassName:'Code_codeRecipe__13vd650',variantClassNames:{size:{xs:'Code_codeRecipe_size_xs__13vd651',sm:'Code_codeRecipe_size_sm__13vd652',md:'Code_codeRecipe_size_md__13vd653'}},defaultVariants:{size:'sm'},compoundVariants:[]});
|
|
5
|
+
|
|
6
|
+
export { codeRecipe };
|
|
7
|
+
//# sourceMappingURL=Code.css.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Code.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx } from 'react/jsx-runtime';
|
|
3
|
+
import React from 'react';
|
|
4
|
+
import { cx } from '../../../utils/cx.js';
|
|
5
|
+
import { codeRecipe } from './Code.css.js';
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Small inline `<code>` primitive with theme-aware background and font.
|
|
9
|
+
*
|
|
10
|
+
* Complements `ChatCodeBlock` (block-level) — use `Code` for short inline
|
|
11
|
+
* snippets inside sentences and markdown renderers.
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* ```tsx
|
|
15
|
+
* <Text>Run <Code>npm install</Code> to add the package.</Text>
|
|
16
|
+
* ```
|
|
17
|
+
*/
|
|
18
|
+
const Code = /*#__PURE__*/ React.memo(({ children, size = 'sm', className, style, testId, ref, ...rest }) => {
|
|
19
|
+
return (jsx("code", { ref: ref, className: cx(codeRecipe({ size }), className), style: style, "data-testid": testId, ...rest, children: children }));
|
|
20
|
+
});
|
|
21
|
+
Code.displayName = 'Code';
|
|
22
|
+
|
|
23
|
+
export { Code };
|
|
24
|
+
//# sourceMappingURL=Code.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Code.js","sources":["../../../../../../src/components/primitives/Code/Code.tsx"],"sourcesContent":[null],"names":[],"mappings":";;;;;;AAOA;;;;;;;;;;AAUG;AACI;AAEH;AAWF;AAGF;;"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import './../../../assets/src/components/primitives/TextArea/TextArea.css.ts.vanilla-DTOMjGkp.css';
|
|
2
|
+
import { createRuntimeFn } from '@vanilla-extract/recipes/createRuntimeFn';
|
|
3
|
+
|
|
4
|
+
var textAreaContainerStyle = 'TextArea_textAreaContainerStyle__nwf0m90';
|
|
5
|
+
var textAreaFooterStyle = 'TextArea_textAreaFooterStyle__nwf0m9j';
|
|
6
|
+
var textAreaRecipe = createRuntimeFn({defaultClassName:'TextArea_textAreaRecipe__nwf0m9e',variantClassNames:{size:{sm:'TextArea_textAreaRecipe_size_sm__nwf0m9f',md:'TextArea_textAreaRecipe_size_md__nwf0m9g',lg:'TextArea_textAreaRecipe_size_lg__nwf0m9h'},monospace:{true:'TextArea_textAreaRecipe_monospace_true__nwf0m9i'}},defaultVariants:{size:'md'},compoundVariants:[]});
|
|
7
|
+
var textAreaWrapperRecipe = createRuntimeFn({defaultClassName:'TextArea_textAreaWrapperRecipe__nwf0m91',variantClassNames:{size:{sm:'TextArea_textAreaWrapperRecipe_size_sm__nwf0m92',md:'TextArea_textAreaWrapperRecipe_size_md__nwf0m93',lg:'TextArea_textAreaWrapperRecipe_size_lg__nwf0m94'},error:{true:'TextArea_textAreaWrapperRecipe_error_true__nwf0m95',false:'TextArea_textAreaWrapperRecipe_error_false__nwf0m96'},disabled:{true:'TextArea_textAreaWrapperRecipe_disabled_true__nwf0m97',false:'TextArea_textAreaWrapperRecipe_disabled_false__nwf0m98'},focused:{true:'TextArea_textAreaWrapperRecipe_focused_true__nwf0m99',false:'TextArea_textAreaWrapperRecipe_focused_false__nwf0m9a'}},defaultVariants:{size:'md',error:false,disabled:false,focused:false},compoundVariants:[[{focused:true,error:false},'TextArea_textAreaWrapperRecipe_compound_0__nwf0m9b'],[{focused:false,error:false,disabled:false},'TextArea_textAreaWrapperRecipe_compound_1__nwf0m9c'],[{focused:false,error:false,disabled:true},'TextArea_textAreaWrapperRecipe_compound_2__nwf0m9d']]});
|
|
8
|
+
|
|
9
|
+
export { textAreaContainerStyle, textAreaFooterStyle, textAreaRecipe, textAreaWrapperRecipe };
|
|
10
|
+
//# sourceMappingURL=TextArea.css.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TextArea.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;"}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
3
|
+
import React, { useRef, useId, useCallback, useEffect } from 'react';
|
|
4
|
+
import { cx } from '../../../utils/cx.js';
|
|
5
|
+
import { FormHelperText } from '../../form/FormHelperText.js';
|
|
6
|
+
import { FormLabel } from '../../form/FormLabel.js';
|
|
7
|
+
import { textAreaRecipe, textAreaWrapperRecipe, textAreaFooterStyle, textAreaContainerStyle } from './TextArea.css.js';
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Multi-line text input with optional auto-resize.
|
|
11
|
+
*
|
|
12
|
+
* Visual parity with `Input` — uses the same border, focus ring, and error
|
|
13
|
+
* states. Auto-resize activates when `minRows` or `maxRows` is set and
|
|
14
|
+
* disables the native resize handle.
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* ```tsx
|
|
18
|
+
* <TextArea
|
|
19
|
+
* label="Description"
|
|
20
|
+
* minRows={3}
|
|
21
|
+
* maxRows={8}
|
|
22
|
+
* value={value}
|
|
23
|
+
* onChange={setValue}
|
|
24
|
+
* showCount
|
|
25
|
+
* maxLength={500}
|
|
26
|
+
* />
|
|
27
|
+
* ```
|
|
28
|
+
*/
|
|
29
|
+
const TextArea = ({ value, defaultValue, placeholder, size = 'md', disabled = false, error = false, required = false, readOnly = false, label, helperText, errorMessage, resize = 'vertical', rows = 3, minRows, maxRows, monospace = false, maxLength, showCount = false, className, style, onChange, onFocus, onBlur, onKeyDown, testId, ref, id, name, ...rest }) => {
|
|
30
|
+
const [focused, setFocused] = React.useState(false);
|
|
31
|
+
const [internalValue, setInternalValue] = React.useState(defaultValue ?? '');
|
|
32
|
+
const textareaRef = useRef(null);
|
|
33
|
+
const autoId = useId();
|
|
34
|
+
const inputId = id ?? autoId;
|
|
35
|
+
const isControlled = value !== undefined;
|
|
36
|
+
const currentValue = isControlled ? value : internalValue;
|
|
37
|
+
const autoSizeEnabled = minRows !== undefined || maxRows !== undefined;
|
|
38
|
+
const effectiveResize = autoSizeEnabled ? 'none' : resize;
|
|
39
|
+
const setRef = useCallback((node) => {
|
|
40
|
+
textareaRef.current = node;
|
|
41
|
+
if (typeof ref === 'function')
|
|
42
|
+
ref(node);
|
|
43
|
+
else if (ref)
|
|
44
|
+
ref.current =
|
|
45
|
+
node;
|
|
46
|
+
}, [ref]);
|
|
47
|
+
const autoResize = useCallback(() => {
|
|
48
|
+
if (!autoSizeEnabled)
|
|
49
|
+
return;
|
|
50
|
+
const el = textareaRef.current;
|
|
51
|
+
if (!el)
|
|
52
|
+
return;
|
|
53
|
+
el.style.height = 'auto';
|
|
54
|
+
const measuredLineHeight = parseFloat(getComputedStyle(el).lineHeight);
|
|
55
|
+
const lineHeight = Number.isFinite(measuredLineHeight)
|
|
56
|
+
? measuredLineHeight
|
|
57
|
+
: 18;
|
|
58
|
+
const minHeight = (minRows ?? 1) * lineHeight;
|
|
59
|
+
const maxHeight = maxRows ? maxRows * lineHeight : Infinity;
|
|
60
|
+
const next = Math.min(Math.max(el.scrollHeight, minHeight), maxHeight);
|
|
61
|
+
el.style.height = `${next}px`;
|
|
62
|
+
el.style.overflowY = el.scrollHeight > maxHeight ? 'auto' : 'hidden';
|
|
63
|
+
}, [autoSizeEnabled, minRows, maxRows]);
|
|
64
|
+
useEffect(() => {
|
|
65
|
+
autoResize();
|
|
66
|
+
}, [currentValue, autoResize]);
|
|
67
|
+
const handleFocus = (event) => {
|
|
68
|
+
setFocused(true);
|
|
69
|
+
onFocus?.(event);
|
|
70
|
+
};
|
|
71
|
+
const handleBlur = (event) => {
|
|
72
|
+
setFocused(false);
|
|
73
|
+
onBlur?.(event);
|
|
74
|
+
};
|
|
75
|
+
const handleChange = (event) => {
|
|
76
|
+
const next = event.target.value;
|
|
77
|
+
if (!isControlled)
|
|
78
|
+
setInternalValue(next);
|
|
79
|
+
onChange?.(next);
|
|
80
|
+
};
|
|
81
|
+
const effectiveHelper = error && errorMessage ? errorMessage : helperText;
|
|
82
|
+
const count = currentValue?.length ?? 0;
|
|
83
|
+
return (jsxs("div", { className: cx(textAreaContainerStyle, className), style: style, children: [label && (jsx(FormLabel, { htmlFor: inputId, disabled: disabled, required: required, children: label })), jsx("div", { className: textAreaWrapperRecipe({ size, error, disabled, focused }), children: jsx("textarea", { ref: setRef, id: inputId, name: name, placeholder: placeholder, disabled: disabled, required: required, readOnly: readOnly, value: isControlled ? value : undefined, defaultValue: isControlled ? undefined : defaultValue, rows: autoSizeEnabled ? (minRows ?? rows) : rows, maxLength: maxLength, className: textAreaRecipe({
|
|
84
|
+
size,
|
|
85
|
+
monospace: monospace || undefined,
|
|
86
|
+
}), style: { resize: effectiveResize }, onChange: handleChange, onFocus: handleFocus, onBlur: handleBlur, onKeyDown: onKeyDown, "data-testid": testId, "aria-invalid": error || undefined, ...rest }) }), (effectiveHelper !== undefined && effectiveHelper !== '') ||
|
|
87
|
+
showCount ? (jsxs("div", { style: {
|
|
88
|
+
display: 'flex',
|
|
89
|
+
justifyContent: 'space-between',
|
|
90
|
+
alignItems: 'flex-start',
|
|
91
|
+
gap: 8,
|
|
92
|
+
}, children: [effectiveHelper !== undefined && effectiveHelper !== '' ? (jsx(FormHelperText, { error: error, children: effectiveHelper })) : (jsx("span", {})), showCount && (jsx("div", { className: textAreaFooterStyle, children: maxLength !== undefined ? `${count}/${maxLength}` : count }))] })) : null] }));
|
|
93
|
+
};
|
|
94
|
+
TextArea.displayName = 'TextArea';
|
|
95
|
+
|
|
96
|
+
export { TextArea };
|
|
97
|
+
//# sourceMappingURL=TextArea.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TextArea.js","sources":["../../../../../../src/components/primitives/TextArea/TextArea.tsx"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;;AAcA;;;;;;;;;;;;;;;;;;;AAmBG;AACI;AA+BL;AACA;AACA;AACA;AACA;AAEA;;;;AAMA;AAEI;;;AAEK;AACF;AACC;AACN;AAIF;AACE;;AACA;AACA;;AAEA;;AAGA;AACE;;;AAGF;AAEA;;AAEA;;;AAIA;AACF;AAEA;;AAEE;AACF;AACA;;AAEE;AACF;AACA;AACE;AACA;;AACA;AACF;AAEA;AACA;AAEA;;;AA0BS;AAaL;AAGM;AACA;AACA;AACA;AACD;AAgBX;AAEA;;"}
|
package/dist/esm/index.js
CHANGED
|
@@ -3,21 +3,27 @@ export { darkThemeValues } from './theme/darkTheme.css.js';
|
|
|
3
3
|
export { createCustomTheme } from './theme/createCustomTheme.js';
|
|
4
4
|
export { VanillaThemeProvider } from './theme/VanillaThemeProvider.js';
|
|
5
5
|
export { ThemeProvider } from './theme/ThemeProvider.js';
|
|
6
|
+
import './assets/src/theme/globalScrollbars.css.ts.vanilla-BAJwnUEJ.css';
|
|
6
7
|
export { Accordion } from './components/layout/Accordion/Accordion.js';
|
|
7
8
|
export { AccordionItem } from './components/layout/Accordion/AccordionItem.js';
|
|
8
9
|
export { AccordionTrigger } from './components/layout/Accordion/AccordionTrigger.js';
|
|
9
10
|
export { AccordionContent } from './components/layout/Accordion/AccordionContent.js';
|
|
11
|
+
export { Divider } from './components/layout/Divider/Divider.js';
|
|
10
12
|
export { Flex } from './components/layout/Flex/Flex.js';
|
|
11
13
|
export { Grid } from './components/layout/Grid/Grid.js';
|
|
14
|
+
export { ListItem } from './components/layout/ListItem/ListItem.js';
|
|
15
|
+
export { PageHeader } from './components/layout/PageHeader/PageHeader.js';
|
|
12
16
|
export { PanelSurface } from './components/layout/PanelSurface/PanelSurface.js';
|
|
13
17
|
export { ScrollArea } from './components/layout/ScrollArea/ScrollArea.js';
|
|
14
18
|
export { Spacer } from './components/layout/Spacer/Spacer.js';
|
|
15
19
|
export { SplitPane } from './components/layout/SplitPane/SplitPane.js';
|
|
16
20
|
export { SplitPanePanel } from './components/layout/SplitPane/SplitPanePanel.js';
|
|
17
21
|
export { Stack } from './components/layout/Stack/Stack.js';
|
|
22
|
+
export { Badge } from './components/primitives/Badge/Badge.js';
|
|
18
23
|
export { Button } from './components/primitives/Button/Button.js';
|
|
19
24
|
export { Checkbox } from './components/primitives/Checkbox/Checkbox.js';
|
|
20
25
|
export { CheckboxGroup } from './components/primitives/Checkbox/CheckboxGroup.js';
|
|
26
|
+
export { Code } from './components/primitives/Code/Code.js';
|
|
21
27
|
export { Collapsible } from './components/primitives/Collapsible/Collapsible.js';
|
|
22
28
|
export { Icon } from './components/primitives/Icon/Icon.js';
|
|
23
29
|
export { IconButton } from './components/primitives/IconButton/IconButton.js';
|
|
@@ -29,6 +35,7 @@ export { PopoverContent } from './components/primitives/Popover/PopoverContent.j
|
|
|
29
35
|
export { PopoverTrigger } from './components/primitives/Popover/PopoverTrigger.js';
|
|
30
36
|
export { Switch } from './components/primitives/Switch/Switch.js';
|
|
31
37
|
export { Text } from './components/primitives/Text/Text.js';
|
|
38
|
+
export { TextArea } from './components/primitives/TextArea/TextArea.js';
|
|
32
39
|
export { Tooltip } from './components/primitives/Tooltip/Tooltip.js';
|
|
33
40
|
import 'react';
|
|
34
41
|
import './components/primitives/canvas/CanvasContainer.js';
|
|
@@ -66,6 +73,8 @@ export { DialogHeader } from './components/feedback/Dialog/DialogHeader.js';
|
|
|
66
73
|
export { DialogBody } from './components/feedback/Dialog/DialogBody.js';
|
|
67
74
|
export { DialogFooter } from './components/feedback/Dialog/DialogFooter.js';
|
|
68
75
|
export { DialogClose } from './components/feedback/Dialog/DialogClose.js';
|
|
76
|
+
export { EmptyState } from './components/feedback/EmptyState/EmptyState.js';
|
|
77
|
+
export { Spinner } from './components/feedback/Spinner/Spinner.js';
|
|
69
78
|
export { ToastProvider } from './components/feedback/Toast/ToastProvider.js';
|
|
70
79
|
export { useToast } from './components/feedback/Toast/useToast.js';
|
|
71
80
|
export { PropertyPanel } from './components/editor/PropertyInspector/PropertyPanel.js';
|
|
@@ -88,6 +97,7 @@ export { ChatContextChip } from './components/editor/ChatPanel/ChatContextChip.j
|
|
|
88
97
|
export { ChatEmptyState } from './components/editor/ChatPanel/ChatEmptyState.js';
|
|
89
98
|
export { ChatActionBar } from './components/editor/ChatPanel/ChatActionBar.js';
|
|
90
99
|
export { ChatInputToolbar } from './components/editor/ChatPanel/ChatInputToolbar.js';
|
|
100
|
+
export { ChatMarkdownRenderer } from './components/editor/ChatPanel/ChatMarkdownRenderer.js';
|
|
91
101
|
export { useChatMessages } from './components/editor/ChatPanel/useChatMessages.js';
|
|
92
102
|
export { useChatInput } from './components/editor/ChatPanel/useChatInput.js';
|
|
93
103
|
export { useChatScroll } from './components/editor/ChatPanel/useChatScroll.js';
|
|
@@ -97,4 +107,5 @@ export { MenuBar } from './components/shell/MenuBar/MenuBar.js';
|
|
|
97
107
|
export { StatusBar } from './components/shell/StatusBar/StatusBar.js';
|
|
98
108
|
export { Toolbar } from './components/shell/Toolbar/Toolbar.js';
|
|
99
109
|
export { cx as cn, cx } from './utils/cx.js';
|
|
110
|
+
export { animBlink, animFadeIn, animPulse, animSpin, blinkKeyframe, fadeInKeyframe, pulseKeyframe, spinKeyframe } from './utils/animations.css.js';
|
|
100
111
|
//# sourceMappingURL=index.js.map
|
package/dist/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,16 +1,30 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { jsx, Fragment } from 'react/jsx-runtime';
|
|
3
|
+
import { useEffect } from 'react';
|
|
4
|
+
import { GLOBAL_SCROLLBARS_CLASS } from './globalScrollbars.css.js';
|
|
3
5
|
|
|
4
6
|
/**
|
|
5
7
|
* Theme provider for Entangle UI components.
|
|
6
8
|
*
|
|
7
|
-
* The dark theme is applied globally via CSS custom properties on `:root
|
|
8
|
-
*
|
|
9
|
+
* The dark theme is applied globally via CSS custom properties on `:root`,
|
|
10
|
+
* so this provider is a pass-through for most apps. Use it to opt into
|
|
11
|
+
* additional global behaviors such as native-scrollbar theming.
|
|
9
12
|
*
|
|
10
13
|
* For scoped theme overrides, use `VanillaThemeProvider` with a custom
|
|
11
14
|
* class generated by `createCustomTheme()`.
|
|
12
15
|
*/
|
|
13
|
-
const ThemeProvider = ({ children }) => {
|
|
16
|
+
const ThemeProvider = ({ children, globalScrollbars = false, }) => {
|
|
17
|
+
useEffect(() => {
|
|
18
|
+
if (!globalScrollbars)
|
|
19
|
+
return;
|
|
20
|
+
if (typeof document === 'undefined')
|
|
21
|
+
return;
|
|
22
|
+
const body = document.body;
|
|
23
|
+
body.classList.add(GLOBAL_SCROLLBARS_CLASS);
|
|
24
|
+
return () => {
|
|
25
|
+
body.classList.remove(GLOBAL_SCROLLBARS_CLASS);
|
|
26
|
+
};
|
|
27
|
+
}, [globalScrollbars]);
|
|
14
28
|
return jsx(Fragment, { children: children });
|
|
15
29
|
};
|
|
16
30
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ThemeProvider.js","sources":["../../../../src/theme/ThemeProvider.tsx"],"sourcesContent":[null],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ThemeProvider.js","sources":["../../../../src/theme/ThemeProvider.tsx"],"sourcesContent":[null],"names":[],"mappings":";;;;;AAoBA;;;;;;;;;AASG;AACI;;AAKH;;;;AAGA;AACA;AACA;AACE;AACF;AACF;;AAGF;;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var vars = {colors:{background:{primary:'var(--etui-color-bg-primary)',secondary:'var(--etui-color-bg-secondary)',tertiary:'var(--etui-color-bg-tertiary)',elevated:'var(--etui-color-bg-elevated)'},surface:{'default':'var(--etui-color-surface-default)',hover:'var(--etui-color-surface-hover)',active:'var(--etui-color-surface-active)',disabled:'var(--etui-color-surface-disabled)',whiteOverlay:'var(--etui-color-surface-white-overlay)'},border:{'default':'var(--etui-color-border-default)',focus:'var(--etui-color-border-focus)',error:'var(--etui-color-border-error)',success:'var(--etui-color-border-success)'},text:{primary:'var(--etui-color-text-primary)',secondary:'var(--etui-color-text-secondary)',muted:'var(--etui-color-text-muted)',disabled:'var(--etui-color-text-disabled)'},accent:{primary:'var(--etui-color-accent-primary)',secondary:'var(--etui-color-accent-secondary)',success:'var(--etui-color-accent-success)',warning:'var(--etui-color-accent-warning)',error:'var(--etui-color-accent-error)'},backdrop:'var(--etui-color-backdrop)'},spacing:{xs:'var(--etui-spacing-xs)',sm:'var(--etui-spacing-sm)',md:'var(--etui-spacing-md)',lg:'var(--etui-spacing-lg)',xl:'var(--etui-spacing-xl)',xxl:'var(--etui-spacing-xxl)',xxxl:'var(--etui-spacing-xxxl)'},typography:{fontSize:{xxs:'var(--etui-font-size-xxs)',xs:'var(--etui-font-size-xs)',sm:'var(--etui-font-size-sm)',md:'var(--etui-font-size-md)',lg:'var(--etui-font-size-lg)',xl:'var(--etui-font-size-xl)'},fontWeight:{normal:'var(--etui-font-weight-normal)',medium:'var(--etui-font-weight-medium)',semibold:'var(--etui-font-weight-semibold)'},lineHeight:{tight:'var(--etui-line-height-tight)',normal:'var(--etui-line-height-normal)',relaxed:'var(--etui-line-height-relaxed)'},fontFamily:{mono:'var(--etui-font-family-mono)',sans:'var(--etui-font-family-sans)'}},borderRadius:{none:'var(--etui-radius-none)',sm:'var(--etui-radius-sm)',md:'var(--etui-radius-md)',lg:'var(--etui-radius-lg)'},shadows:{sm:'var(--etui-shadow-sm)',md:'var(--etui-shadow-md)',lg:'var(--etui-shadow-lg)',xl:'var(--etui-shadow-xl)',focus:'var(--etui-shadow-focus)',separatorBottom:'var(--etui-shadow-separator-bottom)',separatorRight:'var(--etui-shadow-separator-right)',separatorLeft:'var(--etui-shadow-separator-left)',thumb:'var(--etui-shadow-thumb)'},transitions:{fast:'var(--etui-transition-fast)',normal:'var(--etui-transition-normal)',slow:'var(--etui-transition-slow)'},zIndex:{base:'var(--etui-z-base)',dropdown:'var(--etui-z-dropdown)',popover:'var(--etui-z-popover)',tooltip:'var(--etui-z-tooltip)',modal:'var(--etui-z-modal)'},shell:{menuBar:{height:'var(--etui-shell-menubar-height)',bg:'var(--etui-shell-menubar-bg)',hoverBg:'var(--etui-shell-menubar-hover-bg)',activeBg:'var(--etui-shell-menubar-active-bg)',text:'var(--etui-shell-menubar-text)',shortcutText:'var(--etui-shell-menubar-shortcut-text)'},toolbar:{height:{sm:'var(--etui-shell-toolbar-height-sm)',md:'var(--etui-shell-toolbar-height-md)'},bg:'var(--etui-shell-toolbar-bg)',separator:'var(--etui-shell-toolbar-separator)'},statusBar:{height:'var(--etui-shell-statusbar-height)',heightMd:'var(--etui-shell-statusbar-height-md)',bg:'var(--etui-shell-statusbar-bg)',text:'var(--etui-shell-statusbar-text)'},dock:{tabHeight:'var(--etui-shell-dock-tab-height)',tabBg:'var(--etui-shell-dock-tab-bg)',tabActiveBg:'var(--etui-shell-dock-tab-active-bg)',tabHoverBg:'var(--etui-shell-dock-tab-hover-bg)',tabText:'var(--etui-shell-dock-tab-text)',tabActiveText:'var(--etui-shell-dock-tab-active-text)',splitterSize:'var(--etui-shell-dock-splitter-size)',splitterColor:'var(--etui-shell-dock-splitter-color)',splitterHoverColor:'var(--etui-shell-dock-splitter-hover-color)',borderBarBg:'var(--etui-shell-dock-border-bar-bg)',borderBarSize:'var(--etui-shell-dock-border-bar-size)',dropOverlay:'var(--etui-shell-dock-drop-overlay)'}},storybook:{canvas:{gradientStart:'var(--etui-storybook-gradient-start)',gradientMid:'var(--etui-storybook-gradient-mid)',gradientEnd:'var(--etui-storybook-gradient-end)'}}};
|
|
1
|
+
var vars = {colors:{background:{primary:'var(--etui-color-bg-primary)',secondary:'var(--etui-color-bg-secondary)',tertiary:'var(--etui-color-bg-tertiary)',elevated:'var(--etui-color-bg-elevated)',inset:'var(--etui-color-bg-inset)'},surface:{'default':'var(--etui-color-surface-default)',hover:'var(--etui-color-surface-hover)',active:'var(--etui-color-surface-active)',disabled:'var(--etui-color-surface-disabled)',whiteOverlay:'var(--etui-color-surface-white-overlay)',row:'var(--etui-color-surface-row)',rowHover:'var(--etui-color-surface-row-hover)'},border:{'default':'var(--etui-color-border-default)',focus:'var(--etui-color-border-focus)',error:'var(--etui-color-border-error)',success:'var(--etui-color-border-success)'},text:{primary:'var(--etui-color-text-primary)',secondary:'var(--etui-color-text-secondary)',muted:'var(--etui-color-text-muted)',disabled:'var(--etui-color-text-disabled)'},accent:{primary:'var(--etui-color-accent-primary)',secondary:'var(--etui-color-accent-secondary)',success:'var(--etui-color-accent-success)',warning:'var(--etui-color-accent-warning)',error:'var(--etui-color-accent-error)'},backdrop:'var(--etui-color-backdrop)'},spacing:{xs:'var(--etui-spacing-xs)',sm:'var(--etui-spacing-sm)',md:'var(--etui-spacing-md)',lg:'var(--etui-spacing-lg)',xl:'var(--etui-spacing-xl)',xxl:'var(--etui-spacing-xxl)',xxxl:'var(--etui-spacing-xxxl)'},typography:{fontSize:{xxs:'var(--etui-font-size-xxs)',xs:'var(--etui-font-size-xs)',sm:'var(--etui-font-size-sm)',md:'var(--etui-font-size-md)',lg:'var(--etui-font-size-lg)',xl:'var(--etui-font-size-xl)'},fontWeight:{normal:'var(--etui-font-weight-normal)',medium:'var(--etui-font-weight-medium)',semibold:'var(--etui-font-weight-semibold)'},lineHeight:{tight:'var(--etui-line-height-tight)',normal:'var(--etui-line-height-normal)',relaxed:'var(--etui-line-height-relaxed)'},fontFamily:{mono:'var(--etui-font-family-mono)',sans:'var(--etui-font-family-sans)'}},borderRadius:{none:'var(--etui-radius-none)',sm:'var(--etui-radius-sm)',md:'var(--etui-radius-md)',lg:'var(--etui-radius-lg)'},shadows:{sm:'var(--etui-shadow-sm)',md:'var(--etui-shadow-md)',lg:'var(--etui-shadow-lg)',xl:'var(--etui-shadow-xl)',focus:'var(--etui-shadow-focus)',separatorBottom:'var(--etui-shadow-separator-bottom)',separatorRight:'var(--etui-shadow-separator-right)',separatorLeft:'var(--etui-shadow-separator-left)',thumb:'var(--etui-shadow-thumb)'},transitions:{fast:'var(--etui-transition-fast)',normal:'var(--etui-transition-normal)',slow:'var(--etui-transition-slow)'},zIndex:{base:'var(--etui-z-base)',dropdown:'var(--etui-z-dropdown)',popover:'var(--etui-z-popover)',tooltip:'var(--etui-z-tooltip)',modal:'var(--etui-z-modal)'},shell:{menuBar:{height:'var(--etui-shell-menubar-height)',bg:'var(--etui-shell-menubar-bg)',hoverBg:'var(--etui-shell-menubar-hover-bg)',activeBg:'var(--etui-shell-menubar-active-bg)',text:'var(--etui-shell-menubar-text)',shortcutText:'var(--etui-shell-menubar-shortcut-text)'},toolbar:{height:{sm:'var(--etui-shell-toolbar-height-sm)',md:'var(--etui-shell-toolbar-height-md)'},bg:'var(--etui-shell-toolbar-bg)',separator:'var(--etui-shell-toolbar-separator)'},statusBar:{height:'var(--etui-shell-statusbar-height)',heightMd:'var(--etui-shell-statusbar-height-md)',bg:'var(--etui-shell-statusbar-bg)',text:'var(--etui-shell-statusbar-text)'},dock:{tabHeight:'var(--etui-shell-dock-tab-height)',tabBg:'var(--etui-shell-dock-tab-bg)',tabActiveBg:'var(--etui-shell-dock-tab-active-bg)',tabHoverBg:'var(--etui-shell-dock-tab-hover-bg)',tabText:'var(--etui-shell-dock-tab-text)',tabActiveText:'var(--etui-shell-dock-tab-active-text)',splitterSize:'var(--etui-shell-dock-splitter-size)',splitterColor:'var(--etui-shell-dock-splitter-color)',splitterHoverColor:'var(--etui-shell-dock-splitter-hover-color)',borderBarBg:'var(--etui-shell-dock-border-bar-bg)',borderBarSize:'var(--etui-shell-dock-border-bar-size)',dropOverlay:'var(--etui-shell-dock-drop-overlay)'}},storybook:{canvas:{gradientStart:'var(--etui-storybook-gradient-start)',gradientMid:'var(--etui-storybook-gradient-mid)',gradientEnd:'var(--etui-storybook-gradient-end)'}}};
|
|
2
2
|
|
|
3
3
|
export { vars };
|
|
4
4
|
//# sourceMappingURL=contract.css.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import './../assets/src/theme/darkTheme.css.ts.vanilla-
|
|
1
|
+
import './../assets/src/theme/darkTheme.css.ts.vanilla-ab1WD4dr.css';
|
|
2
2
|
|
|
3
|
-
var darkThemeValues = {colors:{background:{primary:'#1a1a1a',secondary:'#2d2d2d',tertiary:'#3a3a3a',elevated:'#404040'},surface:{'default':'#2d2d2d',hover:'#363636',active:'#404040',disabled:'#1f1f1f',whiteOverlay:'rgba(255, 255, 255, 0.1)'},border:{'default':'#4a4a4a',focus:'#007acc',error:'#f44336',success:'#4caf50'},text:{primary:'#ffffff',secondary:'#cccccc',muted:'#888888',disabled:'#555555'},accent:{primary:'#007acc',secondary:'#005a9e',success:'#4caf50',warning:'#ff9800',error:'#f44336'},backdrop:'rgba(0, 0, 0, 0.6)'},spacing:{xs:'2px',sm:'4px',md:'8px',lg:'12px',xl:'16px',xxl:'24px',xxxl:'32px'},typography:{fontSize:{xxs:'9px',xs:'10px',sm:'11px',md:'12px',lg:'14px',xl:'16px'},fontWeight:{normal:'400',medium:'500',semibold:'600'},lineHeight:{tight:'1.2',normal:'1.4',relaxed:'1.6'},fontFamily:{mono:'SF Mono, Monaco, Consolas, "Liberation Mono", "Courier New", monospace',sans:'-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif'}},borderRadius:{none:'0px',sm:'2px',md:'4px',lg:'6px'},shadows:{sm:'0 1px 2px rgba(0, 0, 0, 0.2)',md:'0 2px 4px rgba(0, 0, 0, 0.3)',lg:'0 4px 8px rgba(0, 0, 0, 0.4)',xl:'0 8px 16px rgba(0, 0, 0, 0.5)',focus:'0 0 0 2px rgba(0, 122, 204, 0.4)',separatorBottom:'0 1px 2px rgba(0, 0, 0, 0.18)',separatorRight:'1px 0 2px rgba(0, 0, 0, 0.18)',separatorLeft:'-1px 0 2px rgba(0, 0, 0, 0.18)',thumb:'0 0 2px rgba(0, 0, 0, 0.5)'},transitions:{fast:'100ms ease-out',normal:'200ms ease-out',slow:'300ms ease-out'},zIndex:{base:'1',dropdown:'1000',popover:'1000',tooltip:'1000',modal:'1100'},shell:{menuBar:{height:'28px',bg:'#2d2d2d',hoverBg:'#363636',activeBg:'#005a9e',text:'#ffffff',shortcutText:'#888888'},toolbar:{height:{sm:'32px',md:'40px'},bg:'#2d2d2d',separator:'#4a4a4a'},statusBar:{height:'22px',heightMd:'26px',bg:'#007acc',text:'#ffffff'},dock:{tabHeight:'28px',tabBg:'#2d2d2d',tabActiveBg:'#1a1a1a',tabHoverBg:'#363636',tabText:'#cccccc',tabActiveText:'#ffffff',splitterSize:'4px',splitterColor:'#4a4a4a',splitterHoverColor:'#007acc',borderBarBg:'#2d2d2d',borderBarSize:'28px',dropOverlay:'rgba(0, 122, 204, 0.2)'}},storybook:{canvas:{gradientStart:'#061f21',gradientMid:'#031a1a',gradientEnd:'#091010'}}};
|
|
3
|
+
var darkThemeValues = {colors:{background:{primary:'#1a1a1a',secondary:'#2d2d2d',tertiary:'#3a3a3a',elevated:'#404040',inset:'rgba(0, 0, 0, 0.2)'},surface:{'default':'#2d2d2d',hover:'#363636',active:'#404040',disabled:'#1f1f1f',whiteOverlay:'rgba(255, 255, 255, 0.1)',row:'transparent',rowHover:'rgba(255, 255, 255, 0.03)'},border:{'default':'#4a4a4a',focus:'#007acc',error:'#f44336',success:'#4caf50'},text:{primary:'#ffffff',secondary:'#cccccc',muted:'#888888',disabled:'#555555'},accent:{primary:'#007acc',secondary:'#005a9e',success:'#4caf50',warning:'#ff9800',error:'#f44336'},backdrop:'rgba(0, 0, 0, 0.6)'},spacing:{xs:'2px',sm:'4px',md:'8px',lg:'12px',xl:'16px',xxl:'24px',xxxl:'32px'},typography:{fontSize:{xxs:'9px',xs:'10px',sm:'11px',md:'12px',lg:'14px',xl:'16px'},fontWeight:{normal:'400',medium:'500',semibold:'600'},lineHeight:{tight:'1.2',normal:'1.4',relaxed:'1.6'},fontFamily:{mono:'SF Mono, Monaco, Consolas, "Liberation Mono", "Courier New", monospace',sans:'-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif'}},borderRadius:{none:'0px',sm:'2px',md:'4px',lg:'6px'},shadows:{sm:'0 1px 2px rgba(0, 0, 0, 0.2)',md:'0 2px 4px rgba(0, 0, 0, 0.3)',lg:'0 4px 8px rgba(0, 0, 0, 0.4)',xl:'0 8px 16px rgba(0, 0, 0, 0.5)',focus:'0 0 0 2px rgba(0, 122, 204, 0.4)',separatorBottom:'0 1px 2px rgba(0, 0, 0, 0.18)',separatorRight:'1px 0 2px rgba(0, 0, 0, 0.18)',separatorLeft:'-1px 0 2px rgba(0, 0, 0, 0.18)',thumb:'0 0 2px rgba(0, 0, 0, 0.5)'},transitions:{fast:'100ms ease-out',normal:'200ms ease-out',slow:'300ms ease-out'},zIndex:{base:'1',dropdown:'1000',popover:'1000',tooltip:'1000',modal:'1100'},shell:{menuBar:{height:'28px',bg:'#2d2d2d',hoverBg:'#363636',activeBg:'#005a9e',text:'#ffffff',shortcutText:'#888888'},toolbar:{height:{sm:'32px',md:'40px'},bg:'#2d2d2d',separator:'#4a4a4a'},statusBar:{height:'22px',heightMd:'26px',bg:'#007acc',text:'#ffffff'},dock:{tabHeight:'28px',tabBg:'#2d2d2d',tabActiveBg:'#1a1a1a',tabHoverBg:'#363636',tabText:'#cccccc',tabActiveText:'#ffffff',splitterSize:'4px',splitterColor:'#4a4a4a',splitterHoverColor:'#007acc',borderBarBg:'#2d2d2d',borderBarSize:'28px',dropOverlay:'rgba(0, 122, 204, 0.2)'}},storybook:{canvas:{gradientStart:'#061f21',gradientMid:'#031a1a',gradientEnd:'#091010'}}};
|
|
4
4
|
|
|
5
5
|
export { darkThemeValues };
|
|
6
6
|
//# sourceMappingURL=darkTheme.css.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"globalScrollbars.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import './../assets/src/utils/animations.css.ts.vanilla-DOVlpljP.css';
|
|
2
|
+
|
|
3
|
+
var animBlink = 'animations_animBlink__1boy3ak6';
|
|
4
|
+
var animFadeIn = 'animations_animFadeIn__1boy3ak7';
|
|
5
|
+
var animPulse = 'animations_animPulse__1boy3ak5';
|
|
6
|
+
var animSpin = 'animations_animSpin__1boy3ak4';
|
|
7
|
+
var blinkKeyframe = 'animations_blinkKeyframe__1boy3ak2';
|
|
8
|
+
var fadeInKeyframe = 'animations_fadeInKeyframe__1boy3ak3';
|
|
9
|
+
var pulseKeyframe = 'animations_pulseKeyframe__1boy3ak1';
|
|
10
|
+
var spinKeyframe = 'animations_spinKeyframe__1boy3ak0';
|
|
11
|
+
|
|
12
|
+
export { animBlink, animFadeIn, animPulse, animSpin, blinkKeyframe, fadeInKeyframe, pulseKeyframe, spinKeyframe };
|
|
13
|
+
//# sourceMappingURL=animations.css.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"animations.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;"}
|