@gravitee/ui-components 3.25.1 → 3.25.3-typescript-ad6021f

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 (111) hide show
  1. package/CHANGELOG.md +1292 -0
  2. package/LICENSE.txt +202 -0
  3. package/README.md +195 -0
  4. package/package.json +17 -4
  5. package/src/.eslintrc.js +19 -0
  6. package/src/atoms/gv-autocomplete.js +156 -132
  7. package/src/atoms/gv-button.js +248 -73
  8. package/src/atoms/gv-checkbox.js +103 -45
  9. package/src/atoms/gv-date-picker-calendar.js +393 -312
  10. package/src/atoms/gv-date-picker-cell.js +81 -57
  11. package/src/atoms/gv-date-picker.js +319 -180
  12. package/src/atoms/gv-file-upload.js +195 -85
  13. package/src/atoms/gv-icon.js +34 -13
  14. package/src/atoms/gv-image.js +66 -31
  15. package/src/atoms/gv-input-message.js +37 -12
  16. package/src/atoms/gv-input.js +148 -117
  17. package/src/atoms/gv-link.js +125 -47
  18. package/src/atoms/gv-message.js +69 -18
  19. package/src/atoms/gv-metric.js +68 -19
  20. package/src/atoms/gv-relative-time.js +38 -67
  21. package/src/atoms/gv-select-native.js +215 -96
  22. package/src/atoms/gv-select.js +230 -110
  23. package/src/atoms/gv-spinner.js +26 -5
  24. package/src/atoms/gv-state.js +66 -25
  25. package/src/atoms/gv-switch.js +160 -40
  26. package/src/atoms/gv-tag.js +78 -26
  27. package/src/atoms/gv-text.js +83 -22
  28. package/src/charts/gv-chart-bar.js +18 -22
  29. package/src/charts/gv-chart-gauge.js +31 -28
  30. package/src/charts/gv-chart-histogram.js +10 -18
  31. package/src/charts/gv-chart-line.js +59 -70
  32. package/src/charts/gv-chart-map.js +42 -44
  33. package/src/charts/gv-chart-pie.js +14 -18
  34. package/src/index.js +0 -1
  35. package/src/lib/cron-expression.js +35 -40
  36. package/src/lib/date.js +1 -10
  37. package/src/lib/events.js +1 -3
  38. package/src/lib/http-client-schema-form.js +12 -13
  39. package/src/lib/http.js +56 -57
  40. package/src/lib/i18n.js +22 -30
  41. package/src/lib/item.js +12 -13
  42. package/src/lib/properties.js +42 -77
  43. package/src/lib/schema-form.js +5 -4
  44. package/src/lib/studio.js +60 -13
  45. package/src/lib/style.js +8 -8
  46. package/src/lib/text-format.js +7 -14
  47. package/src/lib/theme.js +5 -8
  48. package/src/lib/utils.js +18 -17
  49. package/src/mixins/chart-element.js +54 -31
  50. package/src/mixins/input-element.js +47 -60
  51. package/src/mixins/item-resource.js +32 -34
  52. package/src/mixins/keyboard-element.js +5 -6
  53. package/src/mixins/update-after-browser.js +1 -4
  54. package/src/mixins/with-resize-observer.js +13 -23
  55. package/src/mixins/with-skeleton-attribute.js +48 -54
  56. package/src/molecules/gv-card-full.js +147 -26
  57. package/src/molecules/gv-card-list.js +42 -13
  58. package/src/molecules/gv-card.js +91 -17
  59. package/src/molecules/gv-category-list.js +17 -6
  60. package/src/molecules/gv-category.js +103 -23
  61. package/src/molecules/gv-code.js +142 -80
  62. package/src/molecules/gv-confirm.js +71 -41
  63. package/src/molecules/gv-cron-editor.js +389 -143
  64. package/src/molecules/gv-dropdown-menu.js +46 -14
  65. package/src/molecules/gv-expandable.js +59 -31
  66. package/src/molecules/gv-expression-language.js +138 -176
  67. package/src/molecules/gv-identity-picture.js +66 -43
  68. package/src/molecules/gv-list.js +134 -42
  69. package/src/molecules/gv-metrics.js +49 -37
  70. package/src/molecules/gv-modal.js +95 -28
  71. package/src/molecules/gv-nav.js +75 -49
  72. package/src/molecules/gv-option.js +130 -57
  73. package/src/molecules/gv-plans.js +209 -86
  74. package/src/molecules/gv-popover.js +177 -57
  75. package/src/molecules/gv-promote.js +146 -28
  76. package/src/molecules/gv-rating-list.js +195 -69
  77. package/src/molecules/gv-rating.js +105 -52
  78. package/src/molecules/gv-row-expandable.js +11 -5
  79. package/src/molecules/gv-row.js +147 -21
  80. package/src/molecules/gv-stats.js +48 -23
  81. package/src/molecules/gv-stepper.js +187 -43
  82. package/src/molecules/gv-table.js +309 -199
  83. package/src/molecules/gv-tree.js +156 -33
  84. package/src/organisms/gv-documentation.js +127 -44
  85. package/src/organisms/gv-header.js +195 -37
  86. package/src/organisms/gv-http-client.js +168 -32
  87. package/src/organisms/gv-menu.js +158 -37
  88. package/src/organisms/gv-newsletter-subscription.js +189 -48
  89. package/src/organisms/gv-pagination.js +77 -49
  90. package/src/organisms/gv-properties.js +492 -271
  91. package/src/organisms/gv-resizable-views.js +259 -41
  92. package/src/organisms/gv-resources.js +275 -168
  93. package/src/organisms/gv-schema-form-array.js +159 -49
  94. package/src/organisms/gv-schema-form-control-object.js +73 -59
  95. package/src/organisms/gv-schema-form-control.js +134 -107
  96. package/src/organisms/gv-schema-form.js +313 -208
  97. package/src/organisms/gv-tabs.js +98 -66
  98. package/src/organisms/gv-user-menu.js +201 -36
  99. package/src/organisms/gv-vertical-menu.js +61 -20
  100. package/src/policy-studio/gv-flow-step.js +265 -105
  101. package/src/policy-studio/gv-flow.js +304 -125
  102. package/src/policy-studio/gv-policy-studio-menu.js +471 -157
  103. package/src/policy-studio/gv-policy-studio.js +774 -710
  104. package/src/styles/empty.js +20 -3
  105. package/src/styles/input.js +247 -3
  106. package/src/styles/link.js +16 -3
  107. package/src/styles/shapes.js +0 -1
  108. package/src/styles/skeleton.js +37 -3
  109. package/src/styles/zoom.js +24 -3
  110. package/src/theme/definition.json +1762 -0
  111. package/src/theme/gv-theme.js +60 -21
package/src/lib/http.js CHANGED
@@ -16,223 +16,222 @@
16
16
  export const statusCode = {
17
17
  100: {
18
18
  description: 'Continue',
19
- constant: 'CONTINUE'
19
+ constant: 'CONTINUE',
20
20
  },
21
21
  101: {
22
22
  description: 'Switching Protocols',
23
- constant: 'SWITCHING_PROTOCOLS'
23
+ constant: 'SWITCHING_PROTOCOLS',
24
24
  },
25
25
  102: {
26
26
  description: 'Processing',
27
- constant: 'PROCESSING'
27
+ constant: 'PROCESSING',
28
28
  },
29
29
  200: {
30
30
  description: 'OK',
31
- constant: 'OK'
31
+ constant: 'OK',
32
32
  },
33
33
  201: {
34
34
  description: 'Created',
35
- constant: 'CREATED'
35
+ constant: 'CREATED',
36
36
  },
37
37
  202: {
38
38
  description: 'Accepted',
39
- constant: 'ACCEPTED'
39
+ constant: 'ACCEPTED',
40
40
  },
41
41
  203: {
42
42
  description: 'Non Authoritative Information',
43
- constant: 'NON_AUTHORITATIVE_INFORMATION'
43
+ constant: 'NON_AUTHORITATIVE_INFORMATION',
44
44
  },
45
45
  204: {
46
46
  description: 'No Content',
47
- constant: 'NO_CONTENT'
47
+ constant: 'NO_CONTENT',
48
48
  },
49
49
  205: {
50
50
  description: 'Reset Content',
51
- constant: 'RESET_CONTENT'
51
+ constant: 'RESET_CONTENT',
52
52
  },
53
53
  206: {
54
54
  description: 'Partial Content',
55
- constant: 'PARTIAL_CONTENT'
55
+ constant: 'PARTIAL_CONTENT',
56
56
  },
57
57
  207: {
58
58
  description: 'Multi-Status',
59
- constant: 'MULTI_STATUS'
59
+ constant: 'MULTI_STATUS',
60
60
  },
61
61
  300: {
62
62
  description: 'Multiple Choices',
63
- constant: 'MULTIPLE_CHOICES'
63
+ constant: 'MULTIPLE_CHOICES',
64
64
  },
65
65
  301: {
66
66
  description: 'Moved Permanently',
67
- constant: 'MOVED_PERMANENTLY'
67
+ constant: 'MOVED_PERMANENTLY',
68
68
  },
69
69
  302: {
70
70
  description: 'Moved Temporarily',
71
- constant: 'MOVED_TEMPORARILY'
71
+ constant: 'MOVED_TEMPORARILY',
72
72
  },
73
73
  303: {
74
74
  description: 'See Other',
75
- constant: 'SEE_OTHER'
75
+ constant: 'SEE_OTHER',
76
76
  },
77
77
  304: {
78
78
  description: 'Not Modified',
79
- constant: 'NOT_MODIFIED'
79
+ constant: 'NOT_MODIFIED',
80
80
  },
81
81
  305: {
82
82
  description: 'Use Proxy',
83
- constant: 'USE_PROXY'
83
+ constant: 'USE_PROXY',
84
84
  },
85
85
  307: {
86
86
  description: 'Temporary Redirect',
87
- constant: 'TEMPORARY_REDIRECT'
87
+ constant: 'TEMPORARY_REDIRECT',
88
88
  },
89
89
  308: {
90
90
  description: 'Permanent Redirect',
91
- constant: 'PERMANENT_REDIRECT'
91
+ constant: 'PERMANENT_REDIRECT',
92
92
  },
93
93
  400: {
94
94
  description: 'Bad Request',
95
- constant: 'BAD_REQUEST'
95
+ constant: 'BAD_REQUEST',
96
96
  },
97
97
  401: {
98
98
  description: 'Unauthorized',
99
- constant: 'UNAUTHORIZED'
99
+ constant: 'UNAUTHORIZED',
100
100
  },
101
101
  402: {
102
102
  description: 'Payment Required',
103
- constant: 'PAYMENT_REQUIRED'
103
+ constant: 'PAYMENT_REQUIRED',
104
104
  },
105
105
  403: {
106
106
  description: 'Forbidden',
107
- constant: 'FORBIDDEN'
107
+ constant: 'FORBIDDEN',
108
108
  },
109
109
  404: {
110
110
  description: 'Not Found',
111
- constant: 'NOT_FOUND'
111
+ constant: 'NOT_FOUND',
112
112
  },
113
113
  405: {
114
114
  description: 'Method Not Allowed',
115
- constant: 'METHOD_NOT_ALLOWED'
115
+ constant: 'METHOD_NOT_ALLOWED',
116
116
  },
117
117
  406: {
118
118
  description: 'Not Acceptable',
119
- constant: 'NOT_ACCEPTABLE'
119
+ constant: 'NOT_ACCEPTABLE',
120
120
  },
121
121
  407: {
122
122
  description: 'Proxy Authentication Required',
123
- constant: 'PROXY_AUTHENTICATION_REQUIRED'
123
+ constant: 'PROXY_AUTHENTICATION_REQUIRED',
124
124
  },
125
125
  408: {
126
126
  description: 'Request Timeout',
127
- constant: 'REQUEST_TIMEOUT'
127
+ constant: 'REQUEST_TIMEOUT',
128
128
  },
129
129
  409: {
130
130
  description: 'Conflict',
131
- constant: 'CONFLICT'
131
+ constant: 'CONFLICT',
132
132
  },
133
133
  410: {
134
134
  description: 'Gone',
135
- constant: 'GONE'
135
+ constant: 'GONE',
136
136
  },
137
137
  411: {
138
138
  description: 'Length Required',
139
- constant: 'LENGTH_REQUIRED'
139
+ constant: 'LENGTH_REQUIRED',
140
140
  },
141
141
  412: {
142
142
  description: 'Precondition Failed',
143
- constant: 'PRECONDITION_FAILED'
143
+ constant: 'PRECONDITION_FAILED',
144
144
  },
145
145
  413: {
146
146
  description: 'Request Entity Too Large',
147
- constant: 'REQUEST_ENTITY_TOO_LARGE'
147
+ constant: 'REQUEST_ENTITY_TOO_LARGE',
148
148
  },
149
149
  414: {
150
150
  description: 'Request-URI Too Long',
151
- constant: 'REQUEST_URI_TOO_LONG'
151
+ constant: 'REQUEST_URI_TOO_LONG',
152
152
  },
153
153
  415: {
154
154
  description: 'Unsupported Media Type',
155
- constant: 'UNSUPPORTED_MEDIA_TYPE'
155
+ constant: 'UNSUPPORTED_MEDIA_TYPE',
156
156
  },
157
157
  416: {
158
158
  description: 'Requested Range Not Satisfiable',
159
- constant: 'REQUESTED_RANGE_NOT_SATISFIABLE'
159
+ constant: 'REQUESTED_RANGE_NOT_SATISFIABLE',
160
160
  },
161
161
  417: {
162
162
  description: 'Expectation Failed',
163
- constant: 'EXPECTATION_FAILED'
163
+ constant: 'EXPECTATION_FAILED',
164
164
  },
165
165
  418: {
166
166
  description: "I'm a teapot",
167
- constant: "I'M_A_TEAPOT"
167
+ constant: "I'M_A_TEAPOT",
168
168
  },
169
169
  419: {
170
170
  description: 'Insufficient Space on Resource',
171
- constant: 'INSUFFICIENT_SPACE_ON_RESOURCE'
171
+ constant: 'INSUFFICIENT_SPACE_ON_RESOURCE',
172
172
  },
173
173
  420: {
174
174
  description: 'Method Failure',
175
- constant: 'METHOD_FAILURE'
175
+ constant: 'METHOD_FAILURE',
176
176
  },
177
177
  422: {
178
178
  description: 'Unprocessable Entity',
179
- constant: 'UNPROCESSABLE_ENTITY'
179
+ constant: 'UNPROCESSABLE_ENTITY',
180
180
  },
181
181
  423: {
182
182
  description: 'Locked',
183
- constant: 'LOCKED'
183
+ constant: 'LOCKED',
184
184
  },
185
185
  424: {
186
186
  description: 'Failed Dependency',
187
- constant: 'FAILED_DEPENDENCY'
187
+ constant: 'FAILED_DEPENDENCY',
188
188
  },
189
189
  428: {
190
190
  description: 'Precondition Required',
191
- constant: 'PRECONDITION_REQUIRED'
191
+ constant: 'PRECONDITION_REQUIRED',
192
192
  },
193
193
  429: {
194
194
  description: 'Too Many Requests',
195
- constant: 'TOO_MANY_REQUESTS'
195
+ constant: 'TOO_MANY_REQUESTS',
196
196
  },
197
197
  431: {
198
198
  description: 'Request Header Fields Too Large',
199
- constant: 'REQUEST_HEADER_FIELDS_TOO_LARGE'
199
+ constant: 'REQUEST_HEADER_FIELDS_TOO_LARGE',
200
200
  },
201
201
  451: {
202
202
  description: 'Unavailable For Legal Reasons',
203
- constant: 'UNAVAILABLE_FOR_LEGAL_REASONS'
203
+ constant: 'UNAVAILABLE_FOR_LEGAL_REASONS',
204
204
  },
205
205
  500: {
206
206
  description: 'Internal Server Error',
207
- constant: 'INTERNAL_SERVER_ERROR'
207
+ constant: 'INTERNAL_SERVER_ERROR',
208
208
  },
209
209
  501: {
210
210
  description: 'Not Implemented',
211
- constant: 'NOT_IMPLEMENTED'
211
+ constant: 'NOT_IMPLEMENTED',
212
212
  },
213
213
  502: {
214
214
  description: 'Bad Gateway',
215
- constant: 'BAD_GATEWAY'
215
+ constant: 'BAD_GATEWAY',
216
216
  },
217
217
  503: {
218
218
  description: 'Service Unavailable',
219
- constant: 'SERVICE_UNAVAILABLE'
219
+ constant: 'SERVICE_UNAVAILABLE',
220
220
  },
221
221
  504: {
222
222
  description: 'Gateway Timeout',
223
- constant: 'GATEWAY_TIMEOUT'
223
+ constant: 'GATEWAY_TIMEOUT',
224
224
  },
225
225
  505: {
226
226
  description: 'HTTP Version Not Supported',
227
- constant: 'HTTP_VERSION_NOT_SUPPORTED'
227
+ constant: 'HTTP_VERSION_NOT_SUPPORTED',
228
228
  },
229
229
  507: {
230
230
  description: 'Insufficient Storage',
231
- constant: 'INSUFFICIENT_STORAGE'
231
+ constant: 'INSUFFICIENT_STORAGE',
232
232
  },
233
233
  511: {
234
234
  description: 'Network Authentication Required',
235
- constant: 'NETWORK_AUTHENTICATION_REQUIRED'
236
- }
235
+ constant: 'NETWORK_AUTHENTICATION_REQUIRED',
236
+ },
237
237
  };
