import { DialogSOP } from '../../libappsop/dialogsop'; 
 | 
import { DurationSelectorSOP } from '../../libappsop/durationselectorsop'; 
 | 
import { EditFieldSOP } from '../../libappsop/editfieldsop'; 
 | 
  
 | 
export interface DialogShiftPatternFields { 
 | 
  Name?: string; 
 | 
  MinimumDuration?: string; 
 | 
} 
 | 
  
 | 
export class DialogShiftPattern extends DialogSOP<DialogShiftPatternFields> { 
 | 
  public static readonly title = 'Shift pattern'; 
 | 
  public efName = new EditFieldSOP('EditFieldName'); 
 | 
  public dsMinimumDuration = new DurationSelectorSOP('MinimumDurationSelector', { Days: 0, Hours: 0, Minutes: 0 }); 
 | 
  
 | 
  public constructor() { 
 | 
    super('DialogCreateEditShiftPattern'); 
 | 
  
 | 
    // 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('Name', this.efName); 
 | 
    this._uiMap.set('MinimumDuration', this.dsMinimumDuration); 
 | 
  } 
 | 
} 
 | 
  
 | 
/** 
 | 
 * Tooltips 
 | 
 */ 
 | 
export const btnOkTooltip = { 
 | 
  missingName: (): string => 'Shift pattern [Missing name]: Shift pattern must have a name of at most 500 characters.', 
 | 
  uniqueName: (name: string): string => `Shift pattern [${name}]: Shift pattern must be unique by name.`, 
 | 
}; 
 |