@lukso/web-components 1.69.0 → 1.70.1

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 (75) hide show
  1. package/dist/components/index.cjs +10 -5
  2. package/dist/components/index.d.ts +1 -0
  3. package/dist/components/index.d.ts.map +1 -1
  4. package/dist/components/index.js +6 -5
  5. package/dist/components/lukso-button/index.cjs +3 -3
  6. package/dist/components/lukso-button/index.js +3 -3
  7. package/dist/components/lukso-card/index.cjs +68 -45
  8. package/dist/components/lukso-card/index.d.ts +4 -4
  9. package/dist/components/lukso-card/index.d.ts.map +1 -1
  10. package/dist/components/lukso-card/index.js +68 -45
  11. package/dist/components/lukso-checkbox/index.cjs +3 -3
  12. package/dist/components/lukso-checkbox/index.js +3 -3
  13. package/dist/components/lukso-footer/index.cjs +2 -2
  14. package/dist/components/lukso-footer/index.js +2 -2
  15. package/dist/components/lukso-icon/index.cjs +3 -3
  16. package/dist/components/lukso-icon/index.js +3 -3
  17. package/dist/components/lukso-image/index.cjs +127 -0
  18. package/dist/components/lukso-image/index.d.ts +20 -0
  19. package/dist/components/lukso-image/index.d.ts.map +1 -0
  20. package/dist/components/lukso-image/index.js +125 -0
  21. package/dist/components/lukso-image/lukso-image.stories.d.ts +14 -0
  22. package/dist/components/lukso-image/lukso-image.stories.d.ts.map +1 -0
  23. package/dist/components/lukso-input/index.cjs +3 -3
  24. package/dist/components/lukso-input/index.js +3 -3
  25. package/dist/components/lukso-modal/index.cjs +2 -2
  26. package/dist/components/lukso-modal/index.js +2 -2
  27. package/dist/components/lukso-navbar/index.cjs +5 -5
  28. package/dist/components/lukso-navbar/index.js +5 -5
  29. package/dist/components/lukso-profile/index.cjs +14 -19
  30. package/dist/components/lukso-profile/index.d.ts.map +1 -1
  31. package/dist/components/lukso-profile/index.js +14 -19
  32. package/dist/components/lukso-profile/lukso-profile.stories.d.ts.map +1 -1
  33. package/dist/components/lukso-progress/index.cjs +3 -3
  34. package/dist/components/lukso-progress/index.js +3 -3
  35. package/dist/components/lukso-sanitize/index.cjs +2 -2
  36. package/dist/components/lukso-sanitize/index.js +2 -2
  37. package/dist/components/lukso-search/index.cjs +6 -5
  38. package/dist/components/lukso-search/index.js +6 -5
  39. package/dist/components/lukso-select/index.cjs +6 -5
  40. package/dist/components/lukso-select/index.js +6 -5
  41. package/dist/components/lukso-share/index.cjs +2 -2
  42. package/dist/components/lukso-share/index.js +2 -2
  43. package/dist/components/lukso-switch/index.cjs +3 -3
  44. package/dist/components/lukso-switch/index.js +3 -3
  45. package/dist/components/lukso-tag/index.cjs +3 -3
  46. package/dist/components/lukso-tag/index.js +3 -3
  47. package/dist/components/lukso-terms/index.cjs +4 -4
  48. package/dist/components/lukso-terms/index.js +4 -4
  49. package/dist/components/lukso-test/index.cjs +2 -2
  50. package/dist/components/lukso-test/index.js +2 -2
  51. package/dist/components/lukso-tooltip/index.cjs +4 -4
  52. package/dist/components/lukso-tooltip/index.js +4 -4
  53. package/dist/components/lukso-username/index.cjs +3 -3
  54. package/dist/components/lukso-username/index.js +3 -3
  55. package/dist/components/lukso-wizard/index.cjs +2 -2
  56. package/dist/components/lukso-wizard/index.js +2 -2
  57. package/dist/index-5e074b8e.cjs +46 -0
  58. package/dist/{index-5bfb2237.cjs → index-733d3158.cjs} +1 -1
  59. package/dist/index-a68aad08.js +39 -0
  60. package/dist/{index-cb570192.js → index-b434231b.js} +1 -1
  61. package/dist/index.cjs +10 -5
  62. package/dist/index.js +6 -5
  63. package/dist/query-assigned-elements-1c8c9e90.js +28 -0
  64. package/dist/query-assigned-elements-d5e45650.cjs +32 -0
  65. package/dist/shared/tailwind-element/index.cjs +1 -1
  66. package/dist/shared/tailwind-element/index.js +1 -1
  67. package/dist/{state-0a779257.js → state-b9ca4e74.js} +1 -1
  68. package/dist/{state-f73a8b4f.cjs → state-d9fb972b.cjs} +1 -1
  69. package/dist/{style-map-e1ea4b4f.js → style-map-43a6ddb8.js} +1 -1
  70. package/dist/{style-map-36078d57.cjs → style-map-6443acae.cjs} +1 -1
  71. package/package.json +6 -1
  72. package/dist/index-806013c2.js +0 -39
  73. package/dist/index-f0846b77.cjs +0 -46
  74. package/dist/query-assigned-elements-1d5d9d4c.cjs +0 -24
  75. package/dist/query-assigned-elements-5d94572f.js +0 -21
@@ -7,6 +7,7 @@ const components_luksoCard_index = require('./lukso-card/index.cjs');
7
7
  const components_luksoCheckbox_index = require('./lukso-checkbox/index.cjs');
