@avenirs-esr/avenirs-dsav 0.1.76 → 0.1.78

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 (79) hide show
  1. package/dist/avenirs-dsav.css +1 -3
  2. package/dist/components/badges/AvBadge/AvBadge.stories.d.ts +1 -1
  3. package/dist/components/badges/AvBadge/AvBadge.vue.d.ts +0 -10
  4. package/dist/components/badges/AvTag/AvTag.stories.d.ts +0 -1
  5. package/dist/components/badges/AvTag/AvTag.vue.d.ts +0 -20
  6. package/dist/components/base/AvFieldset/AvFieldset.vue.d.ts +24 -4
  7. package/dist/components/base/AvFieldsetElement/AvFieldsetElement.vue.d.ts +29 -0
  8. package/dist/components/base/AvIconText/AvIconText.stub.d.ts +7 -0
  9. package/dist/components/base/AvMessage/AvMessage.stories.d.ts +27 -0
  10. package/dist/components/base/AvMessage/AvMessage.test.d.ts +1 -0
  11. package/dist/components/base/AvMessage/AvMessage.vue.d.ts +21 -0
  12. package/dist/components/base/AvNotice/AvNotice.stories.d.ts +1 -0
  13. package/dist/components/base/index.d.ts +1 -0
  14. package/dist/components/feedback/AvAlert/AvAlert.stories.d.ts +69 -0
  15. package/dist/components/feedback/AvAlert/AvAlert.vue.d.ts +0 -5
  16. package/dist/components/interaction/buttons/AvButton/AvButton.stories.d.ts +1 -1
  17. package/dist/components/interaction/buttons/AvButton/AvButton.vue.d.ts +9 -9
  18. package/dist/components/interaction/checkboxes/AvCheckbox/AvChecbox.stories.d.ts +4 -0
  19. package/dist/components/interaction/checkboxes/AvCheckbox/AvCheckbox.vue.d.ts +1 -1
  20. package/dist/components/interaction/checkboxes/AvCheckboxesGroup/AvCheckboxesGroup.stories.d.ts +38 -0
  21. package/dist/components/interaction/checkboxes/AvCheckboxesGroup/AvCheckboxesGroup.vue.d.ts +46 -0
  22. package/dist/components/interaction/checkboxes/index.d.ts +1 -0
  23. package/dist/components/interaction/inputs/AvSearchBar/AvSearchBar.vue.d.ts +3 -0
  24. package/dist/components/interaction/lists/AvList/AvList.stories.d.ts +2 -2
  25. package/dist/components/interaction/lists/AvListItem/AvListItem.stories.d.ts +4 -4
  26. package/dist/components/interaction/radios/AvRadioButtonSet/AvRadioButtonSet.stories.d.ts +1 -0
  27. package/dist/components/interaction/selects/AvAutocomplete/AvAutocomplete.stories.d.ts +9 -0
  28. package/dist/components/interaction/selects/AvMultiselect/AvMultiselect.stories.d.ts +3 -0
  29. package/dist/components/interaction/selects/AvMultiselect/AvMultiselect.vue.d.ts +0 -5
  30. package/dist/components/interaction/selects/AvMultiselect/components/MultiselectCollapse.vue.d.ts +2 -13
  31. package/dist/components/interaction/selects/AvSelect/AvSelect.stories.d.ts +1 -1
  32. package/dist/components/interaction/selects/AvSelect/AvSelect.vue.d.ts +3 -0
  33. package/dist/components/navigation/AvPagination/AvPagination.stories.d.ts +28 -0
  34. package/dist/components/navigation/AvSideMenu/AvSideMenu.stories.d.ts +3 -3
  35. package/dist/components/navigation/AvSideNavigation/AvSideNavigation.stories.d.ts +4 -4
  36. package/dist/components/navigation/AvStepper/AvStepper.vue.d.ts +1 -3
  37. package/dist/components/overlay/drawers/AvDrawer/AvDrawer.stories.d.ts +3 -3
  38. package/dist/components/overlay/dropdowns/AvDropdown/AvDropdown.stub.d.ts +2 -2
  39. package/dist/components/overlay/dropdowns/AvDropdown/AvDropdown.vue.d.ts +6 -6
  40. package/dist/components/overlay/modals/AvModal/AvModal.stories.d.ts +36 -0
  41. package/dist/components/overlay/modals/AvModal/AvModal.vue.d.ts +0 -5
  42. package/dist/components/overlay/popovers/AvPopover/AvPopover.vue.d.ts +1 -5
  43. package/dist/composables/use-av-breakpoints/use-av-breakpoints.d.ts +3 -0
  44. package/dist/composables/use-collapsable/use-collapsable.d.ts +1 -1
  45. package/dist/index.cjs.js +5 -5
  46. package/dist/index.es.js +6245 -6128
  47. package/dist/main.d.ts +0 -5
  48. package/dist/stories/foundations/icons.stories.d.ts +1 -0
  49. package/dist/test-utils.cjs.js +15 -15
  50. package/dist/test-utils.es.js +37 -32
  51. package/dist/tests/index.d.ts +2 -1
  52. package/dist/tokens/icons.d.ts +12 -0
  53. package/package.json +1 -2
  54. package/src/styles/components/_buttons.scss +9 -0
  55. package/src/styles/components/_collapse.scss +37 -0
  56. package/src/styles/components/_footer.scss +15 -0
  57. package/src/styles/components/_form.scss +50 -0
  58. package/src/styles/components/_grid.scss +182 -0
  59. package/src/styles/components/_links.scss +6 -0
  60. package/src/styles/components/_menu.scss +59 -0
  61. package/src/styles/components/_navigation.scss +122 -0
  62. package/src/styles/components/_selects.scss +13 -0
  63. package/src/styles/{texts.scss → components/_texts.scss} +11 -0
  64. package/src/styles/core/_accessibility.scss +14 -0
  65. package/src/styles/core/_cursors.scss +47 -0
  66. package/src/styles/{dimensions.scss → core/_dimensions.scss} +1 -0
  67. package/src/styles/core/_focus.scss +66 -0
  68. package/src/styles/core/_hover.scss +22 -0
  69. package/src/styles/core/_namespace.scss +9 -0
  70. package/src/styles/{palette.scss → core/_palette.scss} +2 -0
  71. package/src/styles/core/_spacing.scss +33 -0
  72. package/src/styles/{typography.scss → core/_typography.scss} +40 -1
  73. package/src/styles/main.scss +41 -25
  74. package/src/styles/settings/_breakpoints.scss +33 -0
  75. package/src/styles/utilities/_helpers.scss +136 -0
  76. package/src/styles/utilities/_spacing.scss +48 -0
  77. package/src/styles/buttons.scss +0 -24
  78. package/src/styles/spacing.scss +0 -21
  79. /package/src/styles/{radius.scss → core/_radius.scss} +0 -0
