armstrong-react
Advanced tools
Comparing version 4.0.0-pre2 to 4.0.0-pre3
import * as React from "react"; | ||
export declare const DialogProvider: React.FC<{}>; | ||
export declare function useDialogProvider<T>(component: React.FC<IDialogProviderProps<T>>, settings?: IDialogSettings): () => Promise<T>; | ||
export declare function useConfirmDialogProvider(component: React.FC<IDialogProviderProps<boolean>>, settings?: IDialogSettings): () => Promise<boolean>; | ||
export declare function useDialogProvider<TResult, TArg = void>(component: React.FC<IDialogProviderProps<TResult, TArg>>, settings?: IDialogSettings): (argument?: TArg) => Promise<TResult>; | ||
export declare function useConfirmDialogProvider(component: React.FC<IDialogProviderProps<boolean>>, settings?: IDialogSettings): (argument?: void) => Promise<boolean>; | ||
interface IDialogSettings { | ||
@@ -10,6 +10,7 @@ title?: string; | ||
} | ||
export interface IDialogProviderProps<T> { | ||
export interface IDialogProviderProps<T, TArg = void> { | ||
close(): void; | ||
choose(data: T): void; | ||
argument?: TArg; | ||
} | ||
export {}; |
@@ -10,3 +10,3 @@ "use strict"; | ||
var ref = React.useRef(); | ||
return (React.createElement(DialogProviderContext.Provider, { value: { useDialogPromise: function (c, s) { return ref.current && ref.current.useDialogPromise(c, s); } } }, | ||
return (React.createElement(DialogProviderContext.Provider, { value: { useDialogPromise: function (component, argument, settings) { return ref.current && ref.current.useDialogPromise(component, argument, settings); } } }, | ||
p.children, | ||
@@ -20,3 +20,3 @@ React.createElement(DialogStack, { ref: ref }))); | ||
} | ||
return React.useCallback(function () { return ctx.useDialogPromise(component, settings); }, [component, settings]); | ||
return React.useCallback(function (argument) { return ctx.useDialogPromise(component, argument, settings); }, [component, settings]); | ||
} | ||
@@ -34,3 +34,3 @@ exports.useDialogProvider = useDialogProvider; | ||
React.useImperativeHandle(ref, function () { return ({ | ||
useDialogPromise: function (Body, settings) { | ||
useDialogPromise: function (Body, argument, settings) { | ||
var _this = this; | ||
@@ -48,3 +48,3 @@ return new Promise(function (resolve) { return tslib_1.__awaiter(_this, void 0, void 0, function () { | ||
}; | ||
setDialogContent(dialogContent.concat([tslib_1.__assign({ body: React.createElement(Body, { close: close, choose: choose }), close: close }, (settings || {}))])); | ||
setDialogContent(dialogContent.concat([tslib_1.__assign({ body: React.createElement(Body, { argument: argument, close: close, choose: choose }), close: close }, (settings || {}))])); | ||
return [2 /*return*/]; | ||
@@ -51,0 +51,0 @@ }); |
{ | ||
"name": "armstrong-react", | ||
"version": "4.0.0-pre2", | ||
"version": "4.0.0-pre3", | ||
"description": "Rocketmakers Armstrong library of React components", | ||
@@ -5,0 +5,0 @@ "main": "./dist/index.js", |
Sorry, the diff of this file is not supported yet
826505
16122