@mitre/hdf-converters 2.12.6 → 3.0.0
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.
- package/README.md +139 -56
- package/dist/converters/aws-config-to-hdf/typescript/converter.d.ts +9 -0
- package/dist/converters/aws-config-to-hdf/typescript/converter.d.ts.map +1 -0
- package/dist/converters/aws-config-to-hdf/typescript/converter.js +132 -0
- package/dist/converters/aws-config-to-hdf/typescript/converter.js.map +1 -0
- package/dist/converters/aws-config-to-hdf/typescript/fingerprint.d.ts +10 -0
- package/dist/converters/aws-config-to-hdf/typescript/fingerprint.d.ts.map +1 -0
- package/dist/converters/aws-config-to-hdf/typescript/fingerprint.js +32 -0
- package/dist/converters/aws-config-to-hdf/typescript/fingerprint.js.map +1 -0
- package/dist/converters/aws-config-to-hdf/typescript/index.d.ts +2 -0
- package/dist/converters/aws-config-to-hdf/typescript/index.d.ts.map +1 -0
- package/dist/converters/aws-config-to-hdf/typescript/index.js +2 -0
- package/dist/converters/aws-config-to-hdf/typescript/index.js.map +1 -0
- package/dist/converters/burpsuite-to-hdf/typescript/converter.d.ts +11 -0
- package/dist/converters/burpsuite-to-hdf/typescript/converter.d.ts.map +1 -0
- package/dist/converters/burpsuite-to-hdf/typescript/converter.js +169 -0
- package/dist/converters/burpsuite-to-hdf/typescript/converter.js.map +1 -0
- package/dist/converters/burpsuite-to-hdf/typescript/fingerprint.d.ts +9 -0
- package/dist/converters/burpsuite-to-hdf/typescript/fingerprint.d.ts.map +1 -0
- package/dist/converters/burpsuite-to-hdf/typescript/fingerprint.js +33 -0
- package/dist/converters/burpsuite-to-hdf/typescript/fingerprint.js.map +1 -0
- package/dist/converters/burpsuite-to-hdf/typescript/index.d.ts +2 -0
- package/dist/converters/burpsuite-to-hdf/typescript/index.d.ts.map +1 -0
- package/dist/converters/burpsuite-to-hdf/typescript/index.js +2 -0
- package/dist/converters/burpsuite-to-hdf/typescript/index.js.map +1 -0
- package/dist/converters/conveyor-to-hdf/typescript/converter.d.ts +9 -0
- package/dist/converters/conveyor-to-hdf/typescript/converter.d.ts.map +1 -0
- package/dist/converters/conveyor-to-hdf/typescript/converter.js +206 -0
- package/dist/converters/conveyor-to-hdf/typescript/converter.js.map +1 -0
- package/dist/converters/conveyor-to-hdf/typescript/fingerprint.d.ts +10 -0
- package/dist/converters/conveyor-to-hdf/typescript/fingerprint.d.ts.map +1 -0
- package/dist/converters/conveyor-to-hdf/typescript/fingerprint.js +37 -0
- package/dist/converters/conveyor-to-hdf/typescript/fingerprint.js.map +1 -0
- package/dist/converters/conveyor-to-hdf/typescript/index.d.ts +2 -0
- package/dist/converters/conveyor-to-hdf/typescript/index.d.ts.map +1 -0
- package/dist/converters/conveyor-to-hdf/typescript/index.js +2 -0
- package/dist/converters/conveyor-to-hdf/typescript/index.js.map +1 -0
- package/dist/converters/cyclonedx-to-hdf/typescript/converter.d.ts +8 -0
- package/dist/converters/cyclonedx-to-hdf/typescript/converter.d.ts.map +1 -0
- package/dist/converters/cyclonedx-to-hdf/typescript/converter.js +199 -0
- package/dist/converters/cyclonedx-to-hdf/typescript/converter.js.map +1 -0
- package/dist/converters/cyclonedx-to-hdf/typescript/fingerprint.d.ts +10 -0
- package/dist/converters/cyclonedx-to-hdf/typescript/fingerprint.d.ts.map +1 -0
- package/dist/converters/cyclonedx-to-hdf/typescript/fingerprint.js +34 -0
- package/dist/converters/cyclonedx-to-hdf/typescript/fingerprint.js.map +1 -0
- package/dist/converters/cyclonedx-to-hdf/typescript/index.d.ts +2 -0
- package/dist/converters/cyclonedx-to-hdf/typescript/index.d.ts.map +1 -0
- package/dist/converters/cyclonedx-to-hdf/typescript/index.js +2 -0
- package/dist/converters/cyclonedx-to-hdf/typescript/index.js.map +1 -0
- package/dist/converters/dbprotect-to-hdf/typescript/converter.d.ts +10 -0
- package/dist/converters/dbprotect-to-hdf/typescript/converter.d.ts.map +1 -0
- package/dist/converters/dbprotect-to-hdf/typescript/converter.js +171 -0
- package/dist/converters/dbprotect-to-hdf/typescript/converter.js.map +1 -0
- package/dist/converters/dbprotect-to-hdf/typescript/fingerprint.d.ts +10 -0
- package/dist/converters/dbprotect-to-hdf/typescript/fingerprint.d.ts.map +1 -0
- package/dist/converters/dbprotect-to-hdf/typescript/fingerprint.js +35 -0
- package/dist/converters/dbprotect-to-hdf/typescript/fingerprint.js.map +1 -0
- package/dist/converters/dbprotect-to-hdf/typescript/index.d.ts +2 -0
- package/dist/converters/dbprotect-to-hdf/typescript/index.d.ts.map +1 -0
- package/dist/converters/dbprotect-to-hdf/typescript/index.js +2 -0
- package/dist/converters/dbprotect-to-hdf/typescript/index.js.map +1 -0
- package/dist/converters/deptrack-to-hdf/typescript/converter.d.ts +8 -0
- package/dist/converters/deptrack-to-hdf/typescript/converter.d.ts.map +1 -0
- package/dist/converters/deptrack-to-hdf/typescript/converter.js +120 -0
- package/dist/converters/deptrack-to-hdf/typescript/converter.js.map +1 -0
- package/dist/converters/deptrack-to-hdf/typescript/fingerprint.d.ts +10 -0
- package/dist/converters/deptrack-to-hdf/typescript/fingerprint.d.ts.map +1 -0
- package/dist/converters/deptrack-to-hdf/typescript/fingerprint.js +46 -0
- package/dist/converters/deptrack-to-hdf/typescript/fingerprint.js.map +1 -0
- package/dist/converters/deptrack-to-hdf/typescript/index.d.ts +2 -0
- package/dist/converters/deptrack-to-hdf/typescript/index.d.ts.map +1 -0
- package/dist/converters/deptrack-to-hdf/typescript/index.js +2 -0
- package/dist/converters/deptrack-to-hdf/typescript/index.js.map +1 -0
- package/dist/converters/fortify-to-hdf/typescript/converter.d.ts +12 -0
- package/dist/converters/fortify-to-hdf/typescript/converter.d.ts.map +1 -0
- package/dist/converters/fortify-to-hdf/typescript/converter.js +211 -0
- package/dist/converters/fortify-to-hdf/typescript/converter.js.map +1 -0
- package/dist/converters/fortify-to-hdf/typescript/fingerprint.d.ts +11 -0
- package/dist/converters/fortify-to-hdf/typescript/fingerprint.d.ts.map +1 -0
- package/dist/converters/fortify-to-hdf/typescript/fingerprint.js +42 -0
- package/dist/converters/fortify-to-hdf/typescript/fingerprint.js.map +1 -0
- package/dist/converters/fortify-to-hdf/typescript/index.d.ts +2 -0
- package/dist/converters/fortify-to-hdf/typescript/index.d.ts.map +1 -0
- package/dist/converters/fortify-to-hdf/typescript/index.js +2 -0
- package/dist/converters/fortify-to-hdf/typescript/index.js.map +1 -0
- package/dist/converters/gitlab-to-hdf/typescript/converter.d.ts +2 -0
- package/dist/converters/gitlab-to-hdf/typescript/converter.d.ts.map +1 -0
- package/dist/converters/gitlab-to-hdf/typescript/converter.js +222 -0
- package/dist/converters/gitlab-to-hdf/typescript/converter.js.map +1 -0
- package/dist/converters/gitlab-to-hdf/typescript/fingerprint.d.ts +10 -0
- package/dist/converters/gitlab-to-hdf/typescript/fingerprint.d.ts.map +1 -0
- package/dist/converters/gitlab-to-hdf/typescript/fingerprint.js +37 -0
- package/dist/converters/gitlab-to-hdf/typescript/fingerprint.js.map +1 -0
- package/dist/converters/gitlab-to-hdf/typescript/index.d.ts +2 -0
- package/dist/converters/gitlab-to-hdf/typescript/index.d.ts.map +1 -0
- package/dist/converters/gitlab-to-hdf/typescript/index.js +2 -0
- package/dist/converters/gitlab-to-hdf/typescript/index.js.map +1 -0
- package/dist/converters/gosec-to-hdf/typescript/converter.d.ts +10 -0
- package/dist/converters/gosec-to-hdf/typescript/converter.d.ts.map +1 -0
- package/dist/converters/gosec-to-hdf/typescript/converter.js +126 -0
- package/dist/converters/gosec-to-hdf/typescript/converter.js.map +1 -0
- package/dist/converters/gosec-to-hdf/typescript/fingerprint.d.ts +10 -0
- package/dist/converters/gosec-to-hdf/typescript/fingerprint.d.ts.map +1 -0
- package/dist/converters/gosec-to-hdf/typescript/fingerprint.js +32 -0
- package/dist/converters/gosec-to-hdf/typescript/fingerprint.js.map +1 -0
- package/dist/converters/gosec-to-hdf/typescript/index.d.ts +2 -0
- package/dist/converters/gosec-to-hdf/typescript/index.d.ts.map +1 -0
- package/dist/converters/gosec-to-hdf/typescript/index.js +2 -0
- package/dist/converters/gosec-to-hdf/typescript/index.js.map +1 -0
- package/dist/converters/grype-to-hdf/typescript/converter.d.ts +2 -0
- package/dist/converters/grype-to-hdf/typescript/converter.d.ts.map +1 -0
- package/dist/converters/grype-to-hdf/typescript/converter.js +222 -0
- package/dist/converters/grype-to-hdf/typescript/converter.js.map +1 -0
- package/dist/converters/grype-to-hdf/typescript/fingerprint.d.ts +10 -0
- package/dist/converters/grype-to-hdf/typescript/fingerprint.d.ts.map +1 -0
- package/dist/converters/grype-to-hdf/typescript/fingerprint.js +38 -0
- package/dist/converters/grype-to-hdf/typescript/fingerprint.js.map +1 -0
- package/dist/converters/grype-to-hdf/typescript/index.d.ts +2 -0
- package/dist/converters/grype-to-hdf/typescript/index.d.ts.map +1 -0
- package/dist/converters/grype-to-hdf/typescript/index.js +2 -0
- package/dist/converters/grype-to-hdf/typescript/index.js.map +1 -0
- package/dist/converters/hdf-to-csv/typescript/converter.d.ts +7 -0
- package/dist/converters/hdf-to-csv/typescript/converter.d.ts.map +1 -0
- package/dist/converters/hdf-to-csv/typescript/converter.js +108 -0
- package/dist/converters/hdf-to-csv/typescript/converter.js.map +1 -0
- package/dist/converters/hdf-to-csv/typescript/fingerprint.d.ts +10 -0
- package/dist/converters/hdf-to-csv/typescript/fingerprint.d.ts.map +1 -0
- package/dist/converters/hdf-to-csv/typescript/fingerprint.js +28 -0
- package/dist/converters/hdf-to-csv/typescript/fingerprint.js.map +1 -0
- package/dist/converters/hdf-to-csv/typescript/index.d.ts +2 -0
- package/dist/converters/hdf-to-csv/typescript/index.d.ts.map +1 -0
- package/dist/converters/hdf-to-csv/typescript/index.js +2 -0
- package/dist/converters/hdf-to-csv/typescript/index.js.map +1 -0
- package/dist/converters/hdf-to-oscal-poam/typescript/converter.d.ts +13 -0
- package/dist/converters/hdf-to-oscal-poam/typescript/converter.d.ts.map +1 -0
- package/dist/converters/hdf-to-oscal-poam/typescript/converter.js +156 -0
- package/dist/converters/hdf-to-oscal-poam/typescript/converter.js.map +1 -0
- package/dist/converters/hdf-to-oscal-poam/typescript/fingerprint.d.ts +10 -0
- package/dist/converters/hdf-to-oscal-poam/typescript/fingerprint.d.ts.map +1 -0
- package/dist/converters/hdf-to-oscal-poam/typescript/fingerprint.js +28 -0
- package/dist/converters/hdf-to-oscal-poam/typescript/fingerprint.js.map +1 -0
- package/dist/converters/hdf-to-oscal-poam/typescript/index.d.ts +2 -0
- package/dist/converters/hdf-to-oscal-poam/typescript/index.d.ts.map +1 -0
- package/dist/converters/hdf-to-oscal-poam/typescript/index.js +2 -0
- package/dist/converters/hdf-to-oscal-poam/typescript/index.js.map +1 -0
- package/dist/converters/hdf-to-oscal-sar/typescript/converter.d.ts +22 -0
- package/dist/converters/hdf-to-oscal-sar/typescript/converter.d.ts.map +1 -0
- package/dist/converters/hdf-to-oscal-sar/typescript/converter.js +276 -0
- package/dist/converters/hdf-to-oscal-sar/typescript/converter.js.map +1 -0
- package/dist/converters/hdf-to-oscal-sar/typescript/fingerprint.d.ts +10 -0
- package/dist/converters/hdf-to-oscal-sar/typescript/fingerprint.d.ts.map +1 -0
- package/dist/converters/hdf-to-oscal-sar/typescript/fingerprint.js +28 -0
- package/dist/converters/hdf-to-oscal-sar/typescript/fingerprint.js.map +1 -0
- package/dist/converters/hdf-to-oscal-sar/typescript/index.d.ts +2 -0
- package/dist/converters/hdf-to-oscal-sar/typescript/index.d.ts.map +1 -0
- package/dist/converters/hdf-to-oscal-sar/typescript/index.js +2 -0
- package/dist/converters/hdf-to-oscal-sar/typescript/index.js.map +1 -0
- package/dist/converters/hdf-to-xccdf/typescript/converter.d.ts +8 -0
- package/dist/converters/hdf-to-xccdf/typescript/converter.d.ts.map +1 -0
- package/dist/converters/hdf-to-xccdf/typescript/converter.js +186 -0
- package/dist/converters/hdf-to-xccdf/typescript/converter.js.map +1 -0
- package/dist/converters/hdf-to-xccdf/typescript/index.d.ts +2 -0
- package/dist/converters/hdf-to-xccdf/typescript/index.d.ts.map +1 -0
- package/dist/converters/hdf-to-xccdf/typescript/index.js +2 -0
- package/dist/converters/hdf-to-xccdf/typescript/index.js.map +1 -0
- package/dist/converters/hdf-to-xml/typescript/converter.d.ts +7 -0
- package/dist/converters/hdf-to-xml/typescript/converter.d.ts.map +1 -0
- package/dist/converters/hdf-to-xml/typescript/converter.js +140 -0
- package/dist/converters/hdf-to-xml/typescript/converter.js.map +1 -0
- package/dist/converters/hdf-to-xml/typescript/fingerprint.d.ts +10 -0
- package/dist/converters/hdf-to-xml/typescript/fingerprint.d.ts.map +1 -0
- package/dist/converters/hdf-to-xml/typescript/fingerprint.js +28 -0
- package/dist/converters/hdf-to-xml/typescript/fingerprint.js.map +1 -0
- package/dist/converters/hdf-to-xml/typescript/index.d.ts +2 -0
- package/dist/converters/hdf-to-xml/typescript/index.d.ts.map +1 -0
- package/dist/converters/hdf-to-xml/typescript/index.js +2 -0
- package/dist/converters/hdf-to-xml/typescript/index.js.map +1 -0
- package/dist/converters/hdf-v2-passthrough/typescript/fingerprint.d.ts +15 -0
- package/dist/converters/hdf-v2-passthrough/typescript/fingerprint.d.ts.map +1 -0
- package/dist/converters/hdf-v2-passthrough/typescript/fingerprint.js +33 -0
- package/dist/converters/hdf-v2-passthrough/typescript/fingerprint.js.map +1 -0
- package/dist/converters/ionchannel-to-hdf/typescript/converter.d.ts +2 -0
- package/dist/converters/ionchannel-to-hdf/typescript/converter.d.ts.map +1 -0
- package/dist/converters/ionchannel-to-hdf/typescript/converter.js +150 -0
- package/dist/converters/ionchannel-to-hdf/typescript/converter.js.map +1 -0
- package/dist/converters/ionchannel-to-hdf/typescript/fingerprint.d.ts +11 -0
- package/dist/converters/ionchannel-to-hdf/typescript/fingerprint.d.ts.map +1 -0
- package/dist/converters/ionchannel-to-hdf/typescript/fingerprint.js +41 -0
- package/dist/converters/ionchannel-to-hdf/typescript/fingerprint.js.map +1 -0
- package/dist/converters/ionchannel-to-hdf/typescript/index.d.ts +2 -0
- package/dist/converters/ionchannel-to-hdf/typescript/index.d.ts.map +1 -0
- package/dist/converters/ionchannel-to-hdf/typescript/index.js +2 -0
- package/dist/converters/ionchannel-to-hdf/typescript/index.js.map +1 -0
- package/dist/converters/jfrog-xray-to-hdf/typescript/converter.d.ts +8 -0
- package/dist/converters/jfrog-xray-to-hdf/typescript/converter.d.ts.map +1 -0
- package/dist/converters/jfrog-xray-to-hdf/typescript/converter.js +149 -0
- package/dist/converters/jfrog-xray-to-hdf/typescript/converter.js.map +1 -0
- package/dist/converters/jfrog-xray-to-hdf/typescript/fingerprint.d.ts +10 -0
- package/dist/converters/jfrog-xray-to-hdf/typescript/fingerprint.d.ts.map +1 -0
- package/dist/converters/jfrog-xray-to-hdf/typescript/fingerprint.js +28 -0
- package/dist/converters/jfrog-xray-to-hdf/typescript/fingerprint.js.map +1 -0
- package/dist/converters/jfrog-xray-to-hdf/typescript/index.d.ts +2 -0
- package/dist/converters/jfrog-xray-to-hdf/typescript/index.d.ts.map +1 -0
- package/dist/converters/jfrog-xray-to-hdf/typescript/index.js +2 -0
- package/dist/converters/jfrog-xray-to-hdf/typescript/index.js.map +1 -0
- package/dist/converters/junit-to-hdf/typescript/converter.d.ts +5 -0
- package/dist/converters/junit-to-hdf/typescript/converter.d.ts.map +1 -0
- package/dist/converters/junit-to-hdf/typescript/converter.js +142 -0
- package/dist/converters/junit-to-hdf/typescript/converter.js.map +1 -0
- package/dist/converters/junit-to-hdf/typescript/fingerprint.d.ts +9 -0
- package/dist/converters/junit-to-hdf/typescript/fingerprint.d.ts.map +1 -0
- package/dist/converters/junit-to-hdf/typescript/fingerprint.js +28 -0
- package/dist/converters/junit-to-hdf/typescript/fingerprint.js.map +1 -0
- package/dist/converters/junit-to-hdf/typescript/index.d.ts +2 -0
- package/dist/converters/junit-to-hdf/typescript/index.d.ts.map +1 -0
- package/dist/converters/junit-to-hdf/typescript/index.js +2 -0
- package/dist/converters/junit-to-hdf/typescript/index.js.map +1 -0
- package/dist/converters/legacyhdf-to-hdf/typescript/converter.d.ts +232 -0
- package/dist/converters/legacyhdf-to-hdf/typescript/converter.d.ts.map +1 -0
- package/dist/converters/legacyhdf-to-hdf/typescript/converter.js +418 -0
- package/dist/converters/legacyhdf-to-hdf/typescript/converter.js.map +1 -0
- package/dist/converters/legacyhdf-to-hdf/typescript/fingerprint.d.ts +17 -0
- package/dist/converters/legacyhdf-to-hdf/typescript/fingerprint.d.ts.map +1 -0
- package/dist/converters/legacyhdf-to-hdf/typescript/fingerprint.js +49 -0
- package/dist/converters/legacyhdf-to-hdf/typescript/fingerprint.js.map +1 -0
- package/dist/converters/legacyhdf-to-hdf/typescript/index.d.ts +8 -0
- package/dist/converters/legacyhdf-to-hdf/typescript/index.d.ts.map +1 -0
- package/dist/converters/legacyhdf-to-hdf/typescript/index.js +8 -0
- package/dist/converters/legacyhdf-to-hdf/typescript/index.js.map +1 -0
- package/dist/converters/msft-defender-cloud-to-hdf/typescript/converter.d.ts +8 -0
- package/dist/converters/msft-defender-cloud-to-hdf/typescript/converter.d.ts.map +1 -0
- package/dist/converters/msft-defender-cloud-to-hdf/typescript/converter.js +153 -0
- package/dist/converters/msft-defender-cloud-to-hdf/typescript/converter.js.map +1 -0
- package/dist/converters/msft-defender-cloud-to-hdf/typescript/fingerprint.d.ts +11 -0
- package/dist/converters/msft-defender-cloud-to-hdf/typescript/fingerprint.d.ts.map +1 -0
- package/dist/converters/msft-defender-cloud-to-hdf/typescript/fingerprint.js +37 -0
- package/dist/converters/msft-defender-cloud-to-hdf/typescript/fingerprint.js.map +1 -0
- package/dist/converters/msft-defender-cloud-to-hdf/typescript/index.d.ts +2 -0
- package/dist/converters/msft-defender-cloud-to-hdf/typescript/index.d.ts.map +1 -0
- package/dist/converters/msft-defender-cloud-to-hdf/typescript/index.js +2 -0
- package/dist/converters/msft-defender-cloud-to-hdf/typescript/index.js.map +1 -0
- package/dist/converters/msft-defender-devops-to-hdf/typescript/converter.d.ts +7 -0
- package/dist/converters/msft-defender-devops-to-hdf/typescript/converter.d.ts.map +1 -0
- package/dist/converters/msft-defender-devops-to-hdf/typescript/converter.js +126 -0
- package/dist/converters/msft-defender-devops-to-hdf/typescript/converter.js.map +1 -0
- package/dist/converters/msft-defender-devops-to-hdf/typescript/fingerprint.d.ts +13 -0
- package/dist/converters/msft-defender-devops-to-hdf/typescript/fingerprint.d.ts.map +1 -0
- package/dist/converters/msft-defender-devops-to-hdf/typescript/fingerprint.js +62 -0
- package/dist/converters/msft-defender-devops-to-hdf/typescript/fingerprint.js.map +1 -0
- package/dist/converters/msft-defender-devops-to-hdf/typescript/index.d.ts +2 -0
- package/dist/converters/msft-defender-devops-to-hdf/typescript/index.d.ts.map +1 -0
- package/dist/converters/msft-defender-devops-to-hdf/typescript/index.js +2 -0
- package/dist/converters/msft-defender-devops-to-hdf/typescript/index.js.map +1 -0
- package/dist/converters/msft-defender-endpoint-to-hdf/typescript/converter.d.ts +9 -0
- package/dist/converters/msft-defender-endpoint-to-hdf/typescript/converter.d.ts.map +1 -0
- package/dist/converters/msft-defender-endpoint-to-hdf/typescript/converter.js +194 -0
- package/dist/converters/msft-defender-endpoint-to-hdf/typescript/converter.js.map +1 -0
- package/dist/converters/msft-defender-endpoint-to-hdf/typescript/fingerprint.d.ts +11 -0
- package/dist/converters/msft-defender-endpoint-to-hdf/typescript/fingerprint.d.ts.map +1 -0
- package/dist/converters/msft-defender-endpoint-to-hdf/typescript/fingerprint.js +39 -0
- package/dist/converters/msft-defender-endpoint-to-hdf/typescript/fingerprint.js.map +1 -0
- package/dist/converters/msft-defender-endpoint-to-hdf/typescript/index.d.ts +2 -0
- package/dist/converters/msft-defender-endpoint-to-hdf/typescript/index.d.ts.map +1 -0
- package/dist/converters/msft-defender-endpoint-to-hdf/typescript/index.js +2 -0
- package/dist/converters/msft-defender-endpoint-to-hdf/typescript/index.js.map +1 -0
- package/dist/converters/msft-secure-score-to-hdf/typescript/converter.d.ts +11 -0
- package/dist/converters/msft-secure-score-to-hdf/typescript/converter.d.ts.map +1 -0
- package/dist/converters/msft-secure-score-to-hdf/typescript/converter.js +160 -0
- package/dist/converters/msft-secure-score-to-hdf/typescript/converter.js.map +1 -0
- package/dist/converters/msft-secure-score-to-hdf/typescript/fingerprint.d.ts +11 -0
- package/dist/converters/msft-secure-score-to-hdf/typescript/fingerprint.d.ts.map +1 -0
- package/dist/converters/msft-secure-score-to-hdf/typescript/fingerprint.js +41 -0
- package/dist/converters/msft-secure-score-to-hdf/typescript/fingerprint.js.map +1 -0
- package/dist/converters/msft-secure-score-to-hdf/typescript/index.d.ts +2 -0
- package/dist/converters/msft-secure-score-to-hdf/typescript/index.d.ts.map +1 -0
- package/dist/converters/msft-secure-score-to-hdf/typescript/index.js +2 -0
- package/dist/converters/msft-secure-score-to-hdf/typescript/index.js.map +1 -0
- package/dist/converters/nessus-to-hdf/typescript/converter.d.ts +6 -0
- package/dist/converters/nessus-to-hdf/typescript/converter.d.ts.map +1 -0
- package/dist/converters/nessus-to-hdf/typescript/converter.js +329 -0
- package/dist/converters/nessus-to-hdf/typescript/converter.js.map +1 -0
- package/dist/converters/nessus-to-hdf/typescript/fingerprint.d.ts +9 -0
- package/dist/converters/nessus-to-hdf/typescript/fingerprint.d.ts.map +1 -0
- package/dist/converters/nessus-to-hdf/typescript/fingerprint.js +34 -0
- package/dist/converters/nessus-to-hdf/typescript/fingerprint.js.map +1 -0
- package/dist/converters/nessus-to-hdf/typescript/index.d.ts +2 -0
- package/dist/converters/nessus-to-hdf/typescript/index.d.ts.map +1 -0
- package/dist/converters/nessus-to-hdf/typescript/index.js +2 -0
- package/dist/converters/nessus-to-hdf/typescript/index.js.map +1 -0
- package/dist/converters/netsparker-to-hdf/typescript/converter.d.ts +9 -0
- package/dist/converters/netsparker-to-hdf/typescript/converter.d.ts.map +1 -0
- package/dist/converters/netsparker-to-hdf/typescript/converter.js +211 -0
- package/dist/converters/netsparker-to-hdf/typescript/converter.js.map +1 -0
- package/dist/converters/netsparker-to-hdf/typescript/fingerprint.d.ts +10 -0
- package/dist/converters/netsparker-to-hdf/typescript/fingerprint.d.ts.map +1 -0
- package/dist/converters/netsparker-to-hdf/typescript/fingerprint.js +29 -0
- package/dist/converters/netsparker-to-hdf/typescript/fingerprint.js.map +1 -0
- package/dist/converters/netsparker-to-hdf/typescript/index.d.ts +2 -0
- package/dist/converters/netsparker-to-hdf/typescript/index.d.ts.map +1 -0
- package/dist/converters/netsparker-to-hdf/typescript/index.js +2 -0
- package/dist/converters/netsparker-to-hdf/typescript/index.js.map +1 -0
- package/dist/converters/neuvector-to-hdf/typescript/converter.d.ts +16 -0
- package/dist/converters/neuvector-to-hdf/typescript/converter.d.ts.map +1 -0
- package/dist/converters/neuvector-to-hdf/typescript/converter.js +148 -0
- package/dist/converters/neuvector-to-hdf/typescript/converter.js.map +1 -0
- package/dist/converters/neuvector-to-hdf/typescript/fingerprint.d.ts +11 -0
- package/dist/converters/neuvector-to-hdf/typescript/fingerprint.d.ts.map +1 -0
- package/dist/converters/neuvector-to-hdf/typescript/fingerprint.js +37 -0
- package/dist/converters/neuvector-to-hdf/typescript/fingerprint.js.map +1 -0
- package/dist/converters/neuvector-to-hdf/typescript/index.d.ts +2 -0
- package/dist/converters/neuvector-to-hdf/typescript/index.d.ts.map +1 -0
- package/dist/converters/neuvector-to-hdf/typescript/index.js +2 -0
- package/dist/converters/neuvector-to-hdf/typescript/index.js.map +1 -0
- package/dist/converters/nikto-to-hdf/typescript/converter.d.ts +2 -0
- package/dist/converters/nikto-to-hdf/typescript/converter.d.ts.map +1 -0
- package/dist/converters/nikto-to-hdf/typescript/converter.js +111 -0
- package/dist/converters/nikto-to-hdf/typescript/converter.js.map +1 -0
- package/dist/converters/nikto-to-hdf/typescript/fingerprint.d.ts +10 -0
- package/dist/converters/nikto-to-hdf/typescript/fingerprint.d.ts.map +1 -0
- package/dist/converters/nikto-to-hdf/typescript/fingerprint.js +33 -0
- package/dist/converters/nikto-to-hdf/typescript/fingerprint.js.map +1 -0
- package/dist/converters/nikto-to-hdf/typescript/index.d.ts +2 -0
- package/dist/converters/nikto-to-hdf/typescript/index.d.ts.map +1 -0
- package/dist/converters/nikto-to-hdf/typescript/index.js +2 -0
- package/dist/converters/nikto-to-hdf/typescript/index.js.map +1 -0
- package/dist/converters/oscal-to-hdf/typescript/converter-catalog.d.ts +20 -0
- package/dist/converters/oscal-to-hdf/typescript/converter-catalog.d.ts.map +1 -0
- package/dist/converters/oscal-to-hdf/typescript/converter-catalog.js +134 -0
- package/dist/converters/oscal-to-hdf/typescript/converter-catalog.js.map +1 -0
- package/dist/converters/oscal-to-hdf/typescript/converter-component.d.ts +13 -0
- package/dist/converters/oscal-to-hdf/typescript/converter-component.d.ts.map +1 -0
- package/dist/converters/oscal-to-hdf/typescript/converter-component.js +92 -0
- package/dist/converters/oscal-to-hdf/typescript/converter-component.js.map +1 -0
- package/dist/converters/oscal-to-hdf/typescript/converter-poam.d.ts +13 -0
- package/dist/converters/oscal-to-hdf/typescript/converter-poam.d.ts.map +1 -0
- package/dist/converters/oscal-to-hdf/typescript/converter-poam.js +196 -0
- package/dist/converters/oscal-to-hdf/typescript/converter-poam.js.map +1 -0
- package/dist/converters/oscal-to-hdf/typescript/converter-profile.d.ts +26 -0
- package/dist/converters/oscal-to-hdf/typescript/converter-profile.d.ts.map +1 -0
- package/dist/converters/oscal-to-hdf/typescript/converter-profile.js +239 -0
- package/dist/converters/oscal-to-hdf/typescript/converter-profile.js.map +1 -0
- package/dist/converters/oscal-to-hdf/typescript/converter-sap.d.ts +13 -0
- package/dist/converters/oscal-to-hdf/typescript/converter-sap.d.ts.map +1 -0
- package/dist/converters/oscal-to-hdf/typescript/converter-sap.js +196 -0
- package/dist/converters/oscal-to-hdf/typescript/converter-sap.js.map +1 -0
- package/dist/converters/oscal-to-hdf/typescript/converter-sar.d.ts +13 -0
- package/dist/converters/oscal-to-hdf/typescript/converter-sar.d.ts.map +1 -0
- package/dist/converters/oscal-to-hdf/typescript/converter-sar.js +270 -0
- package/dist/converters/oscal-to-hdf/typescript/converter-sar.js.map +1 -0
- package/dist/converters/oscal-to-hdf/typescript/converter-ssp.d.ts +13 -0
- package/dist/converters/oscal-to-hdf/typescript/converter-ssp.d.ts.map +1 -0
- package/dist/converters/oscal-to-hdf/typescript/converter-ssp.js +246 -0
- package/dist/converters/oscal-to-hdf/typescript/converter-ssp.js.map +1 -0
- package/dist/converters/oscal-to-hdf/typescript/detect.d.ts +15 -0
- package/dist/converters/oscal-to-hdf/typescript/detect.d.ts.map +1 -0
- package/dist/converters/oscal-to-hdf/typescript/detect.js +33 -0
- package/dist/converters/oscal-to-hdf/typescript/detect.js.map +1 -0
- package/dist/converters/oscal-to-hdf/typescript/fingerprint.d.ts +12 -0
- package/dist/converters/oscal-to-hdf/typescript/fingerprint.d.ts.map +1 -0
- package/dist/converters/oscal-to-hdf/typescript/fingerprint.js +57 -0
- package/dist/converters/oscal-to-hdf/typescript/fingerprint.js.map +1 -0
- package/dist/converters/oscal-to-hdf/typescript/index.d.ts +9 -0
- package/dist/converters/oscal-to-hdf/typescript/index.d.ts.map +1 -0
- package/dist/converters/oscal-to-hdf/typescript/index.js +9 -0
- package/dist/converters/oscal-to-hdf/typescript/index.js.map +1 -0
- package/dist/converters/oscal-to-hdf/typescript/shared.d.ts +85 -0
- package/dist/converters/oscal-to-hdf/typescript/shared.d.ts.map +1 -0
- package/dist/converters/oscal-to-hdf/typescript/shared.js +251 -0
- package/dist/converters/oscal-to-hdf/typescript/shared.js.map +1 -0
- package/dist/converters/oscal-to-hdf/typescript/types.d.ts +5372 -0
- package/dist/converters/oscal-to-hdf/typescript/types.d.ts.map +1 -0
- package/dist/converters/oscal-to-hdf/typescript/types.js +2340 -0
- package/dist/converters/oscal-to-hdf/typescript/types.js.map +1 -0
- package/dist/converters/prisma-to-hdf/typescript/converter.d.ts +16 -0
- package/dist/converters/prisma-to-hdf/typescript/converter.d.ts.map +1 -0
- package/dist/converters/prisma-to-hdf/typescript/converter.js +197 -0
- package/dist/converters/prisma-to-hdf/typescript/converter.js.map +1 -0
- package/dist/converters/prisma-to-hdf/typescript/fingerprint.d.ts +10 -0
- package/dist/converters/prisma-to-hdf/typescript/fingerprint.d.ts.map +1 -0
- package/dist/converters/prisma-to-hdf/typescript/fingerprint.js +39 -0
- package/dist/converters/prisma-to-hdf/typescript/fingerprint.js.map +1 -0
- package/dist/converters/prisma-to-hdf/typescript/index.d.ts +2 -0
- package/dist/converters/prisma-to-hdf/typescript/index.d.ts.map +1 -0
- package/dist/converters/prisma-to-hdf/typescript/index.js +2 -0
- package/dist/converters/prisma-to-hdf/typescript/index.js.map +1 -0
- package/dist/converters/sarif-to-hdf/typescript/converter.d.ts +2 -0
- package/dist/converters/sarif-to-hdf/typescript/converter.d.ts.map +1 -0
- package/dist/converters/sarif-to-hdf/typescript/converter.js +406 -0
- package/dist/converters/sarif-to-hdf/typescript/converter.js.map +1 -0
- package/dist/converters/sarif-to-hdf/typescript/fingerprint.d.ts +10 -0
- package/dist/converters/sarif-to-hdf/typescript/fingerprint.d.ts.map +1 -0
- package/dist/converters/sarif-to-hdf/typescript/fingerprint.js +34 -0
- package/dist/converters/sarif-to-hdf/typescript/fingerprint.js.map +1 -0
- package/dist/converters/sarif-to-hdf/typescript/index.d.ts +2 -0
- package/dist/converters/sarif-to-hdf/typescript/index.d.ts.map +1 -0
- package/dist/converters/sarif-to-hdf/typescript/index.js +2 -0
- package/dist/converters/sarif-to-hdf/typescript/index.js.map +1 -0
- package/dist/converters/scoutsuite-to-hdf/typescript/converter.d.ts +9 -0
- package/dist/converters/scoutsuite-to-hdf/typescript/converter.d.ts.map +1 -0
- package/dist/converters/scoutsuite-to-hdf/typescript/converter.js +173 -0
- package/dist/converters/scoutsuite-to-hdf/typescript/converter.js.map +1 -0
- package/dist/converters/scoutsuite-to-hdf/typescript/fingerprint.d.ts +10 -0
- package/dist/converters/scoutsuite-to-hdf/typescript/fingerprint.d.ts.map +1 -0
- package/dist/converters/scoutsuite-to-hdf/typescript/fingerprint.js +29 -0
- package/dist/converters/scoutsuite-to-hdf/typescript/fingerprint.js.map +1 -0
- package/dist/converters/scoutsuite-to-hdf/typescript/index.d.ts +2 -0
- package/dist/converters/scoutsuite-to-hdf/typescript/index.d.ts.map +1 -0
- package/dist/converters/scoutsuite-to-hdf/typescript/index.js +2 -0
- package/dist/converters/scoutsuite-to-hdf/typescript/index.js.map +1 -0
- package/dist/converters/snyk-to-hdf/typescript/converter.d.ts +11 -0
- package/dist/converters/snyk-to-hdf/typescript/converter.d.ts.map +1 -0
- package/dist/converters/snyk-to-hdf/typescript/converter.js +131 -0
- package/dist/converters/snyk-to-hdf/typescript/converter.js.map +1 -0
- package/dist/converters/snyk-to-hdf/typescript/fingerprint.d.ts +12 -0
- package/dist/converters/snyk-to-hdf/typescript/fingerprint.d.ts.map +1 -0
- package/dist/converters/snyk-to-hdf/typescript/fingerprint.js +44 -0
- package/dist/converters/snyk-to-hdf/typescript/fingerprint.js.map +1 -0
- package/dist/converters/snyk-to-hdf/typescript/index.d.ts +2 -0
- package/dist/converters/snyk-to-hdf/typescript/index.d.ts.map +1 -0
- package/dist/converters/snyk-to-hdf/typescript/index.js +2 -0
- package/dist/converters/snyk-to-hdf/typescript/index.js.map +1 -0
- package/dist/converters/sonarqube-to-hdf/typescript/converter.d.ts +8 -0
- package/dist/converters/sonarqube-to-hdf/typescript/converter.d.ts.map +1 -0
- package/dist/converters/sonarqube-to-hdf/typescript/converter.js +266 -0
- package/dist/converters/sonarqube-to-hdf/typescript/converter.js.map +1 -0
- package/dist/converters/sonarqube-to-hdf/typescript/fingerprint.d.ts +10 -0
- package/dist/converters/sonarqube-to-hdf/typescript/fingerprint.d.ts.map +1 -0
- package/dist/converters/sonarqube-to-hdf/typescript/fingerprint.js +35 -0
- package/dist/converters/sonarqube-to-hdf/typescript/fingerprint.js.map +1 -0
- package/dist/converters/sonarqube-to-hdf/typescript/index.d.ts +2 -0
- package/dist/converters/sonarqube-to-hdf/typescript/index.d.ts.map +1 -0
- package/dist/converters/sonarqube-to-hdf/typescript/index.js +2 -0
- package/dist/converters/sonarqube-to-hdf/typescript/index.js.map +1 -0
- package/dist/converters/splunk-to-hdf/typescript/converter.d.ts +13 -0
- package/dist/converters/splunk-to-hdf/typescript/converter.d.ts.map +1 -0
- package/dist/converters/splunk-to-hdf/typescript/converter.js +165 -0
- package/dist/converters/splunk-to-hdf/typescript/converter.js.map +1 -0
- package/dist/converters/splunk-to-hdf/typescript/fingerprint.d.ts +11 -0
- package/dist/converters/splunk-to-hdf/typescript/fingerprint.d.ts.map +1 -0
- package/dist/converters/splunk-to-hdf/typescript/fingerprint.js +36 -0
- package/dist/converters/splunk-to-hdf/typescript/fingerprint.js.map +1 -0
- package/dist/converters/splunk-to-hdf/typescript/index.d.ts +2 -0
- package/dist/converters/splunk-to-hdf/typescript/index.d.ts.map +1 -0
- package/dist/converters/splunk-to-hdf/typescript/index.js +2 -0
- package/dist/converters/splunk-to-hdf/typescript/index.js.map +1 -0
- package/dist/converters/trufflehog-to-hdf/typescript/converter.d.ts +9 -0
- package/dist/converters/trufflehog-to-hdf/typescript/converter.d.ts.map +1 -0
- package/dist/converters/trufflehog-to-hdf/typescript/converter.js +189 -0
- package/dist/converters/trufflehog-to-hdf/typescript/converter.js.map +1 -0
- package/dist/converters/trufflehog-to-hdf/typescript/fingerprint.d.ts +18 -0
- package/dist/converters/trufflehog-to-hdf/typescript/fingerprint.d.ts.map +1 -0
- package/dist/converters/trufflehog-to-hdf/typescript/fingerprint.js +50 -0
- package/dist/converters/trufflehog-to-hdf/typescript/fingerprint.js.map +1 -0
- package/dist/converters/trufflehog-to-hdf/typescript/index.d.ts +2 -0
- package/dist/converters/trufflehog-to-hdf/typescript/index.d.ts.map +1 -0
- package/dist/converters/trufflehog-to-hdf/typescript/index.js +2 -0
- package/dist/converters/trufflehog-to-hdf/typescript/index.js.map +1 -0
- package/dist/converters/twistlock-to-hdf/typescript/converter.d.ts +11 -0
- package/dist/converters/twistlock-to-hdf/typescript/converter.d.ts.map +1 -0
- package/dist/converters/twistlock-to-hdf/typescript/converter.js +153 -0
- package/dist/converters/twistlock-to-hdf/typescript/converter.js.map +1 -0
- package/dist/converters/twistlock-to-hdf/typescript/fingerprint.d.ts +18 -0
- package/dist/converters/twistlock-to-hdf/typescript/fingerprint.d.ts.map +1 -0
- package/dist/converters/twistlock-to-hdf/typescript/fingerprint.js +49 -0
- package/dist/converters/twistlock-to-hdf/typescript/fingerprint.js.map +1 -0
- package/dist/converters/twistlock-to-hdf/typescript/index.d.ts +2 -0
- package/dist/converters/twistlock-to-hdf/typescript/index.d.ts.map +1 -0
- package/dist/converters/twistlock-to-hdf/typescript/index.js +2 -0
- package/dist/converters/twistlock-to-hdf/typescript/index.js.map +1 -0
- package/dist/converters/veracode-to-hdf/typescript/converter.d.ts +20 -0
- package/dist/converters/veracode-to-hdf/typescript/converter.d.ts.map +1 -0
- package/dist/converters/veracode-to-hdf/typescript/converter.js +350 -0
- package/dist/converters/veracode-to-hdf/typescript/converter.js.map +1 -0
- package/dist/converters/veracode-to-hdf/typescript/fingerprint.d.ts +16 -0
- package/dist/converters/veracode-to-hdf/typescript/fingerprint.d.ts.map +1 -0
- package/dist/converters/veracode-to-hdf/typescript/fingerprint.js +35 -0
- package/dist/converters/veracode-to-hdf/typescript/fingerprint.js.map +1 -0
- package/dist/converters/veracode-to-hdf/typescript/index.d.ts +2 -0
- package/dist/converters/veracode-to-hdf/typescript/index.d.ts.map +1 -0
- package/dist/converters/veracode-to-hdf/typescript/index.js +2 -0
- package/dist/converters/veracode-to-hdf/typescript/index.js.map +1 -0
- package/dist/converters/xccdf-results-to-hdf/typescript/converter.d.ts +29 -0
- package/dist/converters/xccdf-results-to-hdf/typescript/converter.d.ts.map +1 -0
- package/dist/converters/xccdf-results-to-hdf/typescript/converter.js +604 -0
- package/dist/converters/xccdf-results-to-hdf/typescript/converter.js.map +1 -0
- package/dist/converters/xccdf-results-to-hdf/typescript/fingerprint.d.ts +12 -0
- package/dist/converters/xccdf-results-to-hdf/typescript/fingerprint.d.ts.map +1 -0
- package/dist/converters/xccdf-results-to-hdf/typescript/fingerprint.js +33 -0
- package/dist/converters/xccdf-results-to-hdf/typescript/fingerprint.js.map +1 -0
- package/dist/converters/xccdf-results-to-hdf/typescript/index.d.ts +2 -0
- package/dist/converters/xccdf-results-to-hdf/typescript/index.d.ts.map +1 -0
- package/dist/converters/xccdf-results-to-hdf/typescript/index.js +2 -0
- package/dist/converters/xccdf-results-to-hdf/typescript/index.js.map +1 -0
- package/dist/converters/zap-to-hdf/typescript/converter.d.ts +2 -0
- package/dist/converters/zap-to-hdf/typescript/converter.d.ts.map +1 -0
- package/dist/converters/zap-to-hdf/typescript/converter.js +237 -0
- package/dist/converters/zap-to-hdf/typescript/converter.js.map +1 -0
- package/dist/converters/zap-to-hdf/typescript/fingerprint.d.ts +11 -0
- package/dist/converters/zap-to-hdf/typescript/fingerprint.d.ts.map +1 -0
- package/dist/converters/zap-to-hdf/typescript/fingerprint.js +34 -0
- package/dist/converters/zap-to-hdf/typescript/fingerprint.js.map +1 -0
- package/dist/converters/zap-to-hdf/typescript/index.d.ts +2 -0
- package/dist/converters/zap-to-hdf/typescript/index.d.ts.map +1 -0
- package/dist/converters/zap-to-hdf/typescript/index.js +2 -0
- package/dist/converters/zap-to-hdf/typescript/index.js.map +1 -0
- package/dist/package.json +71 -0
- package/dist/shared/typescript/compare.d.ts +14 -0
- package/dist/shared/typescript/compare.d.ts.map +1 -0
- package/dist/shared/typescript/compare.js +91 -0
- package/dist/shared/typescript/compare.js.map +1 -0
- package/dist/shared/typescript/converter-contract.d.ts +20 -0
- package/dist/shared/typescript/converter-contract.d.ts.map +1 -0
- package/dist/shared/typescript/converter-contract.js +35 -0
- package/dist/shared/typescript/converter-contract.js.map +1 -0
- package/dist/shared/typescript/converterutil.d.ts +166 -0
- package/dist/shared/typescript/converterutil.d.ts.map +1 -0
- package/dist/shared/typescript/converterutil.js +230 -0
- package/dist/shared/typescript/converterutil.js.map +1 -0
- package/dist/shared/typescript/fingerprint.d.ts +17 -0
- package/dist/shared/typescript/fingerprint.d.ts.map +1 -0
- package/dist/shared/typescript/fingerprint.js +85 -0
- package/dist/shared/typescript/fingerprint.js.map +1 -0
- package/dist/shared/typescript/fptest.d.ts +40 -0
- package/dist/shared/typescript/fptest.d.ts.map +1 -0
- package/dist/shared/typescript/fptest.js +70 -0
- package/dist/shared/typescript/fptest.js.map +1 -0
- package/dist/shared/typescript/hdf-version.d.ts +20 -0
- package/dist/shared/typescript/hdf-version.d.ts.map +1 -0
- package/dist/shared/typescript/hdf-version.js +206 -0
- package/dist/shared/typescript/hdf-version.js.map +1 -0
- package/dist/shared/typescript/register-all.d.ts +12 -0
- package/dist/shared/typescript/register-all.d.ts.map +1 -0
- package/dist/shared/typescript/register-all.js +111 -0
- package/dist/shared/typescript/register-all.js.map +1 -0
- package/dist/shared/typescript/registry.d.ts +35 -0
- package/dist/shared/typescript/registry.d.ts.map +1 -0
- package/dist/shared/typescript/registry.js +27 -0
- package/dist/shared/typescript/registry.js.map +1 -0
- package/dist/shared/typescript/xml-utils.d.ts +16 -0
- package/dist/shared/typescript/xml-utils.d.ts.map +1 -0
- package/dist/shared/typescript/xml-utils.js +66 -0
- package/dist/shared/typescript/xml-utils.js.map +1 -0
- package/dist/src/detect.d.ts +15 -0
- package/dist/src/detect.d.ts.map +1 -0
- package/dist/src/detect.js +15 -0
- package/dist/src/detect.js.map +1 -0
- package/dist/src/index.d.ts +52 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/index.js +91 -0
- package/dist/src/index.js.map +1 -0
- package/package.json +60 -86
- package/LICENSE.md +0 -9
- package/lib/data/converters/csv2json.d.ts +0 -1
- package/lib/data/converters/csv2json.js +0 -36
- package/lib/data/converters/csv2json.js.map +0 -1
- package/lib/data/converters/csv2json.ts +0 -36
- package/lib/data/converters/xml2json.d.ts +0 -14
- package/lib/data/converters/xml2json.js +0 -65
- package/lib/data/converters/xml2json.js.map +0 -1
- package/lib/data/converters/xml2json.ts +0 -57
- package/lib/index.d.ts +0 -48
- package/lib/index.js +0 -79
- package/lib/index.js.map +0 -1
- package/lib/package.json +0 -97
- package/lib/src/anchore-grype-mapper.d.ts +0 -11
- package/lib/src/anchore-grype-mapper.js +0 -172
- package/lib/src/anchore-grype-mapper.js.map +0 -1
- package/lib/src/asff-mapper/asff-mapper.d.ts +0 -111
- package/lib/src/asff-mapper/asff-mapper.js +0 -512
- package/lib/src/asff-mapper/asff-mapper.js.map +0 -1
- package/lib/src/asff-mapper/case-cms-inspec.d.ts +0 -1
- package/lib/src/asff-mapper/case-cms-inspec.js +0 -74
- package/lib/src/asff-mapper/case-cms-inspec.js.map +0 -1
- package/lib/src/asff-mapper/case-firewall-manager.d.ts +0 -1
- package/lib/src/asff-mapper/case-firewall-manager.js +0 -47
- package/lib/src/asff-mapper/case-firewall-manager.js.map +0 -1
- package/lib/src/asff-mapper/case-guardduty.d.ts +0 -1
- package/lib/src/asff-mapper/case-guardduty.js +0 -38
- package/lib/src/asff-mapper/case-guardduty.js.map +0 -1
- package/lib/src/asff-mapper/case-inspector.d.ts +0 -1
- package/lib/src/asff-mapper/case-inspector.js +0 -38
- package/lib/src/asff-mapper/case-inspector.js.map +0 -1
- package/lib/src/asff-mapper/case-previously-hdf.d.ts +0 -1
- package/lib/src/asff-mapper/case-previously-hdf.js +0 -228
- package/lib/src/asff-mapper/case-previously-hdf.js.map +0 -1
- package/lib/src/asff-mapper/case-prowler.d.ts +0 -1
- package/lib/src/asff-mapper/case-prowler.js +0 -59
- package/lib/src/asff-mapper/case-prowler.js.map +0 -1
- package/lib/src/asff-mapper/case-security-hub.d.ts +0 -1
- package/lib/src/asff-mapper/case-security-hub.js +0 -158
- package/lib/src/asff-mapper/case-security-hub.js.map +0 -1
- package/lib/src/asff-mapper/case-trivy.d.ts +0 -1
- package/lib/src/asff-mapper/case-trivy.js +0 -92
- package/lib/src/asff-mapper/case-trivy.js.map +0 -1
- package/lib/src/aws-config-mapper.d.ts +0 -26
- package/lib/src/aws-config-mapper.js +0 -373
- package/lib/src/aws-config-mapper.js.map +0 -1
- package/lib/src/base-converter.d.ts +0 -39
- package/lib/src/base-converter.js +0 -315
- package/lib/src/base-converter.js.map +0 -1
- package/lib/src/burpsuite-mapper.d.ts +0 -9
- package/lib/src/burpsuite-mapper.js +0 -168
- package/lib/src/burpsuite-mapper.js.map +0 -1
- package/lib/src/ckl-mapper/checklist-jsonix-converter.d.ts +0 -114
- package/lib/src/ckl-mapper/checklist-jsonix-converter.js +0 -570
- package/lib/src/ckl-mapper/checklist-jsonix-converter.js.map +0 -1
- package/lib/src/ckl-mapper/checklist-mapper.d.ts +0 -22
- package/lib/src/ckl-mapper/checklist-mapper.js +0 -407
- package/lib/src/ckl-mapper/checklist-mapper.js.map +0 -1
- package/lib/src/ckl-mapper/checklist-metadata-utils.d.ts +0 -19
- package/lib/src/ckl-mapper/checklist-metadata-utils.js +0 -164
- package/lib/src/ckl-mapper/checklist-metadata-utils.js.map +0 -1
- package/lib/src/ckl-mapper/checklistJsonix.d.ts +0 -204
- package/lib/src/ckl-mapper/checklistJsonix.js +0 -131
- package/lib/src/ckl-mapper/checklistJsonix.js.map +0 -1
- package/lib/src/ckl-mapper/jsonixMapping.d.ts +0 -110
- package/lib/src/ckl-mapper/jsonixMapping.js +0 -586
- package/lib/src/ckl-mapper/jsonixMapping.js.map +0 -1
- package/lib/src/converters-from-hdf/asff/asff-types.d.ts +0 -89
- package/lib/src/converters-from-hdf/asff/asff-types.js +0 -3
- package/lib/src/converters-from-hdf/asff/asff-types.js.map +0 -1
- package/lib/src/converters-from-hdf/asff/reverse-asff-mapper.d.ts +0 -38
- package/lib/src/converters-from-hdf/asff/reverse-asff-mapper.js +0 -267
- package/lib/src/converters-from-hdf/asff/reverse-asff-mapper.js.map +0 -1
- package/lib/src/converters-from-hdf/asff/transformers.d.ts +0 -43
- package/lib/src/converters-from-hdf/asff/transformers.js +0 -483
- package/lib/src/converters-from-hdf/asff/transformers.js.map +0 -1
- package/lib/src/converters-from-hdf/caat/reverse-caat-mapper.d.ts +0 -31
- package/lib/src/converters-from-hdf/caat/reverse-caat-mapper.js +0 -201
- package/lib/src/converters-from-hdf/caat/reverse-caat-mapper.js.map +0 -1
- package/lib/src/converters-from-hdf/html/html-types.d.ts +0 -74
- package/lib/src/converters-from-hdf/html/html-types.js +0 -3
- package/lib/src/converters-from-hdf/html/html-types.js.map +0 -1
- package/lib/src/converters-from-hdf/html/reverse-html-mapper.d.ts +0 -41
- package/lib/src/converters-from-hdf/html/reverse-html-mapper.js +0 -394
- package/lib/src/converters-from-hdf/html/reverse-html-mapper.js.map +0 -1
- package/lib/src/converters-from-hdf/reverse-any-base-converter.d.ts +0 -10
- package/lib/src/converters-from-hdf/reverse-any-base-converter.js +0 -17
- package/lib/src/converters-from-hdf/reverse-any-base-converter.js.map +0 -1
- package/lib/src/converters-from-hdf/reverse-base-converter.d.ts +0 -25
- package/lib/src/converters-from-hdf/reverse-base-converter.js +0 -139
- package/lib/src/converters-from-hdf/reverse-base-converter.js.map +0 -1
- package/lib/src/converters-from-hdf/splunk/reverse-splunk-mapper.d.ts +0 -42
- package/lib/src/converters-from-hdf/splunk/reverse-splunk-mapper.js +0 -334
- package/lib/src/converters-from-hdf/splunk/reverse-splunk-mapper.js.map +0 -1
- package/lib/src/converters-from-hdf/xccdf/reverse-xccdf-mapper.d.ts +0 -36
- package/lib/src/converters-from-hdf/xccdf/reverse-xccdf-mapper.js +0 -262
- package/lib/src/converters-from-hdf/xccdf/reverse-xccdf-mapper.js.map +0 -1
- package/lib/src/conveyor-mapper.d.ts +0 -14
- package/lib/src/conveyor-mapper.js +0 -210
- package/lib/src/conveyor-mapper.js.map +0 -1
- package/lib/src/cyclonedx-sbom-mapper.d.ts +0 -34
- package/lib/src/cyclonedx-sbom-mapper.js +0 -449
- package/lib/src/cyclonedx-sbom-mapper.js.map +0 -1
- package/lib/src/dbprotect-mapper.d.ts +0 -9
- package/lib/src/dbprotect-mapper.js +0 -174
- package/lib/src/dbprotect-mapper.js.map +0 -1
- package/lib/src/dependency-track-mapper.d.ts +0 -9
- package/lib/src/dependency-track-mapper.js +0 -197
- package/lib/src/dependency-track-mapper.js.map +0 -1
- package/lib/src/fortify-mapper.d.ts +0 -10
- package/lib/src/fortify-mapper.js +0 -209
- package/lib/src/fortify-mapper.js.map +0 -1
- package/lib/src/gosec-mapper.d.ts +0 -9
- package/lib/src/gosec-mapper.js +0 -141
- package/lib/src/gosec-mapper.js.map +0 -1
- package/lib/src/ionchannel-mapper.d.ts +0 -26
- package/lib/src/ionchannel-mapper.js +0 -291
- package/lib/src/ionchannel-mapper.js.map +0 -1
- package/lib/src/jfrog-xray-mapper.d.ts +0 -9
- package/lib/src/jfrog-xray-mapper.js +0 -189
- package/lib/src/jfrog-xray-mapper.js.map +0 -1
- package/lib/src/jsonix-converter.d.ts +0 -7
- package/lib/src/jsonix-converter.js +0 -19
- package/lib/src/jsonix-converter.js.map +0 -1
- package/lib/src/jsonix-intermediate-converter.d.ts +0 -5
- package/lib/src/jsonix-intermediate-converter.js +0 -8
- package/lib/src/jsonix-intermediate-converter.js.map +0 -1
- package/lib/src/mappings/AwsConfigMapping.d.ts +0 -6
- package/lib/src/mappings/AwsConfigMapping.js +0 -66
- package/lib/src/mappings/AwsConfigMapping.js.map +0 -1
- package/lib/src/mappings/AwsConfigMappingData.d.ts +0 -6
- package/lib/src/mappings/AwsConfigMappingData.js +0 -642
- package/lib/src/mappings/AwsConfigMappingData.js.map +0 -1
- package/lib/src/mappings/CciNistMapping.d.ts +0 -55
- package/lib/src/mappings/CciNistMapping.js +0 -123
- package/lib/src/mappings/CciNistMapping.js.map +0 -1
- package/lib/src/mappings/CciNistMappingData.d.ts +0 -5100
- package/lib/src/mappings/CciNistMappingData.js +0 -5104
- package/lib/src/mappings/CciNistMappingData.js.map +0 -1
- package/lib/src/mappings/CciNistMappingItem.d.ts +0 -5
- package/lib/src/mappings/CciNistMappingItem.js +0 -11
- package/lib/src/mappings/CciNistMappingItem.js.map +0 -1
- package/lib/src/mappings/CweNistMapping.d.ts +0 -13
- package/lib/src/mappings/CweNistMapping.js +0 -48
- package/lib/src/mappings/CweNistMapping.js.map +0 -1
- package/lib/src/mappings/CweNistMappingData.d.ts +0 -7
- package/lib/src/mappings/CweNistMappingData.js +0 -1420
- package/lib/src/mappings/CweNistMappingData.js.map +0 -1
- package/lib/src/mappings/CweNistMappingItem.d.ts +0 -9
- package/lib/src/mappings/CweNistMappingItem.js +0 -34
- package/lib/src/mappings/CweNistMappingItem.js.map +0 -1
- package/lib/src/mappings/NessusPluginNistMappingData.d.ts +0 -9
- package/lib/src/mappings/NessusPluginNistMappingData.js +0 -436
- package/lib/src/mappings/NessusPluginNistMappingData.js.map +0 -1
- package/lib/src/mappings/NessusPluginsNistMapping.d.ts +0 -11
- package/lib/src/mappings/NessusPluginsNistMapping.js +0 -38
- package/lib/src/mappings/NessusPluginsNistMapping.js.map +0 -1
- package/lib/src/mappings/NessusPluginsNistMappingItem.d.ts +0 -7
- package/lib/src/mappings/NessusPluginsNistMappingItem.js +0 -27
- package/lib/src/mappings/NessusPluginsNistMappingItem.js.map +0 -1
- package/lib/src/mappings/NiktoNistMapping.d.ts +0 -9
- package/lib/src/mappings/NiktoNistMapping.js +0 -22
- package/lib/src/mappings/NiktoNistMapping.js.map +0 -1
- package/lib/src/mappings/NiktoNistMappingData.d.ts +0 -8943
- package/lib/src/mappings/NiktoNistMappingData.js +0 -8947
- package/lib/src/mappings/NiktoNistMappingData.js.map +0 -1
- package/lib/src/mappings/NiktoNistMappingItem.d.ts +0 -8
- package/lib/src/mappings/NiktoNistMappingItem.js +0 -28
- package/lib/src/mappings/NiktoNistMappingItem.js.map +0 -1
- package/lib/src/mappings/NistCciMappingData.d.ts +0 -1
- package/lib/src/mappings/NistCciMappingData.js +0 -27
- package/lib/src/mappings/NistCciMappingData.js.map +0 -1
- package/lib/src/mappings/OwaspNistMapping.d.ts +0 -13
- package/lib/src/mappings/OwaspNistMapping.js +0 -46
- package/lib/src/mappings/OwaspNistMapping.js.map +0 -1
- package/lib/src/mappings/OwaspNistMappingData.d.ts +0 -7
- package/lib/src/mappings/OwaspNistMappingData.js +0 -76
- package/lib/src/mappings/OwaspNistMappingData.js.map +0 -1
- package/lib/src/mappings/OwaspNistMappingItem.d.ts +0 -9
- package/lib/src/mappings/OwaspNistMappingItem.js +0 -34
- package/lib/src/mappings/OwaspNistMappingItem.js.map +0 -1
- package/lib/src/mappings/ScoutsuiteNistMapping.d.ts +0 -10
- package/lib/src/mappings/ScoutsuiteNistMapping.js +0 -30
- package/lib/src/mappings/ScoutsuiteNistMapping.js.map +0 -1
- package/lib/src/mappings/ScoutsuiteNistMappingData.d.ts +0 -4
- package/lib/src/mappings/ScoutsuiteNistMappingData.js +0 -562
- package/lib/src/mappings/ScoutsuiteNistMappingData.js.map +0 -1
- package/lib/src/mappings/ScoutsuiteNistMappingItem.d.ts +0 -6
- package/lib/src/mappings/ScoutsuiteNistMappingItem.js +0 -21
- package/lib/src/mappings/ScoutsuiteNistMappingItem.js.map +0 -1
- package/lib/src/msft-secure-score-mapper.d.ts +0 -33
- package/lib/src/msft-secure-score-mapper.js +0 -254
- package/lib/src/msft-secure-score-mapper.js.map +0 -1
- package/lib/src/nessus-mapper.d.ts +0 -16
- package/lib/src/nessus-mapper.js +0 -353
- package/lib/src/nessus-mapper.js.map +0 -1
- package/lib/src/netsparker-mapper.d.ts +0 -9
- package/lib/src/netsparker-mapper.js +0 -260
- package/lib/src/netsparker-mapper.js.map +0 -1
- package/lib/src/neuvector-mapper.d.ts +0 -13
- package/lib/src/neuvector-mapper.js +0 -167
- package/lib/src/neuvector-mapper.js.map +0 -1
- package/lib/src/nikto-mapper.d.ts +0 -9
- package/lib/src/nikto-mapper.js +0 -122
- package/lib/src/nikto-mapper.js.map +0 -1
- package/lib/src/prisma-mapper.d.ts +0 -24
- package/lib/src/prisma-mapper.js +0 -201
- package/lib/src/prisma-mapper.js.map +0 -1
- package/lib/src/sarif-mapper.d.ts +0 -9
- package/lib/src/sarif-mapper.js +0 -179
- package/lib/src/sarif-mapper.js.map +0 -1
- package/lib/src/scoutsuite-mapper.d.ts +0 -9
- package/lib/src/scoutsuite-mapper.js +0 -291
- package/lib/src/scoutsuite-mapper.js.map +0 -1
- package/lib/src/snyk-mapper.d.ts +0 -14
- package/lib/src/snyk-mapper.js +0 -185
- package/lib/src/snyk-mapper.js.map +0 -1
- package/lib/src/sonarqube-mapper.d.ts +0 -263
- package/lib/src/sonarqube-mapper.js +0 -572
- package/lib/src/sonarqube-mapper.js.map +0 -1
- package/lib/src/splunk-mapper.d.ts +0 -48
- package/lib/src/splunk-mapper.js +0 -260
- package/lib/src/splunk-mapper.js.map +0 -1
- package/lib/src/trufflehog-mapper.d.ts +0 -15
- package/lib/src/trufflehog-mapper.js +0 -112
- package/lib/src/trufflehog-mapper.js.map +0 -1
- package/lib/src/twistlock-mapper.d.ts +0 -15
- package/lib/src/twistlock-mapper.js +0 -184
- package/lib/src/twistlock-mapper.js.map +0 -1
- package/lib/src/utils/CCI_List.d.ts +0 -1
- package/lib/src/utils/CCI_List.js +0 -56259
- package/lib/src/utils/CCI_List.js.map +0 -1
- package/lib/src/utils/attestations.d.ts +0 -11
- package/lib/src/utils/attestations.js +0 -219
- package/lib/src/utils/attestations.js.map +0 -1
- package/lib/src/utils/compliance.d.ts +0 -3
- package/lib/src/utils/compliance.js +0 -27
- package/lib/src/utils/compliance.js.map +0 -1
- package/lib/src/utils/fingerprinting.d.ts +0 -33
- package/lib/src/utils/fingerprinting.js +0 -203
- package/lib/src/utils/fingerprinting.js.map +0 -1
- package/lib/src/utils/global.d.ts +0 -14
- package/lib/src/utils/global.js +0 -92
- package/lib/src/utils/global.js.map +0 -1
- package/lib/src/utils/parseJson.d.ts +0 -5
- package/lib/src/utils/parseJson.js +0 -13
- package/lib/src/utils/parseJson.js.map +0 -1
- package/lib/src/utils/result.d.ts +0 -7
- package/lib/src/utils/result.js +0 -3
- package/lib/src/utils/result.js.map +0 -1
- package/lib/src/utils/splunk-tools.d.ts +0 -5
- package/lib/src/utils/splunk-tools.js +0 -96
- package/lib/src/utils/splunk-tools.js.map +0 -1
- package/lib/src/veracode-mapper.d.ts +0 -9
- package/lib/src/veracode-mapper.js +0 -448
- package/lib/src/veracode-mapper.js.map +0 -1
- package/lib/src/xccdf-results-mapper.d.ts +0 -9
- package/lib/src/xccdf-results-mapper.js +0 -474
- package/lib/src/xccdf-results-mapper.js.map +0 -1
- package/lib/src/zap-mapper.d.ts +0 -10
- package/lib/src/zap-mapper.js +0 -209
- package/lib/src/zap-mapper.js.map +0 -1
- package/lib/types/neuvector-types.d.ts +0 -104
- package/lib/types/neuvector-types.js +0 -3
- package/lib/types/neuvector-types.js.map +0 -1
- package/lib/types/splunk-config-types.d.ts +0 -13
- package/lib/types/splunk-config-types.js +0 -3
- package/lib/types/splunk-config-types.js.map +0 -1
- package/lib/types/splunk-control-types.d.ts +0 -43
- package/lib/types/splunk-control-types.js +0 -3
- package/lib/types/splunk-control-types.js.map +0 -1
- package/lib/types/splunk-profile-types.d.ts +0 -53
- package/lib/types/splunk-profile-types.js +0 -3
- package/lib/types/splunk-profile-types.js.map +0 -1
- package/lib/types/splunk-report-types.d.ts +0 -20
- package/lib/types/splunk-report-types.js +0 -3
- package/lib/types/splunk-report-types.js.map +0 -1
|
@@ -0,0 +1,270 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* OSCAL Assessment Results (SAR) to HDF Results converter.
|
|
3
|
+
*
|
|
4
|
+
* Mirrors the Go implementation in converters/oscal-to-hdf/go/converter_sar.go.
|
|
5
|
+
*/
|
|
6
|
+
import { parseJSON } from '@mitre/hdf-utilities';
|
|
7
|
+
import { inputChecksum, inputIntegrity, validateInputSize } from '../../../shared/typescript/converterutil.js';
|
|
8
|
+
import { ResultStatus, createMinimalBaseline, createRequirement, createResult, } from '@mitre/hdf-schema';
|
|
9
|
+
import { controlIdToNistTag, extractControlIdFromObjectiveId, oscalStatusToHdf, extractRiskSeverity, extractMetadata, toKebabCase, } from './shared.js';
|
|
10
|
+
/**
|
|
11
|
+
* Converts an OSCAL Assessment Results (SAR) document to HDF Results JSON.
|
|
12
|
+
*
|
|
13
|
+
* @param input - Raw JSON string containing OSCAL assessment-results
|
|
14
|
+
* @returns HDF Results JSON string
|
|
15
|
+
*/
|
|
16
|
+
export async function convertOscalSarToHdf(input) {
|
|
17
|
+
validateInputSize(input, 'oscal-assessment-results');
|
|
18
|
+
if (!input || input.trim().length === 0) {
|
|
19
|
+
throw new Error('empty input');
|
|
20
|
+
}
|
|
21
|
+
const doc = parseJSON(input);
|
|
22
|
+
if (!doc['assessment-results']) {
|
|
23
|
+
throw new Error("oscal-assessment-results: input is not an assessment-results document (root key is not 'assessment-results')");
|
|
24
|
+
}
|
|
25
|
+
const sar = doc['assessment-results'];
|
|
26
|
+
const meta = extractMetadata(sar.metadata);
|
|
27
|
+
const baselines = [];
|
|
28
|
+
for (const result of sar.results) {
|
|
29
|
+
const baseline = await resultToEvaluatedBaseline(result, sar, input);
|
|
30
|
+
baselines.push(baseline);
|
|
31
|
+
}
|
|
32
|
+
// Extract planRef from import-ap
|
|
33
|
+
const planRef = sar['import-ap']?.href || undefined;
|
|
34
|
+
// Parse timestamp from metadata
|
|
35
|
+
let timestamp;
|
|
36
|
+
if (meta.lastModified) {
|
|
37
|
+
const t = new Date(meta.lastModified);
|
|
38
|
+
if (!isNaN(t.getTime())) {
|
|
39
|
+
timestamp = t;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
const hdf = {
|
|
43
|
+
baselines,
|
|
44
|
+
generator: {
|
|
45
|
+
name: 'oscal-assessment-results-to-hdf',
|
|
46
|
+
version: '1.0.0',
|
|
47
|
+
},
|
|
48
|
+
tool: {
|
|
49
|
+
name: 'OSCAL Assessment Results',
|
|
50
|
+
format: 'OSCAL',
|
|
51
|
+
},
|
|
52
|
+
timestamp: timestamp ?? new Date(),
|
|
53
|
+
planRef,
|
|
54
|
+
};
|
|
55
|
+
return JSON.stringify(hdf, null, 2);
|
|
56
|
+
}
|
|
57
|
+
async function resultToEvaluatedBaseline(result, sar, rawInput) {
|
|
58
|
+
const checksum = await inputChecksum(rawInput);
|
|
59
|
+
// Build lookup maps for observations and risks
|
|
60
|
+
const obsMap = buildObservationMap(result.observations ?? []);
|
|
61
|
+
const riskMap = buildRiskMap(result.risks ?? []);
|
|
62
|
+
// Group findings by control ID, preserving insertion order
|
|
63
|
+
const controlOrder = [];
|
|
64
|
+
const controlMap = new Map();
|
|
65
|
+
for (const f of result.findings ?? []) {
|
|
66
|
+
const controlId = extractControlIdFromFinding(f);
|
|
67
|
+
const existing = controlMap.get(controlId);
|
|
68
|
+
if (existing) {
|
|
69
|
+
existing.push(f);
|
|
70
|
+
}
|
|
71
|
+
else {
|
|
72
|
+
controlOrder.push(controlId);
|
|
73
|
+
controlMap.set(controlId, [f]);
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
// Build requirements in insertion order
|
|
77
|
+
const requirements = [];
|
|
78
|
+
for (const controlId of controlOrder) {
|
|
79
|
+
const findings = controlMap.get(controlId);
|
|
80
|
+
const req = findingsToEvaluatedRequirement(controlId, findings, obsMap, riskMap, result);
|
|
81
|
+
requirements.push(req);
|
|
82
|
+
}
|
|
83
|
+
// Derive baseline name
|
|
84
|
+
const name = sarBaselineName(result, sar);
|
|
85
|
+
const baseline = createMinimalBaseline(name, requirements, {
|
|
86
|
+
resultsChecksum: checksum,
|
|
87
|
+
integrity: await inputIntegrity(rawInput),
|
|
88
|
+
status: 'loaded',
|
|
89
|
+
title: result.title,
|
|
90
|
+
});
|
|
91
|
+
if (result.description) {
|
|
92
|
+
baseline.description = result.description;
|
|
93
|
+
}
|
|
94
|
+
return baseline;
|
|
95
|
+
}
|
|
96
|
+
function findingsToEvaluatedRequirement(controlId, findings, obsMap, riskMap, result) {
|
|
97
|
+
const nistTag = controlIdToNistTag(controlId);
|
|
98
|
+
// Use the first finding for title
|
|
99
|
+
const firstFinding = findings[0];
|
|
100
|
+
const title = firstFinding.title || nistTag;
|
|
101
|
+
// Determine impact from related risks
|
|
102
|
+
const impact = sarFindingsImpact(findings, riskMap);
|
|
103
|
+
// Build descriptions from findings and observations
|
|
104
|
+
const descriptions = sarBuildDescriptions(findings, obsMap);
|
|
105
|
+
// Build results from each finding
|
|
106
|
+
const results = [];
|
|
107
|
+
for (const f of findings) {
|
|
108
|
+
results.push(findingToRequirementResult(f, obsMap, riskMap, result));
|
|
109
|
+
}
|
|
110
|
+
const tags = {
|
|
111
|
+
nist: [nistTag],
|
|
112
|
+
};
|
|
113
|
+
return createRequirement(nistTag, title, descriptions, impact, results, { tags });
|
|
114
|
+
}
|
|
115
|
+
function findingToRequirementResult(f, obsMap, riskMap, result) {
|
|
116
|
+
const status = mapFindingStatus(f);
|
|
117
|
+
const codeDesc = buildCodeDesc(f, obsMap);
|
|
118
|
+
const message = buildRiskMessage(f, riskMap);
|
|
119
|
+
const startTime = parseResultStartTime(result);
|
|
120
|
+
return createResult(status, message || undefined, {
|
|
121
|
+
codeDesc,
|
|
122
|
+
startTime: startTime.getTime() > 0 ? startTime : undefined,
|
|
123
|
+
});
|
|
124
|
+
}
|
|
125
|
+
function extractControlIdFromFinding(f) {
|
|
126
|
+
const targetId = f.target['target-id'];
|
|
127
|
+
if (!targetId)
|
|
128
|
+
return 'unknown';
|
|
129
|
+
// For objective-id and statement-id, extract the base control ID
|
|
130
|
+
let controlId = extractControlIdFromObjectiveId(targetId);
|
|
131
|
+
// Handle statement-id format: "au-1_smt.a" -> "au-1"
|
|
132
|
+
const idx = controlId.indexOf('_');
|
|
133
|
+
if (idx > 0) {
|
|
134
|
+
controlId = controlId.slice(0, idx);
|
|
135
|
+
}
|
|
136
|
+
return controlId;
|
|
137
|
+
}
|
|
138
|
+
function mapFindingStatus(f) {
|
|
139
|
+
const status = oscalStatusToHdf(f.target.status.state);
|
|
140
|
+
if (status === 'passed')
|
|
141
|
+
return ResultStatus.Passed;
|
|
142
|
+
if (status === 'failed')
|
|
143
|
+
return ResultStatus.Failed;
|
|
144
|
+
return ResultStatus.NotReviewed;
|
|
145
|
+
}
|
|
146
|
+
function buildCodeDesc(f, obsMap) {
|
|
147
|
+
const parts = [];
|
|
148
|
+
for (const ref of f['related-observations'] ?? []) {
|
|
149
|
+
const obsUuid = ref['observation-uuid'];
|
|
150
|
+
if (!obsUuid)
|
|
151
|
+
continue;
|
|
152
|
+
const obs = obsMap.get(obsUuid);
|
|
153
|
+
if (!obs)
|
|
154
|
+
continue;
|
|
155
|
+
if (obs.methods && obs.methods.length > 0) {
|
|
156
|
+
parts.push('Methods: ' + obs.methods.join(', '));
|
|
157
|
+
}
|
|
158
|
+
for (const subj of obs.subjects ?? []) {
|
|
159
|
+
let subjDesc = subj.type;
|
|
160
|
+
if (subj.title) {
|
|
161
|
+
subjDesc = subj.title + ' (' + subj.type + ')';
|
|
162
|
+
}
|
|
163
|
+
parts.push('Subject: ' + subjDesc);
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
if (parts.length === 0)
|
|
167
|
+
return f.title;
|
|
168
|
+
return parts.join('; ');
|
|
169
|
+
}
|
|
170
|
+
function buildRiskMessage(f, riskMap) {
|
|
171
|
+
const messages = [];
|
|
172
|
+
for (const ref of f['related-risks'] ?? []) {
|
|
173
|
+
const riskUuid = ref['risk-uuid'];
|
|
174
|
+
if (!riskUuid)
|
|
175
|
+
continue;
|
|
176
|
+
const risk = riskMap.get(riskUuid);
|
|
177
|
+
if (!risk)
|
|
178
|
+
continue;
|
|
179
|
+
let msg = risk.title;
|
|
180
|
+
if (risk.description) {
|
|
181
|
+
msg += ': ' + risk.description;
|
|
182
|
+
}
|
|
183
|
+
messages.push(msg);
|
|
184
|
+
}
|
|
185
|
+
return messages.join('\n');
|
|
186
|
+
}
|
|
187
|
+
function sarFindingsImpact(findings, riskMap) {
|
|
188
|
+
let highestImpact = -1.0;
|
|
189
|
+
for (const f of findings) {
|
|
190
|
+
for (const ref of f['related-risks'] ?? []) {
|
|
191
|
+
const riskUuid = ref['risk-uuid'];
|
|
192
|
+
if (!riskUuid)
|
|
193
|
+
continue;
|
|
194
|
+
const risk = riskMap.get(riskUuid);
|
|
195
|
+
if (!risk)
|
|
196
|
+
continue;
|
|
197
|
+
const impact = extractRiskSeverity(risk.characterizations, -1.0);
|
|
198
|
+
if (impact > highestImpact) {
|
|
199
|
+
highestImpact = impact;
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
if (highestImpact < 0)
|
|
204
|
+
return 0.5; // default medium impact
|
|
205
|
+
return highestImpact;
|
|
206
|
+
}
|
|
207
|
+
function sarBuildDescriptions(findings, obsMap) {
|
|
208
|
+
const descriptions = [];
|
|
209
|
+
// Default description from finding descriptions
|
|
210
|
+
const findingDescs = [];
|
|
211
|
+
for (const f of findings) {
|
|
212
|
+
if (f.description) {
|
|
213
|
+
findingDescs.push(f.description);
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
descriptions.push({
|
|
217
|
+
label: 'default',
|
|
218
|
+
data: findingDescs.join('\n') || '',
|
|
219
|
+
});
|
|
220
|
+
// Rationale from observation descriptions
|
|
221
|
+
const obsDescs = [];
|
|
222
|
+
const seen = new Set();
|
|
223
|
+
for (const f of findings) {
|
|
224
|
+
for (const ref of f['related-observations'] ?? []) {
|
|
225
|
+
const obsUuid = ref['observation-uuid'];
|
|
226
|
+
if (!obsUuid || seen.has(obsUuid))
|
|
227
|
+
continue;
|
|
228
|
+
seen.add(obsUuid);
|
|
229
|
+
const obs = obsMap.get(obsUuid);
|
|
230
|
+
if (obs?.description) {
|
|
231
|
+
obsDescs.push(obs.description);
|
|
232
|
+
}
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
if (obsDescs.length > 0) {
|
|
236
|
+
descriptions.push({
|
|
237
|
+
label: 'rationale',
|
|
238
|
+
data: obsDescs.join('\n'),
|
|
239
|
+
});
|
|
240
|
+
}
|
|
241
|
+
return descriptions;
|
|
242
|
+
}
|
|
243
|
+
function buildObservationMap(observations) {
|
|
244
|
+
const m = new Map();
|
|
245
|
+
for (const obs of observations) {
|
|
246
|
+
m.set(obs.uuid, obs);
|
|
247
|
+
}
|
|
248
|
+
return m;
|
|
249
|
+
}
|
|
250
|
+
function buildRiskMap(risks) {
|
|
251
|
+
const m = new Map();
|
|
252
|
+
for (const risk of risks) {
|
|
253
|
+
m.set(risk.uuid, risk);
|
|
254
|
+
}
|
|
255
|
+
return m;
|
|
256
|
+
}
|
|
257
|
+
function parseResultStartTime(result) {
|
|
258
|
+
if (result.start) {
|
|
259
|
+
const t = new Date(result.start);
|
|
260
|
+
if (!isNaN(t.getTime())) {
|
|
261
|
+
return t;
|
|
262
|
+
}
|
|
263
|
+
}
|
|
264
|
+
return new Date(0);
|
|
265
|
+
}
|
|
266
|
+
function sarBaselineName(result, sar) {
|
|
267
|
+
const title = result.title || sar.metadata.title;
|
|
268
|
+
return toKebabCase(title, 'oscal-assessment-results');
|
|
269
|
+
}
|
|
270
|
+
//# sourceMappingURL=converter-sar.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"converter-sar.js","sourceRoot":"","sources":["../../../../converters/oscal-to-hdf/typescript/converter-sar.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* OSCAL System Security Plan (SSP) to HDF System converter.
|
|
3
|
+
*
|
|
4
|
+
* Mirrors the Go implementation in converters/oscal-to-hdf/go/converter_ssp.go.
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Converts an OSCAL System Security Plan document to HDF System JSON.
|
|
8
|
+
*
|
|
9
|
+
* @param input - Raw JSON string containing an OSCAL SSP
|
|
10
|
+
* @returns HDF System JSON string
|
|
11
|
+
*/
|
|
12
|
+
export declare function convertOscalSspToHdf(input: string): Promise<string>;
|
|
13
|
+
//# sourceMappingURL=converter-ssp.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"converter-ssp.d.ts","sourceRoot":"","sources":["../../../../converters/oscal-to-hdf/typescript/converter-ssp.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAqBH;;;;;GAKG;AACH,wBAAsB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAoFzE"}
|
|
@@ -0,0 +1,246 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* OSCAL System Security Plan (SSP) to HDF System converter.
|
|
3
|
+
*
|
|
4
|
+
* Mirrors the Go implementation in converters/oscal-to-hdf/go/converter_ssp.go.
|
|
5
|
+
*/
|
|
6
|
+
import { parseJSON } from '@mitre/hdf-utilities';
|
|
7
|
+
import { inputIntegrity, validateInputSize } from '../../../shared/typescript/converterutil.js';
|
|
8
|
+
import { AuthorizationStatus, CategorizationLevel, BoundaryDescription, } from '@mitre/hdf-schema';
|
|
9
|
+
import { controlIdToNistTag, extractMetadata } from './shared.js';
|
|
10
|
+
/**
|
|
11
|
+
* Converts an OSCAL System Security Plan document to HDF System JSON.
|
|
12
|
+
*
|
|
13
|
+
* @param input - Raw JSON string containing an OSCAL SSP
|
|
14
|
+
* @returns HDF System JSON string
|
|
15
|
+
*/
|
|
16
|
+
export async function convertOscalSspToHdf(input) {
|
|
17
|
+
validateInputSize(input, 'oscal-ssp');
|
|
18
|
+
if (!input || input.trim().length === 0) {
|
|
19
|
+
throw new Error('empty input');
|
|
20
|
+
}
|
|
21
|
+
const doc = parseJSON(input);
|
|
22
|
+
if (!doc['system-security-plan']) {
|
|
23
|
+
throw new Error("oscal-ssp: input is not a system-security-plan document (root key is not 'system-security-plan')");
|
|
24
|
+
}
|
|
25
|
+
const ssp = doc['system-security-plan'];
|
|
26
|
+
const integrity = await inputIntegrity(input);
|
|
27
|
+
const system = {
|
|
28
|
+
name: sspSystemName(ssp),
|
|
29
|
+
integrity,
|
|
30
|
+
components: [],
|
|
31
|
+
generator: {
|
|
32
|
+
name: 'hdf-converters',
|
|
33
|
+
version: '1.0.0',
|
|
34
|
+
},
|
|
35
|
+
};
|
|
36
|
+
// Map system characteristics
|
|
37
|
+
const sc = ssp['system-characteristics'];
|
|
38
|
+
if (sc) {
|
|
39
|
+
if (sc.description) {
|
|
40
|
+
let desc = sc.description;
|
|
41
|
+
if (sc['authorization-boundary']?.description) {
|
|
42
|
+
desc += '\n\nAuthorization Boundary: ' + sc['authorization-boundary'].description;
|
|
43
|
+
}
|
|
44
|
+
system.description = desc;
|
|
45
|
+
}
|
|
46
|
+
// Map categorization level from security impact level
|
|
47
|
+
const sil = sc['security-impact-level'];
|
|
48
|
+
if (sil) {
|
|
49
|
+
system.categorizationLevel = sspCategorizationLevel(sil) ?? undefined;
|
|
50
|
+
}
|
|
51
|
+
else if (sc['security-sensitivity-level']) {
|
|
52
|
+
system.categorizationLevel = mapSensitivityToCategorizationLevel(sc['security-sensitivity-level']) ?? undefined;
|
|
53
|
+
}
|
|
54
|
+
// Map authorization status from system status
|
|
55
|
+
if (sc.status) {
|
|
56
|
+
system.authorizationStatus = sspAuthorizationStatus(sc.status.state) ?? undefined;
|
|
57
|
+
}
|
|
58
|
+
// Map boundary description
|
|
59
|
+
if (sc['authorization-boundary']?.description) {
|
|
60
|
+
system.boundaryDescription = sc['authorization-boundary'].description;
|
|
61
|
+
}
|
|
62
|
+
// Map system identifier
|
|
63
|
+
const systemIds = sc['system-ids'];
|
|
64
|
+
if (systemIds && systemIds.length > 0) {
|
|
65
|
+
system.identifier = systemIds[0].id;
|
|
66
|
+
if (systemIds[0]['identifier-type']) {
|
|
67
|
+
system.identifierScheme = systemIds[0]['identifier-type'];
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
// Map version from metadata
|
|
72
|
+
const meta = extractMetadata(ssp.metadata);
|
|
73
|
+
if (meta.version) {
|
|
74
|
+
system.version = meta.version;
|
|
75
|
+
}
|
|
76
|
+
// Build component-UUID -> control-ID mapping
|
|
77
|
+
const componentControls = buildComponentControlMap(ssp['control-implementation']);
|
|
78
|
+
// Map system-implementation components to HDF Components
|
|
79
|
+
const si = ssp['system-implementation'];
|
|
80
|
+
if (si?.components) {
|
|
81
|
+
for (const comp of si.components) {
|
|
82
|
+
system.components.push(sspComponentToHDFComponent(comp, componentControls));
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
return JSON.stringify(system, null, 2);
|
|
86
|
+
}
|
|
87
|
+
function sspSystemName(ssp) {
|
|
88
|
+
const sc = ssp['system-characteristics'];
|
|
89
|
+
if (sc?.['system-name']) {
|
|
90
|
+
return sc['system-name'];
|
|
91
|
+
}
|
|
92
|
+
if (ssp.metadata.title) {
|
|
93
|
+
return ssp.metadata.title;
|
|
94
|
+
}
|
|
95
|
+
return 'oscal-ssp';
|
|
96
|
+
}
|
|
97
|
+
function sspCategorizationLevel(sil) {
|
|
98
|
+
const levels = [
|
|
99
|
+
sil['security-objective-confidentiality'] ?? '',
|
|
100
|
+
sil['security-objective-integrity'] ?? '',
|
|
101
|
+
sil['security-objective-availability'] ?? '',
|
|
102
|
+
];
|
|
103
|
+
let highest = '';
|
|
104
|
+
for (const l of levels) {
|
|
105
|
+
const normalized = normalizeFIPSLevel(l);
|
|
106
|
+
if (fipsLevelRank(normalized) > fipsLevelRank(highest)) {
|
|
107
|
+
highest = normalized;
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
if (!highest)
|
|
111
|
+
return null;
|
|
112
|
+
switch (highest) {
|
|
113
|
+
case 'high':
|
|
114
|
+
return CategorizationLevel.High;
|
|
115
|
+
case 'moderate':
|
|
116
|
+
return CategorizationLevel.Moderate;
|
|
117
|
+
case 'low':
|
|
118
|
+
return CategorizationLevel.Low;
|
|
119
|
+
default:
|
|
120
|
+
return null;
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
function normalizeFIPSLevel(level) {
|
|
124
|
+
let lower = level.toLowerCase();
|
|
125
|
+
lower = lower.replace(/^fips-199-/, '');
|
|
126
|
+
switch (lower) {
|
|
127
|
+
case 'high':
|
|
128
|
+
return 'high';
|
|
129
|
+
case 'moderate':
|
|
130
|
+
case 'medium':
|
|
131
|
+
return 'moderate';
|
|
132
|
+
case 'low':
|
|
133
|
+
return 'low';
|
|
134
|
+
default:
|
|
135
|
+
return '';
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
function fipsLevelRank(level) {
|
|
139
|
+
switch (level) {
|
|
140
|
+
case 'high':
|
|
141
|
+
return 3;
|
|
142
|
+
case 'moderate':
|
|
143
|
+
return 2;
|
|
144
|
+
case 'low':
|
|
145
|
+
return 1;
|
|
146
|
+
default:
|
|
147
|
+
return 0;
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
function mapSensitivityToCategorizationLevel(level) {
|
|
151
|
+
const normalized = normalizeFIPSLevel(level);
|
|
152
|
+
if (!normalized)
|
|
153
|
+
return null;
|
|
154
|
+
switch (normalized) {
|
|
155
|
+
case 'high':
|
|
156
|
+
return CategorizationLevel.High;
|
|
157
|
+
case 'moderate':
|
|
158
|
+
return CategorizationLevel.Moderate;
|
|
159
|
+
case 'low':
|
|
160
|
+
return CategorizationLevel.Low;
|
|
161
|
+
default:
|
|
162
|
+
return null;
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
function sspAuthorizationStatus(state) {
|
|
166
|
+
switch (state.toLowerCase()) {
|
|
167
|
+
case 'operational':
|
|
168
|
+
return AuthorizationStatus.Authorized;
|
|
169
|
+
case 'under-development':
|
|
170
|
+
return AuthorizationStatus.PendingAuthorization;
|
|
171
|
+
case 'disposition':
|
|
172
|
+
return AuthorizationStatus.Revoked;
|
|
173
|
+
case 'other':
|
|
174
|
+
return AuthorizationStatus.NotYetRequested;
|
|
175
|
+
default:
|
|
176
|
+
return null;
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
function buildComponentControlMap(ci) {
|
|
180
|
+
const result = new Map();
|
|
181
|
+
if (!ci)
|
|
182
|
+
return result;
|
|
183
|
+
for (const ir of ci['implemented-requirements'] ?? []) {
|
|
184
|
+
const controlId = ir['control-id'];
|
|
185
|
+
// Direct by-components on the implemented-requirement
|
|
186
|
+
for (const bc of ir['by-components'] ?? []) {
|
|
187
|
+
addComponentControl(result, bc['component-uuid'], controlId);
|
|
188
|
+
}
|
|
189
|
+
// by-components within statements
|
|
190
|
+
for (const stmt of ir.statements ?? []) {
|
|
191
|
+
for (const bc of stmt['by-components'] ?? []) {
|
|
192
|
+
addComponentControl(result, bc['component-uuid'], controlId);
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
return result;
|
|
197
|
+
}
|
|
198
|
+
function addComponentControl(m, compUUID, controlId) {
|
|
199
|
+
let controls = m.get(compUUID);
|
|
200
|
+
if (!controls) {
|
|
201
|
+
controls = new Set();
|
|
202
|
+
m.set(compUUID, controls);
|
|
203
|
+
}
|
|
204
|
+
controls.add(controlId);
|
|
205
|
+
}
|
|
206
|
+
function sspComponentToHDFComponent(sc, componentControls) {
|
|
207
|
+
const comp = {
|
|
208
|
+
name: sc.title,
|
|
209
|
+
type: mapOSCALComponentType(sc.type),
|
|
210
|
+
};
|
|
211
|
+
if (sc.description) {
|
|
212
|
+
comp.description = sc.description;
|
|
213
|
+
}
|
|
214
|
+
// Add control IDs as baseline refs (NIST notation)
|
|
215
|
+
const controls = componentControls.get(sc.uuid);
|
|
216
|
+
if (controls && controls.size > 0) {
|
|
217
|
+
const refs = [];
|
|
218
|
+
for (const controlId of controls) {
|
|
219
|
+
refs.push(controlIdToNistTag(controlId));
|
|
220
|
+
}
|
|
221
|
+
if (refs.length > 0) {
|
|
222
|
+
comp.baselineRefs = refs;
|
|
223
|
+
}
|
|
224
|
+
}
|
|
225
|
+
return comp;
|
|
226
|
+
}
|
|
227
|
+
function mapOSCALComponentType(oscalType) {
|
|
228
|
+
switch (oscalType.toLowerCase()) {
|
|
229
|
+
case 'software':
|
|
230
|
+
case 'this-system':
|
|
231
|
+
return BoundaryDescription.Application;
|
|
232
|
+
case 'service':
|
|
233
|
+
return BoundaryDescription.Application;
|
|
234
|
+
case 'hardware':
|
|
235
|
+
return BoundaryDescription.Host;
|
|
236
|
+
case 'network':
|
|
237
|
+
return BoundaryDescription.Network;
|
|
238
|
+
case 'database':
|
|
239
|
+
return BoundaryDescription.Database;
|
|
240
|
+
case 'storage':
|
|
241
|
+
return BoundaryDescription.Artifact;
|
|
242
|
+
default:
|
|
243
|
+
return BoundaryDescription.Application;
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
//# sourceMappingURL=converter-ssp.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"converter-ssp.js","sourceRoot":"","sources":["../../../../converters/oscal-to-hdf/typescript/converter-ssp.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* OSCAL document type detection.
|
|
3
|
+
*
|
|
4
|
+
* Mirrors the Go implementation in converters/oscal-to-hdf/go/detect.go.
|
|
5
|
+
*/
|
|
6
|
+
/** The 7 valid OSCAL document type strings. */
|
|
7
|
+
export type OscalDocumentType = 'catalog' | 'profile' | 'component-definition' | 'system-security-plan' | 'assessment-plan' | 'assessment-results' | 'plan-of-action-and-milestones';
|
|
8
|
+
/**
|
|
9
|
+
* Parses the input JSON just enough to determine which OSCAL document type
|
|
10
|
+
* it contains. Returns one of the 7 OSCAL root key strings.
|
|
11
|
+
*
|
|
12
|
+
* @throws Error if the input is not valid OSCAL
|
|
13
|
+
*/
|
|
14
|
+
export declare function detectOscalDocumentType(input: string): OscalDocumentType;
|
|
15
|
+
//# sourceMappingURL=detect.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"detect.d.ts","sourceRoot":"","sources":["../../../../converters/oscal-to-hdf/typescript/detect.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,+CAA+C;AAC/C,MAAM,MAAM,iBAAiB,GACzB,SAAS,GACT,SAAS,GACT,sBAAsB,GACtB,sBAAsB,GACtB,iBAAiB,GACjB,oBAAoB,GACpB,+BAA+B,CAAC;AAEpC;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,MAAM,GAAG,iBAAiB,CAgBxE"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* OSCAL document type detection.
|
|
3
|
+
*
|
|
4
|
+
* Mirrors the Go implementation in converters/oscal-to-hdf/go/detect.go.
|
|
5
|
+
*/
|
|
6
|
+
import { parseJSON } from '@mitre/hdf-utilities';
|
|
7
|
+
/**
|
|
8
|
+
* Parses the input JSON just enough to determine which OSCAL document type
|
|
9
|
+
* it contains. Returns one of the 7 OSCAL root key strings.
|
|
10
|
+
*
|
|
11
|
+
* @throws Error if the input is not valid OSCAL
|
|
12
|
+
*/
|
|
13
|
+
export function detectOscalDocumentType(input) {
|
|
14
|
+
const doc = parseJSON(input);
|
|
15
|
+
if (doc.catalog)
|
|
16
|
+
return 'catalog';
|
|
17
|
+
if (doc.profile)
|
|
18
|
+
return 'profile';
|
|
19
|
+
if (doc['component-definition'])
|
|
20
|
+
return 'component-definition';
|
|
21
|
+
if (doc['system-security-plan'])
|
|
22
|
+
return 'system-security-plan';
|
|
23
|
+
if (doc['assessment-plan'])
|
|
24
|
+
return 'assessment-plan';
|
|
25
|
+
if (doc['assessment-results'])
|
|
26
|
+
return 'assessment-results';
|
|
27
|
+
if (doc['plan-of-action-and-milestones'])
|
|
28
|
+
return 'plan-of-action-and-milestones';
|
|
29
|
+
throw new Error('unrecognized OSCAL document: expected one of catalog, profile, ' +
|
|
30
|
+
'component-definition, system-security-plan, assessment-plan, ' +
|
|
31
|
+
'assessment-results, plan-of-action-and-milestones as root key');
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=detect.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"detect.js","sourceRoot":"","sources":["../../../../converters/oscal-to-hdf/typescript/detect.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAajD;;;;;GAKG;AACH,MAAM,UAAU,uBAAuB,CAAC,KAAa;IACnD,MAAM,GAAG,GAAG,SAAS,CAAQ,KAAK,CAAC,CAAC;IAEpC,IAAI,GAAG,CAAC,OAAO;QAAE,OAAO,SAAS,CAAC;IAClC,IAAI,GAAG,CAAC,OAAO;QAAE,OAAO,SAAS,CAAC;IAClC,IAAI,GAAG,CAAC,sBAAsB,CAAC;QAAE,OAAO,sBAAsB,CAAC;IAC/D,IAAI,GAAG,CAAC,sBAAsB,CAAC;QAAE,OAAO,sBAAsB,CAAC;IAC/D,IAAI,GAAG,CAAC,iBAAiB,CAAC;QAAE,OAAO,iBAAiB,CAAC;IACrD,IAAI,GAAG,CAAC,oBAAoB,CAAC;QAAE,OAAO,oBAAoB,CAAC;IAC3D,IAAI,GAAG,CAAC,+BAA+B,CAAC;QAAE,OAAO,+BAA+B,CAAC;IAEjF,MAAM,IAAI,KAAK,CACb,iEAAiE;QACjE,+DAA+D;QAC/D,+DAA+D,CAChE,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* OSCAL document type fingerprints.
|
|
3
|
+
*
|
|
4
|
+
* Registers 7 separate ConverterFingerprint entries, one for each OSCAL
|
|
5
|
+
* document type. Each checks for its specific top-level JSON key.
|
|
6
|
+
*
|
|
7
|
+
* No converter imports — data only, safe for client bundles.
|
|
8
|
+
*/
|
|
9
|
+
import { type ConverterFingerprint } from '../../../shared/typescript/registry.js';
|
|
10
|
+
export declare const oscalFingerprints: ConverterFingerprint[];
|
|
11
|
+
export declare function register(): void;
|
|
12
|
+
//# sourceMappingURL=fingerprint.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fingerprint.d.ts","sourceRoot":"","sources":["../../../../converters/oscal-to-hdf/typescript/fingerprint.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAuC,KAAK,oBAAoB,EAAmB,MAAM,wCAAwC,CAAC;AA8CzI,eAAO,MAAM,iBAAiB,EAAE,oBAAoB,EAAsC,CAAC;AAE3F,wBAAgB,QAAQ,IAAI,IAAI,CAK/B"}
|