@objectql/cli 4.1.0 → 4.2.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/README.md +47 -249
- package/dist/commands/doctor.d.ts +5 -1
- package/dist/commands/doctor.js +6 -13
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/migrate.js +3 -16
- package/dist/commands/migrate.js.map +1 -1
- package/dist/commands/repl.js +3 -18
- package/dist/commands/repl.js.map +1 -1
- package/dist/commands/sync.js +2 -19
- package/dist/commands/sync.js.map +1 -1
- package/dist/index.js +6 -2
- package/dist/index.js.map +1 -1
- package/dist/register/database.js +2 -2
- package/dist/register/database.js.map +1 -1
- package/dist/register/lifecycle.js +14 -26
- package/dist/register/lifecycle.js.map +1 -1
- package/dist/register/tools.js +4 -3
- package/dist/register/tools.js.map +1 -1
- package/dist/utils/config-loader.d.ts +22 -0
- package/dist/utils/config-loader.js +98 -0
- package/dist/utils/config-loader.js.map +1 -0
- package/dist/{commands/serve.d.ts → utils/objectstack-cli.d.ts} +2 -7
- package/dist/utils/objectstack-cli.js +42 -0
- package/dist/utils/objectstack-cli.js.map +1 -0
- package/package.json +9 -12
- package/templates/hello-world/CHANGELOG.md +8 -0
- package/templates/hello-world/package.json +1 -1
- package/templates/starter/CHANGELOG.md +10 -0
- package/templates/starter/package.json +2 -5
- package/templates/starter/tsconfig.json +1 -1
- package/dist/commands/dev.d.ts +0 -18
- package/dist/commands/dev.js +0 -118
- package/dist/commands/dev.js.map +0 -1
- package/dist/commands/init.d.ts +0 -16
- package/dist/commands/init.js +0 -210
- package/dist/commands/init.js.map +0 -1
- package/dist/commands/serve.js +0 -218
- package/dist/commands/serve.js.map +0 -1
- package/dist/commands/start.d.ts +0 -19
- package/dist/commands/start.js +0 -144
- package/dist/commands/start.js.map +0 -1
- package/templates/starter/jest.config.js +0 -33
package/README.md
CHANGED
|
@@ -12,174 +12,32 @@ pnpm add -D @objectql/cli
|
|
|
12
12
|
|
|
13
13
|
## Commands
|
|
14
14
|
|
|
15
|
-
###
|
|
15
|
+
### Lifecycle (Delegated to @objectstack/cli)
|
|
16
16
|
|
|
17
|
-
The
|
|
17
|
+
The following commands are now delegated to **@objectstack/cli**:
|
|
18
18
|
|
|
19
|
-
|
|
19
|
+
- `objectql init` → `objectstack create`
|
|
20
|
+
- `objectql dev` → `objectstack dev`
|
|
21
|
+
- `objectql start` → `objectstack serve`
|
|
22
|
+
- `objectql doctor` → `objectstack doctor`
|
|
20
23
|
|
|
21
|
-
|
|
24
|
+
You can use either `objectstack` or the short alias `os`:
|
|
22
25
|
|
|
23
26
|
```bash
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
objectql ai ./src/my-app
|
|
29
|
-
```
|
|
30
|
-
|
|
31
|
-
The interactive mode:
|
|
32
|
-
- Guides you step-by-step through application creation
|
|
33
|
-
- Lets you describe what you want in natural language
|
|
34
|
-
- Generates metadata, TypeScript implementations, and tests
|
|
35
|
-
- Allows iterative refinement through dialogue
|
|
36
|
-
- Provides suggestions for next steps
|
|
37
|
-
|
|
38
|
-
---
|
|
39
|
-
|
|
40
|
-
#### One-Shot Generation
|
|
41
|
-
|
|
42
|
-
For quick, non-interactive generation from a single description.
|
|
43
|
-
|
|
44
|
-
```bash
|
|
45
|
-
# Generate from a description
|
|
46
|
-
objectql ai generate -d "A task management system with projects and tasks"
|
|
47
|
-
|
|
48
|
-
# Generate complete enterprise application
|
|
49
|
-
objectql ai generate -d "CRM with customers, contacts, opportunities" -t complete -o ./src
|
|
50
|
-
|
|
51
|
-
# Generation types: basic, complete, custom (default)
|
|
52
|
-
objectql ai generate -d "Inventory system" -t complete
|
|
53
|
-
```
|
|
54
|
-
|
|
55
|
-
**Options:**
|
|
56
|
-
- `-d, --description <text>` - Application description (required)
|
|
57
|
-
- `-o, --output <path>` - Output directory [default: "./src"]
|
|
58
|
-
- `-t, --type <type>` - Generation type: basic, complete, or custom [default: "custom"]
|
|
59
|
-
|
|
60
|
-
**Generates:**
|
|
61
|
-
- ObjectQL metadata (objects, forms, views, pages, menus, etc.)
|
|
62
|
-
- TypeScript implementations for actions and hooks
|
|
63
|
-
- Jest test files for business logic validation
|
|
64
|
-
|
|
65
|
-
---
|
|
66
|
-
|
|
67
|
-
#### Validation
|
|
68
|
-
|
|
69
|
-
Validate metadata files using AI for compliance and best practices.
|
|
70
|
-
|
|
71
|
-
```bash
|
|
72
|
-
# Validate all metadata files
|
|
73
|
-
objectql ai validate ./src
|
|
74
|
-
|
|
75
|
-
# Validate with detailed output
|
|
76
|
-
objectql ai validate ./src -v
|
|
77
|
-
|
|
78
|
-
# Validate and auto-fix issues
|
|
79
|
-
objectql ai validate ./src --fix
|
|
80
|
-
```
|
|
81
|
-
|
|
82
|
-
**Options:**
|
|
83
|
-
- `<path>` - Path to metadata directory (required)
|
|
84
|
-
- `--fix` - Automatically fix issues where possible
|
|
85
|
-
- `-v, --verbose` - Show detailed validation output
|
|
86
|
-
|
|
87
|
-
**Checks:**
|
|
88
|
-
- YAML syntax validation
|
|
89
|
-
- ObjectQL specification compliance
|
|
90
|
-
- Business logic consistency
|
|
91
|
-
- Data model best practices
|
|
92
|
-
- Security and performance analysis
|
|
93
|
-
- Falls back to basic validation if no API key is set
|
|
94
|
-
|
|
95
|
-
---
|
|
96
|
-
|
|
97
|
-
#### Chat Assistant
|
|
98
|
-
|
|
99
|
-
Interactive AI assistant for ObjectQL questions and guidance.
|
|
100
|
-
|
|
101
|
-
```bash
|
|
102
|
-
# Start chat assistant
|
|
103
|
-
objectql ai chat
|
|
104
|
-
|
|
105
|
-
# Start with an initial question
|
|
106
|
-
objectql ai chat -p "How do I create a lookup relationship?"
|
|
107
|
-
```
|
|
108
|
-
|
|
109
|
-
**Options:**
|
|
110
|
-
- `-p, --prompt <text>` - Initial prompt for the AI
|
|
111
|
-
|
|
112
|
-
---
|
|
113
|
-
|
|
114
|
-
#### Complete Example Workflow
|
|
115
|
-
|
|
116
|
-
```bash
|
|
117
|
-
# Set your API key
|
|
118
|
-
export OPENAI_API_KEY=sk-your-api-key-here
|
|
119
|
-
|
|
120
|
-
# Option 1: Interactive (recommended) - Just type this!
|
|
121
|
-
objectql ai
|
|
122
|
-
|
|
123
|
-
# Option 2: Quick one-shot generation
|
|
124
|
-
objectql ai generate -d "Project management with tasks and milestones" -t complete
|
|
125
|
-
|
|
126
|
-
# Validate the generated files
|
|
127
|
-
objectql ai validate ./src -v
|
|
128
|
-
|
|
129
|
-
# Get help with questions
|
|
130
|
-
objectql ai chat -p "How do I add email notifications?"
|
|
131
|
-
```
|
|
132
|
-
|
|
133
|
-
---
|
|
134
|
-
|
|
135
|
-
### Prerequisites
|
|
136
|
-
|
|
137
|
-
For AI-powered features, set your OpenAI API key:
|
|
138
|
-
|
|
139
|
-
```bash
|
|
140
|
-
export OPENAI_API_KEY=sk-your-api-key-here
|
|
27
|
+
npx objectstack dev
|
|
28
|
+
npx os serve
|
|
29
|
+
npx objectstack doctor
|
|
30
|
+
npx objectstack create
|
|
141
31
|
```
|
|
142
32
|
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
---
|
|
146
|
-
|
|
147
|
-
### Project Initialization
|
|
148
|
-
|
|
149
|
-
#### `init`
|
|
150
|
-
|
|
151
|
-
Create a new ObjectQL project from a template.
|
|
152
|
-
|
|
153
|
-
```bash
|
|
154
|
-
# Interactive mode (prompts for options)
|
|
155
|
-
objectql init
|
|
156
|
-
|
|
157
|
-
# With options
|
|
158
|
-
objectql init --template basic --name my-project
|
|
33
|
+
### Metadata & Tooling (This CLI)
|
|
159
34
|
|
|
160
|
-
|
|
161
|
-
objectql init -t express-api -n my-api-server
|
|
35
|
+
This CLI focuses on metadata scaffolding, type generation, database workflows, i18n, and local tooling:
|
|
162
36
|
|
|
163
|
-
|
|
164
|
-
|
|
37
|
+
- `generate`, `new`, `db push`, `db pull`, `migrate`
|
|
38
|
+
- `i18n extract`, `i18n init`, `i18n validate`
|
|
39
|
+
- `lint`, `format`, `repl`, `test`, `build`
|
|
165
40
|
|
|
166
|
-
# Skip git initialization
|
|
167
|
-
objectql init --skip-git
|
|
168
|
-
```
|
|
169
|
-
|
|
170
|
-
**Options:**
|
|
171
|
-
- `-t, --template <template>` - Template to use (basic, express-api, enterprise) [default: "basic"]
|
|
172
|
-
- `-n, --name <name>` - Project name
|
|
173
|
-
- `-d, --dir <path>` - Target directory
|
|
174
|
-
- `--skip-install` - Skip dependency installation
|
|
175
|
-
- `--skip-git` - Skip git initialization
|
|
176
|
-
|
|
177
|
-
**Templates:**
|
|
178
|
-
- **basic** - Minimal setup with basic examples
|
|
179
|
-
- **express-api** - Express.js server with REST API
|
|
180
|
-
- **enterprise** - Full-featured enterprise application structure
|
|
181
|
-
|
|
182
|
-
---
|
|
183
41
|
|
|
184
42
|
### Metadata Generation
|
|
185
43
|
|
|
@@ -315,14 +173,14 @@ Run pending database migrations.
|
|
|
315
173
|
objectql migrate
|
|
316
174
|
|
|
317
175
|
# Specify custom config file
|
|
318
|
-
objectql migrate --config ./config/
|
|
176
|
+
objectql migrate --config ./config/objectstack.config.ts
|
|
319
177
|
|
|
320
178
|
# Custom migrations directory
|
|
321
179
|
objectql migrate --dir ./db/migrations
|
|
322
180
|
```
|
|
323
181
|
|
|
324
182
|
**Options:**
|
|
325
|
-
- `-c, --config <path>` - Path to
|
|
183
|
+
- `-c, --config <path>` - Path to objectstack.config.ts/js
|
|
326
184
|
- `-d, --dir <path>` - Migrations directory [default: "./migrations"]
|
|
327
185
|
|
|
328
186
|
#### `migrate create <name>`
|
|
@@ -349,11 +207,11 @@ Show migration status (pending vs. completed).
|
|
|
349
207
|
objectql migrate status
|
|
350
208
|
|
|
351
209
|
# With custom config
|
|
352
|
-
objectql migrate status --config ./config/
|
|
210
|
+
objectql migrate status --config ./config/objectstack.config.ts
|
|
353
211
|
```
|
|
354
212
|
|
|
355
213
|
**Options:**
|
|
356
|
-
- `-c, --config <path>` - Path to
|
|
214
|
+
- `-c, --config <path>` - Path to objectstack.config.ts/js
|
|
357
215
|
- `-d, --dir <path>` - Migrations directory [default: "./migrations"]
|
|
358
216
|
|
|
359
217
|
#### `sync`
|
|
@@ -377,11 +235,11 @@ objectql sync --output ./src/metadata/objects
|
|
|
377
235
|
objectql sync --force
|
|
378
236
|
|
|
379
237
|
# With custom config file
|
|
380
|
-
objectql sync --config ./config/
|
|
238
|
+
objectql sync --config ./config/objectstack.config.ts
|
|
381
239
|
```
|
|
382
240
|
|
|
383
241
|
**Options:**
|
|
384
|
-
- `-c, --config <path>` - Path to
|
|
242
|
+
- `-c, --config <path>` - Path to objectstack.config.ts/js
|
|
385
243
|
- `-o, --output <path>` - Output directory for .object.yml files [default: "./src/objects"]
|
|
386
244
|
- `-t, --tables <tables...>` - Specific tables to sync (default: all tables)
|
|
387
245
|
- `-f, --force` - Overwrite existing .object.yml files
|
|
@@ -433,54 +291,26 @@ fields:
|
|
|
433
291
|
|
|
434
292
|
### Development Tools
|
|
435
293
|
|
|
436
|
-
#### `dev`
|
|
294
|
+
#### `dev`
|
|
437
295
|
|
|
438
|
-
|
|
296
|
+
Development server is delegated to **@objectstack/cli**:
|
|
439
297
|
|
|
440
298
|
```bash
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
# Specify options
|
|
445
|
-
objectql dev --dir ./src --port 8080
|
|
446
|
-
|
|
447
|
-
# Disable file watching
|
|
448
|
-
objectql dev --no-watch
|
|
299
|
+
npx objectstack dev
|
|
300
|
+
# or
|
|
301
|
+
npx os dev
|
|
449
302
|
```
|
|
450
303
|
|
|
451
|
-
The development server provides:
|
|
452
|
-
- **API Docs (Scalar)**: `http://localhost:<port>/docs` - Interactive API documentation
|
|
453
|
-
- **API Endpoint**: `http://localhost:<port>/` - Main API endpoint
|
|
454
|
-
- **OpenAPI Spec**: `http://localhost:<port>/openapi.json` - Machine-readable API spec
|
|
455
|
-
|
|
456
|
-
**Options:**
|
|
457
|
-
- `-p, --port <number>` - Port to listen on [default: "3000"]
|
|
458
|
-
- `-d, --dir <path>` - Directory containing schema [default: "."]
|
|
459
|
-
- `--no-watch` - Disable file watching (future feature)
|
|
460
|
-
|
|
461
304
|
#### `start`
|
|
462
305
|
|
|
463
|
-
|
|
306
|
+
Production server is delegated to **@objectstack/cli**:
|
|
464
307
|
|
|
465
308
|
```bash
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
# Specify options
|
|
470
|
-
objectql start --port 8080 --dir ./dist
|
|
471
|
-
|
|
472
|
-
# Use custom config file
|
|
473
|
-
objectql start --config ./config/production.config.ts
|
|
309
|
+
npx objectstack serve
|
|
310
|
+
# or
|
|
311
|
+
npx os serve
|
|
474
312
|
```
|
|
475
313
|
|
|
476
|
-
**Options:**
|
|
477
|
-
- `-p, --port <number>` - Port to listen on [default: "3000"]
|
|
478
|
-
- `-d, --dir <path>` - Directory containing schema [default: "."]
|
|
479
|
-
- `-c, --config <path>` - Path to objectql.config.ts/js
|
|
480
|
-
|
|
481
|
-
**Environment Variables:**
|
|
482
|
-
- `DATABASE_FILE` - Path to SQLite database file (default: "./objectql.db")
|
|
483
|
-
|
|
484
314
|
#### `build` (alias: `b`)
|
|
485
315
|
|
|
486
316
|
Build project and prepare for production deployment. Validates metadata, generates TypeScript types, and copies files to dist folder.
|
|
@@ -587,27 +417,15 @@ objectql format --check
|
|
|
587
417
|
- Tab width: 2 spaces
|
|
588
418
|
- Single quotes for strings
|
|
589
419
|
|
|
590
|
-
#### `serve`
|
|
420
|
+
#### `serve`
|
|
591
421
|
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
Start a lightweight development server with an in-memory database. Perfect for rapid prototyping without setting up a backend project.
|
|
422
|
+
Production server is delegated to **@objectstack/cli**:
|
|
595
423
|
|
|
596
424
|
```bash
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
# Specify options
|
|
601
|
-
objectql serve --dir ./src/schema --port 8080
|
|
425
|
+
npx objectstack serve
|
|
426
|
+
# or
|
|
427
|
+
npx os serve
|
|
602
428
|
```
|
|
603
|
-
|
|
604
|
-
The server exposes:
|
|
605
|
-
- **Web Console (API Docs)**: `http://localhost:<port>/docs` (GET) - Interactive API explorer
|
|
606
|
-
- **JSON API Endpoint**: `http://localhost:<port>/` (POST)
|
|
607
|
-
- **OpenAPI Spec**: `http://localhost:<port>/openapi.json` (GET)
|
|
608
|
-
|
|
609
|
-
**Options:**
|
|
610
|
-
- `-p, --port <number>` - Port to listen on [default: "3000"]
|
|
611
429
|
- `-d, --dir <path>` - Directory containing schema [default: "."]
|
|
612
430
|
|
|
613
431
|
#### `repl` (alias: `r`)
|
|
@@ -619,11 +437,11 @@ Start an interactive shell to query your data.
|
|
|
619
437
|
objectql repl
|
|
620
438
|
|
|
621
439
|
# Use custom config
|
|
622
|
-
objectql repl --config ./
|
|
440
|
+
objectql repl --config ./objectstack.config.ts
|
|
623
441
|
```
|
|
624
442
|
|
|
625
443
|
**Options:**
|
|
626
|
-
- `-c, --config <path>` - Path to
|
|
444
|
+
- `-c, --config <path>` - Path to objectstack.config.ts/js
|
|
627
445
|
|
|
628
446
|
**Example REPL session:**
|
|
629
447
|
```javascript
|
|
@@ -632,35 +450,13 @@ objectql> await tasks.insert({ name: 'New Task', status: 'open' })
|
|
|
632
450
|
objectql> await tasks.update({ _id: '123' }, { status: 'completed' })
|
|
633
451
|
```
|
|
634
452
|
|
|
635
|
-
#### `studio` (alias: `ui`)
|
|
636
|
-
|
|
637
|
-
Start the ObjectQL Studio - a web-based admin interface.
|
|
638
|
-
|
|
639
|
-
```bash
|
|
640
|
-
# Start studio
|
|
641
|
-
objectql studio
|
|
642
|
-
|
|
643
|
-
# Custom port and directory
|
|
644
|
-
objectql studio --port 8080 --dir ./src
|
|
645
|
-
|
|
646
|
-
# Don't open browser automatically
|
|
647
|
-
objectql studio --no-open
|
|
648
|
-
```
|
|
649
|
-
|
|
650
|
-
**Options:**
|
|
651
|
-
- `-p, --port <number>` - Port to listen on [default: "3000"]
|
|
652
|
-
- `-d, --dir <path>` - Directory containing schema [default: "."]
|
|
653
|
-
- `--no-open` - Do not open browser automatically
|
|
654
|
-
|
|
655
|
-
---
|
|
656
|
-
|
|
657
453
|
## Typical Workflows
|
|
658
454
|
|
|
659
455
|
### Starting a New Project
|
|
660
456
|
|
|
661
457
|
```bash
|
|
662
|
-
# 1. Create project
|
|
663
|
-
|
|
458
|
+
# 1. Create project
|
|
459
|
+
npx objectstack create
|
|
664
460
|
|
|
665
461
|
# 2. Navigate to project
|
|
666
462
|
cd my-app
|
|
@@ -669,7 +465,7 @@ cd my-app
|
|
|
669
465
|
pnpm install
|
|
670
466
|
|
|
671
467
|
# 4. Start development
|
|
672
|
-
|
|
468
|
+
npx objectstack dev
|
|
673
469
|
```
|
|
674
470
|
|
|
675
471
|
### Adding New Functionality
|
|
@@ -727,10 +523,10 @@ objectql migrate
|
|
|
727
523
|
|
|
728
524
|
## Configuration File
|
|
729
525
|
|
|
730
|
-
Most commands expect an `
|
|
526
|
+
Most commands expect an `objectstack.config.ts` or `objectstack.config.js` file in your project root:
|
|
731
527
|
|
|
732
528
|
```typescript
|
|
733
|
-
//
|
|
529
|
+
// objectstack.config.ts
|
|
734
530
|
import { ObjectQL } from '@objectql/core';
|
|
735
531
|
import { SqlDriver } from '@objectql/driver-sql';
|
|
736
532
|
import { ObjectLoader } from '@objectql/platform-node';
|
|
@@ -761,7 +557,6 @@ export default app;
|
|
|
761
557
|
Some commands support environment variables for configuration:
|
|
762
558
|
|
|
763
559
|
- `OBJECTQL_CONFIG` - Path to config file
|
|
764
|
-
- `OBJECTQL_PORT` - Default port for serve/studio commands
|
|
765
560
|
- `OBJECTQL_DB_URL` - Database connection string
|
|
766
561
|
|
|
767
562
|
---
|
|
@@ -773,9 +568,12 @@ Some commands support environment variables for configuration:
|
|
|
773
568
|
objectql --help
|
|
774
569
|
|
|
775
570
|
# Show help for specific command
|
|
776
|
-
objectql
|
|
571
|
+
objectql generate --help
|
|
777
572
|
objectql i18n extract --help
|
|
778
573
|
objectql migrate --help
|
|
574
|
+
|
|
575
|
+
# ObjectStack CLI lifecycle help
|
|
576
|
+
objectstack --help
|
|
779
577
|
```
|
|
780
578
|
|
|
781
579
|
---
|
|
@@ -5,7 +5,11 @@
|
|
|
5
5
|
* This source code is licensed under the MIT license found in the
|
|
6
6
|
* LICENSE file in the root directory of this source tree.
|
|
7
7
|
*/
|
|
8
|
-
|
|
8
|
+
interface DoctorOptions {
|
|
9
|
+
cwd?: string;
|
|
10
|
+
}
|
|
11
|
+
export declare function doctorCommand(options?: DoctorOptions): Promise<void>;
|
|
9
12
|
export declare function validateCommand(options: {
|
|
10
13
|
dir?: string;
|
|
11
14
|
}): Promise<void>;
|
|
15
|
+
export {};
|
package/dist/commands/doctor.js
CHANGED
|
@@ -49,9 +49,11 @@ const chalk_1 = __importDefault(require("chalk"));
|
|
|
49
49
|
const fs = __importStar(require("fs"));
|
|
50
50
|
const path = __importStar(require("path"));
|
|
51
51
|
const child_process_1 = require("child_process");
|
|
52
|
-
|
|
52
|
+
const config_loader_1 = require("../utils/config-loader");
|
|
53
|
+
async function doctorCommand(options = {}) {
|
|
53
54
|
console.log(chalk_1.default.blue('🩺 ObjectQL Doctor'));
|
|
54
55
|
console.log(chalk_1.default.gray('Checking environment health...\n'));
|
|
56
|
+
const cwd = options.cwd || process.cwd();
|
|
55
57
|
let hasErrors = false;
|
|
56
58
|
let hasWarnings = false;
|
|
57
59
|
// 1. Check Node Version
|
|
@@ -85,12 +87,7 @@ async function doctorCommand() {
|
|
|
85
87
|
hasWarnings = true;
|
|
86
88
|
}
|
|
87
89
|
// 3. Check Configuration
|
|
88
|
-
const configPaths = [
|
|
89
|
-
'objectql.config.ts',
|
|
90
|
-
'objectql.config.js',
|
|
91
|
-
'src/objectql.config.ts',
|
|
92
|
-
'src/objectql.config.js'
|
|
93
|
-
];
|
|
90
|
+
const configPaths = [...config_loader_1.CONFIG_SEARCH_PATHS];
|
|
94
91
|
let configFound = false;
|
|
95
92
|
for (const configPath of configPaths) {
|
|
96
93
|
if (fs.existsSync(configPath)) {
|
|
@@ -100,11 +97,11 @@ async function doctorCommand() {
|
|
|
100
97
|
}
|
|
101
98
|
}
|
|
102
99
|
if (!configFound) {
|
|
103
|
-
console.log(`${chalk_1.default.yellow('⚠')} Configuration: ${chalk_1.default.yellow('No objectql.config file found')}`);
|
|
100
|
+
console.log(`${chalk_1.default.yellow('⚠')} Configuration: ${chalk_1.default.yellow('No objectstack.config / objectql.config file found')}`);
|
|
104
101
|
hasWarnings = true;
|
|
105
102
|
}
|
|
106
103
|
// 4. Check package.json
|
|
107
|
-
const packageJsonPath = path.join(
|
|
104
|
+
const packageJsonPath = path.join(cwd, 'package.json');
|
|
108
105
|
if (fs.existsSync(packageJsonPath)) {
|
|
109
106
|
console.log(`${chalk_1.default.green('✓')} package.json: ${chalk_1.default.green('Found')}`);
|
|
110
107
|
try {
|
|
@@ -279,8 +276,4 @@ async function validateCommand(options) {
|
|
|
279
276
|
// This would invoke the core validator
|
|
280
277
|
console.log(chalk_1.default.gray('Feature coming soon: Will validate all .object.yml files against schema.'));
|
|
281
278
|
}
|
|
282
|
-
async function loadObjectQLInstance(configPath) {
|
|
283
|
-
// Placeholder for actual loader logic if not exported from elsewhere
|
|
284
|
-
return {};
|
|
285
|
-
}
|
|
286
279
|
//# sourceMappingURL=doctor.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/migrate.js
CHANGED
|
@@ -49,6 +49,7 @@ exports.migrateStatus = migrateStatus;
|
|
|
49
49
|
const fs = __importStar(require("fs"));
|
|
50
50
|
const path = __importStar(require("path"));
|
|
51
51
|
const chalk_1 = __importDefault(require("chalk"));
|
|
52
|
+
const config_loader_1 = require("../utils/config-loader");
|
|
52
53
|
const MIGRATION_TEMPLATE = `import { ObjectQL } from '@objectql/core';
|
|
53
54
|
|
|
54
55
|
/**
|
|
@@ -247,21 +248,7 @@ async function migrateStatus(options) {
|
|
|
247
248
|
}
|
|
248
249
|
}
|
|
249
250
|
async function loadObjectQLInstance(configPath) {
|
|
250
|
-
const
|
|
251
|
-
// Try to load from config file
|
|
252
|
-
let configFile = configPath;
|
|
253
|
-
if (!configFile) {
|
|
254
|
-
const potentialFiles = ['objectql.config.ts', 'objectql.config.js'];
|
|
255
|
-
for (const file of potentialFiles) {
|
|
256
|
-
if (fs.existsSync(path.join(cwd, file))) {
|
|
257
|
-
configFile = file;
|
|
258
|
-
break;
|
|
259
|
-
}
|
|
260
|
-
}
|
|
261
|
-
}
|
|
262
|
-
if (!configFile) {
|
|
263
|
-
throw new Error('No configuration file found (objectql.config.ts/js)');
|
|
264
|
-
}
|
|
251
|
+
const configFile = (0, config_loader_1.resolveConfigFile)(configPath);
|
|
265
252
|
// Register ts-node for TypeScript support
|
|
266
253
|
try {
|
|
267
254
|
require('ts-node').register({
|
|
@@ -274,7 +261,7 @@ async function loadObjectQLInstance(configPath) {
|
|
|
274
261
|
catch (err) {
|
|
275
262
|
// ts-node not available, try to load JS directly
|
|
276
263
|
}
|
|
277
|
-
const configModule = require(
|
|
264
|
+
const configModule = require(configFile);
|
|
278
265
|
const app = configModule.default || configModule.app || configModule.objectql || configModule.db;
|
|
279
266
|
if (!app) {
|
|
280
267
|
throw new Error('Config file must export an ObjectQL instance');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrate.js","sourceRoot":"","sources":["../../src/commands/migrate.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"migrate.js","sourceRoot":"","sources":["../../src/commands/migrate.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/repl.js
CHANGED
|
@@ -42,10 +42,9 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
42
42
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
43
43
|
exports.startRepl = startRepl;
|
|
44
44
|
const repl = __importStar(require("repl"));
|
|
45
|
-
const path = __importStar(require("path"));
|
|
46
|
-
const fs = __importStar(require("fs"));
|
|
47
45
|
const core_1 = require("@objectql/core");
|
|
48
46
|
const ts_node_1 = require("ts-node");
|
|
47
|
+
const config_loader_1 = require("../utils/config-loader");
|
|
49
48
|
async function startRepl(configPath) {
|
|
50
49
|
const cwd = process.cwd();
|
|
51
50
|
// Register ts-node to handle TS config loading
|
|
@@ -56,24 +55,10 @@ async function startRepl(configPath) {
|
|
|
56
55
|
}
|
|
57
56
|
});
|
|
58
57
|
// 1. Resolve Config File
|
|
59
|
-
|
|
60
|
-
if (!configFile) {
|
|
61
|
-
const potentialFiles = ['objectql.config.ts', 'objectql.config.js'];
|
|
62
|
-
for (const file of potentialFiles) {
|
|
63
|
-
if (fs.existsSync(path.join(cwd, file))) {
|
|
64
|
-
configFile = file;
|
|
65
|
-
break;
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
if (!configFile) {
|
|
70
|
-
console.error("❌ No configuration file found (objectql.config.ts/js).");
|
|
71
|
-
console.log("Please create one that exports an ObjectQL instance.");
|
|
72
|
-
process.exit(1);
|
|
73
|
-
}
|
|
58
|
+
const configFile = (0, config_loader_1.resolveConfigFile)(configPath, cwd);
|
|
74
59
|
console.log(`🚀 Loading configuration from ${configFile}...`);
|
|
75
60
|
try {
|
|
76
|
-
const configModule = require(
|
|
61
|
+
const configModule = require(configFile);
|
|
77
62
|
// Support default export or named export 'app' or 'objectql' or 'db'
|
|
78
63
|
const app = configModule.default || configModule.app || configModule.objectql || configModule.db;
|
|
79
64
|
if (!(app instanceof core_1.ObjectQL)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"repl.js","sourceRoot":"","sources":["../../src/commands/repl.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"repl.js","sourceRoot":"","sources":["../../src/commands/repl.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASH,8BAkGC;AAzGD,2CAA6B;AAG7B,yCAA0C;AAC1C,qCAAmC;AACnC,0DAA2D;AAEpD,KAAK,UAAU,SAAS,CAAC,UAAmB;IAC/C,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAE1B,+CAA+C;IAC/C,IAAA,kBAAQ,EAAC;QACL,aAAa,EAAE,IAAI;QACnB,eAAe,EAAE;YACb,MAAM,EAAE,UAAU;SACrB;KACJ,CAAC,CAAC;IAEH,yBAAyB;IACzB,MAAM,UAAU,GAAG,IAAA,iCAAiB,EAAC,UAAU,EAAE,GAAG,CAAC,CAAC;IAEtD,OAAO,CAAC,GAAG,CAAC,iCAAiC,UAAU,KAAK,CAAC,CAAC;IAE9D,IAAI,CAAC;QACD,MAAM,YAAY,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;QACzC,qEAAqE;QACrE,MAAM,GAAG,GAAG,YAAY,CAAC,OAAO,IAAI,YAAY,CAAC,GAAG,IAAI,YAAY,CAAC,QAAQ,IAAI,YAAY,CAAC,EAAE,CAAC;QAEjG,IAAI,CAAC,CAAC,GAAG,YAAY,eAAQ,CAAC,EAAE,CAAC;YAC7B,OAAO,CAAC,KAAK,CAAC,mFAAmF,CAAC,CAAC;YACnG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC;QAED,mBAAmB;QACnB,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;QACjB,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;QAEvC,gBAAgB;QAChB,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC;YACjB,MAAM,EAAE,YAAY;YACpB,SAAS,EAAE,IAAI;SAClB,CAAC,CAAC;QAEH,iCAAiC;QACjC,MAAM,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC;QAC1B,CAAS,CAAC,IAAI,GAAG,CAAC,GAAW,EAAE,OAAY,EAAE,QAAgB,EAAE,QAAa,EAAE,EAAE;YAC7E,WAAW,CAAC,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAiB,EAAE,MAAW,EAAE,EAAE;gBACjF,IAAI,GAAG;oBAAE,OAAO,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;gBACpC,IAAI,MAAM,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;oBAC9C,IAAI,CAAC;wBACD,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC;wBAC3B,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;oBAC1B,CAAC;oBAAC,OAAO,CAAM,EAAE,CAAC;wBACd,QAAQ,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;oBACtB,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACJ,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;gBAC3B,CAAC;YACL,CAAC,CAAC,CAAC;QACP,CAAC,CAAC;QAEF,oBAAoB;QACpB,CAAC,CAAC,OAAO,CAAC,GAAG,GAAG,GAAG,CAAC;QACpB,CAAC,CAAC,OAAO,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,eAAe;QACnC,CAAC,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAEzD,mFAAmF;QACnF,MAAM,OAAO,GAAG,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC5C,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;YACxB,gEAAgE;YAChE,IAAI,4BAA4B,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC9C,kEAAkE;gBAClE,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,OAAO,EAAE,GAAG,CAAC,IAAI,EAAE;oBACvC,GAAG,EAAE,GAAG,EAAE;wBACN,4CAA4C;wBAC5C,6FAA6F;wBAC7F,uFAAuF;wBACvF,MAAM,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;wBAEvD,MAAM,WAAW,GAAQ;4BACrB,KAAK,EAAE,CAAC,OAAO,CAAC;4BAChB,QAAQ,EAAE,IAAI;4BACd,MAAM,EAAE,MAAM;yBACjB,CAAC;wBAEF,WAAW,CAAC,MAAM,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,IAAI,gBAAgB,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,CAAC,CAAC;wBAC9E,WAAW,CAAC,WAAW,GAAG,KAAK,EAAE,EAAO,EAAE,EAAE,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC;wBAC7D,WAAW,CAAC,IAAI,GAAG,GAAG,EAAE,CAAC,WAAW,CAAC;wBAErC,OAAO,IAAI,gBAAgB,CAAC,GAAG,CAAC,IAAI,EAAE,WAAW,EAAE,GAAG,CAAC,CAAC;oBAC5D,CAAC;iBACJ,CAAC,CAAC;YACP,CAAC;QACL,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,wBAAwB,OAAO,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAClF,OAAO,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAC;QAEzD,wDAAwD;QACxD,CAAC,CAAC,aAAa,EAAE,CAAC;IAEtB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,0BAA0B,EAAE,KAAK,CAAC,CAAC;QACjD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;AACL,CAAC"}
|