logitude-dashboard-library 1.2.2 → 1.2.3

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/index.js CHANGED
@@ -3,10 +3,6 @@ function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'defau
3
3
  var React = require('react');
4
4
  var React__default = _interopDefault(React);
5
5
  require('react-grid-layout/css/styles.css');
6
- require('primereact/resources/themes/lara-light-indigo/theme.css');
7
- require('primereact/resources/primereact.min.css');
8
- require('primeicons/primeicons.css');
9
- require('line-awesome/dist/line-awesome/css/line-awesome.min.css');
10
6
  var reactGridLayout = require('react-grid-layout');
11
7
  var button = require('primereact/button');
12
8
  var _ = _interopDefault(require('lodash'));
@@ -997,333 +993,105 @@ var WidgetCard = function WidgetCard(props, state) {
997
993
  var ResponsiveReactGridLayout = reactGridLayout.WidthProvider(reactGridLayout.Responsive);
998
994
  var newWidgetWidth = 3;
999
995
 
1000
- var DashboardDesigner = /*#__PURE__*/function (_React$Component) {
1001
- _inheritsLoose(DashboardDesigner, _React$Component);
996
+ var DashboardDesigner = function DashboardDesigner() {
997
+ var _useState = React.useState(React.createRef()),
998
+ moreButtonToggle = _useState[0];
1002
999
 
1003
- function DashboardDesigner(props) {
1004
- var _this;
1005
-
1006
- _this = _React$Component.call(this, props) || this;
1007
- _this.widgetComponents = [{
1008
- type: "Bar",
1009
- component: BarChartComponent
1010
- }, {
1011
- type: "Column",
1012
- component: ColumnChartComponent
1013
- }, {
1014
- type: "Pie",
1015
- component: PieChartComponent
1016
- }, {
1017
- type: "Mixed",
1018
- component: MixedChartComponent
1019
- }, {
1020
- type: "Timeline",
1021
- component: TimelineChartComponent
1022
- }, {
1023
- type: "Candle",
1024
- component: CandleChartComponent
1025
- }, {
1026
- type: "Area",
1027
- component: AreaChartComponent
1028
- }];
1029
- _this.showMsg = false;
1030
-
1031
- _this.deletePanel = function (i) {
1032
- var layout = _this.state.layouts["lg"];
1033
- var itemIndex = layout.findIndex(function (d) {
1034
- return d.i === i;
1035
- });
1036
- layout.splice(itemIndex, 1);
1037
-
1038
- _this.setState({
1039
- layouts: {
1040
- lg: [].concat(layout)
1041
- },
1042
- widgets: _.reject(_this.state.widgets, {
1043
- i: i
1044
- })
1045
- });
1046
-
1047
- _this.SaveGrid();
1048
- };
1049
-
1050
- _this.editWidget = function (widget) {
1051
- _this.widgetToEdit = widget;
1052
-
1053
- _this.toggleDialog();
1054
- };
1055
-
1056
- _this.addPanel = function (newWidget) {
1057
- var newWidgetPosition = _this.EvaluateNewWidgetPosition();
1000
+ var _useState2 = React.useState(React.createRef());
1058
1001
 
1059
- var widgetComponent = widgetComponents.find(function (wc) {
1060
- return wc.type === newWidget.WidgetType;
1061
- });
1062
-
1063
- var randomIndex = _this.getRandomInt(100, 999);
1064
-
1065
- var newPanel = {
1066
- i: "" + randomIndex,
1067
- x: newWidgetPosition.x,
1068
- y: newWidgetPosition.y,
1069
- w: newWidgetWidth,
1070
- h: 5,
1071
- minH: 5,
1072
- minW: 3
1073
- };
1002
+ var _useState3 = React.useState(React.createRef());
1074
1003
 
1075
- _this.state.widgets.push(_extends({
1076
- i: "" + randomIndex,
1077
- title: newWidget.WidgetName,
1078
- component: widgetComponent === null || widgetComponent === void 0 ? void 0 : widgetComponent.component
1079
- }, newWidget));
1080
-
1081
- _this.setState({
1082
- layouts: {
1083
- lg: _this.state.layouts["lg"].concat(newPanel)
1084
- },
1085
- widgets: _this.state.widgets
1086
- });
1087
- };
1088
-
1089
- _this.hideDialog = function () {};
1090
-
1091
- _this.onOkButton = function (data) {
1092
- _this.widgetToEdit = null;
1093
-
1094
- _this.toggleDialog();
1095
-
1096
- _this.addPanel(data);
1097
- };
1098
-
1099
- _this.onCancelButton = function () {
1100
- _this.widgetToEdit = null;
1101
-
1102
- _this.toggleDialog();
1103
- };
1104
-
1105
- _this.saveToStorage = function (key, value) {
1106
- _this.setState({
1107
- showMsg: true
1108
- });
1109
-
1110
- setTimeout(function () {
1111
- _this.setState({
1112
- showMsg: false
1113
- });
1114
- }, 2000);
1115
- window.localStorage.setItem(key, JSON.stringify(value));
1116
- };
1117
-
1118
- _this.getFromStorage = function (key) {
1119
- var layout = window.localStorage.getItem(key);
1120
- return JSON.parse(layout);
1121
- };
1122
-
1123
- _this.moreButtonToggle = React.createRef();
1124
- _this.widgetButtonToggle = React.createRef();
1125
- _this.addWidgetButtonToggle = React.createRef();
1126
-
1127
- var savedLayouts = _this.getFromStorage("grid-layout");
1128
-
1129
- var savedWidgets = _this.getFromStorage("grid-widgets");
1130
-
1131
- _this.state = {
1132
- layouts: savedLayouts || {
1133
- lg: []
1134
- },
1135
- showMsg: false,
1136
- dateFilter: null,
1137
- displayDialog: false,
1138
- dashboardTitle: "",
1139
- widgets: savedWidgets || [],
1140
- placeholderRows: 10
1141
- };
1142
- return _this;
1143
- }
1144
-
1145
- var _proto = DashboardDesigner.prototype;
1146
-
1147
- _proto.componentDidUpdate = function componentDidUpdate(prevState) {
1148
- this.UpdatePlaceholderDimensions(prevState);
1149
- };
1150
-
1151
- _proto.UpdatePlaceholderDimensions = function UpdatePlaceholderDimensions(prevState) {
1152
- var minimumPlaceholderRowsCount = 10;
1153
- var prevPlaceholderRows = prevState.placeholderRows;
1154
- var gridElementHeight = document.getElementsByClassName('react-grid-layout')[0].clientHeight;
1155
- var newPlaceholderRows = Math.floor(gridElementHeight / DashboardDesigner.layoutGridProps.rowHeight);
1156
- newPlaceholderRows = newPlaceholderRows < minimumPlaceholderRowsCount ? 10 : newPlaceholderRows;
1157
- if (prevPlaceholderRows != newPlaceholderRows) this.setState({
1158
- placeholderRows: newPlaceholderRows
1159
- });
1160
- };
1161
-
1162
- _proto.onLayoutChange = function onLayoutChange(layouts) {
1163
- this.saveToStorage("grid-layout", layouts);
1164
- this.saveToStorage("grid-widgets", this.state.widgets);
1165
- this.setState({
1166
- layouts: layouts
1167
- });
1168
- };
1169
-
1170
- _proto.EvaluateNewWidgetPosition = function EvaluateNewWidgetPosition() {
1171
- var widgetYPosition = 0;
1172
- var widgetXPosition = 0;
1173
- var layout = this.state.layouts["lg"];
1174
- var maxY = layout.reduce(function (max, widget) {
1175
- if (widget.y > max) max = widget.y;
1176
- return max;
1177
- }, 0);
1178
-
1179
- var _loop = function _loop(y) {
1180
- var widgetsRow = layout.filter(function (d) {
1181
- return d.y == y;
1182
- });
1183
- var lastWidgetStartXPosition = Math.max.apply(Math, widgetsRow.map(function (a) {
1184
- return a.x;
1185
- }));
1186
- var lastWidget = widgetsRow.find(function (a) {
1187
- return a.x == lastWidgetStartXPosition;
1188
- });
1189
-
1190
- if (lastWidget) {
1191
- var lastWidgetEndXPosition = lastWidgetStartXPosition + lastWidget.w;
1192
- var availableHorizontalSlots = DashboardDesigner.layoutGridProps.cols.lg - lastWidgetEndXPosition;
1193
-
1194
- if (availableHorizontalSlots >= newWidgetWidth) {
1195
- widgetYPosition = y;
1196
- widgetXPosition = lastWidgetEndXPosition;
1197
- return {
1198
- v: {
1199
- x: widgetXPosition,
1200
- y: widgetYPosition
1201
- }
1202
- };
1203
- } else {
1204
- widgetYPosition = y + 1;
1205
- }
1206
- } else {
1207
- widgetYPosition = y + 1;
1208
- }
1209
- };
1210
-
1211
- for (var y = 0; y <= maxY; y++) {
1212
- var _ret = _loop(y);
1004
+ var _useState4 = React.useState([{
1005
+ type: "Bar",
1006
+ component: BarChartComponent
1007
+ }, {
1008
+ type: "Column",
1009
+ component: ColumnChartComponent
1010
+ }, {
1011
+ type: "Pie",
1012
+ component: PieChartComponent
1013
+ }, {
1014
+ type: "Mixed",
1015
+ component: MixedChartComponent
1016
+ }, {
1017
+ type: "Timeline",
1018
+ component: TimelineChartComponent
1019
+ }, {
1020
+ type: "Candle",
1021
+ component: CandleChartComponent
1022
+ }, {
1023
+ type: "Area",
1024
+ component: AreaChartComponent
1025
+ }]),
1026
+ widgetComponents = _useState4[0];
1213
1027
 
1214
- if (typeof _ret === "object") return _ret.v;
1215
- }
1028
+ var savedLayouts = getFromStorage("grid-layout");
1029
+ var savedWidgets = getFromStorage("grid-widgets");
1216
1030
 
1217
- return {
1218
- x: widgetXPosition,
1219
- y: widgetYPosition
1220
- };
1221
- };
1031
+ var _useState5 = React.useState(savedLayouts || {
1032
+ lg: []
1033
+ }),
1034
+ layouts = _useState5[0],
1035
+ setLayouts = _useState5[1];
1222
1036
 
1223
- _proto.SaveGrid = function SaveGrid() {
1224
- this.saveToStorage("grid-layout", this.state.layouts);
1225
- this.saveToStorage("grid-widgets", this.state.widgets);
1226
- };
1037
+ var _useState6 = React.useState(false),
1038
+ setShowMsg = _useState6[1];
1227
1039
 
1228
- _proto.reset = function reset() {
1229
- window.localStorage.clear();
1230
- window.location.reload();
1231
- };
1040
+ var _useState7 = React.useState(undefined),
1041
+ dateFilter = _useState7[0],
1042
+ setDateFilter = _useState7[1];
1232
1043
 
1233
- _proto.setToken = function setToken() {
1234
- var token = localStorage.getItem("token");
1235
- var newToken = prompt("Token: ", token || "");
1236
- if (newToken && newToken != "") localStorage.setItem("token", newToken || "");
1237
- };
1044
+ var _useState8 = React.useState(false),
1045
+ displayDialog = _useState8[0],
1046
+ setDisplayDialog = _useState8[1];
1238
1047
 
1239
- _proto.changeTitle = function changeTitle(i) {
1240
- var widget = this.state.widgets[i];
1241
- var newTitle = prompt("Title:");
1242
- widget.title = newTitle;
1243
- this.setState(this.state.widgets);
1244
- this.SaveGrid();
1245
- };
1048
+ var _useState9 = React.useState(""),
1049
+ dashboardTitle = _useState9[0];
1246
1050
 
1247
- _proto.addComponent = function addComponent() {
1248
- this.toggleDialog();
1249
- };
1051
+ var _useState10 = React.useState(savedWidgets || []),
1052
+ widgets = _useState10[0],
1053
+ setWidgets = _useState10[1];
1250
1054
 
1251
- _proto.FindWidget = function FindWidget(el) {
1252
- return this.state.widgets.find(function (d) {
1253
- return d.i === el.i;
1254
- });
1255
- };
1055
+ var _useState11 = React.useState(10),
1056
+ placeholderRows = _useState11[0];
1256
1057
 
1257
- _proto.toggleDialog = function toggleDialog() {
1258
- this.setState({
1259
- displayDialog: !this.state.displayDialog
1260
- });
1261
- };
1058
+ var _useState12 = React.useState(),
1059
+ selectedWidget = _useState12[0];
1262
1060
 
1263
- _proto.toggleWidget = function toggleWidget(widget) {
1264
- var menuButtons = document.getElementById("widget-more-buttons-" + widget.id);
1265
-
1266
- if (menuButtons) {
1267
- var isHidden = menuButtons.className.includes("hidden");
1268
- menuButtons.className = isHidden ? "" : "hidden";
1269
- }
1270
- };
1271
-
1272
- _proto.getRandomInt = function getRandomInt(min, max) {
1273
- return Math.floor(Math.random() * (max - min + 1)) + min;
1274
- };
1275
-
1276
- _proto.renderNewWidgetDialog = function renderNewWidgetDialog() {
1277
- return React__default.createElement(dialog.Dialog, {
1278
- header: this.widgetToEdit ? "Edit Chart" : "New Chart",
1279
- visible: this.state.displayDialog,
1280
- onHide: this.toggleDialog.bind(this),
1281
- breakpoints: {
1282
- "850px": "95vw",
1283
- "600px": "100vw"
1284
- },
1285
- style: {
1286
- width: "800px"
1287
- }
1288
- }, React__default.createElement(NewWidget, {
1289
- onOkButton: this.onOkButton,
1290
- onCancelButton: this.onCancelButton,
1291
- widget: this.widgetToEdit
1292
- }));
1293
- };
1294
-
1295
- _proto.renderPageHeader = function renderPageHeader() {
1296
- var _this2 = this;
1061
+ var _useState13 = React.useState(null),
1062
+ widgetToEdit = _useState13[0],
1063
+ setWidgetToEdit = _useState13[1];
1297
1064
 
1065
+ var renderPageHeader = function renderPageHeader() {
1298
1066
  return React__default.createElement("header", {
1299
1067
  className: "dashboard-header"
1300
- }, React__default.createElement("div", null, React__default.createElement("h1", null, this.state.dashboardTitle || "Dashboard"), React__default.createElement(button.Button, {
1068
+ }, React__default.createElement("div", null, React__default.createElement("h1", null, dashboardTitle || "Dashboard"), React__default.createElement(button.Button, {
1301
1069
  icon: "las la-ellipsis-v",
1302
1070
  onClick: function onClick(e) {
1303
- var _this2$moreButtonTogg;
1071
+ var _moreButtonToggle$cur;
1304
1072
 
1305
- return (_this2$moreButtonTogg = _this2.moreButtonToggle.current) === null || _this2$moreButtonTogg === void 0 ? void 0 : _this2$moreButtonTogg.toggle(e);
1073
+ return moreButtonToggle === null || moreButtonToggle === void 0 ? void 0 : (_moreButtonToggle$cur = moreButtonToggle.current) === null || _moreButtonToggle$cur === void 0 ? void 0 : _moreButtonToggle$cur.toggle(e);
1306
1074
  },
1307
1075
  className: "p-button-lg p-button-rounded p-button-text"
1308
1076
  }, React__default.createElement(ripple.Ripple, null)), React__default.createElement(overlaypanel.OverlayPanel, {
1309
- ref: this.moreButtonToggle,
1077
+ ref: moreButtonToggle,
1310
1078
  className: "buttons-overlay"
1311
1079
  }, React__default.createElement("div", {
1312
1080
  className: "buttons-list"
1313
1081
  }, React__default.createElement("div", {
1314
- onClick: this.setToken
1082
+ onClick: setToken
1315
1083
  }, "set token"), React__default.createElement("div", {
1316
- onClick: this.reset
1084
+ onClick: reset
1317
1085
  }, "reset")))), React__default.createElement("div", null, React__default.createElement(button.Button, {
1318
1086
  label: "<< back to dashboards",
1319
1087
  className: "p-button-link"
1320
1088
  }), React__default.createElement(dropdown.Dropdown, {
1321
- value: this.selectedWidget,
1089
+ value: selectedWidget,
1322
1090
  options: WidgetTypes,
1323
1091
  optionValue: "Name",
1324
1092
  optionLabel: "Name",
1325
1093
  onChange: function onChange(e) {
1326
- return _this2.addComponent();
1094
+ return addComponent();
1327
1095
  },
1328
1096
  placeholder: "Add Component",
1329
1097
  optionDisabled: function optionDisabled(option) {
@@ -1333,71 +1101,240 @@ var DashboardDesigner = /*#__PURE__*/function (_React$Component) {
1333
1101
  })));
1334
1102
  };
1335
1103
 
1336
- _proto.renderGridWidgetsPlaceholder = function renderGridWidgetsPlaceholder() {
1104
+ function addComponent(componentType) {
1105
+ toggleDialog();
1106
+ }
1107
+
1108
+ function reset() {
1109
+ window.localStorage.clear();
1110
+ window.location.reload();
1111
+ }
1112
+
1113
+ function setToken() {
1114
+ var token = localStorage.getItem("token");
1115
+ var newToken = prompt("Token: ", token || "");
1116
+ if (newToken && newToken != "") localStorage.setItem("token", newToken || "");
1117
+ }
1118
+
1119
+ function renderGridWidgetsPlaceholder() {
1337
1120
  return React__default.createElement("div", {
1338
1121
  className: "grid grid--bordered"
1339
- }, [].concat(Array(this.state.placeholderRows)).map(function (e, i) {
1340
- return [].concat(Array(DashboardDesigner.layoutGridProps.cols.lg)).map(function (e, i) {
1122
+ }, [].concat(Array(placeholderRows)).map(function (e, i) {
1123
+ return [].concat(Array(layoutGridProps.cols.lg)).map(function (e, i) {
1341
1124
  return React__default.createElement("div", {
1342
1125
  style: {
1343
- height: DashboardDesigner.layoutGridProps.rowHeight
1126
+ height: layoutGridProps.rowHeight
1344
1127
  }
1345
1128
  });
1346
1129
  });
1347
1130
  }));
1348
- };
1131
+ }
1349
1132
 
1350
- _proto.renderLayoutGrid = function renderLayoutGrid(layout) {
1351
- var _this3 = this;
1133
+ function renderLayoutGrid(layout) {
1134
+ function _onLayoutChange(layout, layouts) {
1135
+ saveToStorage("grid-layout", layouts);
1136
+ saveToStorage("grid-widgets", widgets);
1137
+ setLayouts(layouts);
1138
+ }
1139
+
1140
+ function renderWidgetComponent(el) {
1141
+ var widget = FindWidget(el);
1142
+
1143
+ function deletePanel(i) {
1144
+ var layout = layouts["lg"];
1145
+ var itemIndex = layout.findIndex(function (d) {
1146
+ return d.i === i;
1147
+ });
1148
+ layout.splice(itemIndex, 1);
1149
+ setLayouts({
1150
+ lg: [].concat(layout)
1151
+ });
1152
+ setWidgets(_.reject(widgets, {
1153
+ i: i
1154
+ }));
1155
+ SaveGrid();
1156
+ }
1157
+
1158
+ function SaveGrid() {
1159
+ saveToStorage("grid-layout", layouts);
1160
+ saveToStorage("grid-widgets", widgets);
1161
+ }
1352
1162
 
1353
- return React__default.createElement(ResponsiveReactGridLayout, Object.assign({}, DashboardDesigner.layoutGridProps, {
1354
- layouts: this.state.layouts,
1163
+ function editWidget(widget) {
1164
+ setWidgetToEdit(widget);
1165
+ toggleDialog();
1166
+ }
1167
+ return React__default.createElement("div", {
1168
+ key: el.i
1169
+ }, React__default.createElement(WidgetCard, {
1170
+ key: el.i,
1171
+ widget: widget,
1172
+ el: el,
1173
+ dateFilter: dateFilter,
1174
+ editBtnClicked: editWidget,
1175
+ deleteBtnClicked: deletePanel
1176
+ }));
1177
+ }
1178
+
1179
+ function FindWidget(el) {
1180
+ return widgets.find(function (d) {
1181
+ return d.i === el.i;
1182
+ });
1183
+ }
1184
+
1185
+ return React__default.createElement(ResponsiveReactGridLayout, Object.assign({}, layoutGridProps, {
1186
+ layouts: layouts,
1355
1187
  compactType: "vertical",
1356
- onLayoutChange: function onLayoutChange(layouts) {
1357
- return _this3.onLayoutChange(layout);
1188
+ onLayoutChange: function onLayoutChange(layout, layouts) {
1189
+ return _onLayoutChange(layout, layouts);
1358
1190
  }
1359
1191
  }), _.map(layout, function (el) {
1360
- return _this3.renderWidgetComponent(el);
1192
+ return renderWidgetComponent(el);
1361
1193
  }));
1362
- };
1194
+ }
1363
1195
 
1364
- _proto.renderWidgetComponent = function renderWidgetComponent(el) {
1365
- var widget = this.FindWidget(el);
1366
- return React__default.createElement("div", {
1367
- key: el.i
1368
- }, React__default.createElement(WidgetCard, {
1369
- key: el.i,
1370
- widget: widget,
1371
- el: el,
1372
- dateFilter: this.state.dateFilter,
1373
- editBtnClicked: this.editWidget,
1374
- deleteBtnClicked: this.deletePanel
1375
- }));
1376
- };
1196
+ function saveToStorage(key, value) {
1197
+ setShowMsg(true);
1198
+ setTimeout(function () {
1199
+ setShowMsg(false);
1200
+ }, 2000);
1201
+ window.localStorage.setItem(key, JSON.stringify(value));
1202
+ }
1377
1203
 
1378
- _proto.render = function render() {
1379
- var _this4 = this;
1204
+ function getFromStorage(key) {
1205
+ var layout = window.localStorage.getItem(key);
1206
+ return JSON.parse(layout);
1207
+ }
1380
1208
 
1381
- return React__default.createElement("div", {
1382
- className: "App"
1383
- }, this.renderPageHeader(), React__default.createElement(calendar.Calendar, {
1384
- value: this.state.dateFilter,
1385
- showIcon: true,
1386
- onChange: function onChange(e) {
1387
- return _this4.setState({
1388
- dateFilter: e.value
1209
+ function toggleDialog() {
1210
+ setDisplayDialog(!displayDialog);
1211
+ }
1212
+
1213
+ function renderNewWidgetDialog() {
1214
+ function addPanel(newWidget) {
1215
+ var newWidgetPosition = EvaluateNewWidgetPosition();
1216
+ var widgetComponent = widgetComponents.find(function (wc) {
1217
+ return wc.type === newWidget.WidgetType;
1218
+ });
1219
+ var randomIndex = getRandomInt(100, 999);
1220
+ var newPanel = {
1221
+ i: "" + randomIndex,
1222
+ x: newWidgetPosition.x,
1223
+ y: newWidgetPosition.y,
1224
+ w: newWidgetWidth,
1225
+ h: 5,
1226
+ minH: 5,
1227
+ minW: 3
1228
+ };
1229
+ widgets.push(_extends({
1230
+ i: "" + randomIndex,
1231
+ title: newWidget.WidgetName,
1232
+ component: widgetComponent === null || widgetComponent === void 0 ? void 0 : widgetComponent.component
1233
+ }, newWidget));
1234
+ setLayouts({
1235
+ lg: layouts["lg"].concat(newPanel)
1236
+ });
1237
+ setWidgets(widgets);
1238
+ }
1239
+
1240
+ function EvaluateNewWidgetPosition() {
1241
+ var widgetYPosition = 0;
1242
+ var widgetXPosition = 0;
1243
+ var layout = layouts["lg"];
1244
+ var maxY = layout.reduce(function (max, widget) {
1245
+ if (widget.y > max) max = widget.y;
1246
+ return max;
1247
+ }, 0);
1248
+
1249
+ var _loop = function _loop(y) {
1250
+ var widgetsRow = layout.filter(function (d) {
1251
+ return d.y == y;
1252
+ });
1253
+ var lastWidgetStartXPosition = Math.max.apply(Math, widgetsRow.map(function (a) {
1254
+ return a.x;
1255
+ }));
1256
+ var lastWidget = widgetsRow.find(function (a) {
1257
+ return a.x == lastWidgetStartXPosition;
1389
1258
  });
1259
+
1260
+ if (lastWidget) {
1261
+ var lastWidgetEndXPosition = lastWidgetStartXPosition + lastWidget.w;
1262
+ var availableHorizontalSlots = layoutGridProps.cols.lg - lastWidgetEndXPosition;
1263
+
1264
+ if (availableHorizontalSlots >= newWidgetWidth) {
1265
+ widgetYPosition = y;
1266
+ widgetXPosition = lastWidgetEndXPosition;
1267
+ return {
1268
+ v: {
1269
+ x: widgetXPosition,
1270
+ y: widgetYPosition
1271
+ }
1272
+ };
1273
+ } else {
1274
+ widgetYPosition = y + 1;
1275
+ }
1276
+ } else {
1277
+ widgetYPosition = y + 1;
1278
+ }
1279
+ };
1280
+
1281
+ for (var y = 0; y <= maxY; y++) {
1282
+ var _ret = _loop(y);
1283
+
1284
+ if (typeof _ret === "object") return _ret.v;
1285
+ }
1286
+
1287
+ return {
1288
+ x: widgetXPosition,
1289
+ y: widgetYPosition
1290
+ };
1291
+ }
1292
+
1293
+ function onOkButton(data) {
1294
+ setWidgetToEdit(null);
1295
+ toggleDialog();
1296
+ addPanel(data);
1297
+ }
1298
+
1299
+ function onCancelButton() {
1300
+ setWidgetToEdit(null);
1301
+ toggleDialog();
1302
+ }
1303
+ return React__default.createElement(dialog.Dialog, {
1304
+ header: widgetToEdit ? "Edit Chart" : "New Chart",
1305
+ visible: displayDialog,
1306
+ onHide: toggleDialog,
1307
+ breakpoints: {
1308
+ "850px": "95vw",
1309
+ "600px": "100vw"
1390
1310
  },
1391
- placeholder: "filter by date..."
1392
- }), React__default.createElement("div", {
1393
- className: "grid-container"
1394
- }, this.renderGridWidgetsPlaceholder(), this.renderLayoutGrid(this.state.layouts["lg"])), this.renderNewWidgetDialog());
1395
- };
1311
+ style: {
1312
+ width: "800px"
1313
+ }
1314
+ }, React__default.createElement(NewWidget, {
1315
+ onOkButton: onOkButton,
1316
+ onCancelButton: onCancelButton,
1317
+ widget: widgetToEdit
1318
+ }));
1319
+ }
1396
1320
 
1397
- return DashboardDesigner;
1398
- }(React__default.Component);
1321
+ function getRandomInt(min, max) {
1322
+ return Math.floor(Math.random() * (max - min + 1)) + min;
1323
+ }
1324
+
1325
+ return React__default.createElement("div", null, renderPageHeader(), React__default.createElement(calendar.Calendar, {
1326
+ value: dateFilter,
1327
+ showIcon: true,
1328
+ onChange: function onChange(e) {
1329
+ return setDateFilter(e.value);
1330
+ },
1331
+ placeholder: "filter by date..."
1332
+ }), React__default.createElement("div", {
1333
+ className: "grid-container"
1334
+ }, renderGridWidgetsPlaceholder(), renderLayoutGrid(layouts["lg"])), renderNewWidgetDialog());
1335
+ };
1399
1336
 
1400
- DashboardDesigner.layoutGridProps = {
1337
+ var layoutGridProps = {
1401
1338
  rowHeight: 50,
1402
1339
  className: "layout",
1403
1340
  cols: {
@@ -1428,33 +1365,10 @@ var WidgetTypes = [{
1428
1365
  Name: "Gauge",
1429
1366
  Disabled: true
1430
1367
  }];
1431
- var widgetComponents = [{
1432
- type: "Bar",
1433
- component: BarChartComponent
1434
- }, {
1435
- type: "Column",
1436
- component: ColumnChartComponent
1437
- }, {
1438
- type: "Pie",
1439
- component: PieChartComponent
1440
- }, {
1441
- type: "Mixed",
1442
- component: MixedChartComponent
1443
- }, {
1444
- type: "Timeline",
1445
- component: TimelineChartComponent
1446
- }, {
1447
- type: "Candle",
1448
- component: CandleChartComponent
1449
- }, {
1450
- type: "Area",
1451
- component: AreaChartComponent
1452
- }];
1453
1368
 
1454
- var ExampleComponent = function ExampleComponent() {
1455
- return React.createElement("div", null, React.createElement("div", null, "amer"));
1369
+ var Dashboard = function Dashboard() {
1370
+ return React.createElement("div", null, React.createElement(DashboardDesigner, null));
1456
1371
  };
1457
1372
 
1458
- exports.ExampleComponent = ExampleComponent;
1459
- exports.default = DashboardDesigner;
1373
+ module.exports = Dashboard;
1460
1374
  //# sourceMappingURL=index.js.map