@openclaw/msteams 2026.5.27 → 2026.5.28-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api.js +2 -2
- package/dist/{channel-c7nnGfMx.js → channel-C_AMaSpi.js} +5 -5
- package/dist/channel-config-api.js +1 -1
- package/dist/channel-plugin-api.js +1 -1
- package/dist/{channel.runtime-Boha-kk1.js → channel.runtime-BJJ1R1iY.js} +3 -3
- package/dist/{config-schema-CuksCQKC.js → config-schema-BL4qQZiA.js} +8 -0
- package/dist/{graph-users-uPAE6-KQ.js → errors-B4snzfP5.js} +378 -624
- package/dist/{oauth-C5ObhLG6.js → oauth-BrKjrCNK.js} +1 -1
- package/dist/{oauth.token-BNbWziwM.js → oauth.token-5ygi8ycy.js} +8 -6
- package/dist/{probe-istgFnuw.js → probe-DRwI-ZqW.js} +221 -120
- package/dist/setup-plugin-api.js +3 -3
- package/dist/{setup-surface-evwYex71.js → setup-surface-C-uCiIKh.js} +2 -2
- package/dist/{src-ui0zJEZI.js → src-Cc3f8Zi2.js} +786 -994
- package/node_modules/@microsoft/teams.api/dist/activities/activity.d.mts +0 -1
- package/node_modules/@microsoft/teams.api/dist/activities/activity.d.ts +0 -1
- package/node_modules/@microsoft/teams.api/dist/activities/activity.js +0 -4
- package/node_modules/@microsoft/teams.api/dist/activities/activity.js.map +1 -1
- package/node_modules/@microsoft/teams.api/dist/activities/activity.mjs +0 -4
- package/node_modules/@microsoft/teams.api/dist/activities/activity.mjs.map +1 -1
- package/node_modules/@microsoft/teams.api/dist/activities/index.d.mts +3 -2
- package/node_modules/@microsoft/teams.api/dist/activities/index.d.ts +3 -2
- package/node_modules/@microsoft/teams.api/dist/activities/invoke/index.d.mts +3 -2
- package/node_modules/@microsoft/teams.api/dist/activities/invoke/index.d.ts +3 -2
- package/node_modules/@microsoft/teams.api/dist/activities/invoke/index.js +7 -0
- package/node_modules/@microsoft/teams.api/dist/activities/invoke/index.mjs +1 -0
- package/node_modules/@microsoft/teams.api/dist/activities/invoke/message-extension/fetch-task.d.mts +3 -2
- package/node_modules/@microsoft/teams.api/dist/activities/invoke/message-extension/fetch-task.d.ts +3 -2
- package/node_modules/@microsoft/teams.api/dist/activities/invoke/message-extension/index.d.mts +3 -2
- package/node_modules/@microsoft/teams.api/dist/activities/invoke/message-extension/index.d.ts +3 -2
- package/node_modules/@microsoft/teams.api/dist/activities/invoke/message-extension/submit-action.d.mts +3 -2
- package/node_modules/@microsoft/teams.api/dist/activities/invoke/message-extension/submit-action.d.ts +3 -2
- package/node_modules/@microsoft/teams.api/dist/activities/invoke/suggested-action-submit.d.mts +48 -0
- package/node_modules/@microsoft/teams.api/dist/activities/invoke/suggested-action-submit.d.ts +48 -0
- package/node_modules/@microsoft/teams.api/dist/activities/invoke/suggested-action-submit.js +4 -0
- package/node_modules/@microsoft/teams.api/dist/activities/invoke/suggested-action-submit.js.map +1 -0
- package/node_modules/@microsoft/teams.api/dist/activities/invoke/suggested-action-submit.mjs +3 -0
- package/node_modules/@microsoft/teams.api/dist/activities/invoke/suggested-action-submit.mjs.map +1 -0
- package/node_modules/@microsoft/teams.api/dist/activities/message/index.d.mts +3 -3
- package/node_modules/@microsoft/teams.api/dist/activities/message/index.d.ts +3 -3
- package/node_modules/@microsoft/teams.api/dist/activities/message/message.d.mts +2 -2
- package/node_modules/@microsoft/teams.api/dist/activities/message/message.d.ts +2 -2
- package/node_modules/@microsoft/teams.api/dist/activities/message/message.js +60 -2
- package/node_modules/@microsoft/teams.api/dist/activities/message/message.js.map +1 -1
- package/node_modules/@microsoft/teams.api/dist/activities/message/message.mjs +60 -2
- package/node_modules/@microsoft/teams.api/dist/activities/message/message.mjs.map +1 -1
- package/node_modules/@microsoft/teams.api/dist/activities/utils/index.d.mts +4 -3
- package/node_modules/@microsoft/teams.api/dist/activities/utils/index.d.ts +4 -3
- package/node_modules/@microsoft/teams.api/dist/activities/utils/strip-mentions-text.d.mts +2 -2
- package/node_modules/@microsoft/teams.api/dist/activities/utils/strip-mentions-text.d.ts +2 -2
- package/node_modules/@microsoft/teams.api/dist/activities/utils/to-activity-params.d.mts +4 -3
- package/node_modules/@microsoft/teams.api/dist/activities/utils/to-activity-params.d.ts +4 -3
- package/node_modules/@microsoft/teams.api/dist/{activity-Be6r1tJJ.d.ts → activity-DzKP6phL.d.ts} +3 -2
- package/node_modules/@microsoft/teams.api/dist/{activity-CJery-zL.d.mts → activity-KJJs2q-W.d.mts} +3 -2
- package/node_modules/@microsoft/teams.api/dist/auth/json-web-token.d.mts +14 -0
- package/node_modules/@microsoft/teams.api/dist/auth/json-web-token.d.ts +14 -0
- package/node_modules/@microsoft/teams.api/dist/auth/json-web-token.js +14 -0
- package/node_modules/@microsoft/teams.api/dist/auth/json-web-token.js.map +1 -1
- package/node_modules/@microsoft/teams.api/dist/auth/json-web-token.mjs +14 -0
- package/node_modules/@microsoft/teams.api/dist/auth/json-web-token.mjs.map +1 -1
- package/node_modules/@microsoft/teams.api/dist/clients/conversation/activity.d.mts +4 -3
- package/node_modules/@microsoft/teams.api/dist/clients/conversation/activity.d.ts +4 -3
- package/node_modules/@microsoft/teams.api/dist/clients/conversation/index.d.mts +4 -3
- package/node_modules/@microsoft/teams.api/dist/clients/conversation/index.d.ts +4 -3
- package/node_modules/@microsoft/teams.api/dist/clients/index.d.mts +4 -3
- package/node_modules/@microsoft/teams.api/dist/clients/index.d.ts +4 -3
- package/node_modules/@microsoft/teams.api/dist/index.d.mts +3 -2
- package/node_modules/@microsoft/teams.api/dist/index.d.ts +3 -2
- package/node_modules/@microsoft/teams.api/dist/{message-BwI6kmCe.d.ts → message-D0n_F-cL.d.ts} +37 -1
- package/node_modules/@microsoft/teams.api/dist/{message-Bd75JRjv.d.mts → message-DTEe5v6q.d.mts} +37 -1
- package/node_modules/@microsoft/teams.api/dist/models/activity-like.d.mts +4 -3
- package/node_modules/@microsoft/teams.api/dist/models/activity-like.d.ts +4 -3
- package/node_modules/@microsoft/teams.api/dist/models/card/card-action.d.mts +8 -1
- package/node_modules/@microsoft/teams.api/dist/models/card/card-action.d.ts +8 -1
- package/node_modules/@microsoft/teams.api/dist/models/index.d.mts +3 -2
- package/node_modules/@microsoft/teams.api/dist/models/index.d.ts +3 -2
- package/node_modules/@microsoft/teams.api/dist/models/invoke-response.d.mts +5 -3
- package/node_modules/@microsoft/teams.api/dist/models/invoke-response.d.ts +5 -3
- package/node_modules/@microsoft/teams.api/dist/models/invoke-response.js.map +1 -1
- package/node_modules/@microsoft/teams.api/dist/models/invoke-response.mjs.map +1 -1
- package/node_modules/@microsoft/teams.api/dist/models/messaging-extension/index.d.mts +4 -3
- package/node_modules/@microsoft/teams.api/dist/models/messaging-extension/index.d.ts +4 -3
- package/node_modules/@microsoft/teams.api/dist/models/messaging-extension/messaging-extension-action-response.d.mts +4 -3
- package/node_modules/@microsoft/teams.api/dist/models/messaging-extension/messaging-extension-action-response.d.ts +4 -3
- package/node_modules/@microsoft/teams.api/dist/models/messaging-extension/messaging-extension-action.d.mts +4 -3
- package/node_modules/@microsoft/teams.api/dist/models/messaging-extension/messaging-extension-action.d.ts +4 -3
- package/node_modules/@microsoft/teams.api/dist/models/messaging-extension/messaging-extension-response.d.mts +4 -3
- package/node_modules/@microsoft/teams.api/dist/models/messaging-extension/messaging-extension-response.d.ts +4 -3
- package/node_modules/@microsoft/teams.api/dist/models/messaging-extension/messaging-extension-result.d.mts +4 -3
- package/node_modules/@microsoft/teams.api/dist/models/messaging-extension/messaging-extension-result.d.ts +4 -3
- package/node_modules/@microsoft/teams.api/package.json +5 -5
- package/node_modules/@microsoft/teams.apps/dist/contexts/activity.d.ts +27 -2
- package/node_modules/@microsoft/teams.apps/dist/contexts/activity.js +119 -58
- package/node_modules/@microsoft/teams.apps/dist/contexts/activity.test.js +235 -33
- package/node_modules/@microsoft/teams.apps/dist/http/express-adapter.d.ts +8 -1
- package/node_modules/@microsoft/teams.apps/dist/http/express-adapter.js +10 -4
- package/node_modules/@microsoft/teams.apps/dist/http/http-server.js +14 -1
- package/node_modules/@microsoft/teams.apps/dist/http/http-stream.d.ts +77 -46
- package/node_modules/@microsoft/teams.apps/dist/http/http-stream.js +31 -16
- package/node_modules/@microsoft/teams.apps/dist/routes/invoke/index.d.ts +1 -0
- package/node_modules/@microsoft/teams.apps/dist/routes/invoke/index.js +2 -1
- package/node_modules/@microsoft/teams.apps/dist/types/app-routing.d.ts +2 -2
- package/node_modules/@microsoft/teams.apps/dist/types/streamer.d.ts +9 -0
- package/node_modules/@microsoft/teams.apps/package.json +5 -5
- package/node_modules/@microsoft/teams.cards/dist/actions/submit/collab-stage.js.map +1 -1
- package/node_modules/@microsoft/teams.cards/dist/actions/submit/collab-stage.mjs.map +1 -1
- package/node_modules/@microsoft/teams.cards/dist/actions/submit/im-back.js.map +1 -1
- package/node_modules/@microsoft/teams.cards/dist/actions/submit/im-back.mjs.map +1 -1
- package/node_modules/@microsoft/teams.cards/dist/actions/submit/invoke.js.map +1 -1
- package/node_modules/@microsoft/teams.cards/dist/actions/submit/invoke.mjs.map +1 -1
- package/node_modules/@microsoft/teams.cards/dist/actions/submit/message-back.d.mts +1 -1
- package/node_modules/@microsoft/teams.cards/dist/actions/submit/message-back.d.ts +1 -1
- package/node_modules/@microsoft/teams.cards/dist/actions/submit/message-back.js.map +1 -1
- package/node_modules/@microsoft/teams.cards/dist/actions/submit/message-back.mjs.map +1 -1
- package/node_modules/@microsoft/teams.cards/dist/actions/submit/sign-in.js.map +1 -1
- package/node_modules/@microsoft/teams.cards/dist/actions/submit/sign-in.mjs.map +1 -1
- package/node_modules/@microsoft/teams.cards/dist/actions/submit/task-fetch.js.map +1 -1
- package/node_modules/@microsoft/teams.cards/dist/actions/submit/task-fetch.mjs.map +1 -1
- package/node_modules/@microsoft/teams.cards/package.json +2 -2
- package/node_modules/@microsoft/teams.common/dist/events/event-emitter.d.mts +2 -2
- package/node_modules/@microsoft/teams.common/dist/events/event-emitter.d.ts +2 -2
- package/node_modules/@microsoft/teams.common/dist/events/event-emitter.js.map +1 -1
- package/node_modules/@microsoft/teams.common/dist/events/event-emitter.mjs.map +1 -1
- package/node_modules/@microsoft/teams.common/dist/http/client.d.mts +1 -1
- package/node_modules/@microsoft/teams.common/dist/http/client.d.ts +1 -1
- package/node_modules/@microsoft/teams.common/dist/http/client.js +3 -1
- package/node_modules/@microsoft/teams.common/dist/http/client.js.map +1 -1
- package/node_modules/@microsoft/teams.common/dist/http/client.mjs +3 -1
- package/node_modules/@microsoft/teams.common/dist/http/client.mjs.map +1 -1
- package/node_modules/@microsoft/teams.common/dist/logging/console.d.mts +1 -1
- package/node_modules/@microsoft/teams.common/dist/logging/console.d.ts +1 -1
- package/node_modules/@microsoft/teams.common/dist/logging/console.js +3 -1
- package/node_modules/@microsoft/teams.common/dist/logging/console.js.map +1 -1
- package/node_modules/@microsoft/teams.common/dist/logging/console.mjs +3 -1
- package/node_modules/@microsoft/teams.common/dist/logging/console.mjs.map +1 -1
- package/node_modules/@microsoft/teams.common/dist/logging/string.js.map +1 -1
- package/node_modules/@microsoft/teams.common/dist/logging/string.mjs.map +1 -1
- package/node_modules/@microsoft/teams.common/dist/storage/list-local-storage.js.map +1 -1
- package/node_modules/@microsoft/teams.common/dist/storage/list-local-storage.mjs.map +1 -1
- package/node_modules/@microsoft/teams.common/dist/storage/local-storage.js.map +1 -1
- package/node_modules/@microsoft/teams.common/dist/storage/local-storage.mjs.map +1 -1
- package/node_modules/@microsoft/teams.common/package.json +2 -2
- package/node_modules/@microsoft/teams.graph/dist/index.js +2 -2
- package/node_modules/@microsoft/teams.graph/dist/index.mjs +2 -2
- package/node_modules/@microsoft/teams.graph/package.json +4 -4
- package/node_modules/jose/README.md +62 -83
- package/node_modules/jose/dist/types/index.d.ts +48 -55
- package/node_modules/jose/dist/types/jwe/compact/decrypt.d.ts +4 -12
- package/node_modules/jose/dist/types/jwe/compact/encrypt.d.ts +9 -22
- package/node_modules/jose/dist/types/jwe/flattened/decrypt.d.ts +4 -12
- package/node_modules/jose/dist/types/jwe/flattened/encrypt.d.ts +21 -24
- package/node_modules/jose/dist/types/jwe/general/decrypt.d.ts +4 -19
- package/node_modules/jose/dist/types/jwe/general/encrypt.d.ts +21 -35
- package/node_modules/jose/dist/types/jwk/embedded.d.ts +2 -10
- package/node_modules/jose/dist/types/jwk/thumbprint.d.ts +5 -16
- package/node_modules/jose/dist/types/jwks/local.d.ts +13 -16
- package/node_modules/jose/dist/types/jwks/remote.d.ts +16 -204
- package/node_modules/jose/dist/types/jws/compact/sign.d.ts +6 -18
- package/node_modules/jose/dist/types/jws/compact/verify.d.ts +5 -13
- package/node_modules/jose/dist/types/jws/flattened/sign.d.ts +8 -18
- package/node_modules/jose/dist/types/jws/flattened/verify.d.ts +5 -13
- package/node_modules/jose/dist/types/jws/general/sign.d.ts +12 -24
- package/node_modules/jose/dist/types/jws/general/verify.d.ts +5 -21
- package/node_modules/jose/dist/types/jwt/decrypt.d.ts +5 -13
- package/node_modules/jose/dist/types/jwt/encrypt.d.ts +17 -31
- package/node_modules/jose/dist/types/jwt/sign.d.ts +6 -26
- package/node_modules/jose/dist/types/jwt/unsecured.d.ts +7 -29
- package/node_modules/jose/dist/types/jwt/verify.d.ts +6 -14
- package/node_modules/jose/dist/types/key/export.d.ts +12 -24
- package/node_modules/jose/dist/types/key/generate_key_pair.d.ts +11 -22
- package/node_modules/jose/dist/types/key/generate_secret.d.ts +8 -24
- package/node_modules/jose/dist/types/key/import.d.ts +33 -62
- package/node_modules/jose/dist/types/types.d.ts +165 -407
- package/node_modules/jose/dist/types/util/base64url.d.ts +16 -6
- package/node_modules/jose/dist/types/util/decode_jwt.d.ts +2 -10
- package/node_modules/jose/dist/types/util/decode_protected_header.d.ts +2 -11
- package/node_modules/jose/dist/types/util/errors.d.ts +36 -98
- package/node_modules/jose/package.json +17 -127
- package/node_modules/jwks-rsa/package.json +4 -4
- package/node_modules/jwks-rsa/src/integrations/config.js +1 -0
- package/node_modules/jwks-rsa/src/utils.js +2 -0
- package/node_modules/jwks-rsa/src/wrappers/cache.js +1 -1
- package/node_modules/lru-cache/README.md +117 -420
- package/node_modules/lru-cache/package.json +12 -132
- package/node_modules/lru-memoizer/README.md +21 -22
- package/node_modules/lru-memoizer/lib/async.d.ts +32 -15
- package/node_modules/lru-memoizer/lib/async.js +113 -55
- package/node_modules/lru-memoizer/lib/freeze.d.ts +0 -1
- package/node_modules/lru-memoizer/lib/freeze.js +1 -1
- package/node_modules/lru-memoizer/lib/index.d.ts +0 -1
- package/node_modules/lru-memoizer/lib/index.js +2 -2
- package/node_modules/lru-memoizer/lib/sync.d.ts +16 -17
- package/node_modules/lru-memoizer/lib/sync.js +62 -34
- package/node_modules/lru-memoizer/lib/util.d.ts +40 -41
- package/node_modules/lru-memoizer/lib/util.js +1 -1
- package/node_modules/lru-memoizer/package.json +4 -3
- package/node_modules/lru-memoizer/test/lru-memoizer.clone.test.js +1 -2
- package/node_modules/lru-memoizer/test/lru-memoizer.freeze.test.js +0 -1
- package/node_modules/lru-memoizer/test/lru-memoizer.itemmaxage.test.js +26 -26
- package/node_modules/lru-memoizer/test/lru-memoizer.nokey.test.js +0 -1
- package/node_modules/lru-memoizer/test/lru-memoizer.queumaxage.test.js +3 -4
- package/node_modules/lru-memoizer/test/lru-memoizer.sync.clone.test.js +2 -4
- package/node_modules/lru-memoizer/test/lru-memoizer.sync.freeze.js +2 -4
- package/node_modules/lru-memoizer/tsconfig.json +56 -16
- package/node_modules/semver/classes/range.js +7 -0
- package/node_modules/semver/package.json +1 -1
- package/node_modules/semver/ranges/subset.js +2 -2
- package/npm-shrinkwrap.json +52 -98
- package/openclaw.plugin.json +21 -0
- package/package.json +6 -10
- package/dist/test-api.js +0 -2
- package/node_modules/@microsoft/teams.apps/node_modules/jose/LICENSE.md +0 -21
- package/node_modules/@microsoft/teams.apps/node_modules/jose/README.md +0 -132
- package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/index.d.ts +0 -48
- package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/jwe/compact/decrypt.d.ts +0 -23
- package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/jwe/compact/encrypt.d.ts +0 -52
- package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/jwe/flattened/decrypt.d.ts +0 -23
- package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/jwe/flattened/encrypt.d.ts +0 -80
- package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/jwe/general/decrypt.d.ts +0 -23
- package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/jwe/general/encrypt.d.ts +0 -60
- package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/jwk/embedded.d.ts +0 -9
- package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/jwk/thumbprint.d.ts +0 -21
- package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/jwks/local.d.ts +0 -26
- package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/jwks/remote.d.ts +0 -49
- package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/jws/compact/sign.d.ts +0 -24
- package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/jws/compact/verify.d.ts +0 -25
- package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/jws/flattened/sign.d.ts +0 -32
- package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/jws/flattened/verify.d.ts +0 -25
- package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/jws/general/sign.d.ts +0 -41
- package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/jws/general/verify.d.ts +0 -25
- package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/jwt/decrypt.d.ts +0 -27
- package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/jwt/encrypt.d.ts +0 -77
- package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/jwt/sign.d.ts +0 -23
- package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/jwt/unsecured.d.ts +0 -21
- package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/jwt/verify.d.ts +0 -29
- package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/key/export.d.ts +0 -21
- package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/key/generate_key_pair.d.ts +0 -36
- package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/key/generate_secret.d.ts +0 -19
- package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/key/import.d.ts +0 -54
- package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/types.d.ts +0 -610
- package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/util/base64url.d.ts +0 -19
- package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/util/decode_jwt.d.ts +0 -10
- package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/util/decode_protected_header.d.ts +0 -8
- package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/util/errors.d.ts +0 -151
- package/node_modules/@microsoft/teams.apps/node_modules/jose/package.json +0 -90
- package/node_modules/@microsoft/teams.apps/node_modules/jwks-rsa/LICENSE +0 -21
- package/node_modules/@microsoft/teams.apps/node_modules/jwks-rsa/README.md +0 -84
- package/node_modules/@microsoft/teams.apps/node_modules/jwks-rsa/index.d.ts +0 -139
- package/node_modules/@microsoft/teams.apps/node_modules/jwks-rsa/package.json +0 -74
- package/node_modules/@microsoft/teams.apps/node_modules/jwks-rsa/src/JwksClient.js +0 -91
- package/node_modules/@microsoft/teams.apps/node_modules/jwks-rsa/src/errors/ArgumentError.js +0 -10
- package/node_modules/@microsoft/teams.apps/node_modules/jwks-rsa/src/errors/JwksError.js +0 -10
- package/node_modules/@microsoft/teams.apps/node_modules/jwks-rsa/src/errors/JwksRateLimitError.js +0 -10
- package/node_modules/@microsoft/teams.apps/node_modules/jwks-rsa/src/errors/SigningKeyNotFoundError.js +0 -10
- package/node_modules/@microsoft/teams.apps/node_modules/jwks-rsa/src/errors/index.js +0 -6
- package/node_modules/@microsoft/teams.apps/node_modules/jwks-rsa/src/index.js +0 -22
- package/node_modules/@microsoft/teams.apps/node_modules/jwks-rsa/src/integrations/config.js +0 -15
- package/node_modules/@microsoft/teams.apps/node_modules/jwks-rsa/src/integrations/express.js +0 -60
- package/node_modules/@microsoft/teams.apps/node_modules/jwks-rsa/src/integrations/hapi.js +0 -59
- package/node_modules/@microsoft/teams.apps/node_modules/jwks-rsa/src/integrations/koa.js +0 -30
- package/node_modules/@microsoft/teams.apps/node_modules/jwks-rsa/src/integrations/passport.js +0 -52
- package/node_modules/@microsoft/teams.apps/node_modules/jwks-rsa/src/utils.js +0 -80
- package/node_modules/@microsoft/teams.apps/node_modules/jwks-rsa/src/wrappers/cache.js +0 -15
- package/node_modules/@microsoft/teams.apps/node_modules/jwks-rsa/src/wrappers/callbackSupport.js +0 -16
- package/node_modules/@microsoft/teams.apps/node_modules/jwks-rsa/src/wrappers/index.js +0 -7
- package/node_modules/@microsoft/teams.apps/node_modules/jwks-rsa/src/wrappers/interceptor.js +0 -30
- package/node_modules/@microsoft/teams.apps/node_modules/jwks-rsa/src/wrappers/rateLimit.js +0 -34
- package/node_modules/@microsoft/teams.apps/node_modules/jwks-rsa/src/wrappers/request.js +0 -54
- package/node_modules/@microsoft/teams.apps/node_modules/lru-cache/README.md +0 -166
- package/node_modules/@microsoft/teams.apps/node_modules/lru-cache/package.json +0 -34
- package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/.jshintrc +0 -41
- package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/LICENSE +0 -21
- package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/README.md +0 -88
- package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/lib/async.d.ts +0 -85
- package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/lib/async.js +0 -178
- package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/lib/freeze.d.ts +0 -1
- package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/lib/freeze.js +0 -23
- package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/lib/index.d.ts +0 -2
- package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/lib/index.js +0 -4
- package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/lib/sync.d.ts +0 -65
- package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/lib/sync.js +0 -114
- package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/lib/util.d.ts +0 -162
- package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/lib/util.js +0 -3
- package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/package.json +0 -34
- package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/test/lru-memoizer.bypass.test.js +0 -39
- package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/test/lru-memoizer.clone.test.js +0 -44
- package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/test/lru-memoizer.disable.test.js +0 -49
- package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/test/lru-memoizer.events.test.js +0 -132
- package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/test/lru-memoizer.freeze.test.js +0 -43
- package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/test/lru-memoizer.itemmaxage.test.js +0 -204
- package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/test/lru-memoizer.lock.test.js +0 -36
- package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/test/lru-memoizer.nokey.test.js +0 -43
- package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/test/lru-memoizer.queumaxage.test.js +0 -110
- package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/test/lru-memoizer.sync.clone.test.js +0 -76
- package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/test/lru-memoizer.sync.events.test.js +0 -95
- package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/test/lru-memoizer.sync.freeze.js +0 -74
- package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/test/lru-memoizer.sync.test.js +0 -47
- package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/test/lru-memoizer.test.js +0 -88
- package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/tsconfig.json +0 -59
- package/node_modules/jose/dist/webapi/index.js +0 -32
- package/node_modules/jose/dist/webapi/jwe/compact/decrypt.js +0 -27
- package/node_modules/jose/dist/webapi/jwe/compact/encrypt.js +0 -27
- package/node_modules/jose/dist/webapi/jwe/flattened/decrypt.js +0 -159
- package/node_modules/jose/dist/webapi/jwe/flattened/encrypt.js +0 -167
- package/node_modules/jose/dist/webapi/jwe/general/decrypt.js +0 -31
- package/node_modules/jose/dist/webapi/jwe/general/encrypt.js +0 -182
- package/node_modules/jose/dist/webapi/jwk/embedded.js +0 -17
- package/node_modules/jose/dist/webapi/jwk/thumbprint.js +0 -68
- package/node_modules/jose/dist/webapi/jwks/local.js +0 -119
- package/node_modules/jose/dist/webapi/jwks/remote.js +0 -179
- package/node_modules/jose/dist/webapi/jws/compact/sign.js +0 -18
- package/node_modules/jose/dist/webapi/jws/compact/verify.js +0 -21
- package/node_modules/jose/dist/webapi/jws/flattened/sign.js +0 -89
- package/node_modules/jose/dist/webapi/jws/flattened/verify.js +0 -110
- package/node_modules/jose/dist/webapi/jws/general/sign.js +0 -70
- package/node_modules/jose/dist/webapi/jws/general/verify.js +0 -24
- package/node_modules/jose/dist/webapi/jwt/decrypt.js +0 -23
- package/node_modules/jose/dist/webapi/jwt/encrypt.js +0 -101
- package/node_modules/jose/dist/webapi/jwt/sign.js +0 -52
- package/node_modules/jose/dist/webapi/jwt/unsecured.js +0 -63
- package/node_modules/jose/dist/webapi/jwt/verify.js +0 -15
- package/node_modules/jose/dist/webapi/key/export.js +0 -11
- package/node_modules/jose/dist/webapi/key/generate_key_pair.js +0 -97
- package/node_modules/jose/dist/webapi/key/generate_secret.js +0 -40
- package/node_modules/jose/dist/webapi/key/import.js +0 -57
- package/node_modules/jose/dist/webapi/lib/aesgcmkw.js +0 -15
- package/node_modules/jose/dist/webapi/lib/aeskw.js +0 -25
- package/node_modules/jose/dist/webapi/lib/asn1.js +0 -243
- package/node_modules/jose/dist/webapi/lib/base64.js +0 -22
- package/node_modules/jose/dist/webapi/lib/buffer_utils.js +0 -43
- package/node_modules/jose/dist/webapi/lib/check_key_type.js +0 -122
- package/node_modules/jose/dist/webapi/lib/content_encryption.js +0 -217
- package/node_modules/jose/dist/webapi/lib/crypto_key.js +0 -136
- package/node_modules/jose/dist/webapi/lib/deflate.js +0 -44
- package/node_modules/jose/dist/webapi/lib/ecdhes.js +0 -52
- package/node_modules/jose/dist/webapi/lib/helpers.js +0 -19
- package/node_modules/jose/dist/webapi/lib/invalid_key_input.js +0 -27
- package/node_modules/jose/dist/webapi/lib/is_key_like.js +0 -17
- package/node_modules/jose/dist/webapi/lib/jwk_to_key.js +0 -107
- package/node_modules/jose/dist/webapi/lib/jwt_claims_set.js +0 -238
- package/node_modules/jose/dist/webapi/lib/key_management.js +0 -186
- package/node_modules/jose/dist/webapi/lib/key_to_jwk.js +0 -31
- package/node_modules/jose/dist/webapi/lib/normalize_key.js +0 -166
- package/node_modules/jose/dist/webapi/lib/pbes2kw.js +0 -42
- package/node_modules/jose/dist/webapi/lib/rsaes.js +0 -24
- package/node_modules/jose/dist/webapi/lib/signing.js +0 -68
- package/node_modules/jose/dist/webapi/lib/type_checks.js +0 -40
- package/node_modules/jose/dist/webapi/lib/validate_algorithms.js +0 -10
- package/node_modules/jose/dist/webapi/lib/validate_crit.js +0 -33
- package/node_modules/jose/dist/webapi/util/base64url.js +0 -30
- package/node_modules/jose/dist/webapi/util/decode_jwt.js +0 -32
- package/node_modules/jose/dist/webapi/util/decode_protected_header.js +0 -34
- package/node_modules/jose/dist/webapi/util/errors.js +0 -99
- package/node_modules/lru-cache/LICENSE.md +0 -55
- package/node_modules/lru-cache/dist/commonjs/browser/diagnostics-channel-browser.d.ts.map +0 -1
- package/node_modules/lru-cache/dist/commonjs/browser/diagnostics-channel-browser.js.map +0 -1
- package/node_modules/lru-cache/dist/commonjs/browser/diagnostics-channel.d.ts +0 -5
- package/node_modules/lru-cache/dist/commonjs/browser/diagnostics-channel.js +0 -7
- package/node_modules/lru-cache/dist/commonjs/browser/index.d.ts +0 -1400
- package/node_modules/lru-cache/dist/commonjs/browser/index.d.ts.map +0 -1
- package/node_modules/lru-cache/dist/commonjs/browser/index.js +0 -1726
- package/node_modules/lru-cache/dist/commonjs/browser/index.js.map +0 -1
- package/node_modules/lru-cache/dist/commonjs/browser/index.min.js +0 -2
- package/node_modules/lru-cache/dist/commonjs/browser/index.min.js.map +0 -7
- package/node_modules/lru-cache/dist/commonjs/browser/perf.d.ts +0 -12
- package/node_modules/lru-cache/dist/commonjs/browser/perf.d.ts.map +0 -1
- package/node_modules/lru-cache/dist/commonjs/browser/perf.js +0 -10
- package/node_modules/lru-cache/dist/commonjs/browser/perf.js.map +0 -1
- package/node_modules/lru-cache/dist/commonjs/diagnostics-channel-cjs.cjs.map +0 -1
- package/node_modules/lru-cache/dist/commonjs/diagnostics-channel-cjs.d.cts.map +0 -1
- package/node_modules/lru-cache/dist/commonjs/diagnostics-channel.d.ts +0 -5
- package/node_modules/lru-cache/dist/commonjs/diagnostics-channel.js +0 -7
- package/node_modules/lru-cache/dist/commonjs/index.d.ts +0 -1400
- package/node_modules/lru-cache/dist/commonjs/index.d.ts.map +0 -1
- package/node_modules/lru-cache/dist/commonjs/index.js +0 -1726
- package/node_modules/lru-cache/dist/commonjs/index.js.map +0 -1
- package/node_modules/lru-cache/dist/commonjs/index.min.js +0 -2
- package/node_modules/lru-cache/dist/commonjs/index.min.js.map +0 -7
- package/node_modules/lru-cache/dist/commonjs/node/diagnostics-channel-node.d.ts.map +0 -1
- package/node_modules/lru-cache/dist/commonjs/node/diagnostics-channel-node.js.map +0 -1
- package/node_modules/lru-cache/dist/commonjs/node/diagnostics-channel.d.ts +0 -5
- package/node_modules/lru-cache/dist/commonjs/node/diagnostics-channel.js +0 -9
- package/node_modules/lru-cache/dist/commonjs/node/index.d.ts +0 -1400
- package/node_modules/lru-cache/dist/commonjs/node/index.d.ts.map +0 -1
- package/node_modules/lru-cache/dist/commonjs/node/index.js +0 -1726
- package/node_modules/lru-cache/dist/commonjs/node/index.js.map +0 -1
- package/node_modules/lru-cache/dist/commonjs/node/index.min.js +0 -2
- package/node_modules/lru-cache/dist/commonjs/node/index.min.js.map +0 -7
- package/node_modules/lru-cache/dist/commonjs/node/perf.d.ts +0 -12
- package/node_modules/lru-cache/dist/commonjs/node/perf.d.ts.map +0 -1
- package/node_modules/lru-cache/dist/commonjs/node/perf.js +0 -10
- package/node_modules/lru-cache/dist/commonjs/node/perf.js.map +0 -1
- package/node_modules/lru-cache/dist/commonjs/package.json +0 -3
- package/node_modules/lru-cache/dist/commonjs/perf.d.ts +0 -12
- package/node_modules/lru-cache/dist/commonjs/perf.d.ts.map +0 -1
- package/node_modules/lru-cache/dist/commonjs/perf.js +0 -10
- package/node_modules/lru-cache/dist/commonjs/perf.js.map +0 -1
- package/node_modules/lru-cache/dist/esm/browser/diagnostics-channel-browser.d.ts.map +0 -1
- package/node_modules/lru-cache/dist/esm/browser/diagnostics-channel-browser.js.map +0 -1
- package/node_modules/lru-cache/dist/esm/browser/diagnostics-channel.d.ts +0 -5
- package/node_modules/lru-cache/dist/esm/browser/diagnostics-channel.js +0 -4
- package/node_modules/lru-cache/dist/esm/browser/index.d.ts +0 -1400
- package/node_modules/lru-cache/dist/esm/browser/index.d.ts.map +0 -1
- package/node_modules/lru-cache/dist/esm/browser/index.js +0 -1722
- package/node_modules/lru-cache/dist/esm/browser/index.js.map +0 -1
- package/node_modules/lru-cache/dist/esm/browser/index.min.js +0 -2
- package/node_modules/lru-cache/dist/esm/browser/index.min.js.map +0 -7
- package/node_modules/lru-cache/dist/esm/browser/perf.d.ts +0 -12
- package/node_modules/lru-cache/dist/esm/browser/perf.d.ts.map +0 -1
- package/node_modules/lru-cache/dist/esm/browser/perf.js +0 -7
- package/node_modules/lru-cache/dist/esm/browser/perf.js.map +0 -1
- package/node_modules/lru-cache/dist/esm/diagnostics-channel-esm.d.mts.map +0 -1
- package/node_modules/lru-cache/dist/esm/diagnostics-channel-esm.mjs.map +0 -1
- package/node_modules/lru-cache/dist/esm/diagnostics-channel.d.ts +0 -5
- package/node_modules/lru-cache/dist/esm/diagnostics-channel.js +0 -19
- package/node_modules/lru-cache/dist/esm/index.d.ts +0 -1400
- package/node_modules/lru-cache/dist/esm/index.d.ts.map +0 -1
- package/node_modules/lru-cache/dist/esm/index.js +0 -1722
- package/node_modules/lru-cache/dist/esm/index.js.map +0 -1
- package/node_modules/lru-cache/dist/esm/index.min.js +0 -2
- package/node_modules/lru-cache/dist/esm/index.min.js.map +0 -7
- package/node_modules/lru-cache/dist/esm/node/diagnostics-channel-node.d.ts.map +0 -1
- package/node_modules/lru-cache/dist/esm/node/diagnostics-channel-node.js.map +0 -1
- package/node_modules/lru-cache/dist/esm/node/diagnostics-channel.d.ts +0 -5
- package/node_modules/lru-cache/dist/esm/node/diagnostics-channel.js +0 -6
- package/node_modules/lru-cache/dist/esm/node/index.d.ts +0 -1400
- package/node_modules/lru-cache/dist/esm/node/index.d.ts.map +0 -1
- package/node_modules/lru-cache/dist/esm/node/index.js +0 -1722
- package/node_modules/lru-cache/dist/esm/node/index.js.map +0 -1
- package/node_modules/lru-cache/dist/esm/node/index.min.js +0 -2
- package/node_modules/lru-cache/dist/esm/node/index.min.js.map +0 -7
- package/node_modules/lru-cache/dist/esm/node/perf.d.ts +0 -12
- package/node_modules/lru-cache/dist/esm/node/perf.d.ts.map +0 -1
- package/node_modules/lru-cache/dist/esm/node/perf.js +0 -7
- package/node_modules/lru-cache/dist/esm/node/perf.js.map +0 -1
- package/node_modules/lru-cache/dist/esm/package.json +0 -3
- package/node_modules/lru-cache/dist/esm/perf.d.ts +0 -12
- package/node_modules/lru-cache/dist/esm/perf.d.ts.map +0 -1
- package/node_modules/lru-cache/dist/esm/perf.js +0 -7
- package/node_modules/lru-cache/dist/esm/perf.js.map +0 -1
- package/node_modules/lru-memoizer/lib/async.d.ts.map +0 -1
- package/node_modules/lru-memoizer/lib/async.js.map +0 -1
- package/node_modules/lru-memoizer/lib/freeze.d.ts.map +0 -1
- package/node_modules/lru-memoizer/lib/freeze.js.map +0 -1
- package/node_modules/lru-memoizer/lib/index.d.ts.map +0 -1
- package/node_modules/lru-memoizer/lib/index.js.map +0 -1
- package/node_modules/lru-memoizer/lib/sync.d.ts.map +0 -1
- package/node_modules/lru-memoizer/lib/sync.js.map +0 -1
- package/node_modules/lru-memoizer/lib/util.d.ts.map +0 -1
- package/node_modules/lru-memoizer/lib/util.js.map +0 -1
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/index.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/jwe/compact/decrypt.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/jwe/compact/encrypt.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/jwe/flattened/decrypt.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/jwe/flattened/encrypt.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/jwe/general/decrypt.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/jwe/general/encrypt.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/jwk/embedded.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/jwk/thumbprint.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/jwks/local.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/jwks/remote.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/jws/compact/sign.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/jws/compact/verify.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/jws/flattened/sign.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/jws/flattened/verify.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/jws/general/sign.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/jws/general/verify.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/jwt/decrypt.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/jwt/encrypt.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/jwt/produce.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/jwt/sign.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/jwt/unsecured.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/jwt/verify.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/key/export.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/key/generate_key_pair.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/key/generate_secret.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/key/import.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/lib/aesgcmkw.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/lib/buffer_utils.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/lib/cek.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/lib/check_iv_length.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/lib/check_key_type.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/lib/check_p2s.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/lib/crypto_key.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/lib/decrypt_key_management.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/lib/encrypt_key_management.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/lib/epoch.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/lib/format_pem.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/lib/invalid_key_input.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/lib/is_disjoint.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/lib/is_object.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/lib/iv.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/lib/jwt_claims_set.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/lib/secs.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/lib/validate_algorithms.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/lib/validate_crit.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/package.json +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/aeskw.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/asn1.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/base64url.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/bogus.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/check_cek_length.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/check_key_length.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/decrypt.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/digest.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/ecdhes.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/encrypt.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/fetch_jwks.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/generate.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/get_sign_verify_key.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/is_key_like.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/jwk_to_key.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/key_to_jwk.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/pbes2kw.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/random.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/rsaes.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/runtime.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/sign.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/subtle_dsa.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/subtle_rsaes.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/timing_safe_equal.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/verify.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/webcrypto.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/zlib.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/util/base64url.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/util/decode_jwt.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/util/decode_protected_header.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/util/errors.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/util/runtime.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/index.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/jwe/compact/decrypt.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/jwe/compact/encrypt.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/jwe/flattened/decrypt.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/jwe/flattened/encrypt.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/jwe/general/decrypt.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/jwe/general/encrypt.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/jwk/embedded.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/jwk/thumbprint.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/jwks/local.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/jwks/remote.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/jws/compact/sign.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/jws/compact/verify.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/jws/flattened/sign.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/jws/flattened/verify.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/jws/general/sign.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/jws/general/verify.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/jwt/decrypt.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/jwt/encrypt.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/jwt/produce.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/jwt/sign.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/jwt/unsecured.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/jwt/verify.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/key/export.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/key/generate_key_pair.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/key/generate_secret.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/key/import.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/lib/aesgcmkw.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/lib/buffer_utils.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/lib/cek.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/lib/check_iv_length.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/lib/check_key_type.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/lib/check_p2s.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/lib/crypto_key.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/lib/decrypt_key_management.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/lib/encrypt_key_management.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/lib/epoch.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/lib/invalid_key_input.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/lib/is_disjoint.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/lib/is_object.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/lib/iv.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/lib/jwt_claims_set.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/lib/secs.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/lib/validate_algorithms.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/lib/validate_crit.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/aeskw.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/asn1.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/asn1_sequence_decoder.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/asn1_sequence_encoder.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/base64url.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/cbc_tag.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/check_cek_length.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/check_modulus_length.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/ciphers.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/decrypt.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/digest.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/dsa_digest.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/ecdhes.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/encrypt.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/fetch_jwks.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/flags.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/generate.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/get_named_curve.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/get_sign_verify_key.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/hmac_digest.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/is_key_like.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/is_key_object.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/jwk_to_key.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/key_to_jwk.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/node_key.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/pbes2kw.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/random.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/rsaes.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/runtime.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/sign.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/timing_safe_equal.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/verify.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/webcrypto.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/zlib.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/util/base64url.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/util/decode_jwt.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/util/decode_protected_header.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/util/errors.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/util/runtime.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/index.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/jwe/compact/decrypt.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/jwe/compact/encrypt.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/jwe/flattened/decrypt.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/jwe/flattened/encrypt.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/jwe/general/decrypt.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/jwe/general/encrypt.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/jwk/embedded.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/jwk/thumbprint.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/jwks/local.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/jwks/remote.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/jws/compact/sign.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/jws/compact/verify.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/jws/flattened/sign.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/jws/flattened/verify.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/jws/general/sign.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/jws/general/verify.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/jwt/decrypt.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/jwt/encrypt.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/jwt/produce.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/jwt/sign.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/jwt/unsecured.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/jwt/verify.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/key/export.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/key/generate_key_pair.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/key/generate_secret.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/key/import.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/lib/aesgcmkw.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/lib/buffer_utils.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/lib/cek.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/lib/check_iv_length.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/lib/check_key_type.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/lib/check_p2s.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/lib/crypto_key.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/lib/decrypt_key_management.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/lib/encrypt_key_management.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/lib/epoch.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/lib/invalid_key_input.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/lib/is_disjoint.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/lib/is_object.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/lib/iv.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/lib/jwt_claims_set.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/lib/secs.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/lib/validate_algorithms.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/lib/validate_crit.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/package.json +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/aeskw.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/asn1.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/asn1_sequence_decoder.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/asn1_sequence_encoder.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/base64url.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/cbc_tag.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/check_cek_length.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/check_modulus_length.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/ciphers.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/decrypt.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/digest.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/dsa_digest.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/ecdhes.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/encrypt.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/fetch_jwks.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/flags.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/generate.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/get_named_curve.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/get_sign_verify_key.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/hmac_digest.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/is_key_like.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/is_key_object.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/jwk_to_key.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/key_to_jwk.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/node_key.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/pbes2kw.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/random.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/rsaes.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/runtime.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/sign.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/timing_safe_equal.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/verify.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/webcrypto.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/zlib.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/util/base64url.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/util/decode_jwt.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/util/decode_protected_header.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/util/errors.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/util/runtime.js +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/types/jwt/produce.d.ts +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/types/util/runtime.d.ts +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/lru-cache → lru-cache}/LICENSE +0 -0
- /package/node_modules/{@microsoft/teams.apps/node_modules/lru-cache → lru-cache}/index.js +0 -0
|
@@ -135,7 +135,9 @@ function mergePatterns(parentPattern, childPattern) {
|
|
|
135
135
|
allInclusions = ["*"];
|
|
136
136
|
}
|
|
137
137
|
const optimizedInclusions = allInclusions.includes("*") ? ["*"] : allInclusions;
|
|
138
|
-
const allExclusions = [
|
|
138
|
+
const allExclusions = [
|
|
139
|
+
.../* @__PURE__ */ new Set([...parent.exclusions, ...child.exclusions])
|
|
140
|
+
];
|
|
139
141
|
const inclusionStrings = optimizedInclusions;
|
|
140
142
|
const exclusionStrings = allExclusions.map((e) => "-" + e);
|
|
141
143
|
const allPatterns = [...inclusionStrings, ...exclusionStrings];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/logging/console.ts"],"names":["ANSI"],"mappings":"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","file":"console.js","sourcesContent":["import { ANSI } from './ansi';\nimport { ILogger, ILoggerOptions, LogLevel } from './logger';\n\nexport class ConsoleLogger implements ILogger {\n readonly loggerOptions: ILoggerOptions;\n\n protected readonly name: string;\n protected readonly level: LogLevel;\n\n private readonly _enabled: boolean;\n private readonly _levels = {\n error: 100,\n warn: 200,\n info: 300,\n debug: 400,\n trace: 500,\n };\n\n private readonly _colors = {\n error: ANSI.ForegroundRed,\n warn: ANSI.ForegroundYellow,\n info: ANSI.ForegroundCyan,\n debug: ANSI.ForegroundMagenta,\n trace: ANSI.BackgroundBlue\n };\n\n constructor(name: string, options?: ILoggerOptions) {\n this.name = name;\n\n const env = typeof process === 'undefined' ? undefined : process.env;\n const logNamePattern = env?.LOG || options?.pattern || '*';\n this._enabled = parseMagicExpr(logNamePattern).test(name);\n this.level = parseLogLevel(env?.LOG_LEVEL) || options?.level || 'info';\n this.loggerOptions = options ?? {\n level: this.level,\n pattern: logNamePattern,\n };\n }\n\n error(...msg: any[]) {\n this.log('error', ...msg);\n }\n\n warn(...msg: any[]) {\n this.log('warn', ...msg);\n }\n\n info(...msg: any[]) {\n this.log('info', ...msg);\n }\n\n debug(...msg: any[]) {\n this.log('debug', ...msg);\n }\n\n trace(...msg: any[]) {\n this.log('trace', ...msg);\n }\n\n log(level: LogLevel, ...msg: any[]) {\n if (!this._enabled) {\n return;\n }\n\n if (this._levels[level] > this._levels[this.level]) {\n return;\n }\n\n const prefix = [this._colors[level], ANSI.Bold, `[${level.toUpperCase()}]`];\n const name = [this.name, ANSI.ForegroundReset, ANSI.BoldReset];\n\n for (const m of msg) {\n let text = new String(m);\n\n if (typeof m === 'object') {\n text = JSON.stringify(m, null, 2);\n }\n\n for (const line of text.split('\\n')) {\n console[level](prefix.join(''), name.join(''), line);\n }\n }\n }\n\n child(name: string, overrideOptions?: ILoggerOptions) {\n const mergedPattern = mergePatterns(\n this.loggerOptions.pattern,\n overrideOptions?.pattern\n );\n\n return new ConsoleLogger(`${this.name}/${name}`, {\n ...this.loggerOptions,\n ...overrideOptions,\n pattern: mergedPattern\n });\n }\n}\n\nfunction parsePatternString(pattern: string): { inclusions: string[]; exclusions: string[] } {\n const patterns = pattern.split(',').map(p => p.trim());\n const inclusions: string[] = [];\n const exclusions: string[] = [];\n\n for (const p of patterns) {\n if (p.startsWith('-')) {\n exclusions.push(p.substring(1));\n } else {\n inclusions.push(p);\n }\n }\n\n return { inclusions, exclusions };\n}\n\nfunction parseMagicExpr(pattern: string) {\n const { inclusions: inclusionPatterns, exclusions: exclusionPatterns } = parsePatternString(pattern);\n\n const inclusions: RegExp[] = inclusionPatterns.map(p => patternToRegex(p));\n const exclusions: RegExp[] = exclusionPatterns.map(p => patternToRegex(p));\n\n // If only exclusions specified, implicitly include everything\n if (inclusions.length === 0 && exclusions.length > 0) {\n inclusions.push(/.*/);\n }\n\n return {\n test: (name: string) => {\n // Check if name matches any inclusion pattern\n const matchesInclusion = inclusions.some(regex => regex.test(name));\n if (!matchesInclusion) return false;\n\n // Check if name matches any exclusion pattern\n const matchesExclusion = exclusions.some(regex => regex.test(name));\n\n // Must match inclusion AND not match any exclusion\n return !matchesExclusion;\n }\n };\n}\n\nfunction patternToRegex(pattern: string): RegExp {\n let res = '';\n const parts = pattern.split('*');\n\n for (let i = 0; i < parts.length; i++) {\n if (i > 0) {\n res += '.*';\n }\n\n res += parts[i];\n }\n\n return new RegExp(res);\n}\n\nfunction mergePatterns(parentPattern?: string, childPattern?: string): string {\n if (!parentPattern && !childPattern) {\n return '*';\n }\n\n if (!parentPattern) {\n return childPattern!;\n }\n\n if (!childPattern) {\n return parentPattern;\n }\n\n const parent = parsePatternString(parentPattern);\n const child = parsePatternString(childPattern);\n\n // Combine and deduplicate inclusions\n let allInclusions = [...new Set([...parent.inclusions, ...child.inclusions])];\n\n // If only exclusions specified, implicitly include everything\n if (allInclusions.length === 0) {\n allInclusions = ['*'];\n }\n\n // Optimize: If '*' exists, it matches everything, so remove other inclusions\n const optimizedInclusions = allInclusions.includes('*') ? ['*'] : allInclusions;\n\n // Combine and deduplicate exclusions\n const allExclusions = [...new Set([...parent.exclusions, ...child.exclusions])];\n\n // Build merged pattern: combine inclusions and exclusions\n const inclusionStrings = optimizedInclusions;\n const exclusionStrings = allExclusions.map(e => '-' + e);\n const allPatterns = [...inclusionStrings, ...exclusionStrings];\n\n return allPatterns.join(',');\n}\n\nfunction parseLogLevel(level?: string): LogLevel | undefined {\n const value = level?.toLowerCase();\n switch (value) {\n case 'error':\n case 'warn':\n case 'info':\n case 'debug':\n case 'trace':\n return value;\n default:\n return undefined;\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../../src/logging/console.ts"],"names":["ANSI"],"mappings":"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","file":"console.js","sourcesContent":["import { ANSI } from './ansi';\n\nimport type { ILogger, ILoggerOptions, LogLevel } from './logger';\n\nexport class ConsoleLogger implements ILogger {\n readonly loggerOptions: ILoggerOptions;\n\n protected readonly name: string;\n protected readonly level: LogLevel;\n\n private readonly _enabled: boolean;\n private readonly _levels = {\n error: 100,\n warn: 200,\n info: 300,\n debug: 400,\n trace: 500,\n };\n\n private readonly _colors = {\n error: ANSI.ForegroundRed,\n warn: ANSI.ForegroundYellow,\n info: ANSI.ForegroundCyan,\n debug: ANSI.ForegroundMagenta,\n trace: ANSI.BackgroundBlue\n };\n\n constructor(name: string, options?: ILoggerOptions) {\n this.name = name;\n\n const env = typeof process === 'undefined' ? undefined : process.env;\n const logNamePattern = env?.LOG || options?.pattern || '*';\n this._enabled = parseMagicExpr(logNamePattern).test(name);\n this.level = parseLogLevel(env?.LOG_LEVEL) || options?.level || 'info';\n this.loggerOptions = options ?? {\n level: this.level,\n pattern: logNamePattern,\n };\n }\n\n error(...msg: any[]): void {\n this.log('error', ...msg);\n }\n\n warn(...msg: any[]): void {\n this.log('warn', ...msg);\n }\n\n info(...msg: any[]): void {\n this.log('info', ...msg);\n }\n\n debug(...msg: any[]): void {\n this.log('debug', ...msg);\n }\n\n trace(...msg: any[]): void {\n this.log('trace', ...msg);\n }\n\n log(level: LogLevel, ...msg: any[]): void {\n if (!this._enabled) {\n return;\n }\n\n if (this._levels[level] > this._levels[this.level]) {\n return;\n }\n\n const prefix = [this._colors[level], ANSI.Bold, `[${level.toUpperCase()}]`];\n const name = [this.name, ANSI.ForegroundReset, ANSI.BoldReset];\n\n for (const m of msg) {\n let text = new String(m);\n\n if (typeof m === 'object') {\n text = JSON.stringify(m, null, 2);\n }\n\n for (const line of text.split('\\n')) {\n console[level](prefix.join(''), name.join(''), line);\n }\n }\n }\n\n child(name: string, overrideOptions?: ILoggerOptions): ILogger {\n const mergedPattern = mergePatterns(\n this.loggerOptions.pattern,\n overrideOptions?.pattern\n );\n\n return new ConsoleLogger(`${this.name}/${name}`, {\n ...this.loggerOptions,\n ...overrideOptions,\n pattern: mergedPattern\n });\n }\n}\n\nfunction parsePatternString(pattern: string): {\n inclusions: string[];\n exclusions: string[];\n} {\n const patterns = pattern.split(',').map((p) => p.trim());\n const inclusions: string[] = [];\n const exclusions: string[] = [];\n\n for (const p of patterns) {\n if (p.startsWith('-')) {\n exclusions.push(p.substring(1));\n } else {\n inclusions.push(p);\n }\n }\n\n return { inclusions, exclusions };\n}\n\nfunction parseMagicExpr(pattern: string): { test: (name: string) => boolean } {\n const { inclusions: inclusionPatterns, exclusions: exclusionPatterns } =\n parsePatternString(pattern);\n\n const inclusions: RegExp[] = inclusionPatterns.map(p => patternToRegex(p));\n const exclusions: RegExp[] = exclusionPatterns.map(p => patternToRegex(p));\n\n // If only exclusions specified, implicitly include everything\n if (inclusions.length === 0 && exclusions.length > 0) {\n inclusions.push(/.*/);\n }\n\n return {\n test: (name: string) => {\n // Check if name matches any inclusion pattern\n const matchesInclusion = inclusions.some((regex) => regex.test(name));\n if (!matchesInclusion) return false;\n\n // Check if name matches any exclusion pattern\n const matchesExclusion = exclusions.some((regex) => regex.test(name));\n\n // Must match inclusion AND not match any exclusion\n return !matchesExclusion;\n },\n };\n}\n\nfunction patternToRegex(pattern: string): RegExp {\n let res = '';\n const parts = pattern.split('*');\n\n for (let i = 0; i < parts.length; i++) {\n if (i > 0) {\n res += '.*';\n }\n\n res += parts[i];\n }\n\n return new RegExp(res);\n}\n\nfunction mergePatterns(parentPattern?: string, childPattern?: string): string {\n if (!parentPattern && !childPattern) {\n return '*';\n }\n\n if (!parentPattern) {\n return childPattern!;\n }\n\n if (!childPattern) {\n return parentPattern;\n }\n\n const parent = parsePatternString(parentPattern);\n const child = parsePatternString(childPattern);\n\n // Combine and deduplicate inclusions\n let allInclusions = [...new Set([...parent.inclusions, ...child.inclusions])];\n\n // If only exclusions specified, implicitly include everything\n if (allInclusions.length === 0) {\n allInclusions = ['*'];\n }\n\n // Optimize: If '*' exists, it matches everything, so remove other inclusions\n const optimizedInclusions = allInclusions.includes('*')\n ? ['*']\n : allInclusions;\n\n // Combine and deduplicate exclusions\n const allExclusions = [\n ...new Set([...parent.exclusions, ...child.exclusions]),\n ];\n\n // Build merged pattern: combine inclusions and exclusions\n const inclusionStrings = optimizedInclusions;\n const exclusionStrings = allExclusions.map(e => '-' + e);\n const allPatterns = [...inclusionStrings, ...exclusionStrings];\n\n return allPatterns.join(',');\n}\n\nfunction parseLogLevel(level?: string): LogLevel | undefined {\n const value = level?.toLowerCase();\n switch (value) {\n case 'error':\n case 'warn':\n case 'info':\n case 'debug':\n case 'trace':\n return value;\n default:\n return undefined;\n }\n}\n"]}
|
|
@@ -133,7 +133,9 @@ function mergePatterns(parentPattern, childPattern) {
|
|
|
133
133
|
allInclusions = ["*"];
|
|
134
134
|
}
|
|
135
135
|
const optimizedInclusions = allInclusions.includes("*") ? ["*"] : allInclusions;
|
|
136
|
-
const allExclusions = [
|
|
136
|
+
const allExclusions = [
|
|
137
|
+
.../* @__PURE__ */ new Set([...parent.exclusions, ...child.exclusions])
|
|
138
|
+
];
|
|
137
139
|
const inclusionStrings = optimizedInclusions;
|
|
138
140
|
const exclusionStrings = allExclusions.map((e) => "-" + e);
|
|
139
141
|
const allPatterns = [...inclusionStrings, ...exclusionStrings];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/logging/console.ts"],"names":[],"mappings":"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","file":"console.mjs","sourcesContent":["import { ANSI } from './ansi';\nimport { ILogger, ILoggerOptions, LogLevel } from './logger';\n\nexport class ConsoleLogger implements ILogger {\n readonly loggerOptions: ILoggerOptions;\n\n protected readonly name: string;\n protected readonly level: LogLevel;\n\n private readonly _enabled: boolean;\n private readonly _levels = {\n error: 100,\n warn: 200,\n info: 300,\n debug: 400,\n trace: 500,\n };\n\n private readonly _colors = {\n error: ANSI.ForegroundRed,\n warn: ANSI.ForegroundYellow,\n info: ANSI.ForegroundCyan,\n debug: ANSI.ForegroundMagenta,\n trace: ANSI.BackgroundBlue\n };\n\n constructor(name: string, options?: ILoggerOptions) {\n this.name = name;\n\n const env = typeof process === 'undefined' ? undefined : process.env;\n const logNamePattern = env?.LOG || options?.pattern || '*';\n this._enabled = parseMagicExpr(logNamePattern).test(name);\n this.level = parseLogLevel(env?.LOG_LEVEL) || options?.level || 'info';\n this.loggerOptions = options ?? {\n level: this.level,\n pattern: logNamePattern,\n };\n }\n\n error(...msg: any[]) {\n this.log('error', ...msg);\n }\n\n warn(...msg: any[]) {\n this.log('warn', ...msg);\n }\n\n info(...msg: any[]) {\n this.log('info', ...msg);\n }\n\n debug(...msg: any[]) {\n this.log('debug', ...msg);\n }\n\n trace(...msg: any[]) {\n this.log('trace', ...msg);\n }\n\n log(level: LogLevel, ...msg: any[]) {\n if (!this._enabled) {\n return;\n }\n\n if (this._levels[level] > this._levels[this.level]) {\n return;\n }\n\n const prefix = [this._colors[level], ANSI.Bold, `[${level.toUpperCase()}]`];\n const name = [this.name, ANSI.ForegroundReset, ANSI.BoldReset];\n\n for (const m of msg) {\n let text = new String(m);\n\n if (typeof m === 'object') {\n text = JSON.stringify(m, null, 2);\n }\n\n for (const line of text.split('\\n')) {\n console[level](prefix.join(''), name.join(''), line);\n }\n }\n }\n\n child(name: string, overrideOptions?: ILoggerOptions) {\n const mergedPattern = mergePatterns(\n this.loggerOptions.pattern,\n overrideOptions?.pattern\n );\n\n return new ConsoleLogger(`${this.name}/${name}`, {\n ...this.loggerOptions,\n ...overrideOptions,\n pattern: mergedPattern\n });\n }\n}\n\nfunction parsePatternString(pattern: string): { inclusions: string[]; exclusions: string[] } {\n const patterns = pattern.split(',').map(p => p.trim());\n const inclusions: string[] = [];\n const exclusions: string[] = [];\n\n for (const p of patterns) {\n if (p.startsWith('-')) {\n exclusions.push(p.substring(1));\n } else {\n inclusions.push(p);\n }\n }\n\n return { inclusions, exclusions };\n}\n\nfunction parseMagicExpr(pattern: string) {\n const { inclusions: inclusionPatterns, exclusions: exclusionPatterns } = parsePatternString(pattern);\n\n const inclusions: RegExp[] = inclusionPatterns.map(p => patternToRegex(p));\n const exclusions: RegExp[] = exclusionPatterns.map(p => patternToRegex(p));\n\n // If only exclusions specified, implicitly include everything\n if (inclusions.length === 0 && exclusions.length > 0) {\n inclusions.push(/.*/);\n }\n\n return {\n test: (name: string) => {\n // Check if name matches any inclusion pattern\n const matchesInclusion = inclusions.some(regex => regex.test(name));\n if (!matchesInclusion) return false;\n\n // Check if name matches any exclusion pattern\n const matchesExclusion = exclusions.some(regex => regex.test(name));\n\n // Must match inclusion AND not match any exclusion\n return !matchesExclusion;\n }\n };\n}\n\nfunction patternToRegex(pattern: string): RegExp {\n let res = '';\n const parts = pattern.split('*');\n\n for (let i = 0; i < parts.length; i++) {\n if (i > 0) {\n res += '.*';\n }\n\n res += parts[i];\n }\n\n return new RegExp(res);\n}\n\nfunction mergePatterns(parentPattern?: string, childPattern?: string): string {\n if (!parentPattern && !childPattern) {\n return '*';\n }\n\n if (!parentPattern) {\n return childPattern!;\n }\n\n if (!childPattern) {\n return parentPattern;\n }\n\n const parent = parsePatternString(parentPattern);\n const child = parsePatternString(childPattern);\n\n // Combine and deduplicate inclusions\n let allInclusions = [...new Set([...parent.inclusions, ...child.inclusions])];\n\n // If only exclusions specified, implicitly include everything\n if (allInclusions.length === 0) {\n allInclusions = ['*'];\n }\n\n // Optimize: If '*' exists, it matches everything, so remove other inclusions\n const optimizedInclusions = allInclusions.includes('*') ? ['*'] : allInclusions;\n\n // Combine and deduplicate exclusions\n const allExclusions = [...new Set([...parent.exclusions, ...child.exclusions])];\n\n // Build merged pattern: combine inclusions and exclusions\n const inclusionStrings = optimizedInclusions;\n const exclusionStrings = allExclusions.map(e => '-' + e);\n const allPatterns = [...inclusionStrings, ...exclusionStrings];\n\n return allPatterns.join(',');\n}\n\nfunction parseLogLevel(level?: string): LogLevel | undefined {\n const value = level?.toLowerCase();\n switch (value) {\n case 'error':\n case 'warn':\n case 'info':\n case 'debug':\n case 'trace':\n return value;\n default:\n return undefined;\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../../src/logging/console.ts"],"names":[],"mappings":"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","file":"console.mjs","sourcesContent":["import { ANSI } from './ansi';\n\nimport type { ILogger, ILoggerOptions, LogLevel } from './logger';\n\nexport class ConsoleLogger implements ILogger {\n readonly loggerOptions: ILoggerOptions;\n\n protected readonly name: string;\n protected readonly level: LogLevel;\n\n private readonly _enabled: boolean;\n private readonly _levels = {\n error: 100,\n warn: 200,\n info: 300,\n debug: 400,\n trace: 500,\n };\n\n private readonly _colors = {\n error: ANSI.ForegroundRed,\n warn: ANSI.ForegroundYellow,\n info: ANSI.ForegroundCyan,\n debug: ANSI.ForegroundMagenta,\n trace: ANSI.BackgroundBlue\n };\n\n constructor(name: string, options?: ILoggerOptions) {\n this.name = name;\n\n const env = typeof process === 'undefined' ? undefined : process.env;\n const logNamePattern = env?.LOG || options?.pattern || '*';\n this._enabled = parseMagicExpr(logNamePattern).test(name);\n this.level = parseLogLevel(env?.LOG_LEVEL) || options?.level || 'info';\n this.loggerOptions = options ?? {\n level: this.level,\n pattern: logNamePattern,\n };\n }\n\n error(...msg: any[]): void {\n this.log('error', ...msg);\n }\n\n warn(...msg: any[]): void {\n this.log('warn', ...msg);\n }\n\n info(...msg: any[]): void {\n this.log('info', ...msg);\n }\n\n debug(...msg: any[]): void {\n this.log('debug', ...msg);\n }\n\n trace(...msg: any[]): void {\n this.log('trace', ...msg);\n }\n\n log(level: LogLevel, ...msg: any[]): void {\n if (!this._enabled) {\n return;\n }\n\n if (this._levels[level] > this._levels[this.level]) {\n return;\n }\n\n const prefix = [this._colors[level], ANSI.Bold, `[${level.toUpperCase()}]`];\n const name = [this.name, ANSI.ForegroundReset, ANSI.BoldReset];\n\n for (const m of msg) {\n let text = new String(m);\n\n if (typeof m === 'object') {\n text = JSON.stringify(m, null, 2);\n }\n\n for (const line of text.split('\\n')) {\n console[level](prefix.join(''), name.join(''), line);\n }\n }\n }\n\n child(name: string, overrideOptions?: ILoggerOptions): ILogger {\n const mergedPattern = mergePatterns(\n this.loggerOptions.pattern,\n overrideOptions?.pattern\n );\n\n return new ConsoleLogger(`${this.name}/${name}`, {\n ...this.loggerOptions,\n ...overrideOptions,\n pattern: mergedPattern\n });\n }\n}\n\nfunction parsePatternString(pattern: string): {\n inclusions: string[];\n exclusions: string[];\n} {\n const patterns = pattern.split(',').map((p) => p.trim());\n const inclusions: string[] = [];\n const exclusions: string[] = [];\n\n for (const p of patterns) {\n if (p.startsWith('-')) {\n exclusions.push(p.substring(1));\n } else {\n inclusions.push(p);\n }\n }\n\n return { inclusions, exclusions };\n}\n\nfunction parseMagicExpr(pattern: string): { test: (name: string) => boolean } {\n const { inclusions: inclusionPatterns, exclusions: exclusionPatterns } =\n parsePatternString(pattern);\n\n const inclusions: RegExp[] = inclusionPatterns.map(p => patternToRegex(p));\n const exclusions: RegExp[] = exclusionPatterns.map(p => patternToRegex(p));\n\n // If only exclusions specified, implicitly include everything\n if (inclusions.length === 0 && exclusions.length > 0) {\n inclusions.push(/.*/);\n }\n\n return {\n test: (name: string) => {\n // Check if name matches any inclusion pattern\n const matchesInclusion = inclusions.some((regex) => regex.test(name));\n if (!matchesInclusion) return false;\n\n // Check if name matches any exclusion pattern\n const matchesExclusion = exclusions.some((regex) => regex.test(name));\n\n // Must match inclusion AND not match any exclusion\n return !matchesExclusion;\n },\n };\n}\n\nfunction patternToRegex(pattern: string): RegExp {\n let res = '';\n const parts = pattern.split('*');\n\n for (let i = 0; i < parts.length; i++) {\n if (i > 0) {\n res += '.*';\n }\n\n res += parts[i];\n }\n\n return new RegExp(res);\n}\n\nfunction mergePatterns(parentPattern?: string, childPattern?: string): string {\n if (!parentPattern && !childPattern) {\n return '*';\n }\n\n if (!parentPattern) {\n return childPattern!;\n }\n\n if (!childPattern) {\n return parentPattern;\n }\n\n const parent = parsePatternString(parentPattern);\n const child = parsePatternString(childPattern);\n\n // Combine and deduplicate inclusions\n let allInclusions = [...new Set([...parent.inclusions, ...child.inclusions])];\n\n // If only exclusions specified, implicitly include everything\n if (allInclusions.length === 0) {\n allInclusions = ['*'];\n }\n\n // Optimize: If '*' exists, it matches everything, so remove other inclusions\n const optimizedInclusions = allInclusions.includes('*')\n ? ['*']\n : allInclusions;\n\n // Combine and deduplicate exclusions\n const allExclusions = [\n ...new Set([...parent.exclusions, ...child.exclusions]),\n ];\n\n // Build merged pattern: combine inclusions and exclusions\n const inclusionStrings = optimizedInclusions;\n const exclusionStrings = allExclusions.map(e => '-' + e);\n const allPatterns = [...inclusionStrings, ...exclusionStrings];\n\n return allPatterns.join(',');\n}\n\nfunction parseLogLevel(level?: string): LogLevel | undefined {\n const value = level?.toLowerCase();\n switch (value) {\n case 'error':\n case 'warn':\n case 'info':\n case 'debug':\n case 'trace':\n return value;\n default:\n return undefined;\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/logging/string.ts"],"names":["ANSI"],"mappings":";;;;AAMO,MAAM,MAAA,CAA6B;AAAA,EAChC,MAAA;AAAA,EAER,WAAA,CAAY,QAAQ,EAAA,EAAI;AACtB,IAAA,IAAA,CAAK,MAAA,GAAS,KAAA;AAAA,EAChB;AAAA,EAEA,KAAA,
|
|
1
|
+
{"version":3,"sources":["../../src/logging/string.ts"],"names":["ANSI"],"mappings":"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","file":"string.js","sourcesContent":["import { ANSI } from './ansi';\n\ntype StringLike = {\n toString(): string;\n};\n\nexport class String implements StringLike {\n private _value: string;\n\n constructor(value = '') {\n this._value = value;\n }\n\n clear(): this {\n this._value = '';\n return this;\n }\n\n append(...text: StringLike[]): this {\n this._value += text.join('');\n return this;\n }\n\n reset(): this {\n this._value += ANSI.Reset;\n return this;\n }\n\n bold(text: StringLike): this {\n this._value += ANSI.Bold + text.toString() + ANSI.BoldReset;\n return this;\n }\n\n italic(text: StringLike): this {\n this._value += ANSI.Italic + text.toString() + ANSI.ItalicReset;\n return this;\n }\n\n underline(text: StringLike): this {\n this._value += ANSI.Underline + text.toString() + ANSI.UnderlineReset;\n return this;\n }\n\n strike(text: StringLike): this {\n this._value += ANSI.Strike + text.toString() + ANSI.StrikeReset;\n return this;\n }\n\n black(text: StringLike): this {\n this._value +=\n ANSI.ForegroundBlack + text.toString() + ANSI.ForegroundReset;\n return this;\n }\n\n bgBlack(text: StringLike): this {\n this._value +=\n ANSI.BackgroundBlack + text.toString() + ANSI.BackgroundReset;\n return this;\n }\n\n red(text: StringLike): this {\n this._value += ANSI.ForegroundRed + text.toString() + ANSI.ForegroundReset;\n return this;\n }\n\n bgRed(text: StringLike): this {\n this._value += ANSI.BackgroundRed + text.toString() + ANSI.BackgroundReset;\n return this;\n }\n\n green(text: StringLike): this {\n this._value +=\n ANSI.ForegroundGreen + text.toString() + ANSI.ForegroundReset;\n return this;\n }\n\n bgGreen(text: StringLike): this {\n this._value +=\n ANSI.BackgroundGreen + text.toString() + ANSI.BackgroundReset;\n return this;\n }\n\n yellow(text: StringLike): this {\n this._value +=\n ANSI.ForegroundYellow + text.toString() + ANSI.ForegroundReset;\n return this;\n }\n\n bgYellow(text: StringLike): this {\n this._value +=\n ANSI.BackgroundYellow + text.toString() + ANSI.BackgroundReset;\n return this;\n }\n\n blue(text: StringLike): this {\n this._value += ANSI.ForegroundBlue + text.toString() + ANSI.ForegroundReset;\n return this;\n }\n\n bgBlue(text: StringLike): this {\n this._value += ANSI.BackgroundBlue + text.toString() + ANSI.BackgroundReset;\n return this;\n }\n\n magenta(text: StringLike): this {\n this._value +=\n ANSI.ForegroundMagenta + text.toString() + ANSI.ForegroundReset;\n return this;\n }\n\n bgMagenta(text: StringLike): this {\n this._value +=\n ANSI.BackgroundMagenta + text.toString() + ANSI.BackgroundReset;\n return this;\n }\n\n cyan(text: StringLike): this {\n this._value += ANSI.ForegroundCyan + text.toString() + ANSI.ForegroundReset;\n return this;\n }\n\n bgCyan(text: StringLike): this {\n this._value += ANSI.BackgroundCyan + text.toString() + ANSI.BackgroundReset;\n return this;\n }\n\n white(text: StringLike): this {\n this._value +=\n ANSI.ForegroundWhite + text.toString() + ANSI.ForegroundReset;\n return this;\n }\n\n bgWhite(text: StringLike): this {\n this._value +=\n ANSI.BackgroundWhite + text.toString() + ANSI.BackgroundReset;\n return this;\n }\n\n gray(text: StringLike): this {\n this._value += ANSI.ForegroundGray + text.toString() + ANSI.ForegroundReset;\n return this;\n }\n\n default(text: StringLike): this {\n this._value +=\n ANSI.ForegroundDefault + text.toString() + ANSI.ForegroundReset;\n return this;\n }\n\n bgDefault(text: StringLike): this {\n this._value +=\n ANSI.BackgroundDefault + text.toString() + ANSI.BackgroundReset;\n return this;\n }\n\n toString(): string {\n return this._value;\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/logging/string.ts"],"names":[],"mappings":";;AAMO,MAAM,MAAA,CAA6B;AAAA,EAChC,MAAA;AAAA,EAER,WAAA,CAAY,QAAQ,EAAA,EAAI;AACtB,IAAA,IAAA,CAAK,MAAA,GAAS,KAAA;AAAA,EAChB;AAAA,EAEA,KAAA,
|
|
1
|
+
{"version":3,"sources":["../../src/logging/string.ts"],"names":[],"mappings":"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","file":"string.mjs","sourcesContent":["import { ANSI } from './ansi';\n\ntype StringLike = {\n toString(): string;\n};\n\nexport class String implements StringLike {\n private _value: string;\n\n constructor(value = '') {\n this._value = value;\n }\n\n clear(): this {\n this._value = '';\n return this;\n }\n\n append(...text: StringLike[]): this {\n this._value += text.join('');\n return this;\n }\n\n reset(): this {\n this._value += ANSI.Reset;\n return this;\n }\n\n bold(text: StringLike): this {\n this._value += ANSI.Bold + text.toString() + ANSI.BoldReset;\n return this;\n }\n\n italic(text: StringLike): this {\n this._value += ANSI.Italic + text.toString() + ANSI.ItalicReset;\n return this;\n }\n\n underline(text: StringLike): this {\n this._value += ANSI.Underline + text.toString() + ANSI.UnderlineReset;\n return this;\n }\n\n strike(text: StringLike): this {\n this._value += ANSI.Strike + text.toString() + ANSI.StrikeReset;\n return this;\n }\n\n black(text: StringLike): this {\n this._value +=\n ANSI.ForegroundBlack + text.toString() + ANSI.ForegroundReset;\n return this;\n }\n\n bgBlack(text: StringLike): this {\n this._value +=\n ANSI.BackgroundBlack + text.toString() + ANSI.BackgroundReset;\n return this;\n }\n\n red(text: StringLike): this {\n this._value += ANSI.ForegroundRed + text.toString() + ANSI.ForegroundReset;\n return this;\n }\n\n bgRed(text: StringLike): this {\n this._value += ANSI.BackgroundRed + text.toString() + ANSI.BackgroundReset;\n return this;\n }\n\n green(text: StringLike): this {\n this._value +=\n ANSI.ForegroundGreen + text.toString() + ANSI.ForegroundReset;\n return this;\n }\n\n bgGreen(text: StringLike): this {\n this._value +=\n ANSI.BackgroundGreen + text.toString() + ANSI.BackgroundReset;\n return this;\n }\n\n yellow(text: StringLike): this {\n this._value +=\n ANSI.ForegroundYellow + text.toString() + ANSI.ForegroundReset;\n return this;\n }\n\n bgYellow(text: StringLike): this {\n this._value +=\n ANSI.BackgroundYellow + text.toString() + ANSI.BackgroundReset;\n return this;\n }\n\n blue(text: StringLike): this {\n this._value += ANSI.ForegroundBlue + text.toString() + ANSI.ForegroundReset;\n return this;\n }\n\n bgBlue(text: StringLike): this {\n this._value += ANSI.BackgroundBlue + text.toString() + ANSI.BackgroundReset;\n return this;\n }\n\n magenta(text: StringLike): this {\n this._value +=\n ANSI.ForegroundMagenta + text.toString() + ANSI.ForegroundReset;\n return this;\n }\n\n bgMagenta(text: StringLike): this {\n this._value +=\n ANSI.BackgroundMagenta + text.toString() + ANSI.BackgroundReset;\n return this;\n }\n\n cyan(text: StringLike): this {\n this._value += ANSI.ForegroundCyan + text.toString() + ANSI.ForegroundReset;\n return this;\n }\n\n bgCyan(text: StringLike): this {\n this._value += ANSI.BackgroundCyan + text.toString() + ANSI.BackgroundReset;\n return this;\n }\n\n white(text: StringLike): this {\n this._value +=\n ANSI.ForegroundWhite + text.toString() + ANSI.ForegroundReset;\n return this;\n }\n\n bgWhite(text: StringLike): this {\n this._value +=\n ANSI.BackgroundWhite + text.toString() + ANSI.BackgroundReset;\n return this;\n }\n\n gray(text: StringLike): this {\n this._value += ANSI.ForegroundGray + text.toString() + ANSI.ForegroundReset;\n return this;\n }\n\n default(text: StringLike): this {\n this._value +=\n ANSI.ForegroundDefault + text.toString() + ANSI.ForegroundReset;\n return this;\n }\n\n bgDefault(text: StringLike): this {\n this._value +=\n ANSI.BackgroundDefault + text.toString() + ANSI.BackgroundReset;\n return this;\n }\n\n toString(): string {\n return this._value;\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/storage/list-local-storage.ts"],"names":[],"mappings":";;AAKO,MAAM,gBAAA,CAAqD;AAAA,EAC3C,KAAA;AAAA,EAEnB,WAAA,CAAY,IAAA,GAAY,EAAC,EAAG;AACxB,IAAA,IAAA,CAAK,KAAA,GAAQ,CAAC,GAAG,IAAI,CAAA;AAAA,EACzB;AAAA,EAEA,IAAI,GAAA,EAA4B;AAC5B,IAAA,OAAO,IAAA,CAAK,MAAM,GAAG,CAAA;AAAA,EACzB;AAAA,EAEA,GAAA,CAAI,KAAa,KAAA,EAAgB;AAC7B,IAAA,IAAA,CAAK,KAAA,CAAM,GAAG,CAAA,GAAI,KAAA;AAAA,EACtB;AAAA,EAEA,OAAO,GAAA,EAAmB;AACtB,IAAA,IAAA,CAAK,KAAA,CAAM,MAAA,CAAO,GAAA,EAAK,CAAC,CAAA;AAAA,EAC5B;AAAA,EAEA,KAAK,KAAA,EAAgB;AACjB,IAAA,IAAA,CAAK,KAAA,CAAM,KAAK,KAAK,CAAA;AAAA,EACzB;AAAA,EAEA,GAAA,GAAqB;AACjB,IAAA,OAAO,IAAA,CAAK,MAAM,GAAA,EAAI;AAAA,EAC1B;AAAA,EAEA,MAAA,GAAc;AACV,IAAA,OAAO,CAAC,GAAG,IAAA,CAAK,KAAK,CAAA;AAAA,EACzB;AAAA,EAEA,MAAA,GAAiB;AACb,IAAA,OAAO,KAAK,KAAA,CAAM,MAAA;AAAA,EACtB;AAAA,EAEA,MAAM,SAAA,EAAsD;AACxD,IAAA,OAAO,IAAA,CAAK,KAAA,CAAM,MAAA,CAAO,SAAS,CAAA;AAAA,EACtC;AACJ","file":"list-local-storage.js","sourcesContent":["import { IListStorage } from './storage';\n\n/**\n * An in-memory list storage.\n */\nexport class ListLocalStorage<T = any> implements IListStorage<T> {\n protected readonly _list: T[];\n\n constructor(data: T[] = []) {\n this._list = [...data];\n }\n\n get(key: number): T | undefined {\n return this._list[key];\n }\n\n set(key: number, value: T): void {\n this._list[key] = value;\n }\n\n delete(key: number): void {\n this._list.splice(key, 1);\n }\n\n push(value: T): void {\n this._list.push(value);\n }\n\n pop(): T | undefined {\n return this._list.pop();\n }\n\n values(): T[] {\n return [...this._list];\n }\n\n length(): number {\n return this._list.length;\n }\n\n where(predicate: (value: T, index: number) => boolean): T[] {\n return this._list.filter(predicate);\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../../src/storage/list-local-storage.ts"],"names":[],"mappings":";;AAKO,MAAM,gBAAA,CAAqD;AAAA,EAC3C,KAAA;AAAA,EAEnB,WAAA,CAAY,IAAA,GAAY,EAAC,EAAG;AACxB,IAAA,IAAA,CAAK,KAAA,GAAQ,CAAC,GAAG,IAAI,CAAA;AAAA,EACzB;AAAA,EAEA,IAAI,GAAA,EAA4B;AAC5B,IAAA,OAAO,IAAA,CAAK,MAAM,GAAG,CAAA;AAAA,EACzB;AAAA,EAEA,GAAA,CAAI,KAAa,KAAA,EAAgB;AAC7B,IAAA,IAAA,CAAK,KAAA,CAAM,GAAG,CAAA,GAAI,KAAA;AAAA,EACtB;AAAA,EAEA,OAAO,GAAA,EAAmB;AACtB,IAAA,IAAA,CAAK,KAAA,CAAM,MAAA,CAAO,GAAA,EAAK,CAAC,CAAA;AAAA,EAC5B;AAAA,EAEA,KAAK,KAAA,EAAgB;AACjB,IAAA,IAAA,CAAK,KAAA,CAAM,KAAK,KAAK,CAAA;AAAA,EACzB;AAAA,EAEA,GAAA,GAAqB;AACjB,IAAA,OAAO,IAAA,CAAK,MAAM,GAAA,EAAI;AAAA,EAC1B;AAAA,EAEA,MAAA,GAAc;AACV,IAAA,OAAO,CAAC,GAAG,IAAA,CAAK,KAAK,CAAA;AAAA,EACzB;AAAA,EAEA,MAAA,GAAiB;AACb,IAAA,OAAO,KAAK,KAAA,CAAM,MAAA;AAAA,EACtB;AAAA,EAEA,MAAM,SAAA,EAAsD;AACxD,IAAA,OAAO,IAAA,CAAK,KAAA,CAAM,MAAA,CAAO,SAAS,CAAA;AAAA,EACtC;AACJ","file":"list-local-storage.js","sourcesContent":["import type { IListStorage } from './storage';\n\n/**\n * An in-memory list storage.\n */\nexport class ListLocalStorage<T = any> implements IListStorage<T> {\n protected readonly _list: T[];\n\n constructor(data: T[] = []) {\n this._list = [...data];\n }\n\n get(key: number): T | undefined {\n return this._list[key];\n }\n\n set(key: number, value: T): void {\n this._list[key] = value;\n }\n\n delete(key: number): void {\n this._list.splice(key, 1);\n }\n\n push(value: T): void {\n this._list.push(value);\n }\n\n pop(): T | undefined {\n return this._list.pop();\n }\n\n values(): T[] {\n return [...this._list];\n }\n\n length(): number {\n return this._list.length;\n }\n\n where(predicate: (value: T, index: number) => boolean): T[] {\n return this._list.filter(predicate);\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/storage/list-local-storage.ts"],"names":[],"mappings":"AAKO,MAAM,gBAAA,CAAqD;AAAA,EAC3C,KAAA;AAAA,EAEnB,WAAA,CAAY,IAAA,GAAY,EAAC,EAAG;AACxB,IAAA,IAAA,CAAK,KAAA,GAAQ,CAAC,GAAG,IAAI,CAAA;AAAA,EACzB;AAAA,EAEA,IAAI,GAAA,EAA4B;AAC5B,IAAA,OAAO,IAAA,CAAK,MAAM,GAAG,CAAA;AAAA,EACzB;AAAA,EAEA,GAAA,CAAI,KAAa,KAAA,EAAgB;AAC7B,IAAA,IAAA,CAAK,KAAA,CAAM,GAAG,CAAA,GAAI,KAAA;AAAA,EACtB;AAAA,EAEA,OAAO,GAAA,EAAmB;AACtB,IAAA,IAAA,CAAK,KAAA,CAAM,MAAA,CAAO,GAAA,EAAK,CAAC,CAAA;AAAA,EAC5B;AAAA,EAEA,KAAK,KAAA,EAAgB;AACjB,IAAA,IAAA,CAAK,KAAA,CAAM,KAAK,KAAK,CAAA;AAAA,EACzB;AAAA,EAEA,GAAA,GAAqB;AACjB,IAAA,OAAO,IAAA,CAAK,MAAM,GAAA,EAAI;AAAA,EAC1B;AAAA,EAEA,MAAA,GAAc;AACV,IAAA,OAAO,CAAC,GAAG,IAAA,CAAK,KAAK,CAAA;AAAA,EACzB;AAAA,EAEA,MAAA,GAAiB;AACb,IAAA,OAAO,KAAK,KAAA,CAAM,MAAA;AAAA,EACtB;AAAA,EAEA,MAAM,SAAA,EAAsD;AACxD,IAAA,OAAO,IAAA,CAAK,KAAA,CAAM,MAAA,CAAO,SAAS,CAAA;AAAA,EACtC;AACJ","file":"list-local-storage.mjs","sourcesContent":["import { IListStorage } from './storage';\n\n/**\n * An in-memory list storage.\n */\nexport class ListLocalStorage<T = any> implements IListStorage<T> {\n protected readonly _list: T[];\n\n constructor(data: T[] = []) {\n this._list = [...data];\n }\n\n get(key: number): T | undefined {\n return this._list[key];\n }\n\n set(key: number, value: T): void {\n this._list[key] = value;\n }\n\n delete(key: number): void {\n this._list.splice(key, 1);\n }\n\n push(value: T): void {\n this._list.push(value);\n }\n\n pop(): T | undefined {\n return this._list.pop();\n }\n\n values(): T[] {\n return [...this._list];\n }\n\n length(): number {\n return this._list.length;\n }\n\n where(predicate: (value: T, index: number) => boolean): T[] {\n return this._list.filter(predicate);\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../../src/storage/list-local-storage.ts"],"names":[],"mappings":"AAKO,MAAM,gBAAA,CAAqD;AAAA,EAC3C,KAAA;AAAA,EAEnB,WAAA,CAAY,IAAA,GAAY,EAAC,EAAG;AACxB,IAAA,IAAA,CAAK,KAAA,GAAQ,CAAC,GAAG,IAAI,CAAA;AAAA,EACzB;AAAA,EAEA,IAAI,GAAA,EAA4B;AAC5B,IAAA,OAAO,IAAA,CAAK,MAAM,GAAG,CAAA;AAAA,EACzB;AAAA,EAEA,GAAA,CAAI,KAAa,KAAA,EAAgB;AAC7B,IAAA,IAAA,CAAK,KAAA,CAAM,GAAG,CAAA,GAAI,KAAA;AAAA,EACtB;AAAA,EAEA,OAAO,GAAA,EAAmB;AACtB,IAAA,IAAA,CAAK,KAAA,CAAM,MAAA,CAAO,GAAA,EAAK,CAAC,CAAA;AAAA,EAC5B;AAAA,EAEA,KAAK,KAAA,EAAgB;AACjB,IAAA,IAAA,CAAK,KAAA,CAAM,KAAK,KAAK,CAAA;AAAA,EACzB;AAAA,EAEA,GAAA,GAAqB;AACjB,IAAA,OAAO,IAAA,CAAK,MAAM,GAAA,EAAI;AAAA,EAC1B;AAAA,EAEA,MAAA,GAAc;AACV,IAAA,OAAO,CAAC,GAAG,IAAA,CAAK,KAAK,CAAA;AAAA,EACzB;AAAA,EAEA,MAAA,GAAiB;AACb,IAAA,OAAO,KAAK,KAAA,CAAM,MAAA;AAAA,EACtB;AAAA,EAEA,MAAM,SAAA,EAAsD;AACxD,IAAA,OAAO,IAAA,CAAK,KAAA,CAAM,MAAA,CAAO,SAAS,CAAA;AAAA,EACtC;AACJ","file":"list-local-storage.mjs","sourcesContent":["import type { IListStorage } from './storage';\n\n/**\n * An in-memory list storage.\n */\nexport class ListLocalStorage<T = any> implements IListStorage<T> {\n protected readonly _list: T[];\n\n constructor(data: T[] = []) {\n this._list = [...data];\n }\n\n get(key: number): T | undefined {\n return this._list[key];\n }\n\n set(key: number, value: T): void {\n this._list[key] = value;\n }\n\n delete(key: number): void {\n this._list.splice(key, 1);\n }\n\n push(value: T): void {\n this._list.push(value);\n }\n\n pop(): T | undefined {\n return this._list.pop();\n }\n\n values(): T[] {\n return [...this._list];\n }\n\n length(): number {\n return this._list.length;\n }\n\n where(predicate: (value: T, index: number) => boolean): T[] {\n return this._list.filter(predicate);\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/storage/local-storage.ts"],"names":[],"mappings":";;AASO,MAAM,YAAA,CAAqD;AAAA,EAC7C,MAAA;AAAA,EACA,KAAA;AAAA,EACA,QAAA;AAAA,EAEnB,IAAI,IAAA,
|
|
1
|
+
{"version":3,"sources":["../../src/storage/local-storage.ts"],"names":[],"mappings":";;AASO,MAAM,YAAA,CAAqD;AAAA,EAC7C,MAAA;AAAA,EACA,KAAA;AAAA,EACA,QAAA;AAAA,EAEnB,IAAI,IAAA,GAAiB;AACnB,IAAA,OAAO,IAAA,CAAK,KAAA;AAAA,EACd;AAAA,EAEA,IAAI,IAAA,GAAe;AACjB,IAAA,OAAO,KAAK,MAAA,CAAO,IAAA;AAAA,EACrB;AAAA,EAEA,YAAY,IAAA,GAA0B,EAAC,EAAG,OAAA,GAA+B,EAAC,EAAG;AAC3E,IAAA,IAAA,CAAK,SAAS,IAAI,GAAA,CAAe,MAAA,CAAO,OAAA,CAAQ,IAAI,CAAC,CAAA;AACrD,IAAA,IAAA,CAAK,KAAA,GAAQ,MAAA,CAAO,IAAA,CAAK,IAAI,CAAA;AAC7B,IAAA,IAAA,CAAK,QAAA,GAAW,OAAA;AAAA,EAClB;AAAA,EAEA,IAAI,GAAA,EAA4B;AAC9B,IAAA,IAAA,CAAK,KAAK,GAAG,CAAA;AACb,IAAA,OAAO,IAAA,CAAK,MAAA,CAAO,GAAA,CAAI,GAAG,CAAA;AAAA,EAC5B;AAAA,EAEA,GAAA,CAAI,KAAa,KAAA,EAAgB;AAC/B,IAAA,IAAI,CAAC,IAAA,CAAK,IAAA,CAAK,GAAG,CAAA,EAAG;AACnB,MAAA,IAAA,CAAK,KAAA,CAAM,KAAK,GAAG,CAAA;AAAA,IACrB;AAEA,IAAA,IAAI,IAAA,CAAK,SAAS,GAAA,EAAK;AACrB,MAAA,IAAI,IAAA,CAAK,KAAA,CAAM,MAAA,GAAS,IAAA,CAAK,SAAS,GAAA,EAAK;AACzC,QAAA,MAAM,CAAA,GAAI,IAAA,CAAK,KAAA,CAAM,KAAA,EAAM;AAE3B,QAAA,IAAI,CAAA,EAAG;AACL,UAAA,IAAA,CAAK,MAAA,CAAO,OAAO,CAAC,CAAA;AAAA,QACtB;AAAA,MACF;AAAA,IACF;AAEA,IAAA,IAAA,CAAK,MAAA,CAAO,GAAA,CAAI,GAAA,EAAK,KAAK,CAAA;AAAA,EAC5B;AAAA,EAEA,OAAO,GAAA,EAAmB;AACxB,IAAA,MAAM,IAAI,IAAA,CAAK,KAAA,CAAM,UAAU,CAAC,CAAA,KAAM,QAAQ,CAAC,CAAA;AAE/C,IAAA,IAAI,IAAI,EAAA,EAAI;AACV,MAAA,IAAA,CAAK,KAAA,CAAM,MAAA,CAAO,CAAA,EAAG,CAAC,CAAA;AAAA,IACxB;AAEA,IAAA,IAAA,CAAK,MAAA,CAAO,OAAO,GAAG,CAAA;AAAA,EACxB;AAAA,EAEA,QAAA,GAAmB;AACjB,IAAA,OAAO,IAAA,CAAK,SAAA;AAAA,MACV,KAAA,CAAM,IAAA,CAAK,IAAA,CAAK,MAAA,CAAO,OAAA,EAAS,CAAA,CAAE,GAAA,CAAI,CAAC,CAAC,GAAA,EAAK,KAAK,CAAA,MAAO;AAAA,QACvD,GAAA;AAAA,QACA;AAAA,OACF,CAAE,CAAA;AAAA,MACF,IAAA;AAAA,MACA;AAAA,KACF;AAAA,EACF;AAAA,EAEU,KAAK,GAAA,EAAsB;AACnC,IAAA,IAAI,CAAC,IAAA,CAAK,MAAA,CAAO,GAAA,CAAI,GAAG,GAAG,OAAO,KAAA;AAClC,IAAA,IAAI,IAAA,CAAK,MAAM,IAAA,CAAK,KAAA,CAAM,SAAS,CAAC,CAAA,KAAM,KAAK,OAAO,IAAA;AAEtD,IAAA,MAAM,MAAM,IAAA,CAAK,KAAA,CAAM,UAAU,CAAC,CAAA,KAAM,QAAQ,CAAC,CAAA;AAGjD,IAAA,IAAI,GAAA,GAAM,GAAG,OAAO,KAAA;AAEpB,IAAA,KAAA,IAAS,IAAI,GAAA,GAAM,CAAA,EAAG,IAAI,IAAA,CAAK,KAAA,CAAM,QAAQ,CAAA,EAAA,EAAK;AAChD,MAAA,MAAM,GAAA,GAAM,IAAA,CAAK,KAAA,CAAM,CAAA,GAAI,CAAC,CAAA;AAC5B,MAAA,IAAA,CAAK,MAAM,CAAA,GAAI,CAAC,CAAA,GAAI,IAAA,CAAK,MAAM,CAAC,CAAA;AAChC,MAAA,IAAA,CAAK,KAAA,CAAM,CAAC,CAAA,GAAI,GAAA;AAAA,IAClB;AAEA,IAAA,OAAO,IAAA;AAAA,EACT;AACF","file":"local-storage.js","sourcesContent":["import type { IStorage } from './storage';\n\nexport type LocalStorageOptions = {\n /**\n * max number of records.\n */\n readonly max?: number;\n};\n\nexport class LocalStorage<T = any> implements IStorage<string, T> {\n protected readonly _store: Map<string, T>;\n protected readonly _keys: string[];\n protected readonly _options: LocalStorageOptions;\n\n get keys(): string[] {\n return this._keys;\n }\n\n get size(): number {\n return this._store.size;\n }\n\n constructor(data: Record<string, T> = {}, options: LocalStorageOptions = {}) {\n this._store = new Map<string, T>(Object.entries(data));\n this._keys = Object.keys(data);\n this._options = options;\n }\n\n get(key: string): T | undefined {\n this._hit(key);\n return this._store.get(key);\n }\n\n set(key: string, value: T): void {\n if (!this._hit(key)) {\n this._keys.push(key);\n }\n\n if (this._options.max) {\n if (this._keys.length > this._options.max) {\n const k = this._keys.shift();\n\n if (k) {\n this._store.delete(k);\n }\n }\n }\n\n this._store.set(key, value);\n }\n\n delete(key: string): void {\n const i = this._keys.findIndex((k) => key === k);\n\n if (i > -1) {\n this._keys.splice(i, 1);\n }\n\n this._store.delete(key);\n }\n\n toString(): string {\n return JSON.stringify(\n Array.from(this._store.entries()).map(([key, value]) => ({\n key,\n value,\n })),\n null,\n 2,\n );\n }\n\n protected _hit(key: string): boolean {\n if (!this._store.has(key)) return false;\n if (this._keys[this._keys.length - 1] === key) return true;\n\n const idx = this._keys.findIndex((k) => key === k);\n\n /* istanbul ignore next */\n if (idx < 0) return false;\n\n for (let i = idx + 1; i < this._keys.length; i++) {\n const tmp = this._keys[i - 1];\n this._keys[i - 1] = this._keys[i];\n this._keys[i] = tmp;\n }\n\n return true;\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/storage/local-storage.ts"],"names":[],"mappings":"AASO,MAAM,YAAA,CAAqD;AAAA,EAC7C,MAAA;AAAA,EACA,KAAA;AAAA,EACA,QAAA;AAAA,EAEnB,IAAI,IAAA,
|
|
1
|
+
{"version":3,"sources":["../../src/storage/local-storage.ts"],"names":[],"mappings":"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","file":"local-storage.mjs","sourcesContent":["import type { IStorage } from './storage';\n\nexport type LocalStorageOptions = {\n /**\n * max number of records.\n */\n readonly max?: number;\n};\n\nexport class LocalStorage<T = any> implements IStorage<string, T> {\n protected readonly _store: Map<string, T>;\n protected readonly _keys: string[];\n protected readonly _options: LocalStorageOptions;\n\n get keys(): string[] {\n return this._keys;\n }\n\n get size(): number {\n return this._store.size;\n }\n\n constructor(data: Record<string, T> = {}, options: LocalStorageOptions = {}) {\n this._store = new Map<string, T>(Object.entries(data));\n this._keys = Object.keys(data);\n this._options = options;\n }\n\n get(key: string): T | undefined {\n this._hit(key);\n return this._store.get(key);\n }\n\n set(key: string, value: T): void {\n if (!this._hit(key)) {\n this._keys.push(key);\n }\n\n if (this._options.max) {\n if (this._keys.length > this._options.max) {\n const k = this._keys.shift();\n\n if (k) {\n this._store.delete(k);\n }\n }\n }\n\n this._store.set(key, value);\n }\n\n delete(key: string): void {\n const i = this._keys.findIndex((k) => key === k);\n\n if (i > -1) {\n this._keys.splice(i, 1);\n }\n\n this._store.delete(key);\n }\n\n toString(): string {\n return JSON.stringify(\n Array.from(this._store.entries()).map(([key, value]) => ({\n key,\n value,\n })),\n null,\n 2,\n );\n }\n\n protected _hit(key: string): boolean {\n if (!this._store.has(key)) return false;\n if (this._keys[this._keys.length - 1] === key) return true;\n\n const idx = this._keys.findIndex((k) => key === k);\n\n /* istanbul ignore next */\n if (idx < 0) return false;\n\n for (let i = idx + 1; i < this._keys.length; i++) {\n const tmp = this._keys[i - 1];\n this._keys[i - 1] = this._keys[i];\n this._keys[i] = tmp;\n }\n\n return true;\n }\n}\n"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@microsoft/teams.common",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.12",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"module": "./dist/index.mjs",
|
|
@@ -80,7 +80,7 @@
|
|
|
80
80
|
"axios": "^1.15.2"
|
|
81
81
|
},
|
|
82
82
|
"devDependencies": {
|
|
83
|
-
"@microsoft/teams.config": "2.0.
|
|
83
|
+
"@microsoft/teams.config": "2.0.12",
|
|
84
84
|
"@types/jest": "^29.5.12",
|
|
85
85
|
"jest": "^29.7.0",
|
|
86
86
|
"rimraf": "^6.0.1",
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
'use strict';var teams_common=require('@microsoft/teams.common'),O=require('qs');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}var O__default=/*#__PURE__*/_interopDefault(O);function
|
|
1
|
+
'use strict';var teams_common=require('@microsoft/teams.common'),O=require('qs');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}var O__default=/*#__PURE__*/_interopDefault(O);function y(a,t,e){let s={};for(let r of t.query??[])s[r]=e[r];for(let r of t.path??[])a=a.replace(`{${r}}`,e[r]);return `${a}${O__default.default.stringify(s,{addQueryPrefix:true,arrayFormat:"comma"})}`}function b(a,t,e){let s=(a.header??[]).reduce((r,n)=>(t[n]&&(r[n]=t[n]),r),{});return Object.keys(s).length===0?e:{...e,headers:{...e?.headers,...s}}}var h=class extends Error{statusCode;code;body;source;constructor(t,e,s,r,n){let i=e&&typeof e=="object"&&"error"in e?e.error:void 0,c=i?.message?`Graph ${s.toUpperCase()} ${r} failed (${t}): ${i.message}`:`Graph ${s.toUpperCase()} ${r} failed with status ${t}`;super(c),this.name="GraphError",this.statusCode=t,this.code=i?.code,Object.defineProperty(this,"body",{value:e,enumerable:false,writable:true,configurable:true}),n!==void 0&&Object.defineProperty(this,"source",{value:n,enumerable:false,writable:true,configurable:true});}},w="https://graph.microsoft.com",C=class{baseUrlRoot;_http;betaHttp;get http(){return this._http}constructor(t,e){this.baseUrlRoot=e?.baseUrlRoot??t?.baseUrlRoot??w,t?"request"in t?this._http=t.clone({baseUrl:`${this.baseUrlRoot}/v1.0`,headers:{"Content-Type":"application/json","User-Agent":"teams.ts[graph]/0.0.0"}}):this._http=new teams_common.Client({...t,baseUrl:`${this.baseUrlRoot}/v1.0`,headers:{"Content-Type":"application/json","User-Agent":"teams.ts[graph]/0.0.0",...t.headers}}):this._http=new teams_common.Client({baseUrl:`${this.baseUrlRoot}/v1.0`,headers:{"Content-Type":"application/json","User-Agent":"teams.ts[graph]/0.0.0"}});}async call(t,...e){let s=e[e.length-1],r=e.length>t.length&&s&&typeof s=="object"&&"requestConfig"in s,n=r?e.slice(0,-1):e,i=r?s:void 0,{ver:c="v1.0",method:p,path:_,paramDefs:u={},params:d={},body:U}=t(...n),l=y(_,u,d),f=b(u,d,i?.requestConfig),g=this.getHttpClient(c);try{switch(p){case "delete":case "get":return (await g[p](l,f)).data;case "patch":case "post":case "put":return (await g[p](l,U,f)).data;default:throw new Error(`Unsupported HTTP method: ${p}`)}}catch(o){if(o&&typeof o=="object"&&"isAxiosError"in o&&"response"in o&&o.response){let{response:m}=o;throw new h(m.status,m.data,p,l,o)}throw o}}getHttpClient(t){return t==="v1.0"?this._http:(this.betaHttp=this.betaHttp??this._http.clone({baseUrl:`${this.baseUrlRoot}/beta`}),this.betaHttp)}};
|
|
2
2
|
exports.Client=C;exports.GraphError=h;//# sourceMappingURL=index.js.map
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy91dGlscy91cmwudHMiLCIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOlsiZ2V0SW5qZWN0ZWRVcmwiLCJ1cmwiLCJwYXJhbXMiLCJkYXRhIiwicXVlcnkiLCJwYXJhbSIsInFzIiwiZ2V0SW5qZWN0ZWRSZXF1ZXN0Q29uZmlnIiwicmVxdWVzdENvbmZpZyIsInBhcmFtSGVhZGVycyIsImFnZyIsIkdyYXBoRXJyb3IiLCJzdGF0dXNDb2RlIiwiYm9keSIsIm1ldGhvZCIsInNvdXJjZSIsImdyYXBoRXJyb3IiLCJtZXNzYWdlIiwiZGVmYXVsdEJhc2VVcmxSb290IiwiQ2xpZW50Iiwib3B0aW9ucyIsImdyYXBoT3B0aW9ucyIsIkh0dHBDbGllbnQiLCJmdW5jIiwiYXJncyIsImxhc3RBcmciLCJoYXNPcHRpb25zIiwiZnVuY0FyZ3MiLCJjYWxsT3B0aW9ucyIsInZlciIsInBhdGgiLCJwYXJhbURlZnMiLCJodHRwQ2xpZW50IiwiZXJyIiwicmVzcG9uc2UiLCJzY2hlbWFWZXJzaW9uIl0sIm1hcHBpbmdzIjoiaU1BTU8sU0FBU0EsQ0FBQUEsQ0FDZEMsQ0FBQUEsQ0FDQUMsQ0FBQUEsQ0FDQUMsQ0FBQUEsQ0FDQSxDQUNBLElBQU1DLEVBQTZCLEVBQUMsQ0FFcEMsSUFBQSxJQUFXQyxDQUFBQSxJQUFTSCxDQUFBQSxDQUFPLEtBQUEsRUFBUyxFQUFDLENBQ25DRSxDQUFBQSxDQUFNQyxDQUFLLENBQUEsQ0FBSUYsQ0FBQUEsQ0FBS0UsQ0FBSyxDQUFBLENBRzNCLFFBQVdBLENBQUFBLElBQVNILENBQUFBLENBQU8sSUFBQSxFQUFRLEVBQUMsQ0FDbENELENBQUFBLENBQU1BLENBQUFBLENBQUksT0FBQSxDQUFRLENBQUEsQ0FBQSxFQUFJSSxDQUFLLENBQUEsQ0FBQSxDQUFBLENBQUtGLENBQUFBLENBQUtFLENBQUssQ0FBQyxFQUc3QyxPQUFPLENBQUEsRUFBR0osQ0FBRyxDQUFBLEVBQUdLLGtCQUFBQSxDQUFHLFNBQUEsQ0FBVUYsQ0FBQUEs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QUFBLENBQVMsTUFBQSxDQUFRQSxDQUFBQSxDQUFTLElBQUEsQ0FBTXBCLENBQUFBLENBQVFiLENBQUFBLENBQUtnQyxDQUFHLENBQ3ZFLENBQ0EsTUFBTUEsQ0FDUixDQUNGLENBRVEsYUFBQSxDQUFjRSxDQUFBQSxDQUEwQyxDQUM5RCxPQUFJQSxDQUFBQSxHQUFrQixNQUFBLENBQ2IsSUFBQSxDQUFLLEtBQUEsRUFHZCxJQUFBLENBQUssUUFBQSxDQUNILElBQUEsQ0FBSyxRQUFBLEVBQ0wsSUFBQSxDQUFLLEtBQUEsQ0FBTSxLQUFBLENBQU0sQ0FDZixPQUFBLENBQVMsQ0FBQSxFQUFHLElBQUEsQ0FBSyxXQUFXLENBQUEsS0FBQSxDQUM5QixDQUFDLENBQUEsQ0FFSSxJQUFBLENBQUssUUFBQSxDQUNkLENBQ0YiLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgcXMgZnJvbSAncXMnO1xuXG5pbXBvcnQgeyB0eXBlIFJlcXVlc3RDb25maWcgfSBmcm9tICdAbWljcm9zb2Z0L3RlYW1zLmNvbW1vbic7XG5cbmltcG9ydCB7IFBhcmFtRGVmcyB9IGZyb20gJy4uL3R5cGVzJztcblxuZXhwb3J0IGZ1bmN0aW9uIGdldEluamVjdGVkVXJsKFxuICB1cmw6IHN0cmluZyxcbiAgcGFyYW1zOiBQYXJhbURlZnMsXG4gIGRhdGE6IFJlY29yZDxzdHJpbmcsIGFueT4sXG4pIHtcbiAgY29uc3QgcXVlcnk6IFJlY29yZDxzdHJpbmcsIGFueT4gPSB7fTtcblxuICBmb3IgKGNvbnN0IHBhcmFtIG9mIHBhcmFtcy5xdWVyeSA/PyBbXSkge1xuICAgIHF1ZXJ5W3BhcmFtXSA9IGRhdGFbcGFyYW1dO1xuICB9XG5cbiAgZm9yIChjb25zdCBwYXJhbSBvZiBwYXJhbXMucGF0aCA/PyBbXSkge1xuICAgIHVybCA9IHVybC5yZXBsYWNlKGB7JHtwYXJhbX19YCwgZGF0YVtwYXJhbV0pO1xuICB9XG5cbiAgcmV0dXJuIGAke3VybH0ke3FzLnN0cmluZ2lmeShxdWVyeSwgeyBhZGRRdWVyeVByZWZpeDogdHJ1ZSwgYXJyYXlGb3JtYXQ6ICdjb21tYScgfSl9YDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEluamVjdGVkUmVxdWVzdENvbmZpZyhcbiAgcGFyYW1zOiBQYXJhbURlZnMsXG4gIGRhdGE6IFJlY29yZDxzdHJpbmcsIGFueT4sXG4gIHJlcXVlc3RDb25maWc/OiBSZXF1ZXN0Q29uZmlnLFxuKTogUmVxdWVzdENvbmZpZyB8IHVuZGVmaW5lZCB7XG4gIGNvbnN0IHBhcmFtSGVhZGVycyA9IChwYXJhbXMuaGVhZGVyID8/IFtdKS5yZWR1Y2U8UmVjb3JkPHN0cmluZywgYW55Pj4oXG4gICAgKGFnZywgcGFyYW0pID0+IHtcbiAgICAgIGlmIChkYXRhW3BhcmFtXSkge1xuICAgICAgICBhZ2dbcGFyYW1dID0gZGF0YVtwYXJhbV07XG4gICAgICB9XG4gICAgICByZXR1cm4gYWdnO1xuICAgIH0sXG4gICAge30sXG4gICk7XG5cbiAgcmV0dXJuIE9iamVjdC5rZXlzKHBhcmFtSGVhZGVycykubGVuZ3RoID09PSAwXG4gICAgPyByZXF1ZXN0Q29uZmlnXG4gICAgOiB7XG4gICAgICAgIC4uLnJlcXVlc3RDb25maWcsXG4gICAgICAgIGhlYWRlcnM6IHsgLi4ucmVxdWVzdENvbmZpZz8uaGVhZGVycywgLi4ucGFyYW1IZWFkZXJzIH0sXG4gICAgICB9O1xufVxuIiwiaW1wb3J0IHtcbiAgQ2xpZW50IGFzIEh0dHBDbGllbnQsXG4gIHR5cGUgQ2xpZW50T3B0aW9ucyBhcyBIdHRwQ2xpZW50T3B0aW9uc1xufSBmcm9tICdAbWljcm9zb2Z0L3RlYW1zLmNvbW1vbic7XG5cbmltcG9ydCB7IGdldEluamVjdGVkVXJsLCBnZXRJbmplY3RlZFJlcXVlc3RDb25maWcgfSBmcm9tICcuL3V0aWxzL3VybCc7XG5cbmltcG9ydCB0eXBlIHsgQ2FsbE9wdGlvbnMsIEVuZHBvaW50UmVxdWVzdCwgU2NoZW1hVmVyc2lvbiB9IGZyb20gJy4vdHlwZXMnO1xuXG4vLyBCdWlsZC10aW1lIGNvbnN0YW50IGluamVjdGVkIGJ5IHRzdXBcbmRlY2xhcmUgY29uc3QgX19QQUNLQUdFX1ZFUlNJT05fXzogc3RyaW5nO1xuXG5leHBvcnQgeyBDYWxsT3B0aW9ucywgRW5kcG9pbnRSZXF1ZXN0LCBTY2hlbWFWZXJzaW9uIH0gZnJvbSAnLi90eXBlcyc7XG5cbi8qKlxuICogRXJyb3IgdGhyb3duIHdoZW4gYSBHcmFwaCBBUEkgcmVxdWVzdCBmYWlscy5cbiAqIFN1cmZhY2VzIHRoZSByZXNwb25zZSBib2R5IGZyb20gdGhlIEdyYXBoIEFQSSBmb3IgZWFzaWVyIGRlYnVnZ2luZy5cbiAqL1xuZXhwb3J0IGNsYXNzIEdyYXBoRXJyb3IgZXh0ZW5kcyBFcnJvciB7XG4gIC8qKiBIVFRQIHN0YXR1cyBjb2RlICovXG4gIHJlYWRvbmx5IHN0YXR1c0NvZGU6IG51bWJlcjtcbiAgLyoqIEdyYXBoIEFQSSBlcnJvciBjb2RlIChlLmcuIFwiQXV0aG9yaXphdGlvbl9SZXF1ZXN0RGVuaWVkXCIpICovXG4gIHJlYWRvbmx5IGNvZGU/OiBzdHJpbmc7XG4gIC8qKiBUaGUgZnVsbCByZXNwb25zZSBib2R5IGZyb20gdGhlIEdyYXBoIEFQSSAqL1xuICByZWFkb25seSBib2R5OiB1bmtub3duO1xuICAvKiogVGhlIHVuZGVybHlpbmcgZXJyb3IgdGhhdCBjYXVzZWQgdGhpcyBHcmFwaEVycm9yIChlLmcuIHRoZSBBeGlvcyBlcnJvcikgKi9cbiAgcmVhZG9ubHkgc291cmNlPzogdW5rbm93bjtcblxuICBjb25zdHJ1Y3RvcihzdGF0dXNDb2RlOiBudW1iZXIsIGJvZHk6IHVua25vd24sIG1ldGhvZDogc3RyaW5nLCB1cmw6IHN0cmluZywgc291cmNlPzogdW5rbm93bikge1xuICAgIGNvbnN0IGdyYXBoRXJyb3IgPSBib2R5ICYmIHR5cGVvZiBib2R5ID09PSAnb2JqZWN0JyAmJiAnZXJyb3InIGluIGJvZHlcbiAgICAgID8gKGJvZHkgYXMgeyBlcnJvcjogeyBjb2RlPzogc3RyaW5nOyBtZXNzYWdlPzogc3RyaW5nIH0gfSkuZXJyb3JcbiAgICAgIDogdW5kZWZpbmVkO1xuXG4gICAgY29uc3QgbWVzc2FnZSA9IGdyYXBoRXJyb3I/Lm1lc3NhZ2VcbiAgICAgID8gYEdyYXBoICR7bWV0aG9kLnRvVXBwZXJDYXNlKCl9ICR7dXJsfSBmYWlsZWQgKCR7c3RhdHVzQ29kZX0pOiAke2dyYXBoRXJyb3IubWVzc2FnZX1gXG4gICAgICA6IGBHcmFwaCAke21ldGhvZC50b1VwcGVyQ2FzZSgpfSAke3VybH0gZmFpbGVkIHdpdGggc3RhdHVzICR7c3RhdHVzQ29kZX1gO1xuXG4gICAgc3VwZXIobWVzc2FnZSk7XG4gICAgdGhpcy5uYW1lID0gJ0dyYXBoRXJyb3InO1xuICAgIHRoaXMuc3RhdHVzQ29kZSA9IHN0YXR1c0NvZGU7XG4gICAgdGhpcy5jb2RlID0gZ3JhcGhFcnJvcj8uY29kZTtcbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgJ2JvZHknLCB7IHZhbHVlOiBib2R5LCBlbnVtZXJhYmxlOiBmYWxzZSwgd3JpdGFibGU6IHRydWUsIGNvbmZpZ3VyYWJsZTogdHJ1ZSB9KTtcbiAgICBpZiAoc291cmNlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCAnc291cmNlJywgeyB2YWx1ZTogc291cmNlLCBlbnVtZXJhYmxlOiBmYWxzZSwgd3JpdGFibGU6IHRydWUsIGNvbmZpZ3VyYWJsZTogdHJ1ZSB9KTtcbiAgICB9XG4gIH1cbn1cblxuY29uc3QgZGVmYXVsdEJhc2VVcmxSb290ID0gJ2h0dHBzOi8vZ3JhcGgubWljcm9zb2Z0LmNvbSc7XG5cbnR5cGUgT3B0aW9ucyA9IChIdHRwQ2xpZW50IHwgSHR0cENsaWVudE9wdGlvbnMpICYge1xuICAvKiogR3JhcGggc2VydmljZSByb290LiBCeSBkZWZhdWx0LCB0aGUgZ2xvYmFsIGNvbW1lcmNpYWwgVVJMIFwiaHR0cHM6Ly9ncmFwaC5taWNyb3NvZnQuY29tXCIgaXMgdXNlZCxcbiAgICogYnV0IGNlcnRhaW4gdGVuYW50cyBtYXkgd2lzaCB0byBvdmVycmlkZSB0aGlzIHRvIGRpcmVjdCBHcmFwaCBBUEkgY2FsbHMgdG8gYSBkaWZmZXJlbnQgY2xvdWQgaW5zdGFuY2UuXG4gICAqL1xuICBiYXNlVXJsUm9vdD86IHN0cmluZztcbn07XG5cbi8qKiBHcmFwaC1zcGVjaWZpYyBjbGllbnQgb3B0aW9ucy4gKi9cbnR5cGUgR3JhcGhPcHRpb25zID0ge1xuICAvKiogR3JhcGggc2VydmljZSByb290IG92ZXJyaWRlIGZvciByb3V0aW5nIEdyYXBoIGNhbGxzIHRvIHNvdmVyZWlnbiBjbG91ZC4gKi9cbiAgYmFzZVVybFJvb3Q/OiBzdHJpbmc7XG59O1xuXG4vKipcbiAqIC9cbiAqIFByb3ZpZGVzIGFuIGVudHJ5IHBvaW50IGZvciBpbnZva2luZyBNaWNyb3NvZnQgR3JhcGggQVBJcy5cbiAqL1xuZXhwb3J0IGNsYXNzIENsaWVudCB7XG4gIHByb3RlY3RlZCBiYXNlVXJsUm9vdDtcbiAgcHJvdGVjdGVkIF9odHRwOiBIdHRwQ2xpZW50O1xuICBwcm90ZWN0ZWQgYmV0YUh0dHA/OiBIdHRwQ2xpZW50O1xuXG4gIC8qKlxuICAgKiBUaGUgdW5kZXJseWluZyBIVFRQIGNsaWVudCwgcHJlLWNvbmZpZ3VyZWQgd2l0aCBHcmFwaCBiYXNlIFVSTCBhbmQgaGVhZGVycy5cbiAgICogVXNlIGZvciByYXcgR3JhcGggQVBJIHJlcXVlc3RzIG5vdCBjb3ZlcmVkIGJ5IGVuZHBvaW50IGZ1bmN0aW9ucy5cbiAgICovXG4gIGdldCBodHRwKCk6IEh0dHBDbGllbnQge1xuICAgIHJldHVybiB0aGlzLl9odHRwO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBHcmFwaCBjbGllbnQuXG4gICAqXG4gICAqIEBwYXJhbSBvcHRpb25zIC0gVGhlIEhUVFAgY2xpZW50IHRvIHVzZTsgYW4gZXhpc3Rpbmcge0BsaW5rIEh0dHBDbGllbnR9IHdpbGwgYmUgY2xvbmVkLFxuICAgKiBvciBhbiB7QGxpbmsgSHR0cENsaWVudE9wdGlvbnN9IGJhZyB3aWxsIGJlIHVzZWQgdG8gYnVpbGQgYSBuZXcgb25lLlxuICAgKiBIVFRQLWxldmVsIHNldHRpbmdzIGxpa2UgaGVhZGVycywgaW50ZXJjZXB0b3JzLCBhbmQgdGltZW91dHMgYmVsb25nIGhlcmUuXG4gICAqIEBwYXJhbSBncmFwaE9wdGlvbnMgLSBHcmFwaC1zcGVjaWZpYyBvcHRpb25zLiBUYWtlcyBwcmVjZWRlbmNlIG92ZXIgYG9wdGlvbnMuYmFzZVVybFJvb3RgXG4gICAqIHdoZW4gYm90aCBhcmUgc2V0LlxuICAgKlxuICAgKiBAZXhhbXBsZVxuICAgKiAvLyBQdWJsaWMgY2xvdWQgKGRlZmF1bHQpXG4gICAqIG5ldyBDbGllbnQoeyB0b2tlbiB9KTtcbiAgICpcbiAgICogQGV4YW1wbGVcbiAgICogLy8gU292ZXJlaWduIGNsb3VkIChHQ0NIKVxuICAgKiBuZXcgQ2xpZW50KGh0dHBDbGllbnQsIHsgYmFzZVVybFJvb3Q6ICdodHRwczovL2dyYXBoLm1pY3Jvc29mdC51cycgfSk7XG4gICAqL1xuICBjb25zdHJ1Y3RvcihvcHRpb25zPzogT3B0aW9ucywgZ3JhcGhPcHRpb25zPzogR3JhcGhPcHRpb25zKSB7XG4gICAgdGhpcy5iYXNlVXJsUm9vdCA9IGdyYXBoT3B0aW9ucz8uYmFzZVVybFJvb3QgPz8gb3B0aW9ucz8uYmFzZVVybFJvb3QgPz8gZGVmYXVsdEJhc2VVcmxSb290O1xuICAgIGlmICghb3B0aW9ucykge1xuICAgICAgdGhpcy5faHR0cCA9IG5ldyBIdHRwQ2xpZW50KHtcbiAgICAgICAgYmFzZVVybDogYCR7dGhpcy5iYXNlVXJsUm9vdH0vdjEuMGAsXG4gICAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgICAgICdVc2VyLUFnZW50JzogYHRlYW1zLnRzW2dyYXBoXS8ke19fUEFDS0FHRV9WRVJTSU9OX199YCxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgIH0gZWxzZSBpZiAoJ3JlcXVlc3QnIGluIG9wdGlvbnMpIHtcbiAgICAgIHRoaXMuX2h0dHAgPSBvcHRpb25zLmNsb25lKHtcbiAgICAgICAgYmFzZVVybDogYCR7dGhpcy5iYXNlVXJsUm9vdH0vdjEuMGAsXG4gICAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgICAgICdVc2VyLUFnZW50JzogYHRlYW1zLnRzW2dyYXBoXS8ke19fUEFDS0FHRV9WRVJTSU9OX199YCxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9odHRwID0gbmV3IEh0dHBDbGllbnQoe1xuICAgICAgICAuLi5vcHRpb25zLFxuICAgICAgICBiYXNlVXJsOiBgJHt0aGlzLmJhc2VVcmxSb290fS92MS4wYCxcbiAgICAgICAgaGVhZGVyczoge1xuICAgICAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicsXG4gICAgICAgICAgJ1VzZXItQWdlbnQnOiBgdGVhbXMudHNbZ3JhcGhdLyR7X19QQUNLQUdFX1ZFUlNJT05fX31gLFxuICAgICAgICAgIC4uLm9wdGlvbnMuaGVhZGVycyxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBFeGVjdXRlcyBhIEdyYXBoIEFQSSBlbmRwb2ludCBmdW5jdGlvbiB3aXRoIG9wdGlvbmFsIEhUVFAgY29uZmlndXJhdGlvblxuICAgKlxuICAgKiBAcGFyYW0gZnVuYyAtIFRoZSBlbmRwb2ludCBmdW5jdGlvbiB0byBleGVjdXRlXG4gICAqIEBwYXJhbSBhcmdzIC0gQXJndW1lbnRzIGZvciB0aGUgZW5kcG9pbnQgZnVuY3Rpb24sIG9wdGlvbmFsbHkgZm9sbG93ZWQgYnkge0BsaW5rIENhbGxDb25maWd9XG4gICAqIEByZXR1cm5zIFByb21pc2UgcmVzb2x2aW5nIHRvIHRoZSBlbmRwb2ludCdzIHJlc3BvbnNlIGRhdGFcbiAgICpcbiAgICogQGV4YW1wbGVcbiAgICogYGBgdHlwZXNjcmlwdFxuICAgKiAvLyBTaW1wbGUgY2FsbFxuICAgKiBjb25zdCB1c2VyID0gYXdhaXQgY2xpZW50LmNhbGwoZW5kcG9pbnRzLnVzZXJzLmdldCwgJ3VzZXItaWQnKTtcbiAgICpcbiAgICogLy8gV2l0aCBIVFRQIGNvbmZpZ3VyYXRpb25cbiAgICogY29uc3QgdXNlciA9IGF3YWl0IGNsaWVudC5jYWxsKGVuZHBvaW50cy51c2Vycy5nZXQsICd1c2VyLWlkJywge1xuICAgKiAgIHJlcXVlc3RDb25maWc6IHtcbiAgICogICAgIHRpbWVvdXQ6IDUwMDBcbiAgICogICB9XG4gICAqIH0pO1xuICAgKiBgYGBcbiAgICovXG4gIGFzeW5jIGNhbGw8XG4gICAgRiBleHRlbmRzICguLi5hcmdzOiBhbnlbXSkgPT4gRW5kcG9pbnRSZXF1ZXN0PGFueT4sXG4gICAgUiA9IFJldHVyblR5cGU8Rj4gZXh0ZW5kcyBFbmRwb2ludFJlcXVlc3Q8aW5mZXIgVD4gPyBUIDogbmV2ZXIsXG4gID4oZnVuYzogRiwgLi4uYXJnczogWy4uLlBhcmFtZXRlcnM8Rj4sIENhbGxPcHRpb25zP10pOiBQcm9taXNlPFI+IHtcbiAgICAvLyBDaGVjayBpZiBsYXN0IGFyZyBpcyBhIGNvbmZpZyBvYmplY3RcbiAgICBjb25zdCBsYXN0QXJnID0gYXJnc1thcmdzLmxlbmd0aCAtIDFdO1xuICAgIGNvbnN0IGhhc09wdGlvbnMgPVxuICAgICAgYXJncy5sZW5ndGggPiBmdW5jLmxlbmd0aCAmJlxuICAgICAgbGFzdEFyZyAmJlxuICAgICAgdHlwZW9mIGxhc3RBcmcgPT09ICdvYmplY3QnICYmXG4gICAgICAncmVxdWVzdENvbmZpZycgaW4gbGFzdEFyZztcblxuICAgIC8vIEV4dHJhY3QgZnVuY3Rpb24gYXJndW1lbnRzXG4gICAgY29uc3QgZnVuY0FyZ3MgPSBoYXNPcHRpb25zID8gYXJncy5zbGljZSgwLCAtMSkgOiBhcmdzO1xuICAgIGNvbnN0IGNhbGxPcHRpb25zID0gaGFzT3B0aW9ucyA/IGxhc3RBcmcgYXMgQ2FsbE9wdGlvbnMgOiB1bmRlZmluZWQ7XG5cbiAgICBjb25zdCB7XG4gICAgICB2ZXIgPSAndjEuMCcsXG4gICAgICBtZXRob2QsXG4gICAgICBwYXRoLFxuICAgICAgcGFyYW1EZWZzID0ge30sXG4gICAgICBwYXJhbXMgPSB7fSxcbiAgICAgIGJvZHksXG4gICAgfSA9IGZ1bmMoLi4uKGZ1bmNBcmdzIGFzIGFueVtdKSk7XG4gICAgY29uc3QgdXJsID0gZ2V0SW5qZWN0ZWRVcmwocGF0aCwgcGFyYW1EZWZzLCBwYXJhbXMpO1xuICAgIGNvbnN0IHJlcXVlc3RDb25maWcgPSBnZXRJbmplY3RlZFJlcXVlc3RDb25maWcocGFyYW1EZWZzLCBwYXJhbXMsIGNhbGxPcHRpb25zPy5yZXF1ZXN0Q29uZmlnKTtcbiAgICBjb25zdCBodHRwQ2xpZW50ID0gdGhpcy5nZXRIdHRwQ2xpZW50KHZlcik7XG5cbiAgICB0cnkge1xuICAgICAgc3dpdGNoIChtZXRob2QpIHtcbiAgICAgICAgY2FzZSAnZGVsZXRlJzpcbiAgICAgICAgY2FzZSAnZ2V0JzpcbiAgICAgICAgICByZXR1cm4gKGF3YWl0IGh0dHBDbGllbnRbbWV0aG9kXSh1cmwsIHJlcXVlc3RDb25maWcpKS5kYXRhIGFzIFI7XG4gICAgICAgIGNhc2UgJ3BhdGNoJzpcbiAgICAgICAgY2FzZSAncG9zdCc6XG4gICAgICAgIGNhc2UgJ3B1dCc6XG4gICAgICAgICAgcmV0dXJuIChhd2FpdCBodHRwQ2xpZW50W21ldGhvZF0odXJsLCBib2R5LCByZXF1ZXN0Q29uZmlnKSkuZGF0YSBhcyBSO1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgVW5zdXBwb3J0ZWQgSFRUUCBtZXRob2Q6ICR7bWV0aG9kfWApO1xuICAgICAgfVxuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgaWYgKGVyciAmJiB0eXBlb2YgZXJyID09PSAnb2JqZWN0JyAmJiAnaXNBeGlvc0Vycm9yJyBpbiBlcnIgJiYgJ3Jlc3BvbnNlJyBpbiBlcnIgJiYgZXJyLnJlc3BvbnNlKSB7XG4gICAgICAgIGNvbnN0IHsgcmVzcG9uc2UgfSA9IGVyciBhcyB7IHJlc3BvbnNlOiB7IHN0YXR1czogbnVtYmVyOyBkYXRhOiB1bmtub3duIH0gfTtcbiAgICAgICAgdGhyb3cgbmV3IEdyYXBoRXJyb3IocmVzcG9uc2Uuc3RhdHVzLCByZXNwb25zZS5kYXRhLCBtZXRob2QsIHVybCwgZXJyKTtcbiAgICAgIH1cbiAgICAgIHRocm93IGVycjtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdldEh0dHBDbGllbnQoc2NoZW1hVmVyc2lvbjogU2NoZW1hVmVyc2lvbik6IEh0dHBDbGllbnQge1xuICAgIGlmIChzY2hlbWFWZXJzaW9uID09PSAndjEuMCcpIHtcbiAgICAgIHJldHVybiB0aGlzLl9odHRwO1xuICAgIH1cblxuICAgIHRoaXMuYmV0YUh0dHAgPVxuICAgICAgdGhpcy5iZXRhSHR0cCA/P1xuICAgICAgdGhpcy5faHR0cC5jbG9uZSh7XG4gICAgICAgIGJhc2VVcmw6IGAke3RoaXMuYmFzZVVybFJvb3R9L2JldGFgLFxuICAgICAgfSk7XG5cbiAgICByZXR1cm4gdGhpcy5iZXRhSHR0cDtcbiAgfVxufVxuIl19
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy91dGlscy91cmwudHMiLCIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOlsiZ2V0SW5qZWN0ZWRVcmwiLCJ1cmwiLCJwYXJhbXMiLCJkYXRhIiwicXVlcnkiLCJwYXJhbSIsInFzIiwiZ2V0SW5qZWN0ZWRSZXF1ZXN0Q29uZmlnIiwicmVxdWVzdENvbmZpZyIsInBhcmFtSGVhZGVycyIsImFnZyIsIkdyYXBoRXJyb3IiLCJzdGF0dXNDb2RlIiwiYm9keSIsIm1ldGhvZCIsInNvdXJjZSIsImdyYXBoRXJyb3IiLCJtZXNzYWdlIiwiZGVmYXVsdEJhc2VVcmxSb290IiwiQ2xpZW50Iiwib3B0aW9ucyIsImdyYXBoT3B0aW9ucyIsIkh0dHBDbGllbnQiLCJmdW5jIiwiYXJncyIsImxhc3RBcmciLCJoYXNPcHRpb25zIiwiZnVuY0FyZ3MiLCJjYWxsT3B0aW9ucyIsInZlciIsInBhdGgiLCJwYXJhbURlZnMiLCJodHRwQ2xpZW50IiwiZXJyIiwicmVzcG9uc2UiLCJzY2hlbWFWZXJzaW9uIl0sIm1hcHBpbmdzIjoiaU1BTU8sU0FBU0EsQ0FBQUEsQ0FDZEMsQ0FBQUEsQ0FDQUMsQ0FBQUEsQ0FDQUMsQ0FBQUEsQ0FDUSxDQUNSLElBQU1DLEVBQTZCLEVBQUMsQ0FFcEMsSUFBQSxJQUFXQyxDQUFBQSxJQUFTSCxDQUFBQSxDQUFPLEtBQUEsRUFBUyxFQUFDLENBQ25DRSxDQUFBQSxDQUFNQyxDQUFLLENBQUEsQ0FBSUYsQ0FBQUEsQ0FBS0UsQ0FBSyxDQUFBLENBRzNCLFFBQVdBLENBQUFBLElBQVNILENBQUFBLENBQU8sSUFBQSxFQUFRLEVBQUMsQ0FDbENELENBQUFBLENBQU1BLENBQUFBLENBQUksT0FBQSxDQUFRLENBQUEsQ0FBQSxFQUFJSSxDQUFLLENBQUEsQ0FBQSxDQUFBLENBQUtGLENBQUFBLENBQUtFLENBQUssQ0FBQyxFQUc3QyxPQUFPLENBQUEsRUFBR0osQ0FBRyxDQUFBLEVBQUdLLGtCQUFBQSxDQUFHLFNBQUEsQ0FBVUYsQ0FBQUEs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QUFBLENBQVMsTUFBQSxDQUFRQSxDQUFBQSxDQUFTLElBQUEsQ0FBTXBCLENBQUFBLENBQVFiLENBQUFBLENBQUtnQyxDQUFHLENBQ3ZFLENBQ0EsTUFBTUEsQ0FDUixDQUNGLENBRVEsYUFBQSxDQUFjRSxDQUFBQSxDQUEwQyxDQUM5RCxPQUFJQSxDQUFBQSxHQUFrQixNQUFBLENBQ2IsSUFBQSxDQUFLLEtBQUEsRUFHZCxJQUFBLENBQUssUUFBQSxDQUNILElBQUEsQ0FBSyxRQUFBLEVBQ0wsSUFBQSxDQUFLLEtBQUEsQ0FBTSxLQUFBLENBQU0sQ0FDZixPQUFBLENBQVMsQ0FBQSxFQUFHLElBQUEsQ0FBSyxXQUFXLENBQUEsS0FBQSxDQUM5QixDQUFDLENBQUEsQ0FFSSxJQUFBLENBQUssUUFBQSxDQUNkLENBQ0YiLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgcXMgZnJvbSAncXMnO1xuXG5pbXBvcnQgeyB0eXBlIFJlcXVlc3RDb25maWcgfSBmcm9tICdAbWljcm9zb2Z0L3RlYW1zLmNvbW1vbic7XG5cbmltcG9ydCB0eXBlIHsgUGFyYW1EZWZzIH0gZnJvbSAnLi4vdHlwZXMnO1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0SW5qZWN0ZWRVcmwoXG4gIHVybDogc3RyaW5nLFxuICBwYXJhbXM6IFBhcmFtRGVmcyxcbiAgZGF0YTogUmVjb3JkPHN0cmluZywgYW55Pixcbik6IHN0cmluZyB7XG4gIGNvbnN0IHF1ZXJ5OiBSZWNvcmQ8c3RyaW5nLCBhbnk+ID0ge307XG5cbiAgZm9yIChjb25zdCBwYXJhbSBvZiBwYXJhbXMucXVlcnkgPz8gW10pIHtcbiAgICBxdWVyeVtwYXJhbV0gPSBkYXRhW3BhcmFtXTtcbiAgfVxuXG4gIGZvciAoY29uc3QgcGFyYW0gb2YgcGFyYW1zLnBhdGggPz8gW10pIHtcbiAgICB1cmwgPSB1cmwucmVwbGFjZShgeyR7cGFyYW19fWAsIGRhdGFbcGFyYW1dKTtcbiAgfVxuXG4gIHJldHVybiBgJHt1cmx9JHtxcy5zdHJpbmdpZnkocXVlcnksIHsgYWRkUXVlcnlQcmVmaXg6IHRydWUsIGFycmF5Rm9ybWF0OiAnY29tbWEnIH0pfWA7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRJbmplY3RlZFJlcXVlc3RDb25maWcoXG4gIHBhcmFtczogUGFyYW1EZWZzLFxuICBkYXRhOiBSZWNvcmQ8c3RyaW5nLCBhbnk+LFxuICByZXF1ZXN0Q29uZmlnPzogUmVxdWVzdENvbmZpZyxcbik6IFJlcXVlc3RDb25maWcgfCB1bmRlZmluZWQge1xuICBjb25zdCBwYXJhbUhlYWRlcnMgPSAocGFyYW1zLmhlYWRlciA/PyBbXSkucmVkdWNlPFJlY29yZDxzdHJpbmcsIGFueT4+KFxuICAgIChhZ2csIHBhcmFtKSA9PiB7XG4gICAgICBpZiAoZGF0YVtwYXJhbV0pIHtcbiAgICAgICAgYWdnW3BhcmFtXSA9IGRhdGFbcGFyYW1dO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGFnZztcbiAgICB9LFxuICAgIHt9LFxuICApO1xuXG4gIHJldHVybiBPYmplY3Qua2V5cyhwYXJhbUhlYWRlcnMpLmxlbmd0aCA9PT0gMFxuICAgID8gcmVxdWVzdENvbmZpZ1xuICAgIDoge1xuICAgICAgICAuLi5yZXF1ZXN0Q29uZmlnLFxuICAgICAgICBoZWFkZXJzOiB7IC4uLnJlcXVlc3RDb25maWc/LmhlYWRlcnMsIC4uLnBhcmFtSGVhZGVycyB9LFxuICAgICAgfTtcbn1cbiIsImltcG9ydCB7XG4gIENsaWVudCBhcyBIdHRwQ2xpZW50LFxuICB0eXBlIENsaWVudE9wdGlvbnMgYXMgSHR0cENsaWVudE9wdGlvbnNcbn0gZnJvbSAnQG1pY3Jvc29mdC90ZWFtcy5jb21tb24nO1xuXG5pbXBvcnQgdHlwZSB7IENhbGxPcHRpb25zLCBFbmRwb2ludFJlcXVlc3QsIFNjaGVtYVZlcnNpb24gfSBmcm9tICcuL3R5cGVzJztcbmltcG9ydCB7IGdldEluamVjdGVkVXJsLCBnZXRJbmplY3RlZFJlcXVlc3RDb25maWcgfSBmcm9tICcuL3V0aWxzL3VybCc7XG5cblxuLy8gQnVpbGQtdGltZSBjb25zdGFudCBpbmplY3RlZCBieSB0c3VwXG5kZWNsYXJlIGNvbnN0IF9fUEFDS0FHRV9WRVJTSU9OX186IHN0cmluZztcblxuZXhwb3J0IHR5cGUgeyBDYWxsT3B0aW9ucywgRW5kcG9pbnRSZXF1ZXN0LCBTY2hlbWFWZXJzaW9uIH0gZnJvbSAnLi90eXBlcyc7XG5cbi8qKlxuICogRXJyb3IgdGhyb3duIHdoZW4gYSBHcmFwaCBBUEkgcmVxdWVzdCBmYWlscy5cbiAqIFN1cmZhY2VzIHRoZSByZXNwb25zZSBib2R5IGZyb20gdGhlIEdyYXBoIEFQSSBmb3IgZWFzaWVyIGRlYnVnZ2luZy5cbiAqL1xuZXhwb3J0IGNsYXNzIEdyYXBoRXJyb3IgZXh0ZW5kcyBFcnJvciB7XG4gIC8qKiBIVFRQIHN0YXR1cyBjb2RlICovXG4gIHJlYWRvbmx5IHN0YXR1c0NvZGU6IG51bWJlcjtcbiAgLyoqIEdyYXBoIEFQSSBlcnJvciBjb2RlIChlLmcuIFwiQXV0aG9yaXphdGlvbl9SZXF1ZXN0RGVuaWVkXCIpICovXG4gIHJlYWRvbmx5IGNvZGU/OiBzdHJpbmc7XG4gIC8qKiBUaGUgZnVsbCByZXNwb25zZSBib2R5IGZyb20gdGhlIEdyYXBoIEFQSSAqL1xuICByZWFkb25seSBib2R5OiB1bmtub3duO1xuICAvKiogVGhlIHVuZGVybHlpbmcgZXJyb3IgdGhhdCBjYXVzZWQgdGhpcyBHcmFwaEVycm9yIChlLmcuIHRoZSBBeGlvcyBlcnJvcikgKi9cbiAgcmVhZG9ubHkgc291cmNlPzogdW5rbm93bjtcblxuICBjb25zdHJ1Y3RvcihzdGF0dXNDb2RlOiBudW1iZXIsIGJvZHk6IHVua25vd24sIG1ldGhvZDogc3RyaW5nLCB1cmw6IHN0cmluZywgc291cmNlPzogdW5rbm93bikge1xuICAgIGNvbnN0IGdyYXBoRXJyb3IgPSBib2R5ICYmIHR5cGVvZiBib2R5ID09PSAnb2JqZWN0JyAmJiAnZXJyb3InIGluIGJvZHlcbiAgICAgID8gKGJvZHkgYXMgeyBlcnJvcjogeyBjb2RlPzogc3RyaW5nOyBtZXNzYWdlPzogc3RyaW5nIH0gfSkuZXJyb3JcbiAgICAgIDogdW5kZWZpbmVkO1xuXG4gICAgY29uc3QgbWVzc2FnZSA9IGdyYXBoRXJyb3I/Lm1lc3NhZ2VcbiAgICAgID8gYEdyYXBoICR7bWV0aG9kLnRvVXBwZXJDYXNlKCl9ICR7dXJsfSBmYWlsZWQgKCR7c3RhdHVzQ29kZX0pOiAke2dyYXBoRXJyb3IubWVzc2FnZX1gXG4gICAgICA6IGBHcmFwaCAke21ldGhvZC50b1VwcGVyQ2FzZSgpfSAke3VybH0gZmFpbGVkIHdpdGggc3RhdHVzICR7c3RhdHVzQ29kZX1gO1xuXG4gICAgc3VwZXIobWVzc2FnZSk7XG4gICAgdGhpcy5uYW1lID0gJ0dyYXBoRXJyb3InO1xuICAgIHRoaXMuc3RhdHVzQ29kZSA9IHN0YXR1c0NvZGU7XG4gICAgdGhpcy5jb2RlID0gZ3JhcGhFcnJvcj8uY29kZTtcbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgJ2JvZHknLCB7IHZhbHVlOiBib2R5LCBlbnVtZXJhYmxlOiBmYWxzZSwgd3JpdGFibGU6IHRydWUsIGNvbmZpZ3VyYWJsZTogdHJ1ZSB9KTtcbiAgICBpZiAoc291cmNlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCAnc291cmNlJywgeyB2YWx1ZTogc291cmNlLCBlbnVtZXJhYmxlOiBmYWxzZSwgd3JpdGFibGU6IHRydWUsIGNvbmZpZ3VyYWJsZTogdHJ1ZSB9KTtcbiAgICB9XG4gIH1cbn1cblxuY29uc3QgZGVmYXVsdEJhc2VVcmxSb290ID0gJ2h0dHBzOi8vZ3JhcGgubWljcm9zb2Z0LmNvbSc7XG5cbnR5cGUgT3B0aW9ucyA9IChIdHRwQ2xpZW50IHwgSHR0cENsaWVudE9wdGlvbnMpICYge1xuICAvKiogR3JhcGggc2VydmljZSByb290LiBCeSBkZWZhdWx0LCB0aGUgZ2xvYmFsIGNvbW1lcmNpYWwgVVJMIFwiaHR0cHM6Ly9ncmFwaC5taWNyb3NvZnQuY29tXCIgaXMgdXNlZCxcbiAgICogYnV0IGNlcnRhaW4gdGVuYW50cyBtYXkgd2lzaCB0byBvdmVycmlkZSB0aGlzIHRvIGRpcmVjdCBHcmFwaCBBUEkgY2FsbHMgdG8gYSBkaWZmZXJlbnQgY2xvdWQgaW5zdGFuY2UuXG4gICAqL1xuICBiYXNlVXJsUm9vdD86IHN0cmluZztcbn07XG5cbi8qKiBHcmFwaC1zcGVjaWZpYyBjbGllbnQgb3B0aW9ucy4gKi9cbnR5cGUgR3JhcGhPcHRpb25zID0ge1xuICAvKiogR3JhcGggc2VydmljZSByb290IG92ZXJyaWRlIGZvciByb3V0aW5nIEdyYXBoIGNhbGxzIHRvIHNvdmVyZWlnbiBjbG91ZC4gKi9cbiAgYmFzZVVybFJvb3Q/OiBzdHJpbmc7XG59O1xuXG4vKipcbiAqIC9cbiAqIFByb3ZpZGVzIGFuIGVudHJ5IHBvaW50IGZvciBpbnZva2luZyBNaWNyb3NvZnQgR3JhcGggQVBJcy5cbiAqL1xuZXhwb3J0IGNsYXNzIENsaWVudCB7XG4gIHByb3RlY3RlZCBiYXNlVXJsUm9vdDogc3RyaW5nO1xuICBwcm90ZWN0ZWQgX2h0dHA6IEh0dHBDbGllbnQ7XG4gIHByb3RlY3RlZCBiZXRhSHR0cD86IEh0dHBDbGllbnQ7XG5cbiAgLyoqXG4gICAqIFRoZSB1bmRlcmx5aW5nIEhUVFAgY2xpZW50LCBwcmUtY29uZmlndXJlZCB3aXRoIEdyYXBoIGJhc2UgVVJMIGFuZCBoZWFkZXJzLlxuICAgKiBVc2UgZm9yIHJhdyBHcmFwaCBBUEkgcmVxdWVzdHMgbm90IGNvdmVyZWQgYnkgZW5kcG9pbnQgZnVuY3Rpb25zLlxuICAgKi9cbiAgZ2V0IGh0dHAoKTogSHR0cENsaWVudCB7XG4gICAgcmV0dXJuIHRoaXMuX2h0dHA7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBhIEdyYXBoIGNsaWVudC5cbiAgICpcbiAgICogQHBhcmFtIG9wdGlvbnMgLSBUaGUgSFRUUCBjbGllbnQgdG8gdXNlOyBhbiBleGlzdGluZyB7QGxpbmsgSHR0cENsaWVudH0gd2lsbCBiZSBjbG9uZWQsXG4gICAqIG9yIGFuIHtAbGluayBIdHRwQ2xpZW50T3B0aW9uc30gYmFnIHdpbGwgYmUgdXNlZCB0byBidWlsZCBhIG5ldyBvbmUuXG4gICAqIEhUVFAtbGV2ZWwgc2V0dGluZ3MgbGlrZSBoZWFkZXJzLCBpbnRlcmNlcHRvcnMsIGFuZCB0aW1lb3V0cyBiZWxvbmcgaGVyZS5cbiAgICogQHBhcmFtIGdyYXBoT3B0aW9ucyAtIEdyYXBoLXNwZWNpZmljIG9wdGlvbnMuIFRha2VzIHByZWNlZGVuY2Ugb3ZlciBgb3B0aW9ucy5iYXNlVXJsUm9vdGBcbiAgICogd2hlbiBib3RoIGFyZSBzZXQuXG4gICAqXG4gICAqIEBleGFtcGxlXG4gICAqIC8vIFB1YmxpYyBjbG91ZCAoZGVmYXVsdClcbiAgICogbmV3IENsaWVudCh7IHRva2VuIH0pO1xuICAgKlxuICAgKiBAZXhhbXBsZVxuICAgKiAvLyBTb3ZlcmVpZ24gY2xvdWQgKEdDQ0gpXG4gICAqIG5ldyBDbGllbnQoaHR0cENsaWVudCwgeyBiYXNlVXJsUm9vdDogJ2h0dHBzOi8vZ3JhcGgubWljcm9zb2Z0LnVzJyB9KTtcbiAgICovXG4gIGNvbnN0cnVjdG9yKG9wdGlvbnM/OiBPcHRpb25zLCBncmFwaE9wdGlvbnM/OiBHcmFwaE9wdGlvbnMpIHtcbiAgICB0aGlzLmJhc2VVcmxSb290ID0gZ3JhcGhPcHRpb25zPy5iYXNlVXJsUm9vdCA/PyBvcHRpb25zPy5iYXNlVXJsUm9vdCA/PyBkZWZhdWx0QmFzZVVybFJvb3Q7XG4gICAgaWYgKCFvcHRpb25zKSB7XG4gICAgICB0aGlzLl9odHRwID0gbmV3IEh0dHBDbGllbnQoe1xuICAgICAgICBiYXNlVXJsOiBgJHt0aGlzLmJhc2VVcmxSb290fS92MS4wYCxcbiAgICAgICAgaGVhZGVyczoge1xuICAgICAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicsXG4gICAgICAgICAgJ1VzZXItQWdlbnQnOiBgdGVhbXMudHNbZ3JhcGhdLyR7X19QQUNLQUdFX1ZFUlNJT05fX31gLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgfSBlbHNlIGlmICgncmVxdWVzdCcgaW4gb3B0aW9ucykge1xuICAgICAgdGhpcy5faHR0cCA9IG9wdGlvbnMuY2xvbmUoe1xuICAgICAgICBiYXNlVXJsOiBgJHt0aGlzLmJhc2VVcmxSb290fS92MS4wYCxcbiAgICAgICAgaGVhZGVyczoge1xuICAgICAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicsXG4gICAgICAgICAgJ1VzZXItQWdlbnQnOiBgdGVhbXMudHNbZ3JhcGhdLyR7X19QQUNLQUdFX1ZFUlNJT05fX31gLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX2h0dHAgPSBuZXcgSHR0cENsaWVudCh7XG4gICAgICAgIC4uLm9wdGlvbnMsXG4gICAgICAgIGJhc2VVcmw6IGAke3RoaXMuYmFzZVVybFJvb3R9L3YxLjBgLFxuICAgICAgICBoZWFkZXJzOiB7XG4gICAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgICAgICAgICAnVXNlci1BZ2VudCc6IGB0ZWFtcy50c1tncmFwaF0vJHtfX1BBQ0tBR0VfVkVSU0lPTl9ffWAsXG4gICAgICAgICAgLi4ub3B0aW9ucy5oZWFkZXJzLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEV4ZWN1dGVzIGEgR3JhcGggQVBJIGVuZHBvaW50IGZ1bmN0aW9uIHdpdGggb3B0aW9uYWwgSFRUUCBjb25maWd1cmF0aW9uXG4gICAqXG4gICAqIEBwYXJhbSBmdW5jIC0gVGhlIGVuZHBvaW50IGZ1bmN0aW9uIHRvIGV4ZWN1dGVcbiAgICogQHBhcmFtIGFyZ3MgLSBBcmd1bWVudHMgZm9yIHRoZSBlbmRwb2ludCBmdW5jdGlvbiwgb3B0aW9uYWxseSBmb2xsb3dlZCBieSB7QGxpbmsgQ2FsbENvbmZpZ31cbiAgICogQHJldHVybnMgUHJvbWlzZSByZXNvbHZpbmcgdG8gdGhlIGVuZHBvaW50J3MgcmVzcG9uc2UgZGF0YVxuICAgKlxuICAgKiBAZXhhbXBsZVxuICAgKiBgYGB0eXBlc2NyaXB0XG4gICAqIC8vIFNpbXBsZSBjYWxsXG4gICAqIGNvbnN0IHVzZXIgPSBhd2FpdCBjbGllbnQuY2FsbChlbmRwb2ludHMudXNlcnMuZ2V0LCAndXNlci1pZCcpO1xuICAgKlxuICAgKiAvLyBXaXRoIEhUVFAgY29uZmlndXJhdGlvblxuICAgKiBjb25zdCB1c2VyID0gYXdhaXQgY2xpZW50LmNhbGwoZW5kcG9pbnRzLnVzZXJzLmdldCwgJ3VzZXItaWQnLCB7XG4gICAqICAgcmVxdWVzdENvbmZpZzoge1xuICAgKiAgICAgdGltZW91dDogNTAwMFxuICAgKiAgIH1cbiAgICogfSk7XG4gICAqIGBgYFxuICAgKi9cbiAgYXN5bmMgY2FsbDxcbiAgICBGIGV4dGVuZHMgKC4uLmFyZ3M6IGFueVtdKSA9PiBFbmRwb2ludFJlcXVlc3Q8YW55PixcbiAgICBSID0gUmV0dXJuVHlwZTxGPiBleHRlbmRzIEVuZHBvaW50UmVxdWVzdDxpbmZlciBUPiA/IFQgOiBuZXZlcixcbiAgPihmdW5jOiBGLCAuLi5hcmdzOiBbLi4uUGFyYW1ldGVyczxGPiwgQ2FsbE9wdGlvbnM/XSk6IFByb21pc2U8Uj4ge1xuICAgIC8vIENoZWNrIGlmIGxhc3QgYXJnIGlzIGEgY29uZmlnIG9iamVjdFxuICAgIGNvbnN0IGxhc3RBcmcgPSBhcmdzW2FyZ3MubGVuZ3RoIC0gMV07XG4gICAgY29uc3QgaGFzT3B0aW9ucyA9XG4gICAgICBhcmdzLmxlbmd0aCA+IGZ1bmMubGVuZ3RoICYmXG4gICAgICBsYXN0QXJnICYmXG4gICAgICB0eXBlb2YgbGFzdEFyZyA9PT0gJ29iamVjdCcgJiZcbiAgICAgICdyZXF1ZXN0Q29uZmlnJyBpbiBsYXN0QXJnO1xuXG4gICAgLy8gRXh0cmFjdCBmdW5jdGlvbiBhcmd1bWVudHNcbiAgICBjb25zdCBmdW5jQXJncyA9IGhhc09wdGlvbnMgPyBhcmdzLnNsaWNlKDAsIC0xKSA6IGFyZ3M7XG4gICAgY29uc3QgY2FsbE9wdGlvbnMgPSBoYXNPcHRpb25zID8gbGFzdEFyZyBhcyBDYWxsT3B0aW9ucyA6IHVuZGVmaW5lZDtcblxuICAgIGNvbnN0IHtcbiAgICAgIHZlciA9ICd2MS4wJyxcbiAgICAgIG1ldGhvZCxcbiAgICAgIHBhdGgsXG4gICAgICBwYXJhbURlZnMgPSB7fSxcbiAgICAgIHBhcmFtcyA9IHt9LFxuICAgICAgYm9keSxcbiAgICB9ID0gZnVuYyguLi4oZnVuY0FyZ3MgYXMgYW55W10pKTtcbiAgICBjb25zdCB1cmwgPSBnZXRJbmplY3RlZFVybChwYXRoLCBwYXJhbURlZnMsIHBhcmFtcyk7XG4gICAgY29uc3QgcmVxdWVzdENvbmZpZyA9IGdldEluamVjdGVkUmVxdWVzdENvbmZpZyhwYXJhbURlZnMsIHBhcmFtcywgY2FsbE9wdGlvbnM/LnJlcXVlc3RDb25maWcpO1xuICAgIGNvbnN0IGh0dHBDbGllbnQgPSB0aGlzLmdldEh0dHBDbGllbnQodmVyKTtcblxuICAgIHRyeSB7XG4gICAgICBzd2l0Y2ggKG1ldGhvZCkge1xuICAgICAgICBjYXNlICdkZWxldGUnOlxuICAgICAgICBjYXNlICdnZXQnOlxuICAgICAgICAgIHJldHVybiAoYXdhaXQgaHR0cENsaWVudFttZXRob2RdKHVybCwgcmVxdWVzdENvbmZpZykpLmRhdGEgYXMgUjtcbiAgICAgICAgY2FzZSAncGF0Y2gnOlxuICAgICAgICBjYXNlICdwb3N0JzpcbiAgICAgICAgY2FzZSAncHV0JzpcbiAgICAgICAgICByZXR1cm4gKGF3YWl0IGh0dHBDbGllbnRbbWV0aG9kXSh1cmwsIGJvZHksIHJlcXVlc3RDb25maWcpKS5kYXRhIGFzIFI7XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBVbnN1cHBvcnRlZCBIVFRQIG1ldGhvZDogJHttZXRob2R9YCk7XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICBpZiAoZXJyICYmIHR5cGVvZiBlcnIgPT09ICdvYmplY3QnICYmICdpc0F4aW9zRXJyb3InIGluIGVyciAmJiAncmVzcG9uc2UnIGluIGVyciAmJiBlcnIucmVzcG9uc2UpIHtcbiAgICAgICAgY29uc3QgeyByZXNwb25zZSB9ID0gZXJyIGFzIHsgcmVzcG9uc2U6IHsgc3RhdHVzOiBudW1iZXI7IGRhdGE6IHVua25vd24gfSB9O1xuICAgICAgICB0aHJvdyBuZXcgR3JhcGhFcnJvcihyZXNwb25zZS5zdGF0dXMsIHJlc3BvbnNlLmRhdGEsIG1ldGhvZCwgdXJsLCBlcnIpO1xuICAgICAgfVxuICAgICAgdGhyb3cgZXJyO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZ2V0SHR0cENsaWVudChzY2hlbWFWZXJzaW9uOiBTY2hlbWFWZXJzaW9uKTogSHR0cENsaWVudCB7XG4gICAgaWYgKHNjaGVtYVZlcnNpb24gPT09ICd2MS4wJykge1xuICAgICAgcmV0dXJuIHRoaXMuX2h0dHA7XG4gICAgfVxuXG4gICAgdGhpcy5iZXRhSHR0cCA9XG4gICAgICB0aGlzLmJldGFIdHRwID8/XG4gICAgICB0aGlzLl9odHRwLmNsb25lKHtcbiAgICAgICAgYmFzZVVybDogYCR7dGhpcy5iYXNlVXJsUm9vdH0vYmV0YWAsXG4gICAgICB9KTtcblxuICAgIHJldHVybiB0aGlzLmJldGFIdHRwO1xuICB9XG59XG4iXX0=
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import {Client}from'@microsoft/teams.common';import O from'qs';function
|
|
1
|
+
import {Client}from'@microsoft/teams.common';import O from'qs';function y(a,t,e){let s={};for(let r of t.query??[])s[r]=e[r];for(let r of t.path??[])a=a.replace(`{${r}}`,e[r]);return `${a}${O.stringify(s,{addQueryPrefix:true,arrayFormat:"comma"})}`}function b(a,t,e){let s=(a.header??[]).reduce((r,n)=>(t[n]&&(r[n]=t[n]),r),{});return Object.keys(s).length===0?e:{...e,headers:{...e?.headers,...s}}}var h=class extends Error{statusCode;code;body;source;constructor(t,e,s,r,n){let i=e&&typeof e=="object"&&"error"in e?e.error:void 0,c=i?.message?`Graph ${s.toUpperCase()} ${r} failed (${t}): ${i.message}`:`Graph ${s.toUpperCase()} ${r} failed with status ${t}`;super(c),this.name="GraphError",this.statusCode=t,this.code=i?.code,Object.defineProperty(this,"body",{value:e,enumerable:false,writable:true,configurable:true}),n!==void 0&&Object.defineProperty(this,"source",{value:n,enumerable:false,writable:true,configurable:true});}},w="https://graph.microsoft.com",C=class{baseUrlRoot;_http;betaHttp;get http(){return this._http}constructor(t,e){this.baseUrlRoot=e?.baseUrlRoot??t?.baseUrlRoot??w,t?"request"in t?this._http=t.clone({baseUrl:`${this.baseUrlRoot}/v1.0`,headers:{"Content-Type":"application/json","User-Agent":"teams.ts[graph]/0.0.0"}}):this._http=new Client({...t,baseUrl:`${this.baseUrlRoot}/v1.0`,headers:{"Content-Type":"application/json","User-Agent":"teams.ts[graph]/0.0.0",...t.headers}}):this._http=new Client({baseUrl:`${this.baseUrlRoot}/v1.0`,headers:{"Content-Type":"application/json","User-Agent":"teams.ts[graph]/0.0.0"}});}async call(t,...e){let s=e[e.length-1],r=e.length>t.length&&s&&typeof s=="object"&&"requestConfig"in s,n=r?e.slice(0,-1):e,i=r?s:void 0,{ver:c="v1.0",method:p,path:_,paramDefs:u={},params:d={},body:U}=t(...n),l=y(_,u,d),f=b(u,d,i?.requestConfig),g=this.getHttpClient(c);try{switch(p){case "delete":case "get":return (await g[p](l,f)).data;case "patch":case "post":case "put":return (await g[p](l,U,f)).data;default:throw new Error(`Unsupported HTTP method: ${p}`)}}catch(o){if(o&&typeof o=="object"&&"isAxiosError"in o&&"response"in o&&o.response){let{response:m}=o;throw new h(m.status,m.data,p,l,o)}throw o}}getHttpClient(t){return t==="v1.0"?this._http:(this.betaHttp=this.betaHttp??this._http.clone({baseUrl:`${this.baseUrlRoot}/beta`}),this.betaHttp)}};
|
|
2
2
|
export{C as Client,h as GraphError};//# sourceMappingURL=index.mjs.map
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy91dGlscy91cmwudHMiLCIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOlsiZ2V0SW5qZWN0ZWRVcmwiLCJ1cmwiLCJwYXJhbXMiLCJkYXRhIiwicXVlcnkiLCJwYXJhbSIsInFzIiwiZ2V0SW5qZWN0ZWRSZXF1ZXN0Q29uZmlnIiwicmVxdWVzdENvbmZpZyIsInBhcmFtSGVhZGVycyIsImFnZyIsIkdyYXBoRXJyb3IiLCJzdGF0dXNDb2RlIiwiYm9keSIsIm1ldGhvZCIsInNvdXJjZSIsImdyYXBoRXJyb3IiLCJtZXNzYWdlIiwiZGVmYXVsdEJhc2VVcmxSb290IiwiQ2xpZW50Iiwib3B0aW9ucyIsImdyYXBoT3B0aW9ucyIsIkh0dHBDbGllbnQiLCJmdW5jIiwiYXJncyIsImxhc3RBcmciLCJoYXNPcHRpb25zIiwiZnVuY0FyZ3MiLCJjYWxsT3B0aW9ucyIsInZlciIsInBhdGgiLCJwYXJhbURlZnMiLCJodHRwQ2xpZW50IiwiZXJyIiwicmVzcG9uc2UiLCJzY2hlbWFWZXJzaW9uIl0sIm1hcHBpbmdzIjoiK0RBTU8sU0FBU0EsQ0FBQUEsQ0FDZEMsQ0FBQUEsQ0FDQUMsQ0FBQUEsQ0FDQUMsQ0FBQUEsQ0FDQSxDQUNBLElBQU1DLEVBQTZCLEVBQUMsQ0FFcEMsSUFBQSxJQUFXQyxDQUFBQSxJQUFTSCxDQUFBQSxDQUFPLEtBQUEsRUFBUyxFQUFDLENBQ25DRSxDQUFBQSxDQUFNQyxDQUFLLENBQUEsQ0FBSUYsQ0FBQUEsQ0FBS0UsQ0FBSyxDQUFBLENBRzNCLFFBQVdBLENBQUFBLElBQVNILENBQUFBLENBQU8sSUFBQSxFQUFRLEVBQUMsQ0FDbENELENBQUFBLENBQU1BLENBQUFBLENBQUksT0FBQSxDQUFRLENBQUEsQ0FBQSxFQUFJSSxDQUFLLENBQUEsQ0FBQSxDQUFBLENBQUtGLENBQUFBLENBQUtFLENBQUssQ0FBQyxFQUc3QyxPQUFPLENBQUEsRUFBR0osQ0FBRyxDQUFBLEVBQUdLLENBQUFBLENBQUcsU0FBQSxDQUFVRixDQUFBQSxD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LENBQVMsTUFBQSxDQUFRQSxDQUFBQSxDQUFTLElBQUEsQ0FBTXBCLENBQUFBLENBQVFiLENBQUFBLENBQUtnQyxDQUFHLENBQ3ZFLENBQ0EsTUFBTUEsQ0FDUixDQUNGLENBRVEsYUFBQSxDQUFjRSxDQUFBQSxDQUEwQyxDQUM5RCxPQUFJQSxDQUFBQSxHQUFrQixNQUFBLENBQ2IsSUFBQSxDQUFLLEtBQUEsRUFHZCxJQUFBLENBQUssUUFBQSxDQUNILElBQUEsQ0FBSyxRQUFBLEVBQ0wsSUFBQSxDQUFLLEtBQUEsQ0FBTSxLQUFBLENBQU0sQ0FDZixPQUFBLENBQVMsQ0FBQSxFQUFHLElBQUEsQ0FBSyxXQUFXLENBQUEsS0FBQSxDQUM5QixDQUFDLENBQUEsQ0FFSSxJQUFBLENBQUssUUFBQSxDQUNkLENBQ0YiLCJmaWxlIjoiaW5kZXgubWpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHFzIGZyb20gJ3FzJztcblxuaW1wb3J0IHsgdHlwZSBSZXF1ZXN0Q29uZmlnIH0gZnJvbSAnQG1pY3Jvc29mdC90ZWFtcy5jb21tb24nO1xuXG5pbXBvcnQgeyBQYXJhbURlZnMgfSBmcm9tICcuLi90eXBlcyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRJbmplY3RlZFVybChcbiAgdXJsOiBzdHJpbmcsXG4gIHBhcmFtczogUGFyYW1EZWZzLFxuICBkYXRhOiBSZWNvcmQ8c3RyaW5nLCBhbnk+LFxuKSB7XG4gIGNvbnN0IHF1ZXJ5OiBSZWNvcmQ8c3RyaW5nLCBhbnk+ID0ge307XG5cbiAgZm9yIChjb25zdCBwYXJhbSBvZiBwYXJhbXMucXVlcnkgPz8gW10pIHtcbiAgICBxdWVyeVtwYXJhbV0gPSBkYXRhW3BhcmFtXTtcbiAgfVxuXG4gIGZvciAoY29uc3QgcGFyYW0gb2YgcGFyYW1zLnBhdGggPz8gW10pIHtcbiAgICB1cmwgPSB1cmwucmVwbGFjZShgeyR7cGFyYW19fWAsIGRhdGFbcGFyYW1dKTtcbiAgfVxuXG4gIHJldHVybiBgJHt1cmx9JHtxcy5zdHJpbmdpZnkocXVlcnksIHsgYWRkUXVlcnlQcmVmaXg6IHRydWUsIGFycmF5Rm9ybWF0OiAnY29tbWEnIH0pfWA7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRJbmplY3RlZFJlcXVlc3RDb25maWcoXG4gIHBhcmFtczogUGFyYW1EZWZzLFxuICBkYXRhOiBSZWNvcmQ8c3RyaW5nLCBhbnk+LFxuICByZXF1ZXN0Q29uZmlnPzogUmVxdWVzdENvbmZpZyxcbik6IFJlcXVlc3RDb25maWcgfCB1bmRlZmluZWQge1xuICBjb25zdCBwYXJhbUhlYWRlcnMgPSAocGFyYW1zLmhlYWRlciA/PyBbXSkucmVkdWNlPFJlY29yZDxzdHJpbmcsIGFueT4+KFxuICAgIChhZ2csIHBhcmFtKSA9PiB7XG4gICAgICBpZiAoZGF0YVtwYXJhbV0pIHtcbiAgICAgICAgYWdnW3BhcmFtXSA9IGRhdGFbcGFyYW1dO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGFnZztcbiAgICB9LFxuICAgIHt9LFxuICApO1xuXG4gIHJldHVybiBPYmplY3Qua2V5cyhwYXJhbUhlYWRlcnMpLmxlbmd0aCA9PT0gMFxuICAgID8gcmVxdWVzdENvbmZpZ1xuICAgIDoge1xuICAgICAgICAuLi5yZXF1ZXN0Q29uZmlnLFxuICAgICAgICBoZWFkZXJzOiB7IC4uLnJlcXVlc3RDb25maWc/LmhlYWRlcnMsIC4uLnBhcmFtSGVhZGVycyB9LFxuICAgICAgfTtcbn1cbiIsImltcG9ydCB7XG4gIENsaWVudCBhcyBIdHRwQ2xpZW50LFxuICB0eXBlIENsaWVudE9wdGlvbnMgYXMgSHR0cENsaWVudE9wdGlvbnNcbn0gZnJvbSAnQG1pY3Jvc29mdC90ZWFtcy5jb21tb24nO1xuXG5pbXBvcnQgeyBnZXRJbmplY3RlZFVybCwgZ2V0SW5qZWN0ZWRSZXF1ZXN0Q29uZmlnIH0gZnJvbSAnLi91dGlscy91cmwnO1xuXG5pbXBvcnQgdHlwZSB7IENhbGxPcHRpb25zLCBFbmRwb2ludFJlcXVlc3QsIFNjaGVtYVZlcnNpb24gfSBmcm9tICcuL3R5cGVzJztcblxuLy8gQnVpbGQtdGltZSBjb25zdGFudCBpbmplY3RlZCBieSB0c3VwXG5kZWNsYXJlIGNvbnN0IF9fUEFDS0FHRV9WRVJTSU9OX186IHN0cmluZztcblxuZXhwb3J0IHsgQ2FsbE9wdGlvbnMsIEVuZHBvaW50UmVxdWVzdCwgU2NoZW1hVmVyc2lvbiB9IGZyb20gJy4vdHlwZXMnO1xuXG4vKipcbiAqIEVycm9yIHRocm93biB3aGVuIGEgR3JhcGggQVBJIHJlcXVlc3QgZmFpbHMuXG4gKiBTdXJmYWNlcyB0aGUgcmVzcG9uc2UgYm9keSBmcm9tIHRoZSBHcmFwaCBBUEkgZm9yIGVhc2llciBkZWJ1Z2dpbmcuXG4gKi9cbmV4cG9ydCBjbGFzcyBHcmFwaEVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICAvKiogSFRUUCBzdGF0dXMgY29kZSAqL1xuICByZWFkb25seSBzdGF0dXNDb2RlOiBudW1iZXI7XG4gIC8qKiBHcmFwaCBBUEkgZXJyb3IgY29kZSAoZS5nLiBcIkF1dGhvcml6YXRpb25fUmVxdWVzdERlbmllZFwiKSAqL1xuICByZWFkb25seSBjb2RlPzogc3RyaW5nO1xuICAvKiogVGhlIGZ1bGwgcmVzcG9uc2UgYm9keSBmcm9tIHRoZSBHcmFwaCBBUEkgKi9cbiAgcmVhZG9ubHkgYm9keTogdW5rbm93bjtcbiAgLyoqIFRoZSB1bmRlcmx5aW5nIGVycm9yIHRoYXQgY2F1c2VkIHRoaXMgR3JhcGhFcnJvciAoZS5nLiB0aGUgQXhpb3MgZXJyb3IpICovXG4gIHJlYWRvbmx5IHNvdXJjZT86IHVua25vd247XG5cbiAgY29uc3RydWN0b3Ioc3RhdHVzQ29kZTogbnVtYmVyLCBib2R5OiB1bmtub3duLCBtZXRob2Q6IHN0cmluZywgdXJsOiBzdHJpbmcsIHNvdXJjZT86IHVua25vd24pIHtcbiAgICBjb25zdCBncmFwaEVycm9yID0gYm9keSAmJiB0eXBlb2YgYm9keSA9PT0gJ29iamVjdCcgJiYgJ2Vycm9yJyBpbiBib2R5XG4gICAgICA/IChib2R5IGFzIHsgZXJyb3I6IHsgY29kZT86IHN0cmluZzsgbWVzc2FnZT86IHN0cmluZyB9IH0pLmVycm9yXG4gICAgICA6IHVuZGVmaW5lZDtcblxuICAgIGNvbnN0IG1lc3NhZ2UgPSBncmFwaEVycm9yPy5tZXNzYWdlXG4gICAgICA/IGBHcmFwaCAke21ldGhvZC50b1VwcGVyQ2FzZSgpfSAke3VybH0gZmFpbGVkICgke3N0YXR1c0NvZGV9KTogJHtncmFwaEVycm9yLm1lc3NhZ2V9YFxuICAgICAgOiBgR3JhcGggJHttZXRob2QudG9VcHBlckNhc2UoKX0gJHt1cmx9IGZhaWxlZCB3aXRoIHN0YXR1cyAke3N0YXR1c0NvZGV9YDtcblxuICAgIHN1cGVyKG1lc3NhZ2UpO1xuICAgIHRoaXMubmFtZSA9ICdHcmFwaEVycm9yJztcbiAgICB0aGlzLnN0YXR1c0NvZGUgPSBzdGF0dXNDb2RlO1xuICAgIHRoaXMuY29kZSA9IGdyYXBoRXJyb3I/LmNvZGU7XG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsICdib2R5JywgeyB2YWx1ZTogYm9keSwgZW51bWVyYWJsZTogZmFsc2UsIHdyaXRhYmxlOiB0cnVlLCBjb25maWd1cmFibGU6IHRydWUgfSk7XG4gICAgaWYgKHNvdXJjZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgJ3NvdXJjZScsIHsgdmFsdWU6IHNvdXJjZSwgZW51bWVyYWJsZTogZmFsc2UsIHdyaXRhYmxlOiB0cnVlLCBjb25maWd1cmFibGU6IHRydWUgfSk7XG4gICAgfVxuICB9XG59XG5cbmNvbnN0IGRlZmF1bHRCYXNlVXJsUm9vdCA9ICdodHRwczovL2dyYXBoLm1pY3Jvc29mdC5jb20nO1xuXG50eXBlIE9wdGlvbnMgPSAoSHR0cENsaWVudCB8IEh0dHBDbGllbnRPcHRpb25zKSAmIHtcbiAgLyoqIEdyYXBoIHNlcnZpY2Ugcm9vdC4gQnkgZGVmYXVsdCwgdGhlIGdsb2JhbCBjb21tZXJjaWFsIFVSTCBcImh0dHBzOi8vZ3JhcGgubWljcm9zb2Z0LmNvbVwiIGlzIHVzZWQsXG4gICAqIGJ1dCBjZXJ0YWluIHRlbmFudHMgbWF5IHdpc2ggdG8gb3ZlcnJpZGUgdGhpcyB0byBkaXJlY3QgR3JhcGggQVBJIGNhbGxzIHRvIGEgZGlmZmVyZW50IGNsb3VkIGluc3RhbmNlLlxuICAgKi9cbiAgYmFzZVVybFJvb3Q/OiBzdHJpbmc7XG59O1xuXG4vKiogR3JhcGgtc3BlY2lmaWMgY2xpZW50IG9wdGlvbnMuICovXG50eXBlIEdyYXBoT3B0aW9ucyA9IHtcbiAgLyoqIEdyYXBoIHNlcnZpY2Ugcm9vdCBvdmVycmlkZSBmb3Igcm91dGluZyBHcmFwaCBjYWxscyB0byBzb3ZlcmVpZ24gY2xvdWQuICovXG4gIGJhc2VVcmxSb290Pzogc3RyaW5nO1xufTtcblxuLyoqXG4gKiAvXG4gKiBQcm92aWRlcyBhbiBlbnRyeSBwb2ludCBmb3IgaW52b2tpbmcgTWljcm9zb2Z0IEdyYXBoIEFQSXMuXG4gKi9cbmV4cG9ydCBjbGFzcyBDbGllbnQge1xuICBwcm90ZWN0ZWQgYmFzZVVybFJvb3Q7XG4gIHByb3RlY3RlZCBfaHR0cDogSHR0cENsaWVudDtcbiAgcHJvdGVjdGVkIGJldGFIdHRwPzogSHR0cENsaWVudDtcblxuICAvKipcbiAgICogVGhlIHVuZGVybHlpbmcgSFRUUCBjbGllbnQsIHByZS1jb25maWd1cmVkIHdpdGggR3JhcGggYmFzZSBVUkwgYW5kIGhlYWRlcnMuXG4gICAqIFVzZSBmb3IgcmF3IEdyYXBoIEFQSSByZXF1ZXN0cyBub3QgY292ZXJlZCBieSBlbmRwb2ludCBmdW5jdGlvbnMuXG4gICAqL1xuICBnZXQgaHR0cCgpOiBIdHRwQ2xpZW50IHtcbiAgICByZXR1cm4gdGhpcy5faHR0cDtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgR3JhcGggY2xpZW50LlxuICAgKlxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIFRoZSBIVFRQIGNsaWVudCB0byB1c2U7IGFuIGV4aXN0aW5nIHtAbGluayBIdHRwQ2xpZW50fSB3aWxsIGJlIGNsb25lZCxcbiAgICogb3IgYW4ge0BsaW5rIEh0dHBDbGllbnRPcHRpb25zfSBiYWcgd2lsbCBiZSB1c2VkIHRvIGJ1aWxkIGEgbmV3IG9uZS5cbiAgICogSFRUUC1sZXZlbCBzZXR0aW5ncyBsaWtlIGhlYWRlcnMsIGludGVyY2VwdG9ycywgYW5kIHRpbWVvdXRzIGJlbG9uZyBoZXJlLlxuICAgKiBAcGFyYW0gZ3JhcGhPcHRpb25zIC0gR3JhcGgtc3BlY2lmaWMgb3B0aW9ucy4gVGFrZXMgcHJlY2VkZW5jZSBvdmVyIGBvcHRpb25zLmJhc2VVcmxSb290YFxuICAgKiB3aGVuIGJvdGggYXJlIHNldC5cbiAgICpcbiAgICogQGV4YW1wbGVcbiAgICogLy8gUHVibGljIGNsb3VkIChkZWZhdWx0KVxuICAgKiBuZXcgQ2xpZW50KHsgdG9rZW4gfSk7XG4gICAqXG4gICAqIEBleGFtcGxlXG4gICAqIC8vIFNvdmVyZWlnbiBjbG91ZCAoR0NDSClcbiAgICogbmV3IENsaWVudChodHRwQ2xpZW50LCB7IGJhc2VVcmxSb290OiAnaHR0cHM6Ly9ncmFwaC5taWNyb3NvZnQudXMnIH0pO1xuICAgKi9cbiAgY29uc3RydWN0b3Iob3B0aW9ucz86IE9wdGlvbnMsIGdyYXBoT3B0aW9ucz86IEdyYXBoT3B0aW9ucykge1xuICAgIHRoaXMuYmFzZVVybFJvb3QgPSBncmFwaE9wdGlvbnM/LmJhc2VVcmxSb290ID8/IG9wdGlvbnM/LmJhc2VVcmxSb290ID8/IGRlZmF1bHRCYXNlVXJsUm9vdDtcbiAgICBpZiAoIW9wdGlvbnMpIHtcbiAgICAgIHRoaXMuX2h0dHAgPSBuZXcgSHR0cENsaWVudCh7XG4gICAgICAgIGJhc2VVcmw6IGAke3RoaXMuYmFzZVVybFJvb3R9L3YxLjBgLFxuICAgICAgICBoZWFkZXJzOiB7XG4gICAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgICAgICAgICAnVXNlci1BZ2VudCc6IGB0ZWFtcy50c1tncmFwaF0vJHtfX1BBQ0tBR0VfVkVSU0lPTl9ffWAsXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICB9IGVsc2UgaWYgKCdyZXF1ZXN0JyBpbiBvcHRpb25zKSB7XG4gICAgICB0aGlzLl9odHRwID0gb3B0aW9ucy5jbG9uZSh7XG4gICAgICAgIGJhc2VVcmw6IGAke3RoaXMuYmFzZVVybFJvb3R9L3YxLjBgLFxuICAgICAgICBoZWFkZXJzOiB7XG4gICAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgICAgICAgICAnVXNlci1BZ2VudCc6IGB0ZWFtcy50c1tncmFwaF0vJHtfX1BBQ0tBR0VfVkVSU0lPTl9ffWAsXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5faHR0cCA9IG5ldyBIdHRwQ2xpZW50KHtcbiAgICAgICAgLi4ub3B0aW9ucyxcbiAgICAgICAgYmFzZVVybDogYCR7dGhpcy5iYXNlVXJsUm9vdH0vdjEuMGAsXG4gICAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgICAgICdVc2VyLUFnZW50JzogYHRlYW1zLnRzW2dyYXBoXS8ke19fUEFDS0FHRV9WRVJTSU9OX199YCxcbiAgICAgICAgICAuLi5vcHRpb25zLmhlYWRlcnMsXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogRXhlY3V0ZXMgYSBHcmFwaCBBUEkgZW5kcG9pbnQgZnVuY3Rpb24gd2l0aCBvcHRpb25hbCBIVFRQIGNvbmZpZ3VyYXRpb25cbiAgICpcbiAgICogQHBhcmFtIGZ1bmMgLSBUaGUgZW5kcG9pbnQgZnVuY3Rpb24gdG8gZXhlY3V0ZVxuICAgKiBAcGFyYW0gYXJncyAtIEFyZ3VtZW50cyBmb3IgdGhlIGVuZHBvaW50IGZ1bmN0aW9uLCBvcHRpb25hbGx5IGZvbGxvd2VkIGJ5IHtAbGluayBDYWxsQ29uZmlnfVxuICAgKiBAcmV0dXJucyBQcm9taXNlIHJlc29sdmluZyB0byB0aGUgZW5kcG9pbnQncyByZXNwb25zZSBkYXRhXG4gICAqXG4gICAqIEBleGFtcGxlXG4gICAqIGBgYHR5cGVzY3JpcHRcbiAgICogLy8gU2ltcGxlIGNhbGxcbiAgICogY29uc3QgdXNlciA9IGF3YWl0IGNsaWVudC5jYWxsKGVuZHBvaW50cy51c2Vycy5nZXQsICd1c2VyLWlkJyk7XG4gICAqXG4gICAqIC8vIFdpdGggSFRUUCBjb25maWd1cmF0aW9uXG4gICAqIGNvbnN0IHVzZXIgPSBhd2FpdCBjbGllbnQuY2FsbChlbmRwb2ludHMudXNlcnMuZ2V0LCAndXNlci1pZCcsIHtcbiAgICogICByZXF1ZXN0Q29uZmlnOiB7XG4gICAqICAgICB0aW1lb3V0OiA1MDAwXG4gICAqICAgfVxuICAgKiB9KTtcbiAgICogYGBgXG4gICAqL1xuICBhc3luYyBjYWxsPFxuICAgIEYgZXh0ZW5kcyAoLi4uYXJnczogYW55W10pID0+IEVuZHBvaW50UmVxdWVzdDxhbnk+LFxuICAgIFIgPSBSZXR1cm5UeXBlPEY+IGV4dGVuZHMgRW5kcG9pbnRSZXF1ZXN0PGluZmVyIFQ+ID8gVCA6IG5ldmVyLFxuICA+KGZ1bmM6IEYsIC4uLmFyZ3M6IFsuLi5QYXJhbWV0ZXJzPEY+LCBDYWxsT3B0aW9ucz9dKTogUHJvbWlzZTxSPiB7XG4gICAgLy8gQ2hlY2sgaWYgbGFzdCBhcmcgaXMgYSBjb25maWcgb2JqZWN0XG4gICAgY29uc3QgbGFzdEFyZyA9IGFyZ3NbYXJncy5sZW5ndGggLSAxXTtcbiAgICBjb25zdCBoYXNPcHRpb25zID1cbiAgICAgIGFyZ3MubGVuZ3RoID4gZnVuYy5sZW5ndGggJiZcbiAgICAgIGxhc3RBcmcgJiZcbiAgICAgIHR5cGVvZiBsYXN0QXJnID09PSAnb2JqZWN0JyAmJlxuICAgICAgJ3JlcXVlc3RDb25maWcnIGluIGxhc3RBcmc7XG5cbiAgICAvLyBFeHRyYWN0IGZ1bmN0aW9uIGFyZ3VtZW50c1xuICAgIGNvbnN0IGZ1bmNBcmdzID0gaGFzT3B0aW9ucyA/IGFyZ3Muc2xpY2UoMCwgLTEpIDogYXJncztcbiAgICBjb25zdCBjYWxsT3B0aW9ucyA9IGhhc09wdGlvbnMgPyBsYXN0QXJnIGFzIENhbGxPcHRpb25zIDogdW5kZWZpbmVkO1xuXG4gICAgY29uc3Qge1xuICAgICAgdmVyID0gJ3YxLjAnLFxuICAgICAgbWV0aG9kLFxuICAgICAgcGF0aCxcbiAgICAgIHBhcmFtRGVmcyA9IHt9LFxuICAgICAgcGFyYW1zID0ge30sXG4gICAgICBib2R5LFxuICAgIH0gPSBmdW5jKC4uLihmdW5jQXJncyBhcyBhbnlbXSkpO1xuICAgIGNvbnN0IHVybCA9IGdldEluamVjdGVkVXJsKHBhdGgsIHBhcmFtRGVmcywgcGFyYW1zKTtcbiAgICBjb25zdCByZXF1ZXN0Q29uZmlnID0gZ2V0SW5qZWN0ZWRSZXF1ZXN0Q29uZmlnKHBhcmFtRGVmcywgcGFyYW1zLCBjYWxsT3B0aW9ucz8ucmVxdWVzdENvbmZpZyk7XG4gICAgY29uc3QgaHR0cENsaWVudCA9IHRoaXMuZ2V0SHR0cENsaWVudCh2ZXIpO1xuXG4gICAgdHJ5IHtcbiAgICAgIHN3aXRjaCAobWV0aG9kKSB7XG4gICAgICAgIGNhc2UgJ2RlbGV0ZSc6XG4gICAgICAgIGNhc2UgJ2dldCc6XG4gICAgICAgICAgcmV0dXJuIChhd2FpdCBodHRwQ2xpZW50W21ldGhvZF0odXJsLCByZXF1ZXN0Q29uZmlnKSkuZGF0YSBhcyBSO1xuICAgICAgICBjYXNlICdwYXRjaCc6XG4gICAgICAgIGNhc2UgJ3Bvc3QnOlxuICAgICAgICBjYXNlICdwdXQnOlxuICAgICAgICAgIHJldHVybiAoYXdhaXQgaHR0cENsaWVudFttZXRob2RdKHVybCwgYm9keSwgcmVxdWVzdENvbmZpZykpLmRhdGEgYXMgUjtcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFVuc3VwcG9ydGVkIEhUVFAgbWV0aG9kOiAke21ldGhvZH1gKTtcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIGlmIChlcnIgJiYgdHlwZW9mIGVyciA9PT0gJ29iamVjdCcgJiYgJ2lzQXhpb3NFcnJvcicgaW4gZXJyICYmICdyZXNwb25zZScgaW4gZXJyICYmIGVyci5yZXNwb25zZSkge1xuICAgICAgICBjb25zdCB7IHJlc3BvbnNlIH0gPSBlcnIgYXMgeyByZXNwb25zZTogeyBzdGF0dXM6IG51bWJlcjsgZGF0YTogdW5rbm93biB9IH07XG4gICAgICAgIHRocm93IG5ldyBHcmFwaEVycm9yKHJlc3BvbnNlLnN0YXR1cywgcmVzcG9uc2UuZGF0YSwgbWV0aG9kLCB1cmwsIGVycik7XG4gICAgICB9XG4gICAgICB0aHJvdyBlcnI7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBnZXRIdHRwQ2xpZW50KHNjaGVtYVZlcnNpb246IFNjaGVtYVZlcnNpb24pOiBIdHRwQ2xpZW50IHtcbiAgICBpZiAoc2NoZW1hVmVyc2lvbiA9PT0gJ3YxLjAnKSB7XG4gICAgICByZXR1cm4gdGhpcy5faHR0cDtcbiAgICB9XG5cbiAgICB0aGlzLmJldGFIdHRwID1cbiAgICAgIHRoaXMuYmV0YUh0dHAgPz9cbiAgICAgIHRoaXMuX2h0dHAuY2xvbmUoe1xuICAgICAgICBiYXNlVXJsOiBgJHt0aGlzLmJhc2VVcmxSb290fS9iZXRhYCxcbiAgICAgIH0pO1xuXG4gICAgcmV0dXJuIHRoaXMuYmV0YUh0dHA7XG4gIH1cbn1cbiJdfQ==
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy91dGlscy91cmwudHMiLCIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOlsiZ2V0SW5qZWN0ZWRVcmwiLCJ1cmwiLCJwYXJhbXMiLCJkYXRhIiwicXVlcnkiLCJwYXJhbSIsInFzIiwiZ2V0SW5qZWN0ZWRSZXF1ZXN0Q29uZmlnIiwicmVxdWVzdENvbmZpZyIsInBhcmFtSGVhZGVycyIsImFnZyIsIkdyYXBoRXJyb3IiLCJzdGF0dXNDb2RlIiwiYm9keSIsIm1ldGhvZCIsInNvdXJjZSIsImdyYXBoRXJyb3IiLCJtZXNzYWdlIiwiZGVmYXVsdEJhc2VVcmxSb290IiwiQ2xpZW50Iiwib3B0aW9ucyIsImdyYXBoT3B0aW9ucyIsIkh0dHBDbGllbnQiLCJmdW5jIiwiYXJncyIsImxhc3RBcmciLCJoYXNPcHRpb25zIiwiZnVuY0FyZ3MiLCJjYWxsT3B0aW9ucyIsInZlciIsInBhdGgiLCJwYXJhbURlZnMiLCJodHRwQ2xpZW50IiwiZXJyIiwicmVzcG9uc2UiLCJzY2hlbWFWZXJzaW9uIl0sIm1hcHBpbmdzIjoiK0RBTU8sU0FBU0EsQ0FBQUEsQ0FDZEMsQ0FBQUEsQ0FDQUMsQ0FBQUEsQ0FDQUMsQ0FBQUEsQ0FDUSxDQUNSLElBQU1DLEVBQTZCLEVBQUMsQ0FFcEMsSUFBQSxJQUFXQyxDQUFBQSxJQUFTSCxDQUFBQSxDQUFPLEtBQUEsRUFBUyxFQUFDLENBQ25DRSxDQUFBQSxDQUFNQyxDQUFLLENBQUEsQ0FBSUYsQ0FBQUEsQ0FBS0UsQ0FBSyxDQUFBLENBRzNCLFFBQVdBLENBQUFBLElBQVNILENBQUFBLENBQU8sSUFBQSxFQUFRLEVBQUMsQ0FDbENELENBQUFBLENBQU1BLENBQUFBLENBQUksT0FBQSxDQUFRLENBQUEsQ0FBQSxFQUFJSSxDQUFLLENBQUEsQ0FBQSxDQUFBLENBQUtGLENBQUFBLENBQUtFLENBQUssQ0FBQyxFQUc3QyxPQUFPLENBQUEsRUFBR0osQ0FBRyxDQUFBLEVBQUdLLENBQUFBLENBQUcsU0FBQSxDQUFVRixDQUFBQSxD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LENBQVMsTUFBQSxDQUFRQSxDQUFBQSxDQUFTLElBQUEsQ0FBTXBCLENBQUFBLENBQVFiLENBQUFBLENBQUtnQyxDQUFHLENBQ3ZFLENBQ0EsTUFBTUEsQ0FDUixDQUNGLENBRVEsYUFBQSxDQUFjRSxDQUFBQSxDQUEwQyxDQUM5RCxPQUFJQSxDQUFBQSxHQUFrQixNQUFBLENBQ2IsSUFBQSxDQUFLLEtBQUEsRUFHZCxJQUFBLENBQUssUUFBQSxDQUNILElBQUEsQ0FBSyxRQUFBLEVBQ0wsSUFBQSxDQUFLLEtBQUEsQ0FBTSxLQUFBLENBQU0sQ0FDZixPQUFBLENBQVMsQ0FBQSxFQUFHLElBQUEsQ0FBSyxXQUFXLENBQUEsS0FBQSxDQUM5QixDQUFDLENBQUEsQ0FFSSxJQUFBLENBQUssUUFBQSxDQUNkLENBQ0YiLCJmaWxlIjoiaW5kZXgubWpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHFzIGZyb20gJ3FzJztcblxuaW1wb3J0IHsgdHlwZSBSZXF1ZXN0Q29uZmlnIH0gZnJvbSAnQG1pY3Jvc29mdC90ZWFtcy5jb21tb24nO1xuXG5pbXBvcnQgdHlwZSB7IFBhcmFtRGVmcyB9IGZyb20gJy4uL3R5cGVzJztcblxuZXhwb3J0IGZ1bmN0aW9uIGdldEluamVjdGVkVXJsKFxuICB1cmw6IHN0cmluZyxcbiAgcGFyYW1zOiBQYXJhbURlZnMsXG4gIGRhdGE6IFJlY29yZDxzdHJpbmcsIGFueT4sXG4pOiBzdHJpbmcge1xuICBjb25zdCBxdWVyeTogUmVjb3JkPHN0cmluZywgYW55PiA9IHt9O1xuXG4gIGZvciAoY29uc3QgcGFyYW0gb2YgcGFyYW1zLnF1ZXJ5ID8/IFtdKSB7XG4gICAgcXVlcnlbcGFyYW1dID0gZGF0YVtwYXJhbV07XG4gIH1cblxuICBmb3IgKGNvbnN0IHBhcmFtIG9mIHBhcmFtcy5wYXRoID8/IFtdKSB7XG4gICAgdXJsID0gdXJsLnJlcGxhY2UoYHske3BhcmFtfX1gLCBkYXRhW3BhcmFtXSk7XG4gIH1cblxuICByZXR1cm4gYCR7dXJsfSR7cXMuc3RyaW5naWZ5KHF1ZXJ5LCB7IGFkZFF1ZXJ5UHJlZml4OiB0cnVlLCBhcnJheUZvcm1hdDogJ2NvbW1hJyB9KX1gO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0SW5qZWN0ZWRSZXF1ZXN0Q29uZmlnKFxuICBwYXJhbXM6IFBhcmFtRGVmcyxcbiAgZGF0YTogUmVjb3JkPHN0cmluZywgYW55PixcbiAgcmVxdWVzdENvbmZpZz86IFJlcXVlc3RDb25maWcsXG4pOiBSZXF1ZXN0Q29uZmlnIHwgdW5kZWZpbmVkIHtcbiAgY29uc3QgcGFyYW1IZWFkZXJzID0gKHBhcmFtcy5oZWFkZXIgPz8gW10pLnJlZHVjZTxSZWNvcmQ8c3RyaW5nLCBhbnk+PihcbiAgICAoYWdnLCBwYXJhbSkgPT4ge1xuICAgICAgaWYgKGRhdGFbcGFyYW1dKSB7XG4gICAgICAgIGFnZ1twYXJhbV0gPSBkYXRhW3BhcmFtXTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBhZ2c7XG4gICAgfSxcbiAgICB7fSxcbiAgKTtcblxuICByZXR1cm4gT2JqZWN0LmtleXMocGFyYW1IZWFkZXJzKS5sZW5ndGggPT09IDBcbiAgICA/IHJlcXVlc3RDb25maWdcbiAgICA6IHtcbiAgICAgICAgLi4ucmVxdWVzdENvbmZpZyxcbiAgICAgICAgaGVhZGVyczogeyAuLi5yZXF1ZXN0Q29uZmlnPy5oZWFkZXJzLCAuLi5wYXJhbUhlYWRlcnMgfSxcbiAgICAgIH07XG59XG4iLCJpbXBvcnQge1xuICBDbGllbnQgYXMgSHR0cENsaWVudCxcbiAgdHlwZSBDbGllbnRPcHRpb25zIGFzIEh0dHBDbGllbnRPcHRpb25zXG59IGZyb20gJ0BtaWNyb3NvZnQvdGVhbXMuY29tbW9uJztcblxuaW1wb3J0IHR5cGUgeyBDYWxsT3B0aW9ucywgRW5kcG9pbnRSZXF1ZXN0LCBTY2hlbWFWZXJzaW9uIH0gZnJvbSAnLi90eXBlcyc7XG5pbXBvcnQgeyBnZXRJbmplY3RlZFVybCwgZ2V0SW5qZWN0ZWRSZXF1ZXN0Q29uZmlnIH0gZnJvbSAnLi91dGlscy91cmwnO1xuXG5cbi8vIEJ1aWxkLXRpbWUgY29uc3RhbnQgaW5qZWN0ZWQgYnkgdHN1cFxuZGVjbGFyZSBjb25zdCBfX1BBQ0tBR0VfVkVSU0lPTl9fOiBzdHJpbmc7XG5cbmV4cG9ydCB0eXBlIHsgQ2FsbE9wdGlvbnMsIEVuZHBvaW50UmVxdWVzdCwgU2NoZW1hVmVyc2lvbiB9IGZyb20gJy4vdHlwZXMnO1xuXG4vKipcbiAqIEVycm9yIHRocm93biB3aGVuIGEgR3JhcGggQVBJIHJlcXVlc3QgZmFpbHMuXG4gKiBTdXJmYWNlcyB0aGUgcmVzcG9uc2UgYm9keSBmcm9tIHRoZSBHcmFwaCBBUEkgZm9yIGVhc2llciBkZWJ1Z2dpbmcuXG4gKi9cbmV4cG9ydCBjbGFzcyBHcmFwaEVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICAvKiogSFRUUCBzdGF0dXMgY29kZSAqL1xuICByZWFkb25seSBzdGF0dXNDb2RlOiBudW1iZXI7XG4gIC8qKiBHcmFwaCBBUEkgZXJyb3IgY29kZSAoZS5nLiBcIkF1dGhvcml6YXRpb25fUmVxdWVzdERlbmllZFwiKSAqL1xuICByZWFkb25seSBjb2RlPzogc3RyaW5nO1xuICAvKiogVGhlIGZ1bGwgcmVzcG9uc2UgYm9keSBmcm9tIHRoZSBHcmFwaCBBUEkgKi9cbiAgcmVhZG9ubHkgYm9keTogdW5rbm93bjtcbiAgLyoqIFRoZSB1bmRlcmx5aW5nIGVycm9yIHRoYXQgY2F1c2VkIHRoaXMgR3JhcGhFcnJvciAoZS5nLiB0aGUgQXhpb3MgZXJyb3IpICovXG4gIHJlYWRvbmx5IHNvdXJjZT86IHVua25vd247XG5cbiAgY29uc3RydWN0b3Ioc3RhdHVzQ29kZTogbnVtYmVyLCBib2R5OiB1bmtub3duLCBtZXRob2Q6IHN0cmluZywgdXJsOiBzdHJpbmcsIHNvdXJjZT86IHVua25vd24pIHtcbiAgICBjb25zdCBncmFwaEVycm9yID0gYm9keSAmJiB0eXBlb2YgYm9keSA9PT0gJ29iamVjdCcgJiYgJ2Vycm9yJyBpbiBib2R5XG4gICAgICA/IChib2R5IGFzIHsgZXJyb3I6IHsgY29kZT86IHN0cmluZzsgbWVzc2FnZT86IHN0cmluZyB9IH0pLmVycm9yXG4gICAgICA6IHVuZGVmaW5lZDtcblxuICAgIGNvbnN0IG1lc3NhZ2UgPSBncmFwaEVycm9yPy5tZXNzYWdlXG4gICAgICA/IGBHcmFwaCAke21ldGhvZC50b1VwcGVyQ2FzZSgpfSAke3VybH0gZmFpbGVkICgke3N0YXR1c0NvZGV9KTogJHtncmFwaEVycm9yLm1lc3NhZ2V9YFxuICAgICAgOiBgR3JhcGggJHttZXRob2QudG9VcHBlckNhc2UoKX0gJHt1cmx9IGZhaWxlZCB3aXRoIHN0YXR1cyAke3N0YXR1c0NvZGV9YDtcblxuICAgIHN1cGVyKG1lc3NhZ2UpO1xuICAgIHRoaXMubmFtZSA9ICdHcmFwaEVycm9yJztcbiAgICB0aGlzLnN0YXR1c0NvZGUgPSBzdGF0dXNDb2RlO1xuICAgIHRoaXMuY29kZSA9IGdyYXBoRXJyb3I/LmNvZGU7XG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsICdib2R5JywgeyB2YWx1ZTogYm9keSwgZW51bWVyYWJsZTogZmFsc2UsIHdyaXRhYmxlOiB0cnVlLCBjb25maWd1cmFibGU6IHRydWUgfSk7XG4gICAgaWYgKHNvdXJjZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgJ3NvdXJjZScsIHsgdmFsdWU6IHNvdXJjZSwgZW51bWVyYWJsZTogZmFsc2UsIHdyaXRhYmxlOiB0cnVlLCBjb25maWd1cmFibGU6IHRydWUgfSk7XG4gICAgfVxuICB9XG59XG5cbmNvbnN0IGRlZmF1bHRCYXNlVXJsUm9vdCA9ICdodHRwczovL2dyYXBoLm1pY3Jvc29mdC5jb20nO1xuXG50eXBlIE9wdGlvbnMgPSAoSHR0cENsaWVudCB8IEh0dHBDbGllbnRPcHRpb25zKSAmIHtcbiAgLyoqIEdyYXBoIHNlcnZpY2Ugcm9vdC4gQnkgZGVmYXVsdCwgdGhlIGdsb2JhbCBjb21tZXJjaWFsIFVSTCBcImh0dHBzOi8vZ3JhcGgubWljcm9zb2Z0LmNvbVwiIGlzIHVzZWQsXG4gICAqIGJ1dCBjZXJ0YWluIHRlbmFudHMgbWF5IHdpc2ggdG8gb3ZlcnJpZGUgdGhpcyB0byBkaXJlY3QgR3JhcGggQVBJIGNhbGxzIHRvIGEgZGlmZmVyZW50IGNsb3VkIGluc3RhbmNlLlxuICAgKi9cbiAgYmFzZVVybFJvb3Q/OiBzdHJpbmc7XG59O1xuXG4vKiogR3JhcGgtc3BlY2lmaWMgY2xpZW50IG9wdGlvbnMuICovXG50eXBlIEdyYXBoT3B0aW9ucyA9IHtcbiAgLyoqIEdyYXBoIHNlcnZpY2Ugcm9vdCBvdmVycmlkZSBmb3Igcm91dGluZyBHcmFwaCBjYWxscyB0byBzb3ZlcmVpZ24gY2xvdWQuICovXG4gIGJhc2VVcmxSb290Pzogc3RyaW5nO1xufTtcblxuLyoqXG4gKiAvXG4gKiBQcm92aWRlcyBhbiBlbnRyeSBwb2ludCBmb3IgaW52b2tpbmcgTWljcm9zb2Z0IEdyYXBoIEFQSXMuXG4gKi9cbmV4cG9ydCBjbGFzcyBDbGllbnQge1xuICBwcm90ZWN0ZWQgYmFzZVVybFJvb3Q6IHN0cmluZztcbiAgcHJvdGVjdGVkIF9odHRwOiBIdHRwQ2xpZW50O1xuICBwcm90ZWN0ZWQgYmV0YUh0dHA/OiBIdHRwQ2xpZW50O1xuXG4gIC8qKlxuICAgKiBUaGUgdW5kZXJseWluZyBIVFRQIGNsaWVudCwgcHJlLWNvbmZpZ3VyZWQgd2l0aCBHcmFwaCBiYXNlIFVSTCBhbmQgaGVhZGVycy5cbiAgICogVXNlIGZvciByYXcgR3JhcGggQVBJIHJlcXVlc3RzIG5vdCBjb3ZlcmVkIGJ5IGVuZHBvaW50IGZ1bmN0aW9ucy5cbiAgICovXG4gIGdldCBodHRwKCk6IEh0dHBDbGllbnQge1xuICAgIHJldHVybiB0aGlzLl9odHRwO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBHcmFwaCBjbGllbnQuXG4gICAqXG4gICAqIEBwYXJhbSBvcHRpb25zIC0gVGhlIEhUVFAgY2xpZW50IHRvIHVzZTsgYW4gZXhpc3Rpbmcge0BsaW5rIEh0dHBDbGllbnR9IHdpbGwgYmUgY2xvbmVkLFxuICAgKiBvciBhbiB7QGxpbmsgSHR0cENsaWVudE9wdGlvbnN9IGJhZyB3aWxsIGJlIHVzZWQgdG8gYnVpbGQgYSBuZXcgb25lLlxuICAgKiBIVFRQLWxldmVsIHNldHRpbmdzIGxpa2UgaGVhZGVycywgaW50ZXJjZXB0b3JzLCBhbmQgdGltZW91dHMgYmVsb25nIGhlcmUuXG4gICAqIEBwYXJhbSBncmFwaE9wdGlvbnMgLSBHcmFwaC1zcGVjaWZpYyBvcHRpb25zLiBUYWtlcyBwcmVjZWRlbmNlIG92ZXIgYG9wdGlvbnMuYmFzZVVybFJvb3RgXG4gICAqIHdoZW4gYm90aCBhcmUgc2V0LlxuICAgKlxuICAgKiBAZXhhbXBsZVxuICAgKiAvLyBQdWJsaWMgY2xvdWQgKGRlZmF1bHQpXG4gICAqIG5ldyBDbGllbnQoeyB0b2tlbiB9KTtcbiAgICpcbiAgICogQGV4YW1wbGVcbiAgICogLy8gU292ZXJlaWduIGNsb3VkIChHQ0NIKVxuICAgKiBuZXcgQ2xpZW50KGh0dHBDbGllbnQsIHsgYmFzZVVybFJvb3Q6ICdodHRwczovL2dyYXBoLm1pY3Jvc29mdC51cycgfSk7XG4gICAqL1xuICBjb25zdHJ1Y3RvcihvcHRpb25zPzogT3B0aW9ucywgZ3JhcGhPcHRpb25zPzogR3JhcGhPcHRpb25zKSB7XG4gICAgdGhpcy5iYXNlVXJsUm9vdCA9IGdyYXBoT3B0aW9ucz8uYmFzZVVybFJvb3QgPz8gb3B0aW9ucz8uYmFzZVVybFJvb3QgPz8gZGVmYXVsdEJhc2VVcmxSb290O1xuICAgIGlmICghb3B0aW9ucykge1xuICAgICAgdGhpcy5faHR0cCA9IG5ldyBIdHRwQ2xpZW50KHtcbiAgICAgICAgYmFzZVVybDogYCR7dGhpcy5iYXNlVXJsUm9vdH0vdjEuMGAsXG4gICAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgICAgICdVc2VyLUFnZW50JzogYHRlYW1zLnRzW2dyYXBoXS8ke19fUEFDS0FHRV9WRVJTSU9OX199YCxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgIH0gZWxzZSBpZiAoJ3JlcXVlc3QnIGluIG9wdGlvbnMpIHtcbiAgICAgIHRoaXMuX2h0dHAgPSBvcHRpb25zLmNsb25lKHtcbiAgICAgICAgYmFzZVVybDogYCR7dGhpcy5iYXNlVXJsUm9vdH0vdjEuMGAsXG4gICAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgICAgICdVc2VyLUFnZW50JzogYHRlYW1zLnRzW2dyYXBoXS8ke19fUEFDS0FHRV9WRVJTSU9OX199YCxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9odHRwID0gbmV3IEh0dHBDbGllbnQoe1xuICAgICAgICAuLi5vcHRpb25zLFxuICAgICAgICBiYXNlVXJsOiBgJHt0aGlzLmJhc2VVcmxSb290fS92MS4wYCxcbiAgICAgICAgaGVhZGVyczoge1xuICAgICAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicsXG4gICAgICAgICAgJ1VzZXItQWdlbnQnOiBgdGVhbXMudHNbZ3JhcGhdLyR7X19QQUNLQUdFX1ZFUlNJT05fX31gLFxuICAgICAgICAgIC4uLm9wdGlvbnMuaGVhZGVycyxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBFeGVjdXRlcyBhIEdyYXBoIEFQSSBlbmRwb2ludCBmdW5jdGlvbiB3aXRoIG9wdGlvbmFsIEhUVFAgY29uZmlndXJhdGlvblxuICAgKlxuICAgKiBAcGFyYW0gZnVuYyAtIFRoZSBlbmRwb2ludCBmdW5jdGlvbiB0byBleGVjdXRlXG4gICAqIEBwYXJhbSBhcmdzIC0gQXJndW1lbnRzIGZvciB0aGUgZW5kcG9pbnQgZnVuY3Rpb24sIG9wdGlvbmFsbHkgZm9sbG93ZWQgYnkge0BsaW5rIENhbGxDb25maWd9XG4gICAqIEByZXR1cm5zIFByb21pc2UgcmVzb2x2aW5nIHRvIHRoZSBlbmRwb2ludCdzIHJlc3BvbnNlIGRhdGFcbiAgICpcbiAgICogQGV4YW1wbGVcbiAgICogYGBgdHlwZXNjcmlwdFxuICAgKiAvLyBTaW1wbGUgY2FsbFxuICAgKiBjb25zdCB1c2VyID0gYXdhaXQgY2xpZW50LmNhbGwoZW5kcG9pbnRzLnVzZXJzLmdldCwgJ3VzZXItaWQnKTtcbiAgICpcbiAgICogLy8gV2l0aCBIVFRQIGNvbmZpZ3VyYXRpb25cbiAgICogY29uc3QgdXNlciA9IGF3YWl0IGNsaWVudC5jYWxsKGVuZHBvaW50cy51c2Vycy5nZXQsICd1c2VyLWlkJywge1xuICAgKiAgIHJlcXVlc3RDb25maWc6IHtcbiAgICogICAgIHRpbWVvdXQ6IDUwMDBcbiAgICogICB9XG4gICAqIH0pO1xuICAgKiBgYGBcbiAgICovXG4gIGFzeW5jIGNhbGw8XG4gICAgRiBleHRlbmRzICguLi5hcmdzOiBhbnlbXSkgPT4gRW5kcG9pbnRSZXF1ZXN0PGFueT4sXG4gICAgUiA9IFJldHVyblR5cGU8Rj4gZXh0ZW5kcyBFbmRwb2ludFJlcXVlc3Q8aW5mZXIgVD4gPyBUIDogbmV2ZXIsXG4gID4oZnVuYzogRiwgLi4uYXJnczogWy4uLlBhcmFtZXRlcnM8Rj4sIENhbGxPcHRpb25zP10pOiBQcm9taXNlPFI+IHtcbiAgICAvLyBDaGVjayBpZiBsYXN0IGFyZyBpcyBhIGNvbmZpZyBvYmplY3RcbiAgICBjb25zdCBsYXN0QXJnID0gYXJnc1thcmdzLmxlbmd0aCAtIDFdO1xuICAgIGNvbnN0IGhhc09wdGlvbnMgPVxuICAgICAgYXJncy5sZW5ndGggPiBmdW5jLmxlbmd0aCAmJlxuICAgICAgbGFzdEFyZyAmJlxuICAgICAgdHlwZW9mIGxhc3RBcmcgPT09ICdvYmplY3QnICYmXG4gICAgICAncmVxdWVzdENvbmZpZycgaW4gbGFzdEFyZztcblxuICAgIC8vIEV4dHJhY3QgZnVuY3Rpb24gYXJndW1lbnRzXG4gICAgY29uc3QgZnVuY0FyZ3MgPSBoYXNPcHRpb25zID8gYXJncy5zbGljZSgwLCAtMSkgOiBhcmdzO1xuICAgIGNvbnN0IGNhbGxPcHRpb25zID0gaGFzT3B0aW9ucyA/IGxhc3RBcmcgYXMgQ2FsbE9wdGlvbnMgOiB1bmRlZmluZWQ7XG5cbiAgICBjb25zdCB7XG4gICAgICB2ZXIgPSAndjEuMCcsXG4gICAgICBtZXRob2QsXG4gICAgICBwYXRoLFxuICAgICAgcGFyYW1EZWZzID0ge30sXG4gICAgICBwYXJhbXMgPSB7fSxcbiAgICAgIGJvZHksXG4gICAgfSA9IGZ1bmMoLi4uKGZ1bmNBcmdzIGFzIGFueVtdKSk7XG4gICAgY29uc3QgdXJsID0gZ2V0SW5qZWN0ZWRVcmwocGF0aCwgcGFyYW1EZWZzLCBwYXJhbXMpO1xuICAgIGNvbnN0IHJlcXVlc3RDb25maWcgPSBnZXRJbmplY3RlZFJlcXVlc3RDb25maWcocGFyYW1EZWZzLCBwYXJhbXMsIGNhbGxPcHRpb25zPy5yZXF1ZXN0Q29uZmlnKTtcbiAgICBjb25zdCBodHRwQ2xpZW50ID0gdGhpcy5nZXRIdHRwQ2xpZW50KHZlcik7XG5cbiAgICB0cnkge1xuICAgICAgc3dpdGNoIChtZXRob2QpIHtcbiAgICAgICAgY2FzZSAnZGVsZXRlJzpcbiAgICAgICAgY2FzZSAnZ2V0JzpcbiAgICAgICAgICByZXR1cm4gKGF3YWl0IGh0dHBDbGllbnRbbWV0aG9kXSh1cmwsIHJlcXVlc3RDb25maWcpKS5kYXRhIGFzIFI7XG4gICAgICAgIGNhc2UgJ3BhdGNoJzpcbiAgICAgICAgY2FzZSAncG9zdCc6XG4gICAgICAgIGNhc2UgJ3B1dCc6XG4gICAgICAgICAgcmV0dXJuIChhd2FpdCBodHRwQ2xpZW50W21ldGhvZF0odXJsLCBib2R5LCByZXF1ZXN0Q29uZmlnKSkuZGF0YSBhcyBSO1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgVW5zdXBwb3J0ZWQgSFRUUCBtZXRob2Q6ICR7bWV0aG9kfWApO1xuICAgICAgfVxuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgaWYgKGVyciAmJiB0eXBlb2YgZXJyID09PSAnb2JqZWN0JyAmJiAnaXNBeGlvc0Vycm9yJyBpbiBlcnIgJiYgJ3Jlc3BvbnNlJyBpbiBlcnIgJiYgZXJyLnJlc3BvbnNlKSB7XG4gICAgICAgIGNvbnN0IHsgcmVzcG9uc2UgfSA9IGVyciBhcyB7IHJlc3BvbnNlOiB7IHN0YXR1czogbnVtYmVyOyBkYXRhOiB1bmtub3duIH0gfTtcbiAgICAgICAgdGhyb3cgbmV3IEdyYXBoRXJyb3IocmVzcG9uc2Uuc3RhdHVzLCByZXNwb25zZS5kYXRhLCBtZXRob2QsIHVybCwgZXJyKTtcbiAgICAgIH1cbiAgICAgIHRocm93IGVycjtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdldEh0dHBDbGllbnQoc2NoZW1hVmVyc2lvbjogU2NoZW1hVmVyc2lvbik6IEh0dHBDbGllbnQge1xuICAgIGlmIChzY2hlbWFWZXJzaW9uID09PSAndjEuMCcpIHtcbiAgICAgIHJldHVybiB0aGlzLl9odHRwO1xuICAgIH1cblxuICAgIHRoaXMuYmV0YUh0dHAgPVxuICAgICAgdGhpcy5iZXRhSHR0cCA/P1xuICAgICAgdGhpcy5faHR0cC5jbG9uZSh7XG4gICAgICAgIGJhc2VVcmw6IGAke3RoaXMuYmFzZVVybFJvb3R9L2JldGFgLFxuICAgICAgfSk7XG5cbiAgICByZXR1cm4gdGhpcy5iZXRhSHR0cDtcbiAgfVxufVxuIl19
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@microsoft/teams.graph",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.12",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"module": "./dist/index.mjs",
|
|
@@ -34,11 +34,11 @@
|
|
|
34
34
|
"test": "npx jest"
|
|
35
35
|
},
|
|
36
36
|
"dependencies": {
|
|
37
|
-
"@microsoft/teams.common": "2.0.
|
|
38
|
-
"qs": "^6.
|
|
37
|
+
"@microsoft/teams.common": "2.0.12",
|
|
38
|
+
"qs": "^6.15.2"
|
|
39
39
|
},
|
|
40
40
|
"devDependencies": {
|
|
41
|
-
"@microsoft/teams.config": "2.0.
|
|
41
|
+
"@microsoft/teams.config": "2.0.12",
|
|
42
42
|
"@types/jest": "^29.5.12",
|
|
43
43
|
"@types/node": "^22.0.2",
|
|
44
44
|
"@types/qs": "^6.9.15",
|