@studiometa/js-toolkit 2.4.4-alpha.0 → 2.4.4-alpha.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 (42) hide show
  1. package/Base/index.d.ts +336 -0
  2. package/Base/managers/AbstractManager.d.ts +44 -0
  3. package/Base/managers/ChildrenManager.d.ts +41 -0
  4. package/Base/managers/EventsManager.d.ts +112 -0
  5. package/Base/managers/OptionsManager.d.ts +87 -0
  6. package/Base/managers/RefsManager.d.ts +32 -0
  7. package/Base/managers/ResponsiveOptionsManager.cjs +1 -1
  8. package/Base/managers/ResponsiveOptionsManager.d.ts +22 -0
  9. package/Base/managers/ServicesManager.d.ts +109 -0
  10. package/Base/utils.d.ts +40 -0
  11. package/decorators/index.d.ts +10 -0
  12. package/decorators/withBreakpointManager.d.ts +87 -0
  13. package/decorators/withBreakpointObserver.d.ts +93 -0
  14. package/decorators/withDrag.d.ts +84 -0
  15. package/decorators/withExtraConfig.d.ts +85 -0
  16. package/decorators/withFreezedOptions.d.ts +84 -0
  17. package/decorators/withIntersectionObserver.d.ts +97 -0
  18. package/decorators/withMountWhenInView.d.ts +95 -0
  19. package/decorators/withResponsiveOptions.d.ts +81 -0
  20. package/decorators/withScrolledInView.d.ts +198 -0
  21. package/decorators/withVue2.cjs +2 -2
  22. package/decorators/withVue2.d.ts +98 -0
  23. package/decorators/withVue2.js +2 -2
  24. package/helpers/createApp.d.ts +14 -0
  25. package/helpers/getDirectChildren.d.ts +31 -0
  26. package/helpers/getInstanceFromElement.d.ts +14 -0
  27. package/helpers/importOnInteraction.d.ts +23 -0
  28. package/helpers/importWhenIdle.d.ts +21 -0
  29. package/helpers/importWhenVisible.d.ts +23 -0
  30. package/helpers/index.d.ts +6 -0
  31. package/helpers/utils.d.ts +10 -0
  32. package/index.d.ts +5 -0
  33. package/package.json +1 -1
  34. package/services/drag.d.ts +1 -1
  35. package/services/index.cjs +1 -1
  36. package/services/index.d.ts +33 -25
  37. package/services/key.d.ts +1 -1
  38. package/services/load.d.ts +1 -1
  39. package/services/pointer.d.ts +1 -1
  40. package/services/raf.d.ts +1 -1
  41. package/services/resize.d.ts +1 -1
  42. package/services/scroll.d.ts +1 -1
@@ -0,0 +1,97 @@
1
+ import type { BaseConstructor, BaseTypeParameter } from '../Base/index.js';
2
+ interface WithIntersectionObserverInterface {
3
+ $options: {
4
+ intersectionObserver: IntersectionObserverInit;
5
+ };
6
+ $observer: IntersectionObserver;
7
+ intersected(entries: IntersectionObserverEntry[]): void;
8
+ }
9
+ /**
10
+ * IntersectionObserver decoration.
11
+ */
12
+ export default function withIntersectionObserver<T extends BaseTypeParameter = BaseTypeParameter>(BaseClass: BaseConstructor, defaultOptions?: IntersectionObserverInit): {
13
+ new <U extends BaseTypeParameter = BaseTypeParameter>(element: HTMLElement): {
14
+ /**
15
+ * Intersection observer instance.
16
+ */
17
+ $observer: IntersectionObserver;
18
+ $parent: import("../Base/index.js").default<{
19
+ $el: HTMLElement;
20
+ $options: import("../Base/index.js").BaseOptions;
21
+ $refs: import("../Base/index.js").BaseRefs;
22
+ $children: {
23
+ [name: string]: import("../Base/index.js").default<any> | Promise<import("../Base/index.js").default<any>>;
24
+ };
25
+ }>;
26
+ $id: string;
27
+ $el: (WithIntersectionObserverInterface & T & U)["$el"] & HTMLElement & {
28
+ __base__?: WeakMap<typeof import("../Base/index.js").default, import("../Base/index.js").default<{
29
+ $el: HTMLElement;
30
+ $options: import("../Base/index.js").BaseOptions;
31
+ $refs: import("../Base/index.js").BaseRefs;
32
+ $children: {
33
+ [name: string]: import("../Base/index.js").default<any> | Promise<import("../Base/index.js").default<any>>;
34
+ };
35
+ }> | "terminated">;
36
+ };
37
+ $isMounted: boolean;
38
+ __eventHandlers: Map<string, Set<EventListenerOrEventListenerObject>>;
39
+ readonly $root: import("../Base/index.js").default<{
40
+ $el: HTMLElement;
41
+ $options: import("../Base/index.js").BaseOptions;
42
+ $refs: import("../Base/index.js").BaseRefs;
43
+ $children: {
44
+ [name: string]: import("../Base/index.js").default<any> | Promise<import("../Base/index.js").default<any>>;
45
+ };
46
+ }>;
47
+ readonly __config: import("../Base/index.js").BaseConfig;
48
+ __services: import("../Base/managers/ServicesManager.js").default;
49
+ readonly $services: import("../Base/managers/ServicesManager.js").default;
50
+ __refs: import("../Base/managers/RefsManager.js").default & (WithIntersectionObserverInterface & T & U)["$refs"] & import("../Base/index.js").BaseRefs;
51
+ readonly $refs: import("../Base/managers/RefsManager.js").default & (WithIntersectionObserverInterface & T & U)["$refs"] & import("../Base/index.js").BaseRefs;
52
+ __options: import("../Base/managers/OptionsManager.js").default & (WithIntersectionObserverInterface & T & U)["$options"] & import("../Base/index.js").BaseOptions;
53
+ readonly $options: import("../Base/managers/OptionsManager.js").default & (WithIntersectionObserverInterface & T & U)["$options"] & import("../Base/index.js").BaseOptions;
54
+ __children: import("../Base/managers/ChildrenManager.js").default & ((WithIntersectionObserverInterface & T & U)["$children"] extends infer T_1 ? { [key in keyof T_1]: (WithIntersectionObserverInterface & T & U)["$children"][key][]; } : never) & import("../Base/index.js").BaseChildren;
55
+ readonly $children: import("../Base/managers/ChildrenManager.js").default & ((WithIntersectionObserverInterface & T & U)["$children"] extends infer T_2 ? { [key_1 in keyof T_2]: (WithIntersectionObserverInterface & T & U)["$children"][key_1][]; } : never) & import("../Base/index.js").BaseChildren;
56
+ __events: import("../Base/managers/EventsManager.js").default;
57
+ readonly $log: (...args: any) => void;
58
+ readonly __debug: (...args: any) => void;
59
+ readonly __managers: import("../Base/index.js").Managers;
60
+ __callMethod(method: string, ...args: any[]): any;
61
+ __hasEvent(event: string): boolean;
62
+ $mount(): any;
63
+ $update(): any;
64
+ $destroy(): any;
65
+ $terminate(): void;
66
+ __addEmits(event: string): void;
67
+ __removeEmits(event: string): void;
68
+ readonly __ctor: typeof import("../Base/index.js").default;
69
+ $on(event: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): () => void;
70
+ $off(event: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
71
+ $emit(event: string, ...args: any[]): void;
72
+ addEventListener(type: string, callback: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
73
+ dispatchEvent(event: Event): boolean;
74
+ removeEventListener(type: string, callback: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
75
+ };
76
+ config: {
77
+ name: string;
78
+ options: {
79
+ intersectionObserver: ObjectConstructor;
80
+ };
81
+ emits: string[];
82
+ debug?: boolean;
83
+ log?: boolean;
84
+ refs?: string[];
85
+ components?: import("../Base/index.js").BaseConfigComponents;
86
+ };
87
+ readonly $isBase: boolean;
88
+ $factory(nameOrSelector: string): import("../Base/index.js").default<{
89
+ $el: HTMLElement;
90
+ $options: import("../Base/index.js").BaseOptions;
91
+ $refs: import("../Base/index.js").BaseRefs;
92
+ $children: {
93
+ [name: string]: import("../Base/index.js").default<any> | Promise<import("../Base/index.js").default<any>>;
94
+ };
95
+ }>[];
96
+ };
97
+ export {};
@@ -0,0 +1,95 @@
1
+ import type { BaseTypeParameter, BaseConfig } from '../Base/index.js';
2
+ import Base from '../Base/index.js';
3
+ declare type WithMountWhenInViewInterface = {
4
+ $options: {
5
+ intersectionObserver: IntersectionObserverInit;
6
+ };
7
+ };
8
+ /**
9
+ * IntersectionObserver decoration.
10
+ */
11
+ export default function withMountWhenInView<T extends BaseTypeParameter = BaseTypeParameter>(BaseClass: typeof Base, defaultOptions?: IntersectionObserverInit): {
12
+ new <U extends BaseTypeParameter = BaseTypeParameter>(element: HTMLElement): {
13
+ /**
14
+ * Is the component visible?
15
+ * @private
16
+ */
17
+ __isVisible: boolean;
18
+ /**
19
+ * The component's observer.
20
+ * @private
21
+ */
22
+ __observer: IntersectionObserver;
23
+ /**
24
+ * Override the mounting of the component.
25
+ */
26
+ $mount(): any;
27
+ $parent: Base<{
28
+ $el: HTMLElement;
29
+ $options: import("../Base/index.js").BaseOptions;
30
+ $refs: import("../Base/index.js").BaseRefs;
31
+ $children: {
32
+ [name: string]: Base<any> | Promise<Base<any>>;
33
+ };
34
+ }>;
35
+ $id: string;
36
+ $el: (WithMountWhenInViewInterface & T & U)["$el"] & HTMLElement & {
37
+ __base__?: WeakMap<typeof Base, Base<{
38
+ $el: HTMLElement;
39
+ $options: import("../Base/index.js").BaseOptions;
40
+ $refs: import("../Base/index.js").BaseRefs;
41
+ $children: {
42
+ [name: string]: Base<any> | Promise<Base<any>>;
43
+ };
44
+ }> | "terminated">;
45
+ };
46
+ $isMounted: boolean;
47
+ __eventHandlers: Map<string, Set<EventListenerOrEventListenerObject>>;
48
+ readonly $root: Base<{
49
+ $el: HTMLElement;
50
+ $options: import("../Base/index.js").BaseOptions;
51
+ $refs: import("../Base/index.js").BaseRefs;
52
+ $children: {
53
+ [name: string]: Base<any> | Promise<Base<any>>;
54
+ };
55
+ }>;
56
+ readonly __config: BaseConfig;
57
+ __services: import("../Base/managers/ServicesManager.js").default;
58
+ readonly $services: import("../Base/managers/ServicesManager.js").default;
59
+ __refs: import("../Base/managers/RefsManager.js").default & (WithMountWhenInViewInterface & T & U)["$refs"] & import("../Base/index.js").BaseRefs;
60
+ readonly $refs: import("../Base/managers/RefsManager.js").default & (WithMountWhenInViewInterface & T & U)["$refs"] & import("../Base/index.js").BaseRefs;
61
+ __options: import("../Base/managers/OptionsManager.js").default & (WithMountWhenInViewInterface & T & U)["$options"] & import("../Base/index.js").BaseOptions;
62
+ readonly $options: import("../Base/managers/OptionsManager.js").default & (WithMountWhenInViewInterface & T & U)["$options"] & import("../Base/index.js").BaseOptions;
63
+ __children: import("../Base/managers/ChildrenManager.js").default & ((WithMountWhenInViewInterface & T & U)["$children"] extends infer T_1 ? { [key in keyof T_1]: (WithMountWhenInViewInterface & T & U)["$children"][key][]; } : never) & import("../Base/index.js").BaseChildren;
64
+ readonly $children: import("../Base/managers/ChildrenManager.js").default & ((WithMountWhenInViewInterface & T & U)["$children"] extends infer T_2 ? { [key_1 in keyof T_2]: (WithMountWhenInViewInterface & T & U)["$children"][key_1][]; } : never) & import("../Base/index.js").BaseChildren;
65
+ __events: import("../Base/managers/EventsManager.js").default;
66
+ readonly $log: (...args: any) => void;
67
+ readonly __debug: (...args: any) => void;
68
+ readonly __managers: import("../Base/index.js").Managers;
69
+ __callMethod(method: string, ...args: any[]): any;
70
+ __hasEvent(event: string): boolean;
71
+ $update(): any;
72
+ $destroy(): any;
73
+ $terminate(): void;
74
+ __addEmits(event: string): void;
75
+ __removeEmits(event: string): void;
76
+ readonly __ctor: typeof Base;
77
+ $on(event: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): () => void;
78
+ $off(event: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
79
+ $emit(event: string, ...args: any[]): void;
80
+ addEventListener(type: string, callback: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
81
+ dispatchEvent(event: Event): boolean;
82
+ removeEventListener(type: string, callback: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
83
+ };
84
+ config: BaseConfig;
85
+ readonly $isBase: boolean;
86
+ $factory(nameOrSelector: string): Base<{
87
+ $el: HTMLElement;
88
+ $options: import("../Base/index.js").BaseOptions;
89
+ $refs: import("../Base/index.js").BaseRefs;
90
+ $children: {
91
+ [name: string]: Base<any> | Promise<Base<any>>;
92
+ };
93
+ }>[];
94
+ };
95
+ export {};
@@ -0,0 +1,81 @@
1
+ import type { BaseTypeParameter, BaseConstructor, Managers } from '../Base/index.js';
2
+ import ResponsiveOptionsManager from '../Base/managers/ResponsiveOptionsManager.js';
3
+ /**
4
+ * Extends the configuration of an existing class.
5
+ */
6
+ export default function withResponsiveOptions<T extends BaseTypeParameter = BaseTypeParameter>(BaseClass: BaseConstructor): {
7
+ new <U extends BaseTypeParameters = BaseTypeParameter>(element: HTMLElement): {
8
+ /**
9
+ * Get managers.
10
+ */
11
+ readonly __managers: Managers & {
12
+ OptionsManager: typeof ResponsiveOptionsManager;
13
+ };
14
+ $parent: import("../Base/index.js").default<{
15
+ $el: HTMLElement;
16
+ $options: import("../Base/index.js").BaseOptions;
17
+ $refs: import("../Base/index.js").BaseRefs;
18
+ $children: {
19
+ [name: string]: import("../Base/index.js").default<any> | Promise<import("../Base/index.js").default<any>>;
20
+ };
21
+ }>;
22
+ $id: string;
23
+ $el: (U & T)["$el"] & HTMLElement & {
24
+ __base__?: WeakMap<typeof import("../Base/index.js").default, import("../Base/index.js").default<{
25
+ $el: HTMLElement;
26
+ $options: import("../Base/index.js").BaseOptions;
27
+ $refs: import("../Base/index.js").BaseRefs;
28
+ $children: {
29
+ [name: string]: import("../Base/index.js").default<any> | Promise<import("../Base/index.js").default<any>>;
30
+ };
31
+ }> | "terminated">;
32
+ };
33
+ $isMounted: boolean;
34
+ __eventHandlers: Map<string, Set<EventListenerOrEventListenerObject>>;
35
+ readonly $root: import("../Base/index.js").default<{
36
+ $el: HTMLElement;
37
+ $options: import("../Base/index.js").BaseOptions;
38
+ $refs: import("../Base/index.js").BaseRefs;
39
+ $children: {
40
+ [name: string]: import("../Base/index.js").default<any> | Promise<import("../Base/index.js").default<any>>;
41
+ };
42
+ }>;
43
+ readonly __config: import("../Base/index.js").BaseConfig;
44
+ __services: import("../Base/managers/ServicesManager.js").default;
45
+ readonly $services: import("../Base/managers/ServicesManager.js").default;
46
+ __refs: import("../Base/managers/RefsManager.js").default & (U & T)["$refs"] & import("../Base/index.js").BaseRefs;
47
+ readonly $refs: import("../Base/managers/RefsManager.js").default & (U & T)["$refs"] & import("../Base/index.js").BaseRefs;
48
+ __options: import("../Base/managers/OptionsManager.js").default & (U & T)["$options"] & import("../Base/index.js").BaseOptions;
49
+ readonly $options: import("../Base/managers/OptionsManager.js").default & (U & T)["$options"] & import("../Base/index.js").BaseOptions;
50
+ __children: import("../Base/managers/ChildrenManager.js").default & ((U & T)["$children"] extends infer T_1 ? { [key in keyof T_1]: (U & T)["$children"][key][]; } : never) & import("../Base/index.js").BaseChildren;
51
+ readonly $children: import("../Base/managers/ChildrenManager.js").default & ((U & T)["$children"] extends infer T_2 ? { [key_1 in keyof T_2]: (U & T)["$children"][key_1][]; } : never) & import("../Base/index.js").BaseChildren;
52
+ __events: import("../Base/managers/EventsManager.js").default;
53
+ readonly $log: (...args: any) => void;
54
+ readonly __debug: (...args: any) => void;
55
+ __callMethod(method: string, ...args: any[]): any;
56
+ __hasEvent(event: string): boolean;
57
+ $mount(): any;
58
+ $update(): any;
59
+ $destroy(): any;
60
+ $terminate(): void;
61
+ __addEmits(event: string): void;
62
+ __removeEmits(event: string): void;
63
+ readonly __ctor: typeof import("../Base/index.js").default;
64
+ $on(event: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): () => void;
65
+ $off(event: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
66
+ $emit(event: string, ...args: any[]): void;
67
+ addEventListener(type: string, callback: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
68
+ dispatchEvent(event: Event): boolean;
69
+ removeEventListener(type: string, callback: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
70
+ };
71
+ readonly $isBase: boolean;
72
+ config: import("../Base/index.js").BaseConfig;
73
+ $factory(nameOrSelector: string): import("../Base/index.js").default<{
74
+ $el: HTMLElement;
75
+ $options: import("../Base/index.js").BaseOptions;
76
+ $refs: import("../Base/index.js").BaseRefs;
77
+ $children: {
78
+ [name: string]: import("../Base/index.js").default<any> | Promise<import("../Base/index.js").default<any>>;
79
+ };
80
+ }>[];
81
+ };
@@ -0,0 +1,198 @@
1
+ import type { BaseTypeParameter, BaseConstructor, BaseConfig } from '../Base/index.js';
2
+ declare type ScrollInViewProps = {
3
+ start: {
4
+ x: number;
5
+ y: number;
6
+ };
7
+ end: {
8
+ x: number;
9
+ y: number;
10
+ };
11
+ current: {
12
+ x: number;
13
+ y: number;
14
+ };
15
+ dampedCurrent: {
16
+ x: number;
17
+ y: number;
18
+ };
19
+ progress: {
20
+ x: number;
21
+ y: number;
22
+ };
23
+ dampedProgress: {
24
+ x: number;
25
+ y: number;
26
+ };
27
+ };
28
+ declare type withScrolledInViewOptions = IntersectionObserverInit & {
29
+ useOffsetSizes?: boolean;
30
+ };
31
+ /**
32
+ * Add scrolled in view capabilities to a component.
33
+ */
34
+ export default function withScrolledInView<T extends BaseTypeParameter = BaseTypeParameter>(BaseClass: BaseConstructor, options?: withScrolledInViewOptions): {
35
+ new <U extends BaseTypeParameter = BaseTypeParameter>(element: any): {
36
+ __props: ScrollInViewProps;
37
+ /**
38
+ * Factor used for the `dampedProgress` props.
39
+ */
40
+ dampFactor: number;
41
+ /**
42
+ * Precision for the `dampedProgress` props.
43
+ */
44
+ dampPrecision: number;
45
+ /**
46
+ * Mounted hook.
47
+ *
48
+ * @returns {void}
49
+ */
50
+ mounted(): void;
51
+ /**
52
+ * Resized hook.
53
+ *
54
+ * @param {import('../services/resize').ResizeServiceProps} props
55
+ * @returns {void}
56
+ */
57
+ resized(props: any): void;
58
+ /**
59
+ * Scrolled hook.
60
+ *
61
+ * @param {import('../services/scroll').ScrollServiceProps} props
62
+ * @returns {void}
63
+ */
64
+ scrolled(props: any): void;
65
+ /**
66
+ * Ticked hook.
67
+ *
68
+ * @param {import('../services/raf').RafServiceProps} props
69
+ * @returns {void}
70
+ */
71
+ ticked(props: any): void;
72
+ /**
73
+ * Destroyed hook.
74
+ *
75
+ * @returns {void}
76
+ */
77
+ destroyed(): void;
78
+ /**
79
+ * Set the decorator props.
80
+ *
81
+ * @returns {void}
82
+ */
83
+ __setProps(): void;
84
+ __isVisible: boolean;
85
+ __observer: IntersectionObserver;
86
+ $mount(): any;
87
+ $parent: import("../Base/index.js").default<{
88
+ $el: HTMLElement;
89
+ $options: import("../Base/index.js").BaseOptions;
90
+ $refs: import("../Base/index.js").BaseRefs;
91
+ $children: {
92
+ [name: string]: import("../Base/index.js").default<any> | Promise<import("../Base/index.js").default<any>>;
93
+ };
94
+ }>;
95
+ $id: string;
96
+ $el: ({
97
+ $options: {
98
+ intersectionObserver: IntersectionObserverInit;
99
+ };
100
+ } & T & U)["$el"] & HTMLElement & {
101
+ __base__?: WeakMap<typeof import("../Base/index.js").default, import("../Base/index.js").default<{
102
+ $el: HTMLElement;
103
+ $options: import("../Base/index.js").BaseOptions;
104
+ $refs: import("../Base/index.js").BaseRefs;
105
+ $children: {
106
+ [name: string]: import("../Base/index.js").default<any> | Promise<import("../Base/index.js").default<any>>;
107
+ };
108
+ }> | "terminated">;
109
+ };
110
+ $isMounted: boolean;
111
+ __eventHandlers: Map<string, Set<EventListenerOrEventListenerObject>>;
112
+ readonly $root: import("../Base/index.js").default<{
113
+ $el: HTMLElement;
114
+ $options: import("../Base/index.js").BaseOptions;
115
+ $refs: import("../Base/index.js").BaseRefs;
116
+ $children: {
117
+ [name: string]: import("../Base/index.js").default<any> | Promise<import("../Base/index.js").default<any>>;
118
+ };
119
+ }>;
120
+ readonly __config: BaseConfig;
121
+ __services: import("../Base/managers/ServicesManager.js").default;
122
+ readonly $services: import("../Base/managers/ServicesManager.js").default;
123
+ __refs: import("../Base/managers/RefsManager.js").default & ({
124
+ $options: {
125
+ intersectionObserver: IntersectionObserverInit;
126
+ };
127
+ } & T & U)["$refs"] & import("../Base/index.js").BaseRefs;
128
+ readonly $refs: import("../Base/managers/RefsManager.js").default & ({
129
+ $options: {
130
+ intersectionObserver: IntersectionObserverInit;
131
+ };
132
+ } & T & U)["$refs"] & import("../Base/index.js").BaseRefs;
133
+ __options: import("../Base/managers/OptionsManager.js").default & ({
134
+ $options: {
135
+ intersectionObserver: IntersectionObserverInit;
136
+ };
137
+ } & T & U)["$options"] & import("../Base/index.js").BaseOptions;
138
+ readonly $options: import("../Base/managers/OptionsManager.js").default & ({
139
+ $options: {
140
+ intersectionObserver: IntersectionObserverInit;
141
+ };
142
+ } & T & U)["$options"] & import("../Base/index.js").BaseOptions; /**
143
+ * Set the decorator props.
144
+ *
145
+ * @returns {void}
146
+ */
147
+ __children: import("../Base/managers/ChildrenManager.js").default & (({
148
+ $options: {
149
+ intersectionObserver: IntersectionObserverInit;
150
+ };
151
+ } & T & U)["$children"] extends infer T_1 ? { [key in keyof T_1]: ({
152
+ $options: {
153
+ intersectionObserver: IntersectionObserverInit;
154
+ };
155
+ } & T & U)["$children"][key][]; } : never) & import("../Base/index.js").BaseChildren;
156
+ readonly $children: import("../Base/managers/ChildrenManager.js").default & (({
157
+ $options: {
158
+ intersectionObserver: IntersectionObserverInit;
159
+ };
160
+ } & T & U)["$children"] extends infer T_2 ? { [key_1 in keyof T_2]: ({
161
+ $options: {
162
+ intersectionObserver: IntersectionObserverInit;
163
+ };
164
+ } & T & U)["$children"][key_1][]; } : never) & import("../Base/index.js").BaseChildren;
165
+ __events: import("../Base/managers/EventsManager.js").default;
166
+ readonly $log: (...args: any) => void;
167
+ readonly __debug: (...args: any) => void;
168
+ readonly __managers: import("../Base/index.js").Managers;
169
+ __callMethod(method: string, ...args: any[]): any;
170
+ __hasEvent(event: string): boolean;
171
+ $update(): any;
172
+ $destroy(): any;
173
+ $terminate(): void;
174
+ __addEmits(event: string): void;
175
+ __removeEmits(event: string): void;
176
+ readonly __ctor: typeof import("../Base/index.js").default;
177
+ $on(event: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): () => void;
178
+ $off(event: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
179
+ $emit(event: string, ...args: any[]): void;
180
+ addEventListener(type: string, callback: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
181
+ dispatchEvent(event: Event): boolean;
182
+ removeEventListener(type: string, callback: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
183
+ };
184
+ /**
185
+ * Config.
186
+ */
187
+ config: BaseConfig;
188
+ readonly $isBase: boolean;
189
+ $factory(nameOrSelector: string): import("../Base/index.js").default<{
190
+ $el: HTMLElement;
191
+ $options: import("../Base/index.js").BaseOptions;
192
+ $refs: import("../Base/index.js").BaseRefs;
193
+ $children: {
194
+ [name: string]: import("../Base/index.js").default<any> | Promise<import("../Base/index.js").default<any>>;
195
+ };
196
+ }>[];
197
+ };
198
+ export {};
@@ -28,7 +28,7 @@ __export(withVue2_exports, {
28
28
  });
29
29
  module.exports = __toCommonJS(withVue2_exports);
30
30
  var import_utils = require("../utils/index.cjs");
31
- function withVue2(BaseClass, Vue) {
31
+ function withVue2(BaseClass, VueCtor) {
32
32
  var _a, _b, _c;
33
33
  return _c = class extends BaseClass {
34
34
  constructor(element) {
@@ -48,7 +48,7 @@ function withVue2(BaseClass, Vue) {
48
48
  }
49
49
  return;
50
50
  }
51
- this.$vue = new Vue(vueConfig);
51
+ this.$vue = new VueCtor(vueConfig);
52
52
  this.$on("mounted", () => {
53
53
  if (!(this.$refs.vue instanceof HTMLElement)) {
54
54
  throw new Error("[withVue] The `vue` refs must be a single HTMLElement.");
@@ -0,0 +1,98 @@
1
+ import type Vue from 'vue';
2
+ import type { ComponentOptions, VueConstructor } from 'vue';
3
+ import type { BaseConstructor, BaseTypeParameter } from '../Base/index.js';
4
+ interface WithVue2Interface {
5
+ $refs: {
6
+ vue: HTMLElement;
7
+ };
8
+ }
9
+ /**
10
+ * withVue decorator.
11
+ */
12
+ export default function withVue2<T extends BaseTypeParameter = BaseTypeParameter, VueTypeParameter extends Vue = Vue>(BaseClass: BaseConstructor, VueCtor: VueConstructor): {
13
+ new <U extends BaseTypeParameter = BaseTypeParameter>(element: HTMLElement): {
14
+ $vue: Vue;
15
+ $parent: import("../Base/index.js").default<{
16
+ $el: HTMLElement;
17
+ $options: import("../Base/index.js").BaseOptions;
18
+ $refs: import("../Base/index.js").BaseRefs;
19
+ $children: {
20
+ [name: string]: import("../Base/index.js").default<any> | Promise<import("../Base/index.js").default<any>>;
21
+ };
22
+ }>;
23
+ $id: string;
24
+ $el: (WithVue2Interface & T & U)["$el"] & HTMLElement & {
25
+ __base__?: WeakMap<typeof import("../Base/index.js").default, import("../Base/index.js").default<{
26
+ $el: HTMLElement;
27
+ $options: import("../Base/index.js").BaseOptions;
28
+ $refs: import("../Base/index.js").BaseRefs;
29
+ $children: {
30
+ [name: string]: import("../Base/index.js").default<any> | Promise<import("../Base/index.js").default<any>>;
31
+ };
32
+ }> | "terminated">;
33
+ };
34
+ $isMounted: boolean;
35
+ __eventHandlers: Map<string, Set<EventListenerOrEventListenerObject>>;
36
+ readonly $root: import("../Base/index.js").default<{
37
+ $el: HTMLElement;
38
+ $options: import("../Base/index.js").BaseOptions;
39
+ $refs: import("../Base/index.js").BaseRefs;
40
+ $children: {
41
+ [name: string]: import("../Base/index.js").default<any> | Promise<import("../Base/index.js").default<any>>;
42
+ };
43
+ }>;
44
+ readonly __config: import("../Base/index.js").BaseConfig;
45
+ __services: import("../Base/managers/ServicesManager.js").default;
46
+ readonly $services: import("../Base/managers/ServicesManager.js").default;
47
+ __refs: import("../Base/managers/RefsManager.js").default & (WithVue2Interface & T & U)["$refs"] & import("../Base/index.js").BaseRefs;
48
+ readonly $refs: import("../Base/managers/RefsManager.js").default & (WithVue2Interface & T & U)["$refs"] & import("../Base/index.js").BaseRefs;
49
+ __options: import("../Base/managers/OptionsManager.js").default & (WithVue2Interface & T & U)["$options"] & import("../Base/index.js").BaseOptions;
50
+ readonly $options: import("../Base/managers/OptionsManager.js").default & (WithVue2Interface & T & U)["$options"] & import("../Base/index.js").BaseOptions;
51
+ __children: import("../Base/managers/ChildrenManager.js").default & ((WithVue2Interface & T & U)["$children"] extends infer T_1 ? { [key in keyof T_1]: (WithVue2Interface & T & U)["$children"][key][]; } : never) & import("../Base/index.js").BaseChildren;
52
+ readonly $children: import("../Base/managers/ChildrenManager.js").default & ((WithVue2Interface & T & U)["$children"] extends infer T_2 ? { [key_1 in keyof T_2]: (WithVue2Interface & T & U)["$children"][key_1][]; } : never) & import("../Base/index.js").BaseChildren;
53
+ __events: import("../Base/managers/EventsManager.js").default;
54
+ readonly $log: (...args: any) => void;
55
+ readonly __debug: (...args: any) => void;
56
+ readonly __managers: import("../Base/index.js").Managers;
57
+ __callMethod(method: string, ...args: any[]): any;
58
+ __hasEvent(event: string): boolean;
59
+ $mount(): any;
60
+ $update(): any;
61
+ $destroy(): any;
62
+ $terminate(): void;
63
+ __addEmits(event: string): void;
64
+ __removeEmits(event: string): void;
65
+ readonly __ctor: typeof import("../Base/index.js").default;
66
+ $on(event: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): () => void;
67
+ $off(event: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
68
+ $emit(event: string, ...args: any[]): void;
69
+ addEventListener(type: string, callback: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
70
+ dispatchEvent(event: Event): boolean;
71
+ removeEventListener(type: string, callback: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
72
+ };
73
+ config: {
74
+ name: string;
75
+ refs: string[];
76
+ debug?: boolean;
77
+ log?: boolean;
78
+ emits?: string[];
79
+ components?: import("../Base/index.js").BaseConfigComponents;
80
+ options?: import("../Base/managers/OptionsManager.js").OptionsSchema;
81
+ };
82
+ /**
83
+ * Vue app configuration.
84
+ */
85
+ vueConfig: ComponentOptions<VueTypeParameter, import("vue/types/options.js").DefaultData<VueTypeParameter>, import("vue/types/options.js").DefaultMethods<VueTypeParameter>, import("vue/types/options.js").DefaultComputed, import("vue/types/options.js").PropsDefinition<import("vue/types/options.js").DefaultProps>, import("vue/types/options.js").DefaultProps> & {
86
+ render: ComponentOptions<VueTypeParameter>['render'];
87
+ };
88
+ readonly $isBase: boolean;
89
+ $factory(nameOrSelector: string): import("../Base/index.js").default<{
90
+ $el: HTMLElement;
91
+ $options: import("../Base/index.js").BaseOptions;
92
+ $refs: import("../Base/index.js").BaseRefs;
93
+ $children: {
94
+ [name: string]: import("../Base/index.js").default<any> | Promise<import("../Base/index.js").default<any>>;
95
+ };
96
+ }>[];
97
+ };
98
+ export {};
@@ -5,7 +5,7 @@ var __publicField = (obj, key, value) => {
5
5
  return value;
6
6
  };
7
7
  import { isDev, isFunction } from "../utils/index.js";
8
- function withVue2(BaseClass, Vue) {
8
+ function withVue2(BaseClass, VueCtor) {
9
9
  var _a, _b, _c;
10
10
  return _c = class extends BaseClass {
11
11
  constructor(element) {
@@ -25,7 +25,7 @@ function withVue2(BaseClass, Vue) {
25
25
  }
26
26
  return;
27
27
  }
28
- this.$vue = new Vue(vueConfig);
28
+ this.$vue = new VueCtor(vueConfig);
29
29
  this.$on("mounted", () => {
30
30
  if (!(this.$refs.vue instanceof HTMLElement)) {
31
31
  throw new Error("[withVue] The `vue` refs must be a single HTMLElement.");
@@ -0,0 +1,14 @@
1
+ /**
2
+ * @typedef {import('../Base/index.js').BaseConstructor} BaseConstructor
3
+ */
4
+ /**
5
+ * Instantiate and mount the given component on the given root element when the page has been loaded
6
+ * and return a function to use the app instance when it is ready.
7
+ *
8
+ * @template {BaseConstructor} T
9
+ * @param {T} App
10
+ * @param {HTMLElement} [rootElement]
11
+ * @returns {() => Promise<InstanceType<T>>}
12
+ */
13
+ export default function createApp<T extends typeof import("../Base/index.js").default>(App: T, rootElement?: HTMLElement): () => Promise<InstanceType<T>>;
14
+ export type BaseConstructor = import('../Base/index.js').BaseConstructor;
@@ -0,0 +1,31 @@
1
+ /**
2
+ * @typedef {import('../Base/index.js').default} Base
3
+ */
4
+ /**
5
+ * Get direct children from a parent when working with nested components.
6
+ *
7
+ * @template {Base} T
8
+ * @param {Base} parentInstance
9
+ * @param {string} parentName
10
+ * @param {string} childrenName
11
+ * @returns {T[]}
12
+ */
13
+ export function getDirectChildren<T extends import("../Base/index.js").default<{
14
+ $el: HTMLElement;
15
+ $options: import("../Base/index.js").BaseOptions;
16
+ $refs: import("../Base/index.js").BaseRefs;
17
+ $children: {
18
+ [name: string]: import("../Base/index.js").default<any> | Promise<import("../Base/index.js").default<any>>;
19
+ };
20
+ }>>(parentInstance: Base, parentName: string, childrenName: string): T[];
21
+ /**
22
+ * Test if a component instance is a direct child from the given component.
23
+ *
24
+ * @param {Base} parentInstance
25
+ * @param {string} parentName
26
+ * @param {string} childrenName
27
+ * @param {Base} childInstance
28
+ * @returns {boolean}
29
+ */
30
+ export function isDirectChild(parentInstance: Base, parentName: string, childrenName: string, childInstance: Base): boolean;
31
+ export type Base = import('../Base/index.js').default;