@apipass/loaders 1.0.18

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/README.md ADDED
@@ -0,0 +1,33 @@
1
+ # @apipass/loaders
2
+
3
+ This package is a angular component for buttons
4
+
5
+ ## Installation
6
+
7
+
8
+ ```bash
9
+ npm install @apipass/loaders
10
+ ```
11
+
12
+ ## Usage
13
+
14
+ ```typescript
15
+ [...]
16
+ import {LoadersModule} from "@apipass/loaders";
17
+
18
+ @NgModule({
19
+ imports: [
20
+ [...]
21
+ LoadersModule
22
+ ],
23
+ [...]
24
+ ```
25
+
26
+
27
+ ...
28
+ ```html
29
+
30
+ ```
31
+
32
+ ## License
33
+ [MIT](https://choosealicense.com/licenses/mit/)
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public-api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpcGFzcy1sb2FkZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcHJvamVjdHMvbG9hZGVycy9zcmMvYXBpcGFzcy1sb2FkZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG4iXX0=
@@ -0,0 +1,35 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { OverlayLoaderComponent } from './overlay-loader/overlay-loader.component';
4
+ import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
5
+ import { OverlayLoaderService } from './overlay-loader/overlay-loader.service';
6
+ import * as i0 from "@angular/core";
7
+ class LoadersModule {
8
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: LoadersModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.2", ngImport: i0, type: LoadersModule, declarations: [OverlayLoaderComponent], imports: [CommonModule,
10
+ MatProgressSpinnerModule], exports: [OverlayLoaderComponent] });
11
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: LoadersModule, providers: [
12
+ OverlayLoaderService
13
+ ], imports: [CommonModule,
14
+ MatProgressSpinnerModule] });
15
+ }
16
+ export { LoadersModule };
17
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: LoadersModule, decorators: [{
18
+ type: NgModule,
19
+ args: [{
20
+ imports: [
21
+ CommonModule,
22
+ MatProgressSpinnerModule
23
+ ],
24
+ declarations: [
25
+ OverlayLoaderComponent
26
+ ],
27
+ exports: [
28
+ OverlayLoaderComponent
29
+ ],
30
+ providers: [
31
+ OverlayLoaderService
32
+ ]
33
+ }]
34
+ }] });
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGVycy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wcm9qZWN0cy9sb2FkZXJzL3NyYy9sb2FkZXJzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUNuRixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUM5RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQzs7QUFFL0UsTUFlYSxhQUFhO3VHQUFiLGFBQWE7d0dBQWIsYUFBYSxpQkFUdEIsc0JBQXNCLGFBSnRCLFlBQVk7WUFDWix3QkFBd0IsYUFNeEIsc0JBQXNCO3dHQU1iLGFBQWEsYUFKYjtZQUNULG9CQUFvQjtTQUNyQixZQVhDLFlBQVk7WUFDWix3QkFBd0I7O1NBWWYsYUFBYTsyRkFBYixhQUFhO2tCQWZ6QixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLHdCQUF3QjtxQkFDekI7b0JBQ0QsWUFBWSxFQUFFO3dCQUNaLHNCQUFzQjtxQkFDdkI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLHNCQUFzQjtxQkFDdkI7b0JBQ0QsU0FBUyxFQUFFO3dCQUNULG9CQUFvQjtxQkFDckI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE92ZXJsYXlMb2FkZXJDb21wb25lbnQgfSBmcm9tICcuL292ZXJsYXktbG9hZGVyL292ZXJsYXktbG9hZGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNYXRQcm9ncmVzc1NwaW5uZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wcm9ncmVzcy1zcGlubmVyJztcbmltcG9ydCB7IE92ZXJsYXlMb2FkZXJTZXJ2aWNlIH0gZnJvbSAnLi9vdmVybGF5LWxvYWRlci9vdmVybGF5LWxvYWRlci5zZXJ2aWNlJztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBNYXRQcm9ncmVzc1NwaW5uZXJNb2R1bGVcbiAgXSxcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgT3ZlcmxheUxvYWRlckNvbXBvbmVudFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgT3ZlcmxheUxvYWRlckNvbXBvbmVudFxuICBdLFxuICBwcm92aWRlcnM6IFtcbiAgICBPdmVybGF5TG9hZGVyU2VydmljZVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIExvYWRlcnNNb2R1bGUge31cbiJdfQ==
@@ -0,0 +1,13 @@
1
+ import { Component } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@angular/material/progress-spinner";
4
+ class OverlayLoaderComponent {
5
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: OverlayLoaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.2", type: OverlayLoaderComponent, selector: "overlay-loader-component", ngImport: i0, template: "<mat-spinner diameter=\"50\"></mat-spinner>\n", styles: [":host mat-spinner ::ng-deep svg{stroke:var(--color-primary)!important}\n"], dependencies: [{ kind: "component", type: i1.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }] });
7
+ }
8
+ export { OverlayLoaderComponent };
9
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: OverlayLoaderComponent, decorators: [{
10
+ type: Component,
11
+ args: [{ selector: 'overlay-loader-component', template: "<mat-spinner diameter=\"50\"></mat-spinner>\n", styles: [":host mat-spinner ::ng-deep svg{stroke:var(--color-primary)!important}\n"] }]
12
+ }] });
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ZlcmxheS1sb2FkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbG9hZGVycy9zcmMvb3ZlcmxheS1sb2FkZXIvb3ZlcmxheS1sb2FkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcHJvamVjdHMvbG9hZGVycy9zcmMvb3ZlcmxheS1sb2FkZXIvb3ZlcmxheS1sb2FkZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQTs7O0FBRXpDLE1BS2Esc0JBQXNCO3VHQUF0QixzQkFBc0I7MkZBQXRCLHNCQUFzQixnRUNQbkMsK0NBQ0E7O1NETWEsc0JBQXNCOzJGQUF0QixzQkFBc0I7a0JBTGxDLFNBQVM7K0JBQ0UsMEJBQTBCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnb3ZlcmxheS1sb2FkZXItY29tcG9uZW50JyxcbiAgdGVtcGxhdGVVcmw6ICdvdmVybGF5LWxvYWRlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWydvdmVybGF5LWxvYWRlci5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIE92ZXJsYXlMb2FkZXJDb21wb25lbnQge1xufVxuIiwiPG1hdC1zcGlubmVyIGRpYW1ldGVyPVwiNTBcIj48L21hdC1zcGlubmVyPlxuIl19
@@ -0,0 +1,60 @@
1
+ import { Injectable, Injector } from '@angular/core';
2
+ import { Overlay, OverlayConfig } from '@angular/cdk/overlay';
3
+ import { ComponentPortal, PortalInjector } from '@angular/cdk/portal';
4
+ import { OverlayLoaderComponent } from './overlay-loader.component';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@angular/cdk/overlay";
7
+ export class LoadingOverlayRef {
8
+ overlayRef;
9
+ constructor(overlayRef) {
10
+ this.overlayRef = overlayRef;
11
+ }
12
+ close() {
13
+ this.overlayRef.dispose();
14
+ }
15
+ }
16
+ class OverlayLoaderService {
17
+ injector;
18
+ overlay;
19
+ constructor(injector, overlay) {
20
+ this.injector = injector;
21
+ this.overlay = overlay;
22
+ }
23
+ open() {
24
+ const overlayRef = this.createOverlay();
25
+ const dialogRef = new LoadingOverlayRef(overlayRef);
26
+ this.attachDialogContainer(overlayRef, dialogRef);
27
+ return dialogRef;
28
+ }
29
+ createOverlay() {
30
+ const positionStrategy = this.overlay
31
+ .position()
32
+ .global()
33
+ .centerHorizontally()
34
+ .centerVertically();
35
+ const overlayConfig = new OverlayConfig({
36
+ hasBackdrop: true,
37
+ scrollStrategy: this.overlay.scrollStrategies.block(),
38
+ positionStrategy
39
+ });
40
+ return this.overlay.create(overlayConfig);
41
+ }
42
+ attachDialogContainer(overlayRef, dialogRef) {
43
+ const injector = this.createInjector(dialogRef);
44
+ const containerPortal = new ComponentPortal(OverlayLoaderComponent, null, injector);
45
+ const containerRef = overlayRef.attach(containerPortal);
46
+ return containerRef.instance;
47
+ }
48
+ createInjector(dialogRef) {
49
+ const injectionTokens = new WeakMap();
50
+ injectionTokens.set(LoadingOverlayRef, dialogRef);
51
+ return new PortalInjector(this.injector, injectionTokens);
52
+ }
53
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: OverlayLoaderService, deps: [{ token: i0.Injector }, { token: i1.Overlay }], target: i0.ɵɵFactoryTarget.Injectable });
54
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: OverlayLoaderService });
55
+ }
56
+ export { OverlayLoaderService };
57
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: OverlayLoaderService, decorators: [{
58
+ type: Injectable
59
+ }], ctorParameters: function () { return [{ type: i0.Injector }, { type: i1.Overlay }]; } });
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ZlcmxheS1sb2FkZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2xvYWRlcnMvc3JjL292ZXJsYXktbG9hZGVyL292ZXJsYXktbG9hZGVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFnQixVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25FLE9BQU8sRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFjLE1BQU0sc0JBQXNCLENBQUM7QUFDMUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7O0FBRXBFLE1BQU0sT0FBTyxpQkFBaUI7SUFFQztJQUE3QixZQUE2QixVQUFzQjtRQUF0QixlQUFVLEdBQVYsVUFBVSxDQUFZO0lBQUksQ0FBQztJQUV4RCxLQUFLO1FBQ0gsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUM1QixDQUFDO0NBRUY7QUFFRCxNQUNhLG9CQUFvQjtJQUVGO0lBQXFDO0lBQWxFLFlBQTZCLFFBQWtCLEVBQW1CLE9BQWdCO1FBQXJELGFBQVEsR0FBUixRQUFRLENBQVU7UUFBbUIsWUFBTyxHQUFQLE9BQU8sQ0FBUztJQUNsRixDQUFDO0lBRUQsSUFBSTtRQUNGLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUN4QyxNQUFNLFNBQVMsR0FBRyxJQUFJLGlCQUFpQixDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3BELElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxVQUFVLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFFbEQsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQztJQUVPLGFBQWE7UUFDbkIsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsT0FBTzthQUNsQyxRQUFRLEVBQUU7YUFDVixNQUFNLEVBQUU7YUFDUixrQkFBa0IsRUFBRTthQUNwQixnQkFBZ0IsRUFBRSxDQUFDO1FBQ3RCLE1BQU0sYUFBYSxHQUFHLElBQUksYUFBYSxDQUFDO1lBQ3RDLFdBQVcsRUFBRSxJQUFJO1lBQ2pCLGNBQWMsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLEtBQUssRUFBRTtZQUNyRCxnQkFBZ0I7U0FDakIsQ0FBQyxDQUFDO1FBRUgsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRU8scUJBQXFCLENBQUMsVUFBc0IsRUFBRSxTQUE0QjtRQUNoRixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ2hELE1BQU0sZUFBZSxHQUFHLElBQUksZUFBZSxDQUFDLHNCQUFzQixFQUFFLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQztRQUNwRixNQUFNLFlBQVksR0FBeUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUU5RixPQUFPLFlBQVksQ0FBQyxRQUFRLENBQUM7SUFDL0IsQ0FBQztJQUVPLGNBQWMsQ0FBQyxTQUE0QjtRQUNqRCxNQUFNLGVBQWUsR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDO1FBQ3RDLGVBQWUsQ0FBQyxHQUFHLENBQUMsaUJBQWlCLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFFbEQsT0FBTyxJQUFJLGNBQWMsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLGVBQWUsQ0FBQyxDQUFDO0lBQzVELENBQUM7dUdBekNVLG9CQUFvQjsyR0FBcEIsb0JBQW9COztTQUFwQixvQkFBb0I7MkZBQXBCLG9CQUFvQjtrQkFEaEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudFJlZiwgSW5qZWN0YWJsZSwgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE92ZXJsYXksIE92ZXJsYXlDb25maWcsIE92ZXJsYXlSZWYgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQgeyBDb21wb25lbnRQb3J0YWwsIFBvcnRhbEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XG5pbXBvcnQgeyBPdmVybGF5TG9hZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9vdmVybGF5LWxvYWRlci5jb21wb25lbnQnO1xuXG5leHBvcnQgY2xhc3MgTG9hZGluZ092ZXJsYXlSZWYge1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgb3ZlcmxheVJlZjogT3ZlcmxheVJlZikgeyB9XG5cbiAgY2xvc2UoKTogdm9pZCB7XG4gICAgdGhpcy5vdmVybGF5UmVmLmRpc3Bvc2UoKTtcbiAgfVxuXG59XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBPdmVybGF5TG9hZGVyU2VydmljZSB7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBpbmplY3RvcjogSW5qZWN0b3IsIHByaXZhdGUgcmVhZG9ubHkgb3ZlcmxheTogT3ZlcmxheSkge1xuICB9XG5cbiAgb3BlbigpOiBMb2FkaW5nT3ZlcmxheVJlZiB7XG4gICAgY29uc3Qgb3ZlcmxheVJlZiA9IHRoaXMuY3JlYXRlT3ZlcmxheSgpO1xuICAgIGNvbnN0IGRpYWxvZ1JlZiA9IG5ldyBMb2FkaW5nT3ZlcmxheVJlZihvdmVybGF5UmVmKTtcbiAgICB0aGlzLmF0dGFjaERpYWxvZ0NvbnRhaW5lcihvdmVybGF5UmVmLCBkaWFsb2dSZWYpO1xuXG4gICAgcmV0dXJuIGRpYWxvZ1JlZjtcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlT3ZlcmxheSgpOiBPdmVybGF5UmVmIHtcbiAgICBjb25zdCBwb3NpdGlvblN0cmF0ZWd5ID0gdGhpcy5vdmVybGF5XG4gICAgICAucG9zaXRpb24oKVxuICAgICAgLmdsb2JhbCgpXG4gICAgICAuY2VudGVySG9yaXpvbnRhbGx5KClcbiAgICAgIC5jZW50ZXJWZXJ0aWNhbGx5KCk7XG4gICAgY29uc3Qgb3ZlcmxheUNvbmZpZyA9IG5ldyBPdmVybGF5Q29uZmlnKHtcbiAgICAgIGhhc0JhY2tkcm9wOiB0cnVlLFxuICAgICAgc2Nyb2xsU3RyYXRlZ3k6IHRoaXMub3ZlcmxheS5zY3JvbGxTdHJhdGVnaWVzLmJsb2NrKCksXG4gICAgICBwb3NpdGlvblN0cmF0ZWd5XG4gICAgfSk7XG5cbiAgICByZXR1cm4gdGhpcy5vdmVybGF5LmNyZWF0ZShvdmVybGF5Q29uZmlnKTtcbiAgfVxuXG4gIHByaXZhdGUgYXR0YWNoRGlhbG9nQ29udGFpbmVyKG92ZXJsYXlSZWY6IE92ZXJsYXlSZWYsIGRpYWxvZ1JlZjogTG9hZGluZ092ZXJsYXlSZWYpOiBPdmVybGF5TG9hZGVyQ29tcG9uZW50IHtcbiAgICBjb25zdCBpbmplY3RvciA9IHRoaXMuY3JlYXRlSW5qZWN0b3IoZGlhbG9nUmVmKTtcbiAgICBjb25zdCBjb250YWluZXJQb3J0YWwgPSBuZXcgQ29tcG9uZW50UG9ydGFsKE92ZXJsYXlMb2FkZXJDb21wb25lbnQsIG51bGwsIGluamVjdG9yKTtcbiAgICBjb25zdCBjb250YWluZXJSZWY6IENvbXBvbmVudFJlZjxPdmVybGF5TG9hZGVyQ29tcG9uZW50PiA9IG92ZXJsYXlSZWYuYXR0YWNoKGNvbnRhaW5lclBvcnRhbCk7XG5cbiAgICByZXR1cm4gY29udGFpbmVyUmVmLmluc3RhbmNlO1xuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVJbmplY3RvcihkaWFsb2dSZWY6IExvYWRpbmdPdmVybGF5UmVmKTogUG9ydGFsSW5qZWN0b3Ige1xuICAgIGNvbnN0IGluamVjdGlvblRva2VucyA9IG5ldyBXZWFrTWFwKCk7XG4gICAgaW5qZWN0aW9uVG9rZW5zLnNldChMb2FkaW5nT3ZlcmxheVJlZiwgZGlhbG9nUmVmKTtcblxuICAgIHJldHVybiBuZXcgUG9ydGFsSW5qZWN0b3IodGhpcy5pbmplY3RvciwgaW5qZWN0aW9uVG9rZW5zKTtcbiAgfVxuXG59XG4iXX0=
@@ -0,0 +1,3 @@
1
+ export * from './loaders.module';
2
+ export * from './overlay-loader/overlay-loader.component';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2xvYWRlcnMvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxrQkFBa0IsQ0FBQTtBQUNoQyxjQUFjLDJDQUEyQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9sb2FkZXJzLm1vZHVsZSdcbmV4cG9ydCAqIGZyb20gJy4vb3ZlcmxheS1sb2FkZXIvb3ZlcmxheS1sb2FkZXIuY29tcG9uZW50J1xuIl19
@@ -0,0 +1,105 @@
1
+ import * as i0 from '@angular/core';
2
+ import { Component, Injectable, NgModule } from '@angular/core';
3
+ import { CommonModule } from '@angular/common';
4
+ import * as i1 from '@angular/material/progress-spinner';
5
+ import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
6
+ import * as i1$1 from '@angular/cdk/overlay';
7
+ import { OverlayConfig } from '@angular/cdk/overlay';
8
+ import { ComponentPortal, PortalInjector } from '@angular/cdk/portal';
9
+
10
+ class OverlayLoaderComponent {
11
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: OverlayLoaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
12
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.2", type: OverlayLoaderComponent, selector: "overlay-loader-component", ngImport: i0, template: "<mat-spinner diameter=\"50\"></mat-spinner>\n", styles: [":host mat-spinner ::ng-deep svg{stroke:var(--color-primary)!important}\n"], dependencies: [{ kind: "component", type: i1.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }] });
13
+ }
14
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: OverlayLoaderComponent, decorators: [{
15
+ type: Component,
16
+ args: [{ selector: 'overlay-loader-component', template: "<mat-spinner diameter=\"50\"></mat-spinner>\n", styles: [":host mat-spinner ::ng-deep svg{stroke:var(--color-primary)!important}\n"] }]
17
+ }] });
18
+
19
+ class LoadingOverlayRef {
20
+ overlayRef;
21
+ constructor(overlayRef) {
22
+ this.overlayRef = overlayRef;
23
+ }
24
+ close() {
25
+ this.overlayRef.dispose();
26
+ }
27
+ }
28
+ class OverlayLoaderService {
29
+ injector;
30
+ overlay;
31
+ constructor(injector, overlay) {
32
+ this.injector = injector;
33
+ this.overlay = overlay;
34
+ }
35
+ open() {
36
+ const overlayRef = this.createOverlay();
37
+ const dialogRef = new LoadingOverlayRef(overlayRef);
38
+ this.attachDialogContainer(overlayRef, dialogRef);
39
+ return dialogRef;
40
+ }
41
+ createOverlay() {
42
+ const positionStrategy = this.overlay
43
+ .position()
44
+ .global()
45
+ .centerHorizontally()
46
+ .centerVertically();
47
+ const overlayConfig = new OverlayConfig({
48
+ hasBackdrop: true,
49
+ scrollStrategy: this.overlay.scrollStrategies.block(),
50
+ positionStrategy
51
+ });
52
+ return this.overlay.create(overlayConfig);
53
+ }
54
+ attachDialogContainer(overlayRef, dialogRef) {
55
+ const injector = this.createInjector(dialogRef);
56
+ const containerPortal = new ComponentPortal(OverlayLoaderComponent, null, injector);
57
+ const containerRef = overlayRef.attach(containerPortal);
58
+ return containerRef.instance;
59
+ }
60
+ createInjector(dialogRef) {
61
+ const injectionTokens = new WeakMap();
62
+ injectionTokens.set(LoadingOverlayRef, dialogRef);
63
+ return new PortalInjector(this.injector, injectionTokens);
64
+ }
65
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: OverlayLoaderService, deps: [{ token: i0.Injector }, { token: i1$1.Overlay }], target: i0.ɵɵFactoryTarget.Injectable });
66
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: OverlayLoaderService });
67
+ }
68
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: OverlayLoaderService, decorators: [{
69
+ type: Injectable
70
+ }], ctorParameters: function () { return [{ type: i0.Injector }, { type: i1$1.Overlay }]; } });
71
+
72
+ class LoadersModule {
73
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: LoadersModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
74
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.2", ngImport: i0, type: LoadersModule, declarations: [OverlayLoaderComponent], imports: [CommonModule,
75
+ MatProgressSpinnerModule], exports: [OverlayLoaderComponent] });
76
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: LoadersModule, providers: [
77
+ OverlayLoaderService
78
+ ], imports: [CommonModule,
79
+ MatProgressSpinnerModule] });
80
+ }
81
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: LoadersModule, decorators: [{
82
+ type: NgModule,
83
+ args: [{
84
+ imports: [
85
+ CommonModule,
86
+ MatProgressSpinnerModule
87
+ ],
88
+ declarations: [
89
+ OverlayLoaderComponent
90
+ ],
91
+ exports: [
92
+ OverlayLoaderComponent
93
+ ],
94
+ providers: [
95
+ OverlayLoaderService
96
+ ]
97
+ }]
98
+ }] });
99
+
100
+ /**
101
+ * Generated bundle index. Do not edit.
102
+ */
103
+
104
+ export { LoadersModule, OverlayLoaderComponent };
105
+ //# sourceMappingURL=apipass-loaders.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"apipass-loaders.mjs","sources":["../../../projects/loaders/src/overlay-loader/overlay-loader.component.ts","../../../projects/loaders/src/overlay-loader/overlay-loader.component.html","../../../projects/loaders/src/overlay-loader/overlay-loader.service.ts","../../../projects/loaders/src/loaders.module.ts","../../../projects/loaders/src/apipass-loaders.ts"],"sourcesContent":["import { Component } from '@angular/core'\n\n@Component({\n selector: 'overlay-loader-component',\n templateUrl: 'overlay-loader.component.html',\n styleUrls: ['overlay-loader.component.scss']\n})\nexport class OverlayLoaderComponent {\n}\n","<mat-spinner diameter=\"50\"></mat-spinner>\n","import { ComponentRef, Injectable, Injector } from '@angular/core';\nimport { Overlay, OverlayConfig, OverlayRef } from '@angular/cdk/overlay';\nimport { ComponentPortal, PortalInjector } from '@angular/cdk/portal';\nimport { OverlayLoaderComponent } from './overlay-loader.component';\n\nexport class LoadingOverlayRef {\n\n constructor(private readonly overlayRef: OverlayRef) { }\n\n close(): void {\n this.overlayRef.dispose();\n }\n\n}\n\n@Injectable()\nexport class OverlayLoaderService {\n\n constructor(private readonly injector: Injector, private readonly overlay: Overlay) {\n }\n\n open(): LoadingOverlayRef {\n const overlayRef = this.createOverlay();\n const dialogRef = new LoadingOverlayRef(overlayRef);\n this.attachDialogContainer(overlayRef, dialogRef);\n\n return dialogRef;\n }\n\n private createOverlay(): OverlayRef {\n const positionStrategy = this.overlay\n .position()\n .global()\n .centerHorizontally()\n .centerVertically();\n const overlayConfig = new OverlayConfig({\n hasBackdrop: true,\n scrollStrategy: this.overlay.scrollStrategies.block(),\n positionStrategy\n });\n\n return this.overlay.create(overlayConfig);\n }\n\n private attachDialogContainer(overlayRef: OverlayRef, dialogRef: LoadingOverlayRef): OverlayLoaderComponent {\n const injector = this.createInjector(dialogRef);\n const containerPortal = new ComponentPortal(OverlayLoaderComponent, null, injector);\n const containerRef: ComponentRef<OverlayLoaderComponent> = overlayRef.attach(containerPortal);\n\n return containerRef.instance;\n }\n\n private createInjector(dialogRef: LoadingOverlayRef): PortalInjector {\n const injectionTokens = new WeakMap();\n injectionTokens.set(LoadingOverlayRef, dialogRef);\n\n return new PortalInjector(this.injector, injectionTokens);\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { OverlayLoaderComponent } from './overlay-loader/overlay-loader.component';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\nimport { OverlayLoaderService } from './overlay-loader/overlay-loader.service';\n\n@NgModule({\n imports: [\n CommonModule,\n MatProgressSpinnerModule\n ],\n declarations: [\n OverlayLoaderComponent\n ],\n exports: [\n OverlayLoaderComponent\n ],\n providers: [\n OverlayLoaderService\n ]\n})\nexport class LoadersModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1"],"mappings":"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"}
package/index.d.ts ADDED
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ /// <amd-module name="@apipass/loaders" />
5
+ export * from './public-api';
@@ -0,0 +1,9 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "./overlay-loader/overlay-loader.component";
3
+ import * as i2 from "@angular/common";
4
+ import * as i3 from "@angular/material/progress-spinner";
5
+ export declare class LoadersModule {
6
+ static ɵfac: i0.ɵɵFactoryDeclaration<LoadersModule, never>;
7
+ static ɵmod: i0.ɵɵNgModuleDeclaration<LoadersModule, [typeof i1.OverlayLoaderComponent], [typeof i2.CommonModule, typeof i3.MatProgressSpinnerModule], [typeof i1.OverlayLoaderComponent]>;
8
+ static ɵinj: i0.ɵɵInjectorDeclaration<LoadersModule>;
9
+ }
@@ -0,0 +1,5 @@
1
+ import * as i0 from "@angular/core";
2
+ export declare class OverlayLoaderComponent {
3
+ static ɵfac: i0.ɵɵFactoryDeclaration<OverlayLoaderComponent, never>;
4
+ static ɵcmp: i0.ɵɵComponentDeclaration<OverlayLoaderComponent, "overlay-loader-component", never, {}, {}, never, never, false, never>;
5
+ }
@@ -0,0 +1,19 @@
1
+ import { Injector } from '@angular/core';
2
+ import { Overlay, OverlayRef } from '@angular/cdk/overlay';
3
+ import * as i0 from "@angular/core";
4
+ export declare class LoadingOverlayRef {
5
+ private readonly overlayRef;
6
+ constructor(overlayRef: OverlayRef);
7
+ close(): void;
8
+ }
9
+ export declare class OverlayLoaderService {
10
+ private readonly injector;
11
+ private readonly overlay;
12
+ constructor(injector: Injector, overlay: Overlay);
13
+ open(): LoadingOverlayRef;
14
+ private createOverlay;
15
+ private attachDialogContainer;
16
+ private createInjector;
17
+ static ɵfac: i0.ɵɵFactoryDeclaration<OverlayLoaderService, never>;
18
+ static ɵprov: i0.ɵɵInjectableDeclaration<OverlayLoaderService>;
19
+ }
package/package.json ADDED
@@ -0,0 +1,33 @@
1
+ {
2
+ "name": "@apipass/loaders",
3
+ "version": "1.0.18",
4
+ "peerDependencies": {
5
+ "@angular/animations": "16.0.2",
6
+ "@angular/cdk": "16.0.1",
7
+ "@angular/common": "16.0.2",
8
+ "@angular/core": "16.0.2",
9
+ "@angular/forms": "16.0.2",
10
+ "@angular/material": "16.0.1"
11
+ },
12
+ "dependencies": {
13
+ "@apipass/icons": "1.0.8",
14
+ "@apipass/buttons": "1.0.8",
15
+ "ngx-scrollbar": "11.0.0",
16
+ "@ngx-translate/core": "15.0.0",
17
+ "tslib": "2.5.2"
18
+ },
19
+ "module": "fesm2022/apipass-loaders.mjs",
20
+ "typings": "index.d.ts",
21
+ "exports": {
22
+ "./package.json": {
23
+ "default": "./package.json"
24
+ },
25
+ ".": {
26
+ "types": "./index.d.ts",
27
+ "esm2022": "./esm2022/apipass-loaders.mjs",
28
+ "esm": "./esm2022/apipass-loaders.mjs",
29
+ "default": "./fesm2022/apipass-loaders.mjs"
30
+ }
31
+ },
32
+ "sideEffects": false
33
+ }
@@ -0,0 +1,2 @@
1
+ export * from './loaders.module';
2
+ export * from './overlay-loader/overlay-loader.component';