@chili-publish/studio-sdk 1.44.1 → 1.46.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/_bundles/main.js +2 -2
- package/_bundles/main.js.map +1 -1
- package/lib/src/controllers/BrandKitController.cjs.js +13 -64
- package/lib/src/controllers/BrandKitController.cjs.js.map +1 -1
- package/lib/src/controllers/BrandKitController.d.ts +22 -30
- package/lib/src/controllers/BrandKitController.es.js +13 -64
- package/lib/src/controllers/BrandKitController.es.js.map +1 -1
- package/lib/src/controllers/ComponentController.cjs.js +4 -0
- package/lib/src/controllers/ComponentController.cjs.js.map +1 -1
- package/lib/src/controllers/ComponentController.d.ts +7 -1
- package/lib/src/controllers/ComponentController.es.js +4 -0
- package/lib/src/controllers/ComponentController.es.js.map +1 -1
- package/lib/src/controllers/ConnectorController.cjs.js.map +1 -1
- package/lib/src/controllers/ConnectorController.d.ts +5 -5
- package/lib/src/controllers/ConnectorController.es.js.map +1 -1
- package/lib/src/controllers/SubscriberController.cjs.js +3 -0
- package/lib/src/controllers/SubscriberController.cjs.js.map +1 -1
- package/lib/src/controllers/SubscriberController.d.ts +7 -0
- package/lib/src/controllers/SubscriberController.es.js +3 -0
- package/lib/src/controllers/SubscriberController.es.js.map +1 -1
- package/lib/src/exceptions/AsyncExceptions.cjs.js.map +1 -1
- package/lib/src/exceptions/AsyncExceptions.d.ts +1 -0
- package/lib/src/exceptions/AsyncExceptions.es.js.map +1 -1
- package/lib/src/exceptions/Helpers.cjs.js.map +1 -1
- package/lib/src/exceptions/Helpers.es.js.map +1 -1
- package/lib/src/index.cjs.js +3 -2
- package/lib/src/index.cjs.js.map +1 -1
- package/lib/src/index.d.ts +2 -1
- package/lib/src/index.es.js +2 -1
- package/lib/src/interactions/Connector.cjs.js +2 -1
- package/lib/src/interactions/Connector.cjs.js.map +1 -1
- package/lib/src/interactions/Connector.d.ts +1 -0
- package/lib/src/interactions/Connector.es.js +2 -1
- package/lib/src/interactions/Connector.es.js.map +1 -1
- package/lib/src/next/NextInitiator.cjs.js +0 -2
- package/lib/src/next/NextInitiator.cjs.js.map +1 -1
- package/lib/src/next/NextInitiator.d.ts +0 -2
- package/lib/src/next/NextInitiator.es.js +0 -2
- package/lib/src/next/NextInitiator.es.js.map +1 -1
- package/lib/src/next/index.d.ts +0 -1
- package/lib/src/sdk/editor-engine.json.cjs.js +1 -1
- package/lib/src/sdk/editor-engine.json.es.js +1 -1
- package/lib/src/sdk/package.json.cjs.js +1 -1
- package/lib/src/sdk/package.json.es.js +1 -1
- package/lib/src/sdk.cjs.js +118 -79
- package/lib/src/sdk.cjs.js.map +1 -1
- package/lib/src/sdk.d.ts +52 -34
- package/lib/src/sdk.es.js +118 -79
- package/lib/src/sdk.es.js.map +1 -1
- package/lib/src/types/BrandKitTypes.d.ts +70 -108
- package/lib/src/types/ColorStyleTypes.cjs.js +10 -0
- package/lib/src/types/ColorStyleTypes.cjs.js.map +1 -1
- package/lib/src/types/ColorStyleTypes.es.js +10 -0
- package/lib/src/types/ColorStyleTypes.es.js.map +1 -1
- package/lib/src/types/CommonTypes.cjs.js +1 -0
- package/lib/src/types/CommonTypes.cjs.js.map +1 -1
- package/lib/src/types/CommonTypes.d.ts +12 -1
- package/lib/src/types/CommonTypes.es.js +1 -0
- package/lib/src/types/CommonTypes.es.js.map +1 -1
- package/lib/src/types/ComponentGridTypes.cjs.js.map +1 -1
- package/lib/src/types/ComponentGridTypes.es.js.map +1 -1
- package/lib/src/types/ConnectorTypes.cjs.js +6 -2
- package/lib/src/types/ConnectorTypes.cjs.js.map +1 -1
- package/lib/src/types/ConnectorTypes.d.ts +10 -1
- package/lib/src/types/ConnectorTypes.es.js +6 -2
- package/lib/src/types/ConnectorTypes.es.js.map +1 -1
- package/lib/src/types/FrameTypes.cjs.js.map +1 -1
- package/lib/src/types/FrameTypes.d.ts +2 -4
- package/lib/src/types/FrameTypes.es.js.map +1 -1
- package/lib/src/types/MethodInvocationTypes.d.ts +27 -0
- package/lib/src/types/RichTextRuleTypes.cjs.js.map +1 -1
- package/lib/src/types/RichTextRuleTypes.es.js.map +1 -1
- package/lib/src/types/ShapeTypes.cjs.js +1 -0
- package/lib/src/types/ShapeTypes.cjs.js.map +1 -1
- package/lib/src/types/ShapeTypes.d.ts +12 -2
- package/lib/src/types/ShapeTypes.es.js +1 -0
- package/lib/src/types/ShapeTypes.es.js.map +1 -1
- package/lib/src/utils/ConfigHelper.cjs.js +4 -0
- package/lib/src/utils/ConfigHelper.cjs.js.map +1 -1
- package/lib/src/utils/ConfigHelper.es.js +4 -0
- package/lib/src/utils/ConfigHelper.es.js.map +1 -1
- package/lib/src/utils/EngineEventTrigger.cjs.js +4 -1
- package/lib/src/utils/EngineEventTrigger.cjs.js.map +1 -1
- package/lib/src/utils/EngineEventTrigger.d.ts +2 -1
- package/lib/src/utils/EngineEventTrigger.es.js +5 -2
- package/lib/src/utils/EngineEventTrigger.es.js.map +1 -1
- package/lib/src/utils/MethodInstrumentation.cjs.js +176 -0
- package/lib/src/utils/MethodInstrumentation.cjs.js.map +1 -0
- package/lib/src/utils/MethodInstrumentation.d.ts +10 -0
- package/lib/src/utils/MethodInstrumentation.es.js +176 -0
- package/lib/src/utils/MethodInstrumentation.es.js.map +1 -0
- package/lib/src/utils/SdkEvent.cjs.js +29 -0
- package/lib/src/utils/SdkEvent.cjs.js.map +1 -0
- package/lib/src/utils/SdkEvent.d.ts +13 -0
- package/lib/src/utils/SdkEvent.es.js +29 -0
- package/lib/src/utils/SdkEvent.es.js.map +1 -0
- package/lib/src/utils/SdkEvents.cjs.js +11 -0
- package/lib/src/utils/SdkEvents.cjs.js.map +1 -0
- package/lib/src/utils/SdkEvents.d.ts +19 -0
- package/lib/src/utils/SdkEvents.es.js +11 -0
- package/lib/src/utils/SdkEvents.es.js.map +1 -0
- package/package.json +1 -1
- package/lib/src/next/controllers/BrandKitController.cjs.js +0 -34
- package/lib/src/next/controllers/BrandKitController.cjs.js.map +0 -1
- package/lib/src/next/controllers/BrandKitController.d.ts +0 -24
- package/lib/src/next/controllers/BrandKitController.es.js +0 -34
- package/lib/src/next/controllers/BrandKitController.es.js.map +0 -1
- package/lib/src/next/types/BrandKitTypes.d.ts +0 -52
- package/lib/src/utils/BrandKitAdapter.cjs.js +0 -42
- package/lib/src/utils/BrandKitAdapter.cjs.js.map +0 -1
- package/lib/src/utils/BrandKitAdapter.d.ts +0 -9
- package/lib/src/utils/BrandKitAdapter.es.js +0 -42
- package/lib/src/utils/BrandKitAdapter.es.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CommonTypes.es.js","sources":["../../../src/types/CommonTypes.ts"],"sourcesContent":["import { CallSender } from 'penpal';\nimport { ConnectorInstance, DocumentAction, DocumentFontFamily, ToolType, ViewMode } from '..';\nimport { EngineCallbackHandler } from '../utils/EngineCallbackHandler';\nimport { EngineEvent } from '../utils/EngineEvent';\nimport { AnimationPlaybackType, FrameAnimationType } from './AnimationTypes';\nimport { BarcodeFrameValidationResult } from './BarcodeTypes';\nimport { CharacterStyle } from './CharacterStyleTypes';\nimport { DocumentColor } from './ColorStyleTypes';\nimport { StudioOptionsDeltaUpdate, StudioStyling } from './ConfigurationTypes';\nimport { AuthCredentials, AuthRefreshRequest, ConnectorEvent } from './ConnectorTypes';\nimport { DocumentIssue, DocumentType, UndoState } from './DocumentTypes';\nimport { EngineEditMode } from './EngineEditModeTypes';\nimport type { FrameType } from './FrameTypes';\nimport { Frame, FrameLayoutType, FrameTypeEnum } from './FrameTypes';\nimport { LayoutListItemType, LayoutPropertiesType, LayoutWithFrameProperties, MeasurementUnit } from './LayoutTypes';\nimport { Page, PageSize } from './PageTypes';\nimport { ParagraphStyle } from './ParagraphStyleTypes';\nimport { CornerRadiusUpdateModel } from './ShapeTypes';\nimport { SelectedTextStyle } from './TextStyleTypes';\nimport { Variable } from './VariableTypes';\nimport { Viewport } from './ViewportTypes';\nimport { BrandKitMedia } from './BrandKitTypes';\nimport { AsyncError } from '../exceptions';\n\nexport type Id = string;\nexport type BaseConfigType = {\n editorLink?: string;\n editorId?: string;\n chiliEnvironmentUrl?: string;\n documentType?: DocumentType;\n studioStyling?: StudioStyling;\n studioOptions?: StudioOptionsDeltaUpdate;\n /**\n * Whether the engine should cache query calls.\n * When enabled it will cache the query calls regardless of the cache control headers.\n */\n enableQueryCallCache?: boolean;\n enableNextSubscribers?: {\n onVariableListChanged: boolean;\n };\n logging?: {\n logLevel?: LogLevel;\n logger?: LoggerFunction;\n };\n /**\n * Callback function that is called when an error occurs during iframe setup or connection.\n * @param error The error that occurred during setup or connection\n */\n onConnectionError?: (error: Error) => void;\n};\n\nexport type LoggerFunction = (logLevel: LogLevel, category: LogCategory, message: string) => void;\n\nexport enum LogLevel {\n info = 'info',\n warn = 'warn',\n error = 'error',\n}\n\nexport enum LogCategory {\n general = 'general',\n connector = 'connector',\n event = 'event',\n engine = 'engine',\n}\n\n/**\n * Defines the behavior when encountering an error in the event / handler callback.\n */\nexport enum CallbackErrorBehavior {\n /**\n * Throws an error when encountering an error in a callback.\n */\n throw = 'throw',\n\n /**\n * Logs the error when encountering an error in a callback.\n */\n log = 'log',\n}\n\nexport type MaybePromise<T> = T | Promise<T>;\n\nexport type ManagedCallbacksConfigType = {\n handlers: {\n onAuthExpired: EngineCallbackHandler<\n (authRefreshRequest: AuthRefreshRequest) => Promise<AuthCredentials | null>\n >;\n onViewportRequested: EngineCallbackHandler<() => Viewport | null>;\n };\n events: {\n onActionsChanged: EngineEvent<(state: DocumentAction[]) => MaybePromise<void>>;\n onStateChanged: EngineEvent<() => MaybePromise<void>>;\n onDocumentLoaded: EngineEvent<() => MaybePromise<void>>;\n onSelectedFramesLayoutChanged: EngineEvent<(states: FrameLayoutType[]) => MaybePromise<void>>;\n onFramesLayoutChanged: EngineEvent<(states: FrameLayoutType[]) => MaybePromise<void>>;\n onSelectedFramesContentChanged: EngineEvent<(state: Frame[]) => MaybePromise<void>>;\n onPageSelectionChanged: EngineEvent<(id: Id) => MaybePromise<void>>;\n onSelectedLayoutPropertiesChanged: EngineEvent<(state: LayoutPropertiesType) => MaybePromise<void>>;\n onSelectedLayoutUnitChanged: EngineEvent<(unit: MeasurementUnit) => MaybePromise<void>>;\n onScrubberPositionChanged: EngineEvent<(state: AnimationPlaybackType) => MaybePromise<void>>;\n onFrameAnimationsChanged: EngineEvent<(animationState: FrameAnimationType[]) => MaybePromise<void>>;\n onVariableListChanged: EngineEvent<(variableList: Variable[]) => MaybePromise<void>>;\n onSelectedToolChanged: EngineEvent<(tool: ToolType) => MaybePromise<void>>;\n onUndoStackStateChanged: EngineEvent<(undoStackState: UndoState) => MaybePromise<void>>;\n onSelectedLayoutFramesChanged: EngineEvent<(frames: SelectedLayoutFrame[]) => MaybePromise<void>>;\n onSelectedTextStyleChanged: EngineEvent<(styles: SelectedTextStyle) => MaybePromise<void>>;\n onColorsChanged: EngineEvent<(colors: DocumentColor[]) => MaybePromise<void>>;\n onParagraphStylesChanged: EngineEvent<(paragraphStyles: ParagraphStyle[]) => MaybePromise<void>>;\n onCharacterStylesChanged: EngineEvent<(characterStyles: CharacterStyle[]) => MaybePromise<void>>;\n onFontFamiliesChanged: EngineEvent<(fontFamilies: DocumentFontFamily[]) => MaybePromise<void>>;\n onSelectedLayoutIdChanged: EngineEvent<(layoutId: string) => MaybePromise<void>>;\n onLayoutsChanged: EngineEvent<(layouts: LayoutListItemType[]) => MaybePromise<void>>;\n onConnectorEvent: EngineEvent<(event: ConnectorEvent) => MaybePromise<void>>;\n onConnectorsChanged: EngineEvent<(connectors: ConnectorInstance[]) => MaybePromise<void>>;\n onZoomChanged: EngineEvent<(scaleFactor: number) => MaybePromise<void>>;\n onSelectedPageIdChanged: EngineEvent<(pageId: Id) => MaybePromise<void>>;\n onPagesChanged: EngineEvent<(pages: Page[]) => MaybePromise<void>>;\n onPageSnapshotInvalidated: EngineEvent<(pageId: Id) => MaybePromise<void>>;\n onPageSizeChanged: EngineEvent<(pageSize: PageSize) => MaybePromise<void>>;\n onShapeCornerRadiusChanged: EngineEvent<(cornerRadius: CornerRadiusUpdateModel) => MaybePromise<void>>;\n onCropActiveFrameIdChanged: EngineEvent<(id?: Id) => MaybePromise<void>>;\n onAsyncError: EngineEvent<(asyncError: AsyncError) => MaybePromise<void>>;\n onViewModeChanged: EngineEvent<(tool: ViewMode) => MaybePromise<void>>;\n onBarcodeValidationChanged: EngineEvent<\n (validationResults: BarcodeFrameValidationResult[]) => MaybePromise<void>\n >;\n onDataSourceIdChanged: EngineEvent<(connectorId?: Id) => MaybePromise<void>>;\n onInjectedDataChanged: EngineEvent<(variableId: Id) => MaybePromise<void>>;\n onDocumentIssueListChanged: EngineEvent<(documentIssues: DocumentIssue[]) => MaybePromise<void>>;\n onCustomUndoDataChanged: EngineEvent<(customData: Record<string, string>) => MaybePromise<void>>;\n onEngineEditModeChanged: EngineEvent<(engineEditMode: EngineEditMode) => MaybePromise<void>>;\n onBrandKitMediaChanged: EngineEvent<(brandKitMedia: BrandKitMedia[]) => MaybePromise<void>>;\n };\n};\n\nexport type InitialCallbacksConfigType = {\n /**\n * @deprecated use `events.onActionsChanged` instead\n */\n onActionsChanged?: (state: DocumentAction[]) => void;\n\n /**\n * @deprecated use `events.onStateChanged` instead\n */\n onStateChanged?: () => void;\n\n /**\n * @deprecated use `events.onAuthExpired` instead\n */\n onAuthExpired?: (authRefreshRequest: AuthRefreshRequest) => Promise<AuthCredentials | null>;\n\n /**\n * @deprecated use `events.onViewportRequested` instead\n */\n onViewportRequested?: () => Viewport | null;\n\n /**\n * @deprecated use `events.onDocumentLoaded` instead\n */\n onDocumentLoaded?: () => void;\n\n /**\n * @deprecated use `onSelectedFramesLayoutChanged` instead\n *\n */\n onSelectedFrameLayoutChanged?: (state: FrameLayoutType) => void;\n\n /**\n * @deprecated use `events.onSelectedFramesLayoutChanged` instead\n */\n onSelectedFramesLayoutChanged?: (states: FrameLayoutType[]) => void;\n\n /**\n * @deprecated use `events.onFramesLayoutChanged` instead\n */\n onFramesLayoutChanged?: (states: FrameLayoutType[]) => void;\n\n /**\n * @deprecated use `onSelectedFramesContentChanged` instead\n */\n onSelectedFrameContentChanged?: (state: Frame | null) => void;\n\n /**\n * @deprecated use `events.onSelectedFramesContentChanged` instead\n */\n onSelectedFramesContentChanged?: (state: Frame[]) => void;\n\n /**\n * @deprecated use `onSelectedPageIdChanged` instead\n */\n onPageSelectionChanged?: (id: Id) => void;\n\n /**\n * @deprecated use `events.onSelectedLayoutPropertiesChanged` instead\n */\n onSelectedLayoutPropertiesChanged?: (state: LayoutPropertiesType) => void;\n\n /**\n * @deprecated use `events.onSelectedLayoutUnitChanged` instead\n */\n onSelectedLayoutUnitChanged?: (unit: MeasurementUnit) => void;\n\n /**\n * @deprecated use `events.onScrubberPositionChanged` instead\n */\n onScrubberPositionChanged?: (state: AnimationPlaybackType) => void;\n\n /**\n * @deprecated use `events.onFrameAnimationsChanged` instead\n */\n onFrameAnimationsChanged?: (animationState: FrameAnimationType[]) => void;\n\n /**\n * @deprecated use `events.onVariableListChanged` instead\n */\n onVariableListChanged?: (variableList: Variable[]) => void;\n\n /**\n * @deprecated use `events.onSelectedToolChanged` instead\n */\n onSelectedToolChanged?: (tool: ToolType) => void;\n\n /**\n * @deprecated use `events.onUndoStackStateChanged` instead\n */\n onUndoStackStateChanged?: (undoStackState: UndoState) => void;\n\n /**\n * @deprecated use `events.onSelectedLayoutFramesChanged` instead\n */\n onSelectedLayoutFramesChanged?: (frames: SelectedLayoutFrame[]) => void;\n\n /**\n * @deprecated use `events.onSelectedTextStyleChanged` instead\n */\n onSelectedTextStyleChanged?: (styles: SelectedTextStyle) => void;\n\n /**\n * @deprecated use `events.onColorsChanged` instead\n */\n onColorsChanged?: (colors: DocumentColor[]) => void;\n\n /**\n * @deprecated use `events.onParagraphStylesChanged` instead\n */\n onParagraphStylesChanged?: (paragraphStyles: ParagraphStyle[]) => void;\n\n /**\n * @deprecated use `events.onCharacterStylesChanged` instead\n */\n onCharacterStylesChanged?: (characterStyles: CharacterStyle[]) => void;\n\n /**\n * @deprecated use `events.onFontFamiliesChanged` instead\n */\n onFontFamiliesChanged?: (fontFamilies: DocumentFontFamily[]) => void;\n\n /**\n * @deprecated use `events.onSelectedLayoutIdChanged` instead\n */\n onSelectedLayoutIdChanged?: (layoutId: string) => void;\n\n /**\n * @deprecated use `events.onLayoutsChanged` instead\n */\n onLayoutsChanged?: (layouts: LayoutListItemType[]) => void;\n\n /**\n * @deprecated use `events.onConnectorEvent` instead\n */\n onConnectorEvent?: (event: ConnectorEvent) => void;\n\n /**\n * @deprecated use `events.onConnectorsChanged` instead\n */\n onConnectorsChanged?: (connectors: ConnectorInstance[]) => void;\n\n /**\n * @deprecated use `events.onZoomChanged` instead\n */\n onZoomChanged?: (scaleFactor: number) => void;\n\n /**\n *\n * @deprecated use `events.onSelectedPageIdChanged` instead\n */\n onSelectedPageIdChanged?: (pageId: Id) => void;\n\n /**\n *\n * @deprecated use `events.onPagesChanged` instead\n */\n onPagesChanged?: (pages: Page[]) => void;\n\n /**\n *\n * @deprecated use `events.onPageSnapshotInvalidated` instead\n */\n onPageSnapshotInvalidated?: (pageId: Id) => void;\n\n /**\n * @deprecated use `events.onPageSizeChanged` instead\n */\n onPageSizeChanged?: (pageSize: PageSize) => void;\n\n /**\n * @deprecated use `events.onShapeCornerRadiusChanged` instead\n */\n onShapeCornerRadiusChanged?: (cornerRadius: CornerRadiusUpdateModel) => void;\n\n /**\n * @deprecated use `events.onCropActiveFrameIdChanged` instead\n */\n onCropActiveFrameIdChanged?: (id?: Id) => void;\n\n /**\n * @deprecated use `events.onAsyncError` instead\n */\n onAsyncError?: (asyncError: AsyncError) => void;\n\n /**\n * @deprecated use `events.onViewModeChanged` instead\n */\n onViewModeChanged?: (tool: ViewMode) => void;\n\n /**\n * @deprecated use `events.onBarcodeValidationChanged` instead\n */\n onBarcodeValidationChanged?: (validationResults: BarcodeFrameValidationResult[]) => void;\n\n /**\n * @deprecated use `events.onDataSourceIdChanged` instead\n */\n onDataSourceIdChanged?: (connectorId?: Id) => void;\n\n /**\n * @deprecated use `events.onInjectedDataChanged` instead\n */\n onInjectedDataChanged?: (variableId: Id) => void;\n\n /**\n * @deprecated use `events.onDocumentIssueListChanged` instead\n */\n onDocumentIssueListChanged?: (documentIssues: DocumentIssue[]) => void;\n\n /**\n * @deprecated use `events.onCustomUndoDataChanged` instead\n */\n onCustomUndoDataChanged?: (customData: Record<string, string>) => void;\n\n /**\n * @deprecated use `events.onEngineEditModeChanged` instead\n */\n onEngineEditModeChanged?: (engineEditMode: EngineEditMode) => void;\n\n /**\n * @deprecated use `events.onBrandKitMediaChanged` instead\n */\n onBrandKitMediaChanged?: (brandKitMedia: BrandKitMedia[]) => void;\n};\n\nexport type ConfigType = InitialCallbacksConfigType & BaseConfigType;\nexport type RuntimeConfigType = ConfigType & ManagedCallbacksConfigType;\n\nexport type EditorResponseError = string;\n\nexport interface EditorResponse<T> {\n success: boolean;\n status: number;\n data?: string | null;\n error?: EditorResponseError | null;\n parsedData: T | null;\n}\n\nexport interface EditorRawAPI extends CallSender {\n [index: string]: <T>(...args: unknown[]) => Promise<T>;\n}\n\nexport interface EditorAPI extends CallSender {\n [index: string]: <T>(...args: unknown[]) => Promise<EditorResponse<T>>;\n}\n\nexport type PageType = {\n id: Id;\n number: number;\n width: number | null;\n height: number | null;\n frames: FrameType[];\n};\n\nexport type InitialStateType = {\n layouts: LayoutWithFrameProperties[];\n selectedLayoutId: Id;\n pages: PageType[];\n variables: Variable[];\n};\n\nexport interface PropertyState<T> {\n value: T;\n isOverride: boolean;\n isReadOnly: boolean;\n}\n\nexport interface HasOverrideState {\n isOverride: boolean;\n isReadOnly: boolean;\n}\n\nexport interface SelectedLayoutFrame {\n id: Id;\n name: string;\n type: FrameTypeEnum;\n isVisible: boolean;\n}\n\nexport type PrivateData = Record<string, string>;\n\nexport class SDKUnauthorizedError extends Error {\n constructor(message: string) {\n super(message);\n }\n}\n"],"names":["LogLevel","LogCategory","CallbackErrorBehavior"],"mappings":"AAqDO,IAAK,6BAAAA,cAAL;AACHA,YAAA,MAAA,IAAO;AACPA,YAAA,MAAA,IAAO;AACPA,YAAA,OAAA,IAAQ;AAHA,SAAAA;AAAA,GAAA,YAAA,CAAA,CAAA;AAML,IAAK,gCAAAC,iBAAL;AACHA,eAAA,SAAA,IAAU;AACVA,eAAA,WAAA,IAAY;AACZA,eAAA,OAAA,IAAQ;AACRA,eAAA,QAAA,IAAS;AAJD,SAAAA;AAAA,GAAA,eAAA,CAAA,CAAA;AAUL,IAAK,0CAAAC,2BAAL;AAIHA,yBAAA,OAAA,IAAQ;AAKRA,yBAAA,KAAA,IAAM;AATE,SAAAA;AAAA,GAAA,yBAAA,CAAA,CAAA;AA6VL,MAAM,6BAA6B,MAAM;AAAA,EAC5C,YAAY,SAAiB;AACzB,UAAM,OAAO;AAAA,EACjB;AACJ;"}
|
|
1
|
+
{"version":3,"file":"CommonTypes.es.js","sources":["../../../src/types/CommonTypes.ts"],"sourcesContent":["import { CallSender } from 'penpal';\nimport { ConnectorInstance, DocumentAction, DocumentFontFamily, ToolType, ViewMode } from '..';\nimport { EngineCallbackHandler } from '../utils/EngineCallbackHandler';\nimport { EngineEvent } from '../utils/EngineEvent';\nimport { AnimationPlaybackType, FrameAnimationType } from './AnimationTypes';\nimport { BarcodeFrameValidationResult } from './BarcodeTypes';\nimport { CharacterStyle } from './CharacterStyleTypes';\nimport { DocumentColor } from './ColorStyleTypes';\nimport { StudioOptionsDeltaUpdate, StudioStyling } from './ConfigurationTypes';\nimport { AuthCredentials, AuthRefreshRequest, ConnectorEvent } from './ConnectorTypes';\nimport { DocumentIssue, DocumentType, UndoState } from './DocumentTypes';\nimport { EngineEditMode } from './EngineEditModeTypes';\nimport type { FrameType } from './FrameTypes';\nimport { Frame, FrameLayoutType, FrameTypeEnum } from './FrameTypes';\nimport { LayoutListItemType, LayoutPropertiesType, LayoutWithFrameProperties, MeasurementUnit } from './LayoutTypes';\nimport { Page, PageSize } from './PageTypes';\nimport { ParagraphStyle } from './ParagraphStyleTypes';\nimport { CornerRadiusUpdateModel } from './ShapeTypes';\nimport { SelectedTextStyle } from './TextStyleTypes';\nimport { Variable } from './VariableTypes';\nimport { Viewport } from './ViewportTypes';\nimport { BrandKitMedia } from './BrandKitTypes';\nimport { AsyncError } from '../exceptions';\n\nexport type Id = string;\nexport type BaseConfigType = {\n editorLink?: string;\n editorId?: string;\n chiliEnvironmentUrl?: string;\n documentType?: DocumentType;\n studioStyling?: StudioStyling;\n studioOptions?: StudioOptionsDeltaUpdate;\n /**\n * Whether the engine should cache query calls.\n * When enabled it will cache the query calls regardless of the cache control headers.\n */\n enableQueryCallCache?: boolean;\n enableNextSubscribers?: {\n onVariableListChanged: boolean;\n };\n logging?: {\n logLevel?: LogLevel;\n logger?: LoggerFunction;\n };\n /**\n * Callback function that is called when an error occurs during iframe setup or connection.\n * @param error The error that occurred during setup or connection\n */\n onConnectionError?: (error: Error) => void;\n};\n\nexport type LoggerFunction = (logLevel: LogLevel, category: LogCategory, message: string) => void;\n\nexport enum LogLevel {\n info = 'info',\n warn = 'warn',\n error = 'error',\n}\n\nexport enum LogCategory {\n general = 'general',\n connector = 'connector',\n event = 'event',\n engine = 'engine',\n sdk = 'sdk',\n}\n\n/**\n * Defines the behavior when encountering an error in the event / handler callback.\n */\nexport enum CallbackErrorBehavior {\n /**\n * Throws an error when encountering an error in a callback.\n */\n throw = 'throw',\n\n /**\n * Logs the error when encountering an error in a callback.\n */\n log = 'log',\n}\n\nexport type MaybePromise<T> = T | Promise<T>;\n\nexport type ManagedCallbacksConfigType = {\n handlers: {\n onAuthExpired: EngineCallbackHandler<\n (authRefreshRequest: AuthRefreshRequest) => Promise<AuthCredentials | null>\n >;\n onViewportRequested: EngineCallbackHandler<() => Viewport | null>;\n };\n events: {\n onActionsChanged: EngineEvent<(state: DocumentAction[]) => MaybePromise<void>>;\n onStateChanged: EngineEvent<() => MaybePromise<void>>;\n onDocumentLoaded: EngineEvent<() => MaybePromise<void>>;\n onSelectedFramesLayoutChanged: EngineEvent<(states: FrameLayoutType[]) => MaybePromise<void>>;\n onFramesLayoutChanged: EngineEvent<(states: FrameLayoutType[]) => MaybePromise<void>>;\n onSelectedFramesContentChanged: EngineEvent<(state: Frame[]) => MaybePromise<void>>;\n onPageSelectionChanged: EngineEvent<(id: Id) => MaybePromise<void>>;\n onSelectedLayoutPropertiesChanged: EngineEvent<(state: LayoutPropertiesType) => MaybePromise<void>>;\n onSelectedLayoutUnitChanged: EngineEvent<(unit: MeasurementUnit) => MaybePromise<void>>;\n onScrubberPositionChanged: EngineEvent<(state: AnimationPlaybackType) => MaybePromise<void>>;\n onFrameAnimationsChanged: EngineEvent<(animationState: FrameAnimationType[]) => MaybePromise<void>>;\n onVariableListChanged: EngineEvent<(variableList: Variable[]) => MaybePromise<void>>;\n onSelectedToolChanged: EngineEvent<(tool: ToolType) => MaybePromise<void>>;\n onUndoStackStateChanged: EngineEvent<(undoStackState: UndoState) => MaybePromise<void>>;\n onSelectedLayoutFramesChanged: EngineEvent<(frames: SelectedLayoutFrame[]) => MaybePromise<void>>;\n onSelectedTextStyleChanged: EngineEvent<(styles: SelectedTextStyle) => MaybePromise<void>>;\n onColorsChanged: EngineEvent<(colors: DocumentColor[]) => MaybePromise<void>>;\n onParagraphStylesChanged: EngineEvent<(paragraphStyles: ParagraphStyle[]) => MaybePromise<void>>;\n onCharacterStylesChanged: EngineEvent<(characterStyles: CharacterStyle[]) => MaybePromise<void>>;\n onFontFamiliesChanged: EngineEvent<(fontFamilies: DocumentFontFamily[]) => MaybePromise<void>>;\n onSelectedLayoutIdChanged: EngineEvent<(layoutId: string) => MaybePromise<void>>;\n onLayoutsChanged: EngineEvent<(layouts: LayoutListItemType[]) => MaybePromise<void>>;\n onConnectorEvent: EngineEvent<(event: ConnectorEvent) => MaybePromise<void>>;\n onConnectorsChanged: EngineEvent<(connectors: ConnectorInstance[]) => MaybePromise<void>>;\n onZoomChanged: EngineEvent<(scaleFactor: number) => MaybePromise<void>>;\n onSelectedPageIdChanged: EngineEvent<(pageId: Id) => MaybePromise<void>>;\n onPagesChanged: EngineEvent<(pages: Page[]) => MaybePromise<void>>;\n onPageSnapshotInvalidated: EngineEvent<(pageId: Id) => MaybePromise<void>>;\n onPageSizeChanged: EngineEvent<(pageSize: PageSize) => MaybePromise<void>>;\n onShapeCornerRadiusChanged: EngineEvent<(cornerRadius: CornerRadiusUpdateModel) => MaybePromise<void>>;\n onCropActiveFrameIdChanged: EngineEvent<(id?: Id) => MaybePromise<void>>;\n onAsyncError: EngineEvent<(asyncError: AsyncError) => MaybePromise<void>>;\n onViewModeChanged: EngineEvent<(tool: ViewMode) => MaybePromise<void>>;\n onBarcodeValidationChanged: EngineEvent<\n (validationResults: BarcodeFrameValidationResult[]) => MaybePromise<void>\n >;\n onDataSourceIdChanged: EngineEvent<(connectorId?: Id) => MaybePromise<void>>;\n onInjectedDataChanged: EngineEvent<(variableId: Id) => MaybePromise<void>>;\n onDocumentIssueListChanged: EngineEvent<(documentIssues: DocumentIssue[]) => MaybePromise<void>>;\n onCustomUndoDataChanged: EngineEvent<(customData: Record<string, string>) => MaybePromise<void>>;\n onEngineEditModeChanged: EngineEvent<(engineEditMode: EngineEditMode) => MaybePromise<void>>;\n onBrandKitMediaChanged: EngineEvent<(brandKitMedia: BrandKitMedia[]) => MaybePromise<void>>;\n /**\n * Listener that fires when frames are manipulated (e.g. moved, resized, rotated, cropped, text changed) by the user.\n * Note: this event only fires when the manipulation was caused by direct user interaction on the canvas;\n * programmatic changes do not trigger this event.\n */\n onCanvasFramesManipulated: EngineEvent<(frameIds: Id[]) => MaybePromise<void>>;\n };\n};\n\nexport type InitialCallbacksConfigType = {\n /**\n * @deprecated use `events.onActionsChanged` instead\n */\n onActionsChanged?: (state: DocumentAction[]) => void;\n\n /**\n * @deprecated use `events.onStateChanged` instead\n */\n onStateChanged?: () => void;\n\n /**\n * @deprecated use `events.onAuthExpired` instead\n */\n onAuthExpired?: (authRefreshRequest: AuthRefreshRequest) => Promise<AuthCredentials | null>;\n\n /**\n * @deprecated use `events.onViewportRequested` instead\n */\n onViewportRequested?: () => Viewport | null;\n\n /**\n * @deprecated use `events.onDocumentLoaded` instead\n */\n onDocumentLoaded?: () => void;\n\n /**\n * @deprecated use `onSelectedFramesLayoutChanged` instead\n *\n */\n onSelectedFrameLayoutChanged?: (state: FrameLayoutType) => void;\n\n /**\n * @deprecated use `events.onSelectedFramesLayoutChanged` instead\n */\n onSelectedFramesLayoutChanged?: (states: FrameLayoutType[]) => void;\n\n /**\n * @deprecated use `events.onFramesLayoutChanged` instead\n */\n onFramesLayoutChanged?: (states: FrameLayoutType[]) => void;\n\n /**\n * @deprecated use `onSelectedFramesContentChanged` instead\n */\n onSelectedFrameContentChanged?: (state: Frame | null) => void;\n\n /**\n * @deprecated use `events.onSelectedFramesContentChanged` instead\n */\n onSelectedFramesContentChanged?: (state: Frame[]) => void;\n\n /**\n * @deprecated use `onSelectedPageIdChanged` instead\n */\n onPageSelectionChanged?: (id: Id) => void;\n\n /**\n * @deprecated use `events.onSelectedLayoutPropertiesChanged` instead\n */\n onSelectedLayoutPropertiesChanged?: (state: LayoutPropertiesType) => void;\n\n /**\n * @deprecated use `events.onSelectedLayoutUnitChanged` instead\n */\n onSelectedLayoutUnitChanged?: (unit: MeasurementUnit) => void;\n\n /**\n * @deprecated use `events.onScrubberPositionChanged` instead\n */\n onScrubberPositionChanged?: (state: AnimationPlaybackType) => void;\n\n /**\n * @deprecated use `events.onFrameAnimationsChanged` instead\n */\n onFrameAnimationsChanged?: (animationState: FrameAnimationType[]) => void;\n\n /**\n * @deprecated use `events.onVariableListChanged` instead\n */\n onVariableListChanged?: (variableList: Variable[]) => void;\n\n /**\n * @deprecated use `events.onSelectedToolChanged` instead\n */\n onSelectedToolChanged?: (tool: ToolType) => void;\n\n /**\n * @deprecated use `events.onUndoStackStateChanged` instead\n */\n onUndoStackStateChanged?: (undoStackState: UndoState) => void;\n\n /**\n * @deprecated use `events.onSelectedLayoutFramesChanged` instead\n */\n onSelectedLayoutFramesChanged?: (frames: SelectedLayoutFrame[]) => void;\n\n /**\n * @deprecated use `events.onSelectedTextStyleChanged` instead\n */\n onSelectedTextStyleChanged?: (styles: SelectedTextStyle) => void;\n\n /**\n * @deprecated use `events.onColorsChanged` instead\n */\n onColorsChanged?: (colors: DocumentColor[]) => void;\n\n /**\n * @deprecated use `events.onParagraphStylesChanged` instead\n */\n onParagraphStylesChanged?: (paragraphStyles: ParagraphStyle[]) => void;\n\n /**\n * @deprecated use `events.onCharacterStylesChanged` instead\n */\n onCharacterStylesChanged?: (characterStyles: CharacterStyle[]) => void;\n\n /**\n * @deprecated use `events.onFontFamiliesChanged` instead\n */\n onFontFamiliesChanged?: (fontFamilies: DocumentFontFamily[]) => void;\n\n /**\n * @deprecated use `events.onSelectedLayoutIdChanged` instead\n */\n onSelectedLayoutIdChanged?: (layoutId: string) => void;\n\n /**\n * @deprecated use `events.onLayoutsChanged` instead\n */\n onLayoutsChanged?: (layouts: LayoutListItemType[]) => void;\n\n /**\n * @deprecated use `events.onConnectorEvent` instead\n */\n onConnectorEvent?: (event: ConnectorEvent) => void;\n\n /**\n * @deprecated use `events.onConnectorsChanged` instead\n */\n onConnectorsChanged?: (connectors: ConnectorInstance[]) => void;\n\n /**\n * @deprecated use `events.onZoomChanged` instead\n */\n onZoomChanged?: (scaleFactor: number) => void;\n\n /**\n *\n * @deprecated use `events.onSelectedPageIdChanged` instead\n */\n onSelectedPageIdChanged?: (pageId: Id) => void;\n\n /**\n *\n * @deprecated use `events.onPagesChanged` instead\n */\n onPagesChanged?: (pages: Page[]) => void;\n\n /**\n *\n * @deprecated use `events.onPageSnapshotInvalidated` instead\n */\n onPageSnapshotInvalidated?: (pageId: Id) => void;\n\n /**\n * @deprecated use `events.onPageSizeChanged` instead\n */\n onPageSizeChanged?: (pageSize: PageSize) => void;\n\n /**\n * @deprecated use `events.onShapeCornerRadiusChanged` instead\n */\n onShapeCornerRadiusChanged?: (cornerRadius: CornerRadiusUpdateModel) => void;\n\n /**\n * @deprecated use `events.onCropActiveFrameIdChanged` instead\n */\n onCropActiveFrameIdChanged?: (id?: Id) => void;\n\n /**\n * @deprecated use `events.onAsyncError` instead\n */\n onAsyncError?: (asyncError: AsyncError) => void;\n\n /**\n * @deprecated use `events.onViewModeChanged` instead\n */\n onViewModeChanged?: (tool: ViewMode) => void;\n\n /**\n * @deprecated use `events.onBarcodeValidationChanged` instead\n */\n onBarcodeValidationChanged?: (validationResults: BarcodeFrameValidationResult[]) => void;\n\n /**\n * @deprecated use `events.onDataSourceIdChanged` instead\n */\n onDataSourceIdChanged?: (connectorId?: Id) => void;\n\n /**\n * @deprecated use `events.onInjectedDataChanged` instead\n */\n onInjectedDataChanged?: (variableId: Id) => void;\n\n /**\n * @deprecated use `events.onDocumentIssueListChanged` instead\n */\n onDocumentIssueListChanged?: (documentIssues: DocumentIssue[]) => void;\n\n /**\n * @deprecated use `events.onCustomUndoDataChanged` instead\n */\n onCustomUndoDataChanged?: (customData: Record<string, string>) => void;\n\n /**\n * @deprecated use `events.onEngineEditModeChanged` instead\n */\n onEngineEditModeChanged?: (engineEditMode: EngineEditMode) => void;\n\n /**\n * @deprecated use `events.onBrandKitMediaChanged` instead\n */\n onBrandKitMediaChanged?: (brandKitMedia: BrandKitMedia[]) => void;\n\n /**\n * @deprecated use `events.onCanvasFramesManipulated` instead\n */\n onCanvasFramesManipulated?: (frameIds: Id[]) => void;\n};\n\nexport type ConfigType = InitialCallbacksConfigType & BaseConfigType;\nexport type RuntimeConfigType = ConfigType & ManagedCallbacksConfigType;\n\nexport type EditorResponseError = string;\n\nexport interface EditorResponse<T> {\n success: boolean;\n status: number;\n data?: string | null;\n error?: EditorResponseError | null;\n parsedData: T | null;\n}\n\nexport interface EditorRawAPI extends CallSender {\n [index: string]: <T>(...args: unknown[]) => Promise<T>;\n}\n\nexport interface EditorAPI extends CallSender {\n [index: string]: <T>(...args: unknown[]) => Promise<EditorResponse<T>>;\n}\n\nexport type PageType = {\n id: Id;\n number: number;\n width: number | null;\n height: number | null;\n frames: FrameType[];\n};\n\nexport type InitialStateType = {\n layouts: LayoutWithFrameProperties[];\n selectedLayoutId: Id;\n pages: PageType[];\n variables: Variable[];\n};\n\nexport interface PropertyState<T> {\n value: T;\n isOverride: boolean;\n isReadOnly: boolean;\n}\n\nexport interface HasOverrideState {\n isOverride: boolean;\n isReadOnly: boolean;\n}\n\nexport interface SelectedLayoutFrame {\n id: Id;\n name: string;\n type: FrameTypeEnum;\n isVisible: boolean;\n}\n\nexport type PrivateData = Record<string, string>;\n\nexport class SDKUnauthorizedError extends Error {\n constructor(message: string) {\n super(message);\n }\n}\n"],"names":["LogLevel","LogCategory","CallbackErrorBehavior"],"mappings":"AAqDO,IAAK,6BAAAA,cAAL;AACHA,YAAA,MAAA,IAAO;AACPA,YAAA,MAAA,IAAO;AACPA,YAAA,OAAA,IAAQ;AAHA,SAAAA;AAAA,GAAA,YAAA,CAAA,CAAA;AAML,IAAK,gCAAAC,iBAAL;AACHA,eAAA,SAAA,IAAU;AACVA,eAAA,WAAA,IAAY;AACZA,eAAA,OAAA,IAAQ;AACRA,eAAA,QAAA,IAAS;AACTA,eAAA,KAAA,IAAM;AALE,SAAAA;AAAA,GAAA,eAAA,CAAA,CAAA;AAWL,IAAK,0CAAAC,2BAAL;AAIHA,yBAAA,OAAA,IAAQ;AAKRA,yBAAA,KAAA,IAAM;AATE,SAAAA;AAAA,GAAA,yBAAA,CAAA,CAAA;AAwWL,MAAM,6BAA6B,MAAM;AAAA,EAC5C,YAAY,SAAiB;AACzB,UAAM,OAAO;AAAA,EACjB;AACJ;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ComponentGridTypes.cjs.js","sources":["../../../src/types/ComponentGridTypes.ts"],"sourcesContent":["export type ComponentGridSettingsDeltaUpdate = {\n numberOfColumns?: {\n value: number;\n };\n numberOfRows?: {\n value: number;\n };\n columnGap?: {\n value: string;\n };\n rowGap?: {\n value: string;\n };\n}
|
|
1
|
+
{"version":3,"file":"ComponentGridTypes.cjs.js","sources":["../../../src/types/ComponentGridTypes.ts"],"sourcesContent":["export type ComponentGridSettingsDeltaUpdate = {\n numberOfColumns?: {\n value: number;\n };\n numberOfRows?: {\n value: number;\n };\n columnGap?: {\n value: string;\n };\n rowGap?: {\n value: string;\n };\n};\n\nexport enum ComponentGridLayoutAlgorithm {\n fixed = 'fixed',\n}\n\nexport type FixedComponentGridSettings = {\n type: ComponentGridLayoutAlgorithm.fixed;\n numberOfColumns: number;\n numberOfRows: number;\n columnGap: number;\n rowGap: number;\n};\n\nexport type ComponentGridSettings = FixedComponentGridSettings /* | More will be added later */;\n"],"names":["ComponentGridLayoutAlgorithm"],"mappings":";;AAeO,IAAK,iDAAAA,kCAAL;AACHA,gCAAA,OAAA,IAAQ;AADA,SAAAA;AAAA,GAAA,gCAAA,CAAA,CAAA;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ComponentGridTypes.es.js","sources":["../../../src/types/ComponentGridTypes.ts"],"sourcesContent":["export type ComponentGridSettingsDeltaUpdate = {\n numberOfColumns?: {\n value: number;\n };\n numberOfRows?: {\n value: number;\n };\n columnGap?: {\n value: string;\n };\n rowGap?: {\n value: string;\n };\n}
|
|
1
|
+
{"version":3,"file":"ComponentGridTypes.es.js","sources":["../../../src/types/ComponentGridTypes.ts"],"sourcesContent":["export type ComponentGridSettingsDeltaUpdate = {\n numberOfColumns?: {\n value: number;\n };\n numberOfRows?: {\n value: number;\n };\n columnGap?: {\n value: string;\n };\n rowGap?: {\n value: string;\n };\n};\n\nexport enum ComponentGridLayoutAlgorithm {\n fixed = 'fixed',\n}\n\nexport type FixedComponentGridSettings = {\n type: ComponentGridLayoutAlgorithm.fixed;\n numberOfColumns: number;\n numberOfRows: number;\n columnGap: number;\n rowGap: number;\n};\n\nexport type ComponentGridSettings = FixedComponentGridSettings /* | More will be added later */;\n"],"names":["ComponentGridLayoutAlgorithm"],"mappings":"AAeO,IAAK,iDAAAA,kCAAL;AACHA,gCAAA,OAAA,IAAQ;AADA,SAAAA;AAAA,GAAA,gCAAA,CAAA,CAAA;"}
|
|
@@ -51,14 +51,18 @@ var ConnectorRegistrationSource = /* @__PURE__ */ ((ConnectorRegistrationSource2
|
|
|
51
51
|
return ConnectorRegistrationSource2;
|
|
52
52
|
})(ConnectorRegistrationSource || {});
|
|
53
53
|
class ConnectorMapping {
|
|
54
|
-
constructor(contextProperty, mapFrom, sourceValue, direction = "engineToConnector") {
|
|
54
|
+
constructor(contextProperty, mapFrom, sourceValue, direction = "engineToConnector", sourceField) {
|
|
55
55
|
this.direction = "engineToConnector";
|
|
56
56
|
this.name = contextProperty;
|
|
57
57
|
this.direction = direction;
|
|
58
58
|
if (mapFrom === "var") {
|
|
59
|
-
this.value =
|
|
59
|
+
this.value = `var.${sourceValue}`;
|
|
60
|
+
this.id = sourceValue;
|
|
61
|
+
this.type = "var";
|
|
62
|
+
this.sourceField = sourceField;
|
|
60
63
|
} else {
|
|
61
64
|
this.value = sourceValue;
|
|
65
|
+
this.type = "value";
|
|
62
66
|
}
|
|
63
67
|
}
|
|
64
68
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConnectorTypes.cjs.js","sources":["../../../src/types/ConnectorTypes.ts"],"sourcesContent":["import type {\n Dictionary as ContextDictionary,\n ConnectorConfigOptions as GenericConnectorConfigOptions,\n ConnectorConfigValue as GenericConnectorConfigValue,\n QueryPage as QueryResult,\n} from '@chili-studio/connector-types';\nimport { Id } from './CommonTypes';\n\nexport type { FilePointer, QueryOptions } from '@chili-studio/connector-types';\n\nexport enum DeprecatedMediaType {\n file = 0,\n collection = 1,\n}\n\nexport enum DeprecatedMediaConnectorDownloadType {\n LowResolutionWeb = 'lowresWeb',\n HighResolutionWeb = 'highresWeb',\n}\n\nexport enum MediaType {\n file = 'file',\n collection = 'collection',\n}\n\nexport enum ConnectorType {\n media = 'media',\n fonts = 'fonts',\n data = 'data',\n /**\n * @experimental This is still experimental and might change in future releases.\n */\n components = 'components',\n}\n\nexport enum SortBy {\n name = 'name',\n path = 'relativePath',\n id = 'id',\n}\n\nexport enum SortOrder {\n ascending = 'asc',\n descending = 'desc',\n}\n\nexport enum ConnectorConfigValueType {\n text = 'text',\n boolean = 'boolean',\n number = 'number',\n}\n\nexport enum ConnectorConfigContextType {\n query = 'query',\n upload = 'upload',\n}\n\nexport type ConnectorConfigValue = GenericConnectorConfigValue<ConnectorConfigValueType, ConnectorConfigContextType>;\nexport type ConnectorConfigOptions = GenericConnectorConfigOptions<\n ConnectorConfigValueType,\n ConnectorConfigContextType\n>;\n\ninterface ConnectorRegistrationBase {\n /**\n * Url to the connector.\n *\n * - If source is `url`, this must be a publicly accessible url.\n *\n * - If source is `grafx`, this must be the full url to the connector GET endpoint on GraFx Environment API.\n */\n url: string;\n\n /**\n * Connector source type.\n */\n source: ConnectorRegistrationSource;\n}\n\nexport interface ConnectorUrlRegistration extends ConnectorRegistrationBase {\n source: ConnectorRegistrationSource.url;\n}\n\nexport interface ConnectorGrafxRegistration extends ConnectorRegistrationBase {\n source: ConnectorRegistrationSource.grafx;\n}\n\nexport interface ConnectorLocalRegistration extends ConnectorRegistrationBase {\n source: ConnectorRegistrationSource.local;\n}\n\nexport type ConnectorRegistration = ConnectorUrlRegistration | ConnectorGrafxRegistration | ConnectorLocalRegistration;\n\nexport type ConnectorInstance = {\n id: Id;\n name: string;\n iconUrl: string;\n source: ConnectorRegistration;\n};\n\nexport enum ConnectorRegistrationSource {\n /**\n * Connector is hosted on a publicly accessible link.\n */\n url = 'url',\n\n /**\n * Connector is hosted on GraFx Environment API.\n */\n grafx = 'grafx',\n\n /**\n * Connector is embedded in the document.\n * Note: This is a temporary type; only to be used internally.\n */\n local = 'local',\n}\n\nexport interface EngineToConnectorMapping {\n name: string;\n value: ContextDictionary[keyof ContextDictionary];\n direction: ConnectorMappingDirection.engineToConnector;\n}\n\nexport interface ConnectorToEngineMapping {\n name: string;\n value: string;\n direction: ConnectorMappingDirection.connectorToEngine;\n}\n\nexport type ConnectorMappingType = EngineToConnectorMapping | ConnectorToEngineMapping;\n\nexport class ConnectorMapping implements EngineToConnectorMapping, ConnectorToEngineMapping {\n name: string;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n value: any;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n direction: any = ConnectorMappingDirection.engineToConnector;\n\n constructor(\n contextProperty: string,\n mapFrom: ConnectorMappingSource.variable,\n sourceValue: string,\n direction: ConnectorMappingDirection.connectorToEngine,\n );\n constructor(\n contextProperty: string,\n mapFrom: ConnectorMappingSource,\n sourceValue: string | boolean | number,\n direction?: ConnectorMappingDirection.engineToConnector,\n );\n constructor(contextProperty: string, mapFrom: ConnectorMappingSource, sourceValue: string | boolean | number);\n constructor(\n contextProperty: string,\n mapFrom: ConnectorMappingSource,\n sourceValue: string | boolean | number,\n direction = ConnectorMappingDirection.engineToConnector,\n ) {\n this.name = contextProperty;\n this.direction = direction;\n\n if (mapFrom === ConnectorMappingSource.variable) {\n this.value = `${mapFrom}.${sourceValue}`;\n } else {\n this.value = sourceValue;\n }\n }\n}\n\nexport type ConnectorState = {\n id: Id;\n type: ConnectorStateType;\n};\n\nexport type ConnectorEvent = {\n id: Id;\n type: ConnectorEventType;\n};\n\nexport type QueryPage<T> = Omit<QueryResult<T>, 'links'> & {\n nextPageToken?: string;\n};\n\nexport enum ConnectorMappingSource {\n variable = 'var',\n value = 'value',\n}\n\n/**\n * Direction of the Connector Mapping.\n */\nexport enum ConnectorMappingDirection {\n /**\n * Indicates the mapping will propagate a value to the connector. This\n * mapping might cause the linked connector to refresh.\n */\n engineToConnector = 'engineToConnector',\n\n /**\n * Indicates the mapping will propagate a value from inside the connector\n * to the engine. AKA \"reverse mapping\".\n */\n connectorToEngine = 'connectorToEngine',\n}\n\nexport enum ConnectorStateType {\n /**\n * Connector loading process has started.\n * Any SDK methods that required the connector id, will start working now.\n */\n loading = 'loading',\n\n /**\n * Connector loading completed.\n */\n loaded = 'loaded',\n\n /**\n * Connector is running in QuickJS.\n */\n\n running = 'running',\n\n /**\n * Connector is fully configured and has the correct authentication information.\n * At this point the connector is ready to make requests.\n */\n ready = 'ready',\n\n /**\n * Something went wrong, the connector is in error state.\n * Check the error message for more information.\n */\n error = 'error',\n}\n\nexport enum ConnectorEventType {\n /**\n * This event will be triggered by the following state changes of the connector\n * - loading\n * - loaded\n * - running\n * - ready\n * - error\n */\n stateChanged = 'stateChanged',\n\n /**\n * Authentication information is changed\n */\n authChanged = 'authChanged',\n\n /**\n * Connector configuration changed that requires the connector to be reloaded in QuickJS.\n * This will trigger multiple 'stateChanged' events while it is reloading.\n * Wait until 'ready'-stateChanged event is received to start using the connector again.\n */\n reloadRequired = 'reloadRequired',\n\n /**\n * Connector is unregistered and no longer exists inside the editor engine.\n * Don't use the 'connectorId' after receiving this event.\n */\n unloaded = 'unloaded',\n}\n\n/**\n * Hardcoded grafx media connector until we get it from the environment.\n */\nexport const grafxMediaConnectorRegistration: ConnectorLocalRegistration = {\n url: 'grafx-media.json',\n source: ConnectorRegistrationSource.local,\n};\n\n/**\n * Grafx token to return to the engine when it expires.\n */\nexport class GrafxTokenAuthCredentials {\n token: string;\n type = AuthCredentialsTypeEnum.grafxToken;\n /**\n * Optional HTTP headers to send with connector requests (e.g. Authorization).\n */\n headers?: Record<string, string>;\n\n constructor(token: string, headers?: Record<string, string>) {\n this.token = token;\n this.headers = headers;\n }\n}\n\n/**\n * Notification to return to the engine whenever a 3rd party auth (user impersonation)\n * has been renewed by the integration.\n */\nexport class RefreshedAuthCredendentials {\n type = AuthCredentialsTypeEnum.refreshed;\n /**\n * Optional HTTP headers to send with connector requests (e.g. Authorization).\n */\n headers?: Record<string, string>;\n\n constructor(headers?: Record<string, string>) {\n this.headers = headers;\n }\n}\n\nexport enum AuthCredentialsTypeEnum {\n grafxToken = 'grafxToken',\n refreshed = 'refreshed',\n}\n\nexport type AuthCredentials = GrafxTokenAuthCredentials | RefreshedAuthCredendentials;\n\nexport enum AuthRefreshTypeEnum {\n grafxToken = 'grafxToken',\n any = 'any',\n}\n\nexport type GrafxAuthRefreshRequest = {\n type: AuthRefreshTypeEnum.grafxToken;\n};\n\n/**\n * @param connectorId connector id\n * @param remoteConnectorId remote connector id\n * @param headerValue the value of the X-GRAFX-UNAUTHORIZED header. This\n * will notify that the dam authentication expired if it went through the\n * proxy.\n * Example: \"Static, 1234\", \"OAuthClientCredentials, 5678\"\n * If the http request did not go through the proxy, headerValue is null.\n */\nexport type AnyAuthRefreshRequest = {\n type: AuthRefreshTypeEnum.any;\n connectorId: Id;\n remoteConnectorId: Id;\n headerValue: string | null;\n connectorDefinition: ConnectorDefinition;\n};\n\nexport type AuthRefreshRequest = GrafxAuthRefreshRequest | AnyAuthRefreshRequest;\n\nexport type ConnectorOptions = ContextDictionary;\nexport type MetaData = ContextDictionary;\n\nexport type UploadValidationConfiguration = {\n minWidthPixels?: number | null;\n maxWidthPixels?: number | null;\n minHeightPixels?: number | null;\n maxHeightPixels?: number | null;\n mimeTypes?: string[];\n};\n\nexport enum UploadAssetValidationErrorType {\n minDimension = 'minDimension',\n}\n\nexport class UploadAssetValidationError extends Error {\n constructor(message: string, public type: UploadAssetValidationErrorType) {\n super(message);\n }\n}\n\nexport enum ConnectorSupportedAuth {\n StaticKey = 'staticKey',\n OAuth2ClientCredentials = 'oAuth2ClientCredentials',\n OAuth2AuthorizationCode = 'oAuth2AuthorizationCode',\n OAuth2ResourceOwnerPassword = 'oAuth2ResourceOwnerPassword',\n OAuth2JwtBearer = 'oAuth2JwtBearer',\n None = 'none',\n}\n\ninterface ConnectorDefinition {\n id: Id;\n name: string;\n type: ConnectorType;\n supportedAuthentication: { browser: ConnectorSupportedAuth[]; server: ConnectorSupportedAuth[] };\n externalSourceId?: string | null;\n}\n"],"names":["DeprecatedMediaType","DeprecatedMediaConnectorDownloadType","MediaType","ConnectorType","SortBy","SortOrder","ConnectorConfigValueType","ConnectorConfigContextType","ConnectorRegistrationSource","ConnectorMappingSource","ConnectorMappingDirection","ConnectorStateType","ConnectorEventType","AuthCredentialsTypeEnum","AuthRefreshTypeEnum","UploadAssetValidationErrorType","ConnectorSupportedAuth"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ConnectorTypes.cjs.js","sources":["../../../src/types/ConnectorTypes.ts"],"sourcesContent":["import type {\n Dictionary as ContextDictionary,\n ConnectorConfigOptions as GenericConnectorConfigOptions,\n ConnectorConfigValue as GenericConnectorConfigValue,\n QueryPage as QueryResult,\n} from '@chili-studio/connector-types';\nimport { Id } from './CommonTypes';\n\nexport type { FilePointer, QueryOptions } from '@chili-studio/connector-types';\n\nexport enum DeprecatedMediaType {\n file = 0,\n collection = 1,\n}\n\nexport enum DeprecatedMediaConnectorDownloadType {\n LowResolutionWeb = 'lowresWeb',\n HighResolutionWeb = 'highresWeb',\n}\n\nexport enum MediaType {\n file = 'file',\n collection = 'collection',\n}\n\nexport enum ConnectorType {\n media = 'media',\n fonts = 'fonts',\n data = 'data',\n /**\n * @experimental This is still experimental and might change in future releases.\n */\n components = 'components',\n}\n\nexport enum SortBy {\n name = 'name',\n path = 'relativePath',\n id = 'id',\n}\n\nexport enum SortOrder {\n ascending = 'asc',\n descending = 'desc',\n}\n\nexport enum ConnectorConfigValueType {\n text = 'text',\n boolean = 'boolean',\n number = 'number',\n}\n\nexport enum ConnectorConfigContextType {\n query = 'query',\n upload = 'upload',\n}\n\nexport type ConnectorConfigValue = GenericConnectorConfigValue<ConnectorConfigValueType, ConnectorConfigContextType>;\nexport type ConnectorConfigOptions = GenericConnectorConfigOptions<\n ConnectorConfigValueType,\n ConnectorConfigContextType\n>;\n\ninterface ConnectorRegistrationBase {\n /**\n * Url to the connector.\n *\n * - If source is `url`, this must be a publicly accessible url.\n *\n * - If source is `grafx`, this must be the full url to the connector GET endpoint on GraFx Environment API.\n */\n url: string;\n\n /**\n * Connector source type.\n */\n source: ConnectorRegistrationSource;\n}\n\nexport interface ConnectorUrlRegistration extends ConnectorRegistrationBase {\n source: ConnectorRegistrationSource.url;\n}\n\nexport interface ConnectorGrafxRegistration extends ConnectorRegistrationBase {\n source: ConnectorRegistrationSource.grafx;\n}\n\nexport interface ConnectorLocalRegistration extends ConnectorRegistrationBase {\n source: ConnectorRegistrationSource.local;\n}\n\nexport type ConnectorRegistration = ConnectorUrlRegistration | ConnectorGrafxRegistration | ConnectorLocalRegistration;\n\nexport type ConnectorInstance = {\n id: Id;\n name: string;\n iconUrl: string;\n source: ConnectorRegistration;\n};\n\nexport enum ConnectorRegistrationSource {\n /**\n * Connector is hosted on a publicly accessible link.\n */\n url = 'url',\n\n /**\n * Connector is hosted on GraFx Environment API.\n */\n grafx = 'grafx',\n\n /**\n * Connector is embedded in the document.\n * Note: This is a temporary type; only to be used internally.\n */\n local = 'local',\n}\n\nexport interface EngineToConnectorMapping {\n name: string;\n value: ContextDictionary[keyof ContextDictionary];\n id?: Id;\n sourceField?: string; // for data source variables\n type: ConnectorMappingSource;\n direction: ConnectorMappingDirection.engineToConnector;\n}\n\nexport interface ConnectorToEngineMapping {\n name: string;\n /** @deprecated Use id instead. This property holds a string representation of the id in the form: var.<id> */\n value: string;\n id?: Id;\n type: ConnectorMappingSource.variable;\n direction: ConnectorMappingDirection.connectorToEngine;\n}\n\nexport type ConnectorMappingType = EngineToConnectorMapping | ConnectorToEngineMapping;\n\nexport class ConnectorMapping implements EngineToConnectorMapping, ConnectorToEngineMapping {\n name: string;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n value: any;\n sourceField?: string; // for data source variables\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n direction: any = ConnectorMappingDirection.engineToConnector;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n type: any;\n id?: Id;\n\n constructor(\n contextProperty: string,\n mapFrom: ConnectorMappingSource.variable,\n sourceValue: string,\n direction: ConnectorMappingDirection.connectorToEngine,\n );\n constructor(\n contextProperty: string,\n mapFrom: ConnectorMappingSource,\n sourceValue: string | boolean | number,\n direction?: ConnectorMappingDirection.engineToConnector,\n sourceField?: string,\n );\n constructor(contextProperty: string, mapFrom: ConnectorMappingSource, sourceValue: string | boolean | number);\n constructor(\n contextProperty: string,\n mapFrom: ConnectorMappingSource,\n sourceValue: string | boolean | number,\n direction = ConnectorMappingDirection.engineToConnector,\n sourceField?: string,\n ) {\n this.name = contextProperty;\n this.direction = direction;\n\n if (mapFrom === ConnectorMappingSource.variable) {\n this.value = `var.${sourceValue}`;\n this.id = sourceValue as Id;\n this.type = ConnectorMappingSource.variable;\n this.sourceField = sourceField;\n } else {\n this.value = sourceValue;\n this.type = ConnectorMappingSource.value;\n }\n }\n}\n\nexport type ConnectorState = {\n id: Id;\n type: ConnectorStateType;\n};\n\nexport type ConnectorEvent = {\n id: Id;\n type: ConnectorEventType;\n};\n\nexport type QueryPage<T> = Omit<QueryResult<T>, 'links'> & {\n nextPageToken?: string;\n};\n\nexport enum ConnectorMappingSource {\n variable = 'var',\n value = 'value',\n}\n\n/**\n * Direction of the Connector Mapping.\n */\nexport enum ConnectorMappingDirection {\n /**\n * Indicates the mapping will propagate a value to the connector. This\n * mapping might cause the linked connector to refresh.\n */\n engineToConnector = 'engineToConnector',\n\n /**\n * Indicates the mapping will propagate a value from inside the connector\n * to the engine. AKA \"reverse mapping\".\n */\n connectorToEngine = 'connectorToEngine',\n}\n\nexport enum ConnectorStateType {\n /**\n * Connector loading process has started.\n * Any SDK methods that required the connector id, will start working now.\n */\n loading = 'loading',\n\n /**\n * Connector loading completed.\n */\n loaded = 'loaded',\n\n /**\n * Connector is running in QuickJS.\n */\n\n running = 'running',\n\n /**\n * Connector is fully configured and has the correct authentication information.\n * At this point the connector is ready to make requests.\n */\n ready = 'ready',\n\n /**\n * Something went wrong, the connector is in error state.\n * Check the error message for more information.\n */\n error = 'error',\n}\n\nexport enum ConnectorEventType {\n /**\n * This event will be triggered by the following state changes of the connector\n * - loading\n * - loaded\n * - running\n * - ready\n * - error\n */\n stateChanged = 'stateChanged',\n\n /**\n * Authentication information is changed\n */\n authChanged = 'authChanged',\n\n /**\n * Connector configuration changed that requires the connector to be reloaded in QuickJS.\n * This will trigger multiple 'stateChanged' events while it is reloading.\n * Wait until 'ready'-stateChanged event is received to start using the connector again.\n */\n reloadRequired = 'reloadRequired',\n\n /**\n * Connector is unregistered and no longer exists inside the editor engine.\n * Don't use the 'connectorId' after receiving this event.\n */\n unloaded = 'unloaded',\n}\n\n/**\n * Hardcoded grafx media connector until we get it from the environment.\n */\nexport const grafxMediaConnectorRegistration: ConnectorLocalRegistration = {\n url: 'grafx-media.json',\n source: ConnectorRegistrationSource.local,\n};\n\n/**\n * Grafx token to return to the engine when it expires.\n */\nexport class GrafxTokenAuthCredentials {\n token: string;\n type = AuthCredentialsTypeEnum.grafxToken;\n /**\n * Optional HTTP headers to send with connector requests (e.g. Authorization).\n */\n headers?: Record<string, string>;\n\n constructor(token: string, headers?: Record<string, string>) {\n this.token = token;\n this.headers = headers;\n }\n}\n\n/**\n * Notification to return to the engine whenever a 3rd party auth (user impersonation)\n * has been renewed by the integration.\n */\nexport class RefreshedAuthCredendentials {\n type = AuthCredentialsTypeEnum.refreshed;\n /**\n * Optional HTTP headers to send with connector requests (e.g. Authorization).\n */\n headers?: Record<string, string>;\n\n constructor(headers?: Record<string, string>) {\n this.headers = headers;\n }\n}\n\nexport enum AuthCredentialsTypeEnum {\n grafxToken = 'grafxToken',\n refreshed = 'refreshed',\n}\n\nexport type AuthCredentials = GrafxTokenAuthCredentials | RefreshedAuthCredendentials;\n\nexport enum AuthRefreshTypeEnum {\n grafxToken = 'grafxToken',\n any = 'any',\n}\n\nexport type GrafxAuthRefreshRequest = {\n type: AuthRefreshTypeEnum.grafxToken;\n};\n\n/**\n * @param connectorId connector id\n * @param remoteConnectorId remote connector id\n * @param headerValue the value of the X-GRAFX-UNAUTHORIZED header. This\n * will notify that the dam authentication expired if it went through the\n * proxy.\n * Example: \"Static, 1234\", \"OAuthClientCredentials, 5678\"\n * If the http request did not go through the proxy, headerValue is null.\n */\nexport type AnyAuthRefreshRequest = {\n type: AuthRefreshTypeEnum.any;\n connectorId: Id;\n remoteConnectorId: Id;\n headerValue: string | null;\n connectorDefinition: ConnectorDefinition;\n};\n\nexport type AuthRefreshRequest = GrafxAuthRefreshRequest | AnyAuthRefreshRequest;\n\nexport type ConnectorOptions = ContextDictionary;\nexport type MetaData = ContextDictionary;\n\nexport type UploadValidationConfiguration = {\n minWidthPixels?: number | null;\n maxWidthPixels?: number | null;\n minHeightPixels?: number | null;\n maxHeightPixels?: number | null;\n mimeTypes?: string[];\n};\n\nexport enum UploadAssetValidationErrorType {\n minDimension = 'minDimension',\n}\n\nexport class UploadAssetValidationError extends Error {\n constructor(message: string, public type: UploadAssetValidationErrorType) {\n super(message);\n }\n}\n\nexport enum ConnectorSupportedAuth {\n StaticKey = 'staticKey',\n OAuth2ClientCredentials = 'oAuth2ClientCredentials',\n OAuth2AuthorizationCode = 'oAuth2AuthorizationCode',\n OAuth2ResourceOwnerPassword = 'oAuth2ResourceOwnerPassword',\n OAuth2JwtBearer = 'oAuth2JwtBearer',\n None = 'none',\n}\n\ninterface ConnectorDefinition {\n id: Id;\n name: string;\n type: ConnectorType;\n supportedAuthentication: { browser: ConnectorSupportedAuth[]; server: ConnectorSupportedAuth[] };\n externalSourceId?: string | null;\n}\n"],"names":["DeprecatedMediaType","DeprecatedMediaConnectorDownloadType","MediaType","ConnectorType","SortBy","SortOrder","ConnectorConfigValueType","ConnectorConfigContextType","ConnectorRegistrationSource","ConnectorMappingSource","ConnectorMappingDirection","ConnectorStateType","ConnectorEventType","AuthCredentialsTypeEnum","AuthRefreshTypeEnum","UploadAssetValidationErrorType","ConnectorSupportedAuth"],"mappings":"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"}
|
|
@@ -90,20 +90,29 @@ export declare enum ConnectorRegistrationSource {
|
|
|
90
90
|
export interface EngineToConnectorMapping {
|
|
91
91
|
name: string;
|
|
92
92
|
value: ContextDictionary[keyof ContextDictionary];
|
|
93
|
+
id?: Id;
|
|
94
|
+
sourceField?: string;
|
|
95
|
+
type: ConnectorMappingSource;
|
|
93
96
|
direction: ConnectorMappingDirection.engineToConnector;
|
|
94
97
|
}
|
|
95
98
|
export interface ConnectorToEngineMapping {
|
|
96
99
|
name: string;
|
|
100
|
+
/** @deprecated Use id instead. This property holds a string representation of the id in the form: var.<id> */
|
|
97
101
|
value: string;
|
|
102
|
+
id?: Id;
|
|
103
|
+
type: ConnectorMappingSource.variable;
|
|
98
104
|
direction: ConnectorMappingDirection.connectorToEngine;
|
|
99
105
|
}
|
|
100
106
|
export type ConnectorMappingType = EngineToConnectorMapping | ConnectorToEngineMapping;
|
|
101
107
|
export declare class ConnectorMapping implements EngineToConnectorMapping, ConnectorToEngineMapping {
|
|
102
108
|
name: string;
|
|
103
109
|
value: any;
|
|
110
|
+
sourceField?: string;
|
|
104
111
|
direction: any;
|
|
112
|
+
type: any;
|
|
113
|
+
id?: Id;
|
|
105
114
|
constructor(contextProperty: string, mapFrom: ConnectorMappingSource.variable, sourceValue: string, direction: ConnectorMappingDirection.connectorToEngine);
|
|
106
|
-
constructor(contextProperty: string, mapFrom: ConnectorMappingSource, sourceValue: string | boolean | number, direction?: ConnectorMappingDirection.engineToConnector);
|
|
115
|
+
constructor(contextProperty: string, mapFrom: ConnectorMappingSource, sourceValue: string | boolean | number, direction?: ConnectorMappingDirection.engineToConnector, sourceField?: string);
|
|
107
116
|
constructor(contextProperty: string, mapFrom: ConnectorMappingSource, sourceValue: string | boolean | number);
|
|
108
117
|
}
|
|
109
118
|
export type ConnectorState = {
|
|
@@ -49,14 +49,18 @@ var ConnectorRegistrationSource = /* @__PURE__ */ ((ConnectorRegistrationSource2
|
|
|
49
49
|
return ConnectorRegistrationSource2;
|
|
50
50
|
})(ConnectorRegistrationSource || {});
|
|
51
51
|
class ConnectorMapping {
|
|
52
|
-
constructor(contextProperty, mapFrom, sourceValue, direction = "engineToConnector") {
|
|
52
|
+
constructor(contextProperty, mapFrom, sourceValue, direction = "engineToConnector", sourceField) {
|
|
53
53
|
this.direction = "engineToConnector";
|
|
54
54
|
this.name = contextProperty;
|
|
55
55
|
this.direction = direction;
|
|
56
56
|
if (mapFrom === "var") {
|
|
57
|
-
this.value =
|
|
57
|
+
this.value = `var.${sourceValue}`;
|
|
58
|
+
this.id = sourceValue;
|
|
59
|
+
this.type = "var";
|
|
60
|
+
this.sourceField = sourceField;
|
|
58
61
|
} else {
|
|
59
62
|
this.value = sourceValue;
|
|
63
|
+
this.type = "value";
|
|
60
64
|
}
|
|
61
65
|
}
|
|
62
66
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConnectorTypes.es.js","sources":["../../../src/types/ConnectorTypes.ts"],"sourcesContent":["import type {\n Dictionary as ContextDictionary,\n ConnectorConfigOptions as GenericConnectorConfigOptions,\n ConnectorConfigValue as GenericConnectorConfigValue,\n QueryPage as QueryResult,\n} from '@chili-studio/connector-types';\nimport { Id } from './CommonTypes';\n\nexport type { FilePointer, QueryOptions } from '@chili-studio/connector-types';\n\nexport enum DeprecatedMediaType {\n file = 0,\n collection = 1,\n}\n\nexport enum DeprecatedMediaConnectorDownloadType {\n LowResolutionWeb = 'lowresWeb',\n HighResolutionWeb = 'highresWeb',\n}\n\nexport enum MediaType {\n file = 'file',\n collection = 'collection',\n}\n\nexport enum ConnectorType {\n media = 'media',\n fonts = 'fonts',\n data = 'data',\n /**\n * @experimental This is still experimental and might change in future releases.\n */\n components = 'components',\n}\n\nexport enum SortBy {\n name = 'name',\n path = 'relativePath',\n id = 'id',\n}\n\nexport enum SortOrder {\n ascending = 'asc',\n descending = 'desc',\n}\n\nexport enum ConnectorConfigValueType {\n text = 'text',\n boolean = 'boolean',\n number = 'number',\n}\n\nexport enum ConnectorConfigContextType {\n query = 'query',\n upload = 'upload',\n}\n\nexport type ConnectorConfigValue = GenericConnectorConfigValue<ConnectorConfigValueType, ConnectorConfigContextType>;\nexport type ConnectorConfigOptions = GenericConnectorConfigOptions<\n ConnectorConfigValueType,\n ConnectorConfigContextType\n>;\n\ninterface ConnectorRegistrationBase {\n /**\n * Url to the connector.\n *\n * - If source is `url`, this must be a publicly accessible url.\n *\n * - If source is `grafx`, this must be the full url to the connector GET endpoint on GraFx Environment API.\n */\n url: string;\n\n /**\n * Connector source type.\n */\n source: ConnectorRegistrationSource;\n}\n\nexport interface ConnectorUrlRegistration extends ConnectorRegistrationBase {\n source: ConnectorRegistrationSource.url;\n}\n\nexport interface ConnectorGrafxRegistration extends ConnectorRegistrationBase {\n source: ConnectorRegistrationSource.grafx;\n}\n\nexport interface ConnectorLocalRegistration extends ConnectorRegistrationBase {\n source: ConnectorRegistrationSource.local;\n}\n\nexport type ConnectorRegistration = ConnectorUrlRegistration | ConnectorGrafxRegistration | ConnectorLocalRegistration;\n\nexport type ConnectorInstance = {\n id: Id;\n name: string;\n iconUrl: string;\n source: ConnectorRegistration;\n};\n\nexport enum ConnectorRegistrationSource {\n /**\n * Connector is hosted on a publicly accessible link.\n */\n url = 'url',\n\n /**\n * Connector is hosted on GraFx Environment API.\n */\n grafx = 'grafx',\n\n /**\n * Connector is embedded in the document.\n * Note: This is a temporary type; only to be used internally.\n */\n local = 'local',\n}\n\nexport interface EngineToConnectorMapping {\n name: string;\n value: ContextDictionary[keyof ContextDictionary];\n direction: ConnectorMappingDirection.engineToConnector;\n}\n\nexport interface ConnectorToEngineMapping {\n name: string;\n value: string;\n direction: ConnectorMappingDirection.connectorToEngine;\n}\n\nexport type ConnectorMappingType = EngineToConnectorMapping | ConnectorToEngineMapping;\n\nexport class ConnectorMapping implements EngineToConnectorMapping, ConnectorToEngineMapping {\n name: string;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n value: any;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n direction: any = ConnectorMappingDirection.engineToConnector;\n\n constructor(\n contextProperty: string,\n mapFrom: ConnectorMappingSource.variable,\n sourceValue: string,\n direction: ConnectorMappingDirection.connectorToEngine,\n );\n constructor(\n contextProperty: string,\n mapFrom: ConnectorMappingSource,\n sourceValue: string | boolean | number,\n direction?: ConnectorMappingDirection.engineToConnector,\n );\n constructor(contextProperty: string, mapFrom: ConnectorMappingSource, sourceValue: string | boolean | number);\n constructor(\n contextProperty: string,\n mapFrom: ConnectorMappingSource,\n sourceValue: string | boolean | number,\n direction = ConnectorMappingDirection.engineToConnector,\n ) {\n this.name = contextProperty;\n this.direction = direction;\n\n if (mapFrom === ConnectorMappingSource.variable) {\n this.value = `${mapFrom}.${sourceValue}`;\n } else {\n this.value = sourceValue;\n }\n }\n}\n\nexport type ConnectorState = {\n id: Id;\n type: ConnectorStateType;\n};\n\nexport type ConnectorEvent = {\n id: Id;\n type: ConnectorEventType;\n};\n\nexport type QueryPage<T> = Omit<QueryResult<T>, 'links'> & {\n nextPageToken?: string;\n};\n\nexport enum ConnectorMappingSource {\n variable = 'var',\n value = 'value',\n}\n\n/**\n * Direction of the Connector Mapping.\n */\nexport enum ConnectorMappingDirection {\n /**\n * Indicates the mapping will propagate a value to the connector. This\n * mapping might cause the linked connector to refresh.\n */\n engineToConnector = 'engineToConnector',\n\n /**\n * Indicates the mapping will propagate a value from inside the connector\n * to the engine. AKA \"reverse mapping\".\n */\n connectorToEngine = 'connectorToEngine',\n}\n\nexport enum ConnectorStateType {\n /**\n * Connector loading process has started.\n * Any SDK methods that required the connector id, will start working now.\n */\n loading = 'loading',\n\n /**\n * Connector loading completed.\n */\n loaded = 'loaded',\n\n /**\n * Connector is running in QuickJS.\n */\n\n running = 'running',\n\n /**\n * Connector is fully configured and has the correct authentication information.\n * At this point the connector is ready to make requests.\n */\n ready = 'ready',\n\n /**\n * Something went wrong, the connector is in error state.\n * Check the error message for more information.\n */\n error = 'error',\n}\n\nexport enum ConnectorEventType {\n /**\n * This event will be triggered by the following state changes of the connector\n * - loading\n * - loaded\n * - running\n * - ready\n * - error\n */\n stateChanged = 'stateChanged',\n\n /**\n * Authentication information is changed\n */\n authChanged = 'authChanged',\n\n /**\n * Connector configuration changed that requires the connector to be reloaded in QuickJS.\n * This will trigger multiple 'stateChanged' events while it is reloading.\n * Wait until 'ready'-stateChanged event is received to start using the connector again.\n */\n reloadRequired = 'reloadRequired',\n\n /**\n * Connector is unregistered and no longer exists inside the editor engine.\n * Don't use the 'connectorId' after receiving this event.\n */\n unloaded = 'unloaded',\n}\n\n/**\n * Hardcoded grafx media connector until we get it from the environment.\n */\nexport const grafxMediaConnectorRegistration: ConnectorLocalRegistration = {\n url: 'grafx-media.json',\n source: ConnectorRegistrationSource.local,\n};\n\n/**\n * Grafx token to return to the engine when it expires.\n */\nexport class GrafxTokenAuthCredentials {\n token: string;\n type = AuthCredentialsTypeEnum.grafxToken;\n /**\n * Optional HTTP headers to send with connector requests (e.g. Authorization).\n */\n headers?: Record<string, string>;\n\n constructor(token: string, headers?: Record<string, string>) {\n this.token = token;\n this.headers = headers;\n }\n}\n\n/**\n * Notification to return to the engine whenever a 3rd party auth (user impersonation)\n * has been renewed by the integration.\n */\nexport class RefreshedAuthCredendentials {\n type = AuthCredentialsTypeEnum.refreshed;\n /**\n * Optional HTTP headers to send with connector requests (e.g. Authorization).\n */\n headers?: Record<string, string>;\n\n constructor(headers?: Record<string, string>) {\n this.headers = headers;\n }\n}\n\nexport enum AuthCredentialsTypeEnum {\n grafxToken = 'grafxToken',\n refreshed = 'refreshed',\n}\n\nexport type AuthCredentials = GrafxTokenAuthCredentials | RefreshedAuthCredendentials;\n\nexport enum AuthRefreshTypeEnum {\n grafxToken = 'grafxToken',\n any = 'any',\n}\n\nexport type GrafxAuthRefreshRequest = {\n type: AuthRefreshTypeEnum.grafxToken;\n};\n\n/**\n * @param connectorId connector id\n * @param remoteConnectorId remote connector id\n * @param headerValue the value of the X-GRAFX-UNAUTHORIZED header. This\n * will notify that the dam authentication expired if it went through the\n * proxy.\n * Example: \"Static, 1234\", \"OAuthClientCredentials, 5678\"\n * If the http request did not go through the proxy, headerValue is null.\n */\nexport type AnyAuthRefreshRequest = {\n type: AuthRefreshTypeEnum.any;\n connectorId: Id;\n remoteConnectorId: Id;\n headerValue: string | null;\n connectorDefinition: ConnectorDefinition;\n};\n\nexport type AuthRefreshRequest = GrafxAuthRefreshRequest | AnyAuthRefreshRequest;\n\nexport type ConnectorOptions = ContextDictionary;\nexport type MetaData = ContextDictionary;\n\nexport type UploadValidationConfiguration = {\n minWidthPixels?: number | null;\n maxWidthPixels?: number | null;\n minHeightPixels?: number | null;\n maxHeightPixels?: number | null;\n mimeTypes?: string[];\n};\n\nexport enum UploadAssetValidationErrorType {\n minDimension = 'minDimension',\n}\n\nexport class UploadAssetValidationError extends Error {\n constructor(message: string, public type: UploadAssetValidationErrorType) {\n super(message);\n }\n}\n\nexport enum ConnectorSupportedAuth {\n StaticKey = 'staticKey',\n OAuth2ClientCredentials = 'oAuth2ClientCredentials',\n OAuth2AuthorizationCode = 'oAuth2AuthorizationCode',\n OAuth2ResourceOwnerPassword = 'oAuth2ResourceOwnerPassword',\n OAuth2JwtBearer = 'oAuth2JwtBearer',\n None = 'none',\n}\n\ninterface ConnectorDefinition {\n id: Id;\n name: string;\n type: ConnectorType;\n supportedAuthentication: { browser: ConnectorSupportedAuth[]; server: ConnectorSupportedAuth[] };\n externalSourceId?: string | null;\n}\n"],"names":["DeprecatedMediaType","DeprecatedMediaConnectorDownloadType","MediaType","ConnectorType","SortBy","SortOrder","ConnectorConfigValueType","ConnectorConfigContextType","ConnectorRegistrationSource","ConnectorMappingSource","ConnectorMappingDirection","ConnectorStateType","ConnectorEventType","AuthCredentialsTypeEnum","AuthRefreshTypeEnum","UploadAssetValidationErrorType","ConnectorSupportedAuth"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ConnectorTypes.es.js","sources":["../../../src/types/ConnectorTypes.ts"],"sourcesContent":["import type {\n Dictionary as ContextDictionary,\n ConnectorConfigOptions as GenericConnectorConfigOptions,\n ConnectorConfigValue as GenericConnectorConfigValue,\n QueryPage as QueryResult,\n} from '@chili-studio/connector-types';\nimport { Id } from './CommonTypes';\n\nexport type { FilePointer, QueryOptions } from '@chili-studio/connector-types';\n\nexport enum DeprecatedMediaType {\n file = 0,\n collection = 1,\n}\n\nexport enum DeprecatedMediaConnectorDownloadType {\n LowResolutionWeb = 'lowresWeb',\n HighResolutionWeb = 'highresWeb',\n}\n\nexport enum MediaType {\n file = 'file',\n collection = 'collection',\n}\n\nexport enum ConnectorType {\n media = 'media',\n fonts = 'fonts',\n data = 'data',\n /**\n * @experimental This is still experimental and might change in future releases.\n */\n components = 'components',\n}\n\nexport enum SortBy {\n name = 'name',\n path = 'relativePath',\n id = 'id',\n}\n\nexport enum SortOrder {\n ascending = 'asc',\n descending = 'desc',\n}\n\nexport enum ConnectorConfigValueType {\n text = 'text',\n boolean = 'boolean',\n number = 'number',\n}\n\nexport enum ConnectorConfigContextType {\n query = 'query',\n upload = 'upload',\n}\n\nexport type ConnectorConfigValue = GenericConnectorConfigValue<ConnectorConfigValueType, ConnectorConfigContextType>;\nexport type ConnectorConfigOptions = GenericConnectorConfigOptions<\n ConnectorConfigValueType,\n ConnectorConfigContextType\n>;\n\ninterface ConnectorRegistrationBase {\n /**\n * Url to the connector.\n *\n * - If source is `url`, this must be a publicly accessible url.\n *\n * - If source is `grafx`, this must be the full url to the connector GET endpoint on GraFx Environment API.\n */\n url: string;\n\n /**\n * Connector source type.\n */\n source: ConnectorRegistrationSource;\n}\n\nexport interface ConnectorUrlRegistration extends ConnectorRegistrationBase {\n source: ConnectorRegistrationSource.url;\n}\n\nexport interface ConnectorGrafxRegistration extends ConnectorRegistrationBase {\n source: ConnectorRegistrationSource.grafx;\n}\n\nexport interface ConnectorLocalRegistration extends ConnectorRegistrationBase {\n source: ConnectorRegistrationSource.local;\n}\n\nexport type ConnectorRegistration = ConnectorUrlRegistration | ConnectorGrafxRegistration | ConnectorLocalRegistration;\n\nexport type ConnectorInstance = {\n id: Id;\n name: string;\n iconUrl: string;\n source: ConnectorRegistration;\n};\n\nexport enum ConnectorRegistrationSource {\n /**\n * Connector is hosted on a publicly accessible link.\n */\n url = 'url',\n\n /**\n * Connector is hosted on GraFx Environment API.\n */\n grafx = 'grafx',\n\n /**\n * Connector is embedded in the document.\n * Note: This is a temporary type; only to be used internally.\n */\n local = 'local',\n}\n\nexport interface EngineToConnectorMapping {\n name: string;\n value: ContextDictionary[keyof ContextDictionary];\n id?: Id;\n sourceField?: string; // for data source variables\n type: ConnectorMappingSource;\n direction: ConnectorMappingDirection.engineToConnector;\n}\n\nexport interface ConnectorToEngineMapping {\n name: string;\n /** @deprecated Use id instead. This property holds a string representation of the id in the form: var.<id> */\n value: string;\n id?: Id;\n type: ConnectorMappingSource.variable;\n direction: ConnectorMappingDirection.connectorToEngine;\n}\n\nexport type ConnectorMappingType = EngineToConnectorMapping | ConnectorToEngineMapping;\n\nexport class ConnectorMapping implements EngineToConnectorMapping, ConnectorToEngineMapping {\n name: string;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n value: any;\n sourceField?: string; // for data source variables\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n direction: any = ConnectorMappingDirection.engineToConnector;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n type: any;\n id?: Id;\n\n constructor(\n contextProperty: string,\n mapFrom: ConnectorMappingSource.variable,\n sourceValue: string,\n direction: ConnectorMappingDirection.connectorToEngine,\n );\n constructor(\n contextProperty: string,\n mapFrom: ConnectorMappingSource,\n sourceValue: string | boolean | number,\n direction?: ConnectorMappingDirection.engineToConnector,\n sourceField?: string,\n );\n constructor(contextProperty: string, mapFrom: ConnectorMappingSource, sourceValue: string | boolean | number);\n constructor(\n contextProperty: string,\n mapFrom: ConnectorMappingSource,\n sourceValue: string | boolean | number,\n direction = ConnectorMappingDirection.engineToConnector,\n sourceField?: string,\n ) {\n this.name = contextProperty;\n this.direction = direction;\n\n if (mapFrom === ConnectorMappingSource.variable) {\n this.value = `var.${sourceValue}`;\n this.id = sourceValue as Id;\n this.type = ConnectorMappingSource.variable;\n this.sourceField = sourceField;\n } else {\n this.value = sourceValue;\n this.type = ConnectorMappingSource.value;\n }\n }\n}\n\nexport type ConnectorState = {\n id: Id;\n type: ConnectorStateType;\n};\n\nexport type ConnectorEvent = {\n id: Id;\n type: ConnectorEventType;\n};\n\nexport type QueryPage<T> = Omit<QueryResult<T>, 'links'> & {\n nextPageToken?: string;\n};\n\nexport enum ConnectorMappingSource {\n variable = 'var',\n value = 'value',\n}\n\n/**\n * Direction of the Connector Mapping.\n */\nexport enum ConnectorMappingDirection {\n /**\n * Indicates the mapping will propagate a value to the connector. This\n * mapping might cause the linked connector to refresh.\n */\n engineToConnector = 'engineToConnector',\n\n /**\n * Indicates the mapping will propagate a value from inside the connector\n * to the engine. AKA \"reverse mapping\".\n */\n connectorToEngine = 'connectorToEngine',\n}\n\nexport enum ConnectorStateType {\n /**\n * Connector loading process has started.\n * Any SDK methods that required the connector id, will start working now.\n */\n loading = 'loading',\n\n /**\n * Connector loading completed.\n */\n loaded = 'loaded',\n\n /**\n * Connector is running in QuickJS.\n */\n\n running = 'running',\n\n /**\n * Connector is fully configured and has the correct authentication information.\n * At this point the connector is ready to make requests.\n */\n ready = 'ready',\n\n /**\n * Something went wrong, the connector is in error state.\n * Check the error message for more information.\n */\n error = 'error',\n}\n\nexport enum ConnectorEventType {\n /**\n * This event will be triggered by the following state changes of the connector\n * - loading\n * - loaded\n * - running\n * - ready\n * - error\n */\n stateChanged = 'stateChanged',\n\n /**\n * Authentication information is changed\n */\n authChanged = 'authChanged',\n\n /**\n * Connector configuration changed that requires the connector to be reloaded in QuickJS.\n * This will trigger multiple 'stateChanged' events while it is reloading.\n * Wait until 'ready'-stateChanged event is received to start using the connector again.\n */\n reloadRequired = 'reloadRequired',\n\n /**\n * Connector is unregistered and no longer exists inside the editor engine.\n * Don't use the 'connectorId' after receiving this event.\n */\n unloaded = 'unloaded',\n}\n\n/**\n * Hardcoded grafx media connector until we get it from the environment.\n */\nexport const grafxMediaConnectorRegistration: ConnectorLocalRegistration = {\n url: 'grafx-media.json',\n source: ConnectorRegistrationSource.local,\n};\n\n/**\n * Grafx token to return to the engine when it expires.\n */\nexport class GrafxTokenAuthCredentials {\n token: string;\n type = AuthCredentialsTypeEnum.grafxToken;\n /**\n * Optional HTTP headers to send with connector requests (e.g. Authorization).\n */\n headers?: Record<string, string>;\n\n constructor(token: string, headers?: Record<string, string>) {\n this.token = token;\n this.headers = headers;\n }\n}\n\n/**\n * Notification to return to the engine whenever a 3rd party auth (user impersonation)\n * has been renewed by the integration.\n */\nexport class RefreshedAuthCredendentials {\n type = AuthCredentialsTypeEnum.refreshed;\n /**\n * Optional HTTP headers to send with connector requests (e.g. Authorization).\n */\n headers?: Record<string, string>;\n\n constructor(headers?: Record<string, string>) {\n this.headers = headers;\n }\n}\n\nexport enum AuthCredentialsTypeEnum {\n grafxToken = 'grafxToken',\n refreshed = 'refreshed',\n}\n\nexport type AuthCredentials = GrafxTokenAuthCredentials | RefreshedAuthCredendentials;\n\nexport enum AuthRefreshTypeEnum {\n grafxToken = 'grafxToken',\n any = 'any',\n}\n\nexport type GrafxAuthRefreshRequest = {\n type: AuthRefreshTypeEnum.grafxToken;\n};\n\n/**\n * @param connectorId connector id\n * @param remoteConnectorId remote connector id\n * @param headerValue the value of the X-GRAFX-UNAUTHORIZED header. This\n * will notify that the dam authentication expired if it went through the\n * proxy.\n * Example: \"Static, 1234\", \"OAuthClientCredentials, 5678\"\n * If the http request did not go through the proxy, headerValue is null.\n */\nexport type AnyAuthRefreshRequest = {\n type: AuthRefreshTypeEnum.any;\n connectorId: Id;\n remoteConnectorId: Id;\n headerValue: string | null;\n connectorDefinition: ConnectorDefinition;\n};\n\nexport type AuthRefreshRequest = GrafxAuthRefreshRequest | AnyAuthRefreshRequest;\n\nexport type ConnectorOptions = ContextDictionary;\nexport type MetaData = ContextDictionary;\n\nexport type UploadValidationConfiguration = {\n minWidthPixels?: number | null;\n maxWidthPixels?: number | null;\n minHeightPixels?: number | null;\n maxHeightPixels?: number | null;\n mimeTypes?: string[];\n};\n\nexport enum UploadAssetValidationErrorType {\n minDimension = 'minDimension',\n}\n\nexport class UploadAssetValidationError extends Error {\n constructor(message: string, public type: UploadAssetValidationErrorType) {\n super(message);\n }\n}\n\nexport enum ConnectorSupportedAuth {\n StaticKey = 'staticKey',\n OAuth2ClientCredentials = 'oAuth2ClientCredentials',\n OAuth2AuthorizationCode = 'oAuth2AuthorizationCode',\n OAuth2ResourceOwnerPassword = 'oAuth2ResourceOwnerPassword',\n OAuth2JwtBearer = 'oAuth2JwtBearer',\n None = 'none',\n}\n\ninterface ConnectorDefinition {\n id: Id;\n name: string;\n type: ConnectorType;\n supportedAuthentication: { browser: ConnectorSupportedAuth[]; server: ConnectorSupportedAuth[] };\n externalSourceId?: string | null;\n}\n"],"names":["DeprecatedMediaType","DeprecatedMediaConnectorDownloadType","MediaType","ConnectorType","SortBy","SortOrder","ConnectorConfigValueType","ConnectorConfigContextType","ConnectorRegistrationSource","ConnectorMappingSource","ConnectorMappingDirection","ConnectorStateType","ConnectorEventType","AuthCredentialsTypeEnum","AuthRefreshTypeEnum","UploadAssetValidationErrorType","ConnectorSupportedAuth"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FrameTypes.cjs.js","sources":["../../../src/types/FrameTypes.ts"],"sourcesContent":["// FramePropertiesDto\nimport { BarcodeCharacterSet, BarcodeErrorCorrectionLevel, BarcodeType, QuietZone } from './BarcodeTypes';\nimport { ColorUsage } from './ColorStyleTypes';\nimport { HasOverrideState, Id, PropertyState } from './CommonTypes';\nimport { GradientUsage } from './GradientStyleTypes';\nimport { ComponentGridSettings } from '../types/ComponentGridTypes';\nimport {\n CornerRadiusAll,\n CornerRadiusNone,\n CornerRadiusOnly,\n ShapeFrameSource,\n ShapeType,\n ShapeContainerProperties,\n} from './ShapeTypes';\n\nexport type FrameLayoutType = {\n id: Id;\n layoutId: Id;\n horizontal: FrameAnchor;\n vertical: FrameAnchor;\n x: PropertyState<number>;\n y: PropertyState<number>;\n width: PropertyState<number>;\n height: PropertyState<number>;\n rotationDegrees: PropertyState<number>;\n scaleX: PropertyState<number>;\n scaleY: PropertyState<number>;\n isVisible: PropertyState<boolean>;\n fitMode: PropertyState<FitMode>;\n fitModePosition: PropertyState<FitModePosition>;\n smartCropSettings: PropertyState<SmartCropSettings>;\n hasImageCrop: PropertyState<boolean>;\n hasFrameSubjectArea: PropertyState<boolean>;\n minCopyfitting: PropertyState<number>;\n maxCopyfitting: PropertyState<number>;\n enableCopyfitting: PropertyState<boolean>;\n autoGrow: AutoGrowSettings;\n isShowingCustomCroppedAsset: boolean;\n customCroppedAssetCount: number;\n subjectId: PropertyState<Id | null>;\n componentGridSettings: PropertyState<ComponentGridSettings>;\n} | null;\n\n//Frame.image\nexport type FrameType = {\n id: Id;\n name: string;\n type: FrameTypeEnum;\n // `imageUrl` is not generic: should be removed from model\n imageUrl: string;\n blendMode: string;\n opacity: number;\n};\n\nexport type Frame = TextFrame | ImageFrame | ShapeFrame | BarcodeFrame | ComponentFrame | ComponentGridFrame;\n\nexport type ImageFrameVariableSource = {\n type: ImageSourceTypeEnum.variable;\n id: Id;\n};\n\nexport type ImageFrameUrlSource = {\n type: ImageSourceTypeEnum.url;\n url: string;\n};\n\nexport type ImageFrameConnectorSource = {\n type: ImageSourceTypeEnum.connector;\n assetId: Id;\n id: Id;\n};\n\nexport type ImageFrameBrandkitMediaSource = {\n type: ImageSourceTypeEnum.brandKitMedia;\n name: string;\n};\n\nexport type ImageFrameSource =\n | ImageFrameConnectorSource\n | ImageFrameVariableSource\n | ImageFrameUrlSource\n | ImageFrameBrandkitMediaSource;\n\n// used by new getter methods\nexport type ImageFrame = {\n id: Id;\n name: string;\n opacity: number;\n type: FrameTypeEnum.image;\n src?: ImageFrameSource;\n blendMode: BlendMode;\n dropShadowSettings?: DropShadowSettings;\n container: {\n source: ShapeFrameSource;\n properties: ShapeContainerProperties;\n };\n};\n\nexport type ShapeFrame = {\n id: Id;\n name: string;\n opacity: number;\n type: FrameTypeEnum.shape;\n blendMode: BlendMode;\n shapeProperties: {\n enableFill: boolean;\n fillColor: ColorUsage;\n enableStroke: boolean;\n strokeWeight: number;\n strokeColor: ColorUsage;\n allCornersSame: boolean;\n };\n src: {\n type: ShapeType;\n cornerRadius: CornerRadiusNone | CornerRadiusAll | CornerRadiusOnly;\n sides?: number;\n };\n dropShadowSettings?: DropShadowSettings;\n gradient?: GradientUsage;\n};\n\nexport type TextFrame = {\n id: Id;\n name: string;\n opacity: number;\n type: FrameTypeEnum.text;\n textContent: string;\n paddingLeft: number;\n paddingTop: number;\n paddingRight: number;\n paddingBottom: number;\n numberOfColumns: number;\n columnGap: number;\n textDirection: TextDirection;\n flowDirection: FlowDirection;\n verticalAlign: VerticalAlign;\n textStroke: boolean;\n textStrokeWeight: number;\n textStrokeColor: number;\n hasClippingPath: boolean;\n blendMode: BlendMode;\n dropShadowSettings?: DropShadowSettings;\n hasVariable?: boolean;\n};\n\nexport type BarcodeFrame = {\n id: Id;\n name: string;\n opacity: number;\n type: FrameTypeEnum.barcode;\n blendMode: BlendMode;\n barcodeProperties: {\n enableBackground: boolean;\n backgroundColor: ColorUsage;\n enableBarColor: boolean;\n barColor: ColorUsage;\n enableText: boolean;\n barHeight: number;\n magnification: number;\n quietZone: QuietZone;\n errorCorrectionLevel?: BarcodeErrorCorrectionLevel;\n characterSet?: BarcodeCharacterSet;\n drawStartStopChars: boolean;\n };\n src?: BarcodeSource;\n barcodeType: BarcodeType;\n dropShadowSettings?: DropShadowSettings;\n};\n\nexport type BarcodeSource = BarcodeVariableSource | BarcodeTextSource;\n\nexport type BarcodeVariableSource = {\n type: BarcodeSourceTypeEnum.variable;\n id: Id;\n};\n\nexport type BarcodeTextSource = {\n type: BarcodeSourceTypeEnum.text;\n text: string;\n};\n\nexport type ComponentFrame = {\n id: Id;\n name: string;\n opacity: number;\n type: FrameTypeEnum.component;\n blendMode: BlendMode;\n src: ComponentSource;\n variableMappings: VariableMapping[];\n\n /**\n * How the component fits within the frame.\n */\n fitMode: ComponentFitEnum;\n};\n\nexport type ComponentGridFrame = {\n id: Id;\n name: string;\n opacity: number;\n type: FrameTypeEnum.componentGrid;\n blendMode: BlendMode;\n dataSourceVariableId?: Id | null;\n src?: ComponentSource | null;\n variableMappings: GridVariableMapping;\n\n /**\n * How the component grid fits within the frame.\n */\n fitMode: ComponentFitEnum;\n};\n\nexport type GridVariableMapping = {\n mappings: Record<string, VariableMapping[] | null>;\n}\n\nexport type ComponentSource = ConnectorComponentSource;\n\nexport type ConnectorComponentSource = {\n type: ComponentSourceTypeEnum.connector;\n id: Id;\n assetId: Id | null;\n};\n\nexport type VariableMapping = {\n source: Id;\n target: Id;\n sourceField?: string;\n};\n\nexport enum ComponentFitEnum {\n /**\n * The component resizes to fit the frame size.\n */\n resize = 'resize',\n\n /**\n * The component scales to fit the frame size while maintaining its aspect ratio.\n */\n scale = 'scale',\n\n /**\n * The component first scales to fit the frame size while maintaining its aspect ratio,\n * then resizes to fill the remaining space.\n */\n scaleAndResize = 'scaleAndResize',\n}\n\nexport type CropSettings = {\n left: number;\n top: number;\n width: number;\n height: number;\n rotationDegrees: number;\n type: 'default';\n};\n\nexport type NoCropSettings = {\n type: 'noCrop';\n};\n\nexport type AutoGrowSettings = {\n enabled: PropertyState<boolean>;\n minWidth: PropertyState<number>;\n maxWidth: PropertyState<number>;\n minHeight: PropertyState<number>;\n maxHeight: PropertyState<number>;\n directions: PropertyState<Array<AutoGrowDirection>>;\n};\n\nexport interface AutoGrowDeltaUpdate {\n enabled?: {\n value: boolean;\n };\n minWidth?: {\n value: string | null;\n };\n maxWidth?: {\n value: string | null;\n };\n minHeight?: {\n value: string | null;\n };\n maxHeight?: {\n value: string | null;\n };\n directions?: {\n value: Array<AutoGrowDirection>;\n };\n}\n\nexport type DropShadowSettings = {\n enabled: boolean;\n distance: number;\n angleDegrees: number;\n blurRadius: number;\n color: ColorUsage;\n};\n\nexport interface ShadowSettingsDeltaUpdate {\n distance?: {\n value: string;\n };\n angleDegrees?: {\n value: number;\n };\n blurRadius?: {\n value: number;\n };\n enabled?: {\n value: boolean;\n };\n color?: {\n value: ColorUsage;\n };\n}\n\nexport enum AutoGrowDirection {\n top = 'top',\n bottom = 'bottom',\n left = 'left',\n right = 'right',\n}\n\nexport enum ImageSourceTypeEnum {\n url = 'url',\n variable = 'variable',\n connector = 'connector',\n brandKitMedia = 'brandKitMedia',\n}\n\nexport enum ComponentSourceTypeEnum {\n connector = 'connector',\n}\n\nexport enum FrameTypeEnum {\n text = 'text',\n image = 'image',\n shape = 'shape',\n barcode = 'barcode',\n component = 'component',\n componentGrid = 'componentGrid',\n}\n\nexport enum BarcodeSourceTypeEnum {\n variable = 'variable',\n text = 'text',\n}\n\nexport enum TextDirection {\n leftToRight = 'leftToRight',\n rightToLeft = 'rightToLeft',\n weak = 'weak',\n}\n\nexport enum FlowDirection {\n horizontal = 'horizontal',\n vertical = 'vertical',\n onPath = 'onPath',\n}\n\nexport enum VerticalAlign {\n top = 'top',\n bottom = 'bottom',\n middle = 'middle',\n justify = 'justify',\n}\n\nexport enum BlendMode {\n normal = 'normal',\n screen = 'screen',\n overlay = 'overlay',\n darken = 'darken',\n lighten = 'lighten',\n colorDodge = 'colorDodge',\n colorBurn = 'colorBurn',\n hardLight = 'hardLight',\n softLight = 'softLight',\n difference = 'difference',\n exclusion = 'exclusion',\n multiply = 'multiply',\n hue = 'hue',\n saturation = 'saturation',\n color = 'color',\n luminosity = 'luminosity',\n}\n\nexport enum FitMode {\n fill = 'fill',\n fit = 'fit',\n smartCrop = 'smartCrop',\n manualCrop = 'manualCrop',\n}\n\nexport enum FitModePosition {\n topLeft = 'topLeft',\n topCenter = 'topCenter',\n topRight = 'topRight',\n centerLeft = 'centerLeft',\n center = 'center',\n centerRight = 'centerRight',\n bottomLeft = 'bottomLeft',\n bottomCenter = 'bottomCenter',\n bottomRight = 'bottomRight',\n}\n\nexport enum UpdateZIndexMethod {\n bringToFront = 'bringToFront',\n sendToBack = 'sendToBack',\n bringForward = 'bringForward',\n sendBackward = 'sendBackward',\n}\n\nexport enum FrameAnchorType {\n relative = 'relative',\n start = 'start',\n end = 'end',\n startAndEnd = 'startAndEnd',\n center = 'center',\n}\n\nexport enum AnchorTargetType {\n page = 'page',\n frame = 'frame',\n}\n\nexport enum AnchorTargetEdgeType {\n start = 'start',\n end = 'end',\n center = 'center',\n}\n\nexport class PageAnchorTarget {\n type = AnchorTargetType.page;\n}\n\nexport class FrameAnchorTarget {\n frameId: Id;\n edge: AnchorTargetEdgeType;\n type = AnchorTargetType.frame;\n\n constructor(id: Id, edge: AnchorTargetEdgeType) {\n (this.frameId = id), (this.edge = edge);\n }\n}\n\nexport type AnchorTarget = PageAnchorTarget | FrameAnchorTarget;\n\nexport type RelativeFrameAnchor = {\n start: PropertyState<number>;\n end: PropertyState<number>;\n target: AnchorTarget;\n type: FrameAnchorType.relative;\n} & HasOverrideState;\n\nexport type StartFrameAnchor = {\n offset: PropertyState<number>;\n target: AnchorTarget;\n type: FrameAnchorType.start;\n} & HasOverrideState;\n\nexport type EndFrameAnchor = {\n offset: PropertyState<number>;\n target: AnchorTarget;\n type: FrameAnchorType.end;\n} & HasOverrideState;\n\nexport type StartAndEndFrameAnchor = {\n start: PropertyState<number>;\n startTarget: AnchorTarget;\n end: PropertyState<number>;\n endTarget: AnchorTarget;\n type: FrameAnchorType.startAndEnd;\n} & HasOverrideState;\n\nexport type CenterFrameAnchor = {\n offset: PropertyState<number>;\n target: AnchorTarget;\n type: FrameAnchorType.center;\n} & HasOverrideState;\n\nexport type FrameAnchor =\n | RelativeFrameAnchor\n | StartFrameAnchor\n | EndFrameAnchor\n | StartAndEndFrameAnchor\n | CenterFrameAnchor;\n\nexport type FrameAnchorProperties = {\n horizontal: boolean;\n type: FrameAnchorType;\n target: AnchorTarget;\n endTarget?: AnchorTarget | null;\n};\n\nexport type AnchorConfiguration = {\n allowedTypes: Set<FrameAnchorType>;\n allowedFrameIds: Set<Id>;\n};\n\nexport type FrameConfiguration = {\n horizontal: AnchorConfiguration;\n vertical: AnchorConfiguration;\n};\n\nexport enum CropType {\n frameCrop = 'frameCrop',\n assetCrop = 'assetCrop',\n}\n\n/**\n * Image-specific editing constraints.\n */\nexport type ImageFrameConstraints = {\n cropAllowed: PropertyState<boolean>;\n};\n\n/**\n * Text-specific editing constraints.\n */\nexport type TextFrameConstraints = {\n editingAllowed: PropertyState<boolean>;\n paragraphStyles: PropertyState<IdSetManagedConstraint>;\n characterStyles: PropertyState<IdSetManagedConstraint>;\n colors: PropertyState<IdSetManagedConstraint>;\n fontSizes: PropertyState<FontSizeRangeManagedConstraint>;\n};\n\nexport interface ManagedConstraint {\n allowed: boolean;\n}\n\n/**\n * A managed constraint represented by a set of allowed Id identifiers.\n *\n * Example: used to allow only a specific set of paragraph or character styles.\n * - `allowed`: If true, only the provided `ids` may be used.\n * - `ids`: The set of allowed Id values.\n */\nexport interface IdSetManagedConstraint extends ManagedConstraint {\n allowed: boolean;\n ids: Id[];\n}\n\n/**\n * A managed constraint that restricts allowed font sizes to a continuous range.\n *\n * - `allowed`: If true, restricts allowed font sizes to [min, max] (inclusive).\n * - `min`: The minimum allowed font size (nullable).\n * - `max`: The maximum allowed font size (nullable).\n */\nexport interface FontSizeRangeManagedConstraint extends ManagedConstraint {\n allowed: boolean;\n min: number | null;\n max: number | null;\n}\n\n/**\n * Frame editing constraints with optional frame-type-specific sub-properties.\n */\nexport type FrameConstraints = {\n selectionAllowed: PropertyState<boolean>;\n horizontalMovementAllowed: PropertyState<boolean>;\n verticalMovementAllowed: PropertyState<boolean>;\n rotationAllowed: PropertyState<boolean>;\n resizeAllowed: PropertyState<boolean>;\n proportionLocked: PropertyState<boolean>;\n /** Image-specific constraints. */\n image?: ImageFrameConstraints;\n /** Text-specific constraints. */\n text?: TextFrameConstraints;\n};\n\n/**\n * Image-specific constraints delta update.\n */\nexport interface ImageFrameConstraintsDeltaUpdate {\n cropAllowed?: {\n value: boolean;\n };\n}\n\n/**\n * Text-specific constraints delta update.\n */\nexport interface TextFrameConstraintsDeltaUpdate {\n editingAllowed?: {\n value: boolean;\n };\n paragraphStyles?: {\n value: IdSetManagedConstraint;\n };\n characterStyles?: {\n value: IdSetManagedConstraint;\n };\n colors?: {\n value: IdSetManagedConstraint;\n };\n fontSizes?: {\n value: FontSizeRangeManagedConstraint;\n };\n}\n\n/**\n * Frame constraints delta update with optional frame-type-specific sub-properties.\n */\nexport interface FrameConstraintsDeltaUpdate {\n selectionAllowed?: {\n value: boolean;\n };\n horizontalMovementAllowed?: {\n value: boolean;\n };\n verticalMovementAllowed?: {\n value: boolean;\n };\n rotationAllowed?: {\n value: boolean;\n };\n resizeAllowed?: {\n value: boolean;\n };\n proportionLocked?: {\n value: boolean;\n };\n /** Image-specific constraints update. */\n image?: ImageFrameConstraintsDeltaUpdate;\n /** Text-specific constraints update. */\n text?: TextFrameConstraintsDeltaUpdate;\n}\n\nexport type SmartCropSettings = SmartCropSettingsV1 | SmartCropSettingsV2;\n\nexport type SmartCropSettingsV1 = {\n version: SmartCropVersion.v1;\n};\n\nexport type SmartCropSettingsV2 = {\n version: SmartCropVersion.v2;\n horizontalBias: SmartCropAxisBias;\n verticalBias: SmartCropAxisBias;\n};\n\nexport enum SmartCropVersion {\n v1 = 'v1',\n v2 = 'v2',\n}\n\n/**\n * Latest version of the smart crop algorithm.\n * Keep in sync with @SmartCropVersion enum.\n */\nexport const LATEST_SMART_CROP_VERSION = SmartCropVersion.v2;\n\nexport enum SmartCropAxisBias {\n start = 'start',\n center = 'center',\n end = 'end',\n}\n"],"names":["ComponentFitEnum","AutoGrowDirection","ImageSourceTypeEnum","ComponentSourceTypeEnum","FrameTypeEnum","BarcodeSourceTypeEnum","TextDirection","FlowDirection","VerticalAlign","BlendMode","FitMode","FitModePosition","UpdateZIndexMethod","FrameAnchorType","AnchorTargetType","AnchorTargetEdgeType","CropType","SmartCropVersion","SmartCropAxisBias"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"FrameTypes.cjs.js","sources":["../../../src/types/FrameTypes.ts"],"sourcesContent":["// FramePropertiesDto\nimport { BarcodeCharacterSet, BarcodeErrorCorrectionLevel, BarcodeType, QuietZone } from './BarcodeTypes';\nimport { ColorUsage } from './ColorStyleTypes';\nimport { HasOverrideState, Id, PropertyState } from './CommonTypes';\nimport { GradientUsage } from './GradientStyleTypes';\nimport { ComponentGridSettings } from '../types/ComponentGridTypes';\nimport {\n CornerRadiusAll,\n CornerRadiusNone,\n CornerRadiusOnly,\n ShapeFrameSource,\n ShapeType,\n ShapeContainerProperties,\n} from './ShapeTypes';\n\nexport type FrameLayoutType = {\n id: Id;\n layoutId: Id;\n horizontal: FrameAnchor;\n vertical: FrameAnchor;\n x: PropertyState<number>;\n y: PropertyState<number>;\n width: PropertyState<number>;\n height: PropertyState<number>;\n rotationDegrees: PropertyState<number>;\n scaleX: PropertyState<number>;\n scaleY: PropertyState<number>;\n isVisible: PropertyState<boolean>;\n fitMode: PropertyState<FitMode>;\n fitModePosition: PropertyState<FitModePosition>;\n smartCropSettings: PropertyState<SmartCropSettings>;\n hasImageCrop: PropertyState<boolean>;\n hasFrameSubjectArea: PropertyState<boolean>;\n minCopyfitting: PropertyState<number>;\n maxCopyfitting: PropertyState<number>;\n enableCopyfitting: PropertyState<boolean>;\n autoGrow: AutoGrowSettings;\n isShowingCustomCroppedAsset: boolean;\n customCroppedAssetCount: number;\n subjectId: PropertyState<Id | null>;\n componentGridSettings: PropertyState<ComponentGridSettings>;\n componentFit: PropertyState<ComponentFitEnum>;\n} | null;\n\n//Frame.image\nexport type FrameType = {\n id: Id;\n name: string;\n type: FrameTypeEnum;\n // `imageUrl` is not generic: should be removed from model\n imageUrl: string;\n blendMode: string;\n opacity: number;\n};\n\nexport type Frame = TextFrame | ImageFrame | ShapeFrame | BarcodeFrame | ComponentFrame | ComponentGridFrame;\n\nexport type ImageFrameVariableSource = {\n type: ImageSourceTypeEnum.variable;\n id: Id;\n};\n\nexport type ImageFrameUrlSource = {\n type: ImageSourceTypeEnum.url;\n url: string;\n};\n\nexport type ImageFrameConnectorSource = {\n type: ImageSourceTypeEnum.connector;\n assetId: Id;\n id: Id;\n};\n\nexport type ImageFrameBrandkitMediaSource = {\n type: ImageSourceTypeEnum.brandKitMedia;\n name: string;\n};\n\nexport type ImageFrameSource =\n | ImageFrameConnectorSource\n | ImageFrameVariableSource\n | ImageFrameUrlSource\n | ImageFrameBrandkitMediaSource;\n\n// used by new getter methods\nexport type ImageFrame = {\n id: Id;\n name: string;\n opacity: number;\n type: FrameTypeEnum.image;\n src?: ImageFrameSource;\n blendMode: BlendMode;\n dropShadowSettings?: DropShadowSettings;\n container: {\n source: ShapeFrameSource;\n properties: ShapeContainerProperties;\n };\n};\n\nexport type ShapeFrame = {\n id: Id;\n name: string;\n opacity: number;\n type: FrameTypeEnum.shape;\n blendMode: BlendMode;\n shapeProperties: {\n enableFill: boolean;\n fillColor: ColorUsage;\n enableStroke: boolean;\n strokeWeight: number;\n strokeColor: ColorUsage;\n allCornersSame: boolean;\n };\n src: {\n type: ShapeType;\n cornerRadius: CornerRadiusNone | CornerRadiusAll | CornerRadiusOnly;\n sides?: number;\n };\n dropShadowSettings?: DropShadowSettings;\n gradient?: GradientUsage;\n};\n\nexport type TextFrame = {\n id: Id;\n name: string;\n opacity: number;\n type: FrameTypeEnum.text;\n textContent: string;\n paddingLeft: number;\n paddingTop: number;\n paddingRight: number;\n paddingBottom: number;\n numberOfColumns: number;\n columnGap: number;\n textDirection: TextDirection;\n flowDirection: FlowDirection;\n verticalAlign: VerticalAlign;\n textStroke: boolean;\n textStrokeWeight: number;\n textStrokeColor: number;\n hasClippingPath: boolean;\n blendMode: BlendMode;\n dropShadowSettings?: DropShadowSettings;\n hasVariable?: boolean;\n};\n\nexport type BarcodeFrame = {\n id: Id;\n name: string;\n opacity: number;\n type: FrameTypeEnum.barcode;\n blendMode: BlendMode;\n barcodeProperties: {\n enableBackground: boolean;\n backgroundColor: ColorUsage;\n enableBarColor: boolean;\n barColor: ColorUsage;\n enableText: boolean;\n barHeight: number;\n magnification: number;\n quietZone: QuietZone;\n errorCorrectionLevel?: BarcodeErrorCorrectionLevel;\n characterSet?: BarcodeCharacterSet;\n drawStartStopChars: boolean;\n };\n src?: BarcodeSource;\n barcodeType: BarcodeType;\n dropShadowSettings?: DropShadowSettings;\n};\n\nexport type BarcodeSource = BarcodeVariableSource | BarcodeTextSource;\n\nexport type BarcodeVariableSource = {\n type: BarcodeSourceTypeEnum.variable;\n id: Id;\n};\n\nexport type BarcodeTextSource = {\n type: BarcodeSourceTypeEnum.text;\n text: string;\n};\n\nexport type ComponentFrame = {\n id: Id;\n name: string;\n opacity: number;\n type: FrameTypeEnum.component;\n blendMode: BlendMode;\n src: ComponentSource;\n variableMappings: VariableMapping[];\n\n /**\n * @deprecated Use `componentFit` on frame properties instead. This property is deprecated and will be removed in a future version.\n * How the component fits within the frame.\n */\n fitMode: ComponentFitEnum;\n};\n\nexport type ComponentGridFrame = {\n id: Id;\n name: string;\n opacity: number;\n type: FrameTypeEnum.componentGrid;\n blendMode: BlendMode;\n dataSourceVariableId?: Id | null;\n src?: ComponentSource | null;\n variableMappings: GridVariableMapping;\n};\n\nexport type GridVariableMapping = {\n mappings: Record<string, VariableMapping[] | null>;\n};\n\nexport type ComponentSource = ConnectorComponentSource;\n\nexport type ConnectorComponentSource = {\n type: ComponentSourceTypeEnum.connector;\n id: Id;\n assetId: Id | null;\n};\n\nexport type VariableMapping = {\n source: Id;\n target: Id;\n sourceField?: string;\n};\n\nexport enum ComponentFitEnum {\n /**\n * The component resizes to fit the frame size.\n */\n resize = 'resize',\n\n /**\n * The component scales to fit the frame size while maintaining its aspect ratio.\n */\n scale = 'scale',\n\n /**\n * The component first scales to fit the frame size while maintaining its aspect ratio,\n * then resizes to fill the remaining space.\n */\n scaleAndResize = 'scaleAndResize',\n}\n\nexport type CropSettings = {\n left: number;\n top: number;\n width: number;\n height: number;\n rotationDegrees: number;\n type: 'default';\n};\n\nexport type NoCropSettings = {\n type: 'noCrop';\n};\n\nexport type AutoGrowSettings = {\n enabled: PropertyState<boolean>;\n minWidth: PropertyState<number>;\n maxWidth: PropertyState<number>;\n minHeight: PropertyState<number>;\n maxHeight: PropertyState<number>;\n directions: PropertyState<Array<AutoGrowDirection>>;\n};\n\nexport interface AutoGrowDeltaUpdate {\n enabled?: {\n value: boolean;\n };\n minWidth?: {\n value: string | null;\n };\n maxWidth?: {\n value: string | null;\n };\n minHeight?: {\n value: string | null;\n };\n maxHeight?: {\n value: string | null;\n };\n directions?: {\n value: Array<AutoGrowDirection>;\n };\n}\n\nexport type DropShadowSettings = {\n enabled: boolean;\n distance: number;\n angleDegrees: number;\n blurRadius: number;\n color: ColorUsage;\n};\n\nexport interface ShadowSettingsDeltaUpdate {\n distance?: {\n value: string;\n };\n angleDegrees?: {\n value: number;\n };\n blurRadius?: {\n value: number;\n };\n enabled?: {\n value: boolean;\n };\n color?: {\n value: ColorUsage;\n };\n}\n\nexport enum AutoGrowDirection {\n top = 'top',\n bottom = 'bottom',\n left = 'left',\n right = 'right',\n}\n\nexport enum ImageSourceTypeEnum {\n url = 'url',\n variable = 'variable',\n connector = 'connector',\n brandKitMedia = 'brandKitMedia',\n}\n\nexport enum ComponentSourceTypeEnum {\n connector = 'connector',\n}\n\nexport enum FrameTypeEnum {\n text = 'text',\n image = 'image',\n shape = 'shape',\n barcode = 'barcode',\n component = 'component',\n componentGrid = 'componentGrid',\n}\n\nexport enum BarcodeSourceTypeEnum {\n variable = 'variable',\n text = 'text',\n}\n\nexport enum TextDirection {\n leftToRight = 'leftToRight',\n rightToLeft = 'rightToLeft',\n weak = 'weak',\n}\n\nexport enum FlowDirection {\n horizontal = 'horizontal',\n vertical = 'vertical',\n onPath = 'onPath',\n}\n\nexport enum VerticalAlign {\n top = 'top',\n bottom = 'bottom',\n middle = 'middle',\n justify = 'justify',\n}\n\nexport enum BlendMode {\n normal = 'normal',\n screen = 'screen',\n overlay = 'overlay',\n darken = 'darken',\n lighten = 'lighten',\n colorDodge = 'colorDodge',\n colorBurn = 'colorBurn',\n hardLight = 'hardLight',\n softLight = 'softLight',\n difference = 'difference',\n exclusion = 'exclusion',\n multiply = 'multiply',\n hue = 'hue',\n saturation = 'saturation',\n color = 'color',\n luminosity = 'luminosity',\n}\n\nexport enum FitMode {\n fill = 'fill',\n fit = 'fit',\n smartCrop = 'smartCrop',\n manualCrop = 'manualCrop',\n}\n\nexport enum FitModePosition {\n topLeft = 'topLeft',\n topCenter = 'topCenter',\n topRight = 'topRight',\n centerLeft = 'centerLeft',\n center = 'center',\n centerRight = 'centerRight',\n bottomLeft = 'bottomLeft',\n bottomCenter = 'bottomCenter',\n bottomRight = 'bottomRight',\n}\n\nexport enum UpdateZIndexMethod {\n bringToFront = 'bringToFront',\n sendToBack = 'sendToBack',\n bringForward = 'bringForward',\n sendBackward = 'sendBackward',\n}\n\nexport enum FrameAnchorType {\n relative = 'relative',\n start = 'start',\n end = 'end',\n startAndEnd = 'startAndEnd',\n center = 'center',\n}\n\nexport enum AnchorTargetType {\n page = 'page',\n frame = 'frame',\n}\n\nexport enum AnchorTargetEdgeType {\n start = 'start',\n end = 'end',\n center = 'center',\n}\n\nexport class PageAnchorTarget {\n type = AnchorTargetType.page;\n}\n\nexport class FrameAnchorTarget {\n frameId: Id;\n edge: AnchorTargetEdgeType;\n type = AnchorTargetType.frame;\n\n constructor(id: Id, edge: AnchorTargetEdgeType) {\n (this.frameId = id), (this.edge = edge);\n }\n}\n\nexport type AnchorTarget = PageAnchorTarget | FrameAnchorTarget;\n\nexport type RelativeFrameAnchor = {\n start: PropertyState<number>;\n end: PropertyState<number>;\n target: AnchorTarget;\n type: FrameAnchorType.relative;\n} & HasOverrideState;\n\nexport type StartFrameAnchor = {\n offset: PropertyState<number>;\n target: AnchorTarget;\n type: FrameAnchorType.start;\n} & HasOverrideState;\n\nexport type EndFrameAnchor = {\n offset: PropertyState<number>;\n target: AnchorTarget;\n type: FrameAnchorType.end;\n} & HasOverrideState;\n\nexport type StartAndEndFrameAnchor = {\n start: PropertyState<number>;\n startTarget: AnchorTarget;\n end: PropertyState<number>;\n endTarget: AnchorTarget;\n type: FrameAnchorType.startAndEnd;\n} & HasOverrideState;\n\nexport type CenterFrameAnchor = {\n offset: PropertyState<number>;\n target: AnchorTarget;\n type: FrameAnchorType.center;\n} & HasOverrideState;\n\nexport type FrameAnchor =\n | RelativeFrameAnchor\n | StartFrameAnchor\n | EndFrameAnchor\n | StartAndEndFrameAnchor\n | CenterFrameAnchor;\n\nexport type FrameAnchorProperties = {\n horizontal: boolean;\n type: FrameAnchorType;\n target: AnchorTarget;\n endTarget?: AnchorTarget | null;\n};\n\nexport type AnchorConfiguration = {\n allowedTypes: Set<FrameAnchorType>;\n allowedFrameIds: Set<Id>;\n};\n\nexport type FrameConfiguration = {\n horizontal: AnchorConfiguration;\n vertical: AnchorConfiguration;\n};\n\nexport enum CropType {\n frameCrop = 'frameCrop',\n assetCrop = 'assetCrop',\n}\n\n/**\n * Image-specific editing constraints.\n */\nexport type ImageFrameConstraints = {\n cropAllowed: PropertyState<boolean>;\n};\n\n/**\n * Text-specific editing constraints.\n */\nexport type TextFrameConstraints = {\n editingAllowed: PropertyState<boolean>;\n paragraphStyles: PropertyState<IdSetManagedConstraint>;\n characterStyles: PropertyState<IdSetManagedConstraint>;\n colors: PropertyState<IdSetManagedConstraint>;\n fontSizes: PropertyState<FontSizeRangeManagedConstraint>;\n};\n\nexport interface ManagedConstraint {\n allowed: boolean;\n}\n\n/**\n * A managed constraint represented by a set of allowed Id identifiers.\n *\n * Example: used to allow only a specific set of paragraph or character styles.\n * - `allowed`: If true, only the provided `ids` may be used.\n * - `ids`: The set of allowed Id values.\n */\nexport interface IdSetManagedConstraint extends ManagedConstraint {\n allowed: boolean;\n ids: Id[];\n}\n\n/**\n * A managed constraint that restricts allowed font sizes to a continuous range.\n *\n * - `allowed`: If true, restricts allowed font sizes to [min, max] (inclusive).\n * - `min`: The minimum allowed font size (nullable).\n * - `max`: The maximum allowed font size (nullable).\n */\nexport interface FontSizeRangeManagedConstraint extends ManagedConstraint {\n allowed: boolean;\n min: number | null;\n max: number | null;\n}\n\n/**\n * Frame editing constraints with optional frame-type-specific sub-properties.\n */\nexport type FrameConstraints = {\n selectionAllowed: PropertyState<boolean>;\n horizontalMovementAllowed: PropertyState<boolean>;\n verticalMovementAllowed: PropertyState<boolean>;\n rotationAllowed: PropertyState<boolean>;\n resizeAllowed: PropertyState<boolean>;\n proportionLocked: PropertyState<boolean>;\n /** Image-specific constraints. */\n image?: ImageFrameConstraints;\n /** Text-specific constraints. */\n text?: TextFrameConstraints;\n};\n\n/**\n * Image-specific constraints delta update.\n */\nexport interface ImageFrameConstraintsDeltaUpdate {\n cropAllowed?: {\n value: boolean;\n };\n}\n\n/**\n * Text-specific constraints delta update.\n */\nexport interface TextFrameConstraintsDeltaUpdate {\n editingAllowed?: {\n value: boolean;\n };\n paragraphStyles?: {\n value: IdSetManagedConstraint;\n };\n characterStyles?: {\n value: IdSetManagedConstraint;\n };\n colors?: {\n value: IdSetManagedConstraint;\n };\n fontSizes?: {\n value: FontSizeRangeManagedConstraint;\n };\n}\n\n/**\n * Frame constraints delta update with optional frame-type-specific sub-properties.\n */\nexport interface FrameConstraintsDeltaUpdate {\n selectionAllowed?: {\n value: boolean;\n };\n horizontalMovementAllowed?: {\n value: boolean;\n };\n verticalMovementAllowed?: {\n value: boolean;\n };\n rotationAllowed?: {\n value: boolean;\n };\n resizeAllowed?: {\n value: boolean;\n };\n proportionLocked?: {\n value: boolean;\n };\n /** Image-specific constraints update. */\n image?: ImageFrameConstraintsDeltaUpdate;\n /** Text-specific constraints update. */\n text?: TextFrameConstraintsDeltaUpdate;\n}\n\nexport type SmartCropSettings = SmartCropSettingsV1 | SmartCropSettingsV2;\n\nexport type SmartCropSettingsV1 = {\n version: SmartCropVersion.v1;\n};\n\nexport type SmartCropSettingsV2 = {\n version: SmartCropVersion.v2;\n horizontalBias: SmartCropAxisBias;\n verticalBias: SmartCropAxisBias;\n};\n\nexport enum SmartCropVersion {\n v1 = 'v1',\n v2 = 'v2',\n}\n\n/**\n * Latest version of the smart crop algorithm.\n * Keep in sync with @SmartCropVersion enum.\n */\nexport const LATEST_SMART_CROP_VERSION = SmartCropVersion.v2;\n\nexport enum SmartCropAxisBias {\n start = 'start',\n center = 'center',\n end = 'end',\n}\n"],"names":["ComponentFitEnum","AutoGrowDirection","ImageSourceTypeEnum","ComponentSourceTypeEnum","FrameTypeEnum","BarcodeSourceTypeEnum","TextDirection","FlowDirection","VerticalAlign","BlendMode","FitMode","FitModePosition","UpdateZIndexMethod","FrameAnchorType","AnchorTargetType","AnchorTargetEdgeType","CropType","SmartCropVersion","SmartCropAxisBias"],"mappings":"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"}
|
|
@@ -30,6 +30,7 @@ export type FrameLayoutType = {
|
|
|
30
30
|
customCroppedAssetCount: number;
|
|
31
31
|
subjectId: PropertyState<Id | null>;
|
|
32
32
|
componentGridSettings: PropertyState<ComponentGridSettings>;
|
|
33
|
+
componentFit: PropertyState<ComponentFitEnum>;
|
|
33
34
|
} | null;
|
|
34
35
|
export type FrameType = {
|
|
35
36
|
id: Id;
|
|
@@ -157,6 +158,7 @@ export type ComponentFrame = {
|
|
|
157
158
|
src: ComponentSource;
|
|
158
159
|
variableMappings: VariableMapping[];
|
|
159
160
|
/**
|
|
161
|
+
* @deprecated Use `componentFit` on frame properties instead. This property is deprecated and will be removed in a future version.
|
|
160
162
|
* How the component fits within the frame.
|
|
161
163
|
*/
|
|
162
164
|
fitMode: ComponentFitEnum;
|
|
@@ -170,10 +172,6 @@ export type ComponentGridFrame = {
|
|
|
170
172
|
dataSourceVariableId?: Id | null;
|
|
171
173
|
src?: ComponentSource | null;
|
|
172
174
|
variableMappings: GridVariableMapping;
|
|
173
|
-
/**
|
|
174
|
-
* How the component grid fits within the frame.
|
|
175
|
-
*/
|
|
176
|
-
fitMode: ComponentFitEnum;
|
|
177
175
|
};
|
|
178
176
|
export type GridVariableMapping = {
|
|
179
177
|
mappings: Record<string, VariableMapping[] | null>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FrameTypes.es.js","sources":["../../../src/types/FrameTypes.ts"],"sourcesContent":["// FramePropertiesDto\nimport { BarcodeCharacterSet, BarcodeErrorCorrectionLevel, BarcodeType, QuietZone } from './BarcodeTypes';\nimport { ColorUsage } from './ColorStyleTypes';\nimport { HasOverrideState, Id, PropertyState } from './CommonTypes';\nimport { GradientUsage } from './GradientStyleTypes';\nimport { ComponentGridSettings } from '../types/ComponentGridTypes';\nimport {\n CornerRadiusAll,\n CornerRadiusNone,\n CornerRadiusOnly,\n ShapeFrameSource,\n ShapeType,\n ShapeContainerProperties,\n} from './ShapeTypes';\n\nexport type FrameLayoutType = {\n id: Id;\n layoutId: Id;\n horizontal: FrameAnchor;\n vertical: FrameAnchor;\n x: PropertyState<number>;\n y: PropertyState<number>;\n width: PropertyState<number>;\n height: PropertyState<number>;\n rotationDegrees: PropertyState<number>;\n scaleX: PropertyState<number>;\n scaleY: PropertyState<number>;\n isVisible: PropertyState<boolean>;\n fitMode: PropertyState<FitMode>;\n fitModePosition: PropertyState<FitModePosition>;\n smartCropSettings: PropertyState<SmartCropSettings>;\n hasImageCrop: PropertyState<boolean>;\n hasFrameSubjectArea: PropertyState<boolean>;\n minCopyfitting: PropertyState<number>;\n maxCopyfitting: PropertyState<number>;\n enableCopyfitting: PropertyState<boolean>;\n autoGrow: AutoGrowSettings;\n isShowingCustomCroppedAsset: boolean;\n customCroppedAssetCount: number;\n subjectId: PropertyState<Id | null>;\n componentGridSettings: PropertyState<ComponentGridSettings>;\n} | null;\n\n//Frame.image\nexport type FrameType = {\n id: Id;\n name: string;\n type: FrameTypeEnum;\n // `imageUrl` is not generic: should be removed from model\n imageUrl: string;\n blendMode: string;\n opacity: number;\n};\n\nexport type Frame = TextFrame | ImageFrame | ShapeFrame | BarcodeFrame | ComponentFrame | ComponentGridFrame;\n\nexport type ImageFrameVariableSource = {\n type: ImageSourceTypeEnum.variable;\n id: Id;\n};\n\nexport type ImageFrameUrlSource = {\n type: ImageSourceTypeEnum.url;\n url: string;\n};\n\nexport type ImageFrameConnectorSource = {\n type: ImageSourceTypeEnum.connector;\n assetId: Id;\n id: Id;\n};\n\nexport type ImageFrameBrandkitMediaSource = {\n type: ImageSourceTypeEnum.brandKitMedia;\n name: string;\n};\n\nexport type ImageFrameSource =\n | ImageFrameConnectorSource\n | ImageFrameVariableSource\n | ImageFrameUrlSource\n | ImageFrameBrandkitMediaSource;\n\n// used by new getter methods\nexport type ImageFrame = {\n id: Id;\n name: string;\n opacity: number;\n type: FrameTypeEnum.image;\n src?: ImageFrameSource;\n blendMode: BlendMode;\n dropShadowSettings?: DropShadowSettings;\n container: {\n source: ShapeFrameSource;\n properties: ShapeContainerProperties;\n };\n};\n\nexport type ShapeFrame = {\n id: Id;\n name: string;\n opacity: number;\n type: FrameTypeEnum.shape;\n blendMode: BlendMode;\n shapeProperties: {\n enableFill: boolean;\n fillColor: ColorUsage;\n enableStroke: boolean;\n strokeWeight: number;\n strokeColor: ColorUsage;\n allCornersSame: boolean;\n };\n src: {\n type: ShapeType;\n cornerRadius: CornerRadiusNone | CornerRadiusAll | CornerRadiusOnly;\n sides?: number;\n };\n dropShadowSettings?: DropShadowSettings;\n gradient?: GradientUsage;\n};\n\nexport type TextFrame = {\n id: Id;\n name: string;\n opacity: number;\n type: FrameTypeEnum.text;\n textContent: string;\n paddingLeft: number;\n paddingTop: number;\n paddingRight: number;\n paddingBottom: number;\n numberOfColumns: number;\n columnGap: number;\n textDirection: TextDirection;\n flowDirection: FlowDirection;\n verticalAlign: VerticalAlign;\n textStroke: boolean;\n textStrokeWeight: number;\n textStrokeColor: number;\n hasClippingPath: boolean;\n blendMode: BlendMode;\n dropShadowSettings?: DropShadowSettings;\n hasVariable?: boolean;\n};\n\nexport type BarcodeFrame = {\n id: Id;\n name: string;\n opacity: number;\n type: FrameTypeEnum.barcode;\n blendMode: BlendMode;\n barcodeProperties: {\n enableBackground: boolean;\n backgroundColor: ColorUsage;\n enableBarColor: boolean;\n barColor: ColorUsage;\n enableText: boolean;\n barHeight: number;\n magnification: number;\n quietZone: QuietZone;\n errorCorrectionLevel?: BarcodeErrorCorrectionLevel;\n characterSet?: BarcodeCharacterSet;\n drawStartStopChars: boolean;\n };\n src?: BarcodeSource;\n barcodeType: BarcodeType;\n dropShadowSettings?: DropShadowSettings;\n};\n\nexport type BarcodeSource = BarcodeVariableSource | BarcodeTextSource;\n\nexport type BarcodeVariableSource = {\n type: BarcodeSourceTypeEnum.variable;\n id: Id;\n};\n\nexport type BarcodeTextSource = {\n type: BarcodeSourceTypeEnum.text;\n text: string;\n};\n\nexport type ComponentFrame = {\n id: Id;\n name: string;\n opacity: number;\n type: FrameTypeEnum.component;\n blendMode: BlendMode;\n src: ComponentSource;\n variableMappings: VariableMapping[];\n\n /**\n * How the component fits within the frame.\n */\n fitMode: ComponentFitEnum;\n};\n\nexport type ComponentGridFrame = {\n id: Id;\n name: string;\n opacity: number;\n type: FrameTypeEnum.componentGrid;\n blendMode: BlendMode;\n dataSourceVariableId?: Id | null;\n src?: ComponentSource | null;\n variableMappings: GridVariableMapping;\n\n /**\n * How the component grid fits within the frame.\n */\n fitMode: ComponentFitEnum;\n};\n\nexport type GridVariableMapping = {\n mappings: Record<string, VariableMapping[] | null>;\n}\n\nexport type ComponentSource = ConnectorComponentSource;\n\nexport type ConnectorComponentSource = {\n type: ComponentSourceTypeEnum.connector;\n id: Id;\n assetId: Id | null;\n};\n\nexport type VariableMapping = {\n source: Id;\n target: Id;\n sourceField?: string;\n};\n\nexport enum ComponentFitEnum {\n /**\n * The component resizes to fit the frame size.\n */\n resize = 'resize',\n\n /**\n * The component scales to fit the frame size while maintaining its aspect ratio.\n */\n scale = 'scale',\n\n /**\n * The component first scales to fit the frame size while maintaining its aspect ratio,\n * then resizes to fill the remaining space.\n */\n scaleAndResize = 'scaleAndResize',\n}\n\nexport type CropSettings = {\n left: number;\n top: number;\n width: number;\n height: number;\n rotationDegrees: number;\n type: 'default';\n};\n\nexport type NoCropSettings = {\n type: 'noCrop';\n};\n\nexport type AutoGrowSettings = {\n enabled: PropertyState<boolean>;\n minWidth: PropertyState<number>;\n maxWidth: PropertyState<number>;\n minHeight: PropertyState<number>;\n maxHeight: PropertyState<number>;\n directions: PropertyState<Array<AutoGrowDirection>>;\n};\n\nexport interface AutoGrowDeltaUpdate {\n enabled?: {\n value: boolean;\n };\n minWidth?: {\n value: string | null;\n };\n maxWidth?: {\n value: string | null;\n };\n minHeight?: {\n value: string | null;\n };\n maxHeight?: {\n value: string | null;\n };\n directions?: {\n value: Array<AutoGrowDirection>;\n };\n}\n\nexport type DropShadowSettings = {\n enabled: boolean;\n distance: number;\n angleDegrees: number;\n blurRadius: number;\n color: ColorUsage;\n};\n\nexport interface ShadowSettingsDeltaUpdate {\n distance?: {\n value: string;\n };\n angleDegrees?: {\n value: number;\n };\n blurRadius?: {\n value: number;\n };\n enabled?: {\n value: boolean;\n };\n color?: {\n value: ColorUsage;\n };\n}\n\nexport enum AutoGrowDirection {\n top = 'top',\n bottom = 'bottom',\n left = 'left',\n right = 'right',\n}\n\nexport enum ImageSourceTypeEnum {\n url = 'url',\n variable = 'variable',\n connector = 'connector',\n brandKitMedia = 'brandKitMedia',\n}\n\nexport enum ComponentSourceTypeEnum {\n connector = 'connector',\n}\n\nexport enum FrameTypeEnum {\n text = 'text',\n image = 'image',\n shape = 'shape',\n barcode = 'barcode',\n component = 'component',\n componentGrid = 'componentGrid',\n}\n\nexport enum BarcodeSourceTypeEnum {\n variable = 'variable',\n text = 'text',\n}\n\nexport enum TextDirection {\n leftToRight = 'leftToRight',\n rightToLeft = 'rightToLeft',\n weak = 'weak',\n}\n\nexport enum FlowDirection {\n horizontal = 'horizontal',\n vertical = 'vertical',\n onPath = 'onPath',\n}\n\nexport enum VerticalAlign {\n top = 'top',\n bottom = 'bottom',\n middle = 'middle',\n justify = 'justify',\n}\n\nexport enum BlendMode {\n normal = 'normal',\n screen = 'screen',\n overlay = 'overlay',\n darken = 'darken',\n lighten = 'lighten',\n colorDodge = 'colorDodge',\n colorBurn = 'colorBurn',\n hardLight = 'hardLight',\n softLight = 'softLight',\n difference = 'difference',\n exclusion = 'exclusion',\n multiply = 'multiply',\n hue = 'hue',\n saturation = 'saturation',\n color = 'color',\n luminosity = 'luminosity',\n}\n\nexport enum FitMode {\n fill = 'fill',\n fit = 'fit',\n smartCrop = 'smartCrop',\n manualCrop = 'manualCrop',\n}\n\nexport enum FitModePosition {\n topLeft = 'topLeft',\n topCenter = 'topCenter',\n topRight = 'topRight',\n centerLeft = 'centerLeft',\n center = 'center',\n centerRight = 'centerRight',\n bottomLeft = 'bottomLeft',\n bottomCenter = 'bottomCenter',\n bottomRight = 'bottomRight',\n}\n\nexport enum UpdateZIndexMethod {\n bringToFront = 'bringToFront',\n sendToBack = 'sendToBack',\n bringForward = 'bringForward',\n sendBackward = 'sendBackward',\n}\n\nexport enum FrameAnchorType {\n relative = 'relative',\n start = 'start',\n end = 'end',\n startAndEnd = 'startAndEnd',\n center = 'center',\n}\n\nexport enum AnchorTargetType {\n page = 'page',\n frame = 'frame',\n}\n\nexport enum AnchorTargetEdgeType {\n start = 'start',\n end = 'end',\n center = 'center',\n}\n\nexport class PageAnchorTarget {\n type = AnchorTargetType.page;\n}\n\nexport class FrameAnchorTarget {\n frameId: Id;\n edge: AnchorTargetEdgeType;\n type = AnchorTargetType.frame;\n\n constructor(id: Id, edge: AnchorTargetEdgeType) {\n (this.frameId = id), (this.edge = edge);\n }\n}\n\nexport type AnchorTarget = PageAnchorTarget | FrameAnchorTarget;\n\nexport type RelativeFrameAnchor = {\n start: PropertyState<number>;\n end: PropertyState<number>;\n target: AnchorTarget;\n type: FrameAnchorType.relative;\n} & HasOverrideState;\n\nexport type StartFrameAnchor = {\n offset: PropertyState<number>;\n target: AnchorTarget;\n type: FrameAnchorType.start;\n} & HasOverrideState;\n\nexport type EndFrameAnchor = {\n offset: PropertyState<number>;\n target: AnchorTarget;\n type: FrameAnchorType.end;\n} & HasOverrideState;\n\nexport type StartAndEndFrameAnchor = {\n start: PropertyState<number>;\n startTarget: AnchorTarget;\n end: PropertyState<number>;\n endTarget: AnchorTarget;\n type: FrameAnchorType.startAndEnd;\n} & HasOverrideState;\n\nexport type CenterFrameAnchor = {\n offset: PropertyState<number>;\n target: AnchorTarget;\n type: FrameAnchorType.center;\n} & HasOverrideState;\n\nexport type FrameAnchor =\n | RelativeFrameAnchor\n | StartFrameAnchor\n | EndFrameAnchor\n | StartAndEndFrameAnchor\n | CenterFrameAnchor;\n\nexport type FrameAnchorProperties = {\n horizontal: boolean;\n type: FrameAnchorType;\n target: AnchorTarget;\n endTarget?: AnchorTarget | null;\n};\n\nexport type AnchorConfiguration = {\n allowedTypes: Set<FrameAnchorType>;\n allowedFrameIds: Set<Id>;\n};\n\nexport type FrameConfiguration = {\n horizontal: AnchorConfiguration;\n vertical: AnchorConfiguration;\n};\n\nexport enum CropType {\n frameCrop = 'frameCrop',\n assetCrop = 'assetCrop',\n}\n\n/**\n * Image-specific editing constraints.\n */\nexport type ImageFrameConstraints = {\n cropAllowed: PropertyState<boolean>;\n};\n\n/**\n * Text-specific editing constraints.\n */\nexport type TextFrameConstraints = {\n editingAllowed: PropertyState<boolean>;\n paragraphStyles: PropertyState<IdSetManagedConstraint>;\n characterStyles: PropertyState<IdSetManagedConstraint>;\n colors: PropertyState<IdSetManagedConstraint>;\n fontSizes: PropertyState<FontSizeRangeManagedConstraint>;\n};\n\nexport interface ManagedConstraint {\n allowed: boolean;\n}\n\n/**\n * A managed constraint represented by a set of allowed Id identifiers.\n *\n * Example: used to allow only a specific set of paragraph or character styles.\n * - `allowed`: If true, only the provided `ids` may be used.\n * - `ids`: The set of allowed Id values.\n */\nexport interface IdSetManagedConstraint extends ManagedConstraint {\n allowed: boolean;\n ids: Id[];\n}\n\n/**\n * A managed constraint that restricts allowed font sizes to a continuous range.\n *\n * - `allowed`: If true, restricts allowed font sizes to [min, max] (inclusive).\n * - `min`: The minimum allowed font size (nullable).\n * - `max`: The maximum allowed font size (nullable).\n */\nexport interface FontSizeRangeManagedConstraint extends ManagedConstraint {\n allowed: boolean;\n min: number | null;\n max: number | null;\n}\n\n/**\n * Frame editing constraints with optional frame-type-specific sub-properties.\n */\nexport type FrameConstraints = {\n selectionAllowed: PropertyState<boolean>;\n horizontalMovementAllowed: PropertyState<boolean>;\n verticalMovementAllowed: PropertyState<boolean>;\n rotationAllowed: PropertyState<boolean>;\n resizeAllowed: PropertyState<boolean>;\n proportionLocked: PropertyState<boolean>;\n /** Image-specific constraints. */\n image?: ImageFrameConstraints;\n /** Text-specific constraints. */\n text?: TextFrameConstraints;\n};\n\n/**\n * Image-specific constraints delta update.\n */\nexport interface ImageFrameConstraintsDeltaUpdate {\n cropAllowed?: {\n value: boolean;\n };\n}\n\n/**\n * Text-specific constraints delta update.\n */\nexport interface TextFrameConstraintsDeltaUpdate {\n editingAllowed?: {\n value: boolean;\n };\n paragraphStyles?: {\n value: IdSetManagedConstraint;\n };\n characterStyles?: {\n value: IdSetManagedConstraint;\n };\n colors?: {\n value: IdSetManagedConstraint;\n };\n fontSizes?: {\n value: FontSizeRangeManagedConstraint;\n };\n}\n\n/**\n * Frame constraints delta update with optional frame-type-specific sub-properties.\n */\nexport interface FrameConstraintsDeltaUpdate {\n selectionAllowed?: {\n value: boolean;\n };\n horizontalMovementAllowed?: {\n value: boolean;\n };\n verticalMovementAllowed?: {\n value: boolean;\n };\n rotationAllowed?: {\n value: boolean;\n };\n resizeAllowed?: {\n value: boolean;\n };\n proportionLocked?: {\n value: boolean;\n };\n /** Image-specific constraints update. */\n image?: ImageFrameConstraintsDeltaUpdate;\n /** Text-specific constraints update. */\n text?: TextFrameConstraintsDeltaUpdate;\n}\n\nexport type SmartCropSettings = SmartCropSettingsV1 | SmartCropSettingsV2;\n\nexport type SmartCropSettingsV1 = {\n version: SmartCropVersion.v1;\n};\n\nexport type SmartCropSettingsV2 = {\n version: SmartCropVersion.v2;\n horizontalBias: SmartCropAxisBias;\n verticalBias: SmartCropAxisBias;\n};\n\nexport enum SmartCropVersion {\n v1 = 'v1',\n v2 = 'v2',\n}\n\n/**\n * Latest version of the smart crop algorithm.\n * Keep in sync with @SmartCropVersion enum.\n */\nexport const LATEST_SMART_CROP_VERSION = SmartCropVersion.v2;\n\nexport enum SmartCropAxisBias {\n start = 'start',\n center = 'center',\n end = 'end',\n}\n"],"names":["ComponentFitEnum","AutoGrowDirection","ImageSourceTypeEnum","ComponentSourceTypeEnum","FrameTypeEnum","BarcodeSourceTypeEnum","TextDirection","FlowDirection","VerticalAlign","BlendMode","FitMode","FitModePosition","UpdateZIndexMethod","FrameAnchorType","AnchorTargetType","AnchorTargetEdgeType","CropType","SmartCropVersion","SmartCropAxisBias"],"mappings":"AAsOO,IAAK,qCAAAA,sBAAL;AAIHA,oBAAA,QAAA,IAAS;AAKTA,oBAAA,OAAA,IAAQ;AAMRA,oBAAA,gBAAA,IAAiB;AAfT,SAAAA;AAAA,GAAA,oBAAA,CAAA,CAAA;AAuFL,IAAK,sCAAAC,uBAAL;AACHA,qBAAA,KAAA,IAAM;AACNA,qBAAA,QAAA,IAAS;AACTA,qBAAA,MAAA,IAAO;AACPA,qBAAA,OAAA,IAAQ;AAJA,SAAAA;AAAA,GAAA,qBAAA,CAAA,CAAA;AAOL,IAAK,wCAAAC,yBAAL;AACHA,uBAAA,KAAA,IAAM;AACNA,uBAAA,UAAA,IAAW;AACXA,uBAAA,WAAA,IAAY;AACZA,uBAAA,eAAA,IAAgB;AAJR,SAAAA;AAAA,GAAA,uBAAA,CAAA,CAAA;AAOL,IAAK,4CAAAC,6BAAL;AACHA,2BAAA,WAAA,IAAY;AADJ,SAAAA;AAAA,GAAA,2BAAA,CAAA,CAAA;AAIL,IAAK,kCAAAC,mBAAL;AACHA,iBAAA,MAAA,IAAO;AACPA,iBAAA,OAAA,IAAQ;AACRA,iBAAA,OAAA,IAAQ;AACRA,iBAAA,SAAA,IAAU;AACVA,iBAAA,WAAA,IAAY;AACZA,iBAAA,eAAA,IAAgB;AANR,SAAAA;AAAA,GAAA,iBAAA,CAAA,CAAA;AASL,IAAK,0CAAAC,2BAAL;AACHA,yBAAA,UAAA,IAAW;AACXA,yBAAA,MAAA,IAAO;AAFC,SAAAA;AAAA,GAAA,yBAAA,CAAA,CAAA;AAKL,IAAK,kCAAAC,mBAAL;AACHA,iBAAA,aAAA,IAAc;AACdA,iBAAA,aAAA,IAAc;AACdA,iBAAA,MAAA,IAAO;AAHC,SAAAA;AAAA,GAAA,iBAAA,CAAA,CAAA;AAML,IAAK,kCAAAC,mBAAL;AACHA,iBAAA,YAAA,IAAa;AACbA,iBAAA,UAAA,IAAW;AACXA,iBAAA,QAAA,IAAS;AAHD,SAAAA;AAAA,GAAA,iBAAA,CAAA,CAAA;AAML,IAAK,kCAAAC,mBAAL;AACHA,iBAAA,KAAA,IAAM;AACNA,iBAAA,QAAA,IAAS;AACTA,iBAAA,QAAA,IAAS;AACTA,iBAAA,SAAA,IAAU;AAJF,SAAAA;AAAA,GAAA,iBAAA,CAAA,CAAA;AAOL,IAAK,8BAAAC,eAAL;AACHA,aAAA,QAAA,IAAS;AACTA,aAAA,QAAA,IAAS;AACTA,aAAA,SAAA,IAAU;AACVA,aAAA,QAAA,IAAS;AACTA,aAAA,SAAA,IAAU;AACVA,aAAA,YAAA,IAAa;AACbA,aAAA,WAAA,IAAY;AACZA,aAAA,WAAA,IAAY;AACZA,aAAA,WAAA,IAAY;AACZA,aAAA,YAAA,IAAa;AACbA,aAAA,WAAA,IAAY;AACZA,aAAA,UAAA,IAAW;AACXA,aAAA,KAAA,IAAM;AACNA,aAAA,YAAA,IAAa;AACbA,aAAA,OAAA,IAAQ;AACRA,aAAA,YAAA,IAAa;AAhBL,SAAAA;AAAA,GAAA,aAAA,CAAA,CAAA;AAmBL,IAAK,4BAAAC,aAAL;AACHA,WAAA,MAAA,IAAO;AACPA,WAAA,KAAA,IAAM;AACNA,WAAA,WAAA,IAAY;AACZA,WAAA,YAAA,IAAa;AAJL,SAAAA;AAAA,GAAA,WAAA,CAAA,CAAA;AAOL,IAAK,oCAAAC,qBAAL;AACHA,mBAAA,SAAA,IAAU;AACVA,mBAAA,WAAA,IAAY;AACZA,mBAAA,UAAA,IAAW;AACXA,mBAAA,YAAA,IAAa;AACbA,mBAAA,QAAA,IAAS;AACTA,mBAAA,aAAA,IAAc;AACdA,mBAAA,YAAA,IAAa;AACbA,mBAAA,cAAA,IAAe;AACfA,mBAAA,aAAA,IAAc;AATN,SAAAA;AAAA,GAAA,mBAAA,CAAA,CAAA;AAYL,IAAK,uCAAAC,wBAAL;AACHA,sBAAA,cAAA,IAAe;AACfA,sBAAA,YAAA,IAAa;AACbA,sBAAA,cAAA,IAAe;AACfA,sBAAA,cAAA,IAAe;AAJP,SAAAA;AAAA,GAAA,sBAAA,CAAA,CAAA;AAOL,IAAK,oCAAAC,qBAAL;AACHA,mBAAA,UAAA,IAAW;AACXA,mBAAA,OAAA,IAAQ;AACRA,mBAAA,KAAA,IAAM;AACNA,mBAAA,aAAA,IAAc;AACdA,mBAAA,QAAA,IAAS;AALD,SAAAA;AAAA,GAAA,mBAAA,CAAA,CAAA;AAQL,IAAK,qCAAAC,sBAAL;AACHA,oBAAA,MAAA,IAAO;AACPA,oBAAA,OAAA,IAAQ;AAFA,SAAAA;AAAA,GAAA,oBAAA,CAAA,CAAA;AAKL,IAAK,yCAAAC,0BAAL;AACHA,wBAAA,OAAA,IAAQ;AACRA,wBAAA,KAAA,IAAM;AACNA,wBAAA,QAAA,IAAS;AAHD,SAAAA;AAAA,GAAA,wBAAA,CAAA,CAAA;AAML,MAAM,iBAAiB;AAAA,EAAvB,cAAA;AACH,SAAA,OAAO;AAAA,EAAA;AACX;AAEO,MAAM,kBAAkB;AAAA,EAK3B,YAAY,IAAQ,MAA4B;AAFhD,SAAA,OAAO;AAGF,SAAK,UAAU,IAAM,KAAK,OAAO;AAAA,EACtC;AACJ;AA6DO,IAAK,6BAAAC,cAAL;AACHA,YAAA,WAAA,IAAY;AACZA,YAAA,WAAA,IAAY;AAFJ,SAAAA;AAAA,GAAA,YAAA,CAAA,CAAA;AA0IL,IAAK,qCAAAC,sBAAL;AACHA,oBAAA,IAAA,IAAK;AACLA,oBAAA,IAAA,IAAK;AAFG,SAAAA;AAAA,GAAA,oBAAA,CAAA,CAAA;AASL,MAAM,4BAA4B;AAElC,IAAK,sCAAAC,uBAAL;AACHA,qBAAA,OAAA,IAAQ;AACRA,qBAAA,QAAA,IAAS;AACTA,qBAAA,KAAA,IAAM;AAHE,SAAAA;AAAA,GAAA,qBAAA,CAAA,CAAA;"}
|
|
1
|
+
{"version":3,"file":"FrameTypes.es.js","sources":["../../../src/types/FrameTypes.ts"],"sourcesContent":["// FramePropertiesDto\nimport { BarcodeCharacterSet, BarcodeErrorCorrectionLevel, BarcodeType, QuietZone } from './BarcodeTypes';\nimport { ColorUsage } from './ColorStyleTypes';\nimport { HasOverrideState, Id, PropertyState } from './CommonTypes';\nimport { GradientUsage } from './GradientStyleTypes';\nimport { ComponentGridSettings } from '../types/ComponentGridTypes';\nimport {\n CornerRadiusAll,\n CornerRadiusNone,\n CornerRadiusOnly,\n ShapeFrameSource,\n ShapeType,\n ShapeContainerProperties,\n} from './ShapeTypes';\n\nexport type FrameLayoutType = {\n id: Id;\n layoutId: Id;\n horizontal: FrameAnchor;\n vertical: FrameAnchor;\n x: PropertyState<number>;\n y: PropertyState<number>;\n width: PropertyState<number>;\n height: PropertyState<number>;\n rotationDegrees: PropertyState<number>;\n scaleX: PropertyState<number>;\n scaleY: PropertyState<number>;\n isVisible: PropertyState<boolean>;\n fitMode: PropertyState<FitMode>;\n fitModePosition: PropertyState<FitModePosition>;\n smartCropSettings: PropertyState<SmartCropSettings>;\n hasImageCrop: PropertyState<boolean>;\n hasFrameSubjectArea: PropertyState<boolean>;\n minCopyfitting: PropertyState<number>;\n maxCopyfitting: PropertyState<number>;\n enableCopyfitting: PropertyState<boolean>;\n autoGrow: AutoGrowSettings;\n isShowingCustomCroppedAsset: boolean;\n customCroppedAssetCount: number;\n subjectId: PropertyState<Id | null>;\n componentGridSettings: PropertyState<ComponentGridSettings>;\n componentFit: PropertyState<ComponentFitEnum>;\n} | null;\n\n//Frame.image\nexport type FrameType = {\n id: Id;\n name: string;\n type: FrameTypeEnum;\n // `imageUrl` is not generic: should be removed from model\n imageUrl: string;\n blendMode: string;\n opacity: number;\n};\n\nexport type Frame = TextFrame | ImageFrame | ShapeFrame | BarcodeFrame | ComponentFrame | ComponentGridFrame;\n\nexport type ImageFrameVariableSource = {\n type: ImageSourceTypeEnum.variable;\n id: Id;\n};\n\nexport type ImageFrameUrlSource = {\n type: ImageSourceTypeEnum.url;\n url: string;\n};\n\nexport type ImageFrameConnectorSource = {\n type: ImageSourceTypeEnum.connector;\n assetId: Id;\n id: Id;\n};\n\nexport type ImageFrameBrandkitMediaSource = {\n type: ImageSourceTypeEnum.brandKitMedia;\n name: string;\n};\n\nexport type ImageFrameSource =\n | ImageFrameConnectorSource\n | ImageFrameVariableSource\n | ImageFrameUrlSource\n | ImageFrameBrandkitMediaSource;\n\n// used by new getter methods\nexport type ImageFrame = {\n id: Id;\n name: string;\n opacity: number;\n type: FrameTypeEnum.image;\n src?: ImageFrameSource;\n blendMode: BlendMode;\n dropShadowSettings?: DropShadowSettings;\n container: {\n source: ShapeFrameSource;\n properties: ShapeContainerProperties;\n };\n};\n\nexport type ShapeFrame = {\n id: Id;\n name: string;\n opacity: number;\n type: FrameTypeEnum.shape;\n blendMode: BlendMode;\n shapeProperties: {\n enableFill: boolean;\n fillColor: ColorUsage;\n enableStroke: boolean;\n strokeWeight: number;\n strokeColor: ColorUsage;\n allCornersSame: boolean;\n };\n src: {\n type: ShapeType;\n cornerRadius: CornerRadiusNone | CornerRadiusAll | CornerRadiusOnly;\n sides?: number;\n };\n dropShadowSettings?: DropShadowSettings;\n gradient?: GradientUsage;\n};\n\nexport type TextFrame = {\n id: Id;\n name: string;\n opacity: number;\n type: FrameTypeEnum.text;\n textContent: string;\n paddingLeft: number;\n paddingTop: number;\n paddingRight: number;\n paddingBottom: number;\n numberOfColumns: number;\n columnGap: number;\n textDirection: TextDirection;\n flowDirection: FlowDirection;\n verticalAlign: VerticalAlign;\n textStroke: boolean;\n textStrokeWeight: number;\n textStrokeColor: number;\n hasClippingPath: boolean;\n blendMode: BlendMode;\n dropShadowSettings?: DropShadowSettings;\n hasVariable?: boolean;\n};\n\nexport type BarcodeFrame = {\n id: Id;\n name: string;\n opacity: number;\n type: FrameTypeEnum.barcode;\n blendMode: BlendMode;\n barcodeProperties: {\n enableBackground: boolean;\n backgroundColor: ColorUsage;\n enableBarColor: boolean;\n barColor: ColorUsage;\n enableText: boolean;\n barHeight: number;\n magnification: number;\n quietZone: QuietZone;\n errorCorrectionLevel?: BarcodeErrorCorrectionLevel;\n characterSet?: BarcodeCharacterSet;\n drawStartStopChars: boolean;\n };\n src?: BarcodeSource;\n barcodeType: BarcodeType;\n dropShadowSettings?: DropShadowSettings;\n};\n\nexport type BarcodeSource = BarcodeVariableSource | BarcodeTextSource;\n\nexport type BarcodeVariableSource = {\n type: BarcodeSourceTypeEnum.variable;\n id: Id;\n};\n\nexport type BarcodeTextSource = {\n type: BarcodeSourceTypeEnum.text;\n text: string;\n};\n\nexport type ComponentFrame = {\n id: Id;\n name: string;\n opacity: number;\n type: FrameTypeEnum.component;\n blendMode: BlendMode;\n src: ComponentSource;\n variableMappings: VariableMapping[];\n\n /**\n * @deprecated Use `componentFit` on frame properties instead. This property is deprecated and will be removed in a future version.\n * How the component fits within the frame.\n */\n fitMode: ComponentFitEnum;\n};\n\nexport type ComponentGridFrame = {\n id: Id;\n name: string;\n opacity: number;\n type: FrameTypeEnum.componentGrid;\n blendMode: BlendMode;\n dataSourceVariableId?: Id | null;\n src?: ComponentSource | null;\n variableMappings: GridVariableMapping;\n};\n\nexport type GridVariableMapping = {\n mappings: Record<string, VariableMapping[] | null>;\n};\n\nexport type ComponentSource = ConnectorComponentSource;\n\nexport type ConnectorComponentSource = {\n type: ComponentSourceTypeEnum.connector;\n id: Id;\n assetId: Id | null;\n};\n\nexport type VariableMapping = {\n source: Id;\n target: Id;\n sourceField?: string;\n};\n\nexport enum ComponentFitEnum {\n /**\n * The component resizes to fit the frame size.\n */\n resize = 'resize',\n\n /**\n * The component scales to fit the frame size while maintaining its aspect ratio.\n */\n scale = 'scale',\n\n /**\n * The component first scales to fit the frame size while maintaining its aspect ratio,\n * then resizes to fill the remaining space.\n */\n scaleAndResize = 'scaleAndResize',\n}\n\nexport type CropSettings = {\n left: number;\n top: number;\n width: number;\n height: number;\n rotationDegrees: number;\n type: 'default';\n};\n\nexport type NoCropSettings = {\n type: 'noCrop';\n};\n\nexport type AutoGrowSettings = {\n enabled: PropertyState<boolean>;\n minWidth: PropertyState<number>;\n maxWidth: PropertyState<number>;\n minHeight: PropertyState<number>;\n maxHeight: PropertyState<number>;\n directions: PropertyState<Array<AutoGrowDirection>>;\n};\n\nexport interface AutoGrowDeltaUpdate {\n enabled?: {\n value: boolean;\n };\n minWidth?: {\n value: string | null;\n };\n maxWidth?: {\n value: string | null;\n };\n minHeight?: {\n value: string | null;\n };\n maxHeight?: {\n value: string | null;\n };\n directions?: {\n value: Array<AutoGrowDirection>;\n };\n}\n\nexport type DropShadowSettings = {\n enabled: boolean;\n distance: number;\n angleDegrees: number;\n blurRadius: number;\n color: ColorUsage;\n};\n\nexport interface ShadowSettingsDeltaUpdate {\n distance?: {\n value: string;\n };\n angleDegrees?: {\n value: number;\n };\n blurRadius?: {\n value: number;\n };\n enabled?: {\n value: boolean;\n };\n color?: {\n value: ColorUsage;\n };\n}\n\nexport enum AutoGrowDirection {\n top = 'top',\n bottom = 'bottom',\n left = 'left',\n right = 'right',\n}\n\nexport enum ImageSourceTypeEnum {\n url = 'url',\n variable = 'variable',\n connector = 'connector',\n brandKitMedia = 'brandKitMedia',\n}\n\nexport enum ComponentSourceTypeEnum {\n connector = 'connector',\n}\n\nexport enum FrameTypeEnum {\n text = 'text',\n image = 'image',\n shape = 'shape',\n barcode = 'barcode',\n component = 'component',\n componentGrid = 'componentGrid',\n}\n\nexport enum BarcodeSourceTypeEnum {\n variable = 'variable',\n text = 'text',\n}\n\nexport enum TextDirection {\n leftToRight = 'leftToRight',\n rightToLeft = 'rightToLeft',\n weak = 'weak',\n}\n\nexport enum FlowDirection {\n horizontal = 'horizontal',\n vertical = 'vertical',\n onPath = 'onPath',\n}\n\nexport enum VerticalAlign {\n top = 'top',\n bottom = 'bottom',\n middle = 'middle',\n justify = 'justify',\n}\n\nexport enum BlendMode {\n normal = 'normal',\n screen = 'screen',\n overlay = 'overlay',\n darken = 'darken',\n lighten = 'lighten',\n colorDodge = 'colorDodge',\n colorBurn = 'colorBurn',\n hardLight = 'hardLight',\n softLight = 'softLight',\n difference = 'difference',\n exclusion = 'exclusion',\n multiply = 'multiply',\n hue = 'hue',\n saturation = 'saturation',\n color = 'color',\n luminosity = 'luminosity',\n}\n\nexport enum FitMode {\n fill = 'fill',\n fit = 'fit',\n smartCrop = 'smartCrop',\n manualCrop = 'manualCrop',\n}\n\nexport enum FitModePosition {\n topLeft = 'topLeft',\n topCenter = 'topCenter',\n topRight = 'topRight',\n centerLeft = 'centerLeft',\n center = 'center',\n centerRight = 'centerRight',\n bottomLeft = 'bottomLeft',\n bottomCenter = 'bottomCenter',\n bottomRight = 'bottomRight',\n}\n\nexport enum UpdateZIndexMethod {\n bringToFront = 'bringToFront',\n sendToBack = 'sendToBack',\n bringForward = 'bringForward',\n sendBackward = 'sendBackward',\n}\n\nexport enum FrameAnchorType {\n relative = 'relative',\n start = 'start',\n end = 'end',\n startAndEnd = 'startAndEnd',\n center = 'center',\n}\n\nexport enum AnchorTargetType {\n page = 'page',\n frame = 'frame',\n}\n\nexport enum AnchorTargetEdgeType {\n start = 'start',\n end = 'end',\n center = 'center',\n}\n\nexport class PageAnchorTarget {\n type = AnchorTargetType.page;\n}\n\nexport class FrameAnchorTarget {\n frameId: Id;\n edge: AnchorTargetEdgeType;\n type = AnchorTargetType.frame;\n\n constructor(id: Id, edge: AnchorTargetEdgeType) {\n (this.frameId = id), (this.edge = edge);\n }\n}\n\nexport type AnchorTarget = PageAnchorTarget | FrameAnchorTarget;\n\nexport type RelativeFrameAnchor = {\n start: PropertyState<number>;\n end: PropertyState<number>;\n target: AnchorTarget;\n type: FrameAnchorType.relative;\n} & HasOverrideState;\n\nexport type StartFrameAnchor = {\n offset: PropertyState<number>;\n target: AnchorTarget;\n type: FrameAnchorType.start;\n} & HasOverrideState;\n\nexport type EndFrameAnchor = {\n offset: PropertyState<number>;\n target: AnchorTarget;\n type: FrameAnchorType.end;\n} & HasOverrideState;\n\nexport type StartAndEndFrameAnchor = {\n start: PropertyState<number>;\n startTarget: AnchorTarget;\n end: PropertyState<number>;\n endTarget: AnchorTarget;\n type: FrameAnchorType.startAndEnd;\n} & HasOverrideState;\n\nexport type CenterFrameAnchor = {\n offset: PropertyState<number>;\n target: AnchorTarget;\n type: FrameAnchorType.center;\n} & HasOverrideState;\n\nexport type FrameAnchor =\n | RelativeFrameAnchor\n | StartFrameAnchor\n | EndFrameAnchor\n | StartAndEndFrameAnchor\n | CenterFrameAnchor;\n\nexport type FrameAnchorProperties = {\n horizontal: boolean;\n type: FrameAnchorType;\n target: AnchorTarget;\n endTarget?: AnchorTarget | null;\n};\n\nexport type AnchorConfiguration = {\n allowedTypes: Set<FrameAnchorType>;\n allowedFrameIds: Set<Id>;\n};\n\nexport type FrameConfiguration = {\n horizontal: AnchorConfiguration;\n vertical: AnchorConfiguration;\n};\n\nexport enum CropType {\n frameCrop = 'frameCrop',\n assetCrop = 'assetCrop',\n}\n\n/**\n * Image-specific editing constraints.\n */\nexport type ImageFrameConstraints = {\n cropAllowed: PropertyState<boolean>;\n};\n\n/**\n * Text-specific editing constraints.\n */\nexport type TextFrameConstraints = {\n editingAllowed: PropertyState<boolean>;\n paragraphStyles: PropertyState<IdSetManagedConstraint>;\n characterStyles: PropertyState<IdSetManagedConstraint>;\n colors: PropertyState<IdSetManagedConstraint>;\n fontSizes: PropertyState<FontSizeRangeManagedConstraint>;\n};\n\nexport interface ManagedConstraint {\n allowed: boolean;\n}\n\n/**\n * A managed constraint represented by a set of allowed Id identifiers.\n *\n * Example: used to allow only a specific set of paragraph or character styles.\n * - `allowed`: If true, only the provided `ids` may be used.\n * - `ids`: The set of allowed Id values.\n */\nexport interface IdSetManagedConstraint extends ManagedConstraint {\n allowed: boolean;\n ids: Id[];\n}\n\n/**\n * A managed constraint that restricts allowed font sizes to a continuous range.\n *\n * - `allowed`: If true, restricts allowed font sizes to [min, max] (inclusive).\n * - `min`: The minimum allowed font size (nullable).\n * - `max`: The maximum allowed font size (nullable).\n */\nexport interface FontSizeRangeManagedConstraint extends ManagedConstraint {\n allowed: boolean;\n min: number | null;\n max: number | null;\n}\n\n/**\n * Frame editing constraints with optional frame-type-specific sub-properties.\n */\nexport type FrameConstraints = {\n selectionAllowed: PropertyState<boolean>;\n horizontalMovementAllowed: PropertyState<boolean>;\n verticalMovementAllowed: PropertyState<boolean>;\n rotationAllowed: PropertyState<boolean>;\n resizeAllowed: PropertyState<boolean>;\n proportionLocked: PropertyState<boolean>;\n /** Image-specific constraints. */\n image?: ImageFrameConstraints;\n /** Text-specific constraints. */\n text?: TextFrameConstraints;\n};\n\n/**\n * Image-specific constraints delta update.\n */\nexport interface ImageFrameConstraintsDeltaUpdate {\n cropAllowed?: {\n value: boolean;\n };\n}\n\n/**\n * Text-specific constraints delta update.\n */\nexport interface TextFrameConstraintsDeltaUpdate {\n editingAllowed?: {\n value: boolean;\n };\n paragraphStyles?: {\n value: IdSetManagedConstraint;\n };\n characterStyles?: {\n value: IdSetManagedConstraint;\n };\n colors?: {\n value: IdSetManagedConstraint;\n };\n fontSizes?: {\n value: FontSizeRangeManagedConstraint;\n };\n}\n\n/**\n * Frame constraints delta update with optional frame-type-specific sub-properties.\n */\nexport interface FrameConstraintsDeltaUpdate {\n selectionAllowed?: {\n value: boolean;\n };\n horizontalMovementAllowed?: {\n value: boolean;\n };\n verticalMovementAllowed?: {\n value: boolean;\n };\n rotationAllowed?: {\n value: boolean;\n };\n resizeAllowed?: {\n value: boolean;\n };\n proportionLocked?: {\n value: boolean;\n };\n /** Image-specific constraints update. */\n image?: ImageFrameConstraintsDeltaUpdate;\n /** Text-specific constraints update. */\n text?: TextFrameConstraintsDeltaUpdate;\n}\n\nexport type SmartCropSettings = SmartCropSettingsV1 | SmartCropSettingsV2;\n\nexport type SmartCropSettingsV1 = {\n version: SmartCropVersion.v1;\n};\n\nexport type SmartCropSettingsV2 = {\n version: SmartCropVersion.v2;\n horizontalBias: SmartCropAxisBias;\n verticalBias: SmartCropAxisBias;\n};\n\nexport enum SmartCropVersion {\n v1 = 'v1',\n v2 = 'v2',\n}\n\n/**\n * Latest version of the smart crop algorithm.\n * Keep in sync with @SmartCropVersion enum.\n */\nexport const LATEST_SMART_CROP_VERSION = SmartCropVersion.v2;\n\nexport enum SmartCropAxisBias {\n start = 'start',\n center = 'center',\n end = 'end',\n}\n"],"names":["ComponentFitEnum","AutoGrowDirection","ImageSourceTypeEnum","ComponentSourceTypeEnum","FrameTypeEnum","BarcodeSourceTypeEnum","TextDirection","FlowDirection","VerticalAlign","BlendMode","FitMode","FitModePosition","UpdateZIndexMethod","FrameAnchorType","AnchorTargetType","AnchorTargetEdgeType","CropType","SmartCropVersion","SmartCropAxisBias"],"mappings":"AAmOO,IAAK,qCAAAA,sBAAL;AAIHA,oBAAA,QAAA,IAAS;AAKTA,oBAAA,OAAA,IAAQ;AAMRA,oBAAA,gBAAA,IAAiB;AAfT,SAAAA;AAAA,GAAA,oBAAA,CAAA,CAAA;AAuFL,IAAK,sCAAAC,uBAAL;AACHA,qBAAA,KAAA,IAAM;AACNA,qBAAA,QAAA,IAAS;AACTA,qBAAA,MAAA,IAAO;AACPA,qBAAA,OAAA,IAAQ;AAJA,SAAAA;AAAA,GAAA,qBAAA,CAAA,CAAA;AAOL,IAAK,wCAAAC,yBAAL;AACHA,uBAAA,KAAA,IAAM;AACNA,uBAAA,UAAA,IAAW;AACXA,uBAAA,WAAA,IAAY;AACZA,uBAAA,eAAA,IAAgB;AAJR,SAAAA;AAAA,GAAA,uBAAA,CAAA,CAAA;AAOL,IAAK,4CAAAC,6BAAL;AACHA,2BAAA,WAAA,IAAY;AADJ,SAAAA;AAAA,GAAA,2BAAA,CAAA,CAAA;AAIL,IAAK,kCAAAC,mBAAL;AACHA,iBAAA,MAAA,IAAO;AACPA,iBAAA,OAAA,IAAQ;AACRA,iBAAA,OAAA,IAAQ;AACRA,iBAAA,SAAA,IAAU;AACVA,iBAAA,WAAA,IAAY;AACZA,iBAAA,eAAA,IAAgB;AANR,SAAAA;AAAA,GAAA,iBAAA,CAAA,CAAA;AASL,IAAK,0CAAAC,2BAAL;AACHA,yBAAA,UAAA,IAAW;AACXA,yBAAA,MAAA,IAAO;AAFC,SAAAA;AAAA,GAAA,yBAAA,CAAA,CAAA;AAKL,IAAK,kCAAAC,mBAAL;AACHA,iBAAA,aAAA,IAAc;AACdA,iBAAA,aAAA,IAAc;AACdA,iBAAA,MAAA,IAAO;AAHC,SAAAA;AAAA,GAAA,iBAAA,CAAA,CAAA;AAML,IAAK,kCAAAC,mBAAL;AACHA,iBAAA,YAAA,IAAa;AACbA,iBAAA,UAAA,IAAW;AACXA,iBAAA,QAAA,IAAS;AAHD,SAAAA;AAAA,GAAA,iBAAA,CAAA,CAAA;AAML,IAAK,kCAAAC,mBAAL;AACHA,iBAAA,KAAA,IAAM;AACNA,iBAAA,QAAA,IAAS;AACTA,iBAAA,QAAA,IAAS;AACTA,iBAAA,SAAA,IAAU;AAJF,SAAAA;AAAA,GAAA,iBAAA,CAAA,CAAA;AAOL,IAAK,8BAAAC,eAAL;AACHA,aAAA,QAAA,IAAS;AACTA,aAAA,QAAA,IAAS;AACTA,aAAA,SAAA,IAAU;AACVA,aAAA,QAAA,IAAS;AACTA,aAAA,SAAA,IAAU;AACVA,aAAA,YAAA,IAAa;AACbA,aAAA,WAAA,IAAY;AACZA,aAAA,WAAA,IAAY;AACZA,aAAA,WAAA,IAAY;AACZA,aAAA,YAAA,IAAa;AACbA,aAAA,WAAA,IAAY;AACZA,aAAA,UAAA,IAAW;AACXA,aAAA,KAAA,IAAM;AACNA,aAAA,YAAA,IAAa;AACbA,aAAA,OAAA,IAAQ;AACRA,aAAA,YAAA,IAAa;AAhBL,SAAAA;AAAA,GAAA,aAAA,CAAA,CAAA;AAmBL,IAAK,4BAAAC,aAAL;AACHA,WAAA,MAAA,IAAO;AACPA,WAAA,KAAA,IAAM;AACNA,WAAA,WAAA,IAAY;AACZA,WAAA,YAAA,IAAa;AAJL,SAAAA;AAAA,GAAA,WAAA,CAAA,CAAA;AAOL,IAAK,oCAAAC,qBAAL;AACHA,mBAAA,SAAA,IAAU;AACVA,mBAAA,WAAA,IAAY;AACZA,mBAAA,UAAA,IAAW;AACXA,mBAAA,YAAA,IAAa;AACbA,mBAAA,QAAA,IAAS;AACTA,mBAAA,aAAA,IAAc;AACdA,mBAAA,YAAA,IAAa;AACbA,mBAAA,cAAA,IAAe;AACfA,mBAAA,aAAA,IAAc;AATN,SAAAA;AAAA,GAAA,mBAAA,CAAA,CAAA;AAYL,IAAK,uCAAAC,wBAAL;AACHA,sBAAA,cAAA,IAAe;AACfA,sBAAA,YAAA,IAAa;AACbA,sBAAA,cAAA,IAAe;AACfA,sBAAA,cAAA,IAAe;AAJP,SAAAA;AAAA,GAAA,sBAAA,CAAA,CAAA;AAOL,IAAK,oCAAAC,qBAAL;AACHA,mBAAA,UAAA,IAAW;AACXA,mBAAA,OAAA,IAAQ;AACRA,mBAAA,KAAA,IAAM;AACNA,mBAAA,aAAA,IAAc;AACdA,mBAAA,QAAA,IAAS;AALD,SAAAA;AAAA,GAAA,mBAAA,CAAA,CAAA;AAQL,IAAK,qCAAAC,sBAAL;AACHA,oBAAA,MAAA,IAAO;AACPA,oBAAA,OAAA,IAAQ;AAFA,SAAAA;AAAA,GAAA,oBAAA,CAAA,CAAA;AAKL,IAAK,yCAAAC,0BAAL;AACHA,wBAAA,OAAA,IAAQ;AACRA,wBAAA,KAAA,IAAM;AACNA,wBAAA,QAAA,IAAS;AAHD,SAAAA;AAAA,GAAA,wBAAA,CAAA,CAAA;AAML,MAAM,iBAAiB;AAAA,EAAvB,cAAA;AACH,SAAA,OAAO;AAAA,EAAA;AACX;AAEO,MAAM,kBAAkB;AAAA,EAK3B,YAAY,IAAQ,MAA4B;AAFhD,SAAA,OAAO;AAGF,SAAK,UAAU,IAAM,KAAK,OAAO;AAAA,EACtC;AACJ;AA6DO,IAAK,6BAAAC,cAAL;AACHA,YAAA,WAAA,IAAY;AACZA,YAAA,WAAA,IAAY;AAFJ,SAAAA;AAAA,GAAA,YAAA,CAAA,CAAA;AA0IL,IAAK,qCAAAC,sBAAL;AACHA,oBAAA,IAAA,IAAK;AACLA,oBAAA,IAAA,IAAK;AAFG,SAAAA;AAAA,GAAA,oBAAA,CAAA,CAAA;AASL,MAAM,4BAA4B;AAElC,IAAK,sCAAAC,uBAAL;AACHA,qBAAA,OAAA,IAAQ;AACRA,qBAAA,QAAA,IAAS;AACTA,qBAAA,KAAA,IAAM;AAHE,SAAAA;AAAA,GAAA,qBAAA,CAAA,CAAA;"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
export type MethodInvocationBase = {
|
|
2
|
+
path: string;
|
|
3
|
+
controller: string;
|
|
4
|
+
method: string;
|
|
5
|
+
args: unknown[];
|
|
6
|
+
};
|
|
7
|
+
export type MethodInvokeEvent = MethodInvocationBase & {
|
|
8
|
+
phase: 'invoke';
|
|
9
|
+
};
|
|
10
|
+
export type MethodCompleteEvent = MethodInvocationBase & {
|
|
11
|
+
phase: 'complete';
|
|
12
|
+
success: boolean;
|
|
13
|
+
result?: unknown;
|
|
14
|
+
error?: unknown;
|
|
15
|
+
};
|
|
16
|
+
export type MethodInvocationEvent = MethodInvokeEvent | MethodCompleteEvent;
|
|
17
|
+
export type MethodInvocationListener = (event: MethodInvocationEvent) => void;
|
|
18
|
+
export interface Unsubscriber {
|
|
19
|
+
(): void;
|
|
20
|
+
}
|
|
21
|
+
export type MethodListenable<T extends (...args: any[]) => any> = T & {
|
|
22
|
+
addEventListener(listener: MethodInvocationListener): Unsubscriber;
|
|
23
|
+
removeEventListener(listener: MethodInvocationListener): void;
|
|
24
|
+
};
|
|
25
|
+
export type Instrumented<T> = {
|
|
26
|
+
[K in keyof T]: T[K] extends (...args: any[]) => any ? MethodListenable<T[K]> : T[K] extends object ? Instrumented<T[K]> : T[K];
|
|
27
|
+
};
|