design-react-kit 5.4.0 → 5.5.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 (105) hide show
  1. package/CHANGELOG.md +30 -0
  2. package/dist/Autocomplete/Autocomplete.cjs +2 -0
  3. package/dist/Autocomplete/Autocomplete.cjs.map +1 -0
  4. package/dist/Autocomplete/Autocomplete.js +21 -0
  5. package/dist/Autocomplete/Autocomplete.js.map +1 -0
  6. package/dist/BackToTop/BackToTop.cjs +1 -1
  7. package/dist/BackToTop/BackToTop.cjs.map +1 -1
  8. package/dist/BackToTop/BackToTop.js +3 -4
  9. package/dist/BackToTop/BackToTop.js.map +1 -1
  10. package/dist/Collapse/Collapse.cjs +1 -1
  11. package/dist/Collapse/Collapse.cjs.map +1 -1
  12. package/dist/Collapse/Collapse.js +14 -9
  13. package/dist/Collapse/Collapse.js.map +1 -1
  14. package/dist/Dropdown/Dropdown.cjs +1 -1
  15. package/dist/Dropdown/Dropdown.cjs.map +1 -1
  16. package/dist/Dropdown/Dropdown.js +3 -3
  17. package/dist/Dropdown/Dropdown.js.map +1 -1
  18. package/dist/Dropdown/DropdownMenu.cjs +1 -1
  19. package/dist/Dropdown/DropdownMenu.cjs.map +1 -1
  20. package/dist/Dropdown/DropdownMenu.js +3 -6
  21. package/dist/Dropdown/DropdownMenu.js.map +1 -1
  22. package/dist/Dropdown/DropdownToggle.cjs +1 -1
  23. package/dist/Dropdown/DropdownToggle.cjs.map +1 -1
  24. package/dist/Dropdown/DropdownToggle.js +1 -2
  25. package/dist/Dropdown/DropdownToggle.js.map +1 -1
  26. package/dist/Header/HeaderContent.cjs +1 -1
  27. package/dist/Header/HeaderContent.cjs.map +1 -1
  28. package/dist/Header/HeaderContent.js +1 -1
  29. package/dist/Header/HeaderContent.js.map +1 -1
  30. package/dist/Header/HeaderToggler.cjs +1 -1
  31. package/dist/Header/HeaderToggler.cjs.map +1 -1
  32. package/dist/Header/HeaderToggler.js +3 -2
  33. package/dist/Header/HeaderToggler.js.map +1 -1
  34. package/dist/Input/Input.cjs +1 -1
  35. package/dist/Input/Input.cjs.map +1 -1
  36. package/dist/Input/TextArea.cjs +1 -1
  37. package/dist/Input/TextArea.cjs.map +1 -1
  38. package/dist/Input/TextArea.js +4 -1
  39. package/dist/Input/TextArea.js.map +1 -1
  40. package/dist/Input/utils.cjs +1 -1
  41. package/dist/Input/utils.cjs.map +1 -1
  42. package/dist/Input/utils.js +2 -2
  43. package/dist/Input/utils.js.map +1 -1
  44. package/dist/Megamenu/MegamenuItem.cjs +1 -1
  45. package/dist/Megamenu/MegamenuItem.cjs.map +1 -1
  46. package/dist/Megamenu/MegamenuItem.js +4 -2
  47. package/dist/Megamenu/MegamenuItem.js.map +1 -1
  48. package/dist/NavScroll/index.cjs +1 -1
  49. package/dist/NavScroll/index.cjs.map +1 -1
  50. package/dist/NavScroll/types.cjs +1 -1
  51. package/dist/NavScroll/types.cjs.map +1 -1
  52. package/dist/NavScroll/useNavScroll.cjs +1 -1
  53. package/dist/NavScroll/useNavScroll.cjs.map +1 -1
  54. package/dist/NavScroll/useNavScroll.js +84 -28
  55. package/dist/NavScroll/useNavScroll.js.map +1 -1
  56. package/dist/Rating/Rating.cjs +1 -1
  57. package/dist/Rating/Rating.cjs.map +1 -1
  58. package/dist/Rating/Rating.js +1 -1
  59. package/dist/Rating/Rating.js.map +1 -1
  60. package/dist/Skiplink/Skiplink.cjs +1 -1
  61. package/dist/Skiplink/Skiplink.cjs.map +1 -1
  62. package/dist/Skiplink/Skiplink.js +9 -3
  63. package/dist/Skiplink/Skiplink.js.map +1 -1
  64. package/dist/Skiplink/SkiplinkItem.cjs +1 -1
  65. package/dist/Skiplink/SkiplinkItem.cjs.map +1 -1
  66. package/dist/Skiplink/SkiplinkItem.js +8 -2
  67. package/dist/Skiplink/SkiplinkItem.js.map +1 -1
  68. package/dist/index.cjs +1 -1
  69. package/dist/index.cjs.map +1 -1
  70. package/dist/index.js +2 -0
  71. package/dist/index.js.map +1 -1
  72. package/dist/track-focus.cjs +2 -0
  73. package/dist/track-focus.cjs.map +1 -0
  74. package/dist/track-focus.js +2 -0
  75. package/dist/track-focus.js.map +1 -0
  76. package/dist/types/Autocomplete/Autocomplete.d.ts +32 -0
  77. package/dist/types/BackToTop/BackToTop.d.ts +10 -6
  78. package/dist/types/Collapse/Collapse.d.ts +2 -0
  79. package/dist/types/Dropdown/Dropdown.d.ts +3 -2
  80. package/dist/types/Dropdown/DropdownMenu.d.ts +1 -0
  81. package/dist/types/Header/HeaderToggler.d.ts +2 -1
  82. package/dist/types/Input/TextArea.d.ts +1 -1
  83. package/dist/types/NavScroll/types.d.ts +4 -0
  84. package/dist/types/Skiplink/Skiplink.d.ts +3 -0
  85. package/dist/types/Skiplink/SkiplinkItem.d.ts +2 -0
  86. package/dist/types/index.d.ts +2 -0
  87. package/package.json +25 -16
  88. package/src/Autocomplete/Autocomplete.tsx +80 -0
  89. package/src/BackToTop/BackToTop.tsx +14 -11
  90. package/src/Collapse/Collapse.tsx +20 -7
  91. package/src/Dropdown/Dropdown.tsx +9 -6
  92. package/src/Dropdown/DropdownMenu.tsx +10 -6
  93. package/src/Dropdown/DropdownToggle.tsx +1 -2
  94. package/src/Header/HeaderContent.tsx +1 -1
  95. package/src/Header/HeaderToggler.tsx +4 -2
  96. package/src/Input/TextArea.tsx +9 -3
  97. package/src/Input/utils.tsx +2 -2
  98. package/src/Megamenu/MegamenuItem.tsx +4 -2
  99. package/src/NavScroll/types.ts +4 -0
  100. package/src/NavScroll/useNavScroll.ts +102 -34
  101. package/src/Rating/Rating.tsx +1 -1
  102. package/src/Skiplink/Skiplink.tsx +16 -3
  103. package/src/Skiplink/SkiplinkItem.tsx +12 -1
  104. package/src/index.ts +3 -0
  105. package/src/track-focus.js +49 -0
