@nlabs/reaktor 0.10.5 → 0.10.7
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/lib/actions/apps.d.ts +1 -0
- package/lib/actions/apps.d.ts.map +1 -0
- package/lib/actions/apps.js +221 -0
- package/lib/actions/connections.d.ts +1 -0
- package/lib/actions/connections.d.ts.map +1 -0
- package/lib/actions/connections.js +62 -0
- package/lib/actions/content.d.ts +1 -0
- package/lib/actions/content.d.ts.map +1 -0
- package/lib/actions/content.js +240 -0
- package/lib/actions/conversations.d.ts +1 -0
- package/lib/actions/conversations.d.ts.map +1 -0
- package/lib/actions/conversations.js +335 -0
- package/lib/actions/dynamodb.d.ts +1 -0
- package/lib/actions/dynamodb.d.ts.map +1 -0
- package/lib/actions/dynamodb.js +119 -0
- package/lib/actions/email.d.ts +1 -0
- package/lib/actions/email.d.ts.map +1 -0
- package/lib/actions/email.js +56 -0
- package/lib/actions/files.d.ts +1 -0
- package/lib/actions/files.d.ts.map +1 -0
- package/lib/actions/files.js +226 -0
- package/lib/actions/groups.d.ts +1 -0
- package/lib/actions/groups.d.ts.map +1 -0
- package/lib/actions/groups.js +267 -0
- package/lib/actions/images.d.ts +1 -0
- package/lib/actions/images.d.ts.map +1 -0
- package/lib/actions/images.js +723 -0
- package/lib/actions/index.d.ts +1 -0
- package/lib/actions/index.d.ts.map +1 -0
- package/lib/actions/index.js +29 -0
- package/lib/actions/ios.d.ts +1 -0
- package/lib/actions/ios.d.ts.map +1 -0
- package/lib/actions/ios.js +230 -0
- package/lib/actions/locations.d.ts +1 -0
- package/lib/actions/locations.d.ts.map +1 -0
- package/lib/actions/locations.js +111 -0
- package/lib/actions/messages.d.ts +1 -0
- package/lib/actions/messages.d.ts.map +1 -0
- package/lib/actions/messages.js +167 -0
- package/lib/actions/notifications.d.ts +3 -2
- package/lib/actions/notifications.d.ts.map +1 -0
- package/lib/actions/notifications.js +37 -0
- package/lib/actions/payments.d.ts +1 -0
- package/lib/actions/payments.d.ts.map +1 -0
- package/lib/actions/payments.js +449 -0
- package/lib/actions/posts.d.ts +1 -0
- package/lib/actions/posts.d.ts.map +1 -0
- package/lib/actions/posts.js +608 -0
- package/lib/actions/profiles.d.ts +1 -0
- package/lib/actions/profiles.d.ts.map +1 -0
- package/lib/actions/profiles.js +58 -0
- package/lib/actions/reactions.d.ts +1 -0
- package/lib/actions/reactions.d.ts.map +1 -0
- package/lib/actions/reactions.js +286 -0
- package/lib/actions/s3.d.ts +1 -0
- package/lib/actions/s3.d.ts.map +1 -0
- package/lib/actions/s3.js +102 -0
- package/lib/actions/search.d.ts +1 -0
- package/lib/actions/search.d.ts.map +1 -0
- package/lib/actions/search.js +81 -0
- package/lib/actions/sms.d.ts +1 -0
- package/lib/actions/sms.d.ts.map +1 -0
- package/lib/actions/sms.js +52 -0
- package/lib/actions/statistics.d.ts +1 -0
- package/lib/actions/statistics.d.ts.map +1 -0
- package/lib/actions/statistics.js +43 -0
- package/lib/actions/subscriptions.d.ts +1 -0
- package/lib/actions/subscriptions.d.ts.map +1 -0
- package/lib/actions/subscriptions.js +202 -0
- package/lib/actions/tags.d.ts +1 -0
- package/lib/actions/tags.d.ts.map +1 -0
- package/lib/actions/tags.js +263 -0
- package/lib/actions/users.d.ts +1 -0
- package/lib/actions/users.d.ts.map +1 -0
- package/lib/actions/users.js +802 -0
- package/lib/actions/videos.d.ts +1 -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 +164 -0
- package/lib/adapters/arangoAdapter.d.ts +1 -0
- package/lib/adapters/arangoAdapter.d.ts.map +1 -0
- package/lib/adapters/arangoAdapter.js +70 -0
- package/lib/adapters/contentAdapter.d.ts +1 -0
- package/lib/adapters/contentAdapter.d.ts.map +1 -0
- package/lib/adapters/contentAdapter.js +108 -0
- package/lib/adapters/fileAdapter.d.ts +1 -0
- package/lib/adapters/fileAdapter.d.ts.map +1 -0
- package/lib/adapters/fileAdapter.js +119 -0
- package/lib/adapters/imageAdapter.d.ts +1 -0
- package/lib/adapters/imageAdapter.d.ts.map +1 -0
- package/lib/adapters/imageAdapter.js +112 -0
- package/lib/adapters/index.d.ts +1 -0
- package/lib/adapters/index.d.ts.map +1 -0
- package/lib/adapters/index.js +11 -0
- package/lib/adapters/messageAdapter.d.ts +1 -0
- package/lib/adapters/messageAdapter.d.ts.map +1 -0
- package/lib/adapters/messageAdapter.js +82 -0
- package/lib/adapters/postAdapter.d.ts +1 -0
- package/lib/adapters/postAdapter.d.ts.map +1 -0
- package/lib/adapters/postAdapter.js +117 -0
- package/lib/adapters/reaktorAdapter.d.ts +1 -0
- package/lib/adapters/reaktorAdapter.d.ts.map +1 -0
- package/lib/adapters/reaktorAdapter.js +59 -0
- package/lib/adapters/tagAdapter.d.ts +1 -0
- package/lib/adapters/tagAdapter.d.ts.map +1 -0
- package/lib/adapters/tagAdapter.js +99 -0
- package/lib/adapters/userAdapter.d.ts +1 -0
- package/lib/adapters/userAdapter.d.ts.map +1 -0
- package/lib/adapters/userAdapter.js +264 -0
- package/lib/config.d.ts +1 -0
- package/lib/config.d.ts.map +1 -0
- package/lib/config.js +161 -0
- package/lib/handlers/graphqlHandler.d.ts +1 -0
- package/lib/handlers/graphqlHandler.d.ts.map +1 -0
- package/lib/handlers/graphqlHandler.js +118 -0
- package/lib/index.d.ts +1 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +18 -0
- 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 +105 -0
- package/lib/lambdas/authorizer.d.ts +1 -0
- package/lib/lambdas/authorizer.d.ts.map +1 -0
- package/lib/lambdas/authorizer.js +41 -0
- package/lib/lambdas/connection.d.ts +1 -0
- package/lib/lambdas/connection.d.ts.map +1 -0
- package/lib/lambdas/connection.js +85 -0
- 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 -0
- 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 -0
- package/lib/mocks/conversation.d.ts +1 -0
- package/lib/mocks/conversation.d.ts.map +1 -0
- package/lib/mocks/conversation.js +10 -0
- package/lib/mocks/file.d.ts +1 -0
- package/lib/mocks/file.d.ts.map +1 -0
- package/lib/mocks/file.js +13 -0
- package/lib/mocks/group.d.ts +1 -0
- package/lib/mocks/group.d.ts.map +1 -0
- package/lib/mocks/group.js +20 -0
- package/lib/mocks/image.d.ts +1 -0
- package/lib/mocks/image.d.ts.map +1 -0
- package/lib/mocks/image.js +17 -0
- package/lib/mocks/post.d.ts +1 -0
- package/lib/mocks/post.d.ts.map +1 -0
- package/lib/mocks/post.js +28 -0
- package/lib/mocks/tag.d.ts +1 -0
- package/lib/mocks/tag.d.ts.map +1 -0
- package/lib/mocks/tag.js +12 -0
- package/lib/mocks/user.d.ts +1 -0
- package/lib/mocks/user.d.ts.map +1 -0
- package/lib/mocks/user.js +61 -0
- package/lib/mocks/video.d.ts +1 -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 -0
- package/lib/mutations/index.d.ts +1 -0
- package/lib/mutations/index.d.ts.map +1 -0
- package/lib/mutations/index.js +29 -0
- package/lib/mutations/locations.d.ts +1 -0
- package/lib/mutations/locations.d.ts.map +1 -0
- package/lib/mutations/locations.js +22 -0
- package/lib/mutations/messages.d.ts +1 -0
- package/lib/mutations/messages.d.ts.map +1 -0
- package/lib/mutations/messages.js +75 -0
- package/lib/mutations/posts.d.ts +1 -0
- package/lib/mutations/posts.d.ts.map +1 -0
- package/lib/mutations/posts.js +31 -0
- package/lib/mutations/profiles.d.ts +1 -0
- package/lib/mutations/profiles.d.ts.map +1 -0
- package/lib/mutations/profiles.js +78 -0
- package/lib/mutations/reactions.d.ts +1 -0
- package/lib/mutations/reactions.d.ts.map +1 -0
- package/lib/mutations/reactions.js +29 -0
- package/lib/mutations/statistics.d.ts +1 -0
- package/lib/mutations/statistics.d.ts.map +1 -0
- package/lib/mutations/statistics.js +17 -0
- package/lib/mutations/subscriptions.d.ts +1 -0
- package/lib/mutations/subscriptions.d.ts.map +1 -0
- package/lib/mutations/subscriptions.js +38 -0
- package/lib/mutations/tags.d.ts +1 -0
- package/lib/mutations/tags.d.ts.map +1 -0
- package/lib/mutations/tags.js +109 -0
- package/lib/mutations/users.d.ts +1 -0
- package/lib/mutations/users.d.ts.map +1 -0
- package/lib/mutations/users.js +129 -0
- package/lib/objectTypes/app.d.ts +1 -0
- package/lib/objectTypes/app.d.ts.map +1 -0
- package/lib/objectTypes/app.js +147 -0
- package/lib/objectTypes/bankAccount.d.ts +1 -0
- package/lib/objectTypes/bankAccount.d.ts.map +1 -0
- package/lib/objectTypes/bankAccount.js +54 -0
- package/lib/objectTypes/connection.d.ts +1 -0
- package/lib/objectTypes/connection.d.ts.map +1 -0
- package/lib/objectTypes/connection.js +26 -0
- package/lib/objectTypes/content.d.ts +1 -0
- package/lib/objectTypes/content.d.ts.map +1 -0
- package/lib/objectTypes/content.js +79 -0
- package/lib/objectTypes/conversation.d.ts +1 -0
- package/lib/objectTypes/conversation.d.ts.map +1 -0
- package/lib/objectTypes/conversation.js +53 -0
- package/lib/objectTypes/creditCard.d.ts +1 -0
- package/lib/objectTypes/creditCard.d.ts.map +1 -0
- package/lib/objectTypes/creditCard.js +64 -0
- package/lib/objectTypes/document.d.ts +1 -0
- package/lib/objectTypes/document.d.ts.map +1 -0
- package/lib/objectTypes/document.js +21 -0
- package/lib/objectTypes/error.d.ts +1 -0
- package/lib/objectTypes/error.d.ts.map +1 -0
- package/lib/objectTypes/error.js +24 -0
- package/lib/objectTypes/external.d.ts +1 -0
- package/lib/objectTypes/external.d.ts.map +1 -0
- package/lib/objectTypes/external.js +52 -0
- package/lib/objectTypes/file.d.ts +1 -0
- package/lib/objectTypes/file.d.ts.map +1 -0
- package/lib/objectTypes/file.js +76 -0
- package/lib/objectTypes/filter.d.ts +1 -0
- package/lib/objectTypes/filter.d.ts.map +1 -0
- package/lib/objectTypes/filter.js +21 -0
- package/lib/objectTypes/group.d.ts +1 -0
- package/lib/objectTypes/group.d.ts.map +1 -0
- package/lib/objectTypes/group.js +97 -0
- package/lib/objectTypes/iapSubscription.d.ts +1 -0
- package/lib/objectTypes/iapSubscription.d.ts.map +1 -0
- package/lib/objectTypes/iapSubscription.js +18 -0
- package/lib/objectTypes/image.d.ts +1 -0
- package/lib/objectTypes/image.d.ts.map +1 -0
- package/lib/objectTypes/image.js +105 -0
- package/lib/objectTypes/index.d.ts +1 -0
- package/lib/objectTypes/index.d.ts.map +1 -0
- package/lib/objectTypes/index.js +28 -0
- package/lib/objectTypes/location.d.ts +1 -0
- package/lib/objectTypes/location.d.ts.map +1 -0
- package/lib/objectTypes/location.js +85 -0
- package/lib/objectTypes/message.d.ts +1 -0
- package/lib/objectTypes/message.d.ts.map +1 -0
- package/lib/objectTypes/message.js +72 -0
- package/lib/objectTypes/passcode.d.ts +1 -0
- package/lib/objectTypes/passcode.d.ts.map +1 -0
- package/lib/objectTypes/passcode.js +20 -0
- package/lib/objectTypes/plan.d.ts +1 -0
- package/lib/objectTypes/plan.d.ts.map +1 -0
- package/lib/objectTypes/plan.js +71 -0
- package/lib/objectTypes/post.d.ts +1 -0
- package/lib/objectTypes/post.d.ts.map +1 -0
- package/lib/objectTypes/post.js +101 -0
- package/lib/objectTypes/profile.d.ts +1 -0
- package/lib/objectTypes/profile.d.ts.map +1 -0
- package/lib/objectTypes/profile.js +68 -0
- package/lib/objectTypes/reaction.d.ts +1 -0
- package/lib/objectTypes/reaction.d.ts.map +1 -0
- package/lib/objectTypes/reaction.js +37 -0
- package/lib/objectTypes/relation.d.ts +1 -0
- package/lib/objectTypes/relation.d.ts.map +1 -0
- package/lib/objectTypes/relation.js +27 -0
- package/lib/objectTypes/search.d.ts +1 -0
- package/lib/objectTypes/search.d.ts.map +1 -0
- package/lib/objectTypes/search.js +50 -0
- package/lib/objectTypes/statistics.d.ts +1 -0
- package/lib/objectTypes/statistics.d.ts.map +1 -0
- package/lib/objectTypes/statistics.js +17 -0
- package/lib/objectTypes/subscription.d.ts +1 -0
- package/lib/objectTypes/subscription.d.ts.map +1 -0
- package/lib/objectTypes/subscription.js +102 -0
- package/lib/objectTypes/tag.d.ts +1 -0
- package/lib/objectTypes/tag.d.ts.map +1 -0
- package/lib/objectTypes/tag.js +41 -0
- package/lib/objectTypes/user.d.ts +1 -0
- package/lib/objectTypes/user.d.ts.map +1 -0
- package/lib/objectTypes/user.js +111 -0
- package/lib/queries/content.d.ts +1 -0
- package/lib/queries/content.d.ts.map +1 -0
- package/lib/queries/content.js +50 -0
- package/lib/queries/index.d.ts +1 -0
- package/lib/queries/index.d.ts.map +1 -0
- package/lib/queries/index.js +27 -0
- package/lib/queries/locations.d.ts +1 -0
- package/lib/queries/locations.d.ts.map +1 -0
- package/lib/queries/locations.js +23 -0
- package/lib/queries/messages.d.ts +1 -0
- package/lib/queries/messages.d.ts.map +1 -0
- package/lib/queries/messages.js +35 -0
- package/lib/queries/posts.d.ts +1 -0
- package/lib/queries/posts.d.ts.map +1 -0
- package/lib/queries/posts.js +154 -0
- package/lib/queries/reactions.d.ts +1 -0
- package/lib/queries/reactions.d.ts.map +1 -0
- package/lib/queries/reactions.js +34 -0
- package/lib/queries/statistics.d.ts +1 -0
- package/lib/queries/statistics.d.ts.map +1 -0
- package/lib/queries/statistics.js +17 -0
- package/lib/queries/subscriptions.d.ts +1 -0
- package/lib/queries/subscriptions.d.ts.map +1 -0
- package/lib/queries/subscriptions.js +21 -0
- package/lib/queries/tags.d.ts +1 -0
- package/lib/queries/tags.d.ts.map +1 -0
- package/lib/queries/tags.js +56 -0
- package/lib/queries/users.d.ts +1 -0
- package/lib/queries/users.d.ts.map +1 -0
- package/lib/queries/users.js +39 -0
- 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 +281 -0
- 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 +17 -0
- 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 +14 -0
- 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 +17 -0
- 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 +17 -0
- 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 -0
- 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 -0
- 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 -0
- 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 -0
- 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 -0
- 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 -0
- package/lib/types/arangodb.types.d.ts +1 -0
- package/lib/types/arangodb.types.d.ts.map +1 -0
- package/lib/types/arangodb.types.js +6 -0
- 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 -0
- 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 -0
- 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 -0
- 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 -0
- 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 -0
- 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 -0
- 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 -0
- 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 -0
- 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 -0
- 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 -0
- package/lib/types/index.d.ts +1 -0
- package/lib/types/index.d.ts.map +1 -0
- package/lib/types/index.js +28 -0
- 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 -0
- 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 -0
- 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 -0
- 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 -0
- 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 -0
- 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 -0
- 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 -0
- 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 -0
- 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 -0
- package/lib/types/videos.types.d.ts +1 -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 -0
- package/lib/utils/adapterUtils.d.ts +1 -0
- package/lib/utils/adapterUtils.d.ts.map +1 -0
- package/lib/utils/adapterUtils.js +23 -0
- package/lib/utils/analyticsUtils.d.ts +1 -0
- package/lib/utils/analyticsUtils.d.ts.map +1 -0
- package/lib/utils/analyticsUtils.js +45 -0
- package/lib/utils/arangodbUtils.d.ts +1 -0
- package/lib/utils/arangodbUtils.d.ts.map +1 -0
- package/lib/utils/arangodbUtils.js +130 -0
- package/lib/utils/authUtils.d.ts +1 -0
- package/lib/utils/authUtils.d.ts.map +1 -0
- package/lib/utils/authUtils.js +54 -0
- package/lib/utils/contextUtils.d.ts +1 -0
- package/lib/utils/contextUtils.d.ts.map +1 -0
- package/lib/utils/contextUtils.js +10 -0
- 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 +93 -0
- package/lib/utils/dbI18n.js +28 -0
- package/lib/utils/googleTranslate.d.ts +1 -0
- package/lib/utils/googleTranslate.d.ts.map +1 -0
- package/lib/utils/googleTranslate.js +70 -0
- package/lib/utils/graphqlUtils.d.ts +1 -0
- package/lib/utils/graphqlUtils.d.ts.map +1 -0
- package/lib/utils/graphqlUtils.js +11 -0
- package/lib/utils/index.d.ts +1 -0
- package/lib/utils/index.d.ts.map +1 -0
- package/lib/utils/index.js +19 -0
- package/lib/utils/languageDetection.d.ts +1 -0
- package/lib/utils/languageDetection.d.ts.map +1 -0
- package/lib/utils/languageDetection.js +120 -0
- 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 -0
- package/lib/utils/localeUtils.js +71 -0
- package/lib/utils/middlewareUtils.d.ts +1 -0
- package/lib/utils/middlewareUtils.d.ts.map +1 -0
- package/lib/utils/middlewareUtils.js +10 -0
- package/lib/utils/sessionUtils.d.ts +1 -0
- package/lib/utils/sessionUtils.d.ts.map +1 -0
- package/lib/utils/sessionUtils.js +26 -0
- package/lib/utils/stripeUtils.d.ts +2 -1
- package/lib/utils/stripeUtils.d.ts.map +1 -0
- package/lib/utils/stripeUtils.js +12 -0
- package/lib/utils/templateUtils.d.ts +1 -0
- package/lib/utils/templateUtils.d.ts.map +1 -0
- package/lib/utils/templateUtils.js +11 -0
- package/lib/utils/testUtils.d.ts +1 -0
- package/lib/utils/testUtils.d.ts.map +1 -0
- package/lib/utils/testUtils.js +292 -0
- 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 -0
- package/lib/utils/translationQueue.js +113 -0
- package/package.json +54 -24
- package/.env +0 -1
- package/.env.example +0 -1
- package/DATABASE_I18N_GUIDE.md +0 -434
- package/TEST_UTILITIES_GUIDE.md +0 -360
- package/coverage/actions/groups.ts.html +0 -1039
- package/coverage/actions/images.ts.html +0 -2500
- package/coverage/actions/index.html +0 -116
- package/coverage/actions/notifications.ts.html +0 -223
- package/coverage/actions/posts.ts.html +0 -2356
- package/coverage/actions/tags.ts.html +0 -1000
- package/coverage/adapters/arangoAdapter.ts.html +0 -301
- package/coverage/adapters/fileAdapter.ts.html +0 -445
- package/coverage/adapters/index.html +0 -176
- package/coverage/adapters/postAdapter.ts.html +0 -436
- package/coverage/adapters/reaktorAdapter.ts.html +0 -310
- package/coverage/adapters/tagAdapter.ts.html +0 -409
- package/coverage/adapters/userAdapter.ts.html +0 -829
- package/coverage/analyticsUtils.ts.html +0 -286
- package/coverage/base.css +0 -224
- package/coverage/block-navigation.js +0 -87
- package/coverage/clover.xml +0 -6
- package/coverage/config.ts.html +0 -766
- package/coverage/coverage-final.json +0 -1
- package/coverage/favicon.png +0 -0
- package/coverage/index.html +0 -221
- package/coverage/lcov-report/base.css +0 -224
- package/coverage/lcov-report/block-navigation.js +0 -87
- package/coverage/lcov-report/favicon.png +0 -0
- package/coverage/lcov-report/index.html +0 -101
- package/coverage/lcov-report/prettify.css +0 -1
- package/coverage/lcov-report/prettify.js +0 -2
- package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
- package/coverage/lcov-report/sorter.js +0 -196
- package/coverage/lcov.info +0 -0
- package/coverage/mocks/file.ts.html +0 -118
- package/coverage/mocks/group.ts.html +0 -145
- package/coverage/mocks/image.ts.html +0 -142
- package/coverage/mocks/index.html +0 -176
- package/coverage/mocks/post.ts.html +0 -169
- package/coverage/mocks/tag.ts.html +0 -121
- package/coverage/mocks/user.ts.html +0 -271
- package/coverage/prettify.css +0 -1
- package/coverage/prettify.js +0 -2
- package/coverage/sort-arrow-sprite.png +0 -0
- package/coverage/sorter.js +0 -210
- package/coverage/testUtils.ts.html +0 -1309
- package/coverage/translationQueue.ts.html +0 -592
- package/coverage/types/error.ts.html +0 -145
- package/coverage/types/error.types.ts.html +0 -148
- package/coverage/types/index.html +0 -116
- package/coverage/utils/adapterUtils.ts.html +0 -163
- package/coverage/utils/analyticsUtils.ts.html +0 -286
- package/coverage/utils/arangodbUtils.ts.html +0 -463
- package/coverage/utils/authUtils.ts.html +0 -328
- package/coverage/utils/dbI18n.ts.html +0 -280
- package/coverage/utils/googleTranslate.ts.html +0 -385
- package/coverage/utils/index.html +0 -131
- package/coverage/utils/localeUtils.ts.html +0 -193
- package/coverage/utils/sessionUtils.ts.html +0 -211
- package/coverage/utils/testUtils.ts.html +0 -1309
- package/index.js +0 -5
- package/jpg:- +0 -0
- package/lex.config.mjs +0 -34
- package/tsconfig.build.json +0 -21
- package/tsconfig.lint.json +0 -33
- package/tsconfig.test.json +0 -31
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { removeEmptyKeys } from '../utils/adapterUtils.js';
|
|
3
|
+
import { parseDocument } from './arangoAdapter.js';
|
|
4
|
+
import { parseNum } from '@nlabs/utils/parsers/numbers';
|
|
5
|
+
import { parseArangoId, parseString, parseUrl } from '@nlabs/utils/parsers/strings';
|
|
6
|
+
export class ImageValidationError extends Error {
|
|
7
|
+
field;
|
|
8
|
+
constructor(message, field){
|
|
9
|
+
super(message), this.field = field;
|
|
10
|
+
this.name = 'ImageValidationError';
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
const ImageInputSchema = z.object({
|
|
14
|
+
bucket: z.string().optional(),
|
|
15
|
+
color: z.string().optional(),
|
|
16
|
+
imageId: z.string().optional(),
|
|
17
|
+
height: z.number().optional(),
|
|
18
|
+
model: z.string().optional(),
|
|
19
|
+
make: z.string().optional(),
|
|
20
|
+
s3Options: z.any().optional(),
|
|
21
|
+
taken: z.number().optional(),
|
|
22
|
+
thumb: z.string().optional(),
|
|
23
|
+
fileType: z.string().optional(),
|
|
24
|
+
type: z.string().optional(),
|
|
25
|
+
url: z.string().optional(),
|
|
26
|
+
width: z.number().optional(),
|
|
27
|
+
name: z.string().optional(),
|
|
28
|
+
_id: z.string().optional(),
|
|
29
|
+
_key: z.string().optional(),
|
|
30
|
+
_rev: z.string().optional(),
|
|
31
|
+
_oldRev: z.string().optional(),
|
|
32
|
+
_from: z.string().optional(),
|
|
33
|
+
_to: z.string().optional()
|
|
34
|
+
}).passthrough();
|
|
35
|
+
export const validateImageInput = (image)=>{
|
|
36
|
+
try {
|
|
37
|
+
const validated = ImageInputSchema.parse(image);
|
|
38
|
+
return validated;
|
|
39
|
+
} catch (error) {
|
|
40
|
+
if (error instanceof z.ZodError) {
|
|
41
|
+
const fieldErrors = error.issues.map((e)=>`${e.path.join('.')}: ${e.message}`).join(', ');
|
|
42
|
+
throw new ImageValidationError(`Image validation failed: ${fieldErrors}`);
|
|
43
|
+
}
|
|
44
|
+
throw error;
|
|
45
|
+
}
|
|
46
|
+
};
|
|
47
|
+
export const formatImageOutput = (image)=>image;
|
|
48
|
+
export const parseImage = (image)=>{
|
|
49
|
+
try {
|
|
50
|
+
const parsed = performImageTransformation(image);
|
|
51
|
+
return parsed;
|
|
52
|
+
} catch (error) {
|
|
53
|
+
if (error instanceof ImageValidationError) {
|
|
54
|
+
throw error;
|
|
55
|
+
}
|
|
56
|
+
throw new ImageValidationError(`Image parsing failed: ${error instanceof Error ? error.message : 'Unknown error'}`);
|
|
57
|
+
}
|
|
58
|
+
};
|
|
59
|
+
const performImageTransformation = (image)=>{
|
|
60
|
+
const { _id, _key, bucket, color, id, imageId, height, model, make, s3Options, taken, thumb, fileType, type, url, width, name } = image;
|
|
61
|
+
const transformed = removeEmptyKeys({
|
|
62
|
+
...parseDocument(image),
|
|
63
|
+
..._key && {
|
|
64
|
+
imageId: parseArangoId(_key)
|
|
65
|
+
},
|
|
66
|
+
...bucket && {
|
|
67
|
+
bucket
|
|
68
|
+
},
|
|
69
|
+
...color && {
|
|
70
|
+
color
|
|
71
|
+
},
|
|
72
|
+
...(_id || id || _key || imageId) && {
|
|
73
|
+
imageId: parseArangoId(_id || id || `images/${_key || imageId}`)
|
|
74
|
+
},
|
|
75
|
+
...height !== undefined && {
|
|
76
|
+
height: parseNum(height)
|
|
77
|
+
},
|
|
78
|
+
...model && {
|
|
79
|
+
model: parseString(model, 160)
|
|
80
|
+
},
|
|
81
|
+
...make && {
|
|
82
|
+
make: parseString(make, 160)
|
|
83
|
+
},
|
|
84
|
+
...s3Options && {
|
|
85
|
+
s3Options
|
|
86
|
+
},
|
|
87
|
+
...taken !== undefined && {
|
|
88
|
+
taken: parseNum(taken)
|
|
89
|
+
},
|
|
90
|
+
...thumb && {
|
|
91
|
+
thumb
|
|
92
|
+
},
|
|
93
|
+
...fileType && {
|
|
94
|
+
fileType: parseString(fileType, 16)
|
|
95
|
+
},
|
|
96
|
+
...type && {
|
|
97
|
+
type: parseString(type, 16)
|
|
98
|
+
},
|
|
99
|
+
...url && {
|
|
100
|
+
url: parseUrl(url)
|
|
101
|
+
},
|
|
102
|
+
...width !== undefined && {
|
|
103
|
+
width: parseNum(width)
|
|
104
|
+
},
|
|
105
|
+
...name && {
|
|
106
|
+
name: parseString(name, 160)
|
|
107
|
+
}
|
|
108
|
+
});
|
|
109
|
+
return transformed;
|
|
110
|
+
};
|
|
111
|
+
|
|
112
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9uaXRyb2c3L0RldmVsb3BtZW50L3JlYWt0b3Ivc3JjL2FkYXB0ZXJzL2ltYWdlQWRhcHRlci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge3p9IGZyb20gJ3pvZCc7XG5cbmltcG9ydCB7cmVtb3ZlRW1wdHlLZXlzfSBmcm9tICcuLi91dGlscy9hZGFwdGVyVXRpbHMuanMnO1xuaW1wb3J0IHtwYXJzZURvY3VtZW50fSBmcm9tICcuL2FyYW5nb0FkYXB0ZXIuanMnO1xuXG5pbXBvcnQge3BhcnNlTnVtfSBmcm9tICdAbmxhYnMvdXRpbHMvcGFyc2Vycy9udW1iZXJzJztcbmltcG9ydCB7cGFyc2VBcmFuZ29JZCwgcGFyc2VTdHJpbmcsIHBhcnNlVXJsfSBmcm9tICdAbmxhYnMvdXRpbHMvcGFyc2Vycy9zdHJpbmdzJztcbmltcG9ydCB0eXBlIHtJbWFnZVR5cGV9IGZyb20gJy4uL3R5cGVzL2ltYWdlcy50eXBlcy5qcyc7XG5cbmV4cG9ydCBjbGFzcyBJbWFnZVZhbGlkYXRpb25FcnJvciBleHRlbmRzIEVycm9yIHtcbiAgY29uc3RydWN0b3IobWVzc2FnZTogc3RyaW5nLCBwdWJsaWMgZmllbGQ/OiBzdHJpbmcpIHtcbiAgICBzdXBlcihtZXNzYWdlKTtcbiAgICB0aGlzLm5hbWUgPSAnSW1hZ2VWYWxpZGF0aW9uRXJyb3InO1xuICB9XG59XG5cbmNvbnN0IEltYWdlSW5wdXRTY2hlbWEgPSB6Lm9iamVjdCh7XG4gIGJ1Y2tldDogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBjb2xvcjogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBpbWFnZUlkOiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIGhlaWdodDogei5udW1iZXIoKS5vcHRpb25hbCgpLFxuICBtb2RlbDogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBtYWtlOiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIHMzT3B0aW9uczogei5hbnkoKS5vcHRpb25hbCgpLFxuICB0YWtlbjogei5udW1iZXIoKS5vcHRpb25hbCgpLFxuICB0aHVtYjogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBmaWxlVHlwZTogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICB0eXBlOiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIHVybDogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICB3aWR0aDogei5udW1iZXIoKS5vcHRpb25hbCgpLFxuICBuYW1lOiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIF9pZDogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBfa2V5OiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIF9yZXY6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgX29sZFJldjogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBfZnJvbTogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBfdG86IHouc3RyaW5nKCkub3B0aW9uYWwoKVxufSkucGFzc3Rocm91Z2goKTtcblxuZXhwb3J0IGNvbnN0IHZhbGlkYXRlSW1hZ2VJbnB1dCA9IChpbWFnZTogdW5rbm93bik6IEltYWdlVHlwZSA9PiB7XG4gIHRyeSB7XG4gICAgY29uc3QgdmFsaWRhdGVkID0gSW1hZ2VJbnB1dFNjaGVtYS5wYXJzZShpbWFnZSk7XG4gICAgcmV0dXJuIHZhbGlkYXRlZCBhcyBJbWFnZVR5cGU7XG4gIH0gY2F0Y2goZXJyb3IpIHtcbiAgICBpZihlcnJvciBpbnN0YW5jZW9mIHouWm9kRXJyb3IpIHtcbiAgICAgIGNvbnN0IGZpZWxkRXJyb3JzID0gZXJyb3IuaXNzdWVzLm1hcCgoZSkgPT4gYCR7ZS5wYXRoLmpvaW4oJy4nKX06ICR7ZS5tZXNzYWdlfWApLmpvaW4oJywgJyk7XG4gICAgICB0aHJvdyBuZXcgSW1hZ2VWYWxpZGF0aW9uRXJyb3IoYEltYWdlIHZhbGlkYXRpb24gZmFpbGVkOiAke2ZpZWxkRXJyb3JzfWApO1xuICAgIH1cbiAgICB0aHJvdyBlcnJvcjtcbiAgfVxufTtcblxuZXhwb3J0IGNvbnN0IGZvcm1hdEltYWdlT3V0cHV0ID0gKGltYWdlOiBJbWFnZVR5cGUpOiBJbWFnZVR5cGUgPT4gaW1hZ2U7XG5cbmV4cG9ydCBjb25zdCBwYXJzZUltYWdlID0gKGltYWdlOiBJbWFnZVR5cGUpOiBJbWFnZVR5cGUgPT4ge1xuICB0cnkge1xuICAgIGNvbnN0IHBhcnNlZCA9IHBlcmZvcm1JbWFnZVRyYW5zZm9ybWF0aW9uKGltYWdlKTtcbiAgICByZXR1cm4gcGFyc2VkO1xuICB9IGNhdGNoKGVycm9yKSB7XG4gICAgaWYoZXJyb3IgaW5zdGFuY2VvZiBJbWFnZVZhbGlkYXRpb25FcnJvcikge1xuICAgICAgdGhyb3cgZXJyb3I7XG4gICAgfVxuICAgIHRocm93IG5ldyBJbWFnZVZhbGlkYXRpb25FcnJvcihgSW1hZ2UgcGFyc2luZyBmYWlsZWQ6ICR7ZXJyb3IgaW5zdGFuY2VvZiBFcnJvciA/IGVycm9yLm1lc3NhZ2UgOiAnVW5rbm93biBlcnJvcid9YCk7XG4gIH1cbn07XG5cbmNvbnN0IHBlcmZvcm1JbWFnZVRyYW5zZm9ybWF0aW9uID0gKGltYWdlOiBJbWFnZVR5cGUpOiBJbWFnZVR5cGUgPT4ge1xuICBjb25zdCB7XG4gICAgX2lkLFxuICAgIF9rZXksXG4gICAgYnVja2V0LFxuICAgIGNvbG9yLFxuICAgIGlkLFxuICAgIGltYWdlSWQsXG4gICAgaGVpZ2h0LFxuICAgIG1vZGVsLFxuICAgIG1ha2UsXG4gICAgczNPcHRpb25zLFxuICAgIHRha2VuLFxuICAgIHRodW1iLFxuICAgIGZpbGVUeXBlLFxuICAgIHR5cGUsXG4gICAgdXJsLFxuICAgIHdpZHRoLFxuICAgIG5hbWVcbiAgfSA9IGltYWdlO1xuXG4gIGNvbnN0IHRyYW5zZm9ybWVkID0gcmVtb3ZlRW1wdHlLZXlzKHtcbiAgICAuLi5wYXJzZURvY3VtZW50KGltYWdlKSxcbiAgICAuLi4oX2tleSAmJiB7aW1hZ2VJZDogcGFyc2VBcmFuZ29JZChfa2V5KX0pLFxuICAgIC4uLihidWNrZXQgJiYge2J1Y2tldH0pLFxuICAgIC4uLihjb2xvciAmJiB7Y29sb3J9KSxcbiAgICAuLi4oKF9pZCB8fCBpZCB8fCBfa2V5IHx8IGltYWdlSWQpICYmIHtpbWFnZUlkOiBwYXJzZUFyYW5nb0lkKF9pZCB8fCBpZCB8fCBgaW1hZ2VzLyR7X2tleSB8fCBpbWFnZUlkfWApfSksXG4gICAgLi4uKGhlaWdodCAhPT0gdW5kZWZpbmVkICYmIHtoZWlnaHQ6IHBhcnNlTnVtKGhlaWdodCl9KSxcbiAgICAuLi4obW9kZWwgJiYge21vZGVsOiBwYXJzZVN0cmluZyhtb2RlbCwgMTYwKX0pLFxuICAgIC4uLihtYWtlICYmIHttYWtlOiBwYXJzZVN0cmluZyhtYWtlLCAxNjApfSksXG4gICAgLi4uKHMzT3B0aW9ucyAmJiB7czNPcHRpb25zfSksXG4gICAgLi4uKHRha2VuICE9PSB1bmRlZmluZWQgJiYge3Rha2VuOiBwYXJzZU51bSh0YWtlbil9KSxcbiAgICAuLi4odGh1bWIgJiYge3RodW1ifSksXG4gICAgLi4uKGZpbGVUeXBlICYmIHtmaWxlVHlwZTogcGFyc2VTdHJpbmcoZmlsZVR5cGUsIDE2KX0pLFxuICAgIC4uLih0eXBlICYmIHt0eXBlOiBwYXJzZVN0cmluZyh0eXBlLCAxNil9KSxcbiAgICAuLi4odXJsICYmIHt1cmw6IHBhcnNlVXJsKHVybCl9KSxcbiAgICAuLi4od2lkdGggIT09IHVuZGVmaW5lZCAmJiB7d2lkdGg6IHBhcnNlTnVtKHdpZHRoKX0pLFxuICAgIC4uLihuYW1lICYmIHtuYW1lOiBwYXJzZVN0cmluZyhuYW1lLCAxNjApfSlcbiAgfSk7XG5cbiAgcmV0dXJuIHRyYW5zZm9ybWVkO1xufTtcblxuIl0sIm5hbWVzIjpbInoiLCJyZW1vdmVFbXB0eUtleXMiLCJwYXJzZURvY3VtZW50IiwicGFyc2VOdW0iLCJwYXJzZUFyYW5nb0lkIiwicGFyc2VTdHJpbmciLCJwYXJzZVVybCIsIkltYWdlVmFsaWRhdGlvbkVycm9yIiwiRXJyb3IiLCJtZXNzYWdlIiwiZmllbGQiLCJuYW1lIiwiSW1hZ2VJbnB1dFNjaGVtYSIsIm9iamVjdCIsImJ1Y2tldCIsInN0cmluZyIsIm9wdGlvbmFsIiwiY29sb3IiLCJpbWFnZUlkIiwiaGVpZ2h0IiwibnVtYmVyIiwibW9kZWwiLCJtYWtlIiwiczNPcHRpb25zIiwiYW55IiwidGFrZW4iLCJ0aHVtYiIsImZpbGVUeXBlIiwidHlwZSIsInVybCIsIndpZHRoIiwiX2lkIiwiX2tleSIsIl9yZXYiLCJfb2xkUmV2IiwiX2Zyb20iLCJfdG8iLCJwYXNzdGhyb3VnaCIsInZhbGlkYXRlSW1hZ2VJbnB1dCIsImltYWdlIiwidmFsaWRhdGVkIiwicGFyc2UiLCJlcnJvciIsIlpvZEVycm9yIiwiZmllbGRFcnJvcnMiLCJpc3N1ZXMiLCJtYXAiLCJlIiwicGF0aCIsImpvaW4iLCJmb3JtYXRJbWFnZU91dHB1dCIsInBhcnNlSW1hZ2UiLCJwYXJzZWQiLCJwZXJmb3JtSW1hZ2VUcmFuc2Zvcm1hdGlvbiIsImlkIiwidHJhbnNmb3JtZWQiLCJ1bmRlZmluZWQiXSwibWFwcGluZ3MiOiJBQUFBLFNBQVFBLENBQUMsUUFBTyxNQUFNO0FBRXRCLFNBQVFDLGVBQWUsUUFBTywyQkFBMkI7QUFDekQsU0FBUUMsYUFBYSxRQUFPLHFCQUFxQjtBQUVqRCxTQUFRQyxRQUFRLFFBQU8sK0JBQStCO0FBQ3RELFNBQVFDLGFBQWEsRUFBRUMsV0FBVyxFQUFFQyxRQUFRLFFBQU8sK0JBQStCO0FBR2xGLE9BQU8sTUFBTUMsNkJBQTZCQzs7SUFDeEMsWUFBWUMsT0FBZSxFQUFFLEFBQU9DLEtBQWMsQ0FBRTtRQUNsRCxLQUFLLENBQUNELGVBRDRCQyxRQUFBQTtRQUVsQyxJQUFJLENBQUNDLElBQUksR0FBRztJQUNkO0FBQ0Y7QUFFQSxNQUFNQyxtQkFBbUJaLEVBQUVhLE1BQU0sQ0FBQztJQUNoQ0MsUUFBUWQsRUFBRWUsTUFBTSxHQUFHQyxRQUFRO0lBQzNCQyxPQUFPakIsRUFBRWUsTUFBTSxHQUFHQyxRQUFRO0lBQzFCRSxTQUFTbEIsRUFBRWUsTUFBTSxHQUFHQyxRQUFRO0lBQzVCRyxRQUFRbkIsRUFBRW9CLE1BQU0sR0FB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
|
package/lib/adapters/index.d.ts
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/adapters/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export * from './arangoAdapter.js';
|
|
2
|
+
export * from './contentAdapter.js';
|
|
3
|
+
export * from './fileAdapter.js';
|
|
4
|
+
export * from './imageAdapter.js';
|
|
5
|
+
export * from './messageAdapter.js';
|
|
6
|
+
export * from './postAdapter.js';
|
|
7
|
+
export * from './reaktorAdapter.js';
|
|
8
|
+
export * from './tagAdapter.js';
|
|
9
|
+
export * from './userAdapter.js';
|
|
10
|
+
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9uaXRyb2c3L0RldmVsb3BtZW50L3JlYWt0b3Ivc3JjL2FkYXB0ZXJzL2luZGV4LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYXJhbmdvQWRhcHRlci5qcyc7XG5leHBvcnQgKiBmcm9tICcuL2NvbnRlbnRBZGFwdGVyLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vZmlsZUFkYXB0ZXIuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9pbWFnZUFkYXB0ZXIuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9tZXNzYWdlQWRhcHRlci5qcyc7XG5leHBvcnQgKiBmcm9tICcuL3Bvc3RBZGFwdGVyLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vcmVha3RvckFkYXB0ZXIuanMnO1xuZXhwb3J0ICogZnJvbSAnLi90YWdBZGFwdGVyLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vdXNlckFkYXB0ZXIuanMnO1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMscUJBQXFCO0FBQ25DLGNBQWMsc0JBQXNCO0FBQ3BDLGNBQWMsbUJBQW1CO0FBQ2pDLGNBQWMsb0JBQW9CO0FBQ2xDLGNBQWMsc0JBQXNCO0FBQ3BDLGNBQWMsbUJBQW1CO0FBQ2pDLGNBQWMsc0JBQXNCO0FBQ3BDLGNBQWMsa0JBQWtCO0FBQ2hDLGNBQWMsbUJBQW1CIn0=
|
|
@@ -6,3 +6,4 @@ export declare class MessageValidationError extends Error {
|
|
|
6
6
|
export declare const validateMessageInput: (message: unknown) => MessageType;
|
|
7
7
|
export declare const formatMessageOutput: (message: MessageType) => MessageType;
|
|
8
8
|
export declare const parseMessage: (message: MessageType) => MessageType;
|
|
9
|
+
//# sourceMappingURL=messageAdapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"messageAdapter.d.ts","sourceRoot":"","sources":["../../src/adapters/messageAdapter.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,4BAA4B,CAAC;AAE5D,qBAAa,sBAAuB,SAAQ,KAAK;IACX,KAAK,CAAC,EAAE,MAAM;gBAAtC,OAAO,EAAE,MAAM,EAAS,KAAK,CAAC,EAAE,MAAM;CAInD;AAqBD,eAAO,MAAM,oBAAoB,GAAI,SAAS,OAAO,KAAG,WAWvD,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAAI,SAAS,WAAW,KAAG,WAAsB,CAAC;AAElF,eAAO,MAAM,YAAY,GAAI,SAAS,WAAW,KAAG,WAUnD,CAAC"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { parseArangoId, parseId } from '@nlabs/utils/parsers/strings';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
import { removeEmptyKeys } from '../utils/adapterUtils.js';
|
|
4
|
+
import { parseDocument } from './arangoAdapter.js';
|
|
5
|
+
import { parseFile } from './fileAdapter.js';
|
|
6
|
+
import { parseImage } from './imageAdapter.js';
|
|
7
|
+
export class MessageValidationError extends Error {
|
|
8
|
+
field;
|
|
9
|
+
constructor(message, field){
|
|
10
|
+
super(message), this.field = field;
|
|
11
|
+
this.name = 'MessageValidationError';
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
const MessageInputSchema = z.object({
|
|
15
|
+
content: z.string().optional(),
|
|
16
|
+
conversationId: z.string().optional(),
|
|
17
|
+
files: z.array(z.any()).optional(),
|
|
18
|
+
images: z.array(z.any()).optional(),
|
|
19
|
+
itemId: z.string().optional(),
|
|
20
|
+
itemType: z.string().optional(),
|
|
21
|
+
messageId: z.string().optional(),
|
|
22
|
+
read: z.boolean().optional(),
|
|
23
|
+
saved: z.boolean().optional(),
|
|
24
|
+
userId: z.string().optional(),
|
|
25
|
+
_id: z.string().optional(),
|
|
26
|
+
_key: z.string().optional(),
|
|
27
|
+
_rev: z.string().optional(),
|
|
28
|
+
_oldRev: z.string().optional(),
|
|
29
|
+
_from: z.string().optional(),
|
|
30
|
+
_to: z.string().optional()
|
|
31
|
+
}).passthrough();
|
|
32
|
+
export const validateMessageInput = (message)=>{
|
|
33
|
+
try {
|
|
34
|
+
const validated = MessageInputSchema.parse(message);
|
|
35
|
+
return validated;
|
|
36
|
+
} catch (error) {
|
|
37
|
+
if (error instanceof z.ZodError) {
|
|
38
|
+
const fieldErrors = error.issues.map((e)=>`${e.path.join('.')}: ${e.message}`).join(', ');
|
|
39
|
+
throw new MessageValidationError(`Message validation failed: ${fieldErrors}`);
|
|
40
|
+
}
|
|
41
|
+
throw error;
|
|
42
|
+
}
|
|
43
|
+
};
|
|
44
|
+
export const formatMessageOutput = (message)=>message;
|
|
45
|
+
export const parseMessage = (message)=>{
|
|
46
|
+
try {
|
|
47
|
+
const parsed = performMessageTransformation(message);
|
|
48
|
+
return parsed;
|
|
49
|
+
} catch (error) {
|
|
50
|
+
if (error instanceof MessageValidationError) {
|
|
51
|
+
throw error;
|
|
52
|
+
}
|
|
53
|
+
throw new MessageValidationError(`Message parsing failed: ${error instanceof Error ? error.message : 'Unknown error'}`);
|
|
54
|
+
}
|
|
55
|
+
};
|
|
56
|
+
const performMessageTransformation = (message)=>{
|
|
57
|
+
const { _id, _key, content, files, id, images, messageId, saved } = message;
|
|
58
|
+
const transformed = removeEmptyKeys({
|
|
59
|
+
...parseDocument(message),
|
|
60
|
+
...content && {
|
|
61
|
+
content
|
|
62
|
+
},
|
|
63
|
+
...Array.isArray(files) && {
|
|
64
|
+
files: files.map(parseFile)
|
|
65
|
+
},
|
|
66
|
+
...Array.isArray(images) && {
|
|
67
|
+
images: images.map(parseImage)
|
|
68
|
+
},
|
|
69
|
+
..._key && {
|
|
70
|
+
messageId: parseId(_key)
|
|
71
|
+
},
|
|
72
|
+
...(_id || id || _key || messageId) && {
|
|
73
|
+
messageId: parseArangoId(_id || id || `messages/${_key || messageId}`)
|
|
74
|
+
},
|
|
75
|
+
...saved !== undefined && {
|
|
76
|
+
saved: !!saved
|
|
77
|
+
}
|
|
78
|
+
});
|
|
79
|
+
return transformed;
|
|
80
|
+
};
|
|
81
|
+
|
|
82
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9uaXRyb2c3L0RldmVsb3BtZW50L3JlYWt0b3Ivc3JjL2FkYXB0ZXJzL21lc3NhZ2VBZGFwdGVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7cGFyc2VBcmFuZ29JZCwgcGFyc2VJZH0gZnJvbSAnQG5sYWJzL3V0aWxzL3BhcnNlcnMvc3RyaW5ncyc7XG5pbXBvcnQge3p9IGZyb20gJ3pvZCc7XG5cbmltcG9ydCB7cmVtb3ZlRW1wdHlLZXlzfSBmcm9tICcuLi91dGlscy9hZGFwdGVyVXRpbHMuanMnO1xuaW1wb3J0IHtwYXJzZURvY3VtZW50fSBmcm9tICcuL2FyYW5nb0FkYXB0ZXIuanMnO1xuaW1wb3J0IHtwYXJzZUZpbGV9IGZyb20gJy4vZmlsZUFkYXB0ZXIuanMnO1xuaW1wb3J0IHtwYXJzZUltYWdlfSBmcm9tICcuL2ltYWdlQWRhcHRlci5qcyc7XG5cbmltcG9ydCB0eXBlIHtNZXNzYWdlVHlwZX0gZnJvbSAnLi4vdHlwZXMvbWVzc2FnZXMudHlwZXMuanMnO1xuXG5leHBvcnQgY2xhc3MgTWVzc2FnZVZhbGlkYXRpb25FcnJvciBleHRlbmRzIEVycm9yIHtcbiAgY29uc3RydWN0b3IobWVzc2FnZTogc3RyaW5nLCBwdWJsaWMgZmllbGQ/OiBzdHJpbmcpIHtcbiAgICBzdXBlcihtZXNzYWdlKTtcbiAgICB0aGlzLm5hbWUgPSAnTWVzc2FnZVZhbGlkYXRpb25FcnJvcic7XG4gIH1cbn1cblxuY29uc3QgTWVzc2FnZUlucHV0U2NoZW1hID0gei5vYmplY3Qoe1xuICBjb250ZW50OiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIGNvbnZlcnNhdGlvbklkOiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIGZpbGVzOiB6LmFycmF5KHouYW55KCkpLm9wdGlvbmFsKCksXG4gIGltYWdlczogei5hcnJheSh6LmFueSgpKS5vcHRpb25hbCgpLFxuICBpdGVtSWQ6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgaXRlbVR5cGU6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgbWVzc2FnZUlkOiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIHJlYWQ6IHouYm9vbGVhbigpLm9wdGlvbmFsKCksXG4gIHNhdmVkOiB6LmJvb2xlYW4oKS5vcHRpb25hbCgpLFxuICB1c2VySWQ6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgX2lkOiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIF9rZXk6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgX3Jldjogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBfb2xkUmV2OiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIF9mcm9tOiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIF90bzogei5zdHJpbmcoKS5vcHRpb25hbCgpXG59KS5wYXNzdGhyb3VnaCgpO1xuXG5leHBvcnQgY29uc3QgdmFsaWRhdGVNZXNzYWdlSW5wdXQgPSAobWVzc2FnZTogdW5rbm93bik6IE1lc3NhZ2VUeXBlID0+IHtcbiAgdHJ5IHtcbiAgICBjb25zdCB2YWxpZGF0ZWQgPSBNZXNzYWdlSW5wdXRTY2hlbWEucGFyc2UobWVzc2FnZSk7XG4gICAgcmV0dXJuIHZhbGlkYXRlZCBhcyBNZXNzYWdlVHlwZTtcbiAgfSBjYXRjaChlcnJvcikge1xuICAgIGlmKGVycm9yIGluc3RhbmNlb2Ygei5ab2RFcnJvcikge1xuICAgICAgY29uc3QgZmllbGRFcnJvcnMgPSBlcnJvci5pc3N1ZXMubWFwKChlKSA9PiBgJHtlLnBhdGguam9pbignLicpfTogJHtlLm1lc3NhZ2V9YCkuam9pbignLCAnKTtcbiAgICAgIHRocm93IG5ldyBNZXNzYWdlVmFsaWRhdGlvbkVycm9yKGBNZXNzYWdlIHZhbGlkYXRpb24gZmFpbGVkOiAke2ZpZWxkRXJyb3JzfWApO1xuICAgIH1cbiAgICB0aHJvdyBlcnJvcjtcbiAgfVxufTtcblxuZXhwb3J0IGNvbnN0IGZvcm1hdE1lc3NhZ2VPdXRwdXQgPSAobWVzc2FnZTogTWVzc2FnZVR5cGUpOiBNZXNzYWdlVHlwZSA9PiBtZXNzYWdlO1xuXG5leHBvcnQgY29uc3QgcGFyc2VNZXNzYWdlID0gKG1lc3NhZ2U6IE1lc3NhZ2VUeXBlKTogTWVzc2FnZVR5cGUgPT4ge1xuICB0cnkge1xuICAgIGNvbnN0IHBhcnNlZCA9IHBlcmZvcm1NZXNzYWdlVHJhbnNmb3JtYXRpb24obWVzc2FnZSk7XG4gICAgcmV0dXJuIHBhcnNlZDtcbiAgfSBjYXRjaChlcnJvcikge1xuICAgIGlmKGVycm9yIGluc3RhbmNlb2YgTWVzc2FnZVZhbGlkYXRpb25FcnJvcikge1xuICAgICAgdGhyb3cgZXJyb3I7XG4gICAgfVxuICAgIHRocm93IG5ldyBNZXNzYWdlVmFsaWRhdGlvbkVycm9yKGBNZXNzYWdlIHBhcnNpbmcgZmFpbGVkOiAke2Vycm9yIGluc3RhbmNlb2YgRXJyb3IgPyBlcnJvci5tZXNzYWdlIDogJ1Vua25vd24gZXJyb3InfWApO1xuICB9XG59O1xuXG5jb25zdCBwZXJmb3JtTWVzc2FnZVRyYW5zZm9ybWF0aW9uID0gKG1lc3NhZ2U6IE1lc3NhZ2VUeXBlKTogTWVzc2FnZVR5cGUgPT4ge1xuICBjb25zdCB7XG4gICAgX2lkLFxuICAgIF9rZXksXG4gICAgY29udGVudCxcbiAgICBmaWxlcyxcbiAgICBpZCxcbiAgICBpbWFnZXMsXG4gICAgbWVzc2FnZUlkLFxuICAgIHNhdmVkXG4gIH0gPSBtZXNzYWdlO1xuXG4gIGNvbnN0IHRyYW5zZm9ybWVkID0gcmVtb3ZlRW1wdHlLZXlzKHtcbiAgICAuLi5wYXJzZURvY3VtZW50KG1lc3NhZ2UpLFxuICAgIC4uLihjb250ZW50ICYmIHtjb250ZW50fSksXG4gICAgLi4uKEFycmF5LmlzQXJyYXkoZmlsZXMpICYmIHtmaWxlczogZmlsZXMubWFwKHBhcnNlRmlsZSl9KSxcbiAgICAuLi4oQXJyYXkuaXNBcnJheShpbWFnZXMpICYmIHtpbWFnZXM6IGltYWdlcy5tYXAocGFyc2VJbWFnZSl9KSxcbiAgICAuLi4oX2tleSAmJiB7bWVzc2FnZUlkOiBwYXJzZUlkKF9rZXkpfSksXG4gICAgLi4uKChfaWQgfHwgaWQgfHwgX2tleSB8fCBtZXNzYWdlSWQpICYmIHttZXNzYWdlSWQ6IHBhcnNlQXJhbmdvSWQoX2lkIHx8IGlkIHx8IGBtZXNzYWdlcy8ke19rZXkgfHwgbWVzc2FnZUlkfWApfSksXG4gICAgLi4uKHNhdmVkICE9PSB1bmRlZmluZWQgJiYge3NhdmVkOiAhIXNhdmVkfSlcbiAgfSk7XG5cbiAgcmV0dXJuIHRyYW5zZm9ybWVkO1xufTtcblxuIl0sIm5hbWVzIjpbInBhcnNlQXJhbmdvSWQiLCJwYXJzZUlkIiwieiIsInJlbW92ZUVtcHR5S2V5cyIsInBhcnNlRG9jdW1lbnQiLCJwYXJzZUZpbGUiLCJwYXJzZUltYWdlIiwiTWVzc2FnZVZhbGlkYXRpb25FcnJvciIsIkVycm9yIiwibWVzc2FnZSIsImZpZWxkIiwibmFtZSIsIk1lc3NhZ2VJbnB1dFNjaGVtYSIsIm9iamVjdCIsImNvbnRlbnQiLCJzdHJpbmciLCJvcHRpb25hbCIsImNvbnZlcnNhdGlvbklkIiwiZmlsZXMiLCJhcnJheSIsImFueSIsImltYWdlcyIsIml0ZW1JZCIsIml0ZW1UeXBlIiwibWVzc2FnZUlkIiwicmVhZCIsImJvb2xlYW4iLCJzYXZlZCIsInVzZXJJZCIsIl9pZCIsIl9rZXkiLCJfcmV2IiwiX29sZFJldiIsIl9mcm9tIiwiX3RvIiwicGFzc3Rocm91Z2giLCJ2YWxpZGF0ZU1lc3NhZ2VJbnB1dCIsInZhbGlkYXRlZCIsInBhcnNlIiwiZXJyb3IiLCJab2RFcnJvciIsImZpZWxkRXJyb3JzIiwiaXNzdWVzIiwibWFwIiwiZSIsInBhdGgiLCJqb2luIiwiZm9ybWF0TWVzc2FnZU91dHB1dCIsInBhcnNlTWVzc2FnZSIsInBhcnNlZCIsInBlcmZvcm1NZXNzYWdlVHJhbnNmb3JtYXRpb24iLCJpZCIsInRyYW5zZm9ybWVkIiwiQXJyYXkiLCJpc0FycmF5IiwidW5kZWZpbmVkIl0sIm1hcHBpbmdzIjoiQUFBQSxTQUFRQSxhQUFhLEVBQUVDLE9BQU8sUUFBTywrQkFBK0I7QUFDcEUsU0FB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
|
|
@@ -6,3 +6,4 @@ export declare class PostValidationError extends Error {
|
|
|
6
6
|
export declare const validatePostInput: (post: unknown) => PostType;
|
|
7
7
|
export declare const formatPostOutput: (post: PostType) => PostType;
|
|
8
8
|
export declare const parsePost: (post: PostType) => PostType;
|
|
9
|
+
//# sourceMappingURL=postAdapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"postAdapter.d.ts","sourceRoot":"","sources":["../../src/adapters/postAdapter.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,yBAAyB,CAAC;AAItD,qBAAa,mBAAoB,SAAQ,KAAK;IACR,KAAK,CAAC,EAAE,MAAM;gBAAtC,OAAO,EAAE,MAAM,EAAS,KAAK,CAAC,EAAE,MAAM;CAInD;AA0BD,eAAO,MAAM,iBAAiB,GAAI,MAAM,OAAO,KAAG,QAWjD,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAI,MAAM,QAAQ,KAAG,QAAgB,CAAC;AAEnE,eAAO,MAAM,SAAS,GAAI,MAAM,QAAQ,KAAG,QAU1C,CAAC"}
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
import { parseNum } from '@nlabs/utils/parsers/numbers';
|
|
2
|
+
import { parseArangoId, parseId, parseString, parseVarChar } from '@nlabs/utils/parsers/strings';
|
|
3
|
+
import { z } from 'zod';
|
|
4
|
+
import { removeEmptyKeys } from '../utils/adapterUtils.js';
|
|
5
|
+
import { parseDocument } from './arangoAdapter.js';
|
|
6
|
+
import { parseFile } from './fileAdapter.js';
|
|
7
|
+
import { parseReaktorContent, parseReaktorDate, parseReaktorType } from './reaktorAdapter.js';
|
|
8
|
+
import { parseTag } from './tagAdapter.js';
|
|
9
|
+
const MAX_CONTENT_LENGTH = 100000;
|
|
10
|
+
export class PostValidationError extends Error {
|
|
11
|
+
field;
|
|
12
|
+
constructor(message, field){
|
|
13
|
+
super(message), this.field = field;
|
|
14
|
+
this.name = 'PostValidationError';
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
const PostInputSchema = z.object({
|
|
18
|
+
content: z.string().optional(),
|
|
19
|
+
endDate: z.number().optional(),
|
|
20
|
+
files: z.array(z.any()).optional(),
|
|
21
|
+
groupId: z.string().optional(),
|
|
22
|
+
postId: z.string().optional(),
|
|
23
|
+
latitude: z.number().optional(),
|
|
24
|
+
location: z.string().optional(),
|
|
25
|
+
longitude: z.number().optional(),
|
|
26
|
+
name: z.string().optional(),
|
|
27
|
+
parentId: z.string().optional(),
|
|
28
|
+
privacy: z.string().optional(),
|
|
29
|
+
startDate: z.number().optional(),
|
|
30
|
+
tags: z.array(z.any()).optional(),
|
|
31
|
+
type: z.string().optional(),
|
|
32
|
+
userId: z.string().optional(),
|
|
33
|
+
_id: z.string().optional(),
|
|
34
|
+
_key: z.string().optional(),
|
|
35
|
+
_rev: z.string().optional(),
|
|
36
|
+
_oldRev: z.string().optional(),
|
|
37
|
+
_from: z.string().optional(),
|
|
38
|
+
_to: z.string().optional()
|
|
39
|
+
}).passthrough();
|
|
40
|
+
export const validatePostInput = (post)=>{
|
|
41
|
+
try {
|
|
42
|
+
const validated = PostInputSchema.parse(post);
|
|
43
|
+
return validated;
|
|
44
|
+
} catch (error) {
|
|
45
|
+
if (error instanceof z.ZodError) {
|
|
46
|
+
const fieldErrors = error.issues.map((e)=>`${e.path.join('.')}: ${e.message}`).join(', ');
|
|
47
|
+
throw new PostValidationError(`Post validation failed: ${fieldErrors}`);
|
|
48
|
+
}
|
|
49
|
+
throw error;
|
|
50
|
+
}
|
|
51
|
+
};
|
|
52
|
+
export const formatPostOutput = (post)=>post;
|
|
53
|
+
export const parsePost = (post)=>{
|
|
54
|
+
try {
|
|
55
|
+
const parsed = performPostTransformation(post);
|
|
56
|
+
return parsed;
|
|
57
|
+
} catch (error) {
|
|
58
|
+
if (error instanceof PostValidationError) {
|
|
59
|
+
throw error;
|
|
60
|
+
}
|
|
61
|
+
throw new PostValidationError(`Post parsing failed: ${error instanceof Error ? error.message : 'Unknown error'}`);
|
|
62
|
+
}
|
|
63
|
+
};
|
|
64
|
+
const performPostTransformation = (post)=>{
|
|
65
|
+
const { _id, _key, content, endDate, files, groupId, id, latitude, location, longitude, name, parentId, postId, privacy, tags, type, userId } = post;
|
|
66
|
+
const transformed = removeEmptyKeys({
|
|
67
|
+
...parseDocument(post),
|
|
68
|
+
...content && {
|
|
69
|
+
content: parseReaktorContent(content, MAX_CONTENT_LENGTH)
|
|
70
|
+
},
|
|
71
|
+
...endDate !== undefined && {
|
|
72
|
+
endDate: parseReaktorDate(endDate)
|
|
73
|
+
},
|
|
74
|
+
...files?.length && {
|
|
75
|
+
files: files.map((file)=>parseFile(file))
|
|
76
|
+
},
|
|
77
|
+
...groupId && {
|
|
78
|
+
groupId: parseId(groupId)
|
|
79
|
+
},
|
|
80
|
+
...latitude !== undefined && {
|
|
81
|
+
latitude: parseNum(latitude, 15)
|
|
82
|
+
},
|
|
83
|
+
...location && {
|
|
84
|
+
location: parseString(location, 160)
|
|
85
|
+
},
|
|
86
|
+
...longitude !== undefined && {
|
|
87
|
+
longitude: parseNum(longitude, 15)
|
|
88
|
+
},
|
|
89
|
+
...name && {
|
|
90
|
+
name: parseString(name, 160)
|
|
91
|
+
},
|
|
92
|
+
...parentId && {
|
|
93
|
+
parentId: parseId(parentId)
|
|
94
|
+
},
|
|
95
|
+
...(_id || id || _key || postId) && {
|
|
96
|
+
id: parseArangoId(_id || id || `posts/${_key || postId || ''}`)
|
|
97
|
+
},
|
|
98
|
+
...(_key || postId) && {
|
|
99
|
+
postId: parseId(_key || postId || '')
|
|
100
|
+
},
|
|
101
|
+
...privacy && {
|
|
102
|
+
privacy: parseVarChar(privacy, 16)
|
|
103
|
+
},
|
|
104
|
+
...tags?.length && {
|
|
105
|
+
tags: tags.map((tag)=>parseTag(tag))
|
|
106
|
+
},
|
|
107
|
+
...type && {
|
|
108
|
+
type: parseReaktorType(type)
|
|
109
|
+
},
|
|
110
|
+
...userId && {
|
|
111
|
+
userId: parseId(userId)
|
|
112
|
+
}
|
|
113
|
+
});
|
|
114
|
+
return transformed;
|
|
115
|
+
};
|
|
116
|
+
|
|
117
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9uaXRyb2c3L0RldmVsb3BtZW50L3JlYWt0b3Ivc3JjL2FkYXB0ZXJzL3Bvc3RBZGFwdGVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7cGFyc2VOdW19IGZyb20gJ0BubGFicy91dGlscy9wYXJzZXJzL251bWJlcnMnO1xuaW1wb3J0IHtwYXJzZUFyYW5nb0lkLCBwYXJzZUlkLCBwYXJzZVN0cmluZywgcGFyc2VWYXJDaGFyfSBmcm9tICdAbmxhYnMvdXRpbHMvcGFyc2Vycy9zdHJpbmdzJztcbmltcG9ydCB7en0gZnJvbSAnem9kJztcblxuaW1wb3J0IHtyZW1vdmVFbXB0eUtleXN9IGZyb20gJy4uL3V0aWxzL2FkYXB0ZXJVdGlscy5qcyc7XG5pbXBvcnQge3BhcnNlRG9jdW1lbnR9IGZyb20gJy4vYXJhbmdvQWRhcHRlci5qcyc7XG5pbXBvcnQge3BhcnNlRmlsZX0gZnJvbSAnLi9maWxlQWRhcHRlci5qcyc7XG5pbXBvcnQge1xuICBwYXJzZVJlYWt0b3JDb250ZW50LFxuICBwYXJzZVJlYWt0b3JEYXRlLFxuICBwYXJzZVJlYWt0b3JUeXBlXG59IGZyb20gJy4vcmVha3RvckFkYXB0ZXIuanMnO1xuaW1wb3J0IHtwYXJzZVRhZ30gZnJvbSAnLi90YWdBZGFwdGVyLmpzJztcblxuaW1wb3J0IHR5cGUge1Bvc3RUeXBlfSBmcm9tICcuLi90eXBlcy9wb3N0cy50eXBlcy5qcyc7XG5cbmNvbnN0IE1BWF9DT05URU5UX0xFTkdUSDogbnVtYmVyID0gMTAwMDAwO1xuXG5leHBvcnQgY2xhc3MgUG9zdFZhbGlkYXRpb25FcnJvciBleHRlbmRzIEVycm9yIHtcbiAgY29uc3RydWN0b3IobWVzc2FnZTogc3RyaW5nLCBwdWJsaWMgZmllbGQ/OiBzdHJpbmcpIHtcbiAgICBzdXBlcihtZXNzYWdlKTtcbiAgICB0aGlzLm5hbWUgPSAnUG9zdFZhbGlkYXRpb25FcnJvcic7XG4gIH1cbn1cblxuY29uc3QgUG9zdElucHV0U2NoZW1hID0gei5vYmplY3Qoe1xuICBjb250ZW50OiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIGVuZERhdGU6IHoubnVtYmVyKCkub3B0aW9uYWwoKSxcbiAgZmlsZXM6IHouYXJyYXkoei5hbnkoKSkub3B0aW9uYWwoKSxcbiAgZ3JvdXBJZDogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBwb3N0SWQ6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgbGF0aXR1ZGU6IHoubnVtYmVyKCkub3B0aW9uYWwoKSxcbiAgbG9jYXRpb246IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgbG9uZ2l0dWRlOiB6Lm51bWJlcigpLm9wdGlvbmFsKCksXG4gIG5hbWU6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgcGFyZW50SWQ6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgcHJpdmFjeTogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBzdGFydERhdGU6IHoubnVtYmVyKCkub3B0aW9uYWwoKSxcbiAgdGFnczogei5hcnJheSh6LmFueSgpKS5vcHRpb25hbCgpLFxuICB0eXBlOiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIHVzZXJJZDogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBfaWQ6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgX2tleTogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBfcmV2OiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIF9vbGRSZXY6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgX2Zyb206IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgX3RvOiB6LnN0cmluZygpLm9wdGlvbmFsKClcbn0pLnBhc3N0aHJvdWdoKCk7XG5cbmV4cG9ydCBjb25zdCB2YWxpZGF0ZVBvc3RJbnB1dCA9IChwb3N0OiB1bmtub3duKTogUG9zdFR5cGUgPT4ge1xuICB0cnkge1xuICAgIGNvbnN0IHZhbGlkYXRlZCA9IFBvc3RJbnB1dFNjaGVtYS5wYXJzZShwb3N0KTtcbiAgICByZXR1cm4gdmFsaWRhdGVkIGFzIFBvc3RUeXBlO1xuICB9IGNhdGNoKGVycm9yKSB7XG4gICAgaWYoZXJyb3IgaW5zdGFuY2VvZiB6LlpvZEVycm9yKSB7XG4gICAgICBjb25zdCBmaWVsZEVycm9ycyA9IGVycm9yLmlzc3Vlcy5tYXAoKGUpID0+IGAke2UucGF0aC5qb2luKCcuJyl9OiAke2UubWVzc2FnZX1gKS5qb2luKCcsICcpO1xuICAgICAgdGhyb3cgbmV3IFBvc3RWYWxpZGF0aW9uRXJyb3IoYFBvc3QgdmFsaWRhdGlvbiBmYWlsZWQ6ICR7ZmllbGRFcnJvcnN9YCk7XG4gICAgfVxuICAgIHRocm93IGVycm9yO1xuICB9XG59O1xuXG5leHBvcnQgY29uc3QgZm9ybWF0UG9zdE91dHB1dCA9IChwb3N0OiBQb3N0VHlwZSk6IFBvc3RUeXBlID0+IHBvc3Q7XG5cbmV4cG9ydCBjb25zdCBwYXJzZVBvc3QgPSAocG9zdDogUG9zdFR5cGUpOiBQb3N0VHlwZSA9PiB7XG4gIHRyeSB7XG4gICAgY29uc3QgcGFyc2VkID0gcGVyZm9ybVBvc3RUcmFuc2Zvcm1hdGlvbihwb3N0KTtcbiAgICByZXR1cm4gcGFyc2VkO1xuICB9IGNhdGNoKGVycm9yKSB7XG4gICAgaWYoZXJyb3IgaW5zdGFuY2VvZiBQb3N0VmFsaWRhdGlvbkVycm9yKSB7XG4gICAgICB0aHJvdyBlcnJvcjtcbiAgICB9XG4gICAgdGhyb3cgbmV3IFBvc3RWYWxpZGF0aW9uRXJyb3IoYFBvc3QgcGFyc2luZyBmYWlsZWQ6ICR7ZXJyb3IgaW5zdGFuY2VvZiBFcnJvciA/IGVycm9yLm1lc3NhZ2UgOiAnVW5rbm93biBlcnJvcid9YCk7XG4gIH1cbn07XG5cbmNvbnN0IHBlcmZvcm1Qb3N0VHJhbnNmb3JtYXRpb24gPSAocG9zdDogUG9zdFR5cGUpOiBQb3N0VHlwZSA9PiB7XG4gIGNvbnN0IHtcbiAgICBfaWQsXG4gICAgX2tleSxcbiAgICBjb250ZW50LFxuICAgIGVuZERhdGUsXG4gICAgZmlsZXMsXG4gICAgZ3JvdXBJZCxcbiAgICBpZCxcbiAgICBsYXRpdHVkZSxcbiAgICBsb2NhdGlvbixcbiAgICBsb25naXR1ZGUsXG4gICAgbmFtZSxcbiAgICBwYXJlbnRJZCxcbiAgICBwb3N0SWQsXG4gICAgcHJpdmFjeSxcbiAgICB0YWdzLFxuICAgIHR5cGUsXG4gICAgdXNlcklkXG4gIH0gPSBwb3N0O1xuXG4gIGNvbnN0IHRyYW5zZm9ybWVkID0gcmVtb3ZlRW1wdHlLZXlzKHtcbiAgICAuLi5wYXJzZURvY3VtZW50KHBvc3QpLFxuICAgIC4uLihjb250ZW50ICYmIHtjb250ZW50OiBwYXJzZVJlYWt0b3JDb250ZW50KGNvbnRlbnQsIE1BWF9DT05URU5UX0xFTkdUSCl9KSxcbiAgICAuLi4oZW5kRGF0ZSAhPT0gdW5kZWZpbmVkICYmIHtlbmREYXRlOiBwYXJzZVJlYWt0b3JEYXRlKGVuZERhdGUpfSksXG4gICAgLi4uKGZpbGVzPy5sZW5ndGggJiYge2ZpbGVzOiBmaWxlcy5tYXAoKGZpbGUpID0+IHBhcnNlRmlsZShmaWxlKSl9KSxcbiAgICAuLi4oZ3JvdXBJZCAmJiB7Z3JvdXBJZDogcGFyc2VJZChncm91cElkKX0pLFxuICAgIC4uLihsYXRpdHVkZSAhPT0gdW5kZWZpbmVkICYmIHtsYXRpdHVkZTogcGFyc2VOdW0obGF0aXR1ZGUsIDE1KX0pLFxuICAgIC4uLihsb2NhdGlvbiAmJiB7bG9jYXRpb246IHBhcnNlU3RyaW5nKGxvY2F0aW9uLCAxNjApfSksXG4gICAgLi4uKGxvbmdpdHVkZSAhPT0gdW5kZWZpbmVkICYmIHtsb25naXR1ZGU6IHBhcnNlTnVtKGxvbmdpdHVkZSwgMTUpfSksXG4gICAgLi4uKG5hbWUgJiYge25hbWU6IHBhcnNlU3RyaW5nKG5hbWUsIDE2MCl9KSxcbiAgICAuLi4ocGFyZW50SWQgJiYge3BhcmVudElkOiBwYXJzZUlkKHBhcmVudElkKX0pLFxuICAgIC4uLigoX2lkIHx8IGlkIHx8IF9rZXkgfHwgcG9zdElkKSAmJiB7aWQ6IHBhcnNlQXJhbmdvSWQoX2lkIHx8IGlkIHx8IGBwb3N0cy8ke19rZXkgfHwgcG9zdElkIHx8ICcnfWApfSksXG4gICAgLi4uKChfa2V5IHx8IHBvc3RJZCkgJiYge3Bvc3RJZDogcGFyc2VJZChfa2V5IHx8IHBvc3RJZCB8fCAnJyl9KSxcbiAgICAuLi4ocHJpdmFjeSAmJiB7cHJpdmFjeTogcGFyc2VWYXJDaGFyKHByaXZhY3ksIDE2KX0pLFxuICAgIC4uLih0YWdzPy5sZW5ndGggJiYge3RhZ3M6IHRhZ3MubWFwKCh0YWcpID0+IHBhcnNlVGFnKHRhZykpfSksXG4gICAgLi4uKHR5cGUgJiYge3R5cGU6IHBhcnNlUmVha3RvclR5cGUodHlwZSl9KSxcbiAgICAuLi4odXNlcklkICYmIHt1c2VySWQ6IHBhcnNlSWQodXNlcklkKX0pXG4gIH0pO1xuXG4gIHJldHVybiB0cmFuc2Zvcm1lZDtcbn07Il0sIm5hbWVzIjpbInBhcnNlTnVtIiwicGFyc2VBcmFuZ29JZCIsInBhcnNlSWQiLCJwYXJzZVN0cmluZyIsInBhcnNlVmFyQ2hhciIsInoiLCJyZW1vdmVFbXB0eUtleXMiLCJwYXJzZURvY3VtZW50IiwicGFyc2VGaWxlIiwicGFyc2VSZWFrdG9yQ29udGVudCIsInBhcnNlUmVha3RvckRhdGUiLCJwYXJzZVJlYWt0b3JUeXBlIiwicGFyc2VUYWciLCJNQVhfQ09OVEVOVF9MRU5HVEgiLCJQb3N0VmFsaWRhdGlvbkVycm9yIiwiRXJyb3IiLCJtZXNzYWdlIiwiZmllbGQiLCJuYW1lIiwiUG9zdElucHV0U2NoZW1hIiwib2JqZWN0IiwiY29udGVudCIsInN0cmluZyIsIm9wdGlvbmFsIiwiZW5kRGF0ZSIsIm51bWJlciIsImZpbGVzIiwiYXJyYXkiLCJhbnkiLCJncm91cElkIiwicG9zdElkIiwibGF0aXR1ZGUiLCJsb2NhdGlvbiIsImxvbmdpdHVkZSIsInBhcmVudElkIiwicHJpdmFjeSIsInN0YXJ0RGF0ZSIsInRhZ3MiLCJ0eXBlIiwidXNlcklkIiwiX2lkIiwiX2tleSIsIl9yZXYiLCJfb2xkUmV2IiwiX2Zyb20iLCJfdG8iLCJwYXNzdGhyb3VnaCIsInZhbGlkYXRlUG9zdElucHV0IiwicG9zdCIsInZhbGlkYXRlZCIsInBhcnNlIiwiZXJyb3IiLCJab2RFcnJvciIsImZpZWxkRXJyb3JzIiwiaXNzdWVzIiwibWFwIiwiZSIsInBhdGgiLCJqb2luIiwiZm9ybWF0UG9zdE91dHB1dCIsInBhcnNlUG9zdCIsInBhcnNlZCIsInBlcmZvcm1Qb3N0VHJhbnNmb3JtYXRpb24iLCJpZCIsInRyYW5zZm9ybWVkIiwidW5kZWZpbmVkIiwibGVuZ3RoIiwiZmlsZSIsInRhZyJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBUUEsUUFBUSxRQUFPLCtCQUErQjtBQUN0RCxTQUFRQyxhQUFhLEVBQUVDLE9BQU8sRUFBRUMsV0FBVyxFQUFFQyxZQUFZLFFBQU8sK0JBQStCO0FBQy9GLFNBQVFDLENBQUMsUUFBTyxNQUFNO0FBRXRCLFNBQVFDLGVBQWUsUUFBTywyQkFBMkI7QUFDekQsU0FBUUMsYUFBYSxRQUFPLHFCQUFxQjtBQUNqRCxTQUFRQyxTQUFTLFFBQU8sbUJBQW1CO0FBQzNDLFNBQ0VDLG1CQUFtQixFQUNuQkMsZ0JBQWdCLEVBQ2hCQyxnQkFBZ0IsUUFDWCxzQkFBc0I7QUFDN0IsU0FBUUMsUUFBUSxRQUFPLGtCQUFrQjtBQUl6QyxNQUFNQyxxQkFBNkI7QUFFbkMsT0FBTyxNQUFNQyw0QkFBNEJDOztJQUN2QyxZQUFZQyxPQUFlLEVBQUUsQUFBT0MsS0FBYyxDQUFFO1FBQ2xELEtBQUssQ0FBQ0QsZUFENEJDLFFBQUFBO1FBRWxDLElBQUksQ0FBQ0MsSUFBSSxHQUFHO0lBQ2Q7QUFDRjtBQUVBLE1BQU1DLGtCQUFrQmQsRUFBRWUsTUFBTSxDQUFDO0lBQy9CQyxTQUFTaEIsRUFBRWlCLE1BQU0sR0FBR0MsUUFBUTtJQUM1QkMsU0FBU25CLEVBQUVvQixNQUFNLEdBQUdGLFFBQVE7SUFDNUJHLE9BQU9yQixFQUFFc0IsS0FBSyxDQUFDdEIsRUFBRXVCLEdBQUcsSUFBSUwsUUFBUTtJQUNoQ00sU0FBU3hCLEVBQUVpQixNQUFNLEdBQUdDLFFBQVE7SUFDNUJPLFFBQVF6QixFQUFFaUIsTUFBTSxHQUFH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
|
|
@@ -14,3 +14,4 @@ export declare const parseReaktorItemId: (itemId?: string) => string | undefined
|
|
|
14
14
|
export declare const parseReaktorName: (name?: string) => string | undefined;
|
|
15
15
|
export declare const parseReaktorType: (type?: string) => string | undefined;
|
|
16
16
|
export declare const parseReaktorUrl: (url?: string) => string | undefined;
|
|
17
|
+
//# sourceMappingURL=reaktorAdapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reaktorAdapter.d.ts","sourceRoot":"","sources":["../../src/adapters/reaktorAdapter.ts"],"names":[],"mappings":"AAGA,qBAAa,sBAAuB,SAAQ,KAAK;IACX,KAAK,CAAC,EAAE,MAAM;gBAAtC,OAAO,EAAE,MAAM,EAAS,KAAK,CAAC,EAAE,MAAM;CAInD;AAED,eAAO,MAAM,sBAAsB,GAAI,UAAU,MAAM,EAAE,SAAQ,MAAY,KAAG,MAAM,GAAG,SAMxF,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAAI,OAAO,MAAM,KAAG,MAAM,GAAG,SAM5D,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAAI,SAAS,MAAM,KAAG,MAAM,GAAG,SAMhE,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAAI,OAAO,MAAM,KAAG,MAAM,GAAG,SAM5D,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAAI,OAAO,MAAM,KAAG,MAAM,GAAG,SAM5D,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAAI,MAAM,MAAM,KAAG,MAAM,GAAG,SAM1D,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAAI,UAAU,MAAM,EAAE,SAAQ,MAAY,KAAG,MAAM,GAAG,SAChC,CAAC;AAEvD,eAAO,MAAM,gBAAgB,GAAI,OAAO,MAAM,KAAG,MAAM,GAAG,SACjB,CAAC;AAE1C,eAAO,MAAM,kBAAkB,GAAI,SAAS,MAAM,KAAG,MAAM,GAAG,SACtB,CAAC;AAEzC,eAAO,MAAM,gBAAgB,GAAI,OAAO,MAAM,KAAG,MAAM,GAAG,SACb,CAAC;AAE9C,eAAO,MAAM,gBAAgB,GAAI,OAAO,MAAM,KAAG,MAAM,GAAG,SACZ,CAAC;AAE/C,eAAO,MAAM,eAAe,GAAI,MAAM,MAAM,KAAG,MAAM,GAAG,SACrB,CAAC"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { parseNum } from '@nlabs/utils/parsers/numbers';
|
|
2
|
+
import { parseId, parseString, parseUrl, parseVarChar } from '@nlabs/utils/parsers/strings';
|
|
3
|
+
export class ReaktorValidationError extends Error {
|
|
4
|
+
field;
|
|
5
|
+
constructor(message, field){
|
|
6
|
+
super(message), this.field = field;
|
|
7
|
+
this.name = 'ReaktorValidationError';
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
export const validateReaktorContent = (content, length = 500)=>{
|
|
11
|
+
try {
|
|
12
|
+
return parseReaktorContent(content, length);
|
|
13
|
+
} catch (error) {
|
|
14
|
+
throw new ReaktorValidationError(`Content validation failed: ${error instanceof Error ? error.message : 'Unknown error'}`, 'content');
|
|
15
|
+
}
|
|
16
|
+
};
|
|
17
|
+
export const validateReaktorDate = (date)=>{
|
|
18
|
+
try {
|
|
19
|
+
return parseReaktorDate(date);
|
|
20
|
+
} catch (error) {
|
|
21
|
+
throw new ReaktorValidationError(`Date validation failed: ${error instanceof Error ? error.message : 'Unknown error'}`, 'date');
|
|
22
|
+
}
|
|
23
|
+
};
|
|
24
|
+
export const validateReaktorItemId = (itemId)=>{
|
|
25
|
+
try {
|
|
26
|
+
return parseReaktorItemId(itemId);
|
|
27
|
+
} catch (error) {
|
|
28
|
+
throw new ReaktorValidationError(`Item ID validation failed: ${error instanceof Error ? error.message : 'Unknown error'}`, 'itemId');
|
|
29
|
+
}
|
|
30
|
+
};
|
|
31
|
+
export const validateReaktorName = (name)=>{
|
|
32
|
+
try {
|
|
33
|
+
return parseReaktorName(name);
|
|
34
|
+
} catch (error) {
|
|
35
|
+
throw new ReaktorValidationError(`Name validation failed: ${error instanceof Error ? error.message : 'Unknown error'}`, 'name');
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
export const validateReaktorType = (type)=>{
|
|
39
|
+
try {
|
|
40
|
+
return parseReaktorType(type);
|
|
41
|
+
} catch (error) {
|
|
42
|
+
throw new ReaktorValidationError(`Type validation failed: ${error instanceof Error ? error.message : 'Unknown error'}`, 'type');
|
|
43
|
+
}
|
|
44
|
+
};
|
|
45
|
+
export const validateReaktorUrl = (url)=>{
|
|
46
|
+
try {
|
|
47
|
+
return parseReaktorUrl(url);
|
|
48
|
+
} catch (error) {
|
|
49
|
+
throw new ReaktorValidationError(`URL validation failed: ${error instanceof Error ? error.message : 'Unknown error'}`, 'url');
|
|
50
|
+
}
|
|
51
|
+
};
|
|
52
|
+
export const parseReaktorContent = (content, length = 500)=>content ? parseString(content, length) : undefined;
|
|
53
|
+
export const parseReaktorDate = (date)=>date ? parseNum(date, 13) : undefined;
|
|
54
|
+
export const parseReaktorItemId = (itemId)=>itemId ? parseId(itemId) : undefined;
|
|
55
|
+
export const parseReaktorName = (name)=>name ? parseString(name, 160) : undefined;
|
|
56
|
+
export const parseReaktorType = (type)=>type ? parseVarChar(type, 160) : undefined;
|
|
57
|
+
export const parseReaktorUrl = (url)=>url ? parseUrl(url) : undefined;
|
|
58
|
+
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9uaXRyb2c3L0RldmVsb3BtZW50L3JlYWt0b3Ivc3JjL2FkYXB0ZXJzL3JlYWt0b3JBZGFwdGVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7cGFyc2VOdW19IGZyb20gJ0BubGFicy91dGlscy9wYXJzZXJzL251bWJlcnMnO1xuaW1wb3J0IHtwYXJzZUlkLCBwYXJzZVN0cmluZywgcGFyc2VVcmwsIHBhcnNlVmFyQ2hhcn0gZnJvbSAnQG5sYWJzL3V0aWxzL3BhcnNlcnMvc3RyaW5ncyc7XG5cbmV4cG9ydCBjbGFzcyBSZWFrdG9yVmFsaWRhdGlvbkVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICBjb25zdHJ1Y3RvcihtZXNzYWdlOiBzdHJpbmcsIHB1YmxpYyBmaWVsZD86IHN0cmluZykge1xuICAgIHN1cGVyKG1lc3NhZ2UpO1xuICAgIHRoaXMubmFtZSA9ICdSZWFrdG9yVmFsaWRhdGlvbkVycm9yJztcbiAgfVxufVxuXG5leHBvcnQgY29uc3QgdmFsaWRhdGVSZWFrdG9yQ29udGVudCA9IChjb250ZW50Pzogc3RyaW5nLCBsZW5ndGg6IG51bWJlciA9IDUwMCk6IHN0cmluZyB8IHVuZGVmaW5lZCA9PiB7XG4gIHRyeSB7XG4gICAgcmV0dXJuIHBhcnNlUmVha3RvckNvbnRlbnQoY29udGVudCwgbGVuZ3RoKTtcbiAgfSBjYXRjaChlcnJvcikge1xuICAgIHRocm93IG5ldyBSZWFrdG9yVmFsaWRhdGlvbkVycm9yKGBDb250ZW50IHZhbGlkYXRpb24gZmFpbGVkOiAke2Vycm9yIGluc3RhbmNlb2YgRXJyb3IgPyBlcnJvci5tZXNzYWdlIDogJ1Vua25vd24gZXJyb3InfWAsICdjb250ZW50Jyk7XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCB2YWxpZGF0ZVJlYWt0b3JEYXRlID0gKGRhdGU/OiBudW1iZXIpOiBudW1iZXIgfCB1bmRlZmluZWQgPT4ge1xuICB0cnkge1xuICAgIHJldHVybiBwYXJzZVJlYWt0b3JEYXRlKGRhdGUpO1xuICB9IGNhdGNoKGVycm9yKSB7XG4gICAgdGhyb3cgbmV3IFJlYWt0b3JWYWxpZGF0aW9uRXJyb3IoYERhdGUgdmFsaWRhdGlvbiBmYWlsZWQ6ICR7ZXJyb3IgaW5zdGFuY2VvZiBFcnJvciA/IGVycm9yLm1lc3NhZ2UgOiAnVW5rbm93biBlcnJvcid9YCwgJ2RhdGUnKTtcbiAgfVxufTtcblxuZXhwb3J0IGNvbnN0IHZhbGlkYXRlUmVha3Rvckl0ZW1JZCA9IChpdGVtSWQ/OiBzdHJpbmcpOiBzdHJpbmcgfCB1bmRlZmluZWQgPT4ge1xuICB0cnkge1xuICAgIHJldHVybiBwYXJzZVJlYWt0b3JJdGVtSWQoaXRlbUlkKTtcbiAgfSBjYXRjaChlcnJvcikge1xuICAgIHRocm93IG5ldyBSZWFrdG9yVmFsaWRhdGlvbkVycm9yKGBJdGVtIElEIHZhbGlkYXRpb24gZmFpbGVkOiAke2Vycm9yIGluc3RhbmNlb2YgRXJyb3IgPyBlcnJvci5tZXNzYWdlIDogJ1Vua25vd24gZXJyb3InfWAsICdpdGVtSWQnKTtcbiAgfVxufTtcblxuZXhwb3J0IGNvbnN0IHZhbGlkYXRlUmVha3Rvck5hbWUgPSAobmFtZT86IHN0cmluZyk6IHN0cmluZyB8IHVuZGVmaW5lZCA9PiB7XG4gIHRyeSB7XG4gICAgcmV0dXJuIHBhcnNlUmVha3Rvck5hbWUobmFtZSk7XG4gIH0gY2F0Y2goZXJyb3IpIHtcbiAgICB0aHJvdyBuZXcgUmVha3RvclZhbGlkYXRpb25FcnJvcihgTmFtZSB2YWxpZGF0aW9uIGZhaWxlZDogJHtlcnJvciBpbnN0YW5jZW9mIEVycm9yID8gZXJyb3IubWVzc2FnZSA6ICdVbmtub3duIGVycm9yJ31gLCAnbmFtZScpO1xuICB9XG59O1xuXG5leHBvcnQgY29uc3QgdmFsaWRhdGVSZWFrdG9yVHlwZSA9ICh0eXBlPzogc3RyaW5nKTogc3RyaW5nIHwgdW5kZWZpbmVkID0+IHtcbiAgdHJ5IHtcbiAgICByZXR1cm4gcGFyc2VSZWFrdG9yVHlwZSh0eXBlKTtcbiAgfSBjYXRjaChlcnJvcikge1xuICAgIHRocm93IG5ldyBSZWFrdG9yVmFsaWRhdGlvbkVycm9yKGBUeXBlIHZhbGlkYXRpb24gZmFpbGVkOiAke2Vycm9yIGluc3RhbmNlb2YgRXJyb3IgPyBlcnJvci5tZXNzYWdlIDogJ1Vua25vd24gZXJyb3InfWAsICd0eXBlJyk7XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCB2YWxpZGF0ZVJlYWt0b3JVcmwgPSAodXJsPzogc3RyaW5nKTogc3RyaW5nIHwgdW5kZWZpbmVkID0+IHtcbiAgdHJ5IHtcbiAgICByZXR1cm4gcGFyc2VSZWFrdG9yVXJsKHVybCk7XG4gIH0gY2F0Y2goZXJyb3IpIHtcbiAgICB0aHJvdyBuZXcgUmVha3RvclZhbGlkYXRpb25FcnJvcihgVVJMIHZhbGlkYXRpb24gZmFpbGVkOiAke2Vycm9yIGluc3RhbmNlb2YgRXJyb3IgPyBlcnJvci5tZXNzYWdlIDogJ1Vua25vd24gZXJyb3InfWAsICd1cmwnKTtcbiAgfVxufTtcblxuZXhwb3J0IGNvbnN0IHBhcnNlUmVha3RvckNvbnRlbnQgPSAoY29udGVudD86IHN0cmluZywgbGVuZ3RoOiBudW1iZXIgPSA1MDApOiBzdHJpbmcgfCB1bmRlZmluZWQgPT5cbiAgKGNvbnRlbnQgPyBwYXJzZVN0cmluZyhjb250ZW50LCBsZW5ndGgpIDogdW5kZWZpbmVkKTtcblxuZXhwb3J0IGNvbnN0IHBhcnNlUmVha3RvckRhdGUgPSAoZGF0ZT86IG51bWJlcik6IG51bWJlciB8IHVuZGVmaW5lZCA9PlxuICAoZGF0ZSA/IHBhcnNlTnVtKGRhdGUsIDEzKSA6IHVuZGVmaW5lZCk7XG5cbmV4cG9ydCBjb25zdCBwYXJzZVJlYWt0b3JJdGVtSWQgPSAoaXRlbUlkPzogc3RyaW5nKTogc3RyaW5nIHwgdW5kZWZpbmVkID0+XG4gIChpdGVtSWQgPyBwYXJzZUlkKGl0ZW1JZCkgOiB1bmRlZmluZWQpO1xuXG5leHBvcnQgY29uc3QgcGFyc2VSZWFrdG9yTmFtZSA9IChuYW1lPzogc3RyaW5nKTogc3RyaW5nIHwgdW5kZWZpbmVkID0+XG4gIChuYW1lID8gcGFyc2VTdHJpbmcobmFtZSwgMTYwKSA6IHVuZGVmaW5lZCk7XG5cbmV4cG9ydCBjb25zdCBwYXJzZVJlYWt0b3JUeXBlID0gKHR5cGU/OiBzdHJpbmcpOiBzdHJpbmcgfCB1bmRlZmluZWQgPT5cbiAgKHR5cGUgPyBwYXJzZVZhckNoYXIodHlwZSwgMTYwKSA6IHVuZGVmaW5lZCk7XG5cbmV4cG9ydCBjb25zdCBwYXJzZVJlYWt0b3JVcmwgPSAodXJsPzogc3RyaW5nKTogc3RyaW5nIHwgdW5kZWZpbmVkID0+XG4gICh1cmwgPyBwYXJzZVVybCh1cmwpIDogdW5kZWZpbmVkKTtcbiJdLCJuYW1lcyI6WyJwYXJzZU51bSIsInBhcnNlSWQiLCJwYXJzZVN0cmluZyIsInBhcnNlVXJsIiwicGFyc2VWYXJDaGFyIiwiUmVha3RvclZhbGlkYXRpb25FcnJvciIsIkVycm9yIiwibWVzc2FnZSIsImZpZWxkIiwibmFtZSIsInZhbGlkYXRlUmVha3RvckNvbnRlbnQiLCJjb250ZW50IiwibGVuZ3RoIiwicGFyc2VSZWFrdG9yQ29udGVudCIsImVycm9yIiwidmFsaWRhdGVSZWFrdG9yRGF0ZSIsImRhdGUiLCJwYXJzZVJlYWt0b3JEYXRlIiwidmFsaWRhdGVSZWFrdG9ySXRlbUlkIiwiaXRlbUlkIiwicGFyc2VSZWFrdG9ySXRlbUlkIiwidmFsaWRhdGVSZWFrdG9yTmFtZSIsInBhcnNlUmVha3Rvck5hbWUiLCJ2YWxpZGF0ZVJlYWt0b3JUeXBlIiwidHlwZSIsInBhcnNlUmVha3RvclR5cGUiLCJ2YWxpZGF0ZVJlYWt0b3JVcmwiLCJ1cmwiLCJwYXJzZVJlYWt0b3JVcmwiLCJ1bmRlZmluZWQiXSwibWFwcGluZ3MiOiJBQUFBLFNBQVFBLFFBQVEsUUFBTywrQkFBK0I7QUFDdEQsU0FBUUMsT0FBTyxFQUFFQyxXQUFXLEVBQUVDLFFBQVEsRUFBRUMsWUFBWSxRQUFPLCtCQUErQjtBQUUxRixPQUFPLE1BQU1DLCtCQUErQkM7O0lBQzFDLFlBQVlDLE9BQWUsRUFBRSxBQUFPQyxLQUFjLENBQUU7UUFDbEQs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
|
|
@@ -7,3 +7,4 @@ export declare const validateTagInput: (tag: unknown) => TagType;
|
|
|
7
7
|
export declare const formatTagOutput: (tag: TagType) => TagType;
|
|
8
8
|
export declare const parseTag: (tag: TagType) => TagType;
|
|
9
9
|
export declare const parseTagLegacy: (tag: TagType) => TagType;
|
|
10
|
+
//# sourceMappingURL=tagAdapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tagAdapter.d.ts","sourceRoot":"","sources":["../../src/adapters/tagAdapter.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,wBAAwB,CAAC;AAKpD,qBAAa,kBAAmB,SAAQ,KAAK;IACP,KAAK,CAAC,EAAE,MAAM;gBAAtC,OAAO,EAAE,MAAM,EAAS,KAAK,CAAC,EAAE,MAAM;CAInD;AAcD,eAAO,MAAM,gBAAgB,GAAI,KAAK,OAAO,KAAG,OAW/C,CAAC;AAEF,eAAO,MAAM,eAAe,GAAI,KAAK,OAAO,KAAG,OAAc,CAAC;AAE9D,eAAO,MAAM,QAAQ,GAAI,KAAK,OAAO,KAAG,OAUvC,CAAC;AAuDF,eAAO,MAAM,cAAc,GAAI,KAAK,OAAO,KAAG,OAAwB,CAAC"}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { parseArangoId, parseId, parseString } from '@nlabs/utils/parsers/strings';
|
|
3
|
+
import { removeEmptyKeys } from '../utils/adapterUtils.js';
|
|
4
|
+
import { parseDocument } from './arangoAdapter.js';
|
|
5
|
+
import { parseReaktorContent, parseReaktorType } from './reaktorAdapter.js';
|
|
6
|
+
export class TagValidationError extends Error {
|
|
7
|
+
field;
|
|
8
|
+
constructor(message, field){
|
|
9
|
+
super(message), this.field = field;
|
|
10
|
+
this.name = 'TagValidationError';
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
const TagInputSchema = z.object({
|
|
14
|
+
_id: z.string().optional(),
|
|
15
|
+
_key: z.string().optional(),
|
|
16
|
+
category: z.string().max(160).optional(),
|
|
17
|
+
description: z.string().optional(),
|
|
18
|
+
id: z.string().optional(),
|
|
19
|
+
name: z.string().max(160).optional(),
|
|
20
|
+
tagBy: z.string().optional(),
|
|
21
|
+
tagId: z.string().optional(),
|
|
22
|
+
userId: z.string().optional()
|
|
23
|
+
}).passthrough();
|
|
24
|
+
export const validateTagInput = (tag)=>{
|
|
25
|
+
try {
|
|
26
|
+
const validated = TagInputSchema.parse(tag);
|
|
27
|
+
return validated;
|
|
28
|
+
} catch (error) {
|
|
29
|
+
if (error instanceof z.ZodError) {
|
|
30
|
+
const fieldErrors = error.issues.map((e)=>`${e.path.join('.')}: ${e.message}`).join(', ');
|
|
31
|
+
throw new TagValidationError(`Tag validation failed: ${fieldErrors}`);
|
|
32
|
+
}
|
|
33
|
+
throw error;
|
|
34
|
+
}
|
|
35
|
+
};
|
|
36
|
+
export const formatTagOutput = (tag)=>tag;
|
|
37
|
+
export const parseTag = (tag)=>{
|
|
38
|
+
try {
|
|
39
|
+
const parsed = performTagTransformation(tag);
|
|
40
|
+
return parsed;
|
|
41
|
+
} catch (error) {
|
|
42
|
+
if (error instanceof TagValidationError) {
|
|
43
|
+
throw error;
|
|
44
|
+
}
|
|
45
|
+
throw new TagValidationError(`Tag parsing failed: ${error instanceof Error ? error.message : 'Unknown error'}`);
|
|
46
|
+
}
|
|
47
|
+
};
|
|
48
|
+
const performTagTransformation = (tag)=>{
|
|
49
|
+
const { _id, _key, category, description, id, name, tagBy, tagId, userId } = tag;
|
|
50
|
+
const transformed = {
|
|
51
|
+
...parseDocument(tag),
|
|
52
|
+
...category && {
|
|
53
|
+
category: parseReaktorType(category)
|
|
54
|
+
},
|
|
55
|
+
...description && {
|
|
56
|
+
description: parseReaktorContent(description)
|
|
57
|
+
},
|
|
58
|
+
...(_id || id) && {
|
|
59
|
+
id: parseArangoId(_id || id || '')
|
|
60
|
+
},
|
|
61
|
+
...(_key || tagId) && {
|
|
62
|
+
tagId: parseId(_key || tagId || '')
|
|
63
|
+
},
|
|
64
|
+
...name && {
|
|
65
|
+
name: parseString(name, 160)
|
|
66
|
+
},
|
|
67
|
+
...tagBy && {
|
|
68
|
+
tagBy: parseId(tagBy)
|
|
69
|
+
},
|
|
70
|
+
...userId && {
|
|
71
|
+
userId: parseId(userId)
|
|
72
|
+
}
|
|
73
|
+
};
|
|
74
|
+
const result = removeEmptyKeys(transformed);
|
|
75
|
+
if (tag._id) {
|
|
76
|
+
result.id = tag._id;
|
|
77
|
+
result._id = tag._id;
|
|
78
|
+
} else if (tag.id && !result.id) {
|
|
79
|
+
result.id = tag.id;
|
|
80
|
+
result._id = tag.id;
|
|
81
|
+
}
|
|
82
|
+
if (tag._key) {
|
|
83
|
+
result.tagId = tag._key;
|
|
84
|
+
result._key = tag._key;
|
|
85
|
+
} else if (tag.tagId && !result.tagId) {
|
|
86
|
+
result.tagId = tag.tagId;
|
|
87
|
+
result._key = tag.tagId;
|
|
88
|
+
}
|
|
89
|
+
if (tag.tagId && !result._key) {
|
|
90
|
+
result._key = tag.tagId;
|
|
91
|
+
}
|
|
92
|
+
if (tag.id && !result._id) {
|
|
93
|
+
result._id = tag.id;
|
|
94
|
+
}
|
|
95
|
+
return result;
|
|
96
|
+
};
|
|
97
|
+
export const parseTagLegacy = (tag)=>parseTag(tag);
|
|
98
|
+
|
|
99
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9uaXRyb2c3L0RldmVsb3BtZW50L3JlYWt0b3Ivc3JjL2FkYXB0ZXJzL3RhZ0FkYXB0ZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiXG5pbXBvcnQge3p9IGZyb20gJ3pvZCc7XG5cbmltcG9ydCB7cGFyc2VBcmFuZ29JZCwgcGFyc2VJZCwgcGFyc2VTdHJpbmd9IGZyb20gJ0BubGFicy91dGlscy9wYXJzZXJzL3N0cmluZ3MnO1xuaW1wb3J0IHR5cGUge1RhZ1R5cGV9IGZyb20gJy4uL3R5cGVzL3RhZ3MudHlwZXMuanMnO1xuaW1wb3J0IHtyZW1vdmVFbXB0eUtleXN9IGZyb20gJy4uL3V0aWxzL2FkYXB0ZXJVdGlscy5qcyc7XG5pbXBvcnQge3BhcnNlRG9jdW1lbnR9IGZyb20gJy4vYXJhbmdvQWRhcHRlci5qcyc7XG5pbXBvcnQge3BhcnNlUmVha3RvckNvbnRlbnQsIHBhcnNlUmVha3RvclR5cGV9IGZyb20gJy4vcmVha3RvckFkYXB0ZXIuanMnO1xuXG5leHBvcnQgY2xhc3MgVGFnVmFsaWRhdGlvbkVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICBjb25zdHJ1Y3RvcihtZXNzYWdlOiBzdHJpbmcsIHB1YmxpYyBmaWVsZD86IHN0cmluZykge1xuICAgIHN1cGVyKG1lc3NhZ2UpO1xuICAgIHRoaXMubmFtZSA9ICdUYWdWYWxpZGF0aW9uRXJyb3InO1xuICB9XG59XG5cbmNvbnN0IFRhZ0lucHV0U2NoZW1hID0gei5vYmplY3Qoe1xuICBfaWQ6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgX2tleTogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBjYXRlZ29yeTogei5zdHJpbmcoKS5tYXgoMTYwKS5vcHRpb25hbCgpLFxuICBkZXNjcmlwdGlvbjogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBpZDogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBuYW1lOiB6LnN0cmluZygpLm1heCgxNjApLm9wdGlvbmFsKCksXG4gIHRhZ0J5OiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIHRhZ0lkOiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIHVzZXJJZDogei5zdHJpbmcoKS5vcHRpb25hbCgpXG59KS5wYXNzdGhyb3VnaCgpO1xuXG5leHBvcnQgY29uc3QgdmFsaWRhdGVUYWdJbnB1dCA9ICh0YWc6IHVua25vd24pOiBUYWdUeXBlID0+IHtcbiAgdHJ5IHtcbiAgICBjb25zdCB2YWxpZGF0ZWQgPSBUYWdJbnB1dFNjaGVtYS5wYXJzZSh0YWcpO1xuICAgIHJldHVybiB2YWxpZGF0ZWQgYXMgVGFnVHlwZTtcbiAgfSBjYXRjaChlcnJvcikge1xuICAgIGlmKGVycm9yIGluc3RhbmNlb2Ygei5ab2RFcnJvcikge1xuICAgICAgY29uc3QgZmllbGRFcnJvcnMgPSBlcnJvci5pc3N1ZXMubWFwKChlKSA9PiBgJHtlLnBhdGguam9pbignLicpfTogJHtlLm1lc3NhZ2V9YCkuam9pbignLCAnKTtcbiAgICAgIHRocm93IG5ldyBUYWdWYWxpZGF0aW9uRXJyb3IoYFRhZyB2YWxpZGF0aW9uIGZhaWxlZDogJHtmaWVsZEVycm9yc31gKTtcbiAgICB9XG4gICAgdGhyb3cgZXJyb3I7XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCBmb3JtYXRUYWdPdXRwdXQgPSAodGFnOiBUYWdUeXBlKTogVGFnVHlwZSA9PiB0YWc7XG5cbmV4cG9ydCBjb25zdCBwYXJzZVRhZyA9ICh0YWc6IFRhZ1R5cGUpOiBUYWdUeXBlID0+IHtcbiAgdHJ5IHtcbiAgICBjb25zdCBwYXJzZWQgPSBwZXJmb3JtVGFnVHJhbnNmb3JtYXRpb24odGFnKTtcbiAgICByZXR1cm4gcGFyc2VkO1xuICB9IGNhdGNoKGVycm9yKSB7XG4gICAgaWYoZXJyb3IgaW5zdGFuY2VvZiBUYWdWYWxpZGF0aW9uRXJyb3IpIHtcbiAgICAgIHRocm93IGVycm9yO1xuICAgIH1cbiAgICB0aHJvdyBuZXcgVGFnVmFsaWRhdGlvbkVycm9yKGBUYWcgcGFyc2luZyBmYWlsZWQ6ICR7ZXJyb3IgaW5zdGFuY2VvZiBFcnJvciA/IGVycm9yLm1lc3NhZ2UgOiAnVW5rbm93biBlcnJvcid9YCk7XG4gIH1cbn07XG5cbmNvbnN0IHBlcmZvcm1UYWdUcmFuc2Zvcm1hdGlvbiA9ICh0YWc6IFRhZ1R5cGUpOiBUYWdUeXBlID0+IHtcbiAgY29uc3Qge1xuICAgIF9pZCxcbiAgICBfa2V5LFxuICAgIGNhdGVnb3J5LFxuICAgIGRlc2NyaXB0aW9uLFxuICAgIGlkLFxuICAgIG5hbWUsXG4gICAgdGFnQnksXG4gICAgdGFnSWQsXG4gICAgdXNlcklkXG4gIH0gPSB0YWc7XG5cbiAgY29uc3QgdHJhbnNmb3JtZWQgPSB7XG4gICAgLi4ucGFyc2VEb2N1bWVudCh0YWcpLFxuICAgIC4uLihjYXRlZ29yeSAmJiB7Y2F0ZWdvcnk6IHBhcnNlUmVha3RvclR5cGUoY2F0ZWdvcnkpfSksXG4gICAgLi4uKGRlc2NyaXB0aW9uICYmIHtkZXNjcmlwdGlvbjogcGFyc2VSZWFrdG9yQ29udGVudChkZXNjcmlwdGlvbil9KSxcbiAgICAuLi4oKF9pZCB8fCBpZCkgJiYge2lkOiBwYXJzZUFyYW5nb0lkKF9pZCB8fCBpZCB8fCAnJyl9KSxcbiAgICAuLi4oKF9rZXkgfHwgdGFnSWQpICYmIHt0YWdJZDogcGFyc2VJZChfa2V5IHx8IHRhZ0lkIHx8ICcnKX0pLFxuICAgIC4uLihuYW1lICYmIHtuYW1lOiBwYXJzZVN0cmluZyhuYW1lLCAxNjApfSksXG4gICAgLi4uKHRhZ0J5ICYmIHt0YWdCeTogcGFyc2VJZCh0YWdCeSl9KSxcbiAgICAuLi4odXNlcklkICYmIHt1c2VySWQ6IHBhcnNlSWQodXNlcklkKX0pXG4gIH07XG5cbiAgY29uc3QgcmVzdWx0ID0gcmVtb3ZlRW1wdHlLZXlzKHRyYW5zZm9ybWVkKTtcblxuICBpZih0YWcuX2lkKSB7XG4gICAgcmVzdWx0LmlkID0gdGFnLl9pZDtcbiAgICByZXN1bHQuX2lkID0gdGFnLl9pZDtcbiAgfSBlbHNlIGlmKHRhZy5pZCAmJiAhcmVzdWx0LmlkKSB7XG4gICAgcmVzdWx0LmlkID0gdGFnLmlkO1xuICAgIHJlc3VsdC5faWQgPSB0YWcuaWQ7XG4gIH1cblxuICBpZih0YWcuX2tleSkge1xuICAgIHJlc3VsdC50YWdJZCA9IHRhZy5fa2V5O1xuICAgIHJlc3VsdC5fa2V5ID0gdGFnLl9rZXk7XG4gIH0gZWxzZSBpZih0YWcudGFnSWQgJiYgIXJlc3VsdC50YWdJZCkge1xuICAgIHJlc3VsdC50YWdJZCA9IHRhZy50YWdJZDtcbiAgICByZXN1bHQuX2tleSA9IHRhZy50YWdJZDtcbiAgfVxuXG4gIGlmKHRhZy50YWdJZCAmJiAhcmVzdWx0Ll9rZXkpIHtcbiAgICByZXN1bHQuX2tleSA9IHRhZy50YWdJZDtcbiAgfVxuXG4gIGlmKHRhZy5pZCAmJiAhcmVzdWx0Ll9pZCkge1xuICAgIHJlc3VsdC5faWQgPSB0YWcuaWQ7XG4gIH1cblxuICByZXR1cm4gcmVzdWx0O1xufTtcblxuZXhwb3J0IGNvbnN0IHBhcnNlVGFnTGVnYWN5ID0gKHRhZzogVGFnVHlwZSk6IFRhZ1R5cGUgPT4gcGFyc2VUYWcodGFnKTsiXSwibmFtZXMiOlsieiIsInBhcnNlQXJhbmdvSWQiLCJwYXJzZUlkIiwicGFyc2VTdHJpbmciLCJyZW1vdmVFbXB0eUtleXMiLCJwYXJzZURvY3VtZW50IiwicGFyc2VSZWFrdG9yQ29udGVudCIsInBhcnNlUmVha3RvclR5cGUiLCJUYWdWYWxpZGF0aW9uRXJyb3IiLCJFcnJvciIsIm1lc3NhZ2UiLCJmaWVsZCIsIm5hbWUiLCJUYWdJbnB1dFNjaGVtYSIsIm9iamVjdCIsIl9pZCIsInN0cmluZyIsIm9wdGlvbmFsIiwiX2tleSIsImNhdGVnb3J5IiwibWF4IiwiZGVzY3JpcHRpb24iLCJpZCIsInRhZ0J5IiwidGFnSWQiLCJ1c2VySWQiLCJwYXNzdGhyb3VnaCIsInZhbGlkYXRlVGFnSW5wdXQiLCJ0YWciLCJ2YWxpZGF0ZWQiLCJwYXJzZSIsImVycm9yIiwiWm9kRXJyb3IiLCJmaWVsZEVycm9ycyIsImlzc3VlcyIsIm1hcCIsImUiLCJwYXRoIiwiam9pbiIsImZvcm1hdFRhZ091dHB1dCIsInBhcnNlVGFnIiwicGFyc2VkIiwicGVyZm9ybVRhZ1RyYW5zZm9ybWF0aW9uIiwidHJhbnNmb3JtZWQiLCJyZXN1bHQiLCJwYXJzZVRhZ0xlZ2FjeSJdLCJtYXBwaW5ncyI6IkFBQ0EsU0FBUUEsQ0FBQyxRQUFPLE1BQU07QUFFdEIsU0FBUUMsYUFBYSxFQUFFQyxPQUFPLEVBQUVDLFdBQVcsUUFBTywrQkFBK0I7QUFFakYsU0FBUUMsZUFBZSxRQUFPLDJCQUEyQjtBQUN6RCxTQUFRQyxhQUFhLFFBQU8scUJBQXFCO0FBQ2pELFNBQVFDLG1CQUFtQixFQUFFQyxnQkFBZ0IsUUFBTyxzQkFBc0I7QUFFMUUsT0FBTyxNQUFNQywyQkFBMkJDOztJQUN0QyxZQUFZQyxPQUFlLEVBQUUsQUFBT0MsS0FBYyxDQUFFO1FBQ2xELEtBQUssQ0FBQ0QsZUFENEJDLFFBQUFBO1FBRWxDLElBQUksQ0FBQ0MsSUFBSSxHQUFHO0lBQ2Q7QUFDRjtBQUVBLE1BQU1DLGlCQUFpQmIsRUFBRWMsTUFBTSxDQUFDO0lBQzlCQyxLQUFLZixFQUFFZ0IsTUFBTSxHQUFHQyxRQUFRO0lBQ3hCQyxNQUFNbEIsRUFBRWdCLE1BQU0sR0FBR0MsUUFBUTtJQUN6QkUsVUFBVW5CLEVBQUVnQixNQUFNLEdBQUdJLEdBQUcsQ0FBQyxLQUFLSCxRQUFRO0lBQ3RDSSxhQUFhckIsRUFBRWdCLE1BQU0sR0FBR0MsUUFBUTtJQUNoQ0ssSUFBSXRCLEVBQUVnQixNQUFNLEdBQUdDLFFBQVE7SUFDdkJMLE1BQU1aLEVBQUVnQixNQUFNLEdBQUdJLEdBQUcsQ0FBQyxLQUFLSCxRQUFRO0lBQ2xDTSxPQUFPdkIsRUFBRWdCLE1BQU0sR0FBR0MsUUFBUTtJQUMxQk8sT0FBT3hCLEVBQUVnQixNQUFNLEdBQUdDLFFBQVE7SUFDMUJRLFFBQVF6QixFQUFFZ0IsTUFBTSxHQUFHQyxRQUFRO0FBQzdCLEdBQUdTLFdBQVc7QUFFZCxPQUFPLE1BQU1DLG1CQUFtQixDQUFDQztJQUMvQixJQUFJO1FBQ0YsTUFBTUMsWUFBWWhCLGVBQWVpQixL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
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"userAdapter.d.ts","sourceRoot":"","sources":["../../src/adapters/userAdapter.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,yBAAyB,CAAC;AAMtD,qBAAa,mBAAoB,SAAQ,KAAK;IACR,KAAK,CAAC,EAAE,MAAM;gBAAtC,OAAO,EAAE,MAAM,EAAS,KAAK,CAAC,EAAE,MAAM;CAInD;AA8ED,QAAA,MAAM,SAAS,uBAA8B,CAAC;AAE9C,eAAO,MAAM,iBAAiB,GAAI,MAAM,OAAO,KAAG,QAWjD,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAI,MAAM,QAAQ,KAAG,QAGjD,CAAC;AAEF,eAAO,MAAM,SAAS,GAAI,MAAM,QAAQ,KAAG,QAU1C,CAAC;AAoHF,eAAO,MAAM,cAAc,QAAO,IAEjC,CAAC;AAEF,eAAO,MAAM,gBAAgB,QAAO,MAAwB,CAAC;AAE7D,OAAO,EAAC,SAAS,EAAC,CAAC;AAEnB,eAAO,MAAM,eAAe,GAAI,MAAM,QAAQ,KAAG,QAA2B,CAAC"}
|