@taiga-ui/addon-commerce 2.30.0 → 2.34.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 (64) hide show
  1. package/bundles/taiga-ui-addon-commerce-components-card.umd.js +2 -2
  2. package/bundles/taiga-ui-addon-commerce-components-card.umd.js.map +1 -1
  3. package/bundles/taiga-ui-addon-commerce-components-card.umd.min.js +1 -1
  4. package/bundles/taiga-ui-addon-commerce-components-card.umd.min.js.map +1 -1
  5. package/bundles/taiga-ui-addon-commerce-components-input-card-grouped.umd.js +18 -7
  6. package/bundles/taiga-ui-addon-commerce-components-input-card-grouped.umd.js.map +1 -1
  7. package/bundles/taiga-ui-addon-commerce-components-input-card-grouped.umd.min.js +2 -2
  8. package/bundles/taiga-ui-addon-commerce-components-input-card-grouped.umd.min.js.map +1 -1
  9. package/bundles/taiga-ui-addon-commerce-components-money.umd.js +2 -2
  10. package/bundles/taiga-ui-addon-commerce-components-money.umd.js.map +1 -1
  11. package/bundles/taiga-ui-addon-commerce-components-money.umd.min.js +1 -1
  12. package/bundles/taiga-ui-addon-commerce-components-money.umd.min.js.map +1 -1
  13. package/bundles/taiga-ui-addon-commerce-enums.umd.js +286 -1
  14. package/bundles/taiga-ui-addon-commerce-enums.umd.js.map +1 -1
  15. package/bundles/taiga-ui-addon-commerce-enums.umd.min.js +1 -1
  16. package/bundles/taiga-ui-addon-commerce-enums.umd.min.js.map +1 -1
  17. package/bundles/taiga-ui-addon-commerce-utils.umd.js +2 -0
  18. package/bundles/taiga-ui-addon-commerce-utils.umd.js.map +1 -1
  19. package/bundles/taiga-ui-addon-commerce-utils.umd.min.js +1 -1
  20. package/bundles/taiga-ui-addon-commerce-utils.umd.min.js.map +1 -1
  21. package/components/card/taiga-ui-addon-commerce-components-card.metadata.json +1 -1
  22. package/components/input-card-grouped/input-card-grouped.component.d.ts +3 -1
  23. package/components/input-card-grouped/taiga-ui-addon-commerce-components-input-card-grouped.metadata.json +1 -1
  24. package/components/money/taiga-ui-addon-commerce-components-money.metadata.json +1 -1
  25. package/enums/currency-code.d.ts +143 -1
  26. package/enums/currency.d.ts +144 -2
  27. package/enums/taiga-ui-addon-commerce-enums.metadata.json +1 -1
  28. package/esm2015/components/card/card.component.js +3 -3
  29. package/esm2015/components/input-card-grouped/input-card-grouped.component.js +16 -9
  30. package/esm2015/components/money/money.component.js +3 -3
  31. package/esm2015/enums/currency-code.js +143 -1
  32. package/esm2015/enums/currency.js +144 -2
  33. package/esm2015/types/currency-variants.js +1 -1
  34. package/esm2015/utils/get-currency-symbol.js +3 -1
  35. package/esm5/components/card/card.component.js +3 -3
  36. package/esm5/components/input-card-grouped/input-card-grouped.component.js +20 -9
  37. package/esm5/components/money/money.component.js +3 -3
  38. package/esm5/enums/currency-code.js +143 -1
  39. package/esm5/enums/currency.js +144 -2
  40. package/esm5/types/currency-variants.js +1 -1
  41. package/esm5/utils/get-currency-symbol.js +3 -1
  42. package/fesm2015/taiga-ui-addon-commerce-components-card.js +2 -2
  43. package/fesm2015/taiga-ui-addon-commerce-components-card.js.map +1 -1
  44. package/fesm2015/taiga-ui-addon-commerce-components-input-card-grouped.js +15 -8
  45. package/fesm2015/taiga-ui-addon-commerce-components-input-card-grouped.js.map +1 -1
  46. package/fesm2015/taiga-ui-addon-commerce-components-money.js +2 -2
  47. package/fesm2015/taiga-ui-addon-commerce-components-money.js.map +1 -1
  48. package/fesm2015/taiga-ui-addon-commerce-enums.js +285 -1
  49. package/fesm2015/taiga-ui-addon-commerce-enums.js.map +1 -1
  50. package/fesm2015/taiga-ui-addon-commerce-utils.js +2 -0
  51. package/fesm2015/taiga-ui-addon-commerce-utils.js.map +1 -1
  52. package/fesm5/taiga-ui-addon-commerce-components-card.js +2 -2
  53. package/fesm5/taiga-ui-addon-commerce-components-card.js.map +1 -1
  54. package/fesm5/taiga-ui-addon-commerce-components-input-card-grouped.js +19 -8
  55. package/fesm5/taiga-ui-addon-commerce-components-input-card-grouped.js.map +1 -1
  56. package/fesm5/taiga-ui-addon-commerce-components-money.js +2 -2
  57. package/fesm5/taiga-ui-addon-commerce-components-money.js.map +1 -1
  58. package/fesm5/taiga-ui-addon-commerce-enums.js +285 -1
  59. package/fesm5/taiga-ui-addon-commerce-enums.js.map +1 -1
  60. package/fesm5/taiga-ui-addon-commerce-utils.js +2 -0
  61. package/fesm5/taiga-ui-addon-commerce-utils.js.map +1 -1
  62. package/package.json +7 -7
  63. package/types/currency-variants.d.ts +2 -1
  64. package/types/taiga-ui-addon-commerce-types.metadata.json +1 -1
@@ -4,49 +4,334 @@
4
4
  (global = global || self, factory((global['taiga-ui'] = global['taiga-ui'] || {}, global['taiga-ui']['addon-commerce'] = global['taiga-ui']['addon-commerce'] || {}, global['taiga-ui']['addon-commerce'].enums = {})));