8
8
  const components_luksoFooter_index = require('./lukso-footer/index.cjs');
9
9
  const components_luksoIcon_index = require('./lukso-icon/index.cjs');
10
+ const components_luksoImage_index = require('./lukso-image/index.cjs');
10
11
  const components_luksoInput_index = require('./lukso-input/index.cjs');
11
12
  const components_luksoModal_index = require('./lukso-modal/index.cjs');
12
13
  const components_luksoNavbar_index = require('./lukso-navbar/index.cjs');
@@ -23,15 +24,15 @@ const components_luksoTest_index = require('./lukso-test/index.cjs');
23
24
  const components_luksoTooltip_index = require('./lukso-tooltip/index.cjs');
24
25
  const components_luksoUsername_index = require('./lukso-username/index.cjs');
25
26
  const components_luksoWizard_index = require('./lukso-wizard/index.cjs');
26
- const shared_tailwindElement_index = require('../index-f0846b77.cjs');
27
+ const shared_tailwindElement_index = require('../index-5e074b8e.cjs');
27
28
  require('../cn-5a985a94.cjs');
28
- require('../query-assigned-elements-1d5d9d4c.cjs');
29
- require('../state-f73a8b4f.cjs');
29
+ require('../query-assigned-elements-d5e45650.cjs');
30
+ require('../state-d9fb972b.cjs');
30
31
  require('../index-66211c85.cjs');
31
32
  require('../tailwind-config.cjs');
32
- require('../style-map-36078d57.cjs');
33
+ require('../style-map-6443acae.cjs');
33
34
  require('../directive-8278ab14.cjs');
34
- require('../index-5bfb2237.cjs');
35
+ require('../index-733d3158.cjs');
35
36
  require('../index-e9668573.cjs');
36
37
 
37
38
 
@@ -56,6 +57,10 @@ Object.defineProperty(exports, 'LuksoIcon', {
56
57
  enumerable: true,
57
58
  get: () => components_luksoIcon_index.LuksoIcon
58
59
  });
