ydb-ui-components 3.6.0 → 4.0.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.
Files changed (84) hide show
  1. package/build/cjs/components/NavigationTree/EmptyView/EmptyView.d.ts +1 -1
  2. package/build/cjs/components/NavigationTree/EmptyView/EmptyView.js +12 -28
  3. package/build/cjs/components/NavigationTree/ErrorView/ErrorView.d.ts +1 -1
  4. package/build/cjs/components/NavigationTree/ErrorView/ErrorView.js +12 -28
  5. package/build/cjs/components/NavigationTree/LoaderView/LoaderView.d.ts +1 -1
  6. package/build/cjs/components/NavigationTree/LoaderView/LoaderView.js +11 -30
  7. package/build/cjs/components/NavigationTree/NavigationTree.js +36 -116
  8. package/build/cjs/components/NavigationTree/NavigationTreeNode.d.ts +2 -2
  9. package/build/cjs/components/NavigationTree/NavigationTreeNode.js +86 -173
  10. package/build/cjs/components/NavigationTree/i18n/index.d.ts +1 -1
  11. package/build/cjs/components/NavigationTree/i18n/index.js +7 -25
  12. package/build/cjs/components/NavigationTree/index.d.ts +1 -1
  13. package/build/cjs/components/NavigationTree/index.js +3 -30
  14. package/build/cjs/components/NavigationTree/state.d.ts +31 -5
  15. package/build/cjs/components/NavigationTree/state.js +58 -122
  16. package/build/cjs/components/NavigationTree/types.d.ts +3 -3
  17. package/build/cjs/components/NavigationTree/types.js +1 -4
  18. package/build/cjs/components/NavigationTree/utils.d.ts +1 -1
  19. package/build/cjs/components/NavigationTree/utils.js +42 -72
  20. package/build/cjs/components/TreeView/TreeView.d.ts +2 -2
  21. package/build/cjs/components/TreeView/TreeView.js +43 -104
  22. package/build/cjs/components/TreeView/index.js +3 -17
  23. package/build/cjs/components/icons/ColumnTable.js +6 -22
  24. package/build/cjs/components/icons/Database.js +6 -20
  25. package/build/cjs/components/icons/ExternalDataSource.js +6 -22
  26. package/build/cjs/components/icons/ExternalTable.js +6 -22
  27. package/build/cjs/components/icons/Folder.js +6 -20
  28. package/build/cjs/components/icons/FolderOpen.js +6 -20
  29. package/build/cjs/components/icons/Index.js +6 -22
  30. package/build/cjs/components/icons/Table.js +6 -22
  31. package/build/cjs/components/icons/Topic.js +6 -36
  32. package/build/cjs/index.d.ts +0 -1
  33. package/build/cjs/index.js +4 -43
  34. package/build/cjs/utils/cn.d.ts +1 -0
  35. package/build/cjs/utils/cn.js +5 -0
  36. package/build/esm/components/NavigationTree/EmptyView/EmptyView.d.ts +1 -1
  37. package/build/esm/components/NavigationTree/EmptyView/EmptyView.js +7 -13
  38. package/build/esm/components/NavigationTree/ErrorView/ErrorView.d.ts +1 -1
  39. package/build/esm/components/NavigationTree/ErrorView/ErrorView.js +7 -13
  40. package/build/esm/components/NavigationTree/LoaderView/LoaderView.d.ts +1 -1
  41. package/build/esm/components/NavigationTree/LoaderView/LoaderView.js +6 -14
  42. package/build/esm/components/NavigationTree/NavigationTree.js +29 -98
  43. package/build/esm/components/NavigationTree/NavigationTreeNode.d.ts +2 -2
  44. package/build/esm/components/NavigationTree/NavigationTreeNode.js +76 -142
  45. package/build/esm/components/NavigationTree/i18n/index.d.ts +1 -1
  46. package/build/esm/components/NavigationTree/i18n/index.js +3 -6
  47. package/build/esm/components/NavigationTree/index.d.ts +1 -1
  48. package/build/esm/components/NavigationTree/index.js +0 -1
  49. package/build/esm/components/NavigationTree/state.d.ts +31 -5
  50. package/build/esm/components/NavigationTree/state.js +51 -106
  51. package/build/esm/components/NavigationTree/types.d.ts +3 -3
  52. package/build/esm/components/NavigationTree/types.js +1 -1
  53. package/build/esm/components/NavigationTree/utils.d.ts +1 -1
  54. package/build/esm/components/NavigationTree/utils.js +37 -62
  55. package/build/esm/components/TreeView/TreeView.d.ts +2 -2
  56. package/build/esm/components/TreeView/TreeView.js +38 -84
  57. package/build/esm/components/TreeView/index.js +1 -1
  58. package/build/esm/components/icons/ColumnTable.js +3 -12
  59. package/build/esm/components/icons/Database.js +3 -10
  60. package/build/esm/components/icons/ExternalDataSource.js +3 -12
  61. package/build/esm/components/icons/ExternalTable.js +3 -12
  62. package/build/esm/components/icons/Folder.js +3 -10
  63. package/build/esm/components/icons/FolderOpen.js +3 -10
  64. package/build/esm/components/icons/Index.js +3 -12
  65. package/build/esm/components/icons/Table.js +3 -12
  66. package/build/esm/components/icons/Topic.js +3 -26
  67. package/build/esm/index.d.ts +0 -1
  68. package/build/esm/index.js +0 -1
  69. package/build/esm/utils/cn.d.ts +1 -0
  70. package/build/esm/utils/cn.js +2 -0
  71. package/package.json +52 -29
  72. package/CHANGELOG.md +0 -233
  73. package/build/cjs/components/i18n.d.ts +0 -2
  74. package/build/cjs/components/i18n.js +0 -19
  75. package/build/cjs/utils/configure.d.ts +0 -12
  76. package/build/cjs/utils/configure.js +0 -42
  77. package/build/cjs/utils/index.d.ts +0 -1
  78. package/build/cjs/utils/index.js +0 -19
  79. package/build/esm/components/i18n.d.ts +0 -2
  80. package/build/esm/components/i18n.js +0 -9
  81. package/build/esm/utils/configure.d.ts +0 -12
  82. package/build/esm/utils/configure.js +0 -26
  83. package/build/esm/utils/index.d.ts +0 -1
  84. package/build/esm/utils/index.js +0 -1
