ontimize-web-ngx 15.0.0-beta.0 → 15.0.0-beta.1

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.
Files changed (39) hide show
  1. package/esm2020/lib/components/table/o-table.component.mjs +2 -2
  2. package/esm2020/lib/services/appearance.service.mjs +14 -2
  3. package/fesm2015/ontimize-web-ngx.mjs +14 -3
  4. package/fesm2015/ontimize-web-ngx.mjs.map +1 -1
  5. package/fesm2020/ontimize-web-ngx.mjs +14 -3
  6. package/fesm2020/ontimize-web-ngx.mjs.map +1 -1
  7. package/lib/services/appearance.service.d.ts +3 -0
  8. package/package.json +1 -1
  9. package/theme.scss +61 -155
  10. package/theming/{ontimize-theme.scss → ontimize-style-v8.scss} +32 -96
  11. package/theming/{implatform-fashion-theme.scss → ontimize-style.scss} +127 -32
  12. package/theming/styles/{lite/layout-lite.scss → layout.scss} +1 -1
  13. package/theming/styles/{fashion/typography-fashion.scss → ontimize/typography-ontimize.scss} +14 -4
  14. package/theming/styles/{lite/typography-lite.scss → ontimize-v8/containers.scss} +1 -97
  15. package/theming/styles/ontimize-v8/o-form-field-style.scss +52 -0
  16. package/theming/styles/ontimize-v8/o-table-style.scss +224 -0
  17. package/theming/styles/ontimize-v8/variables.scss +10 -0
  18. package/theming/styles/paginator.scss +4 -0
  19. package/theming/themes/fashion.scss +46 -0
  20. package/theming/themes/ontimize-black-yellow.scss +3 -5
  21. package/theming/themes/{ontimize-lite.scss → ontimize-blue.scss} +3 -14
  22. package/theming/themes/ontimize.scss +8 -16
  23. package/theming/{styles/lite/typography/ontimize-lite.scss → typography/ontimize.scss} +3 -3
  24. package/theming/ontimize-theme-flat.scss +0 -330
  25. package/theming/ontimize-theme-lite.scss +0 -40
  26. package/theming/styles/default/typography/ontimize.scss +0 -9
  27. package/theming/styles/flat/variables.scss +0 -8
  28. package/theming/styles/lite/form-field/o-form-field-theme.scss +0 -57
  29. package/theming/styles/lite/layout.scss +0 -70
  30. package/theming/styles/lite/paginator.scss +0 -6
  31. package/theming/themes/implatform-fashion-default-theme.scss +0 -148
  32. package/theming/themes/mat-deeppurple-amber.scss +0 -12
  33. package/theming/themes/mat-indigo-pink.scss +0 -11
  34. package/theming/themes/mat-pink-bluegrey.scss +0 -11
  35. package/theming/themes/mat-purple-green.scss +0 -11
  36. /package/theming/{styles/default/addons → addons}/charts-on-demand.scss +0 -0
  37. /package/theming/{styles/default/addons → addons}/report-on-demand.scss +0 -0
  38. /package/theming/styles/{fashion → ontimize}/variables.scss +0 -0
  39. /package/theming/{styles/default/typography → typography}/o-table-typography.scss +0 -0
@@ -1,14 +1,18 @@
1
- import { Injectable, Injector } from '@angular/core';
1
+ import { DOCUMENT } from '@angular/common';
2
+ import { inject, Injectable, Injector } from '@angular/core';
2
3
  import { BehaviorSubject } from 'rxjs';
3
4
  import { LocalStorageService } from './local-storage.service';
4
5
  import * as i0 from "@angular/core";
