dry-ux 1.41.0 → 1.43.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,9 @@
1
+ export interface ILogger {
2
+ log(...message: string[]): void;
3
+ error(...message: string[]): void;
4
+ debug(...message: string[]): void;
5
+ warn(...message: string[]): void;
6
+ }
7
+ export declare const initLoggerFactory: (path: string) => {
8
+ useLogger: (name: string) => ILogger;
9
+ };
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.initLoggerFactory = void 0;
4
+ const useLogger = (path, name) => {
5
+ const convertMessage = (message) => message
6
+ .map(m => {
7
+ try {
8
+ if (typeof m === "string" || typeof m === "number" || typeof m === "boolean") {
9
+ return m.toString();
10
+ }
11
+ return JSON.stringify(m);
12
+ }
13
+ catch (e) {
14
+ return m;
15
+ }
16
+ })
17
+ .join(" ");
18
+ const log = (level, message) => fetch(path, {
19
+ method: "POST",
20
+ headers: {
21
+ "Content-Type": "application/json",
22
+ },
23
+ body: JSON.stringify({ logger_name: name, level, message: convertMessage(message) }),
24
+ });
25
+ return {
26
+ log: (...message) => log("info", message),
27
+ error: (...message) => log("error", message),
28
+ debug: (...message) => log("debug", message),
29
+ warn: (...message) => log("warn", message),
30
+ };
31
+ };
32
+ const initLoggerFactory = (path) => ({
33
+ useLogger: (name) => useLogger(path, name),
34
+ });
35
+ exports.initLoggerFactory = initLoggerFactory;
package/dist/index.d.ts CHANGED
@@ -4,6 +4,7 @@ export { Money as Money } from "./ui-utils/Money";
4
4
  export * from "./ui-utils/uiUtil.interface";
5
5
  export { DryUXProvider } from "./provider";
6
6
  export * from "./helpers/utilities";
7
+ export * from "./helpers/logger";
7
8
  export { classSet } from "./helpers/classSet";
8
9
  export { flatten, unflatten } from "./helpers/flat";
9
10
  export { DajaxiceProxy } from "./dajaxice/DajaxiceProxy";
package/dist/index.js CHANGED
@@ -26,6 +26,7 @@ __exportStar(require("./ui-utils/uiUtil.interface"), exports);
26
26
  var provider_1 = require("./provider");
27
27
  Object.defineProperty(exports, "DryUXProvider", { enumerable: true, get: function () { return provider_1.DryUXProvider; } });
28
28
  __exportStar(require("./helpers/utilities"), exports);
29
+ __exportStar(require("./helpers/logger"), exports);
29
30
  var classSet_1 = require("./helpers/classSet");
30
31
  Object.defineProperty(exports, "classSet", { enumerable: true, get: function () { return classSet_1.classSet; } });
31
32
  var flat_1 = require("./helpers/flat");
@@ -16,7 +16,7 @@ export declare class UIUtilProvider extends React.PureComponent<{}, IUIUtilProvi
16
16
  create: any;
17
17
  show: (options: ModalOptions) => IModalCreate;
18
18
  getCurrent: () => IModalCreate;
19
- showAlert: (content: ModalOptions["content"]) => IModalCreate;
19
+ showAlert: (content: ModalOptions["content"], onClose?: ModalOptions["onClose"]) => IModalCreate;
20
20
  showConfirm: (options: ModalOptions, onYes: () => void, onNo?: () => void) => IModalCreate;
21
21
  showActions: (options: ModalOptions, actions: IUtilModalAction[]) => IModalCreate;
22
22
  instances: {
@@ -43,11 +43,12 @@ class UIUtilProvider extends React.PureComponent {
43
43
  const { modal: { instances }, } = this.state;
44
44
  const id = Object.keys(instances).find(id => instances[id].shown);
45
45
  return this.getCurrentModal(id);
46
- }, showAlert: (content) => this.createModal(null, {
46
+ }, showAlert: (content, onClose) => this.createModal(null, {
47
47
  content: typeof content == "string" ? React.createElement("h4", { className: "text-center mtop" }, content) : content,
48
48
  destroyOnClose: true,
49
49
  closeBtn: true,
50
50
  width: 400,
51
+ onClose,
51
52
  }), showConfirm: (options, onYes, onNo) => this.createModal("confirm", Object.assign(Object.assign({}, options), { footerContent: (React.createElement(React.Fragment, null,
52
53
  options.footerContent,
53
54
  React.createElement(react_bootstrap_1.Button, { bsClass: "btn btn-success mright", onClick: onYes }, "Yes"),
@@ -101,7 +101,7 @@ export interface IUIUtilModal {
101
101
  * Shows an alert style modal.
102
102
  * @param content The content to display in the modal.
103
103
  */
104
- showAlert: (content: ModalOptions["content"]) => IModalCreate;
104
+ showAlert: (content: ModalOptions["content"], onClose?: ModalOptions["onClose"]) => IModalCreate;
105
105
  /**
106
106
  * Shows a confirm style modal.
107
107
  * @param options The options for the modal.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dry-ux",
3
- "version": "1.41.0",
3
+ "version": "1.43.0",
4
4
  "description": "",
5
5
  "main": "dist/index",
6
6
  "scripts": {