Skip to content

docs(installer): correct the stale @dignite/ng.flex-fields installation note - #60

Merged
duguankui merged 1 commit into
mainfrom
docs/installer-flex-fields-note
Sep 4, 2026
Merged

docs(installer): correct the stale @dignite/ng.flex-fields installation note#60
duguankui merged 1 commit into
mainfrom
docs/installer-flex-fields-note

Conversation

@duguankui

Copy link
Copy Markdown
Member

AngularInstallationInfo.json described a way of consuming @dignite/ng.flex-fields that no longer
exists. Both halves of the note were wrong.

"Not published to npm. Consumed as a file: dependency pointing at the sibling repo's built
output"
— the package reached public npmjs at rc.11/rc.13 and is a plain registry dependency
of @dignite/ng.site, so it arrives transitively when a host installs the library. That is exactly
what the neighbouring ng-zorro-antd and @angular/cdk notes already say about themselves.

"requires preserveSymlinks in tsconfig and angular.json" — never true of this package.
angular/scripts/symlink-config.ps1 lists no @dignite scope at all (only the
@angular/@abp/@volo set the ABP template ships with) and its $PackageDirectories is empty,
so the setting in angular.json and tsconfig.prod.json is inherited template configuration
serving an unrelated workflow.

Replaced with what a consumer actually needs to know: that it installs with the library, and that it
must resolve to exactly one copy — FLEX_FIELD_TYPES is a module-scoped InjectionToken, so a
second copy is a second DI key and every field type registered against one is invisible to the
resolver reading the other, absent at runtime with nothing failing at install or build time.

Documentation only — no code, no dependency, no behaviour change. Dignite.Site.Installer builds
clean (0 warnings, 0 errors) and the file's existing BOM is preserved.

…on note

AngularInstallationInfo.json told consumers the package is "Not published to npm" and must be
consumed as a file: dependency pointing at the sibling repo's built output, with preserveSymlinks
set in tsconfig and angular.json. Both halves are wrong now.

The package reached public npmjs at rc.11/rc.13 and is a plain registry dependency of
@dignite/ng.site, so it arrives transitively when a host installs the library - the same way
ng-zorro-antd and @angular/cdk do, which the neighbouring notes already say.

The preserveSymlinks half was never about this package. symlink-config.ps1 lists no @dignite scope
at all - only the @angular/@abp/@volo set the ABP template ships with - and its $PackageDirectories
is empty, so the setting in angular.json and tsconfig.prod.json serves that unrelated workflow.

Replaced with what a consumer actually needs: that it installs with the library, and that it must
resolve to exactly one copy, because FLEX_FIELD_TYPES is a module-scoped InjectionToken and a second
copy silently unregisters every field type at runtime.
@duguankui
duguankui merged commit 5db5da2 into main Sep 4, 2026
1 check passed
@duguankui
duguankui deleted the docs/installer-flex-fields-note branch September 4, 2026 14:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant