pds-dev-kit-web 1.7.2 → 1.7.3
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/src/desktop/components/DynamicDesktopNavBar/components/MenuItemNav/MenuItemNav.js +2 -0
- package/dist/src/desktop/components/DynamicDesktopNavBar/components/MenuItemNav/components/PageMenuItemNav.d.ts +12 -0
- package/dist/src/desktop/components/DynamicDesktopNavBar/components/MenuItemNav/components/PageMenuItemNav.js +51 -0
- package/dist/src/desktop/components/DynamicDesktopNavBar/types.d.ts +2 -1
- package/package.json +1 -1
- package/release-note.md +3 -7
package/dist/src/desktop/components/DynamicDesktopNavBar/components/MenuItemNav/MenuItemNav.js
CHANGED
|
@@ -43,6 +43,7 @@ var hybrid_1 = require("../../../../../hybrid");
|
|
|
43
43
|
var ContextMenuNavs_1 = require("../ContextMenuNavs");
|
|
44
44
|
var DisplayOnlyMenuItemNav_1 = __importDefault(require("./components/DisplayOnlyMenuItemNav"));
|
|
45
45
|
var InternalLinkMenuItemNav_1 = __importDefault(require("./components/InternalLinkMenuItemNav"));
|
|
46
|
+
var PageMenuItemNav_1 = __importDefault(require("./components/PageMenuItemNav"));
|
|
46
47
|
var PAppMenuItemNav_1 = __importDefault(require("./components/PAppMenuItemNav"));
|
|
47
48
|
var WebMenuItemNav_1 = __importDefault(require("./components/WebMenuItemNav"));
|
|
48
49
|
// NOTE: 서버에서 itemType으로 enum값이 잘 오면 아래 불필요한 케이스/default 간소화
|
|
@@ -61,6 +62,7 @@ function MenuItemNav(_a) {
|
|
|
61
62
|
menu.menuItemType === 'NAV_P_APP' && menu.pAppCode && (react_1.default.createElement(PAppMenuItemNav_1.default, { menu: __assign(__assign({}, menu), { pAppCode: menu.pAppCode }), showMenuAsIcon: showMenuAsIcon })),
|
|
62
63
|
menu.menuItemType === 'WEB_LINK' && menu.conversionLinkSrc && (react_1.default.createElement(WebMenuItemNav_1.default, { openNewTab: true, menu: __assign(__assign({}, menu), { conversionLinkSrc: menu.conversionLinkSrc }), showMenuAsIcon: showMenuAsIcon })),
|
|
63
64
|
menu.menuItemType === 'INTERNAL_LINK' && menu.conversionLinkSrc && (react_1.default.createElement(InternalLinkMenuItemNav_1.default, { menu: __assign(__assign({}, menu), { conversionLinkSrc: menu.conversionLinkSrc }), showMenuAsIcon: showMenuAsIcon })),
|
|
65
|
+
menu.menuItemType === 'NAV_PAGE' && menu.slug && (react_1.default.createElement(PageMenuItemNav_1.default, { menu: __assign(__assign({}, menu), { slug: menu.slug }), showMenuAsIcon: showMenuAsIcon })),
|
|
64
66
|
menu.menuItemType === 'DISPLAY_ONLY' && (react_1.default.createElement(DisplayOnlyMenuItemNav_1.default, { menu: __assign(__assign({}, menu), { conversionLinkSrc: '' }), showMenuAsIcon: showMenuAsIcon })),
|
|
65
67
|
isContextOpen && menu.parsedNodes.length > 0 && (react_1.default.createElement(ContextMenuNavs_1.ContextMenuNavs, { parentRef: ref }, menu.parsedNodes.map(function (nav, index) { return (react_1.default.createElement(ContextMenuNavs_1.ContextMenuItemNav, { key: index, menu: nav })); })))),
|
|
66
68
|
showMenuAsIcon ? (react_1.default.createElement(hybrid_1.Spacing, { spacingType: "width", size: "spacing_b" })) : (react_1.default.createElement(hybrid_1.Spacing, { spacingType: "width", size: "spacing_f" }))));
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { ParsedNode } from '../../../types';
|
|
3
|
+
declare type WithRequired<T, K extends keyof T> = T & {
|
|
4
|
+
[P in K]-?: T[P];
|
|
5
|
+
};
|
|
6
|
+
declare type Props = {
|
|
7
|
+
menu: WithRequired<ParsedNode, 'slug'>;
|
|
8
|
+
showMenuAsIcon?: boolean;
|
|
9
|
+
isContextMenu?: boolean;
|
|
10
|
+
};
|
|
11
|
+
declare function PageMenuItemNav({ menu, showMenuAsIcon, isContextMenu }: Props): JSX.Element;
|
|
12
|
+
export default PageMenuItemNav;
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
+
}) : (function(o, m, k, k2) {
|
|
6
|
+
if (k2 === undefined) k2 = k;
|
|
7
|
+
o[k2] = m[k];
|
|
8
|
+
}));
|
|
9
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
10
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
11
|
+
}) : function(o, v) {
|
|
12
|
+
o["default"] = v;
|
|
13
|
+
});
|
|
14
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
15
|
+
if (mod && mod.__esModule) return mod;
|
|
16
|
+
var result = {};
|
|
17
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
18
|
+
__setModuleDefault(result, mod);
|
|
19
|
+
return result;
|
|
20
|
+
};
|
|
21
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
22
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
23
|
+
};
|
|
24
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
|
+
var react_1 = __importStar(require("react"));
|
|
26
|
+
var react_router_dom_1 = require("react-router-dom");
|
|
27
|
+
var Navigations_1 = require("../../../../../../common/components/Navigations");
|
|
28
|
+
var DynamicDesktopNavBar_1 = require("../../../DynamicDesktopNavBar");
|
|
29
|
+
var IconNav_1 = __importDefault(require("../../IconNav"));
|
|
30
|
+
var ImageIconNav_1 = __importDefault(require("../../ImageIconNav"));
|
|
31
|
+
function PageMenuItemNav(_a) {
|
|
32
|
+
var menu = _a.menu, showMenuAsIcon = _a.showMenuAsIcon, _b = _a.isContextMenu, isContextMenu = _b === void 0 ? false : _b;
|
|
33
|
+
var _c = (0, react_1.useContext)(DynamicDesktopNavBar_1.BasePathContext), basePath = _c.basePath, activeMode = _c.activeMode;
|
|
34
|
+
var activeMatch = (0, react_router_dom_1.useRouteMatch)(basePath + "/pages/:activeKey");
|
|
35
|
+
var isActive = (0, react_1.useMemo)(function () {
|
|
36
|
+
if (activeMode === 'BY_CLICK') {
|
|
37
|
+
return false;
|
|
38
|
+
}
|
|
39
|
+
return (activeMatch === null || activeMatch === void 0 ? void 0 : activeMatch.params.activeKey) === menu.slug;
|
|
40
|
+
}, [activeMode, menu, activeMatch]);
|
|
41
|
+
if (showMenuAsIcon) {
|
|
42
|
+
if (menu.iconSrc) {
|
|
43
|
+
return (react_1.default.createElement(ImageIconNav_1.default, { to: basePath + "/pages/" + menu.slug, iconSrc: menu.iconSrc, openNewTab: false }));
|
|
44
|
+
}
|
|
45
|
+
if (menu.iconName) {
|
|
46
|
+
return (react_1.default.createElement(IconNav_1.default, { to: basePath + "/pages/" + menu.slug, iconName: menu.iconName, openNewTab: false }));
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
return isContextMenu ? (react_1.default.createElement(Navigations_1.ContextTextLabelNav, { isActive: isActive, preventLineChange: true, openNewTab: false, to: basePath + "/pages/" + menu.slug, text: menu.name })) : (react_1.default.createElement(Navigations_1.TextLabelNav, { isActive: isActive, preventLineChange: true, openNewTab: false, to: basePath + "/pages/" + menu.slug, text: menu.name }));
|
|
50
|
+
}
|
|
51
|
+
exports.default = PageMenuItemNav;
|
|
@@ -8,7 +8,8 @@ export declare type ParsedNode = {
|
|
|
8
8
|
iconName?: PDSIconType;
|
|
9
9
|
visibilityLevel: string;
|
|
10
10
|
pAppCode?: string;
|
|
11
|
+
slug?: string;
|
|
11
12
|
conversionLinkSrc?: string;
|
|
12
13
|
parsedNodes: Array<ParsedNode>;
|
|
13
14
|
};
|
|
14
|
-
export declare type menuItemTypes = 'NAV_P_APP' | 'WEB_LINK' | 'INTERNAL_LINK' | 'DISPLAY_ONLY';
|
|
15
|
+
export declare type menuItemTypes = 'NAV_P_APP' | 'WEB_LINK' | 'INTERNAL_LINK' | 'DISPLAY_ONLY' | 'NAV_PAGE';
|
package/package.json
CHANGED
package/release-note.md
CHANGED
|
@@ -1,10 +1,6 @@
|
|
|
1
1
|
# PDS-DEV-KIT-WEB Release Notes
|
|
2
|
-
## [v1.7.
|
|
2
|
+
## [v1.7.3]
|
|
3
3
|
|
|
4
4
|
### Component
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
* Icon
|
|
8
|
-
* ic_analytics_search_tools line icon 추가
|
|
9
|
-
* ic_dynamic_layout line icon 추가
|
|
10
|
-
* ic_pages line icon 추가
|
|
5
|
+
* DynamicDesktopNavBar
|
|
6
|
+
* nav_page 이동 유형 추가
|