@pezeshk-book/modules 1.0.4 → 1.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/calendar/calendar.d.ts +2 -1
- package/calendar/calendar.js +115 -88
- package/calendar/calendar.js.map +1 -1
- package/calendar/calendar.props.js +1 -1
- package/calendar/config/chunk.js +9 -10
- package/calendar/config/chunk.js.map +1 -1
- package/calendar/config/create-date-range.js +10 -11
- package/calendar/config/create-date-range.js.map +1 -1
- package/calendar/config/days-in-month.en.js +27 -27
- package/calendar/config/days-in-month.en.js.map +1 -1
- package/calendar/config/days-in-month.fa.js +27 -27
- package/calendar/config/days-in-month.fa.js.map +1 -1
- package/calendar/config/index.js +10 -10
- package/calendar/config/index.js.map +1 -1
- package/calendar/config/months.js +1 -1
- package/calendar/config/week-day.js +6 -6
- package/calendar/config/week-day.js.map +1 -1
- package/calendar/icons/arrow-left-icon.d.ts +1 -1
- package/calendar/icons/arrow-left-icon.js +5 -6
- package/calendar/icons/arrow-left-icon.js.map +1 -1
- package/calendar/icons/arrow-right-icon.d.ts +1 -1
- package/calendar/icons/arrow-right-icon.js +5 -6
- package/calendar/icons/arrow-right-icon.js.map +1 -1
- package/calendar/icons/index.js +6 -6
- package/calendar/icons/index.js.map +1 -1
- package/calendar/index.js +4 -4
- package/calendar/index.js.map +1 -1
- package/calendar/shared/formatDate.js +9 -10
- package/calendar/shared/formatDate.js.map +1 -1
- package/calendar/sub-components/day/day.d.ts +1 -1
- package/calendar/sub-components/day/day.js +9 -10
- package/calendar/sub-components/day/day.js.map +1 -1
- package/calendar/sub-components/day/day.props.js +1 -1
- package/calendar/sub-components/days/days.d.ts +1 -7
- package/calendar/sub-components/days/days.js +35 -39
- package/calendar/sub-components/days/days.js.map +1 -1
- package/calendar/sub-components/days/days.props.js +1 -1
- package/calendar/sub-components/days-head/days-head.d.ts +2 -1
- package/calendar/sub-components/days-head/days-head.js +26 -27
- package/calendar/sub-components/days-head/days-head.js.map +1 -1
- package/calendar/sub-components/days-head/days-head.props.js +1 -1
- package/countdown-timer/countdown.d.ts +1 -1
- package/countdown-timer/countdown.js +27 -28
- package/countdown-timer/countdown.js.map +1 -1
- package/countdown-timer/countdown.props.js +1 -1
- package/countdown-timer/index.js +4 -4
- package/countdown-timer/index.js.map +1 -1
- package/data-table/data-table.d.ts +1 -1
- package/data-table/data-table.js +9 -9
- package/data-table/data-table.js.map +1 -1
- package/data-table/data-table.props.js +1 -1
- package/data-table/default/default-data-table.d.ts +1 -1
- package/data-table/default/default-data-table.js +76 -83
- package/data-table/default/default-data-table.js.map +1 -1
- package/data-table/default/default-data-table.props.js +1 -1
- package/data-table/default/index.js +4 -4
- package/data-table/default/index.js.map +1 -1
- package/data-table/hooks/use-window-dimensions.js +14 -14
- package/data-table/hooks/use-window-dimensions.js.map +1 -1
- package/data-table/icons/add.d.ts +2 -2
- package/data-table/icons/add.js +5 -7
- package/data-table/icons/add.js.map +1 -1
- package/data-table/icons/arrow-down.d.ts +1 -1
- package/data-table/icons/arrow-down.js +5 -7
- package/data-table/icons/arrow-down.js.map +1 -1
- package/data-table/icons/index.js +8 -8
- package/data-table/icons/index.js.map +1 -1
- package/data-table/icons/sort.d.ts +1 -1
- package/data-table/icons/sort.js +5 -7
- package/data-table/icons/sort.js.map +1 -1
- package/data-table/index.js +4 -4
- package/data-table/index.js.map +1 -1
- package/data-table/simple/index.js +4 -4
- package/data-table/simple/index.js.map +1 -1
- package/data-table/simple/simple-data-table.d.ts +1 -1
- package/data-table/simple/simple-data-table.js +60 -59
- package/data-table/simple/simple-data-table.js.map +1 -1
- package/data-table/simple/simple-data-table.props.js +1 -1
- package/date-time-picker/date-time-picker.d.ts +1 -1
- package/date-time-picker/date-time-picker.js +25 -26
- package/date-time-picker/date-time-picker.js.map +1 -1
- package/date-time-picker/date-time-picker.props.js +1 -1
- package/date-time-picker/index.js +4 -4
- package/date-time-picker/index.js.map +1 -1
- package/index.js +16 -16
- package/index.js.map +1 -1
- package/package.json +12 -44
- package/pagination/icons/arrow-Right.d.ts +3 -3
- package/pagination/icons/arrow-Right.js +5 -7
- package/pagination/icons/arrow-Right.js.map +1 -1
- package/pagination/icons/arrow-left.d.ts +3 -3
- package/pagination/icons/arrow-left.js +5 -7
- package/pagination/icons/arrow-left.js.map +1 -1
- package/pagination/icons/index.js +6 -6
- package/pagination/icons/index.js.map +1 -1
- package/pagination/index.js +4 -4
- package/pagination/index.js.map +1 -1
- package/pagination/pagination.d.ts +1 -1
- package/pagination/pagination.js +26 -27
- package/pagination/pagination.js.map +1 -1
- package/pagination/pagination.props.js +1 -1
- package/pagination/use-pagination.d.ts +1 -1
- package/pagination/use-pagination.js +8 -8
- package/pagination/use-pagination.js.map +1 -1
- package/slider/index.js +4 -4
- package/slider/index.js.map +1 -1
- package/slider/slider.d.ts +2 -1
- package/slider/slider.js +63 -66
- package/slider/slider.js.map +1 -1
- package/slider/slider.props.js +1 -1
- package/tailwind-merge-config.js +6 -6
- package/tailwind-merge-config.js.map +1 -1
- package/time-picker/index.js +4 -4
- package/time-picker/index.js.map +1 -1
- package/time-picker/time-picker.d.ts +1 -1
- package/time-picker/time-picker.js +26 -28
- package/time-picker/time-picker.js.map +1 -1
- package/time-picker/time-picker.props.js +1 -1
- package/utils/class-names.js +3 -7
- package/utils/class-names.js.map +1 -1
- package/utils/persian-to-english-number.js +3 -3
- package/utils/persian-to-english-number.js.map +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../data-table/default/index.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../data-table/default/index.ts"],"names":[],"mappings":";;;AAAA,sFAAoD;AAEpD,kBAAe,4BAAgB,CAAC"}
|
|
@@ -1,30 +1,30 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
'use clients';
|
|
3
|
-
exports
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
const react_1 = require("react");
|
|
5
|
+
const use_debounce_1 = require("use-debounce");
|
|
6
|
+
const useWindowDimensions = () => {
|
|
7
|
+
const [windowDimensions, setWindowDimensions] = (0, react_1.useState)({
|
|
8
8
|
width: window.innerWidth,
|
|
9
|
-
height: window.innerHeight
|
|
10
|
-
})
|
|
11
|
-
(0, react_1.useEffect)(
|
|
9
|
+
height: window.innerHeight,
|
|
10
|
+
});
|
|
11
|
+
(0, react_1.useEffect)(() => {
|
|
12
12
|
setWindowDimensions({
|
|
13
13
|
width: window.innerWidth,
|
|
14
|
-
height: window.innerHeight
|
|
14
|
+
height: window.innerHeight,
|
|
15
15
|
});
|
|
16
16
|
}, []);
|
|
17
|
-
|
|
17
|
+
const handleResize = (0, use_debounce_1.useDebouncedCallback)(() => {
|
|
18
18
|
setWindowDimensions({
|
|
19
19
|
width: window.innerWidth,
|
|
20
|
-
height: window.innerHeight
|
|
20
|
+
height: window.innerHeight,
|
|
21
21
|
});
|
|
22
22
|
}, 500);
|
|
23
|
-
(0, react_1.useEffect)(
|
|
23
|
+
(0, react_1.useEffect)(() => {
|
|
24
24
|
window.addEventListener('resize', handleResize);
|
|
25
|
-
return
|
|
25
|
+
return () => window.removeEventListener('resize', handleResize);
|
|
26
26
|
}, []);
|
|
27
27
|
return windowDimensions;
|
|
28
28
|
};
|
|
29
|
-
exports
|
|
29
|
+
exports.default = useWindowDimensions;
|
|
30
30
|
//# sourceMappingURL=use-window-dimensions.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-window-dimensions.js","sourceRoot":"","sources":["../../../data-table/hooks/use-window-dimensions.tsx"],"names":[],"mappings":";AAAA,aAAa,CAAC;;AACd
|
|
1
|
+
{"version":3,"file":"use-window-dimensions.js","sourceRoot":"","sources":["../../../data-table/hooks/use-window-dimensions.tsx"],"names":[],"mappings":";AAAA,aAAa,CAAC;;AACd,iCAA4C;AAC5C,+CAAoD;AACpD,MAAM,mBAAmB,GAAG,GAAG,EAAE;IAC/B,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,IAAA,gBAAQ,EAAC;QACvD,KAAK,EAAE,MAAM,CAAC,UAAU;QACxB,MAAM,EAAE,MAAM,CAAC,WAAW;KAC3B,CAAC,CAAC;IAEH,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,mBAAmB,CAAC;YAClB,KAAK,EAAE,MAAM,CAAC,UAAU;YACxB,MAAM,EAAE,MAAM,CAAC,WAAW;SAC3B,CAAC,CAAC;IACL,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,YAAY,GAAG,IAAA,mCAAoB,EAAC,GAAG,EAAE;QAC7C,mBAAmB,CAAC;YAClB,KAAK,EAAE,MAAM,CAAC,UAAU;YACxB,MAAM,EAAE,MAAM,CAAC,WAAW;SAC3B,CAAC,CAAC;IACL,CAAC,EAAE,GAAG,CAAC,CAAC;IAER,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;QAEhD,OAAO,GAAG,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;IAClE,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,gBAAgB,CAAC;AAC1B,CAAC,CAAC;AAEF,kBAAe,mBAAmB,CAAC"}
|
package/data-table/icons/add.js
CHANGED
|
@@ -1,10 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
exports
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
var className = _a.className;
|
|
7
|
-
return ((0, jsx_runtime_1.jsxs)("svg", tslib_1.__assign({ className: className, width: '24', height: '24', viewBox: '0 0 24 24', fill: 'none', xmlns: 'http://www.w3.org/2000/svg' }, { children: [(0, jsx_runtime_1.jsx)("path", { d: 'M8 12H16', stroke: 'currentColor', strokeWidth: '1.5', strokeLinecap: 'round', strokeLinejoin: 'round' }), (0, jsx_runtime_1.jsx)("path", { d: 'M12 16V8', stroke: 'currentColor', strokeWidth: '1.5', strokeLinecap: 'round', strokeLinejoin: 'round' })] })));
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
4
|
+
const AddIcon = ({ className }) => {
|
|
5
|
+
return ((0, jsx_runtime_1.jsxs)("svg", { className: className, width: '24', height: '24', viewBox: '0 0 24 24', fill: 'none', xmlns: 'http://www.w3.org/2000/svg', children: [(0, jsx_runtime_1.jsx)("path", { d: 'M8 12H16', stroke: 'currentColor', strokeWidth: '1.5', strokeLinecap: 'round', strokeLinejoin: 'round' }), (0, jsx_runtime_1.jsx)("path", { d: 'M12 16V8', stroke: 'currentColor', strokeWidth: '1.5', strokeLinecap: 'round', strokeLinejoin: 'round' })] }));
|
|
8
6
|
};
|
|
9
|
-
exports
|
|
7
|
+
exports.default = AddIcon;
|
|
10
8
|
//# sourceMappingURL=add.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"add.js","sourceRoot":"","sources":["../../../data-table/icons/add.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"add.js","sourceRoot":"","sources":["../../../data-table/icons/add.tsx"],"names":[],"mappings":";;;AAAA,MAAM,OAAO,GAAG,CAAC,EAAE,SAAS,EAAwB,EAAE,EAAE;IACtD,OAAO,CACL,iCAAK,SAAS,EAAE,SAAS,EAAE,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAC,OAAO,EAAC,WAAW,EAAC,IAAI,EAAC,MAAM,EAAC,KAAK,EAAC,4BAA4B,aAClH,iCAAM,CAAC,EAAC,UAAU,EAAC,MAAM,EAAC,cAAc,EAAC,WAAW,EAAC,KAAK,EAAC,aAAa,EAAC,OAAO,EAAC,cAAc,EAAC,OAAO,GAAG,EAC1G,iCAAM,CAAC,EAAC,UAAU,EAAC,MAAM,EAAC,cAAc,EAAC,WAAW,EAAC,KAAK,EAAC,aAAa,EAAC,OAAO,EAAC,cAAc,EAAC,OAAO,GAAG,IACtG,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,kBAAe,OAAO,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
declare const ArrowDownIcon: ({ fill, className }: any) => import("react
|
|
1
|
+
declare const ArrowDownIcon: ({ fill, className }: any) => import("react").JSX.Element;
|
|
2
2
|
export default ArrowDownIcon;
|
|
@@ -1,10 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
exports
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
var _b = _a.fill, fill = _b === void 0 ? 'none' : _b, _c = _a.className, className = _c === void 0 ? 'h-6 w-6' : _c;
|
|
7
|
-
return ((0, jsx_runtime_1.jsx)("svg", tslib_1.__assign({ width: "20", height: "20", viewBox: "0 0 20 20", fill: fill, className: className, xmlns: "http://www.w3.org/2000/svg" }, { children: (0, jsx_runtime_1.jsx)("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M4.4107 6.91073C4.73614 6.5853 5.26378 6.5853 5.58922 6.91073L9.99996 11.3215L14.4107 6.91074C14.7361 6.5853 15.2638 6.5853 15.5892 6.91074C15.9147 7.23617 15.9147 7.76381 15.5892 8.08925L10.5892 13.0892C10.2638 13.4147 9.73614 13.4147 9.4107 13.0892L4.4107 8.08925C4.08527 7.76381 4.08527 7.23617 4.4107 6.91073Z", fill: "currentColor" }) })));
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
4
|
+
const ArrowDownIcon = ({ fill = 'none', className = 'h-6 w-6' }) => {
|
|
5
|
+
return ((0, jsx_runtime_1.jsx)("svg", { width: "20", height: "20", viewBox: "0 0 20 20", fill: fill, className: className, xmlns: "http://www.w3.org/2000/svg", children: (0, jsx_runtime_1.jsx)("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M4.4107 6.91073C4.73614 6.5853 5.26378 6.5853 5.58922 6.91073L9.99996 11.3215L14.4107 6.91074C14.7361 6.5853 15.2638 6.5853 15.5892 6.91074C15.9147 7.23617 15.9147 7.76381 15.5892 8.08925L10.5892 13.0892C10.2638 13.4147 9.73614 13.4147 9.4107 13.0892L4.4107 8.08925C4.08527 7.76381 4.08527 7.23617 4.4107 6.91073Z", fill: "currentColor" }) }));
|
|
8
6
|
};
|
|
9
|
-
exports
|
|
7
|
+
exports.default = ArrowDownIcon;
|
|
10
8
|
//# sourceMappingURL=arrow-down.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"arrow-down.js","sourceRoot":"","sources":["../../../data-table/icons/arrow-down.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"arrow-down.js","sourceRoot":"","sources":["../../../data-table/icons/arrow-down.tsx"],"names":[],"mappings":";;;AAAA,MAAM,aAAa,GAAG,CAAC,EAAE,IAAI,GAAG,MAAM,EAAE,SAAS,GAAG,SAAS,EAAO,EAAE,EAAE;IACtE,OAAO,CACL,gCAAK,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAC,OAAO,EAAC,WAAW,EAAC,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAC,4BAA4B,YAClH,iCAAM,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,SAAS,EACzC,CAAC,EAAC,2TAA2T,EAC7T,IAAI,EAAC,cAAc,GAAE,GACnB,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,kBAAe,aAAa,CAAC"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
exports
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.SortIcon = exports.ArrowDownIcon = exports.AddIcon = void 0;
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
exports.AddIcon = add_1
|
|
7
|
-
|
|
8
|
-
exports.SortIcon = sort_1
|
|
9
|
-
|
|
10
|
-
exports.ArrowDownIcon = arrow_down_1
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const add_1 = tslib_1.__importDefault(require("./add"));
|
|
6
|
+
exports.AddIcon = add_1.default;
|
|
7
|
+
const sort_1 = tslib_1.__importDefault(require("./sort"));
|
|
8
|
+
exports.SortIcon = sort_1.default;
|
|
9
|
+
const arrow_down_1 = tslib_1.__importDefault(require("./arrow-down"));
|
|
10
|
+
exports.ArrowDownIcon = arrow_down_1.default;
|
|
11
11
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../data-table/icons/index.ts"],"names":[],"mappings":";;;;AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../data-table/icons/index.ts"],"names":[],"mappings":";;;;AAAA,wDAA4B;AAK1B,kBALK,aAAO,CAKL;AAJT,0DAA8B;AAM5B,mBANK,cAAQ,CAML;AALV,sEAAyC;AAIvC,wBAJK,oBAAa,CAIL"}
|
package/data-table/icons/sort.js
CHANGED
|
@@ -1,10 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
exports
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
var direction = _a.direction;
|
|
7
|
-
return ((0, jsx_runtime_1.jsx)("svg", tslib_1.__assign({ width: "24", height: "24", viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, { children: (0, jsx_runtime_1.jsx)("g", { children: (0, jsx_runtime_1.jsxs)("g", { children: [(0, jsx_runtime_1.jsx)("path", { d: "M9.00999 20.5L3.98999 15.49", stroke: direction === 'desc' ? 'currentColor' : '#A8A8A8', strokeWidth: "1.5", strokeMiterlimit: "10", strokeLinecap: "round", strokeLinejoin: "round" }), (0, jsx_runtime_1.jsx)("path", { d: "M9.01001 3.5V20.5", stroke: direction === 'desc' ? 'currentColor' : '#A8A8A8', strokeWidth: "1.5", strokeMiterlimit: "10", strokeLinecap: "round", strokeLinejoin: "round" }), (0, jsx_runtime_1.jsx)("path", { d: "M14.99 3.5L20.01 8.51", stroke: direction === 'asc' ? 'currentColor' : '#A8A8A8', strokeWidth: "1.5", strokeMiterlimit: "10", strokeLinecap: "round", strokeLinejoin: "round" }), (0, jsx_runtime_1.jsx)("path", { d: "M14.99 20.5V3.5", stroke: direction === 'asc' ? 'currentColor' : '#A8A8A8', strokeWidth: "1.5", strokeMiterlimit: "10", strokeLinecap: "round", strokeLinejoin: "round" })] }) }) })));
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
4
|
+
const SortIcon = ({ direction }) => {
|
|
5
|
+
return ((0, jsx_runtime_1.jsx)("svg", { width: "24", height: "24", viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: (0, jsx_runtime_1.jsx)("g", { children: (0, jsx_runtime_1.jsxs)("g", { children: [(0, jsx_runtime_1.jsx)("path", { d: "M9.00999 20.5L3.98999 15.49", stroke: direction === 'desc' ? 'currentColor' : '#A8A8A8', strokeWidth: "1.5", strokeMiterlimit: "10", strokeLinecap: "round", strokeLinejoin: "round" }), (0, jsx_runtime_1.jsx)("path", { d: "M9.01001 3.5V20.5", stroke: direction === 'desc' ? 'currentColor' : '#A8A8A8', strokeWidth: "1.5", strokeMiterlimit: "10", strokeLinecap: "round", strokeLinejoin: "round" }), (0, jsx_runtime_1.jsx)("path", { d: "M14.99 3.5L20.01 8.51", stroke: direction === 'asc' ? 'currentColor' : '#A8A8A8', strokeWidth: "1.5", strokeMiterlimit: "10", strokeLinecap: "round", strokeLinejoin: "round" }), (0, jsx_runtime_1.jsx)("path", { d: "M14.99 20.5V3.5", stroke: direction === 'asc' ? 'currentColor' : '#A8A8A8', strokeWidth: "1.5", strokeMiterlimit: "10", strokeLinecap: "round", strokeLinejoin: "round" })] }) }) }));
|
|
8
6
|
};
|
|
9
|
-
exports
|
|
7
|
+
exports.default = SortIcon;
|
|
10
8
|
//# sourceMappingURL=sort.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sort.js","sourceRoot":"","sources":["../../../data-table/icons/sort.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"sort.js","sourceRoot":"","sources":["../../../data-table/icons/sort.tsx"],"names":[],"mappings":";;;AAAA,MAAM,QAAQ,GAAG,CAAC,EAAE,SAAS,EAA0B,EAAE,EAAE;IACzD,OAAO,CACL,gCAAK,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAC,OAAO,EAAC,WAAW,EAAC,IAAI,EAAC,MAAM,EAAC,KAAK,EAAC,4BAA4B,YAC5F,wCACE,0CACE,iCAAM,CAAC,EAAC,6BAA6B,EAAC,MAAM,EAAE,SAAS,KAAK,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,EAAE,WAAW,EAAC,KAAK,EAAC,gBAAgB,EAAC,IAAI,EAAC,aAAa,EAAC,OAAO,EAAC,cAAc,EAAC,OAAO,GAAE,EACvL,iCAAM,CAAC,EAAC,mBAAmB,EAAC,MAAM,EAAE,SAAS,KAAK,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,EAAE,WAAW,EAAC,KAAK,EAAC,gBAAgB,EAAC,IAAI,EAAC,aAAa,EAAC,OAAO,EAAC,cAAc,EAAC,OAAO,GAAE,EAC7K,iCAAM,CAAC,EAAC,uBAAuB,EAAC,MAAM,EAAE,SAAS,KAAK,KAAK,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,EAAE,WAAW,EAAC,KAAK,EAAC,gBAAgB,EAAC,IAAI,EAAC,aAAa,EAAC,OAAO,EAAC,cAAc,EAAC,OAAO,GAAE,EAChL,iCAAM,CAAC,EAAC,iBAAiB,EAAC,MAAM,EAAE,SAAS,KAAK,KAAK,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,EAAE,WAAW,EAAC,KAAK,EAAC,gBAAgB,EAAC,IAAI,EAAC,aAAa,EAAC,OAAO,EAAC,cAAc,EAAC,OAAO,GAAE,IACxK,GACF,GACA,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,kBAAe,QAAQ,CAAC"}
|
package/data-table/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
exports
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
exports
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
const data_table_1 = tslib_1.__importDefault(require("./data-table"));
|
|
5
|
+
exports.default = data_table_1.default;
|
|
6
6
|
//# sourceMappingURL=index.js.map
|
package/data-table/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../data-table/index.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../data-table/index.ts"],"names":[],"mappings":";;;AAAA,sEAAqC;AAErC,kBAAe,oBAAS,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
exports
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
exports
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
const simple_data_table_1 = tslib_1.__importDefault(require("./simple-data-table"));
|
|
5
|
+
exports.default = simple_data_table_1.default;
|
|
6
6
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../data-table/simple/index.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../data-table/simple/index.ts"],"names":[],"mappings":";;;AAAA,oFAAkD;AAElD,kBAAe,2BAAe,CAAC"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { SimpleDataTableProps } from './simple-data-table.props';
|
|
2
|
-
declare const SimpleDataTable: ({ header, data, column, mobileColumns, isLoading, updateData, select, selectedRows, expandAll, visitedRows, }: SimpleDataTableProps) => import("react
|
|
2
|
+
declare const SimpleDataTable: ({ header, data, column, mobileColumns, isLoading, updateData, select, selectedRows, expandAll, visitedRows, }: SimpleDataTableProps) => import("react").JSX.Element;
|
|
3
3
|
export default SimpleDataTable;
|
|
@@ -1,98 +1,99 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
exports
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const react_1 = require("react");
|
|
6
|
+
const react_table_1 = require("@tanstack/react-table");
|
|
7
|
+
const use_window_dimensions_1 = tslib_1.__importDefault(require("../hooks/use-window-dimensions"));
|
|
8
|
+
const ui_kit_1 = require("@pezeshk-book/ui-kit");
|
|
9
|
+
const tailwind_merge_config_1 = tslib_1.__importDefault(require("../../tailwind-merge-config"));
|
|
10
|
+
const icons_1 = require("../icons");
|
|
11
|
+
const fillArray = (n) => Array.from({ length: n + 1 }, (_, i) => i);
|
|
12
|
+
const SimpleDataTable = ({ header, data, column, mobileColumns, isLoading = false, updateData, select, selectedRows, expandAll = false, visitedRows = [], }) => {
|
|
13
|
+
const [rowSelection, setRowSelection] = (0, react_1.useState)({});
|
|
14
|
+
const [sorting, setSorting] = (0, react_1.useState)([]);
|
|
15
|
+
const [columnVisibility, setColumnVisibility] = (0, react_1.useState)({});
|
|
16
|
+
const [rowExpander, setRowExpander] = (0, react_1.useState)([]);
|
|
17
|
+
const dimensions = (0, use_window_dimensions_1.default)();
|
|
18
|
+
const handleMobileExpander = (row) => {
|
|
19
19
|
if (rowExpander.indexOf(row.index) === -1) {
|
|
20
|
-
setRowExpander(
|
|
20
|
+
setRowExpander([...rowExpander, row.index]);
|
|
21
21
|
}
|
|
22
22
|
else {
|
|
23
|
-
setRowExpander(
|
|
23
|
+
setRowExpander(value => value.filter(item => item !== row.index));
|
|
24
24
|
}
|
|
25
25
|
};
|
|
26
|
-
|
|
26
|
+
const columns = [
|
|
27
27
|
{
|
|
28
28
|
id: 'mobileExpander',
|
|
29
29
|
accessorKey: 'mobileExpander',
|
|
30
|
-
header:
|
|
31
|
-
cell:
|
|
32
|
-
|
|
33
|
-
return ((0, jsx_runtime_1.jsx)(ui_kit_1.Button, { onClick: function () { return handleMobileExpander(row); }, startAdornment: (0, jsx_runtime_1.jsx)(icons_1.AddIcon, { className: (0, tailwind_merge_config_1["default"])('absolute transition-all duration-500', rowExpander.indexOf(row.index) !== -1 ? 'rotate-[225deg]' : '') }), variant: 'text', size: 'tiny', className: '!p-0' }));
|
|
30
|
+
header: () => null,
|
|
31
|
+
cell: ({ row }) => {
|
|
32
|
+
return ((0, jsx_runtime_1.jsx)(ui_kit_1.Button, { onClick: () => handleMobileExpander(row), startAdornment: (0, jsx_runtime_1.jsx)(icons_1.AddIcon, { className: (0, tailwind_merge_config_1.default)('absolute transition-all duration-500', rowExpander.indexOf(row.index) !== -1 ? 'rotate-[225deg]' : '') }), variant: 'text', size: 'tiny', className: '!p-0' }));
|
|
34
33
|
},
|
|
35
|
-
enableSorting: false
|
|
34
|
+
enableSorting: false,
|
|
36
35
|
},
|
|
37
36
|
{
|
|
38
37
|
id: 'select',
|
|
39
38
|
accessorKey: 'select',
|
|
40
|
-
header:
|
|
41
|
-
var table = _a.table;
|
|
39
|
+
header: ({ table }) => {
|
|
42
40
|
return select ? ((0, jsx_runtime_1.jsx)(ui_kit_1.Checkbox, { size: 'small', indeterminate: table.getIsSomeRowsSelected(), checked: table.getIsAllRowsSelected(), onChange: table.getToggleAllRowsSelectedHandler() })) : null;
|
|
43
41
|
},
|
|
44
|
-
cell:
|
|
45
|
-
var row = _a.row;
|
|
42
|
+
cell: ({ row }) => {
|
|
46
43
|
return row.getCanSelect() && select ? ((0, jsx_runtime_1.jsx)(ui_kit_1.Checkbox, { size: 'small', onChange: row.getToggleSelectedHandler(), checked: row.getIsSelected() })) : null;
|
|
47
44
|
},
|
|
48
|
-
enableSorting: false
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
45
|
+
enableSorting: false,
|
|
46
|
+
},
|
|
47
|
+
...column,
|
|
48
|
+
];
|
|
49
|
+
const table = (0, react_table_1.useReactTable)({
|
|
50
|
+
data,
|
|
51
|
+
columns,
|
|
54
52
|
getCoreRowModel: (0, react_table_1.getCoreRowModel)(),
|
|
53
|
+
getSortedRowModel: (0, react_table_1.getSortedRowModel)(),
|
|
55
54
|
state: {
|
|
56
|
-
columnVisibility
|
|
57
|
-
rowSelection
|
|
55
|
+
columnVisibility,
|
|
56
|
+
rowSelection,
|
|
57
|
+
sorting,
|
|
58
58
|
},
|
|
59
59
|
onColumnVisibilityChange: setColumnVisibility,
|
|
60
60
|
onRowSelectionChange: setRowSelection,
|
|
61
|
+
onSortingChange: setSorting,
|
|
61
62
|
meta: {
|
|
62
|
-
updateData:
|
|
63
|
+
updateData: (value, info) => {
|
|
63
64
|
if (updateData) {
|
|
64
65
|
updateData(value, info);
|
|
65
66
|
}
|
|
66
|
-
}
|
|
67
|
-
}
|
|
67
|
+
},
|
|
68
|
+
},
|
|
68
69
|
});
|
|
69
|
-
(0, react_1.useEffect)(
|
|
70
|
+
(0, react_1.useEffect)(() => {
|
|
70
71
|
if (selectedRows) {
|
|
71
|
-
selectedRows(table.getSelectedRowModel().rows.map(
|
|
72
|
+
selectedRows(table.getSelectedRowModel().rows.map((row) => {
|
|
72
73
|
return row.original;
|
|
73
74
|
}));
|
|
74
75
|
}
|
|
75
76
|
}, [rowSelection]);
|
|
76
|
-
(0, react_1.useEffect)(
|
|
77
|
-
|
|
77
|
+
(0, react_1.useEffect)(() => {
|
|
78
|
+
const obj = {};
|
|
78
79
|
if (dimensions.width < 640) {
|
|
79
|
-
columns.forEach(
|
|
80
|
+
columns.forEach((value) => {
|
|
80
81
|
if (value.id) {
|
|
81
82
|
obj[value.id] = mobileColumns === null || mobileColumns === void 0 ? void 0 : mobileColumns.includes(value.id);
|
|
82
83
|
}
|
|
83
84
|
});
|
|
84
|
-
setColumnVisibility(
|
|
85
|
+
setColumnVisibility({ ...obj, mobileExpander: true, select: select });
|
|
85
86
|
}
|
|
86
87
|
else {
|
|
87
|
-
columns.forEach(
|
|
88
|
+
columns.forEach((value) => {
|
|
88
89
|
if (value.id) {
|
|
89
90
|
obj[value.id] = true;
|
|
90
91
|
}
|
|
91
92
|
});
|
|
92
|
-
setColumnVisibility(
|
|
93
|
+
setColumnVisibility({ ...obj, mobileExpander: false, select: select });
|
|
93
94
|
}
|
|
94
95
|
}, [dimensions.width]);
|
|
95
|
-
(0, react_1.useEffect)(
|
|
96
|
+
(0, react_1.useEffect)(() => {
|
|
96
97
|
if (expandAll && dimensions.width < 640) {
|
|
97
98
|
setRowExpander(fillArray(data.length));
|
|
98
99
|
}
|
|
@@ -100,18 +101,18 @@ var SimpleDataTable = function (_a) {
|
|
|
100
101
|
setRowExpander([]);
|
|
101
102
|
}
|
|
102
103
|
}, [expandAll, dimensions.width]);
|
|
103
|
-
return ((0, jsx_runtime_1.jsxs)(ui_kit_1.Div,
|
|
104
|
-
return ((0, jsx_runtime_1.jsx)("td",
|
|
105
|
-
}) }
|
|
106
|
-
return ((0, jsx_runtime_1.jsxs)(react_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("tr",
|
|
107
|
-
return ((0, jsx_runtime_1.jsx)("td",
|
|
108
|
-
}) })
|
|
104
|
+
return ((0, jsx_runtime_1.jsxs)(ui_kit_1.Div, { className: 'w-full flex-col relative', children: [isLoading && data.length > 0 ? ((0, jsx_runtime_1.jsx)(ui_kit_1.Div, { className: 'absolute bg-control bg-opacity-25 w-full h-full items-center justify-center z-50 rounded-xl', children: (0, jsx_runtime_1.jsx)(ui_kit_1.LoadingIndicator, { size: 'huge', color: 'control' }) })) : null, (0, jsx_runtime_1.jsx)(ui_kit_1.Div, { className: 'bg-white border w-full border-control-300 border-opacity-50 p-2 rounded-xl max-w-full flex-col relative', children: (0, jsx_runtime_1.jsxs)("table", { className: 'w-full table-auto', children: [(0, jsx_runtime_1.jsx)("thead", { className: 'bg-control-50 h-14 sticky top-0 z-10', children: table.getHeaderGroups().map(headerGroup => ((0, jsx_runtime_1.jsx)("tr", { children: headerGroup.headers.map(header => ((0, jsx_runtime_1.jsx)("th", { className: (0, tailwind_merge_config_1.default)('hover:cursor-pointer', header.column.getCanSort() ? 'select-none' : ''), onClick: header.column.getToggleSortingHandler(), children: (0, jsx_runtime_1.jsxs)(ui_kit_1.Div, { className: 'justify-center items-center gap-1', children: [header.column.getCanSort() ? ((0, jsx_runtime_1.jsx)(ui_kit_1.Div, { className: 'text-control-800', children: (0, jsx_runtime_1.jsx)(icons_1.SortIcon, { direction: header.column.getIsSorted() }) })) : null, (0, jsx_runtime_1.jsx)(ui_kit_1.Div, { className: 'flex items-center justify-center', children: header.isPlaceholder ? null : ((0, jsx_runtime_1.jsx)(ui_kit_1.Text, { color: header.column.getIsSorted() ? 'primary' : 'grey.800', typography: 'sm', type: 'bold', children: (0, react_table_1.flexRender)(header.column.columnDef.header, header.getContext()) })) })] }) }, header.id))) }, headerGroup.id))) }), isLoading && !data.length ? ((0, jsx_runtime_1.jsx)("tbody", { children: [...new Array(5)].map((_, index) => ((0, jsx_runtime_1.jsx)("tr", { className: 'h-16', children: table.getFlatHeaders().map(cell => {
|
|
105
|
+
return ((0, jsx_runtime_1.jsx)("td", { className: 'px-1', children: (0, jsx_runtime_1.jsx)(ui_kit_1.Skeleton, { color: 'control', className: '!max-w-full !min-w-full' }) }, cell.id));
|
|
106
|
+
}) }, `loadingItem_${index}`))) })) : !isLoading && !data.length ? ((0, jsx_runtime_1.jsx)("tbody", { children: (0, jsx_runtime_1.jsx)("tr", { className: 'h-48', children: (0, jsx_runtime_1.jsx)("td", { colSpan: table.getFlatHeaders().length, children: (0, jsx_runtime_1.jsx)(ui_kit_1.Text, { typography: 'lg', type: 'bold', children: "\u0627\u0637\u0644\u0627\u0639\u0627\u062A\u06CC \u0628\u0631\u0627\u06CC \u0646\u0645\u0627\u06CC\u0634 \u0648\u062C\u0648\u062F \u0646\u062F\u0627\u0631\u062F!" }) }) }) })) : ((0, jsx_runtime_1.jsx)("tbody", { children: table.getRowModel().rows.map((row) => {
|
|
107
|
+
return ((0, jsx_runtime_1.jsxs)(react_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("tr", { className: (0, tailwind_merge_config_1.default)('h-16 hover:bg-primary-50', row.getIsSelected() && 'bg-slate-200', (visitedRows === null || visitedRows === void 0 ? void 0 : visitedRows.indexOf(row.index)) !== -1 ? 'bg-slate-300' : ''), children: row.getVisibleCells().map(cell => {
|
|
108
|
+
return ((0, jsx_runtime_1.jsx)("td", { className: 'px-1', children: isLoading ? ((0, jsx_runtime_1.jsx)(ui_kit_1.Skeleton, { color: 'control', className: '!max-w-full !min-w-full' })) : (0, jsx_runtime_1.jsx)(ui_kit_1.Div, { className: 'flex-col items-center', children: (0, react_table_1.flexRender)(cell.column.columnDef.cell, cell.getContext()) }) }, cell.id));
|
|
109
|
+
}) }), rowExpander.indexOf(row.index) !== -1 && ((0, jsx_runtime_1.jsx)("tr", { className: (0, tailwind_merge_config_1.default)('bg-primary-50'), children: (0, jsx_runtime_1.jsx)("td", { colSpan: row.getVisibleCells().length, children: (0, jsx_runtime_1.jsx)(ui_kit_1.Div, { className: 'flex-col', children: row.getAllCells().map((mobileCell) => {
|
|
109
110
|
if (mobileCell.column.getIsVisible() || mobileCell.column.id === 'expander') {
|
|
110
111
|
return null;
|
|
111
112
|
}
|
|
112
|
-
return ((0, jsx_runtime_1.jsx)(ui_kit_1.Div,
|
|
113
|
-
}) })
|
|
114
|
-
}) }))] })
|
|
113
|
+
return ((0, jsx_runtime_1.jsx)(ui_kit_1.Div, { className: 'gap-2 p-2 items-start', children: (0, jsx_runtime_1.jsxs)(ui_kit_1.Div, { className: 'flex items-center gap-2', children: [(0, jsx_runtime_1.jsxs)(ui_kit_1.Text, { typography: 'sm', type: 'bold', children: [header[mobileCell.column.id], ":"] }), (0, jsx_runtime_1.jsx)(ui_kit_1.Div, { className: 'flex-1', children: (0, react_table_1.flexRender)(mobileCell.column.columnDef.cell, mobileCell.getContext()) })] }) }, mobileCell.id));
|
|
114
|
+
}) }) }) }))] }, row.id));
|
|
115
|
+
}) }))] }) })] }));
|
|
115
116
|
};
|
|
116
|
-
exports
|
|
117
|
+
exports.default = SimpleDataTable;
|
|
117
118
|
//# sourceMappingURL=simple-data-table.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"simple-data-table.js","sourceRoot":"","sources":["../../../data-table/simple/simple-data-table.tsx"],"names":[],"mappings":";;;;AAAA
|
|
1
|
+
{"version":3,"file":"simple-data-table.js","sourceRoot":"","sources":["../../../data-table/simple/simple-data-table.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { DateTimePickerProps } from './date-time-picker.props';
|
|
2
|
-
declare const DateTimePicker: ({ dateValue, timeValue, onDateChange, onTimeChange, onDateTimeSelect, onCancel, dateFormat, calendarType, disablePreviousDays, disableSubsequentDays, holidays, timeFormat, periodLabels, className, size, hasConfirmation, onConfirm, }: DateTimePickerProps) => import("react
|
|
2
|
+
declare const DateTimePicker: ({ dateValue, timeValue, onDateChange, onTimeChange, onDateTimeSelect, onCancel, dateFormat, calendarType, disablePreviousDays, disableSubsequentDays, holidays, timeFormat, periodLabels, className, size, hasConfirmation, onConfirm, }: DateTimePickerProps) => import("react").JSX.Element;
|
|
3
3
|
export default DateTimePicker;
|
|
@@ -1,62 +1,61 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
'use client';
|
|
3
|
-
exports
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
var measureHeight = function () {
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
6
|
+
const react_1 = require("react");
|
|
7
|
+
const ui_kit_1 = require("@pezeshk-book/ui-kit");
|
|
8
|
+
const calendar_1 = tslib_1.__importDefault(require("../calendar"));
|
|
9
|
+
const time_picker_1 = tslib_1.__importDefault(require("../time-picker"));
|
|
10
|
+
const tailwind_merge_config_1 = tslib_1.__importDefault(require("../tailwind-merge-config"));
|
|
11
|
+
const DateTimePicker = ({ dateValue, timeValue = '', onDateChange, onTimeChange, onDateTimeSelect, onCancel, dateFormat, calendarType = 'jalali', disablePreviousDays = false, disableSubsequentDays = false, holidays = [], timeFormat = '24', periodLabels = 'fa', className = '', size = 'medium', hasConfirmation = false, onConfirm, }) => {
|
|
12
|
+
const [calendarHeight, setCalendarHeight] = (0, react_1.useState)(0);
|
|
13
|
+
const calendarRef = (0, react_1.useRef)(null);
|
|
14
|
+
(0, react_1.useEffect)(() => {
|
|
15
|
+
const measureHeight = () => {
|
|
17
16
|
if (calendarRef.current) {
|
|
18
|
-
|
|
17
|
+
const height = calendarRef.current.offsetHeight;
|
|
19
18
|
setCalendarHeight(height);
|
|
20
19
|
}
|
|
21
20
|
};
|
|
22
21
|
measureHeight();
|
|
23
|
-
|
|
22
|
+
const resizeObserver = new ResizeObserver(() => {
|
|
24
23
|
measureHeight();
|
|
25
24
|
});
|
|
26
25
|
if (calendarRef.current) {
|
|
27
26
|
resizeObserver.observe(calendarRef.current);
|
|
28
27
|
}
|
|
29
|
-
return
|
|
28
|
+
return () => {
|
|
30
29
|
resizeObserver.disconnect();
|
|
31
30
|
};
|
|
32
31
|
}, [dateValue, size, calendarType]);
|
|
33
|
-
|
|
32
|
+
const handleDateChange = (date) => {
|
|
34
33
|
onDateChange === null || onDateChange === void 0 ? void 0 : onDateChange(date);
|
|
35
34
|
if (!hasConfirmation) {
|
|
36
35
|
onDateTimeSelect === null || onDateTimeSelect === void 0 ? void 0 : onDateTimeSelect({ date: date, time: timeValue });
|
|
37
36
|
}
|
|
38
37
|
};
|
|
39
|
-
|
|
38
|
+
const handleTimeChange = (time) => {
|
|
40
39
|
onTimeChange === null || onTimeChange === void 0 ? void 0 : onTimeChange(time);
|
|
41
40
|
if (!hasConfirmation) {
|
|
42
41
|
onDateTimeSelect === null || onDateTimeSelect === void 0 ? void 0 : onDateTimeSelect({ date: dateValue, time: time });
|
|
43
42
|
}
|
|
44
43
|
};
|
|
45
|
-
|
|
44
|
+
const handleConfirm = () => {
|
|
46
45
|
if (dateValue && timeValue) {
|
|
47
|
-
|
|
46
|
+
const dateTime = { date: dateValue, time: timeValue };
|
|
48
47
|
onConfirm === null || onConfirm === void 0 ? void 0 : onConfirm(dateTime);
|
|
49
48
|
onDateTimeSelect === null || onDateTimeSelect === void 0 ? void 0 : onDateTimeSelect(dateTime);
|
|
50
49
|
}
|
|
51
50
|
};
|
|
52
|
-
|
|
51
|
+
const getTimePickerMaxHeight = () => {
|
|
53
52
|
if (calendarHeight === 0) {
|
|
54
53
|
return 'max-h-96';
|
|
55
54
|
}
|
|
56
|
-
return
|
|
55
|
+
return `${calendarHeight}px`;
|
|
57
56
|
};
|
|
58
|
-
|
|
59
|
-
return ((0, jsx_runtime_1.jsxs)(ui_kit_1.Div,
|
|
57
|
+
const isDateTimeSelected = dateValue && timeValue;
|
|
58
|
+
return ((0, jsx_runtime_1.jsxs)(ui_kit_1.Div, { className: (0, tailwind_merge_config_1.default)('bg-white border border-gray-300 rounded-md shadow-sm w-fit flex-col', className), children: [(0, jsx_runtime_1.jsxs)(ui_kit_1.Div, { className: "items-start", children: [(0, jsx_runtime_1.jsx)(ui_kit_1.Div, { className: "overflow-hidden flex", style: { height: calendarHeight > 0 ? `${calendarHeight}px` : 'auto' }, children: (0, jsx_runtime_1.jsx)(time_picker_1.default, { value: timeValue, onChange: handleTimeChange, format: timeFormat, periodLabels: periodLabels, className: "border-0 shadow-none h-full", maxHeight: getTimePickerMaxHeight(), size: size }) }), (0, jsx_runtime_1.jsx)(ui_kit_1.Div, { ref: calendarRef, className: "border-r border-gray-200", children: (0, jsx_runtime_1.jsx)(calendar_1.default, { selected: dateValue, onChange: handleDateChange, dateFormat: dateFormat, type: calendarType, disablePreviousDays: disablePreviousDays, disableSubsequentDays: disableSubsequentDays, holidays: holidays, variant: "simple", size: size }) })] }), hasConfirmation && ((0, jsx_runtime_1.jsxs)(ui_kit_1.Div, { className: "border-t border-gray-200 p-3 gap-2", children: [(0, jsx_runtime_1.jsx)(ui_kit_1.Button, { className: 'w-full', size: 'small', disabled: !isDateTimeSelected, onClick: isDateTimeSelected ? handleConfirm : undefined, children: "\u062A\u0627\u06CC\u06CC\u062F" }), (0, jsx_runtime_1.jsx)(ui_kit_1.Button, { className: 'w-full', variant: "outlined", color: 'danger', size: 'small', onClick: () => onCancel === null || onCancel === void 0 ? void 0 : onCancel(), children: "\u0627\u0646\u0635\u0631\u0627\u0641" })] }))] }));
|
|
60
59
|
};
|
|
61
|
-
exports
|
|
60
|
+
exports.default = DateTimePicker;
|
|
62
61
|
//# sourceMappingURL=date-time-picker.js.map
|