@vanduo-oss/framework 1.4.4 → 1.4.6

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 (51) hide show
  1. package/CHANGELOG.md +71 -0
  2. package/README.md +23 -9
  3. package/css/components/draggable.css +4 -0
  4. package/css/components/forms.css +1 -0
  5. package/css/utilities/print.css +19 -17
  6. package/css/vanduo.css +2 -3
  7. package/dist/build-info.json +3 -3
  8. package/dist/vanduo-core.css +19266 -0
  9. package/dist/vanduo-core.css.map +1 -0
  10. package/dist/vanduo-core.min.css +2 -0
  11. package/dist/vanduo-core.min.css.map +1 -0
  12. package/dist/vanduo.cjs.js +8 -7
  13. package/dist/vanduo.cjs.js.map +2 -2
  14. package/dist/vanduo.cjs.min.js +3 -3
  15. package/dist/vanduo.cjs.min.js.map +3 -3
  16. package/dist/vanduo.css +11 -33398
  17. package/dist/vanduo.css.map +1 -1
  18. package/dist/vanduo.d.ts +77 -0
  19. package/dist/vanduo.esm.js +8 -7
  20. package/dist/vanduo.esm.js.map +2 -2
  21. package/dist/vanduo.esm.min.js +3 -3
  22. package/dist/vanduo.esm.min.js.map +3 -3
  23. package/dist/vanduo.js +8 -7
  24. package/dist/vanduo.js.map +2 -2
  25. package/dist/vanduo.min.css +2 -2
  26. package/dist/vanduo.min.css.map +1 -1
  27. package/dist/vanduo.min.js +3 -3
  28. package/dist/vanduo.min.js.map +3 -3
  29. package/js/components/parallax.js +13 -7
  30. package/package.json +7 -3
  31. package/css/components/doc-tabs.css +0 -38
  32. package/dist/icons/phosphor/bold/Phosphor-Bold.svg +0 -3057
  33. package/dist/icons/phosphor/bold/Phosphor-Bold.ttf +0 -0
  34. package/dist/icons/phosphor/bold/Phosphor-Bold.woff +0 -0
  35. package/dist/icons/phosphor/bold/Phosphor-Bold.woff2 +0 -0
  36. package/dist/icons/phosphor/bold/style.css +0 -4627
  37. package/dist/icons/phosphor/duotone/Phosphor-Duotone.svg +0 -3054
  38. package/dist/icons/phosphor/duotone/Phosphor-Duotone.ttf +0 -0
  39. package/dist/icons/phosphor/duotone/Phosphor-Duotone.woff +0 -0
  40. package/dist/icons/phosphor/duotone/Phosphor-Duotone.woff2 +0 -0
  41. package/dist/icons/phosphor/duotone/style.css +0 -12115
  42. package/dist/icons/phosphor/light/Phosphor-Light.svg +0 -3057
  43. package/dist/icons/phosphor/light/Phosphor-Light.ttf +0 -0
  44. package/dist/icons/phosphor/light/Phosphor-Light.woff +0 -0
  45. package/dist/icons/phosphor/light/Phosphor-Light.woff2 +0 -0
  46. package/dist/icons/phosphor/light/style.css +0 -4627
  47. package/dist/icons/phosphor/thin/Phosphor-Thin.svg +0 -3057
  48. package/dist/icons/phosphor/thin/Phosphor-Thin.ttf +0 -0
  49. package/dist/icons/phosphor/thin/Phosphor-Thin.woff +0 -0
  50. package/dist/icons/phosphor/thin/Phosphor-Thin.woff2 +0 -0
  51. package/dist/icons/phosphor/thin/style.css +0 -4627
