@sphereon/ssi-sdk.pd-manager 0.34.1-feature.merge.crypto.extensions.modules.39 → 0.34.1-fix.79

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/dist/index.cjs CHANGED
@@ -1068,7 +1068,6 @@ var require_plugin_schema = __commonJS({
1068
1068
  var index_exports = {};
1069
1069
  __export(index_exports, {
1070
1070
  PDManager: () => PDManager,
1071
- ReleaseType: () => import_semver.ReleaseType,
1072
1071
  pdManagerMethods: () => pdManagerMethods,
1073
1072
  schema: () => schema
1074
1073
  });
@@ -1288,6 +1287,5 @@ var PDManager = class {
1288
1287
  };
1289
1288
 
1290
1289
  // src/index.ts
1291
- var import_semver = require("semver");
1292
1290
  var schema = require_plugin_schema();
1293
1291
  //# sourceMappingURL=index.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../plugin.schema.json","../src/index.ts","../src/agent/PDManager.ts"],"sourcesContent":["{\n \"IPDManager\": {\n \"components\": {\n \"schemas\": {\n \"DeleteDefinitionItemArgs\": {\n \"type\": \"object\",\n \"properties\": {\n \"itemId\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\"itemId\"],\n \"additionalProperties\": false\n },\n \"DeleteDefinitionItemsArgs\": {\n \"$ref\": \"#/components/schemas/GetDefinitionItemsArgs\"\n },\n \"GetDefinitionItemsArgs\": {\n \"type\": \"object\",\n \"properties\": {\n \"filter\": {\n \"$ref\": \"#/components/schemas/FindDefinitionArgs\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/FetchOptions\"\n }\n },\n \"additionalProperties\": false\n },\n \"FindDefinitionArgs\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/PresentationDefinitionItemFilter\"\n }\n },\n \"PresentationDefinitionItemFilter\": {\n \"$ref\": \"#/components/schemas/Partial<Omit<PresentationDefinitionItem,(\\\"definitionPayload\\\"|\\\"dcqlPayload\\\")>>\"\n },\n \"Partial<Omit<PresentationDefinitionItem,(\\\"definitionPayload\\\"|\\\"dcqlPayload\\\")>>\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n },\n \"definitionId\": {\n \"type\": \"string\"\n },\n \"tenantId\": {\n \"type\": \"string\"\n },\n \"version\": {\n \"type\": \"string\"\n },\n \"name\": {\n \"type\": \"string\"\n },\n \"purpose\": {\n \"type\": \"string\"\n },\n \"createdAt\": {\n \"type\": \"string\",\n \"format\": \"date-time\"\n },\n \"lastUpdatedAt\": {\n \"type\": \"string\",\n \"format\": \"date-time\"\n }\n },\n \"additionalProperties\": false\n },\n \"FetchOptions\": {\n \"type\": \"object\",\n \"properties\": {\n \"showVersionHistory\": {\n \"type\": \"boolean\"\n }\n },\n \"additionalProperties\": false\n },\n \"GetDefinitionItemArgs\": {\n \"type\": \"object\",\n \"properties\": {\n \"itemId\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\"itemId\"],\n \"additionalProperties\": false\n },\n \"PresentationDefinitionItem\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n },\n \"definitionId\": {\n \"type\": \"string\"\n },\n \"tenantId\": {\n \"type\": \"string\"\n },\n \"version\": {\n \"type\": \"string\"\n },\n \"name\": {\n \"type\": \"string\"\n },\n \"purpose\": {\n \"type\": \"string\"\n },\n \"definitionPayload\": {\n \"$ref\": \"#/components/schemas/IPresentationDefinition\"\n },\n \"dcqlPayload\": {\n \"$ref\": \"#/components/schemas/DcqlQueryREST\"\n },\n \"createdAt\": {\n \"type\": \"string\",\n \"format\": \"date-time\"\n },\n \"lastUpdatedAt\": {\n \"type\": \"string\",\n \"format\": \"date-time\"\n }\n },\n \"required\": [\"id\", \"definitionId\", \"version\", \"definitionPayload\", \"createdAt\", \"lastUpdatedAt\"],\n \"additionalProperties\": false\n },\n \"IPresentationDefinition\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/PresentationDefinitionV1\"\n },\n {\n \"$ref\": \"#/components/schemas/PresentationDefinitionV2\"\n }\n ]\n },\n \"PresentationDefinitionV1\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n },\n \"name\": {\n \"type\": \"string\"\n },\n \"purpose\": {\n \"type\": \"string\"\n },\n \"format\": {\n \"$ref\": \"#/components/schemas/Format\"\n },\n \"submission_requirements\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/SubmissionRequirement\"\n }\n },\n \"input_descriptors\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/InputDescriptorV1\"\n }\n }\n },\n \"required\": [\"id\", \"input_descriptors\"],\n \"additionalProperties\": false\n },\n \"Format\": {\n \"type\": \"object\",\n \"properties\": {\n \"jwt\": {\n \"$ref\": \"#/components/schemas/JwtObject\"\n },\n \"jwt_vc\": {\n \"$ref\": \"#/components/schemas/JwtObject\"\n },\n \"jwt_vc_json\": {\n \"$ref\": \"#/components/schemas/JwtObject\"\n },\n \"jwt_vp\": {\n \"$ref\": \"#/components/schemas/JwtObject\"\n },\n \"jwt_vp_json\": {\n \"$ref\": \"#/components/schemas/JwtObject\"\n },\n \"ldp\": {\n \"$ref\": \"#/components/schemas/LdpObject\"\n },\n \"ldp_vc\": {\n \"$ref\": \"#/components/schemas/LdpObject\"\n },\n \"ldp_vp\": {\n \"$ref\": \"#/components/schemas/LdpObject\"\n },\n \"di\": {\n \"$ref\": \"#/components/schemas/DiObject\"\n },\n \"di_vc\": {\n \"$ref\": \"#/components/schemas/DiObject\"\n },\n \"di_vp\": {\n \"$ref\": \"#/components/schemas/DiObject\"\n },\n \"vc+sd-jwt\": {\n \"$ref\": \"#/components/schemas/SdJwtObject\"\n },\n \"mso_mdoc\": {\n \"$ref\": \"#/components/schemas/MsoMdocObject\"\n }\n },\n \"additionalProperties\": false\n },\n \"JwtObject\": {\n \"type\": \"object\",\n \"properties\": {\n \"alg\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n },\n \"required\": [\"alg\"],\n \"additionalProperties\": false\n },\n \"LdpObject\": {\n \"type\": \"object\",\n \"properties\": {\n \"proof_type\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n },\n \"required\": [\"proof_type\"],\n \"additionalProperties\": false\n },\n \"DiObject\": {\n \"type\": \"object\",\n \"properties\": {\n \"proof_type\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"cryptosuite\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n },\n \"required\": [\"proof_type\", \"cryptosuite\"],\n \"additionalProperties\": false\n },\n \"SdJwtObject\": {\n \"type\": \"object\",\n \"properties\": {\n \"sd-jwt_alg_values\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"kb-jwt_alg_values\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n },\n \"additionalProperties\": false\n },\n \"MsoMdocObject\": {\n \"type\": \"object\",\n \"properties\": {\n \"alg\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n },\n \"required\": [\"alg\"],\n \"additionalProperties\": false\n },\n \"SubmissionRequirement\": {\n \"type\": \"object\",\n \"properties\": {\n \"name\": {\n \"type\": \"string\"\n },\n \"purpose\": {\n \"type\": \"string\"\n },\n \"rule\": {\n \"$ref\": \"#/components/schemas/Rules\"\n },\n \"count\": {\n \"type\": \"number\"\n },\n \"min\": {\n \"type\": \"number\"\n },\n \"max\": {\n \"type\": \"number\"\n },\n \"from\": {\n \"type\": \"string\"\n },\n \"from_nested\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/SubmissionRequirement\"\n }\n }\n },\n \"required\": [\"rule\"],\n \"additionalProperties\": false\n },\n \"Rules\": {\n \"type\": \"string\",\n \"enum\": [\"all\", \"pick\"]\n },\n \"InputDescriptorV1\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n },\n \"name\": {\n \"type\": \"string\"\n },\n \"purpose\": {\n \"type\": \"string\"\n },\n \"group\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"schema\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/Schema\"\n }\n },\n \"issuance\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/Issuance\"\n }\n },\n \"constraints\": {\n \"$ref\": \"#/components/schemas/ConstraintsV1\"\n }\n },\n \"required\": [\"id\", \"schema\"],\n \"additionalProperties\": false\n },\n \"Schema\": {\n \"type\": \"object\",\n \"properties\": {\n \"uri\": {\n \"type\": \"string\"\n },\n \"required\": {\n \"type\": \"boolean\"\n }\n },\n \"required\": [\"uri\"],\n \"additionalProperties\": false\n },\n \"Issuance\": {\n \"type\": \"object\",\n \"properties\": {\n \"manifest\": {\n \"type\": \"string\"\n }\n },\n \"additionalProperties\": {}\n },\n \"ConstraintsV1\": {\n \"type\": \"object\",\n \"properties\": {\n \"limit_disclosure\": {\n \"$ref\": \"#/components/schemas/Optionality\"\n },\n \"statuses\": {\n \"$ref\": \"#/components/schemas/Statuses\"\n },\n \"fields\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/FieldV1\"\n }\n },\n \"subject_is_issuer\": {\n \"$ref\": \"#/components/schemas/Optionality\"\n },\n \"is_holder\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/HolderSubject\"\n }\n },\n \"same_subject\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/HolderSubject\"\n }\n }\n },\n \"additionalProperties\": false\n },\n \"Optionality\": {\n \"type\": \"string\",\n \"enum\": [\"required\", \"preferred\"]\n },\n \"Statuses\": {\n \"type\": \"object\",\n \"properties\": {\n \"active\": {\n \"$ref\": \"#/components/schemas/PdStatus\"\n },\n \"suspended\": {\n \"$ref\": \"#/components/schemas/PdStatus\"\n },\n \"revoked\": {\n \"$ref\": \"#/components/schemas/PdStatus\"\n }\n },\n \"additionalProperties\": false\n },\n \"PdStatus\": {\n \"type\": \"object\",\n \"properties\": {\n \"directive\": {\n \"$ref\": \"#/components/schemas/Directives\"\n }\n },\n \"additionalProperties\": false\n },\n \"Directives\": {\n \"type\": \"string\",\n \"enum\": [\"required\", \"allowed\", \"disallowed\"]\n },\n \"FieldV1\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n },\n \"path\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"purpose\": {\n \"type\": \"string\"\n },\n \"filter\": {\n \"$ref\": \"#/components/schemas/FilterV1\"\n },\n \"predicate\": {\n \"$ref\": \"#/components/schemas/Optionality\"\n }\n },\n \"required\": [\"path\"],\n \"additionalProperties\": false\n },\n \"FilterV1\": {\n \"type\": \"object\",\n \"properties\": {\n \"const\": {\n \"$ref\": \"#/components/schemas/OneOfNumberStringBoolean\"\n },\n \"enum\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/OneOfNumberStringBoolean\"\n }\n },\n \"exclusiveMinimum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"exclusiveMaximum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"format\": {\n \"type\": \"string\"\n },\n \"minLength\": {\n \"type\": \"number\"\n },\n \"maxLength\": {\n \"type\": \"number\"\n },\n \"minimum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"maximum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"not\": {\n \"type\": \"object\"\n },\n \"pattern\": {\n \"type\": \"string\"\n },\n \"type\": {\n \"type\": \"string\"\n }\n },\n \"additionalProperties\": false\n },\n \"OneOfNumberStringBoolean\": {\n \"type\": [\"boolean\", \"number\", \"string\"]\n },\n \"OneOfNumberString\": {\n \"type\": [\"number\", \"string\"]\n },\n \"HolderSubject\": {\n \"type\": \"object\",\n \"properties\": {\n \"field_id\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"directive\": {\n \"$ref\": \"#/components/schemas/Optionality\"\n }\n },\n \"required\": [\"field_id\", \"directive\"],\n \"additionalProperties\": false\n },\n \"PresentationDefinitionV2\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n },\n \"name\": {\n \"type\": \"string\"\n },\n \"purpose\": {\n \"type\": \"string\"\n },\n \"format\": {\n \"$ref\": \"#/components/schemas/Format\"\n },\n \"submission_requirements\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/SubmissionRequirement\"\n }\n },\n \"input_descriptors\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/InputDescriptorV2\"\n }\n },\n \"frame\": {\n \"type\": \"object\"\n }\n },\n \"required\": [\"id\", \"input_descriptors\"],\n \"additionalProperties\": false\n },\n \"InputDescriptorV2\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n },\n \"name\": {\n \"type\": \"string\"\n },\n \"purpose\": {\n \"type\": \"string\"\n },\n \"format\": {\n \"$ref\": \"#/components/schemas/Format\"\n },\n \"group\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"issuance\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/Issuance\"\n }\n },\n \"constraints\": {\n \"$ref\": \"#/components/schemas/ConstraintsV2\"\n }\n },\n \"required\": [\"id\", \"constraints\"],\n \"additionalProperties\": false\n },\n \"ConstraintsV2\": {\n \"type\": \"object\",\n \"properties\": {\n \"limit_disclosure\": {\n \"$ref\": \"#/components/schemas/Optionality\"\n },\n \"statuses\": {\n \"$ref\": \"#/components/schemas/Statuses\"\n },\n \"fields\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/FieldV2\"\n }\n },\n \"subject_is_issuer\": {\n \"$ref\": \"#/components/schemas/Optionality\"\n },\n \"is_holder\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/HolderSubject\"\n }\n },\n \"same_subject\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/HolderSubject\"\n }\n }\n },\n \"additionalProperties\": false\n },\n \"FieldV2\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n },\n \"path\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"purpose\": {\n \"type\": \"string\"\n },\n \"filter\": {\n \"$ref\": \"#/components/schemas/FilterV2\"\n },\n \"predicate\": {\n \"$ref\": \"#/components/schemas/Optionality\"\n },\n \"intent_to_retain\": {\n \"type\": \"boolean\"\n },\n \"name\": {\n \"type\": \"string\"\n },\n \"optional\": {\n \"type\": \"boolean\"\n }\n },\n \"required\": [\"path\"],\n \"additionalProperties\": false\n },\n \"FilterV2\": {\n \"type\": \"object\",\n \"properties\": {\n \"const\": {\n \"$ref\": \"#/components/schemas/OneOfNumberStringBoolean\"\n },\n \"enum\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/OneOfNumberStringBoolean\"\n }\n },\n \"exclusiveMinimum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"exclusiveMaximum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"format\": {\n \"type\": \"string\"\n },\n \"formatMaximum\": {\n \"type\": \"string\"\n },\n \"formatMinimum\": {\n \"type\": \"string\"\n },\n \"formatExclusiveMaximum\": {\n \"type\": \"string\"\n },\n \"formatExclusiveMinimum\": {\n \"type\": \"string\"\n },\n \"minLength\": {\n \"type\": \"number\"\n },\n \"maxLength\": {\n \"type\": \"number\"\n },\n \"minimum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"maximum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"not\": {\n \"type\": \"object\"\n },\n \"pattern\": {\n \"type\": \"string\"\n },\n \"type\": {\n \"type\": \"string\"\n },\n \"contains\": {\n \"$ref\": \"#/components/schemas/FilterV2\"\n },\n \"items\": {\n \"$ref\": \"#/components/schemas/FilterV2Items\"\n }\n },\n \"additionalProperties\": false\n },\n \"FilterV2Items\": {\n \"type\": \"object\",\n \"properties\": {\n \"const\": {\n \"$ref\": \"#/components/schemas/OneOfNumberStringBoolean\"\n },\n \"enum\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/OneOfNumberStringBoolean\"\n }\n },\n \"exclusiveMinimum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"exclusiveMaximum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"format\": {\n \"type\": \"string\"\n },\n \"formatMaximum\": {\n \"type\": \"string\"\n },\n \"formatMinimum\": {\n \"type\": \"string\"\n },\n \"formatExclusiveMaximum\": {\n \"type\": \"string\"\n },\n \"formatExclusiveMinimum\": {\n \"type\": \"string\"\n },\n \"minLength\": {\n \"type\": \"number\"\n },\n \"maxLength\": {\n \"type\": \"number\"\n },\n \"minimum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"maximum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"not\": {\n \"type\": \"object\"\n },\n \"pattern\": {\n \"type\": \"string\"\n },\n \"type\": {\n \"type\": \"string\"\n },\n \"contains\": {\n \"$ref\": \"#/components/schemas/FilterV2\"\n },\n \"items\": {\n \"$ref\": \"#/components/schemas/FilterV2Items\"\n }\n },\n \"additionalProperties\": false\n },\n \"DcqlQueryREST\": {\n \"type\": \"object\",\n \"properties\": {\n \"credentials\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/DcqlCredentialQuery\"\n }\n }\n },\n \"required\": [\"credentials\"],\n \"additionalProperties\": false\n },\n \"DcqlCredentialQuery\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n },\n \"format\": {\n \"type\": \"string\"\n },\n \"alg\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"claims\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/DcqlClaim\"\n }\n },\n \"meta\": {\n \"$ref\": \"#/components/schemas/Record<string,any>\"\n }\n },\n \"required\": [\"id\", \"format\", \"claims\"],\n \"additionalProperties\": false\n },\n \"DcqlClaim\": {\n \"type\": \"object\",\n \"properties\": {\n \"namespace\": {\n \"type\": \"string\"\n },\n \"claim_name\": {\n \"type\": \"string\"\n },\n \"filter\": {\n \"$ref\": \"#/components/schemas/DcqlFilter\"\n }\n },\n \"required\": [\"namespace\", \"claim_name\"],\n \"additionalProperties\": false\n },\n \"DcqlFilter\": {\n \"type\": \"object\",\n \"properties\": {\n \"type\": {\n \"type\": \"string\",\n \"enum\": [\"string\", \"number\", \"boolean\"]\n },\n \"pattern\": {\n \"type\": \"string\"\n },\n \"minimum\": {\n \"type\": \"number\"\n },\n \"maximum\": {\n \"type\": \"number\"\n }\n },\n \"required\": [\"type\"],\n \"additionalProperties\": false\n },\n \"Record<string,any>\": {\n \"type\": \"object\"\n },\n \"HasDefinitionItemArgs\": {\n \"$ref\": \"#/components/schemas/GetDefinitionItemArgs\"\n },\n \"HasDefinitionItemsArgs\": {\n \"$ref\": \"#/components/schemas/GetDefinitionItemsArgs\"\n },\n \"PersistDefinitionArgs\": {\n \"type\": \"object\",\n \"properties\": {\n \"definitionItem\": {\n \"$ref\": \"#/components/schemas/PersistPresentationDefinitionItem\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/PersistOptions\"\n }\n },\n \"required\": [\"definitionItem\"],\n \"additionalProperties\": false\n },\n \"PersistPresentationDefinitionItem\": {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n },\n \"definitionId\": {\n \"type\": \"string\"\n },\n \"version\": {\n \"type\": \"string\"\n },\n \"tenantId\": {\n \"type\": \"string\"\n },\n \"name\": {\n \"type\": \"string\"\n },\n \"purpose\": {\n \"type\": \"string\"\n },\n \"definitionPayload\": {\n \"$ref\": \"#/components/schemas/IPresentationDefinition\"\n },\n \"dcqlPayload\": {\n \"$ref\": \"#/components/schemas/DcqlQueryREST\"\n }\n },\n \"required\": [\"definitionPayload\"]\n },\n \"PersistOptions\": {\n \"type\": \"object\",\n \"properties\": {\n \"versionControlMode\": {\n \"$ref\": \"#/components/schemas/VersionControlMode\"\n },\n \"versionIncrementReleaseType\": {\n \"$ref\": \"#/components/schemas/ReleaseType\"\n }\n },\n \"additionalProperties\": false\n },\n \"VersionControlMode\": {\n \"type\": \"string\",\n \"enum\": [\"AutoIncrement\", \"Manual\", \"Overwrite\", \"OverwriteLatest\"]\n },\n \"ReleaseType\": {\n \"type\": \"string\",\n \"enum\": [\"major\", \"premajor\", \"minor\", \"preminor\", \"patch\", \"prepatch\", \"prerelease\", \"release\"]\n }\n },\n \"methods\": {\n \"pdmDeleteDefinition\": {\n \"description\": \"Delete a single presentation definition records by primary key\",\n \"arguments\": {\n \"$ref\": \"#/components/schemas/DeleteDefinitionItemArgs\"\n },\n \"returnType\": {\n \"type\": \"boolean\"\n }\n },\n \"pdmDeleteDefinitions\": {\n \"description\": \"Delete multiple presentation definitions records using filters\",\n \"arguments\": {\n \"$ref\": \"#/components/schemas/DeleteDefinitionItemsArgs\"\n },\n \"returnType\": {\n \"type\": \"number\"\n }\n },\n \"pdmGetDefinition\": {\n \"description\": \"Get a single presentation definition records by primary key\",\n \"arguments\": {\n \"$ref\": \"#/components/schemas/GetDefinitionItemArgs\"\n },\n \"returnType\": {\n \"$ref\": \"#/components/schemas/PresentationDefinitionItem\"\n }\n },\n \"pdmGetDefinitions\": {\n \"description\": \"Find one or more presentation definition records using filters\",\n \"arguments\": {\n \"$ref\": \"#/components/schemas/GetDefinitionItemsArgs\"\n },\n \"returnType\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/PresentationDefinitionItem\"\n }\n }\n },\n \"pdmHasDefinition\": {\n \"description\": \"Checks whether a presentation definition record exists by primary key\",\n \"arguments\": {\n \"$ref\": \"#/components/schemas/HasDefinitionItemArgs\"\n },\n \"returnType\": {\n \"type\": \"boolean\"\n }\n },\n \"pdmHasDefinitions\": {\n \"description\": \"Checks whether one or more presentation definition records exist using filters\",\n \"arguments\": {\n \"$ref\": \"#/components/schemas/HasDefinitionItemsArgs\"\n },\n \"returnType\": {\n \"type\": \"boolean\"\n }\n },\n \"pdmPersistDefinition\": {\n \"description\": \"Check in a presentation definition. It has version control logic which will add or update presentation definition records and has settings for automatic version numbering.\",\n \"arguments\": {\n \"$ref\": \"#/components/schemas/PersistDefinitionArgs\"\n },\n \"returnType\": {\n \"$ref\": \"#/components/schemas/PresentationDefinitionItem\"\n }\n }\n }\n }\n }\n}\n","/**\n * @public\n */\nconst schema = require('../plugin.schema.json')\nexport { schema }\nexport { PDManager, pdManagerMethods } from './agent/PDManager'\nexport * from './types/IPDManager'\n\nexport { ReleaseType } from 'semver'\n","import { IAgentPlugin } from '@veramo/core'\nimport {\n DeleteDefinitionItemArgs,\n DeleteDefinitionItemsArgs,\n GetDefinitionItemArgs,\n GetDefinitionItemsArgs,\n HasDefinitionItemArgs,\n HasDefinitionItemsArgs,\n IPDManager,\n PersistDefinitionArgs,\n schema,\n} from '../index'\nimport {\n AbstractPDStore,\n isPresentationDefinitionEqual,\n NonPersistedPresentationDefinitionItem,\n PresentationDefinitionItem,\n} from '@sphereon/ssi-sdk.data-store'\nimport semver from 'semver/preload'\nimport { ReleaseType } from 'semver'\n\n// Exposing the methods here for any REST implementation\nexport const pdManagerMethods: Array<string> = [\n 'pdmHasDefinition',\n 'pdmHasGetDefinitions',\n 'pdmGetDefinition',\n 'pdmGetDefinitions',\n 'pdmPersistDefinition',\n 'pdmDeleteDefinition',\n 'pdmDeleteDefinitions',\n]\n\n/**\n * {@inheritDoc IPDManager}\n */\nexport class PDManager implements IAgentPlugin {\n readonly schema = schema.IPDManager\n readonly methods: IPDManager = {\n pdmPersistDefinition: this.pdmPersistDefinition.bind(this),\n pdmHasDefinition: this.pdmHasDefinition.bind(this),\n pdmHasDefinitions: this.pdmHasDefinitions.bind(this),\n pdmGetDefinition: this.pdmGetDefinition.bind(this),\n pdmGetDefinitions: this.pdmGetDefinitions.bind(this),\n pdmDeleteDefinition: this.pdmDeleteDefinition.bind(this),\n pdmDeleteDefinitions: this.pdmDeleteDefinitions.bind(this),\n }\n\n private readonly store: AbstractPDStore\n\n constructor(options: { store: AbstractPDStore }) {\n this.store = options.store\n }\n\n /** {@inheritDoc IPDManager.pdmHasDefinition} */\n private async pdmHasDefinition(args: HasDefinitionItemArgs): Promise<boolean> {\n const { itemId } = args\n return this.store.hasDefinition({ itemId })\n }\n\n /** {@inheritDoc IPDManager.pdmHasDefinitions} */\n private async pdmHasDefinitions(args: HasDefinitionItemsArgs): Promise<boolean> {\n const { filter } = args\n return this.store.hasDefinitions({ filter })\n }\n\n /** {@inheritDoc IPDManager.pdmGetDefinition} */\n private async pdmGetDefinition(args: GetDefinitionItemArgs): Promise<PresentationDefinitionItem> {\n const { itemId } = args\n return this.store.getDefinition({ itemId })\n }\n\n /** {@inheritDoc IPDManager.pdmGetDefinitions} */\n private async pdmGetDefinitions(args: GetDefinitionItemsArgs): Promise<Array<PresentationDefinitionItem>> {\n const { filter, opts } = args\n const allDefinitions = await this.store.getDefinitions({ filter })\n let definitions: PresentationDefinitionItem[] = []\n if (opts == undefined || opts.showVersionHistory !== true) {\n const groupedByDefinitionId = allDefinitions.reduce(\n (acc, entity) => {\n if (!acc[entity.definitionId]) {\n acc[entity.definitionId] = []\n }\n acc[entity.definitionId].push(entity)\n return acc\n },\n {} as Record<string, PresentationDefinitionItem[]>,\n )\n definitions = Object.values(groupedByDefinitionId).map((entities) =>\n entities.reduce((highestVersionItem, baseItem) => {\n const baseVersion = this.normalizeToSemverVersionFormat(baseItem.version)\n const highestVersion = this.normalizeToSemverVersionFormat(highestVersionItem.version)\n return semver.gt(baseVersion, highestVersion) ? baseItem : highestVersionItem\n }),\n )\n } else {\n definitions = allDefinitions\n }\n return definitions\n }\n\n /** {@inheritDoc IPDManager.pdmDeleteDefinition} */\n private async pdmDeleteDefinition(args: DeleteDefinitionItemArgs): Promise<boolean> {\n return this.store.deleteDefinition(args).then((value) => true)\n }\n\n /** {@inheritDoc IPDManager.pdmDeleteDefinitions} */\n private async pdmDeleteDefinitions(args: DeleteDefinitionItemsArgs): Promise<number> {\n return this.store.deleteDefinitions(args)\n }\n\n /** {@inheritDoc IPDManager.pdmPersistDefinition} */\n private async pdmPersistDefinition(args: PersistDefinitionArgs): Promise<PresentationDefinitionItem> {\n const { definitionItem, opts } = args\n const { versionControlMode, versionIncrementReleaseType } = opts ?? { versionControlMode: 'AutoIncrement' }\n const { version, tenantId } = definitionItem\n const definitionId = definitionItem.definitionId ?? definitionItem.definitionPayload.id\n\n let { id } = definitionItem\n if (id !== undefined && versionControlMode !== 'Overwrite') {\n id = undefined\n }\n\n const nonPersistedDefinitionItem: NonPersistedPresentationDefinitionItem = {\n ...definitionItem,\n definitionId: definitionId,\n version: version ?? '1',\n }\n\n const existing = await this.store.getDefinitions({ filter: [{ id, definitionId, tenantId, version }] })\n const existingItem = existing[0]\n\n // Always fetch all definitions for the definitionId/tenantId and determine the truly latest version\n const allDefinitions = await this.store.getDefinitions({ filter: [{ definitionId, tenantId }] })\n allDefinitions.sort((a, b) => semver.compare(this.normalizeToSemverVersionFormat(a.version), this.normalizeToSemverVersionFormat(b.version)))\n const trulyLatestVersionItem = allDefinitions[allDefinitions.length - 1]\n\n let latestVersionItem: PresentationDefinitionItem | undefined = trulyLatestVersionItem\n\n // If a specific version exists and matches existingItem, we keep that as a base.\n // Otherwise we use the trulyLatestVersionItem\n if (existingItem && version) {\n latestVersionItem = trulyLatestVersionItem ?? existingItem\n }\n\n const isPayloadModified = !existingItem || !isPresentationDefinitionEqual(existingItem, definitionItem)\n if (!isPayloadModified) return existingItem\n\n switch (versionControlMode) {\n case 'Overwrite':\n return this.handleOverwriteMode(existingItem, nonPersistedDefinitionItem, version)\n case 'OverwriteLatest':\n return this.handleOverwriteLatestMode(latestVersionItem, nonPersistedDefinitionItem)\n case 'Manual':\n return this.handleManualMode(existingItem, nonPersistedDefinitionItem, tenantId, version)\n case 'AutoIncrement':\n return this.handleAutoIncrementMode(latestVersionItem, nonPersistedDefinitionItem, versionIncrementReleaseType ?? 'major')\n default:\n throw new Error(`Unknown version control mode: ${versionControlMode}`)\n }\n }\n\n private async handleOverwriteMode(\n existingItem: PresentationDefinitionItem | undefined,\n definitionItem: NonPersistedPresentationDefinitionItem,\n version: string | undefined,\n ): Promise<PresentationDefinitionItem> {\n if (existingItem) {\n existingItem.definitionId = definitionItem.definitionId\n existingItem.version = version ?? existingItem.version ?? '1'\n existingItem.tenantId = definitionItem.tenantId\n existingItem.name = definitionItem.definitionPayload.name ?? definitionItem.name\n existingItem.purpose = definitionItem.definitionPayload.purpose ?? definitionItem.purpose\n existingItem.definitionPayload = definitionItem.definitionPayload\n\n return await this.store.updateDefinition(existingItem)\n } else {\n return await this.store.addDefinition(definitionItem)\n }\n }\n\n private async handleOverwriteLatestMode(\n latestVersionItem: PresentationDefinitionItem | undefined,\n definitionItem: NonPersistedPresentationDefinitionItem,\n ): Promise<PresentationDefinitionItem> {\n if (latestVersionItem) {\n latestVersionItem.definitionId = definitionItem.definitionId\n latestVersionItem.tenantId = definitionItem.tenantId\n latestVersionItem.name = definitionItem.name\n latestVersionItem.purpose = definitionItem.purpose\n latestVersionItem.definitionPayload = definitionItem.definitionPayload\n\n return await this.store.updateDefinition(latestVersionItem)\n } else {\n return await this.store.addDefinition(definitionItem)\n }\n }\n\n private async handleManualMode(\n existingItem: PresentationDefinitionItem | undefined,\n definitionItem: NonPersistedPresentationDefinitionItem,\n tenantId: string | undefined,\n version: string | undefined,\n ): Promise<PresentationDefinitionItem> {\n if (existingItem && !isPresentationDefinitionEqual(existingItem, definitionItem)) {\n throw Error(\n `Cannot update definition ${definitionItem.definitionId} for tenant ${tenantId} version ${version} because definition exists and manual version control is enabled.`,\n )\n } else {\n return await this.store.addDefinition(definitionItem)\n }\n }\n\n private async handleAutoIncrementMode(\n latestVersionItem: PresentationDefinitionItem | undefined,\n definitionItem: NonPersistedPresentationDefinitionItem,\n releaseType: ReleaseType,\n ): Promise<PresentationDefinitionItem> {\n const defaultVersion = '1'\n let currentVersion = latestVersionItem?.version ?? definitionItem.version ?? defaultVersion\n let resultVersion: string\n\n if (!latestVersionItem) {\n resultVersion = currentVersion\n } else {\n let [baseVersion, preReleaseSuffix] = currentVersion.split(/-(.+)/)\n\n // Normalize the base version to at least 'major.minor.patch', that's what semver needs as input\n let normalizedBaseVersion = semver.coerce(baseVersion)?.version ?? `${defaultVersion}.0.0`\n let preReleaseIdentifier = preReleaseSuffix ? preReleaseSuffix.match(/^[a-zA-Z]+/)?.[0] : undefined\n let fullVersionToIncrement = preReleaseIdentifier ? `${normalizedBaseVersion}-${preReleaseSuffix}` : normalizedBaseVersion\n\n // Use semver to increment the version\n let incrementedVersion = semver.inc(fullVersionToIncrement, releaseType, preReleaseIdentifier)\n if (!incrementedVersion) {\n throw new Error(`Could not increment ${releaseType} version on ${currentVersion} ${preReleaseSuffix}`)\n }\n\n // Extract new base version to match the original input format\n let [incrementedBaseVersion, incrementedSuffix] = incrementedVersion.split(/-(.+)/)\n let originalParts = baseVersion.split('.')\n let newParts = incrementedBaseVersion.split('.')\n while (newParts.length > originalParts.length) {\n newParts.pop() // Reduce to original length by removing extra .0s\n }\n resultVersion = newParts.join('.')\n if (incrementedSuffix) {\n resultVersion += `-${incrementedSuffix}`\n }\n }\n\n definitionItem.version = resultVersion\n return await this.store.addDefinition(definitionItem)\n }\n\n private normalizeToSemverVersionFormat(version: string): string {\n const defaultVersion = '1.0.0'\n let [baseVersion, preReleaseSuffix] = version.split(/-(.+)/)\n\n // Normalize the base version to at least 'major.minor.patch', that's what semver needs as input\n let normalizedBaseVersion = semver.coerce(baseVersion)?.version ?? defaultVersion\n if (preReleaseSuffix) {\n normalizedBaseVersion += `-${preReleaseSuffix}`\n }\n\n return normalizedBaseVersion\n }\n}\n"],"mappings":"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","names":["module","pdManagerMethods","PDManager","schema","IPDManager","methods","pdmPersistDefinition","bind","pdmHasDefinition","pdmHasDefinitions","pdmGetDefinition","pdmGetDefinitions","pdmDeleteDefinition","pdmDeleteDefinitions","store","options","args","itemId","hasDefinition","filter","hasDefinitions","getDefinition","opts","allDefinitions","getDefinitions","definitions","undefined","showVersionHistory","groupedByDefinitionId","reduce","acc","entity","definitionId","push","Object","values","map","entities","highestVersionItem","baseItem","baseVersion","normalizeToSemverVersionFormat","version","highestVersion","semver","gt","deleteDefinition","then","value","deleteDefinitions","definitionItem","versionControlMode","versionIncrementReleaseType","tenantId","definitionPayload","id","nonPersistedDefinitionItem","existing","existingItem","sort","a","b","compare","trulyLatestVersionItem","length","latestVersionItem","isPayloadModified","isPresentationDefinitionEqual","handleOverwriteMode","handleOverwriteLatestMode","handleManualMode","handleAutoIncrementMode","Error","name","purpose","updateDefinition","addDefinition","releaseType","defaultVersion","currentVersion","resultVersion","preReleaseSuffix","split","normalizedBaseVersion","coerce","preReleaseIdentifier","match","fullVersionToIncrement","incrementedVersion","inc","incrementedBaseVersion","incrementedSuffix","originalParts","newParts","pop","join","schema","require"]}
1
+ {"version":3,"sources":["../plugin.schema.json","../src/index.ts","../src/agent/PDManager.ts"],"sourcesContent":["{\n \"IPDManager\": {\n \"components\": {\n \"schemas\": {\n \"DeleteDefinitionItemArgs\": {\n \"type\": \"object\",\n \"properties\": {\n \"itemId\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\"itemId\"],\n \"additionalProperties\": false\n },\n \"DeleteDefinitionItemsArgs\": {\n \"$ref\": \"#/components/schemas/GetDefinitionItemsArgs\"\n },\n \"GetDefinitionItemsArgs\": {\n \"type\": \"object\",\n \"properties\": {\n \"filter\": {\n \"$ref\": \"#/components/schemas/FindDefinitionArgs\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/FetchOptions\"\n }\n },\n \"additionalProperties\": false\n },\n \"FindDefinitionArgs\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/PresentationDefinitionItemFilter\"\n }\n },\n \"PresentationDefinitionItemFilter\": {\n \"$ref\": \"#/components/schemas/Partial<Omit<PresentationDefinitionItem,(\\\"definitionPayload\\\"|\\\"dcqlPayload\\\")>>\"\n },\n \"Partial<Omit<PresentationDefinitionItem,(\\\"definitionPayload\\\"|\\\"dcqlPayload\\\")>>\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n },\n \"definitionId\": {\n \"type\": \"string\"\n },\n \"tenantId\": {\n \"type\": \"string\"\n },\n \"version\": {\n \"type\": \"string\"\n },\n \"name\": {\n \"type\": \"string\"\n },\n \"purpose\": {\n \"type\": \"string\"\n },\n \"createdAt\": {\n \"type\": \"string\",\n \"format\": \"date-time\"\n },\n \"lastUpdatedAt\": {\n \"type\": \"string\",\n \"format\": \"date-time\"\n }\n },\n \"additionalProperties\": false\n },\n \"FetchOptions\": {\n \"type\": \"object\",\n \"properties\": {\n \"showVersionHistory\": {\n \"type\": \"boolean\"\n }\n },\n \"additionalProperties\": false\n },\n \"GetDefinitionItemArgs\": {\n \"type\": \"object\",\n \"properties\": {\n \"itemId\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\"itemId\"],\n \"additionalProperties\": false\n },\n \"PresentationDefinitionItem\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n },\n \"definitionId\": {\n \"type\": \"string\"\n },\n \"tenantId\": {\n \"type\": \"string\"\n },\n \"version\": {\n \"type\": \"string\"\n },\n \"name\": {\n \"type\": \"string\"\n },\n \"purpose\": {\n \"type\": \"string\"\n },\n \"definitionPayload\": {\n \"$ref\": \"#/components/schemas/IPresentationDefinition\"\n },\n \"dcqlPayload\": {\n \"$ref\": \"#/components/schemas/DcqlQueryREST\"\n },\n \"createdAt\": {\n \"type\": \"string\",\n \"format\": \"date-time\"\n },\n \"lastUpdatedAt\": {\n \"type\": \"string\",\n \"format\": \"date-time\"\n }\n },\n \"required\": [\"id\", \"definitionId\", \"version\", \"definitionPayload\", \"createdAt\", \"lastUpdatedAt\"],\n \"additionalProperties\": false\n },\n \"IPresentationDefinition\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/PresentationDefinitionV1\"\n },\n {\n \"$ref\": \"#/components/schemas/PresentationDefinitionV2\"\n }\n ]\n },\n \"PresentationDefinitionV1\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n },\n \"name\": {\n \"type\": \"string\"\n },\n \"purpose\": {\n \"type\": \"string\"\n },\n \"format\": {\n \"$ref\": \"#/components/schemas/Format\"\n },\n \"submission_requirements\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/SubmissionRequirement\"\n }\n },\n \"input_descriptors\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/InputDescriptorV1\"\n }\n }\n },\n \"required\": [\"id\", \"input_descriptors\"],\n \"additionalProperties\": false\n },\n \"Format\": {\n \"type\": \"object\",\n \"properties\": {\n \"jwt\": {\n \"$ref\": \"#/components/schemas/JwtObject\"\n },\n \"jwt_vc\": {\n \"$ref\": \"#/components/schemas/JwtObject\"\n },\n \"jwt_vc_json\": {\n \"$ref\": \"#/components/schemas/JwtObject\"\n },\n \"jwt_vp\": {\n \"$ref\": \"#/components/schemas/JwtObject\"\n },\n \"jwt_vp_json\": {\n \"$ref\": \"#/components/schemas/JwtObject\"\n },\n \"ldp\": {\n \"$ref\": \"#/components/schemas/LdpObject\"\n },\n \"ldp_vc\": {\n \"$ref\": \"#/components/schemas/LdpObject\"\n },\n \"ldp_vp\": {\n \"$ref\": \"#/components/schemas/LdpObject\"\n },\n \"di\": {\n \"$ref\": \"#/components/schemas/DiObject\"\n },\n \"di_vc\": {\n \"$ref\": \"#/components/schemas/DiObject\"\n },\n \"di_vp\": {\n \"$ref\": \"#/components/schemas/DiObject\"\n },\n \"vc+sd-jwt\": {\n \"$ref\": \"#/components/schemas/SdJwtObject\"\n },\n \"mso_mdoc\": {\n \"$ref\": \"#/components/schemas/MsoMdocObject\"\n }\n },\n \"additionalProperties\": false\n },\n \"JwtObject\": {\n \"type\": \"object\",\n \"properties\": {\n \"alg\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n },\n \"required\": [\"alg\"],\n \"additionalProperties\": false\n },\n \"LdpObject\": {\n \"type\": \"object\",\n \"properties\": {\n \"proof_type\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n },\n \"required\": [\"proof_type\"],\n \"additionalProperties\": false\n },\n \"DiObject\": {\n \"type\": \"object\",\n \"properties\": {\n \"proof_type\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"cryptosuite\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n },\n \"required\": [\"proof_type\", \"cryptosuite\"],\n \"additionalProperties\": false\n },\n \"SdJwtObject\": {\n \"type\": \"object\",\n \"properties\": {\n \"sd-jwt_alg_values\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"kb-jwt_alg_values\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n },\n \"additionalProperties\": false\n },\n \"MsoMdocObject\": {\n \"type\": \"object\",\n \"properties\": {\n \"alg\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n },\n \"required\": [\"alg\"],\n \"additionalProperties\": false\n },\n \"SubmissionRequirement\": {\n \"type\": \"object\",\n \"properties\": {\n \"name\": {\n \"type\": \"string\"\n },\n \"purpose\": {\n \"type\": \"string\"\n },\n \"rule\": {\n \"$ref\": \"#/components/schemas/Rules\"\n },\n \"count\": {\n \"type\": \"number\"\n },\n \"min\": {\n \"type\": \"number\"\n },\n \"max\": {\n \"type\": \"number\"\n },\n \"from\": {\n \"type\": \"string\"\n },\n \"from_nested\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/SubmissionRequirement\"\n }\n }\n },\n \"required\": [\"rule\"],\n \"additionalProperties\": false\n },\n \"Rules\": {\n \"type\": \"string\",\n \"enum\": [\"all\", \"pick\"]\n },\n \"InputDescriptorV1\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n },\n \"name\": {\n \"type\": \"string\"\n },\n \"purpose\": {\n \"type\": \"string\"\n },\n \"group\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"schema\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/Schema\"\n }\n },\n \"issuance\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/Issuance\"\n }\n },\n \"constraints\": {\n \"$ref\": \"#/components/schemas/ConstraintsV1\"\n }\n },\n \"required\": [\"id\", \"schema\"],\n \"additionalProperties\": false\n },\n \"Schema\": {\n \"type\": \"object\",\n \"properties\": {\n \"uri\": {\n \"type\": \"string\"\n },\n \"required\": {\n \"type\": \"boolean\"\n }\n },\n \"required\": [\"uri\"],\n \"additionalProperties\": false\n },\n \"Issuance\": {\n \"type\": \"object\",\n \"properties\": {\n \"manifest\": {\n \"type\": \"string\"\n }\n },\n \"additionalProperties\": {}\n },\n \"ConstraintsV1\": {\n \"type\": \"object\",\n \"properties\": {\n \"limit_disclosure\": {\n \"$ref\": \"#/components/schemas/Optionality\"\n },\n \"statuses\": {\n \"$ref\": \"#/components/schemas/Statuses\"\n },\n \"fields\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/FieldV1\"\n }\n },\n \"subject_is_issuer\": {\n \"$ref\": \"#/components/schemas/Optionality\"\n },\n \"is_holder\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/HolderSubject\"\n }\n },\n \"same_subject\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/HolderSubject\"\n }\n }\n },\n \"additionalProperties\": false\n },\n \"Optionality\": {\n \"type\": \"string\",\n \"enum\": [\"required\", \"preferred\"]\n },\n \"Statuses\": {\n \"type\": \"object\",\n \"properties\": {\n \"active\": {\n \"$ref\": \"#/components/schemas/PdStatus\"\n },\n \"suspended\": {\n \"$ref\": \"#/components/schemas/PdStatus\"\n },\n \"revoked\": {\n \"$ref\": \"#/components/schemas/PdStatus\"\n }\n },\n \"additionalProperties\": false\n },\n \"PdStatus\": {\n \"type\": \"object\",\n \"properties\": {\n \"directive\": {\n \"$ref\": \"#/components/schemas/Directives\"\n }\n },\n \"additionalProperties\": false\n },\n \"Directives\": {\n \"type\": \"string\",\n \"enum\": [\"required\", \"allowed\", \"disallowed\"]\n },\n \"FieldV1\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n },\n \"path\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"purpose\": {\n \"type\": \"string\"\n },\n \"filter\": {\n \"$ref\": \"#/components/schemas/FilterV1\"\n },\n \"predicate\": {\n \"$ref\": \"#/components/schemas/Optionality\"\n }\n },\n \"required\": [\"path\"],\n \"additionalProperties\": false\n },\n \"FilterV1\": {\n \"type\": \"object\",\n \"properties\": {\n \"const\": {\n \"$ref\": \"#/components/schemas/OneOfNumberStringBoolean\"\n },\n \"enum\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/OneOfNumberStringBoolean\"\n }\n },\n \"exclusiveMinimum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"exclusiveMaximum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"format\": {\n \"type\": \"string\"\n },\n \"minLength\": {\n \"type\": \"number\"\n },\n \"maxLength\": {\n \"type\": \"number\"\n },\n \"minimum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"maximum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"not\": {\n \"type\": \"object\"\n },\n \"pattern\": {\n \"type\": \"string\"\n },\n \"type\": {\n \"type\": \"string\"\n }\n },\n \"additionalProperties\": false\n },\n \"OneOfNumberStringBoolean\": {\n \"type\": [\"boolean\", \"number\", \"string\"]\n },\n \"OneOfNumberString\": {\n \"type\": [\"number\", \"string\"]\n },\n \"HolderSubject\": {\n \"type\": \"object\",\n \"properties\": {\n \"field_id\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"directive\": {\n \"$ref\": \"#/components/schemas/Optionality\"\n }\n },\n \"required\": [\"field_id\", \"directive\"],\n \"additionalProperties\": false\n },\n \"PresentationDefinitionV2\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n },\n \"name\": {\n \"type\": \"string\"\n },\n \"purpose\": {\n \"type\": \"string\"\n },\n \"format\": {\n \"$ref\": \"#/components/schemas/Format\"\n },\n \"submission_requirements\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/SubmissionRequirement\"\n }\n },\n \"input_descriptors\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/InputDescriptorV2\"\n }\n },\n \"frame\": {\n \"type\": \"object\"\n }\n },\n \"required\": [\"id\", \"input_descriptors\"],\n \"additionalProperties\": false\n },\n \"InputDescriptorV2\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n },\n \"name\": {\n \"type\": \"string\"\n },\n \"purpose\": {\n \"type\": \"string\"\n },\n \"format\": {\n \"$ref\": \"#/components/schemas/Format\"\n },\n \"group\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"issuance\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/Issuance\"\n }\n },\n \"constraints\": {\n \"$ref\": \"#/components/schemas/ConstraintsV2\"\n }\n },\n \"required\": [\"id\", \"constraints\"],\n \"additionalProperties\": false\n },\n \"ConstraintsV2\": {\n \"type\": \"object\",\n \"properties\": {\n \"limit_disclosure\": {\n \"$ref\": \"#/components/schemas/Optionality\"\n },\n \"statuses\": {\n \"$ref\": \"#/components/schemas/Statuses\"\n },\n \"fields\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/FieldV2\"\n }\n },\n \"subject_is_issuer\": {\n \"$ref\": \"#/components/schemas/Optionality\"\n },\n \"is_holder\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/HolderSubject\"\n }\n },\n \"same_subject\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/HolderSubject\"\n }\n }\n },\n \"additionalProperties\": false\n },\n \"FieldV2\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n },\n \"path\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"purpose\": {\n \"type\": \"string\"\n },\n \"filter\": {\n \"$ref\": \"#/components/schemas/FilterV2\"\n },\n \"predicate\": {\n \"$ref\": \"#/components/schemas/Optionality\"\n },\n \"intent_to_retain\": {\n \"type\": \"boolean\"\n },\n \"name\": {\n \"type\": \"string\"\n },\n \"optional\": {\n \"type\": \"boolean\"\n }\n },\n \"required\": [\"path\"],\n \"additionalProperties\": false\n },\n \"FilterV2\": {\n \"type\": \"object\",\n \"properties\": {\n \"const\": {\n \"$ref\": \"#/components/schemas/OneOfNumberStringBoolean\"\n },\n \"enum\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/OneOfNumberStringBoolean\"\n }\n },\n \"exclusiveMinimum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"exclusiveMaximum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"format\": {\n \"type\": \"string\"\n },\n \"formatMaximum\": {\n \"type\": \"string\"\n },\n \"formatMinimum\": {\n \"type\": \"string\"\n },\n \"formatExclusiveMaximum\": {\n \"type\": \"string\"\n },\n \"formatExclusiveMinimum\": {\n \"type\": \"string\"\n },\n \"minLength\": {\n \"type\": \"number\"\n },\n \"maxLength\": {\n \"type\": \"number\"\n },\n \"minimum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"maximum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"not\": {\n \"type\": \"object\"\n },\n \"pattern\": {\n \"type\": \"string\"\n },\n \"type\": {\n \"type\": \"string\"\n },\n \"contains\": {\n \"$ref\": \"#/components/schemas/FilterV2\"\n },\n \"items\": {\n \"$ref\": \"#/components/schemas/FilterV2Items\"\n }\n },\n \"additionalProperties\": false\n },\n \"FilterV2Items\": {\n \"type\": \"object\",\n \"properties\": {\n \"const\": {\n \"$ref\": \"#/components/schemas/OneOfNumberStringBoolean\"\n },\n \"enum\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/OneOfNumberStringBoolean\"\n }\n },\n \"exclusiveMinimum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"exclusiveMaximum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"format\": {\n \"type\": \"string\"\n },\n \"formatMaximum\": {\n \"type\": \"string\"\n },\n \"formatMinimum\": {\n \"type\": \"string\"\n },\n \"formatExclusiveMaximum\": {\n \"type\": \"string\"\n },\n \"formatExclusiveMinimum\": {\n \"type\": \"string\"\n },\n \"minLength\": {\n \"type\": \"number\"\n },\n \"maxLength\": {\n \"type\": \"number\"\n },\n \"minimum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"maximum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"not\": {\n \"type\": \"object\"\n },\n \"pattern\": {\n \"type\": \"string\"\n },\n \"type\": {\n \"type\": \"string\"\n },\n \"contains\": {\n \"$ref\": \"#/components/schemas/FilterV2\"\n },\n \"items\": {\n \"$ref\": \"#/components/schemas/FilterV2Items\"\n }\n },\n \"additionalProperties\": false\n },\n \"DcqlQueryREST\": {\n \"type\": \"object\",\n \"properties\": {\n \"credentials\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/DcqlCredentialQuery\"\n }\n }\n },\n \"required\": [\"credentials\"],\n \"additionalProperties\": false\n },\n \"DcqlCredentialQuery\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n },\n \"format\": {\n \"type\": \"string\"\n },\n \"alg\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"claims\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/DcqlClaim\"\n }\n },\n \"meta\": {\n \"$ref\": \"#/components/schemas/Record<string,any>\"\n }\n },\n \"required\": [\"id\", \"format\", \"claims\"],\n \"additionalProperties\": false\n },\n \"DcqlClaim\": {\n \"type\": \"object\",\n \"properties\": {\n \"namespace\": {\n \"type\": \"string\"\n },\n \"claim_name\": {\n \"type\": \"string\"\n },\n \"filter\": {\n \"$ref\": \"#/components/schemas/DcqlFilter\"\n }\n },\n \"required\": [\"namespace\", \"claim_name\"],\n \"additionalProperties\": false\n },\n \"DcqlFilter\": {\n \"type\": \"object\",\n \"properties\": {\n \"type\": {\n \"type\": \"string\",\n \"enum\": [\"string\", \"number\", \"boolean\"]\n },\n \"pattern\": {\n \"type\": \"string\"\n },\n \"minimum\": {\n \"type\": \"number\"\n },\n \"maximum\": {\n \"type\": \"number\"\n }\n },\n \"required\": [\"type\"],\n \"additionalProperties\": false\n },\n \"Record<string,any>\": {\n \"type\": \"object\"\n },\n \"HasDefinitionItemArgs\": {\n \"$ref\": \"#/components/schemas/GetDefinitionItemArgs\"\n },\n \"HasDefinitionItemsArgs\": {\n \"$ref\": \"#/components/schemas/GetDefinitionItemsArgs\"\n },\n \"PersistDefinitionArgs\": {\n \"type\": \"object\",\n \"properties\": {\n \"definitionItem\": {\n \"$ref\": \"#/components/schemas/PersistPresentationDefinitionItem\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/PersistOptions\"\n }\n },\n \"required\": [\"definitionItem\"],\n \"additionalProperties\": false\n },\n \"PersistPresentationDefinitionItem\": {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n },\n \"definitionId\": {\n \"type\": \"string\"\n },\n \"version\": {\n \"type\": \"string\"\n },\n \"tenantId\": {\n \"type\": \"string\"\n },\n \"name\": {\n \"type\": \"string\"\n },\n \"purpose\": {\n \"type\": \"string\"\n },\n \"definitionPayload\": {\n \"$ref\": \"#/components/schemas/IPresentationDefinition\"\n },\n \"dcqlPayload\": {\n \"$ref\": \"#/components/schemas/DcqlQueryREST\"\n }\n },\n \"required\": [\"definitionPayload\"]\n },\n \"PersistOptions\": {\n \"type\": \"object\",\n \"properties\": {\n \"versionControlMode\": {\n \"$ref\": \"#/components/schemas/VersionControlMode\"\n },\n \"versionIncrementReleaseType\": {\n \"$ref\": \"#/components/schemas/ReleaseType\"\n }\n },\n \"additionalProperties\": false\n },\n \"VersionControlMode\": {\n \"type\": \"string\",\n \"enum\": [\"AutoIncrement\", \"Manual\", \"Overwrite\", \"OverwriteLatest\"]\n },\n \"ReleaseType\": {\n \"type\": \"string\",\n \"enum\": [\"major\", \"premajor\", \"minor\", \"preminor\", \"patch\", \"prepatch\", \"prerelease\", \"release\"]\n }\n },\n \"methods\": {\n \"pdmDeleteDefinition\": {\n \"description\": \"Delete a single presentation definition records by primary key\",\n \"arguments\": {\n \"$ref\": \"#/components/schemas/DeleteDefinitionItemArgs\"\n },\n \"returnType\": {\n \"type\": \"boolean\"\n }\n },\n \"pdmDeleteDefinitions\": {\n \"description\": \"Delete multiple presentation definitions records using filters\",\n \"arguments\": {\n \"$ref\": \"#/components/schemas/DeleteDefinitionItemsArgs\"\n },\n \"returnType\": {\n \"type\": \"number\"\n }\n },\n \"pdmGetDefinition\": {\n \"description\": \"Get a single presentation definition records by primary key\",\n \"arguments\": {\n \"$ref\": \"#/components/schemas/GetDefinitionItemArgs\"\n },\n \"returnType\": {\n \"$ref\": \"#/components/schemas/PresentationDefinitionItem\"\n }\n },\n \"pdmGetDefinitions\": {\n \"description\": \"Find one or more presentation definition records using filters\",\n \"arguments\": {\n \"$ref\": \"#/components/schemas/GetDefinitionItemsArgs\"\n },\n \"returnType\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/PresentationDefinitionItem\"\n }\n }\n },\n \"pdmHasDefinition\": {\n \"description\": \"Checks whether a presentation definition record exists by primary key\",\n \"arguments\": {\n \"$ref\": \"#/components/schemas/HasDefinitionItemArgs\"\n },\n \"returnType\": {\n \"type\": \"boolean\"\n }\n },\n \"pdmHasDefinitions\": {\n \"description\": \"Checks whether one or more presentation definition records exist using filters\",\n \"arguments\": {\n \"$ref\": \"#/components/schemas/HasDefinitionItemsArgs\"\n },\n \"returnType\": {\n \"type\": \"boolean\"\n }\n },\n \"pdmPersistDefinition\": {\n \"description\": \"Check in a presentation definition. It has version control logic which will add or update presentation definition records and has settings for automatic version numbering.\",\n \"arguments\": {\n \"$ref\": \"#/components/schemas/PersistDefinitionArgs\"\n },\n \"returnType\": {\n \"$ref\": \"#/components/schemas/PresentationDefinitionItem\"\n }\n }\n }\n }\n }\n}\n","/**\n * @public\n */\nconst schema = require('../plugin.schema.json')\nexport { schema }\nexport { PDManager, pdManagerMethods } from './agent/PDManager'\nexport * from './types/IPDManager'\n\nexport type { ReleaseType } from 'semver'\n","import { IAgentPlugin } from '@veramo/core'\nimport {\n DeleteDefinitionItemArgs,\n DeleteDefinitionItemsArgs,\n GetDefinitionItemArgs,\n GetDefinitionItemsArgs,\n HasDefinitionItemArgs,\n HasDefinitionItemsArgs,\n IPDManager,\n PersistDefinitionArgs,\n schema,\n} from '../index'\nimport {\n AbstractPDStore,\n isPresentationDefinitionEqual,\n NonPersistedPresentationDefinitionItem,\n PresentationDefinitionItem,\n} from '@sphereon/ssi-sdk.data-store'\nimport semver from 'semver/preload'\nimport { ReleaseType } from 'semver'\n\n// Exposing the methods here for any REST implementation\nexport const pdManagerMethods: Array<string> = [\n 'pdmHasDefinition',\n 'pdmHasGetDefinitions',\n 'pdmGetDefinition',\n 'pdmGetDefinitions',\n 'pdmPersistDefinition',\n 'pdmDeleteDefinition',\n 'pdmDeleteDefinitions',\n]\n\n/**\n * {@inheritDoc IPDManager}\n */\nexport class PDManager implements IAgentPlugin {\n readonly schema = schema.IPDManager\n readonly methods: IPDManager = {\n pdmPersistDefinition: this.pdmPersistDefinition.bind(this),\n pdmHasDefinition: this.pdmHasDefinition.bind(this),\n pdmHasDefinitions: this.pdmHasDefinitions.bind(this),\n pdmGetDefinition: this.pdmGetDefinition.bind(this),\n pdmGetDefinitions: this.pdmGetDefinitions.bind(this),\n pdmDeleteDefinition: this.pdmDeleteDefinition.bind(this),\n pdmDeleteDefinitions: this.pdmDeleteDefinitions.bind(this),\n }\n\n private readonly store: AbstractPDStore\n\n constructor(options: { store: AbstractPDStore }) {\n this.store = options.store\n }\n\n /** {@inheritDoc IPDManager.pdmHasDefinition} */\n private async pdmHasDefinition(args: HasDefinitionItemArgs): Promise<boolean> {\n const { itemId } = args\n return this.store.hasDefinition({ itemId })\n }\n\n /** {@inheritDoc IPDManager.pdmHasDefinitions} */\n private async pdmHasDefinitions(args: HasDefinitionItemsArgs): Promise<boolean> {\n const { filter } = args\n return this.store.hasDefinitions({ filter })\n }\n\n /** {@inheritDoc IPDManager.pdmGetDefinition} */\n private async pdmGetDefinition(args: GetDefinitionItemArgs): Promise<PresentationDefinitionItem> {\n const { itemId } = args\n return this.store.getDefinition({ itemId })\n }\n\n /** {@inheritDoc IPDManager.pdmGetDefinitions} */\n private async pdmGetDefinitions(args: GetDefinitionItemsArgs): Promise<Array<PresentationDefinitionItem>> {\n const { filter, opts } = args\n const allDefinitions = await this.store.getDefinitions({ filter })\n let definitions: PresentationDefinitionItem[] = []\n if (opts == undefined || opts.showVersionHistory !== true) {\n const groupedByDefinitionId = allDefinitions.reduce(\n (acc, entity) => {\n if (!acc[entity.definitionId]) {\n acc[entity.definitionId] = []\n }\n acc[entity.definitionId].push(entity)\n return acc\n },\n {} as Record<string, PresentationDefinitionItem[]>,\n )\n definitions = Object.values(groupedByDefinitionId).map((entities) =>\n entities.reduce((highestVersionItem, baseItem) => {\n const baseVersion = this.normalizeToSemverVersionFormat(baseItem.version)\n const highestVersion = this.normalizeToSemverVersionFormat(highestVersionItem.version)\n return semver.gt(baseVersion, highestVersion) ? baseItem : highestVersionItem\n }),\n )\n } else {\n definitions = allDefinitions\n }\n return definitions\n }\n\n /** {@inheritDoc IPDManager.pdmDeleteDefinition} */\n private async pdmDeleteDefinition(args: DeleteDefinitionItemArgs): Promise<boolean> {\n return this.store.deleteDefinition(args).then((value) => true)\n }\n\n /** {@inheritDoc IPDManager.pdmDeleteDefinitions} */\n private async pdmDeleteDefinitions(args: DeleteDefinitionItemsArgs): Promise<number> {\n return this.store.deleteDefinitions(args)\n }\n\n /** {@inheritDoc IPDManager.pdmPersistDefinition} */\n private async pdmPersistDefinition(args: PersistDefinitionArgs): Promise<PresentationDefinitionItem> {\n const { definitionItem, opts } = args\n const { versionControlMode, versionIncrementReleaseType } = opts ?? { versionControlMode: 'AutoIncrement' }\n const { version, tenantId } = definitionItem\n const definitionId = definitionItem.definitionId ?? definitionItem.definitionPayload.id\n\n let { id } = definitionItem\n if (id !== undefined && versionControlMode !== 'Overwrite') {\n id = undefined\n }\n\n const nonPersistedDefinitionItem: NonPersistedPresentationDefinitionItem = {\n ...definitionItem,\n definitionId: definitionId,\n version: version ?? '1',\n }\n\n const existing = await this.store.getDefinitions({ filter: [{ id, definitionId, tenantId, version }] })\n const existingItem = existing[0]\n\n // Always fetch all definitions for the definitionId/tenantId and determine the truly latest version\n const allDefinitions = await this.store.getDefinitions({ filter: [{ definitionId, tenantId }] })\n allDefinitions.sort((a, b) => semver.compare(this.normalizeToSemverVersionFormat(a.version), this.normalizeToSemverVersionFormat(b.version)))\n const trulyLatestVersionItem = allDefinitions[allDefinitions.length - 1]\n\n let latestVersionItem: PresentationDefinitionItem | undefined = trulyLatestVersionItem\n\n // If a specific version exists and matches existingItem, we keep that as a base.\n // Otherwise we use the trulyLatestVersionItem\n if (existingItem && version) {\n latestVersionItem = trulyLatestVersionItem ?? existingItem\n }\n\n const isPayloadModified = !existingItem || !isPresentationDefinitionEqual(existingItem, definitionItem)\n if (!isPayloadModified) return existingItem\n\n switch (versionControlMode) {\n case 'Overwrite':\n return this.handleOverwriteMode(existingItem, nonPersistedDefinitionItem, version)\n case 'OverwriteLatest':\n return this.handleOverwriteLatestMode(latestVersionItem, nonPersistedDefinitionItem)\n case 'Manual':\n return this.handleManualMode(existingItem, nonPersistedDefinitionItem, tenantId, version)\n case 'AutoIncrement':\n return this.handleAutoIncrementMode(latestVersionItem, nonPersistedDefinitionItem, versionIncrementReleaseType ?? 'major')\n default:\n throw new Error(`Unknown version control mode: ${versionControlMode}`)\n }\n }\n\n private async handleOverwriteMode(\n existingItem: PresentationDefinitionItem | undefined,\n definitionItem: NonPersistedPresentationDefinitionItem,\n version: string | undefined,\n ): Promise<PresentationDefinitionItem> {\n if (existingItem) {\n existingItem.definitionId = definitionItem.definitionId\n existingItem.version = version ?? existingItem.version ?? '1'\n existingItem.tenantId = definitionItem.tenantId\n existingItem.name = definitionItem.definitionPayload.name ?? definitionItem.name\n existingItem.purpose = definitionItem.definitionPayload.purpose ?? definitionItem.purpose\n existingItem.definitionPayload = definitionItem.definitionPayload\n\n return await this.store.updateDefinition(existingItem)\n } else {\n return await this.store.addDefinition(definitionItem)\n }\n }\n\n private async handleOverwriteLatestMode(\n latestVersionItem: PresentationDefinitionItem | undefined,\n definitionItem: NonPersistedPresentationDefinitionItem,\n ): Promise<PresentationDefinitionItem> {\n if (latestVersionItem) {\n latestVersionItem.definitionId = definitionItem.definitionId\n latestVersionItem.tenantId = definitionItem.tenantId\n latestVersionItem.name = definitionItem.name\n latestVersionItem.purpose = definitionItem.purpose\n latestVersionItem.definitionPayload = definitionItem.definitionPayload\n\n return await this.store.updateDefinition(latestVersionItem)\n } else {\n return await this.store.addDefinition(definitionItem)\n }\n }\n\n private async handleManualMode(\n existingItem: PresentationDefinitionItem | undefined,\n definitionItem: NonPersistedPresentationDefinitionItem,\n tenantId: string | undefined,\n version: string | undefined,\n ): Promise<PresentationDefinitionItem> {\n if (existingItem && !isPresentationDefinitionEqual(existingItem, definitionItem)) {\n throw Error(\n `Cannot update definition ${definitionItem.definitionId} for tenant ${tenantId} version ${version} because definition exists and manual version control is enabled.`,\n )\n } else {\n return await this.store.addDefinition(definitionItem)\n }\n }\n\n private async handleAutoIncrementMode(\n latestVersionItem: PresentationDefinitionItem | undefined,\n definitionItem: NonPersistedPresentationDefinitionItem,\n releaseType: ReleaseType,\n ): Promise<PresentationDefinitionItem> {\n const defaultVersion = '1'\n let currentVersion = latestVersionItem?.version ?? definitionItem.version ?? defaultVersion\n let resultVersion: string\n\n if (!latestVersionItem) {\n resultVersion = currentVersion\n } else {\n let [baseVersion, preReleaseSuffix] = currentVersion.split(/-(.+)/)\n\n // Normalize the base version to at least 'major.minor.patch', that's what semver needs as input\n let normalizedBaseVersion = semver.coerce(baseVersion)?.version ?? `${defaultVersion}.0.0`\n let preReleaseIdentifier = preReleaseSuffix ? preReleaseSuffix.match(/^[a-zA-Z]+/)?.[0] : undefined\n let fullVersionToIncrement = preReleaseIdentifier ? `${normalizedBaseVersion}-${preReleaseSuffix}` : normalizedBaseVersion\n\n // Use semver to increment the version\n let incrementedVersion = semver.inc(fullVersionToIncrement, releaseType, preReleaseIdentifier)\n if (!incrementedVersion) {\n throw new Error(`Could not increment ${releaseType} version on ${currentVersion} ${preReleaseSuffix}`)\n }\n\n // Extract new base version to match the original input format\n let [incrementedBaseVersion, incrementedSuffix] = incrementedVersion.split(/-(.+)/)\n let originalParts = baseVersion.split('.')\n let newParts = incrementedBaseVersion.split('.')\n while (newParts.length > originalParts.length) {\n newParts.pop() // Reduce to original length by removing extra .0s\n }\n resultVersion = newParts.join('.')\n if (incrementedSuffix) {\n resultVersion += `-${incrementedSuffix}`\n }\n }\n\n definitionItem.version = resultVersion\n return await this.store.addDefinition(definitionItem)\n }\n\n private normalizeToSemverVersionFormat(version: string): string {\n const defaultVersion = '1.0.0'\n let [baseVersion, preReleaseSuffix] = version.split(/-(.+)/)\n\n // Normalize the base version to at least 'major.minor.patch', that's what semver needs as input\n let normalizedBaseVersion = semver.coerce(baseVersion)?.version ?? defaultVersion\n if (preReleaseSuffix) {\n normalizedBaseVersion += `-${preReleaseSuffix}`\n }\n\n return normalizedBaseVersion\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA,gCAAAA,SAAA;AAAA,IAAAA,QAAA;AAAA,MACE,YAAc;AAAA,QACZ,YAAc;AAAA,UACZ,SAAW;AAAA,YACT,0BAA4B;AAAA,cAC1B,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,UAAY,CAAC,QAAQ;AAAA,cACrB,sBAAwB;AAAA,YAC1B;AAAA,YACA,2BAA6B;AAAA,cAC3B,MAAQ;AAAA,YACV;AAAA,YACA,wBAA0B;AAAA,cACxB,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,oBAAsB;AAAA,cACpB,MAAQ;AAAA,cACR,OAAS;AAAA,gBACP,MAAQ;AAAA,cACV;AAAA,YACF;AAAA,YACA,kCAAoC;AAAA,cAClC,MAAQ;AAAA,YACV;AAAA,YACA,iFAAqF;AAAA,cACnF,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,IAAM;AAAA,kBACJ,MAAQ;AAAA,gBACV;AAAA,gBACA,cAAgB;AAAA,kBACd,MAAQ;AAAA,gBACV;AAAA,gBACA,UAAY;AAAA,kBACV,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,WAAa;AAAA,kBACX,MAAQ;AAAA,kBACR,QAAU;AAAA,gBACZ;AAAA,gBACA,eAAiB;AAAA,kBACf,MAAQ;AAAA,kBACR,QAAU;AAAA,gBACZ;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,cAAgB;AAAA,cACd,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,oBAAsB;AAAA,kBACpB,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,uBAAyB;AAAA,cACvB,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,UAAY,CAAC,QAAQ;AAAA,cACrB,sBAAwB;AAAA,YAC1B;AAAA,YACA,4BAA8B;AAAA,cAC5B,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,IAAM;AAAA,kBACJ,MAAQ;AAAA,gBACV;AAAA,gBACA,cAAgB;AAAA,kBACd,MAAQ;AAAA,gBACV;AAAA,gBACA,UAAY;AAAA,kBACV,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,mBAAqB;AAAA,kBACnB,MAAQ;AAAA,gBACV;AAAA,gBACA,aAAe;AAAA,kBACb,MAAQ;AAAA,gBACV;AAAA,gBACA,WAAa;AAAA,kBACX,MAAQ;AAAA,kBACR,QAAU;AAAA,gBACZ;AAAA,gBACA,eAAiB;AAAA,kBACf,MAAQ;AAAA,kBACR,QAAU;AAAA,gBACZ;AAAA,cACF;AAAA,cACA,UAAY,CAAC,MAAM,gBAAgB,WAAW,qBAAqB,aAAa,eAAe;AAAA,cAC/F,sBAAwB;AAAA,YAC1B;AAAA,YACA,yBAA2B;AAAA,cACzB,OAAS;AAAA,gBACP;AAAA,kBACE,MAAQ;AAAA,gBACV;AAAA,gBACA;AAAA,kBACE,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,YACF;AAAA,YACA,0BAA4B;AAAA,cAC1B,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,IAAM;AAAA,kBACJ,MAAQ;AAAA,gBACV;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,gBACA,yBAA2B;AAAA,kBACzB,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,mBAAqB;AAAA,kBACnB,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,cACF;AAAA,cACA,UAAY,CAAC,MAAM,mBAAmB;AAAA,cACtC,sBAAwB;AAAA,YAC1B;AAAA,YACA,QAAU;AAAA,cACR,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,gBACA,aAAe;AAAA,kBACb,MAAQ;AAAA,gBACV;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,gBACA,aAAe;AAAA,kBACb,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,gBACA,IAAM;AAAA,kBACJ,MAAQ;AAAA,gBACV;AAAA,gBACA,OAAS;AAAA,kBACP,MAAQ;AAAA,gBACV;AAAA,gBACA,OAAS;AAAA,kBACP,MAAQ;AAAA,gBACV;AAAA,gBACA,aAAa;AAAA,kBACX,MAAQ;AAAA,gBACV;AAAA,gBACA,UAAY;AAAA,kBACV,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,WAAa;AAAA,cACX,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,KAAO;AAAA,kBACL,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,cACF;AAAA,cACA,UAAY,CAAC,KAAK;AAAA,cAClB,sBAAwB;AAAA,YAC1B;AAAA,YACA,WAAa;AAAA,cACX,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,YAAc;AAAA,kBACZ,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,cACF;AAAA,cACA,UAAY,CAAC,YAAY;AAAA,cACzB,sBAAwB;AAAA,YAC1B;AAAA,YACA,UAAY;AAAA,cACV,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,YAAc;AAAA,kBACZ,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,aAAe;AAAA,kBACb,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,cACF;AAAA,cACA,UAAY,CAAC,cAAc,aAAa;AAAA,cACxC,sBAAwB;AAAA,YAC1B;AAAA,YACA,aAAe;AAAA,cACb,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,qBAAqB;AAAA,kBACnB,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,qBAAqB;AAAA,kBACnB,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,eAAiB;AAAA,cACf,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,KAAO;AAAA,kBACL,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,cACF;AAAA,cACA,UAAY,CAAC,KAAK;AAAA,cAClB,sBAAwB;AAAA,YAC1B;AAAA,YACA,uBAAyB;AAAA,cACvB,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,MAAQ;AAAA,kBACN,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,gBACV;AAAA,gBACA,OAAS;AAAA,kBACP,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,gBACV;AAAA,gBACA,aAAe;AAAA,kBACb,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,cACF;AAAA,cACA,UAAY,CAAC,MAAM;AAAA,cACnB,sBAAwB;AAAA,YAC1B;AAAA,YACA,OAAS;AAAA,cACP,MAAQ;AAAA,cACR,MAAQ,CAAC,OAAO,MAAM;AAAA,YACxB;AAAA,YACA,mBAAqB;AAAA,cACnB,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,IAAM;AAAA,kBACJ,MAAQ;AAAA,gBACV;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,OAAS;AAAA,kBACP,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,UAAY;AAAA,kBACV,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,aAAe;AAAA,kBACb,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,UAAY,CAAC,MAAM,QAAQ;AAAA,cAC3B,sBAAwB;AAAA,YAC1B;AAAA,YACA,QAAU;AAAA,cACR,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,UAAY;AAAA,kBACV,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,UAAY,CAAC,KAAK;AAAA,cAClB,sBAAwB;AAAA,YAC1B;AAAA,YACA,UAAY;AAAA,cACV,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,UAAY;AAAA,kBACV,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,sBAAwB,CAAC;AAAA,YAC3B;AAAA,YACA,eAAiB;AAAA,cACf,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,kBAAoB;AAAA,kBAClB,MAAQ;AAAA,gBACV;AAAA,gBACA,UAAY;AAAA,kBACV,MAAQ;AAAA,gBACV;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,mBAAqB;AAAA,kBACnB,MAAQ;AAAA,gBACV;AAAA,gBACA,WAAa;AAAA,kBACX,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,cAAgB;AAAA,kBACd,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,aAAe;AAAA,cACb,MAAQ;AAAA,cACR,MAAQ,CAAC,YAAY,WAAW;AAAA,YAClC;AAAA,YACA,UAAY;AAAA,cACV,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,gBACA,WAAa;AAAA,kBACX,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,UAAY;AAAA,cACV,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,WAAa;AAAA,kBACX,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,YAAc;AAAA,cACZ,MAAQ;AAAA,cACR,MAAQ,CAAC,YAAY,WAAW,YAAY;AAAA,YAC9C;AAAA,YACA,SAAW;AAAA,cACT,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,IAAM;AAAA,kBACJ,MAAQ;AAAA,gBACV;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,gBACA,WAAa;AAAA,kBACX,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,UAAY,CAAC,MAAM;AAAA,cACnB,sBAAwB;AAAA,YAC1B;AAAA,YACA,UAAY;AAAA,cACV,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,OAAS;AAAA,kBACP,MAAQ;AAAA,gBACV;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,kBAAoB;AAAA,kBAClB,MAAQ;AAAA,gBACV;AAAA,gBACA,kBAAoB;AAAA,kBAClB,MAAQ;AAAA,gBACV;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,gBACA,WAAa;AAAA,kBACX,MAAQ;AAAA,gBACV;AAAA,gBACA,WAAa;AAAA,kBACX,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,0BAA4B;AAAA,cAC1B,MAAQ,CAAC,WAAW,UAAU,QAAQ;AAAA,YACxC;AAAA,YACA,mBAAqB;AAAA,cACnB,MAAQ,CAAC,UAAU,QAAQ;AAAA,YAC7B;AAAA,YACA,eAAiB;AAAA,cACf,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,UAAY;AAAA,kBACV,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,WAAa;AAAA,kBACX,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,UAAY,CAAC,YAAY,WAAW;AAAA,cACpC,sBAAwB;AAAA,YAC1B;AAAA,YACA,0BAA4B;AAAA,cAC1B,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,IAAM;AAAA,kBACJ,MAAQ;AAAA,gBACV;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,gBACA,yBAA2B;AAAA,kBACzB,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,mBAAqB;AAAA,kBACnB,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,OAAS;AAAA,kBACP,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,UAAY,CAAC,MAAM,mBAAmB;AAAA,cACtC,sBAAwB;AAAA,YAC1B;AAAA,YACA,mBAAqB;AAAA,cACnB,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,IAAM;AAAA,kBACJ,MAAQ;AAAA,gBACV;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,gBACA,OAAS;AAAA,kBACP,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,UAAY;AAAA,kBACV,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,aAAe;AAAA,kBACb,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,UAAY,CAAC,MAAM,aAAa;AAAA,cAChC,sBAAwB;AAAA,YAC1B;AAAA,YACA,eAAiB;AAAA,cACf,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,kBAAoB;AAAA,kBAClB,MAAQ;AAAA,gBACV;AAAA,gBACA,UAAY;AAAA,kBACV,MAAQ;AAAA,gBACV;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,mBAAqB;AAAA,kBACnB,MAAQ;AAAA,gBACV;AAAA,gBACA,WAAa;AAAA,kBACX,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,cAAgB;AAAA,kBACd,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,SAAW;AAAA,cACT,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,IAAM;AAAA,kBACJ,MAAQ;AAAA,gBACV;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,gBACA,WAAa;AAAA,kBACX,MAAQ;AAAA,gBACV;AAAA,gBACA,kBAAoB;AAAA,kBAClB,MAAQ;AAAA,gBACV;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,gBACV;AAAA,gBACA,UAAY;AAAA,kBACV,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,UAAY,CAAC,MAAM;AAAA,cACnB,sBAAwB;AAAA,YAC1B;AAAA,YACA,UAAY;AAAA,cACV,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,OAAS;AAAA,kBACP,MAAQ;AAAA,gBACV;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,kBAAoB;AAAA,kBAClB,MAAQ;AAAA,gBACV;AAAA,gBACA,kBAAoB;AAAA,kBAClB,MAAQ;AAAA,gBACV;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,gBACA,eAAiB;AAAA,kBACf,MAAQ;AAAA,gBACV;AAAA,gBACA,eAAiB;AAAA,kBACf,MAAQ;AAAA,gBACV;AAAA,gBACA,wBAA0B;AAAA,kBACxB,MAAQ;AAAA,gBACV;AAAA,gBACA,wBAA0B;AAAA,kBACxB,MAAQ;AAAA,gBACV;AAAA,gBACA,WAAa;AAAA,kBACX,MAAQ;AAAA,gBACV;AAAA,gBACA,WAAa;AAAA,kBACX,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,gBACV;AAAA,gBACA,UAAY;AAAA,kBACV,MAAQ;AAAA,gBACV;AAAA,gBACA,OAAS;AAAA,kBACP,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,eAAiB;AAAA,cACf,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,OAAS;AAAA,kBACP,MAAQ;AAAA,gBACV;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,kBAAoB;AAAA,kBAClB,MAAQ;AAAA,gBACV;AAAA,gBACA,kBAAoB;AAAA,kBAClB,MAAQ;AAAA,gBACV;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,gBACA,eAAiB;AAAA,kBACf,MAAQ;AAAA,gBACV;AAAA,gBACA,eAAiB;AAAA,kBACf,MAAQ;AAAA,gBACV;AAAA,gBACA,wBAA0B;AAAA,kBACxB,MAAQ;AAAA,gBACV;AAAA,gBACA,wBAA0B;AAAA,kBACxB,MAAQ;AAAA,gBACV;AAAA,gBACA,WAAa;AAAA,kBACX,MAAQ;AAAA,gBACV;AAAA,gBACA,WAAa;AAAA,kBACX,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,gBACV;AAAA,gBACA,UAAY;AAAA,kBACV,MAAQ;AAAA,gBACV;AAAA,gBACA,OAAS;AAAA,kBACP,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,eAAiB;AAAA,cACf,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,aAAe;AAAA,kBACb,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,cACF;AAAA,cACA,UAAY,CAAC,aAAa;AAAA,cAC1B,sBAAwB;AAAA,YAC1B;AAAA,YACA,qBAAuB;AAAA,cACrB,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,IAAM;AAAA,kBACJ,MAAQ;AAAA,gBACV;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,UAAY,CAAC,MAAM,UAAU,QAAQ;AAAA,cACrC,sBAAwB;AAAA,YAC1B;AAAA,YACA,WAAa;AAAA,cACX,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,WAAa;AAAA,kBACX,MAAQ;AAAA,gBACV;AAAA,gBACA,YAAc;AAAA,kBACZ,MAAQ;AAAA,gBACV;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,UAAY,CAAC,aAAa,YAAY;AAAA,cACtC,sBAAwB;AAAA,YAC1B;AAAA,YACA,YAAc;AAAA,cACZ,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,MAAQ;AAAA,kBACN,MAAQ;AAAA,kBACR,MAAQ,CAAC,UAAU,UAAU,SAAS;AAAA,gBACxC;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,UAAY,CAAC,MAAM;AAAA,cACnB,sBAAwB;AAAA,YAC1B;AAAA,YACA,sBAAsB;AAAA,cACpB,MAAQ;AAAA,YACV;AAAA,YACA,uBAAyB;AAAA,cACvB,MAAQ;AAAA,YACV;AAAA,YACA,wBAA0B;AAAA,cACxB,MAAQ;AAAA,YACV;AAAA,YACA,uBAAyB;AAAA,cACvB,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,gBAAkB;AAAA,kBAChB,MAAQ;AAAA,gBACV;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,UAAY,CAAC,gBAAgB;AAAA,cAC7B,sBAAwB;AAAA,YAC1B;AAAA,YACA,mCAAqC;AAAA,cACnC,MAAQ;AAAA,cACR,sBAAwB;AAAA,cACxB,YAAc;AAAA,gBACZ,IAAM;AAAA,kBACJ,MAAQ;AAAA,gBACV;AAAA,gBACA,cAAgB;AAAA,kBACd,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,UAAY;AAAA,kBACV,MAAQ;AAAA,gBACV;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,mBAAqB;AAAA,kBACnB,MAAQ;AAAA,gBACV;AAAA,gBACA,aAAe;AAAA,kBACb,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,UAAY,CAAC,mBAAmB;AAAA,YAClC;AAAA,YACA,gBAAkB;AAAA,cAChB,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,oBAAsB;AAAA,kBACpB,MAAQ;AAAA,gBACV;AAAA,gBACA,6BAA+B;AAAA,kBAC7B,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,oBAAsB;AAAA,cACpB,MAAQ;AAAA,cACR,MAAQ,CAAC,iBAAiB,UAAU,aAAa,iBAAiB;AAAA,YACpE;AAAA,YACA,aAAe;AAAA,cACb,MAAQ;AAAA,cACR,MAAQ,CAAC,SAAS,YAAY,SAAS,YAAY,SAAS,YAAY,cAAc,SAAS;AAAA,YACjG;AAAA,UACF;AAAA,UACA,SAAW;AAAA,YACT,qBAAuB;AAAA,cACrB,aAAe;AAAA,cACf,WAAa;AAAA,gBACX,MAAQ;AAAA,cACV;AAAA,cACA,YAAc;AAAA,gBACZ,MAAQ;AAAA,cACV;AAAA,YACF;AAAA,YACA,sBAAwB;AAAA,cACtB,aAAe;AAAA,cACf,WAAa;AAAA,gBACX,MAAQ;AAAA,cACV;AAAA,cACA,YAAc;AAAA,gBACZ,MAAQ;AAAA,cACV;AAAA,YACF;AAAA,YACA,kBAAoB;AAAA,cAClB,aAAe;AAAA,cACf,WAAa;AAAA,gBACX,MAAQ;AAAA,cACV;AAAA,cACA,YAAc;AAAA,gBACZ,MAAQ;AAAA,cACV;AAAA,YACF;AAAA,YACA,mBAAqB;AAAA,cACnB,aAAe;AAAA,cACf,WAAa;AAAA,gBACX,MAAQ;AAAA,cACV;AAAA,cACA,YAAc;AAAA,gBACZ,MAAQ;AAAA,gBACR,OAAS;AAAA,kBACP,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,YACF;AAAA,YACA,kBAAoB;AAAA,cAClB,aAAe;AAAA,cACf,WAAa;AAAA,gBACX,MAAQ;AAAA,cACV;AAAA,cACA,YAAc;AAAA,gBACZ,MAAQ;AAAA,cACV;AAAA,YACF;AAAA,YACA,mBAAqB;AAAA,cACnB,aAAe;AAAA,cACf,WAAa;AAAA,gBACX,MAAQ;AAAA,cACV;AAAA,cACA,YAAc;AAAA,gBACZ,MAAQ;AAAA,cACV;AAAA,YACF;AAAA,YACA,sBAAwB;AAAA,cACtB,aAAe;AAAA,cACf,WAAa;AAAA,gBACX,MAAQ;AAAA,cACV;AAAA,cACA,YAAc;AAAA,gBACZ,MAAQ;AAAA,cACV;AAAA,YACF;AAAA,UACF;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAAA;AAAA;;;AClgCA;;;;;;;;;ACYA,qBAKO;AACP,qBAAmB;AAIZ,IAAMC,mBAAkC;EAC7C;EACA;EACA;EACA;EACA;EACA;EACA;;AAMK,IAAMC,YAAN,MAAMA;EAlCb,OAkCaA;;;EACFC,SAASA,OAAOC;EAChBC,UAAsB;IAC7BC,sBAAsB,KAAKA,qBAAqBC,KAAK,IAAI;IACzDC,kBAAkB,KAAKA,iBAAiBD,KAAK,IAAI;IACjDE,mBAAmB,KAAKA,kBAAkBF,KAAK,IAAI;IACnDG,kBAAkB,KAAKA,iBAAiBH,KAAK,IAAI;IACjDI,mBAAmB,KAAKA,kBAAkBJ,KAAK,IAAI;IACnDK,qBAAqB,KAAKA,oBAAoBL,KAAK,IAAI;IACvDM,sBAAsB,KAAKA,qBAAqBN,KAAK,IAAI;EAC3D;EAEiBO;EAEjBC,YAAYC,SAAqC;AAC/C,SAAKF,QAAQE,QAAQF;EACvB;;EAGA,MAAcN,iBAAiBS,MAA+C;AAC5E,UAAM,EAAEC,OAAM,IAAKD;AACnB,WAAO,KAAKH,MAAMK,cAAc;MAAED;IAAO,CAAA;EAC3C;;EAGA,MAAcT,kBAAkBQ,MAAgD;AAC9E,UAAM,EAAEG,OAAM,IAAKH;AACnB,WAAO,KAAKH,MAAMO,eAAe;MAAED;IAAO,CAAA;EAC5C;;EAGA,MAAcV,iBAAiBO,MAAkE;AAC/F,UAAM,EAAEC,OAAM,IAAKD;AACnB,WAAO,KAAKH,MAAMQ,cAAc;MAAEJ;IAAO,CAAA;EAC3C;;EAGA,MAAcP,kBAAkBM,MAA0E;AACxG,UAAM,EAAEG,QAAQG,KAAI,IAAKN;AACzB,UAAMO,iBAAiB,MAAM,KAAKV,MAAMW,eAAe;MAAEL;IAAO,CAAA;AAChE,QAAIM,cAA4C,CAAA;AAChD,QAAIH,QAAQI,UAAaJ,KAAKK,uBAAuB,MAAM;AACzD,YAAMC,wBAAwBL,eAAeM,OAC3C,CAACC,KAAKC,WAAAA;AACJ,YAAI,CAACD,IAAIC,OAAOC,YAAY,GAAG;AAC7BF,cAAIC,OAAOC,YAAY,IAAI,CAAA;QAC7B;AACAF,YAAIC,OAAOC,YAAY,EAAEC,KAAKF,MAAAA;AAC9B,eAAOD;MACT,GACA,CAAC,CAAA;AAEHL,oBAAcS,OAAOC,OAAOP,qBAAAA,EAAuBQ,IAAI,CAACC,aACtDA,SAASR,OAAO,CAACS,oBAAoBC,aAAAA;AACnC,cAAMC,cAAc,KAAKC,+BAA+BF,SAASG,OAAO;AACxE,cAAMC,iBAAiB,KAAKF,+BAA+BH,mBAAmBI,OAAO;AACrF,eAAOE,eAAAA,QAAOC,GAAGL,aAAaG,cAAAA,IAAkBJ,WAAWD;MAC7D,CAAA,CAAA;IAEJ,OAAO;AACLb,oBAAcF;IAChB;AACA,WAAOE;EACT;;EAGA,MAAcd,oBAAoBK,MAAkD;AAClF,WAAO,KAAKH,MAAMiC,iBAAiB9B,IAAAA,EAAM+B,KAAK,CAACC,UAAU,IAAA;EAC3D;;EAGA,MAAcpC,qBAAqBI,MAAkD;AACnF,WAAO,KAAKH,MAAMoC,kBAAkBjC,IAAAA;EACtC;;EAGA,MAAcX,qBAAqBW,MAAkE;AACnG,UAAM,EAAEkC,gBAAgB5B,KAAI,IAAKN;AACjC,UAAM,EAAEmC,oBAAoBC,4BAA2B,IAAK9B,QAAQ;MAAE6B,oBAAoB;IAAgB;AAC1G,UAAM,EAAET,SAASW,SAAQ,IAAKH;AAC9B,UAAMlB,eAAekB,eAAelB,gBAAgBkB,eAAeI,kBAAkBC;AAErF,QAAI,EAAEA,GAAE,IAAKL;AACb,QAAIK,OAAO7B,UAAayB,uBAAuB,aAAa;AAC1DI,WAAK7B;IACP;AAEA,UAAM8B,6BAAqE;MACzE,GAAGN;MACHlB;MACAU,SAASA,WAAW;IACtB;AAEA,UAAMe,WAAW,MAAM,KAAK5C,MAAMW,eAAe;MAAEL,QAAQ;QAAC;UAAEoC;UAAIvB;UAAcqB;UAAUX;QAAQ;;IAAG,CAAA;AACrG,UAAMgB,eAAeD,SAAS,CAAA;AAG9B,UAAMlC,iBAAiB,MAAM,KAAKV,MAAMW,eAAe;MAAEL,QAAQ;QAAC;UAAEa;UAAcqB;QAAS;;IAAG,CAAA;AAC9F9B,mBAAeoC,KAAK,CAACC,GAAGC,MAAMjB,eAAAA,QAAOkB,QAAQ,KAAKrB,+BAA+BmB,EAAElB,OAAO,GAAG,KAAKD,+BAA+BoB,EAAEnB,OAAO,CAAA,CAAA;AAC1I,UAAMqB,yBAAyBxC,eAAeA,eAAeyC,SAAS,CAAA;AAEtE,QAAIC,oBAA4DF;AAIhE,QAAIL,gBAAgBhB,SAAS;AAC3BuB,0BAAoBF,0BAA0BL;IAChD;AAEA,UAAMQ,oBAAoB,CAACR,gBAAgB,KAACS,8CAA8BT,cAAcR,cAAAA;AACxF,QAAI,CAACgB,kBAAmB,QAAOR;AAE/B,YAAQP,oBAAAA;MACN,KAAK;AACH,eAAO,KAAKiB,oBAAoBV,cAAcF,4BAA4Bd,OAAAA;MAC5E,KAAK;AACH,eAAO,KAAK2B,0BAA0BJ,mBAAmBT,0BAAAA;MAC3D,KAAK;AACH,eAAO,KAAKc,iBAAiBZ,cAAcF,4BAA4BH,UAAUX,OAAAA;MACnF,KAAK;AACH,eAAO,KAAK6B,wBAAwBN,mBAAmBT,4BAA4BJ,+BAA+B,OAAA;MACpH;AACE,cAAM,IAAIoB,MAAM,iCAAiCrB,kBAAAA,EAAoB;IACzE;EACF;EAEA,MAAciB,oBACZV,cACAR,gBACAR,SACqC;AACrC,QAAIgB,cAAc;AAChBA,mBAAa1B,eAAekB,eAAelB;AAC3C0B,mBAAahB,UAAUA,WAAWgB,aAAahB,WAAW;AAC1DgB,mBAAaL,WAAWH,eAAeG;AACvCK,mBAAae,OAAOvB,eAAeI,kBAAkBmB,QAAQvB,eAAeuB;AAC5Ef,mBAAagB,UAAUxB,eAAeI,kBAAkBoB,WAAWxB,eAAewB;AAClFhB,mBAAaJ,oBAAoBJ,eAAeI;AAEhD,aAAO,MAAM,KAAKzC,MAAM8D,iBAAiBjB,YAAAA;IAC3C,OAAO;AACL,aAAO,MAAM,KAAK7C,MAAM+D,cAAc1B,cAAAA;IACxC;EACF;EAEA,MAAcmB,0BACZJ,mBACAf,gBACqC;AACrC,QAAIe,mBAAmB;AACrBA,wBAAkBjC,eAAekB,eAAelB;AAChDiC,wBAAkBZ,WAAWH,eAAeG;AAC5CY,wBAAkBQ,OAAOvB,eAAeuB;AACxCR,wBAAkBS,UAAUxB,eAAewB;AAC3CT,wBAAkBX,oBAAoBJ,eAAeI;AAErD,aAAO,MAAM,KAAKzC,MAAM8D,iBAAiBV,iBAAAA;IAC3C,OAAO;AACL,aAAO,MAAM,KAAKpD,MAAM+D,cAAc1B,cAAAA;IACxC;EACF;EAEA,MAAcoB,iBACZZ,cACAR,gBACAG,UACAX,SACqC;AACrC,QAAIgB,gBAAgB,KAACS,8CAA8BT,cAAcR,cAAAA,GAAiB;AAChF,YAAMsB,MACJ,4BAA4BtB,eAAelB,YAAY,eAAeqB,QAAAA,YAAoBX,OAAAA,mEAA0E;IAExK,OAAO;AACL,aAAO,MAAM,KAAK7B,MAAM+D,cAAc1B,cAAAA;IACxC;EACF;EAEA,MAAcqB,wBACZN,mBACAf,gBACA2B,aACqC;AACrC,UAAMC,iBAAiB;AACvB,QAAIC,iBAAiBd,mBAAmBvB,WAAWQ,eAAeR,WAAWoC;AAC7E,QAAIE;AAEJ,QAAI,CAACf,mBAAmB;AACtBe,sBAAgBD;IAClB,OAAO;AACL,UAAI,CAACvC,aAAayC,gBAAAA,IAAoBF,eAAeG,MAAM,OAAA;AAG3D,UAAIC,wBAAwBvC,eAAAA,QAAOwC,OAAO5C,WAAAA,GAAcE,WAAW,GAAGoC,cAAAA;AACtE,UAAIO,uBAAuBJ,mBAAmBA,iBAAiBK,MAAM,YAAA,IAAgB,CAAA,IAAK5D;AAC1F,UAAI6D,yBAAyBF,uBAAuB,GAAGF,qBAAAA,IAAyBF,gBAAAA,KAAqBE;AAGrG,UAAIK,qBAAqB5C,eAAAA,QAAO6C,IAAIF,wBAAwBV,aAAaQ,oBAAAA;AACzE,UAAI,CAACG,oBAAoB;AACvB,cAAM,IAAIhB,MAAM,uBAAuBK,WAAAA,eAA0BE,cAAAA,IAAkBE,gBAAAA,EAAkB;MACvG;AAGA,UAAI,CAACS,wBAAwBC,iBAAAA,IAAqBH,mBAAmBN,MAAM,OAAA;AAC3E,UAAIU,gBAAgBpD,YAAY0C,MAAM,GAAA;AACtC,UAAIW,WAAWH,uBAAuBR,MAAM,GAAA;AAC5C,aAAOW,SAAS7B,SAAS4B,cAAc5B,QAAQ;AAC7C6B,iBAASC,IAAG;MACd;AACAd,sBAAgBa,SAASE,KAAK,GAAA;AAC9B,UAAIJ,mBAAmB;AACrBX,yBAAiB,IAAIW,iBAAAA;MACvB;IACF;AAEAzC,mBAAeR,UAAUsC;AACzB,WAAO,MAAM,KAAKnE,MAAM+D,cAAc1B,cAAAA;EACxC;EAEQT,+BAA+BC,SAAyB;AAC9D,UAAMoC,iBAAiB;AACvB,QAAI,CAACtC,aAAayC,gBAAAA,IAAoBvC,QAAQwC,MAAM,OAAA;AAGpD,QAAIC,wBAAwBvC,eAAAA,QAAOwC,OAAO5C,WAAAA,GAAcE,WAAWoC;AACnE,QAAIG,kBAAkB;AACpBE,+BAAyB,IAAIF,gBAAAA;IAC/B;AAEA,WAAOE;EACT;AACF;;;ADvQA,IAAMa,SAASC;","names":["module","pdManagerMethods","PDManager","schema","IPDManager","methods","pdmPersistDefinition","bind","pdmHasDefinition","pdmHasDefinitions","pdmGetDefinition","pdmGetDefinitions","pdmDeleteDefinition","pdmDeleteDefinitions","store","constructor","options","args","itemId","hasDefinition","filter","hasDefinitions","getDefinition","opts","allDefinitions","getDefinitions","definitions","undefined","showVersionHistory","groupedByDefinitionId","reduce","acc","entity","definitionId","push","Object","values","map","entities","highestVersionItem","baseItem","baseVersion","normalizeToSemverVersionFormat","version","highestVersion","semver","gt","deleteDefinition","then","value","deleteDefinitions","definitionItem","versionControlMode","versionIncrementReleaseType","tenantId","definitionPayload","id","nonPersistedDefinitionItem","existing","existingItem","sort","a","b","compare","trulyLatestVersionItem","length","latestVersionItem","isPayloadModified","isPresentationDefinitionEqual","handleOverwriteMode","handleOverwriteLatestMode","handleManualMode","handleAutoIncrementMode","Error","name","purpose","updateDefinition","addDefinition","releaseType","defaultVersion","currentVersion","resultVersion","preReleaseSuffix","split","normalizedBaseVersion","coerce","preReleaseIdentifier","match","fullVersionToIncrement","incrementedVersion","inc","incrementedBaseVersion","incrementedSuffix","originalParts","newParts","pop","join","schema","require"]}
package/dist/index.js CHANGED
@@ -1252,11 +1252,9 @@ var PDManager = class {
1252
1252
  };
1253
1253
 
1254
1254
  // src/index.ts
1255
- import { ReleaseType } from "semver";
1256
1255
  var schema = require_plugin_schema();
1257
1256
  export {
1258
1257
  PDManager,
1259
- ReleaseType,
1260
1258
  pdManagerMethods,
1261
1259
  schema
1262
1260
  };
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../plugin.schema.json","../src/agent/PDManager.ts","../src/index.ts"],"sourcesContent":["{\n \"IPDManager\": {\n \"components\": {\n \"schemas\": {\n \"DeleteDefinitionItemArgs\": {\n \"type\": \"object\",\n \"properties\": {\n \"itemId\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\"itemId\"],\n \"additionalProperties\": false\n },\n \"DeleteDefinitionItemsArgs\": {\n \"$ref\": \"#/components/schemas/GetDefinitionItemsArgs\"\n },\n \"GetDefinitionItemsArgs\": {\n \"type\": \"object\",\n \"properties\": {\n \"filter\": {\n \"$ref\": \"#/components/schemas/FindDefinitionArgs\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/FetchOptions\"\n }\n },\n \"additionalProperties\": false\n },\n \"FindDefinitionArgs\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/PresentationDefinitionItemFilter\"\n }\n },\n \"PresentationDefinitionItemFilter\": {\n \"$ref\": \"#/components/schemas/Partial<Omit<PresentationDefinitionItem,(\\\"definitionPayload\\\"|\\\"dcqlPayload\\\")>>\"\n },\n \"Partial<Omit<PresentationDefinitionItem,(\\\"definitionPayload\\\"|\\\"dcqlPayload\\\")>>\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n },\n \"definitionId\": {\n \"type\": \"string\"\n },\n \"tenantId\": {\n \"type\": \"string\"\n },\n \"version\": {\n \"type\": \"string\"\n },\n \"name\": {\n \"type\": \"string\"\n },\n \"purpose\": {\n \"type\": \"string\"\n },\n \"createdAt\": {\n \"type\": \"string\",\n \"format\": \"date-time\"\n },\n \"lastUpdatedAt\": {\n \"type\": \"string\",\n \"format\": \"date-time\"\n }\n },\n \"additionalProperties\": false\n },\n \"FetchOptions\": {\n \"type\": \"object\",\n \"properties\": {\n \"showVersionHistory\": {\n \"type\": \"boolean\"\n }\n },\n \"additionalProperties\": false\n },\n \"GetDefinitionItemArgs\": {\n \"type\": \"object\",\n \"properties\": {\n \"itemId\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\"itemId\"],\n \"additionalProperties\": false\n },\n \"PresentationDefinitionItem\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n },\n \"definitionId\": {\n \"type\": \"string\"\n },\n \"tenantId\": {\n \"type\": \"string\"\n },\n \"version\": {\n \"type\": \"string\"\n },\n \"name\": {\n \"type\": \"string\"\n },\n \"purpose\": {\n \"type\": \"string\"\n },\n \"definitionPayload\": {\n \"$ref\": \"#/components/schemas/IPresentationDefinition\"\n },\n \"dcqlPayload\": {\n \"$ref\": \"#/components/schemas/DcqlQueryREST\"\n },\n \"createdAt\": {\n \"type\": \"string\",\n \"format\": \"date-time\"\n },\n \"lastUpdatedAt\": {\n \"type\": \"string\",\n \"format\": \"date-time\"\n }\n },\n \"required\": [\"id\", \"definitionId\", \"version\", \"definitionPayload\", \"createdAt\", \"lastUpdatedAt\"],\n \"additionalProperties\": false\n },\n \"IPresentationDefinition\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/PresentationDefinitionV1\"\n },\n {\n \"$ref\": \"#/components/schemas/PresentationDefinitionV2\"\n }\n ]\n },\n \"PresentationDefinitionV1\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n },\n \"name\": {\n \"type\": \"string\"\n },\n \"purpose\": {\n \"type\": \"string\"\n },\n \"format\": {\n \"$ref\": \"#/components/schemas/Format\"\n },\n \"submission_requirements\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/SubmissionRequirement\"\n }\n },\n \"input_descriptors\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/InputDescriptorV1\"\n }\n }\n },\n \"required\": [\"id\", \"input_descriptors\"],\n \"additionalProperties\": false\n },\n \"Format\": {\n \"type\": \"object\",\n \"properties\": {\n \"jwt\": {\n \"$ref\": \"#/components/schemas/JwtObject\"\n },\n \"jwt_vc\": {\n \"$ref\": \"#/components/schemas/JwtObject\"\n },\n \"jwt_vc_json\": {\n \"$ref\": \"#/components/schemas/JwtObject\"\n },\n \"jwt_vp\": {\n \"$ref\": \"#/components/schemas/JwtObject\"\n },\n \"jwt_vp_json\": {\n \"$ref\": \"#/components/schemas/JwtObject\"\n },\n \"ldp\": {\n \"$ref\": \"#/components/schemas/LdpObject\"\n },\n \"ldp_vc\": {\n \"$ref\": \"#/components/schemas/LdpObject\"\n },\n \"ldp_vp\": {\n \"$ref\": \"#/components/schemas/LdpObject\"\n },\n \"di\": {\n \"$ref\": \"#/components/schemas/DiObject\"\n },\n \"di_vc\": {\n \"$ref\": \"#/components/schemas/DiObject\"\n },\n \"di_vp\": {\n \"$ref\": \"#/components/schemas/DiObject\"\n },\n \"vc+sd-jwt\": {\n \"$ref\": \"#/components/schemas/SdJwtObject\"\n },\n \"mso_mdoc\": {\n \"$ref\": \"#/components/schemas/MsoMdocObject\"\n }\n },\n \"additionalProperties\": false\n },\n \"JwtObject\": {\n \"type\": \"object\",\n \"properties\": {\n \"alg\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n },\n \"required\": [\"alg\"],\n \"additionalProperties\": false\n },\n \"LdpObject\": {\n \"type\": \"object\",\n \"properties\": {\n \"proof_type\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n },\n \"required\": [\"proof_type\"],\n \"additionalProperties\": false\n },\n \"DiObject\": {\n \"type\": \"object\",\n \"properties\": {\n \"proof_type\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"cryptosuite\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n },\n \"required\": [\"proof_type\", \"cryptosuite\"],\n \"additionalProperties\": false\n },\n \"SdJwtObject\": {\n \"type\": \"object\",\n \"properties\": {\n \"sd-jwt_alg_values\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"kb-jwt_alg_values\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n },\n \"additionalProperties\": false\n },\n \"MsoMdocObject\": {\n \"type\": \"object\",\n \"properties\": {\n \"alg\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n },\n \"required\": [\"alg\"],\n \"additionalProperties\": false\n },\n \"SubmissionRequirement\": {\n \"type\": \"object\",\n \"properties\": {\n \"name\": {\n \"type\": \"string\"\n },\n \"purpose\": {\n \"type\": \"string\"\n },\n \"rule\": {\n \"$ref\": \"#/components/schemas/Rules\"\n },\n \"count\": {\n \"type\": \"number\"\n },\n \"min\": {\n \"type\": \"number\"\n },\n \"max\": {\n \"type\": \"number\"\n },\n \"from\": {\n \"type\": \"string\"\n },\n \"from_nested\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/SubmissionRequirement\"\n }\n }\n },\n \"required\": [\"rule\"],\n \"additionalProperties\": false\n },\n \"Rules\": {\n \"type\": \"string\",\n \"enum\": [\"all\", \"pick\"]\n },\n \"InputDescriptorV1\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n },\n \"name\": {\n \"type\": \"string\"\n },\n \"purpose\": {\n \"type\": \"string\"\n },\n \"group\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"schema\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/Schema\"\n }\n },\n \"issuance\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/Issuance\"\n }\n },\n \"constraints\": {\n \"$ref\": \"#/components/schemas/ConstraintsV1\"\n }\n },\n \"required\": [\"id\", \"schema\"],\n \"additionalProperties\": false\n },\n \"Schema\": {\n \"type\": \"object\",\n \"properties\": {\n \"uri\": {\n \"type\": \"string\"\n },\n \"required\": {\n \"type\": \"boolean\"\n }\n },\n \"required\": [\"uri\"],\n \"additionalProperties\": false\n },\n \"Issuance\": {\n \"type\": \"object\",\n \"properties\": {\n \"manifest\": {\n \"type\": \"string\"\n }\n },\n \"additionalProperties\": {}\n },\n \"ConstraintsV1\": {\n \"type\": \"object\",\n \"properties\": {\n \"limit_disclosure\": {\n \"$ref\": \"#/components/schemas/Optionality\"\n },\n \"statuses\": {\n \"$ref\": \"#/components/schemas/Statuses\"\n },\n \"fields\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/FieldV1\"\n }\n },\n \"subject_is_issuer\": {\n \"$ref\": \"#/components/schemas/Optionality\"\n },\n \"is_holder\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/HolderSubject\"\n }\n },\n \"same_subject\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/HolderSubject\"\n }\n }\n },\n \"additionalProperties\": false\n },\n \"Optionality\": {\n \"type\": \"string\",\n \"enum\": [\"required\", \"preferred\"]\n },\n \"Statuses\": {\n \"type\": \"object\",\n \"properties\": {\n \"active\": {\n \"$ref\": \"#/components/schemas/PdStatus\"\n },\n \"suspended\": {\n \"$ref\": \"#/components/schemas/PdStatus\"\n },\n \"revoked\": {\n \"$ref\": \"#/components/schemas/PdStatus\"\n }\n },\n \"additionalProperties\": false\n },\n \"PdStatus\": {\n \"type\": \"object\",\n \"properties\": {\n \"directive\": {\n \"$ref\": \"#/components/schemas/Directives\"\n }\n },\n \"additionalProperties\": false\n },\n \"Directives\": {\n \"type\": \"string\",\n \"enum\": [\"required\", \"allowed\", \"disallowed\"]\n },\n \"FieldV1\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n },\n \"path\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"purpose\": {\n \"type\": \"string\"\n },\n \"filter\": {\n \"$ref\": \"#/components/schemas/FilterV1\"\n },\n \"predicate\": {\n \"$ref\": \"#/components/schemas/Optionality\"\n }\n },\n \"required\": [\"path\"],\n \"additionalProperties\": false\n },\n \"FilterV1\": {\n \"type\": \"object\",\n \"properties\": {\n \"const\": {\n \"$ref\": \"#/components/schemas/OneOfNumberStringBoolean\"\n },\n \"enum\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/OneOfNumberStringBoolean\"\n }\n },\n \"exclusiveMinimum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"exclusiveMaximum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"format\": {\n \"type\": \"string\"\n },\n \"minLength\": {\n \"type\": \"number\"\n },\n \"maxLength\": {\n \"type\": \"number\"\n },\n \"minimum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"maximum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"not\": {\n \"type\": \"object\"\n },\n \"pattern\": {\n \"type\": \"string\"\n },\n \"type\": {\n \"type\": \"string\"\n }\n },\n \"additionalProperties\": false\n },\n \"OneOfNumberStringBoolean\": {\n \"type\": [\"boolean\", \"number\", \"string\"]\n },\n \"OneOfNumberString\": {\n \"type\": [\"number\", \"string\"]\n },\n \"HolderSubject\": {\n \"type\": \"object\",\n \"properties\": {\n \"field_id\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"directive\": {\n \"$ref\": \"#/components/schemas/Optionality\"\n }\n },\n \"required\": [\"field_id\", \"directive\"],\n \"additionalProperties\": false\n },\n \"PresentationDefinitionV2\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n },\n \"name\": {\n \"type\": \"string\"\n },\n \"purpose\": {\n \"type\": \"string\"\n },\n \"format\": {\n \"$ref\": \"#/components/schemas/Format\"\n },\n \"submission_requirements\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/SubmissionRequirement\"\n }\n },\n \"input_descriptors\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/InputDescriptorV2\"\n }\n },\n \"frame\": {\n \"type\": \"object\"\n }\n },\n \"required\": [\"id\", \"input_descriptors\"],\n \"additionalProperties\": false\n },\n \"InputDescriptorV2\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n },\n \"name\": {\n \"type\": \"string\"\n },\n \"purpose\": {\n \"type\": \"string\"\n },\n \"format\": {\n \"$ref\": \"#/components/schemas/Format\"\n },\n \"group\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"issuance\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/Issuance\"\n }\n },\n \"constraints\": {\n \"$ref\": \"#/components/schemas/ConstraintsV2\"\n }\n },\n \"required\": [\"id\", \"constraints\"],\n \"additionalProperties\": false\n },\n \"ConstraintsV2\": {\n \"type\": \"object\",\n \"properties\": {\n \"limit_disclosure\": {\n \"$ref\": \"#/components/schemas/Optionality\"\n },\n \"statuses\": {\n \"$ref\": \"#/components/schemas/Statuses\"\n },\n \"fields\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/FieldV2\"\n }\n },\n \"subject_is_issuer\": {\n \"$ref\": \"#/components/schemas/Optionality\"\n },\n \"is_holder\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/HolderSubject\"\n }\n },\n \"same_subject\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/HolderSubject\"\n }\n }\n },\n \"additionalProperties\": false\n },\n \"FieldV2\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n },\n \"path\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"purpose\": {\n \"type\": \"string\"\n },\n \"filter\": {\n \"$ref\": \"#/components/schemas/FilterV2\"\n },\n \"predicate\": {\n \"$ref\": \"#/components/schemas/Optionality\"\n },\n \"intent_to_retain\": {\n \"type\": \"boolean\"\n },\n \"name\": {\n \"type\": \"string\"\n },\n \"optional\": {\n \"type\": \"boolean\"\n }\n },\n \"required\": [\"path\"],\n \"additionalProperties\": false\n },\n \"FilterV2\": {\n \"type\": \"object\",\n \"properties\": {\n \"const\": {\n \"$ref\": \"#/components/schemas/OneOfNumberStringBoolean\"\n },\n \"enum\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/OneOfNumberStringBoolean\"\n }\n },\n \"exclusiveMinimum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"exclusiveMaximum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"format\": {\n \"type\": \"string\"\n },\n \"formatMaximum\": {\n \"type\": \"string\"\n },\n \"formatMinimum\": {\n \"type\": \"string\"\n },\n \"formatExclusiveMaximum\": {\n \"type\": \"string\"\n },\n \"formatExclusiveMinimum\": {\n \"type\": \"string\"\n },\n \"minLength\": {\n \"type\": \"number\"\n },\n \"maxLength\": {\n \"type\": \"number\"\n },\n \"minimum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"maximum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"not\": {\n \"type\": \"object\"\n },\n \"pattern\": {\n \"type\": \"string\"\n },\n \"type\": {\n \"type\": \"string\"\n },\n \"contains\": {\n \"$ref\": \"#/components/schemas/FilterV2\"\n },\n \"items\": {\n \"$ref\": \"#/components/schemas/FilterV2Items\"\n }\n },\n \"additionalProperties\": false\n },\n \"FilterV2Items\": {\n \"type\": \"object\",\n \"properties\": {\n \"const\": {\n \"$ref\": \"#/components/schemas/OneOfNumberStringBoolean\"\n },\n \"enum\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/OneOfNumberStringBoolean\"\n }\n },\n \"exclusiveMinimum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"exclusiveMaximum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"format\": {\n \"type\": \"string\"\n },\n \"formatMaximum\": {\n \"type\": \"string\"\n },\n \"formatMinimum\": {\n \"type\": \"string\"\n },\n \"formatExclusiveMaximum\": {\n \"type\": \"string\"\n },\n \"formatExclusiveMinimum\": {\n \"type\": \"string\"\n },\n \"minLength\": {\n \"type\": \"number\"\n },\n \"maxLength\": {\n \"type\": \"number\"\n },\n \"minimum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"maximum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"not\": {\n \"type\": \"object\"\n },\n \"pattern\": {\n \"type\": \"string\"\n },\n \"type\": {\n \"type\": \"string\"\n },\n \"contains\": {\n \"$ref\": \"#/components/schemas/FilterV2\"\n },\n \"items\": {\n \"$ref\": \"#/components/schemas/FilterV2Items\"\n }\n },\n \"additionalProperties\": false\n },\n \"DcqlQueryREST\": {\n \"type\": \"object\",\n \"properties\": {\n \"credentials\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/DcqlCredentialQuery\"\n }\n }\n },\n \"required\": [\"credentials\"],\n \"additionalProperties\": false\n },\n \"DcqlCredentialQuery\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n },\n \"format\": {\n \"type\": \"string\"\n },\n \"alg\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"claims\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/DcqlClaim\"\n }\n },\n \"meta\": {\n \"$ref\": \"#/components/schemas/Record<string,any>\"\n }\n },\n \"required\": [\"id\", \"format\", \"claims\"],\n \"additionalProperties\": false\n },\n \"DcqlClaim\": {\n \"type\": \"object\",\n \"properties\": {\n \"namespace\": {\n \"type\": \"string\"\n },\n \"claim_name\": {\n \"type\": \"string\"\n },\n \"filter\": {\n \"$ref\": \"#/components/schemas/DcqlFilter\"\n }\n },\n \"required\": [\"namespace\", \"claim_name\"],\n \"additionalProperties\": false\n },\n \"DcqlFilter\": {\n \"type\": \"object\",\n \"properties\": {\n \"type\": {\n \"type\": \"string\",\n \"enum\": [\"string\", \"number\", \"boolean\"]\n },\n \"pattern\": {\n \"type\": \"string\"\n },\n \"minimum\": {\n \"type\": \"number\"\n },\n \"maximum\": {\n \"type\": \"number\"\n }\n },\n \"required\": [\"type\"],\n \"additionalProperties\": false\n },\n \"Record<string,any>\": {\n \"type\": \"object\"\n },\n \"HasDefinitionItemArgs\": {\n \"$ref\": \"#/components/schemas/GetDefinitionItemArgs\"\n },\n \"HasDefinitionItemsArgs\": {\n \"$ref\": \"#/components/schemas/GetDefinitionItemsArgs\"\n },\n \"PersistDefinitionArgs\": {\n \"type\": \"object\",\n \"properties\": {\n \"definitionItem\": {\n \"$ref\": \"#/components/schemas/PersistPresentationDefinitionItem\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/PersistOptions\"\n }\n },\n \"required\": [\"definitionItem\"],\n \"additionalProperties\": false\n },\n \"PersistPresentationDefinitionItem\": {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n },\n \"definitionId\": {\n \"type\": \"string\"\n },\n \"version\": {\n \"type\": \"string\"\n },\n \"tenantId\": {\n \"type\": \"string\"\n },\n \"name\": {\n \"type\": \"string\"\n },\n \"purpose\": {\n \"type\": \"string\"\n },\n \"definitionPayload\": {\n \"$ref\": \"#/components/schemas/IPresentationDefinition\"\n },\n \"dcqlPayload\": {\n \"$ref\": \"#/components/schemas/DcqlQueryREST\"\n }\n },\n \"required\": [\"definitionPayload\"]\n },\n \"PersistOptions\": {\n \"type\": \"object\",\n \"properties\": {\n \"versionControlMode\": {\n \"$ref\": \"#/components/schemas/VersionControlMode\"\n },\n \"versionIncrementReleaseType\": {\n \"$ref\": \"#/components/schemas/ReleaseType\"\n }\n },\n \"additionalProperties\": false\n },\n \"VersionControlMode\": {\n \"type\": \"string\",\n \"enum\": [\"AutoIncrement\", \"Manual\", \"Overwrite\", \"OverwriteLatest\"]\n },\n \"ReleaseType\": {\n \"type\": \"string\",\n \"enum\": [\"major\", \"premajor\", \"minor\", \"preminor\", \"patch\", \"prepatch\", \"prerelease\", \"release\"]\n }\n },\n \"methods\": {\n \"pdmDeleteDefinition\": {\n \"description\": \"Delete a single presentation definition records by primary key\",\n \"arguments\": {\n \"$ref\": \"#/components/schemas/DeleteDefinitionItemArgs\"\n },\n \"returnType\": {\n \"type\": \"boolean\"\n }\n },\n \"pdmDeleteDefinitions\": {\n \"description\": \"Delete multiple presentation definitions records using filters\",\n \"arguments\": {\n \"$ref\": \"#/components/schemas/DeleteDefinitionItemsArgs\"\n },\n \"returnType\": {\n \"type\": \"number\"\n }\n },\n \"pdmGetDefinition\": {\n \"description\": \"Get a single presentation definition records by primary key\",\n \"arguments\": {\n \"$ref\": \"#/components/schemas/GetDefinitionItemArgs\"\n },\n \"returnType\": {\n \"$ref\": \"#/components/schemas/PresentationDefinitionItem\"\n }\n },\n \"pdmGetDefinitions\": {\n \"description\": \"Find one or more presentation definition records using filters\",\n \"arguments\": {\n \"$ref\": \"#/components/schemas/GetDefinitionItemsArgs\"\n },\n \"returnType\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/PresentationDefinitionItem\"\n }\n }\n },\n \"pdmHasDefinition\": {\n \"description\": \"Checks whether a presentation definition record exists by primary key\",\n \"arguments\": {\n \"$ref\": \"#/components/schemas/HasDefinitionItemArgs\"\n },\n \"returnType\": {\n \"type\": \"boolean\"\n }\n },\n \"pdmHasDefinitions\": {\n \"description\": \"Checks whether one or more presentation definition records exist using filters\",\n \"arguments\": {\n \"$ref\": \"#/components/schemas/HasDefinitionItemsArgs\"\n },\n \"returnType\": {\n \"type\": \"boolean\"\n }\n },\n \"pdmPersistDefinition\": {\n \"description\": \"Check in a presentation definition. It has version control logic which will add or update presentation definition records and has settings for automatic version numbering.\",\n \"arguments\": {\n \"$ref\": \"#/components/schemas/PersistDefinitionArgs\"\n },\n \"returnType\": {\n \"$ref\": \"#/components/schemas/PresentationDefinitionItem\"\n }\n }\n }\n }\n }\n}\n","import { IAgentPlugin } from '@veramo/core'\nimport {\n DeleteDefinitionItemArgs,\n DeleteDefinitionItemsArgs,\n GetDefinitionItemArgs,\n GetDefinitionItemsArgs,\n HasDefinitionItemArgs,\n HasDefinitionItemsArgs,\n IPDManager,\n PersistDefinitionArgs,\n schema,\n} from '../index'\nimport {\n AbstractPDStore,\n isPresentationDefinitionEqual,\n NonPersistedPresentationDefinitionItem,\n PresentationDefinitionItem,\n} from '@sphereon/ssi-sdk.data-store'\nimport semver from 'semver/preload'\nimport { ReleaseType } from 'semver'\n\n// Exposing the methods here for any REST implementation\nexport const pdManagerMethods: Array<string> = [\n 'pdmHasDefinition',\n 'pdmHasGetDefinitions',\n 'pdmGetDefinition',\n 'pdmGetDefinitions',\n 'pdmPersistDefinition',\n 'pdmDeleteDefinition',\n 'pdmDeleteDefinitions',\n]\n\n/**\n * {@inheritDoc IPDManager}\n */\nexport class PDManager implements IAgentPlugin {\n readonly schema = schema.IPDManager\n readonly methods: IPDManager = {\n pdmPersistDefinition: this.pdmPersistDefinition.bind(this),\n pdmHasDefinition: this.pdmHasDefinition.bind(this),\n pdmHasDefinitions: this.pdmHasDefinitions.bind(this),\n pdmGetDefinition: this.pdmGetDefinition.bind(this),\n pdmGetDefinitions: this.pdmGetDefinitions.bind(this),\n pdmDeleteDefinition: this.pdmDeleteDefinition.bind(this),\n pdmDeleteDefinitions: this.pdmDeleteDefinitions.bind(this),\n }\n\n private readonly store: AbstractPDStore\n\n constructor(options: { store: AbstractPDStore }) {\n this.store = options.store\n }\n\n /** {@inheritDoc IPDManager.pdmHasDefinition} */\n private async pdmHasDefinition(args: HasDefinitionItemArgs): Promise<boolean> {\n const { itemId } = args\n return this.store.hasDefinition({ itemId })\n }\n\n /** {@inheritDoc IPDManager.pdmHasDefinitions} */\n private async pdmHasDefinitions(args: HasDefinitionItemsArgs): Promise<boolean> {\n const { filter } = args\n return this.store.hasDefinitions({ filter })\n }\n\n /** {@inheritDoc IPDManager.pdmGetDefinition} */\n private async pdmGetDefinition(args: GetDefinitionItemArgs): Promise<PresentationDefinitionItem> {\n const { itemId } = args\n return this.store.getDefinition({ itemId })\n }\n\n /** {@inheritDoc IPDManager.pdmGetDefinitions} */\n private async pdmGetDefinitions(args: GetDefinitionItemsArgs): Promise<Array<PresentationDefinitionItem>> {\n const { filter, opts } = args\n const allDefinitions = await this.store.getDefinitions({ filter })\n let definitions: PresentationDefinitionItem[] = []\n if (opts == undefined || opts.showVersionHistory !== true) {\n const groupedByDefinitionId = allDefinitions.reduce(\n (acc, entity) => {\n if (!acc[entity.definitionId]) {\n acc[entity.definitionId] = []\n }\n acc[entity.definitionId].push(entity)\n return acc\n },\n {} as Record<string, PresentationDefinitionItem[]>,\n )\n definitions = Object.values(groupedByDefinitionId).map((entities) =>\n entities.reduce((highestVersionItem, baseItem) => {\n const baseVersion = this.normalizeToSemverVersionFormat(baseItem.version)\n const highestVersion = this.normalizeToSemverVersionFormat(highestVersionItem.version)\n return semver.gt(baseVersion, highestVersion) ? baseItem : highestVersionItem\n }),\n )\n } else {\n definitions = allDefinitions\n }\n return definitions\n }\n\n /** {@inheritDoc IPDManager.pdmDeleteDefinition} */\n private async pdmDeleteDefinition(args: DeleteDefinitionItemArgs): Promise<boolean> {\n return this.store.deleteDefinition(args).then((value) => true)\n }\n\n /** {@inheritDoc IPDManager.pdmDeleteDefinitions} */\n private async pdmDeleteDefinitions(args: DeleteDefinitionItemsArgs): Promise<number> {\n return this.store.deleteDefinitions(args)\n }\n\n /** {@inheritDoc IPDManager.pdmPersistDefinition} */\n private async pdmPersistDefinition(args: PersistDefinitionArgs): Promise<PresentationDefinitionItem> {\n const { definitionItem, opts } = args\n const { versionControlMode, versionIncrementReleaseType } = opts ?? { versionControlMode: 'AutoIncrement' }\n const { version, tenantId } = definitionItem\n const definitionId = definitionItem.definitionId ?? definitionItem.definitionPayload.id\n\n let { id } = definitionItem\n if (id !== undefined && versionControlMode !== 'Overwrite') {\n id = undefined\n }\n\n const nonPersistedDefinitionItem: NonPersistedPresentationDefinitionItem = {\n ...definitionItem,\n definitionId: definitionId,\n version: version ?? '1',\n }\n\n const existing = await this.store.getDefinitions({ filter: [{ id, definitionId, tenantId, version }] })\n const existingItem = existing[0]\n\n // Always fetch all definitions for the definitionId/tenantId and determine the truly latest version\n const allDefinitions = await this.store.getDefinitions({ filter: [{ definitionId, tenantId }] })\n allDefinitions.sort((a, b) => semver.compare(this.normalizeToSemverVersionFormat(a.version), this.normalizeToSemverVersionFormat(b.version)))\n const trulyLatestVersionItem = allDefinitions[allDefinitions.length - 1]\n\n let latestVersionItem: PresentationDefinitionItem | undefined = trulyLatestVersionItem\n\n // If a specific version exists and matches existingItem, we keep that as a base.\n // Otherwise we use the trulyLatestVersionItem\n if (existingItem && version) {\n latestVersionItem = trulyLatestVersionItem ?? existingItem\n }\n\n const isPayloadModified = !existingItem || !isPresentationDefinitionEqual(existingItem, definitionItem)\n if (!isPayloadModified) return existingItem\n\n switch (versionControlMode) {\n case 'Overwrite':\n return this.handleOverwriteMode(existingItem, nonPersistedDefinitionItem, version)\n case 'OverwriteLatest':\n return this.handleOverwriteLatestMode(latestVersionItem, nonPersistedDefinitionItem)\n case 'Manual':\n return this.handleManualMode(existingItem, nonPersistedDefinitionItem, tenantId, version)\n case 'AutoIncrement':\n return this.handleAutoIncrementMode(latestVersionItem, nonPersistedDefinitionItem, versionIncrementReleaseType ?? 'major')\n default:\n throw new Error(`Unknown version control mode: ${versionControlMode}`)\n }\n }\n\n private async handleOverwriteMode(\n existingItem: PresentationDefinitionItem | undefined,\n definitionItem: NonPersistedPresentationDefinitionItem,\n version: string | undefined,\n ): Promise<PresentationDefinitionItem> {\n if (existingItem) {\n existingItem.definitionId = definitionItem.definitionId\n existingItem.version = version ?? existingItem.version ?? '1'\n existingItem.tenantId = definitionItem.tenantId\n existingItem.name = definitionItem.definitionPayload.name ?? definitionItem.name\n existingItem.purpose = definitionItem.definitionPayload.purpose ?? definitionItem.purpose\n existingItem.definitionPayload = definitionItem.definitionPayload\n\n return await this.store.updateDefinition(existingItem)\n } else {\n return await this.store.addDefinition(definitionItem)\n }\n }\n\n private async handleOverwriteLatestMode(\n latestVersionItem: PresentationDefinitionItem | undefined,\n definitionItem: NonPersistedPresentationDefinitionItem,\n ): Promise<PresentationDefinitionItem> {\n if (latestVersionItem) {\n latestVersionItem.definitionId = definitionItem.definitionId\n latestVersionItem.tenantId = definitionItem.tenantId\n latestVersionItem.name = definitionItem.name\n latestVersionItem.purpose = definitionItem.purpose\n latestVersionItem.definitionPayload = definitionItem.definitionPayload\n\n return await this.store.updateDefinition(latestVersionItem)\n } else {\n return await this.store.addDefinition(definitionItem)\n }\n }\n\n private async handleManualMode(\n existingItem: PresentationDefinitionItem | undefined,\n definitionItem: NonPersistedPresentationDefinitionItem,\n tenantId: string | undefined,\n version: string | undefined,\n ): Promise<PresentationDefinitionItem> {\n if (existingItem && !isPresentationDefinitionEqual(existingItem, definitionItem)) {\n throw Error(\n `Cannot update definition ${definitionItem.definitionId} for tenant ${tenantId} version ${version} because definition exists and manual version control is enabled.`,\n )\n } else {\n return await this.store.addDefinition(definitionItem)\n }\n }\n\n private async handleAutoIncrementMode(\n latestVersionItem: PresentationDefinitionItem | undefined,\n definitionItem: NonPersistedPresentationDefinitionItem,\n releaseType: ReleaseType,\n ): Promise<PresentationDefinitionItem> {\n const defaultVersion = '1'\n let currentVersion = latestVersionItem?.version ?? definitionItem.version ?? defaultVersion\n let resultVersion: string\n\n if (!latestVersionItem) {\n resultVersion = currentVersion\n } else {\n let [baseVersion, preReleaseSuffix] = currentVersion.split(/-(.+)/)\n\n // Normalize the base version to at least 'major.minor.patch', that's what semver needs as input\n let normalizedBaseVersion = semver.coerce(baseVersion)?.version ?? `${defaultVersion}.0.0`\n let preReleaseIdentifier = preReleaseSuffix ? preReleaseSuffix.match(/^[a-zA-Z]+/)?.[0] : undefined\n let fullVersionToIncrement = preReleaseIdentifier ? `${normalizedBaseVersion}-${preReleaseSuffix}` : normalizedBaseVersion\n\n // Use semver to increment the version\n let incrementedVersion = semver.inc(fullVersionToIncrement, releaseType, preReleaseIdentifier)\n if (!incrementedVersion) {\n throw new Error(`Could not increment ${releaseType} version on ${currentVersion} ${preReleaseSuffix}`)\n }\n\n // Extract new base version to match the original input format\n let [incrementedBaseVersion, incrementedSuffix] = incrementedVersion.split(/-(.+)/)\n let originalParts = baseVersion.split('.')\n let newParts = incrementedBaseVersion.split('.')\n while (newParts.length > originalParts.length) {\n newParts.pop() // Reduce to original length by removing extra .0s\n }\n resultVersion = newParts.join('.')\n if (incrementedSuffix) {\n resultVersion += `-${incrementedSuffix}`\n }\n }\n\n definitionItem.version = resultVersion\n return await this.store.addDefinition(definitionItem)\n }\n\n private normalizeToSemverVersionFormat(version: string): string {\n const defaultVersion = '1.0.0'\n let [baseVersion, preReleaseSuffix] = version.split(/-(.+)/)\n\n // Normalize the base version to at least 'major.minor.patch', that's what semver needs as input\n let normalizedBaseVersion = semver.coerce(baseVersion)?.version ?? defaultVersion\n if (preReleaseSuffix) {\n normalizedBaseVersion += `-${preReleaseSuffix}`\n }\n\n return normalizedBaseVersion\n }\n}\n","/**\n * @public\n */\nconst schema = require('../plugin.schema.json')\nexport { schema }\nexport { PDManager, pdManagerMethods } from './agent/PDManager'\nexport * from './types/IPDManager'\n\nexport { ReleaseType } from 'semver'\n"],"mappings":";;;;;;;;AAAA;AAAA;AAAA;AAAA,MACE,YAAc;AAAA,QACZ,YAAc;AAAA,UACZ,SAAW;AAAA,YACT,0BAA4B;AAAA,cAC1B,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,UAAY,CAAC,QAAQ;AAAA,cACrB,sBAAwB;AAAA,YAC1B;AAAA,YACA,2BAA6B;AAAA,cAC3B,MAAQ;AAAA,YACV;AAAA,YACA,wBAA0B;AAAA,cACxB,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,oBAAsB;AAAA,cACpB,MAAQ;AAAA,cACR,OAAS;AAAA,gBACP,MAAQ;AAAA,cACV;AAAA,YACF;AAAA,YACA,kCAAoC;AAAA,cAClC,MAAQ;AAAA,YACV;AAAA,YACA,iFAAqF;AAAA,cACnF,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,IAAM;AAAA,kBACJ,MAAQ;AAAA,gBACV;AAAA,gBACA,cAAgB;AAAA,kBACd,MAAQ;AAAA,gBACV;AAAA,gBACA,UAAY;AAAA,kBACV,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,WAAa;AAAA,kBACX,MAAQ;AAAA,kBACR,QAAU;AAAA,gBACZ;AAAA,gBACA,eAAiB;AAAA,kBACf,MAAQ;AAAA,kBACR,QAAU;AAAA,gBACZ;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,cAAgB;AAAA,cACd,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,oBAAsB;AAAA,kBACpB,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,uBAAyB;AAAA,cACvB,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,UAAY,CAAC,QAAQ;AAAA,cACrB,sBAAwB;AAAA,YAC1B;AAAA,YACA,4BAA8B;AAAA,cAC5B,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,IAAM;AAAA,kBACJ,MAAQ;AAAA,gBACV;AAAA,gBACA,cAAgB;AAAA,kBACd,MAAQ;AAAA,gBACV;AAAA,gBACA,UAAY;AAAA,kBACV,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,mBAAqB;AAAA,kBACnB,MAAQ;AAAA,gBACV;AAAA,gBACA,aAAe;AAAA,kBACb,MAAQ;AAAA,gBACV;AAAA,gBACA,WAAa;AAAA,kBACX,MAAQ;AAAA,kBACR,QAAU;AAAA,gBACZ;AAAA,gBACA,eAAiB;AAAA,kBACf,MAAQ;AAAA,kBACR,QAAU;AAAA,gBACZ;AAAA,cACF;AAAA,cACA,UAAY,CAAC,MAAM,gBAAgB,WAAW,qBAAqB,aAAa,eAAe;AAAA,cAC/F,sBAAwB;AAAA,YAC1B;AAAA,YACA,yBAA2B;AAAA,cACzB,OAAS;AAAA,gBACP;AAAA,kBACE,MAAQ;AAAA,gBACV;AAAA,gBACA;AAAA,kBACE,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,YACF;AAAA,YACA,0BAA4B;AAAA,cAC1B,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,IAAM;AAAA,kBACJ,MAAQ;AAAA,gBACV;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,gBACA,yBAA2B;AAAA,kBACzB,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,mBAAqB;AAAA,kBACnB,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,cACF;AAAA,cACA,UAAY,CAAC,MAAM,mBAAmB;AAAA,cACtC,sBAAwB;AAAA,YAC1B;AAAA,YACA,QAAU;AAAA,cACR,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,gBACA,aAAe;AAAA,kBACb,MAAQ;AAAA,gBACV;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,gBACA,aAAe;AAAA,kBACb,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,gBACA,IAAM;AAAA,kBACJ,MAAQ;AAAA,gBACV;AAAA,gBACA,OAAS;AAAA,kBACP,MAAQ;AAAA,gBACV;AAAA,gBACA,OAAS;AAAA,kBACP,MAAQ;AAAA,gBACV;AAAA,gBACA,aAAa;AAAA,kBACX,MAAQ;AAAA,gBACV;AAAA,gBACA,UAAY;AAAA,kBACV,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,WAAa;AAAA,cACX,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,KAAO;AAAA,kBACL,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,cACF;AAAA,cACA,UAAY,CAAC,KAAK;AAAA,cAClB,sBAAwB;AAAA,YAC1B;AAAA,YACA,WAAa;AAAA,cACX,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,YAAc;AAAA,kBACZ,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,cACF;AAAA,cACA,UAAY,CAAC,YAAY;AAAA,cACzB,sBAAwB;AAAA,YAC1B;AAAA,YACA,UAAY;AAAA,cACV,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,YAAc;AAAA,kBACZ,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,aAAe;AAAA,kBACb,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,cACF;AAAA,cACA,UAAY,CAAC,cAAc,aAAa;AAAA,cACxC,sBAAwB;AAAA,YAC1B;AAAA,YACA,aAAe;AAAA,cACb,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,qBAAqB;AAAA,kBACnB,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,qBAAqB;AAAA,kBACnB,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,eAAiB;AAAA,cACf,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,KAAO;AAAA,kBACL,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,cACF;AAAA,cACA,UAAY,CAAC,KAAK;AAAA,cAClB,sBAAwB;AAAA,YAC1B;AAAA,YACA,uBAAyB;AAAA,cACvB,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,MAAQ;AAAA,kBACN,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,gBACV;AAAA,gBACA,OAAS;AAAA,kBACP,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,gBACV;AAAA,gBACA,aAAe;AAAA,kBACb,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,cACF;AAAA,cACA,UAAY,CAAC,MAAM;AAAA,cACnB,sBAAwB;AAAA,YAC1B;AAAA,YACA,OAAS;AAAA,cACP,MAAQ;AAAA,cACR,MAAQ,CAAC,OAAO,MAAM;AAAA,YACxB;AAAA,YACA,mBAAqB;AAAA,cACnB,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,IAAM;AAAA,kBACJ,MAAQ;AAAA,gBACV;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,OAAS;AAAA,kBACP,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,UAAY;AAAA,kBACV,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,aAAe;AAAA,kBACb,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,UAAY,CAAC,MAAM,QAAQ;AAAA,cAC3B,sBAAwB;AAAA,YAC1B;AAAA,YACA,QAAU;AAAA,cACR,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,UAAY;AAAA,kBACV,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,UAAY,CAAC,KAAK;AAAA,cAClB,sBAAwB;AAAA,YAC1B;AAAA,YACA,UAAY;AAAA,cACV,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,UAAY;AAAA,kBACV,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,sBAAwB,CAAC;AAAA,YAC3B;AAAA,YACA,eAAiB;AAAA,cACf,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,kBAAoB;AAAA,kBAClB,MAAQ;AAAA,gBACV;AAAA,gBACA,UAAY;AAAA,kBACV,MAAQ;AAAA,gBACV;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,mBAAqB;AAAA,kBACnB,MAAQ;AAAA,gBACV;AAAA,gBACA,WAAa;AAAA,kBACX,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,cAAgB;AAAA,kBACd,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,aAAe;AAAA,cACb,MAAQ;AAAA,cACR,MAAQ,CAAC,YAAY,WAAW;AAAA,YAClC;AAAA,YACA,UAAY;AAAA,cACV,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,gBACA,WAAa;AAAA,kBACX,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,UAAY;AAAA,cACV,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,WAAa;AAAA,kBACX,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,YAAc;AAAA,cACZ,MAAQ;AAAA,cACR,MAAQ,CAAC,YAAY,WAAW,YAAY;AAAA,YAC9C;AAAA,YACA,SAAW;AAAA,cACT,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,IAAM;AAAA,kBACJ,MAAQ;AAAA,gBACV;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,gBACA,WAAa;AAAA,kBACX,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,UAAY,CAAC,MAAM;AAAA,cACnB,sBAAwB;AAAA,YAC1B;AAAA,YACA,UAAY;AAAA,cACV,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,OAAS;AAAA,kBACP,MAAQ;AAAA,gBACV;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,kBAAoB;AAAA,kBAClB,MAAQ;AAAA,gBACV;AAAA,gBACA,kBAAoB;AAAA,kBAClB,MAAQ;AAAA,gBACV;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,gBACA,WAAa;AAAA,kBACX,MAAQ;AAAA,gBACV;AAAA,gBACA,WAAa;AAAA,kBACX,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,0BAA4B;AAAA,cAC1B,MAAQ,CAAC,WAAW,UAAU,QAAQ;AAAA,YACxC;AAAA,YACA,mBAAqB;AAAA,cACnB,MAAQ,CAAC,UAAU,QAAQ;AAAA,YAC7B;AAAA,YACA,eAAiB;AAAA,cACf,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,UAAY;AAAA,kBACV,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,WAAa;AAAA,kBACX,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,UAAY,CAAC,YAAY,WAAW;AAAA,cACpC,sBAAwB;AAAA,YAC1B;AAAA,YACA,0BAA4B;AAAA,cAC1B,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,IAAM;AAAA,kBACJ,MAAQ;AAAA,gBACV;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,gBACA,yBAA2B;AAAA,kBACzB,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,mBAAqB;AAAA,kBACnB,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,OAAS;AAAA,kBACP,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,UAAY,CAAC,MAAM,mBAAmB;AAAA,cACtC,sBAAwB;AAAA,YAC1B;AAAA,YACA,mBAAqB;AAAA,cACnB,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,IAAM;AAAA,kBACJ,MAAQ;AAAA,gBACV;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,gBACA,OAAS;AAAA,kBACP,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,UAAY;AAAA,kBACV,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,aAAe;AAAA,kBACb,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,UAAY,CAAC,MAAM,aAAa;AAAA,cAChC,sBAAwB;AAAA,YAC1B;AAAA,YACA,eAAiB;AAAA,cACf,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,kBAAoB;AAAA,kBAClB,MAAQ;AAAA,gBACV;AAAA,gBACA,UAAY;AAAA,kBACV,MAAQ;AAAA,gBACV;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,mBAAqB;AAAA,kBACnB,MAAQ;AAAA,gBACV;AAAA,gBACA,WAAa;AAAA,kBACX,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,cAAgB;AAAA,kBACd,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,SAAW;AAAA,cACT,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,IAAM;AAAA,kBACJ,MAAQ;AAAA,gBACV;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,gBACA,WAAa;AAAA,kBACX,MAAQ;AAAA,gBACV;AAAA,gBACA,kBAAoB;AAAA,kBAClB,MAAQ;AAAA,gBACV;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,gBACV;AAAA,gBACA,UAAY;AAAA,kBACV,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,UAAY,CAAC,MAAM;AAAA,cACnB,sBAAwB;AAAA,YAC1B;AAAA,YACA,UAAY;AAAA,cACV,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,OAAS;AAAA,kBACP,MAAQ;AAAA,gBACV;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,kBAAoB;AAAA,kBAClB,MAAQ;AAAA,gBACV;AAAA,gBACA,kBAAoB;AAAA,kBAClB,MAAQ;AAAA,gBACV;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,gBACA,eAAiB;AAAA,kBACf,MAAQ;AAAA,gBACV;AAAA,gBACA,eAAiB;AAAA,kBACf,MAAQ;AAAA,gBACV;AAAA,gBACA,wBAA0B;AAAA,kBACxB,MAAQ;AAAA,gBACV;AAAA,gBACA,wBAA0B;AAAA,kBACxB,MAAQ;AAAA,gBACV;AAAA,gBACA,WAAa;AAAA,kBACX,MAAQ;AAAA,gBACV;AAAA,gBACA,WAAa;AAAA,kBACX,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,gBACV;AAAA,gBACA,UAAY;AAAA,kBACV,MAAQ;AAAA,gBACV;AAAA,gBACA,OAAS;AAAA,kBACP,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,eAAiB;AAAA,cACf,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,OAAS;AAAA,kBACP,MAAQ;AAAA,gBACV;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,kBAAoB;AAAA,kBAClB,MAAQ;AAAA,gBACV;AAAA,gBACA,kBAAoB;AAAA,kBAClB,MAAQ;AAAA,gBACV;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,gBACA,eAAiB;AAAA,kBACf,MAAQ;AAAA,gBACV;AAAA,gBACA,eAAiB;AAAA,kBACf,MAAQ;AAAA,gBACV;AAAA,gBACA,wBAA0B;AAAA,kBACxB,MAAQ;AAAA,gBACV;AAAA,gBACA,wBAA0B;AAAA,kBACxB,MAAQ;AAAA,gBACV;AAAA,gBACA,WAAa;AAAA,kBACX,MAAQ;AAAA,gBACV;AAAA,gBACA,WAAa;AAAA,kBACX,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,gBACV;AAAA,gBACA,UAAY;AAAA,kBACV,MAAQ;AAAA,gBACV;AAAA,gBACA,OAAS;AAAA,kBACP,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,eAAiB;AAAA,cACf,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,aAAe;AAAA,kBACb,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,cACF;AAAA,cACA,UAAY,CAAC,aAAa;AAAA,cAC1B,sBAAwB;AAAA,YAC1B;AAAA,YACA,qBAAuB;AAAA,cACrB,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,IAAM;AAAA,kBACJ,MAAQ;AAAA,gBACV;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,UAAY,CAAC,MAAM,UAAU,QAAQ;AAAA,cACrC,sBAAwB;AAAA,YAC1B;AAAA,YACA,WAAa;AAAA,cACX,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,WAAa;AAAA,kBACX,MAAQ;AAAA,gBACV;AAAA,gBACA,YAAc;AAAA,kBACZ,MAAQ;AAAA,gBACV;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,UAAY,CAAC,aAAa,YAAY;AAAA,cACtC,sBAAwB;AAAA,YAC1B;AAAA,YACA,YAAc;AAAA,cACZ,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,MAAQ;AAAA,kBACN,MAAQ;AAAA,kBACR,MAAQ,CAAC,UAAU,UAAU,SAAS;AAAA,gBACxC;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,UAAY,CAAC,MAAM;AAAA,cACnB,sBAAwB;AAAA,YAC1B;AAAA,YACA,sBAAsB;AAAA,cACpB,MAAQ;AAAA,YACV;AAAA,YACA,uBAAyB;AAAA,cACvB,MAAQ;AAAA,YACV;AAAA,YACA,wBAA0B;AAAA,cACxB,MAAQ;AAAA,YACV;AAAA,YACA,uBAAyB;AAAA,cACvB,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,gBAAkB;AAAA,kBAChB,MAAQ;AAAA,gBACV;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,UAAY,CAAC,gBAAgB;AAAA,cAC7B,sBAAwB;AAAA,YAC1B;AAAA,YACA,mCAAqC;AAAA,cACnC,MAAQ;AAAA,cACR,sBAAwB;AAAA,cACxB,YAAc;AAAA,gBACZ,IAAM;AAAA,kBACJ,MAAQ;AAAA,gBACV;AAAA,gBACA,cAAgB;AAAA,kBACd,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,UAAY;AAAA,kBACV,MAAQ;AAAA,gBACV;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,mBAAqB;AAAA,kBACnB,MAAQ;AAAA,gBACV;AAAA,gBACA,aAAe;AAAA,kBACb,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,UAAY,CAAC,mBAAmB;AAAA,YAClC;AAAA,YACA,gBAAkB;AAAA,cAChB,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,oBAAsB;AAAA,kBACpB,MAAQ;AAAA,gBACV;AAAA,gBACA,6BAA+B;AAAA,kBAC7B,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,oBAAsB;AAAA,cACpB,MAAQ;AAAA,cACR,MAAQ,CAAC,iBAAiB,UAAU,aAAa,iBAAiB;AAAA,YACpE;AAAA,YACA,aAAe;AAAA,cACb,MAAQ;AAAA,cACR,MAAQ,CAAC,SAAS,YAAY,SAAS,YAAY,SAAS,YAAY,cAAc,SAAS;AAAA,YACjG;AAAA,UACF;AAAA,UACA,SAAW;AAAA,YACT,qBAAuB;AAAA,cACrB,aAAe;AAAA,cACf,WAAa;AAAA,gBACX,MAAQ;AAAA,cACV;AAAA,cACA,YAAc;AAAA,gBACZ,MAAQ;AAAA,cACV;AAAA,YACF;AAAA,YACA,sBAAwB;AAAA,cACtB,aAAe;AAAA,cACf,WAAa;AAAA,gBACX,MAAQ;AAAA,cACV;AAAA,cACA,YAAc;AAAA,gBACZ,MAAQ;AAAA,cACV;AAAA,YACF;AAAA,YACA,kBAAoB;AAAA,cAClB,aAAe;AAAA,cACf,WAAa;AAAA,gBACX,MAAQ;AAAA,cACV;AAAA,cACA,YAAc;AAAA,gBACZ,MAAQ;AAAA,cACV;AAAA,YACF;AAAA,YACA,mBAAqB;AAAA,cACnB,aAAe;AAAA,cACf,WAAa;AAAA,gBACX,MAAQ;AAAA,cACV;AAAA,cACA,YAAc;AAAA,gBACZ,MAAQ;AAAA,gBACR,OAAS;AAAA,kBACP,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,YACF;AAAA,YACA,kBAAoB;AAAA,cAClB,aAAe;AAAA,cACf,WAAa;AAAA,gBACX,MAAQ;AAAA,cACV;AAAA,cACA,YAAc;AAAA,gBACZ,MAAQ;AAAA,cACV;AAAA,YACF;AAAA,YACA,mBAAqB;AAAA,cACnB,aAAe;AAAA,cACf,WAAa;AAAA,gBACX,MAAQ;AAAA,cACV;AAAA,cACA,YAAc;AAAA,gBACZ,MAAQ;AAAA,cACV;AAAA,YACF;AAAA,YACA,sBAAwB;AAAA,cACtB,aAAe;AAAA,cACf,WAAa;AAAA,gBACX,MAAQ;AAAA,cACV;AAAA,cACA,YAAc;AAAA,gBACZ,MAAQ;AAAA,cACV;AAAA,YACF;AAAA,UACF;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAAA;AAAA;;;ACt/BA,SAEEA,qCAGK;AACP,OAAOC,YAAY;AAIZ,IAAMC,mBAAkC;EAC7C;EACA;EACA;EACA;EACA;EACA;EACA;;AAMK,IAAMC,YAAN,MAAMA;EAlCb,OAkCaA;;;EACFC,SAASA,OAAOC;EAChBC,UAAsB;IAC7BC,sBAAsB,KAAKA,qBAAqBC,KAAK,IAAI;IACzDC,kBAAkB,KAAKA,iBAAiBD,KAAK,IAAI;IACjDE,mBAAmB,KAAKA,kBAAkBF,KAAK,IAAI;IACnDG,kBAAkB,KAAKA,iBAAiBH,KAAK,IAAI;IACjDI,mBAAmB,KAAKA,kBAAkBJ,KAAK,IAAI;IACnDK,qBAAqB,KAAKA,oBAAoBL,KAAK,IAAI;IACvDM,sBAAsB,KAAKA,qBAAqBN,KAAK,IAAI;EAC3D;EAEiBO;EAEjB,YAAYC,SAAqC;AAC/C,SAAKD,QAAQC,QAAQD;EACvB;;EAGA,MAAcN,iBAAiBQ,MAA+C;AAC5E,UAAM,EAAEC,OAAM,IAAKD;AACnB,WAAO,KAAKF,MAAMI,cAAc;MAAED;IAAO,CAAA;EAC3C;;EAGA,MAAcR,kBAAkBO,MAAgD;AAC9E,UAAM,EAAEG,OAAM,IAAKH;AACnB,WAAO,KAAKF,MAAMM,eAAe;MAAED;IAAO,CAAA;EAC5C;;EAGA,MAAcT,iBAAiBM,MAAkE;AAC/F,UAAM,EAAEC,OAAM,IAAKD;AACnB,WAAO,KAAKF,MAAMO,cAAc;MAAEJ;IAAO,CAAA;EAC3C;;EAGA,MAAcN,kBAAkBK,MAA0E;AACxG,UAAM,EAAEG,QAAQG,KAAI,IAAKN;AACzB,UAAMO,iBAAiB,MAAM,KAAKT,MAAMU,eAAe;MAAEL;IAAO,CAAA;AAChE,QAAIM,cAA4C,CAAA;AAChD,QAAIH,QAAQI,UAAaJ,KAAKK,uBAAuB,MAAM;AACzD,YAAMC,wBAAwBL,eAAeM,OAC3C,CAACC,KAAKC,WAAAA;AACJ,YAAI,CAACD,IAAIC,OAAOC,YAAY,GAAG;AAC7BF,cAAIC,OAAOC,YAAY,IAAI,CAAA;QAC7B;AACAF,YAAIC,OAAOC,YAAY,EAAEC,KAAKF,MAAAA;AAC9B,eAAOD;MACT,GACA,CAAC,CAAA;AAEHL,oBAAcS,OAAOC,OAAOP,qBAAAA,EAAuBQ,IAAI,CAACC,aACtDA,SAASR,OAAO,CAACS,oBAAoBC,aAAAA;AACnC,cAAMC,cAAc,KAAKC,+BAA+BF,SAASG,OAAO;AACxE,cAAMC,iBAAiB,KAAKF,+BAA+BH,mBAAmBI,OAAO;AACrF,eAAOE,OAAOC,GAAGL,aAAaG,cAAAA,IAAkBJ,WAAWD;MAC7D,CAAA,CAAA;IAEJ,OAAO;AACLb,oBAAcF;IAChB;AACA,WAAOE;EACT;;EAGA,MAAcb,oBAAoBI,MAAkD;AAClF,WAAO,KAAKF,MAAMgC,iBAAiB9B,IAAAA,EAAM+B,KAAK,CAACC,UAAU,IAAA;EAC3D;;EAGA,MAAcnC,qBAAqBG,MAAkD;AACnF,WAAO,KAAKF,MAAMmC,kBAAkBjC,IAAAA;EACtC;;EAGA,MAAcV,qBAAqBU,MAAkE;AACnG,UAAM,EAAEkC,gBAAgB5B,KAAI,IAAKN;AACjC,UAAM,EAAEmC,oBAAoBC,4BAA2B,IAAK9B,QAAQ;MAAE6B,oBAAoB;IAAgB;AAC1G,UAAM,EAAET,SAASW,SAAQ,IAAKH;AAC9B,UAAMlB,eAAekB,eAAelB,gBAAgBkB,eAAeI,kBAAkBC;AAErF,QAAI,EAAEA,GAAE,IAAKL;AACb,QAAIK,OAAO7B,UAAayB,uBAAuB,aAAa;AAC1DI,WAAK7B;IACP;AAEA,UAAM8B,6BAAqE;MACzE,GAAGN;MACHlB;MACAU,SAASA,WAAW;IACtB;AAEA,UAAMe,WAAW,MAAM,KAAK3C,MAAMU,eAAe;MAAEL,QAAQ;QAAC;UAAEoC;UAAIvB;UAAcqB;UAAUX;QAAQ;;IAAG,CAAA;AACrG,UAAMgB,eAAeD,SAAS,CAAA;AAG9B,UAAMlC,iBAAiB,MAAM,KAAKT,MAAMU,eAAe;MAAEL,QAAQ;QAAC;UAAEa;UAAcqB;QAAS;;IAAG,CAAA;AAC9F9B,mBAAeoC,KAAK,CAACC,GAAGC,MAAMjB,OAAOkB,QAAQ,KAAKrB,+BAA+BmB,EAAElB,OAAO,GAAG,KAAKD,+BAA+BoB,EAAEnB,OAAO,CAAA,CAAA;AAC1I,UAAMqB,yBAAyBxC,eAAeA,eAAeyC,SAAS,CAAA;AAEtE,QAAIC,oBAA4DF;AAIhE,QAAIL,gBAAgBhB,SAAS;AAC3BuB,0BAAoBF,0BAA0BL;IAChD;AAEA,UAAMQ,oBAAoB,CAACR,gBAAgB,CAACS,8BAA8BT,cAAcR,cAAAA;AACxF,QAAI,CAACgB,kBAAmB,QAAOR;AAE/B,YAAQP,oBAAAA;MACN,KAAK;AACH,eAAO,KAAKiB,oBAAoBV,cAAcF,4BAA4Bd,OAAAA;MAC5E,KAAK;AACH,eAAO,KAAK2B,0BAA0BJ,mBAAmBT,0BAAAA;MAC3D,KAAK;AACH,eAAO,KAAKc,iBAAiBZ,cAAcF,4BAA4BH,UAAUX,OAAAA;MACnF,KAAK;AACH,eAAO,KAAK6B,wBAAwBN,mBAAmBT,4BAA4BJ,+BAA+B,OAAA;MACpH;AACE,cAAM,IAAIoB,MAAM,iCAAiCrB,kBAAAA,EAAoB;IACzE;EACF;EAEA,MAAciB,oBACZV,cACAR,gBACAR,SACqC;AACrC,QAAIgB,cAAc;AAChBA,mBAAa1B,eAAekB,eAAelB;AAC3C0B,mBAAahB,UAAUA,WAAWgB,aAAahB,WAAW;AAC1DgB,mBAAaL,WAAWH,eAAeG;AACvCK,mBAAae,OAAOvB,eAAeI,kBAAkBmB,QAAQvB,eAAeuB;AAC5Ef,mBAAagB,UAAUxB,eAAeI,kBAAkBoB,WAAWxB,eAAewB;AAClFhB,mBAAaJ,oBAAoBJ,eAAeI;AAEhD,aAAO,MAAM,KAAKxC,MAAM6D,iBAAiBjB,YAAAA;IAC3C,OAAO;AACL,aAAO,MAAM,KAAK5C,MAAM8D,cAAc1B,cAAAA;IACxC;EACF;EAEA,MAAcmB,0BACZJ,mBACAf,gBACqC;AACrC,QAAIe,mBAAmB;AACrBA,wBAAkBjC,eAAekB,eAAelB;AAChDiC,wBAAkBZ,WAAWH,eAAeG;AAC5CY,wBAAkBQ,OAAOvB,eAAeuB;AACxCR,wBAAkBS,UAAUxB,eAAewB;AAC3CT,wBAAkBX,oBAAoBJ,eAAeI;AAErD,aAAO,MAAM,KAAKxC,MAAM6D,iBAAiBV,iBAAAA;IAC3C,OAAO;AACL,aAAO,MAAM,KAAKnD,MAAM8D,cAAc1B,cAAAA;IACxC;EACF;EAEA,MAAcoB,iBACZZ,cACAR,gBACAG,UACAX,SACqC;AACrC,QAAIgB,gBAAgB,CAACS,8BAA8BT,cAAcR,cAAAA,GAAiB;AAChF,YAAMsB,MACJ,4BAA4BtB,eAAelB,YAAY,eAAeqB,QAAAA,YAAoBX,OAAAA,mEAA0E;IAExK,OAAO;AACL,aAAO,MAAM,KAAK5B,MAAM8D,cAAc1B,cAAAA;IACxC;EACF;EAEA,MAAcqB,wBACZN,mBACAf,gBACA2B,aACqC;AACrC,UAAMC,iBAAiB;AACvB,QAAIC,iBAAiBd,mBAAmBvB,WAAWQ,eAAeR,WAAWoC;AAC7E,QAAIE;AAEJ,QAAI,CAACf,mBAAmB;AACtBe,sBAAgBD;IAClB,OAAO;AACL,UAAI,CAACvC,aAAayC,gBAAAA,IAAoBF,eAAeG,MAAM,OAAA;AAG3D,UAAIC,wBAAwBvC,OAAOwC,OAAO5C,WAAAA,GAAcE,WAAW,GAAGoC,cAAAA;AACtE,UAAIO,uBAAuBJ,mBAAmBA,iBAAiBK,MAAM,YAAA,IAAgB,CAAA,IAAK5D;AAC1F,UAAI6D,yBAAyBF,uBAAuB,GAAGF,qBAAAA,IAAyBF,gBAAAA,KAAqBE;AAGrG,UAAIK,qBAAqB5C,OAAO6C,IAAIF,wBAAwBV,aAAaQ,oBAAAA;AACzE,UAAI,CAACG,oBAAoB;AACvB,cAAM,IAAIhB,MAAM,uBAAuBK,WAAAA,eAA0BE,cAAAA,IAAkBE,gBAAAA,EAAkB;MACvG;AAGA,UAAI,CAACS,wBAAwBC,iBAAAA,IAAqBH,mBAAmBN,MAAM,OAAA;AAC3E,UAAIU,gBAAgBpD,YAAY0C,MAAM,GAAA;AACtC,UAAIW,WAAWH,uBAAuBR,MAAM,GAAA;AAC5C,aAAOW,SAAS7B,SAAS4B,cAAc5B,QAAQ;AAC7C6B,iBAASC,IAAG;MACd;AACAd,sBAAgBa,SAASE,KAAK,GAAA;AAC9B,UAAIJ,mBAAmB;AACrBX,yBAAiB,IAAIW,iBAAAA;MACvB;IACF;AAEAzC,mBAAeR,UAAUsC;AACzB,WAAO,MAAM,KAAKlE,MAAM8D,cAAc1B,cAAAA;EACxC;EAEQT,+BAA+BC,SAAyB;AAC9D,UAAMoC,iBAAiB;AACvB,QAAI,CAACtC,aAAayC,gBAAAA,IAAoBvC,QAAQwC,MAAM,OAAA;AAGpD,QAAIC,wBAAwBvC,OAAOwC,OAAO5C,WAAAA,GAAcE,WAAWoC;AACnE,QAAIG,kBAAkB;AACpBE,+BAAyB,IAAIF,gBAAAA;IAC/B;AAEA,WAAOE;EACT;AACF;;;AClQA,SAASa,mBAAmB;AAL5B,IAAMC,SAASC;","names":["isPresentationDefinitionEqual","semver","pdManagerMethods","PDManager","schema","IPDManager","methods","pdmPersistDefinition","bind","pdmHasDefinition","pdmHasDefinitions","pdmGetDefinition","pdmGetDefinitions","pdmDeleteDefinition","pdmDeleteDefinitions","store","options","args","itemId","hasDefinition","filter","hasDefinitions","getDefinition","opts","allDefinitions","getDefinitions","definitions","undefined","showVersionHistory","groupedByDefinitionId","reduce","acc","entity","definitionId","push","Object","values","map","entities","highestVersionItem","baseItem","baseVersion","normalizeToSemverVersionFormat","version","highestVersion","semver","gt","deleteDefinition","then","value","deleteDefinitions","definitionItem","versionControlMode","versionIncrementReleaseType","tenantId","definitionPayload","id","nonPersistedDefinitionItem","existing","existingItem","sort","a","b","compare","trulyLatestVersionItem","length","latestVersionItem","isPayloadModified","isPresentationDefinitionEqual","handleOverwriteMode","handleOverwriteLatestMode","handleManualMode","handleAutoIncrementMode","Error","name","purpose","updateDefinition","addDefinition","releaseType","defaultVersion","currentVersion","resultVersion","preReleaseSuffix","split","normalizedBaseVersion","coerce","preReleaseIdentifier","match","fullVersionToIncrement","incrementedVersion","inc","incrementedBaseVersion","incrementedSuffix","originalParts","newParts","pop","join","ReleaseType","schema","require"]}
1
+ {"version":3,"sources":["../plugin.schema.json","../src/agent/PDManager.ts","../src/index.ts"],"sourcesContent":["{\n \"IPDManager\": {\n \"components\": {\n \"schemas\": {\n \"DeleteDefinitionItemArgs\": {\n \"type\": \"object\",\n \"properties\": {\n \"itemId\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\"itemId\"],\n \"additionalProperties\": false\n },\n \"DeleteDefinitionItemsArgs\": {\n \"$ref\": \"#/components/schemas/GetDefinitionItemsArgs\"\n },\n \"GetDefinitionItemsArgs\": {\n \"type\": \"object\",\n \"properties\": {\n \"filter\": {\n \"$ref\": \"#/components/schemas/FindDefinitionArgs\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/FetchOptions\"\n }\n },\n \"additionalProperties\": false\n },\n \"FindDefinitionArgs\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/PresentationDefinitionItemFilter\"\n }\n },\n \"PresentationDefinitionItemFilter\": {\n \"$ref\": \"#/components/schemas/Partial<Omit<PresentationDefinitionItem,(\\\"definitionPayload\\\"|\\\"dcqlPayload\\\")>>\"\n },\n \"Partial<Omit<PresentationDefinitionItem,(\\\"definitionPayload\\\"|\\\"dcqlPayload\\\")>>\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n },\n \"definitionId\": {\n \"type\": \"string\"\n },\n \"tenantId\": {\n \"type\": \"string\"\n },\n \"version\": {\n \"type\": \"string\"\n },\n \"name\": {\n \"type\": \"string\"\n },\n \"purpose\": {\n \"type\": \"string\"\n },\n \"createdAt\": {\n \"type\": \"string\",\n \"format\": \"date-time\"\n },\n \"lastUpdatedAt\": {\n \"type\": \"string\",\n \"format\": \"date-time\"\n }\n },\n \"additionalProperties\": false\n },\n \"FetchOptions\": {\n \"type\": \"object\",\n \"properties\": {\n \"showVersionHistory\": {\n \"type\": \"boolean\"\n }\n },\n \"additionalProperties\": false\n },\n \"GetDefinitionItemArgs\": {\n \"type\": \"object\",\n \"properties\": {\n \"itemId\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\"itemId\"],\n \"additionalProperties\": false\n },\n \"PresentationDefinitionItem\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n },\n \"definitionId\": {\n \"type\": \"string\"\n },\n \"tenantId\": {\n \"type\": \"string\"\n },\n \"version\": {\n \"type\": \"string\"\n },\n \"name\": {\n \"type\": \"string\"\n },\n \"purpose\": {\n \"type\": \"string\"\n },\n \"definitionPayload\": {\n \"$ref\": \"#/components/schemas/IPresentationDefinition\"\n },\n \"dcqlPayload\": {\n \"$ref\": \"#/components/schemas/DcqlQueryREST\"\n },\n \"createdAt\": {\n \"type\": \"string\",\n \"format\": \"date-time\"\n },\n \"lastUpdatedAt\": {\n \"type\": \"string\",\n \"format\": \"date-time\"\n }\n },\n \"required\": [\"id\", \"definitionId\", \"version\", \"definitionPayload\", \"createdAt\", \"lastUpdatedAt\"],\n \"additionalProperties\": false\n },\n \"IPresentationDefinition\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/PresentationDefinitionV1\"\n },\n {\n \"$ref\": \"#/components/schemas/PresentationDefinitionV2\"\n }\n ]\n },\n \"PresentationDefinitionV1\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n },\n \"name\": {\n \"type\": \"string\"\n },\n \"purpose\": {\n \"type\": \"string\"\n },\n \"format\": {\n \"$ref\": \"#/components/schemas/Format\"\n },\n \"submission_requirements\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/SubmissionRequirement\"\n }\n },\n \"input_descriptors\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/InputDescriptorV1\"\n }\n }\n },\n \"required\": [\"id\", \"input_descriptors\"],\n \"additionalProperties\": false\n },\n \"Format\": {\n \"type\": \"object\",\n \"properties\": {\n \"jwt\": {\n \"$ref\": \"#/components/schemas/JwtObject\"\n },\n \"jwt_vc\": {\n \"$ref\": \"#/components/schemas/JwtObject\"\n },\n \"jwt_vc_json\": {\n \"$ref\": \"#/components/schemas/JwtObject\"\n },\n \"jwt_vp\": {\n \"$ref\": \"#/components/schemas/JwtObject\"\n },\n \"jwt_vp_json\": {\n \"$ref\": \"#/components/schemas/JwtObject\"\n },\n \"ldp\": {\n \"$ref\": \"#/components/schemas/LdpObject\"\n },\n \"ldp_vc\": {\n \"$ref\": \"#/components/schemas/LdpObject\"\n },\n \"ldp_vp\": {\n \"$ref\": \"#/components/schemas/LdpObject\"\n },\n \"di\": {\n \"$ref\": \"#/components/schemas/DiObject\"\n },\n \"di_vc\": {\n \"$ref\": \"#/components/schemas/DiObject\"\n },\n \"di_vp\": {\n \"$ref\": \"#/components/schemas/DiObject\"\n },\n \"vc+sd-jwt\": {\n \"$ref\": \"#/components/schemas/SdJwtObject\"\n },\n \"mso_mdoc\": {\n \"$ref\": \"#/components/schemas/MsoMdocObject\"\n }\n },\n \"additionalProperties\": false\n },\n \"JwtObject\": {\n \"type\": \"object\",\n \"properties\": {\n \"alg\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n },\n \"required\": [\"alg\"],\n \"additionalProperties\": false\n },\n \"LdpObject\": {\n \"type\": \"object\",\n \"properties\": {\n \"proof_type\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n },\n \"required\": [\"proof_type\"],\n \"additionalProperties\": false\n },\n \"DiObject\": {\n \"type\": \"object\",\n \"properties\": {\n \"proof_type\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"cryptosuite\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n },\n \"required\": [\"proof_type\", \"cryptosuite\"],\n \"additionalProperties\": false\n },\n \"SdJwtObject\": {\n \"type\": \"object\",\n \"properties\": {\n \"sd-jwt_alg_values\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"kb-jwt_alg_values\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n },\n \"additionalProperties\": false\n },\n \"MsoMdocObject\": {\n \"type\": \"object\",\n \"properties\": {\n \"alg\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n },\n \"required\": [\"alg\"],\n \"additionalProperties\": false\n },\n \"SubmissionRequirement\": {\n \"type\": \"object\",\n \"properties\": {\n \"name\": {\n \"type\": \"string\"\n },\n \"purpose\": {\n \"type\": \"string\"\n },\n \"rule\": {\n \"$ref\": \"#/components/schemas/Rules\"\n },\n \"count\": {\n \"type\": \"number\"\n },\n \"min\": {\n \"type\": \"number\"\n },\n \"max\": {\n \"type\": \"number\"\n },\n \"from\": {\n \"type\": \"string\"\n },\n \"from_nested\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/SubmissionRequirement\"\n }\n }\n },\n \"required\": [\"rule\"],\n \"additionalProperties\": false\n },\n \"Rules\": {\n \"type\": \"string\",\n \"enum\": [\"all\", \"pick\"]\n },\n \"InputDescriptorV1\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n },\n \"name\": {\n \"type\": \"string\"\n },\n \"purpose\": {\n \"type\": \"string\"\n },\n \"group\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"schema\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/Schema\"\n }\n },\n \"issuance\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/Issuance\"\n }\n },\n \"constraints\": {\n \"$ref\": \"#/components/schemas/ConstraintsV1\"\n }\n },\n \"required\": [\"id\", \"schema\"],\n \"additionalProperties\": false\n },\n \"Schema\": {\n \"type\": \"object\",\n \"properties\": {\n \"uri\": {\n \"type\": \"string\"\n },\n \"required\": {\n \"type\": \"boolean\"\n }\n },\n \"required\": [\"uri\"],\n \"additionalProperties\": false\n },\n \"Issuance\": {\n \"type\": \"object\",\n \"properties\": {\n \"manifest\": {\n \"type\": \"string\"\n }\n },\n \"additionalProperties\": {}\n },\n \"ConstraintsV1\": {\n \"type\": \"object\",\n \"properties\": {\n \"limit_disclosure\": {\n \"$ref\": \"#/components/schemas/Optionality\"\n },\n \"statuses\": {\n \"$ref\": \"#/components/schemas/Statuses\"\n },\n \"fields\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/FieldV1\"\n }\n },\n \"subject_is_issuer\": {\n \"$ref\": \"#/components/schemas/Optionality\"\n },\n \"is_holder\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/HolderSubject\"\n }\n },\n \"same_subject\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/HolderSubject\"\n }\n }\n },\n \"additionalProperties\": false\n },\n \"Optionality\": {\n \"type\": \"string\",\n \"enum\": [\"required\", \"preferred\"]\n },\n \"Statuses\": {\n \"type\": \"object\",\n \"properties\": {\n \"active\": {\n \"$ref\": \"#/components/schemas/PdStatus\"\n },\n \"suspended\": {\n \"$ref\": \"#/components/schemas/PdStatus\"\n },\n \"revoked\": {\n \"$ref\": \"#/components/schemas/PdStatus\"\n }\n },\n \"additionalProperties\": false\n },\n \"PdStatus\": {\n \"type\": \"object\",\n \"properties\": {\n \"directive\": {\n \"$ref\": \"#/components/schemas/Directives\"\n }\n },\n \"additionalProperties\": false\n },\n \"Directives\": {\n \"type\": \"string\",\n \"enum\": [\"required\", \"allowed\", \"disallowed\"]\n },\n \"FieldV1\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n },\n \"path\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"purpose\": {\n \"type\": \"string\"\n },\n \"filter\": {\n \"$ref\": \"#/components/schemas/FilterV1\"\n },\n \"predicate\": {\n \"$ref\": \"#/components/schemas/Optionality\"\n }\n },\n \"required\": [\"path\"],\n \"additionalProperties\": false\n },\n \"FilterV1\": {\n \"type\": \"object\",\n \"properties\": {\n \"const\": {\n \"$ref\": \"#/components/schemas/OneOfNumberStringBoolean\"\n },\n \"enum\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/OneOfNumberStringBoolean\"\n }\n },\n \"exclusiveMinimum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"exclusiveMaximum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"format\": {\n \"type\": \"string\"\n },\n \"minLength\": {\n \"type\": \"number\"\n },\n \"maxLength\": {\n \"type\": \"number\"\n },\n \"minimum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"maximum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"not\": {\n \"type\": \"object\"\n },\n \"pattern\": {\n \"type\": \"string\"\n },\n \"type\": {\n \"type\": \"string\"\n }\n },\n \"additionalProperties\": false\n },\n \"OneOfNumberStringBoolean\": {\n \"type\": [\"boolean\", \"number\", \"string\"]\n },\n \"OneOfNumberString\": {\n \"type\": [\"number\", \"string\"]\n },\n \"HolderSubject\": {\n \"type\": \"object\",\n \"properties\": {\n \"field_id\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"directive\": {\n \"$ref\": \"#/components/schemas/Optionality\"\n }\n },\n \"required\": [\"field_id\", \"directive\"],\n \"additionalProperties\": false\n },\n \"PresentationDefinitionV2\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n },\n \"name\": {\n \"type\": \"string\"\n },\n \"purpose\": {\n \"type\": \"string\"\n },\n \"format\": {\n \"$ref\": \"#/components/schemas/Format\"\n },\n \"submission_requirements\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/SubmissionRequirement\"\n }\n },\n \"input_descriptors\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/InputDescriptorV2\"\n }\n },\n \"frame\": {\n \"type\": \"object\"\n }\n },\n \"required\": [\"id\", \"input_descriptors\"],\n \"additionalProperties\": false\n },\n \"InputDescriptorV2\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n },\n \"name\": {\n \"type\": \"string\"\n },\n \"purpose\": {\n \"type\": \"string\"\n },\n \"format\": {\n \"$ref\": \"#/components/schemas/Format\"\n },\n \"group\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"issuance\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/Issuance\"\n }\n },\n \"constraints\": {\n \"$ref\": \"#/components/schemas/ConstraintsV2\"\n }\n },\n \"required\": [\"id\", \"constraints\"],\n \"additionalProperties\": false\n },\n \"ConstraintsV2\": {\n \"type\": \"object\",\n \"properties\": {\n \"limit_disclosure\": {\n \"$ref\": \"#/components/schemas/Optionality\"\n },\n \"statuses\": {\n \"$ref\": \"#/components/schemas/Statuses\"\n },\n \"fields\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/FieldV2\"\n }\n },\n \"subject_is_issuer\": {\n \"$ref\": \"#/components/schemas/Optionality\"\n },\n \"is_holder\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/HolderSubject\"\n }\n },\n \"same_subject\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/HolderSubject\"\n }\n }\n },\n \"additionalProperties\": false\n },\n \"FieldV2\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n },\n \"path\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"purpose\": {\n \"type\": \"string\"\n },\n \"filter\": {\n \"$ref\": \"#/components/schemas/FilterV2\"\n },\n \"predicate\": {\n \"$ref\": \"#/components/schemas/Optionality\"\n },\n \"intent_to_retain\": {\n \"type\": \"boolean\"\n },\n \"name\": {\n \"type\": \"string\"\n },\n \"optional\": {\n \"type\": \"boolean\"\n }\n },\n \"required\": [\"path\"],\n \"additionalProperties\": false\n },\n \"FilterV2\": {\n \"type\": \"object\",\n \"properties\": {\n \"const\": {\n \"$ref\": \"#/components/schemas/OneOfNumberStringBoolean\"\n },\n \"enum\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/OneOfNumberStringBoolean\"\n }\n },\n \"exclusiveMinimum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"exclusiveMaximum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"format\": {\n \"type\": \"string\"\n },\n \"formatMaximum\": {\n \"type\": \"string\"\n },\n \"formatMinimum\": {\n \"type\": \"string\"\n },\n \"formatExclusiveMaximum\": {\n \"type\": \"string\"\n },\n \"formatExclusiveMinimum\": {\n \"type\": \"string\"\n },\n \"minLength\": {\n \"type\": \"number\"\n },\n \"maxLength\": {\n \"type\": \"number\"\n },\n \"minimum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"maximum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"not\": {\n \"type\": \"object\"\n },\n \"pattern\": {\n \"type\": \"string\"\n },\n \"type\": {\n \"type\": \"string\"\n },\n \"contains\": {\n \"$ref\": \"#/components/schemas/FilterV2\"\n },\n \"items\": {\n \"$ref\": \"#/components/schemas/FilterV2Items\"\n }\n },\n \"additionalProperties\": false\n },\n \"FilterV2Items\": {\n \"type\": \"object\",\n \"properties\": {\n \"const\": {\n \"$ref\": \"#/components/schemas/OneOfNumberStringBoolean\"\n },\n \"enum\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/OneOfNumberStringBoolean\"\n }\n },\n \"exclusiveMinimum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"exclusiveMaximum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"format\": {\n \"type\": \"string\"\n },\n \"formatMaximum\": {\n \"type\": \"string\"\n },\n \"formatMinimum\": {\n \"type\": \"string\"\n },\n \"formatExclusiveMaximum\": {\n \"type\": \"string\"\n },\n \"formatExclusiveMinimum\": {\n \"type\": \"string\"\n },\n \"minLength\": {\n \"type\": \"number\"\n },\n \"maxLength\": {\n \"type\": \"number\"\n },\n \"minimum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"maximum\": {\n \"$ref\": \"#/components/schemas/OneOfNumberString\"\n },\n \"not\": {\n \"type\": \"object\"\n },\n \"pattern\": {\n \"type\": \"string\"\n },\n \"type\": {\n \"type\": \"string\"\n },\n \"contains\": {\n \"$ref\": \"#/components/schemas/FilterV2\"\n },\n \"items\": {\n \"$ref\": \"#/components/schemas/FilterV2Items\"\n }\n },\n \"additionalProperties\": false\n },\n \"DcqlQueryREST\": {\n \"type\": \"object\",\n \"properties\": {\n \"credentials\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/DcqlCredentialQuery\"\n }\n }\n },\n \"required\": [\"credentials\"],\n \"additionalProperties\": false\n },\n \"DcqlCredentialQuery\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n },\n \"format\": {\n \"type\": \"string\"\n },\n \"alg\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"claims\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/DcqlClaim\"\n }\n },\n \"meta\": {\n \"$ref\": \"#/components/schemas/Record<string,any>\"\n }\n },\n \"required\": [\"id\", \"format\", \"claims\"],\n \"additionalProperties\": false\n },\n \"DcqlClaim\": {\n \"type\": \"object\",\n \"properties\": {\n \"namespace\": {\n \"type\": \"string\"\n },\n \"claim_name\": {\n \"type\": \"string\"\n },\n \"filter\": {\n \"$ref\": \"#/components/schemas/DcqlFilter\"\n }\n },\n \"required\": [\"namespace\", \"claim_name\"],\n \"additionalProperties\": false\n },\n \"DcqlFilter\": {\n \"type\": \"object\",\n \"properties\": {\n \"type\": {\n \"type\": \"string\",\n \"enum\": [\"string\", \"number\", \"boolean\"]\n },\n \"pattern\": {\n \"type\": \"string\"\n },\n \"minimum\": {\n \"type\": \"number\"\n },\n \"maximum\": {\n \"type\": \"number\"\n }\n },\n \"required\": [\"type\"],\n \"additionalProperties\": false\n },\n \"Record<string,any>\": {\n \"type\": \"object\"\n },\n \"HasDefinitionItemArgs\": {\n \"$ref\": \"#/components/schemas/GetDefinitionItemArgs\"\n },\n \"HasDefinitionItemsArgs\": {\n \"$ref\": \"#/components/schemas/GetDefinitionItemsArgs\"\n },\n \"PersistDefinitionArgs\": {\n \"type\": \"object\",\n \"properties\": {\n \"definitionItem\": {\n \"$ref\": \"#/components/schemas/PersistPresentationDefinitionItem\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/PersistOptions\"\n }\n },\n \"required\": [\"definitionItem\"],\n \"additionalProperties\": false\n },\n \"PersistPresentationDefinitionItem\": {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n },\n \"definitionId\": {\n \"type\": \"string\"\n },\n \"version\": {\n \"type\": \"string\"\n },\n \"tenantId\": {\n \"type\": \"string\"\n },\n \"name\": {\n \"type\": \"string\"\n },\n \"purpose\": {\n \"type\": \"string\"\n },\n \"definitionPayload\": {\n \"$ref\": \"#/components/schemas/IPresentationDefinition\"\n },\n \"dcqlPayload\": {\n \"$ref\": \"#/components/schemas/DcqlQueryREST\"\n }\n },\n \"required\": [\"definitionPayload\"]\n },\n \"PersistOptions\": {\n \"type\": \"object\",\n \"properties\": {\n \"versionControlMode\": {\n \"$ref\": \"#/components/schemas/VersionControlMode\"\n },\n \"versionIncrementReleaseType\": {\n \"$ref\": \"#/components/schemas/ReleaseType\"\n }\n },\n \"additionalProperties\": false\n },\n \"VersionControlMode\": {\n \"type\": \"string\",\n \"enum\": [\"AutoIncrement\", \"Manual\", \"Overwrite\", \"OverwriteLatest\"]\n },\n \"ReleaseType\": {\n \"type\": \"string\",\n \"enum\": [\"major\", \"premajor\", \"minor\", \"preminor\", \"patch\", \"prepatch\", \"prerelease\", \"release\"]\n }\n },\n \"methods\": {\n \"pdmDeleteDefinition\": {\n \"description\": \"Delete a single presentation definition records by primary key\",\n \"arguments\": {\n \"$ref\": \"#/components/schemas/DeleteDefinitionItemArgs\"\n },\n \"returnType\": {\n \"type\": \"boolean\"\n }\n },\n \"pdmDeleteDefinitions\": {\n \"description\": \"Delete multiple presentation definitions records using filters\",\n \"arguments\": {\n \"$ref\": \"#/components/schemas/DeleteDefinitionItemsArgs\"\n },\n \"returnType\": {\n \"type\": \"number\"\n }\n },\n \"pdmGetDefinition\": {\n \"description\": \"Get a single presentation definition records by primary key\",\n \"arguments\": {\n \"$ref\": \"#/components/schemas/GetDefinitionItemArgs\"\n },\n \"returnType\": {\n \"$ref\": \"#/components/schemas/PresentationDefinitionItem\"\n }\n },\n \"pdmGetDefinitions\": {\n \"description\": \"Find one or more presentation definition records using filters\",\n \"arguments\": {\n \"$ref\": \"#/components/schemas/GetDefinitionItemsArgs\"\n },\n \"returnType\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/PresentationDefinitionItem\"\n }\n }\n },\n \"pdmHasDefinition\": {\n \"description\": \"Checks whether a presentation definition record exists by primary key\",\n \"arguments\": {\n \"$ref\": \"#/components/schemas/HasDefinitionItemArgs\"\n },\n \"returnType\": {\n \"type\": \"boolean\"\n }\n },\n \"pdmHasDefinitions\": {\n \"description\": \"Checks whether one or more presentation definition records exist using filters\",\n \"arguments\": {\n \"$ref\": \"#/components/schemas/HasDefinitionItemsArgs\"\n },\n \"returnType\": {\n \"type\": \"boolean\"\n }\n },\n \"pdmPersistDefinition\": {\n \"description\": \"Check in a presentation definition. It has version control logic which will add or update presentation definition records and has settings for automatic version numbering.\",\n \"arguments\": {\n \"$ref\": \"#/components/schemas/PersistDefinitionArgs\"\n },\n \"returnType\": {\n \"$ref\": \"#/components/schemas/PresentationDefinitionItem\"\n }\n }\n }\n }\n }\n}\n","import { IAgentPlugin } from '@veramo/core'\nimport {\n DeleteDefinitionItemArgs,\n DeleteDefinitionItemsArgs,\n GetDefinitionItemArgs,\n GetDefinitionItemsArgs,\n HasDefinitionItemArgs,\n HasDefinitionItemsArgs,\n IPDManager,\n PersistDefinitionArgs,\n schema,\n} from '../index'\nimport {\n AbstractPDStore,\n isPresentationDefinitionEqual,\n NonPersistedPresentationDefinitionItem,\n PresentationDefinitionItem,\n} from '@sphereon/ssi-sdk.data-store'\nimport semver from 'semver/preload'\nimport { ReleaseType } from 'semver'\n\n// Exposing the methods here for any REST implementation\nexport const pdManagerMethods: Array<string> = [\n 'pdmHasDefinition',\n 'pdmHasGetDefinitions',\n 'pdmGetDefinition',\n 'pdmGetDefinitions',\n 'pdmPersistDefinition',\n 'pdmDeleteDefinition',\n 'pdmDeleteDefinitions',\n]\n\n/**\n * {@inheritDoc IPDManager}\n */\nexport class PDManager implements IAgentPlugin {\n readonly schema = schema.IPDManager\n readonly methods: IPDManager = {\n pdmPersistDefinition: this.pdmPersistDefinition.bind(this),\n pdmHasDefinition: this.pdmHasDefinition.bind(this),\n pdmHasDefinitions: this.pdmHasDefinitions.bind(this),\n pdmGetDefinition: this.pdmGetDefinition.bind(this),\n pdmGetDefinitions: this.pdmGetDefinitions.bind(this),\n pdmDeleteDefinition: this.pdmDeleteDefinition.bind(this),\n pdmDeleteDefinitions: this.pdmDeleteDefinitions.bind(this),\n }\n\n private readonly store: AbstractPDStore\n\n constructor(options: { store: AbstractPDStore }) {\n this.store = options.store\n }\n\n /** {@inheritDoc IPDManager.pdmHasDefinition} */\n private async pdmHasDefinition(args: HasDefinitionItemArgs): Promise<boolean> {\n const { itemId } = args\n return this.store.hasDefinition({ itemId })\n }\n\n /** {@inheritDoc IPDManager.pdmHasDefinitions} */\n private async pdmHasDefinitions(args: HasDefinitionItemsArgs): Promise<boolean> {\n const { filter } = args\n return this.store.hasDefinitions({ filter })\n }\n\n /** {@inheritDoc IPDManager.pdmGetDefinition} */\n private async pdmGetDefinition(args: GetDefinitionItemArgs): Promise<PresentationDefinitionItem> {\n const { itemId } = args\n return this.store.getDefinition({ itemId })\n }\n\n /** {@inheritDoc IPDManager.pdmGetDefinitions} */\n private async pdmGetDefinitions(args: GetDefinitionItemsArgs): Promise<Array<PresentationDefinitionItem>> {\n const { filter, opts } = args\n const allDefinitions = await this.store.getDefinitions({ filter })\n let definitions: PresentationDefinitionItem[] = []\n if (opts == undefined || opts.showVersionHistory !== true) {\n const groupedByDefinitionId = allDefinitions.reduce(\n (acc, entity) => {\n if (!acc[entity.definitionId]) {\n acc[entity.definitionId] = []\n }\n acc[entity.definitionId].push(entity)\n return acc\n },\n {} as Record<string, PresentationDefinitionItem[]>,\n )\n definitions = Object.values(groupedByDefinitionId).map((entities) =>\n entities.reduce((highestVersionItem, baseItem) => {\n const baseVersion = this.normalizeToSemverVersionFormat(baseItem.version)\n const highestVersion = this.normalizeToSemverVersionFormat(highestVersionItem.version)\n return semver.gt(baseVersion, highestVersion) ? baseItem : highestVersionItem\n }),\n )\n } else {\n definitions = allDefinitions\n }\n return definitions\n }\n\n /** {@inheritDoc IPDManager.pdmDeleteDefinition} */\n private async pdmDeleteDefinition(args: DeleteDefinitionItemArgs): Promise<boolean> {\n return this.store.deleteDefinition(args).then((value) => true)\n }\n\n /** {@inheritDoc IPDManager.pdmDeleteDefinitions} */\n private async pdmDeleteDefinitions(args: DeleteDefinitionItemsArgs): Promise<number> {\n return this.store.deleteDefinitions(args)\n }\n\n /** {@inheritDoc IPDManager.pdmPersistDefinition} */\n private async pdmPersistDefinition(args: PersistDefinitionArgs): Promise<PresentationDefinitionItem> {\n const { definitionItem, opts } = args\n const { versionControlMode, versionIncrementReleaseType } = opts ?? { versionControlMode: 'AutoIncrement' }\n const { version, tenantId } = definitionItem\n const definitionId = definitionItem.definitionId ?? definitionItem.definitionPayload.id\n\n let { id } = definitionItem\n if (id !== undefined && versionControlMode !== 'Overwrite') {\n id = undefined\n }\n\n const nonPersistedDefinitionItem: NonPersistedPresentationDefinitionItem = {\n ...definitionItem,\n definitionId: definitionId,\n version: version ?? '1',\n }\n\n const existing = await this.store.getDefinitions({ filter: [{ id, definitionId, tenantId, version }] })\n const existingItem = existing[0]\n\n // Always fetch all definitions for the definitionId/tenantId and determine the truly latest version\n const allDefinitions = await this.store.getDefinitions({ filter: [{ definitionId, tenantId }] })\n allDefinitions.sort((a, b) => semver.compare(this.normalizeToSemverVersionFormat(a.version), this.normalizeToSemverVersionFormat(b.version)))\n const trulyLatestVersionItem = allDefinitions[allDefinitions.length - 1]\n\n let latestVersionItem: PresentationDefinitionItem | undefined = trulyLatestVersionItem\n\n // If a specific version exists and matches existingItem, we keep that as a base.\n // Otherwise we use the trulyLatestVersionItem\n if (existingItem && version) {\n latestVersionItem = trulyLatestVersionItem ?? existingItem\n }\n\n const isPayloadModified = !existingItem || !isPresentationDefinitionEqual(existingItem, definitionItem)\n if (!isPayloadModified) return existingItem\n\n switch (versionControlMode) {\n case 'Overwrite':\n return this.handleOverwriteMode(existingItem, nonPersistedDefinitionItem, version)\n case 'OverwriteLatest':\n return this.handleOverwriteLatestMode(latestVersionItem, nonPersistedDefinitionItem)\n case 'Manual':\n return this.handleManualMode(existingItem, nonPersistedDefinitionItem, tenantId, version)\n case 'AutoIncrement':\n return this.handleAutoIncrementMode(latestVersionItem, nonPersistedDefinitionItem, versionIncrementReleaseType ?? 'major')\n default:\n throw new Error(`Unknown version control mode: ${versionControlMode}`)\n }\n }\n\n private async handleOverwriteMode(\n existingItem: PresentationDefinitionItem | undefined,\n definitionItem: NonPersistedPresentationDefinitionItem,\n version: string | undefined,\n ): Promise<PresentationDefinitionItem> {\n if (existingItem) {\n existingItem.definitionId = definitionItem.definitionId\n existingItem.version = version ?? existingItem.version ?? '1'\n existingItem.tenantId = definitionItem.tenantId\n existingItem.name = definitionItem.definitionPayload.name ?? definitionItem.name\n existingItem.purpose = definitionItem.definitionPayload.purpose ?? definitionItem.purpose\n existingItem.definitionPayload = definitionItem.definitionPayload\n\n return await this.store.updateDefinition(existingItem)\n } else {\n return await this.store.addDefinition(definitionItem)\n }\n }\n\n private async handleOverwriteLatestMode(\n latestVersionItem: PresentationDefinitionItem | undefined,\n definitionItem: NonPersistedPresentationDefinitionItem,\n ): Promise<PresentationDefinitionItem> {\n if (latestVersionItem) {\n latestVersionItem.definitionId = definitionItem.definitionId\n latestVersionItem.tenantId = definitionItem.tenantId\n latestVersionItem.name = definitionItem.name\n latestVersionItem.purpose = definitionItem.purpose\n latestVersionItem.definitionPayload = definitionItem.definitionPayload\n\n return await this.store.updateDefinition(latestVersionItem)\n } else {\n return await this.store.addDefinition(definitionItem)\n }\n }\n\n private async handleManualMode(\n existingItem: PresentationDefinitionItem | undefined,\n definitionItem: NonPersistedPresentationDefinitionItem,\n tenantId: string | undefined,\n version: string | undefined,\n ): Promise<PresentationDefinitionItem> {\n if (existingItem && !isPresentationDefinitionEqual(existingItem, definitionItem)) {\n throw Error(\n `Cannot update definition ${definitionItem.definitionId} for tenant ${tenantId} version ${version} because definition exists and manual version control is enabled.`,\n )\n } else {\n return await this.store.addDefinition(definitionItem)\n }\n }\n\n private async handleAutoIncrementMode(\n latestVersionItem: PresentationDefinitionItem | undefined,\n definitionItem: NonPersistedPresentationDefinitionItem,\n releaseType: ReleaseType,\n ): Promise<PresentationDefinitionItem> {\n const defaultVersion = '1'\n let currentVersion = latestVersionItem?.version ?? definitionItem.version ?? defaultVersion\n let resultVersion: string\n\n if (!latestVersionItem) {\n resultVersion = currentVersion\n } else {\n let [baseVersion, preReleaseSuffix] = currentVersion.split(/-(.+)/)\n\n // Normalize the base version to at least 'major.minor.patch', that's what semver needs as input\n let normalizedBaseVersion = semver.coerce(baseVersion)?.version ?? `${defaultVersion}.0.0`\n let preReleaseIdentifier = preReleaseSuffix ? preReleaseSuffix.match(/^[a-zA-Z]+/)?.[0] : undefined\n let fullVersionToIncrement = preReleaseIdentifier ? `${normalizedBaseVersion}-${preReleaseSuffix}` : normalizedBaseVersion\n\n // Use semver to increment the version\n let incrementedVersion = semver.inc(fullVersionToIncrement, releaseType, preReleaseIdentifier)\n if (!incrementedVersion) {\n throw new Error(`Could not increment ${releaseType} version on ${currentVersion} ${preReleaseSuffix}`)\n }\n\n // Extract new base version to match the original input format\n let [incrementedBaseVersion, incrementedSuffix] = incrementedVersion.split(/-(.+)/)\n let originalParts = baseVersion.split('.')\n let newParts = incrementedBaseVersion.split('.')\n while (newParts.length > originalParts.length) {\n newParts.pop() // Reduce to original length by removing extra .0s\n }\n resultVersion = newParts.join('.')\n if (incrementedSuffix) {\n resultVersion += `-${incrementedSuffix}`\n }\n }\n\n definitionItem.version = resultVersion\n return await this.store.addDefinition(definitionItem)\n }\n\n private normalizeToSemverVersionFormat(version: string): string {\n const defaultVersion = '1.0.0'\n let [baseVersion, preReleaseSuffix] = version.split(/-(.+)/)\n\n // Normalize the base version to at least 'major.minor.patch', that's what semver needs as input\n let normalizedBaseVersion = semver.coerce(baseVersion)?.version ?? defaultVersion\n if (preReleaseSuffix) {\n normalizedBaseVersion += `-${preReleaseSuffix}`\n }\n\n return normalizedBaseVersion\n }\n}\n","/**\n * @public\n */\nconst schema = require('../plugin.schema.json')\nexport { schema }\nexport { PDManager, pdManagerMethods } from './agent/PDManager'\nexport * from './types/IPDManager'\n\nexport type { ReleaseType } from 'semver'\n"],"mappings":"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","names":["isPresentationDefinitionEqual","semver","pdManagerMethods","PDManager","schema","IPDManager","methods","pdmPersistDefinition","bind","pdmHasDefinition","pdmHasDefinitions","pdmGetDefinition","pdmGetDefinitions","pdmDeleteDefinition","pdmDeleteDefinitions","store","constructor","options","args","itemId","hasDefinition","filter","hasDefinitions","getDefinition","opts","allDefinitions","getDefinitions","definitions","undefined","showVersionHistory","groupedByDefinitionId","reduce","acc","entity","definitionId","push","Object","values","map","entities","highestVersionItem","baseItem","baseVersion","normalizeToSemverVersionFormat","version","highestVersion","semver","gt","deleteDefinition","then","value","deleteDefinitions","definitionItem","versionControlMode","versionIncrementReleaseType","tenantId","definitionPayload","id","nonPersistedDefinitionItem","existing","existingItem","sort","a","b","compare","trulyLatestVersionItem","length","latestVersionItem","isPayloadModified","isPresentationDefinitionEqual","handleOverwriteMode","handleOverwriteLatestMode","handleManualMode","handleAutoIncrementMode","Error","name","purpose","updateDefinition","addDefinition","releaseType","defaultVersion","currentVersion","resultVersion","preReleaseSuffix","split","normalizedBaseVersion","coerce","preReleaseIdentifier","match","fullVersionToIncrement","incrementedVersion","inc","incrementedBaseVersion","incrementedSuffix","originalParts","newParts","pop","join","schema","require"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sphereon/ssi-sdk.pd-manager",
3
- "version": "0.34.1-feature.merge.crypto.extensions.modules.39+dea3b6de",
3
+ "version": "0.34.1-fix.79+d10eff80",
4
4
  "source": "src/index.ts",
5
5
  "type": "module",
6
6
  "main": "./dist/index.cjs",
@@ -29,14 +29,14 @@
29
29
  "dependencies": {
30
30
  "@sphereon/pex": "5.0.0-unstable.28",
31
31
  "@sphereon/pex-models": "^2.3.2",
32
- "@sphereon/ssi-sdk.data-store": "0.34.1-feature.merge.crypto.extensions.modules.39+dea3b6de",
33
- "cross-fetch": "^3.1.8",
32
+ "@sphereon/ssi-sdk.data-store": "0.34.1-fix.79+d10eff80",
33
+ "cross-fetch": "^4.1.0",
34
34
  "debug": "^4.3.5",
35
35
  "semver": "^7.6.3",
36
36
  "typeorm": "0.3.20"
37
37
  },
38
38
  "devDependencies": {
39
- "@sphereon/ssi-sdk.agent-config": "0.34.1-feature.merge.crypto.extensions.modules.39+dea3b6de",
39
+ "@sphereon/ssi-sdk.agent-config": "0.34.1-fix.79+d10eff80",
40
40
  "@types/semver": "^7.5.8",
41
41
  "@veramo/remote-client": "4.2.0",
42
42
  "@veramo/remote-server": "4.2.0"
@@ -62,5 +62,5 @@
62
62
  "Presentation Defintion Manager",
63
63
  "PD Manager"
64
64
  ],
65
- "gitHead": "dea3b6de7ecd726e67ce100337fba2ea968500af"
65
+ "gitHead": "d10eff8075537d257b9ec2188eed2c60315a5ce7"
66
66
  }
package/src/index.ts CHANGED
@@ -6,4 +6,4 @@ export { schema }
6
6
  export { PDManager, pdManagerMethods } from './agent/PDManager'
7
7
  export * from './types/IPDManager'
8
8
 
9
- export { ReleaseType } from 'semver'
9
+ export type { ReleaseType } from 'semver'