feat: add an empty schematics project

pull/5137/head
Arman Ozak 5 years ago
parent 50407d19a1
commit bdb82177c2

@ -0,0 +1,18 @@
# Outputs
src/**/*.js
src/**/*.js.map
src/**/*.d.ts
# IDEs
.idea/
jsconfig.json
.vscode/
# Misc
node_modules/
npm-debug.log*
yarn-error.log*
# Mac OSX Finder files.
**/.DS_Store
.DS_Store

@ -0,0 +1,3 @@
# Ignores TypeScript files, but keeps definitions.
*.ts
!*.d.ts

@ -0,0 +1,3 @@
# ABP Suite Schematics
TODO: Add usage and development information

@ -0,0 +1,7 @@
const jestConfig = require('../../jest.config');
module.exports = {
...jestConfig,
name: 'schematics',
testMatch: ['<rootDir>/packages/schematics/**/+(*.)+(spec).+(ts)'],
};

@ -0,0 +1,23 @@
{
"name": "@abp/ng.schematics",
"version": "3.0.5",
"description": "Schematics that works with ABP Suite",
"keywords": [
"schematics"
],
"author": "",
"license": "MIT",
"schematics": "./src/collection.json",
"dependencies": {
"@angular-devkit/core": "~10.0.3",
"@angular-devkit/schematics": "~10.0.3",
"typescript": "~3.9.2"
},
"devDependencies": {
"@types/node": "^12.11.1",
"@types/jest": "^26.0.0",
"jest": "^26.0.0",
"jest-preset-angular": "^8.2.0",
"@schematics/angular": "~10.0.3"
}
}

@ -0,0 +1,9 @@
{
"schematics": {
"proxy": {
"description": "ABP Proxy Generator Schematics",
"factory": "./commands/proxy",
"schema": "./commands/proxy/schema.json"
}
}
}

@ -0,0 +1,10 @@
import { chain, SchematicContext, Tree } from '@angular-devkit/schematics';
import { Schema as GenerateProxySchema } from './schema';
export default function(_params: GenerateProxySchema) {
return chain([
async (_tree: Tree, _context: SchematicContext) => {
return chain([]);
},
]);
}

@ -0,0 +1,32 @@
{
"$schema": "http://json-schema.org/schema",
"id": "SchematicsAbpEntityModule",
"title": "ABP Entity Module Schema",
"type": "object",
"properties": {
"module": {
"alias": "m",
"description": "The name of the module to generate code for",
"type": "string",
"$default": {
"$source": "argv",
"index": 1
},
"x-prompt": "Please enter name of the module you wish to generate proxies for. (default: app)"
},
"apiUrl": {
"alias": "a",
"description": "The URL to get API configuration from",
"type": "string",
"x-prompt": "Plese enter URL to get API config from. Leave blank to use environment variables."
},
"out": {
"alias": "o",
"description": "The path to place the generated code at",
"type": "string",
"format": "path",
"x-prompt": "Plese enter a custom output path. Leave blank if you do not need one."
}
},
"required": []
}

@ -0,0 +1,16 @@
export interface Schema {
/**
* The URL to get API configuration from
*/
apiUrl?: string;
/**
* The name of the module to generate code for
*/
module?: string;
/**
* The path to place the generated code at
*/
out?: string;
}

@ -0,0 +1,24 @@
{
"compilerOptions": {
"baseUrl": "tsconfig",
"lib": ["es2018", "dom"],
"declaration": true,
"module": "commonjs",
"moduleResolution": "node",
"noEmitOnError": true,
"noFallthroughCasesInSwitch": true,
"noImplicitAny": true,
"noImplicitThis": true,
"noUnusedParameters": true,
"noUnusedLocals": true,
"rootDir": "src/",
"skipDefaultLibCheck": true,
"skipLibCheck": true,
"sourceMap": true,
"strictNullChecks": true,
"target": "es2017",
"types": ["jest", "node"]
},
"include": ["src/**/*"],
"exclude": ["node_modules", "dist", "src/*/files/**/*", "**/*.spec.ts"]
}

@ -0,0 +1,8 @@
{
"extends": "../../tslint.json",
"rules": {
"variable-name": {
"options": ["allow-leading-underscore", "ban-keywords", "check-format", "allow-pascal-case"]
}
}
}
Loading…
Cancel
Save