238
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4vbm9kZV9tb2R1bGVzL0BncmF2aXRlZS91aS1jb21wb25lbnRzL2xpYi9odHRwLmpzIl0sIm5hbWVzIjpbInN0YXR1c0NvZGUiLCJkZXNjcmlwdGlvbiIsImNvbnN0YW50Il0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPLE1BQU1BLFVBQVUsR0FBRztBQUN4QixPQUFLO0FBQ0hDLElBQUFBLFdBQVcsRUFBRSxVQURWO0FBRUhDLElBQUFBLFFBQVEsRUFBRTtBQUZQLEdBRG1CO0FBS3hCLE9BQUs7QUFDSEQsSUFBQUEsV0FBVyxFQUFFLHFCQURWO0FBRUhDLElBQUFBLFFBQVEsRUFBRTtBQUZQLEdBTG1CO0FBU3hCLE9BQUs7QUFDSEQsSUFBQUEsV0FBVyxFQUFFLFlBRFY7QUFFSEMsSUFBQUEsUUFBUSxFQUFFO0FBRlAsR0FUbUI7QUFheEIsT0FBSztBQUNIRCxJQUFBQSxXQUFXLEVBQUUsSUFEVjtBQUVIQyxJQUFBQSxRQUFRLEVBQUU7QUFGUCxHQWJtQjtBQWlCeEIsT0FBSztBQUNIRCxJQUFBQSxXQUFXLEVBQUUsU0FEVjtBQUVIQyxJQUFBQSxRQUFRLEVBQUU7QUFGUCxHQWpCbUI7QUFxQnhCLE9BQUs7QUFDSEQsSUFBQUEsV0FBVyxFQUFFLFVBRFY7QUFFSEMsSUFBQUEsUUFBUSxFQUFFO0FBRlAsR0FyQm1CO0FBeUJ4QixPQUFLO0FBQ0hELElBQUFBLFdBQVcsRUFBRSwrQkFEVjtBQUVIQyxJQUFBQSxRQUFRLEVBQUU7QUFGUCxHQXpCbUI7QUE2QnhCLE9BQUs7QUFDSEQsSUFBQUEsV0FBVyxFQUFFLFlBRFY7QUFFSEMsSUFBQUEsUUFBUSxFQUFFO0FBRlAsR0E3Qm1CO0FBaUN4QixPQUFLO0FBQ0hELElBQUFBLFdBQVcsRUFBRSxlQURWO0FBRUhDLElBQUFBLFFBQVEsRUFBRTtBQUZQLEdBakNtQjtBQXFDeEIsT0FB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QUFFO0FBRlAsR0FyTG1CO0FBeUx4QixPQUFLO0FBQ0hELElBQUFBLFdBQVcsRUFBRSwrQkFEVjtBQUVIQyxJQUFBQSxRQUFRLEVBQUU7QUFGUCxHQXpMbUI7QUE2THhCLE9BQUs7QUFDSEQsSUFBQUEsV0FBVyxFQUFFLHVCQURWO0FBRUhDLElBQUFBLFFBQVEsRUFBRTtBQUZQLEdBN0xtQjtBQWlNeEIsT0FBSztBQUNIRCxJQUFBQSxXQUFXLEVBQUUsaUJBRFY7QUFFSEMsSUFBQUEsUUFBUSxFQUFFO0FBRlAsR0FqTW1CO0FBcU14QixPQUFLO0FBQ0hELElBQUFBLFdBQVcsRUFBRSxhQURWO0FBRUhDLElBQUFBLFFBQVEsRUFBRTtBQUZQLEdBck1tQjtBQXlNeEIsT0FBSztBQUNIRCxJQUFBQSxXQUFXLEVBQUUscUJBRFY7QUFFSEMsSUFBQUEsUUFBUSxFQUFFO0FBRlAsR0F6TW1CO0FBNk14QixPQUFLO0FBQ0hELElBQUFBLFdBQVcsRUFBRSxpQkFEVjtBQUVIQyxJQUFBQSxRQUFRLEVBQUU7QUFGUCxHQTdNbUI7QUFpTnhCLE9BQUs7QUFDSEQsSUFBQUEsV0FBVyxFQUFFLDRCQURWO0FBRUhDLElBQUFBLFFBQVEsRUFBRTtBQUZQLEdBak5tQjtBQXFOeEIsT0FBSztBQUNIRCxJQUFBQSxXQUFXLEVBQUUsc0JBRFY7QUFFSEMsSUFBQUEsUUFBUSxFQUFFO0FBRlAsR0FyTm1CO0FBeU54QixPQUFLO0FBQ0hELElBQUFBLFdBQVcsRUFBRSxpQ0FEVjtBQUVIQyxJQUFBQSxRQUFRLEVBQUU7QUFGUDtBQXpObUIsQ0FBbkIiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChDKSAyMDIxIFRoZSBHcmF2aXRlZSB0ZWFtIChodHRwOi8vZ3Jhdml0ZWUuaW8pXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuZXhwb3J0IGNvbnN0IHN0YXR1c0NvZGUgPSB7XG4gIDEwMDoge1xuICAgIGRlc2NyaXB0aW9uOiAnQ29udGludWUnLFxuICAgIGNvbnN0YW50OiAnQ09OVElOVUUnLFxuICB9LFxuICAxMDE6IHtcbiAgICBkZXNjcmlwdGlvbjogJ1N3aXRjaGluZyBQcm90b2NvbHMnLFxuICAgIGNvbnN0YW50OiAnU1dJVENISU5HX1BST1RPQ09MUycsXG4gIH0sXG4gIDEwMjoge1xuICAgIGRlc2NyaXB0aW9uOiAnUHJvY2Vzc2luZycsXG4gICAgY29uc3RhbnQ6ICdQUk9DRVNTSU5HJyxcbiAgfSxcbiAgMjAwOiB7XG4gICAgZGVzY3JpcHRpb246ICdPSycsXG4gICAgY29uc3RhbnQ6ICdPSycsXG4gIH0sXG4gIDIwMToge1xuICAgIGRlc2NyaXB0aW9uOiAnQ3JlYXRlZCcsXG4gICAgY29uc3RhbnQ6ICdDUkVBVEVEJyxcbiAgfSxcbiAgMjAyOiB7XG4gICAgZGVzY3JpcHRpb246ICdBY2NlcHRlZCcsXG4gICAgY29uc3RhbnQ6ICdBQ0NFUFRFRCcsXG4gIH0sXG4gIDIwMzoge1xuICAgIGRlc2NyaXB0aW9uOiAnTm9uIEF1dGhvcml0YXRpdmUgSW5mb3JtYXRpb24nLFxuICAgIGNvbnN0YW50OiAnTk9OX0FVVEhPUklUQVRJVkVfSU5GT1JNQVRJT04nLFxuICB9LFxuICAyMDQ6IHtcbiAgICBkZXNjcmlwdGlvbjogJ05vIENvbnRlbnQnLFxuICAgIGNvbnN0YW50OiAnTk9fQ09OVEVOVCcsXG4gIH0sXG4gIDIwNToge1xuICAgIGRlc2NyaXB0aW9uOiAnUmVzZXQgQ29udGVudCcsXG4gICAgY29uc3RhbnQ6ICdSRVNFVF9DT05URU5UJyxcbiAgfSxcbiAgMjA2OiB7XG4gICAgZGVzY3JpcHRpb246ICdQYXJ0aWFsIENvbnRlbnQnLFxuICAgIGNvbnN0YW50OiAnUEFSVElBTF9DT05URU5UJyxcbiAgfSxcbiAgMjA3OiB7XG4gICAgZGVzY3JpcHRpb246ICdNdWx0aS1TdGF0dXMnLFxuICAgIGNvbnN0YW50OiAnTVVMVElfU1RBVFVTJyxcbiAgfSxcbiAgMzAwOiB7XG4gICAgZGVzY3JpcHRpb246ICdNdWx0aXBsZSBDaG9pY2VzJyxcbiAgICBjb25zdGFudDogJ01VTFRJUExFX0NIT0lDRVMnLFxuICB9LFxuICAzMDE6IHtcbiAgICBkZXNjcmlwdGlvbjogJ01vdmVkIFBlcm1hbmVudGx5JyxcbiAgICBjb25zdGFudDogJ01PVkVEX1BFUk1BTkVOVExZJyxcbiAgfSxcbiAgMzAyOiB7XG4gICAgZGVzY3JpcHRpb246ICdNb3ZlZCBUZW1wb3JhcmlseScsXG4gICAgY29uc3RhbnQ6ICdNT1ZFRF9URU1QT1JBUklMWScsXG4gIH0sXG4gIDMwMzoge1xuICAgIGRlc2NyaXB0aW9uOiAnU2VlIE90aGVyJyxcbiAgICBjb25zdGFudDogJ1NFRV9PVEhFUicsXG4gIH0sXG4gIDMwNDoge1xuICAgIGRlc2NyaXB0aW9uOiAnTm90IE1vZGlmaWVkJyxcbiAgICBjb25zdGFudDogJ05PVF9NT0RJRklFRCcsXG4gIH0sXG4gIDMwNToge1xuICAgIGRlc2NyaXB0aW9uOiAnVXNlIFByb3h5JyxcbiAgICBjb25zdGFudDogJ1VTRV9QUk9YWScsXG4gIH0sXG4gIDMwNzoge1xuICAgIGRlc2NyaXB0aW9uOiAnVGVtcG9yYXJ5IFJlZGlyZWN0JyxcbiAgICBjb25zdGFudDogJ1RFTVBPUkFSWV9SRURJUkVDVCcsXG4gIH0sXG4gIDMwODoge1xuICAgIGRlc2NyaXB0aW9uOiAnUGVybWFuZW50IFJlZGlyZWN0JyxcbiAgICBjb25zdGFudDogJ1BFUk1BTkVOVF9SRURJUkVDVCcsXG4gIH0sXG4gIDQwMDoge1xuICAgIGRlc2NyaXB0aW9uOiAnQmFkIFJlcXVlc3QnLFxuICAgIGNvbnN0YW50OiAnQkFEX1JFUVVFU1QnLFxuICB9LFxuICA0MDE6IHtcbiAgICBkZXNjcmlwdGlvbjogJ1VuYXV0aG9yaXplZCcsXG4gICAgY29uc3RhbnQ6ICdVTkFVVEhPUklaRUQnLFxuICB9LFxuICA0MDI6IHtcbiAgICBkZXNjcmlwdGlvbjogJ1BheW1lbnQgUmVxdWlyZWQnLFxuICAgIGNvbnN0YW50OiAnUEFZTUVOVF9SRVFVSVJFRCcsXG4gIH0sXG4gIDQwMzoge1xuICAgIGRlc2NyaXB0aW9uOiAnRm9yYmlkZGVuJyxcbiAgICBjb25zdGFudDogJ0ZPUkJJRERFTicsXG4gIH0sXG4gIDQwNDoge1xuICAgIGRlc2NyaXB0aW9uOiAnTm90IEZvdW5kJyxcbiAgICBjb25zdGFudDogJ05PVF9GT1VORCcsXG4gIH0sXG4gIDQwNToge1xuICAgIGRlc2NyaXB0aW9uOiAnTWV0aG9kIE5vdCBBbGxvd2VkJyxcbiAgICBjb25zdGFudDogJ01FVEhPRF9OT1RfQUxMT1dFRCcsXG4gIH0sXG4gIDQwNjoge1xuICAgIGRlc2NyaXB0aW9uOiAnTm90IEFjY2VwdGFibGUnLFxuICAgIGNvbnN0YW50OiAnTk9UX0FDQ0VQVEFCTEUnLFxuICB9LFxuICA0MDc6IHtcbiAgICBkZXNjcmlwdGlvbjogJ1Byb3h5IEF1dGhlbnRpY2F0aW9uIFJlcXVpcmVkJyxcbiAgICBjb25zdGFudDogJ1BST1hZX0FVVEhFTlRJQ0FUSU9OX1JFUVVJUkVEJyxcbiAgfSxcbiAgNDA4OiB7XG4gICAgZGVzY3JpcHRpb246ICdSZXF1ZXN0IFRpbWVvdXQnLFxuICAgIGNvbnN0YW50OiAnUkVRVUVTVF9USU1FT1VUJyxcbiAgfSxcbiAgNDA5OiB7XG4gICAgZGVzY3JpcHRpb246ICdDb25mbGljdCcsXG4gICAgY29uc3RhbnQ6ICdDT05GTElDVCcsXG4gIH0sXG4gIDQxMDoge1xuICAgIGRlc2NyaXB0aW9uOiAnR29uZScsXG4gICAgY29uc3RhbnQ6ICdHT05FJyxcbiAgfSxcbiAgNDExOiB7XG4gICAgZGVzY3JpcHRpb246ICdMZW5ndGggUmVxdWlyZWQnLFxuICAgIGNvbnN0YW50OiAnTEVOR1RIX1JFUVVJUkVEJyxcbiAgfSxcbiAgNDEyOiB7XG4gICAgZGVzY3JpcHRpb246ICdQcmVjb25kaXRpb24gRmFpbGVkJyxcbiAgICBjb25zdGFudDogJ1BSRUNPTkRJVElPTl9GQUlMRUQnLFxuICB9LFxuICA0MTM6IHtcbiAgICBkZXNjcmlwdGlvbjogJ1JlcXVlc3QgRW50aXR5IFRvbyBMYXJnZScsXG4gICAgY29uc3RhbnQ6ICdSRVFVRVNUX0VOVElUWV9UT09fTEFSR0UnLFxuICB9LFxuICA0MTQ6IHtcbiAgICBkZXNjcmlwdGlvbjogJ1JlcXVlc3QtVVJJIFRvbyBMb25nJyxcbiAgICBjb25zdGFudDogJ1JFUVVFU1RfVVJJX1RPT19MT05HJyxcbiAgfSxcbiAgNDE1OiB7XG4gICAgZGVzY3JpcHRpb246ICdVbnN1cHBvcnRlZCBNZWRpYSBUeXBlJyxcbiAgICBjb25zdGFudDogJ1VOU1VQUE9SVEVEX01FRElBX1RZUEUnLFxuICB9LFxuICA0MTY6IHtcbiAgICBkZXNjcmlwdGlvbjogJ1JlcXVlc3RlZCBSYW5nZSBOb3QgU2F0aXNmaWFibGUnLFxuICAgIGNvbnN0YW50OiAnUkVRVUVTVEVEX1JBTkdFX05PVF9TQVRJU0ZJQUJMRScsXG4gIH0sXG4gIDQxNzoge1xuICAgIGRlc2NyaXB0aW9uOiAnRXhwZWN0YXRpb24gRmFpbGVkJyxcbiAgICBjb25zdGFudDogJ0VYUEVDVEFUSU9OX0ZBSUxFRCcsXG4gIH0sXG4gIDQxODoge1xuICAgIGRlc2NyaXB0aW9uOiBcIkknbSBhIHRlYXBvdFwiLFxuICAgIGNvbnN0YW50OiBcIkknTV9BX1RFQVBPVFwiLFxuICB9LFxuICA0MTk6IHtcbiAgICBkZXNjcmlwdGlvbjogJ0luc3VmZmljaWVudCBTcGFjZSBvbiBSZXNvdXJjZScsXG4gICAgY29uc3RhbnQ6ICdJTlNVRkZJQ0lFTlRfU1BBQ0VfT05fUkVTT1VSQ0UnLFxuICB9LFxuICA0MjA6IHtcbiAgICBkZXNjcmlwdGlvbjogJ01ldGhvZCBGYWlsdXJlJyxcbiAgICBjb25zdGFudDogJ01FVEhPRF9GQUlMVVJFJyxcbiAgfSxcbiAgNDIyOiB7XG4gICAgZGVzY3JpcHRpb246ICdVbnByb2Nlc3NhYmxlIEVudGl0eScsXG4gICAgY29uc3RhbnQ6ICdVTlBST0NFU1NBQkxFX0VOVElUWScsXG4gIH0sXG4gIDQyMzoge1xuICAgIGRlc2NyaXB0aW9uOiAnTG9ja2VkJyxcbiAgICBjb25zdGFudDogJ0xPQ0tFRCcsXG4gIH0sXG4gIDQyNDoge1xuICAgIGRlc2NyaXB0aW9uOiAnRmFpbGVkIERlcGVuZGVuY3knLFxuICAgIGNvbnN0YW50OiAnRkFJTEVEX0RFUEVOREVOQ1knLFxuICB9LFxuICA0Mjg6IHtcbiAgICBkZXNjcmlwdGlvbjogJ1ByZWNvbmRpdGlvbiBSZXF1aXJlZCcsXG4gICAgY29uc3RhbnQ6ICdQUkVDT05ESVRJT05fUkVRVUlSRUQnLFxuICB9LFxuICA0Mjk6IHtcbiAgICBkZXNjcmlwdGlvbjogJ1RvbyBNYW55IFJlcXVlc3RzJyxcbiAgICBjb25zdGFudDogJ1RPT19NQU5ZX1JFUVVFU1RTJyxcbiAgfSxcbiAgNDMxOiB7XG4gICAgZGVzY3JpcHRpb246ICdSZXF1ZXN0IEhlYWRlciBGaWVsZHMgVG9vIExhcmdlJyxcbiAgICBjb25zdGFudDogJ1JFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0UnLFxuICB9LFxuICA0NTE6IHtcbiAgICBkZXNjcmlwdGlvbjogJ1VuYXZhaWxhYmxlIEZvciBMZWdhbCBSZWFzb25zJyxcbiAgICBjb25zdGFudDogJ1VOQVZBSUxBQkxFX0ZPUl9MRUdBTF9SRUFTT05TJyxcbiAgfSxcbiAgNTAwOiB7XG4gICAgZGVzY3JpcHRpb246ICdJbnRlcm5hbCBTZXJ2ZXIgRXJyb3InLFxuICAgIGNvbnN0YW50OiAnSU5URVJOQUxfU0VSVkVSX0VSUk9SJyxcbiAgfSxcbiAgNTAxOiB7XG4gICAgZGVzY3JpcHRpb246ICdOb3QgSW1wbGVtZW50ZWQnLFxuICAgIGNvbnN0YW50OiAnTk9UX0lNUExFTUVOVEVEJyxcbiAgfSxcbiAgNTAyOiB7XG4gICAgZGVzY3JpcHRpb246ICdCYWQgR2F0ZXdheScsXG4gICAgY29uc3RhbnQ6ICdCQURfR0FURVdBWScsXG4gIH0sXG4gIDUwMzoge1xuICAgIGRlc2NyaXB0aW9uOiAnU2VydmljZSBVbmF2YWlsYWJsZScsXG4gICAgY29uc3RhbnQ6ICdTRVJWSUNFX1VOQVZBSUxBQkxFJyxcbiAgfSxcbiAgNTA0OiB7XG4gICAgZGVzY3JpcHRpb246ICdHYXRld2F5IFRpbWVvdXQnLFxuICAgIGNvbnN0YW50OiAnR0FURVdBWV9USU1FT1VUJyxcbiAgfSxcbiAgNTA1OiB7XG4gICAgZGVzY3JpcHRpb246ICdIVFRQIFZlcnNpb24gTm90IFN1cHBvcnRlZCcsXG4gICAgY29uc3RhbnQ6ICdIVFRQX1ZFUlNJT05fTk9UX1NVUFBPUlRFRCcsXG4gIH0sXG4gIDUwNzoge1xuICAgIGRlc2NyaXB0aW9uOiAnSW5zdWZmaWNpZW50IFN0b3JhZ2UnLFxuICAgIGNvbnN0YW50OiAnSU5TVUZGSUNJRU5UX1NUT1JBR0UnLFxuICB9LFxuICA1MTE6IHtcbiAgICBkZXNjcmlwdGlvbjogJ05ldHdvcmsgQXV0aGVudGljYXRpb24gUmVxdWlyZWQnLFxuICAgIGNvbnN0YW50OiAnTkVUV09SS19BVVRIRU5USUNBVElPTl9SRVFVSVJFRCcsXG4gIH0sXG59O1xuIl19
package/src/lib/i18n.js CHANGED
@@ -14,98 +14,90 @@
14
14
  * limitations under the License.
