@cyclonedx/cyclonedx-library
Version:
Core functionality of CycloneDX for JavaScript (Node.js or WebBrowser).
2 lines • 107 kB
JavaScript
/*! For license information please see lib.js.LICENSE.txt */
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.CycloneDX_library=t():e.CycloneDX_library=t()}(self,(()=>(()=>{"use strict";var e={48:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.isNotUndefined=function(e){return void 0!==e}},94:function(e,t,r){var o,n=this&&this.__createBinding||(Object.create?function(e,t,r,o){void 0===o&&(o=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,o,n)}:function(e,t,r,o){void 0===o&&(o=r),e[o]=t[r]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),s=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)},a=this&&this.__importStar||(o=function(e){return o=Object.getOwnPropertyNames||function(e){var t=[];for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[t.length]=r);return t},o(e)},function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r=o(e),s=0;s<r.length;s++)"default"!==r[s]&&n(t,e,r[s]);return i(t,e),t});Object.defineProperty(t,"__esModule",{value:!0}),t.XML=t.JSON=t.Types=void 0,s(r(7676),t),s(r(8070),t),t.Types=a(r(8440)),s(r(8352),t),t.JSON=a(r(4212)),s(r(8127),t),t.XML=a(r(1007)),s(r(4889),t)},204:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.XmlSerializer=void 0;const o=r(48),n=r(4889);class i extends n.XmlBaseSerializer{_serialize(e,{space:t}={}){const r=this.#e(e);return(new XMLSerializer).serializeToString(r)}#e(e){const t=document.implementation.createDocument(null,null);return t.appendChild(this.#t(e,t,null)),t}#r(e){const t=(e.namespace??e.attributes?.xmlns)?.toString()??"";return t.length>0?t:null}#t(e,t,r){const n=this.#r(e)??r,i=t.createElementNS(n,e.name);return(0,o.isNotUndefined)(e.attributes)&&this.#o(i,e.attributes),(0,o.isNotUndefined)(e.children)&&this.#n(i,e.children,n),i}#o(e,t){for(const[r,n]of Object.entries(t))(0,o.isNotUndefined)(n)&&"xmlns"!==r&&e.setAttribute(r,`${n}`)}#n(e,t,r=null){if(void 0===t)return;if("string"==typeof t||"number"==typeof t)return void(e.textContent=t.toString());const o=e.ownerDocument;for(const n of t)"element"===n.type&&e.appendChild(this.#t(n,o,r))}}t.XmlSerializer=i},382:function(e,t,r){var o=this&&this.__createBinding||(Object.create?function(e,t,r,o){void 0===o&&(o=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,o,n)}:function(e,t,r,o){void 0===o&&(o=r),e[o]=t[r]}),n=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||o(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),n(r(656),t),n(r(4196),t),n(r(2971),t)},608:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.isCPE=function(e){return"string"==typeof e&&r.test(e)};const r=/^([c][pP][eE]:\/[AHOaho]?(:[A-Za-z0-9\._\-~%]*){0,6})$|^(cpe:2\.3:[aho\*\-](:(((\?*|\*?)([a-zA-Z0-9\-\._]|(\\[\\\*\?!"#$$%&'\(\)\+,\/:;<=>@\[\]\^`\{\|}~]))+(\?*|\*?))|[\*\-])){5}(:(([a-zA-Z]{2,3}(-([a-zA-Z]{2}|[0-9]{3}))?)|[\*\-]))(:(((\?*|\*?)([a-zA-Z0-9\-\._]|(\\[\\\*\?!"#$$%&'\(\)\+,\/:;<=>@\[\]\^`\{\|}~]))+(\?*|\*?))|[\*\-])){4})$/},625:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Source=void 0,t.Source=class{name;url;constructor(e={}){this.name=e.name,this.url=e.url}compare(e){return(this.url?.toString()??"").localeCompare(e.url?.toString()??"")||(this.name??"").localeCompare(e.name??"")}}},656:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SpecVersionDict=t.Spec1dot6=t.Spec1dot5=t.Spec1dot4=t.Spec1dot3=t.Spec1dot2=void 0;const o=r(5866),n=r(3321),i=r(1525),s=r(5486),a=r(1699),l=r(4196);t.Spec1dot2=Object.freeze(new a._Spec(l.Version.v1dot2,[l.Format.XML,l.Format.JSON],[o.ComponentType.Application,o.ComponentType.Framework,o.ComponentType.Library,o.ComponentType.Container,o.ComponentType.OperatingSystem,o.ComponentType.Device,o.ComponentType.Firmware,o.ComponentType.File],[i.HashAlgorithm.MD5,i.HashAlgorithm["SHA-1"],i.HashAlgorithm["SHA-256"],i.HashAlgorithm["SHA-384"],i.HashAlgorithm["SHA-512"],i.HashAlgorithm["SHA3-256"],i.HashAlgorithm["SHA3-384"],i.HashAlgorithm["SHA3-512"],i.HashAlgorithm["BLAKE2b-256"],i.HashAlgorithm["BLAKE2b-384"],i.HashAlgorithm["BLAKE2b-512"],i.HashAlgorithm.BLAKE3],/^([a-fA-F0-9]{32})$|^([a-fA-F0-9]{40})$|^([a-fA-F0-9]{64})$|^([a-fA-F0-9]{96})$|^([a-fA-F0-9]{128})$/,[n.ExternalReferenceType.VCS,n.ExternalReferenceType.IssueTracker,n.ExternalReferenceType.Website,n.ExternalReferenceType.Advisories,n.ExternalReferenceType.BOM,n.ExternalReferenceType.MailingList,n.ExternalReferenceType.Social,n.ExternalReferenceType.Chat,n.ExternalReferenceType.Documentation,n.ExternalReferenceType.Support,n.ExternalReferenceType.Distribution,n.ExternalReferenceType.License,n.ExternalReferenceType.BuildMeta,n.ExternalReferenceType.BuildSystem,n.ExternalReferenceType.Other],!0,!1,!0,!1,!1,[],!1,!1,!1,!1,!1,!1,!0,!1)),t.Spec1dot3=Object.freeze(new a._Spec(l.Version.v1dot3,[l.Format.XML,l.Format.JSON],[o.ComponentType.Application,o.ComponentType.Framework,o.ComponentType.Library,o.ComponentType.Container,o.ComponentType.OperatingSystem,o.ComponentType.Device,o.ComponentType.Firmware,o.ComponentType.File],[i.HashAlgorithm.MD5,i.HashAlgorithm["SHA-1"],i.HashAlgorithm["SHA-256"],i.HashAlgorithm["SHA-384"],i.HashAlgorithm["SHA-512"],i.HashAlgorithm["SHA3-256"],i.HashAlgorithm["SHA3-384"],i.HashAlgorithm["SHA3-512"],i.HashAlgorithm["BLAKE2b-256"],i.HashAlgorithm["BLAKE2b-384"],i.HashAlgorithm["BLAKE2b-512"],i.HashAlgorithm.BLAKE3],/^([a-fA-F0-9]{32})$|^([a-fA-F0-9]{40})$|^([a-fA-F0-9]{64})$|^([a-fA-F0-9]{96})$|^([a-fA-F0-9]{128})$/,[n.ExternalReferenceType.VCS,n.ExternalReferenceType.IssueTracker,n.ExternalReferenceType.Website,n.ExternalReferenceType.Advisories,n.ExternalReferenceType.BOM,n.ExternalReferenceType.MailingList,n.ExternalReferenceType.Social,n.ExternalReferenceType.Chat,n.ExternalReferenceType.Documentation,n.ExternalReferenceType.Support,n.ExternalReferenceType.Distribution,n.ExternalReferenceType.License,n.ExternalReferenceType.BuildMeta,n.ExternalReferenceType.BuildSystem,n.ExternalReferenceType.Other],!0,!1,!0,!0,!1,[],!0,!1,!0,!0,!0,!1,!0,!1)),t.Spec1dot4=Object.freeze(new a._Spec(l.Version.v1dot4,[l.Format.XML,l.Format.JSON],[o.ComponentType.Application,o.ComponentType.Framework,o.ComponentType.Library,o.ComponentType.Container,o.ComponentType.OperatingSystem,o.ComponentType.Device,o.ComponentType.Firmware,o.ComponentType.File],[i.HashAlgorithm.MD5,i.HashAlgorithm["SHA-1"],i.HashAlgorithm["SHA-256"],i.HashAlgorithm["SHA-384"],i.HashAlgorithm["SHA-512"],i.HashAlgorithm["SHA3-256"],i.HashAlgorithm["SHA3-384"],i.HashAlgorithm["SHA3-512"],i.HashAlgorithm["BLAKE2b-256"],i.HashAlgorithm["BLAKE2b-384"],i.HashAlgorithm["BLAKE2b-512"],i.HashAlgorithm.BLAKE3],/^([a-fA-F0-9]{32})$|^([a-fA-F0-9]{40})$|^([a-fA-F0-9]{64})$|^([a-fA-F0-9]{96})$|^([a-fA-F0-9]{128})$/,[n.ExternalReferenceType.VCS,n.ExternalReferenceType.IssueTracker,n.ExternalReferenceType.Website,n.ExternalReferenceType.Advisories,n.ExternalReferenceType.BOM,n.ExternalReferenceType.MailingList,n.ExternalReferenceType.Social,n.ExternalReferenceType.Chat,n.ExternalReferenceType.Documentation,n.ExternalReferenceType.Support,n.ExternalReferenceType.Distribution,n.ExternalReferenceType.License,n.ExternalReferenceType.BuildMeta,n.ExternalReferenceType.BuildSystem,n.ExternalReferenceType.ReleaseNotes,n.ExternalReferenceType.Other],!0,!0,!1,!0,!0,[s.RatingMethod.CVSSv2,s.RatingMethod.CVSSv3,s.RatingMethod.CVSSv31,s.RatingMethod.OWASP,s.RatingMethod.Other],!0,!1,!0,!0,!0,!1,!0,!1)),t.Spec1dot5=Object.freeze(new a._Spec(l.Version.v1dot5,[l.Format.XML,l.Format.JSON],[o.ComponentType.Application,o.ComponentType.Framework,o.ComponentType.Library,o.ComponentType.Container,o.ComponentType.Platform,o.ComponentType.OperatingSystem,o.ComponentType.Device,o.ComponentType.DeviceDriver,o.ComponentType.Firmware,o.ComponentType.File,o.ComponentType.MachineLearningModel,o.ComponentType.Data],[i.HashAlgorithm.MD5,i.HashAlgorithm["SHA-1"],i.HashAlgorithm["SHA-256"],i.HashAlgorithm["SHA-384"],i.HashAlgorithm["SHA-512"],i.HashAlgorithm["SHA3-256"],i.HashAlgorithm["SHA3-384"],i.HashAlgorithm["SHA3-512"],i.HashAlgorithm["BLAKE2b-256"],i.HashAlgorithm["BLAKE2b-384"],i.HashAlgorithm["BLAKE2b-512"],i.HashAlgorithm.BLAKE3],/^([a-fA-F0-9]{32})$|^([a-fA-F0-9]{40})$|^([a-fA-F0-9]{64})$|^([a-fA-F0-9]{96})$|^([a-fA-F0-9]{128})$/,[n.ExternalReferenceType.VCS,n.ExternalReferenceType.IssueTracker,n.ExternalReferenceType.Website,n.ExternalReferenceType.Advisories,n.ExternalReferenceType.BOM,n.ExternalReferenceType.MailingList,n.ExternalReferenceType.Social,n.ExternalReferenceType.Chat,n.ExternalReferenceType.Documentation,n.ExternalReferenceType.Support,n.ExternalReferenceType.Distribution,n.ExternalReferenceType.DistributionIntake,n.ExternalReferenceType.License,n.ExternalReferenceType.BuildMeta,n.ExternalReferenceType.BuildSystem,n.ExternalReferenceType.ReleaseNotes,n.ExternalReferenceType.SecurityContact,n.ExternalReferenceType.ModelCard,n.ExternalReferenceType.Log,n.ExternalReferenceType.Configuration,n.ExternalReferenceType.Evidence,n.ExternalReferenceType.Formulation,n.ExternalReferenceType.Attestation,n.ExternalReferenceType.ThreatModel,n.ExternalReferenceType.AdversaryModel,n.ExternalReferenceType.RiskAssessment,n.ExternalReferenceType.VulnerabilityAssertion,n.ExternalReferenceType.ExploitabilityStatement,n.ExternalReferenceType.PentestReport,n.ExternalReferenceType.StaticAnalysisReport,n.ExternalReferenceType.DynamicAnalysisReport,n.ExternalReferenceType.RuntimeAnalysisReport,n.ExternalReferenceType.ComponentAnalysisReport,n.ExternalReferenceType.MaturityReport,n.ExternalReferenceType.CertificationReport,n.ExternalReferenceType.CodifiedInfrastructure,n.ExternalReferenceType.QualityMetrics,n.ExternalReferenceType.POAM,n.ExternalReferenceType.Other],!0,!0,!1,!0,!0,[s.RatingMethod.CVSSv2,s.RatingMethod.CVSSv3,s.RatingMethod.CVSSv31,s.RatingMethod.CVSSv4,s.RatingMethod.OWASP,s.RatingMethod.SSVC,s.RatingMethod.Other],!0,!0,!0,!0,!0,!1,!0,!0)),t.Spec1dot6=Object.freeze(new a._Spec(l.Version.v1dot6,[l.Format.XML,l.Format.JSON],[o.ComponentType.Application,o.ComponentType.Framework,o.ComponentType.Library,o.ComponentType.Container,o.ComponentType.Platform,o.ComponentType.OperatingSystem,o.ComponentType.Device,o.ComponentType.DeviceDriver,o.ComponentType.Firmware,o.ComponentType.File,o.ComponentType.MachineLearningModel,o.ComponentType.Data,o.ComponentType.CryptographicAsset],[i.HashAlgorithm.MD5,i.HashAlgorithm["SHA-1"],i.HashAlgorithm["SHA-256"],i.HashAlgorithm["SHA-384"],i.HashAlgorithm["SHA-512"],i.HashAlgorithm["SHA3-256"],i.HashAlgorithm["SHA3-384"],i.HashAlgorithm["SHA3-512"],i.HashAlgorithm["BLAKE2b-256"],i.HashAlgorithm["BLAKE2b-384"],i.HashAlgorithm["BLAKE2b-512"],i.HashAlgorithm.BLAKE3],/^([a-fA-F0-9]{32})$|^([a-fA-F0-9]{40})$|^([a-fA-F0-9]{64})$|^([a-fA-F0-9]{96})$|^([a-fA-F0-9]{128})$/,[n.ExternalReferenceType.VCS,n.ExternalReferenceType.IssueTracker,n.ExternalReferenceType.Website,n.ExternalReferenceType.Advisories,n.ExternalReferenceType.BOM,n.ExternalReferenceType.MailingList,n.ExternalReferenceType.Social,n.ExternalReferenceType.Chat,n.ExternalReferenceType.Documentation,n.ExternalReferenceType.Support,n.ExternalReferenceType.SourceDistribution,n.ExternalReferenceType.Distribution,n.ExternalReferenceType.DistributionIntake,n.ExternalReferenceType.License,n.ExternalReferenceType.BuildMeta,n.ExternalReferenceType.BuildSystem,n.ExternalReferenceType.ReleaseNotes,n.ExternalReferenceType.SecurityContact,n.ExternalReferenceType.ModelCard,n.ExternalReferenceType.Log,n.ExternalReferenceType.Configuration,n.ExternalReferenceType.Evidence,n.ExternalReferenceType.Formulation,n.ExternalReferenceType.Attestation,n.ExternalReferenceType.ThreatModel,n.ExternalReferenceType.AdversaryModel,n.ExternalReferenceType.RiskAssessment,n.ExternalReferenceType.VulnerabilityAssertion,n.ExternalReferenceType.ExploitabilityStatement,n.ExternalReferenceType.PentestReport,n.ExternalReferenceType.StaticAnalysisReport,n.ExternalReferenceType.DynamicAnalysisReport,n.ExternalReferenceType.RuntimeAnalysisReport,n.ExternalReferenceType.ComponentAnalysisReport,n.ExternalReferenceType.MaturityReport,n.ExternalReferenceType.CertificationReport,n.ExternalReferenceType.CodifiedInfrastructure,n.ExternalReferenceType.QualityMetrics,n.ExternalReferenceType.POAM,n.ExternalReferenceType.ElectronicSignature,n.ExternalReferenceType.DigitalSignature,n.ExternalReferenceType.RFC9116,n.ExternalReferenceType.Other],!0,!0,!1,!0,!0,[s.RatingMethod.CVSSv2,s.RatingMethod.CVSSv3,s.RatingMethod.CVSSv31,s.RatingMethod.CVSSv4,s.RatingMethod.OWASP,s.RatingMethod.SSVC,s.RatingMethod.Other],!0,!0,!0,!0,!0,!0,!0,!0)),t.SpecVersionDict=Object.freeze({[l.Version.v1dot6]:t.Spec1dot6,[l.Version.v1dot5]:t.Spec1dot5,[l.Version.v1dot4]:t.Spec1dot4,[l.Version.v1dot3]:t.Spec1dot3,[l.Version.v1dot2]:t.Spec1dot2})},734:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Metadata=void 0;const o=r(7988),n=r(4799),i=r(4477),s=r(4654),a=r(7645);t.Metadata=class{timestamp;lifecycles;tools;authors;component;manufacture;supplier;licenses;properties;constructor(e={}){this.timestamp=e.timestamp,this.lifecycles=e.lifecycles??new n.LifecycleRepository,this.tools=e.tools??new a.Tools,this.authors=e.authors??new i.OrganizationalContactRepository,this.component=e.component,this.manufacture=e.manufacture,this.supplier=e.supplier,this.licenses=e.licenses??new o.LicenseRepository,this.properties=e.properties??new s.PropertyRepository}}},759:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CweRepository=void 0,t.isCWE=function(e){return(0,n.isPositiveInteger)(e)};const o=r(1507),n=r(9708);class i extends o.SortableNumbers{}t.CweRepository=i},785:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.AffectedVersionRepository=t.AffectedVersionRange=t.AffectedSingleVersion=t.AffectRepository=t.Affect=void 0;const o=r(1507);t.Affect=class{ref;versions;constructor(e,t={}){this.ref=e,this.versions=t.versions??new i}compare(e){return this.ref.compare(e.ref)||this.versions.compare(e.versions)}};class n extends o.SortableComparables{}t.AffectRepository=n,t.AffectedSingleVersion=class{version;status;constructor(e,t={}){this.version=e,this.status=t.status}compare(e){return this.version.localeCompare(e.version)||(this.status??"").localeCompare(e.status??"")}},t.AffectedVersionRange=class{range;status;constructor(e,t={}){this.range=e,this.status=t.status}compare(e){return this.range.localeCompare(e.range)||(this.status??"").localeCompare(e.status??"")}};class i extends o.SortableComparables{}t.AffectedVersionRepository=i},857:function(e,t,r){var o,n=this&&this.__createBinding||(Object.create?function(e,t,r,o){void 0===o&&(o=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,o,n)}:function(e,t,r,o){void 0===o&&(o=r),e[o]=t[r]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),s=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)},a=this&&this.__importStar||(o=function(e){return o=Object.getOwnPropertyNames||function(e){var t=[];for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[t.length]=r);return t},o(e)},function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r=o(e),s=0;s<r.length;s++)"default"!==r[s]&&n(t,e,r[s]);return i(t,e),t});Object.defineProperty(t,"__esModule",{value:!0}),t.Vulnerability=void 0,s(r(4277),t),s(r(2904),t),s(r(5866),t),s(r(3321),t),s(r(1525),t),s(r(1688),t),s(r(7894),t),t.Vulnerability=a(r(4880))},870:function(e,t,r){var o=this&&this.__createBinding||(Object.create?function(e,t,r,o){void 0===o&&(o=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,o,n)}:function(e,t,r,o){void 0===o&&(o=r),e[o]=t[r]}),n=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||o(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),n(r(5026),t),n(r(7472),t)},930:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Analysis=void 0;const o=r(9511);t.Analysis=class{state;justification;response;detail;constructor(e={}){this.state=e.state,this.justification=e.justification,this.response=e.response??new o.AnalysisResponseRepository,this.detail=e.detail}}},1007:function(e,t,r){var o,n=this&&this.__createBinding||(Object.create?function(e,t,r,o){void 0===o&&(o=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,o,n)}:function(e,t,r,o){void 0===o&&(o=r),e[o]=t[r]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),s=this&&this.__importStar||(o=function(e){return o=Object.getOwnPropertyNames||function(e){var t=[];for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[t.length]=r);return t},o(e)},function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r=o(e),s=0;s<r.length;s++)"default"!==r[s]&&n(t,e,r[s]);return i(t,e),t});Object.defineProperty(t,"__esModule",{value:!0}),t.Types=t.Normalize=void 0,t.Normalize=s(r(1280)),t.Types=s(r(2970))},1089:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.chainI=function*(...e){for(const t of e)for(const e of t)yield e}},1280:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.VulnerabilityAffectedVersionNormalizer=t.VulnerabilityAffectNormalizer=t.VulnerabilityAnalysisNormalizer=t.VulnerabilityCreditsNormalizer=t.VulnerabilityAdvisoryNormalizer=t.VulnerabilityRatingNormalizer=t.VulnerabilityReferenceNormalizer=t.VulnerabilitySourceNormalizer=t.VulnerabilityNormalizer=t.DependencyGraphNormalizer=t.PropertyNormalizer=t.AttachmentNormalizer=t.ExternalReferenceNormalizer=t.SWIDNormalizer=t.LicenseNormalizer=t.ComponentEvidenceNormalizer=t.ServiceNormalizer=t.ComponentNormalizer=t.OrganizationalEntityNormalizer=t.OrganizationalContactNormalizer=t.HashNormalizer=t.ToolsNormalizer=t.ToolNormalizer=t.LifecycleNormalizer=t.MetadataNormalizer=t.BomNormalizer=t.Factory=void 0;const o=r(1089),n=r(48),i=r(9027),s=r(7977),a=r(8207),l=r(7988),c=r(4799),p=r(785),m=r(4317),u=r(4196),d=r(2931),f=r(2970);t.Factory=class{#i;constructor(e){this.#i=e}get spec(){return this.#i}makeForBom(){return new v(this)}makeForMetadata(){return new b(this)}makeForLifecycle(){return new g(this)}makeForComponent(){return new A(this)}makeForService(){return new _(this)}makeForComponentEvidence(){return new R(this)}makeForTool(){return new S(this)}makeForTools(){return new C(this)}makeForOrganizationalContact(){return new L(this)}makeForOrganizationalEntity(){return new x(this)}makeForHash(){return new z(this)}makeForLicense(){return new P(this)}makeForSWID(){return new O(this)}makeForExternalReference(){return new N(this)}makeForAttachment(){return new E(this)}makeForProperty(){return new M(this)}makeForDependencyGraph(){return new w(this)}makeForVulnerability(){return new T(this)}makeForVulnerabilitySource(){return new D(this)}makeForVulnerabilityReference(){return new F(this)}makeForVulnerabilityRating(){return new k(this)}makeForVulnerabilityAdvisory(){return new I(this)}makeForVulnerabilityCredits(){return new B(this)}makeForVulnerabilityAffect(){return new V(this)}makeForVulnerabilityAffectedVersion(){return new H(this)}makeForVulnerabilityAnalysis(){return new j(this)}};const h=new Map([[u.Version.v1dot6,"http://cyclonedx.org/schema/bom/1.6"],[u.Version.v1dot5,"http://cyclonedx.org/schema/bom/1.5"],[u.Version.v1dot4,"http://cyclonedx.org/schema/bom/1.4"],[u.Version.v1dot3,"http://cyclonedx.org/schema/bom/1.3"],[u.Version.v1dot2,"http://cyclonedx.org/schema/bom/1.2"],[u.Version.v1dot1,"http://cyclonedx.org/schema/bom/1.1"],[u.Version.v1dot0,"http://cyclonedx.org/schema/bom/1.0"]]);class y{_factory;constructor(e){this._factory=e}get factory(){return this._factory}}class v extends y{normalize(e,t){const r={type:"element",name:"components",children:e.components.size>0?this._factory.makeForComponent().normalizeIterable(e.components,t,"component"):void 0},o=this._factory.spec.supportsServices&&e.services.size>0?{type:"element",name:"services",children:this._factory.makeForService().normalizeIterable(e.services,t,"service")}:void 0,i=this._factory.spec.supportsVulnerabilities&&e.vulnerabilities.size>0?{type:"element",name:"vulnerabilities",children:this._factory.makeForVulnerability().normalizeIterable(e.vulnerabilities,t,"vulnerability")}:void 0;return{type:"element",name:"bom",namespace:h.get(this._factory.spec.version),attributes:{version:e.version,serialNumber:this.#s(e.serialNumber)?e.serialNumber:void 0},children:[this._factory.makeForMetadata().normalize(e.metadata,t,"metadata"),r,o,this._factory.spec.supportsDependencyGraph?this._factory.makeForDependencyGraph().normalize(e,t,"dependencies"):void 0,i].filter(n.isNotUndefined)}}#s(e){return void 0!==e&&/^urn:uuid:[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$|^\{[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\}$/.test(e)}}t.BomNormalizer=v;class b extends y{normalize(e,t,r){const o=this._factory.makeForOrganizationalEntity(),i=this._factory.spec.supportsMetadataLifecycles&&e.lifecycles.size>0?{type:"element",name:"lifecycles",children:this._factory.makeForLifecycle().normalizeIterable(e.lifecycles,t,"lifecycle")}:void 0,s=e.tools.size>0?this._factory.makeForTools().normalize(e.tools,t,"tools"):void 0,a=e.authors.size>0?{type:"element",name:"authors",children:this._factory.makeForOrganizationalContact().normalizeIterable(e.authors,t,"author")}:void 0,l=this._factory.spec.supportsMetadataLicenses&&e.licenses.size>0?{type:"element",name:"licenses",children:this._factory.makeForLicense().normalizeIterable(e.licenses,t)}:void 0,c=this._factory.spec.supportsMetadataProperties&&e.properties.size>0?{type:"element",name:"properties",children:this._factory.makeForProperty().normalizeIterable(e.properties,t,"property")}:void 0;return{type:"element",name:r,children:[W(e.timestamp,"timestamp"),i,s,a,void 0===e.component?void 0:this._factory.makeForComponent().normalize(e.component,t,"component"),void 0===e.manufacture?void 0:o.normalize(e.manufacture,t,"manufacture"),void 0===e.supplier?void 0:o.normalize(e.supplier,t,"supplier"),l,c].filter(n.isNotUndefined)}}}t.MetadataNormalizer=b;class g extends y{normalize(e,t,r){return e instanceof c.NamedLifecycle?{type:"element",name:r,children:[$(e.name,"name",d.normalizedString),U(e.description,"description")].filter(n.isNotUndefined)}:{type:"element",name:r,children:[$(e,"phase")]}}normalizeIterable(e,t,r){return(t.sortLists?e.sorted():Array.from(e)).map((e=>this.normalize(e,t,r)))}}t.LifecycleNormalizer=g;class S extends y{normalize(e,t,r){const o=e.hashes.size>0?{type:"element",name:"hashes",children:this._factory.makeForHash().normalizeIterable(e.hashes,t,"hash")}:void 0,i=this._factory.spec.supportsToolReferences&&e.externalReferences.size>0?{type:"element",name:"externalReferences",children:this._factory.makeForExternalReference().normalizeIterable(e.externalReferences,t,"reference")}:void 0;return{type:"element",name:r,children:[U(e.vendor,"vendor",d.normalizedString),U(e.name,"name",d.normalizedString),U(e.version,"version",d.normalizedString),o,i].filter(n.isNotUndefined)}}normalizeIterable(e,t,r){return(t.sortLists?e.sorted():Array.from(e)).map((e=>this.normalize(e,t,r)))}}t.ToolNormalizer=S;class C extends y{normalize(e,t,r){let n=[];return e.tools.size>0||!this._factory.spec.supportsToolsComponentsServices?n=this._factory.makeForTool().normalizeIterable(new a.ToolRepository((0,o.chainI)(Array.from(e.components,a.Tool.fromComponent),Array.from(e.services,a.Tool.fromService),e.tools)),t,"tool"):(e.components.size>0&&n.push({type:"element",name:"components",children:this._factory.makeForComponent().normalizeIterable(e.components,t,"component")}),e.services.size>0&&n.push({type:"element",name:"services",children:this._factory.makeForService().normalizeIterable(e.services,t,"service")})),{type:"element",name:r,children:n}}}t.ToolsNormalizer=C;class z extends y{normalize([e,t],r,o){const n=this._factory.spec;return n.supportsHashAlgorithm(e)&&n.supportsHashValue(t)?{type:"element",name:o,attributes:{alg:e},children:(0,d.token)(t)}:void 0}normalizeIterable(e,t,r){return(t.sortLists?e.sorted():Array.from(e)).map((e=>this.normalize(e,t,r))).filter(n.isNotUndefined)}}t.HashNormalizer=z;class L extends y{normalize(e,t,r){return{type:"element",name:r,children:[U(e.name,"name",d.normalizedString),U(e.email,"email",d.normalizedString),U(e.phone,"phone",d.normalizedString)].filter(n.isNotUndefined)}}normalizeIterable(e,t,r){return(t.sortLists?e.sorted():Array.from(e)).map((e=>this.normalize(e,t,r)))}}t.OrganizationalContactNormalizer=L;class x extends y{normalize(e,t,r){return{type:"element",name:r,children:[U(e.name,"name",d.normalizedString),...Y(Array.from(e.url,(e=>(0,s.escapeUri)(e.toString()))),t,"url").filter((({children:e})=>f.XmlSchema.isAnyURI(e))),...this._factory.makeForOrganizationalContact().normalizeIterable(e.contact,t,"contact")].filter(n.isNotUndefined)}}normalizeIterable(e,t,r){return(t.sortLists?e.sorted():Array.from(e)).map((e=>this.normalize(e,t,r)))}}t.OrganizationalEntityNormalizer=x;class A extends y{normalize(e,t,r){const o=this._factory.spec;if(!o.supportsComponentType(e.type))return;const i=void 0===e.supplier?void 0:this._factory.makeForOrganizationalEntity().normalize(e.supplier,t,"supplier"),s=(o.requiresComponentVersion?$:U)(e.version??"","version",d.normalizedString),a=e.hashes.size>0?{type:"element",name:"hashes",children:this._factory.makeForHash().normalizeIterable(e.hashes,t,"hash")}:void 0,l=e.licenses.size>0?{type:"element",name:"licenses",children:this._factory.makeForLicense().normalizeIterable(e.licenses,t)}:void 0,c=void 0===e.swid?void 0:this._factory.makeForSWID().normalize(e.swid,t,"swid"),p=e.externalReferences.size>0?{type:"element",name:"externalReferences",children:this._factory.makeForExternalReference().normalizeIterable(e.externalReferences,t,"reference")}:void 0,m=o.supportsProperties(e)&&e.properties.size>0?{type:"element",name:"properties",children:this._factory.makeForProperty().normalizeIterable(e.properties,t,"property")}:void 0,u=e.components.size>0?{type:"element",name:"components",children:this.normalizeIterable(e.components,t,"component")}:void 0,f=o.supportsComponentEvidence&&void 0!==e.evidence?this._factory.makeForComponentEvidence().normalize(e.evidence,t,"evidence"):void 0;return{type:"element",name:r,attributes:{type:e.type,"bom-ref":e.bomRef.value},children:[i,U(e.author,"author",d.normalizedString),U(e.publisher,"publisher",d.normalizedString),U(e.group,"group",d.normalizedString),$(e.name,"name",d.normalizedString),s,U(e.description,"description",d.normalizedString),U(e.scope,"scope"),a,l,U(e.copyright,"copyright",d.normalizedString),U(e.cpe,"cpe"),U(e.purl,"purl"),c,p,m,u,f].filter(n.isNotUndefined)}}normalizeIterable(e,t,r){return(t.sortLists?e.sorted():Array.from(e)).map((e=>this.normalize(e,t,r))).filter(n.isNotUndefined)}}t.ComponentNormalizer=A;class _ extends y{normalize(e,t,r){const o=this._factory.spec,i=void 0===e.provider?void 0:this._factory.makeForOrganizationalEntity().normalize(e.provider,t,"provider"),s=e.licenses.size>0?{type:"element",name:"licenses",children:this._factory.makeForLicense().normalizeIterable(e.licenses,t)}:void 0,a=e.externalReferences.size>0?{type:"element",name:"externalReferences",children:this._factory.makeForExternalReference().normalizeIterable(e.externalReferences,t,"reference")}:void 0,l=o.supportsProperties(e)&&e.properties.size>0?{type:"element",name:"properties",children:this._factory.makeForProperty().normalizeIterable(e.properties,t,"property")}:void 0,c=e.services.size>0?{type:"element",name:"services",children:this.normalizeIterable(e.services,t,"service")}:void 0;return{type:"element",name:r,attributes:{"bom-ref":e.bomRef.value},children:[i,U(e.group,"group",d.normalizedString),$(e.name,"name",d.normalizedString),U(e.version,"version",d.normalizedString),U(e.description,"description",d.normalizedString),s,a,l,c].filter(n.isNotUndefined)}}normalizeIterable(e,t,r){return(t.sortLists?e.sorted():Array.from(e)).map((e=>this.normalize(e,t,r)))}}t.ServiceNormalizer=_;class R extends y{normalize(e,t,r){return{type:"element",name:r,children:[e.licenses.size>0?{type:"element",name:"licenses",children:this._factory.makeForLicense().normalizeIterable(e.licenses,t)}:void 0,e.copyright.size>0?{type:"element",name:"copyright",children:Y(e.copyright,t,"text")}:void 0].filter(n.isNotUndefined)}}}t.ComponentEvidenceNormalizer=R;class P extends y{normalize(e,t){switch(!0){case e instanceof l.NamedLicense:return this.#a(e,t);case e instanceof l.SpdxLicense:return(0,m.isSupportedSpdxId)(e.id)?this.#l(e,t):this.#a(new l.NamedLicense(e.id,{url:e.url}),t);case e instanceof l.LicenseExpression:return this.#c(e);default:throw new TypeError("Unexpected LicenseChoice")}}#a(e,t){const r=(0,s.escapeUri)(e.url?.toString());return{type:"element",name:"license",attributes:{acknowledgement:this._factory.spec.supportsLicenseAcknowledgement?e.acknowledgement:void 0},children:[$(e.name,"name",d.normalizedString),void 0===e.text?void 0:this._factory.makeForAttachment().normalize(e.text,t,"text"),f.XmlSchema.isAnyURI(r)?$(r,"url"):void 0].filter(n.isNotUndefined)}}#l(e,t){const r=(0,s.escapeUri)(e.url?.toString());return{type:"element",name:"license",attributes:{acknowledgement:this._factory.spec.supportsLicenseAcknowledgement?e.acknowledgement:void 0},children:[$(e.id,"id"),void 0===e.text?void 0:this._factory.makeForAttachment().normalize(e.text,t,"text"),f.XmlSchema.isAnyURI(r)?$(r,"url"):void 0].filter(n.isNotUndefined)}}#c(e){const t=$(e.expression,"expression",d.normalizedString);return t.attributes={acknowledgement:this._factory.spec.supportsLicenseAcknowledgement?e.acknowledgement:void 0},t}normalizeIterable(e,t){const r=t.sortLists?e.sorted():Array.from(e);if(r.length>1){const e=r.filter((e=>e instanceof l.LicenseExpression));if(e.length>0)return[this.#c(e[0])]}return r.map((e=>this.normalize(e,t)))}}t.LicenseNormalizer=P;class O extends y{normalize(e,t,r){const o=(0,s.escapeUri)(e.url?.toString());return{type:"element",name:r,attributes:{tagId:e.tagId,name:e.name,version:e.version||void 0,tagVersion:e.tagVersion,patch:void 0===e.patch?void 0:e.patch?"true":"false"},children:[void 0===e.text?void 0:this._factory.makeForAttachment().normalize(e.text,t,"text"),f.XmlSchema.isAnyURI(o)?$(o,"url"):void 0].filter(n.isNotUndefined)}}}t.SWIDNormalizer=O;class N extends y{normalize(e,t,r){const o=(0,s.escapeUri)(e.url.toString()),i=this._factory.spec.supportsExternalReferenceHashes&&e.hashes.size>0?{type:"element",name:"hashes",children:this._factory.makeForHash().normalizeIterable(e.hashes,t,"hash")}:void 0;return this._factory.spec.supportsExternalReferenceType(e.type)&&f.XmlSchema.isAnyURI(o)?{type:"element",name:r,attributes:{type:e.type},children:[$(o,"url"),U(e.comment,"comment"),i].filter(n.isNotUndefined)}:void 0}normalizeIterable(e,t,r){return(t.sortLists?e.sorted():Array.from(e)).map((e=>this.normalize(e,t,r))).filter(n.isNotUndefined)}}t.ExternalReferenceNormalizer=N;class E extends y{normalize(e,t,r){return{type:"element",name:r,attributes:{"content-type":e.contentType?(0,d.normalizedString)(e.contentType):void 0,encoding:e.encoding||void 0},children:e.content.toString()}}}t.AttachmentNormalizer=E;class M extends y{normalize(e,t,r){return{type:"element",name:r,attributes:{name:e.name},children:(0,d.normalizedString)(e.value)}}normalizeIterable(e,t,r){return(t.sortLists?e.sorted():Array.from(e)).map((e=>this.normalize(e,t,r)))}}t.PropertyNormalizer=M;class w extends y{normalize(e,t,r){const o=new Map;if(void 0!==e.metadata.component){o.set(e.metadata.component.bomRef,e.metadata.component.dependencies);for(const t of e.metadata.component.components[i.treeIteratorSymbol]())o.set(t.bomRef,t.dependencies)}for(const t of e.components[i.treeIteratorSymbol]())o.set(t.bomRef,t.dependencies);for(const t of e.services[i.treeIteratorSymbol]())o.set(t.bomRef,t.dependencies);const s=[];for(const[e,r]of o){const i=this.#p(e,r,o,t);(0,n.isNotUndefined)(i)&&s.push(i)}return t.sortLists&&s.sort((({attributes:{ref:e}},{attributes:{ref:t}})=>e.localeCompare(t))),{type:"element",name:r,children:s}}#p(e,t,r,o){const n=e.toString();if(0===n.length)return;const i=Array.from(t).filter((t=>r.has(t)&&t!==e)).map((e=>e.toString())).filter((e=>e.length>0));return o.sortLists&&i.sort(((e,t)=>e.localeCompare(t))),{type:"element",name:"dependency",attributes:{ref:n},children:i.map((e=>({type:"element",name:"dependency",attributes:{ref:e}})))}}}t.DependencyGraphNormalizer=w;class T extends y{normalize(e,t,r){const o=e.references.size>0?{type:"element",name:"references",children:this._factory.makeForVulnerabilityReference().normalizeIterable(e.references,t,"reference")}:void 0,i=e.ratings.size>0?{type:"element",name:"ratings",children:this._factory.makeForVulnerabilityRating().normalizeIterable(e.ratings,t,"rating")}:void 0,s=e.cwes.size>0?{type:"element",name:"cwes",children:(t.sortLists?e.cwes.sorted():Array.from(e.cwes)).map((e=>$(e,"cwe")))}:void 0,a=e.advisories.size>0?{type:"element",name:"advisories",children:this._factory.makeForVulnerabilityAdvisory().normalizeIterable(e.advisories,t,"advisory")}:void 0,l=e.tools.size>0?this._factory.makeForTools().normalize(e.tools,t,"tools"):void 0,c=e.affects.size>0?{type:"element",name:"affects",children:this._factory.makeForVulnerabilityAffect().normalizeIterable(e.affects,t,"target")}:void 0,p=e.properties.size>0?{type:"element",name:"properties",children:this._factory.makeForProperty().normalizeIterable(e.properties,t,"property")}:void 0;return{type:"element",name:r,attributes:{"bom-ref":e.bomRef.value||void 0},children:[U(e.id,"id",d.normalizedString),void 0===e.source?void 0:this._factory.makeForVulnerabilitySource().normalize(e.source,t,"source"),o,i,s,U(e.description,"description"),U(e.detail,"detail"),U(e.recommendation,"recommendation"),a,W(e.created,"created"),W(e.created,"published"),W(e.created,"updated"),void 0===e.credits?void 0:this._factory.makeForVulnerabilityCredits().normalize(e.credits,t,"credits"),l,void 0===e.analysis?void 0:this._factory.makeForVulnerabilityAnalysis().normalize(e.analysis,t,"analysis"),c,p].filter(n.isNotUndefined)}}normalizeIterable(e,t,r){return(t.sortLists?e.sorted():Array.from(e)).map((e=>this.normalize(e,t,r)))}}t.VulnerabilityNormalizer=T;class D extends y{normalize(e,t,r){const o=(0,s.escapeUri)(e.url?.toString());return{type:"element",name:r,children:[U(e.name,"name",d.normalizedString),f.XmlSchema.isAnyURI(o)?$(o,"url"):void 0].filter(n.isNotUndefined)}}}t.VulnerabilitySourceNormalizer=D;class F extends y{normalize(e,t,r){return{type:"element",name:r,children:[$(e.id,"id"),this._factory.makeForVulnerabilitySource().normalize(e.source,t,"source")]}}normalizeIterable(e,t,r){return(t.sortLists?e.sorted():Array.from(e)).map((e=>this.normalize(e,t,r)))}}t.VulnerabilityReferenceNormalizer=F;class k extends y{normalize(e,t,r){return{type:"element",name:r,children:[void 0===e.source?void 0:this._factory.makeForVulnerabilitySource().normalize(e.source,t,"source"),U(e.score,"score"),U(e.severity,"severity"),this._factory.spec.supportsVulnerabilityRatingMethod(e.method)?U(e.method,"method"):void 0,U(e.vector,"vector",d.normalizedString),U(e.justification,"justification")].filter(n.isNotUndefined)}}normalizeIterable(e,t,r){return(t.sortLists?e.sorted():Array.from(e)).map((e=>this.normalize(e,t,r)))}}t.VulnerabilityRatingNormalizer=k;class I extends y{normalize(e,t,r){const o=(0,s.escapeUri)(e.url.toString());if(f.XmlSchema.isAnyURI(o))return{type:"element",name:r,children:[U(e.title,"title"),$(o,"url")].filter(n.isNotUndefined)}}normalizeIterable(e,t,r){return(t.sortLists?e.sorted():Array.from(e)).map((e=>this.normalize(e,t,r))).filter(n.isNotUndefined)}}t.VulnerabilityAdvisoryNormalizer=I;class B extends y{normalize(e,t,r){return{type:"element",name:r,children:[e.organizations.size>0?{type:"element",name:"organizations",children:this._factory.makeForOrganizationalEntity().normalizeIterable(e.organizations,t,"organization")}:void 0,e.individuals.size>0?{type:"element",name:"individuals",children:this._factory.makeForOrganizationalContact().normalizeIterable(e.individuals,t,"individual")}:void 0].filter(n.isNotUndefined)}}}t.VulnerabilityCreditsNormalizer=B;class j extends y{normalize(e,t,r){const o=e.response.size>0?{type:"element",name:"responses",children:(t.sortLists?e.response.sorted():Array.from(e.response)).map((e=>$(e,"response")))}:void 0;return{type:"element",name:r,children:[U(e.state,"state"),U(e.justification,"justification"),o,U(e.detail,"detail")].filter(n.isNotUndefined)}}}t.VulnerabilityAnalysisNormalizer=j;class V extends y{normalize(e,t,r){const o=e.versions.size>0?{type:"element",name:"versions",children:this._factory.makeForVulnerabilityAffectedVersion().normalizeIterable(e.versions,t,"version")}:void 0;return{type:"element",name:r,children:[$(e.ref,"ref"),o].filter(n.isNotUndefined)}}normalizeIterable(e,t,r){return(t.sortLists?e.sorted():Array.from(e)).map((e=>this.normalize(e,t,r)))}}t.VulnerabilityAffectNormalizer=V;class H extends y{normalize(e,t,r){switch(!0){case e instanceof p.AffectedSingleVersion:return this.#m(e,r);case e instanceof p.AffectedVersionRange:return this.#u(e,r);default:throw new TypeError("Unexpected Vulnerability AffectedVersion")}}#m(e,t){return{type:"element",name:t,children:[$(e.version,"version",d.normalizedString),U(e.status,"status")].filter(n.isNotUndefined)}}#u(e,t){return{type:"element",name:t,children:[$(e.range,"range",d.normalizedString),U(e.status,"status")].filter(n.isNotUndefined)}}normalizeIterable(e,t,r){return(t.sortLists?e.sorted():Array.from(e)).map((e=>this.normalize(e,t,r)))}}t.VulnerabilityAffectedVersionNormalizer=H;const G=e=>e;function U(e,t,r=G){const o=r(e?.toString()??"");return o.length>0?$(o,t):void 0}function $(e,t,r=G){return{type:"element",name:t,children:r(e.toString())}}function Y(e,t,r,o=G){const n=Array.from(e,(e=>$(e,r,o)));return t.sortLists&&n.sort((({children:e},{children:t})=>e.localeCompare(t))),n}function W(e,t,r=G){const o=e?.toISOString();return void 0===o?void 0:$(o,t,r)}},1507:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SortableNumbers=t.SortableStringables=t.SortableComparables=t.SortableSet=t.compareObjectsSymbol=void 0,t.compareObjectsSymbol=Symbol("internal compare function");class r extends Set{sorted(){return Array.from(this).sort(this[t.compareObjectsSymbol])}compare(e){const r=e.sorted(),o=this.sorted();if(o.length!==r.length)return o.length-r.length;for(let e=o.length-1;e>=0;--e){const n=this[t.compareObjectsSymbol](o[e],r[e]);if(0!==n)return n}return 0}}t.SortableSet=r;class o extends r{[t.compareObjectsSymbol](e,t){return e.constructor===t.constructor?e.compare(t):e.constructor.name.localeCompare(t.constructor.name)}}t.SortableComparables=o;class n extends r{[t.compareObjectsSymbol](e,t){return e.toString().localeCompare(t.toString())}}t.SortableStringables=n;class i extends r{[t.compareObjectsSymbol](e,t){return e-t}}t.SortableNumbers=i},1525:(e,t)=>{var r;Object.defineProperty(t,"__esModule",{value:!0}),t.HashAlgorithm=void 0,function(e){e.MD5="MD5",e["SHA-1"]="SHA-1",e["SHA-256"]="SHA-256",e["SHA-384"]="SHA-384",e["SHA-512"]="SHA-512",e["SHA3-256"]="SHA3-256",e["SHA3-384"]="SHA3-384",e["SHA3-512"]="SHA3-512",e["BLAKE2b-256"]="BLAKE2b-256",e["BLAKE2b-384"]="BLAKE2b-384",e["BLAKE2b-512"]="BLAKE2b-512",e.BLAKE3="BLAKE3"}(r||(t.HashAlgorithm=r={}))},1588:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.BomRefRepository=t.BomRef=void 0,t.BomRef=class{value;constructor(e){this.value=e}compare(e){return this.toString().localeCompare(e.toString())}toString(){return this.value??""}};class r extends Set{}t.BomRefRepository=r},1592:(e,t)=>{var r;Object.defineProperty(t,"__esModule",{value:!0}),t.AnalysisJustification=void 0,function(e){e.CodeNotPresent="code_not_present",e.CodeNotReachable="code_not_reachable",e.RequiresConfiguration="requires_configuration",e.RequiresDependency="requires_dependency",e.RequiresEnvironment="requires_environment",e.ProtectedByCompiler="protected_by_compiler",e.ProtectedAtRuntime="protected_at_runtime",e.ProtectedAtPerimeter="protected_at_perimeter",e.ProtectedByMitigatingControl="protected_by_mitigating_control"}(r||(t.AnalysisJustification=r={}))},1688:(e,t)=>{var r;Object.defineProperty(t,"__esModule",{value:!0}),t.LicenseAcknowledgement=void 0,function(e){e.Declared="declared",e.Concluded="concluded"}(r||(t.LicenseAcknowledgement=r={}))},1699:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t._Spec=void 0,t._Spec=class{#d;#f;#h;#y;#v;#b;#g;#S;#C;#z;#L;#x;#A;#_;#R;#P;#O;#N;#E;#M;constructor(e,t,r,o,n,i,s,a,l,c,p,m,u,d,f,h,y,v,b,g){this.#d=e,this.#f=new Set(t),this.#h=new Set(r),this.#y=new Set(o),this.#v=n,this.#b=new Set(i),this.#S=s,this.#C=a,this.#z=l,this.#L=c,this.#x=p,this.#g=new Set(m),this.#A=u,this.#_=d,this.#R=f,this.#P=h,this.#O=y,this.#N=v,this.#E=b,this.#M=g}get version(){return this.#d}supportsFormat(e){return this.#f.has(e)}supportsComponentType(e){return this.#h.has(e)}supportsHashAlgorithm(e){return this.#y.has(e)}supportsHashValue(e){return"string"==typeof e&&this.#v.test(e)}supportsExternalReferenceType(e){return this.#b.has(e)}get supportsDependencyGraph(){return this.#S}get supportsToolReferences(){return this.#C}get requiresComponentVersion(){return this.#z}supportsProperties(){return this.#L}get supportsVulnerabilities(){return this.#x}supportsVulnerabilityRatingMethod(e){return this.#g.has(e)}get supportsComponentEvidence(){return this.#A}get supportsMetadataLifecycles(){return this.#_}get supportsMetadataLicenses(){return this.#R}get supportsMetadataProperties(){return this.#P}get supportsExternalReferenceHashes(){return this.#O}get supportsLicenseAcknowledgement(){return this.#N}get supportsServices(){return this.#E}get supportsToolsComponentsServices(){return this.#M}}},1722:function(e,t,r){var o=this&&this.__createBinding||(Object.create?function(e,t,r,o){void 0===o&&(o=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,o,n)}:function(e,t,r,o){void 0===o&&(o=r),e[o]=t[r]}),n=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||o(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),n(r(7715),t)},1723:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.VulnerabilityAnalysisNormalizer=t.VulnerabilityAffectedVersionNormalizer=t.VulnerabilityAffectNormalizer=t.VulnerabilityCreditsNormalizer=t.VulnerabilityAdvisoryNormalizer=t.VulnerabilityRatingNormalizer=t.VulnerabilityReferenceNormalizer=t.VulnerabilitySourceNormalizer=t.VulnerabilityNormalizer=t.DependencyGraphNormalizer=t.PropertyNormalizer=t.AttachmentNormalizer=t.ExternalReferenceNormalizer=t.SWIDNormalizer=t.LicenseNormalizer=t.ComponentEvidenceNormalizer=t.ServiceNormalizer=t.ComponentNormalizer=t.OrganizationalEntityNormalizer=t.OrganizationalContactNormalizer=t.HashNormalizer=t.ToolsNormalizer=t.ToolNormalizer=t.LifecycleNormalizer=t.MetadataNormalizer=t.BomNormalizer=t.Factory=void 0;const o=r(1089),n=r(48),i=r(9027),s=r(7977),a=r(7988),l=r(4799),c=r(7645),p=r(785),m=r(4317),u=r(4196),d=r(3349);t.Factory=class{#i;constructor(e){this.#i=e}get spec(){return this.#i}makeForBom(){return new y(this)}makeForMetadata(){return new v(this)}makeForComponent(){return new x(this)}makeForService(){return new A(this)}makeForComponentEvidence(){return new _(this)}makeForLifecycle(){return new b(this)}makeForTool(){return new g(this)}makeForTools(){return new S(this)}makeForOrganizationalContact(){return new z(this)}makeForOrganizationalEntity(){return new L(this)}makeForHash(){return new C(this)}makeForLicense(){return new R(this)}makeForSWID(){return new P(this)}makeForExternalReference(){return new O(this)}makeForAttachment(){return new N(this)}makeForProperty(){return new E(this)}makeForDependencyGraph(){return new M(this)}makeForVulnerability(){return new w(this)}makeForVulnerabilitySource(){return new T(this)}makeForVulnerabilityReference(){return new D(this)}makeForVulnerabilityRating(){return new F(this)}makeForVulnerabilityAdvisory(){return new k(this)}makeForVulnerabilityCredits(){return new I(this)}makeForVulnerabilityAffect(){return new B(this)}makeForVulnerabilityAffectedVersion(){return new j(this)}makeForVulnerabilityAnalysis(){return new V(this)}};const f=new Map([[u.Version.v1dot6,"http://cyclonedx.org/schema/bom-1.6.schema.json"],[u.Version.v1dot5,"http://cyclonedx.org/schema/bom-1.5.schema.json"],[u.Version.v1dot4,"http://cyclonedx.org/schema/bom-1.4.schema.json"],[u.Version.v1dot3,"http://cyclonedx.org/schema/bom-1.3a.schema.json"],[u.Version.v1dot2,"http://cyclonedx.org/schema/bom-1.2b.schema.json"]]);class h{_factory;constructor(e){this._factory=e}get factory(){return this._factory}}class y extends h{normalize(e,t){return{$schema:f.get(this._factory.spec.version),bomFormat:"CycloneDX",specVersion:this._factory.spec.version,version:e.version,serialNumber:this.#s(e.serialNumber)?e.serialNumber:void 0,metadata:this._factory.makeForMetadata().normalize(e.metadata,t),components:e.components.size>0?this._factory.makeForComponent().normalizeIterable(e.components,t):[],services:this._factory.spec.supportsServices&&e.services.size>0?this._factory.makeForService().normalizeIterable(e.services,t):void 0,dependencies:this._factory.spec.supportsDependencyGraph?this._factory.makeForDependencyGraph().normalize(e,t):void 0,vulnerabilities:this._factory.spec.supportsVulnerabilities&&e.vulnerabilities.size>0?this._factory.makeForVulnerability().normalizeIterable(e.vulnerabilities,t):void 0}}#s(e){return void 0!==e&&/^urn:uuid:[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/.test(e)}}t.BomNormalizer=y;class v extends h{normalize(e,t){const r=this._factory.makeForOrganizationalEntity();return{timestamp:e.timestamp?.toISOString(),lifecycles:this._factory.spec.supportsMetadataLifecycles&&e.lifecycles.size>0?this._factory.makeForLifecycle().normalizeIterable(e.lifecycles,t):void 0,tools:e.tools.size>0?this._factory.makeForTools().normalize(e.tools,t):void 0,authors:e.authors.size>0?this._factory.makeForOrganizationalContact().normalizeIterable(e.authors,t):void 0,component:void 0===e.component?void 0:this._factory.makeForComponent().normalize(e.component,t),manufacture:void 0===e.manufacture?void 0:r.normalize(e.manufacture,t),supplier:void 0===e.supplier?void 0:r.normalize(e.supplier,t),licenses:this._factory.spec.supportsMetadataLicenses&&e.licenses.size>0?this._factory.makeForLicense().normalizeIterable(e.licenses,t):void 0,properties:this._factory.spec.supportsMetadataProperties&&e.properties.size>0?this._factory.makeForProperty().normalizeIterable(e.properties,t):void 0}}}t.MetadataNormalizer=v;class b extends h{normalize(e,t){return e instanceof l.NamedLifecycle?{name:e.name,description:e.description}:{phase:e}}normalizeIterable(e,t){return(t.sortLists?e.sorted():Array.from(e)).map((e=>this.normalize(e,t)))}}t.LifecycleNormalizer=b;class g extends h{normalize(e,t){return{vendor:e.vendor||void 0,name:e.name||void 0,version:e.version||void 0,hashes:e.hashes.size>0?this._factory.makeForHash().normalizeIterable(e.hashes,t):void 0,externalReferences:this._factory.spec.supportsToolReferences&&e.externalReferences.size>0?this._factory.makeForExternalReference().normalizeIterable(e.externalReferences,t):void 0}}normalizeIterable(e,t){return(t.sortLists?e.sorted():Array.from(e)).map((e=>this.normalize(e,t)))}}t.ToolNormalizer=g;class S extends h{normalize(e,t){return e.tools.size>0||!this._factory.spec.supportsToolsComponentsServices?this._factory.makeForTool().normalizeIterable(new c.ToolRepository((0,o.chainI)(Array.from(e.components,c.Tool.fromComponent),Array.from(e.services,c.Tool.fromService),e.tools)),t):{components:e.components.size>0?this._factory.makeForComponent().normalizeIterable(e.components,t):void 0,services:e.services.size>0?this._factory.makeForService().normalizeIterable(e.services,t):void 0}}}t.ToolsNormalizer=S;class C extends h{normalize([e,t],r){const o=this._factory.spec;return o.supportsHashAlgorithm(e)&&o.supportsHashValue(t)?{alg:e,content:t}:void 0}normalizeIterable(e,t){return(t.sortLists?e.sorted():Array.from(e)).map((e=>this.normalize(e,t))).filter(n.isNotUndefined)}}t.HashNormalizer=C;class z extends h{normalize(e,t){return{name:e.name||void 0,email:d.JsonSchema.isIdnEmail(e.email)?e.email:void 0,phone:e.phone||void 0}}normalizeIterable(e,t){return(t.sortLists?e.sorted():Array.from(e)).map((e=>this.normalize(e,t)))}}t.OrganizationalContactNormalizer=z;class L extends h{normalize(e,t){const r=H(Array.from(e.url,(e=>(0,s.escapeUri)(e.toString()))),t).filter(d.JsonSchema.isIriReference);return{name:e.name||void 0,url:r.length>0?r:void 0,contact:e.contact.size>0?this._factory.makeForOrganizationalContact().normalizeIterable(e.contact,t):void 0}}normalizeIterable(e,t){return(t.sortLists?e.sorted():Array.from(e)).map((e=>this.normalize(e,t)))}