@tedi-design-system/react 18.1.0-rc.2 → 18.1.0-rc.20

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 (155) hide show
  1. package/_virtual/index.es13.js +2 -2
  2. package/_virtual/index.es14.js +2 -2
  3. package/bundle-stats.html +1 -1
  4. package/community.cjs.js +1 -1
  5. package/community.es.js +156 -152
  6. package/external/hoist-non-react-statics/external/react-is/cjs/react-is.development.cjs.js +1 -1
  7. package/external/hoist-non-react-statics/external/react-is/cjs/react-is.development.es.js +1 -1
  8. package/external/hoist-non-react-statics/external/react-is/cjs/react-is.production.min.cjs.js +1 -1
  9. package/external/hoist-non-react-statics/external/react-is/cjs/react-is.production.min.es.js +1 -1
  10. package/external/hoist-non-react-statics/external/react-is/index.cjs.js +1 -1
  11. package/external/hoist-non-react-statics/external/react-is/index.es.js +1 -1
  12. package/external/prop-types/external/react-is/cjs/react-is.development.cjs.js +1 -1
  13. package/external/prop-types/external/react-is/cjs/react-is.development.es.js +1 -1
  14. package/external/prop-types/external/react-is/cjs/react-is.production.min.cjs.js +1 -1
  15. package/external/prop-types/external/react-is/cjs/react-is.production.min.es.js +1 -1
  16. package/external/prop-types/external/react-is/index.cjs.js +1 -1
  17. package/external/prop-types/external/react-is/index.es.js +1 -1
  18. package/external/react-is/index.cjs.js +1 -1
  19. package/external/react-is/index.es.js +1 -1
  20. package/external/toposort/index.cjs.js +1 -1
  21. package/external/toposort/index.es.js +1 -1
  22. package/index.css +1 -1
  23. package/package.json +1 -1
  24. package/src/community/components/anchor/anchor.d.ts +1 -0
  25. package/src/community/components/button/button.d.ts +1 -0
  26. package/src/community/components/card/card-content/card-content.d.ts +3 -0
  27. package/src/community/components/card/card-header/card-header.d.ts +3 -0
  28. package/src/community/components/card/card-notification/card-notification.d.ts +3 -0
  29. package/src/community/components/card/card.d.ts +3 -0
  30. package/src/community/components/dropdown/dropdown.cjs.js +1 -1
  31. package/src/community/components/dropdown/dropdown.d.ts +3 -0
  32. package/src/community/components/dropdown/dropdown.es.js +5 -6
  33. package/src/community/components/form/choice-group/choice-group.d.ts +3 -0
  34. package/src/community/components/form/file-upload/file-upload.d.ts +6 -0
  35. package/src/community/components/form/radio/radio.d.ts +3 -0
  36. package/src/community/components/form/select/select.d.ts +3 -0
  37. package/src/community/components/form/toggle/toggle.cjs.js +1 -1
  38. package/src/community/components/form/toggle/toggle.d.ts +3 -0
  39. package/src/community/components/form/toggle/toggle.es.js +5 -6
  40. package/src/community/components/layout/header/components/header-language/header-language.d.ts +3 -0
  41. package/src/community/components/layout/header/components/header-role/header-role.d.ts +3 -0
  42. package/src/community/components/layout/header/components/sidenav-toggle/sidenav-toggle.d.ts +3 -0
  43. package/src/community/components/layout/header/header/header.d.ts +3 -0
  44. package/src/community/components/layout/sidenav/sidenav.d.ts +3 -0
  45. package/src/community/components/map-components/base-map-selection/base-map-option.cjs.js +1 -0
  46. package/src/community/components/map-components/base-map-selection/base-map-option.d.ts +64 -0
  47. package/src/community/components/map-components/base-map-selection/base-map-option.es.js +75 -0
  48. package/src/community/components/map-components/base-map-selection/base-map-selection.cjs.js +1 -1
  49. package/src/community/components/map-components/base-map-selection/base-map-selection.d.ts +37 -22
  50. package/src/community/components/map-components/base-map-selection/base-map-selection.es.js +76 -17
  51. package/src/community/components/map-components/base-map-selection/base-map-selection.module.scss.cjs.js +1 -1
  52. package/src/community/components/map-components/base-map-selection/base-map-selection.module.scss.es.js +5 -1
  53. package/src/community/components/map-components/button-group/button-group.module.scss.cjs.js +1 -1
  54. package/src/community/components/map-components/button-group/button-group.module.scss.es.js +1 -0
  55. package/src/community/components/map-components/left-panel/left-panel-content.cjs.js +1 -1
  56. package/src/community/components/map-components/left-panel/left-panel-content.d.ts +10 -5
  57. package/src/community/components/map-components/left-panel/left-panel-content.es.js +7 -21
  58. package/src/community/components/map-components/left-panel/left-panel-footer.cjs.js +1 -1
  59. package/src/community/components/map-components/left-panel/left-panel-footer.d.ts +11 -1
  60. package/src/community/components/map-components/left-panel/left-panel-footer.es.js +7 -24
  61. package/src/community/components/map-components/left-panel/left-panel-header.cjs.js +1 -1
  62. package/src/community/components/map-components/left-panel/left-panel-header.d.ts +11 -1
  63. package/src/community/components/map-components/left-panel/left-panel-header.es.js +7 -62
  64. package/src/community/components/map-components/left-panel/left-panel.cjs.js +1 -1
  65. package/src/community/components/map-components/left-panel/left-panel.d.ts +67 -5
  66. package/src/community/components/map-components/left-panel/left-panel.es.js +85 -14
  67. package/src/community/components/map-components/left-panel/left-panel.module.scss.cjs.js +1 -1
  68. package/src/community/components/map-components/left-panel/left-panel.module.scss.es.js +4 -4
  69. package/src/community/components/map-components/map-button/map-button.cjs.js +1 -1
  70. package/src/community/components/map-components/map-button/map-button.d.ts +8 -3
  71. package/src/community/components/map-components/map-button/map-button.es.js +42 -33
  72. package/src/community/components/map-components/map-button/map-button.module.scss.cjs.js +1 -1
  73. package/src/community/components/map-components/map-button/map-button.module.scss.es.js +3 -0
  74. package/src/community/components/map-components/resizer/resizer.cjs.js +1 -1
  75. package/src/community/components/map-components/resizer/resizer.es.js +9 -10
  76. package/src/community/components/map-components/split-pane/split-pane.cjs.js +1 -0
  77. package/src/community/components/map-components/split-pane/split-pane.d.ts +37 -0
  78. package/src/community/components/map-components/split-pane/split-pane.es.js +128 -0
  79. package/src/community/components/map-components/split-pane/split-pane.module.scss.cjs.js +1 -0
  80. package/src/community/components/map-components/split-pane/split-pane.module.scss.es.js +17 -0
  81. package/src/community/components/status/status.d.ts +3 -0
  82. package/src/community/components/table/table.d.ts +3 -0
  83. package/src/community/components/tag/tag.d.ts +3 -0
  84. package/src/community/components/toggle-open/toggle-open.d.ts +3 -0
  85. package/src/community/components/tooltip/tooltip-trigger.d.ts +3 -0
  86. package/src/community/components/tooltip/tooltip.d.ts +3 -0
  87. package/src/community/index.d.ts +1 -0
  88. package/src/tedi/components/buttons/collapse-button/collapse-button.cjs.js +1 -1
  89. package/src/tedi/components/buttons/collapse-button/collapse-button.es.js +2 -1
  90. package/src/tedi/components/content/table/table.cjs.js +1 -1
  91. package/src/tedi/components/content/table/table.d.ts +8 -5
  92. package/src/tedi/components/content/table/table.es.js +308 -295
  93. package/src/tedi/components/form/file-dropzone/file-dropzone.cjs.js +1 -1
  94. package/src/tedi/components/form/file-dropzone/file-dropzone.es.js +90 -79
  95. package/src/tedi/components/form/file-upload/file-upload.cjs.js +1 -1
  96. package/src/tedi/components/form/file-upload/file-upload.d.ts +4 -1
  97. package/src/tedi/components/form/file-upload/file-upload.es.js +138 -119
  98. package/src/tedi/components/form/file-upload/file-upload.module.scss.cjs.js +1 -1
  99. package/src/tedi/components/form/file-upload/file-upload.module.scss.es.js +1 -1
  100. package/src/tedi/components/form/search/search.cjs.js +1 -1
  101. package/src/tedi/components/form/search/search.es.js +60 -40
  102. package/src/tedi/components/form/search/search.module.scss.cjs.js +1 -1
  103. package/src/tedi/components/form/search/search.module.scss.es.js +7 -3
  104. package/src/tedi/components/layout/header/components/header-language/header-language.cjs.js +1 -0
  105. package/src/tedi/components/layout/header/components/header-language/header-language.es.js +105 -0
  106. package/src/tedi/components/layout/header/components/header-language/header-language.module.scss.cjs.js +1 -0
  107. package/src/tedi/components/layout/header/components/header-language/header-language.module.scss.es.js +12 -0
  108. package/src/tedi/components/layout/header/components/header-login/header-login.cjs.js +1 -0
  109. package/src/tedi/components/layout/header/components/header-login/header-login.es.js +36 -0
  110. package/src/tedi/components/layout/header/components/header-login/header-login.module.scss.cjs.js +1 -0
  111. package/src/tedi/components/layout/header/components/header-login/header-login.module.scss.es.js +8 -0
  112. package/src/tedi/components/layout/header/components/header-logout/header-logout.cjs.js +1 -0
  113. package/src/tedi/components/layout/header/components/header-logout/header-logout.es.js +33 -0
  114. package/src/tedi/components/layout/header/components/header-logout/header-logout.module.scss.cjs.js +1 -0
  115. package/src/tedi/components/layout/header/components/header-logout/header-logout.module.scss.es.js +7 -0
  116. package/src/tedi/components/layout/header/components/header-mobile-button/header-mobile-button.cjs.js +1 -0
  117. package/src/tedi/components/layout/header/components/header-mobile-button/header-mobile-button.es.js +25 -0
  118. package/src/tedi/components/layout/header/components/header-mobile-button/header-mobile-button.module.scss.cjs.js +1 -0
  119. package/src/tedi/components/layout/header/components/header-mobile-button/header-mobile-button.module.scss.es.js +10 -0
  120. package/src/tedi/components/layout/header/components/header-profile/header-profile.cjs.js +1 -0
  121. package/src/tedi/components/layout/header/components/header-profile/header-profile.es.js +136 -0
  122. package/src/tedi/components/layout/header/components/header-profile/header-profile.module.scss.cjs.js +1 -0
  123. package/src/tedi/components/layout/header/components/header-profile/header-profile.module.scss.es.js +14 -0
  124. package/src/tedi/components/layout/header/components/header-role/header-role-representatives.cjs.js +1 -0
  125. package/src/tedi/components/layout/header/components/header-role/header-role-representatives.es.js +89 -0
  126. package/src/tedi/components/layout/header/components/header-role/header-role.cjs.js +1 -0
  127. package/src/tedi/components/layout/header/components/header-role/header-role.es.js +162 -0
  128. package/src/tedi/components/layout/header/components/header-role/header-role.module.scss.cjs.js +1 -0
  129. package/src/tedi/components/layout/header/components/header-role/header-role.module.scss.es.js +25 -0
  130. package/src/tedi/components/layout/header/components/header-search/header-search.cjs.js +1 -0
  131. package/src/tedi/components/layout/header/components/header-search/header-search.es.js +60 -0
  132. package/src/tedi/components/layout/header/components/header-search/header-search.module.scss.cjs.js +1 -0
  133. package/src/tedi/components/layout/header/components/header-search/header-search.module.scss.es.js +9 -0
  134. package/src/tedi/components/layout/header/header.cjs.js +1 -0
  135. package/src/tedi/components/layout/header/header.es.js +63 -0
  136. package/src/tedi/components/layout/header/header.module.scss.cjs.js +1 -0
  137. package/src/tedi/components/layout/header/header.module.scss.es.js +13 -0
  138. package/src/tedi/components/layout/hide-at/hide-at.cjs.js +1 -0
  139. package/src/tedi/components/layout/hide-at/hide-at.es.js +10 -0
  140. package/src/tedi/components/layout/show-at/show-at.cjs.js +1 -0
  141. package/src/tedi/components/layout/show-at/show-at.es.js +10 -0
  142. package/src/tedi/components/tags/tag/tag.cjs.js +1 -1
  143. package/src/tedi/components/tags/tag/tag.d.ts +9 -0
  144. package/src/tedi/components/tags/tag/tag.es.js +18 -17
  145. package/src/tedi/helpers/hooks/use-file-upload.cjs.js +1 -1
  146. package/src/tedi/helpers/hooks/use-file-upload.es.js +71 -66
  147. package/src/tedi/index.d.ts +3 -0
  148. package/src/tedi/providers/label-provider/label-provider.cjs.js +1 -1
  149. package/src/tedi/providers/label-provider/label-provider.d.ts +2 -2
  150. package/src/tedi/providers/label-provider/label-provider.es.js +2 -2
  151. package/src/tedi/providers/label-provider/labels-map.cjs.js +1 -1
  152. package/src/tedi/providers/label-provider/labels-map.d.ts +49 -0
  153. package/src/tedi/providers/label-provider/labels-map.es.js +114 -65
  154. package/tedi.cjs.js +1 -1
  155. package/tedi.es.js +303 -281
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tedi-design-system/react",
3
- "version": "18.1.0-rc.2",
3
+ "version": "18.1.0-rc.20",
4
4
  "type": "module",
