@dropins/storefront-requisition-list 1.0.0-beta2 → 1.0.0-beta4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/api/fragments/RequisitionListItemsFragment.graphql.d.ts +1 -1
- package/api/index.d.ts +1 -0
- package/api/refineProduct/enrichConfigurableProducts.d.ts +10 -0
- package/api/refineProduct/index.d.ts +18 -0
- package/api.js +2 -2
- package/api.js.map +1 -1
- package/chunks/PaginationItemsCounter.js +4 -0
- package/chunks/PaginationItemsCounter.js.map +1 -0
- package/chunks/RequisitionListView.js +1 -1
- package/chunks/RequisitionListView.js.map +1 -1
- package/chunks/addRequisitionListItemsToCart.js +11 -37
- package/chunks/addRequisitionListItemsToCart.js.map +1 -1
- package/chunks/getRequisitionLists.js +3 -3
- package/chunks/getRequisitionLists.js.map +1 -1
- package/chunks/updateRequisitionList.js +34 -6
- package/chunks/updateRequisitionList.js.map +1 -1
- package/components/PaginationItemsCounter/PaginationItemsCounter.d.ts +10 -0
- package/components/PaginationItemsCounter/index.d.ts +19 -0
- package/components/ProductListTable/ProductListTable.d.ts +1 -1
- package/components/RequisitionListGridWrapper/RequisitionListGridWrapper.d.ts +4 -3
- package/components/index.d.ts +1 -0
- package/containers/RequisitionListGrid/RequisitionListGrid.d.ts +5 -0
- package/containers/RequisitionListGrid.js +1 -1
- package/containers/RequisitionListGrid.js.map +1 -1
- package/containers/RequisitionListSelector.js +2 -2
- package/containers/RequisitionListSelector.js.map +1 -1
- package/containers/RequisitionListView/RequisitionListView.d.ts +5 -0
- package/containers/RequisitionListView.js +1 -1
- package/containers/RequisitionListView.js.map +1 -1
- package/data/models/item.d.ts +22 -1
- package/data/transforms/transform-requisition-list.d.ts +4 -2
- package/hooks/useRequisitionListGrid.d.ts +1 -0
- package/i18n/en_US.json.d.ts +12 -3
- package/package.json +1 -1
- package/render.js +3 -3
- package/render.js.map +1 -1
- package/chunks/PageSizePicker.js +0 -4
- package/chunks/PageSizePicker.js.map +0 -1
- /package/api/{getRequisitionList → refineProduct}/graphql/refineProduct.d.ts +0 -0
package/data/models/item.d.ts
CHANGED
|
@@ -24,6 +24,8 @@ interface Product {
|
|
|
24
24
|
metaTitle: string;
|
|
25
25
|
description: string;
|
|
26
26
|
addToCartAllowed: boolean;
|
|
27
|
+
stock_status: 'IN_STOCK' | 'OUT_OF_STOCK';
|
|
28
|
+
only_x_left_in_stock: number | null;
|
|
27
29
|
url: string;
|
|
28
30
|
urlKey: string;
|
|
29
31
|
externalId: string;
|
|
@@ -89,6 +91,23 @@ interface CustomizableOption {
|
|
|
89
91
|
value: string;
|
|
90
92
|
}[];
|
|
91
93
|
}
|
|
94
|
+
export interface RawCustomizableOption {
|
|
95
|
+
customizable_option_uid: string;
|
|
96
|
+
is_required: boolean;
|
|
97
|
+
label: string;
|
|
98
|
+
sort_order: number;
|
|
99
|
+
type: string;
|
|
100
|
+
values: Array<{
|
|
101
|
+
customizable_option_value_uid: string;
|
|
102
|
+
label: string;
|
|
103
|
+
price: {
|
|
104
|
+
type: string;
|
|
105
|
+
units: string;
|
|
106
|
+
value: number;
|
|
107
|
+
};
|
|
108
|
+
value: string;
|
|
109
|
+
}>;
|
|
110
|
+
}
|
|
92
111
|
interface Link {
|
|
93
112
|
uid: string;
|
|
94
113
|
price?: number;
|
|
@@ -119,8 +138,10 @@ interface Sample {
|
|
|
119
138
|
interface Item {
|
|
120
139
|
uid: string;
|
|
121
140
|
sku: string;
|
|
122
|
-
product
|
|
141
|
+
product?: Product;
|
|
123
142
|
quantity: number;
|
|
143
|
+
stock_status: 'IN_STOCK' | 'OUT_OF_STOCK';
|
|
144
|
+
only_x_left_in_stock: number | null;
|
|
124
145
|
customizable_options?: CustomizableOption[];
|
|
125
146
|
bundle_options?: BundleOption[];
|
|
126
147
|
configurable_options?: ConfigurableOption[];
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { RequisitionList } from '../models/requisitionList';
|
|
2
|
-
import { ConfiguredProduct, Link, Sample, BundleOption, ConfigurableOption,
|
|
2
|
+
import { ConfiguredProduct, Link, Sample, BundleOption, ConfigurableOption, RawCustomizableOption, GiftCardOption } from '../models/item';
|
|
3
3
|
|
|
4
4
|
export interface RawRequisitionListData {
|
|
5
5
|
name: string;
|
|
@@ -21,9 +21,11 @@ interface RawItemData {
|
|
|
21
21
|
uid: string;
|
|
22
22
|
product: {
|
|
23
23
|
sku: string;
|
|
24
|
+
stock_status?: string;
|
|
25
|
+
only_x_left_in_stock?: number | null;
|
|
24
26
|
};
|
|
25
27
|
quantity: number;
|
|
26
|
-
customizable_options?:
|
|
28
|
+
customizable_options?: RawCustomizableOption[];
|
|
27
29
|
bundle_options?: BundleOption[];
|
|
28
30
|
configurable_options?: ConfigurableOption[];
|
|
29
31
|
configured_product?: ConfiguredProduct;
|
|
@@ -14,6 +14,7 @@ export declare function useRequisitionListGrid(callbacks?: Callbacks, routeRequi
|
|
|
14
14
|
current_page: number;
|
|
15
15
|
total_pages: number;
|
|
16
16
|
} | undefined;
|
|
17
|
+
totalCount: number | undefined;
|
|
17
18
|
handlePageChange: (page?: number) => Promise<void>;
|
|
18
19
|
handlePageSizeChange: (pageSize: number) => Promise<void>;
|
|
19
20
|
isAdding: boolean;
|
package/i18n/en_US.json.d.ts
CHANGED
|
@@ -81,8 +81,6 @@ declare const _default: {
|
|
|
81
81
|
"confirmAction": "Delete",
|
|
82
82
|
"cancelAction": "Cancel",
|
|
83
83
|
"emptyRequisitionList": " Requisition List is empty",
|
|
84
|
-
"show": "Show",
|
|
85
|
-
"itemsCounter": "Items {from}-{to} of {total}",
|
|
86
84
|
"productListTable": {
|
|
87
85
|
"headers": {
|
|
88
86
|
"productName": "Product name",
|
|
@@ -92,7 +90,9 @@ declare const _default: {
|
|
|
92
90
|
"subtotal": "Subtotal",
|
|
93
91
|
"actions": "Actions"
|
|
94
92
|
},
|
|
95
|
-
"itemQuantity": "Item quantity"
|
|
93
|
+
"itemQuantity": "Item quantity",
|
|
94
|
+
"outOfStock": "Out of stock",
|
|
95
|
+
"onlyXLeftInStock": "Only {count} left in stock"
|
|
96
96
|
},
|
|
97
97
|
"errorLoadPage": "Failed to load page",
|
|
98
98
|
"errorLoadingProducts": "Failed to load product data",
|
|
@@ -100,8 +100,17 @@ declare const _default: {
|
|
|
100
100
|
"notFoundMessage": "The requisition list you are looking for does not exist or you do not have access to it.",
|
|
101
101
|
"notFoundActionLabel": "Back to Requisition Lists"
|
|
102
102
|
},
|
|
103
|
+
"RequisitionListsNotEnabled": {
|
|
104
|
+
"title": "Requisition Lists Not Available",
|
|
105
|
+
"message": "Requisition Lists are not available. Please contact your administrator for more information.",
|
|
106
|
+
"actionLabel": "Go to My Account"
|
|
107
|
+
},
|
|
103
108
|
"PageSizePicker": {
|
|
109
|
+
"show": "Show",
|
|
104
110
|
"itemsPerPage": "Items per page"
|
|
111
|
+
},
|
|
112
|
+
"PaginationItemsCounter": {
|
|
113
|
+
"itemsCounter": "Items {from}-{to} of {total}"
|
|
105
114
|
}
|
|
106
115
|
}
|
|
107
116
|
}
|
package/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name": "@dropins/storefront-requisition-list", "version": "1.0.0-
|
|
1
|
+
{"name": "@dropins/storefront-requisition-list", "version": "1.0.0-beta4", "@dropins/tools": "~1.6.0-beta3", "license": "SEE LICENSE IN LICENSE.md"}
|
package/render.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*! Copyright 2025 Adobe
|
|
2
2
|
All Rights Reserved. */
|
|
3
|
-
(function(o,e){try{if(typeof document<"u"){const
|
|
3
|
+
(function(o,e){try{if(typeof document<"u"){const t=document.createElement("style"),r=e.styleId;for(const i in e.attributes)t.setAttribute(i,e.attributes[i]);t.setAttribute("data-dropin",r),t.appendChild(document.createTextNode(o));const a=document.querySelector('style[data-dropin="sdk"]');if(a)a.after(t);else{const i=document.querySelector('link[rel="stylesheet"], style');i?i.before(t):document.head.append(t)}}}catch(t){console.error("dropin-styles (injectCodeFunction)",t)}})(`.requisition-list-header{margin-bottom:var(--spacing-large)}.requisition-list-header__back{margin-bottom:var(--spacing-medium)}.requisition-list-header__back-link{display:inline-block;color:var(--color-neutral-800);font-size:var(--type-body-1-font-size);font-weight:var(--type-body-1-font-weight);line-height:var(--type-body-1-line-height);text-decoration:none!important;cursor:pointer;transition:color .2s ease;position:relative;padding-bottom:1px}.requisition-list-header__back-link *{text-decoration:none!important}.requisition-list-header__back-link:hover{color:var(--color-neutral-600);text-decoration:none!important}.requisition-list-header__back-link:hover:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background-color:var(--color-neutral-800)}.requisition-list-header__back-arrow{margin-right:var(--spacing-xsmall);text-decoration:none!important}.requisition-list-header__main{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-medium);flex-wrap:wrap}.requisition-list-header__title-section{flex:1;min-width:0}.requisition-list-header__title{margin:0;padding:0;font:var(--type-headline-1-font);letter-spacing:var(--type-headline-1-letter-spacing);color:var(--color-neutral-900)}.requisition-list-header__description{margin:var(--spacing-xsmall) 0 0;padding:0;font-size:var(--type-body-1-font-size);font-weight:var(--type-body-1-font-weight);line-height:var(--type-body-1-line-height);color:var(--color-neutral-700)}.requisition-list-header__actions{display:flex;gap:var(--spacing-medium);flex-wrap:wrap;align-items:center}.requisition-list-header__action-link{color:var(--color-neutral-800);font-size:var(--type-body-2-font-size);font-style:normal;font-weight:var(--type-body-2-font-weight);line-height:var(--type-body-2-line-height);letter-spacing:var(--type-body-2-letter-spacing);text-decoration:underline;cursor:pointer;transition:color .2s ease}.requisition-list-header__action-link:hover{color:var(--color-neutral-600)}@media (max-width: 768px){.requisition-list-header__main{flex-direction:column;align-items:stretch}.requisition-list-header__actions{justify-content:flex-start}}@supports (height: 100dvh){.requisition-list-modal .dropin-modal{height:100dvh}}.dropin-modal__body--medium>.dropin-modal__header-title,.dropin-modal__body--full>.dropin-modal__header-title,.requisition-list-modal .dropin-modal__content{align-items:center;margin:0}.requisition-list-modal .dropin-modal__header-title-content h3{font:var(--type-headline-1-font);letter-spacing:var(--type-headline-1-letter-spacing);margin:0;padding:0}.requisition-list-modal .requisition-list-modal__spinner{align-items:center;background-color:var(--color-neutral-200);display:flex;height:100%;left:0;justify-content:center;opacity:var(--color-opacity-24);position:absolute;top:0;width:100%;z-index:1}.requisition-list-modal p{margin:var(--spacing-small) 0}.requisition-list-modal .requisition-list-modal__buttons{align-items:center;display:flex;gap:0 var(--spacing-small);justify-content:right}.requisition-list-modal--overlay{margin:auto;max-width:375px;padding:var(--spacing-small);position:relative;width:100%}@media (min-width: 768px){.requisition-list-modal--overlay{margin:auto;max-width:768px;padding:var(--spacing-xxbig);position:relative;width:100%}.requisition-list-modal p{color:var(--color-neutral-800);font:var(--type-body-2-strong-font);letter-spacing:var(--type-body-2-strong-letter-spacing);margin-bottom:var(--spacing-medium)}}
|
|
4
4
|
.requisition-list-form{background-color:var(--color-neutral-50);box-sizing:border-box}.requisition-list-form__title{color:var(--color-neutral-800);font:var(--type-headline-2-strong-font);letter-spacing:var(--type-headline-2-strong-letter-spacing);margin-bottom:var(--spacing-medium)}.requisition-list-form__notification{margin-bottom:var(--spacing-medium)}.requisition-list-form__form{display:grid;gap:var(--spacing-medium);grid-template-columns:1fr}.requisition-list-form__actions{align-items:center;display:flex;gap:0 var(--grid-2-gutters);justify-content:flex-end}.requisition-list-form_progress-spinner{float:right}
|
|
5
|
-
.requisition-list-selector__form .dropin-card__content{align-items:center;cursor:pointer;display:flex;flex-direction:row;flex-wrap:wrap;gap:var(--spacing-xxsmall);padding:var(--spacing-xsmall)}.requisition-list-selector__form .dropin-card--secondary{border:none}.requisition-list-selector__form .requisition-list-form__actions{margin-top:var(--spacing-medium)}.requisition-list-selector__available-lists{max-height:300px;min-height:200px;overflow-y:scroll}.requisition-list-selector__available-lists::-webkit-scrollbar{width:var(--spacing-small);display:block}.requisition-list-selector__available-lists::-webkit-scrollbar-track{background:var(--color-neutral-100);border-radius:var(--shape-border-radius-2)}.requisition-list-selector__available-lists::-webkit-scrollbar-thumb{background:var(--color-neutral-300);border-radius:var(--shape-border-radius-2)}.requisition-list-selector__available-lists::-webkit-scrollbar-thumb:hover{background:var(--color-neutral-500)}.requisition-list-modal .requisition-list-actions{margin:var(--spacing-medium) auto}.requisition-list-grid-wrapper__content{display:grid;grid-template-columns:repeat(4,1fr);row-gap:var(--spacing-xsmall);width:100%}.requisition-list-grid-wrapper__list-header{display:contents}.requisition-list-grid-wrapper__pagination{grid-column:1 / -1;margin:var(--spacing-medium)}.requisition-list-grid-wrapper__pagination-controls{display:flex;align-items:center;gap:var(--spacing-medium);justify-content:center;min-height:40px}.requisition-list-grid-wrapper__add-new{margin:var(--spacing-medium) 0}.requisition-list-grid-wrapper__name__title{display:block;font:var(--type-body-1-emphasized-font);margin-bottom:2px}.requisition-list-grid-wrapper__name__description{font:var(--type-details-caption-2-font)}.requisition-list-grid-wrapper__actions{display:flex;gap:var(--spacing-medium)}.requisition-list-grid-wrapper__actions .dropin-button--tertiary{padding:0}.requisition-list-grid-wrapper__actions .dropin-button--tertiary:hover{text-decoration:underline}.requisition-list-empty-list{margin-bottom:var(--spacing-small);text-align:center}.requisition-list__alert-wrapper{margin-bottom:var(--spacing-small)}.requisition-list-actions{align-items:center;background-color:var(--color-neutral-50);border:var(--shape-border-width-2) solid var(--color-neutral-400);border-radius:var(--shape-border-radius-2);cursor:pointer;display:flex;justify-content:space-between;padding:var(--spacing-medium);width:100%}.requisition-list-actions--selectable{max-width:100%;width:auto}.requisition-list-actions__title{font:var(--type-button-2-font);letter-spacing:var(--type-button-2-letter-spacing);-moz-appearance:none;appearance:none;-webkit-appearance:none;color:var(--color-neutral-800)}.requisition-list-actions svg{color:var(--color-neutral-800);stroke:var(--shape-icon-stroke-4)}.empty-list{text-align:center;margin:auto 0}.not-found{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-large);text-align:center;min-height:400px}.not-found svg{color:var(--color-neutral-400);margin-bottom:var(--spacing-medium)}.not-found h2{font-size:var(--type-headline-3-font-size);font-weight:var(--type-headline-3-font-weight);margin:0 0 var(--spacing-small) 0;color:var(--color-neutral-800)}.not-found p{font-size:var(--type-body-1-font-size);color:var(--color-neutral-600);margin:0 0 var(--spacing-medium) 0;max-width:500px}.not-found button{margin-top:var(--spacing-small)}.requisition-list-view-product-list-table-container{display:flex;flex-direction:column;gap:var(--spacing-small)}.requisition-list-view-product-list-table__checkbox{align-self:center;justify-self:center}.requisition-list-view-product-list-table__index-container{display:inline-block;line-height:1}.requisition-list-view-product-list-table__item-container{display:flex;align-items:flex-start;gap:var(--spacing-small)}.requisition-list-view-product-list-table__item-details{display:flex;flex-direction:column;gap:var(--spacing-xxsmall)}.requisition-list-view-product-list-table__product-name{font:var(--type-body-1-font);letter-spacing:var(--type-body-1-letter-spacing);font-weight:700}.requisition-list-view-product-list-table__product-configurable-name{font:var(--type-body-1-default-font)}.requisition-list-view-product-list-table__sku{font:var(--type-details-caption-1-font);letter-spacing:var(--type-details-caption-1-letter-spacing)}.requisition-list-view-product-list-table__thumbnail{width:44px;flex-shrink:0}.requisition-list-view-product-list-table__quantity{font:var(--type-body-1-font);letter-spacing:var(--type-body-1-letter-spacing);display:block;justify-self:center}.requisition-list-view-product-list-table__discount-container{display:flex;flex-direction:row;flex-wrap:wrap;gap:var(--spacing-xxsmall);align-items:baseline}.requisition-list-view-product-list-table-container__submit-container{display:flex;justify-content:flex-end}.requisition-list-view__batch-actions{--batch-actions-background: #f0f4f8;--batch-actions-toggle-border: #b3b3b3;--batch-actions-toggle-border-hover: #666666;--batch-actions-toggle-background: #ffffff;--batch-actions-toggle-background-hover: #f5f5f5;--batch-actions-toggle-active-background: #505050;--batch-actions-toggle-active-background-hover: #3d3d3d;--batch-actions-toggle-icon-active: #ffffff;--batch-actions-label-color: #2d2d2d;--batch-actions-badge-background: #378ef0;--batch-actions-badge-color: #ffffff;--batch-actions-button-background: #fafafa;--batch-actions-button-background-hover: #f0f0f0;--batch-actions-button-border: #d3d3d3;--batch-actions-delete-color: #4a4a4a;--batch-actions-delete-color-hover: #d7373f;display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-medium) 0;margin-bottom:var(--spacing-small);background-color:var(--batch-actions-background);border-radius:0}.requisition-list-view__batch-actions-left{display:flex;align-items:center;gap:var(--spacing-small);padding-left:var(--spacing-medium)}.requisition-list-view__batch-actions-select-toggle{display:flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:1px solid var(--batch-actions-toggle-border);border-radius:0;background-color:var(--batch-actions-toggle-background);cursor:pointer;transition:all .2s ease}.requisition-list-view__batch-actions-select-toggle:hover:not(:disabled){border-color:var(--batch-actions-toggle-border-hover);background-color:var(--batch-actions-toggle-background-hover)}.requisition-list-view__batch-actions-select-toggle--active{background-color:var(--batch-actions-toggle-active-background);border-color:var(--batch-actions-toggle-active-background)}.requisition-list-view__batch-actions-select-toggle--active svg,.requisition-list-view__batch-actions-select-toggle--active path{fill:var(--batch-actions-toggle-icon-active);color:var(--batch-actions-toggle-icon-active)}.requisition-list-view__batch-actions-select-toggle--active:hover:not(:disabled){background-color:var(--batch-actions-toggle-active-background-hover);border-color:var(--batch-actions-toggle-active-background-hover)}.requisition-list-view__batch-actions-select-toggle:disabled{opacity:.5;cursor:not-allowed}.requisition-list-view__batch-actions-select-label{padding:0;border:none;background:none;font-size:var(--type-base-font-size);font-weight:var(--type-base-font-weight);color:var(--batch-actions-label-color);cursor:pointer;transition:opacity .2s ease}.requisition-list-view__batch-actions-select-label:hover:not(:disabled){opacity:.8}.requisition-list-view__batch-actions-select-label:disabled{opacity:.5;cursor:not-allowed}.requisition-list-view__batch-actions-count-badge{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border-radius:50%;background-color:var(--batch-actions-badge-background);color:var(--batch-actions-badge-color);font-size:var(--type-detail-2-font-size);font-weight:var(--type-detail-2-font-weight);line-height:1;flex-shrink:0}.requisition-list-view__batch-actions-buttons{display:flex;align-items:center;gap:var(--spacing-small);padding-right:var(--spacing-medium)}.requisition-list-view__batch-actions-buttons button:not(.requisition-list-view__batch-actions-delete-icon){border-radius:var(--shape-border-radius-1);background-color:var(--batch-actions-button-background);border:1px solid var(--batch-actions-button-border)}.requisition-list-view__batch-actions-buttons button:not(.requisition-list-view__batch-actions-delete-icon):hover:not(:disabled){background-color:var(--batch-actions-button-background-hover)}.requisition-list-view__batch-actions-delete-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:none;background:transparent;color:var(--batch-actions-delete-color);cursor:pointer;transition:color .2s ease}.requisition-list-view__batch-actions-delete-icon:hover:not(:disabled){color:var(--batch-actions-delete-color-hover);background:none!important}.requisition-list-view__batch-actions-delete-icon:disabled{opacity:.5;cursor:not-allowed}.requisition-list-view__bulk-actions{margin-bottom:var(--spacing-xsmall);display:flex;gap:var(--spacing-xsmall);align-items:center}.page-size-picker{display:flex;align-items:center;gap:var(--spacing-xsmall);font:var(--type-body-1-default-font);letter-spacing:var(--type-body-1-default-letter-spacing);color:var(--color-neutral-800)}.page-size-picker__label{font-size:var(--font-size-small);color:var(--color-text-secondary);white-space:nowrap}.page-size-picker__select{min-width:60px}.requisition-list-view__container{width:100%}.requisition-list-view__loading{display:flex;justify-content:center;align-items:center;min-height:400px;width:100%}.requisition-list-view__pagination{margin-top:var(--spacing-small);display:flex;justify-content:space-between;align-items:center}.requisition-list-view__pagination-items{font:var(--type-body-1-default-font);letter-spacing:var(--type-body-1-default-letter-spacing);color:var(--color-neutral-800)}.requisition-list-view__pagination-picker{display:flex;align-items:center;gap:var(--spacing-xsmall);font:var(--type-body-1-default-font);letter-spacing:var(--type-body-1-default-letter-spacing);color:var(--color-neutral-800)}`,{styleId:"RequisitionList"});
|
|
6
|
-
import{jsx as t}from"@dropins/tools/preact-jsx-runtime.js";import{Render as a}from"@dropins/tools/lib.js";import{useState as r,useEffect as
|
|
5
|
+
.requisition-list-selector__form .dropin-card__content{align-items:center;cursor:pointer;display:flex;flex-direction:row;flex-wrap:wrap;gap:var(--spacing-xxsmall);padding:var(--spacing-xsmall)}.requisition-list-selector__form .dropin-card--secondary{border:none}.requisition-list-selector__form .requisition-list-form__actions{margin-top:var(--spacing-medium)}.requisition-list-selector__available-lists{max-height:300px;min-height:200px;overflow-y:scroll}.requisition-list-selector__available-lists::-webkit-scrollbar{width:var(--spacing-small);display:block}.requisition-list-selector__available-lists::-webkit-scrollbar-track{background:var(--color-neutral-100);border-radius:var(--shape-border-radius-2)}.requisition-list-selector__available-lists::-webkit-scrollbar-thumb{background:var(--color-neutral-300);border-radius:var(--shape-border-radius-2)}.requisition-list-selector__available-lists::-webkit-scrollbar-thumb:hover{background:var(--color-neutral-500)}.requisition-list-modal .requisition-list-actions{margin:var(--spacing-medium) auto}.requisition-list-grid-wrapper__content{display:grid;grid-template-columns:repeat(4,1fr);row-gap:var(--spacing-xsmall);width:100%}.requisition-list-grid-wrapper__list-header{display:contents}.requisition-list-grid-wrapper__pagination{grid-column:1 / -1;margin-top:var(--spacing-small);display:flex;justify-content:space-between;align-items:center}.requisition-list-grid-wrapper__pagination-picker{display:flex;align-items:center;gap:var(--spacing-xsmall);font:var(--type-body-1-default-font);letter-spacing:var(--type-body-1-default-letter-spacing);color:var(--color-neutral-800)}.requisition-list-grid-wrapper__add-new{margin:var(--spacing-medium) 0}.requisition-list-grid-wrapper__name__title{display:block;font:var(--type-body-1-emphasized-font);margin-bottom:2px}.requisition-list-grid-wrapper__name__description{font:var(--type-details-caption-2-font)}.requisition-list-grid-wrapper__actions{display:flex;gap:var(--spacing-medium)}.requisition-list-grid-wrapper__actions .dropin-button--tertiary{padding:0}.requisition-list-grid-wrapper__actions .dropin-button--tertiary:hover{text-decoration:underline}.requisition-list-empty-list{margin-bottom:var(--spacing-small);text-align:center}.requisition-list__alert-wrapper{margin-bottom:var(--spacing-small)}.requisition-list-actions{align-items:center;background-color:var(--color-neutral-50);border:var(--shape-border-width-2) solid var(--color-neutral-400);border-radius:var(--shape-border-radius-2);cursor:pointer;display:flex;justify-content:space-between;padding:var(--spacing-medium);width:100%}.requisition-list-actions--selectable{max-width:100%;width:auto}.requisition-list-actions__title{font:var(--type-button-2-font);letter-spacing:var(--type-button-2-letter-spacing);-moz-appearance:none;appearance:none;-webkit-appearance:none;color:var(--color-neutral-800)}.requisition-list-actions svg{color:var(--color-neutral-800);stroke:var(--shape-icon-stroke-4)}.empty-list{text-align:center;margin:auto 0}.not-found{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-large);text-align:center;min-height:400px}.not-found svg{color:var(--color-neutral-400);margin-bottom:var(--spacing-medium)}.not-found h2{font-size:var(--type-headline-3-font-size);font-weight:var(--type-headline-3-font-weight);margin:0 0 var(--spacing-small) 0;color:var(--color-neutral-800)}.not-found p{font-size:var(--type-body-1-font-size);color:var(--color-neutral-600);margin:0 0 var(--spacing-medium) 0;max-width:500px}.not-found button{margin-top:var(--spacing-small)}.requisition-list-view-product-list-table-container{display:flex;flex-direction:column;gap:var(--spacing-small)}.requisition-list-view-product-list-table__checkbox{align-self:center;justify-self:center}.requisition-list-view-product-list-table__index-container{display:inline-block;line-height:1}.requisition-list-view-product-list-table__item-container{display:flex;align-items:flex-start;gap:var(--spacing-small)}.requisition-list-view-product-list-table__item-details{display:flex;flex-direction:column;gap:var(--spacing-xxsmall)}.requisition-list-view-product-list-table__product-name{font:var(--type-body-1-font);letter-spacing:var(--type-body-1-letter-spacing);font-weight:700}.requisition-list-view-product-list-table__out-of-stock{font:var(--type-body-1-default-font);color:var(--color-error, #d32f2f)}.requisition-list-view-product-list-table__low-stock{font:var(--type-body-1-default-font);color:var(--color-warning, #ed6c02)}.requisition-list-view-product-list-table__product-configurable-name{font:var(--type-body-1-default-font)}.requisition-list-view-product-list-table__sku{font:var(--type-details-caption-1-font);letter-spacing:var(--type-details-caption-1-letter-spacing)}.requisition-list-view-product-list-table__thumbnail{width:44px;flex-shrink:0}.requisition-list-view-product-list-table__quantity{font:var(--type-body-1-font);letter-spacing:var(--type-body-1-letter-spacing);display:block;justify-self:center}.requisition-list-view-product-list-table__discount-container{display:flex;flex-direction:row;flex-wrap:wrap;gap:var(--spacing-xxsmall);align-items:baseline}.requisition-list-view-product-list-table-container__submit-container{display:flex;justify-content:flex-end}.requisition-list-view__batch-actions{--batch-actions-background: #f0f4f8;--batch-actions-toggle-border: #b3b3b3;--batch-actions-toggle-border-hover: #666666;--batch-actions-toggle-background: #ffffff;--batch-actions-toggle-background-hover: #f5f5f5;--batch-actions-toggle-active-background: #505050;--batch-actions-toggle-active-background-hover: #3d3d3d;--batch-actions-toggle-icon-active: #ffffff;--batch-actions-label-color: #2d2d2d;--batch-actions-badge-background: #378ef0;--batch-actions-badge-color: #ffffff;--batch-actions-button-background: #fafafa;--batch-actions-button-background-hover: #f0f0f0;--batch-actions-button-border: #d3d3d3;--batch-actions-delete-color: #4a4a4a;--batch-actions-delete-color-hover: #d7373f;display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-medium) 0;margin-bottom:var(--spacing-small);background-color:var(--batch-actions-background);border-radius:0}.requisition-list-view__batch-actions-left{display:flex;align-items:center;gap:var(--spacing-small);padding-left:var(--spacing-medium)}.requisition-list-view__batch-actions-select-toggle{display:flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:1px solid var(--batch-actions-toggle-border);border-radius:0;background-color:var(--batch-actions-toggle-background);cursor:pointer;transition:all .2s ease}.requisition-list-view__batch-actions-select-toggle:hover:not(:disabled){border-color:var(--batch-actions-toggle-border-hover);background-color:var(--batch-actions-toggle-background-hover)}.requisition-list-view__batch-actions-select-toggle--active{background-color:var(--batch-actions-toggle-active-background);border-color:var(--batch-actions-toggle-active-background)}.requisition-list-view__batch-actions-select-toggle--active svg,.requisition-list-view__batch-actions-select-toggle--active path{fill:var(--batch-actions-toggle-icon-active);color:var(--batch-actions-toggle-icon-active)}.requisition-list-view__batch-actions-select-toggle--active:hover:not(:disabled){background-color:var(--batch-actions-toggle-active-background-hover);border-color:var(--batch-actions-toggle-active-background-hover)}.requisition-list-view__batch-actions-select-toggle:disabled{opacity:.5;cursor:not-allowed}.requisition-list-view__batch-actions-select-label{padding:0;border:none;background:none;font-size:var(--type-base-font-size);font-weight:var(--type-base-font-weight);color:var(--batch-actions-label-color);cursor:pointer;transition:opacity .2s ease}.requisition-list-view__batch-actions-select-label:hover:not(:disabled){opacity:.8}.requisition-list-view__batch-actions-select-label:disabled{opacity:.5;cursor:not-allowed}.requisition-list-view__batch-actions-count-badge{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border-radius:50%;background-color:var(--batch-actions-badge-background);color:var(--batch-actions-badge-color);font-size:var(--type-detail-2-font-size);font-weight:var(--type-detail-2-font-weight);line-height:1;flex-shrink:0}.requisition-list-view__batch-actions-buttons{display:flex;align-items:center;gap:var(--spacing-small);padding-right:var(--spacing-medium)}.requisition-list-view__batch-actions-buttons button:not(.requisition-list-view__batch-actions-delete-icon){border-radius:var(--shape-border-radius-1);background-color:var(--batch-actions-button-background);border:1px solid var(--batch-actions-button-border)}.requisition-list-view__batch-actions-buttons button:not(.requisition-list-view__batch-actions-delete-icon):hover:not(:disabled){background-color:var(--batch-actions-button-background-hover)}.requisition-list-view__batch-actions-delete-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:none;background:transparent;color:var(--batch-actions-delete-color);cursor:pointer;transition:color .2s ease}.requisition-list-view__batch-actions-delete-icon:hover:not(:disabled){color:var(--batch-actions-delete-color-hover);background:none!important}.requisition-list-view__batch-actions-delete-icon:disabled{opacity:.5;cursor:not-allowed}.requisition-list-view__bulk-actions{margin-bottom:var(--spacing-xsmall);display:flex;gap:var(--spacing-xsmall);align-items:center}.page-size-picker{display:flex;align-items:center;gap:var(--spacing-xsmall);font:var(--type-body-1-default-font);letter-spacing:var(--type-body-1-default-letter-spacing);color:var(--color-neutral-800)}.page-size-picker__label{font-size:var(--font-size-small);color:var(--color-text-secondary);white-space:nowrap}.page-size-picker__select{min-width:60px}.pagination-items-counter{font:var(--type-body-1-default-font);letter-spacing:var(--type-body-1-default-letter-spacing);color:var(--color-neutral-800)}.requisition-list-view__container{width:100%}.requisition-list-view__loading{display:flex;justify-content:center;align-items:center;min-height:400px;width:100%}.requisition-list-view__pagination{margin-top:var(--spacing-small);display:flex;justify-content:space-between;align-items:center}.requisition-list-view__pagination-picker{display:flex;align-items:center;gap:var(--spacing-xsmall);font:var(--type-body-1-default-font);letter-spacing:var(--type-body-1-default-letter-spacing);color:var(--color-neutral-800)}`,{styleId:"RequisitionList"});
|
|
6
|
+
import{jsx as t}from"@dropins/tools/preact-jsx-runtime.js";import{Render as a}from"@dropins/tools/lib.js";import{useState as r,useEffect as u}from"@dropins/tools/preact-hooks.js";import{UIProvider as c}from"@dropins/tools/components.js";import{events as d}from"@dropins/tools/event-bus.js";const l={containerTitle:"Requisition Lists",RequisitionListWrapper:{name:"Name & Description",itemsCount:"Items",lastUpdated:"Latest activity",actions:"Actions",loginMsg:"Please login",deleteRequisitionListTitle:"Are you sure you want to delete this Requisition List?",deleteRequisitionListMessage:"Requisition List will be permanently deleted. This action can not be undone.",confirmAction:"Confirm",cancelAction:"Cancel",emptyList:"No Requisition Lists found"},AddNewReqList:{addNewReqListBtn:"Add new Requisition List"},RequisitionListItem:{actionUpdate:"Update",actionDelete:"Delete"},RequisitionListForm:{actionCancel:"Cancel",actionSave:"Save",requiredField:"This is a required field.",nameMinLength:"Name must be at least {min} characters long.",nameInvalidCharacters:"Name contains invalid characters. Only letters, numbers, spaces, and basic punctuation are allowed.",floatingLabel:"Requisition List Name *",placeholder:"Requisition List Name",label:"Description",updateTitle:"Update Requisition List",createTitle:"Create Requisition List",addToRequisitionList:"Add to Requisition List"},RequisitionListSelector:{addToNewRequisitionList:"Add to New Requisition List",addToSelected:"Add to Selected List"},RequisitionListAlert:{errorCreate:"Error creating requisition list.",successCreate:"Requisition list created successfully.",errorAddToCart:"Error adding item to cart.",successAddToCart:"Item(s) added to cart successfully.",errorUpdateQuantity:"Error updating quantity.",successUpdateQuantity:"Item quantity updated successfully.",errorUpdate:"Error updating requisition list.",successUpdate:"Requisition list updated successfully.",errorDeleteItem:"Error deleting item.",successDeleteItem:"Item(s) deleted successfully.",errorDeleteReqList:"Error deleting requisition list.",successDeleteReqList:"Requisition list deleted successfully.",errorMove:"Error moving item(s) to cart.",successMove:"Item(s) successfully moved to cart.",errorAddToRequisitionList:"Error adding item(s) to requisition list.",successAddToRequisitionList:"Item(s) successfully added to requisition list."},RequisitionListView:{actionDelete:"Delete",statusDeleting:"Deleting...",actionDeleteSelected:"Delete Selected",actionDeleteSelectedItems:"Delete selected items",actionSelectAll:"Select All",actionSelectNone:"Select None",actionAddToCart:"Add to Cart",statusAddingToCart:"Adding...",actionAddSelectedToCart:"Add Selected to Cart",statusBulkAddingToCart:"Adding to Cart...",actionUpdateQuantity:"Update",statusUpdatingQuantity:"Updating...",errorUpdateQuantity:"Error updating quantity",successUpdateQuantity:"Item quantity updated successfully.",actionBackToRequisitionListsOverview:"Back to requisition lists overview",actionBackToRequisitionLists:"Back to Requisition Lists",actionRename:"Rename",actionDeleteList:"Delete List",deleteListTitle:"Delete Requisition List?",deleteListMessage:"Are you sure you want to delete this requisition list? This action cannot be undone.",deleteItemsTitle:"Delete Item(s)?",deleteItemsMessage:"Are you sure you want to delete the selected item(s) from this requisition list? This action cannot be undone.",confirmAction:"Delete",cancelAction:"Cancel",emptyRequisitionList:" Requisition List is empty",productListTable:{headers:{productName:"Product name",sku:"SKU",price:"Price",quantity:"Quantity",subtotal:"Subtotal",actions:"Actions"},itemQuantity:"Item quantity",outOfStock:"Out of stock",onlyXLeftInStock:"Only {count} left in stock"},errorLoadPage:"Failed to load page",errorLoadingProducts:"Failed to load product data",notFoundTitle:"Requisition List Not Found",notFoundMessage:"The requisition list you are looking for does not exist or you do not have access to it.",notFoundActionLabel:"Back to Requisition Lists"},RequisitionListsNotEnabled:{title:"Requisition Lists Not Available",message:"Requisition Lists are not available. Please contact your administrator for more information.",actionLabel:"Go to My Account"},PageSizePicker:{show:"Show",itemsPerPage:"Items per page"},PaginationItemsCounter:{itemsCounter:"Items {from}-{to} of {total}"}},m={RequisitionList:l},q={default:m},L=({children:i})=>{const[s,o]=r("en_US");return u(()=>{const e=d.on("locale",n=>{o(n)},{eager:!0});return()=>{e==null||e.off()}},[]),t(c,{lang:s,langDefinitions:q,children:i})},A=new a(t(L,{}));export{A as render};
|
|
7
7
|
//# sourceMappingURL=render.js.map
|
package/render.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"render.js","sources":["/@dropins/storefront-requisition-list/src/render/Provider.tsx","/@dropins/storefront-requisition-list/src/render/render.tsx"],"sourcesContent":["import { FunctionComponent } from 'preact';\nimport { useState, useEffect } from 'preact/hooks';\nimport { UIProvider } from '@adobe-commerce/elsie/components';\nimport { Lang } from '@adobe-commerce/elsie/i18n';\nimport { events } from '@adobe-commerce/event-bus';\n\nimport en_US from '../i18n/en_US.json';\n\n// Langs\nconst langDefinitions = {\n default: en_US,\n};\n\ninterface CartProviderProps {\n children?: any;\n}\n\nexport const Provider: FunctionComponent<CartProviderProps> = ({\n children,\n}) => {\n const [lang, setLang] = useState<Lang>('en_US');\n\n // Events\n useEffect(() => {\n const localeEvent = events.on(\n 'locale',\n (locale: string) => {\n setLang(locale as Lang);\n },\n { eager: true }\n );\n return () => {\n localeEvent?.off();\n };\n }, []);\n\n return (\n <UIProvider lang={lang} langDefinitions={langDefinitions}>\n {children}\n </UIProvider>\n );\n};\n","import { Render } from '@adobe-commerce/elsie/lib';\nimport { Provider } from './Provider';\n\nexport const render = new Render(<Provider />);\n"],"names":["langDefinitions","en_US","Provider","children","lang","setLang","useState","useEffect","localeEvent","events","locale","jsx","UIProvider","render","Render"],"mappings":"
|
|
1
|
+
{"version":3,"file":"render.js","sources":["/@dropins/storefront-requisition-list/src/render/Provider.tsx","/@dropins/storefront-requisition-list/src/render/render.tsx"],"sourcesContent":["import { FunctionComponent } from 'preact';\nimport { useState, useEffect } from 'preact/hooks';\nimport { UIProvider } from '@adobe-commerce/elsie/components';\nimport { Lang } from '@adobe-commerce/elsie/i18n';\nimport { events } from '@adobe-commerce/event-bus';\n\nimport en_US from '../i18n/en_US.json';\n\n// Langs\nconst langDefinitions = {\n default: en_US,\n};\n\ninterface CartProviderProps {\n children?: any;\n}\n\nexport const Provider: FunctionComponent<CartProviderProps> = ({\n children,\n}) => {\n const [lang, setLang] = useState<Lang>('en_US');\n\n // Events\n useEffect(() => {\n const localeEvent = events.on(\n 'locale',\n (locale: string) => {\n setLang(locale as Lang);\n },\n { eager: true }\n );\n return () => {\n localeEvent?.off();\n };\n }, []);\n\n return (\n <UIProvider lang={lang} langDefinitions={langDefinitions}>\n {children}\n </UIProvider>\n );\n};\n","import { Render } from '@adobe-commerce/elsie/lib';\nimport { Provider } from './Provider';\n\nexport const render = new Render(<Provider />);\n"],"names":["langDefinitions","en_US","Provider","children","lang","setLang","useState","useEffect","localeEvent","events","locale","jsx","UIProvider","render","Render"],"mappings":"gzIASMA,EAAkB,CACtB,QAASC,CACX,EAMaC,EAAiD,CAAC,CAC7D,SAAAC,CACF,IAAM,CACJ,KAAM,CAACC,EAAMC,CAAO,EAAIC,EAAe,OAAO,EAG9C,OAAAC,EAAU,IAAM,CACd,MAAMC,EAAcC,EAAO,GACzB,SACCC,GAAmB,CAClBL,EAAQK,CAAc,CACxB,EACA,CAAE,MAAO,EAAA,CAAK,EAEhB,MAAO,IAAM,CACXF,GAAA,MAAAA,EAAa,KACf,CACF,EAAG,CAAA,CAAE,EAGHG,EAACC,EAAA,CAAW,KAAAR,EAAY,gBAAAJ,EACrB,SAAAG,CAAA,CACH,CAEJ,ECtCaU,EAAS,IAAIC,EAAOH,EAACT,IAAS,CAAE"}
|
package/chunks/PageSizePicker.js
DELETED
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
/*! Copyright 2025 Adobe
|
|
2
|
-
All Rights Reserved. */
|
|
3
|
-
import{jsx as P}from"@dropins/tools/preact-jsx-runtime.js";import{Picker as c}from"@dropins/tools/components.js";import"./RequisitionListView.js";import{useText as p}from"@dropins/tools/i18n.js";const z=({currentPageSize:t,onPageSizeChange:a,disabled:i=!1,pageSizeOptions:r=[10,25,50,100]})=>{const o=p({itemsPerPage:"RequisitionList.PageSizePicker.itemsPerPage"}),s=e=>{const g=e.target,m=parseInt(g.value,10);a(m)},n=r.map(e=>({value:e.toString(),text:e.toString()}));return P(c,{disabled:i,"data-testid":"page-size-picker",variant:"primary",size:"medium",value:t.toString(),options:n,handleSelect:s,"aria-label":o.itemsPerPage})};export{z as P};
|
|
4
|
-
//# sourceMappingURL=PageSizePicker.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PageSizePicker.js","sources":["/@dropins/storefront-requisition-list/src/components/PageSizePicker/PageSizePicker.tsx"],"sourcesContent":["/********************************************************************\n * ADOBE CONFIDENTIAL\n * __________________\n *\n * Copyright 2025 Adobe\n * All Rights Reserved.\n *\n * NOTICE: All information contained herein is, and remains\n * the property of Adobe and its suppliers, if any. The intellectual\n * and technical concepts contained herein are proprietary to Adobe\n * and its suppliers and are protected by all applicable intellectual\n * property laws, including trade secret and copyright laws.\n * Dissemination of this information or reproduction of this material\n * is strictly forbidden unless prior written permission is obtained\n * from Adobe.\n *******************************************************************/\nimport { HTMLAttributes } from 'preact/compat';\nimport { Picker } from '@adobe-commerce/elsie/components';\nimport { useText } from '@adobe-commerce/elsie/i18n';\nimport '@/requisitionList/components/PageSizePicker/PageSizePicker.css';\n\nexport interface PageSizePickerProps extends HTMLAttributes<HTMLDivElement> {\n currentPageSize: number;\n onPageSizeChange: (pageSize: number) => void;\n disabled?: boolean;\n pageSizeOptions?: number[];\n}\n\nexport const PageSizePicker = ({\n currentPageSize,\n onPageSizeChange,\n disabled = false,\n pageSizeOptions = [10, 25, 50, 100],\n}: PageSizePickerProps) => {\n const translations = useText({\n itemsPerPage: `RequisitionList.PageSizePicker.itemsPerPage`,\n });\n\n const handlePageSizeChange = (event: Event) => {\n const target = event.target as HTMLSelectElement;\n const newPageSize = parseInt(target.value, 10);\n onPageSizeChange(newPageSize);\n };\n\n const options = pageSizeOptions.map((size) => ({\n value: size.toString(),\n text: size.toString(),\n }));\n\n return (\n <Picker\n disabled={disabled}\n data-testid=\"page-size-picker\"\n variant=\"primary\"\n size=\"medium\"\n value={currentPageSize.toString()}\n options={options}\n handleSelect={handlePageSizeChange}\n aria-label={translations.itemsPerPage}\n />\n );\n};\n"],"names":["PageSizePicker","currentPageSize","onPageSizeChange","disabled","pageSizeOptions","translations","useText","handlePageSizeChange","event","target","newPageSize","options","size","jsx","Picker"],"mappings":"mMA4BO,MAAMA,EAAiB,CAAC,CAC7B,gBAAAC,EACA,iBAAAC,EACA,SAAAC,EAAW,GACX,gBAAAC,EAAkB,CAAC,GAAI,GAAI,GAAI,GAAG,CACpC,IAA2B,CACzB,MAAMC,EAAeC,EAAQ,CAC3B,aAAc,6CAAA,CACf,EAEKC,EAAwBC,GAAiB,CAC7C,MAAMC,EAASD,EAAM,OACfE,EAAc,SAASD,EAAO,MAAO,EAAE,EAC7CP,EAAiBQ,CAAW,CAC9B,EAEMC,EAAUP,EAAgB,IAAKQ,IAAU,CAC7C,MAAOA,EAAK,SAAA,EACZ,KAAMA,EAAK,SAAA,CAAS,EACpB,EAEF,OACEC,EAACC,EAAA,CACC,SAAAX,EACA,cAAY,mBACZ,QAAQ,UACR,KAAK,SACL,MAAOF,EAAgB,SAAA,EACvB,QAAAU,EACA,aAAcJ,EACd,aAAYF,EAAa,YAAA,CAAA,CAG/B"}
|
|
File without changes
|