@astryxdesign/core 0.4.0 → 0.4.1
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/AspectRatio/AspectRatio.d.ts.map +1 -1
- package/dist/AspectRatio/AspectRatio.js +1 -2
- package/dist/AspectRatio/index.d.ts.map +1 -1
- package/dist/AspectRatio/index.js +1 -2
- package/dist/Badge/Badge.d.ts.map +1 -1
- package/dist/Badge/Badge.js +1 -2
- package/dist/Badge/index.d.ts.map +1 -1
- package/dist/Badge/index.js +1 -2
- package/dist/Banner/Banner.d.ts +3 -0
- package/dist/Banner/Banner.d.ts.map +1 -1
- package/dist/Banner/Banner.js +17 -3
- package/dist/Blockquote/Blockquote.d.ts.map +1 -1
- package/dist/Blockquote/Blockquote.js +1 -2
- package/dist/Blockquote/index.d.ts.map +1 -1
- package/dist/Blockquote/index.js +1 -2
- package/dist/Button/Button.d.ts.map +1 -1
- package/dist/Button/Button.js +2 -2
- package/dist/Card/Card.d.ts.map +1 -1
- package/dist/Card/Card.js +1 -2
- package/dist/Card/index.d.ts.map +1 -1
- package/dist/Card/index.js +1 -2
- package/dist/Center/Center.d.ts.map +1 -1
- package/dist/Center/Center.js +1 -2
- package/dist/Center/index.d.ts.map +1 -1
- package/dist/Center/index.js +1 -2
- package/dist/Code/Code.d.ts.map +1 -1
- package/dist/Code/Code.js +1 -2
- package/dist/CommandPalette/CommandPalette.d.ts.map +1 -1
- package/dist/CommandPalette/CommandPalette.js +5 -0
- package/dist/ComplexSelector/ComplexSelector.d.ts.map +1 -1
- package/dist/ComplexSelector/ComplexSelector.js +7 -8
- package/dist/DateInput/DateInput.d.ts.map +1 -1
- package/dist/DateInput/DateInput.js +23 -10
- package/dist/DateRangeInput/DateRangeInput.d.ts.map +1 -1
- package/dist/DateRangeInput/DateRangeInput.js +44 -16
- package/dist/DateTimeInput/DateTimeInput.d.ts.map +1 -1
- package/dist/DateTimeInput/DateTimeInput.js +32 -13
- package/dist/DropdownMenu/DropdownMenuRadioGroup.d.ts +1 -1
- package/dist/DropdownMenu/DropdownMenuRadioGroup.d.ts.map +1 -1
- package/dist/DropdownMenu/DropdownMenuRadioGroup.js +10 -3
- package/dist/Field/PanelSearchInput.d.ts +81 -0
- package/dist/Field/PanelSearchInput.d.ts.map +1 -0
- package/dist/Field/PanelSearchInput.js +151 -0
- package/dist/FileInput/FileInput.d.ts.map +1 -1
- package/dist/FileInput/FileInput.js +21 -10
- package/dist/Grid/Grid.d.ts.map +1 -1
- package/dist/Grid/Grid.js +1 -2
- package/dist/Grid/index.d.ts.map +1 -1
- package/dist/Grid/index.js +1 -2
- package/dist/Icon/globalIconRegistry.d.ts +5 -4
- package/dist/Icon/globalIconRegistry.d.ts.map +1 -1
- package/dist/Icon/globalIconRegistry.js +5 -4
- package/dist/Indicator/index.d.ts +1 -1
- package/dist/Indicator/index.d.ts.map +1 -1
- package/dist/Indicator/types.d.ts +10 -0
- package/dist/Indicator/types.d.ts.map +1 -1
- package/dist/Lightbox/Lightbox.d.ts.map +1 -1
- package/dist/Lightbox/Lightbox.js +24 -50
- package/dist/MultiSelector/MultiSelector.d.ts +8 -1
- package/dist/MultiSelector/MultiSelector.d.ts.map +1 -1
- package/dist/MultiSelector/MultiSelector.js +134 -102
- package/dist/Popover/usePopover.d.ts +15 -0
- package/dist/Popover/usePopover.d.ts.map +1 -1
- package/dist/Popover/usePopover.js +14 -2
- package/dist/ProgressBar/ProgressBar.d.ts.map +1 -1
- package/dist/ProgressBar/ProgressBar.js +2 -3
- package/dist/Section/Section.d.ts.map +1 -1
- package/dist/Section/Section.js +1 -2
- package/dist/Section/index.d.ts.map +1 -1
- package/dist/Section/index.js +1 -2
- package/dist/Selector/Selector.d.ts +10 -0
- package/dist/Selector/Selector.d.ts.map +1 -1
- package/dist/Selector/Selector.js +135 -95
- package/dist/Skeleton/Skeleton.d.ts.map +1 -1
- package/dist/Skeleton/Skeleton.js +1 -2
- package/dist/Skeleton/index.d.ts.map +1 -1
- package/dist/Skeleton/index.js +1 -2
- package/dist/Slider/Slider.d.ts.map +1 -1
- package/dist/Slider/Slider.js +2 -6
- package/dist/Switch/Switch.d.ts.map +1 -1
- package/dist/Switch/Switch.js +3 -3
- package/dist/Table/TableRow.d.ts +1 -1
- package/dist/Table/TableRow.d.ts.map +1 -1
- package/dist/Table/TableRow.js +4 -2
- package/dist/TimeInput/TimeInput.d.ts.map +1 -1
- package/dist/TimeInput/TimeInput.js +7 -2
- package/dist/Timestamp/Timestamp.d.ts.map +1 -1
- package/dist/Timestamp/Timestamp.js +14 -3
- package/dist/Timestamp/formatInstant.d.ts +11 -1
- package/dist/Timestamp/formatInstant.d.ts.map +1 -1
- package/dist/Timestamp/formatInstant.js +3 -1
- package/dist/VisuallyHidden/VisuallyHidden.d.ts.map +1 -1
- package/dist/VisuallyHidden/VisuallyHidden.js +1 -2
- package/dist/VisuallyHidden/index.d.ts.map +1 -1
- package/dist/VisuallyHidden/index.js +1 -2
- package/dist/astryx.css +18 -17
- package/dist/astryx.umd.js +45 -45
- package/dist/astryx.umd.js.map +4 -4
- package/dist/hooks/useInputStatusIcon.d.ts.map +1 -1
- package/dist/hooks/useInputStatusIcon.js +17 -4
- package/dist/theme/defineTheme.d.ts +2 -2
- package/dist/theme/defineTheme.d.ts.map +1 -1
- package/dist/theme/defineTheme.js +2 -1
- package/dist/theme/index.d.ts +1 -1
- package/dist/theme/index.d.ts.map +1 -1
- package/dist/theme/index.js +1 -1
- package/dist/theme/tokens.stylex.d.ts +12 -0
- package/dist/theme/tokens.stylex.d.ts.map +1 -1
- package/dist/theme/tokens.stylex.js +23 -0
- package/dist/utils/focusOutline.stylex.d.ts +34 -19
- package/dist/utils/focusOutline.stylex.d.ts.map +1 -1
- package/dist/utils/focusOutline.stylex.js +46 -33
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +5 -1
- package/dist/utils/interactionModality.d.ts +34 -0
- package/dist/utils/interactionModality.d.ts.map +1 -0
- package/dist/utils/interactionModality.js +70 -0
- package/locales/en.json +40 -0
- package/locales/pseudo.json +30 -0
- package/package.json +2 -2
- package/src/AppShell/AppShell.doc.mjs +3 -0
- package/src/AspectRatio/AspectRatio.tsx +0 -2
- package/src/AspectRatio/index.ts +0 -2
- package/src/Badge/Badge.tsx +0 -2
- package/src/Badge/index.ts +0 -2
- package/src/Banner/Banner.test.tsx +58 -1
- package/src/Banner/Banner.tsx +24 -5
- package/src/Blockquote/Blockquote.tsx +0 -2
- package/src/Blockquote/index.ts +0 -2
- package/src/Button/Button.doc.mjs +2 -2
- package/src/Button/Button.tsx +5 -4
- package/src/Card/Card.tsx +0 -2
- package/src/Card/index.ts +0 -2
- package/src/Center/Center.tsx +0 -2
- package/src/Center/index.ts +0 -2
- package/src/CheckboxInput/CheckboxInput.test.tsx +8 -3
- package/src/Code/Code.tsx +0 -2
- package/src/CommandPalette/CommandPalette.test.tsx +54 -0
- package/src/CommandPalette/CommandPalette.tsx +5 -0
- package/src/ComplexSelector/ComplexSelector.test.tsx +15 -6
- package/src/ComplexSelector/ComplexSelector.tsx +6 -10
- package/src/DateInput/DateInput.test.tsx +19 -0
- package/src/DateInput/DateInput.tsx +3 -6
- package/src/DateRangeInput/DateRangeInput.tsx +3 -9
- package/src/DateTimeInput/DateTimeInput.test.tsx +79 -1
- package/src/DateTimeInput/DateTimeInput.tsx +23 -9
- package/src/DropdownMenu/DropdownMenuRadioGroup.tsx +2 -1
- package/src/Field/PanelSearchInput.tsx +271 -0
- package/src/FileInput/FileInput.tsx +21 -8
- package/src/Grid/Grid.tsx +0 -2
- package/src/Grid/index.ts +0 -2
- package/src/Icon/globalIconRegistry.tsx +5 -4
- package/src/Indicator/Indicator.doc.mjs +1 -1
- package/src/Indicator/index.ts +1 -0
- package/src/Indicator/types.ts +11 -0
- package/src/Lightbox/Lightbox.tsx +2 -11
- package/src/MultiSelector/MultiSelector.doc.mjs +9 -0
- package/src/MultiSelector/MultiSelector.test.tsx +135 -5
- package/src/MultiSelector/MultiSelector.tsx +170 -127
- package/src/Popover/Popover.doc.mjs +2 -0
- package/src/Popover/usePopover.tsx +37 -4
- package/src/ProgressBar/ProgressBar.tsx +2 -8
- package/src/Section/Section.tsx +0 -2
- package/src/Section/index.ts +0 -2
- package/src/Selector/Selector.doc.mjs +10 -0
- package/src/Selector/Selector.test.tsx +386 -2
- package/src/Selector/Selector.tsx +182 -122
- package/src/Skeleton/Skeleton.tsx +0 -2
- package/src/Skeleton/index.ts +0 -2
- package/src/Slider/Slider.tsx +2 -11
- package/src/Switch/Switch.tsx +10 -2
- package/src/Table/Table.test.tsx +31 -0
- package/src/Table/TableRow.tsx +6 -0
- package/src/TimeInput/TimeInput.test.tsx +54 -0
- package/src/TimeInput/TimeInput.tsx +17 -2
- package/src/Timestamp/Timestamp.test.tsx +91 -14
- package/src/Timestamp/Timestamp.tsx +14 -2
- package/src/Timestamp/formatInstant.ts +16 -1
- package/src/TopNav/TopNavMegaMenu.doc.mjs +5 -0
- package/src/TreeList/TreeList.test.tsx +3 -2
- package/src/VisuallyHidden/VisuallyHidden.tsx +0 -2
- package/src/VisuallyHidden/index.ts +0 -2
- package/src/hooks/useInputStatusIcon.tsx +8 -8
- package/src/serverSafeComponents.test.ts +665 -0
- package/src/theme/defineTheme.ts +3 -0
- package/src/theme/generateThemeRules.test.ts +17 -0
- package/src/theme/index.ts +2 -0
- package/src/theme/tokens.stylex.ts +18 -0
- package/src/theme/tokens.test.ts +37 -0
- package/src/utils/focusOutline.stylex.ts +37 -23
- package/src/utils/index.ts +4 -0
- package/src/utils/interactionModality.ts +74 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useInputStatusIcon.d.ts","sourceRoot":"","sources":["../../src/hooks/useInputStatusIcon.tsx"],"names":[],"mappings":"AAmCA,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,OAAO,CAAC;AAErC,OAAO,EAAsB,KAAK,QAAQ,EAAC,MAAM,SAAS,CAAC;AAC3D,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,4BAA4B,CAAC;AACnE,OAAO,KAAK,EAAC,WAAW,EAAkB,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"useInputStatusIcon.d.ts","sourceRoot":"","sources":["../../src/hooks/useInputStatusIcon.tsx"],"names":[],"mappings":"AAmCA,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,OAAO,CAAC;AAErC,OAAO,EAAsB,KAAK,QAAQ,EAAC,MAAM,SAAS,CAAC;AAC3D,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,4BAA4B,CAAC;AACnE,OAAO,KAAK,EAAC,WAAW,EAAkB,MAAM,gBAAgB,CAAC;AAoDjE,MAAM,WAAW,yBAAyB;IACxC,2DAA2D;IAC3D,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,yDAAyD;IACzD,aAAa,CAAC,EAAE,kBAAkB,CAAC;IACnC,+EAA+E;IAC/E,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,+CAA+C;IAC/C,IAAI,CAAC,EAAE,QAAQ,CAAC;CACjB;AAED,MAAM,WAAW,wBAAwB;IACvC;;;;;OAKG;IACH,UAAU,EAAE,SAAS,CAAC;IACtB;;;;;;;OAOG;IACH,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;CACjC;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,EACjC,MAAM,EACN,aAA0B,EAC1B,SAAiB,EACjB,IAAW,GACZ,EAAE,yBAAyB,GAAG,wBAAwB,CAwGtD"}
|
|
@@ -37,8 +37,9 @@ import { Icon } from "../Icon/index.js";
|
|
|
37
37
|
import { useTooltip } from "../Tooltip/index.js";
|
|
38
38
|
import { useTranslator } from "../i18n/index.js";
|
|
39
39
|
import "../theme/tokens.stylex.js";
|
|
40
|
-
import {
|
|
40
|
+
import { radiusVars } from "../theme/tokens.stylex.js";
|
|
41
41
|
import { themeProps } from "../utils/themeProps.js";
|
|
42
|
+
import { focusOutlineStyles } from "../utils/focusOutline.stylex.js";
|
|
42
43
|
|
|
43
44
|
/**
|
|
44
45
|
* Maps each status type to its glyph. Shared so every input shows the same icon
|
|
@@ -59,6 +60,20 @@ const STATUS_BUTTON_LABEL_KEY = {
|
|
|
59
60
|
error: '@astryx.input.statusButton.error',
|
|
60
61
|
success: '@astryx.input.statusButton.success'
|
|
61
62
|
};
|
|
63
|
+
const styles = {
|
|
64
|
+
statusButton: {
|
|
65
|
+
k1xSpc: "x3nfvp2",
|
|
66
|
+
kGNEyG: "x6s0dn4",
|
|
67
|
+
kjj79g: "xl56j7k",
|
|
68
|
+
kmVPX3: "x1717udv",
|
|
69
|
+
kogj98: "x1ghz6dp",
|
|
70
|
+
kMwMTN: "x1heor9g",
|
|
71
|
+
kkrTdU: "x1ypdohk",
|
|
72
|
+
kaIpWk: "xjspbzw",
|
|
73
|
+
kInvED: "x7s97pk",
|
|
74
|
+
$$css: true
|
|
75
|
+
}
|
|
76
|
+
};
|
|
62
77
|
/**
|
|
63
78
|
* Builds the on-field status icon and its accessibility wiring for a bordered
|
|
64
79
|
* input. See the file header for the per-variant behavior.
|
|
@@ -158,9 +173,7 @@ export function useInputStatusIcon({
|
|
|
158
173
|
"aria-describedby": tooltip.describedBy,
|
|
159
174
|
onClick: handleButtonClick,
|
|
160
175
|
onBlur: handleButtonBlur,
|
|
161
|
-
...
|
|
162
|
-
className: "x3nfvp2 x6s0dn4 xl56j7k x1717udv x1ghz6dp x1heor9g x1ypdohk xjspbzw x784prv x9v5kkp xzunyri x7s97pk"
|
|
163
|
-
},
|
|
176
|
+
...stylex.props(focusOutlineStyles.focusVisible, styles.statusButton),
|
|
164
177
|
children: icon
|
|
165
178
|
}), tooltip.renderTooltip(status.message)]
|
|
166
179
|
}),
|
|
@@ -31,14 +31,14 @@ import type { IconRegistry } from '../Icon/globalIconRegistry';
|
|
|
31
31
|
import type { IndicatorRegistry } from '../Indicator/types';
|
|
32
32
|
import type { TypographyConfig } from './types';
|
|
33
33
|
import { type OnMediaOverrides, type ResolvedOnMedia } from './onMediaTokens';
|
|
34
|
-
import { colorDefaults, spacingDefaults, sizeDefaults, radiusDefaults, shadowDefaults, durationDefaults, easeDefaults, typographyDefaults, textSizeDefaults, fontWeightDefaults, typeScaleDefaults } from './tokens.stylex';
|
|
34
|
+
import { colorDefaults, spacingDefaults, sizeDefaults, focusDefaults, radiusDefaults, shadowDefaults, durationDefaults, easeDefaults, typographyDefaults, textSizeDefaults, fontWeightDefaults, typeScaleDefaults } from './tokens.stylex';
|
|
35
35
|
import { type MotionScaleConfig } from './expandMotionScale';
|
|
36
36
|
import { type RadiusScaleConfig } from './expandRadiusScale';
|
|
37
37
|
import { type ColorScaleConfig } from './expandColorScale';
|
|
38
38
|
import type { DomainTokenName } from './domainTokens';
|
|
39
39
|
import type { SyntaxThemeDefinition } from './syntax';
|
|
40
40
|
/** All valid Astryx core token names */
|
|
41
|
-
export type CoreTokenName = keyof typeof colorDefaults | keyof typeof spacingDefaults | keyof typeof sizeDefaults | keyof typeof radiusDefaults | keyof typeof shadowDefaults | keyof typeof durationDefaults | keyof typeof easeDefaults | keyof typeof typographyDefaults | keyof typeof textSizeDefaults | keyof typeof fontWeightDefaults | keyof typeof typeScaleDefaults;
|
|
41
|
+
export type CoreTokenName = keyof typeof colorDefaults | keyof typeof spacingDefaults | keyof typeof sizeDefaults | keyof typeof focusDefaults | keyof typeof radiusDefaults | keyof typeof shadowDefaults | keyof typeof durationDefaults | keyof typeof easeDefaults | keyof typeof typographyDefaults | keyof typeof textSizeDefaults | keyof typeof fontWeightDefaults | keyof typeof typeScaleDefaults;
|
|
42
42
|
/** All valid Astryx token names — core + domain tokens */
|
|
43
43
|
export type TokenName = CoreTokenName | DomainTokenName;
|
|
44
44
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defineTheme.d.ts","sourceRoot":"","sources":["../../src/theme/defineTheme.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"defineTheme.d.ts","sourceRoot":"","sources":["../../src/theme/defineTheme.ts"],"names":[],"mappings":"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"}
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
*/
|
|
32
32
|
|
|
33
33
|
import { resolveOnMedia } from "./onMediaTokens.js";
|
|
34
|
-
import { colorDefaults, spacingDefaults, sizeDefaults, radiusDefaults, shadowDefaults, durationDefaults, easeDefaults, typographyDefaults, textSizeDefaults, fontWeightDefaults, typeScaleDefaults } from "./tokens.stylex.js";
|
|
34
|
+
import { colorDefaults, spacingDefaults, sizeDefaults, focusDefaults, radiusDefaults, shadowDefaults, durationDefaults, easeDefaults, typographyDefaults, textSizeDefaults, fontWeightDefaults, typeScaleDefaults } from "./tokens.stylex.js";
|
|
35
35
|
import { expandTypeScale, generateTypeScaleComponents } from "./expandTypeScale.js";
|
|
36
36
|
import { expandMotionScale } from "./expandMotionScale.js";
|
|
37
37
|
import { expandRadiusScale } from "./expandRadiusScale.js";
|
|
@@ -120,6 +120,7 @@ export const tokenDefaults = {
|
|
|
120
120
|
...colorDefaults,
|
|
121
121
|
...spacingDefaults,
|
|
122
122
|
...sizeDefaults,
|
|
123
|
+
...focusDefaults,
|
|
123
124
|
...radiusDefaults,
|
|
124
125
|
...shadowDefaults,
|
|
125
126
|
...durationDefaults,
|
package/dist/theme/index.d.ts
CHANGED
|
@@ -30,7 +30,7 @@ export { expandColorScale } from './expandColorScale';
|
|
|
30
30
|
export type { ColorScaleConfig, ColorScaleTokens } from './expandColorScale';
|
|
31
31
|
export { expandMotionScale } from './expandMotionScale';
|
|
32
32
|
export type { MotionScaleConfig, MotionScaleTokens } from './expandMotionScale';
|
|
33
|
-
export { colorDefaults, spacingDefaults, sizeDefaults, borderDefaults, radiusDefaults, shadowDefaults, durationDefaults, easeDefaults, typographyDefaults, textSizeDefaults, fontWeightDefaults, typeScaleDefaults, colorVars, spacingVars, sizeVars, borderVars, radiusVars, shadowVars, durationVars, easeVars, typographyVars, textSizeVars, fontWeightVars, typeScaleVars, } from './tokens.stylex';
|
|
33
|
+
export { colorDefaults, spacingDefaults, sizeDefaults, borderDefaults, focusDefaults, radiusDefaults, shadowDefaults, durationDefaults, easeDefaults, typographyDefaults, textSizeDefaults, fontWeightDefaults, typeScaleDefaults, colorVars, spacingVars, sizeVars, borderVars, focusVars, radiusVars, shadowVars, durationVars, easeVars, typographyVars, textSizeVars, fontWeightVars, typeScaleVars, } from './tokens.stylex';
|
|
34
34
|
export type { ColorVarName, SpacingVarName, SizeVarName, BorderVarName, RadiusVarName, ShadowVarName, DurationVarName, EaseVarName, TypographyVarName, TextSizeVarName, FontWeightVarName, TypeScaleVarName, } from './tokens.stylex';
|
|
35
35
|
export { useTheme, useThemeName, ThemeContext } from './useTheme';
|
|
36
36
|
export type { UseThemeReturn, ThemeContextValue } from './useTheme';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/theme/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/theme/index.ts"],"names":[],"mappings":"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"}
|
package/dist/theme/index.js
CHANGED
|
@@ -29,7 +29,7 @@ export { expandRadiusScale } from "./expandRadiusScale.js";
|
|
|
29
29
|
export { expandColorScale } from "./expandColorScale.js";
|
|
30
30
|
export { expandMotionScale } from "./expandMotionScale.js";
|
|
31
31
|
// Export token defaults and vars for use in custom components and themes
|
|
32
|
-
export { colorDefaults, spacingDefaults, sizeDefaults, borderDefaults, radiusDefaults, shadowDefaults, durationDefaults, easeDefaults, typographyDefaults, textSizeDefaults, fontWeightDefaults, typeScaleDefaults, colorVars, spacingVars, sizeVars, borderVars, radiusVars, shadowVars, durationVars, easeVars, typographyVars, textSizeVars, fontWeightVars, typeScaleVars } from "./tokens.stylex.js";
|
|
32
|
+
export { colorDefaults, spacingDefaults, sizeDefaults, borderDefaults, focusDefaults, radiusDefaults, shadowDefaults, durationDefaults, easeDefaults, typographyDefaults, textSizeDefaults, fontWeightDefaults, typeScaleDefaults, colorVars, spacingVars, sizeVars, borderVars, focusVars, radiusVars, shadowVars, durationVars, easeVars, typographyVars, textSizeVars, fontWeightVars, typeScaleVars } from "./tokens.stylex.js";
|
|
33
33
|
|
|
34
34
|
// Export token key types for theme authoring
|
|
35
35
|
|
|
@@ -225,6 +225,18 @@ export declare const borderVars: stylex.VarGroup<Readonly<{
|
|
|
225
225
|
readonly '--border-width': "1px";
|
|
226
226
|
}>, symbol>;
|
|
227
227
|
export type BorderVarName = keyof typeof borderDefaults;
|
|
228
|
+
export declare const focusDefaults: {
|
|
229
|
+
readonly '--focus-outline-width': "2px";
|
|
230
|
+
readonly '--focus-outline-style': "solid";
|
|
231
|
+
readonly '--focus-outline-color': "var(--color-accent)";
|
|
232
|
+
readonly '--focus-outline-offset': "3px";
|
|
233
|
+
};
|
|
234
|
+
export declare const focusVars: stylex.VarGroup<Readonly<{
|
|
235
|
+
readonly '--focus-outline-width': "2px";
|
|
236
|
+
readonly '--focus-outline-style': "solid";
|
|
237
|
+
readonly '--focus-outline-color': "var(--color-accent)";
|
|
238
|
+
readonly '--focus-outline-offset': "3px";
|
|
239
|
+
}>, symbol>;
|
|
228
240
|
export declare const radiusDefaults: {
|
|
229
241
|
readonly '--radius-none': "0px";
|
|
230
242
|
readonly '--radius-inner': "4px";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tokens.stylex.d.ts","sourceRoot":"","sources":["../../src/theme/tokens.stylex.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,MAAM,MAAM,kBAAkB,CAAC;AAM3C,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyHhB,CAAC;AAEX,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WAAmC,CAAC;AAM1D,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;CAgBlB,CAAC;AAEX,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;WAAqC,CAAC;AAM9D,eAAO,MAAM,YAAY;;;;CAIf,CAAC;AAEX,eAAO,MAAM,QAAQ;;;;WAAkC,CAAC;AAMxD,eAAO,MAAM,cAAc;;CAEjB,CAAC;AAEX,eAAO,MAAM,UAAU;;WAAoC,CAAC;AAE5D,MAAM,MAAM,aAAa,GAAG,MAAM,OAAO,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"tokens.stylex.d.ts","sourceRoot":"","sources":["../../src/theme/tokens.stylex.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,MAAM,MAAM,kBAAkB,CAAC;AAM3C,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyHhB,CAAC;AAEX,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WAAmC,CAAC;AAM1D,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;CAgBlB,CAAC;AAEX,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;WAAqC,CAAC;AAM9D,eAAO,MAAM,YAAY;;;;CAIf,CAAC;AAEX,eAAO,MAAM,QAAQ;;;;WAAkC,CAAC;AAMxD,eAAO,MAAM,cAAc;;CAEjB,CAAC;AAEX,eAAO,MAAM,UAAU;;WAAoC,CAAC;AAE5D,MAAM,MAAM,aAAa,GAAG,MAAM,OAAO,cAAc,CAAC;AAWxD,eAAO,MAAM,aAAa;;;;;CAKhB,CAAC;AAEX,eAAO,MAAM,SAAS;;;;;WAAmC,CAAC;AAM1D,eAAO,MAAM,cAAc;;;;;;;;CAWjB,CAAC;AAEX,eAAO,MAAM,UAAU;;;;;;;;WAAoC,CAAC;AAQ5D,eAAO,MAAM,cAAc;;;;;;;;;CAejB,CAAC;AAEX,eAAO,MAAM,UAAU;;;;;;;;;WAAoC,CAAC;AAU5D,eAAO,MAAM,gBAAgB;;;;;;;;;;CAUnB,CAAC;AAEX,eAAO,MAAM,YAAY;;;;;;;;;;WAAsC,CAAC;AAEhE,MAAM,MAAM,eAAe,GAAG,MAAM,OAAO,gBAAgB,CAAC;AAM5D,eAAO,MAAM,YAAY;;CAEf,CAAC;AAEX,eAAO,MAAM,QAAQ;;WAAkC,CAAC;AAExD,MAAM,MAAM,WAAW,GAAG,MAAM,OAAO,YAAY,CAAC;AAKpD,eAAO,MAAM,kBAAkB;;;;CAMrB,CAAC;AAEX,eAAO,MAAM,cAAc;;;;WAAwC,CAAC;AAMpE,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;CAcnB,CAAC;AAEX,eAAO,MAAM,YAAY;;;;;;;;;;;;;WAAsC,CAAC;AAMhE,eAAO,MAAM,kBAAkB;;;;;CAKrB,CAAC;AAEX,eAAO,MAAM,cAAc;;;;;WAAwC,CAAC;AAMpE,MAAM,MAAM,YAAY,GAAG,MAAM,OAAO,aAAa,CAAC;AACtD,MAAM,MAAM,cAAc,GAAG,MAAM,OAAO,eAAe,CAAC;AAC1D,MAAM,MAAM,WAAW,GAAG,MAAM,OAAO,YAAY,CAAC;AACpD,MAAM,MAAM,aAAa,GAAG,MAAM,OAAO,cAAc,CAAC;AACxD,MAAM,MAAM,aAAa,GAAG,MAAM,OAAO,cAAc,CAAC;AACxD,MAAM,MAAM,iBAAiB,GAAG,MAAM,OAAO,kBAAkB,CAAC;AAChE,MAAM,MAAM,eAAe,GAAG,MAAM,OAAO,gBAAgB,CAAC;AAC5D,MAAM,MAAM,iBAAiB,GAAG,MAAM,OAAO,kBAAkB,CAAC;AAehE,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0DpB,CAAC;AAEX,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WAAuC,CAAC;AAElE,MAAM,MAAM,gBAAgB,GAAG,MAAM,OAAO,iBAAiB,CAAC"}
|
|
@@ -284,6 +284,29 @@ export const borderVars = {
|
|
|
284
284
|
"--border-width": "var(--border-width)",
|
|
285
285
|
__varGroupHash__: "xafi2nm"
|
|
286
286
|
};
|
|
287
|
+
// =============================================================================
|
|
288
|
+
// Focus Tokens
|
|
289
|
+
// =============================================================================
|
|
290
|
+
// The keyboard focus ring, as one definition for the whole system. Values come
|
|
291
|
+
// from Design Conventions §User Interaction States: 2px --color-accent at 3px
|
|
292
|
+
// offset. Components read these through utils/focusOutline.stylex.ts; the
|
|
293
|
+
// `:focus-visible` condition stays in core, so a theme can restyle the ring
|
|
294
|
+
// but cannot show it to pointer users.
|
|
295
|
+
|
|
296
|
+
export const focusDefaults = {
|
|
297
|
+
'--focus-outline-width': '2px',
|
|
298
|
+
'--focus-outline-style': 'solid',
|
|
299
|
+
'--focus-outline-color': 'var(--color-accent)',
|
|
300
|
+
'--focus-outline-offset': '3px'
|
|
301
|
+
};
|
|
302
|
+
export const focusVars = {
|
|
303
|
+
"--focus-outline-width": "var(--focus-outline-width)",
|
|
304
|
+
"--focus-outline-style": "var(--focus-outline-style)",
|
|
305
|
+
"--focus-outline-color": "var(--focus-outline-color)",
|
|
306
|
+
"--focus-outline-offset": "var(--focus-outline-offset)",
|
|
307
|
+
__varGroupHash__: "xzxs3qz"
|
|
308
|
+
};
|
|
309
|
+
|
|
287
310
|
// =============================================================================
|
|
288
311
|
// Radius Tokens
|
|
289
312
|
// =============================================================================
|
|
@@ -5,18 +5,33 @@
|
|
|
5
5
|
* @position Internal utility for consistent keyboard focus outlines across core components
|
|
6
6
|
*
|
|
7
7
|
* Centralizes the standard Astryx focus outline, shown only for keyboard focus.
|
|
8
|
-
* Every focusable surface drew the same 2px accent ring
|
|
9
|
-
*
|
|
8
|
+
* Every focusable surface drew the same 2px accent ring already; writing it per
|
|
9
|
+
* component meant dozens of identical definitions to keep in step, and they did
|
|
10
|
+
* not stay in step — offsets drifted and one ring was a border-width thick.
|
|
10
11
|
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
*
|
|
12
|
+
* Every ring in core and lab is drawn from here, with one exception recorded in
|
|
13
|
+
* Switch: its condition is a component-scoped ancestor marker, which cannot be
|
|
14
|
+
* shared without leaking focus state between components. A component may still
|
|
15
|
+
* override the OFFSET (a ring that must sit inset, or clear of a field border);
|
|
16
|
+
* width, style and color are not restated anywhere.
|
|
17
|
+
*
|
|
18
|
+
* Every value comes from the `--focus-outline-*` tokens, which is how a theme
|
|
19
|
+
* restyles the ring: one override reaches every component at once. The
|
|
20
|
+
* `:focus-visible` condition is not themeable and stays here, so a theme can
|
|
21
|
+
* change what the ring looks like but cannot show it to pointer users.
|
|
18
22
|
*/
|
|
19
23
|
import * as stylex from '@stylexjs/stylex';
|
|
24
|
+
/**
|
|
25
|
+
* The ring as a single `outline` value, for reading it at runtime — an
|
|
26
|
+
* assertion, or an element styled imperatively.
|
|
27
|
+
*
|
|
28
|
+
* NOT usable inside another file's `stylex.create`: StyleX resolves imported
|
|
29
|
+
* `defineVars` and nothing else, so a component whose condition
|
|
30
|
+
* {@link focusOutlineStyles} cannot express (Switch, whose ring keys off a
|
|
31
|
+
* component-scoped ancestor marker) has to compose the `focusVars` tokens
|
|
32
|
+
* itself.
|
|
33
|
+
*/
|
|
34
|
+
export declare const FOCUS_OUTLINE: string;
|
|
20
35
|
/**
|
|
21
36
|
* The standard focus ring as plain CSS values, for the one case that has to
|
|
22
37
|
* apply it imperatively: a control whose focusable input is visually hidden and
|
|
@@ -26,8 +41,8 @@ import * as stylex from '@stylexjs/stylex';
|
|
|
26
41
|
* Longhands, not the `outline` shorthand, for the same reason the styles are:
|
|
27
42
|
* a shorthand resets every longhand it covers, so a caller could not re-color
|
|
28
43
|
* the ring without restating its width and style. Split, each part is
|
|
29
|
-
* independently overridable — and
|
|
30
|
-
*
|
|
44
|
+
* independently overridable — and every part stays a var, so a theme's
|
|
45
|
+
* `--focus-outline-*` overrides still flow through.
|
|
31
46
|
*
|
|
32
47
|
* Keys are camelCase to match `HTMLElement.style`, so this spreads straight
|
|
33
48
|
* onto an element:
|
|
@@ -38,10 +53,10 @@ import * as stylex from '@stylexjs/stylex';
|
|
|
38
53
|
* ```
|
|
39
54
|
*/
|
|
40
55
|
export declare const FOCUS_OUTLINE_PARTS: {
|
|
41
|
-
readonly outlineWidth: "2px"
|
|
42
|
-
readonly outlineStyle: "solid"
|
|
43
|
-
readonly outlineColor: stylex.StyleXVar<"
|
|
44
|
-
readonly outlineOffset: "3px"
|
|
56
|
+
readonly outlineWidth: stylex.StyleXVar<"2px">;
|
|
57
|
+
readonly outlineStyle: stylex.StyleXVar<"solid">;
|
|
58
|
+
readonly outlineColor: stylex.StyleXVar<"var(--color-accent)">;
|
|
59
|
+
readonly outlineOffset: stylex.StyleXVar<"3px">;
|
|
45
60
|
};
|
|
46
61
|
/** Clears {@link FOCUS_OUTLINE_PARTS}, one key per part so nothing lingers. */
|
|
47
62
|
export declare const FOCUS_OUTLINE_PARTS_NONE: {
|
|
@@ -54,21 +69,21 @@ export declare const focusOutlineStyles: Readonly<{
|
|
|
54
69
|
readonly focusVisible: Readonly<{
|
|
55
70
|
readonly outlineWidth: stylex.StyleXClassNameFor<"outlineWidth", "0" | "2px">;
|
|
56
71
|
readonly outlineStyle: stylex.StyleXClassNameFor<"outlineStyle", "none" | "solid">;
|
|
57
|
-
readonly outlineColor: stylex.StyleXClassNameFor<"outlineColor", "
|
|
72
|
+
readonly outlineColor: stylex.StyleXClassNameFor<"outlineColor", "var(--color-accent)" | null>;
|
|
58
73
|
readonly outlineOffset: stylex.StyleXClassNameFor<"outlineOffset", "0" | "3px">;
|
|
59
74
|
}>;
|
|
60
75
|
readonly focusWithin: Readonly<{
|
|
61
76
|
readonly outlineWidth: stylex.StyleXClassNameFor<"outlineWidth", "0" | "2px">;
|
|
62
77
|
readonly outlineStyle: stylex.StyleXClassNameFor<"outlineStyle", "none" | "solid">;
|
|
63
|
-
readonly outlineColor: stylex.StyleXClassNameFor<"outlineColor", "
|
|
78
|
+
readonly outlineColor: stylex.StyleXClassNameFor<"outlineColor", "var(--color-accent)" | null>;
|
|
64
79
|
readonly outlineOffset: stylex.StyleXClassNameFor<"outlineOffset", "0" | "3px">;
|
|
65
80
|
}>;
|
|
66
81
|
readonly publishFocusVisibleVars: Readonly<{
|
|
67
|
-
readonly '--_focus-outline': stylex.StyleXClassNameFor<"--_focus-outline",
|
|
82
|
+
readonly '--_focus-outline': stylex.StyleXClassNameFor<"--_focus-outline", string>;
|
|
68
83
|
readonly '--_focus-outline-offset': stylex.StyleXClassNameFor<"--_focus-outline-offset", "0" | "3px">;
|
|
69
84
|
}>;
|
|
70
85
|
readonly focusWithinOrPublished: Readonly<{
|
|
71
|
-
readonly outline: stylex.StyleXClassNameFor<"outline",
|
|
86
|
+
readonly outline: stylex.StyleXClassNameFor<"outline", string>;
|
|
72
87
|
readonly outlineOffset: stylex.StyleXClassNameFor<"outlineOffset", "3px" | "var(--_focus-outline-offset, 0)">;
|
|
73
88
|
}>;
|
|
74
89
|
}>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"focusOutline.stylex.d.ts","sourceRoot":"","sources":["../../src/utils/focusOutline.stylex.ts"],"names":[],"mappings":"AAEA
|
|
1
|
+
{"version":3,"file":"focusOutline.stylex.d.ts","sourceRoot":"","sources":["../../src/utils/focusOutline.stylex.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,MAAM,MAAM,kBAAkB,CAAC;AAS3C;;;;;;;;;GASG;AACH,eAAO,MAAM,aAAa,QAAyE,CAAC;AAgBpG;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,mBAAmB;;;;;CAKtB,CAAC;AAEX,+EAA+E;AAC/E,eAAO,MAAM,wBAAwB;;;;;CAK3B,CAAC;AAEX,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;EAmD7B,CAAC;AAIH,KAAK,cAAc,GAAG,OAAO,CAAC;AAiB9B,eAAO,MAAM,iBAAiB;uCAdT,cAAc,EAAE;;;;;;;sCAAhB,cAAc,EAAE;;;;;;;kDAAhB,cAAc,EAAE;;;;;;;iDAAhB,cAAc,EAAE;;;;;;;CAuB3B,CAAC"}
|
|
@@ -7,28 +7,41 @@
|
|
|
7
7
|
* @position Internal utility for consistent keyboard focus outlines across core components
|
|
8
8
|
*
|
|
9
9
|
* Centralizes the standard Astryx focus outline, shown only for keyboard focus.
|
|
10
|
-
* Every focusable surface drew the same 2px accent ring
|
|
11
|
-
*
|
|
10
|
+
* Every focusable surface drew the same 2px accent ring already; writing it per
|
|
11
|
+
* component meant dozens of identical definitions to keep in step, and they did
|
|
12
|
+
* not stay in step — offsets drifted and one ring was a border-width thick.
|
|
12
13
|
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
-
*
|
|
19
|
-
*
|
|
14
|
+
* Every ring in core and lab is drawn from here, with one exception recorded in
|
|
15
|
+
* Switch: its condition is a component-scoped ancestor marker, which cannot be
|
|
16
|
+
* shared without leaking focus state between components. A component may still
|
|
17
|
+
* override the OFFSET (a ring that must sit inset, or clear of a field border);
|
|
18
|
+
* width, style and color are not restated anywhere.
|
|
19
|
+
*
|
|
20
|
+
* Every value comes from the `--focus-outline-*` tokens, which is how a theme
|
|
21
|
+
* restyles the ring: one override reaches every component at once. The
|
|
22
|
+
* `:focus-visible` condition is not themeable and stays here, so a theme can
|
|
23
|
+
* change what the ring looks like but cannot show it to pointer users.
|
|
20
24
|
*/
|
|
21
25
|
|
|
22
26
|
import * as stylex from '@stylexjs/stylex';
|
|
23
27
|
import "../theme/tokens.stylex.js";
|
|
24
|
-
import {
|
|
25
|
-
const FOCUS_OUTLINE_WIDTH = '
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
28
|
+
import { focusVars } from "../theme/tokens.stylex.js";
|
|
29
|
+
const FOCUS_OUTLINE_WIDTH = focusVars['--focus-outline-width'];
|
|
30
|
+
const FOCUS_OUTLINE_STYLE = focusVars['--focus-outline-style'];
|
|
31
|
+
const FOCUS_OUTLINE_COLOR = focusVars['--focus-outline-color'];
|
|
32
|
+
const FOCUS_OUTLINE_OFFSET = focusVars['--focus-outline-offset'];
|
|
33
|
+
|
|
34
|
+
/**
|
|
35
|
+
* The ring as a single `outline` value, for reading it at runtime — an
|
|
36
|
+
* assertion, or an element styled imperatively.
|
|
37
|
+
*
|
|
38
|
+
* NOT usable inside another file's `stylex.create`: StyleX resolves imported
|
|
39
|
+
* `defineVars` and nothing else, so a component whose condition
|
|
40
|
+
* {@link focusOutlineStyles} cannot express (Switch, whose ring keys off a
|
|
41
|
+
* component-scoped ancestor marker) has to compose the `focusVars` tokens
|
|
42
|
+
* itself.
|
|
43
|
+
*/
|
|
44
|
+
export const FOCUS_OUTLINE = `${FOCUS_OUTLINE_WIDTH} ${FOCUS_OUTLINE_STYLE} ${FOCUS_OUTLINE_COLOR}`;
|
|
32
45
|
|
|
33
46
|
/**
|
|
34
47
|
* Written as longhands rather than the `outline` shorthand.
|
|
@@ -40,7 +53,7 @@ const FOCUS_OUTLINE_COLOR = colorVars['--color-accent'];
|
|
|
40
53
|
*/
|
|
41
54
|
const focusOutlineLonghands = {
|
|
42
55
|
outlineWidth: FOCUS_OUTLINE_WIDTH,
|
|
43
|
-
outlineStyle:
|
|
56
|
+
outlineStyle: FOCUS_OUTLINE_STYLE,
|
|
44
57
|
outlineColor: FOCUS_OUTLINE_COLOR
|
|
45
58
|
};
|
|
46
59
|
|
|
@@ -53,8 +66,8 @@ const focusOutlineLonghands = {
|
|
|
53
66
|
* Longhands, not the `outline` shorthand, for the same reason the styles are:
|
|
54
67
|
* a shorthand resets every longhand it covers, so a caller could not re-color
|
|
55
68
|
* the ring without restating its width and style. Split, each part is
|
|
56
|
-
* independently overridable — and
|
|
57
|
-
*
|
|
69
|
+
* independently overridable — and every part stays a var, so a theme's
|
|
70
|
+
* `--focus-outline-*` overrides still flow through.
|
|
58
71
|
*
|
|
59
72
|
* Keys are camelCase to match `HTMLElement.style`, so this spreads straight
|
|
60
73
|
* onto an element:
|
|
@@ -66,7 +79,7 @@ const focusOutlineLonghands = {
|
|
|
66
79
|
*/
|
|
67
80
|
export const FOCUS_OUTLINE_PARTS = {
|
|
68
81
|
outlineWidth: FOCUS_OUTLINE_WIDTH,
|
|
69
|
-
outlineStyle:
|
|
82
|
+
outlineStyle: FOCUS_OUTLINE_STYLE,
|
|
70
83
|
outlineColor: FOCUS_OUTLINE_COLOR,
|
|
71
84
|
outlineOffset: FOCUS_OUTLINE_OFFSET
|
|
72
85
|
};
|
|
@@ -80,27 +93,27 @@ export const FOCUS_OUTLINE_PARTS_NONE = {
|
|
|
80
93
|
};
|
|
81
94
|
export const focusOutlineStyles = {
|
|
82
95
|
focusVisible: {
|
|
83
|
-
kMeerF: "x1k57tk5
|
|
84
|
-
k3XXqK: "x1t137rt
|
|
85
|
-
kjBf7l: "
|
|
86
|
-
kInvED: "x1wfwxd8
|
|
96
|
+
kMeerF: "x1k57tk5 x1vidyx5",
|
|
97
|
+
k3XXqK: "x1t137rt x1jhp3zv",
|
|
98
|
+
kjBf7l: "xx47ajj",
|
|
99
|
+
kInvED: "x1wfwxd8 x1vwwbsn",
|
|
87
100
|
$$css: true
|
|
88
101
|
},
|
|
89
102
|
focusWithin: {
|
|
90
|
-
kMeerF: "x1k57tk5
|
|
91
|
-
k3XXqK: "x1t137rt
|
|
92
|
-
kjBf7l: "
|
|
93
|
-
kInvED: "x1wfwxd8
|
|
103
|
+
kMeerF: "x1k57tk5 x11j6mr8",
|
|
104
|
+
k3XXqK: "x1t137rt xciu248",
|
|
105
|
+
kjBf7l: "x1uy843r",
|
|
106
|
+
kInvED: "x1wfwxd8 x1jumodi",
|
|
94
107
|
$$css: true
|
|
95
108
|
},
|
|
96
109
|
publishFocusVisibleVars: {
|
|
97
|
-
"--_focus-outline": "x17wzz1v
|
|
98
|
-
"--_focus-outline-offset": "xgzxwq1
|
|
110
|
+
"--_focus-outline": "x17wzz1v xqih627",
|
|
111
|
+
"--_focus-outline-offset": "xgzxwq1 xqchwus",
|
|
99
112
|
$$css: true
|
|
100
113
|
},
|
|
101
114
|
focusWithinOrPublished: {
|
|
102
|
-
kI3sdo: "xaw4jrz
|
|
103
|
-
kInvED: "x1kvmbwa
|
|
115
|
+
kI3sdo: "xaw4jrz x16s19ga",
|
|
116
|
+
kInvED: "x1kvmbwa x1jumodi",
|
|
104
117
|
$$css: true
|
|
105
118
|
}
|
|
106
119
|
};
|
package/dist/utils/index.d.ts
CHANGED
|
@@ -29,4 +29,5 @@ export { parseHex, parseRgb, parseColor, formatHex, formatColor, toGLFloats, } f
|
|
|
29
29
|
export type { RGBA } from './color';
|
|
30
30
|
export { devWarn, devError, warnOnce, formatDevMessage } from './devWarning';
|
|
31
31
|
export { rtlStyles } from './rtlStyles';
|
|
32
|
+
export { focusOutlineStyles, focusOutlineProps } from './focusOutline.stylex';
|
|
32
33
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AAEH,YAAY,EAAC,SAAS,EAAC,MAAM,SAAS,CAAC;AAEvC,YAAY,EAAC,aAAa,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAC,MAAM,aAAa,CAAC;AAEhF,OAAO,EACL,cAAc,EACd,SAAS,EACT,QAAQ,EACR,gBAAgB,GACjB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,cAAc,EACd,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,cAAc,EACd,kBAAkB,EAClB,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,EAClB,oBAAoB,EACpB,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,YAAY,EACZ,YAAY,EACZ,kBAAkB,EAClB,wBAAwB,EACxB,uBAAuB,EACvB,8BAA8B,EAC9B,sBAAsB,EACtB,eAAe,EACf,gBAAgB,EAChB,wBAAwB,EACxB,8BAA8B,EAC9B,gBAAgB,EAChB,sBAAsB,EACtB,iBAAiB,EACjB,2BAA2B,EAC3B,0BAA0B,GAC3B,MAAM,aAAa,CAAC;AACrB,YAAY,EAAC,gBAAgB,EAAC,MAAM,aAAa,CAAC;AAElD,OAAO,EACL,YAAY,EACZ,aAAa,EACb,oBAAoB,EACpB,oBAAoB,EACpB,cAAc,EACd,WAAW,EACX,aAAa,EACb,SAAS,EACT,UAAU,EACV,mBAAmB,GACpB,MAAM,cAAc,CAAC;AACtB,YAAY,EAAC,aAAa,EAAE,UAAU,EAAC,MAAM,cAAc,CAAC;AAE5D,OAAO,EAAC,aAAa,EAAC,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAC,MAAM,EAAE,KAAK,GAAG,EAAE,KAAK,WAAW,EAAC,MAAM,UAAU,CAAC;AAE5D,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAC;AACxC,OAAO,EAAC,SAAS,EAAC,MAAM,aAAa,CAAC;AACtC,OAAO,EAAC,eAAe,EAAC,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAC,oBAAoB,EAAC,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAC,UAAU,EAAE,mBAAmB,EAAC,MAAM,cAAc,CAAC;AAC7D,YAAY,EACV,UAAU,EACV,UAAU,EACV,mBAAmB,EACnB,UAAU,GACX,MAAM,cAAc,CAAC;AACtB,OAAO,EAAC,UAAU,EAAE,YAAY,EAAC,MAAM,cAAc,CAAC;AACtD,YAAY,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAC,aAAa,EAAE,eAAe,EAAC,MAAM,wBAAwB,CAAC;AACtE,OAAO,EAAC,YAAY,EAAC,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAC,YAAY,EAAC,MAAM,aAAa,CAAC;AACzC,YAAY,EAAC,SAAS,EAAE,mBAAmB,EAAC,MAAM,aAAa,CAAC;AAEhE,OAAO,EACL,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,SAAS,EACT,WAAW,EACX,UAAU,GACX,MAAM,SAAS,CAAC;AACjB,YAAY,EAAC,IAAI,EAAC,MAAM,SAAS,CAAC;AAElC,OAAO,EAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,gBAAgB,EAAC,MAAM,cAAc,CAAC;AAE3E,OAAO,EAAC,SAAS,EAAC,MAAM,aAAa,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AAEH,YAAY,EAAC,SAAS,EAAC,MAAM,SAAS,CAAC;AAEvC,YAAY,EAAC,aAAa,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAC,MAAM,aAAa,CAAC;AAEhF,OAAO,EACL,cAAc,EACd,SAAS,EACT,QAAQ,EACR,gBAAgB,GACjB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,cAAc,EACd,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,cAAc,EACd,kBAAkB,EAClB,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,EAClB,oBAAoB,EACpB,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,YAAY,EACZ,YAAY,EACZ,kBAAkB,EAClB,wBAAwB,EACxB,uBAAuB,EACvB,8BAA8B,EAC9B,sBAAsB,EACtB,eAAe,EACf,gBAAgB,EAChB,wBAAwB,EACxB,8BAA8B,EAC9B,gBAAgB,EAChB,sBAAsB,EACtB,iBAAiB,EACjB,2BAA2B,EAC3B,0BAA0B,GAC3B,MAAM,aAAa,CAAC;AACrB,YAAY,EAAC,gBAAgB,EAAC,MAAM,aAAa,CAAC;AAElD,OAAO,EACL,YAAY,EACZ,aAAa,EACb,oBAAoB,EACpB,oBAAoB,EACpB,cAAc,EACd,WAAW,EACX,aAAa,EACb,SAAS,EACT,UAAU,EACV,mBAAmB,GACpB,MAAM,cAAc,CAAC;AACtB,YAAY,EAAC,aAAa,EAAE,UAAU,EAAC,MAAM,cAAc,CAAC;AAE5D,OAAO,EAAC,aAAa,EAAC,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAC,MAAM,EAAE,KAAK,GAAG,EAAE,KAAK,WAAW,EAAC,MAAM,UAAU,CAAC;AAE5D,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAC;AACxC,OAAO,EAAC,SAAS,EAAC,MAAM,aAAa,CAAC;AACtC,OAAO,EAAC,eAAe,EAAC,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAC,oBAAoB,EAAC,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAC,UAAU,EAAE,mBAAmB,EAAC,MAAM,cAAc,CAAC;AAC7D,YAAY,EACV,UAAU,EACV,UAAU,EACV,mBAAmB,EACnB,UAAU,GACX,MAAM,cAAc,CAAC;AACtB,OAAO,EAAC,UAAU,EAAE,YAAY,EAAC,MAAM,cAAc,CAAC;AACtD,YAAY,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAC,aAAa,EAAE,eAAe,EAAC,MAAM,wBAAwB,CAAC;AACtE,OAAO,EAAC,YAAY,EAAC,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAC,YAAY,EAAC,MAAM,aAAa,CAAC;AACzC,YAAY,EAAC,SAAS,EAAE,mBAAmB,EAAC,MAAM,aAAa,CAAC;AAEhE,OAAO,EACL,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,SAAS,EACT,WAAW,EACX,UAAU,GACX,MAAM,SAAS,CAAC;AACjB,YAAY,EAAC,IAAI,EAAC,MAAM,SAAS,CAAC;AAElC,OAAO,EAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,gBAAgB,EAAC,MAAM,cAAc,CAAC;AAE3E,OAAO,EAAC,SAAS,EAAC,MAAM,aAAa,CAAC;AAItC,OAAO,EAAC,kBAAkB,EAAE,iBAAiB,EAAC,MAAM,uBAAuB,CAAC"}
|
package/dist/utils/index.js
CHANGED
|
@@ -23,4 +23,8 @@ export { isRenderable } from "./isRenderable.js";
|
|
|
23
23
|
export { getInputARIA } from "./inputAria.js";
|
|
24
24
|
export { parseHex, parseRgb, parseColor, formatHex, formatColor, toGLFloats } from "./color.js";
|
|
25
25
|
export { devWarn, devError, warnOnce, formatDevMessage } from "./devWarning.js";
|
|
26
|
-
export { rtlStyles } from "./rtlStyles.js";
|
|
26
|
+
export { rtlStyles } from "./rtlStyles.js";
|
|
27
|
+
|
|
28
|
+
// The shared focus ring, exported for @astryxdesign/lab — same reason
|
|
29
|
+
// rtlStyles is: a style that must be identical across packages, not copied.
|
|
30
|
+
export { focusOutlineStyles, focusOutlineProps } from "./focusOutline.stylex.js";
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file interactionModality.ts
|
|
3
|
+
* @input Global pointerdown/keydown events
|
|
4
|
+
* @output `getInteractionModality()` — how the user last interacted
|
|
5
|
+
* @position Internal utility; used where `:focus-visible` alone is too broad
|
|
6
|
+
*
|
|
7
|
+
* `:focus-visible` is the right selector for a focus ring and should stay the
|
|
8
|
+
* condition that draws one. It is not, on its own, "focused by keyboard":
|
|
9
|
+
* per CSS Selectors 4 a pointer-focused element that supports text entry
|
|
10
|
+
* matches it too, deliberately, so that a clicked text field still shows where
|
|
11
|
+
* typing will go. Measured in Chromium — a bare `<input>` clicked with a mouse
|
|
12
|
+
* matches `:focus-visible`.
|
|
13
|
+
*
|
|
14
|
+
* A component that wants a ring for keyboard focus ONLY therefore needs one bit
|
|
15
|
+
* `:focus-visible` cannot give it: which device moved focus. This records that,
|
|
16
|
+
* to be used as a gate ALONGSIDE `:focus-visible`, never as a replacement for
|
|
17
|
+
* it — the browser's heuristic still decides everything else, including
|
|
18
|
+
* `focus({focusVisible: true})`.
|
|
19
|
+
*
|
|
20
|
+
* Listeners are registered once for the document, in the capture phase so they
|
|
21
|
+
* run before the focus they explain, and are never removed: two passive
|
|
22
|
+
* listeners for the whole app, versus a pair per mounted input.
|
|
23
|
+
*/
|
|
24
|
+
export type InteractionModality = 'keyboard' | 'pointer';
|
|
25
|
+
/**
|
|
26
|
+
* Start tracking, once per document. Safe to call repeatedly and on the server
|
|
27
|
+
* (where it does nothing).
|
|
28
|
+
*/
|
|
29
|
+
export declare function trackInteractionModality(): void;
|
|
30
|
+
/** How the user last interacted with the page. */
|
|
31
|
+
export declare function getInteractionModality(): InteractionModality;
|
|
32
|
+
/** Test-only: restore the initial state between cases. */
|
|
33
|
+
export declare function __resetInteractionModalityForTest(): void;
|
|
34
|
+
//# sourceMappingURL=interactionModality.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"interactionModality.d.ts","sourceRoot":"","sources":["../../src/utils/interactionModality.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,MAAM,MAAM,mBAAmB,GAAG,UAAU,GAAG,SAAS,CAAC;AAoBzD;;;GAGG;AACH,wBAAgB,wBAAwB,IAAI,IAAI,CAa/C;AAED,kDAAkD;AAClD,wBAAgB,sBAAsB,IAAI,mBAAmB,CAE5D;AAED,0DAA0D;AAC1D,wBAAgB,iCAAiC,IAAI,IAAI,CAExD"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
// Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @file interactionModality.ts
|
|
5
|
+
* @input Global pointerdown/keydown events
|
|
6
|
+
* @output `getInteractionModality()` — how the user last interacted
|
|
7
|
+
* @position Internal utility; used where `:focus-visible` alone is too broad
|
|
8
|
+
*
|
|
9
|
+
* `:focus-visible` is the right selector for a focus ring and should stay the
|
|
10
|
+
* condition that draws one. It is not, on its own, "focused by keyboard":
|
|
11
|
+
* per CSS Selectors 4 a pointer-focused element that supports text entry
|
|
12
|
+
* matches it too, deliberately, so that a clicked text field still shows where
|
|
13
|
+
* typing will go. Measured in Chromium — a bare `<input>` clicked with a mouse
|
|
14
|
+
* matches `:focus-visible`.
|
|
15
|
+
*
|
|
16
|
+
* A component that wants a ring for keyboard focus ONLY therefore needs one bit
|
|
17
|
+
* `:focus-visible` cannot give it: which device moved focus. This records that,
|
|
18
|
+
* to be used as a gate ALONGSIDE `:focus-visible`, never as a replacement for
|
|
19
|
+
* it — the browser's heuristic still decides everything else, including
|
|
20
|
+
* `focus({focusVisible: true})`.
|
|
21
|
+
*
|
|
22
|
+
* Listeners are registered once for the document, in the capture phase so they
|
|
23
|
+
* run before the focus they explain, and are never removed: two passive
|
|
24
|
+
* listeners for the whole app, versus a pair per mounted input.
|
|
25
|
+
*/
|
|
26
|
+
|
|
27
|
+
// Default to keyboard: with no interaction yet, focus arrived programmatically
|
|
28
|
+
// or from the browser restoring it, and showing a ring is the safe error.
|
|
29
|
+
let modality = 'keyboard';
|
|
30
|
+
let isListening = false;
|
|
31
|
+
function onPointerDown() {
|
|
32
|
+
modality = 'pointer';
|
|
33
|
+
}
|
|
34
|
+
function onKeyDown(event) {
|
|
35
|
+
// Modifier-only presses are not navigation — holding Shift before a click
|
|
36
|
+
// must not turn that click into "keyboard".
|
|
37
|
+
if (event.metaKey || event.altKey || event.ctrlKey) {
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
modality = 'keyboard';
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
/**
|
|
44
|
+
* Start tracking, once per document. Safe to call repeatedly and on the server
|
|
45
|
+
* (where it does nothing).
|
|
46
|
+
*/
|
|
47
|
+
export function trackInteractionModality() {
|
|
48
|
+
if (isListening || typeof document === 'undefined') {
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
isListening = true;
|
|
52
|
+
document.addEventListener('pointerdown', onPointerDown, {
|
|
53
|
+
capture: true,
|
|
54
|
+
passive: true
|
|
55
|
+
});
|
|
56
|
+
document.addEventListener('keydown', onKeyDown, {
|
|
57
|
+
capture: true,
|
|
58
|
+
passive: true
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
/** How the user last interacted with the page. */
|
|
63
|
+
export function getInteractionModality() {
|
|
64
|
+
return modality;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
/** Test-only: restore the initial state between cases. */
|
|
68
|
+
export function __resetInteractionModalityForTest() {
|
|
69
|
+
modality = 'keyboard';
|
|
70
|
+
}
|