@umec/admin 0.1.0-alpha.0
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/LICENSE +21 -0
- package/dist/access.d.ts +7 -0
- package/dist/access.js +9 -0
- package/dist/access.js.map +1 -0
- package/dist/carriers.d.ts +9 -0
- package/dist/carriers.js +13 -0
- package/dist/carriers.js.map +1 -0
- package/dist/catalog/index.d.ts +27 -0
- package/dist/catalog/index.js +21 -0
- package/dist/catalog/index.js.map +1 -0
- package/dist/chunk-4DR4K72B.js +24 -0
- package/dist/chunk-4DR4K72B.js.map +1 -0
- package/dist/chunk-E7ATMICY.js +51 -0
- package/dist/chunk-E7ATMICY.js.map +1 -0
- package/dist/chunk-G3O62WUE.js +57 -0
- package/dist/chunk-G3O62WUE.js.map +1 -0
- package/dist/chunk-ODK4R57S.js +131 -0
- package/dist/chunk-ODK4R57S.js.map +1 -0
- package/dist/chunk-RK7FIONL.js +27 -0
- package/dist/chunk-RK7FIONL.js.map +1 -0
- package/dist/chunk-STQU4LQU.js +402 -0
- package/dist/chunk-STQU4LQU.js.map +1 -0
- package/dist/chunk-TIK7KC4O.js +210 -0
- package/dist/chunk-TIK7KC4O.js.map +1 -0
- package/dist/chunk-TKJ6KSXM.js +23 -0
- package/dist/chunk-TKJ6KSXM.js.map +1 -0
- package/dist/chunk-VUT3UCCR.js +200 -0
- package/dist/chunk-VUT3UCCR.js.map +1 -0
- package/dist/chunk-W2O6EQWT.js +57 -0
- package/dist/chunk-W2O6EQWT.js.map +1 -0
- package/dist/chunk-ZEA6G75Z.js +129 -0
- package/dist/chunk-ZEA6G75Z.js.map +1 -0
- package/dist/csv.d.ts +4 -0
- package/dist/csv.js +9 -0
- package/dist/csv.js.map +1 -0
- package/dist/http.d.ts +17 -0
- package/dist/http.js +17 -0
- package/dist/http.js.map +1 -0
- package/dist/index.d.ts +16 -0
- package/dist/index.js +141 -0
- package/dist/index.js.map +1 -0
- package/dist/inventory/index.d.ts +27 -0
- package/dist/inventory/index.js +21 -0
- package/dist/inventory/index.js.map +1 -0
- package/dist/offers.d.ts +10 -0
- package/dist/offers.js +9 -0
- package/dist/offers.js.map +1 -0
- package/dist/orders/index.d.ts +49 -0
- package/dist/orders/index.js +34 -0
- package/dist/orders/index.js.map +1 -0
- package/dist/product-fields.d.ts +12 -0
- package/dist/product-fields.js +14 -0
- package/dist/product-fields.js.map +1 -0
- package/dist/products.d.ts +48 -0
- package/dist/products.js +27 -0
- package/dist/products.js.map +1 -0
- package/dist/unshipped-alert.d.ts +19 -0
- package/dist/unshipped-alert.js +12 -0
- package/dist/unshipped-alert.js.map +1 -0
- package/package.json +86 -0
package/dist/index.js
ADDED
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
import {
|
|
2
|
+
DEFAULT_ALERT_DAYS_THRESHOLD,
|
|
3
|
+
createUnshippedAlerter,
|
|
4
|
+
parseAlertDaysThreshold
|
|
5
|
+
} from "./chunk-G3O62WUE.js";
|
|
6
|
+
import {
|
|
7
|
+
createAdjustStockHandler,
|
|
8
|
+
createInventoryExportHandler,
|
|
9
|
+
createSetStockHandler,
|
|
10
|
+
formatInventoryDate,
|
|
11
|
+
isLowStock,
|
|
12
|
+
loadInventoryAdminPage
|
|
13
|
+
} from "./chunk-VUT3UCCR.js";
|
|
14
|
+
import {
|
|
15
|
+
MAX_BULK_SHIP,
|
|
16
|
+
carrierLabel,
|
|
17
|
+
createMarkShippedBulkHandler,
|
|
18
|
+
createMarkShippedHandler,
|
|
19
|
+
createOrdersExportHandler,
|
|
20
|
+
createUpdateTrackingHandler,
|
|
21
|
+
formatCustomFields,
|
|
22
|
+
formatOrderAddress,
|
|
23
|
+
formatOrderDate,
|
|
24
|
+
formatOrderItems,
|
|
25
|
+
formatYen as formatYen2,
|
|
26
|
+
loadOrdersAdminPage
|
|
27
|
+
} from "./chunk-STQU4LQU.js";
|
|
28
|
+
import {
|
|
29
|
+
createCreateProductHandler,
|
|
30
|
+
createDiscontinueProductHandler,
|
|
31
|
+
createUpdateProductHandler,
|
|
32
|
+
formatYen,
|
|
33
|
+
imagesText,
|
|
34
|
+
loadCatalogAdminPage
|
|
35
|
+
} from "./chunk-TIK7KC4O.js";
|
|
36
|
+
import {
|
|
37
|
+
authenticateAdmin,
|
|
38
|
+
requireAdminAuth
|
|
39
|
+
} from "./chunk-W2O6EQWT.js";
|
|
40
|
+
import {
|
|
41
|
+
NO_STORE_CSV,
|
|
42
|
+
NO_STORE_JSON,
|
|
43
|
+
csvAttachment,
|
|
44
|
+
jsonError,
|
|
45
|
+
jsonOk,
|
|
46
|
+
readJsonObject
|
|
47
|
+
} from "./chunk-E7ATMICY.js";
|
|
48
|
+
import {
|
|
49
|
+
CARRIERS,
|
|
50
|
+
CARRIER_LABELS,
|
|
51
|
+
isCarrier,
|
|
52
|
+
parseOptionalCarrier
|
|
53
|
+
} from "./chunk-4DR4K72B.js";
|
|
54
|
+
import {
|
|
55
|
+
csvEscape,
|
|
56
|
+
toCsv
|
|
57
|
+
} from "./chunk-TKJ6KSXM.js";
|
|
58
|
+
import {
|
|
59
|
+
isFieldError,
|
|
60
|
+
parseCreateProductFields,
|
|
61
|
+
parseSku,
|
|
62
|
+
parseUpdateProductFields
|
|
63
|
+
} from "./chunk-ODK4R57S.js";
|
|
64
|
+
import {
|
|
65
|
+
catalogFromConfig,
|
|
66
|
+
createProductLoader,
|
|
67
|
+
getProductRow,
|
|
68
|
+
isValidGtin,
|
|
69
|
+
isValidSku,
|
|
70
|
+
listProductRows,
|
|
71
|
+
loadProductNamesFromDb,
|
|
72
|
+
parseImagesJson,
|
|
73
|
+
parseProductImages,
|
|
74
|
+
rowToStorefrontProduct,
|
|
75
|
+
toCheckoutProduct
|
|
76
|
+
} from "./chunk-ZEA6G75Z.js";
|
|
77
|
+
import {
|
|
78
|
+
SAMPLE_FREE_SHIPPING_OFFER_SLUG,
|
|
79
|
+
createResolveCheckoutOffer
|
|
80
|
+
} from "./chunk-RK7FIONL.js";
|
|
81
|
+
export {
|
|
82
|
+
CARRIERS,
|
|
83
|
+
CARRIER_LABELS,
|
|
84
|
+
DEFAULT_ALERT_DAYS_THRESHOLD,
|
|
85
|
+
MAX_BULK_SHIP,
|
|
86
|
+
NO_STORE_CSV,
|
|
87
|
+
NO_STORE_JSON,
|
|
88
|
+
SAMPLE_FREE_SHIPPING_OFFER_SLUG,
|
|
89
|
+
authenticateAdmin,
|
|
90
|
+
carrierLabel,
|
|
91
|
+
catalogFromConfig,
|
|
92
|
+
createAdjustStockHandler,
|
|
93
|
+
createCreateProductHandler,
|
|
94
|
+
createDiscontinueProductHandler,
|
|
95
|
+
createInventoryExportHandler,
|
|
96
|
+
createMarkShippedBulkHandler,
|
|
97
|
+
createMarkShippedHandler,
|
|
98
|
+
createOrdersExportHandler,
|
|
99
|
+
createProductLoader,
|
|
100
|
+
createResolveCheckoutOffer,
|
|
101
|
+
createSetStockHandler,
|
|
102
|
+
createUnshippedAlerter,
|
|
103
|
+
createUpdateProductHandler,
|
|
104
|
+
createUpdateTrackingHandler,
|
|
105
|
+
csvAttachment,
|
|
106
|
+
csvEscape,
|
|
107
|
+
formatYen as formatCatalogYen,
|
|
108
|
+
formatCustomFields,
|
|
109
|
+
formatInventoryDate,
|
|
110
|
+
formatOrderAddress,
|
|
111
|
+
formatOrderDate,
|
|
112
|
+
formatOrderItems,
|
|
113
|
+
formatYen2 as formatYen,
|
|
114
|
+
getProductRow,
|
|
115
|
+
imagesText,
|
|
116
|
+
isCarrier,
|
|
117
|
+
isFieldError,
|
|
118
|
+
isLowStock,
|
|
119
|
+
isValidGtin,
|
|
120
|
+
isValidSku,
|
|
121
|
+
jsonError,
|
|
122
|
+
jsonOk,
|
|
123
|
+
listProductRows,
|
|
124
|
+
loadCatalogAdminPage,
|
|
125
|
+
loadInventoryAdminPage,
|
|
126
|
+
loadOrdersAdminPage,
|
|
127
|
+
loadProductNamesFromDb,
|
|
128
|
+
parseAlertDaysThreshold,
|
|
129
|
+
parseCreateProductFields,
|
|
130
|
+
parseImagesJson,
|
|
131
|
+
parseOptionalCarrier,
|
|
132
|
+
parseProductImages,
|
|
133
|
+
parseSku,
|
|
134
|
+
parseUpdateProductFields,
|
|
135
|
+
readJsonObject,
|
|
136
|
+
requireAdminAuth,
|
|
137
|
+
rowToStorefrontProduct,
|
|
138
|
+
toCheckoutProduct,
|
|
139
|
+
toCsv
|
|
140
|
+
};
|
|
141
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { AdminApiHandler } from '../http.js';
|
|
2
|
+
import { InventoryRow, listAuditLog } from '@umec/core/db';
|
|
3
|
+
|
|
4
|
+
declare function createAdjustStockHandler(): AdminApiHandler;
|
|
5
|
+
|
|
6
|
+
declare function createInventoryExportHandler(): AdminApiHandler;
|
|
7
|
+
|
|
8
|
+
type InventoryListRow = InventoryRow & {
|
|
9
|
+
name: string | null;
|
|
10
|
+
low_stock_threshold: number | null;
|
|
11
|
+
};
|
|
12
|
+
type InventoryAdminPageData = {
|
|
13
|
+
inventory: InventoryListRow[];
|
|
14
|
+
history: Awaited<ReturnType<typeof listAuditLog>>;
|
|
15
|
+
names: Record<string, string>;
|
|
16
|
+
dbNotice: string;
|
|
17
|
+
};
|
|
18
|
+
type InventoryAdminPageLoad = {
|
|
19
|
+
response: Response;
|
|
20
|
+
} | InventoryAdminPageData;
|
|
21
|
+
declare function formatInventoryDate(value: number | string | null): string;
|
|
22
|
+
declare function isLowStock(item: InventoryListRow): boolean;
|
|
23
|
+
declare function loadInventoryAdminPage(request: Request): Promise<InventoryAdminPageLoad>;
|
|
24
|
+
|
|
25
|
+
declare function createSetStockHandler(): AdminApiHandler;
|
|
26
|
+
|
|
27
|
+
export { type InventoryAdminPageData, type InventoryAdminPageLoad, type InventoryListRow, createAdjustStockHandler, createInventoryExportHandler, createSetStockHandler, formatInventoryDate, isLowStock, loadInventoryAdminPage };
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import {
|
|
2
|
+
createAdjustStockHandler,
|
|
3
|
+
createInventoryExportHandler,
|
|
4
|
+
createSetStockHandler,
|
|
5
|
+
formatInventoryDate,
|
|
6
|
+
isLowStock,
|
|
7
|
+
loadInventoryAdminPage
|
|
8
|
+
} from "../chunk-VUT3UCCR.js";
|
|
9
|
+
import "../chunk-W2O6EQWT.js";
|
|
10
|
+
import "../chunk-E7ATMICY.js";
|
|
11
|
+
import "../chunk-TKJ6KSXM.js";
|
|
12
|
+
import "../chunk-ZEA6G75Z.js";
|
|
13
|
+
export {
|
|
14
|
+
createAdjustStockHandler,
|
|
15
|
+
createInventoryExportHandler,
|
|
16
|
+
createSetStockHandler,
|
|
17
|
+
formatInventoryDate,
|
|
18
|
+
isLowStock,
|
|
19
|
+
loadInventoryAdminPage
|
|
20
|
+
};
|
|
21
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
package/dist/offers.d.ts
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { CheckoutOffer, CheckOffer } from '@umec/core/checkout';
|
|
2
|
+
|
|
3
|
+
declare const SAMPLE_FREE_SHIPPING_OFFER_SLUG = "sample-free-shipping";
|
|
4
|
+
type ResolveCheckoutOfferOptions = {
|
|
5
|
+
offers?: Record<string, CheckoutOffer>;
|
|
6
|
+
isVerificationRun?: () => boolean;
|
|
7
|
+
};
|
|
8
|
+
declare function createResolveCheckoutOffer(options?: ResolveCheckoutOfferOptions): CheckOffer;
|
|
9
|
+
|
|
10
|
+
export { type ResolveCheckoutOfferOptions, SAMPLE_FREE_SHIPPING_OFFER_SLUG, createResolveCheckoutOffer };
|
package/dist/offers.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { AdminApiHandler } from '../http.js';
|
|
2
|
+
import { OrdersRow } from '@umec/core/db';
|
|
3
|
+
|
|
4
|
+
declare function createOrdersExportHandler(): AdminApiHandler;
|
|
5
|
+
|
|
6
|
+
declare function createMarkShippedHandler(): AdminApiHandler;
|
|
7
|
+
|
|
8
|
+
declare const MAX_BULK_SHIP = 100;
|
|
9
|
+
declare function createMarkShippedBulkHandler(): AdminApiHandler;
|
|
10
|
+
|
|
11
|
+
type CheckoutItem = {
|
|
12
|
+
sku?: unknown;
|
|
13
|
+
quantity?: unknown;
|
|
14
|
+
};
|
|
15
|
+
type ShippingAddress = {
|
|
16
|
+
name?: unknown;
|
|
17
|
+
phone?: unknown;
|
|
18
|
+
address?: {
|
|
19
|
+
postal_code?: unknown;
|
|
20
|
+
state?: unknown;
|
|
21
|
+
city?: unknown;
|
|
22
|
+
line1?: unknown;
|
|
23
|
+
line2?: unknown;
|
|
24
|
+
country?: unknown;
|
|
25
|
+
};
|
|
26
|
+
};
|
|
27
|
+
type OrdersAdminPageData = {
|
|
28
|
+
orders: OrdersRow[];
|
|
29
|
+
names: Record<string, string>;
|
|
30
|
+
dbNotice: string;
|
|
31
|
+
pendingCount: number;
|
|
32
|
+
};
|
|
33
|
+
type OrdersAdminPageLoad = {
|
|
34
|
+
response: Response;
|
|
35
|
+
} | OrdersAdminPageData;
|
|
36
|
+
declare function formatOrderDate(value: number | string | null): string;
|
|
37
|
+
declare function formatYen(value: number | null): string;
|
|
38
|
+
declare function formatOrderItems(itemsJson: string | null, names: Record<string, string>): string[];
|
|
39
|
+
declare function formatOrderAddress(addressJson: string | null): string[];
|
|
40
|
+
declare function formatCustomFields(customFieldsJson: string | null): {
|
|
41
|
+
key: string;
|
|
42
|
+
value: string;
|
|
43
|
+
}[];
|
|
44
|
+
declare function carrierLabel(code: string | null): string;
|
|
45
|
+
declare function loadOrdersAdminPage(request: Request): Promise<OrdersAdminPageLoad>;
|
|
46
|
+
|
|
47
|
+
declare function createUpdateTrackingHandler(): AdminApiHandler;
|
|
48
|
+
|
|
49
|
+
export { type CheckoutItem, MAX_BULK_SHIP, type OrdersAdminPageData, type OrdersAdminPageLoad, type ShippingAddress, carrierLabel, createMarkShippedBulkHandler, createMarkShippedHandler, createOrdersExportHandler, createUpdateTrackingHandler, formatCustomFields, formatOrderAddress, formatOrderDate, formatOrderItems, formatYen, loadOrdersAdminPage };
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import {
|
|
2
|
+
MAX_BULK_SHIP,
|
|
3
|
+
carrierLabel,
|
|
4
|
+
createMarkShippedBulkHandler,
|
|
5
|
+
createMarkShippedHandler,
|
|
6
|
+
createOrdersExportHandler,
|
|
7
|
+
createUpdateTrackingHandler,
|
|
8
|
+
formatCustomFields,
|
|
9
|
+
formatOrderAddress,
|
|
10
|
+
formatOrderDate,
|
|
11
|
+
formatOrderItems,
|
|
12
|
+
formatYen,
|
|
13
|
+
loadOrdersAdminPage
|
|
14
|
+
} from "../chunk-STQU4LQU.js";
|
|
15
|
+
import "../chunk-W2O6EQWT.js";
|
|
16
|
+
import "../chunk-E7ATMICY.js";
|
|
17
|
+
import "../chunk-4DR4K72B.js";
|
|
18
|
+
import "../chunk-TKJ6KSXM.js";
|
|
19
|
+
import "../chunk-ZEA6G75Z.js";
|
|
20
|
+
export {
|
|
21
|
+
MAX_BULK_SHIP,
|
|
22
|
+
carrierLabel,
|
|
23
|
+
createMarkShippedBulkHandler,
|
|
24
|
+
createMarkShippedHandler,
|
|
25
|
+
createOrdersExportHandler,
|
|
26
|
+
createUpdateTrackingHandler,
|
|
27
|
+
formatCustomFields,
|
|
28
|
+
formatOrderAddress,
|
|
29
|
+
formatOrderDate,
|
|
30
|
+
formatOrderItems,
|
|
31
|
+
formatYen,
|
|
32
|
+
loadOrdersAdminPage
|
|
33
|
+
};
|
|
34
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { ProductWriteFields } from '@umec/core/db';
|
|
2
|
+
export { ProductWriteFields } from '@umec/core/db';
|
|
3
|
+
|
|
4
|
+
type FieldError = {
|
|
5
|
+
error: string;
|
|
6
|
+
};
|
|
7
|
+
declare function parseSku(value: unknown): string | FieldError;
|
|
8
|
+
declare function parseCreateProductFields(payload: Record<string, unknown>): ProductWriteFields | FieldError;
|
|
9
|
+
declare function parseUpdateProductFields(payload: Record<string, unknown>): Partial<ProductWriteFields> | FieldError;
|
|
10
|
+
declare function isFieldError(value: unknown): value is FieldError;
|
|
11
|
+
|
|
12
|
+
export { type FieldError, isFieldError, parseCreateProductFields, parseSku, parseUpdateProductFields };
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import {
|
|
2
|
+
isFieldError,
|
|
3
|
+
parseCreateProductFields,
|
|
4
|
+
parseSku,
|
|
5
|
+
parseUpdateProductFields
|
|
6
|
+
} from "./chunk-ODK4R57S.js";
|
|
7
|
+
import "./chunk-ZEA6G75Z.js";
|
|
8
|
+
export {
|
|
9
|
+
isFieldError,
|
|
10
|
+
parseCreateProductFields,
|
|
11
|
+
parseSku,
|
|
12
|
+
parseUpdateProductFields
|
|
13
|
+
};
|
|
14
|
+
//# sourceMappingURL=product-fields.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { CheckoutProductsMap } from '@umec/core/checkout';
|
|
2
|
+
import { UmecProduct } from '@umec/core/config';
|
|
3
|
+
import { ProductsRow, ShopDatabase } from '@umec/core/db';
|
|
4
|
+
export { ProductsRow, getProductRow, listProductRows } from '@umec/core/db';
|
|
5
|
+
|
|
6
|
+
type ProductRow = ProductsRow;
|
|
7
|
+
|
|
8
|
+
type StorefrontProduct = {
|
|
9
|
+
sku: string;
|
|
10
|
+
name: string;
|
|
11
|
+
description: string;
|
|
12
|
+
price: number;
|
|
13
|
+
shippingUnits: number;
|
|
14
|
+
images: string[];
|
|
15
|
+
active: boolean;
|
|
16
|
+
gtin: string | null;
|
|
17
|
+
category: string | null;
|
|
18
|
+
lowStockThreshold: number | null;
|
|
19
|
+
};
|
|
20
|
+
type ConfigProduct = Omit<UmecProduct, "description" | "images"> & {
|
|
21
|
+
sku: string;
|
|
22
|
+
description: string;
|
|
23
|
+
images: string[];
|
|
24
|
+
};
|
|
25
|
+
type ProductLoaderConfig = {
|
|
26
|
+
products: Record<string, UmecProduct>;
|
|
27
|
+
};
|
|
28
|
+
declare function isValidSku(value: unknown): value is string;
|
|
29
|
+
declare function isValidGtin(value: string): boolean;
|
|
30
|
+
declare function parseImagesJson(value: string | null | undefined): string[];
|
|
31
|
+
declare function parseProductImages(value: unknown): string[] | {
|
|
32
|
+
error: string;
|
|
33
|
+
};
|
|
34
|
+
declare function rowToStorefrontProduct(row: ProductsRow): StorefrontProduct;
|
|
35
|
+
declare function toCheckoutProduct(product: StorefrontProduct): UmecProduct;
|
|
36
|
+
declare function catalogFromConfig(config: ProductLoaderConfig): {
|
|
37
|
+
PRODUCTS: ConfigProduct[];
|
|
38
|
+
PRODUCTS_MAP: Record<string, ConfigProduct>;
|
|
39
|
+
};
|
|
40
|
+
declare function loadProductNamesFromDb(db: ShopDatabase): Promise<Record<string, string>>;
|
|
41
|
+
declare function createProductLoader(config: ProductLoaderConfig): {
|
|
42
|
+
storefrontProductsFromConfig: () => StorefrontProduct[];
|
|
43
|
+
loadStorefrontProducts: (db: ShopDatabase | undefined) => Promise<StorefrontProduct[]>;
|
|
44
|
+
loadCheckoutProducts: (db: ShopDatabase | undefined) => Promise<CheckoutProductsMap>;
|
|
45
|
+
loadProductNames: (db: ShopDatabase | undefined) => Promise<Record<string, string>>;
|
|
46
|
+
};
|
|
47
|
+
|
|
48
|
+
export { type ConfigProduct, type ProductLoaderConfig, type ProductRow, type StorefrontProduct, catalogFromConfig, createProductLoader, isValidGtin, isValidSku, loadProductNamesFromDb, parseImagesJson, parseProductImages, rowToStorefrontProduct, toCheckoutProduct };
|
package/dist/products.js
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import {
|
|
2
|
+
catalogFromConfig,
|
|
3
|
+
createProductLoader,
|
|
4
|
+
getProductRow,
|
|
5
|
+
isValidGtin,
|
|
6
|
+
isValidSku,
|
|
7
|
+
listProductRows,
|
|
8
|
+
loadProductNamesFromDb,
|
|
9
|
+
parseImagesJson,
|
|
10
|
+
parseProductImages,
|
|
11
|
+
rowToStorefrontProduct,
|
|
12
|
+
toCheckoutProduct
|
|
13
|
+
} from "./chunk-ZEA6G75Z.js";
|
|
14
|
+
export {
|
|
15
|
+
catalogFromConfig,
|
|
16
|
+
createProductLoader,
|
|
17
|
+
getProductRow,
|
|
18
|
+
isValidGtin,
|
|
19
|
+
isValidSku,
|
|
20
|
+
listProductRows,
|
|
21
|
+
loadProductNamesFromDb,
|
|
22
|
+
parseImagesJson,
|
|
23
|
+
parseProductImages,
|
|
24
|
+
rowToStorefrontProduct,
|
|
25
|
+
toCheckoutProduct
|
|
26
|
+
};
|
|
27
|
+
//# sourceMappingURL=products.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { UmecConfig } from '@umec/core/config';
|
|
2
|
+
import { NotifyEnv } from '@umec/core/notify';
|
|
3
|
+
import { ServerEnv } from '@umec/core/env';
|
|
4
|
+
|
|
5
|
+
declare const DEFAULT_ALERT_DAYS_THRESHOLD = 3;
|
|
6
|
+
type UnshippedAlertConfig = {
|
|
7
|
+
brand: Pick<UmecConfig["brand"], "name">;
|
|
8
|
+
email: Pick<UmecConfig["email"], "from" | "fromName" | "bcc">;
|
|
9
|
+
};
|
|
10
|
+
type AlertEnv = ServerEnv & NotifyEnv & {
|
|
11
|
+
UNSHIPPED_ALERT_TO?: string;
|
|
12
|
+
};
|
|
13
|
+
declare function parseAlertDaysThreshold(value: string | undefined): number;
|
|
14
|
+
declare function createUnshippedAlerter(config: UnshippedAlertConfig): {
|
|
15
|
+
resolveUnshippedAlertTo: (env: AlertEnv) => string | null;
|
|
16
|
+
alertUnshippedOrders: (env: AlertEnv) => Promise<void>;
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
export { type AlertEnv, DEFAULT_ALERT_DAYS_THRESHOLD, type UnshippedAlertConfig, createUnshippedAlerter, parseAlertDaysThreshold };
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import {
|
|
2
|
+
DEFAULT_ALERT_DAYS_THRESHOLD,
|
|
3
|
+
createUnshippedAlerter,
|
|
4
|
+
parseAlertDaysThreshold
|
|
5
|
+
} from "./chunk-G3O62WUE.js";
|
|
6
|
+
import "./chunk-ZEA6G75Z.js";
|
|
7
|
+
export {
|
|
8
|
+
DEFAULT_ALERT_DAYS_THRESHOLD,
|
|
9
|
+
createUnshippedAlerter,
|
|
10
|
+
parseAlertDaysThreshold
|
|
11
|
+
};
|
|
12
|
+
//# sourceMappingURL=unshipped-alert.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
package/package.json
ADDED
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@umec/admin",
|
|
3
|
+
"version": "0.1.0-alpha.0",
|
|
4
|
+
"description": "Admin operations layer for umec — inventory, orders, catalog handlers and shared lib",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"license": "MIT",
|
|
7
|
+
"repository": {
|
|
8
|
+
"type": "git",
|
|
9
|
+
"url": "git+https://github.com/syrup-murayama/umec.git",
|
|
10
|
+
"directory": "packages/admin"
|
|
11
|
+
},
|
|
12
|
+
"publishConfig": {
|
|
13
|
+
"access": "public"
|
|
14
|
+
},
|
|
15
|
+
"engines": {
|
|
16
|
+
"node": ">=22.12.0"
|
|
17
|
+
},
|
|
18
|
+
"exports": {
|
|
19
|
+
".": {
|
|
20
|
+
"types": "./dist/index.d.ts",
|
|
21
|
+
"import": "./dist/index.js"
|
|
22
|
+
},
|
|
23
|
+
"./access": {
|
|
24
|
+
"types": "./dist/access.d.ts",
|
|
25
|
+
"import": "./dist/access.js"
|
|
26
|
+
},
|
|
27
|
+
"./http": {
|
|
28
|
+
"types": "./dist/http.d.ts",
|
|
29
|
+
"import": "./dist/http.js"
|
|
30
|
+
},
|
|
31
|
+
"./carriers": {
|
|
32
|
+
"types": "./dist/carriers.d.ts",
|
|
33
|
+
"import": "./dist/carriers.js"
|
|
34
|
+
},
|
|
35
|
+
"./csv": {
|
|
36
|
+
"types": "./dist/csv.d.ts",
|
|
37
|
+
"import": "./dist/csv.js"
|
|
38
|
+
},
|
|
39
|
+
"./product-fields": {
|
|
40
|
+
"types": "./dist/product-fields.d.ts",
|
|
41
|
+
"import": "./dist/product-fields.js"
|
|
42
|
+
},
|
|
43
|
+
"./products": {
|
|
44
|
+
"types": "./dist/products.d.ts",
|
|
45
|
+
"import": "./dist/products.js"
|
|
46
|
+
},
|
|
47
|
+
"./offers": {
|
|
48
|
+
"types": "./dist/offers.d.ts",
|
|
49
|
+
"import": "./dist/offers.js"
|
|
50
|
+
},
|
|
51
|
+
"./unshipped-alert": {
|
|
52
|
+
"types": "./dist/unshipped-alert.d.ts",
|
|
53
|
+
"import": "./dist/unshipped-alert.js"
|
|
54
|
+
},
|
|
55
|
+
"./inventory": {
|
|
56
|
+
"types": "./dist/inventory/index.d.ts",
|
|
57
|
+
"import": "./dist/inventory/index.js"
|
|
58
|
+
},
|
|
59
|
+
"./orders": {
|
|
60
|
+
"types": "./dist/orders/index.d.ts",
|
|
61
|
+
"import": "./dist/orders/index.js"
|
|
62
|
+
},
|
|
63
|
+
"./catalog": {
|
|
64
|
+
"types": "./dist/catalog/index.d.ts",
|
|
65
|
+
"import": "./dist/catalog/index.js"
|
|
66
|
+
}
|
|
67
|
+
},
|
|
68
|
+
"files": [
|
|
69
|
+
"dist"
|
|
70
|
+
],
|
|
71
|
+
"scripts": {
|
|
72
|
+
"build": "tsup",
|
|
73
|
+
"test": "vitest run",
|
|
74
|
+
"test:watch": "vitest"
|
|
75
|
+
},
|
|
76
|
+
"dependencies": {
|
|
77
|
+
"@umec/core": "workspace:*"
|
|
78
|
+
},
|
|
79
|
+
"devDependencies": {
|
|
80
|
+
"@cloudflare/workers-types": "^4.20250705.0",
|
|
81
|
+
"@types/node": "^22.15.3",
|
|
82
|
+
"tsup": "^8.5.0",
|
|
83
|
+
"typescript": "^5.8.3",
|
|
84
|
+
"vitest": "^3.2.4"
|
|
85
|
+
}
|
|
86
|
+
}
|