TD-887: Init

This commit is contained in:
Rinat Arsaev 2024-05-07 15:39:16 +05:00
commit 965c344bab
45 changed files with 20986 additions and 0 deletions

7
.eslintrc.js Normal file
View File

@ -0,0 +1,7 @@
module.exports = {
extends: '@vality/eslint-config',
overrides: [
...require('@vality/eslint-config/configs').angular('ngt').overrides,
...require('@vality/eslint-config/configs').importOrder(['@ngt/**']).overrides,
],
};

26
.github/workflows/main.yaml vendored Normal file
View File

@ -0,0 +1,26 @@
name: 'Main'
on:
push:
branches: ['master', 'main']
jobs:
publish:
name: Publish
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: valitydev/action-frontend/setup@v1.0
- run: npm ci
- name: Build
run: npm run build
- name: Publish Angular Thrift
uses: valitydev/action-frontend/publish@v1.0
with:
npm-token: ${{ secrets.NPM_TOKEN }}
directory: ./projects/ng-thrift/dist
- name: Publish on GitHub Pages
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./dist/ng-thrift-doc/browser

30
.github/workflows/pr.yaml vendored Normal file
View File

@ -0,0 +1,30 @@
name: 'PR'
on:
pull_request:
branches: ['*']
pull_request_target:
types: ['labeled']
jobs:
check:
name: Check
runs-on: ubuntu-latest
env:
SHORT_SHA: $(echo "${{ github.event.pull_request.head.sha }}" | cut -c1-7)
steps:
- uses: actions/checkout@v4
- uses: valitydev/action-frontend/setup@v1.0
- run: npm ci
- name: Check
run: npm run check
- name: Test
run: npm run test:ci
- name: Build
run: npm run build
- name: Publish Angular Thrift
if: contains(github.event.pull_request.labels.*.name, 'publish') || contains(github.event.pull_request.labels.*.name, 'publish ng-thrift')
working-directory: ./projects/ng-thrift/dist
run: npm version prerelease --preid pr-${{ github.event.number }}-${{ env.SHORT_SHA }} --no-git-tag-version && npm publish --tag pr
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}

45
.gitignore vendored Normal file
View File