@@ -1,5 +1,5 @@
1
1
  /// <reference types="react" />
2
- import './EmptyView.scss';
2
+ import './EmptyView.css';
3
3
  interface EmptyViewProps {
4
4
  level?: number;
5
5
  }
@@ -1,30 +1,14 @@
1
1
  "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.EmptyView = EmptyView;
7
-
8
- var _react = _interopRequireDefault(require("react"));
9
-
10
- var _bemCnLite = _interopRequireDefault(require("bem-cn-lite"));
11
-
12
- var _i18n = _interopRequireDefault(require("../i18n"));
13
-
14
- var _TreeView = require("../../TreeView/TreeView");
15
-
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EmptyView = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const jsx_runtime_1 = require("react/jsx-runtime");
6
+ const cn_1 = require("../../../utils/cn");
7
+ const TreeView_1 = require("../../TreeView/TreeView");
8
+ const i18n_1 = tslib_1.__importDefault(require("../i18n"));
16
9
  require("./EmptyView.css");
17
-
18
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
19
-
20
- var b = (0, _bemCnLite["default"])('ydb-navigation-tree-view-empty');
21
-
22
- function EmptyView(_ref) {
23
- var level = _ref.level;
24
- return /*#__PURE__*/_react["default"].createElement(_TreeView.TreeView, {
25
- name: /*#__PURE__*/_react["default"].createElement("span", {
26
- className: b()
27
- }, (0, _i18n["default"])('label_empty')),
28
- level: level
29
- });
30
- }
10
+ const b = (0, cn_1.block)('ydb-navigation-tree-view-empty');
11
+ function EmptyView({ level }) {
12
+ return (0, jsx_runtime_1.jsx)(TreeView_1.TreeView, { name: (0, jsx_runtime_1.jsx)("span", { className: b(), children: (0, i18n_1.default)('label_empty') }), level: level });
13
+ }
14
+ exports.EmptyView = EmptyView;
@@ -1,5 +1,5 @@
1
1
  /// <reference types="react" />
