[]
type HandlersSettings = object;
optional onAfterCreate: () => void;
A handler that is called when create is complete
void
// ESM usage
import { arWebDesigner } from './web-designer.js';
arWebDesigner.create('#ar-web-designer', {
documents: {
handlers: {
onAfterCreate: () => {
console.log('New report created successful.')
}
}
}
});
// UMD usage
GrapeCity.ActiveReports.Designer.create('#ar-web-designer', {
documents: {
handlers: {
onAfterCreate: () => {
console.log('New report created successful.')
}
}
}
});
GrapeCity.ActiveReports.Designer.create('#ar-web-designer', {
documents: {
handlers: {
onAfterCreate: () => {
console.log('New report created successful.')
}
}
}
});
optional onAfterOpen: () => void;
A handler that is called when open is complete
void
// ESM usage
import { arWebDesigner } from './web-designer.js';
arWebDesigner.create('#ar-web-designer', {
documents: {
handlers: {
onAfterOpen: () => {
console.log('New report opened successful.')
}
}
}
});
// UMD usage
GrapeCity.ActiveReports.Designer.create('#ar-web-designer', {
documents: {
handlers: {
onAfterOpen: () => {
console.log('New report opened successful.')
}
}
}
});
GrapeCity.ActiveReports.Designer.create('#ar-web-designer', {
documents: {
handlers: {
onAfterOpen: () => {
console.log('New report opened successful.')
}
}
}
});
optional onAfterSave: (info) => void;
A handler that is called when save is complete
void
// ESM usage
import { arWebDesigner } from './web-designer.js';
arWebDesigner.create('#ar-web-designer', {
documents: {
fileView: {
handlers: {
onBeforeSave: (info) => {
return new Promise((resolve, reject) => {
resolve(false);
});
}
}
});
// UMD usage
GrapeCity.ActiveReports.Designer.create('#ar-web-designer', {
documents: {
handlers: {
onAfterSave: (info) => {
if (!info.success) throw new Error(`Report saving error`);
}
}
}
});
GrapeCity.ActiveReports.Designer.create('#ar-web-designer', {
documents: {
handlers: {
onAfterSave: (info) => {
if (!info.success) throw new Error(`Report saving error`);
}
}
}
});
optional onBeforeCreate: () => Promise<boolean>;
An async handler, cancels create process if returned false
Promise<boolean>
// ESM usage
import { arWebDesigner } from './web-designer.js';
arWebDesigner.create('#ar-web-designer', {
documents: {
handlers: {
onBeforeCreate: () => {return false}
}
}
});
// UMD usage
GrapeCity.ActiveReports.Designer.create('#ar-web-designer', {
documents: {
handlers: {
onBeforeCreate: () => {return false}
}
}
});
GrapeCity.ActiveReports.Designer.create('#ar-web-designer', {
documents: {
handlers: {
onBeforeCreate: () => {return false}
}
}
});
optional onBeforeOpen: () => Promise<boolean>;
An async handler, cancels opening process if returned false
Promise<boolean>
// ESM usage
import { arWebDesigner } from './web-designer.js';
arWebDesigner.create('#ar-web-designer', {
documents: {
handlers: {
onBeforeOpen: () => {
return new Promise((resolve, reject) => {
resolve(false);
});
}
}
}
});
// UMD usage
GrapeCity.ActiveReports.Designer.create('#ar-web-designer', {
documents: {
handlers: {
onBeforeOpen: () => {
return new Promise((resolve, reject) => {
resolve(false);
});
}
}
}
});
GrapeCity.ActiveReports.Designer.create('#ar-web-designer', {
documents: {
handlers: {
onBeforeOpen: () => {
return new Promise((resolve, reject) => {
resolve(false);
});
}
}
}
});
optional onBeforeSave: (info) => Promise<boolean>;
An async handler, cancels saving process if returned false
Promise<boolean>
// ESM usage
import { arWebDesigner } from './web-designer.js';
arWebDesigner.create('#ar-web-designer', {
documents: {
fileView: {
handlers: {
onBeforeSave: (info) => {
return new Promise((resolve, reject) => {
resolve(false);
});
}
}
});
// UMD usage
GrapeCity.ActiveReports.Designer.create('#ar-web-designer', {
documents: {
handlers: {
onBeforeSave: (info) => {
return new Promise((resolve, reject) => {
resolve(false);
});
}
}
}
});
GrapeCity.ActiveReports.Designer.create('#ar-web-designer', {
documents: {
handlers: {
onBeforeSave: (info: SaveDocumentInfo) => {
return new Promise((resolve, reject) => {
resolve(false);
});
}
}
}
});
optional onDocumentChanged: (options) => void;
A handler that is triggered when report content is changed
any
boolean
void
// ESM usage
import { arWebDesigner } from './web-designer.js';
arWebDesigner.create('#ar-web-designer', {
documents: {
handlers: {
onDocumentChanged: (options) => {
if (options.hasUnsavedChanges) console.log('Currently edited report has unsaved changes.');
}
}
}
});
// UMD usage
GrapeCity.ActiveReports.Designer.create('#ar-web-designer', {
documents: {
handlers: {
onDocumentChanged: (options) => {
if (options.hasUnsavedChanges) console.log('Currently edited report has unsaved changes.');
}
}
}
});
GrapeCity.ActiveReports.Designer.create('#ar-web-designer', {
documents: {
handlers: {
onDocumentChanged: (options: { document: any, hasUnsavedChanges: boolean }) => {
if (options.hasUnsavedChanges) console.log('Currently edited report has unsaved changes.');
}
}
}
});
optional onInfoUpdate: (options) => void;
A handler that is triggered when report name/id is updated
string
string
SupportedDocumentType["platform"]
SupportedDocumentType["type"]
void
// ESM usage
import { arWebDesigner } from './web-designer.js';
arWebDesigner.create('#ar-web-designer', {
documents: {
handlers: {
onInfoUpdate: (options) => {
console.log(`name changed ${options.name}`);
}
}
}
});
// UMD usage
GrapeCity.ActiveReports.Designer.create('#ar-web-designer', {
documents: {
handlers: {
onInfoUpdate: (options) => {
console.log(`name changed ${options.name}`);
}
}
}
});
GrapeCity.ActiveReports.Designer.create('#ar-web-designer', {
documents: {
handlers: {
onInfoUpdate: (options:
{
name: string,
id?: string,
type: SupportedDocumentType['type'],
platform: SupportedDocumentType['platform']
}) =>
{console.log(`name changed ${options.name}`);}
}
}
});