Beautification phase 5 — borderless cards, shadows, section-heading class (1.23.1)
Details
Remove borders from category pills, Refresh button, workspace plugin cards,
and marketplace cards. Increase corner radius from 8/10 to 12 across all card
elements. Add subtle BoxShadow to workspace plugin cards, system overview cards,
marketplace cards, and data-tab storage cards for depth. Replace inline
FontSize/FontWeight/Foreground on section headings (Workspace Plugins, System
Overview, Storage Details, Storage Overview, Plugin Data) with the shared
section-heading style class for consistency. Bump version 1.23.0 -> 1.23.1.
Theme beautification: tune base colors, add design tokens, swap to IBM Plex Sans (1.23.0)
Details
Updated all three theme files (Dark, Light, Azure) with refined base color
values for backgrounds, surfaces, and borders to improve visual depth and
contrast. Added ThemeSurfaceRecessed color and brush for inset areas like
code blocks and sidebar backgrounds. Introduced semantic spacing aliases
(ThemeSectionGap, ThemeCardInternalPadding, ThemeClusterGap, ThemeInlineGap)
and semantic type scale tokens (Caption through Display) to provide
meaningful naming for layout and typography usage. Swapped the primary sans
font from Inter to IBM Plex Sans loaded via avares resource URI. Bumped
desktop version from 1.22.0 to 1.23.0.
Theme beautification: tune base colors, add design tokens, swap to IBM Plex Sans
Details
Updated background, surface, border, and border-subtle color values across all four
secondary themes (Ember, Lavender, Sage, Slate) for improved contrast and warmth.
Added ThemeSurfaceRecessed Color and SolidColorBrush to each theme for recessed panel
backgrounds. Introduced semantic spacing aliases (ThemeSectionGap, ThemeCardInternalPadding,
ThemeClusterGap, ThemeInlineGap) and semantic type scale tokens (ThemeFontSizeCaption
through ThemeFontSizeDisplay) to all four themes so views can reference intent-based
names instead of raw size keys. Changed ThemeFontSans from Inter to IBM Plex Sans loaded
via avares asset URI. Bumped PrivStack.Desktop version to 1.21.12.
Add inline properties panel and save-as-template (1.36.0)
Details
Inline Properties Panel:
- Show/Hide Properties toggle below cover image area reveals tags
and custom properties inline in the page editor
- Tags section with chip display, autocomplete input, add/remove
- Custom property editors for all types (Text, Number, Date, Checkbox,
Select, Url) with auto-save on change
- Per-property eye toggle to control inline visibility, persisted
per-page via plugin settings
- Properties load from IPropertyService (new SDK interface) on page
switch; changes sync to Info Panel via NotifyContentChanged
Save as Template:
- "Template" button added to page actions toolbar (after Export)
- Modal overlay with emoji picker, name, description, and category
fields for saving current page content as a reusable template
- PageTemplateService extended with user template persistence via SDK
entity storage (page_template entity type)
- User templates appear alongside built-in templates in the existing
template picker; TemplatePickerViewModel.RefreshTemplates() called
after save
Version bump: 1.35.4 → 1.36.0 (both .csproj and PluginMetadata)
Add IPropertyService interface for plugin property access (1.23.0)
Details
Add IPropertyService to PrivStack.Sdk exposing entity metadata CRUD
(tags, custom properties, property definitions) so plugins can read and
write properties without depending on Desktop types. EntityMetadataService
implements the interface via explicit implementations that convert Desktop
models to SDK-typed records (SdkEntityMetadata, SdkPropertyDefinition).
IPluginHost gains a nullable Properties member, wired through PluginHost
and PluginHostFactory. SDK version bumped 1.22.6 → 1.23.0.
Get notified about new releases