@maas/vue-equipment 0.13.0 → 0.14.0

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 (59) hide show
  1. package/dist/nuxt/module.json +1 -1
  2. package/dist/nuxt/module.mjs +22 -28
  3. package/dist/plugins/MagicConsent/src/composables/private/defineConsentApi.mjs +1 -1
  4. package/dist/plugins/MagicDrawer/index.d.ts +6 -0
  5. package/dist/plugins/MagicDrawer/index.mjs +9 -0
  6. package/dist/plugins/MagicDrawer/nuxt.d.ts +0 -0
  7. package/dist/plugins/MagicDrawer/nuxt.mjs +27 -0
  8. package/dist/plugins/MagicDrawer/src/components/MagicDrawer.vue +237 -0
  9. package/dist/plugins/MagicDrawer/src/components/MagicDrawer.vue.d.ts +52 -0
  10. package/dist/plugins/MagicDrawer/src/composables/private/useDrawerCallback.d.ts +22 -0
  11. package/dist/plugins/MagicDrawer/src/composables/private/useDrawerCallback.mjs +61 -0
  12. package/dist/plugins/MagicDrawer/src/composables/private/useDrawerDrag.d.ts +15 -0
  13. package/dist/plugins/MagicDrawer/src/composables/private/useDrawerDrag.mjs +201 -0
  14. package/dist/plugins/MagicDrawer/src/composables/private/useDrawerStore.d.ts +5 -0
  15. package/dist/plugins/MagicDrawer/src/composables/private/useDrawerStore.mjs +15 -0
  16. package/dist/plugins/MagicDrawer/src/composables/useDrawerApi.d.ts +19 -0
  17. package/dist/plugins/MagicDrawer/src/composables/useDrawerApi.mjs +75 -0
  18. package/dist/plugins/MagicDrawer/src/composables/useDrawerEmitter.d.ts +15 -0
  19. package/dist/plugins/MagicDrawer/src/composables/useDrawerEmitter.mjs +9 -0
  20. package/dist/plugins/MagicDrawer/src/index.d.ts +0 -0
  21. package/dist/plugins/MagicDrawer/src/index.mjs +0 -0
  22. package/dist/plugins/MagicDrawer/src/types/index.d.ts +29 -0
  23. package/dist/plugins/MagicDrawer/src/types/index.mjs +0 -0
  24. package/dist/plugins/MagicDrawer/src/utils/defaultOptions.d.ts +4 -0
  25. package/dist/plugins/MagicDrawer/src/utils/defaultOptions.mjs +22 -0
  26. package/dist/plugins/MagicModal/src/components/MagicModal.vue +2 -2
  27. package/dist/plugins/MagicModal/src/components/MagicModal.vue.d.ts +4 -4
  28. package/dist/plugins/MagicModal/src/composables/private/useModalCallback.d.ts +4 -4
  29. package/dist/plugins/MagicModal/src/composables/private/useModalCallback.mjs +14 -13
  30. package/dist/plugins/MagicModal/src/composables/useModalApi.mjs +1 -1
  31. package/dist/plugins/MagicModal/src/utils/defaultOptions.d.ts +2 -2
  32. package/dist/plugins/MagicNoise/src/utils/defaultOptions.d.ts +1 -1
  33. package/dist/plugins/MagicPlayer/src/composables/private/useControlsApi.mjs +1 -1
  34. package/dist/plugins/MagicPlayer/src/composables/private/usePlayerInternalApi.mjs +1 -1
  35. package/dist/plugins/MagicPlayer/src/composables/usePlayerApi.mjs +1 -1
  36. package/dist/plugins/MagicScroll/src/components/MagicScrollScene.vue +1 -1
  37. package/dist/plugins/MagicScroll/src/components/MagicScrollScene.vue.d.ts +1 -1
  38. package/dist/plugins/MagicScroll/src/composables/useScrollApi.mjs +1 -1
  39. package/dist/plugins/MagicToast/src/components/MagicToast.vue +6 -6
  40. package/dist/plugins/MagicToast/src/components/MagicToast.vue.d.ts +5 -5
  41. package/dist/plugins/MagicToast/src/composables/private/useToastInternalApi.mjs +1 -1
  42. package/dist/plugins/MagicToast/src/composables/private/useToastStore.d.ts +2 -2
  43. package/dist/plugins/MagicToast/src/composables/useToastApi.mjs +1 -1
  44. package/dist/plugins/MagicToast/src/types/index.d.ts +1 -1
  45. package/dist/plugins/MagicToast/src/utils/defaultOptions.d.ts +1 -1
  46. package/dist/plugins/index.d.ts +1 -0
  47. package/dist/plugins/index.mjs +1 -0
  48. package/dist/utils/css/animations/slide-btt-out.css +0 -3
  49. package/dist/utils/css/animations/slide-ltr-out.css +0 -3
  50. package/dist/utils/css/animations/slide-rtl-out.css +0 -3
  51. package/dist/utils/css/animations/slide-ttb-out.css +0 -3
  52. package/dist/utils/{index.d.cts → index.d.mts} +9 -1
  53. package/dist/utils/index.d.ts +9 -1
  54. package/dist/utils/index.js +60 -2
  55. package/dist/utils/index.js.map +1 -1
  56. package/dist/utils/{index.cjs → index.mjs} +28 -35
  57. package/dist/utils/index.mjs.map +1 -0
  58. package/package.json +2 -4
  59. package/dist/utils/index.cjs.map +0 -1
@@ -1,4 +1,4 @@
1
- import { uuid } from "utils";
1
+ import { uuid } from "@maas/vue-equipment/utils";
2
2
  import {
3
3
  computed,
4
4
  onUnmounted,
@@ -1,5 +1,5 @@
1
1
  import type { MaybeRef } from 'vue';
2
- import type { PickPartial } from 'utils';
2
+ import type { PickPartial } from '@maas/vue-equipment/utils';
3
3
  type Toast = {
4
4
  id: string;
5
5
  component: Object;
@@ -1,4 +1,4 @@
1
1
  import type { ToastOptions } from '../types/index.js';
2
- import type { RequireAll } from 'utils';
2
+ import type { RequireAll } from '@maas/vue-equipment/utils';
3
3
  declare const defaultOptions: RequireAll<ToastOptions>;
4
4
  export { defaultOptions };
@@ -1,4 +1,5 @@
1
1
  export * from './MagicConsent/index.js';
2
+ export * from './MagicDrawer/index.js';
2
3
  export * from './MagicMarquee/index.js';
3
4
  export * from './MagicModal/index.js';
4
5
  export * from './MagicNoise/index.js';
@@ -1,4 +1,5 @@
1
1
  export * from "./MagicConsent/index.mjs";
2
+ export * from "./MagicDrawer/index.mjs";
2
3
  export * from "./MagicMarquee/index.mjs";
3
4
  export * from "./MagicModal/index.mjs";
4
5
  export * from "./MagicNoise/index.mjs";
@@ -1,8 +1,5 @@
1
1
 
2
2
  @keyframes slide-btt-out {
3
- 0% {
4
- transform: translateY(0);
5
- }
6
3
  100% {
7
4
  transform: translateY(100%);
8
5
  }
@@ -1,7 +1,4 @@
1
1
  @keyframes slide-ltr-out {
2
- 0% {
3
- transform: translateX(0);
4
- }
5
2
  100% {
6
3
  transform: translateX(-100%);
7
4
  }
@@ -1,7 +1,4 @@
1
1
  @keyframes slide-rtl-out {
2
- 0% {
3
- transform: translateX(0);
4
- }
5
2
  100% {
6
3
  transform: translateX(100%);
7
4
  }
@@ -1,7 +1,4 @@
1
1
  @keyframes slide-ttb-out {
2
- 0% {
3
- transform: translateY(0);
4
- }
5
2
  100% {
6
3
  transform: translateY(-100%);
7
4
  }
@@ -17,4 +17,12 @@ interface SlugifyOptions {
17
17
  }
18
18
  declare function slugify(string: string, options?: SlugifyOptions): string;
19
19
 
20
- export { type SlugifyOptions, clampValue, isIOS, mapValue, slugify, uniq, uuid };
20
+ type PickPartial<T, K extends keyof T> = {
21
+ [P in K]: Partial<T[P]>;
22
+ };
23
+
24
+ type RequireAll<T> = {
25
+ [P in keyof T]-?: T[P];
26
+ };
27
+
28
+ export { type PickPartial, type RequireAll, type SlugifyOptions, clampValue, isIOS, mapValue, slugify, uniq, uuid };
@@ -17,4 +17,12 @@ interface SlugifyOptions {
17
17
  }
18
18
  declare function slugify(string: string, options?: SlugifyOptions): string;
19
19
 
20
- export { type SlugifyOptions, clampValue, isIOS, mapValue, slugify, uniq, uuid };
20
+ type PickPartial<T, K extends keyof T> = {
21
+ [P in K]: Partial<T[P]>;
22
+ };
23
+
24
+ type RequireAll<T> = {
25
+ [P in keyof T]-?: T[P];
26
+ };
27
+
28
+ export { type PickPartial, type RequireAll, type SlugifyOptions, clampValue, isIOS, mapValue, slugify, uniq, uuid };
@@ -1,8 +1,64 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // index.ts
21
+ var utils_exports = {};
22
+ __export(utils_exports, {
23
+ clampValue: () => clampValue,
24
+ interpolate: () => interpolate,
25
+ isIOS: () => isIOS,
26
+ mapValue: () => mapValue,
27
+ slugify: () => slugify,
28
+ uniq: () => uniq,
29
+ uuid: () => uuid
30
+ });
31
+ module.exports = __toCommonJS(utils_exports);
32
+
1
33
  // src/functions/clampValue.ts
2
34
  function clampValue(value, min, max) {
3
35
  return value <= min ? min : value >= max ? max : value;
4
36
  }
5
37
 
38
+ // src/functions/interpolate.ts
39
+ function interpolate(args) {
40
+ const {
41
+ from,
42
+ to,
43
+ duration,
44
+ callback,
45
+ easing = (t) => t * (2 - t),
46
+ interval = 1
47
+ } = args;
48
+ const steps = Math.ceil(duration / interval);
49
+ const stepSize = 1 / steps;
50
+ let currentStep = 0;
51
+ const intervalId = setInterval(() => {
52
+ const progress = currentStep * stepSize;
53
+ const value = from + (to - from) * easing(progress);
54
+ callback(value);
55
+ currentStep++;
56
+ if (currentStep >= steps) {
57
+ clearInterval(intervalId);
58
+ }
59
+ }, interval);
60
+ }
61
+
6
62
  // src/functions/isIOS.ts
7
63
  function isIOS() {
8
64
  if (typeof window === "undefined")
@@ -64,12 +120,14 @@ function slugify(string, options) {
64
120
  }
65
121
  return slug;
66
122
  }
67
- export {
123
+ // Annotate the CommonJS export names for ESM import in node:
124
+ 0 && (module.exports = {
68
125
  clampValue,
126
+ interpolate,
69
127
  isIOS,
70
128
  mapValue,
71
129
  slugify,
72
130
  uniq,
73
131
  uuid
74
- };
132
+ });
75
133
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../packages/utils/src/functions/clampValue.ts","../../packages/utils/src/functions/isIOS.ts","../../packages/utils/src/functions/mapValue.ts","../../packages/utils/src/functions/uuid.ts","../../packages/utils/src/functions/uniq.ts","../../packages/utils/src/functions/slugify.ts"],"sourcesContent":["export function clampValue(value: number, min: number, max: number) {\n return value <= min ? min : value >= max ? max : value\n}\n","export function isIOS() {\n if (typeof window === 'undefined') return false\n return /iPad|iPhone|iPod/.test(navigator?.userAgent)\n}\n","export function mapValue(\n value: number,\n inMin: number,\n inMax: number,\n outMin: number,\n outMax: number,\n) {\n return ((value - inMin) * (outMax - outMin)) / (inMax - inMin) + outMin\n}\n","// This implementation is meant for internal use only.\n// It is only used to generate a unique IDs for the `key` props.\n// It should not replace crypto.randomUUID() or window.crypto.randomUUID().\n\nexport function uuid() {\n return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'\n .split('')\n .reduce(\n (c, i) =>\n c +\n (i === 'x'\n ? Math.floor(Math.random() * 0xf).toString(16)\n : i === 'y'\n ? Math.floor(Math.random() * 4 + 8).toString(16)\n : i),\n '',\n )\n}\n","export function uniq<T extends any[]>(a: T) {\n return Array.from(new Set(a))\n}\n","export interface SlugifyOptions {\n separator?: string\n trim?: boolean\n remove?: RegExp\n strict?: boolean\n lowercase?: boolean\n}\n\nconst defaultOptions: SlugifyOptions = {\n separator: '-',\n trim: true,\n remove: undefined,\n strict: true,\n lowercase: true,\n}\n\nexport function slugify(string: string, options?: SlugifyOptions): string {\n if (typeof string !== 'string') {\n throw new Error('slugify: string argument expected')\n }\n\n // Merge provided options with default options\n const _options = { ...defaultOptions, ...options }\n\n const charMap: { [key: string]: string } = {}\n\n let slug = string\n .normalize()\n .split('')\n .reduce(function (result, ch) {\n let appendChar = charMap[ch]\n if (appendChar === undefined) appendChar = ch\n if (appendChar === _options?.separator) appendChar = ' '\n return (\n result +\n appendChar.replace(_options?.remove || /[^\\w\\s$*_+~.()'\"!\\-:@]+/g, '')\n )\n }, '')\n\n if (_options.strict) {\n slug = slug.replace(/[^A-Za-z0-9\\s]/g, '')\n }\n\n if (_options.trim) {\n slug = slug.trim()\n }\n\n if (_options.separator) {\n slug = slug.replace(/ +/g, _options.separator)\n }\n\n if (_options.lowercase) {\n slug = slug.toLocaleLowerCase()\n }\n\n return slug\n}\n"],"mappings":";AAAO,SAAS,WAAW,OAAe,KAAa,KAAa;AAClE,SAAO,SAAS,MAAM,MAAM,SAAS,MAAM,MAAM;AACnD;;;ACFO,SAAS,QAAQ;AACtB,MAAI,OAAO,WAAW;AAAa,WAAO;AAC1C,SAAO,mBAAmB,KAAK,uCAAW,SAAS;AACrD;;;ACHO,SAAS,SACd,OACA,OACA,OACA,QACA,QACA;AACA,UAAS,QAAQ,UAAU,SAAS,WAAY,QAAQ,SAAS;AACnE;;;ACJO,SAAS,OAAO;AACrB,SAAO,uCACJ,MAAM,EAAE,EACR;AAAA,IACC,CAAC,GAAG,MACF,KACC,MAAM,MACH,KAAK,MAAM,KAAK,OAAO,IAAI,EAAG,EAAE,SAAS,EAAE,IAC3C,MAAM,MACN,KAAK,MAAM,KAAK,OAAO,IAAI,IAAI,CAAC,EAAE,SAAS,EAAE,IAC7C;AAAA,IACN;AAAA,EACF;AACJ;;;ACjBO,SAAS,KAAsB,GAAM;AAC1C,SAAO,MAAM,KAAK,IAAI,IAAI,CAAC,CAAC;AAC9B;;;ACMA,IAAM,iBAAiC;AAAA,EACrC,WAAW;AAAA,EACX,MAAM;AAAA,EACN,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,WAAW;AACb;AAEO,SAAS,QAAQ,QAAgB,SAAkC;AACxE,MAAI,OAAO,WAAW,UAAU;AAC9B,UAAM,IAAI,MAAM,mCAAmC;AAAA,EACrD;AAGA,QAAM,WAAW,EAAE,GAAG,gBAAgB,GAAG,QAAQ;AAEjD,QAAM,UAAqC,CAAC;AAE5C,MAAI,OAAO,OACR,UAAU,EACV,MAAM,EAAE,EACR,OAAO,SAAU,QAAQ,IAAI;AAC5B,QAAI,aAAa,QAAQ,EAAE;AAC3B,QAAI,eAAe;AAAW,mBAAa;AAC3C,QAAI,gBAAe,qCAAU;AAAW,mBAAa;AACrD,WACE,SACA,WAAW,SAAQ,qCAAU,WAAU,4BAA4B,EAAE;AAAA,EAEzE,GAAG,EAAE;AAEP,MAAI,SAAS,QAAQ;AACnB,WAAO,KAAK,QAAQ,mBAAmB,EAAE;AAAA,EAC3C;AAEA,MAAI,SAAS,MAAM;AACjB,WAAO,KAAK,KAAK;AAAA,EACnB;AAEA,MAAI,SAAS,WAAW;AACtB,WAAO,KAAK,QAAQ,OAAO,SAAS,SAAS;AAAA,EAC/C;AAEA,MAAI,SAAS,WAAW;AACtB,WAAO,KAAK,kBAAkB;AAAA,EAChC;AAEA,SAAO;AACT;","names":[]}
1
+ {"version":3,"sources":["../../packages/utils/index.ts","../../packages/utils/src/functions/clampValue.ts","../../packages/utils/src/functions/interpolate.ts","../../packages/utils/src/functions/isIOS.ts","../../packages/utils/src/functions/mapValue.ts","../../packages/utils/src/functions/uuid.ts","../../packages/utils/src/functions/uniq.ts","../../packages/utils/src/functions/slugify.ts"],"sourcesContent":["export * from './src/functions/clampValue'\nexport * from './src/functions/interpolate'\nexport * from './src/functions/isIOS'\nexport * from './src/functions/mapValue'\nexport * from './src/functions/uuid'\nexport * from './src/functions/uniq'\nexport * from './src/functions/slugify'\n\nexport type * from './src/types'\n","export function clampValue(value: number, min: number, max: number) {\n return value <= min ? min : value >= max ? max : value\n}\n","export type InterpolateArgs = {\n from: number\n to: number\n duration: number\n interval?: number\n easing?: (t: number) => number\n callback: (result: number) => void\n}\n\nexport function interpolate(args: InterpolateArgs) {\n const {\n from,\n to,\n duration,\n callback,\n easing = (t: number) => t * (2 - t),\n interval = 1,\n } = args\n\n const steps = Math.ceil(duration / interval)\n const stepSize = 1 / steps\n\n let currentStep = 0\n\n const intervalId = setInterval(() => {\n const progress = currentStep * stepSize\n const value = from + (to - from) * easing(progress)\n\n callback(value)\n currentStep++\n\n if (currentStep >= steps) {\n clearInterval(intervalId)\n }\n }, interval)\n}\n","export function isIOS() {\n if (typeof window === 'undefined') return false\n return /iPad|iPhone|iPod/.test(navigator?.userAgent)\n}\n","export function mapValue(\n value: number,\n inMin: number,\n inMax: number,\n outMin: number,\n outMax: number,\n) {\n return ((value - inMin) * (outMax - outMin)) / (inMax - inMin) + outMin\n}\n","// This implementation is meant for internal use only.\n// It is only used to generate a unique IDs for the `key` props.\n// It should not replace crypto.randomUUID() or window.crypto.randomUUID().\n\nexport function uuid() {\n return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'\n .split('')\n .reduce(\n (c, i) =>\n c +\n (i === 'x'\n ? Math.floor(Math.random() * 0xf).toString(16)\n : i === 'y'\n ? Math.floor(Math.random() * 4 + 8).toString(16)\n : i),\n '',\n )\n}\n","export function uniq<T extends any[]>(a: T) {\n return Array.from(new Set(a))\n}\n","export interface SlugifyOptions {\n separator?: string\n trim?: boolean\n remove?: RegExp\n strict?: boolean\n lowercase?: boolean\n}\n\nconst defaultOptions: SlugifyOptions = {\n separator: '-',\n trim: true,\n remove: undefined,\n strict: true,\n lowercase: true,\n}\n\nexport function slugify(string: string, options?: SlugifyOptions): string {\n if (typeof string !== 'string') {\n throw new Error('slugify: string argument expected')\n }\n\n // Merge provided options with default options\n const _options = { ...defaultOptions, ...options }\n\n const charMap: { [key: string]: string } = {}\n\n let slug = string\n .normalize()\n .split('')\n .reduce(function (result, ch) {\n let appendChar = charMap[ch]\n if (appendChar === undefined) appendChar = ch\n if (appendChar === _options?.separator) appendChar = ' '\n return (\n result +\n appendChar.replace(_options?.remove || /[^\\w\\s$*_+~.()'\"!\\-:@]+/g, '')\n )\n }, '')\n\n if (_options.strict) {\n slug = slug.replace(/[^A-Za-z0-9\\s]/g, '')\n }\n\n if (_options.trim) {\n slug = slug.trim()\n }\n\n if (_options.separator) {\n slug = slug.replace(/ +/g, _options.separator)\n }\n\n if (_options.lowercase) {\n slug = slug.toLocaleLowerCase()\n }\n\n return slug\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAO,SAAS,WAAW,OAAe,KAAa,KAAa;AAClE,SAAO,SAAS,MAAM,MAAM,SAAS,MAAM,MAAM;AACnD;;;ACOO,SAAS,YAAY,MAAuB;AACjD,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,SAAS,CAAC,MAAc,KAAK,IAAI;AAAA,IACjC,WAAW;AAAA,EACb,IAAI;AAEJ,QAAM,QAAQ,KAAK,KAAK,WAAW,QAAQ;AAC3C,QAAM,WAAW,IAAI;AAErB,MAAI,cAAc;AAElB,QAAM,aAAa,YAAY,MAAM;AACnC,UAAM,WAAW,cAAc;AAC/B,UAAM,QAAQ,QAAQ,KAAK,QAAQ,OAAO,QAAQ;AAElD,aAAS,KAAK;AACd;AAEA,QAAI,eAAe,OAAO;AACxB,oBAAc,UAAU;AAAA,IAC1B;AAAA,EACF,GAAG,QAAQ;AACb;;;ACnCO,SAAS,QAAQ;AACtB,MAAI,OAAO,WAAW;AAAa,WAAO;AAC1C,SAAO,mBAAmB,KAAK,uCAAW,SAAS;AACrD;;;ACHO,SAAS,SACd,OACA,OACA,OACA,QACA,QACA;AACA,UAAS,QAAQ,UAAU,SAAS,WAAY,QAAQ,SAAS;AACnE;;;ACJO,SAAS,OAAO;AACrB,SAAO,uCACJ,MAAM,EAAE,EACR;AAAA,IACC,CAAC,GAAG,MACF,KACC,MAAM,MACH,KAAK,MAAM,KAAK,OAAO,IAAI,EAAG,EAAE,SAAS,EAAE,IAC3C,MAAM,MACN,KAAK,MAAM,KAAK,OAAO,IAAI,IAAI,CAAC,EAAE,SAAS,EAAE,IAC7C;AAAA,IACN;AAAA,EACF;AACJ;;;ACjBO,SAAS,KAAsB,GAAM;AAC1C,SAAO,MAAM,KAAK,IAAI,IAAI,CAAC,CAAC;AAC9B;;;ACMA,IAAM,iBAAiC;AAAA,EACrC,WAAW;AAAA,EACX,MAAM;AAAA,EACN,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,WAAW;AACb;AAEO,SAAS,QAAQ,QAAgB,SAAkC;AACxE,MAAI,OAAO,WAAW,UAAU;AAC9B,UAAM,IAAI,MAAM,mCAAmC;AAAA,EACrD;AAGA,QAAM,WAAW,EAAE,GAAG,gBAAgB,GAAG,QAAQ;AAEjD,QAAM,UAAqC,CAAC;AAE5C,MAAI,OAAO,OACR,UAAU,EACV,MAAM,EAAE,EACR,OAAO,SAAU,QAAQ,IAAI;AAC5B,QAAI,aAAa,QAAQ,EAAE;AAC3B,QAAI,eAAe;AAAW,mBAAa;AAC3C,QAAI,gBAAe,qCAAU;AAAW,mBAAa;AACrD,WACE,SACA,WAAW,SAAQ,qCAAU,WAAU,4BAA4B,EAAE;AAAA,EAEzE,GAAG,EAAE;AAEP,MAAI,SAAS,QAAQ;AACnB,WAAO,KAAK,QAAQ,mBAAmB,EAAE;AAAA,EAC3C;AAEA,MAAI,SAAS,MAAM;AACjB,WAAO,KAAK,KAAK;AAAA,EACnB;AAEA,MAAI,SAAS,WAAW;AACtB,WAAO,KAAK,QAAQ,OAAO,SAAS,SAAS;AAAA,EAC/C;AAEA,MAAI,SAAS,WAAW;AACtB,WAAO,KAAK,kBAAkB;AAAA,EAChC;AAEA,SAAO;AACT;","names":[]}
@@ -1,39 +1,32 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
-
20
- // index.ts
21
- var utils_exports = {};
22
- __export(utils_exports, {
23
- clampValue: () => clampValue,
24
- isIOS: () => isIOS,
25
- mapValue: () => mapValue,
26
- slugify: () => slugify,
27
- uniq: () => uniq,
28
- uuid: () => uuid
29
- });
30
- module.exports = __toCommonJS(utils_exports);
31
-
32
1
  // src/functions/clampValue.ts
33
2
  function clampValue(value, min, max) {
34
3
  return value <= min ? min : value >= max ? max : value;
35
4
  }
36
5
 
6
+ // src/functions/interpolate.ts
7
+ function interpolate(args) {
8
+ const {
9
+ from,
10
+ to,
11
+ duration,
12
+ callback,
13
+ easing = (t) => t * (2 - t),
14
+ interval = 1
15
+ } = args;
16
+ const steps = Math.ceil(duration / interval);
17
+ const stepSize = 1 / steps;
18
+ let currentStep = 0;
19
+ const intervalId = setInterval(() => {
20
+ const progress = currentStep * stepSize;
21
+ const value = from + (to - from) * easing(progress);
22
+ callback(value);
23
+ currentStep++;
24
+ if (currentStep >= steps) {
25
+ clearInterval(intervalId);
26
+ }
27
+ }, interval);
28
+ }
29
+
37
30
  // src/functions/isIOS.ts
38
31
  function isIOS() {
39
32
  if (typeof window === "undefined")
@@ -95,13 +88,13 @@ function slugify(string, options) {
95
88
  }
96
89
  return slug;
97
90
  }
98
- // Annotate the CommonJS export names for ESM import in node:
99
- 0 && (module.exports = {
91
+ export {
100
92
  clampValue,
93
+ interpolate,
101
94
  isIOS,
102
95
  mapValue,
103
96
  slugify,
104
97
  uniq,
105
98
  uuid
106
- });
107
- //# sourceMappingURL=index.cjs.map
99
+ };
100
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../packages/utils/src/functions/clampValue.ts","../../packages/utils/src/functions/interpolate.ts","../../packages/utils/src/functions/isIOS.ts","../../packages/utils/src/functions/mapValue.ts","../../packages/utils/src/functions/uuid.ts","../../packages/utils/src/functions/uniq.ts","../../packages/utils/src/functions/slugify.ts"],"sourcesContent":["export function clampValue(value: number, min: number, max: number) {\n return value <= min ? min : value >= max ? max : value\n}\n","export type InterpolateArgs = {\n from: number\n to: number\n duration: number\n interval?: number\n easing?: (t: number) => number\n callback: (result: number) => void\n}\n\nexport function interpolate(args: InterpolateArgs) {\n const {\n from,\n to,\n duration,\n callback,\n easing = (t: number) => t * (2 - t),\n interval = 1,\n } = args\n\n const steps = Math.ceil(duration / interval)\n const stepSize = 1 / steps\n\n let currentStep = 0\n\n const intervalId = setInterval(() => {\n const progress = currentStep * stepSize\n const value = from + (to - from) * easing(progress)\n\n callback(value)\n currentStep++\n\n if (currentStep >= steps) {\n clearInterval(intervalId)\n }\n }, interval)\n}\n","export function isIOS() {\n if (typeof window === 'undefined') return false\n return /iPad|iPhone|iPod/.test(navigator?.userAgent)\n}\n","export function mapValue(\n value: number,\n inMin: number,\n inMax: number,\n outMin: number,\n outMax: number,\n) {\n return ((value - inMin) * (outMax - outMin)) / (inMax - inMin) + outMin\n}\n","// This implementation is meant for internal use only.\n// It is only used to generate a unique IDs for the `key` props.\n// It should not replace crypto.randomUUID() or window.crypto.randomUUID().\n\nexport function uuid() {\n return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'\n .split('')\n .reduce(\n (c, i) =>\n c +\n (i === 'x'\n ? Math.floor(Math.random() * 0xf).toString(16)\n : i === 'y'\n ? Math.floor(Math.random() * 4 + 8).toString(16)\n : i),\n '',\n )\n}\n","export function uniq<T extends any[]>(a: T) {\n return Array.from(new Set(a))\n}\n","export interface SlugifyOptions {\n separator?: string\n trim?: boolean\n remove?: RegExp\n strict?: boolean\n lowercase?: boolean\n}\n\nconst defaultOptions: SlugifyOptions = {\n separator: '-',\n trim: true,\n remove: undefined,\n strict: true,\n lowercase: true,\n}\n\nexport function slugify(string: string, options?: SlugifyOptions): string {\n if (typeof string !== 'string') {\n throw new Error('slugify: string argument expected')\n }\n\n // Merge provided options with default options\n const _options = { ...defaultOptions, ...options }\n\n const charMap: { [key: string]: string } = {}\n\n let slug = string\n .normalize()\n .split('')\n .reduce(function (result, ch) {\n let appendChar = charMap[ch]\n if (appendChar === undefined) appendChar = ch\n if (appendChar === _options?.separator) appendChar = ' '\n return (\n result +\n appendChar.replace(_options?.remove || /[^\\w\\s$*_+~.()'\"!\\-:@]+/g, '')\n )\n }, '')\n\n if (_options.strict) {\n slug = slug.replace(/[^A-Za-z0-9\\s]/g, '')\n }\n\n if (_options.trim) {\n slug = slug.trim()\n }\n\n if (_options.separator) {\n slug = slug.replace(/ +/g, _options.separator)\n }\n\n if (_options.lowercase) {\n slug = slug.toLocaleLowerCase()\n }\n\n return slug\n}\n"],"mappings":";AAAO,SAAS,WAAW,OAAe,KAAa,KAAa;AAClE,SAAO,SAAS,MAAM,MAAM,SAAS,MAAM,MAAM;AACnD;;;ACOO,SAAS,YAAY,MAAuB;AACjD,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,SAAS,CAAC,MAAc,KAAK,IAAI;AAAA,IACjC,WAAW;AAAA,EACb,IAAI;AAEJ,QAAM,QAAQ,KAAK,KAAK,WAAW,QAAQ;AAC3C,QAAM,WAAW,IAAI;AAErB,MAAI,cAAc;AAElB,QAAM,aAAa,YAAY,MAAM;AACnC,UAAM,WAAW,cAAc;AAC/B,UAAM,QAAQ,QAAQ,KAAK,QAAQ,OAAO,QAAQ;AAElD,aAAS,KAAK;AACd;AAEA,QAAI,eAAe,OAAO;AACxB,oBAAc,UAAU;AAAA,IAC1B;AAAA,EACF,GAAG,QAAQ;AACb;;;ACnCO,SAAS,QAAQ;AACtB,MAAI,OAAO,WAAW;AAAa,WAAO;AAC1C,SAAO,mBAAmB,KAAK,uCAAW,SAAS;AACrD;;;ACHO,SAAS,SACd,OACA,OACA,OACA,QACA,QACA;AACA,UAAS,QAAQ,UAAU,SAAS,WAAY,QAAQ,SAAS;AACnE;;;ACJO,SAAS,OAAO;AACrB,SAAO,uCACJ,MAAM,EAAE,EACR;AAAA,IACC,CAAC,GAAG,MACF,KACC,MAAM,MACH,KAAK,MAAM,KAAK,OAAO,IAAI,EAAG,EAAE,SAAS,EAAE,IAC3C,MAAM,MACN,KAAK,MAAM,KAAK,OAAO,IAAI,IAAI,CAAC,EAAE,SAAS,EAAE,IAC7C;AAAA,IACN;AAAA,EACF;AACJ;;;ACjBO,SAAS,KAAsB,GAAM;AAC1C,SAAO,MAAM,KAAK,IAAI,IAAI,CAAC,CAAC;AAC9B;;;ACMA,IAAM,iBAAiC;AAAA,EACrC,WAAW;AAAA,EACX,MAAM;AAAA,EACN,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,WAAW;AACb;AAEO,SAAS,QAAQ,QAAgB,SAAkC;AACxE,MAAI,OAAO,WAAW,UAAU;AAC9B,UAAM,IAAI,MAAM,mCAAmC;AAAA,EACrD;AAGA,QAAM,WAAW,EAAE,GAAG,gBAAgB,GAAG,QAAQ;AAEjD,QAAM,UAAqC,CAAC;AAE5C,MAAI,OAAO,OACR,UAAU,EACV,MAAM,EAAE,EACR,OAAO,SAAU,QAAQ,IAAI;AAC5B,QAAI,aAAa,QAAQ,EAAE;AAC3B,QAAI,eAAe;AAAW,mBAAa;AAC3C,QAAI,gBAAe,qCAAU;AAAW,mBAAa;AACrD,WACE,SACA,WAAW,SAAQ,qCAAU,WAAU,4BAA4B,EAAE;AAAA,EAEzE,GAAG,EAAE;AAEP,MAAI,SAAS,QAAQ;AACnB,WAAO,KAAK,QAAQ,mBAAmB,EAAE;AAAA,EAC3C;AAEA,MAAI,SAAS,MAAM;AACjB,WAAO,KAAK,KAAK;AAAA,EACnB;AAEA,MAAI,SAAS,WAAW;AACtB,WAAO,KAAK,QAAQ,OAAO,SAAS,SAAS;AAAA,EAC/C;AAEA,MAAI,SAAS,WAAW;AACtB,WAAO,KAAK,kBAAkB;AAAA,EAChC;AAEA,SAAO;AACT;","names":[]}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@maas/vue-equipment",
3
3
  "description": "A magic collection of Vue composables, plugins, components and directives",
4
- "version": "0.13.0",
4
+ "version": "0.14.0",
5
5
  "author": "Robin Scholz <https://github.com/robinscholz>, Christoph Jeworutzki <https://github.com/ChristophJeworutzki>",
6
6
  "devDependencies": {
7
7
  "@antfu/ni": "^0.21.12",
@@ -40,7 +40,6 @@
40
40
  ],
41
41
  "keywords": [],
42
42
  "license": "MIT",
43
- "main": "./dist/nuxt/module.cjs",
44
43
  "peerDependencies": {
45
44
  "@maas/magic-timer": "^1.0.0",
46
45
  "@vueuse/core": "^10.3.0",
@@ -51,7 +50,7 @@
51
50
  "mitt": "^3.0.1",
52
51
  "motion": "^10.16.2",
53
52
  "nuxt": "^3.5.1",
54
- "universal-cookie": "^6.1.1"
53
+ "universal-cookie": "4.0.4"
55
54
  },
56
55
  "peerDependenciesMeta": {
57
56
  "@maas/magic-timer": {
@@ -96,7 +95,6 @@
96
95
  "uninstall": "nlx rimraf --glob ./**/node_modules --glob ./**/pnpm-lock.yaml",
97
96
  "release": "turbo run t:release && release-it"
98
97
  },
99
- "types": "./dist/nuxt/types.d.ts",
100
98
  "volta": {
101
99
  "node": "18.16.1"
102
100
  },
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../packages/utils/index.ts","../../packages/utils/src/functions/clampValue.ts","../../packages/utils/src/functions/isIOS.ts","../../packages/utils/src/functions/mapValue.ts","../../packages/utils/src/functions/uuid.ts","../../packages/utils/src/functions/uniq.ts","../../packages/utils/src/functions/slugify.ts"],"sourcesContent":["export * from './src/functions/clampValue'\nexport * from './src/functions/isIOS'\nexport * from './src/functions/mapValue'\nexport * from './src/functions/uuid'\nexport * from './src/functions/uniq'\nexport * from './src/functions/slugify'\n","export function clampValue(value: number, min: number, max: number) {\n return value <= min ? min : value >= max ? max : value\n}\n","export function isIOS() {\n if (typeof window === 'undefined') return false\n return /iPad|iPhone|iPod/.test(navigator?.userAgent)\n}\n","export function mapValue(\n value: number,\n inMin: number,\n inMax: number,\n outMin: number,\n outMax: number,\n) {\n return ((value - inMin) * (outMax - outMin)) / (inMax - inMin) + outMin\n}\n","// This implementation is meant for internal use only.\n// It is only used to generate a unique IDs for the `key` props.\n// It should not replace crypto.randomUUID() or window.crypto.randomUUID().\n\nexport function uuid() {\n return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'\n .split('')\n .reduce(\n (c, i) =>\n c +\n (i === 'x'\n ? Math.floor(Math.random() * 0xf).toString(16)\n : i === 'y'\n ? Math.floor(Math.random() * 4 + 8).toString(16)\n : i),\n '',\n )\n}\n","export function uniq<T extends any[]>(a: T) {\n return Array.from(new Set(a))\n}\n","export interface SlugifyOptions {\n separator?: string\n trim?: boolean\n remove?: RegExp\n strict?: boolean\n lowercase?: boolean\n}\n\nconst defaultOptions: SlugifyOptions = {\n separator: '-',\n trim: true,\n remove: undefined,\n strict: true,\n lowercase: true,\n}\n\nexport function slugify(string: string, options?: SlugifyOptions): string {\n if (typeof string !== 'string') {\n throw new Error('slugify: string argument expected')\n }\n\n // Merge provided options with default options\n const _options = { ...defaultOptions, ...options }\n\n const charMap: { [key: string]: string } = {}\n\n let slug = string\n .normalize()\n .split('')\n .reduce(function (result, ch) {\n let appendChar = charMap[ch]\n if (appendChar === undefined) appendChar = ch\n if (appendChar === _options?.separator) appendChar = ' '\n return (\n result +\n appendChar.replace(_options?.remove || /[^\\w\\s$*_+~.()'\"!\\-:@]+/g, '')\n )\n }, '')\n\n if (_options.strict) {\n slug = slug.replace(/[^A-Za-z0-9\\s]/g, '')\n }\n\n if (_options.trim) {\n slug = slug.trim()\n }\n\n if (_options.separator) {\n slug = slug.replace(/ +/g, _options.separator)\n }\n\n if (_options.lowercase) {\n slug = slug.toLocaleLowerCase()\n }\n\n return slug\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAO,SAAS,WAAW,OAAe,KAAa,KAAa;AAClE,SAAO,SAAS,MAAM,MAAM,SAAS,MAAM,MAAM;AACnD;;;ACFO,SAAS,QAAQ;AACtB,MAAI,OAAO,WAAW;AAAa,WAAO;AAC1C,SAAO,mBAAmB,KAAK,uCAAW,SAAS;AACrD;;;ACHO,SAAS,SACd,OACA,OACA,OACA,QACA,QACA;AACA,UAAS,QAAQ,UAAU,SAAS,WAAY,QAAQ,SAAS;AACnE;;;ACJO,SAAS,OAAO;AACrB,SAAO,uCACJ,MAAM,EAAE,EACR;AAAA,IACC,CAAC,GAAG,MACF,KACC,MAAM,MACH,KAAK,MAAM,KAAK,OAAO,IAAI,EAAG,EAAE,SAAS,EAAE,IAC3C,MAAM,MACN,KAAK,MAAM,KAAK,OAAO,IAAI,IAAI,CAAC,EAAE,SAAS,EAAE,IAC7C;AAAA,IACN;AAAA,EACF;AACJ;;;ACjBO,SAAS,KAAsB,GAAM;AAC1C,SAAO,MAAM,KAAK,IAAI,IAAI,CAAC,CAAC;AAC9B;;;ACMA,IAAM,iBAAiC;AAAA,EACrC,WAAW;AAAA,EACX,MAAM;AAAA,EACN,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,WAAW;AACb;AAEO,SAAS,QAAQ,QAAgB,SAAkC;AACxE,MAAI,OAAO,WAAW,UAAU;AAC9B,UAAM,IAAI,MAAM,mCAAmC;AAAA,EACrD;AAGA,QAAM,WAAW,EAAE,GAAG,gBAAgB,GAAG,QAAQ;AAEjD,QAAM,UAAqC,CAAC;AAE5C,MAAI,OAAO,OACR,UAAU,EACV,MAAM,EAAE,EACR,OAAO,SAAU,QAAQ,IAAI;AAC5B,QAAI,aAAa,QAAQ,EAAE;AAC3B,QAAI,eAAe;AAAW,mBAAa;AAC3C,QAAI,gBAAe,qCAAU;AAAW,mBAAa;AACrD,WACE,SACA,WAAW,SAAQ,qCAAU,WAAU,4BAA4B,EAAE;AAAA,EAEzE,GAAG,EAAE;AAEP,MAAI,SAAS,QAAQ;AACnB,WAAO,KAAK,QAAQ,mBAAmB,EAAE;AAAA,EAC3C;AAEA,MAAI,SAAS,MAAM;AACjB,WAAO,KAAK,KAAK;AAAA,EACnB;AAEA,MAAI,SAAS,WAAW;AACtB,WAAO,KAAK,QAAQ,OAAO,SAAS,SAAS;AAAA,EAC/C;AAEA,MAAI,SAAS,WAAW;AACtB,WAAO,KAAK,kBAAkB;AAAA,EAChC;AAEA,SAAO;AACT;","names":[]}