@senior-agronegocio/angular-components 0.0.88 → 0.0.90

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (62) hide show
  1. package/bundles/senior-agronegocio-angular-components.umd.js +370 -357
  2. package/bundles/senior-agronegocio-angular-components.umd.js.map +1 -1
  3. package/bundles/senior-agronegocio-angular-components.umd.min.js +2 -2
  4. package/bundles/senior-agronegocio-angular-components.umd.min.js.map +1 -1
  5. package/common/agro-platform-utils.class.d.ts +9 -0
  6. package/common/agro-string-utils.class.d.ts +46 -146
  7. package/common/colors.class.d.ts +2 -0
  8. package/components/cancel-event-dialog/cancel-event-dialog.component.d.ts +2 -2
  9. package/components/event-control-board/common/event-operation.d.ts +0 -1
  10. package/components/event-control-board/common/event-origin.d.ts +0 -1
  11. package/enums/agro-numbers.enum.d.ts +3 -2
  12. package/esm2015/common/agro-cookie-utils.class.js +7 -3
  13. package/esm2015/common/agro-date-utils.class.js +7 -3
  14. package/esm2015/common/agro-logics.class.js +22 -20
  15. package/esm2015/common/agro-name-utils.class.js +5 -4
  16. package/esm2015/common/agro-number-utils.class.js +20 -10
  17. package/esm2015/common/agro-object-utils.class.js +9 -7
  18. package/esm2015/common/agro-platform-utils.class.js +46 -50
  19. package/esm2015/common/agro-string-utils.class.js +217 -215
  20. package/esm2015/common/colors.class.js +3 -1
  21. package/esm2015/components/cancel-event-dialog/cancel-event-dialog.component.js +8 -8
  22. package/esm2015/components/event-control-board/common/event-control-constants.js +1 -6
  23. package/esm2015/components/event-control-board/common/event-operation.js +1 -2
  24. package/esm2015/components/event-control-board/common/event-origin.js +1 -2
  25. package/esm2015/components/event-control-board/event-control-board.component.js +3 -4
  26. package/esm2015/components/event-steps/index.js +1 -1
  27. package/esm2015/enums/agro-numbers.enum.js +3 -2
  28. package/esm2015/services/i18n/en-US.js +9 -3
  29. package/esm2015/services/i18n/es-CO.js +9 -3
  30. package/esm2015/services/i18n/pt-BR.js +9 -3
  31. package/esm2015/services/websocket/websocket.service.js +2 -2
  32. package/esm5/common/agro-cookie-utils.class.js +7 -3
  33. package/esm5/common/agro-date-utils.class.js +7 -3
  34. package/esm5/common/agro-logics.class.js +34 -42
  35. package/esm5/common/agro-name-utils.class.js +5 -4
  36. package/esm5/common/agro-number-utils.class.js +20 -10
  37. package/esm5/common/agro-object-utils.class.js +9 -7
  38. package/esm5/common/agro-platform-utils.class.js +46 -50
  39. package/esm5/common/agro-string-utils.class.js +217 -215
  40. package/esm5/common/colors.class.js +3 -1
  41. package/esm5/components/cancel-event-dialog/cancel-event-dialog.component.js +8 -8
  42. package/esm5/components/event-control-board/common/event-control-constants.js +1 -6
  43. package/esm5/components/event-control-board/common/event-operation.js +1 -2
  44. package/esm5/components/event-control-board/common/event-origin.js +1 -2
  45. package/esm5/components/event-control-board/event-control-board.component.js +3 -4
  46. package/esm5/components/event-steps/index.js +1 -1
  47. package/esm5/enums/agro-numbers.enum.js +3 -2
  48. package/esm5/services/i18n/en-US.js +9 -3
  49. package/esm5/services/i18n/es-CO.js +9 -3
  50. package/esm5/services/i18n/pt-BR.js +9 -3
  51. package/esm5/services/websocket/websocket.service.js +2 -2
  52. package/fesm2015/senior-agronegocio-angular-components.js +359 -336
  53. package/fesm2015/senior-agronegocio-angular-components.js.map +1 -1
  54. package/fesm5/senior-agronegocio-angular-components.js +370 -357
  55. package/fesm5/senior-agronegocio-angular-components.js.map +1 -1
  56. package/package.json +1 -1
  57. package/services/i18n/en-US.d.ts +8 -2
  58. package/services/i18n/es-CO.d.ts +8 -2
  59. package/services/i18n/pt-BR.d.ts +8 -2
  60. package/common/numbers.d.ts +0 -6
  61. package/esm2015/common/numbers.js +0 -8
  62. package/esm5/common/numbers.js +0 -8
@@ -206,7 +206,7 @@ var AgroEntityStatus;
206
206
  var AGRO_NUMBERS;
207
207
  (function (AGRO_NUMBERS) {
208
208
  AGRO_NUMBERS[AGRO_NUMBERS["MINIMUM_WEIGHT"] = 0.001] = "MINIMUM_WEIGHT";
209
- AGRO_NUMBERS[AGRO_NUMBERS["MINUSONE"] = -1] = "MINUSONE";
209
+ AGRO_NUMBERS[AGRO_NUMBERS["MINUS_ONE"] = -1] = "MINUS_ONE";
210
210
  AGRO_NUMBERS[AGRO_NUMBERS["EIGHT"] = 8] = "EIGHT";
211
211
  AGRO_NUMBERS[AGRO_NUMBERS["EIGHT_HUNDRED"] = 800] = "EIGHT_HUNDRED";
212
212
  AGRO_NUMBERS[AGRO_NUMBERS["EIGHT_HUNDRED_AND_EIGHT"] = 808] = "EIGHT_HUNDRED_AND_EIGHT";
@@ -1209,6 +1209,7 @@ var AGRO_NUMBERS;
1209
1209
  AGRO_NUMBERS[AGRO_NUMBERS["TWO_HUNDRED_AND_TWO"] = 202] = "TWO_HUNDRED_AND_TWO";
1210
1210
  AGRO_NUMBERS[AGRO_NUMBERS["ZERO"] = 0] = "ZERO";
1211
1211
  AGRO_NUMBERS[AGRO_NUMBERS["FIVE_SECONDS"] = 5000] = "FIVE_SECONDS";
1212
+ AGRO_NUMBERS[AGRO_NUMBERS["MS_PER_DAY"] = 86400000] = "MS_PER_DAY";
1212
1213
  })(AGRO_NUMBERS || (AGRO_NUMBERS = {}));
1213
1214
 
1214
1215
  var AgroStringMasks;
