/*********************************************************************
 * Copyright (c) 2023 Boeing
 *
 * This program and the accompanying materials are made
 * available under the terms of the Eclipse Public License 2.0
 * which is available at https://www.eclipse.org/legal/epl-2.0/
 *
 * SPDX-License-Identifier: EPL-2.0
 *
 * Contributors:
 *     Boeing - initial API and implementation
 **********************************************************************/
/* To learn more about this file see: https://angular.io/config/tsconfig. */
{
	"compileOnSave": false,
	"compilerOptions": {
		"baseUrl": "./",
		"outDir": "./out-tsc/base",
		"forceConsistentCasingInFileNames": true,
		"strict": true,
		"noImplicitReturns": true,
		"noFallthroughCasesInSwitch": true,
		"sourceMap": true,
		"declaration": false,
		"esModuleInterop": true,
		"downlevelIteration": true,
		"experimentalDecorators": true,
		"moduleResolution": "node",
		"importHelpers": true,
		"skipLibCheck": true,
		"target": "ES2022",
		"module": "ES2022",
		"lib": ["ES2022", "dom"],
		"useDefineForClassFields": false,
		"paths": {
			"@osee/about": ["src/app/about"],
			"@osee/auth": ["src/app/auth"],
			"@osee/diff/views": ["src/app/diff-views"],
			"@osee/environments": ["src/environments"],
			"@osee/interceptors": ["src/app/interceptors"],
			"@osee/layout": ["src/app/layout"],
			"@osee/layout/notification": ["src/app/layout/lib/notification"],
			"@osee/layout/container": ["src/app/layout/lib/containers"],
			"@osee/layout/routing": ["src/app/layout/lib/routing"],
			"@osee/ci-dashboard/navigation": [
				"src/app/ci-dashboard/lib/navigation"
			],
			"@osee/messaging/connection-view": [
				"src/app/ple/messaging/connection-view/lib"
			],
			"@osee/messaging/cross-reference": [
				"src/app/ple/messaging/cross-reference/lib"
			],
			"@osee/messaging/help": [
				"src/app/ple/messaging/messaging-help/lib"
			],
			"@osee/messaging/import": ["src/app/ple/messaging/import/lib"],
			"@osee/messaging/message-tables": [
				"src/app/ple/messaging/message-tables/lib"
			],
			"@osee/messaging/message-tables/menus": [
				"src/app/ple/messaging/message-tables/lib/menus"
			],
			"@osee/messaging/reports/diff": [
				"src/app/ple/messaging/reports/lib/diff"
			],
			"@osee/messaging/reports/trace": [
				"src/app/ple/messaging/reports/lib/trace"
			],
			"@osee/messaging/structure-tables": [
				"src/app/ple/messaging/structure-tables/lib"
			],
			"@osee/messaging/structure-tables/services": [
				"src/app/ple/messaging/structure-tables/lib/services"
			],
			"@osee/messaging/structure-tables/menus": [
				"src/app/ple/messaging/structure-tables/lib/menus"
			],
			"@osee/messaging/type-detail": [
				"src/app/ple/messaging/type-detail/lib"
			],
			"@osee/messaging/type-element-search": [
				"src/app/ple/messaging/type-element-search/lib"
			],
			"@osee/messaging/types-interface": [
				"src/app/ple/messaging/types-interface/lib"
			],
			"@osee/messaging/types-interface/menus": [
				"src/app/ple/messaging/types-interface/lib/menus"
			],
			"@osee/page-not-found": ["src/app/page-not-found"],
			"@osee/auto-login": ["src/app/auto-login"],
			"@osee/plconfig": ["src/app/ple/plconfig/lib"],
			"@osee/toolbar": ["src/app/layout/lib/toolbar"],
			"@osee/toolbar/component": [
				"src/app/layout/lib/toolbar/osee-toolbar/osee-toolbar.component"
			],
			"@osee/shared/utils": ["src/app/shared/utils"],
			"@osee/shared/resolvers": ["src/app/shared/resolvers"],
			"@osee/shared/components": ["src/app/shared/components"],
			"@osee/shared/matchers": ["src/app/shared/matchers"],
			"@osee/shared/services": ["src/app/shared/services"],
			"@osee/shared/services/help": ["src/app/shared/services/help"],
			"@osee/shared/services/layout": ["src/app/shared/services/layout"],
			"@osee/shared/services/network": [
				"src/app/shared/services/network"
			],
			"@osee/shared/validators": ["src/app/shared/validators"],
			"@osee/shared/transactions": ["src/app/shared/transactions"],
			"@osee/shared/types": ["src/app/shared/types"],
			"@osee/shared/types/applicability": [
				"src/app/shared/types/applicability"
			],
			"@osee/shared/types/auth": ["src/app/shared/types/auth"],
			"@osee/shared/types/change-report": [
				"src/app/shared/types/change-report"
			],
			"@osee/shared/types/configuration-management": [
				"src/app/shared/types/configuration-management"
			],
			"@osee/shared/types/constants": ["src/app/shared/types/constants"],
			"@osee/messaging/shared": ["src/app/ple/messaging/shared"],
			"@osee/messaging/shared/attr": [
				"src/app/ple/messaging/shared/attr"
			],
			"@osee/messaging/shared/types": [
				"src/app/ple/messaging/shared/types"
			],
			"@osee/messaging/shared/headers": [
				"src/app/ple/messaging/shared/headers"
			],
			"@osee/messaging/shared/headers/*": [
				"src/app/ple/messaging/shared/headers/*"
			],
			"@osee/messaging/shared/dropdowns": [
				"src/app/ple/messaging/shared/dropdowns"
			],
			"@osee/messaging/shared/constants": [
				"src/app/ple/messaging/shared/constants"
			],
			"@osee/messaging/shared/tokens": [
				"src/app/ple/messaging/shared/tokens"
			],
			"@osee/messaging/shared/enumerations": [
				"src/app/ple/messaging/shared/enumerations"
			],
			"@osee/messaging/shared/directives": [
				"src/app/ple/messaging/shared/directives"
			],
			"@osee/messaging/shared/functions": [
				"src/app/ple/messaging/shared/functions"
			],
			"@osee/messaging/shared/main-content": [
				"src/app/ple/messaging/shared/main-content"
			],
			"@osee/messaging/shared/forms": [
				"src/app/ple/messaging/shared/forms"
			],
			"@osee/messaging/shared/datasources": [
				"src/app/ple/messaging/shared/datasources"
			],
			"@osee/messaging/shared/dialogs": [
				"src/app/ple/messaging/shared/dialogs"
			],
			"@osee/messaging/shared/dialogs/preferences": [
				"src/app/ple/messaging/shared/dialogs/preferences"
			],
			"@osee/messaging/shared/dialogs/warnings": [
				"src/app/ple/messaging/shared/dialogs/warnings"
			],
			"@osee/messaging/shared/dialogs/free-text": [
				"src/app/ple/messaging/shared/dialogs/free-text"
			],
			"@osee/messaging/shared/services": [
				"src/app/ple/messaging/shared/services"
			],
			"@osee/messaging/shared/services/warnings": [
				"src/app/ple/messaging/shared/services/warnings"
			],
			"@osee/messaging/shared/preferences": [
				"src/app/ple/messaging/shared/preferences"
			],
			"@osee/messaging/shared/query": [
				"src/app/ple/messaging/shared/query"
			],
			"@osee/messaging/shared/table-headers": [
				"src/app/ple/messaging/shared/table-headers"
			]
		}
	},
	"angularCompilerOptions": {
		"enableI18nLegacyMessageIdFormat": false,
		"strictInjectionParameters": true,
		"strictInputAccessModifiers": true,
		"strictTemplates": true
	},
	"include": ["**/*.d.ts", "**/*.ts"],
	"exclude": [
		"node_modules/cypress",
		"./cypress.config.ts",
		"cypress",
		"cypress/**/*"
	]
}
