@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 CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hobenakicoffee/libraries",
3
- "version": "0.0.8",
3
+ "version": "0.0.10",
4
4
  "type": "module",
5
5
  "types": "src/index.ts",
6
6
  "exports": {
@@ -11,13 +11,24 @@ describe("productInfo", () => {
11
11
  expect(productInfo).toHaveProperty("keywords");
12
12
  });
13
13
 
14
- test("should have correct types for fields", () => {
15
- expect(typeof productInfo.name).toBe("string");
16
- expect(typeof productInfo.domain).toBe("string");
17
- expect(typeof productInfo.twitterHandle).toBe("string");
18
- expect(typeof productInfo.title).toBe("string");
19
- expect(typeof productInfo.description).toBe("string");
20
- expect(typeof productInfo.keywords).toBe("string");
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 have correct types for fields", () => {
40
- expect(typeof companyInfo.name).toBe("string");
41
- expect(typeof companyInfo.contactEmail).toBe("string");
42
- expect(typeof companyInfo.contactPhone).toBe("string");
43
- expect(typeof companyInfo.contactLocation).toBe("string");
44
- expect(typeof companyInfo.contactWhatsapp).toBe("string");
45
- expect(typeof companyInfo.contactX).toBe("string");
46
- expect(typeof companyInfo.contactFacebook).toBe("string");
47
- expect(typeof companyInfo.contactYoutube).toBe("string");
48
- expect(typeof companyInfo.contactLinkedin).toBe("string");
49
- expect(typeof companyInfo.domain).toBe("string");
50
- expect(typeof companyInfo.postalAddress).toBe("object");
51
- });
52
-
53
- test("postalAddress should have all required fields", () => {
54
- const address = companyInfo.postalAddress;
55
- expect(address).toHaveProperty("streetAddress");
56
- expect(address).toHaveProperty("addressLocality");
57
- expect(address).toHaveProperty("addressRegion");
58
- expect(address).toHaveProperty("postalCode");
59
- expect(address).toHaveProperty("addressCountry");
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
  });
@@ -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.BKASH).toBe("bkash");
120
- expect(PaymentProviders.NAGAD).toBe("nagad");
121
- expect(PaymentProviders.ROCKET).toBe("rocket");
122
- expect(PaymentProviders.UPAY).toBe("upay");
123
- expect(PaymentProviders.SSLCOMMERZ).toBe("sslcommerz");
124
- expect(PaymentProviders.AAMARPAY).toBe("aamarpay");
125
- expect(PaymentProviders.PORTWALLET).toBe("portwallet");
126
- expect(PaymentProviders.TAP).toBe("tap");
127
- expect(PaymentProviders.OTHER).toBe("other");
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 = "bkash";
139
- expect(validProvider).toBe("bkash");
144
+ const validProvider: PaymentProvider = "Bkash";
145
+ expect(validProvider).toBe("Bkash");
140
146
  });
141
147
 
142
- test("should have 9 payment providers", () => {
143
- expect(Object.keys(PaymentProviders).length).toBe(9);
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.toLowerCase() as PaymentProvider);
154
+ expect(provider).toBe(provider as PaymentProvider);
149
155
  expect(typeof provider).toBe("string");
150
156
  });
151
157
  });
@@ -21,15 +21,16 @@ export type PaymentStatus =
21
21
  (typeof PaymentStatuses)[keyof typeof PaymentStatuses];
22
22
 
23
23
  export const PaymentProviders = {
24
- BKASH: "bkash",
25
- NAGAD: "nagad",
26
- ROCKET: "rocket",
27
- UPAY: "upay",
28
- SSLCOMMERZ: "sslcommerz",
29
- AAMARPAY: "aamarpay",
30
- PORTWALLET: "portwallet",
31
- TAP: "tap",
32
- OTHER: "other",
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 =