60
+ Object.defineProperty(exports, 'LuksoImage', {
61
+ enumerable: true,
62
+ get: () => components_luksoImage_index.LuksoImage
63
+ });
59
64
  Object.defineProperty(exports, 'LuksoInput', {
60
65
  enumerable: true,
61
66
  get: () => components_luksoInput_index.LuksoInput
@@ -3,6 +3,7 @@ export * from './lukso-card/index';
3
3
  export * from './lukso-checkbox/index';
4
4
  export * from './lukso-footer/index';
5
5
  export * from './lukso-icon/index';
6
+ export * from './lukso-image/index';
6
7
  export * from './lukso-input/index';
7
8
  export * from './lukso-modal/index';
8
9
  export * from './lukso-navbar/index';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/index.ts"],"names":[],"mappings":"AACA,cAAc,sBAAsB,CAAA;AACpC,cAAc,oBAAoB,CAAA;AAClC,cAAc,wBAAwB,CAAA;AACtC,cAAc,sBAAsB,CAAA;AACpC,cAAc,oBAAoB,CAAA;AAClC,cAAc,qBAAqB,CAAA;AACnC,cAAc,qBAAqB,CAAA;AACnC,cAAc,sBAAsB,CAAA;AACpC,cAAc,uBAAuB,CAAA;AACrC,cAAc,wBAAwB,CAAA;AACtC,cAAc,wBAAwB,CAAA;AACtC,cAAc,sBAAsB,CAAA;AACpC,cAAc,sBAAsB,CAAA;AACpC,cAAc,qBAAqB,CAAA;AACnC,cAAc,sBAAsB,CAAA;AACpC,cAAc,mBAAmB,CAAA;AACjC,cAAc,qBAAqB,CAAA;AACnC,cAAc,oBAAoB,CAAA;AAClC,cAAc,uBAAuB,CAAA;AACrC,cAAc,wBAAwB,CAAA;AACtC,cAAc,sBAAsB,CAAA;AACpC,cAAc,8BAA8B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/index.ts"],"names":[],"mappings":"AACA,cAAc,sBAAsB,CAAA;AACpC,cAAc,oBAAoB,CAAA;AAClC,cAAc,wBAAwB,CAAA;AACtC,cAAc,sBAAsB,CAAA;AACpC,cAAc,oBAAoB,CAAA;AAClC,cAAc,qBAAqB,CAAA;AACnC,cAAc,qBAAqB,CAAA;AACnC,cAAc,qBAAqB,CAAA;AACnC,cAAc,sBAAsB,CAAA;AACpC,cAAc,uBAAuB,CAAA;AACrC,cAAc,wBAAwB,CAAA;AACtC,cAAc,wBAAwB,CAAA;AACtC,cAAc,sBAAsB,CAAA;AACpC,cAAc,sBAAsB,CAAA;AACpC,cAAc,qBAAqB,CAAA;AACnC,cAAc,sBAAsB,CAAA;AACpC,cAAc,mBAAmB,CAAA;AACjC,cAAc,qBAAqB,CAAA;AACnC,cAAc,oBAAoB,CAAA;AAClC,cAAc,uBAAuB,CAAA;AACrC,cAAc,wBAAwB,CAAA;AACtC,cAAc,sBAAsB,CAAA;AACpC,cAAc,8BAA8B,CAAA"}
@@ -3,6 +3,7 @@ export { LuksoCard } from './lukso-card/index.js';
3
3
  export { LuksoCheckbox } from './lukso-checkbox/index.js';
4
4
  export { LuksoFooter } from './lukso-footer/index.js';
5
5
  export { LuksoIcon } from './lukso-icon/index.js';
6
+ export { LuksoImage } from './lukso-image/index.js';
6
7
  export { LuksoInput } from './lukso-input/index.js';
7
8
  export { LuksoModal } from './lukso-modal/index.js';
8
9
  export { LuksoNavbar } from './lukso-navbar/index.js';
@@ -19,13 +20,13 @@ export { LuksoTest } from './lukso-test/index.js';
19
20
  export { LuksoTooltip } from './lukso-tooltip/index.js';
20
21
  export { LuksoUsername } from './lukso-username/index.js';
21
22
  export { LuksoWizard } from './lukso-wizard/index.js';
22
- export { a as TailwindElement, T as TailwindStyledElement } from '../index-806013c2.js';
23
+ export { a as TailwindElement, T as TailwindStyledElement } from '../index-a68aad08.js';
23
24
  import '../cn-e708e7fa.js';
24
- import '../query-assigned-elements-5d94572f.js';
25
- import '../state-0a779257.js';
25
+ import '../query-assigned-elements-1c8c9e90.js';
26
+ import '../state-b9ca4e74.js';
26
27
  import '../index-faa8c4ae.js';
27
28
  import '../tailwind-config.js';
28
- import '../style-map-e1ea4b4f.js';
29
+ import '../style-map-43a6ddb8.js';
29
30
  import '../directive-2bb7789e.js';
30
- import '../index-cb570192.js';
31
+ import '../index-b434231b.js';
31
32
  import '../index-5e194caf.js';
@@ -2,9 +2,9 @@
2
2
 
3
3
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
- const shared_tailwindElement_index = require('../../index-f0846b77.cjs');
6
- const queryAssignedElements = require('../../query-assigned-elements-1d5d9d4c.cjs');
7
- const state = require('../../state-f73a8b4f.cjs');
5
+ const shared_tailwindElement_index = require('../../index-5e074b8e.cjs');
6
+ const queryAssignedElements = require('../../query-assigned-elements-d5e45650.cjs');
7
+ const state = require('../../state-d9fb972b.cjs');
8
8
  const index = require('../../index-66211c85.cjs');
9
9
  require('../../tailwind-config.cjs');
10
10
  const cn = require('../../cn-5a985a94.cjs');
@@ -1,6 +1,6 @@
1
- import { T as TailwindStyledElement, x, A } from '../../index-806013c2.js';
2
- import { n, e } from '../../query-assigned-elements-5d94572f.js';
3
- import { t } from '../../state-0a779257.js';
1
+ import { T as TailwindStyledElement, x, A } from '../../index-a68aad08.js';
2
+ import { n, e } from '../../query-assigned-elements-1c8c9e90.js';
3
+ import { t } from '../../state-b9ca4e74.js';
4
4
  import { i as ie } from '../../index-faa8c4ae.js';
5
5
  import '../../tailwind-config.js';
6
6
  import { c as cn } from '../../cn-e708e7fa.js';
@@ -2,14 +2,16 @@
2
2
 
3
3
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
- const shared_tailwindElement_index = require('../../index-f0846b77.cjs');
6
- const queryAssignedElements = require('../../query-assigned-elements-1d5d9d4c.cjs');
7
- const styleMap = require('../../style-map-36078d57.cjs');
5
+ const shared_tailwindElement_index = require('../../index-5e074b8e.cjs');
6
+ const queryAssignedElements = require('../../query-assigned-elements-d5e45650.cjs');
7
+ const state = require('../../state-d9fb972b.cjs');
8
+ const styleMap = require('../../style-map-6443acae.cjs');
8
9
  const index = require('../../index-66211c85.cjs');
9
10
  require('../lukso-profile/index.cjs');
10
11
  require('../../tailwind-config.cjs');
11
12
  const cn = require('../../cn-5a985a94.cjs');
12
- const index$1 = require('../../index-5bfb2237.cjs');
13
+ const index$1 = require('../../index-733d3158.cjs');
14
+ require('../lukso-image/index.cjs');
13
15
  require('../../directive-8278ab14.cjs');
14
16
 
15
17
  const style = ":host {\n display: inline-flex;\n width: 100%;\n}\n\n:host([width]) {\n width: inherit;\n}";
@@ -39,52 +41,50 @@ exports.LuksoCard = class LuksoCard extends shared_tailwindElement_index.Tailwin
39
41
  this.borderRadius = "medium";
40
42
  this.shadow = "large";
41
43
  this.isHoverable = false;
42
- this.mediumStyles = `rounded-24 shadow-neutral-drop-shadow-2xl`;
43
- this.smallStyles = `rounded-12 shadow-neutral-drop-shadow`;
44
- this.smallHoverStyles = `hover:shadow-neutral-drop-shadow-1xl cursor-pointer transition`;
44
+ this.hasBottom = false;
45
45
  this.cardStyles = index.ie({
46
- base: `bg-neutral-100`,
46
+ base: "bg-neutral-100",
47
47
  variants: {
48
48
  borderRadius: {
49
- none: `rounded-0`,
50
- small: `rounded-12`,
51
- medium: `rounded-24`
49
+ none: "rounded-0",
50
+ small: "rounded-12",
51
+ medium: "rounded-24"
52
52
  },
53
53
  shadow: {
54
- small: `shadow-neutral-drop-shadow`,
55
- medium: `shadow-neutral-drop-shadow-1xl`,
56
- large: `shadow-neutral-drop-shadow-2xl`
54
+ small: "shadow-neutral-drop-shadow",
55
+ medium: "shadow-neutral-drop-shadow-1xl",
56
+ large: "shadow-neutral-drop-shadow-2xl"
57
57
  },
58
58
  isHoverable: {
59
- true: `cursor-pointer transition`
59
+ true: "cursor-pointer transition"
60
60
  },
61
61
  hasNoWidth: {
62
- true: `w-full`
62
+ true: "w-full"
63
63
  }
64
64
  },
65
65
  compoundVariants: [
66
66
  {
67
67
  shadow: "small",
68
68
  isHoverable: true,
69
- class: `hover:shadow-neutral-drop-shadow-1xl`
69
+ class: "hover:shadow-neutral-drop-shadow-1xl"
70
70
  },
71
71
  {
72
72
  shadow: "medium",
73
73
  isHoverable: true,
74
- class: `hover:shadow-neutral-drop-shadow-2xl`
74
+ class: "hover:shadow-neutral-drop-shadow-2xl"
75
75
  },
76
76
  {
77
77
  shadow: "large",
78
78
  isHoverable: true,
79
- class: `hover:shadow-neutral-drop-shadow-3xl`
79
+ class: "hover:shadow-neutral-drop-shadow-3xl"
80
80
  }
81
81
  ]
82
82
  });
83
83
  }
84
- backgroundImageOrGradient() {
85
- if (this.backgroundUrl) {
86
- return `url('${this.backgroundUrl}')`;
87
- }
84
+ onBottomSlotChange() {
85
+ this.hasBottom = this.bottomNodes.length > 0;
86
+ }
87
+ backgroundGradient() {
88
88
  let gradientStart = "#24354210";
89
89
  let gradientEnd = "#24354220";
90
90
  const opacity = "80";
@@ -120,7 +120,7 @@ exports.LuksoCard = class LuksoCard extends shared_tailwindElement_index.Tailwin
120
120
  shadow: this.shadow,
121
121
  isHoverable: this.isHoverable,
122
122
  hasNoWidth: !this.width,
123
- class: `grid grid-rows-[auto,1fr] overflow-hidden`
123
+ class: "grid grid-rows-[auto,1fr] overflow-hidden"
124
124
  });
125
125
  return shared_tailwindElement_index.x`
126
126
  <div
@@ -148,7 +148,7 @@ exports.LuksoCard = class LuksoCard extends shared_tailwindElement_index.Tailwin
148
148
  shadow: this.shadow,
149
149
  isHoverable: this.isHoverable,
150
150
  hasNoWidth: !this.width,
151
- class: `grid grid-rows-[1fr,auto]`
151
+ class: "grid grid-rows-[1fr,auto]"
152
152
  });
153
153
  return shared_tailwindElement_index.x`
154
154
  <div
@@ -161,17 +161,22 @@ exports.LuksoCard = class LuksoCard extends shared_tailwindElement_index.Tailwin
161
161
  >
162
162
  <div
163
163
  style=${styleMap.o({
164
- backgroundImage: this.backgroundImageOrGradient()
164
+ backgroundImage: this.backgroundGradient()
165
165
  })}
166
166
  class=${cn.cn(
167
- "min-h-[92px] -mb-6 w-full bg-center bg-cover rounded-t-[inherit] rounded-b-0 relative",
167
+ "min-h-[92px] -mb-6 w-full rounded-t-[inherit] rounded-b-0 relative",
168
168
  this.headerClass
169
169
  )}
170
170
  >
171
- ${this.backgroundUrl && shared_tailwindElement_index.x` <div
172
- class="h-full full rounded-t-[inherit] rounded-b-0 bg-neutral-20/10 absolute"
173
- ></div>`}
174
- <div>
171
+ ${this.backgroundUrl && shared_tailwindElement_index.x`<div
172
+ class="rounded-t-[inherit] overflow-hidden absolute inset-0"
173
+ >
174
+ <lukso-image src=${this.backgroundUrl}></lukso-image>
175
+ </div>
176
+ <div
177
+ class="h-full full rounded-t-[inherit] rounded-b-0 bg-neutral-20/10 absolute"
178
+ ></div>`}
179
+ <div class="relative">
175
180
  <slot name="header"></slot>
176
181
  </div>
177
182
  </div>
@@ -207,7 +212,7 @@ exports.LuksoCard = class LuksoCard extends shared_tailwindElement_index.Tailwin
207
212
  shadow: this.shadow,
208
213
  isHoverable: this.isHoverable,
209
214
  hasNoWidth: !this.width,
210
- class: `grid grid-rows-[auto,1fr]`
215
+ class: "grid grid-rows-[auto,1fr]"
211
216
  });
212
217
  return shared_tailwindElement_index.x`
213
218
  <div
@@ -220,7 +225,7 @@ exports.LuksoCard = class LuksoCard extends shared_tailwindElement_index.Tailwin
220
225
  >
221
226
  <div
222
227
  style=${styleMap.o({
223
- backgroundImage: this.backgroundImageOrGradient()
228
+ backgroundImage: this.backgroundGradient()
224
229
  })}
225
230
  class=${cn.cn(
226
231
  "min-h-[129px] -mb-6 bg-center bg-cover rounded-t-[inherit] rounded-b-0 relative bg-neutral-100",
@@ -228,14 +233,23 @@ exports.LuksoCard = class LuksoCard extends shared_tailwindElement_index.Tailwin
228
233
  )}
229
234
  >
230
235
  ${this.backgroundUrl && shared_tailwindElement_index.x`<div
231
- class="min-h-full min-w-full rounded-t-[inherit] rounded-b-0 bg-neutral-10/10 absolute"
232
- ></div>`}
236
+ class="rounded-t-[inherit] overflow-hidden absolute inset-0"
237
+ >
238
+ <lukso-image src=${this.backgroundUrl}></lukso-image>
239
+ </div>
240
+ <div
241
+ class="min-h-full min-w-full rounded-t-[inherit] rounded-b-0 bg-neutral-10/10 absolute"
242
+ ></div>`}
233
243
  <div>
234
244
  <slot name="header"></slot>
235
245
  </div>
236
246
  </div>
237
247
  <div class="grid grid-rows-[max-content,auto] rounded-b-[inherit]">
238
- <div class="bg-neutral-100 relative">
248
+ <div
249
+ class=${cn.cn("bg-neutral-100 relative", {
250
+ "rounded-b-[inherit]": !this.hasBottom
251
+ })}
252
+ >
239
253
  <lukso-profile
240
254
  profile-url=${this.profileUrl}
241
255
  borderRadius="large"
@@ -255,7 +269,7 @@ exports.LuksoCard = class LuksoCard extends shared_tailwindElement_index.Tailwin
255
269
  <div
256
270
  class="bg-neutral-97 rounded-b-[inherit] shadow-neutral-inner-shadow-top"
257
271
  >
258
- <slot name="bottom"></slot>
272
+ <slot @slotchange=${this.onBottomSlotChange} name="bottom"></slot>
259
273
  </div>
260
274
  </div>
261
275
  </div>
@@ -267,7 +281,7 @@ exports.LuksoCard = class LuksoCard extends shared_tailwindElement_index.Tailwin
267
281
  shadow: this.shadow,
268
282
  isHoverable: this.isHoverable,
269
283
  hasNoWidth: !this.width,
270
- class: `h-[240px] flex`
284
+ class: "h-[240px] flex"
271
285
  });
272
286
  return shared_tailwindElement_index.x`
273
287
  <div
@@ -279,16 +293,16 @@ exports.LuksoCard = class LuksoCard extends shared_tailwindElement_index.Tailwin
279
293
  class=${cn.cn(cardStyles, this.customClass)}
280
294
  >
281
295
  <div
282
- style=${styleMap.o({
283
- backgroundImage: `url('${this.backgroundUrl}')`
284
- })}
285
296
  class="h-full w-full -mb-6 bg-center bg-cover rounded-[inherit] relative"
286
297
  >
298
+ <div class="rounded-[inherit] overflow-hidden absolute inset-0">
299
+ <lukso-image src=${this.backgroundUrl}></lukso-image>
300
+ </div>
287
301
  ${this.backgroundUrl && shared_tailwindElement_index.x`<div
288
302
  class="h-full w-full rounded-[inherit] bg-neutral-20/10 absolute"
289
303
  ></div>`}
290
304
  <div
291
- class="h-full w-full flex flex-col items-center justify-center absolute"
305
+ class="h-full w-full flex flex-col items-center justify-center absolute"
292
306
  >
293
307
  <slot name="content"></slot>
294
308
  </div>
@@ -302,7 +316,7 @@ exports.LuksoCard = class LuksoCard extends shared_tailwindElement_index.Tailwin
302
316
  shadow: this.shadow,
303
317
  isHoverable: this.isHoverable,
304
318
  hasNoWidth: !this.width,
305
- class: `grid grid-rows-[auto,1fr]`
319
+ class: "grid grid-rows-[auto,1fr]"
306
320
  });
307
321
  return shared_tailwindElement_index.x`
308
322
  <div
@@ -315,14 +329,17 @@ exports.LuksoCard = class LuksoCard extends shared_tailwindElement_index.Tailwin
315
329
  >
316
330
  <div
317
331
  style=${styleMap.o({
318
- backgroundImage: this.backgroundImageOrGradient()
332
+ backgroundImage: this.backgroundGradient()
319
333
  })}
320
334
  class=${cn.cn(
321
335
  "min-h-[240px] bg-center bg-cover rounded-t-[inherit] rounded-b-0 relative",
322
336
  this.headerClass
323
337
  )}
324
338
  >
325
- <div>
339
+ <div class="rounded-t-[inherit] overflow-hidden absolute inset-0">
340
+ <lukso-image src=${this.backgroundUrl}></lukso-image>
341
+ </div>
342
+ <div class="relative">
326
343
  <slot name="header"></slot>
327
344
  </div>
328
345
  </div>
