Skip to content

Commit c4e521b

Browse files
authored
Merge pull request #9 from Microsoft/bugfix/tree-shake-css
Workaround for #8
2 parents 8a1828e + b4ec8a1 commit c4e521b

File tree

9 files changed

+55
-5
lines changed

9 files changed

+55
-5
lines changed

libs/fabric/src/lib/components/command-bar/command-bar.module.ts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,9 @@
44
import { registerElement } from '@angular-react/core';
55
import { CommonModule } from '@angular/common';
66
import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';
7+
import * as OverflowSetCss from 'office-ui-fabric-react/lib-amd/components/OverflowSet/OverflowSet.scss';
78
import { CommandBar } from 'office-ui-fabric-react/lib/CommandBar';
9+
import { noop } from '../../utils/noop';
810
import { FabContextualMenuModule } from '../contextual-menu/contextual-menu.module';
911
import { FabCommandBarComponent } from './command-bar.component';
1012
import {
@@ -18,6 +20,9 @@ import {
1820
CommandBarOverflowItemsDirective,
1921
} from './directives/command-bar-items.directives';
2022

23+
// Dummy action to force OverflowSetCss to load and not be tree-shaken away.
24+
noop(OverflowSetCss);
25+
2126
const components = [
2227
FabCommandBarComponent,
2328
CommandBarItemsDirective,

libs/fabric/src/lib/components/date-picker/date-picker.component.ts

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,18 @@
22
// Licensed under the MIT License.
33

44
import { ReactWrapperComponent } from '@angular-react/core';
5-
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, EventEmitter, Input, Output, Renderer2, ViewChild } from '@angular/core';
6-
import { IDatePickerProps } from 'office-ui-fabric-react/lib/DatePicker';
5+
import {
6+
ChangeDetectionStrategy,
7+
ChangeDetectorRef,
8+
Component,
9+
ElementRef,
10+
EventEmitter,
11+
Input,
12+
Output,
13+
Renderer2,
14+
ViewChild,
15+
} from '@angular/core';
16+
import { IDatePickerProps } from 'office-ui-fabric-react';
717

818
@Component({
919
selector: 'fab-date-picker',

libs/fabric/src/lib/components/date-picker/date-picker.module.ts

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,14 @@
44
import { registerElement } from '@angular-react/core';
55
import { CommonModule } from '@angular/common';
66
import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';
7-
import { DatePicker } from 'office-ui-fabric-react/lib/DatePicker';
7+
import { DatePicker } from 'office-ui-fabric-react';
8+
import * as CalendarCss from 'office-ui-fabric-react/lib-amd/components/Calendar/Calendar.scss';
9+
import { noop } from '../../utils/noop';
810
import { FabDatePickerComponent } from './date-picker.component';
911

12+
// Dummy action to force CalendarCss to load and not be tree-shaken away.
13+
noop(CalendarCss);
14+
1015
const components = [FabDatePickerComponent];
1116

1217
@NgModule({

libs/fabric/src/lib/components/hover-card/hover-card.module.ts

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,14 @@
44
import { registerElement } from '@angular-react/core';
55
import { CommonModule } from '@angular/common';
66
import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';
7-
import { HoverCard, ExpandingCard } from 'office-ui-fabric-react/lib/HoverCard';
7+
import * as HoverCardCss from 'office-ui-fabric-react/lib-amd/components/HoverCard/HoverCardPage.global.scss';
8+
import { ExpandingCard, HoverCard } from 'office-ui-fabric-react/lib/HoverCard';
9+
import { noop } from '../../utils/noop';
810
import { FabHoverCardComponent } from './hover-card.component';
911

12+
// Dummy action to force HoverCardCss to load and not be tree-shaken away.
13+
noop(HoverCardCss);
14+
1015
const components = [
1116
FabHoverCardComponent,
1217
// FabExpandingCardComponent,

libs/fabric/src/lib/components/panel/panel.module.ts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,14 @@
44
import { registerElement } from '@angular-react/core';
55
import { CommonModule } from '@angular/common';
66
import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';
7+
import * as PanelCss from 'office-ui-fabric-react/lib-amd/components/Panel/Panel.scss';
78
import { Panel } from 'office-ui-fabric-react/lib/Panel';
9+
import { noop } from '../../utils/noop';
810
import { FabPanelComponent } from './panel.component';
911

12+
// Dummy action to force PanelCss to load and not be tree-shaken away.
13+
noop(PanelCss);
14+
1015
const components = [FabPanelComponent];
1116

1217
@NgModule({

libs/fabric/src/lib/components/pickers/base-picker/base-picker.module.ts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,12 @@
44
import { registerElement } from '@angular-react/core';
55
import { CommonModule } from '@angular/common';
66
import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';
7+
import * as BasePickerCss from 'office-ui-fabric-react/lib-amd/components/pickers/BasePicker.scss';
78
import { BasePicker } from 'office-ui-fabric-react/lib/pickers';
9+
import { noop } from '../../../utils/noop';
10+
11+
// Dummy action to force BasePickerCss to load and not be tree-shaken away.
12+
noop(BasePickerCss);
813

914
@NgModule({
1015
imports: [CommonModule],

libs/fabric/src/lib/components/pickers/tag-picker/tag-picker.module.ts

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,14 @@
44
import { registerElement } from '@angular-react/core';
55
import { CommonModule } from '@angular/common';
66
import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';
7+
import * as TagItemCss from 'office-ui-fabric-react/lib-amd/components/pickers/TagPicker/TagItem.scss';
8+
import { TagPicker } from 'office-ui-fabric-react/lib/components/pickers';
9+
import { noop } from '../../../utils/noop';
710
import { FabBasePickerModule } from '../base-picker/base-picker.module';
811
import { FabTagPickerComponent } from './tag-picker.component';
9-
import { TagPicker } from 'office-ui-fabric-react/lib/Pickers/TagPicker/TagPicker';
12+
13+
// Dummy action to force TagItemCss to load and not be tree-shaken away.
14+
noop(TagItemCss);
1015

1116
const components = [FabTagPickerComponent];
1217

libs/fabric/src/lib/components/tooltip/tooltip.module.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,13 @@
44
import { registerElement } from '@angular-react/core';
55
import { CommonModule } from '@angular/common';
66
import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';
7+
import * as TooltipHostCss from 'office-ui-fabric-react/lib-amd/components/Tooltip/TooltipHost.scss';
78
import { TooltipHost } from 'office-ui-fabric-react/lib/Tooltip';
9+
import { noop } from '../../utils/noop';
810
import { FabTooltipHostComponent } from './tooltip-host.component';
911

12+
// Dummy action to force TooltipHostCss to load and not be tree-shaken away.
13+
noop(TooltipHostCss);
1014
const components = [FabTooltipHostComponent];
1115

1216
@NgModule({

libs/fabric/src/lib/utils/noop.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
/**
2+
* Noop function - doesn't do anything
3+
*/
4+
export const noop = (...args: any[]) => {
5+
args.forEach(Object.keys);
6+
};

0 commit comments

Comments
 (0)