@telia/teddy 0.0.53 → 0.0.55

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 (81) hide show
  1. package/dist/components/breadcrumbs/breadcrumbs-item.cjs +12 -0
  2. package/dist/components/breadcrumbs/breadcrumbs-item.d.ts +5 -0
  3. package/dist/components/breadcrumbs/breadcrumbs-item.js +12 -0
  4. package/dist/components/breadcrumbs/breadcrumbs-link.cjs +30 -0
  5. package/dist/components/breadcrumbs/breadcrumbs-link.d.ts +10 -0
  6. package/dist/components/breadcrumbs/breadcrumbs-link.js +30 -0
  7. package/dist/components/breadcrumbs/breadcrumbs-list.cjs +12 -0
  8. package/dist/components/breadcrumbs/breadcrumbs-list.d.ts +4 -0
  9. package/dist/components/breadcrumbs/breadcrumbs-list.js +12 -0
  10. package/dist/components/breadcrumbs/breadcrumbs-page.cjs +20 -0
  11. package/dist/components/breadcrumbs/breadcrumbs-page.d.ts +5 -0
  12. package/dist/components/breadcrumbs/breadcrumbs-page.js +20 -0
  13. package/dist/components/breadcrumbs/breadcrumbs-root.cjs +29 -0
  14. package/dist/components/breadcrumbs/breadcrumbs-root.d.ts +11 -0
  15. package/dist/components/breadcrumbs/breadcrumbs-root.js +29 -0
  16. package/dist/components/breadcrumbs/breadcrumbs-separator.cjs +25 -0
  17. package/dist/components/breadcrumbs/breadcrumbs-separator.d.ts +4 -0
  18. package/dist/components/breadcrumbs/breadcrumbs-separator.js +25 -0
  19. package/dist/components/breadcrumbs/index.cjs +22 -0
  20. package/dist/components/breadcrumbs/index.d.ts +27 -0
  21. package/dist/components/breadcrumbs/index.js +22 -0
  22. package/dist/components/card/card-illustration.d.ts +1 -1
  23. package/dist/components/card/index.d.ts +1 -1
  24. package/dist/components/chip/chip-indicator.d.ts +2 -2
  25. package/dist/components/chip/index.d.ts +2 -2
  26. package/dist/components/color-dot/index.d.ts +1 -1
  27. package/dist/components/expandable-card/expandable-card-button.d.ts +1 -1
  28. package/dist/components/expandable-card/index.d.ts +1 -1
  29. package/dist/components/index.cjs +5 -2
  30. package/dist/components/index.d.ts +2 -0
  31. package/dist/components/index.js +5 -2
  32. package/dist/components/modal/index.cjs +2 -2
  33. package/dist/components/modal/index.js +2 -2
  34. package/dist/components/modal/modal.cjs +14 -184
  35. package/dist/components/modal/modal.js +14 -167
  36. package/dist/components/navigation-menu/global-navigation/global-navigation-my-pages.cjs +1 -1
  37. package/dist/components/navigation-menu/global-navigation/global-navigation-my-pages.js +2 -2
  38. package/dist/components/navigation-menu/global-navigation/utils.cjs +6 -6
  39. package/dist/components/navigation-menu/global-navigation/utils.d.ts +10 -10
  40. package/dist/components/navigation-menu/global-navigation/utils.js +6 -6
  41. package/dist/components/navigation-menu/navigation-menu.d.ts +1 -1
  42. package/dist/components/notabene/notabene-icon.d.ts +2 -2
  43. package/dist/components/notification/notification.d.ts +5 -5
  44. package/dist/components/radio-card-group/index.cjs +6 -0
  45. package/dist/components/radio-card-group/index.d.ts +67 -0
  46. package/dist/components/radio-card-group/index.js +6 -0
  47. package/dist/components/radio-card-group/radio-card-group-content.cjs +47 -0
  48. package/dist/components/radio-card-group/radio-card-group-content.d.ts +5 -0
  49. package/dist/components/radio-card-group/radio-card-group-content.js +47 -0
  50. package/dist/components/radio-card-group/radio-card-group-indicator.cjs +32 -0
  51. package/dist/components/radio-card-group/radio-card-group-indicator.d.ts +5 -0
  52. package/dist/components/radio-card-group/radio-card-group-indicator.js +15 -0
  53. package/dist/components/radio-card-group/radio-card-group-item-body.cjs +48 -0
  54. package/dist/components/radio-card-group/radio-card-group-item-body.d.ts +8 -0
  55. package/dist/components/radio-card-group/radio-card-group-item-body.js +48 -0
  56. package/dist/components/radio-card-group/radio-card-group-item-title.cjs +282 -0
  57. package/dist/components/radio-card-group/radio-card-group-item-title.d.ts +8 -0
  58. package/dist/components/radio-card-group/radio-card-group-item-title.js +264 -0
  59. package/dist/components/radio-card-group/radio-card-group-item.cjs +50 -0
  60. package/dist/components/radio-card-group/radio-card-group-item.d.ts +17 -0
  61. package/dist/components/radio-card-group/radio-card-group-item.js +50 -0
  62. package/dist/components/radio-card-group/radio-card-group-label.cjs +29 -0
  63. package/dist/components/radio-card-group/radio-card-group-label.d.ts +65 -0
  64. package/dist/components/radio-card-group/radio-card-group-label.js +29 -0
  65. package/dist/components/radio-card-group/radio-card-group-root.cjs +49 -0
  66. package/dist/components/radio-card-group/radio-card-group-root.d.ts +52 -0
  67. package/dist/components/radio-card-group/radio-card-group-root.js +32 -0
  68. package/dist/components/scroll-area/index.d.ts +1 -1
  69. package/dist/components/scroll-area/scroll-area-button.d.ts +1 -1
  70. package/dist/components/tabs/index.d.ts +2 -2
  71. package/dist/components/tabs/tabs-root.d.ts +1 -1
  72. package/dist/components/tabs/tabs-scroll-button.d.ts +1 -1
  73. package/dist/components/toggle/toggle.d.ts +2 -2
  74. package/dist/components/tooltip/index.d.ts +3 -3
  75. package/dist/main.cjs +5 -2
  76. package/dist/main.js +5 -2
  77. package/dist/style.css +1135 -889
  78. package/dist/utils/generate-styling/grid.d.ts +24 -24
  79. package/dist/utils/generate-styling/index.d.ts +16 -16
  80. package/dist/utils/generate-styling/util.d.ts +2 -2
  81. package/package.json +1 -1
