dn-react-router-toolkit 0.7.8 → 0.7.10
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/api/create_handler.js +0 -1
- package/dist/api/create_handler.mjs +0 -1
- package/dist/api/index.js +2 -3
- package/dist/api/index.mjs +2 -3
- package/dist/auth/index.d.mts +1 -1
- package/dist/auth/index.d.ts +1 -1
- package/dist/auth/index.js +0 -41
- package/dist/auth/index.mjs +0 -40
- package/dist/auth/with_auth.d.mts +1 -4
- package/dist/auth/with_auth.d.ts +1 -4
- package/dist/auth/with_auth.js +0 -41
- package/dist/auth/with_auth.mjs +0 -40
- package/dist/crud/crud_form.js +13 -3
- package/dist/crud/crud_form.mjs +11 -1
- package/dist/crud/crud_form_provider.d.mts +1 -1
- package/dist/crud/crud_form_provider.d.ts +1 -1
- package/dist/crud/crud_form_provider.js +3 -2
- package/dist/crud/crud_form_provider.mjs +3 -2
- package/dist/crud/crud_loader.d.mts +1 -1
- package/dist/crud/crud_loader.d.ts +1 -1
- package/dist/crud/crud_page.js +21 -11
- package/dist/crud/crud_page.mjs +13 -3
- package/dist/crud/generate_routes.js +1 -1
- package/dist/crud/generate_routes.mjs +1 -1
- package/dist/crud/index.js +22 -12
- package/dist/crud/index.mjs +14 -4
- package/dist/post/index.js +9 -8
- package/dist/post/index.mjs +2 -1
- package/dist/post/post_form_page.js +9 -8
- package/dist/post/post_form_page.mjs +2 -1
- package/package.json +8 -8
|
@@ -27,7 +27,6 @@ var import_http = require("dn-react-toolkit/http");
|
|
|
27
27
|
var import_server = require("dn-react-toolkit/auth/server");
|
|
28
28
|
|
|
29
29
|
// src/auth/with_auth.ts
|
|
30
|
-
var import_uuid = require("uuid");
|
|
31
30
|
var toResponse = (result) => {
|
|
32
31
|
if (result instanceof Response) {
|
|
33
32
|
return result;
|
package/dist/api/index.js
CHANGED
|
@@ -31,7 +31,6 @@ var import_http = require("dn-react-toolkit/http");
|
|
|
31
31
|
var import_server = require("dn-react-toolkit/auth/server");
|
|
32
32
|
|
|
33
33
|
// src/auth/with_auth.ts
|
|
34
|
-
var import_uuid = require("uuid");
|
|
35
34
|
var toResponse = (result) => {
|
|
36
35
|
if (result instanceof Response) {
|
|
37
36
|
return result;
|
|
@@ -244,7 +243,7 @@ var createAPIHandler = ({
|
|
|
244
243
|
var import_http2 = require("dn-react-toolkit/http");
|
|
245
244
|
var import_drizzle_orm = require("drizzle-orm");
|
|
246
245
|
var import_react_router2 = require("react-router");
|
|
247
|
-
var
|
|
246
|
+
var import_uuid = require("uuid");
|
|
248
247
|
|
|
249
248
|
// src/crud/serialize.ts
|
|
250
249
|
function deserialize(data) {
|
|
@@ -319,7 +318,7 @@ function apiHandler({
|
|
|
319
318
|
}
|
|
320
319
|
}
|
|
321
320
|
}
|
|
322
|
-
const itemId = params.id || (0,
|
|
321
|
+
const itemId = params.id || (0, import_uuid.v4)();
|
|
323
322
|
if (!params.id && existingConditions) {
|
|
324
323
|
const paramsForExistenceCheck = Object.keys(
|
|
325
324
|
existingConditions
|
package/dist/api/index.mjs
CHANGED
|
@@ -14,7 +14,6 @@ import {
|
|
|
14
14
|
} from "dn-react-toolkit/auth/server";
|
|
15
15
|
|
|
16
16
|
// src/auth/with_auth.ts
|
|
17
|
-
import { v4 } from "uuid";
|
|
18
17
|
var toResponse = (result) => {
|
|
19
18
|
if (result instanceof Response) {
|
|
20
19
|
return result;
|
|
@@ -239,7 +238,7 @@ import {
|
|
|
239
238
|
and
|
|
240
239
|
} from "drizzle-orm";
|
|
241
240
|
import "react-router";
|
|
242
|
-
import { v4
|
|
241
|
+
import { v4 } from "uuid";
|
|
243
242
|
|
|
244
243
|
// src/crud/serialize.ts
|
|
245
244
|
function deserialize(data) {
|
|
@@ -314,7 +313,7 @@ function apiHandler({
|
|
|
314
313
|
}
|
|
315
314
|
}
|
|
316
315
|
}
|
|
317
|
-
const itemId = params.id ||
|
|
316
|
+
const itemId = params.id || v4();
|
|
318
317
|
if (!params.id && existingConditions) {
|
|
319
318
|
const paramsForExistenceCheck = Object.keys(
|
|
320
319
|
existingConditions
|
package/dist/auth/index.d.mts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { WithAuthHandler,
|
|
1
|
+
export { WithAuthHandler, createWithStrictAuthHandler } from './with_auth.mjs';
|
|
2
2
|
export { ReactRouterCookieManager } from './cookie_store.mjs';
|
|
3
3
|
import 'dn-react-toolkit/auth';
|
|
4
4
|
import 'dn-react-toolkit/auth/server';
|
package/dist/auth/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { WithAuthHandler,
|
|
1
|
+
export { WithAuthHandler, createWithStrictAuthHandler } from './with_auth.js';
|
|
2
2
|
export { ReactRouterCookieManager } from './cookie_store.js';
|
|
3
3
|
import 'dn-react-toolkit/auth';
|
|
4
4
|
import 'dn-react-toolkit/auth/server';
|
package/dist/auth/index.js
CHANGED
|
@@ -21,13 +21,11 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
|
|
|
21
21
|
var auth_exports = {};
|
|
22
22
|
__export(auth_exports, {
|
|
23
23
|
ReactRouterCookieManager: () => ReactRouterCookieManager,
|
|
24
|
-
createWithAuthHandler: () => createWithAuthHandler,
|
|
25
24
|
createWithStrictAuthHandler: () => createWithStrictAuthHandler
|
|
26
25
|
});
|
|
27
26
|
module.exports = __toCommonJS(auth_exports);
|
|
28
27
|
|
|
29
28
|
// src/auth/with_auth.ts
|
|
30
|
-
var import_uuid = require("uuid");
|
|
31
29
|
var toResponse = (result) => {
|
|
32
30
|
if (result instanceof Response) {
|
|
33
31
|
return result;
|
|
@@ -82,44 +80,6 @@ function createWithStrictAuthHandler({ authService }) {
|
|
|
82
80
|
return handler;
|
|
83
81
|
};
|
|
84
82
|
}
|
|
85
|
-
function createWithAuthHandler({
|
|
86
|
-
authService
|
|
87
|
-
}) {
|
|
88
|
-
return function(fn) {
|
|
89
|
-
const withAuthHandler = createWithStrictAuthHandler({
|
|
90
|
-
authService
|
|
91
|
-
});
|
|
92
|
-
const handler = withAuthHandler((auth) => async (args) => {
|
|
93
|
-
if (auth) {
|
|
94
|
-
return fn(auth)(args);
|
|
95
|
-
}
|
|
96
|
-
const respond = async (auth2, headers2 = new Headers()) => {
|
|
97
|
-
const result = await fn(auth2)(args);
|
|
98
|
-
return setHeader(toResponse(result), headers2);
|
|
99
|
-
};
|
|
100
|
-
const setHeader = (res, headers2) => {
|
|
101
|
-
headers2.forEach((value, key) => {
|
|
102
|
-
res.headers.append(key, value);
|
|
103
|
-
});
|
|
104
|
-
return res;
|
|
105
|
-
};
|
|
106
|
-
const user = await authService.authRepository.createUser({
|
|
107
|
-
id: (0, import_uuid.v4)(),
|
|
108
|
-
role: "guest",
|
|
109
|
-
name: "\uC775\uBA85"
|
|
110
|
-
});
|
|
111
|
-
const { accessToken, refreshToken } = await authService.issueTokenPair(user);
|
|
112
|
-
const headers = new Headers();
|
|
113
|
-
const accessTokenSetCookie = await authService.getAccessTokenSetCookie(accessToken);
|
|
114
|
-
headers.append("Set-Cookie", accessTokenSetCookie);
|
|
115
|
-
const refreshTokenSetCookie = await authService.getRefreshTokenSetCookie(refreshToken);
|
|
116
|
-
headers.append("Set-Cookie", refreshTokenSetCookie);
|
|
117
|
-
const payload = authService.accessTokenManager.decode(accessToken);
|
|
118
|
-
return respond(payload, headers);
|
|
119
|
-
});
|
|
120
|
-
return handler;
|
|
121
|
-
};
|
|
122
|
-
}
|
|
123
83
|
|
|
124
84
|
// src/auth/cookie_store.ts
|
|
125
85
|
var import_react_router = require("react-router");
|
|
@@ -152,6 +112,5 @@ var ReactRouterCookieManager = class {
|
|
|
152
112
|
// Annotate the CommonJS export names for ESM import in node:
|
|
153
113
|
0 && (module.exports = {
|
|
154
114
|
ReactRouterCookieManager,
|
|
155
|
-
createWithAuthHandler,
|
|
156
115
|
createWithStrictAuthHandler
|
|
157
116
|
});
|
package/dist/auth/index.mjs
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
// src/auth/with_auth.ts
|
|
2
|
-
import { v4 } from "uuid";
|
|
3
2
|
var toResponse = (result) => {
|
|
4
3
|
if (result instanceof Response) {
|
|
5
4
|
return result;
|
|
@@ -54,44 +53,6 @@ function createWithStrictAuthHandler({ authService }) {
|
|
|
54
53
|
return handler;
|
|
55
54
|
};
|
|
56
55
|
}
|
|
57
|
-
function createWithAuthHandler({
|
|
58
|
-
authService
|
|
59
|
-
}) {
|
|
60
|
-
return function(fn) {
|
|
61
|
-
const withAuthHandler = createWithStrictAuthHandler({
|
|
62
|
-
authService
|
|
63
|
-
});
|
|
64
|
-
const handler = withAuthHandler((auth) => async (args) => {
|
|
65
|
-
if (auth) {
|
|
66
|
-
return fn(auth)(args);
|
|
67
|
-
}
|
|
68
|
-
const respond = async (auth2, headers2 = new Headers()) => {
|
|
69
|
-
const result = await fn(auth2)(args);
|
|
70
|
-
return setHeader(toResponse(result), headers2);
|
|
71
|
-
};
|
|
72
|
-
const setHeader = (res, headers2) => {
|
|
73
|
-
headers2.forEach((value, key) => {
|
|
74
|
-
res.headers.append(key, value);
|
|
75
|
-
});
|
|
76
|
-
return res;
|
|
77
|
-
};
|
|
78
|
-
const user = await authService.authRepository.createUser({
|
|
79
|
-
id: v4(),
|
|
80
|
-
role: "guest",
|
|
81
|
-
name: "\uC775\uBA85"
|
|
82
|
-
});
|
|
83
|
-
const { accessToken, refreshToken } = await authService.issueTokenPair(user);
|
|
84
|
-
const headers = new Headers();
|
|
85
|
-
const accessTokenSetCookie = await authService.getAccessTokenSetCookie(accessToken);
|
|
86
|
-
headers.append("Set-Cookie", accessTokenSetCookie);
|
|
87
|
-
const refreshTokenSetCookie = await authService.getRefreshTokenSetCookie(refreshToken);
|
|
88
|
-
headers.append("Set-Cookie", refreshTokenSetCookie);
|
|
89
|
-
const payload = authService.accessTokenManager.decode(accessToken);
|
|
90
|
-
return respond(payload, headers);
|
|
91
|
-
});
|
|
92
|
-
return handler;
|
|
93
|
-
};
|
|
94
|
-
}
|
|
95
56
|
|
|
96
57
|
// src/auth/cookie_store.ts
|
|
97
58
|
import { createCookie } from "react-router";
|
|
@@ -123,6 +84,5 @@ var ReactRouterCookieManager = class {
|
|
|
123
84
|
};
|
|
124
85
|
export {
|
|
125
86
|
ReactRouterCookieManager,
|
|
126
|
-
createWithAuthHandler,
|
|
127
87
|
createWithStrictAuthHandler
|
|
128
88
|
};
|
|
@@ -8,8 +8,5 @@ type WithAuthHandler<T extends LoaderFunctionArgs | ActionFunctionArgs> = (fn: I
|
|
|
8
8
|
declare function createWithStrictAuthHandler<T extends LoaderFunctionArgs | ActionFunctionArgs>({ authService }: {
|
|
9
9
|
authService: AuthService;
|
|
10
10
|
}): <THandler extends Handler<T>>(fn: (auth?: AccessTokenPayload) => THandler) => THandler;
|
|
11
|
-
declare function createWithAuthHandler<T extends LoaderFunctionArgs | ActionFunctionArgs>({ authService, }: {
|
|
12
|
-
authService: AuthService;
|
|
13
|
-
}): <THandler extends Handler<T>>(fn: (auth: AccessTokenPayload) => THandler) => THandler;
|
|
14
11
|
|
|
15
|
-
export { type WithAuthHandler,
|
|
12
|
+
export { type WithAuthHandler, createWithStrictAuthHandler };
|
package/dist/auth/with_auth.d.ts
CHANGED
|
@@ -8,8 +8,5 @@ type WithAuthHandler<T extends LoaderFunctionArgs | ActionFunctionArgs> = (fn: I
|
|
|
8
8
|
declare function createWithStrictAuthHandler<T extends LoaderFunctionArgs | ActionFunctionArgs>({ authService }: {
|
|
9
9
|
authService: AuthService;
|
|
10
10
|
}): <THandler extends Handler<T>>(fn: (auth?: AccessTokenPayload) => THandler) => THandler;
|
|
11
|
-
declare function createWithAuthHandler<T extends LoaderFunctionArgs | ActionFunctionArgs>({ authService, }: {
|
|
12
|
-
authService: AuthService;
|
|
13
|
-
}): <THandler extends Handler<T>>(fn: (auth: AccessTokenPayload) => THandler) => THandler;
|
|
14
11
|
|
|
15
|
-
export { type WithAuthHandler,
|
|
12
|
+
export { type WithAuthHandler, createWithStrictAuthHandler };
|
package/dist/auth/with_auth.js
CHANGED
|
@@ -20,11 +20,9 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
|
|
|
20
20
|
// src/auth/with_auth.ts
|
|
21
21
|
var with_auth_exports = {};
|
|
22
22
|
__export(with_auth_exports, {
|
|
23
|
-
createWithAuthHandler: () => createWithAuthHandler,
|
|
24
23
|
createWithStrictAuthHandler: () => createWithStrictAuthHandler
|
|
25
24
|
});
|
|
26
25
|
module.exports = __toCommonJS(with_auth_exports);
|
|
27
|
-
var import_uuid = require("uuid");
|
|
28
26
|
var toResponse = (result) => {
|
|
29
27
|
if (result instanceof Response) {
|
|
30
28
|
return result;
|
|
@@ -79,46 +77,7 @@ function createWithStrictAuthHandler({ authService }) {
|
|
|
79
77
|
return handler;
|
|
80
78
|
};
|
|
81
79
|
}
|
|
82
|
-
function createWithAuthHandler({
|
|
83
|
-
authService
|
|
84
|
-
}) {
|
|
85
|
-
return function(fn) {
|
|
86
|
-
const withAuthHandler = createWithStrictAuthHandler({
|
|
87
|
-
authService
|
|
88
|
-
});
|
|
89
|
-
const handler = withAuthHandler((auth) => async (args) => {
|
|
90
|
-
if (auth) {
|
|
91
|
-
return fn(auth)(args);
|
|
92
|
-
}
|
|
93
|
-
const respond = async (auth2, headers2 = new Headers()) => {
|
|
94
|
-
const result = await fn(auth2)(args);
|
|
95
|
-
return setHeader(toResponse(result), headers2);
|
|
96
|
-
};
|
|
97
|
-
const setHeader = (res, headers2) => {
|
|
98
|
-
headers2.forEach((value, key) => {
|
|
99
|
-
res.headers.append(key, value);
|
|
100
|
-
});
|
|
101
|
-
return res;
|
|
102
|
-
};
|
|
103
|
-
const user = await authService.authRepository.createUser({
|
|
104
|
-
id: (0, import_uuid.v4)(),
|
|
105
|
-
role: "guest",
|
|
106
|
-
name: "\uC775\uBA85"
|
|
107
|
-
});
|
|
108
|
-
const { accessToken, refreshToken } = await authService.issueTokenPair(user);
|
|
109
|
-
const headers = new Headers();
|
|
110
|
-
const accessTokenSetCookie = await authService.getAccessTokenSetCookie(accessToken);
|
|
111
|
-
headers.append("Set-Cookie", accessTokenSetCookie);
|
|
112
|
-
const refreshTokenSetCookie = await authService.getRefreshTokenSetCookie(refreshToken);
|
|
113
|
-
headers.append("Set-Cookie", refreshTokenSetCookie);
|
|
114
|
-
const payload = authService.accessTokenManager.decode(accessToken);
|
|
115
|
-
return respond(payload, headers);
|
|
116
|
-
});
|
|
117
|
-
return handler;
|
|
118
|
-
};
|
|
119
|
-
}
|
|
120
80
|
// Annotate the CommonJS export names for ESM import in node:
|
|
121
81
|
0 && (module.exports = {
|
|
122
|
-
createWithAuthHandler,
|
|
123
82
|
createWithStrictAuthHandler
|
|
124
83
|
});
|
package/dist/auth/with_auth.mjs
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
// src/auth/with_auth.ts
|
|
2
|
-
import { v4 } from "uuid";
|
|
3
2
|
var toResponse = (result) => {
|
|
4
3
|
if (result instanceof Response) {
|
|
5
4
|
return result;
|
|
@@ -54,45 +53,6 @@ function createWithStrictAuthHandler({ authService }) {
|
|
|
54
53
|
return handler;
|
|
55
54
|
};
|
|
56
55
|
}
|
|
57
|
-
function createWithAuthHandler({
|
|
58
|
-
authService
|
|
59
|
-
}) {
|
|
60
|
-
return function(fn) {
|
|
61
|
-
const withAuthHandler = createWithStrictAuthHandler({
|
|
62
|
-
authService
|
|
63
|
-
});
|
|
64
|
-
const handler = withAuthHandler((auth) => async (args) => {
|
|
65
|
-
if (auth) {
|
|
66
|
-
return fn(auth)(args);
|
|
67
|
-
}
|
|
68
|
-
const respond = async (auth2, headers2 = new Headers()) => {
|
|
69
|
-
const result = await fn(auth2)(args);
|
|
70
|
-
return setHeader(toResponse(result), headers2);
|
|
71
|
-
};
|
|
72
|
-
const setHeader = (res, headers2) => {
|
|
73
|
-
headers2.forEach((value, key) => {
|
|
74
|
-
res.headers.append(key, value);
|
|
75
|
-
});
|
|
76
|
-
return res;
|
|
77
|
-
};
|
|
78
|
-
const user = await authService.authRepository.createUser({
|
|
79
|
-
id: v4(),
|
|
80
|
-
role: "guest",
|
|
81
|
-
name: "\uC775\uBA85"
|
|
82
|
-
});
|
|
83
|
-
const { accessToken, refreshToken } = await authService.issueTokenPair(user);
|
|
84
|
-
const headers = new Headers();
|
|
85
|
-
const accessTokenSetCookie = await authService.getAccessTokenSetCookie(accessToken);
|
|
86
|
-
headers.append("Set-Cookie", accessTokenSetCookie);
|
|
87
|
-
const refreshTokenSetCookie = await authService.getRefreshTokenSetCookie(refreshToken);
|
|
88
|
-
headers.append("Set-Cookie", refreshTokenSetCookie);
|
|
89
|
-
const payload = authService.accessTokenManager.decode(accessToken);
|
|
90
|
-
return respond(payload, headers);
|
|
91
|
-
});
|
|
92
|
-
return handler;
|
|
93
|
-
};
|
|
94
|
-
}
|
|
95
56
|
export {
|
|
96
|
-
createWithAuthHandler,
|
|
97
57
|
createWithStrictAuthHandler
|
|
98
58
|
};
|
package/dist/crud/crud_form.js
CHANGED
|
@@ -28,6 +28,7 @@ module.exports = __toCommonJS(crud_form_exports);
|
|
|
28
28
|
var import_react_router = require("react-router");
|
|
29
29
|
var import_react_store_input = require("react-store-input");
|
|
30
30
|
var import_react = require("react");
|
|
31
|
+
var import_utils = require("dn-react-toolkit/utils");
|
|
31
32
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
32
33
|
var FormContext = (0, import_react.createContext)({});
|
|
33
34
|
function useFormContext() {
|
|
@@ -35,13 +36,13 @@ function useFormContext() {
|
|
|
35
36
|
}
|
|
36
37
|
|
|
37
38
|
// src/form/create_form_component.tsx
|
|
38
|
-
var
|
|
39
|
+
var import_utils2 = require("dn-react-toolkit/utils");
|
|
39
40
|
var import_react2 = require("react");
|
|
40
41
|
var import_jsx_runtime2 = require("react/jsx-runtime");
|
|
41
42
|
function createComponent(tag, options) {
|
|
42
43
|
return function FormComponent({ className, ...props }) {
|
|
43
44
|
const Tag = tag;
|
|
44
|
-
return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(Tag, { ...props, className: (0,
|
|
45
|
+
return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(Tag, { ...props, className: (0, import_utils2.cn)(options.className, className) });
|
|
45
46
|
};
|
|
46
47
|
}
|
|
47
48
|
|
|
@@ -189,12 +190,21 @@ function CrudForm({
|
|
|
189
190
|
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)("div", { className: "max-w-2xl mx-auto", children: Object.keys(form.columns).length > 0 && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_jsx_runtime6.Fragment, { children: Object.entries(form.columns).map(
|
|
190
191
|
([name, value]) => {
|
|
191
192
|
function InputComponent() {
|
|
193
|
+
if (value.component) {
|
|
194
|
+
const Component = value.component;
|
|
195
|
+
return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(Component, { store: form.store, name });
|
|
196
|
+
}
|
|
192
197
|
if (value.type === "textarea") {
|
|
193
198
|
return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
|
|
194
199
|
StoreTextEditor,
|
|
195
200
|
{
|
|
196
201
|
store: form.store,
|
|
197
|
-
name
|
|
202
|
+
name,
|
|
203
|
+
editor: {
|
|
204
|
+
attributes: {
|
|
205
|
+
class: "text-editor-form"
|
|
206
|
+
}
|
|
207
|
+
}
|
|
198
208
|
}
|
|
199
209
|
);
|
|
200
210
|
}
|
package/dist/crud/crud_form.mjs
CHANGED
|
@@ -5,6 +5,7 @@ import {
|
|
|
5
5
|
createContext,
|
|
6
6
|
useContext
|
|
7
7
|
} from "react";
|
|
8
|
+
import { Korean } from "dn-react-toolkit/utils";
|
|
8
9
|
import { jsx } from "react/jsx-runtime";
|
|
9
10
|
var FormContext = createContext({});
|
|
10
11
|
function useFormContext() {
|
|
@@ -170,12 +171,21 @@ function CrudForm({
|
|
|
170
171
|
/* @__PURE__ */ jsx6("div", { className: "max-w-2xl mx-auto", children: Object.keys(form.columns).length > 0 && /* @__PURE__ */ jsx6(Fragment2, { children: Object.entries(form.columns).map(
|
|
171
172
|
([name, value]) => {
|
|
172
173
|
function InputComponent() {
|
|
174
|
+
if (value.component) {
|
|
175
|
+
const Component = value.component;
|
|
176
|
+
return /* @__PURE__ */ jsx6(Component, { store: form.store, name });
|
|
177
|
+
}
|
|
173
178
|
if (value.type === "textarea") {
|
|
174
179
|
return /* @__PURE__ */ jsx6(
|
|
175
180
|
StoreTextEditor,
|
|
176
181
|
{
|
|
177
182
|
store: form.store,
|
|
178
|
-
name
|
|
183
|
+
name,
|
|
184
|
+
editor: {
|
|
185
|
+
attributes: {
|
|
186
|
+
class: "text-editor-form"
|
|
187
|
+
}
|
|
188
|
+
}
|
|
179
189
|
}
|
|
180
190
|
);
|
|
181
191
|
}
|
|
@@ -88,6 +88,7 @@ function serialize(value) {
|
|
|
88
88
|
}
|
|
89
89
|
|
|
90
90
|
// src/crud/crud_form_provider.tsx
|
|
91
|
+
var import_utils = require("dn-react-toolkit/utils");
|
|
91
92
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
92
93
|
var FormContext = (0, import_react.createContext)({});
|
|
93
94
|
function useFormContext() {
|
|
@@ -138,7 +139,7 @@ function CrudFormProvider({
|
|
|
138
139
|
alert(message);
|
|
139
140
|
return;
|
|
140
141
|
}
|
|
141
|
-
alert(`${name
|
|
142
|
+
alert(`${import_utils.Korean.with(name, ["\uC744", "\uB97C"])} \uC800\uC7A5\uD588\uC2B5\uB2C8\uB2E4.`);
|
|
142
143
|
const { id } = await res.json();
|
|
143
144
|
navigate(`${prefix}/${id}`);
|
|
144
145
|
};
|
|
@@ -158,7 +159,7 @@ function CrudFormProvider({
|
|
|
158
159
|
alert(message);
|
|
159
160
|
return;
|
|
160
161
|
}
|
|
161
|
-
alert(`${name
|
|
162
|
+
alert(`${import_utils.Korean.with(name, ["\uC744", "\uB97C"])} \uC0AD\uC81C\uD588\uC2B5\uB2C8\uB2E4.`);
|
|
162
163
|
navigate(`${prefix}`);
|
|
163
164
|
};
|
|
164
165
|
const value = {
|
|
@@ -65,6 +65,7 @@ function serialize(value) {
|
|
|
65
65
|
}
|
|
66
66
|
|
|
67
67
|
// src/crud/crud_form_provider.tsx
|
|
68
|
+
import { Korean } from "dn-react-toolkit/utils";
|
|
68
69
|
import { jsx } from "react/jsx-runtime";
|
|
69
70
|
var FormContext = createContext({});
|
|
70
71
|
function useFormContext() {
|
|
@@ -115,7 +116,7 @@ function CrudFormProvider({
|
|
|
115
116
|
alert(message);
|
|
116
117
|
return;
|
|
117
118
|
}
|
|
118
|
-
alert(`${name
|
|
119
|
+
alert(`${Korean.with(name, ["\uC744", "\uB97C"])} \uC800\uC7A5\uD588\uC2B5\uB2C8\uB2E4.`);
|
|
119
120
|
const { id } = await res.json();
|
|
120
121
|
navigate(`${prefix}/${id}`);
|
|
121
122
|
};
|
|
@@ -135,7 +136,7 @@ function CrudFormProvider({
|
|
|
135
136
|
alert(message);
|
|
136
137
|
return;
|
|
137
138
|
}
|
|
138
|
-
alert(`${name
|
|
139
|
+
alert(`${Korean.with(name, ["\uC744", "\uB97C"])} \uC0AD\uC81C\uD588\uC2B5\uB2C8\uB2E4.`);
|
|
139
140
|
navigate(`${prefix}`);
|
|
140
141
|
};
|
|
141
142
|
const value = {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { LoaderFunctionArgs, LoaderFunction } from 'react-router';
|
|
2
2
|
import { TableLoaderOptions } from '../table/loader.mjs';
|
|
3
3
|
import { TableItemLoaderOptions } from '../table/item_loader.mjs';
|
|
4
4
|
import { Table } from 'drizzle-orm';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { LoaderFunctionArgs, LoaderFunction } from 'react-router';
|
|
2
2
|
import { TableLoaderOptions } from '../table/loader.js';
|
|
3
3
|
import { TableItemLoaderOptions } from '../table/item_loader.js';
|
|
4
4
|
import { Table } from 'drizzle-orm';
|
package/dist/crud/crud_page.js
CHANGED
|
@@ -89,6 +89,7 @@ function serialize(value) {
|
|
|
89
89
|
}
|
|
90
90
|
|
|
91
91
|
// src/crud/crud_form_provider.tsx
|
|
92
|
+
var import_utils = require("dn-react-toolkit/utils");
|
|
92
93
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
93
94
|
var FormContext = (0, import_react.createContext)({});
|
|
94
95
|
function useFormContext() {
|
|
@@ -139,7 +140,7 @@ function CrudFormProvider({
|
|
|
139
140
|
alert(message);
|
|
140
141
|
return;
|
|
141
142
|
}
|
|
142
|
-
alert(`${name
|
|
143
|
+
alert(`${import_utils.Korean.with(name, ["\uC744", "\uB97C"])} \uC800\uC7A5\uD588\uC2B5\uB2C8\uB2E4.`);
|
|
143
144
|
const { id } = await res.json();
|
|
144
145
|
navigate(`${prefix}/${id}`);
|
|
145
146
|
};
|
|
@@ -159,7 +160,7 @@ function CrudFormProvider({
|
|
|
159
160
|
alert(message);
|
|
160
161
|
return;
|
|
161
162
|
}
|
|
162
|
-
alert(`${name
|
|
163
|
+
alert(`${import_utils.Korean.with(name, ["\uC744", "\uB97C"])} \uC0AD\uC81C\uD588\uC2B5\uB2C8\uB2E4.`);
|
|
163
164
|
navigate(`${prefix}`);
|
|
164
165
|
};
|
|
165
166
|
const value = {
|
|
@@ -178,7 +179,7 @@ var import_react_router4 = require("react-router");
|
|
|
178
179
|
var import_go2 = require("react-icons/go");
|
|
179
180
|
|
|
180
181
|
// src/table/buttons.tsx
|
|
181
|
-
var
|
|
182
|
+
var import_utils2 = require("dn-react-toolkit/utils");
|
|
182
183
|
var import_react_router2 = require("react-router");
|
|
183
184
|
var import_jsx_runtime2 = require("react/jsx-runtime");
|
|
184
185
|
function TablePageButtons({
|
|
@@ -218,7 +219,7 @@ function TablePageButtons({
|
|
|
218
219
|
);
|
|
219
220
|
return `${pathname}?${searchParams.toString()}`;
|
|
220
221
|
})(),
|
|
221
|
-
className: (0,
|
|
222
|
+
className: (0, import_utils2.cn)(
|
|
222
223
|
"w-6 block text-center transition-colors",
|
|
223
224
|
currentPage === startButton + index + 1 ? "font-bold text-primary" : "hover:text-primary"
|
|
224
225
|
),
|
|
@@ -242,7 +243,7 @@ function TablePageButtons({
|
|
|
242
243
|
}
|
|
243
244
|
|
|
244
245
|
// src/table/table.tsx
|
|
245
|
-
var
|
|
246
|
+
var import_utils3 = require("dn-react-toolkit/utils");
|
|
246
247
|
var import_go = require("react-icons/go");
|
|
247
248
|
var import_react_router3 = require("react-router");
|
|
248
249
|
var import_jsx_runtime3 = require("react/jsx-runtime");
|
|
@@ -263,7 +264,7 @@ function Table({
|
|
|
263
264
|
return /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(
|
|
264
265
|
"table",
|
|
265
266
|
{
|
|
266
|
-
className: (0,
|
|
267
|
+
className: (0, import_utils3.cn)(className, "text-[15px] border-separate border-spacing-0"),
|
|
267
268
|
children: [
|
|
268
269
|
/* @__PURE__ */ (0, import_jsx_runtime3.jsx)("thead", { children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)("tr", { children: keys.map((key) => {
|
|
269
270
|
const value = columns[key];
|
|
@@ -279,7 +280,7 @@ function Table({
|
|
|
279
280
|
return /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(
|
|
280
281
|
"button",
|
|
281
282
|
{
|
|
282
|
-
className: (0,
|
|
283
|
+
className: (0, import_utils3.cn)(
|
|
283
284
|
orderBy === key ? "text-neutral-900 font-medium" : "text-neutral-500",
|
|
284
285
|
"px-4 h-14 flex items-center w-full"
|
|
285
286
|
),
|
|
@@ -302,7 +303,7 @@ function Table({
|
|
|
302
303
|
}
|
|
303
304
|
return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_jsx_runtime3.Fragment, { children: reactNode });
|
|
304
305
|
}
|
|
305
|
-
return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)("th", { className: (0,
|
|
306
|
+
return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)("th", { className: (0, import_utils3.cn)("border-y font-normal"), children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(Head, {}) }, key);
|
|
306
307
|
}) }) }),
|
|
307
308
|
/* @__PURE__ */ (0, import_jsx_runtime3.jsxs)("tbody", { children: [
|
|
308
309
|
sortedArray.length === 0 && /* @__PURE__ */ (0, import_jsx_runtime3.jsx)("tr", { children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
|
|
@@ -435,13 +436,13 @@ function createTablePage({
|
|
|
435
436
|
}
|
|
436
437
|
|
|
437
438
|
// src/form/create_form_component.tsx
|
|
438
|
-
var
|
|
439
|
+
var import_utils4 = require("dn-react-toolkit/utils");
|
|
439
440
|
var import_react2 = require("react");
|
|
440
441
|
var import_jsx_runtime5 = require("react/jsx-runtime");
|
|
441
442
|
function createComponent(tag, options) {
|
|
442
443
|
return function FormComponent({ className, ...props }) {
|
|
443
444
|
const Tag = tag;
|
|
444
|
-
return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(Tag, { ...props, className: (0,
|
|
445
|
+
return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(Tag, { ...props, className: (0, import_utils4.cn)(options.className, className) });
|
|
445
446
|
};
|
|
446
447
|
}
|
|
447
448
|
|
|
@@ -589,12 +590,21 @@ function CrudForm({
|
|
|
589
590
|
/* @__PURE__ */ (0, import_jsx_runtime9.jsx)("div", { className: "max-w-2xl mx-auto", children: Object.keys(form.columns).length > 0 && /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(import_jsx_runtime9.Fragment, { children: Object.entries(form.columns).map(
|
|
590
591
|
([name, value]) => {
|
|
591
592
|
function InputComponent() {
|
|
593
|
+
if (value.component) {
|
|
594
|
+
const Component = value.component;
|
|
595
|
+
return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(Component, { store: form.store, name });
|
|
596
|
+
}
|
|
592
597
|
if (value.type === "textarea") {
|
|
593
598
|
return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
594
599
|
StoreTextEditor,
|
|
595
600
|
{
|
|
596
601
|
store: form.store,
|
|
597
|
-
name
|
|
602
|
+
name,
|
|
603
|
+
editor: {
|
|
604
|
+
attributes: {
|
|
605
|
+
class: "text-editor-form"
|
|
606
|
+
}
|
|
607
|
+
}
|
|
598
608
|
}
|
|
599
609
|
);
|
|
600
610
|
}
|
package/dist/crud/crud_page.mjs
CHANGED
|
@@ -68,6 +68,7 @@ function serialize(value) {
|
|
|
68
68
|
}
|
|
69
69
|
|
|
70
70
|
// src/crud/crud_form_provider.tsx
|
|
71
|
+
import { Korean } from "dn-react-toolkit/utils";
|
|
71
72
|
import { jsx } from "react/jsx-runtime";
|
|
72
73
|
var FormContext = createContext({});
|
|
73
74
|
function useFormContext() {
|
|
@@ -118,7 +119,7 @@ function CrudFormProvider({
|
|
|
118
119
|
alert(message);
|
|
119
120
|
return;
|
|
120
121
|
}
|
|
121
|
-
alert(`${name
|
|
122
|
+
alert(`${Korean.with(name, ["\uC744", "\uB97C"])} \uC800\uC7A5\uD588\uC2B5\uB2C8\uB2E4.`);
|
|
122
123
|
const { id } = await res.json();
|
|
123
124
|
navigate(`${prefix}/${id}`);
|
|
124
125
|
};
|
|
@@ -138,7 +139,7 @@ function CrudFormProvider({
|
|
|
138
139
|
alert(message);
|
|
139
140
|
return;
|
|
140
141
|
}
|
|
141
|
-
alert(`${name
|
|
142
|
+
alert(`${Korean.with(name, ["\uC744", "\uB97C"])} \uC0AD\uC81C\uD588\uC2B5\uB2C8\uB2E4.`);
|
|
142
143
|
navigate(`${prefix}`);
|
|
143
144
|
};
|
|
144
145
|
const value = {
|
|
@@ -578,12 +579,21 @@ function CrudForm({
|
|
|
578
579
|
/* @__PURE__ */ jsx9("div", { className: "max-w-2xl mx-auto", children: Object.keys(form.columns).length > 0 && /* @__PURE__ */ jsx9(Fragment5, { children: Object.entries(form.columns).map(
|
|
579
580
|
([name, value]) => {
|
|
580
581
|
function InputComponent() {
|
|
582
|
+
if (value.component) {
|
|
583
|
+
const Component = value.component;
|
|
584
|
+
return /* @__PURE__ */ jsx9(Component, { store: form.store, name });
|
|
585
|
+
}
|
|
581
586
|
if (value.type === "textarea") {
|
|
582
587
|
return /* @__PURE__ */ jsx9(
|
|
583
588
|
StoreTextEditor,
|
|
584
589
|
{
|
|
585
590
|
store: form.store,
|
|
586
|
-
name
|
|
591
|
+
name,
|
|
592
|
+
editor: {
|
|
593
|
+
attributes: {
|
|
594
|
+
class: "text-editor-form"
|
|
595
|
+
}
|
|
596
|
+
}
|
|
587
597
|
}
|
|
588
598
|
);
|
|
589
599
|
}
|
package/dist/crud/index.js
CHANGED
|
@@ -7704,6 +7704,7 @@ function deserialize(data) {
|
|
|
7704
7704
|
}
|
|
7705
7705
|
|
|
7706
7706
|
// src/crud/crud_form_provider.tsx
|
|
7707
|
+
var import_utils = require("dn-react-toolkit/utils");
|
|
7707
7708
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
7708
7709
|
var FormContext = (0, import_react.createContext)({});
|
|
7709
7710
|
function useFormContext() {
|
|
@@ -7754,7 +7755,7 @@ function CrudFormProvider({
|
|
|
7754
7755
|
alert(message);
|
|
7755
7756
|
return;
|
|
7756
7757
|
}
|
|
7757
|
-
alert(`${name
|
|
7758
|
+
alert(`${import_utils.Korean.with(name, ["\uC744", "\uB97C"])} \uC800\uC7A5\uD588\uC2B5\uB2C8\uB2E4.`);
|
|
7758
7759
|
const { id } = await res.json();
|
|
7759
7760
|
navigate(`${prefix2}/${id}`);
|
|
7760
7761
|
};
|
|
@@ -7774,7 +7775,7 @@ function CrudFormProvider({
|
|
|
7774
7775
|
alert(message);
|
|
7775
7776
|
return;
|
|
7776
7777
|
}
|
|
7777
|
-
alert(`${name
|
|
7778
|
+
alert(`${import_utils.Korean.with(name, ["\uC744", "\uB97C"])} \uC0AD\uC81C\uD588\uC2B5\uB2C8\uB2E4.`);
|
|
7778
7779
|
navigate(`${prefix2}`);
|
|
7779
7780
|
};
|
|
7780
7781
|
const value = {
|
|
@@ -7789,13 +7790,13 @@ function CrudFormProvider({
|
|
|
7789
7790
|
}
|
|
7790
7791
|
|
|
7791
7792
|
// src/form/create_form_component.tsx
|
|
7792
|
-
var
|
|
7793
|
+
var import_utils2 = require("dn-react-toolkit/utils");
|
|
7793
7794
|
var import_react2 = require("react");
|
|
7794
7795
|
var import_jsx_runtime2 = require("react/jsx-runtime");
|
|
7795
7796
|
function createComponent(tag, options) {
|
|
7796
7797
|
return function FormComponent({ className, ...props }) {
|
|
7797
7798
|
const Tag = tag;
|
|
7798
|
-
return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(Tag, { ...props, className: (0,
|
|
7799
|
+
return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(Tag, { ...props, className: (0, import_utils2.cn)(options.className, className) });
|
|
7799
7800
|
};
|
|
7800
7801
|
}
|
|
7801
7802
|
|
|
@@ -7943,12 +7944,21 @@ function CrudForm({
|
|
|
7943
7944
|
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)("div", { className: "max-w-2xl mx-auto", children: Object.keys(form.columns).length > 0 && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_jsx_runtime6.Fragment, { children: Object.entries(form.columns).map(
|
|
7944
7945
|
([name, value]) => {
|
|
7945
7946
|
function InputComponent() {
|
|
7947
|
+
if (value.component) {
|
|
7948
|
+
const Component = value.component;
|
|
7949
|
+
return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(Component, { store: form.store, name });
|
|
7950
|
+
}
|
|
7946
7951
|
if (value.type === "textarea") {
|
|
7947
7952
|
return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
|
|
7948
7953
|
StoreTextEditor,
|
|
7949
7954
|
{
|
|
7950
7955
|
store: form.store,
|
|
7951
|
-
name
|
|
7956
|
+
name,
|
|
7957
|
+
editor: {
|
|
7958
|
+
attributes: {
|
|
7959
|
+
class: "text-editor-form"
|
|
7960
|
+
}
|
|
7961
|
+
}
|
|
7952
7962
|
}
|
|
7953
7963
|
);
|
|
7954
7964
|
}
|
|
@@ -8231,7 +8241,7 @@ var import_react_router8 = require("react-router");
|
|
|
8231
8241
|
var import_go2 = require("react-icons/go");
|
|
8232
8242
|
|
|
8233
8243
|
// src/table/buttons.tsx
|
|
8234
|
-
var
|
|
8244
|
+
var import_utils3 = require("dn-react-toolkit/utils");
|
|
8235
8245
|
var import_react_router6 = require("react-router");
|
|
8236
8246
|
var import_jsx_runtime7 = require("react/jsx-runtime");
|
|
8237
8247
|
function TablePageButtons({
|
|
@@ -8271,7 +8281,7 @@ function TablePageButtons({
|
|
|
8271
8281
|
);
|
|
8272
8282
|
return `${pathname}?${searchParams.toString()}`;
|
|
8273
8283
|
})(),
|
|
8274
|
-
className: (0,
|
|
8284
|
+
className: (0, import_utils3.cn)(
|
|
8275
8285
|
"w-6 block text-center transition-colors",
|
|
8276
8286
|
currentPage === startButton + index2 + 1 ? "font-bold text-primary" : "hover:text-primary"
|
|
8277
8287
|
),
|
|
@@ -8295,7 +8305,7 @@ function TablePageButtons({
|
|
|
8295
8305
|
}
|
|
8296
8306
|
|
|
8297
8307
|
// src/table/table.tsx
|
|
8298
|
-
var
|
|
8308
|
+
var import_utils4 = require("dn-react-toolkit/utils");
|
|
8299
8309
|
var import_go = require("react-icons/go");
|
|
8300
8310
|
var import_react_router7 = require("react-router");
|
|
8301
8311
|
var import_jsx_runtime8 = require("react/jsx-runtime");
|
|
@@ -8316,7 +8326,7 @@ function Table({
|
|
|
8316
8326
|
return /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
|
|
8317
8327
|
"table",
|
|
8318
8328
|
{
|
|
8319
|
-
className: (0,
|
|
8329
|
+
className: (0, import_utils4.cn)(className, "text-[15px] border-separate border-spacing-0"),
|
|
8320
8330
|
children: [
|
|
8321
8331
|
/* @__PURE__ */ (0, import_jsx_runtime8.jsx)("thead", { children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("tr", { children: keys.map((key) => {
|
|
8322
8332
|
const value = columns[key];
|
|
@@ -8332,7 +8342,7 @@ function Table({
|
|
|
8332
8342
|
return /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
|
|
8333
8343
|
"button",
|
|
8334
8344
|
{
|
|
8335
|
-
className: (0,
|
|
8345
|
+
className: (0, import_utils4.cn)(
|
|
8336
8346
|
orderBy === key ? "text-neutral-900 font-medium" : "text-neutral-500",
|
|
8337
8347
|
"px-4 h-14 flex items-center w-full"
|
|
8338
8348
|
),
|
|
@@ -8355,7 +8365,7 @@ function Table({
|
|
|
8355
8365
|
}
|
|
8356
8366
|
return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(import_jsx_runtime8.Fragment, { children: reactNode });
|
|
8357
8367
|
}
|
|
8358
|
-
return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("th", { className: (0,
|
|
8368
|
+
return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("th", { className: (0, import_utils4.cn)("border-y font-normal"), children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Head, {}) }, key);
|
|
8359
8369
|
}) }) }),
|
|
8360
8370
|
/* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("tbody", { children: [
|
|
8361
8371
|
sortedArray.length === 0 && /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("tr", { children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
|
|
@@ -8614,7 +8624,7 @@ function generateCrudRoutes(routes, apiFile, file) {
|
|
|
8614
8624
|
|
|
8615
8625
|
@react-router/dev/dist/routes.js:
|
|
8616
8626
|
(**
|
|
8617
|
-
* @react-router/dev v7.
|
|
8627
|
+
* @react-router/dev v7.13.1
|
|
8618
8628
|
*
|
|
8619
8629
|
* Copyright (c) Remix Software Inc.
|
|
8620
8630
|
*
|
package/dist/crud/index.mjs
CHANGED
|
@@ -7686,6 +7686,7 @@ function deserialize(data) {
|
|
|
7686
7686
|
}
|
|
7687
7687
|
|
|
7688
7688
|
// src/crud/crud_form_provider.tsx
|
|
7689
|
+
import { Korean } from "dn-react-toolkit/utils";
|
|
7689
7690
|
import { jsx } from "react/jsx-runtime";
|
|
7690
7691
|
var FormContext = createContext({});
|
|
7691
7692
|
function useFormContext() {
|
|
@@ -7736,7 +7737,7 @@ function CrudFormProvider({
|
|
|
7736
7737
|
alert(message);
|
|
7737
7738
|
return;
|
|
7738
7739
|
}
|
|
7739
|
-
alert(`${name
|
|
7740
|
+
alert(`${Korean.with(name, ["\uC744", "\uB97C"])} \uC800\uC7A5\uD588\uC2B5\uB2C8\uB2E4.`);
|
|
7740
7741
|
const { id } = await res.json();
|
|
7741
7742
|
navigate(`${prefix2}/${id}`);
|
|
7742
7743
|
};
|
|
@@ -7756,7 +7757,7 @@ function CrudFormProvider({
|
|
|
7756
7757
|
alert(message);
|
|
7757
7758
|
return;
|
|
7758
7759
|
}
|
|
7759
|
-
alert(`${name
|
|
7760
|
+
alert(`${Korean.with(name, ["\uC744", "\uB97C"])} \uC0AD\uC81C\uD588\uC2B5\uB2C8\uB2E4.`);
|
|
7760
7761
|
navigate(`${prefix2}`);
|
|
7761
7762
|
};
|
|
7762
7763
|
const value = {
|
|
@@ -7929,12 +7930,21 @@ function CrudForm({
|
|
|
7929
7930
|
/* @__PURE__ */ jsx6("div", { className: "max-w-2xl mx-auto", children: Object.keys(form.columns).length > 0 && /* @__PURE__ */ jsx6(Fragment2, { children: Object.entries(form.columns).map(
|
|
7930
7931
|
([name, value]) => {
|
|
7931
7932
|
function InputComponent() {
|
|
7933
|
+
if (value.component) {
|
|
7934
|
+
const Component = value.component;
|
|
7935
|
+
return /* @__PURE__ */ jsx6(Component, { store: form.store, name });
|
|
7936
|
+
}
|
|
7932
7937
|
if (value.type === "textarea") {
|
|
7933
7938
|
return /* @__PURE__ */ jsx6(
|
|
7934
7939
|
StoreTextEditor,
|
|
7935
7940
|
{
|
|
7936
7941
|
store: form.store,
|
|
7937
|
-
name
|
|
7942
|
+
name,
|
|
7943
|
+
editor: {
|
|
7944
|
+
attributes: {
|
|
7945
|
+
class: "text-editor-form"
|
|
7946
|
+
}
|
|
7947
|
+
}
|
|
7938
7948
|
}
|
|
7939
7949
|
);
|
|
7940
7950
|
}
|
|
@@ -8617,7 +8627,7 @@ export {
|
|
|
8617
8627
|
|
|
8618
8628
|
@react-router/dev/dist/routes.js:
|
|
8619
8629
|
(**
|
|
8620
|
-
* @react-router/dev v7.
|
|
8630
|
+
* @react-router/dev v7.13.1
|
|
8621
8631
|
*
|
|
8622
8632
|
* Copyright (c) Remix Software Inc.
|
|
8623
8633
|
*
|
package/dist/post/index.js
CHANGED
|
@@ -7899,7 +7899,7 @@ function EditorToolbar({
|
|
|
7899
7899
|
|
|
7900
7900
|
// src/post/post_form_page.tsx
|
|
7901
7901
|
var import_react_router11 = require("react-router");
|
|
7902
|
-
var
|
|
7902
|
+
var import_utils7 = require("dn-react-toolkit/utils");
|
|
7903
7903
|
var import_react_store_input5 = require("react-store-input");
|
|
7904
7904
|
var import_react6 = require("react");
|
|
7905
7905
|
var import_dn_react_text_editor2 = require("dn-react-text-editor");
|
|
@@ -7908,17 +7908,18 @@ var import_dn_react_text_editor2 = require("dn-react-text-editor");
|
|
|
7908
7908
|
var import_react_router3 = require("react-router");
|
|
7909
7909
|
var import_react_store_input3 = require("react-store-input");
|
|
7910
7910
|
var import_react4 = require("react");
|
|
7911
|
+
var import_utils3 = require("dn-react-toolkit/utils");
|
|
7911
7912
|
var import_jsx_runtime6 = require("react/jsx-runtime");
|
|
7912
7913
|
var FormContext = (0, import_react4.createContext)({});
|
|
7913
7914
|
|
|
7914
7915
|
// src/form/create_form_component.tsx
|
|
7915
|
-
var
|
|
7916
|
+
var import_utils4 = require("dn-react-toolkit/utils");
|
|
7916
7917
|
var import_react5 = require("react");
|
|
7917
7918
|
var import_jsx_runtime7 = require("react/jsx-runtime");
|
|
7918
7919
|
function createComponent(tag, options) {
|
|
7919
7920
|
return function FormComponent({ className, ...props }) {
|
|
7920
7921
|
const Tag = tag;
|
|
7921
|
-
return /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(Tag, { ...props, className: (0,
|
|
7922
|
+
return /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(Tag, { ...props, className: (0, import_utils4.cn)(options.className, className) });
|
|
7922
7923
|
};
|
|
7923
7924
|
}
|
|
7924
7925
|
|
|
@@ -7958,12 +7959,12 @@ var import_react_router8 = require("react-router");
|
|
|
7958
7959
|
var import_go3 = require("react-icons/go");
|
|
7959
7960
|
|
|
7960
7961
|
// src/table/buttons.tsx
|
|
7961
|
-
var
|
|
7962
|
+
var import_utils5 = require("dn-react-toolkit/utils");
|
|
7962
7963
|
var import_react_router6 = require("react-router");
|
|
7963
7964
|
var import_jsx_runtime9 = require("react/jsx-runtime");
|
|
7964
7965
|
|
|
7965
7966
|
// src/table/table.tsx
|
|
7966
|
-
var
|
|
7967
|
+
var import_utils6 = require("dn-react-toolkit/utils");
|
|
7967
7968
|
var import_go2 = require("react-icons/go");
|
|
7968
7969
|
var import_react_router7 = require("react-router");
|
|
7969
7970
|
var import_jsx_runtime10 = require("react/jsx-runtime");
|
|
@@ -8085,7 +8086,7 @@ var createPostFormPage = ({
|
|
|
8085
8086
|
onChange: (e) => {
|
|
8086
8087
|
const title = e.target.value;
|
|
8087
8088
|
form.store.dispatch((state) => {
|
|
8088
|
-
state.slug = (0,
|
|
8089
|
+
state.slug = (0, import_utils7.toSlug)(title);
|
|
8089
8090
|
});
|
|
8090
8091
|
}
|
|
8091
8092
|
}
|
|
@@ -8168,7 +8169,7 @@ var createPostFormPage = ({
|
|
|
8168
8169
|
updateDelay: 500,
|
|
8169
8170
|
editor: {
|
|
8170
8171
|
attributes: {
|
|
8171
|
-
class: (0,
|
|
8172
|
+
class: (0, import_utils7.cn)(textEditorClassName, "pb-[50vh]")
|
|
8172
8173
|
}
|
|
8173
8174
|
},
|
|
8174
8175
|
attachFile
|
|
@@ -8187,7 +8188,7 @@ var createPostFormPage = ({
|
|
|
8187
8188
|
|
|
8188
8189
|
@react-router/dev/dist/routes.js:
|
|
8189
8190
|
(**
|
|
8190
|
-
* @react-router/dev v7.
|
|
8191
|
+
* @react-router/dev v7.13.1
|
|
8191
8192
|
*
|
|
8192
8193
|
* Copyright (c) Remix Software Inc.
|
|
8193
8194
|
*
|
package/dist/post/index.mjs
CHANGED
|
@@ -7905,6 +7905,7 @@ import {
|
|
|
7905
7905
|
createContext,
|
|
7906
7906
|
useContext
|
|
7907
7907
|
} from "react";
|
|
7908
|
+
import { Korean } from "dn-react-toolkit/utils";
|
|
7908
7909
|
import { jsx as jsx6 } from "react/jsx-runtime";
|
|
7909
7910
|
var FormContext = createContext({});
|
|
7910
7911
|
|
|
@@ -8201,7 +8202,7 @@ export {
|
|
|
8201
8202
|
|
|
8202
8203
|
@react-router/dev/dist/routes.js:
|
|
8203
8204
|
(**
|
|
8204
|
-
* @react-router/dev v7.
|
|
8205
|
+
* @react-router/dev v7.13.1
|
|
8205
8206
|
*
|
|
8206
8207
|
* Copyright (c) Remix Software Inc.
|
|
8207
8208
|
*
|
|
@@ -7597,7 +7597,7 @@ __export(post_form_page_exports, {
|
|
|
7597
7597
|
});
|
|
7598
7598
|
module.exports = __toCommonJS(post_form_page_exports);
|
|
7599
7599
|
var import_react_router11 = require("react-router");
|
|
7600
|
-
var
|
|
7600
|
+
var import_utils7 = require("dn-react-toolkit/utils");
|
|
7601
7601
|
var import_react_store_input5 = require("react-store-input");
|
|
7602
7602
|
|
|
7603
7603
|
// src/post/editor_toolbar.tsx
|
|
@@ -7906,17 +7906,18 @@ function PostThumbnailPicker({
|
|
|
7906
7906
|
var import_react_router3 = require("react-router");
|
|
7907
7907
|
var import_react_store_input3 = require("react-store-input");
|
|
7908
7908
|
var import_react4 = require("react");
|
|
7909
|
+
var import_utils3 = require("dn-react-toolkit/utils");
|
|
7909
7910
|
var import_jsx_runtime6 = require("react/jsx-runtime");
|
|
7910
7911
|
var FormContext = (0, import_react4.createContext)({});
|
|
7911
7912
|
|
|
7912
7913
|
// src/form/create_form_component.tsx
|
|
7913
|
-
var
|
|
7914
|
+
var import_utils4 = require("dn-react-toolkit/utils");
|
|
7914
7915
|
var import_react5 = require("react");
|
|
7915
7916
|
var import_jsx_runtime7 = require("react/jsx-runtime");
|
|
7916
7917
|
function createComponent(tag, options) {
|
|
7917
7918
|
return function FormComponent({ className, ...props }) {
|
|
7918
7919
|
const Tag = tag;
|
|
7919
|
-
return /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(Tag, { ...props, className: (0,
|
|
7920
|
+
return /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(Tag, { ...props, className: (0, import_utils4.cn)(options.className, className) });
|
|
7920
7921
|
};
|
|
7921
7922
|
}
|
|
7922
7923
|
|
|
@@ -7956,12 +7957,12 @@ var import_react_router8 = require("react-router");
|
|
|
7956
7957
|
var import_go3 = require("react-icons/go");
|
|
7957
7958
|
|
|
7958
7959
|
// src/table/buttons.tsx
|
|
7959
|
-
var
|
|
7960
|
+
var import_utils5 = require("dn-react-toolkit/utils");
|
|
7960
7961
|
var import_react_router6 = require("react-router");
|
|
7961
7962
|
var import_jsx_runtime9 = require("react/jsx-runtime");
|
|
7962
7963
|
|
|
7963
7964
|
// src/table/table.tsx
|
|
7964
|
-
var
|
|
7965
|
+
var import_utils6 = require("dn-react-toolkit/utils");
|
|
7965
7966
|
var import_go2 = require("react-icons/go");
|
|
7966
7967
|
var import_react_router7 = require("react-router");
|
|
7967
7968
|
var import_jsx_runtime10 = require("react/jsx-runtime");
|
|
@@ -8083,7 +8084,7 @@ var createPostFormPage = ({
|
|
|
8083
8084
|
onChange: (e) => {
|
|
8084
8085
|
const title = e.target.value;
|
|
8085
8086
|
form.store.dispatch((state) => {
|
|
8086
|
-
state.slug = (0,
|
|
8087
|
+
state.slug = (0, import_utils7.toSlug)(title);
|
|
8087
8088
|
});
|
|
8088
8089
|
}
|
|
8089
8090
|
}
|
|
@@ -8166,7 +8167,7 @@ var createPostFormPage = ({
|
|
|
8166
8167
|
updateDelay: 500,
|
|
8167
8168
|
editor: {
|
|
8168
8169
|
attributes: {
|
|
8169
|
-
class: (0,
|
|
8170
|
+
class: (0, import_utils7.cn)(textEditorClassName, "pb-[50vh]")
|
|
8170
8171
|
}
|
|
8171
8172
|
},
|
|
8172
8173
|
attachFile
|
|
@@ -8183,7 +8184,7 @@ var createPostFormPage = ({
|
|
|
8183
8184
|
|
|
8184
8185
|
@react-router/dev/dist/routes.js:
|
|
8185
8186
|
(**
|
|
8186
|
-
* @react-router/dev v7.
|
|
8187
|
+
* @react-router/dev v7.13.1
|
|
8187
8188
|
*
|
|
8188
8189
|
* Copyright (c) Remix Software Inc.
|
|
8189
8190
|
*
|
|
@@ -7907,6 +7907,7 @@ import {
|
|
|
7907
7907
|
createContext,
|
|
7908
7908
|
useContext
|
|
7909
7909
|
} from "react";
|
|
7910
|
+
import { Korean } from "dn-react-toolkit/utils";
|
|
7910
7911
|
import { jsx as jsx6 } from "react/jsx-runtime";
|
|
7911
7912
|
var FormContext = createContext({});
|
|
7912
7913
|
|
|
@@ -8201,7 +8202,7 @@ export {
|
|
|
8201
8202
|
|
|
8202
8203
|
@react-router/dev/dist/routes.js:
|
|
8203
8204
|
(**
|
|
8204
|
-
* @react-router/dev v7.
|
|
8205
|
+
* @react-router/dev v7.13.1
|
|
8205
8206
|
*
|
|
8206
8207
|
* Copyright (c) Remix Software Inc.
|
|
8207
8208
|
*
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "dn-react-router-toolkit",
|
|
3
|
-
"version": "0.7.
|
|
3
|
+
"version": "0.7.10",
|
|
4
4
|
"types": "./dist/index.d.ts",
|
|
5
5
|
"main": "./dist/index.mjs",
|
|
6
6
|
"module": "./dist/index.js",
|
|
@@ -77,19 +77,19 @@
|
|
|
77
77
|
"homepage": "https://github.com/dndnsoft/dn-react-router-toolkit#readme",
|
|
78
78
|
"description": "",
|
|
79
79
|
"devDependencies": {
|
|
80
|
-
"@react-router/dev": "^7.
|
|
81
|
-
"@types/node": "^
|
|
80
|
+
"@react-router/dev": "^7.13.1",
|
|
81
|
+
"@types/node": "^25.3.1",
|
|
82
82
|
"@types/react": "^19",
|
|
83
83
|
"@types/react-dom": "^19",
|
|
84
84
|
"schema-dts": "^1.1.5",
|
|
85
85
|
"tsup": "^8.5.1",
|
|
86
|
-
"typescript": "^5.
|
|
86
|
+
"typescript": "^5.9.3"
|
|
87
87
|
},
|
|
88
88
|
"dependencies": {
|
|
89
89
|
"cookie": "^1.1.1",
|
|
90
90
|
"dn-react-text-editor": "^0.3.7",
|
|
91
|
-
"dn-react-toolkit": "^0.2.
|
|
92
|
-
"pg": "^8.
|
|
91
|
+
"dn-react-toolkit": "^0.2.54",
|
|
92
|
+
"pg": "^8.19.0",
|
|
93
93
|
"react-icons": "^5.5.0",
|
|
94
94
|
"react-store-input": "^0.2.1",
|
|
95
95
|
"uuid": "^13.0.0"
|
|
@@ -98,6 +98,6 @@
|
|
|
98
98
|
"drizzle-orm": "^0.45.1",
|
|
99
99
|
"react": "^19",
|
|
100
100
|
"react-dom": "^19",
|
|
101
|
-
"react-router": "^7.
|
|
101
|
+
"react-router": "^7.13.1"
|
|
102
102
|
}
|
|
103
|
-
}
|
|
103
|
+
}
|