5
5
  "sideEffects": false,
6
6
  "exports": {
@@ -18,6 +18,7 @@ export type AnchorComponent = <C extends React.ElementType = 'a'>(props: AnchorP
18
18
  * Inherits all props from the component passed into `as`. If `as` is omitted, then the default is native `<a>` tag
19
19
  *
20
20
  * To allow Customized Anchor usage as direct children of Header you need to add displayName to it. <a href="/docs/components-layout-header-header-overview--header-overview#settings">See more.</a>
21
+ * @deprecated Use `Link` from `@tedi-design-system/react/tedi` instead.
21
22
  */
22
23
  export declare const Anchor: AnchorComponent;
23
24
  export default Anchor;
@@ -19,6 +19,7 @@ export type ButtonProps<C extends React.ElementType = 'button'> = ButtonContentP
19
19
  export type ButtonComponent = <C extends React.ElementType = 'button'>(props: ButtonProps<C>) => React.ReactElement | null;
20
20
  /**
21
21
  * Renders a `<button>` tag and has all of its props plus our own defined props. For more info about usage of buttons see [Button](/docs/documentation-buttons-buttons--buttons) & [ButtonGroups](/docs/documentation-buttons-buttongroups--buttongroups) documentation.
22
+ * @deprecated Use `Button` from `@tedi-design-system/react/tedi` instead.
22
23
  */
23
24
  export declare const Button: ButtonComponent;
24
25
  export default Button;
@@ -37,6 +37,9 @@ export interface CardContentProps extends BreakpointSupport<CardContentBreakpoin
37
37
  */
38
38
  children?: React.ReactNode;
39
39
  }
40
+ /**
41
+ * @deprecated Use `CardContent` from `@tedi-design-system/react/tedi` instead.
42
+ */
40
43
  export declare const CardContent: {
41
44
  (props: CardContentProps): JSX.Element;
42
45
  displayName: string;
@@ -38,6 +38,9 @@ export type CardHeaderProps = BreakpointSupport<CardHeaderBreakpointProps> & {
38
38
  export interface CardHeaderAsButton extends Partial<React.ButtonHTMLAttributes<HTMLButtonElement>> {
39
39
  role: 'button';
40
40
  }
41
+ /**
42
+ * @deprecated Use `CardHeader` from `@tedi-design-system/react/tedi` instead.
43
+ */
41
44
  export declare const CardHeader: {
42
45
  (props: CardHeaderProps): JSX.Element;
43
46
  displayName: string;
@@ -1,5 +1,8 @@
1
1
  import { AlertProps } from '../../../../tedi/components/notifications/alert/alert';
2
2
  import { CardContentProps } from '../card-content/card-content';
3
3
  export type CardNotificationProps = AlertProps & Pick<CardContentProps, 'padding'>;
4
+ /**
5
+ * @deprecated Use `CardNotification` from `@tedi-design-system/react/tedi` instead.
6
+ */
4
7
  export declare const CardNotification: (props: CardNotificationProps) => JSX.Element;
5
8
  export default CardNotification;
@@ -36,5 +36,8 @@ export interface CardProps extends BreakpointSupport<CardBreakpointProps> {
36
36
  */
37
37
  children?: React.ReactElement<CardContentProps | CardHeaderProps> | React.ReactElement<CardContentProps | CardHeaderProps>[] | React.ReactNode;
38
38
  }
39
+ /**
40
+ * @deprecated Use `Card` from `@tedi-design-system/react/tedi` instead.
41
+ */
39
42
  export declare const Card: React.ForwardRefExoticComponent<CardProps & React.RefAttributes<HTMLDivElement>>;
40
43
  export default Card;
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const s=require("react/jsx-runtime"),o=require("../../../../external/@floating-ui/react/dist/floating-ui.react.cjs.js"),K=require("../../../../external/classnames/index.cjs.js"),d=require("react"),T=require("../button/button.cjs.js"),a=require("./dropdown.module.scss.cjs.js"),H=require("../../../tedi/providers/label-provider/use-labels.cjs.js"),$=require("../../../../external/@floating-ui/dom/dist/floating-ui.dom.cjs.js"),D=require("../../../../external/@floating-ui/react-dom/dist/floating-ui.react-dom.cjs.js"),_=c=>{const{getLabel:v}=H.useLabels(),{button:F,items:u,onItemClick:l,closeMenuOnClick:h=!0,...q}=c,{initialFocus:j=-1,modal:f=!1,...p}=c.focusManager??{},{visuallyHiddenDismiss:M=f?v("close"):!1}=p??{},R=o.useFloatingNodeId(),g=d.useRef([]),[b,i]=d.useState(!1),[x,y]=d.useState(null),{x:C,y:N,strategy:O,refs:w,placement:P,context:r}=o.useFloating({placement:"bottom-start",nodeId:R,open:b,onOpenChange:i,middleware:[D.flip(),D.shift()],whileElementsMounted:$.autoUpdate}),S=u.findIndex(e=>e.isActive),{getReferenceProps:L,getFloatingProps:U,getItemProps:A}=o.useInteractions([o.useClick(r),o.useListNavigation(r,{listRef:g,activeIndex:x,selectedIndex:S,onNavigate:y,loop:!0}),o.useRole(r,{role:"listbox"}),o.useDismiss(r)]),E=()=>{const e=s.jsx(o.FloatingFocusManager,{context:r,initialFocus:j,visuallyHiddenDismiss:M,modal:f,...p,children:s.jsx("div",{...U({ref:w.setFloating,style:{position:O,left:C??0,top:N??0},className:a.default.dropdown,onKeyDown(t){t.key==="Tab"&&i(!1)}}),"data-placement":P,children:u.map((t,n)=>B(t,n))})});return b?e:null},k=e=>K.default(a.default.dropdown__item,{[a.default["dropdown__item--active"]]:e.isActive,[a.default["dropdown__item--disabled"]]:e.isDisabled}),I=(e,t,n)=>{var m;l==null||l(e,t,n),(m=e==null?void 0:e.onClick)==null||m.call(e,n),h&&i(!1)},B=(e,t)=>s.jsx("button",{...A({disabled:e.isDisabled,tabIndex:x===t?0:-1,role:"option",className:k(e),onClick:n=>I(e,t,n),onKeyDown(n){n.key==="Enter"&&I(e,t,n)},ref(n){g.current[t]=n}}),children:e.children},t);return s.jsxs(s.Fragment,{children:[s.jsx(T.Button,{"data-name":"dropdown",...q,...F,...L({ref:w.setReference,tabIndex:0})}),s.jsx(o.FloatingPortal,{children:E()})]})};exports.Dropdown=_;exports.default=_;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react/jsx-runtime"),o=require("../../../../external/@floating-ui/react/dist/floating-ui.react.cjs.js"),B=require("../../../../external/classnames/index.cjs.js"),c=require("react"),K=require("../button/button.cjs.js"),a=require("./dropdown.module.scss.cjs.js"),T=require("../../../tedi/providers/label-provider/use-labels.cjs.js"),H=require("../../../../external/@floating-ui/dom/dist/floating-ui.dom.cjs.js"),D=require("../../../../external/@floating-ui/react-dom/dist/floating-ui.react-dom.cjs.js"),$=d=>{const{getLabel:F}=T.useLabels(),{button:_,items:u,onItemClick:l,closeMenuOnClick:h=!0,...q}=d,{initialFocus:v=-1,modal:f=!1,...p}=d.focusManager??{},{visuallyHiddenDismiss:j=f?F("close"):!1}=p??{},R=o.useFloatingNodeId(),g=c.useRef([]),[b,i]=c.useState(!1),[x,M]=c.useState(null),{x:y,y:C,strategy:N,refs:w,placement:O,context:r}=o.useFloating({placement:"bottom-start",nodeId:R,open:b,onOpenChange:i,middleware:[D.flip(),D.shift()],whileElementsMounted:H.autoUpdate}),P=u.findIndex(e=>e.isActive),{getReferenceProps:S,getFloatingProps:L,getItemProps:U}=o.useInteractions([o.useClick(r),o.useListNavigation(r,{listRef:g,activeIndex:x,selectedIndex:P,onNavigate:M,loop:!0}),o.useRole(r,{role:"listbox"}),o.useDismiss(r)]),A=()=>{const e=s.jsx(o.FloatingFocusManager,{context:r,initialFocus:v,visuallyHiddenDismiss:j,modal:f,...p,children:s.jsx("div",{...L({ref:w.setFloating,style:{position:N,left:y??0,top:C??0},className:a.default.dropdown,onKeyDown(t){t.key==="Tab"&&i(!1)}}),"data-placement":O,children:u.map((t,n)=>k(t,n))})});return b?e:null},E=e=>B.default(a.default.dropdown__item,{[a.default["dropdown__item--active"]]:e.isActive,[a.default["dropdown__item--disabled"]]:e.isDisabled}),I=(e,t,n)=>{var m;l==null||l(e,t,n),(m=e==null?void 0:e.onClick)==null||m.call(e,n),h&&i(!1)},k=(e,t)=>s.jsx("button",{...U({disabled:e.isDisabled,tabIndex:x===t?0:-1,role:"option",className:E(e),onClick:n=>I(e,t,n),onKeyDown(n){n.key==="Enter"&&I(e,t,n)},ref(n){g.current[t]=n}}),children:e.children},t);return s.jsxs(s.Fragment,{children:[s.jsx(K.Button,{"data-name":"dropdown",...q,..._,...S({ref:w.setReference,tabIndex:0})}),s.jsx(o.FloatingPortal,{children:A()})]})};exports.Dropdown=$;
@@ -42,5 +42,8 @@ export type DropdownProps = {
42
42
  */
43
43
  focusManager?: Omit<React.ComponentProps<typeof FloatingFocusManager>, 'context' | 'children'>;
44
44
  };
45
+ /**
46
+ * @deprecated Use `Dropdown` from `@tedi-design-system/react/tedi` instead.
47
+ */
45
48
  export declare const Dropdown: (props: DropdownProps) => import("react/jsx-runtime").JSX.Element;
46
49
  export default Dropdown;
@@ -7,15 +7,15 @@ import r from "./dropdown.module.scss.es.js";
7
7
  import { useLabels as Y } from "../../../tedi/providers/label-provider/use-labels.es.js";
8
8
  import { autoUpdate as Z } from "../../../../external/@floating-ui/dom/dist/floating-ui.dom.es.js";
9
9
  import { flip as $, shift as ee } from "../../../../external/@floating-ui/react-dom/dist/floating-ui.react-dom.es.js";
10
- const ce = (d) => {
11
- const { getLabel: x } = Y(), { button: D, items: c, onItemClick: a, closeMenuOnClick: F = !0, ...h } = d, { initialFocus: v = -1, modal: p = !1, ...f } = d.focusManager ?? {}, { visuallyHiddenDismiss: _ = p ? x("close") : !1 } = f ?? {}, R = H(), u = i.useRef([]), [m, l] = i.useState(!1), [g, M] = i.useState(null), { x: N, y, strategy: C, refs: I, placement: O, context: n } = T({
10
+ const de = (c) => {
11
+ const { getLabel: x } = Y(), { button: D, items: d, onItemClick: a, closeMenuOnClick: F = !0, ...h } = c, { initialFocus: v = -1, modal: p = !1, ...f } = c.focusManager ?? {}, { visuallyHiddenDismiss: _ = p ? x("close") : !1 } = f ?? {}, R = H(), u = i.useRef([]), [m, l] = i.useState(!1), [g, M] = i.useState(null), { x: N, y, strategy: C, refs: I, placement: O, context: n } = T({
12
12
  placement: "bottom-start",
13
13
  nodeId: R,
14
14
  open: m,
15
15
  onOpenChange: l,
16
16
  middleware: [$(), ee()],
17
17
  whileElementsMounted: Z
18
- }), P = c.findIndex((e) => e.isActive), { getReferenceProps: A, getFloatingProps: E, getItemProps: L } = U([
18
+ }), P = d.findIndex((e) => e.isActive), { getReferenceProps: A, getFloatingProps: E, getItemProps: L } = U([
19
19
  q(n),
20
20
  z(n, {
21
21
  listRef: u,
@@ -51,7 +51,7 @@ const ce = (d) => {
51
51
  }
52
52
  }),
53
53
  "data-placement": O,
54
- children: c.map((o, t) => k(o, t))
54
+ children: d.map((o, t) => k(o, t))
55
55
  }
56
56
  )
57
57
  }
@@ -100,6 +100,5 @@ const ce = (d) => {
100
100
  ] });
101
101
  };
102
102
  export {
103
- ce as Dropdown,
104
- ce as default
103
+ de as Dropdown
105
104
  };
@@ -78,5 +78,8 @@ export interface ChoiceGroupProps extends FormLabelProps {
78
78
  indented?: boolean;
79
79
  } & Partial<Omit<CheckProps, 'indeterminate' | 'checked' | 'onChange' | 'defaultChecked' | 'label'>>;
80
80
  }
81
+ /**
82
+ * @deprecated Use `ChoiceGroup` from `@tedi-design-system/react/tedi` instead.
83
+ */
81
84
  export declare const ChoiceGroup: (props: ChoiceGroupProps) => React.ReactElement;
82
85
  export default ChoiceGroup;
@@ -12,6 +12,9 @@ export interface RejectedFile {
12
12
  type: FileRejectionType;
13
13
  file: File;
14
14
  }
15
+ /**
16
+ * @deprecated Use FileUpload from `@tedi-design-system/react/tedi` instead.
17
+ */
15
18
  export interface FileUploadProps extends FormLabelProps {
16
19
  /**
17
20
  * Additional classes.
@@ -65,5 +68,8 @@ export interface FileUploadProps extends FormLabelProps {
65
68
  */
66
69
  maxSize?: number;
67
70
  }
71
+ /**
72
+ * @deprecated Use `FileUpload` from `@tedi-design-system/react/tedi` instead.
73
+ */
68
74
  export declare const FileUpload: (props: FileUploadProps) => JSX.Element;
69
75
  export default FileUpload;
@@ -1,4 +1,7 @@
1
1
  import { ChoiceInputProps } from '../choice-input.types';
2
2
  export type RadioProps = ChoiceInputProps;
3
+ /**
4
+ * @deprecated Use `Radio` from `@tedi-design-system/react/tedi` instead.
5
+ */
3
6
  export declare const Radio: (props: RadioProps) => JSX.Element;
4
7
  export default Radio;
@@ -233,5 +233,8 @@ export interface IGroupedOptions<CustomOption = unknown> extends GroupBase<Custo
233
233
  backgroundColor?: TColorsBackground;
234
234
  }
235
235
  export type TSelectValue<CustomData = unknown> = ISelectOption<CustomData> | ReadonlyArray<ISelectOption<CustomData>> | null;
236
+ /**
237
+ * @deprecated Use `Select` from `@tedi-design-system/react/tedi` instead.
238
+ */
236
239
  export declare const Select: React.ForwardRefExoticComponent<SelectProps & React.RefAttributes<SelectInstance<ISelectOption<unknown>, boolean, IGroupedOptions<ISelectOption<unknown>>>>>;
237
240
  export default Select;
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("react/jsx-runtime"),k=require("../../../../../external/classnames/index.cjs.js"),i=require("react"),$=require("../../../../tedi/components/base/icon/icon.cjs.js"),w=require("../../../../tedi/components/loaders/spinner/spinner.cjs.js"),j=require("../../button/button.cjs.js"),e=require("./toggle.module.scss.cjs.js"),c=i.forwardRef((r,C)=>{const{ariaLabel:N,className:q,checked:n,defaultChecked:y,onChange:a,size:u=r.icon?"large":"medium",color:v="default",type:g,icon:S,disabled:f=!1,isLoading:d=!1,extraContent:m,label:_,...l}=r,[h,T]=i.useState(y||!1),o=i.useMemo(()=>a&&typeof n<"u"?n:h,[a,h,n]),M=k.default(e.default.toggle,e.default[`toggle--${u}`],e.default[`toggle--${v}`],{[e.default["toggle--active"]]:o,[e.default["toggle--disabled"]]:f,[e.default[`toggle--${g}`]]:g},q),b=()=>{if(d)return;const s=!o;typeof n>"u"&&T(s),a==null||a(s)},p={noStyle:!0,type:"button","aria-label":N,"aria-pressed":o,disabled:f,"aria-disabled":d,...l,onClick:b};return t.jsxs("div",{className:e.default["toggle-wrapper"],children:[t.jsx(j.Button,{...p,onClick:s=>{var x;(x=l==null?void 0:l.onClick)==null||x.call(l,s),b()},ref:C,"data-name":"toggle",className:M,children:t.jsx("span",{className:e.default.toggle__dot,children:d?t.jsx(w.Spinner,{size:u==="large"?16:10,className:k.default(e.default.toggle__icon,e.default.toggle__spinner)}):S?t.jsx($.Icon,{className:e.default.toggle__icon,name:o?"lock_open_right":"lock",size:16}):null})}),_&&t.jsx(j.Button,{...p,className:e.default.toggle__label,"aria-hidden":!0,tabIndex:-1,children:_}),m&&t.jsx("div",{className:e.default["toggle__extra-content"],children:m})]})});c.displayName="Toggle";exports.Toggle=c;exports.default=c;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react/jsx-runtime"),x=require("../../../../../external/classnames/index.cjs.js"),i=require("react"),w=require("../../../../tedi/components/base/icon/icon.cjs.js"),z=require("../../../../tedi/components/loaders/spinner/spinner.cjs.js"),k=require("../../button/button.cjs.js"),e=require("./toggle.module.scss.cjs.js"),j=i.forwardRef((c,C)=>{const{ariaLabel:N,className:y,checked:n,defaultChecked:q,onChange:a,size:r=c.icon?"large":"medium",color:S="default",type:g,icon:T,disabled:u=!1,isLoading:d=!1,extraContent:f,label:m,...l}=c,[_,v]=i.useState(q||!1),o=i.useMemo(()=>a&&typeof n<"u"?n:_,[a,_,n]),$=x.default(e.default.toggle,e.default[`toggle--${r}`],e.default[`toggle--${S}`],{[e.default["toggle--active"]]:o,[e.default["toggle--disabled"]]:u,[e.default[`toggle--${g}`]]:g},y),h=()=>{if(d)return;const s=!o;typeof n>"u"&&v(s),a==null||a(s)},b={noStyle:!0,type:"button","aria-label":N,"aria-pressed":o,disabled:u,"aria-disabled":d,...l,onClick:h};return t.jsxs("div",{className:e.default["toggle-wrapper"],children:[t.jsx(k.Button,{...b,onClick:s=>{var p;(p=l==null?void 0:l.onClick)==null||p.call(l,s),h()},ref:C,"data-name":"toggle",className:$,children:t.jsx("span",{className:e.default.toggle__dot,children:d?t.jsx(z.Spinner,{size:r==="large"?16:10,className:x.default(e.default.toggle__icon,e.default.toggle__spinner)}):T?t.jsx(w.Icon,{className:e.default.toggle__icon,name:o?"lock_open_right":"lock",size:16}):null})}),m&&t.jsx(k.Button,{...b,className:e.default.toggle__label,"aria-hidden":!0,tabIndex:-1,children:m}),f&&t.jsx("div",{className:e.default["toggle__extra-content"],children:f})]})});j.displayName="Toggle";exports.Toggle=j;
@@ -62,5 +62,8 @@ export interface ToggleProps {
62
62
  */
63
63
  isLoading?: boolean;
64
64
  }
65
+ /**
66
+ * @deprecated Use `Toggle` from `@tedi-design-system/react/tedi` instead.
67
+ */
65
68
  export declare const Toggle: React.ForwardRefExoticComponent<ToggleProps & React.RefAttributes<HTMLButtonElement>>;
66
69
  export default Toggle;
@@ -9,9 +9,9 @@ const L = $((r, C) => {
9
9
  const {
10
10
  ariaLabel: y,
11
11
  className: x,
12
- checked: l,
12
+ checked: a,
13
13
  defaultChecked: v,
14
- onChange: a,
14
+ onChange: l,
15
15
  size: c = r.icon ? "large" : "medium",
16
16
  color: w = "default",
17
17
  type: g,
@@ -21,7 +21,7 @@ const L = $((r, C) => {
21
21
  extraContent: m,
22
22
  label: f,
23
23
  ...o
24
- } = r, [p, I] = b.useState(v || !1), n = b.useMemo(() => a && typeof l < "u" ? l : p, [a, p, l]), S = k(
24
+ } = r, [p, I] = b.useState(v || !1), n = b.useMemo(() => l && typeof a < "u" ? a : p, [l, p, a]), S = k(
25
25
  e.toggle,
26
26
  e[`toggle--${c}`],
27
27
  e[`toggle--${w}`],
@@ -35,7 +35,7 @@ const L = $((r, C) => {
35
35
  if (i)
36
36
  return;
37
37
  const s = !n;
38
- typeof l > "u" && I(s), a == null || a(s);
38
+ typeof a > "u" && I(s), l == null || l(s);
39
39
  }, _ = {
40
40
  noStyle: !0,
41
41
  type: "button",
@@ -73,6 +73,5 @@ const L = $((r, C) => {
73
73
  });
74
74
  L.displayName = "Toggle";
75
75
  export {
76
- L as Toggle,
77
- L as default
76
+ L as Toggle
78
77
  };
@@ -13,5 +13,8 @@ export interface HeaderLanguageProps {
13
13
  */
14
14
  languages?: Language[];
15
15
  }
16
+ /**
17
+ * @deprecated Use `HeaderLanguage` from `@tedi-design-system/react/tedi` instead.
18
+ */
16
19
  export declare const HeaderLanguage: React.FC<HeaderLanguageProps>;
17
20
  export default HeaderLanguage;
@@ -25,5 +25,8 @@ export interface HeaderRoleProps {
25
25
  */
26
26
  renderModal?: boolean;
27
27
  }
28
+ /**
29
+ * @deprecated Use `HeaderRole` from `@tedi-design-system/react/tedi` instead.
30
+ */
28
31
  export declare const HeaderRole: React.FC<HeaderRoleProps>;
29
32
  export default HeaderRole;
@@ -1,2 +1,5 @@
1
+ /**
2
+ * @deprecated Use `SidenavToggle` from `@tedi-design-system/react/tedi` instead.
3
+ */
1
4
  export declare const SidenavToggle: () => import("react/jsx-runtime").JSX.Element | null;
2
5
  export default SidenavToggle;
@@ -49,5 +49,8 @@ export interface HeaderProps<H extends React.ElementType> {
49
49
  */
50
50
  notification?: HeaderNotificationProps;
51
51
  }
52
+ /**
53
+ * @deprecated Use `Header` from `@tedi-design-system/react/tedi` instead.
54
+ */
52
55
  export declare const Header: <H extends React.ElementType = "a">(props: HeaderProps<H>) => import("react/jsx-runtime").JSX.Element;
53
56
  export default Header;
@@ -62,5 +62,8 @@ export type SideNavItem<C extends React.ElementType = 'a'> = AnchorProps<C> & {
62
62
  */
63
63
  subItems?: SideNavItem<C>[];
64
64
  };
65
+ /**
66
+ * @deprecated Use `SideNav` from `@tedi-design-system/react/tedi` instead.
67
+ */
65
68
  export declare const SideNav: <C extends React.ElementType = "a">(props: SideNavProps<C>) => import("react/jsx-runtime").JSX.Element | null;
66
69
  export default SideNav;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("react/jsx-runtime"),N=require("../../../../../external/classnames/index.cjs.js"),r=require("react"),I=require("../../../../tedi/components/base/icon/icon.cjs.js"),t=require("./base-map-selection.module.scss.cjs.js"),S=require("../../../../tedi/helpers/hooks/use-element-size.cjs.js"),s=require("../../../../tedi/components/overlays/tooltip/tooltip.cjs.js"),d=b=>{const{title:l,content:x,selected:c,onSelect:n,type:u="selection",className:h,id:j,multiple:T,disabled:o,tooltipText:p,tooltipType:f="info"}=b,a=r.useRef(null),_=S.useElementSize(a),[y,g]=r.useState(!1);r.useEffect(()=>{const i=a.current;i&&g(i.scrollWidth>i.clientWidth)},[_,l]);const q=()=>{o||n==null||n()},v=i=>{o||(i.key==="Enter"||i.key===" ")&&(i.preventDefault(),n==null||n())},M=N.default(t.default["tedi-base-map-selection__wrapper"],c&&t.default["tedi-base-map-selection--selected"],u&&t.default[`tedi-base-map-selection--${u}`],T&&t.default["tedi-base-map-selection--multiple"],o&&t.default["tedi-base-map-selection--disabled"],h),m=e.jsx("div",{ref:a,tabIndex:-1,className:t.default["tedi-base-map-selection__title"],children:l}),E=y?e.jsxs(s.Tooltip,{children:[e.jsx(s.Tooltip.Trigger,{children:m}),e.jsx(s.Tooltip.Content,{children:l})]}):m;return e.jsxs("div",{role:"button",tabIndex:o?-1:0,"aria-pressed":!!c,"aria-disabled":o||void 0,onClick:q,onKeyDown:v,className:M,id:j,children:[e.jsx("div",{"aria-hidden":!0,className:t.default["tedi-base-map-selection__content"],children:x}),p&&e.jsxs(s.Tooltip,{children:[e.jsx(s.Tooltip.Trigger,{children:e.jsx("span",{tabIndex:-1,className:t.default["tedi-base-map-selection__info"],children:e.jsx(I.Icon,{background:"brand-secondary",name:f==="error"?"error":"info",size:16,color:f==="error"?"danger":"brand"})})}),e.jsx(s.Tooltip.Content,{children:p})]}),E]})};d.displayName="BaseMapOption";exports.BaseMapOption=d;exports.default=d;
@@ -0,0 +1,64 @@
1
+ import { JSX } from 'react';
2
+ export type BaseMapOptionType = 'button' | 'historical' | 'selection';
3
+ export type BaseMapOptionTooltipType = 'info' | 'error';
4
+ export interface BaseMapOptionProps {
5
+ /**
6
+ * The title displayed within the option.
7
+ */
8
+ title: string;
9
+ /**
10
+ * The main content of the option, typically a thumbnail. Can be any valid React node.
11
+ */
12
+ content: React.ReactNode;
13
+ /**
14
+ * Indicates whether the option is currently selected.
15
+ * Used to apply specific visual styles.
16
+ */
17
+ selected?: boolean;
18
+ /**
19
+ * Callback triggered when the option is clicked
20
+ * or activated via keyboard (Enter or Space).
21
+ */
22
+ onSelect?: () => void;
23
+ /**
24
+ * The type of the option, which controls styling.
25
+ * - `'selection'`: thumbnail with the title rendered below (default)
26
+ * - `'button'`: square thumbnail with the title overlaid
27
+ * - `'historical'`: styled for historical context
28
+ * @default 'selection'
29
+ */
30
+ type?: BaseMapOptionType;
31
+ /**
32
+ * Optional custom class name to apply additional styles.
33
+ */
34
+ className?: string;
35
+ /**
36
+ * HTML `id` attribute to identify the element.
37
+ */
38
+ id: string;
39
+ /**
40
+ * When `true`, renders a "stacked" visual indicating multiple maps.
41
+ */
42
+ multiple?: boolean;
43
+ /**
44
+ * Applies disabled style.
45
+ */
46
+ disabled?: boolean;
47
+ /**
48
+ * Text shown in a tooltip. When set, an info icon is rendered in the middle of
49
+ * the option and reveals this text on hover.
50
+ */
51
+ tooltipText?: string;
52
+ /**
53
+ * Visual style of the info icon shown when `tooltipText` is set.
54
+ * - `'info'`: neutral informational icon (default)
55
+ * - `'error'`: error/danger styled icon
56
+ * @default 'info'
57
+ */
58
+ tooltipType?: BaseMapOptionTooltipType;
59
+ }
60
+ export declare const BaseMapOption: {
61
+ (props: BaseMapOptionProps): JSX.Element;
62
+ displayName: string;
63
+ };
64
+ export default BaseMapOption;
@@ -0,0 +1,75 @@
1
+ import { jsxs as l, jsx as e } from "react/jsx-runtime";
2
+ import k from "../../../../../external/classnames/index.es.js";
3
+ import { useRef as C, useState as w, useEffect as z } from "react";
4
+ import { Icon as B } from "../../../../tedi/components/base/icon/icon.es.js";
5
+ import t from "./base-map-selection.module.scss.es.js";
6
+ import { useElementSize as D } from "../../../../tedi/helpers/hooks/use-element-size.es.js";
7
+ import { Tooltip as s } from "../../../../tedi/components/overlays/tooltip/tooltip.es.js";
8
+ const M = (b) => {
9
+ const {
10
+ title: r,
11
+ content: u,
12
+ selected: d,
13
+ onSelect: n,
14
+ type: c = "selection",
15
+ className: h,
16
+ id: y,
17
+ multiple: _,
18
+ disabled: o,
19
+ tooltipText: m,
20
+ tooltipType: p = "info"
21
+ } = b, a = C(null), x = D(a), [N, T] = w(!1);
22
+ z(() => {
23
+ const i = a.current;
24
+ i && T(i.scrollWidth > i.clientWidth);
25
+ }, [x, r]);
26
+ const g = () => {
27
+ o || n == null || n();
28
+ }, v = (i) => {
29
+ o || (i.key === "Enter" || i.key === " ") && (i.preventDefault(), n == null || n());
30
+ }, E = k(
31
+ t["tedi-base-map-selection__wrapper"],
32
+ d && t["tedi-base-map-selection--selected"],
33
+ c && t[`tedi-base-map-selection--${c}`],
34
+ _ && t["tedi-base-map-selection--multiple"],
35
+ o && t["tedi-base-map-selection--disabled"],
36
+ h
37
+ ), f = /* @__PURE__ */ e("div", { ref: a, tabIndex: -1, className: t["tedi-base-map-selection__title"], children: r }), I = N ? /* @__PURE__ */ l(s, { children: [
38
+ /* @__PURE__ */ e(s.Trigger, { children: f }),
39
+ /* @__PURE__ */ e(s.Content, { children: r })
40
+ ] }) : f;
41
+ return /* @__PURE__ */ l(
42
+ "div",
43
+ {
44
+ role: "button",
45
+ tabIndex: o ? -1 : 0,
46
+ "aria-pressed": !!d,
47
+ "aria-disabled": o || void 0,
48
+ onClick: g,
49
+ onKeyDown: v,
50
+ className: E,
51
+ id: y,
52
+ children: [
53
+ /* @__PURE__ */ e("div", { "aria-hidden": !0, className: t["tedi-base-map-selection__content"], children: u }),
54
+ m && /* @__PURE__ */ l(s, { children: [
55
+ /* @__PURE__ */ e(s.Trigger, { children: /* @__PURE__ */ e("span", { tabIndex: -1, className: t["tedi-base-map-selection__info"], children: /* @__PURE__ */ e(
56
+ B,
57
+ {
58
+ background: "brand-secondary",
59
+ name: p === "error" ? "error" : "info",
60
+ size: 16,
61
+ color: p === "error" ? "danger" : "brand"
62
+ }
63
+ ) }) }),
64
+ /* @__PURE__ */ e(s.Content, { children: m })
65
+ ] }),
66
+ I
67
+ ]
68
+ }
69
+ );
70
+ };
71
+ M.displayName = "BaseMapOption";
72
+ export {
73
+ M as BaseMapOption,
74
+ M as default
75
+ };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("react/jsx-runtime"),b=require("../../../../../external/classnames/index.cjs.js"),e=require("./base-map-selection.module.scss.cjs.js"),f=n=>{const{title:i,content:c,selected:o,onSelect:t,type:s="button",className:d,id:u,multiple:r}=n,p=a=>{(a.key==="Enter"||a.key===" ")&&(a.preventDefault(),t==null||t())},m=b.default(e.default["tedi-base-map-selection__wrapper"],o&&e.default["tedi-base-map-selection--selected"],s&&e.default[`tedi-base-map-selection--${s}`],r&&e.default["tedi-base-map-selection--multiple"],d);return l.jsxs("div",{role:"button",tabIndex:0,onClick:t,onKeyDown:p,className:m,id:u,children:[l.jsx("div",{className:e.default["tedi-base-map-selection__content"],children:c}),l.jsx("div",{className:e.default["tedi-base-map-selection__title"],children:i})]})};exports.BaseMapSelection=f;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),N=require("../../../../../external/classnames/index.cjs.js"),S=require("react"),B=require("../../../../tedi/components/buttons/button/button.cjs.js"),T=require("../../../../tedi/components/form/field/field.cjs.js"),O=require("../../../../tedi/components/form/input-group/input-group.cjs.js"),C=require("../../../../tedi/components/form/slider/slider.cjs.js"),f=require("./base-map-option.cjs.js"),n=require("./base-map-selection.module.scss.cjs.js"),l=require("../../../../tedi/components/overlays/popover/popover.cjs.js"),L=require("../../../../tedi/components/form/input-group/components/input/input.cjs.js"),P=require("../../../../tedi/components/form/input-group/components/suffix/suffix.cjs.js"),c=a=>{const t=Number(a);return Number.isNaN(t)?0:Math.min(100,Math.max(0,t))};function o(a){const{title:t,content:x,children:h,multiple:y=!1,showTransparency:j=!1,transparency:d,defaultTransparency:_,onTransparencyChange:s,transparencyLabel:r="",id:i}=a,p=d!==void 0,[v,g]=S.useState(()=>c(_??0)),u=c(p?d:v),m=M=>{const b=c(M);p||g(b),s==null||s(b)},q=N.default(n.default["tedi-base-map-selection__wrapper"],n.default["tedi-base-map-selection__trigger"],n.default["tedi-base-map-selection--button"],y&&n.default["tedi-base-map-selection--multiple"]);return e.jsxs(l.Popover,{placement:"top-end",children:[e.jsx(l.Popover.Trigger,{children:e.jsxs(B.Button,{noStyle:!0,id:i,className:q,children:[e.jsx("div",{className:n.default["tedi-base-map-selection__content"],"aria-hidden":!0,children:x}),e.jsx("div",{className:n.default["tedi-base-map-selection__title"],children:t})]})}),e.jsxs(l.Popover.Content,{width:"medium",children:[e.jsx("div",{className:n.default["tedi-base-map-selection__options"],children:h}),j&&e.jsx("div",{className:n.default["tedi-base-map-selection__transparency"],children:e.jsx(C.Slider,{label:r,"aria-label":r||"Transparency",min:0,max:100,value:u,onChange:m,minLabel:"0%",maxLabel:"100%",addonRight:e.jsx("div",{className:n.default["tedi-base-map-selection__transparency-field"],children:e.jsxs(O.InputGroupBase,{id:`${i}-transparency`,label:r||"Transparency",hideLabel:!0,children:[e.jsx(L.Input,{children:e.jsx(T.Field,{type:"number",id:`${i}-transparency`,value:String(u),onChange:m})}),e.jsx(P.Suffix,{children:"%"})]})})})})]})]})}o.Option=f.BaseMapOption;o.displayName="BaseMapSelection";exports.BaseMapOption=f.BaseMapOption;exports.BaseMapSelection=o;
@@ -1,44 +1,59 @@
1
1
  import { JSX } from 'react';
2
- type BaseMapSelectionType = 'button' | 'historical' | 'selection';
2
+ import { default as BaseMapOption } from './base-map-option';
3
3
  export interface BaseMapSelectionProps {
4
4
  /**
5
- * The title displayed within the component.
5
+ * Title of the trigger button and used as its accessible label.
6
6
  */
7
7
  title: string;
8
8
  /**
9
- * The main content of the selection card. Can be any valid React node.
9
+ * Visual content (thumbnail) of the currently active base map, shown on the trigger button.
10
10
  */
11
11
  content: React.ReactNode;
12
12
  /**
13
- * Indicates whether the current item is selected.
14
- * Used to apply specific visual styles.
13
+ * Selectable base map options rendered inside the popover, typically `BaseMapSelection.Option` elements.
15
14
  */
16
- selected?: boolean;
15
+ children: React.ReactNode;
17
16
  /**
18
- * Callback function triggered when the selection is clicked
19
- * or activated via keyboard (Enter or Space).
17
+ * Renders a "stacked" trigger, indicating that multiple base maps are available.
18
+ * @default false
20
19
  */
21
- onSelect?: () => void;
20
+ multiple?: boolean;
22
21
  /**
23
- * The type of the selection, which controls styling.
24
- * - `'button'`: default interactive selection
25
- * - `'historical'`: styled for historical context
26
- * - `'selection'`: styled for multi-selection context
22
+ * When `true`, renders a transparency slider at the bottom of the popover.
23
+ * @default false
27
24
  */
28
- type: BaseMapSelectionType;
25
+ showTransparency?: boolean;
29
26
  /**
30
- * Optional custom class name to apply additional styles.
27
+ * Controlled transparency value (0-100). Use together with `onTransparencyChange`.
28
+ * Values outside the range are clamped. Omit for uncontrolled usage.
31
29
  */
32
- className?: string;
30
+ transparency?: number;
33
31
  /**
34
- * Optional HTML `id` attribute to identify the element.
32
+ * Initial transparency value (0-100) for uncontrolled usage. Ignored when `transparency` is provided.
33
+ * @default 0
35
34
  */
36
- id?: string;
35
+ defaultTransparency?: number;
37
36
  /**
38
- * When `true`, indicates that multiple selections are allowed.
39
- * Affects the visual style.
37
+ * Callback fired when the transparency value changes. The reported value is always clamped to 0-100.
40
38
  */
41
- multiple?: boolean;
39
+ onTransparencyChange?: (value: number) => void;
40
+ /**
41
+ * Label for the transparency slider.
42
+ */
43
+ transparencyLabel?: string;
44
+ /**
45
+ * HTML `id` attribute applied to the trigger button.
46
+ */
47
+ id: string;
48
+ }
49
+ export declare function BaseMapSelection(props: BaseMapSelectionProps): JSX.Element;
50
+ export declare namespace BaseMapSelection {
51
+ var Option: {
52
+ (props: import("./base-map-option").BaseMapOptionProps): JSX.Element;
53
+ displayName: string;
54
+ };
55
+ var displayName: string;
42
56
  }
43
- export declare const BaseMapSelection: (props: BaseMapSelectionProps) => JSX.Element;
57
+ export type { BaseMapOptionProps, BaseMapOptionTooltipType, BaseMapOptionType } from './base-map-option';
58
+ export { BaseMapOption };
44
59
  export default BaseMapSelection;