@pipeline-builder/api-core 5.2.6 → 5.2.8
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/lib/constants/ai-providers.js +1 -1
- package/lib/constants/http-status.js +1 -1
- package/lib/constants/index.js +1 -1
- package/lib/constants/time.js +1 -1
- package/lib/errors/app-errors.js +1 -1
- package/lib/errors/index.js +1 -1
- package/lib/helpers/access-helpers.d.ts +19 -0
- package/lib/helpers/access-helpers.js +24 -4
- package/lib/helpers/content-disposition.js +1 -1
- package/lib/helpers/crud-helpers.js +1 -1
- package/lib/helpers/index.d.ts +1 -1
- package/lib/helpers/index.js +2 -2
- package/lib/helpers/org-hierarchy-http.js +1 -1
- package/lib/helpers/org-hierarchy.js +1 -1
- package/lib/helpers/restore-helpers.js +1 -1
- package/lib/helpers/sse-helpers.js +13 -2
- package/lib/helpers/support-calendar.js +1 -1
- package/lib/index.js +1 -1
- package/lib/middleware/ask-provenance.js +1 -1
- package/lib/middleware/assurance.js +1 -1
- package/lib/middleware/auth.js +3 -2
- package/lib/middleware/client-version.d.ts +45 -0
- package/lib/middleware/client-version.js +97 -0
- package/lib/middleware/deferred-quota-check.js +1 -1
- package/lib/middleware/ecosystem-guard.js +1 -1
- package/lib/middleware/index.d.ts +1 -0
- package/lib/middleware/index.js +2 -1
- package/lib/middleware/jwt-verify.js +1 -1
- package/lib/middleware/mongo-sanitize.js +1 -1
- package/lib/middleware/on-behalf.js +1 -1
- package/lib/middleware/permission-gates.js +1 -1
- package/lib/middleware/quota-exempt-routes.js +1 -1
- package/lib/middleware/revocation.js +1 -1
- package/lib/middleware/route-table.js +16 -1
- package/lib/middleware/service-tokens.js +1 -1
- package/lib/middleware/step-up.js +1 -1
- package/lib/middleware/system-org.d.ts +18 -5
- package/lib/middleware/system-org.js +19 -6
- package/lib/openapi/extend-zod.js +1 -1
- package/lib/openapi/index.js +1 -1
- package/lib/openapi/registry.js +1 -1
- package/lib/openapi/routes/ask-routes.js +1 -1
- package/lib/openapi/routes/billing-routes.js +1 -1
- package/lib/openapi/routes/image-registry-routes.js +1 -1
- package/lib/openapi/routes/index.js +1 -1
- package/lib/openapi/routes/message-routes.js +1 -1
- package/lib/openapi/routes/pipeline-routes.js +1 -1
- package/lib/openapi/routes/pipeline-template-routes.js +1 -1
- package/lib/openapi/routes/plugin-routes.js +1 -1
- package/lib/openapi/routes/quota-routes.js +1 -1
- package/lib/openapi/schema-registry.js +1 -1
- package/lib/routes/health.js +1 -1
- package/lib/routes/index.js +1 -1
- package/lib/services/ai-call-weight.js +1 -1
- package/lib/services/alert-delivery.js +1 -1
- package/lib/services/api-key-exchange.d.ts +4 -2
- package/lib/services/api-key-exchange.js +15 -8
- package/lib/services/audit-context.d.ts +3 -0
- package/lib/services/audit-context.js +2 -1
- package/lib/services/audit-spool.js +1 -1
- package/lib/services/cache-service.js +1 -1
- package/lib/services/circuit-breaker.js +1 -1
- package/lib/services/compliance-client.js +1 -1
- package/lib/services/compliance-event-subscriber.js +1 -1
- package/lib/services/durable-event-bus.js +1 -1
- package/lib/services/ecosystem-notify-client.d.ts +7 -1
- package/lib/services/ecosystem-notify-client.js +9 -3
- package/lib/services/entity-events.js +1 -1
- package/lib/services/env-redis.js +1 -1
- package/lib/services/http-client.js +19 -3
- package/lib/services/index.d.ts +1 -1
- package/lib/services/index.js +2 -2
- package/lib/services/jwks-cache.js +1 -1
- package/lib/services/leader-lock.js +1 -1
- package/lib/services/notification-channels.js +1 -1
- package/lib/services/org-ai-client.js +1 -1
- package/lib/services/pagerduty-inbound.js +1 -1
- package/lib/services/pagerduty.js +1 -1
- package/lib/services/quota-increment-batcher.js +1 -1
- package/lib/services/quota.js +1 -1
- package/lib/services/remote-audit-client.js +1 -1
- package/lib/services/retry-forever.js +1 -1
- package/lib/services/retry-strategy.js +1 -1
- package/lib/services/s3-client.js +1 -1
- package/lib/services/scheduler.js +1 -1
- package/lib/services/service-boot.js +1 -1
- package/lib/services/service-keys.js +2 -2
- package/lib/services/sse-ticket-store.js +1 -1
- package/lib/services/system-notification.js +1 -1
- package/lib/services/token-revocation.js +1 -1
- package/lib/services/version-vuln-policy.d.ts +11 -0
- package/lib/services/version-vuln-policy.js +33 -7
- package/lib/types/ai-catalog.js +1 -1
- package/lib/types/ask-proposals.d.ts +23 -0
- package/lib/types/ask-proposals.js +29 -1
- package/lib/types/audit-events.js +1 -1
- package/lib/types/build-catalog.d.ts +65 -0
- package/lib/types/build-catalog.js +95 -1
- package/lib/types/catalog-metadata.js +1 -1
- package/lib/types/common.js +1 -1
- package/lib/types/compliance-exemption.js +1 -1
- package/lib/types/ecosystem-notifications.d.ts +9 -0
- package/lib/types/ecosystem-notifications.js +15 -6
- package/lib/types/ecosystem.d.ts +1 -6
- package/lib/types/ecosystem.js +18 -5
- package/lib/types/error-codes.d.ts +3 -0
- package/lib/types/error-codes.js +6 -1
- package/lib/types/feature-flags.d.ts +17 -1
- package/lib/types/feature-flags.js +1 -1
- package/lib/types/http.js +1 -1
- package/lib/types/index.d.ts +3 -3
- package/lib/types/index.js +4 -4
- package/lib/types/metadata-keys.js +1 -1
- package/lib/types/permissions.d.ts +60 -13
- package/lib/types/permissions.js +63 -14
- package/lib/types/pipeline-template.js +1 -1
- package/lib/types/pipeline.js +1 -1
- package/lib/types/plugin-catalog.js +1 -1
- package/lib/types/plugin-health.js +1 -1
- package/lib/types/plugin-scan.d.ts +69 -0
- package/lib/types/plugin-scan.js +77 -1
- package/lib/types/quota-catalog.js +15 -2
- package/lib/types/quota-tiers.d.ts +27 -160
- package/lib/types/quota-tiers.js +47 -255
- package/lib/types/remote-audit-actions.d.ts +1 -1
- package/lib/types/remote-audit-actions.js +9 -1
- package/lib/types/reserved-tags.js +1 -1
- package/lib/types/tier-limits.d.ts +210 -0
- package/lib/types/tier-limits.js +254 -0
- package/lib/types/usage-projection.js +1 -1
- package/lib/types/visibility.js +1 -1
- package/lib/types/wire-vocabulary.d.ts +7 -0
- package/lib/types/wire-vocabulary.js +7 -1
- package/lib/utils/alias-resolver.js +1 -1
- package/lib/utils/api-key.js +1 -1
- package/lib/utils/audit.js +1 -1
- package/lib/utils/aws-scrub.js +1 -1
- package/lib/utils/compliance-attributes.js +1 -1
- package/lib/utils/concurrency-gate.d.ts +98 -0
- package/lib/utils/concurrency-gate.js +110 -0
- package/lib/utils/concurrency.js +1 -1
- package/lib/utils/crash-handlers.js +1 -1
- package/lib/utils/date.js +1 -1
- package/lib/utils/dsse.js +1 -1
- package/lib/utils/env.d.ts +11 -0
- package/lib/utils/env.js +14 -1
- package/lib/utils/headers.js +1 -1
- package/lib/utils/identity.js +1 -1
- package/lib/utils/index.d.ts +2 -0
- package/lib/utils/index.js +3 -1
- package/lib/utils/jwk.js +2 -2
- package/lib/utils/logger.js +1 -1
- package/lib/utils/metric-emitter.js +1 -1
- package/lib/utils/object.js +1 -1
- package/lib/utils/params.js +1 -1
- package/lib/utils/plugin-compliance.d.ts +9 -1
- package/lib/utils/plugin-compliance.js +1 -1
- package/lib/utils/proof-of-work.js +1 -1
- package/lib/utils/response.js +1 -1
- package/lib/utils/retention.js +1 -1
- package/lib/utils/safe-require.js +1 -1
- package/lib/utils/secret-encryption.js +1 -1
- package/lib/utils/secret-rotation.js +1 -1
- package/lib/utils/secure-compare.js +1 -1
- package/lib/utils/semver.d.ts +18 -0
- package/lib/utils/semver.js +120 -0
- package/lib/utils/sensitive-patterns.js +1 -1
- package/lib/utils/service-registry.js +1 -1
- package/lib/utils/ssrf.js +1 -1
- package/lib/validation/ai-schemas.js +1 -1
- package/lib/validation/common-schemas.js +1 -1
- package/lib/validation/dockerfile-static.js +1 -1
- package/lib/validation/index.d.ts +1 -1
- package/lib/validation/index.js +2 -2
- package/lib/validation/message-schemas.d.ts +73 -0
- package/lib/validation/message-schemas.js +63 -2
- package/lib/validation/middleware.js +1 -1
- package/lib/validation/pipeline-schemas.js +1 -1
- package/lib/validation/pipeline-template-schemas.js +1 -1
- package/lib/validation/plugin-base-images.js +1 -1
- package/lib/validation/plugin-catalog-detect.js +1 -1
- package/lib/validation/plugin-catalog-metadata.js +1 -1
- package/lib/validation/plugin-heuristics.js +1 -1
- package/lib/validation/plugin-lint.js +1 -1
- package/lib/validation/plugin-name-confusable.js +1 -1
- package/lib/validation/plugin-schemas.js +1 -1
- package/lib/validation/plugin-spec-schema.js +1 -1
- package/lib/validation/plugin-template-contract.js +1 -1
- package/package.json +11 -4
|
@@ -76,4 +76,4 @@ export function getAIProviderModels(providerId) {
|
|
|
76
76
|
}
|
|
77
77
|
return AI_PROVIDER_CATALOG[providerId]?.models ?? [];
|
|
78
78
|
}
|
|
79
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
79
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWktcHJvdmlkZXJzLmpzIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29uc3RhbnRzL2FpLXByb3ZpZGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwrQ0FBK0M7QUFDL0Msc0NBQXNDO0FBRXRDLE9BQU8sRUFBRSxtQkFBbUIsRUFBeUMsTUFBTSx3QkFBd0IsQ0FBQztBQUVwRywwRUFBMEU7QUFDMUUsa0ZBQWtGO0FBQ2xGLDBDQUEwQztBQUMxQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsaUJBQWlCLEVBQUUsa0JBQWtCLEVBQUUsbUJBQW1CLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUc5STs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBMkI7SUFDMUQsV0FBVyxFQUFFLG1CQUFtQjtJQUNoQyxRQUFRLEVBQUUsZ0JBQWdCO0lBQzFCLFFBQVEsRUFBRSw4QkFBOEI7SUFDeEMsS0FBSyxFQUFFLGFBQWE7SUFDcEIsZ0JBQWdCLEVBQUUsbUJBQW1CO0NBQ3RDLENBQUM7QUFFRjs7Ozs7O0dBTUc7QUFDSCxNQUFNLENBQUMsTUFBTSw2QkFBNkIsR0FBRyxtQkFBbUIsQ0FBQztBQUVqRTs7OztHQUlHO0FBQ0gsU0FBUyxjQUFjLENBQUMsR0FBVztJQUNqQyxPQUFPLEdBQUc7U0FDUCxLQUFLLENBQUMsR0FBRyxDQUFDO1NBQ1YsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7U0FDcEIsTUFBTSxDQUFDLE9BQU8sQ0FBQztTQUNmLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1FBQ2IsTUFBTSxHQUFHLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUMvQixNQUFNLEVBQUUsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQzdELE1BQU0sSUFBSSxHQUFHLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDO1FBQ25FLE9BQU8sRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLENBQUM7SUFDdEIsQ0FBQyxDQUFDO1NBQ0QsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztBQUNwQyxDQUFDO0FBRUQ7Ozs7Ozs7O0dBUUc7QUFDSCxNQUFNLFVBQVUsMkJBQTJCO0lBQ3pDLE1BQU0sT0FBTyxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsMEJBQTBCLENBQUM7SUFDdkQsSUFBSSxDQUFDLE9BQU87UUFBRSxPQUFPLElBQUksQ0FBQztJQUMxQixNQUFNLEdBQUcsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLHdCQUF3QixJQUFJLE9BQU8sQ0FBQyxHQUFHLENBQUMsdUJBQXVCLElBQUksbUJBQW1CLENBQUM7SUFDL0csTUFBTSxNQUFNLEdBQUcsY0FBYyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ25DLE9BQU87UUFDTCxFQUFFLEVBQUUsNkJBQTZCO1FBQ2pDLElBQUksRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLHNCQUFzQixJQUFJLGlDQUFpQztRQUM3RSxNQUFNLEVBQUUsTUFBTSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLGFBQWEsRUFBRSxDQUFDO0tBQzVFLENBQUM7QUFDSixDQUFDO0FBRUQsVUFBVTtBQUVWOzs7OztHQUtHO0FBQ0gsTUFBTSxVQUFVLG1CQUFtQixDQUFDLFVBQWtCO0lBQ3BELElBQUksVUFBVSxLQUFLLDZCQUE2QixFQUFFLENBQUM7UUFDakQsT0FBTywyQkFBMkIsRUFBRSxFQUFFLE1BQU0sSUFBSSxFQUFFLENBQUM7SUFDckQsQ0FBQztJQUNELE9BQU8sbUJBQW1CLENBQUMsVUFBVSxDQUFDLEVBQUUsTUFBTSxJQUFJLEVBQUUsQ0FBQztBQUN2RCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IDIwMjYgUGlwZWxpbmUgQnVpbGRlciBDb250cmlidXRvcnNcbi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG5cbmltcG9ydCB7IEFJX1BST1ZJREVSX0NBVEFMT0csIHR5cGUgQUlNb2RlbEluZm8sIHR5cGUgQUlQcm92aWRlckluZm8gfSBmcm9tICcuLi90eXBlcy9haS1jYXRhbG9nLmpzJztcblxuLy8gVGhlIGNhdGFsb2cgaXRzZWxmIGlzIGRhdGEtb25seSBhbmQgbGl2ZXMgaW4gYHR5cGVzL2FpLWNhdGFsb2cudHNgICh0aGVcbi8vIGJyb3dzZXItc2FmZSBgLi9haS1jYXRhbG9nYCBzdWJwYXRoKTsgcmUtZXhwb3J0ZWQgaGVyZSBzbyBzZXJ2ZXIgY29kZSBrZWVwcyBvbmVcbi8vIGltcG9ydCBzaXRlIGZvciBldmVyeXRoaW5nIEFJLXByb3ZpZGVyLlxuZXhwb3J0IHsgQUlfUFJPVklERVJfQ0FUQUxPRywgQUlfUFJPVklERVJfTkFNRVMsIEFJX1BST1ZJREVSX01PREVMUywgQUlfS0VZX1BST1ZJREVSX0lEUywgaXNLZXlsZXNzUHJvdmlkZXJJZCB9IGZyb20gJy4uL3R5cGVzL2FpLWNhdGFsb2cuanMnO1xuZXhwb3J0IHR5cGUgeyBBSU1vZGVsSW5mbywgQUlQcm92aWRlckluZm8gfSBmcm9tICcuLi90eXBlcy9haS1jYXRhbG9nLmpzJztcblxuLyoqXG4gKiBFbnZpcm9ubWVudCB2YXJpYWJsZSBuYW1lcyBmb3IgZWFjaCBBSSBwcm92aWRlcidzIEFQSSBrZXkuXG4gKiBVc2VkIGJ5IGJhY2tlbmQgc2VydmljZXMgdG8gaW5pdGlhbGl6ZSB0aGUgcHJvdmlkZXIgcmVnaXN0cnkuXG4gKi9cbmV4cG9ydCBjb25zdCBBSV9QUk9WSURFUl9FTlZfVkFSUzogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgJ2FudGhyb3BpYyc6ICdBTlRIUk9QSUNfQVBJX0tFWScsXG4gICdvcGVuYWknOiAnT1BFTkFJX0FQSV9LRVknLFxuICAnZ29vZ2xlJzogJ0dPT0dMRV9HRU5FUkFUSVZFX0FJX0FQSV9LRVknLFxuICAneGFpJzogJ1hBSV9BUElfS0VZJyxcbiAgJ2FtYXpvbi1iZWRyb2NrJzogJ0FXU19BQ0NFU1NfS0VZX0lEJyxcbn07XG5cbi8qKlxuICogUHJvdmlkZXIgaWQgZm9yIGEgc2VsZi1ob3N0ZWQsIE9wZW5BSS1jb21wYXRpYmxlIGVuZHBvaW50IOKAlCBhIERvY2tlciBtb2RlbCBpbWFnZVxuICogKE9sbGFtYSwgRG9ja2VyIE1vZGVsIFJ1bm5lciwgdkxMTSkgb3IgYW55IG90aGVyIHNlcnZlciB0aGF0IHNwZWFrcyB0aGUgT3BlbkFJXG4gKiBjaGF0IEFQSS4gVW5saWtlIHRoZSBmaXhlZCBwcm92aWRlcnMgYWJvdmUsIHRoaXMgb25lIGlzIE5PVCBpbiB0aGUgc3RhdGljIGNhdGFsb2c6XG4gKiBpdHMgZW5kcG9pbnQgYW5kIG1vZGVsIGxpc3QgYXJlIGRlcGxveW1lbnQtZGVmaW5lZCBhbmQgcmVzb2x2ZWQgZnJvbSBlbnYgYXRcbiAqIHJ1bnRpbWUgYnkge0BsaW5rIGdldE9wZW5BSUNvbXBhdGlibGVQcm92aWRlcn0uXG4gKi9cbmV4cG9ydCBjb25zdCBPUEVOQUlfQ09NUEFUSUJMRV9QUk9WSURFUl9JRCA9ICdvcGVuYWktY29tcGF0aWJsZSc7XG5cbi8qKlxuICogUGFyc2UgYSBgaWRbfERpc3BsYXkgTmFtZV1bLGlkMlt8TmFtZTJdXWAgZW52IHN0cmluZyBpbnRvIG1vZGVsIG1ldGFkYXRhLiBUaGVcbiAqIGlkL25hbWUgc2VwYXJhdG9yIGlzIGB8YCAoTk9UIGA6YCkgYmVjYXVzZSBtb2RlbCBpZHMgY29tbW9ubHkgY29udGFpbiBjb2xvbnMg4oCUXG4gKiBlLmcuIE9sbGFtYSB0YWdzIChgcXdlbjIuNS1jb2Rlcjo3YmApIGFuZCBCZWRyb2NrIGluZmVyZW5jZSBwcm9maWxlcy5cbiAqL1xuZnVuY3Rpb24gcGFyc2VNb2RlbExpc3QocmF3OiBzdHJpbmcpOiBBSU1vZGVsSW5mb1tdIHtcbiAgcmV0dXJuIHJhd1xuICAgIC5zcGxpdCgnLCcpXG4gICAgLm1hcCgocykgPT4gcy50cmltKCkpXG4gICAgLmZpbHRlcihCb29sZWFuKVxuICAgIC5tYXAoKGVudHJ5KSA9PiB7XG4gICAgICBjb25zdCBpZHggPSBlbnRyeS5pbmRleE9mKCd8Jyk7XG4gICAgICBjb25zdCBpZCA9IChpZHggPT09IC0xID8gZW50cnkgOiBlbnRyeS5zbGljZSgwLCBpZHgpKS50cmltKCk7XG4gICAgICBjb25zdCBuYW1lID0gKGlkeCA9PT0gLTEgPyAnJyA6IGVudHJ5LnNsaWNlKGlkeCArIDEpKS50cmltKCkgfHwgaWQ7XG4gICAgICByZXR1cm4geyBpZCwgbmFtZSB9O1xuICAgIH0pXG4gICAgLmZpbHRlcigobSkgPT4gbS5pZC5sZW5ndGggPiAwKTtcbn1cblxuLyoqXG4gKiBSZXNvbHZlIHRoZSBPcGVuQUktY29tcGF0aWJsZSAobG9jYWwgLyBzZWxmLWhvc3RlZCkgcHJvdmlkZXIgZnJvbSBlbnYsIG9yIGBudWxsYFxuICogd2hlbiBubyBlbmRwb2ludCBpcyBjb25maWd1cmVkLiBFbmFibGVkIGJ5IGBPUEVOQUlfQ09NUEFUSUJMRV9CQVNFX1VSTGA7IHRoZSBtb2RlbFxuICogbGlzdCBjb21lcyBmcm9tIGBPUEVOQUlfQ09NUEFUSUJMRV9NT0RFTFNgIChjb21tYSBsaXN0IG9mIGBpZFt8RGlzcGxheSBOYW1lXWApLFxuICogZmFsbGluZyBiYWNrIHRvIGBPUEVOQUlfQ09NUEFUSUJMRV9NT0RFTGAsIHRoZW4gYSBnZW5lcmljIGBsb2NhbGAgaWQuIFRoZSBkaXNwbGF5XG4gKiBuYW1lIGlzIG92ZXJyaWRhYmxlIHZpYSBgT1BFTkFJX0NPTVBBVElCTEVfTkFNRWAuXG4gKlxuICogQHJldHVybnMgUHJvdmlkZXIgaW5mbyBmb3IgdGhlIGNvbmZpZ3VyZWQgbG9jYWwgZW5kcG9pbnQsIG9yIG51bGwgaWYgdW5zZXRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldE9wZW5BSUNvbXBhdGlibGVQcm92aWRlcigpOiBBSVByb3ZpZGVySW5mbyB8IG51bGwge1xuICBjb25zdCBiYXNlVVJMID0gcHJvY2Vzcy5lbnYuT1BFTkFJX0NPTVBBVElCTEVfQkFTRV9VUkw7XG4gIGlmICghYmFzZVVSTCkgcmV0dXJuIG51bGw7XG4gIGNvbnN0IHJhdyA9IHByb2Nlc3MuZW52Lk9QRU5BSV9DT01QQVRJQkxFX01PREVMUyA/PyBwcm9jZXNzLmVudi5PUEVOQUlfQ09NUEFUSUJMRV9NT0RFTCA/PyAnbG9jYWx8TG9jYWwgbW9kZWwnO1xuICBjb25zdCBtb2RlbHMgPSBwYXJzZU1vZGVsTGlzdChyYXcpO1xuICByZXR1cm4ge1xuICAgIGlkOiBPUEVOQUlfQ09NUEFUSUJMRV9QUk9WSURFUl9JRCxcbiAgICBuYW1lOiBwcm9jZXNzLmVudi5PUEVOQUlfQ09NUEFUSUJMRV9OQU1FIHx8ICdMb2NhbCBtb2RlbCAoT3BlbkFJLWNvbXBhdGlibGUpJyxcbiAgICBtb2RlbHM6IG1vZGVscy5sZW5ndGggPiAwID8gbW9kZWxzIDogW3sgaWQ6ICdsb2NhbCcsIG5hbWU6ICdMb2NhbCBtb2RlbCcgfV0sXG4gIH07XG59XG5cbi8vIEhlbHBlcnNcblxuLyoqXG4gKiBHZXQgdGhlIG1vZGVsIGxpc3QgZm9yIGEgZ2l2ZW4gcHJvdmlkZXIgSUQuXG4gKlxuICogQHBhcmFtIHByb3ZpZGVySWQgLSBQcm92aWRlciBpZGVudGlmaWVyIChlLmcuIFwiYW50aHJvcGljXCIpXG4gKiBAcmV0dXJucyBBcnJheSBvZiBtb2RlbHMsIG9yIGVtcHR5IGFycmF5IGlmIHRoZSBwcm92aWRlciBpcyB1bmtub3duXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRBSVByb3ZpZGVyTW9kZWxzKHByb3ZpZGVySWQ6IHN0cmluZyk6IEFJTW9kZWxJbmZvW10ge1xuICBpZiAocHJvdmlkZXJJZCA9PT0gT1BFTkFJX0NPTVBBVElCTEVfUFJPVklERVJfSUQpIHtcbiAgICByZXR1cm4gZ2V0T3BlbkFJQ29tcGF0aWJsZVByb3ZpZGVyKCk/Lm1vZGVscyA/PyBbXTtcbiAgfVxuICByZXR1cm4gQUlfUFJPVklERVJfQ0FUQUxPR1twcm92aWRlcklkXT8ubW9kZWxzID8/IFtdO1xufVxuIl19
|
|
@@ -23,4 +23,4 @@ export const HttpStatus = {
|
|
|
23
23
|
SERVICE_UNAVAILABLE: 503,
|
|
24
24
|
GATEWAY_TIMEOUT: 504,
|
|
25
25
|
};
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC1zdGF0dXMuanMiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb25zdGFudHMvaHR0cC1zdGF0dXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0NBQStDO0FBQy9DLHNDQUFzQztBQUV0Qzs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRztJQUN4QixjQUFjO0lBQ2QsRUFBRSxFQUFFLEdBQUc7SUFDUCxPQUFPLEVBQUUsR0FBRztJQUNaLFFBQVEsRUFBRSxHQUFHO0lBQ2IsVUFBVSxFQUFFLEdBQUc7SUFFZixvQkFBb0I7SUFDcEIsV0FBVyxFQUFFLEdBQUc7SUFDaEIsWUFBWSxFQUFFLEdBQUc7SUFDakIsU0FBUyxFQUFFLEdBQUc7SUFDZCxTQUFTLEVBQUUsR0FBRztJQUNkLFFBQVEsRUFBRSxHQUFHO0lBQ2Isb0JBQW9CLEVBQUUsR0FBRztJQUN6QixpQkFBaUIsRUFBRSxHQUFHO0lBRXRCLG9CQUFvQjtJQUNwQixxQkFBcUIsRUFBRSxHQUFHO0lBQzFCLFdBQVcsRUFBRSxHQUFHO0lBQ2hCLG1CQUFtQixFQUFFLEdBQUc7SUFDeEIsZUFBZSxFQUFFLEdBQUc7Q0FDWixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IDIwMjYgUGlwZWxpbmUgQnVpbGRlciBDb250cmlidXRvcnNcbi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG5cbi8qKlxuICogSFRUUCBzdGF0dXMgY29kZXMgb3JnYW5pemVkIGJ5IGNhdGVnb3J5LlxuICovXG5leHBvcnQgY29uc3QgSHR0cFN0YXR1cyA9IHtcbiAgLy8gU3VjY2VzcyAyeHhcbiAgT0s6IDIwMCxcbiAgQ1JFQVRFRDogMjAxLFxuICBBQ0NFUFRFRDogMjAyLFxuICBOT19DT05URU5UOiAyMDQsXG5cbiAgLy8gQ2xpZW50IEVycm9ycyA0eHhcbiAgQkFEX1JFUVVFU1Q6IDQwMCxcbiAgVU5BVVRIT1JJWkVEOiA0MDEsXG4gIEZPUkJJRERFTjogNDAzLFxuICBOT1RfRk9VTkQ6IDQwNCxcbiAgQ09ORkxJQ1Q6IDQwOSxcbiAgVU5QUk9DRVNTQUJMRV9FTlRJVFk6IDQyMixcbiAgVE9PX01BTllfUkVRVUVTVFM6IDQyOSxcblxuICAvLyBTZXJ2ZXIgRXJyb3JzIDV4eFxuICBJTlRFUk5BTF9TRVJWRVJfRVJST1I6IDUwMCxcbiAgQkFEX0dBVEVXQVk6IDUwMixcbiAgU0VSVklDRV9VTkFWQUlMQUJMRTogNTAzLFxuICBHQVRFV0FZX1RJTUVPVVQ6IDUwNCxcbn0gYXMgY29uc3Q7XG4iXX0=
|
package/lib/constants/index.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
// SPDX-License-Identifier: Apache-2.0
|
|
3
3
|
export * from './ai-providers.js';
|
|
4
4
|
export * from './time.js';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb25zdGFudHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0NBQStDO0FBQy9DLHNDQUFzQztBQUV0QyxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsV0FBVyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IDIwMjYgUGlwZWxpbmUgQnVpbGRlciBDb250cmlidXRvcnNcbi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG5cbmV4cG9ydCAqIGZyb20gJy4vYWktcHJvdmlkZXJzLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vdGltZS5qcyc7XG4iXX0=
|
package/lib/constants/time.js
CHANGED
|
@@ -10,4 +10,4 @@ export const SSE_TICKET_TTL_MS = 30_000;
|
|
|
10
10
|
export const CACHE_TTL_BILLING_PLANS_SECS = 14_400;
|
|
11
11
|
/** 4 hours in milliseconds — temp directory cleanup threshold. */
|
|
12
12
|
export const TEMP_DIR_MAX_AGE_MS = 14_400_000;
|
|
13
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZS5qcyIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbnN0YW50cy90aW1lLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLCtDQUErQztBQUMvQyxzQ0FBc0M7QUFFdEM7OztHQUdHO0FBRUgsMkRBQTJEO0FBQzNELE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLE1BQU0sQ0FBQztBQUV4QyxtREFBbUQ7QUFDbkQsTUFBTSxDQUFDLE1BQU0sNEJBQTRCLEdBQUcsTUFBTSxDQUFDO0FBRW5ELGtFQUFrRTtBQUNsRSxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxVQUFVLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgMjAyNiBQaXBlbGluZSBCdWlsZGVyIENvbnRyaWJ1dG9yc1xuLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjBcblxuLyoqXG4gKiBOYW1lZCB0aW1lIGNvbnN0YW50cyB0byBwcmV2ZW50IG1hZ2ljLW51bWJlciBjb25mdXNpb24uXG4gKiBBbGwgdmFsdWVzIGluY2x1ZGUgdGhlaXIgdW5pdCBpbiB0aGUgbmFtZSB0byBhdm9pZCBtcy9zIGFtYmlndWl0eS5cbiAqL1xuXG4vKiogMzAgc2Vjb25kcyBpbiBtaWxsaXNlY29uZHMg4oCUIGRlZmF1bHQgU1NFIHRpY2tldCBUVEwuICovXG5leHBvcnQgY29uc3QgU1NFX1RJQ0tFVF9UVExfTVMgPSAzMF8wMDA7XG5cbi8qKiA0IGhvdXJzIGluIHNlY29uZHMg4oCUIGJpbGxpbmcgcGxhbiBjYWNoZSBUVEwuICovXG5leHBvcnQgY29uc3QgQ0FDSEVfVFRMX0JJTExJTkdfUExBTlNfU0VDUyA9IDE0XzQwMDtcblxuLyoqIDQgaG91cnMgaW4gbWlsbGlzZWNvbmRzIOKAlCB0ZW1wIGRpcmVjdG9yeSBjbGVhbnVwIHRocmVzaG9sZC4gKi9cbmV4cG9ydCBjb25zdCBURU1QX0RJUl9NQVhfQUdFX01TID0gMTRfNDAwXzAwMDtcbiJdfQ==
|
package/lib/errors/app-errors.js
CHANGED
|
@@ -70,4 +70,4 @@ export class AIConfigurationError extends AppError {
|
|
|
70
70
|
this.name = 'AIConfigurationError';
|
|
71
71
|
}
|
|
72
72
|
}
|
|
73
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
73
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLWVycm9ycy5qcyIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Vycm9ycy9hcHAtZXJyb3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLCtDQUErQztBQUMvQyxzQ0FBc0M7QUFFdEMsT0FBTyxFQUFFLFNBQVMsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRTNFOzs7R0FHRztBQUNILE1BQU0sT0FBTyxRQUFTLFNBQVEsS0FBSztJQUVmLFVBQVU7SUFDVixJQUFJO0lBR0osT0FBTztJQUx6QixZQUNrQixVQUFrQixFQUNsQixJQUFlLEVBQy9CLE9BQWU7SUFDZixnRkFBZ0Y7SUFDaEUsT0FBaUM7UUFFakQsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDOzBCQU5DLFVBQVU7b0JBQ1YsSUFBSTt1QkFHSixPQUFPO1FBR3ZCLElBQUksQ0FBQyxJQUFJLEdBQUcsVUFBVSxDQUFDO0lBQ3pCLENBQUM7Q0FDRjtBQUVELGdDQUFnQztBQUNoQyxNQUFNLE9BQU8sYUFBYyxTQUFRLFFBQVE7SUFDekMsWUFBWSxPQUFlO1FBQ3pCLEtBQUssQ0FBQyxxQkFBcUIsQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLEVBQUUsU0FBUyxDQUFDLFNBQVMsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUNoRixJQUFJLENBQUMsSUFBSSxHQUFHLGVBQWUsQ0FBQztJQUM5QixDQUFDO0NBQ0Y7QUFFRCxzQ0FBc0M7QUFDdEMsTUFBTSxPQUFPLGNBQWUsU0FBUSxRQUFRO0lBQzFDLFlBQVksT0FBZTtRQUN6QixLQUFLLENBQUMscUJBQXFCLENBQUMsU0FBUyxDQUFDLHdCQUF3QixDQUFDLEVBQUUsU0FBUyxDQUFDLHdCQUF3QixFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQzlHLElBQUksQ0FBQyxJQUFJLEdBQUcsZ0JBQWdCLENBQUM7SUFDL0IsQ0FBQztDQUNGO0FBRUQsc0NBQXNDO0FBQ3RDLE1BQU0sT0FBTyxlQUFnQixTQUFRLFFBQVE7SUFDM0MsWUFBWSxPQUFlO1FBQ3pCLEtBQUssQ0FBQyxxQkFBcUIsQ0FBQyxTQUFTLENBQUMsZ0JBQWdCLENBQUMsRUFBRSxTQUFTLENBQUMsZ0JBQWdCLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDOUYsSUFBSSxDQUFDLElBQUksR0FBRyxpQkFBaUIsQ0FBQztJQUNoQyxDQUFDO0NBQ0Y7QUFFRDs7O29FQUdvRTtBQUNwRSxNQUFNLE9BQU8sYUFBYyxTQUFRLFFBQVE7SUFDekMsWUFBWSxPQUFlLEVBQUUsSUFBSSxHQUFjLFNBQVMsQ0FBQyxRQUFRLEVBQUUsT0FBaUM7UUFDbEcsS0FBSyxDQUFDLHFCQUFxQixDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ3pFLElBQUksQ0FBQyxJQUFJLEdBQUcsZUFBZSxDQUFDO0lBQzlCLENBQUM7Q0FDRjtBQUVELHdFQUF3RTtBQUN4RSxNQUFNLE9BQU8sZUFBZ0IsU0FBUSxRQUFRO0lBQzNDLFlBQVksT0FBTyxHQUFHLG9IQUFvSDtRQUN4SSxLQUFLLENBQUMscUJBQXFCLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxXQUFXLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDcEYsSUFBSSxDQUFDLElBQUksR0FBRyxpQkFBaUIsQ0FBQztJQUNoQyxDQUFDO0NBQ0Y7QUFFRDs7Ozs7O0dBTUc7QUFDSCxNQUFNLE9BQU8sb0JBQXFCLFNBQVEsUUFBUTtJQUNoRCxZQUFZLE9BQWUsRUFBRSxVQUFVLEdBQUcsR0FBRyxFQUFFLElBQUksR0FBYyxTQUFTLENBQUMsbUJBQW1CO1FBQzVGLEtBQUssQ0FBQyxVQUFVLEVBQUUsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ2pDLElBQUksQ0FBQyxJQUFJLEdBQUcsc0JBQXNCLENBQUM7SUFDckMsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IDIwMjYgUGlwZWxpbmUgQnVpbGRlciBDb250cmlidXRvcnNcbi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG5cbmltcG9ydCB7IEVycm9yQ29kZSwgZ2V0U3RhdHVzRm9yRXJyb3JDb2RlIH0gZnJvbSAnLi4vdHlwZXMvZXJyb3ItY29kZXMuanMnO1xuXG4vKipcbiAqIEJhc2UgYXBwbGljYXRpb24gZXJyb3Igd2l0aCBIVFRQIHN0YXR1cyBjb2RlIGFuZCBlcnJvciBjb2RlLlxuICogRXh0ZW5kIHRoaXMgZm9yIGRvbWFpbi1zcGVjaWZpYyBlcnJvciB0eXBlcy5cbiAqL1xuZXhwb3J0IGNsYXNzIEFwcEVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcmVhZG9ubHkgc3RhdHVzQ29kZTogbnVtYmVyLFxuICAgIHB1YmxpYyByZWFkb25seSBjb2RlOiBFcnJvckNvZGUsXG4gICAgbWVzc2FnZTogc3RyaW5nLFxuICAgIC8qKiBTdHJ1Y3R1cmVkIGNvbnRleHQgc2VudCB3aXRoIHRoZSBlcnJvciByZXNwb25zZSAoZS5nLiB0aGUgZmFpbGluZyBnYXRlcykuICovXG4gICAgcHVibGljIHJlYWRvbmx5IGRldGFpbHM/OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPixcbiAgKSB7XG4gICAgc3VwZXIobWVzc2FnZSk7XG4gICAgdGhpcy5uYW1lID0gJ0FwcEVycm9yJztcbiAgfVxufVxuXG4vKiogNDA0IOKAlCBSZXNvdXJjZSBub3QgZm91bmQuICovXG5leHBvcnQgY2xhc3MgTm90Rm91bmRFcnJvciBleHRlbmRzIEFwcEVycm9yIHtcbiAgY29uc3RydWN0b3IobWVzc2FnZTogc3RyaW5nKSB7XG4gICAgc3VwZXIoZ2V0U3RhdHVzRm9yRXJyb3JDb2RlKEVycm9yQ29kZS5OT1RfRk9VTkQpLCBFcnJvckNvZGUuTk9UX0ZPVU5ELCBtZXNzYWdlKTtcbiAgICB0aGlzLm5hbWUgPSAnTm90Rm91bmRFcnJvcic7XG4gIH1cbn1cblxuLyoqIDQwMyDigJQgSW5zdWZmaWNpZW50IHBlcm1pc3Npb25zLiAqL1xuZXhwb3J0IGNsYXNzIEZvcmJpZGRlbkVycm9yIGV4dGVuZHMgQXBwRXJyb3Ige1xuICBjb25zdHJ1Y3RvcihtZXNzYWdlOiBzdHJpbmcpIHtcbiAgICBzdXBlcihnZXRTdGF0dXNGb3JFcnJvckNvZGUoRXJyb3JDb2RlLklOU1VGRklDSUVOVF9QRVJNSVNTSU9OUyksIEVycm9yQ29kZS5JTlNVRkZJQ0lFTlRfUEVSTUlTU0lPTlMsIG1lc3NhZ2UpO1xuICAgIHRoaXMubmFtZSA9ICdGb3JiaWRkZW5FcnJvcic7XG4gIH1cbn1cblxuLyoqIDQwMCDigJQgVmFsaWRhdGlvbiAvIGJhZCByZXF1ZXN0LiAqL1xuZXhwb3J0IGNsYXNzIFZhbGlkYXRpb25FcnJvciBleHRlbmRzIEFwcEVycm9yIHtcbiAgY29uc3RydWN0b3IobWVzc2FnZTogc3RyaW5nKSB7XG4gICAgc3VwZXIoZ2V0U3RhdHVzRm9yRXJyb3JDb2RlKEVycm9yQ29kZS5WQUxJREFUSU9OX0VSUk9SKSwgRXJyb3JDb2RlLlZBTElEQVRJT05fRVJST1IsIG1lc3NhZ2UpO1xuICAgIHRoaXMubmFtZSA9ICdWYWxpZGF0aW9uRXJyb3InO1xuICB9XG59XG5cbi8qKiA0MDkg4oCUIENvbmZsaWN0IC8gZHVwbGljYXRlLiBgY29kZWAgbmFycm93cyB0aGUgY29uZmxpY3QgZm9yIGNsaWVudHNcbiAqICAoZS5nLiBgUExVR0lOX1ZFUlNJT05fRlJPWkVOYCk7IGl0IG11c3QgYmUgYSA0MDktbWFwcGVkIGNvZGUuIGBkZXRhaWxzYFxuICogIGNhcnJpZXMgd2hhdCB0aGUgY2xpZW50IG5lZWRzIHRvIHJlc29sdmUgaXQg4oCUIGZvciBhIHRha2VuIHBpcGVsaW5lIHNsb3QsXG4gKiAgdGhlIE5PUk1BTElaRUQgbmFtZXMgdGhhdCBjb2xsaWRlZCBhbmQgdGhlIGlkIHRvIFBVVCBpbnN0ZWFkLiAqL1xuZXhwb3J0IGNsYXNzIENvbmZsaWN0RXJyb3IgZXh0ZW5kcyBBcHBFcnJvciB7XG4gIGNvbnN0cnVjdG9yKG1lc3NhZ2U6IHN0cmluZywgY29kZTogRXJyb3JDb2RlID0gRXJyb3JDb2RlLkNPTkZMSUNULCBkZXRhaWxzPzogUmVjb3JkPHN0cmluZywgdW5rbm93bj4pIHtcbiAgICBzdXBlcihnZXRTdGF0dXNGb3JFcnJvckNvZGUoRXJyb3JDb2RlLkNPTkZMSUNUKSwgY29kZSwgbWVzc2FnZSwgZGV0YWlscyk7XG4gICAgdGhpcy5uYW1lID0gJ0NvbmZsaWN0RXJyb3InO1xuICB9XG59XG5cbi8qKiA0MDMg4oCUIHRoZSBvcmdhbml6YXRpb24ncyBhZG1pbmlzdHJhdG9ycyBzd2l0Y2hlZCBBSSBmZWF0dXJlcyBvZmYuICovXG5leHBvcnQgY2xhc3MgQUlEaXNhYmxlZEVycm9yIGV4dGVuZHMgQXBwRXJyb3Ige1xuICBjb25zdHJ1Y3RvcihtZXNzYWdlID0gJ0FJIGZlYXR1cmVzIGFyZSB0dXJuZWQgb2ZmIGZvciB0aGlzIG9yZ2FuaXphdGlvbi4gQW4gb3JnYW5pemF0aW9uIGFkbWluaXN0cmF0b3IgY2FuIHR1cm4gdGhlbSBiYWNrIG9uIGluIFNldHRpbmdzLicpIHtcbiAgICBzdXBlcihnZXRTdGF0dXNGb3JFcnJvckNvZGUoRXJyb3JDb2RlLkFJX0RJU0FCTEVEKSwgRXJyb3JDb2RlLkFJX0RJU0FCTEVELCBtZXNzYWdlKTtcbiAgICB0aGlzLm5hbWUgPSAnQUlEaXNhYmxlZEVycm9yJztcbiAgfVxufVxuXG4vKipcbiAqIEFuIEFJIHJlcXVlc3QgY291bGQgbm90IGJlIHNlcnZlZCBBUyBBU0tFRCDigJQgdGhlIG9yZydzIG93biBwcm92aWRlciBrZXkgY291bGQgbm90XG4gKiBiZSBsb2FkZWQsIGEgYnJpbmcteW91ci1vd24ga2V5IG5hbWVkIGEga2V5bGVzcyBwcm92aWRlciwgbm90aGluZyBpcyBjb25maWd1cmVkLlxuICogVGhlIG1lc3NhZ2UgaXMgd3JpdHRlbiBieSB1cyBhbmQgbmFtZXMgY29uZmlndXJhdGlvbiwgbmV2ZXIgYSBzZWNyZXQsIHNvIGl0IGlzXG4gKiBzYWZlIHRvIHNob3c7IGBoYW5kbGVBSUVycm9yYCBzdXJmYWNlcyBpdCB2ZXJiYXRpbSB3aXRoIHRoaXMgc3RhdHVzLiBUaHJvd25cbiAqIElOU1RFQUQgb2Ygc2lsZW50bHkgc2VydmluZyB0aGUgcmVxdWVzdCBvbiB0aGUgcGxhdGZvcm0ncyBrZXkuXG4gKi9cbmV4cG9ydCBjbGFzcyBBSUNvbmZpZ3VyYXRpb25FcnJvciBleHRlbmRzIEFwcEVycm9yIHtcbiAgY29uc3RydWN0b3IobWVzc2FnZTogc3RyaW5nLCBzdGF0dXNDb2RlID0gNTAzLCBjb2RlOiBFcnJvckNvZGUgPSBFcnJvckNvZGUuU0VSVklDRV9VTkFWQUlMQUJMRSkge1xuICAgIHN1cGVyKHN0YXR1c0NvZGUsIGNvZGUsIG1lc3NhZ2UpO1xuICAgIHRoaXMubmFtZSA9ICdBSUNvbmZpZ3VyYXRpb25FcnJvcic7XG4gIH1cbn1cbiJdfQ==
|
package/lib/errors/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
// Copyright 2026 Pipeline Builder Contributors
|
|
2
2
|
// SPDX-License-Identifier: Apache-2.0
|
|
3
3
|
export * from './app-errors.js';
|
|
4
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lcnJvcnMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0NBQStDO0FBQy9DLHNDQUFzQztBQUV0QyxjQUFjLGlCQUFpQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IDIwMjYgUGlwZWxpbmUgQnVpbGRlciBDb250cmlidXRvcnNcbi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG5cbmV4cG9ydCAqIGZyb20gJy4vYXBwLWVycm9ycy5qcyc7XG4iXX0=
|
|
@@ -51,6 +51,25 @@ export interface WriteAccess {
|
|
|
51
51
|
export declare function requireVisibilityWriteAccess(req: Request, res: Response, resource: VisibilityWriteTarget, userId: string, publishPermission: Permission): boolean;
|
|
52
52
|
/** Why a write was refused, or `'ok'`. See {@link checkVisibilityWriteAccess}. */
|
|
53
53
|
export type VisibilityWriteVerdict = 'ok' | 'needs-publish' | 'not-author';
|
|
54
|
+
/** A refusal — every verdict except the one that proceeds. */
|
|
55
|
+
export type VisibilityWriteRefusal = Exclude<VisibilityWriteVerdict, 'ok'>;
|
|
56
|
+
/**
|
|
57
|
+
* Why each refusal happened, in the caller's words. KEYED, which is the point.
|
|
58
|
+
*
|
|
59
|
+
* Three places turn a verdict into a message, and none of them used to be
|
|
60
|
+
* exhaustive: the two services ended their switch on a bare `case 'ok':` that
|
|
61
|
+
* fell out of the block, so a FOURTH refusal verdict would have let the write
|
|
62
|
+
* THROUGH, and the helper below used a ternary, so a fourth would have been
|
|
63
|
+
* reported as `not-author` — wrong, though at least still refused.
|
|
64
|
+
*
|
|
65
|
+
* A `Record` over `Exclude<…, 'ok'>` makes adding a verdict a COMPILE error in
|
|
66
|
+
* every consumer until each says what it means, and it removes the copy: this
|
|
67
|
+
* public-resource sentence previously existed three times, in three packages.
|
|
68
|
+
*
|
|
69
|
+
* The messages name the RUNG, not the permission, because the caller cannot act
|
|
70
|
+
* on a permission id and the rung is what they would have to change.
|
|
71
|
+
*/
|
|
72
|
+
export declare const VISIBILITY_WRITE_REFUSAL: Readonly<Record<VisibilityWriteRefusal, string>>;
|
|
54
73
|
/**
|
|
55
74
|
* The visibility write rule as a PREDICATE, with no response side-effect.
|
|
56
75
|
*
|
|
@@ -33,11 +33,31 @@ export function requireVisibilityWriteAccess(req, res, resource, userId, publish
|
|
|
33
33
|
const verdict = checkVisibilityWriteAccess(req, resource, userId, publishPermission);
|
|
34
34
|
if (verdict === 'ok')
|
|
35
35
|
return true;
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
36
|
+
// Keyed, not a ternary: a verdict added to the union has no entry here until
|
|
37
|
+
// someone writes one, which is a build failure rather than a wrong message.
|
|
38
|
+
sendError(res, 403, VISIBILITY_WRITE_REFUSAL[verdict], ErrorCode.INSUFFICIENT_PERMISSIONS);
|
|
39
39
|
return false;
|
|
40
40
|
}
|
|
41
|
+
/**
|
|
42
|
+
* Why each refusal happened, in the caller's words. KEYED, which is the point.
|
|
43
|
+
*
|
|
44
|
+
* Three places turn a verdict into a message, and none of them used to be
|
|
45
|
+
* exhaustive: the two services ended their switch on a bare `case 'ok':` that
|
|
46
|
+
* fell out of the block, so a FOURTH refusal verdict would have let the write
|
|
47
|
+
* THROUGH, and the helper below used a ternary, so a fourth would have been
|
|
48
|
+
* reported as `not-author` — wrong, though at least still refused.
|
|
49
|
+
*
|
|
50
|
+
* A `Record` over `Exclude<…, 'ok'>` makes adding a verdict a COMPILE error in
|
|
51
|
+
* every consumer until each says what it means, and it removes the copy: this
|
|
52
|
+
* public-resource sentence previously existed three times, in three packages.
|
|
53
|
+
*
|
|
54
|
+
* The messages name the RUNG, not the permission, because the caller cannot act
|
|
55
|
+
* on a permission id and the rung is what they would have to change.
|
|
56
|
+
*/
|
|
57
|
+
export const VISIBILITY_WRITE_REFUSAL = {
|
|
58
|
+
'needs-publish': 'You lack permission to modify this public resource.',
|
|
59
|
+
'not-author': 'Only the author can modify a private resource.',
|
|
60
|
+
};
|
|
41
61
|
/**
|
|
42
62
|
* The visibility write rule as a PREDICATE, with no response side-effect.
|
|
43
63
|
*
|
|
@@ -138,4 +158,4 @@ export function resolveVisibility(req, requested, publishPermission, fallback =
|
|
|
138
158
|
return 'private';
|
|
139
159
|
return fallback;
|
|
140
160
|
}
|
|
141
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjZXNzLWhlbHBlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaGVscGVycy9hY2Nlc3MtaGVscGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwrQ0FBK0M7QUFDL0Msc0NBQXNDO0FBR3RDLE9BQU8sRUFBRSxhQUFhLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNyRixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFHcEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBeUJqRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXlCRztBQUNILE1BQU0sVUFBVSw0QkFBNEIsQ0FDMUMsR0FBWSxFQUNaLEdBQWEsRUFDYixRQUErQixFQUMvQixNQUFjLEVBQ2QsaUJBQTZCO0lBRTdCLE1BQU0sT0FBTyxHQUFHLDBCQUEwQixDQUFDLEdBQUcsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLGlCQUFpQixDQUFDLENBQUM7SUFDckYsSUFBSSxPQUFPLEtBQUssSUFBSTtRQUFFLE9BQU8sSUFBSSxDQUFDO0lBQ2xDLFNBQVMsQ0FDUCxHQUFHLEVBQ0gsR0FBRyxFQUNILE9BQU8sS0FBSyxlQUFlO1FBQ3pCLENBQUMsQ0FBQyxxREFBcUQ7UUFDdkQsQ0FBQyxDQUFDLGdEQUFnRCxFQUNwRCxTQUFTLENBQUMsd0JBQXdCLENBQ25DLENBQUM7SUFDRixPQUFPLEtBQUssQ0FBQztBQUNmLENBQUM7QUFLRDs7Ozs7Ozs7OztHQVVHO0FBQ0gsTUFBTSxVQUFVLDBCQUEwQixDQUN4QyxHQUFZLEVBQ1osUUFBK0IsRUFDL0IsTUFBYyxFQUNkLGlCQUE2QjtJQUU3QixPQUFPLGdCQUFnQixDQUFDLFFBQVEsRUFBRSxNQUFNLEVBQUU7UUFDeEMsYUFBYSxFQUFFLGFBQWEsQ0FBQyxHQUFHLENBQUM7UUFDakMsVUFBVSxFQUFFLGlCQUFpQixDQUFDLEdBQUcsRUFBRSxpQkFBaUIsQ0FBQztLQUN0RCxDQUFDLENBQUM7QUFDTCxDQUFDO0FBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7R0FnQkc7QUFDSCxNQUFNLFVBQVUsZ0JBQWdCLENBQzlCLFFBQStCLEVBQy9CLE1BQWMsRUFDZCxNQUFtQjtJQUVuQixJQUFJLE1BQU0sQ0FBQyxhQUFhO1FBQUUsT0FBTyxJQUFJLENBQUM7SUFFdEMsSUFBSSxRQUFRLENBQUMsVUFBVSxLQUFLLFFBQVEsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUMzRCxPQUFPLGVBQWUsQ0FBQztJQUN6QixDQUFDO0lBRUQsK0VBQStFO0lBQy9FLDJEQUEyRDtJQUMzRCxJQUFJLFFBQVEsQ0FBQyxVQUFVLEtBQUssU0FBUyxJQUFJLENBQUMsQ0FBQyxNQUFNLElBQUksUUFBUSxDQUFDLFNBQVMsS0FBSyxNQUFNLENBQUMsRUFBRSxDQUFDO1FBQ3BGLE9BQU8sWUFBWSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxPQUFPLElBQUksQ0FBQztBQUNkLENBQUM7QUFPRDs7Ozs7Ozs7OztHQVVHO0FBQ0gsTUFBTSxVQUFVLHVCQUF1QixDQUNyQyxHQUFZLEVBQ1osR0FBYSxFQUNiLElBQTZCLEVBQzdCLE1BQWMsRUFDZCxpQkFBNkIsRUFDN0IsT0FBZTtJQUVmLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLDBCQUEwQixDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsTUFBTSxFQUFFLGlCQUFpQixDQUFDLEtBQUssSUFBSSxDQUFDLENBQUM7SUFDakgsSUFBSSxTQUFTLENBQUMsTUFBTSxLQUFLLENBQUM7UUFBRSxPQUFPLEtBQUssQ0FBQztJQUN6QyxTQUFTLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxPQUFPLEVBQUUsU0FBUyxDQUFDLHdCQUF3QixFQUFFLEVBQUUsR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDMUcsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDO0FBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXdCRztBQUNILE1BQU0sVUFBVSxpQkFBaUIsQ0FDL0IsR0FBWSxFQUNaLFNBQTZCLEVBQzdCLGlCQUE2QixFQUM3QixRQUFRLEdBQWUsU0FBUztJQUVoQyxJQUFJLFNBQVMsS0FBSyxRQUFRLEVBQUUsQ0FBQztRQUMzQixPQUFPLGlCQUFpQixDQUFDLEdBQUcsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztJQUN0RSxDQUFDO0lBQ0QsSUFBSSxTQUFTLEtBQUssS0FBSztRQUFFLE9BQU8sS0FBSyxDQUFDO0lBQ3RDLElBQUksU0FBUyxLQUFLLFNBQVM7UUFBRSxPQUFPLFNBQVMsQ0FBQztJQUM5QyxPQUFPLFFBQVEsQ0FBQztBQUNsQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IDIwMjYgUGlwZWxpbmUgQnVpbGRlciBDb250cmlidXRvcnNcbi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG5cbmltcG9ydCB0eXBlIHsgUmVxdWVzdCwgUmVzcG9uc2UgfSBmcm9tICdleHByZXNzJztcbmltcG9ydCB7IGlzU3lzdGVtQWRtaW4sIHVzZXJIYXNQZXJtaXNzaW9uIH0gZnJvbSAnLi4vbWlkZGxld2FyZS9wZXJtaXNzaW9uLWdhdGVzLmpzJztcbmltcG9ydCB7IEVycm9yQ29kZSB9IGZyb20gJy4uL3R5cGVzL2Vycm9yLWNvZGVzLmpzJztcbmltcG9ydCB0eXBlIHsgUGVybWlzc2lvbiB9IGZyb20gJy4uL3R5cGVzL3Blcm1pc3Npb25zLmpzJztcbmltcG9ydCB0eXBlIHsgVmlzaWJpbGl0eSB9IGZyb20gJy4uL3R5cGVzL3Zpc2liaWxpdHkuanMnO1xuaW1wb3J0IHsgc2VuZEVycm9yIH0gZnJvbSAnLi4vdXRpbHMvcmVzcG9uc2UuanMnO1xuXG4vKiogVGhlIHNsaWNlIG9mIGEgY2F0YWxvZyBlbnRpdHkgdGhlIHdyaXRlIGdhdGUgbmVlZHMuICovXG5leHBvcnQgaW50ZXJmYWNlIFZpc2liaWxpdHlXcml0ZVRhcmdldCB7XG4gIC8qKiBSdW5nIHRoZSByb3cgY3VycmVudGx5IHNpdHMgYXQg4oCUIHNlZSB7QGxpbmsgVmlzaWJpbGl0eX0uICovXG4gIHZpc2liaWxpdHk/OiBzdHJpbmcgfCBudWxsO1xuICAvKiogQXV0aG9yLiBUaGUgb25seSBub24tYWRtaW4gd2hvIG1heSB0b3VjaCBhIGBwcml2YXRlYCByb3cuICovXG4gIGNyZWF0ZWRCeT86IHN0cmluZyB8IG51bGw7XG59XG5cbi8qKlxuICogVGhlIGNhbGxlcidzIGF1dGhvcml0eSBvbiB0aGUgdmlzaWJpbGl0eSBsYWRkZXIsIGFzIFBMQUlOIERBVEEuXG4gKlxuICogQ2FwdHVyZWQgZnJvbSB0aGUgcmVxdWVzdCAoYGlzU3lzdGVtQWRtaW4ocmVxKWAsXG4gKiBgdXNlckhhc1Blcm1pc3Npb24ocmVxLCAnPGVudGl0eT46cHVibGlzaCcpYCkgYXQgdGhlIGVkZ2UsIHNvIHRoZSBzYW1lIGdhdGVcbiAqIGNhbiBydW4gd2hlcmUgbm8gYFJlcXVlc3RgIGV4aXN0cyDigJQgYSBwbHVnaW4gZGVwbG95IHBlcmZvcm1lZCBieSBhIEJ1bGxNUVxuICogd29ya2VyLCBvciBgQ3J1ZFNlcnZpY2UuYnVsa0RlbGV0ZWAgZG93biBpbiB0aGUgZGF0YSBsYXllci4gVGhhdCBpcyB0aGUgd2hvbGVcbiAqIHJlYXNvbiB7QGxpbmsgY2hlY2tXcml0ZUFjY2Vzc30gYW5kIHtAbGluayBjaGVja1Zpc2liaWxpdHlXcml0ZUFjY2Vzc30gYXJlIHR3b1xuICogZnVuY3Rpb25zOiBvbmUgcnVsZSwgdHdvIHdheXMgb2YgbmFtaW5nIHRoZSBjYWxsZXIuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgV3JpdGVBY2Nlc3Mge1xuICBpc1N5c3RlbUFkbWluOiBib29sZWFuO1xuICBjYW5QdWJsaXNoOiBib29sZWFuO1xufVxuXG4vKipcbiAqIENoZWNrIHdoZXRoZXIgdGhlIGNhbGxlciBtYXkgbW9kaWZ5IGEgY2F0YWxvZyBlbnRpdHksIHBlciBpdHMgdmlzaWJpbGl0eSBydW5nLlxuICogVGhlIHNpbmdsZSB3cml0ZSBnYXRlIGJlaGluZCBldmVyeSBwaXBlbGluZSAvIHBsdWdpbiAvIHRlbXBsYXRlIG11dGF0aW9uLlxuICpcbiAqIC0gYHB1YmxpY2Ag4oCUIGEgc3lzdGVtIGFkbWluLCBvciB0aGUgaG9sZGVyIG9mIGBwdWJsaXNoUGVybWlzc2lvbmAgKHRoZSBzYW1lXG4gKiAgIHBlcm1pc3Npb24gdGhhdCBsZXQgdGhlbSBwdWJsaXNoIGl0IGluIHRoZSBmaXJzdCBwbGFjZSwgc28gd2hvZXZlciBjYW5cbiAqICAgcHVibGlzaCBjYW4gYWxzbyBtYW5hZ2Ugd2hhdCB0aGV5IHB1Ymxpc2hlZClcbiAqIC0gYG9yZ2Ag4oCUIGFueW9uZSB3aG8gZ290IHRoaXMgZmFyOiB0aGUgcmVzb3VyY2UncyBgOndyaXRlYCBwZXJtaXNzaW9uIHBsdXMgdGhlXG4gKiAgIG9yZyBzY29waW5nIHRoZSBjYWxsZXIgYWxyZWFkeSBwYXNzZWQgSVMgdGhlIGdhdGVcbiAqIC0gYHByaXZhdGVgIOKAlCB0aGUgQVVUSE9SIGFsb25lIChwbHVzIHN5c3RlbSBhZG1pbnMpXG4gKlxuICogVGhlIGBwcml2YXRlYCBicmFuY2ggaXMgbG9hZC1iZWFyaW5nIG9uIHRoZSBUT01CU1RPTkUgcGF0aHMgKHJlc3RvcmUgLyBwdXJnZSksXG4gKiB3aGljaCBhcmUgb3JnLXNjb3BlZCByYXRoZXIgdGhhbiB2aXNpYmlsaXR5LXNjb3BlZCBiZWNhdXNlIHNvZnQtZGVsZXRlIGlzIG9uZVxuICogc2hhcmVkIGNvZGUgcGF0aCDigJQgd2l0aG91dCBpdCwgYW55IG9yZyBtZW1iZXIgY291bGQgcmVzdXJyZWN0IHNvbWVvbmUgZWxzZSdzXG4gKiBwZXJzb25hbCBkcmFmdC4gT24gdGhlIGxpdmUgcGF0aHMgdGhlIHJlYWQgcHJlZGljYXRlIGhhcyBhbHJlYWR5IGhpZGRlbiB0aGVcbiAqIHJvdywgbWFraW5nIHRoaXMgZGVmZW5zZSBpbiBkZXB0aC5cbiAqXG4gKiBSZXR1cm5zIGB0cnVlYCBpZiB0aGUgcmVxdWVzdCBtYXkgcHJvY2VlZDsgcmV0dXJucyBgZmFsc2VgIGhhdmluZyBBTFJFQURZIHNlbnRcbiAqIGEgNDAzLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBpZiAoIXJlcXVpcmVWaXNpYmlsaXR5V3JpdGVBY2Nlc3MocmVxLCByZXMsIHBpcGVsaW5lLCB1c2VySWQsICdwaXBlbGluZXM6cHVibGlzaCcpKSByZXR1cm47XG4gKiBhd2FpdCBwaXBlbGluZVNlcnZpY2UuZGVsZXRlKGlkLCBvcmdJZCwgdXNlcklkKTtcbiAqIGBgYFxuICovXG5leHBvcnQgZnVuY3Rpb24gcmVxdWlyZVZpc2liaWxpdHlXcml0ZUFjY2VzcyhcbiAgcmVxOiBSZXF1ZXN0LFxuICByZXM6IFJlc3BvbnNlLFxuICByZXNvdXJjZTogVmlzaWJpbGl0eVdyaXRlVGFyZ2V0LFxuICB1c2VySWQ6IHN0cmluZyxcbiAgcHVibGlzaFBlcm1pc3Npb246IFBlcm1pc3Npb24sXG4pOiBib29sZWFuIHtcbiAgY29uc3QgdmVyZGljdCA9IGNoZWNrVmlzaWJpbGl0eVdyaXRlQWNjZXNzKHJlcSwgcmVzb3VyY2UsIHVzZXJJZCwgcHVibGlzaFBlcm1pc3Npb24pO1xuICBpZiAodmVyZGljdCA9PT0gJ29rJykgcmV0dXJuIHRydWU7XG4gIHNlbmRFcnJvcihcbiAgICByZXMsXG4gICAgNDAzLFxuICAgIHZlcmRpY3QgPT09ICduZWVkcy1wdWJsaXNoJ1xuICAgICAgPyAnWW91IGxhY2sgcGVybWlzc2lvbiB0byBtb2RpZnkgdGhpcyBwdWJsaWMgcmVzb3VyY2UuJ1xuICAgICAgOiAnT25seSB0aGUgYXV0aG9yIGNhbiBtb2RpZnkgYSBwcml2YXRlIHJlc291cmNlLicsXG4gICAgRXJyb3JDb2RlLklOU1VGRklDSUVOVF9QRVJNSVNTSU9OUyxcbiAgKTtcbiAgcmV0dXJuIGZhbHNlO1xufVxuXG4vKiogV2h5IGEgd3JpdGUgd2FzIHJlZnVzZWQsIG9yIGAnb2snYC4gU2VlIHtAbGluayBjaGVja1Zpc2liaWxpdHlXcml0ZUFjY2Vzc30uICovXG5leHBvcnQgdHlwZSBWaXNpYmlsaXR5V3JpdGVWZXJkaWN0ID0gJ29rJyB8ICduZWVkcy1wdWJsaXNoJyB8ICdub3QtYXV0aG9yJztcblxuLyoqXG4gKiBUaGUgdmlzaWJpbGl0eSB3cml0ZSBydWxlIGFzIGEgUFJFRElDQVRFLCB3aXRoIG5vIHJlc3BvbnNlIHNpZGUtZWZmZWN0LlxuICpcbiAqIEV4dHJhY3RlZCBzbyBCVUxLIHJvdXRlcyBhcHBseSB0aGUgaWRlbnRpY2FsIHJ1bGUgcGVyIHJvdyBpbnN0ZWFkIG9mXG4gKiByZS1kZXJpdmluZyBpdCDigJQgYSBidWxrIHJ1bGUgdGhhdCBkaXNhZ3JlZWQgd291bGQgNDAzIGNhc2VzIHNpbmdsZS1yb3dcbiAqIGRlbGV0ZS91cGRhdGUgYWxsb3cgKGFuIGBvcmdgIHJvdyB3aXRoIHBsYWluIGA6d3JpdGVgLCB0aGUgZGVmYXVsdCBydW5nKS5cbiAqXG4gKiAgIC0gYHByaXZhdGVgIOKGkiBhdXRob3Igb25seVxuICogICAtIGBvcmdgICAgICDihpIgYW55IG1lbWJlciBvZiB0aGUgb3JnXG4gKiAgIC0gYHB1YmxpY2AgIOKGkiByZXF1aXJlcyBgcHVibGlzaFBlcm1pc3Npb25gXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjaGVja1Zpc2liaWxpdHlXcml0ZUFjY2VzcyhcbiAgcmVxOiBSZXF1ZXN0LFxuICByZXNvdXJjZTogVmlzaWJpbGl0eVdyaXRlVGFyZ2V0LFxuICB1c2VySWQ6IHN0cmluZyxcbiAgcHVibGlzaFBlcm1pc3Npb246IFBlcm1pc3Npb24sXG4pOiBWaXNpYmlsaXR5V3JpdGVWZXJkaWN0IHtcbiAgcmV0dXJuIGNoZWNrV3JpdGVBY2Nlc3MocmVzb3VyY2UsIHVzZXJJZCwge1xuICAgIGlzU3lzdGVtQWRtaW46IGlzU3lzdGVtQWRtaW4ocmVxKSxcbiAgICBjYW5QdWJsaXNoOiB1c2VySGFzUGVybWlzc2lvbihyZXEsIHB1Ymxpc2hQZXJtaXNzaW9uKSxcbiAgfSk7XG59XG5cbi8qKlxuICogVGhlIHZpc2liaWxpdHkgd3JpdGUgcnVsZSBpdHNlbGYsIG92ZXIgYSByZXF1ZXN0LWZyZWUge0BsaW5rIFdyaXRlQWNjZXNzfS5cbiAqXG4gKiBUSEUgb25lIGltcGxlbWVudGF0aW9uIOKAlCBgY2hlY2tWaXNpYmlsaXR5V3JpdGVBY2Nlc3NgIGlzIHRoaXMgZnVuY3Rpb24gd2l0aFxuICogdGhlIGNhbGxlcidzIGF1dGhvcml0eSByZWFkIG9mZiBhIGBSZXF1ZXN0YC4gVGhlIGpvYiBwYXRoIChhIHBsdWdpbiBkZXBsb3lcbiAqIHJ1bm5pbmcgaW4gYSBCdWxsTVEgd29ya2VyLCBsb25nIGFmdGVyIHRoZSBIVFRQIHJlcXVlc3QgaXMgZ29uZSkgYW5kIHRoZVxuICogcmVxdWVzdCBwYXRoIG11c3QgbmV2ZXIgZHJpZnQ6IGEgam9iLXBhdGggZ2F0ZSB0aGF0IGRpc2FncmVlZCB3aXRoIHRoZVxuICogcmVxdWVzdC1wYXRoIGdhdGUgaXMgYSB0ZW5hbmN5IGJ1Zywgbm90IGEgY29zbWV0aWMgb25lLCBzbyB0aGVyZSBpcyBubyBzZWNvbmRcbiAqIGNvcHkgb2YgdGhlIHJ1bmdzIHRvIGRyaWZ0LlxuICpcbiAqIENhbGxlcnMgbGF5ZXIgdGhlaXIgb3duIG5vdC1mb3VuZCAvIGFscmVhZHktZXhpc3RzIHBvbGljeSBvbiB0b3AgYW5kIHR1cm4gdGhlXG4gKiB2ZXJkaWN0IGludG8gYSB1c2VyLWZhY2luZyBtZXNzYWdlOyB0aGUgUlVMRSBzdGF5cyBoZXJlLlxuICpcbiAqICAgLSBgcHJpdmF0ZWAg4oaSIGF1dGhvciBvbmx5IChmYWlscyBjbG9zZWQgb24gYW4gZW1wdHkgYHVzZXJJZGApXG4gKiAgIC0gYG9yZ2AgICAgIOKGkiBhbnkgbWVtYmVyIG9mIHRoZSBvcmdcbiAqICAgLSBgcHVibGljYCAg4oaSIHJlcXVpcmVzIHRoZSBwdWJsaXNoIGNhcGFiaWxpdHlcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNoZWNrV3JpdGVBY2Nlc3MoXG4gIHJlc291cmNlOiBWaXNpYmlsaXR5V3JpdGVUYXJnZXQsXG4gIHVzZXJJZDogc3RyaW5nLFxuICBhY2Nlc3M6IFdyaXRlQWNjZXNzLFxuKTogVmlzaWJpbGl0eVdyaXRlVmVyZGljdCB7XG4gIGlmIChhY2Nlc3MuaXNTeXN0ZW1BZG1pbikgcmV0dXJuICdvayc7XG5cbiAgaWYgKHJlc291cmNlLnZpc2liaWxpdHkgPT09ICdwdWJsaWMnICYmICFhY2Nlc3MuY2FuUHVibGlzaCkge1xuICAgIHJldHVybiAnbmVlZHMtcHVibGlzaCc7XG4gIH1cblxuICAvLyBGYWlsIGNsb3NlZCBvbiBhbiBhbm9ueW1vdXMvYWJzZW50IGNhbGxlciDigJQgYW4gZW1wdHkgdXNlcklkIG11c3QgbmV2ZXIgbWF0Y2hcbiAgLy8gYW4gZW1wdHkgYGNyZWF0ZWRCeWAgYW5kIGhhbmQgb3ZlciBzb21lb25lIGVsc2UncyBkcmFmdC5cbiAgaWYgKHJlc291cmNlLnZpc2liaWxpdHkgPT09ICdwcml2YXRlJyAmJiAoIXVzZXJJZCB8fCByZXNvdXJjZS5jcmVhdGVkQnkgIT09IHVzZXJJZCkpIHtcbiAgICByZXR1cm4gJ25vdC1hdXRob3InO1xuICB9XG5cbiAgcmV0dXJuICdvayc7XG59XG5cbi8qKiBBIGJ1bGstb3BlcmF0aW9uIHJvdzogaXRzIGlkLCBwbHVzIHRoZSBzbGljZSB0aGUgd3JpdGUgZ2F0ZSByZWFkcy4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQnVsa1dyaXRlUm93IGV4dGVuZHMgVmlzaWJpbGl0eVdyaXRlVGFyZ2V0IHtcbiAgaWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBBcHBseSB0aGUgcGVyLXJvdyB3cml0ZSBnYXRlIGFjcm9zcyBhIEJVTEsgb3BlcmF0aW9uJ3MgbWF0Y2hlZCByb3dzLCBhbmRcbiAqIHJlZnVzZSB0aGUgV0hPTEUgYmF0Y2ggaWYgYW55IHJvdyBmYWlscy5cbiAqXG4gKiBBbGwtb3Itbm90aGluZyBvbiBwdXJwb3NlOiBhIHBhcnRpYWwgYnVsayB3cml0ZSBpcyBpbXBvc3NpYmxlIGZvciBhIGNsaWVudCB0b1xuICogcmVhc29uIGFib3V0LCBhbmQgdGhlIDQwMyBuYW1lcyB0aGUgb2ZmZW5kaW5nIGBpZHNgIHNvIHRoZSBjYWxsZXIgY2FuIHJldHJ5XG4gKiB3aXRoIGEgbmFycm93ZWQgc2V0LlxuICpcbiAqIFJldHVybnMgYHRydWVgIGhhdmluZyBBTFJFQURZIHNlbnQgYSA0MDMgKHNvIHRoZSByb3V0ZSByZXR1cm5zKTsgYGZhbHNlYCB3aGVuXG4gKiBldmVyeSByb3cgaXMgd3JpdGFibGUgYW5kIHRoZSBiYXRjaCBtYXkgcHJvY2VlZC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlamVjdEZvcmJpZGRlbkJ1bGtSb3dzKFxuICByZXE6IFJlcXVlc3QsXG4gIHJlczogUmVzcG9uc2UsXG4gIHJvd3M6IHJlYWRvbmx5IEJ1bGtXcml0ZVJvd1tdLFxuICB1c2VySWQ6IHN0cmluZyxcbiAgcHVibGlzaFBlcm1pc3Npb246IFBlcm1pc3Npb24sXG4gIG1lc3NhZ2U6IHN0cmluZyxcbik6IGJvb2xlYW4ge1xuICBjb25zdCBmb3JiaWRkZW4gPSByb3dzLmZpbHRlcigocm93KSA9PiBjaGVja1Zpc2liaWxpdHlXcml0ZUFjY2VzcyhyZXEsIHJvdywgdXNlcklkLCBwdWJsaXNoUGVybWlzc2lvbikgIT09ICdvaycpO1xuICBpZiAoZm9yYmlkZGVuLmxlbmd0aCA9PT0gMCkgcmV0dXJuIGZhbHNlO1xuICBzZW5kRXJyb3IocmVzLCA0MDMsIG1lc3NhZ2UsIEVycm9yQ29kZS5JTlNVRkZJQ0lFTlRfUEVSTUlTU0lPTlMsIHsgaWRzOiBmb3JiaWRkZW4ubWFwKChyb3cpID0+IHJvdy5pZCkgfSk7XG4gIHJldHVybiB0cnVlO1xufVxuXG4vKipcbiAqIFJlc29sdmUgdGhlIGVmZmVjdGl2ZSB2aXNpYmlsaXR5IGZvciBhbiBlbnRpdHkgYmVpbmcgY3JlYXRlZCBvciB1cGRhdGVkLlxuICpcbiAqIGBwdWJsaWNgIHJlcXVpcmVzIHRoZSBwdWJsaXNoIGNhcGFiaWxpdHkgKHN1cGVyYWRtaW5zIHBhc3MgdmlhIGltcGxpY2l0LWFsbCk7XG4gKiBhIGNhbGxlciB3aG8gYXNrcyBmb3IgaXQgd2l0aG91dCB0aGUgcGVybWlzc2lvbiBpcyBjbGFtcGVkIHRvIGBvcmdgIHJhdGhlclxuICogdGhhbiBkcm9wcGVkIHRvIGEgcGVyc29uYWwgZHJhZnQg4oCUIHRoZXkgYXNrZWQgdG8gU0hBUkUgaXQsIGFuZCBgb3JnYCBpcyB0aGVcbiAqIHdpZGVzdCBydW5nIHRoZXkgYXJlIGVudGl0bGVkIHRvLiBBbnl0aGluZyBlbHNlIHBhc3NlcyB0aHJvdWdoLlxuICpcbiAqIGBmYWxsYmFja2AgaXMgdGhlIHJ1bmcgYW4gVU5TUEVDSUZJRUQgdmlzaWJpbGl0eSBsYW5kcyBvbiwgYW5kIGl0IGlzXG4gKiBkZWxpYmVyYXRlbHkgcGVyLWVudGl0eSBldmVuIHRob3VnaCB0aGUgbGFkZGVyIGl0c2VsZiBpcyBpZGVudGljYWwgZXZlcnl3aGVyZTpcbiAqXG4gKiAtICoqdGVtcGxhdGVzKiogZGVmYXVsdCB0byBgcHJpdmF0ZWAg4oCUIGRyYWZ0LWZpcnN0IGlzIHRoZSB3aG9sZSBwb2ludCBvZiB0aGVcbiAqICAgcGVyc29uYWwgcnVuZzsgeW91IHBvbGlzaCBhIHN0YXJ0ZXIgYmVmb3JlIHB1Ymxpc2hpbmcgaXQuXG4gKiAtICoqcGlwZWxpbmVzIC8gcGx1Z2lucyoqIGRlZmF1bHQgdG8gYG9yZ2Ag4oCUIHRoZXkgYXJlIHRlYW0gYXNzZXRzIHRoYXQgZGVwbG95XG4gKiAgIHNoYXJlZCBpbmZyYXN0cnVjdHVyZSwgc28gY3JlYXRpbmcgb25lIG11c3Qgbm90IGhpZGUgaXQgZnJvbSB0aGUgdGVhbS4gQVxuICogICBwZXJzb25hbCBkcmFmdCBzdGF5cyBhdmFpbGFibGUsIGJ1dCBvcHQtaW4uXG4gKlxuICogU2FtZSBsYWRkZXIsIHNhbWUgZ2F0ZSwgZGlmZmVyZW50IGNlbnRyZSBvZiBncmF2aXR5IOKAlCBleHByZXNzZWQgYXMgYW4gYXJndW1lbnRcbiAqIHJhdGhlciB0aGFuIGEgc2Vjb25kIGNvZGUgcGF0aC5cbiAqXG4gKiBQZXJtaXNzaW9uLWJhc2VkIChub3QgY29hcnNlLXJvbGUtYmFzZWQpOiBhIGJlc3Bva2UgY3VzdG9tIFJvbGUgY2FuIGJlIGdyYW50ZWRcbiAqIHB1Ymxpc2ggcmlnaHRzIHJlZ2FyZGxlc3Mgb2YgaXRzIGBtZW1iZXJgIGxhYmVsLiBCdWlsdC1pblxuICogQWRtaW4vT3duZXIgYnVuZGxlcyBjYXJyeSB0aGUgcHVibGlzaCBwZXJtaXNzaW9uczsgdGhlIGJ1aWx0LWluIE1lbWJlciBidW5kbGVcbiAqIGRvZXMgbm90LCBzbyBtZW1iZXJzIHRvcCBvdXQgYXQgYG9yZ2AuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZXNvbHZlVmlzaWJpbGl0eShcbiAgcmVxOiBSZXF1ZXN0LFxuICByZXF1ZXN0ZWQ6IHN0cmluZyB8IHVuZGVmaW5lZCxcbiAgcHVibGlzaFBlcm1pc3Npb246IFBlcm1pc3Npb24sXG4gIGZhbGxiYWNrOiBWaXNpYmlsaXR5ID0gJ3ByaXZhdGUnLFxuKTogVmlzaWJpbGl0eSB7XG4gIGlmIChyZXF1ZXN0ZWQgPT09ICdwdWJsaWMnKSB7XG4gICAgcmV0dXJuIHVzZXJIYXNQZXJtaXNzaW9uKHJlcSwgcHVibGlzaFBlcm1pc3Npb24pID8gJ3B1YmxpYycgOiAnb3JnJztcbiAgfVxuICBpZiAocmVxdWVzdGVkID09PSAnb3JnJykgcmV0dXJuICdvcmcnO1xuICBpZiAocmVxdWVzdGVkID09PSAncHJpdmF0ZScpIHJldHVybiAncHJpdmF0ZSc7XG4gIHJldHVybiBmYWxsYmFjaztcbn1cbiJdfQ==
|
|
161
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjZXNzLWhlbHBlcnMuanMiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9oZWxwZXJzL2FjY2Vzcy1oZWxwZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLCtDQUErQztBQUMvQyxzQ0FBc0M7QUFHdEMsT0FBTyxFQUFFLGFBQWEsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUdwRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUF5QmpEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBeUJHO0FBQ0gsTUFBTSxVQUFVLDRCQUE0QixDQUMxQyxHQUFZLEVBQ1osR0FBYSxFQUNiLFFBQStCLEVBQy9CLE1BQWMsRUFDZCxpQkFBNkI7SUFFN0IsTUFBTSxPQUFPLEdBQUcsMEJBQTBCLENBQUMsR0FBRyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsaUJBQWlCLENBQUMsQ0FBQztJQUNyRixJQUFJLE9BQU8sS0FBSyxJQUFJO1FBQUUsT0FBTyxJQUFJLENBQUM7SUFDbEMsNkVBQTZFO0lBQzdFLDRFQUE0RTtJQUM1RSxTQUFTLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSx3QkFBd0IsQ0FBQyxPQUFPLENBQUMsRUFBRSxTQUFTLENBQUMsd0JBQXdCLENBQUMsQ0FBQztJQUMzRixPQUFPLEtBQUssQ0FBQztBQUNmLENBQUM7QUFRRDs7Ozs7Ozs7Ozs7Ozs7O0dBZUc7QUFDSCxNQUFNLENBQUMsTUFBTSx3QkFBd0IsR0FBcUQ7SUFDeEYsZUFBZSxFQUFFLHFEQUFxRDtJQUN0RSxZQUFZLEVBQUUsZ0RBQWdEO0NBQy9ELENBQUM7QUFFRjs7Ozs7Ozs7OztHQVVHO0FBQ0gsTUFBTSxVQUFVLDBCQUEwQixDQUN4QyxHQUFZLEVBQ1osUUFBK0IsRUFDL0IsTUFBYyxFQUNkLGlCQUE2QjtJQUU3QixPQUFPLGdCQUFnQixDQUFDLFFBQVEsRUFBRSxNQUFNLEVBQUU7UUFDeEMsYUFBYSxFQUFFLGFBQWEsQ0FBQyxHQUFHLENBQUM7UUFDakMsVUFBVSxFQUFFLGlCQUFpQixDQUFDLEdBQUcsRUFBRSxpQkFBaUIsQ0FBQztLQUN0RCxDQUFDLENBQUM7QUFDTCxDQUFDO0FBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7R0FnQkc7QUFDSCxNQUFNLFVBQVUsZ0JBQWdCLENBQzlCLFFBQStCLEVBQy9CLE1BQWMsRUFDZCxNQUFtQjtJQUVuQixJQUFJLE1BQU0sQ0FBQyxhQUFhO1FBQUUsT0FBTyxJQUFJLENBQUM7SUFFdEMsSUFBSSxRQUFRLENBQUMsVUFBVSxLQUFLLFFBQVEsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUMzRCxPQUFPLGVBQWUsQ0FBQztJQUN6QixDQUFDO0lBRUQsK0VBQStFO0lBQy9FLDJEQUEyRDtJQUMzRCxJQUFJLFFBQVEsQ0FBQyxVQUFVLEtBQUssU0FBUyxJQUFJLENBQUMsQ0FBQyxNQUFNLElBQUksUUFBUSxDQUFDLFNBQVMsS0FBSyxNQUFNLENBQUMsRUFBRSxDQUFDO1FBQ3BGLE9BQU8sWUFBWSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxPQUFPLElBQUksQ0FBQztBQUNkLENBQUM7QUFPRDs7Ozs7Ozs7OztHQVVHO0FBQ0gsTUFBTSxVQUFVLHVCQUF1QixDQUNyQyxHQUFZLEVBQ1osR0FBYSxFQUNiLElBQTZCLEVBQzdCLE1BQWMsRUFDZCxpQkFBNkIsRUFDN0IsT0FBZTtJQUVmLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLDBCQUEwQixDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsTUFBTSxFQUFFLGlCQUFpQixDQUFDLEtBQUssSUFBSSxDQUFDLENBQUM7SUFDakgsSUFBSSxTQUFTLENBQUMsTUFBTSxLQUFLLENBQUM7UUFBRSxPQUFPLEtBQUssQ0FBQztJQUN6QyxTQUFTLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxPQUFPLEVBQUUsU0FBUyxDQUFDLHdCQUF3QixFQUFFLEVBQUUsR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDMUcsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDO0FBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXdCRztBQUNILE1BQU0sVUFBVSxpQkFBaUIsQ0FDL0IsR0FBWSxFQUNaLFNBQTZCLEVBQzdCLGlCQUE2QixFQUM3QixRQUFRLEdBQWUsU0FBUztJQUVoQyxJQUFJLFNBQVMsS0FBSyxRQUFRLEVBQUUsQ0FBQztRQUMzQixPQUFPLGlCQUFpQixDQUFDLEdBQUcsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztJQUN0RSxDQUFDO0lBQ0QsSUFBSSxTQUFTLEtBQUssS0FBSztRQUFFLE9BQU8sS0FBSyxDQUFDO0lBQ3RDLElBQUksU0FBUyxLQUFLLFNBQVM7UUFBRSxPQUFPLFNBQVMsQ0FBQztJQUM5QyxPQUFPLFFBQVEsQ0FBQztBQUNsQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IDIwMjYgUGlwZWxpbmUgQnVpbGRlciBDb250cmlidXRvcnNcbi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG5cbmltcG9ydCB0eXBlIHsgUmVxdWVzdCwgUmVzcG9uc2UgfSBmcm9tICdleHByZXNzJztcbmltcG9ydCB7IGlzU3lzdGVtQWRtaW4sIHVzZXJIYXNQZXJtaXNzaW9uIH0gZnJvbSAnLi4vbWlkZGxld2FyZS9wZXJtaXNzaW9uLWdhdGVzLmpzJztcbmltcG9ydCB7IEVycm9yQ29kZSB9IGZyb20gJy4uL3R5cGVzL2Vycm9yLWNvZGVzLmpzJztcbmltcG9ydCB0eXBlIHsgUGVybWlzc2lvbiB9IGZyb20gJy4uL3R5cGVzL3Blcm1pc3Npb25zLmpzJztcbmltcG9ydCB0eXBlIHsgVmlzaWJpbGl0eSB9IGZyb20gJy4uL3R5cGVzL3Zpc2liaWxpdHkuanMnO1xuaW1wb3J0IHsgc2VuZEVycm9yIH0gZnJvbSAnLi4vdXRpbHMvcmVzcG9uc2UuanMnO1xuXG4vKiogVGhlIHNsaWNlIG9mIGEgY2F0YWxvZyBlbnRpdHkgdGhlIHdyaXRlIGdhdGUgbmVlZHMuICovXG5leHBvcnQgaW50ZXJmYWNlIFZpc2liaWxpdHlXcml0ZVRhcmdldCB7XG4gIC8qKiBSdW5nIHRoZSByb3cgY3VycmVudGx5IHNpdHMgYXQg4oCUIHNlZSB7QGxpbmsgVmlzaWJpbGl0eX0uICovXG4gIHZpc2liaWxpdHk/OiBzdHJpbmcgfCBudWxsO1xuICAvKiogQXV0aG9yLiBUaGUgb25seSBub24tYWRtaW4gd2hvIG1heSB0b3VjaCBhIGBwcml2YXRlYCByb3cuICovXG4gIGNyZWF0ZWRCeT86IHN0cmluZyB8IG51bGw7XG59XG5cbi8qKlxuICogVGhlIGNhbGxlcidzIGF1dGhvcml0eSBvbiB0aGUgdmlzaWJpbGl0eSBsYWRkZXIsIGFzIFBMQUlOIERBVEEuXG4gKlxuICogQ2FwdHVyZWQgZnJvbSB0aGUgcmVxdWVzdCAoYGlzU3lzdGVtQWRtaW4ocmVxKWAsXG4gKiBgdXNlckhhc1Blcm1pc3Npb24ocmVxLCAnPGVudGl0eT46cHVibGlzaCcpYCkgYXQgdGhlIGVkZ2UsIHNvIHRoZSBzYW1lIGdhdGVcbiAqIGNhbiBydW4gd2hlcmUgbm8gYFJlcXVlc3RgIGV4aXN0cyDigJQgYSBwbHVnaW4gZGVwbG95IHBlcmZvcm1lZCBieSBhIEJ1bGxNUVxuICogd29ya2VyLCBvciBgQ3J1ZFNlcnZpY2UuYnVsa0RlbGV0ZWAgZG93biBpbiB0aGUgZGF0YSBsYXllci4gVGhhdCBpcyB0aGUgd2hvbGVcbiAqIHJlYXNvbiB7QGxpbmsgY2hlY2tXcml0ZUFjY2Vzc30gYW5kIHtAbGluayBjaGVja1Zpc2liaWxpdHlXcml0ZUFjY2Vzc30gYXJlIHR3b1xuICogZnVuY3Rpb25zOiBvbmUgcnVsZSwgdHdvIHdheXMgb2YgbmFtaW5nIHRoZSBjYWxsZXIuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgV3JpdGVBY2Nlc3Mge1xuICBpc1N5c3RlbUFkbWluOiBib29sZWFuO1xuICBjYW5QdWJsaXNoOiBib29sZWFuO1xufVxuXG4vKipcbiAqIENoZWNrIHdoZXRoZXIgdGhlIGNhbGxlciBtYXkgbW9kaWZ5IGEgY2F0YWxvZyBlbnRpdHksIHBlciBpdHMgdmlzaWJpbGl0eSBydW5nLlxuICogVGhlIHNpbmdsZSB3cml0ZSBnYXRlIGJlaGluZCBldmVyeSBwaXBlbGluZSAvIHBsdWdpbiAvIHRlbXBsYXRlIG11dGF0aW9uLlxuICpcbiAqIC0gYHB1YmxpY2Ag4oCUIGEgc3lzdGVtIGFkbWluLCBvciB0aGUgaG9sZGVyIG9mIGBwdWJsaXNoUGVybWlzc2lvbmAgKHRoZSBzYW1lXG4gKiAgIHBlcm1pc3Npb24gdGhhdCBsZXQgdGhlbSBwdWJsaXNoIGl0IGluIHRoZSBmaXJzdCBwbGFjZSwgc28gd2hvZXZlciBjYW5cbiAqICAgcHVibGlzaCBjYW4gYWxzbyBtYW5hZ2Ugd2hhdCB0aGV5IHB1Ymxpc2hlZClcbiAqIC0gYG9yZ2Ag4oCUIGFueW9uZSB3aG8gZ290IHRoaXMgZmFyOiB0aGUgcmVzb3VyY2UncyBgOndyaXRlYCBwZXJtaXNzaW9uIHBsdXMgdGhlXG4gKiAgIG9yZyBzY29waW5nIHRoZSBjYWxsZXIgYWxyZWFkeSBwYXNzZWQgSVMgdGhlIGdhdGVcbiAqIC0gYHByaXZhdGVgIOKAlCB0aGUgQVVUSE9SIGFsb25lIChwbHVzIHN5c3RlbSBhZG1pbnMpXG4gKlxuICogVGhlIGBwcml2YXRlYCBicmFuY2ggaXMgbG9hZC1iZWFyaW5nIG9uIHRoZSBUT01CU1RPTkUgcGF0aHMgKHJlc3RvcmUgLyBwdXJnZSksXG4gKiB3aGljaCBhcmUgb3JnLXNjb3BlZCByYXRoZXIgdGhhbiB2aXNpYmlsaXR5LXNjb3BlZCBiZWNhdXNlIHNvZnQtZGVsZXRlIGlzIG9uZVxuICogc2hhcmVkIGNvZGUgcGF0aCDigJQgd2l0aG91dCBpdCwgYW55IG9yZyBtZW1iZXIgY291bGQgcmVzdXJyZWN0IHNvbWVvbmUgZWxzZSdzXG4gKiBwZXJzb25hbCBkcmFmdC4gT24gdGhlIGxpdmUgcGF0aHMgdGhlIHJlYWQgcHJlZGljYXRlIGhhcyBhbHJlYWR5IGhpZGRlbiB0aGVcbiAqIHJvdywgbWFraW5nIHRoaXMgZGVmZW5zZSBpbiBkZXB0aC5cbiAqXG4gKiBSZXR1cm5zIGB0cnVlYCBpZiB0aGUgcmVxdWVzdCBtYXkgcHJvY2VlZDsgcmV0dXJucyBgZmFsc2VgIGhhdmluZyBBTFJFQURZIHNlbnRcbiAqIGEgNDAzLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBpZiAoIXJlcXVpcmVWaXNpYmlsaXR5V3JpdGVBY2Nlc3MocmVxLCByZXMsIHBpcGVsaW5lLCB1c2VySWQsICdwaXBlbGluZXM6cHVibGlzaCcpKSByZXR1cm47XG4gKiBhd2FpdCBwaXBlbGluZVNlcnZpY2UuZGVsZXRlKGlkLCBvcmdJZCwgdXNlcklkKTtcbiAqIGBgYFxuICovXG5leHBvcnQgZnVuY3Rpb24gcmVxdWlyZVZpc2liaWxpdHlXcml0ZUFjY2VzcyhcbiAgcmVxOiBSZXF1ZXN0LFxuICByZXM6IFJlc3BvbnNlLFxuICByZXNvdXJjZTogVmlzaWJpbGl0eVdyaXRlVGFyZ2V0LFxuICB1c2VySWQ6IHN0cmluZyxcbiAgcHVibGlzaFBlcm1pc3Npb246IFBlcm1pc3Npb24sXG4pOiBib29sZWFuIHtcbiAgY29uc3QgdmVyZGljdCA9IGNoZWNrVmlzaWJpbGl0eVdyaXRlQWNjZXNzKHJlcSwgcmVzb3VyY2UsIHVzZXJJZCwgcHVibGlzaFBlcm1pc3Npb24pO1xuICBpZiAodmVyZGljdCA9PT0gJ29rJykgcmV0dXJuIHRydWU7XG4gIC8vIEtleWVkLCBub3QgYSB0ZXJuYXJ5OiBhIHZlcmRpY3QgYWRkZWQgdG8gdGhlIHVuaW9uIGhhcyBubyBlbnRyeSBoZXJlIHVudGlsXG4gIC8vIHNvbWVvbmUgd3JpdGVzIG9uZSwgd2hpY2ggaXMgYSBidWlsZCBmYWlsdXJlIHJhdGhlciB0aGFuIGEgd3JvbmcgbWVzc2FnZS5cbiAgc2VuZEVycm9yKHJlcywgNDAzLCBWSVNJQklMSVRZX1dSSVRFX1JFRlVTQUxbdmVyZGljdF0sIEVycm9yQ29kZS5JTlNVRkZJQ0lFTlRfUEVSTUlTU0lPTlMpO1xuICByZXR1cm4gZmFsc2U7XG59XG5cbi8qKiBXaHkgYSB3cml0ZSB3YXMgcmVmdXNlZCwgb3IgYCdvaydgLiBTZWUge0BsaW5rIGNoZWNrVmlzaWJpbGl0eVdyaXRlQWNjZXNzfS4gKi9cbmV4cG9ydCB0eXBlIFZpc2liaWxpdHlXcml0ZVZlcmRpY3QgPSAnb2snIHwgJ25lZWRzLXB1Ymxpc2gnIHwgJ25vdC1hdXRob3InO1xuXG4vKiogQSByZWZ1c2FsIOKAlCBldmVyeSB2ZXJkaWN0IGV4Y2VwdCB0aGUgb25lIHRoYXQgcHJvY2VlZHMuICovXG5leHBvcnQgdHlwZSBWaXNpYmlsaXR5V3JpdGVSZWZ1c2FsID0gRXhjbHVkZTxWaXNpYmlsaXR5V3JpdGVWZXJkaWN0LCAnb2snPjtcblxuLyoqXG4gKiBXaHkgZWFjaCByZWZ1c2FsIGhhcHBlbmVkLCBpbiB0aGUgY2FsbGVyJ3Mgd29yZHMuIEtFWUVELCB3aGljaCBpcyB0aGUgcG9pbnQuXG4gKlxuICogVGhyZWUgcGxhY2VzIHR1cm4gYSB2ZXJkaWN0IGludG8gYSBtZXNzYWdlLCBhbmQgbm9uZSBvZiB0aGVtIHVzZWQgdG8gYmVcbiAqIGV4aGF1c3RpdmU6IHRoZSB0d28gc2VydmljZXMgZW5kZWQgdGhlaXIgc3dpdGNoIG9uIGEgYmFyZSBgY2FzZSAnb2snOmAgdGhhdFxuICogZmVsbCBvdXQgb2YgdGhlIGJsb2NrLCBzbyBhIEZPVVJUSCByZWZ1c2FsIHZlcmRpY3Qgd291bGQgaGF2ZSBsZXQgdGhlIHdyaXRlXG4gKiBUSFJPVUdILCBhbmQgdGhlIGhlbHBlciBiZWxvdyB1c2VkIGEgdGVybmFyeSwgc28gYSBmb3VydGggd291bGQgaGF2ZSBiZWVuXG4gKiByZXBvcnRlZCBhcyBgbm90LWF1dGhvcmAg4oCUIHdyb25nLCB0aG91Z2ggYXQgbGVhc3Qgc3RpbGwgcmVmdXNlZC5cbiAqXG4gKiBBIGBSZWNvcmRgIG92ZXIgYEV4Y2x1ZGU84oCmLCAnb2snPmAgbWFrZXMgYWRkaW5nIGEgdmVyZGljdCBhIENPTVBJTEUgZXJyb3IgaW5cbiAqIGV2ZXJ5IGNvbnN1bWVyIHVudGlsIGVhY2ggc2F5cyB3aGF0IGl0IG1lYW5zLCBhbmQgaXQgcmVtb3ZlcyB0aGUgY29weTogdGhpc1xuICogcHVibGljLXJlc291cmNlIHNlbnRlbmNlIHByZXZpb3VzbHkgZXhpc3RlZCB0aHJlZSB0aW1lcywgaW4gdGhyZWUgcGFja2FnZXMuXG4gKlxuICogVGhlIG1lc3NhZ2VzIG5hbWUgdGhlIFJVTkcsIG5vdCB0aGUgcGVybWlzc2lvbiwgYmVjYXVzZSB0aGUgY2FsbGVyIGNhbm5vdCBhY3RcbiAqIG9uIGEgcGVybWlzc2lvbiBpZCBhbmQgdGhlIHJ1bmcgaXMgd2hhdCB0aGV5IHdvdWxkIGhhdmUgdG8gY2hhbmdlLlxuICovXG5leHBvcnQgY29uc3QgVklTSUJJTElUWV9XUklURV9SRUZVU0FMOiBSZWFkb25seTxSZWNvcmQ8VmlzaWJpbGl0eVdyaXRlUmVmdXNhbCwgc3RyaW5nPj4gPSB7XG4gICduZWVkcy1wdWJsaXNoJzogJ1lvdSBsYWNrIHBlcm1pc3Npb24gdG8gbW9kaWZ5IHRoaXMgcHVibGljIHJlc291cmNlLicsXG4gICdub3QtYXV0aG9yJzogJ09ubHkgdGhlIGF1dGhvciBjYW4gbW9kaWZ5IGEgcHJpdmF0ZSByZXNvdXJjZS4nLFxufTtcblxuLyoqXG4gKiBUaGUgdmlzaWJpbGl0eSB3cml0ZSBydWxlIGFzIGEgUFJFRElDQVRFLCB3aXRoIG5vIHJlc3BvbnNlIHNpZGUtZWZmZWN0LlxuICpcbiAqIEV4dHJhY3RlZCBzbyBCVUxLIHJvdXRlcyBhcHBseSB0aGUgaWRlbnRpY2FsIHJ1bGUgcGVyIHJvdyBpbnN0ZWFkIG9mXG4gKiByZS1kZXJpdmluZyBpdCDigJQgYSBidWxrIHJ1bGUgdGhhdCBkaXNhZ3JlZWQgd291bGQgNDAzIGNhc2VzIHNpbmdsZS1yb3dcbiAqIGRlbGV0ZS91cGRhdGUgYWxsb3cgKGFuIGBvcmdgIHJvdyB3aXRoIHBsYWluIGA6d3JpdGVgLCB0aGUgZGVmYXVsdCBydW5nKS5cbiAqXG4gKiAgIC0gYHByaXZhdGVgIOKGkiBhdXRob3Igb25seVxuICogICAtIGBvcmdgICAgICDihpIgYW55IG1lbWJlciBvZiB0aGUgb3JnXG4gKiAgIC0gYHB1YmxpY2AgIOKGkiByZXF1aXJlcyBgcHVibGlzaFBlcm1pc3Npb25gXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjaGVja1Zpc2liaWxpdHlXcml0ZUFjY2VzcyhcbiAgcmVxOiBSZXF1ZXN0LFxuICByZXNvdXJjZTogVmlzaWJpbGl0eVdyaXRlVGFyZ2V0LFxuICB1c2VySWQ6IHN0cmluZyxcbiAgcHVibGlzaFBlcm1pc3Npb246IFBlcm1pc3Npb24sXG4pOiBWaXNpYmlsaXR5V3JpdGVWZXJkaWN0IHtcbiAgcmV0dXJuIGNoZWNrV3JpdGVBY2Nlc3MocmVzb3VyY2UsIHVzZXJJZCwge1xuICAgIGlzU3lzdGVtQWRtaW46IGlzU3lzdGVtQWRtaW4ocmVxKSxcbiAgICBjYW5QdWJsaXNoOiB1c2VySGFzUGVybWlzc2lvbihyZXEsIHB1Ymxpc2hQZXJtaXNzaW9uKSxcbiAgfSk7XG59XG5cbi8qKlxuICogVGhlIHZpc2liaWxpdHkgd3JpdGUgcnVsZSBpdHNlbGYsIG92ZXIgYSByZXF1ZXN0LWZyZWUge0BsaW5rIFdyaXRlQWNjZXNzfS5cbiAqXG4gKiBUSEUgb25lIGltcGxlbWVudGF0aW9uIOKAlCBgY2hlY2tWaXNpYmlsaXR5V3JpdGVBY2Nlc3NgIGlzIHRoaXMgZnVuY3Rpb24gd2l0aFxuICogdGhlIGNhbGxlcidzIGF1dGhvcml0eSByZWFkIG9mZiBhIGBSZXF1ZXN0YC4gVGhlIGpvYiBwYXRoIChhIHBsdWdpbiBkZXBsb3lcbiAqIHJ1bm5pbmcgaW4gYSBCdWxsTVEgd29ya2VyLCBsb25nIGFmdGVyIHRoZSBIVFRQIHJlcXVlc3QgaXMgZ29uZSkgYW5kIHRoZVxuICogcmVxdWVzdCBwYXRoIG11c3QgbmV2ZXIgZHJpZnQ6IGEgam9iLXBhdGggZ2F0ZSB0aGF0IGRpc2FncmVlZCB3aXRoIHRoZVxuICogcmVxdWVzdC1wYXRoIGdhdGUgaXMgYSB0ZW5hbmN5IGJ1Zywgbm90IGEgY29zbWV0aWMgb25lLCBzbyB0aGVyZSBpcyBubyBzZWNvbmRcbiAqIGNvcHkgb2YgdGhlIHJ1bmdzIHRvIGRyaWZ0LlxuICpcbiAqIENhbGxlcnMgbGF5ZXIgdGhlaXIgb3duIG5vdC1mb3VuZCAvIGFscmVhZHktZXhpc3RzIHBvbGljeSBvbiB0b3AgYW5kIHR1cm4gdGhlXG4gKiB2ZXJkaWN0IGludG8gYSB1c2VyLWZhY2luZyBtZXNzYWdlOyB0aGUgUlVMRSBzdGF5cyBoZXJlLlxuICpcbiAqICAgLSBgcHJpdmF0ZWAg4oaSIGF1dGhvciBvbmx5IChmYWlscyBjbG9zZWQgb24gYW4gZW1wdHkgYHVzZXJJZGApXG4gKiAgIC0gYG9yZ2AgICAgIOKGkiBhbnkgbWVtYmVyIG9mIHRoZSBvcmdcbiAqICAgLSBgcHVibGljYCAg4oaSIHJlcXVpcmVzIHRoZSBwdWJsaXNoIGNhcGFiaWxpdHlcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNoZWNrV3JpdGVBY2Nlc3MoXG4gIHJlc291cmNlOiBWaXNpYmlsaXR5V3JpdGVUYXJnZXQsXG4gIHVzZXJJZDogc3RyaW5nLFxuICBhY2Nlc3M6IFdyaXRlQWNjZXNzLFxuKTogVmlzaWJpbGl0eVdyaXRlVmVyZGljdCB7XG4gIGlmIChhY2Nlc3MuaXNTeXN0ZW1BZG1pbikgcmV0dXJuICdvayc7XG5cbiAgaWYgKHJlc291cmNlLnZpc2liaWxpdHkgPT09ICdwdWJsaWMnICYmICFhY2Nlc3MuY2FuUHVibGlzaCkge1xuICAgIHJldHVybiAnbmVlZHMtcHVibGlzaCc7XG4gIH1cblxuICAvLyBGYWlsIGNsb3NlZCBvbiBhbiBhbm9ueW1vdXMvYWJzZW50IGNhbGxlciDigJQgYW4gZW1wdHkgdXNlcklkIG11c3QgbmV2ZXIgbWF0Y2hcbiAgLy8gYW4gZW1wdHkgYGNyZWF0ZWRCeWAgYW5kIGhhbmQgb3ZlciBzb21lb25lIGVsc2UncyBkcmFmdC5cbiAgaWYgKHJlc291cmNlLnZpc2liaWxpdHkgPT09ICdwcml2YXRlJyAmJiAoIXVzZXJJZCB8fCByZXNvdXJjZS5jcmVhdGVkQnkgIT09IHVzZXJJZCkpIHtcbiAgICByZXR1cm4gJ25vdC1hdXRob3InO1xuICB9XG5cbiAgcmV0dXJuICdvayc7XG59XG5cbi8qKiBBIGJ1bGstb3BlcmF0aW9uIHJvdzogaXRzIGlkLCBwbHVzIHRoZSBzbGljZSB0aGUgd3JpdGUgZ2F0ZSByZWFkcy4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQnVsa1dyaXRlUm93IGV4dGVuZHMgVmlzaWJpbGl0eVdyaXRlVGFyZ2V0IHtcbiAgaWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBBcHBseSB0aGUgcGVyLXJvdyB3cml0ZSBnYXRlIGFjcm9zcyBhIEJVTEsgb3BlcmF0aW9uJ3MgbWF0Y2hlZCByb3dzLCBhbmRcbiAqIHJlZnVzZSB0aGUgV0hPTEUgYmF0Y2ggaWYgYW55IHJvdyBmYWlscy5cbiAqXG4gKiBBbGwtb3Itbm90aGluZyBvbiBwdXJwb3NlOiBhIHBhcnRpYWwgYnVsayB3cml0ZSBpcyBpbXBvc3NpYmxlIGZvciBhIGNsaWVudCB0b1xuICogcmVhc29uIGFib3V0LCBhbmQgdGhlIDQwMyBuYW1lcyB0aGUgb2ZmZW5kaW5nIGBpZHNgIHNvIHRoZSBjYWxsZXIgY2FuIHJldHJ5XG4gKiB3aXRoIGEgbmFycm93ZWQgc2V0LlxuICpcbiAqIFJldHVybnMgYHRydWVgIGhhdmluZyBBTFJFQURZIHNlbnQgYSA0MDMgKHNvIHRoZSByb3V0ZSByZXR1cm5zKTsgYGZhbHNlYCB3aGVuXG4gKiBldmVyeSByb3cgaXMgd3JpdGFibGUgYW5kIHRoZSBiYXRjaCBtYXkgcHJvY2VlZC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlamVjdEZvcmJpZGRlbkJ1bGtSb3dzKFxuICByZXE6IFJlcXVlc3QsXG4gIHJlczogUmVzcG9uc2UsXG4gIHJvd3M6IHJlYWRvbmx5IEJ1bGtXcml0ZVJvd1tdLFxuICB1c2VySWQ6IHN0cmluZyxcbiAgcHVibGlzaFBlcm1pc3Npb246IFBlcm1pc3Npb24sXG4gIG1lc3NhZ2U6IHN0cmluZyxcbik6IGJvb2xlYW4ge1xuICBjb25zdCBmb3JiaWRkZW4gPSByb3dzLmZpbHRlcigocm93KSA9PiBjaGVja1Zpc2liaWxpdHlXcml0ZUFjY2VzcyhyZXEsIHJvdywgdXNlcklkLCBwdWJsaXNoUGVybWlzc2lvbikgIT09ICdvaycpO1xuICBpZiAoZm9yYmlkZGVuLmxlbmd0aCA9PT0gMCkgcmV0dXJuIGZhbHNlO1xuICBzZW5kRXJyb3IocmVzLCA0MDMsIG1lc3NhZ2UsIEVycm9yQ29kZS5JTlNVRkZJQ0lFTlRfUEVSTUlTU0lPTlMsIHsgaWRzOiBmb3JiaWRkZW4ubWFwKChyb3cpID0+IHJvdy5pZCkgfSk7XG4gIHJldHVybiB0cnVlO1xufVxuXG4vKipcbiAqIFJlc29sdmUgdGhlIGVmZmVjdGl2ZSB2aXNpYmlsaXR5IGZvciBhbiBlbnRpdHkgYmVpbmcgY3JlYXRlZCBvciB1cGRhdGVkLlxuICpcbiAqIGBwdWJsaWNgIHJlcXVpcmVzIHRoZSBwdWJsaXNoIGNhcGFiaWxpdHkgKHN1cGVyYWRtaW5zIHBhc3MgdmlhIGltcGxpY2l0LWFsbCk7XG4gKiBhIGNhbGxlciB3aG8gYXNrcyBmb3IgaXQgd2l0aG91dCB0aGUgcGVybWlzc2lvbiBpcyBjbGFtcGVkIHRvIGBvcmdgIHJhdGhlclxuICogdGhhbiBkcm9wcGVkIHRvIGEgcGVyc29uYWwgZHJhZnQg4oCUIHRoZXkgYXNrZWQgdG8gU0hBUkUgaXQsIGFuZCBgb3JnYCBpcyB0aGVcbiAqIHdpZGVzdCBydW5nIHRoZXkgYXJlIGVudGl0bGVkIHRvLiBBbnl0aGluZyBlbHNlIHBhc3NlcyB0aHJvdWdoLlxuICpcbiAqIGBmYWxsYmFja2AgaXMgdGhlIHJ1bmcgYW4gVU5TUEVDSUZJRUQgdmlzaWJpbGl0eSBsYW5kcyBvbiwgYW5kIGl0IGlzXG4gKiBkZWxpYmVyYXRlbHkgcGVyLWVudGl0eSBldmVuIHRob3VnaCB0aGUgbGFkZGVyIGl0c2VsZiBpcyBpZGVudGljYWwgZXZlcnl3aGVyZTpcbiAqXG4gKiAtICoqdGVtcGxhdGVzKiogZGVmYXVsdCB0byBgcHJpdmF0ZWAg4oCUIGRyYWZ0LWZpcnN0IGlzIHRoZSB3aG9sZSBwb2ludCBvZiB0aGVcbiAqICAgcGVyc29uYWwgcnVuZzsgeW91IHBvbGlzaCBhIHN0YXJ0ZXIgYmVmb3JlIHB1Ymxpc2hpbmcgaXQuXG4gKiAtICoqcGlwZWxpbmVzIC8gcGx1Z2lucyoqIGRlZmF1bHQgdG8gYG9yZ2Ag4oCUIHRoZXkgYXJlIHRlYW0gYXNzZXRzIHRoYXQgZGVwbG95XG4gKiAgIHNoYXJlZCBpbmZyYXN0cnVjdHVyZSwgc28gY3JlYXRpbmcgb25lIG11c3Qgbm90IGhpZGUgaXQgZnJvbSB0aGUgdGVhbS4gQVxuICogICBwZXJzb25hbCBkcmFmdCBzdGF5cyBhdmFpbGFibGUsIGJ1dCBvcHQtaW4uXG4gKlxuICogU2FtZSBsYWRkZXIsIHNhbWUgZ2F0ZSwgZGlmZmVyZW50IGNlbnRyZSBvZiBncmF2aXR5IOKAlCBleHByZXNzZWQgYXMgYW4gYXJndW1lbnRcbiAqIHJhdGhlciB0aGFuIGEgc2Vjb25kIGNvZGUgcGF0aC5cbiAqXG4gKiBQZXJtaXNzaW9uLWJhc2VkIChub3QgY29hcnNlLXJvbGUtYmFzZWQpOiBhIGJlc3Bva2UgY3VzdG9tIFJvbGUgY2FuIGJlIGdyYW50ZWRcbiAqIHB1Ymxpc2ggcmlnaHRzIHJlZ2FyZGxlc3Mgb2YgaXRzIGBtZW1iZXJgIGxhYmVsLiBCdWlsdC1pblxuICogQWRtaW4vT3duZXIgYnVuZGxlcyBjYXJyeSB0aGUgcHVibGlzaCBwZXJtaXNzaW9uczsgdGhlIGJ1aWx0LWluIE1lbWJlciBidW5kbGVcbiAqIGRvZXMgbm90LCBzbyBtZW1iZXJzIHRvcCBvdXQgYXQgYG9yZ2AuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZXNvbHZlVmlzaWJpbGl0eShcbiAgcmVxOiBSZXF1ZXN0LFxuICByZXF1ZXN0ZWQ6IHN0cmluZyB8IHVuZGVmaW5lZCxcbiAgcHVibGlzaFBlcm1pc3Npb246IFBlcm1pc3Npb24sXG4gIGZhbGxiYWNrOiBWaXNpYmlsaXR5ID0gJ3ByaXZhdGUnLFxuKTogVmlzaWJpbGl0eSB7XG4gIGlmIChyZXF1ZXN0ZWQgPT09ICdwdWJsaWMnKSB7XG4gICAgcmV0dXJuIHVzZXJIYXNQZXJtaXNzaW9uKHJlcSwgcHVibGlzaFBlcm1pc3Npb24pID8gJ3B1YmxpYycgOiAnb3JnJztcbiAgfVxuICBpZiAocmVxdWVzdGVkID09PSAnb3JnJykgcmV0dXJuICdvcmcnO1xuICBpZiAocmVxdWVzdGVkID09PSAncHJpdmF0ZScpIHJldHVybiAncHJpdmF0ZSc7XG4gIHJldHVybiBmYWxsYmFjaztcbn1cbiJdfQ==
|
|
@@ -19,4 +19,4 @@ export function safeFileName(name) {
|
|
|
19
19
|
export function attachmentDisposition(name) {
|
|
20
20
|
return `attachment; filename="${safeFileName(name)}"`;
|
|
21
21
|
}
|
|
22
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC1kaXNwb3NpdGlvbi5qcyIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hlbHBlcnMvY29udGVudC1kaXNwb3NpdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwrQ0FBK0M7QUFDL0Msc0NBQXNDO0FBRXRDOzs7Ozs7Ozs7R0FTRztBQUVILHFFQUFxRTtBQUNyRSxNQUFNLFVBQVUsWUFBWSxDQUFDLElBQVk7SUFDdkMsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsRUFBRSxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDekYsT0FBTyxPQUFPLElBQUksVUFBVSxDQUFDO0FBQy9CLENBQUM7QUFFRCxxRUFBcUU7QUFDckUsTUFBTSxVQUFVLHFCQUFxQixDQUFDLElBQVk7SUFDaEQsT0FBTyx5QkFBeUIsWUFBWSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUM7QUFDeEQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAyMDI2IFBpcGVsaW5lIEJ1aWxkZXIgQ29udHJpYnV0b3JzXG4vLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMFxuXG4vKipcbiAqIGBDb250ZW50LURpc3Bvc2l0aW9uOiBhdHRhY2htZW50YCBmb3IgYSBkb3dubG9hZCB3aG9zZSBmaWxlIG5hbWUgaXMgYnVpbHRcbiAqIGZyb20gc3RvcmVkIG9yIHJlcXVlc3QgZGF0YSAoYSBwbHVnaW4gbmFtZSwgYSB2ZXJzaW9uLCBhIHJlcG9ydCBwZXJpb2QpLiBFdmVyeVxuICogY2hhcmFjdGVyIG91dHNpZGUgYFtBLVphLXowLTkuXy1dYCBiZWNvbWVzIGBfYCwgc28gYSBxdW90ZSwgYSBDUi9MRiBvciBhXG4gKiBwYXRoIHNlcGFyYXRvciBjYW4gbmV2ZXIgYnJlYWsgb3V0IG9mIHRoZSBoZWFkZXIgb3IgdGhlIGZpbGUgbmFtZS5cbiAqXG4gKiBJbiBhcGktY29yZSByYXRoZXIgdGhhbiBpbiBvbmUgc2VydmljZSBiZWNhdXNlIGl0IGlzIGEgaGVhZGVyLWluamVjdGlvbiBndWFyZCB3aXRoXG4gKiBzZXZlcmFsIGNhbGxlcnMgKHBsdWdpbidzIFNCT00gYW5kIHNjYW4gZG93bmxvYWRzLCByZXBvcnRpbmcncyByZXBvcnQgUERGcykuIEEgc2Vjb25kXG4gKiBjb3B5IG9mIGEgc2FuaXRpemVyIGlzIGEgY29weSB0aGF0IGdldHMgYSBmaXggdGhlIG90aGVyIG9uZSBkb2VzIG5vdC5cbiAqL1xuXG4vKiogQSBoZWFkZXItc2FmZSBmaWxlIG5hbWUgKGF0IG1vc3QgMjAwIGNoYXJhY3RlcnMsIG5ldmVyIGVtcHR5KS4gKi9cbmV4cG9ydCBmdW5jdGlvbiBzYWZlRmlsZU5hbWUobmFtZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgY29uc3QgY2xlYW5lZCA9IG5hbWUucmVwbGFjZSgvW15BLVphLXowLTkuXy1dL2csICdfJykucmVwbGFjZSgvXlxcLisvLCAnXycpLnNsaWNlKDAsIDIwMCk7XG4gIHJldHVybiBjbGVhbmVkIHx8ICdkb3dubG9hZCc7XG59XG5cbi8qKiBUaGUgZnVsbCBoZWFkZXIgdmFsdWUgZm9yIGRvd25sb2FkaW5nIGBuYW1lYCBhcyBhbiBhdHRhY2htZW50LiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGF0dGFjaG1lbnREaXNwb3NpdGlvbihuYW1lOiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gYGF0dGFjaG1lbnQ7IGZpbGVuYW1lPVwiJHtzYWZlRmlsZU5hbWUobmFtZSl9XCJgO1xufVxuIl19
|
|
@@ -20,4 +20,4 @@ export function normalizeArrayFields(record, arrayFields) {
|
|
|
20
20
|
export function sendEntityNotFound(res, entityName) {
|
|
21
21
|
sendError(res, 404, `${entityName} not found.`, ErrorCode.NOT_FOUND);
|
|
22
22
|
}
|
|
23
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3J1ZC1oZWxwZXJzLmpzIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaGVscGVycy9jcnVkLWhlbHBlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0NBQStDO0FBQy9DLHNDQUFzQztBQUd0QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDcEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRWpEOzs7O0dBSUc7QUFDSCxNQUFNLFVBQVUsb0JBQW9CLENBQ2xDLE1BQVMsRUFDVCxXQUF3QjtJQUV4QixNQUFNLFVBQVUsR0FBRyxFQUFFLEdBQUcsTUFBTSxFQUFFLENBQUM7SUFDakMsS0FBSyxNQUFNLEtBQUssSUFBSSxXQUFXLEVBQUUsQ0FBQztRQUNoQyxJQUFJLEtBQUssSUFBSSxVQUFVLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDNUQsVUFBc0MsQ0FBQyxLQUFlLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDaEUsQ0FBQztJQUNILENBQUM7SUFDRCxPQUFPLFVBQVUsQ0FBQztBQUNwQixDQUFDO0FBRUQscUZBQXFGO0FBQ3JGLE1BQU0sVUFBVSxrQkFBa0IsQ0FBQyxHQUFhLEVBQUUsVUFBa0I7SUFDbEUsU0FBUyxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxVQUFVLGFBQWEsRUFBRSxTQUFTLENBQUMsU0FBUyxDQUFDLENBQUM7QUFDdkUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAyMDI2IFBpcGVsaW5lIEJ1aWxkZXIgQ29udHJpYnV0b3JzXG4vLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMFxuXG5pbXBvcnQgdHlwZSB7IFJlc3BvbnNlIH0gZnJvbSAnZXhwcmVzcyc7XG5pbXBvcnQgeyBFcnJvckNvZGUgfSBmcm9tICcuLi90eXBlcy9lcnJvci1jb2Rlcy5qcyc7XG5pbXBvcnQgeyBzZW5kRXJyb3IgfSBmcm9tICcuLi91dGlscy9yZXNwb25zZS5qcyc7XG5cbi8qKlxuICogQ29lcmNlIGxpc3RlZCBmaWVsZHMgb24gYSBEQi1yZXR1cm5lZCByZWNvcmQgdG8gYXJyYXlzLiBEcml6emxlL3BnIHNvbWV0aW1lc1xuICogcmV0dXJucyBgbnVsbGAgZm9yIGpzb25iIGNvbHVtbnMgd2hlbiB0aGUgcm93IHdhcyBpbnNlcnRlZCB3aXRoIGEgbWlzc2luZ1xuICoga2V5IOKAlCBjYWxsZXJzIGV4cGVjdCBgW11gIHNvIG1hcCBpdGVyYXRpb24gZG9lc24ndCBjcmFzaC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG5vcm1hbGl6ZUFycmF5RmllbGRzPFQgZXh0ZW5kcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPj4oXG4gIHJlY29yZDogVCxcbiAgYXJyYXlGaWVsZHM6IChrZXlvZiBUKVtdLFxuKTogVCB7XG4gIGNvbnN0IG5vcm1hbGl6ZWQgPSB7IC4uLnJlY29yZCB9O1xuICBmb3IgKGNvbnN0IGZpZWxkIG9mIGFycmF5RmllbGRzKSB7XG4gICAgaWYgKGZpZWxkIGluIG5vcm1hbGl6ZWQgJiYgIUFycmF5LmlzQXJyYXkobm9ybWFsaXplZFtmaWVsZF0pKSB7XG4gICAgICAobm9ybWFsaXplZCBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPilbZmllbGQgYXMgc3RyaW5nXSA9IFtdO1xuICAgIH1cbiAgfVxuICByZXR1cm4gbm9ybWFsaXplZDtcbn1cblxuLyoqIFNlbmQgYSA0MDQgTk9UX0ZPVU5EIGVycm9yIHdpdGggYSBzdGFuZGFyZCBgJHtlbnRpdHlOYW1lfSBub3QgZm91bmQuYCBtZXNzYWdlLiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHNlbmRFbnRpdHlOb3RGb3VuZChyZXM6IFJlc3BvbnNlLCBlbnRpdHlOYW1lOiBzdHJpbmcpOiB2b2lkIHtcbiAgc2VuZEVycm9yKHJlcywgNDA0LCBgJHtlbnRpdHlOYW1lfSBub3QgZm91bmQuYCwgRXJyb3JDb2RlLk5PVF9GT1VORCk7XG59XG4iXX0=
|
package/lib/helpers/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export * from './crud-helpers.js';
|
|
2
2
|
export { businessCalendar, responseDueAt, SUPPORT_TARGET_MEASURES, type BusinessCalendar, type SupportTargetKind, } from './support-calendar.js';
|
|
3
|
-
export { requireVisibilityWriteAccess, checkVisibilityWriteAccess, checkWriteAccess, rejectForbiddenBulkRows, resolveVisibility, type VisibilityWriteTarget, type VisibilityWriteVerdict, type WriteAccess, type BulkWriteRow, } from './access-helpers.js';
|
|
3
|
+
export { requireVisibilityWriteAccess, checkVisibilityWriteAccess, checkWriteAccess, rejectForbiddenBulkRows, resolveVisibility, VISIBILITY_WRITE_REFUSAL, type VisibilityWriteTarget, type VisibilityWriteVerdict, type VisibilityWriteRefusal, type WriteAccess, type BulkWriteRow, } from './access-helpers.js';
|
|
4
4
|
export { loadAndRestore, loadAndPurge, type RestorableService, type PurgeableService, type TombstoneAuthorizer, type TombstoneRouteOptions, } from './restore-helpers.js';
|
|
5
5
|
export * from './sse-helpers.js';
|
|
6
6
|
export * from './org-hierarchy.js';
|
package/lib/helpers/index.js
CHANGED
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
// SPDX-License-Identifier: Apache-2.0
|
|
3
3
|
export * from './crud-helpers.js';
|
|
4
4
|
export { businessCalendar, responseDueAt, SUPPORT_TARGET_MEASURES, } from './support-calendar.js';
|
|
5
|
-
export { requireVisibilityWriteAccess, checkVisibilityWriteAccess, checkWriteAccess, rejectForbiddenBulkRows, resolveVisibility, } from './access-helpers.js';
|
|
5
|
+
export { requireVisibilityWriteAccess, checkVisibilityWriteAccess, checkWriteAccess, rejectForbiddenBulkRows, resolveVisibility, VISIBILITY_WRITE_REFUSAL, } from './access-helpers.js';
|
|
6
6
|
export { loadAndRestore, loadAndPurge, } from './restore-helpers.js';
|
|
7
7
|
export * from './sse-helpers.js';
|
|
8
8
|
export * from './org-hierarchy.js';
|
|
9
9
|
export { fetchParentOrgId, fetchOrgDescendants, fetchOrgNames, fetchOrgMembership, } from './org-hierarchy-http.js';
|
|
10
10
|
export * from './content-disposition.js';
|
|
11
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9oZWxwZXJzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLCtDQUErQztBQUMvQyxzQ0FBc0M7QUFFdEMsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxPQUFPLEVBQ0wsZ0JBQWdCLEVBQ2hCLGFBQWEsRUFDYix1QkFBdUIsR0FHeEIsTUFBTSx1QkFBdUIsQ0FBQztBQUMvQixPQUFPLEVBQ0wsNEJBQTRCLEVBQzVCLDBCQUEwQixFQUMxQixnQkFBZ0IsRUFDaEIsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQix3QkFBd0IsR0FNekIsTUFBTSxxQkFBcUIsQ0FBQztBQUM3QixPQUFPLEVBQ0wsY0FBYyxFQUNkLFlBQVksR0FLYixNQUFNLHNCQUFzQixDQUFDO0FBQzlCLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxPQUFPLEVBQ0wsZ0JBQWdCLEVBQ2hCLG1CQUFtQixFQUNuQixhQUFhLEVBQ2Isa0JBQWtCLEdBQ25CLE1BQU0seUJBQXlCLENBQUM7QUFDakMsY0FBYywwQkFBMEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAyMDI2IFBpcGVsaW5lIEJ1aWxkZXIgQ29udHJpYnV0b3JzXG4vLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMFxuXG5leHBvcnQgKiBmcm9tICcuL2NydWQtaGVscGVycy5qcyc7XG5leHBvcnQge1xuICBidXNpbmVzc0NhbGVuZGFyLFxuICByZXNwb25zZUR1ZUF0LFxuICBTVVBQT1JUX1RBUkdFVF9NRUFTVVJFUyxcbiAgdHlwZSBCdXNpbmVzc0NhbGVuZGFyLFxuICB0eXBlIFN1cHBvcnRUYXJnZXRLaW5kLFxufSBmcm9tICcuL3N1cHBvcnQtY2FsZW5kYXIuanMnO1xuZXhwb3J0IHtcbiAgcmVxdWlyZVZpc2liaWxpdHlXcml0ZUFjY2VzcyxcbiAgY2hlY2tWaXNpYmlsaXR5V3JpdGVBY2Nlc3MsXG4gIGNoZWNrV3JpdGVBY2Nlc3MsXG4gIHJlamVjdEZvcmJpZGRlbkJ1bGtSb3dzLFxuICByZXNvbHZlVmlzaWJpbGl0eSxcbiAgVklTSUJJTElUWV9XUklURV9SRUZVU0FMLFxuICB0eXBlIFZpc2liaWxpdHlXcml0ZVRhcmdldCxcbiAgdHlwZSBWaXNpYmlsaXR5V3JpdGVWZXJkaWN0LFxuICB0eXBlIFZpc2liaWxpdHlXcml0ZVJlZnVzYWwsXG4gIHR5cGUgV3JpdGVBY2Nlc3MsXG4gIHR5cGUgQnVsa1dyaXRlUm93LFxufSBmcm9tICcuL2FjY2Vzcy1oZWxwZXJzLmpzJztcbmV4cG9ydCB7XG4gIGxvYWRBbmRSZXN0b3JlLFxuICBsb2FkQW5kUHVyZ2UsXG4gIHR5cGUgUmVzdG9yYWJsZVNlcnZpY2UsXG4gIHR5cGUgUHVyZ2VhYmxlU2VydmljZSxcbiAgdHlwZSBUb21ic3RvbmVBdXRob3JpemVyLFxuICB0eXBlIFRvbWJzdG9uZVJvdXRlT3B0aW9ucyxcbn0gZnJvbSAnLi9yZXN0b3JlLWhlbHBlcnMuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9zc2UtaGVscGVycy5qcyc7XG5leHBvcnQgKiBmcm9tICcuL29yZy1oaWVyYXJjaHkuanMnO1xuZXhwb3J0IHtcbiAgZmV0Y2hQYXJlbnRPcmdJZCxcbiAgZmV0Y2hPcmdEZXNjZW5kYW50cyxcbiAgZmV0Y2hPcmdOYW1lcyxcbiAgZmV0Y2hPcmdNZW1iZXJzaGlwLFxufSBmcm9tICcuL29yZy1oaWVyYXJjaHktaHR0cC5qcyc7XG5leHBvcnQgKiBmcm9tICcuL2NvbnRlbnQtZGlzcG9zaXRpb24uanMnO1xuIl19
|
|
@@ -130,4 +130,4 @@ export async function fetchOrgMembership(orgId, userId, opts = {}) {
|
|
|
130
130
|
const isMember = res.body?.data?.isMember;
|
|
131
131
|
return typeof isMember === 'boolean' ? isMember : undefined;
|
|
132
132
|
}
|
|
133
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JnLWhpZXJhcmNoeS1odHRwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hlbHBlcnMvb3JnLWhpZXJhcmNoeS1odHRwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLCtDQUErQztBQUMvQyxzQ0FBc0M7QUFFdEM7Ozs7Ozs7Ozs7Ozs7Ozs7R0FnQkc7QUFFSCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUN2RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDNUQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRTlELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQWdDL0Qsd0VBQXdFO0FBQ3hFLFNBQVMsZUFBZSxDQUN0QixJQUE2QixFQUM3QixTQUFpQjtJQUVqQixNQUFNLE1BQU0sR0FBRyxJQUFJLGtCQUFrQixDQUFDLElBQUksQ0FBQyxPQUFPLElBQUksZUFBZSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7SUFDbkYsTUFBTSxPQUFPLEdBQTJCO1FBQ3RDLGFBQWEsRUFBRSxvQkFBb0IsQ0FBQztZQUNsQyxXQUFXLEVBQUUsSUFBSSxDQUFDLFdBQVcsSUFBSSxlQUFlLEVBQUU7WUFDbEQsS0FBSyxFQUFFLElBQUksQ0FBQyxTQUFTLElBQUksU0FBUztZQUNsQyxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUksSUFBSSxRQUFRO1NBQzVCLENBQUM7UUFDRixHQUFHLElBQUksQ0FBQyxPQUFPO0tBQ2hCLENBQUM7SUFDRixPQUFPLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxDQUFDO0FBQzdCLENBQUM7QUFFRCxTQUFTLFlBQVksQ0FDbkIsS0FBYSxFQUNiLE1BQWdDLEVBQ2hDLElBQTZCO0lBRTdCLE9BQU8sRUFBRSxHQUFHLGVBQWUs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QUM7QUFDOUQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAyMDI2IFBpcGVsaW5lIEJ1aWxkZXIgQ29udHJpYnV0b3JzXG4vLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMFxuXG4vKipcbiAqIE9yZyDihpIgdGVhbSBoaWVyYXJjaHkgbG9va3VwcyBvdmVyIEhUVFAgYWdhaW5zdCB0aGUgcGxhdGZvcm0gc2VydmljZS5cbiAqXG4gKiBUaGUgTW9uZ29vc2UtYmFzZWQgdHJhdmVyc2FsIGluIHtAbGluayAuL29yZy1oaWVyYXJjaHl9IGlzIGZvciBzZXJ2aWNlcyB0aGF0XG4gKiBvd24gdGhlIG9yZyB0YWJsZSAocGxhdGZvcm0sIHF1b3RhKS4gRXZlcnlvbmUgZWxzZSByZWFkcyB0aGUgaGllcmFyY2h5IG92ZXJcbiAqIHRoZSB3aXJlIGZyb20gcGxhdGZvcm0ncyBhdXRob3JpdGF0aXZlIGAvb3JnYW5pemF0aW9uLzppZC8qYCBlbmRwb2ludHMuIFRoaXNcbiAqIG1vZHVsZSBjZW50cmFsaXplcyB0aGUgdHJhbnNwb3J0IGZvciB0aG9zZSByZWFkcyDigJQgVVJMIGNvbnN0cnVjdGlvbiwgdGhlXG4gKiBzaWduZWQgc2VydmljZS10b2tlbiBhdXRoIGhlYWRlciwgYW5kIHRpbWVvdXQrcmV0cnkgdmlhIHRoZSBzaGFyZWRcbiAqIHtAbGluayBJbnRlcm5hbEh0dHBDbGllbnR9IOKAlCBzbyBjb21wbGlhbmNlLCByZXBvcnRpbmcsIGFuZCBhbnkgZnV0dXJlIGNhbGxlclxuICogc2hhcmUgT05FIG1lY2hhbmlzbSBpbnN0ZWFkIG9mIGVhY2ggaGFuZC1yb2xsaW5nIGEgYGZldGNoYC9jbGllbnQgd2l0aCBpdHNcbiAqIG93biBhdXRoIGFuZCBmYWlsdXJlIHNlbWFudGljcy5cbiAqXG4gKiBUaGVzZSBmdW5jdGlvbnMgZGVsaWJlcmF0ZWx5IGRvIE5PVCBzd2FsbG93IHRyYW5zcG9ydCBlcnJvcnM6IGEgY29ubmVjdGlvblxuICogZmFpbHVyZS90aW1lb3V0IHByb3BhZ2F0ZXMgc28gZWFjaCBjYWxsZXIga2VlcHMgaXRzIG93biBmYWxsYmFjayBwb2xpY3kgKGxvZ1xuICogbGV2ZWwsIGRlZ3JhZGUtdG8tc2VsZiB2cy4gcmV0dXJuLXVuZGVmaW5lZCkuIEEgbm9uLTJ4eCByZXNwb25zZSBpcyB0cmVhdGVkXG4gKiBhcyBcIm5vIGRhdGFcIiAocmV0dXJucyB1bmRlZmluZWQpLlxuICovXG5cbmltcG9ydCB7IGdldFNlcnZpY2VBdXRoSGVhZGVyIH0gZnJvbSAnLi4vbWlkZGxld2FyZS9zZXJ2aWNlLXRva2Vucy5qcyc7XG5pbXBvcnQgeyBTWVNURU1fT1JHX0lEIH0gZnJvbSAnLi4vbWlkZGxld2FyZS9zeXN0ZW0tb3JnLmpzJztcbmltcG9ydCB7IEludGVybmFsSHR0cENsaWVudCB9IGZyb20gJy4uL3NlcnZpY2VzL2h0dHAtY2xpZW50LmpzJztcbmltcG9ydCB7IHNlcnZpY2VJZGVudGl0eSB9IGZyb20gJy4uL3NlcnZpY2VzL3NlcnZpY2Uta2V5cy5qcyc7XG5pbXBvcnQgdHlwZSB7IFNlcnZpY2VDb25maWcgfSBmcm9tICcuLi90eXBlcy9jb21tb24uanMnO1xuaW1wb3J0IHsgc2VydmljZUVuZHBvaW50IH0gZnJvbSAnLi4vdXRpbHMvc2VydmljZS1yZWdpc3RyeS5qcyc7XG5cbi8qKiBPcHRpb25zIHNoYXJlZCBieSB0aGUgcGxhdGZvcm0gb3JnLWhpZXJhcmNoeSBIVFRQIGxvb2t1cHMuICovXG5leHBvcnQgaW50ZXJmYWNlIE9yZ0hpZXJhcmNoeUh0dHBPcHRpb25zIHtcbiAgLyoqIFBsYXRmb3JtIHNlcnZpY2UgaG9zdC9wb3J0ICgrIG9wdGlvbmFsIGRlZmF1bHQgdGltZW91dCkuIERlZmF1bHRzIHRvIHRoZVxuICAgKiAgcmVnaXN0cnkncyBwbGF0Zm9ybSBlbmRwb2ludC4gKi9cbiAgc2VydmljZT86IFNlcnZpY2VDb25maWc7XG4gIC8qKiBTZXJ2aWNlIG5hbWUgbWludGVkIGludG8gdGhlIHNlcnZpY2UtYXV0aCBKV1QgYHN1YmAuIERlZmF1bHRzIHRvIHRoaXNcbiAgICogIHByb2Nlc3MncyBvd24gaWRlbnRpdHkgKGBTRVJWSUNFX05BTUVgKS4gKi9cbiAgc2VydmljZU5hbWU/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBPcmcgaWQgZW1iZWRkZWQgaW4gdGhlIHNpZ25lZCBzZXJ2aWNlIHRva2VuJ3Mgb3JnIGNvbnRleHQuIERlZmF1bHRzIHRvIHRoZVxuICAgKiBxdWVyaWVkIGBvcmdJZGA7IHBhc3MgYSBzeXN0ZW0gb3JnIGlkIGZvciBhIHN5c3RlbS1zY29wZWQgbG9va3VwLlxuICAgKi9cbiAgYXV0aE9yZ0lkPzogc3RyaW5nO1xuICAvKiogUm9sZSBjYXJyaWVkIGJ5IHRoZSBzZXJ2aWNlIHRva2VuIChkZWZhdWx0ICdtZW1iZXInIOKAlCBsZWFzdCBwcml2aWxlZ2UpLiAqL1xuICByb2xlPzogJ293bmVyJyB8ICdhZG1pbicgfCAnbWVtYmVyJztcbiAgLyoqIEV4dHJhIHJlcXVlc3QgaGVhZGVycyBtZXJnZWQgYWZ0ZXIgYEF1dGhvcml6YXRpb25gIChlLmcuIGB4LW9yZy1pZGApLiAqL1xuICBoZWFkZXJzPzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbiAgLyoqIFBlci1yZXF1ZXN0IHRpbWVvdXQgb3ZlcnJpZGUgaW4gbXMgKGZhbGxzIGJhY2sgdG8gdGhlIGNsaWVudCBkZWZhdWx0KS4gKi9cbiAgdGltZW91dD86IG51bWJlcjtcbiAgLyoqXG4gICAqIFdoZW4gdHJ1ZSwgYSBub24tMnh4IHJlc3BvbnNlIFRIUk9XUyBpbnN0ZWFkIG9mIHJlc29sdmluZyB0byBgdW5kZWZpbmVkYC5cbiAgICogRGVmYXVsdCBmYWxzZSAoYSA0eHgvNXh4IG1hcHMgdG8gYHVuZGVmaW5lZGAsIHRoZSBmYWlsLXNvZnQgcG9saWN5IHRoZVxuICAgKiBtZXNzYWdlL3JlcG9ydGluZyByb290LXJlc29sdXRpb24gY2FsbGVycyByZWx5IG9uKS4gQSBjYWxsZXIgZm9yIHdob20gYVxuICAgKiBmYWlsZWQgbG9va3VwIG11c3QgZmFpbC1DTE9TRUQg4oCUIGUuZy4gYSBjb21wbGlhbmNlIHNjYW4sIHdoZXJlIHRyZWF0aW5nIGFcbiAgICogdGVhbSBvcmcgYXMgcGFyZW50LWxlc3Mgd291bGQgc2lsZW50bHkgc2tpcCBpbmhlcml0ZWQgYmxvY2tpbmcgcnVsZXMg4oCUIHNldHNcbiAgICogdGhpcyBzbyBpdCBjYW4gZGlzdGluZ3Vpc2ggXCJyb290IG9yZ1wiIChgdW5kZWZpbmVkYCkgZnJvbSBcImxvb2t1cCBmYWlsZWRcIi5cbiAgICovXG4gIHRocm93T25IdHRwRXJyb3I/OiBib29sZWFuO1xufVxuXG4vKiogVGhlIHBsYXRmb3JtIGNsaWVudCArIHNpZ25lZCBzZXJ2aWNlLWF1dGggaGVhZGVycyBmb3Igb25lIGxvb2t1cC4gKi9cbmZ1bmN0aW9uIHBsYXRmb3JtUmVxdWVzdChcbiAgb3B0czogT3JnSGllcmFyY2h5SHR0cE9wdGlvbnMsXG4gIGF1dGhPcmdJZDogc3RyaW5nLFxuKTogeyBjbGllbnQ6IEludGVybmFsSHR0cENsaWVudDsgaGVhZGVyczogUmVjb3JkPHN0cmluZywgc3RyaW5nPiB9IHtcbiAgY29uc3QgY2xpZW50ID0gbmV3IEludGVybmFsSHR0cENsaWVudChvcHRzLnNlcnZpY2UgPz8gc2VydmljZUVuZHBvaW50KCdwbGF0Zm9ybScpKTtcbiAgY29uc3QgaGVhZGVyczogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgICBBdXRob3JpemF0aW9uOiBnZXRTZXJ2aWNlQXV0aEhlYWRlcih7XG4gICAgICBzZXJ2aWNlTmFtZTogb3B0cy5zZXJ2aWNlTmFtZSA/PyBzZXJ2aWNlSWRlbnRpdHkoKSxcbiAgICAgIG9yZ0lkOiBvcHRzLmF1dGhPcmdJZCA/PyBhdXRoT3JnSWQsXG4gICAgICByb2xlOiBvcHRzLnJvbGUgPz8gJ21lbWJlcicsXG4gICAgfSksXG4gICAgLi4ub3B0cy5oZWFkZXJzLFxuICB9O1xuICByZXR1cm4geyBjbGllbnQsIGhlYWRlcnMgfTtcbn1cblxuZnVuY3Rpb24gYnVpbGRSZXF1ZXN0KFxuICBvcmdJZDogc3RyaW5nLFxuICBzdWZmaXg6ICdwYXJlbnQnIHwgJ2Rlc2NlbmRhbnRzJyxcbiAgb3B0czogT3JnSGllcmFyY2h5SHR0cE9wdGlvbnMsXG4pOiB7IGNsaWVudDogSW50ZXJuYWxIdHRwQ2xpZW50OyBwYXRoOiBzdHJpbmc7IGhlYWRlcnM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gfSB7XG4gIHJldHVybiB7IC4uLnBsYXRmb3JtUmVxdWVzdChvcHRzLCBvcmdJZCksIHBhdGg6IGAvb3JnYW5pemF0aW9uLyR7ZW5jb2RlVVJJQ29tcG9uZW50KG9yZ0lkKX0vJHtzdWZmaXh9YCB9O1xufVxuXG4vKipcbiAqIFJlc29sdmUgYW4gb3JnJ3MgZGlyZWN0IHBhcmVudCBpZCB2aWEgcGxhdGZvcm0nc1xuICogYEdFVCAvb3JnYW5pemF0aW9uLzppZC9wYXJlbnRgLiBSZXR1cm5zIGB1bmRlZmluZWRgIGZvciBhIHJvb3Qgb3JnLiBBIG5vbi0yeHhcbiAqIHJlc3BvbnNlIHJlc29sdmVzIHRvIGB1bmRlZmluZWRgIGJ5IGRlZmF1bHQsIG9yIFRIUk9XUyB3aGVuXG4gKiBgdGhyb3dPbkh0dHBFcnJvcmAgaXMgc2V0LiBBbHdheXMgdGhyb3dzIG9uIGEgdHJhbnNwb3J0IGZhaWx1cmVcbiAqIChjb25uZWN0aW9uL3RpbWVvdXQpIHNvIHRoZSBjYWxsZXIgY2FuIGFwcGx5IGl0cyBvd24gZmFsbGJhY2suXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBmZXRjaFBhcmVudE9yZ0lkKG9yZ0lkOiBzdHJpbmcsIG9wdHM6IE9yZ0hpZXJhcmNoeUh0dHBPcHRpb25zID0ge30pOiBQcm9taXNlPHN0cmluZyB8IHVuZGVmaW5lZD4ge1xuICBjb25zdCB7IGNsaWVudCwgcGF0aCwgaGVhZGVycyB9ID0gYnVpbGRSZXF1ZXN0KG9yZ0lkLCAncGFyZW50Jywgb3B0cyk7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGNsaWVudC5nZXQ8eyBkYXRhPzogeyBwYXJlbnRPcmdJZD86IHN0cmluZyB8IG51bGwgfSB9PihwYXRoLCB7IGhlYWRlcnMsIHRpbWVvdXQ6IG9wdHMudGltZW91dCB9KTtcbiAgaWYgKHJlcy5zdGF0dXNDb2RlID49IDQwMCkge1xuICAgIGlmIChvcHRzLnRocm93T25IdHRwRXJyb3IpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgcGFyZW50LW9yZyBsb29rdXAgZmFpbGVkIGZvciAke29yZ0lkfTogSFRUUCAke3Jlcy5zdGF0dXNDb2RlfWApO1xuICAgIH1cbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIHJldHVybiByZXMuYm9keT8uZGF0YT8ucGFyZW50T3JnSWQgPz8gdW5kZWZpbmVkO1xufVxuXG4vKipcbiAqIFJlc29sdmUgYFtzZWxmLCAuLi5kZXNjZW5kYW50T3JnSWRzXWAgZm9yIGFuIG9yZyB2aWEgcGxhdGZvcm0nc1xuICogYEdFVCAvb3JnYW5pemF0aW9uLzppZC9kZXNjZW5kYW50c2AuIFJldHVybnMgdGhlIGlkIGxpc3Qgb25seSB3aGVuIGl0IGlzXG4gKiBsYXJnZXIgdGhhbiB0aGUgb3JnIGl0c2VsZiAoYSByZWFsIHN1YnRyZWUpLCBlbHNlIGB1bmRlZmluZWRgOyBhbHNvXG4gKiBgdW5kZWZpbmVkYCBvbiBhIG5vbi0yeHggcmVzcG9uc2UuIFRocm93cyBvbiBhIHRyYW5zcG9ydCBmYWlsdXJlIHNvIHRoZVxuICogY2FsbGVyIGNhbiBhcHBseSBpdHMgb3duIGZhbGxiYWNrLlxuICpcbiAqIFRoaXMgaXMgYSB0cnVzdCBib3VuZGFyeTogdGhlIHJlc3BvbnNlIGlzIHZhbGlkYXRlZCBlbGVtZW50LWJ5LWVsZW1lbnQgcmF0aGVyXG4gKiB0aGFuIGNhc3Qg4oCUIGV2ZXJ5IGVudHJ5IG11c3QgYmUgYSBzdHJpbmcsIGFuZCBhbnkgbm9uLXN0cmluZyBpcyBkcm9wcGVkIOKAlCBzb1xuICogYSBtYWxmb3JtZWQgcGF5bG9hZCBjYW4gbmV2ZXIgc211Z2dsZSBhIG5vbi1zdHJpbmcgaW50byB0aGUgcmV0dXJuZWRcbiAqIGBzdHJpbmdbXWAuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBmZXRjaE9yZ0Rlc2NlbmRhbnRzKG9yZ0lkOiBzdHJpbmcsIG9wdHM6IE9yZ0hpZXJhcmNoeUh0dHBPcHRpb25zID0ge30pOiBQcm9taXNlPHN0cmluZ1tdIHwgdW5kZWZpbmVkPiB7XG4gIGNvbnN0IHsgY2xpZW50LCBwYXRoLCBoZWFkZXJzIH0gPSBidWlsZFJlcXVlc3Qob3JnSWQsICdkZXNjZW5kYW50cycsIG9wdHMpO1xuICBjb25zdCByZXMgPSBhd2FpdCBjbGllbnQuZ2V0PHsgZGF0YT86IHsgb3JnSWRzPzogdW5rbm93biB9IH0+KHBhdGgsIHsgaGVhZGVycywgdGltZW91dDogb3B0cy50aW1lb3V0IH0pO1xuICBpZiAocmVzLnN0YXR1c0NvZGUgPj0gNDAwKSByZXR1cm4gdW5kZWZpbmVkO1xuICBjb25zdCBpZHMgPSByZXMuYm9keT8uZGF0YT8ub3JnSWRzO1xuICBpZiAoIUFycmF5LmlzQXJyYXkoaWRzKSkgcmV0dXJuIHVuZGVmaW5lZDtcbiAgY29uc3Qgb3JnSWRzID0gaWRzLmZpbHRlcigoaWQpOiBpZCBpcyBzdHJpbmcgPT4gdHlwZW9mIGlkID09PSAnc3RyaW5nJyk7XG4gIC8vIE9ubHkgbWVhbmluZ2Z1bCB3aGVuIHRoZSAodmFsaWRhdGVkKSBzdWJ0cmVlIGlzIGxhcmdlciB0aGFuIHRoZSBvcmcgaXRzZWxmLlxuICByZXR1cm4gb3JnSWRzLmxlbmd0aCA+IDEgPyBvcmdJZHMgOiB1bmRlZmluZWQ7XG59XG5cbi8qKlxuICogQmF0Y2gtcmVzb2x2ZSBvcmcgaWQg4oaSIGRpc3BsYXkgTkFNRSB2aWEgcGxhdGZvcm0ncyBgUE9TVCAvb3JnYW5pemF0aW9uL25hbWVzYC5cbiAqIFJldHVybnMgYSBsb3dlcmNhc2VkIGB7IFtvcmdJZF06IG5hbWUgfWAgbWFwIOKAlCBpZHMgdGhlIHBsYXRmb3JtIGRvZXNuJ3Qga25vd1xuICogYXJlIHNpbXBseSBhYnNlbnQgKGNhbGxlciBmYWxscyBiYWNrIHRvIHRoZSByYXcgaWQpLlxuICpcbiAqIEJlc3QtZWZmb3J0IGJ5IGRlc2lnbjogYSBub24tMnh4IHJlc3BvbnNlIChlLmcuIHRoZSBjYWxsZXIgaXNuJ3QgYSBzZXJ2aWNlXG4gKiBwcmluY2lwYWwpIG9yIGEgbWFsZm9ybWVkIGJvZHkgeWllbGRzIGB7fWAsIGFuZCBpdCB0aHJvd3MgT05MWSBvbiBhIHRyYW5zcG9ydFxuICogZmFpbHVyZSAoY29ubmVjdGlvbi90aW1lb3V0KSDigJQgbWF0Y2hpbmcgdGhlIGZhaWwtc29mdCBwb2xpY3kgb2YgdGhlIG90aGVyXG4gKiBsb29rdXBzIGhlcmUgc28gYSBuYW1lLWVucmljaG1lbnQgcmVhZCBuZXZlciBmYWlscyB0aGUgY2FsbGVyJ3MgcmVxdWVzdC4gVGhlXG4gKiByZXNwb25zZSBpcyB2YWxpZGF0ZWQgZW50cnktYnktZW50cnkgKG9ubHkgc3RyaW5n4oaSc3RyaW5nIHBhaXJzIHN1cnZpdmUpLCBzbyBhXG4gKiBtYWxmb3JtZWQgcGF5bG9hZCBjYW4ndCBzbXVnZ2xlIGEgbm9uLXN0cmluZyBpbnRvIHRoZSByZXR1cm5lZCBtYXAuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBmZXRjaE9yZ05hbWVzKFxuICBvcmdJZHM6IHN0cmluZ1tdLFxuICBvcHRzOiBPcmdIaWVyYXJjaHlIdHRwT3B0aW9ucyA9IHt9LFxuKTogUHJvbWlzZTxSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiB7XG4gIGlmIChvcmdJZHMubGVuZ3RoID09PSAwKSByZXR1cm4ge307XG4gIC8vIEEgY3Jvc3Mtb3JnIHJlZ2lzdHJ5IHJlYWQsIG5vdCBhIHRlbmFudC1zY29wZWQgb3Ag4oCUIGRlZmF1bHQgdG8gdGhlIHN5c3RlbVxuICAvLyBvcmcgY29udGV4dCB3aGVuIHRoZSBjYWxsZXIgZG9lc24ndCBwaW4gb25lLlxuICBjb25zdCB7IGNsaWVudCwgaGVhZGVycyB9ID0gcGxhdGZvcm1SZXF1ZXN0KG9wdHMsIFNZU1RFTV9PUkdfSUQpO1xuICBjb25zdCByZXMgPSBhd2FpdCBjbGllbnQucG9zdDx7IGRhdGE/OiB7IG5hbWVzPzogdW5rbm93biB9IH0+KFxuICAgICcvb3JnYW5pemF0aW9uL25hbWVzJyxcbiAgICB7IG9yZ0lkcyB9LFxuICAgIHsgaGVhZGVycywgdGltZW91dDogb3B0cy50aW1lb3V0IH0sXG4gICk7XG4gIGlmIChyZXMuc3RhdHVzQ29kZSA+PSA0MDApIHJldHVybiB7fTtcbiAgY29uc3QgbmFtZXMgPSByZXMuYm9keT8uZGF0YT8ubmFtZXM7XG4gIGlmICghbmFtZXMgfHwgdHlwZW9mIG5hbWVzICE9PSAnb2JqZWN0JykgcmV0dXJuIHt9O1xuICBjb25zdCBvdXQ6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7fTtcbiAgZm9yIChjb25zdCBbaWQsIG5hbWVdIG9mIE9iamVjdC5lbnRyaWVzKG5hbWVzIGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+KSkge1xuICAgIGlmICh0eXBlb2YgbmFtZSA9PT0gJ3N0cmluZycpIG91dFtpZC50b0xvd2VyQ2FzZSgpXSA9IG5hbWU7XG4gIH1cbiAgcmV0dXJuIG91dDtcbn1cblxuLyoqXG4gKiBDaGVjayB3aGV0aGVyIGB1c2VySWRgIGlzIGFuIEFDVElWRSBtZW1iZXIgb2YgYG9yZ0lkYCB2aWEgcGxhdGZvcm0nc1xuICogYEdFVCAvb3JnYW5pemF0aW9uLzppZC9tZW1iZXJzLzp1c2VySWQvZXhpc3RzYC4gUmV0dXJucyB0aGUgYm9vbGVhbiB0aGVcbiAqIHBsYXRmb3JtIHJlcG9ydHMuXG4gKlxuICogUmV0dXJucyBgdW5kZWZpbmVkYCAo4oCUIFwiY291bGRuJ3QgZGV0ZXJtaW5lXCIpIG9uIGEgbm9uLTJ4eCByZXNwb25zZSwgYW5kXG4gKiB0aHJvd3Mgb25seSBvbiBhIHRyYW5zcG9ydCBmYWlsdXJlIChjb25uZWN0aW9uL3RpbWVvdXQpIOKAlCBzbyB0aGUgY2FsbGVyXG4gKiBkaXN0aW5ndWlzaGVzIGEgZGVmaW5pdGl2ZSBub3QtYS1tZW1iZXIgKGBmYWxzZWApIGZyb20gYW4gaW5kZXRlcm1pbmF0ZVxuICogbG9va3VwIChgdW5kZWZpbmVkYCkgYW5kIGFwcGxpZXMgaXRzIG93biBmYWlsLW9wZW4vY2xvc2VkIHBvbGljeS5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGZldGNoT3JnTWVtYmVyc2hpcChcbiAgb3JnSWQ6IHN0cmluZyxcbiAgdXNlcklkOiBzdHJpbmcsXG4gIG9wdHM6IE9yZ0hpZXJhcmNoeUh0dHBPcHRpb25zID0ge30sXG4pOiBQcm9taXNlPGJvb2xlYW4gfCB1bmRlZmluZWQ+IHtcbiAgY29uc3QgeyBjbGllbnQsIGhlYWRlcnMgfSA9IHBsYXRmb3JtUmVxdWVzdChvcHRzLCBvcmdJZCk7XG4gIGNvbnN0IHBhdGggPSBgL29yZ2FuaXphdGlvbi8ke2VuY29kZVVSSUNvbXBvbmVudChvcmdJZCl9L21lbWJlcnMvJHtlbmNvZGVVUklDb21wb25lbnQodXNlcklkKX0vZXhpc3RzYDtcbiAgY29uc3QgcmVzID0gYXdhaXQgY2xpZW50LmdldDx7IGRhdGE/OiB7IGlzTWVtYmVyPzogdW5rbm93biB9IH0+KHBhdGgsIHsgaGVhZGVycywgdGltZW91dDogb3B0cy50aW1lb3V0IH0pO1xuICBpZiAocmVzLnN0YXR1c0NvZGUgPj0gNDAwKSByZXR1cm4gdW5kZWZpbmVkO1xuICBjb25zdCBpc01lbWJlciA9IHJlcy5ib2R5Py5kYXRhPy5pc01lbWJlcjtcbiAgcmV0dXJuIHR5cGVvZiBpc01lbWJlciA9PT0gJ2Jvb2xlYW4nID8gaXNNZW1iZXIgOiB1bmRlZmluZWQ7XG59XG4iXX0=
|
|
133
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JnLWhpZXJhcmNoeS1odHRwLmpzIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaGVscGVycy9vcmctaGllcmFyY2h5LWh0dHAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0NBQStDO0FBQy9DLHNDQUFzQztBQUV0Qzs7Ozs7Ozs7Ozs7Ozs7OztHQWdCRztBQUVILE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFOUQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBZ0MvRCx3RUFBd0U7QUFDeEUsU0FBUyxlQUFlLENBQ3RCLElBQTZCLEVBQzdCLFNBQWlCO0lBRWpCLE1BQU0sTUFBTSxHQUFHLElBQUksa0JBQWtCLENBQUMsSUFBSSxDQUFDLE9BQU8sSUFBSSxlQUFlLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztJQUNuRixNQUFNLE9BQU8sR0FBMkI7UUFDdEMsYUFBYSxFQUFFLG9CQUFvQixDQUFDO1lBQ2xDLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVyxJQUFJLGVBQWUsRUFBRTtZQUNsRCxLQUFLLEVBQUUsSUFBSSxDQUFDLFNBQVMsSUFBSSxTQUFTO1lBQ2xDLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSSxJQUFJLFFBQVE7U0FDNUIsQ0FBQztRQUNGLEdBQUcsSUFBSSxDQUFDLE9BQU87S0FDaEIsQ0FBQztJQUNGLE9BQU8sRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLENBQUM7QUFDN0IsQ0FBQztBQUVELFNBQVMsWUFBWSxDQUNuQixLQUFhLEVBQ2IsTUFBZ0MsRUFDaEMsSUFBNkI7SUFFN0IsT0FBTyxFQUFFLEdBQUcsZUFBZSxDQUFDLElBQUksRUFBRSxL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c291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IDIwMjYgUGlwZWxpbmUgQnVpbGRlciBDb250cmlidXRvcnNcbi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG5cbi8qKlxuICogT3JnIOKGkiB0ZWFtIGhpZXJhcmNoeSBsb29rdXBzIG92ZXIgSFRUUCBhZ2FpbnN0IHRoZSBwbGF0Zm9ybSBzZXJ2aWNlLlxuICpcbiAqIFRoZSBNb25nb29zZS1iYXNlZCB0cmF2ZXJzYWwgaW4ge0BsaW5rIC4vb3JnLWhpZXJhcmNoeX0gaXMgZm9yIHNlcnZpY2VzIHRoYXRcbiAqIG93biB0aGUgb3JnIHRhYmxlIChwbGF0Zm9ybSwgcXVvdGEpLiBFdmVyeW9uZSBlbHNlIHJlYWRzIHRoZSBoaWVyYXJjaHkgb3ZlclxuICogdGhlIHdpcmUgZnJvbSBwbGF0Zm9ybSdzIGF1dGhvcml0YXRpdmUgYC9vcmdhbml6YXRpb24vOmlkLypgIGVuZHBvaW50cy4gVGhpc1xuICogbW9kdWxlIGNlbnRyYWxpemVzIHRoZSB0cmFuc3BvcnQgZm9yIHRob3NlIHJlYWRzIOKAlCBVUkwgY29uc3RydWN0aW9uLCB0aGVcbiAqIHNpZ25lZCBzZXJ2aWNlLXRva2VuIGF1dGggaGVhZGVyLCBhbmQgdGltZW91dCtyZXRyeSB2aWEgdGhlIHNoYXJlZFxuICoge0BsaW5rIEludGVybmFsSHR0cENsaWVudH0g4oCUIHNvIGNvbXBsaWFuY2UsIHJlcG9ydGluZywgYW5kIGFueSBmdXR1cmUgY2FsbGVyXG4gKiBzaGFyZSBPTkUgbWVjaGFuaXNtIGluc3RlYWQgb2YgZWFjaCBoYW5kLXJvbGxpbmcgYSBgZmV0Y2hgL2NsaWVudCB3aXRoIGl0c1xuICogb3duIGF1dGggYW5kIGZhaWx1cmUgc2VtYW50aWNzLlxuICpcbiAqIFRoZXNlIGZ1bmN0aW9ucyBkZWxpYmVyYXRlbHkgZG8gTk9UIHN3YWxsb3cgdHJhbnNwb3J0IGVycm9yczogYSBjb25uZWN0aW9uXG4gKiBmYWlsdXJlL3RpbWVvdXQgcHJvcGFnYXRlcyBzbyBlYWNoIGNhbGxlciBrZWVwcyBpdHMgb3duIGZhbGxiYWNrIHBvbGljeSAobG9nXG4gKiBsZXZlbCwgZGVncmFkZS10by1zZWxmIHZzLiByZXR1cm4tdW5kZWZpbmVkKS4gQSBub24tMnh4IHJlc3BvbnNlIGlzIHRyZWF0ZWRcbiAqIGFzIFwibm8gZGF0YVwiIChyZXR1cm5zIHVuZGVmaW5lZCkuXG4gKi9cblxuaW1wb3J0IHsgZ2V0U2VydmljZUF1dGhIZWFkZXIgfSBmcm9tICcuLi9taWRkbGV3YXJlL3NlcnZpY2UtdG9rZW5zLmpzJztcbmltcG9ydCB7IFNZU1RFTV9PUkdfSUQgfSBmcm9tICcuLi9taWRkbGV3YXJlL3N5c3RlbS1vcmcuanMnO1xuaW1wb3J0IHsgSW50ZXJuYWxIdHRwQ2xpZW50IH0gZnJvbSAnLi4vc2VydmljZXMvaHR0cC1jbGllbnQuanMnO1xuaW1wb3J0IHsgc2VydmljZUlkZW50aXR5IH0gZnJvbSAnLi4vc2VydmljZXMvc2VydmljZS1rZXlzLmpzJztcbmltcG9ydCB0eXBlIHsgU2VydmljZUNvbmZpZyB9IGZyb20gJy4uL3R5cGVzL2NvbW1vbi5qcyc7XG5pbXBvcnQgeyBzZXJ2aWNlRW5kcG9pbnQgfSBmcm9tICcuLi91dGlscy9zZXJ2aWNlLXJlZ2lzdHJ5LmpzJztcblxuLyoqIE9wdGlvbnMgc2hhcmVkIGJ5IHRoZSBwbGF0Zm9ybSBvcmctaGllcmFyY2h5IEhUVFAgbG9va3Vwcy4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgT3JnSGllcmFyY2h5SHR0cE9wdGlvbnMge1xuICAvKiogUGxhdGZvcm0gc2VydmljZSBob3N0L3BvcnQgKCsgb3B0aW9uYWwgZGVmYXVsdCB0aW1lb3V0KS4gRGVmYXVsdHMgdG8gdGhlXG4gICAqICByZWdpc3RyeSdzIHBsYXRmb3JtIGVuZHBvaW50LiAqL1xuICBzZXJ2aWNlPzogU2VydmljZUNvbmZpZztcbiAgLyoqIFNlcnZpY2UgbmFtZSBtaW50ZWQgaW50byB0aGUgc2VydmljZS1hdXRoIEpXVCBgc3ViYC4gRGVmYXVsdHMgdG8gdGhpc1xuICAgKiAgcHJvY2VzcydzIG93biBpZGVudGl0eSAoYFNFUlZJQ0VfTkFNRWApLiAqL1xuICBzZXJ2aWNlTmFtZT86IHN0cmluZztcbiAgLyoqXG4gICAqIE9yZyBpZCBlbWJlZGRlZCBpbiB0aGUgc2lnbmVkIHNlcnZpY2UgdG9rZW4ncyBvcmcgY29udGV4dC4gRGVmYXVsdHMgdG8gdGhlXG4gICAqIHF1ZXJpZWQgYG9yZ0lkYDsgcGFzcyBhIHN5c3RlbSBvcmcgaWQgZm9yIGEgc3lzdGVtLXNjb3BlZCBsb29rdXAuXG4gICAqL1xuICBhdXRoT3JnSWQ/OiBzdHJpbmc7XG4gIC8qKiBSb2xlIGNhcnJpZWQgYnkgdGhlIHNlcnZpY2UgdG9rZW4gKGRlZmF1bHQgJ21lbWJlcicg4oCUIGxlYXN0IHByaXZpbGVnZSkuICovXG4gIHJvbGU/OiAnb3duZXInIHwgJ2FkbWluJyB8ICdtZW1iZXInO1xuICAvKiogRXh0cmEgcmVxdWVzdCBoZWFkZXJzIG1lcmdlZCBhZnRlciBgQXV0aG9yaXphdGlvbmAgKGUuZy4gYHgtb3JnLWlkYCkuICovXG4gIGhlYWRlcnM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuICAvKiogUGVyLXJlcXVlc3QgdGltZW91dCBvdmVycmlkZSBpbiBtcyAoZmFsbHMgYmFjayB0byB0aGUgY2xpZW50IGRlZmF1bHQpLiAqL1xuICB0aW1lb3V0PzogbnVtYmVyO1xuICAvKipcbiAgICogV2hlbiB0cnVlLCBhIG5vbi0yeHggcmVzcG9uc2UgVEhST1dTIGluc3RlYWQgb2YgcmVzb2x2aW5nIHRvIGB1bmRlZmluZWRgLlxuICAgKiBEZWZhdWx0IGZhbHNlIChhIDR4eC81eHggbWFwcyB0byBgdW5kZWZpbmVkYCwgdGhlIGZhaWwtc29mdCBwb2xpY3kgdGhlXG4gICAqIG1lc3NhZ2UvcmVwb3J0aW5nIHJvb3QtcmVzb2x1dGlvbiBjYWxsZXJzIHJlbHkgb24pLiBBIGNhbGxlciBmb3Igd2hvbSBhXG4gICAqIGZhaWxlZCBsb29rdXAgbXVzdCBmYWlsLUNMT1NFRCDigJQgZS5nLiBhIGNvbXBsaWFuY2Ugc2Nhbiwgd2hlcmUgdHJlYXRpbmcgYVxuICAgKiB0ZWFtIG9yZyBhcyBwYXJlbnQtbGVzcyB3b3VsZCBzaWxlbnRseSBza2lwIGluaGVyaXRlZCBibG9ja2luZyBydWxlcyDigJQgc2V0c1xuICAgKiB0aGlzIHNvIGl0IGNhbiBkaXN0aW5ndWlzaCBcInJvb3Qgb3JnXCIgKGB1bmRlZmluZWRgKSBmcm9tIFwibG9va3VwIGZhaWxlZFwiLlxuICAgKi9cbiAgdGhyb3dPbkh0dHBFcnJvcj86IGJvb2xlYW47XG59XG5cbi8qKiBUaGUgcGxhdGZvcm0gY2xpZW50ICsgc2lnbmVkIHNlcnZpY2UtYXV0aCBoZWFkZXJzIGZvciBvbmUgbG9va3VwLiAqL1xuZnVuY3Rpb24gcGxhdGZvcm1SZXF1ZXN0KFxuICBvcHRzOiBPcmdIaWVyYXJjaHlIdHRwT3B0aW9ucyxcbiAgYXV0aE9yZ0lkOiBzdHJpbmcsXG4pOiB7IGNsaWVudDogSW50ZXJuYWxIdHRwQ2xpZW50OyBoZWFkZXJzOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+IH0ge1xuICBjb25zdCBjbGllbnQgPSBuZXcgSW50ZXJuYWxIdHRwQ2xpZW50KG9wdHMuc2VydmljZSA/PyBzZXJ2aWNlRW5kcG9pbnQoJ3BsYXRmb3JtJykpO1xuICBjb25zdCBoZWFkZXJzOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICAgIEF1dGhvcml6YXRpb246IGdldFNlcnZpY2VBdXRoSGVhZGVyKHtcbiAgICAgIHNlcnZpY2VOYW1lOiBvcHRzLnNlcnZpY2VOYW1lID8/IHNlcnZpY2VJZGVudGl0eSgpLFxuICAgICAgb3JnSWQ6IG9wdHMuYXV0aE9yZ0lkID8/IGF1dGhPcmdJZCxcbiAgICAgIHJvbGU6IG9wdHMucm9sZSA/PyAnbWVtYmVyJyxcbiAgICB9KSxcbiAgICAuLi5vcHRzLmhlYWRlcnMsXG4gIH07XG4gIHJldHVybiB7IGNsaWVudCwgaGVhZGVycyB9O1xufVxuXG5mdW5jdGlvbiBidWlsZFJlcXVlc3QoXG4gIG9yZ0lkOiBzdHJpbmcsXG4gIHN1ZmZpeDogJ3BhcmVudCcgfCAnZGVzY2VuZGFudHMnLFxuICBvcHRzOiBPcmdIaWVyYXJjaHlIdHRwT3B0aW9ucyxcbik6IHsgY2xpZW50OiBJbnRlcm5hbEh0dHBDbGllbnQ7IHBhdGg6IHN0cmluZzsgaGVhZGVyczogUmVjb3JkPHN0cmluZywgc3RyaW5nPiB9IHtcbiAgcmV0dXJuIHsgLi4ucGxhdGZvcm1SZXF1ZXN0KG9wdHMsIG9yZ0lkKSwgcGF0aDogYC9vcmdhbml6YXRpb24vJHtlbmNvZGVVUklDb21wb25lbnQob3JnSWQpfS8ke3N1ZmZpeH1gIH07XG59XG5cbi8qKlxuICogUmVzb2x2ZSBhbiBvcmcncyBkaXJlY3QgcGFyZW50IGlkIHZpYSBwbGF0Zm9ybSdzXG4gKiBgR0VUIC9vcmdhbml6YXRpb24vOmlkL3BhcmVudGAuIFJldHVybnMgYHVuZGVmaW5lZGAgZm9yIGEgcm9vdCBvcmcuIEEgbm9uLTJ4eFxuICogcmVzcG9uc2UgcmVzb2x2ZXMgdG8gYHVuZGVmaW5lZGAgYnkgZGVmYXVsdCwgb3IgVEhST1dTIHdoZW5cbiAqIGB0aHJvd09uSHR0cEVycm9yYCBpcyBzZXQuIEFsd2F5cyB0aHJvd3Mgb24gYSB0cmFuc3BvcnQgZmFpbHVyZVxuICogKGNvbm5lY3Rpb24vdGltZW91dCkgc28gdGhlIGNhbGxlciBjYW4gYXBwbHkgaXRzIG93biBmYWxsYmFjay5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGZldGNoUGFyZW50T3JnSWQob3JnSWQ6IHN0cmluZywgb3B0czogT3JnSGllcmFyY2h5SHR0cE9wdGlvbnMgPSB7fSk6IFByb21pc2U8c3RyaW5nIHwgdW5kZWZpbmVkPiB7XG4gIGNvbnN0IHsgY2xpZW50LCBwYXRoLCBoZWFkZXJzIH0gPSBidWlsZFJlcXVlc3Qob3JnSWQsICdwYXJlbnQnLCBvcHRzKTtcbiAgY29uc3QgcmVzID0gYXdhaXQgY2xpZW50LmdldDx7IGRhdGE/OiB7IHBhcmVudE9yZ0lkPzogc3RyaW5nIHwgbnVsbCB9IH0+KHBhdGgsIHsgaGVhZGVycywgdGltZW91dDogb3B0cy50aW1lb3V0IH0pO1xuICBpZiAocmVzLnN0YXR1c0NvZGUgPj0gNDAwKSB7XG4gICAgaWYgKG9wdHMudGhyb3dPbkh0dHBFcnJvcikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBwYXJlbnQtb3JnIGxvb2t1cCBmYWlsZWQgZm9yICR7b3JnSWR9OiBIVFRQICR7cmVzLnN0YXR1c0NvZGV9YCk7XG4gICAgfVxuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgcmV0dXJuIHJlcy5ib2R5Py5kYXRhPy5wYXJlbnRPcmdJZCA/PyB1bmRlZmluZWQ7XG59XG5cbi8qKlxuICogUmVzb2x2ZSBgW3NlbGYsIC4uLmRlc2NlbmRhbnRPcmdJZHNdYCBmb3IgYW4gb3JnIHZpYSBwbGF0Zm9ybSdzXG4gKiBgR0VUIC9vcmdhbml6YXRpb24vOmlkL2Rlc2NlbmRhbnRzYC4gUmV0dXJucyB0aGUgaWQgbGlzdCBvbmx5IHdoZW4gaXQgaXNcbiAqIGxhcmdlciB0aGFuIHRoZSBvcmcgaXRzZWxmIChhIHJlYWwgc3VidHJlZSksIGVsc2UgYHVuZGVmaW5lZGA7IGFsc29cbiAqIGB1bmRlZmluZWRgIG9uIGEgbm9uLTJ4eCByZXNwb25zZS4gVGhyb3dzIG9uIGEgdHJhbnNwb3J0IGZhaWx1cmUgc28gdGhlXG4gKiBjYWxsZXIgY2FuIGFwcGx5IGl0cyBvd24gZmFsbGJhY2suXG4gKlxuICogVGhpcyBpcyBhIHRydXN0IGJvdW5kYXJ5OiB0aGUgcmVzcG9uc2UgaXMgdmFsaWRhdGVkIGVsZW1lbnQtYnktZWxlbWVudCByYXRoZXJcbiAqIHRoYW4gY2FzdCDigJQgZXZlcnkgZW50cnkgbXVzdCBiZSBhIHN0cmluZywgYW5kIGFueSBub24tc3RyaW5nIGlzIGRyb3BwZWQg4oCUIHNvXG4gKiBhIG1hbGZvcm1lZCBwYXlsb2FkIGNhbiBuZXZlciBzbXVnZ2xlIGEgbm9uLXN0cmluZyBpbnRvIHRoZSByZXR1cm5lZFxuICogYHN0cmluZ1tdYC5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGZldGNoT3JnRGVzY2VuZGFudHMob3JnSWQ6IHN0cmluZywgb3B0czogT3JnSGllcmFyY2h5SHR0cE9wdGlvbnMgPSB7fSk6IFByb21pc2U8c3RyaW5nW10gfCB1bmRlZmluZWQ+IHtcbiAgY29uc3QgeyBjbGllbnQsIHBhdGgsIGhlYWRlcnMgfSA9IGJ1aWxkUmVxdWVzdChvcmdJZCwgJ2Rlc2NlbmRhbnRzJywgb3B0cyk7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGNsaWVudC5nZXQ8eyBkYXRhPzogeyBvcmdJZHM/OiB1bmtub3duIH0gfT4ocGF0aCwgeyBoZWFkZXJzLCB0aW1lb3V0OiBvcHRzLnRpbWVvdXQgfSk7XG4gIGlmIChyZXMuc3RhdHVzQ29kZSA+PSA0MDApIHJldHVybiB1bmRlZmluZWQ7XG4gIGNvbnN0IGlkcyA9IHJlcy5ib2R5Py5kYXRhPy5vcmdJZHM7XG4gIGlmICghQXJyYXkuaXNBcnJheShpZHMpKSByZXR1cm4gdW5kZWZpbmVkO1xuICBjb25zdCBvcmdJZHMgPSBpZHMuZmlsdGVyKChpZCk6IGlkIGlzIHN0cmluZyA9PiB0eXBlb2YgaWQgPT09ICdzdHJpbmcnKTtcbiAgLy8gT25seSBtZWFuaW5nZnVsIHdoZW4gdGhlICh2YWxpZGF0ZWQpIHN1YnRyZWUgaXMgbGFyZ2VyIHRoYW4gdGhlIG9yZyBpdHNlbGYuXG4gIHJldHVybiBvcmdJZHMubGVuZ3RoID4gMSA/IG9yZ0lkcyA6IHVuZGVmaW5lZDtcbn1cblxuLyoqXG4gKiBCYXRjaC1yZXNvbHZlIG9yZyBpZCDihpIgZGlzcGxheSBOQU1FIHZpYSBwbGF0Zm9ybSdzIGBQT1NUIC9vcmdhbml6YXRpb24vbmFtZXNgLlxuICogUmV0dXJucyBhIGxvd2VyY2FzZWQgYHsgW29yZ0lkXTogbmFtZSB9YCBtYXAg4oCUIGlkcyB0aGUgcGxhdGZvcm0gZG9lc24ndCBrbm93XG4gKiBhcmUgc2ltcGx5IGFic2VudCAoY2FsbGVyIGZhbGxzIGJhY2sgdG8gdGhlIHJhdyBpZCkuXG4gKlxuICogQmVzdC1lZmZvcnQgYnkgZGVzaWduOiBhIG5vbi0yeHggcmVzcG9uc2UgKGUuZy4gdGhlIGNhbGxlciBpc24ndCBhIHNlcnZpY2VcbiAqIHByaW5jaXBhbCkgb3IgYSBtYWxmb3JtZWQgYm9keSB5aWVsZHMgYHt9YCwgYW5kIGl0IHRocm93cyBPTkxZIG9uIGEgdHJhbnNwb3J0XG4gKiBmYWlsdXJlIChjb25uZWN0aW9uL3RpbWVvdXQpIOKAlCBtYXRjaGluZyB0aGUgZmFpbC1zb2Z0IHBvbGljeSBvZiB0aGUgb3RoZXJcbiAqIGxvb2t1cHMgaGVyZSBzbyBhIG5hbWUtZW5yaWNobWVudCByZWFkIG5ldmVyIGZhaWxzIHRoZSBjYWxsZXIncyByZXF1ZXN0LiBUaGVcbiAqIHJlc3BvbnNlIGlzIHZhbGlkYXRlZCBlbnRyeS1ieS1lbnRyeSAob25seSBzdHJpbmfihpJzdHJpbmcgcGFpcnMgc3Vydml2ZSksIHNvIGFcbiAqIG1hbGZvcm1lZCBwYXlsb2FkIGNhbid0IHNtdWdnbGUgYSBub24tc3RyaW5nIGludG8gdGhlIHJldHVybmVkIG1hcC5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGZldGNoT3JnTmFtZXMoXG4gIG9yZ0lkczogc3RyaW5nW10sXG4gIG9wdHM6IE9yZ0hpZXJhcmNoeUh0dHBPcHRpb25zID0ge30sXG4pOiBQcm9taXNlPFJlY29yZDxzdHJpbmcsIHN0cmluZz4+IHtcbiAgaWYgKG9yZ0lkcy5sZW5ndGggPT09IDApIHJldHVybiB7fTtcbiAgLy8gQSBjcm9zcy1vcmcgcmVnaXN0cnkgcmVhZCwgbm90IGEgdGVuYW50LXNjb3BlZCBvcCDigJQgZGVmYXVsdCB0byB0aGUgc3lzdGVtXG4gIC8vIG9yZyBjb250ZXh0IHdoZW4gdGhlIGNhbGxlciBkb2Vzbid0IHBpbiBvbmUuXG4gIGNvbnN0IHsgY2xpZW50LCBoZWFkZXJzIH0gPSBwbGF0Zm9ybVJlcXVlc3Qob3B0cywgU1lTVEVNX09SR19JRCk7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGNsaWVudC5wb3N0PHsgZGF0YT86IHsgbmFtZXM/OiB1bmtub3duIH0gfT4oXG4gICAgJy9vcmdhbml6YXRpb24vbmFtZXMnLFxuICAgIHsgb3JnSWRzIH0sXG4gICAgeyBoZWFkZXJzLCB0aW1lb3V0OiBvcHRzLnRpbWVvdXQgfSxcbiAgKTtcbiAgaWYgKHJlcy5zdGF0dXNDb2RlID49IDQwMCkgcmV0dXJuIHt9O1xuICBjb25zdCBuYW1lcyA9IHJlcy5ib2R5Py5kYXRhPy5uYW1lcztcbiAgaWYgKCFuYW1lcyB8fCB0eXBlb2YgbmFtZXMgIT09ICdvYmplY3QnKSByZXR1cm4ge307XG4gIGNvbnN0IG91dDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHt9O1xuICBmb3IgKGNvbnN0IFtpZCwgbmFtZV0gb2YgT2JqZWN0LmVudHJpZXMobmFtZXMgYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4pKSB7XG4gICAgaWYgKHR5cGVvZiBuYW1lID09PSAnc3RyaW5nJykgb3V0W2lkLnRvTG93ZXJDYXNlKCldID0gbmFtZTtcbiAgfVxuICByZXR1cm4gb3V0O1xufVxuXG4vKipcbiAqIENoZWNrIHdoZXRoZXIgYHVzZXJJZGAgaXMgYW4gQUNUSVZFIG1lbWJlciBvZiBgb3JnSWRgIHZpYSBwbGF0Zm9ybSdzXG4gKiBgR0VUIC9vcmdhbml6YXRpb24vOmlkL21lbWJlcnMvOnVzZXJJZC9leGlzdHNgLiBSZXR1cm5zIHRoZSBib29sZWFuIHRoZVxuICogcGxhdGZvcm0gcmVwb3J0cy5cbiAqXG4gKiBSZXR1cm5zIGB1bmRlZmluZWRgICjigJQgXCJjb3VsZG4ndCBkZXRlcm1pbmVcIikgb24gYSBub24tMnh4IHJlc3BvbnNlLCBhbmRcbiAqIHRocm93cyBvbmx5IG9uIGEgdHJhbnNwb3J0IGZhaWx1cmUgKGNvbm5lY3Rpb24vdGltZW91dCkg4oCUIHNvIHRoZSBjYWxsZXJcbiAqIGRpc3Rpbmd1aXNoZXMgYSBkZWZpbml0aXZlIG5vdC1hLW1lbWJlciAoYGZhbHNlYCkgZnJvbSBhbiBpbmRldGVybWluYXRlXG4gKiBsb29rdXAgKGB1bmRlZmluZWRgKSBhbmQgYXBwbGllcyBpdHMgb3duIGZhaWwtb3Blbi9jbG9zZWQgcG9saWN5LlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZmV0Y2hPcmdNZW1iZXJzaGlwKFxuICBvcmdJZDogc3RyaW5nLFxuICB1c2VySWQ6IHN0cmluZyxcbiAgb3B0czogT3JnSGllcmFyY2h5SHR0cE9wdGlvbnMgPSB7fSxcbik6IFByb21pc2U8Ym9vbGVhbiB8IHVuZGVmaW5lZD4ge1xuICBjb25zdCB7IGNsaWVudCwgaGVhZGVycyB9ID0gcGxhdGZvcm1SZXF1ZXN0KG9wdHMsIG9yZ0lkKTtcbiAgY29uc3QgcGF0aCA9IGAvb3JnYW5pemF0aW9uLyR7ZW5jb2RlVVJJQ29tcG9uZW50KG9yZ0lkKX0vbWVtYmVycy8ke2VuY29kZVVSSUNvbXBvbmVudCh1c2VySWQpfS9leGlzdHNgO1xuICBjb25zdCByZXMgPSBhd2FpdCBjbGllbnQuZ2V0PHsgZGF0YT86IHsgaXNNZW1iZXI/OiB1bmtub3duIH0gfT4ocGF0aCwgeyBoZWFkZXJzLCB0aW1lb3V0OiBvcHRzLnRpbWVvdXQgfSk7XG4gIGlmIChyZXMuc3RhdHVzQ29kZSA+PSA0MDApIHJldHVybiB1bmRlZmluZWQ7XG4gIGNvbnN0IGlzTWVtYmVyID0gcmVzLmJvZHk/LmRhdGE/LmlzTWVtYmVyO1xuICByZXR1cm4gdHlwZW9mIGlzTWVtYmVyID09PSAnYm9vbGVhbicgPyBpc01lbWJlciA6IHVuZGVmaW5lZDtcbn1cbiJdfQ==
|
|
@@ -176,4 +176,4 @@ export async function expandOrgScopeWith(orgId, getChildren) {
|
|
|
176
176
|
}
|
|
177
177
|
return result;
|
|
178
178
|
}
|
|
179
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JnLWhpZXJhcmNoeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9oZWxwZXJzL29yZy1oaWVyYXJjaHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0NBQStDO0FBQy9DLHNDQUFzQztBQUV0Qzs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FpQkc7QUFFSCwyRUFBMkU7QUFDM0UsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHLEVBQUUsQ0FBQztBQVFoQyxvRkFBb0Y7QUFDcEYsTUFBTSxVQUFVLGFBQWEsQ0FBQyxDQUFVO0lBQ3RDLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLEtBQUssU0FBUztRQUFFLE9BQU8sU0FBUyxDQUFDO0lBQ3BELE1BQU0sQ0FBQyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNwQixPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssTUFBTSxJQUFJLENBQUMsS0FBSyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO0FBQ2hFLENBQUM7QUFFRCxrRkFBa0Y7QUFDbEYsU0FBUyxhQUFhLENBQUMsRUFBVTtJQUMvQixPQUFPLEVBQUUsQ0FBQyxNQUFNLEtBQUssRUFBRSxJQUFJLG1CQUFtQixDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztBQUMxRCxDQUFDO0FBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBaUJHO0FBQ0gsTUFBTSxVQUFVLGlCQUFpQixDQUMvQixZQUFvQztJQUVwQyxPQUFPLENBQUMsRUFBRSxFQUFFLEVBQUU7UUFDWixNQUFNLEtBQUssR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUM3QyxPQUFPLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxZQUFZLENBQUMsS0FBSyxDQUFD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Q0FBQztJQUNyQixDQUFDO0lBRUQsT0FBTyxLQUFLLENBQUM7QUFDZixDQUFDO0FBRUQ7Ozs7O0dBS0c7QUFDSCxNQUFNLENBQUMsS0FBSyxVQUFVLGtCQUFrQixDQUFDLEtBQWEsRUFBRSxXQUEyQjtJQUNqRixNQUFNLE1BQU0sR0FBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2pDLE1BQU0sSUFBSSxHQUFHLElBQUksR0FBRyxDQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUN0QyxJQUFJLFFBQVEsR0FBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBRWpDLEtBQUssSUFBSSxLQUFLLEdBQUcsQ0FBQyxFQUFFLEtBQUssR0FBRyxhQUFhLElBQUksUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQztRQUMxRSxNQUFNLFFBQVEsR0FBRyxNQUFNLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUM3QyxNQUFNLElBQUksR0FBYSxFQUFFLENBQUM7UUFDMUIsS0FBSyxNQUFNLEdBQUcsSUFBSSxRQUFRLEVBQUUsQ0FBQztZQUMzQixNQUFNLEVBQUUsR0FBRyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDOUIsSUFBSSxDQUFDLEVBQUUsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFBRSxTQUFTO1lBQ2xDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDYixNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQ2hCLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDaEIsQ0FBQztRQUNELFFBQVEsR0FBRyxJQUFJLENBQUM7SUFDbEIsQ0FBQztJQUVELE9BQU8sTUFBTSxDQUFDO0FBQ2hCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgMjAyNiBQaXBlbGluZSBCdWlsZGVyIENvbnRyaWJ1dG9yc1xuLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjBcblxuLyoqXG4gKiBPcmcg4oaSIHRlYW0gaGllcmFyY2h5IHRyYXZlcnNhbCAob3JnLXRlYW0taGllcmFyY2h5IHByb3Bvc2FsKS5cbiAqXG4gKiBBIFwidGVhbVwiIGlzIGFuIG9yZ2FuaXphdGlvbiB3aG9zZSBgcGFyZW50T3JnSWRgIHBvaW50cyBhdCBhbm90aGVyIG9yZzsgYSByb290XG4gKiBvcmcgaGFzIGBwYXJlbnRPcmdJZCA9IG51bGxgLiBUaGVzZSBoZWxwZXJzIHdhbGsgdGhhdCBzaW5nbGUgc2VsZi1yZWZlcmVudGlhbFxuICogY29sdW1uLCBidXQgaG9sZCAqKm5vIGRhdGFiYXNlIGRlcGVuZGVuY3kqKiBvZiB0aGVpciBvd246IGVhY2ggdGFrZXMgYSBxdWVyeVxuICogY2FsbGJhY2sgc28gZXZlcnkgc2VydmljZSAocGxhdGZvcm0sIHF1b3RhLCDigKYpIGNhbiBzaGFyZSB0aGUgY3ljbGUtc2FmZSxcbiAqIGRlcHRoLWNhcHBlZCB0cmF2ZXJzYWwgbG9naWMgd2hpbGUgcmVhZGluZyBpdHMgb3duIE1vbmdvb3NlIG1vZGVsIHdpdGggaXRzIG93blxuICogYF9pZGAgY2FzdGluZyBydWxlcy5cbiAqXG4gKiAgIC0ge0BsaW5rIHJlc29sdmVPcmdMaW5lYWdlV2l0aH0g4oCUIFVQOiBkaXJlY3QgcGFyZW50ICsgcm9vdCBvZiB0aGUgY2hhaW4uXG4gKiAgIC0ge0BsaW5rIHJlc29sdmVSb290T3JnSWRXaXRofSAgIOKAlCBVUDoganVzdCB0aGUgcm9vdCBpZC5cbiAqICAgLSB7QGxpbmsgaXNBbmNlc3Rvck9yZ1dpdGh9ICAgICAg4oCUIFVQOiBpcyBBIGFuIGFuY2VzdG9yIG9mIEI/XG4gKiAgIC0ge0BsaW5rIGV4cGFuZE9yZ1Njb3BlV2l0aH0gICAgIOKAlCBET1dOOiBzZWxmICsgYWxsIGRlc2NlbmRhbnQgb3JnIGlkcy5cbiAqXG4gKiBBIHJvb3Qgb3JnIChgcGFyZW50T3JnSWRgIG51bGwpIHJlc29sdmVzIHRvIGB7IHJvb3RPcmdJZDogc2VsZiB9YCBhbmQgc2NvcGVcbiAqIGBbc2VsZl1gLlxuICovXG5cbi8qKiBIYXJkIGNlaWxpbmcgb24gYW5jZXN0cnkvZGVzY2VuZGFudCB0cmF2ZXJzYWwg4oCUIGN5Y2xlICsgYWJ1c2UgZ3VhcmQuICovXG5leHBvcnQgY29uc3QgTUFYX09SR19ERVBUSCA9IDE2O1xuXG4vKiogRmV0Y2ggYW4gb3JnJ3MgZGlyZWN0IGBwYXJlbnRPcmdJZGAsIG9yIHVuZGVmaW5lZCBmb3IgYSByb290L21pc3Npbmcgb3JnLiAqL1xuZXhwb3J0IHR5cGUgR2V0UGFyZW50T3JnSWQgPSAob3JnSWQ6IHN0cmluZykgPT4gUHJvbWlzZTxzdHJpbmcgfCB1bmRlZmluZWQ+O1xuXG4vKiogRmV0Y2ggdGhlIGRpcmVjdCBjaGlsZCBvcmcgaWRzIG9mIGV2ZXJ5IG9yZyBpbiBgZnJvbnRpZXJgIChvbmUgcm91bmQgb2YgQkZTKS4gKi9cbmV4cG9ydCB0eXBlIEdldENoaWxkT3JnSWRzID0gKGZyb250aWVyOiBzdHJpbmdbXSkgPT4gUHJvbWlzZTxzdHJpbmdbXT47XG5cbi8qKiBOb3JtYWxpemUgYSBNaXhlZC9PYmplY3RJZC9zdHJpbmcgb3JnIGlkIHRvIGEgbm9uLWVtcHR5IHN0cmluZywgb3IgdW5kZWZpbmVkLiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvT3JnSWRTdHJpbmcodjogdW5rbm93bik6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gIGlmICh2ID09PSBudWxsIHx8IHYgPT09IHVuZGVmaW5lZCkgcmV0dXJuIHVuZGVmaW5lZDtcbiAgY29uc3QgcyA9IFN0cmluZyh2KTtcbiAgcmV0dXJuIHMgJiYgcyAhPT0gJ251bGwnICYmIHMgIT09ICd1bmRlZmluZWQnID8gcyA6IHVuZGVmaW5lZDtcbn1cblxuLyoqIFRydWUgd2hlbiBgaWRgIGlzIGEgMjQtY2hhcmFjdGVyIGhleCBzdHJpbmcg4oCUIGkuZS4gY2FzdGFibGUgdG8gYW4gT2JqZWN0SWQuICovXG5mdW5jdGlvbiBpc09iamVjdElkSGV4KGlkOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgcmV0dXJuIGlkLmxlbmd0aCA9PT0gMjQgJiYgL15bMC05YS1mQS1GXXsyNH0kLy50ZXN0KGlkKTtcbn1cblxuLyoqXG4gKiBCdWlsZCB0aGUgb3JnLWlkIGNhc3QgdGhlIE1vbmdvLWJhY2tlZCBzZXJ2aWNlcyB1c2Ugb24gZXZlcnkgYF9pZGAgbG9va3VwLlxuICpcbiAqIFBsYXRmb3JtIHdyaXRlcyBPYmplY3RJZCBgX2lkYHMgaW50byB0aGUgc2hhcmVkIGBvcmdhbml6YXRpb25zYCBjb2xsZWN0aW9uLFxuICogd2hpbGUgdGhlIHdlbGwta25vd24gYCdzeXN0ZW0nYCBvcmcgKGFuZCBgcGFyZW50T3JnSWRgLCBzdGlsbCBhIFN0cmluZyBjb2x1bW4pXG4gKiBhcmUgcGxhaW4gc3RyaW5ncyDigJQgc28gYSAyNC1oZXggaWQgYXJyaXZpbmcgZnJvbSBhIHJvdXRlIHBhcmFtIC8gSldUIGNsYWltIC9cbiAqIGNyb3NzLXNlcnZpY2UgcGF5bG9hZCBtdXN0IGJlIGNhc3Qgb3IgYGZpbmRCeUlkKCc8MjRoZXg+JylgIG5ldmVyIG1hdGNoZXMuXG4gKlxuICogUGxhdGZvcm0gYW5kIHF1b3RhIGVhY2ggaGFkIHRoZWlyIE9XTiBgdG9PcmdJZGAgd2l0aCBhIGRpZmZlcmVudCBzaWduYXR1cmVcbiAqIChgc3RyaW5nIHwgc3RyaW5nW11gIHZzIGBzdHJpbmdgKSwgd2hpY2ggaXMgZXhhY3RseSB0aGUgZHJpZnQgdGhpcyByZW1vdmVzOlxuICogdGhlIGxvZ2ljIGFuZCB0aGUgc2lnbmF0dXJlIGxpdmUgaGVyZSBvbmNlLCBhbmQgZWFjaCBzZXJ2aWNlIHN1cHBsaWVzIG9ubHlcbiAqIGl0cyBtb25nb29zZSBgVHlwZXMuT2JqZWN0SWRgIGNvbnN0cnVjdG9yLiBhcGktY29yZSBjYW5ub3QgaW1wb3J0IG1vbmdvb3NlXG4gKiBpdHNlbGYgKGl0IGlzIG5vdCDigJQgYW5kIHNob3VsZCBub3QgYmVjb21lIOKAlCBhbiBhcGktY29yZSBkZXBlbmRlbmN5KSwgc28gdGhlXG4gKiBjb25zdHJ1Y3RvciBpcyBpbmplY3RlZCByYXRoZXIgdGhhbiBpbXBvcnRlZC5cbiAqXG4gKiBAZXhhbXBsZVxuICogZXhwb3J0IGNvbnN0IHRvT3JnSWQgPSBjcmVhdGVPcmdJZENhc3Rlcihtb25nb29zZS5UeXBlcy5PYmplY3RJZCk7XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVPcmdJZENhc3RlcjxUPihcbiAgT2JqZWN0SWRDdG9yOiBuZXcgKGhleDogc3RyaW5nKSA9PiBULFxuKTogKGlkOiBzdHJpbmcgfCBzdHJpbmdbXSkgPT4gc3RyaW5nIHwgVCB7XG4gIHJldHVybiAoaWQpID0+IHtcbiAgICBjb25zdCBpZFN0ciA9IEFycmF5LmlzQXJyYXkoaWQpID8gaWRbMF0gOiBpZDtcbiAgICByZXR1cm4gaXNPYmplY3RJZEhleChpZFN0cikgPyBuZXcgT2JqZWN0SWRDdG9yKGlkU3RyKSA6IGlkU3RyO1xuICB9O1xufVxuXG4vKipcbiAqIFRoZSBzbGljZSBvZiBhIE1vbmdvb3NlIGBPcmdhbml6YXRpb25gIG1vZGVsIHRoZSBoaWVyYXJjaHkgY2FsbGJhY2tzIHJlYWQuXG4gKiBTdHJ1Y3R1cmFsIChhcGktY29yZSBoYXMgbm8gbW9uZ29vc2UgZGVwZW5kZW5jeSk7IGBzZWxlY3QoKS5sZWFuKClgIGNoYWlucyBhc1xuICogbW9uZ29vc2UgcXVlcmllcyBkby5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBPcmdIaWVyYXJjaHlNb2RlbCB7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gIGZpbmRCeUlkKGlkOiBhbnkpOiB7IHNlbGVjdChmaWVsZHM6IHN0cmluZyk6IHsgbGVhbigpOiBQcm9taXNlTGlrZTx1bmtub3duPiB9IH07XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gIGZpbmQoZmlsdGVyOiBhbnkpOiB7IHNlbGVjdChmaWVsZHM6IHN0cmluZyk6IHsgbGVhbigpOiBQcm9taXNlTGlrZTx1bmtub3duW10+IH0gfTtcbn1cblxuLyoqXG4gKiBUaGUgcGFyZW50L2NoaWxkcmVuIGxvb2t1cHMgb3ZlciBhIHNlcnZpY2UncyBvd24gYG9yZ2FuaXphdGlvbnNgIG1vZGVsLCBmb3JcbiAqIHRoZSBgKldpdGhgIHRyYXZlcnNhbHMgYmVsb3cuIGBnZXRDaGlsZE9yZ0lkc2AgcmV0dXJucyBMSVZFIGNoaWxkcmVuIG9ubHkgKGFcbiAqIHNvZnQtZGVsZXRlZCB0ZWFtIGxlYXZlcyBldmVyeSBkb3dud2FyZCBzY29wZSk7IGBnZXRQYXJlbnRPcmdJZGAgZG9lcyBub3RcbiAqIGZpbHRlciwgc28gYSBkZWxldGVkIHRlYW0gc3RpbGwgcmVzb2x2ZXMgdGhyb3VnaCBpdHMgcGFyZW50LlxuICovXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlTW9uZ29PcmdIaWVyYXJjaHkoXG4gIE1vZGVsOiBPcmdIaWVyYXJjaHlNb2RlbCxcbiAgdG9PcmdJZDogKGlkOiBzdHJpbmcpID0+IHVua25vd24sXG4pOiB7IGdldFBhcmVudE9yZ0lkOiBHZXRQYXJlbnRPcmdJZDsgZ2V0Q2hpbGRPcmdJZHM6IEdldENoaWxkT3JnSWRzIH0ge1xuICByZXR1cm4ge1xuICAgIGFzeW5jIGdldFBhcmVudE9yZ0lkKG9yZ0lkKSB7XG4gICAgICBjb25zdCBvcmcgPSBhd2FpdCBNb2RlbC5maW5kQnlJZCh0b09yZ0lkKG9yZ0lkKSkuc2VsZWN0KCdwYXJlbnRPcmdJZCcpLmxlYW4oKTtcbiAgICAgIHJldHVybiB0b09yZ0lkU3RyaW5nKChvcmcgYXMgeyBwYXJlbnRPcmdJZD86IHVua25vd24gfSB8IG51bGwpPy5wYXJlbnRPcmdJZCk7XG4gICAgfSxcbiAgICBhc3luYyBnZXRDaGlsZE9yZ0lkcyhmcm9udGllcikge1xuICAgICAgLy8gYGRlbGV0ZWRBdDogbnVsbGAgbWF0Y2hlcyBib3RoIGFuIGV4cGxpY2l0IG51bGwgYW5kIGFuIGFic2VudCBmaWVsZC5cbiAgICAgIGNvbnN0IGNoaWxkcmVuID0gYXdhaXQgTW9kZWwuZmluZCh7IHBhcmVudE9yZ0lkOiB7ICRpbjogZnJvbnRpZXIgfSwgZGVsZXRlZEF0OiBudWxsIH0pLnNlbGVjdCgnX2lkJykubGVhbigpO1xuICAgICAgcmV0dXJuIGNoaWxkcmVuXG4gICAgICAgIC5tYXAoKGMpID0+IHRvT3JnSWRTdHJpbmcoKGMgYXMgeyBfaWQ/OiB1bmtub3duIH0pLl9pZCkpXG4gICAgICAgIC5maWx0ZXIoKGlkKTogaWQgaXMgc3RyaW5nID0+ICEhaWQpO1xuICAgIH0sXG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgT3JnTGluZWFnZSB7XG4gIC8qKiBUaGUgb3JnJ3MgZGlyZWN0IHBhcmVudCBpZCwgb3IgYHVuZGVmaW5lZGAgd2hlbiBpdCdzIGEgcm9vdCBvcmcuICovXG4gIHBhcmVudE9yZ0lkPzogc3RyaW5nO1xuICAvKiogVG9wIG9mIHRoZSBhbmNlc3RyeSBjaGFpbi4gRXF1YWxzIHRoZSBpbnB1dCBgb3JnSWRgIGZvciBhIHJvb3Qgb3JnLiAqL1xuICByb290T3JnSWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBXYWxrIGBwYXJlbnRPcmdJZGAgZnJvbSBgb3JnSWRgIHVwIHRvIHRoZSByb290LiBSZXR1cm5zIHRoZSBkaXJlY3QgcGFyZW50IChpZlxuICogYW55KSBhbmQgdGhlIHJvb3Qgb3JnIGlkICh0aGUgaW5wdXQgaXRzZWxmIHdoZW4gdGhlIG9yZyBoYXMgbm8gcGFyZW50KS4gT24gYVxuICogZGV0ZWN0ZWQgY3ljbGUsIGEgbWlzc2luZyBvcmcsIG9yIHRoZSBkZXB0aCBjYXAsIHRyYXZlcnNhbCBzdG9wcyBhbmQgdGhlIGxhc3RcbiAqIHJlYWNoZWQgaWQgaXMgdHJlYXRlZCBhcyB0aGUgcm9vdC5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHJlc29sdmVPcmdMaW5lYWdlV2l0aChvcmdJZDogc3RyaW5nLCBnZXRQYXJlbnQ6IEdldFBhcmVudE9yZ0lkKTogUHJvbWlzZTxPcmdMaW5lYWdlPiB7XG4gIGNvbnN0IHNlZW4gPSBuZXcgU2V0PHN0cmluZz4oW29yZ0lkXSk7XG4gIGxldCBjdXJyZW50SWQgPSBvcmdJZDtcbiAgbGV0IHBhcmVudE9yZ0lkOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgZm9yIChsZXQgZGVwdGggPSAwOyBkZXB0aCA8IE1BWF9PUkdfREVQVEg7IGRlcHRoKyspIHtcbiAgICBjb25zdCBwYXJlbnQgPSB0b09yZ0lkU3RyaW5nKGF3YWl0IGdldFBhcmVudChjdXJyZW50SWQpKTtcbiAgICBpZiAoIXBhcmVudCkgYnJlYWs7IC8vIGN1cnJlbnRJZCBpcyB0aGUgcm9vdFxuICAgIC8vIFJlY29yZCB0aGUgZGlyZWN0IHBhcmVudCBvbmx5IHdoZW4gaXQgaXNuJ3QgYSBzZWxmLWxvb3AsIHNvIGEgbWFsZm9ybWVkXG4gICAgLy8gQeKGkkEgb3JnIGlzbid0IHJlcG9ydGVkIGFzIGl0cyBvd24gcGFyZW50LlxuICAgIGlmIChkZXB0aCA9PT0gMCAmJiBwYXJlbnQgIT09IG9yZ0lkKSBwYXJlbnRPcmdJZCA9IHBhcmVudDtcbiAgICBpZiAoc2Vlbi5oYXMocGFyZW50KSkgYnJlYWs7IC8vIGN5Y2xlIOKAlCB0cmVhdCBjdXJyZW50SWQgYXMgdGhlIHJvb3RcbiAgICBzZWVuLmFkZChwYXJlbnQpO1xuICAgIGN1cnJlbnRJZCA9IHBhcmVudDtcbiAgfVxuXG4gIHJldHVybiB7IHJvb3RPcmdJZDogY3VycmVudElkLCAuLi4ocGFyZW50T3JnSWQgJiYgeyBwYXJlbnRPcmdJZCB9KSB9O1xufVxuXG4vKiogV2FsayBgcGFyZW50T3JnSWRgIHVwIHRvIHRoZSByb290IGFuZCByZXR1cm4ganVzdCB0aGUgcm9vdCBpZC4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiByZXNvbHZlUm9vdE9yZ0lkV2l0aChvcmdJZDogc3RyaW5nLCBnZXRQYXJlbnQ6IEdldFBhcmVudE9yZ0lkKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgcmV0dXJuIChhd2FpdCByZXNvbHZlT3JnTGluZWFnZVdpdGgob3JnSWQsIGdldFBhcmVudCkpLnJvb3RPcmdJZDtcbn1cblxuLyoqXG4gKiBGYWlsLUNMT1NFRCB2YXJpYW50IG9mIHtAbGluayByZXNvbHZlUm9vdE9yZ0lkV2l0aH06IHJldHVybnMgYG51bGxgIHdoZW4gdGhlXG4gKiByb290IGNhbid0IGJlIHByb3ZlbiDigJQgYSBjeWNsZSBvciBhIGNoYWluIGRlZXBlciB0aGFuIHtAbGluayBNQVhfT1JHX0RFUFRIfSDigJRcbiAqIGluc3RlYWQgb2YgdHJlYXRpbmcgdGhlIGxhc3QgcmVhY2hlZCBpZCBhcyB0aGUgcm9vdC4gTG9va3VwIGVycm9ycyBwcm9wYWdhdGUuXG4gKiBGb3IgY2FsbGVycyB3aGVyZSBhIHdyb25nIHJvb3QgaXMgd29yc2UgdGhhbiBubyBhbnN3ZXIgKGUuZy4gYSByZXRlbnRpb24gcHVyZ2VcbiAqIHRoYXQgd291bGQgb3RoZXJ3aXNlIGFwcGx5IGEgdGVhbSdzIHNob3J0ZXIgZGVmYXVsdCB3aW5kb3cpLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcmVzb2x2ZVJvb3RPcmdJZFN0cmljdChvcmdJZDogc3RyaW5nLCBnZXRQYXJlbnQ6IEdldFBhcmVudE9yZ0lkKTogUHJvbWlzZTxzdHJpbmcgfCBudWxsPiB7XG4gIGNvbnN0IHNlZW4gPSBuZXcgU2V0PHN0cmluZz4oW29yZ0lkXSk7XG4gIGxldCBjdXJyZW50SWQgPSBvcmdJZDtcbiAgZm9yIChsZXQgZGVwdGggPSAwOyBkZXB0aCA8IE1BWF9PUkdfREVQVEg7IGRlcHRoKyspIHtcbiAgICBjb25zdCBwYXJlbnQgPSB0b09yZ0lkU3RyaW5nKGF3YWl0IGdldFBhcmVudChjdXJyZW50SWQpKTtcbiAgICBpZiAoIXBhcmVudCB8fCBwYXJlbnQgPT09IGN1cnJlbnRJZCkgcmV0dXJuIGN1cnJlbnRJZDtcbiAgICBpZiAoc2Vlbi5oYXMocGFyZW50KSkgcmV0dXJuIG51bGw7XG4gICAgc2Vlbi5hZGQocGFyZW50KTtcbiAgICBjdXJyZW50SWQgPSBwYXJlbnQ7XG4gIH1cbiAgcmV0dXJuIG51bGw7XG59XG5cbi8qKlxuICogVHJ1ZSB3aGVuIGBhbmNlc3Rvck9yZ0lkYCBpcyBhbiBhbmNlc3RvciBvZiBgY2FuZGlkYXRlT3JnSWRgIOKAlCBpLmUuXG4gKiBgY2FuZGlkYXRlT3JnSWRgIGxpdmVzIHNvbWV3aGVyZSBpbiB0aGUgc3VidHJlZSByb290ZWQgYXQgYGFuY2VzdG9yT3JnSWRgLlxuICogV2Fsa3MgYGNhbmRpZGF0ZU9yZ0lkYCdzIHBhcmVudCBjaGFpbiB1cHdhcmQsIGRlcHRoLWNhcHBlZCBhbmQgY3ljbGUtc2FmZS5cbiAqIFJldHVybnMgYGZhbHNlYCB3aGVuIHRoZSB0d28gYXJlIGVxdWFsIChhbiBvcmcgaXMgbm90IGl0cyBvd24gYW5jZXN0b3IpIG9yXG4gKiB1bnJlbGF0ZWQuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBpc0FuY2VzdG9yT3JnV2l0aChcbiAgYW5jZXN0b3JPcmdJZDogc3RyaW5nLFxuICBjYW5kaWRhdGVPcmdJZDogc3RyaW5nLFxuICBnZXRQYXJlbnQ6IEdldFBhcmVudE9yZ0lkLFxuKTogUHJvbWlzZTxib29sZWFuPiB7XG4gIGlmIChhbmNlc3Rvck9yZ0lkID09PSBjYW5kaWRhdGVPcmdJZCkgcmV0dXJuIGZhbHNlO1xuXG4gIGNvbnN0IHNlZW4gPSBuZXcgU2V0PHN0cmluZz4oW2NhbmRpZGF0ZU9yZ0lkXSk7XG4gIGxldCBjdXJyZW50SWQgPSBjYW5kaWRhdGVPcmdJZDtcblxuICBmb3IgKGxldCBkZXB0aCA9IDA7IGRlcHRoIDwgTUFYX09SR19ERVBUSDsgZGVwdGgrKykge1xuICAgIGNvbnN0IHBhcmVudCA9IHRvT3JnSWRTdHJpbmcoYXdhaXQgZ2V0UGFyZW50KGN1cnJlbnRJZCkpO1xuICAgIGlmICghcGFyZW50KSByZXR1cm4gZmFsc2U7IC8vIHJlYWNoZWQgYSByb290IHdpdGhvdXQgbWF0Y2hpbmdcbiAgICBpZiAocGFyZW50ID09PSBhbmNlc3Rvck9yZ0lkKSByZXR1cm4gdHJ1ZTtcbiAgICBpZiAoc2Vlbi5oYXMocGFyZW50KSkgcmV0dXJuIGZhbHNlOyAvLyBjeWNsZVxuICAgIHNlZW4uYWRkKHBhcmVudCk7XG4gICAgY3VycmVudElkID0gcGFyZW50O1xuICB9XG5cbiAgcmV0dXJuIGZhbHNlO1xufVxuXG4vKipcbiAqIEV4cGFuZCBgb3JnSWRgIHRvIGl0c2VsZiBwbHVzIGV2ZXJ5IGRlc2NlbmRhbnQgb3JnIGlkIChicmVhZHRoLWZpcnN0IG92ZXJcbiAqIGBwYXJlbnRPcmdJZGApLiBUaGlzIGlzIHRoZSBzY29wZSBhIHBhcmVudCBvcmcgXCJzZWVzXCIgZm9yIHZpc2liaWxpdHkgYW5kXG4gKiBhbmFseXRpY3Mgcm9sbHVwczogYFtzZWxmLCAuLi5kZXNjZW5kYW50c11gLiBSZXR1cm5zIGBbb3JnSWRdYCB3aGVuIHRoZSBvcmdcbiAqIGhhcyBubyBjaGlsZHJlbi4gQ3ljbGUtc2FmZSBhbmQgZGVwdGgtY2FwcGVkLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZXhwYW5kT3JnU2NvcGVXaXRoKG9yZ0lkOiBzdHJpbmcsIGdldENoaWxkcmVuOiBHZXRDaGlsZE9yZ0lkcyk6IFByb21pc2U8c3RyaW5nW10+IHtcbiAgY29uc3QgcmVzdWx0OiBzdHJpbmdbXSA9IFtvcmdJZF07XG4gIGNvbnN0IHNlZW4gPSBuZXcgU2V0PHN0cmluZz4oW29yZ0lkXSk7XG4gIGxldCBmcm9udGllcjogc3RyaW5nW10gPSBbb3JnSWRdO1xuXG4gIGZvciAobGV0IGRlcHRoID0gMDsgZGVwdGggPCBNQVhfT1JHX0RFUFRIICYmIGZyb250aWVyLmxlbmd0aCA+IDA7IGRlcHRoKyspIHtcbiAgICBjb25zdCBjaGlsZHJlbiA9IGF3YWl0IGdldENoaWxkcmVuKGZyb250aWVyKTtcbiAgICBjb25zdCBuZXh0OiBzdHJpbmdbXSA9IFtdO1xuICAgIGZvciAoY29uc3QgcmF3IG9mIGNoaWxkcmVuKSB7XG4gICAgICBjb25zdCBpZCA9IHRvT3JnSWRTdHJpbmcocmF3KTtcbiAgICAgIGlmICghaWQgfHwgc2Vlbi5oYXMoaWQpKSBjb250aW51ZTtcbiAgICAgIHNlZW4uYWRkKGlkKTtcbiAgICAgIHJlc3VsdC5wdXNoKGlkKTtcbiAgICAgIG5leHQucHVzaChpZCk7XG4gICAgfVxuICAgIGZyb250aWVyID0gbmV4dDtcbiAgfVxuXG4gIHJldHVybiByZXN1bHQ7XG59XG4iXX0=
|
|
179
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JnLWhpZXJhcmNoeS5qcyIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hlbHBlcnMvb3JnLWhpZXJhcmNoeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwrQ0FBK0M7QUFDL0Msc0NBQXNDO0FBRXRDOzs7Ozs7Ozs7Ozs7Ozs7OztHQWlCRztBQUVILDJFQUEyRTtBQUMzRSxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsRUFBRSxDQUFDO0FBUWhDLG9GQUFvRjtBQUNwRixNQUFNLFVBQVUsYUFBYSxDQUFDLENBQVU7SUFDdEMsSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsS0FBSyxTQUFTO1FBQUUsT0FBTyxTQUFTLENBQUM7SUFDcEQsTUFBTSxDQUFDLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3BCLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxNQUFNLElBQUksQ0FBQyxLQUFLLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7QUFDaEUsQ0FBQztBQUVELGtGQUFrRjtBQUNsRixTQUFTLGFBQWEsQ0FBQyxFQUFVO0lBQy9CLE9BQU8sRUFBRSxDQUFDLE1BQU0sS0FBSyxFQUFFLElBQUksbUJBQW1CLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0FBQzFELENBQUM7QUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FpQkc7QUFDSCxNQUFNLFVBQVUsaUJBQWlCLENBQy9CLFlBQW9DO0lBRXBDLE9BQU8sQ0FBQyxFQUFFLEVBQUUsRUFBRTtRQUNaLE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQzdDLE9BQU8sYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMs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SUFFRCxPQUFPLEtBQUssQ0FBQztBQUNmLENBQUM7QUFFRDs7Ozs7R0FLRztBQUNILE1BQU0sQ0FBQyxLQUFLLFVBQVUsa0JBQWtCLENBQUMsS0FBYSxFQUFFLFdBQTJCO0lBQ2pGLE1BQU0sTUFBTSxHQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakMsTUFBTSxJQUFJLEdBQUcsSUFBSSxHQUFHLENBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3RDLElBQUksUUFBUSxHQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7SUFFakMsS0FBSyxJQUFJLEtBQUssR0FBRyxDQUFDLEVBQUUsS0FBSyxHQUFHLGFBQWEsSUFBSSxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDO1FBQzFFLE1BQU0sUUFBUSxHQUFHLE1BQU0sV0FBVyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzdDLE1BQU0sSUFBSSxHQUFhLEVBQUUsQ0FBQztRQUMxQixLQUFLLE1BQU0sR0FBRyxJQUFJLFFBQVEsRUFBRSxDQUFDO1lBQzNCLE1BQU0sRUFBRSxHQUFHLGFBQWEsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUM5QixJQUFJLENBQUMsRUFBRSxJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO2dCQUFFLFNBQVM7WUFDbEMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUNiLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDaEIsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNoQixDQUFDO1FBQ0QsUUFBUSxHQUFHLElBQUksQ0FBQztJQUNsQixDQUFDO0lBRUQsT0FBTyxNQUFNLENBQUM7QUFDaEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAyMDI2IFBpcGVsaW5lIEJ1aWxkZXIgQ29udHJpYnV0b3JzXG4vLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMFxuXG4vKipcbiAqIE9yZyDihpIgdGVhbSBoaWVyYXJjaHkgdHJhdmVyc2FsIChvcmctdGVhbS1oaWVyYXJjaHkgcHJvcG9zYWwpLlxuICpcbiAqIEEgXCJ0ZWFtXCIgaXMgYW4gb3JnYW5pemF0aW9uIHdob3NlIGBwYXJlbnRPcmdJZGAgcG9pbnRzIGF0IGFub3RoZXIgb3JnOyBhIHJvb3RcbiAqIG9yZyBoYXMgYHBhcmVudE9yZ0lkID0gbnVsbGAuIFRoZXNlIGhlbHBlcnMgd2FsayB0aGF0IHNpbmdsZSBzZWxmLXJlZmVyZW50aWFsXG4gKiBjb2x1bW4sIGJ1dCBob2xkICoqbm8gZGF0YWJhc2UgZGVwZW5kZW5jeSoqIG9mIHRoZWlyIG93bjogZWFjaCB0YWtlcyBhIHF1ZXJ5XG4gKiBjYWxsYmFjayBzbyBldmVyeSBzZXJ2aWNlIChwbGF0Zm9ybSwgcXVvdGEsIOKApikgY2FuIHNoYXJlIHRoZSBjeWNsZS1zYWZlLFxuICogZGVwdGgtY2FwcGVkIHRyYXZlcnNhbCBsb2dpYyB3aGlsZSByZWFkaW5nIGl0cyBvd24gTW9uZ29vc2UgbW9kZWwgd2l0aCBpdHMgb3duXG4gKiBgX2lkYCBjYXN0aW5nIHJ1bGVzLlxuICpcbiAqICAgLSB7QGxpbmsgcmVzb2x2ZU9yZ0xpbmVhZ2VXaXRofSDigJQgVVA6IGRpcmVjdCBwYXJlbnQgKyByb290IG9mIHRoZSBjaGFpbi5cbiAqICAgLSB7QGxpbmsgcmVzb2x2ZVJvb3RPcmdJZFdpdGh9ICAg4oCUIFVQOiBqdXN0IHRoZSByb290IGlkLlxuICogICAtIHtAbGluayBpc0FuY2VzdG9yT3JnV2l0aH0gICAgICDigJQgVVA6IGlzIEEgYW4gYW5jZXN0b3Igb2YgQj9cbiAqICAgLSB7QGxpbmsgZXhwYW5kT3JnU2NvcGVXaXRofSAgICAg4oCUIERPV046IHNlbGYgKyBhbGwgZGVzY2VuZGFudCBvcmcgaWRzLlxuICpcbiAqIEEgcm9vdCBvcmcgKGBwYXJlbnRPcmdJZGAgbnVsbCkgcmVzb2x2ZXMgdG8gYHsgcm9vdE9yZ0lkOiBzZWxmIH1gIGFuZCBzY29wZVxuICogYFtzZWxmXWAuXG4gKi9cblxuLyoqIEhhcmQgY2VpbGluZyBvbiBhbmNlc3RyeS9kZXNjZW5kYW50IHRyYXZlcnNhbCDigJQgY3ljbGUgKyBhYnVzZSBndWFyZC4gKi9cbmV4cG9ydCBjb25zdCBNQVhfT1JHX0RFUFRIID0gMTY7XG5cbi8qKiBGZXRjaCBhbiBvcmcncyBkaXJlY3QgYHBhcmVudE9yZ0lkYCwgb3IgdW5kZWZpbmVkIGZvciBhIHJvb3QvbWlzc2luZyBvcmcuICovXG5leHBvcnQgdHlwZSBHZXRQYXJlbnRPcmdJZCA9IChvcmdJZDogc3RyaW5nKSA9PiBQcm9taXNlPHN0cmluZyB8IHVuZGVmaW5lZD47XG5cbi8qKiBGZXRjaCB0aGUgZGlyZWN0IGNoaWxkIG9yZyBpZHMgb2YgZXZlcnkgb3JnIGluIGBmcm9udGllcmAgKG9uZSByb3VuZCBvZiBCRlMpLiAqL1xuZXhwb3J0IHR5cGUgR2V0Q2hpbGRPcmdJZHMgPSAoZnJvbnRpZXI6IHN0cmluZ1tdKSA9PiBQcm9taXNlPHN0cmluZ1tdPjtcblxuLyoqIE5vcm1hbGl6ZSBhIE1peGVkL09iamVjdElkL3N0cmluZyBvcmcgaWQgdG8gYSBub24tZW1wdHkgc3RyaW5nLCBvciB1bmRlZmluZWQuICovXG5leHBvcnQgZnVuY3Rpb24gdG9PcmdJZFN0cmluZyh2OiB1bmtub3duKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgaWYgKHYgPT09IG51bGwgfHwgdiA9PT0gdW5kZWZpbmVkKSByZXR1cm4gdW5kZWZpbmVkO1xuICBjb25zdCBzID0gU3RyaW5nKHYpO1xuICByZXR1cm4gcyAmJiBzICE9PSAnbnVsbCcgJiYgcyAhPT0gJ3VuZGVmaW5lZCcgPyBzIDogdW5kZWZpbmVkO1xufVxuXG4vKiogVHJ1ZSB3aGVuIGBpZGAgaXMgYSAyNC1jaGFyYWN0ZXIgaGV4IHN0cmluZyDigJQgaS5lLiBjYXN0YWJsZSB0byBhbiBPYmplY3RJZC4gKi9cbmZ1bmN0aW9uIGlzT2JqZWN0SWRIZXgoaWQ6IHN0cmluZyk6IGJvb2xlYW4ge1xuICByZXR1cm4gaWQubGVuZ3RoID09PSAyNCAmJiAvXlswLTlhLWZBLUZdezI0fSQvLnRlc3QoaWQpO1xufVxuXG4vKipcbiAqIEJ1aWxkIHRoZSBvcmctaWQgY2FzdCB0aGUgTW9uZ28tYmFja2VkIHNlcnZpY2VzIHVzZSBvbiBldmVyeSBgX2lkYCBsb29rdXAuXG4gKlxuICogUGxhdGZvcm0gd3JpdGVzIE9iamVjdElkIGBfaWRgcyBpbnRvIHRoZSBzaGFyZWQgYG9yZ2FuaXphdGlvbnNgIGNvbGxlY3Rpb24sXG4gKiB3aGlsZSB0aGUgd2VsbC1rbm93biBgJ3N5c3RlbSdgIG9yZyAoYW5kIGBwYXJlbnRPcmdJZGAsIHN0aWxsIGEgU3RyaW5nIGNvbHVtbilcbiAqIGFyZSBwbGFpbiBzdHJpbmdzIOKAlCBzbyBhIDI0LWhleCBpZCBhcnJpdmluZyBmcm9tIGEgcm91dGUgcGFyYW0gLyBKV1QgY2xhaW0gL1xuICogY3Jvc3Mtc2VydmljZSBwYXlsb2FkIG11c3QgYmUgY2FzdCBvciBgZmluZEJ5SWQoJzwyNGhleD4nKWAgbmV2ZXIgbWF0Y2hlcy5cbiAqXG4gKiBQbGF0Zm9ybSBhbmQgcXVvdGEgZWFjaCBoYWQgdGhlaXIgT1dOIGB0b09yZ0lkYCB3aXRoIGEgZGlmZmVyZW50IHNpZ25hdHVyZVxuICogKGBzdHJpbmcgfCBzdHJpbmdbXWAgdnMgYHN0cmluZ2ApLCB3aGljaCBpcyBleGFjdGx5IHRoZSBkcmlmdCB0aGlzIHJlbW92ZXM6XG4gKiB0aGUgbG9naWMgYW5kIHRoZSBzaWduYXR1cmUgbGl2ZSBoZXJlIG9uY2UsIGFuZCBlYWNoIHNlcnZpY2Ugc3VwcGxpZXMgb25seVxuICogaXRzIG1vbmdvb3NlIGBUeXBlcy5PYmplY3RJZGAgY29uc3RydWN0b3IuIGFwaS1jb3JlIGNhbm5vdCBpbXBvcnQgbW9uZ29vc2VcbiAqIGl0c2VsZiAoaXQgaXMgbm90IOKAlCBhbmQgc2hvdWxkIG5vdCBiZWNvbWUg4oCUIGFuIGFwaS1jb3JlIGRlcGVuZGVuY3kpLCBzbyB0aGVcbiAqIGNvbnN0cnVjdG9yIGlzIGluamVjdGVkIHJhdGhlciB0aGFuIGltcG9ydGVkLlxuICpcbiAqIEBleGFtcGxlXG4gKiBleHBvcnQgY29uc3QgdG9PcmdJZCA9IGNyZWF0ZU9yZ0lkQ2FzdGVyKG1vbmdvb3NlLlR5cGVzLk9iamVjdElkKTtcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZU9yZ0lkQ2FzdGVyPFQ+KFxuICBPYmplY3RJZEN0b3I6IG5ldyAoaGV4OiBzdHJpbmcpID0+IFQsXG4pOiAoaWQ6IHN0cmluZyB8IHN0cmluZ1tdKSA9PiBzdHJpbmcgfCBUIHtcbiAgcmV0dXJuIChpZCkgPT4ge1xuICAgIGNvbnN0IGlkU3RyID0gQXJyYXkuaXNBcnJheShpZCkgPyBpZFswXSA6IGlkO1xuICAgIHJldHVybiBpc09iamVjdElkSGV4KGlkU3RyKSA/IG5ldyBPYmplY3RJZEN0b3IoaWRTdHIpIDogaWRTdHI7XG4gIH07XG59XG5cbi8qKlxuICogVGhlIHNsaWNlIG9mIGEgTW9uZ29vc2UgYE9yZ2FuaXphdGlvbmAgbW9kZWwgdGhlIGhpZXJhcmNoeSBjYWxsYmFja3MgcmVhZC5cbiAqIFN0cnVjdHVyYWwgKGFwaS1jb3JlIGhhcyBubyBtb25nb29zZSBkZXBlbmRlbmN5KTsgYHNlbGVjdCgpLmxlYW4oKWAgY2hhaW5zIGFzXG4gKiBtb25nb29zZSBxdWVyaWVzIGRvLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIE9yZ0hpZXJhcmNoeU1vZGVsIHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgZmluZEJ5SWQoaWQ6IGFueSk6IHsgc2VsZWN0KGZpZWxkczogc3RyaW5nKTogeyBsZWFuKCk6IFByb21pc2VMaWtlPHVua25vd24+IH0gfTtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgZmluZChmaWx0ZXI6IGFueSk6IHsgc2VsZWN0KGZpZWxkczogc3RyaW5nKTogeyBsZWFuKCk6IFByb21pc2VMaWtlPHVua25vd25bXT4gfSB9O1xufVxuXG4vKipcbiAqIFRoZSBwYXJlbnQvY2hpbGRyZW4gbG9va3VwcyBvdmVyIGEgc2VydmljZSdzIG93biBgb3JnYW5pemF0aW9uc2AgbW9kZWwsIGZvclxuICogdGhlIGAqV2l0aGAgdHJhdmVyc2FscyBiZWxvdy4gYGdldENoaWxkT3JnSWRzYCByZXR1cm5zIExJVkUgY2hpbGRyZW4gb25seSAoYVxuICogc29mdC1kZWxldGVkIHRlYW0gbGVhdmVzIGV2ZXJ5IGRvd253YXJkIHNjb3BlKTsgYGdldFBhcmVudE9yZ0lkYCBkb2VzIG5vdFxuICogZmlsdGVyLCBzbyBhIGRlbGV0ZWQgdGVhbSBzdGlsbCByZXNvbHZlcyB0aHJvdWdoIGl0cyBwYXJlbnQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVNb25nb09yZ0hpZXJhcmNoeShcbiAgTW9kZWw6IE9yZ0hpZXJhcmNoeU1vZGVsLFxuICB0b09yZ0lkOiAoaWQ6IHN0cmluZykgPT4gdW5rbm93bixcbik6IHsgZ2V0UGFyZW50T3JnSWQ6IEdldFBhcmVudE9yZ0lkOyBnZXRDaGlsZE9yZ0lkczogR2V0Q2hpbGRPcmdJZHMgfSB7XG4gIHJldHVybiB7XG4gICAgYXN5bmMgZ2V0UGFyZW50T3JnSWQob3JnSWQpIHtcbiAgICAgIGNvbnN0IG9yZyA9IGF3YWl0IE1vZGVsLmZpbmRCeUlkKHRvT3JnSWQob3JnSWQpKS5zZWxlY3QoJ3BhcmVudE9yZ0lkJykubGVhbigpO1xuICAgICAgcmV0dXJuIHRvT3JnSWRTdHJpbmcoKG9yZyBhcyB7IHBhcmVudE9yZ0lkPzogdW5rbm93biB9IHwgbnVsbCk/LnBhcmVudE9yZ0lkKTtcbiAgICB9LFxuICAgIGFzeW5jIGdldENoaWxkT3JnSWRzKGZyb250aWVyKSB7XG4gICAgICAvLyBgZGVsZXRlZEF0OiBudWxsYCBtYXRjaGVzIGJvdGggYW4gZXhwbGljaXQgbnVsbCBhbmQgYW4gYWJzZW50IGZpZWxkLlxuICAgICAgY29uc3QgY2hpbGRyZW4gPSBhd2FpdCBNb2RlbC5maW5kKHsgcGFyZW50T3JnSWQ6IHsgJGluOiBmcm9udGllciB9LCBkZWxldGVkQXQ6IG51bGwgfSkuc2VsZWN0KCdfaWQnKS5sZWFuKCk7XG4gICAgICByZXR1cm4gY2hpbGRyZW5cbiAgICAgICAgLm1hcCgoYykgPT4gdG9PcmdJZFN0cmluZygoYyBhcyB7IF9pZD86IHVua25vd24gfSkuX2lkKSlcbiAgICAgICAgLmZpbHRlcigoaWQpOiBpZCBpcyBzdHJpbmcgPT4gISFpZCk7XG4gICAgfSxcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBPcmdMaW5lYWdlIHtcbiAgLyoqIFRoZSBvcmcncyBkaXJlY3QgcGFyZW50IGlkLCBvciBgdW5kZWZpbmVkYCB3aGVuIGl0J3MgYSByb290IG9yZy4gKi9cbiAgcGFyZW50T3JnSWQ/OiBzdHJpbmc7XG4gIC8qKiBUb3Agb2YgdGhlIGFuY2VzdHJ5IGNoYWluLiBFcXVhbHMgdGhlIGlucHV0IGBvcmdJZGAgZm9yIGEgcm9vdCBvcmcuICovXG4gIHJvb3RPcmdJZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFdhbGsgYHBhcmVudE9yZ0lkYCBmcm9tIGBvcmdJZGAgdXAgdG8gdGhlIHJvb3QuIFJldHVybnMgdGhlIGRpcmVjdCBwYXJlbnQgKGlmXG4gKiBhbnkpIGFuZCB0aGUgcm9vdCBvcmcgaWQgKHRoZSBpbnB1dCBpdHNlbGYgd2hlbiB0aGUgb3JnIGhhcyBubyBwYXJlbnQpLiBPbiBhXG4gKiBkZXRlY3RlZCBjeWNsZSwgYSBtaXNzaW5nIG9yZywgb3IgdGhlIGRlcHRoIGNhcCwgdHJhdmVyc2FsIHN0b3BzIGFuZCB0aGUgbGFzdFxuICogcmVhY2hlZCBpZCBpcyB0cmVhdGVkIGFzIHRoZSByb290LlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcmVzb2x2ZU9yZ0xpbmVhZ2VXaXRoKG9yZ0lkOiBzdHJpbmcsIGdldFBhcmVudDogR2V0UGFyZW50T3JnSWQpOiBQcm9taXNlPE9yZ0xpbmVhZ2U+IHtcbiAgY29uc3Qgc2VlbiA9IG5ldyBTZXQ8c3RyaW5nPihbb3JnSWRdKTtcbiAgbGV0IGN1cnJlbnRJZCA9IG9yZ0lkO1xuICBsZXQgcGFyZW50T3JnSWQ6IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuICBmb3IgKGxldCBkZXB0aCA9IDA7IGRlcHRoIDwgTUFYX09SR19ERVBUSDsgZGVwdGgrKykge1xuICAgIGNvbnN0IHBhcmVudCA9IHRvT3JnSWRTdHJpbmcoYXdhaXQgZ2V0UGFyZW50KGN1cnJlbnRJZCkpO1xuICAgIGlmICghcGFyZW50KSBicmVhazsgLy8gY3VycmVudElkIGlzIHRoZSByb290XG4gICAgLy8gUmVjb3JkIHRoZSBkaXJlY3QgcGFyZW50IG9ubHkgd2hlbiBpdCBpc24ndCBhIHNlbGYtbG9vcCwgc28gYSBtYWxmb3JtZWRcbiAgICAvLyBB4oaSQSBvcmcgaXNuJ3QgcmVwb3J0ZWQgYXMgaXRzIG93biBwYXJlbnQuXG4gICAgaWYgKGRlcHRoID09PSAwICYmIHBhcmVudCAhPT0gb3JnSWQpIHBhcmVudE9yZ0lkID0gcGFyZW50O1xuICAgIGlmIChzZWVuLmhhcyhwYXJlbnQpKSBicmVhazsgLy8gY3ljbGUg4oCUIHRyZWF0IGN1cnJlbnRJZCBhcyB0aGUgcm9vdFxuICAgIHNlZW4uYWRkKHBhcmVudCk7XG4gICAgY3VycmVudElkID0gcGFyZW50O1xuICB9XG5cbiAgcmV0dXJuIHsgcm9vdE9yZ0lkOiBjdXJyZW50SWQsIC4uLihwYXJlbnRPcmdJZCAmJiB7IHBhcmVudE9yZ0lkIH0pIH07XG59XG5cbi8qKiBXYWxrIGBwYXJlbnRPcmdJZGAgdXAgdG8gdGhlIHJvb3QgYW5kIHJldHVybiBqdXN0IHRoZSByb290IGlkLiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHJlc29sdmVSb290T3JnSWRXaXRoKG9yZ0lkOiBzdHJpbmcsIGdldFBhcmVudDogR2V0UGFyZW50T3JnSWQpOiBQcm9taXNlPHN0cmluZz4ge1xuICByZXR1cm4gKGF3YWl0IHJlc29sdmVPcmdMaW5lYWdlV2l0aChvcmdJZCwgZ2V0UGFyZW50KSkucm9vdE9yZ0lkO1xufVxuXG4vKipcbiAqIEZhaWwtQ0xPU0VEIHZhcmlhbnQgb2Yge0BsaW5rIHJlc29sdmVSb290T3JnSWRXaXRofTogcmV0dXJucyBgbnVsbGAgd2hlbiB0aGVcbiAqIHJvb3QgY2FuJ3QgYmUgcHJvdmVuIOKAlCBhIGN5Y2xlIG9yIGEgY2hhaW4gZGVlcGVyIHRoYW4ge0BsaW5rIE1BWF9PUkdfREVQVEh9IOKAlFxuICogaW5zdGVhZCBvZiB0cmVhdGluZyB0aGUgbGFzdCByZWFjaGVkIGlkIGFzIHRoZSByb290LiBMb29rdXAgZXJyb3JzIHByb3BhZ2F0ZS5cbiAqIEZvciBjYWxsZXJzIHdoZXJlIGEgd3Jvbmcgcm9vdCBpcyB3b3JzZSB0aGFuIG5vIGFuc3dlciAoZS5nLiBhIHJldGVudGlvbiBwdXJnZVxuICogdGhhdCB3b3VsZCBvdGhlcndpc2UgYXBwbHkgYSB0ZWFtJ3Mgc2hvcnRlciBkZWZhdWx0IHdpbmRvdykuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiByZXNvbHZlUm9vdE9yZ0lkU3RyaWN0KG9yZ0lkOiBzdHJpbmcsIGdldFBhcmVudDogR2V0UGFyZW50T3JnSWQpOiBQcm9taXNlPHN0cmluZyB8IG51bGw+IHtcbiAgY29uc3Qgc2VlbiA9IG5ldyBTZXQ8c3RyaW5nPihbb3JnSWRdKTtcbiAgbGV0IGN1cnJlbnRJZCA9IG9yZ0lkO1xuICBmb3IgKGxldCBkZXB0aCA9IDA7IGRlcHRoIDwgTUFYX09SR19ERVBUSDsgZGVwdGgrKykge1xuICAgIGNvbnN0IHBhcmVudCA9IHRvT3JnSWRTdHJpbmcoYXdhaXQgZ2V0UGFyZW50KGN1cnJlbnRJZCkpO1xuICAgIGlmICghcGFyZW50IHx8IHBhcmVudCA9PT0gY3VycmVudElkKSByZXR1cm4gY3VycmVudElkO1xuICAgIGlmIChzZWVuLmhhcyhwYXJlbnQpKSByZXR1cm4gbnVsbDtcbiAgICBzZWVuLmFkZChwYXJlbnQpO1xuICAgIGN1cnJlbnRJZCA9IHBhcmVudDtcbiAgfVxuICByZXR1cm4gbnVsbDtcbn1cblxuLyoqXG4gKiBUcnVlIHdoZW4gYGFuY2VzdG9yT3JnSWRgIGlzIGFuIGFuY2VzdG9yIG9mIGBjYW5kaWRhdGVPcmdJZGAg4oCUIGkuZS5cbiAqIGBjYW5kaWRhdGVPcmdJZGAgbGl2ZXMgc29tZXdoZXJlIGluIHRoZSBzdWJ0cmVlIHJvb3RlZCBhdCBgYW5jZXN0b3JPcmdJZGAuXG4gKiBXYWxrcyBgY2FuZGlkYXRlT3JnSWRgJ3MgcGFyZW50IGNoYWluIHVwd2FyZCwgZGVwdGgtY2FwcGVkIGFuZCBjeWNsZS1zYWZlLlxuICogUmV0dXJucyBgZmFsc2VgIHdoZW4gdGhlIHR3byBhcmUgZXF1YWwgKGFuIG9yZyBpcyBub3QgaXRzIG93biBhbmNlc3Rvcikgb3JcbiAqIHVucmVsYXRlZC5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGlzQW5jZXN0b3JPcmdXaXRoKFxuICBhbmNlc3Rvck9yZ0lkOiBzdHJpbmcsXG4gIGNhbmRpZGF0ZU9yZ0lkOiBzdHJpbmcsXG4gIGdldFBhcmVudDogR2V0UGFyZW50T3JnSWQsXG4pOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgaWYgKGFuY2VzdG9yT3JnSWQgPT09IGNhbmRpZGF0ZU9yZ0lkKSByZXR1cm4gZmFsc2U7XG5cbiAgY29uc3Qgc2VlbiA9IG5ldyBTZXQ8c3RyaW5nPihbY2FuZGlkYXRlT3JnSWRdKTtcbiAgbGV0IGN1cnJlbnRJZCA9IGNhbmRpZGF0ZU9yZ0lkO1xuXG4gIGZvciAobGV0IGRlcHRoID0gMDsgZGVwdGggPCBNQVhfT1JHX0RFUFRIOyBkZXB0aCsrKSB7XG4gICAgY29uc3QgcGFyZW50ID0gdG9PcmdJZFN0cmluZyhhd2FpdCBnZXRQYXJlbnQoY3VycmVudElkKSk7XG4gICAgaWYgKCFwYXJlbnQpIHJldHVybiBmYWxzZTsgLy8gcmVhY2hlZCBhIHJvb3Qgd2l0aG91dCBtYXRjaGluZ1xuICAgIGlmIChwYXJlbnQgPT09IGFuY2VzdG9yT3JnSWQpIHJldHVybiB0cnVlO1xuICAgIGlmIChzZWVuLmhhcyhwYXJlbnQpKSByZXR1cm4gZmFsc2U7IC8vIGN5Y2xlXG4gICAgc2Vlbi5hZGQocGFyZW50KTtcbiAgICBjdXJyZW50SWQgPSBwYXJlbnQ7XG4gIH1cblxuICByZXR1cm4gZmFsc2U7XG59XG5cbi8qKlxuICogRXhwYW5kIGBvcmdJZGAgdG8gaXRzZWxmIHBsdXMgZXZlcnkgZGVzY2VuZGFudCBvcmcgaWQgKGJyZWFkdGgtZmlyc3Qgb3ZlclxuICogYHBhcmVudE9yZ0lkYCkuIFRoaXMgaXMgdGhlIHNjb3BlIGEgcGFyZW50IG9yZyBcInNlZXNcIiBmb3IgdmlzaWJpbGl0eSBhbmRcbiAqIGFuYWx5dGljcyByb2xsdXBzOiBgW3NlbGYsIC4uLmRlc2NlbmRhbnRzXWAuIFJldHVybnMgYFtvcmdJZF1gIHdoZW4gdGhlIG9yZ1xuICogaGFzIG5vIGNoaWxkcmVuLiBDeWNsZS1zYWZlIGFuZCBkZXB0aC1jYXBwZWQuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBleHBhbmRPcmdTY29wZVdpdGgob3JnSWQ6IHN0cmluZywgZ2V0Q2hpbGRyZW46IEdldENoaWxkT3JnSWRzKTogUHJvbWlzZTxzdHJpbmdbXT4ge1xuICBjb25zdCByZXN1bHQ6IHN0cmluZ1tdID0gW29yZ0lkXTtcbiAgY29uc3Qgc2VlbiA9IG5ldyBTZXQ8c3RyaW5nPihbb3JnSWRdKTtcbiAgbGV0IGZyb250aWVyOiBzdHJpbmdbXSA9IFtvcmdJZF07XG5cbiAgZm9yIChsZXQgZGVwdGggPSAwOyBkZXB0aCA8IE1BWF9PUkdfREVQVEggJiYgZnJvbnRpZXIubGVuZ3RoID4gMDsgZGVwdGgrKykge1xuICAgIGNvbnN0IGNoaWxkcmVuID0gYXdhaXQgZ2V0Q2hpbGRyZW4oZnJvbnRpZXIpO1xuICAgIGNvbnN0IG5leHQ6IHN0cmluZ1tdID0gW107XG4gICAgZm9yIChjb25zdCByYXcgb2YgY2hpbGRyZW4pIHtcbiAgICAgIGNvbnN0IGlkID0gdG9PcmdJZFN0cmluZyhyYXcpO1xuICAgICAgaWYgKCFpZCB8fCBzZWVuLmhhcyhpZCkpIGNvbnRpbnVlO1xuICAgICAgc2Vlbi5hZGQoaWQpO1xuICAgICAgcmVzdWx0LnB1c2goaWQpO1xuICAgICAgbmV4dC5wdXNoKGlkKTtcbiAgICB9XG4gICAgZnJvbnRpZXIgPSBuZXh0O1xuICB9XG5cbiAgcmV0dXJuIHJlc3VsdDtcbn1cbiJdfQ==
|
|
@@ -64,4 +64,4 @@ export async function loadAndPurge(req, res, service, opts) {
|
|
|
64
64
|
}
|
|
65
65
|
return { existing: loaded.existing, purgedId };
|
|
66
66
|
}
|
|
67
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzdG9yZS1oZWxwZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hlbHBlcnMvcmVzdG9yZS1oZWxwZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLCtDQUErQztBQUMvQyxzQ0FBc0M7QUFHdEMsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDbkUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDdkQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXBELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUM5QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFnRHRELHNGQUFzRjtBQUN0RixLQUFLLFVBQVUsYUFBYSxDQUMxQixHQUFZLEVBQ1osR0FBYSxFQUNiLE9BQTJFLEVBQzNFLElBQThCO0lBRTlCLE1BQU0sRUFBRSxHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3RDLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQztRQUNSLGNBQWMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsS0FBSyxrQkFBa0IsRUFBRSxTQUFTLENBQUMsc0JBQXNCLENBQUMsQ0FBQztRQUN2RixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFDRCxNQUFNLEtBQUssR0FBRyxZQUFZLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBRWxFLCtFQUErRTtJQUMvRSx5REFBeUQ7SUFDekQsTUFBTSxRQUFRLEdBQUcsTUFBTSxPQUFPLENBQUMsZUFBZSxDQUFDLEVBQUUsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUMxRCxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDZCxrQkFBa0IsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3BDLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxTQUFTO1FBQzVCLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDO1FBQ3BDLENBQUMsQ0FBQyw0QkFBNEIsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQzFGLElBQUksQ0FBQyxPQUFPO1FBQUUsT0FBTyxJQUFJLENBQUM7SUFDMUIsT0FBTyxFQUFFLEVBQUUsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLENBQUM7QUFDakMsQ0FBQztBQUVEOzs7Ozs7R0FNRztBQUNILE1BQU0sQ0FBQyxLQUFLLFVBQVUsY0FBYyxDQUNsQyxHQUFZLEVBQ1osR0FBYSxFQUNiLE9BQTZCLEVBQzdCLElBQThCO0lBRTlCLE1BQU0sTUFBTSxHQUFHLE1BQU0sYUFBYSxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQzVELElBQUksQ0FBQyxNQUFNO1FBQUUsT0FBTyxJQUFJLENBQUM7SUFFekIsTUFBTSxRQUFRLEdBQUcsTUFBTSxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsTUFBTSxDQUFDLEtBQUssSUFBSSxFQUFFLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ25GLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNkLGtCQUFrQixDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDcEMsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBQ0QsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLENBQUMsUUFBUSxFQUFFLFFBQVEsRUFBRSxDQUFDO0FBQ2pELENBQUM7QUFFRDs7Ozs7O0dBTUc7QUFDSCxNQUFNLENBQUMsS0FBSyxVQUFVLFlBQVksQ0FDaEMsR0FBWSxFQUNaLEdBQWEsRUFDYixPQUE0QixFQUM1QixJQUE4QjtJQUU5QixNQUFNLE1BQU0sR0FBRyxNQUFNLGFBQWEsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUMsQ0FBQztJQUM1RCxJQUFJLENBQUMsTUFBTTtRQUFFLE9BQU8sSUFBSSxDQUFDO0lBRXpCLHlDQUF5QztJQUN6QyxNQUFNLFFBQVEsR0FBRyxNQUFNLE9BQU8sQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxNQUFNLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ3hFLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNkLGtCQUFrQixDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDcEMsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBQ0QsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLENBQUMsUUFBUSxFQUFFLFFBQVEsRUFBRSxDQUFDO0FBQ2pELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgMjAyNiBQaXBlbGluZSBCdWlsZGVyIENvbnRyaWJ1dG9yc1xuLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjBcblxuaW1wb3J0IHR5cGUgeyBSZXF1ZXN0LCBSZXNwb25zZSB9IGZyb20gJ2V4cHJlc3MnO1xuaW1wb3J0IHsgcmVxdWlyZVZpc2liaWxpdHlXcml0ZUFjY2VzcyB9IGZyb20gJy4vYWNjZXNzLWhlbHBlcnMuanMnO1xuaW1wb3J0IHsgc2VuZEVudGl0eU5vdEZvdW5kIH0gZnJvbSAnLi9jcnVkLWhlbHBlcnMuanMnO1xuaW1wb3J0IHsgRXJyb3JDb2RlIH0gZnJvbSAnLi4vdHlwZXMvZXJyb3ItY29kZXMuanMnO1xuaW1wb3J0IHR5cGUgeyBQZXJtaXNzaW9uIH0gZnJvbSAnLi4vdHlwZXMvcGVybWlzc2lvbnMuanMnO1xuaW1wb3J0IHsgZ2V0UGFyYW0gfSBmcm9tICcuLi91dGlscy9wYXJhbXMuanMnO1xuaW1wb3J0IHsgc2VuZEJhZFJlcXVlc3QgfSBmcm9tICcuLi91dGlscy9yZXNwb25zZS5qcyc7XG5cbi8qKiBNaW5pbWFsIHNoYXBlIGEgcmVzdG9yZSByb3V0ZSBuZWVkcyBmcm9tIHRoZSBlbnRpdHkgaXQgcmVzdG9yZXMuICovXG5leHBvcnQgaW50ZXJmYWNlIFJlc3RvcmFibGVFbnRpdHkge1xuICBvcmdJZDogc3RyaW5nO1xuICAvKiogUnVuZyB0aGUgdG9tYnN0b25lIHNhdCBhdCDigJQgZHJpdmVzIHRoZSByZXN0b3JlL3B1cmdlIGF1dGhvcml0eSBjaGVjay4gKi9cbiAgdmlzaWJpbGl0eT86IHN0cmluZztcbiAgLyoqIEF1dGhvciDigJQgdGhlIG9ubHkgbm9uLWFkbWluIHdobyBtYXkgcmVzdG9yZS9wdXJnZSBhIGBwcml2YXRlYCByb3cuICovXG4gIGNyZWF0ZWRCeT86IHN0cmluZztcbn1cblxuLyoqIFRoZSBzbGljZSBvZiBhIHNlcnZpY2UgYSByZXN0b3JlIHJvdXRlIHVzZXMgKHNhdGlzZmllZCBieSBhbnkgQ3J1ZFNlcnZpY2UpLiAqL1xuZXhwb3J0IGludGVyZmFjZSBSZXN0b3JhYmxlU2VydmljZTxUIGV4dGVuZHMgUmVzdG9yYWJsZUVudGl0eT4ge1xuICBmaW5kRGVsZXRlZEJ5SWQoaWQ6IHN0cmluZywgb3JnSWQ/OiBzdHJpbmcpOiBQcm9taXNlPFQgfCBudWxsPjtcbiAgcmVzdG9yZShpZDogc3RyaW5nLCBvcmdJZDogc3RyaW5nLCB1c2VySWQ6IHN0cmluZyk6IFByb21pc2U8VCB8IG51bGw+O1xufVxuXG4vKiogVGhlIHNsaWNlIG9mIGEgc2VydmljZSBhIHB1cmdlIHJvdXRlIHVzZXMgKHNhdGlzZmllZCBieSBhbnkgQ3J1ZFNlcnZpY2UpLiAqL1xuZXhwb3J0IGludGVyZmFjZSBQdXJnZWFibGVTZXJ2aWNlPFQgZXh0ZW5kcyBSZXN0b3JhYmxlRW50aXR5PiB7XG4gIGZpbmREZWxldGVkQnlJZChpZDogc3RyaW5nLCBvcmdJZD86IHN0cmluZyk6IFByb21pc2U8VCB8IG51bGw+O1xuICBwdXJnZUJ5SWQoaWQ6IHN0cmluZywgb3JnSWQ/OiBzdHJpbmcpOiBQcm9taXNlPHN0cmluZyB8IG51bGw+O1xufVxuXG4vKipcbiAqIERlY2lkZXMgd2hldGhlciB0aGUgY2FsbGVyIG1heSByZXN0b3JlL3B1cmdlIHRoZSBsb2FkZWQgdG9tYnN0b25lLiBSZXR1cm5zXG4gKiBmYWxzZSBhZnRlciBpdCBoYXMgQU5TV0VSRUQgdGhlIHJlcXVlc3QgKDQwMykuIExvYWQtYmVhcmluZzogdGhlIHRvbWJzdG9uZVxuICogbG9hZCBpcyBvcmctc2NvcGVkLCBub3QgdmlzaWJpbGl0eS1zY29wZWQsIHNvIHRoaXMgaXMgd2hhdCBzdG9wcyBhIGNvbGxlYWd1ZVxuICogcmVzdXJyZWN0aW5nIChvciBkZXN0cm95aW5nKSBzb21lb25lIGVsc2UncyBkcmFmdC5cbiAqL1xuZXhwb3J0IHR5cGUgVG9tYnN0b25lQXV0aG9yaXplcjxUPiA9IChleGlzdGluZzogVCwgcmVxOiBSZXF1ZXN0LCByZXM6IFJlc3BvbnNlKSA9PiBib29sZWFuO1xuXG5leHBvcnQgdHlwZSBUb21ic3RvbmVSb3V0ZU9wdGlvbnM8VCBleHRlbmRzIFJlc3RvcmFibGVFbnRpdHk+ID0ge1xuICBvcmdJZDogc3RyaW5nO1xuICB1c2VySWQ6IHN0cmluZztcbiAgLyoqIFVzZXItZmFjaW5nIGVudGl0eSBub3VuIGZvciB0aGUgNDAwLzQwNCBtZXNzYWdlcyAoJ1BpcGVsaW5lJywgJ1J1bGUnLCDigKYpLiAqL1xuICBsYWJlbDogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIG9yZyB0aGUgdG9tYnN0b25lIGxvYWQgYW5kIHRoZSBtdXRhdGlvbiBhcmUgcGlubmVkIHRvLiBEZWZhdWx0cyB0b1xuICAgKiBgb3JnSWRgOyBgdW5kZWZpbmVkYCBzcGFucyBvcmdzIChzeXN0ZW0tYWRtaW4gbW9kZXJhdGlvbikuXG4gICAqL1xuICBzY29wZU9yZ0lkPzogc3RyaW5nIHwgdW5kZWZpbmVkO1xufSAmIChcbiAgLyoqIFNhbWUgYXV0aG9yaXR5IGFzIGRlbGV0ZSBvbiB0aGUgdmlzaWJpbGl0eSBsYWRkZXI6IGBwdWJsaXNoUGVybWlzc2lvbmBcbiAgICogIGZvciBhIHB1YmxpYyByb3csIGF1dGhvcnNoaXAgZm9yIGEgcHJpdmF0ZSBvbmUuICovXG4gIHwgeyBwdWJsaXNoUGVybWlzc2lvbjogUGVybWlzc2lvbjsgYXV0aG9yaXplPzogdW5kZWZpbmVkIH1cbiAgfCB7IGF1dGhvcml6ZTogVG9tYnN0b25lQXV0aG9yaXplcjxUPjsgcHVibGlzaFBlcm1pc3Npb24/OiB1bmRlZmluZWQgfVxuKTtcblxuLyoqIFNoYXJlZCBwcmVsdWRlOiBgOmlkYCDihpIgb3duLXNjb3BlIHRvbWJzdG9uZSDihpIgYXV0aG9yaXphdGlvbi4gYG51bGxgID0gYW5zd2VyZWQuICovXG5hc3luYyBmdW5jdGlvbiBsb2FkVG9tYnN0b25lPFQgZXh0ZW5kcyBSZXN0b3JhYmxlRW50aXR5PihcbiAgcmVxOiBSZXF1ZXN0LFxuICByZXM6IFJlc3BvbnNlLFxuICBzZXJ2aWNlOiB7IGZpbmREZWxldGVkQnlJZChpZDogc3RyaW5nLCBvcmdJZD86IHN0cmluZyk6IFByb21pc2U8VCB8IG51bGw+IH0sXG4gIG9wdHM6IFRvbWJzdG9uZVJvdXRlT3B0aW9uczxUPixcbik6IFByb21pc2U8eyBpZDogc3RyaW5nOyBleGlzdGluZzogVDsgc2NvcGU6IHN0cmluZyB8IHVuZGVmaW5lZCB9IHwgbnVsbD4ge1xuICBjb25zdCBpZCA9IGdldFBhcmFtKHJlcS5wYXJhbXMsICdpZCcpO1xuICBpZiAoIWlkKSB7XG4gICAgc2VuZEJhZFJlcXVlc3QocmVzLCBgJHtvcHRzLmxhYmVsfSBJRCBpcyByZXF1aXJlZC5gLCBFcnJvckNvZGUuTUlTU0lOR19SRVFVSVJFRF9GSUVMRCk7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cbiAgY29uc3Qgc2NvcGUgPSAnc2NvcGVPcmdJZCcgaW4gb3B0cyA/IG9wdHMuc2NvcGVPcmdJZCA6IG9wdHMub3JnSWQ7XG5cbiAgLy8gQSBsaXZlIHJvdyAvIHVua25vd24gaWQgLyBhbHJlYWR5LXB1cmdlZCDihpIgNDA0LCBzbyBhIGN1cnJlbnRseS1hY3RpdmUgZW50aXR5XG4gIC8vIGlzIG5ldmVyIHJlc3RvcmVkIG9yIGhhcmQtZGVsZXRlZCB0aHJvdWdoIHRoZXNlIHBhdGhzLlxuICBjb25zdCBleGlzdGluZyA9IGF3YWl0IHNlcnZpY2UuZmluZERlbGV0ZWRCeUlkKGlkLCBzY29wZSk7XG4gIGlmICghZXhpc3RpbmcpIHtcbiAgICBzZW5kRW50aXR5Tm90Rm91bmQocmVzLCBvcHRzLmxhYmVsKTtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIGNvbnN0IGFsbG93ZWQgPSBvcHRzLmF1dGhvcml6ZVxuICAgID8gb3B0cy5hdXRob3JpemUoZXhpc3RpbmcsIHJlcSwgcmVzKVxuICAgIDogcmVxdWlyZVZpc2liaWxpdHlXcml0ZUFjY2VzcyhyZXEsIHJlcywgZXhpc3RpbmcsIG9wdHMudXNlcklkLCBvcHRzLnB1Ymxpc2hQZXJtaXNzaW9uKTtcbiAgaWYgKCFhbGxvd2VkKSByZXR1cm4gbnVsbDtcbiAgcmV0dXJuIHsgaWQsIGV4aXN0aW5nLCBzY29wZSB9O1xufVxuXG4vKipcbiAqIFNoYXJlZCBza2VsZXRvbiBmb3IgYSBzdGVwLXVwLWdhdGVkIGVudGl0eSBSRVNUT1JFIHJvdXRlOiBleHRyYWN0IGA6aWRgLCBsb2FkXG4gKiB0aGUgdG9tYnN0b25lLCBhdXRob3JpemUgaXQsIHJlc3RvcmUsIGFuZCA0MDQgb24gbWlzcy4gUmV0dXJuc1xuICogYHsgZXhpc3RpbmcsIHJlc3RvcmVkIH1gIG9uIHN1Y2Nlc3MsIG9yIGBudWxsYCB3aGVuIGl0IGhhcyBBTFJFQURZIHNlbnQgYVxuICogcmVzcG9uc2UgKDQwMC80MDQvNDAzKSDigJQgdGhlIGNhbGxlciB0aGVuIGRvZXMgdGhlIGVudGl0eS1zcGVjaWZpYyBhdWRpdCArXG4gKiByZXNwb25zZS4gU3RlcC11cCBpcyB0aGUgcm91dGUncyBqb2IuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBsb2FkQW5kUmVzdG9yZTxUIGV4dGVuZHMgUmVzdG9yYWJsZUVudGl0eT4oXG4gIHJlcTogUmVxdWVzdCxcbiAgcmVzOiBSZXNwb25zZSxcbiAgc2VydmljZTogUmVzdG9yYWJsZVNlcnZpY2U8VD4sXG4gIG9wdHM6IFRvbWJzdG9uZVJvdXRlT3B0aW9uczxUPixcbik6IFByb21pc2U8eyBleGlzdGluZzogVDsgcmVzdG9yZWQ6IFQgfSB8IG51bGw+IHtcbiAgY29uc3QgbG9hZGVkID0gYXdhaXQgbG9hZFRvbWJzdG9uZShyZXEsIHJlcywgc2VydmljZSwgb3B0cyk7XG4gIGlmICghbG9hZGVkKSByZXR1cm4gbnVsbDtcblxuICBjb25zdCByZXN0b3JlZCA9IGF3YWl0IHNlcnZpY2UucmVzdG9yZShsb2FkZWQuaWQsIGxvYWRlZC5zY29wZSA/PyAnJywgb3B0cy51c2VySWQpO1xuICBpZiAoIXJlc3RvcmVkKSB7XG4gICAgc2VuZEVudGl0eU5vdEZvdW5kKHJlcywgb3B0cy5sYWJlbCk7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cbiAgcmV0dXJuIHsgZXhpc3Rpbmc6IGxvYWRlZC5leGlzdGluZywgcmVzdG9yZWQgfTtcbn1cblxuLyoqXG4gKiBTaGFyZWQgc2tlbGV0b24gZm9yIGFuIGVudGl0eSBQVVJHRSByb3V0ZTogdGhlIHNhbWUgbG9hZCArIGF1dGhvcml6YXRpb24gYXNcbiAqIHJlc3RvcmUsIHRoZW4gYSBwZXJtYW5lbnQgaGFyZC1kZWxldGUgdmlhIHRoZSByZXRlbnRpb24gc3dlZXAncyBzaW5nbGUtaWRcbiAqIHB1cmdlIChzYW1lIHRvbWJzdG9uZSBtYXRjaCArIGRlcGVuZGVudC10ZWFyZG93biBob29rcykuIFJldHVybnNcbiAqIGB7IGV4aXN0aW5nLCBwdXJnZWRJZCB9YCAodGhlIGNhbGxlciBhdWRpdHMgb2ZmIGBleGlzdGluZ2ApLCBvciBgbnVsbGAgd2hlbiBpdFxuICogaGFzIEFMUkVBRFkgc2VudCBhIHJlc3BvbnNlLiBTdGVwLXVwIGlzIHRoZSByb3V0ZSdzIGpvYi5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGxvYWRBbmRQdXJnZTxUIGV4dGVuZHMgUmVzdG9yYWJsZUVudGl0eT4oXG4gIHJlcTogUmVxdWVzdCxcbiAgcmVzOiBSZXNwb25zZSxcbiAgc2VydmljZTogUHVyZ2VhYmxlU2VydmljZTxUPixcbiAgb3B0czogVG9tYnN0b25lUm91dGVPcHRpb25zPFQ+LFxuKTogUHJvbWlzZTx7IGV4aXN0aW5nOiBUOyBwdXJnZWRJZDogc3RyaW5nIH0gfCBudWxsPiB7XG4gIGNvbnN0IGxvYWRlZCA9IGF3YWl0IGxvYWRUb21ic3RvbmUocmVxLCByZXMsIHNlcnZpY2UsIG9wdHMpO1xuICBpZiAoIWxvYWRlZCkgcmV0dXJuIG51bGw7XG5cbiAgLy8gTnVsbCBvbiBhIHJhY2UgKGFscmVhZHkgcHVyZ2VkKSDihpIgNDA0LlxuICBjb25zdCBwdXJnZWRJZCA9IGF3YWl0IHNlcnZpY2UucHVyZ2VCeUlkKGxvYWRlZC5pZCwgbG9hZGVkLnNjb3BlID8/ICcnKTtcbiAgaWYgKCFwdXJnZWRJZCkge1xuICAgIHNlbmRFbnRpdHlOb3RGb3VuZChyZXMsIG9wdHMubGFiZWwpO1xuICAgIHJldHVybiBudWxsO1xuICB9XG4gIHJldHVybiB7IGV4aXN0aW5nOiBsb2FkZWQuZXhpc3RpbmcsIHB1cmdlZElkIH07XG59XG4iXX0=
|
|
67
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzdG9yZS1oZWxwZXJzLmpzIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaGVscGVycy9yZXN0b3JlLWhlbHBlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0NBQStDO0FBQy9DLHNDQUFzQztBQUd0QyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFcEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQWdEdEQsc0ZBQXNGO0FBQ3RGLEtBQUssVUFBVSxhQUFhLENBQzFCLEdBQVksRUFDWixHQUFhLEVBQ2IsT0FBMkUsRUFDM0UsSUFBOEI7SUFFOUIsTUFBTSxFQUFFLEdBQUcsUUFBUSxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDdEMsSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDO1FBQ1IsY0FBYyxDQUFDLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxLQUFLLGtCQUFrQixFQUFFLFNBQVMsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1FBQ3ZGLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUNELE1BQU0sS0FBSyxHQUFHLFlBQVksSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7SUFFbEUsK0VBQStFO0lBQy9FLHlEQUF5RDtJQUN6RCxNQUFNLFFBQVEsR0FBRyxNQUFNLE9BQU8sQ0FBQyxlQUFlLENBQUMsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzFELElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNkLGtCQUFrQixDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDcEMsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFNBQVM7UUFDNUIsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUM7UUFDcEMsQ0FBQyxDQUFDLDRCQUE0QixDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDMUYsSUFBSSxDQUFDLE9BQU87UUFBRSxPQUFPLElBQUksQ0FBQztJQUMxQixPQUFPLEVBQUUsRUFBRSxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsQ0FBQztBQUNqQyxDQUFDO0FBRUQ7Ozs7OztHQU1HO0FBQ0gsTUFBTSxDQUFDLEtBQUssVUFBVSxjQUFjLENBQ2xDLEdBQVksRUFDWixHQUFhLEVBQ2IsT0FBNkIsRUFDN0IsSUFBOEI7SUFFOUIsTUFBTSxNQUFNLEdBQUcsTUFBTSxhQUFhLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxPQUFPLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDNUQsSUFBSSxDQUFDLE1BQU07UUFBRSxPQUFPLElBQUksQ0FBQztJQUV6QixNQUFNLFFBQVEsR0FBRyxNQUFNLE9BQU8sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxNQUFNLENBQUMsS0FBSyxJQUFJLEVBQUUsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDbkYsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2Qsa0JBQWtCLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNwQyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFDRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sQ0FBQyxRQUFRLEVBQUUsUUFBUSxFQUFFLENBQUM7QUFDakQsQ0FBQztBQUVEOzs7Ozs7R0FNRztBQUNILE1BQU0sQ0FBQyxLQUFLLFVBQVUsWUFBWSxDQUNoQyxHQUFZLEVBQ1osR0FBYSxFQUNiLE9BQTRCLEVBQzVCLElBQThCO0lBRTlCLE1BQU0sTUFBTSxHQUFHLE1BQU0sYUFBYSxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQzVELElBQUksQ0FBQyxNQUFNO1FBQUUsT0FBTyxJQUFJLENBQUM7SUFFekIseUNBQXlDO0lBQ3pDLE1BQU0sUUFBUSxHQUFHLE1BQU0sT0FBTyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLE1BQU0sQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFDLENBQUM7SUFDeEUsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2Qsa0JBQWtCLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNwQyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFDRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sQ0FBQyxRQUFRLEVBQUUsUUFBUSxFQUFFLENBQUM7QUFDakQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAyMDI2IFBpcGVsaW5lIEJ1aWxkZXIgQ29udHJpYnV0b3JzXG4vLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMFxuXG5pbXBvcnQgdHlwZSB7IFJlcXVlc3QsIFJlc3BvbnNlIH0gZnJvbSAnZXhwcmVzcyc7XG5pbXBvcnQgeyByZXF1aXJlVmlzaWJpbGl0eVdyaXRlQWNjZXNzIH0gZnJvbSAnLi9hY2Nlc3MtaGVscGVycy5qcyc7XG5pbXBvcnQgeyBzZW5kRW50aXR5Tm90Rm91bmQgfSBmcm9tICcuL2NydWQtaGVscGVycy5qcyc7XG5pbXBvcnQgeyBFcnJvckNvZGUgfSBmcm9tICcuLi90eXBlcy9lcnJvci1jb2Rlcy5qcyc7XG5pbXBvcnQgdHlwZSB7IFBlcm1pc3Npb24gfSBmcm9tICcuLi90eXBlcy9wZXJtaXNzaW9ucy5qcyc7XG5pbXBvcnQgeyBnZXRQYXJhbSB9IGZyb20gJy4uL3V0aWxzL3BhcmFtcy5qcyc7XG5pbXBvcnQgeyBzZW5kQmFkUmVxdWVzdCB9IGZyb20gJy4uL3V0aWxzL3Jlc3BvbnNlLmpzJztcblxuLyoqIE1pbmltYWwgc2hhcGUgYSByZXN0b3JlIHJvdXRlIG5lZWRzIGZyb20gdGhlIGVudGl0eSBpdCByZXN0b3Jlcy4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmVzdG9yYWJsZUVudGl0eSB7XG4gIG9yZ0lkOiBzdHJpbmc7XG4gIC8qKiBSdW5nIHRoZSB0b21ic3RvbmUgc2F0IGF0IOKAlCBkcml2ZXMgdGhlIHJlc3RvcmUvcHVyZ2UgYXV0aG9yaXR5IGNoZWNrLiAqL1xuICB2aXNpYmlsaXR5Pzogc3RyaW5nO1xuICAvKiogQXV0aG9yIOKAlCB0aGUgb25seSBub24tYWRtaW4gd2hvIG1heSByZXN0b3JlL3B1cmdlIGEgYHByaXZhdGVgIHJvdy4gKi9cbiAgY3JlYXRlZEJ5Pzogc3RyaW5nO1xufVxuXG4vKiogVGhlIHNsaWNlIG9mIGEgc2VydmljZSBhIHJlc3RvcmUgcm91dGUgdXNlcyAoc2F0aXNmaWVkIGJ5IGFueSBDcnVkU2VydmljZSkuICovXG5leHBvcnQgaW50ZXJmYWNlIFJlc3RvcmFibGVTZXJ2aWNlPFQgZXh0ZW5kcyBSZXN0b3JhYmxlRW50aXR5PiB7XG4gIGZpbmREZWxldGVkQnlJZChpZDogc3RyaW5nLCBvcmdJZD86IHN0cmluZyk6IFByb21pc2U8VCB8IG51bGw+O1xuICByZXN0b3JlKGlkOiBzdHJpbmcsIG9yZ0lkOiBzdHJpbmcsIHVzZXJJZDogc3RyaW5nKTogUHJvbWlzZTxUIHwgbnVsbD47XG59XG5cbi8qKiBUaGUgc2xpY2Ugb2YgYSBzZXJ2aWNlIGEgcHVyZ2Ugcm91dGUgdXNlcyAoc2F0aXNmaWVkIGJ5IGFueSBDcnVkU2VydmljZSkuICovXG5leHBvcnQgaW50ZXJmYWNlIFB1cmdlYWJsZVNlcnZpY2U8VCBleHRlbmRzIFJlc3RvcmFibGVFbnRpdHk+IHtcbiAgZmluZERlbGV0ZWRCeUlkKGlkOiBzdHJpbmcsIG9yZ0lkPzogc3RyaW5nKTogUHJvbWlzZTxUIHwgbnVsbD47XG4gIHB1cmdlQnlJZChpZDogc3RyaW5nLCBvcmdJZD86IHN0cmluZyk6IFByb21pc2U8c3RyaW5nIHwgbnVsbD47XG59XG5cbi8qKlxuICogRGVjaWRlcyB3aGV0aGVyIHRoZSBjYWxsZXIgbWF5IHJlc3RvcmUvcHVyZ2UgdGhlIGxvYWRlZCB0b21ic3RvbmUuIFJldHVybnNcbiAqIGZhbHNlIGFmdGVyIGl0IGhhcyBBTlNXRVJFRCB0aGUgcmVxdWVzdCAoNDAzKS4gTG9hZC1iZWFyaW5nOiB0aGUgdG9tYnN0b25lXG4gKiBsb2FkIGlzIG9yZy1zY29wZWQsIG5vdCB2aXNpYmlsaXR5LXNjb3BlZCwgc28gdGhpcyBpcyB3aGF0IHN0b3BzIGEgY29sbGVhZ3VlXG4gKiByZXN1cnJlY3RpbmcgKG9yIGRlc3Ryb3lpbmcpIHNvbWVvbmUgZWxzZSdzIGRyYWZ0LlxuICovXG5leHBvcnQgdHlwZSBUb21ic3RvbmVBdXRob3JpemVyPFQ+ID0gKGV4aXN0aW5nOiBULCByZXE6IFJlcXVlc3QsIHJlczogUmVzcG9uc2UpID0+IGJvb2xlYW47XG5cbmV4cG9ydCB0eXBlIFRvbWJzdG9uZVJvdXRlT3B0aW9uczxUIGV4dGVuZHMgUmVzdG9yYWJsZUVudGl0eT4gPSB7XG4gIG9yZ0lkOiBzdHJpbmc7XG4gIHVzZXJJZDogc3RyaW5nO1xuICAvKiogVXNlci1mYWNpbmcgZW50aXR5IG5vdW4gZm9yIHRoZSA0MDAvNDA0IG1lc3NhZ2VzICgnUGlwZWxpbmUnLCAnUnVsZScsIOKApikuICovXG4gIGxhYmVsOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgb3JnIHRoZSB0b21ic3RvbmUgbG9hZCBhbmQgdGhlIG11dGF0aW9uIGFyZSBwaW5uZWQgdG8uIERlZmF1bHRzIHRvXG4gICAqIGBvcmdJZGA7IGB1bmRlZmluZWRgIHNwYW5zIG9yZ3MgKHN5c3RlbS1hZG1pbiBtb2RlcmF0aW9uKS5cbiAgICovXG4gIHNjb3BlT3JnSWQ/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG59ICYgKFxuICAvKiogU2FtZSBhdXRob3JpdHkgYXMgZGVsZXRlIG9uIHRoZSB2aXNpYmlsaXR5IGxhZGRlcjogYHB1Ymxpc2hQZXJtaXNzaW9uYFxuICAgKiAgZm9yIGEgcHVibGljIHJvdywgYXV0aG9yc2hpcCBmb3IgYSBwcml2YXRlIG9uZS4gKi9cbiAgfCB7IHB1Ymxpc2hQZXJtaXNzaW9uOiBQZXJtaXNzaW9uOyBhdXRob3JpemU/OiB1bmRlZmluZWQgfVxuICB8IHsgYXV0aG9yaXplOiBUb21ic3RvbmVBdXRob3JpemVyPFQ+OyBwdWJsaXNoUGVybWlzc2lvbj86IHVuZGVmaW5lZCB9XG4pO1xuXG4vKiogU2hhcmVkIHByZWx1ZGU6IGA6aWRgIOKGkiBvd24tc2NvcGUgdG9tYnN0b25lIOKGkiBhdXRob3JpemF0aW9uLiBgbnVsbGAgPSBhbnN3ZXJlZC4gKi9cbmFzeW5jIGZ1bmN0aW9uIGxvYWRUb21ic3RvbmU8VCBleHRlbmRzIFJlc3RvcmFibGVFbnRpdHk+KFxuICByZXE6IFJlcXVlc3QsXG4gIHJlczogUmVzcG9uc2UsXG4gIHNlcnZpY2U6IHsgZmluZERlbGV0ZWRCeUlkKGlkOiBzdHJpbmcsIG9yZ0lkPzogc3RyaW5nKTogUHJvbWlzZTxUIHwgbnVsbD4gfSxcbiAgb3B0czogVG9tYnN0b25lUm91dGVPcHRpb25zPFQ+LFxuKTogUHJvbWlzZTx7IGlkOiBzdHJpbmc7IGV4aXN0aW5nOiBUOyBzY29wZTogc3RyaW5nIHwgdW5kZWZpbmVkIH0gfCBudWxsPiB7XG4gIGNvbnN0IGlkID0gZ2V0UGFyYW0ocmVxLnBhcmFtcywgJ2lkJyk7XG4gIGlmICghaWQpIHtcbiAgICBzZW5kQmFkUmVxdWVzdChyZXMsIGAke29wdHMubGFiZWx9IElEIGlzIHJlcXVpcmVkLmAsIEVycm9yQ29kZS5NSVNTSU5HX1JFUVVJUkVEX0ZJRUxEKTtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuICBjb25zdCBzY29wZSA9ICdzY29wZU9yZ0lkJyBpbiBvcHRzID8gb3B0cy5zY29wZU9yZ0lkIDogb3B0cy5vcmdJZDtcblxuICAvLyBBIGxpdmUgcm93IC8gdW5rbm93biBpZCAvIGFscmVhZHktcHVyZ2VkIOKGkiA0MDQsIHNvIGEgY3VycmVudGx5LWFjdGl2ZSBlbnRpdHlcbiAgLy8gaXMgbmV2ZXIgcmVzdG9yZWQgb3IgaGFyZC1kZWxldGVkIHRocm91Z2ggdGhlc2UgcGF0aHMuXG4gIGNvbnN0IGV4aXN0aW5nID0gYXdhaXQgc2VydmljZS5maW5kRGVsZXRlZEJ5SWQoaWQsIHNjb3BlKTtcbiAgaWYgKCFleGlzdGluZykge1xuICAgIHNlbmRFbnRpdHlOb3RGb3VuZChyZXMsIG9wdHMubGFiZWwpO1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgY29uc3QgYWxsb3dlZCA9IG9wdHMuYXV0aG9yaXplXG4gICAgPyBvcHRzLmF1dGhvcml6ZShleGlzdGluZywgcmVxLCByZXMpXG4gICAgOiByZXF1aXJlVmlzaWJpbGl0eVdyaXRlQWNjZXNzKHJlcSwgcmVzLCBleGlzdGluZywgb3B0cy51c2VySWQsIG9wdHMucHVibGlzaFBlcm1pc3Npb24pO1xuICBpZiAoIWFsbG93ZWQpIHJldHVybiBudWxsO1xuICByZXR1cm4geyBpZCwgZXhpc3RpbmcsIHNjb3BlIH07XG59XG5cbi8qKlxuICogU2hhcmVkIHNrZWxldG9uIGZvciBhIHN0ZXAtdXAtZ2F0ZWQgZW50aXR5IFJFU1RPUkUgcm91dGU6IGV4dHJhY3QgYDppZGAsIGxvYWRcbiAqIHRoZSB0b21ic3RvbmUsIGF1dGhvcml6ZSBpdCwgcmVzdG9yZSwgYW5kIDQwNCBvbiBtaXNzLiBSZXR1cm5zXG4gKiBgeyBleGlzdGluZywgcmVzdG9yZWQgfWAgb24gc3VjY2Vzcywgb3IgYG51bGxgIHdoZW4gaXQgaGFzIEFMUkVBRFkgc2VudCBhXG4gKiByZXNwb25zZSAoNDAwLzQwNC80MDMpIOKAlCB0aGUgY2FsbGVyIHRoZW4gZG9lcyB0aGUgZW50aXR5LXNwZWNpZmljIGF1ZGl0ICtcbiAqIHJlc3BvbnNlLiBTdGVwLXVwIGlzIHRoZSByb3V0ZSdzIGpvYi5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGxvYWRBbmRSZXN0b3JlPFQgZXh0ZW5kcyBSZXN0b3JhYmxlRW50aXR5PihcbiAgcmVxOiBSZXF1ZXN0LFxuICByZXM6IFJlc3BvbnNlLFxuICBzZXJ2aWNlOiBSZXN0b3JhYmxlU2VydmljZTxUPixcbiAgb3B0czogVG9tYnN0b25lUm91dGVPcHRpb25zPFQ+LFxuKTogUHJvbWlzZTx7IGV4aXN0aW5nOiBUOyByZXN0b3JlZDogVCB9IHwgbnVsbD4ge1xuICBjb25zdCBsb2FkZWQgPSBhd2FpdCBsb2FkVG9tYnN0b25lKHJlcSwgcmVzLCBzZXJ2aWNlLCBvcHRzKTtcbiAgaWYgKCFsb2FkZWQpIHJldHVybiBudWxsO1xuXG4gIGNvbnN0IHJlc3RvcmVkID0gYXdhaXQgc2VydmljZS5yZXN0b3JlKGxvYWRlZC5pZCwgbG9hZGVkLnNjb3BlID8/ICcnLCBvcHRzLnVzZXJJZCk7XG4gIGlmICghcmVzdG9yZWQpIHtcbiAgICBzZW5kRW50aXR5Tm90Rm91bmQocmVzLCBvcHRzLmxhYmVsKTtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuICByZXR1cm4geyBleGlzdGluZzogbG9hZGVkLmV4aXN0aW5nLCByZXN0b3JlZCB9O1xufVxuXG4vKipcbiAqIFNoYXJlZCBza2VsZXRvbiBmb3IgYW4gZW50aXR5IFBVUkdFIHJvdXRlOiB0aGUgc2FtZSBsb2FkICsgYXV0aG9yaXphdGlvbiBhc1xuICogcmVzdG9yZSwgdGhlbiBhIHBlcm1hbmVudCBoYXJkLWRlbGV0ZSB2aWEgdGhlIHJldGVudGlvbiBzd2VlcCdzIHNpbmdsZS1pZFxuICogcHVyZ2UgKHNhbWUgdG9tYnN0b25lIG1hdGNoICsgZGVwZW5kZW50LXRlYXJkb3duIGhvb2tzKS4gUmV0dXJuc1xuICogYHsgZXhpc3RpbmcsIHB1cmdlZElkIH1gICh0aGUgY2FsbGVyIGF1ZGl0cyBvZmYgYGV4aXN0aW5nYCksIG9yIGBudWxsYCB3aGVuIGl0XG4gKiBoYXMgQUxSRUFEWSBzZW50IGEgcmVzcG9uc2UuIFN0ZXAtdXAgaXMgdGhlIHJvdXRlJ3Mgam9iLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gbG9hZEFuZFB1cmdlPFQgZXh0ZW5kcyBSZXN0b3JhYmxlRW50aXR5PihcbiAgcmVxOiBSZXF1ZXN0LFxuICByZXM6IFJlc3BvbnNlLFxuICBzZXJ2aWNlOiBQdXJnZWFibGVTZXJ2aWNlPFQ+LFxuICBvcHRzOiBUb21ic3RvbmVSb3V0ZU9wdGlvbnM8VD4sXG4pOiBQcm9taXNlPHsgZXhpc3Rpbmc6IFQ7IHB1cmdlZElkOiBzdHJpbmcgfSB8IG51bGw+IHtcbiAgY29uc3QgbG9hZGVkID0gYXdhaXQgbG9hZFRvbWJzdG9uZShyZXEsIHJlcywgc2VydmljZSwgb3B0cyk7XG4gIGlmICghbG9hZGVkKSByZXR1cm4gbnVsbDtcblxuICAvLyBOdWxsIG9uIGEgcmFjZSAoYWxyZWFkeSBwdXJnZWQpIOKGkiA0MDQuXG4gIGNvbnN0IHB1cmdlZElkID0gYXdhaXQgc2VydmljZS5wdXJnZUJ5SWQobG9hZGVkLmlkLCBsb2FkZWQuc2NvcGUgPz8gJycpO1xuICBpZiAoIXB1cmdlZElkKSB7XG4gICAgc2VuZEVudGl0eU5vdEZvdW5kKHJlcywgb3B0cy5sYWJlbCk7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cbiAgcmV0dXJuIHsgZXhpc3Rpbmc6IGxvYWRlZC5leGlzdGluZywgcHVyZ2VkSWQgfTtcbn1cbiJdfQ==
|