@fctc/widget-logic 1.0.11 → 1.1.1
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.
- package/dist/action.js +4 -4
- package/dist/action.mjs +4 -4
- package/dist/common.d.mts +13 -0
- package/dist/common.d.ts +13 -0
- package/dist/common.js +60 -0
- package/dist/common.mjs +33 -0
- package/dist/form.d.mts +7 -6
- package/dist/form.d.ts +7 -6
- package/dist/form.js +17 -12
- package/dist/form.mjs +17 -12
- package/dist/index.d.mts +2 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +78 -3175
- package/dist/index.mjs +68 -3179
- package/dist/table.d.mts +17 -3
- package/dist/table.d.ts +17 -3
- package/dist/table.js +13 -3148
- package/dist/table.mjs +16 -3164
- package/package.json +6 -1
package/dist/action.js
CHANGED
|
@@ -27,7 +27,7 @@ __export(action_exports, {
|
|
|
27
27
|
});
|
|
28
28
|
module.exports = __toCommonJS(action_exports);
|
|
29
29
|
|
|
30
|
-
// src/action/use-archieve-row.
|
|
30
|
+
// src/action/use-archieve-row.ts
|
|
31
31
|
var import_interface_logic = require("@fctc/interface-logic");
|
|
32
32
|
var useArchieveHandler = ({
|
|
33
33
|
data,
|
|
@@ -54,7 +54,7 @@ var useArchieveHandler = ({
|
|
|
54
54
|
return handleDuplicateRecord;
|
|
55
55
|
};
|
|
56
56
|
|
|
57
|
-
// src/action/use-duplicate-row.
|
|
57
|
+
// src/action/use-duplicate-row.ts
|
|
58
58
|
var import_interface_logic2 = require("@fctc/interface-logic");
|
|
59
59
|
var useDuplicateRowHandler = ({
|
|
60
60
|
data,
|
|
@@ -80,7 +80,7 @@ var useDuplicateRowHandler = ({
|
|
|
80
80
|
return handleDuplicateRecord;
|
|
81
81
|
};
|
|
82
82
|
|
|
83
|
-
// src/action/use-get-field-export.
|
|
83
|
+
// src/action/use-get-field-export.ts
|
|
84
84
|
var import_interface_logic3 = require("@fctc/interface-logic");
|
|
85
85
|
var useGetFieldExportHandler = ({
|
|
86
86
|
data,
|
|
@@ -113,7 +113,7 @@ var useGetFieldExportHandler = ({
|
|
|
113
113
|
return handleGetFieldExport;
|
|
114
114
|
};
|
|
115
115
|
|
|
116
|
-
// src/action/use-export-excel.
|
|
116
|
+
// src/action/use-export-excel.ts
|
|
117
117
|
var import_interface_logic4 = require("@fctc/interface-logic");
|
|
118
118
|
var useExportExcelHandler = ({
|
|
119
119
|
data,
|
package/dist/action.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// src/action/use-archieve-row.
|
|
1
|
+
// src/action/use-archieve-row.ts
|
|
2
2
|
import { useButton } from "@fctc/interface-logic";
|
|
3
3
|
var useArchieveHandler = ({
|
|
4
4
|
data,
|
|
@@ -25,7 +25,7 @@ var useArchieveHandler = ({
|
|
|
25
25
|
return handleDuplicateRecord;
|
|
26
26
|
};
|
|
27
27
|
|
|
28
|
-
// src/action/use-duplicate-row.
|
|
28
|
+
// src/action/use-duplicate-row.ts
|
|
29
29
|
import { useDuplicateRecord } from "@fctc/interface-logic";
|
|
30
30
|
var useDuplicateRowHandler = ({
|
|
31
31
|
data,
|
|
@@ -51,7 +51,7 @@ var useDuplicateRowHandler = ({
|
|
|
51
51
|
return handleDuplicateRecord;
|
|
52
52
|
};
|
|
53
53
|
|
|
54
|
-
// src/action/use-get-field-export.
|
|
54
|
+
// src/action/use-get-field-export.ts
|
|
55
55
|
import { useGetFieldExport } from "@fctc/interface-logic";
|
|
56
56
|
var useGetFieldExportHandler = ({
|
|
57
57
|
data,
|
|
@@ -84,7 +84,7 @@ var useGetFieldExportHandler = ({
|
|
|
84
84
|
return handleGetFieldExport;
|
|
85
85
|
};
|
|
86
86
|
|
|
87
|
-
// src/action/use-export-excel.
|
|
87
|
+
// src/action/use-export-excel.ts
|
|
88
88
|
import { evalJSONDomain, useExportExcel } from "@fctc/interface-logic";
|
|
89
89
|
var useExportExcelHandler = ({
|
|
90
90
|
data,
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { RefObject } from 'react';
|
|
2
|
+
|
|
3
|
+
declare const DEFAULT_EVENTS: readonly ["mousedown", "touchstart"];
|
|
4
|
+
type EventType = (typeof DEFAULT_EVENTS)[number];
|
|
5
|
+
interface UseClickOutsideOptions {
|
|
6
|
+
handler: (event?: Event) => void;
|
|
7
|
+
events?: readonly EventType[];
|
|
8
|
+
nodes?: (HTMLDivElement | null)[];
|
|
9
|
+
refs?: any;
|
|
10
|
+
}
|
|
11
|
+
declare const useClickOutside: ({ handler, events, nodes, refs, }: UseClickOutsideOptions) => RefObject<HTMLDivElement | null>;
|
|
12
|
+
|
|
13
|
+
export { useClickOutside };
|
package/dist/common.d.ts
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { RefObject } from 'react';
|
|
2
|
+
|
|
3
|
+
declare const DEFAULT_EVENTS: readonly ["mousedown", "touchstart"];
|
|
4
|
+
type EventType = (typeof DEFAULT_EVENTS)[number];
|
|
5
|
+
interface UseClickOutsideOptions {
|
|
6
|
+
handler: (event?: Event) => void;
|
|
7
|
+
events?: readonly EventType[];
|
|
8
|
+
nodes?: (HTMLDivElement | null)[];
|
|
9
|
+
refs?: any;
|
|
10
|
+
}
|
|
11
|
+
declare const useClickOutside: ({ handler, events, nodes, refs, }: UseClickOutsideOptions) => RefObject<HTMLDivElement | null>;
|
|
12
|
+
|
|
13
|
+
export { useClickOutside };
|
package/dist/common.js
ADDED
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
|
|
20
|
+
// src/common.ts
|
|
21
|
+
var common_exports = {};
|
|
22
|
+
__export(common_exports, {
|
|
23
|
+
useClickOutside: () => useClickOutside
|
|
24
|
+
});
|
|
25
|
+
module.exports = __toCommonJS(common_exports);
|
|
26
|
+
|
|
27
|
+
// src/common/use-click-outside.ts
|
|
28
|
+
var import_react = require("react");
|
|
29
|
+
var DEFAULT_EVENTS = ["mousedown", "touchstart"];
|
|
30
|
+
var useClickOutside = ({
|
|
31
|
+
handler,
|
|
32
|
+
events = DEFAULT_EVENTS,
|
|
33
|
+
nodes = [],
|
|
34
|
+
refs
|
|
35
|
+
}) => {
|
|
36
|
+
const ref = (0, import_react.useRef)(null);
|
|
37
|
+
(0, import_react.useEffect)(() => {
|
|
38
|
+
const listener = (event) => {
|
|
39
|
+
const { target } = event;
|
|
40
|
+
if (refs && refs?.length > 0 && refs?.some((r) => r.current?.contains(target))) {
|
|
41
|
+
return;
|
|
42
|
+
}
|
|
43
|
+
if (!(target instanceof HTMLElement)) return;
|
|
44
|
+
const shouldIgnore = target.hasAttribute("data-ignore-outside-clicks") || !document.body.contains(target) && target.tagName !== "HTML";
|
|
45
|
+
const shouldTrigger = nodes.length > 0 ? nodes.every((node) => node && !event.composedPath().includes(node)) : ref.current && !ref.current.contains(target);
|
|
46
|
+
if (shouldTrigger && !shouldIgnore) {
|
|
47
|
+
handler(event);
|
|
48
|
+
}
|
|
49
|
+
};
|
|
50
|
+
events.forEach((event) => document.addEventListener(event, listener));
|
|
51
|
+
return () => {
|
|
52
|
+
events.forEach((event) => document.removeEventListener(event, listener));
|
|
53
|
+
};
|
|
54
|
+
}, [handler, nodes, events]);
|
|
55
|
+
return ref;
|
|
56
|
+
};
|
|
57
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
58
|
+
0 && (module.exports = {
|
|
59
|
+
useClickOutside
|
|
60
|
+
});
|
package/dist/common.mjs
ADDED
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
// src/common/use-click-outside.ts
|
|
2
|
+
import { useEffect, useRef } from "react";
|
|
3
|
+
var DEFAULT_EVENTS = ["mousedown", "touchstart"];
|
|
4
|
+
var useClickOutside = ({
|
|
5
|
+
handler,
|
|
6
|
+
events = DEFAULT_EVENTS,
|
|
7
|
+
nodes = [],
|
|
8
|
+
refs
|
|
9
|
+
}) => {
|
|
10
|
+
const ref = useRef(null);
|
|
11
|
+
useEffect(() => {
|
|
12
|
+
const listener = (event) => {
|
|
13
|
+
const { target } = event;
|
|
14
|
+
if (refs && refs?.length > 0 && refs?.some((r) => r.current?.contains(target))) {
|
|
15
|
+
return;
|
|
16
|
+
}
|
|
17
|
+
if (!(target instanceof HTMLElement)) return;
|
|
18
|
+
const shouldIgnore = target.hasAttribute("data-ignore-outside-clicks") || !document.body.contains(target) && target.tagName !== "HTML";
|
|
19
|
+
const shouldTrigger = nodes.length > 0 ? nodes.every((node) => node && !event.composedPath().includes(node)) : ref.current && !ref.current.contains(target);
|
|
20
|
+
if (shouldTrigger && !shouldIgnore) {
|
|
21
|
+
handler(event);
|
|
22
|
+
}
|
|
23
|
+
};
|
|
24
|
+
events.forEach((event) => document.addEventListener(event, listener));
|
|
25
|
+
return () => {
|
|
26
|
+
events.forEach((event) => document.removeEventListener(event, listener));
|
|
27
|
+
};
|
|
28
|
+
}, [handler, nodes, events]);
|
|
29
|
+
return ref;
|
|
30
|
+
};
|
|
31
|
+
export {
|
|
32
|
+
useClickOutside
|
|
33
|
+
};
|
package/dist/form.d.mts
CHANGED
|
@@ -3,22 +3,23 @@ interface UseSaveFormProps$1 {
|
|
|
3
3
|
context: any;
|
|
4
4
|
model: string;
|
|
5
5
|
specification: any;
|
|
6
|
-
|
|
7
|
-
nameField
|
|
8
|
-
object
|
|
6
|
+
ids: any;
|
|
7
|
+
nameField?: any;
|
|
8
|
+
object?: any;
|
|
9
9
|
};
|
|
10
10
|
onSuccess?: (res: any) => void;
|
|
11
11
|
onError?: (err: any) => void;
|
|
12
12
|
onSettled?: (err: any) => void;
|
|
13
13
|
}
|
|
14
|
-
declare const UseOnChangeFormHandler: ({ data, onSuccess, onError, onSettled, }: UseSaveFormProps$1) =>
|
|
14
|
+
declare const UseOnChangeFormHandler: ({ data, onSuccess, onError, onSettled, }: UseSaveFormProps$1) => Promise<any>;
|
|
15
15
|
|
|
16
16
|
interface UseSaveFormProps {
|
|
17
17
|
data: {
|
|
18
18
|
context: any;
|
|
19
19
|
model: string;
|
|
20
|
-
specification
|
|
21
|
-
|
|
20
|
+
specification?: any;
|
|
21
|
+
ids: any;
|
|
22
|
+
records: any;
|
|
22
23
|
};
|
|
23
24
|
onSuccess?: (res: any) => void;
|
|
24
25
|
onError?: (err: any) => void;
|
package/dist/form.d.ts
CHANGED
|
@@ -3,22 +3,23 @@ interface UseSaveFormProps$1 {
|
|
|
3
3
|
context: any;
|
|
4
4
|
model: string;
|
|
5
5
|
specification: any;
|
|
6
|
-
|
|
7
|
-
nameField
|
|
8
|
-
object
|
|
6
|
+
ids: any;
|
|
7
|
+
nameField?: any;
|
|
8
|
+
object?: any;
|
|
9
9
|
};
|
|
10
10
|
onSuccess?: (res: any) => void;
|
|
11
11
|
onError?: (err: any) => void;
|
|
12
12
|
onSettled?: (err: any) => void;
|
|
13
13
|
}
|
|
14
|
-
declare const UseOnChangeFormHandler: ({ data, onSuccess, onError, onSettled, }: UseSaveFormProps$1) =>
|
|
14
|
+
declare const UseOnChangeFormHandler: ({ data, onSuccess, onError, onSettled, }: UseSaveFormProps$1) => Promise<any>;
|
|
15
15
|
|
|
16
16
|
interface UseSaveFormProps {
|
|
17
17
|
data: {
|
|
18
18
|
context: any;
|
|
19
19
|
model: string;
|
|
20
|
-
specification
|
|
21
|
-
|
|
20
|
+
specification?: any;
|
|
21
|
+
ids: any;
|
|
22
|
+
records: any;
|
|
22
23
|
};
|
|
23
24
|
onSuccess?: (res: any) => void;
|
|
24
25
|
onError?: (err: any) => void;
|
package/dist/form.js
CHANGED
|
@@ -26,7 +26,7 @@ __export(form_exports, {
|
|
|
26
26
|
});
|
|
27
27
|
module.exports = __toCommonJS(form_exports);
|
|
28
28
|
|
|
29
|
-
// src/widget/form/use-on-change-form.
|
|
29
|
+
// src/widget/form/use-on-change-form.ts
|
|
30
30
|
var import_interface_logic = require("@fctc/interface-logic");
|
|
31
31
|
var UseOnChangeFormHandler = ({
|
|
32
32
|
data,
|
|
@@ -35,27 +35,32 @@ var UseOnChangeFormHandler = ({
|
|
|
35
35
|
onSettled
|
|
36
36
|
}) => {
|
|
37
37
|
const fetchOnchange = (0, import_interface_logic.useOnChangeForm)();
|
|
38
|
-
|
|
38
|
+
return new Promise((resolve, reject) => {
|
|
39
39
|
fetchOnchange.mutate(
|
|
40
40
|
{
|
|
41
|
-
ids: data.
|
|
41
|
+
ids: data.ids ? data.ids : [],
|
|
42
42
|
model: data.model,
|
|
43
43
|
specification: data.specification,
|
|
44
44
|
context: data.context,
|
|
45
45
|
object: data.object,
|
|
46
|
-
fieldChange:
|
|
46
|
+
fieldChange: data.nameField
|
|
47
47
|
},
|
|
48
48
|
{
|
|
49
|
-
onSuccess
|
|
50
|
-
|
|
49
|
+
onSuccess: (res) => {
|
|
50
|
+
onSuccess?.(res);
|
|
51
|
+
resolve(res);
|
|
52
|
+
},
|
|
53
|
+
onError: (err) => {
|
|
54
|
+
onError?.(err);
|
|
55
|
+
reject(err);
|
|
56
|
+
},
|
|
51
57
|
onSettled
|
|
52
58
|
}
|
|
53
59
|
);
|
|
54
|
-
};
|
|
55
|
-
return handleOnChangeForm;
|
|
60
|
+
});
|
|
56
61
|
};
|
|
57
62
|
|
|
58
|
-
// src/widget/form/use-save-form.
|
|
63
|
+
// src/widget/form/use-save-form.ts
|
|
59
64
|
var import_interface_logic2 = require("@fctc/interface-logic");
|
|
60
65
|
var useSaveFormHandler = ({
|
|
61
66
|
data,
|
|
@@ -67,9 +72,9 @@ var useSaveFormHandler = ({
|
|
|
67
72
|
const handleSaveForm = () => {
|
|
68
73
|
fetchSave.mutate(
|
|
69
74
|
{
|
|
70
|
-
ids: data.
|
|
75
|
+
ids: data.ids ? [data.ids] : [],
|
|
71
76
|
model: data.model,
|
|
72
|
-
data,
|
|
77
|
+
data: data.records,
|
|
73
78
|
specification: data.specification,
|
|
74
79
|
context: data.context
|
|
75
80
|
},
|
|
@@ -83,7 +88,7 @@ var useSaveFormHandler = ({
|
|
|
83
88
|
return handleSaveForm;
|
|
84
89
|
};
|
|
85
90
|
|
|
86
|
-
// src/widget/form/use-remove-row.
|
|
91
|
+
// src/widget/form/use-remove-row.ts
|
|
87
92
|
var import_interface_logic3 = require("@fctc/interface-logic");
|
|
88
93
|
var useRemoveRowHandler = ({
|
|
89
94
|
data,
|
package/dist/form.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// src/widget/form/use-on-change-form.
|
|
1
|
+
// src/widget/form/use-on-change-form.ts
|
|
2
2
|
import { useOnChangeForm } from "@fctc/interface-logic";
|
|
3
3
|
var UseOnChangeFormHandler = ({
|
|
4
4
|
data,
|
|
@@ -7,27 +7,32 @@ var UseOnChangeFormHandler = ({
|
|
|
7
7
|
onSettled
|
|
8
8
|
}) => {
|
|
9
9
|
const fetchOnchange = useOnChangeForm();
|
|
10
|
-
|
|
10
|
+
return new Promise((resolve, reject) => {
|
|
11
11
|
fetchOnchange.mutate(
|
|
12
12
|
{
|
|
13
|
-
ids: data.
|
|
13
|
+
ids: data.ids ? data.ids : [],
|
|
14
14
|
model: data.model,
|
|
15
15
|
specification: data.specification,
|
|
16
16
|
context: data.context,
|
|
17
17
|
object: data.object,
|
|
18
|
-
fieldChange:
|
|
18
|
+
fieldChange: data.nameField
|
|
19
19
|
},
|
|
20
20
|
{
|
|
21
|
-
onSuccess
|
|
22
|
-
|
|
21
|
+
onSuccess: (res) => {
|
|
22
|
+
onSuccess?.(res);
|
|
23
|
+
resolve(res);
|
|
24
|
+
},
|
|
25
|
+
onError: (err) => {
|
|
26
|
+
onError?.(err);
|
|
27
|
+
reject(err);
|
|
28
|
+
},
|
|
23
29
|
onSettled
|
|
24
30
|
}
|
|
25
31
|
);
|
|
26
|
-
};
|
|
27
|
-
return handleOnChangeForm;
|
|
32
|
+
});
|
|
28
33
|
};
|
|
29
34
|
|
|
30
|
-
// src/widget/form/use-save-form.
|
|
35
|
+
// src/widget/form/use-save-form.ts
|
|
31
36
|
import { useSave } from "@fctc/interface-logic";
|
|
32
37
|
var useSaveFormHandler = ({
|
|
33
38
|
data,
|
|
@@ -39,9 +44,9 @@ var useSaveFormHandler = ({
|
|
|
39
44
|
const handleSaveForm = () => {
|
|
40
45
|
fetchSave.mutate(
|
|
41
46
|
{
|
|
42
|
-
ids: data.
|
|
47
|
+
ids: data.ids ? [data.ids] : [],
|
|
43
48
|
model: data.model,
|
|
44
|
-
data,
|
|
49
|
+
data: data.records,
|
|
45
50
|
specification: data.specification,
|
|
46
51
|
context: data.context
|
|
47
52
|
},
|
|
@@ -55,7 +60,7 @@ var useSaveFormHandler = ({
|
|
|
55
60
|
return handleSaveForm;
|
|
56
61
|
};
|
|
57
62
|
|
|
58
|
-
// src/widget/form/use-remove-row.
|
|
63
|
+
// src/widget/form/use-remove-row.ts
|
|
59
64
|
import { useRemoveRow } from "@fctc/interface-logic";
|
|
60
65
|
var useRemoveRowHandler = ({
|
|
61
66
|
data,
|
package/dist/index.d.mts
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
1
|
export { useArchieveHandler, useDuplicateRowHandler, useExportExcelHandler, useGetFieldExportHandler } from './action.mjs';
|
|
2
2
|
export { UseOnChangeFormHandler, useRemoveRowHandler, useSaveFormHandler } from './form.mjs';
|
|
3
3
|
export { useTableHandler } from './table.mjs';
|
|
4
|
+
export { useClickOutside } from './common.mjs';
|
|
5
|
+
import 'react';
|
package/dist/index.d.ts
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
1
|
export { useArchieveHandler, useDuplicateRowHandler, useExportExcelHandler, useGetFieldExportHandler } from './action.js';
|
|
2
2
|
export { UseOnChangeFormHandler, useRemoveRowHandler, useSaveFormHandler } from './form.js';
|
|
3
3
|
export { useTableHandler } from './table.js';
|
|
4
|
+
export { useClickOutside } from './common.js';
|
|
5
|
+
import 'react';
|