15
15
  */
16
16
  import 'whatwg-fetch';
17
+
17
18
  /**
18
19
  * @param {string} key - The translation key
19
20
  * @param {object} data - The translation data
20
21
  * @returns {string} - The translated
21
22
  */
22
-
23
23
  export function i18n(key, data) {
24
24
  const translation = getTranslation(key);
25
-
26
25
  if (translation == null) {
27
26
  return 'unknown';
28
27
  }
29
28
 
30
29
  if (data) {
31
30
  const msg = i18n._messageFormatter.compile(translation);
32
-
33
31
  return msg(data);
34
32
  }
35
33
 
36
34
  return translation;
37
35
  }
36
+
38
37
  /**
39
38
  * @param {string} key - The translation key
40
39
  * @returns {null|string|function} - The translation string or function
41
40
  */
42
-
43
41
  function getTranslation(key) {
44
42
  try {
45
43
  return key.split('.').reduce((prev, curr) => prev && prev[curr], i18n._translations[i18n._lang]);
46
44
  } catch (e) {
47
45
  return null;
48
46
  }
49
- } // Init private translation storage
50
-
47
+ }
51
48
 
49
+ // Init private translation storage
52
50
  i18n._translations = {};
53
51
 
54
52
  const MessageFormat = require('messageformat');
