@studiometa/js-toolkit 2.4.7 → 2.6.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.
- package/Base/index.cjs +15 -21
- package/Base/index.d.ts +5 -5
- package/Base/index.js +5 -5
- package/Base/managers/AbstractManager.cjs +2 -2
- package/Base/managers/AbstractManager.d.ts +11 -21
- package/Base/managers/AbstractManager.js +1 -1
- package/Base/managers/ChildrenManager.cjs +3 -9
- package/Base/managers/ChildrenManager.d.ts +2 -2
- package/Base/managers/ChildrenManager.js +2 -2
- package/Base/managers/EventsManager.cjs +49 -9
- package/Base/managers/EventsManager.d.ts +26 -2
- package/Base/managers/EventsManager.js +48 -8
- package/Base/managers/OptionsManager.cjs +6 -8
- package/Base/managers/OptionsManager.d.ts +42 -55
- package/Base/managers/OptionsManager.js +4 -6
- package/Base/managers/RefsManager.cjs +9 -14
- package/Base/managers/RefsManager.d.ts +3 -11
- package/Base/managers/RefsManager.js +7 -6
- package/Base/managers/ResponsiveOptionsManager.cjs +3 -9
- package/Base/managers/ResponsiveOptionsManager.d.ts +8 -4
- package/Base/managers/ResponsiveOptionsManager.js +2 -2
- package/Base/managers/ServicesManager.cjs +19 -36
- package/Base/managers/ServicesManager.d.ts +33 -58
- package/Base/managers/ServicesManager.js +11 -22
- package/decorators/withResponsiveOptions.cjs +2 -8
- package/decorators/withResponsiveOptions.js +1 -1
- package/helpers/getClosestParent.cjs +48 -0
- package/helpers/getClosestParent.d.ts +5 -0
- package/helpers/getClosestParent.js +20 -0
- package/helpers/index.cjs +3 -1
- package/helpers/index.d.ts +2 -1
- package/helpers/index.js +11 -9
- package/package.json +1 -1
- package/services/drag.cjs +62 -37
- package/services/drag.js +62 -37
- package/utils/css/animate.cjs +29 -2
- package/utils/css/animate.d.ts +4 -24
- package/utils/css/animate.js +29 -2
- package/utils/css/classes.cjs +5 -2
- package/utils/css/classes.d.ts +6 -6
- package/utils/css/classes.js +5 -2
- package/utils/css/index.cjs +1 -1
- package/utils/css/index.d.ts +7 -7
- package/utils/css/styles.cjs +11 -8
- package/utils/css/styles.d.ts +4 -4
- package/utils/css/styles.js +11 -8
- package/utils/css/transform.cjs +5 -2
- package/utils/css/transform.d.ts +2 -2
- package/utils/css/transform.js +5 -2
- package/utils/css/transition.cjs +7 -1
- package/utils/css/transition.d.ts +5 -8
- package/utils/css/transition.js +7 -1
- package/utils/css/utils.cjs +31 -0
- package/utils/css/utils.d.ts +1 -0
- package/utils/css/utils.js +9 -0
- package/utils/index.cjs +1 -1
- package/utils/index.d.ts +19 -19
package/Base/index.cjs
CHANGED
|
@@ -1,8 +1,6 @@
|
|
|
1
|
-
var __create = Object.create;
|
|
2
1
|
var __defProp = Object.defineProperty;
|
|
3
2
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
3
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
-
var __getProtoOf = Object.getPrototypeOf;
|
|
6
4
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
5
|
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
8
6
|
var __export = (target, all) => {
|
|
@@ -17,10 +15,6 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
17
15
|
}
|
|
18
16
|
return to;
|
|
19
17
|
};
|
|
20
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
-
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
22
|
-
mod
|
|
23
|
-
));
|
|
24
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
25
19
|
var __publicField = (obj, key, value) => {
|
|
26
20
|
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
@@ -34,11 +28,11 @@ __export(Base_exports, {
|
|
|
34
28
|
});
|
|
35
29
|
module.exports = __toCommonJS(Base_exports);
|
|
36
30
|
var import_utils = require("./utils.cjs");
|
|
37
|
-
var import_ChildrenManager =
|
|
38
|
-
var import_RefsManager =
|
|
39
|
-
var import_ServicesManager =
|
|
40
|
-
var import_EventsManager =
|
|
41
|
-
var import_OptionsManager =
|
|
31
|
+
var import_ChildrenManager = require("./managers/ChildrenManager.cjs");
|
|
32
|
+
var import_RefsManager = require("./managers/RefsManager.cjs");
|
|
33
|
+
var import_ServicesManager = require("./managers/ServicesManager.cjs");
|
|
34
|
+
var import_EventsManager = require("./managers/EventsManager.cjs");
|
|
35
|
+
var import_OptionsManager = require("./managers/OptionsManager.cjs");
|
|
42
36
|
var import_utils2 = require("../utils/index.cjs");
|
|
43
37
|
var id = 0;
|
|
44
38
|
function createAndTestManagers(instance) {
|
|
@@ -46,27 +40,27 @@ function createAndTestManagers(instance) {
|
|
|
46
40
|
{
|
|
47
41
|
prop: "__options",
|
|
48
42
|
constructorName: "OptionsManager",
|
|
49
|
-
constructor: import_OptionsManager.
|
|
43
|
+
constructor: import_OptionsManager.OptionsManager
|
|
50
44
|
},
|
|
51
45
|
{
|
|
52
46
|
prop: "__services",
|
|
53
47
|
constructorName: "ServicesManager",
|
|
54
|
-
constructor: import_ServicesManager.
|
|
48
|
+
constructor: import_ServicesManager.ServicesManager
|
|
55
49
|
},
|
|
56
50
|
{
|
|
57
51
|
prop: "__events",
|
|
58
52
|
constructorName: "EventsManager",
|
|
59
|
-
constructor: import_EventsManager.
|
|
53
|
+
constructor: import_EventsManager.EventsManager
|
|
60
54
|
},
|
|
61
55
|
{
|
|
62
56
|
prop: "__refs",
|
|
63
57
|
constructorName: "RefsManager",
|
|
64
|
-
constructor: import_RefsManager.
|
|
58
|
+
constructor: import_RefsManager.RefsManager
|
|
65
59
|
},
|
|
66
60
|
{
|
|
67
61
|
prop: "__children",
|
|
68
62
|
constructorName: "ChildrenManager",
|
|
69
|
-
constructor: import_ChildrenManager.
|
|
63
|
+
constructor: import_ChildrenManager.ChildrenManager
|
|
70
64
|
}
|
|
71
65
|
].forEach(({ prop, constructorName, constructor }) => {
|
|
72
66
|
instance[prop] = new instance.__managers[constructorName](instance);
|
|
@@ -168,11 +162,11 @@ var Base = class extends EventTarget {
|
|
|
168
162
|
}
|
|
169
163
|
get __managers() {
|
|
170
164
|
return {
|
|
171
|
-
ChildrenManager: import_ChildrenManager.
|
|
172
|
-
EventsManager: import_EventsManager.
|
|
173
|
-
OptionsManager: import_OptionsManager.
|
|
174
|
-
RefsManager: import_RefsManager.
|
|
175
|
-
ServicesManager: import_ServicesManager.
|
|
165
|
+
ChildrenManager: import_ChildrenManager.ChildrenManager,
|
|
166
|
+
EventsManager: import_EventsManager.EventsManager,
|
|
167
|
+
OptionsManager: import_OptionsManager.OptionsManager,
|
|
168
|
+
RefsManager: import_RefsManager.RefsManager,
|
|
169
|
+
ServicesManager: import_ServicesManager.ServicesManager
|
|
176
170
|
};
|
|
177
171
|
}
|
|
178
172
|
__callMethod(method, ...args) {
|
package/Base/index.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import ChildrenManager from './managers/ChildrenManager.js';
|
|
2
|
-
import RefsManager from './managers/RefsManager.js';
|
|
3
|
-
import ServicesManager from './managers/ServicesManager.js';
|
|
4
|
-
import EventsManager from './managers/EventsManager.js';
|
|
5
|
-
import OptionsManager from './managers/OptionsManager.js';
|
|
1
|
+
import { ChildrenManager } from './managers/ChildrenManager.js';
|
|
2
|
+
import { RefsManager } from './managers/RefsManager.js';
|
|
3
|
+
import { ServicesManager } from './managers/ServicesManager.js';
|
|
4
|
+
import { EventsManager } from './managers/EventsManager.js';
|
|
5
|
+
import { OptionsManager } from './managers/OptionsManager.js';
|
|
6
6
|
export declare type BaseEl = HTMLElement & {
|
|
7
7
|
__base__?: WeakMap<BaseConstructor, Base | 'terminated'>;
|
|
8
8
|
};
|
package/Base/index.js
CHANGED
|
@@ -5,11 +5,11 @@ var __publicField = (obj, key, value) => {
|
|
|
5
5
|
return value;
|
|
6
6
|
};
|
|
7
7
|
import { getComponentElements, getEventTarget } from "./utils.js";
|
|
8
|
-
import ChildrenManager from "./managers/ChildrenManager.js";
|
|
9
|
-
import RefsManager from "./managers/RefsManager.js";
|
|
10
|
-
import ServicesManager from "./managers/ServicesManager.js";
|
|
11
|
-
import EventsManager from "./managers/EventsManager.js";
|
|
12
|
-
import OptionsManager from "./managers/OptionsManager.js";
|
|
8
|
+
import { ChildrenManager } from "./managers/ChildrenManager.js";
|
|
9
|
+
import { RefsManager } from "./managers/RefsManager.js";
|
|
10
|
+
import { ServicesManager } from "./managers/ServicesManager.js";
|
|
11
|
+
import { EventsManager } from "./managers/EventsManager.js";
|
|
12
|
+
import { OptionsManager } from "./managers/OptionsManager.js";
|
|
13
13
|
import { noop, isDev, isFunction, isArray } from "../utils/index.js";
|
|
14
14
|
let id = 0;
|
|
15
15
|
function createAndTestManagers(instance) {
|
|
@@ -21,10 +21,10 @@ var __publicField = (obj, key, value) => {
|
|
|
21
21
|
return value;
|
|
22
22
|
};
|
|
23
23
|
|
|
24
|
-
// packages/js-toolkit/Base/managers/AbstractManager.
|
|
24
|
+
// packages/js-toolkit/Base/managers/AbstractManager.ts
|
|
25
25
|
var AbstractManager_exports = {};
|
|
26
26
|
__export(AbstractManager_exports, {
|
|
27
|
-
|
|
27
|
+
AbstractManager: () => AbstractManager
|
|
28
28
|
});
|
|
29
29
|
module.exports = __toCommonJS(AbstractManager_exports);
|
|
30
30
|
var AbstractManager = class {
|
|
@@ -1,37 +1,30 @@
|
|
|
1
|
-
|
|
2
|
-
* @typedef {import('../index.js').Base} Base
|
|
3
|
-
* @typedef {import('../index.js').BaseConfig} BaseConfig
|
|
4
|
-
* @typedef {import('./EventsManager.js').default} EventsManager
|
|
5
|
-
*/
|
|
1
|
+
import type { Base } from '../index.js';
|
|
6
2
|
/**
|
|
7
3
|
* AbstractManager class.
|
|
8
4
|
*/
|
|
9
|
-
export
|
|
10
|
-
/**
|
|
11
|
-
* Class constructor.
|
|
12
|
-
*
|
|
13
|
-
* @param {Base} base
|
|
14
|
-
*/
|
|
15
|
-
constructor(base: Base);
|
|
5
|
+
export declare class AbstractManager {
|
|
16
6
|
/**
|
|
17
|
-
*
|
|
7
|
+
* Base instance.
|
|
18
8
|
*/
|
|
19
9
|
__base: Base;
|
|
20
10
|
/**
|
|
21
11
|
* Get the base instance root element.
|
|
22
|
-
* @returns {HTMLElement}
|
|
23
12
|
*/
|
|
24
|
-
get __element(): HTMLElement
|
|
13
|
+
get __element(): HTMLElement & {
|
|
14
|
+
__base__?: WeakMap<import("../index.js").BaseConstructor<Base<import("../index.js").BaseProps>>, Base<import("../index.js").BaseProps> | "terminated">;
|
|
15
|
+
};
|
|
25
16
|
/**
|
|
26
17
|
* Get the base instance config.
|
|
27
|
-
* @returns {BaseConfig}
|
|
28
18
|
*/
|
|
29
19
|
get __config(): import("../index.js").BaseConfig;
|
|
30
20
|
/**
|
|
31
21
|
* Get the events manager.
|
|
32
|
-
* @returns {EventsManager}
|
|
33
22
|
*/
|
|
34
|
-
get __eventsManager(): import("./EventsManager.js").
|
|
23
|
+
get __eventsManager(): import("./EventsManager.js").EventsManager;
|
|
24
|
+
/**
|
|
25
|
+
* Class constructor.
|
|
26
|
+
*/
|
|
27
|
+
constructor(base: Base);
|
|
35
28
|
/**
|
|
36
29
|
* Prevent a list of properties from being enumerable and writable.
|
|
37
30
|
* @param {string[]} properties
|
|
@@ -39,6 +32,3 @@ export default class AbstractManager {
|
|
|
39
32
|
*/
|
|
40
33
|
__hideProperties(properties: string[]): void;
|
|
41
34
|
}
|
|
42
|
-
export type Base = import('../index.js').Base;
|
|
43
|
-
export type BaseConfig = import('../index.js').BaseConfig;
|
|
44
|
-
export type EventsManager = import('./EventsManager.js').default;
|
|
@@ -1,8 +1,6 @@
|
|
|
1
|
-
var __create = Object.create;
|
|
2
1
|
var __defProp = Object.defineProperty;
|
|
3
2
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
3
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
-
var __getProtoOf = Object.getPrototypeOf;
|
|
6
4
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
5
|
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
8
6
|
var __export = (target, all) => {
|
|
@@ -17,10 +15,6 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
17
15
|
}
|
|
18
16
|
return to;
|
|
19
17
|
};
|
|
20
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
-
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
22
|
-
mod
|
|
23
|
-
));
|
|
24
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
25
19
|
var __publicField = (obj, key, value) => {
|
|
26
20
|
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
@@ -30,10 +24,10 @@ var __publicField = (obj, key, value) => {
|
|
|
30
24
|
// packages/js-toolkit/Base/managers/ChildrenManager.ts
|
|
31
25
|
var ChildrenManager_exports = {};
|
|
32
26
|
__export(ChildrenManager_exports, {
|
|
33
|
-
|
|
27
|
+
ChildrenManager: () => ChildrenManager
|
|
34
28
|
});
|
|
35
29
|
module.exports = __toCommonJS(ChildrenManager_exports);
|
|
36
|
-
var import_AbstractManager =
|
|
30
|
+
var import_AbstractManager = require("./AbstractManager.cjs");
|
|
37
31
|
var import_utils = require("../utils.cjs");
|
|
38
32
|
function __getChild(that, el, ComponentClass, name) {
|
|
39
33
|
const asyncComponentPromise = that.__asyncComponentPromises.get(ComponentClass);
|
|
@@ -104,7 +98,7 @@ function __triggerHookForAll(that, hook) {
|
|
|
104
98
|
});
|
|
105
99
|
});
|
|
106
100
|
}
|
|
107
|
-
var ChildrenManager = class extends import_AbstractManager.
|
|
101
|
+
var ChildrenManager = class extends import_AbstractManager.AbstractManager {
|
|
108
102
|
constructor() {
|
|
109
103
|
super(...arguments);
|
|
110
104
|
__publicField(this, "__asyncComponentPromises", /* @__PURE__ */ new WeakMap());
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import type { BaseConstructor, BaseAsyncConstructor } from '../index.js';
|
|
2
|
-
import AbstractManager from './AbstractManager.js';
|
|
2
|
+
import { AbstractManager } from './AbstractManager.js';
|
|
3
3
|
/**
|
|
4
4
|
* Children manager.
|
|
5
5
|
*/
|
|
6
|
-
export
|
|
6
|
+
export declare class ChildrenManager extends AbstractManager {
|
|
7
7
|
/**
|
|
8
8
|
* Store async component promises to avoid calling them multiple times and
|
|
9
9
|
* waiting for them when they are already resolved.
|
|
@@ -4,7 +4,7 @@ var __publicField = (obj, key, value) => {
|
|
|
4
4
|
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
5
5
|
return value;
|
|
6
6
|
};
|
|
7
|
-
import AbstractManager from "./AbstractManager.js";
|
|
7
|
+
import { AbstractManager } from "./AbstractManager.js";
|
|
8
8
|
import { getComponentElements } from "../utils.js";
|
|
9
9
|
function __getChild(that, el, ComponentClass, name) {
|
|
10
10
|
const asyncComponentPromise = that.__asyncComponentPromises.get(ComponentClass);
|
|
@@ -99,5 +99,5 @@ class ChildrenManager extends AbstractManager {
|
|
|
99
99
|
}
|
|
100
100
|
}
|
|
101
101
|
export {
|
|
102
|
-
ChildrenManager
|
|
102
|
+
ChildrenManager
|
|
103
103
|
};
|
|
@@ -30,7 +30,7 @@ var __publicField = (obj, key, value) => {
|
|
|
30
30
|
// packages/js-toolkit/Base/managers/EventsManager.ts
|
|
31
31
|
var EventsManager_exports = {};
|
|
32
32
|
__export(EventsManager_exports, {
|
|
33
|
-
|
|
33
|
+
EventsManager: () => EventsManager,
|
|
34
34
|
normalizeEventName: () => normalizeEventName,
|
|
35
35
|
normalizeName: () => normalizeName
|
|
36
36
|
});
|
|
@@ -38,22 +38,30 @@ module.exports = __toCommonJS(EventsManager_exports);
|
|
|
38
38
|
var import_getAllProperties = __toESM(require("../../utils/object/getAllProperties.cjs"), 1);
|
|
39
39
|
var import_utils = require("../../utils/index.cjs");
|
|
40
40
|
var import_utils2 = require("../utils.cjs");
|
|
41
|
-
var import_AbstractManager =
|
|
41
|
+
var import_AbstractManager = require("./AbstractManager.cjs");
|
|
42
42
|
var import_RefsManager = require("./RefsManager.cjs");
|
|
43
43
|
var names = /* @__PURE__ */ new Map();
|
|
44
|
+
var normalizeRegex1 = /[A-Z]([A-Z].*)/g;
|
|
45
|
+
var normalizeRegex2 = /[^a-zA-Z\d\s:]/g;
|
|
46
|
+
var normalizeRegex3 = /(^\w|\s+\w)/g;
|
|
44
47
|
function normalizeName(name) {
|
|
45
48
|
if (!names.has(name)) {
|
|
46
49
|
names.set(
|
|
47
50
|
name,
|
|
48
|
-
name.replace(
|
|
51
|
+
name.replace(normalizeRegex1, (c) => c.toLowerCase()).replace(normalizeRegex2, " ").replace(normalizeRegex3, (c) => c.trim().toUpperCase()).trim()
|
|
49
52
|
);
|
|
50
53
|
}
|
|
51
54
|
return names.get(name);
|
|
52
55
|
}
|
|
53
56
|
var eventNames = /* @__PURE__ */ new Map();
|
|
57
|
+
var normalizeEventRegex1 = /[A-Z]/g;
|
|
58
|
+
var normalizeEventRegex2 = /^-/;
|
|
54
59
|
function normalizeEventName(name) {
|
|
55
60
|
if (!eventNames.has(name)) {
|
|
56
|
-
eventNames.set(
|
|
61
|
+
eventNames.set(
|
|
62
|
+
name,
|
|
63
|
+
name.replace(normalizeEventRegex1, (c) => `-${c.toLowerCase()}`).replace(normalizeEventRegex2, "")
|
|
64
|
+
);
|
|
57
65
|
}
|
|
58
66
|
return eventNames.get(name);
|
|
59
67
|
}
|
|
@@ -100,16 +108,32 @@ function manageChild(that, name, instance, mode = "add") {
|
|
|
100
108
|
instance[action](event, that.__childrenHandler);
|
|
101
109
|
});
|
|
102
110
|
}
|
|
111
|
+
var isDocumentRegex = /^onDocument[A-Z][a-z]+/;
|
|
112
|
+
var isWindowRegex = /^onWindow[A-Z][a-z]+/;
|
|
113
|
+
var methodIsDocument = (method) => isDocumentRegex.test(method);
|
|
114
|
+
var methodIsWindow = (method) => isWindowRegex.test(method);
|
|
115
|
+
var methodIsGlobal = (method) => methodIsWindow(method) || methodIsDocument(method);
|
|
116
|
+
var getGlobalEventTarget = (method) => methodIsDocument(method) ? document : window;
|
|
103
117
|
function manageRootElement(that, mode = "add") {
|
|
104
118
|
const modeMethod = `${mode}EventListener`;
|
|
105
119
|
const methods = getEventMethodsByName(that);
|
|
106
120
|
const { __base: base, __config: config } = that;
|
|
107
|
-
methods.
|
|
108
|
-
|
|
109
|
-
|
|
121
|
+
methods.forEach((method) => {
|
|
122
|
+
let event = getEventNameByMethod(method);
|
|
123
|
+
if ((0, import_utils2.eventIsDefinedInConfig)(event, config) || (0, import_utils2.eventIsNative)(event, base.$el)) {
|
|
124
|
+
const target = (0, import_utils2.getEventTarget)(base, event, config);
|
|
125
|
+
target[modeMethod](event, that.__rootElementHandler);
|
|
126
|
+
} else if (methodIsGlobal(method)) {
|
|
127
|
+
event = getEventNameByMethod(method, methodIsDocument(method) ? "document" : "window");
|
|
128
|
+
const target = getGlobalEventTarget(method);
|
|
129
|
+
target[modeMethod](
|
|
130
|
+
event,
|
|
131
|
+
methodIsDocument(method) ? that.__documentHandler : that.__windowHandler
|
|
132
|
+
);
|
|
133
|
+
}
|
|
110
134
|
});
|
|
111
135
|
}
|
|
112
|
-
var EventsManager = class extends import_AbstractManager.
|
|
136
|
+
var EventsManager = class extends import_AbstractManager.AbstractManager {
|
|
113
137
|
constructor(base) {
|
|
114
138
|
super(base);
|
|
115
139
|
__publicField(this, "__methodsCache", /* @__PURE__ */ new Map());
|
|
@@ -124,6 +148,20 @@ var EventsManager = class extends import_AbstractManager.default {
|
|
|
124
148
|
}
|
|
125
149
|
}
|
|
126
150
|
});
|
|
151
|
+
__publicField(this, "__documentHandler", {
|
|
152
|
+
handleEvent: (event) => {
|
|
153
|
+
const normalizedEventName = normalizeName(event.type);
|
|
154
|
+
const method = `onDocument${normalizedEventName}`;
|
|
155
|
+
this.__base[method](event);
|
|
156
|
+
}
|
|
157
|
+
});
|
|
158
|
+
__publicField(this, "__windowHandler", {
|
|
159
|
+
handleEvent: (event) => {
|
|
160
|
+
const normalizedEventName = normalizeName(event.type);
|
|
161
|
+
const method = `onWindow${normalizedEventName}`;
|
|
162
|
+
this.__base[method](event);
|
|
163
|
+
}
|
|
164
|
+
});
|
|
127
165
|
__publicField(this, "__refsHandler", {
|
|
128
166
|
handleEvent: (event) => {
|
|
129
167
|
const ref = event.currentTarget;
|
|
@@ -159,7 +197,9 @@ var EventsManager = class extends import_AbstractManager.default {
|
|
|
159
197
|
"__methodsCache",
|
|
160
198
|
"__rootElementHandler",
|
|
161
199
|
"__refsHandler",
|
|
162
|
-
"__childrenHandler"
|
|
200
|
+
"__childrenHandler",
|
|
201
|
+
"__documentHandler",
|
|
202
|
+
"__windowHandler"
|
|
163
203
|
]);
|
|
164
204
|
}
|
|
165
205
|
bindRef(name, elements) {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { Base } from '../index.js';
|
|
2
|
-
import AbstractManager from './AbstractManager.js';
|
|
2
|
+
import { AbstractManager } from './AbstractManager.js';
|
|
3
3
|
/**
|
|
4
4
|
* Normalize the given name to PascalCase, such as:
|
|
5
5
|
*
|
|
@@ -33,12 +33,36 @@ export declare function normalizeEventName(name: string): string;
|
|
|
33
33
|
* @todo Prevent binding of `onChildOrRefEvent` to the root element
|
|
34
34
|
* @todo Use event delegation?
|
|
35
35
|
*/
|
|
36
|
-
export
|
|
36
|
+
export declare class EventsManager extends AbstractManager {
|
|
37
37
|
__methodsCache: Map<string, string[]>;
|
|
38
38
|
/**
|
|
39
39
|
* Event listener object for the root element.
|
|
40
40
|
*/
|
|
41
41
|
__rootElementHandler: EventListenerObject;
|
|
42
|
+
/**
|
|
43
|
+
* Event listener object for the root element.
|
|
44
|
+
*
|
|
45
|
+
* @type {EventListenerObject}
|
|
46
|
+
*/
|
|
47
|
+
__documentHandler: {
|
|
48
|
+
/**
|
|
49
|
+
* @param {Event|CustomEvent} event
|
|
50
|
+
* @returns {void}
|
|
51
|
+
*/
|
|
52
|
+
handleEvent: (event: any) => void;
|
|
53
|
+
};
|
|
54
|
+
/**
|
|
55
|
+
* Event listener object for the root element.
|
|
56
|
+
*
|
|
57
|
+
* @type {EventListenerObject}
|
|
58
|
+
*/
|
|
59
|
+
__windowHandler: {
|
|
60
|
+
/**
|
|
61
|
+
* @param {Event|CustomEvent} event
|
|
62
|
+
* @returns {void}
|
|
63
|
+
*/
|
|
64
|
+
handleEvent: (event: any) => void;
|
|
65
|
+
};
|
|
42
66
|
/**
|
|
43
67
|
* Event listener object for the refs.
|
|
44
68
|
*/
|
|
@@ -7,22 +7,30 @@ var __publicField = (obj, key, value) => {
|
|
|
7
7
|
import getAllProperties from "../../utils/object/getAllProperties.js";
|
|
8
8
|
import { isArray } from "../../utils/index.js";
|
|
9
9
|
import { getEventTarget, eventIsNative, eventIsDefinedInConfig } from "../utils.js";
|
|
10
|
-
import AbstractManager from "./AbstractManager.js";
|
|
10
|
+
import { AbstractManager } from "./AbstractManager.js";
|
|
11
11
|
import { normalizeRefName } from "./RefsManager.js";
|
|
12
12
|
const names = /* @__PURE__ */ new Map();
|
|
13
|
+
const normalizeRegex1 = /[A-Z]([A-Z].*)/g;
|
|
14
|
+
const normalizeRegex2 = /[^a-zA-Z\d\s:]/g;
|
|
15
|
+
const normalizeRegex3 = /(^\w|\s+\w)/g;
|
|
13
16
|
function normalizeName(name) {
|
|
14
17
|
if (!names.has(name)) {
|
|
15
18
|
names.set(
|
|
16
19
|
name,
|
|
17
|
-
name.replace(
|
|
20
|
+
name.replace(normalizeRegex1, (c) => c.toLowerCase()).replace(normalizeRegex2, " ").replace(normalizeRegex3, (c) => c.trim().toUpperCase()).trim()
|
|
18
21
|
);
|
|
19
22
|
}
|
|
20
23
|
return names.get(name);
|
|
21
24
|
}
|
|
22
25
|
const eventNames = /* @__PURE__ */ new Map();
|
|
26
|
+
const normalizeEventRegex1 = /[A-Z]/g;
|
|
27
|
+
const normalizeEventRegex2 = /^-/;
|
|
23
28
|
function normalizeEventName(name) {
|
|
24
29
|
if (!eventNames.has(name)) {
|
|
25
|
-
eventNames.set(
|
|
30
|
+
eventNames.set(
|
|
31
|
+
name,
|
|
32
|
+
name.replace(normalizeEventRegex1, (c) => `-${c.toLowerCase()}`).replace(normalizeEventRegex2, "")
|
|
33
|
+
);
|
|
26
34
|
}
|
|
27
35
|
return eventNames.get(name);
|
|
28
36
|
}
|
|
@@ -69,13 +77,29 @@ function manageChild(that, name, instance, mode = "add") {
|
|
|
69
77
|
instance[action](event, that.__childrenHandler);
|
|
70
78
|
});
|
|
71
79
|
}
|
|
80
|
+
const isDocumentRegex = /^onDocument[A-Z][a-z]+/;
|
|
81
|
+
const isWindowRegex = /^onWindow[A-Z][a-z]+/;
|
|
82
|
+
const methodIsDocument = (method) => isDocumentRegex.test(method);
|
|
83
|
+
const methodIsWindow = (method) => isWindowRegex.test(method);
|
|
84
|
+
const methodIsGlobal = (method) => methodIsWindow(method) || methodIsDocument(method);
|
|
85
|
+
const getGlobalEventTarget = (method) => methodIsDocument(method) ? document : window;
|
|
72
86
|
function manageRootElement(that, mode = "add") {
|
|
73
87
|
const modeMethod = `${mode}EventListener`;
|
|
74
88
|
const methods = getEventMethodsByName(that);
|
|
75
89
|
const { __base: base, __config: config } = that;
|
|
76
|
-
methods.
|
|
77
|
-
|
|
78
|
-
|
|
90
|
+
methods.forEach((method) => {
|
|
91
|
+
let event = getEventNameByMethod(method);
|
|
92
|
+
if (eventIsDefinedInConfig(event, config) || eventIsNative(event, base.$el)) {
|
|
93
|
+
const target = getEventTarget(base, event, config);
|
|
94
|
+
target[modeMethod](event, that.__rootElementHandler);
|
|
95
|
+
} else if (methodIsGlobal(method)) {
|
|
96
|
+
event = getEventNameByMethod(method, methodIsDocument(method) ? "document" : "window");
|
|
97
|
+
const target = getGlobalEventTarget(method);
|
|
98
|
+
target[modeMethod](
|
|
99
|
+
event,
|
|
100
|
+
methodIsDocument(method) ? that.__documentHandler : that.__windowHandler
|
|
101
|
+
);
|
|
102
|
+
}
|
|
79
103
|
});
|
|
80
104
|
}
|
|
81
105
|
class EventsManager extends AbstractManager {
|
|
@@ -93,6 +117,20 @@ class EventsManager extends AbstractManager {
|
|
|
93
117
|
}
|
|
94
118
|
}
|
|
95
119
|
});
|
|
120
|
+
__publicField(this, "__documentHandler", {
|
|
121
|
+
handleEvent: (event) => {
|
|
122
|
+
const normalizedEventName = normalizeName(event.type);
|
|
123
|
+
const method = `onDocument${normalizedEventName}`;
|
|
124
|
+
this.__base[method](event);
|
|
125
|
+
}
|
|
126
|
+
});
|
|
127
|
+
__publicField(this, "__windowHandler", {
|
|
128
|
+
handleEvent: (event) => {
|
|
129
|
+
const normalizedEventName = normalizeName(event.type);
|
|
130
|
+
const method = `onWindow${normalizedEventName}`;
|
|
131
|
+
this.__base[method](event);
|
|
132
|
+
}
|
|
133
|
+
});
|
|
96
134
|
__publicField(this, "__refsHandler", {
|
|
97
135
|
handleEvent: (event) => {
|
|
98
136
|
const ref = event.currentTarget;
|
|
@@ -128,7 +166,9 @@ class EventsManager extends AbstractManager {
|
|
|
128
166
|
"__methodsCache",
|
|
129
167
|
"__rootElementHandler",
|
|
130
168
|
"__refsHandler",
|
|
131
|
-
"__childrenHandler"
|
|
169
|
+
"__childrenHandler",
|
|
170
|
+
"__documentHandler",
|
|
171
|
+
"__windowHandler"
|
|
132
172
|
]);
|
|
133
173
|
}
|
|
134
174
|
bindRef(name, elements) {
|
|
@@ -151,7 +191,7 @@ class EventsManager extends AbstractManager {
|
|
|
151
191
|
}
|
|
152
192
|
}
|
|
153
193
|
export {
|
|
154
|
-
EventsManager
|
|
194
|
+
EventsManager,
|
|
155
195
|
normalizeEventName,
|
|
156
196
|
normalizeName
|
|
157
197
|
};
|
|
@@ -27,15 +27,15 @@ var __publicField = (obj, key, value) => {
|
|
|
27
27
|
return value;
|
|
28
28
|
};
|
|
29
29
|
|
|
30
|
-
// packages/js-toolkit/Base/managers/OptionsManager.
|
|
30
|
+
// packages/js-toolkit/Base/managers/OptionsManager.ts
|
|
31
31
|
var OptionsManager_exports = {};
|
|
32
32
|
__export(OptionsManager_exports, {
|
|
33
|
-
|
|
34
|
-
|
|
33
|
+
OptionsManager: () => OptionsManager,
|
|
34
|
+
__getPropertyName: () => __getPropertyName
|
|
35
35
|
});
|
|
36
36
|
module.exports = __toCommonJS(OptionsManager_exports);
|
|
37
37
|
var import_deepmerge = __toESM(require("deepmerge"), 1);
|
|
38
|
-
var import_AbstractManager =
|
|
38
|
+
var import_AbstractManager = require("./AbstractManager.cjs");
|
|
39
39
|
var import_utils = require("../../utils/index.cjs");
|
|
40
40
|
var types = /* @__PURE__ */ new Set([String, Number, Boolean, Array, Object]);
|
|
41
41
|
var __defaultValues = {
|
|
@@ -75,16 +75,14 @@ function __register(that, name, config) {
|
|
|
75
75
|
return;
|
|
76
76
|
}
|
|
77
77
|
Object.defineProperty(that, name, {
|
|
78
|
-
get: () =>
|
|
79
|
-
return that.get(name, config);
|
|
80
|
-
},
|
|
78
|
+
get: () => that.get(name, config),
|
|
81
79
|
set: (value) => {
|
|
82
80
|
that.set(name, value, config);
|
|
83
81
|
},
|
|
84
82
|
enumerable: true
|
|
85
83
|
});
|
|
86
84
|
}
|
|
87
|
-
var OptionsManager = class extends import_AbstractManager.
|
|
85
|
+
var OptionsManager = class extends import_AbstractManager.AbstractManager {
|
|
88
86
|
constructor(base) {
|
|
89
87
|
var _a, _b;
|
|
90
88
|
super(base);
|