@signskart/shared 1.3.39 → 1.3.41
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/ReadMe.md +67 -67
- package/dist/index.d.mts +4 -2
- package/dist/index.d.ts +4 -2
- package/dist/index.js.map +1 -1
- package/dist/index.mjs.map +1 -1
- package/package.json +38 -37
package/ReadMe.md
CHANGED
|
@@ -1,67 +1,67 @@
|
|
|
1
|
-
## 📦 Publish Instructions
|
|
2
|
-
|
|
3
|
-
To build and publish this package, follow these steps:
|
|
4
|
-
|
|
5
|
-
### Step 1: Build the Project
|
|
6
|
-
|
|
7
|
-
```bash
|
|
8
|
-
npm run build
|
|
9
|
-
```
|
|
10
|
-
|
|
11
|
-
### Step 2: Publish the Package
|
|
12
|
-
|
|
13
|
-
```bash
|
|
14
|
-
npm publish --access public
|
|
15
|
-
|
|
16
|
-
npm version patch
|
|
17
|
-
npm publish
|
|
18
|
-
```
|
|
19
|
-
|
|
20
|
-
---
|
|
21
|
-
|
|
22
|
-
## 🚫 Usage Notice
|
|
23
|
-
|
|
24
|
-
> **⚠️ This package is the intellectual property of [Signskart](https://www.signskart.com). Unauthorized use, distribution, modification, or publishing is strictly prohibited.**
|
|
25
|
-
|
|
26
|
-
You **may not**:
|
|
27
|
-
|
|
28
|
-
* Use this package in your projects without written permission from Signskart.
|
|
29
|
-
* Rebrand or redistribute it under your own or another name.
|
|
30
|
-
* Reverse-engineer or repurpose any part of the codebase.
|
|
31
|
-
|
|
32
|
-
All rights reserved © Signskart, 2025.
|
|
33
|
-
|
|
34
|
-
---
|
|
35
|
-
|
|
36
|
-
## ✅ Intended Use Case
|
|
37
|
-
|
|
38
|
-
This package is developed exclusively for Signskart’s internal and client-facing projects. It is optimized to support features and workflows aligned with our services, including but not limited to:
|
|
39
|
-
|
|
40
|
-
* Signboard design automation
|
|
41
|
-
* Print-ready file generation
|
|
42
|
-
* Vendor-side tool integration
|
|
43
|
-
|
|
44
|
-
---
|
|
45
|
-
|
|
46
|
-
## 🤝 Collaboration & Permission
|
|
47
|
-
|
|
48
|
-
If you are interested in collaborating, contributing, or using this package under a commercial or open-source license, please contact:
|
|
49
|
-
|
|
50
|
-
📧 **Email**: [support@signskart.com](mailto:support@signskart.com)
|
|
51
|
-
|
|
52
|
-
🌐 **Website**: [https://www.signskart.com](https://www.signskart.com)
|
|
53
|
-
|
|
54
|
-
We welcome:
|
|
55
|
-
|
|
56
|
-
* Strategic tech partnerships
|
|
57
|
-
* Contributions under an approved contributor license
|
|
58
|
-
* API integrations aligned with our ecosystem
|
|
59
|
-
|
|
60
|
-
---
|
|
61
|
-
|
|
62
|
-
## ✍️ Author Signature
|
|
63
|
-
|
|
64
|
-
Warm regards,
|
|
65
|
-
**RAJAN KUMAR**
|
|
66
|
-
| Founder at [Signskart](https://signskart.com)
|
|
67
|
-
📧 [admin@signskart.com](mailto:admin@signskart.com)
|
|
1
|
+
## 📦 Publish Instructions
|
|
2
|
+
|
|
3
|
+
To build and publish this package, follow these steps:
|
|
4
|
+
|
|
5
|
+
### Step 1: Build the Project
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
npm run build
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
### Step 2: Publish the Package
|
|
12
|
+
|
|
13
|
+
```bash
|
|
14
|
+
npm publish --access public
|
|
15
|
+
|
|
16
|
+
npm version patch
|
|
17
|
+
npm publish
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## 🚫 Usage Notice
|
|
23
|
+
|
|
24
|
+
> **⚠️ This package is the intellectual property of [Signskart](https://www.signskart.com). Unauthorized use, distribution, modification, or publishing is strictly prohibited.**
|
|
25
|
+
|
|
26
|
+
You **may not**:
|
|
27
|
+
|
|
28
|
+
* Use this package in your projects without written permission from Signskart.
|
|
29
|
+
* Rebrand or redistribute it under your own or another name.
|
|
30
|
+
* Reverse-engineer or repurpose any part of the codebase.
|
|
31
|
+
|
|
32
|
+
All rights reserved © Signskart, 2025.
|
|
33
|
+
|
|
34
|
+
---
|
|
35
|
+
|
|
36
|
+
## ✅ Intended Use Case
|
|
37
|
+
|
|
38
|
+
This package is developed exclusively for Signskart’s internal and client-facing projects. It is optimized to support features and workflows aligned with our services, including but not limited to:
|
|
39
|
+
|
|
40
|
+
* Signboard design automation
|
|
41
|
+
* Print-ready file generation
|
|
42
|
+
* Vendor-side tool integration
|
|
43
|
+
|
|
44
|
+
---
|
|
45
|
+
|
|
46
|
+
## 🤝 Collaboration & Permission
|
|
47
|
+
|
|
48
|
+
If you are interested in collaborating, contributing, or using this package under a commercial or open-source license, please contact:
|
|
49
|
+
|
|
50
|
+
📧 **Email**: [support@signskart.com](mailto:support@signskart.com)
|
|
51
|
+
|
|
52
|
+
🌐 **Website**: [https://www.signskart.com](https://www.signskart.com)
|
|
53
|
+
|
|
54
|
+
We welcome:
|
|
55
|
+
|
|
56
|
+
* Strategic tech partnerships
|
|
57
|
+
* Contributions under an approved contributor license
|
|
58
|
+
* API integrations aligned with our ecosystem
|
|
59
|
+
|
|
60
|
+
---
|
|
61
|
+
|
|
62
|
+
## ✍️ Author Signature
|
|
63
|
+
|
|
64
|
+
Warm regards,
|
|
65
|
+
**RAJAN KUMAR**
|
|
66
|
+
| Founder at [Signskart](https://signskart.com)
|
|
67
|
+
📧 [admin@signskart.com](mailto:admin@signskart.com)
|
package/dist/index.d.mts
CHANGED
|
@@ -112,6 +112,7 @@ interface IProduct {
|
|
|
112
112
|
sku: string;
|
|
113
113
|
barcode?: string;
|
|
114
114
|
title: ILocalizedString;
|
|
115
|
+
label?: string;
|
|
115
116
|
description: ILocalizedString;
|
|
116
117
|
slug: string;
|
|
117
118
|
categories: ICategory[];
|
|
@@ -602,9 +603,10 @@ interface ICartItem {
|
|
|
602
603
|
|
|
603
604
|
interface ICart {
|
|
604
605
|
_id: string;
|
|
606
|
+
cartId: string;
|
|
605
607
|
cartItems: ICartItem[];
|
|
606
|
-
user
|
|
607
|
-
coupon
|
|
608
|
+
user?: ICustomer;
|
|
609
|
+
coupon?: ICoupon;
|
|
608
610
|
store: IStore;
|
|
609
611
|
metaData: {};
|
|
610
612
|
subTotalAmount: number;
|
package/dist/index.d.ts
CHANGED
|
@@ -112,6 +112,7 @@ interface IProduct {
|
|
|
112
112
|
sku: string;
|
|
113
113
|
barcode?: string;
|
|
114
114
|
title: ILocalizedString;
|
|
115
|
+
label?: string;
|
|
115
116
|
description: ILocalizedString;
|
|
116
117
|
slug: string;
|
|
117
118
|
categories: ICategory[];
|
|
@@ -602,9 +603,10 @@ interface ICartItem {
|
|
|
602
603
|
|
|
603
604
|
interface ICart {
|
|
604
605
|
_id: string;
|
|
606
|
+
cartId: string;
|
|
605
607
|
cartItems: ICartItem[];
|
|
606
|
-
user
|
|
607
|
-
coupon
|
|
608
|
+
user?: ICustomer;
|
|
609
|
+
coupon?: ICoupon;
|
|
608
610
|
store: IStore;
|
|
609
611
|
metaData: {};
|
|
610
612
|
subTotalAmount: number;
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts","../src/interfaces/category.ts","../src/interfaces/product.ts","../src/interfaces/coupon.ts"],"sourcesContent":["export * from './interfaces';\n","import { ILocalizedString } from \"./common\";\nimport { ISEOMetaData } from \"./seo\";\nimport { IStore } from \"./store\";\n\nexport const TAGS = ['new', 'hot', 'sale', 'featured', 'exclusive'] as const;\n\nexport type Tag = typeof TAGS[number];\n\n\nexport interface ICategory {\n _id: string;\n name: ILocalizedString;\n description?: ILocalizedString;\n slug: string;\n parent?: string | null;\n parentName?: string;\n children?: string[];\n level?: number;\n status: boolean;\n showInMenu: boolean;\n showInNavbar: boolean;\n store: IStore;\n skuInitial?: string;\n sortPosition?: number;\n tags: Tag[];\n\n images: {\n desktopBanner?: string;\n mobileBanner?: string;\n shopPageThumbnail?: string;\n categoryThumbnail?: string;\n };\n\n seoMetaData: ISEOMetaData;\n metaData: {\n\n };\n createdAt?: string;\n updatedAt?: string;\n productCount?: number;\n\n [key: string]: any; // Optional catch-all for dynamic properties\n}\n\nexport interface CategoryQueryParams {\n page?: number;\n limit?: number;\n name?: string;\n status?: string;\n minLevel?: string;\n maxLevel?: string;\n}\n\nexport interface CategoryResponse {\n categories: ICategory[];\n totalCategories: number;\n totalPages: number;\n currentPage: number;\n}\n","import { ICategory, ILocalizedString, IProductType, ISEOMetaData, IStore, IVariant } from \".\";\n\nexport interface IPrices {\n originalPrice: number;\n price: number\n discount?: number;\n}\n\nexport interface IImages {\n productImage?: string;\n seoImage?: string;\n displayImage?: string;\n}\n\nexport const ProdductExclusiveTAGS = [\n \"new\",\n \"hot\",\n \"sale\",\n \"featured\",\n \"exclusive\",\n \"trending\",\n \"pack\",\n \"bundles\"\n] as const;\n\nexport type ProductExclusiveTag = typeof ProdductExclusiveTAGS[number];\n\nexport interface IProduct {\n _id: string;\n sku: string;\n barcode?: string;\n title: ILocalizedString;\n description: ILocalizedString;\n slug: string;\n categories: ICategory[];\n category: ICategory;\n productType: IProductType;\n tags: ProductExclusiveTag[];\n stock: number;\n sales: number;\n variants: IVariant[];\n hasVariant: boolean;\n hasSize: boolean;\n prices: IPrices;\n status: boolean;\n store: IStore;\n images: IImages;\n seoMetaData: ISEOMetaData;\n metaData: {};\n createdAt?: Date;\n updatedAt?: Date;\n\n // Optional: virtual populate\n variantList?: IVariant[];\n\n [key: string]: any;\n}\n\nexport interface IProductQuery {\n page?: number;\n limit?: number;\n category?: string;\n categories?: string[];\n title?: string;\n price?: string;\n stockStatus?: string;\n published?: string;\n status?: boolean;\n minPrice?: string;\n maxPrice?: string;\n}\n\nexport interface IProductResponse {\n products: IProduct[];\n totalDoc: number;\n limits: number;\n pages: number;\n}\n\nexport interface IProductUpdate {\n ids: string[];\n [key: string]: any;\n}\n","import { ILocalizedString } from './common';\nimport { IStore } from './store';\n\nexport const DiscountTypeEnum = {\n PERCENTAGE: \"PERCENTAGE\",\n FIXED: \"FIXED\",\n} as const;\n\nexport type DiscountTypeEnum = (typeof DiscountTypeEnum)[keyof typeof DiscountTypeEnum];\n\nexport interface IDiscountType {\n type: DiscountTypeEnum;\n value: number;\n}\n\nexport interface ICoupon {\n _id: string;\n title: ILocalizedString;\n logo: string;\n couponCode: string;\n startTime: Date;\n endTime: Date;\n discountType: IDiscountType;\n minimumAmount: number;\n isPromotional: boolean;\n status: boolean;\n store: IStore;\n createdAt: Date;\n updatedAt: Date;\n}"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACIO,IAAM,OAAO,CAAC,OAAO,OAAO,QAAQ,YAAY,WAAW;;;ACU3D,IAAM,wBAAwB;AAAA,EACjC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACJ;;;ACpBO,IAAM,mBAAmB;AAAA,EAC5B,YAAY;AAAA,EACZ,OAAO;AACX;","names":[]}
|
|
1
|
+
{"version":3,"sources":["../src/index.ts","../src/interfaces/category.ts","../src/interfaces/product.ts","../src/interfaces/coupon.ts"],"sourcesContent":["export * from './interfaces';\r\n","import { ILocalizedString } from \"./common\";\r\nimport { ISEOMetaData } from \"./seo\";\r\nimport { IStore } from \"./store\";\r\n\r\nexport const TAGS = ['new', 'hot', 'sale', 'featured', 'exclusive'] as const;\r\n\r\nexport type Tag = typeof TAGS[number];\r\n\r\n\r\nexport interface ICategory {\r\n _id: string;\r\n name: ILocalizedString;\r\n description?: ILocalizedString;\r\n slug: string;\r\n parent?: string | null;\r\n parentName?: string;\r\n children?: string[];\r\n level?: number;\r\n status: boolean;\r\n showInMenu: boolean;\r\n showInNavbar: boolean;\r\n store: IStore;\r\n skuInitial?: string;\r\n sortPosition?: number;\r\n tags: Tag[];\r\n\r\n images: {\r\n desktopBanner?: string;\r\n mobileBanner?: string;\r\n shopPageThumbnail?: string;\r\n categoryThumbnail?: string;\r\n };\r\n\r\n seoMetaData: ISEOMetaData;\r\n metaData: {\r\n\r\n };\r\n createdAt?: string;\r\n updatedAt?: string;\r\n productCount?: number;\r\n\r\n [key: string]: any; // Optional catch-all for dynamic properties\r\n}\r\n\r\nexport interface CategoryQueryParams {\r\n page?: number;\r\n limit?: number;\r\n name?: string;\r\n status?: string;\r\n minLevel?: string;\r\n maxLevel?: string;\r\n}\r\n\r\nexport interface CategoryResponse {\r\n categories: ICategory[];\r\n totalCategories: number;\r\n totalPages: number;\r\n currentPage: number;\r\n}\r\n","import { ICategory, ILocalizedString, IProductType, ISEOMetaData, IStore, IVariant } from \".\";\r\n\r\nexport interface IPrices {\r\n originalPrice: number;\r\n price: number\r\n discount?: number;\r\n}\r\n\r\nexport interface IImages {\r\n productImage?: string;\r\n seoImage?: string;\r\n displayImage?: string;\r\n}\r\n\r\nexport const ProdductExclusiveTAGS = [\r\n \"new\",\r\n \"hot\",\r\n \"sale\",\r\n \"featured\",\r\n \"exclusive\",\r\n \"trending\",\r\n \"pack\",\r\n \"bundles\"\r\n] as const;\r\n\r\nexport type ProductExclusiveTag = typeof ProdductExclusiveTAGS[number];\r\n\r\nexport interface IProduct {\r\n _id: string;\r\n sku: string;\r\n barcode?: string;\r\n title: ILocalizedString;\r\n label?: string;\r\n description: ILocalizedString;\r\n slug: string;\r\n categories: ICategory[];\r\n category: ICategory;\r\n productType: IProductType;\r\n tags: ProductExclusiveTag[];\r\n stock: number;\r\n sales: number;\r\n variants: IVariant[];\r\n hasVariant: boolean;\r\n hasSize: boolean;\r\n prices: IPrices;\r\n status: boolean;\r\n store: IStore;\r\n images: IImages;\r\n seoMetaData: ISEOMetaData;\r\n metaData: {};\r\n createdAt?: Date;\r\n updatedAt?: Date;\r\n\r\n // Optional: virtual populate\r\n variantList?: IVariant[];\r\n\r\n [key: string]: any;\r\n}\r\n\r\nexport interface IProductQuery {\r\n page?: number;\r\n limit?: number;\r\n category?: string;\r\n categories?: string[];\r\n title?: string;\r\n price?: string;\r\n stockStatus?: string;\r\n published?: string;\r\n status?: boolean;\r\n minPrice?: string;\r\n maxPrice?: string;\r\n}\r\n\r\nexport interface IProductResponse {\r\n products: IProduct[];\r\n totalDoc: number;\r\n limits: number;\r\n pages: number;\r\n}\r\n\r\nexport interface IProductUpdate {\r\n ids: string[];\r\n [key: string]: any;\r\n}\r\n","import { ILocalizedString } from './common';\r\nimport { IStore } from './store';\r\n\r\nexport const DiscountTypeEnum = {\r\n PERCENTAGE: \"PERCENTAGE\",\r\n FIXED: \"FIXED\",\r\n} as const;\r\n\r\nexport type DiscountTypeEnum = (typeof DiscountTypeEnum)[keyof typeof DiscountTypeEnum];\r\n\r\nexport interface IDiscountType {\r\n type: DiscountTypeEnum;\r\n value: number;\r\n}\r\n\r\nexport interface ICoupon {\r\n _id: string;\r\n title: ILocalizedString;\r\n logo: string;\r\n couponCode: string;\r\n startTime: Date;\r\n endTime: Date;\r\n discountType: IDiscountType;\r\n minimumAmount: number;\r\n isPromotional: boolean;\r\n status: boolean;\r\n store: IStore;\r\n createdAt: Date;\r\n updatedAt: Date;\r\n}"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACIO,IAAM,OAAO,CAAC,OAAO,OAAO,QAAQ,YAAY,WAAW;;;ACU3D,IAAM,wBAAwB;AAAA,EACjC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACJ;;;ACpBO,IAAM,mBAAmB;AAAA,EAC5B,YAAY;AAAA,EACZ,OAAO;AACX;","names":[]}
|
package/dist/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/interfaces/category.ts","../src/interfaces/product.ts","../src/interfaces/coupon.ts"],"sourcesContent":["import { ILocalizedString } from \"./common\";\nimport { ISEOMetaData } from \"./seo\";\nimport { IStore } from \"./store\";\n\nexport const TAGS = ['new', 'hot', 'sale', 'featured', 'exclusive'] as const;\n\nexport type Tag = typeof TAGS[number];\n\n\nexport interface ICategory {\n _id: string;\n name: ILocalizedString;\n description?: ILocalizedString;\n slug: string;\n parent?: string | null;\n parentName?: string;\n children?: string[];\n level?: number;\n status: boolean;\n showInMenu: boolean;\n showInNavbar: boolean;\n store: IStore;\n skuInitial?: string;\n sortPosition?: number;\n tags: Tag[];\n\n images: {\n desktopBanner?: string;\n mobileBanner?: string;\n shopPageThumbnail?: string;\n categoryThumbnail?: string;\n };\n\n seoMetaData: ISEOMetaData;\n metaData: {\n\n };\n createdAt?: string;\n updatedAt?: string;\n productCount?: number;\n\n [key: string]: any; // Optional catch-all for dynamic properties\n}\n\nexport interface CategoryQueryParams {\n page?: number;\n limit?: number;\n name?: string;\n status?: string;\n minLevel?: string;\n maxLevel?: string;\n}\n\nexport interface CategoryResponse {\n categories: ICategory[];\n totalCategories: number;\n totalPages: number;\n currentPage: number;\n}\n","import { ICategory, ILocalizedString, IProductType, ISEOMetaData, IStore, IVariant } from \".\";\n\nexport interface IPrices {\n originalPrice: number;\n price: number\n discount?: number;\n}\n\nexport interface IImages {\n productImage?: string;\n seoImage?: string;\n displayImage?: string;\n}\n\nexport const ProdductExclusiveTAGS = [\n \"new\",\n \"hot\",\n \"sale\",\n \"featured\",\n \"exclusive\",\n \"trending\",\n \"pack\",\n \"bundles\"\n] as const;\n\nexport type ProductExclusiveTag = typeof ProdductExclusiveTAGS[number];\n\nexport interface IProduct {\n _id: string;\n sku: string;\n barcode?: string;\n title: ILocalizedString;\n description: ILocalizedString;\n slug: string;\n categories: ICategory[];\n category: ICategory;\n productType: IProductType;\n tags: ProductExclusiveTag[];\n stock: number;\n sales: number;\n variants: IVariant[];\n hasVariant: boolean;\n hasSize: boolean;\n prices: IPrices;\n status: boolean;\n store: IStore;\n images: IImages;\n seoMetaData: ISEOMetaData;\n metaData: {};\n createdAt?: Date;\n updatedAt?: Date;\n\n // Optional: virtual populate\n variantList?: IVariant[];\n\n [key: string]: any;\n}\n\nexport interface IProductQuery {\n page?: number;\n limit?: number;\n category?: string;\n categories?: string[];\n title?: string;\n price?: string;\n stockStatus?: string;\n published?: string;\n status?: boolean;\n minPrice?: string;\n maxPrice?: string;\n}\n\nexport interface IProductResponse {\n products: IProduct[];\n totalDoc: number;\n limits: number;\n pages: number;\n}\n\nexport interface IProductUpdate {\n ids: string[];\n [key: string]: any;\n}\n","import { ILocalizedString } from './common';\nimport { IStore } from './store';\n\nexport const DiscountTypeEnum = {\n PERCENTAGE: \"PERCENTAGE\",\n FIXED: \"FIXED\",\n} as const;\n\nexport type DiscountTypeEnum = (typeof DiscountTypeEnum)[keyof typeof DiscountTypeEnum];\n\nexport interface IDiscountType {\n type: DiscountTypeEnum;\n value: number;\n}\n\nexport interface ICoupon {\n _id: string;\n title: ILocalizedString;\n logo: string;\n couponCode: string;\n startTime: Date;\n endTime: Date;\n discountType: IDiscountType;\n minimumAmount: number;\n isPromotional: boolean;\n status: boolean;\n store: IStore;\n createdAt: Date;\n updatedAt: Date;\n}"],"mappings":";AAIO,IAAM,OAAO,CAAC,OAAO,OAAO,QAAQ,YAAY,WAAW;;;ACU3D,IAAM,wBAAwB;AAAA,EACjC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACJ;;;ACpBO,IAAM,mBAAmB;AAAA,EAC5B,YAAY;AAAA,EACZ,OAAO;AACX;","names":[]}
|
|
1
|
+
{"version":3,"sources":["../src/interfaces/category.ts","../src/interfaces/product.ts","../src/interfaces/coupon.ts"],"sourcesContent":["import { ILocalizedString } from \"./common\";\r\nimport { ISEOMetaData } from \"./seo\";\r\nimport { IStore } from \"./store\";\r\n\r\nexport const TAGS = ['new', 'hot', 'sale', 'featured', 'exclusive'] as const;\r\n\r\nexport type Tag = typeof TAGS[number];\r\n\r\n\r\nexport interface ICategory {\r\n _id: string;\r\n name: ILocalizedString;\r\n description?: ILocalizedString;\r\n slug: string;\r\n parent?: string | null;\r\n parentName?: string;\r\n children?: string[];\r\n level?: number;\r\n status: boolean;\r\n showInMenu: boolean;\r\n showInNavbar: boolean;\r\n store: IStore;\r\n skuInitial?: string;\r\n sortPosition?: number;\r\n tags: Tag[];\r\n\r\n images: {\r\n desktopBanner?: string;\r\n mobileBanner?: string;\r\n shopPageThumbnail?: string;\r\n categoryThumbnail?: string;\r\n };\r\n\r\n seoMetaData: ISEOMetaData;\r\n metaData: {\r\n\r\n };\r\n createdAt?: string;\r\n updatedAt?: string;\r\n productCount?: number;\r\n\r\n [key: string]: any; // Optional catch-all for dynamic properties\r\n}\r\n\r\nexport interface CategoryQueryParams {\r\n page?: number;\r\n limit?: number;\r\n name?: string;\r\n status?: string;\r\n minLevel?: string;\r\n maxLevel?: string;\r\n}\r\n\r\nexport interface CategoryResponse {\r\n categories: ICategory[];\r\n totalCategories: number;\r\n totalPages: number;\r\n currentPage: number;\r\n}\r\n","import { ICategory, ILocalizedString, IProductType, ISEOMetaData, IStore, IVariant } from \".\";\r\n\r\nexport interface IPrices {\r\n originalPrice: number;\r\n price: number\r\n discount?: number;\r\n}\r\n\r\nexport interface IImages {\r\n productImage?: string;\r\n seoImage?: string;\r\n displayImage?: string;\r\n}\r\n\r\nexport const ProdductExclusiveTAGS = [\r\n \"new\",\r\n \"hot\",\r\n \"sale\",\r\n \"featured\",\r\n \"exclusive\",\r\n \"trending\",\r\n \"pack\",\r\n \"bundles\"\r\n] as const;\r\n\r\nexport type ProductExclusiveTag = typeof ProdductExclusiveTAGS[number];\r\n\r\nexport interface IProduct {\r\n _id: string;\r\n sku: string;\r\n barcode?: string;\r\n title: ILocalizedString;\r\n label?: string;\r\n description: ILocalizedString;\r\n slug: string;\r\n categories: ICategory[];\r\n category: ICategory;\r\n productType: IProductType;\r\n tags: ProductExclusiveTag[];\r\n stock: number;\r\n sales: number;\r\n variants: IVariant[];\r\n hasVariant: boolean;\r\n hasSize: boolean;\r\n prices: IPrices;\r\n status: boolean;\r\n store: IStore;\r\n images: IImages;\r\n seoMetaData: ISEOMetaData;\r\n metaData: {};\r\n createdAt?: Date;\r\n updatedAt?: Date;\r\n\r\n // Optional: virtual populate\r\n variantList?: IVariant[];\r\n\r\n [key: string]: any;\r\n}\r\n\r\nexport interface IProductQuery {\r\n page?: number;\r\n limit?: number;\r\n category?: string;\r\n categories?: string[];\r\n title?: string;\r\n price?: string;\r\n stockStatus?: string;\r\n published?: string;\r\n status?: boolean;\r\n minPrice?: string;\r\n maxPrice?: string;\r\n}\r\n\r\nexport interface IProductResponse {\r\n products: IProduct[];\r\n totalDoc: number;\r\n limits: number;\r\n pages: number;\r\n}\r\n\r\nexport interface IProductUpdate {\r\n ids: string[];\r\n [key: string]: any;\r\n}\r\n","import { ILocalizedString } from './common';\r\nimport { IStore } from './store';\r\n\r\nexport const DiscountTypeEnum = {\r\n PERCENTAGE: \"PERCENTAGE\",\r\n FIXED: \"FIXED\",\r\n} as const;\r\n\r\nexport type DiscountTypeEnum = (typeof DiscountTypeEnum)[keyof typeof DiscountTypeEnum];\r\n\r\nexport interface IDiscountType {\r\n type: DiscountTypeEnum;\r\n value: number;\r\n}\r\n\r\nexport interface ICoupon {\r\n _id: string;\r\n title: ILocalizedString;\r\n logo: string;\r\n couponCode: string;\r\n startTime: Date;\r\n endTime: Date;\r\n discountType: IDiscountType;\r\n minimumAmount: number;\r\n isPromotional: boolean;\r\n status: boolean;\r\n store: IStore;\r\n createdAt: Date;\r\n updatedAt: Date;\r\n}"],"mappings":";AAIO,IAAM,OAAO,CAAC,OAAO,OAAO,QAAQ,YAAY,WAAW;;;ACU3D,IAAM,wBAAwB;AAAA,EACjC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACJ;;;ACpBO,IAAM,mBAAmB;AAAA,EAC5B,YAAY;AAAA,EACZ,OAAO;AACX;","names":[]}
|
package/package.json
CHANGED
|
@@ -1,37 +1,38 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@signskart/shared",
|
|
3
|
-
"version": "1.3.
|
|
4
|
-
"description": "Production-grade upload manager SDK with queue, progress tracking, retry logic, and multi-provider support (S3, Cloudinary).",
|
|
5
|
-
"author": "Signskart",
|
|
6
|
-
"license": "UNLICENSED",
|
|
7
|
-
"main": "dist/index.cjs",
|
|
8
|
-
"module": "dist/index.js",
|
|
9
|
-
"types": "dist/index.d.ts",
|
|
10
|
-
"files": [
|
|
11
|
-
"dist"
|
|
12
|
-
],
|
|
13
|
-
"exports": {
|
|
14
|
-
".": {
|
|
15
|
-
"import": "./dist/index.js",
|
|
16
|
-
"require": "./dist/index.cjs"
|
|
17
|
-
}
|
|
18
|
-
},
|
|
19
|
-
"scripts": {
|
|
20
|
-
"
|
|
21
|
-
"
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
"
|
|
26
|
-
"
|
|
27
|
-
"
|
|
28
|
-
"
|
|
29
|
-
"
|
|
30
|
-
"
|
|
31
|
-
"
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
"
|
|
36
|
-
|
|
37
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "@signskart/shared",
|
|
3
|
+
"version": "1.3.41",
|
|
4
|
+
"description": "Production-grade upload manager SDK with queue, progress tracking, retry logic, and multi-provider support (S3, Cloudinary).",
|
|
5
|
+
"author": "Signskart",
|
|
6
|
+
"license": "UNLICENSED",
|
|
7
|
+
"main": "dist/index.cjs",
|
|
8
|
+
"module": "dist/index.js",
|
|
9
|
+
"types": "dist/index.d.ts",
|
|
10
|
+
"files": [
|
|
11
|
+
"dist"
|
|
12
|
+
],
|
|
13
|
+
"exports": {
|
|
14
|
+
".": {
|
|
15
|
+
"import": "./dist/index.js",
|
|
16
|
+
"require": "./dist/index.cjs"
|
|
17
|
+
}
|
|
18
|
+
},
|
|
19
|
+
"scripts": {
|
|
20
|
+
"dev": "tsup --watch",
|
|
21
|
+
"build": "tsup",
|
|
22
|
+
"prepublishOnly": "npm run build"
|
|
23
|
+
},
|
|
24
|
+
"keywords": [
|
|
25
|
+
"signskart",
|
|
26
|
+
"upload",
|
|
27
|
+
"s3",
|
|
28
|
+
"cloudinary",
|
|
29
|
+
"upload-manager",
|
|
30
|
+
"typescript",
|
|
31
|
+
"file-upload",
|
|
32
|
+
"sdk"
|
|
33
|
+
],
|
|
34
|
+
"devDependencies": {
|
|
35
|
+
"tsup": "^8.0.0",
|
|
36
|
+
"typescript": "^5.0.0"
|
|
37
|
+
}
|
|
38
|
+
}
|