dce-reactkit 3.2.3 → 3.2.5

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.
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Check if the user is on a mobile device or tablet
3
+ * from https://stackoverflow.com/questions/11381673/detecting-a-mobile-browser
4
+ * @returns true if user is on a mobile device
5
+ */
6
+ declare const isMobileOrTablet: () => boolean;
7
+ export default isMobileOrTablet;
@@ -50,6 +50,7 @@ import initLogCollection from './server/initLogCollection';
50
50
  import getMonthName from './helpers/getMonthName';
51
51
  import genCSV from './helpers/genCSV';
52
52
  import canReviewLogs from './helpers/canReviewLogs';
53
+ import isMobileOrTablet from './helpers/isMobileOrTablet';
53
54
  import ModalButtonType from './types/ModalButtonType';
54
55
  import ModalSize from './types/ModalSize';
55
56
  import ModalType from './types/ModalType';
@@ -65,4 +66,4 @@ import LogBuiltInMetadata from './types/LogBuiltInMetadata';
65
66
  import LogMetadataType from './types/LogMetadataType';
66
67
  import IntelliTableColumn from './types/IntelliTableColumn';
67
68
  import PickableItem from './components/ItemPicker/types/PickableItem';
68
- export { AppWrapper, LoadingSpinner, ErrorBox, Modal, TabBox, RadioButton, CheckboxButton, ButtonInputGroup, SimpleDateChooser, Drawer, PopSuccessMark, PopFailureMark, PopPendingMark, CopiableBox, ItemPicker, LogReviewer, IntelliTable, CSVDownloadButton, alert, confirm, showFatalError, ErrorWithCode, MINUTE_IN_MS, HOUR_IN_MS, DAY_IN_MS, DynamicWord, abbreviate, avg, ceilToNumDecimals, floorToNumDecimals, forceNumIntoBounds, padDecimalZeros, padZerosLeft, roundToNumDecimals, sum, waitMs, getOrdinal, getTimeInfoInET, stubServerEndpoint, startMinWait, getHumanReadableDate, getPartOfDay, stringsToHumanReadableList, onlyKeepLetters, parallelLimit, getMonthName, genCSV, canReviewLogs, visitServerEndpoint, logClientEvent, initServer, genRouteHandler, handleError, handleSuccess, initLogCollection, ModalButtonType, ModalSize, ModalType, ReactKitErrorCode, Variant, DayOfWeek, Log, LogType, LogSource, LogAction, LogBuiltInMetadata, LogMetadataType, IntelliTableColumn, PickableItem, ParamType, };
69
+ export { AppWrapper, LoadingSpinner, ErrorBox, Modal, TabBox, RadioButton, CheckboxButton, ButtonInputGroup, SimpleDateChooser, Drawer, PopSuccessMark, PopFailureMark, PopPendingMark, CopiableBox, ItemPicker, LogReviewer, IntelliTable, CSVDownloadButton, alert, confirm, showFatalError, ErrorWithCode, MINUTE_IN_MS, HOUR_IN_MS, DAY_IN_MS, DynamicWord, abbreviate, avg, ceilToNumDecimals, floorToNumDecimals, forceNumIntoBounds, padDecimalZeros, padZerosLeft, roundToNumDecimals, sum, waitMs, getOrdinal, getTimeInfoInET, stubServerEndpoint, startMinWait, getHumanReadableDate, getPartOfDay, stringsToHumanReadableList, onlyKeepLetters, parallelLimit, getMonthName, genCSV, canReviewLogs, isMobileOrTablet, visitServerEndpoint, logClientEvent, initServer, genRouteHandler, handleError, handleSuccess, initLogCollection, ModalButtonType, ModalSize, ModalType, ReactKitErrorCode, Variant, DayOfWeek, Log, LogType, LogSource, LogAction, LogBuiltInMetadata, LogMetadataType, IntelliTableColumn, PickableItem, ParamType, };
package/dist/esm/index.js CHANGED
@@ -3019,8 +3019,45 @@ const genHumanReadableName = (machineReadableName) => {
3019
3019
  }
