@ebrains/react 0.9.2-beta → 1.0.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 (172) hide show
  1. package/README.md +3 -3
  2. package/analytics-d99780e3.esm.js +55 -0
  3. package/arrow-diagonal-black-8f0494c3.esm.js +3 -0
  4. package/arrow-right-9322ba8a.esm.js +5 -0
  5. package/bluesky-cc5edd2d.esm.js +14 -0
  6. package/bookmark-c200037c.esm.js +16 -0
  7. package/chevron-down-6144c823.esm.js +12 -0
  8. package/chevron-left-ca6c66e1.esm.js +11 -0
  9. package/chevron-right-b88ed2d4.esm.js +5 -0
  10. package/chevron-up-c66bd477.esm.js +12 -0
  11. package/close-87fc0d63.esm.js +5 -0
  12. package/color-primary-palette_6.entry.esm.js +778 -0
  13. package/components-section.entry.esm.js +171 -0
  14. package/copy-03b72cb6.esm.js +5 -0
  15. package/correct-use-of-colors.entry.esm.js +243 -0
  16. package/docs-palettes.entry.esm.js +29 -0
  17. package/docs-tokens.entry.esm.js +45 -0
  18. package/eds-accordion.entry.esm.js +132 -0
  19. package/eds-alert.entry.esm.js +112 -0
  20. package/eds-app-root.entry.esm.js +53 -0
  21. package/eds-avatar_34.entry.esm.js +3594 -0
  22. package/eds-card-project.entry.esm.js +210 -0
  23. package/eds-card-section.entry.esm.js +56 -0
  24. package/eds-card-tags.entry.esm.js +27 -0
  25. package/eds-card-tool.entry.esm.js +105 -0
  26. package/eds-code-block.entry.esm.js +2290 -0
  27. package/eds-cookies-preference.entry.esm.js +47 -0
  28. package/eds-feedback.entry.esm.js +87 -0
  29. package/eds-frame.entry.esm.js +112 -0
  30. package/eds-icon-arrow-diagonal.entry.esm.js +21 -0
  31. package/eds-icon-arrow-right.entry.esm.js +21 -0
  32. package/eds-icon-bluesky.entry.esm.js +21 -0
  33. package/eds-icon-bookmark.entry.esm.js +21 -0
  34. package/eds-icon-chevron-down.entry.esm.js +21 -0
  35. package/eds-icon-chevron-left.entry.esm.js +21 -0
  36. package/eds-icon-chevron-right.entry.esm.js +21 -0
  37. package/eds-icon-chevron-up.entry.esm.js +21 -0
  38. package/eds-icon-close.entry.esm.js +21 -0
  39. package/eds-icon-copy.entry.esm.js +21 -0
  40. package/eds-icon-eu.entry.esm.js +21 -0
  41. package/eds-icon-external.entry.esm.js +21 -0
  42. package/eds-icon-facebook.entry.esm.js +21 -0
  43. package/eds-icon-gitlab.entry.esm.js +21 -0
  44. package/eds-icon-linkedin.entry.esm.js +21 -0
  45. package/eds-icon-loader.entry.esm.js +21 -0
  46. package/eds-icon-mastodon.entry.esm.js +21 -0
  47. package/eds-icon-menu.entry.esm.js +21 -0
  48. package/eds-icon-minus.entry.esm.js +21 -0
  49. package/eds-icon-more.entry.esm.js +21 -0
  50. package/eds-icon-paper.entry.esm.js +21 -0
  51. package/eds-icon-plus.entry.esm.js +21 -0
  52. package/eds-icon-portal.entry.esm.js +21 -0
  53. package/eds-icon-private.entry.esm.js +21 -0
  54. package/eds-icon-public.entry.esm.js +21 -0
  55. package/eds-icon-search.entry.esm.js +21 -0
  56. package/eds-icon-star.entry.esm.js +21 -0
  57. package/eds-icon-success.entry.esm.js +21 -0
  58. package/eds-icon-thumbs-down.entry.esm.js +21 -0
  59. package/eds-icon-thumbs-up.entry.esm.js +21 -0
  60. package/eds-icon-tutorial.entry.esm.js +21 -0
  61. package/eds-icon-twitter.entry.esm.js +21 -0
  62. package/eds-icon-unknown.entry.esm.js +21 -0
  63. package/eds-icon-updown.entry.esm.js +21 -0
  64. package/eds-icon-user.entry.esm.js +21 -0
  65. package/eds-icon-youtube.entry.esm.js +21 -0
  66. package/eds-matomo-notice.entry.esm.js +159 -0
  67. package/eds-pagination_2.entry.esm.js +493 -0
  68. package/eds-progress-bar.entry.esm.js +52 -0
  69. package/eds-rating.entry.esm.js +79 -0
  70. package/eds-section-core_2.entry.esm.js +69 -0
  71. package/eds-spinner.entry.esm.js +67 -0
  72. package/eds-splash-screen.entry.esm.js +87 -0
  73. package/eds-switch.entry.esm.js +68 -0
  74. package/eds-timeline.entry.esm.js +117 -0
  75. package/eds-toast-manager.entry.esm.js +93 -0
  76. package/eds-toast.entry.esm.js +93 -0
  77. package/eds-trl.entry.esm.js +68 -0
  78. package/eu-9ddde93a.esm.js +30 -0
  79. package/facebook-9cb5c17f.esm.js +14 -0
  80. package/incorrect-use-of-colors.entry.esm.js +74 -0
  81. package/index-39c58238.esm.js +58 -0
  82. package/index.esm.d.ts +1 -0
  83. package/index.esm.js +4 -0
  84. package/index.esm2.js +4558 -0
  85. package/linkedin-e8650abb.esm.js +28 -0
  86. package/loader-c9628637.esm.js +30 -0
  87. package/logo-color-7f1fd803.esm.js +115 -0
  88. package/logo-color-margins-ff8ce71b.esm.js +118 -0
  89. package/logo-space.entry.esm.js +48 -0
  90. package/logo-variations-horizontal_2.entry.esm.js +123 -0
  91. package/logo-variations-tabs.entry.esm.js +29 -0
  92. package/logo-white-no-bg-f382f86f.esm.js +1021 -0
  93. package/logo-wrong-usage.entry.esm.js +101 -0
  94. package/mastodon-3703ec61.esm.js +14 -0
  95. package/menu-340ea948.esm.js +11 -0
  96. package/minus-b30a7c71.esm.js +11 -0
  97. package/mono-53f70232.esm.js +11 -0
  98. package/more-4449d549.esm.js +13 -0
  99. package/package.json +6 -2
  100. package/paper-8e74ea31.esm.js +15 -0
  101. package/plus-89c07be2.esm.js +12 -0
  102. package/portal-d6c8ce56.esm.js +18 -0
  103. package/private-1c25ff8e.esm.js +25 -0
  104. package/public-d4d8c585.esm.js +16 -0
  105. package/search-fbcd79c2.esm.js +12 -0
  106. package/sharedUtils-a550989c.esm.js +17 -0
  107. package/src/components.d.ts +40 -0
  108. package/src/generated/components.d.ts +38 -0
  109. package/src/generated/react-component-lib/attachProps.d.ts +16 -0
  110. package/src/generated/react-component-lib/case.d.ts +2 -0
  111. package/src/generated/react-component-lib/createComponent.d.ts +10 -0
  112. package/src/generated/react-component-lib/createOverlayComponent.d.ts +21 -0
  113. package/src/generated/react-component-lib/dev.d.ts +2 -0
  114. package/src/generated/react-component-lib/interfaces.d.ts +29 -0
  115. package/src/generated/react-component-lib/utils/attachProps.d.ts +16 -0
  116. package/src/generated/react-component-lib/utils/case.d.ts +2 -0
  117. package/src/generated/react-component-lib/utils/dev.d.ts +2 -0
  118. package/src/generated/react-component-lib/utils/index.d.ts +10 -0
  119. package/src/react-component-lib/attachProps.d.ts +16 -0
  120. package/src/react-component-lib/case.d.ts +2 -0
  121. package/src/react-component-lib/createComponent.d.ts +10 -0
  122. package/src/react-component-lib/createOverlayComponent.d.ts +21 -0
  123. package/src/react-component-lib/dev.d.ts +2 -0
  124. package/src/react-component-lib/interfaces.d.ts +29 -0
  125. package/src/react-component-lib/utils/attachProps.d.ts +16 -0
  126. package/src/react-component-lib/utils/case.d.ts +2 -0
  127. package/src/react-component-lib/utils/index.d.ts +10 -0
  128. package/star-0da9b5e9.esm.js +5 -0
  129. package/success-443809da.esm.js +18 -0
  130. package/svg-repository.entry.esm.js +337 -0
  131. package/thumbs-down-a18fd049.esm.js +5 -0
  132. package/thumbs-up-c19a71bc.esm.js +6 -0
  133. package/token-list_3.entry.esm.js +385 -0
  134. package/token-ratios.entry.esm.js +49 -0
  135. package/token-typography.entry.esm.js +267 -0
  136. package/tutotial-150ee1fd.esm.js +27 -0
  137. package/twitter-ac21b505.esm.js +14 -0
  138. package/unknown-ed01a24c.esm.js +22 -0
  139. package/up-and-down-d747abee.esm.js +12 -0
  140. package/user-71ebdc15.esm.js +16 -0
  141. package/youtube-efbfbdc4.esm.js +14 -0
  142. package/.babelrc +0 -12
  143. package/project.json +0 -10
  144. package/rollup.config.js +0 -43
  145. package/src/components.ts +0 -49
  146. package/src/generated/components.ts +0 -47
  147. package/src/generated/react-component-lib/attachProps.ts +0 -125
  148. package/src/generated/react-component-lib/case.ts +0 -7
  149. package/src/generated/react-component-lib/createComponent.tsx +0 -106
  150. package/src/generated/react-component-lib/createOverlayComponent.tsx +0 -142
  151. package/src/generated/react-component-lib/dev.ts +0 -14
  152. package/src/generated/react-component-lib/index.tsx +0 -50
  153. package/src/generated/react-component-lib/interfaces.ts +0 -34
  154. package/src/generated/react-component-lib/utils/attachProps.ts +0 -125
  155. package/src/generated/react-component-lib/utils/case.ts +0 -7
  156. package/src/generated/react-component-lib/utils/dev.ts +0 -14
  157. package/src/generated/react-component-lib/utils/index.tsx +0 -50
  158. package/src/react-component-lib/attachProps.ts +0 -125
  159. package/src/react-component-lib/case.ts +0 -7
  160. package/src/react-component-lib/createComponent.tsx +0 -106
  161. package/src/react-component-lib/createOverlayComponent.tsx +0 -142
  162. package/src/react-component-lib/dev.ts +0 -14
  163. package/src/react-component-lib/index.tsx +0 -50
  164. package/src/react-component-lib/interfaces.ts +0 -34
  165. package/src/react-component-lib/utils/attachProps.ts +0 -125
  166. package/src/react-component-lib/utils/case.ts +0 -7
  167. package/src/react-component-lib/utils/index.tsx +0 -50
  168. package/tsconfig.json +0 -17
  169. package/tsconfig.lib.json +0 -23
  170. /package/src/generated/react-component-lib/{index.ts → index.d.ts} +0 -0
  171. /package/src/{index.ts → index.d.ts} +0 -0
  172. /package/src/react-component-lib/{index.ts → index.d.ts} +0 -0
