@progress/sitefinity-nextjs-sdk
Version:
Provides OOB widgets developed using the Next.js framework, which includes an abstraction layer for Sitefinity communication. Additionally, it offers an expanded API, typings, and tools for further development and integration.
81 lines (80 loc) • 4.63 kB
JavaScript
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
return c > 3 && r && Object.defineProperty(target, key, r), r;
};
import { LanguageSelectorLinkAction } from './interfaces/language-selector-link-action';
import { KnownFieldTypes } from '@progress/sitefinity-widget-designers-sdk/common';
import { ContentSection } from '@progress/sitefinity-widget-designers-sdk/decorators/content-section';
import { DefaultValue } from '@progress/sitefinity-widget-designers-sdk/decorators/default-value';
import { Description } from '@progress/sitefinity-widget-designers-sdk/decorators/description';
import { DisplayName } from '@progress/sitefinity-widget-designers-sdk/decorators/display-name';
import { DataType } from '@progress/sitefinity-widget-designers-sdk/decorators/data-type';
import { Choice } from '@progress/sitefinity-widget-designers-sdk/decorators/choice';
import { Category } from '@progress/sitefinity-widget-designers-sdk/decorators/category';
import { WidgetEntity } from '@progress/sitefinity-widget-designers-sdk/decorators/widget-entity';
import { ViewSelector } from '@progress/sitefinity-widget-designers-sdk/decorators/view-selector';
import { WidgetLabel } from '@progress/sitefinity-widget-designers-sdk/decorators/widget-label';
import { Attributes } from '@progress/sitefinity-widget-designers-sdk/decorators/attributes';
import { Margins } from '@progress/sitefinity-widget-designers-sdk/decorators/margins';
import { LanguageSelectorDisplayFormat } from './interfaces/language-selector-language-format';
let LanguageSelectorEntity = class LanguageSelectorEntity {
LanguageSelectorLinkAction = LanguageSelectorLinkAction.HideLink;
LanguageSelectorDisplayFormat = LanguageSelectorDisplayFormat.Native;
SfViewName = 'Language selector';
Margins = null;
SfWidgetLabel = '';
CssClass;
Attributes;
};
__decorate([
ContentSection('Language selector setup'),
DisplayName('For languages without translations...'),
Description('Some pages may not be translated to all languages. This setting defines the language selector behavior when a translation is missing.'),
DataType(KnownFieldTypes.RadioChoice),
DefaultValue(LanguageSelectorLinkAction.HideLink),
Choice([
{ Title: 'Hide the link to the missing translation', Value: LanguageSelectorLinkAction.HideLink },
{ Title: 'Redirect to the home page in the language of the missing translation', Value: LanguageSelectorLinkAction.RedirectToHomePage }
])
], LanguageSelectorEntity.prototype, "LanguageSelectorLinkAction", void 0);
__decorate([
ContentSection('Language selector setup'),
DisplayName('Show language names...'),
DataType(KnownFieldTypes.RadioChoice),
DefaultValue(LanguageSelectorDisplayFormat.Native),
Choice([
{ Title: 'In native language (e.g., français, português)', Value: LanguageSelectorDisplayFormat.Native },
{ Title: 'In native language, capitalized (e.g., Français, Português)', Value: LanguageSelectorDisplayFormat.NativeCapitalized },
{ Title: 'In English (e.g., French, Portuguese)', Value: LanguageSelectorDisplayFormat.English }
])
], LanguageSelectorEntity.prototype, "LanguageSelectorDisplayFormat", void 0);
__decorate([
ContentSection('Display settings'),
DisplayName('Language selector template'),
ViewSelector()
], LanguageSelectorEntity.prototype, "SfViewName", void 0);
__decorate([
ContentSection('Display settings', 1),
Margins('Language selector')
], LanguageSelectorEntity.prototype, "Margins", void 0);
__decorate([
WidgetLabel(),
DefaultValue('')
], LanguageSelectorEntity.prototype, "SfWidgetLabel", void 0);
__decorate([
Category('Advanced'),
DisplayName('CSS class'),
DataType('string'),
DefaultValue(null)
], LanguageSelectorEntity.prototype, "CssClass", void 0);
__decorate([
Category('Advanced'),
ContentSection('Attributes', 1),
Attributes('Language selector')
], LanguageSelectorEntity.prototype, "Attributes", void 0);
LanguageSelectorEntity = __decorate([
WidgetEntity('SitefinityLanguageSelector', 'Language selector')
], LanguageSelectorEntity);
export { LanguageSelectorEntity };