@@ -384,6 +401,12 @@ __decorateClass([
384
401
  __decorateClass([
385
402
  queryAssignedElements.n({ type: Boolean, attribute: "is-hoverable" })
386
403
  ], exports.LuksoCard.prototype, "isHoverable", 2);
404
+ __decorateClass([
405
+ queryAssignedElements.l({ slot: "bottom", flatten: true })
406
+ ], exports.LuksoCard.prototype, "bottomNodes", 2);
407
+ __decorateClass([
408
+ state.t()
409
+ ], exports.LuksoCard.prototype, "hasBottom", 2);
387
410
  exports.LuksoCard = __decorateClass([
388
411
  queryAssignedElements.e("lukso-card")
389
412
  ], exports.LuksoCard);
@@ -14,10 +14,10 @@ export declare class LuksoCard extends LuksoCard_base {
14
14
  borderRadius: CardBorderRadius;
15
15
  shadow: CardShadows;
16
16
  isHoverable: boolean;
17
- private mediumStyles;
18
- private smallStyles;
19
- private smallHoverStyles;
20
- private backgroundImageOrGradient;
17
+ private bottomNodes;
18
+ private hasBottom;
19
+ private onBottomSlotChange;
20
+ private backgroundGradient;
21
21
  private cardStyles;
22
22
  basicTemplate(): import("lit-html").TemplateResult<1>;
23
23
  withHeaderTemplate(): import("lit-html").TemplateResult<1>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/lukso-card/index.ts"],"names":[],"mappings":"AAOA,OAAO,4BAA4B,CAAA;AAInC,MAAM,MAAM,YAAY,GACpB,OAAO,GACP,aAAa,GACb,SAAS,GACT,WAAW,GACX,MAAM,GACN,MAAM,CAAA;AAEV,MAAM,MAAM,gBAAgB,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAA;AAE1D,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAA;;AAEtD,qBACa,SAAU,SAAQ,cAA4B;IAEzD,OAAO,EAAE,YAAY,CAAU;IAG/B,aAAa,SAAK;IAGlB,UAAU,SAAK;IAGf,cAAc,SAAK;IAGnB,KAAK,EAAE,MAAM,GAAG,SAAS,CAAY;IAGrC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAY;IAGtC,WAAW,SAAK;IAGhB,WAAW,SAAK;IAGhB,YAAY,EAAE,gBAAgB,CAAW;IAGzC,MAAM,EAAE,WAAW,CAAU;IAG7B,WAAW,UAAQ;IAEnB,OAAO,CAAC,YAAY,CAA8C;IAClE,OAAO,CAAC,WAAW,CAA0C;IAC7D,OAAO,CAAC,gBAAgB,CAAmE;IAE3F,OAAO,CAAC,yBAAyB;IAiBjC,OAAO,CAAC,UAAU,CAqChB;IAEF,aAAa;IAsBb,kBAAkB;IA8BlB,eAAe;IA8Df,gBAAgB;IA+DhB,YAAY;IAsCZ,YAAY;IAwCZ,MAAM;CAgBP;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,YAAY,EAAE,SAAS,CAAA;KACxB;CACF"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/lukso-card/index.ts"],"names":[],"mappings":"AAYA,OAAO,4BAA4B,CAAA;AAGnC,OAAO,0BAA0B,CAAA;AAEjC,MAAM,MAAM,YAAY,GACpB,OAAO,GACP,aAAa,GACb,SAAS,GACT,WAAW,GACX,MAAM,GACN,MAAM,CAAA;AAEV,MAAM,MAAM,gBAAgB,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAA;AAE1D,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAA;;AAEtD,qBACa,SAAU,SAAQ,cAA4B;IAEzD,OAAO,EAAE,YAAY,CAAU;IAG/B,aAAa,SAAK;IAGlB,UAAU,SAAK;IAGf,cAAc,SAAK;IAGnB,KAAK,EAAE,MAAM,GAAG,SAAS,CAAY;IAGrC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAY;IAGtC,WAAW,SAAK;IAGhB,WAAW,SAAK;IAGhB,YAAY,EAAE,gBAAgB,CAAW;IAGzC,MAAM,EAAE,WAAW,CAAU;IAG7B,WAAW,UAAQ;IAGnB,OAAO,CAAC,WAAW,CAAyB;IAG5C,OAAO,CAAC,SAAS,CAAQ;IAEzB,OAAO,CAAC,kBAAkB;IAI1B,OAAO,CAAC,kBAAkB;IAa1B,OAAO,CAAC,UAAU,CAqChB;IAEF,aAAa;IAsBb,kBAAkB;IA8BlB,eAAe;IAmEf,gBAAgB;IAwEhB,YAAY;IAsCZ,YAAY;IA2CZ,MAAM;CAgBP;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,YAAY,EAAE,SAAS,CAAA;KACxB;CACF"}
@@ -1,11 +1,13 @@
1
- import { T as TailwindStyledElement, x } from '../../index-806013c2.js';
2
- import { n, e } from '../../query-assigned-elements-5d94572f.js';
3
- import { o } from '../../style-map-e1ea4b4f.js';
1
+ import { T as TailwindStyledElement, x } from '../../index-a68aad08.js';
2
+ import { n, l, e } from '../../query-assigned-elements-1c8c9e90.js';
3
+ import { t } from '../../state-b9ca4e74.js';
4
+ import { o } from '../../style-map-43a6ddb8.js';
4
5
  import { i as ie } from '../../index-faa8c4ae.js';
5
6
  import '../lukso-profile/index.js';
6
7
  import '../../tailwind-config.js';
7
8
  import { c as cn } from '../../cn-e708e7fa.js';
8
- import { c as customStyleMap } from '../../index-cb570192.js';
9
+ import { c as customStyleMap } from '../../index-b434231b.js';
10
+ import '../lukso-image/index.js';
9
11
  import '../../directive-2bb7789e.js';
10
12
 
11
13
  const style = ":host {\n display: inline-flex;\n width: 100%;\n}\n\n:host([width]) {\n width: inherit;\n}";
@@ -35,52 +37,50 @@ let LuksoCard = class extends TailwindStyledElement(style) {
35
37
  this.borderRadius = "medium";
36
38
  this.shadow = "large";
37
39
  this.isHoverable = false;
38
- this.mediumStyles = `rounded-24 shadow-neutral-drop-shadow-2xl`;
39
- this.smallStyles = `rounded-12 shadow-neutral-drop-shadow`;
40
- this.smallHoverStyles = `hover:shadow-neutral-drop-shadow-1xl cursor-pointer transition`;
40
+ this.hasBottom = false;
41
41
  this.cardStyles = ie({
42
- base: `bg-neutral-100`,
42
+ base: "bg-neutral-100",
43
43
  variants: {
44
44
  borderRadius: {
45
- none: `rounded-0`,
46
- small: `rounded-12`,
47
- medium: `rounded-24`
45
+ none: "rounded-0",
46
+ small: "rounded-12",
47
+ medium: "rounded-24"
48
48
  },
49
49
  shadow: {
50
- small: `shadow-neutral-drop-shadow`,
51
- medium: `shadow-neutral-drop-shadow-1xl`,
52
- large: `shadow-neutral-drop-shadow-2xl`
50
+ small: "shadow-neutral-drop-shadow",
51
+ medium: "shadow-neutral-drop-shadow-1xl",
52
+ large: "shadow-neutral-drop-shadow-2xl"
53
53
  },
54
54
  isHoverable: {
55
- true: `cursor-pointer transition`
55
+ true: "cursor-pointer transition"
56
56
  },
57
57
  hasNoWidth: {
58
- true: `w-full`
58
+ true: "w-full"
59
59
  }
60
60
  },
61
61
  compoundVariants: [
62
62
  {
63
63
  shadow: "small",
64
64
  isHoverable: true,
65
- class: `hover:shadow-neutral-drop-shadow-1xl`
65
+ class: "hover:shadow-neutral-drop-shadow-1xl"
66
66
  },
67
67
  {
68
68
  shadow: "medium",
69
69
  isHoverable: true,
70
- class: `hover:shadow-neutral-drop-shadow-2xl`
70
+ class: "hover:shadow-neutral-drop-shadow-2xl"
71
71
  },
72
72
  {
73
73
  shadow: "large",
74
74
  isHoverable: true,
75
- class: `hover:shadow-neutral-drop-shadow-3xl`
75
+ class: "hover:shadow-neutral-drop-shadow-3xl"
76
76
  }
77
77
  ]
78
78
  });
79
79
  }
80
- backgroundImageOrGradient() {
81
- if (this.backgroundUrl) {
82
- return `url('${this.backgroundUrl}')`;
83
- }
80
+ onBottomSlotChange() {
81
+ this.hasBottom = this.bottomNodes.length > 0;
82
+ }
83
+ backgroundGradient() {
84
84
  let gradientStart = "#24354210";
85
85
  let gradientEnd = "#24354220";
86
86
  const opacity = "80";
@@ -116,7 +116,7 @@ let LuksoCard = class extends TailwindStyledElement(style) {
116
116
  shadow: this.shadow,
117
117
  isHoverable: this.isHoverable,
118
118
  hasNoWidth: !this.width,
119
- class: `grid grid-rows-[auto,1fr] overflow-hidden`
119
+ class: "grid grid-rows-[auto,1fr] overflow-hidden"
120
120
  });
121
121
  return x`
122
122
  <div
@@ -144,7 +144,7 @@ let LuksoCard = class extends TailwindStyledElement(style) {
144
144
  shadow: this.shadow,
145
145
  isHoverable: this.isHoverable,
146
146
  hasNoWidth: !this.width,
147
- class: `grid grid-rows-[1fr,auto]`
147
+ class: "grid grid-rows-[1fr,auto]"
148
148
  });
149
149
  return x`
150
150
  <div
@@ -157,17 +157,22 @@ let LuksoCard = class extends TailwindStyledElement(style) {
157
157
  >
158
158
  <div
159
159
  style=${o({
160
- backgroundImage: this.backgroundImageOrGradient()
160
+ backgroundImage: this.backgroundGradient()
161
161
  })}
162
162
  class=${cn(
163
- "min-h-[92px] -mb-6 w-full bg-center bg-cover rounded-t-[inherit] rounded-b-0 relative",
163
+ "min-h-[92px] -mb-6 w-full rounded-t-[inherit] rounded-b-0 relative",
164
164
  this.headerClass
165
165
  )}
166
166
  >
167
- ${this.backgroundUrl && x` <div
168
- class="h-full full rounded-t-[inherit] rounded-b-0 bg-neutral-20/10 absolute"
169
- ></div>`}
170
- <div>
167
+ ${this.backgroundUrl && x`<div
168
+ class="rounded-t-[inherit] overflow-hidden absolute inset-0"
169
+ >
170
+ <lukso-image src=${this.backgroundUrl}></lukso-image>
171
+ </div>
172
+ <div
173
+ class="h-full full rounded-t-[inherit] rounded-b-0 bg-neutral-20/10 absolute"
174
+ ></div>`}
175
+ <div class="relative">
171
176
  <slot name="header"></slot>
172
177
  </div>
173
178
  </div>
@@ -203,7 +208,7 @@ let LuksoCard = class extends TailwindStyledElement(style) {
203
208
  shadow: this.shadow,
204
209
  isHoverable: this.isHoverable,
205
210
  hasNoWidth: !this.width,
206
- class: `grid grid-rows-[auto,1fr]`
211
+ class: "grid grid-rows-[auto,1fr]"
207
212
  });
208
213
  return x`
209
214
  <div
@@ -216,7 +221,7 @@ let LuksoCard = class extends TailwindStyledElement(style) {
216
221
  >
217
222
  <div
218
223
  style=${o({
219
- backgroundImage: this.backgroundImageOrGradient()
224
+ backgroundImage: this.backgroundGradient()
220
225
  })}
221
226
  class=${cn(
222
227
  "min-h-[129px] -mb-6 bg-center bg-cover rounded-t-[inherit] rounded-b-0 relative bg-neutral-100",
@@ -224,14 +229,23 @@ let LuksoCard = class extends TailwindStyledElement(style) {
224
229
  )}
225
230
  >
226
231
  ${this.backgroundUrl && x`<div
227
- class="min-h-full min-w-full rounded-t-[inherit] rounded-b-0 bg-neutral-10/10 absolute"
228
- ></div>`}
232
+ class="rounded-t-[inherit] overflow-hidden absolute inset-0"
233
+ >
234
+ <lukso-image src=${this.backgroundUrl}></lukso-image>
235
+ </div>
236
+ <div
237
+ class="min-h-full min-w-full rounded-t-[inherit] rounded-b-0 bg-neutral-10/10 absolute"
238
+ ></div>`}
229
239
  <div>
230
240
  <slot name="header"></slot>
231
241
  </div>
232
242
  </div>
233
243
  <div class="grid grid-rows-[max-content,auto] rounded-b-[inherit]">
234
- <div class="bg-neutral-100 relative">
244
+ <div
245
+ class=${cn("bg-neutral-100 relative", {
246
+ "rounded-b-[inherit]": !this.hasBottom
247
+ })}
248
+ >
235
249
  <lukso-profile
236
250
  profile-url=${this.profileUrl}
237
251
  borderRadius="large"
@@ -251,7 +265,7 @@ let LuksoCard = class extends TailwindStyledElement(style) {
251
265
  <div
252
266
  class="bg-neutral-97 rounded-b-[inherit] shadow-neutral-inner-shadow-top"
253
267
  >
254
- <slot name="bottom"></slot>
268
+ <slot @slotchange=${this.onBottomSlotChange} name="bottom"></slot>
255
269
  </div>
256
270
  </div>
257
271
  </div>
@@ -263,7 +277,7 @@ let LuksoCard = class extends TailwindStyledElement(style) {
263
277
  shadow: this.shadow,
264
278
  isHoverable: this.isHoverable,
265
279
  hasNoWidth: !this.width,
266
- class: `h-[240px] flex`
280
+ class: "h-[240px] flex"
267
281
  });
268
282
  return x`
269
283
  <div
@@ -275,16 +289,16 @@ let LuksoCard = class extends TailwindStyledElement(style) {
275
289
  class=${cn(cardStyles, this.customClass)}
276
290
  >
277
291
  <div
278
- style=${o({
279
- backgroundImage: `url('${this.backgroundUrl}')`
280
- })}
281
292
  class="h-full w-full -mb-6 bg-center bg-cover rounded-[inherit] relative"
282
293
  >
294
+ <div class="rounded-[inherit] overflow-hidden absolute inset-0">
295
+ <lukso-image src=${this.backgroundUrl}></lukso-image>
296
+ </div>
283
297
  ${this.backgroundUrl && x`<div
284
298
  class="h-full w-full rounded-[inherit] bg-neutral-20/10 absolute"
285
299
  ></div>`}
286
300
  <div
287
- class="h-full w-full flex flex-col items-center justify-center absolute"
301
+ class="h-full w-full flex flex-col items-center justify-center absolute"
288
302
  >
289
303
  <slot name="content"></slot>
290
304
  </div>
@@ -298,7 +312,7 @@ let LuksoCard = class extends TailwindStyledElement(style) {
298
312
  shadow: this.shadow,
299
313
  isHoverable: this.isHoverable,
300
314
  hasNoWidth: !this.width,
301
- class: `grid grid-rows-[auto,1fr]`
315
+ class: "grid grid-rows-[auto,1fr]"
302
316
  });
303
317
  return x`
304
318
  <div
@@ -311,14 +325,17 @@ let LuksoCard = class extends TailwindStyledElement(style) {
311
325
  >
312
326
  <div
313
327
  style=${o({
314
- backgroundImage: this.backgroundImageOrGradient()
328
+ backgroundImage: this.backgroundGradient()
315
329
  })}
316
330
  class=${cn(
317
331
  "min-h-[240px] bg-center bg-cover rounded-t-[inherit] rounded-b-0 relative",
318
332
  this.headerClass
319
333
  )}
320
334
  >
321
- <div>
335
+ <div class="rounded-t-[inherit] overflow-hidden absolute inset-0">
336
+ <lukso-image src=${this.backgroundUrl}></lukso-image>
337
+ </div>
338
+ <div class="relative">
322
339
  <slot name="header"></slot>
323
340
  </div>
324
341
  </div>
@@ -380,6 +397,12 @@ __decorateClass([
380
397
  __decorateClass([
381
398
  n({ type: Boolean, attribute: "is-hoverable" })
382
399
  ], LuksoCard.prototype, "isHoverable", 2);
400
+ __decorateClass([
401
+ l({ slot: "bottom", flatten: true })
402
+ ], LuksoCard.prototype, "bottomNodes", 2);
403
+ __decorateClass([
404
+ t()
405
+ ], LuksoCard.prototype, "hasBottom", 2);
383
406
  LuksoCard = __decorateClass([
384
407
  e("lukso-card")
385
408
  ], LuksoCard);