@cyclonedx/cyclonedx-library 1.0.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (169) hide show
  1. package/LICENSE +201 -0
  2. package/NOTICE +5 -0
  3. package/README.md +152 -0
  4. package/dist.node/_index.node.js +53 -0
  5. package/dist.node/_index.node.js.map +1 -0
  6. package/dist.node/enums/attachmentEncoding.js +26 -0
  7. package/dist.node/enums/attachmentEncoding.js.map +1 -0
  8. package/dist.node/enums/componentScope.js +28 -0
  9. package/dist.node/enums/componentScope.js.map +1 -0
  10. package/dist.node/enums/componentType.js +33 -0
  11. package/dist.node/enums/componentType.js.map +1 -0
  12. package/dist.node/enums/externalReferenceType.js +41 -0
  13. package/dist.node/enums/externalReferenceType.js.map +1 -0
  14. package/dist.node/enums/hashAlogorithm.js +37 -0
  15. package/dist.node/enums/hashAlogorithm.js.map +1 -0
  16. package/dist.node/enums/index.js +40 -0
  17. package/dist.node/enums/index.js.map +1 -0
  18. package/dist.node/factories/index.js +36 -0
  19. package/dist.node/factories/index.js.map +1 -0
  20. package/dist.node/factories/licenseFactory.js +56 -0
  21. package/dist.node/factories/licenseFactory.js.map +1 -0
  22. package/dist.node/helpers/types.js +26 -0
  23. package/dist.node/helpers/types.js.map +1 -0
  24. package/dist.node/models/attachment.js +30 -0
  25. package/dist.node/models/attachment.js.map +1 -0
  26. package/dist.node/models/bom.js +67 -0
  27. package/dist.node/models/bom.js.map +1 -0
  28. package/dist.node/models/bomRef.js +37 -0
  29. package/dist.node/models/bomRef.js.map +1 -0
  30. package/dist.node/models/component.js +96 -0
  31. package/dist.node/models/component.js.map +1 -0
  32. package/dist.node/models/externalReference.js +40 -0
  33. package/dist.node/models/externalReference.js.map +1 -0
  34. package/dist.node/models/hash.js +29 -0
  35. package/dist.node/models/hash.js.map +1 -0
  36. package/dist.node/models/index.js +47 -0
  37. package/dist.node/models/index.js.map +1 -0
  38. package/dist.node/models/license.js +103 -0
  39. package/dist.node/models/license.js.map +1 -0
  40. package/dist.node/models/metadata.js +35 -0
  41. package/dist.node/models/metadata.js.map +1 -0
  42. package/dist.node/models/organizationalContact.js +41 -0
  43. package/dist.node/models/organizationalContact.js.map +1 -0
  44. package/dist.node/models/organizationalEntity.js +31 -0
  45. package/dist.node/models/organizationalEntity.js.map +1 -0
  46. package/dist.node/models/swid.js +58 -0
  47. package/dist.node/models/swid.js.map +1 -0
  48. package/dist.node/models/tool.js +45 -0
  49. package/dist.node/models/tool.js.map +1 -0
  50. package/dist.node/resources.node.js +55 -0
  51. package/dist.node/resources.node.js.map +1 -0
  52. package/dist.node/serialize/_index.node.js +37 -0
  53. package/dist.node/serialize/_index.node.js.map +1 -0
  54. package/dist.node/serialize/baseSerializer.js +56 -0
  55. package/dist.node/serialize/baseSerializer.js.map +1 -0
  56. package/dist.node/serialize/bomRefDiscriminator.js +66 -0
  57. package/dist.node/serialize/bomRefDiscriminator.js.map +1 -0
  58. package/dist.node/serialize/index.js +55 -0
  59. package/dist.node/serialize/index.js.map +1 -0
  60. package/dist.node/serialize/json/index.js +47 -0
  61. package/dist.node/serialize/json/index.js.map +1 -0
  62. package/dist.node/serialize/json/normalize.js +431 -0
  63. package/dist.node/serialize/json/normalize.js.map +1 -0
  64. package/dist.node/serialize/json/types.js +35 -0
  65. package/dist.node/serialize/json/types.js.map +1 -0
  66. package/dist.node/serialize/jsonSerializer.js +55 -0
  67. package/dist.node/serialize/jsonSerializer.js.map +1 -0
  68. package/dist.node/serialize/types.js +21 -0
  69. package/dist.node/serialize/types.js.map +1 -0
  70. package/dist.node/serialize/xml/index.js +47 -0
  71. package/dist.node/serialize/xml/index.js.map +1 -0
  72. package/dist.node/serialize/xml/normalize.js +560 -0
  73. package/dist.node/serialize/xml/normalize.js.map +1 -0
  74. package/dist.node/serialize/xml/types.js +31 -0
  75. package/dist.node/serialize/xml/types.js.map +1 -0
  76. package/dist.node/serialize/xmlBaseSerializer.js +52 -0
  77. package/dist.node/serialize/xmlBaseSerializer.js.map +1 -0
  78. package/dist.node/serialize/xmlSerializer.node.js +30 -0
  79. package/dist.node/serialize/xmlSerializer.node.js.map +1 -0
  80. package/dist.node/spdx.js +35 -0
  81. package/dist.node/spdx.js.map +1 -0
  82. package/dist.node/spec.js +229 -0
  83. package/dist.node/spec.js.map +1 -0
  84. package/dist.node/types/cpe.js +28 -0
  85. package/dist.node/types/cpe.js.map +1 -0
  86. package/dist.node/types/index.js +39 -0
  87. package/dist.node/types/index.js.map +1 -0
  88. package/dist.node/types/integer.js +36 -0
  89. package/dist.node/types/integer.js.map +1 -0
  90. package/dist.node/types/mimeType.js +28 -0
  91. package/dist.node/types/mimeType.js.map +1 -0
  92. package/dist.node/types/urn.js +28 -0
  93. package/dist.node/types/urn.js.map +1 -0
  94. package/dist.web/lib.dev.js +3487 -0
  95. package/dist.web/lib.dev.js.map +1 -0
  96. package/dist.web/lib.js +2 -0
  97. package/dist.web/lib.js.LICENSE.txt +18 -0
  98. package/libs/universal-node-xml/index.d.ts +33 -0
  99. package/libs/universal-node-xml/index.js +42 -0
  100. package/libs/universal-node-xml/stringifiers/helpers.js +17 -0
  101. package/libs/universal-node-xml/stringifiers/xmlbuilder2.js +51 -0
  102. package/package.json +86 -0
  103. package/res/README.md +27 -0
  104. package/res/bom-1.0.SNAPSHOT.xsd +247 -0
  105. package/res/bom-1.1.SNAPSHOT.xsd +731 -0
  106. package/res/bom-1.2-strict.SNAPSHOT.schema.json +1026 -0
  107. package/res/bom-1.2.SNAPSHOT.schema.json +997 -0
  108. package/res/bom-1.2.SNAPSHOT.xsd +1418 -0
  109. package/res/bom-1.3-strict.SNAPSHOT.schema.json +1085 -0
  110. package/res/bom-1.3.SNAPSHOT.schema.json +1054 -0
  111. package/res/bom-1.3.SNAPSHOT.xsd +1631 -0
  112. package/res/bom-1.4.SNAPSHOT.schema.json +1697 -0
  113. package/res/bom-1.4.SNAPSHOT.xsd +2407 -0
  114. package/res/jsf-0.82.SNAPSHOT.schema.json +244 -0
  115. package/res/spdx.SNAPSHOT.schema.json +533 -0
  116. package/res/spdx.SNAPSHOT.xsd +2639 -0
  117. package/src/_index.node.ts +31 -0
  118. package/src/_index.web.ts +27 -0
  119. package/src/enums/attachmentEncoding.ts +22 -0
  120. package/src/enums/componentScope.ts +24 -0
  121. package/src/enums/componentType.ts +29 -0
  122. package/src/enums/externalReferenceType.ts +37 -0
  123. package/src/enums/hashAlogorithm.ts +33 -0
  124. package/src/enums/index.ts +24 -0
  125. package/src/factories/index.ts +20 -0
  126. package/src/factories/licenseFactory.ts +62 -0
  127. package/src/helpers/README.md +3 -0
  128. package/src/helpers/types.ts +28 -0
  129. package/src/models/attachment.ts +37 -0
  130. package/src/models/bom.ts +85 -0
  131. package/src/models/bomRef.ts +41 -0
  132. package/src/models/component.ts +136 -0
  133. package/src/models/externalReference.ts +48 -0
  134. package/src/models/hash.ts +38 -0
  135. package/src/models/index.ts +31 -0
  136. package/src/models/license.ts +133 -0
  137. package/src/models/metadata.ts +50 -0
  138. package/src/models/organizationalContact.ts +49 -0
  139. package/src/models/organizationalEntity.ts +38 -0
  140. package/src/models/swid.ts +71 -0
  141. package/src/models/tool.ts +58 -0
  142. package/src/resources.node.ts +59 -0
  143. package/src/serialize/_index.node.ts +23 -0
  144. package/src/serialize/_index.web.ts +23 -0
  145. package/src/serialize/baseSerializer.ts +52 -0
  146. package/src/serialize/bomRefDiscriminator.ts +69 -0
  147. package/src/serialize/index.ts +35 -0
  148. package/src/serialize/json/index.ts +23 -0
  149. package/src/serialize/json/normalize.ts +450 -0
  150. package/src/serialize/json/types.ts +187 -0
  151. package/src/serialize/jsonSerializer.ts +59 -0
  152. package/src/serialize/types.ts +38 -0
  153. package/src/serialize/xml/index.ts +23 -0
  154. package/src/serialize/xml/normalize.ts +590 -0
  155. package/src/serialize/xml/types.ts +112 -0
  156. package/src/serialize/xmlBaseSerializer.ts +52 -0
  157. package/src/serialize/xmlSerializer.node.ts +35 -0
  158. package/src/serialize/xmlSerializer.web.ts +89 -0
  159. package/src/spdx.ts +48 -0
  160. package/src/spec.ts +289 -0
  161. package/src/types/cpe.ts +33 -0
  162. package/src/types/index.ts +23 -0
  163. package/src/types/integer.ts +50 -0
  164. package/src/types/mimeType.ts +31 -0
  165. package/src/types/urn.ts +33 -0
  166. package/tsconfig.json +108 -0
  167. package/tsconfig.node.json +8 -0
  168. package/tsconfig.web.json +5 -0
  169. package/webpack.config.js +74 -0
@@ -0,0 +1,560 @@
1
+ "use strict";
2
+ /*!
3
+ This file is part of CycloneDX JavaScript Library.
4
+
5
+ Licensed under the Apache License, Version 2.0 (the "License");
6
+ you may not use this file except in compliance with the License.
7
+ You may obtain a copy of the License at
8
+
9
+ http://www.apache.org/licenses/LICENSE-2.0
10
+
11
+ Unless required by applicable law or agreed to in writing, software
12
+ distributed under the License is distributed on an "AS IS" BASIS,
13
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ See the License for the specific language governing permissions and
15
+ limitations under the License.
16
+
17
+ SPDX-License-Identifier: Apache-2.0
18
+ Copyright (c) OWASP Foundation. All Rights Reserved.
19
+ */
20
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
21
+ if (k2 === undefined) k2 = k;
22
+ var desc = Object.getOwnPropertyDescriptor(m, k);
23
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
24
+ desc = { enumerable: true, get: function() { return m[k]; } };
25
+ }
26
+ Object.defineProperty(o, k2, desc);
27
+ }) : (function(o, m, k, k2) {
28
+ if (k2 === undefined) k2 = k;
29
+ o[k2] = m[k];
30
+ }));
31
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
32
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
33
+ }) : function(o, v) {
34
+ o["default"] = v;
35
+ });
36
+ var __importStar = (this && this.__importStar) || function (mod) {
37
+ if (mod && mod.__esModule) return mod;
38
+ var result = {};
39
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
40
+ __setModuleDefault(result, mod);
41
+ return result;
42
+ };
43
+ var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
44
+ if (kind === "m") throw new TypeError("Private method is not writable");
45
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
46
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
47
+ return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
48
+ };
49
+ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
50
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
51
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
52
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
53
+ };
54
+ var _Factory_spec, _LicenseNormalizer_instances, _LicenseNormalizer_normalizeNamedLicense, _LicenseNormalizer_normalizeSpdxLicense, _LicenseNormalizer_normalizeLicenseExpression, _DependencyGraphNormalizer_instances, _DependencyGraphNormalizer_normalizeDependency;
55
+ Object.defineProperty(exports, "__esModule", { value: true });
56
+ exports.DependencyGraphNormalizer = exports.AttachmentNormalizer = exports.ExternalReferenceNormalizer = exports.SWIDNormalizer = exports.LicenseNormalizer = exports.ComponentNormalizer = exports.OrganizationalEntityNormalizer = exports.OrganizationalContactNormalizer = exports.HashNormalizer = exports.ToolNormalizer = exports.MetadataNormalizer = exports.BomNormalizer = exports.Factory = void 0;
57
+ const types_1 = require("../../helpers/types");
58
+ const Models = __importStar(require("../../models"));
59
+ const spec_1 = require("../../spec");
60
+ const types_2 = require("./types");
61
+ class Factory {
62
+ constructor(spec) {
63
+ _Factory_spec.set(this, void 0);
64
+ __classPrivateFieldSet(this, _Factory_spec, spec, "f");
65
+ }
66
+ get spec() {
67
+ return __classPrivateFieldGet(this, _Factory_spec, "f");
68
+ }
69
+ makeForBom() {
70
+ return new BomNormalizer(this);
71
+ }
72
+ makeForMetadata() {
73
+ return new MetadataNormalizer(this);
74
+ }
75
+ makeForComponent() {
76
+ return new ComponentNormalizer(this);
77
+ }
78
+ makeForTool() {
79
+ return new ToolNormalizer(this);
80
+ }
81
+ makeForOrganizationalContact() {
82
+ return new OrganizationalContactNormalizer(this);
83
+ }
84
+ makeForOrganizationalEntity() {
85
+ return new OrganizationalEntityNormalizer(this);
86
+ }
87
+ makeForHash() {
88
+ return new HashNormalizer(this);
89
+ }
90
+ makeForLicense() {
91
+ return new LicenseNormalizer(this);
92
+ }
93
+ makeForSWID() {
94
+ return new SWIDNormalizer(this);
95
+ }
96
+ makeForExternalReference() {
97
+ return new ExternalReferenceNormalizer(this);
98
+ }
99
+ makeForAttachment() {
100
+ return new AttachmentNormalizer(this);
101
+ }
102
+ makeForDependencyGraph() {
103
+ return new DependencyGraphNormalizer(this);
104
+ }
105
+ }
106
+ exports.Factory = Factory;
107
+ _Factory_spec = new WeakMap();
108
+ const xmlNamespace = new Map([
109
+ [spec_1.Version.v1dot2, 'http://cyclonedx.org/schema/bom/1.2'],
110
+ [spec_1.Version.v1dot3, 'http://cyclonedx.org/schema/bom/1.3'],
111
+ [spec_1.Version.v1dot4, 'http://cyclonedx.org/schema/bom/1.4']
112
+ ]);
113
+ class Base {
114
+ constructor(factory) {
115
+ this._factory = factory;
116
+ }
117
+ }
118
+ class BomNormalizer extends Base {
119
+ normalize(data, options) {
120
+ const components = {
121
+ type: 'element',
122
+ name: 'components',
123
+ children: data.components.size > 0
124
+ ? this._factory.makeForComponent().normalizeIter(data.components, options, 'component')
125
+ : undefined
126
+ };
127
+ return {
128
+ type: 'element',
129
+ name: 'bom',
130
+ namespace: xmlNamespace.get(this._factory.spec.version),
131
+ attributes: {
132
+ version: data.version,
133
+ serialNumber: data.serialNumber
134
+ },
135
+ children: [
136
+ data.metadata
137
+ ? this._factory.makeForMetadata().normalize(data.metadata, options, 'metadata')
138
+ : undefined,
139
+ components,
140
+ this._factory.spec.supportsDependencyGraph
141
+ ? this._factory.makeForDependencyGraph().normalize(data, options, 'dependencies')
142
+ : undefined
143
+ ].filter(types_1.isNotUndefined)
144
+ };
145
+ }
146
+ }
147
+ exports.BomNormalizer = BomNormalizer;
148
+ class MetadataNormalizer extends Base {
149
+ normalize(data, options, elementName) {
150
+ const orgEntityNormalizer = this._factory.makeForOrganizationalEntity();
151
+ const timestamp = data.timestamp === undefined
152
+ ? undefined
153
+ : {
154
+ type: 'element',
155
+ name: 'timestamp',
156
+ children: data.timestamp.toISOString()
157
+ };
158
+ const tools = data.tools.size > 0
159
+ ? {
160
+ type: 'element',
161
+ name: 'tools',
162
+ children: this._factory.makeForTool().normalizeIter(data.tools, options, 'tool')
163
+ }
164
+ : undefined;
165
+ const authors = data.authors.size > 0
166
+ ? {
167
+ type: 'element',
168
+ name: 'authors',
169
+ children: this._factory.makeForOrganizationalContact()
170
+ .normalizeIter(data.authors, options, 'author')
171
+ }
172
+ : undefined;
173
+ return {
174
+ type: 'element',
175
+ name: elementName,
176
+ children: [
177
+ timestamp,
178
+ tools,
179
+ authors,
180
+ data.component === undefined
181
+ ? undefined
182
+ : this._factory.makeForComponent().normalize(data.component, options, 'component'),
183
+ data.manufacture === undefined
184
+ ? undefined
185
+ : orgEntityNormalizer.normalize(data.manufacture, options, 'manufacture'),
186
+ data.supplier === undefined
187
+ ? undefined
188
+ : orgEntityNormalizer.normalize(data.supplier, options, 'supplier')
189
+ ].filter(types_1.isNotUndefined)
190
+ };
191
+ }
192
+ }
193
+ exports.MetadataNormalizer = MetadataNormalizer;
194
+ class ToolNormalizer extends Base {
195
+ normalize(data, options, elementName) {
196
+ const hashes = data.hashes.size > 0
197
+ ? {
198
+ type: 'element',
199
+ name: 'hashes',
200
+ children: this._factory.makeForHash().normalizeIter(data.hashes, options, 'hash')
201
+ }
202
+ : undefined;
203
+ const externalReferences = this._factory.spec.supportsToolReferences && data.externalReferences.size > 0
204
+ ? {
205
+ type: 'element',
206
+ name: 'externalReferences',
207
+ children: this._factory.makeForExternalReference()
208
+ .normalizeIter(data.externalReferences, options, 'reference')
209
+ }
210
+ : undefined;
211
+ return {
212
+ type: 'element',
213
+ name: elementName,
214
+ children: [
215
+ makeOptionalTextElement(data.vendor, 'vendor'),
216
+ makeOptionalTextElement(data.name, 'name'),
217
+ makeOptionalTextElement(data.version, 'version'),
218
+ hashes,
219
+ externalReferences
220
+ ].filter(types_1.isNotUndefined)
221
+ };
222
+ }
223
+ normalizeIter(data, options, elementName) {
224
+ const tools = Array.from(data);
225
+ if (options.sortLists) {
226
+ tools.sort(Models.ToolRepository.compareItems);
227
+ }
228
+ return tools.map(t => this.normalize(t, options, elementName));
229
+ }
230
+ }
231
+ exports.ToolNormalizer = ToolNormalizer;
232
+ class HashNormalizer extends Base {
233
+ normalize([algorithm, content], options, elementName) {
234
+ const spec = this._factory.spec;
235
+ return spec.supportsHashAlgorithm(algorithm) && spec.supportsHashValue(content)
236
+ ? {
237
+ type: 'element',
238
+ name: elementName,
239
+ attributes: { alg: algorithm },
240
+ children: content
241
+ }
242
+ : undefined;
243
+ }
244
+ normalizeIter(data, options, elementName) {
245
+ const hashes = Array.from(data);
246
+ if (options.sortLists ?? false) {
247
+ hashes.sort(Models.HashRepository.compareItems);
248
+ }
249
+ return hashes.map(h => this.normalize(h, options, elementName))
250
+ .filter(types_1.isNotUndefined);
251
+ }
252
+ }
253
+ exports.HashNormalizer = HashNormalizer;
254
+ class OrganizationalContactNormalizer extends Base {
255
+ normalize(data, options, elementName) {
256
+ return {
257
+ type: 'element',
258
+ name: elementName,
259
+ children: [
260
+ makeOptionalTextElement(data.name, 'name'),
261
+ makeOptionalTextElement(data.email, 'email'),
262
+ makeOptionalTextElement(data.phone, 'phone')
263
+ ].filter(types_1.isNotUndefined)
264
+ };
265
+ }
266
+ normalizeIter(data, options, elementName) {
267
+ const contacts = Array.from(data);
268
+ if (options.sortLists ?? false) {
269
+ contacts.sort(Models.OrganizationalContactRepository.compareItems);
270
+ }
271
+ return contacts.map(c => this.normalize(c, options, elementName));
272
+ }
273
+ }
274
+ exports.OrganizationalContactNormalizer = OrganizationalContactNormalizer;
275
+ class OrganizationalEntityNormalizer extends Base {
276
+ normalize(data, options, elementName) {
277
+ return {
278
+ type: 'element',
279
+ name: elementName,
280
+ children: [
281
+ makeOptionalTextElement(data.name, 'name'),
282
+ ...makeTextElementIter(data.url, options, 'url')
283
+ .filter(({ children: u }) => types_2.XmlSchema.isAnyURI(u)),
284
+ ...this._factory.makeForOrganizationalContact().normalizeIter(data.contact, options, 'contact')
285
+ ].filter(types_1.isNotUndefined)
286
+ };
287
+ }
288
+ }
289
+ exports.OrganizationalEntityNormalizer = OrganizationalEntityNormalizer;
290
+ class ComponentNormalizer extends Base {
291
+ normalize(data, options, elementName) {
292
+ if (!this._factory.spec.supportsComponentType(data.type)) {
293
+ return undefined;
294
+ }
295
+ const supplier = data.supplier === undefined
296
+ ? undefined
297
+ : this._factory.makeForOrganizationalEntity().normalize(data.supplier, options, 'supplier');
298
+ const hashes = data.hashes.size > 0
299
+ ? {
300
+ type: 'element',
301
+ name: 'hashes',
302
+ children: this._factory.makeForHash().normalizeIter(data.hashes, options, 'hash')
303
+ }
304
+ : undefined;
305
+ const licenses = data.licenses.size > 0
306
+ ? {
307
+ type: 'element',
308
+ name: 'licenses',
309
+ children: this._factory.makeForLicense().normalizeIter(data.licenses, options)
310
+ }
311
+ : undefined;
312
+ const swid = data.swid === undefined
313
+ ? undefined
314
+ : this._factory.makeForSWID().normalize(data.swid, options, 'swid');
315
+ const extRefs = data.externalReferences.size > 0
316
+ ? {
317
+ type: 'element',
318
+ name: 'externalReferences',
319
+ children: this._factory.makeForExternalReference()
320
+ .normalizeIter(data.externalReferences, options, 'reference')
321
+ }
322
+ : undefined;
323
+ return {
324
+ type: 'element',
325
+ name: elementName,
326
+ attributes: {
327
+ type: data.type,
328
+ 'bom-ref': data.bomRef.value
329
+ },
330
+ children: [
331
+ supplier,
332
+ makeOptionalTextElement(data.author, 'author'),
333
+ makeOptionalTextElement(data.publisher, 'publisher'),
334
+ makeOptionalTextElement(data.group, 'group'),
335
+ makeTextElement(data.name, 'name'),
336
+ makeTextElement(data.version ?? '', 'version'),
337
+ makeOptionalTextElement(data.description, 'description'),
338
+ makeOptionalTextElement(data.scope, 'description'),
339
+ hashes,
340
+ licenses,
341
+ makeOptionalTextElement(data.copyright, 'copyright'),
342
+ makeOptionalTextElement(data.cpe, 'cpe'),
343
+ makeOptionalTextElement(data.purl, 'purl'),
344
+ swid,
345
+ extRefs
346
+ ].filter(types_1.isNotUndefined)
347
+ };
348
+ }
349
+ normalizeIter(data, options, elementName) {
350
+ const components = Array.from(data);
351
+ if (options.sortLists ?? false) {
352
+ components.sort(Models.ComponentRepository.compareItems);
353
+ }
354
+ return components.map(c => this.normalize(c, options, elementName))
355
+ .filter(types_1.isNotUndefined);
356
+ }
357
+ }
358
+ exports.ComponentNormalizer = ComponentNormalizer;
359
+ class LicenseNormalizer extends Base {
360
+ constructor() {
361
+ super(...arguments);
362
+ _LicenseNormalizer_instances.add(this);
363
+ }
364
+ normalize(data, options) {
365
+ switch (true) {
366
+ case data instanceof Models.NamedLicense:
367
+ return __classPrivateFieldGet(this, _LicenseNormalizer_instances, "m", _LicenseNormalizer_normalizeNamedLicense).call(this, data, options);
368
+ case data instanceof Models.SpdxLicense:
369
+ return __classPrivateFieldGet(this, _LicenseNormalizer_instances, "m", _LicenseNormalizer_normalizeSpdxLicense).call(this, data, options);
370
+ case data instanceof Models.LicenseExpression:
371
+ return __classPrivateFieldGet(this, _LicenseNormalizer_instances, "m", _LicenseNormalizer_normalizeLicenseExpression).call(this, data);
372
+ default:
373
+ throw new TypeError('Unexpected LicenseChoice');
374
+ }
375
+ }
376
+ normalizeIter(data, options) {
377
+ const licenses = Array.from(data);
378
+ if (options.sortLists ?? false) {
379
+ licenses.sort(Models.LicenseRepository.compareItems);
380
+ }
381
+ return licenses.map(c => this.normalize(c, options));
382
+ }
383
+ }
384
+ exports.LicenseNormalizer = LicenseNormalizer;
385
+ _LicenseNormalizer_instances = new WeakSet(), _LicenseNormalizer_normalizeNamedLicense = function _LicenseNormalizer_normalizeNamedLicense(data, options) {
386
+ const url = data.url?.toString();
387
+ return {
388
+ type: 'element',
389
+ name: 'license',
390
+ children: [
391
+ makeTextElement(data.name, 'name'),
392
+ data.text === undefined
393
+ ? undefined
394
+ : this._factory.makeForAttachment().normalize(data.text, options, 'text'),
395
+ types_2.XmlSchema.isAnyURI(url)
396
+ ? makeTextElement(url, 'url')
397
+ : undefined
398
+ ].filter(types_1.isNotUndefined)
399
+ };
400
+ }, _LicenseNormalizer_normalizeSpdxLicense = function _LicenseNormalizer_normalizeSpdxLicense(data, options) {
401
+ const url = data.url?.toString();
402
+ return {
403
+ type: 'element',
404
+ name: 'license',
405
+ children: [
406
+ makeTextElement(data.id, 'id'),
407
+ data.text === undefined
408
+ ? undefined
409
+ : this._factory.makeForAttachment().normalize(data.text, options, 'text'),
410
+ types_2.XmlSchema.isAnyURI(url)
411
+ ? makeTextElement(url, 'url')
412
+ : undefined
413
+ ].filter(types_1.isNotUndefined)
414
+ };
415
+ }, _LicenseNormalizer_normalizeLicenseExpression = function _LicenseNormalizer_normalizeLicenseExpression(data) {
416
+ return makeTextElement(data.expression, 'expression');
417
+ };
418
+ class SWIDNormalizer extends Base {
419
+ normalize(data, options, elementName) {
420
+ const url = data.url?.toString();
421
+ return {
422
+ type: 'element',
423
+ name: elementName,
424
+ attributes: {
425
+ tagId: data.tagId,
426
+ name: data.name,
427
+ version: data.version || undefined,
428
+ tagVersion: data.tagVersion,
429
+ patch: data.patch === undefined
430
+ ? undefined
431
+ : (data.patch ? 'true' : 'false')
432
+ },
433
+ children: [
434
+ data.text === undefined
435
+ ? undefined
436
+ : this._factory.makeForAttachment().normalize(data.text, options, 'text'),
437
+ types_2.XmlSchema.isAnyURI(url)
438
+ ? makeTextElement(url, 'url')
439
+ : undefined
440
+ ].filter(types_1.isNotUndefined)
441
+ };
442
+ }
443
+ }
444
+ exports.SWIDNormalizer = SWIDNormalizer;
445
+ class ExternalReferenceNormalizer extends Base {
446
+ normalize(data, options, elementName) {
447
+ const url = data.url.toString();
448
+ return this._factory.spec.supportsExternalReferenceType(data.type) &&
449
+ types_2.XmlSchema.isAnyURI(url)
450
+ ? {
451
+ type: 'element',
452
+ name: elementName,
453
+ attributes: {
454
+ type: data.type
455
+ },
456
+ children: [
457
+ makeTextElement(url, 'url'),
458
+ makeOptionalTextElement(data.comment, 'comment')
459
+ ].filter(types_1.isNotUndefined)
460
+ }
461
+ : undefined;
462
+ }
463
+ normalizeIter(data, options, elementName) {
464
+ const references = Array.from(data);
465
+ if (options.sortLists ?? false) {
466
+ references.sort(Models.ExternalReferenceRepository.compareItems);
467
+ }
468
+ return references.map(r => this.normalize(r, options, elementName))
469
+ .filter(types_1.isNotUndefined);
470
+ }
471
+ }
472
+ exports.ExternalReferenceNormalizer = ExternalReferenceNormalizer;
473
+ class AttachmentNormalizer extends Base {
474
+ normalize(data, options, elementName) {
475
+ return {
476
+ type: 'element',
477
+ name: elementName,
478
+ attributes: {
479
+ 'content-type': data.contentType || undefined,
480
+ encoding: data.encoding || undefined
481
+ },
482
+ children: data.content
483
+ };
484
+ }
485
+ }
486
+ exports.AttachmentNormalizer = AttachmentNormalizer;
487
+ class DependencyGraphNormalizer extends Base {
488
+ constructor() {
489
+ super(...arguments);
490
+ _DependencyGraphNormalizer_instances.add(this);
491
+ }
492
+ normalize(data, options, elementName) {
493
+ if (!data.metadata.component?.bomRef.value) {
494
+ return undefined;
495
+ }
496
+ const allRefs = new Map();
497
+ for (const c of data.components) {
498
+ allRefs.set(c.bomRef, new Models.BomRefRepository(c.dependencies));
499
+ }
500
+ allRefs.set(data.metadata.component.bomRef, data.metadata.component.dependencies);
501
+ const normalized = [];
502
+ for (const [ref, deps] of allRefs) {
503
+ const dep = __classPrivateFieldGet(this, _DependencyGraphNormalizer_instances, "m", _DependencyGraphNormalizer_normalizeDependency).call(this, ref, deps, allRefs, options);
504
+ if ((0, types_1.isNotUndefined)(dep)) {
505
+ normalized.push(dep);
506
+ }
507
+ }
508
+ if (options.sortLists ?? false) {
509
+ normalized.sort(({ attributes: { ref: a } }, { attributes: { ref: b } }) => a.localeCompare(b));
510
+ }
511
+ return {
512
+ type: 'element',
513
+ name: elementName,
514
+ children: normalized
515
+ };
516
+ }
517
+ }
518
+ exports.DependencyGraphNormalizer = DependencyGraphNormalizer;
519
+ _DependencyGraphNormalizer_instances = new WeakSet(), _DependencyGraphNormalizer_normalizeDependency = function _DependencyGraphNormalizer_normalizeDependency(ref, deps, allRefs, options) {
520
+ const bomRef = ref.toString();
521
+ if (bomRef.length === 0) {
522
+ return undefined;
523
+ }
524
+ const dependsOn = Array.from(deps).filter(d => allRefs.has(d) && d !== ref)
525
+ .map(d => d.toString()).filter(d => d.length > 0);
526
+ if (options.sortLists ?? false) {
527
+ dependsOn.sort((a, b) => a.localeCompare(b));
528
+ }
529
+ return {
530
+ type: 'element',
531
+ name: 'dependency',
532
+ attributes: { ref: bomRef },
533
+ children: dependsOn.map(d => ({
534
+ type: 'element',
535
+ name: 'dependency',
536
+ attributes: { ref: d }
537
+ }))
538
+ };
539
+ };
540
+ function makeOptionalTextElement(data, elementName) {
541
+ const s = data?.toString() ?? '';
542
+ return s.length > 0
543
+ ? makeTextElement(s, elementName)
544
+ : undefined;
545
+ }
546
+ function makeTextElement(data, elementName) {
547
+ return {
548
+ type: 'element',
549
+ name: elementName,
550
+ children: data.toString()
551
+ };
552
+ }
553
+ function makeTextElementIter(data, options, elementName) {
554
+ const r = Array.from(data, d => makeTextElement(d, elementName));
555
+ if (options.sortLists ?? false) {
556
+ r.sort(({ children: a }, { children: b }) => a.localeCompare(b));
557
+ }
558
+ return r;
559
+ }
560
+ //# sourceMappingURL=normalize.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"normalize.js","sourceRoot":"","sources":["../../../src/serialize/xml/normalize.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ /*!
3
+ This file is part of CycloneDX JavaScript Library.
4
+
5
+ Licensed under the Apache License, Version 2.0 (the "License");
6
+ you may not use this file except in compliance with the License.
7
+ You may obtain a copy of the License at
8
+
9
+ http://www.apache.org/licenses/LICENSE-2.0
10
+
11
+ Unless required by applicable law or agreed to in writing, software
12
+ distributed under the License is distributed on an "AS IS" BASIS,
13
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ See the License for the specific language governing permissions and
15
+ limitations under the License.
16
+
17
+ SPDX-License-Identifier: Apache-2.0
18
+ Copyright (c) OWASP Foundation. All Rights Reserved.
19
+ */
20
+ Object.defineProperty(exports, "__esModule", { value: true });
21
+ exports.XmlSchema = void 0;
22
+ var XmlSchema;
23
+ (function (XmlSchema) {
24
+ function isAnyURI(value) {
25
+ return typeof value === 'string' &&
26
+ value.length > 0 &&
27
+ Array.from(value).filter(c => c === '#').length <= 1;
28
+ }
29
+ XmlSchema.isAnyURI = isAnyURI;
30
+ })(XmlSchema = exports.XmlSchema || (exports.XmlSchema = {}));
31
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/serialize/xml/types.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;EAiBE;;;AAGF,IAAiB,SAAS,CAmBzB;AAnBD,WAAiB,SAAS;IAYxB,SAAgB,QAAQ,CAAE,KAAmB;QAC3C,OAAO,OAAO,KAAK,KAAK,QAAQ;YAC9B,KAAK,CAAC,MAAM,GAAG,CAAC;YAChB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,CAAA;IAExD,CAAC;IALe,kBAAQ,WAKvB,CAAA;AAEH,CAAC,EAnBgB,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAmBzB"}
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ /*!
3
+ This file is part of CycloneDX JavaScript Library.
4
+
5
+ Licensed under the Apache License, Version 2.0 (the "License");
6
+ you may not use this file except in compliance with the License.
7
+ You may obtain a copy of the License at
8
+
9
+ http://www.apache.org/licenses/LICENSE-2.0
10
+
11
+ Unless required by applicable law or agreed to in writing, software
12
+ distributed under the License is distributed on an "AS IS" BASIS,
13
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ See the License for the specific language governing permissions and
15
+ limitations under the License.
16
+
17
+ SPDX-License-Identifier: Apache-2.0
18
+ Copyright (c) OWASP Foundation. All Rights Reserved.
19
+ */
20
+ var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
21
+ if (kind === "m") throw new TypeError("Private method is not writable");
22
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
23
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
24
+ return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
25
+ };
26
+ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
27
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
28
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
29
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
30
+ };
31
+ var _XmlBaseSerializer_normalizerFactory;
32
+ Object.defineProperty(exports, "__esModule", { value: true });
33
+ exports.XmlBaseSerializer = void 0;
34
+ const spec_1 = require("../spec");
35
+ const baseSerializer_1 = require("./baseSerializer");
36
+ class XmlBaseSerializer extends baseSerializer_1.BaseSerializer {
37
+ constructor(normalizerFactory) {
38
+ if (!normalizerFactory.spec.supportsFormat(spec_1.Format.JSON)) {
39
+ throw new spec_1.UnsupportedFormatError('Spec does not support JSON format.');
40
+ }
41
+ super();
42
+ _XmlBaseSerializer_normalizerFactory.set(this, void 0);
43
+ __classPrivateFieldSet(this, _XmlBaseSerializer_normalizerFactory, normalizerFactory, "f");
44
+ }
45
+ _normalize(bom, options = {}) {
46
+ return __classPrivateFieldGet(this, _XmlBaseSerializer_normalizerFactory, "f").makeForBom()
47
+ .normalize(bom, options);
48
+ }
49
+ }
50
+ exports.XmlBaseSerializer = XmlBaseSerializer;
51
+ _XmlBaseSerializer_normalizerFactory = new WeakMap();
52
+ //# sourceMappingURL=xmlBaseSerializer.js.map