@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