mirror of
https://github.com/MAKS-IT-COM/maksit-webui.git
synced 2026-08-15 09:58:09 +02:00
8.5 KiB
8.5 KiB
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
[0.4.0] - 2026-07-07
Changed
- Breaking: merged
@maks-it.com/webui-contracts,@maks-it.com/webui-core, and@maks-it.com/webui-componentsinto a single published package@maks-it.com/webui. Host apps install one package and import everything from@maks-it.com/webui(seeassets/docs/NPM_CONSUMPTION.mdmigration notes). - Breaking:
src/is now the npm package root —src/package.jsonpublishes as@maks-it.com/webui; npm workspaces andsrc/packages/*nesting removed. - Source layout:
contracts/,core/, andcomponents/live directly undersrc/(internal organization only; no subpath exports). - Release pipeline (
utils/engines/release/scriptSettings.json) publishes one package;NpmReleaseVersion.syncWorkspaceVersionsdisabled. - Jest, Vitest, and Storybook configs updated for the flat
src/layout (@webui/*aliases point atsrc/{contracts,core,components}). - VS Code/Cursor: TypeScript SDK and integrated terminal default to
src/. src/coverage/explicitly gitignored; generated coverage is no longer tracked (README badges remain underassets/badges/).
Removed
@maks-it.com/webui-contracts,@maks-it.com/webui-core, and@maks-it.com/webui-componentsas separate npm packages (superseded by@maks-it.com/webui).src/packages/workspace layout and per-packagepackage.jsonfiles.- Repo-root
tsconfig.jsonand straynode_modules/(tooling and dependencies live undersrc/only).
[0.3.5] - 2026-07-06
Fixed
ENTITY_SCOPES_ARRAY_POLICY: synthetic identity is now{entityId}-{entityType}(not includingscope), so adding an application scope alongside an existing organization scope produces a correctAddToCollectiondelta, and permission changes on id-less rows update in place via_deltaId.
[0.3.4] - 2026-07-06
Added
- OAuth / external identity providers (extracted from FiPlan.Anywhere):
@maks-it.com/webui-contracts:LoginProviderExternal,EmailProtocol,ServerAuthenticationMethod,MsalViewModel,IdpRedeemLoginResponse,MailboxOAuthPending, and mailbox OAuth session/query constants.@maks-it.com/webui-core:startIdpRedirect,shouldSkipIdpLoginCallback,useIdpLoginCallback, mailbox OAuth redirect helpers (collectMailboxOAuthProtocols,startMailboxOAuthRedirect,useMailboxOAuthReturn), andremoveParamFromUrl/removeParamsFromUrl.@maks-it.com/webui-components:ExternalLoginButtons,IdpLoginCallbackHandler,MailboxOAuthReturnHandler.
@maks-it.com/webui-core:HOSTNAMES_ARRAY_POLICYfor Certs UI account hostname PATCH collections (identityKey/idFieldKey:hostname).deepDeltaregression tests for Certs/Vault consumer forms —HOSTNAMES_ARRAY_POLICY,ENTITY_SCOPES_ARRAY_POLICY,VERSIONS_ARRAY_POLICY, advancedArrayPolicyoptions (rootKey,childArrayKeys,deleteItemWhenRoleRemoved).
Changed
- All
@maks-it.com/webui-*packages versioned at 0.3.4 with aligned workspace dependency ranges. - RepoUtils entry points and docs:
utils/src/→utils/(Invoke-TestEngine.bat,Invoke-ReleasePackage-Single.bat,Update-RepoUtils.bat; README andassets/docs/NPM_PUBLISH.mdupdated). - Release secret env vars documented as logical names
NpmandGitHub(seeutils/engines/release/scriptSettings.json). - Package READMEs document OAuth exports and PATCH collection policies.
Fixed
deepDeltaidentifiable-array diff: role-null removals emit the correct identity field (idvs_deltaId); item deltas are omitted when onlyoperationschanged (no spurious id-only placeholders).
[0.3.3] - 2026-05-31
Changed
- Migrated
utils/to maksit-repoutils 1.0.14 layout underutils/src/(Invoke-ReleasePackage,Invoke-TestEngine,Update-RepoUtils). ProductscriptSettings.jsonpaths updated for the deeper engine folders.
Added
@maks-it.com/webui-core:useWebUiHubReact hook for JWT-authenticated SignalR hubs — connection state (idle/connecting/connected/reconnecting/disconnected), optional automatic reconnect, and typed hub event handlers.resolveHubUrlhelper (absolute URLs unchanged; relative paths resolve againstwindow.location.origin).@microsoft/signalrpeer dependency on@maks-it.com/webui-core.
Changed
- All
@maks-it.com/webui-*packages published at0.3.3with aligned workspace dependency ranges. - Jest tests for core and contracts moved from co-located
src/**/*.test.tstopackages/*/test/; rootjest.config.cjsroots updated accordingly. @maks-it.com/webui-coreREADME documents SignalR install anduseWebUiHubusage.
[0.3.2] - 2026-05-30
Fixed
- Disabled and read-only editors now show consistent muted styling:
CheckBoxComponentusesopacity-50when disabled;FieldContainergrays field labels when inactive; checkbox, radio, text, select, date, and secret fields sharegetInactiveControlClasses(). - Added
tsupto workspace rootdevDependenciessonpm ci+npm run buildresolve the CLI on Windows (subpackage-only hoisting was not always onPATHfor nested workspace scripts).
Added
- Storybook Disabled story for
CheckBoxComponent.
[0.3.1] - 2026-05-30
Fixed
- Toast IDs no longer use
crypto.randomUUID()(requires HTTPS/localhost). IDs are generated with a counter + timestamp viacreateToastId()so toasts work over HTTP in Docker and other non-secure contexts.
Changed
@maks-it.com/webui-components: shared helpers (debounce,colSpanClass,GridColSpan) are imported from thefunctionsbarrel instead of subpaths.@maks-it.com/webui-core: re-exportsdate-fnsprimitives (parseISO,formatISO,format,getDaysInMonth,addMonths,subMonths) for consumers.@maks-it.com/webui-componentsDateTimePickerComponentimports date helpers from@maks-it.com/webui-coreinstead ofdate-fnsdirectly.
Removed
lodashand@types/lodashfrom@maks-it.com/webui-components; filter debouncing uses a localdebounce()helper.- Duplicate
date-fnsdependency from@maks-it.com/webui-components(date-fnsremains on@maks-it.com/webui-coreonly).
[0.3.0] - 2026-05-25
Added
- Storybook 10 catalog for
@maks-it.com/webui-components: Tailwind v4, React Router decorator, autodocs, a11y addon, stories for all editors, DataTable (with ClientSideInteractive filters/pagination demo), Layout, and FormLayout (FormContainer,FormHeader,FormContent,FormFooter). npm run storybookandnpm run build-storybookfromsrc/.
Changed
- Storybook stories under
src/stories/components/mirrorpackages/components/src/components/folder names (editors,Toast, …); sidebar titles usecomponents/<folder>/…;@webui/*Vite aliases import package source without a build.
Removed
- Unused
VaultStyleListSection,VaultStyleDataTable, andVaultStyleListFooter(components/list/) — not consumed by vault or certs-ui; list screens useDataTableinstead.
Fixed
- Editor
colspanuses static Tailwindcol-span-*classes viafunctions/tailwind/gridColSpan.tsso Storybook and Vite builds apply the 12-column grid correctly. - Storybook 10 preview: Vite
esbuildJSX set toautomaticso decorators and stories no longer throwReact is not defined.
[0.2.0] - 2026-05-24
Added
- Jest test suite (50 tests) covering
@maks-it.com/webui-coreutilities and@maks-it.com/webui-contractsschemas. - Root
npm testscript and per-package build tsconfigs (tsconfig.build.json) for TypeScript 6 declaration emit.
Changed
- Updated dependencies to current majors: TypeScript 6, Jest 30, Zod 4.4, lucide-react 1.x, axios 1.16, and React 19.2.
- Migrated Zod schemas to v4 APIs:
intersection()replaces.and(), custom refinements use'custom'issue codes. @maks-it.com/webui-componentsToast IDs now usecrypto.randomUUID(); lodash imports uselodash/debouncesubpaths.- Peer dependency ranges:
zod^4.4,axios^1.16,lucide-react^1.0.
Removed
uuidruntime dependency from@maks-it.com/webui-components.
[0.1.0] - 2026-05-24
Added
- Initial
@maks-it.com/webui-contracts,@maks-it.com/webui-core, and@maks-it.com/webui-componentspackages extracted from Certs UI and Vault WebUI. - npm publish under the
@maks-it.comorg scope on registry.npmjs.org.