Skip to content

Typesafe apis with openapi-ts#2465

Draft
max-nextcloud wants to merge 10 commits into
mainfrom
experiment/openapi-ts
Draft

Typesafe apis with openapi-ts#2465
max-nextcloud wants to merge 10 commits into
mainfrom
experiment/openapi-ts

Conversation

@max-nextcloud
Copy link
Copy Markdown
Collaborator

  • chore(types): use openapi-ts
  • chore(types): use openapi-ts vite plugin
  • chore(types): use our own axios with openapi-ts client-axios
  • chore(lint): make linter happy with generated code
  • chore(git): include generated client code
  • chore(types): use typed getCollectives based on openapi-ts
  • chore(docs): move get collectives comment to controller
  • chore(type): collectives collectives api
  • chore(refactor): move defaultOptions into separate file
  • chore(types) convert all apis to typescript

Signed-off-by: Max <max@nextcloud.com>
Signed-off-by: Max <max@nextcloud.com>
Signed-off-by: Max <max@nextcloud.com>
Signed-off-by: Max <max@nextcloud.com>
Signed-off-by: Max <max@nextcloud.com>
This way it also shows in the openapi.json and the client functions.

Signed-off-by: Max <max@nextcloud.com>
Signed-off-by: Max <max@nextcloud.com>
Signed-off-by: Max <max@nextcloud.com>
Some apis exist in two forms:
* one for logged in users providing the collective id
* a public one based on the share token

Implement these as classes and pick them in a factory function
so they can be used independently of which one is used.
(See templates.ts for an example).

Signed-off-by: Max <max@nextcloud.com>
@max-nextcloud max-nextcloud force-pushed the experiment/openapi-ts branch from 91280f0 to 3ac8303 Compare May 4, 2026 07:09
@max-nextcloud
Copy link
Copy Markdown
Collaborator Author

Currently blocked by nextcloud/openapi-extractor#343

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant