@harborclient/sdk 1.0.23 → 1.0.25
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/dist/components/Autocomplete/SuggestionList.js +1 -1
- package/dist/components/Button/index.js +1 -1
- package/dist/components/CodeEditor/config.d.ts +4 -0
- package/dist/components/CodeEditor/config.d.ts.map +1 -1
- package/dist/components/CodeEditor/config.js +3 -2
- package/dist/components/CodeEditor/editorChrome.d.ts +23 -0
- package/dist/components/CodeEditor/editorChrome.d.ts.map +1 -0
- package/dist/components/CodeEditor/editorChrome.js +136 -0
- package/dist/components/CodeEditor/index.d.ts +133 -1
- package/dist/components/CodeEditor/index.d.ts.map +1 -1
- package/dist/components/CodeEditor/index.js +387 -134
- package/dist/components/CodeEditor/renderHighlightedPlaceholder.d.ts +32 -0
- package/dist/components/CodeEditor/renderHighlightedPlaceholder.d.ts.map +1 -0
- package/dist/components/CodeEditor/renderHighlightedPlaceholder.js +105 -0
- package/dist/components/CodeEditor/slashCommandHighlighter.d.ts +17 -0
- package/dist/components/CodeEditor/slashCommandHighlighter.d.ts.map +1 -0
- package/dist/components/CodeEditor/slashCommandHighlighter.js +56 -0
- package/dist/components/CodeEditor/syntaxHighlightedPlaceholder.d.ts +15 -0
- package/dist/components/CodeEditor/syntaxHighlightedPlaceholder.d.ts.map +1 -0
- package/dist/components/CodeEditor/syntaxHighlightedPlaceholder.js +99 -0
- package/dist/components/EmptyState/index.js +1 -1
- package/dist/components/FooterButton/index.js +2 -2
- package/dist/components/Resizable/useResizable.d.ts +5 -4
- package/dist/components/Resizable/useResizable.d.ts.map +1 -1
- package/dist/components/Resizable/useResizable.js +19 -10
- package/dist/components/SegmentedTabs/index.d.ts.map +1 -1
- package/dist/components/SegmentedTabs/index.js +1 -1
- package/dist/components/SegmentedTabs/types.d.ts +3 -1
- package/dist/components/SegmentedTabs/types.d.ts.map +1 -1
- package/dist/components/Table/index.js +1 -1
- package/dist/components/Toolbar/index.d.ts +75 -0
- package/dist/components/Toolbar/index.d.ts.map +1 -0
- package/dist/components/Toolbar/index.js +38 -0
- package/dist/components/VariableInput/index.js +1 -1
- package/dist/components/classes.js +2 -2
- package/dist/components/forms/classes.d.ts +4 -4
- package/dist/components/forms/classes.d.ts.map +1 -1
- package/dist/components/forms/classes.js +4 -4
- package/dist/components/index.d.ts +3 -1
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/index.js +1 -0
- package/dist/styles.css +42 -0
- package/dist/ui/codeEditorSettings.d.ts +15 -0
- package/dist/ui/codeEditorSettings.d.ts.map +1 -1
- package/dist/ui/codeEditorSettings.js +40 -0
- package/dist/ui/index.d.ts +1 -1
- package/dist/ui/index.d.ts.map +1 -1
- package/dist/ui/index.js +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"classes.d.ts","sourceRoot":"","sources":["../../../src/components/forms/classes.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,CAAC;AAE3D;;GAEG;AACH,eAAO,MAAM,UAAU,gEAAgE,CAAC;AAExF,mEAAmE;AACnE,eAAO,MAAM,KAAK,gGAC6E,CAAC;AAEhG,wDAAwD;AACxD,eAAO,MAAM,YAAY,yFAC+D,CAAC;AAEzF,uEAAuE;AACvE,eAAO,MAAM,aAAa,iGACsE,CAAC;AAEjG,qGAAqG;AACrG,eAAO,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"classes.d.ts","sourceRoot":"","sources":["../../../src/components/forms/classes.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,CAAC;AAE3D;;GAEG;AACH,eAAO,MAAM,UAAU,gEAAgE,CAAC;AAExF,mEAAmE;AACnE,eAAO,MAAM,KAAK,gGAC6E,CAAC;AAEhG,wDAAwD;AACxD,eAAO,MAAM,YAAY,yFAC+D,CAAC;AAEzF,uEAAuE;AACvE,eAAO,MAAM,aAAa,iGACsE,CAAC;AAEjG,qGAAqG;AACrG,eAAO,MAAM,WAAW,waAC+Y,CAAC;AAExa,oEAAoE;AACpE,eAAO,MAAM,UAAU,iGACyE,CAAC;AAEjG,kGAAkG;AAClG,eAAO,MAAM,WAAW,+XACsW,CAAC;AAE/X,6DAA6D;AAC7D,eAAO,MAAM,QAAQ,8GACwF,CAAC;AAO9G;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,YAAY,EACrB,SAAS,CAAC,EAAE,MAAM,EAClB,SAAS,CAAC,EAAE,MAAM,GACjB,MAAM,GAAG,SAAS,CAOpB"}
|
|
@@ -4,15 +4,15 @@
|
|
|
4
4
|
/**
|
|
5
5
|
* Border and subtle tint shell for composite inputs (e.g. VariableInput wrappers).
|
|
6
6
|
*/
|
|
7
|
-
export const fieldFrame = 'overflow-hidden rounded-
|
|
7
|
+
export const fieldFrame = 'overflow-hidden rounded-lg border border-separator bg-field';
|
|
8
8
|
/** Inset control style for standard settings and editor fields. */
|
|
9
|
-
export const field = 'rounded-
|
|
9
|
+
export const field = 'rounded-lg border border-separator bg-field px-2.5 py-1.5 text-[16px] text-text app-no-drag';
|
|
10
10
|
/** Surface style for modal and Team Hub form fields. */
|
|
11
|
-
export const surfaceField = 'w-full rounded-
|
|
11
|
+
export const surfaceField = 'w-full rounded-lg border border-separator bg-field px-3 py-2.5 text-[15px] text-text';
|
|
12
12
|
/** Transparent overlay checkbox input sized to {@link checkboxBox}. */
|
|
13
13
|
export const checkboxInput = 'peer absolute inset-0 m-0 h-full w-full cursor-pointer opacity-0 disabled:cursor-not-allowed';
|
|
14
14
|
/** Custom checkbox box styled via `peer-checked` / `peer-focus-visible` on {@link checkboxInput}. */
|
|
15
|
-
export const checkboxBox = 'pointer-events-none flex h-[18px] w-[18px] shrink-0 items-center justify-center rounded border border-separator bg-field text-white peer-checked:border-accent peer-checked:bg-accent peer-focus-visible:outline peer-focus-visible:outline-2 peer-focus-visible:outline-offset-2 peer-focus-visible:outline-accent peer-disabled:cursor-not-allowed peer-disabled:opacity-50 [&>svg]:opacity-0 peer-checked:[&>svg]:opacity-100';
|
|
15
|
+
export const checkboxBox = 'pointer-events-none flex h-[18px] w-[18px] shrink-0 items-center justify-center rounded-sm border border-separator bg-field text-white peer-checked:border-accent peer-checked:bg-accent peer-focus-visible:outline peer-focus-visible:outline-2 peer-focus-visible:outline-offset-2 peer-focus-visible:outline-accent peer-disabled:cursor-not-allowed peer-disabled:opacity-50 [&>svg]:opacity-0 peer-checked:[&>svg]:opacity-100';
|
|
16
16
|
/** Transparent overlay radio input sized to {@link radioCircle}. */
|
|
17
17
|
export const radioInput = 'peer absolute inset-0 m-0 h-full w-full cursor-pointer opacity-0 disabled:cursor-not-allowed';
|
|
18
18
|
/** Custom radio circle styled via `peer-checked` / `peer-focus-visible` on {@link radioInput}. */
|
|
@@ -9,7 +9,7 @@ export { Button } from './Button/index.js';
|
|
|
9
9
|
export { CodeEditor, CODE_EDITOR_THEME_OPTIONS } from './CodeEditor/index.js';
|
|
10
10
|
export { CodeEditorConfigProvider, useCodeEditorConfig, DEFAULT_CODE_EDITOR_CONFIG } from './CodeEditor/config.js';
|
|
11
11
|
export type { CodeEditorConfig } from './CodeEditor/config.js';
|
|
12
|
-
export type { Props as CodeEditorProps, CodeEditorLanguage } from './CodeEditor/index.js';
|
|
12
|
+
export type { Props as CodeEditorProps, CodeEditorLanguage, CodeEditorSelectionRange, CodeEditorSlashCommand, CodeEditorSlashCoords, CodeEditorSlashTrigger, CodeEditorViewState } from './CodeEditor/index.js';
|
|
13
13
|
export { EmptyState } from './EmptyState/index.js';
|
|
14
14
|
export { FaIcon } from './FaIcon/index.js';
|
|
15
15
|
export { FieldError } from './FieldError/index.js';
|
|
@@ -45,6 +45,8 @@ export type { TabItem } from './SegmentedTabs/index.js';
|
|
|
45
45
|
export { Spinner } from './Spinner/index.js';
|
|
46
46
|
export { StatusMessage } from './StatusMessage/index.js';
|
|
47
47
|
export { TabCloseButton } from './TabCloseButton/index.js';
|
|
48
|
+
export { Toolbar } from './Toolbar/index.js';
|
|
49
|
+
export type { ToolbarAction } from './Toolbar/index.js';
|
|
48
50
|
export { Table, TableBody, TableCell, TableHead, TableHeader, tableCellClass, tableCellClassLoose, tableHeadClass, tableHeadClassLoose } from './Table/index.js';
|
|
49
51
|
export type { TableVariant } from './Table/index.js';
|
|
50
52
|
export { VariableInput } from './VariableInput/index.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AACvF,OAAO,EACL,iBAAiB,EACjB,cAAc,EACd,eAAe,EACf,KAAK,sBAAsB,EAC3B,KAAK,kBAAkB,EACxB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,YAAY,EAAE,KAAK,IAAI,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC5E,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,YAAY,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAC9E,OAAO,EACL,wBAAwB,EACxB,mBAAmB,EACnB,0BAA0B,EAC3B,MAAM,wBAAwB,CAAC;AAChC,YAAY,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,YAAY,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"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"}
|
package/dist/components/index.js
CHANGED
|
@@ -34,6 +34,7 @@ export { SegmentedTabs, SegmentedTabsGroup, SegmentedTabPanel } from './Segmente
|
|
|
34
34
|
export { Spinner } from './Spinner/index.js';
|
|
35
35
|
export { StatusMessage } from './StatusMessage/index.js';
|
|
36
36
|
export { TabCloseButton } from './TabCloseButton/index.js';
|
|
37
|
+
export { Toolbar } from './Toolbar/index.js';
|
|
37
38
|
export { Table, TableBody, TableCell, TableHead, TableHeader, tableCellClass, tableCellClassLoose, tableHeadClass, tableHeadClassLoose } from './Table/index.js';
|
|
38
39
|
export { VariableInput } from './VariableInput/index.js';
|
|
39
40
|
export { VariableTable } from './VariableTable/index.js';
|
package/dist/styles.css
CHANGED
|
@@ -21,6 +21,8 @@
|
|
|
21
21
|
*/
|
|
22
22
|
.hc-footer-icon:focus-visible,
|
|
23
23
|
.hc-footer-icon:focus:not(:focus-visible),
|
|
24
|
+
.hc-toolbar-action[aria-pressed='true']:focus-visible,
|
|
25
|
+
.hc-toolbar-action[aria-pressed='true']:focus:not(:focus-visible),
|
|
24
26
|
.hc-footer-button:focus-visible,
|
|
25
27
|
.hc-footer-button:focus:not(:focus-visible) {
|
|
26
28
|
outline: none;
|
|
@@ -36,3 +38,43 @@
|
|
|
36
38
|
border: 1px solid ButtonBorder;
|
|
37
39
|
}
|
|
38
40
|
}
|
|
41
|
+
|
|
42
|
+
/**
|
|
43
|
+
* CodeEditor fills an explicit wrapper height set by the host without passing height
|
|
44
|
+
* into CodeMirror (which would trigger full reconfigure on every resize).
|
|
45
|
+
*
|
|
46
|
+
* @uiw/react-codemirror inserts a `.cm-theme-*` container between the wrapper and
|
|
47
|
+
* `.cm-editor`; every level must participate in the flex chain or the scroller grows
|
|
48
|
+
* with document content and never overflows.
|
|
49
|
+
*/
|
|
50
|
+
.hc-code-editor {
|
|
51
|
+
display: flex;
|
|
52
|
+
flex-direction: column;
|
|
53
|
+
min-height: 0;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
.hc-code-editor > div:first-child {
|
|
57
|
+
display: flex;
|
|
58
|
+
flex: 1 1 0%;
|
|
59
|
+
flex-direction: column;
|
|
60
|
+
min-height: 0;
|
|
61
|
+
height: 100%;
|
|
62
|
+
overflow: hidden;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
.hc-code-editor .cm-editor {
|
|
66
|
+
display: flex !important;
|
|
67
|
+
flex: 1 1 0% !important;
|
|
68
|
+
flex-direction: column;
|
|
69
|
+
min-height: 0 !important;
|
|
70
|
+
height: 100% !important;
|
|
71
|
+
max-height: 100% !important;
|
|
72
|
+
overflow: hidden !important;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
.hc-code-editor .cm-scroller {
|
|
76
|
+
flex: 1 1 0%;
|
|
77
|
+
min-height: 0;
|
|
78
|
+
overflow: auto !important;
|
|
79
|
+
scrollbar-gutter: stable;
|
|
80
|
+
}
|
|
@@ -3,6 +3,14 @@ import type { CodeEditorSetup, CodeEditorTheme } from '../types.js';
|
|
|
3
3
|
* Valid CodeMirror theme identifiers for settings validation.
|
|
4
4
|
*/
|
|
5
5
|
export declare const CODE_EDITOR_THEME_IDS: readonly ["default", "dracula", "githubLight", "githubDark", "monokai", "nord", "solarizedLight", "tokyoNight"];
|
|
6
|
+
/**
|
|
7
|
+
* Default editor font size applied when no valid value is stored.
|
|
8
|
+
*/
|
|
9
|
+
export declare const DEFAULT_CODE_EDITOR_FONT_SIZE = "16px";
|
|
10
|
+
/**
|
|
11
|
+
* Minimum allowed editor font size in pixels (HarborClient UI accessibility floor).
|
|
12
|
+
*/
|
|
13
|
+
export declare const MIN_CODE_EDITOR_FONT_SIZE_PX = 14;
|
|
6
14
|
/**
|
|
7
15
|
* Default CodeMirror basicSetup options for editable editors.
|
|
8
16
|
*/
|
|
@@ -26,4 +34,11 @@ export declare function normalizeCodeEditorSetup(input: Partial<CodeEditorSetup>
|
|
|
26
34
|
* @param value - Raw theme value from storage or input.
|
|
27
35
|
*/
|
|
28
36
|
export declare function normalizeCodeEditorTheme(value: unknown): CodeEditorTheme;
|
|
37
|
+
/**
|
|
38
|
+
* Parses a raw font size into pixel units, clamping below the minimum.
|
|
39
|
+
*
|
|
40
|
+
* @param value - Raw font size from storage, props, or user input.
|
|
41
|
+
* @returns Normalized CSS length such as `16px`.
|
|
42
|
+
*/
|
|
43
|
+
export declare function normalizeCodeEditorFontSize(value: unknown): string;
|
|
29
44
|
//# sourceMappingURL=codeEditorSettings.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codeEditorSettings.d.ts","sourceRoot":"","sources":["../../src/ui/codeEditorSettings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEpE;;GAEG;AACH,eAAO,MAAM,qBAAqB,iHASa,CAAC;AAEhD;;GAEG;AACH,eAAO,MAAM,yBAAyB,EAAE,eAKvC,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,eAAe,CAE1E;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,SAAS,GAC1C,eAAe,CAOjB;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,OAAO,GAAG,eAAe,CAExE"}
|
|
1
|
+
{"version":3,"file":"codeEditorSettings.d.ts","sourceRoot":"","sources":["../../src/ui/codeEditorSettings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEpE;;GAEG;AACH,eAAO,MAAM,qBAAqB,iHASa,CAAC;AAEhD;;GAEG;AACH,eAAO,MAAM,6BAA6B,SAAS,CAAC;AAEpD;;GAEG;AACH,eAAO,MAAM,4BAA4B,KAAK,CAAC;AAE/C;;GAEG;AACH,eAAO,MAAM,yBAAyB,EAAE,eAKvC,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,eAAe,CAE1E;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,SAAS,GAC1C,eAAe,CAOjB;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,OAAO,GAAG,eAAe,CAExE;AAED;;;;;GAKG;AACH,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CA4BlE"}
|
|
@@ -11,6 +11,14 @@ export const CODE_EDITOR_THEME_IDS = [
|
|
|
11
11
|
'solarizedLight',
|
|
12
12
|
'tokyoNight'
|
|
13
13
|
];
|
|
14
|
+
/**
|
|
15
|
+
* Default editor font size applied when no valid value is stored.
|
|
16
|
+
*/
|
|
17
|
+
export const DEFAULT_CODE_EDITOR_FONT_SIZE = '16px';
|
|
18
|
+
/**
|
|
19
|
+
* Minimum allowed editor font size in pixels (HarborClient UI accessibility floor).
|
|
20
|
+
*/
|
|
21
|
+
export const MIN_CODE_EDITOR_FONT_SIZE_PX = 14;
|
|
14
22
|
/**
|
|
15
23
|
* Default CodeMirror basicSetup options for editable editors.
|
|
16
24
|
*/
|
|
@@ -50,3 +58,35 @@ export function normalizeCodeEditorSetup(input) {
|
|
|
50
58
|
export function normalizeCodeEditorTheme(value) {
|
|
51
59
|
return isCodeEditorTheme(value) ? value : 'default';
|
|
52
60
|
}
|
|
61
|
+
/**
|
|
62
|
+
* Parses a raw font size into pixel units, clamping below the minimum.
|
|
63
|
+
*
|
|
64
|
+
* @param value - Raw font size from storage, props, or user input.
|
|
65
|
+
* @returns Normalized CSS length such as `16px`.
|
|
66
|
+
*/
|
|
67
|
+
export function normalizeCodeEditorFontSize(value) {
|
|
68
|
+
if (typeof value === 'number' && Number.isFinite(value)) {
|
|
69
|
+
const clamped = Math.max(MIN_CODE_EDITOR_FONT_SIZE_PX, Math.round(value));
|
|
70
|
+
return `${clamped}px`;
|
|
71
|
+
}
|
|
72
|
+
if (typeof value === 'string') {
|
|
73
|
+
const trimmed = value.trim();
|
|
74
|
+
const pxMatch = trimmed.match(/^(\d+(?:\.\d+)?)px$/i);
|
|
75
|
+
if (pxMatch) {
|
|
76
|
+
const parsed = Number(pxMatch[1]);
|
|
77
|
+
if (Number.isFinite(parsed)) {
|
|
78
|
+
const clamped = Math.max(MIN_CODE_EDITOR_FONT_SIZE_PX, Math.round(parsed));
|
|
79
|
+
return `${clamped}px`;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
const integerMatch = trimmed.match(/^(\d+)$/);
|
|
83
|
+
if (integerMatch) {
|
|
84
|
+
const parsed = Number(integerMatch[1]);
|
|
85
|
+
if (Number.isFinite(parsed)) {
|
|
86
|
+
const clamped = Math.max(MIN_CODE_EDITOR_FONT_SIZE_PX, parsed);
|
|
87
|
+
return `${clamped}px`;
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
return DEFAULT_CODE_EDITOR_FONT_SIZE;
|
|
92
|
+
}
|
package/dist/ui/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { CODE_EDITOR_THEME_IDS, DEFAULT_CODE_EDITOR_SETUP, isCodeEditorTheme, normalizeCodeEditorSetup, normalizeCodeEditorTheme } from './codeEditorSettings.js';
|
|
1
|
+
export { CODE_EDITOR_THEME_IDS, DEFAULT_CODE_EDITOR_FONT_SIZE, DEFAULT_CODE_EDITOR_SETUP, MIN_CODE_EDITOR_FONT_SIZE_PX, isCodeEditorTheme, normalizeCodeEditorFontSize, normalizeCodeEditorSetup, normalizeCodeEditorTheme } from './codeEditorSettings.js';
|
|
2
2
|
export { formatHeaders, formatRelativeTime, truncateToBytes, byteLength } from './format.js';
|
|
3
3
|
export { METHOD_COLOR_TOKENS, STATUS_COLOR_TOKENS, methodColorClass, statusColorClass } from './tokens.js';
|
|
4
4
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/ui/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ui/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EACrB,yBAAyB,EACzB,iBAAiB,EACjB,wBAAwB,EACxB,wBAAwB,EACzB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC7F,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,gBAAgB,EACjB,MAAM,aAAa,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ui/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EACrB,6BAA6B,EAC7B,yBAAyB,EACzB,4BAA4B,EAC5B,iBAAiB,EACjB,2BAA2B,EAC3B,wBAAwB,EACxB,wBAAwB,EACzB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC7F,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,gBAAgB,EACjB,MAAM,aAAa,CAAC"}
|
package/dist/ui/index.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export { CODE_EDITOR_THEME_IDS, DEFAULT_CODE_EDITOR_SETUP, isCodeEditorTheme, normalizeCodeEditorSetup, normalizeCodeEditorTheme } from './codeEditorSettings.js';
|
|
1
|
+
export { CODE_EDITOR_THEME_IDS, DEFAULT_CODE_EDITOR_FONT_SIZE, DEFAULT_CODE_EDITOR_SETUP, MIN_CODE_EDITOR_FONT_SIZE_PX, isCodeEditorTheme, normalizeCodeEditorFontSize, normalizeCodeEditorSetup, normalizeCodeEditorTheme } from './codeEditorSettings.js';
|
|
2
2
|
export { formatHeaders, formatRelativeTime, truncateToBytes, byteLength } from './format.js';
|
|
3
3
|
export { METHOD_COLOR_TOKENS, STATUS_COLOR_TOKENS, methodColorClass, statusColorClass } from './tokens.js';
|