5
6
  export class AppearanceService {
6
7
  constructor(injector) {
7
8
  this.injector = injector;
9
+ this.darkThemeClass = 'o-dark';
8
10
  this.isDarkModeSubject = new BehaviorSubject(false);
9
11
  this.isDarkMode$ = this.isDarkModeSubject.asObservable();
10
12
  this.localStorageService = this.injector.get(LocalStorageService);
13
+ this._document = inject(DOCUMENT);
11
14
  const config = this.localStorageService.getStoredData();
15
+ this.isDarkMode$.subscribe(x => this.updateThemeClass(x));
12
16
  if (config && config["theme"] && typeof config["theme"].isDark === 'boolean') {
13
17
  const isDark = config["theme"].isDark;
14
18
  this.isDarkModeSubject.next(isDark);
@@ -26,6 +30,14 @@ export class AppearanceService {
26
30
  isDarkMode() {
27
31
  return this.isDarkModeSubject.value;
28
32
  }
33
+ updateThemeClass(isDark) {
34
+ if (isDark) {
35
+ this._document.body.classList.add(this.darkThemeClass);
36
+ }
37
+ else {
38
+ this._document.body.classList.remove(this.darkThemeClass);
39
+ }
40
+ }
29
41
  }
30
42
  AppearanceService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: AppearanceService, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
31
43
  AppearanceService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: AppearanceService, providedIn: 'root' });
@@ -35,4 +47,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
35
47
  providedIn: 'root',
36
48
  }]
