feat(client): complete SDK-shaped surface — init/initNg + SDK type re-exports

lifecycle.ts forwards init (@ng-org/web) and initNg (@ng-org/orm) to the injected
SDK; index re-exports the SDK types (ShapeType, BaseType, Schema, DeepSignalSet, NG) so
consumers import everything from @ng-eventually/client. Type re-exports are erased at
build → no runtime @ng-org import added (no duplicate SDK copy). @ng-org added as
devDependencies (typecheck only) + peerDependencies. EventuallyConfig accepts init/initNg.
Typecheck + 4 tests green.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
Sylvain Duchesne
2026-06-25 14:53:35 +02:00
parent bb2d9c3e59
commit f4ded6d8f7
5 changed files with 266 additions and 2 deletions
+11 -2
View File
@@ -11,11 +11,20 @@
},
"peerDependencies": {
"@ng-org/web": "*",
"@ng-org/orm": "*"
"@ng-org/orm": "*",
"@ng-org/shex-orm": "*",
"@ng-org/alien-deepsignals": "*"
},
"peerDependenciesMeta": {
"@ng-org/web": { "optional": true },
"@ng-org/orm": { "optional": true }
"@ng-org/orm": { "optional": true },
"@ng-org/shex-orm": { "optional": true },
"@ng-org/alien-deepsignals": { "optional": true }
},
"devDependencies": {
"@ng-org/web": "0.1.2-alpha.13",
"@ng-org/shex-orm": "0.1.2-alpha.8",
"@ng-org/alien-deepsignals": "0.1.2-alpha.11"
},
"scripts": {
"test": "bun test"