Skip to content

feat(client): Accept-Language option, end-user push, types from gateway 1c4e974f7 - #93

Merged
Domantas merged 3 commits into
mainfrom
feat/gateway-language-push-sync
Oct 14, 2026
Merged

Domantas merged 3 commits into
mainfrom
feat/gateway-language-push-sync

Conversation

@Domantas

Copy link
Copy Markdown
Contributor
  • chore(types): regenerate api/hub types from gateway refactoringV2 1c4e974f7
  • fix(types): keep the published declarations compiling after the regeneration
  • feat(client): Accept-Language option and end-user push; project users sign in again on 401

Domantas and others added 3 commits October 14, 2026 11:01
…e974f7

Regenerated with `npm run sync-types:remote` against a private gateway
stack (deployments/stack, item sdk-regen) on the same head.

- cultureCode / ICultureBasedRequest gone from RequestBase (N18)
- end-user push devices + messages (N28): new api.notifications module
  (registerOwnPushDevice, getOwnPushDevices, deleteOwnPushDevice,
  deleteOwnPushDeviceByToken, getOwnPushMessages, markOwnPushMessageRead,
  markAllOwnPushMessagesRead) and its generated test
- hub.membership.repairContactRoles (POST /membership/users/repair-roles)
- EchoLicenseDto gone from the public echo (N8)
- the Api /types surface still omits the JsonSchemaFieldDto subclasses
  (gateway ticket 11-code C22): kept from the previous Api file in a marked
  block so the Api field types do not disappear
- SDK DTO patches moved back inside the module wrapper

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…eration

The regenerated files lost four hand fixes the published .d.ts relies on
(npm run typecheck:dist went from 0 to 10 errors): IGet and JsonObject
aliases, IVersionBasedRequest/RequestBase `version?: string | number`, and
IRequest.requestAborted typed `any` instead of CancellationToken.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… sign in again on 401

Follows the gateway on refactoringV2 1c4e974f7.

- language (N18): `language` config / NORBIX_LANGUAGE / setLanguage /
  getLanguage / per-call `{ language }` / with({ language }) send the
  standard Accept-Language header — the only language input left (the
  cultureCode field and CultureCode / norbix-language headers are gone;
  nothing here sent them). onResponse reports `contentLanguage` from the
  Content-Language answer. `allLanguages` rides on find / findOne / findOwn
  and the term reads through the regenerated DTOs (tests added).
- push for end users (N28): norbix.notifications.push.registerDevice /
  listDevices / removeDevice / removeDeviceByToken / listMessages /
  markMessageRead / markAllMessagesRead over api.notifications.*
- sign-in (N19/N29): project users get no refresh token; an expired token
  surfaces as a 401 NorbixError and the app shows sign-in again (the SDK
  keeps no credentials); userId documented as usr_…
- API keys (N24): service-user keys (ak-…) work as apiKey (Bearer); test
  and README note
- README: Language, Push for end users, auth notes

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@github-actions

Copy link
Copy Markdown

🚀 Release preview

Next version on merge to main: none

semantic-release dry-run output
[8:29:59 AM] [semantic-release] › ℹ  Running semantic-release version 25.0.9
[8:29:59 AM] [semantic-release] › ✔  Loaded plugin "verifyConditions" from "@semantic-release/npm"
[8:29:59 AM] [semantic-release] › ✔  Loaded plugin "verifyConditions" from "@semantic-release/github"
[8:29:59 AM] [semantic-release] › ✔  Loaded plugin "analyzeCommits" from "@semantic-release/commit-analyzer"
[8:29:59 AM] [semantic-release] › ✔  Loaded plugin "generateNotes" from "@semantic-release/release-notes-generator"
[8:29:59 AM] [semantic-release] › ✔  Loaded plugin "prepare" from "@semantic-release/npm"
[8:29:59 AM] [semantic-release] › ✔  Loaded plugin "publish" from "@semantic-release/npm"
[8:29:59 AM] [semantic-release] › ✔  Loaded plugin "publish" from "@semantic-release/github"
[8:29:59 AM] [semantic-release] › ✔  Loaded plugin "addChannel" from "@semantic-release/npm"
[8:29:59 AM] [semantic-release] › ✔  Loaded plugin "addChannel" from "@semantic-release/github"
[8:29:59 AM] [semantic-release] › ✔  Loaded plugin "success" from "@semantic-release/github"
[8:29:59 AM] [semantic-release] › ✔  Loaded plugin "fail" from "@semantic-release/github"
[8:30:00 AM] [semantic-release] › ℹ  This test run was triggered on the branch refs/pull/93/merge, while semantic-release is configured to only publish from main, therefore a new version won’t be published.

If next_version is none, your commits don't trigger a release. Use feat: for minor (breaking changes too, until launch), fix: / perf: for patch.

@Domantas Domantas changed the title feat/gateway language push sync feat(client): Accept-Language option, end-user push, types from gateway 1c4e974f7 Oct 14, 2026
@Domantas
Domantas merged commit aa268e7 into main Oct 14, 2026
8 of 9 checks passed
@github-actions

Copy link
Copy Markdown

🎉 This PR is included in version 4.26.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

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

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant