@voyantjs/utils 0.1.0 → 0.2.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.
Files changed (114) hide show
  1. package/dist/kms-aws.d.ts.map +1 -1
  2. package/dist/kms-aws.js +1 -4
  3. package/dist/kms-aws.js.map +1 -1
  4. package/dist/kms.d.ts +1 -1
  5. package/dist/kms.d.ts.map +1 -1
  6. package/package.json +2 -2
  7. package/dist/accounting-countries.d.ts +0 -12
  8. package/dist/accounting-countries.d.ts.map +0 -1
  9. package/dist/accounting-countries.js +0 -307
  10. package/dist/accounting-countries.js.map +0 -1
  11. package/dist/accounting-regions.d.ts +0 -103
  12. package/dist/accounting-regions.d.ts.map +0 -1
  13. package/dist/accounting-regions.js +0 -38
  14. package/dist/accounting-regions.js.map +0 -1
  15. package/dist/airlines.d.ts +0 -960
  16. package/dist/airlines.d.ts.map +0 -1
  17. package/dist/airlines.js +0 -989
  18. package/dist/airlines.js.map +0 -1
  19. package/dist/analytics/api-key-events.d.ts +0 -89
  20. package/dist/analytics/api-key-events.d.ts.map +0 -1
  21. package/dist/analytics/api-key-events.js +0 -99
  22. package/dist/analytics/api-key-events.js.map +0 -1
  23. package/dist/api-keys-client.d.ts +0 -40
  24. package/dist/api-keys-client.d.ts.map +0 -1
  25. package/dist/api-keys-client.js +0 -63
  26. package/dist/api-keys-client.js.map +0 -1
  27. package/dist/api-keys.d.ts +0 -48
  28. package/dist/api-keys.d.ts.map +0 -1
  29. package/dist/api-keys.js +0 -108
  30. package/dist/api-keys.js.map +0 -1
  31. package/dist/checkout-signature.d.ts +0 -15
  32. package/dist/checkout-signature.d.ts.map +0 -1
  33. package/dist/checkout-signature.js +0 -64
  34. package/dist/checkout-signature.js.map +0 -1
  35. package/dist/conditions.d.ts +0 -36
  36. package/dist/conditions.d.ts.map +0 -1
  37. package/dist/conditions.js +0 -396
  38. package/dist/conditions.js.map +0 -1
  39. package/dist/email/send.d.ts +0 -20
  40. package/dist/email/send.d.ts.map +0 -1
  41. package/dist/email/send.js +0 -53
  42. package/dist/email/send.js.map +0 -1
  43. package/dist/form-runtime.d.ts +0 -38
  44. package/dist/form-runtime.d.ts.map +0 -1
  45. package/dist/form-runtime.js +0 -174
  46. package/dist/form-runtime.js.map +0 -1
  47. package/dist/gcs/storage.d.ts +0 -23
  48. package/dist/gcs/storage.d.ts.map +0 -1
  49. package/dist/gcs/storage.js +0 -25
  50. package/dist/gcs/storage.js.map +0 -1
  51. package/dist/geo.d.ts +0 -85
  52. package/dist/geo.d.ts.map +0 -1
  53. package/dist/geo.js +0 -141
  54. package/dist/geo.js.map +0 -1
  55. package/dist/kms-crypto.d.ts +0 -20
  56. package/dist/kms-crypto.d.ts.map +0 -1
  57. package/dist/kms-crypto.js +0 -108
  58. package/dist/kms-crypto.js.map +0 -1
  59. package/dist/kv-codecs.d.ts +0 -6
  60. package/dist/kv-codecs.d.ts.map +0 -1
  61. package/dist/kv-codecs.js +0 -4
  62. package/dist/kv-codecs.js.map +0 -1
  63. package/dist/price/resolve.d.ts +0 -91
  64. package/dist/price/resolve.d.ts.map +0 -1
  65. package/dist/price/resolve.js +0 -227
  66. package/dist/price/resolve.js.map +0 -1
  67. package/dist/redis.d.ts +0 -13
  68. package/dist/redis.d.ts.map +0 -1
  69. package/dist/redis.js +0 -16
  70. package/dist/redis.js.map +0 -1
  71. package/dist/region-only.d.ts +0 -11
  72. package/dist/region-only.d.ts.map +0 -1
  73. package/dist/region-only.js +0 -49
  74. package/dist/region-only.js.map +0 -1
  75. package/dist/region.d.ts +0 -11
  76. package/dist/region.d.ts.map +0 -1
  77. package/dist/region.js +0 -47
  78. package/dist/region.js.map +0 -1
  79. package/dist/romania-bucharest-sectors.d.ts +0 -6
  80. package/dist/romania-bucharest-sectors.d.ts.map +0 -1
  81. package/dist/romania-bucharest-sectors.js +0 -27
  82. package/dist/romania-bucharest-sectors.js.map +0 -1
  83. package/dist/romania-counties.d.ts +0 -6
  84. package/dist/romania-counties.d.ts.map +0 -1
  85. package/dist/romania-counties.js +0 -171
  86. package/dist/romania-counties.js.map +0 -1
  87. package/dist/sms/provider.d.ts +0 -28
  88. package/dist/sms/provider.d.ts.map +0 -1
  89. package/dist/sms/provider.js +0 -50
  90. package/dist/sms/provider.js.map +0 -1
  91. package/dist/sms/segments.d.ts +0 -3
  92. package/dist/sms/segments.d.ts.map +0 -1
  93. package/dist/sms/segments.js +0 -33
  94. package/dist/sms/segments.js.map +0 -1
  95. package/dist/twilio/client.d.ts +0 -13
  96. package/dist/twilio/client.d.ts.map +0 -1
  97. package/dist/twilio/client.js +0 -26
  98. package/dist/twilio/client.js.map +0 -1
  99. package/dist/usage/index.d.ts +0 -34
  100. package/dist/usage/index.d.ts.map +0 -1
  101. package/dist/usage/index.js +0 -18
  102. package/dist/usage/index.js.map +0 -1
  103. package/dist/usage/policy.d.ts +0 -27
  104. package/dist/usage/policy.d.ts.map +0 -1
  105. package/dist/usage/policy.js +0 -17
  106. package/dist/usage/policy.js.map +0 -1
  107. package/dist/validation/log.d.ts +0 -10
  108. package/dist/validation/log.d.ts.map +0 -1
  109. package/dist/validation/log.js +0 -37
  110. package/dist/validation/log.js.map +0 -1
  111. package/dist/zod-form-builder.d.ts +0 -45
  112. package/dist/zod-form-builder.d.ts.map +0 -1
  113. package/dist/zod-form-builder.js +0 -216
  114. package/dist/zod-form-builder.js.map +0 -1
