xadesjs
Version:
XML Advanced Electronic Signatures (XAdES) implementation in TypeScript/JavaScript built on XMLDSIGjs
135 lines (134 loc) • 5.83 kB
JavaScript
import { __decorate, __metadata } from "tslib";
import { XmlAttribute, XmlElement, XmlNodeType } from 'xml-core';
import { CertificateValues } from './certificate_values.js';
import { CompleteCertificateRefs } from './complete_certificate_refs.js';
import { CompleteRevocationRefs } from './complete_revocation_refs.js';
import { CounterSignature } from './counter_signature.js';
import { RevocationValues } from './revocation_values.js';
import { XAdESTimeStamp } from './xades_time_stamp.js';
import { XmlXades } from './xml.js';
import { XadesCollection, XadesObject } from './xml_base.js';
let SignatureTimeStamp = class SignatureTimeStamp extends XAdESTimeStamp {
};
SignatureTimeStamp = __decorate([
XmlElement({ localName: XmlXades.ElementNames.SignatureTimeStamp })
], SignatureTimeStamp);
export { SignatureTimeStamp };
let SigAndRefsTimeStamp = class SigAndRefsTimeStamp extends XAdESTimeStamp {
};
SigAndRefsTimeStamp = __decorate([
XmlElement({ localName: XmlXades.ElementNames.SigAndRefsTimeStamp })
], SigAndRefsTimeStamp);
export { SigAndRefsTimeStamp };
let RefsOnlyTimeStamp = class RefsOnlyTimeStamp extends XAdESTimeStamp {
};
RefsOnlyTimeStamp = __decorate([
XmlElement({ localName: XmlXades.ElementNames.RefsOnlyTimeStamp })
], RefsOnlyTimeStamp);
export { RefsOnlyTimeStamp };
let ArchiveTimeStamp = class ArchiveTimeStamp extends XAdESTimeStamp {
};
ArchiveTimeStamp = __decorate([
XmlElement({ localName: XmlXades.ElementNames.ArchiveTimeStamp })
], ArchiveTimeStamp);
export { ArchiveTimeStamp };
let AttributeCertificateRefs = class AttributeCertificateRefs extends CompleteCertificateRefs {
};
AttributeCertificateRefs = __decorate([
XmlElement({ localName: XmlXades.ElementNames.AttributeCertificateRefs })
], AttributeCertificateRefs);
export { AttributeCertificateRefs };
let AttributeRevocationRefs = class AttributeRevocationRefs extends CompleteRevocationRefs {
};
AttributeRevocationRefs = __decorate([
XmlElement({ localName: XmlXades.ElementNames.AttributeRevocationRefs })
], AttributeRevocationRefs);
export { AttributeRevocationRefs };
let AttrAuthoritiesCertValues = class AttrAuthoritiesCertValues extends CertificateValues {
};
AttrAuthoritiesCertValues = __decorate([
XmlElement({ localName: XmlXades.ElementNames.AttrAuthoritiesCertValues })
], AttrAuthoritiesCertValues);
export { AttrAuthoritiesCertValues };
let AttributeRevocationValues = class AttributeRevocationValues extends RevocationValues {
};
AttributeRevocationValues = __decorate([
XmlElement({ localName: XmlXades.ElementNames.AttributeRevocationValues })
], AttributeRevocationValues);
export { AttributeRevocationValues };
let UnsignedSignatureProperty = class UnsignedSignatureProperty extends XadesObject {
};
UnsignedSignatureProperty = __decorate([
XmlElement({ localName: 'UnsignedSignatureProperty' })
], UnsignedSignatureProperty);
export { UnsignedSignatureProperty };
let UnsignedSignatureProperties = class UnsignedSignatureProperties extends XadesCollection {
OnLoadXml(element) {
for (let i = 0; i < element.childNodes.length; i++) {
const node = element.childNodes.item(i);
if (node.nodeType !== XmlNodeType.Element) {
continue;
}
let XmlClass;
switch (node.localName) {
case XmlXades.ElementNames.CounterSignature:
XmlClass = CounterSignature;
break;
case XmlXades.ElementNames.SignatureTimeStamp:
XmlClass = SignatureTimeStamp;
break;
case XmlXades.ElementNames.CompleteCertificateRefs:
XmlClass = CompleteCertificateRefs;
break;
case XmlXades.ElementNames.CompleteRevocationRefs:
XmlClass = CompleteRevocationRefs;
break;
case XmlXades.ElementNames.AttributeCertificateRefs:
XmlClass = AttributeCertificateRefs;
break;
case XmlXades.ElementNames.AttributeRevocationRefs:
XmlClass = AttributeRevocationRefs;
break;
case XmlXades.ElementNames.SigAndRefsTimeStamp:
XmlClass = SigAndRefsTimeStamp;
break;
case XmlXades.ElementNames.RefsOnlyTimeStamp:
XmlClass = RefsOnlyTimeStamp;
break;
case XmlXades.ElementNames.CertificateValues:
XmlClass = CertificateValues;
break;
case XmlXades.ElementNames.RevocationValues:
XmlClass = RevocationValues;
break;
case XmlXades.ElementNames.AttrAuthoritiesCertValues:
XmlClass = AttrAuthoritiesCertValues;
break;
case XmlXades.ElementNames.AttributeRevocationValues:
XmlClass = AttributeRevocationValues;
break;
case XmlXades.ElementNames.ArchiveTimeStamp:
XmlClass = ArchiveTimeStamp;
break;
}
if (XmlClass) {
const item = XmlClass.LoadXml(node);
this.Add(item);
}
}
}
};
__decorate([
XmlAttribute({
localName: XmlXades.AttributeNames.Id,
defaultValue: '',
}),
__metadata("design:type", String)
], UnsignedSignatureProperties.prototype, "Id", void 0);
UnsignedSignatureProperties = __decorate([
XmlElement({
localName: XmlXades.ElementNames.UnsignedSignatureProperties,
parser: UnsignedSignatureProperty,
})
], UnsignedSignatureProperties);
export { UnsignedSignatureProperties };