@libs-ui/components-inputs-multi-language 0.2.10-6.2 → 0.2.30-6.1

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.
@@ -1,17 +1,17 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Pipe, signal, computed, input, model, output, effect, untracked, Component, ChangeDetectionStrategy } from '@angular/core';
2
+ import { Pipe, signal, computed, input, model, output, effect, untracked, ChangeDetectionStrategy, Component } from '@angular/core';
3
3
  import { LibsUiComponentsButtonsButtonComponent } from '@libs-ui/components-buttons-button';
4
4
  import { LibsUiComponentsDropdownComponent } from '@libs-ui/components-dropdown';
5
+ import { LibsUiComponentsInputsQuillComponent } from '@libs-ui/components-inputs-quill';
5
6
  import { LibsUiComponentsInputsValidComponent } from '@libs-ui/components-inputs-valid';
6
7
  import { LibsUiComponentsPopoverComponent } from '@libs-ui/components-popover';
7
- import { CHARACTER_DATA_EMPTY, UtilsCache, get, set, cloneDeep, isNil } from '@libs-ui/utils';
8
+ import { LibsUiPipesEscapeHtmlPipe } from '@libs-ui/pipes-escape-html';
9
+ import { CHARACTER_DATA_EMPTY, get, UtilsCache, set, cloneDeep, isNil } from '@libs-ui/utils';
8
10
  import * as i1 from '@ngx-translate/core';
9
11
  import { TranslateModule } from '@ngx-translate/core';
10
12
  import { Subject, timer, takeUntil } from 'rxjs';
11
13
  import { HttpParams } from '@angular/common/http';
12
14
  import { returnDetailObject, returnListObject } from '@libs-ui/services-http-request';
13
- import { LibsUiPipesEscapeHtmlPipe } from '@libs-ui/pipes-escape-html';
14
- import { LibsUiComponentsInputsQuillComponent } from '@libs-ui/components-inputs-quill';
15
15
 
16
16
  class LibsUiComponentsInputsMultiLanguageDisplayLanguagePipe {
17
17
  transform(keyLang, listLanguage) {
@@ -50,6 +50,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
50
50
  }]
51
51
  }] });
52
52
 
53
+ class LibsUiComponentsInputsMultiLanguageGetItemPipe {
54
+ transform(keyBindData, dataLanguageChange) {
55
+ return (keyBindData ? signal(get(dataLanguageChange, keyBindData)) : dataLanguageChange);
56
+ }
57
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LibsUiComponentsInputsMultiLanguageGetItemPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
58
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: LibsUiComponentsInputsMultiLanguageGetItemPipe, isStandalone: true, name: "LibsUiComponentsInputsMultiLanguageGetItemPipe" });
59
+ }
60
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LibsUiComponentsInputsMultiLanguageGetItemPipe, decorators: [{
61
+ type: Pipe,
62
+ args: [{
63
+ name: 'LibsUiComponentsInputsMultiLanguageGetItemPipe',
64
+ standalone: true
65
+ }]
66
+ }] });
67
+
68
+ /* eslint-disable @typescript-eslint/no-explicit-any */
53
69
  const currenciesSupport = () => {
54
70
  // UtilsCache.KEY_CACHE_CURRENCIES_CMS_SUPPORT
55
71
  return UtilsCache.Get('test_currencies', ['VND', 'USD', 'EUR']);
@@ -60,28 +76,129 @@ const languageSupport = () => {
60
76
  };
61
77
  const currenciesOptions = (objectPattern = { key: 'key', label: 'code' }) => {
62
78
  const data = [
63
- { 'symbol': '$', 'name': 'US Dollar', 'symbol_native': '$', 'decimal_digits': 2, 'rounding': 0, 'code': 'USD', 'name_plural': 'US dollars', 'key': 'USD' },
64
- { 'symbol': 'CA$', 'name': 'Canadian Dollar', 'symbol_native': '$', 'decimal_digits': 2, 'rounding': 0, 'code': 'CAD', 'name_plural': 'Canadian dollars', 'key': 'CAD' },
65
- { 'symbol': '€', 'name': 'Euro', 'symbol_native': '€', 'decimal_digits': 2, 'rounding': 0, 'code': 'EUR', 'name_plural': 'euros', 'key': 'EUR' },
66
- { 'symbol': 'AED', 'name': 'United Arab Emirates Dirham', 'symbol_native': 'د.إ.‏', 'decimal_digits': 2, 'rounding': 0, 'code': 'AED', 'name_plural': 'UAE dirhams', 'key': 'AED' },
67
- { 'symbol': 'Af', 'name': 'Afghan Afghani', 'symbol_native': '؋', 'decimal_digits': 0, 'rounding': 0, 'code': 'AFN', 'name_plural': 'Afghan Afghanis', 'key': 'AFN' },
68
- { 'symbol': 'ALL', 'name': 'Albanian Lek', 'symbol_native': 'Lek', 'decimal_digits': 0, 'rounding': 0, 'code': 'ALL', 'name_plural': 'Albanian lekë', 'key': 'ALL' },
69
- { 'symbol': 'AMD', 'name': 'Armenian Dram', 'symbol_native': 'դր.', 'decimal_digits': 0, 'rounding': 0, 'code': 'AMD', 'name_plural': 'Armenian drams', 'key': 'AMD' },
70
- { 'symbol': 'AR$', 'name': 'Argentine Peso', 'symbol_native': '$', 'decimal_digits': 2, 'rounding': 0, 'code': 'ARS', 'name_plural': 'Argentine pesos', 'key': 'ARS' },
71
- { 'symbol': 'AU$', 'name': 'Australian Dollar', 'symbol_native': '$', 'decimal_digits': 2, 'rounding': 0, 'code': 'AUD', 'name_plural': 'Australian dollars', 'key': 'AUD' },
72
- { 'symbol': 'man.', 'name': 'Azerbaijani Manat', 'symbol_native': 'ман.', 'decimal_digits': 2, 'rounding': 0, 'code': 'AZN', 'name_plural': 'Azerbaijani manats', 'key': 'AZN' },
73
- { 'symbol': 'KM', 'name': 'Bosnia-Herzegovina Convertible Mark', 'symbol_native': 'KM', 'decimal_digits': 2, 'rounding': 0, 'code': 'BAM', 'name_plural': 'Bosnia-Herzegovina convertible marks', 'key': 'BAM' },
74
- { 'symbol': 'Tk', 'name': 'Bangladeshi Taka', 'symbol_native': '৳', 'decimal_digits': 2, 'rounding': 0, 'code': 'BDT', 'name_plural': 'Bangladeshi takas', 'key': 'BDT' },
75
- { 'symbol': 'BGN', 'name': 'Bulgarian Lev', 'symbol_native': 'лв.', 'decimal_digits': 2, 'rounding': 0, 'code': 'BGN', 'name_plural': 'Bulgarian leva', 'key': 'BGN' },
76
- { 'symbol': 'BD', 'name': 'Bahraini Dinar', 'symbol_native': 'د.ب.‏', 'decimal_digits': 3, 'rounding': 0, 'code': 'BHD', 'name_plural': 'Bahraini dinars', 'key': 'BHD' },
77
- { 'symbol': 'FBu', 'name': 'Burundian Franc', 'symbol_native': 'FBu', 'decimal_digits': 0, 'rounding': 0, 'code': 'BIF', 'name_plural': 'Burundian francs', 'key': 'BIF' },
78
- { 'symbol': 'BN$', 'name': 'Brunei Dollar', 'symbol_native': '$', 'decimal_digits': 2, 'rounding': 0, 'code': 'BND', 'name_plural': 'Brunei dollars', 'key': 'BND' },
79
- { 'symbol': 'Bs', 'name': 'Bolivian Boliviano', 'symbol_native': 'Bs', 'decimal_digits': 2, 'rounding': 0, 'code': 'BOB', 'name_plural': 'Bolivian bolivianos', 'key': 'BOB' },
80
- { 'symbol': 'R$', 'name': 'Brazilian Real', 'symbol_native': 'R$', 'decimal_digits': 2, 'rounding': 0, 'code': 'BRL', 'name_plural': 'Brazilian reals', 'key': 'BRL' }, { 'symbol': 'BWP', 'name': 'Botswanan Pula', 'symbol_native': 'P', 'decimal_digits': 2, 'rounding': 0, 'code': 'BWP', 'name_plural': 'Botswanan pulas', 'key': 'BWP' }, { 'symbol': 'Br', 'name': 'Belarusian Ruble', 'symbol_native': 'руб.', 'decimal_digits': 2, 'rounding': 0, 'code': 'BYN', 'name_plural': 'Belarusian rubles', 'key': 'BYN' }, { 'symbol': 'BZ$', 'name': 'Belize Dollar', 'symbol_native': '$', 'decimal_digits': 2, 'rounding': 0, 'code': 'BZD', 'name_plural': 'Belize dollars', 'key': 'BZD' }, { 'symbol': 'CDF', 'name': 'Congolese Franc', 'symbol_native': 'FrCD', 'decimal_digits': 2, 'rounding': 0, 'code': 'CDF', 'name_plural': 'Congolese francs', 'key': 'CDF' }, { 'symbol': 'CHF', 'name': 'Swiss Franc', 'symbol_native': 'CHF', 'decimal_digits': 2, 'rounding': 0.05, 'code': 'CHF', 'name_plural': 'Swiss francs', 'key': 'CHF' }, { 'symbol': 'CL$', 'name': 'Chilean Peso', 'symbol_native': '$', 'decimal_digits': 0, 'rounding': 0, 'code': 'CLP', 'name_plural': 'Chilean pesos', 'key': 'CLP' }, { 'symbol': 'CN¥', 'name': 'Chinese Yuan', 'symbol_native': 'CN¥', 'decimal_digits': 2, 'rounding': 0, 'code': 'CNY', 'name_plural': 'Chinese yuan', 'key': 'CNY' }, { 'symbol': 'CO$', 'name': 'Colombian Peso', 'symbol_native': '$', 'decimal_digits': 0, 'rounding': 0, 'code': 'COP', 'name_plural': 'Colombian pesos', 'key': 'COP' }, { 'symbol': '₡', 'name': 'Costa Rican Colón', 'symbol_native': '₡', 'decimal_digits': 0, 'rounding': 0, 'code': 'CRC', 'name_plural': 'Costa Rican colóns', 'key': 'CRC' }, { 'symbol': 'CV$', 'name': 'Cape Verdean Escudo', 'symbol_native': 'CV$', 'decimal_digits': 2, 'rounding': 0, 'code': 'CVE', 'name_plural': 'Cape Verdean escudos', 'key': 'CVE' }, { 'symbol': 'Kč', 'name': 'Czech Republic Koruna', 'symbol_native': 'Kč', 'decimal_digits': 2, 'rounding': 0, 'code': 'CZK', 'name_plural': 'Czech Republic korunas', 'key': 'CZK' }, { 'symbol': 'Fdj', 'name': 'Djiboutian Franc', 'symbol_native': 'Fdj', 'decimal_digits': 0, 'rounding': 0, 'code': 'DJF', 'name_plural': 'Djiboutian francs', 'key': 'DJF' }, { 'symbol': 'Dkr', 'name': 'Danish Krone', 'symbol_native': 'kr', 'decimal_digits': 2, 'rounding': 0, 'code': 'DKK', 'name_plural': 'Danish kroner', 'key': 'DKK' }, { 'symbol': 'RD$', 'name': 'Dominican Peso', 'symbol_native': 'RD$', 'decimal_digits': 2, 'rounding': 0, 'code': 'DOP', 'name_plural': 'Dominican pesos', 'key': 'DOP' }, { 'symbol': 'DA', 'name': 'Algerian Dinar', 'symbol_native': 'د.ج.‏', 'decimal_digits': 2, 'rounding': 0, 'code': 'DZD', 'name_plural': 'Algerian dinars', 'key': 'DZD' }, { 'symbol': 'Ekr', 'name': 'Estonian Kroon', 'symbol_native': 'kr', 'decimal_digits': 2, 'rounding': 0, 'code': 'EEK', 'name_plural': 'Estonian kroons', 'key': 'EEK' }, { 'symbol': 'EGP', 'name': 'Egyptian Pound', 'symbol_native': 'ج.م.‏', 'decimal_digits': 2, 'rounding': 0, 'code': 'EGP', 'name_plural': 'Egyptian pounds', 'key': 'EGP' }, { 'symbol': 'Nfk', 'name': 'Eritrean Nakfa', 'symbol_native': 'Nfk', 'decimal_digits': 2, 'rounding': 0, 'code': 'ERN', 'name_plural': 'Eritrean nakfas', 'key': 'ERN' }, { 'symbol': 'Br', 'name': 'Ethiopian Birr', 'symbol_native': 'Br', 'decimal_digits': 2, 'rounding': 0, 'code': 'ETB', 'name_plural': 'Ethiopian birrs', 'key': 'ETB' }, { 'symbol': '£', 'name': 'British Pound Sterling', 'symbol_native': '£', 'decimal_digits': 2, 'rounding': 0, 'code': 'GBP', 'name_plural': 'British pounds sterling', 'key': 'GBP' }, { 'symbol': 'GEL', 'name': 'Georgian Lari', 'symbol_native': 'GEL', 'decimal_digits': 2, 'rounding': 0, 'code': 'GEL', 'name_plural': 'Georgian laris', 'key': 'GEL' }, { 'symbol': 'GH₵', 'name': 'Ghanaian Cedi', 'symbol_native': 'GH₵', 'decimal_digits': 2, 'rounding': 0, 'code': 'GHS', 'name_plural': 'Ghanaian cedis', 'key': 'GHS' }, { 'symbol': 'FG', 'name': 'Guinean Franc', 'symbol_native': 'FG', 'decimal_digits': 0, 'rounding': 0, 'code': 'GNF', 'name_plural': 'Guinean francs', 'key': 'GNF' }, { 'symbol': 'GTQ', 'name': 'Guatemalan Quetzal', 'symbol_native': 'Q', 'decimal_digits': 2, 'rounding': 0, 'code': 'GTQ', 'name_plural': 'Guatemalan quetzals', 'key': 'GTQ' }, { 'symbol': 'HK$', 'name': 'Hong Kong Dollar', 'symbol_native': '$', 'decimal_digits': 2, 'rounding': 0, 'code': 'HKD', 'name_plural': 'Hong Kong dollars', 'key': 'HKD' }, { 'symbol': 'HNL', 'name': 'Honduran Lempira', 'symbol_native': 'L', 'decimal_digits': 2, 'rounding': 0, 'code': 'HNL', 'name_plural': 'Honduran lempiras', 'key': 'HNL' }, { 'symbol': 'kn', 'name': 'Croatian Kuna', 'symbol_native': 'kn', 'decimal_digits': 2, 'rounding': 0, 'code': 'HRK', 'name_plural': 'Croatian kunas', 'key': 'HRK' }, { 'symbol': 'Ft', 'name': 'Hungarian Forint', 'symbol_native': 'Ft', 'decimal_digits': 0, 'rounding': 0, 'code': 'HUF', 'name_plural': 'Hungarian forints', 'key': 'HUF' }, { 'symbol': 'Rp', 'name': 'Indonesian Rupiah', 'symbol_native': 'Rp', 'decimal_digits': 0, 'rounding': 0, 'code': 'IDR', 'name_plural': 'Indonesian rupiahs', 'key': 'IDR' }, { 'symbol': '₪', 'name': 'Israeli New Sheqel', 'symbol_native': '₪', 'decimal_digits': 2, 'rounding': 0, 'code': 'ILS', 'name_plural': 'Israeli new sheqels', 'key': 'ILS' }, { 'symbol': 'Rs', 'name': 'Indian Rupee', 'symbol_native': 'টকা', 'decimal_digits': 2, 'rounding': 0, 'code': 'INR', 'name_plural': 'Indian rupees', 'key': 'INR' }, { 'symbol': 'IQD', 'name': 'Iraqi Dinar', 'symbol_native': 'د.ع.‏', 'decimal_digits': 0, 'rounding': 0, 'code': 'IQD', 'name_plural': 'Iraqi dinars', 'key': 'IQD' }, { 'symbol': 'IRR', 'name': 'Iranian Rial', 'symbol_native': '﷼', 'decimal_digits': 0, 'rounding': 0, 'code': 'IRR', 'name_plural': 'Iranian rials', 'key': 'IRR' }, { 'symbol': 'Ikr', 'name': 'Icelandic Króna', 'symbol_native': 'kr', 'decimal_digits': 0, 'rounding': 0, 'code': 'ISK', 'name_plural': 'Icelandic krónur', 'key': 'ISK' }, { 'symbol': 'J$', 'name': 'Jamaican Dollar', 'symbol_native': '$', 'decimal_digits': 2, 'rounding': 0, 'code': 'JMD', 'name_plural': 'Jamaican dollars', 'key': 'JMD' }, { 'symbol': 'JD', 'name': 'Jordanian Dinar', 'symbol_native': 'د.أ.‏', 'decimal_digits': 3, 'rounding': 0, 'code': 'JOD', 'name_plural': 'Jordanian dinars', 'key': 'JOD' }, { 'symbol': '¥', 'name': 'Japanese Yen', 'symbol_native': '¥', 'decimal_digits': 0, 'rounding': 0, 'code': 'JPY', 'name_plural': 'Japanese yen', 'key': 'JPY' }, { 'symbol': 'Ksh', 'name': 'Kenyan Shilling', 'symbol_native': 'Ksh', 'decimal_digits': 2, 'rounding': 0, 'code': 'KES', 'name_plural': 'Kenyan shillings', 'key': 'KES' }, { 'symbol': 'KHR', 'name': 'Cambodian Riel', 'symbol_native': '៛', 'decimal_digits': 2, 'rounding': 0, 'code': 'KHR', 'name_plural': 'Cambodian riels', 'key': 'KHR' }, { 'symbol': 'CF', 'name': 'Comorian Franc', 'symbol_native': 'FC', 'decimal_digits': 0, 'rounding': 0, 'code': 'KMF', 'name_plural': 'Comorian francs', 'key': 'KMF' }, { 'symbol': '₩', 'name': 'South Korean Won', 'symbol_native': '₩', 'decimal_digits': 0, 'rounding': 0, 'code': 'KRW', 'name_plural': 'South Korean won', 'key': 'KRW' }, { 'symbol': 'KD', 'name': 'Kuwaiti Dinar', 'symbol_native': 'د.ك.‏', 'decimal_digits': 3, 'rounding': 0, 'code': 'KWD', 'name_plural': 'Kuwaiti dinars', 'key': 'KWD' }, { 'symbol': 'KZT', 'name': 'Kazakhstani Tenge', 'symbol_native': 'тңг.', 'decimal_digits': 2, 'rounding': 0, 'code': 'KZT', 'name_plural': 'Kazakhstani tenges', 'key': 'KZT' }, { 'symbol': 'LB£', 'name': 'Lebanese Pound', 'symbol_native': 'ل.ل.‏', 'decimal_digits': 0, 'rounding': 0, 'code': 'LBP', 'name_plural': 'Lebanese pounds', 'key': 'LBP' }, { 'symbol': 'SLRs', 'name': 'Sri Lankan Rupee', 'symbol_native': 'SL Re', 'decimal_digits': 2, 'rounding': 0, 'code': 'LKR', 'name_plural': 'Sri Lankan rupees', 'key': 'LKR' }, { 'symbol': 'Lt', 'name': 'Lithuanian Litas', 'symbol_native': 'Lt', 'decimal_digits': 2, 'rounding': 0, 'code': 'LTL', 'name_plural': 'Lithuanian litai', 'key': 'LTL' }, { 'symbol': 'Ls', 'name': 'Latvian Lats', 'symbol_native': 'Ls', 'decimal_digits': 2, 'rounding': 0, 'code': 'LVL', 'name_plural': 'Latvian lati', 'key': 'LVL' }, { 'symbol': 'LD', 'name': 'Libyan Dinar', 'symbol_native': 'د.ل.‏', 'decimal_digits': 3, 'rounding': 0, 'code': 'LYD', 'name_plural': 'Libyan dinars', 'key': 'LYD' }, { 'symbol': 'MAD', 'name': 'Moroccan Dirham', 'symbol_native': 'د.م.‏', 'decimal_digits': 2, 'rounding': 0, 'code': 'MAD', 'name_plural': 'Moroccan dirhams', 'key': 'MAD' }, { 'symbol': 'MDL', 'name': 'Moldovan Leu', 'symbol_native': 'MDL', 'decimal_digits': 2, 'rounding': 0, 'code': 'MDL', 'name_plural': 'Moldovan lei', 'key': 'MDL' }, { 'symbol': 'MGA', 'name': 'Malagasy Ariary', 'symbol_native': 'MGA', 'decimal_digits': 0, 'rounding': 0, 'code': 'MGA', 'name_plural': 'Malagasy Ariaries', 'key': 'MGA' }, { 'symbol': 'MKD', 'name': 'Macedonian Denar', 'symbol_native': 'MKD', 'decimal_digits': 2, 'rounding': 0, 'code': 'MKD', 'name_plural': 'Macedonian denari', 'key': 'MKD' }, { 'symbol': 'MMK', 'name': 'Myanma Kyat', 'symbol_native': 'K', 'decimal_digits': 0, 'rounding': 0, 'code': 'MMK', 'name_plural': 'Myanma kyats', 'key': 'MMK' }, { 'symbol': 'MOP$', 'name': 'Macanese Pataca', 'symbol_native': 'MOP$', 'decimal_digits': 2, 'rounding': 0, 'code': 'MOP', 'name_plural': 'Macanese patacas', 'key': 'MOP' }, { 'symbol': 'MURs', 'name': 'Mauritian Rupee', 'symbol_native': 'MURs', 'decimal_digits': 0, 'rounding': 0, 'code': 'MUR', 'name_plural': 'Mauritian rupees', 'key': 'MUR' }, { 'symbol': 'MX$', 'name': 'Mexican Peso', 'symbol_native': '$', 'decimal_digits': 2, 'rounding': 0, 'code': 'MXN', 'name_plural': 'Mexican pesos', 'key': 'MXN' }, { 'symbol': 'RM', 'name': 'Malaysian Ringgit', 'symbol_native': 'RM', 'decimal_digits': 2, 'rounding': 0, 'code': 'MYR', 'name_plural': 'Malaysian ringgits', 'key': 'MYR' }, { 'symbol': 'MTn', 'name': 'Mozambican Metical', 'symbol_native': 'MTn', 'decimal_digits': 2, 'rounding': 0, 'code': 'MZN', 'name_plural': 'Mozambican meticals', 'key': 'MZN' }, { 'symbol': 'N$', 'name': 'Namibian Dollar', 'symbol_native': 'N$', 'decimal_digits': 2, 'rounding': 0, 'code': 'NAD', 'name_plural': 'Namibian dollars', 'key': 'NAD' }, { 'symbol': '₦', 'name': 'Nigerian Naira', 'symbol_native': '₦', 'decimal_digits': 2, 'rounding': 0, 'code': 'NGN', 'name_plural': 'Nigerian nairas', 'key': 'NGN' }, { 'symbol': 'C$', 'name': 'Nicaraguan Córdoba', 'symbol_native': 'C$', 'decimal_digits': 2, 'rounding': 0, 'code': 'NIO', 'name_plural': 'Nicaraguan córdobas', 'key': 'NIO' }, { 'symbol': 'Nkr', 'name': 'Norwegian Krone', 'symbol_native': 'kr', 'decimal_digits': 2, 'rounding': 0, 'code': 'NOK', 'name_plural': 'Norwegian kroner', 'key': 'NOK' }, { 'symbol': 'NPRs', 'name': 'Nepalese Rupee', 'symbol_native': 'नेरू', 'decimal_digits': 2, 'rounding': 0, 'code': 'NPR', 'name_plural': 'Nepalese rupees', 'key': 'NPR' }, { 'symbol': 'NZ$', 'name': 'New Zealand Dollar', 'symbol_native': '$', 'decimal_digits': 2, 'rounding': 0, 'code': 'NZD', 'name_plural': 'New Zealand dollars', 'key': 'NZD' }, { 'symbol': 'OMR', 'name': 'Omani Rial', 'symbol_native': 'ر.ع.‏', 'decimal_digits': 3, 'rounding': 0, 'code': 'OMR', 'name_plural': 'Omani rials', 'key': 'OMR' }, { 'symbol': 'B/.', 'name': 'Panamanian Balboa', 'symbol_native': 'B/.', 'decimal_digits': 2, 'rounding': 0, 'code': 'PAB', 'name_plural': 'Panamanian balboas', 'key': 'PAB' }, { 'symbol': 'S/.', 'name': 'Peruvian Nuevo Sol', 'symbol_native': 'S/.', 'decimal_digits': 2, 'rounding': 0, 'code': 'PEN', 'name_plural': 'Peruvian nuevos soles', 'key': 'PEN' }, { 'symbol': '₱', 'name': 'Philippine Peso', 'symbol_native': '₱', 'decimal_digits': 2, 'rounding': 0, 'code': 'PHP', 'name_plural': 'Philippine pesos', 'key': 'PHP' }, { 'symbol': 'PKRs', 'name': 'Pakistani Rupee', 'symbol_native': '₨', 'decimal_digits': 0, 'rounding': 0, 'code': 'PKR', 'name_plural': 'Pakistani rupees', 'key': 'PKR' }, { 'symbol': 'zł', 'name': 'Polish Zloty', 'symbol_native': 'zł', 'decimal_digits': 2, 'rounding': 0, 'code': 'PLN', 'name_plural': 'Polish zlotys', 'key': 'PLN' }, { 'symbol': '₲', 'name': 'Paraguayan Guarani', 'symbol_native': '₲', 'decimal_digits': 0, 'rounding': 0, 'code': 'PYG', 'name_plural': 'Paraguayan guaranis', 'key': 'PYG' }, { 'symbol': 'QR', 'name': 'Qatari Rial', 'symbol_native': 'ر.ق.‏', 'decimal_digits': 2, 'rounding': 0, 'code': 'QAR', 'name_plural': 'Qatari rials', 'key': 'QAR' }, { 'symbol': 'RON', 'name': 'Romanian Leu', 'symbol_native': 'RON', 'decimal_digits': 2, 'rounding': 0, 'code': 'RON', 'name_plural': 'Romanian lei', 'key': 'RON' }, { 'symbol': 'din.', 'name': 'Serbian Dinar', 'symbol_native': 'дин.', 'decimal_digits': 0, 'rounding': 0, 'code': 'RSD', 'name_plural': 'Serbian dinars', 'key': 'RSD' }, { 'symbol': 'RUB', 'name': 'Russian Ruble', 'symbol_native': '₽.', 'decimal_digits': 2, 'rounding': 0, 'code': 'RUB', 'name_plural': 'Russian rubles', 'key': 'RUB' }, { 'symbol': 'RWF', 'name': 'Rwandan Franc', 'symbol_native': 'FR', 'decimal_digits': 0, 'rounding': 0, 'code': 'RWF', 'name_plural': 'Rwandan francs', 'key': 'RWF' }, { 'symbol': 'SR', 'name': 'Saudi Riyal', 'symbol_native': 'ر.س.‏', 'decimal_digits': 2, 'rounding': 0, 'code': 'SAR', 'name_plural': 'Saudi riyals', 'key': 'SAR' }, { 'symbol': 'SDG', 'name': 'Sudanese Pound', 'symbol_native': 'SDG', 'decimal_digits': 2, 'rounding': 0, 'code': 'SDG', 'name_plural': 'Sudanese pounds', 'key': 'SDG' }, { 'symbol': 'Skr', 'name': 'Swedish Krona', 'symbol_native': 'kr', 'decimal_digits': 2, 'rounding': 0, 'code': 'SEK', 'name_plural': 'Swedish kronor', 'key': 'SEK' }, { 'symbol': 'S$', 'name': 'Singapore Dollar', 'symbol_native': '$', 'decimal_digits': 2, 'rounding': 0, 'code': 'SGD', 'name_plural': 'Singapore dollars', 'key': 'SGD' }, { 'symbol': 'Ssh', 'name': 'Somali Shilling', 'symbol_native': 'Ssh', 'decimal_digits': 0, 'rounding': 0, 'code': 'SOS', 'name_plural': 'Somali shillings', 'key': 'SOS' }, { 'symbol': 'SY£', 'name': 'Syrian Pound', 'symbol_native': 'ل.س.‏', 'decimal_digits': 0, 'rounding': 0, 'code': 'SYP', 'name_plural': 'Syrian pounds', 'key': 'SYP' }, { 'symbol': '฿', 'name': 'Thai Baht', 'symbol_native': '฿', 'decimal_digits': 2, 'rounding': 0, 'code': 'THB', 'name_plural': 'Thai baht', 'key': 'THB' }, { 'symbol': 'DT', 'name': 'Tunisian Dinar', 'symbol_native': 'د.ت.‏', 'decimal_digits': 3, 'rounding': 0, 'code': 'TND', 'name_plural': 'Tunisian dinars', 'key': 'TND' }, { 'symbol': 'T$', 'name': 'Tongan Paʻanga', 'symbol_native': 'T$', 'decimal_digits': 2, 'rounding': 0, 'code': 'TOP', 'name_plural': 'Tongan paʻanga', 'key': 'TOP' }, { 'symbol': 'TL', 'name': 'Turkish Lira', 'symbol_native': 'TL', 'decimal_digits': 2, 'rounding': 0, 'code': 'TRY', 'name_plural': 'Turkish Lira', 'key': 'TRY' }, { 'symbol': 'TT$', 'name': 'Trinidad and Tobago Dollar', 'symbol_native': '$', 'decimal_digits': 2, 'rounding': 0, 'code': 'TTD', 'name_plural': 'Trinidad and Tobago dollars', 'key': 'TTD' }, { 'symbol': 'NT$', 'name': 'New Taiwan Dollar', 'symbol_native': 'NT$', 'decimal_digits': 2, 'rounding': 0, 'code': 'TWD', 'name_plural': 'New Taiwan dollars', 'key': 'TWD' }, { 'symbol': 'TSh', 'name': 'Tanzanian Shilling', 'symbol_native': 'TSh', 'decimal_digits': 0, 'rounding': 0, 'code': 'TZS', 'name_plural': 'Tanzanian shillings', 'key': 'TZS' }, { 'symbol': '₴', 'name': 'Ukrainian Hryvnia', 'symbol_native': '₴', 'decimal_digits': 2, 'rounding': 0, 'code': 'UAH', 'name_plural': 'Ukrainian hryvnias', 'key': 'UAH' }, { 'symbol': 'USh', 'name': 'Ugandan Shilling', 'symbol_native': 'USh', 'decimal_digits': 0, 'rounding': 0, 'code': 'UGX', 'name_plural': 'Ugandan shillings', 'key': 'UGX' }, { 'symbol': '$U', 'name': 'Uruguayan Peso', 'symbol_native': '$', 'decimal_digits': 2, 'rounding': 0, 'code': 'UYU', 'name_plural': 'Uruguayan pesos', 'key': 'UYU' }, { 'symbol': 'UZS', 'name': 'Uzbekistan Som', 'symbol_native': 'UZS', 'decimal_digits': 0, 'rounding': 0, 'code': 'UZS', 'name_plural': 'Uzbekistan som', 'key': 'UZS' }, { 'symbol': 'Bs.F.', 'name': 'Venezuelan Bolívar', 'symbol_native': 'Bs.F.', 'decimal_digits': 2, 'rounding': 0, 'code': 'VEF', 'name_plural': 'Venezuelan bolívars', 'key': 'VEF' }, { 'symbol': '₫', 'name': 'Vietnamese Dong', 'symbol_native': '₫', 'decimal_digits': 0, 'rounding': 0, 'code': 'VND', 'name_plural': 'Vietnamese dong', 'key': 'VND' }, { 'symbol': 'FCFA', 'name': 'CFA Franc BEAC', 'symbol_native': 'FCFA', 'decimal_digits': 0, 'rounding': 0, 'code': 'XAF', 'name_plural': 'CFA francs BEAC', 'key': 'XAF' }, { 'symbol': 'CFA', 'name': 'CFA Franc BCEAO', 'symbol_native': 'CFA', 'decimal_digits': 0, 'rounding': 0, 'code': 'XOF', 'name_plural': 'CFA francs BCEAO', 'key': 'XOF' }, { 'symbol': 'YR', 'name': 'Yemeni Rial', 'symbol_native': 'ر.ي.‏', 'decimal_digits': 0, 'rounding': 0, 'code': 'YER', 'name_plural': 'Yemeni rials', 'key': 'YER' }, { 'symbol': 'R', 'name': 'South African Rand', 'symbol_native': 'R', 'decimal_digits': 2, 'rounding': 0, 'code': 'ZAR', 'name_plural': 'South African rand', 'key': 'ZAR' }, { 'symbol': 'ZK', 'name': 'Zambian Kwacha', 'symbol_native': 'ZK', 'decimal_digits': 0, 'rounding': 0, 'code': 'ZMK', 'name_plural': 'Zambian kwachas', 'key': 'ZMK' }, { 'symbol': 'ZWL$', 'name': 'Zimbabwean Dollar', 'symbol_native': 'ZWL$', 'decimal_digits': 0, 'rounding': 0, 'code': 'ZWL', 'name_plural': 'Zimbabwean Dollar', 'key': 'ZWL' }
79
+ { symbol: '$', name: 'US Dollar', symbol_native: '$', decimal_digits: 2, rounding: 0, code: 'USD', name_plural: 'US dollars', key: 'USD' },
80
+ { symbol: 'CA$', name: 'Canadian Dollar', symbol_native: '$', decimal_digits: 2, rounding: 0, code: 'CAD', name_plural: 'Canadian dollars', key: 'CAD' },
81
+ { symbol: '€', name: 'Euro', symbol_native: '€', decimal_digits: 2, rounding: 0, code: 'EUR', name_plural: 'euros', key: 'EUR' },
82
+ { symbol: 'AED', name: 'United Arab Emirates Dirham', symbol_native: 'د.إ.‏', decimal_digits: 2, rounding: 0, code: 'AED', name_plural: 'UAE dirhams', key: 'AED' },
83
+ { symbol: 'Af', name: 'Afghan Afghani', symbol_native: '؋', decimal_digits: 0, rounding: 0, code: 'AFN', name_plural: 'Afghan Afghanis', key: 'AFN' },
84
+ { symbol: 'ALL', name: 'Albanian Lek', symbol_native: 'Lek', decimal_digits: 0, rounding: 0, code: 'ALL', name_plural: 'Albanian lekë', key: 'ALL' },
85
+ { symbol: 'AMD', name: 'Armenian Dram', symbol_native: 'դր.', decimal_digits: 0, rounding: 0, code: 'AMD', name_plural: 'Armenian drams', key: 'AMD' },
86
+ { symbol: 'AR$', name: 'Argentine Peso', symbol_native: '$', decimal_digits: 2, rounding: 0, code: 'ARS', name_plural: 'Argentine pesos', key: 'ARS' },
87
+ { symbol: 'AU$', name: 'Australian Dollar', symbol_native: '$', decimal_digits: 2, rounding: 0, code: 'AUD', name_plural: 'Australian dollars', key: 'AUD' },
88
+ { symbol: 'man.', name: 'Azerbaijani Manat', symbol_native: 'ман.', decimal_digits: 2, rounding: 0, code: 'AZN', name_plural: 'Azerbaijani manats', key: 'AZN' },
89
+ { symbol: 'KM', name: 'Bosnia-Herzegovina Convertible Mark', symbol_native: 'KM', decimal_digits: 2, rounding: 0, code: 'BAM', name_plural: 'Bosnia-Herzegovina convertible marks', key: 'BAM' },
90
+ { symbol: 'Tk', name: 'Bangladeshi Taka', symbol_native: '৳', decimal_digits: 2, rounding: 0, code: 'BDT', name_plural: 'Bangladeshi takas', key: 'BDT' },
91
+ { symbol: 'BGN', name: 'Bulgarian Lev', symbol_native: 'лв.', decimal_digits: 2, rounding: 0, code: 'BGN', name_plural: 'Bulgarian leva', key: 'BGN' },
92
+ { symbol: 'BD', name: 'Bahraini Dinar', symbol_native: 'د.ب.‏', decimal_digits: 3, rounding: 0, code: 'BHD', name_plural: 'Bahraini dinars', key: 'BHD' },
93
+ { symbol: 'FBu', name: 'Burundian Franc', symbol_native: 'FBu', decimal_digits: 0, rounding: 0, code: 'BIF', name_plural: 'Burundian francs', key: 'BIF' },
94
+ { symbol: 'BN$', name: 'Brunei Dollar', symbol_native: '$', decimal_digits: 2, rounding: 0, code: 'BND', name_plural: 'Brunei dollars', key: 'BND' },
95
+ { symbol: 'Bs', name: 'Bolivian Boliviano', symbol_native: 'Bs', decimal_digits: 2, rounding: 0, code: 'BOB', name_plural: 'Bolivian bolivianos', key: 'BOB' },
96
+ { symbol: 'R$', name: 'Brazilian Real', symbol_native: 'R$', decimal_digits: 2, rounding: 0, code: 'BRL', name_plural: 'Brazilian reals', key: 'BRL' },
97
+ { symbol: 'BWP', name: 'Botswanan Pula', symbol_native: 'P', decimal_digits: 2, rounding: 0, code: 'BWP', name_plural: 'Botswanan pulas', key: 'BWP' },
98
+ { symbol: 'Br', name: 'Belarusian Ruble', symbol_native: 'руб.', decimal_digits: 2, rounding: 0, code: 'BYN', name_plural: 'Belarusian rubles', key: 'BYN' },
99
+ { symbol: 'BZ$', name: 'Belize Dollar', symbol_native: '$', decimal_digits: 2, rounding: 0, code: 'BZD', name_plural: 'Belize dollars', key: 'BZD' },
100
+ { symbol: 'CDF', name: 'Congolese Franc', symbol_native: 'FrCD', decimal_digits: 2, rounding: 0, code: 'CDF', name_plural: 'Congolese francs', key: 'CDF' },
101
+ { symbol: 'CHF', name: 'Swiss Franc', symbol_native: 'CHF', decimal_digits: 2, rounding: 0.05, code: 'CHF', name_plural: 'Swiss francs', key: 'CHF' },
102
+ { symbol: 'CL$', name: 'Chilean Peso', symbol_native: '$', decimal_digits: 0, rounding: 0, code: 'CLP', name_plural: 'Chilean pesos', key: 'CLP' },
103
+ { symbol: 'CN¥', name: 'Chinese Yuan', symbol_native: 'CN¥', decimal_digits: 2, rounding: 0, code: 'CNY', name_plural: 'Chinese yuan', key: 'CNY' },
104
+ { symbol: 'CO$', name: 'Colombian Peso', symbol_native: '$', decimal_digits: 0, rounding: 0, code: 'COP', name_plural: 'Colombian pesos', key: 'COP' },
105
+ { symbol: '₡', name: 'Costa Rican Colón', symbol_native: '₡', decimal_digits: 0, rounding: 0, code: 'CRC', name_plural: 'Costa Rican colóns', key: 'CRC' },
106
+ { symbol: 'CV$', name: 'Cape Verdean Escudo', symbol_native: 'CV$', decimal_digits: 2, rounding: 0, code: 'CVE', name_plural: 'Cape Verdean escudos', key: 'CVE' },
107
+ { symbol: 'Kč', name: 'Czech Republic Koruna', symbol_native: 'Kč', decimal_digits: 2, rounding: 0, code: 'CZK', name_plural: 'Czech Republic korunas', key: 'CZK' },
108
+ { symbol: 'Fdj', name: 'Djiboutian Franc', symbol_native: 'Fdj', decimal_digits: 0, rounding: 0, code: 'DJF', name_plural: 'Djiboutian francs', key: 'DJF' },
109
+ { symbol: 'Dkr', name: 'Danish Krone', symbol_native: 'kr', decimal_digits: 2, rounding: 0, code: 'DKK', name_plural: 'Danish kroner', key: 'DKK' },
110
+ { symbol: 'RD$', name: 'Dominican Peso', symbol_native: 'RD$', decimal_digits: 2, rounding: 0, code: 'DOP', name_plural: 'Dominican pesos', key: 'DOP' },
111
+ { symbol: 'DA', name: 'Algerian Dinar', symbol_native: 'د.ج.‏', decimal_digits: 2, rounding: 0, code: 'DZD', name_plural: 'Algerian dinars', key: 'DZD' },
112
+ { symbol: 'Ekr', name: 'Estonian Kroon', symbol_native: 'kr', decimal_digits: 2, rounding: 0, code: 'EEK', name_plural: 'Estonian kroons', key: 'EEK' },
113
+ { symbol: 'EGP', name: 'Egyptian Pound', symbol_native: 'ج.م.‏', decimal_digits: 2, rounding: 0, code: 'EGP', name_plural: 'Egyptian pounds', key: 'EGP' },
114
+ { symbol: 'Nfk', name: 'Eritrean Nakfa', symbol_native: 'Nfk', decimal_digits: 2, rounding: 0, code: 'ERN', name_plural: 'Eritrean nakfas', key: 'ERN' },
115
+ { symbol: 'Br', name: 'Ethiopian Birr', symbol_native: 'Br', decimal_digits: 2, rounding: 0, code: 'ETB', name_plural: 'Ethiopian birrs', key: 'ETB' },
116
+ { symbol: '£', name: 'British Pound Sterling', symbol_native: '£', decimal_digits: 2, rounding: 0, code: 'GBP', name_plural: 'British pounds sterling', key: 'GBP' },
117
+ { symbol: 'GEL', name: 'Georgian Lari', symbol_native: 'GEL', decimal_digits: 2, rounding: 0, code: 'GEL', name_plural: 'Georgian laris', key: 'GEL' },
118
+ { symbol: 'GH₵', name: 'Ghanaian Cedi', symbol_native: 'GH₵', decimal_digits: 2, rounding: 0, code: 'GHS', name_plural: 'Ghanaian cedis', key: 'GHS' },
119
+ { symbol: 'FG', name: 'Guinean Franc', symbol_native: 'FG', decimal_digits: 0, rounding: 0, code: 'GNF', name_plural: 'Guinean francs', key: 'GNF' },
120
+ { symbol: 'GTQ', name: 'Guatemalan Quetzal', symbol_native: 'Q', decimal_digits: 2, rounding: 0, code: 'GTQ', name_plural: 'Guatemalan quetzals', key: 'GTQ' },
121
+ { symbol: 'HK$', name: 'Hong Kong Dollar', symbol_native: '$', decimal_digits: 2, rounding: 0, code: 'HKD', name_plural: 'Hong Kong dollars', key: 'HKD' },
122
+ { symbol: 'HNL', name: 'Honduran Lempira', symbol_native: 'L', decimal_digits: 2, rounding: 0, code: 'HNL', name_plural: 'Honduran lempiras', key: 'HNL' },
123
+ { symbol: 'kn', name: 'Croatian Kuna', symbol_native: 'kn', decimal_digits: 2, rounding: 0, code: 'HRK', name_plural: 'Croatian kunas', key: 'HRK' },
124
+ { symbol: 'Ft', name: 'Hungarian Forint', symbol_native: 'Ft', decimal_digits: 0, rounding: 0, code: 'HUF', name_plural: 'Hungarian forints', key: 'HUF' },
125
+ { symbol: 'Rp', name: 'Indonesian Rupiah', symbol_native: 'Rp', decimal_digits: 0, rounding: 0, code: 'IDR', name_plural: 'Indonesian rupiahs', key: 'IDR' },
126
+ { symbol: '₪', name: 'Israeli New Sheqel', symbol_native: '₪', decimal_digits: 2, rounding: 0, code: 'ILS', name_plural: 'Israeli new sheqels', key: 'ILS' },
127
+ { symbol: 'Rs', name: 'Indian Rupee', symbol_native: 'টকা', decimal_digits: 2, rounding: 0, code: 'INR', name_plural: 'Indian rupees', key: 'INR' },
128
+ { symbol: 'IQD', name: 'Iraqi Dinar', symbol_native: 'د.ع.‏', decimal_digits: 0, rounding: 0, code: 'IQD', name_plural: 'Iraqi dinars', key: 'IQD' },
129
+ { symbol: 'IRR', name: 'Iranian Rial', symbol_native: '﷼', decimal_digits: 0, rounding: 0, code: 'IRR', name_plural: 'Iranian rials', key: 'IRR' },
130
+ { symbol: 'Ikr', name: 'Icelandic Króna', symbol_native: 'kr', decimal_digits: 0, rounding: 0, code: 'ISK', name_plural: 'Icelandic krónur', key: 'ISK' },
131
+ { symbol: 'J$', name: 'Jamaican Dollar', symbol_native: '$', decimal_digits: 2, rounding: 0, code: 'JMD', name_plural: 'Jamaican dollars', key: 'JMD' },
132
+ { symbol: 'JD', name: 'Jordanian Dinar', symbol_native: 'د.أ.‏', decimal_digits: 3, rounding: 0, code: 'JOD', name_plural: 'Jordanian dinars', key: 'JOD' },
133
+ { symbol: '¥', name: 'Japanese Yen', symbol_native: '¥', decimal_digits: 0, rounding: 0, code: 'JPY', name_plural: 'Japanese yen', key: 'JPY' },
134
+ { symbol: 'Ksh', name: 'Kenyan Shilling', symbol_native: 'Ksh', decimal_digits: 2, rounding: 0, code: 'KES', name_plural: 'Kenyan shillings', key: 'KES' },
135
+ { symbol: 'KHR', name: 'Cambodian Riel', symbol_native: '៛', decimal_digits: 2, rounding: 0, code: 'KHR', name_plural: 'Cambodian riels', key: 'KHR' },
136
+ { symbol: 'CF', name: 'Comorian Franc', symbol_native: 'FC', decimal_digits: 0, rounding: 0, code: 'KMF', name_plural: 'Comorian francs', key: 'KMF' },
137
+ { symbol: '₩', name: 'South Korean Won', symbol_native: '₩', decimal_digits: 0, rounding: 0, code: 'KRW', name_plural: 'South Korean won', key: 'KRW' },
138
+ { symbol: 'KD', name: 'Kuwaiti Dinar', symbol_native: 'د.ك.‏', decimal_digits: 3, rounding: 0, code: 'KWD', name_plural: 'Kuwaiti dinars', key: 'KWD' },
139
+ { symbol: 'KZT', name: 'Kazakhstani Tenge', symbol_native: 'тңг.', decimal_digits: 2, rounding: 0, code: 'KZT', name_plural: 'Kazakhstani tenges', key: 'KZT' },
140
+ { symbol: 'LB£', name: 'Lebanese Pound', symbol_native: 'ل.ل.‏', decimal_digits: 0, rounding: 0, code: 'LBP', name_plural: 'Lebanese pounds', key: 'LBP' },
141
+ { symbol: 'SLRs', name: 'Sri Lankan Rupee', symbol_native: 'SL Re', decimal_digits: 2, rounding: 0, code: 'LKR', name_plural: 'Sri Lankan rupees', key: 'LKR' },
142
+ { symbol: 'Lt', name: 'Lithuanian Litas', symbol_native: 'Lt', decimal_digits: 2, rounding: 0, code: 'LTL', name_plural: 'Lithuanian litai', key: 'LTL' },
143
+ { symbol: 'Ls', name: 'Latvian Lats', symbol_native: 'Ls', decimal_digits: 2, rounding: 0, code: 'LVL', name_plural: 'Latvian lati', key: 'LVL' },
144
+ { symbol: 'LD', name: 'Libyan Dinar', symbol_native: 'د.ل.‏', decimal_digits: 3, rounding: 0, code: 'LYD', name_plural: 'Libyan dinars', key: 'LYD' },
145
+ { symbol: 'MAD', name: 'Moroccan Dirham', symbol_native: 'د.م.‏', decimal_digits: 2, rounding: 0, code: 'MAD', name_plural: 'Moroccan dirhams', key: 'MAD' },
146
+ { symbol: 'MDL', name: 'Moldovan Leu', symbol_native: 'MDL', decimal_digits: 2, rounding: 0, code: 'MDL', name_plural: 'Moldovan lei', key: 'MDL' },
147
+ { symbol: 'MGA', name: 'Malagasy Ariary', symbol_native: 'MGA', decimal_digits: 0, rounding: 0, code: 'MGA', name_plural: 'Malagasy Ariaries', key: 'MGA' },
148
+ { symbol: 'MKD', name: 'Macedonian Denar', symbol_native: 'MKD', decimal_digits: 2, rounding: 0, code: 'MKD', name_plural: 'Macedonian denari', key: 'MKD' },
149
+ { symbol: 'MMK', name: 'Myanma Kyat', symbol_native: 'K', decimal_digits: 0, rounding: 0, code: 'MMK', name_plural: 'Myanma kyats', key: 'MMK' },
150
+ { symbol: 'MOP$', name: 'Macanese Pataca', symbol_native: 'MOP$', decimal_digits: 2, rounding: 0, code: 'MOP', name_plural: 'Macanese patacas', key: 'MOP' },
151
+ { symbol: 'MURs', name: 'Mauritian Rupee', symbol_native: 'MURs', decimal_digits: 0, rounding: 0, code: 'MUR', name_plural: 'Mauritian rupees', key: 'MUR' },
152
+ { symbol: 'MX$', name: 'Mexican Peso', symbol_native: '$', decimal_digits: 2, rounding: 0, code: 'MXN', name_plural: 'Mexican pesos', key: 'MXN' },
153
+ { symbol: 'RM', name: 'Malaysian Ringgit', symbol_native: 'RM', decimal_digits: 2, rounding: 0, code: 'MYR', name_plural: 'Malaysian ringgits', key: 'MYR' },
154
+ { symbol: 'MTn', name: 'Mozambican Metical', symbol_native: 'MTn', decimal_digits: 2, rounding: 0, code: 'MZN', name_plural: 'Mozambican meticals', key: 'MZN' },
155
+ { symbol: 'N$', name: 'Namibian Dollar', symbol_native: 'N$', decimal_digits: 2, rounding: 0, code: 'NAD', name_plural: 'Namibian dollars', key: 'NAD' },
156
+ { symbol: '₦', name: 'Nigerian Naira', symbol_native: '₦', decimal_digits: 2, rounding: 0, code: 'NGN', name_plural: 'Nigerian nairas', key: 'NGN' },
157
+ { symbol: 'C$', name: 'Nicaraguan Córdoba', symbol_native: 'C$', decimal_digits: 2, rounding: 0, code: 'NIO', name_plural: 'Nicaraguan córdobas', key: 'NIO' },
158
+ { symbol: 'Nkr', name: 'Norwegian Krone', symbol_native: 'kr', decimal_digits: 2, rounding: 0, code: 'NOK', name_plural: 'Norwegian kroner', key: 'NOK' },
159
+ { symbol: 'NPRs', name: 'Nepalese Rupee', symbol_native: 'नेरू', decimal_digits: 2, rounding: 0, code: 'NPR', name_plural: 'Nepalese rupees', key: 'NPR' },
160
+ { symbol: 'NZ$', name: 'New Zealand Dollar', symbol_native: '$', decimal_digits: 2, rounding: 0, code: 'NZD', name_plural: 'New Zealand dollars', key: 'NZD' },
161
+ { symbol: 'OMR', name: 'Omani Rial', symbol_native: 'ر.ع.‏', decimal_digits: 3, rounding: 0, code: 'OMR', name_plural: 'Omani rials', key: 'OMR' },
162
+ { symbol: 'B/.', name: 'Panamanian Balboa', symbol_native: 'B/.', decimal_digits: 2, rounding: 0, code: 'PAB', name_plural: 'Panamanian balboas', key: 'PAB' },
163
+ { symbol: 'S/.', name: 'Peruvian Nuevo Sol', symbol_native: 'S/.', decimal_digits: 2, rounding: 0, code: 'PEN', name_plural: 'Peruvian nuevos soles', key: 'PEN' },
164
+ { symbol: '₱', name: 'Philippine Peso', symbol_native: '₱', decimal_digits: 2, rounding: 0, code: 'PHP', name_plural: 'Philippine pesos', key: 'PHP' },
165
+ { symbol: 'PKRs', name: 'Pakistani Rupee', symbol_native: '₨', decimal_digits: 0, rounding: 0, code: 'PKR', name_plural: 'Pakistani rupees', key: 'PKR' },
166
+ { symbol: 'zł', name: 'Polish Zloty', symbol_native: 'zł', decimal_digits: 2, rounding: 0, code: 'PLN', name_plural: 'Polish zlotys', key: 'PLN' },
167
+ { symbol: '₲', name: 'Paraguayan Guarani', symbol_native: '₲', decimal_digits: 0, rounding: 0, code: 'PYG', name_plural: 'Paraguayan guaranis', key: 'PYG' },
168
+ { symbol: 'QR', name: 'Qatari Rial', symbol_native: 'ر.ق.‏', decimal_digits: 2, rounding: 0, code: 'QAR', name_plural: 'Qatari rials', key: 'QAR' },
169
+ { symbol: 'RON', name: 'Romanian Leu', symbol_native: 'RON', decimal_digits: 2, rounding: 0, code: 'RON', name_plural: 'Romanian lei', key: 'RON' },
170
+ { symbol: 'din.', name: 'Serbian Dinar', symbol_native: 'дин.', decimal_digits: 0, rounding: 0, code: 'RSD', name_plural: 'Serbian dinars', key: 'RSD' },
171
+ { symbol: 'RUB', name: 'Russian Ruble', symbol_native: '₽.', decimal_digits: 2, rounding: 0, code: 'RUB', name_plural: 'Russian rubles', key: 'RUB' },
172
+ { symbol: 'RWF', name: 'Rwandan Franc', symbol_native: 'FR', decimal_digits: 0, rounding: 0, code: 'RWF', name_plural: 'Rwandan francs', key: 'RWF' },
173
+ { symbol: 'SR', name: 'Saudi Riyal', symbol_native: 'ر.س.‏', decimal_digits: 2, rounding: 0, code: 'SAR', name_plural: 'Saudi riyals', key: 'SAR' },
174
+ { symbol: 'SDG', name: 'Sudanese Pound', symbol_native: 'SDG', decimal_digits: 2, rounding: 0, code: 'SDG', name_plural: 'Sudanese pounds', key: 'SDG' },
175
+ { symbol: 'Skr', name: 'Swedish Krona', symbol_native: 'kr', decimal_digits: 2, rounding: 0, code: 'SEK', name_plural: 'Swedish kronor', key: 'SEK' },
176
+ { symbol: 'S$', name: 'Singapore Dollar', symbol_native: '$', decimal_digits: 2, rounding: 0, code: 'SGD', name_plural: 'Singapore dollars', key: 'SGD' },
177
+ { symbol: 'Ssh', name: 'Somali Shilling', symbol_native: 'Ssh', decimal_digits: 0, rounding: 0, code: 'SOS', name_plural: 'Somali shillings', key: 'SOS' },
178
+ { symbol: 'SY£', name: 'Syrian Pound', symbol_native: 'ل.س.‏', decimal_digits: 0, rounding: 0, code: 'SYP', name_plural: 'Syrian pounds', key: 'SYP' },
179
+ { symbol: '฿', name: 'Thai Baht', symbol_native: '฿', decimal_digits: 2, rounding: 0, code: 'THB', name_plural: 'Thai baht', key: 'THB' },
180
+ { symbol: 'DT', name: 'Tunisian Dinar', symbol_native: 'د.ت.‏', decimal_digits: 3, rounding: 0, code: 'TND', name_plural: 'Tunisian dinars', key: 'TND' },
181
+ { symbol: 'T$', name: 'Tongan Paʻanga', symbol_native: 'T$', decimal_digits: 2, rounding: 0, code: 'TOP', name_plural: 'Tongan paʻanga', key: 'TOP' },
182
+ { symbol: 'TL', name: 'Turkish Lira', symbol_native: 'TL', decimal_digits: 2, rounding: 0, code: 'TRY', name_plural: 'Turkish Lira', key: 'TRY' },
183
+ { symbol: 'TT$', name: 'Trinidad and Tobago Dollar', symbol_native: '$', decimal_digits: 2, rounding: 0, code: 'TTD', name_plural: 'Trinidad and Tobago dollars', key: 'TTD' },
184
+ { symbol: 'NT$', name: 'New Taiwan Dollar', symbol_native: 'NT$', decimal_digits: 2, rounding: 0, code: 'TWD', name_plural: 'New Taiwan dollars', key: 'TWD' },
185
+ { symbol: 'TSh', name: 'Tanzanian Shilling', symbol_native: 'TSh', decimal_digits: 0, rounding: 0, code: 'TZS', name_plural: 'Tanzanian shillings', key: 'TZS' },
186
+ { symbol: '₴', name: 'Ukrainian Hryvnia', symbol_native: '₴', decimal_digits: 2, rounding: 0, code: 'UAH', name_plural: 'Ukrainian hryvnias', key: 'UAH' },
187
+ { symbol: 'USh', name: 'Ugandan Shilling', symbol_native: 'USh', decimal_digits: 0, rounding: 0, code: 'UGX', name_plural: 'Ugandan shillings', key: 'UGX' },
188
+ { symbol: '$U', name: 'Uruguayan Peso', symbol_native: '$', decimal_digits: 2, rounding: 0, code: 'UYU', name_plural: 'Uruguayan pesos', key: 'UYU' },
189
+ { symbol: 'UZS', name: 'Uzbekistan Som', symbol_native: 'UZS', decimal_digits: 0, rounding: 0, code: 'UZS', name_plural: 'Uzbekistan som', key: 'UZS' },
190
+ { symbol: 'Bs.F.', name: 'Venezuelan Bolívar', symbol_native: 'Bs.F.', decimal_digits: 2, rounding: 0, code: 'VEF', name_plural: 'Venezuelan bolívars', key: 'VEF' },
191
+ { symbol: '₫', name: 'Vietnamese Dong', symbol_native: '₫', decimal_digits: 0, rounding: 0, code: 'VND', name_plural: 'Vietnamese dong', key: 'VND' },
192
+ { symbol: 'FCFA', name: 'CFA Franc BEAC', symbol_native: 'FCFA', decimal_digits: 0, rounding: 0, code: 'XAF', name_plural: 'CFA francs BEAC', key: 'XAF' },
193
+ { symbol: 'CFA', name: 'CFA Franc BCEAO', symbol_native: 'CFA', decimal_digits: 0, rounding: 0, code: 'XOF', name_plural: 'CFA francs BCEAO', key: 'XOF' },
194
+ { symbol: 'YR', name: 'Yemeni Rial', symbol_native: 'ر.ي.‏', decimal_digits: 0, rounding: 0, code: 'YER', name_plural: 'Yemeni rials', key: 'YER' },
195
+ { symbol: 'R', name: 'South African Rand', symbol_native: 'R', decimal_digits: 2, rounding: 0, code: 'ZAR', name_plural: 'South African rand', key: 'ZAR' },
196
+ { symbol: 'ZK', name: 'Zambian Kwacha', symbol_native: 'ZK', decimal_digits: 0, rounding: 0, code: 'ZMK', name_plural: 'Zambian kwachas', key: 'ZMK' },
197
+ { symbol: 'ZWL$', name: 'Zimbabwean Dollar', symbol_native: 'ZWL$', decimal_digits: 0, rounding: 0, code: 'ZWL', name_plural: 'Zimbabwean Dollar', key: 'ZWL' },
81
198
  ];
82
199
  const dataurrenciesSupportData = [];
83
200
  currenciesSupport().forEach((key) => {
84
- const found = data.find(item => item.key === key);
201
+ const found = data.find((item) => item.key === key);
85
202
  if (found) {
86
203
  dataurrenciesSupportData.push(found);
87
204
  }
@@ -89,10 +206,193 @@ const currenciesOptions = (objectPattern = { key: 'key', label: 'code' }) => {
89
206
  return convertObjectOfArray(objectPattern, dataurrenciesSupportData);
90
207
  };
91
208
  const langOptions = (objectPattern = { key: 'key', label: 'nativeName' }) => {
92
- const data = [{ 'name': 'Abkhaz', 'nativeName': 'аҧсуа', 'key': 'ab' }, { 'name': 'Afar', 'nativeName': 'Afaraf', 'key': 'aa' }, { 'name': 'Afrikaans', 'nativeName': 'Afrikaans', 'key': 'af' }, { 'name': 'Akan', 'nativeName': 'Akan', 'key': 'ak' }, { 'name': 'Albanian', 'nativeName': 'Shqip', 'key': 'sq' }, { 'name': 'Amharic', 'nativeName': 'አማርኛ', 'key': 'am' }, { 'name': 'Arabic', 'nativeName': 'العربية', 'key': 'ar' }, { 'name': 'Aragonese', 'nativeName': 'Aragonés', 'key': 'an' }, { 'name': 'Armenian', 'nativeName': 'Հայերեն', 'key': 'hy' }, { 'name': 'Assamese', 'nativeName': 'অসমীয়া', 'key': 'as' }, { 'name': 'Avaric', 'nativeName': 'авар мацӀ, магӀарул мацӀ', 'key': 'av' }, { 'name': 'Avestan', 'nativeName': 'avesta', 'key': 'ae' }, { 'name': 'Aymara', 'nativeName': 'aymar aru', 'key': 'ay' }, { 'name': 'Azerbaijani', 'nativeName': 'azərbaycan dili', 'key': 'az' }, { 'name': 'Bambara', 'nativeName': 'bamanankan', 'key': 'bm' }, { 'name': 'Bashkir', 'nativeName': 'башҡорт теле', 'key': 'ba' }, { 'name': 'Basque', 'nativeName': 'euskara, euskera', 'key': 'eu' }, { 'name': 'Belarusian', 'nativeName': 'Беларуская', 'key': 'be' }, { 'name': 'Bengali', 'nativeName': 'বাংলা', 'key': 'bn' }, { 'name': 'Bihari', 'nativeName': 'भोजपुरी', 'key': 'bh' }, { 'name': 'Bislama', 'nativeName': 'Bislama', 'key': 'bi' }, { 'name': 'Bosnian', 'nativeName': 'bosanski jezik', 'key': 'bs' }, { 'name': 'Breton', 'nativeName': 'brezhoneg', 'key': 'br' }, { 'name': 'Bulgarian', 'nativeName': 'български език', 'key': 'bg' }, { 'name': 'Burmese', 'nativeName': 'ဗမာစာ', 'key': 'my' }, { 'name': 'Catalan; Valencian', 'nativeName': 'Català', 'key': 'ca' }, { 'name': 'Chamorro', 'nativeName': 'Chamoru', 'key': 'ch' }, { 'name': 'Chechen', 'nativeName': 'нохчийн мотт', 'key': 'ce' }, { 'name': 'Chichewa; Chewa; Nyanja', 'nativeName': 'chiCheŵa, chinyanja', 'key': 'ny' }, { 'name': 'Chinese', 'nativeName': '中文 (Zhōngwén), 汉语, 漢語', 'key': 'zh' }, { 'name': 'Chuvash', 'nativeName': 'чӑваш чӗлхи', 'key': 'cv' }, { 'name': 'Cornish', 'nativeName': 'Kernewek', 'key': 'kw' }, { 'name': 'Corsican', 'nativeName': 'corsu, lingua corsa', 'key': 'co' }, { 'name': 'Cree', 'nativeName': 'ᓀᐦᐃᔭᐍᐏᐣ', 'key': 'cr' }, { 'name': 'Croatian', 'nativeName': 'hrvatski', 'key': 'hr' }, { 'name': 'Czech', 'nativeName': 'česky, čeština', 'key': 'cs' }, { 'name': 'Danish', 'nativeName': 'dansk', 'key': 'da' }, { 'name': 'Divehi; Dhivehi; Maldivian;', 'nativeName': 'ދިވެހި', 'key': 'dv' }, { 'name': 'Dutch', 'nativeName': 'Nederlands, Vlaams', 'key': 'nl' }, { 'name': 'English', 'nativeName': 'English', 'key': 'en' }, { 'name': 'Esperanto', 'nativeName': 'Esperanto', 'key': 'eo' }, { 'name': 'Estonian', 'nativeName': 'eesti, eesti keel', 'key': 'et' }, { 'name': 'Ewe', 'nativeName': 'Eʋegbe', 'key': 'ee' }, { 'name': 'Faroese', 'nativeName': 'føroyskt', 'key': 'fo' }, { 'name': 'Fijian', 'nativeName': 'vosa Vakaviti', 'key': 'fj' }, { 'name': 'Finnish', 'nativeName': 'suomi, suomen kieli', 'key': 'fi' }, { 'name': 'French', 'nativeName': 'français, langue française', 'key': 'fr' }, { 'name': 'Fula; Fulah; Pulaar; Pular', 'nativeName': 'Fulfulde, Pulaar, Pular', 'key': 'ff' }, { 'name': 'Galician', 'nativeName': 'Galego', 'key': 'gl' }, { 'name': 'Georgian', 'nativeName': 'ქართული', 'key': 'ka' }, { 'name': 'German', 'nativeName': 'Deutsch', 'key': 'de' }, { 'name': 'Greek, Modern', 'nativeName': 'Ελληνικά', 'key': 'el' }, { 'name': 'Guaraní', 'nativeName': 'Avañeẽ', 'key': 'gn' }, { 'name': 'Gujarati', 'nativeName': 'ગુજરાતી', 'key': 'gu' }, { 'name': 'Haitian; Haitian Creole', 'nativeName': 'Kreyòl ayisyen', 'key': 'ht' }, { 'name': 'Hausa', 'nativeName': 'Hausa, هَوُسَ', 'key': 'ha' }, { 'name': 'Hebrew (modern)', 'nativeName': 'עברית', 'key': 'he' }, { 'name': 'Herero', 'nativeName': 'Otjiherero', 'key': 'hz' }, { 'name': 'Hindi', 'nativeName': 'हिन्दी, हिंदी', 'key': 'hi' }, { 'name': 'Hiri Motu', 'nativeName': 'Hiri Motu', 'key': 'ho' }, { 'name': 'Hungarian', 'nativeName': 'Magyar', 'key': 'hu' }, { 'name': 'Interlingua', 'nativeName': 'Interlingua', 'key': 'ia' }, { 'name': 'Indonesian', 'nativeName': 'Bahasa Indonesia', 'key': 'id' }, { 'name': 'Interlingue', 'nativeName': 'Originally called Occidental; then Interlingue after WWII', 'key': 'ie' }, { 'name': 'Irish', 'nativeName': 'Gaeilge', 'key': 'ga' }, { 'name': 'Igbo', 'nativeName': 'Asụsụ Igbo', 'key': 'ig' }, { 'name': 'Inupiaq', 'nativeName': 'Iñupiaq, Iñupiatun', 'key': 'ik' }, { 'name': 'Ido', 'nativeName': 'Ido', 'key': 'io' }, { 'name': 'Icelandic', 'nativeName': 'Íslenska', 'key': 'is' }, { 'name': 'Italian', 'nativeName': 'Italiano', 'key': 'it' }, { 'name': 'Inuktitut', 'nativeName': 'ᐃᓄᒃᑎᑐᑦ', 'key': 'iu' }, { 'name': 'Japanese', 'nativeName': '日本語 (にほんご/にっぽんご)', 'key': 'ja' }, { 'name': 'Javanese', 'nativeName': 'basa Jawa', 'key': 'jv' }, { 'name': 'Kalaallisut, Greenlandic', 'nativeName': 'kalaallisut, kalaallit oqaasii', 'key': 'kl' }, { 'name': 'Kannada', 'nativeName': 'ಕನ್ನಡ', 'key': 'kn' }, { 'name': 'Kanuri', 'nativeName': 'Kanuri', 'key': 'kr' }, { 'name': 'Kashmiri', 'nativeName': 'कश्मीरी, كشميري‎', 'key': 'ks' }, { 'name': 'Kazakh', 'nativeName': 'Қазақ тілі', 'key': 'kk' }, { 'name': 'Khmer', 'nativeName': 'ភាសាខ្មែរ', 'key': 'km' }, { 'name': 'Kikuyu, Gikuyu', 'nativeName': 'Gĩkũyũ', 'key': 'ki' }, { 'name': 'Kinyarwanda', 'nativeName': 'Ikinyarwanda', 'key': 'rw' }, { 'name': 'Kirghiz, Kyrgyz', 'nativeName': 'кыргыз тили', 'key': 'ky' }, { 'name': 'Komi', 'nativeName': 'коми кыв', 'key': 'kv' }, { 'name': 'Kongo', 'nativeName': 'KiKongo', 'key': 'kg' }, { 'name': 'Korean', 'nativeName': '한국어 (韓國語), 조선말 (朝鮮語)', 'key': 'ko' }, { 'name': 'Kurdish', 'nativeName': 'Kurdî, كوردی‎', 'key': 'ku' }, { 'name': 'Kwanyama, Kuanyama', 'nativeName': 'Kuanyama', 'key': 'kj' }, { 'name': 'Latin', 'nativeName': 'latine, lingua latina', 'key': 'la' }, { 'name': 'Luxembourgish, Letzeburgesch', 'nativeName': 'Lëtzebuergesch', 'key': 'lb' }, { 'name': 'Luganda', 'nativeName': 'Luganda', 'key': 'lg' }, { 'name': 'Limburgish, Limburgan, Limburger', 'nativeName': 'Limburgs', 'key': 'li' }, { 'name': 'Lingala', 'nativeName': 'Lingála', 'key': 'ln' }, { 'name': 'Lao', 'nativeName': 'ພາສາລາວ', 'key': 'lo' }, { 'name': 'Lithuanian', 'nativeName': 'lietuvių kalba', 'key': 'lt' }, { 'name': 'Luba-Katanga', 'nativeName': 'Luba-Katanga', 'key': 'lu' }, { 'name': 'Latvian', 'nativeName': 'latviešu valoda', 'key': 'lv' }, { 'name': 'Manx', 'nativeName': 'Gaelg, Gailck', 'key': 'gv' }, { 'name': 'Macedonian', 'nativeName': 'македонски јазик', 'key': 'mk' }, { 'name': 'Malagasy', 'nativeName': 'Malagasy fiteny', 'key': 'mg' }, { 'name': 'Malay', 'nativeName': 'bahasa Melayu, بهاس ملايو‎', 'key': 'ms' }, { 'name': 'Malayalam', 'nativeName': 'മലയാളം', 'key': 'ml' }, { 'name': 'Maltese', 'nativeName': 'Malti', 'key': 'mt' }, { 'name': 'Māori', 'nativeName': 'te reo Māori', 'key': 'mi' }, { 'name': 'Marathi (Marāṭhī)', 'nativeName': 'मराठी', 'key': 'mr' }, { 'name': 'Marshallese', 'nativeName': 'Kajin M̧ajeļ', 'key': 'mh' }, { 'name': 'Mongolian', 'nativeName': 'монгол', 'key': 'mn' }, { 'name': 'Nauru', 'nativeName': 'Ekakairũ Naoero', 'key': 'na' }, { 'name': 'Navajo, Navaho', 'nativeName': 'Diné bizaad, Dinékʼehǰí', 'key': 'nv' }, { 'name': 'Norwegian Bokmål', 'nativeName': 'Norsk bokmål', 'key': 'nb' }, { 'name': 'North Ndebele', 'nativeName': 'isiNdebele', 'key': 'nd' }, { 'name': 'Nepali', 'nativeName': 'नेपाली', 'key': 'ne' }, { 'name': 'Ndonga', 'nativeName': 'Owambo', 'key': 'ng' }, { 'name': 'Norwegian Nynorsk', 'nativeName': 'Norsk nynorsk', 'key': 'nn' }, { 'name': 'Norwegian', 'nativeName': 'Norsk', 'key': 'no' }, { 'name': 'Nuosu', 'nativeName': 'ꆈꌠ꒿ Nuosuhxop', 'key': 'ii' }, { 'name': 'South Ndebele', 'nativeName': 'isiNdebele', 'key': 'nr' }, { 'name': 'Occitan', 'nativeName': 'Occitan', 'key': 'oc' }, { 'name': 'Ojibwe, Ojibwa', 'nativeName': 'ᐊᓂᔑᓈᐯᒧᐎᓐ', 'key': 'oj' }, { 'name': 'Old Church Slavonic, Church Slavic, Church Slavonic, Old Bulgarian, Old Slavonic', 'nativeName': 'ѩзыкъ словѣньскъ', 'key': 'cu' }, { 'name': 'Oromo', 'nativeName': 'Afaan Oromoo', 'key': 'om' }, { 'name': 'Oriya', 'nativeName': 'ଓଡ଼ିଆ', 'key': 'or' }, { 'name': 'Ossetian, Ossetic', 'nativeName': 'ирон æвзаг', 'key': 'os' }, { 'name': 'Panjabi, Punjabi', 'nativeName': 'ਪੰਜਾਬੀ, پنجابی‎', 'key': 'pa' }, { 'name': 'Pāli', 'nativeName': 'पाऴि', 'key': 'pi' }, { 'name': 'Persian', 'nativeName': 'فارسی', 'key': 'fa' }, { 'name': 'Polish', 'nativeName': 'polski', 'key': 'pl' }, { 'name': 'Pashto, Pushto', 'nativeName': 'پښتو', 'key': 'ps' }, { 'name': 'Portuguese', 'nativeName': 'Português', 'key': 'pt' }, { 'name': 'Quechua', 'nativeName': 'Runa Simi, Kichwa', 'key': 'qu' }, { 'name': 'Romansh', 'nativeName': 'rumantsch grischun', 'key': 'rm' }, { 'name': 'Kirundi', 'nativeName': 'kiRundi', 'key': 'rn' }, { 'name': 'Romanian, Moldavian, Moldovan', 'nativeName': 'română', 'key': 'ro' }, { 'name': 'Russian', 'nativeName': 'русский язык', 'key': 'ru' }, { 'name': 'Sanskrit (Saṁskṛta)', 'nativeName': 'संस्कृतम्', 'key': 'sa' }, { 'name': 'Sardinian', 'nativeName': 'sardu', 'key': 'sc' }, { 'name': 'Sindhi', 'nativeName': 'सिन्धी, سنڌي، سندھی‎', 'key': 'sd' }, { 'name': 'Northern Sami', 'nativeName': 'Davvisámegiella', 'key': 'se' }, { 'name': 'Samoan', 'nativeName': 'gagana faa Samoa', 'key': 'sm' }, { 'name': 'Sango', 'nativeName': 'yângâ tî sängö', 'key': 'sg' }, { 'name': 'Serbian', 'nativeName': 'српски језик', 'key': 'sr' }, { 'name': 'Scottish Gaelic; Gaelic', 'nativeName': 'Gàidhlig', 'key': 'gd' }, { 'name': 'Shona', 'nativeName': 'chiShona', 'key': 'sn' }, { 'name': 'Sinhala, Sinhalese', 'nativeName': 'සිංහල', 'key': 'si' }, { 'name': 'Slovak', 'nativeName': 'slovenčina', 'key': 'sk' }, { 'name': 'Slovene', 'nativeName': 'slovenščina', 'key': 'sl' }, { 'name': 'Somali', 'nativeName': 'Soomaaliga, af Soomaali', 'key': 'so' }, { 'name': 'Southern Sotho', 'nativeName': 'Sesotho', 'key': 'st' }, { 'name': 'Spanish; Castilian', 'nativeName': 'español, castellano', 'key': 'es' }, { 'name': 'Sundanese', 'nativeName': 'Basa Sunda', 'key': 'su' }, { 'name': 'Swahili', 'nativeName': 'Kiswahili', 'key': 'sw' }, { 'name': 'Swati', 'nativeName': 'SiSwati', 'key': 'ss' }, { 'name': 'Swedish', 'nativeName': 'svenska', 'key': 'sv' }, { 'name': 'Tamil', 'nativeName': 'தமிழ்', 'key': 'ta' }, { 'name': 'Telugu', 'nativeName': 'తెలుగు', 'key': 'te' }, { 'name': 'Tajik', 'nativeName': 'тоҷикӣ, toğikī, تاجیکی‎', 'key': 'tg' }, { 'name': 'Thai', 'nativeName': 'ไทย', 'key': 'th' }, { 'name': 'Tigrinya', 'nativeName': 'ትግርኛ', 'key': 'ti' }, { 'name': 'Tibetan Standard, Tibetan, Central', 'nativeName': 'བོད་ཡིག', 'key': 'bo' }, { 'name': 'Turkmen', 'nativeName': 'Türkmen, Түркмен', 'key': 'tk' }, { 'name': 'Tagalog', 'nativeName': 'Wikang Tagalog, ᜏᜒᜃᜅ᜔ ᜆᜄᜎᜓᜄ᜔', 'key': 'tl' }, { 'name': 'Tswana', 'nativeName': 'Setswana', 'key': 'tn' }, { 'name': 'Tonga (Tonga Islands)', 'nativeName': 'faka Tonga', 'key': 'to' }, { 'name': 'Turkish', 'nativeName': 'Türkçe', 'key': 'tr' }, { 'name': 'Tsonga', 'nativeName': 'Xitsonga', 'key': 'ts' }, { 'name': 'Tatar', 'nativeName': 'татарча, tatarça, تاتارچا‎', 'key': 'tt' }, { 'name': 'Twi', 'nativeName': 'Twi', 'key': 'tw' }, { 'name': 'Tahitian', 'nativeName': 'Reo Tahiti', 'key': 'ty' }, { 'name': 'Uighur, Uyghur', 'nativeName': 'Uyƣurqə, ئۇيغۇرچە‎', 'key': 'ug' }, { 'name': 'Ukrainian', 'nativeName': 'українська', 'key': 'uk' }, { 'name': 'Urdu', 'nativeName': 'اردو', 'key': 'ur' }, { 'name': 'Uzbek', 'nativeName': 'zbek, Ўзбек, أۇزبېك‎', 'key': 'uz' }, { 'name': 'Venda', 'nativeName': 'Tshivenḓa', 'key': 've' }, { 'name': 'Vietnamese', 'nativeName': 'Tiếng Việt', 'key': 'vi' }, { 'name': 'Volapük', 'nativeName': 'Volapük', 'key': 'vo' }, { 'name': 'Walloon', 'nativeName': 'Walon', 'key': 'wa' }, { 'name': 'Welsh', 'nativeName': 'Cymraeg', 'key': 'cy' }, { 'name': 'Wolof', 'nativeName': 'Wollof', 'key': 'wo' }, { 'name': 'Western Frisian', 'nativeName': 'Frysk', 'key': 'fy' }, { 'name': 'Xhosa', 'nativeName': 'isiXhosa', 'key': 'xh' }, { 'name': 'Yiddish', 'nativeName': 'ייִדיש', 'key': 'yi' }, { 'name': 'Yoruba', 'nativeName': 'Yorùbá', 'key': 'yo' }, { 'name': 'Zhuang, Chuang', 'nativeName': 'Saɯ cueŋƅ, Saw cuengh', 'key': 'za' }];
209
+ const data = [
210
+ { name: 'Abkhaz', nativeName: 'аҧсуа', key: 'ab' },
211
+ { name: 'Afar', nativeName: 'Afaraf', key: 'aa' },
212
+ { name: 'Afrikaans', nativeName: 'Afrikaans', key: 'af' },
213
+ { name: 'Akan', nativeName: 'Akan', key: 'ak' },
214
+ { name: 'Albanian', nativeName: 'Shqip', key: 'sq' },
215
+ { name: 'Amharic', nativeName: 'አማርኛ', key: 'am' },
216
+ { name: 'Arabic', nativeName: 'العربية', key: 'ar' },
217
+ { name: 'Aragonese', nativeName: 'Aragonés', key: 'an' },
218
+ { name: 'Armenian', nativeName: 'Հայերեն', key: 'hy' },
219
+ { name: 'Assamese', nativeName: 'অসমীয়া', key: 'as' },
220
+ { name: 'Avaric', nativeName: 'авар мацӀ, магӀарул мацӀ', key: 'av' },
221
+ { name: 'Avestan', nativeName: 'avesta', key: 'ae' },
222
+ { name: 'Aymara', nativeName: 'aymar aru', key: 'ay' },
223
+ { name: 'Azerbaijani', nativeName: 'azərbaycan dili', key: 'az' },
224
+ { name: 'Bambara', nativeName: 'bamanankan', key: 'bm' },
225
+ { name: 'Bashkir', nativeName: 'башҡорт теле', key: 'ba' },
226
+ { name: 'Basque', nativeName: 'euskara, euskera', key: 'eu' },
227
+ { name: 'Belarusian', nativeName: 'Беларуская', key: 'be' },
228
+ { name: 'Bengali', nativeName: 'বাংলা', key: 'bn' },
229
+ { name: 'Bihari', nativeName: 'भोजपुरी', key: 'bh' },
230
+ { name: 'Bislama', nativeName: 'Bislama', key: 'bi' },
231
+ { name: 'Bosnian', nativeName: 'bosanski jezik', key: 'bs' },
232
+ { name: 'Breton', nativeName: 'brezhoneg', key: 'br' },
233
+ { name: 'Bulgarian', nativeName: 'български език', key: 'bg' },
234
+ { name: 'Burmese', nativeName: 'ဗမာစာ', key: 'my' },
235
+ { name: 'Catalan; Valencian', nativeName: 'Català', key: 'ca' },
236
+ { name: 'Chamorro', nativeName: 'Chamoru', key: 'ch' },
237
+ { name: 'Chechen', nativeName: 'нохчийн мотт', key: 'ce' },
238
+ { name: 'Chichewa; Chewa; Nyanja', nativeName: 'chiCheŵa, chinyanja', key: 'ny' },
239
+ { name: 'Chinese', nativeName: '中文 (Zhōngwén), 汉语, 漢語', key: 'zh' },
240
+ { name: 'Chuvash', nativeName: 'чӑваш чӗлхи', key: 'cv' },
241
+ { name: 'Cornish', nativeName: 'Kernewek', key: 'kw' },
242
+ { name: 'Corsican', nativeName: 'corsu, lingua corsa', key: 'co' },
243
+ { name: 'Cree', nativeName: 'ᓀᐦᐃᔭᐍᐏᐣ', key: 'cr' },
244
+ { name: 'Croatian', nativeName: 'hrvatski', key: 'hr' },
245
+ { name: 'Czech', nativeName: 'česky, čeština', key: 'cs' },
246
+ { name: 'Danish', nativeName: 'dansk', key: 'da' },
247
+ { name: 'Divehi; Dhivehi; Maldivian;', nativeName: 'ދިވެހި', key: 'dv' },
248
+ { name: 'Dutch', nativeName: 'Nederlands, Vlaams', key: 'nl' },
249
+ { name: 'English', nativeName: 'English', key: 'en' },
250
+ { name: 'Esperanto', nativeName: 'Esperanto', key: 'eo' },
251
+ { name: 'Estonian', nativeName: 'eesti, eesti keel', key: 'et' },
252
+ { name: 'Ewe', nativeName: 'Eʋegbe', key: 'ee' },
253
+ { name: 'Faroese', nativeName: 'føroyskt', key: 'fo' },
254
+ { name: 'Fijian', nativeName: 'vosa Vakaviti', key: 'fj' },
255
+ { name: 'Finnish', nativeName: 'suomi, suomen kieli', key: 'fi' },
256
+ { name: 'French', nativeName: 'français, langue française', key: 'fr' },
257
+ { name: 'Fula; Fulah; Pulaar; Pular', nativeName: 'Fulfulde, Pulaar, Pular', key: 'ff' },
258
+ { name: 'Galician', nativeName: 'Galego', key: 'gl' },
259
+ { name: 'Georgian', nativeName: 'ქართული', key: 'ka' },
260
+ { name: 'German', nativeName: 'Deutsch', key: 'de' },
261
+ { name: 'Greek, Modern', nativeName: 'Ελληνικά', key: 'el' },
262
+ { name: 'Guaraní', nativeName: 'Avañeẽ', key: 'gn' },
263
+ { name: 'Gujarati', nativeName: 'ગુજરાતી', key: 'gu' },
264
+ { name: 'Haitian; Haitian Creole', nativeName: 'Kreyòl ayisyen', key: 'ht' },
265
+ { name: 'Hausa', nativeName: 'Hausa, هَوُسَ', key: 'ha' },
266
+ { name: 'Hebrew (modern)', nativeName: 'עברית', key: 'he' },
267
+ { name: 'Herero', nativeName: 'Otjiherero', key: 'hz' },
268
+ { name: 'Hindi', nativeName: 'हिन्दी, हिंदी', key: 'hi' },
269
+ { name: 'Hiri Motu', nativeName: 'Hiri Motu', key: 'ho' },
270
+ { name: 'Hungarian', nativeName: 'Magyar', key: 'hu' },
271
+ { name: 'Interlingua', nativeName: 'Interlingua', key: 'ia' },
272
+ { name: 'Indonesian', nativeName: 'Bahasa Indonesia', key: 'id' },
273
+ { name: 'Interlingue', nativeName: 'Originally called Occidental; then Interlingue after WWII', key: 'ie' },
274
+ { name: 'Irish', nativeName: 'Gaeilge', key: 'ga' },
275
+ { name: 'Igbo', nativeName: 'Asụsụ Igbo', key: 'ig' },
276
+ { name: 'Inupiaq', nativeName: 'Iñupiaq, Iñupiatun', key: 'ik' },
277
+ { name: 'Ido', nativeName: 'Ido', key: 'io' },
278
+ { name: 'Icelandic', nativeName: 'Íslenska', key: 'is' },
279
+ { name: 'Italian', nativeName: 'Italiano', key: 'it' },
280
+ { name: 'Inuktitut', nativeName: 'ᐃᓄᒃᑎᑐᑦ', key: 'iu' },
281
+ { name: 'Japanese', nativeName: '日本語 (にほんご/にっぽんご)', key: 'ja' },
282
+ { name: 'Javanese', nativeName: 'basa Jawa', key: 'jv' },
283
+ { name: 'Kalaallisut, Greenlandic', nativeName: 'kalaallisut, kalaallit oqaasii', key: 'kl' },
284
+ { name: 'Kannada', nativeName: 'ಕನ್ನಡ', key: 'kn' },
285
+ { name: 'Kanuri', nativeName: 'Kanuri', key: 'kr' },
286
+ { name: 'Kashmiri', nativeName: 'कश्मीरी, كشميري‎', key: 'ks' },
287
+ { name: 'Kazakh', nativeName: 'Қазақ тілі', key: 'kk' },
288
+ { name: 'Khmer', nativeName: 'ភាសាខ្មែរ', key: 'km' },
289
+ { name: 'Kikuyu, Gikuyu', nativeName: 'Gĩkũyũ', key: 'ki' },
290
+ { name: 'Kinyarwanda', nativeName: 'Ikinyarwanda', key: 'rw' },
291
+ { name: 'Kirghiz, Kyrgyz', nativeName: 'кыргыз тили', key: 'ky' },
292
+ { name: 'Komi', nativeName: 'коми кыв', key: 'kv' },
293
+ { name: 'Kongo', nativeName: 'KiKongo', key: 'kg' },
294
+ { name: 'Korean', nativeName: '한국어 (韓國語), 조선말 (朝鮮語)', key: 'ko' },
295
+ { name: 'Kurdish', nativeName: 'Kurdî, كوردی‎', key: 'ku' },
296
+ { name: 'Kwanyama, Kuanyama', nativeName: 'Kuanyama', key: 'kj' },
297
+ { name: 'Latin', nativeName: 'latine, lingua latina', key: 'la' },
298
+ { name: 'Luxembourgish, Letzeburgesch', nativeName: 'Lëtzebuergesch', key: 'lb' },
299
+ { name: 'Luganda', nativeName: 'Luganda', key: 'lg' },
300
+ { name: 'Limburgish, Limburgan, Limburger', nativeName: 'Limburgs', key: 'li' },
301
+ { name: 'Lingala', nativeName: 'Lingála', key: 'ln' },
302
+ { name: 'Lao', nativeName: 'ພາສາລາວ', key: 'lo' },
303
+ { name: 'Lithuanian', nativeName: 'lietuvių kalba', key: 'lt' },
304
+ { name: 'Luba-Katanga', nativeName: 'Luba-Katanga', key: 'lu' },
305
+ { name: 'Latvian', nativeName: 'latviešu valoda', key: 'lv' },
306
+ { name: 'Manx', nativeName: 'Gaelg, Gailck', key: 'gv' },
307
+ { name: 'Macedonian', nativeName: 'македонски јазик', key: 'mk' },
308
+ { name: 'Malagasy', nativeName: 'Malagasy fiteny', key: 'mg' },
309
+ { name: 'Malay', nativeName: 'bahasa Melayu, بهاس ملايو‎', key: 'ms' },
310
+ { name: 'Malayalam', nativeName: 'മലയാളം', key: 'ml' },
311
+ { name: 'Maltese', nativeName: 'Malti', key: 'mt' },
312
+ { name: 'Māori', nativeName: 'te reo Māori', key: 'mi' },
313
+ { name: 'Marathi (Marāṭhī)', nativeName: 'मराठी', key: 'mr' },
314
+ { name: 'Marshallese', nativeName: 'Kajin M̧ajeļ', key: 'mh' },
315
+ { name: 'Mongolian', nativeName: 'монгол', key: 'mn' },
316
+ { name: 'Nauru', nativeName: 'Ekakairũ Naoero', key: 'na' },
317
+ { name: 'Navajo, Navaho', nativeName: 'Diné bizaad, Dinékʼehǰí', key: 'nv' },
318
+ { name: 'Norwegian Bokmål', nativeName: 'Norsk bokmål', key: 'nb' },
319
+ { name: 'North Ndebele', nativeName: 'isiNdebele', key: 'nd' },
320
+ { name: 'Nepali', nativeName: 'नेपाली', key: 'ne' },
321
+ { name: 'Ndonga', nativeName: 'Owambo', key: 'ng' },
322
+ { name: 'Norwegian Nynorsk', nativeName: 'Norsk nynorsk', key: 'nn' },
323
+ { name: 'Norwegian', nativeName: 'Norsk', key: 'no' },
324
+ { name: 'Nuosu', nativeName: 'ꆈꌠ꒿ Nuosuhxop', key: 'ii' },
325
+ { name: 'South Ndebele', nativeName: 'isiNdebele', key: 'nr' },
326
+ { name: 'Occitan', nativeName: 'Occitan', key: 'oc' },
327
+ { name: 'Ojibwe, Ojibwa', nativeName: 'ᐊᓂᔑᓈᐯᒧᐎᓐ', key: 'oj' },
328
+ { name: 'Old Church Slavonic, Church Slavic, Church Slavonic, Old Bulgarian, Old Slavonic', nativeName: 'ѩзыкъ словѣньскъ', key: 'cu' },
329
+ { name: 'Oromo', nativeName: 'Afaan Oromoo', key: 'om' },
330
+ { name: 'Oriya', nativeName: 'ଓଡ଼ିଆ', key: 'or' },
331
+ { name: 'Ossetian, Ossetic', nativeName: 'ирон æвзаг', key: 'os' },
332
+ { name: 'Panjabi, Punjabi', nativeName: 'ਪੰਜਾਬੀ, پنجابی‎', key: 'pa' },
333
+ { name: 'Pāli', nativeName: 'पाऴि', key: 'pi' },
334
+ { name: 'Persian', nativeName: 'فارسی', key: 'fa' },
335
+ { name: 'Polish', nativeName: 'polski', key: 'pl' },
336
+ { name: 'Pashto, Pushto', nativeName: 'پښتو', key: 'ps' },
337
+ { name: 'Portuguese', nativeName: 'Português', key: 'pt' },
338
+ { name: 'Quechua', nativeName: 'Runa Simi, Kichwa', key: 'qu' },
339
+ { name: 'Romansh', nativeName: 'rumantsch grischun', key: 'rm' },
340
+ { name: 'Kirundi', nativeName: 'kiRundi', key: 'rn' },
341
+ { name: 'Romanian, Moldavian, Moldovan', nativeName: 'română', key: 'ro' },
342
+ { name: 'Russian', nativeName: 'русский язык', key: 'ru' },
343
+ { name: 'Sanskrit (Saṁskṛta)', nativeName: 'संस्कृतम्', key: 'sa' },
344
+ { name: 'Sardinian', nativeName: 'sardu', key: 'sc' },
345
+ { name: 'Sindhi', nativeName: 'सिन्धी, سنڌي، سندھی‎', key: 'sd' },
346
+ { name: 'Northern Sami', nativeName: 'Davvisámegiella', key: 'se' },
347
+ { name: 'Samoan', nativeName: 'gagana faa Samoa', key: 'sm' },
348
+ { name: 'Sango', nativeName: 'yângâ tî sängö', key: 'sg' },
349
+ { name: 'Serbian', nativeName: 'српски језик', key: 'sr' },
350
+ { name: 'Scottish Gaelic; Gaelic', nativeName: 'Gàidhlig', key: 'gd' },
351
+ { name: 'Shona', nativeName: 'chiShona', key: 'sn' },
352
+ { name: 'Sinhala, Sinhalese', nativeName: 'සිංහල', key: 'si' },
353
+ { name: 'Slovak', nativeName: 'slovenčina', key: 'sk' },
354
+ { name: 'Slovene', nativeName: 'slovenščina', key: 'sl' },
355
+ { name: 'Somali', nativeName: 'Soomaaliga, af Soomaali', key: 'so' },
356
+ { name: 'Southern Sotho', nativeName: 'Sesotho', key: 'st' },
357
+ { name: 'Spanish; Castilian', nativeName: 'español, castellano', key: 'es' },
358
+ { name: 'Sundanese', nativeName: 'Basa Sunda', key: 'su' },
359
+ { name: 'Swahili', nativeName: 'Kiswahili', key: 'sw' },
360
+ { name: 'Swati', nativeName: 'SiSwati', key: 'ss' },
361
+ { name: 'Swedish', nativeName: 'svenska', key: 'sv' },
362
+ { name: 'Tamil', nativeName: 'தமிழ்', key: 'ta' },
363
+ { name: 'Telugu', nativeName: 'తెలుగు', key: 'te' },
364
+ { name: 'Tajik', nativeName: 'тоҷикӣ, toğikī, تاجیکی‎', key: 'tg' },
365
+ { name: 'Thai', nativeName: 'ไทย', key: 'th' },
366
+ { name: 'Tigrinya', nativeName: 'ትግርኛ', key: 'ti' },
367
+ { name: 'Tibetan Standard, Tibetan, Central', nativeName: 'བོད་ཡིག', key: 'bo' },
368
+ { name: 'Turkmen', nativeName: 'Türkmen, Түркмен', key: 'tk' },
369
+ { name: 'Tagalog', nativeName: 'Wikang Tagalog, ᜏᜒᜃᜅ᜔ ᜆᜄᜎᜓᜄ᜔', key: 'tl' },
370
+ { name: 'Tswana', nativeName: 'Setswana', key: 'tn' },
371
+ { name: 'Tonga (Tonga Islands)', nativeName: 'faka Tonga', key: 'to' },
372
+ { name: 'Turkish', nativeName: 'Türkçe', key: 'tr' },
373
+ { name: 'Tsonga', nativeName: 'Xitsonga', key: 'ts' },
374
+ { name: 'Tatar', nativeName: 'татарча, tatarça, تاتارچا‎', key: 'tt' },
375
+ { name: 'Twi', nativeName: 'Twi', key: 'tw' },
376
+ { name: 'Tahitian', nativeName: 'Reo Tahiti', key: 'ty' },
377
+ { name: 'Uighur, Uyghur', nativeName: 'Uyƣurqə, ئۇيغۇرچە‎', key: 'ug' },
378
+ { name: 'Ukrainian', nativeName: 'українська', key: 'uk' },
379
+ { name: 'Urdu', nativeName: 'اردو', key: 'ur' },
380
+ { name: 'Uzbek', nativeName: 'zbek, Ўзбек, أۇزبېك‎', key: 'uz' },
381
+ { name: 'Venda', nativeName: 'Tshivenḓa', key: 've' },
382
+ { name: 'Vietnamese', nativeName: 'Tiếng Việt', key: 'vi' },
383
+ { name: 'Volapük', nativeName: 'Volapük', key: 'vo' },
384
+ { name: 'Walloon', nativeName: 'Walon', key: 'wa' },
385
+ { name: 'Welsh', nativeName: 'Cymraeg', key: 'cy' },
386
+ { name: 'Wolof', nativeName: 'Wollof', key: 'wo' },
387
+ { name: 'Western Frisian', nativeName: 'Frysk', key: 'fy' },
388
+ { name: 'Xhosa', nativeName: 'isiXhosa', key: 'xh' },
389
+ { name: 'Yiddish', nativeName: 'ייִדיש', key: 'yi' },
390
+ { name: 'Yoruba', nativeName: 'Yorùbá', key: 'yo' },
391
+ { name: 'Zhuang, Chuang', nativeName: 'Saɯ cueŋƅ, Saw cuengh', key: 'za' },
392
+ ];
93
393
  const languageSupportData = [];
94
394
  languageSupport().forEach((key) => {
95
- const found = data.find(item => item.key === key);
395
+ const found = data.find((item) => item.key === key);
96
396
  if (found) {
97
397
  languageSupportData.push(found);
98
398
  }
@@ -103,17 +403,18 @@ const convertObjectOfArray = (objectPattern, data) => {
103
403
  if (!objectPattern || !Object.keys(objectPattern).length) {
104
404
  return data;
105
405
  }
106
- return data.map(item => {
406
+ return data.map((item) => {
107
407
  return convertObject(objectPattern, item);
108
408
  });
109
409
  };
110
410
  const convertObject = (objectPattern, data) => {
411
+ // dữ liệu đầu vào là object
111
412
  if (!objectPattern || !Object.keys(objectPattern).length) {
112
413
  return data;
113
414
  }
114
415
  const keys = Object.keys(objectPattern);
115
416
  const objectConvert = {};
116
- keys.forEach((key => {
417
+ keys.forEach((key) => {
117
418
  const valKey = get(objectPattern, key);
118
419
  if (!valKey || !(typeof valKey === 'string')) {
119
420
  return;
@@ -121,7 +422,7 @@ const convertObject = (objectPattern, data) => {
121
422
  const keysObject = valKey.split('.');
122
423
  const value = getDataObject(keysObject, data);
123
424
  set(objectConvert, key, value);
124
- }));
425
+ });
125
426
  return objectConvert;
126
427
  };
127
428
  const getDataObject = (keysObject, object) => {
@@ -149,9 +450,9 @@ const httpRequestDetail = (options) => {
149
450
  paging: {},
150
451
  detailById: {
151
452
  fieldUpdate: '[0]',
152
- fieldGetValue: ''
153
- }
154
- }
453
+ fieldGetValue: '',
454
+ },
455
+ },
155
456
  };
156
457
  };
157
458
  const listConfigItem = (options) => {
@@ -160,38 +461,24 @@ const listConfigItem = (options) => {
160
461
  httpRequestData: signal({
161
462
  serviceOther: returnListObject(options),
162
463
  functionName: 'list',
163
- argumentsValue: ['']
464
+ argumentsValue: [''],
164
465
  }),
165
466
  configTemplateText: signal({
166
467
  fieldKey: 'key',
167
- getValue: (item) => `${item.label}`
168
- })
468
+ getValue: (item) => `${item.label}`,
469
+ }),
169
470
  };
170
471
  };
171
472
  const validRequired = () => {
172
473
  return {
173
474
  message: '',
174
- isRequired: false
475
+ isRequired: false,
175
476
  };
176
477
  };
177
478
 
178
- class LibsUiComponentsInputsMultiLanguageGetItemPipe {
179
- transform(keyBindData, dataLanguageChange) {
180
- return (keyBindData ? signal(get(dataLanguageChange, keyBindData)) : dataLanguageChange);
181
- }
182
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LibsUiComponentsInputsMultiLanguageGetItemPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
183
- static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: LibsUiComponentsInputsMultiLanguageGetItemPipe, isStandalone: true, name: "LibsUiComponentsInputsMultiLanguageGetItemPipe" });
184
- }
185
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LibsUiComponentsInputsMultiLanguageGetItemPipe, decorators: [{
186
- type: Pipe,
187
- args: [{
188
- name: 'LibsUiComponentsInputsMultiLanguageGetItemPipe',
189
- standalone: true
190
- }]
191
- }] });
192
-
479
+ /* eslint-disable @typescript-eslint/no-explicit-any */
193
480
  class LibsUiComponentsInputsMultiLanguageComponent {
194
- /* PROPERTY */
481
+ // #region PROPERTY
195
482
  languageDisplay = signal([]);
196
483
  dataLanguageChange = signal({});
197
484
  langDefault = signal(languageSupport());
@@ -203,12 +490,12 @@ class LibsUiComponentsInputsMultiLanguageComponent {
203
490
  inputFunctionControl = signal(new Map());
204
491
  quillFunctionControl = signal([]);
205
492
  onDestroy = new Subject();
206
- /* INPUT */
493
+ // #region INPUT
207
494
  zIndex = input();
208
- viewType = input('text', { transform: value => value ?? 'text' });
495
+ viewType = input('text', { transform: (value) => value ?? 'text' });
209
496
  singleLanguage = input();
210
497
  data = model([]);
211
- validRequired = input(validRequired(), { transform: value => value ?? validRequired() });
498
+ validRequired = input(validRequired(), { transform: (value) => value ?? validRequired() });
212
499
  ignoreAdd = model();
213
500
  titleField = input();
214
501
  keyHeader = input();
@@ -218,7 +505,7 @@ class LibsUiComponentsInputsMultiLanguageComponent {
218
505
  extendClassContent = input();
219
506
  viewPosition = input('row');
220
507
  ignoreRemove = input();
221
- validMaxLength = input({ length: 0 }, { transform: value => value ?? { length: 0 } });
508
+ validMaxLength = input({ length: 0 }, { transform: (value) => value ?? { length: 0 } });
222
509
  validMinLength = input();
223
510
  countCharacters = input();
224
511
  viewContent = input();
@@ -231,7 +518,7 @@ class LibsUiComponentsInputsMultiLanguageComponent {
231
518
  valueUpDownNumber = input();
232
519
  maxValueNumber = input();
233
520
  onlyAcceptNegativeValue = input();
234
- /* OUTPUT */
521
+ // #region OUTPUT
235
522
  outEventMultiLanguage = output();
236
523
  outChangeTypeLanguage = output();
237
524
  outFunctionsControl = output();
@@ -243,14 +530,14 @@ class LibsUiComponentsInputsMultiLanguageComponent {
243
530
  if (viewType === 'integer') {
244
531
  this.langDefault.set(currenciesSupport());
245
532
  this.options.set(currenciesOptions());
246
- this.options().forEach(item => {
533
+ this.options().forEach((item) => {
247
534
  this.currencyUnits().push({
248
535
  label: item.label,
249
536
  id: item.key,
250
- type: item.label
537
+ type: item.label,
251
538
  });
252
539
  });
253
- this.currencyUnits.update(value => [...value]);
540
+ this.currencyUnits.update((value) => [...value]);
254
541
  }
255
542
  });
256
543
  });
@@ -261,7 +548,7 @@ class LibsUiComponentsInputsMultiLanguageComponent {
261
548
  this.generateData();
262
549
  const optionsSelected = new Set();
263
550
  Object.keys(this.dataLanguageChange()).forEach((key) => {
264
- if (this.options().find(item => item.key === key)) {
551
+ if (this.options().find((item) => item.key === key)) {
265
552
  optionsSelected.add(key);
266
553
  }
267
554
  });
@@ -283,7 +570,7 @@ class LibsUiComponentsInputsMultiLanguageComponent {
283
570
  return;
284
571
  }
285
572
  const key = this.langDefault()[0];
286
- this.dataLanguage.update(value => ({ ...value, [key]: get(this.dataLanguageChange, key) }));
573
+ this.dataLanguage.update((value) => ({ ...value, [key]: get(this.dataLanguageChange, key) }));
287
574
  });
288
575
  });
289
576
  effect(() => {
@@ -292,7 +579,7 @@ class LibsUiComponentsInputsMultiLanguageComponent {
292
579
  if (!validRequired) {
293
580
  return;
294
581
  }
295
- this.validRequiredDefault.update(value => ({ ...value, isRequired: validRequired.isRequired }));
582
+ this.validRequiredDefault.update((value) => ({ ...value, isRequired: validRequired.isRequired }));
296
583
  if (!validRequired.isRequired) {
297
584
  this.validate();
298
585
  }
@@ -302,32 +589,32 @@ class LibsUiComponentsInputsMultiLanguageComponent {
302
589
  ngOnInit() {
303
590
  this.outFunctionsControl.emit({
304
591
  checkIsValid: this.validate.bind(this),
305
- getData: this.getData.bind(this)
592
+ getData: this.getData.bind(this),
306
593
  });
307
- this.extendClass.update(value => `${value || ''} ${this.viewPosition() === 'row' ? 'flex-row' : 'flex-col'}`);
594
+ this.extendClass.update((value) => `${value || ''} ${this.viewPosition() === 'row' ? 'flex-row' : 'flex-col'}`);
308
595
  }
309
596
  async handlerInputFunctionControl(event, key) {
310
597
  this.inputFunctionControl().set(key, event);
311
598
  }
312
599
  async handlerQuillFunctionControl(event) {
313
- this.quillFunctionControl.update(items => [...items, event]);
600
+ this.quillFunctionControl.update((items) => [...items, event]);
314
601
  }
315
602
  async handlerSelectChange(event, keyOld) {
316
603
  if (!event || event.key === keyOld) {
317
604
  return;
318
605
  }
319
- this.languageDisplay.update(value => value.map(item => item === keyOld ? event.key : item));
606
+ this.languageDisplay.update((value) => value.map((item) => (item === keyOld ? event.key : item)));
320
607
  delete this.dataLanguageChange()[keyOld];
321
608
  delete this.dataLanguage()[keyOld];
322
609
  this.setDefaultData(event.key);
323
610
  }
324
611
  async handlerAddLanguage(event) {
325
612
  event.stopPropagation();
326
- const lang = this.options().find(item => !this.languageDisplay().includes(item.key));
613
+ const lang = this.options().find((item) => !this.languageDisplay().includes(item.key));
327
614
  if (!lang) {
328
615
  return;
329
616
  }
330
- this.languageDisplay.update(value => [...value, lang.key]);
617
+ this.languageDisplay.update((value) => [...value, lang.key]);
331
618
  this.setDefaultData(lang.key);
332
619
  if (this.options().length === this.languageDisplay().length) {
333
620
  this.ignoreAdd.set(true);
@@ -337,19 +624,19 @@ class LibsUiComponentsInputsMultiLanguageComponent {
337
624
  async handlerRemoveLanguage(event, key) {
338
625
  event.stopPropagation();
339
626
  this.ignoreAdd.set(true);
340
- this.dataLanguageChange.update(value => {
627
+ this.dataLanguageChange.update((value) => {
341
628
  delete value[key];
342
629
  return { ...value };
343
630
  });
344
631
  this.validateIsMultiKey();
345
- this.languageDisplay.update(value => value.filter(item => item !== key));
632
+ this.languageDisplay.update((value) => value.filter((item) => item !== key));
346
633
  this.outEventMultiLanguage.emit({ action: 'remove', data: this.dataLanguageChange() });
347
634
  this.inputFunctionControl().delete(key);
348
635
  }
349
636
  async getData() {
350
637
  if (this.singleLanguage()) {
351
638
  const key = this.langDefault()[0];
352
- this.dataLanguage.update(value => ({ ...value, [key]: get(this.dataLanguageChange, key) }));
639
+ this.dataLanguage.update((value) => ({ ...value, [key]: get(this.dataLanguageChange, key) }));
353
640
  return this.dataLanguage();
354
641
  }
355
642
  if (this.data().length > 1) {
@@ -376,24 +663,26 @@ class LibsUiComponentsInputsMultiLanguageComponent {
376
663
  if (!key || !isNil(get(this.dataLanguageChange, key))) {
377
664
  return;
378
665
  }
379
- this.dataLanguageChange.update(value => ({ ...value, [key]: { [lang]: '' } }));
666
+ this.dataLanguageChange.update((value) => ({ ...value, [key]: { [lang]: '' } }));
380
667
  });
381
668
  }
382
669
  if (!this.data().length) {
383
670
  if (!this.dataLanguage() || !Object.keys(this.dataLanguage()).length) {
384
671
  this.setDefaultData(lang);
385
672
  }
386
- this.data.set([{
673
+ this.data.set([
674
+ {
387
675
  type: this.viewType(),
388
676
  placeholder: this.placeholder(),
389
677
  isOneValue: false,
390
- keyBindData: ''
391
- }]);
678
+ keyBindData: '',
679
+ },
680
+ ]);
392
681
  }
393
682
  }
394
683
  async setDefaultData(key) {
395
- this.dataLanguageChange.update(value => ({ ...value, [key]: '' }));
396
- this.dataLanguage.update(value => ({ ...value, [key]: '' }));
684
+ this.dataLanguageChange.update((value) => ({ ...value, [key]: '' }));
685
+ this.dataLanguage.update((value) => ({ ...value, [key]: '' }));
397
686
  }
398
687
  async validate() {
399
688
  let valid = true;
@@ -419,14 +708,14 @@ class LibsUiComponentsInputsMultiLanguageComponent {
419
708
  async validateDefault() {
420
709
  let valid = true;
421
710
  if (this.validRequired().isRequired) {
422
- this.validRequiredDefault.update(value => ({ ...value, isRequired: true }));
711
+ this.validRequiredDefault.update((value) => ({ ...value, isRequired: true }));
423
712
  if (!(await this.checkValidInput())) {
424
713
  valid = false;
425
714
  }
426
715
  return valid;
427
716
  }
428
717
  if (Object.keys(this.dataLanguageChange()).length === 1) {
429
- this.validRequiredDefault.update(value => ({ ...value, isRequired: false }));
718
+ this.validRequiredDefault.update((value) => ({ ...value, isRequired: false }));
430
719
  if (!(await this.checkValidInput())) {
431
720
  valid = false;
432
721
  }
@@ -434,13 +723,13 @@ class LibsUiComponentsInputsMultiLanguageComponent {
434
723
  }
435
724
  for (const key of Object.keys(this.dataLanguageChange())) {
436
725
  if (key !== 'id' && key !== this.keyHeader() && get(this.dataLanguageChange, key) && key !== this.langDefault()[0]) {
437
- this.validRequiredDefault.update(value => ({ ...value, isRequired: true }));
726
+ this.validRequiredDefault.update((value) => ({ ...value, isRequired: true }));
438
727
  if (!(await this.checkValidInput())) {
439
728
  valid = false;
440
729
  }
441
730
  return;
442
731
  }
443
- this.validRequiredDefault.update(value => ({ ...value, isRequired: false }));
732
+ this.validRequiredDefault.update((value) => ({ ...value, isRequired: false }));
444
733
  if (!(await this.checkValidInput())) {
445
734
  valid = false;
446
735
  }
@@ -470,7 +759,7 @@ class LibsUiComponentsInputsMultiLanguageComponent {
470
759
  if (key === item.keyBindData || key === keyBind) {
471
760
  continue;
472
761
  }
473
- if (get(this.dataLanguageChange, key) && this.options().find(item => item.key === key)) {
762
+ if (get(this.dataLanguageChange, key) && this.options().find((item) => item.key === key)) {
474
763
  this.data().forEach(async (config) => {
475
764
  if (config && config.validRequiredLangDefault) {
476
765
  config.validRequiredLangDefault.isRequired = true;
@@ -513,14 +802,16 @@ class LibsUiComponentsInputsMultiLanguageComponent {
513
802
  }
514
803
  async handlerInputChange() {
515
804
  this.outChangeValueInput.emit();
516
- timer(500).pipe(takeUntil(this.onDestroy)).subscribe(() => this.validate());
805
+ timer(500)
806
+ .pipe(takeUntil(this.onDestroy))
807
+ .subscribe(() => this.validate());
517
808
  }
518
809
  ngOnDestroy() {
519
810
  this.onDestroy.next();
520
811
  this.onDestroy.complete();
521
812
  }
522
813
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LibsUiComponentsInputsMultiLanguageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
523
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: LibsUiComponentsInputsMultiLanguageComponent, isStandalone: true, selector: "libs_ui-components-inputs-multi_language", inputs: { zIndex: { classPropertyName: "zIndex", publicName: "zIndex", isSignal: true, isRequired: false, transformFunction: null }, viewType: { classPropertyName: "viewType", publicName: "viewType", isSignal: true, isRequired: false, transformFunction: null }, singleLanguage: { classPropertyName: "singleLanguage", publicName: "singleLanguage", isSignal: true, isRequired: false, transformFunction: null }, data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: false, transformFunction: null }, validRequired: { classPropertyName: "validRequired", publicName: "validRequired", isSignal: true, isRequired: false, transformFunction: null }, ignoreAdd: { classPropertyName: "ignoreAdd", publicName: "ignoreAdd", isSignal: true, isRequired: false, transformFunction: null }, titleField: { classPropertyName: "titleField", publicName: "titleField", isSignal: true, isRequired: false, transformFunction: null }, keyHeader: { classPropertyName: "keyHeader", publicName: "keyHeader", isSignal: true, isRequired: false, transformFunction: null }, textArea: { classPropertyName: "textArea", publicName: "textArea", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, extendClass: { classPropertyName: "extendClass", publicName: "extendClass", isSignal: true, isRequired: false, transformFunction: null }, extendClassContent: { classPropertyName: "extendClassContent", publicName: "extendClassContent", isSignal: true, isRequired: false, transformFunction: null }, viewPosition: { classPropertyName: "viewPosition", publicName: "viewPosition", isSignal: true, isRequired: false, transformFunction: null }, ignoreRemove: { classPropertyName: "ignoreRemove", publicName: "ignoreRemove", isSignal: true, isRequired: false, transformFunction: null }, validMaxLength: { classPropertyName: "validMaxLength", publicName: "validMaxLength", isSignal: true, isRequired: false, transformFunction: null }, validMinLength: { classPropertyName: "validMinLength", publicName: "validMinLength", isSignal: true, isRequired: false, transformFunction: null }, countCharacters: { classPropertyName: "countCharacters", publicName: "countCharacters", isSignal: true, isRequired: false, transformFunction: null }, viewContent: { classPropertyName: "viewContent", publicName: "viewContent", isSignal: true, isRequired: false, transformFunction: null }, classIncludeKey: { classPropertyName: "classIncludeKey", publicName: "classIncludeKey", isSignal: true, isRequired: false, transformFunction: null }, classIncludeValue: { classPropertyName: "classIncludeValue", publicName: "classIncludeValue", isSignal: true, isRequired: false, transformFunction: null }, dataLanguage: { classPropertyName: "dataLanguage", publicName: "dataLanguage", isSignal: true, isRequired: false, transformFunction: null }, multiLine: { classPropertyName: "multiLine", publicName: "multiLine", isSignal: true, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, acceptNegativeValue: { classPropertyName: "acceptNegativeValue", publicName: "acceptNegativeValue", isSignal: true, isRequired: false, transformFunction: null }, valueUpDownNumber: { classPropertyName: "valueUpDownNumber", publicName: "valueUpDownNumber", isSignal: true, isRequired: false, transformFunction: null }, maxValueNumber: { classPropertyName: "maxValueNumber", publicName: "maxValueNumber", isSignal: true, isRequired: false, transformFunction: null }, onlyAcceptNegativeValue: { classPropertyName: "onlyAcceptNegativeValue", publicName: "onlyAcceptNegativeValue", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { data: "dataChange", ignoreAdd: "ignoreAddChange", extendClass: "extendClassChange", dataLanguage: "dataLanguageChange", outEventMultiLanguage: "outEventMultiLanguage", outChangeTypeLanguage: "outChangeTypeLanguage", outFunctionsControl: "outFunctionsControl", outChangeValueInput: "outChangeValueInput" }, ngImport: i0, template: "<div class=\"w-full\">\n @if (titleField(); as titleField) {\n <div class=\"libs-ui-font-h6m mb-[4px]\"> {{ titleField | translate }}</div>\n }\n @for (key of languageDisplay(); track key) {\n @if (!viewContent()) {\n <div [class.mt-[4px]]=\"!$first\"\n [class.hidden]=\"singleLanguage() && !$first\"\n [class.mt-[8px]]=\"countCharacters() && !$first\">\n <div class=\"flex {{ extendClass() }}\">\n @if (!singleLanguage()) {\n <div>\n <libs_ui-components-dropdown [listConfig]=\"listConfigItem()\"\n [httpRequestDetailItemById]=\"httpRequestDetail()\"\n [listKeysDisable]=\"languageDisplay() | LibsUiComponentsInputsMultiLanguageGetDisableKeyPipe:key\"\n [readonly]=\"$index === 0 || readonly()\"\n [listKeySelected]=\"key\"\n [zIndex]=\"zIndex()\"\n [classInclude]=\"'w-[150px]'\"\n [listHasButtonUnSelectOption]=\"false\"\n (outSelectKey)=\"handlerSelectChange($event, key)\" />\n </div>\n }\n <div class=\"flex relative p-0 {{ extendClassContent() }}\"\n [class.w-[calc(100%-150px)]]=\"!textArea() && !singleLanguage() && viewPosition() === 'row'\"\n [class.w-full]=\"textArea() || singleLanguage() || viewPosition() === 'column'\">\n @for (item of data(); track item) {\n @if (item.type !== 'editor' && !item.isOneValue || (item.isOneValue && $first)) {\n <div class=\"relative {{ item.classIncludeInput }}\"\n [class.w-full]=\"singleLanguage() && !multiLine() || readonly() || $first\"\n [class.w-[calc(100%-28px)]]=\"textArea() || (!singleLanguage() && multiLine())\"\n [class.w-[calc(100%-40px)]]=\"!textArea() && !singleLanguage() && !multiLine() && !readonly()\"\n [class.w-[calc(100%-70px)]]=\"!textArea() && !singleLanguage() && multiLine()\"\n [class.mt-[8px]]=\"viewPosition() === 'column'\"\n [class.ml-[12px]]=\"!singleLanguage() && !textArea() && viewPosition() === 'row'\">\n @if (item.keyBindData | LibsUiComponentsInputsMultiLanguageGetItemPipe:dataLanguageChange; as itemMap) {\n <libs_ui-components-inputs-valid [dataType]=\"item.type === 'number' ? 'int' : (item.type === 'text' ? 'string' : (item.type === 'bigint' ? 'bigint' : 'float'))\"\n [(item)]=\"itemMap\"\n [fieldNameBind]=\"key\"\n [labelConfig]=\"countCharacters() ? { classInclude: 'absolute -top-[20px]', required: true} : undefined\"\n [tagInput]=\"textArea() ? 'textarea' : 'input'\"\n [placeholder]=\"(item.placeholder || '') | translate\"\n [emitEmptyInDataTypeNumber]=\"true\"\n [validRequired]=\"($index === 0 && data().length <= 1) ? validRequiredDefault() : \n ($index === 0 && data().length > 1 && item.validRequiredLangDefault) ? item.validRequiredLangDefault : item.validRequired ? item.validRequired : (validRequired() || { isRequired: false })\"\n [unitsRight]=\"currencyUnits()\"\n [keySelectedUnitRight]=\"key\"\n [readonly]=\"readonly()\"\n [showCount]=\"countCharacters()\"\n [maxLength]=\"validMaxLength.length ? validMaxLength.length : undefined\"\n [fixedFloat]=\"item.type === 'bigint' ? 4 : 14\"\n [validMinLength]=\"{length: validMinLength()?.length || -1, message: 'i18n_minimum_length_number', interpolateParams: {number: validMinLength()?.length}}\"\n [acceptNegativeValue]=\"acceptNegativeValue()\"\n [valueUpDownNumber]=\"valueUpDownNumber()\"\n [maxValueNumber]=\"maxValueNumber()\"\n [onlyAcceptNegativeValue]=\"onlyAcceptNegativeValue()\"\n (outValueChange)=\"handlerInputChange()\"\n (outFunctionsControl)=\"handlerInputFunctionControl($event, key)\" />\n }\n </div>\n }\n @if (item.type === 'editor') {\n <div class=\"w-[calc(100%-28px)]\">\n <div class=\"h-[250px]\">\n @if (item.keyBindData | LibsUiComponentsInputsMultiLanguageGetItemPipe:dataLanguageChange; as itemMap) {\n <libs_ui-components-inputs-quill [(item)]=\"itemMap\"\n [fieldNameBind]=\"key\"\n [validRequired]=\"($index === 0 && data().length <= 1) ? validRequiredDefault() : validRequired()\"\n [placeholder]=\"(item.placeholder || '') | translate\"\n [readonly]=\"readonly()\"\n (outFocus)=\"handlerInputChange()\"\n (outChange)=\"handlerInputChange()\"\n (outFunctionsControl)=\"handlerQuillFunctionControl($event)\" />\n }\n </div>\n </div>\n }\n }\n @if (($index > 0 && data().length === 1) && !ignoreRemove() && !readonly()) {\n <div class=\"h-[32px] flex items-center ml-[16px]\">\n <libs_ui-components-buttons-button [type]=\"'button-link-custom'\"\n [buttonCustom]=\"{\n configStepColor: {\n text: '#071631',\n text_hover: '#ee2d41',\n text_active: '#ee2d41',\n text_disable: '071631'\n },\n rootColor: '#071631'\n }\"\n [iconOnlyType]=\"true\"\n [popover]=\"{config: {content: 'i18n_delete', zIndex: 1205}}\"\n [classIconLeft]=\"'libs-ui-icon-remove'\"\n [classInclude]=\"'!p-0'\"\n (outClick)=\"handlerRemoveLanguage($event, key)\" />\n </div>\n }\n </div>\n </div>\n @if ($index === 0 && !singleLanguage() && (options().length !== languageDisplay().length) && viewType() !== 'integer' && !readonly()) {\n <libs_ui-components-buttons-button [type]=\"'button-link-primary'\"\n [label]=\"'i18n_add_language'\"\n [classIconLeft]=\"'libs-ui-icon-add'\"\n [classInclude]=\"'!px-0 mt-[8px]'\"\n (outClick)=\"handlerAddLanguage($event)\" />\n }\n </div>\n }\n @if (viewContent()) {\n <div class=\"flex\">\n @if (singleLanguage()) {\n <div class=\"flex\"\n [class.hidden]=\"singleLanguage() && !$first\"\n [class.mt-[4px]]=\"!singleLanguage() && !$first\">\n <libs_ui-components-popover [type]=\"'text'\"\n [classInclude]=\"classIncludeKey()\"\n [innerHTML]=\"key | LibsUiComponentsInputsMultiLanguageDisplayLanguagePipe:options()\" />\n </div>\n }\n <div class=\"w-[calc(100%-100px)]\"\n [class.hidden]=\"singleLanguage() && !$first\"\n [class.flex]=\"!singleLanguage || $first\"\n [class.mt-[4px]]=\"!singleLanguage() && !$first\">\n <libs_ui-components-popover [type]=\"'text'\"\n [classInclude]=\"classIncludeValue()\"\n [innerHTML]=\"((dataLanguageChange()[key] || dataLanguageChange()[key] === 0) ? (dataLanguageChange()[key] + '') : '') | LibsUiPipesEscapeHtmlPipe\"\n [config]=\"{zIndex: zIndex()}\" />\n </div>\n </div>\n }\n }\n @if (viewType() === 'integer' && !this.ignoreAdd() && !readonly()) {\n <libs_ui-components-buttons-button type=\"button-link-primary\"\n [classIconLeft]=\"'libs-ui-icon-add mr-[8px] text-[10px]'\"\n [classLabel]=\"'libs-ui-font-h5r'\"\n [classInclude]=\"'!pb-0'\"\n [label]=\"'i18n_add_currency'\"\n (outClick)=\"handlerAddLanguage($event)\" />\n }\n</div>\n", dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }, { kind: "component", type: LibsUiComponentsDropdownComponent, selector: "libs_ui-components-dropdown", inputs: ["useXssFilter", "popoverElementRefCustom", "classInclude", "ignoreStopPropagationEvent", "flagMouse", "flagMouseContent", "popoverCustomConfig", "isNgContent", "zIndex", "convertItemSelected", "getPopoverItemSelected", "httpRequestDetailItemById", "lengthKeys", "textDisplayWhenNoSelect", "textDisplayWhenMultiSelect", "classIncludeTextDisplayWhenNoSelect", "fieldGetLabel", "labelPopoverConfig", "labelPopoverFullWidth", "hasContentUnitRight", "listSearchNoDataTemplateRef", "fieldGetImage", "imageSize", "typeShape", "fieldGetIcon", "fieldGetTextAvatar", "fieldGetColorAvatar", "classAvatarInclude", "getLastTextAfterSpace", "linkImageError", "showError", "showBorderError", "disable", "readonly", "labelConfig", "listSearchConfig", "isSearchOnline", "listHiddenInputSearch", "listSearchPadding", "listKeySearch", "listDividerClassInclude", "listConfig", "listButtonsOther", "listHasButtonUnSelectOption", "listClickExactly", "listBackgroundCustom", "listMaxItemShow", "listKeySelected", "listMultiKeySelected", "listKeysDisable", "listKeysHidden", "validRequired", "validMaxItemSelected", "changeValidUndefinedResetError", "allowSelectItemMultiple", "focusInputSearch", "onlyEmitDataWhenReset", "resetKeyWhenSelectAllKey", "listConfigHasDivider", "classIncludeIcon", "classIncludeContent", "listIgnoreClassDisableDefaultWhenUseKeysDisableItem", "tabKeyActive", "tabsConfig", "ignoreBorderBottom"], outputs: ["flagMouseChange", "flagMouseContentChange", "lengthKeysChange", "showBorderErrorChange", "listKeySelectedChange", "listMultiKeySelectedChange", "tabKeyActiveChange", "outSelectKey", "outSelectMultiKey", "outFunctionsControl", "outValidEvent", "outChangStageFlagMouse", "outDataChange", "outClickButtonOther", "outShowList", "outChangeTabKeyActive"] }, { kind: "component", type: LibsUiComponentsInputsValidComponent, selector: "libs_ui-components-inputs-valid", inputs: ["item", "labelConfig", "emitEmptyInDataTypeNumber", "ignoreBlockInputMaxValue", "fieldNameBind", "showCount", "typeComponentSelectItem", "valueComponentSelectItem", "disableComponentSelectItem", "tagInput", "dataType", "resetAutoCompletePassword", "textAreaEnterNotNewLine", "hiddenContent", "fixedFloat", "acceptNegativeValue", "valueUpDownNumber", "ignoreWidthInput100", "classIncludeInput", "classContainerInput", "readonly", "disable", "noBorder", "backgroundNone", "useColorModeExist", "placeholder", "keepPlaceholderOnly", "classContainerBottomInput", "autoRemoveEmoji", "defaultHeight", "maxHeightTextArea", "minHeightTextArea", "ignoreShowError", "borderError", "iconLeftClass", "popoverContentIconLeft", "iconRightClass", "popoverContentIconRight", "zIndexPopoverContent", "unitsLeft", "configUnitLeft", "keySelectedUnitLeft", "unitsRight", "configUnitRight", "keySelectedUnitRight", "maxValueNumber", "minValueNumber", "ignoreContentLeft", "ignoreContentRight", "isBaselineStyle", "valuePatternShowError", "validPattern", "validRequired", "validMinLength", "validMinValue", "validMaxValue", "validMaxLength", "functionValid", "maxLength", "positionMessageErrorStartInput", "classInclude", "resize", "templateLeftBottomInput", "templateRightBottomInput", "onlyAcceptNegativeValue", "autoAddZeroLessThan10InTypeInt", "maxLengthNumberCount", "classMessageErrorInclude", "ignoreStopPropagationEvent", "ignoreUnitRightClassReadOnly", "paddingRightCustomSpecific", "focusTimeOut"], outputs: ["itemChange", "outValueChange", "outSelect", "outIconLeft", "outIconRight", "outClickButtonLabel", "outSwitchEventLabel", "outLabelRightClick", "outEnterInputEvent", "outHeightAreaChange", "outFunctionsControl", "outFocusAndBlur", "outChangeValueByButtonUpDown"] }, { kind: "component", type: LibsUiComponentsButtonsButtonComponent, selector: "libs_ui-components-buttons-button", inputs: ["flagMouse", "type", "buttonCustom", "sizeButton", "label", "disable", "isPending", "imageLeft", "classInclude", "classIconLeft", "classIconRight", "classLabel", "iconOnlyType", "popover", "ignoreStopPropagationEvent", "zIndex", "widthLabelPopover", "styleIconLeft", "styleButton", "ignoreFocusWhenInputTab", "ignoreSetClickWhenShowPopover", "ignorePointerEvent", "isActive"], outputs: ["outClick", "outPopoverEvent", "outFunctionsControl"] }, { kind: "component", type: LibsUiComponentsPopoverComponent, selector: "libs_ui-components-popover,[LibsUiComponentsPopoverDirective]", inputs: ["debugId", "flagMouse", "type", "mode", "config", "ignoreShowPopover", "elementRefCustom", "classInclude", "ignoreHiddenPopoverContentWhenMouseLeave", "ignoreStopPropagationEvent", "ignoreCursorPointerModeLikeClick", "isAddContentToParentDocument", "ignoreClickOutside"], outputs: ["outEvent", "outChangStageFlagMouse", "outEventPopoverContent", "outFunctionsControl"] }, { kind: "pipe", type: LibsUiComponentsInputsMultiLanguageGetDisableKeyPipe, name: "LibsUiComponentsInputsMultiLanguageGetDisableKeyPipe" }, { kind: "pipe", type: LibsUiComponentsInputsMultiLanguageDisplayLanguagePipe, name: "LibsUiComponentsInputsMultiLanguageDisplayLanguagePipe" }, { kind: "pipe", type: LibsUiComponentsInputsMultiLanguageGetItemPipe, name: "LibsUiComponentsInputsMultiLanguageGetItemPipe" }, { kind: "pipe", type: LibsUiPipesEscapeHtmlPipe, name: "LibsUiPipesEscapeHtmlPipe" }, { kind: "component", type: LibsUiComponentsInputsQuillComponent, selector: "libs_ui-components-inputs-quill", inputs: ["optionsToolbar", "showToolBar", "classIncludeToolbar", "placeholder", "label", "item", "fieldNameBind", "readonly", "showErrorLabel", "showErrorBorder", "onlyShowErrorBorderInContent", "classIncludeTemplate", "classInclude", "handlersExpand", "validRequired", "validMinLength", "validMaxLength", "onlyShowContent", "zIndex", "dataConfigMention", "heightAuto", "autoFocus", "autoFocusBottom", "templateToolBarPersonalize", "template", "uploadImageConfig"], outputs: ["itemChange", "outMessageError", "outBlur", "outFocus", "outChange", "outFunctionsControl", "outSelectionChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
814
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: LibsUiComponentsInputsMultiLanguageComponent, isStandalone: true, selector: "libs_ui-components-inputs-multi_language", inputs: { zIndex: { classPropertyName: "zIndex", publicName: "zIndex", isSignal: true, isRequired: false, transformFunction: null }, viewType: { classPropertyName: "viewType", publicName: "viewType", isSignal: true, isRequired: false, transformFunction: null }, singleLanguage: { classPropertyName: "singleLanguage", publicName: "singleLanguage", isSignal: true, isRequired: false, transformFunction: null }, data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: false, transformFunction: null }, validRequired: { classPropertyName: "validRequired", publicName: "validRequired", isSignal: true, isRequired: false, transformFunction: null }, ignoreAdd: { classPropertyName: "ignoreAdd", publicName: "ignoreAdd", isSignal: true, isRequired: false, transformFunction: null }, titleField: { classPropertyName: "titleField", publicName: "titleField", isSignal: true, isRequired: false, transformFunction: null }, keyHeader: { classPropertyName: "keyHeader", publicName: "keyHeader", isSignal: true, isRequired: false, transformFunction: null }, textArea: { classPropertyName: "textArea", publicName: "textArea", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, extendClass: { classPropertyName: "extendClass", publicName: "extendClass", isSignal: true, isRequired: false, transformFunction: null }, extendClassContent: { classPropertyName: "extendClassContent", publicName: "extendClassContent", isSignal: true, isRequired: false, transformFunction: null }, viewPosition: { classPropertyName: "viewPosition", publicName: "viewPosition", isSignal: true, isRequired: false, transformFunction: null }, ignoreRemove: { classPropertyName: "ignoreRemove", publicName: "ignoreRemove", isSignal: true, isRequired: false, transformFunction: null }, validMaxLength: { classPropertyName: "validMaxLength", publicName: "validMaxLength", isSignal: true, isRequired: false, transformFunction: null }, validMinLength: { classPropertyName: "validMinLength", publicName: "validMinLength", isSignal: true, isRequired: false, transformFunction: null }, countCharacters: { classPropertyName: "countCharacters", publicName: "countCharacters", isSignal: true, isRequired: false, transformFunction: null }, viewContent: { classPropertyName: "viewContent", publicName: "viewContent", isSignal: true, isRequired: false, transformFunction: null }, classIncludeKey: { classPropertyName: "classIncludeKey", publicName: "classIncludeKey", isSignal: true, isRequired: false, transformFunction: null }, classIncludeValue: { classPropertyName: "classIncludeValue", publicName: "classIncludeValue", isSignal: true, isRequired: false, transformFunction: null }, dataLanguage: { classPropertyName: "dataLanguage", publicName: "dataLanguage", isSignal: true, isRequired: false, transformFunction: null }, multiLine: { classPropertyName: "multiLine", publicName: "multiLine", isSignal: true, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, acceptNegativeValue: { classPropertyName: "acceptNegativeValue", publicName: "acceptNegativeValue", isSignal: true, isRequired: false, transformFunction: null }, valueUpDownNumber: { classPropertyName: "valueUpDownNumber", publicName: "valueUpDownNumber", isSignal: true, isRequired: false, transformFunction: null }, maxValueNumber: { classPropertyName: "maxValueNumber", publicName: "maxValueNumber", isSignal: true, isRequired: false, transformFunction: null }, onlyAcceptNegativeValue: { classPropertyName: "onlyAcceptNegativeValue", publicName: "onlyAcceptNegativeValue", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { data: "dataChange", ignoreAdd: "ignoreAddChange", extendClass: "extendClassChange", dataLanguage: "dataLanguageChange", outEventMultiLanguage: "outEventMultiLanguage", outChangeTypeLanguage: "outChangeTypeLanguage", outFunctionsControl: "outFunctionsControl", outChangeValueInput: "outChangeValueInput" }, ngImport: i0, template: "<div class=\"w-full\">\n @if (titleField(); as titleField) {\n <div class=\"libs-ui-font-h6m mb-[4px]\"> {{ titleField | translate }}</div>\n }\n @for (key of languageDisplay(); track key) {\n @if (!viewContent()) {\n <div [class.mt-[4px]]=\"!$first\"\n [class.hidden]=\"singleLanguage() && !$first\"\n [class.mt-[8px]]=\"countCharacters() && !$first\">\n <div class=\"flex {{ extendClass() }}\">\n @if (!singleLanguage()) {\n <div>\n <libs_ui-components-dropdown [listConfig]=\"listConfigItem()\"\n [httpRequestDetailItemById]=\"httpRequestDetail()\"\n [listKeysDisable]=\"languageDisplay() | LibsUiComponentsInputsMultiLanguageGetDisableKeyPipe:key\"\n [readonly]=\"$index === 0 || readonly()\"\n [listKeySelected]=\"key\"\n [zIndex]=\"zIndex()\"\n [classInclude]=\"'w-[150px]'\"\n [listHasButtonUnSelectOption]=\"false\"\n (outSelectKey)=\"handlerSelectChange($event, key)\" />\n </div>\n }\n <div class=\"flex relative p-0 {{ extendClassContent() }}\"\n [class.w-[calc(100%-150px)]]=\"!textArea() && !singleLanguage() && viewPosition() === 'row'\"\n [class.w-full]=\"textArea() || singleLanguage() || viewPosition() === 'column'\">\n @for (item of data(); track item) {\n @if (item.type !== 'editor' && !item.isOneValue || (item.isOneValue && $first)) {\n <div class=\"relative {{ item.classIncludeInput }}\"\n [class.w-full]=\"singleLanguage() && !multiLine() || readonly() || $first\"\n [class.w-[calc(100%-28px)]]=\"textArea() || (!singleLanguage() && multiLine())\"\n [class.w-[calc(100%-40px)]]=\"!textArea() && !singleLanguage() && !multiLine() && !readonly()\"\n [class.w-[calc(100%-70px)]]=\"!textArea() && !singleLanguage() && multiLine()\"\n [class.mt-[8px]]=\"viewPosition() === 'column'\"\n [class.ml-[12px]]=\"!singleLanguage() && !textArea() && viewPosition() === 'row'\">\n @if (item.keyBindData | LibsUiComponentsInputsMultiLanguageGetItemPipe:dataLanguageChange; as itemMap) {\n <libs_ui-components-inputs-valid [dataType]=\"item.type === 'number' ? 'int' : (item.type === 'text' ? 'string' : (item.type === 'bigint' ? 'bigint' : 'float'))\"\n [(item)]=\"itemMap\"\n [fieldNameBind]=\"key\"\n [labelConfig]=\"countCharacters() ? { classInclude: 'absolute -top-[20px]', required: true} : undefined\"\n [tagInput]=\"textArea() ? 'textarea' : 'input'\"\n [placeholder]=\"(item.placeholder || '') | translate\"\n [emitEmptyInDataTypeNumber]=\"true\"\n [validRequired]=\"($index === 0 && data().length <= 1) ? validRequiredDefault() : \n ($index === 0 && data().length > 1 && item.validRequiredLangDefault) ? item.validRequiredLangDefault : item.validRequired ? item.validRequired : (validRequired() || { isRequired: false })\"\n [unitsRight]=\"currencyUnits()\"\n [keySelectedUnitRight]=\"key\"\n [readonly]=\"readonly()\"\n [showCount]=\"countCharacters()\"\n [maxLength]=\"validMaxLength.length ? validMaxLength.length : undefined\"\n [fixedFloat]=\"item.type === 'bigint' ? 4 : 14\"\n [validMinLength]=\"{length: validMinLength()?.length || -1, message: 'i18n_minimum_length_number', interpolateParams: {number: validMinLength()?.length}}\"\n [acceptNegativeValue]=\"acceptNegativeValue()\"\n [valueUpDownNumber]=\"valueUpDownNumber()\"\n [maxValueNumber]=\"maxValueNumber()\"\n [onlyAcceptNegativeValue]=\"onlyAcceptNegativeValue()\"\n (outValueChange)=\"handlerInputChange()\"\n (outFunctionsControl)=\"handlerInputFunctionControl($event, key)\" />\n }\n </div>\n }\n @if (item.type === 'editor') {\n <div class=\"w-[calc(100%-28px)]\">\n <div class=\"h-[250px]\">\n @if (item.keyBindData | LibsUiComponentsInputsMultiLanguageGetItemPipe:dataLanguageChange; as itemMap) {\n <libs_ui-components-inputs-quill [(item)]=\"itemMap\"\n [fieldNameBind]=\"key\"\n [validRequired]=\"($index === 0 && data().length <= 1) ? validRequiredDefault() : validRequired()\"\n [placeholder]=\"(item.placeholder || '') | translate\"\n [readonly]=\"readonly()\"\n (outFocus)=\"handlerInputChange()\"\n (outChange)=\"handlerInputChange()\"\n (outFunctionsControl)=\"handlerQuillFunctionControl($event)\" />\n }\n </div>\n </div>\n }\n }\n @if (($index > 0 && data().length === 1) && !ignoreRemove() && !readonly()) {\n <div class=\"h-[32px] flex items-center ml-[16px]\">\n <libs_ui-components-buttons-button [type]=\"'button-link-custom'\"\n [buttonCustom]=\"{\n configStepColor: {\n text: '#071631',\n text_hover: '#ee2d41',\n text_active: '#ee2d41',\n text_disable: '071631'\n },\n rootColor: '#071631'\n }\"\n [iconOnlyType]=\"true\"\n [popover]=\"{config: {content: 'i18n_delete', zIndex: 1205}}\"\n [classIconLeft]=\"'libs-ui-icon-remove'\"\n [classInclude]=\"'!p-0'\"\n (outClick)=\"handlerRemoveLanguage($event, key)\" />\n </div>\n }\n </div>\n </div>\n @if ($index === 0 && !singleLanguage() && (options().length !== languageDisplay().length) && viewType() !== 'integer' && !readonly()) {\n <libs_ui-components-buttons-button [type]=\"'button-link-primary'\"\n [label]=\"'i18n_add_language'\"\n [classIconLeft]=\"'libs-ui-icon-add'\"\n [classInclude]=\"'!px-0 mt-[8px]'\"\n (outClick)=\"handlerAddLanguage($event)\" />\n }\n </div>\n }\n @if (viewContent()) {\n <div class=\"flex\">\n @if (singleLanguage()) {\n <div class=\"flex\"\n [class.hidden]=\"singleLanguage() && !$first\"\n [class.mt-[4px]]=\"!singleLanguage() && !$first\">\n <libs_ui-components-popover [type]=\"'text'\"\n [classInclude]=\"classIncludeKey()\"\n [innerHTML]=\"key | LibsUiComponentsInputsMultiLanguageDisplayLanguagePipe:options()\" />\n </div>\n }\n <div class=\"w-[calc(100%-100px)]\"\n [class.hidden]=\"singleLanguage() && !$first\"\n [class.flex]=\"!singleLanguage || $first\"\n [class.mt-[4px]]=\"!singleLanguage() && !$first\">\n <libs_ui-components-popover [type]=\"'text'\"\n [classInclude]=\"classIncludeValue()\"\n [innerHTML]=\"((dataLanguageChange()[key] || dataLanguageChange()[key] === 0) ? (dataLanguageChange()[key] + '') : '') | LibsUiPipesEscapeHtmlPipe\"\n [config]=\"{zIndex: zIndex()}\" />\n </div>\n </div>\n }\n }\n @if (viewType() === 'integer' && !this.ignoreAdd() && !readonly()) {\n <libs_ui-components-buttons-button type=\"button-link-primary\"\n [classIconLeft]=\"'libs-ui-icon-add mr-[8px] text-[10px]'\"\n [classLabel]=\"'libs-ui-font-h5r'\"\n [classInclude]=\"'!pb-0'\"\n [label]=\"'i18n_add_currency'\"\n (outClick)=\"handlerAddLanguage($event)\" />\n }\n</div>\n", dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }, { kind: "component", type: LibsUiComponentsDropdownComponent, selector: "libs_ui-components-dropdown", inputs: ["useXssFilter", "popoverElementRefCustom", "classInclude", "ignoreStopPropagationEvent", "flagMouse", "flagMouseContent", "popoverCustomConfig", "isNgContent", "zIndex", "convertItemSelected", "getPopoverItemSelected", "httpRequestDetailItemById", "lengthKeys", "textDisplayWhenNoSelect", "textDisplayWhenMultiSelect", "classIncludeTextDisplayWhenNoSelect", "fieldLabel", "fieldGetLabel", "labelPopoverConfig", "labelPopoverFullWidth", "hasContentUnitRight", "listSearchNoDataTemplateRef", "fieldGetImage", "imageSize", "typeShape", "fieldGetIcon", "fieldGetTextAvatar", "fieldGetColorAvatar", "classAvatarInclude", "getLastTextAfterSpace", "linkImageError", "showError", "showBorderError", "disable", "readonly", "labelConfig", "disableLabel", "listSearchConfig", "isSearchOnline", "listHiddenInputSearch", "listSearchPadding", "listKeySearch", "listDividerClassInclude", "listConfig", "listButtonsOther", "listHasButtonUnSelectOption", "listClickExactly", "listBackgroundCustom", "listMaxItemShow", "listKeySelected", "listMultiKeySelected", "listKeysDisable", "listKeysHidden", "validRequired", "validMaxItemSelected", "changeValidUndefinedResetError", "allowSelectItemMultiple", "focusInputSearch", "onlyEmitDataWhenReset", "resetKeyWhenSelectAllKey", "listConfigHasDivider", "classIncludeIcon", "classIncludeContent", "listIgnoreClassDisableDefaultWhenUseKeysDisableItem", "tabKeyActive", "tabsConfig", "ignoreBorderBottom"], outputs: ["flagMouseChange", "flagMouseContentChange", "lengthKeysChange", "showBorderErrorChange", "listKeySelectedChange", "listMultiKeySelectedChange", "tabKeyActiveChange", "outSelectKey", "outSelectMultiKey", "outFunctionsControl", "outValidEvent", "outChangStageFlagMouse", "outDataChange", "outClickButtonOther", "outShowList", "outChangeTabKeyActive"] }, { kind: "component", type: LibsUiComponentsInputsValidComponent, selector: "libs_ui-components-inputs-valid", inputs: ["item", "labelConfig", "emitEmptyInDataTypeNumber", "ignoreBlockInputMaxValue", "fieldNameBind", "showCount", "typeComponentSelectItem", "valueComponentSelectItem", "disableComponentSelectItem", "tagInput", "dataType", "typeInput", "modeInput", "resetAutoCompletePassword", "textAreaEnterNotNewLine", "fixedFloat", "acceptNegativeValue", "valueUpDownNumber", "ignoreWidthInput100", "classIncludeInput", "classContainerInput", "readonly", "disable", "noBorder", "backgroundNone", "useColorModeExist", "placeholder", "keepPlaceholderOnly", "classContainerBottomInput", "autoRemoveEmoji", "defaultHeight", "maxHeightTextArea", "minHeightTextArea", "ignoreShowError", "borderError", "iconLeftClass", "popoverContentIconLeft", "iconRightClass", "popoverContentIconRight", "zIndexPopoverContent", "unitsLeft", "configUnitLeft", "keySelectedUnitLeft", "unitsRight", "configUnitRight", "keySelectedUnitRight", "maxValueNumber", "minValueNumber", "ignoreContentLeft", "ignoreContentRight", "isBaselineStyle", "valuePatternShowError", "validPattern", "validRequired", "validMinLength", "validMinValue", "validMaxValue", "validMaxLength", "functionValid", "maxLength", "positionMessageErrorStartInput", "classInclude", "resize", "templateLeftBottomInput", "templateRightBottomInput", "onlyAcceptNegativeValue", "autoAddZeroLessThan10InTypeInt", "maxLengthNumberCount", "classMessageErrorInclude", "ignoreStopPropagationEvent", "ignoreUnitRightClassReadOnly", "paddingRightCustomSpecific", "focusTimeOut", "debounceTimeValidate"], outputs: ["itemChange", "outValueChange", "outSelect", "outIconLeft", "outIconRight", "outClickButtonLabel", "outSwitchEventLabel", "outLabelRightClick", "outEnterInputEvent", "outHeightAreaChange", "outFunctionsControl", "outFocusAndBlur", "outChangeValueByButtonUpDown"] }, { kind: "component", type: LibsUiComponentsButtonsButtonComponent, selector: "libs_ui-components-buttons-button", inputs: ["flagMouse", "type", "buttonCustom", "sizeButton", "label", "disable", "isPending", "imageLeft", "classInclude", "classIconLeft", "classIconRight", "classLabel", "iconOnlyType", "popover", "ignoreStopPropagationEvent", "zIndex", "widthLabelPopover", "styleIconLeft", "styleButton", "ignoreFocusWhenInputTab", "ignoreSetClickWhenShowPopover", "ignorePointerEvent", "isActive", "isHandlerEnterDocumentClickButton"], outputs: ["outClick", "outPopoverEvent", "outFunctionsControl"] }, { kind: "component", type: LibsUiComponentsPopoverComponent, selector: "libs_ui-components-popover,[LibsUiComponentsPopoverDirective]", inputs: ["debugId", "flagMouse", "type", "mode", "config", "ignoreShowPopover", "elementRefCustom", "initEventInElementRefCustom", "classInclude", "ignoreHiddenPopoverContentWhenMouseLeave", "ignoreStopPropagationEvent", "ignoreCursorPointerModeLikeClick", "isAddContentToParentDocument", "ignoreClickOutside"], outputs: ["outEvent", "outChangStageFlagMouse", "outEventPopoverContent", "outFunctionsControl"] }, { kind: "pipe", type: LibsUiComponentsInputsMultiLanguageGetDisableKeyPipe, name: "LibsUiComponentsInputsMultiLanguageGetDisableKeyPipe" }, { kind: "pipe", type: LibsUiComponentsInputsMultiLanguageDisplayLanguagePipe, name: "LibsUiComponentsInputsMultiLanguageDisplayLanguagePipe" }, { kind: "pipe", type: LibsUiComponentsInputsMultiLanguageGetItemPipe, name: "LibsUiComponentsInputsMultiLanguageGetItemPipe" }, { kind: "pipe", type: LibsUiPipesEscapeHtmlPipe, name: "LibsUiPipesEscapeHtmlPipe" }, { kind: "component", type: LibsUiComponentsInputsQuillComponent, selector: "libs_ui-components-inputs-quill", inputs: ["isShowToolBar", "isToolbarPositionFixed", "classIncludeToolbar", "stylesIncludeToolbar", "toolbarConfig", "placeholder", "label", "item", "autoUpdateValueWhenTextChange", "fieldNameBind", "readonly", "showErrorLabel", "showErrorBorder", "onlyShowErrorBorderInContent", "classIncludeTemplate", "classInclude", "handlersExpand", "validRequired", "validMinLength", "validMaxLength", "zIndex", "dataConfigMention", "blotsRegister", "autoFocus", "focusBottom", "blockUndoRedoKeyboard", "templateToolBarPersonalize", "template", "uploadImageConfig", "heightAuto", "elementScrollHeightAuto", "ignoreShowPopupEditLink", "ignoreCommunicateMicroEventPopup"], outputs: ["itemChange", "outShowPopupEditLink", "outMessageError", "outBlur", "outFocus", "outChange", "outFunctionsControl", "outSelectionChange", "outTextChange", "outContextMenu"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
524
815
  }
525
816
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LibsUiComponentsInputsMultiLanguageComponent, decorators: [{
526
817
  type: Component,
@@ -534,7 +825,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
534
825
  LibsUiComponentsInputsMultiLanguageDisplayLanguagePipe,
535
826
  LibsUiComponentsInputsMultiLanguageGetItemPipe,
536
827
  LibsUiPipesEscapeHtmlPipe,
537
- LibsUiComponentsInputsQuillComponent
828
+ LibsUiComponentsInputsQuillComponent,
538
829
  ], template: "<div class=\"w-full\">\n @if (titleField(); as titleField) {\n <div class=\"libs-ui-font-h6m mb-[4px]\"> {{ titleField | translate }}</div>\n }\n @for (key of languageDisplay(); track key) {\n @if (!viewContent()) {\n <div [class.mt-[4px]]=\"!$first\"\n [class.hidden]=\"singleLanguage() && !$first\"\n [class.mt-[8px]]=\"countCharacters() && !$first\">\n <div class=\"flex {{ extendClass() }}\">\n @if (!singleLanguage()) {\n <div>\n <libs_ui-components-dropdown [listConfig]=\"listConfigItem()\"\n [httpRequestDetailItemById]=\"httpRequestDetail()\"\n [listKeysDisable]=\"languageDisplay() | LibsUiComponentsInputsMultiLanguageGetDisableKeyPipe:key\"\n [readonly]=\"$index === 0 || readonly()\"\n [listKeySelected]=\"key\"\n [zIndex]=\"zIndex()\"\n [classInclude]=\"'w-[150px]'\"\n [listHasButtonUnSelectOption]=\"false\"\n (outSelectKey)=\"handlerSelectChange($event, key)\" />\n </div>\n }\n <div class=\"flex relative p-0 {{ extendClassContent() }}\"\n [class.w-[calc(100%-150px)]]=\"!textArea() && !singleLanguage() && viewPosition() === 'row'\"\n [class.w-full]=\"textArea() || singleLanguage() || viewPosition() === 'column'\">\n @for (item of data(); track item) {\n @if (item.type !== 'editor' && !item.isOneValue || (item.isOneValue && $first)) {\n <div class=\"relative {{ item.classIncludeInput }}\"\n [class.w-full]=\"singleLanguage() && !multiLine() || readonly() || $first\"\n [class.w-[calc(100%-28px)]]=\"textArea() || (!singleLanguage() && multiLine())\"\n [class.w-[calc(100%-40px)]]=\"!textArea() && !singleLanguage() && !multiLine() && !readonly()\"\n [class.w-[calc(100%-70px)]]=\"!textArea() && !singleLanguage() && multiLine()\"\n [class.mt-[8px]]=\"viewPosition() === 'column'\"\n [class.ml-[12px]]=\"!singleLanguage() && !textArea() && viewPosition() === 'row'\">\n @if (item.keyBindData | LibsUiComponentsInputsMultiLanguageGetItemPipe:dataLanguageChange; as itemMap) {\n <libs_ui-components-inputs-valid [dataType]=\"item.type === 'number' ? 'int' : (item.type === 'text' ? 'string' : (item.type === 'bigint' ? 'bigint' : 'float'))\"\n [(item)]=\"itemMap\"\n [fieldNameBind]=\"key\"\n [labelConfig]=\"countCharacters() ? { classInclude: 'absolute -top-[20px]', required: true} : undefined\"\n [tagInput]=\"textArea() ? 'textarea' : 'input'\"\n [placeholder]=\"(item.placeholder || '') | translate\"\n [emitEmptyInDataTypeNumber]=\"true\"\n [validRequired]=\"($index === 0 && data().length <= 1) ? validRequiredDefault() : \n ($index === 0 && data().length > 1 && item.validRequiredLangDefault) ? item.validRequiredLangDefault : item.validRequired ? item.validRequired : (validRequired() || { isRequired: false })\"\n [unitsRight]=\"currencyUnits()\"\n [keySelectedUnitRight]=\"key\"\n [readonly]=\"readonly()\"\n [showCount]=\"countCharacters()\"\n [maxLength]=\"validMaxLength.length ? validMaxLength.length : undefined\"\n [fixedFloat]=\"item.type === 'bigint' ? 4 : 14\"\n [validMinLength]=\"{length: validMinLength()?.length || -1, message: 'i18n_minimum_length_number', interpolateParams: {number: validMinLength()?.length}}\"\n [acceptNegativeValue]=\"acceptNegativeValue()\"\n [valueUpDownNumber]=\"valueUpDownNumber()\"\n [maxValueNumber]=\"maxValueNumber()\"\n [onlyAcceptNegativeValue]=\"onlyAcceptNegativeValue()\"\n (outValueChange)=\"handlerInputChange()\"\n (outFunctionsControl)=\"handlerInputFunctionControl($event, key)\" />\n }\n </div>\n }\n @if (item.type === 'editor') {\n <div class=\"w-[calc(100%-28px)]\">\n <div class=\"h-[250px]\">\n @if (item.keyBindData | LibsUiComponentsInputsMultiLanguageGetItemPipe:dataLanguageChange; as itemMap) {\n <libs_ui-components-inputs-quill [(item)]=\"itemMap\"\n [fieldNameBind]=\"key\"\n [validRequired]=\"($index === 0 && data().length <= 1) ? validRequiredDefault() : validRequired()\"\n [placeholder]=\"(item.placeholder || '') | translate\"\n [readonly]=\"readonly()\"\n (outFocus)=\"handlerInputChange()\"\n (outChange)=\"handlerInputChange()\"\n (outFunctionsControl)=\"handlerQuillFunctionControl($event)\" />\n }\n </div>\n </div>\n }\n }\n @if (($index > 0 && data().length === 1) && !ignoreRemove() && !readonly()) {\n <div class=\"h-[32px] flex items-center ml-[16px]\">\n <libs_ui-components-buttons-button [type]=\"'button-link-custom'\"\n [buttonCustom]=\"{\n configStepColor: {\n text: '#071631',\n text_hover: '#ee2d41',\n text_active: '#ee2d41',\n text_disable: '071631'\n },\n rootColor: '#071631'\n }\"\n [iconOnlyType]=\"true\"\n [popover]=\"{config: {content: 'i18n_delete', zIndex: 1205}}\"\n [classIconLeft]=\"'libs-ui-icon-remove'\"\n [classInclude]=\"'!p-0'\"\n (outClick)=\"handlerRemoveLanguage($event, key)\" />\n </div>\n }\n </div>\n </div>\n @if ($index === 0 && !singleLanguage() && (options().length !== languageDisplay().length) && viewType() !== 'integer' && !readonly()) {\n <libs_ui-components-buttons-button [type]=\"'button-link-primary'\"\n [label]=\"'i18n_add_language'\"\n [classIconLeft]=\"'libs-ui-icon-add'\"\n [classInclude]=\"'!px-0 mt-[8px]'\"\n (outClick)=\"handlerAddLanguage($event)\" />\n }\n </div>\n }\n @if (viewContent()) {\n <div class=\"flex\">\n @if (singleLanguage()) {\n <div class=\"flex\"\n [class.hidden]=\"singleLanguage() && !$first\"\n [class.mt-[4px]]=\"!singleLanguage() && !$first\">\n <libs_ui-components-popover [type]=\"'text'\"\n [classInclude]=\"classIncludeKey()\"\n [innerHTML]=\"key | LibsUiComponentsInputsMultiLanguageDisplayLanguagePipe:options()\" />\n </div>\n }\n <div class=\"w-[calc(100%-100px)]\"\n [class.hidden]=\"singleLanguage() && !$first\"\n [class.flex]=\"!singleLanguage || $first\"\n [class.mt-[4px]]=\"!singleLanguage() && !$first\">\n <libs_ui-components-popover [type]=\"'text'\"\n [classInclude]=\"classIncludeValue()\"\n [innerHTML]=\"((dataLanguageChange()[key] || dataLanguageChange()[key] === 0) ? (dataLanguageChange()[key] + '') : '') | LibsUiPipesEscapeHtmlPipe\"\n [config]=\"{zIndex: zIndex()}\" />\n </div>\n </div>\n }\n }\n @if (viewType() === 'integer' && !this.ignoreAdd() && !readonly()) {\n <libs_ui-components-buttons-button type=\"button-link-primary\"\n [classIconLeft]=\"'libs-ui-icon-add mr-[8px] text-[10px]'\"\n [classLabel]=\"'libs-ui-font-h5r'\"\n [classInclude]=\"'!pb-0'\"\n [label]=\"'i18n_add_currency'\"\n (outClick)=\"handlerAddLanguage($event)\" />\n }\n</div>\n" }]
539
830
  }], ctorParameters: () => [] });
540
831
 
@@ -668,7 +959,7 @@ class LibsUiComponentsInputsMultiLanguageItemsComponent {
668
959
  }
669
960
  }
670
961
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LibsUiComponentsInputsMultiLanguageItemsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
671
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: LibsUiComponentsInputsMultiLanguageItemsComponent, isStandalone: true, selector: "libs_ui-components-inputs-multi_language-items", inputs: { configItems: { classPropertyName: "configItems", publicName: "configItems", isSignal: true, isRequired: false, transformFunction: null }, dataMultiLanguage: { classPropertyName: "dataMultiLanguage", publicName: "dataMultiLanguage", isSignal: true, isRequired: false, transformFunction: null }, zIndex: { classPropertyName: "zIndex", publicName: "zIndex", isSignal: true, isRequired: false, transformFunction: null }, ignoreAdd: { classPropertyName: "ignoreAdd", publicName: "ignoreAdd", isSignal: true, isRequired: false, transformFunction: null }, labelAddItem: { classPropertyName: "labelAddItem", publicName: "labelAddItem", isSignal: true, isRequired: false, transformFunction: null }, singleLanguage: { classPropertyName: "singleLanguage", publicName: "singleLanguage", isSignal: true, isRequired: false, transformFunction: null }, acceptNegativeValue: { classPropertyName: "acceptNegativeValue", publicName: "acceptNegativeValue", isSignal: true, isRequired: false, transformFunction: null }, valueUpDownNumber: { classPropertyName: "valueUpDownNumber", publicName: "valueUpDownNumber", isSignal: true, isRequired: false, transformFunction: null }, maxValueNumber: { classPropertyName: "maxValueNumber", publicName: "maxValueNumber", isSignal: true, isRequired: false, transformFunction: null }, onlyAcceptNegativeValue: { classPropertyName: "onlyAcceptNegativeValue", publicName: "onlyAcceptNegativeValue", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { dataMultiLanguage: "dataMultiLanguageChange", outClick: "outClick", outFunctionControl: "outFunctionControl", outChangeValue: "outChangeValue" }, ngImport: i0, template: "<div class=\"mt-[4px]\">\n @for (item of dataMultiLanguage(); track item) {\n <div class=\"flex w-full\"\n [class.mt-[12px]]=\"!$first\">\n <div class=\"libs-ui-border-general\"\n [class.w-full]=\"dataMultiLanguage().length < 2\"\n [class.w-[calc(100%-28px)]]=\"dataMultiLanguage().length > 1\">\n @if (configHeader(); as configHeader) {\n <div class=\"flex bg-[#e6eef5] px-[12px] py-[4px]\">\n <div class=\"libs-ui-font-h6m h-[32px] flex items-center\">{{ (configHeader.title ?? ' ') | translate }}</div>\n <div (click)=\"handlerClick($event)\"\n class=\"pl-[8px]\">\n @if (configHeader.keyBindData | LibsUiComponentsInputsMultiLanguageGetItemPipe:item; as itemMap) {\n <libs_ui-components-inputs-valid [(item)]=\"itemMap\"\n [dataType]=\"(configHeader.type && configHeader.type === 'number') ? 'int' : 'string'\"\n [fieldNameBind]=\"langDefault()\"\n [emitEmptyInDataTypeNumber]=\"true\"\n [validRequired]=\"{isRequired: configItems()[0].validRequired?.isRequired ?? false}\"\n [placeholder]=\"'i18n_enter_value'\"\n [acceptNegativeValue]=\"acceptNegativeValue() ?? true\"\n [valueUpDownNumber]=\"valueUpDownNumber() || 1\"\n [maxValueNumber]=\"maxValueNumber()\"\n [fixedFloat]=\"15\"\n (outValueChange)=\"handlerChangeValue($event, 'input')\"\n (outFunctionsControl)=\"handlerFunctionsControlInputValid($event)\" />\n }\n </div>\n </div>\n <div class=\"px-[12px] pt-[8px] pb-[12px] flex w-full\">\n <libs_ui-components-inputs-multi_language class=\"w-full\"\n [singleLanguage]=\"singleLanguage() || false\"\n [multiLine]=\"false\"\n [titleField]=\"configItems()[0].titleField || ''\"\n [keyHeader]=\"configHeader.keyBindData ?? ''\"\n [placeholder]=\"'i18n_import_content'\"\n [classIncludeValue]=\"'libs-ui-font-h4r'\"\n [data]=\"dataMultiKey()[$index]\"\n [validRequired]=\"validRequiredWhenInputHasValue() || configItems()[0].validRequired\"\n [dataLanguage]=\"item\"\n [zIndex]=\"1203\"\n [acceptNegativeValue]=\"acceptNegativeValue() ?? true\"\n [valueUpDownNumber]=\"valueUpDownNumber() || 1\"\n [maxValueNumber]=\"maxValueNumber()\"\n [onlyAcceptNegativeValue]=\"onlyAcceptNegativeValue()\"\n [viewType]=\"configItems()[0].type ? (configItems()[0].type === 'number' ? 'number' : configItems()[0].type === 'float' ? 'float' : 'text') : 'text'\"\n (outEventMultiLanguage)=\"handlerChangeValue()\"\n (outChangeValueInput)=\"handlerChangeValue()\"\n (outFunctionsControl)=\"handlerFunctionsControlInputLanguage($event)\" />\n </div>\n }\n </div>\n @if (!$first) {\n <libs_ui-components-buttons-button [type]=\"'button-link-custom'\"\n [buttonCustom]=\"{\n configStepColor: {\n text: '#071631',\n text_hover: '#ee2d41',\n text_active: '#ee2d41',\n text_disable: '071631'\n },\n rootColor: '#071631'\n }\"\n [iconOnlyType]=\"true\"\n [popover]=\"{config: {content: 'i18n_delete', zIndex: 1205}}\"\n [classIconLeft]=\"'libs-ui-icon-remove'\"\n [classInclude]=\"'!p-0 ml-[8px] mt-[12px]'\"\n (outClick)=\"handlerRemove($index)\" />\n }\n </div>\n }\n @if (!ignoreAdd()) {\n <libs_ui-components-buttons-button [type]=\"'button-link-primary'\"\n [classIconLeft]=\"'libs-ui-icon-add mr-[8px]'\"\n [classLabel]=\"'libs-ui-font-h5r'\"\n [classInclude]=\"'!px-0 mt-[8px]'\"\n [label]=\"labelAddItem() || ''\"\n (outClick)=\"handlerAdd()\" />\n }\n</div>\n", dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }, { kind: "pipe", type: LibsUiComponentsInputsMultiLanguageGetItemPipe, name: "LibsUiComponentsInputsMultiLanguageGetItemPipe" }, { kind: "component", type: LibsUiComponentsInputsValidComponent, selector: "libs_ui-components-inputs-valid", inputs: ["item", "labelConfig", "emitEmptyInDataTypeNumber", "ignoreBlockInputMaxValue", "fieldNameBind", "showCount", "typeComponentSelectItem", "valueComponentSelectItem", "disableComponentSelectItem", "tagInput", "dataType", "resetAutoCompletePassword", "textAreaEnterNotNewLine", "hiddenContent", "fixedFloat", "acceptNegativeValue", "valueUpDownNumber", "ignoreWidthInput100", "classIncludeInput", "classContainerInput", "readonly", "disable", "noBorder", "backgroundNone", "useColorModeExist", "placeholder", "keepPlaceholderOnly", "classContainerBottomInput", "autoRemoveEmoji", "defaultHeight", "maxHeightTextArea", "minHeightTextArea", "ignoreShowError", "borderError", "iconLeftClass", "popoverContentIconLeft", "iconRightClass", "popoverContentIconRight", "zIndexPopoverContent", "unitsLeft", "configUnitLeft", "keySelectedUnitLeft", "unitsRight", "configUnitRight", "keySelectedUnitRight", "maxValueNumber", "minValueNumber", "ignoreContentLeft", "ignoreContentRight", "isBaselineStyle", "valuePatternShowError", "validPattern", "validRequired", "validMinLength", "validMinValue", "validMaxValue", "validMaxLength", "functionValid", "maxLength", "positionMessageErrorStartInput", "classInclude", "resize", "templateLeftBottomInput", "templateRightBottomInput", "onlyAcceptNegativeValue", "autoAddZeroLessThan10InTypeInt", "maxLengthNumberCount", "classMessageErrorInclude", "ignoreStopPropagationEvent", "ignoreUnitRightClassReadOnly", "paddingRightCustomSpecific", "focusTimeOut"], outputs: ["itemChange", "outValueChange", "outSelect", "outIconLeft", "outIconRight", "outClickButtonLabel", "outSwitchEventLabel", "outLabelRightClick", "outEnterInputEvent", "outHeightAreaChange", "outFunctionsControl", "outFocusAndBlur", "outChangeValueByButtonUpDown"] }, { kind: "component", type: LibsUiComponentsInputsMultiLanguageComponent, selector: "libs_ui-components-inputs-multi_language", inputs: ["zIndex", "viewType", "singleLanguage", "data", "validRequired", "ignoreAdd", "titleField", "keyHeader", "textArea", "placeholder", "extendClass", "extendClassContent", "viewPosition", "ignoreRemove", "validMaxLength", "validMinLength", "countCharacters", "viewContent", "classIncludeKey", "classIncludeValue", "dataLanguage", "multiLine", "readonly", "acceptNegativeValue", "valueUpDownNumber", "maxValueNumber", "onlyAcceptNegativeValue"], outputs: ["dataChange", "ignoreAddChange", "extendClassChange", "dataLanguageChange", "outEventMultiLanguage", "outChangeTypeLanguage", "outFunctionsControl", "outChangeValueInput"] }, { kind: "component", type: LibsUiComponentsButtonsButtonComponent, selector: "libs_ui-components-buttons-button", inputs: ["flagMouse", "type", "buttonCustom", "sizeButton", "label", "disable", "isPending", "imageLeft", "classInclude", "classIconLeft", "classIconRight", "classLabel", "iconOnlyType", "popover", "ignoreStopPropagationEvent", "zIndex", "widthLabelPopover", "styleIconLeft", "styleButton", "ignoreFocusWhenInputTab", "ignoreSetClickWhenShowPopover", "ignorePointerEvent", "isActive"], outputs: ["outClick", "outPopoverEvent", "outFunctionsControl"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
962
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: LibsUiComponentsInputsMultiLanguageItemsComponent, isStandalone: true, selector: "libs_ui-components-inputs-multi_language-items", inputs: { configItems: { classPropertyName: "configItems", publicName: "configItems", isSignal: true, isRequired: false, transformFunction: null }, dataMultiLanguage: { classPropertyName: "dataMultiLanguage", publicName: "dataMultiLanguage", isSignal: true, isRequired: false, transformFunction: null }, zIndex: { classPropertyName: "zIndex", publicName: "zIndex", isSignal: true, isRequired: false, transformFunction: null }, ignoreAdd: { classPropertyName: "ignoreAdd", publicName: "ignoreAdd", isSignal: true, isRequired: false, transformFunction: null }, labelAddItem: { classPropertyName: "labelAddItem", publicName: "labelAddItem", isSignal: true, isRequired: false, transformFunction: null }, singleLanguage: { classPropertyName: "singleLanguage", publicName: "singleLanguage", isSignal: true, isRequired: false, transformFunction: null }, acceptNegativeValue: { classPropertyName: "acceptNegativeValue", publicName: "acceptNegativeValue", isSignal: true, isRequired: false, transformFunction: null }, valueUpDownNumber: { classPropertyName: "valueUpDownNumber", publicName: "valueUpDownNumber", isSignal: true, isRequired: false, transformFunction: null }, maxValueNumber: { classPropertyName: "maxValueNumber", publicName: "maxValueNumber", isSignal: true, isRequired: false, transformFunction: null }, onlyAcceptNegativeValue: { classPropertyName: "onlyAcceptNegativeValue", publicName: "onlyAcceptNegativeValue", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { dataMultiLanguage: "dataMultiLanguageChange", outClick: "outClick", outFunctionControl: "outFunctionControl", outChangeValue: "outChangeValue" }, ngImport: i0, template: "<div class=\"mt-[4px]\">\n @for (item of dataMultiLanguage(); track item) {\n <div class=\"flex w-full\"\n [class.mt-[12px]]=\"!$first\">\n <div class=\"libs-ui-border-general\"\n [class.w-full]=\"dataMultiLanguage().length < 2\"\n [class.w-[calc(100%-28px)]]=\"dataMultiLanguage().length > 1\">\n @if (configHeader(); as configHeader) {\n <div class=\"flex bg-[#e6eef5] px-[12px] py-[4px]\">\n <div class=\"libs-ui-font-h6m h-[32px] flex items-center\">{{ (configHeader.title ?? ' ') | translate }}</div>\n <div (click)=\"handlerClick($event)\"\n class=\"pl-[8px]\">\n @if (configHeader.keyBindData | LibsUiComponentsInputsMultiLanguageGetItemPipe:item; as itemMap) {\n <libs_ui-components-inputs-valid [(item)]=\"itemMap\"\n [dataType]=\"(configHeader.type && configHeader.type === 'number') ? 'int' : 'string'\"\n [fieldNameBind]=\"langDefault()\"\n [emitEmptyInDataTypeNumber]=\"true\"\n [validRequired]=\"{isRequired: configItems()[0].validRequired?.isRequired ?? false}\"\n [placeholder]=\"'i18n_enter_value'\"\n [acceptNegativeValue]=\"acceptNegativeValue() ?? true\"\n [valueUpDownNumber]=\"valueUpDownNumber() || 1\"\n [maxValueNumber]=\"maxValueNumber()\"\n [fixedFloat]=\"15\"\n (outValueChange)=\"handlerChangeValue($event, 'input')\"\n (outFunctionsControl)=\"handlerFunctionsControlInputValid($event)\" />\n }\n </div>\n </div>\n <div class=\"px-[12px] pt-[8px] pb-[12px] flex w-full\">\n <libs_ui-components-inputs-multi_language class=\"w-full\"\n [singleLanguage]=\"singleLanguage() || false\"\n [multiLine]=\"false\"\n [titleField]=\"configItems()[0].titleField || ''\"\n [keyHeader]=\"configHeader.keyBindData ?? ''\"\n [placeholder]=\"'i18n_import_content'\"\n [classIncludeValue]=\"'libs-ui-font-h4r'\"\n [data]=\"dataMultiKey()[$index]\"\n [validRequired]=\"validRequiredWhenInputHasValue() || configItems()[0].validRequired\"\n [dataLanguage]=\"item\"\n [zIndex]=\"1203\"\n [acceptNegativeValue]=\"acceptNegativeValue() ?? true\"\n [valueUpDownNumber]=\"valueUpDownNumber() || 1\"\n [maxValueNumber]=\"maxValueNumber()\"\n [onlyAcceptNegativeValue]=\"onlyAcceptNegativeValue()\"\n [viewType]=\"configItems()[0].type ? (configItems()[0].type === 'number' ? 'number' : configItems()[0].type === 'float' ? 'float' : 'text') : 'text'\"\n (outEventMultiLanguage)=\"handlerChangeValue()\"\n (outChangeValueInput)=\"handlerChangeValue()\"\n (outFunctionsControl)=\"handlerFunctionsControlInputLanguage($event)\" />\n </div>\n }\n </div>\n @if (!$first) {\n <libs_ui-components-buttons-button [type]=\"'button-link-custom'\"\n [buttonCustom]=\"{\n configStepColor: {\n text: '#071631',\n text_hover: '#ee2d41',\n text_active: '#ee2d41',\n text_disable: '071631'\n },\n rootColor: '#071631'\n }\"\n [iconOnlyType]=\"true\"\n [popover]=\"{config: {content: 'i18n_delete', zIndex: 1205}}\"\n [classIconLeft]=\"'libs-ui-icon-remove'\"\n [classInclude]=\"'!p-0 ml-[8px] mt-[12px]'\"\n (outClick)=\"handlerRemove($index)\" />\n }\n </div>\n }\n @if (!ignoreAdd()) {\n <libs_ui-components-buttons-button [type]=\"'button-link-primary'\"\n [classIconLeft]=\"'libs-ui-icon-add mr-[8px]'\"\n [classLabel]=\"'libs-ui-font-h5r'\"\n [classInclude]=\"'!px-0 mt-[8px]'\"\n [label]=\"labelAddItem() || ''\"\n (outClick)=\"handlerAdd()\" />\n }\n</div>\n", dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }, { kind: "pipe", type: LibsUiComponentsInputsMultiLanguageGetItemPipe, name: "LibsUiComponentsInputsMultiLanguageGetItemPipe" }, { kind: "component", type: LibsUiComponentsInputsValidComponent, selector: "libs_ui-components-inputs-valid", inputs: ["item", "labelConfig", "emitEmptyInDataTypeNumber", "ignoreBlockInputMaxValue", "fieldNameBind", "showCount", "typeComponentSelectItem", "valueComponentSelectItem", "disableComponentSelectItem", "tagInput", "dataType", "typeInput", "modeInput", "resetAutoCompletePassword", "textAreaEnterNotNewLine", "fixedFloat", "acceptNegativeValue", "valueUpDownNumber", "ignoreWidthInput100", "classIncludeInput", "classContainerInput", "readonly", "disable", "noBorder", "backgroundNone", "useColorModeExist", "placeholder", "keepPlaceholderOnly", "classContainerBottomInput", "autoRemoveEmoji", "defaultHeight", "maxHeightTextArea", "minHeightTextArea", "ignoreShowError", "borderError", "iconLeftClass", "popoverContentIconLeft", "iconRightClass", "popoverContentIconRight", "zIndexPopoverContent", "unitsLeft", "configUnitLeft", "keySelectedUnitLeft", "unitsRight", "configUnitRight", "keySelectedUnitRight", "maxValueNumber", "minValueNumber", "ignoreContentLeft", "ignoreContentRight", "isBaselineStyle", "valuePatternShowError", "validPattern", "validRequired", "validMinLength", "validMinValue", "validMaxValue", "validMaxLength", "functionValid", "maxLength", "positionMessageErrorStartInput", "classInclude", "resize", "templateLeftBottomInput", "templateRightBottomInput", "onlyAcceptNegativeValue", "autoAddZeroLessThan10InTypeInt", "maxLengthNumberCount", "classMessageErrorInclude", "ignoreStopPropagationEvent", "ignoreUnitRightClassReadOnly", "paddingRightCustomSpecific", "focusTimeOut", "debounceTimeValidate"], outputs: ["itemChange", "outValueChange", "outSelect", "outIconLeft", "outIconRight", "outClickButtonLabel", "outSwitchEventLabel", "outLabelRightClick", "outEnterInputEvent", "outHeightAreaChange", "outFunctionsControl", "outFocusAndBlur", "outChangeValueByButtonUpDown"] }, { kind: "component", type: LibsUiComponentsInputsMultiLanguageComponent, selector: "libs_ui-components-inputs-multi_language", inputs: ["zIndex", "viewType", "singleLanguage", "data", "validRequired", "ignoreAdd", "titleField", "keyHeader", "textArea", "placeholder", "extendClass", "extendClassContent", "viewPosition", "ignoreRemove", "validMaxLength", "validMinLength", "countCharacters", "viewContent", "classIncludeKey", "classIncludeValue", "dataLanguage", "multiLine", "readonly", "acceptNegativeValue", "valueUpDownNumber", "maxValueNumber", "onlyAcceptNegativeValue"], outputs: ["dataChange", "ignoreAddChange", "extendClassChange", "dataLanguageChange", "outEventMultiLanguage", "outChangeTypeLanguage", "outFunctionsControl", "outChangeValueInput"] }, { kind: "component", type: LibsUiComponentsButtonsButtonComponent, selector: "libs_ui-components-buttons-button", inputs: ["flagMouse", "type", "buttonCustom", "sizeButton", "label", "disable", "isPending", "imageLeft", "classInclude", "classIconLeft", "classIconRight", "classLabel", "iconOnlyType", "popover", "ignoreStopPropagationEvent", "zIndex", "widthLabelPopover", "styleIconLeft", "styleButton", "ignoreFocusWhenInputTab", "ignoreSetClickWhenShowPopover", "ignorePointerEvent", "isActive", "isHandlerEnterDocumentClickButton"], outputs: ["outClick", "outPopoverEvent", "outFunctionsControl"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
672
963
  }
673
964
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LibsUiComponentsInputsMultiLanguageItemsComponent, decorators: [{
674
965
  type: Component,