@jumpgroup/jump-design-system 0.3.0 → 0.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (177) hide show
  1. package/dist/cjs/{index-418c607f.js → index-674508e2.js} +9 -4
  2. package/dist/cjs/index-674508e2.js.map +1 -0
  3. package/dist/cjs/jump-accordion.cjs.entry.js +1 -1
  4. package/dist/cjs/jump-badge.cjs.entry.js +27 -0
  5. package/dist/cjs/jump-badge.cjs.entry.js.map +1 -0
  6. package/dist/cjs/{jump-icon.cjs.entry.js → jump-button_2.cjs.entry.js} +35 -2
  7. package/dist/cjs/jump-button_2.cjs.entry.js.map +1 -0
  8. package/dist/cjs/jump-card-ecommerce.cjs.entry.js +31 -26
  9. package/dist/cjs/jump-card-ecommerce.cjs.entry.js.map +1 -1
  10. package/dist/cjs/jump-card.cjs.entry.js +3 -3
  11. package/dist/cjs/jump-design-system.cjs.js +2 -2
  12. package/dist/cjs/jump-filter.cjs.entry.js +3 -3
  13. package/dist/cjs/jump-filtergroup.cjs.entry.js +3 -3
  14. package/dist/cjs/jump-pagination-table.cjs.entry.js +16 -4
  15. package/dist/cjs/jump-pagination-table.cjs.entry.js.map +1 -1
  16. package/dist/cjs/jump-pagination.cjs.entry.js +18 -5
  17. package/dist/cjs/jump-pagination.cjs.entry.js.map +1 -1
  18. package/dist/cjs/{jump-badge_2.cjs.entry.js → jump-quantity.cjs.entry.js} +16 -24
  19. package/dist/cjs/jump-quantity.cjs.entry.js.map +1 -0
  20. package/dist/cjs/jump-tab-item.cjs.entry.js +4 -4
  21. package/dist/cjs/jump-tab-item.cjs.entry.js.map +1 -1
  22. package/dist/cjs/jump-tab-panel.cjs.entry.js +2 -2
  23. package/dist/cjs/jump-tab.cjs.entry.js +3 -3
  24. package/dist/cjs/jump-tab.cjs.entry.js.map +1 -1
  25. package/dist/cjs/loader.cjs.js +2 -2
  26. package/dist/collection/components/jump-badge/jump-badge.css +90 -6
  27. package/dist/collection/components/jump-badge/jump-badge.js +60 -3
  28. package/dist/collection/components/jump-badge/jump-badge.js.map +1 -1
  29. package/dist/collection/components/jump-badge/jump-badge.stories.js +79 -4
  30. package/dist/collection/components/jump-badge/jump-badge.stories.js.map +1 -1
  31. package/dist/collection/components/jump-button/jump-button.js +1 -1
  32. package/dist/collection/components/jump-card/jump-card.js +2 -2
  33. package/dist/collection/components/jump-card-ecommerce/jump-card-ecommerce.css +4 -0
  34. package/dist/collection/components/jump-card-ecommerce/jump-card-ecommerce.js +30 -74
  35. package/dist/collection/components/jump-card-ecommerce/jump-card-ecommerce.js.map +1 -1
  36. package/dist/collection/components/jump-card-ecommerce/jump-card-ecommerce.stories.js +15 -21
  37. package/dist/collection/components/jump-card-ecommerce/jump-card-ecommerce.stories.js.map +1 -1
  38. package/dist/collection/components/jump-filter/jump-filter.js +2 -2
  39. package/dist/collection/components/jump-filtergroup/jump-filtergroup.js +2 -2
  40. package/dist/collection/components/jump-pagination/jump-pagination.css +1 -0
  41. package/dist/collection/components/jump-pagination/jump-pagination.js +17 -3
  42. package/dist/collection/components/jump-pagination/jump-pagination.js.map +1 -1
  43. package/dist/collection/components/jump-pagination-table/jump-pagination-table.js +15 -3
  44. package/dist/collection/components/jump-pagination-table/jump-pagination-table.js.map +1 -1
  45. package/dist/collection/components/jump-quantity/jump-quantity.css +3 -1
  46. package/dist/collection/components/jump-quantity/jump-quantity.js +69 -11
  47. package/dist/collection/components/jump-quantity/jump-quantity.js.map +1 -1
  48. package/dist/collection/components/jump-tab/jump-tab.css +2 -5
  49. package/dist/collection/components/jump-tab/jump-tab.js +1 -1
  50. package/dist/collection/components/jump-tab/jump-tab.js.map +1 -1
  51. package/dist/collection/components/jump-tab/jump-tab.stories.js +13 -13
  52. package/dist/collection/components/jump-tab/jump-tab.stories.js.map +1 -1
  53. package/dist/collection/components/jump-tab-item/jump-tab-item-boxed.stories.js +3 -5
  54. package/dist/collection/components/jump-tab-item/jump-tab-item-boxed.stories.js.map +1 -1
  55. package/dist/collection/components/jump-tab-item/jump-tab-item-inline.stories.js +3 -5
  56. package/dist/collection/components/jump-tab-item/jump-tab-item-inline.stories.js.map +1 -1
  57. package/dist/collection/components/jump-tab-item/jump-tab-item.css +34 -34
  58. package/dist/collection/components/jump-tab-item/jump-tab-item.js +3 -2
  59. package/dist/collection/components/jump-tab-item/jump-tab-item.js.map +1 -1
  60. package/dist/collection/components/jump-tab-panel/jump-tab-panel.js +1 -1
  61. package/dist/components/jump-badge2.js +9 -3
  62. package/dist/components/jump-badge2.js.map +1 -1
  63. package/dist/components/jump-button2.js +1 -1
  64. package/dist/components/jump-card-ecommerce.js +36 -39
  65. package/dist/components/jump-card-ecommerce.js.map +1 -1
  66. package/dist/components/jump-card.js +2 -2
  67. package/dist/components/jump-filter.js +2 -2
  68. package/dist/components/jump-filtergroup.js +2 -2
  69. package/dist/components/jump-pagination-table.js +22 -4
  70. package/dist/components/jump-pagination-table.js.map +1 -1
  71. package/dist/components/jump-pagination.js +26 -6
  72. package/dist/components/jump-pagination.js.map +1 -1
  73. package/dist/components/jump-quantity.js +106 -1
  74. package/dist/components/jump-quantity.js.map +1 -1
  75. package/dist/components/jump-tab-item.js +5 -4
  76. package/dist/components/jump-tab-item.js.map +1 -1
  77. package/dist/components/jump-tab-panel.js +1 -1
  78. package/dist/components/jump-tab.js +2 -2
  79. package/dist/components/jump-tab.js.map +1 -1
  80. package/dist/esm/{index-056a0a66.js → index-70f1949a.js} +9 -4
  81. package/dist/esm/index-70f1949a.js.map +1 -0
  82. package/dist/esm/jump-accordion.entry.js +1 -1
  83. package/dist/esm/jump-badge.entry.js +23 -0
  84. package/dist/esm/jump-badge.entry.js.map +1 -0
  85. package/dist/esm/{jump-icon.entry.js → jump-button_2.entry.js} +35 -3
  86. package/dist/esm/jump-button_2.entry.js.map +1 -0
  87. package/dist/esm/jump-card-ecommerce.entry.js +31 -26
  88. package/dist/esm/jump-card-ecommerce.entry.js.map +1 -1
  89. package/dist/esm/jump-card.entry.js +3 -3
  90. package/dist/esm/jump-design-system.js +3 -3
  91. package/dist/esm/jump-filter.entry.js +3 -3
  92. package/dist/esm/jump-filtergroup.entry.js +3 -3
  93. package/dist/esm/jump-pagination-table.entry.js +16 -4
  94. package/dist/esm/jump-pagination-table.entry.js.map +1 -1
  95. package/dist/esm/jump-pagination.entry.js +18 -5
  96. package/dist/esm/jump-pagination.entry.js.map +1 -1
  97. package/dist/esm/{jump-badge_2.entry.js → jump-quantity.entry.js} +17 -24
  98. package/dist/esm/jump-quantity.entry.js.map +1 -0
  99. package/dist/esm/jump-tab-item.entry.js +4 -4
  100. package/dist/esm/jump-tab-item.entry.js.map +1 -1
  101. package/dist/esm/jump-tab-panel.entry.js +2 -2
  102. package/dist/esm/jump-tab.entry.js +3 -3
  103. package/dist/esm/jump-tab.entry.js.map +1 -1
  104. package/dist/esm/loader.js +3 -3
  105. package/dist/jump-design-system/jump-design-system.esm.js +1 -1
  106. package/dist/jump-design-system/jump-design-system.esm.js.map +1 -1
  107. package/dist/jump-design-system/p-2cb7d817.entry.js +2 -0
  108. package/dist/jump-design-system/p-2cb7d817.entry.js.map +1 -0
  109. package/dist/jump-design-system/p-34a46a10.entry.js +2 -0
  110. package/dist/jump-design-system/p-34a46a10.entry.js.map +1 -0
  111. package/dist/jump-design-system/p-377a769b.entry.js +2 -0
  112. package/dist/jump-design-system/p-377a769b.entry.js.map +1 -0
  113. package/dist/jump-design-system/p-493c7f4a.entry.js +2 -0
  114. package/dist/jump-design-system/p-493c7f4a.entry.js.map +1 -0
  115. package/dist/jump-design-system/p-4d6cc90d.js +3 -0
  116. package/dist/jump-design-system/p-4d6cc90d.js.map +1 -0
  117. package/dist/jump-design-system/p-56609b82.entry.js +2 -0
  118. package/dist/jump-design-system/p-5a6fbc53.entry.js +2 -0
  119. package/dist/jump-design-system/p-5d713084.entry.js +2 -0
  120. package/dist/jump-design-system/p-7dcb59ed.entry.js +2 -0
  121. package/dist/jump-design-system/p-7dcb59ed.entry.js.map +1 -0
  122. package/dist/jump-design-system/p-8343b4f5.entry.js +2 -0
  123. package/dist/jump-design-system/p-8343b4f5.entry.js.map +1 -0
  124. package/dist/jump-design-system/{p-83e6ab6e.entry.js → p-a6fc23f7.entry.js} +2 -2
  125. package/dist/jump-design-system/{p-58602fcb.entry.js → p-c1665537.entry.js} +2 -2
  126. package/dist/jump-design-system/p-c2bc6395.entry.js +66 -0
  127. package/dist/jump-design-system/p-c2bc6395.entry.js.map +1 -0
  128. package/dist/jump-design-system/p-fafe6478.entry.js +2 -0
  129. package/dist/jump-design-system/p-fafe6478.entry.js.map +1 -0
  130. package/dist/jump-design-system-elements.json +42 -8
  131. package/dist/types/components/jump-badge/jump-badge.d.ts +13 -1
  132. package/dist/types/components/jump-badge/jump-badge.stories.d.ts +22 -1
  133. package/dist/types/components/jump-card-ecommerce/jump-card-ecommerce.d.ts +5 -6
  134. package/dist/types/components/jump-card-ecommerce/jump-card-ecommerce.stories.d.ts +0 -6
  135. package/dist/types/components/jump-quantity/jump-quantity.d.ts +6 -1
  136. package/dist/types/components/jump-tab-item/jump-tab-item-boxed.stories.d.ts +0 -1
  137. package/dist/types/components/jump-tab-item/jump-tab-item-inline.stories.d.ts +0 -1
  138. package/dist/types/components.d.ts +33 -20
  139. package/package.json +1 -1
  140. package/dist/cjs/index-418c607f.js.map +0 -1
  141. package/dist/cjs/jump-badge_2.cjs.entry.js.map +0 -1
  142. package/dist/cjs/jump-button.cjs.entry.js +0 -41
  143. package/dist/cjs/jump-button.cjs.entry.js.map +0 -1
  144. package/dist/cjs/jump-icon.cjs.entry.js.map +0 -1
  145. package/dist/components/jump-quantity2.js +0 -94
  146. package/dist/components/jump-quantity2.js.map +0 -1
  147. package/dist/esm/index-056a0a66.js.map +0 -1
  148. package/dist/esm/jump-badge_2.entry.js.map +0 -1
  149. package/dist/esm/jump-button.entry.js +0 -37
  150. package/dist/esm/jump-button.entry.js.map +0 -1
  151. package/dist/esm/jump-icon.entry.js.map +0 -1
  152. package/dist/jump-design-system/p-0dc744ce.entry.js +0 -2
  153. package/dist/jump-design-system/p-357cf73d.entry.js +0 -66
  154. package/dist/jump-design-system/p-357cf73d.entry.js.map +0 -1
  155. package/dist/jump-design-system/p-58bed455.entry.js +0 -2
  156. package/dist/jump-design-system/p-58bed455.entry.js.map +0 -1
  157. package/dist/jump-design-system/p-647ec30b.entry.js +0 -2
  158. package/dist/jump-design-system/p-647ec30b.entry.js.map +0 -1
  159. package/dist/jump-design-system/p-8ec76454.entry.js +0 -2
  160. package/dist/jump-design-system/p-8ec76454.entry.js.map +0 -1
  161. package/dist/jump-design-system/p-91794ae6.js +0 -3
  162. package/dist/jump-design-system/p-91794ae6.js.map +0 -1
  163. package/dist/jump-design-system/p-afe0cca0.entry.js +0 -2
  164. package/dist/jump-design-system/p-b2ca2e96.entry.js +0 -2
  165. package/dist/jump-design-system/p-b2ca2e96.entry.js.map +0 -1
  166. package/dist/jump-design-system/p-d58e0952.entry.js +0 -2
  167. package/dist/jump-design-system/p-d58e0952.entry.js.map +0 -1
  168. package/dist/jump-design-system/p-e2318686.entry.js +0 -2
  169. package/dist/jump-design-system/p-e2318686.entry.js.map +0 -1
  170. package/dist/jump-design-system/p-ee61c223.entry.js +0 -2
  171. package/dist/jump-design-system/p-f842ff46.entry.js +0 -2
  172. package/dist/jump-design-system/p-f842ff46.entry.js.map +0 -1
  173. /package/dist/jump-design-system/{p-afe0cca0.entry.js.map → p-56609b82.entry.js.map} +0 -0
  174. /package/dist/jump-design-system/{p-ee61c223.entry.js.map → p-5a6fbc53.entry.js.map} +0 -0
  175. /package/dist/jump-design-system/{p-0dc744ce.entry.js.map → p-5d713084.entry.js.map} +0 -0
  176. /package/dist/jump-design-system/{p-83e6ab6e.entry.js.map → p-a6fc23f7.entry.js.map} +0 -0
  177. /package/dist/jump-design-system/{p-58602fcb.entry.js.map → p-c1665537.entry.js.map} +0 -0
