mirror of
				https://github.com/crypto-pro-web/crypto-pro-js.git
				synced 2025-10-31 06:13:22 +03:00 
			
		
		
		
	Merge pull request #19 from versh23/add-space-subject
add support to translation tag with space
This commit is contained in:
		
						commit
						ebeb4761e6
					
				| @ -12,7 +12,7 @@ export const ISSUER_TAGS_TRANSLATIONS: TagsTranslations[] = [ | ||||
|   { possibleNames: ['ОГРН', 'OGRN'], translation: 'ОГРН' }, | ||||
|   { possibleNames: ['ОГРНИП', 'OGRNIP'], translation: 'ОГРНИП' }, | ||||
|   { possibleNames: ['СНИЛС', 'SNILS'], translation: 'СНИЛС' }, | ||||
|   { possibleNames: ['ИНН', 'INN'], translation: 'ИНН' }, | ||||
|   { possibleNames: ['ИНН', 'INN', 'ИНН организации'], translation: 'ИНН' }, | ||||
|   { possibleNames: ['E'], translation: 'Email' }, | ||||
|   { possibleNames: ['L'], translation: 'Город' }, | ||||
| ]; | ||||
|  | ||||
| @ -14,7 +14,7 @@ export const SUBJECT_TAGS_TRANSLATIONS: TagsTranslations[] = [ | ||||
|   { possibleNames: ['ОГРН', 'OGRN'], translation: 'ОГРН' }, | ||||
|   { possibleNames: ['ОГРНИП', 'OGRNIP'], translation: 'ОГРНИП' }, | ||||
|   { possibleNames: ['СНИЛС', 'SNILS'], translation: 'СНИЛС' }, | ||||
|   { possibleNames: ['ИНН', 'INN'], translation: 'ИНН' }, | ||||
|   { possibleNames: ['ИНН', 'INN', 'ИНН организации'], translation: 'ИНН' }, | ||||
|   { possibleNames: ['E'], translation: 'Email' }, | ||||
|   { possibleNames: ['L'], translation: 'Город' }, | ||||
| ]; | ||||
|  | ||||
| @ -19,6 +19,7 @@ describe('_parseCertInfo', () => { | ||||
|       'UNKNOWN=неизвестный тэг', | ||||
|       'E=email@example.ru', | ||||
|       'INN=007811514257', | ||||
|       'ИНН организации=007811514257', | ||||
|       'OGRN=1127847087885', | ||||
|       'SNILS=11617693460', | ||||
|     ].join(', '); | ||||
| @ -99,6 +100,11 @@ describe('_parseCertInfo', () => { | ||||
|         title: 'ИНН', | ||||
|         isTranslated: true, | ||||
|       }, | ||||
|       { | ||||
|         description: '007811514257', | ||||
|         title: 'ИНН', | ||||
|         isTranslated: true, | ||||
|       }, | ||||
|       { | ||||
|         description: '1127847087885', | ||||
|         title: 'ОГРН', | ||||
| @ -123,6 +129,7 @@ describe('_parseCertInfo', () => { | ||||
|       'S=78 Санкт-Петербург', | ||||
|       'C=RU', | ||||
|       'INN=007813317783', | ||||
|       'ИНН организации=007813317783', | ||||
|       'OGRN=1057810150892', | ||||
|       'E=uc@sampokey.ru', | ||||
|     ].join(', '); | ||||
| @ -173,6 +180,11 @@ describe('_parseCertInfo', () => { | ||||
|         title: 'ИНН', | ||||
|         isTranslated: true, | ||||
|       }, | ||||
|       { | ||||
|         description: '007813317783', | ||||
|         title: 'ИНН', | ||||
|         isTranslated: true, | ||||
|       }, | ||||
|       { | ||||
|         description: '1057810150892', | ||||
|         title: 'ОГРН', | ||||
|  | ||||
| @ -15,11 +15,11 @@ export interface TagTranslation { | ||||
|  * @returns расшифрованная информация по отдельным тэгам | ||||
|  */ | ||||
| export const _parseCertInfo = (tagsTranslations: TagsTranslations[], rawInfo: string): TagTranslation[] => { | ||||
|   const extractedEntities: string[] = rawInfo.match(/([а-яА-Яa-zA-Z0-9.]+)=(?:("[^"]+?")|(.+?))(?:,|$)/g); | ||||
|   const extractedEntities: string[] = rawInfo.match(/([а-яА-Яa-zA-Z0-9\s.]+)=(?:("[^"]+?")|(.+?))(?:,|$)/g); | ||||
| 
 | ||||
|   if (extractedEntities) { | ||||
|     return extractedEntities.map((group) => { | ||||
|       const segmentsMatch = group.match(/^([а-яА-Яa-zA-Z0-9.]+)=(.+?),?$/); | ||||
|       const segmentsMatch = group.trim().match(/^([а-яА-Яa-zA-Z0-9\s.]+)=(.+?),?$/); | ||||
|       let title = segmentsMatch?.[1]; | ||||
|       // Вырезаем лишние кавычки
 | ||||
|       const description = segmentsMatch?.[2]?.replace(/^"(.*)"/, '$1')?.replace(/"{2}/g, '"'); | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user
	 Vitalii Goma
						Vitalii Goma