| import { ListSOP } from '../../libappsop/listsop'; | 
| import { FormSOP } from '../../libappsop/formsop'; | 
| import { DialogUnitOfMeasure } from '../dialogs/dialog.unitofmeasure'; | 
|   | 
| /** | 
|  * Units of Measure form. | 
|  */ | 
| export class FormUnitsOfMeasure extends FormSOP { | 
|   public listUnitsOfMeasure = new ListUnitsOfMeasure(); | 
|   | 
|   public constructor() { | 
|     super('FormUOM'); | 
|   } | 
| } | 
|   | 
| /** | 
|  * UoM list in Units of Measure form. | 
|  */ | 
| class ListUnitsOfMeasure extends ListSOP<DialogUnitOfMeasure, ListUnitsOfMeasureColumn> { | 
|   public constructor() { | 
|     super('ListUOM', new DialogUnitOfMeasure()); | 
|   | 
|     // Set primary key column name(s), to display in error message when assert fails | 
|     this.rowPrimaryColumnNames = {Name: ''}; | 
|   } | 
|   | 
|   /** | 
|    * Verify first row is default UoM (bold text for Name column) while the other rows are non-bold. | 
|    * | 
|    * @param defaultUoMName Default UoM name to verify the first row. | 
|    */ | 
|   public async verifyFirstRowDefaultUoM(defaultUoMName: string): Promise<void> { | 
|     const totalRows = await this.getRowCount(); | 
|     for (let x = 0; x < totalRows; x++) { | 
|       const row = await this.getRowByIndex(x); | 
|       // Verify 1st row is the default UoM and bold | 
|       if (x === 0) { | 
|         await this.verifyRowValues(row, {Name: defaultUoMName}); | 
|         await this.verifyRowCellBold(row, {Name: 'true'}); | 
|       } else { | 
|         // Non-default UoM is NOT bold | 
|         await this.verifyRowCellBold(row, {Name: 'false'}); | 
|       } | 
|     } | 
|   } | 
| } | 
|   | 
| export interface ListUnitsOfMeasureColumn { | 
|   Name?: string; | 
|   ImgIsDefault?: string; | 
| } | 
|   | 
| const listUnitsOfMeasureContextMenuItem = { | 
|   Create: { ContextMenu: 'listContextMenuUOM', Name: 'MenuCreate', Label: 'Create' }, | 
|   Edit: { ContextMenu: 'listContextMenuUOM', Name: 'MenuEdit', Label: 'Edit' }, | 
|   SetAsDefault: { ContextMenu: 'listContextMenuUOM', Name: 'MenuSetAsDefault', Label: 'Set as default' }, | 
| }; | 
|   | 
| export { listUnitsOfMeasureContextMenuItem as ListUnitsOfMeasureContextMenuItem }; |