QuoteTemplatesListTable Container
The QuoteTemplatesListTable container displays all quote templates in a paginated table with search, filter, and action capabilities.
Version: 1.0.0-beta1
Configuration
The QuoteTemplatesListTable container provides the following configuration options:
| Parameter | Type | Req? | Description |
|---|---|---|---|
pageSize | number | No | Size of page |
showItemRange | boolean | No | Controls visibility of item range |
showPageSizePicker | boolean | No | Controls visibility of page size picker |
showPagination | boolean | No | Controls visibility of pagination |
onViewQuoteTemplate | (templateId: string | No | Callback function triggered when view quote template |
templateName | string | Yes | Configuration for template name |
status | string) => void | Yes | Callback function for status |
onGenerateQuoteFromTemplate | (templateId: string | No | Callback function triggered when generate quote from template |
templateName | string | Yes | Configuration for template name |
quoteId | string) => void | Yes | Unique identifier for quote |
onPageSizeChange | (pageSize: number) => void | No | Callback function triggered when page size change |
onPageChange | (page: number) => void | No | Callback function triggered when page change |
State | SlotProps<{ template: NegotiableQuoteTemplateListEntry }> | No | ***************************************************************** Copyright 2025 Adobe All Rights Reserved. NOTICE: Adobe permits you to use, modify, and distribute this file in accordance with the terms of the Adobe license agreement accompanying it. ***************************************************************** |
Status | SlotProps<{ template: NegotiableQuoteTemplateListEntry }> | No | Slot for customizing the status cell content |
ValidUntil | SlotProps<{ template: NegotiableQuoteTemplateListEntry }> | No | Slot for customizing the valid until cell content |
MinQuoteTotal | SlotProps<{ template: NegotiableQuoteTemplateListEntry }> | No | Slot for customizing the min quote total cell content |
OrdersPlaced | SlotProps<{ template: NegotiableQuoteTemplateListEntry }> | No | Slot for customizing the orders placed cell content |
LastOrdered | SlotProps<{ template: NegotiableQuoteTemplateListEntry }> | No | Slot for customizing the last ordered cell content |
Actions | SlotProps<{ template: NegotiableQuoteTemplateListEntry | No | Slot for customizing the actions cell content |
onViewQuoteTemplate | (id: string | No | Callback function triggered when view quote template |
name | string | Yes | Configuration for name |
status | string) => void | Yes | Callback function for status |
onGenerateQuoteFromTemplate | (id: string | No | Callback function triggered when generate quote from template |
name | string) => void | Yes | Callback function for name |
EmptyTemplates | SlotProps | No | Slot for customizing the empty templates message |
ItemRange | SlotProps<{ startItem: number | No | Configuration for item range |
endItem | number | Yes | Slot for customizing the item range display |
totalCount | number | Yes | Slot for customizing the item range display |
currentPage | number | Yes | Slot for customizing the item range display |
pageSize | number | No | Size of page |
PageSizePicker | SlotProps<{ pageSize: number | No | Configuration for page size picker |
pageSizeOptions | number[] | Yes | Slot for customizing the page size picker |
onPageSizeChange | (pageSize: number) => void | No | Callback function triggered when page size change |
Pagination | SlotProps<{ currentPage: number | No | Configuration for pagination |
totalPages | number | Yes | Slot for customizing the pagination |
onChange | (page: number) => void | No | Slot for customizing the pagination |
Slots
This container exposes the following slots for customization:
| Slot | Type | Required | Description |
|---|---|---|---|
slots | \{ Name?: SlotProps<\{ template: NegotiableQuoteTemplateListEntry \}> | No | Custom slot for rendering slots |
Usage
The following example demonstrates how to use the QuoteTemplatesListTable container:
import { render as provider } from '@dropins/storefront-quote-management/render.js';import { QuoteTemplatesListTable } from '@dropins/storefront-quote-management/containers/QuoteTemplatesListTable.js';
await provider.render(QuoteTemplatesListTable, { templateName: "Example Name", status: () => {}, templateName: "Example Name", slots: { // Add custom slot implementations here }})(block);