-
Notifications
You must be signed in to change notification settings - Fork 2.9k
chore: enable TS intellisense in cross library projects for better/consistent DX #26605
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
chore: enable TS intellisense in cross library projects for better/consistent DX #26605
Conversation
Perf Analysis (
|
| Scenario | Render type | Master Ticks | PR Ticks | Iterations | Status |
|---|---|---|---|---|---|
| Avatar | mount | 704 | 696 | 5000 | |
| Button | mount | 398 | 398 | 5000 | |
| Field | mount | 1239 | 1245 | 5000 | |
| FluentProvider | mount | 772 | 776 | 5000 | |
| FluentProviderWithTheme | mount | 107 | 105 | 10 | |
| FluentProviderWithTheme | virtual-rerender | 88 | 100 | 10 | |
| FluentProviderWithTheme | virtual-rerender-with-unmount | 101 | 98 | 10 | |
| InfoButton | mount | 18 | 18 | 5000 | |
| MakeStyles | mount | 1176 | 1178 | 50000 | |
| Persona | mount | 1883 | 1872 | 5000 | |
| SpinButton | mount | 1428 | 1469 | 5000 |
|
This pull request is automatically built and testable in CodeSandbox. To see build info of the built libraries, click here or the icon next to each commit SHA. Latest deployment of this branch, based on commit 272bb18:
|
📊 Bundle size reportUnchanged fixtures
|
Perf Analysis (
|
| Scenario | Current PR Ticks | Baseline Ticks | Ratio |
|---|---|---|---|
| RefMinimalPerf.default | 155 | 140 | 1.11:1 |
| ButtonMinimalPerf.default | 114 | 106 | 1.08:1 |
| BoxMinimalPerf.default | 275 | 263 | 1.05:1 |
| TreeWith60ListItems.default | 109 | 104 | 1.05:1 |
| DividerMinimalPerf.default | 277 | 267 | 1.04:1 |
| ListNestedPerf.default | 417 | 400 | 1.04:1 |
| PortalMinimalPerf.default | 126 | 121 | 1.04:1 |
| VideoMinimalPerf.default | 546 | 526 | 1.04:1 |
| AnimationMinimalPerf.default | 397 | 385 | 1.03:1 |
| CarouselMinimalPerf.default | 328 | 318 | 1.03:1 |
| ProviderMinimalPerf.default | 262 | 254 | 1.03:1 |
| AttachmentSlotsPerf.default | 804 | 786 | 1.02:1 |
| ButtonSlotsPerf.default | 381 | 375 | 1.02:1 |
| ChatDuplicateMessagesPerf.default | 190 | 186 | 1.02:1 |
| DropdownManyItemsPerf.default | 482 | 471 | 1.02:1 |
| ImageMinimalPerf.default | 309 | 304 | 1.02:1 |
| InputMinimalPerf.default | 671 | 658 | 1.02:1 |
| LabelMinimalPerf.default | 303 | 298 | 1.02:1 |
| LoaderMinimalPerf.default | 236 | 231 | 1.02:1 |
| RadioGroupMinimalPerf.default | 358 | 350 | 1.02:1 |
| TableMinimalPerf.default | 321 | 316 | 1.02:1 |
| TextAreaMinimalPerf.default | 364 | 356 | 1.02:1 |
| AccordionMinimalPerf.default | 110 | 109 | 1.01:1 |
| AvatarMinimalPerf.default | 140 | 139 | 1.01:1 |
| DatepickerMinimalPerf.default | 4311 | 4268 | 1.01:1 |
| DropdownMinimalPerf.default | 1772 | 1754 | 1.01:1 |
| FlexMinimalPerf.default | 215 | 213 | 1.01:1 |
| FormMinimalPerf.default | 293 | 291 | 1.01:1 |
| ItemLayoutMinimalPerf.default | 892 | 881 | 1.01:1 |
| ListWith60ListItems.default | 463 | 459 | 1.01:1 |
| MenuMinimalPerf.default | 658 | 650 | 1.01:1 |
| PopupMinimalPerf.default | 485 | 478 | 1.01:1 |
| ProviderMergeThemesPerf.default | 860 | 854 | 1.01:1 |
| SegmentMinimalPerf.default | 271 | 267 | 1.01:1 |
| SkeletonMinimalPerf.default | 278 | 275 | 1.01:1 |
| SliderMinimalPerf.default | 858 | 846 | 1.01:1 |
| CardMinimalPerf.default | 404 | 402 | 1:1 |
| ChatMinimalPerf.default | 553 | 553 | 1:1 |
| ChatWithPopoverPerf.default | 238 | 237 | 1:1 |
| CheckboxMinimalPerf.default | 1344 | 1343 | 1:1 |
| DialogMinimalPerf.default | 613 | 610 | 1:1 |
| ListCommonPerf.default | 494 | 496 | 1:1 |
| MenuButtonMinimalPerf.default | 1193 | 1195 | 1:1 |
| SplitButtonMinimalPerf.default | 2744 | 2741 | 1:1 |
| StatusMinimalPerf.default | 545 | 545 | 1:1 |
| TableManyItemsPerf.default | 1418 | 1418 | 1:1 |
| TextMinimalPerf.default | 261 | 262 | 1:1 |
| CustomToolbarPrototype.default | 1793 | 1795 | 1:1 |
| TooltipMinimalPerf.default | 1577 | 1579 | 1:1 |
| TreeMinimalPerf.default | 611 | 613 | 1:1 |
| AlertMinimalPerf.default | 201 | 203 | 0.99:1 |
| ButtonOverridesMissPerf.default | 767 | 772 | 0.99:1 |
| EmbedMinimalPerf.default | 2053 | 2067 | 0.99:1 |
| ReactionMinimalPerf.default | 285 | 289 | 0.99:1 |
| ToolbarMinimalPerf.default | 668 | 674 | 0.99:1 |
| GridMinimalPerf.default | 258 | 262 | 0.98:1 |
| HeaderMinimalPerf.default | 278 | 284 | 0.98:1 |
| LayoutMinimalPerf.default | 281 | 286 | 0.98:1 |
| ListMinimalPerf.default | 409 | 417 | 0.98:1 |
| RosterPerf.default | 1644 | 1682 | 0.98:1 |
| HeaderSlotsPerf.default | 622 | 651 | 0.96:1 |
| IconMinimalPerf.default | 480 | 499 | 0.96:1 |
| AttachmentMinimalPerf.default | 95 | 103 | 0.92:1 |
Perf Analysis (
|
| Scenario | Render type | Master Ticks | PR Ticks | Iterations | Status |
|---|---|---|---|---|---|
| BaseButton | mount | 787 | 788 | 5000 | |
| Breadcrumb | mount | 2042 | 2020 | 1000 | |
| Checkbox | mount | 2073 | 2081 | 5000 | |
| CheckboxBase | mount | 1852 | 1840 | 5000 | |
| ChoiceGroup | mount | 3503 | 3520 | 5000 | |
| ComboBox | mount | 807 | 798 | 1000 | |
| CommandBar | mount | 7734 | 7663 | 1000 | |
| ContextualMenu | mount | 13786 | 13480 | 1000 | |
| DefaultButton | mount | 915 | 913 | 5000 | |
| DetailsRow | mount | 2655 | 2639 | 5000 | |
| DetailsRowFast | mount | 2675 | 2644 | 5000 | |
| DetailsRowNoStyles | mount | 2431 | 2437 | 5000 | |
| Dialog | mount | 3248 | 3246 | 1000 | |
| DocumentCardTitle | mount | 290 | 280 | 1000 | |
| Dropdown | mount | 2454 | 2450 | 5000 | |
| FocusTrapZone | mount | 1402 | 1445 | 5000 | |
| FocusZone | mount | 1393 | 1367 | 5000 | |
| GroupedList | mount | 45083 | 45384 | 2 | |
| GroupedList | virtual-rerender | 22064 | 22100 | 2 | |
| GroupedList | virtual-rerender-with-unmount | 62121 | 62844 | 2 | |
| GroupedListV2 | mount | 276 | 279 | 2 | |
| GroupedListV2 | virtual-rerender | 261 | 265 | 2 | |
| GroupedListV2 | virtual-rerender-with-unmount | 277 | 285 | 2 | |
| IconButton | mount | 1307 | 1293 | 5000 | |
| Label | mount | 446 | 439 | 5000 | |
| Layer | mount | 3399 | 3430 | 5000 | |
| Link | mount | 522 | 520 | 5000 | |
| MenuButton | mount | 1154 | 1136 | 5000 | |
| MessageBar | mount | 26333 | 26007 | 5000 | |
| Nav | mount | 2313 | 2354 | 1000 | |
| OverflowSet | mount | 1020 | 1008 | 5000 | |
| Panel | mount | 2149 | 2136 | 1000 | |
| Persona | mount | 899 | 913 | 1000 | |
| Pivot | mount | 1057 | 1051 | 1000 | |
| PrimaryButton | mount | 1041 | 1047 | 5000 | |
| Rating | mount | 5765 | 5788 | 5000 | |
| SearchBox | mount | 1103 | 1120 | 5000 | |
| Shimmer | mount | 2292 | 2307 | 5000 | |
| Slider | mount | 1654 | 1645 | 5000 | |
| SpinButton | mount | 3404 | 3441 | 5000 | |
| Spinner | mount | 516 | 519 | 5000 | |
| SplitButton | mount | 2169 | 2194 | 5000 | |
| Stack | mount | 535 | 540 | 5000 | |
| StackWithIntrinsicChildren | mount | 1095 | 1103 | 5000 | |
| StackWithTextChildren | mount | 3386 | 3402 | 5000 | |
| SwatchColorPicker | mount | 7357 | 7359 | 5000 | |
| TagPicker | mount | 1689 | 1732 | 5000 | |
| Text | mount | 494 | 477 | 5000 | |
| TextField | mount | 1124 | 1131 | 5000 | |
| ThemeProvider | mount | 1011 | 1007 | 5000 | |
| ThemeProvider | virtual-rerender | 797 | 795 | 5000 | |
| ThemeProvider | virtual-rerender-with-unmount | 1554 | 1572 | 5000 | |
| Toggle | mount | 792 | 788 | 5000 | |
| buttonNative | mount | 239 | 245 | 5000 |
210cb71 to
d09eb8c
Compare
Asset size changesSize Auditor did not detect a change in bundle size for any component! Baseline commit: 8232a5a7f2d7535ac7d0cd4af455ea6e70e9f613 (build) |
🕵 fluentuiv9 No visual regressions between this PR and main |
e056509 to
3e5cee2
Compare
7d2a449 to
81290be
Compare
🕵 FluentUI-v0 No visual regressions between this PR and main |
3a6faab to
3297686
Compare
…storybook as well
…es used only for DX
… instead of createPathAliasesConfig()
… return resulted merge as well
…ackage and validate integrity on CI
… refactor getTsPathAliasesConfig
…able type-check for v9 docs
4103b4b to
5735d61
Compare
micahgodbolt
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
* master: applying package updates fix: dont ignore lib, lib-commonjs and lib-amd files (microsoft#27736) Add DraggableZone into export map (microsoft#27569) Add export for FolderCover.scss (microsoft#27507) applying package updates Add filetype icon for Microsoft Designer (microsoft#27724) ci: add build task back as lint pre-requirement to unblock temporarily import plugin lint rule (microsoft#27729) fix(react-charting): add missing dependency to fix lint violations during release (microsoft#27728) Added partition for controlled overflow menu (microsoft#27520) Azure Theme 8.0: Tag Button variant for DefaultButton and PrimaryButton (microsoft#27186) Azure Theme 8.0 dropdown fix for high contrast themes (microsoft#27346) chore: enable TS intellisense in cross library projects for better/consistent DX (microsoft#26605) chore: enforce files naming to use .styles.ts [cxe-red files] (microsoft#27710) chore(v0): enable emit only dts and use new conformance test API to narrow down TS Program (microsoft#27686) codeowner update (microsoft#27719) Tag/TagButton init component setup (microsoft#27102)
* feat/drawer-components: (120 commits) fix: add missing change file Component testing - Donut chart (microsoft#27033) fix: update .npmignore files to resolve npm8/node16 regression with npm publish for v9 packages (microsoft#27741) chore: add .swcrc to .npmignore (generator) (microsoft#27739) docs: update API Autogenerate react-toast package (microsoft#27730) applying package updates fix: dont ignore lib, lib-commonjs and lib-amd files (microsoft#27736) Add DraggableZone into export map (microsoft#27569) Add export for FolderCover.scss (microsoft#27507) applying package updates Add filetype icon for Microsoft Designer (microsoft#27724) ci: add build task back as lint pre-requirement to unblock temporarily import plugin lint rule (microsoft#27729) fix(react-charting): add missing dependency to fix lint violations during release (microsoft#27728) Added partition for controlled overflow menu (microsoft#27520) Azure Theme 8.0: Tag Button variant for DefaultButton and PrimaryButton (microsoft#27186) Azure Theme 8.0 dropdown fix for high contrast themes (microsoft#27346) chore: enable TS intellisense in cross library projects for better/consistent DX (microsoft#26605) chore: enforce files naming to use .styles.ts [cxe-red files] (microsoft#27710) chore(v0): enable emit only dts and use new conformance test API to narrow down TS Program (microsoft#27686) ...

Previous Behavior
.d.tsinstead of sourcetsfiletsconfig.base.all.jsonwithin/distfolder. This file is ignored from git.New Behavior
1. introducing
tsconfig.base.all.jsontsconfig-base-allcreate-packagegenerator2. cross library projects now use tsconfig.base.all.json
🎬 DEMO:
DX-intellisense-leveraging-path-alliases-cross-project.mov
3. new
type-checkjust-script task4.
generate-apijust-script task udpates5. new/refactored @fluentui/scripts-tasks utils api
getFullTsConfigwhich returns final ts configuration ( resolves all extends )getTsPathAliasesConfigwhich has more concise APIgetTsPathAliasesConfigV8->getTsPathAliasesConfigUsedOnlyForDx6. @fluentui/scripts-tasks perf improvements
api-extractortask logic is executed only onjust-scripts api-extractorcallRelated Issue(s)