@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.
123 lines (122 loc) • 5.71 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 { ImageClickAction, ImageClickActionChoices } from './interfaces/image-click-action';
import { ImageDisplayChoices, ImageDisplayMode } from './interfaces/image-display-mode';
import { CustomSizeModel } from './interfaces/custom-size-model';
import { ThumbnailItem } from '../../rest-sdk/dto/thumbnail-item';
import { ContentSectionTitles, 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 { DescriptionExtended } from '@progress/sitefinity-widget-designers-sdk/decorators/description';
import { DisplayName } from '@progress/sitefinity-widget-designers-sdk/decorators/display-name';
import { DataModel, 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 { Required } from '@progress/sitefinity-widget-designers-sdk/decorators/validations';
import { ConditionalVisibility } from '@progress/sitefinity-widget-designers-sdk/decorators/conditional-visibility';
import { Margins } from '@progress/sitefinity-widget-designers-sdk/decorators/margins';
import { MediaItem, SdkItemModel } from '@progress/sitefinity-widget-designers-sdk/decorators/media-item';
let ImageEntity = class ImageEntity {
Item;
Title;
AlternativeText;
ClickAction = ImageClickAction.DoNothing;
ActionLink;
ImageSize = ImageDisplayMode.Responsive;
FitToContainer = true;
CustomSize = null;
Thumnail = null;
ViewName;
Margins = null;
SfWidgetLabel = 'Image';
CssClass;
Attributes;
};
__decorate([
MediaItem('images', false, true),
DataType('media'),
DisplayName(''),
DefaultValue(null),
DataModel(SdkItemModel)
], ImageEntity.prototype, "Item", void 0);
__decorate([
DescriptionExtended({ InlineDescription: '(for current page)' }),
DataType('string'),
DefaultValue(null)
], ImageEntity.prototype, "Title", void 0);
__decorate([
DisplayName('Alternative text'),
DescriptionExtended({ InlineDescription: '(for current page)' }),
DefaultValue(null),
DataType('string')
], ImageEntity.prototype, "AlternativeText", void 0);
__decorate([
DisplayName('When image is clicked...'),
Choice(ImageClickActionChoices)
], ImageEntity.prototype, "ClickAction", void 0);
__decorate([
DisplayName('Link to...'),
ConditionalVisibility('{"conditions":[{"fieldName":"ClickAction","operator":"Equals","value":"OpenLink"}]}'),
Required('Please select a link'),
DataType('linkSelector'),
DefaultValue(null)
], ImageEntity.prototype, "ActionLink", void 0);
__decorate([
ContentSection(ContentSectionTitles.DisplaySettings, 1),
DisplayName('Image size'),
Choice(ImageDisplayChoices)
], ImageEntity.prototype, "ImageSize", void 0);
__decorate([
DisplayName('Fit to container'),
ContentSection(ContentSectionTitles.DisplaySettings, 1),
DefaultValue(true),
DataType(KnownFieldTypes.CheckBox)
], ImageEntity.prototype, "FitToContainer", void 0);
__decorate([
DisplayName(''),
ContentSection(ContentSectionTitles.DisplaySettings, 1),
ConditionalVisibility('{"conditions":[{"fieldName":"ImageSize","operator":"Equals","value":"CustomSize"}]}'),
DataType('customSize'),
DataModel(CustomSizeModel)
], ImageEntity.prototype, "CustomSize", void 0);
__decorate([
DisplayName('Thumbnail'),
ContentSection(ContentSectionTitles.DisplaySettings, 1),
ConditionalVisibility('{"conditions":[{"fieldName":"ImageSize","operator":"Equals","value":"Thumbnail"}]}'),
DataType('thumbnail'),
DataModel(ThumbnailItem)
], ImageEntity.prototype, "Thumnail", void 0);
__decorate([
DisplayName('Image template'),
ContentSection(ContentSectionTitles.DisplaySettings, 1),
ViewSelector([{ Value: 'Image' }]),
DefaultValue('Image')
], ImageEntity.prototype, "ViewName", void 0);
__decorate([
Margins('Image'),
ContentSection(ContentSectionTitles.DisplaySettings, 1)
], ImageEntity.prototype, "Margins", void 0);
__decorate([
WidgetLabel()
], ImageEntity.prototype, "SfWidgetLabel", void 0);
__decorate([
Category('Advanced'),
DisplayName('CSS class'),
DataType('string'),
DefaultValue(null)
], ImageEntity.prototype, "CssClass", void 0);
__decorate([
Attributes('Image')
], ImageEntity.prototype, "Attributes", void 0);
ImageEntity = __decorate([
WidgetEntity('SitefinityImage', 'Image')
], ImageEntity);
export { ImageEntity };