@aggc/ui 0.7.0 → 0.8.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.
Files changed (38) hide show
  1. package/dist/chunks/UiToastProvider.vue_vue_type_script_setup_true_lang-D7OGRCU4.js +3958 -0
  2. package/dist/chunks/{pageHeader-DhPY_hNA.js → pageHeader-YZ3BV9dQ.js} +8 -5
  3. package/dist/components/UiAvatar.styles.d.ts +53 -0
  4. package/dist/components/UiAvatar.vue.d.ts +13 -0
  5. package/dist/components/UiButton.styles.d.ts +0 -3
  6. package/dist/components/UiModal.styles.d.ts +21 -0
  7. package/dist/components/UiModal.vue.d.ts +30 -0
  8. package/dist/components/UiToast.styles.d.ts +41 -0
  9. package/dist/components/UiToast.vue.d.ts +13 -0
  10. package/dist/components/UiToastProvider.vue.d.ts +13 -0
  11. package/dist/components/index.d.ts +4 -0
  12. package/dist/components.js +14 -10
  13. package/dist/composables/useToast.d.ts +27 -0
  14. package/dist/index.d.ts +1 -0
  15. package/dist/index.js +66 -61
  16. package/dist/styles/recipes/button.recipe.d.ts +0 -3
  17. package/dist/styles.js +2 -2
  18. package/dist/ui.css +364 -58
  19. package/package.json +3 -2
  20. package/src/components/UiAvatar.styles.ts +81 -0
  21. package/src/components/UiAvatar.test.ts +43 -0
  22. package/src/components/UiAvatar.vue +41 -0
  23. package/src/components/UiModal.styles.ts +126 -0
  24. package/src/components/UiModal.test.ts +64 -0
  25. package/src/components/UiModal.vue +79 -0
  26. package/src/components/UiToast.styles.ts +143 -0
  27. package/src/components/UiToast.test.ts +47 -0
  28. package/src/components/UiToast.vue +65 -0
  29. package/src/components/UiToastProvider.vue +22 -0
  30. package/src/components/index.ts +4 -0
  31. package/src/composables/useToast.ts +43 -0
  32. package/src/css/base.css +50 -1
  33. package/src/index.ts +1 -0
  34. package/src/stories/feedback/UiToast.stories.ts +72 -0
  35. package/src/stories/layout/UiModal.stories.ts +89 -0
  36. package/src/stories/primitives/UiAvatar.stories.ts +83 -0
  37. package/src/styles/recipes/button.recipe.ts +8 -4
  38. package/dist/chunks/UiSkeleton.vue_vue_type_script_setup_true_lang-Dg-HzSqj.js +0 -1201
@@ -377,10 +377,7 @@ const fr = c({
377
377
  bg: "text.error",
378
378
  color: "text.inverse",
379
379
  borderWidth: "1px",
380
- borderColor: "transparent",
381
- _dark: {
382
- color: "text.inverse"
383
- }
380
+ borderColor: "transparent"
384
381
  }
385
382
  },
386
383
  disabled: {
@@ -439,10 +436,16 @@ const fr = c({
439
436
  color: "text.error",
440
437
  borderColor: "border.danger",
441
438
  bg: "transparent",
439
+ _dark: {
440
+ color: "text.error"
441
+ },
442
442
  _hover: {
443
443
  bg: "badge.dangerBg",
444
444
  borderColor: "text.error",
445
- color: "text.error"
445
+ color: "text.error",
446
+ _dark: {
447
+ color: "text.error"
448
+ }
446
449
  }
447
450
  }
448
451
  },
@@ -0,0 +1,53 @@
1
+ export declare const uiAvatarRootClass: import("../../styled-system/types").RecipeRuntimeFn<{
2
+ size: {
3
+ sm: {
4
+ w: "8";
5
+ h: "8";
6
+ };
7
+ md: {
8
+ w: "10";
9
+ h: "10";
10
+ };
11
+ lg: {
12
+ w: "12";
13
+ h: "12";
14
+ };
15
+ xl: {
16
+ w: "14";
17
+ h: "14";
18
+ };
19
+ };
20
+ shape: {
21
+ circle: {
22
+ borderRadius: "full";
23
+ };
24
+ square: {
25
+ borderRadius: "lg";
26
+ };
27
+ };
28
+ }>;
29
+ export declare const uiAvatarImageClass: string;
30
+ export declare const uiAvatarFallbackClass: import("../../styled-system/types").RecipeRuntimeFn<{
31
+ size: {
32
+ sm: {
33
+ fontSize: "xs";
34
+ };
35
+ md: {
36
+ fontSize: "sm";
37
+ };
38
+ lg: {
39
+ fontSize: "md";
40
+ };
41
+ xl: {
42
+ fontSize: "lg";
43
+ };
44
+ };
45
+ }>;
46
+ export declare const uiAvatarIconFallbackClass: import("../../styled-system/types").RecipeRuntimeFn<{
47
+ size: {
48
+ sm: {};
49
+ md: {};
50
+ lg: {};
51
+ xl: {};
52
+ };
53
+ }>;
@@ -0,0 +1,13 @@
1
+ type __VLS_Props = {
2
+ name: string;
3
+ src?: string;
4
+ size?: "sm" | "md" | "lg" | "xl";
5
+ shape?: "circle" | "square";
6
+ };
7
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
8
+ size: "sm" | "md" | "lg" | "xl";
9
+ shape: "circle" | "square";
10
+ src: string;
11
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
12
+ declare const _default: typeof __VLS_export;
13
+ export default _default;
@@ -47,9 +47,6 @@ export declare const uiButtonClass: import("../../styled-system/types").RecipeRu
47
47
  color: "text.inverse";
48
48
  borderWidth: "1px";
49
49
  borderColor: "transparent";
50
- _dark: {
51
- color: "text.inverse";
52
- };
53
50
  };
