@dnb/eufemia 9.28.0 → 9.29.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (209) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/cjs/components/dialog/style/dnb-dialog.css +9 -6
  3. package/cjs/components/dialog/style/dnb-dialog.min.css +1 -1
  4. package/cjs/components/drawer/style/_drawer.scss +4 -3
  5. package/cjs/components/drawer/style/dnb-drawer.css +17 -10
  6. package/cjs/components/drawer/style/dnb-drawer.min.css +1 -1
  7. package/cjs/components/form-row/FormRowHelpers.d.ts +1 -1
  8. package/cjs/components/lib.d.ts +1 -89
  9. package/cjs/components/modal/style/_modal.scss +0 -1
  10. package/cjs/components/modal/style/dnb-modal.css +9 -6
  11. package/cjs/components/modal/style/dnb-modal.min.css +1 -1
  12. package/cjs/components/skeleton/SkeletonHelper.d.ts +2 -1
  13. package/cjs/components/slider/Slider.d.ts +6 -144
  14. package/cjs/components/slider/Slider.js +5 -595
  15. package/cjs/components/slider/SliderHelpers.d.ts +23 -0
  16. package/cjs/components/slider/SliderHelpers.js +239 -0
  17. package/cjs/components/slider/SliderInstance.d.ts +6 -0
  18. package/cjs/components/slider/SliderInstance.js +190 -0
  19. package/cjs/components/slider/SliderProvider.d.ts +4 -0
  20. package/cjs/components/slider/SliderProvider.js +264 -0
  21. package/cjs/components/slider/SliderThumb.d.ts +2 -0
  22. package/cjs/components/slider/SliderThumb.js +137 -0
  23. package/cjs/components/slider/SliderTrack.d.ts +6 -0
  24. package/cjs/components/slider/SliderTrack.js +131 -0
  25. package/cjs/components/slider/hooks/useSliderEvents.d.ts +11 -0
  26. package/cjs/components/slider/hooks/useSliderEvents.js +146 -0
  27. package/cjs/components/slider/hooks/useSliderProps.d.ts +1 -0
  28. package/cjs/components/slider/hooks/useSliderProps.js +16 -0
  29. package/cjs/components/slider/style/_slider.scss +19 -48
  30. package/cjs/components/slider/style/dnb-slider.css +30 -60
  31. package/cjs/components/slider/style/dnb-slider.min.css +1 -1
  32. package/cjs/components/slider/style/themes/dnb-slider-theme-ui.css +0 -16
  33. package/cjs/components/slider/style/themes/dnb-slider-theme-ui.min.css +1 -1
  34. package/cjs/components/slider/style/themes/dnb-slider-theme-ui.scss +0 -17
  35. package/cjs/components/slider/types.d.ts +75 -0
  36. package/cjs/components/slider/types.js +1 -0
  37. package/cjs/elements/Anchor.d.ts +44 -105
  38. package/cjs/elements/Anchor.js +48 -138
  39. package/cjs/elements/Element.d.ts +23 -40
  40. package/cjs/elements/Element.js +48 -122
  41. package/cjs/elements/Link.d.ts +18 -1
  42. package/cjs/elements/lib.d.ts +36 -2
  43. package/cjs/shared/Context.d.ts +2 -0
  44. package/cjs/shared/Eufemia.js +1 -1
  45. package/cjs/shared/helpers/Suffix.d.ts +2 -1
  46. package/cjs/shared/helpers/Suffix.js +5 -2
  47. package/cjs/shared/helpers/withCamelCaseProps.d.ts +1 -1
  48. package/cjs/shared/helpers/withSnakeCaseProps.d.ts +40 -0
  49. package/cjs/shared/helpers/withSnakeCaseProps.js +168 -0
  50. package/cjs/shared/locales/en-GB.d.ts +3 -3
  51. package/cjs/shared/locales/en-GB.js +3 -3
  52. package/cjs/shared/locales/en-US.d.ts +3 -3
  53. package/cjs/shared/locales/index.d.ts +6 -6
  54. package/cjs/shared/locales/nb-NO.d.ts +3 -3
  55. package/cjs/shared/locales/nb-NO.js +3 -3
  56. package/cjs/style/dnb-ui-components.css +39 -66
  57. package/cjs/style/dnb-ui-components.min.css +3 -3
  58. package/cjs/style/dnb-ui-elements.css +44 -28
  59. package/cjs/style/dnb-ui-elements.min.css +1 -1
  60. package/cjs/style/dnb-ui-tags.css +63 -40
  61. package/cjs/style/dnb-ui-tags.min.css +1 -1
  62. package/cjs/style/elements/_anchor-mixins.scss +6 -3
  63. package/cjs/style/themes/theme-eiendom/dnb-theme-eiendom.css +40 -40
  64. package/cjs/style/themes/theme-eiendom/dnb-theme-eiendom.min.css +2 -2
  65. package/cjs/style/themes/theme-ui/dnb-theme-ui.css +44 -44
  66. package/cjs/style/themes/theme-ui/dnb-theme-ui.min.css +2 -2
  67. package/components/dialog/style/dnb-dialog.css +9 -6
  68. package/components/dialog/style/dnb-dialog.min.css +1 -1
  69. package/components/drawer/style/_drawer.scss +4 -3
  70. package/components/drawer/style/dnb-drawer.css +17 -10
  71. package/components/drawer/style/dnb-drawer.min.css +1 -1
  72. package/components/form-row/FormRowHelpers.d.ts +1 -1
  73. package/components/lib.d.ts +1 -89
  74. package/components/modal/style/_modal.scss +0 -1
  75. package/components/modal/style/dnb-modal.css +9 -6
  76. package/components/modal/style/dnb-modal.min.css +1 -1
  77. package/components/skeleton/SkeletonHelper.d.ts +2 -1
  78. package/components/slider/Slider.d.ts +6 -144
  79. package/components/slider/Slider.js +5 -528
  80. package/components/slider/SliderHelpers.d.ts +23 -0
  81. package/components/slider/SliderHelpers.js +152 -0
  82. package/components/slider/SliderInstance.d.ts +6 -0
  83. package/components/slider/SliderInstance.js +162 -0
  84. package/components/slider/SliderProvider.d.ts +4 -0
  85. package/components/slider/SliderProvider.js +199 -0
  86. package/components/slider/SliderThumb.d.ts +2 -0
  87. package/components/slider/SliderThumb.js +109 -0
  88. package/components/slider/SliderTrack.d.ts +6 -0
  89. package/components/slider/SliderTrack.js +104 -0
  90. package/components/slider/hooks/useSliderEvents.d.ts +11 -0
  91. package/components/slider/hooks/useSliderEvents.js +132 -0
  92. package/components/slider/hooks/useSliderProps.d.ts +1 -0
  93. package/components/slider/hooks/useSliderProps.js +5 -0
  94. package/components/slider/style/_slider.scss +19 -48
  95. package/components/slider/style/dnb-slider.css +30 -60
  96. package/components/slider/style/dnb-slider.min.css +1 -1
  97. package/components/slider/style/themes/dnb-slider-theme-ui.css +0 -16
  98. package/components/slider/style/themes/dnb-slider-theme-ui.min.css +1 -1
  99. package/components/slider/style/themes/dnb-slider-theme-ui.scss +0 -17
  100. package/components/slider/types.d.ts +75 -0
  101. package/components/slider/types.js +1 -0
  102. package/elements/Anchor.d.ts +44 -105
  103. package/elements/Anchor.js +51 -113
  104. package/elements/Element.d.ts +23 -40
  105. package/elements/Element.js +44 -92
  106. package/elements/Link.d.ts +18 -1
  107. package/elements/lib.d.ts +36 -2
  108. package/es/components/dialog/style/dnb-dialog.css +9 -6
  109. package/es/components/dialog/style/dnb-dialog.min.css +1 -1
  110. package/es/components/drawer/style/_drawer.scss +4 -3
  111. package/es/components/drawer/style/dnb-drawer.css +17 -10
  112. package/es/components/drawer/style/dnb-drawer.min.css +1 -1
  113. package/es/components/form-row/FormRowHelpers.d.ts +1 -1
  114. package/es/components/lib.d.ts +1 -89
  115. package/es/components/modal/style/_modal.scss +0 -1
  116. package/es/components/modal/style/dnb-modal.css +9 -6
  117. package/es/components/modal/style/dnb-modal.min.css +1 -1
  118. package/es/components/skeleton/SkeletonHelper.d.ts +2 -1
  119. package/es/components/slider/Slider.d.ts +6 -144
  120. package/es/components/slider/Slider.js +5 -484
  121. package/es/components/slider/SliderHelpers.d.ts +23 -0
  122. package/es/components/slider/SliderHelpers.js +124 -0
  123. package/es/components/slider/SliderInstance.d.ts +6 -0
  124. package/es/components/slider/SliderInstance.js +167 -0
  125. package/es/components/slider/SliderProvider.d.ts +4 -0
  126. package/es/components/slider/SliderProvider.js +178 -0
  127. package/es/components/slider/SliderThumb.d.ts +2 -0
  128. package/es/components/slider/SliderThumb.js +100 -0
  129. package/es/components/slider/SliderTrack.d.ts +6 -0
  130. package/es/components/slider/SliderTrack.js +99 -0
  131. package/es/components/slider/hooks/useSliderEvents.d.ts +11 -0
  132. package/es/components/slider/hooks/useSliderEvents.js +129 -0
  133. package/es/components/slider/hooks/useSliderProps.d.ts +1 -0
  134. package/es/components/slider/hooks/useSliderProps.js +5 -0
  135. package/es/components/slider/style/_slider.scss +19 -48
  136. package/es/components/slider/style/dnb-slider.css +30 -60
  137. package/es/components/slider/style/dnb-slider.min.css +1 -1
  138. package/es/components/slider/style/themes/dnb-slider-theme-ui.css +0 -16
  139. package/es/components/slider/style/themes/dnb-slider-theme-ui.min.css +1 -1
  140. package/es/components/slider/style/themes/dnb-slider-theme-ui.scss +0 -17
  141. package/es/components/slider/types.d.ts +75 -0
  142. package/es/components/slider/types.js +1 -0
  143. package/es/elements/Anchor.d.ts +44 -105
  144. package/es/elements/Anchor.js +49 -80
  145. package/es/elements/Element.d.ts +23 -40
  146. package/es/elements/Element.js +44 -61
  147. package/es/elements/Link.d.ts +18 -1
  148. package/es/elements/lib.d.ts +36 -2
  149. package/es/shared/Context.d.ts +2 -0
  150. package/es/shared/Eufemia.js +1 -1
  151. package/es/shared/helpers/Suffix.d.ts +2 -1
  152. package/es/shared/helpers/Suffix.js +5 -3
  153. package/es/shared/helpers/withCamelCaseProps.d.ts +1 -1
  154. package/es/shared/helpers/withSnakeCaseProps.d.ts +40 -0
  155. package/es/shared/helpers/withSnakeCaseProps.js +72 -0
  156. package/es/shared/locales/en-GB.d.ts +3 -3
  157. package/es/shared/locales/en-GB.js +3 -3
  158. package/es/shared/locales/en-US.d.ts +3 -3
  159. package/es/shared/locales/index.d.ts +6 -6
  160. package/es/shared/locales/nb-NO.d.ts +3 -3
  161. package/es/shared/locales/nb-NO.js +3 -3
  162. package/es/style/dnb-ui-components.css +39 -66
  163. package/es/style/dnb-ui-components.min.css +3 -3
  164. package/es/style/dnb-ui-elements.css +44 -28
  165. package/es/style/dnb-ui-elements.min.css +1 -1
  166. package/es/style/dnb-ui-tags.css +63 -40
  167. package/es/style/dnb-ui-tags.min.css +1 -1
  168. package/es/style/elements/_anchor-mixins.scss +6 -3
  169. package/es/style/themes/theme-eiendom/dnb-theme-eiendom.css +40 -40
  170. package/es/style/themes/theme-eiendom/dnb-theme-eiendom.min.css +2 -2
  171. package/es/style/themes/theme-ui/dnb-theme-ui.css +44 -44
  172. package/es/style/themes/theme-ui/dnb-theme-ui.min.css +2 -2
  173. package/esm/dnb-ui-basis.min.mjs +1 -1
  174. package/esm/dnb-ui-components.min.mjs +3 -3
  175. package/esm/dnb-ui-elements.min.mjs +9 -10
  176. package/esm/dnb-ui-extensions.min.mjs +4 -4
  177. package/esm/dnb-ui-lib.min.mjs +3 -3
  178. package/esm/dnb-ui-web-components.min.mjs +3 -3
  179. package/package.json +1 -1
  180. package/shared/Context.d.ts +2 -0
  181. package/shared/Eufemia.js +1 -1
  182. package/shared/helpers/Suffix.d.ts +2 -1
  183. package/shared/helpers/Suffix.js +4 -2
  184. package/shared/helpers/withCamelCaseProps.d.ts +1 -1
  185. package/shared/helpers/withSnakeCaseProps.d.ts +40 -0
  186. package/shared/helpers/withSnakeCaseProps.js +115 -0
  187. package/shared/locales/en-GB.d.ts +3 -3
  188. package/shared/locales/en-GB.js +3 -3
  189. package/shared/locales/en-US.d.ts +3 -3
  190. package/shared/locales/index.d.ts +6 -6
  191. package/shared/locales/nb-NO.d.ts +3 -3
  192. package/shared/locales/nb-NO.js +3 -3
  193. package/style/dnb-ui-components.css +39 -66
  194. package/style/dnb-ui-components.min.css +3 -3
  195. package/style/dnb-ui-elements.css +44 -28
  196. package/style/dnb-ui-elements.min.css +1 -1
  197. package/style/dnb-ui-tags.css +63 -40
  198. package/style/dnb-ui-tags.min.css +1 -1
  199. package/style/elements/_anchor-mixins.scss +6 -3
  200. package/style/themes/theme-eiendom/dnb-theme-eiendom.css +40 -40
  201. package/style/themes/theme-eiendom/dnb-theme-eiendom.min.css +2 -2
  202. package/style/themes/theme-ui/dnb-theme-ui.css +44 -44
  203. package/style/themes/theme-ui/dnb-theme-ui.min.css +2 -2
  204. package/umd/dnb-ui-basis.min.js +1 -1
  205. package/umd/dnb-ui-components.min.js +5 -5
  206. package/umd/dnb-ui-elements.min.js +20 -21
  207. package/umd/dnb-ui-extensions.min.js +3 -3
  208. package/umd/dnb-ui-lib.min.js +4 -4
  209. package/umd/dnb-ui-web-components.min.js +3 -3
