From dfdf87c3d1525e86fc67ef67139c8dd36a0bab85 Mon Sep 17 00:00:00 2001 From: Michael Black Date: Tue, 11 Aug 2026 12:19:56 -0500 Subject: [PATCH] Add 10-minute video upload beta feature --- package.json | 2 +- pnpm-lock.yaml | 50 ++++++++++++++++----------------- src/analytics/features/index.ts | 16 +++++++++++ 3 files changed, 42 insertions(+), 26 deletions(-) diff --git a/package.json b/package.json index 7b15fa8c77..6e57112b56 100644 --- a/package.json +++ b/package.json @@ -96,7 +96,7 @@ "prettier": "prettier --check ." }, "dependencies": { - "@atproto/api": "0.20.37", + "@atproto/api": "0.20.39", "@atproto/common-web": "0.5.7", "@atproto/syntax": "0.7.2", "@bitdrift/react-native": "^0.6.8", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 1479226ba9..6aa9e61496 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -243,8 +243,8 @@ importers: .: dependencies: '@atproto/api': - specifier: 0.20.37 - version: 0.20.37 + specifier: 0.20.39 + version: 0.20.39 '@atproto/common-web': specifier: 0.5.7 version: 0.5.7 @@ -875,16 +875,16 @@ packages: graphql: optional: true - '@atproto/api@0.20.37': - resolution: {integrity: sha512-TEt8oKMbuC+1GvqyLKDBLqmptnk1mh52FdHPQEomlPIWxh88YcNnk0g0iKNVBevaeeLtWZF1a7Am/t/q255u5Q==} + '@atproto/api@0.20.39': + resolution: {integrity: sha512-FRjwAmYe0kKlWsAe8IvfbmAAKyjpXnl2NV67vWEEjux0FwIEIG6JbOo6YkD5tjK2xjL0Daa429R0E8phmxRrrQ==} engines: {node: '>=22'} '@atproto/common-web@0.5.7': resolution: {integrity: sha512-lvU8lFO5UByacsl3AReXkpTWjcPBS8mBqt40B45HwCt+s58a+xT/YI/+AUpmzSmsPVZCpeCmP6wgsOSC8RILXg==} engines: {node: '>=22'} - '@atproto/common-web@0.5.8': - resolution: {integrity: sha512-GiYY2Jgbg1aWe9QGT3TswC/wZNicipBDz0nFo4FrP6XqENEJJRxGKAf/zjvqbesfIQFhHXi1VbSFY7GStB8v8w==} + '@atproto/common-web@0.5.9': + resolution: {integrity: sha512-2c5C6YV8352JJz9Z5fNfcsstllaKGAb3cQW9aO7unMAGh/FzTGFq+xOwNMW2lTeagO6z530uxYm8AiSRM6O+DQ==} engines: {node: '>=22'} '@atproto/lex-data@0.1.6': @@ -903,20 +903,20 @@ packages: resolution: {integrity: sha512-mvrAd0lbyuecIHjyld8QN6MN6CBf4j0GCxLzegsvLh0SvDf+GbYWklkcQqmITL44yFQOwmA/QNIQj0Uvh7+R/g==} engines: {node: '>=22'} - '@atproto/lexicon@0.7.10': - resolution: {integrity: sha512-HH/3d3z5Qt0JoJ9iOuLP/YT++6lb5wWMQsvgQ2TGfgkbuzDQ6AX6X1H5uJ9luPci4/LaADfpwLZfeqyy/Hjfaw==} + '@atproto/lexicon@0.7.11': + resolution: {integrity: sha512-ukCZMCWmiu7fAlssBbLs+IMaf2K2R9mADaTKz2jEeC/xeZ3jT77Ka0S2G+ELBB+Dc9ijBACU0iPMQLhquOkuzQ==} engines: {node: '>=22'} '@atproto/syntax@0.7.2': resolution: {integrity: sha512-tZ1Tr0R9pK4bI4Zs69t29cjMlCFQvRNBeNkqJC5pGeNuCt64D0eoF7s/AlqeVmYppClmQ0xJquggGgsMDP6j7w==} engines: {node: '>=22'} - '@atproto/syntax@0.7.3': - resolution: {integrity: sha512-7LU8Ra79L5wCqVAZZst2352VMMwkU4KNagVMm6pnURrY/uS7+HrJl3XCuA4V2Gy2dEpkt1r6DBxlsP43/VjDBw==} + '@atproto/syntax@0.7.4': + resolution: {integrity: sha512-EHsEHtasH/DGPljBYecVDjweGMQ5eTu6Ns0GZ5z0qdqpOI8ipBvldWnMIxWkA+5HfZ9Dsu4V1MX0WP7wgL8cuA==} engines: {node: '>=22'} - '@atproto/xrpc@0.8.9': - resolution: {integrity: sha512-3jRiAuHCqYFoT8Nv25xFRmgrfmoo84yBnB5PfVP95JoRP+szIkwHS6mq72ZETYbWmLA1tNyR5QVEHrhHZ1LQhw==} + '@atproto/xrpc@0.8.10': + resolution: {integrity: sha512-++FNpTVF61fF8+3Kk1RYtdTO7xyUTdIc/Cmfk2CMn29Qw9tZD8bmW+M5db1Z0okYWFWK8Wqu7bc9VmF8tUB8Jg==} engines: {node: '>=22'} '@babel/code-frame@7.10.4': @@ -9416,12 +9416,12 @@ snapshots: '@0no-co/graphql.web@1.2.0': {} - '@atproto/api@0.20.37': + '@atproto/api@0.20.39': dependencies: - '@atproto/common-web': 0.5.8 - '@atproto/lexicon': 0.7.10 - '@atproto/syntax': 0.7.3 - '@atproto/xrpc': 0.8.9 + '@atproto/common-web': 0.5.9 + '@atproto/lexicon': 0.7.11 + '@atproto/syntax': 0.7.4 + '@atproto/xrpc': 0.8.10 await-lock: 3.0.0 multiformats: 13.4.2 tlds: 1.261.0 @@ -9434,11 +9434,11 @@ snapshots: '@atproto/syntax': 0.7.2 zod: 3.25.76 - '@atproto/common-web@0.5.8': + '@atproto/common-web@0.5.9': dependencies: '@atproto/lex-data': 0.1.7 '@atproto/lex-json': 0.1.6 - '@atproto/syntax': 0.7.3 + '@atproto/syntax': 0.7.4 zod: 3.25.76 '@atproto/lex-data@0.1.6': @@ -9463,10 +9463,10 @@ snapshots: '@atproto/lex-data': 0.1.7 tslib: 2.8.1 - '@atproto/lexicon@0.7.10': + '@atproto/lexicon@0.7.11': dependencies: - '@atproto/common-web': 0.5.8 - '@atproto/syntax': 0.7.3 + '@atproto/common-web': 0.5.9 + '@atproto/syntax': 0.7.4 multiformats: 13.4.2 zod: 3.25.76 @@ -9475,14 +9475,14 @@ snapshots: iso-datestring-validator: 2.2.2 tslib: 2.8.1 - '@atproto/syntax@0.7.3': + '@atproto/syntax@0.7.4': dependencies: iso-datestring-validator: 2.2.2 tslib: 2.8.1 - '@atproto/xrpc@0.8.9': + '@atproto/xrpc@0.8.10': dependencies: - '@atproto/lexicon': 0.7.10 + '@atproto/lexicon': 0.7.11 zod: 3.25.76 '@babel/code-frame@7.10.4': diff --git a/src/analytics/features/index.ts b/src/analytics/features/index.ts index 6cbafeaa22..6192d45942 100644 --- a/src/analytics/features/index.ts +++ b/src/analytics/features/index.ts @@ -77,6 +77,22 @@ export function getFeatures() { export function getFeatureDescription(feature: Features, i18n: I18n) { switch (feature) { + case Features.VideoAllow10MinuteEnable: + return { + key: feature, + name: i18n._( + msg({ + message: '10-minute video uploads', + comment: 'Name for a feature flag (10-minute video uploads)', + }), + ), + description: i18n._( + msg({ + message: 'Enable 10-minute video uploads.', + comment: 'Description of a feature flag (10-minute video uploads)', + }), + ), + } case Features.CanonicalPostNumberingEnable: return { key: feature,