@ -0,0 +1,45 @@
# See http://help.github.com/ignore-files/ for more about ignoring files.
# Compiled output
dist
/tmp
/out-tsc
/bazel-out
# Node
node_modules
npm-debug.log
yarn-error.log
# IDEs and editors
.idea/
.project
.classpath
.c9/
*.launch
.settings/
*.sublime-workspace
# Visual Studio Code
.vscode/*
!.vscode/settings.json
!.vscode/tasks.json
!.vscode/launch.json
!.vscode/extensions.json
.history/*
# Miscellaneous
/.angular/cache
.sass-cache/
/connect.lock
/coverage
/libpeerconnection.log
testem.log
/typings
# System files
.DS_Store
Thumbs.db
# NgDoc files
/ng-doc

20
.prettierignore Normal file
View File

@ -0,0 +1,20 @@
LICENSE
.*
package.json
package-lock.json
node_modules
dist
coverage
Dockerfile
*.conf
*.env
*.ico
*.ttf
ng-doc

1
.prettierrc.js Normal file
View File

@ -0,0 +1 @@
module.exports = require('@vality/prettier-config');

9
.run/start.run.xml Normal file
View File

@ -0,0 +1,9 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="start" type="js.build_tools.npm">
<package-json value="$PROJECT_DIR$/package.json" />
<command value="start" />
<node-interpreter value="project" />
<envs />
<method v="2" />
</configuration>
</component>

4
.vscode/extensions.json vendored Normal file
View File

@ -0,0 +1,4 @@
{
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=827846
"recommendations": ["angular.ng-template"]
}

20
.vscode/launch.json vendored Normal file
View File

@ -0,0 +1,20 @@
{
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "ng serve",
"type": "pwa-chrome",
"request": "launch",
"preLaunchTask": "npm: start",
"url": "http://localhost:4200/"
},
{
"name": "ng test",
"type": "chrome",
"request": "launch",
"preLaunchTask": "npm: test",
"url": "http://localhost:9876/debug.html"
}
]
}

42
.vscode/tasks.json vendored Normal file
View File

@ -0,0 +1,42 @@
{
// For more information, visit: https://go.microsoft.com/fwlink/?LinkId=733558
"version": "2.0.0",
"tasks": [
{
"type": "npm",
"script": "start",
"isBackground": true,
"problemMatcher": {
"owner": "typescript",
"pattern": "$tsc",
"background": {
"activeOnStart": true,
"beginsPattern": {
"regexp": "(.*?)"
},
"endsPattern": {
"regexp": "bundle generation complete"
}
}
}
},
{
"type": "npm",
"script": "test",
"isBackground": true,
"problemMatcher": {
"owner": "typescript",
"pattern": "$tsc",
"background": {
"activeOnStart": true,
"beginsPattern": {
"regexp": "(.*?)"
},
"endsPattern": {
"regexp": "bundle generation complete"
}
}
}
}
]
}

45
README.md Normal file
View File

@ -0,0 +1,45 @@
# Angular Thrift Libraries
- Angular Thrift UI
## 💻 Development with locally built/runnable library
1. [Link](https://docs.npmjs.com/cli/commands/npm-link) the library
```sh
npm link ~/github/valitydev/ng-thrift/projects/ng-thrift/dist
```
[Alternative](https://www.npmjs.com/package/link):
```sh
npx link ~/github/valitydev/ng-thrift/projects/ng-thrift/dist
```
1. Start Library
```sh
# cd ../ng-thrift
npm start
```
1. Start your app
```sh
# cd ../your-app
npm start
```
### 📦 Preparing a Pull Request in your application along with the library
To do this, you can use the version published in the NPM (with the `pr` tag) from your PR to the library:
```sh
npm i --save-exact @vality/ng-thrift@pr
```
_The latest version with the tag can also be [viewed in NPM](https://www.npmjs.com/package/@vality/ng-thrift?activeTab=versions)_
## Publish
Apply the PR label `publish` to all packages, or specify it for individual packages like `publish ng-thrift` for the `ng-thrift` package.

145
angular.json Normal file
View File

@ -0,0 +1,145 @@
{
"$schema": "./node_modules/@angular/cli/lib/config/schema.json",
"version": 1,
"newProjectRoot": "projects",
"projects": {
"ng-thrift": {
"projectType": "library",
"root": "projects/ng-thrift",
"sourceRoot": "projects/ng-thrift/src",
"prefix": "v",
"architect": {
"build": {
"builder": "@angular-devkit/build-angular:ng-packagr",
"options": {
"project": "projects/ng-thrift/ng-package.json"
},
"configurations": {
"production": {
"tsConfig": "projects/ng-thrift/tsconfig.lib.prod.json"
},
"development": {
"tsConfig": "projects/ng-thrift/tsconfig.lib.json"
}
},
"defaultConfiguration": "production"
},
"test": {
"builder": "@angular-devkit/build-angular:karma",
"options": {
"tsConfig": "projects/ng-thrift/tsconfig.spec.json",
"polyfills": ["zone.js", "zone.js/testing"],
"karmaConfig": "projects/ng-thrift/karma.conf.js"
}
}
}
},
"ng-thrift-doc": {
"projectType": "application",
"schematics": {
"@schematics/angular:component": {
"style": "scss"
}
},
"root": "projects/ng-thrift-doc",
"sourceRoot": "projects/ng-thrift-doc/src",
"prefix": "app",
"architect": {
"build": {
"builder": "@ng-doc/builder:application",
"options": {
"outputPath": "dist/ng-thrift-doc",
"index": "projects/ng-thrift-doc/src/index.html",
"browser": "projects/ng-thrift-doc/src/main.ts",
"polyfills": ["zone.js"],
"tsConfig": "projects/ng-thrift-doc/tsconfig.app.json",
"inlineStyleLanguage": "scss",
"assets": [
{
"glob": "**/*",
"input": "node_modules/@ng-doc/app/assets",
"output": "assets/ng-doc/app"
},
{
"glob": "**/*",
"input": "node_modules/@ng-doc/ui-kit/assets",
"output": "assets/ng-doc/ui-kit"
},
{
"glob": "**/*",
"input": "ng-doc/ng-thrift-doc/assets",
"output": "assets/ng-doc"
},
"projects/ng-thrift-doc/src/favicon.ico",
"projects/ng-thrift-doc/src/assets"
],
"styles": [
"node_modules/@ng-doc/app/styles/global.css",
"projects/ng-thrift-doc/src/styles.scss"
],
"scripts": [],
"allowedCommonJsDependencies": ["@ng-doc/core"]
},
"configurations": {
"production": {
"budgets": [
{
"type": "initial",
"maximumWarning": "1.5mb",
"maximumError": "2mb"
},
{
"type": "anyComponentStyle",
"maximumWarning": "2kb",
"maximumError": "4kb"
}
],
"outputHashing": "all"
},
"development": {
"optimization": false,
"extractLicenses": false,
"sourceMap": true
}
},
"defaultConfiguration": "production"
},
"serve": {
"builder": "@ng-doc/builder:dev-server",
"configurations": {
"production": {
"buildTarget": "ng-thrift-doc:build:production"
},
"development": {
"buildTarget": "ng-thrift-doc:build:development"
}
},
"defaultConfiguration": "development"
},
"extract-i18n": {
"builder": "@angular-devkit/build-angular:extract-i18n",
"options": {
"buildTarget": "ng-thrift-doc:build"
}
},
"test": {
"builder": "@angular-devkit/build-angular:karma",
"options": {
"polyfills": ["zone.js", "zone.js/testing"],
"tsConfig": "projects/ng-thrift-doc/tsconfig.spec.json",
"inlineStyleLanguage": "scss",
"assets": [
"projects/ng-thrift-doc/src/favicon.ico",
"projects/ng-thrift-doc/src/assets"
],
"styles": ["projects/ng-thrift-doc/src/styles.scss"],
"scripts": []
}
}
}
}
},
"cli": {
"analytics": false
}
}

