@ng-atomic/common 17.8.0 → 17.9.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/esm2022/pipes/smart-field/smart-field.pipe.mjs +1 -1
- package/esm2022/services/app/app.service.mjs +30 -0
- package/esm2022/services/app/index.mjs +2 -0
- package/esm2022/services/app/ng-atomic-common-services-app.mjs +5 -0
- package/esm2022/services/fab/fab.service.mjs +17 -3
- package/fesm2022/ng-atomic-common-pipes-smart-field.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-app.mjs +37 -0
- package/fesm2022/ng-atomic-common-services-app.mjs.map +1 -0
- package/fesm2022/ng-atomic-common-services-fab.mjs +16 -2
- package/fesm2022/ng-atomic-common-services-fab.mjs.map +1 -1
- package/package.json +8 -2
- package/pipes/smart-field/smart-field.pipe.d.ts +1 -0
- package/services/app/app.service.d.ts +20 -0
- package/services/app/index.d.ts +1 -0
- package/services/fab/fab.service.d.ts +8 -1
|
@@ -30,4 +30,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImpor
|
|
|
30
30
|
type: Pipe,
|
|
31
31
|
args: [{ name: 'smartField', standalone: true, pure: true }]
|
|
32
32
|
}] });
|
|
33
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtZmllbGQucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BuZy1hdG9taWMvY29tbW9uL3NyYy9saWIvcGlwZXMvc21hcnQtZmllbGQvc21hcnQtZmllbGQucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLElBQUksRUFBeUIsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR3BGLE9BQU8sR0FBRyxNQUFNLFlBQVksQ0FBQzs7QUFvSDdCLGtCQUFrQjtBQUNsQixNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsSUFBSSxjQUFjLENBQWUsK0JBQStCLENBQUMsQ0FBQztBQUVoRyxrQkFBa0I7QUFDbEIsTUFBTSxVQUFVLG1CQUFtQixDQUFDLFVBQThCO0lBQ2hFLE9BQU8sRUFBRSxPQUFPLEVBQUUsY0FBYyxFQUFFLFVBQVUsRUFBRSxDQUFDO0FBQ2pELENBQUM7QUFJRCxrQkFBa0I7QUFDbEIsTUFBTSxVQUFVLFlBQVksQ0FBSSxLQUFjO0lBQzVDLE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUMsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUMsQ0FBYyxDQUFDLENBQUM7QUFDaEYsQ0FBQztBQUVELGtCQUFrQjtBQUVsQixNQUFNLE9BQU8sY0FBYztJQUQzQjtRQUVZLFFBQUcsR0FBRyxNQUFNLENBQUMsY0FBYyxFQUFFLEVBQUMsUUFBUSxFQUFFLElBQUksRUFBQyxDQUFDLElBQUk7WUFDMUQsU0FBUyxFQUFFLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRTtZQUMzQixTQUFTLEVBQUUsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFO1lBQzNCLFNBQVMsRUFBRSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUU7U0FDNUIsQ0FBQztLQUtIO0lBSEMsU0FBUyxDQUFDLEdBQVcsRUFBRSxNQUFvQixJQUFJLENBQUMsR0FBRztRQUNqRCxPQUFPLEdBQUcsQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLElBQUksRUFBQyxJQUFJLEVBQUUsT0FBTyxFQUFDLENBQUM7SUFDMUMsQ0FBQzs4R0FUVSxjQUFjOzRHQUFkLGNBQWM7OzJGQUFkLGNBQWM7a0JBRDFCLElBQUk7bUJBQUMsRUFBQyxJQUFJLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuLCBQaXBlLCBQaXBlVHJhbnNmb3JtLCBTaWduYWwsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aW9uIH0gZnJvbSAnQG5nLWF0b21pYy9jb3JlJztcbmltcG9ydCB7IFNpZ25hbE9yVmFsdWUgfSBmcm9tICdAbmctYXRvbWljL2NvbW1vbi9waXBlcy9zaWduYWwnO1xuaW1wb3J0IGdldCBmcm9tICdsb2Rhc2guZ2V0JztcblxuXG5leHBvcnQgaW50ZXJmYWNlIE9wdGlvbjxUPiB7XG4gIG5hbWU6IHN0cmluZztcbiAgdmFsdWU6IFQ7XG59XG5cbmludGVyZmFjZSBCYXNlRmllbGQge1xuICBwbGFjZWhvbGRlcj86IHN0cmluZztcbiAgaGludD86IFNpZ25hbE9yVmFsdWU8c3RyaW5nPjtcbiAgYWN0aW9ucz86IEFjdGlvbltdIHwgU2lnbmFsPEFjdGlvbltdPjtcbn1cblxuaW50ZXJmYWNlIFRleHRGaWVsZCBleHRlbmRzIEJhc2VGaWVsZCB7XG4gIHR5cGU6ICd0ZXh0JztcbiAgYXV0b0NvbXBsZXRlPzogU2lnbmFsT3JWYWx1ZTxzdHJpbmdbXT47XG59XG5cbmludGVyZmFjZSBQYXNzd29yZEZpZWxkIGV4dGVuZHMgQmFzZUZpZWxkIHtcbiAgdHlwZTogJ3Bhc3N3b3JkJztcbn1cblxuaW50ZXJmYWNlIE51bWJlckZpZWxkIGV4dGVuZHMgQmFzZUZpZWxkIHtcbiAgdHlwZTogJ251bWJlcic7XG59XG5cbmludGVyZmFjZSBUZXh0YXJlYUZpZWxkIGV4dGVuZHMgQmFzZUZpZWxkIHtcbiAgdHlwZTogJ3RleHRhcmVhJztcbiAgcm93cz86IG51bWJlcjtcbn1cblxuaW50ZXJmYWNlIERhdGVJbnB1dEZpZWxkIGV4dGVuZHMgQmFzZUZpZWxkIHtcbiAgdHlwZTogJ2RhdGUnO1xufVxuXG5pbnRlcmZhY2UgRGF0ZVJhbmdlSW5wdXRGaWVsZCBleHRlbmRzIEJhc2VGaWVsZCB7XG4gIHR5cGU6ICdkYXRlLXJhbmdlJztcbn1cblxuaW50ZXJmYWNlIFNlbGVjdEZpZWxkPFQ+IGV4dGVuZHMgQmFzZUZpZWxkIHtcbiAgdHlwZTogJ3NlbGVjdCc7XG4gIG9wdGlvbnM6IE9wdGlvbjxUPltdIHwgU2lnbmFsPE9wdGlvbjxUPltdPjtcbiAgbXVsdGlwbGU/OiBib29sZWFuO1xufVxuXG5pbnRlcmZhY2UgVGltZVJhbmdlRmllbGQgZXh0ZW5kcyBCYXNlRmllbGQge1xuICB0eXBlOiAndGltZS1yYW5nZSc7XG59XG5cbi8vKiBAZGVwcmVjYXRlZCB1c2UgbXVsdGlwbGUgb3B0aW9uICovXG5pbnRlcmZhY2UgTXVsdGlTZWxlY3RGaWVsZDxUPiBleHRlbmRzIEJhc2VGaWVsZCB7XG4gIHR5cGU6ICdtdWx0aS1zZWxlY3QnO1xuICBvcHRpb25zOiBPcHRpb248VD5bXSB8IFNpZ25hbDxPcHRpb248VD5bXT47XG59XG5cbmludGVyZmFjZSBGaWxlRmllbGQgZXh0ZW5kcyBCYXNlRmllbGQge1xuICB0eXBlOiAnZmlsZSc7XG4gIHByb2dyZXNzPzogU2lnbmFsPG51bWJlciB8IG51bGw+O1xufVxuXG5pbnRlcmZhY2UgQWN0aW9uRmllbGQgZXh0ZW5kcyBCYXNlRmllbGQge1xuICB0eXBlOiAnYWN0aW9uJztcbiAgYWN0aW9uczogQWN0aW9uW10gfCBTaWduYWw8QWN0aW9uW10+O1xuICBidXR0b25UeXBlPzogJ2ZsYXQnIHwgJ3JhaXNlZCcgfCAnc3Ryb2tlZCcgfCAnaWNvbic7XG4gIGRpc2FibGVkPzogYm9vbGVhbjtcbn1cblxuaW50ZXJmYWNlIEFncmVlbWVudEZpZWxkIHtcbiAgdHlwZTogJ2FncmVlbWVudCc7XG4gIGxhYmVsVGVtcDogbnVsbCB8IGFueTtcbn1cblxuaW50ZXJmYWNlIFNsaWRlckZpZWxkIGV4dGVuZHMgQmFzZUZpZWxkIHtcbiAgdHlwZTogJ3NsaWRlcic7XG4gIHNsaWRlcjoge1xuICAgIG1pbj86IG51bWJlcjtcbiAgICBtYXg/OiBudW1iZXI7XG4gICAgc3RlcD86IG51bWJlcjtcbiAgfVxufVxuXG5pbnRlcmZhY2UgSGlkZGVuRmllbGQge1xuICB0eXBlOiAnaGlkZGVuJztcbn1cblxuaW50ZXJmYWNlIFByZXZpZXdGaWVsZCBleHRlbmRzIEJhc2VGaWVsZCB7XG4gIHR5cGU6ICdwcmV2aWV3Jztcbn1cblxuaW50ZXJmYWNlIFByZXZpZXdJbWFnZUZpZWxkIGV4dGVuZHMgQmFzZUZpZWxkIHtcbiAgdHlwZTogJ3ByZXZpZXc6aW1hZ2UnO1xufVxuXG5leHBvcnQgdHlwZSBGb3JtRmllbGQ8ViA9IGFueT4gPSBcbiAgfCBUZXh0RmllbGRcbiAgfCBQYXNzd29yZEZpZWxkXG4gIHwgVGV4dGFyZWFGaWVsZFxuICB8IERhdGVJbnB1dEZpZWxkXG4gIHwgRGF0ZVJhbmdlSW5wdXRGaWVsZFxuICB8IFNlbGVjdEZpZWxkPFY+XG4gIHwgVGltZVJhbmdlRmllbGRcbiAgfCBNdWx0aVNlbGVjdEZpZWxkPFY+XG4gIHwgRmlsZUZpZWxkXG4gIHwgQWN0aW9uRmllbGRcbiAgfCBIaWRkZW5GaWVsZFxuICB8IE51bWJlckZpZWxkXG4gIHwgUHJldmlld0ZpZWxkXG4gIHwgQWdyZWVtZW50RmllbGRcbiAgfCBTbGlkZXJGaWVsZFxuICB8IFByZXZpZXdJbWFnZUZpZWxkO1xuXG5leHBvcnQgaW50ZXJmYWNlIEZvcm1GaWVsZE1hcCB7XG4gIFtrZXk6IHN0cmluZ106IEZvcm1GaWVsZDxhbnk+IHwgRm9ybUZpZWxkTWFwO1xufVxuXG4vKiogQGRlcHJlY2F0ZWQgKi9cbmV4cG9ydCBjb25zdCBGT1JNX0ZJRUxEX01BUCA9IG5ldyBJbmplY3Rpb25Ub2tlbjxGb3JtRmllbGRNYXA+KCdbQG5nLWF0b21pY10gU21hcnQgRm9ybSBGaWVsZCcpO1xuXG4vKiogQGRlcHJlY2F0ZWQgKi9cbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlRm9ybUZpZWxkTWFwKHVzZUZhY3Rvcnk6ICgpID0+IEZvcm1GaWVsZE1hcCkge1xuICByZXR1cm4geyBwcm92aWRlOiBGT1JNX0ZJRUxEX01BUCwgdXNlRmFjdG9yeSB9O1xufVxuXG50eXBlIEVudW08VD4gPSBSZWNvcmQ8c3RyaW5nLCBUPjtcblxuLyoqIEBkZXByZWNhdGVkICovXG5leHBvcnQgZnVuY3Rpb24gYnVpbGRPcHRpb25zPFQ+KF9lbnVtOiBFbnVtPFQ+KTogT3B0aW9uPFQ+W10ge1xuICByZXR1cm4gT2JqZWN0LnZhbHVlcyhfZW51bSkubWFwKHZhbHVlID0+ICh7dmFsdWUsIG5hbWU6IHZhbHVlfSkgYXMgT3B0aW9uPFQ+KTtcbn1cblxuLyoqIEBkZXByZWNhdGVkICovXG5AUGlwZSh7bmFtZTogJ3NtYXJ0RmllbGQnLCBzdGFuZGFsb25lOiB0cnVlLCBwdXJlOiB0cnVlfSlcbmV4cG9ydCBjbGFzcyBTbWFydEZpZWxkUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICBwcm90ZWN0ZWQgbWFwID0gaW5qZWN0KEZPUk1fRklFTERfTUFQLCB7b3B0aW9uYWw6IHRydWV9KSA/PyB7XG4gICAgY3JlYXRlZEF0OiB7IHR5cGU6ICdkYXRlJyB9LFxuICAgIHVwZGF0ZWRBdDogeyB0eXBlOiAnZGF0ZScgfSxcbiAgICBkZWxldGVkQXQ6IHsgdHlwZTogJ2RhdGUnIH0sXG4gIH07XG5cbiAgdHJhbnNmb3JtKGtleTogc3RyaW5nLCBtYXA6IEZvcm1GaWVsZE1hcCA9IHRoaXMubWFwKTogRm9ybUZpZWxkPGFueT4ge1xuICAgIHJldHVybiBnZXQobWFwLCBrZXkpID8/IHt0eXBlOiAnaW5wdXQnfTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { Injectable, inject } from '@angular/core';
|
|
2
|
+
import { Router } from '@angular/router';
|
|
3
|
+
import { LoadingService } from '@ng-atomic/common/services/loading';
|
|
4
|
+
import { SideAppService } from '@ng-atomic/common/services/side-app';
|
|
5
|
+
import { SideNavModeService } from '@ng-atomic/common/services/side-nav-mode';
|
|
6
|
+
import { FabService } from '@ng-atomic/common/services/fab';
|
|
7
|
+
import { SnackBarService } from '@ng-atomic/common/services/snack-bar';
|
|
8
|
+
import { Clipboard } from '@angular/cdk/clipboard';
|
|
9
|
+
import * as i0 from "@angular/core";
|
|
10
|
+
export class AppService {
|
|
11
|
+
constructor() {
|
|
12
|
+
this.loading = inject(LoadingService);
|
|
13
|
+
this.sideApp = inject(SideAppService);
|
|
14
|
+
this.sideNavMode = inject(SideNavModeService);
|
|
15
|
+
this.sideNav = inject(SideNavModeService);
|
|
16
|
+
this.router = inject(Router);
|
|
17
|
+
this.fab = inject(FabService);
|
|
18
|
+
this.snackBar = inject(SnackBarService);
|
|
19
|
+
this.clipboard = inject(Clipboard);
|
|
20
|
+
}
|
|
21
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: AppService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
22
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: AppService, providedIn: 'root' }); }
|
|
23
|
+
}
|
|
24
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: AppService, decorators: [{
|
|
25
|
+
type: Injectable,
|
|
26
|
+
args: [{
|
|
27
|
+
providedIn: 'root'
|
|
28
|
+
}]
|
|
29
|
+
}] });
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AbmctYXRvbWljL2NvbW1vbi9zcmMvbGliL3NlcnZpY2VzL2FwcC9hcHAuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUNyRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUM5RSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDNUQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7QUFLbkQsTUFBTSxPQUFPLFVBQVU7SUFIdkI7UUFJVyxZQUFPLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ2pDLFlBQU8sR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDakMsZ0JBQVcsR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUN6QyxZQUFPLEdBQUcsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFDckMsV0FBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN4QixRQUFHLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3pCLGFBQVEsR0FBRyxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDbkMsY0FBUyxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztLQUN4Qzs4R0FUWSxVQUFVO2tIQUFWLFVBQVUsY0FGVCxNQUFNOzsyRkFFUCxVQUFVO2tCQUh0QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IExvYWRpbmdTZXJ2aWNlIH0gZnJvbSAnQG5nLWF0b21pYy9jb21tb24vc2VydmljZXMvbG9hZGluZyc7XG5pbXBvcnQgeyBTaWRlQXBwU2VydmljZSB9IGZyb20gJ0BuZy1hdG9taWMvY29tbW9uL3NlcnZpY2VzL3NpZGUtYXBwJztcbmltcG9ydCB7IFNpZGVOYXZNb2RlU2VydmljZSB9IGZyb20gJ0BuZy1hdG9taWMvY29tbW9uL3NlcnZpY2VzL3NpZGUtbmF2LW1vZGUnO1xuaW1wb3J0IHsgRmFiU2VydmljZSB9IGZyb20gJ0BuZy1hdG9taWMvY29tbW9uL3NlcnZpY2VzL2ZhYic7XG5pbXBvcnQgeyBTbmFja0JhclNlcnZpY2UgfSBmcm9tICdAbmctYXRvbWljL2NvbW1vbi9zZXJ2aWNlcy9zbmFjay1iYXInO1xuaW1wb3J0IHsgQ2xpcGJvYXJkIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NsaXBib2FyZCc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEFwcFNlcnZpY2Uge1xuICByZWFkb25seSBsb2FkaW5nID0gaW5qZWN0KExvYWRpbmdTZXJ2aWNlKTtcbiAgcmVhZG9ubHkgc2lkZUFwcCA9IGluamVjdChTaWRlQXBwU2VydmljZSk7XG4gIHJlYWRvbmx5IHNpZGVOYXZNb2RlID0gaW5qZWN0KFNpZGVOYXZNb2RlU2VydmljZSk7XG4gIHJlYWRvbmx5IHNpZGVOYXYgPSBpbmplY3QoU2lkZU5hdk1vZGVTZXJ2aWNlKTtcbiAgcmVhZG9ubHkgcm91dGVyID0gaW5qZWN0KFJvdXRlcik7XG4gIHJlYWRvbmx5IGZhYiA9IGluamVjdChGYWJTZXJ2aWNlKTtcbiAgcmVhZG9ubHkgc25hY2tCYXIgPSBpbmplY3QoU25hY2tCYXJTZXJ2aWNlKTtcbiAgcmVhZG9ubHkgY2xpcGJvYXJkID0gaW5qZWN0KENsaXBib2FyZCk7XG59XG4iXX0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export * from './app.service';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AbmctYXRvbWljL2NvbW1vbi9zcmMvbGliL3NlcnZpY2VzL2FwcC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGVBQWUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYXBwLnNlcnZpY2UnO1xuXG4iXX0=
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './index';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmctYXRvbWljLWNvbW1vbi1zZXJ2aWNlcy1hcHAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AbmctYXRvbWljL2NvbW1vbi9zcmMvbGliL3NlcnZpY2VzL2FwcC9uZy1hdG9taWMtY29tbW9uLXNlcnZpY2VzLWFwcC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
|
|
@@ -1,9 +1,23 @@
|
|
|
1
|
-
import { Injectable, signal } from '@angular/core';
|
|
1
|
+
import { inject, Injectable, signal } from '@angular/core';
|
|
2
|
+
import { toSignal } from '@angular/core/rxjs-interop';
|
|
3
|
+
import { ActivatedRoute, NavigationEnd, Router } from '@angular/router';
|
|
4
|
+
import { filter, map, switchMap, tap } from 'rxjs';
|
|
2
5
|
import * as i0 from "@angular/core";
|
|
3
6
|
export class FabService {
|
|
4
7
|
constructor() {
|
|
5
8
|
this.hidden = signal(false);
|
|
6
|
-
this.
|
|
9
|
+
this.router = inject(Router);
|
|
10
|
+
this.route = inject(ActivatedRoute);
|
|
11
|
+
this.route$ = this.router.events.pipe(filter(event => event instanceof NavigationEnd), map(() => this.findLastChild(this.route)));
|
|
12
|
+
this.actions$ = this.route$.pipe(switchMap((route) => route.data), map(data => data.fabActions || []), tap(actions => console.debug('actions:', actions)));
|
|
13
|
+
this.actions = toSignal(this.actions$);
|
|
14
|
+
}
|
|
15
|
+
findLastChild(route) {
|
|
16
|
+
let child = route;
|
|
17
|
+
while (child.firstChild) {
|
|
18
|
+
child = child.firstChild;
|
|
19
|
+
}
|
|
20
|
+
return child;
|
|
7
21
|
}
|
|
8
22
|
show() {
|
|
9
23
|
this.hidden.set(false);
|
|
@@ -23,4 +37,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImpor
|
|
|
23
37
|
providedIn: 'root'
|
|
24
38
|
}]
|
|
25
39
|
}] });
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFiLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AbmctYXRvbWljL2NvbW1vbi9zcmMvbGliL3NlcnZpY2VzL2ZhYi9mYWIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0QsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3RELE9BQU8sRUFBRSxjQUFjLEVBQUUsYUFBYSxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRXhFLE9BQU8sRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFjLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7O0FBSy9ELE1BQU0sT0FBTyxVQUFVO0lBSHZCO1FBSVcsV0FBTSxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNiLFdBQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDeEIsVUFBSyxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUN6QyxXQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUN2QyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLFlBQVksYUFBYSxDQUFDLEVBQy9DLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUMxQyxDQUFDO1FBRU8sYUFBUSxHQUF5QixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FDeEQsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQ2hDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLElBQUksRUFBRSxDQUFDLEVBQ2xDLEdBQUcsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsVUFBVSxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQ25ELENBQUM7UUFDTyxZQUFPLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztLQXFCNUM7SUFuQlMsYUFBYSxDQUFDLEtBQXFCO1FBQ3pDLElBQUksS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNsQixPQUFPLEtBQUssQ0FBQyxVQUFVLEVBQUU7WUFDdkIsS0FBSyxHQUFHLEtBQUssQ0FBQyxVQUFVLENBQUM7U0FDMUI7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFRCxJQUFJO1FBQ0YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDekIsQ0FBQztJQUVELElBQUk7UUFDRixJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN4QixDQUFDO0lBRUQsTUFBTTtRQUNKLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN4QyxDQUFDOzhHQWxDVSxVQUFVO2tIQUFWLFVBQVUsY0FGVCxNQUFNOzsyRkFFUCxVQUFVO2tCQUh0QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0b1NpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBOYXZpZ2F0aW9uRW5kLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgQWN0aW9uIH0gZnJvbSAnQG5nLWF0b21pYy9jb3JlJztcbmltcG9ydCB7IGZpbHRlciwgbWFwLCBPYnNlcnZhYmxlLCBzd2l0Y2hNYXAsIHRhcCB9IGZyb20gJ3J4anMnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBGYWJTZXJ2aWNlIHtcbiAgcmVhZG9ubHkgaGlkZGVuID0gc2lnbmFsKGZhbHNlKTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHJvdXRlciA9IGluamVjdChSb3V0ZXIpO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgcm91dGUgPSBpbmplY3QoQWN0aXZhdGVkUm91dGUpO1xuICByZWFkb25seSByb3V0ZSQgPSB0aGlzLnJvdXRlci5ldmVudHMucGlwZShcbiAgICBmaWx0ZXIoZXZlbnQgPT4gZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRW5kKSxcbiAgICBtYXAoKCkgPT4gdGhpcy5maW5kTGFzdENoaWxkKHRoaXMucm91dGUpKSxcbiAgKTtcblxuICByZWFkb25seSBhY3Rpb25zJDogT2JzZXJ2YWJsZTxBY3Rpb25bXT4gPSB0aGlzLnJvdXRlJC5waXBlKFxuICAgIHN3aXRjaE1hcCgocm91dGUpID0+IHJvdXRlLmRhdGEpLFxuICAgIG1hcChkYXRhID0+IGRhdGEuZmFiQWN0aW9ucyB8fCBbXSksXG4gICAgdGFwKGFjdGlvbnMgPT4gY29uc29sZS5kZWJ1ZygnYWN0aW9uczonLCBhY3Rpb25zKSksXG4gICk7XG4gIHJlYWRvbmx5IGFjdGlvbnMgPSB0b1NpZ25hbCh0aGlzLmFjdGlvbnMkKTtcblxuICBwcml2YXRlIGZpbmRMYXN0Q2hpbGQocm91dGU6IEFjdGl2YXRlZFJvdXRlKTogQWN0aXZhdGVkUm91dGUge1xuICAgIGxldCBjaGlsZCA9IHJvdXRlO1xuICAgIHdoaWxlIChjaGlsZC5maXJzdENoaWxkKSB7XG4gICAgICBjaGlsZCA9IGNoaWxkLmZpcnN0Q2hpbGQ7XG4gICAgfVxuICAgIHJldHVybiBjaGlsZDtcbiAgfVxuXG4gIHNob3coKSB7XG4gICAgdGhpcy5oaWRkZW4uc2V0KGZhbHNlKTtcbiAgfVxuXG4gIGhpZGUoKSB7XG4gICAgdGhpcy5oaWRkZW4uc2V0KHRydWUpO1xuICB9XG5cbiAgdG9nZ2xlKCkge1xuICAgIHRoaXMuaGlkZGVuLnVwZGF0ZShoaWRkZW4gPT4gIWhpZGRlbik7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ng-atomic-common-pipes-smart-field.mjs","sources":["../../../../../packages/@ng-atomic/common/src/lib/pipes/smart-field/smart-field.pipe.ts","../../../../../packages/@ng-atomic/common/src/lib/pipes/smart-field/ng-atomic-common-pipes-smart-field.ts"],"sourcesContent":["import { InjectionToken, Pipe, PipeTransform, Signal, inject } from '@angular/core';\nimport { Action } from '@ng-atomic/core';\nimport { SignalOrValue } from '@ng-atomic/common/pipes/signal';\nimport get from 'lodash.get';\n\n\nexport interface Option<T> {\n name: string;\n value: T;\n}\n\ninterface BaseField {\n placeholder?: string;\n hint?: SignalOrValue<string>;\n actions?: Action[] | Signal<Action[]>;\n}\n\ninterface TextField extends BaseField {\n type: 'text';\n autoComplete?: SignalOrValue<string[]>;\n}\n\ninterface PasswordField extends BaseField {\n type: 'password';\n}\n\ninterface NumberField extends BaseField {\n type: 'number';\n}\n\ninterface TextareaField extends BaseField {\n type: 'textarea';\n rows?: number;\n}\n\ninterface DateInputField extends BaseField {\n type: 'date';\n}\n\ninterface DateRangeInputField extends BaseField {\n type: 'date-range';\n}\n\ninterface SelectField<T> extends BaseField {\n type: 'select';\n options: Option<T>[] | Signal<Option<T>[]>;\n multiple?: boolean;\n}\n\ninterface TimeRangeField extends BaseField {\n type: 'time-range';\n}\n\n//* @deprecated use multiple option */\ninterface MultiSelectField<T> extends BaseField {\n type: 'multi-select';\n options: Option<T>[] | Signal<Option<T>[]>;\n}\n\ninterface FileField extends BaseField {\n type: 'file';\n progress?: Signal<number | null>;\n}\n\ninterface ActionField extends BaseField {\n type: 'action';\n actions: Action[] | Signal<Action[]>;\n disabled?: boolean;\n}\n\ninterface AgreementField {\n type: 'agreement';\n labelTemp: null | any;\n}\n\ninterface SliderField extends BaseField {\n type: 'slider';\n slider: {\n min?: number;\n max?: number;\n step?: number;\n }\n}\n\ninterface HiddenField {\n type: 'hidden';\n}\n\ninterface PreviewField extends BaseField {\n type: 'preview';\n}\n\ninterface PreviewImageField extends BaseField {\n type: 'preview:image';\n}\n\nexport type FormField<V = any> = \n | TextField\n | PasswordField\n | TextareaField\n | DateInputField\n | DateRangeInputField\n | SelectField<V>\n | TimeRangeField\n | MultiSelectField<V>\n | FileField\n | ActionField\n | HiddenField\n | NumberField\n | PreviewField\n | AgreementField\n | SliderField\n | PreviewImageField;\n\nexport interface FormFieldMap {\n [key: string]: FormField<any> | FormFieldMap;\n}\n\n/** @deprecated */\nexport const FORM_FIELD_MAP = new InjectionToken<FormFieldMap>('[@ng-atomic] Smart Form Field');\n\n/** @deprecated */\nexport function provideFormFieldMap(useFactory: () => FormFieldMap) {\n return { provide: FORM_FIELD_MAP, useFactory };\n}\n\ntype Enum<T> = Record<string, T>;\n\n/** @deprecated */\nexport function buildOptions<T>(_enum: Enum<T>): Option<T>[] {\n return Object.values(_enum).map(value => ({value, name: value}) as Option<T>);\n}\n\n/** @deprecated */\n@Pipe({name: 'smartField', standalone: true, pure: true})\nexport class SmartFieldPipe implements PipeTransform {\n protected map = inject(FORM_FIELD_MAP, {optional: true}) ?? {\n createdAt: { type: 'date' },\n updatedAt: { type: 'date' },\n deletedAt: { type: 'date' },\n };\n\n transform(key: string, map: FormFieldMap = this.map): FormField<any> {\n return get(map, key) ?? {type: 'input'};\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;
|
|
1
|
+
{"version":3,"file":"ng-atomic-common-pipes-smart-field.mjs","sources":["../../../../../packages/@ng-atomic/common/src/lib/pipes/smart-field/smart-field.pipe.ts","../../../../../packages/@ng-atomic/common/src/lib/pipes/smart-field/ng-atomic-common-pipes-smart-field.ts"],"sourcesContent":["import { InjectionToken, Pipe, PipeTransform, Signal, inject } from '@angular/core';\nimport { Action } from '@ng-atomic/core';\nimport { SignalOrValue } from '@ng-atomic/common/pipes/signal';\nimport get from 'lodash.get';\n\n\nexport interface Option<T> {\n name: string;\n value: T;\n}\n\ninterface BaseField {\n placeholder?: string;\n hint?: SignalOrValue<string>;\n actions?: Action[] | Signal<Action[]>;\n}\n\ninterface TextField extends BaseField {\n type: 'text';\n autoComplete?: SignalOrValue<string[]>;\n}\n\ninterface PasswordField extends BaseField {\n type: 'password';\n}\n\ninterface NumberField extends BaseField {\n type: 'number';\n}\n\ninterface TextareaField extends BaseField {\n type: 'textarea';\n rows?: number;\n}\n\ninterface DateInputField extends BaseField {\n type: 'date';\n}\n\ninterface DateRangeInputField extends BaseField {\n type: 'date-range';\n}\n\ninterface SelectField<T> extends BaseField {\n type: 'select';\n options: Option<T>[] | Signal<Option<T>[]>;\n multiple?: boolean;\n}\n\ninterface TimeRangeField extends BaseField {\n type: 'time-range';\n}\n\n//* @deprecated use multiple option */\ninterface MultiSelectField<T> extends BaseField {\n type: 'multi-select';\n options: Option<T>[] | Signal<Option<T>[]>;\n}\n\ninterface FileField extends BaseField {\n type: 'file';\n progress?: Signal<number | null>;\n}\n\ninterface ActionField extends BaseField {\n type: 'action';\n actions: Action[] | Signal<Action[]>;\n buttonType?: 'flat' | 'raised' | 'stroked' | 'icon';\n disabled?: boolean;\n}\n\ninterface AgreementField {\n type: 'agreement';\n labelTemp: null | any;\n}\n\ninterface SliderField extends BaseField {\n type: 'slider';\n slider: {\n min?: number;\n max?: number;\n step?: number;\n }\n}\n\ninterface HiddenField {\n type: 'hidden';\n}\n\ninterface PreviewField extends BaseField {\n type: 'preview';\n}\n\ninterface PreviewImageField extends BaseField {\n type: 'preview:image';\n}\n\nexport type FormField<V = any> = \n | TextField\n | PasswordField\n | TextareaField\n | DateInputField\n | DateRangeInputField\n | SelectField<V>\n | TimeRangeField\n | MultiSelectField<V>\n | FileField\n | ActionField\n | HiddenField\n | NumberField\n | PreviewField\n | AgreementField\n | SliderField\n | PreviewImageField;\n\nexport interface FormFieldMap {\n [key: string]: FormField<any> | FormFieldMap;\n}\n\n/** @deprecated */\nexport const FORM_FIELD_MAP = new InjectionToken<FormFieldMap>('[@ng-atomic] Smart Form Field');\n\n/** @deprecated */\nexport function provideFormFieldMap(useFactory: () => FormFieldMap) {\n return { provide: FORM_FIELD_MAP, useFactory };\n}\n\ntype Enum<T> = Record<string, T>;\n\n/** @deprecated */\nexport function buildOptions<T>(_enum: Enum<T>): Option<T>[] {\n return Object.values(_enum).map(value => ({value, name: value}) as Option<T>);\n}\n\n/** @deprecated */\n@Pipe({name: 'smartField', standalone: true, pure: true})\nexport class SmartFieldPipe implements PipeTransform {\n protected map = inject(FORM_FIELD_MAP, {optional: true}) ?? {\n createdAt: { type: 'date' },\n updatedAt: { type: 'date' },\n deletedAt: { type: 'date' },\n };\n\n transform(key: string, map: FormFieldMap = this.map): FormField<any> {\n return get(map, key) ?? {type: 'input'};\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;AAuHA;MACa,cAAc,GAAG,IAAI,cAAc,CAAe,+BAA+B,EAAE;AAEhG;AACM,SAAU,mBAAmB,CAAC,UAA8B,EAAA;AAChE,IAAA,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC;AACjD,CAAC;AAID;AACM,SAAU,YAAY,CAAI,KAAc,EAAA;IAC5C,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,KAAK,KAAK,EAAC,KAAK,EAAE,IAAI,EAAE,KAAK,EAAC,CAAc,CAAC,CAAC;AAChF,CAAC;AAED;MAEa,cAAc,CAAA;AAD3B,IAAA,WAAA,GAAA;QAEY,IAAG,CAAA,GAAA,GAAG,MAAM,CAAC,cAAc,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC,IAAI;AAC1D,YAAA,SAAS,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;AAC3B,YAAA,SAAS,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;AAC3B,YAAA,SAAS,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;SAC5B,CAAC;AAKH,KAAA;AAHC,IAAA,SAAS,CAAC,GAAW,EAAE,GAAoB,GAAA,IAAI,CAAC,GAAG,EAAA;AACjD,QAAA,OAAO,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,EAAC,IAAI,EAAE,OAAO,EAAC,CAAC;KACzC;8GATU,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;4GAAd,cAAc,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,CAAA,EAAA;;2FAAd,cAAc,EAAA,UAAA,EAAA,CAAA;kBAD1B,IAAI;mBAAC,EAAC,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAC,CAAA;;;ACvIxD;;AAEG;;;;"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { inject, Injectable } from '@angular/core';
|
|
3
|
+
import { Router } from '@angular/router';
|
|
4
|
+
import { LoadingService } from '@ng-atomic/common/services/loading';
|
|
5
|
+
import { SideAppService } from '@ng-atomic/common/services/side-app';
|
|
6
|
+
import { SideNavModeService } from '@ng-atomic/common/services/side-nav-mode';
|
|
7
|
+
import { FabService } from '@ng-atomic/common/services/fab';
|
|
8
|
+
import { SnackBarService } from '@ng-atomic/common/services/snack-bar';
|
|
9
|
+
import { Clipboard } from '@angular/cdk/clipboard';
|
|
10
|
+
|
|
11
|
+
class AppService {
|
|
12
|
+
constructor() {
|
|
13
|
+
this.loading = inject(LoadingService);
|
|
14
|
+
this.sideApp = inject(SideAppService);
|
|
15
|
+
this.sideNavMode = inject(SideNavModeService);
|
|
16
|
+
this.sideNav = inject(SideNavModeService);
|
|
17
|
+
this.router = inject(Router);
|
|
18
|
+
this.fab = inject(FabService);
|
|
19
|
+
this.snackBar = inject(SnackBarService);
|
|
20
|
+
this.clipboard = inject(Clipboard);
|
|
21
|
+
}
|
|
22
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: AppService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
23
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: AppService, providedIn: 'root' }); }
|
|
24
|
+
}
|
|
25
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: AppService, decorators: [{
|
|
26
|
+
type: Injectable,
|
|
27
|
+
args: [{
|
|
28
|
+
providedIn: 'root'
|
|
29
|
+
}]
|
|
30
|
+
}] });
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* Generated bundle index. Do not edit.
|
|
34
|
+
*/
|
|
35
|
+
|
|
36
|
+
export { AppService };
|
|
37
|
+
//# sourceMappingURL=ng-atomic-common-services-app.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ng-atomic-common-services-app.mjs","sources":["../../../../../packages/@ng-atomic/common/src/lib/services/app/app.service.ts","../../../../../packages/@ng-atomic/common/src/lib/services/app/ng-atomic-common-services-app.ts"],"sourcesContent":["import { Injectable, inject } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { LoadingService } from '@ng-atomic/common/services/loading';\nimport { SideAppService } from '@ng-atomic/common/services/side-app';\nimport { SideNavModeService } from '@ng-atomic/common/services/side-nav-mode';\nimport { FabService } from '@ng-atomic/common/services/fab';\nimport { SnackBarService } from '@ng-atomic/common/services/snack-bar';\nimport { Clipboard } from '@angular/cdk/clipboard';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AppService {\n readonly loading = inject(LoadingService);\n readonly sideApp = inject(SideAppService);\n readonly sideNavMode = inject(SideNavModeService);\n readonly sideNav = inject(SideNavModeService);\n readonly router = inject(Router);\n readonly fab = inject(FabService);\n readonly snackBar = inject(SnackBarService);\n readonly clipboard = inject(Clipboard);\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;MAYa,UAAU,CAAA;AAHvB,IAAA,WAAA,GAAA;AAIW,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC;AACjC,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC;AACjC,QAAA,IAAA,CAAA,WAAW,GAAG,MAAM,CAAC,kBAAkB,CAAC,CAAC;AACzC,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,kBAAkB,CAAC,CAAC;AACrC,QAAA,IAAA,CAAA,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;AACxB,QAAA,IAAA,CAAA,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;AACzB,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,eAAe,CAAC,CAAC;AACnC,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;AACxC,KAAA;8GATY,UAAU,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;AAAV,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAU,cAFT,MAAM,EAAA,CAAA,CAAA,EAAA;;2FAEP,UAAU,EAAA,UAAA,EAAA,CAAA;kBAHtB,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA,CAAA;;;ACXD;;AAEG;;;;"}
|
|
@@ -1,10 +1,24 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { signal, Injectable } from '@angular/core';
|
|
2
|
+
import { signal, inject, Injectable } from '@angular/core';
|
|
3
|
+
import { toSignal } from '@angular/core/rxjs-interop';
|
|
4
|
+
import { Router, ActivatedRoute, NavigationEnd } from '@angular/router';
|
|
5
|
+
import { filter, map, switchMap, tap } from 'rxjs';
|
|
3
6
|
|
|
4
7
|
class FabService {
|
|
5
8
|
constructor() {
|
|
6
9
|
this.hidden = signal(false);
|
|
7
|
-
this.
|
|
10
|
+
this.router = inject(Router);
|
|
11
|
+
this.route = inject(ActivatedRoute);
|
|
12
|
+
this.route$ = this.router.events.pipe(filter(event => event instanceof NavigationEnd), map(() => this.findLastChild(this.route)));
|
|
13
|
+
this.actions$ = this.route$.pipe(switchMap((route) => route.data), map(data => data.fabActions || []), tap(actions => console.debug('actions:', actions)));
|
|
14
|
+
this.actions = toSignal(this.actions$);
|
|
15
|
+
}
|
|
16
|
+
findLastChild(route) {
|
|
17
|
+
let child = route;
|
|
18
|
+
while (child.firstChild) {
|
|
19
|
+
child = child.firstChild;
|
|
20
|
+
}
|
|
21
|
+
return child;
|
|
8
22
|
}
|
|
9
23
|
show() {
|
|
10
24
|
this.hidden.set(false);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ng-atomic-common-services-fab.mjs","sources":["../../../../../packages/@ng-atomic/common/src/lib/services/fab/fab.service.ts","../../../../../packages/@ng-atomic/common/src/lib/services/fab/ng-atomic-common-services-fab.ts"],"sourcesContent":["import { Injectable, signal } from '@angular/core';\nimport { Action } from '@ng-atomic/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class FabService {\n readonly hidden = signal(false);\n readonly
|
|
1
|
+
{"version":3,"file":"ng-atomic-common-services-fab.mjs","sources":["../../../../../packages/@ng-atomic/common/src/lib/services/fab/fab.service.ts","../../../../../packages/@ng-atomic/common/src/lib/services/fab/ng-atomic-common-services-fab.ts"],"sourcesContent":["import { inject, Injectable, signal } from '@angular/core';\nimport { toSignal } from '@angular/core/rxjs-interop';\nimport { ActivatedRoute, NavigationEnd, Router } from '@angular/router';\nimport { Action } from '@ng-atomic/core';\nimport { filter, map, Observable, switchMap, tap } from 'rxjs';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class FabService {\n readonly hidden = signal(false);\n protected readonly router = inject(Router);\n protected readonly route = inject(ActivatedRoute);\n readonly route$ = this.router.events.pipe(\n filter(event => event instanceof NavigationEnd),\n map(() => this.findLastChild(this.route)),\n );\n\n readonly actions$: Observable<Action[]> = this.route$.pipe(\n switchMap((route) => route.data),\n map(data => data.fabActions || []),\n tap(actions => console.debug('actions:', actions)),\n );\n readonly actions = toSignal(this.actions$);\n\n private findLastChild(route: ActivatedRoute): ActivatedRoute {\n let child = route;\n while (child.firstChild) {\n child = child.firstChild;\n }\n return child;\n }\n\n show() {\n this.hidden.set(false);\n }\n\n hide() {\n this.hidden.set(true);\n }\n\n toggle() {\n this.hidden.update(hidden => !hidden);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;MASa,UAAU,CAAA;AAHvB,IAAA,WAAA,GAAA;AAIW,QAAA,IAAA,CAAA,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;AACb,QAAA,IAAA,CAAA,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;AACxB,QAAA,IAAA,CAAA,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC;AACzC,QAAA,IAAA,CAAA,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CACvC,MAAM,CAAC,KAAK,IAAI,KAAK,YAAY,aAAa,CAAC,EAC/C,GAAG,CAAC,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAC1C,CAAC;QAEO,IAAQ,CAAA,QAAA,GAAyB,IAAI,CAAC,MAAM,CAAC,IAAI,CACxD,SAAS,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,IAAI,CAAC,EAChC,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,UAAU,IAAI,EAAE,CAAC,EAClC,GAAG,CAAC,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CACnD,CAAC;AACO,QAAA,IAAA,CAAA,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AAqB5C,KAAA;AAnBS,IAAA,aAAa,CAAC,KAAqB,EAAA;QACzC,IAAI,KAAK,GAAG,KAAK,CAAC;QAClB,OAAO,KAAK,CAAC,UAAU,EAAE;AACvB,YAAA,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC;AAC1B,SAAA;AACD,QAAA,OAAO,KAAK,CAAC;KACd;IAED,IAAI,GAAA;AACF,QAAA,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;KACxB;IAED,IAAI,GAAA;AACF,QAAA,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;KACvB;IAED,MAAM,GAAA;AACJ,QAAA,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,CAAC;KACvC;8GAlCU,UAAU,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;AAAV,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAU,cAFT,MAAM,EAAA,CAAA,CAAA,EAAA;;2FAEP,UAAU,EAAA,UAAA,EAAA,CAAA;kBAHtB,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA,CAAA;;;ACRD;;AAEG;;;;"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ng-atomic/common",
|
|
3
|
-
"version": "17.
|
|
3
|
+
"version": "17.9.0",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"peerDependencies": {
|
|
6
6
|
"@angular/cdk": "^17.0.0",
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
"@angular/router": "^17.0.0",
|
|
13
13
|
"@ngrx/component-store": "^17.0.0",
|
|
14
14
|
"@ngrx/entity": "^17.0.0",
|
|
15
|
-
"@nx-ddd/core": "17.
|
|
15
|
+
"@nx-ddd/core": "17.9.0",
|
|
16
16
|
"dayjs": "1.11.10",
|
|
17
17
|
"flat": "^6.0.0",
|
|
18
18
|
"lodash-es": "^4.17.15",
|
|
@@ -221,6 +221,12 @@
|
|
|
221
221
|
"esm": "./esm2022/pipes/yen/ng-atomic-common-pipes-yen.mjs",
|
|
222
222
|
"default": "./fesm2022/ng-atomic-common-pipes-yen.mjs"
|
|
223
223
|
},
|
|
224
|
+
"./services/app": {
|
|
225
|
+
"types": "./services/app/index.d.ts",
|
|
226
|
+
"esm2022": "./esm2022/services/app/ng-atomic-common-services-app.mjs",
|
|
227
|
+
"esm": "./esm2022/services/app/ng-atomic-common-services-app.mjs",
|
|
228
|
+
"default": "./fesm2022/ng-atomic-common-services-app.mjs"
|
|
229
|
+
},
|
|
224
230
|
"./services/auth": {
|
|
225
231
|
"types": "./services/auth/index.d.ts",
|
|
226
232
|
"esm2022": "./esm2022/services/auth/ng-atomic-common-services-auth.mjs",
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Router } from '@angular/router';
|
|
2
|
+
import { LoadingService } from '@ng-atomic/common/services/loading';
|
|
3
|
+
import { SideAppService } from '@ng-atomic/common/services/side-app';
|
|
4
|
+
import { SideNavModeService } from '@ng-atomic/common/services/side-nav-mode';
|
|
5
|
+
import { FabService } from '@ng-atomic/common/services/fab';
|
|
6
|
+
import { SnackBarService } from '@ng-atomic/common/services/snack-bar';
|
|
7
|
+
import { Clipboard } from '@angular/cdk/clipboard';
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
export declare class AppService {
|
|
10
|
+
readonly loading: LoadingService;
|
|
11
|
+
readonly sideApp: SideAppService;
|
|
12
|
+
readonly sideNavMode: SideNavModeService;
|
|
13
|
+
readonly sideNav: SideNavModeService;
|
|
14
|
+
readonly router: Router;
|
|
15
|
+
readonly fab: FabService;
|
|
16
|
+
readonly snackBar: SnackBarService;
|
|
17
|
+
readonly clipboard: Clipboard;
|
|
18
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AppService, never>;
|
|
19
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<AppService>;
|
|
20
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './app.service';
|
|
@@ -1,8 +1,15 @@
|
|
|
1
|
+
import { ActivatedRoute, Router } from '@angular/router';
|
|
1
2
|
import { Action } from '@ng-atomic/core';
|
|
3
|
+
import { Observable } from 'rxjs';
|
|
2
4
|
import * as i0 from "@angular/core";
|
|
3
5
|
export declare class FabService {
|
|
4
6
|
readonly hidden: import("@angular/core").WritableSignal<boolean>;
|
|
5
|
-
readonly
|
|
7
|
+
protected readonly router: Router;
|
|
8
|
+
protected readonly route: ActivatedRoute;
|
|
9
|
+
readonly route$: Observable<ActivatedRoute>;
|
|
10
|
+
readonly actions$: Observable<Action[]>;
|
|
11
|
+
readonly actions: import("@angular/core").Signal<Action<any>[]>;
|
|
12
|
+
private findLastChild;
|
|
6
13
|
show(): void;
|
|
7
14
|
hide(): void;
|
|
8
15
|
toggle(): void;
|