Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
35 changes: 35 additions & 0 deletions .yarn/changelogs/common.87572845.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
<!-- version-type: patch -->
# common

<!--
FORMATTING GUIDE:

### Detailed Entry (appears first when merging)

Use h3 (###) and below for detailed entries with paragraphs, code examples, and lists.

### Simple List Items

- Simple changes can be added as list items
- They are collected together at the bottom of each section

TIP: When multiple changelog drafts are merged, heading-based entries
appear before simple list items within each section.
-->

## ✨ Features

- Added `JwtApi` type definition for JWT authentication endpoints (`/jwt/login`, `/jwt/refresh`, `/jwt/logout`)
- Added `AuthorizedApi` type for endpoints requiring JWT bearer authentication (`/currentUser`, `/testAuthorized`)
- Added JWT endpoints and `/testAuthorized` to `BoilerplateApi`
- Added `jwt-api.json` schema generation for the new JWT API types

## ♻️ Refactoring

- Changed `User` model to re-export from `@furystack/core` instead of defining a local class

## ⬆️ Dependencies

- Updated `@furystack/rest` from ^8.0.32 to ^8.0.40
- Updated `@types/node` from ^25.0.10 to ^25.3.1
- Updated `ts-json-schema-generator` from ^2.4.0 to ^2.5.0
49 changes: 49 additions & 0 deletions .yarn/changelogs/frontend.87572845.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
<!-- version-type: patch -->
# frontend

<!--
FORMATTING GUIDE:

### Detailed Entry (appears first when merging)

Use h3 (###) and below for detailed entries with paragraphs, code examples, and lists.

### Simple List Items

- Simple changes can be added as list items
- They are collected together at the bottom of each section

TIP: When multiple changelog drafts are merged, heading-based entries
appear before simple list items within each section.
-->

## ✨ Features

- Integrated JWT client-side authentication via `@furystack/auth-jwt/client` with automatic token refresh
- Added `Sidebar` component with a vertical navigation menu for routing between pages
- Added authorized endpoint test button on the HelloWorld page to exercise JWT token refresh
- Added `PageLayout` with a collapsible left drawer for responsive navigation
- Replaced `Router`/`RouteLink` with `NestedRouter`/`NestedRouteLink` for nested routing support

## ♻️ Refactoring

- Redesigned Login page using `Card`, `CardContent`, and `Alert` components for a polished card-based layout
- Redesigned HelloWorld page using `PageContainer`, `PageHeader`, and `Typography` for consistent structure
- Redesigned ButtonsDemo page using `PageContainer` and `PageHeader` with an action button in the header
- Redesigned Init and Offline pages using `Typography`, `Alert`, and `cssVariableTheme` for consistent theming
- Simplified `Header` by removing props-based configuration in favor of hardcoded branding with `DrawerToggleButton`
- Removed `Body` component; session-based routing moved into `Layout`
- Updated `SessionService` to use JWT-based login/logout via `BoilerplateApiClient` token store
- Updated `GithubLogo` to use the standalone `getTextColor` function

## ⬆️ Dependencies

- Added `@furystack/auth-jwt` ^2.0.0
- Updated `@furystack/shades` from ^11.0.33 to ^12.2.4
- Updated `@furystack/shades-common-components` from ^10.0.33 to ^13.0.1
- Updated `@furystack/core` from ^15.0.32 to ^15.2.2
- Updated `@furystack/rest-client-fetch` from ^8.0.32 to ^8.0.40
- Updated `@furystack/inject` from ^12.0.26 to ^12.0.30
- Updated `@furystack/logging` from ^8.0.26 to ^8.0.30
- Updated `@furystack/utils` from ^8.1.8 to ^8.1.10
- Updated `@types/node` from ^25.0.10 to ^25.3.1
34 changes: 34 additions & 0 deletions .yarn/changelogs/furystack-boilerplate-app.87572845.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
<!-- version-type: patch -->
# furystack-boilerplate-app

<!--
FORMATTING GUIDE:

### Detailed Entry (appears first when merging)

Use h3 (###) and below for detailed entries with paragraphs, code examples, and lists.

### Simple List Items

- Simple changes can be added as list items
- They are collected together at the bottom of each section

TIP: When multiple changelog drafts are merged, heading-based entries
appear before simple list items within each section.
-->

## ⬆️ Dependencies

- Updated `eslint` from ^9.39.2 to ^10.0.2
- Updated `@eslint/js` from ^9.39.2 to ^10.0.1
- Updated `typescript-eslint` from ^8.53.1 to ^8.56.1
- Updated `@playwright/test` from ^1.58.0 to ^1.58.2
- Updated `@furystack/yarn-plugin-changelog` from ^1.0.1 to ^1.0.5
- Updated `eslint-plugin-jsdoc` from ^62.4.0 to ^62.7.1
- Updated `eslint-plugin-playwright` from ^2.5.0 to ^2.7.1
- Updated `rimraf` from ^6.1.2 to ^6.1.3
- Updated `@types/node` from ^25.0.10 to ^25.3.1

## 🔧 Chores

- Renamed `test:unit` script to `test`
42 changes: 42 additions & 0 deletions .yarn/changelogs/service.87572845.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
<!-- version-type: patch -->
# service

<!--
FORMATTING GUIDE:

### Detailed Entry (appears first when merging)

Use h3 (###) and below for detailed entries with paragraphs, code examples, and lists.

### Simple List Items

- Simple changes can be added as list items
- They are collected together at the bottom of each section

TIP: When multiple changelog drafts are merged, heading-based entries
appear before simple list items within each section.
-->

## ✨ Features

- Added JWT authentication support via `@furystack/auth-jwt` with configurable secret and token expiration
- Added `/jwt/login`, `/jwt/refresh`, and `/jwt/logout` REST endpoints for JWT-based auth flow
- Added `/testAuthorized` endpoint protected by the `Authenticate()` middleware
- Added `RefreshToken` and `PasswordResetToken` stores and DataSets

## ♻️ Refactoring

- Split monolithic `config.ts` and `service.ts` into focused modules: `root-injector.ts`, `setup-store.ts`, `setup-rest-api.ts`, `get-cors-options.ts`, `get-port.ts`, and `authorization/authorized-only.ts`
- Seed now uses DataSets (via `getDataSetFor`) with a system identity context instead of raw PhysicalStore access

## ⬆️ Dependencies

- Added `@furystack/auth-jwt` ^2.0.0
- Updated `@furystack/core` from ^15.0.32 to ^15.2.2
- Updated `@furystack/rest-service` from ^10.1.3 to ^12.1.0
- Updated `@furystack/security` from ^6.0.32 to ^7.0.1
- Updated `@furystack/repository` from ^10.0.32 to ^10.1.3
- Updated `@furystack/inject` from ^12.0.26 to ^12.0.30
- Updated `@furystack/logging` from ^8.0.26 to ^8.0.30
- Updated `@furystack/filesystem-store` from ^7.0.32 to ^7.0.40
- Updated `@types/node` from ^25.0.10 to ^25.3.1
5 changes: 5 additions & 0 deletions .yarn/versions/87572845.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
releases:
common: patch
frontend: patch
furystack-boilerplate-app: patch
service: patch
4 changes: 2 additions & 2 deletions common/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -25,11 +25,11 @@
"create-schemas": "node ./dist/bin/create-schemas.js"
},
"devDependencies": {
"@types/node": "^25.2.2",
"@types/node": "^25.3.1",
"ts-json-schema-generator": "^2.5.0",
"vitest": "^4.0.18"
},
"dependencies": {
"@furystack/rest": "^8.0.35"
"@furystack/rest": "^8.0.40"
}
}
Loading
Loading