3020
3020
  humanReadableName += char;
3021
3021
  });
3022
- // Trim and return
3023
- return humanReadableName.trim();
3022
+ const words = (humanReadableName
3023
+ .trim()
3024
+ // Split into words
3025
+ .split(' ')
3026
+ // Filter out whitespace
3027
+ .filter((word) => {
3028
+ return (word.length > 0);
3029
+ })
3030
+ // Capitalize first letter
3031
+ .map((word) => {
3032
+ if (word.length <= 1) {
3033
+ return word;
3034
+ }
3035
+ return `${word.substring(0, 1).toUpperCase()}${word.substring(1)}`;
3036
+ }));
3037
+ // Handle acronyms by piling words together
3038
+ const consolidatedWords = [];
3039
+ let acronym = '';
3040
+ words.forEach((word) => {
3041
+ if (word.length === 1) {
3042
+ // Add on to acronym
3043
+ acronym += word;
3044
+ }
3045
+ else {
3046
+ // Wrap up acronym
3047
+ if (acronym.length > 0) {
3048
+ consolidatedWords.push(acronym);
3049
+ acronym = '';
3050
+ }
3051
+ // Full word. Just add it
3052
+ consolidatedWords.push(word);
3053
+ }
3054
+ });
3055
+ // Add trailing acronym
3056
+ if (acronym.length > 0) {
3057
+ consolidatedWords.push(acronym);
3058
+ }
3059
+ // Return
3060
+ return consolidatedWords.join(' ');
3024
3061
  };
3025
3062
  /* ------------- Actions ------------ */
3026
3063
  // Types of actions
@@ -4058,46 +4095,56 @@ const HOUR_IN_MS = 3600000;
4058
4095
  */
4059
4096
  const DAY_IN_MS = 86400000;
4060
4097
 
4098
+ // True if user is on mobile or tablet
4099
+ let cachedResult = undefined;
4061
4100
  /**
4062
- * Check if the user is on mobile
4101
+ * Check if the user is on a mobile device or tablet
4063
4102
  * from https://stackoverflow.com/questions/11381673/detecting-a-mobile-browser
4064
4103
  * @returns true if user is on a mobile device
4065
4104
  */
