@telia/teddy 0.1.18 → 0.1.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 (64) hide show
  1. package/dist/components/card/card-illustration.d.ts +1 -1
  2. package/dist/components/card/index.d.ts +1 -1
  3. package/dist/components/checkbox/checkbox-group.d.ts +2 -2
  4. package/dist/components/checkbox/index.d.ts +2 -2
  5. package/dist/components/chip/chip-indicator.d.ts +1 -1
  6. package/dist/components/chip/index.d.ts +1 -1
  7. package/dist/components/expandable-card/expandable-card-button.d.ts +2 -2
  8. package/dist/components/expandable-card/index.d.ts +2 -2
  9. package/dist/components/icon/utils.d.ts +1 -1
  10. package/dist/components/index.cjs +2 -0
  11. package/dist/components/index.d.ts +1 -0
  12. package/dist/components/index.js +2 -0
  13. package/dist/components/meter-bar/index.cjs +9 -0
  14. package/dist/components/meter-bar/index.d.ts +29 -0
  15. package/dist/components/meter-bar/index.js +9 -0
  16. package/dist/components/meter-bar/meter-bar-indicator.cjs +65 -0
  17. package/dist/components/meter-bar/meter-bar-indicator.d.ts +19 -0
  18. package/dist/components/meter-bar/meter-bar-indicator.js +65 -0
  19. package/dist/components/meter-bar/meter-bar-root.cjs +9 -0
  20. package/dist/components/meter-bar/meter-bar-root.d.ts +22 -0
  21. package/dist/components/meter-bar/meter-bar-root.js +9 -0
  22. package/dist/components/meter-bar/utils.cjs +24 -0
  23. package/dist/components/meter-bar/utils.d.ts +6 -0
  24. package/dist/components/meter-bar/utils.js +24 -0
  25. package/dist/components/modal/modal.cjs +1 -0
  26. package/dist/components/modal/modal.js +1 -0
  27. package/dist/components/navigation-menu/global-navigation/global-navigation-desktop.cjs +3 -0
  28. package/dist/components/navigation-menu/global-navigation/global-navigation-desktop.js +3 -0
  29. package/dist/components/navigation-menu/global-navigation/global-navigation-mobile.cjs +2 -3
  30. package/dist/components/navigation-menu/global-navigation/global-navigation-mobile.d.ts +8 -1
  31. package/dist/components/navigation-menu/global-navigation/global-navigation-mobile.js +3 -4
  32. package/dist/components/navigation-menu/global-navigation/global-navigation-root.d.ts +2 -0
  33. package/dist/components/navigation-menu/global-navigation/utils.cjs +276 -21
  34. package/dist/components/navigation-menu/global-navigation/utils.d.ts +417 -20
  35. package/dist/components/navigation-menu/global-navigation/utils.js +276 -21
  36. package/dist/components/navigation-menu/navigation-menu.cjs +1 -0
  37. package/dist/components/navigation-menu/navigation-menu.d.ts +1 -1
  38. package/dist/components/navigation-menu/navigation-menu.js +1 -0
  39. package/dist/components/notabene/notabene-icon.d.ts +1 -1
  40. package/dist/components/notification/notification.d.ts +4 -4
  41. package/dist/components/progress-bar/progress-bar.cjs +4 -4
  42. package/dist/components/progress-bar/progress-bar.js +4 -4
  43. package/dist/components/radio-card-group/radio-card-group-content.cjs +1 -0
  44. package/dist/components/radio-card-group/radio-card-group-content.js +1 -0
  45. package/dist/components/radio-card-group/radio-card-group-item-title.cjs +220 -201
  46. package/dist/components/radio-card-group/radio-card-group-item-title.js +221 -202
  47. package/dist/components/radio-card-group/radio-card-group-item.cjs +1 -0
  48. package/dist/components/radio-card-group/radio-card-group-item.js +1 -0
  49. package/dist/components/scroll-area/index.d.ts +2 -2
  50. package/dist/components/scroll-area/scroll-area-button.d.ts +2 -2
  51. package/dist/components/tabs/index.d.ts +3 -3
  52. package/dist/components/tabs/tabs-root.d.ts +1 -1
  53. package/dist/components/tabs/tabs-scroll-button.d.ts +2 -2
  54. package/dist/components/text-field/index.d.ts +2 -2
  55. package/dist/components/text-field/text-field-button.d.ts +2 -2
  56. package/dist/components/toggle/toggle.d.ts +1 -1
  57. package/dist/components/tooltip/index.d.ts +3 -3
  58. package/dist/main.cjs +2 -0
  59. package/dist/main.js +2 -0
  60. package/dist/style.css +194 -114
  61. package/dist/utils/generate-styling/grid.d.ts +24 -24
  62. package/dist/utils/generate-styling/index.d.ts +16 -16
  63. package/dist/utils/generate-styling/util.d.ts +2 -2
  64. package/package.json +1 -1
@@ -9,7 +9,7 @@ export type IllustrationProps = React.ComponentPropsWithoutRef<'div'> & {
9
9
  /** The illustration for the card */
10
10
  export declare const Illustration: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
11
11
  /** The inset allows make the image bleed out to the edges */
12
- inset?: "top" | "bottom" | "left" | "right" | "all" | "top-left" | "top-right" | "bottom-left" | "bottom-right" | "top-right-left" | "bottom-left-right" | "top-bottom" | "left-right" | undefined;
12
+ inset?: "left" | "right" | "bottom" | "top" | "all" | "top-left" | "top-right" | "bottom-left" | "bottom-right" | "top-right-left" | "bottom-left-right" | "top-bottom" | "left-right" | undefined;
13
13
  rounded?: boolean | undefined;
14
14
  } & React.RefAttributes<HTMLDivElement>>;
15
15
  export {};
@@ -19,7 +19,7 @@ export declare const Card: import('react').ForwardRefExoticComponent<RootProps &
19
19
  Button: import('react').ForwardRefExoticComponent<ButtonProps & import('react').RefAttributes<HTMLButtonElement>>;
20
20
  Content: import('react').ForwardRefExoticComponent<ContentProps & import('react').RefAttributes<HTMLDivElement>>;
21
21
  Illustration: import('react').ForwardRefExoticComponent<Omit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
22
- inset?: "top" | "bottom" | "left" | "right" | "all" | "top-left" | "top-right" | "bottom-left" | "bottom-right" | "top-right-left" | "bottom-left-right" | "top-bottom" | "left-right" | undefined;
22
+ inset?: "left" | "right" | "bottom" | "top" | "all" | "top-left" | "top-right" | "bottom-left" | "bottom-right" | "top-right-left" | "bottom-left-right" | "top-bottom" | "left-right" | undefined;
23
23
  rounded?: boolean | undefined;
24
24
  } & import('react').RefAttributes<HTMLDivElement>>;
25
25
  Line: import('react').ForwardRefExoticComponent<LineProps & import('react').RefAttributes<HTMLDivElement>>;
@@ -34,13 +34,13 @@ export declare const Group: React.ForwardRefExoticComponent<Omit<Omit<import('..
34
34
  } & import('../../utils/generate-styling/flex').FlexLayout & {
35
35
  as: "div";
36
36
  asChild?: false | undefined;
37
- } & Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>, "ref">, "direction" | "value" | "defaultValue" | "onValueChange"> & {
37
+ } & Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>, "ref">, "defaultValue" | "direction" | "value" | "onValueChange"> & {
38
38
  name?: string | undefined;
39
39
  required?: boolean | undefined;
40
40
  disabled?: boolean | undefined;
41
41
  defaultValue?: string[] | undefined;
42
42
  value?: string[] | undefined;
43
- direction?: "row" | "column" | undefined;
43
+ direction?: "column" | "row" | undefined;
44
44
  onValueChange?: ((value: string[]) => void) | undefined;
45
45
  } & React.RefAttributes<HTMLDivElement>>;
