@snabcentr/client-core 4.7.1 → 4.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json
CHANGED
package/release_notes.tmp
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
## 4.
|
|
1
|
+
## 4.10.0 (2026-07-22)
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
### added (1 change)
|
|
4
|
+
|
|
5
|
+
- [#13612: Добавлены механизмы установки Schema.org для страницы новости и FAQ](web_soft/libs/angular/snabcentr-client-core-lib@d84d698c188c19bf55922fd7ab13f9cbe4d5dab3) ([merge request](web_soft/libs/angular/snabcentr-client-core-lib!331))
|
|
4
6
|
|
|
@@ -4,7 +4,7 @@ import { InjectionToken, EventEmitter, Type, ClassProvider, ValueProvider, Provi
|
|
|
4
4
|
import { HttpRequest, HttpClient, HttpParams, HttpContextToken, HttpHandlerFn, HttpEvent, HttpContext } from '@angular/common/http';
|
|
5
5
|
import * as _snabcentr_client_core from '@snabcentr/client-core';
|
|
6
6
|
import { Router, ActivatedRouteSnapshot, UrlTree, CanActivateFn, ActivatedRoute } from '@angular/router';
|
|
7
|
-
import { WithContext, Product, CollectionPage, Thing } from 'schema-dts';
|
|
7
|
+
import { WithContext, Product, CollectionPage, Organization, NewsArticle, FAQPage, Thing } from 'schema-dts';
|
|
8
8
|
|
|
9
9
|
/**
|
|
10
10
|
* Статусы состояния запроса.
|
|
@@ -572,7 +572,32 @@ interface ScICompanyBaseInfo {
|
|
|
572
572
|
/**
|
|
573
573
|
* Адрес компании.
|
|
574
574
|
*/
|
|
575
|
-
readonly address:
|
|
575
|
+
readonly address: {
|
|
576
|
+
/**
|
|
577
|
+
* Страна.
|
|
578
|
+
*/
|
|
579
|
+
readonly country: string;
|
|
580
|
+
/**
|
|
581
|
+
* Регион.
|
|
582
|
+
*/
|
|
583
|
+
readonly region: string;
|
|
584
|
+
/**
|
|
585
|
+
* Населенный пункт.
|
|
586
|
+
*/
|
|
587
|
+
readonly locality: string;
|
|
588
|
+
/**
|
|
589
|
+
* Улица, дом, корпус, строение и т. п. (то есть адрес с точностью до здания).
|
|
590
|
+
*/
|
|
591
|
+
readonly streetAddress: string;
|
|
592
|
+
/**
|
|
593
|
+
* Подъезд, этаж, офис и т. п. (то есть сведения о местонахождении внутри здания), название торгового или бизнес-центра, а также любое описание, не являющееся точным адресом.
|
|
594
|
+
*/
|
|
595
|
+
readonly extendedAddress?: string;
|
|
596
|
+
/**
|
|
597
|
+
* Почтовый индекс.
|
|
598
|
+
*/
|
|
599
|
+
readonly postalCode: string;
|
|
600
|
+
};
|
|
576
601
|
/**
|
|
577
602
|
* Юридический адрес компании.
|
|
578
603
|
*/
|
|
@@ -9293,8 +9318,9 @@ declare class SchemaOrgFactory {
|
|
|
9293
9318
|
*
|
|
9294
9319
|
* @param product Данные о продукте.
|
|
9295
9320
|
* @param productPath Url путь к товару. В пути должен присутствовать шаблон ':id', обозначающий идентификатор товара для подстановки.
|
|
9321
|
+
* @param id Необязательный идентификатор сущности для поля `@id` в JSON-LD.
|
|
9296
9322
|
*/
|
|
9297
|
-
generateForProductItem(product: ScIProduct, productPath: string): WithContext<Product>;
|
|
9323
|
+
generateForProductItem(product: ScIProduct, productPath: string, id?: string): WithContext<Product>;
|
|
9298
9324
|
/**
|
|
9299
9325
|
* Генерирует и возвращает схему данных для указанного продукта.
|
|
9300
9326
|
*
|
|
@@ -9303,8 +9329,58 @@ declare class SchemaOrgFactory {
|
|
|
9303
9329
|
* @param categoryPath Url путь к категориям товаров. В пути должен присутствовать шаблон ':id', обозначающий идентификатор категории для подстановки.
|
|
9304
9330
|
* @param productPath Url путь к товару. В пути должен присутствовать шаблон ':id', обозначающий идентификатор товара для подстановки.
|
|
9305
9331
|
* @param breadcrumbs Данные о хлебных крошках для категории.
|
|
9332
|
+
* @param id Необязательный идентификатор сущности для поля `@id` в JSON-LD.
|
|
9333
|
+
*/
|
|
9334
|
+
generateForCategoryItem(category: ScICategory | ScIVirtualCategory, products: ScIProduct[], categoryPath: string, productPath: string, breadcrumbs: ScIBreadcrumbItem[], id?: string): WithContext<CollectionPage>;
|
|
9335
|
+
/**
|
|
9336
|
+
* Генерирует и возвращает схему данных OnlineStore на основе данных компании из окружения.
|
|
9337
|
+
*/
|
|
9338
|
+
generateForOrganization(): WithContext<Organization>;
|
|
9339
|
+
/**
|
|
9340
|
+
* Генерирует и возвращает схему данных для указанной новости.
|
|
9341
|
+
*
|
|
9342
|
+
* @param news Данные о новости.
|
|
9343
|
+
* @param newsPath Url путь к новости. В пути должен присутствовать шаблон ':id', обозначающий идентификатор новости для подстановки.
|
|
9344
|
+
* @param id Необязательный идентификатор сущности для поля `@id` в JSON-LD.
|
|
9345
|
+
*/
|
|
9346
|
+
generateForNewsArticle(news: ScINews, newsPath: string, id?: string): WithContext<NewsArticle>;
|
|
9347
|
+
/**
|
|
9348
|
+
* Генерирует и возвращает схему данных FAQPage для страницы с вопросами и ответами.
|
|
9349
|
+
*
|
|
9350
|
+
* @param items Список вопросов и ответов.
|
|
9351
|
+
* @param pagePath Url путь к странице FAQ.
|
|
9352
|
+
* @param pageName Необязательное название страницы.
|
|
9353
|
+
* @param id Необязательный идентификатор сущности для поля `@id` в JSON-LD.
|
|
9354
|
+
*/
|
|
9355
|
+
generateForFaqPage(items: ScFaqItem[], pagePath: string, pageName?: string, id?: string): WithContext<FAQPage>;
|
|
9356
|
+
/**
|
|
9357
|
+
* Объединяет несколько JSON-LD сущностей в один документ с `@graph`.
|
|
9358
|
+
*
|
|
9359
|
+
* @param data Массив JSON-LD сущностей для объединения.
|
|
9360
|
+
*/
|
|
9361
|
+
merge(data: Array<WithContext<Thing>>): WithContext<Thing>;
|
|
9362
|
+
/**
|
|
9363
|
+
* Формирует PostalAddress из структурированного адреса компании.
|
|
9364
|
+
*
|
|
9365
|
+
* @param address Структурированный адрес компании.
|
|
9366
|
+
*/
|
|
9367
|
+
private createPostalAddress;
|
|
9368
|
+
/**
|
|
9369
|
+
* Формирует список ContactPoint для Organization.
|
|
9370
|
+
*/
|
|
9371
|
+
private createOrganizationContactPoints;
|
|
9372
|
+
/**
|
|
9373
|
+
* Удаляет HTML-разметку из текста.
|
|
9374
|
+
*
|
|
9375
|
+
* @param html Текст с HTML-разметкой.
|
|
9376
|
+
*/
|
|
9377
|
+
private stripHtml;
|
|
9378
|
+
/**
|
|
9379
|
+
* Нормализует дату в формат Schema.org (ISO 8601).
|
|
9380
|
+
*
|
|
9381
|
+
* @param dateValue Дата для нормализации.
|
|
9306
9382
|
*/
|
|
9307
|
-
|
|
9383
|
+
private normalizeSchemaDate;
|
|
9308
9384
|
/**
|
|
9309
9385
|
* Нормализует дату окончания цены в формат Schema.org (YYYY-MM-DD).
|
|
9310
9386
|
*
|
|
@@ -9354,6 +9430,14 @@ declare class SchemaOrgFactory {
|
|
|
9354
9430
|
* @param categoryPath Url путь к категориям товаров. В пути должен присутствовать шаблон ':id', обозначающий идентификатор категории для подстановки.
|
|
9355
9431
|
*/
|
|
9356
9432
|
private createCatalogBreadcrumbsList;
|
|
9433
|
+
/**
|
|
9434
|
+
* Создаёт элемент BreadcrumbList в формате, рекомендованном Schema.org.
|
|
9435
|
+
*
|
|
9436
|
+
* @param position Позиция элемента в цепочке.
|
|
9437
|
+
* @param name Название элемента.
|
|
9438
|
+
* @param url URL элемента.
|
|
9439
|
+
*/
|
|
9440
|
+
private createBreadcrumbListItem;
|
|
9357
9441
|
static ɵfac: i0.ɵɵFactoryDeclaration<SchemaOrgFactory, never>;
|
|
9358
9442
|
static ɵprov: i0.ɵɵInjectableDeclaration<SchemaOrgFactory>;
|
|
9359
9443
|
}
|
|
@@ -9407,6 +9491,10 @@ declare class ScSeoService {
|
|
|
9407
9491
|
* Объект {@link Document}, предоставляющий доступ к DOM страницы.
|
|
9408
9492
|
*/
|
|
9409
9493
|
private readonly document;
|
|
9494
|
+
/**
|
|
9495
|
+
* Фабрика для создания данных Schema.org.
|
|
9496
|
+
*/
|
|
9497
|
+
private readonly schemaOrgFactory;
|
|
9410
9498
|
/**
|
|
9411
9499
|
* Фабрика для создания экземпляров {@link Renderer2}.
|
|
9412
9500
|
*/
|
|
@@ -9421,15 +9509,17 @@ declare class ScSeoService {
|
|
|
9421
9509
|
* @param resource Ресурс на основе которого необходимо установить мета-теги.
|
|
9422
9510
|
* @param img Изображение. Если не пришло, то будет установлено значение по умолчанию.
|
|
9423
9511
|
* @param robots Список robots-тегов для страницы.
|
|
9512
|
+
* @param schemaOrgData Данные Schema.org для встраивания на странице.
|
|
9424
9513
|
*/
|
|
9425
|
-
setFromResource(resource?: ScISeo, img?: string, robots?: RobotsTagType[]): void;
|
|
9514
|
+
setFromResource(resource?: ScISeo, img?: string, robots?: RobotsTagType[], schemaOrgData?: WithContext<Thing>): void;
|
|
9426
9515
|
/**
|
|
9427
9516
|
* Устанавливает seo параметры со значением по умолчанию.
|
|
9428
9517
|
*
|
|
9429
9518
|
* @param title Заголовок страницы.
|
|
9430
9519
|
* @param robots Список robots тегов для страницы.
|
|
9520
|
+
* @param schemaOrgData Данные Schema.org для встраивания на странице.
|
|
9431
9521
|
*/
|
|
9432
|
-
setByDefault(title?: string, robots?: RobotsTagType[]): void;
|
|
9522
|
+
setByDefault(title?: string, robots?: RobotsTagType[], schemaOrgData?: WithContext<Thing>): void;
|
|
9433
9523
|
/**
|
|
9434
9524
|
* Устанавливает seo параметры со значением по умолчанию. Устанавливает значение "не индексировать" для поисковых роботов.
|
|
9435
9525
|
*
|