diff --git a/.github/workflows/deploy.yaml b/.github/workflows/deploy.yaml index 331df46..c5276fa 100644 --- a/.github/workflows/deploy.yaml +++ b/.github/workflows/deploy.yaml @@ -13,9 +13,6 @@ jobs: deploy: runs-on: ubuntu-latest name: Publishes this SST stack - defaults: - run: - working-directory: ./old steps: - uses: actions/checkout@v3 - id: pnpm-install diff --git a/old/.gitignore b/.gitignore similarity index 100% rename from old/.gitignore rename to .gitignore diff --git a/README.md b/README.md new file mode 100644 index 0000000..e8b7b05 --- /dev/null +++ b/README.md @@ -0,0 +1,28 @@ +# A-List + +![A-List](https://assets.mattwyskiel.com/a-list/podcast-image.jpeg) + +A home website for my DJ-style mixes. + +## Background + +I grew up with a love for music. My parents raised me on James Taylor, John Mayer, Donald Fagen, and Van Halen. For many years, at least since college, I've been building my skills on the side as a DJ and mixer, most prominently putting them to use as host of my college radio show King Matt's A-List. + +Post-college, I started creating mixes again, and I began hosting them on my Asset server and sending links to my friends. As I did it more and more, I realized they would want an easier experience listening, and that I too would want an easier way to access my mixes when I want to listen to them. + +See a need, fill a need! + +## Features + +- Centralized database of mixes I've made since 2021 +- Web player for easy streaming of audio +- Hostable podcast feed for easy import into podcast apps + - https://api.mattwyskiel.com/a-list/podcast-feed :grin: + +## Stack + +- **Frontend:** [Next.js](https://nextjs.org/) +- **Backend:** [AWS Lambda](https://aws.amazon.com/lambda/) (Node.js) +- **Database:** [Amazon DynamoDB](https://aws.amazon.com/dynamodb/) +- **File Hosting:** [Amazon S3](https://aws.amazon.com/s3/) (defined externally) +- **Infrastructure:** [SST v2](https://v2.sst.dev/) (based on [AWS CDK](https://aws.amazon.com/cdk/)) diff --git a/apple-apps/.DS_Store b/apple-apps/.DS_Store deleted file mode 100644 index 30b56a0..0000000 Binary files a/apple-apps/.DS_Store and /dev/null differ diff --git a/apple-apps/A-List.xcodeproj/project.pbxproj b/apple-apps/A-List.xcodeproj/project.pbxproj deleted file mode 100644 index 2b6076d..0000000 --- a/apple-apps/A-List.xcodeproj/project.pbxproj +++ /dev/null @@ -1,365 +0,0 @@ -// !$*UTF8*$! -{ - archiveVersion = 1; - classes = { - }; - objectVersion = 60; - objects = { - -/* Begin PBXBuildFile section */ - A47090082C3111080034C32A /* AListApp.swift in Sources */ = {isa = PBXBuildFile; fileRef = A47090072C3111080034C32A /* AListApp.swift */; }; - A470900A2C3111080034C32A /* ContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = A47090092C3111080034C32A /* ContentView.swift */; }; - A470900C2C3111090034C32A /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = A470900B2C3111090034C32A /* Assets.xcassets */; }; - A470900F2C3111090034C32A /* Preview Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = A470900E2C3111090034C32A /* Preview Assets.xcassets */; }; - A47090142C3117E30034C32A /* DetailView.swift in Sources */ = {isa = PBXBuildFile; fileRef = A47090132C3117E30034C32A /* DetailView.swift */; }; - A47090172C3118180034C32A /* MixItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = A47090162C3118180034C32A /* MixItem.swift */; }; -/* End PBXBuildFile section */ - -/* Begin PBXFileReference section */ - A47090052C3111080034C32A /* A-List.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "A-List.app"; sourceTree = BUILT_PRODUCTS_DIR; }; - A47090072C3111080034C32A /* AListApp.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AListApp.swift; sourceTree = ""; }; - A47090092C3111080034C32A /* ContentView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContentView.swift; sourceTree = ""; }; - A470900B2C3111090034C32A /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; - A470900E2C3111090034C32A /* Preview Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = "Preview Assets.xcassets"; sourceTree = ""; }; - A47090132C3117E30034C32A /* DetailView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DetailView.swift; sourceTree = ""; }; - A47090162C3118180034C32A /* MixItem.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MixItem.swift; sourceTree = ""; }; -/* End PBXFileReference section */ - -/* Begin PBXFrameworksBuildPhase section */ - A47090022C3111080034C32A /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXFrameworksBuildPhase section */ - -/* Begin PBXGroup section */ - A4708FC92C31105B0034C32A = { - isa = PBXGroup; - children = ( - A47090062C3111080034C32A /* A-List */, - A4708FD52C31109E0034C32A /* Products */, - ); - sourceTree = ""; - }; - A4708FD52C31109E0034C32A /* Products */ = { - isa = PBXGroup; - children = ( - A47090052C3111080034C32A /* A-List.app */, - ); - name = Products; - sourceTree = ""; - }; - A47090062C3111080034C32A /* A-List */ = { - isa = PBXGroup; - children = ( - A47090152C31180A0034C32A /* Model */, - A47090072C3111080034C32A /* AListApp.swift */, - A47090092C3111080034C32A /* ContentView.swift */, - A470900B2C3111090034C32A /* Assets.xcassets */, - A470900D2C3111090034C32A /* Preview Content */, - A47090132C3117E30034C32A /* DetailView.swift */, - ); - path = "A-List"; - sourceTree = ""; - }; - A470900D2C3111090034C32A /* Preview Content */ = { - isa = PBXGroup; - children = ( - A470900E2C3111090034C32A /* Preview Assets.xcassets */, - ); - path = "Preview Content"; - sourceTree = ""; - }; - A47090152C31180A0034C32A /* Model */ = { - isa = PBXGroup; - children = ( - A47090162C3118180034C32A /* MixItem.swift */, - ); - path = Model; - sourceTree = ""; - }; -/* End PBXGroup section */ - -/* Begin PBXNativeTarget section */ - A47090042C3111080034C32A /* A-List */ = { - isa = PBXNativeTarget; - buildConfigurationList = A47090102C3111090034C32A /* Build configuration list for PBXNativeTarget "A-List" */; - buildPhases = ( - A47090012C3111080034C32A /* Sources */, - A47090022C3111080034C32A /* Frameworks */, - A47090032C3111080034C32A /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = "A-List"; - productName = "A-List"; - productReference = A47090052C3111080034C32A /* A-List.app */; - productType = "com.apple.product-type.application"; - }; -/* End PBXNativeTarget section */ - -/* Begin PBXProject section */ - A4708FCA2C31105B0034C32A /* Project object */ = { - isa = PBXProject; - attributes = { - BuildIndependentTargetsInParallel = 1; - LastSwiftUpdateCheck = 1600; - LastUpgradeCheck = 1600; - TargetAttributes = { - A47090042C3111080034C32A = { - CreatedOnToolsVersion = 16.0; - }; - }; - }; - buildConfigurationList = A4708FCD2C31105B0034C32A /* Build configuration list for PBXProject "A-List" */; - compatibilityVersion = "Xcode 15.0"; - developmentRegion = en; - hasScannedForEncodings = 0; - knownRegions = ( - en, - Base, - ); - mainGroup = A4708FC92C31105B0034C32A; - productRefGroup = A4708FD52C31109E0034C32A /* Products */; - projectDirPath = ""; - projectRoot = ""; - targets = ( - A47090042C3111080034C32A /* A-List */, - ); - }; -/* End PBXProject section */ - -/* Begin PBXResourcesBuildPhase section */ - A47090032C3111080034C32A /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - A470900F2C3111090034C32A /* Preview Assets.xcassets in Resources */, - A470900C2C3111090034C32A /* Assets.xcassets in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXResourcesBuildPhase section */ - -/* Begin PBXSourcesBuildPhase section */ - A47090012C3111080034C32A /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - A470900A2C3111080034C32A /* ContentView.swift in Sources */, - A47090172C3118180034C32A /* MixItem.swift in Sources */, - A47090142C3117E30034C32A /* DetailView.swift in Sources */, - A47090082C3111080034C32A /* AListApp.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXSourcesBuildPhase section */ - -/* Begin XCBuildConfiguration section */ - A4708FCE2C31105B0034C32A /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - }; - name = Debug; - }; - A4708FCF2C31105B0034C32A /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - }; - name = Release; - }; - A47090112C3111090034C32A /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; - ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++20"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_STYLE = Automatic; - COPY_PHASE_STRIP = NO; - CURRENT_PROJECT_VERSION = 1; - DEBUG_INFORMATION_FORMAT = dwarf; - DEVELOPMENT_ASSET_PATHS = "\"A-List/Preview Content\""; - DEVELOPMENT_TEAM = 5XPCB5TC44; - ENABLE_PREVIEWS = YES; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; - ENABLE_USER_SCRIPT_SANDBOXING = YES; - GCC_C_LANGUAGE_STANDARD = gnu17; - GCC_DYNAMIC_NO_PIC = NO; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - GENERATE_INFOPLIST_FILE = YES; - INFOPLIST_KEY_UIApplicationSceneManifest_Generation = YES; - INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES; - INFOPLIST_KEY_UILaunchScreen_Generation = YES; - INFOPLIST_KEY_UISupportedInterfaceOrientations_iPad = "UIInterfaceOrientationPortrait UIInterfaceOrientationPortraitUpsideDown UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight"; - INFOPLIST_KEY_UISupportedInterfaceOrientations_iPhone = "UIInterfaceOrientationPortrait UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight"; - IPHONEOS_DEPLOYMENT_TARGET = 18.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - LOCALIZATION_PREFERS_STRING_CATALOGS = YES; - MARKETING_VERSION = 1.0; - MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; - MTL_FAST_MATH = YES; - ONLY_ACTIVE_ARCH = YES; - PRODUCT_BUNDLE_IDENTIFIER = "com.mattwyskiel.A-List"; - PRODUCT_NAME = "$(TARGET_NAME)"; - SDKROOT = iphoneos; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "DEBUG $(inherited)"; - SWIFT_EMIT_LOC_STRINGS = YES; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = Debug; - }; - A47090122C3111090034C32A /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; - ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++20"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_STYLE = Automatic; - COPY_PHASE_STRIP = NO; - CURRENT_PROJECT_VERSION = 1; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - DEVELOPMENT_ASSET_PATHS = "\"A-List/Preview Content\""; - DEVELOPMENT_TEAM = 5XPCB5TC44; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_PREVIEWS = YES; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_USER_SCRIPT_SANDBOXING = YES; - GCC_C_LANGUAGE_STANDARD = gnu17; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - GENERATE_INFOPLIST_FILE = YES; - INFOPLIST_KEY_UIApplicationSceneManifest_Generation = YES; - INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES; - INFOPLIST_KEY_UILaunchScreen_Generation = YES; - INFOPLIST_KEY_UISupportedInterfaceOrientations_iPad = "UIInterfaceOrientationPortrait UIInterfaceOrientationPortraitUpsideDown UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight"; - INFOPLIST_KEY_UISupportedInterfaceOrientations_iPhone = "UIInterfaceOrientationPortrait UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight"; - IPHONEOS_DEPLOYMENT_TARGET = 18.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - LOCALIZATION_PREFERS_STRING_CATALOGS = YES; - MARKETING_VERSION = 1.0; - MTL_ENABLE_DEBUG_INFO = NO; - MTL_FAST_MATH = YES; - PRODUCT_BUNDLE_IDENTIFIER = "com.mattwyskiel.A-List"; - PRODUCT_NAME = "$(TARGET_NAME)"; - SDKROOT = iphoneos; - SWIFT_COMPILATION_MODE = wholemodule; - SWIFT_EMIT_LOC_STRINGS = YES; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; - }; - name = Release; - }; -/* End XCBuildConfiguration section */ - -/* Begin XCConfigurationList section */ - A4708FCD2C31105B0034C32A /* Build configuration list for PBXProject "A-List" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - A4708FCE2C31105B0034C32A /* Debug */, - A4708FCF2C31105B0034C32A /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - A47090102C3111090034C32A /* Build configuration list for PBXNativeTarget "A-List" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - A47090112C3111090034C32A /* Debug */, - A47090122C3111090034C32A /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; -/* End XCConfigurationList section */ - }; - rootObject = A4708FCA2C31105B0034C32A /* Project object */; -} diff --git a/apple-apps/A-List.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/apple-apps/A-List.xcodeproj/project.xcworkspace/contents.xcworkspacedata deleted file mode 100644 index 919434a..0000000 --- a/apple-apps/A-List.xcodeproj/project.xcworkspace/contents.xcworkspacedata +++ /dev/null @@ -1,7 +0,0 @@ - - - - - diff --git a/apple-apps/A-List.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/apple-apps/A-List.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist deleted file mode 100644 index 18d9810..0000000 --- a/apple-apps/A-List.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +++ /dev/null @@ -1,8 +0,0 @@ - - - - - IDEDidComputeMac32BitWarning - - - diff --git a/apple-apps/A-List.xcodeproj/project.xcworkspace/xcuserdata/matthewwyskiel.xcuserdatad/UserInterfaceState.xcuserstate b/apple-apps/A-List.xcodeproj/project.xcworkspace/xcuserdata/matthewwyskiel.xcuserdatad/UserInterfaceState.xcuserstate deleted file mode 100644 index b557dba..0000000 Binary files a/apple-apps/A-List.xcodeproj/project.xcworkspace/xcuserdata/matthewwyskiel.xcuserdatad/UserInterfaceState.xcuserstate and /dev/null differ diff --git a/apple-apps/A-List.xcodeproj/xcuserdata/matthewwyskiel.xcuserdatad/xcschemes/xcschememanagement.plist b/apple-apps/A-List.xcodeproj/xcuserdata/matthewwyskiel.xcuserdatad/xcschemes/xcschememanagement.plist deleted file mode 100644 index 78250a0..0000000 --- a/apple-apps/A-List.xcodeproj/xcuserdata/matthewwyskiel.xcuserdatad/xcschemes/xcschememanagement.plist +++ /dev/null @@ -1,14 +0,0 @@ - - - - - SchemeUserState - - A-List.xcscheme_^#shared#^_ - - orderHint - 0 - - - - diff --git a/apple-apps/A-List/AListApp.swift b/apple-apps/A-List/AListApp.swift deleted file mode 100644 index 940a465..0000000 --- a/apple-apps/A-List/AListApp.swift +++ /dev/null @@ -1,17 +0,0 @@ -// -// AListApp.swift -// A-List -// -// Created by Matt Wyskiel on 6/30/24. -// - -import SwiftUI - -@main -struct A_ListApp: App { - var body: some Scene { - WindowGroup { - ContentView() - } - } -} diff --git a/apple-apps/A-List/Assets.xcassets/AccentColor.colorset/Contents.json b/apple-apps/A-List/Assets.xcassets/AccentColor.colorset/Contents.json deleted file mode 100644 index eb87897..0000000 --- a/apple-apps/A-List/Assets.xcassets/AccentColor.colorset/Contents.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "colors" : [ - { - "idiom" : "universal" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/apple-apps/A-List/Assets.xcassets/AppIcon.appiconset/Contents.json b/apple-apps/A-List/Assets.xcassets/AppIcon.appiconset/Contents.json deleted file mode 100644 index 2305880..0000000 --- a/apple-apps/A-List/Assets.xcassets/AppIcon.appiconset/Contents.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "images" : [ - { - "idiom" : "universal", - "platform" : "ios", - "size" : "1024x1024" - }, - { - "appearances" : [ - { - "appearance" : "luminosity", - "value" : "dark" - } - ], - "idiom" : "universal", - "platform" : "ios", - "size" : "1024x1024" - }, - { - "appearances" : [ - { - "appearance" : "luminosity", - "value" : "tinted" - } - ], - "idiom" : "universal", - "platform" : "ios", - "size" : "1024x1024" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/apple-apps/A-List/Assets.xcassets/Contents.json b/apple-apps/A-List/Assets.xcassets/Contents.json deleted file mode 100644 index 73c0059..0000000 --- a/apple-apps/A-List/Assets.xcassets/Contents.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/apple-apps/A-List/ContentView.swift b/apple-apps/A-List/ContentView.swift deleted file mode 100644 index fe0065c..0000000 --- a/apple-apps/A-List/ContentView.swift +++ /dev/null @@ -1,71 +0,0 @@ -// -// ContentView.swift -// A-List -// -// Created by Matt Wyskiel on 6/30/24. -// - -import SwiftUI - -struct ContentView: View { - var body: some View { - List { - listItem(item: MixItem(title: "2024-05-26 - Dance Them All Away (The Envious Mix)", durationLabel: "31:26")) - - listItem(item: MixItem(title: "2024-05-26 - Dance Them All Away (The Envious Mix)", durationLabel: "31:26", isDownloaded: true)) - - listItem(item: MixItem(title: "2024-05-26 - Dance Them All Away (The Envious Mix)", durationLabel: "31:26")) - - listItem(item: MixItem(title: "2024-05-26 - Dance Them All Away (The Envious Mix)", durationLabel: "31:26", isDownloaded: true)) - } - .listStyle(.plain) - .navigationTitle("A-List") - .toolbar { - ToolbarItem(id: "settings", placement: .topBarTrailing) { - Button { - - } label: { - Image(systemName: "gearshape") - } - - } - } - } - - func listItem(item: MixItem) -> some View { - ZStack { - HStack { - VStack(alignment: .leading) { - Text(item.title) - Text(item.durationLabel) - .font(.subheadline) - - } - if item.isDownloaded { - Image(systemName: "checkmark") - .resizable() - .foregroundColor(Color(uiColor: .lightGray)) - .frame(width: 15, height: 15) - } else { - Circle() - .fill(.clear) - .frame(width: 15, height: 15) - } - } - NavigationLink { - Text(item.title) - } label: { - EmptyView() - }.isDetailLink(true) - .opacity(0) - } - } -} - -#Preview { - NavigationSplitView { - ContentView() - } detail: { - Text("") - } -} diff --git a/apple-apps/A-List/DetailView.swift b/apple-apps/A-List/DetailView.swift deleted file mode 100644 index c66d7c2..0000000 --- a/apple-apps/A-List/DetailView.swift +++ /dev/null @@ -1,19 +0,0 @@ -// -// DetailView.swift -// A-List -// -// Created by Matt Wyskiel on 6/30/24. -// - -import SwiftUI - -struct DetailView: View { - let item: MixItem - var body: some View { - Text(/*@START_MENU_TOKEN@*/"Hello, World!"/*@END_MENU_TOKEN@*/) - } -} - -#Preview { - DetailView() -} diff --git a/apple-apps/A-List/Model/MixItem.swift b/apple-apps/A-List/Model/MixItem.swift deleted file mode 100644 index cb2ecbb..0000000 --- a/apple-apps/A-List/Model/MixItem.swift +++ /dev/null @@ -1,36 +0,0 @@ -// -// MixItem.swift -// A-List -// -// Created by Matt Wyskiel on 6/30/24. -// - -import Foundation -import AVFoundation - -struct MixItem: Codable { - let id: Int - let title: String - let description: String - let audioURL: URL - let publishDate: Date -} - -extension MixItem { - var isDownloaded: Bool { - // TODO: Implement this based on whether the file is downloaded to the device - false - } -} - -extension MixItem { - func loadDurationLabel() async throws -> String { - let asset = AVURLAsset(url: audioURL) - let duration = try await asset.load(.duration) - let durationSeconds = duration.seconds - let formatter = DateIntervalFormatter() - formatter.dateStyle = .none - formatter.timeStyle = .medium - return formatter.string(from: DateInterval(start: .now, duration: durationSeconds)) ?? "" - } -} diff --git a/apple-apps/A-List/Preview Content/Preview Assets.xcassets/Contents.json b/apple-apps/A-List/Preview Content/Preview Assets.xcassets/Contents.json deleted file mode 100644 index 73c0059..0000000 --- a/apple-apps/A-List/Preview Content/Preview Assets.xcassets/Contents.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/backend/.gitignore b/backend/.gitignore deleted file mode 100644 index a553bbe..0000000 --- a/backend/.gitignore +++ /dev/null @@ -1,5 +0,0 @@ - -# sst -.sst - -node_modules \ No newline at end of file diff --git a/backend/core/db/index.ts b/backend/core/db/index.ts deleted file mode 100644 index b4eca9e..0000000 --- a/backend/core/db/index.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { drizzle } from "drizzle-orm/postgres-js"; -import * as schema from "./schema"; -import postgres from "postgres"; -import { Secrets } from "../services/secrets"; -import { logger } from "../logging"; - -export const db = async () => { - const secrets = new Secrets(); - const connectionString = await secrets.get("DATABASE_URL"); - logger.info("Connecting to database"); - const client = postgres(connectionString, { prepare: false }); - logger.info("Connection to database successful"); - return drizzle(client, { schema }); -}; diff --git a/backend/core/db/schema.ts b/backend/core/db/schema.ts deleted file mode 100644 index d4d8d52..0000000 --- a/backend/core/db/schema.ts +++ /dev/null @@ -1,20 +0,0 @@ -import { pgTable, bigint, text, timestamp } from "drizzle-orm/pg-core"; -export const mixes = pgTable("mixes", { - // You can use { mode: "bigint" } if numbers are exceeding js number limitations - id: bigint("id", { mode: "number" }).primaryKey().notNull(), - title: text("title").notNull(), - publishDate: timestamp("publishDate", { - withTimezone: true, - mode: "string", - }).notNull(), - description: text("description").notNull(), - slug: text("slug").notNull(), -}); - -export const audioAssets = pgTable("audio_assets", { - id: bigint("asset_id", { mode: "number" }).primaryKey().notNull(), - mixId: bigint("mix_id", { mode: "number" }).primaryKey().notNull(), - key: text("key").notNull(), - mimeType: text("mime_type").notNull(), - durationSeconds: bigint("duration_seconds", { mode: "number" }).notNull(), -}); diff --git a/backend/core/logging.ts b/backend/core/logging.ts deleted file mode 100644 index 7aad6ab..0000000 --- a/backend/core/logging.ts +++ /dev/null @@ -1,2 +0,0 @@ -import { Logger } from '@aws-lambda-powertools/logger'; -export const logger = new Logger(); diff --git a/backend/core/services/secrets.ts b/backend/core/services/secrets.ts deleted file mode 100644 index 173e755..0000000 --- a/backend/core/services/secrets.ts +++ /dev/null @@ -1,93 +0,0 @@ -import { logger } from "../logging"; -import axios from "axios"; -import { STSClient, GetCallerIdentityCommand } from "@aws-sdk/client-sts"; -import { fromNodeProviderChain } from "@aws-sdk/credential-providers"; -import { Sha256 } from "@aws-crypto/sha256-js"; -import { createRequest } from "@aws-sdk/util-create-request"; -import { SignatureV4 } from "@smithy/signature-v4"; - -interface InfisicalAccessInfo { - accessToken: string; - expiresIn: number; - accessTokenMaxTTL: number; - tokenType: string; -} -interface GetSecretResponse { - secret: { - environment: string; - isFallback?: boolean; - secretComment: string; - secretKey: string; - secretPath?: null | string; - secretValue: string; - type: string; - version: number; - workspace: string; - [property: string]: any; - }; -} -export class Secrets { - async get(key: string) { - const accessToken = await this.getAccessToken(); - logger.info(`Getting secret ${key}`); - const { data }: { data: GetSecretResponse } = await axios.get( - `https://app.infisical.com/api/v3/secrets/raw/${key}`, - { - headers: { - Authorization: `Bearer ${accessToken}`, - }, - params: { - workspaceId: "81a4f27c-8049-4d5f-8ac3-32bb3d5f0267", - environment: "prod", - }, - } - ); - logger.info(`Successfully retrieved secret value for key: ${key}`); - return data.secret.secretValue; - } - - private async getAccessToken() { - logger.info("Getting Infisical access token"); - const region = "us-east-1"; - const iamRequestURL = `https://sts.${region}.amazonaws.com/`; - - const iamRequestBody = "Action=GetCallerIdentity&Version=2011-06-15"; - const iamRequestHeaders = { - "Content-Type": "application/x-www-form-urlencoded; charset=utf-8", - Host: `sts.${region}.amazonaws.com`, - }; - - const credentialProvider = fromNodeProviderChain(); - const credentials = await credentialProvider(); - - const v4 = new SignatureV4({ - region, - service: "sts", - credentials, - sha256: Sha256, - }); - const request = await createRequest( - new STSClient({ endpoint: iamRequestURL }), - new GetCallerIdentityCommand({}) - ); - logger.info("Signing request"); - const signedRequest = await v4.sign(request); - const infisicalUrl = "https://app.infisical.com"; - const identityId = "9732f5a9-8ea8-457c-bbac-aac3012c9c7f"; - logger.info("Requesting Infisical access token with signed headers"); - const { data }: { data: InfisicalAccessInfo } = await axios.post( - `${infisicalUrl}/api/v1/auth/aws-auth/login`, - { - identityId, - iamHttpRequestMethod: "POST", - iamRequestUrl: Buffer.from(iamRequestURL).toString("base64"), - iamRequestBody: Buffer.from(iamRequestBody).toString("base64"), - iamRequestHeaders: Buffer.from( - JSON.stringify(signedRequest.headers) - ).toString("base64"), - } - ); - logger.info("Successfully retrieved Infisical access token"); - return data.accessToken; - } -} diff --git a/backend/functions/list-mixes.ts b/backend/functions/list-mixes.ts deleted file mode 100644 index 386cc00..0000000 --- a/backend/functions/list-mixes.ts +++ /dev/null @@ -1,30 +0,0 @@ -import { APIGatewayProxyHandlerV2 } from "aws-lambda"; -import { mixes, audioAssets } from "../core/db/schema"; -import { db } from "../core/db"; -import { eq } from "drizzle-orm"; - -export const handler: APIGatewayProxyHandlerV2 = async (event) => { - const dbClient = await db(); - const allMixes = await dbClient.select().from(mixes); - const mixesWithAssets = []; - for (const mix of allMixes) { - const mixWithAssets = { - ...mix, - assets: ( - await dbClient - .select() - .from(audioAssets) - .where(eq(audioAssets.mixId, mix.id)) - ).map((asset) => ({ - key: asset.key, - mimeType: asset.mimeType, - durationSeconds: asset.durationSeconds, - })), - }; - mixesWithAssets.push(mixWithAssets); - } - return { - statusCode: 200, - body: JSON.stringify(mixesWithAssets), - }; -}; diff --git a/backend/package.json b/backend/package.json deleted file mode 100644 index d7ea925..0000000 --- a/backend/package.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "name": "backend", - "version": "1.0.0", - "description": "", - "main": "index.js", - "scripts": { - "test": "echo \"Error: no test specified\" && exit 1" - }, - "keywords": [], - "author": "", - "license": "ISC", - "dependencies": { - "@aws-crypto/sha256-js": "^5.2.0", - "@aws-lambda-powertools/logger": "^2.3.0", - "@aws-sdk/client-sso-oidc": "^3.606.0", - "@aws-sdk/client-sts": "^3.606.0", - "@aws-sdk/credential-providers": "^3.606.0", - "@aws-sdk/util-create-request": "^3.598.0", - "@smithy/signature-v4": "^3.1.2", - "axios": "^1.7.2", - "drizzle-orm": "^0.31.2", - "postgres": "^3.4.4" - }, - "devDependencies": { - "@types/aws-lambda": "^8.10.140", - "drizzle-kit": "^0.22.8", - "typescript": "^5.5.2" - } -} diff --git a/backend/pnpm-lock.yaml b/backend/pnpm-lock.yaml deleted file mode 100644 index d9df7ad..0000000 --- a/backend/pnpm-lock.yaml +++ /dev/null @@ -1,1809 +0,0 @@ -lockfileVersion: '9.0' - -settings: - autoInstallPeers: true - excludeLinksFromLockfile: false - -importers: - - .: - dependencies: - '@aws-crypto/sha256-js': - specifier: ^5.2.0 - version: 5.2.0 - '@aws-lambda-powertools/logger': - specifier: ^2.3.0 - version: 2.3.0 - '@aws-sdk/client-sso-oidc': - specifier: ^3.606.0 - version: 3.606.0(@aws-sdk/client-sts@3.606.0) - '@aws-sdk/client-sts': - specifier: ^3.606.0 - version: 3.606.0 - '@aws-sdk/credential-providers': - specifier: ^3.606.0 - version: 3.606.0(@aws-sdk/client-sso-oidc@3.606.0(@aws-sdk/client-sts@3.606.0)) - '@aws-sdk/util-create-request': - specifier: ^3.598.0 - version: 3.598.0 - '@smithy/signature-v4': - specifier: ^3.1.2 - version: 3.1.2 - axios: - specifier: ^1.7.2 - version: 1.7.2 - drizzle-orm: - specifier: ^0.31.2 - version: 0.31.2(postgres@3.4.4) - postgres: - specifier: ^3.4.4 - version: 3.4.4 - devDependencies: - '@types/aws-lambda': - specifier: ^8.10.140 - version: 8.10.140 - drizzle-kit: - specifier: ^0.22.8 - version: 0.22.8 - typescript: - specifier: ^5.5.2 - version: 5.5.2 - -packages: - - '@aws-crypto/sha256-browser@5.2.0': - resolution: {integrity: sha512-AXfN/lGotSQwu6HNcEsIASo7kWXZ5HYWvfOmSNKDsEqC4OashTp8alTmaz+F7TC2L083SFv5RdB+qU3Vs1kZqw==} - - '@aws-crypto/sha256-js@5.2.0': - resolution: {integrity: sha512-FFQQyu7edu4ufvIZ+OadFpHHOt+eSTBaYaki44c+akjg7qZg9oOQeLlk77F6tSYqjDAFClrHJk9tMf0HdVyOvA==} - engines: {node: '>=16.0.0'} - - '@aws-crypto/supports-web-crypto@5.2.0': - resolution: {integrity: sha512-iAvUotm021kM33eCdNfwIN//F77/IADDSs58i+MDaOqFrVjZo9bAal0NK7HurRuWLLpF1iLX7gbWrjHjeo+YFg==} - - '@aws-crypto/util@5.2.0': - resolution: {integrity: sha512-4RkU9EsI6ZpBve5fseQlGNUWKMa1RLPQ1dnjnQoe07ldfIzcsGb5hC5W0Dm7u423KWzawlrpbjXBrXCEv9zazQ==} - - '@aws-lambda-powertools/commons@2.3.0': - resolution: {integrity: sha512-APGVWWtNbUDzjhkBHBru14c8YDh7j4TscsoZzPnD2mM0Z2SQFyByurFW8yUIDTqfVCYSKdnSQxsSxMI4eythWw==} - - '@aws-lambda-powertools/logger@2.3.0': - resolution: {integrity: sha512-CFHMOAG6TY1inVCy+XNfH3yQliwyRui0s9oGUrXblTlJoEakWbkw5+nYsJkiPsUh983CUOIL4OezQvIfR/Vyhg==} - peerDependencies: - '@middy/core': '>=3.x' - peerDependenciesMeta: - '@middy/core': - optional: true - - '@aws-sdk/client-cognito-identity@3.606.0': - resolution: {integrity: sha512-CJ3kovUg7HAn3trqo0WxVw3PJoaHxiGU1U+Ok8Vx/sL81+auyyiasT09M/NcchRqwAooKvUi44sVD0ih7Zi9Nw==} - engines: {node: '>=16.0.0'} - - '@aws-sdk/client-sso-oidc@3.606.0': - resolution: {integrity: sha512-gL1FHPS6hwgMNS/A+Qh5bUyHOeRVOqdb7c6+i+9gR3wtGvt2lvoSm8w5DhS08Xiiacz2AqYRDEapp0xuyCrbBQ==} - engines: {node: '>=16.0.0'} - peerDependencies: - '@aws-sdk/client-sts': ^3.606.0 - - '@aws-sdk/client-sso@3.598.0': - resolution: {integrity: sha512-nOI5lqPYa+YZlrrzwAJywJSw3MKVjvu6Ge2fCqQUNYMfxFB0NAaDFnl0EPjXi+sEbtCuz/uWE77poHbqiZ+7Iw==} - engines: {node: '>=16.0.0'} - - '@aws-sdk/client-sts@3.606.0': - resolution: {integrity: sha512-b11mAhjrkm3MMiAPoMGcmd6vsaz2120lg8rHG/NZCo9vB1K6Kc7WP+a1Q05TRMseer2egTtpWJfn44aVO97VqA==} - engines: {node: '>=16.0.0'} - - '@aws-sdk/core@3.598.0': - resolution: {integrity: sha512-HaSjt7puO5Cc7cOlrXFCW0rtA0BM9lvzjl56x0A20Pt+0wxXGeTOZZOkXQIepbrFkV2e/HYukuT9e99vXDm59g==} - engines: {node: '>=16.0.0'} - - '@aws-sdk/credential-provider-cognito-identity@3.606.0': - resolution: {integrity: sha512-4wGvXilFLkozs4/dMnn9NvxZbL9oyyReoF9aR3kGUZ0QVO8cCBp/Zkr8IXZifhVBo9/esJdMFnR9lEXR7Yuleg==} - engines: {node: '>=16.0.0'} - - '@aws-sdk/credential-provider-env@3.598.0': - resolution: {integrity: sha512-vi1khgn7yXzLCcgSIzQrrtd2ilUM0dWodxj3PQ6BLfP0O+q1imO3hG1nq7DVyJtq7rFHs6+9N8G4mYvTkxby2w==} - engines: {node: '>=16.0.0'} - - '@aws-sdk/credential-provider-http@3.598.0': - resolution: {integrity: sha512-N7cIafi4HVlQvEgvZSo1G4T9qb/JMLGMdBsDCT5XkeJrF0aptQWzTFH0jIdZcLrMYvzPcuEyO3yCBe6cy/ba0g==} - engines: {node: '>=16.0.0'} - - '@aws-sdk/credential-provider-ini@3.598.0': - resolution: {integrity: sha512-/ppcIVUbRwDIwJDoYfp90X3+AuJo2mvE52Y1t2VSrvUovYn6N4v95/vXj6LS8CNDhz2jvEJYmu+0cTMHdhI6eA==} - engines: {node: '>=16.0.0'} - peerDependencies: - '@aws-sdk/client-sts': ^3.598.0 - - '@aws-sdk/credential-provider-node@3.600.0': - resolution: {integrity: sha512-1pC7MPMYD45J7yFjA90SxpR0yaSvy+yZiq23aXhAPZLYgJBAxHLu0s0mDCk/piWGPh8+UGur5K0bVdx4B1D5hw==} - engines: {node: '>=16.0.0'} - - '@aws-sdk/credential-provider-process@3.598.0': - resolution: {integrity: sha512-rM707XbLW8huMk722AgjVyxu2tMZee++fNA8TJVNgs1Ma02Wx6bBrfIvlyK0rCcIRb0WdQYP6fe3Xhiu4e8IBA==} - engines: {node: '>=16.0.0'} - - '@aws-sdk/credential-provider-sso@3.598.0': - resolution: {integrity: sha512-5InwUmrAuqQdOOgxTccRayMMkSmekdLk6s+az9tmikq0QFAHUCtofI+/fllMXSR9iL6JbGYi1940+EUmS4pHJA==} - engines: {node: '>=16.0.0'} - - '@aws-sdk/credential-provider-web-identity@3.598.0': - resolution: {integrity: sha512-GV5GdiMbz5Tz9JO4NJtRoFXjW0GPEujA0j+5J/B723rTN+REHthJu48HdBKouHGhdzkDWkkh1bu52V02Wprw8w==} - engines: {node: '>=16.0.0'} - peerDependencies: - '@aws-sdk/client-sts': ^3.598.0 - - '@aws-sdk/credential-providers@3.606.0': - resolution: {integrity: sha512-34hswGNDWBFvp4Hi4Gv9DIJ4Ks0Nbg8w3emFsPVHLqqI6X2Wd0hJTf+mi1kMhy/AQXt5LisKLw6wjNIKD2+KGg==} - engines: {node: '>=16.0.0'} - - '@aws-sdk/middleware-host-header@3.598.0': - resolution: {integrity: sha512-WiaG059YBQwQraNejLIi0gMNkX7dfPZ8hDIhvMr5aVPRbaHH8AYF3iNSsXYCHvA2Cfa1O9haYXsuMF9flXnCmA==} - engines: {node: '>=16.0.0'} - - '@aws-sdk/middleware-logger@3.598.0': - resolution: {integrity: sha512-bxBjf/VYiu3zfu8SYM2S9dQQc3tz5uBAOcPz/Bt8DyyK3GgOpjhschH/2XuUErsoUO1gDJqZSdGOmuHGZQn00Q==} - engines: {node: '>=16.0.0'} - - '@aws-sdk/middleware-recursion-detection@3.598.0': - resolution: {integrity: sha512-vjT9BeFY9FeN0f8hm2l6F53tI0N5bUq6RcDkQXKNabXBnQxKptJRad6oP2X5y3FoVfBLOuDkQgiC2940GIPxtQ==} - engines: {node: '>=16.0.0'} - - '@aws-sdk/middleware-user-agent@3.598.0': - resolution: {integrity: sha512-4tjESlHG5B5MdjUaLK7tQs/miUtHbb6deauQx8ryqSBYOhfHVgb1ZnzvQR0bTrhpqUg0WlybSkDaZAICf9xctg==} - engines: {node: '>=16.0.0'} - - '@aws-sdk/region-config-resolver@3.598.0': - resolution: {integrity: sha512-oYXhmTokSav4ytmWleCr3rs/1nyvZW/S0tdi6X7u+dLNL5Jee+uMxWGzgOrWK6wrQOzucLVjS4E/wA11Kv2GTw==} - engines: {node: '>=16.0.0'} - - '@aws-sdk/token-providers@3.598.0': - resolution: {integrity: sha512-TKY1EVdHVBnZqpyxyTHdpZpa1tUpb6nxVeRNn1zWG8QB5MvH4ALLd/jR+gtmWDNQbIG4cVuBOZFVL8hIYicKTA==} - engines: {node: '>=16.0.0'} - peerDependencies: - '@aws-sdk/client-sso-oidc': ^3.598.0 - - '@aws-sdk/types@3.598.0': - resolution: {integrity: sha512-742uRl6z7u0LFmZwDrFP6r1wlZcgVPw+/TilluDJmCAR8BgRw3IR+743kUXKBGd8QZDRW2n6v/PYsi/AWCDDMQ==} - engines: {node: '>=16.0.0'} - - '@aws-sdk/util-create-request@3.598.0': - resolution: {integrity: sha512-m8vQJTsggQKHQfvGRNQoWVKKztM3YjYFdTVVGrdUvgFgu0nJB2ViRcep50jHB3Jvujg0/ad6kXts3aenwv2lMA==} - engines: {node: '>=16.0.0'} - - '@aws-sdk/util-endpoints@3.598.0': - resolution: {integrity: sha512-Qo9UoiVVZxcOEdiOMZg3xb1mzkTxrhd4qSlg5QQrfWPJVx/QOg+Iy0NtGxPtHtVZNHZxohYwDwV/tfsnDSE2gQ==} - engines: {node: '>=16.0.0'} - - '@aws-sdk/util-locate-window@3.568.0': - resolution: {integrity: sha512-3nh4TINkXYr+H41QaPelCceEB2FXP3fxp93YZXB/kqJvX0U9j0N0Uk45gvsjmEPzG8XxkPEeLIfT2I1M7A6Lig==} - engines: {node: '>=16.0.0'} - - '@aws-sdk/util-user-agent-browser@3.598.0': - resolution: {integrity: sha512-36Sxo6F+ykElaL1mWzWjlg+1epMpSe8obwhCN1yGE7Js9ywy5U6k6l+A3q3YM9YRbm740sNxncbwLklMvuhTKw==} - - '@aws-sdk/util-user-agent-node@3.598.0': - resolution: {integrity: sha512-oyWGcOlfTdzkC6SVplyr0AGh54IMrDxbhg5RxJ5P+V4BKfcDoDcZV9xenUk9NsOi9MuUjxMumb9UJGkDhM1m0A==} - engines: {node: '>=16.0.0'} - peerDependencies: - aws-crt: '>=1.0.0' - peerDependenciesMeta: - aws-crt: - optional: true - - '@esbuild-kit/core-utils@3.3.2': - resolution: {integrity: sha512-sPRAnw9CdSsRmEtnsl2WXWdyquogVpB3yZ3dgwJfe8zrOzTsV7cJvmwrKVa+0ma5BoiGJ+BoqkMvawbayKUsqQ==} - - '@esbuild-kit/esm-loader@2.6.5': - resolution: {integrity: sha512-FxEMIkJKnodyA1OaCUoEvbYRkoZlLZ4d/eXFu9Fh8CbBBgP5EmZxrfTRyN0qpXZ4vOvqnE5YdRdcrmUUXuU+dA==} - - '@esbuild/aix-ppc64@0.19.12': - resolution: {integrity: sha512-bmoCYyWdEL3wDQIVbcyzRyeKLgk2WtWLTWz1ZIAZF/EGbNOwSA6ew3PftJ1PqMiOOGu0OyFMzG53L0zqIpPeNA==} - engines: {node: '>=12'} - cpu: [ppc64] - os: [aix] - - '@esbuild/android-arm64@0.18.20': - resolution: {integrity: sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==} - engines: {node: '>=12'} - cpu: [arm64] - os: [android] - - '@esbuild/android-arm64@0.19.12': - resolution: {integrity: sha512-P0UVNGIienjZv3f5zq0DP3Nt2IE/3plFzuaS96vihvD0Hd6H/q4WXUGpCxD/E8YrSXfNyRPbpTq+T8ZQioSuPA==} - engines: {node: '>=12'} - cpu: [arm64] - os: [android] - - '@esbuild/android-arm@0.18.20': - resolution: {integrity: sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==} - engines: {node: '>=12'} - cpu: [arm] - os: [android] - - '@esbuild/android-arm@0.19.12': - resolution: {integrity: sha512-qg/Lj1mu3CdQlDEEiWrlC4eaPZ1KztwGJ9B6J+/6G+/4ewxJg7gqj8eVYWvao1bXrqGiW2rsBZFSX3q2lcW05w==} - engines: {node: '>=12'} - cpu: [arm] - os: [android] - - '@esbuild/android-x64@0.18.20': - resolution: {integrity: sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==} - engines: {node: '>=12'} - cpu: [x64] - os: [android] - - '@esbuild/android-x64@0.19.12': - resolution: {integrity: sha512-3k7ZoUW6Q6YqhdhIaq/WZ7HwBpnFBlW905Fa4s4qWJyiNOgT1dOqDiVAQFwBH7gBRZr17gLrlFCRzF6jFh7Kew==} - engines: {node: '>=12'} - cpu: [x64] - os: [android] - - '@esbuild/darwin-arm64@0.18.20': - resolution: {integrity: sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==} - engines: {node: '>=12'} - cpu: [arm64] - os: [darwin] - - '@esbuild/darwin-arm64@0.19.12': - resolution: {integrity: sha512-B6IeSgZgtEzGC42jsI+YYu9Z3HKRxp8ZT3cqhvliEHovq8HSX2YX8lNocDn79gCKJXOSaEot9MVYky7AKjCs8g==} - engines: {node: '>=12'} - cpu: [arm64] - os: [darwin] - - '@esbuild/darwin-x64@0.18.20': - resolution: {integrity: sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==} - engines: {node: '>=12'} - cpu: [x64] - os: [darwin] - - '@esbuild/darwin-x64@0.19.12': - resolution: {integrity: sha512-hKoVkKzFiToTgn+41qGhsUJXFlIjxI/jSYeZf3ugemDYZldIXIxhvwN6erJGlX4t5h417iFuheZ7l+YVn05N3A==} - engines: {node: '>=12'} - cpu: [x64] - os: [darwin] - - '@esbuild/freebsd-arm64@0.18.20': - resolution: {integrity: sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==} - engines: {node: '>=12'} - cpu: [arm64] - os: [freebsd] - - '@esbuild/freebsd-arm64@0.19.12': - resolution: {integrity: sha512-4aRvFIXmwAcDBw9AueDQ2YnGmz5L6obe5kmPT8Vd+/+x/JMVKCgdcRwH6APrbpNXsPz+K653Qg8HB/oXvXVukA==} - engines: {node: '>=12'} - cpu: [arm64] - os: [freebsd] - - '@esbuild/freebsd-x64@0.18.20': - resolution: {integrity: sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==} - engines: {node: '>=12'} - cpu: [x64] - os: [freebsd] - - '@esbuild/freebsd-x64@0.19.12': - resolution: {integrity: sha512-EYoXZ4d8xtBoVN7CEwWY2IN4ho76xjYXqSXMNccFSx2lgqOG/1TBPW0yPx1bJZk94qu3tX0fycJeeQsKovA8gg==} - engines: {node: '>=12'} - cpu: [x64] - os: [freebsd] - - '@esbuild/linux-arm64@0.18.20': - resolution: {integrity: sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==} - engines: {node: '>=12'} - cpu: [arm64] - os: [linux] - - '@esbuild/linux-arm64@0.19.12': - resolution: {integrity: sha512-EoTjyYyLuVPfdPLsGVVVC8a0p1BFFvtpQDB/YLEhaXyf/5bczaGeN15QkR+O4S5LeJ92Tqotve7i1jn35qwvdA==} - engines: {node: '>=12'} - cpu: [arm64] - os: [linux] - - '@esbuild/linux-arm@0.18.20': - resolution: {integrity: sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==} - engines: {node: '>=12'} - cpu: [arm] - os: [linux] - - '@esbuild/linux-arm@0.19.12': - resolution: {integrity: sha512-J5jPms//KhSNv+LO1S1TX1UWp1ucM6N6XuL6ITdKWElCu8wXP72l9MM0zDTzzeikVyqFE6U8YAV9/tFyj0ti+w==} - engines: {node: '>=12'} - cpu: [arm] - os: [linux] - - '@esbuild/linux-ia32@0.18.20': - resolution: {integrity: sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==} - engines: {node: '>=12'} - cpu: [ia32] - os: [linux] - - '@esbuild/linux-ia32@0.19.12': - resolution: {integrity: sha512-Thsa42rrP1+UIGaWz47uydHSBOgTUnwBwNq59khgIwktK6x60Hivfbux9iNR0eHCHzOLjLMLfUMLCypBkZXMHA==} - engines: {node: '>=12'} - cpu: [ia32] - os: [linux] - - '@esbuild/linux-loong64@0.18.20': - resolution: {integrity: sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==} - engines: {node: '>=12'} - cpu: [loong64] - os: [linux] - - '@esbuild/linux-loong64@0.19.12': - resolution: {integrity: sha512-LiXdXA0s3IqRRjm6rV6XaWATScKAXjI4R4LoDlvO7+yQqFdlr1Bax62sRwkVvRIrwXxvtYEHHI4dm50jAXkuAA==} - engines: {node: '>=12'} - cpu: [loong64] - os: [linux] - - '@esbuild/linux-mips64el@0.18.20': - resolution: {integrity: sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==} - engines: {node: '>=12'} - cpu: [mips64el] - os: [linux] - - '@esbuild/linux-mips64el@0.19.12': - resolution: {integrity: sha512-fEnAuj5VGTanfJ07ff0gOA6IPsvrVHLVb6Lyd1g2/ed67oU1eFzL0r9WL7ZzscD+/N6i3dWumGE1Un4f7Amf+w==} - engines: {node: '>=12'} - cpu: [mips64el] - os: [linux] - - '@esbuild/linux-ppc64@0.18.20': - resolution: {integrity: sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==} - engines: {node: '>=12'} - cpu: [ppc64] - os: [linux] - - '@esbuild/linux-ppc64@0.19.12': - resolution: {integrity: sha512-nYJA2/QPimDQOh1rKWedNOe3Gfc8PabU7HT3iXWtNUbRzXS9+vgB0Fjaqr//XNbd82mCxHzik2qotuI89cfixg==} - engines: {node: '>=12'} - cpu: [ppc64] - os: [linux] - - '@esbuild/linux-riscv64@0.18.20': - resolution: {integrity: sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==} - engines: {node: '>=12'} - cpu: [riscv64] - os: [linux] - - '@esbuild/linux-riscv64@0.19.12': - resolution: {integrity: sha512-2MueBrlPQCw5dVJJpQdUYgeqIzDQgw3QtiAHUC4RBz9FXPrskyyU3VI1hw7C0BSKB9OduwSJ79FTCqtGMWqJHg==} - engines: {node: '>=12'} - cpu: [riscv64] - os: [linux] - - '@esbuild/linux-s390x@0.18.20': - resolution: {integrity: sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==} - engines: {node: '>=12'} - cpu: [s390x] - os: [linux] - - '@esbuild/linux-s390x@0.19.12': - resolution: {integrity: sha512-+Pil1Nv3Umes4m3AZKqA2anfhJiVmNCYkPchwFJNEJN5QxmTs1uzyy4TvmDrCRNT2ApwSari7ZIgrPeUx4UZDg==} - engines: {node: '>=12'} - cpu: [s390x] - os: [linux] - - '@esbuild/linux-x64@0.18.20': - resolution: {integrity: sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==} - engines: {node: '>=12'} - cpu: [x64] - os: [linux] - - '@esbuild/linux-x64@0.19.12': - resolution: {integrity: sha512-B71g1QpxfwBvNrfyJdVDexenDIt1CiDN1TIXLbhOw0KhJzE78KIFGX6OJ9MrtC0oOqMWf+0xop4qEU8JrJTwCg==} - engines: {node: '>=12'} - cpu: [x64] - os: [linux] - - '@esbuild/netbsd-x64@0.18.20': - resolution: {integrity: sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==} - engines: {node: '>=12'} - cpu: [x64] - os: [netbsd] - - '@esbuild/netbsd-x64@0.19.12': - resolution: {integrity: sha512-3ltjQ7n1owJgFbuC61Oj++XhtzmymoCihNFgT84UAmJnxJfm4sYCiSLTXZtE00VWYpPMYc+ZQmB6xbSdVh0JWA==} - engines: {node: '>=12'} - cpu: [x64] - os: [netbsd] - - '@esbuild/openbsd-x64@0.18.20': - resolution: {integrity: sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==} - engines: {node: '>=12'} - cpu: [x64] - os: [openbsd] - - '@esbuild/openbsd-x64@0.19.12': - resolution: {integrity: sha512-RbrfTB9SWsr0kWmb9srfF+L933uMDdu9BIzdA7os2t0TXhCRjrQyCeOt6wVxr79CKD4c+p+YhCj31HBkYcXebw==} - engines: {node: '>=12'} - cpu: [x64] - os: [openbsd] - - '@esbuild/sunos-x64@0.18.20': - resolution: {integrity: sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==} - engines: {node: '>=12'} - cpu: [x64] - os: [sunos] - - '@esbuild/sunos-x64@0.19.12': - resolution: {integrity: sha512-HKjJwRrW8uWtCQnQOz9qcU3mUZhTUQvi56Q8DPTLLB+DawoiQdjsYq+j+D3s9I8VFtDr+F9CjgXKKC4ss89IeA==} - engines: {node: '>=12'} - cpu: [x64] - os: [sunos] - - '@esbuild/win32-arm64@0.18.20': - resolution: {integrity: sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==} - engines: {node: '>=12'} - cpu: [arm64] - os: [win32] - - '@esbuild/win32-arm64@0.19.12': - resolution: {integrity: sha512-URgtR1dJnmGvX864pn1B2YUYNzjmXkuJOIqG2HdU62MVS4EHpU2946OZoTMnRUHklGtJdJZ33QfzdjGACXhn1A==} - engines: {node: '>=12'} - cpu: [arm64] - os: [win32] - - '@esbuild/win32-ia32@0.18.20': - resolution: {integrity: sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==} - engines: {node: '>=12'} - cpu: [ia32] - os: [win32] - - '@esbuild/win32-ia32@0.19.12': - resolution: {integrity: sha512-+ZOE6pUkMOJfmxmBZElNOx72NKpIa/HFOMGzu8fqzQJ5kgf6aTGrcJaFsNiVMH4JKpMipyK+7k0n2UXN7a8YKQ==} - engines: {node: '>=12'} - cpu: [ia32] - os: [win32] - - '@esbuild/win32-x64@0.18.20': - resolution: {integrity: sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==} - engines: {node: '>=12'} - cpu: [x64] - os: [win32] - - '@esbuild/win32-x64@0.19.12': - resolution: {integrity: sha512-T1QyPSDCyMXaO3pzBkF96E8xMkiRYbUEZADd29SyPGabqxMViNoii+NcK7eWJAEoU6RZyEm5lVSIjTmcdoB9HA==} - engines: {node: '>=12'} - cpu: [x64] - os: [win32] - - '@smithy/abort-controller@3.1.1': - resolution: {integrity: sha512-MBJBiidoe+0cTFhyxT8g+9g7CeVccLM0IOKKUMCNQ1CNMJ/eIfoo0RTfVrXOONEI1UCN1W+zkiHSbzUNE9dZtQ==} - engines: {node: '>=16.0.0'} - - '@smithy/config-resolver@3.0.4': - resolution: {integrity: sha512-VwiOk7TwXoE7NlNguV/aPq1hFH72tqkHCw8eWXbr2xHspRyyv9DLpLXhq+Ieje+NwoqXrY0xyQjPXdOE6cGcHA==} - engines: {node: '>=16.0.0'} - - '@smithy/core@2.2.4': - resolution: {integrity: sha512-qdY3LpMOUyLM/gfjjMQZui+UTNS7kBRDWlvyIhVOql5dn2J3isk9qUTBtQ1CbDH8MTugHis1zu3h4rH+Qmmh4g==} - engines: {node: '>=16.0.0'} - - '@smithy/credential-provider-imds@3.1.3': - resolution: {integrity: sha512-U1Yrv6hx/mRK6k8AncuI6jLUx9rn0VVSd9NPEX6pyYFBfkSkChOc/n4zUb8alHUVg83TbI4OdZVo1X0Zfj3ijA==} - engines: {node: '>=16.0.0'} - - '@smithy/fetch-http-handler@3.2.0': - resolution: {integrity: sha512-vFvDxMrc6sO5Atec8PaISckMcAwsCrRhYxwUylg97bRT2KZoumOF7qk5+6EVUtuM1IG9AJV5aqXnHln9ZdXHpg==} - - '@smithy/hash-node@3.0.3': - resolution: {integrity: sha512-2ctBXpPMG+B3BtWSGNnKELJ7SH9e4TNefJS0cd2eSkOOROeBnnVBnAy9LtJ8tY4vUEoe55N4CNPxzbWvR39iBw==} - engines: {node: '>=16.0.0'} - - '@smithy/invalid-dependency@3.0.3': - resolution: {integrity: sha512-ID1eL/zpDULmHJbflb864k72/SNOZCADRc9i7Exq3RUNJw6raWUSlFEQ+3PX3EYs++bTxZB2dE9mEHTQLv61tw==} - - '@smithy/is-array-buffer@2.2.0': - resolution: {integrity: sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==} - engines: {node: '>=14.0.0'} - - '@smithy/is-array-buffer@3.0.0': - resolution: {integrity: sha512-+Fsu6Q6C4RSJiy81Y8eApjEB5gVtM+oFKTffg+jSuwtvomJJrhUJBu2zS8wjXSgH/g1MKEWrzyChTBe6clb5FQ==} - engines: {node: '>=16.0.0'} - - '@smithy/middleware-content-length@3.0.3': - resolution: {integrity: sha512-Dbz2bzexReYIQDWMr+gZhpwBetNXzbhnEMhYKA6urqmojO14CsXjnsoPYO8UL/xxcawn8ZsuVU61ElkLSltIUQ==} - engines: {node: '>=16.0.0'} - - '@smithy/middleware-endpoint@3.0.4': - resolution: {integrity: sha512-whUJMEPwl3ANIbXjBXZVdJNgfV2ZU8ayln7xUM47rXL2txuenI7jQ/VFFwCzy5lCmXScjp6zYtptW5Evud8e9g==} - engines: {node: '>=16.0.0'} - - '@smithy/middleware-retry@3.0.7': - resolution: {integrity: sha512-f5q7Y09G+2h5ivkSx5CHvlAT4qRR3jBFEsfXyQ9nFNiWQlr8c48blnu5cmbTQ+p1xmIO14UXzKoF8d7Tm0Gsjw==} - engines: {node: '>=16.0.0'} - - '@smithy/middleware-serde@3.0.3': - resolution: {integrity: sha512-puUbyJQBcg9eSErFXjKNiGILJGtiqmuuNKEYNYfUD57fUl4i9+mfmThtQhvFXU0hCVG0iEJhvQUipUf+/SsFdA==} - engines: {node: '>=16.0.0'} - - '@smithy/middleware-stack@3.0.3': - resolution: {integrity: sha512-r4klY9nFudB0r9UdSMaGSyjyQK5adUyPnQN/ZM6M75phTxOdnc/AhpvGD1fQUvgmqjQEBGCwpnPbDm8pH5PapA==} - engines: {node: '>=16.0.0'} - - '@smithy/node-config-provider@3.1.3': - resolution: {integrity: sha512-rxdpAZczzholz6CYZxtqDu/aKTxATD5DAUDVj7HoEulq+pDSQVWzbg0btZDlxeFfa6bb2b5tUvgdX5+k8jUqcg==} - engines: {node: '>=16.0.0'} - - '@smithy/node-http-handler@3.1.1': - resolution: {integrity: sha512-L71NLyPeP450r2J/mfu1jMc//Z1YnqJt2eSNw7uhiItaONnBLDA68J5jgxq8+MBDsYnFwNAIc7dBG1ImiWBiwg==} - engines: {node: '>=16.0.0'} - - '@smithy/property-provider@3.1.3': - resolution: {integrity: sha512-zahyOVR9Q4PEoguJ/NrFP4O7SMAfYO1HLhB18M+q+Z4KFd4V2obiMnlVoUFzFLSPeVt1POyNWneHHrZaTMoc/g==} - engines: {node: '>=16.0.0'} - - '@smithy/protocol-http@4.0.3': - resolution: {integrity: sha512-x5jmrCWwQlx+Zv4jAtc33ijJ+vqqYN+c/ZkrnpvEe/uDas7AT7A/4Rc2CdfxgWv4WFGmEqODIrrUToPN6DDkGw==} - engines: {node: '>=16.0.0'} - - '@smithy/querystring-builder@3.0.3': - resolution: {integrity: sha512-vyWckeUeesFKzCDaRwWLUA1Xym9McaA6XpFfAK5qI9DKJ4M33ooQGqvM4J+LalH4u/Dq9nFiC8U6Qn1qi0+9zw==} - engines: {node: '>=16.0.0'} - - '@smithy/querystring-parser@3.0.3': - resolution: {integrity: sha512-zahM1lQv2YjmznnfQsWbYojFe55l0SLG/988brlLv1i8z3dubloLF+75ATRsqPBboUXsW6I9CPGE5rQgLfY0vQ==} - engines: {node: '>=16.0.0'} - - '@smithy/service-error-classification@3.0.3': - resolution: {integrity: sha512-Jn39sSl8cim/VlkLsUhRFq/dKDnRUFlfRkvhOJaUbLBXUsLRLNf9WaxDv/z9BjuQ3A6k/qE8af1lsqcwm7+DaQ==} - engines: {node: '>=16.0.0'} - - '@smithy/shared-ini-file-loader@3.1.3': - resolution: {integrity: sha512-Z8Y3+08vgoDgl4HENqNnnzSISAaGrF2RoKupoC47u2wiMp+Z8P/8mDh1CL8+8ujfi2U5naNvopSBmP/BUj8b5w==} - engines: {node: '>=16.0.0'} - - '@smithy/signature-v4@3.1.2': - resolution: {integrity: sha512-3BcPylEsYtD0esM4Hoyml/+s7WP2LFhcM3J2AGdcL2vx9O60TtfpDOL72gjb4lU8NeRPeKAwR77YNyyGvMbuEA==} - engines: {node: '>=16.0.0'} - - '@smithy/smithy-client@3.1.5': - resolution: {integrity: sha512-x9bL9Mx2CT2P1OiUlHM+ZNpbVU6TgT32f9CmTRzqIHA7M4vYrROCWEoC3o4xHNJASoGd4Opos3cXYPgh+/m4Ww==} - engines: {node: '>=16.0.0'} - - '@smithy/types@3.3.0': - resolution: {integrity: sha512-IxvBBCTFDHbVoK7zIxqA1ZOdc4QfM5HM7rGleCuHi7L1wnKv5Pn69xXJQ9hgxH60ZVygH9/JG0jRgtUncE3QUA==} - engines: {node: '>=16.0.0'} - - '@smithy/url-parser@3.0.3': - resolution: {integrity: sha512-pw3VtZtX2rg+s6HMs6/+u9+hu6oY6U7IohGhVNnjbgKy86wcIsSZwgHrFR+t67Uyxvp4Xz3p3kGXXIpTNisq8A==} - - '@smithy/util-base64@3.0.0': - resolution: {integrity: sha512-Kxvoh5Qtt0CDsfajiZOCpJxgtPHXOKwmM+Zy4waD43UoEMA+qPxxa98aE/7ZhdnBFZFXMOiBR5xbcaMhLtznQQ==} - engines: {node: '>=16.0.0'} - - '@smithy/util-body-length-browser@3.0.0': - resolution: {integrity: sha512-cbjJs2A1mLYmqmyVl80uoLTJhAcfzMOyPgjwAYusWKMdLeNtzmMz9YxNl3/jRLoxSS3wkqkf0jwNdtXWtyEBaQ==} - - '@smithy/util-body-length-node@3.0.0': - resolution: {integrity: sha512-Tj7pZ4bUloNUP6PzwhN7K386tmSmEET9QtQg0TgdNOnxhZvCssHji+oZTUIuzxECRfG8rdm2PMw2WCFs6eIYkA==} - engines: {node: '>=16.0.0'} - - '@smithy/util-buffer-from@2.2.0': - resolution: {integrity: sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA==} - engines: {node: '>=14.0.0'} - - '@smithy/util-buffer-from@3.0.0': - resolution: {integrity: sha512-aEOHCgq5RWFbP+UDPvPot26EJHjOC+bRgse5A8V3FSShqd5E5UN4qc7zkwsvJPPAVsf73QwYcHN1/gt/rtLwQA==} - engines: {node: '>=16.0.0'} - - '@smithy/util-config-provider@3.0.0': - resolution: {integrity: sha512-pbjk4s0fwq3Di/ANL+rCvJMKM5bzAQdE5S/6RL5NXgMExFAi6UgQMPOm5yPaIWPpr+EOXKXRonJ3FoxKf4mCJQ==} - engines: {node: '>=16.0.0'} - - '@smithy/util-defaults-mode-browser@3.0.7': - resolution: {integrity: sha512-Q2txLyvQyGfmjsaDbVV7Sg8psefpFcrnlGapDzXGFRPFKRBeEg6OvFK8FljqjeHSaCZ6/UuzQExUPqBR/2qlDA==} - engines: {node: '>= 10.0.0'} - - '@smithy/util-defaults-mode-node@3.0.7': - resolution: {integrity: sha512-F4Qcj1fG6MGi2BSWCslfsMSwllws/WzYONBGtLybyY+halAcXdWhcew+mej8M5SKd5hqPYp4f7b+ABQEaeytgg==} - engines: {node: '>= 10.0.0'} - - '@smithy/util-endpoints@2.0.4': - resolution: {integrity: sha512-ZAtNf+vXAsgzgRutDDiklU09ZzZiiV/nATyqde4Um4priTmasDH+eLpp3tspL0hS2dEootyFMhu1Y6Y+tzpWBQ==} - engines: {node: '>=16.0.0'} - - '@smithy/util-hex-encoding@3.0.0': - resolution: {integrity: sha512-eFndh1WEK5YMUYvy3lPlVmYY/fZcQE1D8oSf41Id2vCeIkKJXPcYDCZD+4+xViI6b1XSd7tE+s5AmXzz5ilabQ==} - engines: {node: '>=16.0.0'} - - '@smithy/util-middleware@3.0.3': - resolution: {integrity: sha512-l+StyYYK/eO3DlVPbU+4Bi06Jjal+PFLSMmlWM1BEwyLxZ3aKkf1ROnoIakfaA7mC6uw3ny7JBkau4Yc+5zfWw==} - engines: {node: '>=16.0.0'} - - '@smithy/util-retry@3.0.3': - resolution: {integrity: sha512-AFw+hjpbtVApzpNDhbjNG5NA3kyoMs7vx0gsgmlJF4s+yz1Zlepde7J58zpIRIsdjc+emhpAITxA88qLkPF26w==} - engines: {node: '>=16.0.0'} - - '@smithy/util-stream@3.0.5': - resolution: {integrity: sha512-xC3L5PKMAT/Bh8fmHNXP9sdQ4+4aKVUU3EEJ2CF/lLk7R+wtMJM+v/1B4en7jO++Wa5spGzFDBCl0QxgbUc5Ug==} - engines: {node: '>=16.0.0'} - - '@smithy/util-uri-escape@3.0.0': - resolution: {integrity: sha512-LqR7qYLgZTD7nWLBecUi4aqolw8Mhza9ArpNEQ881MJJIU2sE5iHCK6TdyqqzcDLy0OPe10IY4T8ctVdtynubg==} - engines: {node: '>=16.0.0'} - - '@smithy/util-utf8@2.3.0': - resolution: {integrity: sha512-R8Rdn8Hy72KKcebgLiv8jQcQkXoLMOGGv5uI1/k0l+snqkOzQ1R0ChUBCxWMlBsFMekWjq0wRudIweFs7sKT5A==} - engines: {node: '>=14.0.0'} - - '@smithy/util-utf8@3.0.0': - resolution: {integrity: sha512-rUeT12bxFnplYDe815GXbq/oixEGHfRFFtcTF3YdDi/JaENIM6aSYYLJydG83UNzLXeRI5K8abYd/8Sp/QM0kA==} - engines: {node: '>=16.0.0'} - - '@types/aws-lambda@8.10.140': - resolution: {integrity: sha512-4Dh3dk2TUcbdfHrX0Al90mNGJDvA9NBiTQPzbrjGi/dLxzKCGOYgT8YQ47jUKNFALkAJAadifq0pzyjIUlhVhg==} - - asynckit@0.4.0: - resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} - - axios@1.7.2: - resolution: {integrity: sha512-2A8QhOMrbomlDuiLeK9XibIBzuHeRcqqNOHp0Cyp5EoJ1IFDh+XZH3A6BkXtv0K4gFGCI0Y4BM7B1wOEi0Rmgw==} - - bowser@2.11.0: - resolution: {integrity: sha512-AlcaJBi/pqqJBIQ8U9Mcpc9i8Aqxn88Skv5d+xBX006BY5u8N3mGLHa5Lgppa7L/HfwgwLgZ6NYs+Ag6uUmJRA==} - - buffer-from@1.1.2: - resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} - - combined-stream@1.0.8: - resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} - engines: {node: '>= 0.8'} - - debug@4.3.5: - resolution: {integrity: sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg==} - engines: {node: '>=6.0'} - peerDependencies: - supports-color: '*' - peerDependenciesMeta: - supports-color: - optional: true - - delayed-stream@1.0.0: - resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} - engines: {node: '>=0.4.0'} - - drizzle-kit@0.22.8: - resolution: {integrity: sha512-VjI4wsJjk3hSqHSa3TwBf+uvH6M6pRHyxyoVbt935GUzP9tUR/BRZ+MhEJNgryqbzN2Za1KP0eJMTgKEPsalYQ==} - hasBin: true - - drizzle-orm@0.31.2: - resolution: {integrity: sha512-QnenevbnnAzmbNzQwbhklvIYrDE8YER8K7kSrAWQSV1YvFCdSQPzj+jzqRdTSsV2cDqSpQ0NXGyL1G9I43LDLg==} - peerDependencies: - '@aws-sdk/client-rds-data': '>=3' - '@cloudflare/workers-types': '>=3' - '@electric-sql/pglite': '>=0.1.1' - '@libsql/client': '*' - '@neondatabase/serverless': '>=0.1' - '@op-engineering/op-sqlite': '>=2' - '@opentelemetry/api': ^1.4.1 - '@planetscale/database': '>=1' - '@tidbcloud/serverless': '*' - '@types/better-sqlite3': '*' - '@types/pg': '*' - '@types/react': '>=18' - '@types/sql.js': '*' - '@vercel/postgres': '>=0.8.0' - '@xata.io/client': '*' - better-sqlite3: '>=7' - bun-types: '*' - expo-sqlite: '>=13.2.0' - knex: '*' - kysely: '*' - mysql2: '>=2' - pg: '>=8' - postgres: '>=3' - react: '>=18' - sql.js: '>=1' - sqlite3: '>=5' - peerDependenciesMeta: - '@aws-sdk/client-rds-data': - optional: true - '@cloudflare/workers-types': - optional: true - '@electric-sql/pglite': - optional: true - '@libsql/client': - optional: true - '@neondatabase/serverless': - optional: true - '@op-engineering/op-sqlite': - optional: true - '@opentelemetry/api': - optional: true - '@planetscale/database': - optional: true - '@tidbcloud/serverless': - optional: true - '@types/better-sqlite3': - optional: true - '@types/pg': - optional: true - '@types/react': - optional: true - '@types/sql.js': - optional: true - '@vercel/postgres': - optional: true - '@xata.io/client': - optional: true - better-sqlite3: - optional: true - bun-types: - optional: true - expo-sqlite: - optional: true - knex: - optional: true - kysely: - optional: true - mysql2: - optional: true - pg: - optional: true - postgres: - optional: true - react: - optional: true - sql.js: - optional: true - sqlite3: - optional: true - - esbuild-register@3.5.0: - resolution: {integrity: sha512-+4G/XmakeBAsvJuDugJvtyF1x+XJT4FMocynNpxrvEBViirpfUn2PgNpCHedfWhF4WokNsO/OvMKrmJOIJsI5A==} - peerDependencies: - esbuild: '>=0.12 <1' - - esbuild@0.18.20: - resolution: {integrity: sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==} - engines: {node: '>=12'} - hasBin: true - - esbuild@0.19.12: - resolution: {integrity: sha512-aARqgq8roFBj054KvQr5f1sFu0D65G+miZRCuJyJ0G13Zwx7vRar5Zhn2tkQNzIXcBrNVsv/8stehpj+GAjgbg==} - engines: {node: '>=12'} - hasBin: true - - fast-xml-parser@4.2.5: - resolution: {integrity: sha512-B9/wizE4WngqQftFPmdaMYlXoJlJOYxGQOanC77fq9k8+Z0v5dDSVh+3glErdIROP//s/jgb7ZuxKfB8nVyo0g==} - hasBin: true - - follow-redirects@1.15.6: - resolution: {integrity: sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==} - engines: {node: '>=4.0'} - peerDependencies: - debug: '*' - peerDependenciesMeta: - debug: - optional: true - - form-data@4.0.0: - resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==} - engines: {node: '>= 6'} - - get-tsconfig@4.7.5: - resolution: {integrity: sha512-ZCuZCnlqNzjb4QprAzXKdpp/gh6KTxSJuw3IBsPnV/7fV4NxC9ckB+vPTt8w7fJA0TaSD7c55BR47JD6MEDyDw==} - - lodash.merge@4.6.2: - resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} - - mime-db@1.52.0: - resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} - engines: {node: '>= 0.6'} - - mime-types@2.1.35: - resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} - engines: {node: '>= 0.6'} - - ms@2.1.2: - resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} - - postgres@3.4.4: - resolution: {integrity: sha512-IbyN+9KslkqcXa8AO9fxpk97PA4pzewvpi2B3Dwy9u4zpV32QicaEdgmF3eSQUzdRk7ttDHQejNgAEr4XoeH4A==} - engines: {node: '>=12'} - - proxy-from-env@1.1.0: - resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==} - - resolve-pkg-maps@1.0.0: - resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==} - - source-map-support@0.5.21: - resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==} - - source-map@0.6.1: - resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} - engines: {node: '>=0.10.0'} - - strnum@1.0.5: - resolution: {integrity: sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==} - - tslib@2.6.3: - resolution: {integrity: sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==} - - typescript@5.5.2: - resolution: {integrity: sha512-NcRtPEOsPFFWjobJEtfihkLCZCXZt/os3zf8nTxjVH3RvTSxjrCamJpbExGvYOF+tFHc3pA65qpdwPbzjohhew==} - engines: {node: '>=14.17'} - hasBin: true - - uuid@9.0.1: - resolution: {integrity: sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==} - hasBin: true - -snapshots: - - '@aws-crypto/sha256-browser@5.2.0': - dependencies: - '@aws-crypto/sha256-js': 5.2.0 - '@aws-crypto/supports-web-crypto': 5.2.0 - '@aws-crypto/util': 5.2.0 - '@aws-sdk/types': 3.598.0 - '@aws-sdk/util-locate-window': 3.568.0 - '@smithy/util-utf8': 2.3.0 - tslib: 2.6.3 - - '@aws-crypto/sha256-js@5.2.0': - dependencies: - '@aws-crypto/util': 5.2.0 - '@aws-sdk/types': 3.598.0 - tslib: 2.6.3 - - '@aws-crypto/supports-web-crypto@5.2.0': - dependencies: - tslib: 2.6.3 - - '@aws-crypto/util@5.2.0': - dependencies: - '@aws-sdk/types': 3.598.0 - '@smithy/util-utf8': 2.3.0 - tslib: 2.6.3 - - '@aws-lambda-powertools/commons@2.3.0': {} - - '@aws-lambda-powertools/logger@2.3.0': - dependencies: - '@aws-lambda-powertools/commons': 2.3.0 - lodash.merge: 4.6.2 - - '@aws-sdk/client-cognito-identity@3.606.0': - dependencies: - '@aws-crypto/sha256-browser': 5.2.0 - '@aws-crypto/sha256-js': 5.2.0 - '@aws-sdk/client-sso-oidc': 3.606.0(@aws-sdk/client-sts@3.606.0) - '@aws-sdk/client-sts': 3.606.0 - '@aws-sdk/core': 3.598.0 - '@aws-sdk/credential-provider-node': 3.600.0(@aws-sdk/client-sso-oidc@3.606.0(@aws-sdk/client-sts@3.606.0))(@aws-sdk/client-sts@3.606.0) - '@aws-sdk/middleware-host-header': 3.598.0 - '@aws-sdk/middleware-logger': 3.598.0 - '@aws-sdk/middleware-recursion-detection': 3.598.0 - '@aws-sdk/middleware-user-agent': 3.598.0 - '@aws-sdk/region-config-resolver': 3.598.0 - '@aws-sdk/types': 3.598.0 - '@aws-sdk/util-endpoints': 3.598.0 - '@aws-sdk/util-user-agent-browser': 3.598.0 - '@aws-sdk/util-user-agent-node': 3.598.0 - '@smithy/config-resolver': 3.0.4 - '@smithy/core': 2.2.4 - '@smithy/fetch-http-handler': 3.2.0 - '@smithy/hash-node': 3.0.3 - '@smithy/invalid-dependency': 3.0.3 - '@smithy/middleware-content-length': 3.0.3 - '@smithy/middleware-endpoint': 3.0.4 - '@smithy/middleware-retry': 3.0.7 - '@smithy/middleware-serde': 3.0.3 - '@smithy/middleware-stack': 3.0.3 - '@smithy/node-config-provider': 3.1.3 - '@smithy/node-http-handler': 3.1.1 - '@smithy/protocol-http': 4.0.3 - '@smithy/smithy-client': 3.1.5 - '@smithy/types': 3.3.0 - '@smithy/url-parser': 3.0.3 - '@smithy/util-base64': 3.0.0 - '@smithy/util-body-length-browser': 3.0.0 - '@smithy/util-body-length-node': 3.0.0 - '@smithy/util-defaults-mode-browser': 3.0.7 - '@smithy/util-defaults-mode-node': 3.0.7 - '@smithy/util-endpoints': 2.0.4 - '@smithy/util-middleware': 3.0.3 - '@smithy/util-retry': 3.0.3 - '@smithy/util-utf8': 3.0.0 - tslib: 2.6.3 - transitivePeerDependencies: - - aws-crt - - '@aws-sdk/client-sso-oidc@3.606.0(@aws-sdk/client-sts@3.606.0)': - dependencies: - '@aws-crypto/sha256-browser': 5.2.0 - '@aws-crypto/sha256-js': 5.2.0 - '@aws-sdk/client-sts': 3.606.0 - '@aws-sdk/core': 3.598.0 - '@aws-sdk/credential-provider-node': 3.600.0(@aws-sdk/client-sso-oidc@3.606.0(@aws-sdk/client-sts@3.606.0))(@aws-sdk/client-sts@3.606.0) - '@aws-sdk/middleware-host-header': 3.598.0 - '@aws-sdk/middleware-logger': 3.598.0 - '@aws-sdk/middleware-recursion-detection': 3.598.0 - '@aws-sdk/middleware-user-agent': 3.598.0 - '@aws-sdk/region-config-resolver': 3.598.0 - '@aws-sdk/types': 3.598.0 - '@aws-sdk/util-endpoints': 3.598.0 - '@aws-sdk/util-user-agent-browser': 3.598.0 - '@aws-sdk/util-user-agent-node': 3.598.0 - '@smithy/config-resolver': 3.0.4 - '@smithy/core': 2.2.4 - '@smithy/fetch-http-handler': 3.2.0 - '@smithy/hash-node': 3.0.3 - '@smithy/invalid-dependency': 3.0.3 - '@smithy/middleware-content-length': 3.0.3 - '@smithy/middleware-endpoint': 3.0.4 - '@smithy/middleware-retry': 3.0.7 - '@smithy/middleware-serde': 3.0.3 - '@smithy/middleware-stack': 3.0.3 - '@smithy/node-config-provider': 3.1.3 - '@smithy/node-http-handler': 3.1.1 - '@smithy/protocol-http': 4.0.3 - '@smithy/smithy-client': 3.1.5 - '@smithy/types': 3.3.0 - '@smithy/url-parser': 3.0.3 - '@smithy/util-base64': 3.0.0 - '@smithy/util-body-length-browser': 3.0.0 - '@smithy/util-body-length-node': 3.0.0 - '@smithy/util-defaults-mode-browser': 3.0.7 - '@smithy/util-defaults-mode-node': 3.0.7 - '@smithy/util-endpoints': 2.0.4 - '@smithy/util-middleware': 3.0.3 - '@smithy/util-retry': 3.0.3 - '@smithy/util-utf8': 3.0.0 - tslib: 2.6.3 - transitivePeerDependencies: - - aws-crt - - '@aws-sdk/client-sso@3.598.0': - dependencies: - '@aws-crypto/sha256-browser': 5.2.0 - '@aws-crypto/sha256-js': 5.2.0 - '@aws-sdk/core': 3.598.0 - '@aws-sdk/middleware-host-header': 3.598.0 - '@aws-sdk/middleware-logger': 3.598.0 - '@aws-sdk/middleware-recursion-detection': 3.598.0 - '@aws-sdk/middleware-user-agent': 3.598.0 - '@aws-sdk/region-config-resolver': 3.598.0 - '@aws-sdk/types': 3.598.0 - '@aws-sdk/util-endpoints': 3.598.0 - '@aws-sdk/util-user-agent-browser': 3.598.0 - '@aws-sdk/util-user-agent-node': 3.598.0 - '@smithy/config-resolver': 3.0.4 - '@smithy/core': 2.2.4 - '@smithy/fetch-http-handler': 3.2.0 - '@smithy/hash-node': 3.0.3 - '@smithy/invalid-dependency': 3.0.3 - '@smithy/middleware-content-length': 3.0.3 - '@smithy/middleware-endpoint': 3.0.4 - '@smithy/middleware-retry': 3.0.7 - '@smithy/middleware-serde': 3.0.3 - '@smithy/middleware-stack': 3.0.3 - '@smithy/node-config-provider': 3.1.3 - '@smithy/node-http-handler': 3.1.1 - '@smithy/protocol-http': 4.0.3 - '@smithy/smithy-client': 3.1.5 - '@smithy/types': 3.3.0 - '@smithy/url-parser': 3.0.3 - '@smithy/util-base64': 3.0.0 - '@smithy/util-body-length-browser': 3.0.0 - '@smithy/util-body-length-node': 3.0.0 - '@smithy/util-defaults-mode-browser': 3.0.7 - '@smithy/util-defaults-mode-node': 3.0.7 - '@smithy/util-endpoints': 2.0.4 - '@smithy/util-middleware': 3.0.3 - '@smithy/util-retry': 3.0.3 - '@smithy/util-utf8': 3.0.0 - tslib: 2.6.3 - transitivePeerDependencies: - - aws-crt - - '@aws-sdk/client-sts@3.606.0': - dependencies: - '@aws-crypto/sha256-browser': 5.2.0 - '@aws-crypto/sha256-js': 5.2.0 - '@aws-sdk/client-sso-oidc': 3.606.0(@aws-sdk/client-sts@3.606.0) - '@aws-sdk/core': 3.598.0 - '@aws-sdk/credential-provider-node': 3.600.0(@aws-sdk/client-sso-oidc@3.606.0(@aws-sdk/client-sts@3.606.0))(@aws-sdk/client-sts@3.606.0) - '@aws-sdk/middleware-host-header': 3.598.0 - '@aws-sdk/middleware-logger': 3.598.0 - '@aws-sdk/middleware-recursion-detection': 3.598.0 - '@aws-sdk/middleware-user-agent': 3.598.0 - '@aws-sdk/region-config-resolver': 3.598.0 - '@aws-sdk/types': 3.598.0 - '@aws-sdk/util-endpoints': 3.598.0 - '@aws-sdk/util-user-agent-browser': 3.598.0 - '@aws-sdk/util-user-agent-node': 3.598.0 - '@smithy/config-resolver': 3.0.4 - '@smithy/core': 2.2.4 - '@smithy/fetch-http-handler': 3.2.0 - '@smithy/hash-node': 3.0.3 - '@smithy/invalid-dependency': 3.0.3 - '@smithy/middleware-content-length': 3.0.3 - '@smithy/middleware-endpoint': 3.0.4 - '@smithy/middleware-retry': 3.0.7 - '@smithy/middleware-serde': 3.0.3 - '@smithy/middleware-stack': 3.0.3 - '@smithy/node-config-provider': 3.1.3 - '@smithy/node-http-handler': 3.1.1 - '@smithy/protocol-http': 4.0.3 - '@smithy/smithy-client': 3.1.5 - '@smithy/types': 3.3.0 - '@smithy/url-parser': 3.0.3 - '@smithy/util-base64': 3.0.0 - '@smithy/util-body-length-browser': 3.0.0 - '@smithy/util-body-length-node': 3.0.0 - '@smithy/util-defaults-mode-browser': 3.0.7 - '@smithy/util-defaults-mode-node': 3.0.7 - '@smithy/util-endpoints': 2.0.4 - '@smithy/util-middleware': 3.0.3 - '@smithy/util-retry': 3.0.3 - '@smithy/util-utf8': 3.0.0 - tslib: 2.6.3 - transitivePeerDependencies: - - aws-crt - - '@aws-sdk/core@3.598.0': - dependencies: - '@smithy/core': 2.2.4 - '@smithy/protocol-http': 4.0.3 - '@smithy/signature-v4': 3.1.2 - '@smithy/smithy-client': 3.1.5 - '@smithy/types': 3.3.0 - fast-xml-parser: 4.2.5 - tslib: 2.6.3 - - '@aws-sdk/credential-provider-cognito-identity@3.606.0': - dependencies: - '@aws-sdk/client-cognito-identity': 3.606.0 - '@aws-sdk/types': 3.598.0 - '@smithy/property-provider': 3.1.3 - '@smithy/types': 3.3.0 - tslib: 2.6.3 - transitivePeerDependencies: - - aws-crt - - '@aws-sdk/credential-provider-env@3.598.0': - dependencies: - '@aws-sdk/types': 3.598.0 - '@smithy/property-provider': 3.1.3 - '@smithy/types': 3.3.0 - tslib: 2.6.3 - - '@aws-sdk/credential-provider-http@3.598.0': - dependencies: - '@aws-sdk/types': 3.598.0 - '@smithy/fetch-http-handler': 3.2.0 - '@smithy/node-http-handler': 3.1.1 - '@smithy/property-provider': 3.1.3 - '@smithy/protocol-http': 4.0.3 - '@smithy/smithy-client': 3.1.5 - '@smithy/types': 3.3.0 - '@smithy/util-stream': 3.0.5 - tslib: 2.6.3 - - '@aws-sdk/credential-provider-ini@3.598.0(@aws-sdk/client-sso-oidc@3.606.0(@aws-sdk/client-sts@3.606.0))(@aws-sdk/client-sts@3.606.0)': - dependencies: - '@aws-sdk/client-sts': 3.606.0 - '@aws-sdk/credential-provider-env': 3.598.0 - '@aws-sdk/credential-provider-http': 3.598.0 - '@aws-sdk/credential-provider-process': 3.598.0 - '@aws-sdk/credential-provider-sso': 3.598.0(@aws-sdk/client-sso-oidc@3.606.0(@aws-sdk/client-sts@3.606.0)) - '@aws-sdk/credential-provider-web-identity': 3.598.0(@aws-sdk/client-sts@3.606.0) - '@aws-sdk/types': 3.598.0 - '@smithy/credential-provider-imds': 3.1.3 - '@smithy/property-provider': 3.1.3 - '@smithy/shared-ini-file-loader': 3.1.3 - '@smithy/types': 3.3.0 - tslib: 2.6.3 - transitivePeerDependencies: - - '@aws-sdk/client-sso-oidc' - - aws-crt - - '@aws-sdk/credential-provider-node@3.600.0(@aws-sdk/client-sso-oidc@3.606.0(@aws-sdk/client-sts@3.606.0))(@aws-sdk/client-sts@3.606.0)': - dependencies: - '@aws-sdk/credential-provider-env': 3.598.0 - '@aws-sdk/credential-provider-http': 3.598.0 - '@aws-sdk/credential-provider-ini': 3.598.0(@aws-sdk/client-sso-oidc@3.606.0(@aws-sdk/client-sts@3.606.0))(@aws-sdk/client-sts@3.606.0) - '@aws-sdk/credential-provider-process': 3.598.0 - '@aws-sdk/credential-provider-sso': 3.598.0(@aws-sdk/client-sso-oidc@3.606.0(@aws-sdk/client-sts@3.606.0)) - '@aws-sdk/credential-provider-web-identity': 3.598.0(@aws-sdk/client-sts@3.606.0) - '@aws-sdk/types': 3.598.0 - '@smithy/credential-provider-imds': 3.1.3 - '@smithy/property-provider': 3.1.3 - '@smithy/shared-ini-file-loader': 3.1.3 - '@smithy/types': 3.3.0 - tslib: 2.6.3 - transitivePeerDependencies: - - '@aws-sdk/client-sso-oidc' - - '@aws-sdk/client-sts' - - aws-crt - - '@aws-sdk/credential-provider-process@3.598.0': - dependencies: - '@aws-sdk/types': 3.598.0 - '@smithy/property-provider': 3.1.3 - '@smithy/shared-ini-file-loader': 3.1.3 - '@smithy/types': 3.3.0 - tslib: 2.6.3 - - '@aws-sdk/credential-provider-sso@3.598.0(@aws-sdk/client-sso-oidc@3.606.0(@aws-sdk/client-sts@3.606.0))': - dependencies: - '@aws-sdk/client-sso': 3.598.0 - '@aws-sdk/token-providers': 3.598.0(@aws-sdk/client-sso-oidc@3.606.0(@aws-sdk/client-sts@3.606.0)) - '@aws-sdk/types': 3.598.0 - '@smithy/property-provider': 3.1.3 - '@smithy/shared-ini-file-loader': 3.1.3 - '@smithy/types': 3.3.0 - tslib: 2.6.3 - transitivePeerDependencies: - - '@aws-sdk/client-sso-oidc' - - aws-crt - - '@aws-sdk/credential-provider-web-identity@3.598.0(@aws-sdk/client-sts@3.606.0)': - dependencies: - '@aws-sdk/client-sts': 3.606.0 - '@aws-sdk/types': 3.598.0 - '@smithy/property-provider': 3.1.3 - '@smithy/types': 3.3.0 - tslib: 2.6.3 - - '@aws-sdk/credential-providers@3.606.0(@aws-sdk/client-sso-oidc@3.606.0(@aws-sdk/client-sts@3.606.0))': - dependencies: - '@aws-sdk/client-cognito-identity': 3.606.0 - '@aws-sdk/client-sso': 3.598.0 - '@aws-sdk/client-sts': 3.606.0 - '@aws-sdk/credential-provider-cognito-identity': 3.606.0 - '@aws-sdk/credential-provider-env': 3.598.0 - '@aws-sdk/credential-provider-http': 3.598.0 - '@aws-sdk/credential-provider-ini': 3.598.0(@aws-sdk/client-sso-oidc@3.606.0(@aws-sdk/client-sts@3.606.0))(@aws-sdk/client-sts@3.606.0) - '@aws-sdk/credential-provider-node': 3.600.0(@aws-sdk/client-sso-oidc@3.606.0(@aws-sdk/client-sts@3.606.0))(@aws-sdk/client-sts@3.606.0) - '@aws-sdk/credential-provider-process': 3.598.0 - '@aws-sdk/credential-provider-sso': 3.598.0(@aws-sdk/client-sso-oidc@3.606.0(@aws-sdk/client-sts@3.606.0)) - '@aws-sdk/credential-provider-web-identity': 3.598.0(@aws-sdk/client-sts@3.606.0) - '@aws-sdk/types': 3.598.0 - '@smithy/credential-provider-imds': 3.1.3 - '@smithy/property-provider': 3.1.3 - '@smithy/types': 3.3.0 - tslib: 2.6.3 - transitivePeerDependencies: - - '@aws-sdk/client-sso-oidc' - - aws-crt - - '@aws-sdk/middleware-host-header@3.598.0': - dependencies: - '@aws-sdk/types': 3.598.0 - '@smithy/protocol-http': 4.0.3 - '@smithy/types': 3.3.0 - tslib: 2.6.3 - - '@aws-sdk/middleware-logger@3.598.0': - dependencies: - '@aws-sdk/types': 3.598.0 - '@smithy/types': 3.3.0 - tslib: 2.6.3 - - '@aws-sdk/middleware-recursion-detection@3.598.0': - dependencies: - '@aws-sdk/types': 3.598.0 - '@smithy/protocol-http': 4.0.3 - '@smithy/types': 3.3.0 - tslib: 2.6.3 - - '@aws-sdk/middleware-user-agent@3.598.0': - dependencies: - '@aws-sdk/types': 3.598.0 - '@aws-sdk/util-endpoints': 3.598.0 - '@smithy/protocol-http': 4.0.3 - '@smithy/types': 3.3.0 - tslib: 2.6.3 - - '@aws-sdk/region-config-resolver@3.598.0': - dependencies: - '@aws-sdk/types': 3.598.0 - '@smithy/node-config-provider': 3.1.3 - '@smithy/types': 3.3.0 - '@smithy/util-config-provider': 3.0.0 - '@smithy/util-middleware': 3.0.3 - tslib: 2.6.3 - - '@aws-sdk/token-providers@3.598.0(@aws-sdk/client-sso-oidc@3.606.0(@aws-sdk/client-sts@3.606.0))': - dependencies: - '@aws-sdk/client-sso-oidc': 3.606.0(@aws-sdk/client-sts@3.606.0) - '@aws-sdk/types': 3.598.0 - '@smithy/property-provider': 3.1.3 - '@smithy/shared-ini-file-loader': 3.1.3 - '@smithy/types': 3.3.0 - tslib: 2.6.3 - - '@aws-sdk/types@3.598.0': - dependencies: - '@smithy/types': 3.3.0 - tslib: 2.6.3 - - '@aws-sdk/util-create-request@3.598.0': - dependencies: - '@aws-sdk/types': 3.598.0 - '@smithy/middleware-stack': 3.0.3 - '@smithy/smithy-client': 3.1.5 - '@smithy/types': 3.3.0 - tslib: 2.6.3 - - '@aws-sdk/util-endpoints@3.598.0': - dependencies: - '@aws-sdk/types': 3.598.0 - '@smithy/types': 3.3.0 - '@smithy/util-endpoints': 2.0.4 - tslib: 2.6.3 - - '@aws-sdk/util-locate-window@3.568.0': - dependencies: - tslib: 2.6.3 - - '@aws-sdk/util-user-agent-browser@3.598.0': - dependencies: - '@aws-sdk/types': 3.598.0 - '@smithy/types': 3.3.0 - bowser: 2.11.0 - tslib: 2.6.3 - - '@aws-sdk/util-user-agent-node@3.598.0': - dependencies: - '@aws-sdk/types': 3.598.0 - '@smithy/node-config-provider': 3.1.3 - '@smithy/types': 3.3.0 - tslib: 2.6.3 - - '@esbuild-kit/core-utils@3.3.2': - dependencies: - esbuild: 0.18.20 - source-map-support: 0.5.21 - - '@esbuild-kit/esm-loader@2.6.5': - dependencies: - '@esbuild-kit/core-utils': 3.3.2 - get-tsconfig: 4.7.5 - - '@esbuild/aix-ppc64@0.19.12': - optional: true - - '@esbuild/android-arm64@0.18.20': - optional: true - - '@esbuild/android-arm64@0.19.12': - optional: true - - '@esbuild/android-arm@0.18.20': - optional: true - - '@esbuild/android-arm@0.19.12': - optional: true - - '@esbuild/android-x64@0.18.20': - optional: true - - '@esbuild/android-x64@0.19.12': - optional: true - - '@esbuild/darwin-arm64@0.18.20': - optional: true - - '@esbuild/darwin-arm64@0.19.12': - optional: true - - '@esbuild/darwin-x64@0.18.20': - optional: true - - '@esbuild/darwin-x64@0.19.12': - optional: true - - '@esbuild/freebsd-arm64@0.18.20': - optional: true - - '@esbuild/freebsd-arm64@0.19.12': - optional: true - - '@esbuild/freebsd-x64@0.18.20': - optional: true - - '@esbuild/freebsd-x64@0.19.12': - optional: true - - '@esbuild/linux-arm64@0.18.20': - optional: true - - '@esbuild/linux-arm64@0.19.12': - optional: true - - '@esbuild/linux-arm@0.18.20': - optional: true - - '@esbuild/linux-arm@0.19.12': - optional: true - - '@esbuild/linux-ia32@0.18.20': - optional: true - - '@esbuild/linux-ia32@0.19.12': - optional: true - - '@esbuild/linux-loong64@0.18.20': - optional: true - - '@esbuild/linux-loong64@0.19.12': - optional: true - - '@esbuild/linux-mips64el@0.18.20': - optional: true - - '@esbuild/linux-mips64el@0.19.12': - optional: true - - '@esbuild/linux-ppc64@0.18.20': - optional: true - - '@esbuild/linux-ppc64@0.19.12': - optional: true - - '@esbuild/linux-riscv64@0.18.20': - optional: true - - '@esbuild/linux-riscv64@0.19.12': - optional: true - - '@esbuild/linux-s390x@0.18.20': - optional: true - - '@esbuild/linux-s390x@0.19.12': - optional: true - - '@esbuild/linux-x64@0.18.20': - optional: true - - '@esbuild/linux-x64@0.19.12': - optional: true - - '@esbuild/netbsd-x64@0.18.20': - optional: true - - '@esbuild/netbsd-x64@0.19.12': - optional: true - - '@esbuild/openbsd-x64@0.18.20': - optional: true - - '@esbuild/openbsd-x64@0.19.12': - optional: true - - '@esbuild/sunos-x64@0.18.20': - optional: true - - '@esbuild/sunos-x64@0.19.12': - optional: true - - '@esbuild/win32-arm64@0.18.20': - optional: true - - '@esbuild/win32-arm64@0.19.12': - optional: true - - '@esbuild/win32-ia32@0.18.20': - optional: true - - '@esbuild/win32-ia32@0.19.12': - optional: true - - '@esbuild/win32-x64@0.18.20': - optional: true - - '@esbuild/win32-x64@0.19.12': - optional: true - - '@smithy/abort-controller@3.1.1': - dependencies: - '@smithy/types': 3.3.0 - tslib: 2.6.3 - - '@smithy/config-resolver@3.0.4': - dependencies: - '@smithy/node-config-provider': 3.1.3 - '@smithy/types': 3.3.0 - '@smithy/util-config-provider': 3.0.0 - '@smithy/util-middleware': 3.0.3 - tslib: 2.6.3 - - '@smithy/core@2.2.4': - dependencies: - '@smithy/middleware-endpoint': 3.0.4 - '@smithy/middleware-retry': 3.0.7 - '@smithy/middleware-serde': 3.0.3 - '@smithy/protocol-http': 4.0.3 - '@smithy/smithy-client': 3.1.5 - '@smithy/types': 3.3.0 - '@smithy/util-middleware': 3.0.3 - tslib: 2.6.3 - - '@smithy/credential-provider-imds@3.1.3': - dependencies: - '@smithy/node-config-provider': 3.1.3 - '@smithy/property-provider': 3.1.3 - '@smithy/types': 3.3.0 - '@smithy/url-parser': 3.0.3 - tslib: 2.6.3 - - '@smithy/fetch-http-handler@3.2.0': - dependencies: - '@smithy/protocol-http': 4.0.3 - '@smithy/querystring-builder': 3.0.3 - '@smithy/types': 3.3.0 - '@smithy/util-base64': 3.0.0 - tslib: 2.6.3 - - '@smithy/hash-node@3.0.3': - dependencies: - '@smithy/types': 3.3.0 - '@smithy/util-buffer-from': 3.0.0 - '@smithy/util-utf8': 3.0.0 - tslib: 2.6.3 - - '@smithy/invalid-dependency@3.0.3': - dependencies: - '@smithy/types': 3.3.0 - tslib: 2.6.3 - - '@smithy/is-array-buffer@2.2.0': - dependencies: - tslib: 2.6.3 - - '@smithy/is-array-buffer@3.0.0': - dependencies: - tslib: 2.6.3 - - '@smithy/middleware-content-length@3.0.3': - dependencies: - '@smithy/protocol-http': 4.0.3 - '@smithy/types': 3.3.0 - tslib: 2.6.3 - - '@smithy/middleware-endpoint@3.0.4': - dependencies: - '@smithy/middleware-serde': 3.0.3 - '@smithy/node-config-provider': 3.1.3 - '@smithy/shared-ini-file-loader': 3.1.3 - '@smithy/types': 3.3.0 - '@smithy/url-parser': 3.0.3 - '@smithy/util-middleware': 3.0.3 - tslib: 2.6.3 - - '@smithy/middleware-retry@3.0.7': - dependencies: - '@smithy/node-config-provider': 3.1.3 - '@smithy/protocol-http': 4.0.3 - '@smithy/service-error-classification': 3.0.3 - '@smithy/smithy-client': 3.1.5 - '@smithy/types': 3.3.0 - '@smithy/util-middleware': 3.0.3 - '@smithy/util-retry': 3.0.3 - tslib: 2.6.3 - uuid: 9.0.1 - - '@smithy/middleware-serde@3.0.3': - dependencies: - '@smithy/types': 3.3.0 - tslib: 2.6.3 - - '@smithy/middleware-stack@3.0.3': - dependencies: - '@smithy/types': 3.3.0 - tslib: 2.6.3 - - '@smithy/node-config-provider@3.1.3': - dependencies: - '@smithy/property-provider': 3.1.3 - '@smithy/shared-ini-file-loader': 3.1.3 - '@smithy/types': 3.3.0 - tslib: 2.6.3 - - '@smithy/node-http-handler@3.1.1': - dependencies: - '@smithy/abort-controller': 3.1.1 - '@smithy/protocol-http': 4.0.3 - '@smithy/querystring-builder': 3.0.3 - '@smithy/types': 3.3.0 - tslib: 2.6.3 - - '@smithy/property-provider@3.1.3': - dependencies: - '@smithy/types': 3.3.0 - tslib: 2.6.3 - - '@smithy/protocol-http@4.0.3': - dependencies: - '@smithy/types': 3.3.0 - tslib: 2.6.3 - - '@smithy/querystring-builder@3.0.3': - dependencies: - '@smithy/types': 3.3.0 - '@smithy/util-uri-escape': 3.0.0 - tslib: 2.6.3 - - '@smithy/querystring-parser@3.0.3': - dependencies: - '@smithy/types': 3.3.0 - tslib: 2.6.3 - - '@smithy/service-error-classification@3.0.3': - dependencies: - '@smithy/types': 3.3.0 - - '@smithy/shared-ini-file-loader@3.1.3': - dependencies: - '@smithy/types': 3.3.0 - tslib: 2.6.3 - - '@smithy/signature-v4@3.1.2': - dependencies: - '@smithy/is-array-buffer': 3.0.0 - '@smithy/types': 3.3.0 - '@smithy/util-hex-encoding': 3.0.0 - '@smithy/util-middleware': 3.0.3 - '@smithy/util-uri-escape': 3.0.0 - '@smithy/util-utf8': 3.0.0 - tslib: 2.6.3 - - '@smithy/smithy-client@3.1.5': - dependencies: - '@smithy/middleware-endpoint': 3.0.4 - '@smithy/middleware-stack': 3.0.3 - '@smithy/protocol-http': 4.0.3 - '@smithy/types': 3.3.0 - '@smithy/util-stream': 3.0.5 - tslib: 2.6.3 - - '@smithy/types@3.3.0': - dependencies: - tslib: 2.6.3 - - '@smithy/url-parser@3.0.3': - dependencies: - '@smithy/querystring-parser': 3.0.3 - '@smithy/types': 3.3.0 - tslib: 2.6.3 - - '@smithy/util-base64@3.0.0': - dependencies: - '@smithy/util-buffer-from': 3.0.0 - '@smithy/util-utf8': 3.0.0 - tslib: 2.6.3 - - '@smithy/util-body-length-browser@3.0.0': - dependencies: - tslib: 2.6.3 - - '@smithy/util-body-length-node@3.0.0': - dependencies: - tslib: 2.6.3 - - '@smithy/util-buffer-from@2.2.0': - dependencies: - '@smithy/is-array-buffer': 2.2.0 - tslib: 2.6.3 - - '@smithy/util-buffer-from@3.0.0': - dependencies: - '@smithy/is-array-buffer': 3.0.0 - tslib: 2.6.3 - - '@smithy/util-config-provider@3.0.0': - dependencies: - tslib: 2.6.3 - - '@smithy/util-defaults-mode-browser@3.0.7': - dependencies: - '@smithy/property-provider': 3.1.3 - '@smithy/smithy-client': 3.1.5 - '@smithy/types': 3.3.0 - bowser: 2.11.0 - tslib: 2.6.3 - - '@smithy/util-defaults-mode-node@3.0.7': - dependencies: - '@smithy/config-resolver': 3.0.4 - '@smithy/credential-provider-imds': 3.1.3 - '@smithy/node-config-provider': 3.1.3 - '@smithy/property-provider': 3.1.3 - '@smithy/smithy-client': 3.1.5 - '@smithy/types': 3.3.0 - tslib: 2.6.3 - - '@smithy/util-endpoints@2.0.4': - dependencies: - '@smithy/node-config-provider': 3.1.3 - '@smithy/types': 3.3.0 - tslib: 2.6.3 - - '@smithy/util-hex-encoding@3.0.0': - dependencies: - tslib: 2.6.3 - - '@smithy/util-middleware@3.0.3': - dependencies: - '@smithy/types': 3.3.0 - tslib: 2.6.3 - - '@smithy/util-retry@3.0.3': - dependencies: - '@smithy/service-error-classification': 3.0.3 - '@smithy/types': 3.3.0 - tslib: 2.6.3 - - '@smithy/util-stream@3.0.5': - dependencies: - '@smithy/fetch-http-handler': 3.2.0 - '@smithy/node-http-handler': 3.1.1 - '@smithy/types': 3.3.0 - '@smithy/util-base64': 3.0.0 - '@smithy/util-buffer-from': 3.0.0 - '@smithy/util-hex-encoding': 3.0.0 - '@smithy/util-utf8': 3.0.0 - tslib: 2.6.3 - - '@smithy/util-uri-escape@3.0.0': - dependencies: - tslib: 2.6.3 - - '@smithy/util-utf8@2.3.0': - dependencies: - '@smithy/util-buffer-from': 2.2.0 - tslib: 2.6.3 - - '@smithy/util-utf8@3.0.0': - dependencies: - '@smithy/util-buffer-from': 3.0.0 - tslib: 2.6.3 - - '@types/aws-lambda@8.10.140': {} - - asynckit@0.4.0: {} - - axios@1.7.2: - dependencies: - follow-redirects: 1.15.6 - form-data: 4.0.0 - proxy-from-env: 1.1.0 - transitivePeerDependencies: - - debug - - bowser@2.11.0: {} - - buffer-from@1.1.2: {} - - combined-stream@1.0.8: - dependencies: - delayed-stream: 1.0.0 - - debug@4.3.5: - dependencies: - ms: 2.1.2 - - delayed-stream@1.0.0: {} - - drizzle-kit@0.22.8: - dependencies: - '@esbuild-kit/esm-loader': 2.6.5 - esbuild: 0.19.12 - esbuild-register: 3.5.0(esbuild@0.19.12) - transitivePeerDependencies: - - supports-color - - drizzle-orm@0.31.2(postgres@3.4.4): - optionalDependencies: - postgres: 3.4.4 - - esbuild-register@3.5.0(esbuild@0.19.12): - dependencies: - debug: 4.3.5 - esbuild: 0.19.12 - transitivePeerDependencies: - - supports-color - - esbuild@0.18.20: - optionalDependencies: - '@esbuild/android-arm': 0.18.20 - '@esbuild/android-arm64': 0.18.20 - '@esbuild/android-x64': 0.18.20 - '@esbuild/darwin-arm64': 0.18.20 - '@esbuild/darwin-x64': 0.18.20 - '@esbuild/freebsd-arm64': 0.18.20 - '@esbuild/freebsd-x64': 0.18.20 - '@esbuild/linux-arm': 0.18.20 - '@esbuild/linux-arm64': 0.18.20 - '@esbuild/linux-ia32': 0.18.20 - '@esbuild/linux-loong64': 0.18.20 - '@esbuild/linux-mips64el': 0.18.20 - '@esbuild/linux-ppc64': 0.18.20 - '@esbuild/linux-riscv64': 0.18.20 - '@esbuild/linux-s390x': 0.18.20 - '@esbuild/linux-x64': 0.18.20 - '@esbuild/netbsd-x64': 0.18.20 - '@esbuild/openbsd-x64': 0.18.20 - '@esbuild/sunos-x64': 0.18.20 - '@esbuild/win32-arm64': 0.18.20 - '@esbuild/win32-ia32': 0.18.20 - '@esbuild/win32-x64': 0.18.20 - - esbuild@0.19.12: - optionalDependencies: - '@esbuild/aix-ppc64': 0.19.12 - '@esbuild/android-arm': 0.19.12 - '@esbuild/android-arm64': 0.19.12 - '@esbuild/android-x64': 0.19.12 - '@esbuild/darwin-arm64': 0.19.12 - '@esbuild/darwin-x64': 0.19.12 - '@esbuild/freebsd-arm64': 0.19.12 - '@esbuild/freebsd-x64': 0.19.12 - '@esbuild/linux-arm': 0.19.12 - '@esbuild/linux-arm64': 0.19.12 - '@esbuild/linux-ia32': 0.19.12 - '@esbuild/linux-loong64': 0.19.12 - '@esbuild/linux-mips64el': 0.19.12 - '@esbuild/linux-ppc64': 0.19.12 - '@esbuild/linux-riscv64': 0.19.12 - '@esbuild/linux-s390x': 0.19.12 - '@esbuild/linux-x64': 0.19.12 - '@esbuild/netbsd-x64': 0.19.12 - '@esbuild/openbsd-x64': 0.19.12 - '@esbuild/sunos-x64': 0.19.12 - '@esbuild/win32-arm64': 0.19.12 - '@esbuild/win32-ia32': 0.19.12 - '@esbuild/win32-x64': 0.19.12 - - fast-xml-parser@4.2.5: - dependencies: - strnum: 1.0.5 - - follow-redirects@1.15.6: {} - - form-data@4.0.0: - dependencies: - asynckit: 0.4.0 - combined-stream: 1.0.8 - mime-types: 2.1.35 - - get-tsconfig@4.7.5: - dependencies: - resolve-pkg-maps: 1.0.0 - - lodash.merge@4.6.2: {} - - mime-db@1.52.0: {} - - mime-types@2.1.35: - dependencies: - mime-db: 1.52.0 - - ms@2.1.2: {} - - postgres@3.4.4: {} - - proxy-from-env@1.1.0: {} - - resolve-pkg-maps@1.0.0: {} - - source-map-support@0.5.21: - dependencies: - buffer-from: 1.1.2 - source-map: 0.6.1 - - source-map@0.6.1: {} - - strnum@1.0.5: {} - - tslib@2.6.3: {} - - typescript@5.5.2: {} - - uuid@9.0.1: {} diff --git a/backend/sst.config.ts b/backend/sst.config.ts deleted file mode 100644 index 86dfd0a..0000000 --- a/backend/sst.config.ts +++ /dev/null @@ -1,17 +0,0 @@ -/// - -export default $config({ - app(input) { - return { - name: "a-list-backend", - removal: input?.stage === "production" ? "retain" : "remove", - home: "aws", - }; - }, - async run() { - const bucket = new sst.aws.Bucket("Bucket"); - - const api = new sst.aws.ApiGatewayV2("Api"); - api.route("GET /", "functions/list-mixes.handler"); - }, -}); diff --git a/backend/tsconfig.json b/backend/tsconfig.json deleted file mode 100644 index 2f98042..0000000 --- a/backend/tsconfig.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "compilerOptions": { - "esModuleInterop": true - } -} diff --git a/old/package.json b/package.json similarity index 100% rename from old/package.json rename to package.json diff --git a/old/packages/core/index.ts b/packages/core/index.ts similarity index 100% rename from old/packages/core/index.ts rename to packages/core/index.ts diff --git a/old/packages/core/package.json b/packages/core/package.json similarity index 100% rename from old/packages/core/package.json rename to packages/core/package.json diff --git a/old/packages/core/src/model/entry.ts b/packages/core/src/model/entry.ts similarity index 100% rename from old/packages/core/src/model/entry.ts rename to packages/core/src/model/entry.ts diff --git a/old/packages/core/src/services/database.service.ts b/packages/core/src/services/database.service.ts similarity index 100% rename from old/packages/core/src/services/database.service.ts rename to packages/core/src/services/database.service.ts diff --git a/old/packages/core/sst-env.d.ts b/packages/core/sst-env.d.ts similarity index 100% rename from old/packages/core/sst-env.d.ts rename to packages/core/sst-env.d.ts diff --git a/old/packages/core/tsconfig.json b/packages/core/tsconfig.json similarity index 100% rename from old/packages/core/tsconfig.json rename to packages/core/tsconfig.json diff --git a/old/packages/functions/package.json b/packages/functions/package.json similarity index 100% rename from old/packages/functions/package.json rename to packages/functions/package.json diff --git a/old/packages/functions/src/add-entry/function.ts b/packages/functions/src/add-entry/function.ts similarity index 100% rename from old/packages/functions/src/add-entry/function.ts rename to packages/functions/src/add-entry/function.ts diff --git a/old/packages/functions/src/get-entries/function.ts b/packages/functions/src/get-entries/function.ts similarity index 100% rename from old/packages/functions/src/get-entries/function.ts rename to packages/functions/src/get-entries/function.ts diff --git a/old/packages/functions/src/podcast-feed/function.ts b/packages/functions/src/podcast-feed/function.ts similarity index 100% rename from old/packages/functions/src/podcast-feed/function.ts rename to packages/functions/src/podcast-feed/function.ts diff --git a/old/packages/functions/src/seed-db/function.ts b/packages/functions/src/seed-db/function.ts similarity index 100% rename from old/packages/functions/src/seed-db/function.ts rename to packages/functions/src/seed-db/function.ts diff --git a/old/packages/functions/sst-env.d.ts b/packages/functions/sst-env.d.ts similarity index 100% rename from old/packages/functions/sst-env.d.ts rename to packages/functions/sst-env.d.ts diff --git a/old/packages/functions/tsconfig.json b/packages/functions/tsconfig.json similarity index 100% rename from old/packages/functions/tsconfig.json rename to packages/functions/tsconfig.json diff --git a/old/packages/web/.eslintrc.json b/packages/web/.eslintrc.json similarity index 100% rename from old/packages/web/.eslintrc.json rename to packages/web/.eslintrc.json diff --git a/old/packages/web/.gitignore b/packages/web/.gitignore similarity index 100% rename from old/packages/web/.gitignore rename to packages/web/.gitignore diff --git a/old/packages/web/README.md b/packages/web/README.md similarity index 100% rename from old/packages/web/README.md rename to packages/web/README.md diff --git a/old/packages/web/app/favicon.ico b/packages/web/app/favicon.ico similarity index 100% rename from old/packages/web/app/favicon.ico rename to packages/web/app/favicon.ico diff --git a/old/packages/web/app/globals.css b/packages/web/app/globals.css similarity index 100% rename from old/packages/web/app/globals.css rename to packages/web/app/globals.css diff --git a/old/packages/web/app/layout.tsx b/packages/web/app/layout.tsx similarity index 100% rename from old/packages/web/app/layout.tsx rename to packages/web/app/layout.tsx diff --git a/old/packages/web/app/mixes/[slug]/page.tsx b/packages/web/app/mixes/[slug]/page.tsx similarity index 100% rename from old/packages/web/app/mixes/[slug]/page.tsx rename to packages/web/app/mixes/[slug]/page.tsx diff --git a/old/packages/web/app/page.tsx b/packages/web/app/page.tsx similarity index 100% rename from old/packages/web/app/page.tsx rename to packages/web/app/page.tsx diff --git a/old/packages/web/components.json b/packages/web/components.json similarity index 100% rename from old/packages/web/components.json rename to packages/web/components.json diff --git a/old/packages/web/components/mix-list.tsx b/packages/web/components/mix-list.tsx similarity index 100% rename from old/packages/web/components/mix-list.tsx rename to packages/web/components/mix-list.tsx diff --git a/old/packages/web/components/player.tsx b/packages/web/components/player.tsx similarity index 100% rename from old/packages/web/components/player.tsx rename to packages/web/components/player.tsx diff --git a/old/packages/web/components/ui/button.tsx b/packages/web/components/ui/button.tsx similarity index 100% rename from old/packages/web/components/ui/button.tsx rename to packages/web/components/ui/button.tsx diff --git a/old/packages/web/components/ui/card.tsx b/packages/web/components/ui/card.tsx similarity index 100% rename from old/packages/web/components/ui/card.tsx rename to packages/web/components/ui/card.tsx diff --git a/old/packages/web/lib/utils.ts b/packages/web/lib/utils.ts similarity index 100% rename from old/packages/web/lib/utils.ts rename to packages/web/lib/utils.ts diff --git a/old/packages/web/next.config.mjs b/packages/web/next.config.mjs similarity index 100% rename from old/packages/web/next.config.mjs rename to packages/web/next.config.mjs diff --git a/old/packages/web/package.json b/packages/web/package.json similarity index 100% rename from old/packages/web/package.json rename to packages/web/package.json diff --git a/old/packages/web/postcss.config.js b/packages/web/postcss.config.js similarity index 100% rename from old/packages/web/postcss.config.js rename to packages/web/postcss.config.js diff --git a/old/packages/web/public/next.svg b/packages/web/public/next.svg similarity index 100% rename from old/packages/web/public/next.svg rename to packages/web/public/next.svg diff --git a/old/packages/web/public/placeholder.svg b/packages/web/public/placeholder.svg similarity index 100% rename from old/packages/web/public/placeholder.svg rename to packages/web/public/placeholder.svg diff --git a/old/packages/web/public/vercel.svg b/packages/web/public/vercel.svg similarity index 100% rename from old/packages/web/public/vercel.svg rename to packages/web/public/vercel.svg diff --git a/old/packages/web/sst-env.d.ts b/packages/web/sst-env.d.ts similarity index 100% rename from old/packages/web/sst-env.d.ts rename to packages/web/sst-env.d.ts diff --git a/old/packages/web/tailwind.config.ts b/packages/web/tailwind.config.ts similarity index 100% rename from old/packages/web/tailwind.config.ts rename to packages/web/tailwind.config.ts diff --git a/old/packages/web/tsconfig.json b/packages/web/tsconfig.json similarity index 100% rename from old/packages/web/tsconfig.json rename to packages/web/tsconfig.json diff --git a/old/pnpm-lock.yaml b/pnpm-lock.yaml similarity index 100% rename from old/pnpm-lock.yaml rename to pnpm-lock.yaml diff --git a/old/pnpm-workspace.yaml b/pnpm-workspace.yaml similarity index 100% rename from old/pnpm-workspace.yaml rename to pnpm-workspace.yaml diff --git a/scripts/move-assets-to-new-backend.py b/scripts/move-assets-to-new-backend.py deleted file mode 100644 index e472035..0000000 --- a/scripts/move-assets-to-new-backend.py +++ /dev/null @@ -1,55 +0,0 @@ -import boto3 -import mutagen.mp3 -import requests -import psycopg2 -import mutagen -import csv - -public_assets_bucket = "com.mattwyskiel.assets" -new_assets_bucket = "a-list-backend-production-bucket-bbxortox" - -db = psycopg2.connect( - "postgresql://postgres.diikpazixhiuctfgfjtq:Zb7EwXqF5Ak4ygWo@aws-0-us-east-1.pooler.supabase.com:6543/postgres" -) -cur = db.cursor() - - -s3 = boto3.client("s3") - -old_feed = requests.get("https://api.mattwyskiel.com/a-list/").json() - -insertables = [] - -for item in old_feed: - print(f"Processing {item['slug']}") - print(f"Downloading {item['audioUrl']}") - # download file from audio_url - file = requests.get(item["audioUrl"]) - asset = item["audioUrl"].split("/")[-1] - with open(asset, "wb") as f: - f.write(file.content) - print(f"downloaded {asset} to disk") - ext = asset.split(".")[-1] - # print(f"Uploading {asset} to s3 as {item['slug']}.{ext}") - # s3.copy_object( - # Bucket=new_assets_bucket, - # Key=f"{item['slug']}.{ext}", - # CopySource=f"{public_assets_bucket}/a-list/{asset}", - # ) - # print(f"Uploaded {item['slug']}.{ext} to s3") - audio_file = mutagen.mp3.MP3(asset) - insertables.append( - { - "asset_id": 0, - "mix_id": item["id"], - "key": f"{item['slug']}.{ext}", - "mime_type": audio_file.mime[0], - "duration_seconds": int(audio_file.info.length), - } - ) - -field_names = insertables[0].keys() -with open("insertables.csv", "w") as f: - writer = csv.DictWriter(f, fieldnames=field_names) - writer.writeheader() - writer.writerows(insertables) diff --git a/old/sst.config.ts b/sst.config.ts similarity index 100% rename from old/sst.config.ts rename to sst.config.ts diff --git a/old/stacks/MyStack.ts b/stacks/MyStack.ts similarity index 100% rename from old/stacks/MyStack.ts rename to stacks/MyStack.ts diff --git a/old/tsconfig.json b/tsconfig.json similarity index 100% rename from old/tsconfig.json rename to tsconfig.json