@openstax/ts-utils 1.43.2 → 1.44.0
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/dist/cjs/aws/ssmService.js +2 -2
- package/dist/cjs/config/awsParameterConfig.d.ts +1 -1
- package/dist/cjs/config/awsParameterConfig.js +7 -7
- package/dist/cjs/config/envConfig.d.ts +1 -1
- package/dist/cjs/config/envConfig.js +2 -2
- package/dist/cjs/config/index.d.ts +5 -5
- package/dist/cjs/config/index.js +5 -5
- package/dist/cjs/config/lambdaParameterConfig.d.ts +1 -1
- package/dist/cjs/config/lambdaParameterConfig.js +10 -10
- package/dist/cjs/config/replaceConfig.d.ts +1 -1
- package/dist/cjs/config/replaceConfig.js +3 -3
- package/dist/cjs/config/resolveConfigValue.d.ts +1 -1
- package/dist/cjs/errors/index.d.ts +1 -1
- package/dist/cjs/fetch/fetchStatusRetry.d.ts +2 -2
- package/dist/cjs/fetch/fetchStatusRetry.js +2 -2
- package/dist/cjs/fetch/index.d.ts +1 -1
- package/dist/cjs/index.d.ts +5 -4
- package/dist/cjs/index.js +5 -4
- package/dist/cjs/middleware/apiErrorHandler.d.ts +3 -3
- package/dist/cjs/middleware/apiErrorHandler.js +12 -12
- package/dist/cjs/middleware/apiSlowResponseMiddleware.d.ts +3 -3
- package/dist/cjs/middleware/apiSlowResponseMiddleware.js +9 -9
- package/dist/cjs/middleware/index.d.ts +1 -1
- package/dist/cjs/middleware/lambdaCorsResponseMiddleware.d.ts +2 -2
- package/dist/cjs/middleware/lambdaCorsResponseMiddleware.js +5 -5
- package/dist/cjs/middleware/throwNotFoundMiddleware.js +2 -2
- package/dist/cjs/misc/helpers.d.ts +1 -1
- package/dist/cjs/misc/jwks.js +3 -3
- package/dist/cjs/misc/merge.d.ts +1 -1
- package/dist/cjs/misc/merge.js +2 -2
- package/dist/cjs/misc/timingSafeCompareStrings.d.ts +5 -0
- package/dist/cjs/misc/timingSafeCompareStrings.js +15 -0
- package/dist/cjs/pagination/index.d.ts +1 -1
- package/dist/cjs/pagination/index.js +10 -10
- package/dist/cjs/routing/helpers.d.ts +1 -1
- package/dist/cjs/routing/helpers.js +7 -7
- package/dist/cjs/routing/index.d.ts +2 -2
- package/dist/cjs/routing/index.js +6 -6
- package/dist/cjs/routing/lambdaBatchRequestHandler.d.ts +2 -2
- package/dist/cjs/routing/lambdaBatchRequestHandler.js +6 -6
- package/dist/cjs/routing/validators/zod.js +2 -2
- package/dist/cjs/services/accountsGateway/index.d.ts +5 -5
- package/dist/cjs/services/accountsGateway/index.js +18 -18
- package/dist/cjs/services/apiGateway/index.d.ts +5 -5
- package/dist/cjs/services/apiGateway/index.js +12 -12
- package/dist/cjs/services/authProvider/browser.d.ts +4 -4
- package/dist/cjs/services/authProvider/browser.js +13 -13
- package/dist/cjs/services/authProvider/decryption.d.ts +3 -3
- package/dist/cjs/services/authProvider/decryption.js +17 -17
- package/dist/cjs/services/authProvider/index.d.ts +3 -3
- package/dist/cjs/services/authProvider/index.js +7 -7
- package/dist/cjs/services/authProvider/launchToken.d.ts +4 -4
- package/dist/cjs/services/authProvider/launchToken.js +6 -6
- package/dist/cjs/services/authProvider/subrequest.d.ts +3 -3
- package/dist/cjs/services/authProvider/subrequest.js +12 -12
- package/dist/cjs/services/authProvider/utils/decryptAndVerify.d.ts +1 -1
- package/dist/cjs/services/authProvider/utils/decryptAndVerify.js +3 -3
- package/dist/cjs/services/authProvider/utils/embeddedAuthProvider.d.ts +2 -2
- package/dist/cjs/services/authProvider/utils/userRoleValidator.d.ts +3 -3
- package/dist/cjs/services/authProvider/utils/userRoleValidator.js +7 -7
- package/dist/cjs/services/authProvider/utils/userSubrequest.d.ts +2 -2
- package/dist/cjs/services/documentStore/dynamoEncoding.d.ts +1 -1
- package/dist/cjs/services/documentStore/dynamoEncoding.js +2 -2
- package/dist/cjs/services/documentStore/unversioned/dynamodb.d.ts +2 -2
- package/dist/cjs/services/documentStore/unversioned/dynamodb.js +30 -30
- package/dist/cjs/services/documentStore/unversioned/file-system.d.ts +2 -2
- package/dist/cjs/services/documentStore/unversioned/file-system.js +13 -13
- package/dist/cjs/services/documentStore/unversioned/index.d.ts +1 -1
- package/dist/cjs/services/documentStore/versioned/dynamodb.d.ts +3 -3
- package/dist/cjs/services/documentStore/versioned/dynamodb.js +17 -17
- package/dist/cjs/services/documentStore/versioned/file-system.d.ts +3 -3
- package/dist/cjs/services/documentStore/versioned/file-system.js +2 -2
- package/dist/cjs/services/documentStore/versioned/index.d.ts +2 -2
- package/dist/cjs/services/exercisesGateway/index.d.ts +2 -2
- package/dist/cjs/services/exercisesGateway/index.js +14 -14
- package/dist/cjs/services/fileServer/index.js +3 -3
- package/dist/cjs/services/fileServer/localFileServer.d.ts +2 -2
- package/dist/cjs/services/fileServer/localFileServer.js +11 -11
- package/dist/cjs/services/fileServer/s3FileServer.d.ts +2 -2
- package/dist/cjs/services/fileServer/s3FileServer.js +13 -13
- package/dist/cjs/services/httpMessageVerifier/index.d.ts +1 -1
- package/dist/cjs/services/httpMessageVerifier/index.js +19 -19
- package/dist/cjs/services/launchParams/index.d.ts +2 -2
- package/dist/cjs/services/launchParams/index.js +4 -4
- package/dist/cjs/services/launchParams/signer.d.ts +2 -2
- package/dist/cjs/services/launchParams/signer.js +9 -9
- package/dist/cjs/services/launchParams/verifier.d.ts +1 -1
- package/dist/cjs/services/launchParams/verifier.js +11 -11
- package/dist/cjs/services/logger/console.d.ts +1 -1
- package/dist/cjs/services/logger/console.js +2 -2
- package/dist/cjs/services/logger/index.d.ts +1 -1
- package/dist/cjs/services/lrsGateway/addStatementDefaultFields.d.ts +1 -1
- package/dist/cjs/services/lrsGateway/attempt-utils.d.ts +7 -7
- package/dist/cjs/services/lrsGateway/batching.d.ts +2 -2
- package/dist/cjs/services/lrsGateway/batching.js +2 -2
- package/dist/cjs/services/lrsGateway/file-system.d.ts +3 -3
- package/dist/cjs/services/lrsGateway/file-system.js +10 -10
- package/dist/cjs/services/lrsGateway/index.d.ts +5 -5
- package/dist/cjs/services/lrsGateway/index.js +23 -23
- package/dist/cjs/services/lrsGateway/xapiUtils.d.ts +4 -4
- package/dist/cjs/services/lrsGateway/xapiUtils.js +8 -8
- package/dist/cjs/services/postgresConnection/index.d.ts +2 -2
- package/dist/cjs/services/postgresConnection/index.js +14 -14
- package/dist/cjs/services/queueProvider/local.d.ts +2 -2
- package/dist/cjs/services/queueProvider/local.js +6 -6
- package/dist/cjs/services/queueProvider/sqs.d.ts +2 -2
- package/dist/cjs/services/queueProvider/sqs.js +7 -7
- package/dist/cjs/services/searchProvider/memorySearchTheBadWay.d.ts +1 -1
- package/dist/cjs/services/searchProvider/memorySearchTheBadWay.js +9 -9
- package/dist/cjs/services/searchProvider/openSearch.d.ts +2 -2
- package/dist/cjs/services/searchProvider/openSearch.js +8 -8
- package/dist/cjs/services/searchProvider/streamIndexer.d.ts +2 -2
- package/dist/cjs/services/searchProvider/streamIndexer.js +3 -3
- package/dist/cjs/tsconfig.without-specs.cjs.tsbuildinfo +1 -1
- package/dist/esm/aws/ssmService.js +1 -1
- package/dist/esm/config/awsParameterConfig.d.ts +1 -1
- package/dist/esm/config/awsParameterConfig.js +3 -3
- package/dist/esm/config/envConfig.d.ts +1 -1
- package/dist/esm/config/envConfig.js +1 -1
- package/dist/esm/config/index.d.ts +5 -5
- package/dist/esm/config/index.js +5 -5
- package/dist/esm/config/lambdaParameterConfig.d.ts +1 -1
- package/dist/esm/config/lambdaParameterConfig.js +4 -4
- package/dist/esm/config/replaceConfig.d.ts +1 -1
- package/dist/esm/config/replaceConfig.js +1 -1
- package/dist/esm/config/resolveConfigValue.d.ts +1 -1
- package/dist/esm/errors/index.d.ts +1 -1
- package/dist/esm/fetch/fetchStatusRetry.d.ts +2 -2
- package/dist/esm/fetch/fetchStatusRetry.js +1 -1
- package/dist/esm/fetch/index.d.ts +1 -1
- package/dist/esm/index.d.ts +5 -4
- package/dist/esm/index.js +5 -4
- package/dist/esm/middleware/apiErrorHandler.d.ts +3 -3
- package/dist/esm/middleware/apiErrorHandler.js +3 -3
- package/dist/esm/middleware/apiSlowResponseMiddleware.d.ts +3 -3
- package/dist/esm/middleware/apiSlowResponseMiddleware.js +4 -4
- package/dist/esm/middleware/index.d.ts +1 -1
- package/dist/esm/middleware/lambdaCorsResponseMiddleware.d.ts +2 -2
- package/dist/esm/middleware/lambdaCorsResponseMiddleware.js +3 -3
- package/dist/esm/middleware/throwNotFoundMiddleware.js +1 -1
- package/dist/esm/misc/helpers.d.ts +1 -1
- package/dist/esm/misc/jwks.js +1 -1
- package/dist/esm/misc/merge.d.ts +1 -1
- package/dist/esm/misc/merge.js +1 -1
- package/dist/esm/misc/timingSafeCompareStrings.d.ts +5 -0
- package/dist/esm/misc/timingSafeCompareStrings.js +11 -0
- package/dist/esm/pagination/index.d.ts +1 -1
- package/dist/esm/pagination/index.js +3 -3
- package/dist/esm/routing/helpers.d.ts +1 -1
- package/dist/esm/routing/helpers.js +3 -3
- package/dist/esm/routing/index.d.ts +2 -2
- package/dist/esm/routing/index.js +3 -3
- package/dist/esm/routing/lambdaBatchRequestHandler.d.ts +2 -2
- package/dist/esm/routing/lambdaBatchRequestHandler.js +3 -3
- package/dist/esm/routing/validators/zod.js +1 -1
- package/dist/esm/services/accountsGateway/index.d.ts +5 -5
- package/dist/esm/services/accountsGateway/index.js +5 -5
- package/dist/esm/services/apiGateway/index.d.ts +5 -5
- package/dist/esm/services/apiGateway/index.js +5 -5
- package/dist/esm/services/authProvider/browser.d.ts +4 -4
- package/dist/esm/services/authProvider/browser.js +5 -5
- package/dist/esm/services/authProvider/decryption.d.ts +3 -3
- package/dist/esm/services/authProvider/decryption.js +7 -7
- package/dist/esm/services/authProvider/index.d.ts +3 -3
- package/dist/esm/services/authProvider/index.js +2 -2
- package/dist/esm/services/authProvider/launchToken.d.ts +4 -4
- package/dist/esm/services/authProvider/launchToken.js +2 -2
- package/dist/esm/services/authProvider/subrequest.d.ts +3 -3
- package/dist/esm/services/authProvider/subrequest.js +5 -5
- package/dist/esm/services/authProvider/utils/decryptAndVerify.d.ts +1 -1
- package/dist/esm/services/authProvider/utils/decryptAndVerify.js +1 -1
- package/dist/esm/services/authProvider/utils/embeddedAuthProvider.d.ts +2 -2
- package/dist/esm/services/authProvider/utils/userRoleValidator.d.ts +3 -3
- package/dist/esm/services/authProvider/utils/userRoleValidator.js +4 -4
- package/dist/esm/services/authProvider/utils/userSubrequest.d.ts +2 -2
- package/dist/esm/services/documentStore/dynamoEncoding.d.ts +1 -1
- package/dist/esm/services/documentStore/dynamoEncoding.js +1 -1
- package/dist/esm/services/documentStore/unversioned/dynamodb.d.ts +2 -2
- package/dist/esm/services/documentStore/unversioned/dynamodb.js +5 -5
- package/dist/esm/services/documentStore/unversioned/file-system.d.ts +2 -2
- package/dist/esm/services/documentStore/unversioned/file-system.js +4 -4
- package/dist/esm/services/documentStore/unversioned/index.d.ts +1 -1
- package/dist/esm/services/documentStore/versioned/dynamodb.d.ts +3 -3
- package/dist/esm/services/documentStore/versioned/dynamodb.js +4 -4
- package/dist/esm/services/documentStore/versioned/file-system.d.ts +3 -3
- package/dist/esm/services/documentStore/versioned/file-system.js +1 -1
- package/dist/esm/services/documentStore/versioned/index.d.ts +2 -2
- package/dist/esm/services/exercisesGateway/index.d.ts +2 -2
- package/dist/esm/services/exercisesGateway/index.js +5 -5
- package/dist/esm/services/fileServer/index.js +1 -1
- package/dist/esm/services/fileServer/localFileServer.d.ts +2 -2
- package/dist/esm/services/fileServer/localFileServer.js +4 -4
- package/dist/esm/services/fileServer/s3FileServer.d.ts +2 -2
- package/dist/esm/services/fileServer/s3FileServer.js +4 -4
- package/dist/esm/services/httpMessageVerifier/index.d.ts +1 -1
- package/dist/esm/services/httpMessageVerifier/index.js +5 -5
- package/dist/esm/services/launchParams/index.d.ts +2 -2
- package/dist/esm/services/launchParams/index.js +2 -2
- package/dist/esm/services/launchParams/signer.d.ts +2 -2
- package/dist/esm/services/launchParams/signer.js +3 -3
- package/dist/esm/services/launchParams/verifier.d.ts +1 -1
- package/dist/esm/services/launchParams/verifier.js +5 -5
- package/dist/esm/services/logger/console.d.ts +1 -1
- package/dist/esm/services/logger/console.js +1 -1
- package/dist/esm/services/logger/index.d.ts +1 -1
- package/dist/esm/services/lrsGateway/addStatementDefaultFields.d.ts +1 -1
- package/dist/esm/services/lrsGateway/attempt-utils.d.ts +7 -7
- package/dist/esm/services/lrsGateway/batching.d.ts +2 -2
- package/dist/esm/services/lrsGateway/batching.js +1 -1
- package/dist/esm/services/lrsGateway/file-system.d.ts +3 -3
- package/dist/esm/services/lrsGateway/file-system.js +5 -5
- package/dist/esm/services/lrsGateway/index.d.ts +5 -5
- package/dist/esm/services/lrsGateway/index.js +10 -10
- package/dist/esm/services/lrsGateway/xapiUtils.d.ts +4 -4
- package/dist/esm/services/lrsGateway/xapiUtils.js +2 -2
- package/dist/esm/services/postgresConnection/index.d.ts +2 -2
- package/dist/esm/services/postgresConnection/index.js +4 -4
- package/dist/esm/services/queueProvider/local.d.ts +2 -2
- package/dist/esm/services/queueProvider/local.js +3 -3
- package/dist/esm/services/queueProvider/sqs.d.ts +2 -2
- package/dist/esm/services/queueProvider/sqs.js +3 -3
- package/dist/esm/services/searchProvider/memorySearchTheBadWay.d.ts +1 -1
- package/dist/esm/services/searchProvider/memorySearchTheBadWay.js +3 -3
- package/dist/esm/services/searchProvider/openSearch.d.ts +2 -2
- package/dist/esm/services/searchProvider/openSearch.js +3 -3
- package/dist/esm/services/searchProvider/streamIndexer.d.ts +2 -2
- package/dist/esm/services/searchProvider/streamIndexer.js +1 -1
- package/dist/esm/tsconfig.without-specs.esm.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/script/bin/.init-params-script.bash.swp +0 -0
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { createDecipheriv, verify } from 'crypto';
|
|
2
|
-
import { isPlainObject } from '../../../guards
|
|
2
|
+
import { isPlainObject } from '../../../guards';
|
|
3
3
|
export const decryptJwe = (jwe, encryptionPrivateKey) => {
|
|
4
4
|
const jweParts = jwe.split('.', 6);
|
|
5
5
|
if (jweParts.length !== 5 || jweParts[1]) {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { AuthProvider } from '
|
|
2
|
-
import { AssertionFailed } from '../../../assertions
|
|
3
|
-
import { ConfigProviderForConfig } from '../../../config
|
|
1
|
+
import { AuthProvider } from '..';
|
|
2
|
+
import { AssertionFailed } from '../../../assertions';
|
|
3
|
+
import { ConfigProviderForConfig } from '../../../config';
|
|
4
4
|
type Config = {
|
|
5
5
|
application: string;
|
|
6
6
|
};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { doThrow } from '../../../assertions
|
|
2
|
-
import { resolveConfigValue } from '../../../config/resolveConfigValue
|
|
3
|
-
import { UnauthorizedError } from '../../../errors
|
|
4
|
-
import { once } from '../../../misc/helpers
|
|
1
|
+
import { doThrow } from '../../../assertions';
|
|
2
|
+
import { resolveConfigValue } from '../../../config/resolveConfigValue';
|
|
3
|
+
import { UnauthorizedError } from '../../../errors';
|
|
4
|
+
import { once } from '../../../misc/helpers';
|
|
5
5
|
export const createUserRoleValidator = (auth, config) => {
|
|
6
6
|
const application = once(() => resolveConfigValue(config.application));
|
|
7
7
|
const getUserRoles = async () => {
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { ApiUser } from '
|
|
2
|
-
import { GenericFetch } from '../../../fetch
|
|
1
|
+
import { ApiUser } from '..';
|
|
2
|
+
import { GenericFetch } from '../../../fetch';
|
|
3
3
|
export declare const loadUserData: (fetch: GenericFetch, accountsBase: string, cookieName: string, token: string) => Promise<ApiUser | undefined>;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { AttributeValue } from '@aws-sdk/client-dynamodb';
|
|
2
|
-
import { DocumentBaseType, DocumentBaseValueTypes } from '
|
|
2
|
+
import { DocumentBaseType, DocumentBaseValueTypes } from '.';
|
|
3
3
|
export declare const encodeDynamoAttribute: (value: DocumentBaseValueTypes) => AttributeValue;
|
|
4
4
|
export declare const encodeDynamoDocument: (base: DocumentBaseType) => {
|
|
5
5
|
[k: string]: AttributeValue;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { DynamoDB } from '@aws-sdk/client-dynamodb';
|
|
2
|
-
import { Config, TDocument } from '
|
|
3
|
-
import { ConfigProviderForConfig } from '../../../config
|
|
2
|
+
import { Config, TDocument } from '..';
|
|
3
|
+
import { ConfigProviderForConfig } from '../../../config';
|
|
4
4
|
interface Initializer<C> {
|
|
5
5
|
configSpace?: C;
|
|
6
6
|
dynamoClient?: DynamoDB;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { BatchGetItemCommand, DynamoDB, GetItemCommand, PutItemCommand, QueryCommand, ScanCommand, UpdateItemCommand } from '@aws-sdk/client-dynamodb';
|
|
2
2
|
import asyncPool from 'tiny-async-pool';
|
|
3
|
-
import { once } from '
|
|
4
|
-
import { resolveConfigValue } from '../../../config
|
|
5
|
-
import { ConflictError, NotFoundError } from '../../../errors
|
|
6
|
-
import { ifDefined } from '../../../guards
|
|
7
|
-
import { decodeDynamoDocument, encodeDynamoAttribute, encodeDynamoDocument } from '../dynamoEncoding
|
|
3
|
+
import { once } from '../../..';
|
|
4
|
+
import { resolveConfigValue } from '../../../config';
|
|
5
|
+
import { ConflictError, NotFoundError } from '../../../errors';
|
|
6
|
+
import { ifDefined } from '../../../guards';
|
|
7
|
+
import { decodeDynamoDocument, encodeDynamoAttribute, encodeDynamoDocument } from '../dynamoEncoding';
|
|
8
8
|
export const dynamoUnversionedDocumentStore = (initializer) => {
|
|
9
9
|
const init = ifDefined(initializer, {});
|
|
10
10
|
const dynamodb = once(() => { var _a; return (_a = init.dynamoClient) !== null && _a !== void 0 ? _a : new DynamoDB({ apiVersion: '2012-08-10' }); });
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { Config, TDocument } from '
|
|
2
|
-
import { ConfigProviderForConfig } from '../../../config
|
|
1
|
+
import { Config, TDocument } from '..';
|
|
2
|
+
import { ConfigProviderForConfig } from '../../../config';
|
|
3
3
|
interface Initializer<C> {
|
|
4
4
|
dataDir: string;
|
|
5
5
|
fs?: Pick<typeof import('fs'), 'mkdir' | 'readdir' | 'readFile' | 'writeFile'>;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import * as fsModule from 'fs';
|
|
2
2
|
import path from 'path';
|
|
3
|
-
import { hashValue } from '
|
|
4
|
-
import { resolveConfigValue } from '../../../config
|
|
5
|
-
import { ConflictError, NotFoundError } from '../../../errors
|
|
6
|
-
import { ifDefined, isDefined } from '../../../guards
|
|
3
|
+
import { hashValue } from '../../..';
|
|
4
|
+
import { resolveConfigValue } from '../../../config';
|
|
5
|
+
import { ConflictError, NotFoundError } from '../../../errors';
|
|
6
|
+
import { ifDefined, isDefined } from '../../../guards';
|
|
7
7
|
export const fileSystemUnversionedDocumentStore = (initializer) => () => (configProvider) => (_, hashKey, options) => {
|
|
8
8
|
const tableName = resolveConfigValue(configProvider[initializer.configSpace || 'fileSystem'].tableName);
|
|
9
9
|
const tablePath = tableName.then((table) => path.join(initializer.dataDir, table));
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { dynamoUnversionedDocumentStore } from './dynamodb
|
|
1
|
+
import { dynamoUnversionedDocumentStore } from './dynamodb';
|
|
2
2
|
export type UnversionedDocumentStoreCreator = typeof dynamoUnversionedDocumentStore;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { DynamoDB } from '@aws-sdk/client-dynamodb';
|
|
2
|
-
import { Config } from '
|
|
3
|
-
import { ConfigProviderForConfig } from '../../../config
|
|
4
|
-
import { VersionedDocumentAuthor, VersionedTDocument } from '
|
|
2
|
+
import { Config } from '..';
|
|
3
|
+
import { ConfigProviderForConfig } from '../../../config';
|
|
4
|
+
import { VersionedDocumentAuthor, VersionedTDocument } from '.';
|
|
5
5
|
interface Initializer<C> {
|
|
6
6
|
configSpace?: C;
|
|
7
7
|
dynamoClient?: DynamoDB;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { DynamoDB, PutItemCommand, QueryCommand, ScanCommand } from '@aws-sdk/client-dynamodb';
|
|
2
|
-
import { once } from '
|
|
3
|
-
import { resolveConfigValue } from '../../../config
|
|
4
|
-
import { ifDefined } from '../../../guards
|
|
5
|
-
import { decodeDynamoDocument, encodeDynamoAttribute, encodeDynamoDocument } from '../dynamoEncoding
|
|
2
|
+
import { once } from '../../..';
|
|
3
|
+
import { resolveConfigValue } from '../../../config';
|
|
4
|
+
import { ifDefined } from '../../../guards';
|
|
5
|
+
import { decodeDynamoDocument, encodeDynamoAttribute, encodeDynamoDocument } from '../dynamoEncoding';
|
|
6
6
|
// i'm not really excited about getAuthor being required, but ts is getting confused about the type when unspecified
|
|
7
7
|
export const dynamoVersionedDocumentStore = (initializer) => {
|
|
8
8
|
const init = ifDefined(initializer, {});
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { Config } from '
|
|
2
|
-
import { ConfigProviderForConfig } from '../../../config
|
|
3
|
-
import { VersionedDocumentAuthor, VersionedTDocument } from '
|
|
1
|
+
import { Config } from '..';
|
|
2
|
+
import { ConfigProviderForConfig } from '../../../config';
|
|
3
|
+
import { VersionedDocumentAuthor, VersionedTDocument } from '.';
|
|
4
4
|
interface Initializer<C> {
|
|
5
5
|
dataDir: string;
|
|
6
6
|
fs?: Pick<typeof import('fs'), 'mkdir' | 'readdir' | 'readFile' | 'writeFile'>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { fileSystemUnversionedDocumentStore } from '../unversioned/file-system
|
|
1
|
+
import { fileSystemUnversionedDocumentStore } from '../unversioned/file-system';
|
|
2
2
|
const PAGE_LIMIT = 5;
|
|
3
3
|
export const fileSystemVersionedDocumentStore = (initializer) => () => (configProvider) => (_, hashKey, options) => {
|
|
4
4
|
const unversionedDocuments = fileSystemUnversionedDocumentStore(initializer)()(configProvider)({}, 'id');
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { TDocument } from '
|
|
2
|
-
import { dynamoVersionedDocumentStore } from './dynamodb
|
|
1
|
+
import { TDocument } from '..';
|
|
2
|
+
import { dynamoVersionedDocumentStore } from './dynamodb';
|
|
3
3
|
export type VersionedDocumentAuthor = {
|
|
4
4
|
type: 'user';
|
|
5
5
|
uuid: string;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { ConfigProviderForConfig } from '../../config
|
|
2
|
-
import { GenericFetch } from '../../fetch
|
|
1
|
+
import { ConfigProviderForConfig } from '../../config';
|
|
2
|
+
import { GenericFetch } from '../../fetch';
|
|
3
3
|
export type Config = {
|
|
4
4
|
defaultCorrectness?: string;
|
|
5
5
|
exercisesHost: string;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import * as queryString from 'query-string';
|
|
2
|
-
import { once } from '
|
|
3
|
-
import { assertString } from '../../assertions
|
|
4
|
-
import { resolveConfigValue } from '../../config
|
|
5
|
-
import { ifDefined } from '../../guards
|
|
6
|
-
import { METHOD } from '../../routing
|
|
2
|
+
import { once } from '../..';
|
|
3
|
+
import { assertString } from '../../assertions';
|
|
4
|
+
import { resolveConfigValue } from '../../config';
|
|
5
|
+
import { ifDefined } from '../../guards';
|
|
6
|
+
import { METHOD } from '../../routing';
|
|
7
7
|
export const exercisesGateway = (initializer) => (configProvider) => {
|
|
8
8
|
const config = configProvider[ifDefined(initializer.configSpace, 'exercises')];
|
|
9
9
|
const exercisesHost = once(() => resolveConfigValue(config.exercisesHost));
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { isPlainObject } from '../../guards
|
|
1
|
+
import { isPlainObject } from '../../guards';
|
|
2
2
|
export const isFileValue = (thing) => isPlainObject(thing)
|
|
3
3
|
&& Object.keys(thing).every(key => ['dataType', 'path', 'label', 'mimeType'].includes(key))
|
|
4
4
|
&& thing.dataType === 'file'
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { ConfigProviderForConfig } from '../../config
|
|
2
|
-
import { FileServerAdapter } from '
|
|
1
|
+
import { ConfigProviderForConfig } from '../../config';
|
|
2
|
+
import { FileServerAdapter } from '.';
|
|
3
3
|
export type Config = {
|
|
4
4
|
port?: string;
|
|
5
5
|
host?: string;
|
|
@@ -7,10 +7,10 @@ import cors from 'cors';
|
|
|
7
7
|
import express from 'express';
|
|
8
8
|
import multer from 'multer';
|
|
9
9
|
import { v4 as uuid } from 'uuid';
|
|
10
|
-
import { assertString } from '../../assertions
|
|
11
|
-
import { resolveConfigValue } from '../../config
|
|
12
|
-
import { ifDefined } from '../../guards
|
|
13
|
-
import { memoize } from '../../misc/helpers
|
|
10
|
+
import { assertString } from '../../assertions';
|
|
11
|
+
import { resolveConfigValue } from '../../config';
|
|
12
|
+
import { ifDefined } from '../../guards';
|
|
13
|
+
import { memoize } from '../../misc/helpers';
|
|
14
14
|
/* istanbul ignore next */
|
|
15
15
|
const startServer = memoize((port, uploadDir) => {
|
|
16
16
|
// TODO - re-evaluate the `preservePath` behavior to match whatever s3 does
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { S3Client } from '@aws-sdk/client-s3';
|
|
2
|
-
import { ConfigProviderForConfig } from '../../config
|
|
3
|
-
import { FileServerAdapter } from '
|
|
2
|
+
import { ConfigProviderForConfig } from '../../config';
|
|
3
|
+
import { FileServerAdapter } from '.';
|
|
4
4
|
export type Config = {
|
|
5
5
|
bucketName: string;
|
|
6
6
|
bucketRegion: string;
|
|
@@ -4,10 +4,10 @@ import { CopyObjectCommand, GetObjectCommand, HeadObjectCommand, PutObjectComman
|
|
|
4
4
|
import { createPresignedPost } from '@aws-sdk/s3-presigned-post';
|
|
5
5
|
import { getSignedUrl } from '@aws-sdk/s3-request-presigner';
|
|
6
6
|
import { v4 as uuid } from 'uuid';
|
|
7
|
-
import { once } from '
|
|
8
|
-
import { assertDefined } from '../../assertions
|
|
9
|
-
import { resolveConfigValue } from '../../config
|
|
10
|
-
import { ifDefined } from '../../guards
|
|
7
|
+
import { once } from '../..';
|
|
8
|
+
import { assertDefined } from '../../assertions';
|
|
9
|
+
import { resolveConfigValue } from '../../config';
|
|
10
|
+
import { ifDefined } from '../../guards';
|
|
11
11
|
export const s3FileServer = (initializer) => (configProvider) => {
|
|
12
12
|
const config = configProvider[ifDefined(initializer.configSpace, 'deployed')];
|
|
13
13
|
const bucketName = once(() => resolveConfigValue(config.bucketName));
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { APIGatewayProxyEventV2 } from 'aws-lambda';
|
|
2
2
|
import { VerifyConfig } from 'http-message-signatures';
|
|
3
3
|
import { JWK } from 'node-jose';
|
|
4
|
-
import { ConfigProviderForConfig } from '../../config
|
|
4
|
+
import { ConfigProviderForConfig } from '../../config';
|
|
5
5
|
type Config = {
|
|
6
6
|
apiHost: string;
|
|
7
7
|
bypassSignatureVerification: string;
|
|
@@ -3,11 +3,11 @@ import { createHash } from 'crypto';
|
|
|
3
3
|
import { createVerifier, httpbis } from 'http-message-signatures';
|
|
4
4
|
import { SigningKeyNotFoundError } from 'jwks-rsa';
|
|
5
5
|
import { ByteSequence, parseDictionary, parseItem, Token } from 'structured-headers';
|
|
6
|
-
import { assertString } from '../../assertions
|
|
7
|
-
import { resolveConfigValue } from '../../config
|
|
8
|
-
import { InvalidRequestError } from '../../errors
|
|
9
|
-
import { once } from '../../misc/helpers
|
|
10
|
-
import { getJwksClient } from '../../misc/jwks
|
|
6
|
+
import { assertString } from '../../assertions';
|
|
7
|
+
import { resolveConfigValue } from '../../config';
|
|
8
|
+
import { InvalidRequestError } from '../../errors';
|
|
9
|
+
import { once } from '../../misc/helpers';
|
|
10
|
+
import { getJwksClient } from '../../misc/jwks';
|
|
11
11
|
export const createHttpMessageVerifier = ({ configSpace, fetcher }) => (configProvider) => {
|
|
12
12
|
const config = configProvider[configSpace !== null && configSpace !== void 0 ? configSpace : 'verifier'];
|
|
13
13
|
const getApiHost = once(async () => await resolveConfigValue(config.apiHost));
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { createLaunchSigner } from './signer
|
|
2
|
-
export { createLaunchVerifier } from './verifier
|
|
1
|
+
export { createLaunchSigner } from './signer';
|
|
2
|
+
export { createLaunchVerifier } from './verifier';
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { createLaunchSigner } from './signer
|
|
2
|
-
export { createLaunchVerifier } from './verifier
|
|
1
|
+
export { createLaunchSigner } from './signer';
|
|
2
|
+
export { createLaunchVerifier } from './verifier';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { JWK } from 'node-jose';
|
|
2
|
-
import { ConfigProviderForConfig } from '../../config
|
|
3
|
-
import type { JsonCompatibleStruct } from '../../routing
|
|
2
|
+
import { ConfigProviderForConfig } from '../../config';
|
|
3
|
+
import type { JsonCompatibleStruct } from '../../routing';
|
|
4
4
|
type Config = {
|
|
5
5
|
alg: string;
|
|
6
6
|
expiresIn: string;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import jwt from 'jsonwebtoken';
|
|
2
2
|
import ms from 'ms';
|
|
3
3
|
import { JWK } from 'node-jose';
|
|
4
|
-
import { once } from '
|
|
5
|
-
import { resolveConfigValue } from '../../config
|
|
6
|
-
import { ifDefined } from '../../guards
|
|
4
|
+
import { once } from '../..';
|
|
5
|
+
import { resolveConfigValue } from '../../config';
|
|
6
|
+
import { ifDefined } from '../../guards';
|
|
7
7
|
const SUPPORTED_ALGORITHMS = [
|
|
8
8
|
'RS256', 'RS384', 'RS512', 'ES256', 'ES384', 'ES512', 'HS256', 'HS384', 'HS512', 'PS256', 'PS384', 'PS512'
|
|
9
9
|
];
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import jwt from 'jsonwebtoken';
|
|
2
2
|
import type { JWK } from 'node-jose';
|
|
3
|
-
import { ConfigProviderForConfig } from '../../config
|
|
3
|
+
import { ConfigProviderForConfig } from '../../config';
|
|
4
4
|
type Config = {
|
|
5
5
|
trustedDomain: string;
|
|
6
6
|
bypassSignatureVerification: string;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import jwt, { TokenExpiredError } from 'jsonwebtoken';
|
|
2
|
-
import { resolveConfigValue } from '../../config
|
|
3
|
-
import { InvalidRequestError, SessionExpiredError } from '../../errors
|
|
4
|
-
import { ifDefined } from '../../guards
|
|
5
|
-
import { once } from '../../misc/helpers
|
|
6
|
-
import { getJwksKey } from '../../misc/jwks
|
|
2
|
+
import { resolveConfigValue } from '../../config';
|
|
3
|
+
import { InvalidRequestError, SessionExpiredError } from '../../errors';
|
|
4
|
+
import { ifDefined } from '../../guards';
|
|
5
|
+
import { once } from '../../misc/helpers';
|
|
6
|
+
import { getJwksKey } from '../../misc/jwks';
|
|
7
7
|
/**
|
|
8
8
|
* Creates a class that can verify launch params
|
|
9
9
|
*/
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { EagerXapiStatement, UXapiStatement, XapiStatement } from '
|
|
1
|
+
import { EagerXapiStatement, UXapiStatement, XapiStatement } from '.';
|
|
2
2
|
export declare const addStatementDefaultFields: (statement: (Pick<XapiStatement, "object" | "verb" | "context" | "result"> & {
|
|
3
3
|
id?: string;
|
|
4
4
|
}) | UXapiStatement, user: {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { LrsGateway, UXapiStatement } from '
|
|
1
|
+
import { LrsGateway, UXapiStatement } from '.';
|
|
2
2
|
export declare const EXT_PENDING_SCORING = "https://openstax.org/xapi/extensions/pending-scoring";
|
|
3
3
|
export type AttemptEntry = {
|
|
4
4
|
attempt: UXapiStatement;
|
|
@@ -40,7 +40,7 @@ export declare const loadStatementsForActivityAndFirstChildren: (gateway: LrsGat
|
|
|
40
40
|
attempt?: string;
|
|
41
41
|
ensureSync?: boolean;
|
|
42
42
|
user?: string;
|
|
43
|
-
}) => Promise<import("
|
|
43
|
+
}) => Promise<import(".").XapiStatement[]>;
|
|
44
44
|
export declare const loadActivityAttemptInfo: (gateway: LrsGateway, activityIRI: string, options?: {
|
|
45
45
|
currentAttempt?: string;
|
|
46
46
|
parentActivityAttempt?: string;
|
|
@@ -75,12 +75,12 @@ export declare const putAttemptStatement: (gateway: LrsGateway, activity: {
|
|
|
75
75
|
}, parentActivity?: {
|
|
76
76
|
iri?: string;
|
|
77
77
|
attempt?: string;
|
|
78
|
-
}) => Promise<import("
|
|
78
|
+
}) => Promise<import(".").EagerXapiStatement>;
|
|
79
79
|
export declare const createAttemptActivityStatement: (attemptStatement: UXapiStatement, verb: UXapiStatement["verb"], result?: UXapiStatement["result"]) => Pick<UXapiStatement, "object" | "verb" | "context" | "result">;
|
|
80
|
-
export declare const putAttemptActivityStatement: (gateway: LrsGateway, attemptStatement: UXapiStatement, verb: UXapiStatement["verb"], result?: UXapiStatement["result"]) => Promise<import("
|
|
80
|
+
export declare const putAttemptActivityStatement: (gateway: LrsGateway, attemptStatement: UXapiStatement, verb: UXapiStatement["verb"], result?: UXapiStatement["result"]) => Promise<import(".").EagerXapiStatement>;
|
|
81
81
|
export declare const createCompletedStatement: (attemptStatement: UXapiStatement, result?: UXapiStatement["result"]) => Pick<UXapiStatement, "object" | "verb" | "context" | "result">;
|
|
82
|
-
export declare const putCompletedStatement: (gateway: LrsGateway, attemptStatement: UXapiStatement, result: UXapiStatement["result"], user?: string) => Promise<import("
|
|
82
|
+
export declare const putCompletedStatement: (gateway: LrsGateway, attemptStatement: UXapiStatement, result: UXapiStatement["result"], user?: string) => Promise<import(".").EagerXapiStatement>;
|
|
83
83
|
export declare const createCompletedPendingScoringStatement: (attemptStatement: UXapiStatement) => Pick<UXapiStatement, "object" | "verb" | "context" | "result">;
|
|
84
|
-
export declare const putCompletedPendingScoringStatement: (gateway: LrsGateway, attemptStatement: UXapiStatement, user?: string) => Promise<import("
|
|
84
|
+
export declare const putCompletedPendingScoringStatement: (gateway: LrsGateway, attemptStatement: UXapiStatement, user?: string) => Promise<import(".").EagerXapiStatement>;
|
|
85
85
|
export declare const createScoredStatement: (attemptStatement: UXapiStatement, result: UXapiStatement["result"]) => Pick<UXapiStatement, "object" | "verb" | "context" | "result">;
|
|
86
|
-
export declare const putScoredStatement: (gateway: LrsGateway, attemptStatement: UXapiStatement, result: UXapiStatement["result"], user?: string) => Promise<import("
|
|
86
|
+
export declare const putScoredStatement: (gateway: LrsGateway, attemptStatement: UXapiStatement, result: UXapiStatement["result"], user?: string) => Promise<import(".").EagerXapiStatement>;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { GenericFetch, Response } from '../../fetch
|
|
2
|
-
import { METHOD } from '../../routing
|
|
1
|
+
import { GenericFetch, Response } from '../../fetch';
|
|
2
|
+
import { METHOD } from '../../routing';
|
|
3
3
|
export interface BatchRequest {
|
|
4
4
|
id: string;
|
|
5
5
|
path: string;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { ConfigProviderForConfig } from '../../config
|
|
2
|
-
import { AuthProvider } from '../authProvider
|
|
3
|
-
import { LrsGateway } from '
|
|
1
|
+
import { ConfigProviderForConfig } from '../../config';
|
|
2
|
+
import { AuthProvider } from '../authProvider';
|
|
3
|
+
import { LrsGateway } from '.';
|
|
4
4
|
type Config = {
|
|
5
5
|
name: string;
|
|
6
6
|
};
|
|
@@ -2,11 +2,11 @@ import * as fsModule from 'fs';
|
|
|
2
2
|
import path from 'path';
|
|
3
3
|
import formatISO from 'date-fns/formatISO';
|
|
4
4
|
import { v4 as uuid } from 'uuid';
|
|
5
|
-
import { assertDefined } from '../../assertions
|
|
6
|
-
import { resolveConfigValue } from '../../config
|
|
7
|
-
import { UnauthorizedError } from '../../errors
|
|
8
|
-
import { ifDefined } from '../../guards
|
|
9
|
-
import { hashValue } from '../../misc/hashValue
|
|
5
|
+
import { assertDefined } from '../../assertions';
|
|
6
|
+
import { resolveConfigValue } from '../../config';
|
|
7
|
+
import { UnauthorizedError } from '../../errors';
|
|
8
|
+
import { ifDefined } from '../../guards';
|
|
9
|
+
import { hashValue } from '../../misc/hashValue';
|
|
10
10
|
const pageSize = 5;
|
|
11
11
|
export const fileSystemLrsGateway = (initializer) => (configProvider) => ({ authProvider }) => {
|
|
12
12
|
const name = resolveConfigValue(configProvider[initializer.configSpace || 'fileSystem'].name);
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { ConfigProviderForConfig } from '../../config
|
|
2
|
-
import { GenericFetch } from '../../fetch
|
|
3
|
-
import { WithRequired } from '../../types
|
|
4
|
-
import { AuthProvider } from '../authProvider
|
|
5
|
-
import { Logger } from '../logger
|
|
1
|
+
import { ConfigProviderForConfig } from '../../config';
|
|
2
|
+
import { GenericFetch } from '../../fetch';
|
|
3
|
+
import { WithRequired } from '../../types';
|
|
4
|
+
import { AuthProvider } from '../authProvider';
|
|
5
|
+
import { Logger } from '../logger';
|
|
6
6
|
type Config = {
|
|
7
7
|
lrsHost: string;
|
|
8
8
|
lrsAuthorization: string;
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { once } from '
|
|
2
|
-
import { assertDefined } from '../../assertions
|
|
3
|
-
import { resolveConfigValue } from '../../config
|
|
4
|
-
import { UnauthorizedError } from '../../errors
|
|
5
|
-
import { fetchStatusRetry } from '../../fetch/fetchStatusRetry
|
|
6
|
-
import { ifDefined } from '../../guards
|
|
7
|
-
import { retryWithDelay } from '../../misc/helpers
|
|
8
|
-
import { METHOD } from '../../routing
|
|
9
|
-
import { addStatementDefaultFields } from './addStatementDefaultFields
|
|
10
|
-
import { RequestBatcher } from './batching
|
|
1
|
+
import { once } from '../..';
|
|
2
|
+
import { assertDefined } from '../../assertions';
|
|
3
|
+
import { resolveConfigValue } from '../../config';
|
|
4
|
+
import { UnauthorizedError } from '../../errors';
|
|
5
|
+
import { fetchStatusRetry } from '../../fetch/fetchStatusRetry';
|
|
6
|
+
import { ifDefined } from '../../guards';
|
|
7
|
+
import { retryWithDelay } from '../../misc/helpers';
|
|
8
|
+
import { METHOD } from '../../routing';
|
|
9
|
+
import { addStatementDefaultFields } from './addStatementDefaultFields';
|
|
10
|
+
import { RequestBatcher } from './batching';
|
|
11
11
|
export const lrsGateway = (initializer) => (configProvider) => {
|
|
12
12
|
const config = configProvider[ifDefined(initializer.configSpace, 'lrs')];
|
|
13
13
|
const lrsHost = once(() => resolveConfigValue(config.lrsHost));
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { AccountsGateway, MappedUserInfo } from '../accountsGateway
|
|
2
|
-
import { AuthProvider } from '../authProvider
|
|
3
|
-
import { ActivityState, AttemptEntry } from './attempt-utils
|
|
4
|
-
import { LrsGateway } from '
|
|
1
|
+
import { AccountsGateway, MappedUserInfo } from '../accountsGateway';
|
|
2
|
+
import { AuthProvider } from '../authProvider';
|
|
3
|
+
import { ActivityState, AttemptEntry } from './attempt-utils';
|
|
4
|
+
import { LrsGateway } from '.';
|
|
5
5
|
export interface Grade {
|
|
6
6
|
activityProgress: 'Initialized' | 'Started' | 'inProgress' | 'Submitted' | 'Completed';
|
|
7
7
|
comment?: string;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import partition from 'lodash/fp/partition';
|
|
2
|
-
import { roundToPrecision } from '
|
|
3
|
-
import { EXT_PENDING_SCORING, getStatementTimeString, resolveAttemptInfo } from './attempt-utils
|
|
2
|
+
import { roundToPrecision } from '../..';
|
|
3
|
+
import { EXT_PENDING_SCORING, getStatementTimeString, resolveAttemptInfo } from './attempt-utils';
|
|
4
4
|
export const getRegistrationAttemptInfo = async (lrs, registration, options) => {
|
|
5
5
|
const { currentPreference, ...xapiOptions } = options !== null && options !== void 0 ? options : {};
|
|
6
6
|
const allStatements = await lrs.getAllXapiStatements({ ...xapiOptions, registration });
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import postgres, { Sql } from 'postgres';
|
|
2
|
-
import { ConfigProviderForConfig } from '../../config
|
|
3
|
-
import type { Logger } from '../logger
|
|
2
|
+
import { ConfigProviderForConfig } from '../../config';
|
|
3
|
+
import type { Logger } from '../logger';
|
|
4
4
|
type Config = {
|
|
5
5
|
host: string;
|
|
6
6
|
readHost: string;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import postgres from 'postgres';
|
|
2
|
-
import { assertNotNaN } from '../../assertions
|
|
3
|
-
import { resolveConfigValue } from '../../config
|
|
4
|
-
import { ifDefined } from '../../guards
|
|
5
|
-
import { once } from '../../misc/helpers
|
|
2
|
+
import { assertNotNaN } from '../../assertions';
|
|
3
|
+
import { resolveConfigValue } from '../../config';
|
|
4
|
+
import { ifDefined } from '../../guards';
|
|
5
|
+
import { once } from '../../misc/helpers';
|
|
6
6
|
export const postgresConnection = (initializer) => (configProvider) => {
|
|
7
7
|
const config = configProvider[ifDefined(initializer.configSpace, 'local')];
|
|
8
8
|
const host = once(() => resolveConfigValue(config.host));
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { resolveConfigValue } from '../../config
|
|
2
|
-
import { ifDefined } from '../../guards
|
|
3
|
-
import { once } from '../../misc/helpers
|
|
1
|
+
import { resolveConfigValue } from '../../config';
|
|
2
|
+
import { ifDefined } from '../../guards';
|
|
3
|
+
import { once } from '../../misc/helpers';
|
|
4
4
|
export const localQueueProvider = (initializer) => {
|
|
5
5
|
const init = ifDefined(initializer, {});
|
|
6
6
|
return () => (configProvider) => {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { SQS } from '@aws-sdk/client-sqs';
|
|
2
|
-
import { ConfigProviderForConfig } from '../../config
|
|
3
|
-
import { QueueProvider } from '
|
|
2
|
+
import { ConfigProviderForConfig } from '../../config';
|
|
3
|
+
import { QueueProvider } from '.';
|
|
4
4
|
export type Config = {
|
|
5
5
|
queueUrl: string;
|
|
6
6
|
};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { SendMessageCommand, SQS } from '@aws-sdk/client-sqs';
|
|
2
|
-
import { resolveConfigValue } from '../../config
|
|
3
|
-
import { ifDefined } from '../../guards
|
|
4
|
-
import { once } from '../../misc/helpers
|
|
2
|
+
import { resolveConfigValue } from '../../config';
|
|
3
|
+
import { ifDefined } from '../../guards';
|
|
4
|
+
import { once } from '../../misc/helpers';
|
|
5
5
|
export const sqsQueueProvider = (initializer) => {
|
|
6
6
|
const init = ifDefined(initializer, {});
|
|
7
7
|
const sqs = once(() => { var _a; return (_a = init.sqsClient) !== null && _a !== void 0 ? _a : new SQS({ apiVersion: '2012-11-05' }); });
|