@royaloperahouse/chord 2.6.1-b-development → 2.6.1-d-development
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/dist/chord.cjs.development.js +73 -13
- package/dist/chord.cjs.development.js.map +1 -1
- package/dist/chord.cjs.production.min.js +1 -1
- package/dist/chord.cjs.production.min.js.map +1 -1
- package/dist/chord.esm.js +73 -13
- package/dist/chord.esm.js.map +1 -1
- package/dist/helpers/forms.d.ts +4 -0
- package/package.json +3 -2
|
@@ -4202,12 +4202,14 @@ var TextField = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
4202
4202
|
|
|
4203
4203
|
return /*#__PURE__*/React__default.createElement(Container$1, null, /*#__PURE__*/React__default.createElement("label", null, !!label && /*#__PURE__*/React__default.createElement(TextLabel$1, {
|
|
4204
4204
|
darkMode: darkMode,
|
|
4205
|
-
"data-testid": "text-field-text-label"
|
|
4205
|
+
"data-testid": "text-field-text-label",
|
|
4206
|
+
"aria-hidden": true
|
|
4206
4207
|
}, /*#__PURE__*/React__default.createElement(AltHeader, {
|
|
4207
4208
|
level: 6
|
|
4208
4209
|
}, label)), /*#__PURE__*/React__default.createElement(InputWrapper, {
|
|
4209
4210
|
width: width
|
|
4210
4211
|
}, /*#__PURE__*/React__default.createElement(Input, Object.assign({
|
|
4212
|
+
"aria-label": label,
|
|
4211
4213
|
isPasswordField: isPasswordField,
|
|
4212
4214
|
type: inputType,
|
|
4213
4215
|
error: error,
|
|
@@ -4221,7 +4223,10 @@ var TextField = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
4221
4223
|
level: 1
|
|
4222
4224
|
}, showHideButtonText)))), !!error && /*#__PURE__*/React__default.createElement(ErrorLabel$1, {
|
|
4223
4225
|
darkMode: darkMode,
|
|
4224
|
-
|
|
4226
|
+
id: inputProps.name + "-error",
|
|
4227
|
+
"data-testid": "text-field-error-label",
|
|
4228
|
+
role: "alert",
|
|
4229
|
+
"aria-live": "assertive"
|
|
4225
4230
|
}, /*#__PURE__*/React__default.createElement(AltHeader, {
|
|
4226
4231
|
level: 6
|
|
4227
4232
|
}, error)));
|
|
@@ -11298,14 +11303,14 @@ var Wrapper$8 = /*#__PURE__*/styled__default('div')(_templateObject$1k || (_temp
|
|
|
11298
11303
|
return "var(--base-color-" + theme + ")";
|
|
11299
11304
|
});
|
|
11300
11305
|
var SignUpFormWrapper = /*#__PURE__*/styled__default(Grid)(_templateObject2$Z || (_templateObject2$Z = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n gap: 0 var(--grid-column-gap);\n margin-bottom: 32px;\n"])));
|
|
11301
|
-
var SignUpTitleWrapper = /*#__PURE__*/styled__default('div')(_templateObject3$P || (_templateObject3$P = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n text-align: left;\n position: relative;\n top: -25px;\n left: -20px;\n background: var(--base-color-white);\n display: inline-block;\n padding: 0 20px;\n
|
|
11306
|
+
var SignUpTitleWrapper = /*#__PURE__*/styled__default('div')(_templateObject3$P || (_templateObject3$P = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n text-align: left;\n position: relative;\n top: -25px;\n left: -20px;\n background: var(--base-color-white);\n display: inline-block;\n padding: 0 20px;\n\n @media ", " {\n top: -18px;\n padding: 0 13px;\n left: -13px;\n }\n"])), devices.mobile);
|
|
11302
11307
|
var Error$1 = /*#__PURE__*/styled__default.div(_templateObject4$E || (_templateObject4$E = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin-top: 20px;\n color: var(--base-color-errorstate);\n a {\n text-decoration: underline;\n color: inherit;\n }\n"])));
|
|
11303
11308
|
var Form = /*#__PURE__*/styled__default.form(_templateObject5$x || (_templateObject5$x = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin-top: 20px;\n align-items: center;\n ", " {\n margin-top: -20px;\n }\n a[href] {\n color: inherit;\n }\n"])), Error$1);
|
|
11304
|
-
var FormFooterWrapper = /*#__PURE__*/styled__default.div(_templateObject6$p || (_templateObject6$p = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin-top: 32px;\n display: flex;\n gap: 21px;\n align-items: center;\n
|
|
11309
|
+
var FormFooterWrapper = /*#__PURE__*/styled__default.div(_templateObject6$p || (_templateObject6$p = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin-top: 32px;\n display: flex;\n gap: 21px;\n align-items: center;\n\n @media ", " {\n flex-direction: column-reverse;\n align-items: flex-start;\n margin-bottom: 20px;\n }\n"])), devices.mobile);
|
|
11305
11310
|
var ServerError = /*#__PURE__*/styled__default.div(_templateObject7$h || (_templateObject7$h = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n text-align: left;\n color: var(--base-color-errorstate);\n"])));
|
|
11306
|
-
var CTALinkWrapper = /*#__PURE__*/styled__default.a(_templateObject8$d || (_templateObject8$d = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n
|
|
11311
|
+
var CTALinkWrapper = /*#__PURE__*/styled__default.a(_templateObject8$d || (_templateObject8$d = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n color: var(--base-color-black);\n div {\n font-size: 14px;\n }\n"])));
|
|
11307
11312
|
var ButtonWrapper$3 = /*#__PURE__*/styled__default.button(_templateObject9$8 || (_templateObject9$8 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n all: unset;\n width: fit-content;\n\n @media ", " {\n width: 100%;\n }\n &:focus {\n outline: 3px solid var(--base-color-lapislazuli);\n }\n"])), devices.mobile);
|
|
11308
|
-
var FieldsWrapper = /*#__PURE__*/styled__default.div(_templateObject10$8 || (_templateObject10$8 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: grid;\n grid-template-columns: repeat(3, 1fr);\n gap: 36px;\n\n @media ", " {\n grid-template-columns: 1fr;\n gap: 20px;\n }\n
|
|
11313
|
+
var FieldsWrapper = /*#__PURE__*/styled__default.div(_templateObject10$8 || (_templateObject10$8 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: grid;\n grid-template-columns: repeat(3, 1fr);\n gap: 36px;\n\n @media ", " {\n grid-template-columns: 1fr;\n gap: 20px;\n }\n"])), devices.mobile);
|
|
11309
11314
|
|
|
11310
11315
|
var regex = {
|
|
11311
11316
|
signInEmail: /^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,
|
|
@@ -11315,7 +11320,11 @@ var regex = {
|
|
|
11315
11320
|
var formValidationMessages = {
|
|
11316
11321
|
requiredFieldMessage: 'Please complete this field',
|
|
11317
11322
|
firstName: {
|
|
11318
|
-
invalid: 'Please enter your first name'
|
|
11323
|
+
invalid: 'Please enter your full first name',
|
|
11324
|
+
required: 'Please enter a first name'
|
|
11325
|
+
},
|
|
11326
|
+
lastName: {
|
|
11327
|
+
required: 'Please enter a last name'
|
|
11319
11328
|
},
|
|
11320
11329
|
email: {
|
|
11321
11330
|
required: 'Please enter an email address',
|
|
@@ -11382,6 +11391,44 @@ var SignUpForm = function SignUpForm(_ref) {
|
|
|
11382
11391
|
};
|
|
11383
11392
|
};
|
|
11384
11393
|
|
|
11394
|
+
var handleBlur = function handleBlur(field) {
|
|
11395
|
+
return function () {
|
|
11396
|
+
var value = formValues[field];
|
|
11397
|
+
var errorMessage;
|
|
11398
|
+
|
|
11399
|
+
if (!value) {
|
|
11400
|
+
switch (field) {
|
|
11401
|
+
case 'firstName':
|
|
11402
|
+
errorMessage = formValidationMessages.firstName.required;
|
|
11403
|
+
break;
|
|
11404
|
+
|
|
11405
|
+
case 'lastName':
|
|
11406
|
+
errorMessage = formValidationMessages.lastName.required;
|
|
11407
|
+
break;
|
|
11408
|
+
|
|
11409
|
+
case 'email':
|
|
11410
|
+
errorMessage = formValidationMessages.email.required;
|
|
11411
|
+
break;
|
|
11412
|
+
|
|
11413
|
+
default:
|
|
11414
|
+
errorMessage = formValidationMessages.requiredFieldMessage;
|
|
11415
|
+
}
|
|
11416
|
+
} else if (field === 'email' && !regex.signInEmail.test(value)) {
|
|
11417
|
+
errorMessage = formValidationMessages.email.invalid;
|
|
11418
|
+
} else if (field === 'firstName' && !regex.firstName.test(value)) {
|
|
11419
|
+
errorMessage = formValidationMessages.firstName.invalid;
|
|
11420
|
+
}
|
|
11421
|
+
|
|
11422
|
+
if (errorMessage) {
|
|
11423
|
+
setErrors(function (prev) {
|
|
11424
|
+
var _extends4;
|
|
11425
|
+
|
|
11426
|
+
return _extends({}, prev, (_extends4 = {}, _extends4[field] = errorMessage, _extends4));
|
|
11427
|
+
});
|
|
11428
|
+
}
|
|
11429
|
+
};
|
|
11430
|
+
};
|
|
11431
|
+
|
|
11385
11432
|
var handleFormSubmit = /*#__PURE__*/function () {
|
|
11386
11433
|
var _ref2 = _asyncToGenerator( /*#__PURE__*/runtime_1.mark(function _callee(e) {
|
|
11387
11434
|
var formErrors, response;
|
|
@@ -11403,13 +11450,13 @@ var SignUpForm = function SignUpForm(_ref) {
|
|
|
11403
11450
|
|
|
11404
11451
|
if (!isLoggedIn) {
|
|
11405
11452
|
if (!formValues.firstName) {
|
|
11406
|
-
formErrors.firstName = formValidationMessages.
|
|
11453
|
+
formErrors.firstName = formValidationMessages.firstName.required;
|
|
11407
11454
|
} else if (!regex.firstName.test(formValues.firstName)) {
|
|
11408
11455
|
formErrors.firstName = formValidationMessages.firstName.invalid;
|
|
11409
11456
|
}
|
|
11410
11457
|
|
|
11411
11458
|
if (!formValues.lastName) {
|
|
11412
|
-
formErrors.lastName = formValidationMessages.
|
|
11459
|
+
formErrors.lastName = formValidationMessages.lastName.required;
|
|
11413
11460
|
}
|
|
11414
11461
|
|
|
11415
11462
|
if (!formValues.email) {
|
|
@@ -11493,6 +11540,10 @@ var SignUpForm = function SignUpForm(_ref) {
|
|
|
11493
11540
|
maxLength: 20,
|
|
11494
11541
|
error: errors.firstName,
|
|
11495
11542
|
onChange: handleChange('firstName'),
|
|
11543
|
+
onBlur: handleBlur('firstName'),
|
|
11544
|
+
"aria-required": "true",
|
|
11545
|
+
"aria-invalid": !!errors.firstName,
|
|
11546
|
+
"aria-describedby": errors.firstName ? 'firstName-error' : undefined,
|
|
11496
11547
|
autoComplete: "given-name"
|
|
11497
11548
|
}), /*#__PURE__*/React__default.createElement(TextField, {
|
|
11498
11549
|
label: "Last name",
|
|
@@ -11502,6 +11553,10 @@ var SignUpForm = function SignUpForm(_ref) {
|
|
|
11502
11553
|
value: formValues.lastName,
|
|
11503
11554
|
error: errors.lastName,
|
|
11504
11555
|
onChange: handleChange('lastName'),
|
|
11556
|
+
onBlur: handleBlur('lastName'),
|
|
11557
|
+
"aria-required": "true",
|
|
11558
|
+
"aria-invalid": !!errors.lastName,
|
|
11559
|
+
"aria-describedby": errors.lastName ? 'lastName-error' : undefined,
|
|
11505
11560
|
autoComplete: "family-name"
|
|
11506
11561
|
}), /*#__PURE__*/React__default.createElement(TextField, {
|
|
11507
11562
|
label: "Email",
|
|
@@ -11510,15 +11565,20 @@ var SignUpForm = function SignUpForm(_ref) {
|
|
|
11510
11565
|
value: formValues.email,
|
|
11511
11566
|
error: errors.email || errors.serverError,
|
|
11512
11567
|
onChange: handleChange('email'),
|
|
11568
|
+
onBlur: handleBlur('email'),
|
|
11569
|
+
"aria-required": "true",
|
|
11570
|
+
"aria-invalid": !!errors.email,
|
|
11571
|
+
"aria-describedby": errors.email ? 'email-error' : undefined,
|
|
11513
11572
|
maxLength: 80
|
|
11514
11573
|
})), isLoggedIn && !!errors.serverError && /*#__PURE__*/React__default.createElement(GridItem, {
|
|
11515
11574
|
columnStartDesktop: 2,
|
|
11516
11575
|
columnSpanDesktop: 12,
|
|
11517
|
-
columnStartTablet: 2,
|
|
11518
|
-
columnSpanTablet: 12,
|
|
11519
11576
|
columnStartDevice: 2,
|
|
11520
11577
|
columnSpanDevice: 12
|
|
11521
|
-
}, /*#__PURE__*/React__default.createElement(ServerError,
|
|
11578
|
+
}, /*#__PURE__*/React__default.createElement(ServerError, {
|
|
11579
|
+
role: "alert",
|
|
11580
|
+
"aria-live": "assertive"
|
|
11581
|
+
}, /*#__PURE__*/React__default.createElement(AltHeader, {
|
|
11522
11582
|
level: 6
|
|
11523
11583
|
}, errors.serverError))), /*#__PURE__*/React__default.createElement(FormFooterWrapper, null, /*#__PURE__*/React__default.createElement(ButtonWrapper$3, {
|
|
11524
11584
|
type: "submit"
|
|
@@ -11527,7 +11587,7 @@ var SignUpForm = function SignUpForm(_ref) {
|
|
|
11527
11587
|
}, "Sign up")), /*#__PURE__*/React__default.createElement(CTALinkWrapper, {
|
|
11528
11588
|
href: ctaPrivacy.link
|
|
11529
11589
|
}, /*#__PURE__*/React__default.createElement(BodyText, {
|
|
11530
|
-
level:
|
|
11590
|
+
level: 1
|
|
11531
11591
|
}, ctaPrivacy.text)))))));
|
|
11532
11592
|
};
|
|
11533
11593
|
|