@@ -0,0 +1,75 @@
1
+ /// <reference types="node" />
2
+ import React from 'react';
3
+ import type { SuffixChildren } from '../../shared/helpers/Suffix';
4
+ import type { formatReturnType, formatOptionParams } from '../number-format/NumberUtils';
5
+ import { IncludeSnakeCase } from '../../shared/helpers/withSnakeCaseProps';
6
+ export declare type ValueTypes = number | Array<number>;
7
+ export declare type onChangeEventProps = {
8
+ value: ValueTypes;
9
+ rawValue: number;
10
+ number?: formatReturnType | null;
11
+ event?: Event;
12
+ /** @deprecated use rawValue instead */
13
+ raw_value?: number;
14
+ };
15
+ export declare type SliderProps = IncludeSnakeCase<{
16
+ id?: string;
17
+ label?: React.ReactNode;
18
+ labelDirection?: 'vertical' | 'horizontal';
19
+ labelSrOnly?: boolean;
20
+ status?: string | boolean;
21
+ statusState?: 'error' | 'info';
22
+ statusProps?: Record<string, unknown>;
23
+ statusNoAnimation?: boolean;
24
+ globalStatusId?: string;
25
+ suffix?: SuffixChildren;
26
+ thumbTitle?: string;
27
+ addTitle?: string;
28
+ subtractTitle?: string;
29
+ min?: number;
30
+ max?: number;
31
+ value?: ValueTypes;
32
+ step?: number;
33
+ vertical?: boolean;
34
+ reverse?: boolean;
35
+ stretch?: boolean;
36
+ numberFormat?: formatOptionParams;
37
+ disabled?: boolean;
38
+ hideButtons?: boolean;
39
+ skeleton?: boolean;
40
+ class?: string;
41
+ className?: string;
42
+ onChange?: (props: onChangeEventProps) => void;
43
+ onDragStart?: (props: {
44
+ event: MouseEvent | TouchEvent;
45
+ }) => void;
46
+ onDragEnd?: (props: {
47
+ event: MouseEvent | TouchEvent;
48
+ }) => void;
49
+ /** @deprecated */
50
+ onInit?: (props: Omit<onChangeEventProps, 'rawValue'>) => void;
51
+ /** @deprecated The Slider does not support mouse wheel */
52
+ use_scrollwheel?: boolean;
53
+ children?: React.ReactChild;
54
+ }>;
55
+ export declare type ThumbStateEnums = 'initial' | 'normal' | 'activated' | 'released' | 'focused' | 'jumped';
56
+ export declare type SliderContextTypes = {
57
+ isMulti: boolean;
58
+ isReverse: boolean;
59
+ isVertical: boolean;
60
+ thumbState: ThumbStateEnums;
61
+ thumbIndex: React.RefObject<number>;
62
+ showStatus: boolean;
63
+ showButtons: boolean;
64
+ attributes: unknown;
65
+ allProps: SliderProps;
66
+ value: ValueTypes;
67
+ values: Array<number>;
68
+ setValue: (value: ValueTypes) => void;
69
+ setThumbState: (thumbState: ThumbStateEnums) => void;
70
+ setThumbIndex: (thumbIndex: number) => void;
71
+ emitChange: (emitEvent: MouseEvent | TouchEvent, value: number) => void;
72
+ trackRef: React.RefObject<HTMLElement>;
73
+ setJumpedState: () => void;
74
+ jumpedTimeout: React.RefObject<NodeJS.Timeout>;
75
+ };
@@ -0,0 +1 @@
1
+ "use strict";
@@ -1,108 +1,47 @@
1
- import * as React from 'react';
2
- export type AnchorSpace =
3
- | string
4
- | number
5
- | boolean
6
- | {
7
- /**
8
- * Use spacing values like: `small`, `1rem`, `1` or , `16px`. Will use `margin-top`.
9
- */
10
- top?: string | number | boolean;
11
-
12
- /**
13
- * Use spacing values like: `small`, `1rem`, `1` or , `16px`. will use `margin-right`.
14
- */
15
- right?: string | number | boolean;
16
-
17
- /**
18
- * Use spacing values like: `small`, `1rem`, `1` or , `16px`. will use `margin-bottom`.
19
- */
20
- bottom?: string | number | boolean;
21
-
22
- /**
23
- * Use spacing values like: `small`, `1rem`, `1` or , `16px`. will use `margin-left`.
24
- */
25
- left?: string | number | boolean;
26
- };
27
- export type AnchorTop = string | number | boolean;
28
- export type AnchorRight = string | number | boolean;
29
- export type AnchorBottom = string | number | boolean;
30
- export type AnchorLeft = string | number | boolean;
31
- export type AnchorElement =
32
- | ((...args: any[]) => any)
33
- | Object
34
- | React.ReactNode;
35
- export type AnchorTo = string | Object | ((...args: any[]) => any);
36
- export type AnchorClassName = string | Object | any[];
37
- export type AnchorTooltip = ((...args: any[]) => any) | React.ReactNode;
38
- export type AnchorSkeleton = string | boolean;
39
-
40
1
  /**
41
- * NB: Do not change the docs (comments) in here. The docs are updated during build time by "generateTypes.js" and "fetchPropertiesFromDocs.js".
2
+ * HTML Element
3
+ *
42
4
  */
