diff options
Diffstat (limited to 'packages/merchant-backoffice-ui/src/paths/instance/templates/list')
3 files changed, 30 insertions, 8 deletions
diff --git a/packages/merchant-backoffice-ui/src/paths/instance/templates/list/ListPage.tsx b/packages/merchant-backoffice-ui/src/paths/instance/templates/list/ListPage.tsx index 9d289e957..8482f7f52 100644 --- a/packages/merchant-backoffice-ui/src/paths/instance/templates/list/ListPage.tsx +++ b/packages/merchant-backoffice-ui/src/paths/instance/templates/list/ListPage.tsx @@ -31,6 +31,7 @@ export interface Props { onCreate: () => void; onDelete: (e: MerchantBackend.Template.TemplateEntry) => void; onSelect: (e: MerchantBackend.Template.TemplateEntry) => void; + onNewOrder: (e: MerchantBackend.Template.TemplateEntry) => void; } export function ListPage({ @@ -38,6 +39,7 @@ export function ListPage({ onCreate, onDelete, onSelect, + onNewOrder, onLoadMoreBefore, onLoadMoreAfter, }: Props): VNode { @@ -54,6 +56,7 @@ export function ListPage({ onCreate={onCreate} onDelete={onDelete} onSelect={onSelect} + onNewOrder={onNewOrder} onLoadMoreBefore={onLoadMoreBefore} hasMoreBefore={!onLoadMoreBefore} onLoadMoreAfter={onLoadMoreAfter} diff --git a/packages/merchant-backoffice-ui/src/paths/instance/templates/list/Table.tsx b/packages/merchant-backoffice-ui/src/paths/instance/templates/list/Table.tsx index fd6ea5f6f..6635d6c55 100644 --- a/packages/merchant-backoffice-ui/src/paths/instance/templates/list/Table.tsx +++ b/packages/merchant-backoffice-ui/src/paths/instance/templates/list/Table.tsx @@ -30,6 +30,7 @@ interface Props { templates: Entity[]; onDelete: (e: Entity) => void; onSelect: (e: Entity) => void; + onNewOrder: (e: Entity) => void; onCreate: () => void; onLoadMoreBefore?: () => void; hasMoreBefore?: boolean; @@ -42,6 +43,7 @@ export function CardTable({ onCreate, onDelete, onSelect, + onNewOrder, onLoadMoreAfter, onLoadMoreBefore, hasMoreAfter, @@ -81,6 +83,7 @@ export function CardTable({ instances={templates} onDelete={onDelete} onSelect={onSelect} + onNewOrder={onNewOrder} rowSelection={rowSelection} rowSelectionHandler={rowSelectionHandler} onLoadMoreAfter={onLoadMoreAfter} @@ -101,6 +104,7 @@ interface TableProps { rowSelection: string[]; instances: Entity[]; onDelete: (e: Entity) => void; + onNewOrder: (e: Entity) => void; onSelect: (e: Entity) => void; rowSelectionHandler: StateUpdater<string[]>; onLoadMoreBefore?: () => void; @@ -118,6 +122,7 @@ function Table({ instances, onLoadMoreAfter, onDelete, + onNewOrder, onSelect, onLoadMoreBefore, hasMoreAfter, @@ -164,14 +169,23 @@ function Table({ > {i.template_description} </td> - <td> - <button - class="button is-danger is-small has-tooltip-left" - data-tooltip={i18n.str`delete selected templates from the database`} - onClick={() => onDelete(i)} - > - Delete - </button> + <td class="is-actions-cell right-sticky"> + <div class="buttons is-right"> + <button + class="button is-danger is-small has-tooltip-left" + data-tooltip={i18n.str`delete selected templates from the database`} + onClick={() => onDelete(i)} + > + Delete + </button> + <button + class="button is-info is-small has-tooltip-left" + data-tooltip={i18n.str`delete selected templates from the database`} + onClick={() => onNewOrder(i)} + > + New order + </button> + </div> </td> </tr> ); diff --git a/packages/merchant-backoffice-ui/src/paths/instance/templates/list/index.tsx b/packages/merchant-backoffice-ui/src/paths/instance/templates/list/index.tsx index e1a2d019e..5fce3a819 100644 --- a/packages/merchant-backoffice-ui/src/paths/instance/templates/list/index.tsx +++ b/packages/merchant-backoffice-ui/src/paths/instance/templates/list/index.tsx @@ -39,6 +39,7 @@ interface Props { onNotFound: () => VNode; onCreate: () => void; onSelect: (id: string) => void; + onNewOrder: (id: string) => void; } export default function ListTemplates({ @@ -46,6 +47,7 @@ export default function ListTemplates({ onLoadError, onCreate, onSelect, + onNewOrder, onNotFound, }: Props): VNode { const [position, setPosition] = useState<string | undefined>(undefined); @@ -73,6 +75,9 @@ export default function ListTemplates({ onSelect={(e) => { onSelect(e.template_id); }} + onNewOrder={(e) => { + onNewOrder(e.template_id); + }} onDelete={(e: MerchantBackend.Template.TemplateEntry) => deleteTemplate(e.template_id) .then(() => |