ctt-babylon 0.11.8 → 0.11.10
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/esm2022/lib/components/core/babylon-ba-sli-img-txt/babylon-ba-sli-img-txt.component.mjs +4 -3
- package/esm2022/lib/components/core/babylon-banner-gallery/babylon-banner-gallery.component.mjs +3 -3
- package/esm2022/lib/components/core/babylon-he-svg-list/babylon-he-svg-list.component.mjs +3 -3
- package/esm2022/lib/components/core/babylon-newsletter-modal-v2/babylon-newsletter-modal-v2.component.mjs +2 -2
- package/esm2022/lib/components/core/babylon-offer-popup-v3/babylon-offer-popup-v3.component.mjs +2 -2
- package/esm2022/lib/components/core/babylon-top-slider/babylon-top-slider.component.mjs +2 -1
- package/esm2022/lib/components/external/core/lis-c4-txt-des-cta/lis-c4-txt-des-cta.component.mjs +3 -3
- package/esm2022/lib/directives/widget/widget-dynamic.directive.mjs +74 -0
- package/esm2022/lib/services/mapper/mapper.service.mjs +21 -10
- package/fesm2022/ctt-babylon.mjs +104 -21
- package/fesm2022/ctt-babylon.mjs.map +1 -1
- package/lib/directives/widget/widget-dynamic.directive.d.ts +19 -0
- package/package.json +1 -1
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { isPlatformBrowser } from '@angular/common';
|
|
2
|
+
import { Directive, Input, NgZone, PLATFORM_ID, inject, } from '@angular/core';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class WidgetDynamicDirective {
|
|
5
|
+
constructor(host) {
|
|
6
|
+
this.host = host;
|
|
7
|
+
this.platformId = inject(PLATFORM_ID);
|
|
8
|
+
this.zone = inject(NgZone);
|
|
9
|
+
/** Reintentos */
|
|
10
|
+
this.moveMaxTries = 200; // 200 * 100ms = 20s
|
|
11
|
+
this.moveIntervalMs = 100;
|
|
12
|
+
}
|
|
13
|
+
ngAfterViewInit() {
|
|
14
|
+
if (!isPlatformBrowser(this.platformId))
|
|
15
|
+
return;
|
|
16
|
+
if (!this.moveSelector)
|
|
17
|
+
return;
|
|
18
|
+
this.zone.runOutsideAngular(() => {
|
|
19
|
+
const target = this.host.nativeElement;
|
|
20
|
+
const tryMove = () => {
|
|
21
|
+
const node = document.querySelector(this.moveSelector);
|
|
22
|
+
if (!node)
|
|
23
|
+
return false;
|
|
24
|
+
// si ya está dentro, ok
|
|
25
|
+
if (target.contains(node))
|
|
26
|
+
return true;
|
|
27
|
+
// evita movidas raras si el selector apunta al mismo host
|
|
28
|
+
if (node === target)
|
|
29
|
+
return true;
|
|
30
|
+
target.appendChild(node);
|
|
31
|
+
return true;
|
|
32
|
+
};
|
|
33
|
+
// reintentos
|
|
34
|
+
let tries = 0;
|
|
35
|
+
this.timer = window.setInterval(() => {
|
|
36
|
+
tries++;
|
|
37
|
+
const ok = tryMove();
|
|
38
|
+
if (ok || tries >= this.moveMaxTries) {
|
|
39
|
+
if (this.timer)
|
|
40
|
+
window.clearInterval(this.timer);
|
|
41
|
+
this.timer = undefined;
|
|
42
|
+
}
|
|
43
|
+
}, this.moveIntervalMs);
|
|
44
|
+
// observer para reinyecciones
|
|
45
|
+
this.observer = new MutationObserver(() => tryMove());
|
|
46
|
+
this.observer.observe(document.body, {
|
|
47
|
+
childList: true,
|
|
48
|
+
subtree: true,
|
|
49
|
+
});
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
ngOnDestroy() {
|
|
53
|
+
if (this.timer)
|
|
54
|
+
window.clearInterval(this.timer);
|
|
55
|
+
this.observer?.disconnect();
|
|
56
|
+
}
|
|
57
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: WidgetDynamicDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
58
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: WidgetDynamicDirective, isStandalone: true, selector: "[widgetDynamic]", inputs: { moveSelector: ["widgetDynamic", "moveSelector"], moveMaxTries: "moveMaxTries", moveIntervalMs: "moveIntervalMs" }, ngImport: i0 }); }
|
|
59
|
+
}
|
|
60
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: WidgetDynamicDirective, decorators: [{
|
|
61
|
+
type: Directive,
|
|
62
|
+
args: [{
|
|
63
|
+
selector: '[widgetDynamic]',
|
|
64
|
+
standalone: true,
|
|
65
|
+
}]
|
|
66
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { moveSelector: [{
|
|
67
|
+
type: Input,
|
|
68
|
+
args: ['widgetDynamic']
|
|
69
|
+
}], moveMaxTries: [{
|
|
70
|
+
type: Input
|
|
71
|
+
}], moveIntervalMs: [{
|
|
72
|
+
type: Input
|
|
73
|
+
}] } });
|
|
74
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0LWR5bmFtaWMuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFieWxvbi9zcmMvbGliL2RpcmVjdGl2ZXMvd2lkZ2V0L3dpZGdldC1keW5hbWljLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNwRCxPQUFPLEVBRUgsU0FBUyxFQUVULEtBQUssRUFDTCxNQUFNLEVBRU4sV0FBVyxFQUNYLE1BQU0sR0FDVCxNQUFNLGVBQWUsQ0FBQzs7QUFNdkIsTUFBTSxPQUFPLHNCQUFzQjtJQWMvQixZQUFvQixJQUE2QjtRQUE3QixTQUFJLEdBQUosSUFBSSxDQUF5QjtRQWJoQyxlQUFVLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ2pDLFNBQUksR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFLdkMsaUJBQWlCO1FBQ1IsaUJBQVksR0FBRyxHQUFHLENBQUMsQ0FBQyxvQkFBb0I7UUFDeEMsbUJBQWMsR0FBRyxHQUFHLENBQUM7SUFLc0IsQ0FBQztJQUVyRCxlQUFlO1FBQ1gsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUM7WUFBRSxPQUFPO1FBQ2hELElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWTtZQUFFLE9BQU87UUFFL0IsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLEVBQUU7WUFDN0IsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUM7WUFFdkMsTUFBTSxPQUFPLEdBQUcsR0FBRyxFQUFFO2dCQUNqQixNQUFNLElBQUksR0FBRyxRQUFRLENBQUMsYUFBYSxDQUMvQixJQUFJLENBQUMsWUFBWSxDQUNFLENBQUM7Z0JBQ3hCLElBQUksQ0FBQyxJQUFJO29CQUFFLE9BQU8sS0FBSyxDQUFDO2dCQUV4Qix3QkFBd0I7Z0JBQ3hCLElBQUksTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUM7b0JBQUUsT0FBTyxJQUFJLENBQUM7Z0JBRXZDLDBEQUEwRDtnQkFDMUQsSUFBSSxJQUFJLEtBQUssTUFBTTtvQkFBRSxPQUFPLElBQUksQ0FBQztnQkFFakMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDekIsT0FBTyxJQUFJLENBQUM7WUFDaEIsQ0FBQyxDQUFDO1lBRUYsYUFBYTtZQUNiLElBQUksS0FBSyxHQUFHLENBQUMsQ0FBQztZQUNkLElBQUksQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxHQUFHLEVBQUU7Z0JBQ2pDLEtBQUssRUFBRSxDQUFDO2dCQUNSLE1BQU0sRUFBRSxHQUFHLE9BQU8sRUFBRSxDQUFDO2dCQUNyQixJQUFJLEVBQUUsSUFBSSxLQUFLLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRTtvQkFDbEMsSUFBSSxJQUFJLENBQUMsS0FBSzt3QkFBRSxNQUFNLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztvQkFDakQsSUFBSSxDQUFDLEtBQUssR0FBRyxTQUFTLENBQUM7aUJBQzFCO1lBQ0wsQ0FBQyxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztZQUV4Qiw4QkFBOEI7WUFDOUIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLGdCQUFnQixDQUFDLEdBQUcsRUFBRSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7WUFDdEQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRTtnQkFDakMsU0FBUyxFQUFFLElBQUk7Z0JBQ2YsT0FBTyxFQUFFLElBQUk7YUFDaEIsQ0FBQyxDQUFDO1FBQ1AsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsV0FBVztRQUNQLElBQUksSUFBSSxDQUFDLEtBQUs7WUFBRSxNQUFNLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNqRCxJQUFJLENBQUMsUUFBUSxFQUFFLFVBQVUsRUFBRSxDQUFDO0lBQ2hDLENBQUM7K0dBOURRLHNCQUFzQjttR0FBdEIsc0JBQXNCOzs0RkFBdEIsc0JBQXNCO2tCQUpsQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxpQkFBaUI7b0JBQzNCLFVBQVUsRUFBRSxJQUFJO2lCQUNuQjsrRUFNMkIsWUFBWTtzQkFBbkMsS0FBSzt1QkFBQyxlQUFlO2dCQUdiLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlzUGxhdGZvcm1Ccm93c2VyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBEaXJlY3RpdmUsXG4gICAgRWxlbWVudFJlZixcbiAgICBJbnB1dCxcbiAgICBOZ1pvbmUsXG4gICAgT25EZXN0cm95LFxuICAgIFBMQVRGT1JNX0lELFxuICAgIGluamVjdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW3dpZGdldER5bmFtaWNdJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBXaWRnZXREeW5hbWljRGlyZWN0aXZlIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHBsYXRmb3JtSWQgPSBpbmplY3QoUExBVEZPUk1fSUQpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgem9uZSA9IGluamVjdChOZ1pvbmUpO1xuXG4gICAgLyoqIFNlbGVjdG9yIGRlbCBub2RvIGEgbW92ZXIgKHNvdXJjZSkgKi9cbiAgICBASW5wdXQoJ3dpZGdldER5bmFtaWMnKSBtb3ZlU2VsZWN0b3IhOiBzdHJpbmc7XG5cbiAgICAvKiogUmVpbnRlbnRvcyAqL1xuICAgIEBJbnB1dCgpIG1vdmVNYXhUcmllcyA9IDIwMDsgLy8gMjAwICogMTAwbXMgPSAyMHNcbiAgICBASW5wdXQoKSBtb3ZlSW50ZXJ2YWxNcyA9IDEwMDtcblxuICAgIHByaXZhdGUgb2JzZXJ2ZXI/OiBNdXRhdGlvbk9ic2VydmVyO1xuICAgIHByaXZhdGUgdGltZXI/OiBudW1iZXI7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGhvc3Q6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+KSB7fVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICBpZiAoIWlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCkpIHJldHVybjtcbiAgICAgICAgaWYgKCF0aGlzLm1vdmVTZWxlY3RvcikgcmV0dXJuO1xuXG4gICAgICAgIHRoaXMuem9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCB0YXJnZXQgPSB0aGlzLmhvc3QubmF0aXZlRWxlbWVudDtcblxuICAgICAgICAgICAgY29uc3QgdHJ5TW92ZSA9ICgpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBub2RlID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcihcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5tb3ZlU2VsZWN0b3JcbiAgICAgICAgICAgICAgICApIGFzIEhUTUxFbGVtZW50IHwgbnVsbDtcbiAgICAgICAgICAgICAgICBpZiAoIW5vZGUpIHJldHVybiBmYWxzZTtcblxuICAgICAgICAgICAgICAgIC8vIHNpIHlhIGVzdMOhIGRlbnRybywgb2tcbiAgICAgICAgICAgICAgICBpZiAodGFyZ2V0LmNvbnRhaW5zKG5vZGUpKSByZXR1cm4gdHJ1ZTtcblxuICAgICAgICAgICAgICAgIC8vIGV2aXRhIG1vdmlkYXMgcmFyYXMgc2kgZWwgc2VsZWN0b3IgYXB1bnRhIGFsIG1pc21vIGhvc3RcbiAgICAgICAgICAgICAgICBpZiAobm9kZSA9PT0gdGFyZ2V0KSByZXR1cm4gdHJ1ZTtcblxuICAgICAgICAgICAgICAgIHRhcmdldC5hcHBlbmRDaGlsZChub2RlKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIC8vIHJlaW50ZW50b3NcbiAgICAgICAgICAgIGxldCB0cmllcyA9IDA7XG4gICAgICAgICAgICB0aGlzLnRpbWVyID0gd2luZG93LnNldEludGVydmFsKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0cmllcysrO1xuICAgICAgICAgICAgICAgIGNvbnN0IG9rID0gdHJ5TW92ZSgpO1xuICAgICAgICAgICAgICAgIGlmIChvayB8fCB0cmllcyA+PSB0aGlzLm1vdmVNYXhUcmllcykge1xuICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy50aW1lcikgd2luZG93LmNsZWFySW50ZXJ2YWwodGhpcy50aW1lcik7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMudGltZXIgPSB1bmRlZmluZWQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSwgdGhpcy5tb3ZlSW50ZXJ2YWxNcyk7XG5cbiAgICAgICAgICAgIC8vIG9ic2VydmVyIHBhcmEgcmVpbnllY2Npb25lc1xuICAgICAgICAgICAgdGhpcy5vYnNlcnZlciA9IG5ldyBNdXRhdGlvbk9ic2VydmVyKCgpID0+IHRyeU1vdmUoKSk7XG4gICAgICAgICAgICB0aGlzLm9ic2VydmVyLm9ic2VydmUoZG9jdW1lbnQuYm9keSwge1xuICAgICAgICAgICAgICAgIGNoaWxkTGlzdDogdHJ1ZSxcbiAgICAgICAgICAgICAgICBzdWJ0cmVlOiB0cnVlLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy50aW1lcikgd2luZG93LmNsZWFySW50ZXJ2YWwodGhpcy50aW1lcik7XG4gICAgICAgIHRoaXMub2JzZXJ2ZXI/LmRpc2Nvbm5lY3QoKTtcbiAgICB9XG59XG4iXX0=
|