43
- export interface AnchorProps extends React.HTMLProps<HTMLElement> {
44
- /**
45
- * Has to be an object with either: `top`, `right`, `bottom` or `left`. Use spacing values like: `small`, `1rem`, `1` or , `16px`.
46
- */
47
- space?: AnchorSpace;
48
-
49
- /**
50
- * Use spacing values like: `small`, `1rem`, `1` or , `16px`. Will use `margin-top`.
51
- */
52
- top?: AnchorTop;
53
-
54
- /**
55
- * Use spacing values like: `small`, `1rem`, `1` or , `16px`. will use `margin-right`.
56
- */
57
- right?: AnchorRight;
58
-
59
- /**
60
- * Use spacing values like: `small`, `1rem`, `1` or , `16px`. will use `margin-bottom`.
61
- */
62
- bottom?: AnchorBottom;
63
-
64
- /**
65
- * Use spacing values like: `small`, `1rem`, `1` or , `16px`. will use `margin-left`.
66
- */
67
- left?: AnchorLeft;
68
-
69
- /**
70
- * Define what HTML or React element should be used (e.g. `element={Link}`). Defaults to semantic `a` element.
71
- */
72
- element?: AnchorElement;
73
-
74
- /**
75
- * Relative or absolute url.
76
- */
77
- href?: string;
78
-
79
- /**
80
- * Use this prop only if you are using a router Link component as the `element` that uses the `to` property to declare the navigation url.
81
- */
82
- to?: AnchorTo;
83
- omitClass?: boolean;
84
-
85
- /**
86
- * The title shown as a tooltip when target is set to `_blank`.
87
- */
88
- target_blank_title?: string;
89
-
90
- /**
91
- * Defines the opening method. Use `_blank` to open a new browser window/tab.
92
- */
93
- target?: string;
94
- className?: AnchorClassName;
95
-
96
- /**
97
- * Provide a string or a React Element to be shown as the tooltip content.
98
- */
99
- tooltip?: AnchorTooltip;
100
- children?: React.ReactNode;
101
-
102
- /**
103
- * If set to `true`, an overlaying skeleton with animation will be shown.
104
- */
105
- skeleton?: AnchorSkeleton;
106
- }
107
- declare const Anchor: React.FC<AnchorProps>;
5
+ import React from 'react';
6
+ import { ISpacingProps } from '../shared/interfaces';
7
+ export declare type AnchorProps = {
8
+ element?: React.ReactNode;
9
+ href?: string;
10
+ to?: string;
11
+ targetBlankTitle?: string;
12
+ target?: string;
13
+ tooltip?: React.ReactNode;
14
+ skeleton?: boolean;
15
+ className?: string;
16
+ children?: React.ReactNode;
17
+ omitClass?: boolean;
18
+ innerRef?: React.ForwardedRef<unknown>;
19
+ id?: string;
20
+ title?: string;
21
+ lang?: string;
22
+ /** @deprecated use innerRef instead */
23
+ inner_ref?: React.ForwardedRef<unknown>;
24
+ /** @deprecated use targetBlankTitle instead */
25
+ target_blank_title?: string;
26
+ } & Partial<Omit<HTMLAnchorElement, 'children'>> & ISpacingProps;
27
+ declare const Anchor: React.ForwardRefExoticComponent<{
28
+ element?: React.ReactNode;
29
+ href?: string;
30
+ to?: string;
31
+ targetBlankTitle?: string;
32
+ target?: string;
33
+ tooltip?: React.ReactNode;
34
+ skeleton?: boolean;
35
+ className?: string;
36
+ children?: React.ReactNode;
37
+ omitClass?: boolean;
38
+ innerRef?: React.ForwardedRef<unknown>;
39
+ id?: string;
40
+ title?: string;
41
+ lang?: string;
42
+ /** @deprecated use innerRef instead */
43
+ inner_ref?: React.ForwardedRef<unknown>;
44
+ /** @deprecated use targetBlankTitle instead */
45
+ target_blank_title?: string;
46
+ } & Partial<Omit<HTMLAnchorElement, "children">> & ISpacingProps & React.RefAttributes<unknown>>;
108
47
  export default Anchor;
