@connectid-tools/idp-selector-react 6.4.1

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 (70) hide show
  1. package/Benefits.css +48 -0
  2. package/Benefits.d.ts +4 -0
  3. package/Benefits.js +20 -0
  4. package/CidButton.css +57 -0
  5. package/CidButton.d.ts +26 -0
  6. package/CidButton.js +133 -0
  7. package/CidButtonHowItWorks.css +25 -0
  8. package/CidButtonHowItWorks.d.ts +2 -0
  9. package/CidButtonHowItWorks.js +20 -0
  10. package/CidButtonInfo.css +33 -0
  11. package/CidButtonInfo.d.ts +2 -0
  12. package/CidButtonInfo.js +8 -0
  13. package/FullProcess.css +150 -0
  14. package/FullProcess.d.ts +4 -0
  15. package/FullProcess.js +35 -0
  16. package/IdpLogoList.css +53 -0
  17. package/IdpLogoList.d.ts +8 -0
  18. package/IdpLogoList.js +13 -0
  19. package/InfoBox.css +49 -0
  20. package/InfoBox.d.ts +9 -0
  21. package/InfoBox.js +12 -0
  22. package/IntroText.css +24 -0
  23. package/IntroText.d.ts +5 -0
  24. package/IntroText.js +14 -0
  25. package/LearnMore.css +27 -0
  26. package/LearnMore.d.ts +2 -0
  27. package/LearnMore.js +20 -0
  28. package/NoIdpError.d.ts +6 -0
  29. package/NoIdpError.js +12 -0
  30. package/Overlay.css +9 -0
  31. package/Overlay.d.ts +6 -0
  32. package/Overlay.js +6 -0
  33. package/ParticipantsLoader.css +50 -0
  34. package/ParticipantsLoader.d.ts +2 -0
  35. package/ParticipantsLoader.js +12 -0
  36. package/Popup.css +457 -0
  37. package/Popup.d.ts +22 -0
  38. package/Popup.js +137 -0
  39. package/Process.css +51 -0
  40. package/Process.d.ts +2 -0
  41. package/Process.js +12 -0
  42. package/README.md +633 -0
  43. package/Skeleton.css +27 -0
  44. package/Skeleton.d.ts +10 -0
  45. package/Skeleton.js +5 -0
  46. package/TabHook.d.ts +2 -0
  47. package/TabHook.js +37 -0
  48. package/ThemeContext.d.ts +2 -0
  49. package/ThemeContext.js +2 -0
  50. package/analytics.d.ts +1 -0
  51. package/analytics.js +88 -0
  52. package/certification.d.ts +8 -0
  53. package/certification.js +103 -0
  54. package/certification.test.d.ts +1 -0
  55. package/certification.test.js +387 -0
  56. package/global.css +11 -0
  57. package/index.d.ts +1 -0
  58. package/index.js +1 -0
  59. package/license +201 -0
  60. package/navigator.d.ts +1 -0
  61. package/navigator.js +1 -0
  62. package/package.json +46 -0
  63. package/types.d.ts +41 -0
  64. package/types.js +1 -0
  65. package/userAgent.d.ts +2 -0
  66. package/userAgent.js +10 -0
  67. package/validator.d.ts +3 -0
  68. package/validator.js +12 -0
  69. package/validator.test.d.ts +1 -0
  70. package/validator.test.js +36 -0
