@ory/elements-react 0.0.0-pr.8e964fc1 → 0.0.0-pr.96c07cce
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +245 -0
- package/DEVELOPMENT.md +19 -4
- package/README.md +253 -4
- package/babel.config.js +10 -0
- package/dist/client/frontendClient.d.mts +5 -2
- package/dist/client/frontendClient.d.ts +5 -2
- package/dist/client/frontendClient.js +25 -2
- package/dist/client/frontendClient.js.map +1 -1
- package/dist/client/frontendClient.mjs +25 -2
- package/dist/client/frontendClient.mjs.map +1 -1
- package/dist/client/index.js +3 -3
- package/dist/index.d.mts +97 -27
- package/dist/index.d.ts +97 -27
- package/dist/index.js +943 -352
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +946 -356
- package/dist/index.mjs.map +1 -1
- package/dist/theme/default/index.css +187 -117
- package/dist/theme/default/index.css.map +1 -1
- package/dist/theme/default/index.d.mts +31 -5
- package/dist/theme/default/index.d.ts +31 -5
- package/dist/theme/default/index.js +4320 -814
- package/dist/theme/default/index.js.map +1 -1
- package/dist/theme/default/index.mjs +4377 -793
- package/dist/theme/default/index.mjs.map +1 -1
- package/package.json +22 -15
- package/tailwind/generated/default-variables.css +1 -1
- package/tsconfig.json +3 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,248 @@
|
|
|
1
|
+
## 1.0.0-rc.2 (2025-04-30)
|
|
2
|
+
|
|
3
|
+
### 🚀 Features
|
|
4
|
+
|
|
5
|
+
- method translation for totp, code, webauthn ([#500](https://github.com/ory/elements/pull/500))
|
|
6
|
+
- add all missing stories ([#480](https://github.com/ory/elements/pull/480))
|
|
7
|
+
- preview deployments for example apps ([#488](https://github.com/ory/elements/pull/488))
|
|
8
|
+
- add back button to settings page ([#464](https://github.com/ory/elements/pull/464))
|
|
9
|
+
|
|
10
|
+
### 🩹 Fixes
|
|
11
|
+
|
|
12
|
+
- ⚠️ align configuration types to Ory Network APIs ([#423](https://github.com/ory/elements/pull/423))
|
|
13
|
+
- sort captcha before submit button ([#507](https://github.com/ory/elements/pull/507))
|
|
14
|
+
- cors credentials in default client ([#508](https://github.com/ory/elements/pull/508))
|
|
15
|
+
- back button should return to application ([#465](https://github.com/ory/elements/pull/465))
|
|
16
|
+
- adjust design of generic OIDC provider ([#492](https://github.com/ory/elements/pull/492))
|
|
17
|
+
- use proper id for react element arrays ([#495](https://github.com/ory/elements/pull/495))
|
|
18
|
+
- add test id to header messages ([#489](https://github.com/ory/elements/pull/489))
|
|
19
|
+
- re-add missing error message when no methods provided ([#460](https://github.com/ory/elements/pull/460))
|
|
20
|
+
- resend not working for registration ([#468](https://github.com/ory/elements/pull/468))
|
|
21
|
+
- add missing color class to registration footer ([#473](https://github.com/ory/elements/pull/473))
|
|
22
|
+
- resend not working for registration ([#467](https://github.com/ory/elements/pull/467))
|
|
23
|
+
|
|
24
|
+
### ⚠️ Breaking Changes
|
|
25
|
+
|
|
26
|
+
- ⚠️ align configuration types to Ory Network APIs ([#423](https://github.com/ory/elements/pull/423))
|
|
27
|
+
|
|
28
|
+
### ❤️ Thank You
|
|
29
|
+
|
|
30
|
+
- hackerman @aeneasr
|
|
31
|
+
- Jonas Hungershausen
|
|
32
|
+
|
|
33
|
+
## 1.0.0-rc.1 (2025-04-21)
|
|
34
|
+
|
|
35
|
+
### 🩹 Fixes
|
|
36
|
+
|
|
37
|
+
- re-add missing error message when no methods provided ([#460](https://github.com/ory/elements/pull/460))
|
|
38
|
+
- resend not working for registration ([#468](https://github.com/ory/elements/pull/468))
|
|
39
|
+
- add missing color class to registration footer ([#473](https://github.com/ory/elements/pull/473))
|
|
40
|
+
- resend not working for registration ([#467](https://github.com/ory/elements/pull/467))
|
|
41
|
+
|
|
42
|
+
### ❤️ Thank You
|
|
43
|
+
|
|
44
|
+
- hackerman @aeneasr
|
|
45
|
+
- Jonas Hungershausen
|
|
46
|
+
|
|
47
|
+
## 1.0.0-rc.0 (2025-04-17)
|
|
48
|
+
|
|
49
|
+
### 🚀 Features
|
|
50
|
+
|
|
51
|
+
- add missing translations for de, es and fr ([#456](https://github.com/ory/elements/pull/456))
|
|
52
|
+
|
|
53
|
+
### 🩹 Fixes
|
|
54
|
+
|
|
55
|
+
- correctly set input field value ([#447](https://github.com/ory/elements/pull/447))
|
|
56
|
+
- add missing settings padding ([#446](https://github.com/ory/elements/pull/446))
|
|
57
|
+
- always omit conflicting keys ([#444](https://github.com/ory/elements/pull/444))
|
|
58
|
+
|
|
59
|
+
### ❤️ Thank You
|
|
60
|
+
|
|
61
|
+
- hackerman @aeneasr
|
|
62
|
+
- Jonas Hungershausen
|
|
63
|
+
|
|
64
|
+
## 1.0.0-next.46 (2025-04-16)
|
|
65
|
+
|
|
66
|
+
### 🩹 Fixes
|
|
67
|
+
|
|
68
|
+
- missing hidden field regression ([#439](https://github.com/ory/elements/pull/439))
|
|
69
|
+
- use correct testid ([#438](https://github.com/ory/elements/pull/438))
|
|
70
|
+
|
|
71
|
+
### ❤️ Thank You
|
|
72
|
+
|
|
73
|
+
- hackerman @aeneasr
|
|
74
|
+
|
|
75
|
+
## 1.0.0-next.45 (2025-04-15)
|
|
76
|
+
|
|
77
|
+
### 🩹 Fixes
|
|
78
|
+
|
|
79
|
+
- add missing test id to scope checkbox label ([#437](https://github.com/ory/elements/pull/437))
|
|
80
|
+
- add missing captcha group to all methods ([#432](https://github.com/ory/elements/pull/432))
|
|
81
|
+
|
|
82
|
+
### ❤️ Thank You
|
|
83
|
+
|
|
84
|
+
- hackerman @aeneasr
|
|
85
|
+
- Jonas Hungershausen
|
|
86
|
+
|
|
87
|
+
## 1.0.0-next.44 (2025-04-10)
|
|
88
|
+
|
|
89
|
+
### 🩹 Fixes
|
|
90
|
+
|
|
91
|
+
- use currentColor in eye icons ([#433](https://github.com/ory/elements/pull/433))
|
|
92
|
+
|
|
93
|
+
### ❤️ Thank You
|
|
94
|
+
|
|
95
|
+
- Jonas Hungershausen
|
|
96
|
+
|
|
97
|
+
## 1.0.0-next.43 (2025-04-10)
|
|
98
|
+
|
|
99
|
+
### 🚀 Features
|
|
100
|
+
|
|
101
|
+
- add missing French translations ([#401](https://github.com/ory/elements/pull/401))
|
|
102
|
+
|
|
103
|
+
### 🩹 Fixes
|
|
104
|
+
|
|
105
|
+
- two-step registration back button ([#428](https://github.com/ory/elements/pull/428))
|
|
106
|
+
- resolve wcag2aa color contrast issues ([#367](https://github.com/ory/elements/pull/367))
|
|
107
|
+
|
|
108
|
+
### ❤️ Thank You
|
|
109
|
+
|
|
110
|
+
- hackerman @aeneasr
|
|
111
|
+
- Jonas Hungershausen
|
|
112
|
+
- Jordan Labrosse
|
|
113
|
+
|
|
114
|
+
## 1.0.0-next.41 (2025-04-07)
|
|
115
|
+
|
|
116
|
+
### 🩹 Fixes
|
|
117
|
+
|
|
118
|
+
- resolve wcag2aa color contrast issues ([#367](https://github.com/ory/elements/pull/367))
|
|
119
|
+
|
|
120
|
+
### ❤️ Thank You
|
|
121
|
+
|
|
122
|
+
- Jonas Hungershausen
|
|
123
|
+
- Jordan Labrosse
|
|
124
|
+
|
|
125
|
+
## 1.0.0-next.40 (2025-04-02)
|
|
126
|
+
|
|
127
|
+
### 🚀 Features
|
|
128
|
+
|
|
129
|
+
- support SAML-native ([#395](https://github.com/ory/elements/pull/395))
|
|
130
|
+
|
|
131
|
+
### ❤️ Thank You
|
|
132
|
+
|
|
133
|
+
- hackerman @aeneasr
|
|
134
|
+
|
|
135
|
+
## 1.0.0-next.39 (2025-03-25)
|
|
136
|
+
|
|
137
|
+
### 🚀 Features
|
|
138
|
+
|
|
139
|
+
- add SAML group handling ([#390](https://github.com/ory/elements/pull/390))
|
|
140
|
+
|
|
141
|
+
### ❤️ Thank You
|
|
142
|
+
|
|
143
|
+
- hackerman @aeneasr
|
|
144
|
+
|
|
145
|
+
## 1.0.0-next.38 (2025-03-24)
|
|
146
|
+
|
|
147
|
+
### 🩹 Fixes
|
|
148
|
+
|
|
149
|
+
- hide registration link again ([#387](https://github.com/ory/elements/pull/387))
|
|
150
|
+
|
|
151
|
+
### ❤️ Thank You
|
|
152
|
+
|
|
153
|
+
- hackerman @aeneasr
|
|
154
|
+
|
|
155
|
+
## 1.0.0-next.37 (2025-03-12)
|
|
156
|
+
|
|
157
|
+
### 🩹 Fixes
|
|
158
|
+
|
|
159
|
+
- correctly render test id for error card ([#386](https://github.com/ory/elements/pull/386))
|
|
160
|
+
|
|
161
|
+
### ❤️ Thank You
|
|
162
|
+
|
|
163
|
+
- Jonas Hungershausen
|
|
164
|
+
|
|
165
|
+
## 1.0.0-next.36 (2025-03-12)
|
|
166
|
+
|
|
167
|
+
### 🩹 Fixes
|
|
168
|
+
|
|
169
|
+
- handle error messages for selected methods ([#385](https://github.com/ory/elements/pull/385))
|
|
170
|
+
|
|
171
|
+
### ❤️ Thank You
|
|
172
|
+
|
|
173
|
+
- Pierre Caillaud @pcaillaudm
|
|
174
|
+
|
|
175
|
+
## 1.0.0-next.35 (2025-03-12)
|
|
176
|
+
|
|
177
|
+
### 🚀 Features
|
|
178
|
+
|
|
179
|
+
- add more intelligent error screen ([#383](https://github.com/ory/elements/pull/383))
|
|
180
|
+
|
|
181
|
+
### ❤️ Thank You
|
|
182
|
+
|
|
183
|
+
- Jonas Hungershausen
|
|
184
|
+
|
|
185
|
+
## 1.0.0-next.34 (2025-03-12)
|
|
186
|
+
|
|
187
|
+
### 🩹 Fixes
|
|
188
|
+
|
|
189
|
+
- use correct import paths ([#384](https://github.com/ory/elements/pull/384))
|
|
190
|
+
|
|
191
|
+
### ❤️ Thank You
|
|
192
|
+
|
|
193
|
+
- hackerman @aeneasr
|
|
194
|
+
|
|
195
|
+
## 1.0.0-next.33 (2025-03-07)
|
|
196
|
+
|
|
197
|
+
### 🚀 Features
|
|
198
|
+
|
|
199
|
+
- add password toggle to input ([#378](https://github.com/ory/elements/pull/378))
|
|
200
|
+
|
|
201
|
+
### 🩹 Fixes
|
|
202
|
+
|
|
203
|
+
- validation message regression ([#380](https://github.com/ory/elements/pull/380))
|
|
204
|
+
|
|
205
|
+
### ❤️ Thank You
|
|
206
|
+
|
|
207
|
+
- Jonas Hungershausen
|
|
208
|
+
- Pierre Caillaud @pcaillaudm
|
|
209
|
+
|
|
210
|
+
## 1.0.0-next.32 (2025-03-06)
|
|
211
|
+
|
|
212
|
+
### 🚀 Features
|
|
213
|
+
|
|
214
|
+
- use method selector in 2fa login ([#377](https://github.com/ory/elements/pull/377))
|
|
215
|
+
|
|
216
|
+
### ❤️ Thank You
|
|
217
|
+
|
|
218
|
+
- Pierre Caillaud @pcaillaudm
|
|
219
|
+
|
|
220
|
+
## 1.0.0-next.31 (2025-03-06)
|
|
221
|
+
|
|
222
|
+
### 🚀 Features
|
|
223
|
+
|
|
224
|
+
- support captchas natively in new and old elements ([#372](https://github.com/ory/elements/pull/372))
|
|
225
|
+
|
|
226
|
+
### 🩹 Fixes
|
|
227
|
+
|
|
228
|
+
- center text on OIDC buttons and debounce state update ([#366](https://github.com/ory/elements/pull/366))
|
|
229
|
+
|
|
230
|
+
### ❤️ Thank You
|
|
231
|
+
|
|
232
|
+
- hackerman @aeneasr
|
|
233
|
+
- Jonas Hungershausen
|
|
234
|
+
|
|
235
|
+
## 1.0.0-next.30 (2025-03-05)
|
|
236
|
+
|
|
237
|
+
### 🩹 Fixes
|
|
238
|
+
|
|
239
|
+
- show possible OIDC connections on login method selector ([#362](https://github.com/ory/elements/pull/362))
|
|
240
|
+
- add correct x/twitter OIDC logo ([#364](https://github.com/ory/elements/pull/364))
|
|
241
|
+
|
|
242
|
+
### ❤️ Thank You
|
|
243
|
+
|
|
244
|
+
- Jonas Hungershausen
|
|
245
|
+
|
|
1
246
|
## 1.0.0-next.29 (2025-02-27)
|
|
2
247
|
|
|
3
248
|
### 🩹 Fixes
|
package/DEVELOPMENT.md
CHANGED
|
@@ -51,13 +51,13 @@ Each flow has its own story in the `packages/elements-react-stories` package. To
|
|
|
51
51
|
run the storybook development environment, execute:
|
|
52
52
|
|
|
53
53
|
```bash
|
|
54
|
-
npx nx storybook elements-react
|
|
54
|
+
npx nx storybook @ory/elements-react
|
|
55
55
|
```
|
|
56
56
|
|
|
57
57
|
You can also build the Storybook using:
|
|
58
58
|
|
|
59
59
|
```bash
|
|
60
|
-
npx nx build elements-react
|
|
60
|
+
npx nx build @ory/elements-react
|
|
61
61
|
```
|
|
62
62
|
|
|
63
63
|
The stories use stub responses
|
|
@@ -66,14 +66,29 @@ The stories use stub responses
|
|
|
66
66
|
|
|
67
67
|
@ory/elements-react and @ory/nextjs is released using nx releases.
|
|
68
68
|
|
|
69
|
-
There is a helper script located in
|
|
69
|
+
There is a helper script located in `./scripts/release.sh`.
|
|
70
70
|
|
|
71
71
|
Usage:
|
|
72
72
|
|
|
73
73
|
```bash
|
|
74
|
-
./scripts/release.sh
|
|
74
|
+
./scripts/release.sh <project> <tag>
|
|
75
|
+
|
|
76
|
+
./scripts/release.sh @ory/elements-react next
|
|
75
77
|
```
|
|
76
78
|
|
|
77
79
|
The script asks the user before executing each steps. Please double check
|
|
78
80
|
CHANGELOG.md and dry run outputs. nx also creates git tags and commits, that
|
|
79
81
|
should be commited. The script will do that automatically.
|
|
82
|
+
|
|
83
|
+
### Pre-releasing unmerged changes
|
|
84
|
+
|
|
85
|
+
You can release a PR's changes to npm to test them in a different repository,
|
|
86
|
+
etc. These versions are released on the `pr` npm tag, and will have the version
|
|
87
|
+
`0.0.0-pr.<git hash>`. These releases wont be pushed to master, but you might
|
|
88
|
+
have to revert the `package.json` and `package-lock.json` files.
|
|
89
|
+
|
|
90
|
+
Usage:
|
|
91
|
+
|
|
92
|
+
```bash
|
|
93
|
+
./scripts/release.sh @ory/elements-react pr
|
|
94
|
+
```
|
package/README.md
CHANGED
|
@@ -202,16 +202,243 @@ import "@ory/elements-react/theme/styles.css"
|
|
|
202
202
|
|
|
203
203
|
### Theming
|
|
204
204
|
|
|
205
|
-
|
|
205
|
+
The styling for specific elements or groups of elements in the UI can be
|
|
206
|
+
overwritten by providing your own custom CSS variables. For more complex
|
|
207
|
+
customizations see the [Component System](#component-system).
|
|
206
208
|
|
|
207
209
|
```css
|
|
208
210
|
:root {
|
|
209
|
-
/*
|
|
210
|
-
|
|
211
|
+
/* primitives */
|
|
212
|
+
/* Overriding these may affect more variables "down stream" */
|
|
213
|
+
--ui-100: #f1f5f9;
|
|
214
|
+
--ui-200: #e2e8f0;
|
|
215
|
+
--ui-300: #cbd5e1;
|
|
216
|
+
--ui-400: #94a3b8;
|
|
217
|
+
--ui-50: #f8fafc;
|
|
218
|
+
--ui-500: #64748b;
|
|
219
|
+
--ui-600: #475569;
|
|
220
|
+
--ui-700: #334155;
|
|
221
|
+
--ui-800: #1e293b;
|
|
222
|
+
--ui-900: #0f172a;
|
|
223
|
+
--ui-950: #020617;
|
|
224
|
+
--ui-black: #000000;
|
|
225
|
+
--ui-danger: #dc2626;
|
|
226
|
+
--ui-success: #22c55e;
|
|
227
|
+
--ui-transparent: #ffffff00;
|
|
228
|
+
--ui-warning: #eab308;
|
|
229
|
+
--ui-white: #ffffff;
|
|
230
|
+
/* primitives end */
|
|
231
|
+
|
|
232
|
+
/* brand */
|
|
233
|
+
--brand-100: var(--ui-100);
|
|
234
|
+
--brand-200: var(--ui-300);
|
|
235
|
+
--brand-300: var(--ui-500);
|
|
236
|
+
--brand-400: var(--ui-700);
|
|
237
|
+
--brand-50: var(--ui-50);
|
|
238
|
+
--brand-500: var(--ui-900);
|
|
239
|
+
--brand-600: var(--ui-white);
|
|
240
|
+
--brand-700: var(--ui-200);
|
|
241
|
+
--brand-800: var(--ui-400);
|
|
242
|
+
--brand-900: var(--ui-600);
|
|
243
|
+
--brand-950: var(--ui-800);
|
|
244
|
+
/* brand end */
|
|
245
|
+
|
|
246
|
+
/* interface */
|
|
247
|
+
/* These variables affect "groups" of variables, and are re-used in the more specific variables below */
|
|
248
|
+
--interface-background-brand-primary: var(--brand-500);
|
|
249
|
+
--interface-background-brand-primary-hover: var(--brand-400);
|
|
250
|
+
--interface-background-brand-secondary: var(--brand-50);
|
|
251
|
+
--interface-background-brand-secondary-hover: var(--brand-100);
|
|
252
|
+
--interface-background-default-inverted: var(--ui-900);
|
|
253
|
+
--interface-background-default-inverted-hover: var(--ui-800);
|
|
254
|
+
--interface-background-default-none: var(--ui-transparent);
|
|
255
|
+
--interface-background-default-primary: var(--ui-white);
|
|
256
|
+
--interface-background-default-primary-hover: var(--ui-50);
|
|
257
|
+
--interface-background-default-secondary: var(--ui-50);
|
|
258
|
+
--interface-background-default-secondary-hover: var(--ui-200);
|
|
259
|
+
--interface-background-default-tertiary: var(--ui-200);
|
|
260
|
+
--interface-background-default-tertiary-hover: var(--ui-300);
|
|
261
|
+
--interface-background-disabled-disabled: var(--ui-200);
|
|
262
|
+
--interface-background-validation-danger: var(--ui-danger);
|
|
263
|
+
--interface-background-validation-success: var(--ui-success);
|
|
264
|
+
--interface-background-validation-warning: var(--ui-warning);
|
|
265
|
+
--interface-border-brand-brand: var(--brand-500);
|
|
266
|
+
--interface-border-default-inverted: var(--ui-700);
|
|
267
|
+
--interface-border-default-none: var(--ui-transparent);
|
|
268
|
+
--interface-border-default-primary: var(--ui-300);
|
|
269
|
+
--interface-border-disabled-disabled: var(--ui-300);
|
|
270
|
+
--interface-border-validation-danger: var(--ui-danger);
|
|
271
|
+
--interface-border-validation-success: var(--ui-success);
|
|
272
|
+
--interface-border-validation-warning: var(--ui-warning);
|
|
273
|
+
--interface-foreground-brand-on-primary: var(--brand-50);
|
|
274
|
+
--interface-foreground-brand-on-secondary: var(--brand-950);
|
|
275
|
+
--interface-foreground-brand-primary: var(--brand-500);
|
|
276
|
+
--interface-foreground-brand-secondary: var(--brand-50);
|
|
277
|
+
--interface-foreground-default-inverted: var(--ui-white);
|
|
278
|
+
--interface-foreground-default-primary: var(--ui-900);
|
|
279
|
+
--interface-foreground-default-secondary: var(--ui-700);
|
|
280
|
+
--interface-foreground-default-tertiary: var(--ui-500);
|
|
281
|
+
--interface-foreground-disabled-disabled: var(--ui-300);
|
|
282
|
+
--interface-foreground-disabled-on-disabled: var(--ui-400);
|
|
283
|
+
--interface-foreground-validation-danger: var(--ui-danger);
|
|
284
|
+
--interface-foreground-validation-success: var(--ui-success);
|
|
285
|
+
--interface-foreground-validation-warning: var(--ui-warning);
|
|
286
|
+
/* interface end */
|
|
287
|
+
|
|
288
|
+
/* Specific elements */
|
|
289
|
+
--button-identifier-background-default: var(
|
|
290
|
+
--interface-background-brand-secondary
|
|
291
|
+
);
|
|
292
|
+
--button-identifier-background-hover: var(
|
|
293
|
+
--interface-background-brand-secondary-hover
|
|
294
|
+
);
|
|
295
|
+
--button-identifier-border-border-default: var(
|
|
296
|
+
--interface-border-brand-brand
|
|
297
|
+
);
|
|
298
|
+
--button-identifier-border-border-hover: var(--interface-border-brand-brand);
|
|
299
|
+
--button-identifier-foreground-default: var(
|
|
300
|
+
--interface-foreground-brand-on-secondary
|
|
301
|
+
);
|
|
302
|
+
--button-identifier-foreground-hover: var(
|
|
303
|
+
--interface-foreground-brand-on-secondary
|
|
304
|
+
);
|
|
305
|
+
--button-link-brand-brand: var(--interface-foreground-brand-primary);
|
|
306
|
+
--button-link-brand-brand-hover: var(--interface-foreground-default-primary);
|
|
307
|
+
--button-link-default-primary: var(--interface-foreground-default-primary);
|
|
308
|
+
--button-link-default-primary-hover: var(
|
|
309
|
+
--interface-foreground-brand-primary
|
|
310
|
+
);
|
|
311
|
+
--button-link-default-secondary: var(
|
|
312
|
+
--interface-foreground-default-secondary
|
|
313
|
+
);
|
|
314
|
+
--button-link-default-secondary-hover: var(
|
|
315
|
+
--interface-foreground-default-tertiary
|
|
316
|
+
);
|
|
317
|
+
--button-link-disabled-disabled: var(
|
|
318
|
+
--interface-foreground-disabled-disabled
|
|
319
|
+
);
|
|
320
|
+
--button-primary-background-default: var(
|
|
321
|
+
--interface-background-brand-primary
|
|
322
|
+
);
|
|
323
|
+
--button-primary-background-disabled: var(
|
|
324
|
+
--interface-background-disabled-disabled
|
|
325
|
+
);
|
|
326
|
+
--button-primary-background-hover: var(
|
|
327
|
+
--interface-background-brand-primary-hover
|
|
328
|
+
);
|
|
329
|
+
--button-primary-border-default: var(--interface-border-default-none);
|
|
330
|
+
--button-primary-border-disabled: var(--interface-border-disabled-disabled);
|
|
331
|
+
--button-primary-border-hover: var(--interface-border-default-none);
|
|
332
|
+
--button-primary-foreground-default: var(
|
|
333
|
+
--interface-foreground-brand-on-primary
|
|
334
|
+
);
|
|
335
|
+
--button-primary-foreground-disabled: var(
|
|
336
|
+
--interface-foreground-disabled-on-disabled
|
|
337
|
+
);
|
|
338
|
+
--button-primary-foreground-hover: var(
|
|
339
|
+
--interface-foreground-brand-on-primary
|
|
340
|
+
);
|
|
341
|
+
--button-secondary-background-default: var(
|
|
342
|
+
--interface-background-default-primary
|
|
343
|
+
);
|
|
344
|
+
--button-secondary-background-disabled: var(
|
|
345
|
+
--interface-background-disabled-disabled
|
|
346
|
+
);
|
|
347
|
+
--button-secondary-background-hover: var(
|
|
348
|
+
--interface-background-default-primary-hover
|
|
349
|
+
);
|
|
350
|
+
--button-secondary-border-default: var(--interface-border-default-primary);
|
|
351
|
+
--button-secondary-border-disabled: var(--interface-border-disabled-disabled);
|
|
352
|
+
--button-secondary-border-hover: var(--interface-border-default-primary);
|
|
353
|
+
--button-secondary-foreground-default: var(
|
|
354
|
+
--interface-foreground-default-primary
|
|
355
|
+
);
|
|
356
|
+
--button-secondary-foreground-disabled: var(
|
|
357
|
+
--interface-foreground-disabled-on-disabled
|
|
358
|
+
);
|
|
359
|
+
--button-secondary-foreground-hover: var(
|
|
360
|
+
--interface-foreground-default-secondary
|
|
361
|
+
);
|
|
362
|
+
--button-social-background-default: var(
|
|
363
|
+
--interface-background-default-primary
|
|
364
|
+
);
|
|
365
|
+
--button-social-background-disabled: var(
|
|
366
|
+
--interface-background-disabled-disabled
|
|
367
|
+
);
|
|
368
|
+
--button-social-background-generic-provider: var(
|
|
369
|
+
--interface-background-default-inverted
|
|
370
|
+
);
|
|
371
|
+
--button-social-background-hover: var(
|
|
372
|
+
--interface-background-default-primary-hover
|
|
373
|
+
);
|
|
374
|
+
--button-social-border-default: var(--interface-border-default-primary);
|
|
375
|
+
--button-social-border-disabled: var(--interface-border-disabled-disabled);
|
|
376
|
+
--button-social-border-generic-provider: var(--interface-border-default-none);
|
|
377
|
+
--button-social-border-hover: var(--interface-border-default-primary);
|
|
378
|
+
--button-social-foreground-default: var(
|
|
379
|
+
--interface-foreground-default-primary
|
|
380
|
+
);
|
|
381
|
+
--button-social-foreground-disabled: var(
|
|
382
|
+
--interface-foreground-disabled-on-disabled
|
|
383
|
+
);
|
|
384
|
+
--button-social-foreground-generic-provider: var(
|
|
385
|
+
--interface-foreground-default-inverted
|
|
386
|
+
);
|
|
387
|
+
--button-social-foreground-hover: var(
|
|
388
|
+
--interface-foreground-default-secondary
|
|
389
|
+
);
|
|
390
|
+
--checkbox-background-checked: var(--interface-background-brand-primary);
|
|
391
|
+
--checkbox-background-default: var(--interface-background-default-secondary);
|
|
392
|
+
--checkbox-border-checkbox-border-checked: var(
|
|
393
|
+
--interface-border-brand-brand
|
|
394
|
+
);
|
|
395
|
+
--checkbox-border-checkbox-border-default: var(
|
|
396
|
+
--interface-border-default-primary
|
|
397
|
+
);
|
|
398
|
+
--checkbox-foreground-checked: var(--interface-foreground-brand-on-primary);
|
|
399
|
+
--checkbox-foreground-default: var(--interface-foreground-default-primary);
|
|
400
|
+
--form-background-default: var(--interface-background-default-primary);
|
|
401
|
+
--form-border-default: var(--interface-border-default-primary);
|
|
402
|
+
--input-background-default: var(--interface-background-default-primary);
|
|
403
|
+
--input-background-disabled: var(--interface-background-disabled-disabled);
|
|
404
|
+
--input-background-hover: var(--interface-background-default-primary-hover);
|
|
405
|
+
--input-border-default: var(--interface-border-default-primary);
|
|
406
|
+
--input-border-disabled: var(--interface-border-disabled-disabled);
|
|
407
|
+
--input-border-focus: var(--interface-border-brand-brand);
|
|
408
|
+
--input-border-hover: var(--interface-border-default-primary);
|
|
409
|
+
--input-foreground-disabled: var(--interface-foreground-disabled-on-disabled);
|
|
410
|
+
--input-foreground-primary: var(--interface-foreground-default-primary);
|
|
411
|
+
--input-foreground-secondary: var(--interface-foreground-default-secondary);
|
|
412
|
+
--input-foreground-tertiary: var(--interface-foreground-default-tertiary);
|
|
413
|
+
--ory-background-default: var(--interface-background-default-primary);
|
|
414
|
+
--ory-border-default: var(--interface-border-default-primary);
|
|
415
|
+
--ory-foreground-default: var(--interface-foreground-default-primary);
|
|
416
|
+
--radio-background-checked: var(--interface-background-brand-primary);
|
|
417
|
+
--radio-background-default: var(--interface-background-default-secondary);
|
|
418
|
+
--radio-border-checked: var(--interface-border-brand-brand);
|
|
419
|
+
--radio-border-default: var(--interface-border-default-primary);
|
|
420
|
+
--radio-foreground-checked: var(--interface-foreground-brand-on-primary);
|
|
421
|
+
--radio-foreground-default: var(--interface-foreground-default-primary);
|
|
422
|
+
--toggle-background-checked: var(--interface-background-brand-primary);
|
|
423
|
+
--toggle-background-default: var(--interface-background-default-secondary);
|
|
424
|
+
--toggle-border-checked: var(--interface-border-default-none);
|
|
425
|
+
--toggle-border-default: var(--interface-border-default-primary);
|
|
426
|
+
--toggle-foreground-checked: var(--interface-foreground-brand-on-primary);
|
|
427
|
+
--toggle-foreground-default: var(--interface-foreground-brand-primary);
|
|
428
|
+
/* Specific elements end */
|
|
429
|
+
|
|
430
|
+
/* border radius */
|
|
431
|
+
--border-radius-buttons: 0.25rem;
|
|
432
|
+
--border-radius-forms: 0.25rem;
|
|
433
|
+
--border-radius-general: 0.25rem;
|
|
434
|
+
--border-radius-branding: 0.5rem;
|
|
435
|
+
--border-radius-cards: 0.75rem;
|
|
436
|
+
--border-radius-identifier: 62.4375rem;
|
|
437
|
+
/* border radius end*/
|
|
211
438
|
}
|
|
212
439
|
```
|
|
213
440
|
|
|
214
|
-
### Component
|
|
441
|
+
### Component system
|
|
215
442
|
|
|
216
443
|
Many components in Ory Elements can be overriden with your own implementation.
|
|
217
444
|
Ory Elements also provides useful hooks that be used inside of your custom
|
|
@@ -249,6 +476,28 @@ export default async function RegistrationPage({ searchParams }: PageProps) {
|
|
|
249
476
|
}
|
|
250
477
|
```
|
|
251
478
|
|
|
479
|
+
### internationalization (i18n)
|
|
480
|
+
|
|
481
|
+
`@ory/elements-react` comes with default translations for many languages.
|
|
482
|
+
Additionally, it provides a way to override the default messages, through the
|
|
483
|
+
`locale` property of the `OryClientConfiguration`.
|
|
484
|
+
|
|
485
|
+
```ts
|
|
486
|
+
const config = {
|
|
487
|
+
intl: {
|
|
488
|
+
locale: "en", // Or any of the other supported locales.
|
|
489
|
+
customTranslations: {
|
|
490
|
+
en: {
|
|
491
|
+
"identities.messages.1040006": "This is a custom translation",
|
|
492
|
+
},
|
|
493
|
+
},
|
|
494
|
+
},
|
|
495
|
+
}
|
|
496
|
+
```
|
|
497
|
+
|
|
498
|
+
For a full list of messages, see
|
|
499
|
+
[en.json](https://github.com/ory/elements/blob/main/packages/elements-react/src/locales/en.json).
|
|
500
|
+
|
|
252
501
|
## Development
|
|
253
502
|
|
|
254
503
|
See [DEVELOPMENT.md](./DEVELOPMENT.md).
|
package/babel.config.js
ADDED
|
@@ -1,7 +1,10 @@
|
|
|
1
|
-
import { ConfigurationParameters, FrontendApi } from '@ory/client-fetch';
|
|
1
|
+
import { ConfigurationParameters, FrontendApi, OAuth2Api } from '@ory/client-fetch';
|
|
2
2
|
|
|
3
3
|
declare function frontendClient({ forceBaseUrl, ...opts }?: Partial<ConfigurationParameters & {
|
|
4
4
|
forceBaseUrl?: string;
|
|
5
5
|
}>): FrontendApi;
|
|
6
|
+
declare function oauth2Client({ forceBaseUrl, ...opts }?: Partial<ConfigurationParameters & {
|
|
7
|
+
forceBaseUrl?: string;
|
|
8
|
+
}>): OAuth2Api;
|
|
6
9
|
|
|
7
|
-
export { frontendClient };
|
|
10
|
+
export { frontendClient, oauth2Client };
|
|
@@ -1,7 +1,10 @@
|
|
|
1
|
-
import { ConfigurationParameters, FrontendApi } from '@ory/client-fetch';
|
|
1
|
+
import { ConfigurationParameters, FrontendApi, OAuth2Api } from '@ory/client-fetch';
|
|
2
2
|
|
|
3
3
|
declare function frontendClient({ forceBaseUrl, ...opts }?: Partial<ConfigurationParameters & {
|
|
4
4
|
forceBaseUrl?: string;
|
|
5
5
|
}>): FrontendApi;
|
|
6
|
+
declare function oauth2Client({ forceBaseUrl, ...opts }?: Partial<ConfigurationParameters & {
|
|
7
|
+
forceBaseUrl?: string;
|
|
8
|
+
}>): OAuth2Api;
|
|
6
9
|
|
|
7
|
-
export { frontendClient };
|
|
10
|
+
export { frontendClient, oauth2Client };
|
|
@@ -19,7 +19,8 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
19
19
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
20
20
|
var frontendClient_exports = {};
|
|
21
21
|
__export(frontendClient_exports, {
|
|
22
|
-
frontendClient: () => frontendClient
|
|
22
|
+
frontendClient: () => frontendClient,
|
|
23
|
+
oauth2Client: () => oauth2Client
|
|
23
24
|
});
|
|
24
25
|
module.exports = __toCommonJS(frontendClient_exports);
|
|
25
26
|
var import_client_fetch = require("@ory/client-fetch");
|
|
@@ -45,8 +46,30 @@ function frontendClient({
|
|
|
45
46
|
});
|
|
46
47
|
return new import_client_fetch.FrontendApi(config);
|
|
47
48
|
}
|
|
49
|
+
function oauth2Client({
|
|
50
|
+
forceBaseUrl,
|
|
51
|
+
...opts
|
|
52
|
+
} = {
|
|
53
|
+
credentials: "include"
|
|
54
|
+
}) {
|
|
55
|
+
var _a;
|
|
56
|
+
const basePath = forceBaseUrl != null ? forceBaseUrl : (0, import_config.guessPotentiallyProxiedOrySdkUrl)({
|
|
57
|
+
knownProxiedUrl: window.location.origin
|
|
58
|
+
});
|
|
59
|
+
const config = new import_client_fetch.Configuration({
|
|
60
|
+
...opts,
|
|
61
|
+
basePath: basePath == null ? void 0 : basePath.replace(/\/$/, ""),
|
|
62
|
+
credentials: (_a = opts.credentials) != null ? _a : "include",
|
|
63
|
+
headers: {
|
|
64
|
+
Accept: "application/json",
|
|
65
|
+
...opts.headers
|
|
66
|
+
}
|
|
67
|
+
});
|
|
68
|
+
return new import_client_fetch.OAuth2Api(config);
|
|
69
|
+
}
|
|
48
70
|
// Annotate the CommonJS export names for ESM import in node:
|
|
49
71
|
0 && (module.exports = {
|
|
50
|
-
frontendClient
|
|
72
|
+
frontendClient,
|
|
73
|
+
oauth2Client
|
|
51
74
|
});
|
|
52
75
|
//# sourceMappingURL=frontendClient.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/client/frontendClient.ts"],"sourcesContent":["// Copyright © 2024 Ory Corp\n// SPDX-License-Identifier: Apache-2.0\n\"use client\"\nimport {\n Configuration,\n ConfigurationParameters,\n FrontendApi,\n} from \"@ory/client-fetch\"\nimport { guessPotentiallyProxiedOrySdkUrl } from \"./config\"\n\nexport function frontendClient(\n {\n forceBaseUrl,\n ...opts\n }: Partial<ConfigurationParameters & { forceBaseUrl?: string }> = {\n credentials: \"include\",\n },\n) {\n const basePath =\n forceBaseUrl ??\n guessPotentiallyProxiedOrySdkUrl({\n knownProxiedUrl: window.location.origin,\n })\n\n const config = new Configuration({\n ...opts,\n basePath: basePath?.replace(/\\/$/, \"\"),\n credentials: opts.credentials ?? \"include\",\n headers: {\n Accept: \"application/json\",\n ...opts.headers,\n },\n })\n return new FrontendApi(config)\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,
|
|
1
|
+
{"version":3,"sources":["../../src/client/frontendClient.ts"],"sourcesContent":["// Copyright © 2024 Ory Corp\n// SPDX-License-Identifier: Apache-2.0\n\"use client\"\nimport {\n Configuration,\n ConfigurationParameters,\n FrontendApi,\n OAuth2Api,\n} from \"@ory/client-fetch\"\nimport { guessPotentiallyProxiedOrySdkUrl } from \"./config\"\n\nexport function frontendClient(\n {\n forceBaseUrl,\n ...opts\n }: Partial<ConfigurationParameters & { forceBaseUrl?: string }> = {\n credentials: \"include\",\n },\n) {\n const basePath =\n forceBaseUrl ??\n guessPotentiallyProxiedOrySdkUrl({\n knownProxiedUrl: window.location.origin,\n })\n\n const config = new Configuration({\n ...opts,\n basePath: basePath?.replace(/\\/$/, \"\"),\n credentials: opts.credentials ?? \"include\",\n headers: {\n Accept: \"application/json\",\n ...opts.headers,\n },\n })\n return new FrontendApi(config)\n}\n\nexport function oauth2Client(\n {\n forceBaseUrl,\n ...opts\n }: Partial<ConfigurationParameters & { forceBaseUrl?: string }> = {\n credentials: \"include\",\n },\n) {\n const basePath =\n forceBaseUrl ??\n guessPotentiallyProxiedOrySdkUrl({\n knownProxiedUrl: window.location.origin,\n })\n\n const config = new Configuration({\n ...opts,\n basePath: basePath?.replace(/\\/$/, \"\"),\n credentials: opts.credentials ?? \"include\",\n headers: {\n Accept: \"application/json\",\n ...opts.headers,\n },\n })\n return new OAuth2Api(config)\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,0BAKO;AACP,oBAAiD;AAE1C,SAAS,eACd;AAAA,EACE;AAAA,EACA,GAAG;AACL,IAAkE;AAAA,EAChE,aAAa;AACf,GACA;AAlBF;AAmBE,QAAM,WACJ,0CACA,gDAAiC;AAAA,IAC/B,iBAAiB,OAAO,SAAS;AAAA,EACnC,CAAC;AAEH,QAAM,SAAS,IAAI,kCAAc;AAAA,IAC/B,GAAG;AAAA,IACH,UAAU,qCAAU,QAAQ,OAAO;AAAA,IACnC,cAAa,UAAK,gBAAL,YAAoB;AAAA,IACjC,SAAS;AAAA,MACP,QAAQ;AAAA,MACR,GAAG,KAAK;AAAA,IACV;AAAA,EACF,CAAC;AACD,SAAO,IAAI,gCAAY,MAAM;AAC/B;AAEO,SAAS,aACd;AAAA,EACE;AAAA,EACA,GAAG;AACL,IAAkE;AAAA,EAChE,aAAa;AACf,GACA;AA5CF;AA6CE,QAAM,WACJ,0CACA,gDAAiC;AAAA,IAC/B,iBAAiB,OAAO,SAAS;AAAA,EACnC,CAAC;AAEH,QAAM,SAAS,IAAI,kCAAc;AAAA,IAC/B,GAAG;AAAA,IACH,UAAU,qCAAU,QAAQ,OAAO;AAAA,IACnC,cAAa,UAAK,gBAAL,YAAoB;AAAA,IACjC,SAAS;AAAA,MACP,QAAQ;AAAA,MACR,GAAG,KAAK;AAAA,IACV;AAAA,EACF,CAAC;AACD,SAAO,IAAI,8BAAU,MAAM;AAC7B;","names":[]}
|