@@ -1,52 +1,22 @@
1
1
  "use strict";
2
2
 
3
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
4
-
5
3
  require("core-js/modules/es.object.keys.js");
6
4
 
7
- require("core-js/modules/es.symbol.js");
8
-
9
- require("core-js/modules/es.array.filter.js");
10
-
11
- require("core-js/modules/es.object.to-string.js");
12
-
13
- require("core-js/modules/es.object.get-own-property-descriptor.js");
14
-
15
- require("core-js/modules/web.dom-collections.for-each.js");
16
-
17
- require("core-js/modules/es.object.get-own-property-descriptors.js");
18
-
19
- require("core-js/modules/es.object.get-prototype-of.js");
20
-
21
- require("core-js/modules/es.reflect.construct.js");
22
-
23
5
  require("core-js/modules/es.array.index-of.js");
24
6
 
25
- require("core-js/modules/es.symbol.description.js");
26
-
27
- require("core-js/modules/es.symbol.iterator.js");
28
-
29
- require("core-js/modules/es.array.iterator.js");
30
-
31
- require("core-js/modules/es.string.iterator.js");
7
+ require("core-js/modules/es.symbol.js");
32
8
 
33
- require("core-js/modules/web.dom-collections.iterator.js");
9
+ require("core-js/modules/es.object.assign.js");
34
10
 
