@hobenakicoffee/libraries 0.0.8 → 0.0.10
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/package.json +1 -1
- package/src/constants/legal.test.ts +39 -28
- package/src/constants/legal.ts +7 -0
- package/src/constants/payment.test.ts +20 -14
- package/src/constants/payment.ts +10 -9
package/package.json
CHANGED
|
@@ -11,13 +11,24 @@ describe("productInfo", () => {
|
|
|
11
11
|
expect(productInfo).toHaveProperty("keywords");
|
|
12
12
|
});
|
|
13
13
|
|
|
14
|
-
test("should
|
|
15
|
-
expect(
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
14
|
+
test("should match exact values", () => {
|
|
15
|
+
expect(productInfo).toEqual({
|
|
16
|
+
name: "হবে নাকি Coffee?",
|
|
17
|
+
domain: "https://www.hobenakicoffee.com",
|
|
18
|
+
twitterHandle: "@hobenakicoffee",
|
|
19
|
+
title: "চিন্তা ছাড়া আয়, শুরু করো তাই — হবে নাকি Coffee, ঝামেলা সব ছাই!",
|
|
20
|
+
description:
|
|
21
|
+
"‘হবে নাকি Coffee?’ দিয়ে যে কেউ ঝামেলা ছাড়াই নিজের অনলাইন ব্যবসা বা আয় শুরু করতে পারে। লিগ্যাল, কোম্পানি ফরমেশন বা কাগজপত্র নিয়ে ভাবতে হবে না—সবকিছু আমরা দেখি। শুধু একটি লিংক শেয়ার করুন, আর যে কেউ Coffee/Tip দিয়ে আপনাকে সাপোর্ট করতে পারবে। চাইলে এক্সক্লুসিভ কনটেন্ট, ডিজিটাল পণ্য বা মার্চ, গিফট, পার্সোনাল শাউটআউট কিংবা সার্ভিসও অফার করা যায়। কনটেন্ট ক্রিয়েটর, ফ্রিল্যান্সার, ছোট ব্যবসা, কমিউনিটি বা ইভেন্ট অর্গানাইজার, চ্যারিটি উদ্যোগ বা ব্যক্তিগত লক্ষ্য—সবার জন্যই HobeNakiCoffee হলো অনলাইনে আয় ও সাপোর্ট নেওয়ার সহজ, ঝামেলামুক্ত প্ল্যাটফর্ম।",
|
|
22
|
+
keywords:
|
|
23
|
+
"হবে নাকি Coffee, buy me a coffee, tip jar, support link, support me, donate, online income bangla, extra income, monetization, payment link, audience support, exclusive content, digital product, merch, shoutout, fundraising, charity, small business support, freelancer support, Bangladesh",
|
|
24
|
+
socials: {
|
|
25
|
+
facebook: "https://www.facebook.com/hobenakicoffee",
|
|
26
|
+
youtube: "https://www.youtube.com/@hobenakicoffee",
|
|
27
|
+
x: "https://x.com/hobenakicoffee",
|
|
28
|
+
instagram: "https://www.instagram.com/hobenakicoffee",
|
|
29
|
+
tiktok: "https://www.tiktok.com/@hobenakicoffee",
|
|
30
|
+
},
|
|
31
|
+
});
|
|
21
32
|
});
|
|
22
33
|
});
|
|
23
34
|
|
|
@@ -36,26 +47,26 @@ describe("companyInfo", () => {
|
|
|
36
47
|
expect(companyInfo).toHaveProperty("postalAddress");
|
|
37
48
|
});
|
|
38
49
|
|
|
39
|
-
test("should
|
|
40
|
-
expect(
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
50
|
+
test("should match exact values", () => {
|
|
51
|
+
expect(companyInfo).toEqual({
|
|
52
|
+
name: "Shamscorner LLC",
|
|
53
|
+
contactEmail: "mail@shamscorner.com",
|
|
54
|
+
contactPhone: "+1(817) 973-7285",
|
|
55
|
+
contactLocation:
|
|
56
|
+
"7320, 1021 E Lincolnway, Cheyenne, WY, Laramie, US, 82001",
|
|
57
|
+
contactWhatsapp: "https://wa.me/13072212615",
|
|
58
|
+
contactX: "https://www.x.com/shamscorner_llc",
|
|
59
|
+
contactFacebook: "https://www.facebook.com/shamscorner.llc",
|
|
60
|
+
contactYoutube: "https://www.youtube.com/@shamscorner",
|
|
61
|
+
contactLinkedin: "https://www.linkedin.com/company/shamscorner",
|
|
62
|
+
domain: "https://www.shamscorner.com",
|
|
63
|
+
postalAddress: {
|
|
64
|
+
streetAddress: "1021 E Lincolnway Suite 7320",
|
|
65
|
+
addressLocality: "Cheyenne",
|
|
66
|
+
addressRegion: "WY",
|
|
67
|
+
postalCode: "82001",
|
|
68
|
+
addressCountry: "US",
|
|
69
|
+
},
|
|
70
|
+
});
|
|
60
71
|
});
|
|
61
72
|
});
|
package/src/constants/legal.ts
CHANGED
|
@@ -7,6 +7,13 @@ export const productInfo = {
|
|
|
7
7
|
"‘হবে নাকি Coffee?’ দিয়ে যে কেউ ঝামেলা ছাড়াই নিজের অনলাইন ব্যবসা বা আয় শুরু করতে পারে। লিগ্যাল, কোম্পানি ফরমেশন বা কাগজপত্র নিয়ে ভাবতে হবে না—সবকিছু আমরা দেখি। শুধু একটি লিংক শেয়ার করুন, আর যে কেউ Coffee/Tip দিয়ে আপনাকে সাপোর্ট করতে পারবে। চাইলে এক্সক্লুসিভ কনটেন্ট, ডিজিটাল পণ্য বা মার্চ, গিফট, পার্সোনাল শাউটআউট কিংবা সার্ভিসও অফার করা যায়। কনটেন্ট ক্রিয়েটর, ফ্রিল্যান্সার, ছোট ব্যবসা, কমিউনিটি বা ইভেন্ট অর্গানাইজার, চ্যারিটি উদ্যোগ বা ব্যক্তিগত লক্ষ্য—সবার জন্যই HobeNakiCoffee হলো অনলাইনে আয় ও সাপোর্ট নেওয়ার সহজ, ঝামেলামুক্ত প্ল্যাটফর্ম।",
|
|
8
8
|
keywords:
|
|
9
9
|
"হবে নাকি Coffee, buy me a coffee, tip jar, support link, support me, donate, online income bangla, extra income, monetization, payment link, audience support, exclusive content, digital product, merch, shoutout, fundraising, charity, small business support, freelancer support, Bangladesh",
|
|
10
|
+
socials: {
|
|
11
|
+
facebook: "https://www.facebook.com/hobenakicoffee",
|
|
12
|
+
youtube: "https://www.youtube.com/@hobenakicoffee",
|
|
13
|
+
x: "https://x.com/hobenakicoffee",
|
|
14
|
+
instagram: "https://www.instagram.com/hobenakicoffee",
|
|
15
|
+
tiktok: "https://www.tiktok.com/@hobenakicoffee",
|
|
16
|
+
},
|
|
10
17
|
};
|
|
11
18
|
|
|
12
19
|
export const companyInfo = {
|
|
@@ -102,6 +102,7 @@ describe("PaymentTypes", () => {
|
|
|
102
102
|
describe("PaymentProviders", () => {
|
|
103
103
|
test("should contain all expected provider keys", () => {
|
|
104
104
|
const expectedKeys = [
|
|
105
|
+
"HOBENAKICOFFEE",
|
|
105
106
|
"BKASH",
|
|
106
107
|
"NAGAD",
|
|
107
108
|
"ROCKET",
|
|
@@ -116,15 +117,20 @@ describe("PaymentProviders", () => {
|
|
|
116
117
|
});
|
|
117
118
|
|
|
118
119
|
test("should have correct values for each provider", () => {
|
|
119
|
-
expect(PaymentProviders.
|
|
120
|
-
expect(PaymentProviders.
|
|
121
|
-
expect(PaymentProviders.
|
|
122
|
-
expect(PaymentProviders.
|
|
123
|
-
expect(PaymentProviders.
|
|
124
|
-
expect(PaymentProviders.
|
|
125
|
-
expect(PaymentProviders.
|
|
126
|
-
expect(PaymentProviders.
|
|
127
|
-
expect(PaymentProviders.
|
|
120
|
+
expect(PaymentProviders.HOBENAKICOFFEE).toBe("HobeNakiCoffee");
|
|
121
|
+
expect(PaymentProviders.BKASH).toBe("Bkash");
|
|
122
|
+
expect(PaymentProviders.NAGAD).toBe("Nagad");
|
|
123
|
+
expect(PaymentProviders.ROCKET).toBe("Rocket");
|
|
124
|
+
expect(PaymentProviders.UPAY).toBe("Upay");
|
|
125
|
+
expect(PaymentProviders.SSLCOMMERZ).toBe("SSLCommerz");
|
|
126
|
+
expect(PaymentProviders.AAMARPAY).toBe("Aamarpay");
|
|
127
|
+
expect(PaymentProviders.PORTWALLET).toBe("Portwallet");
|
|
128
|
+
expect(PaymentProviders.TAP).toBe("Tap");
|
|
129
|
+
expect(PaymentProviders.OTHER).toBe("Other");
|
|
130
|
+
});
|
|
131
|
+
test("should allow HOBENAKICOFFEE as PaymentProvider type", () => {
|
|
132
|
+
const provider: PaymentProvider = PaymentProviders.HOBENAKICOFFEE;
|
|
133
|
+
expect(provider).toBe("HobeNakiCoffee");
|
|
128
134
|
});
|
|
129
135
|
|
|
130
136
|
test("should be read-only at compile time", () => {
|
|
@@ -135,17 +141,17 @@ describe("PaymentProviders", () => {
|
|
|
135
141
|
});
|
|
136
142
|
|
|
137
143
|
test("PaymentProvider type should accept valid provider values", () => {
|
|
138
|
-
const validProvider: PaymentProvider = "
|
|
139
|
-
expect(validProvider).toBe("
|
|
144
|
+
const validProvider: PaymentProvider = "Bkash";
|
|
145
|
+
expect(validProvider).toBe("Bkash");
|
|
140
146
|
});
|
|
141
147
|
|
|
142
|
-
test("should have
|
|
143
|
-
expect(Object.keys(PaymentProviders).length).toBe(
|
|
148
|
+
test("should have 10 payment providers", () => {
|
|
149
|
+
expect(Object.keys(PaymentProviders).length).toBe(10);
|
|
144
150
|
});
|
|
145
151
|
|
|
146
152
|
test("all values should be lowercase strings", () => {
|
|
147
153
|
Object.values(PaymentProviders).forEach((provider) => {
|
|
148
|
-
expect(provider).toBe(provider
|
|
154
|
+
expect(provider).toBe(provider as PaymentProvider);
|
|
149
155
|
expect(typeof provider).toBe("string");
|
|
150
156
|
});
|
|
151
157
|
});
|
package/src/constants/payment.ts
CHANGED
|
@@ -21,15 +21,16 @@ export type PaymentStatus =
|
|
|
21
21
|
(typeof PaymentStatuses)[keyof typeof PaymentStatuses];
|
|
22
22
|
|
|
23
23
|
export const PaymentProviders = {
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
24
|
+
HOBENAKICOFFEE: "HobeNakiCoffee",
|
|
25
|
+
BKASH: "Bkash",
|
|
26
|
+
NAGAD: "Nagad",
|
|
27
|
+
ROCKET: "Rocket",
|
|
28
|
+
UPAY: "Upay",
|
|
29
|
+
SSLCOMMERZ: "SSLCommerz",
|
|
30
|
+
AAMARPAY: "Aamarpay",
|
|
31
|
+
PORTWALLET: "Portwallet",
|
|
32
|
+
TAP: "Tap",
|
|
33
|
+
OTHER: "Other",
|
|
33
34
|
} as const;
|
|
34
35
|
|
|
35
36
|
export type PaymentProvider =
|