@ebrains/react 0.5.0-alpha.0 → 0.7.0-alpha.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 (89) hide show
  1. package/{analytics-1cde8e4a.esm.js → analytics-44b1416b.esm.js} +9 -1
  2. package/color-primary-palette_6.entry.esm.js +106 -106
  3. package/correct-use-of-colors.entry.esm.js +33 -33
  4. package/eds-accordion_22.entry.esm.js +269 -0
  5. package/eds-alert.entry.esm.js +104 -0
  6. package/eds-app-root.entry.esm.js +53 -0
  7. package/eds-avatar_4.entry.esm.js +2 -10
  8. package/eds-breadcrumb.entry.esm.js +171 -0
  9. package/eds-card-generic.entry.esm.js +7 -17
  10. package/eds-card-project.entry.esm.js +1 -1
  11. package/eds-card-section.entry.esm.js +8 -22
  12. package/eds-card-tool.entry.esm.js +1 -1
  13. package/eds-components-section.entry.esm.js +1 -1
  14. package/eds-cookies-preference.entry.esm.js +47 -0
  15. package/eds-docs-palettes.entry.esm.js +1 -1
  16. package/eds-docs-tokens.entry.esm.js +1 -1
  17. package/{eds-dropdown_2.entry.esm.js → eds-dropdown.entry.esm.js} +20 -99
  18. package/eds-feedback.entry.esm.js +82 -0
  19. package/eds-form.entry.esm.js +254 -254
  20. package/eds-frame.entry.esm.js +34 -33
  21. package/eds-icon-arrow-diagonal.entry.esm.js +1 -1
  22. package/eds-icon-arrow-right.entry.esm.js +1 -1
  23. package/eds-icon-bluesky.entry.esm.js +1 -1
  24. package/eds-icon-chevron-down.entry.esm.js +1 -1
  25. package/eds-icon-chevron-left.entry.esm.js +1 -1
  26. package/eds-icon-chevron-right.entry.esm.js +1 -1
  27. package/eds-icon-chevron-up.entry.esm.js +1 -1
  28. package/eds-icon-close.entry.esm.js +1 -1
  29. package/eds-icon-copy.entry.esm.js +1 -1
  30. package/eds-icon-eu.entry.esm.js +1 -1
  31. package/eds-icon-facebook.entry.esm.js +1 -1
  32. package/eds-icon-gitlab.entry.esm.js +1 -1
  33. package/eds-icon-linkedin.entry.esm.js +1 -1
  34. package/eds-icon-loader.entry.esm.js +1 -1
  35. package/eds-icon-mastodon.entry.esm.js +1 -1
  36. package/eds-icon-menu.entry.esm.js +1 -1
  37. package/eds-icon-more.entry.esm.js +1 -1
  38. package/eds-icon-search.entry.esm.js +1 -1
  39. package/eds-icon-star.entry.esm.js +21 -0
  40. package/eds-icon-success.entry.esm.js +1 -1
  41. package/eds-icon-thumbs-down.entry.esm.js +21 -0
  42. package/eds-icon-thumbs-up.entry.esm.js +21 -0
  43. package/eds-icon-twitter.entry.esm.js +1 -1
  44. package/eds-icon-user.entry.esm.js +1 -1
  45. package/eds-icon-youtube.entry.esm.js +1 -1
  46. package/{keycloak-d502ec16.esm.js → eds-login_2.entry.esm.js} +172 -1
  47. package/eds-logo-variations.entry.esm.js +1 -1
  48. package/eds-modal.entry.esm.js +23 -10
  49. package/eds-progress-bar.entry.esm.js +2 -2
  50. package/eds-rating.entry.esm.js +79 -0
  51. package/eds-section-core_2.entry.esm.js +5 -5
  52. package/eds-spinner.entry.esm.js +67 -0
  53. package/eds-steps.entry.esm.js +89 -0
  54. package/eds-svg-repository.entry.esm.js +8 -2
  55. package/eds-switch.entry.esm.js +58 -0
  56. package/eds-tabs.entry.esm.js +15 -27
  57. package/eds-timeline.entry.esm.js +6 -23
  58. package/eds-toast-manager.entry.esm.js +62 -0
  59. package/eds-toast.entry.esm.js +92 -0
  60. package/eds-tooltip.entry.esm.js +4 -4
  61. package/eds-trl.entry.esm.js +2 -2
  62. package/eds-user.entry.esm.js +64 -87
  63. package/eds-vertical-stepper.entry.esm.js +5 -5
  64. package/formUtils-ac68474d.esm.js +247 -0
  65. package/incorrect-use-of-colors.entry.esm.js +7 -7
  66. package/index.esm.js +1 -1
  67. package/index.esm2.js +51 -27
  68. package/logo-space.entry.esm.js +4 -4
  69. package/logo-variations-horizontal_2.entry.esm.js +26 -26
  70. package/logo-wrong-usage.entry.esm.js +37 -37
  71. package/package.json +1 -1
  72. package/sharedUtils-a550989c.esm.js +17 -0
  73. package/src/components.d.ts +4 -1
  74. package/star-0da9b5e9.esm.js +5 -0
  75. package/thumbs-down-a18fd049.esm.js +5 -0
  76. package/thumbs-up-c19a71bc.esm.js +6 -0
  77. package/token-list_3.entry.esm.js +5 -5
  78. package/token-ratios.entry.esm.js +3 -3
  79. package/token-spacing.entry.esm.js +26 -26
  80. package/token-typography.entry.esm.js +2 -2
  81. package/eds-accordion.entry.esm.js +0 -126
  82. package/eds-alert_17.entry.esm.js +0 -187
  83. package/eds-input_7.entry.esm.js +0 -529
  84. package/eds-login.entry.esm.js +0 -97
  85. package/eds-matomo-notice.entry.esm.js +0 -128
  86. package/eds-navigator.entry.esm.js +0 -72
  87. package/eds-pagination_2.entry.esm.js +0 -472
  88. package/eds-tab.entry.esm.js +0 -41
  89. package/eds-tabs-content.entry.esm.js +0 -145
