@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
package/dist/chord.esm.js
CHANGED
|
@@ -4207,12 +4207,14 @@ var TextField = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
|
4207
4207
|
|
|
4208
4208
|
return /*#__PURE__*/React__default.createElement(Container$1, null, /*#__PURE__*/React__default.createElement("label", null, !!label && /*#__PURE__*/React__default.createElement(TextLabel$1, {
|
|
4209
4209
|
darkMode: darkMode,
|
|
4210
|
-
"data-testid": "text-field-text-label"
|
|
4210
|
+
"data-testid": "text-field-text-label",
|
|
4211
|
+
"aria-hidden": true
|
|
4211
4212
|
}, /*#__PURE__*/React__default.createElement(AltHeader, {
|
|
4212
4213
|
level: 6
|
|
4213
4214
|
}, label)), /*#__PURE__*/React__default.createElement(InputWrapper, {
|
|
4214
4215
|
width: width
|
|
4215
4216
|
}, /*#__PURE__*/React__default.createElement(Input, Object.assign({
|
|
4217
|
+
"aria-label": label,
|
|
4216
4218
|
isPasswordField: isPasswordField,
|
|
4217
4219
|
type: inputType,
|
|
4218
4220
|
error: error,
|
|
@@ -4226,7 +4228,10 @@ var TextField = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
|
4226
4228
|
level: 1
|
|
4227
4229
|
}, showHideButtonText)))), !!error && /*#__PURE__*/React__default.createElement(ErrorLabel$1, {
|
|
4228
4230
|
darkMode: darkMode,
|
|
4229
|
-
|
|
4231
|
+
id: inputProps.name + "-error",
|
|
4232
|
+
"data-testid": "text-field-error-label",
|
|
4233
|
+
role: "alert",
|
|
4234
|
+
"aria-live": "assertive"
|
|
4230
4235
|
}, /*#__PURE__*/React__default.createElement(AltHeader, {
|
|
4231
4236
|
level: 6
|
|
4232
4237
|
}, error)));
|
|
@@ -11303,14 +11308,14 @@ var Wrapper$8 = /*#__PURE__*/styled('div')(_templateObject$1k || (_templateObjec
|
|
|
11303
11308
|
return "var(--base-color-" + theme + ")";
|
|
11304
11309
|
});
|
|
11305
11310
|
var SignUpFormWrapper = /*#__PURE__*/styled(Grid)(_templateObject2$Z || (_templateObject2$Z = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n gap: 0 var(--grid-column-gap);\n margin-bottom: 32px;\n"])));
|
|
11306
|
-
var SignUpTitleWrapper = /*#__PURE__*/styled('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
|
|
11311
|
+
var SignUpTitleWrapper = /*#__PURE__*/styled('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);
|
|
11307
11312
|
var Error$1 = /*#__PURE__*/styled.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"])));
|
|
11308
11313
|
var Form = /*#__PURE__*/styled.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);
|
|
11309
|
-
var FormFooterWrapper = /*#__PURE__*/styled.div(_templateObject6$p || (_templateObject6$p = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin-top: 32px;\n display: flex;\n gap: 21px;\n align-items: center;\n
|
|
11314
|
+
var FormFooterWrapper = /*#__PURE__*/styled.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);
|
|
11310
11315
|
var ServerError = /*#__PURE__*/styled.div(_templateObject7$h || (_templateObject7$h = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n text-align: left;\n color: var(--base-color-errorstate);\n"])));
|
|
11311
|
-
var CTALinkWrapper = /*#__PURE__*/styled.a(_templateObject8$d || (_templateObject8$d = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n
|
|
11316
|
+
var CTALinkWrapper = /*#__PURE__*/styled.a(_templateObject8$d || (_templateObject8$d = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n color: var(--base-color-black);\n div {\n font-size: 14px;\n }\n"])));
|
|
11312
11317
|
var ButtonWrapper$3 = /*#__PURE__*/styled.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);
|
|
11313
|
-
var FieldsWrapper = /*#__PURE__*/styled.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
|
|
11318
|
+
var FieldsWrapper = /*#__PURE__*/styled.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);
|
|
11314
11319
|
|
|
11315
11320
|
var regex = {
|
|
11316
11321
|
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,}))$/,
|
|
@@ -11320,7 +11325,11 @@ var regex = {
|
|
|
11320
11325
|
var formValidationMessages = {
|
|
11321
11326
|
requiredFieldMessage: 'Please complete this field',
|
|
11322
11327
|
firstName: {
|
|
11323
|
-
invalid: 'Please enter your first name'
|
|
11328
|
+
invalid: 'Please enter your full first name',
|
|
11329
|
+
required: 'Please enter a first name'
|
|
11330
|
+
},
|
|
11331
|
+
lastName: {
|
|
11332
|
+
required: 'Please enter a last name'
|
|
11324
11333
|
},
|
|
11325
11334
|
email: {
|
|
11326
11335
|
required: 'Please enter an email address',
|
|
@@ -11387,6 +11396,44 @@ var SignUpForm = function SignUpForm(_ref) {
|
|
|
11387
11396
|
};
|
|
11388
11397
|
};
|
|
11389
11398
|
|
|
11399
|
+
var handleBlur = function handleBlur(field) {
|
|
11400
|
+
return function () {
|
|
11401
|
+
var value = formValues[field];
|
|
11402
|
+
var errorMessage;
|
|
11403
|
+
|
|
11404
|
+
if (!value) {
|
|
11405
|
+
switch (field) {
|
|
11406
|
+
case 'firstName':
|
|
11407
|
+
errorMessage = formValidationMessages.firstName.required;
|
|
11408
|
+
break;
|
|
11409
|
+
|
|
11410
|
+
case 'lastName':
|
|
11411
|
+
errorMessage = formValidationMessages.lastName.required;
|
|
11412
|
+
break;
|
|
11413
|
+
|
|
11414
|
+
case 'email':
|
|
11415
|
+
errorMessage = formValidationMessages.email.required;
|
|
11416
|
+
break;
|
|
11417
|
+
|
|
11418
|
+
default:
|
|
11419
|
+
errorMessage = formValidationMessages.requiredFieldMessage;
|
|
11420
|
+
}
|
|
11421
|
+
} else if (field === 'email' && !regex.signInEmail.test(value)) {
|
|
11422
|
+
errorMessage = formValidationMessages.email.invalid;
|
|
11423
|
+
} else if (field === 'firstName' && !regex.firstName.test(value)) {
|
|
11424
|
+
errorMessage = formValidationMessages.firstName.invalid;
|
|
11425
|
+
}
|
|
11426
|
+
|
|
11427
|
+
if (errorMessage) {
|
|
11428
|
+
setErrors(function (prev) {
|
|
11429
|
+
var _extends4;
|
|
11430
|
+
|
|
11431
|
+
return _extends({}, prev, (_extends4 = {}, _extends4[field] = errorMessage, _extends4));
|
|
11432
|
+
});
|
|
11433
|
+
}
|
|
11434
|
+
};
|
|
11435
|
+
};
|
|
11436
|
+
|
|
11390
11437
|
var handleFormSubmit = /*#__PURE__*/function () {
|
|
11391
11438
|
var _ref2 = _asyncToGenerator( /*#__PURE__*/runtime_1.mark(function _callee(e) {
|
|
11392
11439
|
var formErrors, response;
|
|
@@ -11408,13 +11455,13 @@ var SignUpForm = function SignUpForm(_ref) {
|
|
|
11408
11455
|
|
|
11409
11456
|
if (!isLoggedIn) {
|
|
11410
11457
|
if (!formValues.firstName) {
|
|
11411
|
-
formErrors.firstName = formValidationMessages.
|
|
11458
|
+
formErrors.firstName = formValidationMessages.firstName.required;
|
|
11412
11459
|
} else if (!regex.firstName.test(formValues.firstName)) {
|
|
11413
11460
|
formErrors.firstName = formValidationMessages.firstName.invalid;
|
|
11414
11461
|
}
|
|
11415
11462
|
|
|
11416
11463
|
if (!formValues.lastName) {
|
|
11417
|
-
formErrors.lastName = formValidationMessages.
|
|
11464
|
+
formErrors.lastName = formValidationMessages.lastName.required;
|
|
11418
11465
|
}
|
|
11419
11466
|
|
|
11420
11467
|
if (!formValues.email) {
|
|
@@ -11498,6 +11545,10 @@ var SignUpForm = function SignUpForm(_ref) {
|
|
|
11498
11545
|
maxLength: 20,
|
|
11499
11546
|
error: errors.firstName,
|
|
11500
11547
|
onChange: handleChange('firstName'),
|
|
11548
|
+
onBlur: handleBlur('firstName'),
|
|
11549
|
+
"aria-required": "true",
|
|
11550
|
+
"aria-invalid": !!errors.firstName,
|
|
11551
|
+
"aria-describedby": errors.firstName ? 'firstName-error' : undefined,
|
|
11501
11552
|
autoComplete: "given-name"
|
|
11502
11553
|
}), /*#__PURE__*/React__default.createElement(TextField, {
|
|
11503
11554
|
label: "Last name",
|
|
@@ -11507,6 +11558,10 @@ var SignUpForm = function SignUpForm(_ref) {
|
|
|
11507
11558
|
value: formValues.lastName,
|
|
11508
11559
|
error: errors.lastName,
|
|
11509
11560
|
onChange: handleChange('lastName'),
|
|
11561
|
+
onBlur: handleBlur('lastName'),
|
|
11562
|
+
"aria-required": "true",
|
|
11563
|
+
"aria-invalid": !!errors.lastName,
|
|
11564
|
+
"aria-describedby": errors.lastName ? 'lastName-error' : undefined,
|
|
11510
11565
|
autoComplete: "family-name"
|
|
11511
11566
|
}), /*#__PURE__*/React__default.createElement(TextField, {
|
|
11512
11567
|
label: "Email",
|
|
@@ -11515,15 +11570,20 @@ var SignUpForm = function SignUpForm(_ref) {
|
|
|
11515
11570
|
value: formValues.email,
|
|
11516
11571
|
error: errors.email || errors.serverError,
|
|
11517
11572
|
onChange: handleChange('email'),
|
|
11573
|
+
onBlur: handleBlur('email'),
|
|
11574
|
+
"aria-required": "true",
|
|
11575
|
+
"aria-invalid": !!errors.email,
|
|
11576
|
+
"aria-describedby": errors.email ? 'email-error' : undefined,
|
|
11518
11577
|
maxLength: 80
|
|
11519
11578
|
})), isLoggedIn && !!errors.serverError && /*#__PURE__*/React__default.createElement(GridItem, {
|
|
11520
11579
|
columnStartDesktop: 2,
|
|
11521
11580
|
columnSpanDesktop: 12,
|
|
11522
|
-
columnStartTablet: 2,
|
|
11523
|
-
columnSpanTablet: 12,
|
|
11524
11581
|
columnStartDevice: 2,
|
|
11525
11582
|
columnSpanDevice: 12
|
|
11526
|
-
}, /*#__PURE__*/React__default.createElement(ServerError,
|
|
11583
|
+
}, /*#__PURE__*/React__default.createElement(ServerError, {
|
|
11584
|
+
role: "alert",
|
|
11585
|
+
"aria-live": "assertive"
|
|
11586
|
+
}, /*#__PURE__*/React__default.createElement(AltHeader, {
|
|
11527
11587
|
level: 6
|
|
11528
11588
|
}, errors.serverError))), /*#__PURE__*/React__default.createElement(FormFooterWrapper, null, /*#__PURE__*/React__default.createElement(ButtonWrapper$3, {
|
|
11529
11589
|
type: "submit"
|
|
@@ -11532,7 +11592,7 @@ var SignUpForm = function SignUpForm(_ref) {
|
|
|
11532
11592
|
}, "Sign up")), /*#__PURE__*/React__default.createElement(CTALinkWrapper, {
|
|
11533
11593
|
href: ctaPrivacy.link
|
|
11534
11594
|
}, /*#__PURE__*/React__default.createElement(BodyText, {
|
|
11535
|
-
level:
|
|
11595
|
+
level: 1
|
|
11536
11596
|
}, ctaPrivacy.text)))))));
|
|
11537
11597
|
};
|
|
11538
11598
|
|