@exabugs/dynamodb-client 0.1.1 → 0.1.2

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.
Files changed (36) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/README.md +211 -187
  3. package/dist/client/Collection.d.ts +13 -6
  4. package/dist/client/Collection.d.ts.map +1 -1
  5. package/dist/client/Collection.js +1 -1
  6. package/dist/client/Collection.js.map +1 -1
  7. package/dist/client/index.iam.d.ts +1 -1
  8. package/dist/client/index.iam.d.ts.map +1 -1
  9. package/dist/client/index.iam.js.map +1 -1
  10. package/dist/scripts/generate-shadow-config.d.ts +16 -0
  11. package/dist/scripts/generate-shadow-config.d.ts.map +1 -0
  12. package/dist/scripts/generate-shadow-config.js +161 -0
  13. package/dist/scripts/generate-shadow-config.js.map +1 -0
  14. package/dist/server/handler.cjs +2 -2
  15. package/dist/shadows/generator.d.ts +14 -3
  16. package/dist/shadows/generator.d.ts.map +1 -1
  17. package/dist/shadows/generator.js +19 -0
  18. package/dist/shadows/generator.js.map +1 -1
  19. package/dist/shadows/index.d.ts +3 -2
  20. package/dist/shadows/index.d.ts.map +1 -1
  21. package/dist/shadows/index.js +1 -1
  22. package/dist/shadows/index.js.map +1 -1
  23. package/dist/shadows/schema.d.ts +62 -0
  24. package/dist/shadows/schema.d.ts.map +1 -0
  25. package/dist/shadows/schema.js +8 -0
  26. package/dist/shadows/schema.js.map +1 -0
  27. package/dist/shadows/types.d.ts +1 -5
  28. package/dist/shadows/types.d.ts.map +1 -1
  29. package/package.json +7 -4
  30. package/terraform/examples/advanced/README.md +0 -129
  31. package/terraform/examples/advanced/main.tf +0 -158
  32. package/terraform/examples/advanced/shadow.config.json +0 -35
  33. package/terraform/examples/advanced/variables.tf +0 -28
  34. package/terraform/examples/basic/README.md +0 -53
  35. package/terraform/examples/basic/main.tf +0 -99
  36. package/terraform/examples/basic/variables.tf +0 -17
package/CHANGELOG.md CHANGED
@@ -7,6 +7,22 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [0.1.2] - 2024-11-30
11
+
12
+ ### Added
13
+
14
+ - Boolean type support for shadow fields
15
+ - Added `'boolean'` to `ShadowFieldType`
16
+ - Added `formatBoolean()` function for boolean value formatting
17
+ - Boolean values are formatted as `'true'` or `'false'` strings
18
+ - Full test coverage for boolean shadow records
19
+
20
+ ### Changed
21
+
22
+ - Updated `formatFieldValue()` to handle boolean type
23
+ - Updated `generateShadowSK()` to support boolean values
24
+ - Exported `formatBoolean` from shadows module
25
+
10
26
  ## [0.1.0] - 2024-11-29
11
27
 
12
28
  ### Added
package/README.md CHANGED
@@ -1,267 +1,291 @@
1
- # DynamoDB Client SDK
1
+ <div align="center">
2
+
3
+ # 🚀 DynamoDB Client SDK
4
+
5
+ **MongoDB-like API for DynamoDB with Single-Table Design**
2
6
 
3
7
  [![CI](https://github.com/exabugs/dynamodb-client/actions/workflows/ci.yml/badge.svg)](https://github.com/exabugs/dynamodb-client/actions/workflows/ci.yml)
8
+ [![codecov](https://codecov.io/gh/exabugs/dynamodb-client/branch/main/graph/badge.svg)](https://codecov.io/gh/exabugs/dynamodb-client)
4
9
  [![npm version](https://badge.fury.io/js/@exabugs%2Fdynamodb-client.svg)](https://www.npmjs.com/package/@exabugs/dynamodb-client)
10
+ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
11
+ [![Node.js Version](https://img.shields.io/badge/node-%3E%3D18.0.0-brightgreen)](https://nodejs.org/)
5
12
 
6
- DynamoDB Single-Table Client SDK with MongoDB-like API, Shadow Records, and Lambda implementation for serverless applications.
13
+ [Features](#-features)
14
+ [Installation](#-installation) •
15
+ [Quick Start](#-quick-start) •
16
+ [Documentation](#-documentation) •
17
+ [Contributing](#-contributing)
7
18
 
8
- ## Features
19
+ </div>
9
20
 
10
- - 🚀 MongoDB-like API for DynamoDB
11
- - 📦 Single-Table Design with Shadow Records
12
- - 🔐 Multiple authentication methods (IAM, Cognito, Token)
13
- - ⚡ Lambda function implementation included
14
- - 🎨 react-admin integration
15
- - 📝 TypeScript support
16
- - 🏗️ Terraform modules for deployment
21
+ ---
17
22
 
18
- ## Installation
19
-
20
- ```bash
21
- npm install @exabugs/dynamodb-client
22
- # or
23
- pnpm add @exabugs/dynamodb-client
24
- # or
25
- yarn add @exabugs/dynamodb-client
26
- ```
23
+ ## ✨ Features
27
24
 
28
- ## Quick Start
25
+ <table>
26
+ <tr>
27
+ <td width="50%">
29
28
 
30
- ### Client Usage (IAM Authentication)
29
+ ### 🎯 Developer Experience
31
30
 
32
- ```typescript
33
- import { DynamoClient } from '@exabugs/dynamodb-client/client/iam';
31
+ - **MongoDB-like API** - Familiar syntax for DynamoDB
32
+ - **TypeScript First** - Full type safety out of the box
33
+ - **Zero Config** - Works with sensible defaults
34
+ - **Terraform Ready** - Infrastructure as Code included
34
35
 
35
- const client = new DynamoClient(FUNCTION_URL, {
36
- region: 'ap-northeast-1',
37
- });
36
+ </td>
37
+ <td width="50%">
38
38
 
39
- const db = client.db();
40
- const collection = db.collection('articles');
39
+ ### Performance & Scale
41
40
 
42
- // Create
43
- await collection.insertOne({ title: 'Hello World', content: '...' });
41
+ - **Single-Table Design** - Optimized data modeling
42
+ - **Shadow Records** - Efficient sorting without GSIs
43
+ - **Lambda Native** - Serverless-first architecture
44
+ - **ARM64 Support** - Cost-optimized compute
44
45
 
45
- // Read
46
- const article = await collection.findOne({ title: 'Hello World' });
46
+ </td>
47
+ </tr>
48
+ <tr>
49
+ <td width="50%">
47
50
 
48
- // Update
49
- await collection.updateOne({ id: article.id }, { $set: { status: 'published' } });
51
+ ### 🔐 Authentication
50
52
 
51
- // Delete
52
- await collection.deleteOne({ id: article.id });
53
- ```
53
+ - **IAM Roles** - Native AWS authentication
54
+ - **Cognito** - User pool integration
55
+ - **Custom Tokens** - Flexible auth strategies
56
+ - **OIDC + PKCE** - Secure browser flows
54
57
 
55
- ### Server Usage (Lambda Function)
58
+ </td>
59
+ <td width="50%">
56
60
 
57
- ```typescript
58
- import { createHandler } from '@exabugs/dynamodb-client/server/handler';
61
+ ### 🎨 Integrations
59
62
 
60
- export const handler = createHandler({
61
- tableName: process.env.TABLE_NAME!,
62
- region: process.env.AWS_REGION!,
63
- });
64
- ```
63
+ - **react-admin** - Admin UI out of the box
64
+ - **REST API** - Lambda Function URLs
65
+ - **Terraform** - Complete IaC modules
65
66
 
66
- ## Requirements
67
+ </td>
68
+ </tr>
69
+ </table>
67
70
 
68
- - Node.js >= 18.0.0
69
- - AWS Account (for DynamoDB and Lambda)
71
+ ---
70
72
 
71
- ## Development
73
+ ## 📦 Installation
72
74
 
73
75
  ```bash
74
- # Install dependencies
75
- npm install
76
+ # npm
77
+ npm install @exabugs/dynamodb-client
76
78
 
77
- # Run tests
78
- npm test
79
+ # pnpm (recommended)
80
+ pnpm add @exabugs/dynamodb-client
79
81
 
80
- # Run tests with coverage
81
- npm run test:coverage
82
+ # yarn
83
+ yarn add @exabugs/dynamodb-client
84
+ ```
82
85
 
83
- # Build
84
- npm run build
86
+ ---
85
87
 
86
- # Lint
87
- npm run lint
88
+ ## 🏗️ Architecture
88
89
 
89
- # Format
90
- npm run format
91
- ```
90
+ ```mermaid
91
+ graph TB
92
+ subgraph "Client Applications"
93
+ A[React Admin]
94
+ B[Mobile App]
95
+ C[Custom App]
96
+ end
92
97
 
93
- ### 主要コマンド
98
+ subgraph "AWS Lambda"
99
+ D[Lambda Function<br/>Function URL]
100
+ end
94
101
 
95
- ```bash
96
- # ヘルプを表示
97
- make help
98
-
99
- # 開発
100
- make install # 依存関係のインストール
101
- make build # 全パッケージとLambda関数のビルド
102
- make test # 全パッケージのテスト実行
103
- make lint # Lint実行
104
- make format # フォーマット実行
105
- make clean # ビルド成果物の削除
106
-
107
- # デプロイ
108
- make deploy-dev # dev環境にデプロイ
109
- make deploy-stg # stg環境にデプロイ
110
- make deploy-prd # prd環境にデプロイ
111
-
112
- # インフラ操作
113
- make infra-plan ENV=dev # Terraformプランを表示
114
- make infra-apply ENV=dev # Terraformを適用
115
- make infra-status # Terraform状態を表示
116
-
117
- # Lambda操作
118
- make invoke-fetch ENV=dev # Fetch Lambdaを実行
119
- make logs-fetch ENV=dev # Fetch Lambdaのログを表示
120
- make logs-records ENV=dev # Records Lambdaのログを表示
121
-
122
- # その他
123
- make shadow-config # shadow.config.jsonを再生成
102
+ subgraph "AWS DynamoDB"
103
+ E[(DynamoDB<br/>Single Table)]
104
+ end
105
+
106
+ A -->|HTTPS| D
107
+ B -->|HTTPS| D
108
+ C -->|HTTPS| D
109
+ D -->|AWS SDK| E
110
+
111
+ style A fill:#61dafb,stroke:#333,stroke-width:2px
112
+ style B fill:#61dafb,stroke:#333,stroke-width:2px
113
+ style C fill:#61dafb,stroke:#333,stroke-width:2px
114
+ style D fill:#ff9900,stroke:#333,stroke-width:2px
115
+ style E fill:#527fff,stroke:#333,stroke-width:2px
124
116
  ```
125
117
 
126
- ### 個別Makefileの使用
118
+ ---
127
119
 
128
- 各Lambda関数には個別のMakefileも用意されています:
120
+ ## 🚀 Quick Start & Examples
129
121
 
130
- ```bash
131
- # Fetch Lambda
132
- cd functions/fetch
133
- make help
134
- make build
135
- make deploy ENV=dev
136
- make invoke
137
- make logs
138
-
139
- # Terraform
140
- cd infra
141
- make help
142
- make plan ENV=dev
143
- make apply ENV=dev
144
- make status
122
+ Get started in 3 steps: **Schema Definition → Deploy Infrastructure → Use Client**
123
+
124
+ ### Complete Examples Available
125
+
126
+ We provide complete, working examples for every step:
127
+
128
+ | Example | What You'll Learn | Time |
129
+ | ------------------------------------------ | ---------------------------------------------------- | ------ |
130
+ | **[Schema](./examples/schema/)** | Define TypeScript schemas and generate shadow config | 5 min |
131
+ | **[Terraform](./examples/terraform/)** | Deploy Lambda + DynamoDB + Cognito to AWS | 10 min |
132
+ | **[Client](./examples/client/)** | Node.js CRUD operations with MongoDB-like API | 10 min |
133
+ | **[React Admin](./examples/react-admin/)** | Build complete admin UI with authentication | 15 min |
134
+
135
+ ### Quick Example
136
+
137
+ ```typescript
138
+ // 1. Define schema
139
+ export const MySchema: SchemaRegistryConfig = {
140
+ database: { name: 'myapp' },
141
+ resources: {
142
+ articles: {
143
+ resource: 'articles',
144
+ type: {} as Article,
145
+ shadows: { sortableFields: { title: { type: 'string' } } },
146
+ },
147
+ },
148
+ };
149
+
150
+ // 2. Deploy with Terraform (see examples/terraform/)
151
+ // terraform apply
152
+
153
+ // 3. Use the client
154
+ const client = new DynamoClient(FUNCTION_URL);
155
+ const articles = client.db().collection('articles');
156
+
157
+ await articles.insertOne({ title: 'Hello DynamoDB' });
158
+ const article = await articles.findOne({ title: 'Hello DynamoDB' });
145
159
  ```
146
160
 
147
- 詳細は[Makefile運用ガイドライン](.kiro/steering/makefile-operations.md)を参照してください。
161
+ ### 📚 Full Documentation
148
162
 
149
- ## Records Lambda
163
+ 👉 **[Complete Examples Guide →](./examples/)** - Step-by-step tutorials with full source code
150
164
 
151
- Records Lambdaは`@exabugs/dynamodb-client`ライブラリに統合されています。
165
+ Each example includes:
152
166
 
153
- 詳細は[packages/core/README.md](packages/core/README.md)を参照してください。
167
+ - ✅ Complete source code
168
+ - ✅ Step-by-step instructions
169
+ - ✅ Terraform integration
170
+ - ✅ Configuration templates
154
171
 
155
- ## ワークスペース構成
172
+ ---
156
173
 
157
- ```
158
- .
159
- ├── apps/ # アプリケーション (Admin UI, Mobile App)
160
- ├── functions/ # Lambda関数 (Fetch, Pipeline, Maintenance)
161
- ├── packages/ # 共有ライブラリ (core, shadows, graphql-types)
162
- │ └── core/ # Records Lambda(サーバー実装)を含む
163
- └── infra/ # Terraform設定
164
- ```
174
+ ## 📚 Documentation
165
175
 
166
- **注**: Records Lambdaは`packages/core/`に統合されています。
176
+ ### Available Documentation
167
177
 
168
- ## Admin UI 開発・デプロイ
178
+ - **[Architecture](docs/ARCHITECTURE.md)** - System architecture and design
179
+ - **[Client Usage](docs/CLIENT_USAGE.md)** - Client-side API guide
180
+ - **[React Admin Integration](docs/react-admin-integration.md)** - Admin UI setup
181
+ - **[Deployment](docs/DEPLOYMENT.md)** - Production deployment guide
182
+ - **[Terraform Modules](terraform/README.md)** - Infrastructure as Code
169
183
 
170
- ### ローカル開発
184
+ ### GitHub Actions
171
185
 
172
- ```bash
173
- # 開発サーバー起動
174
- pnpm --filter @ainews/admin dev
186
+ - **[GitHub Actions Setup](docs/GITHUB_ACTIONS_SETUP.md)** - CI/CD configuration
187
+ - **[Troubleshooting](docs/GITHUB_ACTIONS_TROUBLESHOOTING.md)** - Common issues and solutions
175
188
 
176
- # ブラウザで http://localhost:3000 にアクセス
177
- ```
189
+ ---
178
190
 
179
- ### 環境変数設定
191
+ ## 🛠️ Development
192
+
193
+ ### Prerequisites
194
+
195
+ - Node.js >= 18.0.0
196
+ - npm, pnpm, or yarn
197
+ - AWS Account (for deployment)
180
198
 
181
- `apps/admin/.env`ファイルを作成:
199
+ ### Setup
182
200
 
183
201
  ```bash
184
- # Records Lambda Function URL
185
- VITE_RECORDS_API_URL=https://xxxxx.lambda-url.us-east-1.on.aws/
202
+ # Clone repository
203
+ git clone https://github.com/exabugs/dynamodb-client.git
204
+ cd dynamodb-client
186
205
 
187
- # Cognito User Pool設定
188
- VITE_COGNITO_USER_POOL_ID=us-east-1_xxxxxxxxx
189
- VITE_COGNITO_USER_POOL_CLIENT_ID=xxxxxxxxxxxxxxxxxxxxxxxxxx
190
- VITE_COGNITO_DOMAIN=ainews-dev-auth.auth.us-east-1.amazoncognito.com
191
- VITE_COGNITO_REGION=us-east-1
206
+ # Install dependencies
207
+ npm install
192
208
 
193
- # 開発環境で認証を無効化する場合のみ(本番環境では必ずfalse)
194
- VITE_DISABLE_AUTH=false
209
+ # Run tests
210
+ npm test
211
+
212
+ # Build
213
+ npm run build
195
214
  ```
196
215
 
197
- ### 重要な設定
216
+ ### Available Commands
198
217
 
199
- **必須**: Admin UIは**BrowserRouter**を使用します。HashRouterは使用しないでください。
218
+ ```bash
219
+ npm test # Run tests
220
+ npm run test:coverage # Run tests with coverage
221
+ npm run lint # Lint code
222
+ npm run format # Format code
223
+ npm run build # Build package
224
+ npm run clean # Clean build artifacts
225
+ ```
200
226
 
201
- 理由:
227
+ ---
202
228
 
203
- - Cognito Hosted UIの認証コールバックがクエリパラメータ(`?code=xxx`)を使用
204
- - HashRouter(`#/`)ではクエリパラメータが正しく処理されない
229
+ ## 🚢 Deployment
205
230
 
206
- ### 本番デプロイ(CloudFront)
231
+ ### Using Terraform
207
232
 
208
- CloudFront経由で配信する場合、以下の設定が必要です:
233
+ ```bash
234
+ cd terraform
235
+ terraform init
236
+ terraform plan -var-file=envs/dev.tfvars
237
+ terraform apply -var-file=envs/dev.tfvars
238
+ ```
209
239
 
210
- 1. **エラーページ設定**: 404/403エラーを`/index.html`にリダイレクト(SPA対応)
211
- 2. **キャッシュ設定**:
212
- - `index.html`: キャッシュしない(TTL=0)
213
- - 静的アセット(JS/CSS/画像): 長期キャッシュ(TTL=7日〜1年)
214
- 3. **Cognitoコールバック URL**: 本番ドメインを追加
240
+ ### Using Make
215
241
 
216
- 詳細は[設計書](.kiro/specs/ainews-pipeline/design.md)の「Admin UI 重要な設定」セクションを参照してください。
242
+ ```bash
243
+ make deploy-dev # Deploy to dev environment
244
+ make deploy-stg # Deploy to staging
245
+ make deploy-prd # Deploy to production
246
+ ```
217
247
 
218
- ### トラブルシューティング
248
+ ---
219
249
 
220
- #### CORSエラーが発生する場合
250
+ ## 🤝 Contributing
221
251
 
222
- 1. **Lambda関数を最新版にデプロイ**:
252
+ We welcome contributions!
223
253
 
224
- ```bash
225
- cd functions/records
226
- pnpm build
227
- cd ../../infra
228
- terraform apply -var-file=envs/dev.tfvars
229
- ```
254
+ ### Development Workflow
230
255
 
231
- 2. **ブラウザのキャッシュをクリア**: Cmd+Shift+R (Mac) または Ctrl+Shift+R (Windows/Linux)
256
+ 1. Fork the repository
257
+ 2. Create a feature branch (`git checkout -b feature/amazing-feature`)
258
+ 3. Commit your changes (`git commit -m 'Add amazing feature'`)
259
+ 4. Push to the branch (`git push origin feature/amazing-feature`)
260
+ 5. Open a Pull Request
232
261
 
233
- 3. **Lambda Function URLのCORS設定を確認**: `infra/modules/api/lambda-records/main.tf`
262
+ ### Guidelines
234
263
 
235
- **重要**: Lambda Function URLのCORS設定を使用するため、Lambda関数のハンドラーではCORSヘッダーを設定しません。
264
+ - Follow the existing code style
265
+ - Add tests for new features
266
+ - Update documentation as needed
267
+ - Ensure all tests pass before submitting
236
268
 
237
- #### Cognito Hosted UIでログインできない場合
269
+ ---
238
270
 
239
- 1. **開発サーバーのポートを確認**: `http://localhost:3000` で起動していることを確認
240
- - Vite設定で `strictPort: true` が設定されているため、ポート3000が使用中の場合はエラーになります
241
- - 他のプロセスがポート3000を使用していないか確認してください
271
+ ## 📄 License
242
272
 
243
- 2. **Cognitoのコールバック/ログアウトURLを確認**: `infra/envs/dev.tfvars`
273
+ This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
244
274
 
245
- ```hcl
246
- admin_callback_urls = [
247
- "http://localhost:3000",
248
- "http://localhost:3000/callback",
249
- ...
250
- ]
251
- ```
275
+ ---
252
276
 
253
- 3. **ブラウザのローカルストレージをクリア**: 古いセッション情報が残っている可能性があります
277
+ ## 🙏 Acknowledgments
254
278
 
255
- ## ドキュメント
279
+ - Built with [AWS SDK for JavaScript](https://aws.amazon.com/sdk-for-javascript/)
280
+ - Inspired by [MongoDB](https://www.mongodb.com/) API design
281
+ - Powered by [TypeScript](https://www.typescriptlang.org/)
256
282
 
257
- 詳細な設計・要件については以下を参照してください:
283
+ ---
258
284
 
259
- - [要件定義書](.kiro/specs/ainews-pipeline/requirements.md)
260
- - [設計書](.kiro/specs/ainews-pipeline/design.md)
261
- - [実装タスクリスト](.kiro/specs/ainews-pipeline/tasks.md)
285
+ <div align="center">
262
286
 
263
- ## ライセンス
287
+ **[⬆ back to top](#-dynamodb-client-sdk)**
264
288
 
265
- MIT License - 詳細は [LICENSE](LICENSE) ファイルを参照してください。
289
+ Made with ❤️ by [exabugs](https://github.com/exabugs)
266
290
 
267
- Copyright (c) 2024 exabugs
291
+ </div>
@@ -11,9 +11,16 @@ import { FindCursor } from './FindCursor.js';
11
11
  */
12
12
  export type AuthHeadersGetter<TAuthOptions = unknown> = (endpoint: string, body: string, authOptions?: TAuthOptions) => Promise<Record<string, string>>;
13
13
  /**
14
- * コレクションのドキュメント型の基本インターフェース
14
+ * ドキュメント入力型の基本インターフェース(id はオプショナル)
15
15
  */
16
- export interface DocumentBase {
16
+ export interface InputBase {
17
+ id?: string;
18
+ [key: string]: unknown;
19
+ }
20
+ /**
21
+ * ドキュメント結果型の基本インターフェース(id は必須)
22
+ */
23
+ export interface ResultBase {
17
24
  id: string;
18
25
  [key: string]: unknown;
19
26
  }
@@ -23,10 +30,10 @@ export interface DocumentBase {
23
30
  * MongoDB風のCRUD操作を提供します。
24
31
  * 型安全なフィルタとクエリAPIでDynamoDBを操作できます。
25
32
  *
26
- * @template TSchema - コレクションのドキュメント型
33
+ * @template TSchema - コレクションのドキュメント型(ResultBase を extends)
27
34
  * @template TAuthOptions - 認証オプションの型
28
35
  */
29
- export declare class Collection<TSchema extends DocumentBase = DocumentBase, TAuthOptions = unknown> {
36
+ export declare class Collection<TSchema extends ResultBase = ResultBase, TAuthOptions = unknown> {
30
37
  private endpoint;
31
38
  private databaseName;
32
39
  private collectionName;
@@ -47,8 +54,8 @@ export declare class Collection<TSchema extends DocumentBase = DocumentBase, TAu
47
54
  find(filter?: Filter<TSchema>, options?: FindOptions): FindCursor<TSchema, TAuthOptions>;
48
55
  findOne(filter: Filter<TSchema>): Promise<TSchema | null>;
49
56
  findMany(ids: string[]): Promise<TSchema[]>;
50
- insertOne(document: TSchema): Promise<InsertOneResult>;
51
- insertMany(documents: TSchema[]): Promise<InsertManyResult>;
57
+ insertOne(document: InputBase & Omit<TSchema, 'id'>): Promise<InsertOneResult>;
58
+ insertMany(documents: (InputBase & Omit<TSchema, 'id'>)[]): Promise<InsertManyResult>;
52
59
  updateOne(filter: Filter<TSchema>, update: UpdateOperators<TSchema>): Promise<UpdateResult>;
53
60
  updateMany(filter: Filter<TSchema>, update: UpdateOperators<TSchema>): Promise<UpdateResult>;
54
61
  deleteOne(filter: Filter<TSchema>): Promise<DeleteResult>;
@@ -1 +1 @@
1
- {"version":3,"file":"Collection.d.ts","sourceRoot":"","sources":["../../src/client/Collection.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EACV,YAAY,EACZ,MAAM,EACN,WAAW,EACX,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,YAAY,EACb,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C;;GAEG;AACH,MAAM,MAAM,iBAAiB,CAAC,YAAY,GAAG,OAAO,IAAI,CACtD,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,EACZ,WAAW,CAAC,EAAE,YAAY,KACvB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;AAErC;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;;;;;;;GAQG;AACH,qBAAa,UAAU,CAAC,OAAO,SAAS,YAAY,GAAG,YAAY,EAAE,YAAY,GAAG,OAAO;IAEvF,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,YAAY;IACpB,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,WAAW;IACnB,OAAO,CAAC,aAAa;IACrB,OAAO,CAAC,cAAc;gBANd,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,EACpB,cAAc,EAAE,MAAM,EACtB,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,WAAW,EAAE,YAAY,GAAG,SAAS,EACrC,aAAa,EAAE,aAAa,GAAG,SAAS,EACxC,cAAc,EAAE,iBAAiB,CAAC,YAAY,CAAC;IAGzD,OAAO,IAAI,MAAM;IAIjB,WAAW,IAAI,MAAM;IAIrB,eAAe,IAAI,MAAM;IAIzB,YAAY,IAAI,MAAM,GAAG,SAAS;IAIlC,cAAc,IAAI,YAAY,GAAG,SAAS;IAI1C;;OAEG;YACW,OAAO;IAwDrB,IAAI,CAAC,MAAM,GAAE,MAAM,CAAC,OAAO,CAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,UAAU,CAAC,OAAO,EAAE,YAAY,CAAC;IActF,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAUzD,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAU3C,SAAS,CAAC,QAAQ,EAAE,OAAO,GAAG,OAAO,CAAC,eAAe,CAAC;IAStD,UAAU,CAAC,SAAS,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAmB3D,SAAS,CACb,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,EACvB,MAAM,EAAE,eAAe,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,YAAY,CAAC;IAelB,UAAU,CACd,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,EACvB,MAAM,EAAE,eAAe,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,YAAY,CAAC;IAkBlB,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC;IASzD,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC;CAUjE"}
1
+ {"version":3,"file":"Collection.d.ts","sourceRoot":"","sources":["../../src/client/Collection.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EACV,YAAY,EACZ,MAAM,EACN,WAAW,EACX,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,YAAY,EACb,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C;;GAEG;AACH,MAAM,MAAM,iBAAiB,CAAC,YAAY,GAAG,OAAO,IAAI,CACtD,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,EACZ,WAAW,CAAC,EAAE,YAAY,KACvB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;AAErC;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;;;;;;;GAQG;AACH,qBAAa,UAAU,CAAC,OAAO,SAAS,UAAU,GAAG,UAAU,EAAE,YAAY,GAAG,OAAO;IAEnF,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,YAAY;IACpB,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,WAAW;IACnB,OAAO,CAAC,aAAa;IACrB,OAAO,CAAC,cAAc;gBANd,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,EACpB,cAAc,EAAE,MAAM,EACtB,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,WAAW,EAAE,YAAY,GAAG,SAAS,EACrC,aAAa,EAAE,aAAa,GAAG,SAAS,EACxC,cAAc,EAAE,iBAAiB,CAAC,YAAY,CAAC;IAGzD,OAAO,IAAI,MAAM;IAIjB,WAAW,IAAI,MAAM;IAIrB,eAAe,IAAI,MAAM;IAIzB,YAAY,IAAI,MAAM,GAAG,SAAS;IAIlC,cAAc,IAAI,YAAY,GAAG,SAAS;IAI1C;;OAEG;YACW,OAAO;IAwDrB,IAAI,CAAC,MAAM,GAAE,MAAM,CAAC,OAAO,CAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,UAAU,CAAC,OAAO,EAAE,YAAY,CAAC;IActF,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAUzD,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAU3C,SAAS,CAAC,QAAQ,EAAE,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,eAAe,CAAC;IAS9E,UAAU,CAAC,SAAS,EAAE,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAmBrF,SAAS,CACb,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,EACvB,MAAM,EAAE,eAAe,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,YAAY,CAAC;IAelB,UAAU,CACd,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,EACvB,MAAM,EAAE,eAAe,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,YAAY,CAAC;IAkBlB,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC;IASzD,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC;CAUjE"}
@@ -5,7 +5,7 @@ import { FindCursor } from './FindCursor.js';
5
5
  * MongoDB風のCRUD操作を提供します。
6
6
  * 型安全なフィルタとクエリAPIでDynamoDBを操作できます。
7
7
  *
8
- * @template TSchema - コレクションのドキュメント型
8
+ * @template TSchema - コレクションのドキュメント型(ResultBase を extends)
9
9
  * @template TAuthOptions - 認証オプションの型
10
10
  */
11
11
  export class Collection {
@@ -1 +1 @@
1
- {"version":3,"file":"Collection.js","sourceRoot":"","sources":["../../src/client/Collection.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAmB7C;;;;;;;;GAQG;AACH,MAAM,OAAO,UAAU;IAEX;IACA;IACA;IACA;IACA;IACA;IACA;IAPV,YACU,QAAgB,EAChB,YAAoB,EACpB,cAAsB,EACtB,SAA6B,EAC7B,WAAqC,EACrC,aAAwC,EACxC,cAA+C;QAN/C,aAAQ,GAAR,QAAQ,CAAQ;QAChB,iBAAY,GAAZ,YAAY,CAAQ;QACpB,mBAAc,GAAd,cAAc,CAAQ;QACtB,cAAS,GAAT,SAAS,CAAoB;QAC7B,gBAAW,GAAX,WAAW,CAA0B;QACrC,kBAAa,GAAb,aAAa,CAA2B;QACxC,mBAAc,GAAd,cAAc,CAAiC;IACtD,CAAC;IAEJ,OAAO;QACL,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED,WAAW;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,eAAe;QACb,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED,YAAY;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,cAAc;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,OAAO,CAAC,SAAiB,EAAE,MAA+B;QACtE,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC;YACjC,SAAS;YACT,QAAQ,EAAE,IAAI,CAAC,YAAY;YAC3B,UAAU,EAAE,IAAI,CAAC,cAAc;YAC/B,MAAM;SACP,CAAC,CAAC;QAEH,IAAI,OAAO,GAA2B;YACpC,cAAc,EAAE,kBAAkB;SACnC,CAAC;QAEF,wBAAwB;QACxB,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAC5F,OAAO,GAAG,EAAE,GAAG,OAAO,EAAE,GAAG,WAAW,EAAE,CAAC;QAEzC,oCAAoC;QACpC,IAAI,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACxC,OAAO,CAAC,eAAe,CAAC,GAAG,UAAU,IAAI,CAAC,SAAS,EAAE,CAAC;QACxD,CAAC;QAED,WAAW;QACX,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;QACzC,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,EAAE,OAAO,IAAI,KAAK,CAAC;QACrD,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,OAAO,CAAC,CAAC;QAEhE,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE;gBAC1C,MAAM,EAAE,MAAM;gBACd,OAAO;gBACP,IAAI,EAAE,WAAW;gBACjB,MAAM,EAAE,UAAU,CAAC,MAAM;aAC1B,CAAC,CAAC;YAEH,YAAY,CAAC,SAAS,CAAC,CAAC;YAExB,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,KAAK,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC,CAEnF,CAAC;gBACF,MAAM,IAAI,KAAK,CAAC,mBAAmB,KAAK,CAAC,OAAO,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;YAC7E,CAAC;YAED,MAAM,MAAM,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAsB,CAAC;YAC5D,OAAO,MAAM,CAAC,IAAI,CAAC;QACrB,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,YAAY,CAAC,SAAS,CAAC,CAAC;YAExB,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;gBAC1D,MAAM,IAAI,KAAK,CAAC,yBAAyB,OAAO,IAAI,CAAC,CAAC;YACxD,CAAC;YAED,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED,IAAI,CAAC,SAA0B,EAAE,EAAE,OAAqB;QACtD,OAAO,IAAI,UAAU,CACnB,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,cAAc,EACnB,MAAM,EACN,OAAO,EACP,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,cAAc,CACpB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,MAAuB;QACnC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;QAC3D,oDAAoD;QACpD,qBAAqB;QACrB,IAAI,CAAC,QAAQ,IAAI,CAAC,OAAO,QAAQ,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC;YACtF,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,QAAmB,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,GAAa;QAC1B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC;QACjF,yBAAyB;QACzB,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5B,OAAO,QAAqB,CAAC;QAC/B,CAAC;QACD,MAAM,WAAW,GAAG,QAAiC,CAAC;QACtD,OAAO,WAAW,CAAC,KAAK,IAAI,EAAE,CAAC;IACjC,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,QAAiB;QAC/B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC/D,MAAM,MAAM,GAAG,QAAkC,CAAC;QAClD,OAAO;YACL,YAAY,EAAE,IAAI;YAClB,UAAU,EAAE,MAAM,CAAC,UAAU;SAC9B,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,SAAoB;QACnC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC;QACjE,mEAAmE;QACnE,iBAAiB;QACjB,MAAM,MAAM,GAAG,QAKd,CAAC;QACF,OAAO;YACL,YAAY,EAAE,IAAI;YAClB,aAAa,EAAE,MAAM,CAAC,KAAK,IAAI,CAAC;YAChC,WAAW,EAAE,MAAM,CAAC,UAAU,IAAI,EAAE;YACpC,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,MAAM,EAAE,MAAM,CAAC,MAAM;SACtB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,SAAS,CACb,MAAuB,EACvB,MAAgC;QAEhC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QACrE,MAAM,MAAM,GAAG,QAId,CAAC;QACF,OAAO;YACL,YAAY,EAAE,IAAI;YAClB,YAAY,EAAE,MAAM,CAAC,YAAY;YACjC,aAAa,EAAE,MAAM,CAAC,aAAa;YACnC,UAAU,EAAE,MAAM,CAAC,UAAU;SAC9B,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,UAAU,CACd,MAAuB,EACvB,MAAgC;QAEhC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QACtE,mEAAmE;QACnE,iBAAiB;QACjB,MAAM,MAAM,GAAG,QAId,CAAC;QACF,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;QACjE,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;QAC/D,OAAO;YACL,YAAY,EAAE,IAAI;YAClB,YAAY,EAAE,YAAY,GAAG,WAAW,EAAE,aAAa;YACvD,aAAa,EAAE,MAAM,CAAC,KAAK,IAAI,CAAC,EAAE,aAAa;SAChD,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,MAAuB;QACrC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;QAC7D,MAAM,MAAM,GAAG,QAAoC,CAAC;QACpD,OAAO;YACL,YAAY,EAAE,IAAI;YAClB,YAAY,EAAE,MAAM,CAAC,YAAY;SAClC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,MAAuB;QACtC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;QAC9D,mEAAmE;QACnE,iBAAiB;QACjB,MAAM,MAAM,GAAG,QAA8B,CAAC;QAC9C,OAAO;YACL,YAAY,EAAE,IAAI;YAClB,YAAY,EAAE,MAAM,CAAC,KAAK,IAAI,CAAC,EAAE,aAAa;SAC/C,CAAC;IACJ,CAAC;CACF"}
1
+ {"version":3,"file":"Collection.js","sourceRoot":"","sources":["../../src/client/Collection.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@
6
6
  */
7
7
  import { type ClientOptions as BaseClientOptions, DynamoClient as BaseDynamoClient } from './DynamoClient.js';
8
8
  export { Database } from './Database.js';
9
- export { Collection } from './Collection.js';
9
+ export { Collection, type InputBase, type ResultBase } from './Collection.js';
10
10
  export { FindCursor } from './FindCursor.js';
11
11
  /**
12
12
  * IAM認証オプション
@@ -1 +1 @@
1
- {"version":3,"file":"index.iam.d.ts","sourceRoot":"","sources":["../../src/client/index.iam.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EACL,KAAK,aAAa,IAAI,iBAAiB,EACvC,YAAY,IAAI,gBAAgB,EACjC,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,mBAAmB;IACnB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,aAAc,SAAQ,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACpF,kBAAkB;IAClB,IAAI,EAAE,cAAc,CAAC;CACtB;AAED;;;;;GAKG;AACH,qBAAa,YAAa,SAAQ,gBAAgB,CAAC,cAAc,CAAC;gBACpD,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa;CAQrD"}
1
+ {"version":3,"file":"index.iam.d.ts","sourceRoot":"","sources":["../../src/client/index.iam.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EACL,KAAK,aAAa,IAAI,iBAAiB,EACvC,YAAY,IAAI,gBAAgB,EACjC,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,KAAK,SAAS,EAAE,KAAK,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC9E,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,mBAAmB;IACnB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,aAAc,SAAQ,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACpF,kBAAkB;IAClB,IAAI,EAAE,cAAc,CAAC;CACtB;AAED;;;;;GAKG;AACH,qBAAa,YAAa,SAAQ,gBAAgB,CAAC,cAAc,CAAC;gBACpD,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa;CAQrD"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.iam.js","sourceRoot":"","sources":["../../src/client/index.iam.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAEL,YAAY,IAAI,gBAAgB,GACjC,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAkB7C;;;;;GAKG;AACH,MAAM,OAAO,YAAa,SAAQ,gBAAgC;IAChE,YAAY,QAAgB,EAAE,OAAsB;QAClD,KAAK,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,GAAW,EAAE,IAAY,EAAE,IAAqB,EAAE,EAAE;YAClF,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;YACnD,CAAC;YACD,OAAO,MAAM,WAAW,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACnD,CAAC,CAAC,CAAC;IACL,CAAC;CACF"}
1
+ {"version":3,"file":"index.iam.js","sourceRoot":"","sources":["../../src/client/index.iam.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAEL,YAAY,IAAI,gBAAgB,GACjC,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,UAAU,EAAmC,MAAM,iBAAiB,CAAC;AAC9E,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAkB7C;;;;;GAKG;AACH,MAAM,OAAO,YAAa,SAAQ,gBAAgC;IAChE,YAAY,QAAgB,EAAE,OAAsB;QAClD,KAAK,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,GAAW,EAAE,IAAY,EAAE,IAAqB,EAAE,EAAE;YAClF,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;YACnD,CAAC;YACD,OAAO,MAAM,WAAW,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACnD,CAAC,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -0,0 +1,16 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * Shadow Config 自動生成スクリプト
4
+ *
5
+ * TypeScript スキーマファイルから shadow.config.json を自動生成する。
6
+ * TypeScript のスキーマ定義が唯一の情報源(Single Source of Truth)となり、
7
+ * 設定ファイルとの不整合を防ぐ。
8
+ *
9
+ * 使用方法:
10
+ * npx generate-shadow-config <schema-file> -o <output-file>
11
+ *
12
+ * 例:
13
+ * npx generate-shadow-config schema.ts -o shadow.config.json
14
+ */
15
+ export {};
16
+ //# sourceMappingURL=generate-shadow-config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-shadow-config.d.ts","sourceRoot":"","sources":["../../src/scripts/generate-shadow-config.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;GAYG"}