diff --git a/libs/angular-tofu/src/lib/tofu-app-layout/tofu-app-layout.component.scss b/projects/angular-tofu/src/lib/tofu-app-layout/tofu-app-layout.component.scss
similarity index 100%
rename from libs/angular-tofu/src/lib/tofu-app-layout/tofu-app-layout.component.scss
rename to projects/angular-tofu/src/lib/tofu-app-layout/tofu-app-layout.component.scss
diff --git a/libs/angular-tofu/src/lib/tofu-app-layout/tofu-app-layout.component.spec.ts b/projects/angular-tofu/src/lib/tofu-app-layout/tofu-app-layout.component.spec.ts
similarity index 82%
rename from libs/angular-tofu/src/lib/tofu-app-layout/tofu-app-layout.component.spec.ts
rename to projects/angular-tofu/src/lib/tofu-app-layout/tofu-app-layout.component.spec.ts
index fd6da92..96ad7f3 100644
--- a/libs/angular-tofu/src/lib/tofu-app-layout/tofu-app-layout.component.spec.ts
+++ b/projects/angular-tofu/src/lib/tofu-app-layout/tofu-app-layout.component.spec.ts
@@ -1,5 +1,6 @@
import { ComponentFixture, TestBed } from '@angular/core/testing';
import { TofuAppLayoutComponent } from './tofu-app-layout.component';
+import {provideZonelessChangeDetection} from '@angular/core';
describe('TofuAppLayoutComponent', () => {
let component: TofuAppLayoutComponent;
@@ -7,6 +8,9 @@ describe('TofuAppLayoutComponent', () => {
beforeEach(async () => {
await TestBed.configureTestingModule({
+ providers: [
+ provideZonelessChangeDetection()
+ ],
imports: [TofuAppLayoutComponent],
}).compileComponents();
diff --git a/libs/angular-tofu/src/lib/tofu-app-layout/tofu-app-layout.component.ts b/projects/angular-tofu/src/lib/tofu-app-layout/tofu-app-layout.component.ts
similarity index 61%
rename from libs/angular-tofu/src/lib/tofu-app-layout/tofu-app-layout.component.ts
rename to projects/angular-tofu/src/lib/tofu-app-layout/tofu-app-layout.component.ts
index 5b421b5..1fc471e 100644
--- a/libs/angular-tofu/src/lib/tofu-app-layout/tofu-app-layout.component.ts
+++ b/projects/angular-tofu/src/lib/tofu-app-layout/tofu-app-layout.component.ts
@@ -1,28 +1,24 @@
import {
Component,
- EventEmitter,
- Input,
+ Input, model,
OnDestroy,
OnInit,
- Output,
- signal,
TemplateRef,
} from '@angular/core';
-import { BreakpointObserver, Breakpoints } from '@angular/cdk/layout';
-import { MatSidenavModule } from '@angular/material/sidenav';
-import { MatIconModule } from '@angular/material/icon';
-import { MatListModule } from '@angular/material/list';
-import { MatToolbarModule } from '@angular/material/toolbar';
-import { MatIconButton } from '@angular/material/button';
+import {BreakpointObserver, Breakpoints} from '@angular/cdk/layout';
+import {MatSidenavModule} from '@angular/material/sidenav';
+import {MatIconModule} from '@angular/material/icon';
+import {MatListModule} from '@angular/material/list';
+import {MatToolbarModule} from '@angular/material/toolbar';
+import {MatIconButton} from '@angular/material/button';
import {
TofuNavigationEntry,
TofuNavigationTreeComponent,
} from '../tofu-navigation-tree';
-import { RouterOutlet } from '@angular/router';
-import { NgIf } from '@angular/common';
-import { TofuAppMessagingService } from '../tofu-app-messaging';
-import { Subscription } from 'rxjs';
-import { TofuAppLayoutConsts } from './tofu-app-layout-consts';
+import {RouterOutlet} from '@angular/router';
+import {TofuAppMessagingService} from '../tofu-app-messaging';
+import {Subscription} from 'rxjs';
+import {TofuAppLayoutConsts} from './tofu-app-layout-consts';
@Component({
selector: 'tofu-app-layout',
@@ -38,22 +34,10 @@ import { TofuAppLayoutConsts } from './tofu-app-layout-consts';
MatIconButton,
RouterOutlet,
TofuNavigationTreeComponent,
- NgIf,
],
})
export class TofuAppLayoutComponent implements OnInit, OnDestroy {
- get appTitle(): string {
- return this.appTitleValue();
- }
-
- @Input()
- set appTitle(value: string) {
- this.appTitleValue.set(value);
- this.appTitleChange.emit(value);
- }
-
- @Output()
- appTitleChange = new EventEmitter
();
+ appTitle = model('');
@Input()
navEntries: TofuNavigationEntry[] = [];
@@ -73,8 +57,6 @@ export class TofuAppLayoutComponent implements OnInit, OnDestroy {
navWidth = '300px';
- protected appTitleValue = signal('');
-
private breakpointObserverSubscription: Subscription | undefined;
private appTitleSubscription: Subscription | undefined;
@@ -86,9 +68,10 @@ export class TofuAppLayoutComponent implements OnInit, OnDestroy {
}
constructor(
- private breakpointObserver: BreakpointObserver,
- private appMessagingService: TofuAppMessagingService
- ) {}
+ private readonly breakpointObserver: BreakpointObserver,
+ private readonly appMessagingService: TofuAppMessagingService
+ ) {
+ }
ngOnDestroy(): void {
this.breakpointObserverSubscription?.unsubscribe();
@@ -106,7 +89,7 @@ export class TofuAppLayoutComponent implements OnInit, OnDestroy {
this.appMessagingService.registerWithCallback(
TofuAppLayoutConsts.MSG_SET_APP_TITLE,
(title) => {
- this.appTitle = title;
+ this.appTitle.set(title);
}
);
}
diff --git a/libs/angular-tofu/src/lib/tofu-app-layout/tofu-app-layout.service.spec.ts b/projects/angular-tofu/src/lib/tofu-app-layout/tofu-app-layout.service.spec.ts
similarity index 66%
rename from libs/angular-tofu/src/lib/tofu-app-layout/tofu-app-layout.service.spec.ts
rename to projects/angular-tofu/src/lib/tofu-app-layout/tofu-app-layout.service.spec.ts
index e0008d7..8811675 100644
--- a/libs/angular-tofu/src/lib/tofu-app-layout/tofu-app-layout.service.spec.ts
+++ b/projects/angular-tofu/src/lib/tofu-app-layout/tofu-app-layout.service.spec.ts
@@ -1,12 +1,17 @@
import { TestBed } from '@angular/core/testing';
import { TofuAppLayoutService } from './tofu-app-layout.service';
+import {provideZonelessChangeDetection} from '@angular/core';
describe('TofuAppLayoutService', () => {
let service: TofuAppLayoutService;
beforeEach(() => {
- TestBed.configureTestingModule({});
+ TestBed.configureTestingModule({
+ providers: [
+ provideZonelessChangeDetection()
+ ],
+ });
service = TestBed.inject(TofuAppLayoutService);
});
diff --git a/projects/angular-tofu/src/lib/tofu-app-layout/tofu-app-layout.service.ts b/projects/angular-tofu/src/lib/tofu-app-layout/tofu-app-layout.service.ts
new file mode 100644
index 0000000..4404657
--- /dev/null
+++ b/projects/angular-tofu/src/lib/tofu-app-layout/tofu-app-layout.service.ts
@@ -0,0 +1,15 @@
+import {Injectable} from '@angular/core';
+import {TofuAppMessagingService} from '../tofu-app-messaging';
+import {TofuAppLayoutConsts} from './tofu-app-layout-consts';
+
+@Injectable({
+ providedIn: 'root',
+})
+export class TofuAppLayoutService {
+ constructor(private readonly appMessagingService: TofuAppMessagingService) {
+ }
+
+ public setAppTitle(title: string): void {
+ this.appMessagingService.send(TofuAppLayoutConsts.MSG_SET_APP_TITLE, title);
+ }
+}
diff --git a/libs/angular-tofu/src/lib/tofu-app-messaging/index.ts b/projects/angular-tofu/src/lib/tofu-app-messaging/index.ts
similarity index 100%
rename from libs/angular-tofu/src/lib/tofu-app-messaging/index.ts
rename to projects/angular-tofu/src/lib/tofu-app-messaging/index.ts
diff --git a/libs/angular-tofu/src/lib/tofu-app-messaging/tofu-app-messaging.service.spec.ts b/projects/angular-tofu/src/lib/tofu-app-messaging/tofu-app-messaging.service.spec.ts
similarity index 81%
rename from libs/angular-tofu/src/lib/tofu-app-messaging/tofu-app-messaging.service.spec.ts
rename to projects/angular-tofu/src/lib/tofu-app-messaging/tofu-app-messaging.service.spec.ts
index 36919bc..9c4996e 100644
--- a/libs/angular-tofu/src/lib/tofu-app-messaging/tofu-app-messaging.service.spec.ts
+++ b/projects/angular-tofu/src/lib/tofu-app-messaging/tofu-app-messaging.service.spec.ts
@@ -1,11 +1,16 @@
import { TestBed } from '@angular/core/testing';
import { TofuAppMessagingService } from './tofu-app-messaging.service';
+import {provideZonelessChangeDetection} from '@angular/core';
describe('TofuAppMessagingService', () => {
let service: TofuAppMessagingService;
beforeEach(() => {
- TestBed.configureTestingModule({});
+ TestBed.configureTestingModule({
+ providers: [
+ provideZonelessChangeDetection()
+ ],
+ });
service = TestBed.inject(TofuAppMessagingService);
});
@@ -34,7 +39,9 @@ describe('TofuAppMessagingService', () => {
});
it('should not execute callback after unsubscribe', () => {
- const callback = jest.fn();
+ const callback = jasmine.createSpy('callback');
+
+ //const callback = jest.fn();
const subscription = service.registerWithCallback('test', callback);
diff --git a/libs/angular-tofu/src/lib/tofu-app-messaging/tofu-app-messaging.service.ts b/projects/angular-tofu/src/lib/tofu-app-messaging/tofu-app-messaging.service.ts
similarity index 89%
rename from libs/angular-tofu/src/lib/tofu-app-messaging/tofu-app-messaging.service.ts
rename to projects/angular-tofu/src/lib/tofu-app-messaging/tofu-app-messaging.service.ts
index 94735a7..3e9641a 100644
--- a/libs/angular-tofu/src/lib/tofu-app-messaging/tofu-app-messaging.service.ts
+++ b/projects/angular-tofu/src/lib/tofu-app-messaging/tofu-app-messaging.service.ts
@@ -1,7 +1,7 @@
// noinspection JSValidateJSDoc
-import { Injectable } from '@angular/core';
-import { filter, map, Observable, Subject } from 'rxjs';
+import {Injectable} from '@angular/core';
+import {filter, map, Observable, Subject} from 'rxjs';
export interface TofuAppMessage {
type: unknown;
@@ -20,9 +20,9 @@ export interface TofuAppMessage {
providedIn: 'root',
})
export class TofuAppMessagingService {
- private messageSubject = new Subject>();
+ private readonly messageSubject = new Subject>();
- private messages$ = this.messageSubject.asObservable();
+ private readonly messages$ = this.messageSubject.asObservable();
/**
* Sends a message to the appropriate receivers.
@@ -42,7 +42,7 @@ export class TofuAppMessagingService {
* @return {void} This method does not return a value.
*/
public send(messageType: string, payload: T): void {
- this.messageSubject.next({ type: messageType, payload: payload });
+ this.messageSubject.next({type: messageType, payload: payload});
}
/**
diff --git a/libs/angular-tofu/src/lib/tofu-navigation-tree/index.ts b/projects/angular-tofu/src/lib/tofu-navigation-tree/index.ts
similarity index 100%
rename from libs/angular-tofu/src/lib/tofu-navigation-tree/index.ts
rename to projects/angular-tofu/src/lib/tofu-navigation-tree/index.ts
diff --git a/projects/angular-tofu/src/lib/tofu-navigation-tree/tofu-large-nav-tree.component.html b/projects/angular-tofu/src/lib/tofu-navigation-tree/tofu-large-nav-tree.component.html
new file mode 100644
index 0000000..6af0159
--- /dev/null
+++ b/projects/angular-tofu/src/lib/tofu-navigation-tree/tofu-large-nav-tree.component.html
@@ -0,0 +1,49 @@
+
+ @for (entry of navEntries; track entry) {
+
+ @if (entry.entries) {
+
+
+
+ } @else {
+
+
+
+ }
+
+ }
+
+
+
+
+
+ @if (item.icon) {
+ {{ item.icon }}
+ }
+ {{ item.title }}
+
+
+
+
+
+
+
+ @if (folder.icon) {
+ {{ folder.icon }}
+ }
+ {{ folder.title }}
+
+
+
+ @for (childItem of folder.entries; track childItem) {
+
+ @if (childItem.icon) {
+ {{ childItem.icon }}
+ }
+ {{ childItem.title }}
+
+ }
+
+
+
diff --git a/libs/angular-tofu/src/lib/tofu-navigation-tree/tofu-large-nav-tree.component.scss b/projects/angular-tofu/src/lib/tofu-navigation-tree/tofu-large-nav-tree.component.scss
similarity index 100%
rename from libs/angular-tofu/src/lib/tofu-navigation-tree/tofu-large-nav-tree.component.scss
rename to projects/angular-tofu/src/lib/tofu-navigation-tree/tofu-large-nav-tree.component.scss
diff --git a/libs/angular-tofu/src/lib/tofu-navigation-tree/tofu-large-nav-tree.component.spec.ts b/projects/angular-tofu/src/lib/tofu-navigation-tree/tofu-large-nav-tree.component.spec.ts
similarity index 83%
rename from libs/angular-tofu/src/lib/tofu-navigation-tree/tofu-large-nav-tree.component.spec.ts
rename to projects/angular-tofu/src/lib/tofu-navigation-tree/tofu-large-nav-tree.component.spec.ts
index 1aaf71c..97af62e 100644
--- a/libs/angular-tofu/src/lib/tofu-navigation-tree/tofu-large-nav-tree.component.spec.ts
+++ b/projects/angular-tofu/src/lib/tofu-navigation-tree/tofu-large-nav-tree.component.spec.ts
@@ -1,5 +1,6 @@
import { ComponentFixture, TestBed } from '@angular/core/testing';
import { TofuLargeNavTreeComponent } from './tofu-large-nav-tree.component';
+import {provideZonelessChangeDetection} from '@angular/core';
describe('TofuLargeNavTreeComponent', () => {
let component: TofuLargeNavTreeComponent;
@@ -7,6 +8,9 @@ describe('TofuLargeNavTreeComponent', () => {
beforeEach(async () => {
await TestBed.configureTestingModule({
+ providers: [
+ provideZonelessChangeDetection()
+ ],
imports: [TofuLargeNavTreeComponent],
}).compileComponents();
diff --git a/libs/angular-tofu/src/lib/tofu-navigation-tree/tofu-large-nav-tree.component.ts b/projects/angular-tofu/src/lib/tofu-navigation-tree/tofu-large-nav-tree.component.ts
similarity index 100%
rename from libs/angular-tofu/src/lib/tofu-navigation-tree/tofu-large-nav-tree.component.ts
rename to projects/angular-tofu/src/lib/tofu-navigation-tree/tofu-large-nav-tree.component.ts
diff --git a/libs/angular-tofu/src/lib/tofu-navigation-tree/tofu-navigation-entry.ts b/projects/angular-tofu/src/lib/tofu-navigation-tree/tofu-navigation-entry.ts
similarity index 100%
rename from libs/angular-tofu/src/lib/tofu-navigation-tree/tofu-navigation-entry.ts
rename to projects/angular-tofu/src/lib/tofu-navigation-tree/tofu-navigation-entry.ts
diff --git a/projects/angular-tofu/src/lib/tofu-navigation-tree/tofu-navigation-tree.component.html b/projects/angular-tofu/src/lib/tofu-navigation-tree/tofu-navigation-tree.component.html
new file mode 100644
index 0000000..2728973
--- /dev/null
+++ b/projects/angular-tofu/src/lib/tofu-navigation-tree/tofu-navigation-tree.component.html
@@ -0,0 +1,8 @@
+@if (hasSmallNavTree) {
+
+} @else {
+
+}
+
+
+
diff --git a/libs/angular-tofu/src/lib/tofu-navigation-tree/tofu-navigation-tree.component.scss b/projects/angular-tofu/src/lib/tofu-navigation-tree/tofu-navigation-tree.component.scss
similarity index 100%
rename from libs/angular-tofu/src/lib/tofu-navigation-tree/tofu-navigation-tree.component.scss
rename to projects/angular-tofu/src/lib/tofu-navigation-tree/tofu-navigation-tree.component.scss
diff --git a/libs/angular-tofu/src/lib/tofu-navigation-tree/tofu-navigation-tree.component.spec.ts b/projects/angular-tofu/src/lib/tofu-navigation-tree/tofu-navigation-tree.component.spec.ts
similarity index 83%
rename from libs/angular-tofu/src/lib/tofu-navigation-tree/tofu-navigation-tree.component.spec.ts
rename to projects/angular-tofu/src/lib/tofu-navigation-tree/tofu-navigation-tree.component.spec.ts
index 393e24c..2b2631c 100644
--- a/libs/angular-tofu/src/lib/tofu-navigation-tree/tofu-navigation-tree.component.spec.ts
+++ b/projects/angular-tofu/src/lib/tofu-navigation-tree/tofu-navigation-tree.component.spec.ts
@@ -1,5 +1,6 @@
import {ComponentFixture, TestBed} from '@angular/core/testing';
import {TofuNavigationTreeComponent} from '../tofu-navigation-tree';
+import {provideZonelessChangeDetection} from '@angular/core';
describe('TofuNavigationTreeComponent', () => {
let component: TofuNavigationTreeComponent;
@@ -7,6 +8,9 @@ describe('TofuNavigationTreeComponent', () => {
beforeEach(async () => {
await TestBed.configureTestingModule({
+ providers: [
+ provideZonelessChangeDetection()
+ ],
imports: [TofuNavigationTreeComponent],
}).compileComponents();
diff --git a/libs/angular-tofu/src/lib/tofu-navigation-tree/tofu-navigation-tree.component.ts b/projects/angular-tofu/src/lib/tofu-navigation-tree/tofu-navigation-tree.component.ts
similarity index 100%
rename from libs/angular-tofu/src/lib/tofu-navigation-tree/tofu-navigation-tree.component.ts
rename to projects/angular-tofu/src/lib/tofu-navigation-tree/tofu-navigation-tree.component.ts
diff --git a/libs/angular-tofu/src/lib/tofu-navigation-tree/tofu-small-nav-tree.component.html b/projects/angular-tofu/src/lib/tofu-navigation-tree/tofu-small-nav-tree.component.html
similarity index 73%
rename from libs/angular-tofu/src/lib/tofu-navigation-tree/tofu-small-nav-tree.component.html
rename to projects/angular-tofu/src/lib/tofu-navigation-tree/tofu-small-nav-tree.component.html
index 7b3be7d..1b91735 100644
--- a/libs/angular-tofu/src/lib/tofu-navigation-tree/tofu-small-nav-tree.component.html
+++ b/projects/angular-tofu/src/lib/tofu-navigation-tree/tofu-small-nav-tree.component.html
@@ -1,12 +1,11 @@
-
-
+ @for (entry of navEntries; track entry) {
+ @if (entry.entries) {
-
-
+ } @else {
-
-
+ }
+ }
@@ -20,13 +19,15 @@
diff --git a/libs/angular-tofu/src/lib/tofu-navigation-tree/tofu-small-nav-tree.component.scss b/projects/angular-tofu/src/lib/tofu-navigation-tree/tofu-small-nav-tree.component.scss
similarity index 100%
rename from libs/angular-tofu/src/lib/tofu-navigation-tree/tofu-small-nav-tree.component.scss
rename to projects/angular-tofu/src/lib/tofu-navigation-tree/tofu-small-nav-tree.component.scss
diff --git a/libs/angular-tofu/src/lib/tofu-navigation-tree/tofu-small-nav-tree.component.spec.ts b/projects/angular-tofu/src/lib/tofu-navigation-tree/tofu-small-nav-tree.component.spec.ts
similarity index 83%
rename from libs/angular-tofu/src/lib/tofu-navigation-tree/tofu-small-nav-tree.component.spec.ts
rename to projects/angular-tofu/src/lib/tofu-navigation-tree/tofu-small-nav-tree.component.spec.ts
index 34c8295..308a42d 100644
--- a/libs/angular-tofu/src/lib/tofu-navigation-tree/tofu-small-nav-tree.component.spec.ts
+++ b/projects/angular-tofu/src/lib/tofu-navigation-tree/tofu-small-nav-tree.component.spec.ts
@@ -1,5 +1,6 @@
import { ComponentFixture, TestBed } from '@angular/core/testing';
import { TofuSmallNavTreeComponent } from './tofu-small-nav-tree.component';
+import {provideZonelessChangeDetection} from '@angular/core';
describe('TofuSmallNavTreeComponent', () => {
let component: TofuSmallNavTreeComponent;
@@ -7,6 +8,9 @@ describe('TofuSmallNavTreeComponent', () => {
beforeEach(async () => {
await TestBed.configureTestingModule({
+ providers: [
+ provideZonelessChangeDetection()
+ ],
imports: [TofuSmallNavTreeComponent],
}).compileComponents();
diff --git a/libs/angular-tofu/src/lib/tofu-navigation-tree/tofu-small-nav-tree.component.ts b/projects/angular-tofu/src/lib/tofu-navigation-tree/tofu-small-nav-tree.component.ts
similarity index 100%
rename from libs/angular-tofu/src/lib/tofu-navigation-tree/tofu-small-nav-tree.component.ts
rename to projects/angular-tofu/src/lib/tofu-navigation-tree/tofu-small-nav-tree.component.ts
diff --git a/libs/angular-tofu/src/index.ts b/projects/angular-tofu/src/public-api.ts
similarity index 73%
rename from libs/angular-tofu/src/index.ts
rename to projects/angular-tofu/src/public-api.ts
index 3d1e38b..c921341 100644
--- a/libs/angular-tofu/src/index.ts
+++ b/projects/angular-tofu/src/public-api.ts
@@ -1,3 +1,7 @@
+/*
+ * Public API Surface of angular-tofu
+ */
+
export * from './lib/tofu-app-layout';
export * from './lib/tofu-navigation-tree';
diff --git a/projects/angular-tofu/tsconfig.lib.json b/projects/angular-tofu/tsconfig.lib.json
new file mode 100644
index 0000000..edb0551
--- /dev/null
+++ b/projects/angular-tofu/tsconfig.lib.json
@@ -0,0 +1,18 @@
+/* To learn more about Typescript configuration file: https://www.typescriptlang.org/docs/handbook/tsconfig-json.html. */
+/* To learn more about Angular compiler options: https://angular.dev/reference/configs/angular-compiler-options. */
+{
+ "extends": "../../tsconfig.json",
+ "compilerOptions": {
+ "outDir": "../../out-tsc/lib",
+ "declaration": true,
+ "declarationMap": true,
+ "inlineSources": true,
+ "types": []
+ },
+ "include": [
+ "src/**/*.ts"
+ ],
+ "exclude": [
+ "**/*.spec.ts"
+ ]
+}
diff --git a/projects/angular-tofu/tsconfig.lib.prod.json b/projects/angular-tofu/tsconfig.lib.prod.json
new file mode 100644
index 0000000..9215caa
--- /dev/null
+++ b/projects/angular-tofu/tsconfig.lib.prod.json
@@ -0,0 +1,11 @@
+/* To learn more about Typescript configuration file: https://www.typescriptlang.org/docs/handbook/tsconfig-json.html. */
+/* To learn more about Angular compiler options: https://angular.dev/reference/configs/angular-compiler-options. */
+{
+ "extends": "./tsconfig.lib.json",
+ "compilerOptions": {
+ "declarationMap": false
+ },
+ "angularCompilerOptions": {
+ "compilationMode": "partial"
+ }
+}
diff --git a/projects/angular-tofu/tsconfig.spec.json b/projects/angular-tofu/tsconfig.spec.json
new file mode 100644
index 0000000..077fdc2
--- /dev/null
+++ b/projects/angular-tofu/tsconfig.spec.json
@@ -0,0 +1,15 @@
+/* To learn more about Typescript configuration file: https://www.typescriptlang.org/docs/handbook/tsconfig-json.html. */
+/* To learn more about Angular compiler options: https://angular.dev/reference/configs/angular-compiler-options. */
+{
+ "extends": "../../tsconfig.json",
+ "compilerOptions": {
+ "outDir": "../../out-tsc/spec",
+ "types": [
+ "jasmine"
+ ]
+ },
+ "include": [
+ "src/**/*.d.ts",
+ "src/**/*.spec.ts"
+ ]
+}
diff --git a/tsconfig.base.json b/tsconfig.base.json
deleted file mode 100644
index f335579..0000000
--- a/tsconfig.base.json
+++ /dev/null
@@ -1,22 +0,0 @@
-{
- "compileOnSave": false,
- "compilerOptions": {
- "rootDir": ".",
- "sourceMap": true,
- "declaration": false,
- "moduleResolution": "node",
- "emitDecoratorMetadata": true,
- "experimentalDecorators": true,
- "importHelpers": true,
- "target": "es2015",
- "module": "esnext",
- "lib": ["es2020", "dom"],
- "skipLibCheck": true,
- "skipDefaultLibCheck": true,
- "baseUrl": ".",
- "paths": {
- "@cc-team/angular-tofu": ["libs/angular-tofu/src/index.ts"]
- }
- },
- "exclude": ["node_modules", "tmp"]
-}
diff --git a/tsconfig.json b/tsconfig.json
new file mode 100644
index 0000000..00ffd13
--- /dev/null
+++ b/tsconfig.json
@@ -0,0 +1,45 @@
+/* To learn more about Typescript configuration file: https://www.typescriptlang.org/docs/handbook/tsconfig-json.html. */
+/* To learn more about Angular compiler options: https://angular.dev/reference/configs/angular-compiler-options. */
+{
+ "compileOnSave": false,
+ "compilerOptions": {
+ "paths": {
+ "angular-tofu": [
+ "./dist/angular-tofu"
+ ]
+ },
+ "strict": true,
+ "noImplicitOverride": true,
+ "noPropertyAccessFromIndexSignature": true,
+ "noImplicitReturns": true,
+ "noFallthroughCasesInSwitch": true,
+ "skipLibCheck": true,
+ "isolatedModules": true,
+ "experimentalDecorators": true,
+ "importHelpers": true,
+ "target": "ES2022",
+ "module": "preserve"
+ },
+ "angularCompilerOptions": {
+ "enableI18nLegacyMessageIdFormat": false,
+ "strictInjectionParameters": true,
+ "strictInputAccessModifiers": true,
+ "typeCheckHostBindings": true,
+ "strictTemplates": true
+ },
+ "files": [],
+ "references": [
+ {
+ "path": "./projects/angular-tofu/tsconfig.lib.json"
+ },
+ {
+ "path": "./projects/angular-tofu/tsconfig.spec.json"
+ },
+ {
+ "path": "./projects/angular-tofu-showcase/tsconfig.app.json"
+ },
+ {
+ "path": "./projects/angular-tofu-showcase/tsconfig.spec.json"
+ }
+ ]
+}