35
11
  Object.defineProperty(exports, "__esModule", {
36
12
  value: true
37
13
  });
38
14
  exports.default = void 0;
39
15
 
40
- require("core-js/modules/es.object.assign.js");
41
-
42
16
  var _react = _interopRequireDefault(require("react"));
43
17
 
44
- var _propTypes = _interopRequireDefault(require("prop-types"));
45
-
46
18
  var _classnames = _interopRequireDefault(require("classnames"));
47
19
 
48
- var _SpacingHelper = require("../components/space/SpacingHelper");
49
-
50
20
  var _Element = _interopRequireDefault(require("./Element"));
51
21
 
52
22
  var _Context = _interopRequireDefault(require("../shared/Context"));
@@ -55,41 +25,65 @@ var _componentHelper = require("../shared/component-helper");
55
25
 
56
26
  var _Tooltip = _interopRequireDefault(require("../components/tooltip/Tooltip"));
57
27
 
58
- var _excluded = ["element", "className", "children", "tooltip", "omitClass", "inner_ref"];
28
+ var _usePropsWithContext = _interopRequireDefault(require("../shared/hooks/usePropsWithContext"));
29
+
30
+ var _excluded = ["id", "element", "className", "children", "tooltip", "omitClass", "innerRef", "targetBlankTitle"];
59
31
 
