@it-enterprise/digital-signature 1.3.10 → 1.3.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@it-enterprise/digital-signature",
3
- "version": "1.3.10",
3
+ "version": "1.3.11",
4
4
  "description": "digital signature",
5
5
  "private": false,
6
6
  "main": "src/index.js",
@@ -250,7 +250,7 @@ export default class DigitalSignature {
250
250
  return this._glSign;
251
251
  }
252
252
 
253
- async setLanguage(language){
253
+ async setLanguage(language) {
254
254
  await this._euSignFile.SetLanguage(language);
255
255
  if (await this._euSignKeyMedia.IsInitialized()) {
256
256
  await this._euSignKeyMedia.SetLanguage(language);
@@ -270,7 +270,7 @@ export default class DigitalSignature {
270
270
  * Считать ключ по параметрам
271
271
  * @param {PrivateKeyInfo} keyInfo - Параметры ключа
272
272
  */
273
- async readPrivateKeyByInfo(keyInfo) {
273
+ async readPrivateKeyByInfo(keyInfo) {
274
274
  if (!keyInfo) {
275
275
  throw {
276
276
  code: EndUserError.EU_ERROR_BAD_PARAMETER,
@@ -287,7 +287,7 @@ export default class DigitalSignature {
287
287
  case DigitalSignatureKeyType.KSP:
288
288
  return await this.readPrivateKeyKSP(keyInfo.ksp, keyInfo.kspUserId, false);
289
289
  }
290
- }
290
+ }
291
291
 
292
292
  /**
293
293
  * Считать аппаратный ключ
@@ -311,10 +311,10 @@ export default class DigitalSignature {
311
311
  }
312
312
 
313
313
  if (Array.isArray(certs)) {
314
- certs = await Promise.all(certs.map(cert =>
314
+ certs = await Promise.all(certs.map(cert =>
315
315
  cert instanceof File || cert instanceof Blob ? readFile(cert) :
316
- cert instanceof EndUserCertificate ? cert.data :
317
- cert));
316
+ cert instanceof EndUserCertificate ? cert.data :
317
+ cert));
318
318
  }
319
319
 
320
320
  try {
@@ -377,10 +377,10 @@ export default class DigitalSignature {
377
377
  privateKey = await readFile(privateKey);
378
378
  }
379
379
  if (Array.isArray(certs)) {
380
- certs = await Promise.all(certs.map(cert =>
380
+ certs = await Promise.all(certs.map(cert =>
381
381
  cert instanceof File || cert instanceof Blob ? readFile(cert) :
382
- cert instanceof EndUserCertificate ? cert.data :
383
- cert));
382
+ cert instanceof EndUserCertificate ? cert.data :
383
+ cert));
384
384
  }
385
385
  try {
386
386
  const ownerInfo = await this._euSign.ReadPrivateKeyBinary(privateKey, password, certs, this._selectedIssuerCN);
@@ -509,7 +509,7 @@ export default class DigitalSignature {
509
509
  */
510
510
  async setTwoFactorCodeKSP(code) {
511
511
  await this.setLibraryType(DigitalSignatureKeyType.KSP);
512
-
512
+
513
513
  return this._euSign.m_library.m_worker.postMessage("SetTwoFactorCodeKSP", [code]);
514
514
  }
515
515
 
@@ -523,11 +523,11 @@ export default class DigitalSignature {
523
523
  * @param {authenticationCallback} event - Коллбэк. Вызывается при запросе на подписание.
524
524
  */
525
525
  async addConfirmKSPOperationEventListener(event) {
526
- await this._euSignFile.AddEventListener(EndUserConstants.EndUserEventType.ConfirmKSPOperation, function(data) {
526
+ await this._euSignFile.AddEventListener(EndUserConstants.EndUserEventType.ConfirmKSPOperation, function (data) {
527
527
  data.qrCode = "data:image/bmp;base64," + data.qrCode;
528
528
  event(data);
529
529
  });
530
- }
530
+ }
531
531
 
532
532
  /**
533
533
  * Получить список облачных провайдеров
@@ -560,9 +560,9 @@ export default class DigitalSignature {
560
560
  /**
561
561
  * Остановить операцио с облачным ключом
562
562
  */
563
- async resetKSPOperation() {
564
- await this._euSignFile.ResetOperationKSP();
565
- }
563
+ async resetKSPOperation() {
564
+ await this._euSignFile.ResetOperationKSP();
565
+ }
566
566
 
567
567
  /**
568
568
  * Получить список центров сертификации
@@ -617,7 +617,7 @@ export default class DigitalSignature {
617
617
 
618
618
  if (this.readedKey.keyType === DigitalSignatureKeyType.KSP) {
619
619
  if (signType.type !== EndUserConstants.EU_SIGN_CONTAINER_TYPE_CADES &&
620
- signType.type !== EndUserConstants.EU_SIGN_CONTAINER_TYPE_PADES) {
620
+ signType.type !== EndUserConstants.EU_SIGN_CONTAINER_TYPE_PADES) {
621
621
  throw {
622
622
  code: EndUserError.EU_ERROR_NOT_SUPPORTED,
623
623
  message: this._resourses.KSPSignFormatError
@@ -1072,7 +1072,7 @@ export default class DigitalSignature {
1072
1072
  /**
1073
1073
  * Получить предпочитаемый тип ключа
1074
1074
  */
1075
- get _preferredKeyType () {
1075
+ get _preferredKeyType() {
1076
1076
  const keyType = parseInt(localStorage[this._userId + PRIVATE_KEY_TYPE]);
1077
1077
  if (typeof keyType === "number" && keyType > -1) {
1078
1078
  return keyType;
@@ -1086,7 +1086,7 @@ export default class DigitalSignature {
1086
1086
  * Задать предпочитаемый тип ключа
1087
1087
  * @param {DigitalSignatureKeyType | number} keyType - Тип ключа
1088
1088
  */
1089
- set _preferredKeyType (keyType) {
1089
+ set _preferredKeyType(keyType) {
1090
1090
  if (typeof keyType === "number" && keyType > -1) {
1091
1091
  localStorage[this._userId + PRIVATE_KEY_TYPE] = keyType;
1092
1092
  }
@@ -1096,11 +1096,11 @@ export default class DigitalSignature {
1096
1096
  return Resourses[this._language];
1097
1097
  }
1098
1098
 
1099
- get _userId () {
1099
+ get _userId() {
1100
1100
  return typeof this._settingsProvider.userId === "function" ? this._settingsProvider.userId() : this._settingsProvider.userId;
1101
1101
  }
1102
1102
 
1103
- get _language () {
1103
+ get _language() {
1104
1104
  return typeof this._settingsProvider.language === "function" ? this._settingsProvider.language() : this._settingsProvider.language;
1105
1105
  }
1106
1106
 
@@ -1119,5 +1119,21 @@ export default class DigitalSignature {
1119
1119
  };
1120
1120
  }
1121
1121
  }
1122
+ try {
1123
+ const health = await downloadData(new URL(ksp.address).origin + "/health");
1124
+ if (health.trim().toLowerCase() != "healthy") {
1125
+ throw {
1126
+ code: EndUserError.EU_ERROR_TRANSMIT_REQUEST,
1127
+ message: this._resourses.DiiaHealthCheckError
1128
+ };
1129
+ }
1130
+ } catch (error) {
1131
+ console.error(error);
1132
+ throw {
1133
+ code: EndUserError.EU_ERROR_TRANSMIT_REQUEST,
1134
+ message: this._resourses.DiiaHealthCheckError
1135
+ };
1136
+ }
1137
+
1122
1138
  }
1123
1139
  }
@@ -10,6 +10,7 @@
10
10
  "LibraryUpdate": "Оновлення web-бібліотеки підпису",
11
11
  "PrivateKeyNotReaded": "Особистий ключ не считано.",
12
12
  "DiiaError": "Дія.Підпис – сервіс для накладання кваліфікованого електронного підпису за допомогою смартфону і додатку «Дія».<br/>Для можливості використання «Дія.Підпис» у даній інсталяції системи вам необхідно звернутися до свого постачальника.<br/>У зверненні вкажіть наступну інформацію:<br/><ul><li>Посилання: ",
13
+ "DiiaHealthCheckError": "Сервіс Дія.Підпис недоступний.",
13
14
  "XadesError": "Перевірка кваліфікованого електронного підпису, який сформовано у вигляді окремого файлу з розширенням .xml виконується за умов наявності файлу з даними, на які накладено кваліфікований електронний підпис. Ім`я такого файлу зазвичай ідентичне з іменем файлу файлу з розширенням .xml. Оберіть цей файл разом з файлом кваліфікованого електронного підпису.",
14
15
  "KSPSignFormatError": "Хмарні сервіси підтримують тільки підписи типу CAdES або PAdES",
15
16
  "KSPSignPAdESError": "Створення підписів в форматі PAdES підтримується тільки для Серверу підпису",
@@ -32,6 +33,7 @@
32
33
  "LibraryUpdate": "Обновление web-библиотеки подписи",
33
34
  "PrivateKeyNotReaded": "Приватный ключ не считан.",
34
35
  "DiiaError": "Дія.Підпис – сервис для наложения квалифицированной электронной подписи с помощью смартфона и приложения «Дія».<br/>Для возможности использования «Дія.Підпис» в данной инсталляции системы вам необходимо обратиться к своему поставщику.<br/>В обращении укажите следующую информацию:<br/><ul><li>Ссылка: ",
36
+ "DiiaHealthCheckError": "Сервис Дія.Підпис недоступен.",
35
37
  "XadesError": "Проверка квалифицированной электронной подписи, которая сформирована в виде отдельного файла с расширением .xml, выполняется при наличии файла с данными, на которые наложена квалифицированная электронная подпись. Имя такого файла обычно идентично с именем файла с расширением .xml. Выберите этот файл вместе с квалифицированной электронной подписью.",
36
38
  "KSPSignFormatError": "Облачные сервисы поддерживают только подписи типа CAdES или PAdES",
37
39
  "KSPSignPAdESError": "Создание подписей в формате PAdES поддерживается только для Сервера подписи",
@@ -53,7 +55,8 @@
53
55
  "LibraryInstall": "Web-signature library installation package",
54
56
  "LibraryUpdate": "Web-signature library update package",
55
57
  "PrivateKeyNotReaded": "Private key not readed.",
56
- "DiiaError": "Diia.Sign - a service for applying a qualified digital signature using a smartphone and the application \"Дія\". <br/> To be able to use \"Diia.Sign\" in this system, you need to contact your provider. <br/> Please include the following information in your request: <br/> <ul> <li> Link: ",
58
+ "DiiaError": "Diia.Sign - a service for applying a qualified digital signature using a smartphone and the application \"Diia\". <br/> To be able to use \"Diia.Sign\" in this system, you need to contact your provider. <br/> Please include the following information in your request: <br/> <ul> <li> Link: ",
59
+ "DiiaHealthCheckError": "Diia.Sign service is unavailable.",
57
60
  "XadesError": "The verification of a qualified digital signature, which is formed as a separate file with the extension .xml, is performed under the conditions of the file with the data on which the qualified digital signature is affixed. The name of such a file is usually identical to the filename of the .xml file. Select this file along with the qualified digital signature file.",
58
61
  "KSPSignFormatError": "Cloud services only supports CAdES or PAdES signatures",
59
62
  "KSPSignPAdESError": "PAdES signatures are supported only by SignServer",