@keboola/api-fixtures 22.0.0 → 26.0.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/CHANGELOG.md ADDED
@@ -0,0 +1,255 @@
1
+ # @keboola/api-fixtures
2
+
3
+ ## 26.0.0
4
+
5
+ ### Patch Changes
6
+
7
+ - Updated dependencies:
8
+ - @keboola/api-client@31.0.0
9
+
10
+ ## 25.0.0
11
+
12
+ ### Patch Changes
13
+
14
+ - The published tarball now carries a `CHANGELOG.md`, so a consumer can read what changed in a release — breaking changes included — without leaving their `node_modules`.
15
+
16
+ It could not simply be added to `files`. This repo is private, so every reference `@changesets/changelog-github` emits is a dead link for anyone reading from npm: PR links, commit SHAs, author handles, and the Linear and cross-repo links that changeset prose carries. Across the publishable packages that came to 490 PR links, 863 commit links, 490 author credits and 102 dependency-bump blocks.
17
+
18
+ The published file is generated, not maintained. `scripts/public-changelog.mjs` removes those links ahead of the publish and leaves the prose. An identifier the author typed themselves stays as text — `UT-4009`, `connection#8040` — because it is part of the sentence and, without its URL, resolves to nothing outside Keboola. The repo-side `CHANGELOG.md` keeps every link, because that is how a release gets traced internally. It is rewritten only for the moment the tarballs are packed, then restored — which the release also depends on: `changesets/action` reads each changelog back off disk _after_ the publish command returns, to build that version's GitHub Release body, so without the restore the internal releases would carry the public text. A reference the rules do not cover fails the publish rather than shipping.
19
+
20
+ One incidental fix: a hex colour written as `#222529` in changeset prose had been autolinked into a link to issue 222529. Unwrapping restores the colour, so the published notes read as the author wrote them.
21
+
22
+ - Updated dependencies:
23
+ - @keboola/api-client@30.0.0
24
+
25
+ ## 24.0.1
26
+
27
+ ### Patch Changes
28
+
29
+ - Build with tsdown (rolldown) instead of the now-unmaintained tsup. Output layout, exports map, and shipped declarations are unchanged (attw-verified per package); chunk byte sizes shift slightly with rolldown's codegen, and `@keboola/design`'s size budgets are trued up to the new measurements (largest delta: the main bundle cap moves 320→330 KB). `@keboola/design` builds with `platform: 'browser'`, so bundled CJS deps (react-dropzone, react-day-picker) resolve to their ESM builds instead of a UMD `main` that would drag a Node-only runtime require into browser loads.
30
+
31
+ ## 24.0.0
32
+
33
+ ### Minor Changes
34
+
35
+ - New **Developer Portal** support for `apps-api.keboola.com` — the backend behind `components.keboola.com`. Paths and types are generated from the published spec (`https://apps-api.keboola.com/docs/openapi.yaml`, now registered in `redocly.yaml`), so `pnpm gen:types` refreshes them like every other client.
36
+
37
+ Two layers, matching the rest of the package:
38
+
39
+ ```ts
40
+ // The client plus the session that keeps it authenticated. Start here.
41
+ import { createDeveloperPortalSdk } from "@keboola/api-client/sdk/developerPortal";
42
+ // The pure client: one method per endpoint, no state. Enough for every `security: []` operation.
43
+ import { createDeveloperPortalClient } from "@keboola/api-client/developerPortal";
44
+ import type { App, Vendor } from "@keboola/api-client/developerPortal/types";
45
+ ```
46
+
47
+ Covers all 58 spec operations across four namespaces — `auth`, `vendors`, `apps`, `admin` — flat inside each, named `get*` / `create*` / `update*` / `delete*` with the noun on the method (`apps.getPublishedApps`, `admin.approveVendor`), matching `management` and `storage`. `createDeveloperPortalSdk` returns `{ api, session }` the way `createKeboola` does, and for the same reason — the credential is stateful. It stays separate from `createKeboola` because apps-api is its own identity domain (its own Cognito pool, its own token trio), so it is absent from `createServiceClients.ts` and never appears on the `api` proxy.
48
+
49
+ Three properties worth knowing:
50
+ - `Authorization` carries the **raw token with no `Bearer` prefix** — the spec's security schemes are `type: apiKey`, so `createBearerAuthMiddleware` is not reusable and the SDK ships its own.
51
+ - **Two fetch clients.** The authenticated one stamps the id token; the other carries no auth and backs the operations the spec marks `security: []`, plus the four calls that supply their own `Authorization`: `GET /auth/token` (refresh token), `POST /auth/logout` (access token), and `POST /auth/mfa` + `POST /auth/mfa/confirm` (id token, alongside an access token in the body). Those four take the token as an argument, and the SDK binds them from the session, so `api.auth.logout()` needs nothing from the caller.
52
+ - **The spec is the source of truth.** `types.ts` derives every shape from the generated schema, with no hand-written overlay. Two vendor shapes fall out of that: `GET /vendors` returns `isTrusted` as the raw MySQL tinyint (`VendorListItem`), every other vendor endpoint converts it to a boolean (`Vendor`). Outgoing payloads are no longer validated at runtime — the generated request types replace the zod schemas, which is how every other client in the package works.
53
+
54
+ `@keboola/api-fixtures` gains `fixtures.developerPortal` — apps across every publishing state, vendors including a pending `_v`-prefixed one, users, service accounts, and an app change log. Each is `satisfies`-checked against the generated types, so a fixture cannot carry a field the API does not return.
55
+
56
+ ### Patch Changes
57
+
58
+ - Updated dependencies:
59
+ - @keboola/api-client@29.0.0
60
+
61
+ ## 23.0.0
62
+
63
+ ### Patch Changes
64
+
65
+ - Updated dependencies:
66
+ - @keboola/api-client@28.0.0
67
+
68
+ ## 22.0.0
69
+
70
+ ### Minor Changes
71
+
72
+ - Add an `apps` slice covering the sandboxes-service `/v2` App Deployments surface: `getApp` / `listApps` / `appFixtures`, `getDeployment` / `listDeployments` / `deploymentFixtures`, and `getAppRun` / `listAppRuns` / `runFixtures`, also reachable as `fixtures.apps.*`.
73
+
74
+ The three sub-slices compose into one coherent app rather than standing alone: the app's `production` pointer names a deployment that `listDeployments()` returns, and every non-legacy run names a deployment that exists. `apps.test.ts` enforces that join, because a drifting id there is invisible in a component test and surfaces as an empty timeline.
75
+
76
+ The named fixtures are the states the `/v2` model makes distinguishable, several of which cannot be told apart from a single field:
77
+ - `appFixtures.promoting` — a blue/green promotion in flight. `state` stays `RUNNING` and the rollout is visible only as `production.desiredId !== production.actualId`, so a consumer reading `state` alone will miss it.
78
+ - `appFixtures.legacyV1Serving` — transcribed verbatim from canary: an app created and started through `/v1` that was serving real traffic at the moment it was read, which `/v2` reports as `NOT_DEPLOYED` with an all-null `production` because it was never adopted into the deployments model. It is the counterexample to deriving "is this app serving" from `state`.
79
+ - `appFixtures.sleeping` vs `appFixtures.suspended` — both stopped, but only the first wakes on the next request.
80
+ - `deploymentFixtures.buildFailed` vs `runFailed` — no artifact was ever produced versus an artifact that crashes on every run. Different problems with different fixes, and the first is not reachable on the platform today (every deployment is `PREBUILT`); it exists because the headline-status table in the spec treats it as a contract.
81
+ - `runFixtures.failed` — a classified failure with `startedAt: null`. A run can be attributed a cause on either side of its container ever executing, so `failureReason` is the field to branch on, not `startedAt`.
82
+
83
+ Every fixture is typed against `@keboola/api-client/apps/types`, and `apps.test-d.ts` pins the factories to exactly the generated types. The `/v2` spec is flagged experimental upstream, so that assertion is the alarm for a shape that moves.
84
+
85
+ ### Patch Changes
86
+
87
+ - Updated dependencies:
88
+ - @keboola/api-client@27.0.0
89
+
90
+ ## 21.0.0
91
+
92
+ ### Patch Changes
93
+
94
+ - These packages now ship their `AGENTS.md` usage contract to npm, so external
95
+ consumers (and their AI agents) can read it at
96
+ `node_modules/@keboola/<name>/AGENTS.md`, version-pinned to the release they
97
+ actually installed.
98
+
99
+ Previously only `@keboola/design` published its `AGENTS.md`; every other package
100
+ omitted it from `files`, so instructions that point agents at that path — such as
101
+ `apps/boilerplate/AGENTS.md` — silently resolved to nothing outside the monorepo.
102
+ No code or type changes.
103
+
104
+ - Updated dependencies:
105
+ - @keboola/api-client@26.0.0
106
+
107
+ ## 20.0.0
108
+
109
+ ### Patch Changes
110
+
111
+ - Updated dependencies:
112
+ - @keboola/api-client@25.0.0
113
+
114
+ ## 19.0.0
115
+
116
+ ### Patch Changes
117
+
118
+ - Updated dependencies:
119
+ - @keboola/api-client@24.0.0
120
+
121
+ ## 18.0.0
122
+
123
+ ### Patch Changes
124
+
125
+ - Updated dependencies:
126
+ - @keboola/api-client@23.0.0
127
+
128
+ ## 17.0.0
129
+
130
+ ### Patch Changes
131
+
132
+ - Updated dependencies:
133
+ - @keboola/api-client@22.0.0
134
+
135
+ ## 16.0.0
136
+
137
+ ### Patch Changes
138
+
139
+ - Updated dependencies:
140
+ - @keboola/api-client@21.0.0
141
+
142
+ ## 15.0.0
143
+
144
+ ### Patch Changes
145
+
146
+ - Updated dependencies:
147
+ - @keboola/api-client@20.0.0
148
+
149
+ ## 14.0.0
150
+
151
+ ### Patch Changes
152
+
153
+ - Updated dependencies:
154
+ - @keboola/api-client@19.0.0
155
+
156
+ ## 13.0.0
157
+
158
+ ### Patch Changes
159
+
160
+ - Updated dependencies:
161
+ - @keboola/api-client@18.0.0
162
+
163
+ ## 12.0.0
164
+
165
+ ### Patch Changes
166
+
167
+ - Updated dependencies:
168
+ - @keboola/api-client@17.0.0
169
+
170
+ ## 11.0.0
171
+
172
+ ### Patch Changes
173
+
174
+ - Updated dependencies:
175
+ - @keboola/api-client@16.0.0
176
+
177
+ ## 10.0.0
178
+
179
+ ### Patch Changes
180
+
181
+ - Updated dependencies:
182
+ - @keboola/api-client@15.0.0
183
+
184
+ ## 9.0.0
185
+
186
+ ### Patch Changes
187
+
188
+ - Updated dependencies:
189
+ - @keboola/api-client@14.0.0
190
+
191
+ ## 8.0.0
192
+
193
+ ### Patch Changes
194
+
195
+ - Updated dependencies:
196
+ - @keboola/api-client@13.0.0
197
+
198
+ ## 7.0.0
199
+
200
+ ### Patch Changes
201
+
202
+ - Updated dependencies:
203
+ - @keboola/api-client@12.0.0
204
+
205
+ ## 6.0.0
206
+
207
+ ### Patch Changes
208
+
209
+ - Updated dependencies:
210
+ - @keboola/api-client@11.0.0
211
+
212
+ ## 5.0.1
213
+
214
+ ### Patch Changes
215
+
216
+ - Add `expectTypeOf` type tests binding the exported storage-tables fixtures (`getTable`, `listTables`, `tableFixtures`) to the generated `TableDetail` type from `@keboola/api-client`, and enable Vitest `typecheck` so the assertions are evaluated by `vitest run`. The `getTable`/`listTables` assertions lock the exported API surface to the generated type; the `tableFixtures.*` assertions additionally catch structural drift in the fixture bodies (their narrow inferred literal shapes must stay assignable to `TableDetail`). Contract drift now fails the test suite, not just `tsc`.
217
+
218
+ ## 5.0.0
219
+
220
+ ### Patch Changes
221
+
222
+ - Updated dependencies:
223
+ - @keboola/api-client@10.0.0
224
+
225
+ ## 4.0.0
226
+
227
+ ### Patch Changes
228
+
229
+ - Updated dependencies:
230
+ - @keboola/api-client@9.0.0
231
+
232
+ ## 3.0.0
233
+
234
+ ### Patch Changes
235
+
236
+ - Updated dependencies:
237
+ - @keboola/api-client@8.0.0
238
+
239
+ ## 2.0.0
240
+
241
+ ### Patch Changes
242
+
243
+ - Updated dependencies:
244
+ - @keboola/api-client@7.0.0
245
+
246
+ ## 1.0.0
247
+
248
+ ### Minor Changes
249
+
250
+ - Publish `@keboola/api-fixtures` to npm (previously workspace-internal). Ships compiled `dist` output (ESM + CJS + type declarations) and declares `@keboola/api-client` as a peer dependency so the re-exported endpoint types resolve in external consumers.
251
+
252
+ ### Patch Changes
253
+
254
+ - Updated dependencies:
255
+ - @keboola/api-client@6.0.0