5
cspell.json Normal file
View File

@ -0,0 +1,5 @@
{
"$schema": "https://raw.githubusercontent.com/streetsidesoftware/cspell/main/cspell.schema.json",
"version": "0.2",
"import": "./node_modules/@vality/cspell-config/cspell.config.js"
}

20146
package-lock.json generated Normal file

File diff suppressed because it is too large Load Diff

65
package.json Normal file
View File

@ -0,0 +1,65 @@
{
"name": "ng-thrift",
"version": "0.0.0",
"scripts": {
"ng": "ng",
"start": "ng build ng-thrift --watch --configuration development",
"doc": "ng serve --port 4500",
"build": "ng build ng-thrift && ng build ng-thrift-doc --base-href='./'",
"test": "ng test ng-thrift",
"test:ci": "npm run test -- --browsers=ChromeHeadless --watch=false",
"format": "prettier \"**\" --list-different",
"format:fix": "prettier \"**\" --write --log-level warn",
"lint": "eslint \"**\" --max-warnings=0",
"lint:fix": "eslint \"**\" --fix",
"spell": "cspell --no-progress **",
"spell:fix": "cspell --no-progress --show-suggestions --show-context **",
"check": "npm run format && npm run lint && npm run spell",
"fix": "npm run format:fix && npm run lint:fix && npm run spell:fix"
},
"private": true,
"workspaces": [
"./projects/*"
],
"repository": {
"type": "git",
"url": "https://github.com/valitydev/ng-thrift"
},
"dependencies": {
"@angular/animations": "^17.2.1",
"@angular/common": "^17.2.1",
"@angular/compiler": "^17.2.1",
"@angular/core": "^17.2.1",
"@angular/forms": "^17.2.1",
"@angular/platform-browser": "^17.2.1",
"@angular/platform-browser-dynamic": "^17.2.1",
"@angular/router": "^17.2.1",
"@ng-doc/app": "17.5.5",
"@ng-doc/builder": "17.5.5",
"@ng-doc/core": "17.5.5",
"@ng-doc/ui-kit": "17.5.5",
"rxjs": "~7.8.0",
"tslib": "^2.3.0",
"zone.js": "~0.14.2"
},
"devDependencies": {
"@angular-devkit/build-angular": "^17.2.0",
"@angular/cli": "~17.2.0",
"@angular/compiler-cli": "^17.2.1",
"@types/jasmine": "~4.3.0",
"@vality/cspell-config": "^8.0.1-a6a2910.0",
"@vality/eslint-config": "^8.2.1-a6a2910.0",
"@vality/prettier-config": "^3.1.1-a6a2910.0",
"cspell": "^8.3.2",
"eslint": "^8.56.0",
"jasmine-core": "~4.5.0",
"karma": "~6.4.0",
"karma-chrome-launcher": "~3.1.0",
"karma-coverage": "~2.2.0",
"karma-jasmine": "~5.1.0",
"karma-jasmine-html-reporter": "~2.0.0",
"ng-packagr": "^17.2.0",
"prettier": "^3.1.1",
"typescript": "~5.2.2"
}
}