@@ -0,0 +1,21 @@
1
+ import { r as registerInstance, h } from './index.esm2.js';
2
+ import { m as more } from './more-4449d549.esm.js';
3
+ import 'react';
4
+ import 'react/jsx-runtime';
5
+ import 'react-dom';
6
+
7
+ const EdsIconMore = class {
8
+ constructor(hostRef) {
9
+ registerInstance(this, hostRef);
10
+ this.class = '';
11
+ }
12
+ render() {
13
+ return h("span", {
14
+ key: '546f5d7c76d57c07c34b6455cb1df4fea6c57302',
15
+ class: this.class,
16
+ innerHTML: more
17
+ });
18
+ }
19
+ };
20
+
21
+ export { EdsIconMore as eds_icon_more };
@@ -0,0 +1,21 @@
1
+ import { r as registerInstance, h } from './index.esm2.js';
2
+ import { p as paper } from './paper-8e74ea31.esm.js';
3
+ import 'react';
4
+ import 'react/jsx-runtime';
5
+ import 'react-dom';
6
+
7
+ const EdsIconPaper = class {
8
+ constructor(hostRef) {
9
+ registerInstance(this, hostRef);
10
+ this.class = '';
11
+ }
12
+ render() {
13
+ return h("span", {
14
+ key: 'e9baa8e9d467104fdeac600678b800787ef7d736',
15
+ class: this.class,
16
+ innerHTML: paper
17
+ });
18
+ }
19
+ };
20
+
21
+ export { EdsIconPaper as eds_icon_paper };
@@ -0,0 +1,21 @@
1
+ import { r as registerInstance, h } from './index.esm2.js';
2
+ import { p as plus } from './plus-89c07be2.esm.js';
3
+ import 'react';
4
+ import 'react/jsx-runtime';
5
+ import 'react-dom';
6
+
7
+ const EdsIconPlus = class {
8
+ constructor(hostRef) {
9
+ registerInstance(this, hostRef);
10
+ this.class = '';
11
+ }
12
+ render() {
13
+ return h("span", {
14
+ key: '7510fb2b948a83c216a375f2a84a16b10b38054e',
15
+ class: this.class,
16
+ innerHTML: plus
17
+ });
18
+ }
19
+ };
20
+
21
+ export { EdsIconPlus as eds_icon_plus };
@@ -0,0 +1,21 @@
1
+ import { r as registerInstance, h } from './index.esm2.js';
2
+ import { p as portal } from './portal-d6c8ce56.esm.js';
3
+ import 'react';
4
+ import 'react/jsx-runtime';
5
+ import 'react-dom';
6
+
7
+ const EdsIconPortal = class {
8
+ constructor(hostRef) {
9
+ registerInstance(this, hostRef);
10
+ this.class = '';
11
+ }
12
+ render() {
13
+ return h("span", {
14
+ key: 'c9f384bf790dd2eef9b84e757403106209f05c04',
15
+ class: this.class,
16
+ innerHTML: portal
17
+ });
18
+ }
19
+ };
20
+
21
+ export { EdsIconPortal as eds_icon_portal };
@@ -0,0 +1,21 @@
1
+ import { r as registerInstance, h } from './index.esm2.js';
2
+ import { p as privat } from './private-1c25ff8e.esm.js';
3
+ import 'react';
4
+ import 'react/jsx-runtime';
5
+ import 'react-dom';
6
+
7
+ const EdsIconPrivate = class {
8
+ constructor(hostRef) {
9
+ registerInstance(this, hostRef);
10
+ this.class = '';
11
+ }
12
+ render() {
13
+ return h("span", {
14
+ key: 'd03d51d5aee837edab83aa71cf82fd415a8c71c3',
15
+ class: this.class,
16
+ innerHTML: privat
17
+ });
18
+ }
19
+ };
20
+
21
+ export { EdsIconPrivate as eds_icon_private };
@@ -0,0 +1,21 @@
1
+ import { r as registerInstance, h } from './index.esm2.js';
2
+ import { p as pub } from './public-d4d8c585.esm.js';
3
+ import 'react';
4
+ import 'react/jsx-runtime';
5
+ import 'react-dom';
6
+
7
+ const EdsIconPublic = class {
8
+ constructor(hostRef) {
9
+ registerInstance(this, hostRef);
10
+ this.class = '';
11
+ }
12
+ render() {
13
+ return h("span", {
14
+ key: '94970e6d7f414cde04a3dae305f3dda43f477e55',
15
+ class: this.class,
16
+ innerHTML: pub
17
+ });
18
+ }
19
+ };
20
+
21
+ export { EdsIconPublic as eds_icon_public };
@@ -0,0 +1,21 @@
1
+ import { r as registerInstance, h } from './index.esm2.js';
2
+ import { s as search } from './search-fbcd79c2.esm.js';
3
+ import 'react';
4
+ import 'react/jsx-runtime';
5
+ import 'react-dom';
6
+
7
+ const EdsIconSearch = class {
8
+ constructor(hostRef) {
9
+ registerInstance(this, hostRef);
10
+ this.class = '';
11
+ }
12
+ render() {
13
+ return h("span", {
14
+ key: '2c35a35b31a988ffa690816a8699d2aac43dd916',
15
+ class: this.class,
16
+ innerHTML: search
17
+ });
18
+ }
19
+ };
20
+
21
+ export { EdsIconSearch as eds_icon_search };
@@ -0,0 +1,21 @@
1
+ import { r as registerInstance, h } from './index.esm2.js';
2
+ import { s as star } from './star-0da9b5e9.esm.js';
3
+ import 'react';
4
+ import 'react/jsx-runtime';
5
+ import 'react-dom';
6
+
7
+ const EdsIconStar = class {
8
+ constructor(hostRef) {
9
+ registerInstance(this, hostRef);
10
+ this.class = '';
11
+ }
12
+ render() {
13
+ return h("span", {
14
+ key: 'dc06f1a54b9542cb2c0165fb3bdff960ecd81cc0',
15
+ class: this.class,
16
+ innerHTML: star
17
+ });
18
+ }
19
+ };
20
+
21
+ export { EdsIconStar as eds_icon_star };
@@ -0,0 +1,21 @@
1
+ import { r as registerInstance, h } from './index.esm2.js';
2
+ import { s as success } from './success-443809da.esm.js';
3
+ import 'react';
4
+ import 'react/jsx-runtime';
5
+ import 'react-dom';
6
+
7
+ const EdsIconSuccess = class {
8
+ constructor(hostRef) {
9
+ registerInstance(this, hostRef);
10
+ this.class = '';
11
+ }
12
+ render() {
13
+ return h("span", {
14
+ key: '8b5d4cfeedf6d7e9bea48d7ba892527d484c858d',
15
+ class: this.class,
16
+ innerHTML: success
17
+ });
18
+ }
19
+ };
20
+
21
+ export { EdsIconSuccess as eds_icon_success };
@@ -0,0 +1,21 @@
1
+ import { r as registerInstance, h } from './index.esm2.js';
2
+ import { t as thumbsDown } from './thumbs-down-a18fd049.esm.js';
3
+ import 'react';
4
+ import 'react/jsx-runtime';
5
+ import 'react-dom';
6
+
7
+ const EdsIconThumbsDown = class {
8
+ constructor(hostRef) {
9
+ registerInstance(this, hostRef);
10
+ this.class = '';
11
+ }
12
+ render() {
13
+ return h("span", {
14
+ key: 'c60c3e5180cd900ce290448563fc476264ba1fe5',
15
+ class: this.class,
16
+ innerHTML: thumbsDown
17
+ });
18
+ }
19
+ };
20
+
21
+ export { EdsIconThumbsDown as eds_icon_thumbs_down };
@@ -0,0 +1,21 @@
1
+ import { r as registerInstance, h } from './index.esm2.js';
2
+ import { t as thumbsUp } from './thumbs-up-c19a71bc.esm.js';
3
+ import 'react';
4
+ import 'react/jsx-runtime';
5
+ import 'react-dom';
6
+
7
+ const EdsIconThumbsUp = class {
8
+ constructor(hostRef) {
9
+ registerInstance(this, hostRef);
10
+ this.class = '';
11
+ }
12
+ render() {
13
+ return h("span", {
14
+ key: 'eee2fdd0cdf1e9735e90f34c6bb090f3df67eb49',
15
+ class: this.class,
16
+ innerHTML: thumbsUp
17
+ });
18
+ }
19
+ };
20
+
21
+ export { EdsIconThumbsUp as eds_icon_thumbs_up };
@@ -0,0 +1,21 @@
1
+ import { r as registerInstance, h } from './index.esm2.js';
2
+ import { t as tutorial } from './tutotial-150ee1fd.esm.js';
3
+ import 'react';
4
+ import 'react/jsx-runtime';
5
+ import 'react-dom';
6
+
7
+ const EdsIconTutorial = class {
8
+ constructor(hostRef) {
9
+ registerInstance(this, hostRef);
10
+ this.class = '';
11
+ }
12
+ render() {
13
+ return h("span", {
14
+ key: '0e47e2af80487a28c96e8830dda102c23bff9e5c',
15
+ class: this.class,
16
+ innerHTML: tutorial
17
+ });
18
+ }
19
+ };
20
+
21
+ export { EdsIconTutorial as eds_icon_tutorial };
@@ -0,0 +1,21 @@
1
+ import { r as registerInstance, h } from './index.esm2.js';
2
+ import { t as twitter } from './twitter-ac21b505.esm.js';
3
+ import 'react';
4
+ import 'react/jsx-runtime';
5
+ import 'react-dom';
6
+
7
+ const EdsIconTwitter = class {
8
+ constructor(hostRef) {
9
+ registerInstance(this, hostRef);
10
+ this.class = '';
11
+ }
12
+ render() {
13
+ return h("span", {
14
+ key: '1a7ad8d7cbef70822ebda2f152d8b537df1eaf27',
15
+ class: this.class,
16
+ innerHTML: twitter
17
+ });
18
+ }
19
+ };
20
+
21
+ export { EdsIconTwitter as eds_icon_twitter };
@@ -0,0 +1,21 @@
1
+ import { r as registerInstance, h } from './index.esm2.js';
2
+ import { u as unknown } from './unknown-ed01a24c.esm.js';
3
+ import 'react';
4
+ import 'react/jsx-runtime';
5
+ import 'react-dom';
6
+
7
+ const EdsIconUnknown = class {
8
+ constructor(hostRef) {
9
+ registerInstance(this, hostRef);
10
+ this.class = '';
11
+ }
12
+ render() {
13
+ return h("span", {
14
+ key: 'a9145c4e133746c314a1ee34d36a5f19f3686565',
15
+ class: this.class,
16
+ innerHTML: unknown
17
+ });
18
+ }
19
+ };
20
+
21
+ export { EdsIconUnknown as eds_icon_unknown };
@@ -0,0 +1,21 @@
1
+ import { r as registerInstance, h } from './index.esm2.js';
2
+ import { u as upDonw } from './up-and-down-d747abee.esm.js';
3
+ import 'react';
4
+ import 'react/jsx-runtime';
5
+ import 'react-dom';
6
+
7
+ const EdsIconUpdown = class {
8
+ constructor(hostRef) {
9
+ registerInstance(this, hostRef);
10
+ this.class = '';
11
+ }
12
+ render() {
13
+ return h("span", {
14
+ key: 'b97da1b406718c7611d1e17d7a9c6b4670600740',
15
+ class: this.class,
16
+ innerHTML: upDonw
17
+ });
18
+ }
19
+ };
20
+
21
+ export { EdsIconUpdown as eds_icon_updown };
@@ -0,0 +1,21 @@
1
+ import { r as registerInstance, h } from './index.esm2.js';
2
+ import { u as user } from './user-71ebdc15.esm.js';
3
+ import 'react';
4
+ import 'react/jsx-runtime';
5
+ import 'react-dom';
6
+
7
+ const EdsIconUser = class {
8
+ constructor(hostRef) {
9
+ registerInstance(this, hostRef);
10
+ this.class = '';
11
+ }
12
+ render() {
13
+ return h("span", {
14
+ key: '4322703c9e449819dc30946118893d365fa20124',
15
+ class: this.class,
16
+ innerHTML: user
17
+ });
18
+ }
19
+ };
20
+
21
+ export { EdsIconUser as eds_icon_user };
@@ -0,0 +1,21 @@
1
+ import { r as registerInstance, h } from './index.esm2.js';
2
+ import { y as youtube } from './youtube-efbfbdc4.esm.js';
3
+ import 'react';
4
+ import 'react/jsx-runtime';
5
+ import 'react-dom';
6
+
7
+ const EdsIconYoutube = class {
8
+ constructor(hostRef) {
9
+ registerInstance(this, hostRef);
10
+ this.class = '';
11
+ }
12
+ render() {
13
+ return h("span", {
14
+ key: '2236f8f5ede15d7eef54f2fd4fe6ca81c996166f',
15
+ class: this.class,
16
+ innerHTML: youtube
17
+ });
18
+ }
19
+ };
20
+
21
+ export { EdsIconYoutube as eds_icon_youtube };
@@ -0,0 +1,159 @@
1
+ import { r as registerInstance, c as createEvent, h, g as getElement } from './index.esm2.js';
2
+ import { m as matomoOptIn, a as matomoOptOut } from './analytics-d99780e3.esm.js';
3
+ import 'react';
4
+ import 'react/jsx-runtime';
5
+ import 'react-dom';
6
+
7
+ const edsMatomoNoticeCss = ".fixed{position:fixed}.absolute{position:absolute}.w-full{width:100%}.bottom-0{bottom:0rem}.bottom-4{bottom:0.25rem}.p-4{padding:0.25rem}.p-6{padding:0.375rem}.p-8{padding:0.5rem}.z-10{z-index:10}.z-\\[999999\\]{z-index:999999}.left-0{left:0rem}.left-1\\/2{left:50%}.grow{flex-grow:1}.-translate-x-1\\/2{--tw-translate-x:-50%;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\\/2{--tw-translate-y:-50%;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.flex{display:flex}.gap-12{gap:0.75rem}.gap-20{gap:1.25rem}.gap-4{gap:0.25rem}@media (min-width: 750px){.md\\:left-1\\/2{left:50%}.md\\:flex{display:flex}.md\\:hidden{display:none}.md\\:-translate-x-1\\/2{--tw-translate-x:-50%;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.md\\:-translate-y-1\\/2{--tw-translate-y:-50%;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}}";
8
+ const EdsMatomoNoticeStyle0 = edsMatomoNoticeCss;
9
+ const EdsMatomoNotice = class {
10
+ constructor(hostRef) {
11
+ registerInstance(this, hostRef);
12
+ this.consent = createEvent(this, "consent", 7);
13
+ this.heading = 'Analytics Consent';
14
+ this.description = "We use anonymous analytics to improve our services. No data is collected unless you give your consent. If you don't wish to send data right now, you can always re-enable analytics later by clicking the Cookies Preference button in the footer. However, by opting in today, you're joining a community that shapes our product's future—all while keeping your data completely anonymous.";
15
+ this.optOutMessage = "You are already part of our community, and your anonymous data helps shape our product's future! Rest assured, your privacy is fully protected.";
16
+ this.forceShow = false;
17
+ this.showNotice = true;
18
+ }
19
+ /**
20
+ * Listens for global custom events to open the matomo-consent.
21
+ */
22
+ toggleCookiesConsent() {
23
+ this.showNotice = !this.showNotice;
24
+ }
25
+ /**
26
+ * Checks if the consent cookie exists.
27
+ */
28
+ hasCookieConsent() {
29
+ return !!document.cookie.split('; ').find(row => row.startsWith('mtm_consent='));
30
+ }
31
+ /**
32
+ * Checks if the user has opted out after has opted in.
33
+ */
34
+ optedOut() {
35
+ return !!document.cookie.split('; ').find(row => row.startsWith('mtm_consent_removed'));
36
+ }
37
+ /**
38
+ * Generate a unique storage key based on appId or the app's domain.
39
+ */
40
+ getStorageKey() {
41
+ return `${window.location.host}-matomo-deferred`;
42
+ }
43
+ /**
44
+ * Check cookies and sessionStorage (unless forceShow is true) to decide if the notice should be shown.
45
+ */
46
+ componentWillLoad() {
47
+ // If a decision has been made previously (opted in or out), don't show the notice.
48
+ const consentGiven = localStorage.getItem(`${window.location.host}-matomo-consent-given`);
49
+ if (consentGiven === 'out' || this.optedOut()) {
50
+ this.showNotice = false;
51
+ return;
52
+ }
53
+ if (this.forceShow) {
54
+ // If forceShow is true, always show the notice
55
+ this.showNotice = true;
56
+ } else {
57
+ // If user has already consented, hide the notice
58
+ // eslint-disable-next-line
59
+ if (this.hasCookieConsent()) {
60
+ this.showNotice = false;
61
+ } else {
62
+ // Otherwise check if user deferred in this session
63
+ const sessionDeferred = sessionStorage.getItem(this.getStorageKey());
64
+ this.showNotice = !sessionDeferred;
65
+ }
66
+ }
67
+ }
68
+ componentDidLoad() {
69
+ const btns = this.el.shadowRoot.querySelectorAll('eds-button');
70
+ btns.forEach(b => {
71
+ this.emitContext(b);
72
+ });
73
+ }
74
+ emitContext(linkElement) {
75
+ const event = new CustomEvent('parentContext', {
76
+ detail: {
77
+ componentName: this.el.tagName.toLowerCase(),
78
+ identifier: null
79
+ }
80
+ });
81
+ linkElement.dispatchEvent(event);
82
+ }
83
+ optInAnalytics() {
84
+ matomoOptIn();
85
+ localStorage.removeItem(`${window.location.host}-matomo-consent-given`);
86
+ this.hideNotice();
87
+ this.consent.emit('in');
88
+ }
89
+ optOutAnalytics() {
90
+ matomoOptOut();
91
+ this.hideNotice();
92
+ this.consent.emit('out');
93
+ }
94
+ noThanks() {
95
+ matomoOptOut();
96
+ localStorage.setItem(`${window.location.host}-matomo-consent-given`, 'out');
97
+ this.hideNotice();
98
+ this.consent.emit('out');
99
+ }
100
+ /*private deferDecision() {
101
+ sessionStorage.setItem(this.getStorageKey(), 'true');
102
+ this.hideNotice();
103
+ this.consent.emit('defer');
104
+ }*/
105
+ keepMeIn() {
106
+ this.hideNotice();
107
+ }
108
+ hideNotice() {
109
+ this.showNotice = false;
110
+ }
111
+ render() {
112
+ if (!this.showNotice) {
113
+ return null;
114
+ }
115
+ return h("div", {
116
+ class: "fixed bottom-0 p-8 z-[999999] grow md:left-1/2 md:-translate-x-1/2 md:-translate-y-1/2 justify-center"
117
+ }, h("eds-accordion", {
118
+ title: this.heading,
119
+ description: this.hasCookieConsent() ? this.optOutMessage : this.description,
120
+ switchBg: true,
121
+ expanded: true
122
+ }, this.hasCookieConsent() ? h("div", {
123
+ class: "flex items-center gap-4"
124
+ }, this.optedOut() ? h("eds-button", {
125
+ intent: "primary",
126
+ label: "Opt me in again",
127
+ "aria-label": "Opt me in again",
128
+ onClick: () => this.optInAnalytics()
129
+ }) : h("eds-button", {
130
+ intent: "primary",
131
+ label: "Keep Me In",
132
+ "aria-label": "Keep Me In",
133
+ onClick: () => this.keepMeIn()
134
+ }), h("eds-button", {
135
+ intent: "ghostInverse",
136
+ label: "Opt-out",
137
+ "aria-label": "Opt-out from analytics",
138
+ onClick: () => this.optOutAnalytics()
139
+ })) : h("div", {
140
+ class: "flex items-center gap-4"
141
+ }, h("eds-button", {
142
+ intent: "primary",
143
+ label: "I agree",
144
+ "aria-label": "Opt-in for analytics",
145
+ onClick: () => this.optInAnalytics()
146
+ }), h("eds-button", {
147
+ intent: "ghost",
148
+ label: "No, thanks",
149
+ "aria-label": "Opt-out from analytics",
150
+ onClick: () => this.noThanks()
151
+ }))));
152
+ }
153
+ get el() {
154
+ return getElement(this);
155
+ }
156
+ };
157
+ EdsMatomoNotice.style = EdsMatomoNoticeStyle0;
158
+
159
+ export { EdsMatomoNotice as eds_matomo_notice };