@stokr/components-library 3.0.51 → 3.0.53

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 (53) hide show
  1. package/README.md +166 -166
  2. package/dist/components/Footer/FooterMenu.js +9 -5
  3. package/dist/components/Footer/FooterMenu.styles.js +12 -0
  4. package/dist/components/StepsProgress/StepsProgress.js +2 -2
  5. package/dist/index.js +2 -2
  6. package/dist/manifest.json +25 -25
  7. package/dist/robots.txt +3 -3
  8. package/dist/runtime-config.js +1 -1
  9. package/dist/static/fonts/icomoon/icomoon.eot +0 -0
  10. package/dist/static/fonts/icomoon/icomoon.svg +52 -52
  11. package/dist/static/fonts/icomoon/icomoon.ttf +0 -0
  12. package/dist/static/fonts/icomoon/icomoon.woff +0 -0
  13. package/dist/static/fonts/icomoon/selection.json +0 -0
  14. package/dist/static/fonts/icomoon/style.css +0 -0
  15. package/dist/static/images/Glassess.svg +5 -5
  16. package/dist/static/images/add-folder-icon.svg +4 -4
  17. package/dist/static/images/arrow-down-black.svg +21 -21
  18. package/dist/static/images/check-icon.svg +3 -3
  19. package/dist/static/images/checkmark-circle-icon.svg +3 -3
  20. package/dist/static/images/close-circle-icon.svg +2 -2
  21. package/dist/static/images/copy_icon.svg +4 -4
  22. package/dist/static/images/cross-icon.svg +3 -3
  23. package/dist/static/images/currency/eth.svg +10 -10
  24. package/dist/static/images/currency/eth_logo.svg +8 -8
  25. package/dist/static/images/currency/eur.svg +3 -3
  26. package/dist/static/images/currency/usdc-logo.svg +5 -5
  27. package/dist/static/images/doc-icon.svg +3 -3
  28. package/dist/static/images/download_icon.svg +3 -3
  29. package/dist/static/images/external-link-icon.svg +3 -3
  30. package/dist/static/images/filter-icon.svg +6 -6
  31. package/dist/static/images/globe.svg +15 -15
  32. package/dist/static/images/iso27001-black.svg +130 -0
  33. package/dist/static/images/iso27001-black.svg.js +4 -0
  34. package/dist/static/images/mangopay.svg +20 -20
  35. package/dist/static/images/numbers/number_eight.svg +3 -3
  36. package/dist/static/images/numbers/number_five.svg +4 -4
  37. package/dist/static/images/numbers/number_four.svg +3 -3
  38. package/dist/static/images/numbers/number_nine.svg +4 -4
  39. package/dist/static/images/numbers/number_one.svg +4 -4
  40. package/dist/static/images/numbers/number_seven.svg +4 -4
  41. package/dist/static/images/numbers/number_six.svg +4 -4
  42. package/dist/static/images/numbers/number_three.svg +3 -3
  43. package/dist/static/images/numbers/number_two.svg +4 -4
  44. package/dist/static/images/numbers/number_zero.svg +3 -3
  45. package/dist/static/images/plus-icon.svg +4 -4
  46. package/dist/static/images/prof-inv.svg +3 -3
  47. package/dist/static/images/search-icon.svg +3 -3
  48. package/dist/static/images/transfer-icon.svg +10 -10
  49. package/dist/static/images/trash.svg +16 -16
  50. package/dist/static/images/upload.svg +5 -5
  51. package/dist/static/images/warning-filled.svg +3 -3
  52. package/dist/utils/checklistGenerator.js +20 -21
  53. package/package.json +152 -152
