@nlabs/reaktor 0.10.2 → 0.10.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/coverage/block-navigation.js +1 -1
- package/coverage/index.html +23 -23
- package/coverage/sorter.js +21 -7
- package/lib/actions/apps.d.ts +1 -0
- package/lib/actions/apps.d.ts.map +1 -0
- package/lib/actions/apps.js +218 -17
- package/lib/actions/connections.d.ts +1 -0
- package/lib/actions/connections.d.ts.map +1 -0
- package/lib/actions/connections.js +61 -6
- package/lib/actions/content.d.ts +1 -0
- package/lib/actions/content.d.ts.map +1 -0
- package/lib/actions/content.js +232 -9
- package/lib/actions/conversations.d.ts +1 -0
- package/lib/actions/conversations.d.ts.map +1 -0
- package/lib/actions/conversations.js +321 -19
- package/lib/actions/dynamodb.d.ts +1 -0
- package/lib/actions/dynamodb.d.ts.map +1 -0
- package/lib/actions/dynamodb.js +119 -2
- package/lib/actions/email.d.ts +1 -0
- package/lib/actions/email.d.ts.map +1 -0
- package/lib/actions/email.js +56 -2
- package/lib/actions/files.d.ts +1 -0
- package/lib/actions/files.d.ts.map +1 -0
- package/lib/actions/files.js +226 -5
- package/lib/actions/groups.d.ts +1 -0
- package/lib/actions/groups.d.ts.map +1 -0
- package/lib/actions/groups.js +234 -19
- package/lib/actions/images.d.ts +1 -0
- package/lib/actions/images.d.ts.map +1 -0
- package/lib/actions/images.js +688 -31
- package/lib/actions/index.d.ts +2 -0
- package/lib/actions/index.d.ts.map +1 -0
- package/lib/actions/index.js +29 -2
- package/lib/actions/ios.d.ts +1 -0
- package/lib/actions/ios.d.ts.map +1 -0
- package/lib/actions/ios.js +228 -9
- package/lib/actions/locations.d.ts +1 -0
- package/lib/actions/locations.d.ts.map +1 -0
- package/lib/actions/locations.js +111 -7
- package/lib/actions/messages.d.ts +1 -0
- package/lib/actions/messages.d.ts.map +1 -0
- package/lib/actions/messages.js +155 -21
- package/lib/actions/notifications.d.ts +1 -0
- package/lib/actions/notifications.d.ts.map +1 -0
- package/lib/actions/notifications.js +37 -2
- package/lib/actions/payments.d.ts +1 -0
- package/lib/actions/payments.d.ts.map +1 -0
- package/lib/actions/payments.js +428 -11
- package/lib/actions/posts.d.ts +1 -0
- package/lib/actions/posts.d.ts.map +1 -0
- package/lib/actions/posts.js +540 -75
- package/lib/actions/profiles.d.ts +1 -0
- package/lib/actions/profiles.d.ts.map +1 -0
- package/lib/actions/profiles.js +58 -8
- package/lib/actions/reactions.d.ts +1 -0
- package/lib/actions/reactions.d.ts.map +1 -0
- package/lib/actions/reactions.js +276 -25
- package/lib/actions/s3.d.ts +1 -0
- package/lib/actions/s3.d.ts.map +1 -0
- package/lib/actions/s3.js +102 -2
- package/lib/actions/search.d.ts +1 -0
- package/lib/actions/search.d.ts.map +1 -0
- package/lib/actions/search.js +81 -5
- package/lib/actions/sms.d.ts +1 -0
- package/lib/actions/sms.d.ts.map +1 -0
- package/lib/actions/sms.js +52 -2
- package/lib/actions/statistics.d.ts +1 -0
- package/lib/actions/statistics.d.ts.map +1 -0
- package/lib/actions/statistics.js +41 -6
- package/lib/actions/subscriptions.d.ts +1 -0
- package/lib/actions/subscriptions.d.ts.map +1 -0
- package/lib/actions/subscriptions.js +196 -6
- package/lib/actions/tags.d.ts +1 -0
- package/lib/actions/tags.d.ts.map +1 -0
- package/lib/actions/tags.js +258 -19
- package/lib/actions/users.d.ts +1 -0
- package/lib/actions/users.d.ts.map +1 -0
- package/lib/actions/users.js +781 -66
- package/lib/actions/videos.d.ts +26 -0
- package/lib/actions/videos.d.ts.map +1 -0
- package/lib/actions/videos.js +423 -0
- package/lib/actions/websockets.d.ts +1 -0
- package/lib/actions/websockets.d.ts.map +1 -0
- package/lib/actions/websockets.js +148 -14
- package/lib/adapters/arangoAdapter.d.ts +1 -0
- package/lib/adapters/arangoAdapter.d.ts.map +1 -0
- package/lib/adapters/arangoAdapter.js +70 -2
- package/lib/adapters/contentAdapter.d.ts +1 -0
- package/lib/adapters/contentAdapter.d.ts.map +1 -0
- package/lib/adapters/contentAdapter.js +108 -2
- package/lib/adapters/fileAdapter.d.ts +1 -0
- package/lib/adapters/fileAdapter.d.ts.map +1 -0
- package/lib/adapters/fileAdapter.js +119 -2
- package/lib/adapters/imageAdapter.d.ts +1 -0
- package/lib/adapters/imageAdapter.d.ts.map +1 -0
- package/lib/adapters/imageAdapter.js +112 -2
- package/lib/adapters/index.d.ts +1 -0
- package/lib/adapters/index.d.ts.map +1 -0
- package/lib/adapters/index.js +11 -2
- package/lib/adapters/messageAdapter.d.ts +1 -0
- package/lib/adapters/messageAdapter.d.ts.map +1 -0
- package/lib/adapters/messageAdapter.js +82 -2
- package/lib/adapters/postAdapter.d.ts +1 -0
- package/lib/adapters/postAdapter.d.ts.map +1 -0
- package/lib/adapters/postAdapter.js +117 -2
- package/lib/adapters/reaktorAdapter.d.ts +1 -0
- package/lib/adapters/reaktorAdapter.d.ts.map +1 -0
- package/lib/adapters/reaktorAdapter.js +59 -2
- package/lib/adapters/tagAdapter.d.ts +1 -0
- package/lib/adapters/tagAdapter.d.ts.map +1 -0
- package/lib/adapters/tagAdapter.js +99 -2
- package/lib/adapters/userAdapter.d.ts +1 -0
- package/lib/adapters/userAdapter.d.ts.map +1 -0
- package/lib/adapters/userAdapter.js +264 -2
- package/lib/config.d.ts +1 -0
- package/lib/config.d.ts.map +1 -0
- package/lib/config.js +161 -2
- package/lib/handlers/graphqlHandler.d.ts +1 -0
- package/lib/handlers/graphqlHandler.d.ts.map +1 -0
- package/lib/handlers/graphqlHandler.js +118 -2
- package/lib/index.d.ts +1 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +18 -2
- package/lib/lambdas/actions/websockets.d.ts +1 -0
- package/lib/lambdas/actions/websockets.d.ts.map +1 -0
- package/lib/lambdas/actions/websockets.js +89 -14
- package/lib/lambdas/authorizer.d.ts +1 -0
- package/lib/lambdas/authorizer.d.ts.map +1 -0
- package/lib/lambdas/authorizer.js +41 -2
- package/lib/lambdas/connection.d.ts +1 -0
- package/lib/lambdas/connection.d.ts.map +1 -0
- package/lib/lambdas/connection.js +85 -2
- package/lib/lambdas/utils/message.d.ts +1 -0
- package/lib/lambdas/utils/message.d.ts.map +1 -0
- package/lib/lambdas/utils/message.js +20 -2
- package/lib/lambdas/utils/websocket.d.ts +1 -0
- package/lib/lambdas/utils/websocket.d.ts.map +1 -0
- package/lib/lambdas/utils/websocket.js +78 -2
- package/lib/mocks/conversation.d.ts +1 -0
- package/lib/mocks/conversation.d.ts.map +1 -0
- package/lib/mocks/conversation.js +10 -2
- package/lib/mocks/file.d.ts +1 -0
- package/lib/mocks/file.d.ts.map +1 -0
- package/lib/mocks/file.js +13 -2
- package/lib/mocks/group.d.ts +1 -0
- package/lib/mocks/group.d.ts.map +1 -0
- package/lib/mocks/group.js +20 -2
- package/lib/mocks/image.d.ts +1 -0
- package/lib/mocks/image.d.ts.map +1 -0
- package/lib/mocks/image.js +17 -2
- package/lib/mocks/post.d.ts +1 -0
- package/lib/mocks/post.d.ts.map +1 -0
- package/lib/mocks/post.js +28 -2
- package/lib/mocks/tag.d.ts +1 -0
- package/lib/mocks/tag.d.ts.map +1 -0
- package/lib/mocks/tag.js +12 -2
- package/lib/mocks/user.d.ts +1 -0
- package/lib/mocks/user.d.ts.map +1 -0
- package/lib/mocks/user.js +61 -2
- package/lib/mocks/video.d.ts +4 -0
- package/lib/mocks/video.d.ts.map +1 -0
- package/lib/mocks/video.js +17 -0
- package/lib/mutations/content.d.ts +1 -0
- package/lib/mutations/content.d.ts.map +1 -0
- package/lib/mutations/content.js +27 -2
- package/lib/mutations/index.d.ts +1 -0
- package/lib/mutations/index.d.ts.map +1 -0
- package/lib/mutations/index.js +29 -2
- package/lib/mutations/locations.d.ts +1 -0
- package/lib/mutations/locations.d.ts.map +1 -0
- package/lib/mutations/locations.js +22 -2
- package/lib/mutations/messages.d.ts +1 -0
- package/lib/mutations/messages.d.ts.map +1 -0
- package/lib/mutations/messages.js +75 -2
- package/lib/mutations/posts.d.ts +1 -0
- package/lib/mutations/posts.d.ts.map +1 -0
- package/lib/mutations/posts.js +31 -2
- package/lib/mutations/profiles.d.ts +1 -0
- package/lib/mutations/profiles.d.ts.map +1 -0
- package/lib/mutations/profiles.js +78 -2
- package/lib/mutations/reactions.d.ts +1 -0
- package/lib/mutations/reactions.d.ts.map +1 -0
- package/lib/mutations/reactions.js +29 -2
- package/lib/mutations/statistics.d.ts +1 -0
- package/lib/mutations/statistics.d.ts.map +1 -0
- package/lib/mutations/statistics.js +17 -2
- package/lib/mutations/subscriptions.d.ts +1 -0
- package/lib/mutations/subscriptions.d.ts.map +1 -0
- package/lib/mutations/subscriptions.js +38 -2
- package/lib/mutations/tags.d.ts +1 -0
- package/lib/mutations/tags.d.ts.map +1 -0
- package/lib/mutations/tags.js +109 -2
- package/lib/mutations/users.d.ts +1 -0
- package/lib/mutations/users.d.ts.map +1 -0
- package/lib/mutations/users.js +129 -2
- package/lib/objectTypes/app.d.ts +1 -0
- package/lib/objectTypes/app.d.ts.map +1 -0
- package/lib/objectTypes/app.js +147 -2
- package/lib/objectTypes/bankAccount.d.ts +1 -0
- package/lib/objectTypes/bankAccount.d.ts.map +1 -0
- package/lib/objectTypes/bankAccount.js +54 -2
- package/lib/objectTypes/connection.d.ts +1 -0
- package/lib/objectTypes/connection.d.ts.map +1 -0
- package/lib/objectTypes/connection.js +26 -2
- package/lib/objectTypes/content.d.ts +1 -0
- package/lib/objectTypes/content.d.ts.map +1 -0
- package/lib/objectTypes/content.js +79 -2
- package/lib/objectTypes/conversation.d.ts +1 -0
- package/lib/objectTypes/conversation.d.ts.map +1 -0
- package/lib/objectTypes/conversation.js +53 -2
- package/lib/objectTypes/creditCard.d.ts +1 -0
- package/lib/objectTypes/creditCard.d.ts.map +1 -0
- package/lib/objectTypes/creditCard.js +64 -2
- package/lib/objectTypes/document.d.ts +1 -0
- package/lib/objectTypes/document.d.ts.map +1 -0
- package/lib/objectTypes/document.js +21 -2
- package/lib/objectTypes/error.d.ts +1 -0
- package/lib/objectTypes/error.d.ts.map +1 -0
- package/lib/objectTypes/error.js +24 -2
- package/lib/objectTypes/external.d.ts +1 -0
- package/lib/objectTypes/external.d.ts.map +1 -0
- package/lib/objectTypes/external.js +52 -2
- package/lib/objectTypes/file.d.ts +1 -0
- package/lib/objectTypes/file.d.ts.map +1 -0
- package/lib/objectTypes/file.js +76 -2
- package/lib/objectTypes/filter.d.ts +1 -0
- package/lib/objectTypes/filter.d.ts.map +1 -0
- package/lib/objectTypes/filter.js +21 -2
- package/lib/objectTypes/group.d.ts +1 -0
- package/lib/objectTypes/group.d.ts.map +1 -0
- package/lib/objectTypes/group.js +97 -2
- package/lib/objectTypes/iapSubscription.d.ts +1 -0
- package/lib/objectTypes/iapSubscription.d.ts.map +1 -0
- package/lib/objectTypes/iapSubscription.js +18 -2
- package/lib/objectTypes/image.d.ts +1 -0
- package/lib/objectTypes/image.d.ts.map +1 -0
- package/lib/objectTypes/image.js +105 -2
- package/lib/objectTypes/index.d.ts +1 -0
- package/lib/objectTypes/index.d.ts.map +1 -0
- package/lib/objectTypes/index.js +28 -2
- package/lib/objectTypes/location.d.ts +1 -0
- package/lib/objectTypes/location.d.ts.map +1 -0
- package/lib/objectTypes/location.js +85 -2
- package/lib/objectTypes/message.d.ts +1 -0
- package/lib/objectTypes/message.d.ts.map +1 -0
- package/lib/objectTypes/message.js +72 -2
- package/lib/objectTypes/passcode.d.ts +1 -0
- package/lib/objectTypes/passcode.d.ts.map +1 -0
- package/lib/objectTypes/passcode.js +20 -2
- package/lib/objectTypes/plan.d.ts +1 -0
- package/lib/objectTypes/plan.d.ts.map +1 -0
- package/lib/objectTypes/plan.js +71 -2
- package/lib/objectTypes/post.d.ts +1 -0
- package/lib/objectTypes/post.d.ts.map +1 -0
- package/lib/objectTypes/post.js +101 -2
- package/lib/objectTypes/profile.d.ts +1 -0
- package/lib/objectTypes/profile.d.ts.map +1 -0
- package/lib/objectTypes/profile.js +68 -2
- package/lib/objectTypes/reaction.d.ts +1 -0
- package/lib/objectTypes/reaction.d.ts.map +1 -0
- package/lib/objectTypes/reaction.js +37 -2
- package/lib/objectTypes/relation.d.ts +1 -0
- package/lib/objectTypes/relation.d.ts.map +1 -0
- package/lib/objectTypes/relation.js +27 -2
- package/lib/objectTypes/search.d.ts +1 -0
- package/lib/objectTypes/search.d.ts.map +1 -0
- package/lib/objectTypes/search.js +50 -2
- package/lib/objectTypes/statistics.d.ts +1 -0
- package/lib/objectTypes/statistics.d.ts.map +1 -0
- package/lib/objectTypes/statistics.js +17 -2
- package/lib/objectTypes/subscription.d.ts +1 -0
- package/lib/objectTypes/subscription.d.ts.map +1 -0
- package/lib/objectTypes/subscription.js +102 -2
- package/lib/objectTypes/tag.d.ts +1 -0
- package/lib/objectTypes/tag.d.ts.map +1 -0
- package/lib/objectTypes/tag.js +41 -2
- package/lib/objectTypes/user.d.ts +1 -0
- package/lib/objectTypes/user.d.ts.map +1 -0
- package/lib/objectTypes/user.js +111 -2
- package/lib/queries/content.d.ts +1 -0
- package/lib/queries/content.d.ts.map +1 -0
- package/lib/queries/content.js +50 -2
- package/lib/queries/index.d.ts +1 -0
- package/lib/queries/index.d.ts.map +1 -0
- package/lib/queries/index.js +27 -2
- package/lib/queries/locations.d.ts +1 -0
- package/lib/queries/locations.d.ts.map +1 -0
- package/lib/queries/locations.js +23 -2
- package/lib/queries/messages.d.ts +1 -0
- package/lib/queries/messages.d.ts.map +1 -0
- package/lib/queries/messages.js +35 -2
- package/lib/queries/posts.d.ts +1 -0
- package/lib/queries/posts.d.ts.map +1 -0
- package/lib/queries/posts.js +154 -2
- package/lib/queries/reactions.d.ts +1 -0
- package/lib/queries/reactions.d.ts.map +1 -0
- package/lib/queries/reactions.js +34 -2
- package/lib/queries/statistics.d.ts +1 -0
- package/lib/queries/statistics.d.ts.map +1 -0
- package/lib/queries/statistics.js +17 -2
- package/lib/queries/subscriptions.d.ts +1 -0
- package/lib/queries/subscriptions.d.ts.map +1 -0
- package/lib/queries/subscriptions.js +21 -2
- package/lib/queries/tags.d.ts +1 -0
- package/lib/queries/tags.d.ts.map +1 -0
- package/lib/queries/tags.js +56 -2
- package/lib/queries/users.d.ts +1 -0
- package/lib/queries/users.d.ts.map +1 -0
- package/lib/queries/users.js +39 -2
- package/lib/templates/email/layout.d.ts +1 -0
- package/lib/templates/email/layout.d.ts.map +1 -0
- package/lib/templates/email/layout.js +4 -3
- package/lib/templates/email/passwordForgot.d.ts +1 -0
- package/lib/templates/email/passwordForgot.d.ts.map +1 -0
- package/lib/templates/email/passwordForgot.js +4 -3
- package/lib/templates/email/passwordRecovery.d.ts +1 -0
- package/lib/templates/email/passwordRecovery.d.ts.map +1 -0
- package/lib/templates/email/passwordRecovery.js +4 -3
- package/lib/templates/email/verifyEmail.d.ts +1 -0
- package/lib/templates/email/verifyEmail.d.ts.map +1 -0
- package/lib/templates/email/verifyEmail.js +4 -3
- package/lib/templates/email/welcome.d.ts +1 -0
- package/lib/templates/email/welcome.d.ts.map +1 -0
- package/lib/templates/email/welcome.js +4 -3
- package/lib/templates/sms/passwordForgot.d.ts +1 -0
- package/lib/templates/sms/passwordForgot.d.ts.map +1 -0
- package/lib/templates/sms/passwordForgot.js +3 -2
- package/lib/templates/sms/passwordRecovery.d.ts +1 -0
- package/lib/templates/sms/passwordRecovery.d.ts.map +1 -0
- package/lib/templates/sms/passwordRecovery.js +3 -2
- package/lib/templates/sms/verifyEmail.d.ts +1 -0
- package/lib/templates/sms/verifyEmail.d.ts.map +1 -0
- package/lib/templates/sms/verifyEmail.js +3 -2
- package/lib/templates/sms/verifyPhone.d.ts +1 -0
- package/lib/templates/sms/verifyPhone.d.ts.map +1 -0
- package/lib/templates/sms/verifyPhone.js +3 -2
- package/lib/templates/sms/welcome.d.ts +1 -0
- package/lib/templates/sms/welcome.d.ts.map +1 -0
- package/lib/templates/sms/welcome.js +3 -2
- package/lib/types/apps.types.d.ts +1 -0
- package/lib/types/apps.types.d.ts.map +1 -0
- package/lib/types/apps.types.js +10 -2
- package/lib/types/arangodb.types.d.ts +2 -1
- package/lib/types/arangodb.types.d.ts.map +1 -0
- package/lib/types/arangodb.types.js +6 -1
- package/lib/types/auth.types.d.ts +1 -0
- package/lib/types/auth.types.d.ts.map +1 -0
- package/lib/types/auth.types.js +6 -1
- package/lib/types/connections.types.d.ts +1 -0
- package/lib/types/connections.types.d.ts.map +1 -0
- package/lib/types/connections.types.js +6 -1
- package/lib/types/content.types.d.ts +1 -0
- package/lib/types/content.types.d.ts.map +1 -0
- package/lib/types/content.types.js +6 -1
- package/lib/types/conversations.types.d.ts +1 -0
- package/lib/types/conversations.types.d.ts.map +1 -0
- package/lib/types/conversations.types.js +6 -1
- package/lib/types/email.types.d.ts +1 -0
- package/lib/types/email.types.d.ts.map +1 -0
- package/lib/types/email.types.js +6 -1
- package/lib/types/error.types.d.ts +1 -0
- package/lib/types/error.types.d.ts.map +1 -0
- package/lib/types/error.types.js +20 -2
- package/lib/types/files.types.d.ts +1 -0
- package/lib/types/files.types.d.ts.map +1 -0
- package/lib/types/files.types.js +6 -1
- package/lib/types/google.types.d.ts +1 -0
- package/lib/types/google.types.d.ts.map +1 -0
- package/lib/types/google.types.js +6 -1
- package/lib/types/groups.types.d.ts +1 -0
- package/lib/types/groups.types.d.ts.map +1 -0
- package/lib/types/groups.types.js +6 -1
- package/lib/types/images.types.d.ts +1 -0
- package/lib/types/images.types.d.ts.map +1 -0
- package/lib/types/images.types.js +6 -1
- package/lib/types/index.d.ts +2 -0
- package/lib/types/index.d.ts.map +1 -0
- package/lib/types/index.js +28 -2
- package/lib/types/locations.types.d.ts +1 -0
- package/lib/types/locations.types.d.ts.map +1 -0
- package/lib/types/locations.types.js +6 -1
- package/lib/types/messages.types.d.ts +1 -0
- package/lib/types/messages.types.d.ts.map +1 -0
- package/lib/types/messages.types.js +6 -1
- package/lib/types/notifications.types.d.ts +1 -0
- package/lib/types/notifications.types.d.ts.map +1 -0
- package/lib/types/notifications.types.js +6 -1
- package/lib/types/payments.types.d.ts +1 -0
- package/lib/types/payments.types.d.ts.map +1 -0
- package/lib/types/payments.types.js +6 -1
- package/lib/types/posts.types.d.ts +1 -0
- package/lib/types/posts.types.d.ts.map +1 -0
- package/lib/types/posts.types.js +6 -1
- package/lib/types/profiles.types.d.ts +1 -0
- package/lib/types/profiles.types.d.ts.map +1 -0
- package/lib/types/profiles.types.js +3 -1
- package/lib/types/statistics.types.d.ts +1 -0
- package/lib/types/statistics.types.d.ts.map +1 -0
- package/lib/types/statistics.types.js +3 -1
- package/lib/types/tags.types.d.ts +1 -0
- package/lib/types/tags.types.d.ts.map +1 -0
- package/lib/types/tags.types.js +6 -1
- package/lib/types/users.types.d.ts +1 -0
- package/lib/types/users.types.d.ts.map +1 -0
- package/lib/types/users.types.js +6 -1
- package/lib/types/videos.types.d.ts +47 -0
- package/lib/types/videos.types.d.ts.map +1 -0
- package/lib/types/videos.types.js +6 -0
- package/lib/types/websockets.types.d.ts +1 -0
- package/lib/types/websockets.types.d.ts.map +1 -0
- package/lib/types/websockets.types.js +6 -1
- package/lib/utils/adapterUtils.d.ts +1 -0
- package/lib/utils/adapterUtils.d.ts.map +1 -0
- package/lib/utils/adapterUtils.js +23 -2
- package/lib/utils/analyticsUtils.d.ts +1 -0
- package/lib/utils/analyticsUtils.d.ts.map +1 -0
- package/lib/utils/analyticsUtils.js +45 -2
- package/lib/utils/arangodbUtils.d.ts +1 -0
- package/lib/utils/arangodbUtils.d.ts.map +1 -0
- package/lib/utils/arangodbUtils.js +128 -5
- package/lib/utils/authUtils.d.ts +1 -0
- package/lib/utils/authUtils.d.ts.map +1 -0
- package/lib/utils/authUtils.js +54 -2
- package/lib/utils/contextUtils.d.ts +1 -0
- package/lib/utils/contextUtils.d.ts.map +1 -0
- package/lib/utils/contextUtils.js +10 -2
- package/lib/utils/dbI18n.d.ts +1 -0
- package/lib/utils/dbI18n.d.ts.map +1 -0
- package/lib/utils/dbI18n.example.d.ts +1 -0
- package/lib/utils/dbI18n.example.d.ts.map +1 -0
- package/lib/utils/dbI18n.example.js +92 -5
- package/lib/utils/dbI18n.js +28 -2
- package/lib/utils/googleTranslate.d.ts +1 -0
- package/lib/utils/googleTranslate.d.ts.map +1 -0
- package/lib/utils/googleTranslate.js +70 -2
- package/lib/utils/graphqlUtils.d.ts +1 -0
- package/lib/utils/graphqlUtils.d.ts.map +1 -0
- package/lib/utils/graphqlUtils.js +11 -2
- package/lib/utils/index.d.ts +1 -0
- package/lib/utils/index.d.ts.map +1 -0
- package/lib/utils/index.js +19 -2
- package/lib/utils/languageDetection.d.ts +1 -0
- package/lib/utils/languageDetection.d.ts.map +1 -0
- package/lib/utils/languageDetection.js +120 -2
- package/lib/utils/localeUtils.d.ts +1 -0
- package/lib/utils/localeUtils.d.ts.map +1 -0
- package/lib/utils/localeUtils.example.d.ts +1 -0
- package/lib/utils/localeUtils.example.d.ts.map +1 -0
- package/lib/utils/localeUtils.example.js +124 -2
- package/lib/utils/localeUtils.js +71 -2
- package/lib/utils/middlewareUtils.d.ts +1 -0
- package/lib/utils/middlewareUtils.d.ts.map +1 -0
- package/lib/utils/middlewareUtils.js +10 -2
- package/lib/utils/sessionUtils.d.ts +1 -0
- package/lib/utils/sessionUtils.d.ts.map +1 -0
- package/lib/utils/sessionUtils.js +26 -2
- package/lib/utils/stripeUtils.d.ts +2 -1
- package/lib/utils/stripeUtils.d.ts.map +1 -0
- package/lib/utils/stripeUtils.js +12 -2
- package/lib/utils/templateUtils.d.ts +1 -0
- package/lib/utils/templateUtils.d.ts.map +1 -0
- package/lib/utils/templateUtils.js +11 -2
- package/lib/utils/testUtils.d.ts +1 -0
- package/lib/utils/testUtils.d.ts.map +1 -0
- package/lib/utils/testUtils.js +292 -2
- package/lib/utils/translationQueue.d.ts +1 -0
- package/lib/utils/translationQueue.d.ts.map +1 -0
- package/lib/utils/translationQueue.example.d.ts +1 -0
- package/lib/utils/translationQueue.example.d.ts.map +1 -0
- package/lib/utils/translationQueue.example.js +340 -2
- package/lib/utils/translationQueue.js +113 -2
- package/package.json +47 -29
|
@@ -1,6 +1,93 @@
|
|
|
1
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2025-Present, Nitrogen Labs, Inc.
|
|
3
|
+
* Copyrights licensed under the MIT License. See the accompanying LICENSE file for terms.
|
|
4
|
+
*
|
|
5
|
+
* Example usage of the database-driven i18n system
|
|
6
|
+
*
|
|
7
|
+
* This demonstrates how to use the new i18n utility that fetches
|
|
8
|
+
* translations from the database with fallback support.
|
|
9
|
+
*/ import { dbI18n, dbI18nBatch, dbI18nMultiple, dbI18nWithInterpolation } from './dbI18n.js';
|
|
10
|
+
// Example 1: Basic database translation with fallback
|
|
11
|
+
export async function sendWelcomeSMS(context, username, phoneNumber) {
|
|
12
|
+
const message = await dbI18n(context, 'sms.welcome', 'Welcome to TorchOne, {{username}}! Thank you for joining our platform.', 'en');
|
|
13
|
+
console.log(`Sending SMS to ${phoneNumber}: ${message}`);
|
|
14
|
+
return message;
|
|
15
|
+
}
|
|
16
|
+
// Example 2: Translation with interpolation
|
|
17
|
+
export async function sendVerificationCode(context, code, locale = 'en') {
|
|
18
|
+
const message = await dbI18nWithInterpolation(context, 'sms.verificationCode', 'Your verification code is: {{code}}', {
|
|
19
|
+
code
|
|
20
|
+
}, locale);
|
|
21
|
+
console.log(`Sending verification code in ${locale}: ${message}`);
|
|
22
|
+
return message;
|
|
23
|
+
}
|
|
24
|
+
// Example 3: Multiple translations at once
|
|
25
|
+
export async function generateWelcomeEmail(context, username, locale = 'en') {
|
|
26
|
+
const [welcomeMessage, getStartedMessage, teamSignature] = await dbI18nMultiple(context, [
|
|
27
|
+
{
|
|
28
|
+
key: 'email.welcome',
|
|
29
|
+
fallback: 'Welcome to TorchOne, {{username}}!',
|
|
30
|
+
locale
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
key: 'email.getStarted',
|
|
34
|
+
fallback: 'To get started, please complete your profile and explore our features.',
|
|
35
|
+
locale
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
key: 'email.teamSignature',
|
|
39
|
+
fallback: 'The TorchOne Team',
|
|
40
|
+
locale
|
|
41
|
+
}
|
|
42
|
+
]);
|
|
43
|
+
// Apply interpolation to welcome message
|
|
44
|
+
const interpolatedWelcome = welcomeMessage.replace(/\{\{username\}\}/g, username);
|
|
45
|
+
return {
|
|
46
|
+
subject: interpolatedWelcome,
|
|
47
|
+
body: `${interpolatedWelcome}\n\n${getStartedMessage}\n\n${teamSignature}`
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
// Example 4: Batch translation for better performance
|
|
51
|
+
export async function generateNotificationMessages(context, locale = 'en') {
|
|
52
|
+
const keys = [
|
|
53
|
+
'notification.welcome',
|
|
54
|
+
'notification.verification',
|
|
55
|
+
'notification.passwordReset',
|
|
56
|
+
'notification.profileUpdate'
|
|
57
|
+
];
|
|
58
|
+
const fallbackMap = {
|
|
59
|
+
'notification.welcome': 'Welcome to TorchOne!',
|
|
60
|
+
'notification.verification': 'Please verify your account.',
|
|
61
|
+
'notification.passwordReset': 'Your password has been reset.',
|
|
62
|
+
'notification.profileUpdate': 'Your profile has been updated.'
|
|
63
|
+
};
|
|
64
|
+
const translations = await dbI18nBatch(context, keys, fallbackMap, locale);
|
|
65
|
+
return translations;
|
|
66
|
+
}
|
|
67
|
+
// Example 5: Error handling with fallback
|
|
68
|
+
export async function getErrorMessage(context, errorCode, locale = 'en') {
|
|
69
|
+
try {
|
|
70
|
+
const message = await dbI18n(context, `error.${errorCode}`, `An error occurred: ${errorCode}`, locale);
|
|
71
|
+
return message;
|
|
72
|
+
} catch (error) {
|
|
73
|
+
// If database is unavailable, return fallback
|
|
74
|
+
console.error('Database error, using fallback:', error);
|
|
75
|
+
return `An error occurred: ${errorCode}`;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
// Example 6: Dynamic content based on user preferences
|
|
79
|
+
export async function getUserGreeting(context, userLocale) {
|
|
80
|
+
// Use user's locale if available, otherwise default to 'en'
|
|
81
|
+
const locale = userLocale || 'en';
|
|
82
|
+
const greeting = await dbI18n(context, 'greeting.morning', 'Good morning!', locale);
|
|
83
|
+
return greeting;
|
|
84
|
+
} // Usage examples:
|
|
85
|
+
// const context = { databaseName: 'torchone-dev', session: { userId: 'user123' } };
|
|
86
|
+
// await sendWelcomeSMS(context, 'John', '+1234567890');
|
|
87
|
+
// await sendVerificationCode(context, '123456', 'es');
|
|
88
|
+
// const email = await generateWelcomeEmail(context, 'Maria', 'pt');
|
|
89
|
+
// const notifications = await generateNotificationMessages(context, 'fr');
|
|
90
|
+
// const errorMsg = await getErrorMessage(context, 'INVALID_EMAIL', 'de');
|
|
91
|
+
// const greeting = await getUserGreeting(context, 'en');
|
|
2
92
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
${s}`}}async function d(t,e="en"){return await c(t,["notification.welcome","notification.verification","notification.passwordReset","notification.profileUpdate"],{"notification.welcome":"Welcome to TorchOne!","notification.verification":"Please verify your account.","notification.passwordReset":"Your password has been reset.","notification.profileUpdate":"Your profile has been updated."},e)}async function y(t,e,o="en"){try{return await a(t,`error.${e}`,`An error occurred: ${e}`,o)}catch{return`An error occurred: ${e}`}}async function b(t,e){return await a(t,"greeting.morning","Good morning!",e||"en")}export{d as generateNotificationMessages,u as generateWelcomeEmail,y as getErrorMessage,b as getUserGreeting,f as sendVerificationCode,g as sendWelcomeSMS};
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL3V0aWxzL2RiSTE4bi5leGFtcGxlLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIENvcHlyaWdodCAoYykgMjAyNS1QcmVzZW50LCBOaXRyb2dlbiBMYWJzLCBJbmMuXG4gKiBDb3B5cmlnaHRzIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZS4gU2VlIHRoZSBhY2NvbXBhbnlpbmcgTElDRU5TRSBmaWxlIGZvciB0ZXJtcy5cbiAqXG4gKiBFeGFtcGxlIHVzYWdlIG9mIHRoZSBkYXRhYmFzZS1kcml2ZW4gaTE4biBzeXN0ZW1cbiAqXG4gKiBUaGlzIGRlbW9uc3RyYXRlcyBob3cgdG8gdXNlIHRoZSBuZXcgaTE4biB1dGlsaXR5IHRoYXQgZmV0Y2hlc1xuICogdHJhbnNsYXRpb25zIGZyb20gdGhlIGRhdGFiYXNlIHdpdGggZmFsbGJhY2sgc3VwcG9ydC5cbiAqL1xuXG5pbXBvcnQge2RiSTE4biwgZGJJMThuQmF0Y2gsIGRiSTE4bk11bHRpcGxlLCBkYkkxOG5XaXRoSW50ZXJwb2xhdGlvbn0gZnJvbSAnLi9kYkkxOG4uanMnO1xuXG5pbXBvcnQgdHlwZSB7QXBpQ29udGV4dH0gZnJvbSAnLi4vdHlwZXMvYXV0aC50eXBlcy5qcyc7XG5pbXBvcnQgdHlwZSB7TG9jYWxlfSBmcm9tICcuLi90eXBlcy9jb250ZW50LnR5cGVzLmpzJztcblxuLy8gRXhhbXBsZSAxOiBCYXNpYyBkYXRhYmFzZSB0cmFuc2xhdGlvbiB3aXRoIGZhbGxiYWNrXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gc2VuZFdlbGNvbWVTTVMoY29udGV4dDogQXBpQ29udGV4dCwgdXNlcm5hbWU6IHN0cmluZywgcGhvbmVOdW1iZXI6IHN0cmluZykge1xuICBjb25zdCBtZXNzYWdlID0gYXdhaXQgZGJJMThuKFxuICAgIGNvbnRleHQsXG4gICAgJ3Ntcy53ZWxjb21lJyxcbiAgICAnV2VsY29tZSB0byBUb3JjaE9uZSwge3t1c2VybmFtZX19ISBUaGFuayB5b3UgZm9yIGpvaW5pbmcgb3VyIHBsYXRmb3JtLicsXG4gICAgJ2VuJ1xuICApO1xuXG4gIGNvbnNvbGUubG9nKGBTZW5kaW5nIFNNUyB0byAke3Bob25lTnVtYmVyfTogJHttZXNzYWdlfWApO1xuICByZXR1cm4gbWVzc2FnZTtcbn1cblxuLy8gRXhhbXBsZSAyOiBUcmFuc2xhdGlvbiB3aXRoIGludGVycG9sYXRpb25cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBzZW5kVmVyaWZpY2F0aW9uQ29kZShcbiAgY29udGV4dDogQXBpQ29udGV4dCxcbiAgY29kZTogc3RyaW5nLFxuICBsb2NhbGU6IExvY2FsZSA9ICdlbidcbikge1xuICBjb25zdCBtZXNzYWdlID0gYXdhaXQgZGJJMThuV2l0aEludGVycG9sYXRpb24oXG4gICAgY29udGV4dCxcbiAgICAnc21zLnZlcmlmaWNhdGlvbkNvZGUnLFxuICAgICdZb3VyIHZlcmlmaWNhdGlvbiBjb2RlIGlzOiB7e2NvZGV9fScsXG4gICAge2NvZGV9LFxuICAgIGxvY2FsZVxuICApO1xuXG4gIGNvbnNvbGUubG9nKGBTZW5kaW5nIHZlcmlmaWNhdGlvbiBjb2RlIGluICR7bG9jYWxlfTogJHttZXNzYWdlfWApO1xuICByZXR1cm4gbWVzc2FnZTtcbn1cblxuLy8gRXhhbXBsZSAzOiBNdWx0aXBsZSB0cmFuc2xhdGlvbnMgYXQgb25jZVxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdlbmVyYXRlV2VsY29tZUVtYWlsKGNvbnRleHQ6IEFwaUNvbnRleHQsIHVzZXJuYW1lOiBzdHJpbmcsIGxvY2FsZTogTG9jYWxlID0gJ2VuJykge1xuICBjb25zdCBbd2VsY29tZU1lc3NhZ2UsIGdldFN0YXJ0ZWRNZXNzYWdlLCB0ZWFtU2lnbmF0dXJlXSA9IGF3YWl0IGRiSTE4bk11bHRpcGxlKGNvbnRleHQsIFtcbiAgICB7XG4gICAgICBrZXk6ICdlbWFpbC53ZWxjb21lJyxcbiAgICAgIGZhbGxiYWNrOiAnV2VsY29tZSB0byBUb3JjaE9uZSwge3t1c2VybmFtZX19IScsXG4gICAgICBsb2NhbGVcbiAgICB9LFxuICAgIHtcbiAgICAgIGtleTogJ2VtYWlsLmdldFN0YXJ0ZWQnLFxuICAgICAgZmFsbGJhY2s6ICdUbyBnZXQgc3RhcnRlZCwgcGxlYXNlIGNvbXBsZXRlIHlvdXIgcHJvZmlsZSBhbmQgZXhwbG9yZSBvdXIgZmVhdHVyZXMuJyxcbiAgICAgIGxvY2FsZVxuICAgIH0sXG4gICAge1xuICAgICAga2V5OiAnZW1haWwudGVhbVNpZ25hdHVyZScsXG4gICAgICBmYWxsYmFjazogJ1RoZSBUb3JjaE9uZSBUZWFtJyxcbiAgICAgIGxvY2FsZVxuICAgIH1cbiAgXSk7XG5cbiAgLy8gQXBwbHkgaW50ZXJwb2xhdGlvbiB0byB3ZWxjb21lIG1lc3NhZ2VcbiAgY29uc3QgaW50ZXJwb2xhdGVkV2VsY29tZSA9IHdlbGNvbWVNZXNzYWdlLnJlcGxhY2UoL1xce1xce3VzZXJuYW1lXFx9XFx9L2csIHVzZXJuYW1lKTtcblxuICByZXR1cm4ge1xuICAgIHN1YmplY3Q6IGludGVycG9sYXRlZFdlbGNvbWUsXG4gICAgYm9keTogYCR7aW50ZXJwb2xhdGVkV2VsY29tZX1cXG5cXG4ke2dldFN0YXJ0ZWRNZXNzYWdlfVxcblxcbiR7dGVhbVNpZ25hdHVyZX1gXG4gIH07XG59XG5cbi8vIEV4YW1wbGUgNDogQmF0Y2ggdHJhbnNsYXRpb24gZm9yIGJldHRlciBwZXJmb3JtYW5jZVxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdlbmVyYXRlTm90aWZpY2F0aW9uTWVzc2FnZXMoY29udGV4dDogQXBpQ29udGV4dCwgbG9jYWxlOiBMb2NhbGUgPSAnZW4nKSB7XG4gIGNvbnN0IGtleXMgPSBbXG4gICAgJ25vdGlmaWNhdGlvbi53ZWxjb21lJyxcbiAgICAnbm90aWZpY2F0aW9uLnZlcmlmaWNhdGlvbicsXG4gICAgJ25vdGlmaWNhdGlvbi5wYXNzd29yZFJlc2V0JyxcbiAgICAnbm90aWZpY2F0aW9uLnByb2ZpbGVVcGRhdGUnXG4gIF07XG5cbiAgY29uc3QgZmFsbGJhY2tNYXAgPSB7XG4gICAgJ25vdGlmaWNhdGlvbi53ZWxjb21lJzogJ1dlbGNvbWUgdG8gVG9yY2hPbmUhJyxcbiAgICAnbm90aWZpY2F0aW9uLnZlcmlmaWNhdGlvbic6ICdQbGVhc2UgdmVyaWZ5IHlvdXIgYWNjb3VudC4nLFxuICAgICdub3RpZmljYXRpb24ucGFzc3dvcmRSZXNldCc6ICdZb3VyIHBhc3N3b3JkIGhhcyBiZWVuIHJlc2V0LicsXG4gICAgJ25vdGlmaWNhdGlvbi5wcm9maWxlVXBkYXRlJzogJ1lvdXIgcHJvZmlsZSBoYXMgYmVlbiB1cGRhdGVkLidcbiAgfTtcblxuICBjb25zdCB0cmFuc2xhdGlvbnMgPSBhd2FpdCBkYkkxOG5CYXRjaChjb250ZXh0LCBrZXlzLCBmYWxsYmFja01hcCwgbG9jYWxlKTtcblxuICByZXR1cm4gdHJhbnNsYXRpb25zO1xufVxuXG4vLyBFeGFtcGxlIDU6IEVycm9yIGhhbmRsaW5nIHdpdGggZmFsbGJhY2tcbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRFcnJvck1lc3NhZ2UoY29udGV4dDogQXBpQ29udGV4dCwgZXJyb3JDb2RlOiBzdHJpbmcsIGxvY2FsZTogTG9jYWxlID0gJ2VuJykge1xuICB0cnkge1xuICAgIGNvbnN0IG1lc3NhZ2UgPSBhd2FpdCBkYkkxOG4oXG4gICAgICBjb250ZXh0LFxuICAgICAgYGVycm9yLiR7ZXJyb3JDb2RlfWAsXG4gICAgICBgQW4gZXJyb3Igb2NjdXJyZWQ6ICR7ZXJyb3JDb2RlfWAsXG4gICAgICBsb2NhbGVcbiAgICApO1xuICAgIHJldHVybiBtZXNzYWdlO1xuICB9IGNhdGNoKGVycm9yKSB7XG4gICAgLy8gSWYgZGF0YWJhc2UgaXMgdW5hdmFpbGFibGUsIHJldHVybiBmYWxsYmFja1xuICAgIGNvbnNvbGUuZXJyb3IoJ0RhdGFiYXNlIGVycm9yLCB1c2luZyBmYWxsYmFjazonLCBlcnJvcik7XG4gICAgcmV0dXJuIGBBbiBlcnJvciBvY2N1cnJlZDogJHtlcnJvckNvZGV9YDtcbiAgfVxufVxuXG4vLyBFeGFtcGxlIDY6IER5bmFtaWMgY29udGVudCBiYXNlZCBvbiB1c2VyIHByZWZlcmVuY2VzXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0VXNlckdyZWV0aW5nKGNvbnRleHQ6IEFwaUNvbnRleHQsIHVzZXJMb2NhbGU/OiBzdHJpbmcpIHtcbiAgLy8gVXNlIHVzZXIncyBsb2NhbGUgaWYgYXZhaWxhYmxlLCBvdGhlcndpc2UgZGVmYXVsdCB0byAnZW4nXG4gIGNvbnN0IGxvY2FsZTogTG9jYWxlID0gKHVzZXJMb2NhbGUgYXMgTG9jYWxlKSB8fCAnZW4nO1xuXG4gIGNvbnN0IGdyZWV0aW5nID0gYXdhaXQgZGJJMThuKFxuICAgIGNvbnRleHQsXG4gICAgJ2dyZWV0aW5nLm1vcm5pbmcnLFxuICAgICdHb29kIG1vcm5pbmchJyxcbiAgICBsb2NhbGVcbiAgKTtcblxuICByZXR1cm4gZ3JlZXRpbmc7XG59XG5cbi8vIFVzYWdlIGV4YW1wbGVzOlxuLy8gY29uc3QgY29udGV4dCA9IHsgZGF0YWJhc2VOYW1lOiAndG9yY2hvbmUtZGV2Jywgc2Vzc2lvbjogeyB1c2VySWQ6ICd1c2VyMTIzJyB9IH07XG4vLyBhd2FpdCBzZW5kV2VsY29tZVNNUyhjb250ZXh0LCAnSm9obicsICcrMTIzNDU2Nzg5MCcpO1xuLy8gYXdhaXQgc2VuZFZlcmlmaWNhdGlvbkNvZGUoY29udGV4dCwgJzEyMzQ1NicsICdlcycpO1xuLy8gY29uc3QgZW1haWwgPSBhd2FpdCBnZW5lcmF0ZVdlbGNvbWVFbWFpbChjb250ZXh0LCAnTWFyaWEnLCAncHQnKTtcbi8vIGNvbnN0IG5vdGlmaWNhdGlvbnMgPSBhd2FpdCBnZW5lcmF0ZU5vdGlmaWNhdGlvbk1lc3NhZ2VzKGNvbnRleHQsICdmcicpO1xuLy8gY29uc3QgZXJyb3JNc2cgPSBhd2FpdCBnZXRFcnJvck1lc3NhZ2UoY29udGV4dCwgJ0lOVkFMSURfRU1BSUwnLCAnZGUnKTtcbi8vIGNvbnN0IGdyZWV0aW5nID0gYXdhaXQgZ2V0VXNlckdyZWV0aW5nKGNvbnRleHQsICdlbicpOyJdLAogICJtYXBwaW5ncyI6ICJBQVVBLE9BQVEsVUFBQUEsRUFBUSxlQUFBQyxFQUFhLGtCQUFBQyxFQUFnQiwyQkFBQUMsTUFBOEIsY0FNM0UsZUFBc0JDLEVBQWVDLEVBQXFCQyxFQUFrQkMsRUFBcUIsQ0FTL0YsT0FSZ0IsTUFBTVAsRUFDcEJLLEVBQ0EsY0FDQSx5RUFDQSxJQUNGLENBSUYsQ0FHQSxlQUFzQkcsRUFDcEJILEVBQ0FJLEVBQ0FDLEVBQWlCLEtBQ2pCLENBVUEsT0FUZ0IsTUFBTVAsRUFDcEJFLEVBQ0EsdUJBQ0Esc0NBQ0EsQ0FBQyxLQUFBSSxDQUFJLEVBQ0xDLENBQ0YsQ0FJRixDQUdBLGVBQXNCQyxFQUFxQk4sRUFBcUJDLEVBQWtCSSxFQUFpQixLQUFNLENBQ3ZHLEtBQU0sQ0FBQ0UsRUFBZ0JDLEVBQW1CQyxDQUFhLEVBQUksTUFBTVosRUFBZUcsRUFBUyxDQUN2RixDQUNFLElBQUssZ0JBQ0wsU0FBVSxxQ0FDVixPQUFBSyxDQUNGLEVBQ0EsQ0FDRSxJQUFLLG1CQUNMLFNBQVUseUVBQ1YsT0FBQUEsQ0FDRixFQUNBLENBQ0UsSUFBSyxzQkFDTCxTQUFVLG9CQUNWLE9BQUFBLENBQ0YsQ0FDRixDQUFDLEVBR0tLLEVBQXNCSCxFQUFlLFFBQVEsb0JBQXFCTixDQUFRLEVBRWhGLE1BQU8sQ0FDTCxRQUFTUyxFQUNULEtBQU0sR0FBR0EsQ0FBbUI7QUFBQTtBQUFBLEVBQU9GLENBQWlCO0FBQUE7QUFBQSxFQUFPQyxDQUFhLEVBQzFFLENBQ0YsQ0FHQSxlQUFzQkUsRUFBNkJYLEVBQXFCSyxFQUFpQixLQUFNLENBaUI3RixPQUZxQixNQUFNVCxFQUFZSSxFQWQxQixDQUNYLHVCQUNBLDRCQUNBLDZCQUNBLDRCQUNGLEVBRW9CLENBQ2xCLHVCQUF3Qix1QkFDeEIsNEJBQTZCLDhCQUM3Qiw2QkFBOEIsZ0NBQzlCLDZCQUE4QixnQ0FDaEMsRUFFbUVLLENBQU0sQ0FHM0UsQ0FHQSxlQUFzQk8sRUFBZ0JaLEVBQXFCYSxFQUFtQlIsRUFBaUIsS0FBTSxDQUNuRyxHQUFJLENBT0YsT0FOZ0IsTUFBTVYsRUFDcEJLLEVBQ0EsU0FBU2EsQ0FBUyxHQUNsQixzQkFBc0JBLENBQVMsR0FDL0JSLENBQ0YsQ0FFRixNQUFlLENBR2IsTUFBTyxzQkFBc0JRLENBQVMsRUFDeEMsQ0FDRixDQUdBLGVBQXNCQyxFQUFnQmQsRUFBcUJlLEVBQXFCLENBVzlFLE9BUGlCLE1BQU1wQixFQUNyQkssRUFDQSxtQkFDQSxnQkFMc0JlLEdBQXlCLElBT2pELENBR0YiLAogICJuYW1lcyI6IFsiZGJJMThuIiwgImRiSTE4bkJhdGNoIiwgImRiSTE4bk11bHRpcGxlIiwgImRiSTE4bldpdGhJbnRlcnBvbGF0aW9uIiwgInNlbmRXZWxjb21lU01TIiwgImNvbnRleHQiLCAidXNlcm5hbWUiLCAicGhvbmVOdW1iZXIiLCAic2VuZFZlcmlmaWNhdGlvbkNvZGUiLCAiY29kZSIsICJsb2NhbGUiLCAiZ2VuZXJhdGVXZWxjb21lRW1haWwiLCAid2VsY29tZU1lc3NhZ2UiLCAiZ2V0U3RhcnRlZE1lc3NhZ2UiLCAidGVhbVNpZ25hdHVyZSIsICJpbnRlcnBvbGF0ZWRXZWxjb21lIiwgImdlbmVyYXRlTm90aWZpY2F0aW9uTWVzc2FnZXMiLCAiZ2V0RXJyb3JNZXNzYWdlIiwgImVycm9yQ29kZSIsICJnZXRVc2VyR3JlZXRpbmciLCAidXNlckxvY2FsZSJdCn0K
|
|
93
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9uaXRyb2c3L0RldmVsb3BtZW50L3JlYWt0b3Ivc3JjL3V0aWxzL2RiSTE4bi5leGFtcGxlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQ29weXJpZ2h0IChjKSAyMDI1LVByZXNlbnQsIE5pdHJvZ2VuIExhYnMsIEluYy5cbiAqIENvcHlyaWdodHMgbGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlLiBTZWUgdGhlIGFjY29tcGFueWluZyBMSUNFTlNFIGZpbGUgZm9yIHRlcm1zLlxuICpcbiAqIEV4YW1wbGUgdXNhZ2Ugb2YgdGhlIGRhdGFiYXNlLWRyaXZlbiBpMThuIHN5c3RlbVxuICpcbiAqIFRoaXMgZGVtb25zdHJhdGVzIGhvdyB0byB1c2UgdGhlIG5ldyBpMThuIHV0aWxpdHkgdGhhdCBmZXRjaGVzXG4gKiB0cmFuc2xhdGlvbnMgZnJvbSB0aGUgZGF0YWJhc2Ugd2l0aCBmYWxsYmFjayBzdXBwb3J0LlxuICovXG5cbmltcG9ydCB7ZGJJMThuLCBkYkkxOG5CYXRjaCwgZGJJMThuTXVsdGlwbGUsIGRiSTE4bldpdGhJbnRlcnBvbGF0aW9ufSBmcm9tICcuL2RiSTE4bi5qcyc7XG5cbmltcG9ydCB0eXBlIHtBcGlDb250ZXh0fSBmcm9tICcuLi90eXBlcy9hdXRoLnR5cGVzLmpzJztcbmltcG9ydCB0eXBlIHtMb2NhbGV9IGZyb20gJy4uL3R5cGVzL2NvbnRlbnQudHlwZXMuanMnO1xuXG4vLyBFeGFtcGxlIDE6IEJhc2ljIGRhdGFiYXNlIHRyYW5zbGF0aW9uIHdpdGggZmFsbGJhY2tcbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBzZW5kV2VsY29tZVNNUyhjb250ZXh0OiBBcGlDb250ZXh0LCB1c2VybmFtZTogc3RyaW5nLCBwaG9uZU51bWJlcjogc3RyaW5nKSB7XG4gIGNvbnN0IG1lc3NhZ2UgPSBhd2FpdCBkYkkxOG4oXG4gICAgY29udGV4dCxcbiAgICAnc21zLndlbGNvbWUnLFxuICAgICdXZWxjb21lIHRvIFRvcmNoT25lLCB7e3VzZXJuYW1lfX0hIFRoYW5rIHlvdSBmb3Igam9pbmluZyBvdXIgcGxhdGZvcm0uJyxcbiAgICAnZW4nXG4gICk7XG5cbiAgY29uc29sZS5sb2coYFNlbmRpbmcgU01TIHRvICR7cGhvbmVOdW1iZXJ9OiAke21lc3NhZ2V9YCk7XG4gIHJldHVybiBtZXNzYWdlO1xufVxuXG4vLyBFeGFtcGxlIDI6IFRyYW5zbGF0aW9uIHdpdGggaW50ZXJwb2xhdGlvblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHNlbmRWZXJpZmljYXRpb25Db2RlKFxuICBjb250ZXh0OiBBcGlDb250ZXh0LFxuICBjb2RlOiBzdHJpbmcsXG4gIGxvY2FsZTogTG9jYWxlID0gJ2VuJ1xuKSB7XG4gIGNvbnN0IG1lc3NhZ2UgPSBhd2FpdCBkYkkxOG5XaXRoSW50ZXJwb2xhdGlvbihcbiAgICBjb250ZXh0LFxuICAgICdzbXMudmVyaWZpY2F0aW9uQ29kZScsXG4gICAgJ1lvdXIgdmVyaWZpY2F0aW9uIGNvZGUgaXM6IHt7Y29kZX19JyxcbiAgICB7Y29kZX0sXG4gICAgbG9jYWxlXG4gICk7XG5cbiAgY29uc29sZS5sb2coYFNlbmRpbmcgdmVyaWZpY2F0aW9uIGNvZGUgaW4gJHtsb2NhbGV9OiAke21lc3NhZ2V9YCk7XG4gIHJldHVybiBtZXNzYWdlO1xufVxuXG4vLyBFeGFtcGxlIDM6IE11bHRpcGxlIHRyYW5zbGF0aW9ucyBhdCBvbmNlXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2VuZXJhdGVXZWxjb21lRW1haWwoY29udGV4dDogQXBpQ29udGV4dCwgdXNlcm5hbWU6IHN0cmluZywgbG9jYWxlOiBMb2NhbGUgPSAnZW4nKSB7XG4gIGNvbnN0IFt3ZWxjb21lTWVzc2FnZSwgZ2V0U3RhcnRlZE1lc3NhZ2UsIHRlYW1TaWduYXR1cmVdID0gYXdhaXQgZGJJMThuTXVsdGlwbGUoY29udGV4dCwgW1xuICAgIHtcbiAgICAgIGtleTogJ2VtYWlsLndlbGNvbWUnLFxuICAgICAgZmFsbGJhY2s6ICdXZWxjb21lIHRvIFRvcmNoT25lLCB7e3VzZXJuYW1lfX0hJyxcbiAgICAgIGxvY2FsZVxuICAgIH0sXG4gICAge1xuICAgICAga2V5OiAnZW1haWwuZ2V0U3RhcnRlZCcsXG4gICAgICBmYWxsYmFjazogJ1RvIGdldCBzdGFydGVkLCBwbGVhc2UgY29tcGxldGUgeW91ciBwcm9maWxlIGFuZCBleHBsb3JlIG91ciBmZWF0dXJlcy4nLFxuICAgICAgbG9jYWxlXG4gICAgfSxcbiAgICB7XG4gICAgICBrZXk6ICdlbWFpbC50ZWFtU2lnbmF0dXJlJyxcbiAgICAgIGZhbGxiYWNrOiAnVGhlIFRvcmNoT25lIFRlYW0nLFxuICAgICAgbG9jYWxlXG4gICAgfVxuICBdKTtcblxuICAvLyBBcHBseSBpbnRlcnBvbGF0aW9uIHRvIHdlbGNvbWUgbWVzc2FnZVxuICBjb25zdCBpbnRlcnBvbGF0ZWRXZWxjb21lID0gd2VsY29tZU1lc3NhZ2UucmVwbGFjZSgvXFx7XFx7dXNlcm5hbWVcXH1cXH0vZywgdXNlcm5hbWUpO1xuXG4gIHJldHVybiB7XG4gICAgc3ViamVjdDogaW50ZXJwb2xhdGVkV2VsY29tZSxcbiAgICBib2R5OiBgJHtpbnRlcnBvbGF0ZWRXZWxjb21lfVxcblxcbiR7Z2V0U3RhcnRlZE1lc3NhZ2V9XFxuXFxuJHt0ZWFtU2lnbmF0dXJlfWBcbiAgfTtcbn1cblxuLy8gRXhhbXBsZSA0OiBCYXRjaCB0cmFuc2xhdGlvbiBmb3IgYmV0dGVyIHBlcmZvcm1hbmNlXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2VuZXJhdGVOb3RpZmljYXRpb25NZXNzYWdlcyhjb250ZXh0OiBBcGlDb250ZXh0LCBsb2NhbGU6IExvY2FsZSA9ICdlbicpIHtcbiAgY29uc3Qga2V5cyA9IFtcbiAgICAnbm90aWZpY2F0aW9uLndlbGNvbWUnLFxuICAgICdub3RpZmljYXRpb24udmVyaWZpY2F0aW9uJyxcbiAgICAnbm90aWZpY2F0aW9uLnBhc3N3b3JkUmVzZXQnLFxuICAgICdub3RpZmljYXRpb24ucHJvZmlsZVVwZGF0ZSdcbiAgXTtcblxuICBjb25zdCBmYWxsYmFja01hcCA9IHtcbiAgICAnbm90aWZpY2F0aW9uLndlbGNvbWUnOiAnV2VsY29tZSB0byBUb3JjaE9uZSEnLFxuICAgICdub3RpZmljYXRpb24udmVyaWZpY2F0aW9uJzogJ1BsZWFzZSB2ZXJpZnkgeW91ciBhY2NvdW50LicsXG4gICAgJ25vdGlmaWNhdGlvbi5wYXNzd29yZFJlc2V0JzogJ1lvdXIgcGFzc3dvcmQgaGFzIGJlZW4gcmVzZXQuJyxcbiAgICAnbm90aWZpY2F0aW9uLnByb2ZpbGVVcGRhdGUnOiAnWW91ciBwcm9maWxlIGhhcyBiZWVuIHVwZGF0ZWQuJ1xuICB9O1xuXG4gIGNvbnN0IHRyYW5zbGF0aW9ucyA9IGF3YWl0IGRiSTE4bkJhdGNoKGNvbnRleHQsIGtleXMsIGZhbGxiYWNrTWFwLCBsb2NhbGUpO1xuXG4gIHJldHVybiB0cmFuc2xhdGlvbnM7XG59XG5cbi8vIEV4YW1wbGUgNTogRXJyb3IgaGFuZGxpbmcgd2l0aCBmYWxsYmFja1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldEVycm9yTWVzc2FnZShjb250ZXh0OiBBcGlDb250ZXh0LCBlcnJvckNvZGU6IHN0cmluZywgbG9jYWxlOiBMb2NhbGUgPSAnZW4nKSB7XG4gIHRyeSB7XG4gICAgY29uc3QgbWVzc2FnZSA9IGF3YWl0IGRiSTE4bihcbiAgICAgIGNvbnRleHQsXG4gICAgICBgZXJyb3IuJHtlcnJvckNvZGV9YCxcbiAgICAgIGBBbiBlcnJvciBvY2N1cnJlZDogJHtlcnJvckNvZGV9YCxcbiAgICAgIGxvY2FsZVxuICAgICk7XG4gICAgcmV0dXJuIG1lc3NhZ2U7XG4gIH0gY2F0Y2goZXJyb3IpIHtcbiAgICAvLyBJZiBkYXRhYmFzZSBpcyB1bmF2YWlsYWJsZSwgcmV0dXJuIGZhbGxiYWNrXG4gICAgY29uc29sZS5lcnJvcignRGF0YWJhc2UgZXJyb3IsIHVzaW5nIGZhbGxiYWNrOicsIGVycm9yKTtcbiAgICByZXR1cm4gYEFuIGVycm9yIG9jY3VycmVkOiAke2Vycm9yQ29kZX1gO1xuICB9XG59XG5cbi8vIEV4YW1wbGUgNjogRHluYW1pYyBjb250ZW50IGJhc2VkIG9uIHVzZXIgcHJlZmVyZW5jZXNcbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRVc2VyR3JlZXRpbmcoY29udGV4dDogQXBpQ29udGV4dCwgdXNlckxvY2FsZT86IHN0cmluZykge1xuICAvLyBVc2UgdXNlcidzIGxvY2FsZSBpZiBhdmFpbGFibGUsIG90aGVyd2lzZSBkZWZhdWx0IHRvICdlbidcbiAgY29uc3QgbG9jYWxlOiBMb2NhbGUgPSAodXNlckxvY2FsZSBhcyBMb2NhbGUpIHx8ICdlbic7XG5cbiAgY29uc3QgZ3JlZXRpbmcgPSBhd2FpdCBkYkkxOG4oXG4gICAgY29udGV4dCxcbiAgICAnZ3JlZXRpbmcubW9ybmluZycsXG4gICAgJ0dvb2QgbW9ybmluZyEnLFxuICAgIGxvY2FsZVxuICApO1xuXG4gIHJldHVybiBncmVldGluZztcbn1cblxuLy8gVXNhZ2UgZXhhbXBsZXM6XG4vLyBjb25zdCBjb250ZXh0ID0geyBkYXRhYmFzZU5hbWU6ICd0b3JjaG9uZS1kZXYnLCBzZXNzaW9uOiB7IHVzZXJJZDogJ3VzZXIxMjMnIH0gfTtcbi8vIGF3YWl0IHNlbmRXZWxjb21lU01TKGNvbnRleHQsICdKb2huJywgJysxMjM0NTY3ODkwJyk7XG4vLyBhd2FpdCBzZW5kVmVyaWZpY2F0aW9uQ29kZShjb250ZXh0LCAnMTIzNDU2JywgJ2VzJyk7XG4vLyBjb25zdCBlbWFpbCA9IGF3YWl0IGdlbmVyYXRlV2VsY29tZUVtYWlsKGNvbnRleHQsICdNYXJpYScsICdwdCcpO1xuLy8gY29uc3Qgbm90aWZpY2F0aW9ucyA9IGF3YWl0IGdlbmVyYXRlTm90aWZpY2F0aW9uTWVzc2FnZXMoY29udGV4dCwgJ2ZyJyk7XG4vLyBjb25zdCBlcnJvck1zZyA9IGF3YWl0IGdldEVycm9yTWVzc2FnZShjb250ZXh0LCAnSU5WQUxJRF9FTUFJTCcsICdkZScpO1xuLy8gY29uc3QgZ3JlZXRpbmcgPSBhd2FpdCBnZXRVc2VyR3JlZXRpbmcoY29udGV4dCwgJ2VuJyk7Il0sIm5hbWVzIjpbImRiSTE4biIsImRiSTE4bkJhdGNoIiwiZGJJMThuTXVsdGlwbGUiLCJkYkkxOG5XaXRoSW50ZXJwb2xhdGlvbiIsInNlbmRXZWxjb21lU01TIiwiY29udGV4dCIsInVzZXJuYW1lIiwicGhvbmVOdW1iZXIiLCJtZXNzYWdlIiwiY29uc29sZSIsImxvZyIsInNlbmRWZXJpZmljYXRpb25Db2RlIiwiY29kZSIsImxvY2FsZSIsImdlbmVyYXRlV2VsY29tZUVtYWlsIiwid2VsY29tZU1lc3NhZ2UiLCJnZXRTdGFydGVkTWVzc2FnZSIsInRlYW1TaWduYXR1cmUiLCJrZXkiLCJmYWxsYmFjayIsImludGVycG9sYXRlZFdlbGNvbWUiLCJyZXBsYWNlIiwic3ViamVjdCIsImJvZHkiLCJnZW5lcmF0ZU5vdGlmaWNhdGlvbk1lc3NhZ2VzIiwia2V5cyIsImZhbGxiYWNrTWFwIiwidHJhbnNsYXRpb25zIiwiZ2V0RXJyb3JNZXNzYWdlIiwiZXJyb3JDb2RlIiwiZXJyb3IiLCJnZXRVc2VyR3JlZXRpbmciLCJ1c2VyTG9jYWxlIiwiZ3JlZXRpbmciXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7OztDQVFDLEdBRUQsU0FBUUEsTUFBTSxFQUFFQyxXQUFXLEVBQUVDLGNBQWMsRUFBRUMsdUJBQXVCLFFBQU8sY0FBYztBQUt6RixzREFBc0Q7QUFDdEQsT0FBTyxlQUFlQyxlQUFlQyxPQUFtQixFQUFFQyxRQUFnQixFQUFFQyxXQUFtQjtJQUM3RixNQUFNQyxVQUFVLE1BQU1SLE9BQ3BCSyxTQUNBLGVBQ0EsMEVBQ0E7SUFHRkksUUFBUUMsR0FBRyxDQUFDLENBQUMsZUFBZSxFQUFFSCxZQUFZLEVBQUUsRUFBRUMsU0FBUztJQUN2RCxPQUFPQTtBQUNUO0FBRUEsNENBQTRDO0FBQzVDLE9BQU8sZUFBZUcscUJBQ3BCTixPQUFtQixFQUNuQk8sSUFBWSxFQUNaQyxTQUFpQixJQUFJO0lBRXJCLE1BQU1MLFVBQVUsTUFBTUwsd0JBQ3BCRSxTQUNBLHdCQUNBLHVDQUNBO1FBQUNPO0lBQUksR0FDTEM7SUFHRkosUUFBUUMsR0FBRyxDQUFDLENBQUMsNkJBQTZCLEVBQUVHLE9BQU8sRUFBRSxFQUFFTCxTQUFTO0lBQ2hFLE9BQU9BO0FBQ1Q7QUFFQSwyQ0FBMkM7QUFDM0MsT0FBTyxlQUFlTSxxQkFBcUJULE9BQW1CLEVBQUVDLFFBQWdCLEVBQUVPLFNBQWlCLElBQUk7SUFDckcsTUFBTSxDQUFDRSxnQkFBZ0JDLG1CQUFtQkMsY0FBYyxHQUFHLE1BQU1mLGVBQWVHLFNBQVM7UUFDdkY7WUFDRWEsS0FBSztZQUNMQyxVQUFVO1lBQ1ZOO1FBQ0Y7UUFDQTtZQUNFSyxLQUFLO1lBQ0xDLFVBQVU7WUFDVk47UUFDRjtRQUNBO1lBQ0VLLEtBQUs7WUFDTEMsVUFBVTtZQUNWTjtRQUNGO0tBQ0Q7SUFFRCx5Q0FBeUM7SUFDekMsTUFBTU8sc0JBQXNCTCxlQUFlTSxPQUFPLENBQUMscUJBQXFCZjtJQUV4RSxPQUFPO1FBQ0xnQixTQUFTRjtRQUNURyxNQUFNLEdBQUdILG9CQUFvQixJQUFJLEVBQUVKLGtCQUFrQixJQUFJLEVBQUVDLGVBQWU7SUFDNUU7QUFDRjtBQUVBLHNEQUFzRDtBQUN0RCxPQUFPLGVBQWVPLDZCQUE2Qm5CLE9BQW1CLEVBQUVRLFNBQWlCLElBQUk7SUFDM0YsTUFBTVksT0FBTztRQUNYO1FBQ0E7UUFDQTtRQUNBO0tBQ0Q7SUFFRCxNQUFNQyxjQUFjO1FBQ2xCLHdCQUF3QjtRQUN4Qiw2QkFBNkI7UUFDN0IsOEJBQThCO1FBQzlCLDhCQUE4QjtJQUNoQztJQUVBLE1BQU1DLGVBQWUsTUFBTTFCLFlBQVlJLFNBQVNvQixNQUFNQyxhQUFhYjtJQUVuRSxPQUFPYztBQUNUO0FBRUEsMENBQTBDO0FBQzFDLE9BQU8sZUFBZUMsZ0JBQWdCdkIsT0FBbUIsRUFBRXdCLFNBQWlCLEVBQUVoQixTQUFpQixJQUFJO0lBQ2pHLElBQUk7UUFDRixNQUFNTCxVQUFVLE1BQU1SLE9BQ3BCSyxTQUNBLENBQUMsTUFBTSxFQUFFd0IsV0FBVyxFQUNwQixDQUFDLG1CQUFtQixFQUFFQSxXQUFXLEVBQ2pDaEI7UUFFRixPQUFPTDtJQUNULEVBQUUsT0FBTXNCLE9BQU87UUFDYiw4Q0FBOEM7UUFDOUNyQixRQUFRcUIsS0FBSyxDQUFDLG1DQUFtQ0E7UUFDakQsT0FBTyxDQUFDLG1CQUFtQixFQUFFRCxXQUFXO0lBQzFDO0FBQ0Y7QUFFQSx1REFBdUQ7QUFDdkQsT0FBTyxlQUFlRSxnQkFBZ0IxQixPQUFtQixFQUFFMkIsVUFBbUI7SUFDNUUsNERBQTREO0lBQzVELE1BQU1uQixTQUFpQixBQUFDbUIsY0FBeUI7SUFFakQsTUFBTUMsV0FBVyxNQUFNakMsT0FDckJLLFNBQ0Esb0JBQ0EsaUJBQ0FRO0lBR0YsT0FBT29CO0FBQ1QsRUFFQSxrQkFBa0I7Q0FDbEIsb0ZBQW9GO0NBQ3BGLHdEQUF3RDtDQUN4RCx1REFBdUQ7Q0FDdkQsb0VBQW9FO0NBQ3BFLDJFQUEyRTtDQUMzRSwwRUFBMEU7Q0FDMUUseURBQXlEIn0=
|
package/lib/utils/dbI18n.js
CHANGED
|
@@ -1,2 +1,28 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2025-Present, Nitrogen Labs, Inc.
|
|
3
|
+
* Copyrights licensed under the MIT License. See the accompanying LICENSE file for terms.
|
|
4
|
+
*/ import { getContentWithFallback } from '../actions/content.js';
|
|
5
|
+
export const dbI18n = async (context, key, fallbackContent, locale = 'en')=>getContentWithFallback(context, key, fallbackContent, locale);
|
|
6
|
+
export const dbI18nMultiple = async (context, translations)=>{
|
|
7
|
+
const promises = translations.map(({ key, fallback, locale = 'en' })=>getContentWithFallback(context, key, fallback, locale));
|
|
8
|
+
return Promise.all(promises);
|
|
9
|
+
};
|
|
10
|
+
export const dbI18nWithInterpolation = async (context, key, fallbackContent, interpolation = {}, locale = 'en')=>{
|
|
11
|
+
const content = await getContentWithFallback(context, key, fallbackContent, locale);
|
|
12
|
+
return content.replace(/\{\{(\w+)\}\}/g, (match, key)=>interpolation[key] !== undefined ? String(interpolation[key]) : match);
|
|
13
|
+
};
|
|
14
|
+
export const dbI18nBatch = async (context, keys, fallbackMap, locale = 'en')=>{
|
|
15
|
+
const translations = keys.map((key)=>({
|
|
16
|
+
key,
|
|
17
|
+
fallback: fallbackMap[key] || key,
|
|
18
|
+
locale
|
|
19
|
+
}));
|
|
20
|
+
const results = await dbI18nMultiple(context, translations);
|
|
21
|
+
const resultMap = {};
|
|
22
|
+
keys.forEach((key, index)=>{
|
|
23
|
+
resultMap[key] = results[index];
|
|
24
|
+
});
|
|
25
|
+
return resultMap;
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9uaXRyb2c3L0RldmVsb3BtZW50L3JlYWt0b3Ivc3JjL3V0aWxzL2RiSTE4bi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIENvcHlyaWdodCAoYykgMjAyNS1QcmVzZW50LCBOaXRyb2dlbiBMYWJzLCBJbmMuXG4gKiBDb3B5cmlnaHRzIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZS4gU2VlIHRoZSBhY2NvbXBhbnlpbmcgTElDRU5TRSBmaWxlIGZvciB0ZXJtcy5cbiAqL1xuaW1wb3J0IHtnZXRDb250ZW50V2l0aEZhbGxiYWNrfSBmcm9tICcuLi9hY3Rpb25zL2NvbnRlbnQuanMnO1xuXG5pbXBvcnQgdHlwZSB7QXBpQ29udGV4dH0gZnJvbSAnLi4vdHlwZXMvYXV0aC50eXBlcy5qcyc7XG5pbXBvcnQgdHlwZSB7TG9jYWxlfSBmcm9tICcuLi90eXBlcy9jb250ZW50LnR5cGVzLmpzJztcblxuZXhwb3J0IGNvbnN0IGRiSTE4biA9IGFzeW5jIChcbiAgY29udGV4dDogQXBpQ29udGV4dCxcbiAga2V5OiBzdHJpbmcsXG4gIGZhbGxiYWNrQ29udGVudDogc3RyaW5nLFxuICBsb2NhbGU6IExvY2FsZSA9ICdlbidcbik6IFByb21pc2U8c3RyaW5nPiA9PiBnZXRDb250ZW50V2l0aEZhbGxiYWNrKGNvbnRleHQsIGtleSwgZmFsbGJhY2tDb250ZW50LCBsb2NhbGUpO1xuXG5leHBvcnQgY29uc3QgZGJJMThuTXVsdGlwbGUgPSBhc3luYyAoXG4gIGNvbnRleHQ6IEFwaUNvbnRleHQsXG4gIHRyYW5zbGF0aW9uczogQXJyYXk8e1xuICAgIGtleTogc3RyaW5nO1xuICAgIGZhbGxiYWNrOiBzdHJpbmc7XG4gICAgbG9jYWxlPzogTG9jYWxlO1xuICB9PlxuKTogUHJvbWlzZTxzdHJpbmdbXT4gPT4ge1xuICBjb25zdCBwcm9taXNlcyA9IHRyYW5zbGF0aW9ucy5tYXAoKHtrZXksIGZhbGxiYWNrLCBsb2NhbGUgPSAnZW4nfSkgPT5cbiAgICBnZXRDb250ZW50V2l0aEZhbGxiYWNrKGNvbnRleHQsIGtleSwgZmFsbGJhY2ssIGxvY2FsZSlcbiAgKTtcblxuICByZXR1cm4gUHJvbWlzZS5hbGwocHJvbWlzZXMpO1xufTtcblxuZXhwb3J0IGNvbnN0IGRiSTE4bldpdGhJbnRlcnBvbGF0aW9uID0gYXN5bmMgKFxuICBjb250ZXh0OiBBcGlDb250ZXh0LFxuICBrZXk6IHN0cmluZyxcbiAgZmFsbGJhY2tDb250ZW50OiBzdHJpbmcsXG4gIGludGVycG9sYXRpb246IFJlY29yZDxzdHJpbmcsIGFueT4gPSB7fSxcbiAgbG9jYWxlOiBMb2NhbGUgPSAnZW4nXG4pOiBQcm9taXNlPHN0cmluZz4gPT4ge1xuICBjb25zdCBjb250ZW50ID0gYXdhaXQgZ2V0Q29udGVudFdpdGhGYWxsYmFjayhjb250ZXh0LCBrZXksIGZhbGxiYWNrQ29udGVudCwgbG9jYWxlKTtcblxuICByZXR1cm4gY29udGVudC5yZXBsYWNlKC9cXHtcXHsoXFx3KylcXH1cXH0vZywgKG1hdGNoLCBrZXkpID0+XG4gICAgKGludGVycG9sYXRpb25ba2V5XSAhPT0gdW5kZWZpbmVkID8gU3RyaW5nKGludGVycG9sYXRpb25ba2V5XSkgOiBtYXRjaClcbiAgKTtcbn07XG5cbmV4cG9ydCBjb25zdCBkYkkxOG5CYXRjaCA9IGFzeW5jIChcbiAgY29udGV4dDogQXBpQ29udGV4dCxcbiAga2V5czogc3RyaW5nW10sXG4gIGZhbGxiYWNrTWFwOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+LFxuICBsb2NhbGU6IExvY2FsZSA9ICdlbidcbik6IFByb21pc2U8UmVjb3JkPHN0cmluZywgc3RyaW5nPj4gPT4ge1xuICBjb25zdCB0cmFuc2xhdGlvbnMgPSBrZXlzLm1hcCgoa2V5KSA9PiAoe1xuICAgIGtleSxcbiAgICBmYWxsYmFjazogZmFsbGJhY2tNYXBba2V5XSB8fCBrZXksXG4gICAgbG9jYWxlXG4gIH0pKTtcblxuICBjb25zdCByZXN1bHRzID0gYXdhaXQgZGJJMThuTXVsdGlwbGUoY29udGV4dCwgdHJhbnNsYXRpb25zKTtcblxuICBjb25zdCByZXN1bHRNYXA6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7fTtcbiAga2V5cy5mb3JFYWNoKChrZXksIGluZGV4KSA9PiB7XG4gICAgcmVzdWx0TWFwW2tleV0gPSByZXN1bHRzW2luZGV4XTtcbiAgfSk7XG5cbiAgcmV0dXJuIHJlc3VsdE1hcDtcbn07Il0sIm5hbWVzIjpbImdldENvbnRlbnRXaXRoRmFsbGJhY2siLCJkYkkxOG4iLCJjb250ZXh0Iiwia2V5IiwiZmFsbGJhY2tDb250ZW50IiwibG9jYWxlIiwiZGJJMThuTXVsdGlwbGUiLCJ0cmFuc2xhdGlvbnMiLCJwcm9taXNlcyIsIm1hcCIsImZhbGxiYWNrIiwiUHJvbWlzZSIsImFsbCIsImRiSTE4bldpdGhJbnRlcnBvbGF0aW9uIiwiaW50ZXJwb2xhdGlvbiIsImNvbnRlbnQiLCJyZXBsYWNlIiwibWF0Y2giLCJ1bmRlZmluZWQiLCJTdHJpbmciLCJkYkkxOG5CYXRjaCIsImtleXMiLCJmYWxsYmFja01hcCIsInJlc3VsdHMiLCJyZXN1bHRNYXAiLCJmb3JFYWNoIiwiaW5kZXgiXSwibWFwcGluZ3MiOiJBQUFBOzs7Q0FHQyxHQUNELFNBQVFBLHNCQUFzQixRQUFPLHdCQUF3QjtBQUs3RCxPQUFPLE1BQU1DLFNBQVMsT0FDcEJDLFNBQ0FDLEtBQ0FDLGlCQUNBQyxTQUFpQixJQUFJLEdBQ0RMLHVCQUF1QkUsU0FBU0MsS0FBS0MsaUJBQWlCQyxRQUFRO0FBRXBGLE9BQU8sTUFBTUMsaUJBQWlCLE9BQzVCSixTQUNBSztJQU1BLE1BQU1DLFdBQVdELGFBQWFFLEdBQUcsQ0FBQyxDQUFDLEVBQUNOLEdBQUcsRUFBRU8sUUFBUSxFQUFFTCxTQUFTLElBQUksRUFBQyxHQUMvREwsdUJBQXVCRSxTQUFTQyxLQUFLTyxVQUFVTDtJQUdqRCxPQUFPTSxRQUFRQyxHQUFHLENBQUNKO0FBQ3JCLEVBQUU7QUFFRixPQUFPLE1BQU1LLDBCQUEwQixPQUNyQ1gsU0FDQUMsS0FDQUMsaUJBQ0FVLGdCQUFxQyxDQUFDLENBQUMsRUFDdkNULFNBQWlCLElBQUk7SUFFckIsTUFBTVUsVUFBVSxNQUFNZix1QkFBdUJFLFNBQVNDLEtBQUtDLGlCQUFpQkM7SUFFNUUsT0FBT1UsUUFBUUMsT0FBTyxDQUFDLGtCQUFrQixDQUFDQyxPQUFPZCxNQUM5Q1csYUFBYSxDQUFDWCxJQUFJLEtBQUtlLFlBQVlDLE9BQU9MLGFBQWEsQ0FBQ1gsSUFBSSxJQUFJYztBQUVyRSxFQUFFO0FBRUYsT0FBTyxNQUFNRyxjQUFjLE9BQ3pCbEIsU0FDQW1CLE1BQ0FDLGFBQ0FqQixTQUFpQixJQUFJO0lBRXJCLE1BQU1FLGVBQWVjLEtBQUtaLEdBQUcsQ0FBQyxDQUFDTixNQUFTLENBQUE7WUFDdENBO1lBQ0FPLFVBQVVZLFdBQVcsQ0FBQ25CLElBQUksSUFBSUE7WUFDOUJFO1FBQ0YsQ0FBQTtJQUVBLE1BQU1rQixVQUFVLE1BQU1qQixlQUFlSixTQUFTSztJQUU5QyxNQUFNaUIsWUFBb0MsQ0FBQztJQUMzQ0gsS0FBS0ksT0FBTyxDQUFDLENBQUN0QixLQUFLdUI7UUFDakJGLFNBQVMsQ0FBQ3JCLElBQUksR0FBR29CLE9BQU8sQ0FBQ0csTUFBTTtJQUNqQztJQUVBLE9BQU9GO0FBQ1QsRUFBRSJ9
|
|
@@ -4,3 +4,4 @@
|
|
|
4
4
|
*/
|
|
5
5
|
export declare const translateText: (text: string, targetLanguage: string, sourceLanguage?: string) => Promise<string>;
|
|
6
6
|
export declare const translateBatch: (texts: string[], targetLanguage: string, sourceLanguage?: string) => Promise<string[]>;
|
|
7
|
+
//# sourceMappingURL=googleTranslate.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"googleTranslate.d.ts","sourceRoot":"","sources":["../../src/utils/googleTranslate.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAaH,eAAO,MAAM,aAAa,GACxB,MAAM,MAAM,EACZ,gBAAgB,MAAM,EACtB,iBAAgB,MAAa,KAC5B,OAAO,CAAC,MAAM,CAqChB,CAAC;AAEF,eAAO,MAAM,cAAc,GACzB,OAAO,MAAM,EAAE,EACf,gBAAgB,MAAM,EACtB,iBAAgB,MAAa,KAC5B,OAAO,CAAC,MAAM,EAAE,CAqClB,CAAC"}
|
|
@@ -1,2 +1,70 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2025-Present, Nitrogen Labs, Inc.
|
|
3
|
+
* Copyrights licensed under the MIT License. See the accompanying LICENSE file for terms.
|
|
4
|
+
*/ import { Config } from '../config.js';
|
|
5
|
+
export const translateText = async (text, targetLanguage, sourceLanguage = 'en')=>{
|
|
6
|
+
try {
|
|
7
|
+
const apiKey = Config.get('google.key');
|
|
8
|
+
if (!apiKey) {
|
|
9
|
+
throw new Error('Google Translate API key not configured');
|
|
10
|
+
}
|
|
11
|
+
const url = `https://translation.googleapis.com/language/translate/v2?key=${apiKey}`;
|
|
12
|
+
const response = await fetch(url, {
|
|
13
|
+
method: 'POST',
|
|
14
|
+
headers: {
|
|
15
|
+
'Content-Type': 'application/json'
|
|
16
|
+
},
|
|
17
|
+
body: JSON.stringify({
|
|
18
|
+
q: text,
|
|
19
|
+
target: targetLanguage,
|
|
20
|
+
source: sourceLanguage,
|
|
21
|
+
format: 'text'
|
|
22
|
+
})
|
|
23
|
+
});
|
|
24
|
+
if (!response.ok) {
|
|
25
|
+
throw new Error(`Google Translate API error: ${response.status} ${response.statusText}`);
|
|
26
|
+
}
|
|
27
|
+
const data = await response.json();
|
|
28
|
+
if (!data.data?.translations?.[0]?.translatedText) {
|
|
29
|
+
throw new Error('Invalid response from Google Translate API');
|
|
30
|
+
}
|
|
31
|
+
return data.data.translations[0].translatedText;
|
|
32
|
+
} catch (error) {
|
|
33
|
+
console.error('Translation error:', error);
|
|
34
|
+
throw error;
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
export const translateBatch = async (texts, targetLanguage, sourceLanguage = 'en')=>{
|
|
38
|
+
try {
|
|
39
|
+
const apiKey = Config.get('google.key');
|
|
40
|
+
if (!apiKey) {
|
|
41
|
+
throw new Error('Google Translate API key not configured');
|
|
42
|
+
}
|
|
43
|
+
const url = `https://translation.googleapis.com/language/translate/v2?key=${apiKey}`;
|
|
44
|
+
const response = await fetch(url, {
|
|
45
|
+
method: 'POST',
|
|
46
|
+
headers: {
|
|
47
|
+
'Content-Type': 'application/json'
|
|
48
|
+
},
|
|
49
|
+
body: JSON.stringify({
|
|
50
|
+
q: texts,
|
|
51
|
+
target: targetLanguage,
|
|
52
|
+
source: sourceLanguage,
|
|
53
|
+
format: 'text'
|
|
54
|
+
})
|
|
55
|
+
});
|
|
56
|
+
if (!response.ok) {
|
|
57
|
+
throw new Error(`Google Translate API error: ${response.status} ${response.statusText}`);
|
|
58
|
+
}
|
|
59
|
+
const data = await response.json();
|
|
60
|
+
if (!data.data?.translations) {
|
|
61
|
+
throw new Error('Invalid response from Google Translate API');
|
|
62
|
+
}
|
|
63
|
+
return data.data.translations.map((t)=>t.translatedText);
|
|
64
|
+
} catch (error) {
|
|
65
|
+
console.error('Batch translation error:', error);
|
|
66
|
+
throw error;
|
|
67
|
+
}
|
|
68
|
+
};
|
|
69
|
+
|
|
70
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9uaXRyb2c3L0RldmVsb3BtZW50L3JlYWt0b3Ivc3JjL3V0aWxzL2dvb2dsZVRyYW5zbGF0ZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIENvcHlyaWdodCAoYykgMjAyNS1QcmVzZW50LCBOaXRyb2dlbiBMYWJzLCBJbmMuXG4gKiBDb3B5cmlnaHRzIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZS4gU2VlIHRoZSBhY2NvbXBhbnlpbmcgTElDRU5TRSBmaWxlIGZvciB0ZXJtcy5cbiAqL1xuXG5pbXBvcnQge0NvbmZpZ30gZnJvbSAnLi4vY29uZmlnLmpzJztcblxuaW50ZXJmYWNlIEdvb2dsZVRyYW5zbGF0ZVJlc3BvbnNlIHtcbiAgZGF0YToge1xuICAgIHRyYW5zbGF0aW9uczogQXJyYXk8e1xuICAgICAgdHJhbnNsYXRlZFRleHQ6IHN0cmluZztcbiAgICAgIGRldGVjdGVkU291cmNlTGFuZ3VhZ2U/OiBzdHJpbmc7XG4gICAgfT47XG4gIH07XG59XG5cbmV4cG9ydCBjb25zdCB0cmFuc2xhdGVUZXh0ID0gYXN5bmMgKFxuICB0ZXh0OiBzdHJpbmcsXG4gIHRhcmdldExhbmd1YWdlOiBzdHJpbmcsXG4gIHNvdXJjZUxhbmd1YWdlOiBzdHJpbmcgPSAnZW4nXG4pOiBQcm9taXNlPHN0cmluZz4gPT4ge1xuICB0cnkge1xuICAgIGNvbnN0IGFwaUtleSA9IENvbmZpZy5nZXQoJ2dvb2dsZS5rZXknKTtcbiAgICBpZighYXBpS2V5KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0dvb2dsZSBUcmFuc2xhdGUgQVBJIGtleSBub3QgY29uZmlndXJlZCcpO1xuICAgIH1cblxuICAgIGNvbnN0IHVybCA9IGBodHRwczovL3RyYW5zbGF0aW9uLmdvb2dsZWFwaXMuY29tL2xhbmd1YWdlL3RyYW5zbGF0ZS92Mj9rZXk9JHthcGlLZXl9YDtcblxuICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2godXJsLCB7XG4gICAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJ1xuICAgICAgfSxcbiAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHtcbiAgICAgICAgcTogdGV4dCxcbiAgICAgICAgdGFyZ2V0OiB0YXJnZXRMYW5ndWFnZSxcbiAgICAgICAgc291cmNlOiBzb3VyY2VMYW5ndWFnZSxcbiAgICAgICAgZm9ybWF0OiAndGV4dCdcbiAgICAgIH0pXG4gICAgfSk7XG5cbiAgICBpZighcmVzcG9uc2Uub2spIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgR29vZ2xlIFRyYW5zbGF0ZSBBUEkgZXJyb3I6ICR7cmVzcG9uc2Uuc3RhdHVzfSAke3Jlc3BvbnNlLnN0YXR1c1RleHR9YCk7XG4gICAgfVxuXG4gICAgY29uc3QgZGF0YSA9IGF3YWl0IHJlc3BvbnNlLmpzb24oKSBhcyBHb29nbGVUcmFuc2xhdGVSZXNwb25zZTtcblxuICAgIGlmKCFkYXRhLmRhdGE/LnRyYW5zbGF0aW9ucz8uWzBdPy50cmFuc2xhdGVkVGV4dCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIHJlc3BvbnNlIGZyb20gR29vZ2xlIFRyYW5zbGF0ZSBBUEknKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZGF0YS5kYXRhLnRyYW5zbGF0aW9uc1swXS50cmFuc2xhdGVkVGV4dDtcbiAgfSBjYXRjaChlcnJvcikge1xuICAgIGNvbnNvbGUuZXJyb3IoJ1RyYW5zbGF0aW9uIGVycm9yOicsIGVycm9yKTtcbiAgICB0aHJvdyBlcnJvcjtcbiAgfVxufTtcblxuZXhwb3J0IGNvbnN0IHRyYW5zbGF0ZUJhdGNoID0gYXN5bmMgKFxuICB0ZXh0czogc3RyaW5nW10sXG4gIHRhcmdldExhbmd1YWdlOiBzdHJpbmcsXG4gIHNvdXJjZUxhbmd1YWdlOiBzdHJpbmcgPSAnZW4nXG4pOiBQcm9taXNlPHN0cmluZ1tdPiA9PiB7XG4gIHRyeSB7XG4gICAgY29uc3QgYXBpS2V5ID0gQ29uZmlnLmdldCgnZ29vZ2xlLmtleScpO1xuICAgIGlmKCFhcGlLZXkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignR29vZ2xlIFRyYW5zbGF0ZSBBUEkga2V5IG5vdCBjb25maWd1cmVkJyk7XG4gICAgfVxuXG4gICAgY29uc3QgdXJsID0gYGh0dHBzOi8vdHJhbnNsYXRpb24uZ29vZ2xlYXBpcy5jb20vbGFuZ3VhZ2UvdHJhbnNsYXRlL3YyP2tleT0ke2FwaUtleX1gO1xuXG4gICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmZXRjaCh1cmwsIHtcbiAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgaGVhZGVyczoge1xuICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nXG4gICAgICB9LFxuICAgICAgYm9keTogSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgICBxOiB0ZXh0cyxcbiAgICAgICAgdGFyZ2V0OiB0YXJnZXRMYW5ndWFnZSxcbiAgICAgICAgc291cmNlOiBzb3VyY2VMYW5ndWFnZSxcbiAgICAgICAgZm9ybWF0OiAndGV4dCdcbiAgICAgIH0pXG4gICAgfSk7XG5cbiAgICBpZighcmVzcG9uc2Uub2spIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgR29vZ2xlIFRyYW5zbGF0ZSBBUEkgZXJyb3I6ICR7cmVzcG9uc2Uuc3RhdHVzfSAke3Jlc3BvbnNlLnN0YXR1c1RleHR9YCk7XG4gICAgfVxuXG4gICAgY29uc3QgZGF0YSA9IGF3YWl0IHJlc3BvbnNlLmpzb24oKSBhcyBHb29nbGVUcmFuc2xhdGVSZXNwb25zZTtcblxuICAgIGlmKCFkYXRhLmRhdGE/LnRyYW5zbGF0aW9ucykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIHJlc3BvbnNlIGZyb20gR29vZ2xlIFRyYW5zbGF0ZSBBUEknKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZGF0YS5kYXRhLnRyYW5zbGF0aW9ucy5tYXAoKHQpID0+IHQudHJhbnNsYXRlZFRleHQpO1xuICB9IGNhdGNoKGVycm9yKSB7XG4gICAgY29uc29sZS5lcnJvcignQmF0Y2ggdHJhbnNsYXRpb24gZXJyb3I6JywgZXJyb3IpO1xuICAgIHRocm93IGVycm9yO1xuICB9XG59OyJdLCJuYW1lcyI6WyJDb25maWciLCJ0cmFuc2xhdGVUZXh0IiwidGV4dCIsInRhcmdldExhbmd1YWdlIiwic291cmNlTGFuZ3VhZ2UiLCJhcGlLZXkiLCJnZXQiLCJFcnJvciIsInVybCIsInJlc3BvbnNlIiwiZmV0Y2giLCJtZXRob2QiLCJoZWFkZXJzIiwiYm9keSIsIkpTT04iLCJzdHJpbmdpZnkiLCJxIiwidGFyZ2V0Iiwic291cmNlIiwiZm9ybWF0Iiwib2siLCJzdGF0dXMiLCJzdGF0dXNUZXh0IiwiZGF0YSIsImpzb24iLCJ0cmFuc2xhdGlvbnMiLCJ0cmFuc2xhdGVkVGV4dCIsImVycm9yIiwiY29uc29sZSIsInRyYW5zbGF0ZUJhdGNoIiwidGV4dHMiLCJtYXAiLCJ0Il0sIm1hcHBpbmdzIjoiQUFBQTs7O0NBR0MsR0FFRCxTQUFRQSxNQUFNLFFBQU8sZUFBZTtBQVdwQyxPQUFPLE1BQU1DLGdCQUFnQixPQUMzQkMsTUFDQUMsZ0JBQ0FDLGlCQUF5QixJQUFJO0lBRTdCLElBQUk7UUFDRixNQUFNQyxTQUFTTCxPQUFPTSxHQUFHLENBQUM7UUFDMUIsSUFBRyxDQUFDRCxRQUFRO1lBQ1YsTUFBTSxJQUFJRSxNQUFNO1FBQ2xCO1FBRUEsTUFBTUMsTUFBTSxDQUFDLDZEQUE2RCxFQUFFSCxRQUFRO1FBRXBGLE1BQU1JLFdBQVcsTUFBTUMsTUFBTUYsS0FBSztZQUNoQ0csUUFBUTtZQUNSQyxTQUFTO2dCQUNQLGdCQUFnQjtZQUNsQjtZQUNBQyxNQUFNQyxLQUFLQyxTQUFTLENBQUM7Z0JBQ25CQyxHQUFHZDtnQkFDSGUsUUFBUWQ7Z0JBQ1JlLFFBQVFkO2dCQUNSZSxRQUFRO1lBQ1Y7UUFDRjtRQUVBLElBQUcsQ0FBQ1YsU0FBU1csRUFBRSxFQUFFO1lBQ2YsTUFBTSxJQUFJYixNQUFNLENBQUMsNEJBQTRCLEVBQUVFLFNBQVNZLE1BQU0sQ0FBQyxDQUFDLEVBQUVaLFNBQVNhLFVBQVUsRUFBRTtRQUN6RjtRQUVBLE1BQU1DLE9BQU8sTUFBTWQsU0FBU2UsSUFBSTtRQUVoQyxJQUFHLENBQUNELEtBQUtBLElBQUksRUFBRUUsY0FBYyxDQUFDLEVBQUUsRUFBRUMsZ0JBQWdCO1lBQ2hELE1BQU0sSUFBSW5CLE1BQU07UUFDbEI7UUFFQSxPQUFPZ0IsS0FBS0EsSUFBSSxDQUFDRSxZQUFZLENBQUMsRUFBRSxDQUFDQyxjQUFjO0lBQ2pELEVBQUUsT0FBTUMsT0FBTztRQUNiQyxRQUFRRCxLQUFLLENBQUMsc0JBQXNCQTtRQUNwQyxNQUFNQTtJQUNSO0FBQ0YsRUFBRTtBQUVGLE9BQU8sTUFBTUUsaUJBQWlCLE9BQzVCQyxPQUNBM0IsZ0JBQ0FDLGlCQUF5QixJQUFJO0lBRTdCLElBQUk7UUFDRixNQUFNQyxTQUFTTCxPQUFPTSxHQUFHLENBQUM7UUFDMUIsSUFBRyxDQUFDRCxRQUFRO1lBQ1YsTUFBTSxJQUFJRSxNQUFNO1FBQ2xCO1FBRUEsTUFBTUMsTUFBTSxDQUFDLDZEQUE2RCxFQUFFSCxRQUFRO1FBRXBGLE1BQU1JLFdBQVcsTUFBTUMsTUFBTUYsS0FBSztZQUNoQ0csUUFBUTtZQUNSQyxTQUFTO2dCQUNQLGdCQUFnQjtZQUNsQjtZQUNBQyxNQUFNQyxLQUFLQyxTQUFTLENBQUM7Z0JBQ25CQyxHQUFHYztnQkFDSGIsUUFBUWQ7Z0JBQ1JlLFFBQVFkO2dCQUNSZSxRQUFRO1lBQ1Y7UUFDRjtRQUVBLElBQUcsQ0FBQ1YsU0FBU1csRUFBRSxFQUFFO1lBQ2YsTUFBTSxJQUFJYixNQUFNLENBQUMsNEJBQTRCLEVBQUVFLFNBQVNZLE1BQU0sQ0FBQyxDQUFDLEVBQUVaLFNBQVNhLFVBQVUsRUFBRTtRQUN6RjtRQUVBLE1BQU1DLE9BQU8sTUFBTWQsU0FBU2UsSUFBSTtRQUVoQyxJQUFHLENBQUNELEtBQUtBLElBQUksRUFBRUUsY0FBYztZQUMzQixNQUFNLElBQUlsQixNQUFNO1FBQ2xCO1FBRUEsT0FBT2dCLEtBQUtBLElBQUksQ0FBQ0UsWUFBWSxDQUFDTSxHQUFHLENBQUMsQ0FBQ0MsSUFBTUEsRUFBRU4sY0FBYztJQUMzRCxFQUFFLE9BQU1DLE9BQU87UUFDYkMsUUFBUUQsS0FBSyxDQUFDLDRCQUE0QkE7UUFDMUMsTUFBTUE7SUFDUjtBQUNGLEVBQUUifQ==
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"graphqlUtils.d.ts","sourceRoot":"","sources":["../../src/utils/graphqlUtils.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,wBAAwB,CAAC;AAEvD,eAAO,MAAM,kBAAkB,GAAI,MAAM,GAAG,KAAG,MAAM,EAAwB,CAAC;AAE9E,eAAO,MAAM,wBAAwB,GAAI,aAAa,UAAU,MAAM,MAAM,GAAG,EAAE,MAAM,GAAG,EAAE,SAAS,GAAG,EAAE,MAAM,GAAG;;;;;;;CAOlH,CAAC"}
|
|
@@ -1,2 +1,11 @@
|
|
|
1
|
-
import{getGqlFields
|
|
2
|
-
|
|
1
|
+
import { getGqlFields } from './arangodbUtils.js';
|
|
2
|
+
export const getRequestedFields = (info)=>getGqlFields(info);
|
|
3
|
+
export const enhanceContextWithFields = (baseContext)=>(root, args, context, info)=>{
|
|
4
|
+
const enhancedContext = {
|
|
5
|
+
...baseContext,
|
|
6
|
+
fields: getGqlFields(info)
|
|
7
|
+
};
|
|
8
|
+
return enhancedContext;
|
|
9
|
+
};
|
|
10
|
+
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9uaXRyb2c3L0RldmVsb3BtZW50L3JlYWt0b3Ivc3JjL3V0aWxzL2dyYXBocWxVdGlscy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge2dldEdxbEZpZWxkc30gZnJvbSAnLi9hcmFuZ29kYlV0aWxzLmpzJztcblxuaW1wb3J0IHR5cGUge0FwaUNvbnRleHR9IGZyb20gJy4uL3R5cGVzL2F1dGgudHlwZXMuanMnO1xuXG5leHBvcnQgY29uc3QgZ2V0UmVxdWVzdGVkRmllbGRzID0gKGluZm86IGFueSk6IHN0cmluZ1tdID0+IGdldEdxbEZpZWxkcyhpbmZvKTtcblxuZXhwb3J0IGNvbnN0IGVuaGFuY2VDb250ZXh0V2l0aEZpZWxkcyA9IChiYXNlQ29udGV4dDogQXBpQ29udGV4dCkgPT4gKHJvb3Q6IGFueSwgYXJnczogYW55LCBjb250ZXh0OiBhbnksIGluZm86IGFueSkgPT4ge1xuICBjb25zdCBlbmhhbmNlZENvbnRleHQgPSB7XG4gICAgLi4uYmFzZUNvbnRleHQsXG4gICAgZmllbGRzOiBnZXRHcWxGaWVsZHMoaW5mbylcbiAgfTtcblxuICByZXR1cm4gZW5oYW5jZWRDb250ZXh0O1xufTsiXSwibmFtZXMiOlsiZ2V0R3FsRmllbGRzIiwiZ2V0UmVxdWVzdGVkRmllbGRzIiwiaW5mbyIsImVuaGFuY2VDb250ZXh0V2l0aEZpZWxkcyIsImJhc2VDb250ZXh0Iiwicm9vdCIsImFyZ3MiLCJjb250ZXh0IiwiZW5oYW5jZWRDb250ZXh0IiwiZmllbGRzIl0sIm1hcHBpbmdzIjoiQUFBQSxTQUFRQSxZQUFZLFFBQU8scUJBQXFCO0FBSWhELE9BQU8sTUFBTUMscUJBQXFCLENBQUNDLE9BQXdCRixhQUFhRSxNQUFNO0FBRTlFLE9BQU8sTUFBTUMsMkJBQTJCLENBQUNDLGNBQTRCLENBQUNDLE1BQVdDLE1BQVdDLFNBQWNMO1FBQ3hHLE1BQU1NLGtCQUFrQjtZQUN0QixHQUFHSixXQUFXO1lBQ2RLLFFBQVFULGFBQWFFO1FBQ3ZCO1FBRUEsT0FBT007SUFDVCxFQUFFIn0=
|
package/lib/utils/index.d.ts
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC"}
|
package/lib/utils/index.js
CHANGED
|
@@ -1,2 +1,19 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2019-Present, Nitrogen Labs, Inc.
|
|
3
|
+
* Copyrights licensed under the MIT License. See the accompanying LICENSE file for terms.
|
|
4
|
+
*/ export * from './adapterUtils.js';
|
|
5
|
+
export * from './analyticsUtils.js';
|
|
6
|
+
export * from './arangodbUtils.js';
|
|
7
|
+
export * from './authUtils.js';
|
|
8
|
+
export * from './contextUtils.js';
|
|
9
|
+
export * from './dbI18n.js';
|
|
10
|
+
export * from './googleTranslate.js';
|
|
11
|
+
export * from './graphqlUtils.js';
|
|
12
|
+
export * from './languageDetection.js';
|
|
13
|
+
export * from './localeUtils.js';
|
|
14
|
+
export * from './middlewareUtils.js';
|
|
15
|
+
export * from './sessionUtils.js';
|
|
16
|
+
export * from './templateUtils.js';
|
|
17
|
+
export * from './translationQueue.js';
|
|
18
|
+
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9uaXRyb2c3L0RldmVsb3BtZW50L3JlYWt0b3Ivc3JjL3V0aWxzL2luZGV4LnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQ29weXJpZ2h0IChjKSAyMDE5LVByZXNlbnQsIE5pdHJvZ2VuIExhYnMsIEluYy5cbiAqIENvcHlyaWdodHMgbGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlLiBTZWUgdGhlIGFjY29tcGFueWluZyBMSUNFTlNFIGZpbGUgZm9yIHRlcm1zLlxuICovXG5leHBvcnQgKiBmcm9tICcuL2FkYXB0ZXJVdGlscy5qcyc7XG5leHBvcnQgKiBmcm9tICcuL2FuYWx5dGljc1V0aWxzLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vYXJhbmdvZGJVdGlscy5qcyc7XG5leHBvcnQgKiBmcm9tICcuL2F1dGhVdGlscy5qcyc7XG5leHBvcnQgKiBmcm9tICcuL2NvbnRleHRVdGlscy5qcyc7XG5leHBvcnQgKiBmcm9tICcuL2RiSTE4bi5qcyc7XG5leHBvcnQgKiBmcm9tICcuL2dvb2dsZVRyYW5zbGF0ZS5qcyc7XG5leHBvcnQgKiBmcm9tICcuL2dyYXBocWxVdGlscy5qcyc7XG5leHBvcnQgKiBmcm9tICcuL2xhbmd1YWdlRGV0ZWN0aW9uLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vbG9jYWxlVXRpbHMuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9taWRkbGV3YXJlVXRpbHMuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9zZXNzaW9uVXRpbHMuanMnO1xuZXhwb3J0ICogZnJvbSAnLi90ZW1wbGF0ZVV0aWxzLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vdHJhbnNsYXRpb25RdWV1ZS5qcyc7XG5cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0NBR0MsR0FDRCxjQUFjLG9CQUFvQjtBQUNsQyxjQUFjLHNCQUFzQjtBQUNwQyxjQUFjLHFCQUFxQjtBQUNuQyxjQUFjLGlCQUFpQjtBQUMvQixjQUFjLG9CQUFvQjtBQUNsQyxjQUFjLGNBQWM7QUFDNUIsY0FBYyx1QkFBdUI7QUFDckMsY0FBYyxvQkFBb0I7QUFDbEMsY0FBYyx5QkFBeUI7QUFDdkMsY0FBYyxtQkFBbUI7QUFDakMsY0FBYyx1QkFBdUI7QUFDckMsY0FBYyxvQkFBb0I7QUFDbEMsY0FBYyxxQkFBcUI7QUFDbkMsY0FBYyx3QkFBd0IifQ==
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"languageDetection.d.ts","sourceRoot":"","sources":["../../src/utils/languageDetection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,2BAA2B,CAAC;AAEtD,MAAM,WAAW,wBAAwB;IACvC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAiFD,eAAO,MAAM,cAAc,GAAI,SAAS,wBAAwB,KAAG,MA2BlE,CAAC"}
|
|
@@ -1,2 +1,120 @@
|
|
|
1
|
-
const
|
|
2
|
-
|
|
1
|
+
const countryToLocaleMap = {
|
|
2
|
+
AR: 'es',
|
|
3
|
+
AU: 'en',
|
|
4
|
+
BE: 'fr',
|
|
5
|
+
BO: 'es',
|
|
6
|
+
BR: 'pt',
|
|
7
|
+
CA: 'en',
|
|
8
|
+
CL: 'es',
|
|
9
|
+
CO: 'es',
|
|
10
|
+
CR: 'es',
|
|
11
|
+
CU: 'es',
|
|
12
|
+
CV: 'pt',
|
|
13
|
+
DO: 'es',
|
|
14
|
+
EC: 'es',
|
|
15
|
+
ES: 'es',
|
|
16
|
+
FR: 'fr',
|
|
17
|
+
GB: 'en',
|
|
18
|
+
GQ: 'es',
|
|
19
|
+
GT: 'es',
|
|
20
|
+
GW: 'pt',
|
|
21
|
+
HN: 'es',
|
|
22
|
+
IT: 'it',
|
|
23
|
+
LI: 'de',
|
|
24
|
+
LU: 'fr',
|
|
25
|
+
MC: 'fr',
|
|
26
|
+
MX: 'es',
|
|
27
|
+
MZ: 'pt',
|
|
28
|
+
NI: 'es',
|
|
29
|
+
PA: 'es',
|
|
30
|
+
PE: 'es',
|
|
31
|
+
PY: 'es',
|
|
32
|
+
SM: 'it',
|
|
33
|
+
SV: 'es',
|
|
34
|
+
TL: 'pt',
|
|
35
|
+
US: 'en',
|
|
36
|
+
VA: 'it',
|
|
37
|
+
VE: 'es'
|
|
38
|
+
};
|
|
39
|
+
const phoneCodeToLocaleMap = {
|
|
40
|
+
1: 'en',
|
|
41
|
+
32: 'fr',
|
|
42
|
+
33: 'fr',
|
|
43
|
+
34: 'es',
|
|
44
|
+
39: 'it',
|
|
45
|
+
41: 'fr',
|
|
46
|
+
43: 'de',
|
|
47
|
+
49: 'de',
|
|
48
|
+
51: 'es',
|
|
49
|
+
52: 'es',
|
|
50
|
+
53: 'es',
|
|
51
|
+
54: 'es',
|
|
52
|
+
55: 'pt',
|
|
53
|
+
56: 'es',
|
|
54
|
+
57: 'es',
|
|
55
|
+
58: 'es',
|
|
56
|
+
240: 'es',
|
|
57
|
+
244: 'pt',
|
|
58
|
+
245: 'pt',
|
|
59
|
+
258: 'pt',
|
|
60
|
+
351: 'pt',
|
|
61
|
+
352: 'fr',
|
|
62
|
+
377: 'fr',
|
|
63
|
+
378: 'it',
|
|
64
|
+
379: 'it',
|
|
65
|
+
423: 'de',
|
|
66
|
+
502: 'es',
|
|
67
|
+
503: 'es',
|
|
68
|
+
504: 'es',
|
|
69
|
+
505: 'es',
|
|
70
|
+
506: 'es',
|
|
71
|
+
507: 'es',
|
|
72
|
+
591: 'es',
|
|
73
|
+
593: 'es',
|
|
74
|
+
595: 'es',
|
|
75
|
+
670: 'pt',
|
|
76
|
+
1809: 'es'
|
|
77
|
+
};
|
|
78
|
+
export const detectLanguage = (context)=>{
|
|
79
|
+
if (context.userPreference) {
|
|
80
|
+
return context.userPreference;
|
|
81
|
+
}
|
|
82
|
+
if (context.phoneCountryCode) {
|
|
83
|
+
const locale = phoneCodeToLocaleMap[context.phoneCountryCode];
|
|
84
|
+
if (locale) {
|
|
85
|
+
return locale;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
if (context.acceptLanguage) {
|
|
89
|
+
const locale = parseAcceptLanguage(context.acceptLanguage);
|
|
90
|
+
if (locale) {
|
|
91
|
+
return locale;
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
if (context.ipCountry) {
|
|
95
|
+
const locale = countryToLocaleMap[context.ipCountry];
|
|
96
|
+
if (locale) {
|
|
97
|
+
return locale;
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
return 'en';
|
|
101
|
+
};
|
|
102
|
+
const parseAcceptLanguage = (acceptLanguage)=>{
|
|
103
|
+
const languages = acceptLanguage.split(',').map((lang)=>lang.trim().split(';')[0]).filter((lang)=>lang.length >= 2);
|
|
104
|
+
for (const lang of languages){
|
|
105
|
+
const locale = lang.substring(0, 2);
|
|
106
|
+
if ([
|
|
107
|
+
'en',
|
|
108
|
+
'es',
|
|
109
|
+
'fr',
|
|
110
|
+
'de',
|
|
111
|
+
'pt',
|
|
112
|
+
'it'
|
|
113
|
+
].includes(locale)) {
|
|
114
|
+
return locale;
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
return null;
|
|
118
|
+
};
|
|
119
|
+
|
|
120
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9uaXRyb2c3L0RldmVsb3BtZW50L3JlYWt0b3Ivc3JjL3V0aWxzL2xhbmd1YWdlRGV0ZWN0aW9uLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHtMb2NhbGV9IGZyb20gJy4uL3R5cGVzL2NvbnRlbnQudHlwZXMuanMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIExhbmd1YWdlRGV0ZWN0aW9uQ29udGV4dCB7XG4gIGFjY2VwdExhbmd1YWdlPzogc3RyaW5nO1xuICBpcENvdW50cnk/OiBzdHJpbmc7XG4gIHBob25lQ291bnRyeUNvZGU/OiBzdHJpbmc7XG4gIHVzZXJQcmVmZXJlbmNlPzogTG9jYWxlO1xufVxuXG5jb25zdCBjb3VudHJ5VG9Mb2NhbGVNYXA6IFJlY29yZDxzdHJpbmcsIExvY2FsZT4gPSB7XG4gIEFSOiAnZXMnLFxuICBBVTogJ2VuJyxcbiAgQkU6ICdmcicsXG4gIEJPOiAnZXMnLFxuICBCUjogJ3B0JyxcbiAgQ0E6ICdlbicsXG4gIENMOiAnZXMnLFxuICBDTzogJ2VzJyxcbiAgQ1I6ICdlcycsXG4gIENVOiAnZXMnLFxuICBDVjogJ3B0JyxcbiAgRE86ICdlcycsXG4gIEVDOiAnZXMnLFxuICBFUzogJ2VzJyxcbiAgRlI6ICdmcicsXG4gIEdCOiAnZW4nLFxuICBHUTogJ2VzJyxcbiAgR1Q6ICdlcycsXG4gIEdXOiAncHQnLFxuICBITjogJ2VzJyxcbiAgSVQ6ICdpdCcsXG4gIExJOiAnZGUnLFxuICBMVTogJ2ZyJyxcbiAgTUM6ICdmcicsXG4gIE1YOiAnZXMnLFxuICBNWjogJ3B0JyxcbiAgTkk6ICdlcycsXG4gIFBBOiAnZXMnLFxuICBQRTogJ2VzJyxcbiAgUFk6ICdlcycsXG4gIFNNOiAnaXQnLFxuICBTVjogJ2VzJyxcbiAgVEw6ICdwdCcsXG4gIFVTOiAnZW4nLFxuICBWQTogJ2l0JyxcbiAgVkU6ICdlcydcbn07XG5cbmNvbnN0IHBob25lQ29kZVRvTG9jYWxlTWFwOiBSZWNvcmQ8c3RyaW5nLCBMb2NhbGU+ID0ge1xuICAxOiAnZW4nLFxuICAzMjogJ2ZyJyxcbiAgMzM6ICdmcicsXG4gIDM0OiAnZXMnLFxuICAzOTogJ2l0JyxcbiAgNDE6ICdmcicsXG4gIDQzOiAnZGUnLFxuICA0OTogJ2RlJyxcbiAgNTE6ICdlcycsXG4gIDUyOiAnZXMnLFxuICA1MzogJ2VzJyxcbiAgNTQ6ICdlcycsXG4gIDU1OiAncHQnLFxuICA1NjogJ2VzJyxcbiAgNTc6ICdlcycsXG4gIDU4OiAnZXMnLFxuICAyNDA6ICdlcycsXG4gIDI0NDogJ3B0JyxcbiAgMjQ1OiAncHQnLFxuICAyNTg6ICdwdCcsXG4gIDM1MTogJ3B0JyxcbiAgMzUyOiAnZnInLFxuICAzNzc6ICdmcicsXG4gIDM3ODogJ2l0JyxcbiAgMzc5OiAnaXQnLFxuICA0MjM6ICdkZScsXG4gIDUwMjogJ2VzJyxcbiAgNTAzOiAnZXMnLFxuICA1MDQ6ICdlcycsXG4gIDUwNTogJ2VzJyxcbiAgNTA2OiAnZXMnLFxuICA1MDc6ICdlcycsXG4gIDU5MTogJ2VzJyxcbiAgNTkzOiAnZXMnLFxuICA1OTU6ICdlcycsXG4gIDY3MDogJ3B0JyxcbiAgMTgwOTogJ2VzJ1xufTtcblxuZXhwb3J0IGNvbnN0IGRldGVjdExhbmd1YWdlID0gKGNvbnRleHQ6IExhbmd1YWdlRGV0ZWN0aW9uQ29udGV4dCk6IExvY2FsZSA9PiB7XG4gIGlmKGNvbnRleHQudXNlclByZWZlcmVuY2UpIHtcbiAgICByZXR1cm4gY29udGV4dC51c2VyUHJlZmVyZW5jZTtcbiAgfVxuXG4gIGlmKGNvbnRleHQucGhvbmVDb3VudHJ5Q29kZSkge1xuICAgIGNvbnN0IGxvY2FsZSA9IHBob25lQ29kZVRvTG9jYWxlTWFwW2NvbnRleHQucGhvbmVDb3VudHJ5Q29kZV07XG4gICAgaWYobG9jYWxlKSB7XG4gICAgICByZXR1cm4gbG9jYWxlO1xuICAgIH1cbiAgfVxuXG4gIGlmKGNvbnRleHQuYWNjZXB0TGFuZ3VhZ2UpIHtcbiAgICBjb25zdCBsb2NhbGUgPSBwYXJzZUFjY2VwdExhbmd1YWdlKGNvbnRleHQuYWNjZXB0TGFuZ3VhZ2UpO1xuICAgIGlmKGxvY2FsZSkge1xuICAgICAgcmV0dXJuIGxvY2FsZTtcbiAgICB9XG4gIH1cblxuICBpZihjb250ZXh0LmlwQ291bnRyeSkge1xuICAgIGNvbnN0IGxvY2FsZSA9IGNvdW50cnlUb0xvY2FsZU1hcFtjb250ZXh0LmlwQ291bnRyeV07XG4gICAgaWYobG9jYWxlKSB7XG4gICAgICByZXR1cm4gbG9jYWxlO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiAnZW4nO1xufTtcblxuY29uc3QgcGFyc2VBY2NlcHRMYW5ndWFnZSA9IChhY2NlcHRMYW5ndWFnZTogc3RyaW5nKTogTG9jYWxlIHwgbnVsbCA9PiB7XG4gIGNvbnN0IGxhbmd1YWdlcyA9IGFjY2VwdExhbmd1YWdlXG4gICAgLnNwbGl0KCcsJylcbiAgICAubWFwKChsYW5nKSA9PiBsYW5nLnRyaW0oKS5zcGxpdCgnOycpWzBdKVxuICAgIC5maWx0ZXIoKGxhbmcpID0+IGxhbmcubGVuZ3RoID49IDIpO1xuXG4gIGZvcihjb25zdCBsYW5nIG9mIGxhbmd1YWdlcykge1xuICAgIGNvbnN0IGxvY2FsZSA9IGxhbmcuc3Vic3RyaW5nKDAsIDIpIGFzIExvY2FsZTtcbiAgICBpZihbJ2VuJywgJ2VzJywgJ2ZyJywgJ2RlJywgJ3B0JywgJ2l0J10uaW5jbHVkZXMobG9jYWxlKSkge1xuICAgICAgcmV0dXJuIGxvY2FsZTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gbnVsbDtcbn07Il0sIm5hbWVzIjpbImNvdW50cnlUb0xvY2FsZU1hcCIsIkFSIiwiQVUiLCJCRSIsIkJPIiwiQlIiLCJDQSIsIkNMIiwiQ08iLCJDUiIsIkNVIiwiQ1YiLCJETyIsIkVDIiwiRVMiLCJGUiIsIkdCIiwiR1EiLCJHVCIsIkdXIiwiSE4iLCJJVCIsIkxJIiwiTFUiLCJNQyIsIk1YIiwiTVoiLCJOSSIsIlBBIiwiUEUiLCJQWSIsIlNNIiwiU1YiLCJUTCIsIlVTIiwiVkEiLCJWRSIsInBob25lQ29kZVRvTG9jYWxlTWFwIiwiZGV0ZWN0TGFuZ3VhZ2UiLCJjb250ZXh0IiwidXNlclByZWZlcmVuY2UiLCJwaG9uZUNvdW50cnlDb2RlIiwibG9jYWxlIiwiYWNjZXB0TGFuZ3VhZ2UiLCJwYXJzZUFjY2VwdExhbmd1YWdlIiwiaXBDb3VudHJ5IiwibGFuZ3VhZ2VzIiwic3BsaXQiLCJtYXAiLCJsYW5nIiwidHJpbSIsImZpbHRlciIsImxlbmd0aCIsInN1YnN0cmluZyIsImluY2x1ZGVzIl0sIm1hcHBpbmdzIjoiQUFTQSxNQUFNQSxxQkFBNkM7SUFDakRDLElBQUk7SUFDSkMsSUFBSTtJQUNKQyxJQUFJO0lBQ0pDLElBQUk7SUFDSkMsSUFBSTtJQUNKQyxJQUFJO0lBQ0pDLElBQUk7SUFDSkMsSUFBSTtJQUNKQyxJQUFJO0lBQ0pDLElBQUk7SUFDSkMsSUFBSTtJQUNKQyxJQUFJO0lBQ0pDLElBQUk7SUFDSkMsSUFBSTtJQUNKQyxJQUFJO0lBQ0pDLElBQUk7SUFDSkMsSUFBSTtJQUNKQyxJQUFJO0lBQ0pDLElBQUk7SUFDSkMsSUFBSTtJQUNKQyxJQUFJO0lBQ0pDLElBQUk7SUFDSkMsSUFBSTtJQUNKQyxJQUFJO0lBQ0pDLElBQUk7SUFDSkMsSUFBSTtJQUNKQyxJQUFJO0lBQ0pDLElBQUk7SUFDSkMsSUFBSTtJQUNKQyxJQUFJO0lBQ0pDLElBQUk7SUFDSkMsSUFBSTtJQUNKQyxJQUFJO0lBQ0pDLElBQUk7SUFDSkMsSUFBSTtJQUNKQyxJQUFJO0FBQ047QUFFQSxNQUFNQyx1QkFBK0M7SUFDbkQsR0FBRztJQUNILElBQUk7SUFDSixJQUFJO0lBQ0osSUFBSTtJQUNKLElBQUk7SUFDSixJQUFJO0lBQ0osSUFBSTtJQUNKLElBQUk7SUFDSixJQUFJO0lBQ0osSUFBSTtJQUNKLElBQUk7SUFDSixJQUFJO0lBQ0osSUFBSTtJQUNKLElBQUk7SUFDSixJQUFJO0lBQ0osSUFBSTtJQUNKLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsTUFBTTtBQUNSO0FBRUEsT0FBTyxNQUFNQyxpQkFBaUIsQ0FBQ0M7SUFDN0IsSUFBR0EsUUFBUUMsY0FBYyxFQUFFO1FBQ3pCLE9BQU9ELFFBQVFDLGNBQWM7SUFDL0I7SUFFQSxJQUFHRCxRQUFRRSxnQkFBZ0IsRUFBRTtRQUMzQixNQUFNQyxTQUFTTCxvQkFBb0IsQ0FBQ0UsUUFBUUUsZ0JBQWdCLENBQUM7UUFDN0QsSUFBR0MsUUFBUTtZQUNULE9BQU9BO1FBQ1Q7SUFDRjtJQUVBLElBQUdILFFBQVFJLGNBQWMsRUFBRTtRQUN6QixNQUFNRCxTQUFTRSxvQkFBb0JMLFFBQVFJLGNBQWM7UUFDekQsSUFBR0QsUUFBUTtZQUNULE9BQU9BO1FBQ1Q7SUFDRjtJQUVBLElBQUdILFFBQVFNLFNBQVMsRUFBRTtRQUNwQixNQUFNSCxTQUFTMUMsa0JBQWtCLENBQUN1QyxRQUFRTSxTQUFTLENBQUM7UUFDcEQsSUFBR0gsUUFBUTtZQUNULE9BQU9BO1FBQ1Q7SUFDRjtJQUVBLE9BQU87QUFDVCxFQUFFO0FBRUYsTUFBTUUsc0JBQXNCLENBQUNEO0lBQzNCLE1BQU1HLFlBQVlILGVBQ2ZJLEtBQUssQ0FBQyxLQUNOQyxHQUFHLENBQUMsQ0FBQ0MsT0FBU0EsS0FBS0MsSUFBSSxHQUFHSCxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFDdkNJLE1BQU0sQ0FBQyxDQUFDRixPQUFTQSxLQUFLRyxNQUFNLElBQUk7SUFFbkMsS0FBSSxNQUFNSCxRQUFRSCxVQUFXO1FBQzNCLE1BQU1KLFNBQVNPLEtBQUtJLFNBQVMsQ0FBQyxHQUFHO1FBQ2pDLElBQUc7WUFBQztZQUFNO1lBQU07WUFBTTtZQUFNO1lBQU07U0FBSyxDQUFDQyxRQUFRLENBQUNaLFNBQVM7WUFDeEQsT0FBT0E7UUFDVDtJQUNGO0lBRUEsT0FBTztBQUNUIn0=
|
|
@@ -9,3 +9,4 @@ export declare const getFallbackChain: (locale: string) => string[];
|
|
|
9
9
|
export declare const getPrimaryLanguages: () => string[];
|
|
10
10
|
export declare const isValidLocale: (locale: string) => locale is Locale;
|
|
11
11
|
export declare const getSupportedLocales: () => Locale[];
|
|
12
|
+
//# sourceMappingURL=localeUtils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"localeUtils.d.ts","sourceRoot":"","sources":["../../src/utils/localeUtils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,2BAA2B,CAAC;AAEtD,eAAO,MAAM,eAAe,GAAI,QAAQ,MAAM,KAAG,MAA8B,CAAC;AAEhF,eAAO,MAAM,gBAAgB,GAAI,QAAQ,MAAM,KAAG,OAA+B,CAAC;AAElF,eAAO,MAAM,gBAAgB,GAAI,QAAQ,MAAM,KAAG,MAAM,EAGvD,CAAC;AAEF,eAAO,MAAM,mBAAmB,QAAO,MAAM,EAA0C,CAAC;AAExF,eAAO,MAAM,aAAa,GAAI,QAAQ,MAAM,KAAG,MAAM,IAAI,MAUxD,CAAC;AAEF,eAAO,MAAM,mBAAmB,QAAO,MAAM,EAO5C,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"localeUtils.example.d.ts","sourceRoot":"","sources":["../../src/utils/localeUtils.example.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAiJH,eAAO,MAAM,iBAAiB,qBAW7B,CAAC"}
|