@acorex/core 20.7.53 → 20.7.54
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.
|
@@ -4,12 +4,15 @@ import { Injectable } from '@angular/core';
|
|
|
4
4
|
const BASE_Z_INDEX = 1000;
|
|
5
5
|
class AXZIndexService {
|
|
6
6
|
constructor() {
|
|
7
|
-
this.
|
|
7
|
+
this.stacks = new Map();
|
|
8
8
|
this.active = new Map();
|
|
9
9
|
}
|
|
10
|
-
acquire() {
|
|
10
|
+
acquire(baseZIndex = BASE_Z_INDEX) {
|
|
11
11
|
const id = `z-${Date.now()}-${Math.random()}`;
|
|
12
|
-
const
|
|
12
|
+
const floor = baseZIndex ?? BASE_Z_INDEX;
|
|
13
|
+
const zIndex = (this.stacks.get(floor) ?? floor) + 1;
|
|
14
|
+
this.stacks.set(floor, zIndex);
|
|
15
|
+
const token = { id, zIndex, baseZIndex: floor };
|
|
13
16
|
this.active.set(id, token);
|
|
14
17
|
return token;
|
|
15
18
|
}
|
|
@@ -17,16 +20,19 @@ class AXZIndexService {
|
|
|
17
20
|
if (!token)
|
|
18
21
|
return;
|
|
19
22
|
this.active.delete(token.id);
|
|
20
|
-
|
|
21
|
-
|
|
23
|
+
const floor = token.baseZIndex ?? BASE_Z_INDEX;
|
|
24
|
+
const hasTierActive = [...this.active.values()].some((t) => (t.baseZIndex ?? BASE_Z_INDEX) === floor);
|
|
25
|
+
if (!hasTierActive) {
|
|
26
|
+
this.stacks.delete(floor);
|
|
22
27
|
}
|
|
23
28
|
}
|
|
24
29
|
bringToFront(token) {
|
|
30
|
+
const floor = token.baseZIndex ?? BASE_Z_INDEX;
|
|
25
31
|
this.release(token);
|
|
26
|
-
return this.acquire();
|
|
32
|
+
return this.acquire(floor);
|
|
27
33
|
}
|
|
28
34
|
lastIndex() {
|
|
29
|
-
return this.
|
|
35
|
+
return Math.max(BASE_Z_INDEX, ...this.stacks.values());
|
|
30
36
|
}
|
|
31
37
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXZIndexService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
32
38
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXZIndexService, providedIn: 'root' }); }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acorex-core-z-index.mjs","sources":["../tmp-esm2022/z-index/lib/z-index.service.js","../tmp-esm2022/z-index/acorex-core-z-index.js"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nconst BASE_Z_INDEX = 1000;\nexport class AXZIndexService {\n constructor() {\n this.
|
|
1
|
+
{"version":3,"file":"acorex-core-z-index.mjs","sources":["../tmp-esm2022/z-index/lib/z-index.service.js","../tmp-esm2022/z-index/acorex-core-z-index.js"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nconst BASE_Z_INDEX = 1000;\nexport class AXZIndexService {\n constructor() {\n this.stacks = new Map();\n this.active = new Map();\n }\n acquire(baseZIndex = BASE_Z_INDEX) {\n const id = `z-${Date.now()}-${Math.random()}`;\n const floor = baseZIndex ?? BASE_Z_INDEX;\n const zIndex = (this.stacks.get(floor) ?? floor) + 1;\n this.stacks.set(floor, zIndex);\n const token = { id, zIndex, baseZIndex: floor };\n this.active.set(id, token);\n return token;\n }\n release(token) {\n if (!token)\n return;\n this.active.delete(token.id);\n const floor = token.baseZIndex ?? BASE_Z_INDEX;\n const hasTierActive = [...this.active.values()].some((t) => (t.baseZIndex ?? BASE_Z_INDEX) === floor);\n if (!hasTierActive) {\n this.stacks.delete(floor);\n }\n }\n bringToFront(token) {\n const floor = token.baseZIndex ?? BASE_Z_INDEX;\n this.release(token);\n return this.acquire(floor);\n }\n lastIndex() {\n return Math.max(BASE_Z_INDEX, ...this.stacks.values());\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXZIndexService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXZIndexService, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXZIndexService, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiei1pbmRleC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS96LWluZGV4L3NyYy9saWIvei1pbmRleC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBRzNDLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQztBQUcxQixNQUFNLE9BQU8sZUFBZTtJQUQ1QjtRQUVVLFdBQU0sR0FBRyxJQUFJLEdBQUcsRUFBa0IsQ0FBQztRQUNuQyxXQUFNLEdBQUcsSUFBSSxHQUFHLEVBQW9CLENBQUM7S0FpQzlDO0lBL0JDLE9BQU8sQ0FBQyxVQUFVLEdBQUcsWUFBWTtRQUMvQixNQUFNLEVBQUUsR0FBRyxLQUFLLElBQUksQ0FBQyxHQUFHLEVBQUUsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQztRQUM5QyxNQUFNLEtBQUssR0FBRyxVQUFVLElBQUksWUFBWSxDQUFDO1FBQ3pDLE1BQU0sTUFBTSxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLElBQUksS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBRXJELElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQztRQUMvQixNQUFNLEtBQUssR0FBYSxFQUFFLEVBQUUsRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxDQUFDO1FBQzFELElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUMzQixPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFRCxPQUFPLENBQUMsS0FBdUI7UUFDN0IsSUFBSSxDQUFDLEtBQUs7WUFBRSxPQUFPO1FBQ25CLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUU3QixNQUFNLEtBQUssR0FBRyxLQUFLLENBQUMsVUFBVSxJQUFJLFlBQVksQ0FBQztRQUMvQyxNQUFNLGFBQWEsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxJQUFJLFlBQVksQ0FBQyxLQUFLLEtBQUssQ0FBQyxDQUFDO1FBQ3RHLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUNuQixJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM1QixDQUFDO0lBQ0gsQ0FBQztJQUVELFlBQVksQ0FBQyxLQUFlO1FBQzFCLE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxVQUFVLElBQUksWUFBWSxDQUFDO1FBQy9DLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDcEIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzdCLENBQUM7SUFFRCxTQUFTO1FBQ1AsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztJQUN6RCxDQUFDOzhHQWxDVSxlQUFlO2tIQUFmLGVBQWUsY0FERixNQUFNOzsyRkFDbkIsZUFBZTtrQkFEM0IsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWFpUb2tlbiB9IGZyb20gJy4vei1pbmRleC50eXBlJztcblxuY29uc3QgQkFTRV9aX0lOREVYID0gMTAwMDtcblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBBWFpJbmRleFNlcnZpY2Uge1xuICBwcml2YXRlIHN0YWNrcyA9IG5ldyBNYXA8bnVtYmVyLCBudW1iZXI+KCk7XG4gIHByaXZhdGUgYWN0aXZlID0gbmV3IE1hcDxzdHJpbmcsIEFYWlRva2VuPigpO1xuXG4gIGFjcXVpcmUoYmFzZVpJbmRleCA9IEJBU0VfWl9JTkRFWCk6IEFYWlRva2VuIHtcbiAgICBjb25zdCBpZCA9IGB6LSR7RGF0ZS5ub3coKX0tJHtNYXRoLnJhbmRvbSgpfWA7XG4gICAgY29uc3QgZmxvb3IgPSBiYXNlWkluZGV4ID8/IEJBU0VfWl9JTkRFWDtcbiAgICBjb25zdCB6SW5kZXggPSAodGhpcy5zdGFja3MuZ2V0KGZsb29yKSA/PyBmbG9vcikgKyAxO1xuXG4gICAgdGhpcy5zdGFja3Muc2V0KGZsb29yLCB6SW5kZXgpO1xuICAgIGNvbnN0IHRva2VuOiBBWFpUb2tlbiA9IHsgaWQsIHpJbmRleCwgYmFzZVpJbmRleDogZmxvb3IgfTtcbiAgICB0aGlzLmFjdGl2ZS5zZXQoaWQsIHRva2VuKTtcbiAgICByZXR1cm4gdG9rZW47XG4gIH1cblxuICByZWxlYXNlKHRva2VuPzogQVhaVG9rZW4gfCBudWxsKTogdm9pZCB7XG4gICAgaWYgKCF0b2tlbikgcmV0dXJuO1xuICAgIHRoaXMuYWN0aXZlLmRlbGV0ZSh0b2tlbi5pZCk7XG5cbiAgICBjb25zdCBmbG9vciA9IHRva2VuLmJhc2VaSW5kZXggPz8gQkFTRV9aX0lOREVYO1xuICAgIGNvbnN0IGhhc1RpZXJBY3RpdmUgPSBbLi4udGhpcy5hY3RpdmUudmFsdWVzKCldLnNvbWUoKHQpID0+ICh0LmJhc2VaSW5kZXggPz8gQkFTRV9aX0lOREVYKSA9PT0gZmxvb3IpO1xuICAgIGlmICghaGFzVGllckFjdGl2ZSkge1xuICAgICAgdGhpcy5zdGFja3MuZGVsZXRlKGZsb29yKTtcbiAgICB9XG4gIH1cblxuICBicmluZ1RvRnJvbnQodG9rZW46IEFYWlRva2VuKTogQVhaVG9rZW4ge1xuICAgIGNvbnN0IGZsb29yID0gdG9rZW4uYmFzZVpJbmRleCA/PyBCQVNFX1pfSU5ERVg7XG4gICAgdGhpcy5yZWxlYXNlKHRva2VuKTtcbiAgICByZXR1cm4gdGhpcy5hY3F1aXJlKGZsb29yKTtcbiAgfVxuXG4gIGxhc3RJbmRleCgpOiBudW1iZXIge1xuICAgIHJldHVybiBNYXRoLm1heChCQVNFX1pfSU5ERVgsIC4uLnRoaXMuc3RhY2tzLnZhbHVlcygpKTtcbiAgfVxufVxuIl19","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNvcmV4LWNvcmUtei1pbmRleC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvei1pbmRleC9zcmMvYWNvcmV4LWNvcmUtei1pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/z-index/index.d.ts
CHANGED
|
@@ -3,12 +3,13 @@ import * as i0 from '@angular/core';
|
|
|
3
3
|
interface AXZToken {
|
|
4
4
|
id: string;
|
|
5
5
|
zIndex: number;
|
|
6
|
+
baseZIndex?: number;
|
|
6
7
|
}
|
|
7
8
|
|
|
8
9
|
declare class AXZIndexService {
|
|
9
|
-
private
|
|
10
|
+
private stacks;
|
|
10
11
|
private active;
|
|
11
|
-
acquire(): AXZToken;
|
|
12
|
+
acquire(baseZIndex?: number): AXZToken;
|
|
12
13
|
release(token?: AXZToken | null): void;
|
|
13
14
|
bringToFront(token: AXZToken): AXZToken;
|
|
14
15
|
lastIndex(): number;
|