2
- import './ErrorView.scss';
2
+ import './ErrorView.css';
3
3
  interface ErrorViewProps {
4
4
  level?: number;
5
5
  }
@@ -1,30 +1,14 @@
1
1
  "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.ErrorView = ErrorView;
7
-
8
- var _react = _interopRequireDefault(require("react"));
9
-
10
- var _bemCnLite = _interopRequireDefault(require("bem-cn-lite"));
11
-
12
- var _i18n = _interopRequireDefault(require("../i18n"));
13
-
14
- var _TreeView = require("../../TreeView/TreeView");
15
-
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ErrorView = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const jsx_runtime_1 = require("react/jsx-runtime");
6
+ const cn_1 = require("../../../utils/cn");
7
+ const TreeView_1 = require("../../TreeView/TreeView");
8
+ const i18n_1 = tslib_1.__importDefault(require("../i18n"));
16
9
  require("./ErrorView.css");
17
-
18
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
19
-
20
- var b = (0, _bemCnLite["default"])('ydb-navigation-tree-view-error');
21
-
22
- function ErrorView(_ref) {
23
- var level = _ref.level;
24
- return /*#__PURE__*/_react["default"].createElement(_TreeView.TreeView, {
25
- name: /*#__PURE__*/_react["default"].createElement("span", {
26
- className: b()
27
- }, (0, _i18n["default"])('label_error')),
28
- level: level
29
- });
30
- }
10
+ const b = (0, cn_1.block)('ydb-navigation-tree-view-error');
11
+ function ErrorView({ level }) {
12
+ return (0, jsx_runtime_1.jsx)(TreeView_1.TreeView, { name: (0, jsx_runtime_1.jsx)("span", { className: b(), children: (0, i18n_1.default)('label_error') }), level: level });
13
+ }
14
+ exports.ErrorView = ErrorView;
@@ -1,5 +1,5 @@
1
1
  /// <reference types="react" />
2
- import './LoaderView.scss';
2
+ import './LoaderView.css';
3
3
  interface LoaderViewProps {
4
4
  level?: number;
5
5
  }
@@ -1,32 +1,13 @@
1
1
  "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.LoaderView = LoaderView;
7
-
8
- var _react = _interopRequireDefault(require("react"));
9
-
10
- var _bemCnLite = _interopRequireDefault(require("bem-cn-lite"));
11
-
12
- var _uikit = require("@gravity-ui/uikit");
13
-
14
- var _TreeView = require("../../TreeView/TreeView");
15
-
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.LoaderView = void 0;
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ const uikit_1 = require("@gravity-ui/uikit");
6
+ const cn_1 = require("../../../utils/cn");
7
+ const TreeView_1 = require("../../TreeView/TreeView");
16
8
  require("./LoaderView.css");
17
-
18
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
19
-
20
- var b = (0, _bemCnLite["default"])('ydb-navigation-tree-view-loader');
21
-
22
- function LoaderView(_ref) {
23
- var level = _ref.level;
24
- return /*#__PURE__*/_react["default"].createElement(_TreeView.TreeView, {
25
- name: /*#__PURE__*/_react["default"].createElement("div", {
26
- className: b()
27
- }, /*#__PURE__*/_react["default"].createElement(_uikit.Spin, {
28
- size: "xs"
29
- })),
30
- level: level
31
- });
32
- }
9
+ const b = (0, cn_1.block)('ydb-navigation-tree-view-loader');
10
+ function LoaderView({ level }) {
11
+ return ((0, jsx_runtime_1.jsx)(TreeView_1.TreeView, { name: (0, jsx_runtime_1.jsx)("div", { className: b(), children: (0, jsx_runtime_1.jsx)(uikit_1.Spin, { size: "xs" }) }), level: level }));
12
+ }
13
+ exports.LoaderView = LoaderView;
@@ -1,119 +1,39 @@
1
1
  "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.NavigationTree = NavigationTree;