5
5
  }(this, (function (exports) { 'use strict';
6
6
 
7
+ /**
8
+ * **Active ISO 4217 alphabetic currency codes**
9
+ *
10
+ * @description The ISO 4217 classification is used to describe alphabetic and numeric currency codes.
11
+ * @description Alphabetic code is also called "alfa-3".
12
+ *
13
+ * @link https://en.wikipedia.org/wiki/ISO_4217
14
+ */
15
+
7
16
  (function (TuiCurrency) {
17
+ /**
18
+ * Russian ruble
19
+ *
20
+ * @description Numeric code: 643
21
+ * @description Alphabetic code: RUB
22
+ * @description Countries and territories: Russia
23
+ */
8
24
  TuiCurrency["Ruble"] = "RUB";
25
+ /**
26
+ * Euro
27
+ *
28
+ * @description Numeric code: 978
29
+ * @description Alphabetic code: EUR
30
+ * @description Countries and territories: Åland Islands (AX), European Union (EU), Andorra (AD), Austria (AT), Belgium (BE), Cyprus (CY), Estonia (EE), Finland (FI), France (FR), French Southern and Antarctic Lands (TF), Germany (DE), Greece (GR), Guadeloupe (GP), Ireland (IE), Italy (IT), Latvia (LV), Lithuania (LT), Luxembourg (LU), Malta (MT), French Guiana (GF), Martinique (MQ), Mayotte (YT), Monaco (MC), Montenegro (ME), Netherlands (NL), Portugal (PT), Réunion (RE), Saint Barthélemy (BL), Saint Martin (MF), Saint Pierre and Miquelon (PM), San Marino (SM), Slovakia (SK), Slovenia (SI), Spain (ES), Vatican City (VA)
31
+ */
9
32
  TuiCurrency["Euro"] = "EUR";
33
+ /**
34
+ * United States dollar
35
+ *
36
+ * @description Numeric code: 840
37
+ * @description Alphabetic code: USD
38
+ * @description Countries and territories: United States, American Samoa (AS), British Indian Ocean Territory (IO) (also uses GBP), British Virgin Islands (VG), Caribbean Netherlands (BQ – Bonaire, Sint Eustatius and Saba), Ecuador (EC), El Salvador (SV), Guam (GU), Marshall Islands (MH), Federated States of Micronesia (FM), Northern Mariana Islands (MP), Palau (PW), Panama (PA) (as well as Panamanian Balboa), Puerto Rico (PR), Timor-Leste (TL), Turks and Caicos Islands (TC), U.S. Virgin Islands (VI), United States Minor Outlying Islands (UM)
39
+ */
10
40
  TuiCurrency["Dollar"] = "USD";
41
+ /**
42
+ * Pound sterling
43
+ *
44
+ * @description Numeric code: 826
45
+ * @description Alphabetic code: GBP
46
+ * @description Countries and territories: United Kingdom, Isle of Man (IM, see Manx pound), Jersey (JE, see Jersey pound), Guernsey (GG, see Guernsey pound), Tristan da Cunha (SH-TA)
47
+ */
11
48
  TuiCurrency["Pound"] = "GBP";
49
+ /**
50
+ * Thai baht
51
+ *
52
+ * @description Numeric code: 764
53
+ * @description Alphabetic code: THB
54
+ * @description Countries and territories: Thailand
55
+ */
12
56
  TuiCurrency["Baht"] = "THB";
57
+ /**
58
+ * Turkish lira
59
+ *
60
+ * @description Numeric code: 949
61
+ * @description Alphabetic code: TRY
62
+ * @description Countries and territories: Turkey
63
+ */
13
64
  TuiCurrency["TurkishLira"] = "TRY";
65
+ /**
66
+ * Chinese yuan
67
+ *
68
+ * @description Numeric code: 156
69
+ * @description Alphabetic code: CNY
70
+ * @description Countries and territories: China
71
+ */
14
72
  TuiCurrency["YuanRenminbi"] = "CNY";
73
+ /**
74
+ * Kazakhstani tenge
75
+ *
76
+ * @description Numeric code: 398
77
+ * @description Alphabetic code: KZT
78
+ * @description Countries and territories: Kazakhstan
79
+ */
15
80
  TuiCurrency["Tenge"] = "KZT";
81
+ /**
82
+ * Israeli new shekel
83
+ *
84
+ * @description Numeric code: 376
85
+ * @description Alphabetic code: ILS
86
+ * @description Countries and territories: Israel
87
+ */
16
88
  TuiCurrency["IsraeliShekel"] = "ILS";
89
+ /**
90
+ * Indian rupee
91
+ *
92
+ * @description Numeric code: 356
93
+ * @description Alphabetic code: INR
94
+ * @description Countries and territories: India, Bhutan
95
+ */
17
96
  TuiCurrency["IndianRupee"] = "INR";
97
+ /**
98
+ * Japanese yen
99
+ *
100
+ * @description Numeric code: 392
101
+ * @description Alphabetic code: JPY
102
+ * @description Countries and territories: Japan
103
+ */
18
104
  TuiCurrency["Yen"] = "JPY";
105
+ /**
106
+ * South Korean won
107
+ *
108
+ * @description Numeric code: 410
109
+ * @description Alphabetic code: KRW
110
+ * @description Countries and territories: South Korea
111
+ */
112
+ TuiCurrency["Won"] = "KRW";
113
+ /**
114
+ * Swiss franc
115
+ *
116
+ * @description Numeric code: 756
117
+ * @description Alphabetic code: CHF
118
+ * @description Countries and territories: Switzerland, Liechtenstein (LI)
119
+ */
19
120
  TuiCurrency["SwissFranc"] = "CHF";
121
+ /**
122
+ * Singapore dollar
123
+ *
124
+ * @description Numeric code: 702
125
+ * @description Alphabetic code: SGD
126
+ * @description Countries and territories: Singapore
127
+ */
20
128
  TuiCurrency["SingaporeDollar"] = "SGD";
129
+ /**
130
+ * Australian dollar
131
+ *
132
+ * @description Numeric code: 036
133
+ * @description Alphabetic code: AUD
134
+ * @description Countries and territories: Australia, Christmas Island (CX), Cocos (Keeling) Islands (CC), Heard Island and McDonald Islands (HM), Kiribati (KI), Nauru (NR), Norfolk Island (NF), Tuvalu (TV)
135
+ */
21
136
  TuiCurrency["AustralianDollar"] = "AUD";
137
+ /**
138
+ * Hong Kong dollar
139
+ *
140
+ * @description Numeric code: 344
141
+ * @description Alphabetic code: HKD
142
+ * @description Countries and territories: Hong Kong
143
+ */
22
144
  TuiCurrency["HongKong_dollar"] = "HKD";
145
+ /**
146
+ * Canadian dollar
147
+ *
148
+ * @description Numeric code: 124
149
+ * @description Alphabetic code: CAD
150
+ * @description Countries and territories: Canada
151
+ */
23
152
  TuiCurrency["CanadianDollar"] = "CAD";
153
+ /**
154
+ * Armenian dram
155
+ *
156
+ * @description Numeric code: 051
157
+ * @description Alphabetic code: AMD
158
+ * @description Countries and territories: Armenia
159
+ */
24
160
  TuiCurrency["ArmenianDram"] = "AMD";
25
- TuiCurrency["Won"] = "KRW";
161
+ /**
162
+ * Ukrainian hryvnia
163
+ *
164
+ * @description Numeric code: 980
165
+ * @description Alphabetic code: UAH
166
+ * @description Countries and territories: Ukraine
167
+ */
26
168
  TuiCurrency["Hryvnia"] = "UAH";
169
+ TuiCurrency["MexicanPeso"] = "MXN";
27
170
  })(exports.TuiCurrency || (exports.TuiCurrency = {}));
28
171
 
172
+ /**
173
+ * **Active ISO 4217 numeric currency codes**
174
+ *
175
+ * @description The ISO 4217 classification is used to describe alphabetic and numeric currency codes.
176
+ * @description Numeric code is also called "number-3".
177
+ *
178
+ * @link https://en.wikipedia.org/wiki/ISO_4217
179
+ */
29
180
 
30
181
  (function (TuiCurrencyCode) {
182
+ /**
183
+ * Russian ruble
184
+ *
185
+ * @description Numeric code: 643
186
+ * @description Alphabetic code: RUB
187
+ * @description Countries and territories: Russia
188
+ */
31
189
  TuiCurrencyCode["Ruble"] = "643";
190
+ /**
191
+ * Euro
192
+ *
193
+ * @description Numeric code: 978
194
+ * @description Alphabetic code: EUR
195
+ * @description Countries and territories: Åland Islands (AX), European Union (EU), Andorra (AD), Austria (AT), Belgium (BE), Cyprus (CY), Estonia (EE), Finland (FI), France (FR), French Southern and Antarctic Lands (TF), Germany (DE), Greece (GR), Guadeloupe (GP), Ireland (IE), Italy (IT), Latvia (LV), Lithuania (LT), Luxembourg (LU), Malta (MT), French Guiana (GF), Martinique (MQ), Mayotte (YT), Monaco (MC), Montenegro (ME), Netherlands (NL), Portugal (PT), Réunion (RE), Saint Barthélemy (BL), Saint Martin (MF), Saint Pierre and Miquelon (PM), San Marino (SM), Slovakia (SK), Slovenia (SI), Spain (ES), Vatican City (VA)
196
+ */
32
197
  TuiCurrencyCode["Euro"] = "978";
198
+ /**
199
+ * United States dollar
200
+ *
201
+ * @description Numeric code: 840
202
+ * @description Alphabetic code: USD
203
+ * @description Countries and territories: United States, American Samoa (AS), British Indian Ocean Territory (IO) (also uses GBP), British Virgin Islands (VG), Caribbean Netherlands (BQ – Bonaire, Sint Eustatius and Saba), Ecuador (EC), El Salvador (SV), Guam (GU), Marshall Islands (MH), Federated States of Micronesia (FM), Northern Mariana Islands (MP), Palau (PW), Panama (PA) (as well as Panamanian Balboa), Puerto Rico (PR), Timor-Leste (TL), Turks and Caicos Islands (TC), U.S. Virgin Islands (VI), United States Minor Outlying Islands (UM)
204
+ */
33
205
  TuiCurrencyCode["Dollar"] = "840";
206
+ /**
207
+ * Pound sterling
208
+ *
209
+ * @description Numeric code: 826
210
+ * @description Alphabetic code: GBP
211
+ * @description Countries and territories: United Kingdom, Isle of Man (IM, see Manx pound), Jersey (JE, see Jersey pound), Guernsey (GG, see Guernsey pound), Tristan da Cunha (SH-TA)
212
+ */
34
213
  TuiCurrencyCode["Pound"] = "826";
214
+ /**
215
+ * Thai baht
216
+ *
217
+ * @description Numeric code: 764
218
+ * @description Alphabetic code: THB
219
+ * @description Countries and territories: Thailand
220
+ */
35
221
  TuiCurrencyCode["Baht"] = "764";
222
+ /**
223
+ * Turkish lira
224
+ *
225
+ * @description Numeric code: 949
226
+ * @description Alphabetic code: TRY
227
+ * @description Countries and territories: Turkey
228
+ */
36
229
  TuiCurrencyCode["TurkishLira"] = "949";
230
+ /**
231
+ * Chinese yuan
232
+ *
233
+ * @description Numeric code: 156
234
+ * @description Alphabetic code: CNY
235
+ * @description Countries and territories: China
236
+ */
37
237
  TuiCurrencyCode["YuanRenminbi"] = "156";
238
+ /**
239
+ * Kazakhstani tenge
240
+ *
241
+ * @description Numeric code: 398
242
+ * @description Alphabetic code: KZT
243
+ * @description Countries and territories: Kazakhstan
244
+ */
38
245
  TuiCurrencyCode["Tenge"] = "398";
246
+ /**
247
+ * Israeli new shekel
248
+ *
249
+ * @description Numeric code: 376
250
+ * @description Alphabetic code: ILS
251
+ * @description Countries and territories: Israel
252
+ */
39
253
  TuiCurrencyCode["IsraeliShekel"] = "376";
254
+ /**
255
+ * Indian rupee
256
+ *
257
+ * @description Numeric code: 356
258
+ * @description Alphabetic code: INR
259
+ * @description Countries and territories: India, Bhutan
260
+ */
40
261
  TuiCurrencyCode["IndianRupee"] = "356";
262
+ /**
263
+ * Japanese yen
264
+ *
265
+ * @description Numeric code: 392
266
+ * @description Alphabetic code: JPY
267
+ * @description Countries and territories: Japan
268
+ */
41
269
  TuiCurrencyCode["Yen"] = "392";
270
+ /**
271
+ * South Korean won
272
+ *
273
+ * @description Numeric code: 410
274
+ * @description Alphabetic code: KRW
275
+ * @description Countries and territories: South Korea
276
+ */
42
277
  TuiCurrencyCode["Won"] = "410";
278
+ /**
279
+ * Swiss franc
280
+ *
281
+ * @description Numeric code: 756
282
+ * @description Alphabetic code: CHF
283
+ * @description Countries and territories: Switzerland, Liechtenstein (LI)
284
+ */
43
285
  TuiCurrencyCode["SwissFranc"] = "756";
286
+ /**
287
+ * Singapore dollar
288
+ *
289
+ * @description Numeric code: 702
290
+ * @description Alphabetic code: SGD
291
+ * @description Countries and territories: Singapore
292
+ */
44
293
  TuiCurrencyCode["SingaporeDollar"] = "702";
294
+ /**
295
+ * Australian dollar
296
+ *
297
+ * @description Numeric code: 036
298
+ * @description Alphabetic code: AUD
299
+ * @description Countries and territories: Australia, Christmas Island (CX), Cocos (Keeling) Islands (CC), Heard Island and McDonald Islands (HM), Kiribati (KI), Nauru (NR), Norfolk Island (NF), Tuvalu (TV)
300
+ */
45
301
  TuiCurrencyCode["AustralianDollar"] = "036";
302
+ /**
303
+ * Hong Kong dollar
304
+ *
305
+ * @description Numeric code: 344
306
+ * @description Alphabetic code: HKD
307
+ * @description Countries and territories: Hong Kong
308
+ */
46
309
  TuiCurrencyCode["HongKong_dollar"] = "344";
310
+ /**
311
+ * Canadian dollar
312
+ *
313
+ * @description Numeric code: 124
314
+ * @description Alphabetic code: CAD
315
+ * @description Countries and territories: Canada
316
+ */
47
317
  TuiCurrencyCode["CanadianDollar"] = "124";
318
+ /**
319
+ * Armenian dram
320
+ *
321
+ * @description Numeric code: 051
322
+ * @description Alphabetic code: AMD
323
+ * @description Countries and territories: Armenia
324
+ */
48
325
  TuiCurrencyCode["ArmenianDram"] = "051";
326
+ /**
327
+ * Ukrainian hryvnia
328
+ *
329
+ * @description Numeric code: 980
330
+ * @description Alphabetic code: UAH
331
+ * @description Countries and territories: Ukraine
332
+ */
49
333
  TuiCurrencyCode["Hryvnia"] = "980";
334
+ TuiCurrencyCode["MexicanPeso"] = "484";
50
335
  })(exports.TuiCurrencyCode || (exports.TuiCurrencyCode = {}));
51
336
 
52
337
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-addon-commerce-enums.umd.js","sources":["ng://@taiga-ui/addon-commerce/enums/currency.ts","ng://@taiga-ui/addon-commerce/enums/currency-code.ts","ng://@taiga-ui/addon-commerce/enums/money-sign.ts","ng://@taiga-ui/addon-commerce/enums/payment-system.ts"],"sourcesContent":["export const enum TuiCurrency {\n Ruble = 'RUB',\n Euro = 'EUR',\n Dollar = 'USD',\n Pound = 'GBP',\n Baht = 'THB',\n TurkishLira = 'TRY',\n YuanRenminbi = 'CNY',\n Tenge = 'KZT',\n IsraeliShekel = 'ILS',\n IndianRupee = 'INR',\n Yen = 'JPY',\n SwissFranc = 'CHF',\n SingaporeDollar = 'SGD',\n AustralianDollar = 'AUD',\n HongKong_dollar = 'HKD',\n CanadianDollar = 'CAD',\n ArmenianDram = 'AMD',\n Won = 'KRW',\n Hryvnia = 'UAH',\n}\n","export const enum TuiCurrencyCode {\n Ruble = '643',\n Euro = '978',\n Dollar = '840',\n Pound = '826',\n Baht = '764',\n TurkishLira = '949',\n YuanRenminbi = '156',\n Tenge = '398',\n IsraeliShekel = '376',\n IndianRupee = '356',\n Yen = '392',\n Won = '410',\n SwissFranc = '756',\n SingaporeDollar = '702',\n AustralianDollar = '036',\n HongKong_dollar = '344',\n CanadianDollar = '124',\n ArmenianDram = '051',\n Hryvnia = '980',\n}\n","/**\n * negative-only — show sign only for negative numbers\n * always — always show sign, except for zero\n * never — never show sign\n * force-negative — show minus no matter the number, except for zero\n * force-positive — show plus no matter the number, except for zero\n * @deprecated use join type {@link TuiMoneySignT}\n */\nexport const enum TuiMoneySign {\n NegativeOnly = 'negative-only',\n Always = 'always',\n Never = 'never',\n ForceNegative = 'force-negative',\n ForcePositive = 'force-positive',\n}\n","export const enum TuiPaymentSystem {\n Visa = 'visa',\n Electron = 'electron',\n Mastercard = 'mastercard',\n Maestro = 'maestro',\n Mir = 'mir',\n}\n"],"names":["TuiCurrency","TuiCurrencyCode","TuiMoneySign","TuiPaymentSystem"],"mappings":";;;;;;IAAA,WAAkB,WAAW;QACzB,4BAAa,CAAA;QACb,2BAAY,CAAA;QACZ,6BAAc,CAAA;QACd,4BAAa,CAAA;QACb,2BAAY,CAAA;QACZ,kCAAmB,CAAA;QACnB,mCAAoB,CAAA;QACpB,4BAAa,CAAA;QACb,oCAAqB,CAAA;QACrB,kCAAmB,CAAA;QACnB,0BAAW,CAAA;QACX,iCAAkB,CAAA;QAClB,sCAAuB,CAAA;QACvB,uCAAwB,CAAA;QACxB,sCAAuB,CAAA;QACvB,qCAAsB,CAAA;QACtB,mCAAoB,CAAA;QACpB,0BAAW,CAAA;QACX,8BAAe,CAAA;IACnB,CAAC,EApBiBA,mBAAW,KAAXA,mBAAW;;;ICA7B,WAAkB,eAAe;QAC7B,gCAAa,CAAA;QACb,+BAAY,CAAA;QACZ,iCAAc,CAAA;QACd,gCAAa,CAAA;QACb,+BAAY,CAAA;QACZ,sCAAmB,CAAA;QACnB,uCAAoB,CAAA;QACpB,gCAAa,CAAA;QACb,wCAAqB,CAAA;QACrB,sCAAmB,CAAA;QACnB,8BAAW,CAAA;QACX,8BAAW,CAAA;QACX,qCAAkB,CAAA;QAClB,0CAAuB,CAAA;QACvB,2CAAwB,CAAA;QACxB,0CAAuB,CAAA;QACvB,yCAAsB,CAAA;QACtB,uCAAoB,CAAA;QACpB,kCAAe,CAAA;IACnB,CAAC,EApBiBC,uBAAe,KAAfA,uBAAe;;ICAjC;;;;;;;;;IAQA,WAAkB,YAAY;QAC1B,8CAA8B,CAAA;QAC9B,iCAAiB,CAAA;QACjB,+BAAe,CAAA;QACf,gDAAgC,CAAA;QAChC,gDAAgC,CAAA;IACpC,CAAC,EANiBC,oBAAY,KAAZA,oBAAY;;;ICR9B,WAAkB,gBAAgB;QAC9B,iCAAa,CAAA;QACb,yCAAqB,CAAA;QACrB,6CAAyB,CAAA;QACzB,uCAAmB,CAAA;QACnB,+BAAW,CAAA;IACf,CAAC,EANiBC,wBAAgB,KAAhBA,wBAAgB;;;;;;;;"}
1
+ {"version":3,"file":"taiga-ui-addon-commerce-enums.umd.js","sources":["ng://@taiga-ui/addon-commerce/enums/currency.ts","ng://@taiga-ui/addon-commerce/enums/currency-code.ts","ng://@taiga-ui/addon-commerce/enums/money-sign.ts","ng://@taiga-ui/addon-commerce/enums/payment-system.ts"],"sourcesContent":["/**\n * **Active ISO 4217 alphabetic currency codes**\n *\n * @description The ISO 4217 classification is used to describe alphabetic and numeric currency codes.\n * @description Alphabetic code is also called \"alfa-3\".\n *\n * @link https://en.wikipedia.org/wiki/ISO_4217\n */\nexport const enum TuiCurrency {\n /**\n * Russian ruble\n *\n * @description Numeric code: 643\n * @description Alphabetic code: RUB\n * @description Countries and territories: Russia\n */\n Ruble = 'RUB',\n\n /**\n * Euro\n *\n * @description Numeric code: 978\n * @description Alphabetic code: EUR\n * @description Countries and territories: Åland Islands (AX), European Union (EU), Andorra (AD), Austria (AT), Belgium (BE), Cyprus (CY), Estonia (EE), Finland (FI), France (FR), French Southern and Antarctic Lands (TF), Germany (DE), Greece (GR), Guadeloupe (GP), Ireland (IE), Italy (IT), Latvia (LV), Lithuania (LT), Luxembourg (LU), Malta (MT), French Guiana (GF), Martinique (MQ), Mayotte (YT), Monaco (MC), Montenegro (ME), Netherlands (NL), Portugal (PT), Réunion (RE), Saint Barthélemy (BL), Saint Martin (MF), Saint Pierre and Miquelon (PM), San Marino (SM), Slovakia (SK), Slovenia (SI), Spain (ES), Vatican City (VA)\n */\n Euro = 'EUR',\n\n /**\n * United States dollar\n *\n * @description Numeric code: 840\n * @description Alphabetic code: USD\n * @description Countries and territories: United States, American Samoa (AS), British Indian Ocean Territory (IO) (also uses GBP), British Virgin Islands (VG), Caribbean Netherlands (BQ – Bonaire, Sint Eustatius and Saba), Ecuador (EC), El Salvador (SV), Guam (GU), Marshall Islands (MH), Federated States of Micronesia (FM), Northern Mariana Islands (MP), Palau (PW), Panama (PA) (as well as Panamanian Balboa), Puerto Rico (PR), Timor-Leste (TL), Turks and Caicos Islands (TC), U.S. Virgin Islands (VI), United States Minor Outlying Islands (UM)\n */\n Dollar = 'USD',\n\n /**\n * Pound sterling\n *\n * @description Numeric code: 826\n * @description Alphabetic code: GBP\n * @description Countries and territories: United Kingdom, Isle of Man (IM, see Manx pound), Jersey (JE, see Jersey pound), Guernsey (GG, see Guernsey pound), Tristan da Cunha (SH-TA)\n */\n Pound = 'GBP',\n\n /**\n * Thai baht\n *\n * @description Numeric code: 764\n * @description Alphabetic code: THB\n * @description Countries and territories: Thailand\n */\n Baht = 'THB',\n\n /**\n * Turkish lira\n *\n * @description Numeric code: 949\n * @description Alphabetic code: TRY\n * @description Countries and territories: Turkey\n */\n TurkishLira = 'TRY',\n\n /**\n * Chinese yuan\n *\n * @description Numeric code: 156\n * @description Alphabetic code: CNY\n * @description Countries and territories: China\n */\n YuanRenminbi = 'CNY',\n\n /**\n * Kazakhstani tenge\n *\n * @description Numeric code: 398\n * @description Alphabetic code: KZT\n * @description Countries and territories: Kazakhstan\n */\n Tenge = 'KZT',\n\n /**\n * Israeli new shekel\n *\n * @description Numeric code: 376\n * @description Alphabetic code: ILS\n * @description Countries and territories: Israel\n */\n IsraeliShekel = 'ILS',\n\n /**\n * Indian rupee\n *\n * @description Numeric code: 356\n * @description Alphabetic code: INR\n * @description Countries and territories: India, Bhutan\n */\n IndianRupee = 'INR',\n\n /**\n * Japanese yen\n *\n * @description Numeric code: 392\n * @description Alphabetic code: JPY\n * @description Countries and territories: Japan\n */\n Yen = 'JPY',\n\n /**\n * South Korean won\n *\n * @description Numeric code: 410\n * @description Alphabetic code: KRW\n * @description Countries and territories: South Korea\n */\n Won = 'KRW',\n\n /**\n * Swiss franc\n *\n * @description Numeric code: 756\n * @description Alphabetic code: CHF\n * @description Countries and territories: Switzerland, Liechtenstein (LI)\n */\n SwissFranc = 'CHF',\n\n /**\n * Singapore dollar\n *\n * @description Numeric code: 702\n * @description Alphabetic code: SGD\n * @description Countries and territories: Singapore\n */\n SingaporeDollar = 'SGD',\n\n /**\n * Australian dollar\n *\n * @description Numeric code: 036\n * @description Alphabetic code: AUD\n * @description Countries and territories: Australia, Christmas Island (CX), Cocos (Keeling) Islands (CC), Heard Island and McDonald Islands (HM), Kiribati (KI), Nauru (NR), Norfolk Island (NF), Tuvalu (TV)\n */\n AustralianDollar = 'AUD',\n\n /**\n * Hong Kong dollar\n *\n * @description Numeric code: 344\n * @description Alphabetic code: HKD\n * @description Countries and territories: Hong Kong\n */\n HongKong_dollar = 'HKD',\n\n /**\n * Canadian dollar\n *\n * @description Numeric code: 124\n * @description Alphabetic code: CAD\n * @description Countries and territories: Canada\n */\n CanadianDollar = 'CAD',\n\n /**\n * Armenian dram\n *\n * @description Numeric code: 051\n * @description Alphabetic code: AMD\n * @description Countries and territories: Armenia\n */\n ArmenianDram = 'AMD',\n\n /**\n * Ukrainian hryvnia\n *\n * @description Numeric code: 980\n * @description Alphabetic code: UAH\n * @description Countries and territories: Ukraine\n */\n Hryvnia = 'UAH',\n MexicanPeso = 'MXN',\n}\n","/**\n * **Active ISO 4217 numeric currency codes**\n *\n * @description The ISO 4217 classification is used to describe alphabetic and numeric currency codes.\n * @description Numeric code is also called \"number-3\".\n *\n * @link https://en.wikipedia.org/wiki/ISO_4217\n */\nexport const enum TuiCurrencyCode {\n /**\n * Russian ruble\n *\n * @description Numeric code: 643\n * @description Alphabetic code: RUB\n * @description Countries and territories: Russia\n */\n Ruble = '643',\n\n /**\n * Euro\n *\n * @description Numeric code: 978\n * @description Alphabetic code: EUR\n * @description Countries and territories: Åland Islands (AX), European Union (EU), Andorra (AD), Austria (AT), Belgium (BE), Cyprus (CY), Estonia (EE), Finland (FI), France (FR), French Southern and Antarctic Lands (TF), Germany (DE), Greece (GR), Guadeloupe (GP), Ireland (IE), Italy (IT), Latvia (LV), Lithuania (LT), Luxembourg (LU), Malta (MT), French Guiana (GF), Martinique (MQ), Mayotte (YT), Monaco (MC), Montenegro (ME), Netherlands (NL), Portugal (PT), Réunion (RE), Saint Barthélemy (BL), Saint Martin (MF), Saint Pierre and Miquelon (PM), San Marino (SM), Slovakia (SK), Slovenia (SI), Spain (ES), Vatican City (VA)\n */\n Euro = '978',\n\n /**\n * United States dollar\n *\n * @description Numeric code: 840\n * @description Alphabetic code: USD\n * @description Countries and territories: United States, American Samoa (AS), British Indian Ocean Territory (IO) (also uses GBP), British Virgin Islands (VG), Caribbean Netherlands (BQ – Bonaire, Sint Eustatius and Saba), Ecuador (EC), El Salvador (SV), Guam (GU), Marshall Islands (MH), Federated States of Micronesia (FM), Northern Mariana Islands (MP), Palau (PW), Panama (PA) (as well as Panamanian Balboa), Puerto Rico (PR), Timor-Leste (TL), Turks and Caicos Islands (TC), U.S. Virgin Islands (VI), United States Minor Outlying Islands (UM)\n */\n Dollar = '840',\n\n /**\n * Pound sterling\n *\n * @description Numeric code: 826\n * @description Alphabetic code: GBP\n * @description Countries and territories: United Kingdom, Isle of Man (IM, see Manx pound), Jersey (JE, see Jersey pound), Guernsey (GG, see Guernsey pound), Tristan da Cunha (SH-TA)\n */\n Pound = '826',\n\n /**\n * Thai baht\n *\n * @description Numeric code: 764\n * @description Alphabetic code: THB\n * @description Countries and territories: Thailand\n */\n Baht = '764',\n\n /**\n * Turkish lira\n *\n * @description Numeric code: 949\n * @description Alphabetic code: TRY\n * @description Countries and territories: Turkey\n */\n TurkishLira = '949',\n\n /**\n * Chinese yuan\n *\n * @description Numeric code: 156\n * @description Alphabetic code: CNY\n * @description Countries and territories: China\n */\n YuanRenminbi = '156',\n\n /**\n * Kazakhstani tenge\n *\n * @description Numeric code: 398\n * @description Alphabetic code: KZT\n * @description Countries and territories: Kazakhstan\n */\n Tenge = '398',\n\n /**\n * Israeli new shekel\n *\n * @description Numeric code: 376\n * @description Alphabetic code: ILS\n * @description Countries and territories: Israel\n */\n IsraeliShekel = '376',\n\n /**\n * Indian rupee\n *\n * @description Numeric code: 356\n * @description Alphabetic code: INR\n * @description Countries and territories: India, Bhutan\n */\n IndianRupee = '356',\n\n /**\n * Japanese yen\n *\n * @description Numeric code: 392\n * @description Alphabetic code: JPY\n * @description Countries and territories: Japan\n */\n Yen = '392',\n\n /**\n * South Korean won\n *\n * @description Numeric code: 410\n * @description Alphabetic code: KRW\n * @description Countries and territories: South Korea\n */\n Won = '410',\n\n /**\n * Swiss franc\n *\n * @description Numeric code: 756\n * @description Alphabetic code: CHF\n * @description Countries and territories: Switzerland, Liechtenstein (LI)\n */\n SwissFranc = '756',\n\n /**\n * Singapore dollar\n *\n * @description Numeric code: 702\n * @description Alphabetic code: SGD\n * @description Countries and territories: Singapore\n */\n SingaporeDollar = '702',\n\n /**\n * Australian dollar\n *\n * @description Numeric code: 036\n * @description Alphabetic code: AUD\n * @description Countries and territories: Australia, Christmas Island (CX), Cocos (Keeling) Islands (CC), Heard Island and McDonald Islands (HM), Kiribati (KI), Nauru (NR), Norfolk Island (NF), Tuvalu (TV)\n */\n AustralianDollar = '036',\n\n /**\n * Hong Kong dollar\n *\n * @description Numeric code: 344\n * @description Alphabetic code: HKD\n * @description Countries and territories: Hong Kong\n */\n HongKong_dollar = '344',\n\n /**\n * Canadian dollar\n *\n * @description Numeric code: 124\n * @description Alphabetic code: CAD\n * @description Countries and territories: Canada\n */\n CanadianDollar = '124',\n\n /**\n * Armenian dram\n *\n * @description Numeric code: 051\n * @description Alphabetic code: AMD\n * @description Countries and territories: Armenia\n */\n ArmenianDram = '051',\n\n /**\n * Ukrainian hryvnia\n *\n * @description Numeric code: 980\n * @description Alphabetic code: UAH\n * @description Countries and territories: Ukraine\n */\n Hryvnia = '980',\n MexicanPeso = '484',\n}\n","/**\n * negative-only — show sign only for negative numbers\n * always — always show sign, except for zero\n * never — never show sign\n * force-negative — show minus no matter the number, except for zero\n * force-positive — show plus no matter the number, except for zero\n * @deprecated use join type {@link TuiMoneySignT}\n */\nexport const enum TuiMoneySign {\n NegativeOnly = 'negative-only',\n Always = 'always',\n Never = 'never',\n ForceNegative = 'force-negative',\n ForcePositive = 'force-positive',\n}\n","export const enum TuiPaymentSystem {\n Visa = 'visa',\n Electron = 'electron',\n Mastercard = 'mastercard',\n Maestro = 'maestro',\n Mir = 'mir',\n}\n"],"names":["TuiCurrency","TuiCurrencyCode","TuiMoneySign","TuiPaymentSystem"],"mappings":";;;;;;IAAA;;;;;;;;;IAQA,WAAkB,WAAW;;;;;;;;QAQzB,4BAAa,CAAA;;;;;;;;QASb,2BAAY,CAAA;;;;;;;;QASZ,6BAAc,CAAA;;;;;;;;QASd,4BAAa,CAAA;;;;;;;;QASb,2BAAY,CAAA;;;;;;;;QASZ,kCAAmB,CAAA;;;;;;;;QASnB,mCAAoB,CAAA;;;;;;;;QASpB,4BAAa,CAAA;;;;;;;;QASb,oCAAqB,CAAA;;;;;;;;QASrB,kCAAmB,CAAA;;;;;;;;QASnB,0BAAW,CAAA;;;;;;;;QASX,0BAAW,CAAA;;;;;;;;QASX,iCAAkB,CAAA;;;;;;;;QASlB,sCAAuB,CAAA;;;;;;;;QASvB,uCAAwB,CAAA;;;;;;;;QASxB,sCAAuB,CAAA;;;;;;;;QASvB,qCAAsB,CAAA;;;;;;;;QAStB,mCAAoB,CAAA;;;;;;;;QASpB,8BAAe,CAAA;QACf,kCAAmB,CAAA;IACvB,CAAC,EA5KiBA,mBAAW,KAAXA,mBAAW;;ICR7B;;;;;;;;;IAQA,WAAkB,eAAe;;;;;;;;QAQ7B,gCAAa,CAAA;;;;;;;;QASb,+BAAY,CAAA;;;;;;;;QASZ,iCAAc,CAAA;;;;;;;;QASd,gCAAa,CAAA;;;;;;;;QASb,+BAAY,CAAA;;;;;;;;QASZ,sCAAmB,CAAA;;;;;;;;QASnB,uCAAoB,CAAA;;;;;;;;QASpB,gCAAa,CAAA;;;;;;;;QASb,wCAAqB,CAAA;;;;;;;;QASrB,sCAAmB,CAAA;;;;;;;;QASnB,8BAAW,CAAA;;;;;;;;QASX,8BAAW,CAAA;;;;;;;;QASX,qCAAkB,CAAA;;;;;;;;QASlB,0CAAuB,CAAA;;;;;;;;QASvB,2CAAwB,CAAA;;;;;;;;QASxB,0CAAuB,CAAA;;;;;;;;QASvB,yCAAsB,CAAA;;;;;;;;QAStB,uCAAoB,CAAA;;;;;;;;QASpB,kCAAe,CAAA;QACf,sCAAmB,CAAA;IACvB,CAAC,EA5KiBC,uBAAe,KAAfA,uBAAe;;ICRjC;;;;;;;;;IAQA,WAAkB,YAAY;QAC1B,8CAA8B,CAAA;QAC9B,iCAAiB,CAAA;QACjB,+BAAe,CAAA;QACf,gDAAgC,CAAA;QAChC,gDAAgC,CAAA;IACpC,CAAC,EANiBC,oBAAY,KAAZA,oBAAY;;;ICR9B,WAAkB,gBAAgB;QAC9B,iCAAa,CAAA;QACb,yCAAqB,CAAA;QACrB,6CAAyB,CAAA;QACzB,uCAAmB,CAAA;QACnB,+BAAW,CAAA;IACf,CAAC,EANiBC,wBAAgB,KAAhBA,wBAAgB;;;;;;;;"}
@@ -1,2 +1,2 @@
1
- !function(e,a){"object"==typeof exports&&"undefined"!=typeof module?a(exports):"function"==typeof define&&define.amd?define("@taiga-ui/addon-commerce/enums",["exports"],a):a(((e=e||self)["taiga-ui"]=e["taiga-ui"]||{},e["taiga-ui"]["addon-commerce"]=e["taiga-ui"]["addon-commerce"]||{},e["taiga-ui"]["addon-commerce"].enums={}))}(this,(function(e){"use strict";var a,n,i,r;(a=e.TuiCurrency||(e.TuiCurrency={})).Ruble="RUB",a.Euro="EUR",a.Dollar="USD",a.Pound="GBP",a.Baht="THB",a.TurkishLira="TRY",a.YuanRenminbi="CNY",a.Tenge="KZT",a.IsraeliShekel="ILS",a.IndianRupee="INR",a.Yen="JPY",a.SwissFranc="CHF",a.SingaporeDollar="SGD",a.AustralianDollar="AUD",a.HongKong_dollar="HKD",a.CanadianDollar="CAD",a.ArmenianDram="AMD",a.Won="KRW",a.Hryvnia="UAH",(n=e.TuiCurrencyCode||(e.TuiCurrencyCode={})).Ruble="643",n.Euro="978",n.Dollar="840",n.Pound="826",n.Baht="764",n.TurkishLira="949",n.YuanRenminbi="156",n.Tenge="398",n.IsraeliShekel="376",n.IndianRupee="356",n.Yen="392",n.Won="410",n.SwissFranc="756",n.SingaporeDollar="702",n.AustralianDollar="036",n.HongKong_dollar="344",n.CanadianDollar="124",n.ArmenianDram="051",n.Hryvnia="980",(i=e.TuiMoneySign||(e.TuiMoneySign={})).NegativeOnly="negative-only",i.Always="always",i.Never="never",i.ForceNegative="force-negative",i.ForcePositive="force-positive",(r=e.TuiPaymentSystem||(e.TuiPaymentSystem={})).Visa="visa",r.Electron="electron",r.Mastercard="mastercard",r.Maestro="maestro",r.Mir="mir",Object.defineProperty(e,"__esModule",{value:!0})}));
1
+ !function(e,a){"object"==typeof exports&&"undefined"!=typeof module?a(exports):"function"==typeof define&&define.amd?define("@taiga-ui/addon-commerce/enums",["exports"],a):a(((e=e||self)["taiga-ui"]=e["taiga-ui"]||{},e["taiga-ui"]["addon-commerce"]=e["taiga-ui"]["addon-commerce"]||{},e["taiga-ui"]["addon-commerce"].enums={}))}(this,(function(e){"use strict";var a,n,i,r;(a=e.TuiCurrency||(e.TuiCurrency={})).Ruble="RUB",a.Euro="EUR",a.Dollar="USD",a.Pound="GBP",a.Baht="THB",a.TurkishLira="TRY",a.YuanRenminbi="CNY",a.Tenge="KZT",a.IsraeliShekel="ILS",a.IndianRupee="INR",a.Yen="JPY",a.Won="KRW",a.SwissFranc="CHF",a.SingaporeDollar="SGD",a.AustralianDollar="AUD",a.HongKong_dollar="HKD",a.CanadianDollar="CAD",a.ArmenianDram="AMD",a.Hryvnia="UAH",a.MexicanPeso="MXN",(n=e.TuiCurrencyCode||(e.TuiCurrencyCode={})).Ruble="643",n.Euro="978",n.Dollar="840",n.Pound="826",n.Baht="764",n.TurkishLira="949",n.YuanRenminbi="156",n.Tenge="398",n.IsraeliShekel="376",n.IndianRupee="356",n.Yen="392",n.Won="410",n.SwissFranc="756",n.SingaporeDollar="702",n.AustralianDollar="036",n.HongKong_dollar="344",n.CanadianDollar="124",n.ArmenianDram="051",n.Hryvnia="980",n.MexicanPeso="484",(i=e.TuiMoneySign||(e.TuiMoneySign={})).NegativeOnly="negative-only",i.Always="always",i.Never="never",i.ForceNegative="force-negative",i.ForcePositive="force-positive",(r=e.TuiPaymentSystem||(e.TuiPaymentSystem={})).Visa="visa",r.Electron="electron",r.Mastercard="mastercard",r.Maestro="maestro",r.Mir="mir",Object.defineProperty(e,"__esModule",{value:!0})}));
2
2
  //# sourceMappingURL=taiga-ui-addon-commerce-enums.umd.min.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["ng://@taiga-ui/addon-commerce/enums/currency.ts","ng://@taiga-ui/addon-commerce/enums/currency-code.ts","ng://@taiga-ui/addon-commerce/enums/money-sign.ts","ng://@taiga-ui/addon-commerce/enums/payment-system.ts"],"names":["TuiCurrency","TuiCurrencyCode","TuiMoneySign","TuiPaymentSystem"],"mappings":"wWAAA,IAAkBA,ECAAC,ECQAC,ECRAC,GHAAH,EAAAA,EAAAA,cAAAA,EAAAA,YAAW,KACzB,MAAA,MACAA,EAAA,KAAA,MACAA,EAAA,OAAA,MACAA,EAAA,MAAA,MACAA,EAAA,KAAA,MACAA,EAAA,YAAA,MACAA,EAAA,aAAA,MACAA,EAAA,MAAA,MACAA,EAAA,cAAA,MACAA,EAAA,YAAA,MACAA,EAAA,IAAA,MACAA,EAAA,WAAA,MACAA,EAAA,gBAAA,MACAA,EAAA,iBAAA,MACAA,EAAA,gBAAA,MACAA,EAAA,eAAA,MACAA,EAAA,aAAA,MACAA,EAAA,IAAA,MACAA,EAAA,QAAA,OCnBcC,EAAAA,EAAAA,kBAAAA,EAAAA,gBAAe,KAC7B,MAAA,MACAA,EAAA,KAAA,MACAA,EAAA,OAAA,MACAA,EAAA,MAAA,MACAA,EAAA,KAAA,MACAA,EAAA,YAAA,MACAA,EAAA,aAAA,MACAA,EAAA,MAAA,MACAA,EAAA,cAAA,MACAA,EAAA,YAAA,MACAA,EAAA,IAAA,MACAA,EAAA,IAAA,MACAA,EAAA,WAAA,MACAA,EAAA,gBAAA,MACAA,EAAA,iBAAA,MACAA,EAAA,gBAAA,MACAA,EAAA,eAAA,MACAA,EAAA,aAAA,MACAA,EAAA,QAAA,OCXcC,EAAAA,EAAAA,eAAAA,EAAAA,aAAY,KAC1B,aAAA,gBACAA,EAAA,OAAA,SACAA,EAAA,MAAA,QACAA,EAAA,cAAA,iBACAA,EAAA,cAAA,kBCbcC,EAAAA,EAAAA,mBAAAA,EAAAA,iBAAgB,KAC9B,KAAA,OACAA,EAAA,SAAA,WACAA,EAAA,WAAA,aACAA,EAAA,QAAA,UACAA,EAAA,IAAA","sourcesContent":["export const enum TuiCurrency {\n Ruble = 'RUB',\n Euro = 'EUR',\n Dollar = 'USD',\n Pound = 'GBP',\n Baht = 'THB',\n TurkishLira = 'TRY',\n YuanRenminbi = 'CNY',\n Tenge = 'KZT',\n IsraeliShekel = 'ILS',\n IndianRupee = 'INR',\n Yen = 'JPY',\n SwissFranc = 'CHF',\n SingaporeDollar = 'SGD',\n AustralianDollar = 'AUD',\n HongKong_dollar = 'HKD',\n CanadianDollar = 'CAD',\n ArmenianDram = 'AMD',\n Won = 'KRW',\n Hryvnia = 'UAH',\n}\n","export const enum TuiCurrencyCode {\n Ruble = '643',\n Euro = '978',\n Dollar = '840',\n Pound = '826',\n Baht = '764',\n TurkishLira = '949',\n YuanRenminbi = '156',\n Tenge = '398',\n IsraeliShekel = '376',\n IndianRupee = '356',\n Yen = '392',\n Won = '410',\n SwissFranc = '756',\n SingaporeDollar = '702',\n AustralianDollar = '036',\n HongKong_dollar = '344',\n CanadianDollar = '124',\n ArmenianDram = '051',\n Hryvnia = '980',\n}\n","/**\n * negative-only — show sign only for negative numbers\n * always — always show sign, except for zero\n * never — never show sign\n * force-negative — show minus no matter the number, except for zero\n * force-positive — show plus no matter the number, except for zero\n * @deprecated use join type {@link TuiMoneySignT}\n */\nexport const enum TuiMoneySign {\n NegativeOnly = 'negative-only',\n Always = 'always',\n Never = 'never',\n ForceNegative = 'force-negative',\n ForcePositive = 'force-positive',\n}\n","export const enum TuiPaymentSystem {\n Visa = 'visa',\n Electron = 'electron',\n Mastercard = 'mastercard',\n Maestro = 'maestro',\n Mir = 'mir',\n}\n"]}
1
+ {"version":3,"sources":["ng://@taiga-ui/addon-commerce/enums/currency.ts","ng://@taiga-ui/addon-commerce/enums/currency-code.ts","ng://@taiga-ui/addon-commerce/enums/money-sign.ts","ng://@taiga-ui/addon-commerce/enums/payment-system.ts"],"names":["TuiCurrency","TuiCurrencyCode","TuiMoneySign","TuiPaymentSystem"],"mappings":"wWAQA,IAAkBA,ECAAC,ECAAC,ECRAC,GHQAH,EAAAA,EAAAA,cAAAA,EAAAA,YAAW,KAQzB,MAAA,MASAA,EAAA,KAAA,MASAA,EAAA,OAAA,MASAA,EAAA,MAAA,MASAA,EAAA,KAAA,MASAA,EAAA,YAAA,MASAA,EAAA,aAAA,MASAA,EAAA,MAAA,MASAA,EAAA,cAAA,MASAA,EAAA,YAAA,MASAA,EAAA,IAAA,MASAA,EAAA,IAAA,MASAA,EAAA,WAAA,MASAA,EAAA,gBAAA,MASAA,EAAA,iBAAA,MASAA,EAAA,gBAAA,MASAA,EAAA,eAAA,MASAA,EAAA,aAAA,MASAA,EAAA,QAAA,MACAA,EAAA,YAAA,OC3KcC,EAAAA,EAAAA,kBAAAA,EAAAA,gBAAe,KAQ7B,MAAA,MASAA,EAAA,KAAA,MASAA,EAAA,OAAA,MASAA,EAAA,MAAA,MASAA,EAAA,KAAA,MASAA,EAAA,YAAA,MASAA,EAAA,aAAA,MASAA,EAAA,MAAA,MASAA,EAAA,cAAA,MASAA,EAAA,YAAA,MASAA,EAAA,IAAA,MASAA,EAAA,IAAA,MASAA,EAAA,WAAA,MASAA,EAAA,gBAAA,MASAA,EAAA,iBAAA,MASAA,EAAA,gBAAA,MASAA,EAAA,eAAA,MASAA,EAAA,aAAA,MASAA,EAAA,QAAA,MACAA,EAAA,YAAA,OC3KcC,EAAAA,EAAAA,eAAAA,EAAAA,aAAY,KAC1B,aAAA,gBACAA,EAAA,OAAA,SACAA,EAAA,MAAA,QACAA,EAAA,cAAA,iBACAA,EAAA,cAAA,kBCbcC,EAAAA,EAAAA,mBAAAA,EAAAA,iBAAgB,KAC9B,KAAA,OACAA,EAAA,SAAA,WACAA,EAAA,WAAA,aACAA,EAAA,QAAA,UACAA,EAAA,IAAA","sourcesContent":["/**\n * **Active ISO 4217 alphabetic currency codes**\n *\n * @description The ISO 4217 classification is used to describe alphabetic and numeric currency codes.\n * @description Alphabetic code is also called \"alfa-3\".\n *\n * @link https://en.wikipedia.org/wiki/ISO_4217\n */\nexport const enum TuiCurrency {\n /**\n * Russian ruble\n *\n * @description Numeric code: 643\n * @description Alphabetic code: RUB\n * @description Countries and territories: Russia\n */\n Ruble = 'RUB',\n\n /**\n * Euro\n *\n * @description Numeric code: 978\n * @description Alphabetic code: EUR\n * @description Countries and territories: Åland Islands (AX), European Union (EU), Andorra (AD), Austria (AT), Belgium (BE), Cyprus (CY), Estonia (EE), Finland (FI), France (FR), French Southern and Antarctic Lands (TF), Germany (DE), Greece (GR), Guadeloupe (GP), Ireland (IE), Italy (IT), Latvia (LV), Lithuania (LT), Luxembourg (LU), Malta (MT), French Guiana (GF), Martinique (MQ), Mayotte (YT), Monaco (MC), Montenegro (ME), Netherlands (NL), Portugal (PT), Réunion (RE), Saint Barthélemy (BL), Saint Martin (MF), Saint Pierre and Miquelon (PM), San Marino (SM), Slovakia (SK), Slovenia (SI), Spain (ES), Vatican City (VA)\n */\n Euro = 'EUR',\n\n /**\n * United States dollar\n *\n * @description Numeric code: 840\n * @description Alphabetic code: USD\n * @description Countries and territories: United States, American Samoa (AS), British Indian Ocean Territory (IO) (also uses GBP), British Virgin Islands (VG), Caribbean Netherlands (BQ – Bonaire, Sint Eustatius and Saba), Ecuador (EC), El Salvador (SV), Guam (GU), Marshall Islands (MH), Federated States of Micronesia (FM), Northern Mariana Islands (MP), Palau (PW), Panama (PA) (as well as Panamanian Balboa), Puerto Rico (PR), Timor-Leste (TL), Turks and Caicos Islands (TC), U.S. Virgin Islands (VI), United States Minor Outlying Islands (UM)\n */\n Dollar = 'USD',\n\n /**\n * Pound sterling\n *\n * @description Numeric code: 826\n * @description Alphabetic code: GBP\n * @description Countries and territories: United Kingdom, Isle of Man (IM, see Manx pound), Jersey (JE, see Jersey pound), Guernsey (GG, see Guernsey pound), Tristan da Cunha (SH-TA)\n */\n Pound = 'GBP',\n\n /**\n * Thai baht\n *\n * @description Numeric code: 764\n * @description Alphabetic code: THB\n * @description Countries and territories: Thailand\n */\n Baht = 'THB',\n\n /**\n * Turkish lira\n *\n * @description Numeric code: 949\n * @description Alphabetic code: TRY\n * @description Countries and territories: Turkey\n */\n TurkishLira = 'TRY',\n\n /**\n * Chinese yuan\n *\n * @description Numeric code: 156\n * @description Alphabetic code: CNY\n * @description Countries and territories: China\n */\n YuanRenminbi = 'CNY',\n\n /**\n * Kazakhstani tenge\n *\n * @description Numeric code: 398\n * @description Alphabetic code: KZT\n * @description Countries and territories: Kazakhstan\n */\n Tenge = 'KZT',\n\n /**\n * Israeli new shekel\n *\n * @description Numeric code: 376\n * @description Alphabetic code: ILS\n * @description Countries and territories: Israel\n */\n IsraeliShekel = 'ILS',\n\n /**\n * Indian rupee\n *\n * @description Numeric code: 356\n * @description Alphabetic code: INR\n * @description Countries and territories: India, Bhutan\n */\n IndianRupee = 'INR',\n\n /**\n * Japanese yen\n *\n * @description Numeric code: 392\n * @description Alphabetic code: JPY\n * @description Countries and territories: Japan\n */\n Yen = 'JPY',\n\n /**\n * South Korean won\n *\n * @description Numeric code: 410\n * @description Alphabetic code: KRW\n * @description Countries and territories: South Korea\n */\n Won = 'KRW',\n\n /**\n * Swiss franc\n *\n * @description Numeric code: 756\n * @description Alphabetic code: CHF\n * @description Countries and territories: Switzerland, Liechtenstein (LI)\n */\n SwissFranc = 'CHF',\n\n /**\n * Singapore dollar\n *\n * @description Numeric code: 702\n * @description Alphabetic code: SGD\n * @description Countries and territories: Singapore\n */\n SingaporeDollar = 'SGD',\n\n /**\n * Australian dollar\n *\n * @description Numeric code: 036\n * @description Alphabetic code: AUD\n * @description Countries and territories: Australia, Christmas Island (CX), Cocos (Keeling) Islands (CC), Heard Island and McDonald Islands (HM), Kiribati (KI), Nauru (NR), Norfolk Island (NF), Tuvalu (TV)\n */\n AustralianDollar = 'AUD',\n\n /**\n * Hong Kong dollar\n *\n * @description Numeric code: 344\n * @description Alphabetic code: HKD\n * @description Countries and territories: Hong Kong\n */\n HongKong_dollar = 'HKD',\n\n /**\n * Canadian dollar\n *\n * @description Numeric code: 124\n * @description Alphabetic code: CAD\n * @description Countries and territories: Canada\n */\n CanadianDollar = 'CAD',\n\n /**\n * Armenian dram\n *\n * @description Numeric code: 051\n * @description Alphabetic code: AMD\n * @description Countries and territories: Armenia\n */\n ArmenianDram = 'AMD',\n\n /**\n * Ukrainian hryvnia\n *\n * @description Numeric code: 980\n * @description Alphabetic code: UAH\n * @description Countries and territories: Ukraine\n */\n Hryvnia = 'UAH',\n MexicanPeso = 'MXN',\n}\n","/**\n * **Active ISO 4217 numeric currency codes**\n *\n * @description The ISO 4217 classification is used to describe alphabetic and numeric currency codes.\n * @description Numeric code is also called \"number-3\".\n *\n * @link https://en.wikipedia.org/wiki/ISO_4217\n */\nexport const enum TuiCurrencyCode {\n /**\n * Russian ruble\n *\n * @description Numeric code: 643\n * @description Alphabetic code: RUB\n * @description Countries and territories: Russia\n */\n Ruble = '643',\n\n /**\n * Euro\n *\n * @description Numeric code: 978\n * @description Alphabetic code: EUR\n * @description Countries and territories: Åland Islands (AX), European Union (EU), Andorra (AD), Austria (AT), Belgium (BE), Cyprus (CY), Estonia (EE), Finland (FI), France (FR), French Southern and Antarctic Lands (TF), Germany (DE), Greece (GR), Guadeloupe (GP), Ireland (IE), Italy (IT), Latvia (LV), Lithuania (LT), Luxembourg (LU), Malta (MT), French Guiana (GF), Martinique (MQ), Mayotte (YT), Monaco (MC), Montenegro (ME), Netherlands (NL), Portugal (PT), Réunion (RE), Saint Barthélemy (BL), Saint Martin (MF), Saint Pierre and Miquelon (PM), San Marino (SM), Slovakia (SK), Slovenia (SI), Spain (ES), Vatican City (VA)\n */\n Euro = '978',\n\n /**\n * United States dollar\n *\n * @description Numeric code: 840\n * @description Alphabetic code: USD\n * @description Countries and territories: United States, American Samoa (AS), British Indian Ocean Territory (IO) (also uses GBP), British Virgin Islands (VG), Caribbean Netherlands (BQ – Bonaire, Sint Eustatius and Saba), Ecuador (EC), El Salvador (SV), Guam (GU), Marshall Islands (MH), Federated States of Micronesia (FM), Northern Mariana Islands (MP), Palau (PW), Panama (PA) (as well as Panamanian Balboa), Puerto Rico (PR), Timor-Leste (TL), Turks and Caicos Islands (TC), U.S. Virgin Islands (VI), United States Minor Outlying Islands (UM)\n */\n Dollar = '840',\n\n /**\n * Pound sterling\n *\n * @description Numeric code: 826\n * @description Alphabetic code: GBP\n * @description Countries and territories: United Kingdom, Isle of Man (IM, see Manx pound), Jersey (JE, see Jersey pound), Guernsey (GG, see Guernsey pound), Tristan da Cunha (SH-TA)\n */\n Pound = '826',\n\n /**\n * Thai baht\n *\n * @description Numeric code: 764\n * @description Alphabetic code: THB\n * @description Countries and territories: Thailand\n */\n Baht = '764',\n\n /**\n * Turkish lira\n *\n * @description Numeric code: 949\n * @description Alphabetic code: TRY\n * @description Countries and territories: Turkey\n */\n TurkishLira = '949',\n\n /**\n * Chinese yuan\n *\n * @description Numeric code: 156\n * @description Alphabetic code: CNY\n * @description Countries and territories: China\n */\n YuanRenminbi = '156',\n\n /**\n * Kazakhstani tenge\n *\n * @description Numeric code: 398\n * @description Alphabetic code: KZT\n * @description Countries and territories: Kazakhstan\n */\n Tenge = '398',\n\n /**\n * Israeli new shekel\n *\n * @description Numeric code: 376\n * @description Alphabetic code: ILS\n * @description Countries and territories: Israel\n */\n IsraeliShekel = '376',\n\n /**\n * Indian rupee\n *\n * @description Numeric code: 356\n * @description Alphabetic code: INR\n * @description Countries and territories: India, Bhutan\n */\n IndianRupee = '356',\n\n /**\n * Japanese yen\n *\n * @description Numeric code: 392\n * @description Alphabetic code: JPY\n * @description Countries and territories: Japan\n */\n Yen = '392',\n\n /**\n * South Korean won\n *\n * @description Numeric code: 410\n * @description Alphabetic code: KRW\n * @description Countries and territories: South Korea\n */\n Won = '410',\n\n /**\n * Swiss franc\n *\n * @description Numeric code: 756\n * @description Alphabetic code: CHF\n * @description Countries and territories: Switzerland, Liechtenstein (LI)\n */\n SwissFranc = '756',\n\n /**\n * Singapore dollar\n *\n * @description Numeric code: 702\n * @description Alphabetic code: SGD\n * @description Countries and territories: Singapore\n */\n SingaporeDollar = '702',\n\n /**\n * Australian dollar\n *\n * @description Numeric code: 036\n * @description Alphabetic code: AUD\n * @description Countries and territories: Australia, Christmas Island (CX), Cocos (Keeling) Islands (CC), Heard Island and McDonald Islands (HM), Kiribati (KI), Nauru (NR), Norfolk Island (NF), Tuvalu (TV)\n */\n AustralianDollar = '036',\n\n /**\n * Hong Kong dollar\n *\n * @description Numeric code: 344\n * @description Alphabetic code: HKD\n * @description Countries and territories: Hong Kong\n */\n HongKong_dollar = '344',\n\n /**\n * Canadian dollar\n *\n * @description Numeric code: 124\n * @description Alphabetic code: CAD\n * @description Countries and territories: Canada\n */\n CanadianDollar = '124',\n\n /**\n * Armenian dram\n *\n * @description Numeric code: 051\n * @description Alphabetic code: AMD\n * @description Countries and territories: Armenia\n */\n ArmenianDram = '051',\n\n /**\n * Ukrainian hryvnia\n *\n * @description Numeric code: 980\n * @description Alphabetic code: UAH\n * @description Countries and territories: Ukraine\n */\n Hryvnia = '980',\n MexicanPeso = '484',\n}\n","/**\n * negative-only — show sign only for negative numbers\n * always — always show sign, except for zero\n * never — never show sign\n * force-negative — show minus no matter the number, except for zero\n * force-positive — show plus no matter the number, except for zero\n * @deprecated use join type {@link TuiMoneySignT}\n */\nexport const enum TuiMoneySign {\n NegativeOnly = 'negative-only',\n Always = 'always',\n Never = 'never',\n ForceNegative = 'force-negative',\n ForcePositive = 'force-positive',\n}\n","export const enum TuiPaymentSystem {\n Visa = 'visa',\n Electron = 'electron',\n Mastercard = 'mastercard',\n Maestro = 'maestro',\n Mir = 'mir',\n}\n"]}
@@ -53,6 +53,8 @@
53
53
  return '₽';
54
54
  case "USD" /* Dollar */:
55
55
  case "840" /* Dollar */:
56
+ case "MXN" /* MexicanPeso */:
57
+ case "484" /* MexicanPeso */:
56
58
  return '$';
57
59
  case "SGD" /* SingaporeDollar */:
58
60
  case "702" /* SingaporeDollar */:
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-addon-commerce-utils.umd.js","sources":["ng://@taiga-ui/addon-commerce/utils/create-auto-corrected-expire-pipe.ts","ng://@taiga-ui/addon-commerce/utils/get-currency-symbol.ts","ng://@taiga-ui/addon-commerce/utils/format-currency.ts","ng://@taiga-ui/addon-commerce/utils/get-payment-system.ts","ng://@taiga-ui/addon-commerce/utils/is-card-length-valid.ts","ng://@taiga-ui/addon-commerce/utils/is-card-number-valid.ts","ng://@taiga-ui/addon-commerce/utils/is-expire-valid.ts"],"sourcesContent":["import {TUI_NON_DIGIT_REGEXP, TuiTextMaskPipeHandler} from '@taiga-ui/core';\n\nconst TUI_EXP_YEAR_MONTH = /^\\d{2}[/|.]\\d{4}$/;\nconst TUI_EXP_SAFARI = /^\\d{1,4}.\\d{1,2}.\\d{1,4}$/;\n\n/**\n * Correct expiration date text allowing only valid months\n * @internal\n *\n * @returns MM/YY\n */\nexport function tuiCreateAutoCorrectedExpirePipe(): TuiTextMaskPipeHandler {\n return (conformedValue, {rawValue}) => {\n // Autofilled with MM/YYYY format\n if (TUI_EXP_YEAR_MONTH.test(rawValue)) {\n conformedValue = rawValue.substr(0, 2) + '/' + rawValue.substr(5);\n }\n\n // Autofilled with Safari crazy format\n if (\n rawValue.length > 7 &&\n rawValue.length < 11 &&\n TUI_EXP_SAFARI.test(rawValue)\n ) {\n const array = rawValue.split(TUI_NON_DIGIT_REGEXP);\n const month = array[1];\n const year = array.find(({length}) => length === 4);\n\n conformedValue = `${'0'.repeat(2 - month.length)}${month}/${\n year ? year.substr(2) : ''\n }`;\n }\n\n const indexesOfPipedChars: number[] = [];\n const conformedValueArr = conformedValue.split('');\n\n if (parseInt(conformedValueArr[0], 10) > 1) {\n conformedValueArr[2] = '/';\n conformedValueArr[1] = conformedValueArr[0];\n conformedValueArr[0] = '0';\n indexesOfPipedChars.push(0);\n }\n\n return {\n value: conformedValueArr.join(''),\n indexesOfPipedChars,\n };\n };\n}\n","import {TuiCurrency, TuiCurrencyCode} from '@taiga-ui/addon-commerce/enums';\nimport {TuiCurrencyVariants} from '@taiga-ui/addon-commerce/types';\n\nexport function getCurrencySymbol(currency: TuiCurrencyVariants): string | null {\n switch (currency) {\n case TuiCurrency.Ruble:\n case TuiCurrencyCode.Ruble:\n return '₽';\n case TuiCurrency.Dollar:\n case TuiCurrencyCode.Dollar:\n return '$';\n case TuiCurrency.SingaporeDollar:\n case TuiCurrencyCode.SingaporeDollar:\n return 'S$';\n case TuiCurrency.AustralianDollar:\n case TuiCurrencyCode.AustralianDollar:\n return 'A$';\n case TuiCurrency.HongKong_dollar:\n case TuiCurrencyCode.HongKong_dollar:\n return 'HK$';\n case TuiCurrency.CanadianDollar:\n case TuiCurrencyCode.CanadianDollar:\n return 'C$';\n case TuiCurrency.Euro:\n case TuiCurrencyCode.Euro:\n return '€';\n case TuiCurrency.Pound:\n case TuiCurrencyCode.Pound:\n return '£';\n case TuiCurrency.Baht:\n case TuiCurrencyCode.Baht:\n return '฿';\n case TuiCurrency.TurkishLira:\n case TuiCurrencyCode.TurkishLira:\n return '₺';\n case TuiCurrency.YuanRenminbi:\n case TuiCurrencyCode.YuanRenminbi:\n return 'CN¥';\n case TuiCurrency.Yen:\n case TuiCurrencyCode.Yen:\n return '¥';\n case TuiCurrency.IsraeliShekel:\n case TuiCurrencyCode.IsraeliShekel:\n return '₪';\n case TuiCurrency.IndianRupee:\n case TuiCurrencyCode.IndianRupee:\n return '₹';\n case TuiCurrency.SwissFranc:\n case TuiCurrencyCode.SwissFranc:\n return '₣';\n case TuiCurrency.ArmenianDram:\n case TuiCurrencyCode.ArmenianDram:\n return '֏';\n case TuiCurrency.Won:\n case TuiCurrencyCode.Won:\n return '₩';\n case TuiCurrency.Tenge:\n case TuiCurrencyCode.Tenge:\n return '₸';\n case TuiCurrency.Hryvnia:\n case TuiCurrencyCode.Hryvnia:\n return '₴';\n default:\n return null;\n }\n}\n","import {TuiCurrencyVariants} from '@taiga-ui/addon-commerce/types';\nimport {padStart} from '@taiga-ui/cdk';\n\nimport {getCurrencySymbol} from './get-currency-symbol';\n\nexport function formatCurrency(currency: TuiCurrencyVariants): string {\n const stringifiedCurrency = stringifyCurrency(currency);\n\n return getCurrencySymbol(stringifiedCurrency) || stringifiedCurrency;\n}\n\nfunction stringifyCurrency(currency: TuiCurrencyVariants): string {\n return currency === null || typeof currency === 'string'\n ? currency || ''\n : padStart(String(currency), 3, '0');\n}\n","import {TuiPaymentSystem} from '@taiga-ui/addon-commerce/enums';\n\nexport function getPaymentSystem(cardNumber: string): TuiPaymentSystem | null {\n if (cardNumber === '') {\n return null;\n }\n\n const one = Number.parseInt(cardNumber[0], 10);\n const two = Number.parseInt(cardNumber.substr(0, 2), 10);\n const three = Number.parseInt(cardNumber.substr(0, 3), 10);\n const four = Number.parseInt(cardNumber.substr(0, 4), 10);\n\n if (isMaestro(three, two, one)) {\n return TuiPaymentSystem.Maestro;\n }\n\n if (isMastercard(four, two, one)) {\n return TuiPaymentSystem.Mastercard;\n }\n\n if (isMir(four)) {\n return TuiPaymentSystem.Mir;\n }\n\n if (isElectron(four)) {\n return TuiPaymentSystem.Electron;\n }\n\n if (isVisa(one)) {\n return TuiPaymentSystem.Visa;\n }\n\n return null;\n}\n\nexport function isMaestro(three: number, two: number, one: number): boolean {\n if (one === 6) {\n return true;\n }\n\n if (two === 50 || (two > 55 && two < 59)) {\n return true;\n }\n\n if (three < 500) {\n return false;\n }\n\n return three < 510;\n}\n\nexport function isMastercard(four: number, two: number, one: number): boolean {\n if (one === 5) {\n return true;\n }\n\n if (two < 10) {\n return false;\n }\n\n if (two > 50 && two < 56) {\n return true;\n }\n\n if (four < 1000) {\n return false;\n }\n\n return four > 2220 && four < 2721;\n}\n\nexport function isMir(four: number): boolean {\n return four > 2199 && four < 2205;\n}\n\nexport function isElectron(four: number): boolean {\n switch (four) {\n case 4026:\n case 4175:\n case 4405:\n case 4508:\n case 4844:\n case 4913:\n case 4917:\n return true;\n default:\n return false;\n }\n}\n\nexport function isVisa(one: number): boolean {\n return one === 4;\n}\n","import {TuiPaymentSystem} from '@taiga-ui/addon-commerce/enums';\n\nimport {getPaymentSystem} from './get-payment-system';\n\n/**\n * Validates card number length using payment system dictionary\n */\nexport function isCardLengthValid(cardNumber: string): boolean {\n const {length} = cardNumber;\n const paymentSystem = getPaymentSystem(cardNumber);\n\n switch (paymentSystem) {\n case TuiPaymentSystem.Electron:\n return length === 16;\n case TuiPaymentSystem.Maestro:\n return length > 11 && length < 20;\n case TuiPaymentSystem.Mastercard:\n case TuiPaymentSystem.Mir:\n return length > 15 && length < 20;\n case TuiPaymentSystem.Visa:\n return length > 12 && length < 20;\n default:\n return length > 8 && length < 20;\n }\n}\n","import {TUI_NON_DIGITS_REGEXP} from '@taiga-ui/core';\n\n/**\n * Validates card number using Luhn algorithm\n */\nexport function isCardNumberValid(value: string | number): boolean {\n const cardNumber = String(value).replace(TUI_NON_DIGITS_REGEXP, '');\n\n const {length} = cardNumber;\n const arr = cardNumber.split('').map((char, index) => {\n const digit = parseInt(char, 10);\n\n if ((index + length) % 2 === 0) {\n const digitX2 = digit * 2;\n\n return digitX2 > 9 ? digitX2 - 9 : digitX2;\n }\n\n return digit;\n });\n\n return !(arr.reduce((a, b) => a + b, 0) % 10);\n}\n","export function isExpireValid(expire: string): boolean {\n const today = new Date();\n const currentMonth = today.getMonth();\n const currentYear = today.getFullYear() - 2000;\n const month = parseInt(expire.slice(0, 2), 0);\n const year = parseInt(expire.slice(-2), 0);\n\n return year > currentYear || (year === currentYear && month >= currentMonth);\n}\n"],"names":["TUI_NON_DIGIT_REGEXP","padStart","TUI_NON_DIGITS_REGEXP"],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-addon-commerce-utils.umd.js","sources":["ng://@taiga-ui/addon-commerce/utils/create-auto-corrected-expire-pipe.ts","ng://@taiga-ui/addon-commerce/utils/get-currency-symbol.ts","ng://@taiga-ui/addon-commerce/utils/format-currency.ts","ng://@taiga-ui/addon-commerce/utils/get-payment-system.ts","ng://@taiga-ui/addon-commerce/utils/is-card-length-valid.ts","ng://@taiga-ui/addon-commerce/utils/is-card-number-valid.ts","ng://@taiga-ui/addon-commerce/utils/is-expire-valid.ts"],"sourcesContent":["import {TUI_NON_DIGIT_REGEXP, TuiTextMaskPipeHandler} from '@taiga-ui/core';\n\nconst TUI_EXP_YEAR_MONTH = /^\\d{2}[/|.]\\d{4}$/;\nconst TUI_EXP_SAFARI = /^\\d{1,4}.\\d{1,2}.\\d{1,4}$/;\n\n/**\n * Correct expiration date text allowing only valid months\n * @internal\n *\n * @returns MM/YY\n */\nexport function tuiCreateAutoCorrectedExpirePipe(): TuiTextMaskPipeHandler {\n return (conformedValue, {rawValue}) => {\n // Autofilled with MM/YYYY format\n if (TUI_EXP_YEAR_MONTH.test(rawValue)) {\n conformedValue = rawValue.substr(0, 2) + '/' + rawValue.substr(5);\n }\n\n // Autofilled with Safari crazy format\n if (\n rawValue.length > 7 &&\n rawValue.length < 11 &&\n TUI_EXP_SAFARI.test(rawValue)\n ) {\n const array = rawValue.split(TUI_NON_DIGIT_REGEXP);\n const month = array[1];\n const year = array.find(({length}) => length === 4);\n\n conformedValue = `${'0'.repeat(2 - month.length)}${month}/${\n year ? year.substr(2) : ''\n }`;\n }\n\n const indexesOfPipedChars: number[] = [];\n const conformedValueArr = conformedValue.split('');\n\n if (parseInt(conformedValueArr[0], 10) > 1) {\n conformedValueArr[2] = '/';\n conformedValueArr[1] = conformedValueArr[0];\n conformedValueArr[0] = '0';\n indexesOfPipedChars.push(0);\n }\n\n return {\n value: conformedValueArr.join(''),\n indexesOfPipedChars,\n };\n };\n}\n","import {TuiCurrency, TuiCurrencyCode} from '@taiga-ui/addon-commerce/enums';\nimport {TuiCurrencyVariants} from '@taiga-ui/addon-commerce/types';\n\nexport function getCurrencySymbol(currency: TuiCurrencyVariants): string | null {\n switch (currency) {\n case TuiCurrency.Ruble:\n case TuiCurrencyCode.Ruble:\n return '₽';\n case TuiCurrency.Dollar:\n case TuiCurrencyCode.Dollar:\n case TuiCurrency.MexicanPeso:\n case TuiCurrencyCode.MexicanPeso:\n return '$';\n case TuiCurrency.SingaporeDollar:\n case TuiCurrencyCode.SingaporeDollar:\n return 'S$';\n case TuiCurrency.AustralianDollar:\n case TuiCurrencyCode.AustralianDollar:\n return 'A$';\n case TuiCurrency.HongKong_dollar:\n case TuiCurrencyCode.HongKong_dollar:\n return 'HK$';\n case TuiCurrency.CanadianDollar:\n case TuiCurrencyCode.CanadianDollar:\n return 'C$';\n case TuiCurrency.Euro:\n case TuiCurrencyCode.Euro:\n return '€';\n case TuiCurrency.Pound:\n case TuiCurrencyCode.Pound:\n return '£';\n case TuiCurrency.Baht:\n case TuiCurrencyCode.Baht:\n return '฿';\n case TuiCurrency.TurkishLira:\n case TuiCurrencyCode.TurkishLira:\n return '₺';\n case TuiCurrency.YuanRenminbi:\n case TuiCurrencyCode.YuanRenminbi:\n return 'CN¥';\n case TuiCurrency.Yen:\n case TuiCurrencyCode.Yen:\n return '¥';\n case TuiCurrency.IsraeliShekel:\n case TuiCurrencyCode.IsraeliShekel:\n return '₪';\n case TuiCurrency.IndianRupee:\n case TuiCurrencyCode.IndianRupee:\n return '₹';\n case TuiCurrency.SwissFranc:\n case TuiCurrencyCode.SwissFranc:\n return '₣';\n case TuiCurrency.ArmenianDram:\n case TuiCurrencyCode.ArmenianDram:\n return '֏';\n case TuiCurrency.Won:\n case TuiCurrencyCode.Won:\n return '₩';\n case TuiCurrency.Tenge:\n case TuiCurrencyCode.Tenge:\n return '₸';\n case TuiCurrency.Hryvnia:\n case TuiCurrencyCode.Hryvnia:\n return '₴';\n default:\n return null;\n }\n}\n","import {TuiCurrencyVariants} from '@taiga-ui/addon-commerce/types';\nimport {padStart} from '@taiga-ui/cdk';\n\nimport {getCurrencySymbol} from './get-currency-symbol';\n\nexport function formatCurrency(currency: TuiCurrencyVariants): string {\n const stringifiedCurrency = stringifyCurrency(currency);\n\n return getCurrencySymbol(stringifiedCurrency) || stringifiedCurrency;\n}\n\nfunction stringifyCurrency(currency: TuiCurrencyVariants): string {\n return currency === null || typeof currency === 'string'\n ? currency || ''\n : padStart(String(currency), 3, '0');\n}\n","import {TuiPaymentSystem} from '@taiga-ui/addon-commerce/enums';\n\nexport function getPaymentSystem(cardNumber: string): TuiPaymentSystem | null {\n if (cardNumber === '') {\n return null;\n }\n\n const one = Number.parseInt(cardNumber[0], 10);\n const two = Number.parseInt(cardNumber.substr(0, 2), 10);\n const three = Number.parseInt(cardNumber.substr(0, 3), 10);\n const four = Number.parseInt(cardNumber.substr(0, 4), 10);\n\n if (isMaestro(three, two, one)) {\n return TuiPaymentSystem.Maestro;\n }\n\n if (isMastercard(four, two, one)) {\n return TuiPaymentSystem.Mastercard;\n }\n\n if (isMir(four)) {\n return TuiPaymentSystem.Mir;\n }\n\n if (isElectron(four)) {\n return TuiPaymentSystem.Electron;\n }\n\n if (isVisa(one)) {\n return TuiPaymentSystem.Visa;\n }\n\n return null;\n}\n\nexport function isMaestro(three: number, two: number, one: number): boolean {\n if (one === 6) {\n return true;\n }\n\n if (two === 50 || (two > 55 && two < 59)) {\n return true;\n }\n\n if (three < 500) {\n return false;\n }\n\n return three < 510;\n}\n\nexport function isMastercard(four: number, two: number, one: number): boolean {\n if (one === 5) {\n return true;\n }\n\n if (two < 10) {\n return false;\n }\n\n if (two > 50 && two < 56) {\n return true;\n }\n\n if (four < 1000) {\n return false;\n }\n\n return four > 2220 && four < 2721;\n}\n\nexport function isMir(four: number): boolean {\n return four > 2199 && four < 2205;\n}\n\nexport function isElectron(four: number): boolean {\n switch (four) {\n case 4026:\n case 4175:\n case 4405:\n case 4508:\n case 4844:\n case 4913:\n case 4917:\n return true;\n default:\n return false;\n }\n}\n\nexport function isVisa(one: number): boolean {\n return one === 4;\n}\n","import {TuiPaymentSystem} from '@taiga-ui/addon-commerce/enums';\n\nimport {getPaymentSystem} from './get-payment-system';\n\n/**\n * Validates card number length using payment system dictionary\n */\nexport function isCardLengthValid(cardNumber: string): boolean {\n const {length} = cardNumber;\n const paymentSystem = getPaymentSystem(cardNumber);\n\n switch (paymentSystem) {\n case TuiPaymentSystem.Electron:\n return length === 16;\n case TuiPaymentSystem.Maestro:\n return length > 11 && length < 20;\n case TuiPaymentSystem.Mastercard:\n case TuiPaymentSystem.Mir:\n return length > 15 && length < 20;\n case TuiPaymentSystem.Visa:\n return length > 12 && length < 20;\n default:\n return length > 8 && length < 20;\n }\n}\n","import {TUI_NON_DIGITS_REGEXP} from '@taiga-ui/core';\n\n/**\n * Validates card number using Luhn algorithm\n */\nexport function isCardNumberValid(value: string | number): boolean {\n const cardNumber = String(value).replace(TUI_NON_DIGITS_REGEXP, '');\n\n const {length} = cardNumber;\n const arr = cardNumber.split('').map((char, index) => {\n const digit = parseInt(char, 10);\n\n if ((index + length) % 2 === 0) {\n const digitX2 = digit * 2;\n\n return digitX2 > 9 ? digitX2 - 9 : digitX2;\n }\n\n return digit;\n });\n\n return !(arr.reduce((a, b) => a + b, 0) % 10);\n}\n","export function isExpireValid(expire: string): boolean {\n const today = new Date();\n const currentMonth = today.getMonth();\n const currentYear = today.getFullYear() - 2000;\n const month = parseInt(expire.slice(0, 2), 0);\n const year = parseInt(expire.slice(-2), 0);\n\n return year > currentYear || (year === currentYear && month >= currentMonth);\n}\n"],"names":["TUI_NON_DIGIT_REGEXP","padStart","TUI_NON_DIGITS_REGEXP"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- !function(e,r){"object"==typeof exports&&"undefined"!=typeof module?r(exports,require("@taiga-ui/core"),require("@taiga-ui/cdk")):"function"==typeof define&&define.amd?define("@taiga-ui/addon-commerce/utils",["exports","@taiga-ui/core","@taiga-ui/cdk"],r):r(((e=e||self)["taiga-ui"]=e["taiga-ui"]||{},e["taiga-ui"]["addon-commerce"]=e["taiga-ui"]["addon-commerce"]||{},e["taiga-ui"]["addon-commerce"].utils={}),e.core,e.cdk)}(this,(function(e,r,t){"use strict";var a=/^\d{2}[/|.]\d{4}$/,n=/^\d{1,4}.\d{1,2}.\d{1,4}$/;function s(e){switch(e){case"RUB":case"643":return"₽";case"USD":case"840":return"$";case"SGD":case"702":return"S$";case"AUD":case"036":return"A$";case"HKD":case"344":return"HK$";case"CAD":case"124":return"C$";case"EUR":case"978":return"€";case"GBP":case"826":return"£";case"THB":case"764":return"฿";case"TRY":case"949":return"₺";case"CNY":case"156":return"CN¥";case"JPY":case"392":return"¥";case"ILS":case"376":return"₪";case"INR":case"356":return"₹";case"CHF":case"756":return"₣";case"AMD":case"051":return"֏";case"KRW":case"410":return"₩";case"KZT":case"398":return"₸";case"UAH":case"980":return"₴";default:return null}}function u(e){if(""===e)return null;var r=Number.parseInt(e[0],10),t=Number.parseInt(e.substr(0,2),10),a=Number.parseInt(e.substr(0,3),10),n=Number.parseInt(e.substr(0,4),10);return c(a,t,r)?"maestro":i(n,t,r)?"mastercard":o(n)?"mir":d(n)?"electron":l(r)?"visa":null}function c(e,r,t){return 6===t||(50===r||r>55&&r<59||!(e<500)&&e<510)}function i(e,r,t){return 5===t||!(r<10)&&(r>50&&r<56||!(e<1e3)&&(e>2220&&e<2721))}function o(e){return e>2199&&e<2205}function d(e){switch(e){case 4026:case 4175:case 4405:case 4508:case 4844:case 4913:case 4917:return!0;default:return!1}}function l(e){return 4===e}e.formatCurrency=function(e){var r=function(e){return null===e||"string"==typeof e?e||"":t.padStart(String(e),3,"0")}(e);return s(r)||r},e.getCurrencySymbol=s,e.getPaymentSystem=u,e.isCardLengthValid=function(e){var r=e.length;switch(u(e)){case"electron":return 16===r;case"maestro":return r>11&&r<20;case"mastercard":case"mir":return r>15&&r<20;case"visa":return r>12&&r<20;default:return r>8&&r<20}},e.isCardNumberValid=function(e){var t=String(e).replace(r.TUI_NON_DIGITS_REGEXP,""),a=t.length;return!(t.split("").map((function(e,r){var t=parseInt(e,10);if((r+a)%2==0){var n=2*t;return n>9?n-9:n}return t})).reduce((function(e,r){return e+r}),0)%10)},e.isElectron=d,e.isExpireValid=function(e){var r=new Date,t=r.getMonth(),a=r.getFullYear()-2e3,n=parseInt(e.slice(0,2),0),s=parseInt(e.slice(-2),0);return s>a||s===a&&n>=t},e.isMaestro=c,e.isMastercard=i,e.isMir=o,e.isVisa=l,e.tuiCreateAutoCorrectedExpirePipe=function(){return function(e,t){var s=t.rawValue;if(a.test(s)&&(e=s.substr(0,2)+"/"+s.substr(5)),s.length>7&&s.length<11&&n.test(s)){var u=s.split(r.TUI_NON_DIGIT_REGEXP),c=u[1],i=u.find((function(e){return 4===e.length}));e=""+"0".repeat(2-c.length)+c+"/"+(i?i.substr(2):"")}var o=[],d=e.split("");return parseInt(d[0],10)>1&&(d[2]="/",d[1]=d[0],d[0]="0",o.push(0)),{value:d.join(""),indexesOfPipedChars:o}}},Object.defineProperty(e,"__esModule",{value:!0})}));
1
+ !function(e,r){"object"==typeof exports&&"undefined"!=typeof module?r(exports,require("@taiga-ui/core"),require("@taiga-ui/cdk")):"function"==typeof define&&define.amd?define("@taiga-ui/addon-commerce/utils",["exports","@taiga-ui/core","@taiga-ui/cdk"],r):r(((e=e||self)["taiga-ui"]=e["taiga-ui"]||{},e["taiga-ui"]["addon-commerce"]=e["taiga-ui"]["addon-commerce"]||{},e["taiga-ui"]["addon-commerce"].utils={}),e.core,e.cdk)}(this,(function(e,r,t){"use strict";var a=/^\d{2}[/|.]\d{4}$/,n=/^\d{1,4}.\d{1,2}.\d{1,4}$/;function s(e){switch(e){case"RUB":case"643":return"₽";case"USD":case"840":case"MXN":case"484":return"$";case"SGD":case"702":return"S$";case"AUD":case"036":return"A$";case"HKD":case"344":return"HK$";case"CAD":case"124":return"C$";case"EUR":case"978":return"€";case"GBP":case"826":return"£";case"THB":case"764":return"฿";case"TRY":case"949":return"₺";case"CNY":case"156":return"CN¥";case"JPY":case"392":return"¥";case"ILS":case"376":return"₪";case"INR":case"356":return"₹";case"CHF":case"756":return"₣";case"AMD":case"051":return"֏";case"KRW":case"410":return"₩";case"KZT":case"398":return"₸";case"UAH":case"980":return"₴";default:return null}}function u(e){if(""===e)return null;var r=Number.parseInt(e[0],10),t=Number.parseInt(e.substr(0,2),10),a=Number.parseInt(e.substr(0,3),10),n=Number.parseInt(e.substr(0,4),10);return c(a,t,r)?"maestro":i(n,t,r)?"mastercard":o(n)?"mir":d(n)?"electron":l(r)?"visa":null}function c(e,r,t){return 6===t||(50===r||r>55&&r<59||!(e<500)&&e<510)}function i(e,r,t){return 5===t||!(r<10)&&(r>50&&r<56||!(e<1e3)&&(e>2220&&e<2721))}function o(e){return e>2199&&e<2205}function d(e){switch(e){case 4026:case 4175:case 4405:case 4508:case 4844:case 4913:case 4917:return!0;default:return!1}}function l(e){return 4===e}e.formatCurrency=function(e){var r=function(e){return null===e||"string"==typeof e?e||"":t.padStart(String(e),3,"0")}(e);return s(r)||r},e.getCurrencySymbol=s,e.getPaymentSystem=u,e.isCardLengthValid=function(e){var r=e.length;switch(u(e)){case"electron":return 16===r;case"maestro":return r>11&&r<20;case"mastercard":case"mir":return r>15&&r<20;case"visa":return r>12&&r<20;default:return r>8&&r<20}},e.isCardNumberValid=function(e){var t=String(e).replace(r.TUI_NON_DIGITS_REGEXP,""),a=t.length;return!(t.split("").map((function(e,r){var t=parseInt(e,10);if((r+a)%2==0){var n=2*t;return n>9?n-9:n}return t})).reduce((function(e,r){return e+r}),0)%10)},e.isElectron=d,e.isExpireValid=function(e){var r=new Date,t=r.getMonth(),a=r.getFullYear()-2e3,n=parseInt(e.slice(0,2),0),s=parseInt(e.slice(-2),0);return s>a||s===a&&n>=t},e.isMaestro=c,e.isMastercard=i,e.isMir=o,e.isVisa=l,e.tuiCreateAutoCorrectedExpirePipe=function(){return function(e,t){var s=t.rawValue;if(a.test(s)&&(e=s.substr(0,2)+"/"+s.substr(5)),s.length>7&&s.length<11&&n.test(s)){var u=s.split(r.TUI_NON_DIGIT_REGEXP),c=u[1],i=u.find((function(e){return 4===e.length}));e=""+"0".repeat(2-c.length)+c+"/"+(i?i.substr(2):"")}var o=[],d=e.split("");return parseInt(d[0],10)>1&&(d[2]="/",d[1]=d[0],d[0]="0",o.push(0)),{value:d.join(""),indexesOfPipedChars:o}}},Object.defineProperty(e,"__esModule",{value:!0})}));
2
2
  //# sourceMappingURL=taiga-ui-addon-commerce-utils.umd.min.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["ng://@taiga-ui/addon-commerce/utils/create-auto-corrected-expire-pipe.ts","ng://@taiga-ui/addon-commerce/utils/get-currency-symbol.ts","ng://@taiga-ui/addon-commerce/utils/get-payment-system.ts","ng://@taiga-ui/addon-commerce/utils/format-currency.ts","ng://@taiga-ui/addon-commerce/utils/is-card-length-valid.ts","ng://@taiga-ui/addon-commerce/utils/is-card-number-valid.ts","ng://@taiga-ui/addon-commerce/utils/is-expire-valid.ts"],"names":["TUI_EXP_YEAR_MONTH","TUI_EXP_SAFARI","getCurrencySymbol","currency","getPaymentSystem","cardNumber","one","Number","parseInt","two","substr","three","four","isMaestro","isMastercard","isMir","isElectron","isVisa","stringifiedCurrency","padStart","String","stringifyCurrency","length","value","replace","TUI_NON_DIGITS_REGEXP","split","map","char","index","digit","digitX2","reduce","a","b","expire","today","Date","currentMonth","getMonth","currentYear","getFullYear","month","slice","year","conformedValue","_a","rawValue","test","array","TUI_NON_DIGIT_REGEXP","find","repeat","indexesOfPipedChars","conformedValueArr","push","join"],"mappings":"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","sourcesContent":["import {TUI_NON_DIGIT_REGEXP, TuiTextMaskPipeHandler} from '@taiga-ui/core';\n\nconst TUI_EXP_YEAR_MONTH = /^\\d{2}[/|.]\\d{4}$/;\nconst TUI_EXP_SAFARI = /^\\d{1,4}.\\d{1,2}.\\d{1,4}$/;\n\n/**\n * Correct expiration date text allowing only valid months\n * @internal\n *\n * @returns MM/YY\n */\nexport function tuiCreateAutoCorrectedExpirePipe(): TuiTextMaskPipeHandler {\n return (conformedValue, {rawValue}) => {\n // Autofilled with MM/YYYY format\n if (TUI_EXP_YEAR_MONTH.test(rawValue)) {\n conformedValue = rawValue.substr(0, 2) + '/' + rawValue.substr(5);\n }\n\n // Autofilled with Safari crazy format\n if (\n rawValue.length > 7 &&\n rawValue.length < 11 &&\n TUI_EXP_SAFARI.test(rawValue)\n ) {\n const array = rawValue.split(TUI_NON_DIGIT_REGEXP);\n const month = array[1];\n const year = array.find(({length}) => length === 4);\n\n conformedValue = `${'0'.repeat(2 - month.length)}${month}/${\n year ? year.substr(2) : ''\n }`;\n }\n\n const indexesOfPipedChars: number[] = [];\n const conformedValueArr = conformedValue.split('');\n\n if (parseInt(conformedValueArr[0], 10) > 1) {\n conformedValueArr[2] = '/';\n conformedValueArr[1] = conformedValueArr[0];\n conformedValueArr[0] = '0';\n indexesOfPipedChars.push(0);\n }\n\n return {\n value: conformedValueArr.join(''),\n indexesOfPipedChars,\n };\n };\n}\n","import {TuiCurrency, TuiCurrencyCode} from '@taiga-ui/addon-commerce/enums';\nimport {TuiCurrencyVariants} from '@taiga-ui/addon-commerce/types';\n\nexport function getCurrencySymbol(currency: TuiCurrencyVariants): string | null {\n switch (currency) {\n case TuiCurrency.Ruble:\n case TuiCurrencyCode.Ruble:\n return '₽';\n case TuiCurrency.Dollar:\n case TuiCurrencyCode.Dollar:\n return '$';\n case TuiCurrency.SingaporeDollar:\n case TuiCurrencyCode.SingaporeDollar:\n return 'S$';\n case TuiCurrency.AustralianDollar:\n case TuiCurrencyCode.AustralianDollar:\n return 'A$';\n case TuiCurrency.HongKong_dollar:\n case TuiCurrencyCode.HongKong_dollar:\n return 'HK$';\n case TuiCurrency.CanadianDollar:\n case TuiCurrencyCode.CanadianDollar:\n return 'C$';\n case TuiCurrency.Euro:\n case TuiCurrencyCode.Euro:\n return '€';\n case TuiCurrency.Pound:\n case TuiCurrencyCode.Pound:\n return '£';\n case TuiCurrency.Baht:\n case TuiCurrencyCode.Baht:\n return '฿';\n case TuiCurrency.TurkishLira:\n case TuiCurrencyCode.TurkishLira:\n return '₺';\n case TuiCurrency.YuanRenminbi:\n case TuiCurrencyCode.YuanRenminbi:\n return 'CN¥';\n case TuiCurrency.Yen:\n case TuiCurrencyCode.Yen:\n return '¥';\n case TuiCurrency.IsraeliShekel:\n case TuiCurrencyCode.IsraeliShekel:\n return '₪';\n case TuiCurrency.IndianRupee:\n case TuiCurrencyCode.IndianRupee:\n return '₹';\n case TuiCurrency.SwissFranc:\n case TuiCurrencyCode.SwissFranc:\n return '₣';\n case TuiCurrency.ArmenianDram:\n case TuiCurrencyCode.ArmenianDram:\n return '֏';\n case TuiCurrency.Won:\n case TuiCurrencyCode.Won:\n return '₩';\n case TuiCurrency.Tenge:\n case TuiCurrencyCode.Tenge:\n return '₸';\n case TuiCurrency.Hryvnia:\n case TuiCurrencyCode.Hryvnia:\n return '₴';\n default:\n return null;\n }\n}\n","import {TuiPaymentSystem} from '@taiga-ui/addon-commerce/enums';\n\nexport function getPaymentSystem(cardNumber: string): TuiPaymentSystem | null {\n if (cardNumber === '') {\n return null;\n }\n\n const one = Number.parseInt(cardNumber[0], 10);\n const two = Number.parseInt(cardNumber.substr(0, 2), 10);\n const three = Number.parseInt(cardNumber.substr(0, 3), 10);\n const four = Number.parseInt(cardNumber.substr(0, 4), 10);\n\n if (isMaestro(three, two, one)) {\n return TuiPaymentSystem.Maestro;\n }\n\n if (isMastercard(four, two, one)) {\n return TuiPaymentSystem.Mastercard;\n }\n\n if (isMir(four)) {\n return TuiPaymentSystem.Mir;\n }\n\n if (isElectron(four)) {\n return TuiPaymentSystem.Electron;\n }\n\n if (isVisa(one)) {\n return TuiPaymentSystem.Visa;\n }\n\n return null;\n}\n\nexport function isMaestro(three: number, two: number, one: number): boolean {\n if (one === 6) {\n return true;\n }\n\n if (two === 50 || (two > 55 && two < 59)) {\n return true;\n }\n\n if (three < 500) {\n return false;\n }\n\n return three < 510;\n}\n\nexport function isMastercard(four: number, two: number, one: number): boolean {\n if (one === 5) {\n return true;\n }\n\n if (two < 10) {\n return false;\n }\n\n if (two > 50 && two < 56) {\n return true;\n }\n\n if (four < 1000) {\n return false;\n }\n\n return four > 2220 && four < 2721;\n}\n\nexport function isMir(four: number): boolean {\n return four > 2199 && four < 2205;\n}\n\nexport function isElectron(four: number): boolean {\n switch (four) {\n case 4026:\n case 4175:\n case 4405:\n case 4508:\n case 4844:\n case 4913:\n case 4917:\n return true;\n default:\n return false;\n }\n}\n\nexport function isVisa(one: number): boolean {\n return one === 4;\n}\n","import {TuiCurrencyVariants} from '@taiga-ui/addon-commerce/types';\nimport {padStart} from '@taiga-ui/cdk';\n\nimport {getCurrencySymbol} from './get-currency-symbol';\n\nexport function formatCurrency(currency: TuiCurrencyVariants): string {\n const stringifiedCurrency = stringifyCurrency(currency);\n\n return getCurrencySymbol(stringifiedCurrency) || stringifiedCurrency;\n}\n\nfunction stringifyCurrency(currency: TuiCurrencyVariants): string {\n return currency === null || typeof currency === 'string'\n ? currency || ''\n : padStart(String(currency), 3, '0');\n}\n","import {TuiPaymentSystem} from '@taiga-ui/addon-commerce/enums';\n\nimport {getPaymentSystem} from './get-payment-system';\n\n/**\n * Validates card number length using payment system dictionary\n */\nexport function isCardLengthValid(cardNumber: string): boolean {\n const {length} = cardNumber;\n const paymentSystem = getPaymentSystem(cardNumber);\n\n switch (paymentSystem) {\n case TuiPaymentSystem.Electron:\n return length === 16;\n case TuiPaymentSystem.Maestro:\n return length > 11 && length < 20;\n case TuiPaymentSystem.Mastercard:\n case TuiPaymentSystem.Mir:\n return length > 15 && length < 20;\n case TuiPaymentSystem.Visa:\n return length > 12 && length < 20;\n default:\n return length > 8 && length < 20;\n }\n}\n","import {TUI_NON_DIGITS_REGEXP} from '@taiga-ui/core';\n\n/**\n * Validates card number using Luhn algorithm\n */\nexport function isCardNumberValid(value: string | number): boolean {\n const cardNumber = String(value).replace(TUI_NON_DIGITS_REGEXP, '');\n\n const {length} = cardNumber;\n const arr = cardNumber.split('').map((char, index) => {\n const digit = parseInt(char, 10);\n\n if ((index + length) % 2 === 0) {\n const digitX2 = digit * 2;\n\n return digitX2 > 9 ? digitX2 - 9 : digitX2;\n }\n\n return digit;\n });\n\n return !(arr.reduce((a, b) => a + b, 0) % 10);\n}\n","export function isExpireValid(expire: string): boolean {\n const today = new Date();\n const currentMonth = today.getMonth();\n const currentYear = today.getFullYear() - 2000;\n const month = parseInt(expire.slice(0, 2), 0);\n const year = parseInt(expire.slice(-2), 0);\n\n return year > currentYear || (year === currentYear && month >= currentMonth);\n}\n"]}
1
+ {"version":3,"sources":["ng://@taiga-ui/addon-commerce/utils/create-auto-corrected-expire-pipe.ts","ng://@taiga-ui/addon-commerce/utils/get-currency-symbol.ts","ng://@taiga-ui/addon-commerce/utils/get-payment-system.ts","ng://@taiga-ui/addon-commerce/utils/format-currency.ts","ng://@taiga-ui/addon-commerce/utils/is-card-length-valid.ts","ng://@taiga-ui/addon-commerce/utils/is-card-number-valid.ts","ng://@taiga-ui/addon-commerce/utils/is-expire-valid.ts"],"names":["TUI_EXP_YEAR_MONTH","TUI_EXP_SAFARI","getCurrencySymbol","currency","getPaymentSystem","cardNumber","one","Number","parseInt","two","substr","three","four","isMaestro","isMastercard","isMir","isElectron","isVisa","stringifiedCurrency","padStart","String","stringifyCurrency","length","value","replace","TUI_NON_DIGITS_REGEXP","split","map","char","index","digit","digitX2","reduce","a","b","expire","today","Date","currentMonth","getMonth","currentYear","getFullYear","month","slice","year","conformedValue","_a","rawValue","test","array","TUI_NON_DIGIT_REGEXP","find","repeat","indexesOfPipedChars","conformedValueArr","push","join"],"mappings":"6cAEA,IAAMA,EAAqB,oBACrBC,EAAiB,qCCAPC,EAAkBC,GAC9B,OAAQA,GACJ,IAAA,MACA,IAAA,MACI,MAAO,IACX,IAAA,MACA,IAAA,MACA,IAAA,MACA,IAAA,MACI,MAAO,IACX,IAAA,MACA,IAAA,MACI,MAAO,KACX,IAAA,MACA,IAAA,MACI,MAAO,KACX,IAAA,MACA,IAAA,MACI,MAAO,MACX,IAAA,MACA,IAAA,MACI,MAAO,KACX,IAAA,MACA,IAAA,MACI,MAAO,IACX,IAAA,MACA,IAAA,MACI,MAAO,IACX,IAAA,MACA,IAAA,MACI,MAAO,IACX,IAAA,MACA,IAAA,MACI,MAAO,IACX,IAAA,MACA,IAAA,MACI,MAAO,MACX,IAAA,MACA,IAAA,MACI,MAAO,IACX,IAAA,MACA,IAAA,MACI,MAAO,IACX,IAAA,MACA,IAAA,MACI,MAAO,IACX,IAAA,MACA,IAAA,MACI,MAAO,IACX,IAAA,MACA,IAAA,MACI,MAAO,IACX,IAAA,MACA,IAAA,MACI,MAAO,IACX,IAAA,MACA,IAAA,MACI,MAAO,IACX,IAAA,MACA,IAAA,MACI,MAAO,IACX,QACI,OAAO,eC/DHC,EAAiBC,GAC7B,GAAmB,KAAfA,EACA,OAAO,KAGX,IAAMC,EAAMC,OAAOC,SAASH,EAAW,GAAI,IACrCI,EAAMF,OAAOC,SAASH,EAAWK,OAAO,EAAG,GAAI,IAC/CC,EAAQJ,OAAOC,SAASH,EAAWK,OAAO,EAAG,GAAI,IACjDE,EAAOL,OAAOC,SAASH,EAAWK,OAAO,EAAG,GAAI,IAEtD,OAAIG,EAAUF,EAAOF,EAAKH,GACtB,UAGAQ,EAAaF,EAAMH,EAAKH,GACxB,aAGAS,EAAMH,GACN,MAGAI,EAAWJ,GACX,WAGAK,EAAOX,GACP,OAGG,cAGKO,EAAUF,EAAeF,EAAaH,GAClD,OAAY,IAARA,IAIQ,KAARG,GAAeA,EAAM,IAAMA,EAAM,MAIjCE,EAAQ,MAILA,EAAQ,cAGHG,EAAaF,EAAcH,EAAaH,GACpD,OAAY,IAARA,KAIAG,EAAM,MAINA,EAAM,IAAMA,EAAM,MAIlBG,EAAO,OAIJA,EAAO,MAAQA,EAAO,gBAGjBG,EAAMH,GAClB,OAAOA,EAAO,MAAQA,EAAO,cAGjBI,EAAWJ,GACvB,OAAQA,GACJ,KAAK,KACL,KAAK,KACL,KAAK,KACL,KAAK,KACL,KAAK,KACL,KAAK,KACL,KAAK,KACD,OAAO,EACX,QACI,OAAO,YAIHK,EAAOX,GACnB,OAAe,IAARA,4BCtFoBH,GAC3B,IAAMe,EAKV,SAA2Bf,GACvB,OAAoB,OAAbA,GAAyC,iBAAbA,EAC7BA,GAAY,GACZgB,EAAAA,SAASC,OAAOjB,GAAW,EAAG,KARRkB,CAAkBlB,GAE9C,OAAOD,EAAkBgB,IAAwBA,2ECDnBb,GACvB,IAAAiB,EAAAjB,EAAAiB,OAGP,OAFsBlB,EAAiBC,IAGnC,IAAA,WACI,OAAkB,KAAXiB,EACX,IAAA,UACI,OAAOA,EAAS,IAAMA,EAAS,GACnC,IAAA,aACA,IAAA,MACI,OAAOA,EAAS,IAAMA,EAAS,GACnC,IAAA,OACI,OAAOA,EAAS,IAAMA,EAAS,GACnC,QACI,OAAOA,EAAS,GAAKA,EAAS,kCCjBRC,GAC9B,IAAMlB,EAAae,OAAOG,GAAOC,QAAQC,EAAAA,sBAAuB,IAEzDH,EAAAjB,EAAAiB,OAaP,QAZYjB,EAAWqB,MAAM,IAAIC,KAAI,SAACC,EAAMC,GACxC,IAAMC,EAAQtB,SAASoB,EAAM,IAE7B,IAAKC,EAAQP,GAAU,GAAM,EAAG,CAC5B,IAAMS,EAAkB,EAARD,EAEhB,OAAOC,EAAU,EAAIA,EAAU,EAAIA,EAGvC,OAAOD,KAGEE,QAAO,SAACC,EAAGC,GAAM,OAAAD,EAAIC,IAAG,GAAK,6CCrBhBC,GAC1B,IAAMC,EAAQ,IAAIC,KACZC,EAAeF,EAAMG,WACrBC,EAAcJ,EAAMK,cAAgB,IACpCC,EAAQlC,SAAS2B,EAAOQ,MAAM,EAAG,GAAI,GACrCC,EAAOpC,SAAS2B,EAAOQ,OAAO,GAAI,GAExC,OAAOC,EAAOJ,GAAgBI,IAASJ,GAAeE,GAASJ,qGNK/D,OAAO,SAACO,EAAgBC,OAACC,EAAAD,EAAAC,SAOrB,GALI/C,EAAmBgD,KAAKD,KACxBF,EAAiBE,EAASrC,OAAO,EAAG,GAAK,IAAMqC,EAASrC,OAAO,IAK/DqC,EAASzB,OAAS,GAClByB,EAASzB,OAAS,IAClBrB,EAAe+C,KAAKD,GACtB,CACE,IAAME,EAAQF,EAASrB,MAAMwB,EAAAA,sBACvBR,EAAQO,EAAM,GACdL,EAAOK,EAAME,MAAK,SAACL,GAAa,OAAW,IAAvBA,EAAAxB,UAE1BuB,EAAiB,GAAG,IAAIO,OAAO,EAAIV,EAAMpB,QAAUoB,EAAK,KACpDE,EAAOA,EAAKlC,OAAO,GAAK,IAIhC,IAAM2C,EAAgC,GAChCC,EAAoBT,EAAenB,MAAM,IAS/C,OAPIlB,SAAS8C,EAAkB,GAAI,IAAM,IACrCA,EAAkB,GAAK,IACvBA,EAAkB,GAAKA,EAAkB,GACzCA,EAAkB,GAAK,IACvBD,EAAoBE,KAAK,IAGtB,CACHhC,MAAO+B,EAAkBE,KAAK,IAC9BH,oBAAmBA","sourcesContent":["import {TUI_NON_DIGIT_REGEXP, TuiTextMaskPipeHandler} from '@taiga-ui/core';\n\nconst TUI_EXP_YEAR_MONTH = /^\\d{2}[/|.]\\d{4}$/;\nconst TUI_EXP_SAFARI = /^\\d{1,4}.\\d{1,2}.\\d{1,4}$/;\n\n/**\n * Correct expiration date text allowing only valid months\n * @internal\n *\n * @returns MM/YY\n */\nexport function tuiCreateAutoCorrectedExpirePipe(): TuiTextMaskPipeHandler {\n return (conformedValue, {rawValue}) => {\n // Autofilled with MM/YYYY format\n if (TUI_EXP_YEAR_MONTH.test(rawValue)) {\n conformedValue = rawValue.substr(0, 2) + '/' + rawValue.substr(5);\n }\n\n // Autofilled with Safari crazy format\n if (\n rawValue.length > 7 &&\n rawValue.length < 11 &&\n TUI_EXP_SAFARI.test(rawValue)\n ) {\n const array = rawValue.split(TUI_NON_DIGIT_REGEXP);\n const month = array[1];\n const year = array.find(({length}) => length === 4);\n\n conformedValue = `${'0'.repeat(2 - month.length)}${month}/${\n year ? year.substr(2) : ''\n }`;\n }\n\n const indexesOfPipedChars: number[] = [];\n const conformedValueArr = conformedValue.split('');\n\n if (parseInt(conformedValueArr[0], 10) > 1) {\n conformedValueArr[2] = '/';\n conformedValueArr[1] = conformedValueArr[0];\n conformedValueArr[0] = '0';\n indexesOfPipedChars.push(0);\n }\n\n return {\n value: conformedValueArr.join(''),\n indexesOfPipedChars,\n };\n };\n}\n","import {TuiCurrency, TuiCurrencyCode} from '@taiga-ui/addon-commerce/enums';\nimport {TuiCurrencyVariants} from '@taiga-ui/addon-commerce/types';\n\nexport function getCurrencySymbol(currency: TuiCurrencyVariants): string | null {\n switch (currency) {\n case TuiCurrency.Ruble:\n case TuiCurrencyCode.Ruble:\n return '₽';\n case TuiCurrency.Dollar:\n case TuiCurrencyCode.Dollar:\n case TuiCurrency.MexicanPeso:\n case TuiCurrencyCode.MexicanPeso:\n return '$';\n case TuiCurrency.SingaporeDollar:\n case TuiCurrencyCode.SingaporeDollar:\n return 'S$';\n case TuiCurrency.AustralianDollar:\n case TuiCurrencyCode.AustralianDollar:\n return 'A$';\n case TuiCurrency.HongKong_dollar:\n case TuiCurrencyCode.HongKong_dollar:\n return 'HK$';\n case TuiCurrency.CanadianDollar:\n case TuiCurrencyCode.CanadianDollar:\n return 'C$';\n case TuiCurrency.Euro:\n case TuiCurrencyCode.Euro:\n return '€';\n case TuiCurrency.Pound:\n case TuiCurrencyCode.Pound:\n return '£';\n case TuiCurrency.Baht:\n case TuiCurrencyCode.Baht:\n return '฿';\n case TuiCurrency.TurkishLira:\n case TuiCurrencyCode.TurkishLira:\n return '₺';\n case TuiCurrency.YuanRenminbi:\n case TuiCurrencyCode.YuanRenminbi:\n return 'CN¥';\n case TuiCurrency.Yen:\n case TuiCurrencyCode.Yen:\n return '¥';\n case TuiCurrency.IsraeliShekel:\n case TuiCurrencyCode.IsraeliShekel:\n return '₪';\n case TuiCurrency.IndianRupee:\n case TuiCurrencyCode.IndianRupee:\n return '₹';\n case TuiCurrency.SwissFranc:\n case TuiCurrencyCode.SwissFranc:\n return '₣';\n case TuiCurrency.ArmenianDram:\n case TuiCurrencyCode.ArmenianDram:\n return '֏';\n case TuiCurrency.Won:\n case TuiCurrencyCode.Won:\n return '₩';\n case TuiCurrency.Tenge:\n case TuiCurrencyCode.Tenge:\n return '₸';\n case TuiCurrency.Hryvnia:\n case TuiCurrencyCode.Hryvnia:\n return '₴';\n default:\n return null;\n }\n}\n","import {TuiPaymentSystem} from '@taiga-ui/addon-commerce/enums';\n\nexport function getPaymentSystem(cardNumber: string): TuiPaymentSystem | null {\n if (cardNumber === '') {\n return null;\n }\n\n const one = Number.parseInt(cardNumber[0], 10);\n const two = Number.parseInt(cardNumber.substr(0, 2), 10);\n const three = Number.parseInt(cardNumber.substr(0, 3), 10);\n const four = Number.parseInt(cardNumber.substr(0, 4), 10);\n\n if (isMaestro(three, two, one)) {\n return TuiPaymentSystem.Maestro;\n }\n\n if (isMastercard(four, two, one)) {\n return TuiPaymentSystem.Mastercard;\n }\n\n if (isMir(four)) {\n return TuiPaymentSystem.Mir;\n }\n\n if (isElectron(four)) {\n return TuiPaymentSystem.Electron;\n }\n\n if (isVisa(one)) {\n return TuiPaymentSystem.Visa;\n }\n\n return null;\n}\n\nexport function isMaestro(three: number, two: number, one: number): boolean {\n if (one === 6) {\n return true;\n }\n\n if (two === 50 || (two > 55 && two < 59)) {\n return true;\n }\n\n if (three < 500) {\n return false;\n }\n\n return three < 510;\n}\n\nexport function isMastercard(four: number, two: number, one: number): boolean {\n if (one === 5) {\n return true;\n }\n\n if (two < 10) {\n return false;\n }\n\n if (two > 50 && two < 56) {\n return true;\n }\n\n if (four < 1000) {\n return false;\n }\n\n return four > 2220 && four < 2721;\n}\n\nexport function isMir(four: number): boolean {\n return four > 2199 && four < 2205;\n}\n\nexport function isElectron(four: number): boolean {\n switch (four) {\n case 4026:\n case 4175:\n case 4405:\n case 4508:\n case 4844:\n case 4913:\n case 4917:\n return true;\n default:\n return false;\n }\n}\n\nexport function isVisa(one: number): boolean {\n return one === 4;\n}\n","import {TuiCurrencyVariants} from '@taiga-ui/addon-commerce/types';\nimport {padStart} from '@taiga-ui/cdk';\n\nimport {getCurrencySymbol} from './get-currency-symbol';\n\nexport function formatCurrency(currency: TuiCurrencyVariants): string {\n const stringifiedCurrency = stringifyCurrency(currency);\n\n return getCurrencySymbol(stringifiedCurrency) || stringifiedCurrency;\n}\n\nfunction stringifyCurrency(currency: TuiCurrencyVariants): string {\n return currency === null || typeof currency === 'string'\n ? currency || ''\n : padStart(String(currency), 3, '0');\n}\n","import {TuiPaymentSystem} from '@taiga-ui/addon-commerce/enums';\n\nimport {getPaymentSystem} from './get-payment-system';\n\n/**\n * Validates card number length using payment system dictionary\n */\nexport function isCardLengthValid(cardNumber: string): boolean {\n const {length} = cardNumber;\n const paymentSystem = getPaymentSystem(cardNumber);\n\n switch (paymentSystem) {\n case TuiPaymentSystem.Electron:\n return length === 16;\n case TuiPaymentSystem.Maestro:\n return length > 11 && length < 20;\n case TuiPaymentSystem.Mastercard:\n case TuiPaymentSystem.Mir:\n return length > 15 && length < 20;\n case TuiPaymentSystem.Visa:\n return length > 12 && length < 20;\n default:\n return length > 8 && length < 20;\n }\n}\n","import {TUI_NON_DIGITS_REGEXP} from '@taiga-ui/core';\n\n/**\n * Validates card number using Luhn algorithm\n */\nexport function isCardNumberValid(value: string | number): boolean {\n const cardNumber = String(value).replace(TUI_NON_DIGITS_REGEXP, '');\n\n const {length} = cardNumber;\n const arr = cardNumber.split('').map((char, index) => {\n const digit = parseInt(char, 10);\n\n if ((index + length) % 2 === 0) {\n const digitX2 = digit * 2;\n\n return digitX2 > 9 ? digitX2 - 9 : digitX2;\n }\n\n return digit;\n });\n\n return !(arr.reduce((a, b) => a + b, 0) % 10);\n}\n","export function isExpireValid(expire: string): boolean {\n const today = new Date();\n const currentMonth = today.getMonth();\n const currentYear = today.getFullYear() - 2000;\n const month = parseInt(expire.slice(0, 2), 0);\n const year = parseInt(expire.slice(-2), 0);\n\n return year > currentYear || (year === currentYear && month >= currentMonth);\n}\n"]}