phx-react 1.3.1122 → 1.3.1123

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.
@@ -5,10 +5,11 @@ export type PHXDateTimelineItem = {
5
5
  time: Date;
6
6
  };
7
7
  export type PHXDateTimelineProps = {
8
- timeline?: PHXDateTimelineItem[];
9
- daysOfWeek?: string[];
8
+ timeline?: Array<PHXDateTimelineItem>;
9
+ daysOfWeek?: Array<string>;
10
10
  windowSize?: number;
11
11
  onChangeTime?(date: Date): void;
12
+ isPrevDisabled?: any;
12
13
  };
13
- declare const PHXTabDate: ({ timeline: timelineProp, daysOfWeek, windowSize, onChangeTime, }: PHXDateTimelineProps) => React.JSX.Element;
14
+ declare const PHXTabDate: ({ daysOfWeek, isPrevDisabled, onChangeTime, timeline: timelineProp, windowSize, }: PHXDateTimelineProps) => React.JSX.Element;
14
15
  export default PHXTabDate;
@@ -4,7 +4,7 @@ var tslib_1 = require("tslib");
4
4
  var react_1 = tslib_1.__importStar(require("react"));
5
5
  var defaultDaysOfWeek = ['Chủ nhật', 'Thứ 2', 'Thứ 3', 'Thứ 4', 'Thứ 5', 'Thứ 6', 'Thứ 7'];
