evo-vue-carousel 1.1.3 → 1.1.4

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.
@@ -351,6 +351,12 @@ function debounce(e, t, { signal: n, edges: r } = {}) {
351
351
  function identity(e) {
352
352
  return e;
353
353
  }
354
+ function range(e, t, n = 1) {
355
+ if (t ?? (t = e, e = 0), !Number.isInteger(n) || n === 0) throw Error("The step value must be a non-zero integer.");
356
+ let r = Math.max(Math.ceil((t - e) / n), 0), a = Array(r);
357
+ for (let t = 0; t < r; t++) a[t] = e + t * n;
358
+ return a;
359
+ }
354
360
  function isPrimitive(e) {
355
361
  return e == null || typeof e != "object" && typeof e != "function";
356
362
  }
@@ -1422,13 +1428,13 @@ var concatArrays = (e, t) => {
1422
1428
  isArbitraryVariablePosition,
1423
1429
  isArbitraryPosition,
1424
1430
  { position: [isArbitraryVariable, isArbitraryValue] }
1425
- ], vi = () => ["no-repeat", { repeat: [
1431
+ ], yi = () => ["no-repeat", { repeat: [
1426
1432
  "",
1427
1433
  "x",
1428
1434
  "y",
1429
1435
  "space",
1430
1436
  "round"
1431
- ] }], yi = () => [
1437
+ ] }], bi = () => [
1432
1438
  "auto",
1433
1439
  "cover",
1434
1440
  "contain",
@@ -1456,7 +1462,7 @@ var concatArrays = (e, t) => {
1456
1462
  "dashed",
1457
1463
  "dotted",
1458
1464
  "double"
1459
- ], bi = () => [
1465
+ ], xi = () => [
1460
1466
  "normal",
1461
1467
  "multiply",
1462
1468
  "screen",
@@ -1478,7 +1484,7 @@ var concatArrays = (e, t) => {
1478
1484
  isPercent,
1479
1485
  isArbitraryVariablePosition,
1480
1486
  isArbitraryPosition
1481
- ], xi = () => [
1487
+ ], Si = () => [
1482
1488
  "",
1483
1489
  "none",
1484
1490
  x,
@@ -1979,8 +1985,8 @@ var concatArrays = (e, t) => {
1979
1985
  "content"
1980
1986
  ] }],
1981
1987
  "bg-position": [{ bg: W() }],
1982
- "bg-repeat": [{ bg: vi() }],
1983
- "bg-size": [{ bg: yi() }],
1988
+ "bg-repeat": [{ bg: yi() }],
1989
+ "bg-size": [{ bg: bi() }],
1984
1990
  "bg-image": [{ bg: [
1985
1991
  "none",
1986
1992
  {
@@ -2120,11 +2126,11 @@ var concatArrays = (e, t) => {
2120
2126
  isArbitraryValue
2121
2127
  ] }],
2122
2128
  "mix-blend": [{ "mix-blend": [
2123
- ...bi(),
2129
+ ...xi(),
2124
2130
  "plus-darker",
2125
2131
  "plus-lighter"
2126
2132
  ] }],
2127
- "bg-blend": [{ "bg-blend": bi() }],
2133
+ "bg-blend": [{ "bg-blend": xi() }],
2128
2134
  "mask-clip": [{ "mask-clip": [
2129
2135
  "border",
2130
2136
  "padding",
@@ -2198,8 +2204,8 @@ var concatArrays = (e, t) => {
2198
2204
  "view"
2199
2205
  ] }],
2200
2206
  "mask-position": [{ mask: W() }],
2201
- "mask-repeat": [{ mask: vi() }],
2202
- "mask-size": [{ mask: yi() }],
2207
+ "mask-repeat": [{ mask: yi() }],
2208
+ "mask-size": [{ mask: bi() }],
2203
2209
  "mask-type": [{ "mask-type": ["alpha", "luminance"] }],
2204
2210
  "mask-image": [{ mask: [
2205
2211
  "none",
@@ -2212,7 +2218,7 @@ var concatArrays = (e, t) => {
2212
2218
  isArbitraryVariable,
2213
2219
  isArbitraryValue
2214
2220
  ] }],
2215
- blur: [{ blur: xi() }],
2221
+ blur: [{ blur: Si() }],
2216
2222
  brightness: [{ brightness: [
2217
2223
  isNumber,
2218
2224
  isArbitraryVariable,
@@ -2265,7 +2271,7 @@ var concatArrays = (e, t) => {
2265
2271
  isArbitraryVariable,
2266
2272
  isArbitraryValue
2267
2273
  ] }],
2268
- "backdrop-blur": [{ "backdrop-blur": xi() }],
2274
+ "backdrop-blur": [{ "backdrop-blur": Si() }],
2269
2275
  "backdrop-brightness": [{ "backdrop-brightness": [
2270
2276
  isNumber,
2271
2277
  isArbitraryVariable,
@@ -3112,10 +3118,16 @@ var COMPONENTS_AND_ELEMENTS = /* @__PURE__ */ freeze({
3112
3118
  }
3113
3119
  return r ?? e;
3114
3120
  }, Slide_default = {
3115
- props: { isClone: {
3116
- type: Boolean,
3117
- default: !1
3118
- } },
3121
+ props: {
3122
+ isClone: {
3123
+ type: Boolean,
3124
+ default: !1
3125
+ },
3126
+ isVisible: {
3127
+ type: Boolean,
3128
+ default: !1
3129
+ }
3130
+ },
3119
3131
  setup(e, { slots: t }) {
3120
3132
  let n = ref(null), r = useId(), a = getCurrentInstance(), { width: s, height: c, stop: l } = useElementSize(n), { registerSlide: u, updateSlide: d, unregisterSlide: p } = useRegisterSlideClient();
3121
3133
  return e.isClone === !1 ? u(r, a) : l(), onUnmounted(() => {
@@ -3129,8 +3141,8 @@ var COMPONENTS_AND_ELEMENTS = /* @__PURE__ */ freeze({
3129
3141
  ref: n,
3130
3142
  role: "listitem",
3131
3143
  "aria-roledescription": "slide",
3132
- "aria-hidden": e.isClone,
3133
- tabindex: e.isClone ? -1 : void 0
3144
+ "aria-hidden": !e.isVisible,
3145
+ tabindex: e.isVisible ? void 0 : -1
3134
3146
  }, t.default());
3135
3147
  }
3136
3148
  }, __plugin_vue_export_helper_default = (e, t) => {
@@ -3150,33 +3162,33 @@ var COMPONENTS_AND_ELEMENTS = /* @__PURE__ */ freeze({
3150
3162
  }
3151
3163
  },
3152
3164
  setup(e) {
3153
- useCssVars((e) => ({ v6ed04307: P.value }));
3165
+ useCssVars((e) => ({ v0b0e0d5c: B.value }));
3154
3166
  let t = typeof window < "u" && window.matchMedia("(prefers-reduced-motion: reduce)").matches, n = Object.freeze({
3155
3167
  element: !0,
3156
3168
  component: !0,
3157
3169
  static: !0,
3158
3170
  comment: !1,
3159
3171
  text: !1
3160
- }), r = e, { config: a, currentIndex: s, setCurrentIndex: l, isHovered: u, isNavigating: p, setIsNavigating: m, pauseAutoplay: b, resumeAutoplay: x, autoplayIsActive: C } = useCarouselClient(), T = ref(!0), E = (e, t) => e / t * 100, D = computed(() => ({
3161
- transform: `translate3d(${F.value}px, 0, 0)`,
3162
- transitionDuration: `${E(R.value, a.value.transitionSpeed)}ms`
3163
- })), O = (e) => {
3164
- let t = parseFloat(P.value), n = a.value.wrap ? r.totalSlides + e : e;
3165
- return (t + a.value.gap) * n * -1;
3166
- }, k = ref(null), { width: j, height: N } = useElementSize(k), P = computed(() => {
3172
+ }), r = e, { config: a, currentIndex: s, setCurrentIndex: l, isHovered: u, isNavigating: p, setIsNavigating: m, pauseAutoplay: b, resumeAutoplay: x, autoplayIsActive: C } = useCarouselClient(), T = ref(!0), E = (e, t) => e / t * 100, D = ref(0), O = ref(0), k = ref(0), j = computed(() => range(k.value + 1, k.value + 1 + a.value.perPage)), N = computed(() => ({
3173
+ transform: `translate3d(${D.value}px, 0, 0)`,
3174
+ transitionDuration: `${E(V.value, a.value.transitionSpeed)}ms`
3175
+ })), P = (e) => {
3176
+ let t = parseFloat(B.value);
3177
+ return k.value = a.value.wrap ? r.totalSlides + e : e, (t + a.value.gap) * k.value * -1;
3178
+ }, F = ref(null), { width: L, height: R } = useElementSize(F), B = computed(() => {
3167
3179
  let e = a.value.gap > 0 ? a.value.gap * (a.value.perPage - 1) : 0;
3168
- return (j.value - e) / a.value.perPage + "px";
3169
- }), F = ref(0), L = ref(0);
3180
+ return (L.value - e) / a.value.perPage + "px";
3181
+ });
3170
3182
  watch(() => r.isInit, async (e) => {
3171
- e && (F.value = O(s.value), await nextFrame(2), T.value = !1);
3183
+ e && (D.value = P(s.value), await nextFrame(2), T.value = !1);
3172
3184
  });
3173
- let R = computed(() => Math.abs(F.value - L.value));
3185
+ let V = computed(() => Math.abs(D.value - O.value));
3174
3186
  watch(s, (e) => {
3175
- p.value === !1 && (L.value = F.value), F.value = O(e), t && V();
3187
+ p.value === !1 && (O.value = D.value), D.value = P(e), t && U();
3176
3188
  });
3177
- let B = () => {
3189
+ let H = () => {
3178
3190
  m(!0);
3179
- }, V = async () => {
3191
+ }, U = async () => {
3180
3192
  T.value = !0, await nextFrame();
3181
3193
  let e = r.totalSlides;
3182
3194
  l(loopedValue(s.value, 0, e)), await nextFrame(), T.value = !1, m(!1);
@@ -3184,7 +3196,7 @@ var COMPONENTS_AND_ELEMENTS = /* @__PURE__ */ freeze({
3184
3196
  watch(u, (e) => {
3185
3197
  a.value.pauseOnHover === !0 && (e ? b() : x());
3186
3198
  });
3187
- let H = {
3199
+ let W = (e, t) => (t === "prefix" ? 0 : t === "suffix" ? r.totalSlides * 2 : r.totalSlides) + e, G = {
3188
3200
  props: { gap: {
3189
3201
  type: Number,
3190
3202
  default: 0
@@ -3192,20 +3204,25 @@ var COMPONENTS_AND_ELEMENTS = /* @__PURE__ */ freeze({
3192
3204
  setup(e, { slots: t }) {
3193
3205
  let r = () => t.default?.() || [], s = (t) => {
3194
3206
  let a = 0, s = t ? `_${t}` : "";
3195
- return replaceChildren(r(), (n) => (a++, h(Slide_default, {
3196
- class: normalizeClass(["evo-vue-carousel__slide shrink-0 grow-0", {
3197
- "evo-vue-carousel__slide-clone": !!t,
3198
- "evo-vue-carousel__slide-prefix": t === "prefix",
3199
- "evo-vue-carousel__slide-suffix": t === "suffix"
3200
- }]),
3201
- style: {
3202
- flexBasis: "var(--slide-width, 0px)",
3203
- marginRight: `${e.gap}px`
3204
- },
3205
- ariaLabel: `Slide ${a}`,
3206
- key: `slide_${a}${s}`,
3207
- isClone: !!t
3208
- }, { default: () => [n] })), n);
3207
+ return replaceChildren(r(), (n) => {
3208
+ a++;
3209
+ let r = W(a, t);
3210
+ return h(Slide_default, {
3211
+ class: normalizeClass(["evo-vue-carousel__slide shrink-0 grow-0", {
3212
+ "evo-vue-carousel__slide-clone": !!t,
3213
+ "evo-vue-carousel__slide-prefix": t === "prefix",
3214
+ "evo-vue-carousel__slide-suffix": t === "suffix"
3215
+ }]),
3216
+ style: {
3217
+ flexBasis: "var(--slide-width, 0px)",
3218
+ marginRight: `${e.gap}px`
3219
+ },
3220
+ ariaLabel: `Slide ${a}`,
3221
+ key: `slide_${a}${s}`,
3222
+ isClone: !!t,
3223
+ isVisible: j.value.includes(r)
3224
+ }, { default: () => [n] });
3225
+ }, n);
3209
3226
  };
3210
3227
  return () => h("div", {
3211
3228
  class: normalizeClass([
@@ -3218,27 +3235,27 @@ var COMPONENTS_AND_ELEMENTS = /* @__PURE__ */ freeze({
3218
3235
  a.value.slideTransitionTimingClass
3219
3236
  ]),
3220
3237
  role: "list",
3221
- style: D.value,
3222
- onTransitionstart: B,
3223
- onTransitionend: V
3238
+ style: N.value,
3239
+ onTransitionstart: H,
3240
+ onTransitionend: U
3224
3241
  }, a.value.wrap ? concat(s("prefix"), s(), s("suffix")) : s());
3225
3242
  }
3226
3243
  };
3227
3244
  return (e, t) => (openBlock(), createElementBlock("div", {
3228
3245
  ref_key: "viewportRef",
3229
- ref: k,
3246
+ ref: F,
3230
3247
  class: "evo-vue-carousel__viewport evo-vue-carousel__viewport--slider relative flex w-full h-full max-h-full overflow-hidden",
3231
- "data-width": unref(j),
3232
- "data-height": unref(N)
3248
+ "data-width": unref(L),
3249
+ "data-height": unref(R)
3233
3250
  }, [createVNode(unref(S), {
3234
3251
  slots: e.$slots,
3235
3252
  only: "default"
3236
3253
  }, {
3237
- default: withCtx(() => [createVNode(H, { gap: unref(a).gap }, null, 8, ["gap"])]),
3254
+ default: withCtx(() => [createVNode(G, { gap: unref(a).gap }, null, 8, ["gap"])]),
3238
3255
  _: 1
3239
3256
  }, 8, ["slots"])], 8, _hoisted_1$1));
3240
3257
  }
3241
- }, [["__scopeId", "data-v-932c4d31"]]), _hoisted_1 = ["data-height"], Gallery_default = {
3258
+ }, [["__scopeId", "data-v-06f26dae"]]), _hoisted_1 = ["data-height"], Gallery_default = {
3242
3259
  __name: "Gallery",
3243
3260
  props: {
3244
3261
  totalSlides: {
package/dist/main.css CHANGED
@@ -1 +1 @@
1
- .evo-vue-carousel__pagination{pointer-events:none}.evo-vue-carousel__pagination>*{pointer-events:auto}.evo-vue-carousel__navigation{pointer-events:none}.evo-vue-carousel__navigation>*{pointer-events:auto}.evo-vue-carousel__viewport-track[data-v-932c4d31]{--slide-width:var(--v6ed04307)}
1
+ .evo-vue-carousel__pagination{pointer-events:none}.evo-vue-carousel__pagination>*{pointer-events:auto}.evo-vue-carousel__navigation{pointer-events:none}.evo-vue-carousel__navigation>*{pointer-events:auto}.evo-vue-carousel__viewport-track[data-v-06f26dae]{--slide-width:var(--v0b0e0d5c)}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "evo-vue-carousel",
3
- "version": "1.1.3",
3
+ "version": "1.1.4",
4
4
  "type": "module",
5
5
  "license": "GPL-3.0-only",
6
6
  "files": [