UNPKG

4.08 kBJSONView Raw
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}