import { DateTimeSelectorSOP } from '../../libappsop/datetimeselectorsop'; 
 | 
import { DialogSOP } from '../../libappsop/dialogsop'; 
 | 
import { DropDownListSOP } from '../../libappsop/dropdownlistsop'; 
 | 
  
 | 
export interface DialogRecipeAssignmentFields { 
 | 
  Product?: string; 
 | 
  Recipe?: string; 
 | 
  EffectiveDate?: string; 
 | 
} 
 | 
  
 | 
export class DialogRecipeAssignment extends DialogSOP<DialogRecipeAssignmentFields> { 
 | 
  public ddlProduct = new DropDownListSOP('selProduct'); 
 | 
  public ddlRecipe = new DropDownListSOP('selRecipe'); 
 | 
  public dtsEffectiveDate = new DateTimeSelectorSOP('dsEffectiveDate'); 
 | 
  
 | 
  public constructor() { 
 | 
    super('DialogCreateEditRecipeWithEffectiveDate'); 
 | 
  
 | 
    // Set UI element mapping to pair the UI name to the UI element for use in DialogSOP to find the UI object to set value or verify value 
 | 
    // This prevents each new Dialog to duplicate code just to set/verify UI element value 
 | 
    this._uiMap.set('Product', this.ddlProduct); 
 | 
    this._uiMap.set('Recipe', this.ddlRecipe); 
 | 
    this._uiMap.set('EffectiveDate', this.dtsEffectiveDate); 
 | 
  } 
 | 
} 
 | 
  
 | 
/** 
 | 
 * Expected tooltip for OK button when disabled. 
 | 
 */ 
 | 
export const okButtonDisabledTooltip = { 
 | 
  notUnique: (productName: string, effectiveDate: string): string => `Product (${productName}) has more than one recipe with the same effective date (${effectiveDate}).`, 
 | 
}; 
 |