@@ -1414,10 +1415,7 @@ var AgroObjectUtils = /** @class */ (function () {
1414
1415
  * @returns True se os objetos forem iguais, false caso contrário.
1415
1416
  */
1416
1417
  AgroObjectUtils.isEqual = function (obj1, obj2) {
1417
- if (JSON.stringify(obj1) === JSON.stringify(obj2)) {
1418
- return true;
1419
- }
1420
- return false;
1418
+ return JSON.stringify(obj1) === JSON.stringify(obj2);
1421
1419
  };
1422
1420
  /**
1423
1421
  * Verifica se um objeto é nulo.
@@ -1452,7 +1450,7 @@ var AgroObjectUtils = /** @class */ (function () {
1452
1450
  if (!AgroObjectUtils.isObject(obj)) {
1453
1451
  return false;
1454
1452
  }
1455
- return Object.keys(obj).length !== 0;
1453
+ return Object.keys(obj).length !== AGRO_NUMBERS.ZERO;
1456
1454
  };
1457
1455
  /**
1458
1456
  * Verifica se um objeto é vazio.
@@ -1531,7 +1529,12 @@ var AgroObjectUtils = /** @class */ (function () {
1531
1529
  * @param value
1532
1530
  */
1533
1531
  AgroObjectUtils.fromString = function (value) {
1534
- return JSON.parse(value) || undefined;
1532
+ try {
1533
+ return JSON.parse(value);
1534
+ }
1535
+ catch (e) {
1536
+ return undefined;
1537
+ }
1535
1538
  };
1536
1539
  return AgroObjectUtils;
1537
1540
  }());
@@ -1910,14 +1913,18 @@ var AgroCookieUtils = /** @class */ (function () {
1910
1913
  }
1911
1914
  };
1912
1915
  AgroCookieUtils.setCookie = function (name, value, days) {
1916
+ if (days < AGRO_NUMBERS.ZERO) {
1917
+ throw new Error("O número de dias não pode ser negativo.");
1918
+ }
1913
1919
  var date = new Date();
1914
- date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
1920
+ date.setTime(date.getTime() + (days * AGRO_NUMBERS.MS_PER_DAY));
1915
1921
  var expires = 'expires=' + date.toUTCString();
1916
- document.cookie = name + '=' + value + ';' + expires + ';path=/';
1922
+ document.cookie = name + "=" + value + ";" + expires + ";path=/";
1917
1923
  };
1918
1924
  return AgroCookieUtils;
1919
1925
  }());
1920
1926
 
1927
+ var DEFAULT_DATE_FORMAT = 'DD/MM/YYYY';
1921
1928
  var AgroDateUtils = /** @class */ (function () {
1922
1929
  function AgroDateUtils() {
1923
1930
  }
@@ -2023,7 +2030,7 @@ var AgroDateUtils = /** @class */ (function () {
2023
2030
  * @returns
2024
2031
  */
2025
2032
  AgroDateUtils.formatDate = function (date, format) {
2026
- if (format === void 0) { format = 'DD/MM/YYYY'; }
2033
+ if (format === void 0) { format = DEFAULT_DATE_FORMAT; }
2027
2034
  var moment$1 = moment;
2028
2035
  return moment$1(date).utc().format(format);
2029
2036
  };
@@ -2033,7 +2040,10 @@ var AgroDateUtils = /** @class */ (function () {
2033
2040
  * @returns
2034
2041
  */
2035
2042
  AgroDateUtils.padZero = function (value) {
2036
- return value < AGRO_NUMBERS.TEN ? '0' + value : value.toString();
2043
+ if (value < AGRO_NUMBERS.TEN) {
2044
+ return '0' + value;
2045
+ }
2046
+ return value.toString();
2037
2047
  };
2038
2048
  return AgroDateUtils;
2039
2049
  }());
@@ -2044,130 +2054,202 @@ var AgroDateUtils = /** @class */ (function () {
2044
2054
  var AgroStringUtils = /** @class */ (function () {
2045
2055
  function AgroStringUtils() {
2046
2056
  }
2057
+ /** Retorna true se a string contém apenas letras */
2058
+ AgroStringUtils.isOnlyLetters = function (str) {
2059
+ if (!str) {
2060
+ return false;
2061
+ }
2062
+ return /^[A-Za-z]+$/.test(str);
2063
+ };
2064
+ /** Retorna true se a string contém pelo menos uma letra */
2065
+ AgroStringUtils.hasLetters = function (str) {
2066
+ if (!str) {
2067
+ return false;
2068
+ }
2069
+ return /[A-Za-z]/.test(str);
2070
+ };
2071
+ /** Retorna true se a string contém apenas números */
2072
+ AgroStringUtils.isOnlyNumbers = function (str) {
2073
+ if (!str) {
2074
+ return false;
2075
+ }
2076
+ return /^\d+$/.test(str);
2077
+ };
2078
+ /** Retorna true se a string contém pelo menos um número */
2079
+ AgroStringUtils.hasNumbers = function (str) {
2080
+ if (!str) {
2081
+ return false;
2082
+ }
2083
+ return /\d/.test(str);
2084
+ };
2047
2085
  /**
2048
- * Verifica se uma string está vazia ou consiste apenas de caracteres de espaço em branco.
2049
- * @param str - A string a ser verificada.
2050
- * @returns True se a string estiver vazia ou consistir apenas de caracteres de espaço em branco, false caso contrário.
2086
+ * Verifica se a string está vazia.
2051
2087
  */
2052
2088
  AgroStringUtils.isEmpty = function (str) {
2053
2089
  var _a;
2054
2090
  return !str || ((_a = str.trim()) === null || _a === void 0 ? void 0 : _a.length) === AGRO_NUMBERS.ZERO;
2055
2091
  };
2056
2092
  /**
2057
- * Verifica se uma string não está vazia e não consiste apenas de caracteres de espaço em branco.
2058
- * @param str - A string a ser verificada.
2059
- * @returns True se a string não estiver vazia e não consistir apenas de caracteres de espaço em branco, false caso contrário.
2093
+ * Verifica se a string não está vazia.
2060
2094
  */
2061
2095
  AgroStringUtils.isNotEmpty = function (str) {
2062
2096
  return !AgroStringUtils.isEmpty(str);
2063
2097
  };
2064
- /**
2065
- * Verifica se uma string está vazia, consiste apenas de caracteres de espaço em branco ou é nula.
2066
- * @param str - A string a ser verificada.
2067
- * @returns True se a string estiver vazia, consistir apenas de caracteres de espaço em branco ou for nula, false caso contrário.
2068
- */
2098
+ /** Verifica se a string é nula, indefinida ou contém apenas espaços em branco */
2069
2099
  AgroStringUtils.isBlank = function (str) {
2070
2100
  return !str || AGRO_REGEX.onlyBlankSpaces.test(str);
2071
2101
  };
2072
- /**
2073
- * Verifica se uma string não está vazia, não consiste apenas de caracteres de espaço em branco e não é nula.
2074
- * @param str - A string a ser verificada.
2075
- * @returns True se a string não estiver vazia, não consistir apenas de caracteres de espaço em branco e não for nula, false caso contrário.
2076
- */
2102
+ /** Verifica se a string não é nula, indefinida ou contém apenas espaços em branco */
2077
2103
  AgroStringUtils.isNotBlank = function (str) {
2078
2104
  return !AgroStringUtils.isBlank(str);
2079
2105
  };
2080
2106
  /**
2081
- * Remove os espaços em branco de uma string e retorna null se a string resultante estiver vazia, caso contrário retorna a string sem espaços em branco.
2082
- * @param str - A string a ser removidos os espaços em branco.
2083
- * @returns A string sem espaços em branco ou null se a string resultante estiver vazia.
2107
+ * Remove espaços em branco do início e do fim da string.
2084
2108
  */
2085
2109
  AgroStringUtils.trimToNull = function (str) {
2086
- if (!str)
2110
+ if (!str) {
2087
2111
  return null;
2112
+ }
2088
2113
  var trimmed = str.trim();
2089
2114
  return trimmed === "" ? null : trimmed;
2090
2115
  };
2091
2116
  /**
2092
- * Verifica se duas strings são iguais, ignorando maiúsculas e minúsculas.
2093
- * @param str1 - A primeira string a ser comparada.
2094
- * @param str2 - A segunda string a ser comparada.
2095
- * @returns True se as strings forem iguais, ignorando maiúsculas e minúsculas, false caso contrário.
2117
+ * Compara duas strings ignorando diferenças entre maiúsculas e minúsculas.
2096
2118
  */
2097
2119
  AgroStringUtils.equalsIgnoreCase = function (str1, str2) {
2098
2120
  return (str1 === null || str1 === void 0 ? void 0 : str1.toLowerCase()) === (str2 === null || str2 === void 0 ? void 0 : str2.toLowerCase());
2099
2121
  };
2100
2122
  /**
2101
- * Verifica se duas strings são iguais.
2102
- * @param str1
2103
- * @param str2
2104
- * @returns
2123
+ * Compara duas strings considerando diferenças entre maiúsculas e minúsculas.
2105
2124
  */
2106
2125
  AgroStringUtils.equals = function (str1, str2) {
2107
2126
  return str1 === str2;
2108
2127
  };
2109
- /**
2110
- * Inverte os caracteres de uma string.
2111
- * @param str - A string a ser invertida.
2112
- * @returns A string invertida.
2113
- */
2114
2128
  AgroStringUtils.reverse = function (str) {
2115
2129
  return str.split("").reverse().join("");
2116
2130
  };
2117
- /**
2118
- * Verifica se a string é um e-mail.
2119
- * @param str - A string a ser testada
2120
- * @returns - True se a string for um e-mail, false caso contrário.
2121
- */
2122
2131
  AgroStringUtils.isEmail = function (str) {
2123
2132
  return AGRO_REGEX.isEmail.test(str);
2124
2133
  };
2125
- /**
2126
- * Verifica se a string é um número inteiro positivo.
2127
- * @param str - A string a ser testada
2128
- * @returns - True se a string for um número inteiro positivo, false caso contrário.
2129
- */
2130
2134
  AgroStringUtils.isPositiveInteger = function (str) {
2131
2135
  return AGRO_REGEX.positiveInteger.test(str);
2132
2136
  };
2133
- /**
2134
- * Verifica se a string é um número decimal positivo.
2135
- * @param str - A string a ser testada
2136
- * @returns - True se a string for um número decimal positivo, false caso contrário.
2137
- */
2137
+ /** Retorna true se a string é uma string válida (não null, não undefined, não vazia) */
2138
+ AgroStringUtils.isString = function (value) {
2139
+ return typeof value === "string" && value.trim().length > AGRO_NUMBERS.ZERO;
2140
+ };
2138
2141
  AgroStringUtils.isPositiveDecimal = function (str) {
2139
2142
  return AGRO_REGEX.positiveDecimal.test(str);
2140
2143
  };
2141
- /**
2142
- * Verifica se a string é um CEP (Código Postal).
2143
- * @param str - A string a ser testada
2144
- * @returns - True se a string for um CEP, false caso contrário.
2145
- */
2146
2144
  AgroStringUtils.isZipCode = function (str) {
2147
2145
  return AGRO_REGEX.zipCode.test(str);
2148
2146
  };
2149
- /**
2150
- * Verifica se a string é um UUID.
2151
- * @param str - A string a ser testada
2152
- * @returns - True se a string for um UUID, false caso contrário.
2153
- */
2154
2147
  AgroStringUtils.isUUID = function (str) {
2155
2148
  return AGRO_REGEX.isUUID.test(str);
2156
2149
  };
2157
- /**
2158
- * Verifica se a string é um número.
2159
- * @param str - A string a ser testada
2160
- * @returns - True se a string for um número, false caso contrário.
2161
- */
2162
2150
  AgroStringUtils.isNumber = function (str) {
2163
2151
  return AGRO_REGEX.isNumber.test(str);
2164
2152
  };
2153
+ AgroStringUtils.validateCPF = function (cpf) {
2154
+ cpf = cpf.replace(/\D/g, "");
2155
+ if (cpf.length !== AGRO_NUMBERS.ELEVEN || /^(\d)\1+$/.test(cpf)) {
2156
+ return false;
2157
+ }
2158
+ var calcVerifier = function (cpf, length) {
2159
+ var sum = AGRO_NUMBERS.ZERO;
2160
+ for (var i = AGRO_NUMBERS.ZERO; i < length; i++) {
2161
+ sum += parseInt(cpf[i], AGRO_NUMBERS.TEN) * (length + AGRO_NUMBERS.ONE - i);
2162
+ }
2163
+ var result = sum % AGRO_NUMBERS.ELEVEN;
2164
+ return result < AGRO_NUMBERS.TWO ? AGRO_NUMBERS.ZERO : AGRO_NUMBERS.ELEVEN - result;
2165
+ };
2166
+ var digit1 = calcVerifier(cpf, AGRO_NUMBERS.NINE);
2167
+ var digit2 = calcVerifier(cpf, AGRO_NUMBERS.TEN);
2168
+ return digit1 === parseInt(cpf[AGRO_NUMBERS.NINE], AGRO_NUMBERS.TEN) && digit2 === parseInt(cpf[AGRO_NUMBERS.TEN], AGRO_NUMBERS.TEN);
2169
+ };
2165
2170
  /**
2166
- * Retorna a diferença entre duas strings.
2167
- * @param str1
2168
- * @param str2
2169
- * @returns
2171
+ * Detecta automaticamente se é CNPJ antigo ou novo formato.
2172
+ */
2173
+ AgroStringUtils.validateCNPJ = function (cnpj) {
2174
+ if (!cnpj) {
2175
+ return false;
2176
+ }
2177
+ cnpj = cnpj.trim();
2178
+ // Se contém letras → valida formato alfanumérico
2179
+ if (AgroStringUtils.hasLetters(cnpj)) {
2180
+ return AgroStringUtils.validateCNPJAlfanumerico(cnpj);
2181
+ }
2182
+ // Caso contrário, valida como CNPJ tradicional
2183
+ return AgroStringUtils.validateCNPJAntigo(cnpj);
2184
+ };
2185
+ /**
2186
+ * Valida o CNPJ tradicional (somente números)
2187
+ */
2188
+ AgroStringUtils.validateCNPJAntigo = function (cnpj) {
2189
+ cnpj = cnpj.replace(/\D/g, "");
2190
+ if (!AgroStringUtils.isOnlyNumbers(cnpj)) {
2191
+ return false;
2192
+ }
2193
+ if (cnpj.length !== AGRO_NUMBERS.FOURTEEN) {
2194
+ return false;
2195
+ }
2196
+ if (/^(\d)\1{13}$/.test(cnpj)) {
2197
+ return false;
2198
+ }
2199
+ var soma = AGRO_NUMBERS.ZERO;
2200
+ for (var i = AGRO_NUMBERS.ZERO; i < AGRO_NUMBERS.TWELVE; i++) {
2201
+ soma += parseInt(cnpj.charAt(i), AGRO_NUMBERS.TEN) * AgroStringUtils.CNPJ_TRADICIONAL_PESOS_1[i];
2202
+ }
2203
+ var resto = soma % AGRO_NUMBERS.ELEVEN;
2204
+ var digito1 = resto < AGRO_NUMBERS.TWO ? AGRO_NUMBERS.ZERO : AGRO_NUMBERS.ELEVEN - resto;
2205
+ soma = AGRO_NUMBERS.ZERO;
2206
+ for (var i = AGRO_NUMBERS.ZERO; i < AGRO_NUMBERS.THIRTEEN; i++) {
2207
+ soma += parseInt(cnpj.charAt(i), AGRO_NUMBERS.TEN) * AgroStringUtils.CNPJ_TRADICIONAL_PESOS_2[i];
2208
+ }
2209
+ resto = soma % AGRO_NUMBERS.ELEVEN;
2210
+ var digito2 = resto < AGRO_NUMBERS.TWO ? AGRO_NUMBERS.ZERO : AGRO_NUMBERS.ELEVEN - resto;
2211
+ return parseInt(cnpj.charAt(AGRO_NUMBERS.TWELVE), AGRO_NUMBERS.TEN) === digito1 && parseInt(cnpj.charAt(AGRO_NUMBERS.THIRTEEN), AGRO_NUMBERS.TEN) === digito2;
2212
+ };
2213
+ /**
2214
+ * Valida o CNPJ em formato alfanumérico (padrão 2026)
2170
2215
  */
2216
+ AgroStringUtils.validateCNPJAlfanumerico = function (cnpj) {
2217
+ if (!AgroStringUtils.isString(cnpj)) {
2218
+ return false;
2219
+ }
2220
+ // Remove caracteres especiais (pontos, barra, traço, espaços)
2221
+ var clean = cnpj.replace(/[^A-Za-z0-9]/g, "").toUpperCase();
2222
+ // O CNPJ deve ter exatamente 14 posições
2223
+ if (clean.length !== AGRO_NUMBERS.FOURTEEN) {
2224
+ return false;
2225
+ }
2226
+ // Verifica se há pelo menos uma letra e um número
2227
+ if (!AgroStringUtils.hasLetters(clean) || !AgroStringUtils.hasNumbers(clean)) {
2228
+ return false;
2229
+ }
2230
+ // Calcula o primeiro dígito verificador
2231
+ var pesos1 = AgroStringUtils.CNPJ_ALFANUMERICO_PESOS_1;
2232
+ var pesos2 = AgroStringUtils.CNPJ_ALFANUMERICO_PESOS_2;
2233
+ // Pega os 12 primeiros caracteres
2234
+ var base = clean.substring(AGRO_NUMBERS.ZERO, AGRO_NUMBERS.TWELVE);
2235
+ var dvInformado = clean.substring(AGRO_NUMBERS.TWELVE, AGRO_NUMBERS.FOURTEEN);
2236
+ var calculaDV = function (str, pesos) {
2237
+ var soma = AGRO_NUMBERS.ZERO;
2238
+ for (var i = AGRO_NUMBERS.ZERO; i < pesos.length; i++) {
2239
+ var char = str.charAt(i);
2240
+ var asciiValue = char.charCodeAt(0) - AGRO_NUMBERS.FORTY_EIGHT; // conforme documento (48 = '0')
2241
+ soma += asciiValue * pesos[i]; // asciiValue já calculado a partir do enum FORTY_EIGHT
2242
+ }
2243
+ var resto = soma % AGRO_NUMBERS.ELEVEN;
2244
+ var digito = AGRO_NUMBERS.ELEVEN - resto;
2245
+ return digito > AGRO_NUMBERS.NINE ? AGRO_NUMBERS.ZERO : digito; // segue mesma regra do CNPJ tradicional
2246
+ };
2247
+ var dv1 = calculaDV(base, pesos1);
2248
+ var dv2 = calculaDV(base + dv1.toString(), pesos2);
2249
+ var dvCalculado = "" + dv1 + dv2;
2250
+ return dvCalculado === dvInformado;
2251
+ };
2252
+ /** Calcula a diferença entre duas strings em termos de número de caracteres diferentes */
2171
2253
  AgroStringUtils.difference = function (str1, str2) {
2172
2254
  var len1 = str1.length;
2173
2255
  var len2 = str2.length;
@@ -2179,174 +2261,60 @@ var AgroStringUtils = /** @class */ (function () {
2179
2261
  }
2180
2262
  return diff;
2181
2263
  };
2182
- /**
2183
- * Retorna se a string termina com a string fornecida.
2184
- * @param str1
2185
- * @param str2
2186
- * @returns
2187
- */
2264
+ /** Verifica se str1 termina com str2 */
2188
2265
  AgroStringUtils.endsWith = function (str1, str2) {
2189
2266
  return str1.endsWith(str2);
2190
2267
  };
2191
- /**
2192
- * Retorna se a string começa com a string fornecida.
2193
- * @param str1
2194
- * @param str2
2195
- * @returns
2196
- */
2268
+ /** Verifica se str1 começa com str2 */
2197
2269
  AgroStringUtils.startsWith = function (str1, str2) {
2198
2270
  return str1.startsWith(str2);
2199
2271
  };
2200
- /**
2201
- * Retorna se a string contém a string fornecida.
2202
- * @param str1
2203
- * @param str2
2204
- * @returns
2205
- */
2272
+ /** Verifica se str1 contém str2 */
2206
2273
  AgroStringUtils.contains = function (str1, str2) {
2207
2274
  return str1.includes(str2);
2208
2275
  };
2209
- /**
2210
- * Retorna se a string começa com a string fornecida ignorando maiúsculas e minúsculas.
2211
- * @param str1
2212
- * @param str2
2213
- * @returns
2214
- */
2276
+ /** Verifica se str1 começa com str2, ignorando maiúsculas e minúsculas */
2215
2277
  AgroStringUtils.startsWithIgnoreCase = function (str1, str2) {
2216
2278
  return str1.toLowerCase().startsWith(str2.toLowerCase());
2217
2279
  };
2218
- /**
2219
- * Retorna se a string termina com a string fornecida ignorando maiúsculas e minúsculas.
2220
- * @param str1
2221
- * @param str2
2222
- * @returns
2223
- */
2280
+ /** Verifica se str1 termina com str2, ignorando maiúsculas e minúsculas */
2224
2281
  AgroStringUtils.endsWithIgnoreCase = function (str1, str2) {
2225
2282
  return str1.toLowerCase().endsWith(str2.toLowerCase());
2226
2283
  };
2227
- /**
2228
- * Converte uma string para letras maiúsculas.
2229
- * @param str - A string a ser convertida.
2230
- * @returns A string convertida para letras maiúsculas.
2231
- */
2232
- AgroStringUtils.toUpperCase = function (str) {
2233
- return str.toUpperCase();
2234
- };
2235
- /**
2236
- * Converte uma string para letras minúsculas.
2237
- * @param str - A string a ser convertida.
2238
- * @returns A string convertida para letras minúsculas.
2239
- */
2240
- AgroStringUtils.toLowerCase = function (str) {
2241
- return str.toLowerCase();
2242
- };
2243
- /**
2244
- * Inverte o caso das letras em uma string.
2245
- * @param str - A string a ser convertida.
2246
- * @returns A string com o caso das letras invertido.
2247
- */
2284
+ /** Inverte o caso de cada letra na string */
2248
2285
  AgroStringUtils.swapCase = function (str) {
2249
2286
  var swapped = "";
2250
2287
  for (var i = AGRO_NUMBERS.ZERO; i < str.length; i++) {
2251
2288
  var char = str[i];
2252
- if (char === char.toUpperCase()) {
2253
- swapped += char.toLowerCase();
2254
- }
2255
- else {
2256
- swapped += char.toUpperCase();
2257
- }
2289
+ swapped += char === char.toUpperCase() ? char.toLowerCase() : char.toUpperCase();
2258
2290
  }
2259
2291
  return swapped;
2260
2292
  };
2261
- /**
2262
- * Converte a primeira letra de uma string para maiúscula.
2263
- * @param str - A string a ser convertida.
2264
- * @returns A string com a primeira letra em maiúscula.
2265
- */
2293
+ /** Coloca a primeira letra da string em maiúsculo */
2266
2294
  AgroStringUtils.capitalize = function (str) {
2267
2295
  return str.charAt(AGRO_NUMBERS.ZERO).toUpperCase() + str.slice(1);
2268
2296
  };
2269
- /**
2270
- * Converte a primeira letra de uma string para minúscula.
2271
- * @param str - A string a ser convertida.
2272
- * @returns A string com a primeira letra em minúscula.
2273
- */
2297
+ /** Coloca a primeira letra da string em minúsculo */
2274
2298
  AgroStringUtils.uncapitalize = function (str) {
2275
2299
  return str.charAt(AGRO_NUMBERS.ZERO).toLowerCase() + str.slice(1);
2276
2300
  };
2277
- /**
2278
- * Conta o número de ocorrências de uma substring em uma string.
2279
- * @param str - A string onde a contagem será realizada.
2280
- * @param substring - A substring a ser contada.
2281
- * @returns O número de ocorrências da substring na string.
2282
- */
2301
+ /** Conta o número de ocorrências de uma substring dentro de uma string */
2283
2302
  AgroStringUtils.countMatches = function (str, substring) {
2284
2303
  var regex = new RegExp(substring, "g");
2285
- var matches = [];
2286
- var match;
2287
- while ((match = regex.exec(str)) !== null) {
2288
- matches.push(match[0]);
2289
- }
2304
+ var matches = str.match(regex);
2290
2305
  return matches ? matches.length : AGRO_NUMBERS.ZERO;
2291
2306
  };
2292
- AgroStringUtils.validateCPF = function (cpf) {
2293
- cpf = cpf.replace(/\D/g, "");
2294
- if (cpf.length !== 11 || /^(\d)\1+$/.test(cpf)) {
2295
- return false;
2296
- }
2297
- var calcVerifier = function (cpf, length) {
2298
- var sum = 0;
2299
- for (var i = 0; i < length; i++) {
2300
- sum += parseInt(cpf[i]) * (length + 1 - i);
2301
- }
2302
- var result = sum % 11;
2303
- return result < 2 ? 0 : 11 - result;
2304
- };
2305
- var digit1 = calcVerifier(cpf, 9);
2306
- var digit2 = calcVerifier(cpf, 10);
2307
- return digit1 === parseInt(cpf[9]) && digit2 === parseInt(cpf[10]);
2308
- };
2309
- AgroStringUtils.validateCNPJ = function (cnpj) {
2310
- // Remove todos os caracteres não numéricos
2311
- cnpj = cnpj.replace(/\D/g, "");
2312
- // Verifica se tem 14 dígitos
2313
- if (cnpj.length !== 14)
2314
- return false;
2315
- // Verifica se o CNPJ é uma sequência repetida (ex: 11111111111111, 22222222222222, etc.)
2316
- if (/^(\d)\1{13}$/.test(cnpj))
2317
- return false;
2318
- // Cálculo do primeiro dígito verificador
2319
- var soma = 0;
2320
- var pesos1 = [5, 4, 3, 2, 9, 8, 7, 6, 5, 4, 3, 2];
2321
- for (var i = 0; i < 12; i++) {
2322
- soma += parseInt(cnpj.charAt(i)) * pesos1[i];
2323
- }
2324
- var resto = soma % 11;
2325
- var digito1 = resto < 2 ? 0 : 11 - resto;
2326
- // Cálculo do segundo dígito verificador
2327
- soma = 0;
2328
- var pesos2 = [6, 5, 4, 3, 2, 9, 8, 7, 6, 5, 4, 3, 2];
2329
- for (var i = 0; i < 13; i++) {
2330
- soma += parseInt(cnpj.charAt(i)) * pesos2[i];
2331
- }
2332
- resto = soma % 11;
2333
- var digito2 = resto < 2 ? 0 : 11 - resto;
2334
- // Verifica se os dígitos verificadores são válidos
2335
- return parseInt(cnpj.charAt(12)) === digito1 && parseInt(cnpj.charAt(13)) === digito2;
2336
- };
2337
2307
  /**
2338
- * Método para aplicar uma máscara em uma string. Considere a máscara com valores 9 para aplicação
2339
- * @example AgroStringUtils.applyMask('12345678901', '999.999.999-99') => '123.456.789-01'
2340
- * @param value
2341
- * @param mask
2342
- * @returns
2308
+ * Aplica uma máscara simples à string fornecida.O padrão de máscaras é definido pelo enum AgroStringMasks ou
2309
+ * pode ser uma string personalizada onde '9' representa um dígito a ser substituído pelo caractere correspondente
2310
+ * da string.
2343
2311
  */
2344
2312
  AgroStringUtils.applyMask = function (value, mask) {
2345
2313
  var e_1, _a;
2346
2314
  var valueChars = value.toString().split("");
2347
2315
  var maskChars = mask.split("");
2348
2316
  var maskedValue = "";
2349
- var j = 0;
2317
+ var j = AGRO_NUMBERS.ZERO;
2350
2318
  try {
2351
2319
  for (var maskChars_1 = __values(maskChars), maskChars_1_1 = maskChars_1.next(); !maskChars_1_1.done; maskChars_1_1 = maskChars_1.next()) {
2352
2320
  var maskChar = maskChars_1_1.value;
@@ -2354,7 +2322,8 @@ var AgroStringUtils = /** @class */ (function () {
2354
2322
  break;
2355
2323
  }
2356
2324
  if (maskChar === "9") {
2357
- maskedValue += valueChars[j++];
2325
+ maskedValue += valueChars[j];
2326
+ j += AGRO_NUMBERS.ONE; // increment extracted per Sonar recommendation
2358
2327
  }
2359
2328
  else {
2360
2329
  maskedValue += maskChar;
@@ -2370,31 +2339,78 @@ var AgroStringUtils = /** @class */ (function () {
2370
2339
  }
2371
2340
  return maskedValue;
2372
2341
  };
2373
- /**
2374
- * Verifica se uma string é válida.
2375
- * @param str - A string a ser verificada.
2376
- * @returns True se a string for válida, false caso contrário.
2377
- */
2378
2342
  AgroStringUtils.isValid = function (str) {
2379
- if (typeof str === "undefined" || str === null) {
2380
- return false;
2381
- }
2382
- if (AgroStringUtils.isNotEmpty(str)) {
2383
- return true;
2384
- }
2385
- return false;
2343
+ return typeof str !== "undefined" && str !== null && this.isNotEmpty(str);
2386
2344
  };
2387
- /**
2388
- * Verifica se uma string é inválida.
2389
- * @param str - A string a ser verificada.
2390
- * @returns True se a string for inválida, false caso contrário.
2391
- */
2392
2345
  AgroStringUtils.isInvalid = function (str) {
2393
2346
  return !AgroStringUtils.isValid(str);
2394
2347
  };
2348
+ AgroStringUtils.CNPJ_TRADICIONAL_PESOS_1 = [
2349
+ AGRO_NUMBERS.FIVE,
2350
+ AGRO_NUMBERS.FOUR,
2351
+ AGRO_NUMBERS.THREE,
2352
+ AGRO_NUMBERS.TWO,
2353
+ AGRO_NUMBERS.NINE,
2354
+ AGRO_NUMBERS.EIGHT,
2355
+ AGRO_NUMBERS.SEVEN,
2356
+ AGRO_NUMBERS.SIX,
2357
+ AGRO_NUMBERS.FIVE,
2358
+ AGRO_NUMBERS.FOUR,
2359
+ AGRO_NUMBERS.THREE,
2360
+ AGRO_NUMBERS.TWO
2361
+ ];
2362
+ AgroStringUtils.CNPJ_TRADICIONAL_PESOS_2 = [
2363
+ AGRO_NUMBERS.SIX,
2364
+ AGRO_NUMBERS.FIVE,
2365
+ AGRO_NUMBERS.FOUR,
2366
+ AGRO_NUMBERS.THREE,
2367
+ AGRO_NUMBERS.TWO,
2368
+ AGRO_NUMBERS.NINE,
2369
+ AGRO_NUMBERS.EIGHT,
2370
+ AGRO_NUMBERS.SEVEN,
2371
+ AGRO_NUMBERS.SIX,
2372
+ AGRO_NUMBERS.FIVE,
2373
+ AGRO_NUMBERS.FOUR,
2374
+ AGRO_NUMBERS.THREE,
2375
+ AGRO_NUMBERS.TWO
2376
+ ];
2377
+ // Pesos utilizados para cálculo de dígitos verificadores do CNPJ alfanumérico (2026)
2378
+ AgroStringUtils.CNPJ_ALFANUMERICO_PESOS_1 = [
2379
+ AGRO_NUMBERS.FIVE,
2380
+ AGRO_NUMBERS.FOUR,
2381
+ AGRO_NUMBERS.THREE,
2382
+ AGRO_NUMBERS.TWO,
2383
+ AGRO_NUMBERS.NINE,
2384
+ AGRO_NUMBERS.EIGHT,
2385
+ AGRO_NUMBERS.SEVEN,
2386
+ AGRO_NUMBERS.SIX,
2387
+ AGRO_NUMBERS.FIVE,
2388
+ AGRO_NUMBERS.FOUR,
2389
+ AGRO_NUMBERS.THREE,
2390
+ AGRO_NUMBERS.TWO
2391
+ ];
2392
+ AgroStringUtils.CNPJ_ALFANUMERICO_PESOS_2 = [
2393
+ AGRO_NUMBERS.SIX,
2394
+ AGRO_NUMBERS.FIVE,
2395
+ AGRO_NUMBERS.FOUR,
2396
+ AGRO_NUMBERS.THREE,
2397
+ AGRO_NUMBERS.TWO,
2398
+ AGRO_NUMBERS.NINE,
2399
+ AGRO_NUMBERS.EIGHT,
2400
+ AGRO_NUMBERS.SEVEN,
2401
+ AGRO_NUMBERS.SIX,
2402
+ AGRO_NUMBERS.FIVE,
2403
+ AGRO_NUMBERS.FOUR,
2404
+ AGRO_NUMBERS.THREE,
2405
+ AGRO_NUMBERS.TWO
2406
+ ];
2395
2407
  return AgroStringUtils;
2396
2408
  }());
2397
2409
 
2410
+ // Cookie name constants
2411
+ var COOKIE_TOKEN = 'com.senior.token';
2412
+ var COOKIE_BASE_URL = 'com.senior.base.url';
2413
+ var COOKIE_SERVICES_URL = 'com.senior.services.url';
2398
2414
  var AgroPlatformUtils = /** @class */ (function () {
2399
2415
  function AgroPlatformUtils() {
2400
2416
  }
@@ -2404,31 +2420,30 @@ var AgroPlatformUtils = /** @class */ (function () {
2404
2420
  * @returns
2405
2421
  */
2406
2422
  AgroPlatformUtils.getCurrentTenant = function () {
2407
- var _a;
2408
- var cookie = AgroCookieUtils.getCookie('com.senior.token', true);
2409
- if (cookie) {
2410
- var str = (_a = AgroObjectUtils.fromString(cookie)) === null || _a === void 0 ? void 0 : _a.tenantName;
2411
- if (str) {
2412
- return str;
2413
- }
2423
+ var tenant = AgroPlatformUtils.getTokenField('tenantName');
2424
+ if (tenant) {
2425
+ return tenant;
2414
2426
  }
2415
- throw new Error('Cookie: "com.senior.token" não encontrado.');
2427
+ throw new Error("Cookie: \"" + COOKIE_TOKEN + "\" n\u00E3o encontrado.");
2416
2428
  };
2417
2429
  /**
2418
2430
  * Retorna o locale do tenant atual
2419
2431
  *
2420
2432
  * @returns
2421
2433
  */
2422
- AgroPlatformUtils.getCurrenTenantLocale = function () {
2423
- var _a;
2424
- var cookie = AgroCookieUtils.getCookie('com.senior.token', true);
2425
- if (cookie) {
2426
- var str = (_a = AgroObjectUtils.fromString(cookie)) === null || _a === void 0 ? void 0 : _a.locale;
2427
- if (str) {
2428
- return str;
2429
- }
2434
+ AgroPlatformUtils.getCurrentTenantLocale = function () {
2435
+ var locale = AgroPlatformUtils.getTokenField('locale');
2436
+ if (locale) {
2437
+ return locale;
2430
2438
  }
2431
- throw new Error('Cookie: "com.senior.token" não encontrado.');
2439
+ throw new Error("Cookie: \"" + COOKIE_TOKEN + "\" n\u00E3o encontrado.");
2440
+ };
2441
+ /**
2442
+ * @deprecated Use getCurrentTenantLocale()
2443
+ * Mantido por compatibilidade retroativa.
2444
+ */
2445
+ AgroPlatformUtils.getCurrenTenantLocale = function () {
2446
+ return AgroPlatformUtils.getCurrentTenantLocale();
2432
2447
  };
2433
2448
  /**
2434
2449
  * Retorna o usuário logado
@@ -2436,15 +2451,8 @@ var AgroPlatformUtils = /** @class */ (function () {
2436
2451
  * @returns string || null
2437
2452
  */
2438
2453
  AgroPlatformUtils.getCurrentUserName = function () {
2439
- var _a;
2440
- var cookie = AgroCookieUtils.getCookie('com.senior.token');
2441
- if (cookie) {
2442
- var str = (_a = AgroCookieUtils.parseCookieToObject(cookie, true)) === null || _a === void 0 ? void 0 : _a.fullName;
2443
- if (str) {
2444
- return str;
2445
- }
2446
- }
2447
- return null;
2454
+ var name = AgroPlatformUtils.getTokenField('fullName');
2455
+ return name || null;
2448
2456
  };
2449
2457
  /**
2450
2458
  * Retorna o e-mail do usuário logado
@@ -2452,16 +2460,11 @@ var AgroPlatformUtils = /** @class */ (function () {
2452
2460
  * @returns string
2453
2461
  */
2454
2462
  AgroPlatformUtils.getCurrentUserEmail = function () {
2455
- var _a;
2456
- var cookie = AgroCookieUtils.getCookie('com.senior.token');
2457
- if (cookie) {
2458
- var str = (_a = AgroCookieUtils.parseCookieToObject(cookie, true)) === null || _a === void 0 ? void 0 : _a.email;
2459
- if (str) {
2460
- return str;
2461
- }
2463
+ var email = AgroPlatformUtils.getTokenField('email');
2464
+ if (!email) {
2465
+ console.info("Cookie: \"" + COOKIE_TOKEN + "\" n\u00E3o encontrado.");
2462
2466
  }
2463
- console.error('Cookie: "com.senior.token" não encontrado.');
2464
- return null;
2467
+ return email || null;
2465
2468
  };
2466
2469
  /**
2467
2470
  * Retorna uma string com a baseURL atual
@@ -2469,11 +2472,11 @@ var AgroPlatformUtils = /** @class */ (function () {
2469
2472
  * @example "https://cloud-leaf.senior.com.br" || "https://platform.senior.com.br"
2470
2473
  */
2471
2474
  AgroPlatformUtils.getBaseURL = function () {
2472
- var cookie = AgroCookieUtils.getCookie('com.senior.base.url');
2475
+ var cookie = AgroCookieUtils.getCookie(COOKIE_BASE_URL);
2473
2476
  if (cookie) {
2474
2477
  return decodeURIComponent(cookie);
2475
2478
  }
2476
- throw new Error('Cookie: "com.senior.base.url" não encontrado.');
2479
+ throw new Error("Cookie: \"" + COOKIE_BASE_URL + "\" n\u00E3o encontrado.");
2477
2480
  };
2478
2481
  /**
2479
2482
  * Retorna uma string com a URL dos serviços
@@ -2481,27 +2484,33 @@ var AgroPlatformUtils = /** @class */ (function () {
2481
2484
  * @example "https://cloud-leaf.senior.com.br/t/senior.com.br/bridge/1.0/"
2482
2485
  */
2483
2486
  AgroPlatformUtils.getServicesURL = function () {
2484
- var cookie = AgroCookieUtils.getCookie('com.senior.services.url');
2487
+ var cookie = AgroCookieUtils.getCookie(COOKIE_SERVICES_URL);
2485
2488
  if (AgroStringUtils.isNotEmpty(cookie)) {
2486
2489
  return decodeURIComponent(cookie);
2487
2490
  }
2488
- throw new Error('Cookie: "com.senior.services.url" não encontrado.');
2491
+ throw new Error("Cookie: \"" + COOKIE_SERVICES_URL + "\" n\u00E3o encontrado.");
2489
2492
  };
2490
2493
  /**
2491
2494
  * Retorna uma string com o token de acesso atual
2492
2495
  * Caso contrário, retorna uma instância de Error
2493
2496
  */
2494
2497
  AgroPlatformUtils.getCurrentAccessToken = function () {
2495
- var _a;
2496
- var cookie = AgroCookieUtils.getCookie('com.senior.token');
2497
- if (cookie) {
2498
- var str = (_a = AgroCookieUtils.parseCookieToObject(cookie, true)) === null || _a === void 0 ? void 0 : _a.access_token;
2499
- if (str) {
2500
- return str;
2501
- }
2498
+ var token = AgroPlatformUtils.getTokenField('access_token');
2499
+ if (!token) {
2500
+ console.info("Cookie: \"" + COOKIE_TOKEN + "\" n\u00E3o encontrado.");
2502
2501
  }
2503
- console.error('Cookie: "com.senior.token" não encontrado.');
2504
- return null;
2502
+ return token || null;
2503
+ };
2504
+ /**
2505
+ * Helper para extrair um campo do cookie de token.
2506
+ */
2507
+ AgroPlatformUtils.getTokenField = function (field) {
2508
+ var cookie = AgroCookieUtils.getCookie(COOKIE_TOKEN);
2509
+ if (!cookie) {
2510
+ return undefined;
2511
+ }
2512
+ var obj = AgroCookieUtils.parseCookieToObject(cookie, true);
2513
+ return obj[field];
2505
2514
  };
2506
2515
  return AgroPlatformUtils;
2507
2516
  }());
@@ -2535,7 +2544,7 @@ var AgroNumberUtils = /** @class */ (function () {
2535
2544
  * @returns True se for par, false caso contrário.
2536
2545
  */
2537
2546
  AgroNumberUtils.isEven = function (value) {
2538
- return value % 2 === 0;
2547
+ return value % AGRO_NUMBERS.TWO === AGRO_NUMBERS.ZERO;
2539
2548
  };
2540
2549
  /**
2541
2550
  * Verifica se um número é ímpar.
@@ -2544,7 +2553,7 @@ var AgroNumberUtils = /** @class */ (function () {
2544
2553
  * @returns True se for ímpar, false caso contrário.
2545
2554
  */
2546
2555
  AgroNumberUtils.isOdd = function (value) {
2547
- return value % 2 !== 0;
2556
+ return value % AGRO_NUMBERS.TWO !== AGRO_NUMBERS.ZERO;
2548
2557
  };
2549
2558
  /**
2550
2559
  * Calcula a porcentagem de um valor em relação a um total.
@@ -2554,9 +2563,10 @@ var AgroNumberUtils = /** @class */ (function () {
2554
2563
  * @returns A porcentagem calculada.
2555
2564
  */
2556
2565
  AgroNumberUtils.percentage = function (partial, total) {
2557
- if (total === 0)
2566
+ if (total === AGRO_NUMBERS.ZERO) {
2558
2567
  throw new Error("O total não pode ser zero.");
2559
- return (partial / total) * 100;
2568
+ }
2569
+ return (partial / total) * AGRO_NUMBERS.ONE_HUNDRED;
2560
2570
  };
2561
2571
  /**
2562
2572
  * Formata um número para o formato monetário.
@@ -2582,6 +2592,9 @@ var AgroNumberUtils = /** @class */ (function () {
2582
2592
  * @returns Um número aleatório no intervalo.
2583
2593
  */
2584
2594
  AgroNumberUtils.randomInRange = function (min, max) {
2595
+ if (max <= min) {
2596
+ throw new Error("O valor máximo deve ser maior que o mínimo.");
2597
+ }
2585
2598
  return Math.random() * (max - min) + min;
2586
2599
  };
2587
2600
  /**
@@ -2591,11 +2604,13 @@ var AgroNumberUtils = /** @class */ (function () {
2591
2604
  * @returns True se for primo, false caso contrário.
2592
2605
  */
2593
2606
  AgroNumberUtils.isPrime = function (value) {
2594
- if (value <= 1)
2607
+ if (value <= AGRO_NUMBERS.ONE) {
2595
2608
  return false;
2596
- for (var i = 2; i <= Math.sqrt(value); i++) {
2597
- if (value % i === 0)
2609
+ }
2610
+ for (var i = AGRO_NUMBERS.TWO; i <= Math.sqrt(value); i++) {
2611
+ if (value % i === AGRO_NUMBERS.ZERO) {
2598
2612
  return false;
2613
+ }
2599
2614
  }
2600
2615
  return true;
2601
2616
  };
@@ -2607,8 +2622,11 @@ var AgroNumberUtils = /** @class */ (function () {
2607
2622
  * @returns O número arredondado.
2608
2623
  */
2609
2624
  AgroNumberUtils.roundTo = function (value, decimals) {
2610
- if (decimals === void 0) { decimals = 2; }
2611
- var factor = Math.pow(10, decimals);
2625
+ if (decimals === void 0) { decimals = AGRO_NUMBERS.TWO; }
2626
+ if (decimals < AGRO_NUMBERS.ZERO) {
2627
+ throw new Error("O número de casas decimais não pode ser negativo.");
2628
+ }
2629
+ var factor = Math.pow(AGRO_NUMBERS.TEN, decimals);
2612
2630
  return Math.round(value * factor) / factor;
2613
2631
  };
2614
2632
  return AgroNumberUtils;
@@ -2644,6 +2662,8 @@ var Colors = /** @class */ (function () {
2644
2662
  SECONDARY_RGB: "153, 153, 153",
2645
2663
  PRIMAEY_DISABLED: "#CCCCCC",
2646
2664
  PRIMAEY_DISABLED_RGB: "204, 204, 204",
2665
+ PRIMARY_DISABLED: "#CCCCCC",
2666
+ PRIMARY_DISABLED_RGB: "204, 204, 204",
2647
2667
  SECONDARY_DISABLED: "#D8D8D8",
2648
2668
  SECONDARY_DISABLED_RGB: "216, 216, 216",
2649
2669
  BLACK_HAZE: "#E5EAEA",
@@ -2707,8 +2727,7 @@ var AgroNameUtils = /** @class */ (function () {
2707
2727
  return null;
2708
2728
  }
2709
2729
  var parts = fullName.trim().split(/\s+/);
2710
- // Verifica se pelo menos duas partes no nome
2711
- if (parts.length < 2) {
2730
+ if (parts.length < AGRO_NUMBERS.TWO) {
2712
2731
  return fullName; // Retorna o nome original se não puder ser abreviado
2713
2732
  }
2714
2733
  var firstName = parts[0]; // Primeiro nome completo
@@ -2727,8 +2746,9 @@ var AgroNameUtils = /** @class */ (function () {
2727
2746
  return null;
2728
2747
  }
2729
2748
  var parts = fullName.trim().split(/\s+/);
2730
- if (parts.length < 2)
2749
+ if (parts.length < AGRO_NUMBERS.TWO) {
2731
2750
  return fullName;
2751
+ }
2732
2752
  var firstName = parts[0];
2733
2753
  var abbreviatedLastNames = parts
2734
2754
  .slice(1)
@@ -2840,61 +2860,52 @@ var AgroLogics = /** @class */ (function () {
2840
2860
  var e_1, _a;
2841
2861
  var total = data.length;
2842
2862
  var map = new Map();
2843
- var _loop_1 = function (item) {
2844
- var e_2, _a, e_3, _b;
2845
- var uniqueKey = JSON.stringify(keys.map(function (c) {
2846
- var e_4, _a;
2847
- var parts = c.split(".");
2848
- var value = item;
2849
- try {
2850
- for (var parts_2 = (e_4 = void 0, __values(parts)), parts_2_1 = parts_2.next(); !parts_2_1.done; parts_2_1 = parts_2.next()) {
2851
- var p = parts_2_1.value;
2852
- value = value === null || value === void 0 ? void 0 : value[p];
2863
+ var resolvePath = function (source, path) {
2864
+ var e_2, _a;
2865
+ var parts = path.split(".");
2866
+ var value = source;
2867
+ try {
2868
+ for (var parts_1 = __values(parts), parts_1_1 = parts_1.next(); !parts_1_1.done; parts_1_1 = parts_1.next()) {
2869
+ var p = parts_1_1.value;
2870
+ if (value == null) {
2871
+ return undefined;
2853
2872
  }
2873
+ value = value[p];
2854
2874
  }
2855
- catch (e_4_1) { e_4 = { error: e_4_1 }; }
2856
- finally {
2857
- try {
2858
- if (parts_2_1 && !parts_2_1.done && (_a = parts_2.return)) _a.call(parts_2);
2859
- }
2860
- finally { if (e_4) throw e_4.error; }
2875
+ }
2876
+ catch (e_2_1) { e_2 = { error: e_2_1 }; }
2877
+ finally {
2878
+ try {
2879
+ if (parts_1_1 && !parts_1_1.done && (_a = parts_1.return)) _a.call(parts_1);
2861
2880
  }
2862
- return value;
2863
- }));
2881
+ finally { if (e_2) throw e_2.error; }
2882
+ }
2883
+ return value;
2884
+ };
2885
+ var _loop_1 = function (item) {
2886
+ var e_3, _a;
2887
+ var keyValues = keys.map(function (k) { return resolvePath(item, k); });
2888
+ var uniqueKey = JSON.stringify(keyValues);
2864
2889
  if (!map.has(uniqueKey)) {
2865
2890
  var groupedData = {};
2866
2891
  try {
2867
- for (var keys_1 = (e_2 = void 0, __values(keys)), keys_1_1 = keys_1.next(); !keys_1_1.done; keys_1_1 = keys_1.next()) {
2868
- var c = keys_1_1.value;
2869
- var parts = c.split(".");
2870
- var value = item;
2871
- try {
2872
- for (var parts_1 = (e_3 = void 0, __values(parts)), parts_1_1 = parts_1.next(); !parts_1_1.done; parts_1_1 = parts_1.next()) {
2873
- var p = parts_1_1.value;
2874
- value = value === null || value === void 0 ? void 0 : value[p];
2875
- }
2876
- }
2877
- catch (e_3_1) { e_3 = { error: e_3_1 }; }
2878
- finally {
2879
- try {
2880
- if (parts_1_1 && !parts_1_1.done && (_b = parts_1.return)) _b.call(parts_1);
2881
- }
2882
- finally { if (e_3) throw e_3.error; }
2883
- }
2884
- // add the full entity (not only its ID)
2885
- groupedData[c.toString().split(".")[0]] = value;
2892
+ for (var keys_1 = (e_3 = void 0, __values(keys)), keys_1_1 = keys_1.next(); !keys_1_1.done; keys_1_1 = keys_1.next()) {
2893
+ var k = keys_1_1.value;
2894
+ var rootName = k.toString().split(".")[0];
2895
+ groupedData[rootName] = resolvePath(item, k);
2886
2896
  }
2887
2897
  }
2888
- catch (e_2_1) { e_2 = { error: e_2_1 }; }
2898
+ catch (e_3_1) { e_3 = { error: e_3_1 }; }
2889
2899
  finally {
2890
2900
  try {
2891
2901
  if (keys_1_1 && !keys_1_1.done && (_a = keys_1.return)) _a.call(keys_1);
2892
2902
  }
2893
- finally { if (e_2) throw e_2.error; }
2903
+ finally { if (e_3) throw e_3.error; }
2894
2904
  }
2895
2905
  map.set(uniqueKey, { data: groupedData, count: 0 });
2896
2906
  }
2897
- map.get(uniqueKey).count++;
2907
+ var entry = map.get(uniqueKey);
2908
+ entry.count += AGRO_NUMBERS.ONE;
2898
2909
  };
2899
2910
  try {
2900
2911
  for (var data_1 = __values(data), data_1_1 = data_1.next(); !data_1_1.done; data_1_1 = data_1.next()) {
@@ -2912,7 +2923,7 @@ var AgroLogics = /** @class */ (function () {
2912
2923
  var result = Array.from(map.values()).map(function (entry) { return ({
2913
2924
  data: entry.data,
2914
2925
  samplingQuantity: entry.count,
2915
- samplingSuccess: Math.round((entry.count / total) * 100),
2926
+ samplingSuccess: Math.round((entry.count / total) * AGRO_NUMBERS.ONE_HUNDRED),
2916
2927
  }); });
2917
2928
  result.sort(function (a, b) { return b.samplingSuccess - a.samplingSuccess; });
2918
2929
  return result;
@@ -3339,7 +3350,7 @@ var WebsocketService = /** @class */ (function () {
3339
3350
  this.handleError('WebSocketError', data);
3340
3351
  };
3341
3352
  WebsocketService.prototype.handleError = function (origin, data) {
3342
- console.error(origin, data);
3353
+ console.info(origin, data);
3343
3354
  this.error$.next(data);
3344
3355
  };
3345
3356
  WebsocketService.prototype.handleReconnection = function () {
@@ -3488,7 +3499,6 @@ var ptBR = {
3488
3499
  "agro.angular_components.change_request_event_summary": "Alteração de \nPesagem",
3489
3500
  "agro.angular_components.ticket_maintenance_header": "Manutenção de ticket",
3490
3501
  "agro.angular_components.invoice_creating_event": "Emissão de NF",
3491
- "agro.angular_components.invoice_close_event": "Fechamento de NF",
3492
3502
  "agro.angular_components.balance_entry_control_event": "Entrada/saída balança",
3493
3503
  "agro.angular_components.event_origin_label": "Origem do evento",
3494
3504
  "agro.angular_components.event_details_header": "Detalhes do Evento",
@@ -3705,7 +3715,6 @@ var ptBR = {
3705
3715
  "agro.angular_components.CREATE_INVOICE_FIXATION": "Emissão de NF",
3706
3716
  "agro.angular_components.CANCEL_INVOICE_FIXATION": "Cancelamento de NF",
3707
3717
  "agro.angular_components.ORIGINATION_CREATE_INVOICE": "Emissão de NF",
3708
- "agro.angular_components.INVOICE_CLOSE_INVOICE": "Fechamento de NF",
3709
3718
  "agro.angular_components.ORIGINATION_CREATE_EFFECTIVE_BALANCE": "Emissão de saldo efetivo",
3710
3719
  "agro.angular_components.PRODUCER_NET_VALUE_EFFECTIVE_BALANCE_CONFIRMATION": "Confirmação de saldo efetivo",
3711
3720
  "agro.angular_components.CLOSE_INVOICE_FIXATION": "Fechamento de NF",
@@ -3718,6 +3727,14 @@ var ptBR = {
3718
3727
  "agro.angular_components.TRANSFER_CREATE_SERVICE_INVOICE": "Emissão NF de serviço",
3719
3728
  "agro.angular_components.TRANSFER_CANCEL_SERVICE_INVOICE": "Cancelamento de NF de serviço",
3720
3729
  "agro.angular_components.REOPEN_INVOICE_FIXATION": "Reabertura da NF",
3730
+ "agro.angular_components.CIDASC_INTEGRATION": "Envio ao Cidasc",
3731
+ "agro.angular_components.CIDASC_CANCELLATION": "Cancelamento do Receituário",
3732
+ "agro.angular_components.CIDASC_DATA_LOAD_CULTURE": "Carga Cidasc - Cultura",
3733
+ "agro.angular_components.CIDASC_DATA_LOAD_PEST": "Carga Cidasc - Praga",
3734
+ "agro.angular_components.CIDASC_DATA_LOAD_PRODUCT": "Carga Cidasc - Produto",
3735
+ "agro.angular_components.CIDASC_DATA_LOAD_MEASURE_UNIT": "Carga Cidasc - Unidade de medida",
3736
+ "agro.angular_components.CIDASC_DATA_LOAD_COMPOSED_MEASURE_UNIT": "Carga Cidasc - Medida por hectare",
3737
+ "agro.angular_components.agronomic_prescription_origin_event": "Receituário Agronômico",
3721
3738
  };
3722
3739
 
3723
3740
  var enUS = {
@@ -3743,7 +3760,6 @@ var enUS = {
3743
3760
  "agro.angular_components.change_request_event_summary": "Weight Change",
3744
3761
  "agro.angular_components.ticket_maintenance_header": "Ticket Maintenance",
3745
3762
  "agro.angular_components.invoice_creating_event": "Invoice Issuance",
3746
- "agro.angular_components.invoice_close_event": "Invoice Closing",
3747
3763
  "agro.angular_components.balance_entry_control_event": "Balance Entry/Exit",
3748
3764
  "agro.angular_components.event_origin_label": "Event origin",
3749
3765
  "agro.angular_components.event_details_header": "Event Details",
@@ -3960,13 +3976,20 @@ var enUS = {
3960
3976
  "agro.angular_components.ORIGINATION_CREATE_EFFECTIVE_CONFIRMATION": "Effective confirmation",
3961
3977
  "agro.angular_components.ORIGINATION_CREATE_PROVISIONAL_BALANCE": "Provisional balance",
3962
3978
  "agro.angular_components.CLOSE_INVOICE_TRANSFER": "Close transfer invoice",
3963
- "agro.angular_components.INVOICE_CLOSE_INVOICE": "Invoice closing",
3964
3979
  "agro.angular_components.REOPEN_INVOICE_TRANSFER": "Reopen transfer invoice",
3965
3980
  "agro.angular_components.TRANSFER_CREATE_FINANCIAL_TITLE": "Financial title creation",
3966
3981
  "agro.angular_components.TRANSFER_CANCEL_FINANCIAL_TITLE": "Financial title cancellation",
3967
3982
  "agro.angular_components.TRANSFER_CREATE_SERVICE_INVOICE": "Service invoice issuance",
3968
3983
  "agro.angular_components.TRANSFER_CANCEL_SERVICE_INVOICE": "Service invoice cancellation",
3969
3984
  "agro.angular_components.REOPEN_INVOICE_FIXATION": "Reopen invoice fixation",
3985
+ "agro.angular_components.CIDASC_INTEGRATION": "Send to Cidasc",
3986
+ "agro.angular_components.CIDASC_CANCELLATION": "Prescription Cancellation",
3987
+ "agro.angular_components.CIDASC_DATA_LOAD_CULTURE": "Cidasc Load - Culture",
3988
+ "agro.angular_components.CIDASC_DATA_LOAD_PEST": "Cidasc Load - Pest",
3989
+ "agro.angular_components.CIDASC_DATA_LOAD_PRODUCT": "Cidasc Load - Product",
3990
+ "agro.angular_components.CIDASC_DATA_LOAD_MEASURE_UNIT": "Cidasc Load - Unit of measure",
3991
+ "agro.angular_components.CIDASC_DATA_LOAD_COMPOSED_MEASURE_UNIT": "Cidasc Load - Measure per hectare",
3992
+ "agro.angular_components.agronomic_prescription_origin_event": "Agronomic Prescription",
3970
3993
  };
3971
3994
 
3972
3995
  var esCO = {
@@ -3992,7 +4015,6 @@ var esCO = {
3992
4015
  "agro.angular_components.change_request_event_summary": "Cambio de \nPesaje",
3993
4016
  "agro.angular_components.ticket_maintenance_header": "Mantenimiento de ticket",
3994
4017
  "agro.angular_components.invoice_creating_event": "Emisión de Factura",
3995
- "agro.angular_components.invoice_close_event": "Cierre de Factura",
3996
4018
  "agro.angular_components.balance_entry_control_event": "Entrada/salida balanza",
3997
4019
  "agro.angular_components.event_origin_label": "Origen del evento",
3998
4020
  "agro.angular_components.event_details_header": "Detalles del Evento",
@@ -4209,13 +4231,20 @@ var esCO = {
4209
4231
  "agro.angular_components.ORIGINATION_CREATE_EFFECTIVE_CONFIRMATION": "Confirmación efectiva",
4210
4232
  "agro.angular_components.ORIGINATION_CREATE_PROVISIONAL_BALANCE": "Saldo provisional",
4211
4233
  "agro.angular_components.CLOSE_INVOICE_TRANSFER": "Cierre de factura",
4212
- "agro.angular_components.INVOICE_CLOSE_INVOICE": "Cierre de factura",
4213
4234
  "agro.angular_components.REOPEN_INVOICE_TRANSFER": "Reapertura de factura",
4214
4235
  "agro.angular_components.TRANSFER_CREATE_FINANCIAL_TITLE": "Creación de título financiero",
4215
4236
  "agro.angular_components.TRANSFER_CANCEL_FINANCIAL_TITLE": "Cancelación de título financiero",
4216
4237
  "agro.angular_components.TRANSFER_CREATE_SERVICE_INVOICE": "Emisión de NF de servicio",
4217
4238
  "agro.angular_components.TRANSFER_CANCEL_SERVICE_INVOICE": "Cancelación de NF de servicio",
4218
4239
  "agro.angular_components.REOPEN_INVOICE_FIXATION": "Reapertura de factura",
4240
+ "agro.angular_components.CIDASC_INTEGRATION": "Envío a Cidasc",
4241
+ "agro.angular_components.CIDASC_CANCELLATION": "Cancelación de Receta",
4242
+ "agro.angular_components.CIDASC_DATA_LOAD_CULTURE": "Carga Cidasc - Cultivo",
4243
+ "agro.angular_components.CIDASC_DATA_LOAD_PEST": "Carga Cidasc - Plaga",
4244
+ "agro.angular_components.CIDASC_DATA_LOAD_PRODUCT": "Carga Cidasc - Producto",
4245
+ "agro.angular_components.CIDASC_DATA_LOAD_MEASURE_UNIT": "Carga Cidasc - Unidad de medida",
4246
+ "agro.angular_components.CIDASC_DATA_LOAD_COMPOSED_MEASURE_UNIT": "Carga Cidasc - Medida por hectárea",
4247
+ "agro.angular_components.agronomic_prescription_origin_event": "Recetario Agronómico",
4219
4248
  };
4220
4249
 
4221
4250
  var LibTranslationService = /** @class */ (function () {
@@ -4269,14 +4298,6 @@ var LibTranslationService = /** @class */ (function () {
4269
4298
  return LibTranslationService;
4270
4299
  }());
4271
4300
 
4272
- var NUMBERS;
4273
- (function (NUMBERS) {
4274
- NUMBERS[NUMBERS["ZERO"] = 0] = "ZERO";
4275
- NUMBERS[NUMBERS["TWELVE"] = 12] = "TWELVE";
4276
- NUMBERS[NUMBERS["FIFTEEN"] = 15] = "FIFTEEN";
4277
- NUMBERS[NUMBERS["HUNDRED"] = 100] = "HUNDRED";
4278
- })(NUMBERS || (NUMBERS = {}));
4279
-
4280
4301
  var CancelEventDialogComponent = /** @class */ (function () {
4281
4302
  function CancelEventDialogComponent(formBuilder, config, ref, translate) {
4282
4303
  this.formBuilder = formBuilder;
@@ -4284,13 +4305,13 @@ var CancelEventDialogComponent = /** @class */ (function () {
4284
4305
  this.ref = ref;
4285
4306
  this.translate = translate;
4286
4307
  this.loading = false;
4287
- this.reasonMinLength = NUMBERS.FIFTEEN;
4308
+ this.reasonMinLength = AGRO_NUMBERS.FIFTEEN;
4288
4309
  this.ngUnsubscribe = new Subject();
4289
4310
  this.cpSize = {
4290
4311
  sm: 12,
4291
- md: NUMBERS.TWELVE,
4292
- lg: NUMBERS.TWELVE,
4293
- xl: NUMBERS.TWELVE,
4312
+ md: AGRO_NUMBERS.TWELVE,
4313
+ lg: AGRO_NUMBERS.TWELVE,
4314
+ xl: AGRO_NUMBERS.TWELVE,
4294
4315
  };
4295
4316
  this.priority = ButtonPriority;
4296
4317
  }
@@ -4318,14 +4339,14 @@ var CancelEventDialogComponent = /** @class */ (function () {
4318
4339
  multiple: false,
4319
4340
  required: function () { return true; },
4320
4341
  size: this.cpSize,
4321
- maxLength: NUMBERS.HUNDRED,
4342
+ maxLength: AGRO_NUMBERS.ONE_HUNDRED,
4322
4343
  }),
4323
4344
  ];
4324
4345
  };
4325
4346
  CancelEventDialogComponent.prototype.setDataConfigDialog = function () {
4326
4347
  var _a, _b, _c, _d;
4327
4348
  this.cancelEventDialogConfig = (_b = (_a = this.config.data) === null || _a === void 0 ? void 0 : _a.cancelEventDialogConfig) !== null && _b !== void 0 ? _b : {};
4328
- this.reasonMinLength = (_d = (_c = this.cancelEventDialogConfig) === null || _c === void 0 ? void 0 : _c.reasonMinLength) !== null && _d !== void 0 ? _d : NUMBERS.FIFTEEN;
4349
+ this.reasonMinLength = (_d = (_c = this.cancelEventDialogConfig) === null || _c === void 0 ? void 0 : _c.reasonMinLength) !== null && _d !== void 0 ? _d : AGRO_NUMBERS.FIFTEEN;
4329
4350
  };
4330
4351
  CancelEventDialogComponent.prototype.setTranslations = function () {
4331
4352
  this.translations = {
@@ -4402,7 +4423,6 @@ var EventOperation;
4402
4423
  EventOperation["EFFECTIVE"] = "EFFECTIVE";
4403
4424
  EventOperation["TICKET"] = "TICKET";
4404
4425
  EventOperation["CREATE_INVOICE"] = "CREATE_INVOICE";
4405
- EventOperation["INVOICE_CLOSE_INVOICE"] = "INVOICE_CLOSE_INVOICE";
4406
4426
  EventOperation["EFFECTIVE_CONFIRMATION"] = "EFFECTIVE_CONFIRMATION";
4407
4427
  EventOperation["REMOVE_PROVISIONAL"] = "REMOVE_PROVISIONAL";
4408
4428
  EventOperation["CHANGE_REQUEST"] = "CHANGE_REQUEST";
@@ -4465,11 +4485,6 @@ var eventItem = [
4465
4485
  value: EventOperation.CANCEL_INVOICE,
4466
4486
  subLabelField: InputFields.AGRO_INVOICE_TYPE,
4467
4487
  },
4468
- {
4469
- label: "agro.angular_components." + EventOperation.INVOICE_CLOSE_INVOICE,
4470
- value: EventOperation.INVOICE_CLOSE_INVOICE,
4471
- subLabelField: InputFields.AGRO_INVOICE_TYPE,
4472
- },
4473
4488
  { label: "agro.angular_components." + EventOperation.REPROCESS_INVOICE, value: EventOperation.REPROCESS_INVOICE },
4474
4489
  { label: "agro.angular_components." + EventOperation.EFFECTIVE_CONFIRMATION, value: EventOperation.EFFECTIVE_CONFIRMATION },
4475
4490
  { label: "agro.angular_components." + EventOperation.CHANGE_REQUEST, value: EventOperation.CHANGE_REQUEST },
@@ -4575,7 +4590,6 @@ var EventOrigin;
4575
4590
  EventOrigin["TRANSFER"] = "TRANSFER";
4576
4591
  EventOrigin["CHANGE_REQUEST"] = "CHANGE_REQUEST";
4577
4592
  EventOrigin["CREATE_INVOICE"] = "CREATE_INVOICE";
4578
- EventOrigin["CLOSE_INVOICE"] = "CLOSE_INVOICE";
4579
4593
  EventOrigin["FIXATION"] = "FIXATION";
4580
4594
  EventOrigin["CANCEL_FIXATION"] = "CANCEL_FIXATION";
4581
4595
  EventOrigin["TRANSFER_CANCELLATION"] = "TRANSFER_CANCELLATION";
@@ -5248,7 +5262,7 @@ var EventControlBoardComponent = /** @class */ (function () {
5248
5262
  return keys.reduce(function (acc, key) { return acc && acc[key]; }, parsedJson);
5249
5263
  }
5250
5264
  catch (error) {
5251
- console.error("Erro ao acessar o objeto pelo path: " + path, error);
5265
+ console.info("Erro ao acessar o objeto pelo path: " + path, error);
5252
5266
  return null;
5253
5267
  }
5254
5268
  };
@@ -5390,7 +5404,6 @@ var EventControlBoardComponent = /** @class */ (function () {
5390
5404
  case EventOrigin.TICKET:
5391
5405
  case EventOrigin.INVOICE:
5392
5406
  case EventOrigin.CREATE_INVOICE:
5393
- case EventOrigin.CLOSE_INVOICE:
5394
5407
  this.sidebarLoading = true;
5395
5408
  {
5396
5409
  var param = JSON.parse(this.selectedStep.item.input);
@@ -5546,7 +5559,7 @@ var EventControlBoardComponent = /** @class */ (function () {
5546
5559
  EventControlBoardComponent = __decorate([
5547
5560
  Component({
5548
5561
  selector: "event-control-board",
5549
- template: "<ng-container *sLoadingState=\"gridLoading\">\r\n <p-panel>\r\n <p-header>\r\n {{ \"agro.angular_components.event_control_header\" | libTranslate }}\r\n </p-header>\r\n <div class=\"ui-g\">\r\n <div class=\"ui-g-12\">\r\n <s-button\r\n id=\"refresh-button\"\r\n [priority]=\"ButtonPriority.Primary\"\r\n iconClass=\"fa fa-refresh\"\r\n [label]=\"'agro.angular_components.refresh' | libTranslate\"\r\n (click)=\"onSearch()\"\r\n >\r\n </s-button>\r\n <s-button\r\n *ngIf=\"standalone && showCancelButton\"\r\n id=\"cancel-button-agro-events-lib\"\r\n iconClass=\"fa fa-times\"\r\n [label]=\"'agro.angular_components.cancel' | libTranslate\"\r\n (click)=\"openCancelModal()\"\r\n >\r\n </s-button>\r\n </div>\r\n </div>\r\n <div class=\"ui-g\">\r\n <div class=\"ui-g-12 ui-md-12\" *ngIf=\"!gridData || gridData?.length === 0\">\r\n <s-empty-state\r\n iconClass=\"fa fa-exclamation-triangle\"\r\n title=\"{{ 'agro.angular_components.nothing_found' | libTranslate }}\"\r\n [showPrimaryAction]=\"false\"\r\n description=\"{{ 'agro.angular_components.table_empty_description' | libTranslate }}\"\r\n >\r\n </s-empty-state>\r\n </div>\r\n <ng-container *ngIf=\"gridData?.length > 0\">\r\n <p-table\r\n stylelass=\"custom-table\"\r\n #eventControlTable\r\n [value]=\"gridDataResolved\"\r\n [columns]=\"gridColumns\"\r\n dataKey=\"id\"\r\n [lazy]=\"true\"\r\n [scrollable]=\"true\"\r\n [resizableColumns]=\"true\"\r\n [paginator]=\"!standalone\"\r\n [totalRecords]=\"gridTotalRecords\"\r\n [rows]=\"10\"\r\n [responsive]=\"true\"\r\n (onLazyLoad)=\"onGridChange($event)\"\r\n [sortOrder]=\"getSortOrder()\"\r\n [first]=\"getRowIndex()\"\r\n [lazyLoadOnInit]=\"false\"\r\n sortMode=\"multiple\"\r\n [rows]=\"getPageSize()\"\r\n [rowsPerPageOptions]=\"[10, 20, 50, 100]\"\r\n >\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr>\r\n <ng-container *ngIf=\"!standalone\">\r\n <th\r\n *ngFor=\"let col of columns\"\r\n class=\"ui-lg-1 ui-md-1\"\r\n [pSortableColumn]=\"col.field\"\r\n scope=\"col\"\r\n >\r\n <div class=\"senior-header\">\r\n <span class=\"senior-header-title\">{{\r\n col.header\r\n }}</span>\r\n <p-sortIcon [field]=\"col.field\"></p-sortIcon>\r\n </div>\r\n </th>\r\n </ng-container>\r\n <th class=\"ui-lg-8 ui-md-7\" scope=\"col\">\r\n {{ \"agro.angular_components.panel_title_events_events\" | libTranslate }}\r\n </th>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-rowData>\r\n <tr>\r\n <ng-container *ngIf=\"!standalone\">\r\n <td class=\"ui-lg-1 ui-md-1\">\r\n {{ rowData.e070emp?.nomEmp }}\r\n </td>\r\n <td class=\"ui-lg-1 ui-md-1\">\r\n {{ rowData.e070fil?.nomFil }}\r\n </td>\r\n <td class=\"ui-lg-1 ui-md-1\">\r\n <ng-container [ngSwitch]=\"rowData.eventOrigin\">\r\n <span *ngSwitchCase=\"'BALANCE_ENTRY_CONTROL'\">\r\n {{\r\n \"agro.angular_components.balance_entry_control_event\"\r\n | libTranslate\r\n }}\r\n </span>\r\n <span *ngSwitchCase=\"'TICKET'\">\r\n {{\r\n \"agro.angular_components.ticket_maintenance_header\"\r\n | libTranslate\r\n }}\r\n </span>\r\n <span *ngSwitchCase=\"'TRANSFER'\">\r\n {{\r\n \"agro.angular_components.transfer_origin_event\"\r\n | libTranslate\r\n }}\r\n </span>\r\n <span *ngSwitchCase=\"'INVOICE'\">\r\n {{\r\n \"agro.angular_components.invoice_creating_event\"\r\n | libTranslate\r\n }}\r\n </span>\r\n <span *ngSwitchCase=\"'CHANGE_REQUEST'\">\r\n {{\r\n \"agro.angular_components.change_request_event\"\r\n | libTranslate\r\n }}\r\n </span>\r\n <span *ngSwitchCase=\"'FIXATION'\">\r\n {{\r\n \"agro.angular_components.fixation_event\"\r\n | libTranslate\r\n }}\r\n </span>\r\n <span *ngSwitchCase=\"'CANCEL_FIXATION'\">\r\n {{\r\n \"agro.angular_components.cancel_fixation_event\"\r\n | libTranslate\r\n }}\r\n </span>\r\n <span *ngSwitchCase=\"'TRANSFER_CANCELLATION'\">\r\n {{\r\n \"agro.angular_components.transfer_cancellation_event\"\r\n | libTranslate\r\n }}\r\n </span>\r\n </ng-container>\r\n </td>\r\n <td class=\"ui-lg-1 ui ui-md-1\">\r\n {{ rowData.controlCode || \"\" }}\r\n </td>\r\n </ng-container>\r\n <td class=\"ui-lg-8 ui-md-7\">\r\n <ng-container *ngFor=\"let group of rowData.groups\">\r\n <s-event-steps\r\n [steps]=\"group.steps || []\"\r\n [activeIndex]=\"group.activeIndex\"\r\n (stepSelected)=\"stepSelected($event)\"\r\n >\r\n </s-event-steps>\r\n </ng-container>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n <ng-template\r\n *ngIf=\"!standalone\"\r\n pTemplate=\"paginatorright\"\r\n class=\"custom-table\"\r\n >\r\n <span>\r\n {{\r\n \"agro.angular_components.registers_found\"\r\n | libTranslate : { total: gridTotalRecords }\r\n }}\r\n </span>\r\n </ng-template>\r\n </p-table>\r\n </ng-container>\r\n </div>\r\n </p-panel>\r\n</ng-container>\r\n<s-sidebar [visible]=\"showSidebar\" (visibleChange)=\"closeSidebar()\" header=\"{{ 'agro.angular_components.event_details_header' | libTranslate }}\">\r\n <div class=\"ui-fluid\">\r\n <p-fieldset [legend]=\"sidebarTitle\" [toggleable]=\"false\">\r\n <div class=\"ui-g\">\r\n <div class=\"ui-g-4\">\r\n <span\r\n ><strong>{{\r\n \"agro.angular_components.event_origin_label\" | libTranslate\r\n }}</strong></span\r\n >\r\n <ng-container [ngSwitch]=\"selectedStep?.eventType\">\r\n <p *ngSwitchCase=\"'BALANCE_ENTRY_CONTROL'\">\r\n {{ \"agro.angular_components.balance_entry_control_event\" | libTranslate }}\r\n </p>\r\n <p *ngSwitchCase=\"'TICKET'\">\r\n {{ \"agro.angular_components.ticket_maintenance_header\" | libTranslate }}\r\n </p>\r\n <p *ngSwitchCase=\"'TRANSFER'\">\r\n {{ \"agro.angular_components.transfer_origin_event\" | libTranslate }}\r\n </p>\r\n <p *ngSwitchCase=\"'INVOICE'\">\r\n {{ \"agro.angular_components.invoice_creating_event\" | libTranslate }}\r\n </p>\r\n <p *ngSwitchCase=\"'CHANGE_REQUEST'\">\r\n {{ \"agro.angular_components.change_request_event\" | libTranslate }}\r\n </p>\r\n <p *ngSwitchCase=\"'FIXATION'\">\r\n {{ \"agro.angular_components.fixation_event\" | libTranslate }}\r\n </p>\r\n <p *ngSwitchCase=\"'CANCEL_FIXATION'\">\r\n {{ \"agro.angular_components.cancel_fixation_event\" | libTranslate }}\r\n </p>\r\n <p *ngSwitchCase=\"'TRANSFER_CANCELLATION'\">\r\n {{ \"agro.angular_components.transfer_cancellation_event\" | libTranslate }}\r\n </p>\r\n </ng-container>\r\n </div>\r\n <div class=\"ui-g-4\" *ngIf=\"producerInvoice?.producerBalanceEntryControl.producer.e001pes.nomPes\">\r\n <span\r\n ><strong>{{ \"agro.angular_components.supplier\" | libTranslate }}</strong></span\r\n >\r\n <p>{{ producerInvoice?.producerBalanceEntryControl.producer.e001pes.nomPes }}</p>\r\n </div>\r\n <div class=\"ui-g-4\" *ngIf=\"producerInvoice?.producerBalanceEntryControl.ruralEstate.name\">\r\n <span\r\n ><strong>{{ \"agro.angular_components.rural_estate\" | libTranslate }}</strong></span\r\n >\r\n <p>{{ producerInvoice?.producerBalanceEntryControl.ruralEstate.name }}</p>\r\n </div>\r\n <div class=\"ui-g-4\" *ngIf=\"selectedStep?.controlCode\">\r\n <span\r\n ><strong>{{ \"agro.angular_components.control_code\" | libTranslate }}</strong></span\r\n >\r\n <p>{{ selectedStep?.controlCode }}</p>\r\n </div>\r\n <div class=\"ui-g-4\">\r\n <span\r\n ><strong>{{ \"agro.angular_components.status_label\" | libTranslate }}</strong></span\r\n >\r\n <ng-container [ngSwitch]=\"selectedStep?.item.status\">\r\n <p *ngSwitchCase=\"'SUCCESS'\">\r\n <s-badge\r\n [color]=\"BadgeColors.Green\"\r\n text=\"{{\r\n 'agro.angular_components.panel_title_events_completed_successfully'\r\n | libTranslate\r\n }}\"\r\n [selectable]=\"false\"\r\n >\r\n </s-badge>\r\n </p>\r\n <p *ngSwitchCase=\"'PROCESSING'\">\r\n <s-badge\r\n [color]=\"BadgeColors.Orange\"\r\n text=\"{{ 'agro.angular_components.processing' | libTranslate }}\"\r\n [selectable]=\"false\"\r\n >\r\n </s-badge>\r\n </p>\r\n <p *ngSwitchCase=\"'FAILED'\">\r\n <s-badge\r\n [color]=\"BadgeColors.Red\"\r\n text=\"{{\r\n 'agro.angular_components.panel_title_events_ended_with_error'\r\n | libTranslate\r\n }}\"\r\n [selectable]=\"false\"\r\n >\r\n </s-badge>\r\n </p>\r\n <p *ngSwitchCase=\"'PENDING'\">\r\n <s-badge\r\n [color]=\"BadgeColors.Gray\"\r\n text=\"{{ 'agro.angular_components.pending' | libTranslate }}\"\r\n [selectable]=\"false\"\r\n >\r\n </s-badge>\r\n </p>\r\n </ng-container>\r\n </div>\r\n <div class=\"ui-g-4\">\r\n <span\r\n ><strong>{{\r\n \"agro.angular_components.last_update_date\" | libTranslate\r\n }}</strong></span\r\n >\r\n <p>{{ selectedStep?.item.lastModifiedDate | date : \"dd/MM/yyyy HH:mm:ss\" }}</p>\r\n </div>\r\n <div class=\"ui-g-4\" *ngIf=\"selectedStep?.item.status === 'FAILED'\">\r\n <span\r\n ><strong>{{\r\n \"agro.angular_components.event_error_message\" | libTranslate\r\n }}</strong></span\r\n >\r\n <p>{{ selectedStep?.item.message || \"-\" }}</p>\r\n </div>\r\n </div>\r\n </p-fieldset>\r\n </div>\r\n <s-footer>\r\n <div class=\"ui-g\">\r\n <div class=\"ui-g-12 width-fit\">\r\n <s-button\r\n id=\"sidebar-close-button\"\r\n [priority]=\"ButtonPriority.Primary\"\r\n [label]=\"'agro.angular_components.events_close' | libTranslate\"\r\n [auxiliary]=\"false\"\r\n (click)=\"closeSidebar()\"\r\n >\r\n </s-button>\r\n <s-button\r\n *ngIf=\"showReprocessButton\"\r\n id=\"sidebar-reprocess-button\"\r\n [priority]=\"ButtonPriority.Secondary\"\r\n iconClass=\"fa fa-refresh\"\r\n [label]=\"'agro.angular_components.reprocess_event' | libTranslate\"\r\n [auxiliary]=\"false\"\r\n (click)=\"openModal()\"\r\n >\r\n </s-button>\r\n </div>\r\n </div>\r\n </s-footer>\r\n</s-sidebar>\r\n\r\n<p-dialog [header]=\"'agro.angular_components.event_modal_title' | libTranslate\" [(visible)]=\"displayModal\" [modal]=\"true\" class=\"dialog\">\r\n <div class=\"event-modal-text\">{{ \"agro.angular_components.event_modal\" | libTranslate }}</div>\r\n <p-footer>\r\n <div class=\"ui-dialog-buttonpane ui-widget-content ui-helper-clearfix\">\r\n <button\r\n id=\"modal-yes\"\r\n type=\"button\"\r\n pButton\r\n icon=\"fa fa-check\"\r\n (click)=\"confirmModal()\"\r\n label=\"{{ 'agro.angular_components.yes' | libTranslate }}\"\r\n class=\"ui-button ui-widget ui-state-default ui-corner-all ui-button-text-only\"\r\n ></button>\r\n <button\r\n id=\"modal-no\"\r\n type=\"button\"\r\n pButton\r\n icon=\"fa fa-close\"\r\n (click)=\"cancelModal()\"\r\n label=\"{{ 'agro.angular_components.no' | libTranslate }}\"\r\n class=\"ui-button ui-widget ui-state-default ui-corner-all ui-button-text-only\"\r\n ></button>\r\n </div>\r\n </p-footer>\r\n</p-dialog>\r\n",
5562
+ template: "<ng-container *sLoadingState=\"gridLoading\">\r\n <p-panel>\r\n <p-header>\r\n {{ \"agro.angular_components.event_control_header\" | libTranslate }}\r\n </p-header>\r\n <div class=\"ui-g\">\r\n <div class=\"ui-g-12\">\r\n <s-button\r\n id=\"refresh-button\"\r\n [priority]=\"ButtonPriority.Primary\"\r\n iconClass=\"fa fa-refresh\"\r\n [label]=\"'agro.angular_components.refresh' | libTranslate\"\r\n (click)=\"onSearch()\"\r\n >\r\n </s-button>\r\n <s-button\r\n *ngIf=\"standalone && showCancelButton\"\r\n id=\"cancel-button-agro-events-lib\"\r\n iconClass=\"fa fa-times\"\r\n [label]=\"'agro.angular_components.cancel' | libTranslate\"\r\n (click)=\"openCancelModal()\"\r\n >\r\n </s-button>\r\n </div>\r\n </div>\r\n <div class=\"ui-g\">\r\n <div class=\"ui-g-12 ui-md-12\" *ngIf=\"!gridData || gridData?.length === 0\">\r\n <s-empty-state\r\n iconClass=\"fa fa-exclamation-triangle\"\r\n title=\"{{ 'agro.angular_components.nothing_found' | libTranslate }}\"\r\n [showPrimaryAction]=\"false\"\r\n description=\"{{ 'agro.angular_components.table_empty_description' | libTranslate }}\"\r\n >\r\n </s-empty-state>\r\n </div>\r\n <ng-container *ngIf=\"gridData?.length > 0\">\r\n <p-table\r\n stylelass=\"custom-table\"\r\n #eventControlTable\r\n [value]=\"gridDataResolved\"\r\n [columns]=\"gridColumns\"\r\n dataKey=\"id\"\r\n [lazy]=\"true\"\r\n [scrollable]=\"true\"\r\n [resizableColumns]=\"true\"\r\n [paginator]=\"!standalone\"\r\n [totalRecords]=\"gridTotalRecords\"\r\n [rows]=\"10\"\r\n [responsive]=\"true\"\r\n (onLazyLoad)=\"onGridChange($event)\"\r\n [sortOrder]=\"getSortOrder()\"\r\n [first]=\"getRowIndex()\"\r\n [lazyLoadOnInit]=\"false\"\r\n sortMode=\"multiple\"\r\n [rows]=\"getPageSize()\"\r\n [rowsPerPageOptions]=\"[10, 20, 50, 100]\"\r\n >\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr>\r\n <ng-container *ngIf=\"!standalone\">\r\n <th *ngFor=\"let col of columns\" class=\"ui-lg-1 ui-md-1\" [pSortableColumn]=\"col.field\" scope=\"col\">\r\n <div class=\"senior-header\">\r\n <span class=\"senior-header-title\">{{ col.header }}</span>\r\n <p-sortIcon [field]=\"col.field\"></p-sortIcon>\r\n </div>\r\n </th>\r\n </ng-container>\r\n <th class=\"ui-lg-8 ui-md-7\" scope=\"col\">\r\n {{ \"agro.angular_components.panel_title_events_events\" | libTranslate }}\r\n </th>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-rowData>\r\n <tr>\r\n <ng-container *ngIf=\"!standalone\">\r\n <td class=\"ui-lg-1 ui-md-1\">\r\n {{ rowData.e070emp?.nomEmp }}\r\n </td>\r\n <td class=\"ui-lg-1 ui-md-1\">\r\n {{ rowData.e070fil?.nomFil }}\r\n </td>\r\n <td class=\"ui-lg-1 ui-md-1\">\r\n <ng-container [ngSwitch]=\"rowData.eventOrigin\">\r\n <span *ngSwitchCase=\"'BALANCE_ENTRY_CONTROL'\">\r\n {{ \"agro.angular_components.balance_entry_control_event\" | libTranslate }}\r\n </span>\r\n <span *ngSwitchCase=\"'TICKET'\">\r\n {{ \"agro.angular_components.ticket_maintenance_header\" | libTranslate }}\r\n </span>\r\n <span *ngSwitchCase=\"'TRANSFER'\">\r\n {{ \"agro.angular_components.transfer_origin_event\" | libTranslate }}\r\n </span>\r\n <span *ngSwitchCase=\"'INVOICE'\">\r\n {{ \"agro.angular_components.invoice_creating_event\" | libTranslate }}\r\n </span>\r\n <span *ngSwitchCase=\"'CHANGE_REQUEST'\">\r\n {{ \"agro.angular_components.change_request_event\" | libTranslate }}\r\n </span>\r\n <span *ngSwitchCase=\"'FIXATION'\">\r\n {{ \"agro.angular_components.fixation_event\" | libTranslate }}\r\n </span>\r\n <span *ngSwitchCase=\"'CANCEL_FIXATION'\">\r\n {{ \"agro.angular_components.cancel_fixation_event\" | libTranslate }}\r\n </span>\r\n <span *ngSwitchCase=\"'TRANSFER_CANCELLATION'\">\r\n {{ \"agro.angular_components.transfer_cancellation_event\" | libTranslate }}\r\n </span>\r\n <span *ngSwitchCase=\"'AGRONOMIC_PRESCRIPTION'\">\r\n {{ \"agro.angular_components.agronomic_prescription_origin_event\" | libTranslate }}\r\n </span>\r\n <span *ngSwitchCase=\"'PRESCRIPTION_INTEGRATION_HUB'\">\r\n {{ \"agro.angular_components.agronomic_prescription_origin_event\" | libTranslate }}\r\n </span>\r\n </ng-container>\r\n </td>\r\n <td class=\"ui-lg-1 ui ui-md-1\">\r\n {{ rowData.controlCode || \"\" }}\r\n </td>\r\n </ng-container>\r\n <td class=\"ui-lg-8 ui-md-7\">\r\n <ng-container *ngFor=\"let group of rowData.groups\">\r\n <s-event-steps\r\n [steps]=\"group.steps || []\"\r\n [activeIndex]=\"group.activeIndex\"\r\n (stepSelected)=\"stepSelected($event)\"\r\n >\r\n </s-event-steps>\r\n </ng-container>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n <ng-template *ngIf=\"!standalone\" pTemplate=\"paginatorright\" class=\"custom-table\">\r\n <span>\r\n {{ \"agro.angular_components.registers_found\" | libTranslate: { total: gridTotalRecords } }}\r\n </span>\r\n </ng-template>\r\n </p-table>\r\n </ng-container>\r\n </div>\r\n </p-panel>\r\n</ng-container>\r\n<s-sidebar\r\n [visible]=\"showSidebar\"\r\n (visibleChange)=\"closeSidebar()\"\r\n header=\"{{ 'agro.angular_components.event_details_header' | libTranslate }}\"\r\n>\r\n <div class=\"ui-fluid\">\r\n <p-fieldset [legend]=\"sidebarTitle\" [toggleable]=\"false\">\r\n <div class=\"ui-g\">\r\n <div class=\"ui-g-4\">\r\n <span\r\n ><strong>{{ \"agro.angular_components.event_origin_label\" | libTranslate }}</strong></span\r\n >\r\n <ng-container [ngSwitch]=\"selectedStep?.eventType\">\r\n <p *ngSwitchCase=\"'BALANCE_ENTRY_CONTROL'\">\r\n {{ \"agro.angular_components.balance_entry_control_event\" | libTranslate }}\r\n </p>\r\n <p *ngSwitchCase=\"'TICKET'\">\r\n {{ \"agro.angular_components.ticket_maintenance_header\" | libTranslate }}\r\n </p>\r\n <p *ngSwitchCase=\"'TRANSFER'\">\r\n {{ \"agro.angular_components.transfer_origin_event\" | libTranslate }}\r\n </p>\r\n <p *ngSwitchCase=\"'INVOICE'\">\r\n {{ \"agro.angular_components.invoice_creating_event\" | libTranslate }}\r\n </p>\r\n <p *ngSwitchCase=\"'CHANGE_REQUEST'\">\r\n {{ \"agro.angular_components.change_request_event\" | libTranslate }}\r\n </p>\r\n <p *ngSwitchCase=\"'FIXATION'\">\r\n {{ \"agro.angular_components.fixation_event\" | libTranslate }}\r\n </p>\r\n <p *ngSwitchCase=\"'CANCEL_FIXATION'\">\r\n {{ \"agro.angular_components.cancel_fixation_event\" | libTranslate }}\r\n </p>\r\n <p *ngSwitchCase=\"'TRANSFER_CANCELLATION'\">\r\n {{ \"agro.angular_components.transfer_cancellation_event\" | libTranslate }}\r\n </p>\r\n <p *ngSwitchCase=\"'AGRONOMIC_PRESCRIPTION'\">\r\n {{ \"agro.angular_components.agronomic_prescription_origin_event\" | libTranslate }}\r\n </p>\r\n <p *ngSwitchCase=\"'PRESCRIPTION_INTEGRATION_HUB'\">\r\n {{ \"agro.angular_components.agronomic_prescription_origin_event\" | libTranslate }}\r\n </p>\r\n </ng-container>\r\n </div>\r\n <div class=\"ui-g-4\" *ngIf=\"producerInvoice?.producerBalanceEntryControl.producer.e001pes.nomPes\">\r\n <span\r\n ><strong>{{ \"agro.angular_components.supplier\" | libTranslate }}</strong></span\r\n >\r\n <p>{{ producerInvoice?.producerBalanceEntryControl.producer.e001pes.nomPes }}</p>\r\n </div>\r\n <div class=\"ui-g-4\" *ngIf=\"producerInvoice?.producerBalanceEntryControl.ruralEstate.name\">\r\n <span\r\n ><strong>{{ \"agro.angular_components.rural_estate\" | libTranslate }}</strong></span\r\n >\r\n <p>{{ producerInvoice?.producerBalanceEntryControl.ruralEstate.name }}</p>\r\n </div>\r\n <div class=\"ui-g-4\" *ngIf=\"selectedStep?.controlCode\">\r\n <span\r\n ><strong>{{ \"agro.angular_components.control_code\" | libTranslate }}</strong></span\r\n >\r\n <p>{{ selectedStep?.controlCode }}</p>\r\n </div>\r\n <div class=\"ui-g-4\">\r\n <span\r\n ><strong>{{ \"agro.angular_components.status_label\" | libTranslate }}</strong></span\r\n >\r\n <ng-container [ngSwitch]=\"selectedStep?.item.status\">\r\n <p *ngSwitchCase=\"'SUCCESS'\">\r\n <s-badge\r\n [color]=\"BadgeColors.Green\"\r\n text=\"{{ 'agro.angular_components.panel_title_events_completed_successfully' | libTranslate }}\"\r\n [selectable]=\"false\"\r\n >\r\n </s-badge>\r\n </p>\r\n <p *ngSwitchCase=\"'PROCESSING'\">\r\n <s-badge\r\n [color]=\"BadgeColors.Orange\"\r\n text=\"{{ 'agro.angular_components.processing' | libTranslate }}\"\r\n [selectable]=\"false\"\r\n >\r\n </s-badge>\r\n </p>\r\n <p *ngSwitchCase=\"'FAILED'\">\r\n <s-badge\r\n [color]=\"BadgeColors.Red\"\r\n text=\"{{ 'agro.angular_components.panel_title_events_ended_with_error' | libTranslate }}\"\r\n [selectable]=\"false\"\r\n >\r\n </s-badge>\r\n </p>\r\n <p *ngSwitchCase=\"'PENDING'\">\r\n <s-badge\r\n [color]=\"BadgeColors.Gray\"\r\n text=\"{{ 'agro.angular_components.pending' | libTranslate }}\"\r\n [selectable]=\"false\"\r\n >\r\n </s-badge>\r\n </p>\r\n </ng-container>\r\n </div>\r\n <div class=\"ui-g-4\">\r\n <span\r\n ><strong>{{ \"agro.angular_components.last_update_date\" | libTranslate }}</strong></span\r\n >\r\n <p>{{ selectedStep?.item.lastModifiedDate | date: \"dd/MM/yyyy HH:mm:ss\" }}</p>\r\n </div>\r\n <div class=\"ui-g-4\" *ngIf=\"selectedStep?.item.status === 'FAILED'\">\r\n <span\r\n ><strong>{{ \"agro.angular_components.event_error_message\" | libTranslate }}</strong></span\r\n >\r\n <p>{{ selectedStep?.item.message || \"-\" }}</p>\r\n </div>\r\n </div>\r\n </p-fieldset>\r\n </div>\r\n <s-footer>\r\n <div class=\"ui-g\">\r\n <div class=\"ui-g-12 width-fit\">\r\n <s-button\r\n id=\"sidebar-close-button\"\r\n [priority]=\"ButtonPriority.Primary\"\r\n [label]=\"'agro.angular_components.events_close' | libTranslate\"\r\n [auxiliary]=\"false\"\r\n (click)=\"closeSidebar()\"\r\n >\r\n </s-button>\r\n <s-button\r\n *ngIf=\"showReprocessButton\"\r\n id=\"sidebar-reprocess-button\"\r\n [priority]=\"ButtonPriority.Secondary\"\r\n iconClass=\"fa fa-refresh\"\r\n [label]=\"'agro.angular_components.reprocess_event' | libTranslate\"\r\n [auxiliary]=\"false\"\r\n (click)=\"openModal()\"\r\n >\r\n </s-button>\r\n </div>\r\n </div>\r\n </s-footer>\r\n</s-sidebar>\r\n\r\n<p-dialog [header]=\"'agro.angular_components.event_modal_title' | libTranslate\" [(visible)]=\"displayModal\" [modal]=\"true\" class=\"dialog\">\r\n <div class=\"event-modal-text\">{{ \"agro.angular_components.event_modal\" | libTranslate }}</div>\r\n <p-footer>\r\n <div class=\"ui-dialog-buttonpane ui-widget-content ui-helper-clearfix\">\r\n <button\r\n id=\"modal-yes\"\r\n type=\"button\"\r\n pButton\r\n icon=\"fa fa-check\"\r\n (click)=\"confirmModal()\"\r\n label=\"{{ 'agro.angular_components.yes' | libTranslate }}\"\r\n class=\"ui-button ui-widget ui-state-default ui-corner-all ui-button-text-only\"\r\n ></button>\r\n <button\r\n id=\"modal-no\"\r\n type=\"button\"\r\n pButton\r\n icon=\"fa fa-close\"\r\n (click)=\"cancelModal()\"\r\n label=\"{{ 'agro.angular_components.no' | libTranslate }}\"\r\n class=\"ui-button ui-widget ui-state-default ui-corner-all ui-button-text-only\"\r\n ></button>\r\n </div>\r\n </p-footer>\r\n</p-dialog>\r\n",
5550
5563
  providers: [{ provide: LOCALE_ID, useValue: "pt-BR" }],
5551
5564
  styles: [".frozen{border-left:2px solid #ddd}.dialog{width:\"600px\";height:\"300px\";z-index:100000}:host ::ng-deep #cancel-button-agro-events-lib{background-color:#9c3a3a!important;border-color:#9c3a3a!important}:host ::ng-deep #cancel-button-agro-events-lib:hover{background-color:#642525!important}"]
5552
5565
  })