54
51
  };
55
52
  disabled: {
@@ -0,0 +1,21 @@
1
+ export declare const uiModalOverlayClass: string;
2
+ export declare const uiModalContentClass: import("../../styled-system/types").RecipeRuntimeFn<{
3
+ size: {
4
+ sm: {
5
+ w: "380px";
6
+ };
7
+ md: {
8
+ w: "480px";
9
+ };
10
+ lg: {
11
+ w: "640px";
12
+ };
13
+ };
14
+ }>;
15
+ export declare const uiModalHeaderClass: string;
16
+ export declare const uiModalHeaderContentClass: string;
17
+ export declare const uiModalTitleClass: string;
18
+ export declare const uiModalDescriptionClass: string;
19
+ export declare const uiModalCloseClass: string;
20
+ export declare const uiModalBodyClass: string;
21
+ export declare const uiModalActionsClass: string;
@@ -0,0 +1,30 @@
1
+ type __VLS_Props = {
2
+ open: boolean;
3
+ size?: "sm" | "md" | "lg";
4
+ title: string;
5
+ description?: string;
6
+ };
7
+ declare var __VLS_62: {}, __VLS_64: {};
8
+ type __VLS_Slots = {} & {
9
+ default?: (props: typeof __VLS_62) => any;
10
+ } & {
11
+ actions?: (props: typeof __VLS_64) => any;
12
+ };
13
+ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
14
+ "update:open": (value: boolean) => any;
15
+ close: () => any;
16
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
17
+ "onUpdate:open"?: ((value: boolean) => any) | undefined;
18
+ onClose?: (() => any) | undefined;
19
+ }>, {
20
+ size: "sm" | "md" | "lg";
21
+ description: string;
22
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
23
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
24
+ declare const _default: typeof __VLS_export;
25
+ export default _default;
26
+ type __VLS_WithSlots<T, S> = T & {
27
+ new (): {
28
+ $slots: S;
29
+ };
30
+ };
@@ -0,0 +1,41 @@
1
+ export declare const uiToastViewportClass: string;
2
+ export declare const uiToastRootClass: import("../../styled-system/types").RecipeRuntimeFn<{
3
+ tone: {
4
+ success: {
5
+ borderColor: "badge.successBorder";
6
+ bg: "badge.successBg";
7
+ };
8
+ error: {
9
+ borderColor: "badge.dangerBorder";
10
+ bg: "badge.dangerBg";
11
+ };
12
+ info: {
13
+ borderColor: "badge.infoBorder";
14
+ bg: "badge.infoBg";
15
+ };
16
+ warning: {
17
+ borderColor: "badge.warningBorder";
18
+ bg: "badge.warningBg";
19
+ };
20
+ };
21
+ }>;
22
+ export declare const uiToastIconClass: import("../../styled-system/types").RecipeRuntimeFn<{
23
+ tone: {
24
+ success: {
25
+ color: "badge.successText";
26
+ };
27
+ error: {
28
+ color: "badge.dangerText";
29
+ };
30
+ info: {
31
+ color: "badge.infoText";
32
+ };
33
+ warning: {
34
+ color: "badge.warningText";
35
+ };
36
+ };
37
+ }>;
38
+ export declare const uiToastContentClass: string;
39
+ export declare const uiToastTitleClass: string;
40
+ export declare const uiToastDescriptionClass: string;
41
+ export declare const uiToastCloseClass: string;
@@ -0,0 +1,13 @@
1
+ import type { ToastTone } from "../composables/useToast";
2
+ type __VLS_Props = {
3
+ tone: ToastTone;
4
+ message: string;
5
+ title?: string;
6
+ duration?: number;
7
+ };
8
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
9
+ title: string;
10
+ duration: number;
11
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
12
+ declare const _default: typeof __VLS_export;
13
+ export default _default;
@@ -0,0 +1,13 @@
1
+ declare var __VLS_8: {};
2
+ type __VLS_Slots = {} & {
3
+ default?: (props: typeof __VLS_8) => any;
4
+ };
5
+ declare const __VLS_base: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
6
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
7
+ declare const _default: typeof __VLS_export;
8
+ export default _default;
9
+ type __VLS_WithSlots<T, S> = T & {
10
+ new (): {
11
+ $slots: S;
12
+ };
13
+ };
@@ -2,10 +2,14 @@ export { default as PageSurface } from "./PageSurface.vue";
2
2
  export { default as ResultPanel } from "./ResultPanel.vue";
3
3
  export { default as SectionCard } from "./SectionCard.vue";
4
4
  export { default as StatusBadge } from "./StatusBadge.vue";
5
+ export { default as UiAvatar } from "./UiAvatar.vue";
5
6
  export { default as UiButton } from "./UiButton.vue";
6
7
  export { default as UiCheckbox } from "./UiCheckbox.vue";
7
8
  export { default as UiField } from "./UiField.vue";
8
9
  export { default as UiLoadingState } from "./UiLoadingState.vue";
10
+ export { default as UiModal } from "./UiModal.vue";
9
11
  export { default as UiSegmentedControl } from "./UiSegmentedControl.vue";
10
12
  export { default as UiSelect } from "./UiSelect.vue";
11
13
  export { default as UiSkeleton } from "./UiSkeleton.vue";
14
+ export { default as UiToast } from "./UiToast.vue";
15
+ export { default as UiToastProvider } from "./UiToastProvider.vue";
@@ -1,14 +1,18 @@
1
- import { _ as s, a as t, b as i, c as o, d as n, e as S, f as U, g as d, h as l, i as c, j as g } from "./chunks/UiSkeleton.vue_vue_type_script_setup_true_lang-Dg-HzSqj.js";
1
+ import { _ as s, a as i, b as t, c as o, d as U, e as d, f as l, g as n, h as r, i as S, j as c, k as g, l as u, m as f, n as k } from "./chunks/UiToastProvider.vue_vue_type_script_setup_true_lang-D7OGRCU4.js";
2
2
  export {
3
3
  s as PageSurface,
4
- t as ResultPanel,
5
- i as SectionCard,
4
+ i as ResultPanel,
5
+ t as SectionCard,
6
6
  o as StatusBadge,
7
- n as UiButton,
8
- S as UiCheckbox,
9
- U as UiField,
10
- d as UiLoadingState,
11
- l as UiSegmentedControl,
12
- c as UiSelect,
13
- g as UiSkeleton
7
+ U as UiAvatar,
8
+ d as UiButton,
9
+ l as UiCheckbox,
10
+ n as UiField,
11
+ r as UiLoadingState,
12
+ S as UiModal,
13
+ c as UiSegmentedControl,
14
+ g as UiSelect,
15
+ u as UiSkeleton,
16
+ f as UiToast,
17
+ k as UiToastProvider
14
18
  };
@@ -0,0 +1,27 @@
1
+ export type ToastTone = "success" | "error" | "info" | "warning";
2
+ export interface ToastItem {
3
+ id: number;
4
+ tone: ToastTone;
5
+ message: string;
6
+ duration: number;
7
+ }
8
+ declare function removeToast(id: number): void;
9
+ export declare function useToast(): {
10
+ toasts: import("vue").Ref<{
11
+ id: number;
12
+ tone: ToastTone;
13
+ message: string;
14
+ duration: number;
15
+ }[], ToastItem[] | {
16
+ id: number;
17
+ tone: ToastTone;
18
+ message: string;
19
+ duration: number;
20
+ }[]>;
21
+ success: (message: string, duration?: number) => number;
22
+ error: (message: string, duration?: number) => number;
23
+ info: (message: string, duration?: number) => number;
24
+ warning: (message: string, duration?: number) => number;
25
+ dismiss: typeof removeToast;
26
+ };
27
+ export {};
package/dist/index.d.ts CHANGED
@@ -1,3 +1,4 @@
1
1
  export * from "./components/index";
2
+ export * from "./composables/useToast";
2
3
  export * from "./styles/index";
3
4
  export * from "./tokens/index";
package/dist/index.js CHANGED
@@ -1,65 +1,70 @@
1
- import { _ as a, a as l, b as o, c as t, d as i, e as n, f as r, g as C, h as c, i as p, j as d } from "./chunks/UiSkeleton.vue_vue_type_script_setup_true_lang-Dg-HzSqj.js";
2
- import { actionToolbarClass as u, badgeRecipe as f, cardRecipe as m, centeredEmptyStatePanelClass as k, clusterLayout as R, emptyStatePanelClass as T, errorTextClass as S, fieldControlClass as x, fieldControlSmClass as b, fieldTextareaClass as P, focusRingClass as y, infoPanelClass as U, inputRecipe as L, loadingRegionClass as h, metricGridPattern as B, mutedTextClass as D, resultRegionClass as H, resultSkeletonPanelClass as j, selectableDetailClass as w, selectableListClass as v, selectableListDetailRootClass as A, splitLayout as E, stackLayout as F } from "./styles.js";
3
- import { b as V, c as _, d as q, e as z, a as I, h as J, i as K, m as M, p as N, f as O, g as Q, j as W, k as X, s as Y, l as Z, n as $ } from "./chunks/pageHeader-DhPY_hNA.js";
4
- import { colorTokens as es } from "./tokens.js";
5
- import { coreColorTokens as ls, motionTokens as os, radiusTokens as ts, spacingTokens as is, typographyTokens as ns } from "./tokens-core.js";
6
- import { desktopColorTokens as Cs } from "./tokens-desktop.js";
1
+ import { _ as e, a as o, b as l, c as t, d as i, e as r, f as n, g as C, h as c, i as p, j as d, k as g, l as u, m, n as T, u as f } from "./chunks/UiToastProvider.vue_vue_type_script_setup_true_lang-D7OGRCU4.js";
2
+ import { actionToolbarClass as R, badgeRecipe as S, cardRecipe as x, centeredEmptyStatePanelClass as P, clusterLayout as U, emptyStatePanelClass as b, errorTextClass as y, fieldControlClass as L, fieldControlSmClass as h, fieldTextareaClass as v, focusRingClass as B, infoPanelClass as D, inputRecipe as H, loadingRegionClass as j, metricGridPattern as w, mutedTextClass as A, resultRegionClass as E, resultSkeletonPanelClass as F, selectableDetailClass as G, selectableListClass as M, selectableListDetailRootClass as V, splitLayout as _, stackLayout as q } from "./styles.js";
3
+ import { b as I, c as J, d as K, e as N, a as O, h as Q, i as W, m as X, p as Y, f as Z, g as $, j as ss, k as as, s as es, l as os, n as ls } from "./chunks/pageHeader-YZ3BV9dQ.js";
4
+ import { colorTokens as is } from "./tokens.js";
5
+ import { coreColorTokens as ns, motionTokens as Cs, radiusTokens as cs, spacingTokens as ps, typographyTokens as ds } from "./tokens-core.js";
6
+ import { desktopColorTokens as us } from "./tokens-desktop.js";
7
7
  export {
8
- a as PageSurface,
9
- l as ResultPanel,
10
- o as SectionCard,
8
+ e as PageSurface,
9
+ o as ResultPanel,
10
+ l as SectionCard,
11
11
  t as StatusBadge,
12
- i as UiButton,
12
+ i as UiAvatar,
13
+ r as UiButton,
13
14
  n as UiCheckbox,
14
- r as UiField,
15
- C as UiLoadingState,
16
- c as UiSegmentedControl,
17
- p as UiSelect,
18
- d as UiSkeleton,
19
- u as actionToolbarClass,
20
- f as badgeRecipe,
21
- V as buttonRecipe,
22
- m as cardRecipe,
23
- k as centeredEmptyStatePanelClass,
24
- R as clusterLayout,
25
- _ as codeBlockClass,
26
- es as colorTokens,
27
- ls as coreColorTokens,
28
- Cs as desktopColorTokens,
29
- q as dropdownRecipe,
30
- z as elevatedPanelClass,
31
- T as emptyStatePanelClass,
32
- S as errorTextClass,
33
- I as eyebrowClass,
34
- x as fieldControlClass,
35
- b as fieldControlSmClass,
36
- P as fieldTextareaClass,
37
- y as focusRingClass,
38
- J as helperTextClass,
39
- U as infoPanelClass,
40
- L as inputRecipe,
41
- K as insetPanelClass,
42
- h as loadingRegionClass,
43
- B as metricGridPattern,
44
- M as metricValueClass,
45
- os as motionTokens,
46
- D as mutedTextClass,
47
- N as pageHeaderActionsClass,
48
- O as pageHeaderContentClass,
49
- Q as pageHeaderRootClass,
50
- W as pageRootClass,
51
- X as pageScrollRegionClass,
52
- ts as radiusTokens,
53
- H as resultRegionClass,
54
- j as resultSkeletonPanelClass,
55
- Y as sectionDescriptionClass,
56
- Z as sectionTitleClass,
57
- w as selectableDetailClass,
58
- v as selectableListClass,
59
- A as selectableListDetailRootClass,
60
- is as spacingTokens,
61
- E as splitLayout,
62
- F as stackLayout,
63
- $ as surfacePanelClass,
64
- ns as typographyTokens
15
+ C as UiField,
16
+ c as UiLoadingState,
17
+ p as UiModal,
18
+ d as UiSegmentedControl,
19
+ g as UiSelect,
20
+ u as UiSkeleton,
21
+ m as UiToast,
22
+ T as UiToastProvider,
23
+ R as actionToolbarClass,
24
+ S as badgeRecipe,
25
+ I as buttonRecipe,
26
+ x as cardRecipe,
27
+ P as centeredEmptyStatePanelClass,
28
+ U as clusterLayout,
29
+ J as codeBlockClass,
30
+ is as colorTokens,
31
+ ns as coreColorTokens,
32
+ us as desktopColorTokens,
33
+ K as dropdownRecipe,
34
+ N as elevatedPanelClass,
35
+ b as emptyStatePanelClass,
36
+ y as errorTextClass,
37
+ O as eyebrowClass,
38
+ L as fieldControlClass,
39
+ h as fieldControlSmClass,
40
+ v as fieldTextareaClass,
41
+ B as focusRingClass,
42
+ Q as helperTextClass,
43
+ D as infoPanelClass,
44
+ H as inputRecipe,
45
+ W as insetPanelClass,
46
+ j as loadingRegionClass,
47
+ w as metricGridPattern,
48
+ X as metricValueClass,
49
+ Cs as motionTokens,
50
+ A as mutedTextClass,
51
+ Y as pageHeaderActionsClass,
52
+ Z as pageHeaderContentClass,
53
+ $ as pageHeaderRootClass,
54
+ ss as pageRootClass,
55
+ as as pageScrollRegionClass,
56
+ cs as radiusTokens,
57
+ E as resultRegionClass,
58
+ F as resultSkeletonPanelClass,
59
+ es as sectionDescriptionClass,
60
+ os as sectionTitleClass,
61
+ G as selectableDetailClass,
62
+ M as selectableListClass,
63
+ V as selectableListDetailRootClass,
64
+ ps as spacingTokens,
65
+ _ as splitLayout,
66
+ q as stackLayout,
67
+ ls as surfacePanelClass,
68
+ ds as typographyTokens,
69
+ f as useToast
65
70
  };
@@ -47,9 +47,6 @@ export declare const buttonRecipe: import("../../../styled-system/types").Recipe
47
47
  color: "text.inverse";
48
48
  borderWidth: "1px";
49
49
  borderColor: "transparent";
50
- _dark: {
51
- color: "text.inverse";
52
- };
53
50
  };
54
51
  };
55
52
  disabled: {
package/dist/styles.js CHANGED
@@ -1,5 +1,5 @@
1
- import { r as e, o as r, q as o, i as a, h as t } from "./chunks/pageHeader-DhPY_hNA.js";
2
- import { b as V, c as B, d as P, e as j, a as I, m as L, p as q, f as A, g as D, j as F, k as E, s as G, l as O, n as J } from "./chunks/pageHeader-DhPY_hNA.js";
1
+ import { r as e, o as r, q as o, i as a, h as t } from "./chunks/pageHeader-YZ3BV9dQ.js";
2
+ import { b as V, c as B, d as P, e as j, a as I, m as L, p as q, f as A, g as D, j as F, k as E, s as G, l as O, n as J } from "./chunks/pageHeader-YZ3BV9dQ.js";
3
3
  const d = e({
4
4
  width: "100%",
5
5
  minHeight: "48px",