6
6
  var PHXTabDate = function (_a) {
7
- var timelineProp = _a.timeline, _b = _a.daysOfWeek, daysOfWeek = _b === void 0 ? defaultDaysOfWeek : _b, _c = _a.windowSize, windowSize = _c === void 0 ? 8 : _c, onChangeTime = _a.onChangeTime;
7
+ var _b = _a.daysOfWeek, daysOfWeek = _b === void 0 ? defaultDaysOfWeek : _b, isPrevDisabled = _a.isPrevDisabled, onChangeTime = _a.onChangeTime, timelineProp = _a.timeline, _c = _a.windowSize, windowSize = _c === void 0 ? 8 : _c;
8
8
  // tự build 30 ngày trước + hôm nay
9
9
  var buildDefaultTimeline = function () {
10
10
  function getPreviousDays(baseDate, n) {
@@ -40,7 +40,11 @@ var PHXTabDate = function (_a) {
40
40
  // nút trái
41
41
  var handlePrevClick = function () {
42
42
  if (startIndex - 1 >= 0) {
43
- setStartIndex(function (prev) { return prev - 1; });
43
+ var newIndex = startIndex - 1;
44
+ setStartIndex(newIndex);
45
+ var newActiveTime = timeline[newIndex].time;
46
+ setActiveIndex(newIndex);
47
+ onChangeTime === null || onChangeTime === void 0 ? void 0 : onChangeTime(newActiveTime);
44
48
  }
45
49
  };
46
50
  // nút phải
@@ -50,24 +54,24 @@ var PHXTabDate = function (_a) {
50
54
  }
51
55
  };
52
56
  return (react_1["default"].createElement("div", { className: 'flex w-full items-center' },
53
- react_1["default"].createElement("button", { onClick: handlePrevClick, className: 'flex-shrink-0 flex mr-1 items-center justify-center w-[40px] h-[80px] \n border border-gray-300 bg-white hover:bg-gray-200 rounded-lg' },
54
- react_1["default"].createElement("svg", { xmlns: 'http://www.w3.org/2000/svg', width: '24', height: '24', viewBox: '0 0 24 24', fill: 'none' },
55
- react_1["default"].createElement("path", { d: 'M15 18L9 12L15 6', stroke: '#4A4A4A', strokeWidth: '2', strokeLinecap: 'round', strokeLinejoin: 'round' }))),
57
+ react_1["default"].createElement("button", { className: '\n mr-1 flex h-[80px] w-[40px] flex-shrink-0 items-center justify-center \n rounded-lg border border-gray-300 bg-white hover:bg-gray-200\n disabled:cursor-not-allowed disabled:bg-gray-100 disabled:text-gray-400\n ', disabled: isPrevDisabled || startIndex === 0, onClick: handlePrevClick },
58
+ react_1["default"].createElement("svg", { fill: 'none', height: '24', stroke: 'currentColor', viewBox: '0 0 24 24', width: '24', xmlns: 'http://www.w3.org/2000/svg' },
59
+ react_1["default"].createElement("path", { d: 'M15 18L9 12L15 6', strokeLinecap: 'round', strokeLinejoin: 'round', strokeWidth: '2' }))),
56
60
  react_1["default"].createElement("div", { className: 'flex w-full overflow-x-auto xl:overflow-x-visible' }, visibleDays.map(function (item, index) {
57
61
  var globalIndex = startIndex + index;
58
62
  var isActive = activeIndex === globalIndex;
59
- return (react_1["default"].createElement("div", { key: globalIndex, className: 'flex-shrink-0 min-w-[120px] sm:flex-1 xl:min-w-0' },
60
- react_1["default"].createElement("button", { onClick: function () {
63
+ return (react_1["default"].createElement("div", { key: globalIndex, className: 'min-w-[120px] flex-shrink-0 sm:flex-1 xl:min-w-0' },
64
+ react_1["default"].createElement("button", { className: "".concat(index === 0 && 'rounded-l-lg border-l', " \n ").concat(index === visibleDays.length - 1 && 'rounded-r-lg', " \n ").concat(isActive &&
65
+ 'h-[80px] !border-b-gray-200 !bg-gray-100 !shadow-[inset_0px_2px_1px_0px_rgba(26,26,26,0.2),inset_1px_0px_1px_0px_rgba(26,26,26,0.12)] !ring-0', " \n h-[80px] w-full border-b border-r border-t border-gray-300 bg-white px-4 hover:bg-gray-200"), onClick: function () {
61
66
  setActiveIndex(globalIndex);
62
67
  onChangeTime === null || onChangeTime === void 0 ? void 0 : onChangeTime(item.time);
63
- }, className: "".concat(index === 0 && 'rounded-l-lg border-l', " \n ").concat(index === visibleDays.length - 1 && 'rounded-r-lg', " \n ").concat(isActive &&
64
- '!border-b-gray-200 !bg-gray-100 h-[80px] !shadow-[inset_0px_2px_1px_0px_rgba(26,26,26,0.2),inset_1px_0px_1px_0px_rgba(26,26,26,0.12)] !ring-0', " \n w-full border-b border-r h-[80px] border-t border-gray-300 bg-white px-4 hover:bg-gray-200") },
68
+ } },
65
69
  react_1["default"].createElement("span", { className: 'my-2 text-sm text-gray-600' }, item.title),
66
- react_1["default"].createElement("p", { className: 'mb-1 text-base text-gray-900 font-medium' }, item.date))));
70
+ react_1["default"].createElement("p", { className: 'mb-1 text-base font-medium text-gray-900' }, item.date))));
67
71
  })),
68
- startIndex !== initialStartIndex && (react_1["default"].createElement("button", { onClick: handleNextClick, className: 'flex-shrink-0 flex ml-1 items-center justify-center w-[40px] h-[80px] \n border border-gray-300 bg-white hover:bg-gray-200 rounded-lg' },
69
- react_1["default"].createElement("svg", { xmlns: 'http://www.w3.org/2000/svg', width: '24', height: '24', viewBox: '0 0 24 24', fill: 'none' },
70
- react_1["default"].createElement("path", { d: 'M9 18L15 12L9 6', stroke: '#4A4A4A', strokeWidth: '2', strokeLinecap: 'round', strokeLinejoin: 'round' }))))));
72
+ startIndex !== initialStartIndex && (react_1["default"].createElement("button", { className: 'ml-1 flex h-[80px] w-[40px] flex-shrink-0 items-center justify-center \n rounded-lg border border-gray-300 bg-white hover:bg-gray-200', onClick: handleNextClick },
73
+ react_1["default"].createElement("svg", { fill: 'none', height: '24', viewBox: '0 0 24 24', width: '24', xmlns: 'http://www.w3.org/2000/svg' },
74
+ react_1["default"].createElement("path", { d: 'M9 18L15 12L9 6', stroke: '#4A4A4A', strokeLinecap: 'round', strokeLinejoin: 'round', strokeWidth: '2' }))))));
71
75
  };
72
76
  exports["default"] = PHXTabDate;
73
77
  //# sourceMappingURL=PHXTabDate.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PHXTabDate.js","sourceRoot":"","sources":["../../../../src/components/TabDate/PHXTabDate.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PHXTabDate.js","sourceRoot":"","sources":["../../../../src/components/TabDate/PHXTabDate.tsx"],"names":[],"mappings":"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"}