37
49
  }], ctorParameters: function () { return [{ type: i0.Injector }]; } });
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwZWFyYW5jZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvb250aW1pemUtd2ViLW5neC9zcmMvbGliL3NlcnZpY2VzL2FwcGVhcmFuY2Uuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRCxPQUFPLEVBQUUsZUFBZSxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBRW5ELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDOztBQUs5RCxNQUFNLE9BQU8saUJBQWlCO0lBSzVCLFlBQXNCLFFBQWtCO1FBQWxCLGFBQVEsR0FBUixRQUFRLENBQVU7UUFKaEMsc0JBQWlCLEdBQUcsSUFBSSxlQUFlLENBQVUsS0FBSyxDQUFDLENBQUM7UUFDaEUsZ0JBQVcsR0FBd0IsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFlBQVksRUFBRSxDQUFDO1FBSXZFLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBRWxFLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUV4RCxJQUFJLE1BQU0sSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxLQUFLLFNBQVMsRUFBRTtZQUM1RSxNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxDQUFDO1lBQ3RDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDckM7SUFFSCxDQUFDO0lBRUQsV0FBVyxDQUFDLFVBQW1CO1FBQzdCLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUN4RCxJQUFJLE1BQU0sRUFBRTtZQUNWLE1BQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ3hDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLEdBQUcsVUFBVSxDQUFDO1NBQ3JDO1FBQ0QsSUFBSSxDQUFDLG1CQUFtQixDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNqRCxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFRCxVQUFVO1FBQ1IsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsS0FBSyxDQUFDO0lBQ3RDLENBQUM7OzhHQTdCVSxpQkFBaUI7a0hBQWpCLGlCQUFpQixjQUZoQixNQUFNOzJGQUVQLGlCQUFpQjtrQkFIN0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJcbmltcG9ydCB7IEluamVjdGFibGUsIEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEFwcENvbmZpZyB9IGZyb20gJy4uL2NvbmZpZy9hcHAtY29uZmlnJztcbmltcG9ydCB7IExvY2FsU3RvcmFnZVNlcnZpY2UgfSBmcm9tICcuL2xvY2FsLXN0b3JhZ2Uuc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBBcHBlYXJhbmNlU2VydmljZSB7XG4gIHByaXZhdGUgaXNEYXJrTW9kZVN1YmplY3QgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcbiAgaXNEYXJrTW9kZSQ6IE9ic2VydmFibGU8Ym9vbGVhbj4gPSB0aGlzLmlzRGFya01vZGVTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpO1xuICBwcm90ZWN0ZWQgX2FwcENvbmZpZzogQXBwQ29uZmlnO1xuICBwcm90ZWN0ZWQgbG9jYWxTdG9yYWdlU2VydmljZTogTG9jYWxTdG9yYWdlU2VydmljZTtcbiAgY29uc3RydWN0b3IocHJvdGVjdGVkIGluamVjdG9yOiBJbmplY3Rvcikge1xuICAgIHRoaXMubG9jYWxTdG9yYWdlU2VydmljZSA9IHRoaXMuaW5qZWN0b3IuZ2V0KExvY2FsU3RvcmFnZVNlcnZpY2UpO1xuXG4gICAgY29uc3QgY29uZmlnID0gdGhpcy5sb2NhbFN0b3JhZ2VTZXJ2aWNlLmdldFN0b3JlZERhdGEoKTtcblxuICAgIGlmIChjb25maWcgJiYgY29uZmlnW1widGhlbWVcIl0gJiYgdHlwZW9mIGNvbmZpZ1tcInRoZW1lXCJdLmlzRGFyayA9PT0gJ2Jvb2xlYW4nKSB7XG4gICAgICBjb25zdCBpc0RhcmsgPSBjb25maWdbXCJ0aGVtZVwiXS5pc0Rhcms7XG4gICAgICB0aGlzLmlzRGFya01vZGVTdWJqZWN0Lm5leHQoaXNEYXJrKTtcbiAgICB9XG5cbiAgfVxuXG4gIHNldERhcmtNb2RlKGlzRGFya01vZGU6IGJvb2xlYW4pIHtcbiAgICBjb25zdCBjb25maWcgPSB0aGlzLmxvY2FsU3RvcmFnZVNlcnZpY2UuZ2V0U3RvcmVkRGF0YSgpO1xuICAgIGlmIChjb25maWcpIHtcbiAgICAgIGNvbmZpZ1tcInRoZW1lXCJdID0gY29uZmlnW1widGhlbWVcIl0gfHwge307XG4gICAgICBjb25maWdbXCJ0aGVtZVwiXS5pc0RhcmsgPSBpc0RhcmtNb2RlO1xuICAgIH1cbiAgICB0aGlzLmxvY2FsU3RvcmFnZVNlcnZpY2Uuc2V0TG9jYWxTdG9yYWdlKGNvbmZpZyk7XG4gICAgdGhpcy5pc0RhcmtNb2RlU3ViamVjdC5uZXh0KGlzRGFya01vZGUpO1xuICB9XG5cbiAgaXNEYXJrTW9kZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5pc0RhcmtNb2RlU3ViamVjdC52YWx1ZTtcbiAgfVxufVxuIl19
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwZWFyYW5jZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvb250aW1pemUtd2ViLW5neC9zcmMvbGliL3NlcnZpY2VzL2FwcGVhcmFuY2Uuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFBRSxlQUFlLEVBQWMsTUFBTSxNQUFNLENBQUM7QUFHbkQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7O0FBTTlELE1BQU0sT0FBTyxpQkFBaUI7SUFRNUIsWUFBc0IsUUFBa0I7UUFBbEIsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQVAvQixtQkFBYyxHQUFHLFFBQVEsQ0FBQztRQUUzQixzQkFBaUIsR0FBRyxJQUFJLGVBQWUsQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUNoRSxnQkFBVyxHQUF3QixJQUFJLENBQUMsaUJBQWlCLENBQUMsWUFBWSxFQUFFLENBQUM7UUFLdkUsSUFBSSxDQUFDLG1CQUFtQixHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLG1CQUFtQixDQUFDLENBQUM7UUFDbEUsSUFBSSxDQUFDLFNBQVMsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDbEMsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLGFBQWEsRUFBRSxDQUFDO1FBRXhELElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFMUQsSUFBSSxNQUFNLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sS0FBSyxTQUFTLEVBQUU7WUFDNUUsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sQ0FBQztZQUN0QyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQ3JDO0lBRUgsQ0FBQztJQUVELFdBQVcsQ0FBQyxVQUFtQjtRQUM3QixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDeEQsSUFBSSxNQUFNLEVBQUU7WUFDVixNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUN4QyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxHQUFHLFVBQVUsQ0FBQztTQUNyQztRQUNELElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxlQUFlLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDakQsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRUQsVUFBVTtRQUNSLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLEtBQUssQ0FBQztJQUN0QyxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsTUFBZ0I7UUFDL0IsSUFBSSxNQUFNLEVBQUU7WUFDVixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztTQUN4RDthQUFNO1lBQ0wsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7U0FDM0Q7SUFDSCxDQUFDOzs4R0ExQ1UsaUJBQWlCO2tIQUFqQixpQkFBaUIsY0FGaEIsTUFBTTsyRkFFUCxpQkFBaUI7a0JBSDdCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlLCBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IEFwcENvbmZpZyB9IGZyb20gJy4uL2NvbmZpZy9hcHAtY29uZmlnJztcbmltcG9ydCB7IExvY2FsU3RvcmFnZVNlcnZpY2UgfSBmcm9tICcuL2xvY2FsLXN0b3JhZ2Uuc2VydmljZSc7XG5cblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIEFwcGVhcmFuY2VTZXJ2aWNlIHtcbiAgcmVhZG9ubHkgZGFya1RoZW1lQ2xhc3MgPSAnby1kYXJrJztcblxuICBwcml2YXRlIGlzRGFya01vZGVTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG4gIGlzRGFya01vZGUkOiBPYnNlcnZhYmxlPGJvb2xlYW4+ID0gdGhpcy5pc0RhcmtNb2RlU3ViamVjdC5hc09ic2VydmFibGUoKTtcbiAgcHJvdGVjdGVkIF9hcHBDb25maWc6IEFwcENvbmZpZztcbiAgcHJvdGVjdGVkIF9kb2N1bWVudDogRG9jdW1lbnQ7XG4gIHByb3RlY3RlZCBsb2NhbFN0b3JhZ2VTZXJ2aWNlOiBMb2NhbFN0b3JhZ2VTZXJ2aWNlO1xuICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgaW5qZWN0b3I6IEluamVjdG9yKSB7XG4gICAgdGhpcy5sb2NhbFN0b3JhZ2VTZXJ2aWNlID0gdGhpcy5pbmplY3Rvci5nZXQoTG9jYWxTdG9yYWdlU2VydmljZSk7XG4gICAgdGhpcy5fZG9jdW1lbnQgPSBpbmplY3QoRE9DVU1FTlQpO1xuICAgIGNvbnN0IGNvbmZpZyA9IHRoaXMubG9jYWxTdG9yYWdlU2VydmljZS5nZXRTdG9yZWREYXRhKCk7XG5cbiAgICB0aGlzLmlzRGFya01vZGUkLnN1YnNjcmliZSh4ID0+IHRoaXMudXBkYXRlVGhlbWVDbGFzcyh4KSk7XG5cbiAgICBpZiAoY29uZmlnICYmIGNvbmZpZ1tcInRoZW1lXCJdICYmIHR5cGVvZiBjb25maWdbXCJ0aGVtZVwiXS5pc0RhcmsgPT09ICdib29sZWFuJykge1xuICAgICAgY29uc3QgaXNEYXJrID0gY29uZmlnW1widGhlbWVcIl0uaXNEYXJrO1xuICAgICAgdGhpcy5pc0RhcmtNb2RlU3ViamVjdC5uZXh0KGlzRGFyayk7XG4gICAgfVxuXG4gIH1cblxuICBzZXREYXJrTW9kZShpc0RhcmtNb2RlOiBib29sZWFuKSB7XG4gICAgY29uc3QgY29uZmlnID0gdGhpcy5sb2NhbFN0b3JhZ2VTZXJ2aWNlLmdldFN0b3JlZERhdGEoKTtcbiAgICBpZiAoY29uZmlnKSB7XG4gICAgICBjb25maWdbXCJ0aGVtZVwiXSA9IGNvbmZpZ1tcInRoZW1lXCJdIHx8IHt9O1xuICAgICAgY29uZmlnW1widGhlbWVcIl0uaXNEYXJrID0gaXNEYXJrTW9kZTtcbiAgICB9XG4gICAgdGhpcy5sb2NhbFN0b3JhZ2VTZXJ2aWNlLnNldExvY2FsU3RvcmFnZShjb25maWcpO1xuICAgIHRoaXMuaXNEYXJrTW9kZVN1YmplY3QubmV4dChpc0RhcmtNb2RlKTtcbiAgfVxuXG4gIGlzRGFya01vZGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuaXNEYXJrTW9kZVN1YmplY3QudmFsdWU7XG4gIH1cblxuICB1cGRhdGVUaGVtZUNsYXNzKGlzRGFyaz86IGJvb2xlYW4pIHtcbiAgICBpZiAoaXNEYXJrKSB7XG4gICAgICB0aGlzLl9kb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5hZGQodGhpcy5kYXJrVGhlbWVDbGFzcyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX2RvY3VtZW50LmJvZHkuY2xhc3NMaXN0LnJlbW92ZSh0aGlzLmRhcmtUaGVtZUNsYXNzKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { InjectionToken, EventEmitter, Directive, Host, Self, Optional, Input, HostListener, Output, Injectable, Injector, Component, forwardRef, ContentChildren, ChangeDetectorRef, Pipe, NgModule, ViewChild, ElementRef, ViewEncapsulation, ViewContainerRef, Inject, NgZone, HostBinding, ViewChildren, ChangeDetectionStrategy, CUSTOM_ELEMENTS_SCHEMA, TemplateRef, SkipSelf, isDevMode, ContentChild, Renderer2, APP_INITIALIZER } from '@angular/core';
2
+ import { InjectionToken, EventEmitter, Directive, Host, Self, Optional, Input, HostListener, Output, Injectable, Injector, Component, forwardRef, ContentChildren, ChangeDetectorRef, Pipe, NgModule, ViewChild, ElementRef, ViewEncapsulation, ViewContainerRef, Inject, NgZone, HostBinding, ViewChildren, ChangeDetectionStrategy, CUSTOM_ELEMENTS_SCHEMA, TemplateRef, SkipSelf, isDevMode, ContentChild, Renderer2, inject, APP_INITIALIZER } from '@angular/core';
3
3
  import moment from 'moment';