7
-
8
- var _react = _interopRequireDefault(require("react"));
9
-
10
- var _reactList = _interopRequireDefault(require("react-list"));
11
-
12
- var _state = require("./state");
13
-
14
- var _utils = require("./utils");
15
-
16
- var _NavigationTreeNode = require("./NavigationTreeNode");
17
-
18
- var _LoaderView = require("./LoaderView/LoaderView");
19
-
20
- var _ErrorView = require("./ErrorView/ErrorView");
21
-
22
- var _EmptyView = require("./EmptyView/EmptyView");
23
-
24
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
25
-
26
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
27
-
28
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
29
-
30
- function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
31
-
32
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
33
-
34
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
35
-
36
- function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
37
-
38
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
39
-
40
- var renderServiceNode = function renderServiceNode(node) {
41
- var key = "".concat(node.path, "|").concat(node.status);
42
-
43
- if (node.status === 'loading') {
44
- return /*#__PURE__*/_react["default"].createElement(_LoaderView.LoaderView, {
45
- key: key,
46
- level: node.level
47
- });
48
- }
49
-
50
- if (node.status === 'error') {
51
- return /*#__PURE__*/_react["default"].createElement(_ErrorView.ErrorView, {
52
- key: key,
53
- level: node.level
54
- });
55
- }
56
-
57
- return /*#__PURE__*/_react["default"].createElement(_EmptyView.EmptyView, {
58
- key: key,
59
- level: node.level
60
- });
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NavigationTree = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const jsx_runtime_1 = require("react/jsx-runtime");
6
+ const react_1 = tslib_1.__importDefault(require("react"));
7
+ const react_list_1 = tslib_1.__importDefault(require("react-list"));
8
+ const EmptyView_1 = require("./EmptyView/EmptyView");
9
+ const ErrorView_1 = require("./ErrorView/ErrorView");
10
+ const LoaderView_1 = require("./LoaderView/LoaderView");
11
+ const NavigationTreeNode_1 = require("./NavigationTreeNode");
12
+ const state_1 = require("./state");
13
+ const utils_1 = require("./utils");
14
+ const renderServiceNode = (node) => {
15
+ const key = `${node.path}|${node.status}`;
16
+ if (node.status === 'loading') {
17
+ return (0, jsx_runtime_1.jsx)(LoaderView_1.LoaderView, { level: node.level }, key);
18
+ }
19
+ if (node.status === 'error') {
20
+ return (0, jsx_runtime_1.jsx)(ErrorView_1.ErrorView, { level: node.level }, key);
21
+ }
22
+ return (0, jsx_runtime_1.jsx)(EmptyView_1.EmptyView, { level: node.level }, key);
61
23
  };
62
-
63
- function NavigationTree(_ref) {
64
- var partialRootState = _ref.rootState,
65
- fetchPath = _ref.fetchPath,
66
- getActions = _ref.getActions,
67
- renderAdditionalNodeElements = _ref.renderAdditionalNodeElements,
68
- activePath = _ref.activePath,
69
- onActivePathUpdate = _ref.onActivePathUpdate,
70
- _ref$cache = _ref.cache,
71
- cache = _ref$cache === void 0 ? true : _ref$cache,
72
- _ref$virtualize = _ref.virtualize,
73
- virtualize = _ref$virtualize === void 0 ? false : _ref$virtualize;
74
-
75
- var _React$useReducer = _react["default"].useReducer(_state.reducer, _defineProperty({}, partialRootState.path, (0, _state.getNodeState)(partialRootState))),
76
- _React$useReducer2 = _slicedToArray(_React$useReducer, 2),
77
- state = _React$useReducer2[0],
78
- dispatch = _React$useReducer2[1];
79
-
80
- var nodesList = _react["default"].useMemo(function () {
81
- return (0, _state.selectTreeAsList)(state, partialRootState.path);
82
- }, [state]);
83
-
84
- var renderNode = function renderNode(node) {
85
- return /*#__PURE__*/_react["default"].createElement(_NavigationTreeNode.NavigationTreeNode, {
86
- key: node.path,
87
- state: state,
88
- path: node.path,
89
- activePath: activePath,
90
- fetchPath: fetchPath,
91
- dispatch: dispatch,
92
- onActivate: onActivePathUpdate,
93
- getActions: getActions,
94
- renderAdditionalNodeElements: renderAdditionalNodeElements,
95
- cache: cache,
96
- level: node.level
24
+ function NavigationTree({ rootState: partialRootState, fetchPath, getActions, renderAdditionalNodeElements, activePath, onActivePathUpdate, cache = true, virtualize = false, }) {
25
+ const [state, dispatch] = react_1.default.useReducer(state_1.reducer, {
26
+ [partialRootState.path]: (0, state_1.getNodeState)(partialRootState),
97
27
  });
98
- };
99
-
100
- var renderVirtualizedTree = function renderVirtualizedTree() {
101
- return /*#__PURE__*/_react["default"].createElement(_reactList["default"], {
102
- type: "uniform",
103
- length: nodesList.length,
104
- useStaticSize: true,
105
- itemRenderer: function itemRenderer(index) {
106
- var node = nodesList[index];
107
- return (0, _utils.isServiceNode)(node) ? renderServiceNode(node) : renderNode(node);
108
- }
109
- });
110
- };
111
-
112
- var renderSimpleTree = function renderSimpleTree() {
113
- return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, nodesList.map(function (node) {
114
- return (0, _utils.isServiceNode)(node) ? renderServiceNode(node) : renderNode(node);
115
- }));
116
- };
117
-
118
- return virtualize ? renderVirtualizedTree() : renderSimpleTree();
119
- }
28
+ const nodesList = react_1.default.useMemo(() => (0, state_1.selectTreeAsList)(state, partialRootState.path), [partialRootState.path, state]);
29
+ const renderNode = (node) => {
30
+ return ((0, jsx_runtime_1.jsx)(NavigationTreeNode_1.NavigationTreeNode, { state: state, path: node.path, activePath: activePath, fetchPath: fetchPath, dispatch: dispatch, onActivate: onActivePathUpdate, getActions: getActions, renderAdditionalNodeElements: renderAdditionalNodeElements, cache: cache, level: node.level }, node.path));
31
+ };
32
+ const renderVirtualizedTree = () => ((0, jsx_runtime_1.jsx)(react_list_1.default, { type: "uniform", length: nodesList.length, useStaticSize: true, itemRenderer: (index) => {
33
+ const node = nodesList[index];
34
+ return (0, utils_1.isServiceNode)(node) ? renderServiceNode(node) : renderNode(node);
35
+ } }));
36
+ const renderSimpleTree = () => ((0, jsx_runtime_1.jsx)(react_1.default.Fragment, { children: nodesList.map((node) => (0, utils_1.isServiceNode)(node) ? renderServiceNode(node) : renderNode(node)) }));
37
+ return virtualize ? renderVirtualizedTree() : renderSimpleTree();
38
+ }
39
+ exports.NavigationTree = NavigationTree;
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
- import { NavigationTreeState, NavigationTreeProps } from './types';
3
- import { NavigationTreeAction } from './state';
2
+ import type { NavigationTreeAction } from './state';
3
+ import type { NavigationTreeProps, NavigationTreeState } from './types';
4
4
  export interface NavigationTreeNodeProps {
5
5
  path: string;
6
6
  fetchPath: NavigationTreeProps['fetchPath'];
@@ -1,179 +1,92 @@
1
1
  "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.NavigationTreeNode = NavigationTreeNode;
7
-
8
- var _react = _interopRequireDefault(require("react"));
9
-
10
- var _state = require("./state");
11
-
12
- var _Database = require("../icons/Database");
13
-
14
- var _Folder = require("../icons/Folder");
15
-
16
- var _FolderOpen = require("../icons/FolderOpen");
17
-
18
- var _Table = require("../icons/Table");
19
-
20
- var _Topic = require("../icons/Topic");
21
-
22
- var _Index = require("../icons/Index");
23
-
24
- var _ColumnTable = require("../icons/ColumnTable");
25
-
26
- var _ExternalTable = require("../icons/ExternalTable");
27
-
28
- var _ExternalDataSource = require("../icons/ExternalDataSource");
29
-
30
- var _TreeView = require("../TreeView/TreeView");
31
-
32
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
33
-
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NavigationTreeNode = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const jsx_runtime_1 = require("react/jsx-runtime");
6
+ const react_1 = tslib_1.__importDefault(require("react"));
7
+ const TreeView_1 = require("../TreeView/TreeView");
8
+ const ColumnTable_1 = require("../icons/ColumnTable");
9
+ const Database_1 = require("../icons/Database");
10
+ const ExternalDataSource_1 = require("../icons/ExternalDataSource");
11
+ const ExternalTable_1 = require("../icons/ExternalTable");
12
+ const Folder_1 = require("../icons/Folder");
13
+ const FolderOpen_1 = require("../icons/FolderOpen");
14
+ const Index_1 = require("../icons/Index");
15
+ const Table_1 = require("../icons/Table");
16
+ const Topic_1 = require("../icons/Topic");
17
+ const state_1 = require("./state");
34
18
  function renderIcon(type, collapsed) {
35
- switch (type) {
36
- case 'database':
37
- // this icon is larger than the others, therefore 14 for a better fit
38
- return /*#__PURE__*/_react["default"].createElement(_Database.DatabaseIcon, {
39
- height: 14
40
- });
41
-
42
- case 'directory':
43
- return collapsed ? /*#__PURE__*/_react["default"].createElement(_Folder.FolderIcon, {
44
- height: 16
45
- }) : /*#__PURE__*/_react["default"].createElement(_FolderOpen.FolderOpenIcon, {
46
- height: 16
47
- });
48
-
49
- case 'index':
50
- return /*#__PURE__*/_react["default"].createElement(_Index.IndexIcon, {
51
- height: 16
52
- });
53
-
54
- case 'table':
55
- case 'index_table':
56
- return /*#__PURE__*/_react["default"].createElement(_Table.TableIcon, {
57
- height: 16
58
- });
59
-
60
- case 'column_table':
61
- return /*#__PURE__*/_react["default"].createElement(_ColumnTable.ColumnTableIcon, {
62
- height: 16
63
- });
64
-
65
- case 'stream':
66
- case 'topic':
67
- return /*#__PURE__*/_react["default"].createElement(_Topic.TopicIcon, {
68
- height: 16
69
- });
70
-
71
- case 'external_table':
72
- return /*#__PURE__*/_react["default"].createElement(_ExternalTable.ExternalTableIcon, {
73
- height: 16
74
- });
75
-
76
- case 'external_data_source':
77
- return /*#__PURE__*/_react["default"].createElement(_ExternalDataSource.ExternalDataSourceIcon, {
78
- height: 16
79
- });
80
-
81
- default:
82
- return null;
83
- }
19
+ switch (type) {
20
+ case 'database':
21
+ // this icon is larger than the others, therefore 14 for a better fit
22
+ return (0, jsx_runtime_1.jsx)(Database_1.DatabaseIcon, { height: 14 });
23
+ case 'directory':
24
+ return collapsed ? (0, jsx_runtime_1.jsx)(Folder_1.FolderIcon, { height: 16 }) : (0, jsx_runtime_1.jsx)(FolderOpen_1.FolderOpenIcon, { height: 16 });
25
+ case 'index':
26
+ return (0, jsx_runtime_1.jsx)(Index_1.IndexIcon, { height: 16 });
27
+ case 'table':
28
+ case 'index_table':
29
+ return (0, jsx_runtime_1.jsx)(Table_1.TableIcon, { height: 16 });
30
+ case 'column_table':
31
+ return (0, jsx_runtime_1.jsx)(ColumnTable_1.ColumnTableIcon, { height: 16 });
32
+ case 'stream':
33
+ case 'topic':
34
+ return (0, jsx_runtime_1.jsx)(Topic_1.TopicIcon, { height: 16 });
35
+ case 'external_table':
36
+ return (0, jsx_runtime_1.jsx)(ExternalTable_1.ExternalTableIcon, { height: 16 });
37
+ case 'external_data_source':
38
+ return (0, jsx_runtime_1.jsx)(ExternalDataSource_1.ExternalDataSourceIcon, { height: 16 });
39
+ default:
40
+ return null;
41
+ }
84
42
  }
85
-
86
- function NavigationTreeNode(_ref) {
87
- var path = _ref.path,
88
- fetchPath = _ref.fetchPath,
89
- activePath = _ref.activePath,
90
- state = _ref.state,
91
- level = _ref.level,
92
- dispatch = _ref.dispatch,
93
- children = _ref.children,
94
- onActivate = _ref.onActivate,
95
- getActions = _ref.getActions,
96
- renderAdditionalNodeElements = _ref.renderAdditionalNodeElements,
97
- cache = _ref.cache;
98
- var nodeState = state[path];
99
-
100
- _react["default"].useEffect(function () {
101
- if (nodeState.collapsed) {
102
- if (!cache) {
43
+ function NavigationTreeNode({ path, fetchPath, activePath, state, level, dispatch, children, onActivate, getActions, renderAdditionalNodeElements, cache, }) {
44
+ const nodeState = state[path];
45
+ react_1.default.useEffect(() => {
46
+ if (nodeState.collapsed) {
47
+ if (!cache) {
48
+ dispatch({
49
+ type: state_1.NavigationTreeActionType.ResetNode,
50
+ payload: { path },
51
+ });
52
+ }
53
+ return;
54
+ }
55
+ if (nodeState.loaded || nodeState.loading) {
56
+ return;
57
+ }
103
58
  dispatch({
104
- type: _state.NavigationTreeActionType.ResetNode,
105
- payload: {
106
- path: path
107
- }
59
+ type: state_1.NavigationTreeActionType.StartLoading,
60
+ payload: { path },
108
61
  });
109
- }
110
-
111
- return;
112
- }
113
-
114
- if (nodeState.loaded || nodeState.loading) {
115
- return;
116
- }
117
-
118
- dispatch({
119
- type: _state.NavigationTreeActionType.StartLoading,
120
- payload: {
121
- path: path
122
- }
123
- });
124
- fetchPath(path).then(function (data) {
125
- dispatch({
126
- type: _state.NavigationTreeActionType.FinishLoading,
127
- payload: {
128
- path: path,
129
- activePath: activePath,
130
- data: data
131
- }
132
- });
133
- })["catch"](function (error) {
134
- dispatch({
135
- type: _state.NavigationTreeActionType.FinishLoading,
136
- payload: {
137
- path: path,
138
- error: error
62
+ fetchPath(path)
63
+ .then((data) => {
64
+ dispatch({
65
+ type: state_1.NavigationTreeActionType.FinishLoading,
66
+ payload: { path, activePath, data },
67
+ });
68
+ })
69
+ .catch((error) => {
70
+ dispatch({
71
+ type: state_1.NavigationTreeActionType.ErrorLoading,
72
+ payload: { path, error },
73
+ });
74
+ });
75
+ }, [nodeState.collapsed]);
76
+ const handleClick = react_1.default.useCallback(() => {
77
+ if (onActivate) {
78
+ onActivate(path);
139
79
  }
140
- });
141
- });
142
- }, [nodeState.collapsed]);
143
-
144
- var handleClick = _react["default"].useCallback(function () {
145
- if (onActivate) {
146
- onActivate(path);
147
- }
148
- }, [path, onActivate]);
149
-
150
- var handleArrowClick = _react["default"].useCallback(function () {
151
- dispatch({
152
- type: _state.NavigationTreeActionType.ToggleCollapsed,
153
- payload: {
154
- path: path
155
- }
156
- });
157
- }, []);
158
-
159
- var additionalNodeElements = _react["default"].useMemo(function () {
160
- return renderAdditionalNodeElements === null || renderAdditionalNodeElements === void 0 ? void 0 : renderAdditionalNodeElements(nodeState.path, nodeState.type);
161
- }, [renderAdditionalNodeElements, nodeState]);
162
-
163
- var actions = _react["default"].useMemo(function () {
164
- return getActions === null || getActions === void 0 ? void 0 : getActions(nodeState.path, nodeState.type);
165
- }, [getActions, nodeState]);
166
-
167
- return /*#__PURE__*/_react["default"].createElement(_TreeView.TreeView, {
168
- name: nodeState.name,
169
- icon: renderIcon(nodeState.type, nodeState.collapsed),
170
- collapsed: nodeState.collapsed,
171
- active: nodeState.path === activePath,
172
- actions: actions,
173
- additionalNodeElements: additionalNodeElements,
174
- hasArrow: nodeState.expandable,
175
- onClick: handleClick,
176
- onArrowClick: handleArrowClick,
177
- level: level
178
- }, children);
179
- }
80
+ }, [path, onActivate]);
81
+ const handleArrowClick = react_1.default.useCallback(() => {
82
+ dispatch({ type: state_1.NavigationTreeActionType.ToggleCollapsed, payload: { path } });
83
+ }, [dispatch, path]);
84
+ const additionalNodeElements = react_1.default.useMemo(() => {
85
+ return renderAdditionalNodeElements === null || renderAdditionalNodeElements === void 0 ? void 0 : renderAdditionalNodeElements(nodeState.path, nodeState.type);
86
+ }, [renderAdditionalNodeElements, nodeState]);
87
+ const actions = react_1.default.useMemo(() => {
88
+ return getActions === null || getActions === void 0 ? void 0 : getActions(nodeState.path, nodeState.type);
89
+ }, [getActions, nodeState]);
90
+ return ((0, jsx_runtime_1.jsx)(TreeView_1.TreeView, { name: nodeState.name, icon: renderIcon(nodeState.type, nodeState.collapsed), collapsed: nodeState.collapsed, active: nodeState.path === activePath, actions: actions, additionalNodeElements: additionalNodeElements, hasArrow: nodeState.expandable, onClick: handleClick, onArrowClick: handleArrowClick, level: level, children: children }));
91
+ }
92
+ exports.NavigationTreeNode = NavigationTreeNode;
@@ -1,2 +1,2 @@
1
- declare const _default: (key: string, params?: import("@gravity-ui/i18n").Params | undefined) => string;
1
+ declare const _default: (key: "label_error" | "label_empty", params?: import("@gravity-ui/i18n").Params | undefined) => string;
2
2
  export default _default;
@@ -1,26 +1,8 @@
1
1
  "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports["default"] = void 0;
7
-
8
- var _i18n = require("../../i18n");
9
-
10
- var _utils = require("../../../utils");
11
-
12
- var _en = _interopRequireDefault(require("./en.json"));
13
-
14
- var _ru = _interopRequireDefault(require("./ru.json"));
15
-
16
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
17
-
18
- var COMPONENT = 'ydb-navigation-tree';
19
-
20
- _i18n.i18n.registerKeyset(_utils.Lang.En, COMPONENT, _en["default"]);
21
-
22
- _i18n.i18n.registerKeyset(_utils.Lang.Ru, COMPONENT, _ru["default"]);
23
-
24
- var _default = _i18n.i18n.keyset(COMPONENT);
25
-
26
- exports["default"] = _default;
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ const i18n_1 = require("@gravity-ui/uikit/i18n");
5
+ const en_json_1 = tslib_1.__importDefault(require("./en.json"));
6
+ const ru_json_1 = tslib_1.__importDefault(require("./ru.json"));
7
+ const COMPONENT = 'ydb-navigation-tree';
8
+ exports.default = (0, i18n_1.addComponentKeysets)({ en: en_json_1.default, ru: ru_json_1.default }, COMPONENT);
@@ -1,2 +1,2 @@
1
1
  export * from './NavigationTree';
2
- export * from './types';
2
+ export type * from './types';