records-cli 0.0.1 → 0.0.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.
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +25 -1
- package/dist/client.js.map +1 -1
- package/package.json +1 -1
- package/skill/references/REFERENCE.md +17 -17
package/dist/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,kDAAkD;AAClD,eAAO,MAAM,cAAc,mCAAmC,CAAA;AAE9D,MAAM,MAAM,aAAa,GAAG;IAC1B,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA;AAED,qBAAa,QAAS,SAAQ,KAAK;IAG/B,QAAQ,CAAC,MAAM,EAAE,MAAM;IACvB,QAAQ,CAAC,IAAI,EAAE,OAAO;gBAFtB,OAAO,EAAE,MAAM,EACN,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,OAAO;CAKzB;
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,kDAAkD;AAClD,eAAO,MAAM,cAAc,mCAAmC,CAAA;AAE9D,MAAM,MAAM,aAAa,GAAG;IAC1B,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA;AAED,qBAAa,QAAS,SAAQ,KAAK;IAG/B,QAAQ,CAAC,MAAM,EAAE,MAAM;IACvB,QAAQ,CAAC,IAAI,EAAE,OAAO;gBAFtB,OAAO,EAAE,MAAM,EACN,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,OAAO;CAKzB;AAyBD,wBAAgB,YAAY,CAAC,IAAI,EAAE,aAAa;cAGvB,CAAC,QAChB,MAAM,SACN,WAAW,GAAG;QAAE,IAAI,CAAC,EAAE,OAAO,CAAA;KAAE,KACrC,OAAO,CAAC,CAAC,CAAC;;EAgCd"}
|
package/dist/client.js
CHANGED
|
@@ -13,6 +13,27 @@ export class ApiError extends Error {
|
|
|
13
13
|
function normalizeBaseUrl(url) {
|
|
14
14
|
return url.replace(/\/+$/, "");
|
|
15
15
|
}
|
|
16
|
+
/** Best-effort message from JSON error bodies (including nested Vercel-style `{ error: { message } }`). */
|
|
17
|
+
function formatHttpErrorPayload(parsed, fallback) {
|
|
18
|
+
if (parsed === null || typeof parsed !== "object") {
|
|
19
|
+
return fallback;
|
|
20
|
+
}
|
|
21
|
+
const o = parsed;
|
|
22
|
+
const err = o.error;
|
|
23
|
+
if (typeof err === "string")
|
|
24
|
+
return err;
|
|
25
|
+
if (err !== null && typeof err === "object" && "message" in err) {
|
|
26
|
+
const m = err.message;
|
|
27
|
+
if (typeof m === "string")
|
|
28
|
+
return m;
|
|
29
|
+
}
|
|
30
|
+
try {
|
|
31
|
+
return JSON.stringify(parsed);
|
|
32
|
+
}
|
|
33
|
+
catch {
|
|
34
|
+
return fallback;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
16
37
|
export function createClient(opts) {
|
|
17
38
|
const base = normalizeBaseUrl(opts.baseUrl);
|
|
18
39
|
async function request(path, init = {}) {
|
|
@@ -40,7 +61,10 @@ export function createClient(opts) {
|
|
|
40
61
|
parsed = null;
|
|
41
62
|
}
|
|
42
63
|
if (!res.ok) {
|
|
43
|
-
|
|
64
|
+
const detail = typeof parsed === "object" && parsed !== null
|
|
65
|
+
? formatHttpErrorPayload(parsed, text || res.statusText)
|
|
66
|
+
: text || res.statusText;
|
|
67
|
+
throw new ApiError(`HTTP ${res.status}: ${detail}`, res.status, parsed);
|
|
44
68
|
}
|
|
45
69
|
return parsed;
|
|
46
70
|
}
|
package/dist/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,kDAAkD;AAClD,MAAM,CAAC,MAAM,cAAc,GAAG,gCAAgC,CAAA;AAO9D,MAAM,OAAO,QAAS,SAAQ,KAAK;IAGtB;IACA;IAHX,YACE,OAAe,EACN,MAAc,EACd,IAAa;QAEtB,KAAK,CAAC,OAAO,CAAC,CAAA;QAHL,WAAM,GAAN,MAAM,CAAQ;QACd,SAAI,GAAJ,IAAI,CAAS;QAGtB,IAAI,CAAC,IAAI,GAAG,UAAU,CAAA;IACxB,CAAC;CACF;AAED,SAAS,gBAAgB,CAAC,GAAW;IACnC,OAAO,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;AAChC,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,IAAmB;IAC9C,MAAM,IAAI,GAAG,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IAE3C,KAAK,UAAU,OAAO,CACpB,IAAY,EACZ,OAAyC,EAAE;QAE3C,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QACzC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;YAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAA;QACrE,IAAI,IAAI,CAAC,KAAK;YAAE,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,UAAU,IAAI,CAAC,KAAK,EAAE,CAAC,CAAA;QACpE,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC5B,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAA;QACjD,CAAC;QACD,MAAM,IAAI,GACR,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAA;QACjE,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,GAAG,IAAI,EAAE,EAAE,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;QACrE,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAA;QAC7B,IAAI,MAAM,GAAY,IAAI,CAAA;QAC1B,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpB,IAAI,CAAC;gBACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAY,CAAA;YACtC,CAAC;YAAC,MAAM,CAAC;gBACP,MAAM,GAAG,IAAI,CAAA;YACf,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,IAAI,CAAA;QACf,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACZ,MAAM,
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -83,13 +83,13 @@ Links to a record by path `**groupSlug/recordSlug`** (the slugs returned by the
|
|
|
83
83
|
### `groups`
|
|
84
84
|
|
|
85
85
|
|
|
86
|
-
| Command
|
|
87
|
-
|
|
|
88
|
-
| `records-cli groups list [--with-records]`
|
|
89
|
-
| `records-cli groups get (--id
|
|
90
|
-
| `records-cli groups create --title <title>`
|
|
91
|
-
| `records-cli groups patch <id> --title <title>`
|
|
92
|
-
| `records-cli groups delete <id>`
|
|
86
|
+
| Command | Auth | Notes |
|
|
87
|
+
| ----------------------------------------------- | --------- | -------------------------------------------------------------------------- |
|
|
88
|
+
| `records-cli groups list [--with-records]` | No | With `--with-records`: each group may include `"records": RecordSummary[]` |
|
|
89
|
+
| `records-cli groups get (--id | --slug )` | No |
|
|
90
|
+
| `records-cli groups create --title <title>` | Bearer | 201 `{ "data": GroupRow }` |
|
|
91
|
+
| `records-cli groups patch <id> --title <title>` | Bearer | 200 `{ "data": GroupRow }` |
|
|
92
|
+
| `records-cli groups delete <id>` | Bearer | Success: empty body |
|
|
93
93
|
|
|
94
94
|
|
|
95
95
|
**Group row:** `{ "id", "title", "slug" }`
|
|
@@ -106,11 +106,11 @@ Slugs are generated from titles (unique per scope).
|
|
|
106
106
|
### `group-records` (nested under a group slug)
|
|
107
107
|
|
|
108
108
|
|
|
109
|
-
| Command
|
|
110
|
-
|
|
|
111
|
-
| `records-cli group-records list <groupSlug>`
|
|
112
|
-
| `records-cli group-records get <groupSlug> <recordSlug>`
|
|
113
|
-
| `records-cli group-records create
|
|
109
|
+
| Command | Auth | Notes |
|
|
110
|
+
| --------------------------------------------------------- | -------------------- | --------------------------------- |
|
|
111
|
+
| `records-cli group-records list <groupSlug>` | No | 200 `{ "data": RecordSummary[] }` |
|
|
112
|
+
| `records-cli group-records get <groupSlug> <recordSlug>` | No | 200 `{ "data": RecordRow }` |
|
|
113
|
+
| `records-cli group-records create --title --content <path | -> [--description ]` | Bearer |
|
|
114
114
|
|
|
115
115
|
|
|
116
116
|
**Create body:** `title` (required), `content` (required), optional `description`.
|
|
@@ -120,11 +120,11 @@ Slugs are generated from titles (unique per scope).
|
|
|
120
120
|
### `records` (by numeric id)
|
|
121
121
|
|
|
122
122
|
|
|
123
|
-
| Command
|
|
124
|
-
|
|
|
125
|
-
| `records-cli records get <id>`
|
|
126
|
-
| `records-cli records patch
|
|
127
|
-
| `records-cli records delete <id>`
|
|
123
|
+
| Command | Auth | Notes |
|
|
124
|
+
| ----------------------------------------------------- | ------------------------------------------ | --------------------------- |
|
|
125
|
+
| `records-cli records get <id>` | No | 200 `{ "data": RecordRow }` |
|
|
126
|
+
| `records-cli records patch [--title] [--content <path | ->] [--description] [--clear-description]` | Bearer |
|
|
127
|
+
| `records-cli records delete <id>` | Bearer | Success: empty body |
|
|
128
128
|
|
|
129
129
|
|
|
130
130
|
**Record row:** `{ "id", "title", "description", "slug", "groupId", "content" }`
|