package/README.md ADDED
@@ -0,0 +1,633 @@
1
+ # IDP Selector - React
2
+
3
+ ## 👋 Getting Started
4
+
5
+ Install the package in your project using:
6
+
7
+ ```shell
8
+ npm install @connectid-tools/idp-selector-react
9
+ ```
10
+
11
+ Place the `<CidButton>` component where you want to render the ConnectID button in your page:
12
+
13
+ ```jsx
14
+ import { CidButton } from '@connectid-tools/idp-selector-react'
15
+
16
+ <CidButton
17
+ onProceed={(authorisationServerClicked: string) => {
18
+ /* do something here */
19
+ }}
20
+ claims={['email']}
21
+ type="full process"
22
+ showInfoContent
23
+ />
24
+ ```
25
+
26
+ Your page should render a widget similar to this 👇 And when the button is clicked a popup is displayed with Identity Providers.
27
+
28
+ ![](/images/readme_screenshot.png)
29
+
30
+ ## ⭐ CidButton Options
31
+
32
+ | key | description | type | required | default |
33
+ | ------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | ------------------------------------------------- | ------------------------------------------------------- |
34
+ | onProceed | Callback to be called when IDP Selector `Proceed` button is clicked | (authorisationServerId: string) => void | yes | - |
35
+ | claims | List of claims to be displayed to the user and will be requested from IDP to be shared. If `requiredClaims` not supplied then only IDPs that support all listed `claims` will be displayed to the user. | Claim[] | yes | - |
36
+ | requiredClaims | List of claims to be supported by IDPs. Must be a subset of `claims`. Where an RP can successfully complete their use case without all claims specified in `claims`, they can specify `requiredClaims` with the minimum list of claims needed, which will then be used for filtering and may result in additional IDP options being displayed to the customer. | Claim[] | no (`claims` will be used if no `requiredClaims`) | - |
37
+ | label | The button label. Do not use 'Sign Up'. It is deprecated. | 'Verify' \| 'Login' \| 'Sign Up' \| 'Age check' \| 'Sign up' \| 'Authenticate' \| 'Checkout' | no | 'Verify' |
38
+ | size | The button size | 'regular' \| 'large' | no | 'regular' |
39
+ | participantsUri | Registry API URI used to retrieve the list of participating Identity Providers. Should be changed only for testing. | string | no | 'https://data.directory.connectid.com.au/participants' |
40
+ | certificationStatus | Filter Identity Provider by certification status. | 'Active' \| 'All' | no | 'Active' |
41
+ | requiredCertifications | Filter Identity Provider by certifications. | RequiredCertification[] | no | All certifications. |
42
+ | rpLogoUrl | URL of the RP logo (your logo). Size 40x40. | URL | no | No logo. |
43
+ | rpDataSharingDescription | The text that goes under the popup title explaining how shared data will be used. | string | no | 'Your details will be shared with the current website.' |
44
+ | enableManualVerification | Whether an option to verify identity manually is displayed or not. | boolean | no | false |
45
+ | type | The type of ConnectID button widget. [More details here](#type) | 'tiny' \| 'medium benefits' \| 'medium process' \| 'full benefits' \| 'full process' | no | undefined (shows only ConnectID button). |
46
+ | introTextType | The text that goes above the ConnectID button. [More details here](#introTextType) | 'verify-trust' \| 'verify-account' \| 'power' \| 'sign-up' \| yes when `type` is set. | - |
47
+ | fullProcessCollapsible | Whether process items are collapsible or not. Only available when `type` is `full process`. | boolean | no | false |
48
+ | showAllParticipants | Show all participants regardless of any other option. **_This should only be used for testing_**. | boolean | no | false |
49
+ | theme | ConnectID button theme. | 'dark' \| 'light' | no | 'dark' |
50
+ | logoLockupStyle | Logo lockup theme | 'dark' \| 'light' | no | 'light' |
51
+ | showInfoContent | The text that goes below the ConnectID button [More details here](#infoContent) | boolean | false | false |
52
+ | onError | Callback to be called when there is an error fetching participants or invalid options. | () => void | no | () => {} // do nothing |
53
+
54
+ #### certificationStatus values
55
+
56
+ - `Active`: only IDPs with active certification
57
+ - `All`: All IDPs
58
+
59
+ #### RequiredCertification type
60
+
61
+ ```typescript
62
+ // TDIF.IDP = TDIF Accreditation, Identity Provider
63
+ // 'Redirect.FAPI2' = Redirect, FAPI2 Adv. OP w/Private Key, PAR
64
+ type RequiredCertification = 'TDIF.IDP' | 'Redirect.FAPI2'
65
+
66
+ // filtering participants with TDIF.IDP
67
+ <CidButton requiredCertifications={['TDIF.IDP']} />
68
+
69
+ // filtering participants with TDIF.IDP and Redirect.FAPI2
70
+ // only participants with both certification will be returned
71
+ <CidButton requiredCertifications={['TDIF.IDP', 'Redirect.FAPI2']} />
72
+ ```
73
+
74
+ #### Claim type
75
+
76
+ ```typescript
77
+ type Claim =
78
+ | 'given_name'
79
+ | 'middle_name'
80
+ | 'family_name'
81
+ | 'phone_number'
82
+ | 'email'
83
+ | 'address'
84
+ | 'birthdate'
85
+ | 'over18'
86
+ | 'over21'
87
+ | 'over25'
88
+ | 'over65'
89
+ | 'beneficiary_account_au'
90
+ | 'beneficiary_account_au_payid'
91
+ | 'beneficiary_account_international'
92
+
93
+ // e.g.
94
+ <CidButton claims={['email', 'given_name', 'birthdate']} />
95
+ ```
96
+
97
+ #### More examples
98
+
99
+ ```typescript
100
+
101
+ // ConnectID button with `Continue with ConnectID` label, sandbox participants URI, RP logo and claims
102
+ <CidButton
103
+ label="Continue"
104
+ participantsUri="https://data.directory.sandbox.connectid.com.au/participants" rpLogoUrl="https://www.nasa.gov/sites/all/themes/custom/nasatwo/images/nasa-logo.svg"
105
+ claims={['email', 'given_name', 'birthdate', 'phone_number', 'address']}
106
+ />
107
+
108
+ // ConnectID button loading all Identity Providers (with and without certification)
109
+ <CidButton certificationStatus="All" claims={['birthdate', 'given_name']} />
110
+ ```
111
+
112
+ ## ⚙️ Widgets
113
+
114
+ ### <a name="type"></a>Type option
115
+
116
+ ### Tiny
117
+
118
+ - When type is not set, only ConnectID button is displayed.
119
+ - When type is set to `tiny`, the ConnectID plus other elements below are displayed.
120
+ <details>
121
+ <summary>Tiny example</summary>
122
+
123
+ ![](/images/readme_type_tiny.png 'IDP Selector type option set with `tiny`')
124
+ </details>
125
+
126
+ ### Medium benefits
127
+
128
+ - `medium benefits` type is a variation of the `tiny` type. It includes the same elements as the `tiny` type plus a list of benefits.
129
+
130
+ <details>
131
+ <summary>Medium benefits example</summary>
132
+
133
+ ![](/images/readme_type_medium_benefits.png 'IDP Selector type option set with `medium benefits`')
134
+ </details>
135
+
136
+ ### Medium process
137
+
138
+ - `medium process` type is a variation of the `medium benefits` type. The only difference is a list of steps (process) instead of a list of benefits.
139
+
140
+ <details>
141
+ <summary>Medium process example</summary>
142
+
143
+ ![](/images/readme_type_medium_process.png 'IDP Selector type option set with `medium process`')
144
+ </details>
145
+
146
+ ### Full benefits
147
+
148
+ - `full benefits` type is a variation of the `medium benefits` type. It displays a bigger list of benefits.
149
+
150
+ <details>
151
+ <summary>Full benefits example</summary>
152
+
153
+ ![](/images/readme_type_full_benefits.png 'IDP Selector type option set with `medium benefits`')
154
+ </details>
155
+
156
+ ### Full process
157
+
158
+ - `full process` type is a variation of the `full benefits` type. The only difference is a list of steps (process) instead of a list of benefits.
159
+
160
+ <details>
161
+ <summary>Full process example</summary>
162
+
163
+ ![](/images/readme_type_full_process.png 'IDP Selector type option set with `full process`')
164
+ </details>
165
+
166
+ ### <a name="introTextType"></a>introTextType option
167
+
168
+ > \[!NOTE]
169
+ >
170
+ > The intro text is a set of pre-defined paragraphs that you need to pick from. The text is not customizable. See below.
171
+ > The text that goes above the ConnectID button. The text is a set of pre-defined paragraphs that you need to pick from. The text is not customizable
172
+
173
+ All elements have classes that can be styled with CSS to match you brand identity. To style the intro text "You choose how to share ...", for example, you would use the following CSS:
174
+
175
+ ```css
176
+ .cid-idp-selector-intro-text {
177
+ font-size: 13px;
178
+ color: blue;
179
+ }
180
+ ```
181
+
182
+ <details>
183
+ <summary>Introduction text options</summary>
184
+
185
+ `verify-trust`: ConnectID lets you verify your identity through details stored with an organisation you already trust, like your bank.\
186
+ `verify-account`: ConnectID gives you the power to choose how you share your details, using organisations you already trust.\
187
+ `power`: ConnectID gives you the power to choose how you share your details, using organisations you already trust.
188
+
189
+ </details>
190
+
191
+ ### <a name="infoContent"></a>infoContent option
192
+
193
+ This is an optional field in addition with the widgets below the ConnectID button to either display or not display the information content.
194
+
195
+ <details>
196
+ <summary>Info content</summary>
197
+
198
+ ![](/images/readme_below_button.png 'Below information content')
199
+ </details>
200
+
201
+
202
+ ### <a name="logoLockupStyle"></a>logoLockup option
203
+
204
+ The SVG image below the ConnectID button has either option dark or light mode. By default it set as light mode.
205
+
206
+ > \[!NOTE]
207
+ >
208
+ > The light mode logo has a transparent background.
209
+
210
+ <details>
211
+ <summary>Logo lockup mode</summary>
212
+
213
+ **Light mode:** <br>
214
+ ![Light mode logo](https://cdn.connectid.com.au/images/idp-selector/logo-lockup/logo-lockup-light.svg)
215
+
216
+ **Dark mode:** <br>
217
+ ![Dark mode logo](https://cdn.connectid.com.au/images/idp-selector/logo-lockup/logo-lockup-dark.svg)
218
+ </details>
219
+
220
+
221
+ ## 🚀 Release Notes
222
+
223
+ ### 6.4.1 (Feb 24, 2025)
224
+ - Update README.
225
+ - Add license file to bundle.
226
+
227
+ ### 6.4.0 (Feb 12, 2025)
228
+ - Add new `introTextType` option.
229
+
230
+ ### 6.3.0 (Feb 3, 2025)
231
+ - Support `over16` claim.
232
+
233
+ ### 6.2.2 (Jan 22, 2025)
234
+ - Fix icon and text alignment.
235
+
236
+ ### 6.2.1 (Jan 9, 2025)
237
+ - Update README example using `type` option.
238
+
239
+ ### 6.2.0 (Dec 11, 2024)
240
+ - Added `showInfoContent` option.
241
+ - Removed `name` claim field.
242
+
243
+ ### 6.1.1 (Dec 5, 2024)
244
+ - Fix screen reader focus for greyed out tile.
245
+
246
+ ### 6.1.0 (Dec 2, 2024)
247
+ - Widget release for `tiny`, `medium` and `full` sizes options.
248
+ - Add `logoLockupStyle` option.
249
+
250
+ ### 6.0.0 (Nov 27, 2024)
251
+
252
+ - Breaking change:
253
+ - Updated both intro text and types.
254
+ - Updated URL link for ConnectID use case.
255
+ - Updated `full process` `type`.
256
+
257
+ <details>
258
+ <summary>🚀 Release Version 5.x.x</summary>
259
+
260
+ ### 5.5.2 (Nov 20, 2024)
261
+ - Update IDP container to show 4.5 tiles.
262
+
263
+ ### 5.5.1 (Nov 5, 2024)
264
+
265
+ - Add `charcoal` colour to button info.
266
+
267
+ ### 5.5.0 (Oct 10, 2024)
268
+
269
+ - Add `fullProcessCollapsible` option.
270
+
271
+ ### 5.4.1 (Oct 10, 2024)
272
+
273
+ - Fix `tiny` spacing.
274
+
275
+ ### 5.4.0 (Oct 9, 2024)
276
+
277
+ - Add `full process` `type`.
278
+
279
+ ### 5.3.0 (Oct 8, 2024)
280
+
281
+ - Add `full benefits` `type`.
282
+
283
+ ### 5.2.1 (Oct 8, 2024)
284
+
285
+ - Replace `how does it work` with `learn more` on `medium process` option.
286
+
287
+ ### 5.2.0 (Oct 4, 2024)
288
+
289
+ - Add `medium process` `type`.
290
+
291
+ ### 5.1.0 (Oct 3, 2024)
292
+
293
+ - Add `medium benefits` `type`.
294
+ - Fix info icon shrinking.
295
+
296
+ ### 5.0.1 (Oct 3, 2024)
297
+
298
+ - Use SVG info icon.
299
+ - Fix margins.
300
+
301
+ ### 5.0.0 (Oct 2, 2024)
302
+
303
+ - Add `type` option.
304
+ - Add `introText` option.
305
+ - Breaking change:
306
+ - `showIdpLogoList` option was removed. Use `type` instead.
307
+
308
+ </details>
309
+
310
+ <details>
311
+ <summary>🚀 Release Version 4.x.x</summary>
312
+
313
+ ### 4.13.1 (Sep 9, 2024)
314
+
315
+ - Take into account certification start date when filtering by certifications.
316
+
317
+ ### 4.13.0 (Sep 5, 2024)
318
+
319
+ - Add `showIdpLogoList` option.
320
+
321
+ ### 4.12.3 (Sep 4, 2024)
322
+
323
+ - Update `beneficiary_account_au` claim label.
324
+
325
+ ### 4.12.2 (Sep 4, 2024)
326
+
327
+ - Change ConnectID button font weight.
328
+
329
+ ### 4.12.1 (Aug 2, 2024)
330
+
331
+ - Replace `jest` with Node native test runner.
332
+
333
+ ### 4.12.0 (Aug 2, 2024)
334
+
335
+ - Add `Authenticate`, `Sign up`, `Checkout`, `Login` button labels.
336
+
337
+ ### 4.11.1 (Jul 23, 2024)
338
+
339
+ - Set font color on IDP name, "What's ConnectID" section and manual verification link.
340
+
341
+ ### 4.11.0 (Jul 12, 2024)
342
+
343
+ - Announce to screen readers when there is an error loading participants.
344
+
345
+ ### 4.10.0 (Jul 9, 2024)
346
+
347
+ - Announce to screen readers when loading participants is displayed.
348
+
349
+ ### 4.9.5 (Jul 9, 2024)
350
+
351
+ - Fix `Details requested` losing focus on `Enter`.
352
+
353
+ ### 4.9.4 (Jul 8, 2024)
354
+
355
+ - Manual provider not working on keyboard `Enter` key.
356
+
357
+ ### 4.9.3 (Jun 18, 2024)
358
+
359
+ - `rp_sub_brand` is set with `window.location.hostname`
360
+
361
+ ### 4.9.2 (Jun 5, 2024)
362
+
363
+ - Change participants loader from skeleton to text plus spinner.
364
+
365
+ ### 4.9.1 (May 29, 2024)
366
+
367
+ - Fix error message in mobile view.
368
+
369
+ ### 4.9.0 (May 22, 2024)
370
+
371
+ - Display ConnectID button while participants is loaded (rather than wait participants to show the button).
372
+ - Fix claims being centered on certain screen sizes.
373
+ - Infobox size updated to be dynamic.
374
+
375
+ ### 4.8.8 (May 20, 2024)
376
+
377
+ - Improve confirm identity button contrast.
378
+
379
+ ### 4.8.7 (May 20, 2024)
380
+
381
+ - Make popup dot animation finite.
382
+
383
+ ### 4.8.6 (May 16, 2024)
384
+
385
+ - Trap focus inside popup.
386
+
387
+ ### 4.8.5 (May 15, 2024)
388
+
389
+ - Make `Details requested` accessible by keyboard.
390
+
391
+ ### 4.8.4 (May 14, 2024)
392
+
393
+ - Use `li` for lists.
394
+
395
+ ### 4.8.3 (May 13, 2024)
396
+
397
+ - Change all `tabindex` to `0`.
398
+
399
+ ### 4.8.2 (May 13, 2024)
400
+
401
+ - Add `<title>` and `role` to ConnectID logo.
402
+
403
+ ### 4.8.1 (May 13, 2024)
404
+
405
+ - Add `aria-label` to popup close button.
406
+
407
+ ### 4.8.0 (Mar 12, 2023)
408
+
409
+ - Add `onError` callback option.
410
+ - Set ConnectID button `type="button"`.
411
+
412
+ ### 4.7.1 (Jan 29, 2024)
413
+
414
+ - Send url origin instead of full url when posting `rp_sub_brand` event.
415
+
416
+ ### 4.7.0 (Jan 11, 2023)
417
+
418
+ - Send `rp_sub_brand`, `idp_name`, `source` and `link_url` event properties.
419
+
420
+ ### 4.6.0 (Dec 12, 2023)
421
+
422
+ - Add `Link to External page clicked` event.
423
+
424
+ ### 4.5.2 (Dec 11, 2023)
425
+
426
+ - Rename existing analytics event names.
427
+
428
+ ### 4.5.1 (Nov 1, 2023)
429
+
430
+ - Fix button label responsiveness.
431
+
432
+ ### 4.5.0 (Oct 26, 2023)
433
+
434
+ - Add `requiredClaims` option so that RPs can specify the minimum set of claims an IDP must support to be considered as a candidate to use for the flow.
435
+
436
+ ### 4.4.3 (Oct 20, 2023)
437
+
438
+ - Manual verification button label is no longer bold on mobile.
439
+
440
+ ### 4.4.2 (Oct 19, 2023)
441
+
442
+ - Popup dots animation.
443
+
444
+ ### 4.4.1 (Oct 10, 2023)
445
+
446
+ - Display claims in two columns on mobile.
447
+
448
+ ### 4.4.0 (Aug 9, 2023)
449
+
450
+ - Add analytics.
451
+
452
+ ### 4.3.0 (Aug 4, 2023)
453
+
454
+ - Add button `size` option.
455
+
456
+ ### 4.2.4 (Aug 1, 2023)
457
+
458
+ - Update claim labels.
459
+
460
+ ### 4.2.3 (Jul 31, 2023)
461
+
462
+ - Update ConnectID button styles.
463
+
464
+ ### 4.2.2 (Jun 29, 2023)
465
+
466
+ - Update manual verification copy.
467
+
468
+ ### 4.2.1 (Jun 29, 2023)
469
+
470
+ - Update `What is ConnectID` copy.
471
+
472
+ ### 4.2.0 (Jun 22, 2023)
473
+
474
+ - Add `theme` option.
475
+
476
+ ### 4.1.0 (May 22, 2023)
477
+
478
+ - `showAllParticipants` option.
479
+
480
+ ### 4.0.2 (May 22, 2023)
481
+
482
+ - Fix filter by device.
483
+
484
+ ### 4.0.1 (May 15, 2023)
485
+
486
+ - Fix filter by claims.
487
+
488
+ ### 4.0.0 (May 11, 2023)
489
+
490
+ - Breaking change:
491
+ - Filter IDPs that supports all `claims` option.
492
+ - `claims` is required.
493
+
494
+ </details>
495
+
496
+ <details>
497
+ <summary>🚀 Release Version 3.x.x</summary>
498
+
499
+ ### 3.0.0 (May 10, 2023)
500
+
501
+ - Breaking change:
502
+ - `certificationStatus="Active"` now returns only authorisation servers that have at least one certification with `ProfileType === 'Redirect' && ProfileVariant === 'FAPI2 Adv. OP w/Private Key, PAR'` (needs to be `Status === 'Certified'` and `CertificationExpirationDate` not expired as well).
503
+ - Removed `Inactive` from `certificationStatus`.
504
+ - Filter authorisation servers by certification channel (`app` and `web`).
505
+
506
+ </details>
507
+
508
+ <details>
509
+ <summary>🚀 Release Version 2.x.x</summary>
510
+
511
+
512
+ ### 2.1.1 (Apr 28, 2023)
513
+
514
+ - Compile to ES6.
515
+
516
+ ### 2.1.0 (Apr 26, 2023)
517
+
518
+ - Handle only one manual IDP use case.
519
+
520
+ ### 2.0.0 (Mar 30, 2023)
521
+
522
+ - Update claims:
523
+ - `beneficiary_account_au` replaces `beneficiary_account`.
524
+ - `beneficiary_account_au_payid` replaces `pay_id`.
525
+ - New claim `beneficiary_account_international`.
526
+ - Fix claims toggle on mobile.
527
+
528
+ </details>
529
+
530
+ <details>
531
+ <summary>🚀 Release Version 1.x.x</summary>
532
+
533
+ ### 1.7.0 (Mar 14, 2023)
534
+
535
+ - Add claims: `'over18', 'over21', 'over25', 'over65', 'beneficiary_account', 'pay_id'`.
536
+
537
+ ### 1.6.5 (Mar 13, 2023)
538
+
539
+ - `Active` `certificationStatus` will only return `Certified` authorisation servers. Previously, it was returning `Self-Certified` as well.
540
+
541
+ ### 1.6.4 (Feb 28, 2023)
542
+
543
+ - Fix IDP container height and add scrollbar.
544
+
545
+ ### 1.6.3 (Feb 21, 2023)
546
+
547
+ - Change IDP error message layout.
548
+
549
+ ### 1.6.2 (Feb 21, 2023)
550
+
551
+ - auto-fit claims on mobile (482px width).
552
+ - Reduce margin between details and providers on mobile (482px width).
553
+ - Increase font size of providers on mobile (482px width).
554
+ - Center logos, title and description on mobile (482px width).
555
+
556
+ ### 1.6.1 (Feb 20, 2023)
557
+
558
+ - Fix manual identity provider `ProfileVariant` (Fallback Identity Service Provider).
559
+
560
+ ### 1.6.0 (Feb 20, 2023)
561
+
562
+ - `Roobert` font.
563
+
564
+ ### 1.5.3 (Feb 17, 2023)
565
+
566
+ - Fix `What is ConnectID` section layout.
567
+ - Fix RP logo size on mobile (482px width).
568
+
569
+ ### 1.5.2 (Feb 9, 2023)
570
+
571
+ - Wrap claims and IDPs into white box on mobile (482px width).
572
+
573
+ ### 1.5.1 (Feb 7, 2023)
574
+
575
+ - Manual verification on mobile (482px width).
576
+
577
+ ### 1.5.0 (Feb 7, 2023)
578
+
579
+ - Collapse claims on mobile (482px width).
580
+ - Smaller fonts for titles on mobile (482px width).
581
+
582
+ ### 1.4.2 (Feb 3, 2023)
583
+
584
+ - Sort claims: `name, given_name, middle_name, family_name, birthdate, email, address, phone_number`.
585
+
586
+ ### 1.4.1 (Feb 2, 2023)
587
+
588
+ - Minor layout changes.
589
+
590
+ ### 1.4.0 (Feb 2, 2023)
591
+
592
+ - Add `enableManualVerification` option. See `CidButton Options`.
593
+
594
+ ### 1.3.2 (Jan 30, 2023)
595
+
596
+ - Fix popup `position`.
597
+
598
+ ### 1.3.1 (Jan 25, 2023)
599
+
600
+ - Fix claims width.
601
+
602
+ ### 1.3.0 (Jan 25, 2023)
603
+
604
+ - New participant layout.
605
+ - Remove `Cancel` and `Proceed` buttons.
606
+
607
+ ### 1.2.0 (Jan 25, 2023)
608
+
609
+ - Add `What is ConnectID?` section.
610
+ - Remove `My bank is not listed`.
611
+
612
+ ### 1.1.0 (Jan 24, 2023)
613
+
614
+ - Add popup close button.
615
+ - Fix claims list on small screens.
616
+
617
+ ### 1.0.0 (Jan 24, 2023)
618
+
619
+ - New layout.
620
+ - New prop `rpDataSharingDescription`. See `CidButton Options`.
621
+ - **Breaking changes:**
622
+ - new button label values.
623
+
624
+ ```typescript
625
+ type CidButtonLabel = 'Verify' | 'Sign Up' | 'Age check'
626
+ ```
627
+
628
+ ### 0.4.5 (Jan 6, 2023)
629
+
630
+ - Starting point.
631
+ </details>
632
+
633
+ [Back to top](#top)
package/Skeleton.css ADDED
@@ -0,0 +1,27 @@
1
+ @keyframes animation {
2
+ 0% {
3
+ left: -150px;
4
+ }
5
+ 100% {
6
+ left: 100%;
7
+ }
8
+ }
9
+ .cid-idp-selector-skeleton {
10
+ position: relative;
11
+ overflow: hidden;
12
+ border-radius: 5px;
13
+ }
14
+ .cid-idp-selector-skeleton:after {
15
+ content: '';
16
+ display: block;
17
+ position: absolute;
18
+ left: -150px;
19
+ top: 0;
20
+ height: 100%;
21
+ width: 150px;
22
+ background: linear-gradient(to right, transparent 0%, white 50%, transparent 100%);
23
+ animation-name: animation;
24
+ animation-duration: 1s;
25
+ animation-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
26
+ animation-iteration-count: infinite;
27
+ }
package/Skeleton.d.ts ADDED
@@ -0,0 +1,10 @@
1
+ import React from 'react';
2
+ import './Skeleton.css';
3
+ type SkeletonProps = {
4
+ height: string;
5
+ width?: string;
6
+ background?: string;
7
+ dataTestId?: string;
8
+ };
9
+ export declare const Skeleton: React.FC<SkeletonProps>;
10
+ export {};
package/Skeleton.js ADDED
@@ -0,0 +1,5 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import './Skeleton.css';
3
+ export const Skeleton = ({ height, dataTestId, width = '100%', background = 'whitesmoke', }) => {
4
+ return _jsx("div", { className: "cid-idp-selector-skeleton", style: { height, width, background }, "data-testid": dataTestId });
5
+ };
package/TabHook.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ export declare function useOverrideTab<T extends HTMLElement, U extends HTMLElement>(element: React.RefObject<T> | null, nextElement: React.RefObject<U> | null): void;
2
+ export declare function useOverrideShiftTab<T extends HTMLElement, U extends HTMLElement>(element: React.RefObject<T> | null, nextElement: React.RefObject<U> | null): void;