@@ -4,7 +4,7 @@ export class JumpQuantity {
4
4
  this.min = 1;
5
5
  this.max = undefined;
6
6
  this.step = 1;
7
- this.label = 'Quantità';
7
+ this.label = '';
8
8
  this.type = 'buttons';
9
9
  this.variant = 'vertical';
10
10
  this.showButtons = true;
@@ -17,6 +17,15 @@ export class JumpQuantity {
17
17
  });
18
18
  this.internals.setFormValue(newValue);
19
19
  }
20
+ /**
21
+ * Get the current value
22
+ */
23
+ async getValue() {
24
+ return this.value;
25
+ }
26
+ async reset() {
27
+ this.value = this.min;
28
+ }
20
29
  componentWillLoad() {
21
30
  this.value = this.min;
22
31
  this.internals.setFormValue(this.value);
@@ -26,7 +35,6 @@ export class JumpQuantity {
26
35
  this.internals.setFormValue('');
27
36
  }
28
37
  handleChange(event) {
29
- // console.log(event.target.value);
30
38
  this.value = event.target.value;
31
39
  }
32
40
  //avoid user can change the value below the min
@@ -36,11 +44,11 @@ export class JumpQuantity {
36
44
  }
37
45
  }
38
46
  render() {
39
- return (h(Host, { key: '3c14e68a630e8f8ce14b61b119a141b26d1250d1', value: this.value, "data-variant": this.variant, "data-hasbuttons": this.showButtons }, this.label && h("label", { key: 'd3012ea3d7d21ec7433ec223f9b55d9547337f57' }, this.label), h("div", { key: '6d637b7fe69f1712f48587003ac491a7d63b54dc', class: `jump-quantity__InnerWrapper` }, this.showButtons &&
40
- h("jump-button", { key: 'a9a3d9368fb78dc4c060190d0069466611963995', onClick: () => this.value = this.value - this.step, disabled: this.value <= this.min, variant: 'neutral', size: 'small' }, "-"), h("input", { key: '9e728cdf29440f52d706e9e62961d0e2918cd3d8', ref: (el) => {
47
+ return (h(Host, { key: '2101c7f3d3f54d29b42659466f9b77f8ad9287c9', value: this.value, "data-variant": this.variant, "data-hasbuttons": this.showButtons }, this.label && h("label", { key: '3e4e1c3e0675283ce6db21877d9e4260c7a2df38' }, this.label), h("div", { key: 'cdcbb08e5d778611d8d50aa38f8900ae7117a166', class: `jump-quantity__InnerWrapper` }, this.showButtons &&
48
+ h("jump-button", { key: '70a2656261fbaea52d673ccbca513e0e76b2985b', onClick: () => this.value = this.value - this.step, disabled: this.value <= this.min, variant: 'neutral', size: 'small' }, h("jump-icon", { key: '5bb00edd0aa996f27cf4b34d130e5217ef2a7041', library: "lucide", name: "minus", size: "small" })), h("input", { key: '879bfdbc9ddcba94dc9bb478b5c5fb6c17d10389', ref: (el) => {
41
49
  this.inputEl = el;
42
50
  }, type: 'number', value: this.value, onInput: (event) => this.handleChange(event), min: this.min, max: this.max, step: this.step, "aria-hasbuttons": this.showButtons }), this.showButtons &&
43
- h("jump-button", { key: 'cad00efcd74d365d4e9ffb17c6d366b830f2522b', onClick: () => this.value = this.value + this.step, disabled: this.value >= this.max, variant: 'neutral', size: 'small', "only-icon": this.value >= this.max }, !this.max || this.value < this.max ? '+' : ''))));
51
+ h("jump-button", { key: '4fc5ea8736ccf4a17397b55c06db4d5a024792ab', onClick: () => this.value = this.value + this.step, disabled: this.value >= this.max, variant: 'neutral', size: 'small' }, h("jump-icon", { key: 'a2b77881cac77552fedcc14a5507a1b5c722addc', library: "lucide", name: "plus", size: "small" })))));
44
52
  }
45
53
  static get is() { return "jump-quantity"; }
46
54
  static get encapsulation() { return "shadow"; }
@@ -126,7 +134,7 @@ export class JumpQuantity {
126
134
  },
127
135
  "attribute": "label",
128
136
  "reflect": false,
129
- "defaultValue": "'Quantit\u00E0'"
137
+ "defaultValue": "''"
130
138
  },
131
139
  "type": {
132
140
  "type": "string",
@@ -181,14 +189,26 @@ export class JumpQuantity {
181
189
  "attribute": "show-buttons",
182
190
  "reflect": false,
183
191
  "defaultValue": "true"
192
+ },
193
+ "value": {
194
+ "type": "any",
195
+ "mutable": false,
196
+ "complexType": {
197
+ "original": "any",
198
+ "resolved": "any",
199
+ "references": {}
200
+ },
201
+ "required": false,
202
+ "optional": false,
203
+ "docs": {
204
+ "tags": [],
205
+ "text": ""
206
+ },
207
+ "attribute": "value",
208
+ "reflect": false
184
209
  }
185
210
  };
186
211
  }
187
- static get states() {
188
- return {
189
- "value": {}
190
- };
191
- }
192
212
  static get events() {
193
213
  return [{
194
214
  "method": "change",
@@ -207,6 +227,44 @@ export class JumpQuantity {
207
227
  }
208
228
  }];
209
229
  }
230
+ static get methods() {
231
+ return {
232
+ "getValue": {
233
+ "complexType": {
234
+ "signature": "() => Promise<any>",
235
+ "parameters": [],
236
+ "references": {
237
+ "Promise": {
238
+ "location": "global",
239
+ "id": "global::Promise"
240
+ }
241
+ },
242
+ "return": "Promise<any>"
243
+ },
244
+ "docs": {
245
+ "text": "Get the current value",
246
+ "tags": []
247
+ }
248
+ },
249
+ "reset": {
250
+ "complexType": {
251
+ "signature": "() => Promise<void>",
252
+ "parameters": [],
253
+ "references": {
254
+ "Promise": {
255
+ "location": "global",
256
+ "id": "global::Promise"
257
+ }
258
+ },
259
+ "return": "Promise<void>"
260
+ },
261
+ "docs": {
262
+ "text": "",
263
+ "tags": []
264
+ }
265
+ }
266
+ };
267
+ }
210
268
  static get elementRef() { return "el"; }
211
269
  static get watchers() {
212
270
  return [{
@@ -1 +1 @@
1
- {"version":3,"file":"jump-quantity.js","sourceRoot":"","sources":["../../../src/components/jump-quantity/jump-quantity.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Host, State, AttachInternals, Watch, Prop, h, Event, Element } from '@stencil/core';\n\n@Component({\n tag: 'jump-quantity',\n styleUrl: 'jump-quantity.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class JumpQuantity {\n\n @AttachInternals() internals: ElementInternals;\n @Element() el;\n\n @Prop() min: number = 1;\n @Prop() max: number;\n @Prop() step: number = 1;\n @Prop() label: string = 'Quantità';\n @Prop() type: 'buttons' | 'dropdown' | 'input' = 'buttons';\n @Prop() variant: 'vertical' | 'horizontal' = 'vertical';\n @Prop() showButtons: boolean = true;\n\n @Event({ eventName: 'jump-change' }) change;\n\n @State() value;\n\n inputEl: HTMLInputElement;\n\n @Watch('value')\n onValueChange(newValue, oldValue) {\n this.change.emit({\n value: newValue,\n oldValue: oldValue,\n });\n this.internals.setFormValue(newValue);\n }\n\n componentWillLoad() {\n this.value = this.min;\n this.internals.setFormValue(this.value);\n }\n\n formResetCallback() {\n this.internals.setValidity({});\n this.internals.setFormValue('');\n }\n\n handleChange(event) {\n // console.log(event.target.value);\n this.value = event.target.value;\n }\n\n //avoid user can change the value below the min\n handleBlur(event) {\n if (event.target.value < this.min) {\n this.value = this.min;\n }\n }\n\n render() {\n return (\n <Host value={this.value} data-variant={this.variant} data-hasbuttons={this.showButtons}>\n {this.label && <label>{this.label}</label>}\n <div class={`jump-quantity__InnerWrapper`}>\n {this.showButtons &&\n <jump-button onClick={() => this.value = this.value - this.step} disabled={this.value <= this.min}\n variant='neutral' size='small'\n >\n -\n {/*{this.value > this.min ? '-' : ''}*/}\n </jump-button>}\n <input ref={(el) => {\n this.inputEl = el;\n }}\n type='number'\n value={this.value}\n onInput={(event) => this.handleChange(event)}\n min={this.min}\n max={this.max}\n step={this.step}\n aria-hasbuttons={this.showButtons}\n />\n {this.showButtons &&\n <jump-button onClick={() => this.value = this.value + this.step} disabled={this.value >= this.max}\n variant='neutral' size='small'\n only-icon={this.value >= this.max}\n >{!this.max || this.value < this.max ? '+' : ''}</jump-button>}\n </div>\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"jump-quantity.js","sourceRoot":"","sources":["../../../src/components/jump-quantity/jump-quantity.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Host, AttachInternals, Watch, Method, Prop, h, Event, Element } from '@stencil/core';\n\n@Component({\n tag: 'jump-quantity',\n styleUrl: 'jump-quantity.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class JumpQuantity {\n\n @AttachInternals() internals: ElementInternals;\n @Element() el;\n\n @Prop() min: number = 1;\n @Prop() max: number;\n @Prop() step: number = 1;\n @Prop() label: string = '';\n @Prop() type: 'buttons' | 'dropdown' | 'input' = 'buttons';\n @Prop() variant: 'vertical' | 'horizontal' = 'vertical';\n @Prop() showButtons: boolean = true;\n @Prop() value;\n\n @Event({ eventName: 'jump-change' }) change;\n\n inputEl: HTMLInputElement;\n\n @Watch('value')\n onValueChange(newValue, oldValue) {\n this.change.emit({\n value: newValue,\n oldValue: oldValue,\n });\n this.internals.setFormValue(newValue);\n }\n\n /**\n * Get the current value\n */\n @Method()\n async getValue() {\n return this.value;\n }\n\n @Method()\n async reset() {\n this.value = this.min;\n }\n\n componentWillLoad() {\n this.value = this.min;\n this.internals.setFormValue(this.value);\n }\n\n formResetCallback() {\n this.internals.setValidity({});\n this.internals.setFormValue('');\n }\n\n handleChange(event) {\n this.value = event.target.value;\n }\n\n //avoid user can change the value below the min\n handleBlur(event) {\n if (event.target.value < this.min) {\n this.value = this.min;\n }\n }\n\n render() {\n return (\n <Host value={this.value} data-variant={this.variant} data-hasbuttons={this.showButtons}>\n {this.label && <label>{this.label}</label>}\n <div class={`jump-quantity__InnerWrapper`}>\n {this.showButtons &&\n <jump-button onClick={() => this.value = this.value - this.step} disabled={this.value <= this.min}\n variant='neutral' size='small'>\n <jump-icon library=\"lucide\" name=\"minus\" size=\"small\"></jump-icon>\n </jump-button>}\n <input ref={(el) => {\n this.inputEl = el;\n }}\n type='number'\n value={this.value}\n onInput={(event) => this.handleChange(event)}\n min={this.min}\n max={this.max}\n step={this.step}\n aria-hasbuttons={this.showButtons}\n />\n {this.showButtons &&\n <jump-button onClick={() => this.value = this.value + this.step} disabled={this.value >= this.max}\n variant='neutral' size='small'>\n <jump-icon library=\"lucide\" name=\"plus\" size=\"small\"></jump-icon>\n </jump-button>}\n </div>\n </Host>\n );\n }\n}\n"]}
@@ -1,15 +1,12 @@
1
1
  :host {
2
2
  display: block;
3
- }
4
-
5
- .JumpTab {
6
3
  --jump-tab-bg-color: var(--gray-ultralight, #f8f8f8);
7
4
  }
8
- .JumpTab__Wrapper {
5
+ :host .Wrapper {
9
6
  display: flex;
10
7
  width: fit-content;
11
8
  }
12
- .JumpTab__Wrapper.rounded {
9
+ :host .Wrapper.rounded {
13
10
  border-radius: 50px;
14
11
  background-color: #f8f8f8;
15
12
  }
@@ -72,7 +72,7 @@ export class JumpTab {
72
72
  }
73
73
  }
74
74
  render() {
75
- return (h(Host, { key: '5adce348b75c58349a4ff443cf2f6b39b646722f', class: "JumpTab", id: this.tabGroupName, ref: (el) => { this.JumpTabEl = el; } }, h("div", { key: 'dcfe4b594261f40f91bff6fba243fcc2c9d19368', class: "JumpTab__Wrapper " + this.variant }, h("slot", { key: 'ce9cf25e3d5566a2e52469aafeeac6392862c348', name: "tab-item" })), h("div", { key: 'a396fbb89c2299c2cee8b9bd1828ad70faf3caee' }, h("slot", { key: '34f95fe28043b74be2cdba5e0253e50c9326bf01', name: "tab-content" }))));
75
+ return (h(Host, { key: '325ebf63677d7b1307ebb5be3d521d06efa22a5a', class: "JumpTab", id: this.tabGroupName, ref: (el) => { this.JumpTabEl = el; } }, h("div", { key: 'afa4eb17c8582aa59f8f3b55237de34fa04871d5', class: "Wrapper " + this.variant }, h("slot", { key: '69023d9ae6ae85ef8270d7c8ea4c881c60889f63', name: "tab-item" })), h("div", { key: '28257b0f8de4c3ef1b7dd7adb58dc2d0ce342164' }, h("slot", { key: '3097cf4876730499e2067aed722ff822582e173f', name: "tab-content" }))));
76
76
  }
77
77
  static get is() { return "jump-tab"; }
78
78
  static get encapsulation() { return "shadow"; }
@@ -1 +1 @@
1
- {"version":3,"file":"jump-tab.js","sourceRoot":"","sources":["../../../src/components/jump-tab/jump-tab.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Host, Event, EventEmitter, Prop, h, Listen } from '@stencil/core';\n\n@Component({\n tag: 'jump-tab',\n styleUrl: 'jump-tab.scss',\n shadow: true,\n})\nexport class JumpTab {\n\n JumpTabEl: HTMLElement;\n /* ---------------------- @PROPERTIES ------------------------- */\n @Prop() tabGroupName: string = undefined;\n\n /**\n * The style of the tab. The same value must be passed to all the items.\n * Choosed from \"inline\", \"boxed\", \"sheet\", \"rounded\"\n */\n @Prop() variant: string = 'inline';\n\n @Event({ eventName: 'jump-change-activetab'}) setActiveTab: EventEmitter;\n\n @Listen('jump-change-active-tab')\n changeActiveTabHandler(event: CustomEvent) {\n this.setActiveTab.emit(event.detail);\n\n // Recupera il valore della variabile CSS\n const rootStyles = getComputedStyle(document.documentElement);\n const primaryColor = rootStyles.getPropertyValue('--neutral-grey-secondary').trim();\n\n let items = this.JumpTabEl.querySelectorAll('jump-tab-item');\n if (items.length > 0) {\n items.forEach((item) => {\n if (item.getAttribute('identifier') === event.detail.id) {\n item.setAttribute('active', '');\n\n if (this.variant === 'sheet') {\n // Aggiungi il bordo ai fratelli dell'elemento attivo tranne l'ultimo\n items.forEach((sibling, index) => {\n if (sibling !== item && index !== items.length - 1) {\n sibling.style.borderRight = `1px solid ${primaryColor}`; // Usa i backticks\n } else {\n sibling.style.borderRight = '1px solid transparent';\n }\n });\n\n // Rimuovi il bordo dal fratello precedente\n let previousSibling = item.previousElementSibling as any;\n if (previousSibling) {\n previousSibling.style.borderRight = '1px solid transparent';\n }\n }\n\n } else {\n item.removeAttribute('active');\n }\n });\n }\n\n let panel = this.JumpTabEl.querySelectorAll('jump-tab-panel');\n if (panel.length > 0) {\n panel.forEach((panel) => {\n if (panel.getAttribute('identifier') === event.detail.id) {\n panel.setAttribute('active', '');\n } else {\n panel.removeAttribute('active');\n }\n });\n }\n }\n\n\n componentDidLoad() {\n console.log('Component has been rendered');\n if(this.variant === 'sheet') {\n // Recupera il valore della variabile CSS\n const rootStyles = getComputedStyle(document.documentElement);\n const primaryColor = rootStyles.getPropertyValue('--neutral-grey-secondary').trim();\n\n // Seleziona tutti gli elementi jump-tab-item\n let items = this.JumpTabEl.querySelectorAll('jump-tab-item');\n if (items.length > 0) {\n items.forEach((item, index) => {\n // Aggiungi bordo destro a tutti tranne:\n // - l'ultimo elemento\n // - l'elemento attivo (avente classe \"active\")\n if (index === items.length - 1 || item.classList.contains('active')) {\n item.style.borderRight = '1px solid transparent';\n } else {\n item.style.borderRight = `1px solid ${primaryColor}`;\n }\n });\n }\n }\n\n }\n\n\n\n\n render() {\n return (\n <Host class=\"JumpTab\" id={this.tabGroupName} ref={(el) => {this.JumpTabEl = el;}}> \n <div class={\"JumpTab__Wrapper \" + this.variant}>\n <slot name=\"tab-item\"></slot>\n </div>\n <div>\n <slot name=\"tab-content\"></slot>\n </div>\n </Host>\n );\n }\n}"]}
1
+ {"version":3,"file":"jump-tab.js","sourceRoot":"","sources":["../../../src/components/jump-tab/jump-tab.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Host, Event, EventEmitter, Prop, h, Listen } from '@stencil/core';\n\n@Component({\n tag: 'jump-tab',\n styleUrl: 'jump-tab.scss',\n shadow: true,\n})\nexport class JumpTab {\n\n JumpTabEl: HTMLElement;\n /* ---------------------- @PROPERTIES ------------------------- */\n @Prop() tabGroupName: string = undefined;\n\n /**\n * The style of the tab. The same value must be passed to all the items.\n * Choosed from \"inline\", \"boxed\", \"sheet\", \"rounded\"\n */\n @Prop() variant: string = 'inline';\n\n @Event({ eventName: 'jump-change-activetab'}) setActiveTab: EventEmitter;\n\n @Listen('jump-change-active-tab')\n changeActiveTabHandler(event: CustomEvent) {\n this.setActiveTab.emit(event.detail);\n\n // Recupera il valore della variabile CSS\n const rootStyles = getComputedStyle(document.documentElement);\n const primaryColor = rootStyles.getPropertyValue('--neutral-grey-secondary').trim();\n\n let items = this.JumpTabEl.querySelectorAll('jump-tab-item');\n if (items.length > 0) {\n items.forEach((item) => {\n if (item.getAttribute('identifier') === event.detail.id) {\n item.setAttribute('active', '');\n\n if (this.variant === 'sheet') {\n // Aggiungi il bordo ai fratelli dell'elemento attivo tranne l'ultimo\n items.forEach((sibling, index) => {\n if (sibling !== item && index !== items.length - 1) {\n sibling.style.borderRight = `1px solid ${primaryColor}`; // Usa i backticks\n } else {\n sibling.style.borderRight = '1px solid transparent';\n }\n });\n\n // Rimuovi il bordo dal fratello precedente\n let previousSibling = item.previousElementSibling as any;\n if (previousSibling) {\n previousSibling.style.borderRight = '1px solid transparent';\n }\n }\n\n } else {\n item.removeAttribute('active');\n }\n });\n }\n\n let panel = this.JumpTabEl.querySelectorAll('jump-tab-panel');\n if (panel.length > 0) {\n panel.forEach((panel) => {\n if (panel.getAttribute('identifier') === event.detail.id) {\n panel.setAttribute('active', '');\n } else {\n panel.removeAttribute('active');\n }\n });\n }\n }\n\n\n componentDidLoad() {\n console.log('Component has been rendered');\n if(this.variant === 'sheet') {\n // Recupera il valore della variabile CSS\n const rootStyles = getComputedStyle(document.documentElement);\n const primaryColor = rootStyles.getPropertyValue('--neutral-grey-secondary').trim();\n\n // Seleziona tutti gli elementi jump-tab-item\n let items = this.JumpTabEl.querySelectorAll('jump-tab-item');\n if (items.length > 0) {\n items.forEach((item, index) => {\n // Aggiungi bordo destro a tutti tranne:\n // - l'ultimo elemento\n // - l'elemento attivo (avente classe \"active\")\n if (index === items.length - 1 || item.classList.contains('active')) {\n item.style.borderRight = '1px solid transparent';\n } else {\n item.style.borderRight = `1px solid ${primaryColor}`;\n }\n });\n }\n }\n\n }\n\n render() {\n return (\n <Host class=\"JumpTab\" id={this.tabGroupName} ref={(el) => {this.JumpTabEl = el;}}> \n <div class={\"Wrapper \" + this.variant}>\n <slot name=\"tab-item\"></slot>\n </div>\n <div>\n <slot name=\"tab-content\"></slot>\n </div>\n </Host>\n );\n }\n}"]}
@@ -19,9 +19,9 @@ export default {
19
19
  const Template = (args) => {
20
20
  const attributes = generateAttributesFromArgs(args);
21
21
  return formatHtml(`<jump-tab ${attributes}>
22
- <jump-tab-item identifier="tab1" variant=${args.variant} active label="Tab 1" icon-name="settings" slot="tab-item"></jump-tab-item>
23
- <jump-tab-item identifier="tab2" variant=${args.variant} label="Tab 2" icon-name="settings" slot="tab-item"></jump-tab-item>
24
- <jump-tab-item identifier="tab3" variant=${args.variant} label="Tab 3" icon-name="settings" slot="tab-item"></jump-tab-item>
22
+ <jump-tab-item identifier="tab1" variant=${args.variant} active label="Tab 1" icon-name="gear" slot="tab-item"></jump-tab-item>
23
+ <jump-tab-item identifier="tab2" variant=${args.variant} label="Tab 2" icon-name="gear" slot="tab-item"></jump-tab-item>
24
+ <jump-tab-item identifier="tab3" variant=${args.variant} label="Tab 3" icon-name="gear" slot="tab-item"></jump-tab-item>
25
25
  </jump-tab>`);
26
26
  };
27
27
  export const TabInline = Template.bind({});
@@ -42,9 +42,9 @@ TabRounded.args = {
42
42
  const TemplateDisabled = (args) => {
43
43
  const attributes = generateAttributesFromArgs(args);
44
44
  return formatHtml(`<jump-tab ${attributes}>
45
- <jump-tab-item identifier="tab1" active label="Tab 1" icon-name="settings" slot="tab-item"></jump-tab-item>
46
- <jump-tab-item identifier="tab2" label="Tab 2" icon-name="settings" slot="tab-item"></jump-tab-item>
47
- <jump-tab-item identifier="tab3" disabled label="Tab 3" icon-name="settings" slot="tab-item"></jump-tab-item>
45
+ <jump-tab-item identifier="tab1" active label="Tab 1" icon-name="gear" slot="tab-item"></jump-tab-item>
46
+ <jump-tab-item identifier="tab2" label="Tab 2" icon-name="gear" slot="tab-item"></jump-tab-item>
47
+ <jump-tab-item identifier="tab3" disabled label="Tab 3" icon-name="gear" slot="tab-item"></jump-tab-item>
48
48
  </jump-tab>`);
49
49
  };
50
50
  export const OneTabDisabled = TemplateDisabled.bind({});
@@ -56,10 +56,10 @@ const TemplateWithListenerExample = (args, data) => {
56
56
  let id = data.id;
57
57
  const attributes = generateAttributesFromArgs(args);
58
58
  return formatHtml(`<div style="background-color: #EEEEEE; padding: 2rem;"><jump-tab ${attributes}>
59
- <jump-tab-item identifier="tab1" active label="Tab 1" icon-name="settings" slot="tab-item"></jump-tab-item>
60
- <jump-tab-item identifier="tab2" label="Tab 2" icon-name="settings" slot="tab-item"></jump-tab-item>
61
- <jump-tab-item identifier="tab3" label="Tab 3" icon-name="settings" slot="tab-item"></jump-tab-item>
62
- <jump-tab-item identifier="tab4" label="Tab 4" icon-name="settings" slot="tab-item"></jump-tab-item>
59
+ <jump-tab-item identifier="tab1" active label="Tab 1" icon-name="gear" slot="tab-item"></jump-tab-item>
60
+ <jump-tab-item identifier="tab2" label="Tab 2" icon-name="gear" slot="tab-item"></jump-tab-item>
61
+ <jump-tab-item identifier="tab3" label="Tab 3" icon-name="gear" slot="tab-item"></jump-tab-item>
62
+ <jump-tab-item identifier="tab4" label="Tab 4" icon-name="gear" slot="tab-item"></jump-tab-item>
63
63
  </jump-tab>
64
64
  <div>La tab attiva ha l'id: <span id="active-tab">loading..<span></div>
65
65
  </div>
@@ -102,9 +102,9 @@ const TemplateWithPanel = (args, data) => {
102
102
  let id = data.id;
103
103
  const attributes = generateAttributesFromArgs(args);
104
104
  return formatHtml(`<jump-tab ${attributes}>
105
- <jump-tab-item identifier="tab1" active label="Tab 1" icon-name="settings" slot="tab-item"></jump-tab-item>
106
- <jump-tab-item identifier="tab2" label="Tab 2" icon-name="settings" slot="tab-item"></jump-tab-item>
107
- <jump-tab-item identifier="tab3" label="Tab 3" icon-name="settings" slot="tab-item"></jump-tab-item>
105
+ <jump-tab-item identifier="tab1" active label="Tab 1" icon-name="gear" slot="tab-item"></jump-tab-item>
106
+ <jump-tab-item identifier="tab2" label="Tab 2" icon-name="gear" slot="tab-item"></jump-tab-item>
107
+ <jump-tab-item identifier="tab3" label="Tab 3" icon-name="gear" slot="tab-item"></jump-tab-item>
108
108
  <jump-tab-panel identifier="tab1" active slot="tab-content">Tab 1 content</jump-tab-panel>
109
109
  <jump-tab-panel identifier="tab2" slot="tab-content">Tab 2 content</jump-tab-panel>
110
110
  <jump-tab-panel identifier="tab3" slot="tab-content">Tab 3 content</jump-tab-panel>
@@ -1 +1 @@
1
- {"version":3,"file":"jump-tab.stories.js","sourceRoot":"","sources":["../../../src/components/jump-tab/jump-tab.stories.ts"],"names":[],"mappings":"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","sourcesContent":["import { generateAttributesFromArgs, formatHtml} from '../../utils/utils';\n\nexport default {\n title: 'Components/Tab/Tabs',\n tags: ['autodocs'],\n argTypes: {\n tabGroupName: {\n name: 'tab-group-name',\n control: 'text',\n description: 'Indica la tab attiva',\n },\n variant: {\n name: 'variant',\n control: 'select',\n options: ['inline', 'boxed', 'sheet', 'rounded'],\n description: 'Stile del tab e di tutti i suoi item',\n }\n }\n}\n\nconst Template = (args) => {\n const attributes = generateAttributesFromArgs(args);\n return formatHtml(`<jump-tab ${attributes}>\n <jump-tab-item identifier=\"tab1\" variant=${args.variant} active label=\"Tab 1\" icon-name=\"settings\" slot=\"tab-item\"></jump-tab-item>\n <jump-tab-item identifier=\"tab2\" variant=${args.variant} label=\"Tab 2\" icon-name=\"settings\" slot=\"tab-item\"></jump-tab-item>\n <jump-tab-item identifier=\"tab3\" variant=${args.variant} label=\"Tab 3\" icon-name=\"settings\" slot=\"tab-item\"></jump-tab-item>\n </jump-tab>`);\n}\n\nexport const TabInline = Template.bind({});\n\nTabInline.args = {\n tabGroupName: 'Tab 1',\n variant: 'inline',\n};\n\nexport const TabBoxed = Template.bind({});\nTabBoxed.args = {\n tabGroupName: 'Tab 1',\n variant: 'boxed'\n};\n\n\nexport const TabRounded = Template.bind({});\nTabRounded.args = {\n tabGroupName: 'tabRounded',\n variant: 'rounded'\n};\n\nconst TemplateDisabled = (args) => {\n const attributes = generateAttributesFromArgs(args);\n return formatHtml(`<jump-tab ${attributes}>\n <jump-tab-item identifier=\"tab1\" active label=\"Tab 1\" icon-name=\"settings\" slot=\"tab-item\"></jump-tab-item>\n <jump-tab-item identifier=\"tab2\" label=\"Tab 2\" icon-name=\"settings\" slot=\"tab-item\"></jump-tab-item>\n <jump-tab-item identifier=\"tab3\" disabled label=\"Tab 3\" icon-name=\"settings\" slot=\"tab-item\"></jump-tab-item>\n </jump-tab>`);\n}\n\nexport const OneTabDisabled = TemplateDisabled.bind({});\nOneTabDisabled.args = {\n tabGroupName: 'Tab 1',\n variant: 'boxed'\n};\n\nconst TemplateWithListenerExample = (args, data) => {\n let id = data.id;\n const attributes = generateAttributesFromArgs(args);\n return formatHtml(`<div style=\"background-color: #EEEEEE; padding: 2rem;\"><jump-tab ${attributes}>\n <jump-tab-item identifier=\"tab1\" active label=\"Tab 1\" icon-name=\"settings\" slot=\"tab-item\"></jump-tab-item>\n <jump-tab-item identifier=\"tab2\" label=\"Tab 2\" icon-name=\"settings\" slot=\"tab-item\"></jump-tab-item>\n <jump-tab-item identifier=\"tab3\" label=\"Tab 3\" icon-name=\"settings\" slot=\"tab-item\"></jump-tab-item>\n <jump-tab-item identifier=\"tab4\" label=\"Tab 4\" icon-name=\"settings\" slot=\"tab-item\"></jump-tab-item>\n </jump-tab>\n <div>La tab attiva ha l'id: <span id=\"active-tab\">loading..<span></div>\n </div>\n <script>\n (function(){\n let container = document.querySelector('#story--${id}');\n container.querySelector('#active-tab').innerText = \"tab1\";\n container.querySelector('jump-tab').addEventListener('jump-change-activetab', (ev) => {\n container.querySelector('#active-tab').innerText = ev.detail.id;\n console.log('TemplateWithListenerExample - event:', ev.detail.id);\n });\n })();\n </script>`);\n};\n\nexport const TabInlineWithListener = TemplateWithListenerExample.bind({});\nTabInlineWithListener.args = { \n tabGroupName: 'tabInline',\n iconName: 'settings',\n variant: 'inline'\n};\n\nexport const TabBoxedWithListener = TemplateWithListenerExample.bind({});\nTabBoxedWithListener.args = { \n tabGroupName: 'tabBoxed',\n iconName: 'settings',\n variant: 'boxed'\n};\n\nexport const TaRoundedWithListener = TemplateWithListenerExample.bind({});\nTaRoundedWithListener.args = { \n tabGroupName: 'tabRounded',\n iconName: 'settings',\n variant: 'rounded'\n};\n\nexport const TabSheetWithListener = TemplateWithListenerExample.bind({});\nTabSheetWithListener.args = { \n tabGroupName: 'tabSheet',\n iconName: 'settings',\n variant: 'sheet'\n};\n\nconst TemplateWithPanel = (args,data) => {\n let id = data.id;\n const attributes = generateAttributesFromArgs(args);\n return formatHtml(`<jump-tab ${attributes}>\n <jump-tab-item identifier=\"tab1\" active label=\"Tab 1\" icon-name=\"settings\" slot=\"tab-item\"></jump-tab-item>\n <jump-tab-item identifier=\"tab2\" label=\"Tab 2\" icon-name=\"settings\" slot=\"tab-item\"></jump-tab-item>\n <jump-tab-item identifier=\"tab3\" label=\"Tab 3\" icon-name=\"settings\" slot=\"tab-item\"></jump-tab-item>\n <jump-tab-panel identifier=\"tab1\" active slot=\"tab-content\">Tab 1 content</jump-tab-panel>\n <jump-tab-panel identifier=\"tab2\" slot=\"tab-content\">Tab 2 content</jump-tab-panel>\n <jump-tab-panel identifier=\"tab3\" slot=\"tab-content\">Tab 3 content</jump-tab-panel>\n </jump-tab> <div>La tab attiva ha l'id: <span id=\"active-tab\">loading..<span></div>\n </div><script>\n (function(){\n let container = document.querySelector('#story--${id}');\n container.querySelector('#active-tab').innerText = \"tab1\";\n container.querySelector('jump-tab').addEventListener('jump-change-activetab', (ev) => {\n container.querySelector('#active-tab').innerText = ev.detail.id;\n console.log('TemplateWithPanel - event:', ev.detail.id);\n });\n })();\n </script>\n `);\n}\n\nexport const TabInlineWithPanel = TemplateWithPanel.bind({});\n\nTabInlineWithPanel.args = {\n tabGroupName: 'Tab 1',\n variant: 'rounded',\n};"]}
1
+ {"version":3,"file":"jump-tab.stories.js","sourceRoot":"","sources":["../../../src/components/jump-tab/jump-tab.stories.ts"],"names":[],"mappings":"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","sourcesContent":["import { generateAttributesFromArgs, formatHtml} from '../../utils/utils';\n\nexport default {\n title: 'Components/Tab/Tabs',\n tags: ['autodocs'],\n argTypes: {\n tabGroupName: {\n name: 'tab-group-name',\n control: 'text',\n description: 'Indica la tab attiva',\n },\n variant: {\n name: 'variant',\n control: 'select',\n options: ['inline', 'boxed', 'sheet', 'rounded'],\n description: 'Stile del tab e di tutti i suoi item',\n }\n }\n}\n\nconst Template = (args) => {\n const attributes = generateAttributesFromArgs(args);\n return formatHtml(`<jump-tab ${attributes}>\n <jump-tab-item identifier=\"tab1\" variant=${args.variant} active label=\"Tab 1\" icon-name=\"gear\" slot=\"tab-item\"></jump-tab-item>\n <jump-tab-item identifier=\"tab2\" variant=${args.variant} label=\"Tab 2\" icon-name=\"gear\" slot=\"tab-item\"></jump-tab-item>\n <jump-tab-item identifier=\"tab3\" variant=${args.variant} label=\"Tab 3\" icon-name=\"gear\" slot=\"tab-item\"></jump-tab-item>\n </jump-tab>`);\n}\n\nexport const TabInline = Template.bind({});\n\nTabInline.args = {\n tabGroupName: 'Tab 1',\n variant: 'inline',\n};\n\nexport const TabBoxed = Template.bind({});\nTabBoxed.args = {\n tabGroupName: 'Tab 1',\n variant: 'boxed'\n};\n\n\nexport const TabRounded = Template.bind({});\nTabRounded.args = {\n tabGroupName: 'tabRounded',\n variant: 'rounded'\n};\n\nconst TemplateDisabled = (args) => {\n const attributes = generateAttributesFromArgs(args);\n return formatHtml(`<jump-tab ${attributes}>\n <jump-tab-item identifier=\"tab1\" active label=\"Tab 1\" icon-name=\"gear\" slot=\"tab-item\"></jump-tab-item>\n <jump-tab-item identifier=\"tab2\" label=\"Tab 2\" icon-name=\"gear\" slot=\"tab-item\"></jump-tab-item>\n <jump-tab-item identifier=\"tab3\" disabled label=\"Tab 3\" icon-name=\"gear\" slot=\"tab-item\"></jump-tab-item>\n </jump-tab>`);\n}\n\nexport const OneTabDisabled = TemplateDisabled.bind({});\nOneTabDisabled.args = {\n tabGroupName: 'Tab 1',\n variant: 'boxed'\n};\n\nconst TemplateWithListenerExample = (args, data) => {\n let id = data.id;\n const attributes = generateAttributesFromArgs(args);\n return formatHtml(`<div style=\"background-color: #EEEEEE; padding: 2rem;\"><jump-tab ${attributes}>\n <jump-tab-item identifier=\"tab1\" active label=\"Tab 1\" icon-name=\"gear\" slot=\"tab-item\"></jump-tab-item>\n <jump-tab-item identifier=\"tab2\" label=\"Tab 2\" icon-name=\"gear\" slot=\"tab-item\"></jump-tab-item>\n <jump-tab-item identifier=\"tab3\" label=\"Tab 3\" icon-name=\"gear\" slot=\"tab-item\"></jump-tab-item>\n <jump-tab-item identifier=\"tab4\" label=\"Tab 4\" icon-name=\"gear\" slot=\"tab-item\"></jump-tab-item>\n </jump-tab>\n <div>La tab attiva ha l'id: <span id=\"active-tab\">loading..<span></div>\n </div>\n <script>\n (function(){\n let container = document.querySelector('#story--${id}');\n container.querySelector('#active-tab').innerText = \"tab1\";\n container.querySelector('jump-tab').addEventListener('jump-change-activetab', (ev) => {\n container.querySelector('#active-tab').innerText = ev.detail.id;\n console.log('TemplateWithListenerExample - event:', ev.detail.id);\n });\n })();\n </script>`);\n};\n\nexport const TabInlineWithListener = TemplateWithListenerExample.bind({});\nTabInlineWithListener.args = { \n tabGroupName: 'tabInline',\n iconName: 'settings',\n variant: 'inline'\n};\n\nexport const TabBoxedWithListener = TemplateWithListenerExample.bind({});\nTabBoxedWithListener.args = { \n tabGroupName: 'tabBoxed',\n iconName: 'settings',\n variant: 'boxed'\n};\n\nexport const TaRoundedWithListener = TemplateWithListenerExample.bind({});\nTaRoundedWithListener.args = { \n tabGroupName: 'tabRounded',\n iconName: 'settings',\n variant: 'rounded'\n};\n\nexport const TabSheetWithListener = TemplateWithListenerExample.bind({});\nTabSheetWithListener.args = { \n tabGroupName: 'tabSheet',\n iconName: 'settings',\n variant: 'sheet'\n};\n\nconst TemplateWithPanel = (args,data) => {\n let id = data.id;\n const attributes = generateAttributesFromArgs(args);\n return formatHtml(`<jump-tab ${attributes}>\n <jump-tab-item identifier=\"tab1\" active label=\"Tab 1\" icon-name=\"gear\" slot=\"tab-item\"></jump-tab-item>\n <jump-tab-item identifier=\"tab2\" label=\"Tab 2\" icon-name=\"gear\" slot=\"tab-item\"></jump-tab-item>\n <jump-tab-item identifier=\"tab3\" label=\"Tab 3\" icon-name=\"gear\" slot=\"tab-item\"></jump-tab-item>\n <jump-tab-panel identifier=\"tab1\" active slot=\"tab-content\">Tab 1 content</jump-tab-panel>\n <jump-tab-panel identifier=\"tab2\" slot=\"tab-content\">Tab 2 content</jump-tab-panel>\n <jump-tab-panel identifier=\"tab3\" slot=\"tab-content\">Tab 3 content</jump-tab-panel>\n </jump-tab> <div>La tab attiva ha l'id: <span id=\"active-tab\">loading..<span></div>\n </div><script>\n (function(){\n let container = document.querySelector('#story--${id}');\n container.querySelector('#active-tab').innerText = \"tab1\";\n container.querySelector('jump-tab').addEventListener('jump-change-activetab', (ev) => {\n container.querySelector('#active-tab').innerText = ev.detail.id;\n console.log('TemplateWithPanel - event:', ev.detail.id);\n });\n })();\n </script>\n `);\n}\n\nexport const TabInlineWithPanel = TemplateWithPanel.bind({});\n\nTabInlineWithPanel.args = {\n tabGroupName: 'Tab 1',\n variant: 'rounded',\n};"]}
@@ -1,5 +1,4 @@
1
1
  import { generateAttributesFromArgs, formatHtml } from "../../utils/utils";
2
- import feather from "feather-icons";
3
2
  export default {
4
3
  title: 'Components/Tab/Item/Boxed',
5
4
  tags: ['autodocs'],
@@ -16,9 +15,8 @@ export default {
16
15
  },
17
16
  iconName: {
18
17
  name: 'icon-name',
19
- control: 'select',
20
- options: Object.keys(feather.icons),
21
- description: 'Nome dell\'icona'
18
+ control: 'text',
19
+ description: "Seleziona il nome dal seguente <a href='https://fontawesome.com/search' target='_blank'>link</a>"
22
20
  },
23
21
  iconPosition: {
24
22
  name: 'icon-position',
@@ -47,7 +45,7 @@ const Template = (args) => {
47
45
  export const TabBoxedItem = Template.bind({});
48
46
  TabBoxedItem.args = {
49
47
  label: 'Tab1',
50
- iconName: 'settings',
48
+ iconName: 'gear',
51
49
  iconPosition: 'left',
52
50
  active: true,
53
51
  identifier: 'tab1',
@@ -1 +1 @@
1
- {"version":3,"file":"jump-tab-item-boxed.stories.js","sourceRoot":"","sources":["../../../src/components/jump-tab-item/jump-tab-item-boxed.stories.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,UAAU,EAAC,MAAM,mBAAmB,CAAC;AAC1E,OAAO,OAAO,MAAM,eAAe,CAAC;AAEpC,eAAe;IACX,KAAK,EAAE,2BAA2B;IAClC,IAAI,EAAE,CAAC,UAAU,CAAC;IAClB,QAAQ,EAAE;QACL,UAAU,EAAE;YACT,IAAI,EAAE,YAAY;YAClB,OAAO,EAAE,MAAM;YACf,WAAW,EAAE,0BAA0B;SAC1C;QACD,KAAK,EAAE;YACH,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,MAAM;YACf,WAAW,EAAE,iBAAiB;SACjC;QACD,QAAQ,EAAE;YACN,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,QAAQ;YACjB,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;YACnC,WAAW,EAAE,kBAAkB;SAClC;QACD,YAAY,EAAE;YACV,IAAI,EAAE,eAAe;YACrB,OAAO,EAAE,QAAQ;YACjB,OAAO,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC;YACxB,WAAW,EAAE,uBAAuB;SACvC;QACD,MAAM,EAAE;YACJ,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,SAAS;YAClB,WAAW,EAAE,YAAY;SAC5B;QACD,QAAQ,EAAE;YACN,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,SAAS;YAClB,WAAW,EAAE,kBAAkB;SAClC;KACJ;CACJ,CAAA;AAED,MAAM,QAAQ,GAAG,CAAC,IAAI,EAAE,EAAE;IACtB,MAAM,UAAU,GAAG,0BAA0B,CAAC,IAAI,CAAC,CAAC;IACpD,OAAO,UAAU,CAAC;qCACe,UAAU;gBAC/B,CAAC,CAAC;AAClB,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC9C,YAAY,CAAC,IAAI,GAAG;IAChB,KAAK,EAAE,MAAM;IACb,QAAQ,EAAE,UAAU;IACpB,YAAY,EAAE,MAAM;IACpB,MAAM,EAAE,IAAI;IACZ,UAAU,EAAE,MAAM;IAClB,QAAQ,EAAE,KAAK;CAClB,CAAC","sourcesContent":["import { generateAttributesFromArgs, formatHtml} from '../../utils/utils';\nimport feather from 'feather-icons';\n\nexport default {\n title: 'Components/Tab/Item/Boxed',\n tags: ['autodocs'],\n argTypes: {\n identifier: {\n name: 'identifier',\n control: 'text',\n description: 'Identificatore della tab',\n },\n label: {\n name: 'label',\n control: 'text',\n description: 'Label della tab',\n },\n iconName: { \n name: 'icon-name',\n control: 'select',\n options: Object.keys(feather.icons),\n description: 'Nome dell\\'icona'\n },\n iconPosition: {\n name: 'icon-position',\n control: 'select',\n options: ['left', 'top'],\n description: 'Posizione dell\\'icona'\n },\n active: {\n name: 'active',\n control: 'boolean',\n description: 'Tab attiva'\n },\n disabled: {\n name: 'disabled',\n control: 'boolean',\n description: 'Tab disabilitata'\n }\n }\n}\n\nconst Template = (args) => {\n const attributes = generateAttributesFromArgs(args);\n return formatHtml(`<jump-tab variant=\"boxed\" tab-group-name=\"tabBoxed\">\n <jump-tab-item slot=\"tab-item\" ${attributes}></jump-tab-item>\n </jump-tab>`);\n}\n\nexport const TabBoxedItem = Template.bind({});\nTabBoxedItem.args = {\n label: 'Tab1',\n iconName: 'settings',\n iconPosition: 'left',\n active: true,\n identifier: 'tab1',\n disabled: false\n};"]}
1
+ {"version":3,"file":"jump-tab-item-boxed.stories.js","sourceRoot":"","sources":["../../../src/components/jump-tab-item/jump-tab-item-boxed.stories.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,UAAU,EAAC,MAAM,mBAAmB,CAAC;AAE1E,eAAe;IACX,KAAK,EAAE,2BAA2B;IAClC,IAAI,EAAE,CAAC,UAAU,CAAC;IAClB,QAAQ,EAAE;QACN,UAAU,EAAE;YACR,IAAI,EAAE,YAAY;YAClB,OAAO,EAAE,MAAM;YACf,WAAW,EAAE,0BAA0B;SAC1C;QACD,KAAK,EAAE;YACH,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,MAAM;YACf,WAAW,EAAE,iBAAiB;SACjC;QACD,QAAQ,EAAE;YACN,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,MAAM;YACf,WAAW,EAAE,kGAAkG;SAClH;QACD,YAAY,EAAE;YACV,IAAI,EAAE,eAAe;YACrB,OAAO,EAAE,QAAQ;YACjB,OAAO,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC;YACxB,WAAW,EAAE,uBAAuB;SACvC;QACD,MAAM,EAAE;YACJ,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,SAAS;YAClB,WAAW,EAAE,YAAY;SAC5B;QACD,QAAQ,EAAE;YACN,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,SAAS;YAClB,WAAW,EAAE,kBAAkB;SAClC;KACJ;CACJ,CAAA;AAED,MAAM,QAAQ,GAAG,CAAC,IAAI,EAAE,EAAE;IACtB,MAAM,UAAU,GAAG,0BAA0B,CAAC,IAAI,CAAC,CAAC;IACpD,OAAO,UAAU,CAAC;qCACe,UAAU;gBAC/B,CAAC,CAAC;AAClB,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC9C,YAAY,CAAC,IAAI,GAAG;IAChB,KAAK,EAAE,MAAM;IACb,QAAQ,EAAE,MAAM;IAChB,YAAY,EAAE,MAAM;IACpB,MAAM,EAAE,IAAI;IACZ,UAAU,EAAE,MAAM;IAClB,QAAQ,EAAE,KAAK;CAClB,CAAC","sourcesContent":["import { generateAttributesFromArgs, formatHtml} from '../../utils/utils';\n\nexport default {\n title: 'Components/Tab/Item/Boxed',\n tags: ['autodocs'],\n argTypes: {\n identifier: {\n name: 'identifier',\n control: 'text',\n description: 'Identificatore della tab',\n },\n label: {\n name: 'label',\n control: 'text',\n description: 'Label della tab',\n },\n iconName: { \n name: 'icon-name',\n control: 'text',\n description: \"Seleziona il nome dal seguente <a href='https://fontawesome.com/search' target='_blank'>link</a>\"\n },\n iconPosition: {\n name: 'icon-position',\n control: 'select',\n options: ['left', 'top'],\n description: 'Posizione dell\\'icona'\n },\n active: {\n name: 'active',\n control: 'boolean',\n description: 'Tab attiva'\n },\n disabled: {\n name: 'disabled',\n control: 'boolean',\n description: 'Tab disabilitata'\n }\n }\n}\n\nconst Template = (args) => {\n const attributes = generateAttributesFromArgs(args);\n return formatHtml(`<jump-tab variant=\"boxed\" tab-group-name=\"tabBoxed\">\n <jump-tab-item slot=\"tab-item\" ${attributes}></jump-tab-item>\n </jump-tab>`);\n}\n\nexport const TabBoxedItem = Template.bind({});\nTabBoxedItem.args = {\n label: 'Tab1',\n iconName: 'gear',\n iconPosition: 'left',\n active: true,\n identifier: 'tab1',\n disabled: false\n};"]}
@@ -1,5 +1,4 @@
1
1
  import { generateAttributesFromArgs, formatHtml } from "../../utils/utils";
2
- import feather from "feather-icons";
3
2
  export default {
4
3
  title: 'Components/Tab/Item/Inline',
5
4
  tags: ['autodocs'],
@@ -16,9 +15,8 @@ export default {
16
15
  },
17
16
  iconName: {
18
17
  name: 'icon-name',
19
- control: 'select',
20
- options: Object.keys(feather.icons),
21
- description: 'Nome dell\'icona'
18
+ control: 'text',
19
+ description: "Seleziona il nome dal seguente <a href='https://fontawesome.com/search' target='_blank'>link</a>"
22
20
  },
23
21
  iconPosition: {
24
22
  name: 'icon-position',
@@ -47,7 +45,7 @@ const Template = (args) => {
47
45
  export const TabItem = Template.bind({});
48
46
  TabItem.args = {
49
47
  label: 'Tab1',
50
- iconName: 'settings',
48
+ iconName: 'gear',
51
49
  iconPosition: 'left',
52
50
  active: true,
53
51
  variant: 'inline',
@@ -1 +1 @@
1
- {"version":3,"file":"jump-tab-item-inline.stories.js","sourceRoot":"","sources":["../../../src/components/jump-tab-item/jump-tab-item-inline.stories.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,UAAU,EAAC,MAAM,mBAAmB,CAAC;AAC1E,OAAO,OAAO,MAAM,eAAe,CAAC;AAEpC,eAAe;IACX,KAAK,EAAE,4BAA4B;IACnC,IAAI,EAAE,CAAC,UAAU,CAAC;IAClB,QAAQ,EAAE;QACN,UAAU,EAAE;YACR,IAAI,EAAE,YAAY;YAClB,OAAO,EAAE,MAAM;YACf,WAAW,EAAE,0BAA0B;SAC1C;QACD,KAAK,EAAE;YACH,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,MAAM;YACf,WAAW,EAAE,iBAAiB;SACjC;QACD,QAAQ,EAAE;YACN,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,QAAQ;YACjB,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;YACnC,WAAW,EAAE,kBAAkB;SAClC;QACD,YAAY,EAAE;YACV,IAAI,EAAE,eAAe;YACrB,OAAO,EAAE,QAAQ;YACjB,OAAO,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC;YACxB,WAAW,EAAE,uBAAuB;SACvC;QACD,MAAM,EAAE;YACJ,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,SAAS;YAClB,WAAW,EAAE,YAAY;SAC5B;QACD,QAAQ,EAAE;YACN,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,SAAS;YAClB,WAAW,EAAE,kBAAkB;SAClC;KACJ;CACJ,CAAA;AAED,MAAM,QAAQ,GAAG,CAAC,IAAI,EAAE,EAAE;IACtB,MAAM,UAAU,GAAG,0BAA0B,CAAC,IAAI,CAAC,CAAC;IACpD,OAAO,UAAU,CAAC;qCACe,UAAU;gBAC/B,CAAC,CAAC;AAClB,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACzC,OAAO,CAAC,IAAI,GAAG;IACX,KAAK,EAAE,MAAM;IACb,QAAQ,EAAE,UAAU;IACpB,YAAY,EAAE,MAAM;IACpB,MAAM,EAAE,IAAI;IACZ,OAAO,EAAE,QAAQ;IACjB,QAAQ,EAAE,KAAK;CAClB,CAAC","sourcesContent":["import { generateAttributesFromArgs, formatHtml} from '../../utils/utils';\nimport feather from 'feather-icons';\n\nexport default {\n title: 'Components/Tab/Item/Inline',\n tags: ['autodocs'],\n argTypes: {\n identifier: {\n name: 'identifier',\n control: 'text',\n description: 'Identificatore della tab',\n },\n label: {\n name: 'label',\n control: 'text',\n description: 'Label della tab',\n },\n iconName: { \n name: 'icon-name',\n control: 'select',\n options: Object.keys(feather.icons),\n description: 'Nome dell\\'icona'\n },\n iconPosition: {\n name: 'icon-position',\n control: 'select',\n options: ['left', 'top'],\n description: 'Posizione dell\\'icona'\n },\n active: {\n name: 'active',\n control: 'boolean',\n description: 'Tab attiva'\n },\n disabled: {\n name: 'disabled',\n control: 'boolean',\n description: 'Tab disabilitata'\n }\n }\n}\n\nconst Template = (args) => {\n const attributes = generateAttributesFromArgs(args);\n return formatHtml(`<jump-tab variant=\"inline\" tab-group-name=\"tabInline\">\n <jump-tab-item slot=\"tab-item\" ${attributes}></jump-tab-item>\n </jump-tab>`);\n}\n\nexport const TabItem = Template.bind({});\nTabItem.args = {\n label: 'Tab1',\n iconName: 'settings',\n iconPosition: 'left',\n active: true,\n variant: 'inline',\n disabled: false\n};"]}
1
+ {"version":3,"file":"jump-tab-item-inline.stories.js","sourceRoot":"","sources":["../../../src/components/jump-tab-item/jump-tab-item-inline.stories.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,UAAU,EAAC,MAAM,mBAAmB,CAAC;AAE1E,eAAe;IACX,KAAK,EAAE,4BAA4B;IACnC,IAAI,EAAE,CAAC,UAAU,CAAC;IAClB,QAAQ,EAAE;QACN,UAAU,EAAE;YACR,IAAI,EAAE,YAAY;YAClB,OAAO,EAAE,MAAM;YACf,WAAW,EAAE,0BAA0B;SAC1C;QACD,KAAK,EAAE;YACH,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,MAAM;YACf,WAAW,EAAE,iBAAiB;SACjC;QACF,QAAQ,EAAE;YACL,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,MAAM;YACf,WAAW,EAAE,kGAAkG;SAClH;QACD,YAAY,EAAE;YACV,IAAI,EAAE,eAAe;YACrB,OAAO,EAAE,QAAQ;YACjB,OAAO,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC;YACxB,WAAW,EAAE,uBAAuB;SACvC;QACD,MAAM,EAAE;YACJ,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,SAAS;YAClB,WAAW,EAAE,YAAY;SAC5B;QACD,QAAQ,EAAE;YACN,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,SAAS;YAClB,WAAW,EAAE,kBAAkB;SAClC;KACJ;CACJ,CAAA;AAED,MAAM,QAAQ,GAAG,CAAC,IAAI,EAAE,EAAE;IACtB,MAAM,UAAU,GAAG,0BAA0B,CAAC,IAAI,CAAC,CAAC;IACpD,OAAO,UAAU,CAAC;qCACe,UAAU;gBAC/B,CAAC,CAAC;AAClB,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACzC,OAAO,CAAC,IAAI,GAAG;IACX,KAAK,EAAE,MAAM;IACb,QAAQ,EAAE,MAAM;IAChB,YAAY,EAAE,MAAM;IACpB,MAAM,EAAE,IAAI;IACZ,OAAO,EAAE,QAAQ;IACjB,QAAQ,EAAE,KAAK;CAClB,CAAC","sourcesContent":["import { generateAttributesFromArgs, formatHtml} from '../../utils/utils';\n\nexport default {\n title: 'Components/Tab/Item/Inline',\n tags: ['autodocs'],\n argTypes: {\n identifier: {\n name: 'identifier',\n control: 'text',\n description: 'Identificatore della tab',\n },\n label: {\n name: 'label',\n control: 'text',\n description: 'Label della tab',\n },\n iconName: { \n name: 'icon-name',\n control: 'text',\n description: \"Seleziona il nome dal seguente <a href='https://fontawesome.com/search' target='_blank'>link</a>\"\n },\n iconPosition: {\n name: 'icon-position',\n control: 'select',\n options: ['left', 'top'],\n description: 'Posizione dell\\'icona'\n },\n active: {\n name: 'active',\n control: 'boolean',\n description: 'Tab attiva'\n },\n disabled: {\n name: 'disabled',\n control: 'boolean',\n description: 'Tab disabilitata'\n }\n }\n}\n\nconst Template = (args) => {\n const attributes = generateAttributesFromArgs(args);\n return formatHtml(`<jump-tab variant=\"inline\" tab-group-name=\"tabInline\">\n <jump-tab-item slot=\"tab-item\" ${attributes}></jump-tab-item>\n </jump-tab>`);\n}\n\nexport const TabItem = Template.bind({});\nTabItem.args = {\n label: 'Tab1',\n iconName: 'gear',\n iconPosition: 'left',\n active: true,\n variant: 'inline',\n disabled: false\n};"]}
@@ -1,8 +1,5 @@
1
1
  :host {
2
2
  display: block;
3
- }
4
-
5
- .JumpTabItem {
6
3
  --jump-tabitem-active-color: var(--secondary-standard);
7
4
  --jump-tabitem-color: var(--neutral-grey-secondary);
8
5
  --jump-tabitem-hover-color: var(--neutral-grey-disabled, #CBCBCB);
@@ -10,17 +7,7 @@
10
7
  --jump-tabitem-rounded-bg-color: white;
11
8
  font-family: var(--ff-primary);
12
9
  }
13
- .JumpTabItem.inline {
14
- border-bottom: 1px solid var(--jump-tabitem-hover-color);
15
- }
16
- .JumpTabItem.inline:hover:not(.disabled):not(.active) {
17
- border-bottom: 3px solid var(--jump-tabitem-hover-color);
18
- cursor: pointer;
19
- }
20
- .JumpTabItem.inline.active {
21
- border-bottom: 3px solid var(--jump-tabitem-active-color);
22
- }
23
- .JumpTabItem__Content {
10
+ :host .Content {
24
11
  display: flex;
25
12
  /*Tipologia inline */
26
13
  /* Tipologia boxed */
@@ -28,82 +15,95 @@
28
15
  /** Tipologia sheet */
29
16
  /* Disabilitato */
30
17
  }
31
- .JumpTabItem__Content label {
18
+ :host .Content label {
32
19
  font-size: 16px;
33
20
  }
34
- .JumpTabItem__Content.left {
21
+ :host .Content.left {
35
22
  flex-direction: row;
36
23
  gap: 6px;
37
24
  align-items: center;
38
25
  }
39
- .JumpTabItem__Content.top {
26
+ :host .Content.top {
40
27
  flex-direction: column;
41
28
  gap: 2px;
42
29
  align-items: center;
43
30
  }
44
- .JumpTabItem__Content.inline {
31
+ :host .Content.inline {
45
32
  color: var(--jump-tabitem-color);
46
33
  padding: 12px 24px;
47
34
  }
48
- .JumpTabItem__Content.inline.active {
35
+ :host .Content.inline.active {
49
36
  color: var(--jump-tabitem-active-color);
50
37
  }
51
- .JumpTabItem__Content.inline.active span {
38
+ :host .Content.inline.active span {
52
39
  font-weight: bold;
53
40
  }
54
- .JumpTabItem__Content.boxed {
41
+ :host .Content.boxed {
55
42
  color: var(--jump-tabitem-color);
56
43
  padding: 15px 39px;
57
44
  background-color: transparent;
58
45
  border: 1px solid var(--jump-tabitem-boxed-bg-color);
59
46
  }
60
- .JumpTabItem__Content.boxed:hover:not(.disabled), .JumpTabItem__Content.boxed:hover:not(.active) {
47
+ :host .Content.boxed:hover:not(.disabled), :host .Content.boxed:hover:not(.active) {
61
48
  background-color: transparent;
62
49
  }
63
- .JumpTabItem__Content.boxed:hover:not(.disabled) span, .JumpTabItem__Content.boxed:hover:not(.active) span {
50
+ :host .Content.boxed:hover:not(.disabled) span, :host .Content.boxed:hover:not(.active) span {
64
51
  font-weight: bold;
65
52
  }
66
- .JumpTabItem__Content.boxed.active {
53
+ :host .Content.boxed.active {
67
54
  color: var(--jump-tabitem-active-color);
68
55
  background-color: var(--jump-tabitem-boxed-bg-color);
69
56
  border: 1px solid var(--jump-tabitem-boxed-bg-color);
70
57
  }
71
- .JumpTabItem__Content.boxed.active span {
58
+ :host .Content.boxed.active span {
72
59
  font-weight: bold;
73
60
  }
74
- .JumpTabItem__Content.rounded {
61
+ :host .Content.rounded {
75
62
  padding: 12px 32px;
76
63
  color: var(--jump-tabitem-color);
77
64
  }
78
- .JumpTabItem__Content.rounded:hover:not(.disabled) {
65
+ :host .Content.rounded:hover:not(.disabled) {
79
66
  cursor: pointer;
80
67
  }
81
- .JumpTabItem__Content.rounded:hover:not(.disabled) span {
68
+ :host .Content.rounded:hover:not(.disabled) span {
82
69
  font-weight: bold;
83
70
  }
84
- .JumpTabItem__Content.rounded.active {
71
+ :host .Content.rounded.active {
85
72
  color: var(--jump-tabitem-active-color);
86
73
  background-color: var(--jump-tabitem-rounded-bg-color);
87
74
  border: 1px solid var(--jump-tabitem-active-color);
88
75
  border-radius: 50px;
89
76
  }
90
- .JumpTabItem__Content.sheet {
77
+ :host .Content.sheet {
91
78
  padding: 12px 32px;
92
79
  color: var(--neutral-grey-secondary);
93
80
  }
94
- .JumpTabItem__Content.sheet:hover:not(.disabled) {
81
+ :host .Content.sheet:hover:not(.disabled) {
95
82
  cursor: pointer;
96
83
  }
97
- .JumpTabItem__Content.sheet:hover:not(.disabled) span {
84
+ :host .Content.sheet:hover:not(.disabled) span {
98
85
  font-weight: bold;
99
86
  }
100
- .JumpTabItem__Content.sheet.active {
87
+ :host .Content.sheet.active {
101
88
  color: var(--jump-tabitem-active-color);
102
89
  background-color: var(--jump-tabitem-rounded-bg-color);
103
90
  border-radius: 8px 8px 0px 0px;
104
91
  }
105
- .JumpTabItem__Content.disabled {
92
+ :host .Content.disabled {
106
93
  cursor: not-allowed;
107
94
  opacity: 0.5;
108
95
  pointer-events: none;
96
+ }
97
+
98
+ :host(.inline) {
99
+ border-bottom: 1px solid var(--jump-tabitem-hover-color);
100
+ }
101
+
102
+ :host(.inline):hover:not(.disabled):not(.active) {
103
+ border-bottom: 3px solid var(--jump-tabitem-hover-color);
104
+ cursor: pointer;
105
+ }
106
+
107
+ :host(.inline.active) {
108
+ border-bottom: 3px solid var(--jump-tabitem-active-color);
109
109
  }
@@ -19,10 +19,11 @@ export class JumpTabItem {
19
19
  this.variant = parentVariant;
20
20
  }
21
21
  render() {
22
- return (h(Host, { key: '82864ca72b0febf6a25431ad2788b11e80744d57', ref: (el) => { this.tabEl = el; }, class: "JumpTabItem " + (this.active ? 'active' : '') + " " + (this.variant) }, h("div", { key: '9275613b491731afc823f0c63be2ae797b372fa6', class: "JumpTabItem__Content " + (this.iconName ? this.iconPosition : '') + " " + (this.variant) + " " + (this.active ? 'active' : '') + " " + (this.disabled ? 'disabled' : ''), onClick: () => this.changeTab(this.identifier), id: this.identifier }, (this.iconName && (this.variant == 'inline' || this.variant == 'boxed')) &&
23
- h("jump-icon", { key: 'fcd4ab436a0695fdf3ca07f2ca9d1a6343c79d56', class: "small", name: this.iconName }), h("span", { key: '1d518eb336443596c090beafe74b5186f0a1ff37', class: "label" }, this.label))));
22
+ return (h(Host, { key: '99a63732d7cc75ed92a2b7fb9469a2bf18d75235', ref: (el) => { this.tabEl = el; }, class: "JumpTabItem " + (this.active ? 'active' : '') + " " + (this.variant) }, h("div", { key: 'ee7170cae00c17615e5e528bf103aebd9d97b45f', class: "Content " + (this.iconName ? this.iconPosition : '') + " " + (this.variant) + " " + (this.active ? 'active' : '') + " " + (this.disabled ? 'disabled' : ''), onClick: () => this.changeTab(this.identifier), id: this.identifier }, (this.iconName && (this.variant == 'inline' || this.variant == 'boxed')) &&
23
+ h("jump-icon", { key: 'd198fc5756bd145454d7298969905e8bcf306b20', library: "fa", category: "regular", name: this.iconName, size: "small" }), h("span", { key: 'bc008babf73fef929062f127a8eb976405046434', class: "label" }, this.label))));
24
24
  }
25
25
  static get is() { return "jump-tab-item"; }
26
+ static get encapsulation() { return "shadow"; }
26
27
  static get originalStyleUrls() {
27
28
  return {
28
29
  "$": ["jump-tab-item.scss"]