import { CheckboxSOP } from '../../libappsop/checkboxsop';
|
import { DialogSOP } from '../../libappsop/dialogsop';
|
import { ListSOP } from '../../libappsop/listsop';
|
import { DialogDummy } from '../dialogs/dialog.dummy';
|
|
export interface FormTransportationCostsFields {
|
FilterByAccounts?: string;
|
}
|
|
export class FormTransportationCosts extends DialogSOP<FormTransportationCostsFields> {
|
public static readonly title = 'Transportation Costs';
|
|
public listTransportationCosts = new ListTransportationCosts();
|
public cbFilterByAccounts = new CheckboxSOP('cbFilterByAccounts');
|
|
public constructor() {
|
super('FormTransportationCosts');
|
|
// 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('FilterByAccounts', this.cbFilterByAccounts);
|
}
|
}
|
|
export interface ListTransportationCostsColumns {
|
Unit?: string;
|
Lane?: string;
|
Origin?: string;
|
Destination?: string;
|
Account?: string;
|
'Cost driver'?: string;
|
Cost?: string;
|
UoM?: string;
|
Start?: string;
|
End?: string;
|
}
|
export class ListTransportationCosts extends ListSOP<DialogDummy, ListTransportationCostsColumns> {
|
public static readonly title = 'Transportation Costs';
|
|
public constructor() {
|
super('lsAccountCosts', new DialogDummy());
|
}
|
}
|
|
const listTransportationCostsContextMenuItem = {
|
Copy: { ContextMenu: 'lsContextMenuAccCosts', Name: 'MenuCopy', Label: 'Copy' },
|
Delete: { ContextMenu: 'lsContextMenuAccCosts', Name: 'MenuDelete', Label: 'Delete' },
|
};
|
|
export { listTransportationCostsContextMenuItem as ListTransportationCostsContextMenuItem };
|
|
/**
|
* Expected tooltip for context menu item disabled.
|
*/
|
export const contextMenuDisabledTooltip = {
|
copyMultipleCost: (): string => 'Copy one cost at a time.',
|
};
|