60
32
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
61
33
 
34
+ function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
35
+
62
36
  function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
63
37
 
64
38
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
65
39
 
66
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
67
-
68
- function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
69
-
70
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
71
-
72
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
73
-
74
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
75
-
76
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
40
+ var defaultProps = {};
77
41
 
78
- function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
42
+ function AnchorInstance(localProps) {
43
+ var context = _react.default.useContext(_Context.default);
79
44
 
80
- function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
45
+ var allProps = (0, _usePropsWithContext.default)(localProps, defaultProps, {
46
+ skeleton: context === null || context === void 0 ? void 0 : context.skeleton
47
+ }, context === null || context === void 0 ? void 0 : context.getTranslation(localProps).Anchor, context === null || context === void 0 ? void 0 : context.Anchor);
81
48
 
82
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
83
-
84
- function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
85
-
86
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
49
+ if (typeof allProps.inner_ref !== 'undefined') {
50
+ allProps.innerRef = allProps.inner_ref;
51
+ delete allProps.inner_ref;
52
+ }
87
53
 
88
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
54
+ if (typeof allProps.target_blank_title !== 'undefined') {
55
+ allProps.targetBlankTitle = allProps.target_blank_title;
56
+ delete allProps.target_blank_title;
57
+ }
89
58
 
90
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
59
+ if (!allProps.innerRef) {
60
+ allProps.innerRef = _react.default.createRef();
61
+ }
91
62
 
92
- function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
63
+ var id = allProps.id,
64
+ element = allProps.element,
65
+ className = allProps.className,
66
+ children = allProps.children,
67
+ tooltip = allProps.tooltip,
68
+ omitClass = allProps.omitClass,
69
+ innerRef = allProps.innerRef,
70
+ targetBlankTitle = allProps.targetBlankTitle,
71
+ attributes = _objectWithoutProperties(allProps, _excluded);
72
+
73
+ var internalId = id || 'id' + (0, _componentHelper.makeUniqueId)();
74
+ var showTooltip = allProps.target === '_blank' && !allProps.title;
75
+ return _react.default.createElement(_react.default.Fragment, null, _react.default.createElement(_Element.default, _extends({
76
+ is: element || 'a',
77
+ className: (0, _classnames.default)(className, omitClass !== true && 'dnb-anchor', allProps.target === '_blank' && typeof children !== 'string' && 'dnb-anchor--no-icon')
78
+ }, attributes, {
79
+ innerRef: innerRef
80
+ }), children), showTooltip && _react.default.createElement(_Tooltip.default, {
81
+ show_delay: 100,
82
+ id: internalId + '-tooltip',
83
+ target_element: innerRef,
84
+ tooltip: tooltip
85
+ }, allProps.title || targetBlankTitle));
86
+ }
93
87
 
