1924 Commits
Author SHA1 Message Date
valentinpalkovicandPaperclip 46ee0d3749 Fix TypeScript 7 CI regressions
Bound supported compiler ranges to TypeScript 5.9 and 6, remove the obsolete Web Components suppression, and give declaration contract compilers enough time in CI.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-24 17:33:22 +02:00
valentinpalkovic f987ae451f Dependencies: raise TypeScript floor to 5.9 2026-09-24 12:43:49 +02:00
Valentin PalkovicandPaperclip 15926d85cc Dependencies: Prepare TypeScript 5 consumer floor
Pending declaration compatibility verification before publication.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-09-22 15:17:11 +02:00
storybook-bot 523e561cf3 Bump version from "11.0.0-alpha.0" to "11.0.0-alpha.1" [skip ci] 2026-09-19 07:54:22 +00:00
Obvious f7725f5ede refactor(angular): fold standalone fallback into the declaration
Fold the separate `if (isStandalone === undefined)` fallback into the
declaration as `?? true` per review feedback. The `??` operand is
parenthesized because nullish coalescing cannot be mixed with `&&`
without parentheses; semantics are unchanged (false is not nullish).

Also link the Angular update guide (https://angular.dev/update-guide)
from the MIGRATION.md section, mirroring the Next.js section.
2026-09-07 07:46:07 +00:00
Obvious 6b6097c8ee chore(deps): bump @analogjs/vite-plugin-angular to ^2.5.2
The 1.x line's peer declarations stop at Angular 20 while both peers are
optional, so yarn silently pairs it with the Angular 21 toolchain this
package now develops against. ^2.5.2 (resolves 2.6.1) is the version
@storybook/angular-vite already runs and declares devkit peers ^17..^22.
2026-09-07 07:45:33 +00:00
Obvious b6239ed207 refactor(angular): collapse builders' zoneless defaults to the 21 floor
The experimentalZoneless version checks in build-storybook and
start-storybook were constant-true under the 21 floor; both now default
to true, matching the PropertyExtractor collapse. Explicit
experimentalZoneless: false in project options is still honored.
2026-09-07 07:45:33 +00:00
Obvious 63aef380d8 chore(deps): pin angular devDependencies to the supported minimum (v21)
DevDependency ranges now express the floor the peers enforce:
@angular/* ^21.0.0, devkit architect ^0.2100.0, zone.js ^0.16.0.
2026-09-07 07:45:33 +00:00
Obvious 5a58ccdabb chore(deps): align @storybook/angular devDependencies with the Angular 21 floor
Bump @angular/* devDependencies ^19.1.1 -> ^21.2.x (devkit ^0.2102.x,
build-angular ^21.2.12, zone.js ^0.16.2), matching @storybook/angular-vite,
so the package is developed and tested against a supported Angular. The
187-test suite now exercises the same major the peers advertise.
2026-09-07 07:45:33 +00:00
Obvious 5c1f9c0fae fix(peers): keep rxjs ^6.5.3 arm to match Angular 21's own peer range 2026-09-07 07:45:33 +00:00
Valentin Palkovic 026e109e10 Apply suggestion from @valentinpalkovic 2026-09-07 07:45:33 +00:00
Valentin Palkovic 8b70bf9c55 Apply suggestion from @valentinpalkovic 2026-09-07 07:45:33 +00:00
Obvious ba961b6265 refactor(angular): treat standalone default as constant 2026-09-07 07:44:49 +00:00
Obvious ee50c9a179 chore(angular): raise peer dependency floors to Angular 21 2026-09-07 07:43:54 +00:00
storybook-bot c496da65ec Bump version from "10.6.0" to "11.0.0-alpha.0" [skip ci] 2026-09-02 14:06:32 +00:00
storybook-bot a77777356b Bump version from "10.6.0-beta.3" to "10.6.0" [skip ci] 2026-09-02 13:53:47 +00:00
storybook-bot f32b3667da Bump version from "10.6.0-beta.2" to "10.6.0-beta.3" [skip ci] 2026-09-02 11:40:56 +00:00
storybook-bot 0ad1336cbf Bump version from "10.6.0-beta.1" to "10.6.0-beta.2" [skip ci] 2026-09-01 22:33:43 +00:00
storybook-bot 16359ee178 Bump version from "10.6.0-beta.0" to "10.6.0-beta.1" [skip ci] 2026-09-01 09:55:51 +00:00
storybook-bot 2e0e2f609d Bump version from "10.6.0-alpha.9" to "10.6.0-beta.0" [skip ci] 2026-08-27 11:55:00 +00:00
storybook-bot 6a6dec2aed Bump version from "10.6.0-alpha.8" to "10.6.0-alpha.9" [skip ci] 2026-08-26 11:16:51 +00:00
storybook-bot cd2d16395a Bump version from "10.6.0-alpha.7" to "10.6.0-alpha.8" [skip ci] 2026-08-25 09:52:48 +00:00
Norbert de Langen 05f33c485a Merge branch 'next' into norbert/fix-tsconfig-paths-without-baseurl
Keep getTsconfigPathsBaseDir on the indexer and take next's csf-utils import path.
2026-08-24 12:49:48 +02:00
storybook-bot 898f0ce828 Bump version from "10.6.0-alpha.6" to "10.6.0-alpha.7" [skip ci] 2026-08-20 08:56:06 +00:00
Norbert de Langen aa5790bb34 Core: Resolve tsconfig paths from the defining config
tsconfig-paths treats a missing baseUrl as the leaf tsconfig directory, so Nx-style path maps in tsconfig.base.json fail under webpack, the indexer, and react-docgen. Pass TypeScript's pathsBasePath instead so aliases work without restoring baseUrl.
2026-08-19 14:58:31 +02:00
storybook-bot cf97b46ca1 Bump version from "10.6.0-alpha.5" to "10.6.0-alpha.6" [skip ci] 2026-08-17 07:13:05 +00:00
storybook-bot 2b7f6be9c9 Bump version from "10.6.0-alpha.4" to "10.6.0-alpha.5" [skip ci] 2026-08-10 09:03:26 +00:00
Valentin Palkovic 86ff80b8a6 Angular: Stop reading alias collisions as two-way bindings
Compodoc reports a `model()` under the same bare name in both its input
and output lists, so the parser treated a name in both lists as two-way:
it dropped the output and synthesized `${name}Change`.

An `@Input('shared')` declared next to an `@Output('shared')` collides the
same way with no `model()` involved, so a real output was being deleted
and a phantom one invented. Requiring the declaration line to match too
separates the cases, since a `model()` is one property on one line.

The rule is lifted into a named function and the quirk is written up,
rather than resting on a comment that claimed the name alone was
sufficient. A collision now costs the aliased input its row instead of
its output, which the README records as a known limitation.
2026-08-06 10:20:00 +02:00
Valentin Palkovic f5ea811512 Angular: Derive required inputs from Compodoc's own flag
Compodoc reports whether an input is required, and we never read it. We
computed requiredness from the TypeScript-optional marker instead, so every
signal input rendered as required regardless of how it was declared.

Requiredness now comes from Compodoc's flag, with the optional marker still
consulted. Both are needed: Compodoc derives its flag from the presence of the
`required` key in an `@Input({...})` argument rather than its value, so
`@Input({ required: false })` reports itself as required and optional at once,
and only requiring the two to agree keeps that case right.

A `model()` signal's synthesized change output is now always optional. It used
to inherit the requiredness of the input it derives from, which disagreed with
how every real output reads.

Plain decorator inputs still read as required. Compodoc emits neither flag for
them, which is an upstream gap; when it is fixed they correct themselves.
2026-08-04 21:24:02 +02:00
Valentin Palkovic 53f11373f0 Angular: Extract Compodoc parsing into its own package
The code that turns Compodoc's output into argTypes existed twice, once in
each of the two Angular framework packages, as byte-identical copies. Any
fix applied to one had to be remembered for the other, and in practice they
drifted. It now lives in one place both of them share.

The extracted module no longer assumes a browser. What differs between
environments is passed in rather than reached for: the Compodoc data, the
feature flag, a logger, and the helper that unwraps Compodoc's
HTML-rendered JSDoc. Each framework's preview supplies its own.

The shared package is private and compiled into both framework packages
rather than published, so nothing new appears on npm and neither package
gains a runtime dependency.

No behaviour changes. Both frameworks' existing test suites pass untouched,
and the preview still unwraps HTML with DOMParser exactly as before.
2026-08-04 18:17:46 +02:00
storybook-bot 6633df63fd Bump version from "10.6.0-alpha.3" to "10.6.0-alpha.4" [skip ci] 2026-08-03 12:35:48 +00:00
storybook-bot c4ced68c3e Bump version from "10.6.0-alpha.2" to "10.6.0-alpha.3" [skip ci] 2026-07-24 11:31:42 +00:00
storybook-bot a624af3e71 Bump version from "10.6.0-alpha.1" to "10.6.0-alpha.2" [skip ci] 2026-07-20 09:47:53 +00:00
storybook-bot d7696cfe5f Bump version from "10.6.0-alpha.0" to "10.6.0-alpha.1" [skip ci] 2026-07-16 14:07:37 +00:00
Julien Huang 73a46aed2b Merge remote-tracking branch 'origin/next' into build/oxlint
# Conflicts:
#	scripts/package.json
#	yarn.lock
2026-07-13 14:20:12 +02:00
Julien Huang b5e0dab05c merge next in branch 2026-07-13 10:07:43 +02:00
Valentin Palkovic b3dbf4f27a Merge branch 'next' into valentin/upgrade-typescript-6 2026-07-13 09:51:18 +02:00
storybook-bot c45d8ba4d4 Bump version from "10.5.0" to "10.6.0-alpha.0" [skip ci] 2026-07-10 09:40:59 +00:00
storybook-bot 9dafcd22ed Bump version from "10.5.0-beta.2" to "10.5.0" [skip ci] 2026-07-10 09:14:07 +00:00
Valentin Palkovic 5b56b6c2c0 Merge remote-tracking branch 'origin/next' into task/ffd6b664-Automigrating-an-ngular-21-pro 2026-07-08 21:15:39 +02:00
Valentin Palkovic 08abbc2964 Format angular template components 2026-07-08 21:15:36 +02:00
Valentin Palkovic 3b80561835 Merge branch 'next' into valentin/upgrade-typescript-6 2026-07-08 12:49:46 +02:00
Julien Huang 0361d7679c Merge branch 'next' into build/oxlint 2026-07-08 11:51:56 +02:00
storybook-bot 448db85e65 Bump version from "10.5.0-beta.1" to "10.5.0-beta.2" [skip ci] 2026-07-08 08:34:38 +00:00
Steve Dodier-Lazaro 7b8fd1dc9d Merge branch 'next' into valentin/upgrade-typescript-6 2026-07-07 15:09:12 +02:00
Steve Dodier-Lazaro 3a53335e5b Merge pull request #35318 from EtiennePasteur/next
Angular: Support Angular 22 in Webpack framework
2026-07-07 14:58:58 +02:00
Julien Huang e42fda3492 Merge branch 'next' into build/oxlint 2026-07-07 13:49:21 +02:00
storybook-bot a4ce9790a7 Bump version from "10.5.0-beta.0" to "10.5.0-beta.1" [skip ci] 2026-07-07 11:19:59 +00:00
storybook-bot f0bf138a0a Bump version from "10.5.0-alpha.11" to "10.5.0-beta.0" [skip ci] 2026-07-06 10:22:37 +00:00
Julien Huang 3504ec0659 Build: Remove eslint-disable directives that are unused under oxlint
oxlint reports these directives as unused: they suppress rules that are
either not enabled in the oxlint config (type-aware rules, dropped
plugins) or implemented with different heuristics. Verified with
`oxlint --report-unused-disable-directives` reporting zero findings in
both code/ and scripts/ afterwards.
2026-07-03 13:32:08 +02:00