@gravitee/ui-components 3.25.2 → 3.25.3-typescript-5a46c7d

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 (183) hide show
  1. package/package.json +13 -4
  2. package/src/atoms/gv-autocomplete.js +1 -437
  3. package/src/atoms/gv-button.js +1 -235
  4. package/src/atoms/gv-checkbox.js +1 -129
  5. package/src/atoms/gv-date-picker-calendar.js +1 -813
  6. package/src/atoms/gv-date-picker-cell.js +1 -166
  7. package/src/atoms/gv-date-picker.js +1 -532
  8. package/src/atoms/gv-file-upload.js +1 -257
  9. package/src/atoms/gv-icon.js +1 -82
  10. package/src/atoms/gv-image.js +1 -109
  11. package/src/atoms/gv-input-message.js +1 -59
  12. package/src/atoms/gv-input.js +1 -530
  13. package/src/atoms/gv-link.js +1 -132
  14. package/src/atoms/gv-message.js +1 -77
  15. package/src/atoms/gv-metric.js +1 -68
  16. package/src/atoms/gv-relative-time.js +1 -185
  17. package/src/atoms/gv-select-native.js +1 -269
  18. package/src/atoms/gv-select.js +1 -317
  19. package/src/atoms/gv-spinner.js +1 -36
  20. package/src/atoms/gv-state.js +1 -89
  21. package/src/atoms/gv-switch.js +1 -123
  22. package/src/atoms/gv-tag.js +1 -116
  23. package/src/atoms/gv-text.js +1 -107
  24. package/src/charts/gv-chart-bar.js +1 -107
  25. package/src/charts/gv-chart-gauge.js +1 -97
  26. package/src/charts/gv-chart-histogram.js +1 -91
  27. package/src/charts/gv-chart-line.js +1 -235
  28. package/src/charts/gv-chart-map.js +1 -114
  29. package/src/charts/gv-chart-pie.js +1 -95
  30. package/src/index.js +1 -78
  31. package/src/lib/cron-expression.js +1 -210
  32. package/src/lib/date.js +1 -53
  33. package/src/lib/events.js +1 -28
  34. package/src/lib/http-client-schema-form.js +1 -68
  35. package/src/lib/http.js +1 -238
  36. package/src/lib/i18n.js +1 -111
  37. package/src/lib/item.js +1 -119
  38. package/src/lib/properties.js +1 -224
  39. package/src/lib/schema-form.js +1 -43
  40. package/src/lib/studio.js +1 -94
  41. package/src/lib/style.js +1 -41
  42. package/src/lib/text-format.js +1 -76
  43. package/src/lib/theme.js +1 -66
  44. package/src/lib/utils.js +1 -110
  45. package/src/mixins/chart-element.js +1 -142
  46. package/src/mixins/input-element.js +1 -157
  47. package/src/mixins/item-resource.js +1 -122
  48. package/src/mixins/keyboard-element.js +1 -70
  49. package/src/mixins/update-after-browser.js +1 -33
  50. package/src/mixins/with-resize-observer.js +1 -78
  51. package/src/mixins/with-skeleton-attribute.js +1 -118
  52. package/src/molecules/gv-card-full.js +1 -97
  53. package/src/molecules/gv-card-list.js +1 -84
  54. package/src/molecules/gv-card.js +1 -59
  55. package/src/molecules/gv-category-list.js +1 -49
  56. package/src/molecules/gv-category.js +1 -90
  57. package/src/molecules/gv-code.js +1 -297
  58. package/src/molecules/gv-confirm.js +1 -158
  59. package/src/molecules/gv-cron-editor.js +1 -464
  60. package/src/molecules/gv-dropdown-menu.js +1 -84
  61. package/src/molecules/gv-expandable.js +1 -94
  62. package/src/molecules/gv-expression-language.js +1 -308
  63. package/src/molecules/gv-identity-picture.js +1 -125
  64. package/src/molecules/gv-list.js +1 -135
  65. package/src/molecules/gv-metrics.js +1 -150
  66. package/src/molecules/gv-modal.js +1 -146
  67. package/src/molecules/gv-nav.js +1 -170
  68. package/src/molecules/gv-option.js +1 -169
  69. package/src/molecules/gv-plans.js +1 -306
  70. package/src/molecules/gv-popover.js +1 -231
  71. package/src/molecules/gv-promote.js +1 -91
  72. package/src/molecules/gv-rating-list.js +1 -239
  73. package/src/molecules/gv-rating.js +1 -200
  74. package/src/molecules/gv-row-expandable.js +1 -39
  75. package/src/molecules/gv-row.js +1 -84
  76. package/src/molecules/gv-stats.js +1 -96
  77. package/src/molecules/gv-stepper.js +1 -144
  78. package/src/molecules/gv-table.js +1 -575
  79. package/src/molecules/gv-tree.js +1 -127
  80. package/src/organisms/gv-documentation.js +1 -132
  81. package/src/organisms/gv-header.js +1 -130
  82. package/src/organisms/gv-http-client.js +1 -139
  83. package/src/organisms/gv-menu.js +1 -142
  84. package/src/organisms/gv-newsletter-subscription.js +1 -130
  85. package/src/organisms/gv-pagination.js +1 -170
  86. package/src/organisms/gv-properties.js +1 -699
  87. package/src/organisms/gv-resizable-views.js +1 -178
  88. package/src/organisms/gv-resources.js +1 -428
  89. package/src/organisms/gv-schema-form-array.js +1 -140
  90. package/src/organisms/gv-schema-form-control-object.js +1 -140
  91. package/src/organisms/gv-schema-form-control.js +1 -416
  92. package/src/organisms/gv-schema-form.js +1 -646
  93. package/src/organisms/gv-tabs.js +1 -178
  94. package/src/organisms/gv-user-menu.js +1 -149
  95. package/src/organisms/gv-vertical-menu.js +1 -82
  96. package/src/policy-studio/gv-flow-step.js +1 -304
  97. package/src/policy-studio/gv-flow.js +1 -442
  98. package/src/policy-studio/gv-policy-studio-menu.js +1 -436
  99. package/src/policy-studio/gv-policy-studio.js +1 -1778
  100. package/src/styles/empty.js +1 -19
  101. package/src/styles/input.js +1 -19
  102. package/src/styles/link.js +1 -19
  103. package/src/styles/shapes.js +1 -18
  104. package/src/styles/skeleton.js +1 -19
  105. package/src/styles/zoom.js +1 -19
  106. package/src/theme/gv-theme.js +1 -164
  107. package/wc/gv-autocomplete.js +1 -1
  108. package/wc/gv-button.js +1 -1
  109. package/wc/gv-card-full.js +1 -1
  110. package/wc/gv-card-list.js +1 -1
  111. package/wc/gv-card.js +1 -1
  112. package/wc/gv-category-list.js +1 -1
  113. package/wc/gv-category.js +1 -1
  114. package/wc/gv-chart-bar.js +1 -1
  115. package/wc/gv-chart-gauge.js +1 -1
  116. package/wc/gv-chart-histogram.js +1 -1
  117. package/wc/gv-chart-line.js +1 -1
  118. package/wc/gv-chart-map.js +1 -1
  119. package/wc/gv-chart-pie.js +1 -1
  120. package/wc/gv-checkbox.js +1 -1
  121. package/wc/gv-code.js +1 -1
  122. package/wc/gv-confirm.js +1 -1
  123. package/wc/gv-cron-editor.js +1 -1
  124. package/wc/gv-date-picker-calendar.js +1 -1
  125. package/wc/gv-date-picker-cell.js +1 -1
  126. package/wc/gv-date-picker.js +1 -1
  127. package/wc/gv-documentation.js +1 -1
  128. package/wc/gv-dropdown-menu.js +1 -1
  129. package/wc/gv-expandable.js +1 -1
  130. package/wc/gv-expression-language.js +1 -1
  131. package/wc/gv-file-upload.js +1 -1
  132. package/wc/gv-flow-step.js +1 -1
  133. package/wc/gv-flow.js +1 -1
  134. package/wc/gv-header.js +1 -1
  135. package/wc/gv-http-client.js +1 -1
  136. package/wc/gv-icon.js +1 -1
  137. package/wc/gv-identity-picture.js +1 -1
  138. package/wc/gv-image.js +1 -1
  139. package/wc/gv-input-message.js +1 -1
  140. package/wc/gv-input.js +1 -1
  141. package/wc/gv-link.js +1 -1
  142. package/wc/gv-list.js +1 -1
  143. package/wc/gv-menu.js +1 -1
  144. package/wc/gv-message.js +1 -1
  145. package/wc/gv-metric.js +1 -1
  146. package/wc/gv-metrics.js +1 -1
  147. package/wc/gv-modal.js +1 -1
  148. package/wc/gv-nav.js +1 -1
  149. package/wc/gv-newsletter-subscription.js +1 -1
  150. package/wc/gv-option.js +1 -1
  151. package/wc/gv-pagination.js +1 -1
  152. package/wc/gv-plans.js +1 -1
  153. package/wc/gv-policy-studio-menu.js +1 -1
  154. package/wc/gv-policy-studio.js +1 -1
  155. package/wc/gv-popover.js +1 -1
  156. package/wc/gv-promote.js +1 -1
  157. package/wc/gv-properties.js +1 -1
  158. package/wc/gv-rating-list.js +1 -1
  159. package/wc/gv-rating.js +1 -1
  160. package/wc/gv-relative-time.js +1 -1
  161. package/wc/gv-resizable-views.js +1 -1
  162. package/wc/gv-resources.js +1 -1
  163. package/wc/gv-row-expandable.js +1 -1
  164. package/wc/gv-row.js +1 -1
  165. package/wc/gv-schema-form-array.js +1 -1
  166. package/wc/gv-schema-form-control-object.js +1 -1
  167. package/wc/gv-schema-form-control.js +1 -1
  168. package/wc/gv-schema-form.js +1 -1
  169. package/wc/gv-select-native.js +1 -1
  170. package/wc/gv-select.js +1 -1
  171. package/wc/gv-spinner.js +1 -1
  172. package/wc/gv-state.js +1 -1
  173. package/wc/gv-stats.js +1 -1
  174. package/wc/gv-stepper.js +1 -1
  175. package/wc/gv-switch.js +1 -1
  176. package/wc/gv-table.js +1 -1
  177. package/wc/gv-tabs.js +1 -1
  178. package/wc/gv-tag.js +1 -1
  179. package/wc/gv-text.js +1 -1
  180. package/wc/gv-theme.js +1 -1
  181. package/wc/gv-tree.js +1 -1
  182. package/wc/gv-user-menu.js +1 -1
  183. package/wc/gv-vertical-menu.js +1 -1