55
-
56
53
  i18n._messageFormatter = new MessageFormat(i18n._lang);
54
+
57
55
  /**
58
56
  * @param {string} lang - Translation language code
59
57
  */
60
-
61
58
  export function setLanguage(lang) {
62
59
  i18n._lang = lang;
63
60
  }
61
+
64
62
  /**
65
63
  * @returns {string} - Translation language code
66
64
  */
67
-
68
65
  export function getLanguage() {
69
66
  return i18n._lang;
70
67
  }
68
+
71
69
  /**
72
70
  * @param {string} lang - Translation language code
73
71
  * @param {object} translations - Translation values by key
74
72
  * @param {object} label - Lang label
75
73
  */
76
-
77
74
  export function addTranslations(lang, translations, label) {
78
- i18n._translations[lang] = { ...{
79
- LANGUAGE: label
80
- },
81
- ...translations
82
- };
75
+ i18n._translations[lang] = { ...{ LANGUAGE: label }, ...translations };
83
76
  }
77
+
84
78
  /**
85
79
  * @returns {object} - All defined languages (key: human name and value: code)
86
80
  */
87
-
88
81
  export function getAvailableLanguages() {
89
82
  const availableLanguages = {};
90
-
91
83
  for (const lang in i18n._translations) {
92
- const {
93
- LANGUAGE
94
- } = i18n._translations[lang];
84
+ const { LANGUAGE } = i18n._translations[lang];
95
85
  availableLanguages[LANGUAGE] = lang;
96
86
  }
97
-
98
87
  return availableLanguages;
99
88
  }
89
+
100
90
  export function loadDefaultTranslations() {
101
91
  setLanguage('en');
102
- return fetch(`i18n/${i18n._lang}.json`).then(response => {
103
- return response.json();
104
- }).then(translations => {
105
- addTranslations(i18n._lang, translations);
106
- }).catch(ex => {
107
- // eslint-disable-next-line no-console
108
- console.error('[ui-components] loadDefaultTranslations - parsing failed ', ex);
109
- });
92
+ return fetch(`i18n/${i18n._lang}.json`)
93
+ .then((response) => {
94
+ return response.json();
95
+ })
96
+ .then((translations) => {
97
+ addTranslations(i18n._lang, translations);
98
+ })
99
+ .catch((ex) => {
100
+ // eslint-disable-next-line no-console
101
+ console.error('[ui-components] loadDefaultTranslations - parsing failed ', ex);
102
+ });
110
103
  }
