@ieeesa-npm/groups 0.15.11 → 0.15.12

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 (32) hide show
  1. package/esm2022/lib/assets/constants.json +23 -3
  2. package/esm2022/lib/assets/country-calling-codes.mjs +83 -0
  3. package/esm2022/lib/assets/form-validations.mjs +7 -2
  4. package/esm2022/lib/components/add-user-roster/add-user-roster.component.mjs +160 -3
  5. package/esm2022/lib/components/edit-user-roles/edit-user-roles.component.mjs +102 -4
  6. package/esm2022/lib/components/view-roster/view-roster.component.mjs +13 -4
  7. package/esm2022/lib/models/add-new-user.model.mjs +1 -1
  8. package/esm2022/lib/models/add-or-edit-user-group.model.mjs +1 -1
  9. package/esm2022/lib/models/group-user-info.model.mjs +1 -1
  10. package/esm2022/lib/models/required-profile-fields.model.mjs +2 -0
  11. package/esm2022/lib/models/table-column-schema-user-group.model.mjs +3 -1
  12. package/esm2022/lib/models/user-info.model.mjs +1 -1
  13. package/esm2022/lib/models/user.model.mjs +1 -1
  14. package/esm2022/lib/services/groups.service.mjs +58 -7
  15. package/esm2022/public-api.mjs +2 -1
  16. package/fesm2022/ieeesa-npm-groups.mjs +439 -18
  17. package/fesm2022/ieeesa-npm-groups.mjs.map +1 -1
  18. package/lib/assets/country-calling-codes.d.ts +14 -0
  19. package/lib/assets/form-validations.d.ts +3 -0
  20. package/lib/components/add-user-roster/add-user-roster.component.d.ts +18 -0
  21. package/lib/components/create-group/create-group.component.d.ts +7 -2
  22. package/lib/components/edit-user-roles/edit-user-roles.component.d.ts +19 -0
  23. package/lib/models/add-new-user.model.d.ts +3 -0
  24. package/lib/models/add-or-edit-user-group.model.d.ts +3 -0
  25. package/lib/models/group-user-info.model.d.ts +3 -0
  26. package/lib/models/required-profile-fields.model.d.ts +20 -0
  27. package/lib/models/table-column-schema-user-group.model.d.ts +3 -1
  28. package/lib/models/user-info.model.d.ts +3 -0
  29. package/lib/models/user.model.d.ts +6 -0
  30. package/lib/services/groups.service.d.ts +29 -4
  31. package/package.json +1 -1
  32. package/public-api.d.ts +1 -0
@@ -9,6 +9,9 @@
9
9
  "fullName": "Name",
10
10
  "firstName": "First Name",
11
11
  "lastName": "Last Name",
12
+ "phoneCountryCode": "Country Code",
13
+ "phoneNumber": "Phone Number",
14
+ "address": "Address",
12
15
  "role": "Role",
13
16
  "classification": "Classification",
14
17
  "representingOrganization": "Representing Organization",
@@ -18,6 +21,9 @@
18
21
  "fullName": "Full name",
19
22
  "firstName": "First Name",
20
23
  "lastName": "Last Name",
24
+ "phoneCountryCode": "Phone Country Code",
25
+ "phoneNumber": "Phone Number",
26
+ "address": "Address",
21
27
  "role": "Role",
22
28
  "classification": "Classification",
23
29
  "memberType": "Member Type",
@@ -28,6 +34,9 @@
28
34
  "fullName": "ariaFullName",
29
35
  "firstName": "ariaFirstName",
30
36
  "lastName": "ariaLastName",
37
+ "phoneCountryCode": "ariaPhoneCountryCode",
38
+ "phoneNumber": "ariaPhoneNumber",
39
+ "address": "ariaAddress",
31
40
  "role": "ariaRole",
32
41
  "classification": "ariaClassification",
33
42
  "memberType": "ariaMemberType",
@@ -39,12 +48,15 @@
39
48
  "required": "This field is required.",
40
49
  "limit": {
41
50
  "representingOrganizationMaxChars": "Representing Organization must not be greater than 250 characters long.",
42
- "representingOrganizationMinChars": "Representing Organization must not be lesser than 3 characters."
51
+ "representingOrganizationMinChars": "Representing Organization must not be lesser than 3 characters.",
52
+ "phoneNumberMaxChars": "Phone Number must not be greater than 20 characters long.",
53
+ "addressMaxChars": "Address must not be greater than 500 characters long."
43
54
  },
44
55
  "pattern": {
45
56
  "email": "Please enter valid email.",
46
57
  "representingOrganization": "Representing Organization contains invalid characters. Please enter alphanumeric, special characters and whitespace only.",
47
- "firstOrLastName": "This field is required."
58
+ "firstOrLastName": "This field is required.",
59
+ "phoneNumber": "Please enter a valid phone number."
48
60
  }
49
61
  },
50
62
  "success": {
@@ -56,11 +68,17 @@
56
68
  "fullName": "Enter user full name.",
57
69
  "firstName": "Enter user's first name.",
58
70
  "lastName": "Enter user's last name.",
71
+ "phoneNumber": "Enter user's phone number.",
72
+ "address": "Enter user's address.",
59
73
  "role": "<strong>Note:</strong> In order to remove all roles, please remove the user from the system user group.",
60
74
  "roleForIndividualRoster": "Select Role(s) from the options.",
61
75
  "classification": "Select Classification from the dropdown.",
62
76
  "memberType": "Select Member Type from the dropdown.",
63
77
  "representingOrganization": "Enter the name of the representing organization. Check the box next to all that apply. If the organization is not listed, type the full name and press Enter."
78
+ },
79
+ "characterLimit": {
80
+ "phoneNumber": 20,
81
+ "address": 500
64
82
  }
