{"version":3,"file":"angular-react-fabric-lib-components-command-bar.mjs","sources":["../../../libs/fabric/lib/components/command-bar/directives/command-bar-item.directives.ts","../../../libs/fabric/lib/components/command-bar/directives/command-bar-items.directives.ts","../../../libs/fabric/lib/components/command-bar/command-bar.component.ts","../../../libs/fabric/lib/components/command-bar/command-bar.module.ts","../../../libs/fabric/lib/components/command-bar/public-api.ts","../../../libs/fabric/lib/components/command-bar/angular-react-fabric-lib-components-command-bar.ts"],"sourcesContent":["// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\n\r\nimport { ContentChild, Directive, Input, TemplateRef, ElementRef } from '@angular/core';\r\nimport { ItemChangedPayload } from '@angular-react/fabric/lib/components/core';\r\nimport { ContextualMenuItemDirective } from '@angular-react/fabric/lib/components/contextual-menu'\r\nimport {\r\n  ICommandBarItemOptions,\r\n  ICommandBarItemOptionsRenderContext,\r\n  ICommandBarItemOptionsRenderIconContext,\r\n} from '../command-bar.component';\r\n\r\nexport type CommandBarItemChangedPayload = ItemChangedPayload<ICommandBarItemOptions['key'], ICommandBarItemOptions>;\r\n\r\n/**\r\n * Wrapper directive to allow rendering a custom item to a CommandBarItem.\r\n */\r\n@Directive({ selector: 'fab-command-bar-item > render' })\r\nexport class CommandBarItemRenderDirective {\r\n  @ContentChild(TemplateRef) readonly templateRef: TemplateRef<ICommandBarItemOptionsRenderContext>;\r\n}\r\n\r\n/**\r\n * Wrapper directive to allow rendering a custom icon to a CommandBarItem.\r\n */\r\n@Directive({ selector: 'fab-command-bar-item > render-icon' })\r\nexport class CommandBarItemRenderIconDirective {\r\n  @ContentChild(TemplateRef) readonly templateRef: TemplateRef<ICommandBarItemOptionsRenderIconContext>;\r\n}\r\n\r\n@Directive({ selector: 'fab-command-bar-item' })\r\nexport class CommandBarItemDirective extends ContextualMenuItemDirective implements ICommandBarItemOptions {\r\n  // ICommandBarItemOptions implementation\r\n  @Input() iconOnly?: ICommandBarItemOptions['iconOnly'];\r\n  @Input() tooltipHostProps?: ICommandBarItemOptions['tooltipHostProps'];\r\n  @Input() buttonStyles?: ICommandBarItemOptions['buttonStyles'];\r\n  @Input() cacheKey?: ICommandBarItemOptions['cacheKey'];\r\n  @Input() renderedInOverflow?: ICommandBarItemOptions['renderedInOverflow'];\r\n  @Input() commandBarButtonAs?: ICommandBarItemOptions['commandBarButtonAs'];\r\n\r\n  constructor(elementRef: ElementRef<HTMLElement>) {\r\n    super(elementRef);\r\n  }\r\n}\r\n","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\n\r\nimport { ContentChildren, Directive, QueryList } from '@angular/core';\r\nimport { ChangeableItemsDirective } from '@angular-react/fabric/lib/components/core';\r\nimport { getDataAttributes } from '@angular-react/fabric/lib/utils';\r\n\r\nimport { ICommandBarItemOptions } from '../command-bar.component';\r\nimport { CommandBarItemDirective } from './command-bar-item.directives';\r\n\r\nexport abstract class CommandBarItemsDirectiveBase extends ChangeableItemsDirective<ICommandBarItemOptions> {\r\n  abstract readonly directiveItems: QueryList<CommandBarItemDirective>;\r\n\r\n  get items() {\r\n    return (\r\n      this.directiveItems &&\r\n      this.directiveItems.map<ICommandBarItemOptions>((directiveItem: CommandBarItemDirective) => ({\r\n        ...directiveItem,\r\n        ...getDataAttributes(directiveItem.elementRef.nativeElement, true),\r\n        onClick: (ev, item) => {\r\n          directiveItem.click.emit({\r\n            ev: ev && ev.nativeEvent,\r\n            item: item,\r\n          });\r\n        },\r\n      }))\r\n    );\r\n  }\r\n}\r\n\r\n@Directive({ selector: 'fab-command-bar > items' })\r\nexport class CommandBarItemsDirective extends CommandBarItemsDirectiveBase {\r\n  @ContentChildren(CommandBarItemDirective) readonly directiveItems: QueryList<CommandBarItemDirective>;\r\n}\r\n\r\n@Directive({ selector: 'fab-command-bar > far-items' })\r\nexport class CommandBarFarItemsDirective extends CommandBarItemsDirectiveBase {\r\n  @ContentChildren(CommandBarItemDirective) readonly directiveItems: QueryList<CommandBarItemDirective>;\r\n}\r\n\r\n@Directive({ selector: 'fab-command-bar > overflow-items' })\r\nexport class CommandBarOverflowItemsDirective extends CommandBarItemsDirectiveBase {\r\n  @ContentChildren(CommandBarItemDirective) readonly directiveItems: QueryList<CommandBarItemDirective>;\r\n}\r\n","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\n\r\nimport { InputRendererOptions, KnownKeys, ReactWrapperComponent } from '@angular-react/core';\r\nimport {\r\n  AfterContentInit,\r\n  ChangeDetectionStrategy,\r\n  ChangeDetectorRef,\r\n  Component,\r\n  ContentChild,\r\n  ElementRef,\r\n  EventEmitter,\r\n  Input,\r\n  NgZone,\r\n  OnDestroy,\r\n  OnInit,\r\n  Output,\r\n  QueryList,\r\n  Renderer2,\r\n  ViewChild,\r\n} from '@angular/core';\r\nimport { ICommandBarItemProps, ICommandBarProps } from '@fluentui/react/lib/CommandBar';\r\nimport { IContextualMenuItem } from '@fluentui/react/lib/ContextualMenu';\r\nimport { Subscription } from 'rxjs';\r\nimport { mergeItemChanges } from '@angular-react/fabric/lib/components/core';\r\nimport { omit, Styled } from '@angular-react/fabric/lib/utils';\r\nimport { OnChanges, TypedChanges } from '@angular-react/fabric/lib/declarations';\r\n\r\nimport { CommandBarItemChangedPayload, CommandBarItemDirective } from './directives/command-bar-item.directives';\r\nimport {\r\n  CommandBarFarItemsDirective,\r\n  CommandBarItemsDirective,\r\n  CommandBarItemsDirectiveBase,\r\n  CommandBarOverflowItemsDirective,\r\n} from './directives/command-bar-items.directives';\r\nimport { AngularReact } from '@angular-react/core';\r\n\r\n@AngularReact()\r\n@Styled('FabCommandBarComponent')\r\n@Component({\r\n  selector: 'fab-command-bar',\r\n  exportAs: 'fabCommandBar',\r\n  template: `\r\n    <CommandBar\r\n      #reactNode\r\n      [componentRef]=\"componentRef\"\r\n      [items]=\"transformedItems_\"\r\n      [farItems]=\"transformedFarItems_\"\r\n      [overflowItems]=\"transformedOverflowItems_\"\r\n      [overflowButtonProps]=\"overflowButtonProps\"\r\n      [overflowButtonAs]=\"overflowButtonAs\"\r\n      [buttonAs]=\"buttonAs\"\r\n      [shiftOnReduce]=\"shiftOnReduce\"\r\n      [className]=\"className\"\r\n      [ariaLabel]=\"ariaLabel\"\r\n      [styles]=\"styles\"\r\n      [theme]=\"theme\"\r\n      [ReduceData]=\"onReduceData\"\r\n      [GrowData]=\"onGrowData\"\r\n      (onDataReduced)=\"(onDataReduced)\"\r\n      (onDataGrown)=\"(onDataGrown)\"\r\n    >\r\n    </CommandBar>\r\n  `,\r\n  changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class FabCommandBarComponent extends ReactWrapperComponent<ICommandBarProps>\r\n  implements OnInit, OnChanges<FabCommandBarComponent>, AfterContentInit, OnDestroy {\r\n  @ContentChild(CommandBarItemsDirective, { static: true }) readonly itemsDirective?: CommandBarItemsDirective;\r\n  @ContentChild(CommandBarFarItemsDirective, { static: true }) readonly farItemsDirective?: CommandBarFarItemsDirective;\r\n  @ContentChild(CommandBarOverflowItemsDirective, { static: true }) readonly overflowItemsDirective?: CommandBarOverflowItemsDirective;\r\n\r\n  @ViewChild('reactNode', { static: true }) protected reactNodeRef: ElementRef;\r\n\r\n  @Input() componentRef?: ICommandBarProps['componentRef'];\r\n  @Input() overflowButtonProps?: ICommandBarProps['overflowButtonProps'];\r\n  @Input() overflowButtonAs?: ICommandBarProps['overflowButtonAs'];\r\n  @Input() buttonAs?: ICommandBarProps['buttonAs'];\r\n  @Input() shiftOnReduce?: ICommandBarProps['shiftOnReduce'];\r\n  @Input() className?: ICommandBarProps['className'];\r\n  @Input() ariaLabel?: ICommandBarProps['ariaLabel'];\r\n  @Input() styles?: ICommandBarProps['styles'];\r\n  @Input() theme?: ICommandBarProps['theme'];\r\n  @Input() onReduceData?: ICommandBarProps['onReduceData'];\r\n  @Input() onGrowData?: ICommandBarProps['onGrowData'];\r\n\r\n  @Input() items: ReadonlyArray<ICommandBarItemOptions>;\r\n  @Input() farItems: ReadonlyArray<ICommandBarItemOptions>;\r\n  @Input() overflowItems: ReadonlyArray<ICommandBarItemOptions>;\r\n\r\n  @Output() readonly onDataReduced = new EventEmitter<{ movedItem: ICommandBarItemProps }>();\r\n  @Output() readonly onDataGrown = new EventEmitter<{ movedItem: ICommandBarItemProps }>();\r\n\r\n  /** @internal */\r\n  transformedItems_: ReadonlyArray<ICommandBarItemProps>;\r\n  /** @internal */\r\n  transformedFarItems_: ReadonlyArray<ICommandBarItemProps>;\r\n  /** @internal */\r\n  transformedOverflowItems_: ReadonlyArray<ICommandBarItemProps>;\r\n\r\n  private readonly _subscriptions: Subscription[] = [];\r\n\r\n  constructor(elementRef: ElementRef, changeDetectorRef: ChangeDetectorRef, renderer: Renderer2, ngZone: NgZone) {\r\n    super(elementRef, changeDetectorRef, renderer, { ngZone, setHostDisplay: true });\r\n  }\r\n\r\n  ngOnInit() {}\r\n\r\n  ngOnChanges(changes: TypedChanges<FabCommandBarComponent>) {\r\n    if (\r\n      changes['items'] &&\r\n      changes['items'].previousValue !== changes['items'].currentValue &&\r\n      changes['items'].currentValue\r\n    )\r\n      this._createTransformedItems(changes['items'].currentValue);\r\n    if (\r\n      changes['farItems'] &&\r\n      changes['farItems'].previousValue !== changes['farItems'].currentValue &&\r\n      changes['farItems'].currentValue\r\n    )\r\n      this._createTransformedFarItems(changes['farItems'].currentValue);\r\n    if (\r\n      changes['overflowItems'] &&\r\n      changes['overflowItems'].previousValue !== changes['overflowItems'].currentValue &&\r\n      changes['overflowItems'].currentValue\r\n    )\r\n      this._createTransformedOverflowItems(changes['overflowItems'].currentValue);\r\n\r\n    super.ngOnChanges(changes);\r\n  }\r\n\r\n  ngAfterContentInit() {\r\n    if (this.itemsDirective) this._initDirective(this.itemsDirective, 'items');\r\n    if (this.farItemsDirective) this._initDirective(this.farItemsDirective, 'farItems');\r\n    if (this.overflowItemsDirective) this._initDirective(this.overflowItemsDirective, 'overflowItems');\r\n    super.ngAfterContentInit();\r\n  }\r\n\r\n  ngOnDestroy() {\r\n    this._subscriptions.forEach(subscription => subscription.unsubscribe());\r\n  }\r\n\r\n  private _initDirective<TCommandBarItemsDirective extends CommandBarItemsDirectiveBase>(\r\n    directive: TCommandBarItemsDirective,\r\n    itemsPropertyKey: 'items' | 'farItems' | 'overflowItems'\r\n  ) {\r\n    const transformItemsFunc =\r\n      (directive instanceof CommandBarItemsDirective && (newItems => this._createTransformedItems(newItems))) ||\r\n      (directive instanceof CommandBarFarItemsDirective && (newItems => this._createTransformedFarItems(newItems))) ||\r\n      (directive instanceof CommandBarOverflowItemsDirective &&\r\n        (newItems => this._createTransformedOverflowItems(newItems)));\r\n    null;\r\n\r\n    if (!transformItemsFunc) {\r\n      throw new Error('Invalid directive given');\r\n    }\r\n\r\n    const setItems = (\r\n      mapper: (items: ReadonlyArray<ICommandBarItemOptions>) => ReadonlyArray<ICommandBarItemOptions>\r\n    ) => {\r\n      this[itemsPropertyKey] = mapper(this[itemsPropertyKey]);\r\n      transformItemsFunc(this[itemsPropertyKey]);\r\n\r\n      this.markForCheck();\r\n    };\r\n\r\n    // Initial items\r\n    setItems(() => directive.items);\r\n\r\n    // Subscribe to adding/removing items\r\n    this._subscriptions.push(\r\n      directive.onItemsChanged.subscribe((newItems: QueryList<CommandBarItemDirective>) => {\r\n        setItems(() => newItems.map<ICommandBarItemOptions>(directive => directive));\r\n      })\r\n    );\r\n\r\n    // Subscribe for existing items changes\r\n    this._subscriptions.push(\r\n      directive.onChildItemChanged.subscribe(({ key, changes }: CommandBarItemChangedPayload) => {\r\n        setItems(items => items.map(item => (item.key === key ? mergeItemChanges(item, changes) : item)));\r\n        this.markForCheck();\r\n      })\r\n    );\r\n  }\r\n\r\n  private _createTransformedItems(newItems: ReadonlyArray<ICommandBarItemOptions>) {\r\n    this.transformedItems_ = newItems.map(item => this._transformCommandBarItemOptionsToProps(item));\r\n  }\r\n\r\n  private _createTransformedFarItems(newItems: ReadonlyArray<ICommandBarItemOptions>) {\r\n    this.transformedFarItems_ = newItems.map(item => this._transformCommandBarItemOptionsToProps(item));\r\n  }\r\n\r\n  private _createTransformedOverflowItems(newItems: ReadonlyArray<ICommandBarItemOptions>) {\r\n    this.transformedOverflowItems_ = newItems.map(item => this._transformCommandBarItemOptionsToProps(item));\r\n  }\r\n\r\n  private _transformCommandBarItemOptionsToProps(itemOptions: ICommandBarItemOptions): ICommandBarItemProps {\r\n    const sharedProperties = omit(itemOptions, 'renderIcon', 'render');\r\n\r\n    // Legacy render mode is used for the icon because otherwise the icon is to the right of the text (instead of the usual left)\r\n    const iconRenderer = this.createInputJsxRenderer(itemOptions.renderIcon, { legacyRenderMode: true });\r\n    const renderer = this.createInputJsxRenderer(itemOptions.render);\r\n\r\n    // @ts-ignore\r\n    return Object.assign(\r\n      {},\r\n      sharedProperties,\r\n      iconRenderer && {\r\n        onRenderIcon: (item: IContextualMenuItem) => iconRenderer({ contextualMenuItem: item }),\r\n      },\r\n      renderer &&\r\n      ({ onRender: (item, dismissMenu) => renderer({ item, dismissMenu }) } as Pick<ICommandBarItemProps, 'onRender'>)\r\n    ) as ICommandBarItemProps;\r\n  }\r\n}\r\n\r\nexport interface ICommandBarItemOptions<TData = any> extends Omit<ICommandBarItemProps, 'onRender' | 'onRenderIcon'> {\r\n  readonly renderIcon?: InputRendererOptions<ICommandBarItemOptionsRenderIconContext>;\r\n  readonly render?: InputRendererOptions<ICommandBarItemOptionsRenderContext>;\r\n  readonly data?: TData;\r\n}\r\n\r\nexport interface ICommandBarItemOptionsRenderContext {\r\n  item: any;\r\n  dismissMenu: (ev?: any, dismissAll?: boolean) => void;\r\n}\r\n\r\nexport interface ICommandBarItemOptionsRenderIconContext {\r\n  contextualMenuItem: IContextualMenuItem;\r\n}\r\n","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\n\r\nimport { registerElement } from '@angular-react/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\r\n// import * as OverflowSetCss from 'office-ui-fabric-react/lib-amd/components/OverflowSet/OverflowSet.scss';\r\nimport { CommandBar } from '@fluentui/react/lib/CommandBar';\r\n// import { noop } from '@angular-react/fabric/lib/utils';\r\n\r\nimport { FabContextualMenuModule } from '@angular-react/fabric/lib/components/contextual-menu';\r\nimport { FabCommandBarComponent } from './command-bar.component';\r\nimport {\r\n  CommandBarItemDirective,\r\n  CommandBarItemRenderDirective,\r\n  CommandBarItemRenderIconDirective,\r\n} from './directives/command-bar-item.directives';\r\nimport {\r\n  CommandBarFarItemsDirective,\r\n  CommandBarItemsDirective,\r\n  CommandBarOverflowItemsDirective,\r\n} from './directives/command-bar-items.directives';\r\n\r\n// Dummy action to force OverflowSetCss to load and not be tree-shaken away.\r\n// noop(OverflowSetCss);\r\n\r\nconst components = [\r\n  FabCommandBarComponent,\r\n  CommandBarItemsDirective,\r\n  CommandBarFarItemsDirective,\r\n  CommandBarOverflowItemsDirective,\r\n  CommandBarItemDirective,\r\n  CommandBarItemRenderDirective,\r\n  CommandBarItemRenderIconDirective,\r\n];\r\n\r\n@NgModule({\r\n  imports: [CommonModule, FabContextualMenuModule],\r\n  declarations: components,\r\n  exports: [...components, FabContextualMenuModule],\r\n  schemas: [NO_ERRORS_SCHEMA],\r\n})\r\nexport class FabCommandBarModule {\r\n  constructor() {\r\n    // Add any React elements to the registry (used by the renderer).\r\n    registerElement('CommandBar', () => CommandBar);\r\n  }\r\n}\r\n","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\n\r\nexport * from './command-bar.component';\r\nexport * from './command-bar.module';\r\nexport * from './directives/command-bar-item.directives';\r\nexport * from './directives/command-bar-items.directives';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}