4
4
  import { isObservable, from, of, Subscription, Subject, Observable, timer, combineLatest, BehaviorSubject, ReplaySubject, merge, fromEvent } from 'rxjs';
5
5
  export { Observable, Subject } from 'rxjs';
@@ -12,7 +12,7 @@ import { TranslateService, TranslateDefaultParser, TranslateModule, TranslateLoa
12
12
  import * as i10 from 'ngx-material-timepicker';
13
13
  import { NgxMaterialTimepickerModule } from 'ngx-material-timepicker';
14
14
  import * as i1$2 from '@angular/common';
15
- import { Location, CommonModule, LOCATION_INITIALIZED } from '@angular/common';
15
+ import { Location, CommonModule, DOCUMENT, LOCATION_INITIALIZED } from '@angular/common';
16
16
  import * as i1 from '@angular/router';
17
17
  import { Router, NavigationStart, NavigationEnd, RouterModule, ActivatedRoute } from '@angular/router';
18
18
  import * as i2$2 from '@angular/flex-layout';
@@ -32860,7 +32860,7 @@ class OTableComponent extends AbstractOServiceComponent {
32860
32860
  }
32861
32861
  getColumnsNotIncluded() {
32862
32862
  let colsNotIncluded = [];
32863
- colsNotIncluded = this.oTableOptions.columns.filter(c => void 0 !== c.renderer && c.type === 'image').map(c => c.attr);
32863
+ colsNotIncluded = this.oTableOptions.columns.filter(c => void 0 !== c.renderer && (c.type === 'image' || c.type === 'action')).map(c => c.attr);
32864
32864
  colsNotIncluded.push(Codes.NAME_COLUMN_SELECT);
32865
32865
  colsNotIncluded.push(Codes.NAME_COLUMN_EXPANDABLE);
32866
32866
  return colsNotIncluded;
@@ -36563,10 +36563,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
36563
36563
  class AppearanceService {
36564
36564
  constructor(injector) {
36565
36565
  this.injector = injector;
36566
+ this.darkThemeClass = 'o-dark';
36566
36567
  this.isDarkModeSubject = new BehaviorSubject(false);
36567
36568
  this.isDarkMode$ = this.isDarkModeSubject.asObservable();
36568
36569
  this.localStorageService = this.injector.get(LocalStorageService);
36570
+ this._document = inject(DOCUMENT);
36569
36571
  const config = this.localStorageService.getStoredData();
36572
+ this.isDarkMode$.subscribe(x => this.updateThemeClass(x));
36570
36573
  if (config && config["theme"] && typeof config["theme"].isDark === 'boolean') {
36571
36574
  const isDark = config["theme"].isDark;
36572
36575
  this.isDarkModeSubject.next(isDark);
@@ -36584,6 +36587,14 @@ class AppearanceService {
36584
36587
  isDarkMode() {
36585
36588
  return this.isDarkModeSubject.value;
36586
36589
  }
36590
+ updateThemeClass(isDark) {
36591
+ if (isDark) {
36592
+ this._document.body.classList.add(this.darkThemeClass);
36593
+ }
36594
+ else {
36595
+ this._document.body.classList.remove(this.darkThemeClass);
36596
+ }
36597
+ }
36587
36598
  }
36588
36599
  AppearanceService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: AppearanceService, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
36589
36600
  AppearanceService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: AppearanceService, providedIn: 'root' });