Skip to content

Commit 147fcb8

Browse files
committed
Fix all outdated docs, workflows, and references
Docs: - UI docs: rename 50+ attribute references Form→UiForm, Table→UiTable, FormField→UiFormField, TableColumn→UiTableColumn, etc. - Dto docs: replace ZibStack.NET.Utils→Core (5 occurrences + links) - Root README: fix UI example with Ui-prefixed attributes - Landing page (index.mdx): replace Utils card with Core + add Query card Workflows: - CI: add Query test step - release-all: replace Utils with Core, add Query pack + test - Add release-core.yml and release-query.yml - Remove release-utils.yml
1 parent 5220d12 commit 147fcb8

10 files changed

Lines changed: 187 additions & 154 deletions

File tree

‎.github/workflows/ci.yml‎

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,9 @@ jobs:
4242
- name: Test UI
4343
run: dotnet test packages/ZibStack.NET.UI/tests/ZibStack.NET.UI.Tests/ZibStack.NET.UI.Tests.csproj -c Release --no-build
4444

45+
- name: Test Query
46+
run: dotnet test packages/ZibStack.NET.Query/tests/ZibStack.NET.Query.Tests/ZibStack.NET.Query.Tests.csproj -c Release --no-build
47+
4548
- name: Benchmark Log
4649
run: dotnet run --project packages/ZibStack.NET.Log/tests/ZibStack.NET.Log.Benchmarks/ZibStack.NET.Log.Benchmarks.csproj -c Release -- --filter "*" --exporters json
4750

‎.github/workflows/release-all.yml‎

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,9 @@ jobs:
3434
- name: Test UI
3535
run: dotnet test packages/ZibStack.NET.UI/tests/ZibStack.NET.UI.Tests/ZibStack.NET.UI.Tests.csproj -c Release --no-build
3636

37+
- name: Test Query
38+
run: dotnet test packages/ZibStack.NET.Query/tests/ZibStack.NET.Query.Tests/ZibStack.NET.Query.Tests.csproj -c Release --no-build
39+
3740
# Pack in dependency order
3841
- name: Pack 1 — Aop.Abstractions
3942
run: dotnet pack packages/ZibStack.NET.Aop/src/ZibStack.NET.Aop.Abstractions/ZibStack.NET.Aop.Abstractions.csproj -c Release -o ./artifacts -p:PackageVersion=${{ inputs.version }}
@@ -47,8 +50,8 @@ jobs:
4750
- name: Pack 4 — Log
4851
run: dotnet pack packages/ZibStack.NET.Log/src/ZibStack.NET.Log/ZibStack.NET.Log.csproj -c Release -o ./artifacts -p:PackageVersion=${{ inputs.version }}
4952

50-
- name: Pack 5 — Utils
51-
run: dotnet pack packages/ZibStack.NET.Utils/src/ZibStack.NET.Utils/ZibStack.NET.Utils.csproj -c Release -o ./artifacts -p:PackageVersion=${{ inputs.version }}
53+
- name: Pack 5 — Core
54+
run: dotnet pack packages/ZibStack.NET.Core/src/ZibStack.NET.Core/ZibStack.NET.Core.csproj -c Release -o ./artifacts -p:PackageVersion=${{ inputs.version }}
5255

5356
- name: Pack 6 — Dto
5457
run: dotnet pack packages/ZibStack.NET.Dto/src/ZibStack.NET.Dto/ZibStack.NET.Dto.csproj -c Release -o ./artifacts -p:PackageVersion=${{ inputs.version }}
@@ -68,6 +71,9 @@ jobs:
6871
- name: Pack 11 — UI
6972
run: dotnet pack packages/ZibStack.NET.UI/src/ZibStack.NET.UI/ZibStack.NET.UI.csproj -c Release -o ./artifacts -p:PackageVersion=${{ inputs.version }}
7073