94
88
  var Anchor = _react.default.forwardRef(function (props, ref) {
95
89
  return _react.default.createElement(AnchorInstance, _extends({
@@ -97,89 +91,5 @@ var Anchor = _react.default.forwardRef(function (props, ref) {
97
91
  }, props));
98
92
  });
99
93
 
100
- process.env.NODE_ENV !== "production" ? Anchor.propTypes = _objectSpread(_objectSpread({}, _SpacingHelper.spacingPropTypes), {}, {
101
- element: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object, _propTypes.default.node]),
102
- href: _propTypes.default.string,
103
- to: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.object, _propTypes.default.func]),
104
- omitClass: _propTypes.default.bool,
105
- target_blank_title: _propTypes.default.string,
106
- target: _propTypes.default.string,
107
- className: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.object, _propTypes.default.array]),
108
- tooltip: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.node]),
109
- children: _propTypes.default.node,
110
- skeleton: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.bool])
111
- }) : void 0;
112
- Anchor.defaultProps = {
113
- element: null,
114
- href: null,
115
- to: null,
116
- omitClass: null,
117
- target_blank_title: null,
118
- target: null,
119
- className: null,
120
- tooltip: null,
121
- children: null,
122
- skeleton: null
123
- };
124
-
125
- var AnchorInstance = function (_React$PureComponent) {
126
- _inherits(AnchorInstance, _React$PureComponent);
127
-
128
- var _super = _createSuper(AnchorInstance);
129
-
130
- function AnchorInstance(props) {
131
- var _this;
132
-
133
- _classCallCheck(this, AnchorInstance);
134
-
135
- _this = _super.call(this, props);
136
-
137
- _defineProperty(_assertThisInitialized(_this), "state", {});
138
-
139
- _this._id = props.id || 'id' + (0, _componentHelper.makeUniqueId)();
140
- _this._ref = props.inner_ref || _react.default.createRef();
141
- return _this;
142
- }
143
-
144
- _createClass(AnchorInstance, [{
145
- key: "render",
146
- value: function render() {
147
- var props = (0, _componentHelper.extendPropsWithContext)(this.props, Anchor.defaultProps, {
148
- skeleton: this.context && this.context.skeleton
149
- }, this.context.getTranslation(this.props).Anchor, this.context.Anchor);
150
-
151
- var element = props.element,
152
- className = props.className,
153
- children = props.children,
154
- tooltip = props.tooltip,
155
- omitClass = props.omitClass,
156
- inner_ref = props.inner_ref,
157
- attributes = _objectWithoutProperties(props, _excluded);
158
-
159
- var showTooltip = props.target === '_blank' && !props.title;
160
- attributes.className = (0, _classnames.default)(className, omitClass !== true && 'dnb-anchor', props.target === '_blank' && typeof children !== 'string' && 'dnb-anchor--no-icon');
161
- return _react.default.createElement(_react.default.Fragment, null, _react.default.createElement(_Element.default, _extends({
162
- is: element || 'a'
163
- }, attributes, {
164
- inner_ref: this._ref
165
- }), children), showTooltip && _react.default.createElement(_Tooltip.default, {
166
- show_delay: 100,
167
- id: this._id + '-tooltip',
168
- target_element: this._ref,
169
- tooltip: tooltip
170
- }, props.title || props.target_blank_title));
171
- }
172
- }]);
173
-
174
- return AnchorInstance;
175
- }(_react.default.PureComponent);
176
-
177
- _defineProperty(AnchorInstance, "contextType", _Context.default);
178
-
179
- _defineProperty(AnchorInstance, "tagName", 'dnb-anchor');
180
-
181
- _defineProperty(AnchorInstance, "defaultProps", Anchor.defaultProps);
182
-
183
- process.env.NODE_ENV !== "production" ? AnchorInstance.propTypes = Anchor.propTypes : void 0;
184
94
  var _default = Anchor;