package/README.md CHANGED
@@ -1,166 +1,166 @@
1
- # @stokr/components-library
2
-
3
- React UI library for STOKR apps: modals, forms, navigation, tables, auth context, styles.
4
-
5
- ## Contents
6
-
7
- - [Quick start](#quick-start) — install, router, `AuthProvider`, styles
8
- - [Configuration reference](#runtime-config) — `config` keys & helpers
9
- - [AuthProvider & AuthContext](#authprovider-optional-props)
10
- - [Troubleshooting](#troubleshooting)
11
- - [Development](#development--publishing)
12
-
13
- ---
14
-
15
- ## Quick start
16
-
17
- **Install**
18
-
19
- ```bash
20
- npm install @stokr/components-library
21
- npm install react react-dom styled-components react-router-dom
22
- ```
23
-
24
- Peers: React 18+/19+, styled-components 6.x, react-router-dom 6.x when you use routing-driven components (`HeaderHo`, `MainMenu`, …).
25
-
26
- **1. Router** — Navigation helpers need a React Router:
27
-
28
- ```jsx
29
- import { BrowserRouter } from 'react-router-dom'
30
- import { RouterWrapper } from '@stokr/components-library'
31
-
32
- // Normal app
33
- root.render(
34
- <BrowserRouter>
35
- <App />
36
- </BrowserRouter>,
37
- )
38
-
39
- // Outside a Router: RouterWrapper wraps children in BrowserRouter once.
40
- // Inside an existing Router: it renders children only (no nested BrowserRouter).
41
- root.render(
42
- <RouterWrapper>
43
- <App />
44
- </RouterWrapper>,
45
- )
46
- ```
47
-
48
- **2. Auth & runtime config (required when consuming via npm)** — Vite freezes `import.meta.env` inside pre-built deps, so push your `.env` at runtime via `config`:
49
-
50
- ```jsx
51
- import { AuthProvider } from '@stokr/components-library'
52
-
53
- export default function App() {
54
- return (
55
- <AuthProvider
56
- config={{
57
- apiUrl: import.meta.env.VITE_API_URL,
58
- baseUrlPublic: import.meta.env.VITE_BASE_URL_PUBLIC,
59
- cookieDomain: import.meta.env.VITE_COOKIE_DOMAIN,
60
- websiteDomain: import.meta.env.VITE_WEBSITE_DOMAIN,
61
- photoApiUrl: import.meta.env.VITE_PHOTO_API_URL,
62
- onboardingUrl: import.meta.env.VITE_ONBOARDING_URL,
63
- dashboardUrl: import.meta.env.VITE_DASHBOARD_URL,
64
- adminUrl: import.meta.env.VITE_ADMIN_URL,
65
- registerUrl: import.meta.env.VITE_REGISTER_URL,
66
- firebase: {
67
- apiKey: import.meta.env.VITE_FIREBASE_API_KEY,
68
- authDomain: import.meta.env.VITE_FIREBASE_AUTH_DOMAIN,
69
- projectId: import.meta.env.VITE_FIREBASE_PROJECT_ID,
70
- storageBucket: import.meta.env.VITE_FIREBASE_STORAGE_BUCKET,
71
- messagingSenderId: import.meta.env.VITE_FIREBASE_MESSAGING_SENDER_ID,
72
- appId: import.meta.env.VITE_FIREBASE_APP_ID,
73
- measurementId: import.meta.env.VITE_FIREBASE_MEASUREMENT_ID,
74
- },
75
- }}>
76
- {/* app */}
77
- </AuthProvider>
78
- )
79
- }
80
- ```
81
-
82
- **3. Earlier config** (e.g. analytics before mount): `import { configure } from '@stokr/components-library'` with the same shape as `config`.
83
-
84
- **4. Icons / fonts** — Optional: `<IoniconsStyles />` at root, or rely on lazy injection when a component uses icons; for Layout / Open Sans: `import '@stokr/components-library/styles.css'`.
85
-
86
- **5. Imports** — `import { ConfirmModal, Button, … } from '@stokr/components-library'`.
87
-
88
- Full URL env example:
89
-
90
- ```bash
91
- VITE_WEBSITE_DOMAIN=example.com
92
- VITE_ONBOARDING_URL=https://signup.example.com
93
- VITE_DASHBOARD_URL=https://dashboard.example.com
94
- VITE_ADMIN_URL=https://admin.example.com
95
- VITE_REGISTER_URL=https://example.com/signup
96
- ```
97
-
98
- ---
99
-
100
- ## Configuration reference {#runtime-config}
101
-
102
- | `config` key | Typical `VITE_*` | Role |
103
- | ----------------- | -------------------------- | ----------------------------------------- |
104
- | `apiUrl` | `VITE_API_URL` | Authenticated REST base |
105
- | `baseUrlPublic` | `VITE_BASE_URL_PUBLIC` | Public API base |
106
- | `cookieDomain` | `VITE_COOKIE_DOMAIN` | Auth cookie `domain` attribute |
107
- | `websiteDomain` | `VITE_WEBSITE_DOMAIN` | Bare host → links / `getPlatformURL()` |
108
- | `photoApiUrl` | `VITE_PHOTO_API_URL` | Avatars / media |
109
- | `onboardingUrl` | `VITE_ONBOARDING_URL` | Full signup/sign-in app URL |
110
- | `dashboardUrl` | `VITE_DASHBOARD_URL` | Investor dashboard URL |
111
- | `adminUrl` | `VITE_ADMIN_URL` | Venture / admin dashboard URL |
112
- | `registerUrl` | `VITE_REGISTER_URL` | Public registration entry |
113
- | `firebase` | `VITE_FIREBASE_*` | Firebase client config |
114
-
115
- **Helpers:** `getConfig('…')` for any key above; `getPlatformURL()` → `https://{websiteDomain}`; `getAnalyticsIngestUrl()`, `getBackofficeAppUrl(path)`; **`getFooterGroups()`** replaces static footer URL lists.
116
-
117
- **Auth-only HTTP:** `authenticationApi.post(segment, body)` for `auth/*`; default axios stays the main API client after login.
118
-
119
- Missing overrides may trigger a **one-time** warning listing unresolved `VITE_*` expectations.
120
-
121
- ---
122
-
123
- ## AuthProvider & AuthContext {#authprovider-optional-props}
124
-
125
- `AuthProvider` is wrapped with **`withRouter`** — mount it inside a **`Router`** so redirects work.
126
-
127
- ### Optional provider props
128
-
129
- - **`inactivityTimeMs`** — Idle timeout before auto-logout + session modal (default 5 min).
130
- - **`accessTokenExpiryMs`** — Cookie TTL when **`Auth.setAccessToken`** runs (default **`DEFAULT_TOKEN_EXPIRY_MS`** = 1 h); not extended by **`getUser`** alone.
131
- - **`hideInactivityModal`** — Suppress built-in session modal.
132
- - **`customValidateGetUser(user)`** — Hook after **`user/get`** succeeds (see `src/context/AuthContext.js`).
133
-
134
- ### AuthContext consumer {#authcontext-usecontext}
135
-
136
- `import { AuthContext } from '…'` then `useContext(AuthContext)`.
137
-
138
- - **Invalid Firebase guard:** value is **`{ user: null, isFetchingUser: false }`** only (no methods).
139
- - **State (grouped):** `user` / `firebaseUser`, `isFetchingUser`, `avatar`; MFA (`waitingFor2fa`, `userMfaEnrollment`, `firebaseError`); verify-email (`verifyEmailError`, `isVerifyingEmail`); session UX (`loggedOutDueToInactivity`, `loggedOutDueToCookieExpiry`, `sessionExpiryPendingReason`).
140
- - **Actions (grouped):** `userRef`, `loginUser`, `logoutUser`, `getUser`, `setUser`, `updateUser`, `refreshIdToken`; `checkUserIsValid`, `checkTokenIsValid`; `uploadPhoto`, `deletePhoto`, `checkUserPhoto`; MFA enroll / verify / unenroll + `reset2faFlow`; subscription/onboarding helpers; password & email (`handleResetPassword`, `handleVerifyEmail`, `requestUpdateEmail`, …); wallets / PoA (`uploaProofOfAddress` keeps the source spelling); **`dismissSessionExpiryModal`**.
141
-
142
- Use **`AuthConsumer`** for the render-prop pattern.
143
-
144
- ---
145
-
146
- ## Troubleshooting {#troubleshooting}
147
-
148
- **`useNavigate` / Router**
149
-
150
- Add `BrowserRouter` (or **`RouterWrapper`** from this package where the shell has no router). Install `react-router-dom`.
151
-
152
- **Invalid hook call / duplicated React**
153
-
154
- Dedupe peers in Vite: `resolve: { dedupe: ['react', 'react-dom', 'styled-components'] }`.
155
-
156
- ---
157
-
158
- ## Development {#development--publishing}
159
-
160
- | Command | Meaning |
161
- | -------------------- | -------------------------------- |
162
- | `npm run storybook` | Local docs / stories |
163
- | `npm run build:dist` | Library build + static copy |
164
- | `npm run pub` | Build then publish (`npm login`) |
165
-
166
- Release: changelog entry → `npm version` → `npm run pub`. Details: [CHANGELOG.md](CHANGELOG.md).
1
+ # @stokr/components-library
2
+
3
+ React UI library for STOKR apps: modals, forms, navigation, tables, auth context, styles.
4
+
5
+ ## Contents
6
+
7
+ - [Quick start](#quick-start) — install, router, `AuthProvider`, styles
8
+ - [Configuration reference](#runtime-config) — `config` keys & helpers
9
+ - [AuthProvider & AuthContext](#authprovider-optional-props)
10
+ - [Troubleshooting](#troubleshooting)
11
+ - [Development](#development--publishing)
12
+
13
+ ---
14
+
15
+ ## Quick start
16
+
17
+ **Install**
18
+
19
+ ```bash
20
+ npm install @stokr/components-library
21
+ npm install react react-dom styled-components react-router-dom
22
+ ```
23
+
24
+ Peers: React 18+/19+, styled-components 6.x, react-router-dom 6.x when you use routing-driven components (`HeaderHo`, `MainMenu`, …).
25
+
26
+ **1. Router** — Navigation helpers need a React Router:
27
+
28
+ ```jsx
29
+ import { BrowserRouter } from 'react-router-dom'
30
+ import { RouterWrapper } from '@stokr/components-library'
31
+
32
+ // Normal app
33
+ root.render(
34
+ <BrowserRouter>
35
+ <App />
36
+ </BrowserRouter>,
37
+ )
38
+
39
+ // Outside a Router: RouterWrapper wraps children in BrowserRouter once.
40
+ // Inside an existing Router: it renders children only (no nested BrowserRouter).
41
+ root.render(
42
+ <RouterWrapper>
43
+ <App />
44
+ </RouterWrapper>,
45
+ )
46
+ ```
47
+
48
+ **2. Auth & runtime config (required when consuming via npm)** — Vite freezes `import.meta.env` inside pre-built deps, so push your `.env` at runtime via `config`:
49
+
50
+ ```jsx
51
+ import { AuthProvider } from '@stokr/components-library'
52
+
53
+ export default function App() {
54
+ return (
55
+ <AuthProvider
56
+ config={{
57
+ apiUrl: import.meta.env.VITE_API_URL,
58
+ baseUrlPublic: import.meta.env.VITE_BASE_URL_PUBLIC,
59
+ cookieDomain: import.meta.env.VITE_COOKIE_DOMAIN,
60
+ websiteDomain: import.meta.env.VITE_WEBSITE_DOMAIN,
61
+ photoApiUrl: import.meta.env.VITE_PHOTO_API_URL,
62
+ onboardingUrl: import.meta.env.VITE_ONBOARDING_URL,
63
+ dashboardUrl: import.meta.env.VITE_DASHBOARD_URL,
64
+ adminUrl: import.meta.env.VITE_ADMIN_URL,
65
+ registerUrl: import.meta.env.VITE_REGISTER_URL,
66
+ firebase: {
67
+ apiKey: import.meta.env.VITE_FIREBASE_API_KEY,
68
+ authDomain: import.meta.env.VITE_FIREBASE_AUTH_DOMAIN,
69
+ projectId: import.meta.env.VITE_FIREBASE_PROJECT_ID,
70
+ storageBucket: import.meta.env.VITE_FIREBASE_STORAGE_BUCKET,
71
+ messagingSenderId: import.meta.env.VITE_FIREBASE_MESSAGING_SENDER_ID,
72
+ appId: import.meta.env.VITE_FIREBASE_APP_ID,
73
+ measurementId: import.meta.env.VITE_FIREBASE_MEASUREMENT_ID,
74
+ },
75
+ }}>
76
+ {/* app */}
77
+ </AuthProvider>
78
+ )
79
+ }
80
+ ```
81
+
82
+ **3. Earlier config** (e.g. analytics before mount): `import { configure } from '@stokr/components-library'` with the same shape as `config`.
83
+
84
+ **4. Icons / fonts** — Optional: `<IoniconsStyles />` at root, or rely on lazy injection when a component uses icons; for Layout / Open Sans: `import '@stokr/components-library/styles.css'`.
85
+
86
+ **5. Imports** — `import { ConfirmModal, Button, … } from '@stokr/components-library'`.
87
+
88
+ Full URL env example:
89
+
90
+ ```bash
91
+ VITE_WEBSITE_DOMAIN=example.com
92
+ VITE_ONBOARDING_URL=https://signup.example.com
93
+ VITE_DASHBOARD_URL=https://dashboard.example.com
94
+ VITE_ADMIN_URL=https://admin.example.com
95
+ VITE_REGISTER_URL=https://example.com/signup
96
+ ```
97
+
98
+ ---
99
+
100
+ ## Configuration reference {#runtime-config}
101
+
102
+ | `config` key | Typical `VITE_*` | Role |
103
+ | ----------------- | -------------------------- | ----------------------------------------- |
104
+ | `apiUrl` | `VITE_API_URL` | Authenticated REST base |
105
+ | `baseUrlPublic` | `VITE_BASE_URL_PUBLIC` | Public API base |
106
+ | `cookieDomain` | `VITE_COOKIE_DOMAIN` | Auth cookie `domain` attribute |
107
+ | `websiteDomain` | `VITE_WEBSITE_DOMAIN` | Bare host → links / `getPlatformURL()` |
108
+ | `photoApiUrl` | `VITE_PHOTO_API_URL` | Avatars / media |
109
+ | `onboardingUrl` | `VITE_ONBOARDING_URL` | Full signup/sign-in app URL |
110
+ | `dashboardUrl` | `VITE_DASHBOARD_URL` | Investor dashboard URL |
111
+ | `adminUrl` | `VITE_ADMIN_URL` | Venture / admin dashboard URL |
112
+ | `registerUrl` | `VITE_REGISTER_URL` | Public registration entry |
113
+ | `firebase` | `VITE_FIREBASE_*` | Firebase client config |
114
+
115
+ **Helpers:** `getConfig('…')` for any key above; `getPlatformURL()` → `https://{websiteDomain}`; `getAnalyticsIngestUrl()`, `getBackofficeAppUrl(path)`; **`getFooterGroups()`** replaces static footer URL lists.
116
+
117
+ **Auth-only HTTP:** `authenticationApi.post(segment, body)` for `auth/*`; default axios stays the main API client after login.
118
+
119
+ Missing overrides may trigger a **one-time** warning listing unresolved `VITE_*` expectations.
120
+
121
+ ---
122
+
123
+ ## AuthProvider & AuthContext {#authprovider-optional-props}
124
+
125
+ `AuthProvider` is wrapped with **`withRouter`** — mount it inside a **`Router`** so redirects work.
126
+
127
+ ### Optional provider props
128
+
129
+ - **`inactivityTimeMs`** — Idle timeout before auto-logout + session modal (default 5 min).
130
+ - **`accessTokenExpiryMs`** — Cookie TTL when **`Auth.setAccessToken`** runs (default **`DEFAULT_TOKEN_EXPIRY_MS`** = 1 h); not extended by **`getUser`** alone.
131
+ - **`hideInactivityModal`** — Suppress built-in session modal.
132
+ - **`customValidateGetUser(user)`** — Hook after **`user/get`** succeeds (see `src/context/AuthContext.js`).
133
+
134
+ ### AuthContext consumer {#authcontext-usecontext}
135
+
136
+ `import { AuthContext } from '…'` then `useContext(AuthContext)`.
137
+
138
+ - **Invalid Firebase guard:** value is **`{ user: null, isFetchingUser: false }`** only (no methods).
139
+ - **State (grouped):** `user` / `firebaseUser`, `isFetchingUser`, `avatar`; MFA (`waitingFor2fa`, `userMfaEnrollment`, `firebaseError`); verify-email (`verifyEmailError`, `isVerifyingEmail`); session UX (`loggedOutDueToInactivity`, `loggedOutDueToCookieExpiry`, `sessionExpiryPendingReason`).
140
+ - **Actions (grouped):** `userRef`, `loginUser`, `logoutUser`, `getUser`, `setUser`, `updateUser`, `refreshIdToken`; `checkUserIsValid`, `checkTokenIsValid`; `uploadPhoto`, `deletePhoto`, `checkUserPhoto`; MFA enroll / verify / unenroll + `reset2faFlow`; subscription/onboarding helpers; password & email (`handleResetPassword`, `handleVerifyEmail`, `requestUpdateEmail`, …); wallets / PoA (`uploaProofOfAddress` keeps the source spelling); **`dismissSessionExpiryModal`**.
141
+
142
+ Use **`AuthConsumer`** for the render-prop pattern.
143
+
144
+ ---
145
+
146
+ ## Troubleshooting {#troubleshooting}
147
+
148
+ **`useNavigate` / Router**
149
+
150
+ Add `BrowserRouter` (or **`RouterWrapper`** from this package where the shell has no router). Install `react-router-dom`.
151
+
152
+ **Invalid hook call / duplicated React**
153
+
154
+ Dedupe peers in Vite: `resolve: { dedupe: ['react', 'react-dom', 'styled-components'] }`.
155
+
156
+ ---
157
+
158
+ ## Development {#development--publishing}
159
+
160
+ | Command | Meaning |
161
+ | -------------------- | -------------------------------- |
162
+ | `npm run storybook` | Local docs / stories |
163
+ | `npm run build:dist` | Library build + static copy |
164
+ | `npm run pub` | Build then publish (`npm login`) |
165
+
166
+ Release: changelog entry → `npm version` → `npm run pub`. Details: [CHANGELOG.md](CHANGELOG.md).
@@ -1,10 +1,10 @@
1
- import { jsxs, jsx } from "react/jsx-runtime";
2
- import React__default, { useEffect, Fragment } from "react";
1
+ import { jsxs, jsx, Fragment } from "react/jsx-runtime";
2
+ import React__default, { useEffect, Fragment as Fragment$1 } from "react";
3
3
  import PropTypes from "prop-types";
4
4
  import { Collapse } from "react-collapse";
5
5
  import stdin_default$2 from "../SvgIcons/SocialInstagram.js";
6
6
  import stdin_default$1 from "../SvgIcons/SocialReddit.js";
7
- import { Container, Groups, Group, TitleContainer, Title, ArrowDown, Items, Item, SocialLink, Link, HiringTotalNumber, Footnotes, FootnotesText, FootnotesItem } from "./FooterMenu.styles.js";
7
+ import { Container, Groups, Group, TitleContainer, Title, ArrowDown, Items, Item, SocialLink, IsoCertificate, Link, HiringTotalNumber, Footnotes, FootnotesText, FootnotesItem } from "./FooterMenu.styles.js";
8
8
  import { useMobileView } from "../../utils/customHooks.js";
9
9
  import { sizes } from "../../styles/rwd.js";
10
10
  import FbLogo from "../../static/images/social/Facebook_Logo.png.js";
@@ -12,8 +12,9 @@ import LILogo from "../../static/images/social/LI-In-Bug.png.js";
12
12
  import XLogo from "../../static/images/social/X-logo-black.png.js";
13
13
  import YtLogo from "../../static/images/social/youtube_social_circle_red.png.js";
14
14
  import TelegramLogo from "../../static/images/social/Telegram-Logo.png.js";
15
+ import IsoLogo from "../../static/images/iso27001-black.svg.js";
15
16
  import { SocialLinksContainer } from "../Header/Header.styles.js";
16
- const CollapseWrapper = ({ children, collapse = false, isOpened = false }) => collapse ? /* @__PURE__ */ jsx(Collapse, { isOpened, children }) : /* @__PURE__ */ jsx(Fragment, { children });
17
+ const CollapseWrapper = ({ children, collapse = false, isOpened = false }) => collapse ? /* @__PURE__ */ jsx(Collapse, { isOpened, children }) : /* @__PURE__ */ jsx(Fragment$1, { children });
17
18
  CollapseWrapper.propTypes = {
18
19
  children: PropTypes.node.isRequired,
19
20
  collapse: PropTypes.bool,
@@ -67,7 +68,10 @@ const FooterMenu = ({
67
68
  /* @__PURE__ */ jsx(Title, { collapse: group.collapse, children: group.name }),
68
69
  isMobile && !group.social && /* @__PURE__ */ jsx(ArrowDown, { isOpened: activeGroups[groupKey] })
69
70
  ] }),
70
- /* @__PURE__ */ jsx(CollapseWrapper, { collapse: isMobile && group.collapse, isOpened: activeGroups[groupKey], children: /* @__PURE__ */ jsx(Items, { social: group.social, children: group.social ? /* @__PURE__ */ jsx(SocialLinksContainer, { children: group.items.map((item) => /* @__PURE__ */ jsx(Item, { social: true, children: /* @__PURE__ */ jsx(SocialLink, { href: item.url, alt: item.name, target: "_blank", rel: "noopener noreferrer", children: socialSvg[item.name] }) }, item.name)) }) : group.items.map((item) => /* @__PURE__ */ jsx(Item, { children: /* @__PURE__ */ jsxs(Link, { target: item.external ? "_blank" : "", to: item.url, rel: "noopener noreferrer", children: [
71
+ /* @__PURE__ */ jsx(CollapseWrapper, { collapse: isMobile && group.collapse, isOpened: activeGroups[groupKey], children: /* @__PURE__ */ jsx(Items, { social: group.social, children: group.social ? /* @__PURE__ */ jsxs(Fragment, { children: [
72
+ /* @__PURE__ */ jsx(SocialLinksContainer, { children: group.items.map((item) => /* @__PURE__ */ jsx(Item, { social: true, children: /* @__PURE__ */ jsx(SocialLink, { href: item.url, alt: item.name, target: "_blank", rel: "noopener noreferrer", children: socialSvg[item.name] }) }, item.name)) }),
73
+ /* @__PURE__ */ jsx(IsoCertificate, { src: IsoLogo, alt: "ISO/IEC 27001 certified", loading: "lazy" })
74
+ ] }) : group.items.map((item) => /* @__PURE__ */ jsx(Item, { children: /* @__PURE__ */ jsxs(Link, { target: item.external ? "_blank" : "", to: item.url, rel: "noopener noreferrer", children: [
71
75
  item.name,
72
76
  item.showNumber && jobOpeningsNumber > 0 && /* @__PURE__ */ jsx(HiringTotalNumber, { style: { marginLeft: "4px" }, children: jobOpeningsNumber })
73
77
  ] }) }, item.name)) }) })
@@ -169,6 +169,17 @@ const Items = styled.ul.withConfig({
169
169
  padding-bottom: 0;
170
170
  }
171
171
  `;
172
+ const IsoCertificate = styled.img`
173
+ display: block;
174
+ width: 60px;
175
+ height: auto;
176
+ margin-top: 24px;
177
+
178
+ @media screen and (max-width: 992px) {
179
+ margin-top: 20px;
180
+ width: 50px;
181
+ }
182
+ `;
172
183
  const Item = styled.li.withConfig({
173
184
  shouldForwardProp: (props) => !["social"].includes(props)
174
185
  })`
@@ -313,6 +324,7 @@ export {
313
324
  Group,
314
325
  Groups,
315
326
  HiringTotalNumber,
327
+ IsoCertificate,
316
328
  Item,
317
329
  Items,
318
330
  Link,
@@ -6,7 +6,7 @@ import { walletTypes } from "../../constants/globalVariables.js";
6
6
  const StepsProgressSignup = (props) => {
7
7
  let navigate = useNavigate();
8
8
  const { user = {} } = props;
9
- const { country, kyc_status, taxId, wallets = [] } = user;
9
+ const { country, kyc_status, self_declaration, wallets = [] } = user;
10
10
  const KYCNotDone = !kyc_status || kyc_status === "Reaply" || kyc_status === "Cancelled" || kyc_status === "Draft";
11
11
  const hasLiquidWallet = wallets?.filter((wallet) => wallet.type === walletTypes.LIQUID).length > 0;
12
12
  const isActiveStep = (path) => typeof window !== "undefined" ? window.location.pathname.includes(path) : false;
@@ -26,7 +26,7 @@ const StepsProgressSignup = (props) => {
26
26
  {
27
27
  id: "self-certification",
28
28
  handleClick: () => navigate("/self-certification"),
29
- isDone: !!taxId,
29
+ isDone: !!self_declaration,
30
30
  isActive: isActiveStep("/self-certification")
31
31
  },
32
32
  {
package/dist/index.js CHANGED
@@ -144,6 +144,8 @@ import { navigateToHref, pathnameIfSameOrigin } from "./routing/navigate-app.js"
144
144
  import { RouterWrapper } from "./routing/RouterWrapper.js";
145
145
  import { isAlreadyOnOnboardingFlow } from "./utils/app-urls.js";
146
146
  import { authenticationApi } from "./api/authenticationApi.js";
147
+ import { Auth, DEFAULT_TOKEN_EXPIRY_MS } from "./context/Auth.js";
148
+ import { AuthConsumer, AuthContext, AuthProvider } from "./context/AuthContext.js";
147
149
  import { colors } from "./styles/colors.js";
148
150
  import { default as default2 } from "./styles/fonts.js";
149
151
  import { GlobalStyle } from "./styles/global.js";
@@ -159,8 +161,6 @@ import { LoanActivityTypes, ProfessionalInvestorStatuses, ProjectStates, Project
159
161
  import { default as default9 } from "./components/SvgIcons/AdminBadgeSvg.js";
160
162
  import { Arrow } from "./components/icons/Arrow.js";
161
163
  import { ArrowSimple } from "./components/icons/ArrowSimple.js";
162
- import { Auth, DEFAULT_TOKEN_EXPIRY_MS } from "./context/Auth.js";
163
- import { AuthConsumer, AuthContext, AuthProvider } from "./context/AuthContext.js";
164
164
  import { BackButtonIcon, StyledBackButton, StyledBackButtonExternal, StyledWindowBackButton } from "./components/BackButton/BackButton.styles.js";
165
165
  import { Breakdown } from "./components/breakdown/Breakdown.js";
166
166
  import { default as default10 } from "./components/SvgIcons/CameraSvg.js";
@@ -1,25 +1,25 @@
1
- {
2
- "short_name": "Vite React App",
3
- "name": "Vite React App",
4
- "icons": [
5
- {
6
- "src": "favicon.ico",
7
- "sizes": "64x64 32x32 24x24 16x16",
8
- "type": "image/x-icon"
9
- },
10
- {
11
- "src": "logo192.png",
12
- "type": "image/png",
13
- "sizes": "192x192"
14
- },
15
- {
16
- "src": "logo512.png",
17
- "type": "image/png",
18
- "sizes": "512x512"
19
- }
20
- ],
21
- "start_url": ".",
22
- "display": "standalone",
23
- "theme_color": "#000000",
24
- "background_color": "#ffffff"
25
- }
1
+ {
2
+ "short_name": "Vite React App",
3
+ "name": "Vite React App",
4
+ "icons": [
5
+ {
6
+ "src": "favicon.ico",
7
+ "sizes": "64x64 32x32 24x24 16x16",
8
+ "type": "image/x-icon"
9
+ },
10
+ {
11
+ "src": "logo192.png",
12
+ "type": "image/png",
13
+ "sizes": "192x192"
14
+ },
15
+ {
16
+ "src": "logo512.png",
17
+ "type": "image/png",
18
+ "sizes": "512x512"
19
+ }
20
+ ],
21
+ "start_url": ".",
22
+ "display": "standalone",
23
+ "theme_color": "#000000",
24
+ "background_color": "#ffffff"
25
+ }
package/dist/robots.txt CHANGED
@@ -1,3 +1,3 @@
1
- # https://www.robotstxt.org/robotstxt.html
2
- User-agent: *
3
- Disallow:
1
+ # https://www.robotstxt.org/robotstxt.html
2
+ User-agent: *
3
+ Disallow:
@@ -1,4 +1,4 @@
1
- const __vite_import_meta_env__ = { "BASE_URL": "/", "DEV": false, "MODE": "production", "PROD": true, "SSR": false, "VITE_ADMIN_URL": "https://admin.stokr.info", "VITE_API_URL": "https://platform-api.stokr.info/api/v1", "VITE_BASE_URL_PUBLIC": "https://platform-api-no-auth.stokr.info/api/v1", "VITE_COOKIE_DOMAIN": "localhost", "VITE_DASHBOARD_URL": "https://dashboard.stokr.info", "VITE_FIREBASE_API_KEY": "AIzaSyBBp_3Romnfv--YpUuV0mJgDymvSp3oq0c", "VITE_FIREBASE_APP_ID": "1:568229412804:web:2391857e3e2a0b02346e91", "VITE_FIREBASE_AUTH_DOMAIN": "stokr-development-env.firebaseapp.com", "VITE_FIREBASE_MEASUREMENT_ID": "G-CP53SZVSMN", "VITE_FIREBASE_MESSAGING_SENDER_ID": "568229412804", "VITE_FIREBASE_PROJECT_ID": "stokr-development-env", "VITE_FIREBASE_STORAGE_BUCKET": "stokr-development-env.appspot.com", "VITE_MIXPANEL_TOKEN": "a7bb1e881f9b2600762fded84d8ce0ea", "VITE_ONBOARDING_URL": "https://signup.stokr.info", "VITE_PHOTO_API_URL": "https://platform-api.stokr.info/api/v1", "VITE_REGISTER_URL": "https://stokr.info/signup", "VITE_WEBSITE_DOMAIN": "stokr.info" };
1
+ const __vite_import_meta_env__ = { "BASE_URL": "/", "DEV": false, "MODE": "production", "PROD": true, "SSR": false };
2
2
  const _overrides = {};
3
3
  const ENV_KEY_BY_CONFIG = {
4
4
  apiUrl: "VITE_API_URL",
File without changes