@@ -1,4 +1,5 @@
1
1
  import { r as registerInstance, h, g as getElement } from './index.esm2.js';
2
+ import { p as parseData } from './sharedUtils-a550989c.esm.js';
2
3
  import 'react';
3
4
  import 'react/jsx-runtime';
4
5
  import 'react-dom';
@@ -11,25 +12,7 @@ const EdsTimeline = class {
11
12
  this.parsedEvents = [];
12
13
  }
13
14
  parseEvents(newValue) {
14
- let parsed;
15
- // If events is a string, try to parse it
16
- if (typeof newValue === 'string') {
17
- try {
18
- parsed = JSON.parse(newValue);
19
- } catch (e) {
20
- // eslint-disable-next-line
21
- console.error('Error parsing timeline events JSON', e);
22
- parsed = [];
23
- }
24
- }
25
- // If events is already an array, use it directly
26
- else if (Array.isArray(newValue)) {
27
- parsed = newValue;
28
- }
29
- // Otherwise, default to an empty array
30
- else {
31
- parsed = [];
32
- }
15
+ const parsed = parseData(newValue);
33
16
  // Map over the parsed events to ensure boolean conversion for "completed"
34
17
  this.parsedEvents = Array.isArray(parsed) ? parsed.map(event => Object.assign(Object.assign({}, event), {
35
18
  completed: event.completed === 'true' || event.completed === true
@@ -61,16 +44,16 @@ const EdsTimeline = class {
61
44
  }
62
45
  render() {
63
46
  return h("div", {
64
- key: '1ba4a93ce518b52f5821af75ae0587c44db92c6d',
47
+ key: '6d6eaccb876780be7c9e443a8d8a443fc0b4f779',
65
48
  class: "max-w-sidebar mx-auto px-4 py-8"
66
49
  }, h("div", {
67
- key: '3e019420ddd4bfab7800567c7130299ea47205c6',
50
+ key: '122a6273fbd448a026fee899159872366cc01033',
68
51
  class: "relative"
69
52
  }, h("div", {
70
- key: 'df99ce8fb08232c46449d7485dd7cffcd04b64d6',
53
+ key: 'bbf7359dacf3eb74f096d8c3e59344a6ceb67e8e',
71
54
  class: "absolute w-4 left-1/2 transform -translate-x-1/2 bg-strong h-full z-0"
72
55
  }), h("div", {
73
- key: '1b52694d2e8c3656910c02680aa8ce2e78b02997',
56
+ key: 'e86895cccaf84f269a4ae0117deb5ef8bfa6e501',
74
57
  class: "space-y-16"
75
58
  }, this.parsedEvents.map((event, index) => h("div", {
76
59
  class: "relative flex"
@@ -0,0 +1,62 @@
1
+ import { r as registerInstance, h, g as getElement } from './index.esm2.js';
2
+ import { t as toast } from './toastManager-d9eee791.esm.js';
3
+ import 'react';
4
+ import 'react/jsx-runtime';
5
+ import 'react-dom';
6
+
7
+ const edsToastManagerCss = ".toast-container{position:fixed;top:1rem;left:50%;transform:translateX(-50%);z-index:99999;display:flex;flex-direction:column;align-items:center;gap:1rem;width:100%;max-width:36rem;}.toast-wrapper{width:100%;padding:0 1rem;}.eds-toast{box-shadow:0px 4px 6px rgba(0, 0, 0, 0.1);border-radius:0.5rem;animation:fade-in 0.3s ease-out;}@keyframes fade-in{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}";
8
+ const EdsToastManagerStyle0 = edsToastManagerCss;
9
+ const EdsToastManager = class {
10
+ constructor(hostRef) {
11
+ registerInstance(this, hostRef);
12
+ this.toastId = 0;
13
+ this.toasts = [];
14
+ }
15
+ connectedCallback() {
16
+ // Initialize the ToastManager singleton with this element
17
+ toast.init(this.hostElement);
18
+ // Listen for custom events
19
+ this.hostElement.addEventListener('show-toast', event => {
20
+ const {
21
+ message,
22
+ intent
23
+ } = event.detail;
24
+ this.addToast(message, intent);
25
+ });
26
+ }
27
+ /**
28
+ * Adds a new toast.
29
+ */
30
+ addToast(message, intent) {
31
+ const id = this.toastId++;
32
+ this.toasts = [...this.toasts, {
33
+ id,
34
+ message,
35
+ intent
36
+ }];
37
+ }
38
+ /**
39
+ * Removes a toast by ID.
40
+ */
41
+ removeToast(id) {
42
+ this.toasts = this.toasts.filter(t => t.id !== id);
43
+ }
44
+ render() {
45
+ return h("div", {
46
+ key: 'e01e6cf0931155f70153ba5de054c1174e364397',
47
+ class: "toast-container"
48
+ }, this.toasts.map(t => h("div", {
49
+ key: t.id
50
+ }, h("eds-toast", {
51
+ message: t.message,
52
+ intent: t.intent,
53
+ onClick: () => this.removeToast(t.id)
54
+ }))));
55
+ }
56
+ get hostElement() {
57
+ return getElement(this);
58
+ }
59
+ };
60
+ EdsToastManager.style = EdsToastManagerStyle0;
61
+
62
+ export { EdsToastManager as eds_toast_manager };
@@ -0,0 +1,92 @@
1
+ import { r as registerInstance, h, g as getElement } from './index.esm2.js';
2
+ import { c as cva } from './index-39c58238.esm.js';
3
+ import 'react';
4
+ import 'react/jsx-runtime';
5
+ import 'react-dom';
6
+
7
+ const edsToastCss = ".relative{position:relative}.right-4{right:0.25rem}.bottom-4{bottom:0.25rem}.w-auto{width:auto}.flex{display:flex}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-4{gap:0.25rem}.f-ui-01{font-family:var(--f-ui-01-fontFamily);font-weight:var(--f-ui-01-fontWeight);font-size:var(--f-ui-01-fontSize);line-height:var(--f-ui-01-lineHeight);letter-spacing:var(--f-ui-01-letterSpacing)}.ml-8{margin-left:0.5rem}.p-12{padding:0.75rem}.rounded-lg{border-radius:16px}.shadow-md{--tw-shadow:0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),\n 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.bg-dark{background-color:var(--grey-300)}.bg-success{background-color:var(--green-200)}.bg-error{background-color:var(--red-200)}.bg-warning{background-color:var(--yellow-200)}.text-light{color:var(--grey-700)}.text-current{color:currentColor}.text-default{color:var(--black)}";
8
+ const EdsToastStyle0 = edsToastCss;
9
+ const toastStyles = cva(['relative right-4 bottom-4 w-auto p-12 rounded-lg shadow-md'], {
10
+ variants: {
11
+ intent: {
12
+ default: 'bg-dark text-light',
13
+ success: 'bg-success text-dark',
14
+ error: 'bg-error text-light',
15
+ warning: 'bg-warning text-dark'
16
+ }
17
+ },
18
+ defaultVariants: {
19
+ intent: 'default'
20
+ }
21
+ });
22
+ const EdsToast = class {
23
+ constructor(hostRef) {
24
+ registerInstance(this, hostRef);
25
+ /**
26
+ * Dismisses the toast.
27
+ */
28
+ this.dismissToast = () => {
29
+ this.visible = false;
30
+ };
31
+ this.message = undefined;
32
+ this.intent = 'default';
33
+ this.duration = 5000;
34
+ this.visible = true;
35
+ }
36
+ componentDidLoad() {
37
+ const btn = this.el.shadowRoot.querySelector('eds-button');
38
+ this.emitContext(btn);
39
+ }
40
+ /**
41
+ * Emits a custom event called `parentContext` for a given button element.
42
+ * This event provides context information about the toast component.
43
+ *
44
+ * @param btnElement - The link element to which the event will be dispatched.
45
+ */
46
+ emitContext(btnElement) {
47
+ const event = new CustomEvent('parentContext', {
48
+ detail: {
49
+ componentName: this.el.tagName.toLowerCase(),
50
+ identifier: null
51
+ }
52
+ });
53
+ btnElement.dispatchEvent(event);
54
+ }
55
+ connectedCallback() {
56
+ // Auto-dismiss the toast after the specified duration
57
+ this.dismissTimeout = setTimeout(this.dismissToast, this.duration);
58
+ }
59
+ disconnectedCallback() {
60
+ // Clear the timeout when the component is removed
61
+ clearTimeout(this.dismissTimeout);
62
+ }
63
+ render() {
64
+ if (!this.visible) {
65
+ return null;
66
+ }
67
+ const classes = toastStyles({
68
+ intent: this.intent
69
+ });
70
+ return h("div", {
71
+ class: classes,
72
+ role: "alert",
73
+ "aria-live": "assertive"
74
+ }, h("div", {
75
+ class: "flex items-center justify-between gap-4"
76
+ }, h("span", {
77
+ class: "f-ui-01"
78
+ }, this.message), h("eds-button", {
79
+ intent: "tertiary",
80
+ icon: "close",
81
+ "aria-label": "Close Toast",
82
+ onClick: () => this.dismissToast(),
83
+ "extra-class": "ml-8"
84
+ })));
85
+ }
86
+ get el() {
87
+ return getElement(this);
88
+ }
89
+ };
90
+ EdsToast.style = EdsToastStyle0;
91
+
92
+ export { EdsToast as eds_toast };
@@ -1,5 +1,5 @@
1
1
  import { r as registerInstance, h, g as getElement } from './index.esm2.js';
2
- import { s as sendAnalytics } from './analytics-1cde8e4a.esm.js';
2
+ import { s as sendAnalytics } from './analytics-44b1416b.esm.js';
3
3
  import 'react';
4
4
  import 'react/jsx-runtime';
5
5
  import 'react-dom';
@@ -101,12 +101,12 @@ const EdsTooltip = class {
101
101
  }
102
102
  render() {
103
103
  return h("div", {
104
- key: '1635b034319df4827a62ed58267d81db277ad19d',
104
+ key: '0d00052874b171639b9185412d8a3a9f917e6df5',
105
105
  class: "relative"
106
106
  }, h("slot", {
107
- key: '6cdfd0f6d456b984464c5091a2829cdba69ba895'
107
+ key: '2cb9cdc51248c3c6cedcaf8ee113530f2675b870'
108
108
  }), this.isVisible && this.isPositioned && this.content && h("div", {
109
- key: '7e736731dc700e0273fdfe15202426d2db086aef',
109
+ key: 'af54333ca0c8cf44dcc2b779a7378a9ecf256877',
110
110
  class: "rounded-xs bg-strongest text-inverse f-ui-03-light pointer-events-none absolute z-10 whitespace-nowrap p-6",
111
111
  role: "tooltip",
112
112
  style: {
@@ -51,10 +51,10 @@ const EdsTrl = class {
51
51
  }
52
52
  };
53
53
  return h("div", {
54
- key: 'a329a001d6275fcfe7df9bddf83bd289effe4151',
54
+ key: 'bd46e540a0dd3c09a91d1cff266b94a2bf9fba95',
55
55
  class: "container mx-auto px-4 py-8"
56
56
  }, h("eds-table", {
57
- key: '93aebfd840b16416789b15eec0daa16d9126aa9f',
57
+ key: 'd3ef10fc7e5ccd6029d1e62c2bb78765e78c8a13',
58
58
  data: JSON.stringify(tableData),
59
59
  config: JSON.stringify(tableConfig),
60
60
  "rows-per-page": "2",
@@ -1,6 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h, g as getElement } from './index.esm2.js';
2
- import { l as login, a as logout, c as checkServerAvailability, i as initKeycloak, b as isAuthenticated, g as getUser } from './keycloak-d502ec16.esm.js';
3
- import { t as toast } from './toastManager-d9eee791.esm.js';
1
+ import { r as registerInstance, h, g as getElement } from './index.esm2.js';
4
2
  import 'react';
5
3
  import 'react/jsx-runtime';
6
4
  import 'react-dom';
@@ -8,107 +6,86 @@ import 'react-dom';
8
6
  const EdsUser = class {
9
7
  constructor(hostRef) {
10
8
  registerInstance(this, hostRef);
11
- this.authStatusChanged = createEvent(this, "authStatusChanged", 7);
12
- /**
13
- * Handles user login by invoking the Keycloak `login` function.
14
- * Only triggers login if the user is not already authenticated.
15
- */
16
- this.handleLogin = () => {
17
- if (!this.authenticated) {
18
- try {
19
- login();
20
- } catch (error) {
21
- toast.show(error.message, 'error');
22
- }
23
- }
24
- };
25
- /**
26
- * Handles user logout by invoking the Keycloak `logout` function.
27
- * Resets the `authenticated` state to `false` after logout.
28
- */
29
- this.handleLogout = async () => {
30
- try {
31
- await logout();
32
- } catch (error) {
33
- toast.show(error.message, 'error');
34
- }
35
- this.authenticated = false;
36
- this.user = null;
37
- };
38
- this.keycloakUrl = undefined;
39
- this.keycloakRealm = undefined;
40
- this.keycloakClientId = undefined;
41
- this.user = null;
42
- this.authenticated = false;
43
- this.username = '';
44
- this.serverAvailable = false;
9
+ this.user = undefined;
45
10
  }
46
11
  /**
47
12
  * Lifecycle method that runs when the component is about to load.
48
13
  * It initializes authentication by calling the `initAuth` method.
49
14
  */
50
- async componentWillLoad() {
51
- // Check if required props are provided (optional check)
52
- if (!this.keycloakUrl || !this.keycloakRealm || !this.keycloakClientId) {
53
- // eslint-disable-next-line
54
- console.error('Keycloak configuration props are missing.');
55
- return;
56
- }
57
- this.serverAvailable = await checkServerAvailability(`${this.keycloakUrl}/realms/${this.keycloakRealm}`);
58
- if (!this.serverAvailable) {
59
- toast.show('Keycloak server is unavailable.', 'error');
60
- return; // Do not proceed further
61
- }
62
- await this.initAuth();
63
- }
64
- /**
65
- * Initializes the Keycloak authentication by configuring Keycloak with the provided props.
66
- * Sets the `authenticated` state and `user` data if the user is authenticated.
67
- * Emits `authStatusChanged` event with the authentication status.
68
- */
69
- async initAuth() {
70
- try {
71
- await initKeycloak({
72
- url: this.keycloakUrl,
73
- realm: this.keycloakRealm,
74
- clientId: this.keycloakClientId
75
- }, true);
76
- if (isAuthenticated()) {
77
- this.user = getUser();
78
- this.authenticated = true;
79
- this.authStatusChanged.emit({
80
- authenticated: this.authenticated,
81
- user: this.user
82
- }); // Emit auth status change
83
- }
84
- } catch (error) {
85
- toast.show(error.message, 'error');
86
- }
15
+ async componentWillLoad() {}
16
+ get initials() {
17
+ var _a, _b, _c, _d, _e, _f, _g;
18
+ const initials = `${((_b = (_a = this.user) === null || _a === void 0 ? void 0 : _a.given_name) === null || _b === void 0 ? void 0 : _b.charAt(0)) || ''}${((_d = (_c = this.user) === null || _c === void 0 ? void 0 : _c.family_name) === null || _d === void 0 ? void 0 : _d.charAt(0)) || ''}`.toUpperCase();
19
+ return initials || ((_g = (_f = (_e = this.user) === null || _e === void 0 ? void 0 : _e.name) === null || _f === void 0 ? void 0 : _f.charAt(0)) === null || _g === void 0 ? void 0 : _g.toUpperCase()) || '';
87
20
  }
88
21
  render() {
89
- var _a;
22
+ var _a, _b, _c, _d, _e, _f;
90
23
  return h("div", {
91
- key: '22ee744979511dd2f8a1e1a15bb99215eadd535b',
24
+ key: '68bc37b43d006a35e088a647d41b2257fbef25a7',
92
25
  class: "block"
93
- }, !this.authenticated ? h("eds-button", {
94
- label: "Login",
95
- intent: "primary",
96
- onClick: this.handleLogin,
97
- "extra-class": "text-default"
98
- }) : h("div", {
26
+ }, h("div", {
27
+ key: '3f4badcb645238de9ac8aaad78e1c132407f5b0d',
99
28
  class: "flex items-center"
100
29
  }, h("eds-dropdown", {
101
- label: `Welcome, ${(_a = this.user) === null || _a === void 0 ? void 0 : _a.username}`,
30
+ key: '7f065f82c5845fd0ebc9c6b465ac56a695a99b77',
31
+ label: `Welcome, ${(_a = this.user) === null || _a === void 0 ? void 0 : _a.preferred_username}`,
102
32
  intent: "tertiary",
103
33
  "aria-label": "User Menu",
104
34
  "dropdown-pos": "right",
105
35
  "dropdown-offset": "false",
106
36
  icon: "chevron-down",
107
37
  class: "text-default"
108
- }, h("eds-user-modal", {
109
- user: JSON.stringify(this.user),
110
- onLogout: this.handleLogout.bind(this)
111
- }))));
38
+ }, h("div", {
39
+ key: '2b1e9279c8d4feae16bf64c15837b61b945af447',
40
+ class: "min-w-[280px] p-8"
41
+ }, h("div", {
42
+ key: 'efa9aef50bc1eb4961e53a89f6e07cc5ff78d67b',
43
+ class: "flex gap-x-16 pb-16 border-b-2 border-softer"
44
+ }, h("eds-avatar", {
45
+ key: '2b78a6768ecb101138ab742d812d407e1b4fdd89',
46
+ "first-name": (_b = this.user) === null || _b === void 0 ? void 0 : _b.given_name,
47
+ "last-name": (_c = this.user) === null || _c === void 0 ? void 0 : _c.family_name,
48
+ initials: this.initials,
49
+ color: "grey",
50
+ rounded: true,
51
+ "initials-strong": true
52
+ }), h("div", {
53
+ key: 'd538dfe8df5e8af92fa204493b8b59b0d0e9f61a',
54
+ class: "max-w-full"
55
+ }, ((_d = this.user) === null || _d === void 0 ? void 0 : _d.name) && h("p", {
56
+ key: 'a644c3cdda0ce7bf2f62438a3866692f4222efeb',
57
+ class: "f-ui-01 text-default w-full text-ellipsis"
58
+ }, this.user.name), ((_e = this.user) === null || _e === void 0 ? void 0 : _e.preferred_username) && h("p", {
59
+ key: '2a6cf5f0324d27ebdfd2b331e5f232c23e544ad5',
60
+ class: "f-ui-03-light text-light mt-4"
61
+ }, this.user.preferred_username), ((_f = this.user) === null || _f === void 0 ? void 0 : _f.email) && h("p", {
62
+ key: '02b9dd4f2999b68107eabc2c1e2a1bc3bb98f26a',
63
+ class: "f-ui-03-light text-light mt-4"
64
+ }, this.user.email))), h("div", {
65
+ key: '3a68427dc603f0a3fb2652bfbea292eb718046dd',
66
+ class: "text-default mt-16 flex w-full flex-col gap-y-8"
67
+ }, h("div", {
68
+ key: '3f3f617385efc57502794f78079b8486b6801425',
69
+ class: "border-softer mb-10 border-b-2 pb-16"
70
+ }, h("eds-link", {
71
+ key: '62fbc143f710605c7d840277dc90054a1162831d',
72
+ label: "My EBRAINS",
73
+ "aria-label": "My EBRAINS",
74
+ url: "https://www.ebrains.eu/dashboard",
75
+ intent: "primary",
76
+ "extra-class": "w-full",
77
+ external: true
78
+ })), h("eds-link", {
79
+ key: 1,
80
+ label: "Account Settings",
81
+ url: "https://iam.ebrains.eu/auth/realms/hbp/account/",
82
+ intent: "secondary",
83
+ icon: "arrow-diagonal",
84
+ external: true,
85
+ "extra-class": "w-full"
86
+ }), h("slot", {
87
+ key: 'f48a4c872784b60e421fda6e48f67f4c85b101d7'
88
+ }))))));
112
89
  }
113
90
  get hostEl() {
114
91
  return getElement(this);
@@ -35,10 +35,10 @@ const EdsVerticalStepper = class {
35
35
  render() {
36
36
  const steps = this.parsedSteps;
37
37
  return h("div", {
38
- key: '08fa2f85c49dbe217b2f9d068bee486e432f5315',
38
+ key: '89344ad340f9eb8d20f463d3990ec4832cbdc900',
39
39
  class: "stepper-container"
40
40
  }, h("div", {
41
- key: '6f7e0a0ccaa2882794a6be0216201d1bf924e2b2',
41
+ key: 'da8d7fae2b30cfc93d04d5d8c3a61d95ccf91383',
42
42
  class: "stepper"
43
43
  }, steps.map((step, index) => h("div", {
44
44
  class: "step",
@@ -62,14 +62,14 @@ const EdsVerticalStepper = class {
62
62
  disabled: index === 0,
63
63
  "extra-class": index === 0 ? 'hidden' : 'ml-8 block'
64
64
  })))))), this.activeStep === steps.length && h("div", {
65
- key: '8a5ebfed582b25d828758e1762a063df6c745093',
65
+ key: '1e3272723281d9a10603b4d1e79badfdd6591cc5',
66
66
  class: ""
67
67
  }, h("eds-alert", {
68
- key: 'a142fb50b8df533dd97f770aeaa453f2379ea7cb',
68
+ key: '7cc81e7e7097891364ff9894d383fd7bb9f7fce4',
69
69
  intent: "success",
70
70
  message: "All steps completed - you're finished!"
71
71
  }), h("eds-button", {
72
- key: '5cfba059c9a152f179e7c31fa5d7a222c00defe2',
72
+ key: 'a4d68698fa7831c7e2b6afae435979ccac46a726',
73
73
  label: "Start again",
74
74
  onClick: this.handleReset,
75
75
  "extra-class": "mt-4"