dn-react-router-toolkit 0.6.4 → 0.6.6
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/client/index.d.mts +1 -1
- package/dist/client/index.d.ts +1 -1
- package/dist/client/index.js +40 -48
- package/dist/client/index.mjs +42 -48
- package/dist/client/store_text_editor.d.mts +3 -3
- package/dist/client/store_text_editor.d.ts +3 -3
- package/dist/client/store_text_editor.js +40 -48
- package/dist/client/store_text_editor.mjs +42 -48
- package/dist/crud/crud_form.js +83 -75
- package/dist/crud/crud_form.mjs +85 -75
- package/dist/crud/crud_page.js +83 -75
- package/dist/crud/crud_page.mjs +85 -75
- package/dist/crud/index.js +83 -75
- package/dist/crud/index.mjs +85 -75
- package/package.json +93 -93
package/dist/client/index.d.mts
CHANGED
|
@@ -2,7 +2,7 @@ export { env } from './env.mjs';
|
|
|
2
2
|
export { EnvLoader } from './env_loader.mjs';
|
|
3
3
|
export { FileInput } from './file_input.mjs';
|
|
4
4
|
export { useUserAgent } from './use_user_agent.mjs';
|
|
5
|
-
export {
|
|
5
|
+
export { StoreTextEditor } from './store_text_editor.mjs';
|
|
6
6
|
import 'react';
|
|
7
7
|
import 'dn-react-text-editor';
|
|
8
8
|
import 'react-store-input';
|
package/dist/client/index.d.ts
CHANGED
|
@@ -2,7 +2,7 @@ export { env } from './env.js';
|
|
|
2
2
|
export { EnvLoader } from './env_loader.js';
|
|
3
3
|
export { FileInput } from './file_input.js';
|
|
4
4
|
export { useUserAgent } from './use_user_agent.js';
|
|
5
|
-
export {
|
|
5
|
+
export { StoreTextEditor } from './store_text_editor.js';
|
|
6
6
|
import 'react';
|
|
7
7
|
import 'dn-react-text-editor';
|
|
8
8
|
import 'react-store-input';
|
package/dist/client/index.js
CHANGED
|
@@ -32,7 +32,7 @@ var client_exports = {};
|
|
|
32
32
|
__export(client_exports, {
|
|
33
33
|
EnvLoader: () => EnvLoader,
|
|
34
34
|
FileInput: () => FileInput,
|
|
35
|
-
|
|
35
|
+
StoreTextEditor: () => StoreTextEditor,
|
|
36
36
|
env: () => env,
|
|
37
37
|
useUserAgent: () => useUserAgent
|
|
38
38
|
});
|
|
@@ -122,63 +122,55 @@ function useUserAgent() {
|
|
|
122
122
|
var import_dn_react_text_editor = require("dn-react-text-editor");
|
|
123
123
|
var import_react_store_input = require("react-store-input");
|
|
124
124
|
var import_react4 = __toESM(require("react"));
|
|
125
|
-
function
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
}) {
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
{
|
|
135
|
-
|
|
136
|
-
onSubscribe: (state, element) => {
|
|
137
|
-
const result = (props.getter ? props.getter(state) : name ? state[name] : "") || "";
|
|
138
|
-
if (element.value !== result) {
|
|
139
|
-
element.value = result;
|
|
140
|
-
}
|
|
141
|
-
},
|
|
142
|
-
onDispatch: (state, element) => {
|
|
143
|
-
if (props.setter) {
|
|
144
|
-
props.setter(state, element.value);
|
|
145
|
-
return;
|
|
146
|
-
}
|
|
147
|
-
if (name) {
|
|
148
|
-
state[name] = element.value;
|
|
149
|
-
}
|
|
150
|
-
}
|
|
125
|
+
function StoreTextEditor({
|
|
126
|
+
store,
|
|
127
|
+
name,
|
|
128
|
+
defaultValue,
|
|
129
|
+
...props
|
|
130
|
+
}) {
|
|
131
|
+
const { dispatch } = (0, import_react_store_input.useStoreController)(store, {
|
|
132
|
+
onSubscribe: (state, element) => {
|
|
133
|
+
const result = (props.getter ? props.getter(state) : name ? state[name] : "") || "";
|
|
134
|
+
if (element.value !== result) {
|
|
135
|
+
element.value = result;
|
|
151
136
|
}
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
if (props.
|
|
155
|
-
|
|
137
|
+
},
|
|
138
|
+
onDispatch: (state, element) => {
|
|
139
|
+
if (props.setter) {
|
|
140
|
+
props.setter(state, element.value);
|
|
141
|
+
return;
|
|
156
142
|
}
|
|
157
143
|
if (name) {
|
|
158
|
-
|
|
144
|
+
state[name] = element.value;
|
|
159
145
|
}
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
146
|
+
}
|
|
147
|
+
});
|
|
148
|
+
const getDefaultValue = () => {
|
|
149
|
+
if (props.getter) {
|
|
150
|
+
return props.getter(store.state);
|
|
151
|
+
}
|
|
152
|
+
if (name) {
|
|
153
|
+
return store.state[name];
|
|
154
|
+
}
|
|
155
|
+
return void 0;
|
|
156
|
+
};
|
|
157
|
+
return /* @__PURE__ */ import_react4.default.createElement(
|
|
158
|
+
import_dn_react_text_editor.TextEditor,
|
|
159
|
+
{
|
|
160
|
+
...props,
|
|
161
|
+
defaultValue: defaultValue ?? getDefaultValue(),
|
|
162
|
+
onChange: (e) => {
|
|
163
|
+
dispatch();
|
|
164
|
+
props.onChange?.(e);
|
|
172
165
|
}
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
return StoreComponent;
|
|
166
|
+
}
|
|
167
|
+
);
|
|
176
168
|
}
|
|
177
169
|
// Annotate the CommonJS export names for ESM import in node:
|
|
178
170
|
0 && (module.exports = {
|
|
179
171
|
EnvLoader,
|
|
180
172
|
FileInput,
|
|
181
|
-
|
|
173
|
+
StoreTextEditor,
|
|
182
174
|
env,
|
|
183
175
|
useUserAgent
|
|
184
176
|
});
|
package/dist/client/index.mjs
CHANGED
|
@@ -79,65 +79,59 @@ function useUserAgent() {
|
|
|
79
79
|
}
|
|
80
80
|
|
|
81
81
|
// src/client/store_text_editor.tsx
|
|
82
|
-
import
|
|
82
|
+
import {
|
|
83
|
+
TextEditor
|
|
84
|
+
} from "dn-react-text-editor";
|
|
83
85
|
import { useStoreController } from "react-store-input";
|
|
84
86
|
import React3 from "react";
|
|
85
|
-
function
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
{
|
|
95
|
-
|
|
96
|
-
onSubscribe: (state, element) => {
|
|
97
|
-
const result = (props.getter ? props.getter(state) : name ? state[name] : "") || "";
|
|
98
|
-
if (element.value !== result) {
|
|
99
|
-
element.value = result;
|
|
100
|
-
}
|
|
101
|
-
},
|
|
102
|
-
onDispatch: (state, element) => {
|
|
103
|
-
if (props.setter) {
|
|
104
|
-
props.setter(state, element.value);
|
|
105
|
-
return;
|
|
106
|
-
}
|
|
107
|
-
if (name) {
|
|
108
|
-
state[name] = element.value;
|
|
109
|
-
}
|
|
110
|
-
}
|
|
87
|
+
function StoreTextEditor({
|
|
88
|
+
store,
|
|
89
|
+
name,
|
|
90
|
+
defaultValue,
|
|
91
|
+
...props
|
|
92
|
+
}) {
|
|
93
|
+
const { dispatch } = useStoreController(store, {
|
|
94
|
+
onSubscribe: (state, element) => {
|
|
95
|
+
const result = (props.getter ? props.getter(state) : name ? state[name] : "") || "";
|
|
96
|
+
if (element.value !== result) {
|
|
97
|
+
element.value = result;
|
|
111
98
|
}
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
if (props.
|
|
115
|
-
|
|
99
|
+
},
|
|
100
|
+
onDispatch: (state, element) => {
|
|
101
|
+
if (props.setter) {
|
|
102
|
+
props.setter(state, element.value);
|
|
103
|
+
return;
|
|
116
104
|
}
|
|
117
105
|
if (name) {
|
|
118
|
-
|
|
106
|
+
state[name] = element.value;
|
|
119
107
|
}
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
108
|
+
}
|
|
109
|
+
});
|
|
110
|
+
const getDefaultValue = () => {
|
|
111
|
+
if (props.getter) {
|
|
112
|
+
return props.getter(store.state);
|
|
113
|
+
}
|
|
114
|
+
if (name) {
|
|
115
|
+
return store.state[name];
|
|
116
|
+
}
|
|
117
|
+
return void 0;
|
|
118
|
+
};
|
|
119
|
+
return /* @__PURE__ */ React3.createElement(
|
|
120
|
+
TextEditor,
|
|
121
|
+
{
|
|
122
|
+
...props,
|
|
123
|
+
defaultValue: defaultValue ?? getDefaultValue(),
|
|
124
|
+
onChange: (e) => {
|
|
125
|
+
dispatch();
|
|
126
|
+
props.onChange?.(e);
|
|
132
127
|
}
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
return StoreComponent;
|
|
128
|
+
}
|
|
129
|
+
);
|
|
136
130
|
}
|
|
137
131
|
export {
|
|
138
132
|
EnvLoader,
|
|
139
133
|
FileInput,
|
|
140
|
-
|
|
134
|
+
StoreTextEditor,
|
|
141
135
|
env,
|
|
142
136
|
useUserAgent
|
|
143
137
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { TextEditorProps } from 'dn-react-text-editor';
|
|
2
2
|
import { Store } from 'react-store-input';
|
|
3
|
-
import React__default
|
|
3
|
+
import React__default from 'react';
|
|
4
4
|
|
|
5
5
|
type Props<TState> = {
|
|
6
6
|
store: Store<TState>;
|
|
@@ -8,6 +8,6 @@ type Props<TState> = {
|
|
|
8
8
|
getter?: (state: TState) => string;
|
|
9
9
|
setter?: (state: TState, value: string) => void;
|
|
10
10
|
} & TextEditorProps;
|
|
11
|
-
declare function
|
|
11
|
+
declare function StoreTextEditor<TState>({ store, name, defaultValue, ...props }: Props<TState>): React__default.JSX.Element;
|
|
12
12
|
|
|
13
|
-
export {
|
|
13
|
+
export { StoreTextEditor };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { TextEditorProps } from 'dn-react-text-editor';
|
|
2
2
|
import { Store } from 'react-store-input';
|
|
3
|
-
import React__default
|
|
3
|
+
import React__default from 'react';
|
|
4
4
|
|
|
5
5
|
type Props<TState> = {
|
|
6
6
|
store: Store<TState>;
|
|
@@ -8,6 +8,6 @@ type Props<TState> = {
|
|
|
8
8
|
getter?: (state: TState) => string;
|
|
9
9
|
setter?: (state: TState, value: string) => void;
|
|
10
10
|
} & TextEditorProps;
|
|
11
|
-
declare function
|
|
11
|
+
declare function StoreTextEditor<TState>({ store, name, defaultValue, ...props }: Props<TState>): React__default.JSX.Element;
|
|
12
12
|
|
|
13
|
-
export {
|
|
13
|
+
export { StoreTextEditor };
|
|
@@ -30,65 +30,57 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
|
|
|
30
30
|
// src/client/store_text_editor.tsx
|
|
31
31
|
var store_text_editor_exports = {};
|
|
32
32
|
__export(store_text_editor_exports, {
|
|
33
|
-
|
|
33
|
+
StoreTextEditor: () => StoreTextEditor
|
|
34
34
|
});
|
|
35
35
|
module.exports = __toCommonJS(store_text_editor_exports);
|
|
36
36
|
var import_dn_react_text_editor = require("dn-react-text-editor");
|
|
37
37
|
var import_react_store_input = require("react-store-input");
|
|
38
38
|
var import_react = __toESM(require("react"));
|
|
39
|
-
function
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
}) {
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
{
|
|
49
|
-
|
|
50
|
-
onSubscribe: (state, element) => {
|
|
51
|
-
const result = (props.getter ? props.getter(state) : name ? state[name] : "") || "";
|
|
52
|
-
if (element.value !== result) {
|
|
53
|
-
element.value = result;
|
|
54
|
-
}
|
|
55
|
-
},
|
|
56
|
-
onDispatch: (state, element) => {
|
|
57
|
-
if (props.setter) {
|
|
58
|
-
props.setter(state, element.value);
|
|
59
|
-
return;
|
|
60
|
-
}
|
|
61
|
-
if (name) {
|
|
62
|
-
state[name] = element.value;
|
|
63
|
-
}
|
|
64
|
-
}
|
|
39
|
+
function StoreTextEditor({
|
|
40
|
+
store,
|
|
41
|
+
name,
|
|
42
|
+
defaultValue,
|
|
43
|
+
...props
|
|
44
|
+
}) {
|
|
45
|
+
const { dispatch } = (0, import_react_store_input.useStoreController)(store, {
|
|
46
|
+
onSubscribe: (state, element) => {
|
|
47
|
+
const result = (props.getter ? props.getter(state) : name ? state[name] : "") || "";
|
|
48
|
+
if (element.value !== result) {
|
|
49
|
+
element.value = result;
|
|
65
50
|
}
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
if (props.
|
|
69
|
-
|
|
51
|
+
},
|
|
52
|
+
onDispatch: (state, element) => {
|
|
53
|
+
if (props.setter) {
|
|
54
|
+
props.setter(state, element.value);
|
|
55
|
+
return;
|
|
70
56
|
}
|
|
71
57
|
if (name) {
|
|
72
|
-
|
|
58
|
+
state[name] = element.value;
|
|
73
59
|
}
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
60
|
+
}
|
|
61
|
+
});
|
|
62
|
+
const getDefaultValue = () => {
|
|
63
|
+
if (props.getter) {
|
|
64
|
+
return props.getter(store.state);
|
|
65
|
+
}
|
|
66
|
+
if (name) {
|
|
67
|
+
return store.state[name];
|
|
68
|
+
}
|
|
69
|
+
return void 0;
|
|
70
|
+
};
|
|
71
|
+
return /* @__PURE__ */ import_react.default.createElement(
|
|
72
|
+
import_dn_react_text_editor.TextEditor,
|
|
73
|
+
{
|
|
74
|
+
...props,
|
|
75
|
+
defaultValue: defaultValue ?? getDefaultValue(),
|
|
76
|
+
onChange: (e) => {
|
|
77
|
+
dispatch();
|
|
78
|
+
props.onChange?.(e);
|
|
86
79
|
}
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
return StoreComponent;
|
|
80
|
+
}
|
|
81
|
+
);
|
|
90
82
|
}
|
|
91
83
|
// Annotate the CommonJS export names for ESM import in node:
|
|
92
84
|
0 && (module.exports = {
|
|
93
|
-
|
|
85
|
+
StoreTextEditor
|
|
94
86
|
});
|
|
@@ -1,59 +1,53 @@
|
|
|
1
1
|
// src/client/store_text_editor.tsx
|
|
2
|
-
import
|
|
2
|
+
import {
|
|
3
|
+
TextEditor
|
|
4
|
+
} from "dn-react-text-editor";
|
|
3
5
|
import { useStoreController } from "react-store-input";
|
|
4
6
|
import React from "react";
|
|
5
|
-
function
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
{
|
|
15
|
-
|
|
16
|
-
onSubscribe: (state, element) => {
|
|
17
|
-
const result = (props.getter ? props.getter(state) : name ? state[name] : "") || "";
|
|
18
|
-
if (element.value !== result) {
|
|
19
|
-
element.value = result;
|
|
20
|
-
}
|
|
21
|
-
},
|
|
22
|
-
onDispatch: (state, element) => {
|
|
23
|
-
if (props.setter) {
|
|
24
|
-
props.setter(state, element.value);
|
|
25
|
-
return;
|
|
26
|
-
}
|
|
27
|
-
if (name) {
|
|
28
|
-
state[name] = element.value;
|
|
29
|
-
}
|
|
30
|
-
}
|
|
7
|
+
function StoreTextEditor({
|
|
8
|
+
store,
|
|
9
|
+
name,
|
|
10
|
+
defaultValue,
|
|
11
|
+
...props
|
|
12
|
+
}) {
|
|
13
|
+
const { dispatch } = useStoreController(store, {
|
|
14
|
+
onSubscribe: (state, element) => {
|
|
15
|
+
const result = (props.getter ? props.getter(state) : name ? state[name] : "") || "";
|
|
16
|
+
if (element.value !== result) {
|
|
17
|
+
element.value = result;
|
|
31
18
|
}
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
if (props.
|
|
35
|
-
|
|
19
|
+
},
|
|
20
|
+
onDispatch: (state, element) => {
|
|
21
|
+
if (props.setter) {
|
|
22
|
+
props.setter(state, element.value);
|
|
23
|
+
return;
|
|
36
24
|
}
|
|
37
25
|
if (name) {
|
|
38
|
-
|
|
26
|
+
state[name] = element.value;
|
|
39
27
|
}
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
28
|
+
}
|
|
29
|
+
});
|
|
30
|
+
const getDefaultValue = () => {
|
|
31
|
+
if (props.getter) {
|
|
32
|
+
return props.getter(store.state);
|
|
33
|
+
}
|
|
34
|
+
if (name) {
|
|
35
|
+
return store.state[name];
|
|
36
|
+
}
|
|
37
|
+
return void 0;
|
|
38
|
+
};
|
|
39
|
+
return /* @__PURE__ */ React.createElement(
|
|
40
|
+
TextEditor,
|
|
41
|
+
{
|
|
42
|
+
...props,
|
|
43
|
+
defaultValue: defaultValue ?? getDefaultValue(),
|
|
44
|
+
onChange: (e) => {
|
|
45
|
+
dispatch();
|
|
46
|
+
props.onChange?.(e);
|
|
52
47
|
}
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
return StoreComponent;
|
|
48
|
+
}
|
|
49
|
+
);
|
|
56
50
|
}
|
|
57
51
|
export {
|
|
58
|
-
|
|
52
|
+
StoreTextEditor
|
|
59
53
|
};
|
package/dist/crud/crud_form.js
CHANGED
|
@@ -46,83 +46,14 @@ function useFormContext() {
|
|
|
46
46
|
|
|
47
47
|
// src/crud/crud_form.tsx
|
|
48
48
|
var import_react8 = __toESM(require("react"));
|
|
49
|
-
var import_dn_react_text_editor2 = require("dn-react-text-editor");
|
|
50
|
-
|
|
51
|
-
// src/client/env_loader.tsx
|
|
52
|
-
var import_react3 = __toESM(require("react"));
|
|
53
|
-
var import_react_router2 = require("react-router");
|
|
54
|
-
|
|
55
|
-
// src/client/file_input.tsx
|
|
56
|
-
var import_react4 = require("react");
|
|
57
|
-
var import_react5 = __toESM(require("react"));
|
|
58
|
-
|
|
59
|
-
// src/client/use_user_agent.tsx
|
|
60
|
-
var import_react_router3 = require("react-router");
|
|
61
|
-
|
|
62
|
-
// src/client/store_text_editor.tsx
|
|
63
|
-
var import_dn_react_text_editor = require("dn-react-text-editor");
|
|
64
|
-
var import_react_store_input2 = require("react-store-input");
|
|
65
|
-
var import_react6 = __toESM(require("react"));
|
|
66
|
-
function createStoreTextEditor(TextEditor2) {
|
|
67
|
-
function StoreComponent({
|
|
68
|
-
store,
|
|
69
|
-
name,
|
|
70
|
-
defaultValue,
|
|
71
|
-
...props
|
|
72
|
-
}) {
|
|
73
|
-
const { ref, dispatch } = (0, import_react_store_input2.useStoreController)(
|
|
74
|
-
store,
|
|
75
|
-
{
|
|
76
|
-
ref: props.ref,
|
|
77
|
-
onSubscribe: (state, element) => {
|
|
78
|
-
const result = (props.getter ? props.getter(state) : name ? state[name] : "") || "";
|
|
79
|
-
if (element.value !== result) {
|
|
80
|
-
element.value = result;
|
|
81
|
-
}
|
|
82
|
-
},
|
|
83
|
-
onDispatch: (state, element) => {
|
|
84
|
-
if (props.setter) {
|
|
85
|
-
props.setter(state, element.value);
|
|
86
|
-
return;
|
|
87
|
-
}
|
|
88
|
-
if (name) {
|
|
89
|
-
state[name] = element.value;
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
);
|
|
94
|
-
const getDefaultValue = () => {
|
|
95
|
-
if (props.getter) {
|
|
96
|
-
return props.getter(store.state);
|
|
97
|
-
}
|
|
98
|
-
if (name) {
|
|
99
|
-
return store.state[name];
|
|
100
|
-
}
|
|
101
|
-
return void 0;
|
|
102
|
-
};
|
|
103
|
-
return /* @__PURE__ */ import_react6.default.createElement(
|
|
104
|
-
TextEditor2,
|
|
105
|
-
{
|
|
106
|
-
...props,
|
|
107
|
-
ref,
|
|
108
|
-
defaultValue: defaultValue ?? getDefaultValue(),
|
|
109
|
-
onChange: (e) => {
|
|
110
|
-
dispatch();
|
|
111
|
-
props.onChange?.(e);
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
);
|
|
115
|
-
}
|
|
116
|
-
return StoreComponent;
|
|
117
|
-
}
|
|
118
49
|
|
|
119
50
|
// src/form/create_form_component.tsx
|
|
120
51
|
var import_utils = require("dn-react-toolkit/utils");
|
|
121
|
-
var
|
|
52
|
+
var import_react3 = __toESM(require("react"));
|
|
122
53
|
function createComponent(tag, options) {
|
|
123
54
|
return function FormComponent({ className, ...props }) {
|
|
124
55
|
const Tag = tag;
|
|
125
|
-
return /* @__PURE__ */
|
|
56
|
+
return /* @__PURE__ */ import_react3.default.createElement(Tag, { ...props, className: (0, import_utils.cn)(options.className, className) });
|
|
126
57
|
};
|
|
127
58
|
}
|
|
128
59
|
|
|
@@ -139,7 +70,68 @@ var FormLabel = createComponent("label", {
|
|
|
139
70
|
|
|
140
71
|
// src/crud/crud_form.tsx
|
|
141
72
|
var import_react_store_input3 = require("react-store-input");
|
|
142
|
-
|
|
73
|
+
|
|
74
|
+
// src/client/env_loader.tsx
|
|
75
|
+
var import_react4 = __toESM(require("react"));
|
|
76
|
+
var import_react_router2 = require("react-router");
|
|
77
|
+
|
|
78
|
+
// src/client/file_input.tsx
|
|
79
|
+
var import_react5 = require("react");
|
|
80
|
+
var import_react6 = __toESM(require("react"));
|
|
81
|
+
|
|
82
|
+
// src/client/use_user_agent.tsx
|
|
83
|
+
var import_react_router3 = require("react-router");
|
|
84
|
+
|
|
85
|
+
// src/client/store_text_editor.tsx
|
|
86
|
+
var import_dn_react_text_editor = require("dn-react-text-editor");
|
|
87
|
+
var import_react_store_input2 = require("react-store-input");
|
|
88
|
+
var import_react7 = __toESM(require("react"));
|
|
89
|
+
function StoreTextEditor({
|
|
90
|
+
store,
|
|
91
|
+
name,
|
|
92
|
+
defaultValue,
|
|
93
|
+
...props
|
|
94
|
+
}) {
|
|
95
|
+
const { dispatch } = (0, import_react_store_input2.useStoreController)(store, {
|
|
96
|
+
onSubscribe: (state, element) => {
|
|
97
|
+
const result = (props.getter ? props.getter(state) : name ? state[name] : "") || "";
|
|
98
|
+
if (element.value !== result) {
|
|
99
|
+
element.value = result;
|
|
100
|
+
}
|
|
101
|
+
},
|
|
102
|
+
onDispatch: (state, element) => {
|
|
103
|
+
if (props.setter) {
|
|
104
|
+
props.setter(state, element.value);
|
|
105
|
+
return;
|
|
106
|
+
}
|
|
107
|
+
if (name) {
|
|
108
|
+
state[name] = element.value;
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
});
|
|
112
|
+
const getDefaultValue = () => {
|
|
113
|
+
if (props.getter) {
|
|
114
|
+
return props.getter(store.state);
|
|
115
|
+
}
|
|
116
|
+
if (name) {
|
|
117
|
+
return store.state[name];
|
|
118
|
+
}
|
|
119
|
+
return void 0;
|
|
120
|
+
};
|
|
121
|
+
return /* @__PURE__ */ import_react7.default.createElement(
|
|
122
|
+
import_dn_react_text_editor.TextEditor,
|
|
123
|
+
{
|
|
124
|
+
...props,
|
|
125
|
+
defaultValue: defaultValue ?? getDefaultValue(),
|
|
126
|
+
onChange: (e) => {
|
|
127
|
+
dispatch();
|
|
128
|
+
props.onChange?.(e);
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
);
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
// src/crud/crud_form.tsx
|
|
143
135
|
function CrudForm({
|
|
144
136
|
AdminHeader
|
|
145
137
|
}) {
|
|
@@ -149,7 +141,17 @@ function CrudForm({
|
|
|
149
141
|
AdminHeader,
|
|
150
142
|
{
|
|
151
143
|
title: `${form.name} ${form.item ? "\uC218\uC815" : "\uCD94\uAC00"}`,
|
|
152
|
-
actions: /* @__PURE__ */ import_react8.default.createElement(
|
|
144
|
+
actions: /* @__PURE__ */ import_react8.default.createElement(import_react8.default.Fragment, null, form.item && /* @__PURE__ */ import_react8.default.createElement(
|
|
145
|
+
"button",
|
|
146
|
+
{
|
|
147
|
+
type: "button",
|
|
148
|
+
className: "button-outline",
|
|
149
|
+
onClick: () => {
|
|
150
|
+
form.delete();
|
|
151
|
+
}
|
|
152
|
+
},
|
|
153
|
+
"\uC0AD\uC81C\uD558\uAE30"
|
|
154
|
+
), /* @__PURE__ */ import_react8.default.createElement(
|
|
153
155
|
"button",
|
|
154
156
|
{
|
|
155
157
|
type: "button",
|
|
@@ -157,13 +159,19 @@ function CrudForm({
|
|
|
157
159
|
onClick: form.submit
|
|
158
160
|
},
|
|
159
161
|
"\uC800\uC7A5\uD558\uAE30"
|
|
160
|
-
)
|
|
162
|
+
))
|
|
161
163
|
}
|
|
162
164
|
), /* @__PURE__ */ import_react8.default.createElement("div", { className: "max-w-2xl mx-auto" }, Object.keys(form.columns).length > 0 && /* @__PURE__ */ import_react8.default.createElement(import_react8.default.Fragment, null, Object.entries(form.columns).map(
|
|
163
165
|
([name, value]) => {
|
|
164
166
|
function InputComponent() {
|
|
165
167
|
if (value.type === "textarea") {
|
|
166
|
-
return /* @__PURE__ */ import_react8.default.createElement(
|
|
168
|
+
return /* @__PURE__ */ import_react8.default.createElement(
|
|
169
|
+
StoreTextEditor,
|
|
170
|
+
{
|
|
171
|
+
store: form.store,
|
|
172
|
+
name
|
|
173
|
+
}
|
|
174
|
+
);
|
|
167
175
|
}
|
|
168
176
|
if (value.options) {
|
|
169
177
|
const Component = value.options;
|