View File

@ -0,0 +1,25 @@
<ng-doc-root>
<ng-doc-navbar [leftContent]="leftContent" [rightContent]="rightContent">
<ng-template #leftContent>
<h3 [routerLink]="'/'" style="margin: 0; cursor: pointer">
Vality Angular Thrift Libraries
</h3>
</ng-template>
<ng-template #rightContent>
<div @preventInitialChild class="ng-doc-header-controls">
<ng-doc-theme-toggle></ng-doc-theme-toggle>
<a
[href]="githubUrl"
ng-doc-button-icon
ngDocTooltip="Repository on GitHub"
size="large"
target="_blank"
>
<ng-doc-icon [size]="24" customIcon="github"></ng-doc-icon>
</a>
</div>
</ng-template>
</ng-doc-navbar>
<ng-doc-sidebar></ng-doc-sidebar>
<router-outlet></router-outlet>
</ng-doc-root>

View File

@ -0,0 +1,19 @@
.ng-doc-header-controls {
display: flex;
a[ng-doc-button-icon],
button[ng-doc-button-icon],
ng-doc-theme-toggle {
margin-left: calc(var(--ng-doc-base-gutter) * 2);
}
}
@media screen and (max-width: 600px) {
.ng-doc-header-controls {
a[ng-doc-button-icon],
button[ng-doc-button-icon],
ng-doc-theme-toggle {
margin-left: var(--ng-doc-base-gutter);
}
}
}

View File

@ -0,0 +1,36 @@
import { Component } from '@angular/core';
import { RouterOutlet, RouterLink } from '@angular/router';
import {
NgDocRootComponent,
NgDocNavbarComponent,
NgDocSidebarComponent,
NgDocThemeToggleComponent,
} from '@ng-doc/app';
import {
NgDocButtonIconComponent,
NgDocTooltipDirective,
NgDocIconComponent,
} from '@ng-doc/ui-kit';
import * as packageJson from '../../../../package.json';
@Component({
selector: 'app-root',
standalone: true,
imports: [
RouterOutlet,
NgDocRootComponent,
NgDocNavbarComponent,
NgDocSidebarComponent,
RouterLink,
NgDocThemeToggleComponent,
NgDocButtonIconComponent,
NgDocTooltipDirective,
NgDocIconComponent,
],
templateUrl: './app.component.html',
styleUrl: './app.component.scss',
})
export class AppComponent {
githubUrl = packageJson.repository.url;
}

View File

@ -0,0 +1,36 @@
import { provideHttpClient, withInterceptorsFromDi, withFetch } from '@angular/common/http';
import { ApplicationConfig } from '@angular/core';
import { provideAnimations } from '@angular/platform-browser/animations';
import { provideRouter, withInMemoryScrolling } from '@angular/router';
import {
provideNgDocApp,
provideSearchEngine,
NgDocDefaultSearchEngine,
providePageSkeleton,
NG_DOC_DEFAULT_PAGE_SKELETON,
provideMainPageProcessor,
NG_DOC_DEFAULT_PAGE_PROCESSORS,
} from '@ng-doc/app';
import { NG_DOC_ROUTING, provideNgDocContext } from '@ng-doc/generated';
import { ROUTES } from './app.routes';
export const APP_CONFIG: ApplicationConfig = {
providers: [
provideAnimations(),
provideHttpClient(withInterceptorsFromDi()),
provideRouter(
[...ROUTES, ...NG_DOC_ROUTING],
withInMemoryScrolling({
scrollPositionRestoration: 'enabled',
anchorScrolling: 'enabled',
}),
),
provideHttpClient(withInterceptorsFromDi(), withFetch()),
provideNgDocContext(),
provideNgDocApp(),
provideSearchEngine(NgDocDefaultSearchEngine),
providePageSkeleton(NG_DOC_DEFAULT_PAGE_SKELETON),
provideMainPageProcessor(NG_DOC_DEFAULT_PAGE_PROCESSORS),
],
};

View File