@@ -5,10 +5,11 @@ export type PHXDateTimelineItem = {
5
5
  time: Date;
6
6
  };
7
7
  export type PHXDateTimelineProps = {
8
- timeline?: PHXDateTimelineItem[];
9
- daysOfWeek?: string[];
8
+ timeline?: Array<PHXDateTimelineItem>;
9
+ daysOfWeek?: Array<string>;
10
10
  windowSize?: number;
11
11
  onChangeTime?(date: Date): void;
12
+ isPrevDisabled?: any;
12
13
  };
13
- declare const PHXTabDate: ({ timeline: timelineProp, daysOfWeek, windowSize, onChangeTime, }: PHXDateTimelineProps) => React.JSX.Element;
14
+ declare const PHXTabDate: ({ daysOfWeek, isPrevDisabled, onChangeTime, timeline: timelineProp, windowSize, }: PHXDateTimelineProps) => React.JSX.Element;
14
15
  export default PHXTabDate;
@@ -1,7 +1,7 @@
1
1
  import React, { useState } from 'react';
2
2
  var defaultDaysOfWeek = ['Chủ nhật', 'Thứ 2', 'Thứ 3', 'Thứ 4', 'Thứ 5', 'Thứ 6', 'Thứ 7'];
3
3
  var PHXTabDate = function (_a) {
4
- var timelineProp = _a.timeline, _b = _a.daysOfWeek, daysOfWeek = _b === void 0 ? defaultDaysOfWeek : _b, _c = _a.windowSize, windowSize = _c === void 0 ? 8 : _c, onChangeTime = _a.onChangeTime;
4
+ var _b = _a.daysOfWeek, daysOfWeek = _b === void 0 ? defaultDaysOfWeek : _b, isPrevDisabled = _a.isPrevDisabled, onChangeTime = _a.onChangeTime, timelineProp = _a.timeline, _c = _a.windowSize, windowSize = _c === void 0 ? 8 : _c;
5
5
  // tự build 30 ngày trước + hôm nay
6
6
  var buildDefaultTimeline = function () {
7
7
  function getPreviousDays(baseDate, n) {
@@ -37,7 +37,11 @@ var PHXTabDate = function (_a) {
37
37
  // nút trái
38
38
  var handlePrevClick = function () {
39
39
  if (startIndex - 1 >= 0) {
40
- setStartIndex(function (prev) { return prev - 1; });
40
+ var newIndex = startIndex - 1;
41
+ setStartIndex(newIndex);
42
+ var newActiveTime = timeline[newIndex].time;
43
+ setActiveIndex(newIndex);
44
+ onChangeTime === null || onChangeTime === void 0 ? void 0 : onChangeTime(newActiveTime);
41
45
  }
42
46
  };
43
47
  // nút phải
@@ -47,24 +51,24 @@ var PHXTabDate = function (_a) {
47
51
  }
48
52
  };
49
53
  return (React.createElement("div", { className: 'flex w-full items-center' },
50
- React.createElement("button", { onClick: handlePrevClick, className: 'flex-shrink-0 flex mr-1 items-center justify-center w-[40px] h-[80px] \n border border-gray-300 bg-white hover:bg-gray-200 rounded-lg' },
51
- React.createElement("svg", { xmlns: 'http://www.w3.org/2000/svg', width: '24', height: '24', viewBox: '0 0 24 24', fill: 'none' },
52
- React.createElement("path", { d: 'M15 18L9 12L15 6', stroke: '#4A4A4A', strokeWidth: '2', strokeLinecap: 'round', strokeLinejoin: 'round' }))),
54
+ React.createElement("button", { className: '\n mr-1 flex h-[80px] w-[40px] flex-shrink-0 items-center justify-center \n rounded-lg border border-gray-300 bg-white hover:bg-gray-200\n disabled:cursor-not-allowed disabled:bg-gray-100 disabled:text-gray-400\n ', disabled: isPrevDisabled || startIndex === 0, onClick: handlePrevClick },
55
+ React.createElement("svg", { fill: 'none', height: '24', stroke: 'currentColor', viewBox: '0 0 24 24', width: '24', xmlns: 'http://www.w3.org/2000/svg' },
56
+ React.createElement("path", { d: 'M15 18L9 12L15 6', strokeLinecap: 'round', strokeLinejoin: 'round', strokeWidth: '2' }))),
53
57
  React.createElement("div", { className: 'flex w-full overflow-x-auto xl:overflow-x-visible' }, visibleDays.map(function (item, index) {
54
58
  var globalIndex = startIndex + index;
55
59
  var isActive = activeIndex === globalIndex;
56
- return (React.createElement("div", { key: globalIndex, className: 'flex-shrink-0 min-w-[120px] sm:flex-1 xl:min-w-0' },
57
- React.createElement("button", { onClick: function () {
60
+ return (React.createElement("div", { key: globalIndex, className: 'min-w-[120px] flex-shrink-0 sm:flex-1 xl:min-w-0' },
61
+ React.createElement("button", { className: "".concat(index === 0 && 'rounded-l-lg border-l', " \n ").concat(index === visibleDays.length - 1 && 'rounded-r-lg', " \n ").concat(isActive &&
62
+ 'h-[80px] !border-b-gray-200 !bg-gray-100 !shadow-[inset_0px_2px_1px_0px_rgba(26,26,26,0.2),inset_1px_0px_1px_0px_rgba(26,26,26,0.12)] !ring-0', " \n h-[80px] w-full border-b border-r border-t border-gray-300 bg-white px-4 hover:bg-gray-200"), onClick: function () {
58
63
  setActiveIndex(globalIndex);
59
64
  onChangeTime === null || onChangeTime === void 0 ? void 0 : onChangeTime(item.time);
60
- }, className: "".concat(index === 0 && 'rounded-l-lg border-l', " \n ").concat(index === visibleDays.length - 1 && 'rounded-r-lg', " \n ").concat(isActive &&
61
- '!border-b-gray-200 !bg-gray-100 h-[80px] !shadow-[inset_0px_2px_1px_0px_rgba(26,26,26,0.2),inset_1px_0px_1px_0px_rgba(26,26,26,0.12)] !ring-0', " \n w-full border-b border-r h-[80px] border-t border-gray-300 bg-white px-4 hover:bg-gray-200") },
65
+ } },
62
66
  React.createElement("span", { className: 'my-2 text-sm text-gray-600' }, item.title),
63
- React.createElement("p", { className: 'mb-1 text-base text-gray-900 font-medium' }, item.date))));
67
+ React.createElement("p", { className: 'mb-1 text-base font-medium text-gray-900' }, item.date))));
64
68
  })),
65
- startIndex !== initialStartIndex && (React.createElement("button", { onClick: handleNextClick, className: 'flex-shrink-0 flex ml-1 items-center justify-center w-[40px] h-[80px] \n border border-gray-300 bg-white hover:bg-gray-200 rounded-lg' },
66
- React.createElement("svg", { xmlns: 'http://www.w3.org/2000/svg', width: '24', height: '24', viewBox: '0 0 24 24', fill: 'none' },
67
- React.createElement("path", { d: 'M9 18L15 12L9 6', stroke: '#4A4A4A', strokeWidth: '2', strokeLinecap: 'round', strokeLinejoin: 'round' }))))));
69
+ startIndex !== initialStartIndex && (React.createElement("button", { className: 'ml-1 flex h-[80px] w-[40px] flex-shrink-0 items-center justify-center \n rounded-lg border border-gray-300 bg-white hover:bg-gray-200', onClick: handleNextClick },
70
+ React.createElement("svg", { fill: 'none', height: '24', viewBox: '0 0 24 24', width: '24', xmlns: 'http://www.w3.org/2000/svg' },
71
+ React.createElement("path", { d: 'M9 18L15 12L9 6', stroke: '#4A4A4A', strokeLinecap: 'round', strokeLinejoin: 'round', strokeWidth: '2' }))))));
68
72
  };
69
73
  export default PHXTabDate;
70
74
  //# sourceMappingURL=PHXTabDate.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PHXTabDate.js","sourceRoot":"","sources":["../../../../src/components/TabDate/PHXTabDate.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PHXTabDate.js","sourceRoot":"","sources":["../../../../src/components/TabDate/PHXTabDate.tsx"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "phx-react",
3
- "version": "1.3.1122",
3
+ "version": "1.3.1123",
4
4
  "description": "PHX REACT",
5
5
  "main": "./dist/cjs/index.js",
6
6
  "module": "./dist/esm/index.js",