74+
- name: Pack 12 — Query
75+
run: dotnet pack packages/ZibStack.NET.Query/src/ZibStack.NET.Query/ZibStack.NET.Query.csproj -c Release -o ./artifacts -p:PackageVersion=${{ inputs.version }}
76+
7177
# Push all at once (NuGet resolves deps from same push)
7278
- name: Push to NuGet
7379
run: dotnet nuget push ./artifacts/*.nupkg --api-key ${{ secrets.NUGET_API_KEY }} --source https://api.nuget.org/v3/index.json --skip-duplicate

‎.github/workflows/release-core.yml‎

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
name: Release ZibStack.NET.Core
2+
3+
on:
4+
workflow_dispatch:
5+
inputs:
6+
version:
7+
description: 'Package version (e.g. 1.0.0)'
8+
required: true
9+
type: string
10+
11+
jobs:
12+
release:
13+
runs-on: ubuntu-latest
14+
permissions:
15+
contents: write
16+
steps:
17+
- uses: actions/checkout@v4
18+
- uses: actions/setup-dotnet@v4
19+
with:
20+
dotnet-version: '10.0.x'
21+
- run: dotnet build ZibStack.NET.slnx -c Release
22+
- run: dotnet pack packages/ZibStack.NET.Core/src/ZibStack.NET.Core/ZibStack.NET.Core.csproj -c Release -o ./artifacts -p:PackageVersion=${{ inputs.version }}
23+
- run: dotnet nuget push ./artifacts/*.nupkg --api-key ${{ secrets.NUGET_API_KEY }} --source https://api.nuget.org/v3/index.json --skip-duplicate
24+
- uses: softprops/action-gh-release@v2
25+
with:
26+
tag_name: core-v${{ inputs.version }}
27+
name: ZibStack.NET.Core v${{ inputs.version }}
28+
generate_release_notes: true
29+
files: ./artifacts/*.nupkg
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
name: Release ZibStack.NET.Query
2+
3+
on:
4+
workflow_dispatch:
5+
inputs:
6+
version:
7+
description: 'Package version (e.g. 1.0.0)'
8+
required: true
9+
type: string
10+
11+
jobs:
12+
release:
13+
runs-on: ubuntu-latest
14+
permissions:
15+
contents: write
16+
steps:
17+
- uses: actions/checkout@v4
18+
- uses: actions/setup-dotnet@v4
19+
with:
20+
dotnet-version: '10.0.x'
21+
- run: dotnet build ZibStack.NET.slnx -c Release
22+
- run: dotnet test packages/ZibStack.NET.Query/tests/ZibStack.NET.Query.Tests/ZibStack.NET.Query.Tests.csproj -c Release --no-build
23+
- run: dotnet pack packages/ZibStack.NET.Query/src/ZibStack.NET.Query/ZibStack.NET.Query.csproj -c Release -o ./artifacts -p:PackageVersion=${{ inputs.version }}
24+
- run: dotnet nuget push ./artifacts/*.nupkg --api-key ${{ secrets.NUGET_API_KEY }} --source https://api.nuget.org/v3/index.json --skip-duplicate
25+
- uses: softprops/action-gh-release@v2
26+
with:
27+
tag_name: query-v${{ inputs.version }}
28+
name: ZibStack.NET.Query v${{ inputs.version }}
29+
generate_release_notes: true
30+
files: ./artifacts/*.nupkg

‎.github/workflows/release-utils.yml‎

Lines changed: 0 additions & 40 deletions
This file was deleted.

‎README.md‎

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -180,28 +180,28 @@ if (!result.IsValid) return BadRequest(result.Errors);
180180

181181
```csharp
182182
// Annotate models for forms + tables — generates JSON metadata at compile time:
183-
[Form]
184-
[Table(DefaultSort = "Name", SchemaUrl = "/api/tables/player")]
185-
[FormGroup("basic", Label = "Basic Info", Order = 1)]
183+
[UiForm]
184+
[UiTable(DefaultSort = "Name", SchemaUrl = "/api/tables/player")]
185+
[UiFormGroup("basic", Label = "Basic Info", Order = 1)]
186186
public partial class PlayerView
187187
{
188-
[FormIgnore]
189-
[TableColumn(IsVisible = false)]
188+
[UiFormIgnore]
189+
[UiTableColumn(IsVisible = false)]
190190
public int Id { get; set; }
191191

192192
[Required] [MinLength(2)]
193-
[FormField(Label = "Name", Placeholder = "Enter name...", Group = "basic")]
194-
[TableColumn(Sortable = true, Filterable = true)]
193+
[UiFormField(Label = "Name", Placeholder = "Enter name...", Group = "basic")]
194+
[UiTableColumn(Sortable = true, Filterable = true)]
195195
public required string Name { get; set; }
196196

197197
[Select(typeof(Region))]
198-
[FormField(Label = "Region", Group = "basic")]
199-
[TableColumn(Sortable = true, Filterable = true)]
198+
[UiFormField(Label = "Region", Group = "basic")]
199+
[UiTableColumn(Sortable = true, Filterable = true)]
200200
public Region Region { get; set; }
201201

202202
[Slider(Min = 1, Max = 100)]
203-
[FormField(Label = "Level", Group = "basic")]
204-
[TableColumn(Sortable = true)]
203+
[UiFormField(Label = "Level", Group = "basic")]
204+
[UiTableColumn(Sortable = true)]
205205
public int Level { get; set; }
206206
}
207207

‎docs/src/content/docs/index.mdx‎

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -52,9 +52,14 @@ import { Card, CardGrid } from '@astrojs/starlight/components';
5252

5353
[Learn more](/ZibStack.NET/packages/result/)
5454
</Card>
55-
<Card title="Utils" icon="puzzle">
56-
TypeScript-style utility types: `[PartialFrom]`, `[PickFrom]`, `[OmitFrom]`, `[IntersectFrom]`.
55+
<Card title="Core" icon="puzzle">
56+
Shared attributes: relationships (`[OneToMany]`, `[OneToOne]`, `[Entity]`) and TypeScript-style utility types (`[PartialFrom]`, `[PickFrom]`, `[OmitFrom]`).
5757

58-
[Learn more](/ZibStack.NET/packages/utils/)
58+
[Learn more](/ZibStack.NET/packages/core/)
59+
</Card>
60+
<Card title="Query" icon="magnifier">
61+
Filter/sort DSL for REST APIs: `filter=Level>25,Team.Name=Lakers&sort=-Level&select=Name,Level`.
62+
63+
[Learn more](/ZibStack.NET/packages/query/)
5964
</Card>
6065
</CardGrid>

‎docs/src/content/docs/packages/dto.md‎

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,10 @@ A C# source generator that produces strongly-typed **Create**, **Update**, **Res
1313

1414
```
1515
dotnet add package ZibStack.NET.Dto
16-
dotnet add package ZibStack.NET.Utils
16+
dotnet add package ZibStack.NET.Core
1717
```
1818

19-
`ZibStack.NET.Utils` provides TypeScript-style utility types (`[PartialFrom]`, `[IntersectFrom]`, `[PickFrom]`, `[OmitFrom]`).
19+
`ZibStack.NET.Core` provides TypeScript-style utility types (`[PartialFrom]`, `[IntersectFrom]`, `[PickFrom]`, `[OmitFrom]`).
2020

2121
## Quick start
2222

@@ -232,7 +232,7 @@ public IActionResult HandleCreate<T>(ICanCreate<T> request) where T : class
232232
| `PaginatedResponse<T>` | Generic paginated wrapper with `Items`, `TotalCount`, `Page`, `PageSize` |
233233
| `DtoValidationResult` | Per-property validation errors with `IsValid`, `Errors`, `AddError()`, `Merge()`, `ToDictionary()` |
234234

235-
> **Note:** `[PartialFrom]`, `[IntersectFrom]`, `[PickFrom]`, `[OmitFrom]` are in the separate [`ZibStack.NET.Utils`](https://www.nuget.org/packages/ZibStack.NET.Utils) package.
235+
> **Note:** `[PartialFrom]`, `[IntersectFrom]`, `[PickFrom]`, `[OmitFrom]` are in the separate [`ZibStack.NET.Core`](https://www.nuget.org/packages/ZibStack.NET.Core) package.
236236
237237
### `required` keyword
238238

@@ -311,12 +311,12 @@ public partial record CreateUserRequest;
311311
// DTO has "Name" property, ToEntity() writes to "FirstName"
312312
```
313313

314-
## Utility types (from `ZibStack.NET.Utils`)
314+
## Utility types (from `ZibStack.NET.Core`)
315315

316-
TypeScript-style utility types are available in the separate [`ZibStack.NET.Utils`](/ZibStack.NET/packages/utils/) package:
316+
TypeScript-style utility types are available in the separate [`ZibStack.NET.Core`](/ZibStack.NET/packages/core/) package:
317317

318318
```csharp
319-
using ZibStack.NET.Utils;
319+
using ZibStack.NET.Core;
320320

321321
[PartialFrom(typeof(Player))] // all properties optional + ApplyTo()
322322
public partial record PartialPlayer;
@@ -332,7 +332,7 @@ public partial record PlayerWithoutMeta;
332332
public partial record PlayerWithAddress;
333333
```
334334

335-
See the [ZibStack.NET.Utils documentation](/ZibStack.NET/packages/utils/) for full documentation.
335+
See the [ZibStack.NET.Core documentation](/ZibStack.NET/packages/core/) for full documentation.
336336

337337
## Query / Filter DTO (`[QueryDto]`)
338338

0 commit comments

Comments
 (0)