package/dist/index.js CHANGED
@@ -1,4 +1,5 @@
1
1
  export { BreadcrumbItem, ButtonGroup, ButtonToolbar, CardColumns, CardDeck, CardFooter, CardGroup, CardHeader, CardImg, CardImgOverlay, CardLink, CardSubtitle, Col, Container, Fade, Form, FormFeedback, FormGroup, FormText, InputGroup, InputGroupText, Label, ListGroup, ListGroupItem, ListGroupItemHeading, ListGroupItemText, Media, NavItem, NavLink, Navbar, NavbarBrand, NavbarToggler, PaginationItem as PagerItem, PaginationLink as PagerLink, Popover, PopoverBody, PopoverHeader, Row, TabContent, TabPane, Table, Tooltip, UncontrolledAlert, UncontrolledCollapse, UncontrolledTooltip, Util } from 'reactstrap';
2
+ export { Autocomplete } from './Autocomplete/Autocomplete';
2
3
  export { Accordion } from './Accordion/Accordion';
3
4
  export { AccordionBody } from './Accordion/AccordionBody';
4
5
  export { AccordionHeader } from './Accordion/AccordionHeader';
@@ -95,4 +96,5 @@ export { Toggle } from './Toggle/Toggle';
95
96
  export { Toolbar } from './Toolbar/Toolbar';
96
97
  export { ToolbarDividerItem } from './Toolbar/ToolbarDividerItem';
97
98
  export { ToolbarItem } from './Toolbar/ToolbarItem';
99
+ import "./track-focus.js";
98
100
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ "use strict";var s="data-focus-mouse",n="focus--mouse",e=class{constructor(){this._usingMouse=!1,this._bindEvents()}_bindEvents(){if(typeof document>"u")return;["keydown","mousedown"].forEach(t=>{document.addEventListener(t,o=>{this._usingMouse=o.type==="mousedown"})}),document.addEventListener("focusin",t=>{this._usingMouse&&t.target&&(t.target.classList.add(n),t.target.setAttribute(s,"true"))}),document.addEventListener("focusout",t=>{t.target&&(t.target.classList.remove(n),t.target.setAttribute(s,"false"))})}};new e;
2
+ //# sourceMappingURL=track-focus.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/track-focus.js"],"sourcesContent":["\n// Focus Management\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap Italia (https://italia.github.io/bootstrap-italia/)\n * Authors: https://github.com/italia/bootstrap-italia/blob/main/AUTHORS\n * Licensed under BSD-3-Clause license (https://github.com/italia/bootstrap-italia/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst DATA_MOUSE_FOCUS = 'data-focus-mouse'\nconst CLASS_NAME_MOUSE_FOCUS = 'focus--mouse'\n\nclass TrackFocus {\n constructor() {\n this._usingMouse = false\n\n this._bindEvents()\n }\n\n _bindEvents() {\n if (typeof document === 'undefined') {\n return\n }\n const events = ['keydown', 'mousedown']\n events.forEach((evtName) => {\n document.addEventListener(evtName, (evt) => {\n this._usingMouse = evt.type === 'mousedown'\n })\n })\n document.addEventListener('focusin', (evt) => {\n if (this._usingMouse) {\n if (evt.target) {\n evt.target.classList.add(CLASS_NAME_MOUSE_FOCUS);\n evt.target.setAttribute(DATA_MOUSE_FOCUS, 'true')\n }\n }\n })\n document.addEventListener('focusout', (evt) => {\n if (evt.target) {\n evt.target.classList.remove(CLASS_NAME_MOUSE_FOCUS);\n evt.target.setAttribute(DATA_MOUSE_FOCUS, 'false')\n }\n })\n }\n}\n\nnew TrackFocus()"],"mappings":"aAWA,IAAMA,EAAmB,mBACnBC,EAAyB,eAEzBC,EAAN,KAAiB,CACf,aAAc,CACZ,KAAK,YAAc,GAEnB,KAAK,YAAY,CACnB,CAEA,aAAc,CACZ,GAAI,OAAO,SAAa,IACtB,OAEa,CAAC,UAAW,WAAW,EAC/B,QAASC,GAAY,CAC1B,SAAS,iBAAiBA,EAAUC,GAAQ,CAC1C,KAAK,YAAcA,EAAI,OAAS,WAClC,CAAC,CACH,CAAC,EACD,SAAS,iBAAiB,UAAYA,GAAQ,CACxC,KAAK,aACHA,EAAI,SACNA,EAAI,OAAO,UAAU,IAAIH,CAAsB,EAC/CG,EAAI,OAAO,aAAaJ,EAAkB,MAAM,EAGtD,CAAC,EACD,SAAS,iBAAiB,WAAaI,GAAQ,CACzCA,EAAI,SACNA,EAAI,OAAO,UAAU,OAAOH,CAAsB,EAClDG,EAAI,OAAO,aAAaJ,EAAkB,OAAO,EAErD,CAAC,CACH,CACF,EAEA,IAAIE","names":["DATA_MOUSE_FOCUS","CLASS_NAME_MOUSE_FOCUS","TrackFocus","evtName","evt"]}
@@ -0,0 +1,2 @@
1
+ var s="data-focus-mouse",n="focus--mouse",e=class{constructor(){this._usingMouse=!1,this._bindEvents()}_bindEvents(){if(typeof document>"u")return;["keydown","mousedown"].forEach(t=>{document.addEventListener(t,o=>{this._usingMouse=o.type==="mousedown"})}),document.addEventListener("focusin",t=>{this._usingMouse&&t.target&&(t.target.classList.add(n),t.target.setAttribute(s,"true"))}),document.addEventListener("focusout",t=>{t.target&&(t.target.classList.remove(n),t.target.setAttribute(s,"false"))})}};new e;
2
+ //# sourceMappingURL=track-focus.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/track-focus.js"],"sourcesContent":["\n// Focus Management\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap Italia (https://italia.github.io/bootstrap-italia/)\n * Authors: https://github.com/italia/bootstrap-italia/blob/main/AUTHORS\n * Licensed under BSD-3-Clause license (https://github.com/italia/bootstrap-italia/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst DATA_MOUSE_FOCUS = 'data-focus-mouse'\nconst CLASS_NAME_MOUSE_FOCUS = 'focus--mouse'\n\nclass TrackFocus {\n constructor() {\n this._usingMouse = false\n\n this._bindEvents()\n }\n\n _bindEvents() {\n if (typeof document === 'undefined') {\n return\n }\n const events = ['keydown', 'mousedown']\n events.forEach((evtName) => {\n document.addEventListener(evtName, (evt) => {\n this._usingMouse = evt.type === 'mousedown'\n })\n })\n document.addEventListener('focusin', (evt) => {\n if (this._usingMouse) {\n if (evt.target) {\n evt.target.classList.add(CLASS_NAME_MOUSE_FOCUS);\n evt.target.setAttribute(DATA_MOUSE_FOCUS, 'true')\n }\n }\n })\n document.addEventListener('focusout', (evt) => {\n if (evt.target) {\n evt.target.classList.remove(CLASS_NAME_MOUSE_FOCUS);\n evt.target.setAttribute(DATA_MOUSE_FOCUS, 'false')\n }\n })\n }\n}\n\nnew TrackFocus()"],"mappings":"AAWA,IAAMA,EAAmB,mBACnBC,EAAyB,eAEzBC,EAAN,KAAiB,CACf,aAAc,CACZ,KAAK,YAAc,GAEnB,KAAK,YAAY,CACnB,CAEA,aAAc,CACZ,GAAI,OAAO,SAAa,IACtB,OAEa,CAAC,UAAW,WAAW,EAC/B,QAASC,GAAY,CAC1B,SAAS,iBAAiBA,EAAUC,GAAQ,CAC1C,KAAK,YAAcA,EAAI,OAAS,WAClC,CAAC,CACH,CAAC,EACD,SAAS,iBAAiB,UAAYA,GAAQ,CACxC,KAAK,aACHA,EAAI,SACNA,EAAI,OAAO,UAAU,IAAIH,CAAsB,EAC/CG,EAAI,OAAO,aAAaJ,EAAkB,MAAM,EAGtD,CAAC,EACD,SAAS,iBAAiB,WAAaI,GAAQ,CACzCA,EAAI,SACNA,EAAI,OAAO,UAAU,OAAOH,CAAsB,EAClDG,EAAI,OAAO,aAAaJ,EAAkB,OAAO,EAErD,CAAC,CACH,CACF,EAEA,IAAIE","names":["DATA_MOUSE_FOCUS","CLASS_NAME_MOUSE_FOCUS","TrackFocus","evtName","evt"]}
@@ -0,0 +1,32 @@
1
+ import { FC } from 'react';
2
+ export interface AutocompleteAttributes {
3
+ /** Identificativo */
4
+ id?: string;
5
+ /** Valori chiave - valore all'interno della select */
6
+ source: {
7
+ value: string;
8
+ label: string;
9
+ }[];
10
+ /** Placeholder (default: ``) */
11
+ placeholder?: string;
12
+ /** Valore di default (default: ``) */
13
+ defaultValue?: string;
14
+ /** Modalità display menu (default: `inline`) */
15
+ displayMenu?: string;
16
+ /** Funzione ritornante stringa in caso di nessun risultato */
17
+ tNoResults?: () => string;
18
+ /** Funzione ritornante stringa di suggerimento */
19
+ tAssistiveHint?: () => string;
20
+ /** Funzione ritornante stringa se la query è troppo corta */
21
+ tStatusQueryTooShort?: () => string;
22
+ /** Funzione ritornante stringa se non ci sono risultati di ricerca */
23
+ tStatusNoResults?: () => string;
24
+ /** Funzione ritornante stringa che identifica l'opzione selezionata */
25
+ tStatusSelectedOption?: () => string;
26
+ /** Funzione ritornante stringa che identifica i risultati */
27
+ tStatusResults?: () => string;
28
+ /** Classi aggiuntive da usare per il componente Button */
29
+ className?: string;
30
+ testId?: string;
31
+ }
32
+ export declare const Autocomplete: FC<AutocompleteAttributes>;
@@ -1,24 +1,28 @@
1
1
  import React from 'react';
2
2
  export interface BackToTopProps {
3
3
  /**
4
- * Optional classnames to pass to <a> element
4
+ * Aria label che definisce lo scopo del componente (default: `Torna su`)
5
+ */
6
+ ariaLabel?: string;
7
+ /**
8
+ * Classi aggiuntive da usare per il componente
5
9
  */
6
10
  className?: string;
7
11
  /**
8
- * Render the dark variant of the back to top button
12
+ * Renderizza la variante `dark` del componente
9
13
  */
10
14
  dark?: boolean;
11
15
  /**
12
- * Render the small variant of the back to top button
16
+ * Renderizza la variante `small` del componente
13
17
  */
14
18
  small?: boolean;
15
19
  /**
16
- * Add a shadow to the button
20
+ * Aggiunge l'ombra al componente
17
21
  */
18
22
  shadow?: boolean;
19
23
  /**
20
- * Configure after how many scrolled pixels the button is shown
24
+ * Configurazione riguardante dopo quanti pixel di scroll il bottone viene mostrato
21
25
  */
22
26
  showOffset?: number;
23
27
  }
24
- export declare const BackToTop: ({ className, dark, small, shadow, showOffset }: BackToTopProps) => React.JSX.Element;
28
+ export declare const BackToTop: ({ ariaLabel, className, dark, small, shadow, showOffset }: BackToTopProps) => React.JSX.Element;
@@ -34,6 +34,8 @@ export interface CollapseProps extends HTMLAttributes<HTMLElement> {
34
34
  onOverlayClick?: () => void;
35
35
  /** Da utilizzare per impostare un riferimento all'elemento DOM */
36
36
  innerRef?: Ref<HTMLElement>;
37
+ /** Testo pulsante di chiusura per screen reader */
38
+ closeSrText?: string;
37
39
  testId?: string;
38
40
  }
39
41
  export declare const Collapse: FC<CollapseProps>;
