@builttocreate/engine-utils 1.12.0 → 1.13.0-rc.1.0.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.
@@ -7,7 +7,7 @@ Object.defineProperty(exports, "__esModule", {
7
7
  });
8
8
  exports["default"] = exports.getDefaultLinePoint = exports.getDefaultLine = void 0;
9
9
 
10
- var _shortid = _interopRequireDefault(require("shortid"));
10
+ var _generateObjectId = _interopRequireDefault(require("./generateObjectId"));
11
11
 
12
12
  var getDefaultLine = function getDefaultLine() {
13
13
  /**
@@ -17,7 +17,7 @@ var getDefaultLine = function getDefaultLine() {
17
17
  * there aren't two data points in the array.
18
18
  */
19
19
  return {
20
- _id: _shortid["default"].generate(),
20
+ _id: (0, _generateObjectId["default"])(),
21
21
  deleted: false,
22
22
  title: '',
23
23
  description: '',
@@ -29,7 +29,7 @@ exports.getDefaultLine = getDefaultLine;
29
29
 
30
30
  var getDefaultLinePoint = function getDefaultLinePoint() {
31
31
  return {
32
- _id: _shortid["default"].generate(),
32
+ _id: (0, _generateObjectId["default"])(),
33
33
  label: '',
34
34
  y: 0,
35
35
  x: 0
@@ -5,7 +5,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports["default"] = exports.getTemplateWithLookups = exports.getImportFieldValues = exports.getDefaultFieldValuesFromTemplate = exports.handleMultiSelectOptionToggle = exports.getMultiSelectFieldValue = exports.getChartFieldValue = void 0;
8
+ exports["default"] = exports.getTemplateWithLookups = exports.getImportFieldValues = exports.getDefaultFieldValuesFromTemplate = exports.handleMultiSelectOptionToggle = exports.getDefaultOption = exports.getMultiSelectFieldValue = exports.getChartFieldValue = void 0;
9
9
 
10
10
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
11
 
@@ -19,6 +19,8 @@ var _chartHelper = require("./chartHelper");
19
19
 
20
20
  var _tableHelper = require("./tableHelper");
21
21
 
22
+ var _generateObjectId = _interopRequireDefault(require("./generateObjectId"));
23
+
22
24
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
23
25
 
24
26
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
@@ -62,6 +64,25 @@ var getMultiSelectFieldValue = function getMultiSelectFieldValue(value) {
62
64
  return [];
63
65
  }
64
66
  };
67
+ /**
68
+ * Get default option
69
+ *
70
+ * These options are primarily used by dropdown and selection fields
71
+ *
72
+ * @param {String} value
73
+ * @return {Object}
74
+ */
75
+
76
+
77
+ exports.getMultiSelectFieldValue = getMultiSelectFieldValue;
78
+
79
+ var getDefaultOption = function getDefaultOption(value) {
80
+ return {
81
+ _id: (0, _generateObjectId["default"])(),
82
+ value: value || 'Option',
83
+ deleted: false
84
+ };
85
+ };
65
86
  /**
66
87
  * Update the selected options.
67
88
  *
@@ -71,7 +92,7 @@ var getMultiSelectFieldValue = function getMultiSelectFieldValue(value) {
71
92
  */
72
93
 
73
94
 
74
- exports.getMultiSelectFieldValue = getMultiSelectFieldValue;
95
+ exports.getDefaultOption = getDefaultOption;
75
96
 
76
97
  var handleMultiSelectOptionToggle = function handleMultiSelectOptionToggle(multi) {
77
98
  var selectedOptions = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
@@ -260,6 +281,7 @@ var getTemplateWithLookups = function getTemplateWithLookups(template) {
260
281
 
261
282
  exports.getTemplateWithLookups = getTemplateWithLookups;
262
283
  var _default = {
284
+ getDefaultOption: getDefaultOption,
263
285
  getChartFieldValue: getChartFieldValue,
264
286
  getMultiSelectFieldValue: getMultiSelectFieldValue,
265
287
  handleMultiSelectOptionToggle: handleMultiSelectOptionToggle,
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = void 0;
7
+
8
+ //Found this ObjectId generator here: https://stackoverflow.com/a/37438675
9
+ var _default = function _default() {
10
+ var m = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : Math;
11
+ var d = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : Date;
12
+ var h = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 16;
13
+ var s = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : function (s) {
14
+ return m.floor(s).toString(h);
15
+ };
16
+ return s(d.now() / 1000) + ' '.repeat(h).replace(/./g, function () {
17
+ return s(m.random() * h);
18
+ });
19
+ };
20
+
21
+ exports["default"] = _default;
package/dist/index.js CHANGED
@@ -31,6 +31,12 @@ Object.defineProperty(exports, "Roles", {
31
31
  return _Roles["default"];
32
32
  }
33
33
  });
34
+ Object.defineProperty(exports, "generateObjectId", {
35
+ enumerable: true,
36
+ get: function get() {
37
+ return _generateObjectId["default"];
38
+ }
39
+ });
34
40
  exports.paginationHelper = exports.roleHelper = exports.fileHelper = exports.activityHelper = exports.fieldHelper = exports.chartHelper = exports.tableHelper = exports["default"] = void 0;
35
41
 
36
42
  var tableHelper = _interopRequireWildcard(require("./tableHelper"));
@@ -67,6 +73,8 @@ var _changedKeys = _interopRequireDefault(require("./changedKeys"));
67
73
 
68
74
  var _Roles = _interopRequireDefault(require("./constants/Roles"));
69
75
 
76
+ var _generateObjectId = _interopRequireDefault(require("./generateObjectId"));
77
+
70
78
  var _default = {
71
79
  fileHelper: fileHelper,
72
80
  tableHelper: tableHelper,
@@ -78,6 +86,7 @@ var _default = {
78
86
  paginationHelper: paginationHelper,
79
87
  changedKeys: _changedKeys["default"],
80
88
  roleHelper: roleHelper,
81
- Roles: _Roles["default"]
89
+ Roles: _Roles["default"],
90
+ generateObjectId: _generateObjectId["default"]
82
91
  };
83
92
  exports["default"] = _default;
@@ -7,18 +7,16 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
7
7
  Object.defineProperty(exports, "__esModule", {
8
8
  value: true
9
9
  });
10
- exports["default"] = exports.handleMoveTableRowDown = exports.handleMoveTableRowUp = exports.handleDuplicateTableRow = exports.handleCreateTableRow = exports.handleInsertTableRow = exports.handleTableCellChange = exports.getRowIndexLookup = exports.getInputGroupRowLookupWithPopulatedDropdownCells = exports.getTableRowLookupWithPopulatedDropdownCells = exports.generateInputGroupFields = exports.spreadOperandRange = exports.validFormulaString = exports.hasOperandRange = exports.hasCircularOperandReference = exports.resolveOperandValue = exports.getFormulaResult = exports.generateTableLookup = exports.generateTableLookupForRows = exports.generateTableFieldLookups = exports.generateRowTableLookup = exports.getCellOperand = exports.getTemplateColumnOperandLookup = exports.getIndexesFromTableCellOperand = exports.getColumnOperand = exports.sortColumns = exports.getColumns = exports.getTableFieldRowOrder = exports.getRowMap = exports.getFilteredRowOrder = exports.sortRows = exports.getRows = exports.getDefaultRow = exports.getTableFieldLookupKey = void 0;
10
+ exports["default"] = exports.handleMoveTableRowDown = exports.handleMoveTableRowUp = exports.handleDuplicateTableRow = exports.handleCreateTableRow = exports.handleInsertTableRow = exports.handleTableCellChange = exports.getRowIndexLookup = exports.getInputGroupRowLookupWithPopulatedDropdownCells = exports.getTableRowLookupWithPopulatedDropdownCells = exports.generateInputGroupFields = exports.spreadOperandRange = exports.validFormulaString = exports.hasOperandRange = exports.hasCircularOperandReference = exports.resolveOperandValue = exports.getFormulaResult = exports.generateTableLookup = exports.generateTableLookupForRows = exports.generateTableFieldLookups = exports.generateRowTableLookup = exports.getCellOperand = exports.getTemplateColumnOperandLookup = exports.getIndexesFromTableCellOperand = exports.getColumnOperand = exports.sortColumns = exports.getColumns = exports.getDefaultDropdownColumn = exports.getDefaultTextColumn = exports.getDefaultColumnOption = exports.getTableFieldRowOrder = exports.getRowMap = exports.getFilteredRowOrder = exports.sortRows = exports.getRows = exports.getDefaultRow = exports.getTableFieldLookupKey = void 0;
11
11
 
12
12
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
13
 
14
14
  var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
15
15
 
16
- var _shortid = _interopRequireDefault(require("shortid"));
17
-
18
- var _moment = _interopRequireDefault(require("moment"));
19
-
20
16
  var _hotFormulaParser = require("@builttocreate/hot-formula-parser");
21
17
 
18
+ var _generateObjectId = _interopRequireDefault(require("./generateObjectId"));
19
+
22
20
  var _Table = _interopRequireWildcard(require("./constants/Table"));
23
21
 
24
22
  var _FieldTypes = _interopRequireDefault(require("./constants/FieldTypes"));
@@ -41,7 +39,7 @@ exports.getTableFieldLookupKey = getTableFieldLookupKey;
41
39
 
42
40
  var getDefaultRow = function getDefaultRow() {
43
41
  return {
44
- _id: "".concat(_shortid["default"].generate()).concat((0, _moment["default"])().valueOf()),
42
+ _id: (0, _generateObjectId["default"])(),
45
43
  deleted: false,
46
44
  cells: {}
47
45
  };
@@ -178,12 +176,74 @@ var getTableFieldRowOrder = function getTableFieldRowOrder(fieldId, fieldSetting
178
176
  });
179
177
  };
180
178
  /**
181
- * Get table columns with added operands. Operands are the A, B, C, etc.
179
+ * Get default column option
180
+ *
181
+ * @param {String} value
182
+ * @return {Object}
182
183
  */
183
184
 
184
185
 
185
186
  exports.getTableFieldRowOrder = getTableFieldRowOrder;
186
187
 
188
+ var getDefaultColumnOption = function getDefaultColumnOption(value) {
189
+ return {
190
+ _id: (0, _generateObjectId["default"])(),
191
+ value: value || 'Option',
192
+ deleted: false
193
+ };
194
+ };
195
+ /**
196
+ * Get default text column for table field
197
+ *
198
+ * @param {Object} defaults //Overwrite any values with this defaults object
199
+ *
200
+ * @return {Object}
201
+ */
202
+
203
+
204
+ exports.getDefaultColumnOption = getDefaultColumnOption;
205
+
206
+ var getDefaultTextColumn = function getDefaultTextColumn() {
207
+ var defaults = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
208
+ return _objectSpread({
209
+ _id: (0, _generateObjectId["default"])(),
210
+ type: _FieldTableColumnTypes["default"].text,
211
+ title: 'Text Column',
212
+ deleted: false
213
+ }, defaults);
214
+ };
215
+ /**
216
+ * Get default dropdown column for table field
217
+ *
218
+ * @param {Object} defaults //Overwrite any values with this defaults object
219
+ *
220
+ * @return {Object}
221
+ */
222
+
223
+
224
+ exports.getDefaultTextColumn = getDefaultTextColumn;
225
+
226
+ var getDefaultDropdownColumn = function getDefaultDropdownColumn() {
227
+ var defaults = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
228
+ var options = defaults.options || [getDefaultColumnOption('Yes'), getDefaultColumnOption('No'), getDefaultColumnOption('N/A')];
229
+ return _objectSpread({
230
+ _id: (0, _generateObjectId["default"])(),
231
+ type: _FieldTableColumnTypes["default"].dropdown,
232
+ title: 'Dropdown Column',
233
+ deleted: false,
234
+ options: options,
235
+ optionOrder: options.map(function (option) {
236
+ return option._id;
237
+ })
238
+ }, defaults);
239
+ };
240
+ /**
241
+ * Get table columns with added operands. Operands are the A, B, C, etc.
242
+ */
243
+
244
+
245
+ exports.getDefaultDropdownColumn = getDefaultDropdownColumn;
246
+
187
247
  var getColumns = function getColumns(columns) {
188
248
  var parsedColumns = columns;
189
249
 
@@ -974,6 +1034,9 @@ var _default = {
974
1034
  getFilteredRowOrder: getFilteredRowOrder,
975
1035
  getDefaultRow: getDefaultRow,
976
1036
  getRowMap: getRowMap,
1037
+ getDefaultColumnOption: getDefaultColumnOption,
1038
+ getDefaultTextColumn: getDefaultTextColumn,
1039
+ getDefaultDropdownColumn: getDefaultDropdownColumn,
977
1040
  getColumns: getColumns,
978
1041
  sortColumns: sortColumns,
979
1042
  getFormulaResult: getFormulaResult,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@builttocreate/engine-utils",
3
- "version": "1.12.0",
3
+ "version": "1.13.0-rc.1.0.0",
4
4
  "description": "Utility library for common logic shared across web and mobile",
5
5
  "main": "dist/index.js",
6
6
  "files": [