@ikawaari/cli-sdk
v0.7.0
Published
SDK partagé entre: - `apps/ikw` (CLI Node.js) - `apps/merchant-dashboard` (Workbench / Shell & API Explorer)
Readme
@ikawaari/cli-sdk
SDK partagé entre:
apps/ikw(CLI Node.js)apps/merchant-dashboard(Workbench / Shell & API Explorer)
Objectif: une seule source de vérité pour la liste des commandes, leur structure, et la façon de les exécuter.
Installation publique
Ce package est publié sur npmjs comme dépendance publique du CLI:
npm install @ikawaari/cli-sdkLe CLI installable publiquement (@ikawaari/ikw) dépend de cette publication. Pour livrer une nouvelle version du CLI, publier d'abord @ikawaari/cli-sdk, puis @ikawaari/ikw avec le même alignement de version mineure.
Ce que contient le SDK
src/types.ts- Types core (
CommandDefinition,ExecutionContext,ApiExecutor, ...)
- Types core (
src/registry.tsCommandRegistry(listing, search, autocomplete)
src/command-parser.tsCommandParser(parse"payments list --limit 5"->ExecutionContext)
src/executor/node-executor.ts- Exécution en Node (fetch + auth/config)
src/executor/browser-executor.ts- Exécution en navigateur (wrapper autour d’un client HTTP type axios)
src/commands/*.ts- Définitions déclaratives des commandes (modules)
Usage (Node / CLI)
Le CLI (Node) doit:
- construire un
CommandRegistry(ex:createRegistry()) - parser l’input (
CommandParser) - exécuter via
NodeExecutor
Usage (Browser / Workbench)
Le dashboard (browser) doit:
- construire un
CommandRegistry+CommandParser - exécuter via
BrowserExecutor
Dans ce repo:
- Bridge:
apps/merchant-dashboard/src/lib/workbench-sdk.ts
Développement
Type-check
Si npm est bloqué par la policy PowerShell, tu peux lancer tsc via le TypeScript déjà présent dans apps/ikw:
node -e "const {execSync}=require('child_process');execSync('node ..\\ikw\\node_modules\\typescript\\bin\\tsc --noEmit',{cwd:process.cwd(),stdio:'inherit'})"Ou (quand les workspaces seront configurés) simplement:
npm run type-checkNotes
- Les imports actuels dans le repo peuvent être relatifs (
apps/.../../../cli-sdk/...) en attendant l’activation des workspaces et l’import propre@ikawaari/cli-sdk.