@@ -1,231 +1 @@
1
- /*
2
- * Copyright (C) 2015 The Gravitee team (http://gravitee.io)
3
- *
4
- * Licensed under the Apache License, Version 2.0 (the "License");
5
- * you may not use this file except in compliance with the License.
6
- * You may obtain a copy of the License at
7
- *
8
- * http://www.apache.org/licenses/LICENSE-2.0
9
- *
10
- * Unless required by applicable law or agreed to in writing, software
11
- * distributed under the License is distributed on an "AS IS" BASIS,
12
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- * See the License for the specific language governing permissions and
14
- * limitations under the License.
15
- */
16
- import { css, LitElement, html } from 'lit';
17
- import { classMap } from 'lit/directives/class-map';
18
- /**
19
- * Popover component
20
- *
21
- * ## Details
22
- * * has @theme facet
23
- *
24
- * @attr {String} event - the event that triggers the opening.
25
- * @attr {String} delay - the time before closing, useful for a click event
26
- * @attr {String} arrow - if need arrow
27
- * @attr {String} small - Small popover
28
- * @attr {String} medium - Medium popover
29
- * @attr {String} large - Large popover
30
- * @attr {String} width - The width of popover
31
- * @attr {String} position - The position top, right, bottom or left
32
- * @attr {Boolean} auto - to let the component choose the position
33
- *
34
- * @cssprop {Color} [--gv-popover--bgc=var(--gv-theme-neutral-color-lighter, #fafafa)] - Background color
35
- * @cssprop {Color} [--gv-popover--c=var(--gv-theme-font-color-dark, #262626)] - Color
36
- * @cssprop {Color} [--gv-popover--bdc=var(--gv-theme-neutral-color, #f5f5f5)] - Border color
37
- * @cssprop {Length} [--gv-popover--p=0.5rem] - Padding
38
- */
39
-
40
- export class GvPopover extends LitElement {
41
- static get properties() {
42
- return {
43
- event: {
44
- type: String
45
- },
46
- delay: {
47
- type: Number
48
- },
49
- arrow: {
50
- type: Boolean,
51
- reflect: true
52
- },
53
- small: {
54
- type: Boolean,
55
- reflect: true
56
- },
57
- medium: {
58
- type: Boolean,
59
- reflect: true
60
- },
61
- large: {
62
- type: Boolean,
63
- reflect: true
64
- },
65
- width: {
66
- type: String
67
- },
68
- position: {
69
- type: String,
70
- reflect: true
71
- },
72
- auto: {
73
- type: Boolean
74
- },
75
- _opened: {
76
- type: Boolean,
77
- attribute: false
78
- }
79
- };
80
- }
81
-
82
- static get styles() {
83
- return [// language=CSS
84
- css`:host{cursor:pointer;box-sizing:border-box;display:inline-block;position:relative}.popover{--bgc:var(--gv-popover--bgc, var(--gv-theme-neutral-color-lighter, #fafafa));color:var(--gv-popover--c,var(--gv-theme-font-color-dark,#262626));position:absolute;background-color:var(--bgc);padding:var(--gv-popover--p,.5rem);border-radius:4px;z-index:1000;margin:0 auto;text-align:center;width:auto;box-sizing:content-box}:host([position=bottom]) .popover{top:calc(100% + .4rem);transform:translateX(-50%);left:50%;box-shadow:1px 0 0 0 var(--gv-theme-neutral-color,#f5f5f5),0 2px 3px var(--gv-theme-neutral-color-dark,#bfbfbf)}:host([position=bottom][arrow]) .popover{top:calc(100% + .4rem + 10px)}:host([position=bottom][arrow]) .arrow{top:calc(100% - 8px);transform:translateX(-50%);left:50%}:host([position=top]) .popover{bottom:calc(100% + .4rem);transform:translateX(-50%);left:50%;box-shadow:1px 0 0 0 var(--gv-theme-neutral-color,#f5f5f5),0 -2px 3px var(--gv-theme-neutral-color-dark,#bfbfbf)}:host([position=top][arrow]) .popover{bottom:calc(100% + .4rem + 10px)}:host([position=top][arrow]) .arrow{bottom:calc(100% - 8px);transform:translateX(-50%) rotate(180deg);left:50%}:host([position=left]) .popover{top:50%;transform:translateY(-50%);right:calc(100% + .4rem);box-shadow:-1px 0 0 0 var(--gv-theme-neutral-color,#f5f5f5),-1px 2px 3px var(--gv-theme-neutral-color-dark,#bfbfbf)}:host([position=left][arrow]) .popover{right:calc(100% + .4rem + 10px)}:host([position=left][arrow]) .arrow{top:50%;transform:translateY(-50%) rotate(90deg);right:calc(100% - 8px)}:host([position=right]) .popover{top:50%;transform:translateY(-50%);left:calc(100% + .4rem);box-shadow:1px 0 0 1px var(--gv-theme-neutral-color,#f5f5f5),1px 1px 1px var(--gv-theme-neutral-color-dark,#bfbfbf)}:host([position=right][arrow]) .popover{left:calc(100% + .4rem + 10px)}:host([position=right][arrow]) .arrow{left:calc(100% - 8px);top:50%;transform:translateY(-50%) rotate(-90deg)}.inline .popover{white-space:nowrap}:host([small]) .popover{width:200px}:host([medium]) .popover{width:350px}:host([large]) .popover{width:500px}.content{width:100%}.arrow,.popover{opacity:0;visibility:hidden;transition:opacity .3s ease-in-out}.open .arrow,.open .popover{display:block;opacity:1;visibility:visible}.arrow{width:25px;height:25px;z-index:101;position:absolute;overflow:hidden}.arrow:after{content:'';position:absolute;width:12px;height:12px;background:var(--gv-popover--bgc,var(--gv-theme-neutral-color-lighter,#fafafa));transform:rotate(45deg);top:19px;left:6px;border:1px solid var(--gv-popover--bdc,var(--gv-theme-neutral-color,#f5f5f5))}`];
85
- }
86
-
87
- constructor() {
88
- super();
89
- this.event = 'mouseover';
90
- this._closeHandler = this._close.bind(this);
91
- this.delay = 0;
92
- this.arrow = false;
93
- this.position = 'bottom';
94
- this.auto = false;
95
- }
96
-
97
- _open(e) {
98
- if (this.event === 'click') {
99
- window.removeEventListener(this.event, this._closeHandler);
100
- }
101
-
102
- this._opened = true;
103
-
104
- if (this.event === 'click') {
105
- setTimeout(() => window.addEventListener(this.event, this._closeHandler));
106
- }
107
-
108
- if (this.delay > 0) {
109
- setTimeout(() => this._close({}), this.delay);
110
- }
111
- }
112
-
113
- close() {
114
- this._close({});
115
- }
116
-
117
- _close(e) {
118
- if (this._opened && (e.target !== this.firstElementChild || this.event !== 'click')) {
119
- const openElement = this.shadowRoot.querySelector('.open');
120
- openElement.classList.add('close');
121
- setTimeout(() => {
122
- openElement.classList.remove('close');
123
- this._opened = false;
124
- }, 200);
125
- }
126
- }
127
-
128
- render() {
129
- const inline = this.width == null && !this.small && !this.medium && !this.large;
130
- const classes = {
131
- open: this._opened,
132
- content: true,
133
- inline
134
- };
135
- return html` <div class="${classMap(classes)}"> <slot></slot> ${this.arrow ? html`<div class="arrow"></div>` : ''} <div class="popover">${this.renderContent()}</div> </div>`;
136
- }
137
-
138
- renderContent() {
139
- return html`<slot name="popover"></slot>`;
140
- }
141
-
142
- firstUpdated(_changedProperties) {
143
- setTimeout(() => {
144
- this.addEventListener(this.event, this._open.bind(this));
145
-
146
- if (this.event.startsWith('mouse') && this.delay === 0) {
147
- this.addEventListener('mouseleave', this._close.bind(this));
148
- }
149
- });
150
- }
151
-
152
- _getContentSize() {
153
- const popover = this.shadowRoot.querySelector('.popover');
154
- return {
155
- width: popover.offsetWidth,
156
- height: popover.offsetHeight
157
- };
158
- }
159
-
160
- _getPositionPadding() {
161
- return 10;
162
- }
163
-
164
- _getCenterPosition() {
165
- return {
166
- x: this.target.x + this.target.width / 2 + window.scrollX,
167
- y: this.target.y + this.target.height / 2 + window.scrollY
168
- };
169
- }
170
-
171
- _updatePosition() {
172
- if (this.position != null && this.auto) {
173
- const popover = this.shadowRoot.querySelector('.popover');
174
-
175
- if (popover) {
176
- this.target = this.firstElementChild.getBoundingClientRect();
177
-
178
- if (this.position === 'top' && !this._hasTopSpace() || this.position === 'bottom' && !this._hasBottomSpace() || this.position === 'left' && !this._hasLeftSpace() || this.position === 'right' && !this._hasRightSpace()) {
179
- const index = [this._hasTopSpace(), this._hasRightSpace(), this._hasBottomSpace(), this._hasLeftSpace()].indexOf(true);
180
-
181
- if (index > -1) {
182
- this.position = ['top', 'right', 'bottom', 'left'][index];
183
- }
184
- }
185
- }
186
- }
187
- }
188
-
189
- _getMaxX() {
190
- return window.innerWidth - this._getPositionPadding();
191
- }
192
-
193
- _getMaxY() {
194
- return window.innerHeight - this._getPositionPadding();
195
- }
196
-
197
- _hasBottomSpace() {
198
- const y = this.target.y + this.target.height + this._getContentSize().height + this._getPositionPadding();
199
-
200
- return y <= this._getMaxY();
201
- }
202
-
203
- _hasRightSpace() {
204
- const y = this.target.x + this.target.width + this._getContentSize().width + this._getPositionPadding();
205
-
206
- return y <= this._getMaxX();
207
- }
208
-
209
- _hasTopSpace() {
210
- const y = this.target.y - this._getContentSize().height - this._getPositionPadding();
211
-
212
- return y >= this._getPositionPadding();
213
- }
214
-
215
- _hasLeftSpace() {
216
- const y = this.target.x - this._getContentSize().width - this._getPositionPadding();
217
-
218
- return y >= this._getPositionPadding();
219
- }
220
-
221
- updated(props) {
222
- if (props.has('width')) {
223
- this.shadowRoot.querySelector('.popover').style.setProperty('width', this.width);
224
- }
225
-
226
- this._updatePosition();
227
- }
228
-
229
- }
230
- window.customElements.define('gv-popover', GvPopover);
231
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4vbm9kZV9tb2R1bGVzL0BncmF2aXRlZS91aS1jb21wb25lbnRzL21vbGVjdWxlcy9ndi1wb3BvdmVyLmpzIl0sIm5hbWVzIjpbImNzcyIsIkxpdEVsZW1lbnQiLCJodG1sIiwiY2xhc3NNYXAiLCJHdlBvcG92ZXIiLCJwcm9wZXJ0aWVzIiwiZXZlbnQiLCJ0eXBlIiwiU3RyaW5nIiwiZGVsYXkiLCJOdW1iZXIiLCJhcnJvdyIsIkJvb2xlYW4iLCJyZWZsZWN0Iiwic21hbGwiLCJtZWRpdW0iLCJsYXJnZSIsIndpZHRoIiwicG9zaXRpb24iLCJhdXRvIiwiX29wZW5lZCIsImF0dHJpYnV0ZSIsInN0eWxlcyIsImNvbnN0cnVjdG9yIiwiX2Nsb3NlSGFuZGxlciIsIl9jbG9zZSIsImJpbmQiLCJfb3BlbiIsImUiLCJ3aW5kb3ciLCJyZW1vdmVFdmVudExpc3RlbmVyIiwic2V0VGltZW91dCIsImFkZEV2ZW50TGlzdGVuZXIiLCJjbG9zZSIsInRhcmdldCIsImZpcnN0RWxlbWVudENoaWxkIiwib3BlbkVsZW1lbnQiLCJzaGFkb3dSb290IiwicXVlcnlTZWxlY3RvciIsImNsYXNzTGlzdCIsImFkZCIsInJlbW92ZSIsInJlbmRlciIsImlubGluZSIsImNsYXNzZXMiLCJvcGVuIiwiY29udGVudCIsInJlbmRlckNvbnRlbnQiLCJmaXJzdFVwZGF0ZWQiLCJfY2hhbmdlZFByb3BlcnRpZXMiLCJzdGFydHNXaXRoIiwiX2dldENvbnRlbnRTaXplIiwicG9wb3ZlciIsIm9mZnNldFdpZHRoIiwiaGVpZ2h0Iiwib2Zmc2V0SGVpZ2h0IiwiX2dldFBvc2l0aW9uUGFkZGluZyIsIl9nZXRDZW50ZXJQb3NpdGlvbiIsIngiLCJzY3JvbGxYIiwieSIsInNjcm9sbFkiLCJfdXBkYXRlUG9zaXRpb24iLCJnZXRCb3VuZGluZ0NsaWVudFJlY3QiLCJfaGFzVG9wU3BhY2UiLCJfaGFzQm90dG9tU3BhY2UiLCJfaGFzTGVmdFNwYWNlIiwiX2hhc1JpZ2h0U3BhY2UiLCJpbmRleCIsImluZGV4T2YiLCJfZ2V0TWF4WCIsImlubmVyV2lkdGgiLCJfZ2V0TWF4WSIsImlubmVySGVpZ2h0IiwidXBkYXRlZCIsInByb3BzIiwiaGFzIiwic3R5bGUiLCJzZXRQcm9wZXJ0eSIsImN1c3RvbUVsZW1lbnRzIiwiZGVmaW5lIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTQSxHQUFULEVBQWNDLFVBQWQsRUFBMEJDLElBQTFCLFFBQXNDLEtBQXRDO0FBQ0EsU0FBU0MsUUFBVCxRQUF5QiwwQkFBekI7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBQ0EsT0FBTyxNQUFNQyxTQUFOLFNBQXdCSCxVQUF4QixDQUFtQztBQUNuQixhQUFWSSxVQUFVLEdBQUc7QUFDdEIsV0FBTztBQUNMQyxNQUFBQSxLQUFLLEVBQUU7QUFBRUMsUUFBQUEsSUFBSSxFQUFFQztBQUFSLE9BREY7QUFFTEMsTUFBQUEsS0FBSyxFQUFFO0FBQUVGLFFBQUFBLElBQUksRUFBRUc7QUFBUixPQUZGO0FBR0xDLE1BQUFBLEtBQUssRUFBRTtBQUFFSixRQUFBQSxJQUFJLEVBQUVLLE9BQVI7QUFBaUJDLFFBQUFBLE9BQU8sRUFBRTtBQUExQixPQUhGO0FBSUxDLE1BQUFBLEtBQUssRUFBRTtBQUFFUCxRQUFBQSxJQUFJLEVBQUVLLE9BQVI7QUFBaUJDLFFBQUFBLE9BQU8sRUFBRTtBQUExQixPQUpGO0FBS0xFLE1BQUFBLE1BQU0sRUFBRTtBQUFFUixRQUFBQSxJQUFJLEVBQUVLLE9BQVI7QUFBaUJDLFFBQUFBLE9BQU8sRUFBRTtBQUExQixPQUxIO0FBTUxHLE1BQUFBLEtBQUssRUFBRTtBQUFFVCxRQUFBQSxJQUFJLEVBQUVLLE9BQVI7QUFBaUJD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LE9BQVYsQ0FBSixFQUF3QjtBQUN0QixXQUFLdkMsVUFBTCxDQUFnQkMsYUFBaEIsQ0FBOEIsVUFBOUIsRUFBMEN1QyxLQUExQyxDQUFnREMsV0FBaEQsQ0FBNEQsT0FBNUQsRUFBcUUsS0FBSzdELEtBQTFFO0FBQ0Q7O0FBQ0QsU0FBSzZDLGVBQUw7QUFDRDs7QUFwVHVDO0FBdVQxQ2pDLE1BQU0sQ0FBQ2tELGNBQVAsQ0FBc0JDLE1BQXRCLENBQTZCLFlBQTdCLEVBQTJDNUUsU0FBM0MiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChDKSAyMDE1IFRoZSBHcmF2aXRlZSB0ZWFtIChodHRwOi8vZ3Jhdml0ZWUuaW8pXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuaW1wb3J0IHsgY3NzLCBMaXRFbGVtZW50LCBodG1sIH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGNsYXNzTWFwIH0gZnJvbSAnbGl0L2RpcmVjdGl2ZXMvY2xhc3MtbWFwJztcblxuLyoqXG4gKiBQb3BvdmVyIGNvbXBvbmVudFxuICpcbiAqICMjIERldGFpbHNcbiAqICogaGFzIEB0aGVtZSBmYWNldFxuICpcbiAqIEBhdHRyIHtTdHJpbmd9IGV2ZW50IC0gdGhlIGV2ZW50IHRoYXQgdHJpZ2dlcnMgdGhlIG9wZW5pbmcuXG4gKiBAYXR0ciB7U3RyaW5nfSBkZWxheSAtIHRoZSB0aW1lIGJlZm9yZSBjbG9zaW5nLCB1c2VmdWwgZm9yIGEgY2xpY2sgZXZlbnRcbiAqIEBhdHRyIHtTdHJpbmd9IGFycm93IC0gaWYgbmVlZCBhcnJvd1xuICogQGF0dHIge1N0cmluZ30gc21hbGwgLSBTbWFsbCBwb3BvdmVyXG4gKiBAYXR0ciB7U3RyaW5nfSBtZWRpdW0gLSBNZWRpdW0gcG9wb3ZlclxuICogQGF0dHIge1N0cmluZ30gbGFyZ2UgLSBMYXJnZSBwb3BvdmVyXG4gKiBAYXR0ciB7U3RyaW5nfSB3aWR0aCAtIFRoZSB3aWR0aCBvZiBwb3BvdmVyXG4gKiBAYXR0ciB7U3RyaW5nfSBwb3NpdGlvbiAtIFRoZSBwb3NpdGlvbiB0b3AsIHJpZ2h0LCBib3R0b20gb3IgbGVmdFxuICogQGF0dHIge0Jvb2xlYW59IGF1dG8gLSB0byBsZXQgdGhlIGNvbXBvbmVudCBjaG9vc2UgdGhlIHBvc2l0aW9uXG4gKlxuICogQGNzc3Byb3Age0NvbG9yfSBbLS1ndi1wb3BvdmVyLS1iZ2M9dmFyKC0tZ3YtdGhlbWUtbmV1dHJhbC1jb2xvci1saWdodGVyLCAjZmFmYWZhKV0gLSBCYWNrZ3JvdW5kIGNvbG9yXG4gKiBAY3NzcHJvcCB7Q29sb3J9IFstLWd2LXBvcG92ZXItLWM9dmFyKC0tZ3YtdGhlbWUtZm9udC1jb2xvci1kYXJrLCAjMjYyNjI2KV0gLSBDb2xvclxuICogQGNzc3Byb3Age0NvbG9yfSBbLS1ndi1wb3BvdmVyLS1iZGM9dmFyKC0tZ3YtdGhlbWUtbmV1dHJhbC1jb2xvciwgI2Y1ZjVmNSldIC0gQm9yZGVyIGNvbG9yXG4gKiBAY3NzcHJvcCB7TGVuZ3RofSBbLS1ndi1wb3BvdmVyLS1wPTAuNXJlbV0gLSBQYWRkaW5nXG4gKi9cbmV4cG9ydCBjbGFzcyBHdlBvcG92ZXIgZXh0ZW5kcyBMaXRFbGVtZW50IHtcbiAgc3RhdGljIGdldCBwcm9wZXJ0aWVzKCkge1xuICAgIHJldHVybiB7XG4gICAgICBldmVudDogeyB0eXBlOiBTdHJpbmcgfSxcbiAgICAgIGRlbGF5OiB7IHR5cGU6IE51bWJlciB9LFxuICAgICAgYXJyb3c6IHsgdHlwZTogQm9vbGVhbiwgcmVmbGVjdDogdHJ1ZSB9LFxuICAgICAgc21hbGw6IHsgdHlwZTogQm9vbGVhbiwgcmVmbGVjdDogdHJ1ZSB9LFxuICAgICAgbWVkaXVtOiB7IHR5cGU6IEJvb2xlYW4sIHJlZmxlY3Q6IHRydWUgfSxcbiAgICAgIGxhcmdlOiB7IHR5cGU6IEJvb2xlYW4sIHJlZmxlY3Q6IHRydWUgfSxcbiAgICAgIHdpZHRoOiB7IHR5cGU6IFN0cmluZyB9LFxuICAgICAgcG9zaXRpb246IHsgdHlwZTogU3RyaW5nLCByZWZsZWN0OiB0cnVlIH0sXG4gICAgICBhdXRvOiB7IHR5cGU6IEJvb2xlYW4gfSxcbiAgICAgIF9vcGVuZWQ6IHsgdHlwZTogQm9vbGVhbiwgYXR0cmlidXRlOiBmYWxzZSB9LFxuICAgIH07XG4gIH1cblxuICBzdGF0aWMgZ2V0IHN0eWxlcygpIHtcbiAgICByZXR1cm4gW1xuICAgICAgLy8gbGFuZ3VhZ2U9Q1NTXG4gICAgICBjc3NgXG4gICAgICAgIDpob3N0IHtcbiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB9XG5cbiAgICAgICAgLnBvcG92ZXIge1xuICAgICAgICAgIC0tYmdjOiB2YXIoLS1ndi1wb3BvdmVyLS1iZ2MsIHZhcigtLWd2LXRoZW1lLW5ldXRyYWwtY29sb3ItbGlnaHRlciwgI2ZhZmFmYSkpO1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1ndi1wb3BvdmVyLS1jLCB2YXIoLS1ndi10aGVtZS1mb250LWNvbG9yLWRhcmssICMyNjI2MjYpKTtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmdjKTtcbiAgICAgICAgICBwYWRkaW5nOiB2YXIoLS1ndi1wb3BvdmVyLS1wLCAwLjVyZW0pO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgICB6LWluZGV4OiAxMDAwO1xuICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICAgICAgfVxuXG4gICAgICAgIDpob3N0KFtwb3NpdGlvbj0nYm90dG9tJ10pIC5wb3BvdmVyIHtcbiAgICAgICAgICB0b3A6IGNhbGMoMTAwJSArIDAuNHJlbSk7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICBib3gtc2hhZG93OiAxcHggMCAwIDAgdmFyKC0tZ3YtdGhlbWUtbmV1dHJhbC1jb2xvciwgI2Y1ZjVmNSksIDAgMnB4IDNweCB2YXIoLS1ndi10aGVtZS1uZXV0cmFsLWNvbG9yLWRhcmssICNiZmJmYmYpO1xuICAgICAgICB9XG5cbiAgICAgICAgOmhvc3QoW3Bvc2l0aW9uPSdib3R0b20nXVthcnJvd10pIC5wb3BvdmVyIHtcbiAgICAgICAgICB0b3A6IGNhbGMoMTAwJSArIDAuNHJlbSArIDEwcHgpO1xuICAgICAgICB9XG5cbiAgICAgICAgOmhvc3QoW3Bvc2l0aW9uPSdib3R0b20nXVthcnJvd10pIC5hcnJvdyB7XG4gICAgICAgICAgdG9wOiBjYWxjKDEwMCUgLSA4cHgpO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIH1cblxuICAgICAgICA6aG9zdChbcG9zaXRpb249J3RvcCddKSAucG9wb3ZlciB7XG4gICAgICAgICAgYm90dG9tOiBjYWxjKDEwMCUgKyAwLjRyZW0pO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgYm94LXNoYWRvdzogMXB4IDAgMCAwIHZhcigtLWd2LXRoZW1lLW5ldXRyYWwtY29sb3IsICNmNWY1ZjUpLCAwIC0ycHggM3B4IHZhcigtLWd2LXRoZW1lLW5ldXRyYWwtY29sb3ItZGFyaywgI2JmYmZiZik7XG4gICAgICAgIH1cblxuICAgICAgICA6aG9zdChbcG9zaXRpb249J3RvcCddW2Fycm93XSkgLnBvcG92ZXIge1xuICAgICAgICAgIGJvdHRvbTogY2FsYygxMDAlICsgMC40cmVtICsgMTBweCk7XG4gICAgICAgIH1cblxuICAgICAgICA6aG9zdChbcG9zaXRpb249J3RvcCddW2Fycm93XSkgLmFycm93IHtcbiAgICAgICAgICBib3R0b206IGNhbGMoMTAwJSAtIDhweCk7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIDpob3N0KFtwb3NpdGlvbj0nbGVmdCddKSAucG9wb3ZlciB7XG4gICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgIHJpZ2h0OiBjYWxjKDEwMCUgKyAwLjRyZW0pO1xuICAgICAgICAgIGJveC1zaGFkb3c6IC0xcHggMCAwIDAgdmFyKC0tZ3YtdGhlbWUtbmV1dHJhbC1jb2xvciwgI2Y1ZjVmNSksIC0xcHggMnB4IDNweCB2YXIoLS1ndi10aGVtZS1uZXV0cmFsLWNvbG9yLWRhcmssICNiZmJmYmYpO1xuICAgICAgICB9XG5cbiAgICAgICAgOmhvc3QoW3Bvc2l0aW9uPSdsZWZ0J11bYXJyb3ddKSAucG9wb3ZlciB7XG4gICAgICAgICAgcmlnaHQ6IGNhbGMoMTAwJSArIDAuNHJlbSArIDEwcHgpO1xuICAgICAgICB9XG5cbiAgICAgICAgOmhvc3QoW3Bvc2l0aW9uPSdsZWZ0J11bYXJyb3ddKSAuYXJyb3cge1xuICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoOTBkZWcpO1xuICAgICAgICAgIHJpZ2h0OiBjYWxjKDEwMCUgLSA4cHgpO1xuICAgICAgICB9XG5cbiAgICAgICAgOmhvc3QoW3Bvc2l0aW9uPSdyaWdodCddKSAucG9wb3ZlciB7XG4gICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgIGxlZnQ6IGNhbGMoMTAwJSArIDAuNHJlbSk7XG4gICAgICAgICAgYm94LXNoYWRvdzogMXB4IDAgMCAxcHggdmFyKC0tZ3YtdGhlbWUtbmV1dHJhbC1jb2xvciwgI2Y1ZjVmNSksIDFweCAxcHggMXB4IHZhcigtLWd2LXRoZW1lLW5ldXRyYWwtY29sb3ItZGFyaywgI2JmYmZiZik7XG4gICAgICAgIH1cblxuICAgICAgICA6aG9zdChbcG9zaXRpb249J3JpZ2h0J11bYXJyb3ddKSAucG9wb3ZlciB7XG4gICAgICAgICAgbGVmdDogY2FsYygxMDAlICsgMC40cmVtICsgMTBweCk7XG4gICAgICAgIH1cblxuICAgICAgICA6aG9zdChbcG9zaXRpb249J3JpZ2h0J11bYXJyb3ddKSAuYXJyb3cge1xuICAgICAgICAgIGxlZnQ6IGNhbGMoMTAwJSAtIDhweCk7XG4gICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICB9XG5cbiAgICAgICAgLmlubGluZSAucG9wb3ZlciB7XG4gICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgfVxuXG4gICAgICAgIDpob3N0KFtzbWFsbF0pIC5wb3BvdmVyIHtcbiAgICAgICAgICB3aWR0aDogMjAwcHg7XG4gICAgICAgIH1cblxuICAgICAgICA6aG9zdChbbWVkaXVtXSkgLnBvcG92ZXIge1xuICAgICAgICAgIHdpZHRoOiAzNTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIDpob3N0KFtsYXJnZV0pIC5wb3BvdmVyIHtcbiAgICAgICAgICB3aWR0aDogNTAwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAuY29udGVudCB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAucG9wb3ZlcixcbiAgICAgICAgLmFycm93IHtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICAgIH1cblxuICAgICAgICAub3BlbiAucG9wb3ZlcixcbiAgICAgICAgLm9wZW4gLmFycm93IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgIH1cblxuICAgICAgICAuY2xvc2UgLnBvcG92ZXIsXG4gICAgICAgIC5jbG9zZSAuYXJyb3cge1xuICAgICAgICB9XG5cbiAgICAgICAgLmFycm93IHtcbiAgICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgICBoZWlnaHQ6IDI1cHg7XG4gICAgICAgICAgei1pbmRleDogMTAxO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB9XG5cbiAgICAgICAgLmFycm93OmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgd2lkdGg6IDEycHg7XG4gICAgICAgICAgaGVpZ2h0OiAxMnB4O1xuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWd2LXBvcG92ZXItLWJnYywgdmFyKC0tZ3YtdGhlbWUtbmV1dHJhbC1jb2xvci1saWdodGVyLCAjZmFmYWZhKSk7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgICAgIHRvcDogMTlweDtcbiAgICAgICAgICBsZWZ0OiA2cHg7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tZ3YtcG9wb3Zlci0tYmRjLCB2YXIoLS1ndi10aGVtZS1uZXV0cmFsLWNvbG9yLCAjZjVmNWY1KSk7XG4gICAgICAgIH1cbiAgICAgIGAsXG4gICAgXTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5ldmVudCA9ICdtb3VzZW92ZXInO1xuICAgIHRoaXMuX2Nsb3NlSGFuZGxlciA9IHRoaXMuX2Nsb3NlLmJpbmQodGhpcyk7XG4gICAgdGhpcy5kZWxheSA9IDA7XG4gICAgdGhpcy5hcnJvdyA9IGZhbHNlO1xuICAgIHRoaXMucG9zaXRpb24gPSAnYm90dG9tJztcbiAgICB0aGlzLmF1dG8gPSBmYWxzZTtcbiAgfVxuXG4gIF9vcGVuKGUpIHtcbiAgICBpZiAodGhpcy5ldmVudCA9PT0gJ2NsaWNrJykge1xuICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIodGhpcy5ldmVudCwgdGhpcy5fY2xvc2VIYW5kbGVyKTtcbiAgICB9XG4gICAgdGhpcy5fb3BlbmVkID0gdHJ1ZTtcbiAgICBpZiAodGhpcy5ldmVudCA9PT0gJ2NsaWNrJykge1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcih0aGlzLmV2ZW50LCB0aGlzLl9jbG9zZUhhbmRsZXIpKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5kZWxheSA+IDApIHtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5fY2xvc2Uoe30pLCB0aGlzLmRlbGF5KTtcbiAgICB9XG4gIH1cblxuICBjbG9zZSgpIHtcbiAgICB0aGlzLl9jbG9zZSh7fSk7XG4gIH1cblxuICBfY2xvc2UoZSkge1xuICAgIGlmICh0aGlzLl9vcGVuZWQgJiYgKGUudGFyZ2V0ICE9PSB0aGlzLmZpcnN0RWxlbWVudENoaWxkIHx8IHRoaXMuZXZlbnQgIT09ICdjbGljaycpKSB7XG4gICAgICBjb25zdCBvcGVuRWxlbWVudCA9IHRoaXMuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCcub3BlbicpO1xuICAgICAgb3BlbkVsZW1lbnQuY2xhc3NMaXN0LmFkZCgnY2xvc2UnKTtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICBvcGVuRWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKCdjbG9zZScpO1xuICAgICAgICB0aGlzLl9vcGVuZWQgPSBmYWxzZTtcbiAgICAgIH0sIDIwMCk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyKCkge1xuICAgIGNvbnN0IGlubGluZSA9IHRoaXMud2lkdGggPT0gbnVsbCAmJiAhdGhpcy5zbWFsbCAmJiAhdGhpcy5tZWRpdW0gJiYgIXRoaXMubGFyZ2U7XG4gICAgY29uc3QgY2xhc3NlcyA9IHsgb3BlbjogdGhpcy5fb3BlbmVkLCBjb250ZW50OiB0cnVlLCBpbmxpbmUgfTtcbiAgICByZXR1cm4gaHRtbGAgPGRpdiBjbGFzcz1cIiR7Y2xhc3NNYXAoY2xhc3Nlcyl9XCI+XG4gICAgICA8c2xvdD48L3Nsb3Q+XG4gICAgICAke3RoaXMuYXJyb3cgPyBodG1sYDxkaXYgY2xhc3M9XCJhcnJvd1wiPjwvZGl2PmAgOiAnJ31cbiAgICAgIDxkaXYgY2xhc3M9XCJwb3BvdmVyXCI+JHt0aGlzLnJlbmRlckNvbnRlbnQoKX08L2Rpdj5cbiAgICA8L2Rpdj5gO1xuICB9XG5cbiAgcmVuZGVyQ29udGVudCgpIHtcbiAgICByZXR1cm4gaHRtbGA8c2xvdCBuYW1lPVwicG9wb3ZlclwiPjwvc2xvdD5gO1xuICB9XG5cbiAgZmlyc3RVcGRhdGVkKF9jaGFuZ2VkUHJvcGVydGllcykge1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5hZGRFdmVudExpc3RlbmVyKHRoaXMuZXZlbnQsIHRoaXMuX29wZW4uYmluZCh0aGlzKSk7XG4gICAgICBpZiAodGhpcy5ldmVudC5zdGFydHNXaXRoKCdtb3VzZScpICYmIHRoaXMuZGVsYXkgPT09IDApIHtcbiAgICAgICAgdGhpcy5hZGRFdmVudExpc3RlbmVyKCdtb3VzZWxlYXZlJywgdGhpcy5fY2xvc2UuYmluZCh0aGlzKSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBfZ2V0Q29udGVudFNpemUoKSB7XG4gICAgY29uc3QgcG9wb3ZlciA9IHRoaXMuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCcucG9wb3ZlcicpO1xuICAgIHJldHVybiB7XG4gICAgICB3aWR0aDogcG9wb3Zlci5vZmZzZXRXaWR0aCxcbiAgICAgIGhlaWdodDogcG9wb3Zlci5vZmZzZXRIZWlnaHQsXG4gICAgfTtcbiAgfVxuXG4gIF9nZXRQb3NpdGlvblBhZGRpbmcoKSB7XG4gICAgcmV0dXJuIDEwO1xuICB9XG5cbiAgX2dldENlbnRlclBvc2l0aW9uKCkge1xuICAgIHJldHVybiB7XG4gICAgICB4OiB0aGlzLnRhcmdldC54ICsgdGhpcy50YXJnZXQud2lkdGggLyAyICsgd2luZG93LnNjcm9sbFgsXG4gICAgICB5OiB0aGlzLnRhcmdldC55ICsgdGhpcy50YXJnZXQuaGVpZ2h0IC8gMiArIHdpbmRvdy5zY3JvbGxZLFxuICAgIH07XG4gIH1cblxuICBfdXBkYXRlUG9zaXRpb24oKSB7XG4gICAgaWYgKHRoaXMucG9zaXRpb24gIT0gbnVsbCAmJiB0aGlzLmF1dG8pIHtcbiAgICAgIGNvbnN0IHBvcG92ZXIgPSB0aGlzLnNoYWRvd1Jvb3QucXVlcnlTZWxlY3RvcignLnBvcG92ZXInKTtcbiAgICAgIGlmIChwb3BvdmVyKSB7XG4gICAgICAgIHRoaXMudGFyZ2V0ID0gdGhpcy5maXJzdEVsZW1lbnRDaGlsZC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgICAgaWYgKFxuICAgICAgICAgICh0aGlzLnBvc2l0aW9uID09PSAndG9wJyAmJiAhdGhpcy5faGFzVG9wU3BhY2UoKSkgfHxcbiAgICAgICAgICAodGhpcy5wb3NpdGlvbiA9PT0gJ2JvdHRvbScgJiYgIXRoaXMuX2hhc0JvdHRvbVNwYWNlKCkpIHx8XG4gICAgICAgICAgKHRoaXMucG9zaXRpb24gPT09ICdsZWZ0JyAmJiAhdGhpcy5faGFzTGVmdFNwYWNlKCkpIHx8XG4gICAgICAgICAgKHRoaXMucG9zaXRpb24gPT09ICdyaWdodCcgJiYgIXRoaXMuX2hhc1JpZ2h0U3BhY2UoKSlcbiAgICAgICAgKSB7XG4gICAgICAgICAgY29uc3QgaW5kZXggPSBbdGhpcy5faGFzVG9wU3BhY2UoKSwgdGhpcy5faGFzUmlnaHRTcGFjZSgpLCB0aGlzLl9oYXNCb3R0b21TcGFjZSgpLCB0aGlzLl9oYXNMZWZ0U3BhY2UoKV0uaW5kZXhPZih0cnVlKTtcbiAgICAgICAgICBpZiAoaW5kZXggPiAtMSkge1xuICAgICAgICAgICAgdGhpcy5wb3NpdGlvbiA9IFsndG9wJywgJ3JpZ2h0JywgJ2JvdHRvbScsICdsZWZ0J11baW5kZXhdO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIF9nZXRNYXhYKCkge1xuICAgIHJldHVybiB3aW5kb3cuaW5uZXJXaWR0aCAtIHRoaXMuX2dldFBvc2l0aW9uUGFkZGluZygpO1xuICB9XG5cbiAgX2dldE1heFkoKSB7XG4gICAgcmV0dXJuIHdpbmRvdy5pbm5lckhlaWdodCAtIHRoaXMuX2dldFBvc2l0aW9uUGFkZGluZygpO1xuICB9XG5cbiAgX2hhc0JvdHRvbVNwYWNlKCkge1xuICAgIGNvbnN0IHkgPSB0aGlzLnRhcmdldC55ICsgdGhpcy50YXJnZXQuaGVpZ2h0ICsgdGhpcy5fZ2V0Q29udGVudFNpemUoKS5oZWlnaHQgKyB0aGlzLl9nZXRQb3NpdGlvblBhZGRpbmcoKTtcblxuICAgIHJldHVybiB5IDw9IHRoaXMuX2dldE1heFkoKTtcbiAgfVxuXG4gIF9oYXNSaWdodFNwYWNlKCkge1xuICAgIGNvbnN0IHkgPSB0aGlzLnRhcmdldC54ICsgdGhpcy50YXJnZXQud2lkdGggKyB0aGlzLl9nZXRDb250ZW50U2l6ZSgpLndpZHRoICsgdGhpcy5fZ2V0UG9zaXRpb25QYWRkaW5nKCk7XG5cbiAgICByZXR1cm4geSA8PSB0aGlzLl9nZXRNYXhYKCk7XG4gIH1cblxuICBfaGFzVG9wU3BhY2UoKSB7XG4gICAgY29uc3QgeSA9IHRoaXMudGFyZ2V0LnkgLSB0aGlzLl9nZXRDb250ZW50U2l6ZSgpLmhlaWdodCAtIHRoaXMuX2dldFBvc2l0aW9uUGFkZGluZygpO1xuXG4gICAgcmV0dXJuIHkgPj0gdGhpcy5fZ2V0UG9zaXRpb25QYWRkaW5nKCk7XG4gIH1cblxuICBfaGFzTGVmdFNwYWNlKCkge1xuICAgIGNvbnN0IHkgPSB0aGlzLnRhcmdldC54IC0gdGhpcy5fZ2V0Q29udGVudFNpemUoKS53aWR0aCAtIHRoaXMuX2dldFBvc2l0aW9uUGFkZGluZygpO1xuXG4gICAgcmV0dXJuIHkgPj0gdGhpcy5fZ2V0UG9zaXRpb25QYWRkaW5nKCk7XG4gIH1cblxuICB1cGRhdGVkKHByb3BzKSB7XG4gICAgaWYgKHByb3BzLmhhcygnd2lkdGgnKSkge1xuICAgICAgdGhpcy5zaGFkb3dSb290LnF1ZXJ5U2VsZWN0b3IoJy5wb3BvdmVyJykuc3R5bGUuc2V0UHJvcGVydHkoJ3dpZHRoJywgdGhpcy53aWR0aCk7XG4gICAgfVxuICAgIHRoaXMuX3VwZGF0ZVBvc2l0aW9uKCk7XG4gIH1cbn1cblxud2luZG93LmN1c3RvbUVsZW1lbnRzLmRlZmluZSgnZ3YtcG9wb3ZlcicsIEd2UG9wb3Zlcik7XG4iXX0=
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.GvPopover=void 0;const t=require("lit"),e=require("lit/directives/class-map");class o extends t.LitElement{static get properties(){return{event:{type:String},delay:{type:Number},arrow:{type:Boolean,reflect:!0},small:{type:Boolean,reflect:!0},medium:{type:Boolean,reflect:!0},large:{type:Boolean,reflect:!0},width:{type:String},position:{type:String,reflect:!0},auto:{type:Boolean},_opened:{type:Boolean,attribute:!1}}}static get styles(){return[t.css`:host{cursor:pointer;box-sizing:border-box;display:inline-block;position:relative}.popover{--bgc:var(--gv-popover--bgc, var(--gv-theme-neutral-color-lighter, #fafafa));color:var(--gv-popover--c,var(--gv-theme-font-color-dark,#262626));position:absolute;background-color:var(--bgc);padding:var(--gv-popover--p,.5rem);border-radius:4px;z-index:1000;margin:0 auto;text-align:center;width:auto;box-sizing:content-box}:host([position=bottom]) .popover{top:calc(100% + .4rem);transform:translateX(-50%);left:50%;box-shadow:1px 0 0 0 var(--gv-theme-neutral-color,#f5f5f5),0 2px 3px var(--gv-theme-neutral-color-dark,#bfbfbf)}:host([position=bottom][arrow]) .popover{top:calc(100% + .4rem + 10px)}:host([position=bottom][arrow]) .arrow{top:calc(100% - 8px);transform:translateX(-50%);left:50%}:host([position=top]) .popover{bottom:calc(100% + .4rem);transform:translateX(-50%);left:50%;box-shadow:1px 0 0 0 var(--gv-theme-neutral-color,#f5f5f5),0 -2px 3px var(--gv-theme-neutral-color-dark,#bfbfbf)}:host([position=top][arrow]) .popover{bottom:calc(100% + .4rem + 10px)}:host([position=top][arrow]) .arrow{bottom:calc(100% - 8px);transform:translateX(-50%) rotate(180deg);left:50%}:host([position=left]) .popover{top:50%;transform:translateY(-50%);right:calc(100% + .4rem);box-shadow:-1px 0 0 0 var(--gv-theme-neutral-color,#f5f5f5),-1px 2px 3px var(--gv-theme-neutral-color-dark,#bfbfbf)}:host([position=left][arrow]) .popover{right:calc(100% + .4rem + 10px)}:host([position=left][arrow]) .arrow{top:50%;transform:translateY(-50%) rotate(90deg);right:calc(100% - 8px)}:host([position=right]) .popover{top:50%;transform:translateY(-50%);left:calc(100% + .4rem);box-shadow:1px 0 0 1px var(--gv-theme-neutral-color,#f5f5f5),1px 1px 1px var(--gv-theme-neutral-color-dark,#bfbfbf)}:host([position=right][arrow]) .popover{left:calc(100% + .4rem + 10px)}:host([position=right][arrow]) .arrow{left:calc(100% - 8px);top:50%;transform:translateY(-50%) rotate(-90deg)}.inline .popover{white-space:nowrap}:host([small]) .popover{width:200px}:host([medium]) .popover{width:350px}:host([large]) .popover{width:500px}.content{width:100%}.arrow,.popover{opacity:0;visibility:hidden;transition:opacity .3s ease-in-out}.open .arrow,.open .popover{display:block;opacity:1;visibility:visible}.arrow{width:25px;height:25px;z-index:101;position:absolute;overflow:hidden}.arrow:after{content:'';position:absolute;width:12px;height:12px;background:var(--gv-popover--bgc,var(--gv-theme-neutral-color-lighter,#fafafa));transform:rotate(45deg);top:19px;left:6px;border:1px solid var(--gv-popover--bdc,var(--gv-theme-neutral-color,#f5f5f5))}`]}constructor(){super(),this.event="mouseover",this._closeHandler=this._close.bind(this),this.delay=0,this.arrow=!1,this.position="bottom",this.auto=!1}_open(t){"click"===this.event&&window.removeEventListener(this.event,this._closeHandler),this._opened=!0,"click"===this.event&&setTimeout((()=>window.addEventListener(this.event,this._closeHandler))),this.delay>0&&setTimeout((()=>this._close({})),this.delay)}close(){this._close({})}_close(t){if(this._opened&&(t.target!==this.firstElementChild||"click"!==this.event)){const t=this.shadowRoot.querySelector(".open");t.classList.add("close"),setTimeout((()=>{t.classList.remove("close"),this._opened=!1}),200)}}render(){const o=null==this.width&&!this.small&&!this.medium&&!this.large,i={open:this._opened,content:!0,inline:o};return t.html`<div class="${(0,e.classMap)(i)}"><slot></slot>${this.arrow?t.html`<div class="arrow"></div>`:""}<div class="popover">${this.renderContent()}</div></div>`}renderContent(){return t.html`<slot name="popover"></slot>`}firstUpdated(t){setTimeout((()=>{this.addEventListener(this.event,this._open.bind(this)),this.event.startsWith("mouse")&&0===this.delay&&this.addEventListener("mouseleave",this._close.bind(this))}))}_getContentSize(){const t=this.shadowRoot.querySelector(".popover");return{width:t.offsetWidth,height:t.offsetHeight}}_getPositionPadding(){return 10}_getCenterPosition(){return{x:this.target.x+this.target.width/2+window.scrollX,y:this.target.y+this.target.height/2+window.scrollY}}_updatePosition(){if(null!=this.position&&this.auto){if(this.shadowRoot.querySelector(".popover")&&(this.target=this.firstElementChild.getBoundingClientRect(),"top"===this.position&&!this._hasTopSpace()||"bottom"===this.position&&!this._hasBottomSpace()||"left"===this.position&&!this._hasLeftSpace()||"right"===this.position&&!this._hasRightSpace())){const t=[this._hasTopSpace(),this._hasRightSpace(),this._hasBottomSpace(),this._hasLeftSpace()].indexOf(!0);t>-1&&(this.position=["top","right","bottom","left"][t])}}}_getMaxX(){return window.innerWidth-this._getPositionPadding()}_getMaxY(){return window.innerHeight-this._getPositionPadding()}_hasBottomSpace(){return this.target.y+this.target.height+this._getContentSize().height+this._getPositionPadding()<=this._getMaxY()}_hasRightSpace(){return this.target.x+this.target.width+this._getContentSize().width+this._getPositionPadding()<=this._getMaxX()}_hasTopSpace(){return this.target.y-this._getContentSize().height-this._getPositionPadding()>=this._getPositionPadding()}_hasLeftSpace(){return this.target.x-this._getContentSize().width-this._getPositionPadding()>=this._getPositionPadding()}updated(t){t.has("width")&&this.shadowRoot.querySelector(".popover").style.setProperty("width",this.width),this._updatePosition()}}exports.GvPopover=o,window.customElements.define("gv-popover",o);
@@ -1,91 +1 @@
1
- /*
2
- * Copyright (C) 2015 The Gravitee team (http://gravitee.io)
3
- *
4
- * Licensed under the Apache License, Version 2.0 (the "License");
5
- * you may not use this file except in compliance with the License.
6
- * You may obtain a copy of the License at
7
- *
8
- * http://www.apache.org/licenses/LICENSE-2.0
9
- *
10
- * Unless required by applicable law or agreed to in writing, software
11
- * distributed under the License is distributed on an "AS IS" BASIS,
12
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- * See the License for the specific language governing permissions and
14
- * limitations under the License.
15
- */
16
- import { css, LitElement, html } from 'lit';
17
- import { classMap } from 'lit/directives/class-map';
18
- import { dispatchCustomEvent } from '../lib/events';
19
- import { i18n } from '../lib/i18n';
20
- import { ItemResource } from '../mixins/item-resource';
21
- import { getTitle, getDescription, getVersion, getOwner } from '../lib/item';
22
- import { truncate } from '../lib/utils';
23
- import '../atoms/gv-image';
24
- import '../atoms/gv-button';
25
- import '../molecules/gv-rating';
26
- import '../molecules/gv-metrics';
27
- /**
28
- * Promote component
29
- *
30
- * ## Details
31
- * * has @theme facet
32
- *
33
- * @fires gv-promote:click - When click on button for view item
34
- * @fires gv-tag:click - When one of the label is clicked
35
- *
36
- * @attr {Promise<any>} item - an item.
37
- *
38
- * @cssprop {Color} [--gv-promote-image--bgc=var(--gv-theme-color-light, #86c3d0)] - Image background color
39
- * @cssprop {Color} [--gv-promote--bgc=var(--gv-theme-neutral-color-lightest, #ffffff)] - Background color
40
- * @cssprop {Length} [--gv-promote-image--h=300px] - Image height
41
- * @cssprop {Length} [--gv-promote-image--w=300px] - Image width
42
- * @cssprop {Length} [--gv-promote-button--p=19px 80px] - Button padding
43
- * @cssprop {Length} [--gv-promote-button--fz=var(--gv-theme-font-size-l, 16px)] - Button font size
44
- */
45
-
46
- export class GvPromote extends ItemResource(LitElement) {
47
- static get properties() {
48
- return { ...super.properties,
49
- limit: {
50
- type: Number
51
- }
52
- };
53
- }
54
-
55
- static get styles() {
56
- return [...super.styles, // language=CSS
57
- css`:host{box-sizing:border-box;display:inline-block;margin:.2rem;vertical-align:middle;--gv-button--p:var(--gv-promote-button--p, 19px 80px);--gv-button--fz:var(--gv-promote-button--fz, var(--gv-theme-font-size-l, 16px));--gv-preview-button:'none';width:100%;--gv-icon--s:20px;--gv-rating--s:20px}gv-identity-picture{height:var(--gv-promote-image--h,300px);width:var(--gv-promote-image--w,300px);--gv-image--of:contain}.container{display:flex;min-height:420px;max-height:420px}.image{background-color:var(--gv-promote-image--bgc,var(--gv-theme-color-light,#86c3d0));min-height:0;min-width:0;width:480px;display:flex;align-items:center;justify-content:center;border-radius:4px 0 0 4px}.title{text-transform:capitalize;min-height:32px;display:flex;align-items:center}.title h2{font-size:var(--gv-theme-font-size-xl,26px);flex:1}.title .version{font-size:var(--gv-theme-font-size-s,12px);color:var(--gv-theme-neutral-color-dark,#d9d9d9)}.owner{--gv-icon--c:var(--gv-theme-neutral-color-dark, #bfbfbf);--gv-icon--s:16px;color:var(--gv-theme-neutral-color-dark,#bfbfbf);display:flex;padding-bottom:2px;margin-top:-8px;line-height:initial}.content{flex:1;padding:1.5rem;background-color:var(--gv-promote--bgc,var(--gv-theme-neutral-color-lightest,#fff));color:var(--gv-theme-font-color-dark,#262626);font-size:var(--gv-theme-font-size-l,16px);line-height:24px;border-radius:0 4px 4px 0;display:flex;flex-direction:column}.description{margin:24px 0;flex-grow:1}.description-large{text-align:justify}.infos{display:flex;justify-content:flex-end;margin:.5rem .2rem;align-items:center}gv-metrics{display:flex;height:100%;justify-content:flex-end;align-items:stretch}.labels{text-align:right}`];
58
- }
59
-
60
- _onClick() {
61
- dispatchCustomEvent(this, 'click', {
62
- data: this._item,
63
- href: this.href
64
- });
65
- }
66
-
67
- render() {
68
- if (this._invisible) {
69
- return '';
70
- }
71
-
72
- const owner = getOwner(this._item);
73
- return html`<div class="container"> <div class="${classMap({
74
- skeleton: this._skeleton,
75
- image: true
76
- })}">${this._renderImage()}</div> <div class="content"> ${this._error && !this._skeleton ? html`<p class="description error">${i18n('gv-promote.error')}</p>` : html` ${this._empty && !this._skeleton ? html`<p class="description empty">${i18n('gv-promote.empty')}</p>` : html` <div class="${classMap({
77
- skeleton: this._skeleton,
78
- title: true
79
- })}"> <h2>${getTitle(this._item)}</h2> <span class="version">${getVersion(this._item)}</span> </div> ${owner != null && owner.trim().length > 0 ? html`<div class="owner"><gv-icon shape="general:user" size="8px"></gv-icon>${owner}</div>` : ''} <p class="${classMap({
80
- skeleton: this._skeleton,
81
- description: true,
82
- 'description-large': getDescription(this._item).split(' ').length > 10
83
- })}"> ${truncate(getDescription(this._item), this.limit)} </p> <div class="${classMap({
84
- skeleton: this._skeleton,
85
- infos: true
86
- })}">${this._renderMetricsWithRating()}</div> <div class="labels">${this._renderLabels(true)}</div> <gv-button ?skeleton="${this._skeleton}" .href="${this.href}" @click="${this._onClick}">${i18n('gv-promote.view')}</gv-button>`} `} </div> </div>`;
87
- }
88
-
89
- }
90
- window.customElements.define('gv-promote', GvPromote);
91
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4vbm9kZV9tb2R1bGVzL0BncmF2aXRlZS91aS1jb21wb25lbnRzL21vbGVjdWxlcy9ndi1wcm9tb3RlLmpzIl0sIm5hbWVzIjpbImNzcyIsIkxpdEVsZW1lbnQiLCJodG1sIiwiY2xhc3NNYXAiLCJkaXNwYXRjaEN1c3RvbUV2ZW50IiwiaTE4biIsIkl0ZW1SZXNvdXJjZSIsImdldFRpdGxlIiwiZ2V0RGVzY3JpcHRpb24iLCJnZXRWZXJzaW9uIiwiZ2V0T3duZXIiLCJ0cnVuY2F0ZSIsIkd2UHJvbW90ZSIsInByb3BlcnRpZXMiLCJsaW1pdCIsInR5cGUiLCJOdW1iZXIiLCJzdHlsZXMiLCJfb25DbGljayIsImRhdGEiLCJfaXRlbSIsImhyZWYiLCJyZW5kZXIiLCJfaW52aXNpYmxlIiwib3duZXIiLCJza2VsZXRvbiIsIl9za2VsZXRvbiIsImltYWdlIiwiX3JlbmRlckltYWdlIiwiX2Vycm9yIiwiX2VtcHR5IiwidGl0bGUiLCJ0cmltIiwibGVuZ3RoIiwiZGVzY3JpcHRpb24iLCJzcGxpdCIsImluZm9zIiwiX3JlbmRlck1ldHJpY3NXaXRoUmF0aW5nIiwiX3JlbmRlckxhYmVscyIsIndpbmRvdyIsImN1c3RvbUVsZW1lbnRzIiwiZGVmaW5lIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTQSxHQUFULEVBQWNDLFVBQWQsRUFBMEJDLElBQTFCLFFBQXNDLEtBQXRDO0FBQ0EsU0FBU0MsUUFBVCxRQUF5QiwwQkFBekI7QUFDQSxTQUFTQyxtQkFBVCxRQUFvQyxlQUFwQztBQUNBLFNBQVNDLElBQVQsUUFBcUIsYUFBckI7QUFDQSxTQUFTQyxZQUFULFFBQTZCLHlCQUE3QjtBQUNBLFNBQVNDLFFBQVQsRUFBbUJDLGNBQW5CLEVBQW1DQyxVQUFuQyxFQUErQ0MsUUFBL0MsUUFBK0QsYUFBL0Q7QUFDQSxTQUFTQyxRQUFULFFB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Y0FITixHQUxELGdCQUFYO0FBZ0NEOztBQS9KcUQ7QUFrS3hEa0MsTUFBTSxDQUFDQyxjQUFQLENBQXNCQyxNQUF0QixDQUE2QixZQUE3QixFQUEyQzdCLFNBQTNDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoQykgMjAxNSBUaGUgR3Jhdml0ZWUgdGVhbSAoaHR0cDovL2dyYXZpdGVlLmlvKVxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cbmltcG9ydCB7IGNzcywgTGl0RWxlbWVudCwgaHRtbCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBjbGFzc01hcCB9IGZyb20gJ2xpdC9kaXJlY3RpdmVzL2NsYXNzLW1hcCc7XG5pbXBvcnQgeyBkaXNwYXRjaEN1c3RvbUV2ZW50IH0gZnJvbSAnLi4vbGliL2V2ZW50cyc7XG5pbXBvcnQgeyBpMThuIH0gZnJvbSAnLi4vbGliL2kxOG4nO1xuaW1wb3J0IHsgSXRlbVJlc291cmNlIH0gZnJvbSAnLi4vbWl4aW5zL2l0ZW0tcmVzb3VyY2UnO1xuaW1wb3J0IHsgZ2V0VGl0bGUsIGdldERlc2NyaXB0aW9uLCBnZXRWZXJzaW9uLCBnZXRPd25lciB9IGZyb20gJy4uL2xpYi9pdGVtJztcbmltcG9ydCB7IHRydW5jYXRlIH0gZnJvbSAnLi4vbGliL3V0aWxzJztcblxuaW1wb3J0ICcuLi9hdG9tcy9ndi1pbWFnZSc7XG5pbXBvcnQgJy4uL2F0b21zL2d2LWJ1dHRvbic7XG5pbXBvcnQgJy4uL21vbGVjdWxlcy9ndi1yYXRpbmcnO1xuaW1wb3J0ICcuLi9tb2xlY3VsZXMvZ3YtbWV0cmljcyc7XG5cbi8qKlxuICogUHJvbW90ZSBjb21wb25lbnRcbiAqXG4gKiAjIyBEZXRhaWxzXG4gKiAqIGhhcyBAdGhlbWUgZmFjZXRcbiAqXG4gKiBAZmlyZXMgZ3YtcHJvbW90ZTpjbGljayAtIFdoZW4gY2xpY2sgb24gYnV0dG9uIGZvciB2aWV3IGl0ZW1cbiAqIEBmaXJlcyBndi10YWc6Y2xpY2sgLSBXaGVuIG9uZSBvZiB0aGUgbGFiZWwgaXMgY2xpY2tlZFxuICpcbiAqIEBhdHRyIHtQcm9taXNlPGFueT59IGl0ZW0gLSBhbiBpdGVtLlxuICpcbiAqIEBjc3Nwcm9wIHtDb2xvcn0gWy0tZ3YtcHJvbW90ZS1pbWFnZS0tYmdjPXZhcigtLWd2LXRoZW1lLWNvbG9yLWxpZ2h0LCAjODZjM2QwKV0gLSBJbWFnZSBiYWNrZ3JvdW5kIGNvbG9yXG4gKiBAY3NzcHJvcCB7Q29sb3J9IFstLWd2LXByb21vdGUtLWJnYz12YXIoLS1ndi10aGVtZS1uZXV0cmFsLWNvbG9yLWxpZ2h0ZXN0LCAjZmZmZmZmKV0gLSBCYWNrZ3JvdW5kIGNvbG9yXG4gKiBAY3NzcHJvcCB7TGVuZ3RofSBbLS1ndi1wcm9tb3RlLWltYWdlLS1oPTMwMHB4XSAtIEltYWdlIGhlaWdodFxuICogQGNzc3Byb3Age0xlbmd0aH0gWy0tZ3YtcHJvbW90ZS1pbWFnZS0tdz0zMDBweF0gLSBJbWFnZSB3aWR0aFxuICogQGNzc3Byb3Age0xlbmd0aH0gWy0tZ3YtcHJvbW90ZS1idXR0b24tLXA9MTlweCA4MHB4XSAtIEJ1dHRvbiBwYWRkaW5nXG4gKiBAY3NzcHJvcCB7TGVuZ3RofSBbLS1ndi1wcm9tb3RlLWJ1dHRvbi0tZno9dmFyKC0tZ3YtdGhlbWUtZm9udC1zaXplLWwsIDE2cHgpXSAtIEJ1dHRvbiBmb250IHNpemVcbiAqL1xuZXhwb3J0IGNsYXNzIEd2UHJvbW90ZSBleHRlbmRzIEl0ZW1SZXNvdXJjZShMaXRFbGVtZW50KSB7XG4gIHN0YXRpYyBnZXQgcHJvcGVydGllcygpIHtcbiAgICByZXR1cm4ge1xuICAgICAgLi4uc3VwZXIucHJvcGVydGllcyxcbiAgICAgIGxpbWl0OiB7IHR5cGU6IE51bWJlciB9LFxuICAgIH07XG4gIH1cblxuICBzdGF0aWMgZ2V0IHN0eWxlcygpIHtcbiAgICByZXR1cm4gW1xuICAgICAgLi4uc3VwZXIuc3R5bGVzLFxuICAgICAgLy8gbGFuZ3VhZ2U9Q1NTXG4gICAgICBjc3NgXG4gICAgICAgIDpob3N0IHtcbiAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBtYXJnaW46IDAuMnJlbTtcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgIC0tZ3YtYnV0dG9uLS1wOiB2YXIoLS1ndi1wcm9tb3RlLWJ1dHRvbi0tcCwgMTlweCA4MHB4KTtcbiAgICAgICAgICAtLWd2LWJ1dHRvbi0tZno6IHZhcigtLWd2LXByb21vdGUtYnV0dG9uLS1meiwgdmFyKC0tZ3YtdGhlbWUtZm9udC1zaXplLWwsIDE2cHgpKTtcbiAgICAgICAgICAtLWd2LXByZXZpZXctYnV0dG9uOiAnbm9uZSc7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgLS1ndi1pY29uLS1zOiAyMHB4O1xuICAgICAgICAgIC0tZ3YtcmF0aW5nLS1zOiAyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgZ3YtaWRlbnRpdHktcGljdHVyZSB7XG4gICAgICAgICAgaGVpZ2h0OiB2YXIoLS1ndi1wcm9tb3RlLWltYWdlLS1oLCAzMDBweCk7XG4gICAgICAgICAgd2lkdGg6IHZhcigtLWd2LXByb21vdGUtaW1hZ2UtLXcsIDMwMHB4KTtcbiAgICAgICAgICAtLWd2LWltYWdlLS1vZjogY29udGFpbjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jb250YWluZXIge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgbWluLWhlaWdodDogNDIwcHg7XG4gICAgICAgICAgbWF4LWhlaWdodDogNDIwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAuaW1hZ2Uge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWd2LXByb21vdGUtaW1hZ2UtLWJnYywgdmFyKC0tZ3YtdGhlbWUtY29sb3ItbGlnaHQsICM4NmMzZDApKTtcbiAgICAgICAgICBtaW4taGVpZ2h0OiAwO1xuICAgICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgICB3aWR0aDogNDgwcHg7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweCAwIDAgNHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICBtaW4taGVpZ2h0OiAzMnB4O1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIC50aXRsZSBoMiB7XG4gICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1ndi10aGVtZS1mb250LXNpemUteGwsIDI2cHgpO1xuICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgIH1cblxuICAgICAgICAudGl0bGUgLnZlcnNpb24ge1xuICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZ3YtdGhlbWUtZm9udC1zaXplLXMsIDEycHgpO1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1ndi10aGVtZS1uZXV0cmFsLWNvbG9yLWRhcmssICNkOWQ5ZDkpO1xuICAgICAgICB9XG5cbiAgICAgICAgLm93bmVyIHtcbiAgICAgICAgICAtLWd2LWljb24tLWM6IHZhcigtLWd2LXRoZW1lLW5ldXRyYWwtY29sb3ItZGFyaywgI2JmYmZiZik7XG4gICAgICAgICAgLS1ndi1pY29uLS1zOiAxNnB4O1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1ndi10aGVtZS1uZXV0cmFsLWNvbG9yLWRhcmssICNiZmJmYmYpO1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDJweDtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAtOHB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiBpbml0aWFsO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgICAgcGFkZGluZzogMS41cmVtO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWd2LXByb21vdGUtLWJnYywgdmFyKC0tZ3YtdGhlbWUtbmV1dHJhbC1jb2xvci1saWdodGVzdCwgI2ZmZmZmZikpO1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1ndi10aGVtZS1mb250LWNvbG9yLWRhcmssICMyNjI2MjYpO1xuICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZ3YtdGhlbWUtZm9udC1zaXplLWwsIDE2cHgpO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgNHB4IDRweCAwO1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgbWFyZ2luOiAyNHB4IDBweDtcbiAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgIH1cblxuICAgICAgICAuZGVzY3JpcHRpb24tbGFyZ2Uge1xuICAgICAgICAgIHRleHQtYWxpZ246IGp1c3RpZnk7XG4gICAgICAgIH1cblxuICAgICAgICAuaW5mb3Mge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgICBtYXJnaW46IDAuNXJlbSAwLjJyZW07XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIGd2LW1ldHJpY3Mge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgICAgIH1cblxuICAgICAgICAubGFiZWxzIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgfVxuICAgICAgYCxcbiAgICBdO1xuICB9XG5cbiAgX29uQ2xpY2soKSB7XG4gICAgZGlzcGF0Y2hDdXN0b21FdmVudCh0aGlzLCAnY2xpY2snLCB7IGRhdGE6IHRoaXMuX2l0ZW0sIGhyZWY6IHRoaXMuaHJlZiB9KTtcbiAgfVxuXG4gIHJlbmRlcigpIHtcbiAgICBpZiAodGhpcy5faW52aXNpYmxlKSB7XG4gICAgICByZXR1cm4gJyc7XG4gICAgfVxuICAgIGNvbnN0IG93bmVyID0gZ2V0T3duZXIodGhpcy5faXRlbSk7XG4gICAgcmV0dXJuIGh0bWxgPGRpdiBjbGFzcz1cImNvbnRhaW5lclwiPlxuICAgICAgPGRpdiBjbGFzcz1cIiR7Y2xhc3NNYXAoeyBza2VsZXRvbjogdGhpcy5fc2tlbGV0b24sIGltYWdlOiB0cnVlIH0pfVwiPiR7dGhpcy5fcmVuZGVySW1hZ2UoKX08L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJjb250ZW50XCI+XG4gICAgICAgICR7dGhpcy5fZXJyb3IgJiYgIXRoaXMuX3NrZWxldG9uXG4gICAgICAgICAgPyBodG1sYDxwIGNsYXNzPVwiZGVzY3JpcHRpb24gZXJyb3JcIj4ke2kxOG4oJ2d2LXByb21vdGUuZXJyb3InKX08L3A+YFxuICAgICAgICAgIDogaHRtbGBcbiAgICAgICAgICAgICAgJHt0aGlzLl9lbXB0eSAmJiAhdGhpcy5fc2tlbGV0b25cbiAgICAgICAgICAgICAgICA/IGh0bWxgPHAgY2xhc3M9XCJkZXNjcmlwdGlvbiBlbXB0eVwiPiR7aTE4bignZ3YtcHJvbW90ZS5lbXB0eScpfTwvcD5gXG4gICAgICAgICAgICAgICAgOiBodG1sYCA8ZGl2IGNsYXNzPSR7Y2xhc3NNYXAoeyBza2VsZXRvbjogdGhpcy5fc2tlbGV0b24sIHRpdGxlOiB0cnVlIH0pfT5cbiAgICAgICAgICAgICAgICAgICAgICA8aDI+JHtnZXRUaXRsZSh0aGlzLl9pdGVtKX08L2gyPlxuICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidmVyc2lvblwiPiR7Z2V0VmVyc2lvbih0aGlzLl9pdGVtKX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAke293bmVyICE9IG51bGwgJiYgb3duZXIudHJpbSgpLmxlbmd0aCA+IDBcbiAgICAgICAgICAgICAgICAgICAgICA/IGh0bWxgPGRpdiBjbGFzcz1cIm93bmVyXCI+PGd2LWljb24gc2hhcGU9XCJnZW5lcmFsOnVzZXJcIiBzaXplPVwiOHB4XCI+PC9ndi1pY29uPiR7b3duZXJ9PC9kaXY+YFxuICAgICAgICAgICAgICAgICAgICAgIDogJyd9XG4gICAgICAgICAgICAgICAgICAgIDxwXG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3M9JHtjbGFzc01hcCh7XG4gICAgICAgICAgICAgICAgICAgICAgICBza2VsZXRvbjogdGhpcy5fc2tlbGV0b24sXG4gICAgICAgICAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICdkZXNjcmlwdGlvbi1sYXJnZSc6IGdldERlc2NyaXB0aW9uKHRoaXMuX2l0ZW0pLnNwbGl0KCcgJykubGVuZ3RoID4gMTAsXG4gICAgICAgICAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAke3RydW5jYXRlKGdldERlc2NyaXB0aW9uKHRoaXMuX2l0ZW0pLCB0aGlzLmxpbWl0KX1cbiAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSR7Y2xhc3NNYXAoeyBza2VsZXRvbjogdGhpcy5fc2tlbGV0b24sIGluZm9zOiB0cnVlIH0pfT4ke3RoaXMuX3JlbmRlck1ldHJpY3NXaXRoUmF0aW5nKCl9PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsYWJlbHNcIj4ke3RoaXMuX3JlbmRlckxhYmVscyh0cnVlKX08L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPGd2LWJ1dHRvbiA/c2tlbGV0b249JHt0aGlzLl9za2VsZXRvbn0gLmhyZWY9XCIke3RoaXMuaHJlZn1cIiBAY2xpY2s9XCIke3RoaXMuX29uQ2xpY2t9XCJcbiAgICAgICAgICAgICAgICAgICAgICA+JHtpMThuKCdndi1wcm9tb3RlLnZpZXcnKX08L2d2LWJ1dHRvblxuICAgICAgICAgICAgICAgICAgICA+YH1cbiAgICAgICAgICAgIGB9XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5gO1xuICB9XG59XG5cbndpbmRvdy5jdXN0b21FbGVtZW50cy5kZWZpbmUoJ2d2LXByb21vdGUnLCBHdlByb21vdGUpO1xuIl19
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.GvPromote=void 0;const e=require("lit"),t=require("lit/directives/class-map"),i=require("../lib/events"),r=require("../lib/i18n"),s=require("../mixins/item-resource"),o=require("../lib/item"),n=require("../lib/utils");require("../atoms/gv-image"),require("../atoms/gv-button"),require("../molecules/gv-rating"),require("../molecules/gv-metrics");class l extends((0,s.ItemResource)(e.LitElement)){static get properties(){return{...super.properties,limit:{type:Number}}}static get styles(){return[...super.styles,e.css`:host{box-sizing:border-box;display:inline-block;margin:.2rem;vertical-align:middle;--gv-button--p:var(--gv-promote-button--p, 19px 80px);--gv-button--fz:var(--gv-promote-button--fz, var(--gv-theme-font-size-l, 16px));--gv-preview-button:'none';width:100%;--gv-icon--s:20px;--gv-rating--s:20px}gv-identity-picture{height:var(--gv-promote-image--h,300px);width:var(--gv-promote-image--w,300px);--gv-image--of:contain}.container{display:flex;min-height:420px;max-height:420px}.image{background-color:var(--gv-promote-image--bgc,var(--gv-theme-color-light,#86c3d0));min-height:0;min-width:0;width:480px;display:flex;align-items:center;justify-content:center;border-radius:4px 0 0 4px}.title{text-transform:capitalize;min-height:32px;display:flex;align-items:center}.title h2{font-size:var(--gv-theme-font-size-xl,26px);flex:1}.title .version{font-size:var(--gv-theme-font-size-s,12px);color:var(--gv-theme-neutral-color-dark,#d9d9d9)}.owner{--gv-icon--c:var(--gv-theme-neutral-color-dark, #bfbfbf);--gv-icon--s:16px;color:var(--gv-theme-neutral-color-dark,#bfbfbf);display:flex;padding-bottom:2px;margin-top:-8px;line-height:initial}.content{flex:1;padding:1.5rem;background-color:var(--gv-promote--bgc,var(--gv-theme-neutral-color-lightest,#fff));color:var(--gv-theme-font-color-dark,#262626);font-size:var(--gv-theme-font-size-l,16px);line-height:24px;border-radius:0 4px 4px 0;display:flex;flex-direction:column}.description{margin:24px 0;flex-grow:1}.description-large{text-align:justify}.infos{display:flex;justify-content:flex-end;margin:.5rem .2rem;align-items:center}gv-metrics{display:flex;height:100%;justify-content:flex-end;align-items:stretch}.labels{text-align:right}`]}_onClick(){(0,i.dispatchCustomEvent)(this,"click",{data:this._item,href:this.href})}render(){if(this._invisible)return"";const i=(0,o.getOwner)(this._item);return e.html`<div class="container"><div class="${(0,t.classMap)({skeleton:this._skeleton,image:!0})}">${this._renderImage()}</div><div class="content">${this._error&&!this._skeleton?e.html`<p class="description error">${(0,r.i18n)("gv-promote.error")}</p>`:e.html`${this._empty&&!this._skeleton?e.html`<p class="description empty">${(0,r.i18n)("gv-promote.empty")}</p>`:e.html`<div class="${(0,t.classMap)({skeleton:this._skeleton,title:!0})}"><h2>${(0,o.getTitle)(this._item)}</h2><span class="version">${(0,o.getVersion)(this._item)}</span></div>${null!=i&&i.trim().length>0?e.html`<div class="owner"><gv-icon shape="general:user" size="8px"></gv-icon>${i}</div>`:""}<p class="${(0,t.classMap)({skeleton:this._skeleton,description:!0,"description-large":(0,o.getDescription)(this._item).split(" ").length>10})}">${(0,n.truncate)((0,o.getDescription)(this._item),this.limit)}</p><div class="${(0,t.classMap)({skeleton:this._skeleton,infos:!0})}">${this._renderMetricsWithRating()}</div><div class="labels">${this._renderLabels(!0)}</div><gv-button ?skeleton="${this._skeleton}" .href="${this.href}" @click="${this._onClick}">${(0,r.i18n)("gv-promote.view")}</gv-button>`}`}</div></div>`}}exports.GvPromote=l,window.customElements.define("gv-promote",l);