@banch0u/core-project-test-repository 1.0.30 → 1.2.1
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 +91 -0
- package/dist/assets/icons/index.js +66 -0
- package/dist/components/Button/index.js +45 -0
- package/dist/components/ColSort/index.js +55 -0
- package/dist/components/Filter/index.js +185 -0
- package/dist/components/Loading/index.js +20 -0
- package/dist/components/Pagination/Select.js +33 -0
- package/dist/components/Pagination/constant.js +22 -0
- package/dist/components/Pagination/index.js +53 -0
- package/dist/hooks/useNotification.js +59 -0
- package/dist/index.js +56 -0
- package/dist/utils/message.js +58 -0
- package/package.json +17 -8
- package/.babelrc +0 -9
- package/index.js +0 -2
- package/src/assets/icons/index.js +0 -72
- package/src/components/Button/index.jsx +0 -61
- package/src/components/ColSort/index.jsx +0 -51
- package/src/components/Filter/index.jsx +0 -220
- package/src/components/Loading/index.jsx +0 -16
- package/src/components/Pagination/Select.jsx +0 -26
- package/src/components/Pagination/constant.js +0 -22
- package/src/components/Pagination/index.jsx +0 -33
- package/src/hooks/useNotification.js +0 -57
- package/src/index.js +0 -13
- package/src/utils/message.js +0 -37
- package/webpack.config.js +0 -35
- /package/{src → dist}/assets/fonts/Inter/Inter-Black.ttf +0 -0
- /package/{src → dist}/assets/fonts/Inter/Inter-Bold.ttf +0 -0
- /package/{src → dist}/assets/fonts/Inter/Inter-ExtraBold.ttf +0 -0
- /package/{src → dist}/assets/fonts/Inter/Inter-ExtraLight.ttf +0 -0
- /package/{src → dist}/assets/fonts/Inter/Inter-Light.ttf +0 -0
- /package/{src → dist}/assets/fonts/Inter/Inter-Medium.ttf +0 -0
- /package/{src → dist}/assets/fonts/Inter/Inter-Regular.ttf +0 -0
- /package/{src → dist}/assets/fonts/Inter/Inter-SemiBold.ttf +0 -0
- /package/{src → dist}/assets/fonts/Inter/Inter-Thin.ttf +0 -0
- /package/{src → dist}/assets/fonts/fonts.css +0 -0
- /package/{src → dist}/components/Button/index.module.scss +0 -0
- /package/{src → dist}/components/ColSort/index.module.scss +0 -0
- /package/{src → dist}/components/Filter/index.module.scss +0 -0
- /package/{src → dist}/components/Loading/index.module.scss +0 -0
- /package/{src → dist}/components/Pagination/Pagination.module.scss +0 -0
package/README.md
ADDED
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
# 📦 @banch0u/core-project-test-repository – Development & Deployment Guide
|
|
2
|
+
|
|
3
|
+
## ✨ Live Development Setup
|
|
4
|
+
|
|
5
|
+
To develop and test changes in the core package **live** within another project (e.g., `docflow, hr, contract, account and etc.`):
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
### 💠 Step 1: Start the Core Package in Watch Mode
|
|
10
|
+
|
|
11
|
+
This will watch your `src/` directory for changes, rebuild the `dist/` folder, and automatically push updates to `.yalc`.
|
|
12
|
+
|
|
13
|
+
```bash
|
|
14
|
+
npm run dev
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
### 💠 Step 2: In Your Main Project (Consumer App)
|
|
20
|
+
|
|
21
|
+
#### ✅ a. Add the Core Package via Yalc
|
|
22
|
+
|
|
23
|
+
```bash
|
|
24
|
+
yalc add @banch0u/core-project-test-repository
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
This will copy the current `dist/` into your project’s `.yalc` folder and update your `package.json`.
|
|
28
|
+
|
|
29
|
+
#### 🔗 b. Link the Core Package
|
|
30
|
+
|
|
31
|
+
```bash
|
|
32
|
+
yalc link @banch0u/core-project-test-repository
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
This creates a symlink to the core package. Now, all changes from the `npm run dev` watcher will reflect in your main app automatically when running the dev server (`npm start`).
|
|
36
|
+
|
|
37
|
+
---
|
|
38
|
+
|
|
39
|
+
### ⚠️ Important Notes
|
|
40
|
+
|
|
41
|
+
- Your `package.json` will temporarily contain this line:
|
|
42
|
+
|
|
43
|
+
```json
|
|
44
|
+
"@banch0u/core-project-test-repository": "file:.yalc/@banch0u/core-project-test-repository"
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
- **This file path will break production builds or CI/CD pipelines.**
|
|
48
|
+
|
|
49
|
+
#### ✅ Before Deploying or Committing:
|
|
50
|
+
|
|
51
|
+
Replace the local Yalc reference with the actual npm package:
|
|
52
|
+
|
|
53
|
+
```bash
|
|
54
|
+
npm install @banch0u/core-project-test-repository@latest
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
---
|
|
58
|
+
|
|
59
|
+
## 📦 Publishing to NPM
|
|
60
|
+
|
|
61
|
+
### 1. Build the Package
|
|
62
|
+
|
|
63
|
+
```bash
|
|
64
|
+
npm run build
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
This will transpile your `src/` folder into the `dist/` folder.
|
|
68
|
+
|
|
69
|
+
### 2. Bump Version
|
|
70
|
+
|
|
71
|
+
Use `npm version` to update the package version according to the type of change:
|
|
72
|
+
|
|
73
|
+
- **Patch** (small fix): `npm version patch` → `1.0.0 → 1.0.1`
|
|
74
|
+
- **Minor** (new feature, backward compatible): `npm version minor` → `1.0.0 → 1.1.0`
|
|
75
|
+
- **Major** (breaking changes): `npm version major` → `1.0.0 → 2.0.0`
|
|
76
|
+
|
|
77
|
+
### 3. Publish to NPM
|
|
78
|
+
|
|
79
|
+
```bash
|
|
80
|
+
npm publish
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
Your changes will now be available on the npm registry. Consumers can install the latest version via:
|
|
84
|
+
|
|
85
|
+
```bash
|
|
86
|
+
npm install @banch0u/core-project-test-repository@latest
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
---
|
|
90
|
+
|
|
91
|
+
Happy coding 💻🚀
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.SortIcon = exports.FilterIcon = void 0;
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
var SortIcon = exports.SortIcon = function SortIcon() {
|
|
10
|
+
return /*#__PURE__*/_react["default"].createElement("svg", {
|
|
11
|
+
width: "22",
|
|
12
|
+
height: "22",
|
|
13
|
+
viewBox: "0 0 22 22",
|
|
14
|
+
fill: "none",
|
|
15
|
+
xmlns: "http://www.w3.org/2000/svg"
|
|
16
|
+
}, /*#__PURE__*/_react["default"].createElement("path", {
|
|
17
|
+
d: "M2.75 6.41663H19.25",
|
|
18
|
+
stroke: "#016DAF",
|
|
19
|
+
strokeWidth: "1.375",
|
|
20
|
+
strokeLinecap: "round"
|
|
21
|
+
}), /*#__PURE__*/_react["default"].createElement("path", {
|
|
22
|
+
d: "M5.5 11H16.5",
|
|
23
|
+
stroke: "#016DAF",
|
|
24
|
+
strokeWidth: "1.375",
|
|
25
|
+
strokeLinecap: "round"
|
|
26
|
+
}), /*#__PURE__*/_react["default"].createElement("path", {
|
|
27
|
+
d: "M9.16675 15.5834H12.8334",
|
|
28
|
+
stroke: "#016DAF",
|
|
29
|
+
strokeWidth: "1.375",
|
|
30
|
+
strokeLinecap: "round"
|
|
31
|
+
}));
|
|
32
|
+
};
|
|
33
|
+
var FilterIcon = exports.FilterIcon = function FilterIcon() {
|
|
34
|
+
return /*#__PURE__*/_react["default"].createElement("svg", {
|
|
35
|
+
width: "24",
|
|
36
|
+
height: "24",
|
|
37
|
+
viewBox: "0 0 24 24",
|
|
38
|
+
fill: "none",
|
|
39
|
+
xmlns: "http://www.w3.org/2000/svg"
|
|
40
|
+
}, /*#__PURE__*/_react["default"].createElement("path", {
|
|
41
|
+
d: "M3.34985 2H12.2499C12.9899 2 13.5999 2.61001 13.5999 3.35001V4.82999C13.5999 5.36999 13.2599 6.04 12.9299 6.38L10.0299 8.94C9.62991 9.28 9.35986 9.94999 9.35986 10.49V13.39C9.35986 13.79 9.08988 14.33 8.74988 14.54L7.80987 15.15C6.92987 15.69 5.71985 15.08 5.71985 14V10.43C5.71985 9.95999 5.44987 9.35001 5.17987 9.01001L2.61987 6.31C2.27987 5.97 2.00989 5.36999 2.00989 4.95999V3.41C1.99989 2.61 2.60985 2 3.34985 2Z",
|
|
42
|
+
stroke: "#016DAF",
|
|
43
|
+
strokeWidth: "1.5",
|
|
44
|
+
strokeMiterlimit: "10",
|
|
45
|
+
strokeLinecap: "round",
|
|
46
|
+
strokeLinejoin: "round"
|
|
47
|
+
}), /*#__PURE__*/_react["default"].createElement("path", {
|
|
48
|
+
d: "M2 12V15C2 20 4 22 9 22H15C20 22 22 20 22 15V9C22 5.88 21.22 3.91999 19.41 2.89999C18.9 2.60999 17.88 2.38999 16.95 2.23999",
|
|
49
|
+
stroke: "#016DAF",
|
|
50
|
+
strokeWidth: "1.5",
|
|
51
|
+
strokeLinecap: "round",
|
|
52
|
+
strokeLinejoin: "round"
|
|
53
|
+
}), /*#__PURE__*/_react["default"].createElement("path", {
|
|
54
|
+
d: "M13 13H18",
|
|
55
|
+
stroke: "#016DAF",
|
|
56
|
+
strokeWidth: "1.5",
|
|
57
|
+
strokeLinecap: "round",
|
|
58
|
+
strokeLinejoin: "round"
|
|
59
|
+
}), /*#__PURE__*/_react["default"].createElement("path", {
|
|
60
|
+
d: "M11 17H18",
|
|
61
|
+
stroke: "#016DAF",
|
|
62
|
+
strokeWidth: "1.5",
|
|
63
|
+
strokeLinecap: "round",
|
|
64
|
+
strokeLinejoin: "round"
|
|
65
|
+
}));
|
|
66
|
+
};
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports["default"] = void 0;
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
var _indexModule = _interopRequireDefault(require("./index.module.scss"));
|
|
10
|
+
var Button = function Button(_ref) {
|
|
11
|
+
var children = _ref.children,
|
|
12
|
+
onClick = _ref.onClick,
|
|
13
|
+
_ref$color = _ref.color,
|
|
14
|
+
color = _ref$color === void 0 ? "blue" : _ref$color,
|
|
15
|
+
_ref$disabled = _ref.disabled,
|
|
16
|
+
disabled = _ref$disabled === void 0 ? false : _ref$disabled,
|
|
17
|
+
type = _ref.type;
|
|
18
|
+
return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, color === "blue" ? /*#__PURE__*/_react["default"].createElement("button", {
|
|
19
|
+
disabled: disabled,
|
|
20
|
+
type: type,
|
|
21
|
+
className: _indexModule["default"].button,
|
|
22
|
+
onClick: onClick
|
|
23
|
+
}, children) : null, color === "white" ? /*#__PURE__*/_react["default"].createElement("button", {
|
|
24
|
+
disabled: disabled,
|
|
25
|
+
type: type,
|
|
26
|
+
className: _indexModule["default"].button_white,
|
|
27
|
+
onClick: onClick
|
|
28
|
+
}, children) : null, color === "green" ? /*#__PURE__*/_react["default"].createElement("button", {
|
|
29
|
+
disabled: disabled,
|
|
30
|
+
type: type,
|
|
31
|
+
className: _indexModule["default"].button_green,
|
|
32
|
+
onClick: onClick
|
|
33
|
+
}, children) : null, color === "green-white" ? /*#__PURE__*/_react["default"].createElement("button", {
|
|
34
|
+
disabled: disabled,
|
|
35
|
+
type: type,
|
|
36
|
+
className: _indexModule["default"].button_green_white,
|
|
37
|
+
onClick: onClick
|
|
38
|
+
}, children) : null, color === "red" ? /*#__PURE__*/_react["default"].createElement("button", {
|
|
39
|
+
disabled: disabled,
|
|
40
|
+
type: type,
|
|
41
|
+
className: _indexModule["default"].button_red,
|
|
42
|
+
onClick: onClick
|
|
43
|
+
}, children) : null);
|
|
44
|
+
};
|
|
45
|
+
var _default = exports["default"] = Button;
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports["default"] = void 0;
|
|
9
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
10
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
11
|
+
var _antd = require("antd");
|
|
12
|
+
var _indexModule = _interopRequireDefault(require("./index.module.scss"));
|
|
13
|
+
var _icons = require("../../assets/icons");
|
|
14
|
+
var _Button = _interopRequireDefault(require("../Button"));
|
|
15
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
16
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
|
17
|
+
var ColSort = function ColSort(_ref) {
|
|
18
|
+
var columns = _ref.columns,
|
|
19
|
+
selectedColumns = _ref.selectedColumns,
|
|
20
|
+
handleColumnToggle = _ref.handleColumnToggle;
|
|
21
|
+
var _useState = (0, _react.useState)(false),
|
|
22
|
+
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
23
|
+
visible = _useState2[0],
|
|
24
|
+
setVisible = _useState2[1];
|
|
25
|
+
var handleVisibleChange = function handleVisibleChange(isVisible) {
|
|
26
|
+
setVisible(isVisible);
|
|
27
|
+
};
|
|
28
|
+
var menu = /*#__PURE__*/_react["default"].createElement(_antd.Menu, {
|
|
29
|
+
className: _indexModule["default"].menu
|
|
30
|
+
}, columns.filter(function (col) {
|
|
31
|
+
return col.dataIndex !== "filterOnly";
|
|
32
|
+
}) // Exclude columns with dataIndex === "filterOnly"
|
|
33
|
+
.map(function (col) {
|
|
34
|
+
return col.showCheckbox !== false && /*#__PURE__*/_react["default"].createElement(_antd.Menu.Item, {
|
|
35
|
+
key: col.title
|
|
36
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
37
|
+
className: _indexModule["default"].menu_item
|
|
38
|
+
}, /*#__PURE__*/_react["default"].createElement(_antd.Checkbox, {
|
|
39
|
+
disabled: col.disabled,
|
|
40
|
+
checked: selectedColumns.includes(col.dataIndex),
|
|
41
|
+
onChange: function onChange(e) {
|
|
42
|
+
return handleColumnToggle(e.target.checked, col.dataIndex);
|
|
43
|
+
}
|
|
44
|
+
}), /*#__PURE__*/_react["default"].createElement("span", null, col.title)));
|
|
45
|
+
}));
|
|
46
|
+
return /*#__PURE__*/_react["default"].createElement(_antd.Dropdown, {
|
|
47
|
+
overlay: menu,
|
|
48
|
+
trigger: ["click"],
|
|
49
|
+
visible: visible,
|
|
50
|
+
onVisibleChange: handleVisibleChange
|
|
51
|
+
}, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
|
|
52
|
+
color: "white"
|
|
53
|
+
}, /*#__PURE__*/_react["default"].createElement(_icons.SortIcon, null)));
|
|
54
|
+
};
|
|
55
|
+
var _default = exports["default"] = ColSort;
|
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports["default"] = void 0;
|
|
9
|
+
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
10
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
11
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
12
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
13
|
+
var _antd = require("antd");
|
|
14
|
+
var _indexModule = _interopRequireDefault(require("./index.module.scss"));
|
|
15
|
+
var _Button = _interopRequireDefault(require("../Button"));
|
|
16
|
+
var _icons = require("../../assets/icons");
|
|
17
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
18
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
|
19
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
20
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
21
|
+
var Option = _antd.Select.Option;
|
|
22
|
+
var RangePicker = _antd.DatePicker.RangePicker;
|
|
23
|
+
var Filter = function Filter(_ref) {
|
|
24
|
+
var columns = _ref.columns,
|
|
25
|
+
selectedColumns = _ref.selectedColumns,
|
|
26
|
+
setQuery = _ref.setQuery,
|
|
27
|
+
disabledElementCount = _ref.disabledElementCount,
|
|
28
|
+
setPage = _ref.setPage,
|
|
29
|
+
setSelectedTopic = _ref.setSelectedTopic;
|
|
30
|
+
var _Form$useForm = _antd.Form.useForm(),
|
|
31
|
+
_Form$useForm2 = (0, _slicedToArray2["default"])(_Form$useForm, 1),
|
|
32
|
+
filterForm = _Form$useForm2[0];
|
|
33
|
+
var _useState = (0, _react.useState)(false),
|
|
34
|
+
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
35
|
+
visible = _useState2[0],
|
|
36
|
+
setVisible = _useState2[1];
|
|
37
|
+
var handleOpenChange = function handleOpenChange(isOpen) {
|
|
38
|
+
setVisible(isOpen);
|
|
39
|
+
};
|
|
40
|
+
var formatDate = function formatDate(day, month, year) {
|
|
41
|
+
var formattedDay = String(day).padStart(2, "0");
|
|
42
|
+
var formattedMonth = String(month).padStart(2, "0");
|
|
43
|
+
return "".concat(formattedDay, ".").concat(formattedMonth, ".").concat(year);
|
|
44
|
+
};
|
|
45
|
+
var handleFinish = function handleFinish(values) {
|
|
46
|
+
var formattedValues = _objectSpread({}, values);
|
|
47
|
+
Object.keys(values).forEach(function (key) {
|
|
48
|
+
if (Array.isArray(values[key]) && values[key].length === 2) {
|
|
49
|
+
var _values$key = (0, _slicedToArray2["default"])(values[key], 2),
|
|
50
|
+
start = _values$key[0],
|
|
51
|
+
end = _values$key[1];
|
|
52
|
+
if (start && end) {
|
|
53
|
+
var formattedStart = formatDate(start.date(), start.month() + 1, start.year());
|
|
54
|
+
var formattedEnd = formatDate(end.date(), end.month() + 1, end.year());
|
|
55
|
+
formattedValues[key] = "".concat(formattedStart, " - ").concat(formattedEnd);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
});
|
|
59
|
+
setQuery(formattedValues);
|
|
60
|
+
setVisible(false);
|
|
61
|
+
};
|
|
62
|
+
|
|
63
|
+
// Filter the columns based on selectedColumns, filterDisable, and filter status
|
|
64
|
+
var filteredColumns = columns.filter(function (col) {
|
|
65
|
+
return selectedColumns.includes(col.dataIndex) && col.filter !== false && col.filterDisable !== true || col.dataIndex === "filterOnly";
|
|
66
|
+
} // Always include "filterOnly" columns in the filter
|
|
67
|
+
);
|
|
68
|
+
var getGrid = function getGrid() {
|
|
69
|
+
var elementCount = selectedColumns.length - disabledElementCount;
|
|
70
|
+
if (elementCount >= 5) return _indexModule["default"].grid5;
|
|
71
|
+
if (elementCount === 4) return _indexModule["default"].grid4;
|
|
72
|
+
if (elementCount === 3) return _indexModule["default"].grid3;
|
|
73
|
+
if (elementCount === 2) return _indexModule["default"].grid2;
|
|
74
|
+
if (elementCount === 1) return _indexModule["default"].grid1;
|
|
75
|
+
};
|
|
76
|
+
var menu = /*#__PURE__*/_react["default"].createElement(_antd.Menu, {
|
|
77
|
+
className: _indexModule["default"].menu
|
|
78
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
79
|
+
className: "filter"
|
|
80
|
+
}, /*#__PURE__*/_react["default"].createElement(_antd.Form, {
|
|
81
|
+
onFinish: handleFinish,
|
|
82
|
+
form: filterForm,
|
|
83
|
+
layout: "vertical",
|
|
84
|
+
className: "".concat(_indexModule["default"].form, " ").concat(getGrid())
|
|
85
|
+
}, [].concat((0, _toConsumableArray2["default"])(filteredColumns.filter(function (col) {
|
|
86
|
+
return !col.isDouble;
|
|
87
|
+
})), (0, _toConsumableArray2["default"])(filteredColumns.filter(function (col) {
|
|
88
|
+
return col.isDouble;
|
|
89
|
+
}))).map(function (col) {
|
|
90
|
+
if (col.showCheckbox === false) {
|
|
91
|
+
return null;
|
|
92
|
+
}
|
|
93
|
+
var gridSpanClass = col.isDouble ? _indexModule["default"].doubleGrid : _indexModule["default"].singleGrid;
|
|
94
|
+
if (col.type === "select") {
|
|
95
|
+
return /*#__PURE__*/_react["default"].createElement(_antd.Form.Item, {
|
|
96
|
+
key: col.dataIndex,
|
|
97
|
+
label: col.title,
|
|
98
|
+
name: col.queryName ? col.queryName : col.dataIndex,
|
|
99
|
+
className: gridSpanClass // Dynamically apply grid class
|
|
100
|
+
}, /*#__PURE__*/_react["default"].createElement(_antd.Select, {
|
|
101
|
+
showSearch: col.isDouble // Enable search for double items
|
|
102
|
+
,
|
|
103
|
+
onChange: function onChange(value) {
|
|
104
|
+
if (col.dataIndex === "topic") {
|
|
105
|
+
setSelectedTopic(value);
|
|
106
|
+
}
|
|
107
|
+
},
|
|
108
|
+
filterOption: function filterOption(input, option) {
|
|
109
|
+
if (!option || !option.children) return false; // Ensure option and children exist
|
|
110
|
+
|
|
111
|
+
var optionText = String(option.children); // Convert to string if needed
|
|
112
|
+
var normalizedInput = input.toLowerCase(); // Normalize input to lowercase
|
|
113
|
+
var normalizedOption = optionText.replace(/İ/g, "I").toLowerCase(); // Normalize option text
|
|
114
|
+
|
|
115
|
+
return normalizedOption.includes(normalizedInput);
|
|
116
|
+
}
|
|
117
|
+
}, /*#__PURE__*/_react["default"].createElement(Option, {
|
|
118
|
+
value: ""
|
|
119
|
+
}), ((col === null || col === void 0 ? void 0 : col.selectData) || []).map(function (option, i) {
|
|
120
|
+
var isIdArray = Array.isArray(option.id);
|
|
121
|
+
return /*#__PURE__*/_react["default"].createElement(Option, {
|
|
122
|
+
key: i,
|
|
123
|
+
value: isIdArray ? JSON.stringify(option.id) // Convert array to string
|
|
124
|
+
: option.id // Use ID directly
|
|
125
|
+
}, option.name, " ", option.surname, " ", option.text);
|
|
126
|
+
})));
|
|
127
|
+
}
|
|
128
|
+
if (col.type === "date") {
|
|
129
|
+
return /*#__PURE__*/_react["default"].createElement(_antd.Form.Item, {
|
|
130
|
+
key: col.dataIndex,
|
|
131
|
+
label: col.title,
|
|
132
|
+
name: col.queryName ? col.queryName : col.dataIndex,
|
|
133
|
+
className: gridSpanClass // Dynamically apply grid class
|
|
134
|
+
}, /*#__PURE__*/_react["default"].createElement(RangePicker, {
|
|
135
|
+
format: "DD.MM.YYYY",
|
|
136
|
+
placeholder: ""
|
|
137
|
+
}));
|
|
138
|
+
}
|
|
139
|
+
if (col.type === "recursive") {
|
|
140
|
+
return /*#__PURE__*/_react["default"].createElement(_antd.Form.Item, {
|
|
141
|
+
key: col.dataIndex,
|
|
142
|
+
label: col.title,
|
|
143
|
+
name: col.queryName ? col.queryName : col.dataIndex,
|
|
144
|
+
className: gridSpanClass // Dynamically apply grid class
|
|
145
|
+
}, /*#__PURE__*/_react["default"].createElement(_antd.TreeSelect
|
|
146
|
+
// style={{ width: "230px", marginTop: "5px" }}
|
|
147
|
+
, {
|
|
148
|
+
showSearch: true,
|
|
149
|
+
popupMatchSelectWidth: false,
|
|
150
|
+
allowClear: true,
|
|
151
|
+
treeDefaultExpandAll: true,
|
|
152
|
+
treeData: col.selectData
|
|
153
|
+
}));
|
|
154
|
+
}
|
|
155
|
+
return /*#__PURE__*/_react["default"].createElement(_antd.Form.Item, {
|
|
156
|
+
key: col.dataIndex,
|
|
157
|
+
label: col.title,
|
|
158
|
+
name: col.queryName ? col.queryName : col.dataIndex,
|
|
159
|
+
className: gridSpanClass // Dynamically apply grid class
|
|
160
|
+
}, /*#__PURE__*/_react["default"].createElement(_antd.Input, null));
|
|
161
|
+
})), /*#__PURE__*/_react["default"].createElement("div", {
|
|
162
|
+
className: _indexModule["default"].buttons
|
|
163
|
+
}, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
|
|
164
|
+
onClick: function onClick() {
|
|
165
|
+
return filterForm.resetFields();
|
|
166
|
+
},
|
|
167
|
+
color: "white"
|
|
168
|
+
}, "T\u0259mizl\u0259"), /*#__PURE__*/_react["default"].createElement(_Button["default"], {
|
|
169
|
+
onClick: function onClick() {
|
|
170
|
+
setPage(1);
|
|
171
|
+
filterForm.submit();
|
|
172
|
+
setVisible(false);
|
|
173
|
+
}
|
|
174
|
+
}, "Axtar"))));
|
|
175
|
+
return /*#__PURE__*/_react["default"].createElement(_antd.Dropdown, {
|
|
176
|
+
overlay: menu,
|
|
177
|
+
trigger: ["click"],
|
|
178
|
+
open: visible // Updated to use open
|
|
179
|
+
,
|
|
180
|
+
onOpenChange: handleOpenChange // Updated to use onOpenChange
|
|
181
|
+
}, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
|
|
182
|
+
color: "white"
|
|
183
|
+
}, /*#__PURE__*/_react["default"].createElement(_icons.FilterIcon, null), " Filter menyu"));
|
|
184
|
+
};
|
|
185
|
+
var _default = exports["default"] = Filter;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports["default"] = void 0;
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
var _indexModule = _interopRequireDefault(require("./index.module.scss"));
|
|
10
|
+
var _antd = require("antd");
|
|
11
|
+
var Loading = function Loading() {
|
|
12
|
+
return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("div", {
|
|
13
|
+
className: _indexModule["default"].overlay
|
|
14
|
+
}), /*#__PURE__*/_react["default"].createElement("div", {
|
|
15
|
+
className: _indexModule["default"].spinner
|
|
16
|
+
}, /*#__PURE__*/_react["default"].createElement(_antd.Spin, {
|
|
17
|
+
size: "large"
|
|
18
|
+
})));
|
|
19
|
+
};
|
|
20
|
+
var _default = exports["default"] = Loading;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports["default"] = void 0;
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
var _antd = require("antd");
|
|
10
|
+
var _constant = require("./constant");
|
|
11
|
+
var Option = _antd.Select.Option;
|
|
12
|
+
var Select = function Select(_ref) {
|
|
13
|
+
var setSize = _ref.setSize,
|
|
14
|
+
size = _ref.size;
|
|
15
|
+
var handleChange = function handleChange(value) {
|
|
16
|
+
setSize(value);
|
|
17
|
+
};
|
|
18
|
+
return /*#__PURE__*/_react["default"].createElement(_antd.Select, {
|
|
19
|
+
onChange: handleChange,
|
|
20
|
+
defaultValue: size,
|
|
21
|
+
style: {
|
|
22
|
+
width: 60,
|
|
23
|
+
marginTop: "10px",
|
|
24
|
+
marginLeft: "10px"
|
|
25
|
+
}
|
|
26
|
+
}, _constant.counts.map(function (item) {
|
|
27
|
+
return /*#__PURE__*/_react["default"].createElement(Option, {
|
|
28
|
+
key: item.id,
|
|
29
|
+
value: item.value
|
|
30
|
+
}, item.value);
|
|
31
|
+
}));
|
|
32
|
+
};
|
|
33
|
+
var _default = exports["default"] = Select;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.counts = void 0;
|
|
7
|
+
var counts = exports.counts = [{
|
|
8
|
+
id: 1,
|
|
9
|
+
value: "10"
|
|
10
|
+
}, {
|
|
11
|
+
id: 2,
|
|
12
|
+
value: "20"
|
|
13
|
+
}, {
|
|
14
|
+
id: 3,
|
|
15
|
+
value: "30"
|
|
16
|
+
}, {
|
|
17
|
+
id: 4,
|
|
18
|
+
value: "40"
|
|
19
|
+
}, {
|
|
20
|
+
id: 5,
|
|
21
|
+
value: "50"
|
|
22
|
+
}];
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports["default"] = void 0;
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
var _antd = require("antd");
|
|
10
|
+
var _PaginationModule = _interopRequireDefault(require("./Pagination.module.scss"));
|
|
11
|
+
var _Select = _interopRequireDefault(require("./Select"));
|
|
12
|
+
var Pagination = function Pagination(_ref) {
|
|
13
|
+
var onChange = _ref.onChange,
|
|
14
|
+
_ref$page = _ref.page,
|
|
15
|
+
page = _ref$page === void 0 ? 1 : _ref$page,
|
|
16
|
+
_ref$size = _ref.size,
|
|
17
|
+
size = _ref$size === void 0 ? 10 : _ref$size,
|
|
18
|
+
_ref$total = _ref.total,
|
|
19
|
+
total = _ref$total === void 0 ? 0 : _ref$total,
|
|
20
|
+
setSize = _ref.setSize;
|
|
21
|
+
var setPagination = function setPagination(page) {
|
|
22
|
+
onChange(page); // Trigger the page change callback
|
|
23
|
+
|
|
24
|
+
// Find the scrollable part of the Ant Table and scroll to the top
|
|
25
|
+
var tableBody = document.querySelector(".ant-table-body");
|
|
26
|
+
if (tableBody) {
|
|
27
|
+
tableBody.scrollTo({
|
|
28
|
+
top: 0,
|
|
29
|
+
behavior: "smooth"
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
34
|
+
className: _PaginationModule["default"].container
|
|
35
|
+
}, /*#__PURE__*/_react["default"].createElement(_antd.Pagination, {
|
|
36
|
+
className: _PaginationModule["default"].pagination,
|
|
37
|
+
current: Number(page) // Ensure numeric values
|
|
38
|
+
,
|
|
39
|
+
onChange: setPagination,
|
|
40
|
+
total: Number(total) // Ensure numeric values
|
|
41
|
+
,
|
|
42
|
+
showSizeChanger: false
|
|
43
|
+
}), /*#__PURE__*/_react["default"].createElement("div", {
|
|
44
|
+
className: "pagination_select"
|
|
45
|
+
}, /*#__PURE__*/_react["default"].createElement(_Select["default"], {
|
|
46
|
+
size: size,
|
|
47
|
+
setSize: setSize,
|
|
48
|
+
style: {
|
|
49
|
+
marginTop: "10px"
|
|
50
|
+
}
|
|
51
|
+
})));
|
|
52
|
+
};
|
|
53
|
+
var _default = exports["default"] = Pagination;
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports["default"] = void 0;
|
|
9
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
10
|
+
var _react = require("react");
|
|
11
|
+
var signalR = _interopRequireWildcard(require("@microsoft/signalr"));
|
|
12
|
+
var _message = require("../utils/message");
|
|
13
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
14
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
|
15
|
+
// hooks/useNotification.js
|
|
16
|
+
|
|
17
|
+
var useNotification = function useNotification() {
|
|
18
|
+
var _useState = (0, _react.useState)(function () {
|
|
19
|
+
// localStorage'dan bildirimi başlat
|
|
20
|
+
var savedNotifications = localStorage.getItem("notifications");
|
|
21
|
+
return savedNotifications ? JSON.parse(savedNotifications) : [];
|
|
22
|
+
}),
|
|
23
|
+
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
24
|
+
notifications = _useState2[0],
|
|
25
|
+
setNotifications = _useState2[1];
|
|
26
|
+
(0, _react.useEffect)(function () {
|
|
27
|
+
var token = localStorage.getItem("token");
|
|
28
|
+
var baseUrl;
|
|
29
|
+
if (window.location.hostname === "localhost") {
|
|
30
|
+
baseUrl = process.env.REACT_APP_ROOT;
|
|
31
|
+
} else {
|
|
32
|
+
baseUrl = window.location.origin;
|
|
33
|
+
}
|
|
34
|
+
if (!token) {
|
|
35
|
+
console.error("Token tapılmadı!");
|
|
36
|
+
return;
|
|
37
|
+
}
|
|
38
|
+
var connection = new signalR.HubConnectionBuilder().withUrl("".concat(baseUrl, "/notify?token=").concat(token), {
|
|
39
|
+
transport: signalR.HttpTransportType.WebSockets,
|
|
40
|
+
withCredentials: false,
|
|
41
|
+
skipNegotiation: true
|
|
42
|
+
}).configureLogging(signalR.LogLevel.Information).build();
|
|
43
|
+
connection.start().then(function () {
|
|
44
|
+
console.log("SignalR bağlantısı quruldu.");
|
|
45
|
+
connection.on("receive", function (message) {
|
|
46
|
+
console.log("Yeni bildiriş:", message);
|
|
47
|
+
(0, _message.infoMessageBottomRight)(message);
|
|
48
|
+
});
|
|
49
|
+
})["catch"](function (err) {
|
|
50
|
+
return console.error("SignalR bağlantısı qurula bilmədi:", err);
|
|
51
|
+
});
|
|
52
|
+
return function () {
|
|
53
|
+
connection.stop();
|
|
54
|
+
console.log("SignalR bağlantısı bağlandı.");
|
|
55
|
+
};
|
|
56
|
+
}, []);
|
|
57
|
+
return notifications;
|
|
58
|
+
};
|
|
59
|
+
var _default = exports["default"] = useNotification;
|