v1.4.0
Minor Changes
-
#23
a00168dThanks @flyon! - RenameLincdConfig/LincdWebpackConfig/LincdServerConfig→LinkedConfig/LinkedWebpackConfig/LinkedServerConfig. FunctiongetLincdConfig→getLinkedConfig. Legacy package.json flagslincd: trueandlincdApp: trueare no longer read — migrate tolinkedPackage: true/linkedApp: true. Built loader registration is unaffected.Plus: CLI command help text refresh (
LINCD app→Linked app, etc.). Config file namelincd.config.{js,json}→linked.config.{js,json}(hard cut, no fallback) — was previously rolled out separately. -
#23
a00168dThanks @flyon! - Starter template: CN-branded CSS theme +@_linked/reactintegration in the example components.Brand defaults. The
app-with-backendtemplate now ships with the CN palette (--color-primary-*mapped to a teal-blue ramp,--color-secondary-*to mint green) as a default-branded baseline. Apps override@theme { --color-primary-500: ... }to swap brand.Semantic-token shell.
App.module.css,DefaultLayout.module.css,Header.module.cssrewritten using@_linked/csssemantic tokens (--bg-page,--bg-card,--color-primary-*) instead of hardcoded hex. Module CSS files using--spacing(N)import@_linked/css/package.cssper the documented pattern.Person CRUD demo uses
@_linked/react.PersonOverviewis now built withlinkedSetComponent, andPersonPreviewwithlinkedComponent— replacing the previoususeEffect+useStatequery patterns. The wrappers handle loading state via the framework's.ld-loaderand inject_refreshso the form (sibling) and rows (children) can trigger re-fetch. Optimistic UI on inline edit via_refresh({givenName, familyName}).Pages polish.
Home,Signin,Page1,PageNotFoundget card layouts using semantic tokens — consistent across routes.@_linked/reactis now a direct dep in the scaffolded app'spackage.jsonso the bindings can be imported. Companion changes ship in@_linked/react(loader / errorElement API,_refreshon set, factory overloads) and@_linked/css(.ld-loader/.ld-errordefaults +--color-error-*ramp).Storage layout. Template now ships
linked.backend.storage.ts+linked.backend.datasets.jsonand a mirrorsrc/linked.frontend.storage.ts+src/linked.frontend.datasets.json. Backend usesloadStores(async, dynamic-import). Frontend hardcodes the per-alias store mapping for webpack-friendly bundling.npm + yarn compatibility.
create-appworks with either package manager. Lockfile-based detection determines which to invoke for install.No breaking changes. Existing scaffolded apps that don't pull in the template updates keep working.
Patch Changes
-
67f01ab- Removepreflight.css— moved to@_linked/css.preflight.cssis a CSS asset; it belongs in the CSS package alongsidetheme-defaults.cssandutilities.css. Consumers should update imports from@_linked/cli/preflight.cssto@_linked/css/preflight.css.The exports entry
"./preflight.css": "./preflight.css"is also removed frompackage.json. -
2b40588- Relaxtypescriptdep from^5.7.3to^5.4.0so consumers that pin a lower 5.x version (e.g. CN at 5.4.5) don't end up with a nestedtypescript@5.9.xinstall inpackages/cli/node_modules/. The nested 5.9.x was incompatible withreact-refresh-typescript@2.0.12's AST walk — crashed frontend builds withTypeError: Cannot read properties of undefined (reading 'declarations')insideVariableStatement.declarationList.declarationstraversal.