empower-container 0.1.12 → 0.1.13
Sign up to get free protection for your applications and to get access to all the features.
- package/package.json +1 -1
- package/public/favicon.ico +0 -0
- package/public/index.html +43 -0
- package/public/logo192.png +0 -0
- package/public/logo512.png +0 -0
- package/public/manifest.json +25 -0
- package/public/robots.txt +3 -0
- package/src/index.tsx +15 -0
- package/{dist/cjs → src/main}/DatetimeFormatter.d.ts +0 -0
- package/{dist/cjs → src/main}/DatetimeFormatter.js +0 -0
- package/{dist/esm/DatetimeFormatter.js → src/main/DatetimeFormatter.tsx} +139 -132
- package/{dist/cjs → src/main}/Information.d.ts +0 -0
- package/src/main/Information.js +65 -0
- package/src/main/Information.tsx +112 -0
- package/{dist/cjs → src/main}/MenuBar.d.ts +0 -0
- package/src/main/MenuBar.js +651 -0
- package/src/main/MenuBar.tsx +1074 -0
- package/{dist/cjs → src/main}/Modal.d.ts +0 -0
- package/src/main/Modal.js +24 -0
- package/src/main/Modal.tsx +83 -0
- package/{dist → src/main}/assets/Asset.d.ts +0 -0
- package/{dist → src/main}/assets/Asset.js +0 -0
- package/{dist → src/main}/assets/Asset.tsx +0 -0
- package/{dist → src/main}/assets/icons/icon-check-white-sm.svg +0 -0
- package/{dist → src/main}/assets/images/icon-arrowdown-graydark.svg +0 -0
- package/{dist → src/main}/assets/images/icon-arrowleft-graydark.svg +0 -0
- package/{dist → src/main}/assets/images/icon-arrowright-graydark.svg +0 -0
- package/{dist → src/main}/assets/images/icon-arrowup-graydark.svg +0 -0
- package/{dist → src/main}/assets/images/icon-check-graydark.svg +0 -0
- package/{dist/cjs → src/main}/constants/Constant.d.ts +0 -0
- package/{dist/esm → src/main}/constants/Constant.js +21 -9
- package/{dist/cjs → src/main}/index.d.ts +0 -0
- package/{dist/cjs → src/main}/index.js +0 -0
- package/{dist/esm/index.d.ts → src/main/index.tsx} +3 -1
- package/{dist/cjs → src/main}/inputs/Input.d.ts +0 -0
- package/{dist/cjs → src/main}/inputs/Input.js +36 -7
- package/src/main/inputs/Input.tsx +193 -0
- package/{dist/cjs → src/main}/inputs/InputSelectionHandler.d.ts +0 -0
- package/{dist/cjs → src/main}/inputs/InputSelectionHandler.js +3 -3
- package/src/main/inputs/InputSelectionHandler.tsx +21 -0
- package/{dist/cjs → src/main}/inputs/Select.d.ts +0 -0
- package/{dist/cjs → src/main}/inputs/Select.js +64 -11
- package/src/main/inputs/Select.tsx +654 -0
- package/src/main/tsconfig.common.json +34 -0
- package/src/main/tsconfig.json +35 -0
- package/src/sample/App.css +38 -0
- package/src/sample/App.d.ts +3 -0
- package/src/sample/App.js +13 -0
- package/src/sample/App.test.d.ts +1 -0
- package/src/sample/App.test.js +13 -0
- package/src/sample/App.test.tsx +9 -0
- package/src/sample/App.tsx +15 -0
- package/src/sample/TestMenuBar.d.ts +3 -0
- package/src/sample/TestMenuBar.js +529 -0
- package/src/sample/TestMenuBar.tsx +380 -0
- package/src/sample/react-app-env.d.ts +1 -0
- package/src/sample/reportWebVitals.d.ts +3 -0
- package/src/sample/reportWebVitals.js +38 -0
- package/src/sample/reportWebVitals.ts +15 -0
- package/src/sample/setupTests.d.ts +1 -0
- package/src/sample/setupTests.js +7 -0
- package/src/sample/setupTests.ts +5 -0
- package/src/sample/tsconfig.json +36 -0
- package/{dist → src}/scss/components/_modal.scss +0 -0
- package/{dist → src}/scss/elements/_button.scss +0 -0
- package/{dist → src}/scss/elements/_index.scss +0 -0
- package/{dist → src}/scss/elements/_popover.scss +0 -0
- package/{dist → src}/scss/foundation/_colors.scss +0 -0
- package/{dist → src}/scss/foundation/_mixins.scss +0 -0
- package/{dist → src}/scss/foundation/_normalize.scss +0 -0
- package/{dist → src}/scss/foundation/_settings.scss +0 -0
- package/{dist → src}/scss/foundation/_typography.scss +0 -0
- package/{dist → src}/scss/library/_information.scss +0 -0
- package/{dist → src}/scss/library/_input.scss +0 -0
- package/{dist → src}/scss/library/_menubar.scss +0 -0
- package/{dist → src}/scss/library/_select.scss +0 -0
- package/{dist → src}/scss/style.scss +0 -0
- package/dist/cjs/Information.js +0 -63
- package/dist/cjs/MenuBar.js +0 -537
- package/dist/cjs/Modal.js +0 -32
- package/dist/cjs/assets/Asset.d.ts +0 -16
- package/dist/cjs/assets/Asset.js +0 -30
- package/dist/cjs/constants/Constant.js +0 -35
- package/dist/esm/DatetimeFormatter.d.ts +0 -3
- package/dist/esm/Information.d.ts +0 -10
- package/dist/esm/Information.js +0 -38
- package/dist/esm/MenuBar.d.ts +0 -24
- package/dist/esm/MenuBar.js +0 -532
- package/dist/esm/Modal.d.ts +0 -33
- package/dist/esm/Modal.js +0 -27
- package/dist/esm/assets/Asset.d.ts +0 -16
- package/dist/esm/assets/Asset.js +0 -27
- package/dist/esm/constants/Constant.d.ts +0 -15
- package/dist/esm/index.js +0 -3
- package/dist/esm/inputs/Input.d.ts +0 -25
- package/dist/esm/inputs/Input.js +0 -104
- package/dist/esm/inputs/InputSelectionHandler.d.ts +0 -3
- package/dist/esm/inputs/InputSelectionHandler.js +0 -31
- package/dist/esm/inputs/Select.d.ts +0 -28
- package/dist/esm/inputs/Select.js +0 -399
package/package.json
CHANGED
Binary file
|
@@ -0,0 +1,43 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
<html lang="en">
|
3
|
+
<head>
|
4
|
+
<meta charset="utf-8" />
|
5
|
+
<link rel="icon" href="%PUBLIC_URL%/favicon.ico" />
|
6
|
+
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
7
|
+
<meta name="theme-color" content="#000000" />
|
8
|
+
<meta
|
9
|
+
name="description"
|
10
|
+
content="Web site created using create-react-app"
|
11
|
+
/>
|
12
|
+
<link rel="apple-touch-icon" href="%PUBLIC_URL%/logo192.png" />
|
13
|
+
<!--
|
14
|
+
manifest.json provides metadata used when your web app is installed on a
|
15
|
+
user's mobile device or desktop. See https://developers.google.com/web/fundamentals/web-app-manifest/
|
16
|
+
-->
|
17
|
+
<link rel="manifest" href="%PUBLIC_URL%/manifest.json" />
|
18
|
+
<!--
|
19
|
+
Notice the use of %PUBLIC_URL% in the tags above.
|
20
|
+
It will be replaced with the URL of the `public` folder during the build.
|
21
|
+
Only files inside the `public` folder can be referenced from the HTML.
|
22
|
+
|
23
|
+
Unlike "/favicon.ico" or "favicon.ico", "%PUBLIC_URL%/favicon.ico" will
|
24
|
+
work correctly both with client-side routing and a non-root public URL.
|
25
|
+
Learn how to configure a non-root public URL by running `npm run build`.
|
26
|
+
-->
|
27
|
+
<title>React App</title>
|
28
|
+
</head>
|
29
|
+
<body>
|
30
|
+
<noscript>You need to enable JavaScript to run this app.</noscript>
|
31
|
+
<div id="root"></div>
|
32
|
+
<!--
|
33
|
+
This HTML file is a template.
|
34
|
+
If you open it directly in the browser, you will see an empty page.
|
35
|
+
|
36
|
+
You can add webfonts, meta tags, or analytics to this file.
|
37
|
+
The build step will place the bundled scripts into the <body> tag.
|
38
|
+
|
39
|
+
To begin the development, run `npm start` or `yarn start`.
|
40
|
+
To create a production bundle, use `npm run build` or `yarn build`.
|
41
|
+
-->
|
42
|
+
</body>
|
43
|
+
</html>
|
Binary file
|
Binary file
|
@@ -0,0 +1,25 @@
|
|
1
|
+
{
|
2
|
+
"short_name": "React App",
|
3
|
+
"name": "Create React App Sample",
|
4
|
+
"icons": [
|
5
|
+
{
|
6
|
+
"src": "favicon.ico",
|
7
|
+
"sizes": "64x64 32x32 24x24 16x16",
|
8
|
+
"type": "image/x-icon"
|
9
|
+
},
|
10
|
+
{
|
11
|
+
"src": "logo192.png",
|
12
|
+
"type": "image/png",
|
13
|
+
"sizes": "192x192"
|
14
|
+
},
|
15
|
+
{
|
16
|
+
"src": "logo512.png",
|
17
|
+
"type": "image/png",
|
18
|
+
"sizes": "512x512"
|
19
|
+
}
|
20
|
+
],
|
21
|
+
"start_url": ".",
|
22
|
+
"display": "standalone",
|
23
|
+
"theme_color": "#000000",
|
24
|
+
"background_color": "#ffffff"
|
25
|
+
}
|
package/src/index.tsx
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import ReactDOM from 'react-dom';
|
3
|
+
|
4
|
+
import App from './sample/App';
|
5
|
+
|
6
|
+
ReactDOM.render(
|
7
|
+
<React.StrictMode>
|
8
|
+
<App />
|
9
|
+
</React.StrictMode>,
|
10
|
+
document.getElementById('root')
|
11
|
+
);
|
12
|
+
|
13
|
+
// If you want to start measuring performance in your app, pass a function
|
14
|
+
// to log results (for example: reportWebVitals(console.log))
|
15
|
+
// or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals
|
File without changes
|
File without changes
|
@@ -1,122 +1,128 @@
|
|
1
1
|
/* eslint-disable no-useless-concat */
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
2
|
+
const daysWeekNames = ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'];
|
3
|
+
const daysWeekNamesFull = ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Sat'];
|
4
|
+
const monthNames = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];
|
5
|
+
const monthNamesFull = ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'];
|
6
|
+
const addZero = (i: any) => {
|
7
|
+
let num;
|
8
8
|
if (i < 10) {
|
9
|
+
|
9
10
|
num = "0" + i;
|
10
11
|
}
|
11
12
|
return num;
|
12
|
-
}
|
13
|
-
|
13
|
+
}
|
14
|
+
|
15
|
+
export const getUTCFullTime = (d: any) => {
|
14
16
|
if (Object.prototype.toString.call(d) === '[object Date]') {
|
15
17
|
var h = addZero(d.getUTCHours());
|
16
18
|
var m = addZero(d.getUTCMinutes());
|
17
19
|
var s = addZero(d.getUTCSeconds());
|
18
20
|
return h + ":" + m + ":" + s;
|
19
|
-
}
|
20
|
-
else {
|
21
|
+
} else {
|
21
22
|
return '';
|
22
23
|
}
|
23
|
-
}
|
24
|
-
|
25
|
-
|
26
|
-
if (todayServer === void 0) { todayServer = null; }
|
27
|
-
if (type === void 0) { type = null; }
|
28
|
-
if (getServerTime === void 0) { getServerTime = false; }
|
29
|
-
if (dateOnly === void 0) { dateOnly = false; }
|
24
|
+
}
|
25
|
+
|
26
|
+
const datetimeFormatter = (timestamp: string | Date | any, format: string = "datetime", todayServer: any = null, type: any = null, getServerTime: boolean = false, dateOnly: boolean = false) => {
|
30
27
|
try {
|
31
|
-
|
28
|
+
let iosDate: any;
|
32
29
|
if (timestamp && (timestamp.constructor === String || timestamp.constructor === Date || (timestamp.constructor === Object && timestamp.dateTimeStamp))) {
|
33
|
-
|
34
|
-
|
35
|
-
|
30
|
+
let date = null;
|
31
|
+
let arrayDate = [];
|
32
|
+
|
33
|
+
todayServer = todayServer && todayServer.constructor === String ? todayServer.replace('+00', '') : null
|
34
|
+
|
36
35
|
if (type === 'time') {
|
37
|
-
timestamp = '2021-01-01 ' + timestamp
|
36
|
+
timestamp = '2021-01-01 ' + timestamp //add date when the passed timestamp is time only and the desired format is time (use to fix NaN return)
|
38
37
|
}
|
38
|
+
|
39
39
|
if (timestamp === "today") {
|
40
40
|
date = new Date();
|
41
|
-
}
|
42
|
-
|
41
|
+
} else {
|
42
|
+
|
43
|
+
|
43
44
|
if (timestamp && timestamp.constructor === String) {
|
44
45
|
timestamp = timestamp.replace('+00', ''); //removing unnecessary gmt from backend as the time is already in ph
|
45
46
|
arrayDate = timestamp.split(/[- :.]/);
|
46
|
-
}
|
47
|
-
else if (timestamp.constructor === Object && timestamp.dateTimeStamp && timestamp.source && timestamp.source === "v3") {
|
47
|
+
} else if (timestamp.constructor === Object && timestamp.dateTimeStamp && timestamp.source && timestamp.source === "v3") {
|
48
48
|
// this will be used if the datetime from api is set to UTC already
|
49
49
|
timestamp = timestamp.dateTimeStamp; //removing unnecessary gmt from backend as the time is already in ph
|
50
50
|
arrayDate = timestamp.split(/[- :.]/);
|
51
51
|
}
|
52
|
+
|
52
53
|
if (arrayDate.length === 3) {
|
53
54
|
iosDate = new Date(arrayDate[0], arrayDate[1] - 1, arrayDate[2], arrayDate[3]);
|
54
|
-
}
|
55
|
-
else if (arrayDate.length >= 5 && arrayDate.length <= 8) {
|
55
|
+
} else if (arrayDate.length >= 5 && arrayDate.length <= 8) {
|
56
56
|
iosDate = new Date(arrayDate[0], arrayDate[1] - 1, arrayDate[2], arrayDate[3], arrayDate[4], arrayDate[5]);
|
57
|
-
}
|
58
|
-
else if (arrayDate.length >= 9) {
|
57
|
+
} else if (arrayDate.length >= 9) {
|
59
58
|
// new implementation for safari and for the node datetime
|
60
59
|
iosDate = new Date(arrayDate[0] + " " + arrayDate[1] + " " + arrayDate[2] + " " + arrayDate[3] + " " + arrayDate[4] + ":" + arrayDate[5] + ":" + arrayDate[6] + " GMT");
|
61
|
-
}
|
62
|
-
else {
|
60
|
+
} else {
|
63
61
|
iosDate = new Date(timestamp);
|
64
62
|
}
|
63
|
+
|
64
|
+
|
65
65
|
//checking if the function used the getServerTime
|
66
66
|
if (getServerTime) {
|
67
67
|
date = new Date(timestamp);
|
68
|
-
}
|
69
|
-
else {
|
68
|
+
} else {
|
70
69
|
if (dateOnly) {
|
71
70
|
date = new Date(timestamp).toLocaleString('en-US', { timeZone: 'GMT' }); //making the date picked as the default gmt so that the new date wont adjust by timezone
|
72
71
|
date = new Date(date);
|
73
|
-
}
|
74
|
-
|
75
|
-
var currentTz = Intl.DateTimeFormat().resolvedOptions().timeZone;
|
72
|
+
} else {
|
73
|
+
let currentTz = Intl.DateTimeFormat().resolvedOptions().timeZone;
|
76
74
|
date = new Date(timestamp).toLocaleString('en-US', { timeZone: currentTz }); //making the date picked as the default gmt so that the new date wont adjust by timezone
|
77
75
|
date = new Date(date);
|
78
76
|
}
|
79
77
|
}
|
78
|
+
|
80
79
|
// for firefox
|
80
|
+
|
81
81
|
if (date) {
|
82
|
-
|
82
|
+
let splitTimeStampBySpace = timestamp.split(' ');
|
83
83
|
if (splitTimeStampBySpace.length === 2) {
|
84
84
|
if (isNaN(parseInt(splitTimeStampBySpace[0])) && splitTimeStampBySpace[1]) {
|
85
|
-
date = new Date(
|
85
|
+
date = new Date(`${splitTimeStampBySpace[0]} 01, ${splitTimeStampBySpace[1]}`);
|
86
86
|
}
|
87
87
|
}
|
88
88
|
}
|
89
89
|
}
|
90
|
+
|
90
91
|
if ((date && date.toString() !== 'Invalid Date') || (iosDate && iosDate.toString() !== 'Invalid Date')) {
|
92
|
+
|
91
93
|
//get DATE
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
94
|
+
let dayName = daysWeekNames[isNaN(date.getDay()) ? iosDate.getDay() : date.getDay()];
|
95
|
+
let dayNameFull = daysWeekNamesFull[isNaN(date.getDay()) ? iosDate.getDay() : date.getDay()];
|
96
|
+
let dayDate = ("0" + (isNaN(date.getDate()) ? iosDate.getDate() : date.getDate())).slice(-2);
|
97
|
+
let monthName = monthNames[isNaN(date.getMonth()) ? iosDate.getMonth() : date.getMonth()];
|
98
|
+
let monthNameFull = monthNamesFull[isNaN(date.getMonth()) ? iosDate.getMonth() : date.getMonth()];
|
99
|
+
let year = isNaN(date.getFullYear()) ? iosDate.getFullYear() : date.getFullYear();
|
100
|
+
let MonthNumeric = ("0" + (isNaN(date.getMonth()) ? (iosDate.getMonth() + 1) : (date.getMonth() + 1))).slice(-2);
|
101
|
+
let firstDay = new Date(year, isNaN(date.getMonth()) ? iosDate.getMonth() : date.getMonth(), 1);
|
102
|
+
let lastDay = new Date(year, (isNaN(date.getMonth()) ? iosDate.getMonth() : date.getMonth()) + 1, 0);
|
103
|
+
let monthFirstDay = ("0" + firstDay.getDate()).slice(-2);
|
104
|
+
let monthLastDay = ("0" + lastDay.getDate()).slice(-2);
|
105
|
+
|
103
106
|
//get TIME
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
107
|
+
let hours = isNaN(date.getHours()) ? iosDate.getHours() : date.getHours();
|
108
|
+
let minutes = isNaN(date.getMinutes()) ? iosDate.getMinutes() : date.getMinutes();
|
109
|
+
let seconds = isNaN(date.getSeconds()) ? iosDate.getSeconds() : date.getSeconds();
|
110
|
+
let ampm = hours >= 12 ? 'PM' : 'AM';
|
108
111
|
hours = hours % 12;
|
109
112
|
hours = hours ? hours : 12; // the hour '0' should be '12'
|
110
113
|
minutes = minutes < 10 ? '0' + minutes : minutes;
|
111
114
|
seconds = seconds < 10 ? '0' + seconds : seconds;
|
112
|
-
|
113
|
-
|
115
|
+
let strTime = hours + ':' + minutes + ' ' + ampm;
|
116
|
+
let today = new Date();
|
117
|
+
|
114
118
|
if (todayServer !== null) {
|
115
119
|
today = new Date(todayServer);
|
116
120
|
}
|
117
|
-
|
118
|
-
|
119
|
-
|
121
|
+
|
122
|
+
let todayTS = Math.round((today).getTime() / 1000);
|
123
|
+
let dateTS = Math.round((date).getTime() / 1000);
|
124
|
+
let newFormat = null;
|
125
|
+
|
120
126
|
switch (format) {
|
121
127
|
case "datetime":
|
122
128
|
// Mon, 01 Jan 2020 at 12:00PM
|
@@ -131,25 +137,23 @@ var datetimeFormatter = function (timestamp, format, todayServer, type, getServe
|
|
131
137
|
newFormat = dayName + ", " + dayDate + " " + monthName + " " + year;
|
132
138
|
break;
|
133
139
|
case "momentsAgo":
|
134
|
-
|
135
|
-
|
140
|
+
let diff = 0;
|
141
|
+
let diffMinute = 0;
|
136
142
|
if (todayTS >= dateTS) {
|
137
143
|
//check if 24hours has been passed
|
138
144
|
if (todayTS >= (dateTS + 86400)) {
|
139
145
|
newFormat = dayName + ", " + dayDate + " " + monthName + " " + year + " at " + strTime;
|
140
|
-
}
|
141
|
-
else {
|
146
|
+
} else {
|
142
147
|
//check if hour has been passed
|
143
148
|
if (todayTS >= dateTS + 3600) {
|
144
149
|
diff = todayTS - dateTS;
|
145
150
|
if (diff === 0) {
|
146
151
|
newFormat = "An hour ago";
|
147
152
|
}
|
148
|
-
|
149
|
-
|
150
|
-
newFormat =
|
151
|
-
}
|
152
|
-
else {
|
153
|
+
let diffHour = diff / 3600;
|
154
|
+
diffHour = ~~diffHour
|
155
|
+
newFormat = diffHour === 1 ? "An hour ago" : diffHour + " hours ago";
|
156
|
+
} else {
|
153
157
|
//check if a minute has been passed
|
154
158
|
if (todayTS >= dateTS + 60) {
|
155
159
|
diff = todayTS - dateTS;
|
@@ -157,67 +161,60 @@ var datetimeFormatter = function (timestamp, format, todayServer, type, getServe
|
|
157
161
|
newFormat = "A minute ago";
|
158
162
|
}
|
159
163
|
diffMinute = diff / 60;
|
160
|
-
diffMinute = ~~diffMinute
|
164
|
+
diffMinute = ~~diffMinute
|
161
165
|
newFormat = diffMinute === 1 ? "A minute ago" : diffMinute + " minutes ago";
|
162
|
-
}
|
163
|
-
|
164
|
-
|
165
|
-
if (diff_1 === 0 || diff_1 <= 10) {
|
166
|
+
} else {
|
167
|
+
let diff = todayTS - dateTS;
|
168
|
+
if (diff === 0 || diff <= 10) {
|
166
169
|
newFormat = "Few seconds ago";
|
167
|
-
}
|
168
|
-
else {
|
170
|
+
} else {
|
169
171
|
newFormat = "Few seconds ago";
|
170
172
|
}
|
171
173
|
}
|
172
174
|
}
|
173
175
|
}
|
174
|
-
}
|
175
|
-
else {
|
176
|
+
} else {
|
176
177
|
newFormat = dayName + ", " + dayDate + " " + monthName + " " + year + " at " + strTime;
|
177
178
|
}
|
179
|
+
|
178
180
|
break;
|
179
181
|
case "momentsAgoConvo":
|
180
|
-
|
182
|
+
let diffHour = 0;
|
181
183
|
if (todayTS >= dateTS) {
|
182
184
|
//check if 24hours has been passed
|
183
185
|
if (todayTS >= (dateTS + 86400)) {
|
184
186
|
newFormat = dayName + ", " + dayDate + " " + monthName + " " + year + " at " + strTime + " (PH)";
|
185
|
-
}
|
186
|
-
else {
|
187
|
+
} else {
|
187
188
|
//check if hour has been passed
|
188
189
|
if (todayTS >= dateTS + 3600) {
|
189
|
-
|
190
|
-
if (
|
190
|
+
let diff = todayTS - dateTS;
|
191
|
+
if (diff === 0) {
|
191
192
|
newFormat = "An hour ago";
|
192
193
|
}
|
193
|
-
diffHour =
|
194
|
-
diffHour = ~~diffHour
|
194
|
+
diffHour = diff / 3600;
|
195
|
+
diffHour = ~~diffHour
|
195
196
|
newFormat = diffHour === 1 ? "An hour ago" : diffHour + " hours ago";
|
196
|
-
}
|
197
|
-
else {
|
197
|
+
} else {
|
198
198
|
//check if a minute has been passed
|
199
199
|
if (todayTS >= dateTS + 60) {
|
200
|
-
|
201
|
-
if (
|
200
|
+
let diff = todayTS - dateTS;
|
201
|
+
if (diff === 0) {
|
202
202
|
newFormat = "A minute ago";
|
203
203
|
}
|
204
|
-
|
205
|
-
|
206
|
-
newFormat =
|
207
|
-
}
|
208
|
-
|
209
|
-
|
210
|
-
if (diff_4 === 0 || diff_4 <= 10) {
|
204
|
+
let diffMinute = diff / 60;
|
205
|
+
diffMinute = ~~diffMinute
|
206
|
+
newFormat = diffMinute === 1 ? "A minute ago" : diffMinute + " minutes ago";
|
207
|
+
} else {
|
208
|
+
let diff = todayTS - dateTS;
|
209
|
+
if (diff === 0 || diff <= 10) {
|
211
210
|
newFormat = "Few moments ago";
|
212
|
-
}
|
213
|
-
else {
|
211
|
+
} else {
|
214
212
|
newFormat = "Few seconds ago";
|
215
213
|
}
|
216
214
|
}
|
217
215
|
}
|
218
216
|
}
|
219
|
-
}
|
220
|
-
else {
|
217
|
+
} else {
|
221
218
|
//Mon, 01 Jan 2020 (PH)
|
222
219
|
newFormat = dayName + ", " + dayDate + " " + monthName + " " + year + " at " + strTime + " (PH)";
|
223
220
|
}
|
@@ -226,19 +223,17 @@ var datetimeFormatter = function (timestamp, format, todayServer, type, getServe
|
|
226
223
|
if (todayTS >= dateTS) {
|
227
224
|
//check if 24hours has been passed
|
228
225
|
if (todayTS >= (dateTS + 86400)) {
|
229
|
-
|
230
|
-
if (
|
226
|
+
let diff = todayTS - dateTS;
|
227
|
+
if (diff === 0) {
|
231
228
|
newFormat = "1 day";
|
232
229
|
}
|
233
|
-
|
234
|
-
diffDay = ~~diffDay
|
230
|
+
let diffDay = diff / 86400;
|
231
|
+
diffDay = ~~diffDay
|
235
232
|
newFormat = diffDay === 1 ? "1 day" : diffDay + " days";
|
236
|
-
}
|
237
|
-
else {
|
233
|
+
} else {
|
238
234
|
newFormat = "0 day";
|
239
235
|
}
|
240
|
-
}
|
241
|
-
else {
|
236
|
+
} else {
|
242
237
|
newFormat = "0 day";
|
243
238
|
}
|
244
239
|
break;
|
@@ -256,22 +251,28 @@ var datetimeFormatter = function (timestamp, format, todayServer, type, getServe
|
|
256
251
|
break;
|
257
252
|
case "start-of-Week":
|
258
253
|
//calculating the first day of the week
|
259
|
-
|
260
|
-
|
261
|
-
|
262
|
-
|
263
|
-
|
264
|
-
|
254
|
+
let startWeekD = new Date(date);
|
255
|
+
let startWeekDay = startWeekD.getDay(),
|
256
|
+
startWeekDiff = startWeekD.getDate() - startWeekDay;
|
257
|
+
|
258
|
+
let startWeekDayNewDate = new Date(startWeekD.setDate(startWeekDiff));
|
259
|
+
let startWeekMonthName = monthNames[startWeekDayNewDate.getMonth()];
|
260
|
+
let startWeekDayDate = ("0" + startWeekDayNewDate.getDate()).slice(-2);
|
261
|
+
let startWeekYear = startWeekDayNewDate.getFullYear();
|
262
|
+
|
265
263
|
newFormat = startWeekMonthName + " " + startWeekDayDate + ", " + startWeekYear;
|
266
264
|
//Feb 07, 2021
|
267
265
|
break;
|
268
266
|
case "end-of-Week":
|
269
|
-
|
270
|
-
|
271
|
-
|
272
|
-
|
273
|
-
|
274
|
-
|
267
|
+
let endWeekD = new Date(date);
|
268
|
+
let endWeekDay = endWeekD.getDay(),
|
269
|
+
endWeekDiff = endWeekD.getDate() - endWeekDay + 6;
|
270
|
+
|
271
|
+
let endWeekDayNewDate = new Date(endWeekD.setDate(endWeekDiff));
|
272
|
+
let endWeekMonthName = monthNames[endWeekDayNewDate.getMonth()];
|
273
|
+
let endWeekDayDate = ("0" + endWeekDayNewDate.getDate()).slice(-2);
|
274
|
+
let endWeekYear = endWeekDayNewDate.getFullYear();
|
275
|
+
|
275
276
|
newFormat = endWeekMonthName + " " + endWeekDayDate + ", " + endWeekYear;
|
276
277
|
//Feb 13, 2021
|
277
278
|
break;
|
@@ -292,7 +293,7 @@ var datetimeFormatter = function (timestamp, format, todayServer, type, getServe
|
|
292
293
|
//February 2021
|
293
294
|
break;
|
294
295
|
case "datetime-format-forPosting":
|
295
|
-
|
296
|
+
let forPostingDay = String(date.getUTCDate());
|
296
297
|
if (forPostingDay.length === 1) {
|
297
298
|
forPostingDay = "0" + forPostingDay;
|
298
299
|
}
|
@@ -342,8 +343,8 @@ var datetimeFormatter = function (timestamp, format, todayServer, type, getServe
|
|
342
343
|
newFormat = dayName + ", " + monthName + " " + dayDate;
|
343
344
|
break;
|
344
345
|
case "time-standard":
|
345
|
-
|
346
|
-
|
346
|
+
let h = isNaN(date.getHours()) ? iosDate.getHours() : date.getHours();
|
347
|
+
let hour = h < 10 ? '0' + h : h;
|
347
348
|
newFormat = hour + ':' + minutes;
|
348
349
|
// 15:30
|
349
350
|
break;
|
@@ -354,32 +355,38 @@ var datetimeFormatter = function (timestamp, format, todayServer, type, getServe
|
|
354
355
|
case 'year-month':
|
355
356
|
newFormat = year + "-" + MonthNumeric;
|
356
357
|
break;
|
358
|
+
|
357
359
|
case "datetime-utc":
|
358
|
-
newFormat = year + "-" + MonthNumeric + "-" + dayDate + ' 00:00:00+00'
|
360
|
+
newFormat = year + "-" + MonthNumeric + "-" + dayDate + ' 00:00:00+00'
|
359
361
|
//2021-02-10 00:00:00+00
|
360
362
|
break;
|
363
|
+
|
364
|
+
|
361
365
|
case 'datetime-file-format':
|
362
366
|
hours = isNaN(date.getHours()) ? iosDate.getHours() : date.getHours();
|
363
367
|
hours = hours < 10 ? '0' + hours : hours;
|
364
|
-
newFormat = year + "-" +
|
368
|
+
newFormat = year + "-" + `${MonthNumeric}` + `${date.getUTCDate()}` + `${hours}` + `${minutes}` + `${seconds}` + `${'1'}`;
|
369
|
+
|
365
370
|
break;
|
371
|
+
|
366
372
|
default:
|
367
373
|
newFormat = "";
|
368
374
|
break;
|
369
375
|
}
|
370
376
|
return newFormat;
|
371
|
-
}
|
372
|
-
else {
|
377
|
+
} else {
|
373
378
|
return "";
|
374
379
|
}
|
375
|
-
|
376
|
-
|
380
|
+
|
381
|
+
|
382
|
+
|
383
|
+
} else {
|
377
384
|
return "";
|
378
385
|
}
|
379
|
-
}
|
380
|
-
catch (error) {
|
386
|
+
} catch (error) {
|
381
387
|
console.error(error, 'Invalid input. Please check helpers (datetimeFormatter).');
|
382
388
|
return "";
|
383
389
|
}
|
384
|
-
}
|
385
|
-
|
390
|
+
}
|
391
|
+
|
392
|
+
export default datetimeFormatter;
|
File without changes
|
@@ -0,0 +1,65 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
3
|
+
if (k2 === undefined) k2 = k;
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
7
|
+
}
|
8
|
+
Object.defineProperty(o, k2, desc);
|
9
|
+
}) : (function(o, m, k, k2) {
|
10
|
+
if (k2 === undefined) k2 = k;
|
11
|
+
o[k2] = m[k];
|
12
|
+
}));
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
15
|
+
}) : function(o, v) {
|
16
|
+
o["default"] = v;
|
17
|
+
});
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
19
|
+
if (mod && mod.__esModule) return mod;
|
20
|
+
var result = {};
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
22
|
+
__setModuleDefault(result, mod);
|
23
|
+
return result;
|
24
|
+
};
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
26
|
+
var react_1 = __importStar(require("react"));
|
27
|
+
var Asset_1 = require("./assets/Asset");
|
28
|
+
var Information = function (_a) {
|
29
|
+
var items = _a.items, listRow = _a.listRow, desc = _a.desc, title = _a.title, hide = _a.hide;
|
30
|
+
var _b = (0, react_1.useState)(null), rowAnchorEl = _b[0], setRowAnchorEl = _b[1];
|
31
|
+
var renderHtml = function (html) {
|
32
|
+
return react_1.default.createElement("div", { dangerouslySetInnerHTML: { __html: html } });
|
33
|
+
};
|
34
|
+
var showRowDetails = function (e, idx) {
|
35
|
+
e && e.preventDefault();
|
36
|
+
if (rowAnchorEl === idx) {
|
37
|
+
rowAnchorEl = null;
|
38
|
+
}
|
39
|
+
else {
|
40
|
+
rowAnchorEl = idx;
|
41
|
+
}
|
42
|
+
setRowAnchorEl(rowAnchorEl);
|
43
|
+
};
|
44
|
+
var View = function () {
|
45
|
+
return react_1.default.createElement(react_1.default.Fragment, null,
|
46
|
+
react_1.default.createElement("div", { className: "em-popover-i" }, typeof desc != 'undefined' && desc ? (react_1.default.createElement("div", { className: "em-popover-i-content" },
|
47
|
+
react_1.default.createElement("div", { className: "em-popover-i-title" },
|
48
|
+
react_1.default.createElement("h6", null, title),
|
49
|
+
react_1.default.createElement("div", { className: "em-popover-i-close", onClick: hide })),
|
50
|
+
react_1.default.createElement("div", null, typeof items != 'undefined' && items ? renderHtml(items) : ''))) : (react_1.default.createElement("div", { className: "em-popover-i-content" },
|
51
|
+
react_1.default.createElement("div", { className: "em-popover-i-title" },
|
52
|
+
react_1.default.createElement("h6", null, title),
|
53
|
+
react_1.default.createElement("div", { className: "em-popover-i-close", onClick: hide })),
|
54
|
+
listRow ? (listRow.length >= 1 ? (listRow.map(function (item, key) { return (react_1.default.createElement(react_1.default.Fragment, { key: key },
|
55
|
+
react_1.default.createElement("div", { className: "em-popover-i-category", onClick: function (event) { return showRowDetails(event, key); } },
|
56
|
+
react_1.default.createElement("div", null,
|
57
|
+
react_1.default.createElement("h6", null, item)),
|
58
|
+
rowAnchorEl === key ? (Asset_1.SVG_ARROW_UP) : (Asset_1.SVG_ARROWDOWN)),
|
59
|
+
rowAnchorEl === key ? (react_1.default.createElement("div", { className: "em-popover-i-details" }, item === 'COMPANY POLICY' ? (typeof items != 'undefined' && typeof items.companyPolicy != 'undefined' && items.companyPolicy ? renderHtml(items.companyPolicy) : '') :
|
60
|
+
(item === 'SYSTEM POLICY' ? (typeof items != 'undefined' && typeof items.systemPolicy != 'undefined' && items.systemPolicy ? renderHtml(items.systemPolicy) : '') :
|
61
|
+
(typeof items != 'undefined' && typeof items.instruction != 'undefined' && items.instruction ? renderHtml(items.instruction) : '')))) : null)); })) : null) : null))));
|
62
|
+
};
|
63
|
+
return View();
|
64
|
+
};
|
65
|
+
exports.default = Information;
|