4066
- const checkIfMobileOrTablet = () => {
4105
+ const isMobileOrTablet = () => {
4067
4106
  var _a;
4107
+ if (cachedResult !== undefined) {
4108
+ return cachedResult;
4109
+ }
4068
4110
  try {
4069
4111
  let check = false;
4070
4112
  ((a) => { if (/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino|android|ipad|playbook|silk/i.test(a) || /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(a.substr(0, 4)))
4071
4113
  check = true; })((navigator !== null && navigator !== void 0 ? navigator : {}).userAgent || (navigator !== null && navigator !== void 0 ? navigator : {}).vendor || ((_a = window) !== null && _a !== void 0 ? _a : {}).opera);
4072
- return check;
4114
+ cachedResult = check;
4115
+ return cachedResult;
4073
4116
  }
4074
4117
  catch (err) {
4075
4118
  // Probably this code is being executed on a server
4076
- return false;
4119
+ cachedResult = false;
4120
+ return cachedResult;
4077
4121
  }
4078
4122
  };
4079
- const isMobileOrTablet = checkIfMobileOrTablet();
4123
+
4124
+ // Import shared types
4125
+ // Check if mobile
4126
+ const isMobile = isMobileOrTablet();
4080
4127
  /**
4081
4128
  * Dynamic words determined by the user's platform
4082
4129
  * @author Gabe Abrams
4083
4130
  */
4084
4131
  const DynamicWord = {
4085
- Click: (isMobileOrTablet
4132
+ Click: (isMobile
4086
4133
  ? 'tap'
4087
4134
  : 'click'),
4088
- ClickCapitalized: (isMobileOrTablet
4135
+ ClickCapitalized: (isMobile
4089
4136
  ? 'Tap'
4090
4137
  : 'Click'),
4091
- App: (isMobileOrTablet
4138
+ App: (isMobile
4092
4139
  ? 'app'
4093
4140
  : 'application'),
4094
- AppCapitalized: (isMobileOrTablet
4141
+ AppCapitalized: (isMobile
4095
4142
  ? 'App'
4096
4143
  : 'Application'),
4097
- Device: (isMobileOrTablet
4144
+ Device: (isMobile
4098
4145
  ? 'device'
4099
4146
  : 'computer'),
4100
- DeviceCapitalized: (isMobileOrTablet
4147
+ DeviceCapitalized: (isMobile
4101
4148
  ? 'Device'
4102
4149
  : 'Computer'),
4103
4150
  };
@@ -5494,5 +5541,5 @@ var DayOfWeek;
5494
5541
  })(DayOfWeek || (DayOfWeek = {}));
5495
5542
  var DayOfWeek$1 = DayOfWeek;
5496
5543
 
5497
- export { AppWrapper, ButtonInputGroup, CSVDownloadButton, CheckboxButton, CopiableBox, DAY_IN_MS, DayOfWeek$1 as DayOfWeek, Drawer, DynamicWord, ErrorBox, ErrorWithCode, HOUR_IN_MS, IntelliTable, ItemPicker, LoadingSpinner, LogAction$1 as LogAction, LogBuiltInMetadata, LogReviewer, LogSource$1 as LogSource, LogType$1 as LogType, MINUTE_IN_MS, Modal, ModalButtonType$1 as ModalButtonType, ModalSize$1 as ModalSize, ModalType$1 as ModalType, ParamType$1 as ParamType, PopFailureMark, PopPendingMark, PopSuccessMark, RadioButton, ReactKitErrorCode$1 as ReactKitErrorCode, SimpleDateChooser, TabBox, Variant$1 as Variant, abbreviate, alert$1 as alert, avg, canReviewLogs, ceilToNumDecimals, confirm, floorToNumDecimals, forceNumIntoBounds, genCSV, genRouteHandler, getHumanReadableDate, getMonthName, getOrdinal, getPartOfDay, getTimeInfoInET, handleError, handleSuccess, initLogCollection, initServer, logClientEvent, onlyKeepLetters, padDecimalZeros, padZerosLeft, parallelLimit, roundToNumDecimals, showFatalError, startMinWait, stringsToHumanReadableList, stubServerEndpoint, sum, visitServerEndpoint, waitMs };
5544
+ export { AppWrapper, ButtonInputGroup, CSVDownloadButton, CheckboxButton, CopiableBox, DAY_IN_MS, DayOfWeek$1 as DayOfWeek, Drawer, DynamicWord, ErrorBox, ErrorWithCode, HOUR_IN_MS, IntelliTable, ItemPicker, LoadingSpinner, LogAction$1 as LogAction, LogBuiltInMetadata, LogReviewer, LogSource$1 as LogSource, LogType$1 as LogType, MINUTE_IN_MS, Modal, ModalButtonType$1 as ModalButtonType, ModalSize$1 as ModalSize, ModalType$1 as ModalType, ParamType$1 as ParamType, PopFailureMark, PopPendingMark, PopSuccessMark, RadioButton, ReactKitErrorCode$1 as ReactKitErrorCode, SimpleDateChooser, TabBox, Variant$1 as Variant, abbreviate, alert$1 as alert, avg, canReviewLogs, ceilToNumDecimals, confirm, floorToNumDecimals, forceNumIntoBounds, genCSV, genRouteHandler, getHumanReadableDate, getMonthName, getOrdinal, getPartOfDay, getTimeInfoInET, handleError, handleSuccess, initLogCollection, initServer, isMobileOrTablet, logClientEvent, onlyKeepLetters, padDecimalZeros, padZerosLeft, parallelLimit, roundToNumDecimals, showFatalError, startMinWait, stringsToHumanReadableList, stubServerEndpoint, sum, visitServerEndpoint, waitMs };
5498
5545
  //# sourceMappingURL=index.js.map