@optiaxiom/globals 1.1.0 → 1.1.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/README.md +11 -3
- package/dist/cjs/index.js +4 -0
- package/dist/esm/index.js +1 -0
- package/dist/esm/surface-context.js +5 -0
- package/dist/index.d.ts +83 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,11 +1,19 @@
|
|
|
1
|
-
#
|
|
1
|
+
# `@optiaxiom/globals`
|
|
2
|
+
|
|
3
|
+
Design tokens and shared React contexts for Axiom.
|
|
2
4
|
|
|
3
5
|
## Installation
|
|
4
6
|
|
|
5
7
|
```sh
|
|
6
|
-
|
|
8
|
+
npm install @optiaxiom/globals
|
|
7
9
|
```
|
|
8
10
|
|
|
9
11
|
## Usage
|
|
10
12
|
|
|
11
|
-
This
|
|
13
|
+
This package contains design tokens and shared React contexts used by `@optiaxiom/react`. It's primarily intended for advanced use cases like module federation, where the globals package should be shared across federated modules (similar to React itself).
|
|
14
|
+
|
|
15
|
+
**Note:** Most developers will never need to install or use this package directly. It's automatically included when you install `@optiaxiom/react`.
|
|
16
|
+
|
|
17
|
+
### Module Federation
|
|
18
|
+
|
|
19
|
+
For module federation configuration, see our [Module Federation guide](https://optimizely-axiom.github.io/optiaxiom/guides/module-federation/).
|
package/dist/cjs/index.js
CHANGED
|
@@ -8,6 +8,8 @@ const AxiomVersionContext = react.createContext(void 0);
|
|
|
8
8
|
|
|
9
9
|
const [ModalProvider, useModalContext] = reactContext.createContext("@optiaxiom/react/Modal", { shardRef: { current: null } });
|
|
10
10
|
|
|
11
|
+
const [unstable_SurfaceProvider, unstable_useSurfaceContext] = reactContext.createContext("@optiaxiom/globals/Surface", null);
|
|
12
|
+
|
|
11
13
|
var theme = {borderRadius:{xs:'var(--ax-borderRadius-xs)',sm:'var(--ax-borderRadius-sm)',md:'var(--ax-borderRadius-md)',lg:'var(--ax-borderRadius-lg)',xl:'var(--ax-borderRadius-xl)',full:'var(--ax-borderRadius-full)'},boxShadow:{sm:'var(--ax-boxShadow-sm)',md:'var(--ax-boxShadow-md)',lg:'var(--ax-boxShadow-lg)'},colors:{'bg.accent':'var(--ax-colors-bg-accent)','bg.accent.hovered':'var(--ax-colors-bg-accent-hovered)','bg.accent.light':'var(--ax-colors-bg-accent-light)','bg.accent.pressed':'var(--ax-colors-bg-accent-pressed)','bg.accent.subtle':'var(--ax-colors-bg-accent-subtle)','bg.avatar.neutral':'var(--ax-colors-bg-avatar-neutral)','bg.avatar.purple':'var(--ax-colors-bg-avatar-purple)','bg.default':'var(--ax-colors-bg-default)','bg.default.hovered':'var(--ax-colors-bg-default-hovered)','bg.default.inverse':'var(--ax-colors-bg-default-inverse)','bg.default.inverse.hovered':'var(--ax-colors-bg-default-inverse-hovered)','bg.default.inverse.pressed':'var(--ax-colors-bg-default-inverse-pressed)','bg.default.pressed':'var(--ax-colors-bg-default-pressed)','bg.error':'var(--ax-colors-bg-error)','bg.error.hovered':'var(--ax-colors-bg-error-hovered)','bg.error.light':'var(--ax-colors-bg-error-light)','bg.error.pressed':'var(--ax-colors-bg-error-pressed)','bg.error.subtle':'var(--ax-colors-bg-error-subtle)','bg.error.subtlest':'var(--ax-colors-bg-error-subtlest)','bg.information':'var(--ax-colors-bg-information)','bg.information.light':'var(--ax-colors-bg-information-light)','bg.information.subtle':'var(--ax-colors-bg-information-subtle)','bg.overlay':'var(--ax-colors-bg-overlay)','bg.page':'var(--ax-colors-bg-page)','bg.secondary':'var(--ax-colors-bg-secondary)','bg.secondary.hovered':'var(--ax-colors-bg-secondary-hovered)','bg.spinner.default':'var(--ax-colors-bg-spinner-default)','bg.spinner.inverse':'var(--ax-colors-bg-spinner-inverse)','bg.success':'var(--ax-colors-bg-success)','bg.success.hovered':'var(--ax-colors-bg-success-hovered)','bg.success.light':'var(--ax-colors-bg-success-light)','bg.success.subtle':'var(--ax-colors-bg-success-subtle)','bg.tertiary':'var(--ax-colors-bg-tertiary)','bg.tertiary.hovered':'var(--ax-colors-bg-tertiary-hovered)','bg.warning':'var(--ax-colors-bg-warning)','bg.warning.hovered':'var(--ax-colors-bg-warning-hovered)','bg.warning.light':'var(--ax-colors-bg-warning-light)','bg.warning.subtle':'var(--ax-colors-bg-warning-subtle)','border.accent':'var(--ax-colors-border-accent)','border.control':'var(--ax-colors-border-control)','border.control.hovered':'var(--ax-colors-border-control-hovered)','border.default':'var(--ax-colors-border-default)','border.disabled':'var(--ax-colors-border-disabled)','border.error':'var(--ax-colors-border-error)','border.focus':'var(--ax-colors-border-focus)','border.focus.error':'var(--ax-colors-border-focus-error)','border.secondary':'var(--ax-colors-border-secondary)','border.success':'var(--ax-colors-border-success)','border.tertiary':'var(--ax-colors-border-tertiary)','border.warning':'var(--ax-colors-border-warning)','fg.accent':'var(--ax-colors-fg-accent)','fg.accent.hovered':'var(--ax-colors-fg-accent-hovered)','fg.accent.strong':'var(--ax-colors-fg-accent-strong)','fg.avatar.neutral':'var(--ax-colors-fg-avatar-neutral)','fg.avatar.purple':'var(--ax-colors-fg-avatar-purple)','fg.default':'var(--ax-colors-fg-default)','fg.default.inverse':'var(--ax-colors-fg-default-inverse)','fg.disabled':'var(--ax-colors-fg-disabled)','fg.error':'var(--ax-colors-fg-error)','fg.error.hovered':'var(--ax-colors-fg-error-hovered)','fg.error.light':'var(--ax-colors-fg-error-light)','fg.error.strong':'var(--ax-colors-fg-error-strong)','fg.information':'var(--ax-colors-fg-information)','fg.information.light':'var(--ax-colors-fg-information-light)','fg.information.strong':'var(--ax-colors-fg-information-strong)','fg.link.default':'var(--ax-colors-fg-link-default)','fg.link.default.hovered':'var(--ax-colors-fg-link-default-hovered)','fg.link.inverse':'var(--ax-colors-fg-link-inverse)','fg.link.subtle':'var(--ax-colors-fg-link-subtle)','fg.link.visited':'var(--ax-colors-fg-link-visited)','fg.secondary':'var(--ax-colors-fg-secondary)','fg.spinner.default':'var(--ax-colors-fg-spinner-default)','fg.spinner.inverse':'var(--ax-colors-fg-spinner-inverse)','fg.success':'var(--ax-colors-fg-success)','fg.success.hovered':'var(--ax-colors-fg-success-hovered)','fg.success.light':'var(--ax-colors-fg-success-light)','fg.success.strong':'var(--ax-colors-fg-success-strong)','fg.tertiary':'var(--ax-colors-fg-tertiary)','fg.warning':'var(--ax-colors-fg-warning)','fg.warning.hovered':'var(--ax-colors-fg-warning-hovered)','fg.warning.inverse':'var(--ax-colors-fg-warning-inverse)','fg.warning.light':'var(--ax-colors-fg-warning-light)','fg.warning.strong':'var(--ax-colors-fg-warning-strong)','fg.white':'var(--ax-colors-fg-white)'},duration:{sm:'var(--ax-duration-sm)',md:'var(--ax-duration-md)',lg:'var(--ax-duration-lg)'},fontFamily:{mono:'var(--ax-fontFamily-mono)',sans:'var(--ax-fontFamily-sans)'},fontSize:{xs:{fontSize:'var(--ax-fontSize-xs-fontSize)',lineHeight:'var(--ax-fontSize-xs-lineHeight)'},sm:{fontSize:'var(--ax-fontSize-sm-fontSize)',lineHeight:'var(--ax-fontSize-sm-lineHeight)'},md:{fontSize:'var(--ax-fontSize-md-fontSize)',lineHeight:'var(--ax-fontSize-md-lineHeight)'},lg:{fontSize:'var(--ax-fontSize-lg-fontSize)',lineHeight:'var(--ax-fontSize-lg-lineHeight)'},xl:{fontSize:'var(--ax-fontSize-xl-fontSize)',lineHeight:'var(--ax-fontSize-xl-lineHeight)'},'2xl':{fontSize:'var(--ax-fontSize-2xl-fontSize)',lineHeight:'var(--ax-fontSize-2xl-lineHeight)'},'3xl':{fontSize:'var(--ax-fontSize-3xl-fontSize)',lineHeight:'var(--ax-fontSize-3xl-lineHeight)'},'4xl':{fontSize:'var(--ax-fontSize-4xl-fontSize)',lineHeight:'var(--ax-fontSize-4xl-lineHeight)'}},maxSize:{xs:'var(--ax-maxSize-xs)',sm:'var(--ax-maxSize-sm)',md:'var(--ax-maxSize-md)',lg:'var(--ax-maxSize-lg)'},screens:{sm:'var(--ax-screens-sm)',md:'var(--ax-screens-md)'},size:{'2xs':'var(--ax-size-2xs)',xs:'var(--ax-size-xs)',sm:'var(--ax-size-sm)',md:'var(--ax-size-md)',lg:'var(--ax-size-lg)',xl:'var(--ax-size-xl)','3xl':'var(--ax-size-3xl)'},zIndex:{popover:'var(--ax-zIndex-popover)',toast:'var(--ax-zIndex-toast)',tooltip:'var(--ax-zIndex-tooltip)'}};
|
|
12
14
|
|
|
13
15
|
const [ToastProviderProvider, useToastProviderContext] = reactContext.createContext("@optiaxiom/react/ToastProvider");
|
|
@@ -361,5 +363,7 @@ exports.createToaster = createToaster;
|
|
|
361
363
|
exports.theme = theme;
|
|
362
364
|
exports.toaster = toaster;
|
|
363
365
|
exports.tokens = tokens;
|
|
366
|
+
exports.unstable_SurfaceProvider = unstable_SurfaceProvider;
|
|
367
|
+
exports.unstable_useSurfaceContext = unstable_useSurfaceContext;
|
|
364
368
|
exports.useModalContext = useModalContext;
|
|
365
369
|
exports.useToastProviderContext = useToastProviderContext;
|
package/dist/esm/index.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export { AxiomAuthContext, AxiomVersionContext } from './context.js';
|
|
2
2
|
export { ModalProvider, useModalContext } from './modal-context.js';
|
|
3
|
+
export { unstable_SurfaceProvider, unstable_useSurfaceContext } from './surface-context.js';
|
|
3
4
|
export { theme } from './theme-css.js';
|
|
4
5
|
export { ToastProviderProvider, useToastProviderContext } from './toast-context.js';
|
|
5
6
|
export { createToaster, toaster } from './toaster.js';
|
package/dist/index.d.ts
CHANGED
|
@@ -26,6 +26,88 @@ declare const useModalContext: (consumerName: string) => {
|
|
|
26
26
|
shardRef: RefObject<HTMLElement>;
|
|
27
27
|
};
|
|
28
28
|
|
|
29
|
+
type Surface<T extends Record<string, unknown> | undefined = Record<string, unknown> | undefined> = {
|
|
30
|
+
/**
|
|
31
|
+
* Optional data associated with this surface.
|
|
32
|
+
*/
|
|
33
|
+
data?: T;
|
|
34
|
+
/**
|
|
35
|
+
* The surface name (used in surface path).
|
|
36
|
+
*/
|
|
37
|
+
name: string;
|
|
38
|
+
/**
|
|
39
|
+
* The surface type.
|
|
40
|
+
*/
|
|
41
|
+
type: "action" | "cards" | "collection" | "page" | "product" | "property" | "resource" | "tab";
|
|
42
|
+
};
|
|
43
|
+
type SurfaceContextValue = {
|
|
44
|
+
accept: (suggestionId: string) => void;
|
|
45
|
+
executeTool: (name: string, parameters: unknown) => Promise<void> | void;
|
|
46
|
+
metadata: Record<string, Omit<Surface, "name">>;
|
|
47
|
+
name: string;
|
|
48
|
+
pageViewId: string | undefined;
|
|
49
|
+
path: string;
|
|
50
|
+
reject: (suggestionId: string) => void;
|
|
51
|
+
renderSuggestionValue?: (value: unknown) => React.ReactNode;
|
|
52
|
+
suggestionPopover: {
|
|
53
|
+
register: () => () => void;
|
|
54
|
+
registered: boolean;
|
|
55
|
+
};
|
|
56
|
+
suggestions: SurfaceSuggestion[];
|
|
57
|
+
track: (interaction: SurfaceInteraction, metadata?: Record<string, Omit<Surface, "name">>) => void;
|
|
58
|
+
type: Surface["type"];
|
|
59
|
+
};
|
|
60
|
+
type SurfaceInteraction = {
|
|
61
|
+
id?: string;
|
|
62
|
+
} & ({
|
|
63
|
+
checked: boolean;
|
|
64
|
+
name: "toggled";
|
|
65
|
+
} | {
|
|
66
|
+
name: "added";
|
|
67
|
+
value: unknown;
|
|
68
|
+
} | {
|
|
69
|
+
name: "blurred";
|
|
70
|
+
} | {
|
|
71
|
+
name: "changed";
|
|
72
|
+
value: unknown;
|
|
73
|
+
} | {
|
|
74
|
+
name: "focused";
|
|
75
|
+
} | {
|
|
76
|
+
name: "invoked";
|
|
77
|
+
} | {
|
|
78
|
+
name: "removed";
|
|
79
|
+
value: unknown;
|
|
80
|
+
} | {
|
|
81
|
+
name: "viewed";
|
|
82
|
+
});
|
|
83
|
+
type SurfaceSuggestion = {
|
|
84
|
+
id: string;
|
|
85
|
+
surface: string;
|
|
86
|
+
} & ({
|
|
87
|
+
cards: Array<{
|
|
88
|
+
data: unknown;
|
|
89
|
+
id: string;
|
|
90
|
+
name: string;
|
|
91
|
+
reason: string;
|
|
92
|
+
}>;
|
|
93
|
+
type: "cards";
|
|
94
|
+
} | {
|
|
95
|
+
reason: string;
|
|
96
|
+
type: "value";
|
|
97
|
+
value: unknown;
|
|
98
|
+
} | {
|
|
99
|
+
text: string;
|
|
100
|
+
tool?: {
|
|
101
|
+
name: string;
|
|
102
|
+
parameters: unknown;
|
|
103
|
+
};
|
|
104
|
+
type: "message";
|
|
105
|
+
});
|
|
106
|
+
declare const unstable_SurfaceProvider: react.FC<SurfaceContextValue & {
|
|
107
|
+
children: React.ReactNode;
|
|
108
|
+
}>;
|
|
109
|
+
declare const unstable_useSurfaceContext: (consumerName: string) => SurfaceContextValue | null;
|
|
110
|
+
|
|
29
111
|
declare const theme: MapLeafNodes<{
|
|
30
112
|
readonly borderRadius: {
|
|
31
113
|
readonly xs: "2px";
|
|
@@ -414,5 +496,5 @@ declare const tokens: {
|
|
|
414
496
|
};
|
|
415
497
|
};
|
|
416
498
|
|
|
417
|
-
export { AxiomAuthContext, AxiomVersionContext, ModalProvider, ToastProviderProvider, createToaster, theme, toaster, tokens, useModalContext, useToastProviderContext };
|
|
499
|
+
export { AxiomAuthContext, AxiomVersionContext, ModalProvider, ToastProviderProvider, createToaster, theme, toaster, tokens, unstable_SurfaceProvider, unstable_useSurfaceContext, useModalContext, useToastProviderContext };
|
|
418
500
|
export type { MapLeafNodes };
|