// PromptActionClass.ets
|
import { BusinessError } from '@kit.BasicServicesKit';
|
import { ComponentContent, promptAction, UIContext } from '@kit.ArkUI';
|
|
export class PromptActionClass {
|
static ctx: UIContext;
|
static contentNode: ComponentContent<Object>;
|
static options: promptAction.BaseDialogOptions;
|
|
static setContext(context: UIContext) {
|
PromptActionClass.ctx = context;
|
}
|
|
static setContentNode(node: ComponentContent<Object>) {
|
PromptActionClass.contentNode = node;
|
}
|
|
static setOptions(options: promptAction.BaseDialogOptions) {
|
PromptActionClass.options = options;
|
}
|
|
static openDialog() {
|
if (PromptActionClass.contentNode !== null) {
|
PromptActionClass.ctx.getPromptAction().openCustomDialog(PromptActionClass.contentNode, PromptActionClass.options)
|
.then(() => {
|
console.info('OpenCustomDialog complete.');
|
})
|
.catch((error: BusinessError) => {
|
let message = (error as BusinessError).message;
|
let code = (error as BusinessError).code;
|
console.error(`OpenCustomDialog args error code is ${code}, message is ${message}`);
|
})
|
}
|
}
|
|
static closeDialog() {
|
if (PromptActionClass.contentNode !== null) {
|
PromptActionClass.ctx.getPromptAction().closeCustomDialog(PromptActionClass.contentNode)
|
.then(() => {
|
console.info('CloseCustomDialog complete.');
|
})
|
.catch((error: BusinessError) => {
|
let message = (error as BusinessError).message;
|
let code = (error as BusinessError).code;
|
console.error(`CloseCustomDialog args error code is ${code}, message is ${message}`);
|
})
|
}
|
}
|
|
static updateDialog(options: promptAction.BaseDialogOptions) {
|
if (PromptActionClass.contentNode !== null) {
|
PromptActionClass.ctx.getPromptAction().updateCustomDialog(PromptActionClass.contentNode, options)
|
.then(() => {
|
console.info('UpdateCustomDialog complete.');
|
})
|
.catch((error: BusinessError) => {
|
let message = (error as BusinessError).message;
|
let code = (error as BusinessError).code;
|
console.error(`UpdateCustomDialog args error code is ${code}, message is ${message}`);
|
})
|
}
|
}
|
}
|