46
46
  type CheckboxNode = {
@@ -41,13 +41,13 @@ export declare const CheckboxGroup: import('react').ForwardRefExoticComponent<Om
41
41
  } & import('../../utils/generate-styling/flex.ts').FlexLayout & {
42
42
  as: "div";
43
43
  asChild?: false | undefined;
44
- } & Omit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & import('react').RefAttributes<HTMLDivElement>, "ref">, "direction" | "value" | "defaultValue" | "onValueChange"> & {
44
+ } & Omit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & import('react').RefAttributes<HTMLDivElement>, "ref">, "defaultValue" | "direction" | "value" | "onValueChange"> & {
45
45
  name?: string | undefined;
46
46
  required?: boolean | undefined;
47
47
  disabled?: boolean | undefined;
48
48
  defaultValue?: string[] | undefined;
49
49
  value?: string[] | undefined;
50
- direction?: "row" | "column" | undefined;
50
+ direction?: "column" | "row" | undefined;
51
51
  onValueChange?: ((value: string[]) => void) | undefined;
52
52
  } & import('react').RefAttributes<HTMLDivElement>> & {
53
53
  Item: import('react').ForwardRefExoticComponent<Omit<LabelProps, "defaultChecked" | "checked" | "onCheckedChange"> & {
@@ -3,7 +3,7 @@ import { Icon } from '../icon';
3
3
 
4
4
  export type IndicatorProps = Partial<React.ComponentPropsWithoutRef<typeof Icon>>;
5
5
  export declare const Indicator: React.ForwardRefExoticComponent<Partial<Omit<React.SVGProps<SVGSVGElement> & {
6
- name: "key" | "search" | "split" | "link" | "add" | "reverse" | "infinite" | "radio" | "visible" | "copy" | "help" | "zoom-out" | "filter" | "x" | "zoom" | "menu" | "map" | "summary" | "time" | "video" | "image" | "stop" | "download" | "alert" | "email" | "close" | "error" | "focus" | "play" | "alarm-off" | "alarm-on" | "attachment" | "bookmark-filled" | "bookmark" | "copy-filled" | "dislike" | "edit" | "heart-filled" | "heart" | "invisible" | "like" | "lock-open" | "lock" | "login" | "logout" | "maximize" | "minimize" | "mute" | "password-invisible" | "password-visible" | "play-filled" | "remove-filled" | "remove" | "save" | "send" | "settings" | "share" | "shortcut" | "shuffle" | "sync" | "skip-back-10sec" | "skip-back-30sec" | "skip-forward-10sec" | "skip-forward-30sec" | "star-filled" | "star" | "switch-arrows" | "tv-next" | "tv-pause" | "tv-previous" | "tv-stop" | "upload" | "volume" | "connected-building" | "home" | "hospital" | "industry" | "premises-datacenter" | "premises-large" | "premises-medium" | "premises-small" | "premises" | "store" | "address-book" | "b2b-customer" | "care" | "chat-robot" | "chat" | "child-1" | "child-2" | "conversation" | "customer-dialogue" | "dsl-hub" | "end-user" | "handshake" | "headphones" | "letter" | "mms" | "new-contact" | "new-group" | "news" | "parental-guide" | "people-hub" | "people" | "portal" | "signature" | "smiley-happy" | "smiley-sad" | "sms" | "support" | "user-admin" | "vcard" | "voicemail" | "battery" | "bluetooth" | "broadband" | "broken-phone" | "cast" | "cloud-connect" | "connected" | "core-router" | "daas-device" | "data-transfer" | "desktop" | "devices" | "esim-simcard" | "esim" | "face-id" | "fiber" | "fingerprint" | "fiveg" | "fourg" | "home-installation" | "industrial-iot" | "internet" | "it-service" | "laptop" | "mobile-broadband" | "network" | "phone-recycling" | "phone-ringing" | "phone" | "rack" | "refill-card" | "remote-control" | "repair" | "roaming" | "router" | "secure-device" | "sense-car" | "server" | "service-device" | "service-supervision" | "slow-wifi" | "smart-wifi" | "smartphone" | "smartwatch" | "tablet" | "trade-phone" | "tv" | "usb" | "voice-switch" | "wallplug" | "wireless-off" | "wireless-weak" | "wireless" | "world-alert" | "world-off" | "world-question" | "bar-chart" | "doc" | "document-doc" | "document-edit" | "document-pdf" | "document-ppt" | "excel" | "folder-copy" | "folder-new" | "folder" | "gif" | "graph" | "media-content" | "org-chart" | "pie-chart" | "print" | "register" | "report" | "simcard" | "spell-check" | "credit-card" | "euro" | "invoice" | "kontantkort" | "kr" | "late-payment" | "money-back-euro" | "money-back-kr" | "money-euro" | "money-kr" | "pay-monthly-euro" | "pay-monthly-kr" | "pay-once-euro" | "pay-once-kr" | "payment-success" | "savings" | "wallet" | "airplay" | "camera" | "entertainment" | "external" | "film" | "games" | "megaphone" | "microphone" | "music" | "player-settings" | "record" | "stream" | "trailer" | "video-conference" | "activity-level" | "ai-robot" | "bag" | "basketball" | "blood-pressure" | "bulb" | "business-continuity" | "business-intelligence" | "calendar" | "cart" | "close-circle" | "cloud" | "coffee" | "compass" | "construction" | "cookie" | "delivery" | "drone" | "education" | "efficiency" | "environment" | "facemask" | "flag" | "food" | "fraud" | "getting-started" | "home-care" | "job-search" | "layers" | "measuring-health" | "moisture" | "offering" | "offshore" | "optimization" | "pebble" | "pet-dog" | "pin" | "plane" | "plus-minus" | "police" | "power-grid" | "present" | "press-button" | "price" | "pulse" | "recycle" | "reservation" | "route" | "ruler" | "satellite" | "secured-1" | "secured-2" | "security-camera" | "shopping" | "snowflake" | "speedometer" | "spyware" | "suitcase" | "sustainability" | "tag" | "temperature" | "thinking" | "train" | "transfer" | "undo" | "wavelength" | "weather" | "world" | "android" | "apple" | "bankid-norway" | "bankid" | "facebook" | "instagram" | "youtube" | "linkedin" | "snapchat" | "telia-logo" | "whatsapp" | "windows" | "alert-filled" | "check-circle-filled" | "check-circle" | "error-filled" | "info-filled" | "info" | "question-filled" | "question" | "warning" | "arrow-down" | "arrow-left" | "arrow-right" | "arrow-subdirectory" | "arrow-up" | "card-view" | "checkmark-bold" | "checkmark" | "chevron-down" | "chevron-left" | "chevron-right" | "chevron-up" | "grid-view" | "list-view" | "minus-bold" | "minus" | "more-horizontal" | "more-vertical" | "plus" | "services" | "sorter" | "table-view";
6
+ name: "link" | "map" | "menu" | "search" | "summary" | "time" | "video" | "filter" | "image" | "stop" | "key" | "x" | "download" | "split" | "add" | "reverse" | "infinite" | "radio" | "visible" | "copy" | "help" | "zoom-out" | "zoom" | "alert" | "email" | "alarm-off" | "alarm-on" | "attachment" | "bookmark-filled" | "bookmark" | "copy-filled" | "dislike" | "edit" | "heart-filled" | "heart" | "invisible" | "like" | "lock-open" | "lock" | "login" | "logout" | "maximize" | "minimize" | "mute" | "password-invisible" | "password-visible" | "play-filled" | "play" | "remove-filled" | "remove" | "save" | "send" | "settings" | "share" | "shortcut" | "shuffle" | "sync" | "skip-back-10sec" | "skip-back-30sec" | "skip-forward-10sec" | "skip-forward-30sec" | "star-filled" | "star" | "switch-arrows" | "tv-next" | "tv-pause" | "tv-previous" | "tv-stop" | "upload" | "volume" | "connected-building" | "home" | "hospital" | "industry" | "premises-datacenter" | "premises-large" | "premises-medium" | "premises-small" | "premises" | "store" | "address-book" | "b2b-customer" | "care" | "chat-robot" | "chat" | "child-1" | "child-2" | "conversation" | "customer-dialogue" | "dsl-hub" | "end-user" | "handshake" | "headphones" | "letter" | "mms" | "new-contact" | "new-group" | "news" | "parental-guide" | "people-hub" | "people" | "portal" | "signature" | "smiley-happy" | "smiley-sad" | "sms" | "support" | "user-admin" | "vcard" | "voicemail" | "battery" | "bluetooth" | "broadband" | "broken-phone" | "cast" | "cloud-connect" | "connected" | "core-router" | "daas-device" | "data-transfer" | "desktop" | "devices" | "esim-simcard" | "esim" | "face-id" | "fiber" | "fingerprint" | "fiveg" | "fourg" | "home-installation" | "industrial-iot" | "internet" | "it-service" | "laptop" | "mobile-broadband" | "network" | "phone-recycling" | "phone-ringing" | "phone" | "rack" | "refill-card" | "remote-control" | "repair" | "roaming" | "router" | "secure-device" | "sense-car" | "server" | "service-device" | "service-supervision" | "slow-wifi" | "smart-wifi" | "smartphone" | "smartwatch" | "tablet" | "trade-phone" | "tv" | "usb" | "voice-switch" | "wallplug" | "wireless-off" | "wireless-weak" | "wireless" | "world-alert" | "world-off" | "world-question" | "bar-chart" | "doc" | "document-doc" | "document-edit" | "document-pdf" | "document-ppt" | "excel" | "folder-copy" | "folder-new" | "folder" | "gif" | "graph" | "media-content" | "org-chart" | "pie-chart" | "print" | "register" | "report" | "simcard" | "spell-check" | "credit-card" | "euro" | "invoice" | "kontantkort" | "kr" | "late-payment" | "money-back-euro" | "money-back-kr" | "money-euro" | "money-kr" | "pay-monthly-euro" | "pay-monthly-kr" | "pay-once-euro" | "pay-once-kr" | "payment-success" | "savings" | "wallet" | "airplay" | "camera" | "entertainment" | "external" | "film" | "games" | "megaphone" | "microphone" | "music" | "player-settings" | "record" | "stream" | "trailer" | "video-conference" | "activity-level" | "ai-robot" | "bag" | "basketball" | "blood-pressure" | "bulb" | "business-continuity" | "business-intelligence" | "calendar" | "cart" | "close-circle" | "cloud" | "coffee" | "compass" | "construction" | "cookie" | "delivery" | "drone" | "education" | "efficiency" | "environment" | "facemask" | "flag" | "focus" | "food" | "fraud" | "getting-started" | "home-care" | "job-search" | "layers" | "measuring-health" | "moisture" | "offering" | "offshore" | "optimization" | "pebble" | "pet-dog" | "pin" | "plane" | "plus-minus" | "police" | "power-grid" | "present" | "press-button" | "price" | "pulse" | "recycle" | "reservation" | "route" | "ruler" | "satellite" | "secured-1" | "secured-2" | "security-camera" | "shopping" | "snowflake" | "speedometer" | "spyware" | "suitcase" | "sustainability" | "tag" | "temperature" | "thinking" | "train" | "transfer" | "undo" | "wavelength" | "weather" | "world" | "android" | "apple" | "bankid-norway" | "bankid" | "facebook" | "instagram" | "youtube" | "linkedin" | "snapchat" | "telia-logo" | "whatsapp" | "windows" | "alert-filled" | "check-circle-filled" | "check-circle" | "error-filled" | "error" | "info-filled" | "info" | "question-filled" | "question" | "warning" | "arrow-down" | "arrow-left" | "arrow-right" | "arrow-subdirectory" | "arrow-up" | "card-view" | "checkmark-bold" | "checkmark" | "chevron-down" | "chevron-left" | "chevron-right" | "chevron-up" | "close" | "grid-view" | "list-view" | "minus-bold" | "minus" | "more-horizontal" | "more-vertical" | "plus" | "services" | "sorter" | "table-view";
7
7
  size?: ("sm" | "md" | "lg" | "xl" | "xs" | "font" | "xxs") | undefined;
8
8
  children?: React.ReactNode;
9
9
  }, "ref">> & React.RefAttributes<SVGSVGElement>>;
@@ -5,7 +5,7 @@ import { ItemProps } from './chip-item';
5
5
  export declare const Chip: import('react').ForwardRefExoticComponent<RootProps & import('react').RefAttributes<HTMLDivElement>> & {
6
6
  Item: import('react').ForwardRefExoticComponent<ItemProps & import('react').RefAttributes<HTMLButtonElement>>;
7
7
  Indicator: import('react').ForwardRefExoticComponent<Partial<Omit<import('react').SVGProps<SVGSVGElement> & {
8
- name: "key" | "search" | "split" | "link" | "add" | "reverse" | "infinite" | "radio" | "visible" | "copy" | "help" | "zoom-out" | "filter" | "x" | "zoom" | "menu" | "map" | "summary" | "time" | "video" | "image" | "stop" | "download" | "alert" | "email" | "close" | "error" | "focus" | "play" | "alarm-off" | "alarm-on" | "attachment" | "bookmark-filled" | "bookmark" | "copy-filled" | "dislike" | "edit" | "heart-filled" | "heart" | "invisible" | "like" | "lock-open" | "lock" | "login" | "logout" | "maximize" | "minimize" | "mute" | "password-invisible" | "password-visible" | "play-filled" | "remove-filled" | "remove" | "save" | "send" | "settings" | "share" | "shortcut" | "shuffle" | "sync" | "skip-back-10sec" | "skip-back-30sec" | "skip-forward-10sec" | "skip-forward-30sec" | "star-filled" | "star" | "switch-arrows" | "tv-next" | "tv-pause" | "tv-previous" | "tv-stop" | "upload" | "volume" | "connected-building" | "home" | "hospital" | "industry" | "premises-datacenter" | "premises-large" | "premises-medium" | "premises-small" | "premises" | "store" | "address-book" | "b2b-customer" | "care" | "chat-robot" | "chat" | "child-1" | "child-2" | "conversation" | "customer-dialogue" | "dsl-hub" | "end-user" | "handshake" | "headphones" | "letter" | "mms" | "new-contact" | "new-group" | "news" | "parental-guide" | "people-hub" | "people" | "portal" | "signature" | "smiley-happy" | "smiley-sad" | "sms" | "support" | "user-admin" | "vcard" | "voicemail" | "battery" | "bluetooth" | "broadband" | "broken-phone" | "cast" | "cloud-connect" | "connected" | "core-router" | "daas-device" | "data-transfer" | "desktop" | "devices" | "esim-simcard" | "esim" | "face-id" | "fiber" | "fingerprint" | "fiveg" | "fourg" | "home-installation" | "industrial-iot" | "internet" | "it-service" | "laptop" | "mobile-broadband" | "network" | "phone-recycling" | "phone-ringing" | "phone" | "rack" | "refill-card" | "remote-control" | "repair" | "roaming" | "router" | "secure-device" | "sense-car" | "server" | "service-device" | "service-supervision" | "slow-wifi" | "smart-wifi" | "smartphone" | "smartwatch" | "tablet" | "trade-phone" | "tv" | "usb" | "voice-switch" | "wallplug" | "wireless-off" | "wireless-weak" | "wireless" | "world-alert" | "world-off" | "world-question" | "bar-chart" | "doc" | "document-doc" | "document-edit" | "document-pdf" | "document-ppt" | "excel" | "folder-copy" | "folder-new" | "folder" | "gif" | "graph" | "media-content" | "org-chart" | "pie-chart" | "print" | "register" | "report" | "simcard" | "spell-check" | "credit-card" | "euro" | "invoice" | "kontantkort" | "kr" | "late-payment" | "money-back-euro" | "money-back-kr" | "money-euro" | "money-kr" | "pay-monthly-euro" | "pay-monthly-kr" | "pay-once-euro" | "pay-once-kr" | "payment-success" | "savings" | "wallet" | "airplay" | "camera" | "entertainment" | "external" | "film" | "games" | "megaphone" | "microphone" | "music" | "player-settings" | "record" | "stream" | "trailer" | "video-conference" | "activity-level" | "ai-robot" | "bag" | "basketball" | "blood-pressure" | "bulb" | "business-continuity" | "business-intelligence" | "calendar" | "cart" | "close-circle" | "cloud" | "coffee" | "compass" | "construction" | "cookie" | "delivery" | "drone" | "education" | "efficiency" | "environment" | "facemask" | "flag" | "food" | "fraud" | "getting-started" | "home-care" | "job-search" | "layers" | "measuring-health" | "moisture" | "offering" | "offshore" | "optimization" | "pebble" | "pet-dog" | "pin" | "plane" | "plus-minus" | "police" | "power-grid" | "present" | "press-button" | "price" | "pulse" | "recycle" | "reservation" | "route" | "ruler" | "satellite" | "secured-1" | "secured-2" | "security-camera" | "shopping" | "snowflake" | "speedometer" | "spyware" | "suitcase" | "sustainability" | "tag" | "temperature" | "thinking" | "train" | "transfer" | "undo" | "wavelength" | "weather" | "world" | "android" | "apple" | "bankid-norway" | "bankid" | "facebook" | "instagram" | "youtube" | "linkedin" | "snapchat" | "telia-logo" | "whatsapp" | "windows" | "alert-filled" | "check-circle-filled" | "check-circle" | "error-filled" | "info-filled" | "info" | "question-filled" | "question" | "warning" | "arrow-down" | "arrow-left" | "arrow-right" | "arrow-subdirectory" | "arrow-up" | "card-view" | "checkmark-bold" | "checkmark" | "chevron-down" | "chevron-left" | "chevron-right" | "chevron-up" | "grid-view" | "list-view" | "minus-bold" | "minus" | "more-horizontal" | "more-vertical" | "plus" | "services" | "sorter" | "table-view";
8
+ name: "link" | "map" | "menu" | "search" | "summary" | "time" | "video" | "filter" | "image" | "stop" | "key" | "x" | "download" | "split" | "add" | "reverse" | "infinite" | "radio" | "visible" | "copy" | "help" | "zoom-out" | "zoom" | "alert" | "email" | "alarm-off" | "alarm-on" | "attachment" | "bookmark-filled" | "bookmark" | "copy-filled" | "dislike" | "edit" | "heart-filled" | "heart" | "invisible" | "like" | "lock-open" | "lock" | "login" | "logout" | "maximize" | "minimize" | "mute" | "password-invisible" | "password-visible" | "play-filled" | "play" | "remove-filled" | "remove" | "save" | "send" | "settings" | "share" | "shortcut" | "shuffle" | "sync" | "skip-back-10sec" | "skip-back-30sec" | "skip-forward-10sec" | "skip-forward-30sec" | "star-filled" | "star" | "switch-arrows" | "tv-next" | "tv-pause" | "tv-previous" | "tv-stop" | "upload" | "volume" | "connected-building" | "home" | "hospital" | "industry" | "premises-datacenter" | "premises-large" | "premises-medium" | "premises-small" | "premises" | "store" | "address-book" | "b2b-customer" | "care" | "chat-robot" | "chat" | "child-1" | "child-2" | "conversation" | "customer-dialogue" | "dsl-hub" | "end-user" | "handshake" | "headphones" | "letter" | "mms" | "new-contact" | "new-group" | "news" | "parental-guide" | "people-hub" | "people" | "portal" | "signature" | "smiley-happy" | "smiley-sad" | "sms" | "support" | "user-admin" | "vcard" | "voicemail" | "battery" | "bluetooth" | "broadband" | "broken-phone" | "cast" | "cloud-connect" | "connected" | "core-router" | "daas-device" | "data-transfer" | "desktop" | "devices" | "esim-simcard" | "esim" | "face-id" | "fiber" | "fingerprint" | "fiveg" | "fourg" | "home-installation" | "industrial-iot" | "internet" | "it-service" | "laptop" | "mobile-broadband" | "network" | "phone-recycling" | "phone-ringing" | "phone" | "rack" | "refill-card" | "remote-control" | "repair" | "roaming" | "router" | "secure-device" | "sense-car" | "server" | "service-device" | "service-supervision" | "slow-wifi" | "smart-wifi" | "smartphone" | "smartwatch" | "tablet" | "trade-phone" | "tv" | "usb" | "voice-switch" | "wallplug" | "wireless-off" | "wireless-weak" | "wireless" | "world-alert" | "world-off" | "world-question" | "bar-chart" | "doc" | "document-doc" | "document-edit" | "document-pdf" | "document-ppt" | "excel" | "folder-copy" | "folder-new" | "folder" | "gif" | "graph" | "media-content" | "org-chart" | "pie-chart" | "print" | "register" | "report" | "simcard" | "spell-check" | "credit-card" | "euro" | "invoice" | "kontantkort" | "kr" | "late-payment" | "money-back-euro" | "money-back-kr" | "money-euro" | "money-kr" | "pay-monthly-euro" | "pay-monthly-kr" | "pay-once-euro" | "pay-once-kr" | "payment-success" | "savings" | "wallet" | "airplay" | "camera" | "entertainment" | "external" | "film" | "games" | "megaphone" | "microphone" | "music" | "player-settings" | "record" | "stream" | "trailer" | "video-conference" | "activity-level" | "ai-robot" | "bag" | "basketball" | "blood-pressure" | "bulb" | "business-continuity" | "business-intelligence" | "calendar" | "cart" | "close-circle" | "cloud" | "coffee" | "compass" | "construction" | "cookie" | "delivery" | "drone" | "education" | "efficiency" | "environment" | "facemask" | "flag" | "focus" | "food" | "fraud" | "getting-started" | "home-care" | "job-search" | "layers" | "measuring-health" | "moisture" | "offering" | "offshore" | "optimization" | "pebble" | "pet-dog" | "pin" | "plane" | "plus-minus" | "police" | "power-grid" | "present" | "press-button" | "price" | "pulse" | "recycle" | "reservation" | "route" | "ruler" | "satellite" | "secured-1" | "secured-2" | "security-camera" | "shopping" | "snowflake" | "speedometer" | "spyware" | "suitcase" | "sustainability" | "tag" | "temperature" | "thinking" | "train" | "transfer" | "undo" | "wavelength" | "weather" | "world" | "android" | "apple" | "bankid-norway" | "bankid" | "facebook" | "instagram" | "youtube" | "linkedin" | "snapchat" | "telia-logo" | "whatsapp" | "windows" | "alert-filled" | "check-circle-filled" | "check-circle" | "error-filled" | "error" | "info-filled" | "info" | "question-filled" | "question" | "warning" | "arrow-down" | "arrow-left" | "arrow-right" | "arrow-subdirectory" | "arrow-up" | "card-view" | "checkmark-bold" | "checkmark" | "chevron-down" | "chevron-left" | "chevron-right" | "chevron-up" | "close" | "grid-view" | "list-view" | "minus-bold" | "minus" | "more-horizontal" | "more-vertical" | "plus" | "services" | "sorter" | "table-view";
9
9
  size?: ("sm" | "md" | "lg" | "xl" | "xs" | "font" | "xxs") | undefined;
10
10
  children?: import('react').ReactNode;
11
11
  }, "ref">> & import('react').RefAttributes<SVGSVGElement>>;
@@ -13,7 +13,7 @@ export declare const Button: React.ForwardRefExoticComponent<Omit<Omit<Omit<Reac
13
13
  fullWidth?: boolean | undefined;
14
14
  size?: "sm" | "md" | "lg" | undefined;
15
15
  variant?: "text" | "list-item" | "primary" | "secondary" | "destructive" | "tertiary-purple" | "expressive" | "primary-negative" | "secondary-negative" | "destructive-negative" | "tertiary-purple-negative" | "text-negative" | "expressive-negative" | undefined;
16
- borderStyle?: ("dashed" | "default") | undefined;
16
+ borderStyle?: ("default" | "dashed") | undefined;
17
17
  } & {
18
18
  iconOnly: true;
19
19
  "aria-label": string;
@@ -25,7 +25,7 @@ export declare const Button: React.ForwardRefExoticComponent<Omit<Omit<Omit<Reac
25
25
  fullWidth?: boolean | undefined;
26
26
  size?: "sm" | "md" | "lg" | undefined;
27
27
  variant?: "text" | "list-item" | "primary" | "secondary" | "destructive" | "tertiary-purple" | "expressive" | "primary-negative" | "secondary-negative" | "destructive-negative" | "tertiary-purple-negative" | "text-negative" | "expressive-negative" | undefined;
28
- borderStyle?: ("dashed" | "default") | undefined;
28
+ borderStyle?: ("default" | "dashed") | undefined;
29
29
  } & {
30
30
  iconOnly?: false | undefined;
31
31
  "aria-label"?: string | undefined;
@@ -28,7 +28,7 @@ export declare const ExpandableCard: import('react').ForwardRefExoticComponent<R
28
28
  fullWidth?: boolean | undefined;
29
29
  size?: "sm" | "md" | "lg" | undefined;
30
30
  variant?: "text" | "list-item" | "primary" | "secondary" | "destructive" | "tertiary-purple" | "expressive" | "primary-negative" | "secondary-negative" | "destructive-negative" | "tertiary-purple-negative" | "text-negative" | "expressive-negative" | undefined;
31
- borderStyle?: ("dashed" | "default") | undefined;
31
+ borderStyle?: ("default" | "dashed") | undefined;
32
32
  } & {
33
33
  iconOnly: true;
34
34
  "aria-label": string;
@@ -40,7 +40,7 @@ export declare const ExpandableCard: import('react').ForwardRefExoticComponent<R
40
40
  fullWidth?: boolean | undefined;
41
41
  size?: "sm" | "md" | "lg" | undefined;
42
42
  variant?: "text" | "list-item" | "primary" | "secondary" | "destructive" | "tertiary-purple" | "expressive" | "primary-negative" | "secondary-negative" | "destructive-negative" | "tertiary-purple-negative" | "text-negative" | "expressive-negative" | undefined;
43
- borderStyle?: ("dashed" | "default") | undefined;
43
+ borderStyle?: ("default" | "dashed") | undefined;
44
44
  } & {
45
45
  iconOnly?: false | undefined;
46
46
  "aria-label"?: string | undefined;
@@ -1 +1 @@
1
- export declare const isIconName: (value: string | null) => value is "key" | "search" | "split" | "link" | "add" | "reverse" | "infinite" | "radio" | "visible" | "copy" | "help" | "zoom-out" | "filter" | "x" | "zoom" | "menu" | "map" | "summary" | "time" | "video" | "image" | "stop" | "download" | "alert" | "email" | "close" | "error" | "focus" | "play" | "alarm-off" | "alarm-on" | "attachment" | "bookmark-filled" | "bookmark" | "copy-filled" | "dislike" | "edit" | "heart-filled" | "heart" | "invisible" | "like" | "lock-open" | "lock" | "login" | "logout" | "maximize" | "minimize" | "mute" | "password-invisible" | "password-visible" | "play-filled" | "remove-filled" | "remove" | "save" | "send" | "settings" | "share" | "shortcut" | "shuffle" | "sync" | "skip-back-10sec" | "skip-back-30sec" | "skip-forward-10sec" | "skip-forward-30sec" | "star-filled" | "star" | "switch-arrows" | "tv-next" | "tv-pause" | "tv-previous" | "tv-stop" | "upload" | "volume" | "connected-building" | "home" | "hospital" | "industry" | "premises-datacenter" | "premises-large" | "premises-medium" | "premises-small" | "premises" | "store" | "address-book" | "b2b-customer" | "care" | "chat-robot" | "chat" | "child-1" | "child-2" | "conversation" | "customer-dialogue" | "dsl-hub" | "end-user" | "handshake" | "headphones" | "letter" | "mms" | "new-contact" | "new-group" | "news" | "parental-guide" | "people-hub" | "people" | "portal" | "signature" | "smiley-happy" | "smiley-sad" | "sms" | "support" | "user-admin" | "vcard" | "voicemail" | "battery" | "bluetooth" | "broadband" | "broken-phone" | "cast" | "cloud-connect" | "connected" | "core-router" | "daas-device" | "data-transfer" | "desktop" | "devices" | "esim-simcard" | "esim" | "face-id" | "fiber" | "fingerprint" | "fiveg" | "fourg" | "home-installation" | "industrial-iot" | "internet" | "it-service" | "laptop" | "mobile-broadband" | "network" | "phone-recycling" | "phone-ringing" | "phone" | "rack" | "refill-card" | "remote-control" | "repair" | "roaming" | "router" | "secure-device" | "sense-car" | "server" | "service-device" | "service-supervision" | "slow-wifi" | "smart-wifi" | "smartphone" | "smartwatch" | "tablet" | "trade-phone" | "tv" | "usb" | "voice-switch" | "wallplug" | "wireless-off" | "wireless-weak" | "wireless" | "world-alert" | "world-off" | "world-question" | "bar-chart" | "doc" | "document-doc" | "document-edit" | "document-pdf" | "document-ppt" | "excel" | "folder-copy" | "folder-new" | "folder" | "gif" | "graph" | "media-content" | "org-chart" | "pie-chart" | "print" | "register" | "report" | "simcard" | "spell-check" | "credit-card" | "euro" | "invoice" | "kontantkort" | "kr" | "late-payment" | "money-back-euro" | "money-back-kr" | "money-euro" | "money-kr" | "pay-monthly-euro" | "pay-monthly-kr" | "pay-once-euro" | "pay-once-kr" | "payment-success" | "savings" | "wallet" | "airplay" | "camera" | "entertainment" | "external" | "film" | "games" | "megaphone" | "microphone" | "music" | "player-settings" | "record" | "stream" | "trailer" | "video-conference" | "activity-level" | "ai-robot" | "bag" | "basketball" | "blood-pressure" | "bulb" | "business-continuity" | "business-intelligence" | "calendar" | "cart" | "close-circle" | "cloud" | "coffee" | "compass" | "construction" | "cookie" | "delivery" | "drone" | "education" | "efficiency" | "environment" | "facemask" | "flag" | "food" | "fraud" | "getting-started" | "home-care" | "job-search" | "layers" | "measuring-health" | "moisture" | "offering" | "offshore" | "optimization" | "pebble" | "pet-dog" | "pin" | "plane" | "plus-minus" | "police" | "power-grid" | "present" | "press-button" | "price" | "pulse" | "recycle" | "reservation" | "route" | "ruler" | "satellite" | "secured-1" | "secured-2" | "security-camera" | "shopping" | "snowflake" | "speedometer" | "spyware" | "suitcase" | "sustainability" | "tag" | "temperature" | "thinking" | "train" | "transfer" | "undo" | "wavelength" | "weather" | "world" | "android" | "apple" | "bankid-norway" | "bankid" | "facebook" | "instagram" | "youtube" | "linkedin" | "snapchat" | "telia-logo" | "whatsapp" | "windows" | "alert-filled" | "check-circle-filled" | "check-circle" | "error-filled" | "info-filled" | "info" | "question-filled" | "question" | "warning" | "arrow-down" | "arrow-left" | "arrow-right" | "arrow-subdirectory" | "arrow-up" | "card-view" | "checkmark-bold" | "checkmark" | "chevron-down" | "chevron-left" | "chevron-right" | "chevron-up" | "grid-view" | "list-view" | "minus-bold" | "minus" | "more-horizontal" | "more-vertical" | "plus" | "services" | "sorter" | "table-view";
1
+ export declare const isIconName: (value: string | null) => value is "link" | "map" | "menu" | "search" | "summary" | "time" | "video" | "filter" | "image" | "stop" | "key" | "x" | "download" | "split" | "add" | "reverse" | "infinite" | "radio" | "visible" | "copy" | "help" | "zoom-out" | "zoom" | "alert" | "email" | "alarm-off" | "alarm-on" | "attachment" | "bookmark-filled" | "bookmark" | "copy-filled" | "dislike" | "edit" | "heart-filled" | "heart" | "invisible" | "like" | "lock-open" | "lock" | "login" | "logout" | "maximize" | "minimize" | "mute" | "password-invisible" | "password-visible" | "play-filled" | "play" | "remove-filled" | "remove" | "save" | "send" | "settings" | "share" | "shortcut" | "shuffle" | "sync" | "skip-back-10sec" | "skip-back-30sec" | "skip-forward-10sec" | "skip-forward-30sec" | "star-filled" | "star" | "switch-arrows" | "tv-next" | "tv-pause" | "tv-previous" | "tv-stop" | "upload" | "volume" | "connected-building" | "home" | "hospital" | "industry" | "premises-datacenter" | "premises-large" | "premises-medium" | "premises-small" | "premises" | "store" | "address-book" | "b2b-customer" | "care" | "chat-robot" | "chat" | "child-1" | "child-2" | "conversation" | "customer-dialogue" | "dsl-hub" | "end-user" | "handshake" | "headphones" | "letter" | "mms" | "new-contact" | "new-group" | "news" | "parental-guide" | "people-hub" | "people" | "portal" | "signature" | "smiley-happy" | "smiley-sad" | "sms" | "support" | "user-admin" | "vcard" | "voicemail" | "battery" | "bluetooth" | "broadband" | "broken-phone" | "cast" | "cloud-connect" | "connected" | "core-router" | "daas-device" | "data-transfer" | "desktop" | "devices" | "esim-simcard" | "esim" | "face-id" | "fiber" | "fingerprint" | "fiveg" | "fourg" | "home-installation" | "industrial-iot" | "internet" | "it-service" | "laptop" | "mobile-broadband" | "network" | "phone-recycling" | "phone-ringing" | "phone" | "rack" | "refill-card" | "remote-control" | "repair" | "roaming" | "router" | "secure-device" | "sense-car" | "server" | "service-device" | "service-supervision" | "slow-wifi" | "smart-wifi" | "smartphone" | "smartwatch" | "tablet" | "trade-phone" | "tv" | "usb" | "voice-switch" | "wallplug" | "wireless-off" | "wireless-weak" | "wireless" | "world-alert" | "world-off" | "world-question" | "bar-chart" | "doc" | "document-doc" | "document-edit" | "document-pdf" | "document-ppt" | "excel" | "folder-copy" | "folder-new" | "folder" | "gif" | "graph" | "media-content" | "org-chart" | "pie-chart" | "print" | "register" | "report" | "simcard" | "spell-check" | "credit-card" | "euro" | "invoice" | "kontantkort" | "kr" | "late-payment" | "money-back-euro" | "money-back-kr" | "money-euro" | "money-kr" | "pay-monthly-euro" | "pay-monthly-kr" | "pay-once-euro" | "pay-once-kr" | "payment-success" | "savings" | "wallet" | "airplay" | "camera" | "entertainment" | "external" | "film" | "games" | "megaphone" | "microphone" | "music" | "player-settings" | "record" | "stream" | "trailer" | "video-conference" | "activity-level" | "ai-robot" | "bag" | "basketball" | "blood-pressure" | "bulb" | "business-continuity" | "business-intelligence" | "calendar" | "cart" | "close-circle" | "cloud" | "coffee" | "compass" | "construction" | "cookie" | "delivery" | "drone" | "education" | "efficiency" | "environment" | "facemask" | "flag" | "focus" | "food" | "fraud" | "getting-started" | "home-care" | "job-search" | "layers" | "measuring-health" | "moisture" | "offering" | "offshore" | "optimization" | "pebble" | "pet-dog" | "pin" | "plane" | "plus-minus" | "police" | "power-grid" | "present" | "press-button" | "price" | "pulse" | "recycle" | "reservation" | "route" | "ruler" | "satellite" | "secured-1" | "secured-2" | "security-camera" | "shopping" | "snowflake" | "speedometer" | "spyware" | "suitcase" | "sustainability" | "tag" | "temperature" | "thinking" | "train" | "transfer" | "undo" | "wavelength" | "weather" | "world" | "android" | "apple" | "bankid-norway" | "bankid" | "facebook" | "instagram" | "youtube" | "linkedin" | "snapchat" | "telia-logo" | "whatsapp" | "windows" | "alert-filled" | "check-circle-filled" | "check-circle" | "error-filled" | "error" | "info-filled" | "info" | "question-filled" | "question" | "warning" | "arrow-down" | "arrow-left" | "arrow-right" | "arrow-subdirectory" | "arrow-up" | "card-view" | "checkmark-bold" | "checkmark" | "chevron-down" | "chevron-left" | "chevron-right" | "chevron-up" | "close" | "grid-view" | "list-view" | "minus-bold" | "minus" | "more-horizontal" | "more-vertical" | "plus" | "services" | "sorter" | "table-view";
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const components_meterBar_index = require("./meter-bar/index.cjs");
3
4
  const components_skeleton_index = require("./skeleton/index.cjs");
4
5
  const components_checkbox_index = require("./checkbox/index.cjs");
5
6
  const components_toast_index = require("./toast/index.cjs");
@@ -52,6 +53,7 @@ const components_carousel_carouselRoot = require("./carousel/carousel-root.cjs")
52
53
  const components_slider_slider = require("./slider/slider.cjs");
53
54
  const sonner = require("sonner");
54
55
  const components_input_inputGroup = require("./input/input-group.cjs");
56
+ exports.MeterBar = components_meterBar_index.MeterBar;
55
57
  exports.Skeleton = components_skeleton_index.Skeleton;
56
58
  exports.Checkbox = components_checkbox_index.Checkbox;
57
59
  exports.CheckboxGroup = components_checkbox_index.CheckboxGroup;
@@ -1,3 +1,4 @@
1
+ export * from './meter-bar';
1
2
  export * from './skeleton';
2
3
  export * from './checkbox';
3
4
  export * from './toast';
@@ -1,3 +1,4 @@
1
+ import { MeterBar } from "./meter-bar/index.js";
1
2
  import { Skeleton } from "./skeleton/index.js";
2
3
  import { Checkbox, CheckboxGroup } from "./checkbox/index.js";
3
4
  import { Toast } from "./toast/index.js";
@@ -82,6 +83,7 @@ export {
82
83
  Label,
83
84
  Link,
84
85
  List,
86
+ MeterBar,
85
87
  MetricMeter,
86
88
  M as Modal,
87
89
  N as NavigationMenu,
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const components_meterBar_meterBarIndicator = require("./meter-bar-indicator.cjs");
4
+ components_meterBar_meterBarIndicator.Root.displayName = "MeterBar";
5
+ components_meterBar_meterBarIndicator.Indicator.displayName = "MeterBar.Indicator";
6
+ const MeterBar = Object.assign(components_meterBar_meterBarIndicator.Root, {
7
+ Indicator: components_meterBar_meterBarIndicator.Indicator
8
+ });
9
+ exports.MeterBar = MeterBar;
@@ -0,0 +1,29 @@
1
+ import { RootProps } from './meter-bar-root';
2
+ import { IndicatorProps } from './meter-bar-indicator';
3
+
4
+ /**
5
+ *
6
+ * @example
7
+ * ```tsx
8
+ * <MeterBar value={50} />
9
+ * ```
10
+ * @example
11
+ * ```tsx
12
+ * <MeterBar>
13
+ * <MeterBar.Indicator value={10} />
14
+ * <MeterBar.Indicator value={50} />
15
+ * </MeterBar>
16
+ * ```
17
+ */
18
+ export declare const MeterBar: import('react').ForwardRefExoticComponent<RootProps & import('react').RefAttributes<HTMLDivElement>> & {
19
+ Indicator: import('react').ForwardRefExoticComponent<Omit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
20
+ value: number | null | undefined;
21
+ max?: number | undefined;
22
+ color?: string | undefined;
23
+ getValueLabel?(value: number, max: number): string;
24
+ } & import('react').RefAttributes<HTMLDivElement>>;
25
+ };
26
+ export type MeterBarProps = {
27
+ Root: RootProps;
28
+ Indicator: IndicatorProps;
29
+ };
@@ -0,0 +1,9 @@
1
+ import { R as Root, Indicator } from "./meter-bar-indicator.js";
2
+ Root.displayName = "MeterBar";
3
+ Indicator.displayName = "MeterBar.Indicator";
4
+ const MeterBar = Object.assign(Root, {
5
+ Indicator
6
+ });
7
+ export {
8
+ MeterBar
9
+ };
@@ -0,0 +1,65 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const React = require("react");
5
+ const clsx = require("clsx");
6
+ const components_meterBar_utils = require("./utils.cjs");
7
+ const slideInFromLeft = "_slideInFromLeft_34v05_1";
8
+ const styles = {
9
+ "teddy-meter-bar": "_teddy-meter-bar_34v05_1",
10
+ "teddy-meter-bar__indicator": "_teddy-meter-bar__indicator_34v05_13",
11
+ slideInFromLeft,
12
+ "teddy-meter-bar--negative": "_teddy-meter-bar--negative_34v05_26"
13
+ };
14
+ const Indicator = React.forwardRef(
15
+ ({ className, value: valueProp, getValueLabel = components_meterBar_utils.defaultGetValueLabel, color, max: propMax, ...props }, forwardRef) => {
16
+ const context = React.useContext(RootContext);
17
+ const maxInternal = propMax || (context == null ? void 0 : context.max);
18
+ const classes = clsx([styles[`${rootClassName}__indicator`]], className);
19
+ const max = components_meterBar_utils.isValidMaxNumber(maxInternal) ? maxInternal : components_meterBar_utils.DEFAULT_MAX;
20
+ const value = components_meterBar_utils.isValidValueNumber(valueProp, max) ? valueProp : null;
21
+ const valueLabel = components_meterBar_utils.isNumber(value) ? getValueLabel(value, max) : void 0;
22
+ const progress = components_meterBar_utils.getProgress(value, max);
23
+ return /* @__PURE__ */ jsxRuntime.jsx(
24
+ "div",
25
+ {
26
+ ...props,
27
+ style: {
28
+ zIndex: 100 - Math.round(progress),
29
+ transform: `translateX(-${100 - progress}%)`,
30
+ backgroundColor: color,
31
+ ...props.style
32
+ },
33
+ role: "meter",
34
+ "aria-valuemax": max,
35
+ "aria-valuemin": 0,
36
+ "aria-valuenow": components_meterBar_utils.isNumber(value) ? value : void 0,
37
+ "aria-valuetext": valueLabel,
38
+ ref: forwardRef,
39
+ className: classes
40
+ }
41
+ );
42
+ }
43
+ );
44
+ Indicator.displayName = "Indicator";
45
+ const rootClassName = "teddy-meter-bar";
46
+ const RootContext = React.createContext(void 0);
47
+ const Root = React.forwardRef(
48
+ ({ className, value, max, children, negative, ...props }, forwardRef) => {
49
+ const classes = clsx(
50
+ [
51
+ styles[`${rootClassName}`],
52
+ {
53
+ [styles[`${rootClassName}--negative`]]: negative
54
+ }
55
+ ],
56
+ className
57
+ );
58
+ return /* @__PURE__ */ jsxRuntime.jsx(RootContext.Provider, { value: { max }, children: /* @__PURE__ */ jsxRuntime.jsx("div", { ...props, ref: forwardRef, className: classes, children: children || /* @__PURE__ */ jsxRuntime.jsx(Indicator, { value }) }) });
59
+ }
60
+ );
61
+ Root.displayName = "Root";
62
+ exports.Indicator = Indicator;
63
+ exports.Root = Root;
64
+ exports.RootContext = RootContext;
65
+ exports.rootClassName = rootClassName;
@@ -0,0 +1,19 @@
1
+ import { default as React } from 'react';
2
+
3
+ export type IndicatorProps = React.ComponentPropsWithoutRef<'div'> & {
4
+ value: number | null | undefined;
5
+ max?: number;
6
+ color?: string;
7
+ /** A function to get the accessible label text representing the current value in a human-readable format. If not provided, the value label will be read as the numeric value as a percentage of the max value. */
8
+ getValueLabel?(value: number, max: number): string;
9
+ };
10
+ /**
11
+ * A component that represents the current value of a meter bar.
12
+ */
13
+ export declare const Indicator: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
14
+ value: number | null | undefined;
15
+ max?: number | undefined;
16
+ color?: string | undefined;
17
+ /** A function to get the accessible label text representing the current value in a human-readable format. If not provided, the value label will be read as the numeric value as a percentage of the max value. */
18
+ getValueLabel?(value: number, max: number): string;
19
+ } & React.RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,65 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import React__default from "react";
3
+ import clsx from "clsx";
4
+ import { isNumber, defaultGetValueLabel, isValidMaxNumber, DEFAULT_MAX, isValidValueNumber, getProgress } from "./utils.js";
5
+ const slideInFromLeft = "_slideInFromLeft_34v05_1";
6
+ const styles = {
7
+ "teddy-meter-bar": "_teddy-meter-bar_34v05_1",
8
+ "teddy-meter-bar__indicator": "_teddy-meter-bar__indicator_34v05_13",
9
+ slideInFromLeft,
10
+ "teddy-meter-bar--negative": "_teddy-meter-bar--negative_34v05_26"
11
+ };
12
+ const Indicator = React__default.forwardRef(
13
+ ({ className, value: valueProp, getValueLabel = defaultGetValueLabel, color, max: propMax, ...props }, forwardRef) => {
14
+ const context = React__default.useContext(RootContext);
15
+ const maxInternal = propMax || (context == null ? void 0 : context.max);
16
+ const classes = clsx([styles[`${rootClassName}__indicator`]], className);
17
+ const max = isValidMaxNumber(maxInternal) ? maxInternal : DEFAULT_MAX;
18
+ const value = isValidValueNumber(valueProp, max) ? valueProp : null;
19
+ const valueLabel = isNumber(value) ? getValueLabel(value, max) : void 0;
20
+ const progress = getProgress(value, max);
21
+ return /* @__PURE__ */ jsx(
22
+ "div",
23
+ {
24
+ ...props,
25
+ style: {
26
+ zIndex: 100 - Math.round(progress),
27
+ transform: `translateX(-${100 - progress}%)`,
28
+ backgroundColor: color,
29
+ ...props.style
30
+ },
31
+ role: "meter",
32
+ "aria-valuemax": max,
33
+ "aria-valuemin": 0,
34
+ "aria-valuenow": isNumber(value) ? value : void 0,
35
+ "aria-valuetext": valueLabel,
36
+ ref: forwardRef,
37
+ className: classes
38
+ }
39
+ );
40
+ }
41
+ );
42
+ Indicator.displayName = "Indicator";
43
+ const rootClassName = "teddy-meter-bar";
44
+ const RootContext = React__default.createContext(void 0);
45
+ const Root = React__default.forwardRef(
46
+ ({ className, value, max, children, negative, ...props }, forwardRef) => {
47
+ const classes = clsx(
48
+ [
49
+ styles[`${rootClassName}`],
50
+ {
51
+ [styles[`${rootClassName}--negative`]]: negative
52
+ }
53
+ ],
54
+ className
55
+ );
56
+ return /* @__PURE__ */ jsx(RootContext.Provider, { value: { max }, children: /* @__PURE__ */ jsx("div", { ...props, ref: forwardRef, className: classes, children: children || /* @__PURE__ */ jsx(Indicator, { value }) }) });
57
+ }
58
+ );
59
+ Root.displayName = "Root";
60
+ export {
61
+ Indicator,
62
+ Root as R,
63
+ RootContext as a,
64
+ rootClassName as r
65
+ };
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ require("react/jsx-runtime");
4
+ require("react");
5
+ require("clsx");
6
+ const components_meterBar_meterBarIndicator = require("./meter-bar-indicator.cjs");
7
+ exports.Root = components_meterBar_meterBarIndicator.Root;
8
+ exports.RootContext = components_meterBar_meterBarIndicator.RootContext;
9
+ exports.rootClassName = components_meterBar_meterBarIndicator.rootClassName;
@@ -0,0 +1,22 @@
1
+ import { default as React } from 'react';
2
+
3
+ export declare const rootClassName = "teddy-meter-bar";
4
+ export type RootProps = Omit<React.ComponentPropsWithoutRef<'div'>, 'children' | 'value'> & {
5
+ negative?: boolean;
6
+ /**
7
+ * @default 100
8
+ */
9
+ max?: number;
10
+ } & ({
11
+ value: number | null | undefined;
12
+ children?: never;
13
+ } | {
14
+ value?: never;
15
+ children?: React.ReactNode;
16
+ });
17
+ type RootContextType = {
18
+ max?: number;
19
+ };
20
+ export declare const RootContext: React.Context<RootContextType | undefined>;
21
+ export declare const Root: React.ForwardRefExoticComponent<RootProps & React.RefAttributes<HTMLDivElement>>;
22
+ export {};
@@ -0,0 +1,9 @@
1
+ import "react/jsx-runtime";
2
+ import "react";
3
+ import "clsx";
4
+ import { R, a, r } from "./meter-bar-indicator.js";
5
+ export {
6
+ R as Root,
7
+ a as RootContext,
8
+ r as rootClassName
9
+ };
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const DEFAULT_MAX = 100;
4
+ function defaultGetValueLabel(value, max) {
5
+ return `${Math.round(value / max * 100)}%`;
6
+ }
7
+ function getProgress(value, max) {
8
+ return (value || 0) / max * 100;
9
+ }
10
+ function isNumber(value) {
11
+ return typeof value === "number";
12
+ }
13
+ function isValidMaxNumber(max) {
14
+ return isNumber(max) && !isNaN(max) && max > 0;
15
+ }
16
+ function isValidValueNumber(value, max) {
17
+ return isNumber(value) && !isNaN(value) && value <= max && value >= 0;
18
+ }
19
+ exports.DEFAULT_MAX = DEFAULT_MAX;
20
+ exports.defaultGetValueLabel = defaultGetValueLabel;
21
+ exports.getProgress = getProgress;
22
+ exports.isNumber = isNumber;
23
+ exports.isValidMaxNumber = isValidMaxNumber;
24
+ exports.isValidValueNumber = isValidValueNumber;
@@ -0,0 +1,6 @@
1
+ export declare const DEFAULT_MAX = 100;
2
+ export declare function defaultGetValueLabel(value: number, max: number): string;
3
+ export declare function getProgress(value: number | null, max: number): number;
4
+ export declare function isNumber(value: unknown): value is number;
5
+ export declare function isValidMaxNumber(max: unknown): max is number;
6
+ export declare function isValidValueNumber(value: unknown, max: number): value is number;
@@ -0,0 +1,24 @@
1
+ const DEFAULT_MAX = 100;
2
+ function defaultGetValueLabel(value, max) {
3
+ return `${Math.round(value / max * 100)}%`;
4
+ }
5
+ function getProgress(value, max) {
6
+ return (value || 0) / max * 100;
7
+ }
8
+ function isNumber(value) {
9
+ return typeof value === "number";
10
+ }
11
+ function isValidMaxNumber(max) {
12
+ return isNumber(max) && !isNaN(max) && max > 0;
13
+ }
14
+ function isValidValueNumber(value, max) {
15
+ return isNumber(value) && !isNaN(value) && value <= max && value >= 0;
16
+ }
17
+ export {
18
+ DEFAULT_MAX,
19
+ defaultGetValueLabel,
20
+ getProgress,
21
+ isNumber,
22
+ isValidMaxNumber,
23
+ isValidValueNumber
24
+ };
@@ -3,6 +3,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  require("react/jsx-runtime");
4
4
  require("react");
5
5
  require("@radix-ui/react-dialog");
6
+ require("../meter-bar/index.cjs");
6
7
  require("../skeleton/index.cjs");
7
8
  require("../checkbox/index.cjs");
8
9
  require("../toast/toast-root.cjs");
@@ -1,6 +1,7 @@
1
1
  import "react/jsx-runtime";
2
2
  import "react";
3
3
  import "@radix-ui/react-dialog";
4
+ import "../meter-bar/index.js";
4
5
  import "../skeleton/index.js";
5
6
  import "../checkbox/index.js";
6
7
  import "../toast/toast-root.js";
@@ -12,4 +12,7 @@ require("../../../tokens/motion/variables.cjs");
12
12
  require("../../../assets/sprite.269ba410-teddy.svg");
13
13
  require("../../icon/icon.cjs");
14
14
  require("../../flex/flex.cjs");
15
+ require("../../list/index.cjs");
16
+ require("../../heading/heading.cjs");
17
+ require("../../button/button.cjs");
15
18
  exports.Desktop = components_radioCardGroup_radioCardGroupItemTitle.Desktop;
@@ -10,6 +10,9 @@ import "../../../tokens/motion/variables.js";
10
10
  import "../../../assets/sprite.269ba410-teddy.svg";
11
11
  import "../../icon/icon.js";
12
12
  import "../../flex/flex.js";
13
+ import "../../list/index.js";
14
+ import "../../heading/heading.js";
15
+ import "../../button/button.js";
13
16
  export {
14
17
  D as Desktop
15
18
  };
@@ -12,8 +12,7 @@ require("../../../assets/sprite.269ba410-teddy.svg");
12
12
  require("../../icon/icon.cjs");
13
13
  require("../../tabs/index.cjs");
14
14
  require("./utils.cjs");
15
- require("../../accordion/index.cjs");
16
- require("../../visually-hidden/visually-hidden.cjs");
17
- require("../../link/link.cjs");
18
15
  require("../../list/index.cjs");
16
+ require("../../heading/heading.cjs");
17
+ exports.HighlightedLinks = components_radioCardGroup_radioCardGroupItemTitle.HighlightedLinks;
19
18
  exports.Mobile = components_radioCardGroup_radioCardGroupItemTitle.Mobile;