185
95
  exports.default = _default;
@@ -1,43 +1,26 @@
1
- import * as React from 'react';
2
- export type ElementIs =
3
- | ((...args: any[]) => any)
4
- | Object
5
- | React.ReactNode;
6
- export type ElementSkeleton = string | boolean;
7
- export type ElementSpace =
8
- | string
9
- | number
10
- | boolean
11
- | {
12
- top?: string | number | boolean;
13
- right?: string | number | boolean;
14
- bottom?: string | number | boolean;
15
- left?: string | number | boolean;
16
- };
17
- export type ElementTop = string | number | boolean;
18
- export type ElementRight = string | number | boolean;
19
- export type ElementBottom = string | number | boolean;
20
- export type ElementLeft = string | number | boolean;
21
- export type ElementClassName = string | Object | any[];
22
- export type ElementCss = string | Object;
23
-
24
1
  /**
25
- * NB: Do not change the docs (comments) in here. The docs are updated during build time by "generateTypes.js" and "fetchPropertiesFromDocs.js".
2
+ * This is mainly a Wrapper, to build more easily HTML Elements
3
+ *
26
4
  */
27
- export interface ElementProps extends React.HTMLProps<HTMLElement> {
28
- is?: ElementIs;
29
- skeleton?: ElementSkeleton;
30
- skeleton_method?: string;
31
- space?: ElementSpace;
32
- top?: ElementTop;
33
- right?: ElementRight;
34
- bottom?: ElementBottom;
35
- left?: ElementLeft;
36
- className?: ElementClassName;
37
- class?: string;
38
- internalClass?: string;
39
- css?: ElementCss;
40
- children?: React.ReactNode;
41
- }
42
- declare const Element: React.FC<ElementProps>;
5
+ import React from 'react';
6
+ import { SkeletonMethods } from '../components/skeleton/SkeletonHelper';
7
+ export declare type ElementProps = {
8
+ is: React.ReactNode;
9
+ skeleton?: boolean;
10
+ skeletonMethod?: SkeletonMethods;
11
+ class?: string;
12
+ className?: string;
13
+ internalClass?: string;
14
+ css?: string;
15
+ children?: React.ReactNode;
16
+ innerRef?: React.ForwardedRef<unknown>;
17
+ /** @deprecated use innerRef instead */
18
+ inner_ref?: React.ForwardedRef<unknown>;
19
+ /** @deprecated use skeletonMethod instead */
20
+ skeleton_method?: SkeletonMethods;
21
+ };
22
+ export declare const defaultProps: {
23
+ skeletonMethod: string;
24
+ };
25
+ declare const Element: React.ForwardRefExoticComponent<ElementProps & React.RefAttributes<unknown>>;
43
26
  export default Element;