@contentful/dam-app-base
- Asset
- CompatibleFields
- Config
- DeleteFn
- DisabledPredicateFn
- OpenDialogFn
- RenderDialogFn
- SelectedFields
- ThumbnailFn
- ValidateParametersFn
Ƭ Asset: Record<string, any>
Object containing data about the asset. Shape and values are DAM service specific.
Ƭ CompatibleFields: Record<string, Field[]>
Ƭ Config: Record<string, any>
Object containing all information configured on the app configuration page.
Ƭ DeleteFn: (index: number) => void
Ƭ DisabledPredicateFn: (currentValue: Asset[], config: Config) => boolean
Function that should return true when the button should be disabled.
param Currently selected assets
param App configuration
returns true, if the button in the field location should be disabled. false, if the button should be enabled
Ƭ OpenDialogFn: (sdk: FieldExtensionSDK, currentValue: Asset[], config: Config) => Promise<Asset[]>
Function that gets called when app wants to open a dialog. Should return an updated list of assets as a Promise.
You probably want to call sdk.openCurrentApp.
example
async function openDialog(sdk, currentValue, config) {
return await sdk.dialogs.openCurrentApp({
parameters: { config, currentValue },
});
}param (https://www.contentful.com/developers/docs/extensibility/app-framework/sdk/)
param List of currently selected assets
param App configuration
returns Promise containing a list of selected assets
Ƭ RenderDialogFn: (sdk: DialogExtensionSDK) => void
Function that gets called within the Iframe when the app is rendered in a dialog location.
example
function renderDialog(sdk) {
const config = sdk.parameters.invocation;
const container = document.createElement('div');
container.innerHTML = `<iframe src="https://example.com/dam?folder=${config.folder}" width="400" height="650" style="border:none;"/>`;
document.body.appendChild(container);
}param (https://www.contentful.com/developers/docs/extensibility/app-framework/sdk/)
Ƭ SelectedFields: Record<string, string[] | undefined>
Ƭ ThumbnailFn: (asset: Asset, config: Config) => [string, string | undefined]
Returns the url of the thumbnail of an asset.
param Asset
param App configuration
returns Tuple containing (1) the url and (2) the text represantation of the asset (optional)
Ƭ ValidateParametersFn: (parameters: Record<string, any>) => string | null
Custom code that validates installation parameters that is run before saving.
param Object containg the entered parameters.
returns string containing an error message. null if the parameters are valid.
▸ editorInterfacesToSelectedFields(eis: EditorInterface[], appId?: string): Record<string, undefined | string[]>
| Name | Type |
|---|---|
eis |
EditorInterface[] |
appId? |
string |
Returns: Record<string, undefined | string[]>
▸ getCompatibleFields(contentTypes: ContentType[]): Record<string, Field[]>
| Name | Type |
|---|---|
contentTypes |
ContentType[] |
Returns: Record<string, Field[]>
▸ selectedFieldsToTargetState(contentTypes: ContentType[], selectedFields: Record<string, undefined | string[]>): object
| Name | Type |
|---|---|
contentTypes |
ContentType[] |
selectedFields |
Record<string, undefined | string[]> |
Returns: object
| Name | Type |
|---|---|
EditorInterface |
{} |
▸ setup(integration: Integration): void
| Name | Type |
|---|---|
integration |
Integration |
Returns: void