@eui/base 16.0.0-next.1 → 16.0.0-next.2

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 (69) hide show
  1. package/docs/dependencies.html +59 -63
  2. package/docs/js/search/search_index.js +2 -2
  3. package/docs/properties.html +1 -1
  4. package/esm2022/lib/ux-models/ux-eu-languages.model.mjs +152 -0
  5. package/{fesm2020 → fesm2022}/eui-base.mjs +98 -98
  6. package/{fesm2020 → fesm2022}/eui-base.mjs.map +1 -1
  7. package/package.json +5 -11
  8. package/esm2020/lib/ux-models/ux-eu-languages.model.mjs +0 -152
  9. package/fesm2015/eui-base.mjs +0 -1219
  10. package/fesm2015/eui-base.mjs.map +0 -1
  11. /package/{esm2020 → esm2022}/eui-base.mjs +0 -0
  12. /package/{esm2020 → esm2022}/index.mjs +0 -0
  13. /package/{esm2020 → esm2022}/lib/eui-models/eui-config/eui-app-config.mjs +0 -0
  14. /package/{esm2020 → esm2022}/lib/eui-models/eui-config/eui-config.mjs +0 -0
  15. /package/{esm2020 → esm2022}/lib/eui-models/eui-config/eui-env-config.mjs +0 -0
  16. /package/{esm2020 → esm2022}/lib/eui-models/eui-config/http-error-handler.config.mjs +0 -0
  17. /package/{esm2020 → esm2022}/lib/eui-models/eui-config/i18n.config.mjs +0 -0
  18. /package/{esm2020 → esm2022}/lib/eui-models/eui-config/index.mjs +0 -0
  19. /package/{esm2020 → esm2022}/lib/eui-models/eui-config/locale.config.mjs +0 -0
  20. /package/{esm2020 → esm2022}/lib/eui-models/eui-config/log.config.mjs +0 -0
  21. /package/{esm2020 → esm2022}/lib/eui-models/eui-config/user.config.mjs +0 -0
  22. /package/{esm2020 → esm2022}/lib/eui-models/eui-pagination/eui-pagination.model.mjs +0 -0
  23. /package/{esm2020 → esm2022}/lib/eui-models/eui-pagination/index.mjs +0 -0
  24. /package/{esm2020 → esm2022}/lib/eui-models/eui-service.model.mjs +0 -0
  25. /package/{esm2020 → esm2022}/lib/eui-models/eui-store/eui-store-service.model.mjs +0 -0
  26. /package/{esm2020 → esm2022}/lib/eui-models/eui-store/index.mjs +0 -0
  27. /package/{esm2020 → esm2022}/lib/eui-models/eui-store/models/app.models.mjs +0 -0
  28. /package/{esm2020 → esm2022}/lib/eui-models/eui-store/models/index.mjs +0 -0
  29. /package/{esm2020 → esm2022}/lib/eui-models/eui-store/models/user.models.mjs +0 -0
  30. /package/{esm2020 → esm2022}/lib/eui-models/eui-store/selectors/app.selectors.mjs +0 -0
  31. /package/{esm2020 → esm2022}/lib/eui-models/eui-store/selectors/core.selectors.mjs +0 -0
  32. /package/{esm2020 → esm2022}/lib/eui-models/eui-store/selectors/i18n.selectors.mjs +0 -0
  33. /package/{esm2020 → esm2022}/lib/eui-models/eui-store/selectors/index.mjs +0 -0
  34. /package/{esm2020 → esm2022}/lib/eui-models/eui-store/selectors/notifications.selectors.mjs +0 -0
  35. /package/{esm2020 → esm2022}/lib/eui-models/eui-store/selectors/user.selectors.mjs +0 -0
  36. /package/{esm2020 → esm2022}/lib/eui-models/eui-store/state/app.state.mjs +0 -0
  37. /package/{esm2020 → esm2022}/lib/eui-models/eui-store/state/core.state.mjs +0 -0
  38. /package/{esm2020 → esm2022}/lib/eui-models/eui-store/state/i18n.state.mjs +0 -0
  39. /package/{esm2020 → esm2022}/lib/eui-models/eui-store/state/index.mjs +0 -0
  40. /package/{esm2020 → esm2022}/lib/eui-models/eui-store/state/locale.state.mjs +0 -0
  41. /package/{esm2020 → esm2022}/lib/eui-models/eui-store/state/notifications.state.mjs +0 -0
  42. /package/{esm2020 → esm2022}/lib/eui-models/eui-store/state/user.state.mjs +0 -0
  43. /package/{esm2020 → esm2022}/lib/eui-models/index.mjs +0 -0
  44. /package/{esm2020 → esm2022}/lib/eui-models/log/console.appender.mjs +0 -0
  45. /package/{esm2020 → esm2022}/lib/eui-models/log/index.mjs +0 -0
  46. /package/{esm2020 → esm2022}/lib/eui-models/log/log.appender.mjs +0 -0
  47. /package/{esm2020 → esm2022}/lib/eui-models/log/log.logger.mjs +0 -0
  48. /package/{esm2020 → esm2022}/lib/eui-models/log/log.logger.mock.mjs +0 -0
  49. /package/{esm2020 → esm2022}/lib/eui-models/log/log.model.mjs +0 -0
  50. /package/{esm2020 → esm2022}/lib/eui-models/log/url.appender.mjs +0 -0
  51. /package/{esm2020 → esm2022}/lib/util/coerce-decorator/coerce.mjs +0 -0
  52. /package/{esm2020 → esm2022}/lib/util/coerce-decorator/coercions.mjs +0 -0
  53. /package/{esm2020 → esm2022}/lib/util/coerce-decorator/index.mjs +0 -0
  54. /package/{esm2020 → esm2022}/lib/util/index.mjs +0 -0
  55. /package/{esm2020 → esm2022}/lib/util/merge.mjs +0 -0
  56. /package/{esm2020 → esm2022}/lib/util/xhr.mjs +0 -0
  57. /package/{esm2020 → esm2022}/lib/ux-models/auth-config.model.mjs +0 -0
  58. /package/{esm2020 → esm2022}/lib/ux-models/index.mjs +0 -0
  59. /package/{esm2020 → esm2022}/lib/ux-models/ux-badge.model.mjs +0 -0
  60. /package/{esm2020 → esm2022}/lib/ux-models/ux-constants.mjs +0 -0
  61. /package/{esm2020 → esm2022}/lib/ux-models/ux-error-feedback.model.mjs +0 -0
  62. /package/{esm2020 → esm2022}/lib/ux-models/ux-language.model.mjs +0 -0
  63. /package/{esm2020 → esm2022}/lib/ux-models/ux-link.model.mjs +0 -0
  64. /package/{esm2020 → esm2022}/lib/ux-models/ux-message.model.mjs +0 -0
  65. /package/{esm2020 → esm2022}/lib/ux-models/ux-modal.model.mjs +0 -0
  66. /package/{esm2020 → esm2022}/lib/ux-models/ux-org-chart-node.model.mjs +0 -0
  67. /package/{esm2020 → esm2022}/lib/ux-models/ux-permission.model.mjs +0 -0
  68. /package/{esm2020 → esm2022}/lib/ux-models/ux-timezones.model.mjs +0 -0
  69. /package/{esm2020 → esm2022}/lib/ux-models/ux-validation-error.model.mjs +0 -0
@@ -1,152 +0,0 @@
1
- export class UxEuLanguages {
2
- /**
3
- * Matches the given string array to the EU languages and returns a UxLanguage array.
4
- * In case that no codes provided it returns the EU Languages array.
5
- *
6
- * @param codes A string array of 2 char codes
7
- */
8
- static getLanguages(codes = Object.keys(this.languages)) {
9
- return this.filterInvalidLanguageCodes(codes).map((c) => (typeof c === 'string' ? this.languages[c] : c));
10
- }
11
- /**
12
- * filters and removes language codes that are not part of the EULanguage
13
- * e.g. 'ko' does not map to any EULanguage code on the array.
14
- * { code: 'ko', label: 'whatever' } is valid though
15
- *
16
- * @param codes codes A string array of 2 char codescodes A string array of 2 char codes
17
- */
18
- static filterInvalidLanguageCodes(codes) {
19
- return codes.filter((c) => (typeof c === 'string' ? Object.keys(this.languages).indexOf(c) !== -1 : true));
20
- }
21
- /**
22
- * return the given list ordered based on the EULanguage order
23
- *
24
- * @param codes codes A string array of 2 char codes
25
- */
26
- static getOrderedLanguages(codes = Object.keys(this.languages)) {
27
- return this.getLanguages(codes).sort((a, b) => Object.keys(this.languages).findIndex((c) => c === a.code) - Object.keys(this.languages).findIndex((c) => c === b.code));
28
- }
29
- /**
30
- * retrieve language codes (string array) from a given array of string and UxLanguage items
31
- *
32
- * @param array It can be an mixed array of string and UxLanguage items
33
- */
34
- static getLanguageCodes(array) {
35
- return array.map((language) => (typeof language === 'string' ? language : language.code));
36
- }
37
- /**
38
- * filter non EU languages from given array
39
- *
40
- * @param array An array of UxLanguage items
41
- */
42
- static filterNonEULanguages(array) {
43
- return array ? array.filter((lang) => !Object.keys(this.languages).includes(lang.code)) : [];
44
- }
45
- /**
46
- * filter EU Languages from given array
47
- *
48
- * @param array An array of UxLanguage items
49
- */
50
- static filterEULanguages(array) {
51
- return array ? array.filter((lang) => Object.keys(this.languages).includes(lang.code)) : [];
52
- }
53
- }
54
- UxEuLanguages.languages = {
55
- bg: {
56
- code: 'bg',
57
- label: 'български',
58
- },
59
- cs: {
60
- code: 'cs',
61
- label: 'čeština',
62
- },
63
- da: {
64
- code: 'da',
65
- label: 'dansk',
66
- },
67
- de: {
68
- code: 'de',
69
- label: 'Deutsch',
70
- },
71
- et: {
72
- code: 'et',
73
- label: 'eesti keel',
74
- },
75
- el: {
76
- code: 'el',
77
- label: 'ελληνικά',
78
- },
79
- en: {
80
- code: 'en',
81
- label: 'English',
82
- },
83
- es: {
84
- code: 'es',
85
- label: 'español',
86
- },
87
- fr: {
88
- code: 'fr',
89
- label: 'français',
90
- },
91
- ga: {
92
- code: 'ga',
93
- label: 'Gaeilge',
94
- },
95
- hr: {
96
- code: 'hr',
97
- label: 'hrvatski',
98
- },
99
- it: {
100
- code: 'it',
101
- label: 'italiano',
102
- },
103
- lv: {
104
- code: 'lv',
105
- label: 'latviešu valoda',
106
- },
107
- lt: {
108
- code: 'lt',
109
- label: 'lietuvių kalba',
110
- },
111
- hu: {
112
- code: 'hu',
113
- label: 'magyar',
114
- },
115
- mt: {
116
- code: 'mt',
117
- label: 'Malti',
118
- },
119
- nl: {
120
- code: 'nl',
121
- label: 'Nederlands',
122
- },
123
- pl: {
124
- code: 'pl',
125
- label: 'polski',
126
- },
127
- pt: {
128
- code: 'pt',
129
- label: 'português',
130
- },
131
- ro: {
132
- code: 'ro',
133
- label: 'română',
134
- },
135
- sk: {
136
- code: 'sk',
137
- label: 'slovenčina',
138
- },
139
- sl: {
140
- code: 'sl',
141
- label: 'slovenščina',
142
- },
143
- fi: {
144
- code: 'fi',
145
- label: 'suomi',
146
- },
147
- sv: {
148
- code: 'sv',
149
- label: 'svenska',
150
- },
151
- };
152
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXgtZXUtbGFuZ3VhZ2VzLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi91eC1tb2RlbHMvdXgtZXUtbGFuZ3VhZ2VzLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLE1BQU0sT0FBTyxhQUFhO0lBb0d0Qjs7Ozs7T0FLRztJQUNILE1BQU0sQ0FBQyxZQUFZLENBQUMsUUFBd0IsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQ25FLE9BQU8sSUFBSSxDQUFDLDBCQUEwQixDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQXNCLEVBQUUsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ25JLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSCxNQUFNLENBQUMsMEJBQTBCLENBQUMsS0FBcUI7UUFDbkQsT0FBTyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBc0IsRUFBRSxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUNwSSxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxRQUF3QixNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDMUUsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksQ0FDaEMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FDTCxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUM5SCxDQUFDO0lBQ04sQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxNQUFNLENBQUMsZ0JBQWdCLENBQUMsS0FBcUI7UUFDekMsT0FBTyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsUUFBNkIsRUFBRSxFQUFFLENBQUMsQ0FBQyxPQUFPLFFBQVEsS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDbkgsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxNQUFNLENBQUMsb0JBQW9CLENBQUMsS0FBbUI7UUFDM0MsT0FBTyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFnQixFQUFFLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQzdHLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsTUFBTSxDQUFDLGlCQUFpQixDQUFDLEtBQW1CO1FBQ3hDLE9BQU8sS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBZ0IsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7SUFDNUcsQ0FBQzs7QUE3SmMsdUJBQVMsR0FBbUM7SUFDdkQsRUFBRSxFQUFFO1FBQ0EsSUFBSSxFQUFFLElBQUk7UUFDVixLQUFLLEVBQUUsV0FBVztLQUNyQjtJQUNELEVBQUUsRUFBRTtRQUNBLElBQUksRUFBRSxJQUFJO1FBQ1YsS0FBSyxFQUFFLFNBQVM7S0FDbkI7SUFDRCxFQUFFLEVBQUU7UUFDQSxJQUFJLEVBQUUsSUFBSTtRQUNWLEtBQUssRUFBRSxPQUFPO0tBQ2pCO0lBQ0QsRUFBRSxFQUFFO1FBQ0EsSUFBSSxFQUFFLElBQUk7UUFDVixLQUFLLEVBQUUsU0FBUztLQUNuQjtJQUNELEVBQUUsRUFBRTtRQUNBLElBQUksRUFBRSxJQUFJO1FBQ1YsS0FBSyxFQUFFLFlBQVk7S0FDdEI7SUFDRCxFQUFFLEVBQUU7UUFDQSxJQUFJLEVBQUUsSUFBSTtRQUNWLEtBQUssRUFBRSxVQUFVO0tBQ3BCO0lBQ0QsRUFBRSxFQUFFO1FBQ0EsSUFBSSxFQUFFLElBQUk7UUFDVixLQUFLLEVBQUUsU0FBUztLQUNuQjtJQUNELEVBQUUsRUFBRTtRQUNBLElBQUksRUFBRSxJQUFJO1FBQ1YsS0FBSyxFQUFFLFNBQVM7S0FDbkI7SUFDRCxFQUFFLEVBQUU7UUFDQSxJQUFJLEVBQUUsSUFBSTtRQUNWLEtBQUssRUFBRSxVQUFVO0tBQ3BCO0lBQ0QsRUFBRSxFQUFFO1FBQ0EsSUFBSSxFQUFFLElBQUk7UUFDVixLQUFLLEVBQUUsU0FBUztLQUNuQjtJQUNELEVBQUUsRUFBRTtRQUNBLElBQUksRUFBRSxJQUFJO1FBQ1YsS0FBSyxFQUFFLFVBQVU7S0FDcEI7SUFDRCxFQUFFLEVBQUU7UUFDQSxJQUFJLEVBQUUsSUFBSTtRQUNWLEtBQUssRUFBRSxVQUFVO0tBQ3BCO0lBQ0QsRUFBRSxFQUFFO1FBQ0EsSUFBSSxFQUFFLElBQUk7UUFDVixLQUFLLEVBQUUsaUJBQWlCO0tBQzNCO0lBQ0QsRUFBRSxFQUFFO1FBQ0EsSUFBSSxFQUFFLElBQUk7UUFDVixLQUFLLEVBQUUsZ0JBQWdCO0tBQzFCO0lBQ0QsRUFBRSxFQUFFO1FBQ0EsSUFBSSxFQUFFLElBQUk7UUFDVixLQUFLLEVBQUUsUUFBUTtLQUNsQjtJQUNELEVBQUUsRUFBRTtRQUNBLElBQUksRUFBRSxJQUFJO1FBQ1YsS0FBSyxFQUFFLE9BQU87S0FDakI7SUFDRCxFQUFFLEVBQUU7UUFDQSxJQUFJLEVBQUUsSUFBSTtRQUNWLEtBQUssRUFBRSxZQUFZO0tBQ3RCO0lBQ0QsRUFBRSxFQUFFO1FBQ0EsSUFBSSxFQUFFLElBQUk7UUFDVixLQUFLLEVBQUUsUUFBUTtLQUNsQjtJQUNELEVBQUUsRUFBRTtRQUNBLElBQUksRUFBRSxJQUFJO1FBQ1YsS0FBSyxFQUFFLFdBQVc7S0FDckI7SUFDRCxFQUFFLEVBQUU7UUFDQSxJQUFJLEVBQUUsSUFBSTtRQUNWLEtBQUssRUFBRSxRQUFRO0tBQ2xCO0lBQ0QsRUFBRSxFQUFFO1FBQ0EsSUFBSSxFQUFFLElBQUk7UUFDVixLQUFLLEVBQUUsWUFBWTtLQUN0QjtJQUNELEVBQUUsRUFBRTtRQUNBLElBQUksRUFBRSxJQUFJO1FBQ1YsS0FBSyxFQUFFLGFBQWE7S0FDdkI7SUFDRCxFQUFFLEVBQUU7UUFDQSxJQUFJLEVBQUUsSUFBSTtRQUNWLEtBQUssRUFBRSxPQUFPO0tBQ2pCO0lBQ0QsRUFBRSxFQUFFO1FBQ0EsSUFBSSxFQUFFLElBQUk7UUFDVixLQUFLLEVBQUUsU0FBUztLQUNuQjtDQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBVeExhbmd1YWdlIH0gZnJvbSAnLi91eC1sYW5ndWFnZS5tb2RlbCc7XG5cbmV4cG9ydCB0eXBlIExhbmd1YWdlQ29kZSA9IHN0cmluZyB8IFV4TGFuZ3VhZ2U7XG5cbmV4cG9ydCBjbGFzcyBVeEV1TGFuZ3VhZ2VzIHtcbiAgICBwcml2YXRlIHN0YXRpYyBsYW5ndWFnZXM6IHsgW2NvZGU6IHN0cmluZ106IFV4TGFuZ3VhZ2UgfSA9IHtcbiAgICAgICAgYmc6IHtcbiAgICAgICAgICAgIGNvZGU6ICdiZycsXG4gICAgICAgICAgICBsYWJlbDogJ9Cx0YrQu9Cz0LDRgNGB0LrQuCcsXG4gICAgICAgIH0sXG4gICAgICAgIGNzOiB7XG4gICAgICAgICAgICBjb2RlOiAnY3MnLFxuICAgICAgICAgICAgbGFiZWw6ICfEjWXFoXRpbmEnLFxuICAgICAgICB9LFxuICAgICAgICBkYToge1xuICAgICAgICAgICAgY29kZTogJ2RhJyxcbiAgICAgICAgICAgIGxhYmVsOiAnZGFuc2snLFxuICAgICAgICB9LFxuICAgICAgICBkZToge1xuICAgICAgICAgICAgY29kZTogJ2RlJyxcbiAgICAgICAgICAgIGxhYmVsOiAnRGV1dHNjaCcsXG4gICAgICAgIH0sXG4gICAgICAgIGV0OiB7XG4gICAgICAgICAgICBjb2RlOiAnZXQnLFxuICAgICAgICAgICAgbGFiZWw6ICdlZXN0aSBrZWVsJyxcbiAgICAgICAgfSxcbiAgICAgICAgZWw6IHtcbiAgICAgICAgICAgIGNvZGU6ICdlbCcsXG4gICAgICAgICAgICBsYWJlbDogJ861zrvOu863zr3Ouc66zqwnLFxuICAgICAgICB9LFxuICAgICAgICBlbjoge1xuICAgICAgICAgICAgY29kZTogJ2VuJyxcbiAgICAgICAgICAgIGxhYmVsOiAnRW5nbGlzaCcsXG4gICAgICAgIH0sXG4gICAgICAgIGVzOiB7XG4gICAgICAgICAgICBjb2RlOiAnZXMnLFxuICAgICAgICAgICAgbGFiZWw6ICdlc3Bhw7FvbCcsXG4gICAgICAgIH0sXG4gICAgICAgIGZyOiB7XG4gICAgICAgICAgICBjb2RlOiAnZnInLFxuICAgICAgICAgICAgbGFiZWw6ICdmcmFuw6dhaXMnLFxuICAgICAgICB9LFxuICAgICAgICBnYToge1xuICAgICAgICAgICAgY29kZTogJ2dhJyxcbiAgICAgICAgICAgIGxhYmVsOiAnR2FlaWxnZScsXG4gICAgICAgIH0sXG4gICAgICAgIGhyOiB7XG4gICAgICAgICAgICBjb2RlOiAnaHInLFxuICAgICAgICAgICAgbGFiZWw6ICdocnZhdHNraScsXG4gICAgICAgIH0sXG4gICAgICAgIGl0OiB7XG4gICAgICAgICAgICBjb2RlOiAnaXQnLFxuICAgICAgICAgICAgbGFiZWw6ICdpdGFsaWFubycsXG4gICAgICAgIH0sXG4gICAgICAgIGx2OiB7XG4gICAgICAgICAgICBjb2RlOiAnbHYnLFxuICAgICAgICAgICAgbGFiZWw6ICdsYXR2aWXFoXUgdmFsb2RhJyxcbiAgICAgICAgfSxcbiAgICAgICAgbHQ6IHtcbiAgICAgICAgICAgIGNvZGU6ICdsdCcsXG4gICAgICAgICAgICBsYWJlbDogJ2xpZXR1dmnFsyBrYWxiYScsXG4gICAgICAgIH0sXG4gICAgICAgIGh1OiB7XG4gICAgICAgICAgICBjb2RlOiAnaHUnLFxuICAgICAgICAgICAgbGFiZWw6ICdtYWd5YXInLFxuICAgICAgICB9LFxuICAgICAgICBtdDoge1xuICAgICAgICAgICAgY29kZTogJ210JyxcbiAgICAgICAgICAgIGxhYmVsOiAnTWFsdGknLFxuICAgICAgICB9LFxuICAgICAgICBubDoge1xuICAgICAgICAgICAgY29kZTogJ25sJyxcbiAgICAgICAgICAgIGxhYmVsOiAnTmVkZXJsYW5kcycsXG4gICAgICAgIH0sXG4gICAgICAgIHBsOiB7XG4gICAgICAgICAgICBjb2RlOiAncGwnLFxuICAgICAgICAgICAgbGFiZWw6ICdwb2xza2knLFxuICAgICAgICB9LFxuICAgICAgICBwdDoge1xuICAgICAgICAgICAgY29kZTogJ3B0JyxcbiAgICAgICAgICAgIGxhYmVsOiAncG9ydHVndcOqcycsXG4gICAgICAgIH0sXG4gICAgICAgIHJvOiB7XG4gICAgICAgICAgICBjb2RlOiAncm8nLFxuICAgICAgICAgICAgbGFiZWw6ICdyb23Dom7EgycsXG4gICAgICAgIH0sXG4gICAgICAgIHNrOiB7XG4gICAgICAgICAgICBjb2RlOiAnc2snLFxuICAgICAgICAgICAgbGFiZWw6ICdzbG92ZW7EjWluYScsXG4gICAgICAgIH0sXG4gICAgICAgIHNsOiB7XG4gICAgICAgICAgICBjb2RlOiAnc2wnLFxuICAgICAgICAgICAgbGFiZWw6ICdzbG92ZW7FocSNaW5hJyxcbiAgICAgICAgfSxcbiAgICAgICAgZmk6IHtcbiAgICAgICAgICAgIGNvZGU6ICdmaScsXG4gICAgICAgICAgICBsYWJlbDogJ3N1b21pJyxcbiAgICAgICAgfSxcbiAgICAgICAgc3Y6IHtcbiAgICAgICAgICAgIGNvZGU6ICdzdicsXG4gICAgICAgICAgICBsYWJlbDogJ3N2ZW5za2EnLFxuICAgICAgICB9LFxuICAgIH07XG5cbiAgICAvKipcbiAgICAgKiBNYXRjaGVzIHRoZSBnaXZlbiBzdHJpbmcgYXJyYXkgdG8gdGhlIEVVIGxhbmd1YWdlcyBhbmQgcmV0dXJucyBhIFV4TGFuZ3VhZ2UgYXJyYXkuXG4gICAgICogSW4gY2FzZSB0aGF0IG5vIGNvZGVzIHByb3ZpZGVkIGl0IHJldHVybnMgdGhlIEVVIExhbmd1YWdlcyBhcnJheS5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBjb2RlcyBBIHN0cmluZyBhcnJheSBvZiAyIGNoYXIgY29kZXNcbiAgICAgKi9cbiAgICBzdGF0aWMgZ2V0TGFuZ3VhZ2VzKGNvZGVzOiBMYW5ndWFnZUNvZGVbXSA9IE9iamVjdC5rZXlzKHRoaXMubGFuZ3VhZ2VzKSk6IFV4TGFuZ3VhZ2VbXSB7XG4gICAgICAgIHJldHVybiB0aGlzLmZpbHRlckludmFsaWRMYW5ndWFnZUNvZGVzKGNvZGVzKS5tYXAoKGM6IHN0cmluZyB8IFV4TGFuZ3VhZ2UpID0+ICh0eXBlb2YgYyA9PT0gJ3N0cmluZycgPyB0aGlzLmxhbmd1YWdlc1tjXSA6IGMpKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBmaWx0ZXJzIGFuZCByZW1vdmVzIGxhbmd1YWdlIGNvZGVzIHRoYXQgYXJlIG5vdCBwYXJ0IG9mIHRoZSBFVUxhbmd1YWdlXG4gICAgICogZS5nLiAna28nIGRvZXMgbm90IG1hcCB0byBhbnkgRVVMYW5ndWFnZSBjb2RlIG9uIHRoZSBhcnJheS5cbiAgICAgKiAgICAgIHsgY29kZTogJ2tvJywgbGFiZWw6ICd3aGF0ZXZlcicgfSBpcyB2YWxpZCB0aG91Z2hcbiAgICAgKlxuICAgICAqIEBwYXJhbSBjb2RlcyBjb2RlcyBBIHN0cmluZyBhcnJheSBvZiAyIGNoYXIgY29kZXNjb2RlcyBBIHN0cmluZyBhcnJheSBvZiAyIGNoYXIgY29kZXNcbiAgICAgKi9cbiAgICBzdGF0aWMgZmlsdGVySW52YWxpZExhbmd1YWdlQ29kZXMoY29kZXM6IExhbmd1YWdlQ29kZVtdKTogTGFuZ3VhZ2VDb2RlW10ge1xuICAgICAgICByZXR1cm4gY29kZXMuZmlsdGVyKChjOiBzdHJpbmcgfCBVeExhbmd1YWdlKSA9PiAodHlwZW9mIGMgPT09ICdzdHJpbmcnID8gT2JqZWN0LmtleXModGhpcy5sYW5ndWFnZXMpLmluZGV4T2YoYykgIT09IC0xIDogdHJ1ZSkpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIHJldHVybiB0aGUgZ2l2ZW4gbGlzdCBvcmRlcmVkIGJhc2VkIG9uIHRoZSBFVUxhbmd1YWdlIG9yZGVyXG4gICAgICpcbiAgICAgKiBAcGFyYW0gY29kZXMgY29kZXMgQSBzdHJpbmcgYXJyYXkgb2YgMiBjaGFyIGNvZGVzXG4gICAgICovXG4gICAgc3RhdGljIGdldE9yZGVyZWRMYW5ndWFnZXMoY29kZXM6IExhbmd1YWdlQ29kZVtdID0gT2JqZWN0LmtleXModGhpcy5sYW5ndWFnZXMpKTogVXhMYW5ndWFnZVtdIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0TGFuZ3VhZ2VzKGNvZGVzKS5zb3J0KFxuICAgICAgICAgICAgKGEsIGIpID0+XG4gICAgICAgICAgICAgICAgT2JqZWN0LmtleXModGhpcy5sYW5ndWFnZXMpLmZpbmRJbmRleCgoYykgPT4gYyA9PT0gYS5jb2RlKSAtIE9iamVjdC5rZXlzKHRoaXMubGFuZ3VhZ2VzKS5maW5kSW5kZXgoKGMpID0+IGMgPT09IGIuY29kZSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiByZXRyaWV2ZSBsYW5ndWFnZSBjb2RlcyAoc3RyaW5nIGFycmF5KSBmcm9tIGEgZ2l2ZW4gYXJyYXkgb2Ygc3RyaW5nIGFuZCBVeExhbmd1YWdlIGl0ZW1zXG4gICAgICpcbiAgICAgKiBAcGFyYW0gYXJyYXkgSXQgY2FuIGJlIGFuIG1peGVkIGFycmF5IG9mIHN0cmluZyBhbmQgVXhMYW5ndWFnZSBpdGVtc1xuICAgICAqL1xuICAgIHN0YXRpYyBnZXRMYW5ndWFnZUNvZGVzKGFycmF5OiBMYW5ndWFnZUNvZGVbXSk6IHN0cmluZ1tdIHtcbiAgICAgICAgcmV0dXJuIGFycmF5Lm1hcCgobGFuZ3VhZ2U6IHN0cmluZyB8IFV4TGFuZ3VhZ2UpID0+ICh0eXBlb2YgbGFuZ3VhZ2UgPT09ICdzdHJpbmcnID8gbGFuZ3VhZ2UgOiBsYW5ndWFnZS5jb2RlKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogZmlsdGVyIG5vbiBFVSBsYW5ndWFnZXMgZnJvbSBnaXZlbiBhcnJheVxuICAgICAqXG4gICAgICogQHBhcmFtIGFycmF5IEFuIGFycmF5IG9mIFV4TGFuZ3VhZ2UgaXRlbXNcbiAgICAgKi9cbiAgICBzdGF0aWMgZmlsdGVyTm9uRVVMYW5ndWFnZXMoYXJyYXk6IFV4TGFuZ3VhZ2VbXSk6IFV4TGFuZ3VhZ2VbXSB7XG4gICAgICAgIHJldHVybiBhcnJheSA/IGFycmF5LmZpbHRlcigobGFuZzogVXhMYW5ndWFnZSkgPT4gIU9iamVjdC5rZXlzKHRoaXMubGFuZ3VhZ2VzKS5pbmNsdWRlcyhsYW5nLmNvZGUpKSA6IFtdO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIGZpbHRlciBFVSBMYW5ndWFnZXMgZnJvbSBnaXZlbiBhcnJheVxuICAgICAqXG4gICAgICogQHBhcmFtIGFycmF5IEFuIGFycmF5IG9mIFV4TGFuZ3VhZ2UgaXRlbXNcbiAgICAgKi9cbiAgICBzdGF0aWMgZmlsdGVyRVVMYW5ndWFnZXMoYXJyYXk6IFV4TGFuZ3VhZ2VbXSk6IFV4TGFuZ3VhZ2VbXSB7XG4gICAgICAgIHJldHVybiBhcnJheSA/IGFycmF5LmZpbHRlcigobGFuZzogVXhMYW5ndWFnZSkgPT4gT2JqZWN0LmtleXModGhpcy5sYW5ndWFnZXMpLmluY2x1ZGVzKGxhbmcuY29kZSkpIDogW107XG4gICAgfVxufVxuIl19