@entur/layout 3.1.9-beta.9 → 3.1.9

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.
package/dist/index.d.ts CHANGED
@@ -1,11 +1,310 @@
1
- import './styles.scss';
2
- import './index.scss';
3
- export * from './Contrast';
4
- export * from './NavigationCard';
5
- export * from './BaseCard';
6
- export * from './MediaCard';
7
- export * from './Badge/Badge';
8
- export * from './Badge/BulletBadge';
9
- export * from './Badge/NotificationBadge';
10
- export * from './Badge/StatusBadge';
11
- export * from './Tag';
1
+ import { CSSProperties } from 'react';
2
+ import { default as default_2 } from 'react';
3
+
4
+ declare type AsProp<C extends default_2.ElementType> = {
5
+ /**
6
+ * An override of the default HTML tag.
7
+ * Can also be another React component.
8
+ */
9
+ as?: C;
10
+ };
11
+
12
+ export declare const Badge: BadgeComponent;
13
+
14
+ export declare type BadgeComponent = <T extends default_2.ElementType = typeof defaultElement_5>(props: BadgeProps<T>) => default_2.ReactElement | null;
15
+
16
+ export declare type BadgeOwnProps = {
17
+ /** Elementet som wrapper badgen
18
+ * @default "span"
19
+ */
20
+ as?: 'span' | default_2.ElementType;
21
+ /** Ekstra klassenavn */
22
+ className?: string;
23
+ /** Elementet som badge vil legges relativt til */
24
+ children: default_2.ReactNode;
25
+ /** Hvilken type badge man vil ha */
26
+ variant: 'primary' | 'neutral' | VariantType | typeof danger | typeof info;
27
+ /** Om 0 skal vises
28
+ * @default false
29
+ */
30
+ showZero?: boolean;
31
+ /** Hva som er høyeste tallet før det legges på "+"
32
+ * @default ++
33
+ */
34
+ max?: number;
35
+ type?: BadgeTypes;
36
+ /** @deprecated Bruk `hide` i stedet */
37
+ invisible?: boolean;
38
+ /** Skjul badge */
39
+ hide?: boolean;
40
+ };
41
+
42
+ export declare type BadgeProps<T extends default_2.ElementType> = PolymorphicComponentPropsWithRef<T, BadgeOwnProps>;
43
+
44
+ export declare type BadgeTypes = 'status' | 'bullet' | 'notification';
45
+
46
+ export declare const BaseCard: <E extends default_2.ElementType = "div">({ children, className, as, ...rest }: BaseCardProps<E>) => JSX.Element;
47
+
48
+ export declare type BaseCardOwnProps = {
49
+ /** HTML-elementet eller React-komponenten som lager Card
50
+ * @default "div"
51
+ */
52
+ as?: 'div' | default_2.ElementType;
53
+ /** Ekstra klassenavn */
54
+ className?: string;
55
+ children?: default_2.ReactNode;
56
+ };
57
+
58
+ export declare type BaseCardProps<T extends default_2.ElementType = typeof defaultElement_3> = PolymorphicComponentProps<T, BaseCardOwnProps>;
59
+
60
+ export declare const BulletBadge: BulletBadgeComponent;
61
+
62
+ declare type BulletBadgeBaseProps = {
63
+ /** Elementet som wrapper badgen
64
+ * @default "span"
65
+ */
66
+ as?: string | default_2.ElementType;
67
+ /** Ekstra klassenavn */
68
+ className?: string;
69
+ /** Elementet som badge vil legges relativt til */
70
+ children: default_2.ReactNode;
71
+ /** Hvilken type badge man vil ha */
72
+ variant: 'primary' | 'neutral' | VariantType | typeof danger_2 | typeof info_2;
73
+ /** Skjul badge */
74
+ hide?: boolean;
75
+ };
76
+
77
+ export declare type BulletBadgeComponent = <T extends default_2.ElementType = typeof defaultElement_6>(props: BulletBadgeProps<T>) => default_2.ReactElement | null;
78
+
79
+ export declare type BulletBadgeProps<T extends default_2.ElementType> = PolymorphicComponentPropsWithRef<T, BulletBadgeBaseProps>;
80
+
81
+ export declare const Contrast: ContrastComponent;
82
+
83
+ export declare type ContrastBaseProps = {
84
+ /** Ekstra klassenavn */
85
+ className?: string;
86
+ };
87
+
88
+ export declare type ContrastComponent = <T extends default_2.ElementType = typeof defaultElement>(props: ContrastProps<T>) => default_2.ReactElement | null;
89
+
90
+ export declare const ContrastContext: default_2.Context<boolean>;
91
+
92
+ export declare type ContrastProps<T extends default_2.ElementType> = PolymorphicComponentPropsWithRef<T, ContrastBaseProps>;
93
+
94
+ /** @deprecated use variant="negative" instead */
95
+ declare const danger = "danger";
96
+
97
+ /** @deprecated use variant="negative" instead */
98
+ declare const danger_2 = "danger";
99
+
100
+ /** @deprecated use variant="negative" instead */
101
+ declare const danger_3 = "danger";
102
+
103
+ /** @deprecated use variant="negative" instead */
104
+ declare const danger_4 = "danger";
105
+
106
+ declare const defaultElement = "div";
107
+
108
+ declare const defaultElement_2 = "a";
109
+
110
+ declare const defaultElement_3 = "div";
111
+
112
+ declare const defaultElement_4 = "a";
113
+
114
+ declare const defaultElement_5 = "span";
115
+
116
+ declare const defaultElement_6 = "span";
117
+
118
+ declare const defaultElement_7 = "span";
119
+
120
+ declare const defaultElement_8 = "span";
121
+
122
+ declare const defaultElement_9 = "div";
123
+
124
+ /**
125
+ * Allows for extending a set of props (`ExtendedProps`) by an overriding set of props
126
+ * (`OverrideProps`), ensuring that any duplicates are overridden by the overriding
127
+ * set of props.
128
+ */
129
+ declare type ExtendableProps<ExtendedProps = Record<string, unknown>, OverrideProps = Record<string, unknown>> = OverrideProps & Omit<ExtendedProps, keyof OverrideProps>;
130
+
131
+ /** @deprecated use variant="information" instead */
132
+ declare const info = "info";
133
+
134
+ /** @deprecated use variant="information" instead */
135
+ declare const info_2 = "info";
136
+
137
+ /** @deprecated use variant="information" instead */
138
+ declare const info_3 = "info";
139
+
140
+ /** @deprecated use variant="information" instead */
141
+ declare const info_4 = "info";
142
+
143
+ /**
144
+ * Allows for inheriting the props from the specified element type so that
145
+ * props like children, className & style work, as well as element-specific
146
+ * attributes like aria roles. The component (`C`) must be passed in.
147
+ */
148
+ declare type InheritableElementProps<C extends default_2.ElementType, Props = Record<string, unknown>> = ExtendableProps<PropsOf<C>, Props>;
149
+
150
+ export declare const MediaCard: <E extends default_2.ElementType = "a">({ title, description, children, className, category, style, as, headingLevel, wholeCardAsElement: whole, hideArrow, wrapperProps, orientation, ...rest }: MediaCardProps<E>) => JSX.Element;
151
+
152
+ export declare type MediaCardOwnProps = {
153
+ /** HTML-elementet eller React-komponenten som lager bunnen (under media) av MediaCard
154
+ * @default 'a'
155
+ */
156
+ as?: 'a' | 'button' | default_2.ElementType;
157
+ /** Tittelen/teksten som står i CardBox */
158
+ title: string;
159
+ /** Teksten under tittelen i MediaCard */
160
+ description?: default_2.ReactNode;
161
+ /** Kategori (eller lignende) som vises over tittelen */
162
+ category?: string;
163
+ /** Ekstra klassenavn */
164
+ className?: string;
165
+ /** Det du skulle ønske som media (f.eks. bilder eller video) */
166
+ children?: default_2.ReactNode;
167
+ /** Styling som sendes til komponenten */
168
+ style?: CSSProperties;
169
+ /** Hvilken heading som brukes for tittelen.
170
+ * Blir kun satt hvis description også er satt.
171
+ * @default 'h2'
172
+ */
173
+ headingLevel?: 'h2' | 'h3' | 'h4' | 'h5' | 'h6';
174
+ /** Skjul pil-ikonet nederst til høyre
175
+ * @default false
176
+ */
177
+ hideArrow?: boolean;
178
+ /** Om MediaCard skal vises horisontalt eller vertikalt
179
+ * @default 'vertical'
180
+ */
181
+ orientation?: 'horizontal' | 'vertical';
182
+ /** Props som sendes til wrapper-elementet i stedet for lenke-elementet */
183
+ wrapperProps?: default_2.HTMLAttributes<HTMLElement>;
184
+ /** @deprecated Denne prop-en har ikke lenger en funksjon.
185
+ * Hvis du trenger å legge til props på wrapper-elementet, bruk 'wrapperProps'-prop-en
186
+ */
187
+ wholeCardAsElement?: boolean;
188
+ };
189
+
190
+ export declare type MediaCardProps<T extends default_2.ElementType = typeof defaultElement_4> = PolymorphicComponentProps<T, MediaCardOwnProps>;
191
+
192
+ export declare const NavigationCard: <E extends default_2.ElementType = "a">({ title, children, titleIcon, compact, className, as, ...rest }: NavigationCardProps<E>) => JSX.Element;
193
+
194
+ export declare type NavigationCardOwnProps = {
195
+ /** HTML-elementet eller React-komponenten som lager NavigationCard
196
+ * @default 'a'
197
+ */
198
+ as?: 'a' | 'button' | default_2.ElementType;
199
+ /** Tittelen/teksten som står i CardBox */
200
+ title: string;
201
+ /** Valgfritt ikon som står over tittelen */
202
+ titleIcon?: default_2.ReactNode;
203
+ /** Ekstra klassenavn */
204
+ className?: string;
205
+ /** Lager en mer kompakt NavigationCard, uten ikon og beskrivende tekst
206
+ * @default false
207
+ */
208
+ compact?: boolean;
209
+ /** Beskrivelse under tittel, om ikke "compact" er valgt */
210
+ children?: default_2.ReactNode;
211
+ /** @deprecated eksternlenke ikon er ikke lenger støttet i NavigationCard */
212
+ externalLink?: boolean;
213
+ };
214
+
215
+ export declare type NavigationCardProps<T extends default_2.ElementType = typeof defaultElement_2> = PolymorphicComponentProps<T, NavigationCardOwnProps>;
216
+
217
+ export declare const NotificationBadge: NotificationBadgeComponent;
218
+
219
+ declare type NotificationBadgeBaseProps = {
220
+ /** Elementet som wrapper badgen
221
+ * @default "span"
222
+ */
223
+ as?: string | default_2.ElementType;
224
+ /** Ekstra klassenavn */
225
+ className?: string;
226
+ /** Elementet som badge vil legges relativt til */
227
+ children: default_2.ReactNode;
228
+ /** Hvilken type badge man vil ha */
229
+ variant: 'primary' | 'neutral' | VariantType | typeof danger_3 | typeof info_3;
230
+ /** Om 0 skal vises
231
+ * @default false
232
+ */
233
+ showZero?: boolean;
234
+ /** Hva som er høyeste tallet før det legges på "+"
235
+ * @default ++
236
+ */
237
+ max?: number;
238
+ /** Skjul badge */
239
+ hide?: boolean;
240
+ };
241
+
242
+ export declare type NotificationBadgeComponent = <T extends default_2.ElementType = typeof defaultElement_7>(props: NotificationBadgeProps<T>) => default_2.ReactElement | null;
243
+
244
+ export declare type NotificationBadgeProps<T extends default_2.ElementType> = PolymorphicComponentPropsWithRef<T, NotificationBadgeBaseProps>;
245
+
246
+ /**
247
+ * A more sophisticated version of `InheritableElementProps` where
248
+ * the passed in `as` prop will determine which props can be included
249
+ */
250
+ declare type PolymorphicComponentProps<C extends default_2.ElementType, Props = Record<string, unknown>> = InheritableElementProps<C, Props & AsProp<C>>;
251
+
252
+ /**
253
+ * A wrapper of `PolymorphicComponentProps` that also includes the `ref`
254
+ * prop for the polymorphic component
255
+ */
256
+ declare type PolymorphicComponentPropsWithRef<C extends default_2.ElementType, Props = Record<string, unknown>> = PolymorphicComponentProps<C, Props> & {
257
+ ref?: PolymorphicRef<C>;
258
+ };
259
+
260
+ /**
261
+ * Utility type to extract the `ref` prop from a polymorphic component
262
+ */
263
+ declare type PolymorphicRef<C extends default_2.ElementType> = default_2.ComponentPropsWithRef<C>['ref'];
264
+
265
+ declare type PropsOf<C extends keyof JSX.IntrinsicElements | default_2.JSXElementConstructor<any>> = JSX.LibraryManagedAttributes<C, default_2.ComponentPropsWithoutRef<C>>;
266
+
267
+ export declare const StatusBadge: StatusBadgeComponent;
268
+
269
+ declare type StatusBadgeBaseProps = {
270
+ /** Elementet som wrapper badgen
271
+ * @default "span"
272
+ */
273
+ as?: string | default_2.ElementType;
274
+ /** Ekstra klassenavn */
275
+ className?: string;
276
+ /** Elementet som badge vil legges relativt til */
277
+ children: default_2.ReactNode;
278
+ /** Hvilken type badge man vil ha */
279
+ variant: 'primary' | 'neutral' | VariantType | typeof danger_4 | typeof info_4;
280
+ /** Skjul badge */
281
+ hide?: boolean;
282
+ };
283
+
284
+ export declare type StatusBadgeComponent = <T extends default_2.ElementType = typeof defaultElement_8>(props: StatusBadgeProps<T>) => default_2.ReactElement | null;
285
+
286
+ export declare type StatusBadgeProps<T extends default_2.ElementType> = PolymorphicComponentPropsWithRef<T, StatusBadgeBaseProps>;
287
+
288
+ export declare const Tag: <E extends default_2.ElementType = "div">({ className, children, compact, as, ...rest }: TagProps<E>) => JSX.Element;
289
+
290
+ export declare type TagOwnProps = {
291
+ /** HTML-elementet eller React-komponenten som rendres
292
+ * @default 'div'
293
+ */
294
+ as?: string | default_2.ElementType;
295
+ /** Ekstra klassenavn */
296
+ className?: string;
297
+ /**Mindre og mer kompakt Tag, til f.eks. tabellbruk
298
+ * @default false
299
+ */
300
+ compact?: boolean;
301
+ children: default_2.ReactNode;
302
+ };
303
+
304
+ export declare type TagProps<T extends default_2.ElementType = typeof defaultElement_9> = PolymorphicComponentProps<T, TagOwnProps>;
305
+
306
+ export declare const useContrast: () => boolean;
307
+
308
+ declare type VariantType = 'success' | 'negative' | 'warning' | 'information';
309
+
310
+ export { }
@@ -0,0 +1,213 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const utils = require("@entur/utils");
4
+ const jsxRuntime = require("react/jsx-runtime");
5
+ const React = require("react");
6
+ const classNames = require("classnames");
7
+ const typography = require("@entur/typography");
8
+ const icons = require("@entur/icons");
9
+ const defaultElement$8 = "div";
10
+ const Contrast = React.forwardRef(function Contrast2({ className, as, ...rest }, ref) {
11
+ const Element = as || defaultElement$8;
12
+ return /* @__PURE__ */ jsxRuntime.jsx(ContrastContext.Provider, { value: true, children: /* @__PURE__ */ jsxRuntime.jsx(
13
+ Element,
14
+ {
15
+ className: classNames("eds-contrast", className),
16
+ ref,
17
+ ...rest
18
+ }
19
+ ) });
20
+ });
21
+ const ContrastContext = React.createContext(false);
22
+ const useContrast = () => React.useContext(ContrastContext);
23
+ const defaultElement$7 = "div";
24
+ const BaseCard = ({
25
+ children,
26
+ className,
27
+ as,
28
+ ...rest
29
+ }) => {
30
+ const Element = as || defaultElement$7;
31
+ const classList = classNames("eds-base-card", className);
32
+ return /* @__PURE__ */ jsxRuntime.jsx(Element, { className: classList, ...rest, children });
33
+ };
34
+ const defaultElement$6 = "a";
35
+ const NavigationCard = ({
36
+ title,
37
+ children,
38
+ titleIcon,
39
+ compact = false,
40
+ className,
41
+ as,
42
+ ...rest
43
+ }) => {
44
+ const Element = as || defaultElement$6;
45
+ const classList = classNames("eds-navigation-card", className, {
46
+ "eds-base-card--red-line": compact,
47
+ "eds-navigation-card--compact": compact
48
+ });
49
+ return /* @__PURE__ */ jsxRuntime.jsxs(BaseCard, { as: Element, className: classList, ...rest, children: [
50
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "eds-navigation-card-header", children: [
51
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "eds-navigation-card-header__content", children: [
52
+ titleIcon && /* @__PURE__ */ jsxRuntime.jsx(
53
+ "div",
54
+ {
55
+ className: "eds-navigation-card-header__title-icon",
56
+ "aria-hidden": "true",
57
+ children: titleIcon
58
+ }
59
+ ),
60
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "eds-navigation-card-header__title", children: /* @__PURE__ */ jsxRuntime.jsx(typography.Heading3, { as: "span", children: title }) })
61
+ ] }),
62
+ !compact && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "eds-navigation-card-header__highlight" })
63
+ ] }),
64
+ !compact && /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: /* @__PURE__ */ jsxRuntime.jsx(typography.Paragraph, { children }) })
65
+ ] });
66
+ };
67
+ const defaultElement$5 = "a";
68
+ const MediaCard = ({
69
+ title,
70
+ description,
71
+ children,
72
+ className,
73
+ category,
74
+ style,
75
+ as,
76
+ headingLevel = "h2",
77
+ wholeCardAsElement: whole,
78
+ hideArrow,
79
+ wrapperProps,
80
+ orientation,
81
+ ...rest
82
+ }) => {
83
+ const Element = as || defaultElement$5;
84
+ const Heading = typography.Heading3;
85
+ const _wrapperProps = whole ? { ...wrapperProps, ...rest } : { ...wrapperProps };
86
+ const classList = classNames("eds-base-card, eds-media-card", className, {
87
+ "eds-media-card--horizontal": orientation === "horizontal"
88
+ });
89
+ return /* @__PURE__ */ jsxRuntime.jsxs(BaseCard, { className: classList, style, ..._wrapperProps, children: [
90
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "eds-media-card__media", children }),
91
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "eds-media-card__text", children: [
92
+ category && /* @__PURE__ */ jsxRuntime.jsx(typography.Label, { className: "eds-media-card__text__category", children: category }),
93
+ /* @__PURE__ */ jsxRuntime.jsx(
94
+ utils.ConditionalWrapper,
95
+ {
96
+ condition: description !== void 0,
97
+ wrapper: (children2) => /* @__PURE__ */ jsxRuntime.jsx(Heading, { as: headingLevel, className: "eds-media-card__text__title", children: children2 }),
98
+ children: /* @__PURE__ */ jsxRuntime.jsx(
99
+ Element,
100
+ {
101
+ tabIndex: 0,
102
+ className: "eds-media-card__text__title-link",
103
+ ...rest,
104
+ children: title
105
+ }
106
+ )
107
+ }
108
+ ),
109
+ description !== void 0 && /* @__PURE__ */ jsxRuntime.jsx(typography.Paragraph, { children: description }),
110
+ !hideArrow && /* @__PURE__ */ jsxRuntime.jsx(
111
+ icons.ForwardIcon,
112
+ {
113
+ className: "eds-media-card__arrow-icon",
114
+ "aria-hidden": "true"
115
+ }
116
+ )
117
+ ] })
118
+ ] });
119
+ };
120
+ const defaultElement$4 = "span";
121
+ const Badge = React.forwardRef(
122
+ ({
123
+ children,
124
+ className,
125
+ max = 99,
126
+ variant,
127
+ showZero = false,
128
+ invisible: invisibleProp = false,
129
+ hide: hideProp = false,
130
+ as,
131
+ type = "status",
132
+ ...rest
133
+ }, ref) => {
134
+ const Element = as || defaultElement$4;
135
+ const computedHide = hideProp || invisibleProp || children === 0 && !showZero || children == null;
136
+ let displayValue;
137
+ if (typeof children === "number") {
138
+ displayValue = children > max ? `${max}+` : children;
139
+ } else {
140
+ displayValue = children;
141
+ }
142
+ const classList = classNames(
143
+ className,
144
+ "eds-badge",
145
+ {
146
+ "eds-badge--hide": computedHide,
147
+ "eds-badge--show-zero": showZero
148
+ },
149
+ `eds-badge--variant-${variant}`,
150
+ `eds-badge--type-${type}`
151
+ );
152
+ return /* @__PURE__ */ jsxRuntime.jsx(Element, { className: classList, ref, ...rest, children: displayValue });
153
+ }
154
+ );
155
+ const defaultElement$3 = "span";
156
+ const BulletBadge = React.forwardRef(
157
+ (props, ref) => {
158
+ const Element = props.as || defaultElement$3;
159
+ return /* @__PURE__ */ jsxRuntime.jsx(Badge, { as: Element, ...props, ref, type: "bullet" });
160
+ }
161
+ );
162
+ const defaultElement$2 = "span";
163
+ const NotificationBadge = React.forwardRef(
164
+ (props, ref) => {
165
+ const Element = props.as || defaultElement$2;
166
+ return /* @__PURE__ */ jsxRuntime.jsx(Badge, { as: Element, ...props, ref, type: "notification" });
167
+ }
168
+ );
169
+ const defaultElement$1 = "span";
170
+ const StatusBadge = React.forwardRef(
171
+ (props, ref) => {
172
+ const Element = props.as || defaultElement$1;
173
+ return /* @__PURE__ */ jsxRuntime.jsx(Badge, { as: Element, ...props, ref, type: "status" });
174
+ }
175
+ );
176
+ const defaultElement = "div";
177
+ const Tag = ({
178
+ className,
179
+ children,
180
+ compact,
181
+ as,
182
+ ...rest
183
+ }) => {
184
+ const Element = as || defaultElement;
185
+ const childrenArray = React.Children.toArray(children);
186
+ const hasLeadingIcon = childrenArray.length > 1 && typeof childrenArray[0] !== "string";
187
+ const hasTrailingIcon = childrenArray.length > 1 && typeof childrenArray[childrenArray.length - 1] !== "string";
188
+ return /* @__PURE__ */ jsxRuntime.jsx(
189
+ Element,
190
+ {
191
+ className: classNames("eds-tag", className, {
192
+ "eds-tag--leading-icon": hasLeadingIcon,
193
+ "eds-tag--trailing-icon": hasTrailingIcon,
194
+ "eds-tag--compact": compact
195
+ }),
196
+ ...rest,
197
+ children
198
+ }
199
+ );
200
+ };
201
+ utils.warnAboutMissingStyles("layout", "typography");
202
+ exports.Badge = Badge;
203
+ exports.BaseCard = BaseCard;
204
+ exports.BulletBadge = BulletBadge;
205
+ exports.Contrast = Contrast;
206
+ exports.ContrastContext = ContrastContext;
207
+ exports.MediaCard = MediaCard;
208
+ exports.NavigationCard = NavigationCard;
209
+ exports.NotificationBadge = NotificationBadge;
210
+ exports.StatusBadge = StatusBadge;
211
+ exports.Tag = Tag;
212
+ exports.useContrast = useContrast;
213
+ //# sourceMappingURL=layout.cjs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"layout.cjs.js","sources":["../src/Contrast.tsx","../src/BaseCard.tsx","../src/NavigationCard.tsx","../src/MediaCard.tsx","../src/Badge/Badge.tsx","../src/Badge/BulletBadge.tsx","../src/Badge/NotificationBadge.tsx","../src/Badge/StatusBadge.tsx","../src/Tag.tsx","../src/index.tsx"],"sourcesContent":["import React from 'react';\nimport classNames from 'classnames';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\nexport type ContrastBaseProps = {\n /** Ekstra klassenavn */\n className?: string;\n};\n\nexport type ContrastProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, ContrastBaseProps>;\n\nexport type ContrastComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: ContrastProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'div';\n\nexport const Contrast: ContrastComponent = React.forwardRef(function Contrast<\n T extends React.ElementType = typeof defaultElement,\n>(\n { className, as, ...rest }: ContrastProps<T>,\n ref: PolymorphicRef<T>,\n): JSX.Element {\n const Element: React.ElementType = as || defaultElement;\n return (\n <ContrastContext.Provider value={true}>\n <Element\n className={classNames('eds-contrast', className)}\n ref={ref}\n {...rest}\n />\n </ContrastContext.Provider>\n );\n});\n\nexport const ContrastContext = React.createContext<boolean>(false);\n\nexport const useContrast: () => boolean = () =>\n React.useContext(ContrastContext);\n","import React from 'react';\nimport classNames from 'classnames';\nimport { PolymorphicComponentProps } from '@entur/utils';\nimport './BaseCard.scss';\n\nexport type BaseCardOwnProps = {\n /** HTML-elementet eller React-komponenten som lager Card\n * @default \"div\"\n */\n as?: 'div' | React.ElementType;\n /** Ekstra klassenavn */\n className?: string;\n children?: React.ReactNode;\n};\n\nexport type BaseCardProps<T extends React.ElementType = typeof defaultElement> =\n PolymorphicComponentProps<T, BaseCardOwnProps>;\n\nconst defaultElement = 'div';\n\nexport const BaseCard = <E extends React.ElementType = typeof defaultElement>({\n children,\n className,\n as,\n ...rest\n}: BaseCardProps<E>): JSX.Element => {\n const Element: React.ElementType = as || defaultElement;\n const classList = classNames('eds-base-card', className);\n return (\n <Element className={classList} {...rest}>\n {children}\n </Element>\n );\n};\n","import React from 'react';\nimport { Paragraph } from '@entur/typography';\nimport classNames from 'classnames';\nimport { Heading3 } from '@entur/typography';\nimport { BaseCard } from './BaseCard';\nimport './NavigationCard.scss';\nimport { PolymorphicComponentProps } from '@entur/utils';\n\nexport type NavigationCardOwnProps = {\n /** HTML-elementet eller React-komponenten som lager NavigationCard\n * @default 'a'\n */\n as?: 'a' | 'button' | React.ElementType;\n /** Tittelen/teksten som står i CardBox */\n title: string;\n /** Valgfritt ikon som står over tittelen */\n titleIcon?: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Lager en mer kompakt NavigationCard, uten ikon og beskrivende tekst\n * @default false\n */\n compact?: boolean;\n /** Beskrivelse under tittel, om ikke \"compact\" er valgt */\n children?: React.ReactNode;\n /** @deprecated eksternlenke ikon er ikke lenger støttet i NavigationCard */\n externalLink?: boolean;\n};\n\nexport type NavigationCardProps<\n T extends React.ElementType = typeof defaultElement,\n> = PolymorphicComponentProps<T, NavigationCardOwnProps>;\n\nconst defaultElement = 'a';\n\nexport const NavigationCard = <\n E extends React.ElementType = typeof defaultElement,\n>({\n title,\n children,\n titleIcon,\n compact = false,\n className,\n as,\n ...rest\n}: NavigationCardProps<E>): JSX.Element => {\n const Element: React.ElementType = as || defaultElement;\n const classList = classNames('eds-navigation-card', className, {\n 'eds-base-card--red-line': compact,\n 'eds-navigation-card--compact': compact,\n });\n return (\n <BaseCard as={Element} className={classList} {...rest}>\n <div className=\"eds-navigation-card-header\">\n <div className=\"eds-navigation-card-header__content\">\n {titleIcon && (\n <div\n className=\"eds-navigation-card-header__title-icon\"\n aria-hidden=\"true\"\n >\n {titleIcon}\n </div>\n )}\n <span className=\"eds-navigation-card-header__title\">\n <Heading3 as=\"span\">{title}</Heading3>\n </span>\n </div>\n {!compact && (\n <div className=\"eds-navigation-card-header__highlight\"></div>\n )}\n </div>\n {!compact && (\n <>\n <Paragraph>{children}</Paragraph>\n </>\n )}\n </BaseCard>\n );\n};\n","import React, { CSSProperties } from 'react';\nimport { Paragraph, Label, Heading3 } from '@entur/typography';\nimport classNames from 'classnames';\nimport { BaseCard } from './BaseCard';\nimport { ForwardIcon } from '@entur/icons';\nimport './MediaCard.scss';\nimport { ConditionalWrapper, PolymorphicComponentProps } from '@entur/utils';\n\nexport type MediaCardOwnProps = {\n /** HTML-elementet eller React-komponenten som lager bunnen (under media) av MediaCard\n * @default 'a'\n */\n as?: 'a' | 'button' | React.ElementType;\n /** Tittelen/teksten som står i CardBox */\n title: string;\n /** Teksten under tittelen i MediaCard */\n description?: React.ReactNode;\n /** Kategori (eller lignende) som vises over tittelen */\n category?: string;\n /** Ekstra klassenavn */\n className?: string;\n /** Det du skulle ønske som media (f.eks. bilder eller video) */\n children?: React.ReactNode;\n /** Styling som sendes til komponenten */\n style?: CSSProperties;\n /** Hvilken heading som brukes for tittelen.\n * Blir kun satt hvis description også er satt.\n * @default 'h2'\n */\n headingLevel?: 'h2' | 'h3' | 'h4' | 'h5' | 'h6';\n /** Skjul pil-ikonet nederst til høyre\n * @default false\n */\n hideArrow?: boolean;\n /** Om MediaCard skal vises horisontalt eller vertikalt\n * @default 'vertical'\n */\n orientation?: 'horizontal' | 'vertical';\n /** Props som sendes til wrapper-elementet i stedet for lenke-elementet */\n wrapperProps?: React.HTMLAttributes<HTMLElement>;\n /** @deprecated Denne prop-en har ikke lenger en funksjon.\n * Hvis du trenger å legge til props på wrapper-elementet, bruk 'wrapperProps'-prop-en\n */\n wholeCardAsElement?: boolean;\n};\n\nexport type MediaCardProps<\n T extends React.ElementType = typeof defaultElement,\n> = PolymorphicComponentProps<T, MediaCardOwnProps>;\n\nconst defaultElement = 'a';\n\nexport const MediaCard = <E extends React.ElementType = typeof defaultElement>({\n title,\n description,\n children,\n className,\n category,\n style,\n as,\n headingLevel = 'h2',\n wholeCardAsElement: whole,\n hideArrow,\n wrapperProps,\n orientation,\n ...rest\n}: MediaCardProps<E>): JSX.Element => {\n const Element: React.ElementType = as || defaultElement;\n const Heading = Heading3;\n\n const _wrapperProps = whole\n ? { ...wrapperProps, ...rest }\n : { ...wrapperProps };\n const classList = classNames('eds-base-card, eds-media-card', className, {\n 'eds-media-card--horizontal': orientation === 'horizontal',\n });\n\n return (\n <BaseCard className={classList} style={style} {..._wrapperProps}>\n <div className=\"eds-media-card__media\">{children}</div>\n <div className=\"eds-media-card__text\">\n {category && (\n <Label className=\"eds-media-card__text__category\">{category}</Label>\n )}\n {/* we only want a heading wrapper when we also have description text */}\n <ConditionalWrapper\n condition={description !== undefined}\n wrapper={(children: React.ReactNode) => (\n <Heading as={headingLevel} className=\"eds-media-card__text__title\">\n {children}\n </Heading>\n )}\n >\n <Element\n tabIndex={0}\n className=\"eds-media-card__text__title-link\"\n {...rest}\n >\n {title}\n </Element>\n </ConditionalWrapper>\n {description !== undefined && <Paragraph>{description}</Paragraph>}\n {!hideArrow && (\n <ForwardIcon\n className=\"eds-media-card__arrow-icon\"\n aria-hidden=\"true\"\n />\n )}\n </div>\n </BaseCard>\n );\n};\n\nexport default MediaCard;\n","import React from 'react';\nimport classNames from 'classnames';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\nimport { VariantType } from '@entur/utils';\n\nimport './Badge.scss';\n\n/** @deprecated use variant=\"information\" instead */\nconst info = 'info';\n/** @deprecated use variant=\"negative\" instead */\nconst danger = 'danger';\n\nexport type BadgeTypes = 'status' | 'bullet' | 'notification';\n\nexport type BadgeOwnProps = {\n /** Elementet som wrapper badgen\n * @default \"span\"\n */\n as?: 'span' | React.ElementType;\n /** Ekstra klassenavn */\n className?: string;\n /** Elementet som badge vil legges relativt til */\n children: React.ReactNode;\n /** Hvilken type badge man vil ha */\n variant: 'primary' | 'neutral' | VariantType | typeof danger | typeof info;\n /** Om 0 skal vises\n * @default false\n */\n showZero?: boolean;\n /** Hva som er høyeste tallet før det legges på \"+\"\n * @default ++\n */\n max?: number;\n type?: BadgeTypes;\n /** @deprecated Bruk `hide` i stedet */\n invisible?: boolean;\n /** Skjul badge */\n hide?: boolean;\n};\n\nexport type BadgeProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, BadgeOwnProps>;\n\nexport type BadgeComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: BadgeProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'span';\n\nexport const Badge: BadgeComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n {\n children,\n className,\n max = 99,\n variant,\n showZero = false,\n invisible: invisibleProp = false,\n hide: hideProp = false,\n as,\n type = 'status',\n ...rest\n }: BadgeProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = as || defaultElement;\n\n const computedHide =\n hideProp ||\n invisibleProp ||\n (children === 0 && !showZero) ||\n children == null;\n\n let displayValue;\n if (typeof children === 'number') {\n displayValue = children > max ? `${max}+` : children;\n } else {\n displayValue = children;\n }\n\n const classList = classNames(\n className,\n 'eds-badge',\n {\n 'eds-badge--hide': computedHide,\n 'eds-badge--show-zero': showZero,\n },\n `eds-badge--variant-${variant}`,\n `eds-badge--type-${type}`,\n );\n\n return (\n <Element className={classList} ref={ref} {...rest}>\n {displayValue}\n </Element>\n );\n },\n);\n","import React from 'react';\nimport { Badge } from './Badge';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\nimport { VariantType } from '@entur/utils';\n\n/** @deprecated use variant=\"information\" instead */\nconst info = 'info';\n/** @deprecated use variant=\"negative\" instead */\nconst danger = 'danger';\n\ntype BulletBadgeBaseProps = {\n /** Elementet som wrapper badgen\n * @default \"span\"\n */\n as?: string | React.ElementType;\n /** Ekstra klassenavn */\n className?: string;\n /** Elementet som badge vil legges relativt til */\n children: React.ReactNode;\n /** Hvilken type badge man vil ha */\n variant: 'primary' | 'neutral' | VariantType | typeof danger | typeof info;\n /** Skjul badge */\n hide?: boolean;\n};\n\nexport type BulletBadgeProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, BulletBadgeBaseProps>;\n\nexport type BulletBadgeComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: BulletBadgeProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'span';\n\nexport const BulletBadge: BulletBadgeComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: BulletBadgeProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element = props.as || defaultElement;\n // @ts-expect-error type error due to props not being BadgeOwnProps\n return <Badge as={Element} {...props} ref={ref} type=\"bullet\" />;\n },\n);\n","import React from 'react';\nimport { Badge } from './Badge';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\nimport { VariantType } from '@entur/utils';\n\n/** @deprecated use variant=\"information\" instead */\nconst info = 'info';\n/** @deprecated use variant=\"negative\" instead */\nconst danger = 'danger';\n\ntype NotificationBadgeBaseProps = {\n /** Elementet som wrapper badgen\n * @default \"span\"\n */\n as?: string | React.ElementType;\n /** Ekstra klassenavn */\n className?: string;\n /** Elementet som badge vil legges relativt til */\n children: React.ReactNode;\n /** Hvilken type badge man vil ha */\n variant: 'primary' | 'neutral' | VariantType | typeof danger | typeof info;\n /** Om 0 skal vises\n * @default false\n */\n showZero?: boolean;\n /** Hva som er høyeste tallet før det legges på \"+\"\n * @default ++\n */\n max?: number;\n /** Skjul badge */\n hide?: boolean;\n};\n\nexport type NotificationBadgeProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, NotificationBadgeBaseProps>;\n\nexport type NotificationBadgeComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: NotificationBadgeProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'span';\n\nexport const NotificationBadge: NotificationBadgeComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: NotificationBadgeProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element = props.as || defaultElement;\n // @ts-expect-error type error due to props not being BadgeOwnProps\n return <Badge as={Element} {...props} ref={ref} type=\"notification\" />;\n },\n);\n","import React from 'react';\nimport { Badge } from './Badge';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\nimport { VariantType } from '@entur/utils';\n\n/** @deprecated use variant=\"information\" instead */\nconst info = 'info';\n/** @deprecated use variant=\"negative\" instead */\nconst danger = 'danger';\n\ntype StatusBadgeBaseProps = {\n /** Elementet som wrapper badgen\n * @default \"span\"\n */\n as?: string | React.ElementType;\n /** Ekstra klassenavn */\n className?: string;\n /** Elementet som badge vil legges relativt til */\n children: React.ReactNode;\n /** Hvilken type badge man vil ha */\n variant: 'primary' | 'neutral' | VariantType | typeof danger | typeof info;\n /** Skjul badge */\n hide?: boolean;\n};\n\nexport type StatusBadgeProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, StatusBadgeBaseProps>;\n\nexport type StatusBadgeComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: StatusBadgeProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'span';\n\nexport const StatusBadge: StatusBadgeComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: StatusBadgeProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element = props.as || defaultElement;\n // @ts-expect-error type error due to props not being BadgeOwnProps\n return <Badge as={Element} {...props} ref={ref} type=\"status\" />;\n },\n);\n","import React from 'react';\nimport classNames from 'classnames';\nimport './Tag.scss';\nimport { PolymorphicComponentProps } from '@entur/utils';\n\nexport type TagOwnProps = {\n /** HTML-elementet eller React-komponenten som rendres\n * @default 'div'\n */\n as?: string | React.ElementType;\n /** Ekstra klassenavn */\n className?: string;\n /**Mindre og mer kompakt Tag, til f.eks. tabellbruk\n * @default false\n */\n compact?: boolean;\n children: React.ReactNode;\n};\n\nexport type TagProps<T extends React.ElementType = typeof defaultElement> =\n PolymorphicComponentProps<T, TagOwnProps>;\n\nconst defaultElement = 'div';\n\nexport const Tag = <E extends React.ElementType = typeof defaultElement>({\n className,\n children,\n compact,\n as,\n ...rest\n}: TagProps<E>): JSX.Element => {\n const Element: React.ElementType = as || defaultElement;\n const childrenArray = React.Children.toArray(children);\n const hasLeadingIcon =\n childrenArray.length > 1 && typeof childrenArray[0] !== 'string';\n const hasTrailingIcon =\n childrenArray.length > 1 &&\n typeof childrenArray[childrenArray.length - 1] !== 'string';\n\n return (\n <Element\n className={classNames('eds-tag', className, {\n 'eds-tag--leading-icon': hasLeadingIcon,\n 'eds-tag--trailing-icon': hasTrailingIcon,\n 'eds-tag--compact': compact,\n })}\n {...rest}\n >\n {children}\n </Element>\n );\n};\n","import './styles.scss';\nimport { warnAboutMissingStyles } from '@entur/utils';\nimport './index.scss';\n\nwarnAboutMissingStyles('layout', 'typography');\n\nexport * from './Contrast';\nexport * from './NavigationCard';\nexport * from './BaseCard';\nexport * from './MediaCard';\nexport * from './Badge/Badge';\nexport * from './Badge/BulletBadge';\nexport * from './Badge/NotificationBadge';\nexport * from './Badge/StatusBadge';\nexport * from './Tag';\n"],"names":["defaultElement","Contrast","jsx","jsxs","Heading3","Fragment","Paragraph","Label","ConditionalWrapper","children","ForwardIcon","warnAboutMissingStyles"],"mappings":"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"}