dce-reactkit 4.2.0-beta-select-admin-check.2 → 4.2.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/dist/cjs/index.js +41 -0
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/types/helpers/isSelectAdmin.d.ts +7 -0
- package/dist/cjs/types/index.d.ts +2 -1
- package/dist/cjs/types/types/LogAction.d.ts +2 -0
- package/dist/esm/index.js +41 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/types/helpers/isSelectAdmin.d.ts +7 -0
- package/dist/esm/types/index.d.ts +2 -1
- package/dist/esm/types/types/LogAction.d.ts +2 -0
- package/dist/index.d.ts +10 -1
- package/package.json +1 -1
- package/src/helpers/isSelectAdmin.ts +48 -0
- package/src/index.ts +2 -0
- package/src/types/LogAction.ts +4 -0
|
@@ -81,6 +81,7 @@ import shuffleArray from './helpers/shuffleArray';
|
|
|
81
81
|
import getWordCount from './helpers/getWordCount';
|
|
82
82
|
import cloneDeep from './helpers/cloneDeep';
|
|
83
83
|
import getTimestampFromTimeInfoInET from './helpers/getTimestampFromTimeInfoInET';
|
|
84
|
+
import isSelectAdmin from './helpers/isSelectAdmin';
|
|
84
85
|
import ParamType from './types/ParamType';
|
|
85
86
|
import ModalButtonType from './types/ModalButtonType';
|
|
86
87
|
import ModalSize from './types/ModalSize';
|
|
@@ -106,4 +107,4 @@ import PickableItem from './components/ItemPicker/types/PickableItem';
|
|
|
106
107
|
import DBEntry from './components/DBEntryManagerPanel/types/DBEntry';
|
|
107
108
|
import DBEntryField from './components/DBEntryManagerPanel/types/DBEntryField';
|
|
108
109
|
import DBEntryFieldType from './components/DBEntryManagerPanel/types/DBEntryFieldType';
|
|
109
|
-
export { AppWrapper, LoadingSpinner, ErrorBox, Modal, TabBox, RadioButton, CheckboxButton, ButtonInputGroup, SimpleDateChooser, SimpleTimeChooser, Drawer, PopSuccessMark, PopFailureMark, PopPendingMark, CopiableBox, ItemPicker, LogReviewer, IntelliTable, CSVDownloadButton, DBEntryManagerPanel, Tooltip, ToggleSwitch, AutoscrollToBottomContainer, MultiSwitch, Dropdown, alert, prompt, confirm, showFatalError, ErrorWithCode, MINUTE_IN_MS, HOUR_IN_MS, DAY_IN_MS, LOG_REVIEW_ROUTE_PATH_PREFIX, LOG_ROUTE_PATH, LOG_REVIEW_STATUS_ROUTE, LOG_REVIEW_GET_LOGS_ROUTE, SELECT_ADMIN_CHECK_ROUTE, DynamicWord, abbreviate, avg, ceilToNumDecimals, floorToNumDecimals, forceNumIntoBounds, padDecimalZeros, padZerosLeft, roundToNumDecimals, sum, waitMs, getOrdinal, getTimeInfoInET, stubServerEndpoint, startMinWait, getHumanReadableDate, getPartOfDay, stringsToHumanReadableList, onlyKeepLetters, parallelLimit, getMonthName, genCSV, canReviewLogs, isMobileOrTablet, extractProp, compareArraysByProp, genCommaList, validateEmail, validatePhoneNumber, validateString, getLocalTimeInfo, idify, makeLinksClickable, prefixWithAOrAn, everyAsync, filterAsync, forEachAsync, mapAsync, someAsync, capitalize, shuffleArray, getWordCount, cloneDeep, getTimestampFromTimeInfoInET, initClient, visitServerEndpoint, logClientEvent, addFatalErrorHandler, leaveToURL, combineClassNames, useForceRender, setClientEventMetadataPopulator, ParamType, ModalButtonType, ModalSize, ModalType, ReactKitErrorCode, Variant, DayOfWeek, Log, LogType, LogSource, LogAction, LogBuiltInMetadata, LogMetadataType, LogFunction, LogTypeSpecificInfo, LogMainInfo, LogSourceSpecificInfo, LogLevel, IntelliTableColumn, DropdownItemType, LogReviewerFilterState, PickableItem, DBEntry, DBEntryField, DBEntryFieldType, };
|
|
110
|
+
export { AppWrapper, LoadingSpinner, ErrorBox, Modal, TabBox, RadioButton, CheckboxButton, ButtonInputGroup, SimpleDateChooser, SimpleTimeChooser, Drawer, PopSuccessMark, PopFailureMark, PopPendingMark, CopiableBox, ItemPicker, LogReviewer, IntelliTable, CSVDownloadButton, DBEntryManagerPanel, Tooltip, ToggleSwitch, AutoscrollToBottomContainer, MultiSwitch, Dropdown, alert, prompt, confirm, showFatalError, ErrorWithCode, MINUTE_IN_MS, HOUR_IN_MS, DAY_IN_MS, LOG_REVIEW_ROUTE_PATH_PREFIX, LOG_ROUTE_PATH, LOG_REVIEW_STATUS_ROUTE, LOG_REVIEW_GET_LOGS_ROUTE, SELECT_ADMIN_CHECK_ROUTE, DynamicWord, abbreviate, avg, ceilToNumDecimals, floorToNumDecimals, forceNumIntoBounds, padDecimalZeros, padZerosLeft, roundToNumDecimals, sum, waitMs, getOrdinal, getTimeInfoInET, stubServerEndpoint, startMinWait, getHumanReadableDate, getPartOfDay, stringsToHumanReadableList, onlyKeepLetters, parallelLimit, getMonthName, genCSV, canReviewLogs, isMobileOrTablet, extractProp, compareArraysByProp, genCommaList, validateEmail, validatePhoneNumber, validateString, getLocalTimeInfo, idify, makeLinksClickable, prefixWithAOrAn, everyAsync, filterAsync, forEachAsync, mapAsync, someAsync, capitalize, shuffleArray, getWordCount, cloneDeep, getTimestampFromTimeInfoInET, isSelectAdmin, initClient, visitServerEndpoint, logClientEvent, addFatalErrorHandler, leaveToURL, combineClassNames, useForceRender, setClientEventMetadataPopulator, ParamType, ModalButtonType, ModalSize, ModalType, ReactKitErrorCode, Variant, DayOfWeek, Log, LogType, LogSource, LogAction, LogBuiltInMetadata, LogMetadataType, LogFunction, LogTypeSpecificInfo, LogMainInfo, LogSourceSpecificInfo, LogLevel, IntelliTableColumn, DropdownItemType, LogReviewerFilterState, PickableItem, DBEntry, DBEntryField, DBEntryFieldType, };
|
package/dist/index.d.ts
CHANGED
|
@@ -1183,6 +1183,8 @@ declare enum LogAction {
|
|
|
1183
1183
|
Resume = "Resume",
|
|
1184
1184
|
Jump = "Jump",
|
|
1185
1185
|
Post = "Post",
|
|
1186
|
+
Like = "Like",
|
|
1187
|
+
Dislike = "Dislike",
|
|
1186
1188
|
Unknown = "Unknown"
|
|
1187
1189
|
}
|
|
1188
1190
|
|
|
@@ -1580,6 +1582,13 @@ declare const getTimestampFromTimeInfoInET: (opts: {
|
|
|
1580
1582
|
minute: number;
|
|
1581
1583
|
}) => number;
|
|
1582
1584
|
|
|
1585
|
+
/**
|
|
1586
|
+
* Checks if the current user is a select admin
|
|
1587
|
+
* @author Gardenia Liu
|
|
1588
|
+
* @returns true if the user is a select admin, false otherwise
|
|
1589
|
+
*/
|
|
1590
|
+
declare const isSelectAdmin: () => Promise<boolean>;
|
|
1591
|
+
|
|
1583
1592
|
/**
|
|
1584
1593
|
* Days of the week
|
|
1585
1594
|
* @author Gabe Abrams
|
|
@@ -1707,4 +1716,4 @@ type LogReviewerFilterState = {
|
|
|
1707
1716
|
advancedFilterState: AdvancedFilterState;
|
|
1708
1717
|
};
|
|
1709
1718
|
|
|
1710
|
-
export { AppWrapper, AutoscrollToBottomContainer, ButtonInputGroup, CSVDownloadButton, CheckboxButton, CopiableBox, DAY_IN_MS, DBEntry, DBEntryField, DBEntryFieldType, DBEntryManagerPanel, DayOfWeek, Drawer, Dropdown, DropdownItemType, DynamicWord, ErrorBox, ErrorWithCode, HOUR_IN_MS, IntelliTable, IntelliTableColumn, ItemPicker, LOG_REVIEW_GET_LOGS_ROUTE, LOG_REVIEW_ROUTE_PATH_PREFIX, LOG_REVIEW_STATUS_ROUTE, LOG_ROUTE_PATH, LoadingSpinner, Log, LogAction, LogBuiltInMetadata, LogFunction, LogLevel, LogMainInfo, LogMetadataType, LogReviewer, LogReviewerFilterState, LogSource, LogSourceSpecificInfo, LogType, LogTypeSpecificInfo, MINUTE_IN_MS, Modal, ModalButtonType, ModalSize, ModalType, MultiSwitch, ParamType, PickableItem, PopFailureMark, PopPendingMark, PopSuccessMark, RadioButton, ReactKitErrorCode, SELECT_ADMIN_CHECK_ROUTE, SimpleDateChooser, SimpleTimeChooser, TabBox, ToggleSwitch, Tooltip, Variant, abbreviate, addFatalErrorHandler, alert, avg, canReviewLogs, capitalize, ceilToNumDecimals, cloneDeep, combineClassNames, compareArraysByProp, confirm, everyAsync, extractProp, filterAsync, floorToNumDecimals, forEachAsync, forceNumIntoBounds, genCSV, genCommaList, getHumanReadableDate, getLocalTimeInfo, getMonthName, getOrdinal, getPartOfDay, getTimeInfoInET, getTimestampFromTimeInfoInET, getWordCount, idify, initClient, isMobileOrTablet, leaveToURL, logClientEvent, makeLinksClickable, mapAsync, onlyKeepLetters, padDecimalZeros, padZerosLeft, parallelLimit, prefixWithAOrAn, prompt, roundToNumDecimals, setClientEventMetadataPopulator, showFatalError, shuffleArray, someAsync, startMinWait, stringsToHumanReadableList, stubServerEndpoint, sum, useForceRender, validateEmail, validatePhoneNumber, validateString, visitServerEndpoint, waitMs };
|
|
1719
|
+
export { AppWrapper, AutoscrollToBottomContainer, ButtonInputGroup, CSVDownloadButton, CheckboxButton, CopiableBox, DAY_IN_MS, DBEntry, DBEntryField, DBEntryFieldType, DBEntryManagerPanel, DayOfWeek, Drawer, Dropdown, DropdownItemType, DynamicWord, ErrorBox, ErrorWithCode, HOUR_IN_MS, IntelliTable, IntelliTableColumn, ItemPicker, LOG_REVIEW_GET_LOGS_ROUTE, LOG_REVIEW_ROUTE_PATH_PREFIX, LOG_REVIEW_STATUS_ROUTE, LOG_ROUTE_PATH, LoadingSpinner, Log, LogAction, LogBuiltInMetadata, LogFunction, LogLevel, LogMainInfo, LogMetadataType, LogReviewer, LogReviewerFilterState, LogSource, LogSourceSpecificInfo, LogType, LogTypeSpecificInfo, MINUTE_IN_MS, Modal, ModalButtonType, ModalSize, ModalType, MultiSwitch, ParamType, PickableItem, PopFailureMark, PopPendingMark, PopSuccessMark, RadioButton, ReactKitErrorCode, SELECT_ADMIN_CHECK_ROUTE, SimpleDateChooser, SimpleTimeChooser, TabBox, ToggleSwitch, Tooltip, Variant, abbreviate, addFatalErrorHandler, alert, avg, canReviewLogs, capitalize, ceilToNumDecimals, cloneDeep, combineClassNames, compareArraysByProp, confirm, everyAsync, extractProp, filterAsync, floorToNumDecimals, forEachAsync, forceNumIntoBounds, genCSV, genCommaList, getHumanReadableDate, getLocalTimeInfo, getMonthName, getOrdinal, getPartOfDay, getTimeInfoInET, getTimestampFromTimeInfoInET, getWordCount, idify, initClient, isMobileOrTablet, isSelectAdmin, leaveToURL, logClientEvent, makeLinksClickable, mapAsync, onlyKeepLetters, padDecimalZeros, padZerosLeft, parallelLimit, prefixWithAOrAn, prompt, roundToNumDecimals, setClientEventMetadataPopulator, showFatalError, shuffleArray, someAsync, startMinWait, stringsToHumanReadableList, stubServerEndpoint, sum, useForceRender, validateEmail, validatePhoneNumber, validateString, visitServerEndpoint, waitMs };
|
package/package.json
CHANGED
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
// Import shared constants
|
|
2
|
+
import SELECT_ADMIN_CHECK_ROUTE from '../constants/SELECT_ADMIN_CHECK_ROUTE';
|
|
3
|
+
|
|
4
|
+
// Import shared helpers
|
|
5
|
+
import visitServerEndpoint from './visitServerEndpoint';
|
|
6
|
+
|
|
7
|
+
/*------------------------------------------------------------------------*/
|
|
8
|
+
/* ------------------------------- Caching ------------------------------ */
|
|
9
|
+
/*------------------------------------------------------------------------*/
|
|
10
|
+
|
|
11
|
+
// If true, user is a select admin
|
|
12
|
+
let cachedUserIsSelectAdmin: boolean | undefined;
|
|
13
|
+
|
|
14
|
+
/*------------------------------------------------------------------------*/
|
|
15
|
+
/* -------------------------------- Main -------------------------------- */
|
|
16
|
+
/*------------------------------------------------------------------------*/
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* Checks if the current user is a select admin
|
|
20
|
+
* @author Gardenia Liu
|
|
21
|
+
* @returns true if the user is a select admin, false otherwise
|
|
22
|
+
*/
|
|
23
|
+
const isSelectAdmin = async (): Promise<boolean> => {
|
|
24
|
+
// Use cached version if we have one
|
|
25
|
+
if (cachedUserIsSelectAdmin !== undefined) {
|
|
26
|
+
return cachedUserIsSelectAdmin;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
// Check if the user is a select admin
|
|
30
|
+
try {
|
|
31
|
+
const userIsSelectAdmin: boolean = await visitServerEndpoint({
|
|
32
|
+
path: SELECT_ADMIN_CHECK_ROUTE,
|
|
33
|
+
method: 'GET',
|
|
34
|
+
});
|
|
35
|
+
|
|
36
|
+
// Cache the result
|
|
37
|
+
cachedUserIsSelectAdmin = !!userIsSelectAdmin;
|
|
38
|
+
|
|
39
|
+
// Return the result
|
|
40
|
+
return userIsSelectAdmin;
|
|
41
|
+
} catch (err) {
|
|
42
|
+
// Error means the user isn't a select admin
|
|
43
|
+
cachedUserIsSelectAdmin = false;
|
|
44
|
+
return false;
|
|
45
|
+
}
|
|
46
|
+
};
|
|
47
|
+
|
|
48
|
+
export default isSelectAdmin;
|
package/src/index.ts
CHANGED
|
@@ -97,6 +97,7 @@ import shuffleArray from './helpers/shuffleArray';
|
|
|
97
97
|
import getWordCount from './helpers/getWordCount';
|
|
98
98
|
import cloneDeep from './helpers/cloneDeep';
|
|
99
99
|
import getTimestampFromTimeInfoInET from './helpers/getTimestampFromTimeInfoInET';
|
|
100
|
+
import isSelectAdmin from './helpers/isSelectAdmin';
|
|
100
101
|
|
|
101
102
|
// Import types
|
|
102
103
|
import ParamType from './types/ParamType';
|
|
@@ -217,6 +218,7 @@ export {
|
|
|
217
218
|
getWordCount,
|
|
218
219
|
cloneDeep,
|
|
219
220
|
getTimestampFromTimeInfoInET,
|
|
221
|
+
isSelectAdmin,
|
|
220
222
|
// Client helpers
|
|
221
223
|
initClient,
|
|
222
224
|
visitServerEndpoint,
|
package/src/types/LogAction.ts
CHANGED