@@ -20,7 +20,7 @@ import { type AvSelectProps } from '@/components/interaction/selects/AvSelect/Av
20
20
  *
21
21
  * <h2 class="n2">🏗️ Structure</h2>
22
22
  *
23
- * <p><span class="b2-regular"><code>AvSelect</code> consists of a set of <code>&lt;option&gt;</code> within a <code>&lt;select&gt;</code>.</span></p>
23
+ * <p><span class="b2-regular">The <code>AvSelect</code> consists of a set of <code>&lt;option&gt;</code> within a <code>&lt;select&gt;</code>.</span></p>
24
24
  */
25
25
  declare const meta: {
26
26
  title: string;
@@ -1,3 +1,6 @@
1
+ /**
2
+ * AvSelect component props.
3
+ */
1
4
  export interface AvSelectProps {
2
5
  /**
3
6
  * Indicates if the select is required.
@@ -0,0 +1,28 @@
1
+ import type { Meta, StoryFn } from '@storybook/vue3';
2
+ import type { AvPaginationProps } from '@/components/navigation/AvPagination/AvPagination.vue';
3
+ /**
4
+ * <h1 class="n1">Pagination - <code>AvPagination</code></h1>
5
+ *
6
+ * <h2 class="n2">✨ Introduction</h2>
7
+ *
8
+ * <p class="b2-regular">
9
+ * The <code>AvPagination</code> is a pagination system compliant with good ergonomic and accessibility practices (ARIA).
10
+ * It allows easy navigation through multiple pages, with advanced features such as page display limitation and event management.
11
+ * </p>
12
+ *
13
+ * <h2 class="n2">🏗️ Structure</h2>
14
+ *
15
+ * <p class="b2-regular">
16
+ * This component displays links for the first, previous, middle, next, and last pages,
17
+ * with adaptive controls according to pagination status.
18
+ * </p>
19
+ */
20
+ declare const meta: Meta<AvPaginationProps>;
21
+ export default meta;
22
+ export declare const Default: StoryFn<AvPaginationProps>;
23
+ export declare const DefaultMiddlePage: StoryFn<AvPaginationProps>;
24
+ export declare const DefaultLastPage: StoryFn<AvPaginationProps>;
25
+ export declare const DefaultTruncated: StoryFn<AvPaginationProps>;
26
+ export declare const Compact: StoryFn<AvPaginationProps>;
27
+ export declare const CompactMiddlePage: StoryFn<AvPaginationProps>;
28
+ export declare const CompactLastPage: StoryFn<AvPaginationProps>;
@@ -32,9 +32,9 @@ import { type AvSideMenuProps } from '@/components/navigation/AvSideMenu/AvSideM
32
32
  * <p><span class="b2-regular">The side-menu component consists of the following elements:</span></p>
33
33
  *
34
34
  * <ul>
35
- * <li><span class="b2-regular"><strong>Header:</strong> (optional) Contains the collapse/expand toggle button when collapsible=true</span></li>
36
- * <li><span class="b2-regular"><strong>Toggle Button:</strong> (optional) Interactive button to collapse/expand the menu</span></li>
37
- * <li><span class="b2-regular"><strong>Content Area:</strong> Scrollable area for your custom content via default slot</span></li>
35
+ * <li><span class="b2-regular">the <strong>Header:</strong> (optional) Contains the collapse/expand toggle button when collapsible=true</span></li>
36
+ * <li><span class="b2-regular">the <strong>Toggle Button:</strong> (optional) Interactive button to collapse/expand the menu</span></li>
37
+ * <li><span class="b2-regular">the <strong>Content Area:</strong> Scrollable area for your custom content via default slot</span></li>
38
38
  * </ul>
39
39
  *
40
40
  * <p><span class="b2-regular">The side-menu integrates:</span></p>
@@ -34,10 +34,10 @@ import AvSideNavigation from './AvSideNavigation.vue';
34
34
  * <p><span class="b2-regular">The side navigation component consists of the following elements:</span></p>
35
35
  *
36
36
  * <ul>
37
- * <li><span class="b2-regular"><strong>Side Menu Container:</strong> The main AvSideMenu wrapper that handles collapsible behavior</span></li>
38
- * <li><span class="b2-regular"><strong>Navigation List:</strong> An AvList component that contains all navigation items</span></li>
39
- * <li><span class="b2-regular"><strong>Navigation Items:</strong> Individual AvListItem components representing each navigational option</span></li>
40
- * <li><span class="b2-regular"><strong>Toggle Functionality:</strong> Automatic label hiding/showing based on collapsed state</span></li>
37
+ * <li><span class="b2-regular">the <strong>Side Menu Container:</strong> The main AvSideMenu wrapper that handles collapsible behavior</span></li>
38
+ * <li><span class="b2-regular">the <strong>Navigation List:</strong> An AvList component that contains all navigation items</span></li>
39
+ * <li><span class="b2-regular">the <strong>Navigation Items:</strong> Individual AvListItem components representing each navigational option</span></li>
40
+ * <li><span class="b2-regular">the <strong>Toggle Functionality:</strong> Automatic label hiding/showing based on collapsed state</span></li>
41
41
  * </ul>
42
42
  *
43
43
  * <p><span class="b2-regular">The side navigation integrates:</span></p>
@@ -13,7 +13,5 @@ export interface AvStepperProps {
13
13
  */
14
14
  width?: string;
15
15
  }
16
- declare const _default: import("vue").DefineComponent<AvStepperProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<AvStepperProps> & Readonly<{}>, {
17
- width: string;
18
- }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
16
+ declare const _default: import("vue").DefineComponent<AvStepperProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<AvStepperProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
19
17
  export default _default;
@@ -30,9 +30,9 @@ import { type AvDrawerProps } from '@/components/overlay/drawers/AvDrawer/AvDraw
30
30
  * <p><span class="b2-regular">The drawer consists of the following elements:</span></p>
31
31
  *
32
32
  * <ul>
33
- * <li><span class="b2-regular"><strong>Container:</strong> The main drawer panel that slides in from the specified edge</span></li>
34
- * <li><span class="b2-regular"><strong>Backdrop:</strong> (optional) Semi-transparent overlay that dims the background content</span></li>
35
- * <li><span class="b2-regular"><strong>Content Area:</strong> Flexible content container that accepts any slotted content</span></li>
33
+ * <li><span class="b2-regular">the <strong>Container:</strong> The main drawer panel that slides in from the specified edge</span></li>
34
+ * <li><span class="b2-regular">the <strong>Backdrop:</strong> (optional) Semi-transparent overlay that dims the background content</span></li>
35
+ * <li><span class="b2-regular">the <strong>Content Area:</strong> Flexible content container that accepts any slotted content</span></li>
36
36
  * </ul>
37
37
  *
38
38
  * <p><span class="b2-regular">The drawer integrates:</span></p>
@@ -5,7 +5,7 @@ export declare const AvDropdownStub: import("vue").DefineComponent<{
5
5
  triggerIcon?: any;
6
6
  triggerLabel?: any;
7
7
  triggerVariant?: any;
8
- triggerSize?: any;
8
+ triggerSmall?: any;
9
9
  }, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "itemSelected"[], "itemSelected", import("vue").PublicProps, Readonly<{
10
10
  padding?: any;
11
11
  items?: any;
@@ -13,7 +13,7 @@ export declare const AvDropdownStub: import("vue").DefineComponent<{
13
13
  triggerIcon?: any;
14
14
  triggerLabel?: any;
15
15
  triggerVariant?: any;
16
- triggerSize?: any;
16
+ triggerSmall?: any;
17
17
  }> & Readonly<{
18
18
  onItemSelected?: ((...args: any[]) => any) | undefined;
19
19
  }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
@@ -43,10 +43,10 @@ export interface AvDropdownProps {
43
43
  */
44
44
  triggerVariant?: AvButtonProps['variant'];
45
45
  /**
46
- * Size of the trigger button.
47
- * @default 'sm'
46
+ * Display the trigger button in small size (`true`) or default size (`false`).
47
+ * @default true
48
48
  */
49
- triggerSize?: AvButtonProps['size'];
49
+ triggerSmall?: AvButtonProps['small'];
50
50
  /**
51
51
  * Width of the dropdown menu.
52
52
  * @default '15rem'
@@ -58,10 +58,10 @@ export interface AvDropdownProps {
58
58
  */
59
59
  padding?: string;
60
60
  /**
61
- * Size of menu item buttons.
62
- * @default 'sm'
61
+ * Display menu item buttons in small size (`true`) or default size (`false`).
62
+ * @default true
63
63
  */
64
- itemSize?: AvButtonProps['size'];
64
+ itemSmall?: AvButtonProps['small'];
65
65
  /**
66
66
  * Theme of menu item buttons.
67
67
  * @default 'SECONDARY'
@@ -0,0 +1,36 @@
1
+ import type { Meta, StoryFn } from '@storybook/vue3';
2
+ import { type AvModalProps } from '@/components/overlay/modals/AvModal/AvModal.vue';
3
+ /**
4
+ * <h1 class="n1">Modals - <code>AvModal</code></h1>
5
+ *
6
+ * <h2 class="n2">✨ Introduction</h2>
7
+ *
8
+ * <p class="b2-regular">
9
+ * The <code>AvModal</code> allows the user's attention to be focused exclusively on a task or a piece of information,
10
+ * without losing the context of the current page. This component requires a user action to be opened or closed.
11
+ * </p>
12
+ *
13
+ * <p class="b2-regular">
14
+ * The <code>AvModal</code> component is a configurable modal window offering advanced features such as focus trapping,
15
+ * escape key handling for closure, and action button management. This component is designed to display dialogs and alerts
16
+ * in an accessible and ergonomic way.
17
+ * </p>
18
+ *
19
+ * <h2 class="n2">🏗️ Structure</h2>
20
+ *
21
+ * <p class="b2-regular">
22
+ * The default modal is used to highlight information that does not require user action. It is displayed when a button is clicked.
23
+ * It consists of the following elements:
24
+ * </p>
25
+ *
26
+ * <ul>
27
+ * <li>The title (slot <code>header</code>), optional,</li>
28
+ * <li>The content zone (slot <code>default</code>), mandatory,</li>
29
+ * <li>The right-justified footer zone, which can be filled using the <code>footer</code> slot.
30
+ * This zone always includes the close button to the left of the custom slot elements,
31
+ * and must contain buttons only.</li>
32
+ * </ul>
33
+ */
34
+ declare const meta: Meta<AvModalProps>;
35
+ export default meta;
36
+ export declare const Default: StoryFn<AvModalProps>;
@@ -18,11 +18,6 @@ export interface AvModalProps {
18
18
  * @default false
19
19
  */
20
20
  isAlert?: boolean;
21
- /**
22
- * Modal size.
23
- * @default 'md'
24
- */
25
- size?: 'sm' | 'md' | 'lg' | 'xl';
26
21
  /**
27
22
  * Label and title (for accessibility) of the close button.
28
23
  */
@@ -5,7 +5,6 @@ import { type ComponentPublicInstance } from 'vue';
5
5
  export interface AvPopoverProps {
6
6
  /**
7
7
  * Popover width.
8
- * @default '12.5rem'
9
8
  */
10
9
  width?: string;
11
10
  /**
@@ -36,10 +35,7 @@ declare function setTriggerRef(el: Element | ComponentPublicInstance | null): vo
36
35
  declare const _default: __VLS_WithSlots<import("vue").DefineComponent<AvPopoverProps, {
37
36
  setTriggerRef: typeof setTriggerRef;
38
37
  triggerRef: import("vue").Ref<HTMLElement | null, HTMLElement | null>;
39
- }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<AvPopoverProps> & Readonly<{}>, {
40
- width: string;
41
- padding: string;
42
- }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, __VLS_Slots>;
38
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<AvPopoverProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, __VLS_Slots>;
43
39
  export default _default;
44
40
  type __VLS_WithSlots<T, S> = T & {
45
41
  new (): {
@@ -16,6 +16,7 @@ export declare const AV_BREAKPOINTS: {
16
16
  * when the viewport width changes. It provides both **granular breakpoint flags**
17
17
  * (`isBelowSm`, `isAboveLg`, etc.) and **semantic viewport categories**
18
18
  * (`isMobile`, `isTablet`, `isDesktop`).
19
+ * The current active breakpoint key is also provided via `currentBreakpoint`.
19
20
  */
20
21
  export interface UseAvBreakpointsReturn {
21
22
  /**
@@ -45,6 +46,8 @@ export interface UseAvBreakpointsReturn {
45
46
  isAboveMd: Ref<boolean>;
46
47
  /** True if viewport width is above or equal to 1024px (64rem). */
47
48
  isAboveLg: Ref<boolean>;
49
+ /** Current active breakpoint key ('sm' | 'md' | 'lg' | 'xl'). */
50
+ currentBreakpoint?: Ref<keyof typeof AV_BREAKPOINTS>;
48
51
  }
49
52
  /**
50
53
  * Vue composable providing reactive responsive utilities
@@ -77,7 +77,7 @@ export interface UseCollapsableReturn {
77
77
  * @example
78
78
  * ```vue
79
79
  * <template>
80
- * <div ref="collapse" class="fr-collapse" @transitionend="onTransitionEnd(cssExpanded)">
80
+ * <div ref="collapse" class="av-collapse" @transitionend="onTransitionEnd(cssExpanded)">
81
81
  * <slot />
82
82
  * </div>
83
83
  * <button @click="doExpand(!cssExpanded)">Toggle</button>