@@ -0,0 +1,282 @@
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 DrawerPrimitive = require("@radix-ui/react-dialog");
6
+ require("../breadcrumbs/index.cjs");
7
+ const components_radioCardGroup_radioCardGroupRoot = require("./radio-card-group-root.cjs");
8
+ const components_radioCardGroup_radioCardGroupLabel = require("./radio-card-group-label.cjs");
9
+ const clsx = require("clsx");
10
+ const reactSlot = require("@radix-ui/react-slot");
11
+ require("../ribbon/index.cjs");
12
+ require("../expandable-card/index.cjs");
13
+ require("../color-dot/color-dot-root.cjs");
14
+ require("../progress-bar/progress-bar.cjs");
15
+ require("../notabene/index.cjs");
16
+ require("../tooltip/index.cjs");
17
+ require("../list/index.cjs");
18
+ require("../scroll-area/index.cjs");
19
+ require("../tabs/index.cjs");
20
+ require("../drawer/index.cjs");
21
+ require("../image/image.cjs");
22
+ require("../chip/index.cjs");
23
+ require("../../assets/sprite.269ba410-teddy.svg");
24
+ const components_icon_icon = require("../icon/icon.cjs");
25
+ require("../notification/notification.cjs");
26
+ require("../radio-group/index.cjs");
27
+ require("../box/box.cjs");
28
+ const components_flex_flex = require("../flex/flex.cjs");
29
+ require("../card/index.cjs");
30
+ require("../grid/grid.cjs");
31
+ require("../navigation-menu/navigation-menu.cjs");
32
+ require("../navigation-menu/global-navigation/global-navigation-my-pages.cjs");
33
+ require("../toggle/toggle.cjs");
34
+ require("../accordion/index.cjs");
35
+ require("../link/link.cjs");
36
+ require("../badge/badge.cjs");
37
+ require("../badge/alert-badge.cjs");
38
+ require("../badge/counter-badge.cjs");
39
+ const components_button_button = require("../button/button.cjs");
40
+ require("../field-error-text/field-error-text.cjs");
41
+ require("../helper-text/helper-text.cjs");
42
+ require("../input/index.cjs");
43
+ require("../label/label.cjs");
44
+ require("../spinner/spinner.cjs");
45
+ const components_text_text = require("../text/text.cjs");
46
+ require("../text-field/index.cjs");
47
+ const components_heading_heading = require("../heading/heading.cjs");
48
+ require("../visually-hidden/visually-hidden.cjs");
49
+ require("../text-spacing/text-spacing.cjs");
50
+ const utils_composeRefs = require("../../utils/composeRefs.cjs");
51
+ const components_radioCardGroup_radioCardGroupIndicator = require("./radio-card-group-indicator.cjs");
52
+ const RadioGroupPrimitive = require("@radix-ui/react-radio-group");
53
+ function _interopNamespaceDefault(e) {
54
+ const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
55
+ if (e) {
56
+ for (const k in e) {
57
+ if (k !== "default") {
58
+ const d = Object.getOwnPropertyDescriptor(e, k);
59
+ Object.defineProperty(n, k, d.get ? d : {
60
+ enumerable: true,
61
+ get: () => e[k]
62
+ });
63
+ }
64
+ }
65
+ }
66
+ n.default = e;
67
+ return Object.freeze(n);
68
+ }
69
+ const DrawerPrimitive__namespace = /* @__PURE__ */ _interopNamespaceDefault(DrawerPrimitive);
70
+ const RadioGroupPrimitive__namespace = /* @__PURE__ */ _interopNamespaceDefault(RadioGroupPrimitive);
71
+ const Title$1 = React.forwardRef(
72
+ ({ className, children, asChild, ...props }, forwardRef) => {
73
+ const classes = clsx([components_radioCardGroup_radioCardGroupRoot.styles[`${components_radioCardGroup_radioCardGroupRoot.rootClassName}__title`]], className);
74
+ return /* @__PURE__ */ jsxRuntime.jsxs(components_flex_flex.Flex, { width: "100%", gap: "150", className: components_radioCardGroup_radioCardGroupRoot.styles[`${components_radioCardGroup_radioCardGroupRoot.rootClassName}__title-wrapper`], children: [
75
+ asChild ? /* @__PURE__ */ jsxRuntime.jsx(reactSlot.Slot, { ...props, ref: forwardRef, className: classes, children }) : /* @__PURE__ */ jsxRuntime.jsx(components_text_text.Text, { variant: "paragraph-100-bold", ref: forwardRef, className: classes, children }),
76
+ /* @__PURE__ */ jsxRuntime.jsx(components_radioCardGroup_radioCardGroupIndicator.Indicator, {})
77
+ ] });
78
+ }
79
+ );
80
+ Title$1.displayName = "Title";
81
+ const Body = React.forwardRef(
82
+ ({ className, children, asChild, ...props }, forwardRef) => {
83
+ const classes = clsx([components_radioCardGroup_radioCardGroupRoot.styles[`${components_radioCardGroup_radioCardGroupRoot.rootClassName}__body`]], className);
84
+ const Comp = asChild ? reactSlot.Slot : components_text_text.Text;
85
+ return /* @__PURE__ */ jsxRuntime.jsx(Comp, { ref: forwardRef, className: classes, ...props, children });
86
+ }
87
+ );
88
+ Body.displayName = "Body";
89
+ const Content$1 = React.forwardRef(
90
+ ({ className, children, ...props }, forwardRef) => {
91
+ const classes = clsx([components_radioCardGroup_radioCardGroupRoot.styles[`${components_radioCardGroup_radioCardGroupRoot.rootClassName}__content-wrapper`]], className);
92
+ return /* @__PURE__ */ jsxRuntime.jsx(components_flex_flex.Flex, { direction: "column", width: "100%", gap: "50", ...props, ref: forwardRef, className: classes, children });
93
+ }
94
+ );
95
+ Content$1.displayName = "Content";
96
+ const ItemContext = React.createContext(void 0);
97
+ const Item = React.forwardRef(
98
+ ({ className, children, value, ...props }, forwardedRef) => {
99
+ const classes = clsx([components_radioCardGroup_radioCardGroupRoot.styles[`${components_radioCardGroup_radioCardGroupRoot.rootClassName}__card-item`]], className);
100
+ const context = React.useContext(ItemContext);
101
+ const ref = utils_composeRefs.useComposedRefs(forwardedRef, context == null ? void 0 : context.triggerRef);
102
+ const id = props.id || (context == null ? void 0 : context.id);
103
+ return /* @__PURE__ */ jsxRuntime.jsxs(RadioGroupPrimitive__namespace.Item, { value, id, ...props, asChild: false, ref, className: classes, children: [
104
+ props.imageUrl ? /* @__PURE__ */ jsxRuntime.jsx(components_flex_flex.Flex, { className: clsx([components_radioCardGroup_radioCardGroupRoot.styles[`${components_radioCardGroup_radioCardGroupRoot.rootClassName}__illustration`]], className), justify: "center", align: "center", children: /* @__PURE__ */ jsxRuntime.jsx("img", { src: props.imageUrl, alt: value }) }) : null,
105
+ /* @__PURE__ */ jsxRuntime.jsx(Content$1, { children })
106
+ ] });
107
+ }
108
+ );
109
+ Item.displayName = "Item";
110
+ components_radioCardGroup_radioCardGroupRoot.Root.displayName = "RadioCardGroup";
111
+ components_radioCardGroup_radioCardGroupLabel.GroupLabel.displayName = "RadioCardGroup.GroupLabel";
112
+ Item.displayName = "RadioCardGroup.Item";
113
+ Title$1.displayName = "RadioCardGroup.Title";
114
+ Body.displayName = "RadioCardGroup.Body";
115
+ const RadioCardGroup = Object.assign(components_radioCardGroup_radioCardGroupRoot.Root, {
116
+ GroupLabel: components_radioCardGroup_radioCardGroupLabel.GroupLabel,
117
+ Item,
118
+ Title: Title$1,
119
+ Body
120
+ });
121
+ const styles = {
122
+ "teddy-modal__overlay": "_teddy-modal__overlay_3n21u_25",
123
+ "teddy-modal__content": "_teddy-modal__content_3n21u_37",
124
+ "teddy-modal__scroll": "_teddy-modal__scroll_3n21u_55",
125
+ "teddy-modal__image": "_teddy-modal__image_3n21u_59",
126
+ "teddy-modal__close--floating": "_teddy-modal__close--floating_3n21u_69",
127
+ "teddy-modal__group": "_teddy-modal__group_3n21u_74",
128
+ "teddy-modal__group--title": "_teddy-modal__group--title_3n21u_78",
129
+ "teddy-modal__group--scroll": "_teddy-modal__group--scroll_3n21u_84",
130
+ "teddy-modal__group--action": "_teddy-modal__group--action_3n21u_93",
131
+ "modal-overlay-no-op": "_modal-overlay-no-op_3n21u_1",
132
+ "teddy-fade-in": "_teddy-fade-in_3n21u_1",
133
+ "teddy-fade-out": "_teddy-fade-out_3n21u_1",
134
+ "modal-content-show": "_modal-content-show_3n21u_1",
135
+ "modal-content-hide": "_modal-content-hide_3n21u_1",
136
+ "teddy-overlay-no-op": "_teddy-overlay-no-op_3n21u_1"
137
+ };
138
+ const rootClassName = "teddy-modal";
139
+ const RootContext = React.createContext({
140
+ imageRef: null,
141
+ actionGroupRef: null,
142
+ scrollRef: null
143
+ });
144
+ const Root = (props) => {
145
+ const imageRef = React.useRef(null);
146
+ const actionGroupRef = React.useRef(null);
147
+ const scrollRef = React.useRef(null);
148
+ return /* @__PURE__ */ jsxRuntime.jsx(RootContext.Provider, { value: { imageRef, actionGroupRef, scrollRef }, children: /* @__PURE__ */ jsxRuntime.jsx(DrawerPrimitive__namespace.Root, { ...props, modal: true }) });
149
+ };
150
+ Root.displayName = "Dialog.Root";
151
+ const Trigger = React.forwardRef(
152
+ ({ children, ...props }, forwardedRef) => /* @__PURE__ */ jsxRuntime.jsx(DrawerPrimitive__namespace.Trigger, { ...props, ref: forwardedRef, asChild: true, children })
153
+ );
154
+ Trigger.displayName = "Dialog.Trigger";
155
+ const OverlayContext = React.createContext(false);
156
+ const Overlay = React.forwardRef(
157
+ ({ className, forceMount, container, ...rest }, forwardedRef) => {
158
+ const classes = clsx([styles[`${rootClassName}__overlay`]], className);
159
+ return /* @__PURE__ */ jsxRuntime.jsx(OverlayContext.Provider, { value: true, children: /* @__PURE__ */ jsxRuntime.jsx(DrawerPrimitive__namespace.Portal, { container, forceMount, children: /* @__PURE__ */ jsxRuntime.jsx(DrawerPrimitive__namespace.Overlay, { className: classes, ref: forwardedRef, ...rest }) }) });
160
+ }
161
+ );
162
+ Overlay.displayName = "Dialog.Content";
163
+ const InnerContent = React.forwardRef(
164
+ function InnerContent2({ asChild, children, className, ...props }, forwardedRef) {
165
+ const classes = clsx([styles[`${rootClassName}__scroll`]], className);
166
+ const context = React.useContext(RootContext);
167
+ return /* @__PURE__ */ jsxRuntime.jsx(
168
+ DrawerPrimitive__namespace.Content,
169
+ {
170
+ ...props,
171
+ ref: forwardedRef,
172
+ className: clsx([styles[`${rootClassName}__content`]]),
173
+ asChild: true,
174
+ children: /* @__PURE__ */ jsxRuntime.jsx(components_flex_flex.Flex, { children: /* @__PURE__ */ jsxRuntime.jsx(
175
+ components_flex_flex.Flex,
176
+ {
177
+ ...asChild ? { as: void 0, asChild } : {},
178
+ direction: "column",
179
+ align: "start",
180
+ maxWidth: { md: "600px" },
181
+ className: classes,
182
+ ref: context.scrollRef,
183
+ children
184
+ }
185
+ ) })
186
+ }
187
+ );
188
+ }
189
+ );
190
+ const Content = React.forwardRef(
191
+ ({ forceMount, ...contentProps }, forwardedRef) => {
192
+ const hasOverlay = React.useContext(OverlayContext);
193
+ if (!hasOverlay)
194
+ return /* @__PURE__ */ jsxRuntime.jsx(Overlay, { forceMount, children: /* @__PURE__ */ jsxRuntime.jsx(InnerContent, { ref: forwardedRef, ...contentProps }) });
195
+ return /* @__PURE__ */ jsxRuntime.jsx(InnerContent, { ref: forwardedRef, ...contentProps });
196
+ }
197
+ );
198
+ Content.displayName = "Dialog.Content";
199
+ const GroupContext = React.createContext(false);
200
+ const Group = React.forwardRef(
201
+ ({ className, variant, ...props }, forwardedRef) => {
202
+ const strollerRef = React.useContext(RootContext).scrollRef;
203
+ const [isOverflowing, setIsOverflowing] = React.useState(false);
204
+ React.useEffect(() => {
205
+ if (strollerRef == null ? void 0 : strollerRef.current) {
206
+ const hasOverflow = strollerRef.current.scrollHeight > strollerRef.current.clientHeight;
207
+ setIsOverflowing(hasOverflow);
208
+ }
209
+ }, [strollerRef]);
210
+ const classes = clsx(
211
+ [styles[`${rootClassName}__group`]],
212
+ {
213
+ [styles[`${rootClassName}__group--action`]]: variant === "action",
214
+ [styles[`${rootClassName}__group--title`]]: variant === "title",
215
+ [styles[`${rootClassName}__group--scroll`]]: isOverflowing
216
+ },
217
+ className
218
+ );
219
+ return /* @__PURE__ */ jsxRuntime.jsx(GroupContext.Provider, { value: true, children: /* @__PURE__ */ jsxRuntime.jsx(
220
+ components_flex_flex.Flex,
221
+ {
222
+ ...variant === "action" ? {
223
+ gap: "200",
224
+ justify: { md: "end" },
225
+ align: { sm: "stretch", md: "end" },
226
+ direction: { sm: "column-reverse", md: "row" }
227
+ } : { direction: "column" },
228
+ ref: forwardedRef,
229
+ ...props,
230
+ className: classes
231
+ }
232
+ ) });
233
+ }
234
+ );
235
+ Group.displayName = "Dialog.Group";
236
+ const TitleInner = React.forwardRef(
237
+ function TitleInner2(props, forwardedRef) {
238
+ return /* @__PURE__ */ jsxRuntime.jsx(DrawerPrimitive__namespace.Title, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(components_heading_heading.Heading, { variant: "title-200", as: "h2", ...props, asChild: false, ref: forwardedRef }) });
239
+ }
240
+ );
241
+ const Title = React.forwardRef((props, forwardedRef) => {
242
+ const isInsideGroup = React.useContext(GroupContext);
243
+ if (!isInsideGroup) {
244
+ return /* @__PURE__ */ jsxRuntime.jsx(Group, { variant: "title", children: /* @__PURE__ */ jsxRuntime.jsx(TitleInner, { ...props, ref: forwardedRef }) });
245
+ }
246
+ return /* @__PURE__ */ jsxRuntime.jsx(TitleInner, { ...props, ref: forwardedRef });
247
+ });
248
+ Title.displayName = "Dialog.Title";
249
+ const Description = React.forwardRef((props, forwardedRef) => /* @__PURE__ */ jsxRuntime.jsx(DrawerPrimitive__namespace.Description, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(components_text_text.Text, { as: "p", variant: "paragraph-100", ...props, asChild: false, ref: forwardedRef }) }));
250
+ Description.displayName = "Dialog.Description";
251
+ const Image = React.forwardRef(({ asChild, ...props }, forwardedRef) => {
252
+ const classes = clsx([styles[`${rootClassName}__image`]], props.className);
253
+ const context = React.useContext(RootContext);
254
+ const Comp = asChild ? reactSlot.Slot : "img";
255
+ return /* @__PURE__ */ jsxRuntime.jsx(Comp, { ...props, className: classes, ref: utils_composeRefs.composeRefs(context.imageRef, forwardedRef) });
256
+ });
257
+ Image.displayName = "Dialog.Image";
258
+ const Close = React.forwardRef(
259
+ ({ className, ...props }, forwardedRef) => {
260
+ const classes = clsx([styles[`${rootClassName}__close`]], {
261
+ [styles[`${rootClassName}__close--floating`]]: props.slot === "floating",
262
+ className
263
+ });
264
+ const imageRef = React.useContext(RootContext).imageRef;
265
+ const [hasImage, setHasImage] = React.useState(false);
266
+ React.useEffect(() => {
267
+ if (imageRef == null ? void 0 : imageRef.current) {
268
+ setHasImage(true);
269
+ }
270
+ }, [imageRef]);
271
+ return /* @__PURE__ */ jsxRuntime.jsx(DrawerPrimitive__namespace.Close, { ...props, className: classes, ref: forwardedRef, asChild: true, children: props.children || /* @__PURE__ */ jsxRuntime.jsx(components_button_button.Button, { variant: hasImage ? "primary-negative" : "tertiary-purple", iconOnly: true, "aria-label": props["aria-label"], children: /* @__PURE__ */ jsxRuntime.jsx(components_icon_icon.Icon, { name: "close" }) }) });
272
+ }
273
+ );
274
+ Close.displayName = "Dialog.Close";
275
+ const Modal = Object.assign(Root, { Trigger, Content, Title, Overlay, Description, Close, Image, Group });
276
+ exports.Body = Body;
277
+ exports.Content = Content$1;
278
+ exports.Item = Item;
279
+ exports.ItemContext = ItemContext;
280
+ exports.Modal = Modal;
281
+ exports.RadioCardGroup = RadioCardGroup;
282
+ exports.Title = Title$1;
@@ -0,0 +1,8 @@
1
+ import { default as React } from 'react';
2
+
3
+ export type TitleProps = React.ComponentPropsWithoutRef<'h2'> & {
4
+ asChild?: boolean;
5
+ };
6
+ export declare const Title: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLHeadingElement>, HTMLHeadingElement>, "ref"> & {
7
+ asChild?: boolean | undefined;
8
+ } & React.RefAttributes<HTMLHeadingElement>>;
@@ -0,0 +1,264 @@
1
+ import { jsxs, jsx } from "react/jsx-runtime";
2
+ import React__default, { useEffect } from "react";
3
+ import * as DrawerPrimitive from "@radix-ui/react-dialog";
4
+ import "../breadcrumbs/index.js";
5
+ import { s as styles$1, rootClassName as rootClassName$1, Root as Root$1 } from "./radio-card-group-root.js";
6
+ import { GroupLabel } from "./radio-card-group-label.js";
7
+ import clsx from "clsx";
8
+ import { Slot } from "@radix-ui/react-slot";
9
+ import "../ribbon/index.js";
10
+ import "../expandable-card/index.js";
11
+ import "../color-dot/color-dot-root.js";
12
+ import "../progress-bar/progress-bar.js";
13
+ import "../notabene/index.js";
14
+ import "../tooltip/index.js";
15
+ import "../list/index.js";
16
+ import "../scroll-area/index.js";
17
+ import "../tabs/index.js";
18
+ import "../drawer/index.js";
19
+ import "../image/image.js";
20
+ import "../chip/index.js";
21
+ import "../../assets/sprite.269ba410-teddy.svg";
22
+ import { Icon } from "../icon/icon.js";
23
+ import "../notification/notification.js";
24
+ import "../radio-group/index.js";
25
+ import "../box/box.js";
26
+ import { Flex } from "../flex/flex.js";
27
+ import "../card/index.js";
28
+ import "../grid/grid.js";
29
+ import "../navigation-menu/navigation-menu.js";
30
+ import "../navigation-menu/global-navigation/global-navigation-my-pages.js";
31
+ import "../toggle/toggle.js";
32
+ import "../accordion/index.js";
33
+ import "../link/link.js";
34
+ import "../badge/badge.js";
35
+ import "../badge/alert-badge.js";
36
+ import "../badge/counter-badge.js";
37
+ import { Button } from "../button/button.js";
38
+ import "../field-error-text/field-error-text.js";
39
+ import "../helper-text/helper-text.js";
40
+ import "../input/index.js";
41
+ import "../label/label.js";
42
+ import "../spinner/spinner.js";
43
+ import { Text } from "../text/text.js";
44
+ import "../text-field/index.js";
45
+ import { Heading } from "../heading/heading.js";
46
+ import "../visually-hidden/visually-hidden.js";
47
+ import "../text-spacing/text-spacing.js";
48
+ import { useComposedRefs, composeRefs } from "../../utils/composeRefs.js";
49
+ import { Indicator } from "./radio-card-group-indicator.js";
50
+ import * as RadioGroupPrimitive from "@radix-ui/react-radio-group";
51
+ const Title$1 = React__default.forwardRef(
52
+ ({ className, children, asChild, ...props }, forwardRef) => {
53
+ const classes = clsx([styles$1[`${rootClassName$1}__title`]], className);
54
+ return /* @__PURE__ */ jsxs(Flex, { width: "100%", gap: "150", className: styles$1[`${rootClassName$1}__title-wrapper`], children: [
55
+ asChild ? /* @__PURE__ */ jsx(Slot, { ...props, ref: forwardRef, className: classes, children }) : /* @__PURE__ */ jsx(Text, { variant: "paragraph-100-bold", ref: forwardRef, className: classes, children }),
56
+ /* @__PURE__ */ jsx(Indicator, {})
57
+ ] });
58
+ }
59
+ );
60
+ Title$1.displayName = "Title";
61
+ const Body = React__default.forwardRef(
62
+ ({ className, children, asChild, ...props }, forwardRef) => {
63
+ const classes = clsx([styles$1[`${rootClassName$1}__body`]], className);
64
+ const Comp = asChild ? Slot : Text;
65
+ return /* @__PURE__ */ jsx(Comp, { ref: forwardRef, className: classes, ...props, children });
66
+ }
67
+ );
68
+ Body.displayName = "Body";
69
+ const Content$1 = React__default.forwardRef(
70
+ ({ className, children, ...props }, forwardRef) => {
71
+ const classes = clsx([styles$1[`${rootClassName$1}__content-wrapper`]], className);
72
+ return /* @__PURE__ */ jsx(Flex, { direction: "column", width: "100%", gap: "50", ...props, ref: forwardRef, className: classes, children });
73
+ }
74
+ );
75
+ Content$1.displayName = "Content";
76
+ const ItemContext = React__default.createContext(void 0);
77
+ const Item = React__default.forwardRef(
78
+ ({ className, children, value, ...props }, forwardedRef) => {
79
+ const classes = clsx([styles$1[`${rootClassName$1}__card-item`]], className);
80
+ const context = React__default.useContext(ItemContext);
81
+ const ref = useComposedRefs(forwardedRef, context == null ? void 0 : context.triggerRef);
82
+ const id = props.id || (context == null ? void 0 : context.id);
83
+ return /* @__PURE__ */ jsxs(RadioGroupPrimitive.Item, { value, id, ...props, asChild: false, ref, className: classes, children: [
84
+ props.imageUrl ? /* @__PURE__ */ jsx(Flex, { className: clsx([styles$1[`${rootClassName$1}__illustration`]], className), justify: "center", align: "center", children: /* @__PURE__ */ jsx("img", { src: props.imageUrl, alt: value }) }) : null,
85
+ /* @__PURE__ */ jsx(Content$1, { children })
86
+ ] });
87
+ }
88
+ );
89
+ Item.displayName = "Item";
90
+ Root$1.displayName = "RadioCardGroup";
91
+ GroupLabel.displayName = "RadioCardGroup.GroupLabel";
92
+ Item.displayName = "RadioCardGroup.Item";
93
+ Title$1.displayName = "RadioCardGroup.Title";
94
+ Body.displayName = "RadioCardGroup.Body";
95
+ const RadioCardGroup = Object.assign(Root$1, {
96
+ GroupLabel,
97
+ Item,
98
+ Title: Title$1,
99
+ Body
100
+ });
101
+ const styles = {
102
+ "teddy-modal__overlay": "_teddy-modal__overlay_3n21u_25",
103
+ "teddy-modal__content": "_teddy-modal__content_3n21u_37",
104
+ "teddy-modal__scroll": "_teddy-modal__scroll_3n21u_55",
105
+ "teddy-modal__image": "_teddy-modal__image_3n21u_59",
106
+ "teddy-modal__close--floating": "_teddy-modal__close--floating_3n21u_69",
107
+ "teddy-modal__group": "_teddy-modal__group_3n21u_74",
108
+ "teddy-modal__group--title": "_teddy-modal__group--title_3n21u_78",
109
+ "teddy-modal__group--scroll": "_teddy-modal__group--scroll_3n21u_84",
110
+ "teddy-modal__group--action": "_teddy-modal__group--action_3n21u_93",
111
+ "modal-overlay-no-op": "_modal-overlay-no-op_3n21u_1",
112
+ "teddy-fade-in": "_teddy-fade-in_3n21u_1",
113
+ "teddy-fade-out": "_teddy-fade-out_3n21u_1",
114
+ "modal-content-show": "_modal-content-show_3n21u_1",
115
+ "modal-content-hide": "_modal-content-hide_3n21u_1",
116
+ "teddy-overlay-no-op": "_teddy-overlay-no-op_3n21u_1"
117
+ };
118
+ const rootClassName = "teddy-modal";
119
+ const RootContext = React__default.createContext({
120
+ imageRef: null,
121
+ actionGroupRef: null,
122
+ scrollRef: null
123
+ });
124
+ const Root = (props) => {
125
+ const imageRef = React__default.useRef(null);
126
+ const actionGroupRef = React__default.useRef(null);
127
+ const scrollRef = React__default.useRef(null);
128
+ return /* @__PURE__ */ jsx(RootContext.Provider, { value: { imageRef, actionGroupRef, scrollRef }, children: /* @__PURE__ */ jsx(DrawerPrimitive.Root, { ...props, modal: true }) });
129
+ };
130
+ Root.displayName = "Dialog.Root";
131
+ const Trigger = React__default.forwardRef(
132
+ ({ children, ...props }, forwardedRef) => /* @__PURE__ */ jsx(DrawerPrimitive.Trigger, { ...props, ref: forwardedRef, asChild: true, children })
133
+ );
134
+ Trigger.displayName = "Dialog.Trigger";
135
+ const OverlayContext = React__default.createContext(false);
136
+ const Overlay = React__default.forwardRef(
137
+ ({ className, forceMount, container, ...rest }, forwardedRef) => {
138
+ const classes = clsx([styles[`${rootClassName}__overlay`]], className);
139
+ return /* @__PURE__ */ jsx(OverlayContext.Provider, { value: true, children: /* @__PURE__ */ jsx(DrawerPrimitive.Portal, { container, forceMount, children: /* @__PURE__ */ jsx(DrawerPrimitive.Overlay, { className: classes, ref: forwardedRef, ...rest }) }) });
140
+ }
141
+ );
142
+ Overlay.displayName = "Dialog.Content";
143
+ const InnerContent = React__default.forwardRef(
144
+ function InnerContent2({ asChild, children, className, ...props }, forwardedRef) {
145
+ const classes = clsx([styles[`${rootClassName}__scroll`]], className);
146
+ const context = React__default.useContext(RootContext);
147
+ return /* @__PURE__ */ jsx(
148
+ DrawerPrimitive.Content,
149
+ {
150
+ ...props,
151
+ ref: forwardedRef,
152
+ className: clsx([styles[`${rootClassName}__content`]]),
153
+ asChild: true,
154
+ children: /* @__PURE__ */ jsx(Flex, { children: /* @__PURE__ */ jsx(
155
+ Flex,
156
+ {
157
+ ...asChild ? { as: void 0, asChild } : {},
158
+ direction: "column",
159
+ align: "start",
160
+ maxWidth: { md: "600px" },
161
+ className: classes,
162
+ ref: context.scrollRef,
163
+ children
164
+ }
165
+ ) })
166
+ }
167
+ );
168
+ }
169
+ );
170
+ const Content = React__default.forwardRef(
171
+ ({ forceMount, ...contentProps }, forwardedRef) => {
172
+ const hasOverlay = React__default.useContext(OverlayContext);
173
+ if (!hasOverlay)
174
+ return /* @__PURE__ */ jsx(Overlay, { forceMount, children: /* @__PURE__ */ jsx(InnerContent, { ref: forwardedRef, ...contentProps }) });
175
+ return /* @__PURE__ */ jsx(InnerContent, { ref: forwardedRef, ...contentProps });
176
+ }
177
+ );
178
+ Content.displayName = "Dialog.Content";
179
+ const GroupContext = React__default.createContext(false);
180
+ const Group = React__default.forwardRef(
181
+ ({ className, variant, ...props }, forwardedRef) => {
182
+ const strollerRef = React__default.useContext(RootContext).scrollRef;
183
+ const [isOverflowing, setIsOverflowing] = React__default.useState(false);
184
+ useEffect(() => {
185
+ if (strollerRef == null ? void 0 : strollerRef.current) {
186
+ const hasOverflow = strollerRef.current.scrollHeight > strollerRef.current.clientHeight;
187
+ setIsOverflowing(hasOverflow);
188
+ }
189
+ }, [strollerRef]);
190
+ const classes = clsx(
191
+ [styles[`${rootClassName}__group`]],
192
+ {
193
+ [styles[`${rootClassName}__group--action`]]: variant === "action",
194
+ [styles[`${rootClassName}__group--title`]]: variant === "title",
195
+ [styles[`${rootClassName}__group--scroll`]]: isOverflowing
196
+ },
197
+ className
198
+ );
199
+ return /* @__PURE__ */ jsx(GroupContext.Provider, { value: true, children: /* @__PURE__ */ jsx(
200
+ Flex,
201
+ {
202
+ ...variant === "action" ? {
203
+ gap: "200",
204
+ justify: { md: "end" },
205
+ align: { sm: "stretch", md: "end" },
206
+ direction: { sm: "column-reverse", md: "row" }
207
+ } : { direction: "column" },
208
+ ref: forwardedRef,
209
+ ...props,
210
+ className: classes
211
+ }
212
+ ) });
213
+ }
214
+ );
215
+ Group.displayName = "Dialog.Group";
216
+ const TitleInner = React__default.forwardRef(
217
+ function TitleInner2(props, forwardedRef) {
218
+ return /* @__PURE__ */ jsx(DrawerPrimitive.Title, { asChild: true, children: /* @__PURE__ */ jsx(Heading, { variant: "title-200", as: "h2", ...props, asChild: false, ref: forwardedRef }) });
219
+ }
220
+ );
221
+ const Title = React__default.forwardRef((props, forwardedRef) => {
222
+ const isInsideGroup = React__default.useContext(GroupContext);
223
+ if (!isInsideGroup) {
224
+ return /* @__PURE__ */ jsx(Group, { variant: "title", children: /* @__PURE__ */ jsx(TitleInner, { ...props, ref: forwardedRef }) });
225
+ }
226
+ return /* @__PURE__ */ jsx(TitleInner, { ...props, ref: forwardedRef });
227
+ });
228
+ Title.displayName = "Dialog.Title";
229
+ const Description = React__default.forwardRef((props, forwardedRef) => /* @__PURE__ */ jsx(DrawerPrimitive.Description, { asChild: true, children: /* @__PURE__ */ jsx(Text, { as: "p", variant: "paragraph-100", ...props, asChild: false, ref: forwardedRef }) }));
230
+ Description.displayName = "Dialog.Description";
231
+ const Image = React__default.forwardRef(({ asChild, ...props }, forwardedRef) => {
232
+ const classes = clsx([styles[`${rootClassName}__image`]], props.className);
233
+ const context = React__default.useContext(RootContext);
234
+ const Comp = asChild ? Slot : "img";
235
+ return /* @__PURE__ */ jsx(Comp, { ...props, className: classes, ref: composeRefs(context.imageRef, forwardedRef) });
236
+ });
237
+ Image.displayName = "Dialog.Image";
238
+ const Close = React__default.forwardRef(
239
+ ({ className, ...props }, forwardedRef) => {
240
+ const classes = clsx([styles[`${rootClassName}__close`]], {
241
+ [styles[`${rootClassName}__close--floating`]]: props.slot === "floating",
242
+ className
243
+ });
244
+ const imageRef = React__default.useContext(RootContext).imageRef;
245
+ const [hasImage, setHasImage] = React__default.useState(false);
246
+ useEffect(() => {
247
+ if (imageRef == null ? void 0 : imageRef.current) {
248
+ setHasImage(true);
249
+ }
250
+ }, [imageRef]);
251
+ return /* @__PURE__ */ jsx(DrawerPrimitive.Close, { ...props, className: classes, ref: forwardedRef, asChild: true, children: props.children || /* @__PURE__ */ jsx(Button, { variant: hasImage ? "primary-negative" : "tertiary-purple", iconOnly: true, "aria-label": props["aria-label"], children: /* @__PURE__ */ jsx(Icon, { name: "close" }) }) });
252
+ }
253
+ );
254
+ Close.displayName = "Dialog.Close";
255
+ const Modal = Object.assign(Root, { Trigger, Content, Title, Overlay, Description, Close, Image, Group });
256
+ export {
257
+ Body as B,
258
+ Content$1 as C,
259
+ ItemContext as I,
260
+ Modal as M,
261
+ RadioCardGroup as R,
262
+ Title$1 as Title,
263
+ Item as a
264
+ };
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ require("react/jsx-runtime");
4
+ require("clsx");
5
+ require("react");
6
+ require("./radio-card-group-root.cjs");
7
+ require("@radix-ui/react-radio-group");
8
+ require("../breadcrumbs/index.cjs");
9
+ const components_radioCardGroup_radioCardGroupItemTitle = require("./radio-card-group-item-title.cjs");
10
+ require("../ribbon/index.cjs");
11
+ require("../expandable-card/index.cjs");
12
+ require("../color-dot/color-dot-root.cjs");
13
+ require("../progress-bar/progress-bar.cjs");
14
+ require("../notabene/index.cjs");
15
+ require("../tooltip/index.cjs");
16
+ require("../list/index.cjs");
17
+ require("../scroll-area/index.cjs");
18
+ require("../tabs/index.cjs");
19
+ require("../drawer/index.cjs");
20
+ require("../image/image.cjs");
21
+ require("../chip/index.cjs");
22
+ require("../../assets/sprite.269ba410-teddy.svg");
23
+ require("../notification/notification.cjs");
24
+ require("../radio-group/index.cjs");
25
+ require("../box/box.cjs");
26
+ require("../flex/flex.cjs");
27
+ require("../card/index.cjs");
28
+ require("../grid/grid.cjs");
29
+ require("../navigation-menu/navigation-menu.cjs");
30
+ require("../navigation-menu/global-navigation/global-navigation-my-pages.cjs");
31
+ require("../toggle/toggle.cjs");
32
+ require("../accordion/index.cjs");
33
+ require("../link/link.cjs");
34
+ require("../badge/badge.cjs");
35
+ require("../badge/alert-badge.cjs");
36
+ require("../badge/counter-badge.cjs");
37
+ require("../button/button.cjs");
38
+ require("../field-error-text/field-error-text.cjs");
39
+ require("../helper-text/helper-text.cjs");
40
+ require("../input/index.cjs");
41
+ require("../label/label.cjs");
42
+ require("../spinner/spinner.cjs");
43
+ require("../text/text.cjs");
44
+ require("../text-field/index.cjs");
45
+ require("../heading/heading.cjs");
46
+ require("../visually-hidden/visually-hidden.cjs");
47
+ require("../text-spacing/text-spacing.cjs");
48
+ require("../../utils/composeRefs.cjs");
49
+ exports.Item = components_radioCardGroup_radioCardGroupItemTitle.Item;
50
+ exports.ItemContext = components_radioCardGroup_radioCardGroupItemTitle.ItemContext;
@@ -0,0 +1,17 @@
1
+ import { default as React } from 'react';
2
+
3
+ import * as RadioGroupPrimitive from '@radix-ui/react-radio-group';
4
+ export type ItemProps = React.ComponentPropsWithoutRef<typeof RadioGroupPrimitive.Item> & {
5
+ value: string;
6
+ children: React.ReactNode;
7
+ imageUrl?: string;
8
+ };
9
+ export declare const ItemContext: React.Context<{
10
+ triggerRef: React.RefObject<HTMLButtonElement>;
11
+ id?: string | undefined;
12
+ } | undefined>;
13
+ export declare const Item: React.ForwardRefExoticComponent<Omit<RadioGroupPrimitive.RadioGroupItemProps & React.RefAttributes<HTMLButtonElement>, "ref"> & {
14
+ value: string;
15
+ children: React.ReactNode;
16
+ imageUrl?: string | undefined;
17
+ } & React.RefAttributes<HTMLButtonElement>>;