• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

microsoft / botbuilder-js / 3698619628

pending completion
3698619628

Pull #4389

github

GitHub
Merge 33a6b02b4 into e5f7e3abe
Pull Request #4389: chore(deps): bump express from 4.17.1 to 4.17.3

9686 of 12680 branches covered (76.39%)

Branch coverage included in aggregate %.

19968 of 22357 relevant lines covered (89.31%)

3197.88 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

4.76
/libraries/botbuilder-azure-blobs/src/sanitizeBlobKey.ts
1
// Copyright (c) Microsoft Corporation.
2
// Licensed under the MIT License.
3

4
import { BlobsTranscriptStoreOptions } from './blobsTranscriptStore';
5

6
/**
7
 * Ensures that `key` is a properly sanitized Azure Blob Storage key. It should be URI encoded,
8
 * no longer than 1024 characters, and contain no more than 254 slash ("/") chars.
9
 *
10
 * @param {string} key string blob key to sanitize
11
 * @param {BlobsTranscriptStoreOptions} options Optional settings for BlobsTranscriptStore
12
 * @returns {string} sanitized blob key
13
 */
14
export function sanitizeBlobKey(key: string, options?: BlobsTranscriptStoreOptions): string {
1✔
15
    if (!key || !key.length) {
×
16
        throw new Error('Please provide a non-empty key');
×
17
    }
18

19
    const sanitized = key.split('/').reduce((acc, part, idx) => (part ? [acc, part].join(idx < 255 ? '/' : '') : acc));
×
20

21
    // Options settings to decode key in order to support previous Blob
22
    if (options?.decodeTranscriptKey) {
×
23
        return decodeURIComponent(sanitized).substr(0, 1024);
×
24
    }
25
    return encodeURIComponent(sanitized).substr(0, 1024);
×
26
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc