1 | {
|
2 | "$schema": "http://json-schema.org/draft-07/schema",
|
3 | "$id": "https://github.com/ng-packagr/ng-packagr/blob/master/src/ng-package.schema.json",
|
4 | "title": "NgPackageConfig",
|
5 | "description": "JSON Schema for `ng-package.json` description file",
|
6 | "type": "object",
|
7 | "properties": {
|
8 | "$schema": {
|
9 | "type": "string"
|
10 | },
|
11 | "deleteDestPath": {
|
12 | "description": "Delete output path before build.",
|
13 | "type": "boolean",
|
14 | "default": true
|
15 | },
|
16 | "dest": {
|
17 | "description": "Destination folder where distributable binaries of the Angular library are written (default: `dist`).",
|
18 | "type": "string",
|
19 | "default": "dist"
|
20 | },
|
21 | "keepLifecycleScripts": {
|
22 | "description": "Enable this to keep the 'scripts' section in package.json. Read the NPM Blog on 'Package install scripts vulnerability' – http://blog.npmjs.org/post/141702881055/package-install-scripts-vulnerability",
|
23 | "type": "boolean",
|
24 | "default": false
|
25 | },
|
26 | "allowedNonPeerDependencies": {
|
27 | "description": "A list of dependencies that are allowed in the 'dependencies' and 'devDependencies' section of package.json. Values in the list are regular expressions matched against npm package names.",
|
28 | "type": "array",
|
29 | "items": {
|
30 | "type": "string"
|
31 | },
|
32 | "default": []
|
33 | },
|
34 | "assets": {
|
35 | "type": "array",
|
36 | "description": "A list of files which are simply copied into the package.",
|
37 | "items": {
|
38 | "$ref": "#/definitions/assetPattern"
|
39 | },
|
40 | "default": []
|
41 | },
|
42 | "inlineStyleLanguage": {
|
43 | "description": "The stylesheet language to use for the library's inline component styles.",
|
44 | "type": "string",
|
45 | "default": "css",
|
46 | "enum": ["css", "less", "sass", "scss"]
|
47 | },
|
48 | "lib": {
|
49 | "description": "Description of the library's entry point.",
|
50 | "type": "object",
|
51 | "additionalProperties": false,
|
52 | "default": {},
|
53 | "properties": {
|
54 | "entryFile": {
|
55 | "description": "Entry file to the public API (default: `src/public_api.ts`).",
|
56 | "type": "string",
|
57 | "default": "src/public_api.ts"
|
58 | },
|
59 | "flatModuleFile": {
|
60 | "description": "Filename of the auto-generated flat module file (if empty, defaults to the package name as given in `package.json`).",
|
61 | "type": "string"
|
62 | },
|
63 | "cssUrl": {
|
64 | "description": "Embed assets in css file using data URIs - see https://css-tricks.com/data-uris",
|
65 | "type": "string",
|
66 | "enum": ["none", "inline"],
|
67 | "default": "inline"
|
68 | },
|
69 | "styleIncludePaths": {
|
70 | "description": "Any additional paths that should be used to resolve style imports",
|
71 | "type": "array",
|
72 | "items": {
|
73 | "type": "string"
|
74 | }
|
75 | }
|
76 | }
|
77 | }
|
78 | },
|
79 | "required": [],
|
80 | "additionalProperties": false,
|
81 | "definitions": {
|
82 | "assetPattern": {
|
83 | "oneOf": [
|
84 | {
|
85 | "type": "object",
|
86 | "properties": {
|
87 | "glob": {
|
88 | "type": "string",
|
89 | "description": "The pattern to match."
|
90 | },
|
91 | "input": {
|
92 | "type": "string",
|
93 | "description": "The input directory path in which to apply 'glob'. Defaults to the project root."
|
94 | },
|
95 | "ignore": {
|
96 | "description": "An array of globs to ignore.",
|
97 | "type": "array",
|
98 | "items": {
|
99 | "type": "string"
|
100 | }
|
101 | },
|
102 | "output": {
|
103 | "type": "string",
|
104 | "description": "Absolute path within the output."
|
105 | },
|
106 | "followSymlinks": {
|
107 | "type": "boolean",
|
108 | "default": false,
|
109 | "description": "Allow glob patterns to follow symlink directories. This allows subdirectories of the symlink to be searched."
|
110 | }
|
111 | },
|
112 | "additionalProperties": false,
|
113 | "required": ["glob", "input", "output"]
|
114 | },
|
115 | {
|
116 | "type": "string"
|
117 | }
|
118 | ]
|
119 | }
|
120 | }
|
121 | }
|