@servicetitan/onboarding-ui 11.0.0 → 12.1.0
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/utils/__tests__/country-helpers.test.js +16 -0
- package/dist/utils/__tests__/country-helpers.test.js.map +1 -1
- package/dist/utils/country-helpers.d.ts +2 -1
- package/dist/utils/country-helpers.d.ts.map +1 -1
- package/dist/utils/country-helpers.js +5 -0
- package/dist/utils/country-helpers.js.map +1 -1
- package/package.json +3 -3
- package/src/utils/__tests__/country-helpers.test.ts +17 -0
- package/src/utils/country-helpers.ts +5 -0
|
@@ -25,6 +25,22 @@ describe('[Country Helpers]', () => {
|
|
|
25
25
|
expect(validator('123 456')).toBeFalsy();
|
|
26
26
|
});
|
|
27
27
|
});
|
|
28
|
+
describe('Australia', () => {
|
|
29
|
+
it('should return error message if zip code is invalid', () => {
|
|
30
|
+
const errorMessage = 'Invalid Zip Code';
|
|
31
|
+
const validator = zipCodeValidator(() => Country.Australia, errorMessage);
|
|
32
|
+
expect(validator('123')).toBe(errorMessage);
|
|
33
|
+
expect(validator('12345')).toBe(errorMessage);
|
|
34
|
+
expect(validator('abcd')).toBe(errorMessage);
|
|
35
|
+
});
|
|
36
|
+
it('should return false if zip code is valid', () => {
|
|
37
|
+
const errorMessage = 'Invalid Zip Code';
|
|
38
|
+
const validator = zipCodeValidator(() => Country.Australia, errorMessage);
|
|
39
|
+
expect(validator('1234')).toBeFalsy();
|
|
40
|
+
expect(validator('0000')).toBeFalsy();
|
|
41
|
+
expect(validator('9999')).toBeFalsy();
|
|
42
|
+
});
|
|
43
|
+
});
|
|
28
44
|
});
|
|
29
45
|
});
|
|
30
46
|
//# sourceMappingURL=country-helpers.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"country-helpers.test.js","sourceRoot":"","sources":["../../../src/utils/__tests__/country-helpers.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAE/D,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IAC/B,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;QAC9B,QAAQ,CAAC,KAAK,EAAE,GAAG,EAAE;YACjB,EAAE,CAAC,oDAAoD,EAAE,GAAG,EAAE;gBAC1D,MAAM,YAAY,GAAG,kBAAkB,CAAC;gBACxC,MAAM,SAAS,GAAG,gBAAgB,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;gBACpE,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACjD,CAAC,CAAC,CAAC;YACH,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;gBAChD,MAAM,YAAY,GAAG,kBAAkB,CAAC;gBACxC,MAAM,SAAS,GAAG,gBAAgB,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;gBACpE,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;YAC3C,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,QAAQ,EAAE,GAAG,EAAE;YACpB,EAAE,CAAC,oDAAoD,EAAE,GAAG,EAAE;gBAC1D,MAAM,YAAY,GAAG,kBAAkB,CAAC;gBACxC,MAAM,SAAS,GAAG,gBAAgB,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;gBACvE,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACjD,CAAC,CAAC,CAAC;YACH,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;gBAChD,MAAM,YAAY,GAAG,kBAAkB,CAAC;gBACxC,MAAM,SAAS,GAAG,gBAAgB,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;gBACvE,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;YAC7C,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"country-helpers.test.js","sourceRoot":"","sources":["../../../src/utils/__tests__/country-helpers.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"country-helpers.d.ts","sourceRoot":"","sources":["../../src/utils/country-helpers.ts"],"names":[],"mappings":"AAAA,oBAAY,OAAO;IACf,GAAG,QAAQ;IACX,MAAM,WAAW;
|
|
1
|
+
{"version":3,"file":"country-helpers.d.ts","sourceRoot":"","sources":["../../src/utils/country-helpers.ts"],"names":[],"mappings":"AAAA,oBAAY,OAAO;IACf,GAAG,QAAQ;IACX,MAAM,WAAW;IACjB,SAAS,cAAc;CAC1B;AAED,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,GAAG,OAAO,EAAE,CAAC;AAYjD,eAAO,MAAM,UAAU,GAAI,YAAY,MAAM,GAAG,SAAS,wBAMxD,CAAC;AAEF,eAAO,MAAM,SAAS,GAAI,YAAY,MAAM,GAAG,SAAS,EAAE,SAAS,WAAW,KAAG,OAOhF,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,WAAW,EAAE,MAAM,CAI3D,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,MAAM,CAAC,WAAW,EAAE,MAAM,CAI5D,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,MAAM,CAAC,WAAW,EAAE,MAAM,CAI7D,CAAC;AAEF,eAAO,MAAM,gBAAgB,GACzB,eAAe,MAAM,WAAW,GAAG,SAAS,GAAG,EAAE,EACjD,qBAAiC,MAEzB,OAAO,MAAM,mBAOxB,CAAC"}
|
|
@@ -2,10 +2,12 @@ export var Country;
|
|
|
2
2
|
(function (Country) {
|
|
3
3
|
Country["USA"] = "USA";
|
|
4
4
|
Country["Canada"] = "Canada";
|
|
5
|
+
Country["Australia"] = "Australia";
|
|
5
6
|
})(Country || (Country = {}));
|
|
6
7
|
const alternativeNames = [
|
|
7
8
|
[['us', 'usa', 'united states'], Country.USA],
|
|
8
9
|
[['ca', 'canada', 'can'], Country.Canada],
|
|
10
|
+
[['au', 'aus', 'australia'], Country.Australia],
|
|
9
11
|
];
|
|
10
12
|
const alternativeNamesMap = new Map(alternativeNames.flatMap(([names, country]) => names.map(name => [name, country])));
|
|
11
13
|
export const getCountry = (countryStr) => {
|
|
@@ -25,14 +27,17 @@ export const isCountry = (countryStr, country) => {
|
|
|
25
27
|
export const countryToZipMaskMap = {
|
|
26
28
|
[Country.USA]: '99999',
|
|
27
29
|
[Country.Canada]: '*** ***',
|
|
30
|
+
[Country.Australia]: '9999',
|
|
28
31
|
};
|
|
29
32
|
export const countryToZipRegexMap = {
|
|
30
33
|
[Country.USA]: /^\d{5}$/,
|
|
31
34
|
[Country.Canada]: /^[\dA-Za-z]{3}\ [\dA-Za-z]{3}$/,
|
|
35
|
+
[Country.Australia]: /^\d{4}$/,
|
|
32
36
|
};
|
|
33
37
|
export const countryToEinBnMaskMap = {
|
|
34
38
|
[Country.USA]: '99-9999999',
|
|
35
39
|
[Country.Canada]: '999999999',
|
|
40
|
+
[Country.Australia]: '999999999',
|
|
36
41
|
};
|
|
37
42
|
export const zipCodeValidator = (countryGetter, errorMessage = 'Invalid Zip Code') => {
|
|
38
43
|
return (value) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"country-helpers.js","sourceRoot":"","sources":["../../src/utils/country-helpers.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,
|
|
1
|
+
{"version":3,"file":"country-helpers.js","sourceRoot":"","sources":["../../src/utils/country-helpers.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,OAIX;AAJD,WAAY,OAAO;IACf,sBAAW,CAAA;IACX,4BAAiB,CAAA;IACjB,kCAAuB,CAAA;AAC3B,CAAC,EAJW,OAAO,KAAP,OAAO,QAIlB;AAID,MAAM,gBAAgB,GAA0B;IAC5C,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,eAAe,CAAC,EAAE,OAAO,CAAC,GAAG,CAAC;IAC7C,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC;IACzC,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,WAAW,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC;CAClD,CAAC;AAEF,MAAM,mBAAmB,GAAiC,IAAI,GAAG,CAC7D,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,CACrF,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,UAA8B,EAAE,EAAE;IACzD,IAAI,CAAC,UAAU,EAAE,CAAC;QACd,OAAO,SAAS,CAAC;IACrB,CAAC;IACD,MAAM,YAAY,GAAG,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,WAAW,EAAE,CAAC;IAC/C,OAAO,mBAAmB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;AACjD,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,UAA8B,EAAE,OAAoB,EAAW,EAAE;IACvF,IAAI,CAAC,UAAU,EAAE,CAAC;QACd,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,MAAM,YAAY,GAAG,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,WAAW,EAAE,CAAC;IAC/C,OAAO,UAAU,CAAC,YAAY,CAAC,KAAK,OAAO,CAAC;AAChD,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAgC;IAC5D,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,OAAO;IACtB,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,SAAS;IAC3B,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,MAAM;CAC9B,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAgC;IAC7D,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,SAAS;IACxB,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,gCAAgC;IAClD,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,SAAS;CACjC,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAgC;IAC9D,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,YAAY;IAC3B,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,WAAW;IAC7B,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,WAAW;CACnC,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC5B,aAAiD,EACjD,YAAY,GAAG,kBAAkB,EACnC,EAAE;IACA,OAAO,CAAC,KAAa,EAAE,EAAE;QACrB,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;QAChC,MAAM,GAAG,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;QACxC,wEAAwE;QACxE,MAAM,KAAK,GAAG,oBAAoB,CAAC,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC;QAC3D,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,YAAY,CAAC;IAC5C,CAAC,CAAC;AACN,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@servicetitan/onboarding-ui",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "12.1.0",
|
|
4
4
|
"description": "Shared components between servicetitan monolith and Onboarding",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -50,7 +50,7 @@
|
|
|
50
50
|
"@contentful/rich-text-react-renderer": "^15.6.2",
|
|
51
51
|
"@contentful/rich-text-types": "^15.7.0",
|
|
52
52
|
"@servicetitan/contentful-proxy": "^1.1.11",
|
|
53
|
-
"@servicetitan/react-hooks": "^4.
|
|
53
|
+
"@servicetitan/react-hooks": "^4.6.0",
|
|
54
54
|
"@types/google.maps": "^3.45.6",
|
|
55
55
|
"classnames": "~2.3.1",
|
|
56
56
|
"contentful-resolve-response": "^1.3.0",
|
|
@@ -69,5 +69,5 @@
|
|
|
69
69
|
"less": true,
|
|
70
70
|
"webpack": false
|
|
71
71
|
},
|
|
72
|
-
"gitHead": "
|
|
72
|
+
"gitHead": "03cfa4dc1e3cb374c8593f568ae47d0996ac7bae"
|
|
73
73
|
}
|
|
@@ -27,5 +27,22 @@ describe('[Country Helpers]', () => {
|
|
|
27
27
|
expect(validator('123 456')).toBeFalsy();
|
|
28
28
|
});
|
|
29
29
|
});
|
|
30
|
+
|
|
31
|
+
describe('Australia', () => {
|
|
32
|
+
it('should return error message if zip code is invalid', () => {
|
|
33
|
+
const errorMessage = 'Invalid Zip Code';
|
|
34
|
+
const validator = zipCodeValidator(() => Country.Australia, errorMessage);
|
|
35
|
+
expect(validator('123')).toBe(errorMessage);
|
|
36
|
+
expect(validator('12345')).toBe(errorMessage);
|
|
37
|
+
expect(validator('abcd')).toBe(errorMessage);
|
|
38
|
+
});
|
|
39
|
+
it('should return false if zip code is valid', () => {
|
|
40
|
+
const errorMessage = 'Invalid Zip Code';
|
|
41
|
+
const validator = zipCodeValidator(() => Country.Australia, errorMessage);
|
|
42
|
+
expect(validator('1234')).toBeFalsy();
|
|
43
|
+
expect(validator('0000')).toBeFalsy();
|
|
44
|
+
expect(validator('9999')).toBeFalsy();
|
|
45
|
+
});
|
|
46
|
+
});
|
|
30
47
|
});
|
|
31
48
|
});
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export enum Country {
|
|
2
2
|
USA = 'USA',
|
|
3
3
|
Canada = 'Canada',
|
|
4
|
+
Australia = 'Australia',
|
|
4
5
|
}
|
|
5
6
|
|
|
6
7
|
export type CountryType = Country | `${Country}`;
|
|
@@ -8,6 +9,7 @@ export type CountryType = Country | `${Country}`;
|
|
|
8
9
|
const alternativeNames: [string[], Country][] = [
|
|
9
10
|
[['us', 'usa', 'united states'], Country.USA],
|
|
10
11
|
[['ca', 'canada', 'can'], Country.Canada],
|
|
12
|
+
[['au', 'aus', 'australia'], Country.Australia],
|
|
11
13
|
];
|
|
12
14
|
|
|
13
15
|
const alternativeNamesMap: ReadonlyMap<string, Country> = new Map<string, Country>(
|
|
@@ -34,16 +36,19 @@ export const isCountry = (countryStr: string | undefined, country: CountryType):
|
|
|
34
36
|
export const countryToZipMaskMap: Record<CountryType, string> = {
|
|
35
37
|
[Country.USA]: '99999',
|
|
36
38
|
[Country.Canada]: '*** ***',
|
|
39
|
+
[Country.Australia]: '9999',
|
|
37
40
|
};
|
|
38
41
|
|
|
39
42
|
export const countryToZipRegexMap: Record<CountryType, RegExp> = {
|
|
40
43
|
[Country.USA]: /^\d{5}$/,
|
|
41
44
|
[Country.Canada]: /^[\dA-Za-z]{3}\ [\dA-Za-z]{3}$/,
|
|
45
|
+
[Country.Australia]: /^\d{4}$/,
|
|
42
46
|
};
|
|
43
47
|
|
|
44
48
|
export const countryToEinBnMaskMap: Record<CountryType, string> = {
|
|
45
49
|
[Country.USA]: '99-9999999',
|
|
46
50
|
[Country.Canada]: '999999999',
|
|
51
|
+
[Country.Australia]: '999999999',
|
|
47
52
|
};
|
|
48
53
|
|
|
49
54
|
export const zipCodeValidator = (
|