111
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4vbm9kZV9tb2R1bGVzL0BncmF2aXRlZS91aS1jb21wb25lbnRzL2xpYi9pMThuLmpzIl0sIm5hbWVzIjpbImkxOG4iLCJrZXkiLCJkYXRhIiwidHJhbnNsYXRpb24iLCJnZXRUcmFuc2xhdGlvbiIsIm1zZyIsIl9tZXNzYWdlRm9ybWF0dGVyIiwiY29tcGlsZSIsInNwbGl0IiwicmVkdWNlIiwicHJldiIsImN1cnIiLCJfdHJhbnNsYXRpb25zIiwiX2xhbmciLCJlIiwiTWVzc2FnZUZvcm1hdCIsInJlcXVpcmUiLCJzZXRMYW5ndWFnZSIsImxhbmciLCJnZXRMYW5ndWFnZSIsImFkZFRyYW5zbGF0aW9ucyIsInRyYW5zbGF0aW9ucyIsImxhYmVsIiwiTEFOR1VBR0UiLCJnZXRBdmFpbGFibGVMYW5ndWFnZXMiLCJhdmFpbGFibGVMYW5ndWFnZXMiLCJsb2FkRGVmYXVsdFRyYW5zbGF0aW9ucyIsImZldGNoIiwidGhlbiIsInJlc3BvbnNlIiwianNvbiIsImNhdGNoIiwiZXgiLCJjb25zb2xlIiwiZXJyb3IiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU8sY0FBUDtBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBQ0EsT0FBTyxTQUFTQSxJQUFULENBQWNDLEdBQWQsRUFBbUJDLElBQW5CLEVBQXlCO0FBQzlCLFFBQU1DLFdBQVcsR0FBR0MsY0FBYyxDQUFDSCxHQUFELENBQWxDOztBQUNBLE1BQUlFLFdBQVcsSUFBSSxJQUFuQixFQUF5QjtBQUN2QixXQUFPLFNBQVA7QUFDRDs7QUFFRCxNQUFJRCxJQUFKLEVBQVU7QUFDUixVQUFNRyxHQUFHLEdBQUdMLElBQUksQ0FBQ00saUJBQUwsQ0FBdUJDLE9BQXZCLENBQStCSixXQUEvQixDQUFaOztBQUNBLFdBQU9FLEdBQUcsQ0FBQ0gsSUFBRCxDQUFWO0FBQ0Q7O0FBRUQsU0FBT0MsV0FBUDtBQUNEO0FBRUQ7QUFDQTtBQUNBO0FBQ0E7O0FBQ0EsU0FBU0MsY0FBVCxDQUF3QkgsR0FBeEIsRUFBNkI7QUFDM0IsTUFBSTtBQUNGLFdBQU9BLEdBQUcsQ0FBQ08sS0FBSixDQUFVLEdBQVYsRUFBZUMsTUFBZixDQUFzQixDQUFDQyxJQUFELEVBQU9DLElBQVAsS0FBZ0JELElBQUksSUFBSUEsSUFBSSxDQUFDQyxJQUFELENBQWxELEVBQTBEWCxJQUFJLENBQUNZLGFBQUwsQ0FBbUJaLElBQUksQ0FBQ2EsS0FBeEIsQ0FBMUQsQ0FBUDtBQUNELEdBRkQsQ0FFRSxPQUFPQyxDQUFQLEVBQVU7QUFDVixXQUFPLElBQVA7QUFDRDtBQUNGLEMsQ0FFRDs7O0FBQ0FkLElBQUksQ0FBQ1ksYUFBTCxHQUFxQixFQUFyQjs7QUFFQSxNQUFNRyxhQUFhLEdBQUdDLE9BQU8sQ0FBQyxlQUFELENBQTdCOztBQUNBaEIsSUFBSSxDQUFDTSxpQkFBTCxHQUF5QixJQUFJUyxhQUFKLENBQWtCZixJQUFJLENBQUNhLEtBQXZCLENBQXpCO0FBRUE7QUFDQTtBQUNBOztBQUNBLE9BQU8sU0FBU0ksV0FBVCxDQUFxQkMsSUFBckIsRUFBMkI7QUFDaENsQixFQUFBQSxJQUFJLENBQUNhLEtBQUwsR0FBYUssSUFBYjtBQUNEO0FBRUQ7QUFDQTtBQUNBOztBQUNBLE9BQU8sU0FBU0MsV0FBVCxHQUF1QjtBQUM1QixTQUFPbkIsSUFBSSxDQUFDYSxLQUFaO0FBQ0Q7QUFFRDtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUNBLE9BQU8sU0FBU08sZUFBVCxDQUF5QkYsSUFBekIsRUFBK0JHLFlBQS9CLEVBQTZDQyxLQUE3QyxFQUFvRDtBQUN6RHRCLEVBQUFBLElBQUksQ0FBQ1ksYUFBTCxDQUFtQk0sSUFBbkIsSUFBMkIsRUFBRSxHQUFHO0FBQUVLLE1BQUFBLFFBQVEsRUFBRUQ7QUFBWixLQUFMO0FBQTBCLE9BQUdEO0FBQTdCLEdBQTNCO0FBQ0Q7QUFFRDtBQUNBO0FBQ0E7O0FBQ0EsT0FBTyxTQUFTRyxxQkFBVCxHQUFpQztBQUN0QyxRQUFNQyxrQkFBa0IsR0FBRyxFQUEzQjs7QUFDQSxPQUFLLE1BQU1QLElBQVgsSUFBbUJsQixJQUFJLENBQUNZLGFBQXhCLEVBQXVDO0FBQ3JDLFVBQU07QUFBRVcsTUFBQUE7QUFBRixRQUFldkIsSUFBSSxDQUFDWSxhQUFMLENBQW1CTSxJQUFuQixDQUFyQjtBQUNBTyxJQUFBQSxrQkFBa0IsQ0FBQ0YsUUFBRCxDQUFsQixHQUErQkwsSUFBL0I7QUFDRDs7QUFDRCxTQUFPTyxrQkFBUDtBQUNEO0FBRUQsT0FBTyxTQUFTQyx1QkFBVCxHQUFtQztBQUN4Q1QsRUFBQUEsV0FBVyxDQUFDLElBQUQsQ0FBWDtBQUNBLFNBQU9VLEtBQUssQ0FBRSxRQUFPM0IsSUFBSSxDQUFDYSxLQUFNLE9BQXBCLENBQUwsQ0FDSmUsSUFESSxDQUNFQyxRQUFELElBQWM7QUFDbEIsV0FBT0EsUUFBUSxDQUFDQyxJQUFULEVBQVA7QUFDRCxHQUhJLEVBSUpGLElBSkksQ0FJRVAsWUFBRCxJQUFrQjtBQUN0QkQsSUFBQUEsZUFBZSxDQUFDcEIsSUFBSSxDQUFDYSxLQUFOLEVBQWFRLFlBQWIsQ0FBZjtBQUNELEdBTkksRUFPSlUsS0FQSSxDQU9HQyxFQUFELElBQVE7QUFDYjtBQUNBQyxJQUFBQSxPQUFPLENBQUNDLEtBQVIsQ0FBYywyREFBZCxFQUEyRUYsRUFBM0U7QUFDRCxHQVZJLENBQVA7QUFXRCIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEdyYXZpdGVlIHRlYW0gKGh0dHA6Ly9ncmF2aXRlZS5pbylcbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5pbXBvcnQgJ3doYXR3Zy1mZXRjaCc7XG5cbi8qKlxuICogQHBhcmFtIHtzdHJpbmd9IGtleSAtIFRoZSB0cmFuc2xhdGlvbiBrZXlcbiAqIEBwYXJhbSB7b2JqZWN0fSBkYXRhIC0gVGhlIHRyYW5zbGF0aW9uIGRhdGFcbiAqIEByZXR1cm5zIHtzdHJpbmd9IC0gVGhlIHRyYW5zbGF0ZWRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGkxOG4oa2V5LCBkYXRhKSB7XG4gIGNvbnN0IHRyYW5zbGF0aW9uID0gZ2V0VHJhbnNsYXRpb24oa2V5KTtcbiAgaWYgKHRyYW5zbGF0aW9uID09IG51bGwpIHtcbiAgICByZXR1cm4gJ3Vua25vd24nO1xuICB9XG5cbiAgaWYgKGRhdGEpIHtcbiAgICBjb25zdCBtc2cgPSBpMThuLl9tZXNzYWdlRm9ybWF0dGVyLmNvbXBpbGUodHJhbnNsYXRpb24pO1xuICAgIHJldHVybiBtc2coZGF0YSk7XG4gIH1cblxuICByZXR1cm4gdHJhbnNsYXRpb247XG59XG5cbi8qKlxuICogQHBhcmFtIHtzdHJpbmd9IGtleSAtIFRoZSB0cmFuc2xhdGlvbiBrZXlcbiAqIEByZXR1cm5zIHtudWxsfHN0cmluZ3xmdW5jdGlvbn0gLSBUaGUgdHJhbnNsYXRpb24gc3RyaW5nIG9yIGZ1bmN0aW9uXG4gKi9cbmZ1bmN0aW9uIGdldFRyYW5zbGF0aW9uKGtleSkge1xuICB0cnkge1xuICAgIHJldHVybiBrZXkuc3BsaXQoJy4nKS5yZWR1Y2UoKHByZXYsIGN1cnIpID0+IHByZXYgJiYgcHJldltjdXJyXSwgaTE4bi5fdHJhbnNsYXRpb25zW2kxOG4uX2xhbmddKTtcbiAgfSBjYXRjaCAoZSkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG59XG5cbi8vIEluaXQgcHJpdmF0ZSB0cmFuc2xhdGlvbiBzdG9yYWdlXG5pMThuLl90cmFuc2xhdGlvbnMgPSB7fTtcblxuY29uc3QgTWVzc2FnZUZvcm1hdCA9IHJlcXVpcmUoJ21lc3NhZ2Vmb3JtYXQnKTtcbmkxOG4uX21lc3NhZ2VGb3JtYXR0ZXIgPSBuZXcgTWVzc2FnZUZvcm1hdChpMThuLl9sYW5nKTtcblxuLyoqXG4gKiBAcGFyYW0ge3N0cmluZ30gbGFuZyAtIFRyYW5zbGF0aW9uIGxhbmd1YWdlIGNvZGVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHNldExhbmd1YWdlKGxhbmcpIHtcbiAgaTE4bi5fbGFuZyA9IGxhbmc7XG59XG5cbi8qKlxuICogQHJldHVybnMge3N0cmluZ30gLSBUcmFuc2xhdGlvbiBsYW5ndWFnZSBjb2RlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRMYW5ndWFnZSgpIHtcbiAgcmV0dXJuIGkxOG4uX2xhbmc7XG59XG5cbi8qKlxuICogQHBhcmFtIHtzdHJpbmd9IGxhbmcgLSBUcmFuc2xhdGlvbiBsYW5ndWFnZSBjb2RlXG4gKiBAcGFyYW0ge29iamVjdH0gdHJhbnNsYXRpb25zIC0gVHJhbnNsYXRpb24gdmFsdWVzIGJ5IGtleVxuICogQHBhcmFtIHtvYmplY3R9IGxhYmVsIC0gTGFuZyBsYWJlbFxuICovXG5leHBvcnQgZnVuY3Rpb24gYWRkVHJhbnNsYXRpb25zKGxhbmcsIHRyYW5zbGF0aW9ucywgbGFiZWwpIHtcbiAgaTE4bi5fdHJhbnNsYXRpb25zW2xhbmddID0geyAuLi57IExBTkdVQUdFOiBsYWJlbCB9LCAuLi50cmFuc2xhdGlvbnMgfTtcbn1cblxuLyoqXG4gKiBAcmV0dXJucyB7b2JqZWN0fSAtIEFsbCBkZWZpbmVkIGxhbmd1YWdlcyAoa2V5OiBodW1hbiBuYW1lIGFuZCB2YWx1ZTogY29kZSlcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldEF2YWlsYWJsZUxhbmd1YWdlcygpIHtcbiAgY29uc3QgYXZhaWxhYmxlTGFuZ3VhZ2VzID0ge307XG4gIGZvciAoY29uc3QgbGFuZyBpbiBpMThuLl90cmFuc2xhdGlvbnMpIHtcbiAgICBjb25zdCB7IExBTkdVQUdFIH0gPSBpMThuLl90cmFuc2xhdGlvbnNbbGFuZ107XG4gICAgYXZhaWxhYmxlTGFuZ3VhZ2VzW0xBTkdVQUdFXSA9IGxhbmc7XG4gIH1cbiAgcmV0dXJuIGF2YWlsYWJsZUxhbmd1YWdlcztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGxvYWREZWZhdWx0VHJhbnNsYXRpb25zKCkge1xuICBzZXRMYW5ndWFnZSgnZW4nKTtcbiAgcmV0dXJuIGZldGNoKGBpMThuLyR7aTE4bi5fbGFuZ30uanNvbmApXG4gICAgLnRoZW4oKHJlc3BvbnNlKSA9PiB7XG4gICAgICByZXR1cm4gcmVzcG9uc2UuanNvbigpO1xuICAgIH0pXG4gICAgLnRoZW4oKHRyYW5zbGF0aW9ucykgPT4ge1xuICAgICAgYWRkVHJhbnNsYXRpb25zKGkxOG4uX2xhbmcsIHRyYW5zbGF0aW9ucyk7XG4gICAgfSlcbiAgICAuY2F0Y2goKGV4KSA9PiB7XG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tY29uc29sZVxuICAgICAgY29uc29sZS5lcnJvcignW3VpLWNvbXBvbmVudHNdIGxvYWREZWZhdWx0VHJhbnNsYXRpb25zIC0gcGFyc2luZyBmYWlsZWQgJywgZXgpO1xuICAgIH0pO1xufVxuIl19
package/src/lib/item.js CHANGED
@@ -15,6 +15,7 @@
15
15
  */