@ -0,0 +1,9 @@
import { Routes } from '@angular/router';
export const ROUTES: Routes = [
{
path: '',
redirectTo: '/getting-started',
pathMatch: 'full',
},
];

View File

@ -0,0 +1,8 @@
import { NgDocCategory } from '@ng-doc/core';
const GettingStartedCategory: NgDocCategory = {
title: `Getting Started`,
order: 0,
};
export default GettingStartedCategory;

View File

@ -0,0 +1 @@
# {{ NgDocPage.title }}

View File

@ -0,0 +1,12 @@
import { NgDocPage } from '@ng-doc/core';
import GettingStartedCategory from '../ng-doc.category';
const WhatIsValityAngularLibrariesPage: NgDocPage = {
title: `What is Vality Angular Thrift Libraries?`,
mdFile: './index.md',
category: GettingStartedCategory,
order: 0,
};
export default WhatIsValityAngularLibrariesPage;

View File

@ -0,0 +1,16 @@
<svg
class="feather feather-github"
fill="none"
height="24"
stroke="currentColor"
stroke-linecap="round"
stroke-linejoin="round"
stroke-width="2"
viewBox="0 0 24 24"
width="24"
xmlns="http://www.w3.org/2000/svg"
>
<path
d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"
></path>
</svg>

After

Width:  |  Height:  |  Size: 588 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

View File

@ -0,0 +1,14 @@
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>Vality Angular Thrift Libraries</title>
<base href="/" />
<meta content="width=device-width, initial-scale=1" name="viewport" />
<link href="favicon.ico" rel="icon" type="image/x-icon" />
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet" />
</head>
<body>
<app-root></app-root>
</body>
</html>

View File

@ -0,0 +1,6 @@
import { bootstrapApplication } from '@angular/platform-browser';
import { AppComponent } from './app/app.component';
import { APP_CONFIG } from './app/app.config';
bootstrapApplication(AppComponent, APP_CONFIG).catch((err) => console.error(err));

View File

@ -0,0 +1,13 @@
import { NgDocConfiguration } from '@ng-doc/builder';
import * as packageJson from '../../../package.json';
const Config: NgDocConfiguration = {
repoConfig: {
url: packageJson.repository.url,
mainBranch: 'master',
releaseBranch: 'master',
},
};
export default Config;

View File

View File

@ -0,0 +1,12 @@
/* To learn more about this file see: https://angular.io/config/tsconfig. */
{
"extends": "../../tsconfig.json",
"compilerOptions": {
"allowSyntheticDefaultImports": true,
"outDir": "../../out-tsc/app",
"types": [],
"resolveJsonModule": true
},
"files": ["src/main.ts"],
"include": ["src/**/*.d.ts"]
}

View File

@ -0,0 +1,9 @@
/* To learn more about this file see: https://angular.io/config/tsconfig. */
{
"extends": "../../tsconfig.json",
"compilerOptions": {
"outDir": "../../out-tsc/spec",
"types": ["jasmine"]
},
"include": ["src/**/*.spec.ts", "src/**/*.d.ts"]
}

View File

@ -0,0 +1 @@
# Angular Thrift UI

View File

@ -0,0 +1,8 @@
@forward './src/lib/styles/utils/create-palette' show create-palette;
@forward './src/lib/styles/utils/get-color' show get-color;
@forward './src/lib/styles/create-light-theme' show create-light-theme;
@forward './src/lib/styles/typography-hierarchy' show typography-hierarchy;
@forward './src/lib/styles/all-component-themes' show all-component-themes;
@forward './src/lib/styles/app' show app;
@forward './src/lib/styles/core' show core;

View File

@ -0,0 +1,36 @@
// Karma configuration file, see link for more information
// https://karma-runner.github.io/1.0/config/configuration-file.html
module.exports = function (config) {
config.set({
basePath: '',
frameworks: ['jasmine', '@angular-devkit/build-angular'],
plugins: [
require('karma-jasmine'),
require('karma-chrome-launcher'),
require('karma-jasmine-html-reporter'),
require('karma-coverage'),
require('@angular-devkit/build-angular/plugins/karma'),
],
client: {
jasmine: {
// you can add configuration options for Jasmine here
// the possible options are listed at https://jasmine.github.io/api/edge/Configuration.html
// for example, you can disable the random execution with `random: false`
// or set a specific seed with `seed: 4321`
},
clearContext: false, // leave Jasmine Spec Runner output visible in browser
},
jasmineHtmlReporter: {
suppressAll: true, // removes the duplicated traces
},
coverageReporter: {
dir: require('path').join(__dirname, '../../coverage/ng-thrift'),
subdir: '.',
reporters: [{ type: 'html' }, { type: 'text-summary' }],
},
reporters: ['progress', 'kjhtml'],
browsers: ['Chrome'],
restartOnFileChange: true,
});
};