65
83
  },
66
84
  "createGroup": {
@@ -285,7 +303,9 @@
285
303
  "memberType": "Member Type",
286
304
  "organizationName": "Representing Org",
287
305
  "classification": "Classification",
288
- "role": "Role"
306
+ "role": "Role",
307
+ "phoneNumber": "Phone Number",
308
+ "address": "Address"
289
309
  },
290
310
  "searchPlaceholderSystemUsers": "Search by Name/Email Address",
291
311
  "searchPlaceholderIndividual": "Search by Name/Email Address/Representing Org",
@@ -0,0 +1,83 @@
1
+ /**
2
+ * Frontend-only static list of country calling (dialing) codes used by the
3
+ * Phone Number field's country-code dropdown in the add-user-roster form.
4
+ *
5
+ * This is static reference data (it does not change per request), so it is kept
6
+ * on the frontend rather than fetched from an API — no extra dependency needed.
7
+ * Both `id` and `name` are the raw calling code (e.g. `+1`) so the dropdown
8
+ * shows only the code and that same code is what gets persisted/sent to the
9
+ * backend. Countries that share a calling code are represented once.
10
+ */
11
+ export const COUNTRY_CALLING_CODES = [
12
+ { id: '+1', name: '+1' },
13
+ { id: '+7', name: '+7' },
14
+ { id: '+20', name: '+20' },
15
+ { id: '+27', name: '+27' },
16
+ { id: '+30', name: '+30' },
17
+ { id: '+31', name: '+31' },
18
+ { id: '+32', name: '+32' },
19
+ { id: '+33', name: '+33' },
20
+ { id: '+34', name: '+34' },
21
+ { id: '+36', name: '+36' },
22
+ { id: '+39', name: '+39' },
23
+ { id: '+40', name: '+40' },
24
+ { id: '+41', name: '+41' },
25
+ { id: '+43', name: '+43' },
26
+ { id: '+44', name: '+44' },
27
+ { id: '+45', name: '+45' },
28
+ { id: '+46', name: '+46' },
29
+ { id: '+47', name: '+47' },
30
+ { id: '+48', name: '+48' },
31
+ { id: '+49', name: '+49' },
32
+ { id: '+51', name: '+51' },
33
+ { id: '+52', name: '+52' },
34
+ { id: '+53', name: '+53' },
35
+ { id: '+54', name: '+54' },
36
+ { id: '+55', name: '+55' },
37
+ { id: '+56', name: '+56' },
38
+ { id: '+57', name: '+57' },
39
+ { id: '+58', name: '+58' },
40
+ { id: '+60', name: '+60' },
41
+ { id: '+61', name: '+61' },
42
+ { id: '+62', name: '+62' },
43
+ { id: '+63', name: '+63' },
44
+ { id: '+64', name: '+64' },
45
+ { id: '+65', name: '+65' },
46
+ { id: '+66', name: '+66' },
47
+ { id: '+81', name: '+81' },
48
+ { id: '+82', name: '+82' },
49
+ { id: '+84', name: '+84' },
50
+ { id: '+86', name: '+86' },
51
+ { id: '+90', name: '+90' },
52
+ { id: '+91', name: '+91' },
53
+ { id: '+92', name: '+92' },
54
+ { id: '+93', name: '+93' },
55
+ { id: '+94', name: '+94' },
56
+ { id: '+95', name: '+95' },
57
+ { id: '+98', name: '+98' },
58
+ { id: '+212', name: '+212' },
59
+ { id: '+213', name: '+213' },
60
+ { id: '+234', name: '+234' },
61
+ { id: '+254', name: '+254' },
62
+ { id: '+255', name: '+255' },
63
+ { id: '+256', name: '+256' },
64
+ { id: '+351', name: '+351' },
65
+ { id: '+352', name: '+352' },
66
+ { id: '+353', name: '+353' },
67
+ { id: '+354', name: '+354' },
68
+ { id: '+358', name: '+358' },
69
+ { id: '+380', name: '+380' },
70
+ { id: '+420', name: '+420' },
71
+ { id: '+421', name: '+421' },
72
+ { id: '+852', name: '+852' },
73
+ { id: '+880', name: '+880' },
74
+ { id: '+886', name: '+886' },
75
+ { id: '+966', name: '+966' },
76
+ { id: '+971', name: '+971' },
77
+ { id: '+972', name: '+972' },
78
+ { id: '+974', name: '+974' },
79
+ { id: '+977', name: '+977' },
80
+ ];
81
+ /** Default country calling code option id (US/Canada), used when none is set. */
82
+ export const DEFAULT_COUNTRY_CALLING_CODE = '+1';
83
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY291bnRyeS1jYWxsaW5nLWNvZGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZ3JvdXBzL3NyYy9saWIvYXNzZXRzL2NvdW50cnktY2FsbGluZy1jb2Rlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQTs7Ozs7Ozs7O0dBU0c7QUFDSCxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBbUI7SUFDbkQsRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUU7SUFDeEIsRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUU7SUFDeEIsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7SUFDMUIsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7SUFDMUIsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7SUFDMUIsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7SUFDMUIsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7SUFDMUIsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7SUFDMUIsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7SUFDMUIsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7SUFDMUIsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7SUFDMUIsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7SUFDMUIsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7SUFDMUIsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7SUFDMUIsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7SUFDMUIsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7SUFDMUIsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7SUFDMUIsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7SUFDMUIsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7SUFDMUIsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7SUFDMUIsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7SUFDMUIsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7SUFDMUIsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7SUFDMUIsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7SUFDMUIsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7SUFDMUIsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7SUFDMUIsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7SUFDMUIsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7SUFDMUIsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7SUFDMUIsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7SUFDMUIsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7SUFDMUIsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7SUFDMUIsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7SUFDMUIsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7SUFDMUIsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7SUFDMUIsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7SUFDMUIsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7SUFDMUIsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7SUFDMUIsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7SUFDMUIsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7SUFDMUIsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7SUFDMUIsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7SUFDMUIsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7SUFDMUIsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7SUFDMUIsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7SUFDMUIsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7SUFDMUIsRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUU7SUFDNUIsRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUU7SUFDNUIsRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUU7SUFDNUIsRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUU7SUFDNUIsRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUU7SUFDNUIsRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUU7SUFDNUIsRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUU7SUFDNUIsRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUU7SUFDNUIsRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUU7SUFDNUIsRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUU7SUFDNUIsRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUU7SUFDNUIsRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUU7SUFDNUIsRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUU7SUFDNUIsRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUU7SUFDNUIsRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUU7SUFDNUIsRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUU7SUFDNUIsRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUU7SUFDNUIsRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUU7SUFDNUIsRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUU7SUFDNUIsRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUU7SUFDNUIsRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUU7SUFDNUIsRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUU7Q0FDN0IsQ0FBQztBQUVGLGlGQUFpRjtBQUNqRixNQUFNLENBQUMsTUFBTSw0QkFBNEIsR0FBRyxJQUFJLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTZWxlY3RPcHRpb24gfSBmcm9tICdAaWVlZXNhLW5wbS9tb2RlbHMnO1xyXG5cclxuLyoqXHJcbiAqIEZyb250ZW5kLW9ubHkgc3RhdGljIGxpc3Qgb2YgY291bnRyeSBjYWxsaW5nIChkaWFsaW5nKSBjb2RlcyB1c2VkIGJ5IHRoZVxyXG4gKiBQaG9uZSBOdW1iZXIgZmllbGQncyBjb3VudHJ5LWNvZGUgZHJvcGRvd24gaW4gdGhlIGFkZC11c2VyLXJvc3RlciBmb3JtLlxyXG4gKlxyXG4gKiBUaGlzIGlzIHN0YXRpYyByZWZlcmVuY2UgZGF0YSAoaXQgZG9lcyBub3QgY2hhbmdlIHBlciByZXF1ZXN0KSwgc28gaXQgaXMga2VwdFxyXG4gKiBvbiB0aGUgZnJvbnRlbmQgcmF0aGVyIHRoYW4gZmV0Y2hlZCBmcm9tIGFuIEFQSSDigJQgbm8gZXh0cmEgZGVwZW5kZW5jeSBuZWVkZWQuXHJcbiAqIEJvdGggYGlkYCBhbmQgYG5hbWVgIGFyZSB0aGUgcmF3IGNhbGxpbmcgY29kZSAoZS5nLiBgKzFgKSBzbyB0aGUgZHJvcGRvd25cclxuICogc2hvd3Mgb25seSB0aGUgY29kZSBhbmQgdGhhdCBzYW1lIGNvZGUgaXMgd2hhdCBnZXRzIHBlcnNpc3RlZC9zZW50IHRvIHRoZVxyXG4gKiBiYWNrZW5kLiBDb3VudHJpZXMgdGhhdCBzaGFyZSBhIGNhbGxpbmcgY29kZSBhcmUgcmVwcmVzZW50ZWQgb25jZS5cclxuICovXHJcbmV4cG9ydCBjb25zdCBDT1VOVFJZX0NBTExJTkdfQ09ERVM6IFNlbGVjdE9wdGlvbltdID0gW1xyXG4gIHsgaWQ6ICcrMScsIG5hbWU6ICcrMScgfSxcclxuICB7IGlkOiAnKzcnLCBuYW1lOiAnKzcnIH0sXHJcbiAgeyBpZDogJysyMCcsIG5hbWU6ICcrMjAnIH0sXHJcbiAgeyBpZDogJysyNycsIG5hbWU6ICcrMjcnIH0sXHJcbiAgeyBpZDogJyszMCcsIG5hbWU6ICcrMzAnIH0sXHJcbiAgeyBpZDogJyszMScsIG5hbWU6ICcrMzEnIH0sXHJcbiAgeyBpZDogJyszMicsIG5hbWU6ICcrMzInIH0sXHJcbiAgeyBpZDogJyszMycsIG5hbWU6ICcrMzMnIH0sXHJcbiAgeyBpZDogJyszNCcsIG5hbWU6ICcrMzQnIH0sXHJcbiAgeyBpZDogJyszNicsIG5hbWU6ICcrMzYnIH0sXHJcbiAgeyBpZDogJyszOScsIG5hbWU6ICcrMzknIH0sXHJcbiAgeyBpZDogJys0MCcsIG5hbWU6ICcrNDAnIH0sXHJcbiAgeyBpZDogJys0MScsIG5hbWU6ICcrNDEnIH0sXHJcbiAgeyBpZDogJys0MycsIG5hbWU6ICcrNDMnIH0sXHJcbiAgeyBpZDogJys0NCcsIG5hbWU6ICcrNDQnIH0sXHJcbiAgeyBpZDogJys0NScsIG5hbWU6ICcrNDUnIH0sXHJcbiAgeyBpZDogJys0NicsIG5hbWU6ICcrNDYnIH0sXHJcbiAgeyBpZDogJys0NycsIG5hbWU6ICcrNDcnIH0sXHJcbiAgeyBpZDogJys0OCcsIG5hbWU6ICcrNDgnIH0sXHJcbiAgeyBpZDogJys0OScsIG5hbWU6ICcrNDknIH0sXHJcbiAgeyBpZDogJys1MScsIG5hbWU6ICcrNTEnIH0sXHJcbiAgeyBpZDogJys1MicsIG5hbWU6ICcrNTInIH0sXHJcbiAgeyBpZDogJys1MycsIG5hbWU6ICcrNTMnIH0sXHJcbiAgeyBpZDogJys1NCcsIG5hbWU6ICcrNTQnIH0sXHJcbiAgeyBpZDogJys1NScsIG5hbWU6ICcrNTUnIH0sXHJcbiAgeyBpZDogJys1NicsIG5hbWU6ICcrNTYnIH0sXHJcbiAgeyBpZDogJys1NycsIG5hbWU6ICcrNTcnIH0sXHJcbiAgeyBpZDogJys1OCcsIG5hbWU6ICcrNTgnIH0sXHJcbiAgeyBpZDogJys2MCcsIG5hbWU6ICcrNjAnIH0sXHJcbiAgeyBpZDogJys2MScsIG5hbWU6ICcrNjEnIH0sXHJcbiAgeyBpZDogJys2MicsIG5hbWU6ICcrNjInIH0sXHJcbiAgeyBpZDogJys2MycsIG5hbWU6ICcrNjMnIH0sXHJcbiAgeyBpZDogJys2NCcsIG5hbWU6ICcrNjQnIH0sXHJcbiAgeyBpZDogJys2NScsIG5hbWU6ICcrNjUnIH0sXHJcbiAgeyBpZDogJys2NicsIG5hbWU6ICcrNjYnIH0sXHJcbiAgeyBpZDogJys4MScsIG5hbWU6ICcrODEnIH0sXHJcbiAgeyBpZDogJys4MicsIG5hbWU6ICcrODInIH0sXHJcbiAgeyBpZDogJys4NCcsIG5hbWU6ICcrODQnIH0sXHJcbiAgeyBpZDogJys4NicsIG5hbWU6ICcrODYnIH0sXHJcbiAgeyBpZDogJys5MCcsIG5hbWU6ICcrOTAnIH0sXHJcbiAgeyBpZDogJys5MScsIG5hbWU6ICcrOTEnIH0sXHJcbiAgeyBpZDogJys5MicsIG5hbWU6ICcrOTInIH0sXHJcbiAgeyBpZDogJys5MycsIG5hbWU6ICcrOTMnIH0sXHJcbiAgeyBpZDogJys5NCcsIG5hbWU6ICcrOTQnIH0sXHJcbiAgeyBpZDogJys5NScsIG5hbWU6ICcrOTUnIH0sXHJcbiAgeyBpZDogJys5OCcsIG5hbWU6ICcrOTgnIH0sXHJcbiAgeyBpZDogJysyMTInLCBuYW1lOiAnKzIxMicgfSxcclxuICB7IGlkOiAnKzIxMycsIG5hbWU6ICcrMjEzJyB9LFxyXG4gIHsgaWQ6ICcrMjM0JywgbmFtZTogJysyMzQnIH0sXHJcbiAgeyBpZDogJysyNTQnLCBuYW1lOiAnKzI1NCcgfSxcclxuICB7IGlkOiAnKzI1NScsIG5hbWU6ICcrMjU1JyB9LFxyXG4gIHsgaWQ6ICcrMjU2JywgbmFtZTogJysyNTYnIH0sXHJcbiAgeyBpZDogJyszNTEnLCBuYW1lOiAnKzM1MScgfSxcclxuICB7IGlkOiAnKzM1MicsIG5hbWU6ICcrMzUyJyB9LFxyXG4gIHsgaWQ6ICcrMzUzJywgbmFtZTogJyszNTMnIH0sXHJcbiAgeyBpZDogJyszNTQnLCBuYW1lOiAnKzM1NCcgfSxcclxuICB7IGlkOiAnKzM1OCcsIG5hbWU6ICcrMzU4JyB9LFxyXG4gIHsgaWQ6ICcrMzgwJywgbmFtZTogJyszODAnIH0sXHJcbiAgeyBpZDogJys0MjAnLCBuYW1lOiAnKzQyMCcgfSxcclxuICB7IGlkOiAnKzQyMScsIG5hbWU6ICcrNDIxJyB9LFxyXG4gIHsgaWQ6ICcrODUyJywgbmFtZTogJys4NTInIH0sXHJcbiAgeyBpZDogJys4ODAnLCBuYW1lOiAnKzg4MCcgfSxcclxuICB7IGlkOiAnKzg4NicsIG5hbWU6ICcrODg2JyB9LFxyXG4gIHsgaWQ6ICcrOTY2JywgbmFtZTogJys5NjYnIH0sXHJcbiAgeyBpZDogJys5NzEnLCBuYW1lOiAnKzk3MScgfSxcclxuICB7IGlkOiAnKzk3MicsIG5hbWU6ICcrOTcyJyB9LFxyXG4gIHsgaWQ6ICcrOTc0JywgbmFtZTogJys5NzQnIH0sXHJcbiAgeyBpZDogJys5NzcnLCBuYW1lOiAnKzk3NycgfSxcclxuXTtcclxuXHJcbi8qKiBEZWZhdWx0IGNvdW50cnkgY2FsbGluZyBjb2RlIG9wdGlvbiBpZCAoVVMvQ2FuYWRhKSwgdXNlZCB3aGVuIG5vbmUgaXMgc2V0LiAqL1xyXG5leHBvcnQgY29uc3QgREVGQVVMVF9DT1VOVFJZX0NBTExJTkdfQ09ERSA9ICcrMSc7XHJcbiJdfQ==
@@ -45,6 +45,11 @@ export const GroupsValidationPatterns = {
45
45
  // Representing Organization field regular expression which accept Alpha Numeric, Special Characters and whitespace.
46
46
  representingOrganization: /^(?=.*[a-zA-Z])[\w\s!"#$%&'()*+,-.\/\:;<=>?@[\]^_`{|}~\\]+$/i,
47
47
  // First or Last Name field regular expression which does not allow only whitespace or empty string.
48
- firstOrLastName: /^(?!\s*$).+/
48
+ firstOrLastName: /^(?!\s*$).+/,
49
+ // Phone Number field regular expression which accepts digits, spaces and the common phone characters + - ( ) .
50
+ phoneNumber: /^[+]?[0-9\s\-().]{1,20}$/,
51
+ phoneNumberMaxLength: 20,
52
+ // Address field maximum length.
53
+ addressMaxLength: 500
49
54
  };
50
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS12YWxpZGF0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2dyb3Vwcy9zcmMvbGliL2Fzc2V0cy9mb3JtLXZhbGlkYXRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBOzs7Ozs7OztHQVFHO0FBQ0gsTUFBTSxVQUFVLGdDQUFnQztJQUM5QyxPQUFPLENBQUMsT0FBd0IsRUFBMkIsRUFBRTtRQUMzRCxNQUFNLEtBQUssR0FBRyxPQUFPLEVBQUUsS0FBSyxDQUFDO1FBQzdCLE1BQU0sWUFBWSxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDO1lBQ3ZDLENBQUMsQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUM7WUFDbEIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sS0FBSyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN6RCxPQUFPLFlBQVksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQztJQUNsRCxDQUFDLENBQUM7QUFDSixDQUFDO0FBRUQ7Ozs7Ozs7R0FPRztBQUNILE1BQU0sVUFBVSxhQUFhLENBQUMsU0FBc0I7SUFDbEQsT0FBTyxDQUFDLE9BQXdCLEVBQTJCLEVBQUU7UUFDM0QsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsRUFBRTtZQUNqQyxPQUFPLElBQUksQ0FBQztTQUNiO1FBQ0QsT0FBTyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDNUIsQ0FBQyxDQUFDO0FBQ0osQ0FBQztBQUVELE1BQU0sQ0FBQyxNQUFNLHdCQUF3QixHQUFHO0lBQ3RDLDhHQUE4RztJQUM5RyxTQUFTLEVBQUUsOERBQThEO0lBQ3pFLG1IQUFtSDtJQUNuSCxTQUFTLEVBQUUsc0NBQXNDO0lBQ2pELHNHQUFzRztJQUN0RyxVQUFVLEVBQUUsOERBQThEO0lBQzFFLEtBQUssRUFBRSxrQ0FBa0M7SUFDekMsNEJBQTRCLEVBQUUsR0FBRztJQUNqQyw0QkFBNEIsRUFBRSxDQUFDO0lBQy9CLG9IQUFvSDtJQUNwSCx3QkFBd0IsRUFDdEIsOERBQThEO0lBQ2hFLG9HQUFvRztJQUNwRyxlQUFlLEVBQUUsYUFBYTtDQUMvQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgbm8tdXNlbGVzcy1lc2NhcGUgKi9cclxuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBWYWxpZGF0aW9uRXJyb3JzLCBWYWxpZGF0b3JGbiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbi8qKlxyXG4gKiBSZXF1aXJlZCB2YWxpZGF0b3IgZm9yIHRoZSBtdWx0aS1zZWxlY3QtYXV0b2NvbXBsZXRlIFwiUmVwcmVzZW50aW5nIE9yZ2FuaXphdGlvblwiXHJcbiAqIGNvbnRyb2wuIFRoZSBjb250cm9sJ3MgdmFsdWUgaXMgdGhlIGFycmF5IG9mIHNlbGVjdGVkIGNoaXBzIChzZXQgYnkgdGhlXHJcbiAqIGNvbXBvbmVudCksIHNvIHRoaXMgdHJlYXRzIGEgbm9uLWVtcHR5IGFycmF5IOKAlCBvciBhIG5vbi1lbXB0eSBzdHJpbmcg4oCUIGFzXHJcbiAqIHZhbGlkLiBLZXlpbmcgb2ZmIHRoZSBzZWxlY3Rpb24gKHJhdGhlciB0aGFuIHRoZSByYXcgaW5wdXQgdGV4dCkgcHJldmVudHMgdGhlXHJcbiAqIHJlcXVpcmVkIGVycm9yIGZyb20gZmxhc2hpbmcgd2hlbiBNYXRlcmlhbCBtb21lbnRhcmlseSB3cml0ZXMgYSB0cmFuc2llbnRcclxuICogZW1wdHkgdmFsdWUgZHVyaW5nIG9wdGlvbiBzZWxlY3Rpb24uXHJcbiAqIEByZXR1cm4ge1ZhbGlkYXRvckZufVxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIHJlcHJlc2VudGluZ09yZ1JlcXVpcmVkVmFsaWRhdG9yKCk6IFZhbGlkYXRvckZuIHtcclxuICByZXR1cm4gKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsID0+IHtcclxuICAgIGNvbnN0IHZhbHVlID0gY29udHJvbD8udmFsdWU7XHJcbiAgICBjb25zdCBoYXNTZWxlY3Rpb24gPSBBcnJheS5pc0FycmF5KHZhbHVlKVxyXG4gICAgICA/IHZhbHVlLmxlbmd0aCA+IDBcclxuICAgICAgOiAhISh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnID8gdmFsdWUudHJpbSgpIDogdmFsdWUpO1xyXG4gICAgcmV0dXJuIGhhc1NlbGVjdGlvbiA/IG51bGwgOiB7IHJlcXVpcmVkOiB0cnVlIH07XHJcbiAgfTtcclxufVxyXG5cclxuLyoqXHJcbiAqIFdyYXBzIGEgc3RyaW5nLW9yaWVudGVkIHZhbGlkYXRvciAobWluTGVuZ3RoL21heExlbmd0aC9wYXR0ZXJuKSBzbyBpdCBpc1xyXG4gKiBza2lwcGVkIHdoZW4gdGhlIGNvbnRyb2wgdmFsdWUgaXMgdGhlIHNlbGVjdGlvbiBhcnJheS4gVGhvc2UgYnVpbHQtaW5cclxuICogdmFsaWRhdG9ycyBldmFsdWF0ZSBgLmxlbmd0aGAgLyBzdHJpbmcgc2hhcGUgYW5kIHdvdWxkIGluY29ycmVjdGx5IGZhaWxcclxuICogYWdhaW5zdCB0aGUgY2hpcHMgYXJyYXk7IHRoZXkgc2hvdWxkIG9ubHkgY29uc3RyYWluIGZyZWUtdGV4dCBpbnB1dC5cclxuICogQHBhcmFtIHtWYWxpZGF0b3JGbn0gdmFsaWRhdG9yIHRoZSB1bmRlcmx5aW5nIHN0cmluZyB2YWxpZGF0b3JcclxuICogQHJldHVybiB7VmFsaWRhdG9yRm59XHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gc2tpcFdoZW5BcnJheSh2YWxpZGF0b3I6IFZhbGlkYXRvckZuKTogVmFsaWRhdG9yRm4ge1xyXG4gIHJldHVybiAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwgPT4ge1xyXG4gICAgaWYgKEFycmF5LmlzQXJyYXkoY29udHJvbD8udmFsdWUpKSB7XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHZhbGlkYXRvcihjb250cm9sKTtcclxuICB9O1xyXG59XHJcblxyXG5leHBvcnQgY29uc3QgR3JvdXBzVmFsaWRhdGlvblBhdHRlcm5zID0ge1xyXG4gIC8vIEdyb3VwIE5hbWUgZmllbGQgcmVndWxhciBleHByZXNzaW9uLCB3aGljaCBhY2NlcHQgQWxwaGEgTnVtZXJpYywgU3BlY2lhbCBDaGFyYWN0ZXJzIChBU0NJSSkgYW5kIHdoaXRlc3BhY2UuXHJcbiAgZ3JvdXBOYW1lOiAvXig/PS4qW2EtekEtWl0pW1xcd1xccyFcIiMkJSYnKCkqKywtLlxcL1xcOjs8PT4/QFtcXF1eX2B7fH1+XFxcXF0rJC9pLFxyXG4gIC8vIEdyb3VwIFNob3J0IE5hbWUgZmllbGQgcmVndWxhciBleHByZXNzaW9uIHdoaWNoIGFjY2VwdCBsZXR0ZXJzLCBudW1iZXJzIGFuZCBcIi5cIixcIixcIiAsIFwiL1wiLCBcIi1cIiAsIFwiX1wiIGNoYXJhY3RlcnMuXHJcbiAgc2hvcnROYW1lOiAvXig/PVthLXpBLVowLTldKVthLXpBLVowLTkuLFxcL1xcLV9dKyQvLFxyXG4gIC8vIEdyb3VwIFNjb3BlIGZpZWxkIHJlZ3VsYXIgZXhwcmVzc2lvbiB3aGljaCBhY2NlcHQgQWxwaGEgTnVtZXJpYywgU3BlY2lhbCBDaGFyYWN0ZXJzIGFuZCB3aGl0ZXNwYWNlLlxyXG4gIGdyb3VwU2NvcGU6IC9eKD89LipbYS16QS1aXSlbXFx3XFxzIVwiIyQlJicoKSorLC0uXFwvXFw6Ozw9Pj9AW1xcXV5fYHt8fX5cXFxcXSskL2ksXHJcbiAgZW1haWw6IC9eW1xcdy1cXC5dK0AoW1xcdy1dK1xcLikrW1xcdy1dezIsNH0kLyxcclxuICByZXByZXNlbnRpbmdPcmdOYW1lTWF4TGVuZ3RoOiAyNTAsXHJcbiAgcmVwcmVzZW50aW5nT3JnTmFtZU1pbkxlbmd0aDogMyxcclxuICAvLyBSZXByZXNlbnRpbmcgT3JnYW5pemF0aW9uIGZpZWxkIHJlZ3VsYXIgZXhwcmVzc2lvbiB3aGljaCBhY2NlcHQgQWxwaGEgTnVtZXJpYywgU3BlY2lhbCBDaGFyYWN0ZXJzIGFuZCB3aGl0ZXNwYWNlLlxyXG4gIHJlcHJlc2VudGluZ09yZ2FuaXphdGlvbjpcclxuICAgIC9eKD89LipbYS16QS1aXSlbXFx3XFxzIVwiIyQlJicoKSorLC0uXFwvXFw6Ozw9Pj9AW1xcXV5fYHt8fX5cXFxcXSskL2ksXHJcbiAgLy8gRmlyc3Qgb3IgTGFzdCBOYW1lIGZpZWxkIHJlZ3VsYXIgZXhwcmVzc2lvbiB3aGljaCBkb2VzIG5vdCBhbGxvdyBvbmx5IHdoaXRlc3BhY2Ugb3IgZW1wdHkgc3RyaW5nLlxyXG4gIGZpcnN0T3JMYXN0TmFtZTogL14oPyFcXHMqJCkuKy9cclxufTtcclxuIl19
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS12YWxpZGF0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2dyb3Vwcy9zcmMvbGliL2Fzc2V0cy9mb3JtLXZhbGlkYXRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBOzs7Ozs7OztHQVFHO0FBQ0gsTUFBTSxVQUFVLGdDQUFnQztJQUM5QyxPQUFPLENBQUMsT0FBd0IsRUFBMkIsRUFBRTtRQUMzRCxNQUFNLEtBQUssR0FBRyxPQUFPLEVBQUUsS0FBSyxDQUFDO1FBQzdCLE1BQU0sWUFBWSxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDO1lBQ3ZDLENBQUMsQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUM7WUFDbEIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sS0FBSyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN6RCxPQUFPLFlBQVksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQztJQUNsRCxDQUFDLENBQUM7QUFDSixDQUFDO0FBRUQ7Ozs7Ozs7R0FPRztBQUNILE1BQU0sVUFBVSxhQUFhLENBQUMsU0FBc0I7SUFDbEQsT0FBTyxDQUFDLE9BQXdCLEVBQTJCLEVBQUU7UUFDM0QsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsRUFBRTtZQUNqQyxPQUFPLElBQUksQ0FBQztTQUNiO1FBQ0QsT0FBTyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDNUIsQ0FBQyxDQUFDO0FBQ0osQ0FBQztBQUVELE1BQU0sQ0FBQyxNQUFNLHdCQUF3QixHQUFHO0lBQ3RDLDhHQUE4RztJQUM5RyxTQUFTLEVBQUUsOERBQThEO0lBQ3pFLG1IQUFtSDtJQUNuSCxTQUFTLEVBQUUsc0NBQXNDO0lBQ2pELHNHQUFzRztJQUN0RyxVQUFVLEVBQUUsOERBQThEO0lBQzFFLEtBQUssRUFBRSxrQ0FBa0M7SUFDekMsNEJBQTRCLEVBQUUsR0FBRztJQUNqQyw0QkFBNEIsRUFBRSxDQUFDO0lBQy9CLG9IQUFvSDtJQUNwSCx3QkFBd0IsRUFDdEIsOERBQThEO0lBQ2hFLG9HQUFvRztJQUNwRyxlQUFlLEVBQUUsYUFBYTtJQUM5QiwrR0FBK0c7SUFDL0csV0FBVyxFQUFFLDBCQUEwQjtJQUN2QyxvQkFBb0IsRUFBRSxFQUFFO0lBQ3hCLGdDQUFnQztJQUNoQyxnQkFBZ0IsRUFBRSxHQUFHO0NBQ3RCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBuby11c2VsZXNzLWVzY2FwZSAqL1xyXG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIFZhbGlkYXRpb25FcnJvcnMsIFZhbGlkYXRvckZuIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5cclxuLyoqXHJcbiAqIFJlcXVpcmVkIHZhbGlkYXRvciBmb3IgdGhlIG11bHRpLXNlbGVjdC1hdXRvY29tcGxldGUgXCJSZXByZXNlbnRpbmcgT3JnYW5pemF0aW9uXCJcclxuICogY29udHJvbC4gVGhlIGNvbnRyb2wncyB2YWx1ZSBpcyB0aGUgYXJyYXkgb2Ygc2VsZWN0ZWQgY2hpcHMgKHNldCBieSB0aGVcclxuICogY29tcG9uZW50KSwgc28gdGhpcyB0cmVhdHMgYSBub24tZW1wdHkgYXJyYXkg4oCUIG9yIGEgbm9uLWVtcHR5IHN0cmluZyDigJQgYXNcclxuICogdmFsaWQuIEtleWluZyBvZmYgdGhlIHNlbGVjdGlvbiAocmF0aGVyIHRoYW4gdGhlIHJhdyBpbnB1dCB0ZXh0KSBwcmV2ZW50cyB0aGVcclxuICogcmVxdWlyZWQgZXJyb3IgZnJvbSBmbGFzaGluZyB3aGVuIE1hdGVyaWFsIG1vbWVudGFyaWx5IHdyaXRlcyBhIHRyYW5zaWVudFxyXG4gKiBlbXB0eSB2YWx1ZSBkdXJpbmcgb3B0aW9uIHNlbGVjdGlvbi5cclxuICogQHJldHVybiB7VmFsaWRhdG9yRm59XHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gcmVwcmVzZW50aW5nT3JnUmVxdWlyZWRWYWxpZGF0b3IoKTogVmFsaWRhdG9yRm4ge1xyXG4gIHJldHVybiAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwgPT4ge1xyXG4gICAgY29uc3QgdmFsdWUgPSBjb250cm9sPy52YWx1ZTtcclxuICAgIGNvbnN0IGhhc1NlbGVjdGlvbiA9IEFycmF5LmlzQXJyYXkodmFsdWUpXHJcbiAgICAgID8gdmFsdWUubGVuZ3RoID4gMFxyXG4gICAgICA6ICEhKHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycgPyB2YWx1ZS50cmltKCkgOiB2YWx1ZSk7XHJcbiAgICByZXR1cm4gaGFzU2VsZWN0aW9uID8gbnVsbCA6IHsgcmVxdWlyZWQ6IHRydWUgfTtcclxuICB9O1xyXG59XHJcblxyXG4vKipcclxuICogV3JhcHMgYSBzdHJpbmctb3JpZW50ZWQgdmFsaWRhdG9yIChtaW5MZW5ndGgvbWF4TGVuZ3RoL3BhdHRlcm4pIHNvIGl0IGlzXHJcbiAqIHNraXBwZWQgd2hlbiB0aGUgY29udHJvbCB2YWx1ZSBpcyB0aGUgc2VsZWN0aW9uIGFycmF5LiBUaG9zZSBidWlsdC1pblxyXG4gKiB2YWxpZGF0b3JzIGV2YWx1YXRlIGAubGVuZ3RoYCAvIHN0cmluZyBzaGFwZSBhbmQgd291bGQgaW5jb3JyZWN0bHkgZmFpbFxyXG4gKiBhZ2FpbnN0IHRoZSBjaGlwcyBhcnJheTsgdGhleSBzaG91bGQgb25seSBjb25zdHJhaW4gZnJlZS10ZXh0IGlucHV0LlxyXG4gKiBAcGFyYW0ge1ZhbGlkYXRvckZufSB2YWxpZGF0b3IgdGhlIHVuZGVybHlpbmcgc3RyaW5nIHZhbGlkYXRvclxyXG4gKiBAcmV0dXJuIHtWYWxpZGF0b3JGbn1cclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBza2lwV2hlbkFycmF5KHZhbGlkYXRvcjogVmFsaWRhdG9yRm4pOiBWYWxpZGF0b3JGbiB7XHJcbiAgcmV0dXJuIChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCA9PiB7XHJcbiAgICBpZiAoQXJyYXkuaXNBcnJheShjb250cm9sPy52YWx1ZSkpIHtcclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdmFsaWRhdG9yKGNvbnRyb2wpO1xyXG4gIH07XHJcbn1cclxuXHJcbmV4cG9ydCBjb25zdCBHcm91cHNWYWxpZGF0aW9uUGF0dGVybnMgPSB7XHJcbiAgLy8gR3JvdXAgTmFtZSBmaWVsZCByZWd1bGFyIGV4cHJlc3Npb24sIHdoaWNoIGFjY2VwdCBBbHBoYSBOdW1lcmljLCBTcGVjaWFsIENoYXJhY3RlcnMgKEFTQ0lJKSBhbmQgd2hpdGVzcGFjZS5cclxuICBncm91cE5hbWU6IC9eKD89LipbYS16QS1aXSlbXFx3XFxzIVwiIyQlJicoKSorLC0uXFwvXFw6Ozw9Pj9AW1xcXV5fYHt8fX5cXFxcXSskL2ksXHJcbiAgLy8gR3JvdXAgU2hvcnQgTmFtZSBmaWVsZCByZWd1bGFyIGV4cHJlc3Npb24gd2hpY2ggYWNjZXB0IGxldHRlcnMsIG51bWJlcnMgYW5kIFwiLlwiLFwiLFwiICwgXCIvXCIsIFwiLVwiICwgXCJfXCIgY2hhcmFjdGVycy5cclxuICBzaG9ydE5hbWU6IC9eKD89W2EtekEtWjAtOV0pW2EtekEtWjAtOS4sXFwvXFwtX10rJC8sXHJcbiAgLy8gR3JvdXAgU2NvcGUgZmllbGQgcmVndWxhciBleHByZXNzaW9uIHdoaWNoIGFjY2VwdCBBbHBoYSBOdW1lcmljLCBTcGVjaWFsIENoYXJhY3RlcnMgYW5kIHdoaXRlc3BhY2UuXHJcbiAgZ3JvdXBTY29wZTogL14oPz0uKlthLXpBLVpdKVtcXHdcXHMhXCIjJCUmJygpKissLS5cXC9cXDo7PD0+P0BbXFxdXl9ge3x9flxcXFxdKyQvaSxcclxuICBlbWFpbDogL15bXFx3LVxcLl0rQChbXFx3LV0rXFwuKStbXFx3LV17Miw0fSQvLFxyXG4gIHJlcHJlc2VudGluZ09yZ05hbWVNYXhMZW5ndGg6IDI1MCxcclxuICByZXByZXNlbnRpbmdPcmdOYW1lTWluTGVuZ3RoOiAzLFxyXG4gIC8vIFJlcHJlc2VudGluZyBPcmdhbml6YXRpb24gZmllbGQgcmVndWxhciBleHByZXNzaW9uIHdoaWNoIGFjY2VwdCBBbHBoYSBOdW1lcmljLCBTcGVjaWFsIENoYXJhY3RlcnMgYW5kIHdoaXRlc3BhY2UuXHJcbiAgcmVwcmVzZW50aW5nT3JnYW5pemF0aW9uOlxyXG4gICAgL14oPz0uKlthLXpBLVpdKVtcXHdcXHMhXCIjJCUmJygpKissLS5cXC9cXDo7PD0+P0BbXFxdXl9ge3x9flxcXFxdKyQvaSxcclxuICAvLyBGaXJzdCBvciBMYXN0IE5hbWUgZmllbGQgcmVndWxhciBleHByZXNzaW9uIHdoaWNoIGRvZXMgbm90IGFsbG93IG9ubHkgd2hpdGVzcGFjZSBvciBlbXB0eSBzdHJpbmcuXHJcbiAgZmlyc3RPckxhc3ROYW1lOiAvXig/IVxccyokKS4rLyxcclxuICAvLyBQaG9uZSBOdW1iZXIgZmllbGQgcmVndWxhciBleHByZXNzaW9uIHdoaWNoIGFjY2VwdHMgZGlnaXRzLCBzcGFjZXMgYW5kIHRoZSBjb21tb24gcGhvbmUgY2hhcmFjdGVycyArIC0gKCApIC5cclxuICBwaG9uZU51bWJlcjogL15bK10/WzAtOVxcc1xcLSgpLl17MSwyMH0kLyxcclxuICBwaG9uZU51bWJlck1heExlbmd0aDogMjAsXHJcbiAgLy8gQWRkcmVzcyBmaWVsZCBtYXhpbXVtIGxlbmd0aC5cclxuICBhZGRyZXNzTWF4TGVuZ3RoOiA1MDBcclxufTtcclxuIl19