@uxf/cms 13.0.3 → 14.1.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.
- package/README.md +1 -1
- package/api/index.d.ts +2 -0
- package/api/index.js +2 -2
- package/api/swr.js +71 -6
- package/content-builder/content-builder-header.js +42 -3
- package/content-builder/content-builder.js +140 -18
- package/content-builder/content-builder.stories.js +24 -5
- package/content-builder/forms/content-builder-basic-form.js +212 -25
- package/content-builder/forms/content-builder-seo-form.js +92 -8
- package/forms/change-password-form/change-password-form.js +152 -15
- package/forms/components/wysiwyg-input/wysiwyg-input.js +188 -50
- package/forms/components/wysiwyg-input/wysiwyg-input.stories.js +127 -22
- package/forms/forgotten-password-form/forgotten-password-form.js +119 -15
- package/forms/invite-user-form/invite-user-form.js +171 -13
- package/forms/login-form/login-form.js +122 -13
- package/forms/renew-password-form/renew-password-form.js +148 -16
- package/lib/api/create-axios-instance.d.ts +3 -1
- package/lib/api/create-axios-request.d.ts +3 -1
- package/lib/api/create-axios-request.js +9 -2
- package/lib/api/create-axios-request.test.d.ts +1 -0
- package/lib/api/create-axios-request.test.js +32 -0
- package/lib/layout/layout.js +126 -28
- package/lib/layout/sidebar.js +69 -38
- package/lib/menu/ui/menu-item.js +5 -2
- package/lib/menu/ui/sub-menu/sub-menu-mobile.js +62 -14
- package/lib/menu/ui/sub-menu/sub-menu.js +66 -14
- package/lib/menu/ui/sub-menu/use-sub-menu.js +137 -34
- package/lib/menu/ui/user-menu.js +178 -14
- package/package.json +21 -21
- package/pages/content-builder/components/form-content.js +189 -38
- package/pages/content-builder/components/form-root-fields.js +3 -3
- package/pages/content-builder/components/form.js +142 -27
- package/pages/content-builder/components/header.js +44 -5
- package/pages/content-builder/content/feature-section.js +67 -15
- package/pages/content-builder/content/gallery.js +38 -6
- package/pages/content-builder/content/hero-section.js +39 -6
- package/pages/content-builder/content/people.js +64 -13
- package/pages/content-builder/content/wysiwyg.js +60 -6
- package/pages/content-builder/content-builder-page.js +120 -48
- package/pages/content-builder/content-field.js +216 -35
- package/pages/content-builder/content-header-behaviour.spec.d.ts +1 -0
- package/pages/content-builder/content-header-behaviour.spec.js +22 -0
- package/pages/content-builder/content-header.js +100 -53
- package/pages/content-builder/context/details-visibility-context.js +96 -18
- package/pages/forgotten-password-page/forgotten-password-page.js +29 -46
- package/pages/grid-page/grid-page.js +292 -76
- package/pages/grid-page/history-pathname.d.ts +6 -0
- package/pages/grid-page/history-pathname.js +11 -0
- package/pages/grid-page/history-pathname.test.d.ts +1 -0
- package/pages/grid-page/history-pathname.test.js +11 -0
- package/pages/grid-page/use-hidden-columns.js +29 -8
- package/pages/invite-user-page/invite-user-page.js +39 -16
- package/pages/login-page/login-page.js +44 -50
- package/pages/renew-password-page/renew-password-page.js +35 -43
- package/pages/translations.d.ts +3 -0
- package/pages/translations.js +3 -0
- package/security/restricted-page.js +88 -10
- package/security/use-logged-user.js +33 -8
- package/translations/cs.json +2 -1
- package/translations/translations.d.ts +3 -0
- package/ui/avatar/avatar.js +3 -2
- package/ui/copy-to-clipboard/copy-to-clipboard.js +57 -44
- package/ui/copy-to-clipboard-button/copy-to-clipboard-button.js +47 -46
- package/utils/remove-confirm-handler.js +80 -11
- package/utils/use-viewport-height.js +26 -20
- package/utils/use-viewport-height.test.d.ts +1 -0
- package/utils/use-viewport-height.test.js +37 -0
- package/utils/use-visual-viewport-height.d.ts +2 -0
- package/utils/use-visual-viewport-height.js +26 -0
|
@@ -35,6 +35,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
35
35
|
})();
|
|
36
36
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
37
37
|
exports.InviteUserPage = void 0;
|
|
38
|
+
const compiler_runtime_1 = require("react/compiler-runtime");
|
|
38
39
|
const react_1 = __importStar(require("react"));
|
|
39
40
|
const invite_user_form_1 = require("../../forms/invite-user-form");
|
|
40
41
|
const restricted_page_1 = require("../../security/restricted-page");
|
|
@@ -43,25 +44,47 @@ const INITIAL_VALUES = {
|
|
|
43
44
|
surname: "",
|
|
44
45
|
email: "",
|
|
45
46
|
sendInvitation: false,
|
|
46
|
-
roles: []
|
|
47
|
+
roles: []
|
|
47
48
|
};
|
|
48
|
-
const InviteUserPage =
|
|
49
|
+
const InviteUserPage = config => {
|
|
49
50
|
const Component = () => {
|
|
50
51
|
var _a, _b;
|
|
51
|
-
const
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
52
|
+
const $ = (0, compiler_runtime_1.c)(2);
|
|
53
|
+
const onSubmit = _temp;
|
|
54
|
+
let t0;
|
|
55
|
+
if ($[0] === Symbol.for("react.memo_cache_sentinel")) {
|
|
56
|
+
t0 = (_b = (_a = config.ui) === null || _a === void 0 ? void 0 : _a.Layout) !== null && _b !== void 0 ? _b : react_1.default.createElement("div", null);
|
|
57
|
+
$[0] = t0;
|
|
58
|
+
}
|
|
59
|
+
else {
|
|
60
|
+
t0 = $[0];
|
|
61
|
+
}
|
|
62
|
+
const Layout = t0;
|
|
63
|
+
let t1;
|
|
64
|
+
if ($[1] === Symbol.for("react.memo_cache_sentinel")) {
|
|
65
|
+
const Content = react_1.default.createElement(invite_user_form_1.InviteUserForm, { defaultValues: INITIAL_VALUES, onLoadRoles: config.onLoadRoles, onSubmit: onSubmit });
|
|
66
|
+
t1 = (0, react_1.cloneElement)(Layout, {
|
|
67
|
+
children: Content
|
|
68
|
+
});
|
|
69
|
+
$[1] = t1;
|
|
70
|
+
}
|
|
71
|
+
else {
|
|
72
|
+
t1 = $[1];
|
|
73
|
+
}
|
|
74
|
+
return t1;
|
|
64
75
|
};
|
|
65
|
-
return (0, restricted_page_1.restrictedPage)(Component, {
|
|
76
|
+
return (0, restricted_page_1.restrictedPage)(Component, {
|
|
77
|
+
allowedRole: config.allowedRoles || ["ROLE_ROOT"]
|
|
78
|
+
});
|
|
66
79
|
};
|
|
67
80
|
exports.InviteUserPage = InviteUserPage;
|
|
81
|
+
async function _temp(values) {
|
|
82
|
+
;
|
|
83
|
+
try {
|
|
84
|
+
await config.onSubmit(values);
|
|
85
|
+
}
|
|
86
|
+
catch (t0) {
|
|
87
|
+
const e = t0;
|
|
88
|
+
config.handleError(e);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
@@ -1,65 +1,54 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
26
|
-
};
|
|
27
|
-
return function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
})();
|
|
35
2
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
4
|
};
|
|
38
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
6
|
exports.LoginPage = void 0;
|
|
7
|
+
const compiler_runtime_1 = require("react/compiler-runtime");
|
|
40
8
|
const router_1 = __importDefault(require("next/router"));
|
|
41
|
-
const react_1 =
|
|
9
|
+
const react_1 = __importDefault(require("react"));
|
|
42
10
|
const api_1 = require("../../api");
|
|
43
11
|
const login_form_1 = require("../../forms/login-form");
|
|
44
12
|
const login_layout_1 = require("../../lib/login-layout");
|
|
45
13
|
const INITIAL_VALUES = {
|
|
46
14
|
username: "",
|
|
47
|
-
password: ""
|
|
15
|
+
password: ""
|
|
48
16
|
};
|
|
49
|
-
const LoginPage =
|
|
50
|
-
const Component =
|
|
17
|
+
const LoginPage = config => {
|
|
18
|
+
const Component = props => {
|
|
51
19
|
var _a, _b;
|
|
52
|
-
const
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
20
|
+
const $ = (0, compiler_runtime_1.c)(4);
|
|
21
|
+
let t0;
|
|
22
|
+
if ($[0] !== props.redirectUrl) {
|
|
23
|
+
t0 = async (values) => {
|
|
24
|
+
;
|
|
25
|
+
try {
|
|
26
|
+
const response = await (0, api_1.login)(null, values).then(_temp);
|
|
27
|
+
await config.onLoginDone(response, props.redirectUrl);
|
|
28
|
+
}
|
|
29
|
+
catch (t1) {
|
|
30
|
+
const e = t1;
|
|
31
|
+
config.handleError(e);
|
|
32
|
+
}
|
|
33
|
+
};
|
|
34
|
+
$[0] = props.redirectUrl;
|
|
35
|
+
$[1] = t0;
|
|
36
|
+
}
|
|
37
|
+
else {
|
|
38
|
+
t0 = $[1];
|
|
39
|
+
}
|
|
40
|
+
const onLogin = t0;
|
|
41
|
+
let t1;
|
|
42
|
+
if ($[2] !== onLogin) {
|
|
43
|
+
t1 = react_1.default.createElement(login_layout_1.LoginLayout, { Logo: (_a = config.ui) === null || _a === void 0 ? void 0 : _a.Logo, hideTitle: (_b = config.ui) === null || _b === void 0 ? void 0 : _b.hideTitle, pageTitle: config.pageTitle, subTitle: config.subTitle, title: config.title },
|
|
44
|
+
react_1.default.createElement(login_form_1.LoginForm, { defaultValues: INITIAL_VALUES, onForgottenPassword: config.onForgottenPassword, onSubmit: onLogin }));
|
|
45
|
+
$[2] = onLogin;
|
|
46
|
+
$[3] = t1;
|
|
47
|
+
}
|
|
48
|
+
else {
|
|
49
|
+
t1 = $[3];
|
|
50
|
+
}
|
|
51
|
+
return t1;
|
|
63
52
|
};
|
|
64
53
|
Component.getInitialProps = async (ctx) => {
|
|
65
54
|
const query = ctx.query;
|
|
@@ -68,7 +57,9 @@ const LoginPage = (config) => {
|
|
|
68
57
|
await (0, api_1.getLoggedUser)(ctx);
|
|
69
58
|
if (typeof window === "undefined") {
|
|
70
59
|
if (ctx.res && !ctx.res.headersSent) {
|
|
71
|
-
ctx.res.writeHead(302, {
|
|
60
|
+
ctx.res.writeHead(302, {
|
|
61
|
+
Location: config.loggedUserRedirectUrl
|
|
62
|
+
});
|
|
72
63
|
ctx.res.end();
|
|
73
64
|
}
|
|
74
65
|
}
|
|
@@ -82,9 +73,12 @@ const LoginPage = (config) => {
|
|
|
82
73
|
}
|
|
83
74
|
}
|
|
84
75
|
return {
|
|
85
|
-
redirectUrl: query.redirect
|
|
76
|
+
redirectUrl: query.redirect
|
|
86
77
|
};
|
|
87
78
|
};
|
|
88
79
|
return Component;
|
|
89
80
|
};
|
|
90
81
|
exports.LoginPage = LoginPage;
|
|
82
|
+
function _temp(r) {
|
|
83
|
+
return r.data;
|
|
84
|
+
}
|
|
@@ -1,62 +1,54 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
26
|
-
};
|
|
27
|
-
return function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
})();
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
35
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
6
|
exports.RenewPasswordPage = void 0;
|
|
7
|
+
const compiler_runtime_1 = require("react/compiler-runtime");
|
|
37
8
|
const router_1 = require("@uxf/router");
|
|
38
|
-
const react_1 =
|
|
9
|
+
const react_1 = __importDefault(require("react"));
|
|
39
10
|
const renew_password_form_1 = require("../../forms/renew-password-form");
|
|
40
11
|
const login_layout_1 = require("../../lib/login-layout");
|
|
41
12
|
const INITIAL_VALUES = {
|
|
42
13
|
password: "",
|
|
43
|
-
passwordAgain: ""
|
|
14
|
+
passwordAgain: ""
|
|
44
15
|
};
|
|
45
|
-
const RenewPasswordPage =
|
|
46
|
-
const Component =
|
|
16
|
+
const RenewPasswordPage = config => {
|
|
17
|
+
const Component = props => {
|
|
47
18
|
var _a;
|
|
48
|
-
const
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
19
|
+
const $ = (0, compiler_runtime_1.c)(4);
|
|
20
|
+
let t0;
|
|
21
|
+
if ($[0] !== props.token) {
|
|
22
|
+
t0 = async (values) => {
|
|
23
|
+
await config.onSubmit(props.token, values);
|
|
24
|
+
};
|
|
25
|
+
$[0] = props.token;
|
|
26
|
+
$[1] = t0;
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
t0 = $[1];
|
|
30
|
+
}
|
|
31
|
+
const onSubmit = t0;
|
|
32
|
+
let t1;
|
|
33
|
+
if ($[2] !== onSubmit) {
|
|
34
|
+
t1 = react_1.default.createElement(login_layout_1.LoginLayout, { Logo: (_a = config.ui) === null || _a === void 0 ? void 0 : _a.Logo, pageTitle: config.pageTitle, title: config.title },
|
|
35
|
+
react_1.default.createElement(renew_password_form_1.RenewPasswordForm, { defaultValues: INITIAL_VALUES, onSubmit: onSubmit, passwordRules: config.passwordRules }));
|
|
36
|
+
$[2] = onSubmit;
|
|
37
|
+
$[3] = t1;
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
t1 = $[3];
|
|
41
|
+
}
|
|
42
|
+
return t1;
|
|
53
43
|
};
|
|
54
44
|
Component.getInitialProps = async (ctx) => {
|
|
55
45
|
const token = (0, router_1.queryParamToStringStrict)(ctx.query.token);
|
|
56
46
|
if (config.checkToken) {
|
|
57
47
|
await config.checkToken(ctx, token);
|
|
58
48
|
}
|
|
59
|
-
return {
|
|
49
|
+
return {
|
|
50
|
+
token
|
|
51
|
+
};
|
|
60
52
|
};
|
|
61
53
|
return Component;
|
|
62
54
|
};
|
package/pages/translations.d.ts
CHANGED
package/pages/translations.js
CHANGED
|
@@ -5,6 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.ErrorContent = ErrorContent;
|
|
7
7
|
exports.restrictedPage = restrictedPage;
|
|
8
|
+
const compiler_runtime_1 = require("react/compiler-runtime");
|
|
8
9
|
const is_not_nil_1 = require("@uxf/core/utils/is-not-nil");
|
|
9
10
|
const translations_1 = require("@uxf/core-react/translations");
|
|
10
11
|
const button_1 = require("@uxf/ui/button");
|
|
@@ -12,29 +13,106 @@ const loader_1 = require("@uxf/ui/loader");
|
|
|
12
13
|
const react_1 = __importDefault(require("react"));
|
|
13
14
|
const swr_1 = require("../api/swr");
|
|
14
15
|
function ErrorContent(props) {
|
|
16
|
+
const $ = (0, compiler_runtime_1.c)(17);
|
|
15
17
|
const t = (0, translations_1.useUxfTranslation)();
|
|
16
18
|
if (props.error.code === "UNAUTHORIZED") {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
19
|
+
let t0;
|
|
20
|
+
if ($[0] !== t) {
|
|
21
|
+
t0 = t("uxf-cms-restricted-page:login-required");
|
|
22
|
+
$[0] = t;
|
|
23
|
+
$[1] = t0;
|
|
24
|
+
}
|
|
25
|
+
else {
|
|
26
|
+
t0 = $[1];
|
|
27
|
+
}
|
|
28
|
+
let t1;
|
|
29
|
+
if ($[2] !== t0) {
|
|
30
|
+
t1 = react_1.default.createElement("div", null, t0);
|
|
31
|
+
$[2] = t0;
|
|
32
|
+
$[3] = t1;
|
|
33
|
+
}
|
|
34
|
+
else {
|
|
35
|
+
t1 = $[3];
|
|
36
|
+
}
|
|
37
|
+
let t2;
|
|
38
|
+
if ($[4] === Symbol.for("react.memo_cache_sentinel")) {
|
|
39
|
+
t2 = new URLSearchParams({
|
|
40
|
+
redirect: window.location.href
|
|
41
|
+
});
|
|
42
|
+
$[4] = t2;
|
|
43
|
+
}
|
|
44
|
+
else {
|
|
45
|
+
t2 = $[4];
|
|
46
|
+
}
|
|
47
|
+
const t3 = `/admin/login?${t2}`;
|
|
48
|
+
let t4;
|
|
49
|
+
if ($[5] !== t) {
|
|
50
|
+
t4 = t("uxf-cms-restricted-page:login");
|
|
51
|
+
$[5] = t;
|
|
52
|
+
$[6] = t4;
|
|
53
|
+
}
|
|
54
|
+
else {
|
|
55
|
+
t4 = $[6];
|
|
56
|
+
}
|
|
57
|
+
let t5;
|
|
58
|
+
if ($[7] !== t3 || $[8] !== t4) {
|
|
59
|
+
t5 = react_1.default.createElement(button_1.Button, { href: t3 }, t4);
|
|
60
|
+
$[7] = t3;
|
|
61
|
+
$[8] = t4;
|
|
62
|
+
$[9] = t5;
|
|
63
|
+
}
|
|
64
|
+
else {
|
|
65
|
+
t5 = $[9];
|
|
66
|
+
}
|
|
67
|
+
let t6;
|
|
68
|
+
if ($[10] !== t1 || $[11] !== t5) {
|
|
69
|
+
t6 = react_1.default.createElement(react_1.default.Fragment, null,
|
|
70
|
+
t1,
|
|
71
|
+
t5);
|
|
72
|
+
$[10] = t1;
|
|
73
|
+
$[11] = t5;
|
|
74
|
+
$[12] = t6;
|
|
75
|
+
}
|
|
76
|
+
else {
|
|
77
|
+
t6 = $[12];
|
|
78
|
+
}
|
|
79
|
+
return t6;
|
|
80
|
+
}
|
|
81
|
+
let t0;
|
|
82
|
+
if ($[13] !== t) {
|
|
83
|
+
t0 = t("uxf-cms-restricted-page:unknown-error");
|
|
84
|
+
$[13] = t;
|
|
85
|
+
$[14] = t0;
|
|
86
|
+
}
|
|
87
|
+
else {
|
|
88
|
+
t0 = $[14];
|
|
89
|
+
}
|
|
90
|
+
let t1;
|
|
91
|
+
if ($[15] !== t0) {
|
|
92
|
+
t1 = react_1.default.createElement("div", null, t0);
|
|
93
|
+
$[15] = t0;
|
|
94
|
+
$[16] = t1;
|
|
95
|
+
}
|
|
96
|
+
else {
|
|
97
|
+
t1 = $[16];
|
|
20
98
|
}
|
|
21
|
-
return
|
|
99
|
+
return t1;
|
|
22
100
|
}
|
|
23
101
|
function restrictedPage(Component, config) {
|
|
24
102
|
return function Page(props) {
|
|
25
103
|
const meQuery = (0, swr_1.useCmsMeQuery)();
|
|
26
104
|
const t = (0, translations_1.useUxfTranslation)();
|
|
27
105
|
if (meQuery.isLoading || typeof window === "undefined") {
|
|
28
|
-
return
|
|
29
|
-
react_1.default.createElement(loader_1.Loader, null))
|
|
106
|
+
return react_1.default.createElement("div", { className: "flex min-h-screen w-full items-center justify-center" },
|
|
107
|
+
react_1.default.createElement(loader_1.Loader, null));
|
|
30
108
|
}
|
|
31
109
|
if ((0, is_not_nil_1.isNotNil)(meQuery.error)) {
|
|
32
|
-
return
|
|
33
|
-
react_1.default.createElement(ErrorContent, { error: meQuery.error }))
|
|
110
|
+
return react_1.default.createElement("div", { className: "flex min-h-screen w-full flex-col items-center justify-center gap-4" },
|
|
111
|
+
react_1.default.createElement(ErrorContent, { error: meQuery.error }));
|
|
34
112
|
}
|
|
35
113
|
// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
|
|
36
|
-
if (!config.allowedRole.some(
|
|
37
|
-
return
|
|
114
|
+
if (!config.allowedRole.some(role => { var _a, _b; return (_b = (_a = meQuery.data) === null || _a === void 0 ? void 0 : _a.roles) === null || _b === void 0 ? void 0 : _b.includes(role); })) {
|
|
115
|
+
return react_1.default.createElement("div", { className: "flex min-h-screen w-full items-center justify-center" }, t("uxf-cms-restricted-page:forbidden"));
|
|
38
116
|
}
|
|
39
117
|
return react_1.default.createElement(Component, { ...props });
|
|
40
118
|
};
|
|
@@ -4,14 +4,39 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.useLoggedUser = useLoggedUser;
|
|
7
|
+
const compiler_runtime_1 = require("react/compiler-runtime");
|
|
7
8
|
const swr_1 = __importDefault(require("swr"));
|
|
8
9
|
function useLoggedUser() {
|
|
9
|
-
const
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
10
|
+
const $ = (0, compiler_runtime_1.c)(5);
|
|
11
|
+
let t0;
|
|
12
|
+
if ($[0] === Symbol.for("react.memo_cache_sentinel")) {
|
|
13
|
+
t0 = {
|
|
14
|
+
keepPreviousData: true,
|
|
15
|
+
revalidateIfStale: false,
|
|
16
|
+
revalidateOnFocus: false,
|
|
17
|
+
revalidateOnReconnect: false
|
|
18
|
+
};
|
|
19
|
+
$[0] = t0;
|
|
20
|
+
}
|
|
21
|
+
else {
|
|
22
|
+
t0 = $[0];
|
|
23
|
+
}
|
|
24
|
+
const { data, error, isLoading } = (0, swr_1.default)("/api/cms/user", t0);
|
|
25
|
+
const t1 = data === null || data === void 0 ? void 0 : data.user;
|
|
26
|
+
let t2;
|
|
27
|
+
if ($[1] !== error || $[2] !== isLoading || $[3] !== t1) {
|
|
28
|
+
t2 = {
|
|
29
|
+
data: t1,
|
|
30
|
+
error,
|
|
31
|
+
isLoading
|
|
32
|
+
};
|
|
33
|
+
$[1] = error;
|
|
34
|
+
$[2] = isLoading;
|
|
35
|
+
$[3] = t1;
|
|
36
|
+
$[4] = t2;
|
|
37
|
+
}
|
|
38
|
+
else {
|
|
39
|
+
t2 = $[4];
|
|
40
|
+
}
|
|
41
|
+
return t2;
|
|
17
42
|
}
|
package/translations/cs.json
CHANGED
|
@@ -69,7 +69,8 @@
|
|
|
69
69
|
"uxf-cms-pages-content-builder": {
|
|
70
70
|
"components": {
|
|
71
71
|
"content-header": {
|
|
72
|
-
"confirm-delete-section": "Opravdu chcete smazat tuto sekci?"
|
|
72
|
+
"confirm-delete-section": "Opravdu chcete smazat tuto sekci?",
|
|
73
|
+
"delete-section": "Smazat sekci"
|
|
73
74
|
},
|
|
74
75
|
"header": {
|
|
75
76
|
"save": "Uložit"
|
package/ui/avatar/avatar.js
CHANGED
|
@@ -15,13 +15,14 @@ const AVATAR_SIZES = {
|
|
|
15
15
|
};
|
|
16
16
|
function Avatar(props) {
|
|
17
17
|
var _a, _b, _c;
|
|
18
|
+
const { ref } = props;
|
|
18
19
|
const size = (_a = props.size) !== null && _a !== void 0 ? _a : "default";
|
|
19
20
|
const avatarClassName = (0, cx_1.cx)("cms-avatar", `cms-avatar--size-${size}`, `cms-avatar--variant-${(_b = props.variant) !== null && _b !== void 0 ? _b : "default"}`, props.className);
|
|
20
21
|
const restProps = (0, omit_1.omit)(props, ["ref", "alt", "className", "size", "src", "letters", "variant"]);
|
|
21
22
|
if (props.src) {
|
|
22
|
-
return (react_1.default.createElement("span", { className: avatarClassName, ref:
|
|
23
|
+
return (react_1.default.createElement("span", { className: avatarClassName, ref: ref, ...restProps },
|
|
23
24
|
react_1.default.createElement(raster_image_1.RasterImage, { alt: (_c = props.alt) !== null && _c !== void 0 ? _c : "", className: "cms-avatar__image", height: AVATAR_SIZES[size], loading: "lazy", mode: "cover", src: props.src, width: AVATAR_SIZES[size] })));
|
|
24
25
|
}
|
|
25
|
-
return (react_1.default.createElement("div", { className: avatarClassName, ref:
|
|
26
|
+
return (react_1.default.createElement("div", { className: avatarClassName, ref: ref, ...restProps }, props.letters));
|
|
26
27
|
}
|
|
27
28
|
Avatar.displayName = "CmsAvatar";
|
|
@@ -1,39 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
26
|
-
};
|
|
27
|
-
return function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
})();
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
35
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
6
|
exports.CopyToClipboard = void 0;
|
|
7
|
+
const compiler_runtime_1 = require("react/compiler-runtime");
|
|
37
8
|
const copy_to_clipboard_1 = require("@uxf/core/utils/copy-to-clipboard");
|
|
38
9
|
const noop_1 = require("@uxf/core/utils/noop");
|
|
39
10
|
const translations_1 = require("@uxf/core-react/translations");
|
|
@@ -41,17 +12,59 @@ const button_1 = require("@uxf/ui/button");
|
|
|
41
12
|
const flash_messages_service_1 = require("@uxf/ui/flash-messages/flash-messages-service");
|
|
42
13
|
const icon_1 = require("@uxf/ui/icon");
|
|
43
14
|
const text_input_1 = require("@uxf/ui/text-input");
|
|
44
|
-
const react_1 =
|
|
45
|
-
const CopyToClipboard =
|
|
15
|
+
const react_1 = __importDefault(require("react"));
|
|
16
|
+
const CopyToClipboard = props => {
|
|
17
|
+
const $ = (0, compiler_runtime_1.c)(13);
|
|
46
18
|
const t = (0, translations_1.useUxfTranslation)();
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
(
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
19
|
+
let t0;
|
|
20
|
+
if ($[0] !== props.value || $[1] !== t) {
|
|
21
|
+
t0 = async () => {
|
|
22
|
+
const isCopied = await (0, copy_to_clipboard_1.copyToClipboard)(props.value);
|
|
23
|
+
(0, flash_messages_service_1.flashMessage)({
|
|
24
|
+
variant: isCopied ? "success" : "error",
|
|
25
|
+
message: isCopied ? t("uxf-cms-copy-to-clipboard:text-copied") : t("uxf-cms-copy-to-clipboard:copy-failed")
|
|
26
|
+
});
|
|
27
|
+
};
|
|
28
|
+
$[0] = props.value;
|
|
29
|
+
$[1] = t;
|
|
30
|
+
$[2] = t0;
|
|
31
|
+
}
|
|
32
|
+
else {
|
|
33
|
+
t0 = $[2];
|
|
34
|
+
}
|
|
35
|
+
const onCopy = t0;
|
|
36
|
+
const t1 = props.value === "";
|
|
37
|
+
let t2;
|
|
38
|
+
if ($[3] === Symbol.for("react.memo_cache_sentinel")) {
|
|
39
|
+
t2 = react_1.default.createElement(icon_1.Icon, { className: "w-4", name: "copy" });
|
|
40
|
+
$[3] = t2;
|
|
41
|
+
}
|
|
42
|
+
else {
|
|
43
|
+
t2 = $[3];
|
|
44
|
+
}
|
|
45
|
+
let t3;
|
|
46
|
+
if ($[4] !== onCopy || $[5] !== t1) {
|
|
47
|
+
t3 = react_1.default.createElement(button_1.Button, { className: "size-full rounded-l-none border-none", isDisabled: t1, onClick: onCopy, variant: "secondary" }, t2);
|
|
48
|
+
$[4] = onCopy;
|
|
49
|
+
$[5] = t1;
|
|
50
|
+
$[6] = t3;
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
t3 = $[6];
|
|
54
|
+
}
|
|
55
|
+
let t4;
|
|
56
|
+
if ($[7] !== props.disabled || $[8] !== props.label || $[9] !== props.name || $[10] !== props.value || $[11] !== t3) {
|
|
57
|
+
t4 = react_1.default.createElement(text_input_1.TextInput, { isDisabled: props.disabled, label: props.label, name: props.name, onChange: noop_1.noop, rightAddon: t3, value: props.value });
|
|
58
|
+
$[7] = props.disabled;
|
|
59
|
+
$[8] = props.label;
|
|
60
|
+
$[9] = props.name;
|
|
61
|
+
$[10] = props.value;
|
|
62
|
+
$[11] = t3;
|
|
63
|
+
$[12] = t4;
|
|
64
|
+
}
|
|
65
|
+
else {
|
|
66
|
+
t4 = $[12];
|
|
67
|
+
}
|
|
68
|
+
return t4;
|
|
56
69
|
};
|
|
57
70
|
exports.CopyToClipboard = CopyToClipboard;
|