diff --git a/examples/aws-authorizer/package.json b/examples/aws-authorizer/package.json index fb8b3c58..527d2751 100644 --- a/examples/aws-authorizer/package.json +++ b/examples/aws-authorizer/package.json @@ -6,6 +6,7 @@ }, "private": true, "dependencies": { + "@clc/dependencies": "*", "@code-like-a-carpenter/contract-tests": "*", "@code-like-a-carpenter/env": "*", "@code-like-a-carpenter/errors": "*", diff --git a/examples/aws-authorizer/src/authorizer.ts b/examples/aws-authorizer/src/authorizer.ts index 70f0bd3a..cb3fdc3a 100644 --- a/examples/aws-authorizer/src/authorizer.ts +++ b/examples/aws-authorizer/src/authorizer.ts @@ -1,3 +1,5 @@ +import {exceptionTracingService} from '@clc/dependencies'; + import { Forbidden, NotFound, @@ -9,8 +11,6 @@ import { handleRestTokenAuthorizerEvent, } from '@code-like-a-carpenter/lambda-handlers'; -import {exceptionTracingService} from '../../dependencies.mts'; - type AuthorizerContext = | { scheme: 'Bearer'; diff --git a/examples/aws-authorizer/src/ping.ts b/examples/aws-authorizer/src/ping.ts index cde2556c..ea1d2904 100644 --- a/examples/aws-authorizer/src/ping.ts +++ b/examples/aws-authorizer/src/ping.ts @@ -1,6 +1,6 @@ -import {handleRestEvent} from '@code-like-a-carpenter/lambda-handlers'; +import {exceptionTracingService} from '@clc/dependencies'; -import {exceptionTracingService} from '../../dependencies.mts'; +import {handleRestEvent} from '@code-like-a-carpenter/lambda-handlers'; import type {operations} from './__generated__/api.ts'; diff --git a/examples/aws-otel/package.json b/examples/aws-otel/package.json index a61e6680..5d47b4a1 100644 --- a/examples/aws-otel/package.json +++ b/examples/aws-otel/package.json @@ -6,6 +6,7 @@ }, "private": true, "dependencies": { + "@clc/dependencies": "*", "@code-like-a-carpenter/contract-tests": "*", "@code-like-a-carpenter/env": "*", "@code-like-a-carpenter/lambda-handlers": "*", diff --git a/examples/aws-otel/src/ping.ts b/examples/aws-otel/src/ping.ts index 2f9f5e47..4d1c8e57 100644 --- a/examples/aws-otel/src/ping.ts +++ b/examples/aws-otel/src/ping.ts @@ -1,8 +1,8 @@ +import {exceptionTracingService} from '@clc/dependencies'; + import {handleRestEvent} from '@code-like-a-carpenter/lambda-handlers'; import {runWithNewSpan} from '@code-like-a-carpenter/telemetry'; -import {exceptionTracingService} from '../../dependencies.mts'; - import type {operations} from './__generated__/api.ts'; export const ping = handleRestEvent(async (event) => { diff --git a/examples/basic-wiring/package.json b/examples/basic-wiring/package.json index 2ec05752..2f54c0e1 100644 --- a/examples/basic-wiring/package.json +++ b/examples/basic-wiring/package.json @@ -6,6 +6,7 @@ }, "private": true, "dependencies": { + "@clc/dependencies": "*", "@code-like-a-carpenter/contract-tests": "*", "@code-like-a-carpenter/env": "*", "@code-like-a-carpenter/errors": "*", diff --git a/examples/basic-wiring/src/errors.ts b/examples/basic-wiring/src/errors.ts index 34a7f030..aa803a57 100644 --- a/examples/basic-wiring/src/errors.ts +++ b/examples/basic-wiring/src/errors.ts @@ -1,3 +1,5 @@ +import {exceptionTracingService} from '@clc/dependencies'; + import { BadRequest, Forbidden, @@ -42,8 +44,6 @@ import { } from '@code-like-a-carpenter/errors'; import {handleRestEvent} from '@code-like-a-carpenter/lambda-handlers'; -import {exceptionTracingService} from '../../dependencies.mts'; - import type {operations} from './__generated__/api.ts'; export const errors = handleRestEvent( diff --git a/examples/basic-wiring/src/ping.ts b/examples/basic-wiring/src/ping.ts index 63f26d48..b51faa6e 100644 --- a/examples/basic-wiring/src/ping.ts +++ b/examples/basic-wiring/src/ping.ts @@ -1,6 +1,6 @@ -import {handleRestEvent} from '@code-like-a-carpenter/lambda-handlers'; +import {exceptionTracingService} from '@clc/dependencies'; -import {exceptionTracingService} from '../../dependencies.mts'; +import {handleRestEvent} from '@code-like-a-carpenter/lambda-handlers'; import type {operations} from './__generated__/api.ts'; diff --git a/examples/basic-wiring/src/root.ts b/examples/basic-wiring/src/root.ts index 1f69f855..f0e1c87a 100644 --- a/examples/basic-wiring/src/root.ts +++ b/examples/basic-wiring/src/root.ts @@ -1,6 +1,6 @@ -import {handleRestEvent} from '@code-like-a-carpenter/lambda-handlers'; +import {exceptionTracingService} from '@clc/dependencies'; -import {exceptionTracingService} from '../../dependencies.mts'; +import {handleRestEvent} from '@code-like-a-carpenter/lambda-handlers'; import type {operations} from './__generated__/api.ts'; diff --git a/examples/subscription-webhooks/.foundationrc.cjs b/examples/subscription-webhooks/.foundationrc.cjs index 104175f0..de510045 100644 --- a/examples/subscription-webhooks/.foundationrc.cjs +++ b/examples/subscription-webhooks/.foundationrc.cjs @@ -1,6 +1,6 @@ /** @type {import('@code-like-a-carpenter/tool-foundation').InputConfig} */ const config = { - dependenciesModuleId: '../dependencies.mts', + dependenciesModuleId: '@clc/dependencies', // Note that there's shared state between the CloudFormation and TypeScript // plugins, so config that's read be the parser needs to be the same. dispatcherDefaults: { diff --git a/examples/subscription-webhooks/__generated__/dispatcher-table-account/handler.ts b/examples/subscription-webhooks/__generated__/dispatcher-table-account/handler.ts index e45e7b3d..fa10c4f4 100644 --- a/examples/subscription-webhooks/__generated__/dispatcher-table-account/handler.ts +++ b/examples/subscription-webhooks/__generated__/dispatcher-table-account/handler.ts @@ -1,8 +1,8 @@ // This file is generated. Do not edit by hand. -import {makeDynamoDBStreamDispatcher} from '@code-like-a-carpenter/foundation-runtime'; +import * as dependencies from '@clc/dependencies'; -import * as dependencies from '../../../dependencies.mts'; +import {makeDynamoDBStreamDispatcher} from '@code-like-a-carpenter/foundation-runtime'; export const handler = makeDynamoDBStreamDispatcher({ ...dependencies, diff --git a/examples/subscription-webhooks/__generated__/dispatcher-table-plan-metric/handler.ts b/examples/subscription-webhooks/__generated__/dispatcher-table-plan-metric/handler.ts index e7517dd3..fc495a34 100644 --- a/examples/subscription-webhooks/__generated__/dispatcher-table-plan-metric/handler.ts +++ b/examples/subscription-webhooks/__generated__/dispatcher-table-plan-metric/handler.ts @@ -1,8 +1,8 @@ // This file is generated. Do not edit by hand. -import {makeDynamoDBStreamDispatcher} from '@code-like-a-carpenter/foundation-runtime'; +import * as dependencies from '@clc/dependencies'; -import * as dependencies from '../../../dependencies.mts'; +import {makeDynamoDBStreamDispatcher} from '@code-like-a-carpenter/foundation-runtime'; export const handler = makeDynamoDBStreamDispatcher({ ...dependencies, diff --git a/examples/subscription-webhooks/__generated__/dispatcher-table-subscription-event/handler.ts b/examples/subscription-webhooks/__generated__/dispatcher-table-subscription-event/handler.ts index 31965c62..8def1cbf 100644 --- a/examples/subscription-webhooks/__generated__/dispatcher-table-subscription-event/handler.ts +++ b/examples/subscription-webhooks/__generated__/dispatcher-table-subscription-event/handler.ts @@ -1,8 +1,8 @@ // This file is generated. Do not edit by hand. -import {makeDynamoDBStreamDispatcher} from '@code-like-a-carpenter/foundation-runtime'; +import * as dependencies from '@clc/dependencies'; -import * as dependencies from '../../../dependencies.mts'; +import {makeDynamoDBStreamDispatcher} from '@code-like-a-carpenter/foundation-runtime'; export const handler = makeDynamoDBStreamDispatcher({ ...dependencies, diff --git a/examples/subscription-webhooks/__generated__/enricher--subscription-event--upsert--account/handler.ts b/examples/subscription-webhooks/__generated__/enricher--subscription-event--upsert--account/handler.ts index 35cf7fdc..7b7fa3b7 100644 --- a/examples/subscription-webhooks/__generated__/enricher--subscription-event--upsert--account/handler.ts +++ b/examples/subscription-webhooks/__generated__/enricher--subscription-event--upsert--account/handler.ts @@ -1,7 +1,8 @@ // This file is generated. Do not edit by hand. +import * as dependencies from '@clc/dependencies'; + import {makeEnricher} from '@code-like-a-carpenter/foundation-runtime'; -import * as dependencies from '../../../dependencies.mts'; import {SubscriptionEventUpsertAccountEnricher} from '../../src/enrich--subscription--upsert--account.ts'; import type { SubscriptionEvent, diff --git a/examples/subscription-webhooks/__generated__/graphql.ts b/examples/subscription-webhooks/__generated__/graphql.ts index 1ba71448..a3485761 100644 --- a/examples/subscription-webhooks/__generated__/graphql.ts +++ b/examples/subscription-webhooks/__generated__/graphql.ts @@ -15,6 +15,7 @@ import { } from '@aws-sdk/lib-dynamodb'; import {ServiceException} from '@aws-sdk/smithy-client'; import type {NativeAttributeValue} from '@aws-sdk/util-dynamodb'; +import {ddbDocClient} from '@clc/dependencies'; import Base64Import from 'base64url'; import {assert} from '@code-like-a-carpenter/assert'; @@ -37,7 +38,6 @@ import { UnexpectedError, } from '@code-like-a-carpenter/foundation-runtime'; -import {ddbDocClient} from '../../dependencies.mts'; import {AccountIndexedPlanNameProvider} from '../src/computed-fields.ts'; export type Maybe = T | null; export type InputMaybe = Maybe; diff --git a/examples/subscription-webhooks/__generated__/reduce--account--upsert--plan-metric/handler.ts b/examples/subscription-webhooks/__generated__/reduce--account--upsert--plan-metric/handler.ts index a96220b9..fa95ccbe 100644 --- a/examples/subscription-webhooks/__generated__/reduce--account--upsert--plan-metric/handler.ts +++ b/examples/subscription-webhooks/__generated__/reduce--account--upsert--plan-metric/handler.ts @@ -1,7 +1,8 @@ // This file is generated. Do not edit by hand. +import * as dependencies from '@clc/dependencies'; + import {makeMultiReducer} from '@code-like-a-carpenter/foundation-runtime'; -import * as dependencies from '../../../dependencies.mts'; import {AccountUpsertPlanMetricReducer} from '../../src/reduce--account--upsert--plan-metric.ts'; import type { Account, diff --git a/examples/subscription-webhooks/__generated__/reduce--plan-metric--upsert--metric/handler.ts b/examples/subscription-webhooks/__generated__/reduce--plan-metric--upsert--metric/handler.ts index a4cfc2c6..467da9dc 100644 --- a/examples/subscription-webhooks/__generated__/reduce--plan-metric--upsert--metric/handler.ts +++ b/examples/subscription-webhooks/__generated__/reduce--plan-metric--upsert--metric/handler.ts @@ -1,7 +1,8 @@ // This file is generated. Do not edit by hand. +import * as dependencies from '@clc/dependencies'; + import {makeReducer} from '@code-like-a-carpenter/foundation-runtime'; -import * as dependencies from '../../../dependencies.mts'; import {PlanMetricUpsertMetricReducer} from '../../src/reduce--plan-metric--upsert--metric.ts'; import type { PlanMetric, diff --git a/examples/subscription-webhooks/package.json b/examples/subscription-webhooks/package.json index e5592aa2..9112cfd5 100644 --- a/examples/subscription-webhooks/package.json +++ b/examples/subscription-webhooks/package.json @@ -9,6 +9,7 @@ "@aws-sdk/lib-dynamodb": "3.188.0", "@aws-sdk/smithy-client": "3.188.0", "@aws-sdk/util-dynamodb": "3.188.0", + "@clc/dependencies": "*", "@code-like-a-carpenter/assert": "*", "@code-like-a-carpenter/foundation-runtime": "*", "@code-like-a-carpenter/tool-foundation": "*", diff --git a/examples/subscription-webhooks/subscription-webhooks.test.ts b/examples/subscription-webhooks/subscription-webhooks.test.ts index 12394afe..b39f126f 100644 --- a/examples/subscription-webhooks/subscription-webhooks.test.ts +++ b/examples/subscription-webhooks/subscription-webhooks.test.ts @@ -1,13 +1,12 @@ import assert from 'assert'; import {DeleteCommand} from '@aws-sdk/lib-dynamodb'; +import {ddbDocClient} from '@clc/dependencies'; import {faker} from '@faker-js/faker'; import {NotFoundError} from '@code-like-a-carpenter/foundation-runtime'; import {waitFor} from '@code-like-a-carpenter/wait-for'; -import {ddbDocClient} from '../dependencies.mts'; - import type {SubscriptionEventPrimaryKey} from './__generated__/graphql.ts'; import { createSubscriptionEvent, diff --git a/examples/user-session/.foundationrc.cjs b/examples/user-session/.foundationrc.cjs index 8cbf52e5..fb330641 100644 --- a/examples/user-session/.foundationrc.cjs +++ b/examples/user-session/.foundationrc.cjs @@ -1,6 +1,6 @@ /** @type {import('@code-like-a-carpenter/tool-foundation').InputConfig} */ const config = { - dependenciesModuleId: '../dependencies.mts', + dependenciesModuleId: '@clc/dependencies', // Note that there's shared state between the CloudFormation and TypeScript // plugins, so config that's read be the parser needs to be the same. dispatcherDefaults: { diff --git a/examples/user-session/__generated__/graphql.ts b/examples/user-session/__generated__/graphql.ts index cd5e17e9..4f6db277 100644 --- a/examples/user-session/__generated__/graphql.ts +++ b/examples/user-session/__generated__/graphql.ts @@ -15,6 +15,7 @@ import { } from '@aws-sdk/lib-dynamodb'; import {ServiceException} from '@aws-sdk/smithy-client'; import type {NativeAttributeValue} from '@aws-sdk/util-dynamodb'; +import {ddbDocClient} from '@clc/dependencies'; import Base64Import from 'base64url'; import {assert} from '@code-like-a-carpenter/assert'; @@ -34,8 +35,6 @@ import { UnexpectedAwsError, UnexpectedError, } from '@code-like-a-carpenter/foundation-runtime'; - -import {ddbDocClient} from '../../dependencies.mts'; export type Maybe = T | null; export type InputMaybe = Maybe; export type Exact = {[K in keyof T]: T[K]}; diff --git a/examples/user-session/package.json b/examples/user-session/package.json index 9031ffb2..b443520d 100644 --- a/examples/user-session/package.json +++ b/examples/user-session/package.json @@ -9,6 +9,8 @@ "@aws-sdk/lib-dynamodb": "3.188.0", "@aws-sdk/smithy-client": "3.188.0", "@aws-sdk/util-dynamodb": "3.188.0", + "@clc/dependencies": "*", + "@clc/test-helpers": "*", "@code-like-a-carpenter/assert": "*", "@code-like-a-carpenter/foundation-runtime": "*", "@code-like-a-carpenter/tool-foundation": "*", diff --git a/examples/user-session/user-session.test.ts b/examples/user-session/user-session.test.ts index 27025f4a..ca36f1df 100644 --- a/examples/user-session/user-session.test.ts +++ b/examples/user-session/user-session.test.ts @@ -1,5 +1,6 @@ import assert from 'assert'; +import {load} from '@clc/test-helpers'; import {faker} from '@faker-js/faker'; import Base64Import from 'base64url'; @@ -8,8 +9,6 @@ import { OptimisticLockingError, } from '@code-like-a-carpenter/foundation-runtime'; -import {load} from '../test-helpers.mts'; - import { blindWriteUserSession, createUserSession, diff --git a/package-lock.json b/package-lock.json index f7f8bdef..173ee89c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -75,6 +75,7 @@ }, "examples/aws-authorizer": { "dependencies": { + "@clc/dependencies": "*", "@code-like-a-carpenter/contract-tests": "*", "@code-like-a-carpenter/env": "*", "@code-like-a-carpenter/errors": "*", @@ -86,6 +87,7 @@ }, "examples/aws-otel": { "dependencies": { + "@clc/dependencies": "*", "@code-like-a-carpenter/contract-tests": "*", "@code-like-a-carpenter/env": "*", "@code-like-a-carpenter/lambda-handlers": "*", @@ -97,6 +99,7 @@ }, "examples/basic-wiring": { "dependencies": { + "@clc/dependencies": "*", "@code-like-a-carpenter/contract-tests": "*", "@code-like-a-carpenter/env": "*", "@code-like-a-carpenter/errors": "*", @@ -112,6 +115,7 @@ "@aws-sdk/lib-dynamodb": "3.188.0", "@aws-sdk/smithy-client": "3.188.0", "@aws-sdk/util-dynamodb": "3.188.0", + "@clc/dependencies": "*", "@code-like-a-carpenter/assert": "*", "@code-like-a-carpenter/foundation-runtime": "*", "@code-like-a-carpenter/tool-foundation": "*", @@ -129,6 +133,8 @@ "@aws-sdk/lib-dynamodb": "3.188.0", "@aws-sdk/smithy-client": "3.188.0", "@aws-sdk/util-dynamodb": "3.188.0", + "@clc/dependencies": "*", + "@clc/test-helpers": "*", "@code-like-a-carpenter/assert": "*", "@code-like-a-carpenter/foundation-runtime": "*", "@code-like-a-carpenter/tool-foundation": "*", @@ -3379,10 +3385,18 @@ "dev": true, "license": "MIT" }, + "node_modules/@clc/dependencies": { + "resolved": "packages/@clc/dependencies", + "link": true + }, "node_modules/@clc/nx": { "resolved": "packages/@clc/nx", "link": true }, + "node_modules/@clc/test-helpers": { + "resolved": "packages/@clc/test-helpers", + "link": true + }, "node_modules/@code-like-a-carpenter/assert": { "resolved": "packages/@code-like-a-carpenter/assert", "link": true @@ -10578,8 +10592,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/cuid/-/cuid-3.0.0.tgz", "integrity": "sha512-WZYYkHdIDnaxdeP8Misq3Lah5vFjJwGuItJuV+tvMafosMzw0nF297T7mrm8IOWiPJkV6gc7sa8pzx27+w25Zg==", - "deprecated": "Cuid and other k-sortable and non-cryptographic ids (Ulid, ObjectId, KSUID, all UUIDs) are all insecure. Use @paralleldrive/cuid2 instead.", - "dev": true + "deprecated": "Cuid and other k-sortable and non-cryptographic ids (Ulid, ObjectId, KSUID, all UUIDs) are all insecure. Use @paralleldrive/cuid2 instead." }, "node_modules/curl-trace-parser": { "version": "0.0.10", @@ -27355,6 +27368,19 @@ "url": "https://github.com/sponsors/wooorm" } }, + "packages/@clc/dependencies": { + "license": "MIT", + "dependencies": { + "@aws-sdk/client-dynamodb": "3.188.0", + "@aws-sdk/client-eventbridge": "3.188.0", + "@aws-sdk/lib-dynamodb": "3.188.0", + "@code-like-a-carpenter/sentry": "*", + "cuid": "^3.0.0" + }, + "engines": { + "node": "20.x" + } + }, "packages/@clc/nx": { "dependencies": { "@code-like-a-carpenter/tooling-common": "*", @@ -27396,6 +27422,16 @@ "url": "https://github.com/sponsors/isaacs" } }, + "packages/@clc/test-helpers": { + "license": "MIT", + "dependencies": { + "@aws-sdk/lib-dynamodb": "3.188.0", + "@clc/dependencies": "*" + }, + "engines": { + "node": "20.x" + } + }, "packages/@code-like-a-carpenter/assert": { "license": "MIT", "engines": { diff --git a/packages/@clc/dependencies/README.md b/packages/@clc/dependencies/README.md new file mode 100644 index 00000000..34a89671 --- /dev/null +++ b/packages/@clc/dependencies/README.md @@ -0,0 +1,34 @@ +# @clc/dependencies + +[![standard-readme compliant](https://img.shields.io/badge/readme%20style-standard-brightgreen.svg?style=flat-square)](https://github.com/RichardLitt/standard-readme) + +> foundation dependencies for examples + +## Table of Contents + +- [Install](#install) +- [Usage](#usage) +- [Maintainer](#maintainer) +- [Contributing](#contributing) +- [License](#license) + +## Install + +```bash +npm i @clc/dependencies +``` + +## Usage + +## Maintainer + +[Ian Remmel](https://www.ianwremmel.com) + +## Contributing + +Please see contributing guidelines at the +[project homepage](https://www.github.com/code-like-a-carpenter/workbench/). + +## License + +MIT © [Ian Remmel](https://www.ianwremmel.com) 2023 until at least now diff --git a/packages/@clc/dependencies/package.json b/packages/@clc/dependencies/package.json new file mode 100644 index 00000000..45bcd8e3 --- /dev/null +++ b/packages/@clc/dependencies/package.json @@ -0,0 +1,38 @@ +{ + "name": "@clc/dependencies", + "description": "foundation dependencies for examples", + "private": true, + "dependencies": { + "@aws-sdk/client-dynamodb": "3.188.0", + "@aws-sdk/client-eventbridge": "3.188.0", + "@aws-sdk/lib-dynamodb": "3.188.0", + "@code-like-a-carpenter/sentry": "*", + "cuid": "^3.0.0" + }, + "engines": { + "node": "20.x" + }, + "author": "Ian Remmel <1182361+ianwremmel@users.noreply.github.com> (https://www.ianwremmel.com)", + "bugs": "https://www.github.com/code-like-a-carpenter/workbench/issues", + "exports": { + ".": { + "import": { + "types": "./dist/types/index.d.mts", + "default": "./dist/esm/index.mjs" + }, + "require": { + "types": "./dist/cjs-types/index.d.ts", + "default": "./dist/cjs/index.cjs" + } + }, + "./package.json": "./package.json" + }, + "homepage": "https://www.github.com/code-like-a-carpenter/workbench/tree/main/packages/@clc/dependencies", + "license": "MIT", + "repository": "git@github.com:code-like-a-carpenter/workbench.git", + "type": "module", + "types": "./dist/types/index.d.mts", + "publishConfig": { + "access": "public" + } +} diff --git a/examples/dependencies.mts b/packages/@clc/dependencies/src/index.mts similarity index 100% rename from examples/dependencies.mts rename to packages/@clc/dependencies/src/index.mts diff --git a/packages/@clc/dependencies/tsconfig.json b/packages/@clc/dependencies/tsconfig.json new file mode 100644 index 00000000..278a7618 --- /dev/null +++ b/packages/@clc/dependencies/tsconfig.json @@ -0,0 +1,13 @@ +{ + "compilerOptions": { + "outDir": "./dist/types", + "rootDir": "./src" + }, + "extends": "../../../tsconfig.references.json", + "include": ["src"], + "references": [ + { + "path": "../../@code-like-a-carpenter/sentry" + } + ] +} diff --git a/packages/@clc/test-helpers/README.md b/packages/@clc/test-helpers/README.md new file mode 100644 index 00000000..f7daf96d --- /dev/null +++ b/packages/@clc/test-helpers/README.md @@ -0,0 +1,34 @@ +# @clc/test-helpers + +[![standard-readme compliant](https://img.shields.io/badge/readme%20style-standard-brightgreen.svg?style=flat-square)](https://github.com/RichardLitt/standard-readme) + +> test helpers + +## Table of Contents + +- [Install](#install) +- [Usage](#usage) +- [Maintainer](#maintainer) +- [Contributing](#contributing) +- [License](#license) + +## Install + +```bash +npm i @clc/test-helpers +``` + +## Usage + +## Maintainer + +[Ian Remmel](https://www.ianwremmel.com) + +## Contributing + +Please see contributing guidelines at the +[project homepage](https://www.github.com/code-like-a-carpenter/workbench/). + +## License + +MIT © [Ian Remmel](https://www.ianwremmel.com) 2023 until at least now diff --git a/packages/@clc/test-helpers/package.json b/packages/@clc/test-helpers/package.json new file mode 100644 index 00000000..3ecc15f6 --- /dev/null +++ b/packages/@clc/test-helpers/package.json @@ -0,0 +1,35 @@ +{ + "name": "@clc/test-helpers", + "description": "test helpers", + "private": true, + "dependencies": { + "@aws-sdk/lib-dynamodb": "3.188.0", + "@clc/dependencies": "*" + }, + "engines": { + "node": "20.x" + }, + "author": "Ian Remmel <1182361+ianwremmel@users.noreply.github.com> (https://www.ianwremmel.com)", + "bugs": "https://www.github.com/code-like-a-carpenter/workbench/issues", + "exports": { + ".": { + "import": { + "types": "./dist/types/index.d.mts", + "default": "./dist/esm/index.mjs" + }, + "require": { + "types": "./dist/cjs-types/index.d.ts", + "default": "./dist/cjs/index.cjs" + } + }, + "./package.json": "./package.json" + }, + "homepage": "https://www.github.com/code-like-a-carpenter/workbench/tree/main/packages/@clc/test-helpers", + "license": "MIT", + "repository": "git@github.com:code-like-a-carpenter/workbench.git", + "type": "module", + "types": "./dist/types/index.d.mts", + "publishConfig": { + "access": "public" + } +} diff --git a/examples/test-helpers.mts b/packages/@clc/test-helpers/src/index.mts similarity index 88% rename from examples/test-helpers.mts rename to packages/@clc/test-helpers/src/index.mts index d3b008cd..ed87c0d5 100644 --- a/examples/test-helpers.mts +++ b/packages/@clc/test-helpers/src/index.mts @@ -1,6 +1,5 @@ import {GetCommand} from '@aws-sdk/lib-dynamodb'; - -import {ddbDocClient} from './dependencies.mts'; +import {ddbDocClient} from '@clc/dependencies'; /** Loads a record raw */ export async function load({ diff --git a/packages/@clc/test-helpers/tsconfig.json b/packages/@clc/test-helpers/tsconfig.json new file mode 100644 index 00000000..15034398 --- /dev/null +++ b/packages/@clc/test-helpers/tsconfig.json @@ -0,0 +1,13 @@ +{ + "compilerOptions": { + "outDir": "./dist/types", + "rootDir": "./src" + }, + "extends": "../../../tsconfig.references.json", + "include": ["src"], + "references": [ + { + "path": "../dependencies" + } + ] +} diff --git a/tsconfig.json b/tsconfig.json index 78a6b12a..e168622b 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -21,9 +21,15 @@ "types/**/*.d.ts" ], "references": [ + { + "path": "packages/@clc/dependencies" + }, { "path": "packages/@clc/nx" }, + { + "path": "packages/@clc/test-helpers" + }, { "path": "packages/@code-like-a-carpenter/assert" },