16
16
  import { getApplicationTypeIcon } from './theme';
17
17
  import { html } from 'lit';
18
+
18
19
  export function getVersion(item) {
19
20
  if (item) {
20
21
  if (item.version) {
@@ -24,16 +25,16 @@ export function getVersion(item) {
24
25
  return html`<gv-icon shape="${icon}"></gv-icon>`;
25
26
  }
26
27
  }
27
-
28
28
  return null;
29
29
  }
30
+
30
31
  export function getTitle(item) {
31
32
  if (item) {
32
33
  return item.name;
33
34
  }
34
-
35
35
  return '';
36
36
  }
37
+
37
38
  export function getPicture(item) {
38
39
  if (item) {
39
40
  if (item.picture) {
@@ -42,9 +43,9 @@ export function getPicture(item) {
42
43
  return item._links.picture;
43
44
  }
44
45
  }
45
-
46
46
  return null;
47
47
  }
48
+
48
49
  export function getBackground(item) {
49
50
  if (item) {
50
51
  if (item.background) {
@@ -53,58 +54,58 @@ export function getBackground(item) {
53
54
  return item._links.background;
54
55
  }
55
56
  }
56
-
57
57
  return null;
58
58
  }
59
+
59
60
  export function getStates(item) {
60
61
  if (item) {
61
62
  return item.states;
62
63
  }
63
-
64
64
  return null;
65
65
  }
66
+
66
67
  export function getLabels(item) {
67
68
  if (item) {
68
69
  return item.labels;
69
70
  }
70
-
71
71
  return null;
72
72
  }
73
+
73
74
  export function getRating(item) {
74
75
  if (item) {
75
76
  return item.rating_summary;
76
77
  }
77
-
78
78
  return null;
79
79
  }
80
+
80
81
  export function getEntrypoints(item) {
81
82
  if (item) {
82
83
  return item.entrypoints || [];
83
84
  }
84
-
85
85
  return [];
86
86
  }
87
+
87
88
  export function getDescription(item) {
88
89
  if (item) {
89
90
  return item.description;
90
91
  }
91
-
92
92
  return '';
93
93
  }
94
+
94
95
  export function getOwner(item) {
95
96
  if (item && item.owner) {
96
97
  return item.owner.display_name;
97
98
  }
98
-
99
99
  return '';
100
100
  }
101
+
101
102
  export function getNbApisInView(item) {
102
103
  if (item && item.total_apis != null) {
103
104
  return item.total_apis;
104
105
  }
105
-
106
106
  return null;
107
107
  }
108
+
108
109
  export function getPictureDisplayName(item) {
109
110
  if (item) {
110
111
  if (item.version) {
@@ -113,7 +114,5 @@ export function getPictureDisplayName(item) {
113
114
  return `${getTitle(item)} ${item.applicationType} ${getOwner(item)}`;
114
115
  }
115
116
  }
116
-
117
117
  return getTitle(item);
118
118
  }
119
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4vbm9kZV9tb2R1bGVzL0BncmF2aXRlZS91aS1jb21wb25lbnRzL2xpYi9pdGVtLmpzIl0sIm5hbWVzIjpbImdldEFwcGxpY2F0aW9uVHlwZUljb24iLCJodG1sIiwiZ2V0VmVyc2lvbiIsIml0ZW0iLCJ2ZXJzaW9uIiwiYXBwbGljYXRpb25UeXBlIiwiaWNvbiIsImdldFRpdGxlIiwibmFtZSIsImdldFBpY3R1cmUiLCJwaWN0dXJlIiwiX2xpbmtzIiwiZ2V0QmFja2dyb3VuZCIsImJhY2tncm91bmQiLCJnZXRTdGF0ZXMiLCJzdGF0ZXMiLCJnZXRMYWJlbHMiLCJsYWJlbHMiLCJnZXRSYXRpbmciLCJyYXRpbmdfc3VtbWFyeSIsImdldEVudHJ5cG9pbnRzIiwiZW50cnlwb2ludHMiLCJnZXREZXNjcmlwdGlvbiIsImRlc2NyaXB0aW9uIiwiZ2V0T3duZXIiLCJvd25lciIsImRpc3BsYXlfbmFtZSIsImdldE5iQXBpc0luVmlldyIsInRvdGFsX2FwaXMiLCJnZXRQaWN0dXJlRGlzcGxheU5hbWUiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVNBLHNCQUFULFFBQXVDLFNBQXZDO0FBQ0EsU0FBU0MsSUFBVCxRQUFxQixLQUFyQjtBQUVBLE9BQU8sU0FBU0MsVUFBVCxDQUFvQkMsSUFBcEIsRUFBMEI7QUFDL0IsTUFBSUEsSUFBSixFQUFVO0FBQ1IsUUFBSUEsSUFBSSxDQUFDQyxPQUFULEVBQWtCO0FBQ2hCLGFBQU9ELElBQUksQ0FBQ0MsT0FBWjtBQUNELEtBRkQsTUFFTyxJQUFJRCxJQUFJLENBQUNFLGVBQVQsRUFBMEI7QUFDL0IsWUFBTUMsSUFBSSxHQUFHTixzQkFBc0IsQ0FBQ0csSUFBSSxDQUFDRSxlQUFOLENBQW5DO0FBQ0EsYUFBT0osSUFBSSxtQkFBbUJLLElBQW5CLGNBQVg7QUFDRDtBQUNGOztBQUNELFNBQU8s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QUNKLElBQUQsQ0FBTyxLQUFJQSxJQUFJLENBQUNFLGVBQWdCLEtBQUltQixRQUFRLENBQUNyQixJQUFELENBQU8sRUFBckU7QUFDRDtBQUNGOztBQUNELFNBQU9JLFFBQVEsQ0FBQ0osSUFBRCxDQUFmO0FBQ0QiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChDKSAyMDE1IFRoZSBHcmF2aXRlZSB0ZWFtIChodHRwOi8vZ3Jhdml0ZWUuaW8pXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuaW1wb3J0IHsgZ2V0QXBwbGljYXRpb25UeXBlSWNvbiB9IGZyb20gJy4vdGhlbWUnO1xuaW1wb3J0IHsgaHRtbCB9IGZyb20gJ2xpdCc7XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRWZXJzaW9uKGl0ZW0pIHtcbiAgaWYgKGl0ZW0pIHtcbiAgICBpZiAoaXRlbS52ZXJzaW9uKSB7XG4gICAgICByZXR1cm4gaXRlbS52ZXJzaW9uO1xuICAgIH0gZWxzZSBpZiAoaXRlbS5hcHBsaWNhdGlvblR5cGUpIHtcbiAgICAgIGNvbnN0IGljb24gPSBnZXRBcHBsaWNhdGlvblR5cGVJY29uKGl0ZW0uYXBwbGljYXRpb25UeXBlKTtcbiAgICAgIHJldHVybiBodG1sYDxndi1pY29uIHNoYXBlPVwiJHtpY29ufVwiPjwvZ3YtaWNvbj5gO1xuICAgIH1cbiAgfVxuICByZXR1cm4gbnVsbDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFRpdGxlKGl0ZW0pIHtcbiAgaWYgKGl0ZW0pIHtcbiAgICByZXR1cm4gaXRlbS5uYW1lO1xuICB9XG4gIHJldHVybiAnJztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFBpY3R1cmUoaXRlbSkge1xuICBpZiAoaXRlbSkge1xuICAgIGlmIChpdGVtLnBpY3R1cmUpIHtcbiAgICAgIHJldHVybiBpdGVtLnBpY3R1cmU7XG4gICAgfSBlbHNlIGlmIChpdGVtLl9saW5rcyAmJiBpdGVtLl9saW5rcy5waWN0dXJlKSB7XG4gICAgICByZXR1cm4gaXRlbS5fbGlua3MucGljdHVyZTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIG51bGw7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRCYWNrZ3JvdW5kKGl0ZW0pIHtcbiAgaWYgKGl0ZW0pIHtcbiAgICBpZiAoaXRlbS5iYWNrZ3JvdW5kKSB7XG4gICAgICByZXR1cm4gaXRlbS5iYWNrZ3JvdW5kO1xuICAgIH0gZWxzZSBpZiAoaXRlbS5fbGlua3MgJiYgaXRlbS5fbGlua3MuYmFja2dyb3VuZCkge1xuICAgICAgcmV0dXJuIGl0ZW0uX2xpbmtzLmJhY2tncm91bmQ7XG4gICAgfVxuICB9XG4gIHJldHVybiBudWxsO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0U3RhdGVzKGl0ZW0pIHtcbiAgaWYgKGl0ZW0pIHtcbiAgICByZXR1cm4gaXRlbS5zdGF0ZXM7XG4gIH1cbiAgcmV0dXJuIG51bGw7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRMYWJlbHMoaXRlbSkge1xuICBpZiAoaXRlbSkge1xuICAgIHJldHVybiBpdGVtLmxhYmVscztcbiAgfVxuICByZXR1cm4gbnVsbDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFJhdGluZyhpdGVtKSB7XG4gIGlmIChpdGVtKSB7XG4gICAgcmV0dXJuIGl0ZW0ucmF0aW5nX3N1bW1hcnk7XG4gIH1cbiAgcmV0dXJuIG51bGw7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRFbnRyeXBvaW50cyhpdGVtKSB7XG4gIGlmIChpdGVtKSB7XG4gICAgcmV0dXJuIGl0ZW0uZW50cnlwb2ludHMgfHwgW107XG4gIH1cbiAgcmV0dXJuIFtdO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0RGVzY3JpcHRpb24oaXRlbSkge1xuICBpZiAoaXRlbSkge1xuICAgIHJldHVybiBpdGVtLmRlc2NyaXB0aW9uO1xuICB9XG4gIHJldHVybiAnJztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldE93bmVyKGl0ZW0pIHtcbiAgaWYgKGl0ZW0gJiYgaXRlbS5vd25lcikge1xuICAgIHJldHVybiBpdGVtLm93bmVyLmRpc3BsYXlfbmFtZTtcbiAgfVxuICByZXR1cm4gJyc7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXROYkFwaXNJblZpZXcoaXRlbSkge1xuICBpZiAoaXRlbSAmJiBpdGVtLnRvdGFsX2FwaXMgIT0gbnVsbCkge1xuICAgIHJldHVybiBpdGVtLnRvdGFsX2FwaXM7XG4gIH1cbiAgcmV0dXJuIG51bGw7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRQaWN0dXJlRGlzcGxheU5hbWUoaXRlbSkge1xuICBpZiAoaXRlbSkge1xuICAgIGlmIChpdGVtLnZlcnNpb24pIHtcbiAgICAgIHJldHVybiBgJHtnZXRUaXRsZShpdGVtKX0gICR7aXRlbS52ZXJzaW9ufWA7XG4gICAgfSBlbHNlIGlmIChpdGVtLmFwcGxpY2F0aW9uVHlwZSkge1xuICAgICAgcmV0dXJuIGAke2dldFRpdGxlKGl0ZW0pfSAgJHtpdGVtLmFwcGxpY2F0aW9uVHlwZX0gICR7Z2V0T3duZXIoaXRlbSl9YDtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIGdldFRpdGxlKGl0ZW0pO1xufVxuIl19