@@ -0,0 +1,77 @@
1
+ /**
2
+ * Vanduo Framework — TypeScript declarations for the runtime object.
3
+ *
4
+ * These cover the `Vanduo` runtime surface (init / lifecycle / registry).
5
+ * Per-component option and instance types are intentionally out of scope for
6
+ * now; component objects are typed loosely as `VanduoComponent`.
7
+ */
8
+
9
+ /** A node that can scope component initialization. */
10
+ export type VanduoRoot = Document | Element | DocumentFragment;
11
+
12
+ /** Options accepted when registering a component. */
13
+ export interface VanduoRegisterOptions {
14
+ /** Alternate names that resolve to this component. */
15
+ aliases?: string[];
16
+ }
17
+
18
+ /**
19
+ * A registered component. Components self-register via `Vanduo.register` and
20
+ * typically expose `init` / `destroyAll`. Additional members vary per component
21
+ * and are intentionally untyped here.
22
+ */
23
+ export interface VanduoComponent {
24
+ init?(root?: VanduoRoot): void;
25
+ destroyAll?(root?: VanduoRoot): void;
26
+ [key: string]: unknown;
27
+ }
28
+
29
+ /** The Vanduo framework runtime object (also available as `window.Vanduo`). */
30
+ export interface VanduoStatic {
31
+ /** Framework version (matches package.json). */
32
+ readonly version: string;
33
+ /** Registered components keyed by canonical name. */
34
+ readonly components: Record<string, VanduoComponent>;
35
+ /** Alias → canonical-name map. */
36
+ readonly aliases: Record<string, string>;
37
+
38
+ /** Resolve an alias to its canonical component name. */
39
+ resolveComponentName(name: string): string;
40
+
41
+ /**
42
+ * Initialize the framework. With no argument (or `document`) it waits for DOM
43
+ * ready and initializes every component; with an element/fragment it
44
+ * initializes components within that scope immediately.
45
+ */
46
+ init(root?: VanduoRoot): void;
47
+
48
+ /** Initialize all registered components within `root` (defaults to document). */
49
+ initComponents(root?: VanduoRoot): void;
50
+
51
+ /** Register a component under `name`, optionally with aliases. */
52
+ register(name: string, component: VanduoComponent, options?: VanduoRegisterOptions): void;
53
+
54
+ /** Register an additional alias for an existing component. */
55
+ registerAlias(alias: string, name: string): void;
56
+
57
+ /** Destroy then re-initialize a single component within `root`. */
58
+ reinit(name: string, root?: VanduoRoot): void;
59
+
60
+ /** Destroy component instances within `root` (defaults to document). */
61
+ destroy(root?: VanduoRoot): void;
62
+
63
+ /** Destroy all component instances across the document. */
64
+ destroyAll(): void;
65
+
66
+ /** Get a registered component by (canonical or alias) name, or `null`. */
67
+ getComponent(name: string): VanduoComponent | null;
68
+ }
69
+
70
+ export const Vanduo: VanduoStatic;
71
+ export default Vanduo;
72
+
73
+ declare global {
74
+ interface Window {
75
+ Vanduo: VanduoStatic;
76
+ }
77
+ }
@@ -1,4 +1,4 @@
1
- /*! Vanduo v1.4.4 | Built: 2026-06-07T19:14:20.877Z | git:781df0d | development */
1
+ /*! Vanduo v1.4.6 | Built: 2026-06-13T10:32:26.875Z | git:82019ff | development */
2
2
 
3
3
  // js/utils/lifecycle.js
4
4
  (function() {
@@ -176,7 +176,7 @@
176
176
  // js/vanduo.js
177
177
  (function() {
178
178
  "use strict";
179
- const VANDUO_VERSION = true ? "1.4.4" : "0.0.0-dev";
179
+ const VANDUO_VERSION = true ? "1.4.6" : "0.0.0-dev";
180
180
  const hasOwn = Object.prototype.hasOwnProperty;
181
181
  const Vanduo2 = {
182
182
  version: VANDUO_VERSION,
@@ -3079,13 +3079,13 @@
3079
3079
  */
3080
3080
  initParallax: function(element) {
3081
3081
  element.dataset.parallaxInitialized = "true";
3082
- const disableMobile = element.classList.contains("parallax-disable-mobile");
3082
+ const disableMobile = element.classList.contains("vd-parallax-disable-mobile") || element.classList.contains("parallax-disable-mobile");
3083
3083
  if (disableMobile && this.isMobile) {
3084
3084
  return;
3085
3085
  }
3086
3086
  const layers = element.querySelectorAll(".vd-parallax-layer, .vd-parallax-bg");
3087
3087
  const speed = this.getSpeed(element);
3088
- const direction = element.classList.contains("parallax-horizontal") ? "horizontal" : "vertical";
3088
+ const direction = element.classList.contains("vd-parallax-horizontal") || element.classList.contains("parallax-horizontal") ? "horizontal" : "vertical";
3089
3089
  this.parallaxElements.set(element, {
3090
3090
  layers: Array.from(layers),
3091
3091
  speed,
@@ -3100,9 +3100,9 @@
3100
3100
  * @returns {number} Speed multiplier
3101
3101
  */
3102
3102
  getSpeed: function(element) {
3103
- if (element.classList.contains("parallax-slow")) {
3103
+ if (element.classList.contains("vd-parallax-slow") || element.classList.contains("parallax-slow")) {
3104
3104
  return 0.5;
3105
- } else if (element.classList.contains("parallax-fast")) {
3105
+ } else if (element.classList.contains("vd-parallax-fast") || element.classList.contains("parallax-fast")) {
3106
3106
  return 1.5;
3107
3107
  }
3108
3108
  return 1;
@@ -3149,7 +3149,8 @@
3149
3149
  ));
3150
3150
  const offset = (scrollProgress - 0.5) * config.speed * 100;
3151
3151
  config.layers.forEach((layer, _index) => {
3152
- const layerSpeed = layer.dataset.parallaxSpeed ? parseFloat(layer.dataset.parallaxSpeed) : 1;
3152
+ const layerSpeedAttr = layer.dataset.parallaxSpeed || layer.dataset.speed;
3153
+ const layerSpeed = layerSpeedAttr ? parseFloat(layerSpeedAttr) : 1;
3153
3154
  const layerOffset = offset * layerSpeed;
3154
3155
  if (config.direction === "horizontal") {
3155
3156
  layer.style.transform = `translateX(${layerOffset}px)`;