@@ -1,91 +0,0 @@
1
- export type PricingModel = "per_person" | "per_group" | "per_option";
2
- export type PerPersonVector = {
3
- adult: number;
4
- child?: number;
5
- infant?: number;
6
- };
7
- export type PerGroupVector = {
8
- group_price: number;
9
- extra_per_person?: number;
10
- };
11
- export type OptionVector = {
12
- options: Record<string, number> | Array<{
13
- key: string;
14
- label?: string;
15
- amount: number;
16
- }>;
17
- };
18
- export type PriceVector = PerPersonVector | PerGroupVector | OptionVector;
19
- export type OverrideMode = "absolute" | "delta" | "percent";
20
- export type RuleEffect = {
21
- type: "percent" | "fixed";
22
- value: number;
23
- apply_to?: "total" | "per_person" | "per_group";
24
- };
25
- export type Rule = {
26
- id: string;
27
- name: string;
28
- active: boolean;
29
- priority: number;
30
- conditions?: {
31
- room_category?: string;
32
- adults?: number;
33
- children?: number;
34
- nights_min?: number;
35
- nights_max?: number;
36
- occupancy_max?: number;
37
- };
38
- effect: RuleEffect & {
39
- kind?: "discount" | "surcharge";
40
- per?: "per_stay" | "per_night";
41
- };
42
- };
43
- export type TaxesFees = {
44
- included?: boolean;
45
- components?: Array<{
46
- key: string;
47
- type: "percent" | "fixed";
48
- value: number;
49
- per: "person" | "group";
50
- }>;
51
- };
52
- export type MarketRule = {
53
- jurisdiction?: string | null;
54
- buyerType: "B2C" | "B2B";
55
- requiresBuyerVatId?: boolean | null;
56
- productCategory?: string | null;
57
- taxRate: number;
58
- reverseCharge?: boolean | null;
59
- zeroRated?: boolean | null;
60
- taxIncluded?: boolean | null;
61
- effectiveFrom?: Date | null;
62
- effectiveTo?: Date | null;
63
- priority?: number | null;
64
- };
65
- export declare function pickMarketRule(params: {
66
- rules: MarketRule[];
67
- now?: Date;
68
- jurisdiction?: string | null;
69
- buyerType: "B2C" | "B2B";
70
- hasBuyerVatId?: boolean;
71
- productCategory?: string | null;
72
- }): MarketRule | null;
73
- export type AgeBand = {
74
- min_age?: number | null;
75
- max_age?: number | null;
76
- percent_of_base: number;
77
- };
78
- export declare function applyOverride(model: PricingModel, base: PriceVector, mode?: OverrideMode, vector?: any): PriceVector;
79
- export declare function applyRules(model: PricingModel, input: PriceVector, rules: Rule[], ctx?: any): {
80
- output: PriceVector;
81
- deltas: Array<{
82
- id: string;
83
- name: string;
84
- delta: number;
85
- }>;
86
- };
87
- export declare function applyTaxes(model: PricingModel, input: PriceVector, taxes?: TaxesFees): {
88
- total: PriceVector;
89
- };
90
- export declare function priceForAge(model: PricingModel, base: PriceVector, age: number, ageBands?: AgeBand[]): number;
91
- //# sourceMappingURL=resolve.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"resolve.d.ts","sourceRoot":"","sources":["../../src/price/resolve.ts"],"names":[],"mappings":"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"}
@@ -1,227 +0,0 @@
1
- export function pickMarketRule(params) {
2
- const now = params.now ?? new Date();
3
- const byPriority = (a, b) => Number(a ?? 100) - Number(b ?? 100);
4
- const candidates = (params.rules || [])
5
- .filter((r) => {
6
- if (!r)
7
- return false;
8
- if (r.buyerType !== params.buyerType)
9
- return false;
10
- if (typeof r.requiresBuyerVatId === "boolean" &&
11
- r.requiresBuyerVatId &&
12
- !params.hasBuyerVatId)
13
- return false;
14
- if (r.productCategory &&
15
- params.productCategory &&
16
- r.productCategory !== params.productCategory)
17
- return false;
18
- if (r.effectiveFrom && now < r.effectiveFrom)
19
- return false;
20
- if (r.effectiveTo && now > r.effectiveTo)
21
- return false;
22
- // jurisdiction match: exact region (e.g. US-CA) > country (US) > undefined (global)
23
- const want = String(params.jurisdiction || "").trim();
24
- const ruleJ = String(r.jurisdiction || "").trim();
25
- if (ruleJ) {
26
- if (want && want !== ruleJ) {
27
- // handle country fallback: if want is US-CA and rule is US
28
- const wantCountry = want.includes("-") ? want.split("-")[0] : want;
29
- if (ruleJ !== wantCountry)
30
- return false;
31
- }
32
- }
33
- return true;
34
- })
35
- .sort((a, b) => byPriority(a.priority, b.priority));
36
- return candidates[0] || null;
37
- }
38
- export function applyOverride(model, base, mode, vector) {
39
- if (!mode || !vector)
40
- return base;
41
- if (mode === "absolute")
42
- return vector;
43
- if (mode === "delta") {
44
- if (model === "per_person") {
45
- const b = base;
46
- return {
47
- adult: Number(b.adult || 0) + Number(vector.adult || 0),
48
- child: Number(b.child || 0) + Number(vector.child || 0),
49
- infant: Number(b.infant || 0) + Number(vector.infant || 0),
50
- };
51
- }
52
- if (model === "per_option") {
53
- const cur = base.options;
54
- const delta = (vector?.options || {});
55
- // normalize to record
56
- const toRecord = (o) => {
57
- if (Array.isArray(o))
58
- return Object.fromEntries(o.map((e) => [e.key, Number(e.amount || 0)]));
59
- return (o) || {};
60
- };
61
- const curRec = toRecord(cur);
62
- const deltaRec = toRecord(delta);
63
- const out = {};
64
- const keys = new Set([...Object.keys(curRec), ...Object.keys(deltaRec)]);
65
- for (const k of keys)
66
- out[k] = Number(curRec[k] || 0) + Number(deltaRec[k] || 0);
67
- return { options: out };
68
- }
69
- const b = base;
70
- return {
71
- group_price: Number(b.group_price || 0) + Number(vector.group_price || 0),
72
- extra_per_person: Number(b.extra_per_person || 0) + Number(vector.extra_per_person || 0),
73
- };
74
- }
75
- if (mode === "percent") {
76
- const mul = 1 + Number(vector.percent || 0) / 100;
77
- if (model === "per_person") {
78
- const b = base;
79
- return {
80
- adult: Number(b.adult || 0) * mul,
81
- child: Number(b.child || 0) * mul,
82
- infant: Number(b.infant || 0) * mul,
83
- };
84
- }
85
- if (model === "per_option") {
86
- const cur = base.options;
87
- const toRecord = (o) => Array.isArray(o)
88
- ? Object.fromEntries(o.map((e) => [e.key, Number(e.amount || 0)]))
89
- : (o) || {};
90
- const curRec = toRecord(cur);
91
- const out = {};
92
- for (const k of Object.keys(curRec))
93
- out[k] = Number(curRec[k] || 0) * mul;
94
- return { options: out };
95
- }
96
- const b = base;
97
- return {
98
- group_price: Number(b.group_price || 0) * mul,
99
- extra_per_person: Number(b.extra_per_person || 0) * mul,
100
- };
101
- }
102
- return base;
103
- }
104
- function evaluateConditions(conds, ctx) {
105
- if (!conds)
106
- return true;
107
- if (conds.room_category && ctx?.room_category !== conds.room_category)
108
- return false;
109
- if (typeof conds.adults === "number" && Number(ctx?.adults) !== conds.adults)
110
- return false;
111
- if (typeof conds.children === "number" && Number(ctx?.children) !== conds.children)
112
- return false;
113
- if (typeof conds.nights_min === "number" && Number(ctx?.nights || 0) < conds.nights_min)
114
- return false;
115
- if (typeof conds.nights_max === "number" && Number(ctx?.nights || 0) > conds.nights_max)
116
- return false;
117
- if (typeof conds.occupancy_max === "number") {
118
- const occ = Number(ctx?.adults || 0) + Number(ctx?.children || 0);
119
- if (occ > conds.occupancy_max)
120
- return false;
121
- }
122
- return true;
123
- }
124
- export function applyRules(model, input, rules, ctx) {
125
- const active = (rules || []).filter((r) => r.active).sort((a, b) => a.priority - b.priority);
126
- const deltas = [];
127
- const out = { ...input };
128
- for (const r of active) {
129
- if (!evaluateConditions(r.conditions, ctx))
130
- continue;
131
- const eff = r.effect;
132
- const kind = eff.kind === "surcharge" ? "surcharge" : "discount";
133
- const perMultiplier = eff.per === "per_night" ? Math.max(1, Number(ctx?.nights || 0)) : 1;
134
- if (eff.type === "percent") {
135
- const mul = kind === "surcharge" ? 1 + Number(eff.value || 0) / 100 : 1 - Number(eff.value || 0) / 100;
136
- if (model === "per_person") {
137
- const before = Number(out.adult || 0);
138
- out.adult = before * mul;
139
- deltas.push({ id: r.id, name: r.name, delta: out.adult - before });
140
- }
141
- else if (model === "per_group") {
142
- const before = Number(out.group_price || 0);
143
- out.group_price = before * mul;
144
- deltas.push({
145
- id: r.id,
146
- name: r.name,
147
- delta: out.group_price - before,
148
- });
149
- }
150
- else if (model === "per_option") {
151
- const cur = out.options;
152
- const toRecord = (o) => Array.isArray(o)
153
- ? Object.fromEntries(o.map((e) => [e.key, Number(e.amount || 0)]))
154
- : (o) || {};
155
- const beforeSum = Object.values(toRecord(cur)).reduce((a, b) => a + Number(b || 0), 0);
156
- const rec = toRecord(cur);
157
- const next = {};
158
- for (const k of Object.keys(rec))
159
- next[k] = Number(rec[k] || 0) * mul;
160
- out.options = next;
161
- const afterSum = Object.values(next).reduce((a, b) => a + Number(b || 0), 0);
162
- deltas.push({ id: r.id, name: r.name, delta: afterSum - beforeSum });
163
- }
164
- }
165
- else if (eff.type === "fixed") {
166
- const amt = (kind === "surcharge" ? 1 : -1) * Number(eff.value || 0) * perMultiplier;
167
- if (model === "per_person") {
168
- const before = Number(out.adult || 0);
169
- out.adult = before + amt;
170
- deltas.push({ id: r.id, name: r.name, delta: amt });
171
- }
172
- else if (model === "per_group") {
173
- const before = Number(out.group_price || 0);
174
- out.group_price = before + amt;
175
- deltas.push({ id: r.id, name: r.name, delta: amt });
176
- }
177
- else if (model === "per_option") {
178
- const cur = out.options;
179
- const toArray = (o) => Array.isArray(o)
180
- ? o
181
- : Object.entries((o) || {}).map(([k, v]) => ({
182
- key: k,
183
- amount: Number(v || 0),
184
- }));
185
- const arr = toArray(cur);
186
- const next = arr.map((e) => ({ ...e, amount: Number(e.amount || 0) + amt }));
187
- out.options = next;
188
- deltas.push({ id: r.id, name: r.name, delta: amt });
189
- }
190
- }
191
- }
192
- return { output: out, deltas };
193
- }
194
- export function applyTaxes(model, input, taxes) {
195
- // This util keeps structure; net/gross math is handled at API level using selected tax rate/inclusivity
196
- return { total: input };
197
- }
198
- export function priceForAge(model, base, age, ageBands) {
199
- if (model === "per_group") {
200
- return Number(base.group_price || 0);
201
- }
202
- if (model === "per_option") {
203
- const cur = base.options;
204
- const toArray = (o) => Array.isArray(o)
205
- ? o
206
- : Object.entries((o) || {}).map(([k, v]) => ({
207
- key: k,
208
- amount: Number(v || 0),
209
- }));
210
- const first = toArray(cur)[0];
211
- return Number(first?.amount || 0);
212
- }
213
- const per = base;
214
- const baseAdult = Number(per.adult || 0);
215
- const bands = Array.isArray(ageBands) ? ageBands : [];
216
- const matched = bands.find((b) => {
217
- const minOk = typeof b.min_age === "number" ? age >= (b.min_age) : true;
218
- const maxOk = typeof b.max_age === "number" ? age < (b.max_age) : true;
219
- return minOk && maxOk;
220
- });
221
- if (matched) {
222
- const factor = Number(matched.percent_of_base || 0) / 100;
223
- return baseAdult * factor;
224
- }
225
- return baseAdult;
226
- }
227
- //# sourceMappingURL=resolve.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"resolve.js","sourceRoot":"","sources":["../../src/price/resolve.ts"],"names":[],"mappings":"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"}
package/dist/redis.d.ts DELETED
@@ -1,13 +0,0 @@
1
- /**
2
- * Redis Utility (DEPRECATED)
3
- *
4
- * Upstash Redis has been removed to reduce costs.
5
- * Use Cloudflare KV instead via the cache.ts module.
6
- *
7
- * @deprecated Use @pxmstudio/voyant-utils/cache with Cloudflare KV instead
8
- */
9
- /**
10
- * @deprecated Use Cloudflare KV instead
11
- */
12
- export declare function getRedis(): null;
13
- //# sourceMappingURL=redis.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"redis.d.ts","sourceRoot":"","sources":["../src/redis.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;GAEG;AACH,wBAAgB,QAAQ,IAAI,IAAI,CAG/B"}
package/dist/redis.js DELETED
@@ -1,16 +0,0 @@
1
- /**
2
- * Redis Utility (DEPRECATED)
3
- *
4
- * Upstash Redis has been removed to reduce costs.
5
- * Use Cloudflare KV instead via the cache.ts module.
6
- *
7
- * @deprecated Use @pxmstudio/voyant-utils/cache with Cloudflare KV instead
8
- */
9
- /**
10
- * @deprecated Use Cloudflare KV instead
11
- */
12
- export function getRedis() {
13
- console.warn("[redis] Upstash Redis has been removed. Use Cloudflare KV instead.");
14
- return null;
15
- }
16
- //# sourceMappingURL=redis.js.map
package/dist/redis.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"redis.js","sourceRoot":"","sources":["../src/redis.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;GAEG;AACH,MAAM,UAAU,QAAQ;IACtB,OAAO,CAAC,IAAI,CAAC,oEAAoE,CAAC,CAAA;IAClF,OAAO,IAAI,CAAA;AACb,CAAC"}
@@ -1,11 +0,0 @@
1
- export type Region = "US" | "EU";
2
- export declare function normalizeRegion(input?: string | null): Region;
3
- export declare function resolveRegion(opts?: {
4
- forceRegion?: string | null;
5
- organizationRegion?: string | null;
6
- headerRegion?: string | null;
7
- cookieRegion?: string | null;
8
- geoCountry?: string | null;
9
- defaultRegion?: string | null;
10
- }): Region;
11
- //# sourceMappingURL=region-only.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"region-only.d.ts","sourceRoot":"","sources":["../src/region-only.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,MAAM,GAAG,IAAI,GAAG,IAAI,CAAA;AAEhC,wBAAgB,eAAe,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAE7D;AAED,wBAAgB,aAAa,CAC3B,IAAI,GAAE;IACJ,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAClC,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACzB,GACL,MAAM,CAqCR"}
@@ -1,49 +0,0 @@
1
- // Region utilities that can be safely imported in Edge Runtime (middleware)
2
- // This file excludes any dependencies that are not compatible with Edge Runtime
3
- export function normalizeRegion(input) {
4
- return input && input.toUpperCase() === "EU" ? "EU" : "US";
5
- }
6
- export function resolveRegion(opts = {}) {
7
- if (opts.forceRegion)
8
- return normalizeRegion(opts.forceRegion);
9
- if (opts.organizationRegion)
10
- return normalizeRegion(opts.organizationRegion);
11
- if (opts.headerRegion)
12
- return normalizeRegion(opts.headerRegion);
13
- if (opts.cookieRegion)
14
- return normalizeRegion(opts.cookieRegion);
15
- const EU_COUNTRIES = new Set([
16
- "DE",
17
- "FR",
18
- "ES",
19
- "IT",
20
- "NL",
21
- "SE",
22
- "NO",
23
- "DK",
24
- "FI",
25
- "IE",
26
- "PL",
27
- "RO",
28
- "BG",
29
- "HU",
30
- "CZ",
31
- "AT",
32
- "BE",
33
- "PT",
34
- "GR",
35
- "HR",
36
- "SK",
37
- "SI",
38
- "EE",
39
- "LV",
40
- "LT",
41
- "LU",
42
- "MT",
43
- "CY",
44
- ]);
45
- if (opts.geoCountry && EU_COUNTRIES.has(String(opts.geoCountry).toUpperCase()))
46
- return "EU";
47
- return normalizeRegion(opts.defaultRegion || process.env.DEFAULT_REGION || "US");
48
- }
49
- //# sourceMappingURL=region-only.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"region-only.js","sourceRoot":"","sources":["../src/region-only.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAC5E,gFAAgF;AAIhF,MAAM,UAAU,eAAe,CAAC,KAAqB;IACnD,OAAO,KAAK,IAAI,KAAK,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAA;AAC5D,CAAC;AAED,MAAM,UAAU,aAAa,CAC3B,OAOI,EAAE;IAEN,IAAI,IAAI,CAAC,WAAW;QAAE,OAAO,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;IAC9D,IAAI,IAAI,CAAC,kBAAkB;QAAE,OAAO,eAAe,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAA;IAC5E,IAAI,IAAI,CAAC,YAAY;QAAE,OAAO,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;IAChE,IAAI,IAAI,CAAC,YAAY;QAAE,OAAO,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;IAChE,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC;QAC3B,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;KACL,CAAC,CAAA;IACF,IAAI,IAAI,CAAC,UAAU,IAAI,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,WAAW,EAAE,CAAC;QAAE,OAAO,IAAI,CAAA;IAC3F,OAAO,eAAe,CAAC,IAAI,CAAC,aAAa,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,IAAI,CAAC,CAAA;AAClF,CAAC"}
package/dist/region.d.ts DELETED
@@ -1,11 +0,0 @@
1
- export type Region = "US" | "EU";
2
- export declare function normalizeRegion(input?: string | null): Region;
3
- export declare function resolveRegion(opts?: {
4
- forceRegion?: string | null;
5
- organizationRegion?: string | null;
6
- headerRegion?: string | null;
7
- cookieRegion?: string | null;
8
- geoCountry?: string | null;
9
- defaultRegion?: string | null;
10
- }): Region;
11
- //# sourceMappingURL=region.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"region.d.ts","sourceRoot":"","sources":["../src/region.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,MAAM,GAAG,IAAI,GAAG,IAAI,CAAA;AAEhC,wBAAgB,eAAe,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAE7D;AAED,wBAAgB,aAAa,CAC3B,IAAI,GAAE;IACJ,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAClC,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACzB,GACL,MAAM,CAqCR"}
package/dist/region.js DELETED
@@ -1,47 +0,0 @@
1
- export function normalizeRegion(input) {
2
- return input && input.toUpperCase() === "EU" ? "EU" : "US";
3
- }
4
- export function resolveRegion(opts = {}) {
5
- if (opts.forceRegion)
6
- return normalizeRegion(opts.forceRegion);
7
- if (opts.organizationRegion)
8
- return normalizeRegion(opts.organizationRegion);
9
- if (opts.headerRegion)
10
- return normalizeRegion(opts.headerRegion);
11
- if (opts.cookieRegion)
12
- return normalizeRegion(opts.cookieRegion);
13
- const EU_COUNTRIES = new Set([
14
- "DE",
15
- "FR",
16
- "ES",
17
- "IT",
18
- "NL",
19
- "SE",
20
- "NO",
21
- "DK",
22
- "FI",
23
- "IE",
24
- "PL",
25
- "RO",
26
- "BG",
27
- "HU",
28
- "CZ",
29
- "AT",
30
- "BE",
31
- "PT",
32
- "GR",
33
- "HR",
34
- "SK",
35
- "SI",
36
- "EE",
37
- "LV",
38
- "LT",
39
- "LU",
40
- "MT",
41
- "CY",
42
- ]);
43
- if (opts.geoCountry && EU_COUNTRIES.has(String(opts.geoCountry).toUpperCase()))
44
- return "EU";
45
- return normalizeRegion(opts.defaultRegion || process.env.DEFAULT_REGION || "US");
46
- }
47
- //# sourceMappingURL=region.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"region.js","sourceRoot":"","sources":["../src/region.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,eAAe,CAAC,KAAqB;IACnD,OAAO,KAAK,IAAI,KAAK,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAA;AAC5D,CAAC;AAED,MAAM,UAAU,aAAa,CAC3B,OAOI,EAAE;IAEN,IAAI,IAAI,CAAC,WAAW;QAAE,OAAO,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;IAC9D,IAAI,IAAI,CAAC,kBAAkB;QAAE,OAAO,eAAe,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAA;IAC5E,IAAI,IAAI,CAAC,YAAY;QAAE,OAAO,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;IAChE,IAAI,IAAI,CAAC,YAAY;QAAE,OAAO,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;IAChE,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC;QAC3B,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,IAAI;KACL,CAAC,CAAA;IACF,IAAI,IAAI,CAAC,UAAU,IAAI,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,WAAW,EAAE,CAAC;QAAE,OAAO,IAAI,CAAA;IAC3F,OAAO,eAAe,CAAC,IAAI,CAAC,aAAa,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,IAAI,CAAC,CAAA;AAClF,CAAC"}
@@ -1,6 +0,0 @@
1
- export type City = {
2
- name: string;
3
- value: string;
4
- };
5
- export declare const bucharestSectors: City[];
6
- //# sourceMappingURL=romania-bucharest-sectors.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"romania-bucharest-sectors.d.ts","sourceRoot":"","sources":["../src/romania-bucharest-sectors.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,IAAI,GAAG;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,IAAI,EAyBlC,CAAC"}
@@ -1,27 +0,0 @@
1
- export const bucharestSectors = [
2
- {
3
- name: "Sector 1",
4
- value: "Sector 1",
5
- },
6
- {
7
- name: "Sector 2",
8
- value: "Sector 2",
9
- },
10
- {
11
- name: "Sector 3",
12
- value: "Sector 3",
13
- },
14
- {
15
- name: "Sector 4",
16
- value: "Sector 4",
17
- },
18
- {
19
- name: "Sector 5",
20
- value: "Sector 5",
21
- },
22
- {
23
- name: "Sector 6",
24
- value: "Sector 6",
25
- },
26
- ];
27
- //# sourceMappingURL=romania-bucharest-sectors.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"romania-bucharest-sectors.js","sourceRoot":"","sources":["../src/romania-bucharest-sectors.ts"],"names":[],"mappings":"AAKA,MAAM,CAAC,MAAM,gBAAgB,GAAW;IACtC;QACE,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,UAAU;KAClB;IACD;QACE,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,UAAU;KAClB;IACD;QACE,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,UAAU;KAClB;IACD;QACE,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,UAAU;KAClB;IACD;QACE,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,UAAU;KAClB;IACD;QACE,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,UAAU;KAClB;CACF,CAAC"}
@@ -1,6 +0,0 @@
1
- export type County = {
2
- name: string;
3
- code: string;
4
- };
5
- export declare const counties: County[];
6
- //# sourceMappingURL=romania-counties.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"romania-counties.d.ts","sourceRoot":"","sources":["../src/romania-counties.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,MAAM,GAAG;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,MAAM,EAyK5B,CAAC"}