View File

@ -0,0 +1,16 @@
{
"$schema": "../../node_modules/ng-packagr/ng-package.schema.json",
"dest": "dist",
"lib": {
"entryFile": "src/public-api.ts"
},
"assets": ["**/*.scss"],
"allowedNonPeerDependencies": [
"@s-libs/*",
"dinero.js",
"@ng-matero/*",
"@angular/material-date-fns-adapter",
"fuse.js",
"short-uuid"
]
}

View File

@ -0,0 +1,18 @@
{
"name": "@vality/ng-thrift",
"version": "17.0.0",
"sideEffects": false,
"dependencies": {
"tslib": "^2.3.0"
},
"peerDependencies": {
"@angular/cdk": "^17.2.0",
"@angular/common": "^17.2.0",
"@angular/core": "^17.2.0",
"@angular/material": "^17.2.0",
"rxjs": "^7.0.0"
},
"publishConfig": {
"access": "public"
}
}

View File

@ -0,0 +1 @@
export * from './utils';

View File

@ -0,0 +1 @@
export * from './is-thrift-lib';

View File

@ -0,0 +1,4 @@
// eslint-disable-next-line @typescript-eslint/naming-convention
export function __isThriftLib() {
return true;
}

View File

@ -0,0 +1,5 @@
/*
* Public API Surface of ng-thrift
*/
export * from './lib';

View File

@ -0,0 +1,12 @@
/* To learn more about this file see: https://angular.io/config/tsconfig. */
{
"extends": "../../tsconfig.json",
"compilerOptions": {
"outDir": "../../out-tsc/lib",
"declaration": true,
"declarationMap": true,
"inlineSources": true,
"types": []
},
"exclude": ["**/*.spec.ts"]
}

View File

@ -0,0 +1,10 @@
/* To learn more about this file see: https://angular.io/config/tsconfig. */
{
"extends": "./tsconfig.lib.json",
"compilerOptions": {
"declarationMap": false
},
"angularCompilerOptions": {
"compilationMode": "partial"
}
}

View File

@ -0,0 +1,9 @@
/* To learn more about this file see: https://angular.io/config/tsconfig. */
{
"extends": "../../tsconfig.json",
"compilerOptions": {
"outDir": "../../out-tsc/spec",
"types": ["jasmine"]
},
"include": ["**/*.spec.ts", "**/*.d.ts"]
}

4
renovate.json Normal file
View File

@ -0,0 +1,4 @@
{
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
"extends": ["local>valitydev/.github:renovate-config"]
}

35
tsconfig.json Normal file
View File

@ -0,0 +1,35 @@
/* To learn more about this file see: https://angular.io/config/tsconfig. */
{
"compileOnSave": false,
"compilerOptions": {
"baseUrl": "./",
"outDir": "./dist/out-tsc",
"forceConsistentCasingInFileNames": true,
"strict": true,
"noImplicitOverride": true,
"noPropertyAccessFromIndexSignature": true,
"noImplicitReturns": true,
"noFallthroughCasesInSwitch": true,
"sourceMap": true,
"paths": {
"@ng-doc/generated": ["./ng-doc/ng-thrift-doc/index.ts"],
"@ng-doc/generated/*": ["./ng-doc/ng-thrift-doc/*"],
"@vality/ng-thrift": ["./projects/ng-thrift/dist"]
},
"declaration": false,
"downlevelIteration": true,
"experimentalDecorators": true,
"moduleResolution": "node",
"importHelpers": true,
"target": "ES2022",
"module": "ES2022",
"useDefineForClassFields": false,
"lib": ["ES2022", "dom"]
},
"angularCompilerOptions": {
"enableI18nLegacyMessageIdFormat": false,
"strictInjectionParameters": true,
"strictInputAccessModifiers": true,
"strictTemplates": true
}
}