@@ -1,5 +1,6 @@
1
- import { ElementType, FC, HTMLAttributes } from 'react';
2
- export interface DropdownProps extends HTMLAttributes<HTMLElement> {
1
+ import { ElementType, FC } from 'react';
2
+ import { DropdownProps as BSDRopdownProps } from 'reactstrap';
3
+ export interface DropdownProps extends BSDRopdownProps {
3
4
  tag?: ElementType;
4
5
  inNavbar?: boolean;
5
6
  textCenter?: boolean;
@@ -1,6 +1,7 @@
1
1
  import { FC, HTMLAttributes } from 'react';
2
2
  export interface DropdownMenuProps extends HTMLAttributes<HTMLElement> {
3
3
  /** Classi aggiuntive da usare per il componente Button */
4
+ inNavbar?: boolean;
4
5
  className?: string;
5
6
  testId?: string;
6
7
  }
@@ -10,6 +10,7 @@ export interface HeaderTogglerProps extends ButtonHTMLAttributes<HTMLButtonEleme
10
10
  * Se fornito questo sovrascriverà il valore di default.
11
11
  */
12
12
  type?: 'button' | 'submit' | 'reset';
13
+ isOpen?: boolean;
13
14
  testId?: string;
14
15
  }
15
- export declare const HeaderToggler: ({ className, tag, type, testId, ...attributes }: HeaderTogglerProps) => React.JSX.Element;
16
+ export declare const HeaderToggler: ({ className, tag, type, isOpen, testId, ...attributes }: HeaderTogglerProps) => React.JSX.Element;
@@ -1,4 +1,4 @@
1
- import React, { Ref, ReactNode, TextareaHTMLAttributes } from 'react';
1
+ import React, { ReactNode, Ref, TextareaHTMLAttributes } from 'react';
2
2
  import type { CSSModule } from 'reactstrap/types/lib/utils';
3
3
  export interface TextAreaProps extends TextareaHTMLAttributes<HTMLTextAreaElement> {
4
4
  /** Etichetta del campo TextArea. */
@@ -75,6 +75,10 @@ export type useNavScrollResult = {
75
75
  * A function to retrieve the reference of the current active element (only the last element, not the elements hierarchy).
76
76
  */
77
77
  getActiveRef: () => RefObject<Element> | null;
78
+ /**
79
+ * A list of active ids (the full hierarchy).
80
+ */
81
+ percentage: number;
78
82
  };
79
83
  export type TrackedElement = {
80
84
  id: string;
@@ -1,7 +1,10 @@
1
1
  import { FC, HTMLAttributes, ElementType } from 'react';
2
2
  export interface SkiplinkProps extends HTMLAttributes<HTMLElement> {
3
+ ariaLabel?: string;
3
4
  /** Utilizzarlo in caso di utilizzo di componenti personalizzati */
4
5
  tag?: ElementType;
6
+ /** Utilizzare il componente in modalità `nav` */
7
+ nav?: boolean;
5
8
  /** Classi aggiuntive da usare per il componente Skiplink */
6
9
  className?: string;
7
10
  testId?: string;
@@ -2,6 +2,8 @@ import { FC, ElementType, AnchorHTMLAttributes } from 'react';
2
2
  export interface SkiplinkItemProps extends AnchorHTMLAttributes<HTMLAnchorElement> {
3
3
  /** Utilizzarlo in caso di utilizzo di componenti personalizzati */
4
4
  tag?: ElementType;
5
+ /** Utilizzare il componente come elemento di uno Skiplink in modalità `nav` */
6
+ navItem?: boolean;
5
7
  /** Classi aggiuntive da usare per il componente Skiplink */
6
8
  className?: string;
7
9
  /** Abilitare questo attributo per renderizzare lo SkipLinkItem al focus */
@@ -1,4 +1,5 @@
1
1
  export { BreadcrumbItem, ButtonGroup, ButtonToolbar, CardColumns, CardDeck, CardFooter, CardGroup, CardHeader, CardImg, CardImgOverlay, CardLink, CardSubtitle, Col, Container, Fade, Form, FormFeedback, FormGroup, FormText, InputGroup, InputGroupText, Label, ListGroup, ListGroupItem, ListGroupItemHeading, ListGroupItemText, Media, NavItem, NavLink, Navbar, NavbarBrand, NavbarToggler, PaginationItem as PagerItem, PaginationLink as PagerLink, Popover, PopoverBody, PopoverHeader, Row, TabContent, TabPane, Table, Tooltip, UncontrolledAlert, UncontrolledCollapse, UncontrolledTooltip, Util } from 'reactstrap';
2
+ export { Autocomplete } from './Autocomplete/Autocomplete';
2
3
  export { Accordion } from './Accordion/Accordion';
3
4
  export { AccordionBody } from './Accordion/AccordionBody';
4
5
  export { AccordionHeader } from './Accordion/AccordionHeader';
@@ -186,3 +187,4 @@ export type { ToggleProps } from './Toggle/Toggle';
186
187
  export type { ToolbarProps } from './Toolbar/Toolbar';
187
188
  export type { ToolbarItemBadge, ToolbarItemProps } from './Toolbar/ToolbarItem';
188
189
  export type { BreadcrumbItemProps, ButtonDropdownProps, ButtonGroupProps, ButtonToolbarProps, CardColumnsProps, CardDeckProps, CardFooterProps, CardGroupProps, CardHeaderProps, CardImgOverlayProps, CardImgProps, CardLinkProps, CardSubtitleProps, ColProps, ContainerProps, FadeProps, FormFeedbackProps, FormGroupProps, FormProps, FormTextProps, InputGroupProps, InputGroupTextProps, LabelProps, ListGroupItemHeadingProps, ListGroupItemProps, ListGroupItemTextProps, ListGroupProps, MediaProps, NavItemProps, NavLinkProps, NavbarBrandProps, NavbarProps, NavbarTogglerProps, PaginationItem as PagerItemProps, PaginationLink as PagerLinkProps, PopoverBodyProps, PopoverHeaderProps, PopoverProps, RowProps, TabContentProps, TabPaneProps, TableProps, TooltipProps, UncontrolledAlertProps, UncontrolledCollapseProps, UncontrolledTooltipProps } from 'reactstrap';
190
+ import "./track-focus.js";
package/package.json CHANGED
@@ -24,7 +24,7 @@
24
24
  "bugs": {
25
25
  "url": "https://github.com/italia/design-react-kit/issues"
26
26
  },
27
- "version": "5.4.0",
27
+ "version": "5.5.0",
28
28
  "license": "BSD-3",
29
29
  "type": "module",
30
30
  "module": "./dist/index.js",
@@ -37,7 +37,13 @@
37
37
  "main": "./dist/index.cjs"
38
38
  }
39
39
  },
40
- "sideEffects": false,
40
+ "sideEffects": [
41
+ "dist/track-focus.js",
42
+ "src/track-focus.js",
43
+ "dist/index.ts",
44
+ "dist/index.js",
45
+ "src/index.ts"
46
+ ],
41
47
  "files": [
42
48
  "dist",
43
49
  "src"
@@ -65,7 +71,7 @@
65
71
  "postversion": "echo \"You can now publish your version using 'git push --follow-tags'\""
66
72
  },
67
73
  "peerDependencies": {
68
- "bootstrap-italia": "2.11.0",
74
+ "bootstrap-italia": "^2.12.1",
69
75
  "react": ">=18.2.0"
70
76
  },
71
77
  "browserslist": [
@@ -75,20 +81,23 @@
75
81
  "./{src,stories,test}/**/*.{js,ts,tsx,jsx,mdx}": "yarn lint"
76
82
  },
77
83
  "devDependencies": {
78
- "@babel/preset-react": "^7.24.7",
84
+ "@babel/core": "^7.26.0",
85
+ "@babel/preset-env": "^7.26.0",
86
+ "@babel/preset-react": "^7.25.9",
87
+ "@babel/preset-typescript": "^7.26.0",
79
88
  "@commitlint/cli": "^18.4.3",
80
89
  "@commitlint/config-conventional": "^18.4.3",
81
90
  "@eslint/js": "^9.10.0",
82
- "@storybook/addon-a11y": "^8.0.5",
83
- "@storybook/addon-docs": "^8.0.5",
84
- "@storybook/addon-essentials": "^8.0.5",
85
- "@storybook/addon-interactions": "^8.0.5",
86
- "@storybook/addon-links": "^8.0.5",
87
- "@storybook/addon-onboarding": "^8.0.5",
88
- "@storybook/blocks": "^8.0.5",
89
- "@storybook/react": "^8.0.5",
90
- "@storybook/react-vite": "^8.0.5",
91
- "@storybook/test": "^8.0.5",
91
+ "@storybook/addon-a11y": "^8.4.0",
92
+ "@storybook/addon-docs": "^8.4.0",
93
+ "@storybook/addon-essentials": "^8.4.0",
94
+ "@storybook/addon-interactions": "^8.4.0",
95
+ "@storybook/addon-links": "^8.4.0",
96
+ "@storybook/addon-onboarding": "^8.4.0",
97
+ "@storybook/blocks": "^8.4.0",
98
+ "@storybook/react": "^8.4.0",
99
+ "@storybook/react-vite": "^8.4.0",
100
+ "@storybook/test": "^8.4.0",
92
101
  "@testing-library/jest-dom": "^6.4.2",
93
102
  "@testing-library/react": "^16",
94
103
  "@types/is-number": "^7.0.3",
@@ -97,7 +106,7 @@
97
106
  "@types/react": "^18.2.75",
98
107
  "@types/react-dom": "^18.2.24",
99
108
  "@types/react-transition-group": "^4.4.10",
100
- "bootstrap-italia": "^2.11.0",
109
+ "bootstrap-italia": "2.12.1",
101
110
  "browserslist-config-design-italia": "^1.0.0",
102
111
  "eslint": "^9.10.0",
103
112
  "eslint-plugin-mdx": "^3.1.5",
@@ -113,7 +122,7 @@
113
122
  "react-dom": "^18.2.0",
114
123
  "react-layout-masonry": "^1.2.0",
115
124
  "sass": "^1.75.0",
116
- "storybook": "^8.0.5",
125
+ "storybook": "^8.4.0",
117
126
  "ts-jest": "^29.1.2",
118
127
  "tslib": "^2.4.0",
119
128
  "tsup": "^8.0.2",
@@ -0,0 +1,80 @@
1
+ import React, { FC} from 'react';
2
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
3
+ // @ts-ignore non ci sono i types
4
+ import BaseAutocomplete from 'accessible-autocomplete/react'; // Reference to https://www.npmjs.com/package/accessible-autocomplete
5
+
6
+ export interface AutocompleteAttributes {
7
+ /** Identificativo */
8
+ id?: string;
9
+ /** Valori chiave - valore all'interno della select */
10
+ source: { value: string; label: string }[];
11
+ /** Placeholder (default: ``) */
12
+ placeholder?: string;
13
+ /** Valore di default (default: ``) */
14
+ defaultValue?: string;
15
+ /** Modalità display menu (default: `inline`) */
16
+ displayMenu?: string;
17
+ /** Funzione ritornante stringa in caso di nessun risultato */
18
+ tNoResults?: () => string;
19
+ /** Funzione ritornante stringa di suggerimento */
20
+ tAssistiveHint?: () => string;
21
+ /** Funzione ritornante stringa se la query è troppo corta */
22
+ tStatusQueryTooShort?: () => string;
23
+ /** Funzione ritornante stringa se non ci sono risultati di ricerca */
24
+ tStatusNoResults?: () => string;
25
+ /** Funzione ritornante stringa che identifica l'opzione selezionata */
26
+ tStatusSelectedOption?: () => string;
27
+ /** Funzione ritornante stringa che identifica i risultati */
28
+ tStatusResults?: () => string;
29
+ /** Classi aggiuntive da usare per il componente Button */
30
+ className?: string;
31
+ testId?: string;
32
+ }
33
+
34
+
35
+ const tAssistiveHintDefault = () =>
36
+ 'Quando i risultati del completamento automatico sono disponibili, usa le frecce su e giù per rivedere e Invio per selezionare. Utenti di dispositivi touch, esplora tramite tocco o con gesti di scorrimento'
37
+ const tNoResultsDefault = () => 'Nessun risultato trovato'
38
+ const tStatusQueryTooShortDefault = (minQueryLength: number) => `Digita ${minQueryLength} o più caratteri per mostrare le opzioni di ricerca`
39
+ const tStatusNoResultsDefault = () => 'Nessun risultato di ricerca'
40
+ const tStatusSelectedOptionDefault = (selectedOption: number, length: number, index: number) => `${selectedOption} ${index + 1} di ${length} è sottolineato`
41
+ const tStatusResultsDefault = (length: number, contentSelectedOption: number) => {
42
+ const words = {
43
+ result: length === 1 ? 'risultato' : 'risultati',
44
+ is: length === 1 ? 'è' : 'sono',
45
+ available: length === 1 ? 'disponibile' : 'disponibili',
46
+ }
47
+
48
+ return `${length} ${words.result} ${words.is} ${words.available}. ${contentSelectedOption}`
49
+ }
50
+
51
+ export const Autocomplete: FC<AutocompleteAttributes> = ({
52
+ tAssistiveHint = tAssistiveHintDefault,
53
+ tNoResults = tNoResultsDefault,
54
+ tStatusQueryTooShort = tStatusQueryTooShortDefault,
55
+ tStatusNoResults = tStatusNoResultsDefault,
56
+ tStatusSelectedOption = tStatusSelectedOptionDefault,
57
+ tStatusResults = tStatusResultsDefault,
58
+ placeholder = '',
59
+ defaultValue = '',
60
+ displayMenu = 'inline',
61
+ source,
62
+ ...attributes
63
+ }) => {
64
+
65
+ return <BaseAutocomplete
66
+ id='autocomplete'
67
+ source={source}
68
+ placeholder={placeholder}
69
+ defaultValue={defaultValue}
70
+ displayMenu={displayMenu}
71
+ tAssistiveHint = {tAssistiveHint}
72
+ tNoResults = {tNoResults}
73
+ tStatusQueryTooShort = {tStatusQueryTooShort}
74
+ tStatusNoResults = {tStatusNoResults}
75
+ tStatusSelectedOption = {tStatusSelectedOption}
76
+ tStatusResults = {tStatusResults}
77
+ {...attributes}
78
+ />;
79
+ };
80
+
@@ -1,27 +1,30 @@
1
1
  import React, { useLayoutEffect, useState } from 'react';
2
2
  import { Icon } from '../Icon/Icon';
3
3
  import classNames from 'classnames';
4
- import { Button } from '../Button/Button';
5
4
 
6
5
  export interface BackToTopProps {
7
6
  /**
8
- * Optional classnames to pass to <a> element
7
+ * Aria label che definisce lo scopo del componente (default: `Torna su`)
8
+ */
9
+ ariaLabel?: string;
10
+ /**
11
+ * Classi aggiuntive da usare per il componente
9
12
  */
10
13
  className?: string;
11
14
  /**
12
- * Render the dark variant of the back to top button
15
+ * Renderizza la variante `dark` del componente
13
16
  */
14
17
  dark?: boolean;
15
18
  /**
16
- * Render the small variant of the back to top button
19
+ * Renderizza la variante `small` del componente
17
20
  */
18
21
  small?: boolean;
19
22
  /**
20
- * Add a shadow to the button
23
+ * Aggiunge l'ombra al componente
21
24
  */
22
25
  shadow?: boolean;
23
26
  /**
24
- * Configure after how many scrolled pixels the button is shown
27
+ * Configurazione riguardante dopo quanti pixel di scroll il bottone viene mostrato
25
28
  */
26
29
  showOffset?: number;
27
30
  }
@@ -31,6 +34,7 @@ const backToTop = () => {
31
34
  };
32
35
 
33
36
  export const BackToTop = ({
37
+ ariaLabel='Torna su',
34
38
  className,
35
39
  dark = false,
36
40
  small = false,
@@ -50,9 +54,8 @@ export const BackToTop = ({
50
54
  }, [showOffset]);
51
55
 
52
56
  return (
53
- <Button
54
- aria-hidden='true'
55
- tabIndex={-1}
57
+ <a
58
+ aria-label={ariaLabel}
56
59
  className={classNames(
57
60
  className,
58
61
  'back-to-top',
@@ -66,7 +69,7 @@ export const BackToTop = ({
66
69
  style={{ padding: 0 }}
67
70
  color={!dark ? 'primary' : ''}
68
71
  >
69
- <Icon color={dark ? 'secondary' : 'white'} icon='it-arrow-up' style={{ top: 0 }} />
70
- </Button>
72
+ <Icon color={dark ? 'secondary' : 'light'} icon='it-arrow-up' style={{ cursor: 'pointer' }} />
73
+ </a>
71
74
  );
72
75
  };
@@ -1,9 +1,12 @@
1
- import React, { ElementType, FC, HTMLAttributes, Ref } from 'react';
2
1
  import classNames from 'classnames';
2
+ import React, { ElementType, FC, HTMLAttributes, Ref } from 'react';
3
3
 
4
4
  import { Collapse as CollapseBase } from 'reactstrap';
5
5
  import { CSSModule } from 'reactstrap/types/lib/utils';
6
6
 
7
+ import { Icon } from '../Icon/Icon';
8
+
9
+
7
10
  // Copy over from reactstrap and add new ones
8
11
  export interface CollapseProps extends HTMLAttributes<HTMLElement> {
9
12
  /** Indica se il menu HeaderNav sia aperto o meno. Usato unicamente nel caso della HeaderNav, ovvero con navbar e header entrambi true */
@@ -39,6 +42,8 @@ export interface CollapseProps extends HTMLAttributes<HTMLElement> {
39
42
  onOverlayClick?: () => void;
40
43
  /** Da utilizzare per impostare un riferimento all'elemento DOM */
41
44
  innerRef?: Ref<HTMLElement>;
45
+ /** Testo pulsante di chiusura per screen reader */
46
+ closeSrText?: string,
42
47
  testId?: string;
43
48
  }
44
49
 
@@ -52,20 +57,27 @@ export const Collapse: FC<CollapseProps> = ({
52
57
  onOverlayClick,
53
58
  cssModule,
54
59
  testId,
60
+ closeSrText='Nascondi la navigazione',
55
61
  ...attributes
56
62
  }) => {
57
63
  const newCssModule = {
58
64
  'navbar-collapse': 'navbar-collapsable',
59
65
  ...cssModule
60
66
  };
61
- if (megamenu || navbar || header) {
67
+ if (megamenu || navbar) {
62
68
  const classes = classNames(className, 'navbar-collapse', {
63
69
  expanded: isOpen
64
70
  });
65
71
  const style = { display: isOpen ? 'block' : 'none' };
72
+ const overlayClasses = classNames(
73
+ 'overlay',
74
+ {
75
+ 'fade' : isOpen,
76
+ 'show' : isOpen
77
+ }
78
+ )
66
79
  return (
67
80
  <CollapseBase
68
- theme='dark'
69
81
  className={classes}
70
82
  cssModule={newCssModule}
71
83
  navbar={navbar}
@@ -73,10 +85,11 @@ export const Collapse: FC<CollapseProps> = ({
73
85
  data-testid={testId}
74
86
  {...attributes}
75
87
  >
76
- <div className='overlay' style={style} onClick={onOverlayClick}></div>
77
- <div className='close-div visually-hidden'>
78
- <button className='btn close-menu' type='button'>
79
- <span className='it-close'></span>close
88
+ <div className={overlayClasses} style={style} onClick={onOverlayClick}></div>
89
+ <div className='close-div'>
90
+ <button className='btn close-menu' type='button' onClick={onOverlayClick}>
91
+ <span className="visually-hidden">{closeSrText}</span>
92
+ <Icon color='white' icon='it-close-big'/>
80
93
  </button>
81
94
  </div>
82
95
  {megamenu ? <div className='menu-wrapper '>{children}</div> : <>{children}</>}
@@ -1,7 +1,7 @@
1
1
  import classNames from 'classnames';
2
- import React, { ElementType, FC, HTMLAttributes } from 'react';
3
- import { Dropdown as BSDRopdown } from 'reactstrap';
4
- export interface DropdownProps extends HTMLAttributes<HTMLElement> {
2
+ import React, { ElementType, FC } from 'react';
3
+ import { Dropdown as BSDRopdown, DropdownProps as BSDRopdownProps} from 'reactstrap';
4
+ export interface DropdownProps extends BSDRopdownProps {
5
5
  tag?: ElementType;
6
6
  inNavbar?: boolean;
7
7
  textCenter?: boolean;
@@ -21,9 +21,7 @@ export const Dropdown: FC<DropdownProps> = ({
21
21
  ...attributes
22
22
  }) => {
23
23
  const classes = classNames(className, {
24
- dropdown: true,
25
24
  'text-center': textCenter,
26
- 'nav-item': inNavbar
27
25
  });
28
26
 
29
27
  const [isOpen, setIsOpen] = React.useState(false);
@@ -41,7 +39,12 @@ export const Dropdown: FC<DropdownProps> = ({
41
39
  inNavbar={inNavbar}
42
40
  nav={inNavbar}
43
41
  >
44
- {children}
42
+ {
43
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
44
+ React.Children.map(children, (child: any) =>
45
+ React.cloneElement(child, { inNavbar: inNavbar })
46
+ )
47
+ }
45
48
  </BSDRopdown>
46
49
  );
47
50
  };
@@ -1,19 +1,23 @@
1
1
  import React, { FC, HTMLAttributes } from 'react';
2
- import classNames from 'classnames';
3
2
  import { DropdownMenu as BSDRopdownMenu } from 'reactstrap';
3
+
4
+ // .it-header-slim-wrapper .it-header-slim-wrapper-content .dropdown-menu {
5
+ // top: unset !important;
6
+ // }
7
+
4
8
  export interface DropdownMenuProps extends HTMLAttributes<HTMLElement> {
5
9
  /** Classi aggiuntive da usare per il componente Button */
10
+ inNavbar?: boolean;
6
11
  className?: string;
7
12
  testId?: string;
8
13
  }
9
14
 
10
- export const DropdownMenu: FC<DropdownMenuProps> = ({ className, testId, children, ...attributes }) => {
11
- const classes = classNames(className, {
12
- 'dropdown-menu': true
13
- });
15
+ export const DropdownMenu: FC<DropdownMenuProps> = ({ className, inNavbar, testId, children, ...attributes }) => {
14
16
 
17
+ const style = inNavbar ? {'top' : 'unset !important'} : {}
18
+
15
19
  return (
16
- <BSDRopdownMenu className={classes} data-testid={testId} {...attributes}>
20
+ <BSDRopdownMenu style={style} data-testid={testId} {...attributes} className={className}>
17
21
  {children}
18
22
  </BSDRopdownMenu>
19
23
  );
@@ -28,8 +28,7 @@ export const DropdownToggle: FC<DropdownToggleProps> = ({
28
28
  const classes = classNames(className, {
29
29
  'btn-dropdown': Tag === 'a' && !inNavbar,
30
30
  'dropdown-toggle': true,
31
- 'nav-link': inNavbar,
32
- btn: tag === 'button'
31
+ btn: tag === 'button' && !inNavbar
33
32
  });
34
33
 
35
34
  let colorClass = '';
@@ -30,7 +30,7 @@ export const HeaderContent = ({ className, megamenu, testId, ...attributes }: He
30
30
  <div className={classes} {...attributes} data-testid={testId} />
31
31
  );
32
32
  return (
33
- <Container>
33
+ <Container className='container-xxl' fluid>
34
34
  <Row>
35
35
  <Col>{Content}</Col>
36
36
  </Row>