@@ -2,7 +2,7 @@ import $ from 'jquery';
22import { DateTime , Timezone } from '@tubular/time' ;
33import { cos_deg , floor , mod , Point , sin_deg } from '@tubular/math' ;
44import {
5- asLines , htmlEscape , isEdge , isFunction , isSafari , isString , last , padLeft , parseColor ,
5+ asLines , htmlEscape , isEdge , isFunction , isObject , isSafari , isString , last , padLeft , parseColor ,
66 processMillis , toNumber
77} from '@tubular/util' ;
88import compareVersions , { CompareOperator } from 'compare-versions' ;
@@ -147,21 +147,34 @@ export function domAlert(message: string, callback?: () => void): void {
147147
148148type OkCallback = ( isOk : boolean ) => void ;
149149
150+ interface ConfirmOptions {
151+ cancelText ?: string ;
152+ okText ?: string ;
153+ optionalHtml ?: string ;
154+ }
155+
150156export function domConfirm ( message : string , callback : OkCallback ) : void ;
151- export function domConfirm ( message : string , optionsHtml : string , callback : OkCallback ) : void ;
152- export function domConfirm ( message : string , callbackOrOptions : OkCallback | string , callback ?: OkCallback ) : void {
157+ export function domConfirm ( message : string , optionsHtml : string | ConfirmOptions , callback : OkCallback ) : void ;
158+ export function domConfirm ( message : string , callbackOrOptions : OkCallback | string | ConfirmOptions , callback ?: OkCallback ) : void {
159+ let cancelText = '' ;
160+ let okText = '' ;
153161 let optionalHtml : string ;
154162
155- if ( isString ( callbackOrOptions ) )
156- optionalHtml = callbackOrOptions ;
157- else if ( ! isFunction ( callback ) )
163+ if ( isFunction ( callbackOrOptions ) )
158164 callback = callbackOrOptions ;
165+ else if ( isObject ( callbackOrOptions ) )
166+ ( { cancelText, okText, optionalHtml } = callbackOrOptions ) ;
167+ else if ( isString ( callbackOrOptions ) )
168+ optionalHtml = callbackOrOptions ;
159169
160170 const confirmDialog = $ ( '#confirm-dialog' ) ;
161171 const confirmOk = $ ( '#confirm-ok' ) ;
162172 const confirmCancel = $ ( '#confirm-cancel' ) ;
163173 const confirmOptions = $ ( '#confirm-options' ) ;
164174
175+ confirmCancel . text ( cancelText || 'Cancel' ) ;
176+ confirmOk . text ( okText || 'OK' ) ;
177+
165178 if ( optionalHtml ) {
166179 confirmOptions . css ( 'display' , 'block' ) ;
167180 confirmOptions . html ( optionalHtml ) ;
0 commit comments